@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,67 +1,68 @@
1
1
  import { jsxs as m, jsx as a } from "react/jsx-runtime";
2
- import { useTranslation as j } from "react-i18next";
3
- import { useMemo as v } from "react";
4
- import { getContractorDisplayName as P } from "../../shared/helpers.js";
2
+ import { useTranslation as v } from "react-i18next";
3
+ import { useMemo as P } from "react";
4
+ import { getContractorDisplayName as R } from "../../shared/helpers.js";
5
5
  import { getContractorPaymentTotalAmount as f } from "../shared/paymentAmounts.js";
6
- import { FastAchSubmissionBlockerBanner as R } from "./FastAchSubmissionBlockerBanner.js";
7
- import { GenericBlocker as L } from "./GenericBlocker.js";
6
+ import { FastAchSubmissionBlockerBanner as L } from "./FastAchSubmissionBlockerBanner.js";
7
+ import { GenericBlocker as _ } from "./GenericBlocker.js";
8
8
  import { Flex as u } from "../../../Common/Flex/Flex.js";
9
- import { useComponentContext as _ } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
10
- import { useI18n as E } from "../../../../i18n/I18n.js";
11
- import { formatHoursDisplay as F } from "../../../Payroll/helpers.js";
12
- import I from "../../../../hooks/useNumberFormatter.js";
9
+ import { useComponentContext as E } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
10
+ import { useI18n as F } from "../../../../i18n/I18n.js";
11
+ import { formatHoursDisplay as I } from "../../../Payroll/helpers.js";
12
+ import M from "../../../../hooks/useNumberFormatter.js";
13
13
  import { PAYROLL_RESOLVABLE_SUBMISSION_BLOCKER_TYPES as p } from "../../../../shared/constants.js";
14
14
  import { DataView as T } from "../../../Common/DataView/DataView.js";
15
- const M = "0.000", ee = ({
15
+ const O = "0.000", te = ({
16
+ className: h,
16
17
  contractorPaymentGroup: n,
17
- contractors: h,
18
- onBackToEdit: A,
19
- onSubmit: D,
18
+ contractors: A,
19
+ onBackToEdit: D,
20
+ onSubmit: g,
20
21
  isLoading: l,
21
- bankAccount: g,
22
+ bankAccount: H,
22
23
  selectedUnblockOptions: d = {},
23
24
  onUnblockOptionChange: b,
24
- paymentSpeed: H
25
+ paymentSpeed: w
25
26
  }) => {
26
- const { Button: c, Text: w, Heading: y, Alert: N } = _();
27
- E("Contractor.Payments.CreatePayment");
28
- const { t } = j("Contractor.Payments.CreatePayment", {
27
+ const { Button: c, Text: N, Heading: y, Alert: B } = E();
28
+ F("Contractor.Payments.CreatePayment");
29
+ const { t } = v("Contractor.Payments.CreatePayment", {
29
30
  keyPrefix: "previewPresentation"
30
- }), o = I(), B = (e) => e.wageType === "Hourly" && e.hourlyRate ? `${o(Number(e.hourlyRate || "0"))}${t("perHour")}` : e.wageType, i = v(
31
+ }), o = M(), C = (e) => e.wageType === "Hourly" && e.hourlyRate ? `${o(Number(e.hourlyRate || "0"))}${t("perHour")}` : e.wageType, i = P(
31
32
  () => n.contractorPayments?.reduce(
32
33
  (e, r) => (e.wageAmount += Number(r.wage || "0"), e.bonusAmount += Number(r.bonus || "0"), e.reimbursementAmount += Number(r.reimbursement || "0"), e.totalAmount += f(r), e),
33
34
  { wageAmount: 0, bonusAmount: 0, reimbursementAmount: 0, totalAmount: 0 }
34
35
  ),
35
36
  [n.contractorPayments]
36
- ), C = n.contractorPayments || [], s = (n.submissionBlockers || []).filter(
37
+ ), S = n.contractorPayments || [], s = (n.submissionBlockers || []).filter(
37
38
  (e) => e.status === "unresolved"
38
- ), S = s.some(
39
- (e) => !p.includes(e.blockerType || "")
40
39
  ), k = s.some(
40
+ (e) => !p.includes(e.blockerType || "")
41
+ ), x = s.some(
41
42
  (e) => !d[e.blockerType || ""]
42
- ), x = l || s.length > 0 && (S || k);
43
- return /* @__PURE__ */ m(u, { flexDirection: "column", gap: 32, children: [
43
+ ), j = l || s.length > 0 && (k || x);
44
+ return /* @__PURE__ */ m(u, { className: h, flexDirection: "column", gap: 32, children: [
44
45
  /* @__PURE__ */ m(u, { justifyContent: "flex-end", gap: 16, children: [
45
46
  /* @__PURE__ */ m(u, { flexDirection: "column", gap: 2, children: [
46
47
  /* @__PURE__ */ a(y, { as: "h2", children: t("reviewAndSubmitTitle") }),
47
- /* @__PURE__ */ a(w, { variant: "supporting", children: t("reviewSubtitle", { debitDate: n.debitDate }) })
48
+ /* @__PURE__ */ a(N, { variant: "supporting", children: t("reviewSubtitle", { debitDate: n.debitDate }) })
48
49
  ] }),
49
50
  /* @__PURE__ */ m(u, { justifyContent: "flex-end", gap: 16, children: [
50
- /* @__PURE__ */ a(c, { onClick: A, variant: "secondary", children: t("editButton") }),
51
+ /* @__PURE__ */ a(c, { onClick: D, variant: "secondary", children: t("editButton") }),
51
52
  /* @__PURE__ */ a(
52
53
  c,
53
54
  {
54
- onClick: D,
55
+ onClick: g,
55
56
  variant: "primary",
56
57
  isLoading: l,
57
- isDisabled: x,
58
+ isDisabled: j,
58
59
  children: t("submitButton")
59
60
  }
60
61
  )
61
62
  ] })
62
63
  ] }),
63
64
  /* @__PURE__ */ a(
64
- N,
65
+ B,
65
66
  {
66
67
  status: "info",
67
68
  label: t("alerts.submitPaymentsDeadline", {
@@ -73,15 +74,15 @@ const M = "0.000", ee = ({
73
74
  s.length > 0 && b && s.map((e) => {
74
75
  const r = e.blockerType || "";
75
76
  return p.includes(r) ? /* @__PURE__ */ a(
76
- R,
77
+ L,
77
78
  {
78
79
  blocker: e,
79
80
  selectedValue: d[r],
80
81
  onUnblockOptionChange: b,
81
- paymentSpeed: H
82
+ paymentSpeed: w
82
83
  },
83
84
  r
84
- ) : /* @__PURE__ */ a(L, { blocker: e }, r);
85
+ ) : /* @__PURE__ */ a(_, { blocker: e }, r);
85
86
  }),
86
87
  /* @__PURE__ */ a(y, { as: "h3", children: t("paymentSummaryTitle") }),
87
88
  /* @__PURE__ */ a(
@@ -98,7 +99,7 @@ const M = "0.000", ee = ({
98
99
  },
99
100
  {
100
101
  title: t("summaryTableHeaders.debitAccount"),
101
- render: () => g?.hiddenAccountNumber ?? t("naDebitAccount")
102
+ render: () => H?.hiddenAccountNumber ?? t("naDebitAccount")
102
103
  },
103
104
  {
104
105
  title: t("summaryTableHeaders.debitDate"),
@@ -119,15 +120,15 @@ const M = "0.000", ee = ({
119
120
  columns: [
120
121
  {
121
122
  title: t("contractorTableHeaders.contractor"),
122
- render: (e) => P(
123
- h.find(
123
+ render: (e) => R(
124
+ A.find(
124
125
  (r) => r.uuid === e.contractorUuid
125
126
  )
126
127
  )
127
128
  },
128
129
  {
129
130
  title: t("contractorTableHeaders.wageType"),
130
- render: (e) => B(e)
131
+ render: (e) => C(e)
131
132
  },
132
133
  {
133
134
  title: t("contractorTableHeaders.paymentMethod"),
@@ -139,7 +140,7 @@ const M = "0.000", ee = ({
139
140
  render: (e) => {
140
141
  if (e.wageType === "Fixed") return t("na");
141
142
  const r = Number(e.hours || "0");
142
- return r ? F(r) : M;
143
+ return r ? I(r) : O;
143
144
  }
144
145
  },
145
146
  {
@@ -163,7 +164,7 @@ const M = "0.000", ee = ({
163
164
  render: (e) => o(f(e))
164
165
  }
165
166
  ],
166
- data: C,
167
+ data: S,
167
168
  footer: () => ({
168
169
  "column-0": t("totalsLabel"),
169
170
  "column-4": o(i?.wageAmount ?? 0),
@@ -177,6 +178,6 @@ const M = "0.000", ee = ({
177
178
  ] });
178
179
  };
179
180
  export {
180
- ee as PreviewPresentation
181
+ te as PreviewPresentation
181
182
  };
182
183
  //# sourceMappingURL=PreviewPresentation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PreviewPresentation.js","sources":["../../../../../src/components/Contractor/Payments/CreatePayment/PreviewPresentation.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport type { ContractorPaymentGroupPreview } from '@gusto/embedded-api/models/components/contractorpaymentgrouppreview'\nimport type { ContractorPaymentForGroupPreview } from '@gusto/embedded-api/models/components/contractorpaymentforgrouppreview'\nimport { useMemo } from 'react'\nimport type { Contractor } from '@gusto/embedded-api/models/components/contractor'\nimport type { CompanyBankAccount } from '@gusto/embedded-api/models/components/companybankaccount'\nimport type { PaymentSpeed } from '@gusto/embedded-api/models/components/paymentconfigs'\nimport { getContractorDisplayName } from '../../shared/helpers'\nimport { getContractorPaymentTotalAmount } from '../shared/paymentAmounts'\nimport { FastAchSubmissionBlockerBanner } from './FastAchSubmissionBlockerBanner'\nimport { GenericBlocker } from './GenericBlocker'\nimport { DataView, Flex } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useI18n } from '@/i18n'\nimport { formatHoursDisplay } from '@/components/Payroll/helpers'\nimport useNumberFormatter from '@/hooks/useNumberFormatter'\nimport { PAYROLL_RESOLVABLE_SUBMISSION_BLOCKER_TYPES } from '@/shared/constants'\n\nconst ZERO_HOURS_DISPLAY = '0.000'\n\ninterface PreviewPresentationProps {\n contractorPaymentGroup: ContractorPaymentGroupPreview\n contractors: Contractor[]\n onBackToEdit: () => void\n onSubmit: () => void\n isLoading: boolean\n bankAccount?: CompanyBankAccount\n selectedUnblockOptions?: Record<string, string>\n onUnblockOptionChange?: (blockerType: string, value: string) => void\n paymentSpeed?: PaymentSpeed\n}\n\n/** @internal */\nexport const PreviewPresentation = ({\n contractorPaymentGroup,\n contractors,\n onBackToEdit,\n onSubmit,\n isLoading,\n bankAccount,\n selectedUnblockOptions = {},\n onUnblockOptionChange,\n paymentSpeed,\n}: PreviewPresentationProps) => {\n const { Button, Text, Heading, Alert } = useComponentContext()\n useI18n('Contractor.Payments.CreatePayment')\n const { t } = useTranslation('Contractor.Payments.CreatePayment', {\n keyPrefix: 'previewPresentation',\n })\n const currencyFormatter = useNumberFormatter()\n\n const formatWageType = (contractor: ContractorPaymentForGroupPreview) => {\n if (contractor.wageType === 'Hourly' && contractor.hourlyRate) {\n return `${currencyFormatter(Number(contractor.hourlyRate || '0'))}${t('perHour')}`\n }\n return contractor.wageType\n }\n\n const totals = useMemo(\n () =>\n contractorPaymentGroup.contractorPayments?.reduce(\n (acc, contractor) => {\n acc.wageAmount += Number(contractor.wage || '0')\n acc.bonusAmount += Number(contractor.bonus || '0')\n acc.reimbursementAmount += Number(contractor.reimbursement || '0')\n acc.totalAmount += getContractorPaymentTotalAmount(contractor)\n return acc\n },\n { wageAmount: 0, bonusAmount: 0, reimbursementAmount: 0, totalAmount: 0 },\n ),\n [contractorPaymentGroup.contractorPayments],\n )\n\n const contractorPayments = contractorPaymentGroup.contractorPayments || []\n\n const submissionBlockers = (contractorPaymentGroup.submissionBlockers || []).filter(\n blocker => blocker.status === 'unresolved',\n )\n\n const hasUnresolvableBlockers = submissionBlockers.some(\n blocker => !PAYROLL_RESOLVABLE_SUBMISSION_BLOCKER_TYPES.includes(blocker.blockerType || ''),\n )\n\n const hasUnselectedBlockers = submissionBlockers.some(\n blocker => !selectedUnblockOptions[blocker.blockerType || ''],\n )\n\n const isSubmitDisabled =\n isLoading ||\n (submissionBlockers.length > 0 && (hasUnresolvableBlockers || hasUnselectedBlockers))\n\n return (\n <Flex flexDirection=\"column\" gap={32}>\n <Flex justifyContent=\"flex-end\" gap={16}>\n <Flex flexDirection=\"column\" gap={2}>\n <Heading as=\"h2\">{t('reviewAndSubmitTitle')}</Heading>\n <Text variant=\"supporting\">\n {t('reviewSubtitle', { debitDate: contractorPaymentGroup.debitDate })}\n </Text>\n </Flex>\n <Flex justifyContent=\"flex-end\" gap={16}>\n <Button onClick={onBackToEdit} variant=\"secondary\">\n {t('editButton')}\n </Button>\n <Button\n onClick={onSubmit}\n variant=\"primary\"\n isLoading={isLoading}\n isDisabled={isSubmitDisabled}\n >\n {t('submitButton')}\n </Button>\n </Flex>\n </Flex>\n\n <Alert\n status=\"info\"\n label={t('alerts.submitPaymentsDeadline', {\n checkDate: contractorPaymentGroup.checkDate,\n debitDate: contractorPaymentGroup.debitDate,\n })}\n />\n\n {submissionBlockers.length > 0 &&\n onUnblockOptionChange &&\n submissionBlockers.map(blocker => {\n const blockerType = blocker.blockerType || ''\n\n if (PAYROLL_RESOLVABLE_SUBMISSION_BLOCKER_TYPES.includes(blockerType)) {\n return (\n <FastAchSubmissionBlockerBanner\n key={blockerType}\n blocker={blocker}\n selectedValue={selectedUnblockOptions[blockerType]}\n onUnblockOptionChange={onUnblockOptionChange}\n paymentSpeed={paymentSpeed}\n />\n )\n }\n\n return <GenericBlocker key={blockerType} blocker={blocker} />\n })}\n\n {/* Payment Summary */}\n <Heading as=\"h3\">{t('paymentSummaryTitle')}</Heading>\n <DataView\n columns={[\n {\n title: t('summaryTableHeaders.totalAmount'),\n render: () => currencyFormatter(Number(contractorPaymentGroup.totals?.amount || '0')),\n },\n {\n title: t('summaryTableHeaders.debitAmount'),\n render: () =>\n currencyFormatter(Number(contractorPaymentGroup.totals?.debitAmount || '0')),\n },\n {\n title: t('summaryTableHeaders.debitAccount'),\n render: () => bankAccount?.hiddenAccountNumber ?? t('naDebitAccount'),\n },\n {\n title: t('summaryTableHeaders.debitDate'),\n render: () => contractorPaymentGroup.debitDate || 'debitDate',\n },\n {\n title: t('summaryTableHeaders.contractorPayDate'),\n render: () => contractorPaymentGroup.checkDate || 'contractorPayDate',\n },\n ]}\n data={[contractorPaymentGroup]}\n label=\"Payment Summary\"\n />\n\n {/* Contractor Payments Table */}\n <DataView\n columns={[\n {\n title: t('contractorTableHeaders.contractor'),\n render: contractorPayment =>\n getContractorDisplayName(\n contractors.find(\n contractor => contractor.uuid === contractorPayment.contractorUuid,\n ),\n ),\n },\n {\n title: t('contractorTableHeaders.wageType'),\n render: contractorPayment => formatWageType(contractorPayment),\n },\n {\n title: t('contractorTableHeaders.paymentMethod'),\n render: contractorPayment => contractorPayment.paymentMethod || 'N/A',\n },\n {\n title: t('contractorTableHeaders.hours'),\n justify: 'end',\n render: contractorPayment => {\n if (contractorPayment.wageType === 'Fixed') return t('na')\n const hours = Number(contractorPayment.hours || '0')\n return hours ? formatHoursDisplay(hours) : ZERO_HOURS_DISPLAY\n },\n },\n {\n title: t('contractorTableHeaders.wage'),\n justify: 'end',\n render: contractorPayment => {\n if (contractorPayment.wageType === 'Hourly') return t('na')\n return currencyFormatter(Number(contractorPayment.wage || '0'))\n },\n },\n {\n title: t('contractorTableHeaders.bonus'),\n justify: 'end',\n render: contractorPayment => currencyFormatter(Number(contractorPayment.bonus || '0')),\n },\n {\n title: t('contractorTableHeaders.reimbursement'),\n justify: 'end',\n render: contractorPayment =>\n currencyFormatter(Number(contractorPayment.reimbursement || '0')),\n },\n {\n title: t('contractorTableHeaders.total'),\n justify: 'end',\n render: contractorPayment =>\n currencyFormatter(getContractorPaymentTotalAmount(contractorPayment)),\n },\n ]}\n data={contractorPayments}\n footer={() => ({\n 'column-0': t('totalsLabel'),\n 'column-4': currencyFormatter(totals?.wageAmount ?? 0),\n 'column-5': currencyFormatter(totals?.bonusAmount ?? 0),\n 'column-6': currencyFormatter(totals?.reimbursementAmount ?? 0),\n 'column-7': currencyFormatter(totals?.totalAmount ?? 0),\n })}\n label={t('whatYourCompanyPays')}\n />\n </Flex>\n )\n}\n"],"names":["ZERO_HOURS_DISPLAY","PreviewPresentation","contractorPaymentGroup","contractors","onBackToEdit","onSubmit","isLoading","bankAccount","selectedUnblockOptions","onUnblockOptionChange","paymentSpeed","Button","Text","Heading","Alert","useComponentContext","useI18n","useTranslation","currencyFormatter","useNumberFormatter","formatWageType","contractor","totals","useMemo","acc","getContractorPaymentTotalAmount","contractorPayments","submissionBlockers","blocker","hasUnresolvableBlockers","PAYROLL_RESOLVABLE_SUBMISSION_BLOCKER_TYPES","hasUnselectedBlockers","isSubmitDisabled","jsxs","Flex","jsx","blockerType","FastAchSubmissionBlockerBanner","GenericBlocker","DataView","contractorPayment","getContractorDisplayName","hours","formatHoursDisplay"],"mappings":"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"}
1
+ {"version":3,"file":"PreviewPresentation.js","sources":["../../../../../src/components/Contractor/Payments/CreatePayment/PreviewPresentation.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport type { ContractorPaymentGroupPreview } from '@gusto/embedded-api/models/components/contractorpaymentgrouppreview'\nimport type { ContractorPaymentForGroupPreview } from '@gusto/embedded-api/models/components/contractorpaymentforgrouppreview'\nimport { useMemo } from 'react'\nimport type { Contractor } from '@gusto/embedded-api/models/components/contractor'\nimport type { CompanyBankAccount } from '@gusto/embedded-api/models/components/companybankaccount'\nimport type { PaymentSpeed } from '@gusto/embedded-api/models/components/paymentconfigs'\nimport { getContractorDisplayName } from '../../shared/helpers'\nimport { getContractorPaymentTotalAmount } from '../shared/paymentAmounts'\nimport { FastAchSubmissionBlockerBanner } from './FastAchSubmissionBlockerBanner'\nimport { GenericBlocker } from './GenericBlocker'\nimport { DataView, Flex } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useI18n } from '@/i18n'\nimport { formatHoursDisplay } from '@/components/Payroll/helpers'\nimport useNumberFormatter from '@/hooks/useNumberFormatter'\nimport { PAYROLL_RESOLVABLE_SUBMISSION_BLOCKER_TYPES } from '@/shared/constants'\n\nconst ZERO_HOURS_DISPLAY = '0.000'\n\ninterface PreviewPresentationProps {\n /** CSS class name applied to the root element. */\n className?: string\n contractorPaymentGroup: ContractorPaymentGroupPreview\n contractors: Contractor[]\n onBackToEdit: () => void\n onSubmit: () => void\n isLoading: boolean\n bankAccount?: CompanyBankAccount\n selectedUnblockOptions?: Record<string, string>\n onUnblockOptionChange?: (blockerType: string, value: string) => void\n paymentSpeed?: PaymentSpeed\n}\n\n/** @internal */\nexport const PreviewPresentation = ({\n className,\n contractorPaymentGroup,\n contractors,\n onBackToEdit,\n onSubmit,\n isLoading,\n bankAccount,\n selectedUnblockOptions = {},\n onUnblockOptionChange,\n paymentSpeed,\n}: PreviewPresentationProps) => {\n const { Button, Text, Heading, Alert } = useComponentContext()\n useI18n('Contractor.Payments.CreatePayment')\n const { t } = useTranslation('Contractor.Payments.CreatePayment', {\n keyPrefix: 'previewPresentation',\n })\n const currencyFormatter = useNumberFormatter()\n\n const formatWageType = (contractor: ContractorPaymentForGroupPreview) => {\n if (contractor.wageType === 'Hourly' && contractor.hourlyRate) {\n return `${currencyFormatter(Number(contractor.hourlyRate || '0'))}${t('perHour')}`\n }\n return contractor.wageType\n }\n\n const totals = useMemo(\n () =>\n contractorPaymentGroup.contractorPayments?.reduce(\n (acc, contractor) => {\n acc.wageAmount += Number(contractor.wage || '0')\n acc.bonusAmount += Number(contractor.bonus || '0')\n acc.reimbursementAmount += Number(contractor.reimbursement || '0')\n acc.totalAmount += getContractorPaymentTotalAmount(contractor)\n return acc\n },\n { wageAmount: 0, bonusAmount: 0, reimbursementAmount: 0, totalAmount: 0 },\n ),\n [contractorPaymentGroup.contractorPayments],\n )\n\n const contractorPayments = contractorPaymentGroup.contractorPayments || []\n\n const submissionBlockers = (contractorPaymentGroup.submissionBlockers || []).filter(\n blocker => blocker.status === 'unresolved',\n )\n\n const hasUnresolvableBlockers = submissionBlockers.some(\n blocker => !PAYROLL_RESOLVABLE_SUBMISSION_BLOCKER_TYPES.includes(blocker.blockerType || ''),\n )\n\n const hasUnselectedBlockers = submissionBlockers.some(\n blocker => !selectedUnblockOptions[blocker.blockerType || ''],\n )\n\n const isSubmitDisabled =\n isLoading ||\n (submissionBlockers.length > 0 && (hasUnresolvableBlockers || hasUnselectedBlockers))\n\n return (\n <Flex className={className} flexDirection=\"column\" gap={32}>\n <Flex justifyContent=\"flex-end\" gap={16}>\n <Flex flexDirection=\"column\" gap={2}>\n <Heading as=\"h2\">{t('reviewAndSubmitTitle')}</Heading>\n <Text variant=\"supporting\">\n {t('reviewSubtitle', { debitDate: contractorPaymentGroup.debitDate })}\n </Text>\n </Flex>\n <Flex justifyContent=\"flex-end\" gap={16}>\n <Button onClick={onBackToEdit} variant=\"secondary\">\n {t('editButton')}\n </Button>\n <Button\n onClick={onSubmit}\n variant=\"primary\"\n isLoading={isLoading}\n isDisabled={isSubmitDisabled}\n >\n {t('submitButton')}\n </Button>\n </Flex>\n </Flex>\n\n <Alert\n status=\"info\"\n label={t('alerts.submitPaymentsDeadline', {\n checkDate: contractorPaymentGroup.checkDate,\n debitDate: contractorPaymentGroup.debitDate,\n })}\n />\n\n {submissionBlockers.length > 0 &&\n onUnblockOptionChange &&\n submissionBlockers.map(blocker => {\n const blockerType = blocker.blockerType || ''\n\n if (PAYROLL_RESOLVABLE_SUBMISSION_BLOCKER_TYPES.includes(blockerType)) {\n return (\n <FastAchSubmissionBlockerBanner\n key={blockerType}\n blocker={blocker}\n selectedValue={selectedUnblockOptions[blockerType]}\n onUnblockOptionChange={onUnblockOptionChange}\n paymentSpeed={paymentSpeed}\n />\n )\n }\n\n return <GenericBlocker key={blockerType} blocker={blocker} />\n })}\n\n {/* Payment Summary */}\n <Heading as=\"h3\">{t('paymentSummaryTitle')}</Heading>\n <DataView\n columns={[\n {\n title: t('summaryTableHeaders.totalAmount'),\n render: () => currencyFormatter(Number(contractorPaymentGroup.totals?.amount || '0')),\n },\n {\n title: t('summaryTableHeaders.debitAmount'),\n render: () =>\n currencyFormatter(Number(contractorPaymentGroup.totals?.debitAmount || '0')),\n },\n {\n title: t('summaryTableHeaders.debitAccount'),\n render: () => bankAccount?.hiddenAccountNumber ?? t('naDebitAccount'),\n },\n {\n title: t('summaryTableHeaders.debitDate'),\n render: () => contractorPaymentGroup.debitDate || 'debitDate',\n },\n {\n title: t('summaryTableHeaders.contractorPayDate'),\n render: () => contractorPaymentGroup.checkDate || 'contractorPayDate',\n },\n ]}\n data={[contractorPaymentGroup]}\n label=\"Payment Summary\"\n />\n\n {/* Contractor Payments Table */}\n <DataView\n columns={[\n {\n title: t('contractorTableHeaders.contractor'),\n render: contractorPayment =>\n getContractorDisplayName(\n contractors.find(\n contractor => contractor.uuid === contractorPayment.contractorUuid,\n ),\n ),\n },\n {\n title: t('contractorTableHeaders.wageType'),\n render: contractorPayment => formatWageType(contractorPayment),\n },\n {\n title: t('contractorTableHeaders.paymentMethod'),\n render: contractorPayment => contractorPayment.paymentMethod || 'N/A',\n },\n {\n title: t('contractorTableHeaders.hours'),\n justify: 'end',\n render: contractorPayment => {\n if (contractorPayment.wageType === 'Fixed') return t('na')\n const hours = Number(contractorPayment.hours || '0')\n return hours ? formatHoursDisplay(hours) : ZERO_HOURS_DISPLAY\n },\n },\n {\n title: t('contractorTableHeaders.wage'),\n justify: 'end',\n render: contractorPayment => {\n if (contractorPayment.wageType === 'Hourly') return t('na')\n return currencyFormatter(Number(contractorPayment.wage || '0'))\n },\n },\n {\n title: t('contractorTableHeaders.bonus'),\n justify: 'end',\n render: contractorPayment => currencyFormatter(Number(contractorPayment.bonus || '0')),\n },\n {\n title: t('contractorTableHeaders.reimbursement'),\n justify: 'end',\n render: contractorPayment =>\n currencyFormatter(Number(contractorPayment.reimbursement || '0')),\n },\n {\n title: t('contractorTableHeaders.total'),\n justify: 'end',\n render: contractorPayment =>\n currencyFormatter(getContractorPaymentTotalAmount(contractorPayment)),\n },\n ]}\n data={contractorPayments}\n footer={() => ({\n 'column-0': t('totalsLabel'),\n 'column-4': currencyFormatter(totals?.wageAmount ?? 0),\n 'column-5': currencyFormatter(totals?.bonusAmount ?? 0),\n 'column-6': currencyFormatter(totals?.reimbursementAmount ?? 0),\n 'column-7': currencyFormatter(totals?.totalAmount ?? 0),\n })}\n label={t('whatYourCompanyPays')}\n />\n </Flex>\n )\n}\n"],"names":["ZERO_HOURS_DISPLAY","PreviewPresentation","className","contractorPaymentGroup","contractors","onBackToEdit","onSubmit","isLoading","bankAccount","selectedUnblockOptions","onUnblockOptionChange","paymentSpeed","Button","Text","Heading","Alert","useComponentContext","useI18n","useTranslation","currencyFormatter","useNumberFormatter","formatWageType","contractor","totals","useMemo","acc","getContractorPaymentTotalAmount","contractorPayments","submissionBlockers","blocker","hasUnresolvableBlockers","PAYROLL_RESOLVABLE_SUBMISSION_BLOCKER_TYPES","hasUnselectedBlockers","isSubmitDisabled","Flex","jsxs","jsx","blockerType","FastAchSubmissionBlockerBanner","GenericBlocker","DataView","contractorPayment","getContractorDisplayName","hours","formatHoursDisplay"],"mappings":";;;;;;;;;;;;;;AAkBA,MAAMA,IAAqB,SAiBdC,KAAsB,CAAC;AAAA,EAClC,WAAAC;AAAA,EACA,wBAAAC;AAAA,EACA,aAAAC;AAAA,EACA,cAAAC;AAAA,EACA,UAAAC;AAAA,EACA,WAAAC;AAAA,EACA,aAAAC;AAAA,EACA,wBAAAC,IAAyB,CAAA;AAAA,EACzB,uBAAAC;AAAA,EACA,cAAAC;AACF,MAAgC;AAC9B,QAAM,EAAE,QAAAC,GAAQ,MAAAC,GAAM,SAAAC,GAAS,OAAAC,EAAA,IAAUC,EAAA;AACzC,EAAAC,EAAQ,mCAAmC;AAC3C,QAAM,EAAE,EAAA,IAAMC,EAAe,qCAAqC;AAAA,IAChE,WAAW;AAAA,EAAA,CACZ,GACKC,IAAoBC,EAAA,GAEpBC,IAAiB,CAACC,MAClBA,EAAW,aAAa,YAAYA,EAAW,aAC1C,GAAGH,EAAkB,OAAOG,EAAW,cAAc,GAAG,CAAC,CAAC,GAAG,EAAE,SAAS,CAAC,KAE3EA,EAAW,UAGdC,IAASC;AAAA,IACb,MACErB,EAAuB,oBAAoB;AAAA,MACzC,CAACsB,GAAKH,OACJG,EAAI,cAAc,OAAOH,EAAW,QAAQ,GAAG,GAC/CG,EAAI,eAAe,OAAOH,EAAW,SAAS,GAAG,GACjDG,EAAI,uBAAuB,OAAOH,EAAW,iBAAiB,GAAG,GACjEG,EAAI,eAAeC,EAAgCJ,CAAU,GACtDG;AAAA,MAET,EAAE,YAAY,GAAG,aAAa,GAAG,qBAAqB,GAAG,aAAa,EAAA;AAAA,IAAE;AAAA,IAE5E,CAACtB,EAAuB,kBAAkB;AAAA,EAAA,GAGtCwB,IAAqBxB,EAAuB,sBAAsB,CAAA,GAElEyB,KAAsBzB,EAAuB,sBAAsB,CAAA,GAAI;AAAA,IAC3E,CAAA0B,MAAWA,EAAQ,WAAW;AAAA,EAAA,GAG1BC,IAA0BF,EAAmB;AAAA,IACjD,OAAW,CAACG,EAA4C,SAASF,EAAQ,eAAe,EAAE;AAAA,EAAA,GAGtFG,IAAwBJ,EAAmB;AAAA,IAC/C,CAAAC,MAAW,CAACpB,EAAuBoB,EAAQ,eAAe,EAAE;AAAA,EAAA,GAGxDI,IACJ1B,KACCqB,EAAmB,SAAS,MAAME,KAA2BE;AAEhE,2BACGE,GAAA,EAAK,WAAAhC,GAAsB,eAAc,UAAS,KAAK,IACtD,UAAA;AAAA,IAAA,gBAAAiC,EAACD,GAAA,EAAK,gBAAe,YAAW,KAAK,IACnC,UAAA;AAAA,MAAA,gBAAAC,EAACD,GAAA,EAAK,eAAc,UAAS,KAAK,GAChC,UAAA;AAAA,QAAA,gBAAAE,EAACtB,GAAA,EAAQ,IAAG,MAAM,UAAA,EAAE,sBAAsB,GAAE;AAAA,QAC5C,gBAAAsB,EAACvB,GAAA,EAAK,SAAQ,cACX,UAAA,EAAE,kBAAkB,EAAE,WAAWV,EAAuB,UAAA,CAAW,EAAA,CACtE;AAAA,MAAA,GACF;AAAA,MACA,gBAAAgC,EAACD,GAAA,EAAK,gBAAe,YAAW,KAAK,IACnC,UAAA;AAAA,QAAA,gBAAAE,EAACxB,KAAO,SAASP,GAAc,SAAQ,aACpC,UAAA,EAAE,YAAY,GACjB;AAAA,QACA,gBAAA+B;AAAA,UAACxB;AAAA,UAAA;AAAA,YACC,SAASN;AAAA,YACT,SAAQ;AAAA,YACR,WAAAC;AAAA,YACA,YAAY0B;AAAA,YAEX,YAAE,cAAc;AAAA,UAAA;AAAA,QAAA;AAAA,MACnB,EAAA,CACF;AAAA,IAAA,GACF;AAAA,IAEA,gBAAAG;AAAA,MAACrB;AAAA,MAAA;AAAA,QACC,QAAO;AAAA,QACP,OAAO,EAAE,iCAAiC;AAAA,UACxC,WAAWZ,EAAuB;AAAA,UAClC,WAAWA,EAAuB;AAAA,QAAA,CACnC;AAAA,MAAA;AAAA,IAAA;AAAA,IAGFyB,EAAmB,SAAS,KAC3BlB,KACAkB,EAAmB,IAAI,CAAAC,MAAW;AAChC,YAAMQ,IAAcR,EAAQ,eAAe;AAE3C,aAAIE,EAA4C,SAASM,CAAW,IAEhE,gBAAAD;AAAA,QAACE;AAAA,QAAA;AAAA,UAEC,SAAAT;AAAA,UACA,eAAepB,EAAuB4B,CAAW;AAAA,UACjD,uBAAA3B;AAAA,UACA,cAAAC;AAAA,QAAA;AAAA,QAJK0B;AAAA,MAAA,IASJ,gBAAAD,EAACG,GAAA,EAAiC,SAAAV,EAAA,GAAbQ,CAA+B;AAAA,IAC7D,CAAC;AAAA,sBAGFvB,GAAA,EAAQ,IAAG,MAAM,UAAA,EAAE,qBAAqB,GAAE;AAAA,IAC3C,gBAAAsB;AAAA,MAACI;AAAA,MAAA;AAAA,QACC,SAAS;AAAA,UACP;AAAA,YACE,OAAO,EAAE,iCAAiC;AAAA,YAC1C,QAAQ,MAAMrB,EAAkB,OAAOhB,EAAuB,QAAQ,UAAU,GAAG,CAAC;AAAA,UAAA;AAAA,UAEtF;AAAA,YACE,OAAO,EAAE,iCAAiC;AAAA,YAC1C,QAAQ,MACNgB,EAAkB,OAAOhB,EAAuB,QAAQ,eAAe,GAAG,CAAC;AAAA,UAAA;AAAA,UAE/E;AAAA,YACE,OAAO,EAAE,kCAAkC;AAAA,YAC3C,QAAQ,MAAMK,GAAa,uBAAuB,EAAE,gBAAgB;AAAA,UAAA;AAAA,UAEtE;AAAA,YACE,OAAO,EAAE,+BAA+B;AAAA,YACxC,QAAQ,MAAML,EAAuB,aAAa;AAAA,UAAA;AAAA,UAEpD;AAAA,YACE,OAAO,EAAE,uCAAuC;AAAA,YAChD,QAAQ,MAAMA,EAAuB,aAAa;AAAA,UAAA;AAAA,QACpD;AAAA,QAEF,MAAM,CAACA,CAAsB;AAAA,QAC7B,OAAM;AAAA,MAAA;AAAA,IAAA;AAAA,IAIR,gBAAAiC;AAAA,MAACI;AAAA,MAAA;AAAA,QACC,SAAS;AAAA,UACP;AAAA,YACE,OAAO,EAAE,mCAAmC;AAAA,YAC5C,QAAQ,CAAAC,MACNC;AAAA,cACEtC,EAAY;AAAA,gBACV,CAAAkB,MAAcA,EAAW,SAASmB,EAAkB;AAAA,cAAA;AAAA,YACtD;AAAA,UACF;AAAA,UAEJ;AAAA,YACE,OAAO,EAAE,iCAAiC;AAAA,YAC1C,QAAQ,CAAAA,MAAqBpB,EAAeoB,CAAiB;AAAA,UAAA;AAAA,UAE/D;AAAA,YACE,OAAO,EAAE,sCAAsC;AAAA,YAC/C,QAAQ,CAAAA,MAAqBA,EAAkB,iBAAiB;AAAA,UAAA;AAAA,UAElE;AAAA,YACE,OAAO,EAAE,8BAA8B;AAAA,YACvC,SAAS;AAAA,YACT,QAAQ,CAAAA,MAAqB;AAC3B,kBAAIA,EAAkB,aAAa,QAAS,QAAO,EAAE,IAAI;AACzD,oBAAME,IAAQ,OAAOF,EAAkB,SAAS,GAAG;AACnD,qBAAOE,IAAQC,EAAmBD,CAAK,IAAI3C;AAAA,YAC7C;AAAA,UAAA;AAAA,UAEF;AAAA,YACE,OAAO,EAAE,6BAA6B;AAAA,YACtC,SAAS;AAAA,YACT,QAAQ,CAAAyC,MACFA,EAAkB,aAAa,WAAiB,EAAE,IAAI,IACnDtB,EAAkB,OAAOsB,EAAkB,QAAQ,GAAG,CAAC;AAAA,UAChE;AAAA,UAEF;AAAA,YACE,OAAO,EAAE,8BAA8B;AAAA,YACvC,SAAS;AAAA,YACT,QAAQ,CAAAA,MAAqBtB,EAAkB,OAAOsB,EAAkB,SAAS,GAAG,CAAC;AAAA,UAAA;AAAA,UAEvF;AAAA,YACE,OAAO,EAAE,sCAAsC;AAAA,YAC/C,SAAS;AAAA,YACT,QAAQ,CAAAA,MACNtB,EAAkB,OAAOsB,EAAkB,iBAAiB,GAAG,CAAC;AAAA,UAAA;AAAA,UAEpE;AAAA,YACE,OAAO,EAAE,8BAA8B;AAAA,YACvC,SAAS;AAAA,YACT,QAAQ,CAAAA,MACNtB,EAAkBO,EAAgCe,CAAiB,CAAC;AAAA,UAAA;AAAA,QACxE;AAAA,QAEF,MAAMd;AAAA,QACN,QAAQ,OAAO;AAAA,UACb,YAAY,EAAE,aAAa;AAAA,UAC3B,YAAYR,EAAkBI,GAAQ,cAAc,CAAC;AAAA,UACrD,YAAYJ,EAAkBI,GAAQ,eAAe,CAAC;AAAA,UACtD,YAAYJ,EAAkBI,GAAQ,uBAAuB,CAAC;AAAA,UAC9D,YAAYJ,EAAkBI,GAAQ,eAAe,CAAC;AAAA,QAAA;AAAA,QAExD,OAAO,EAAE,qBAAqB;AAAA,MAAA;AAAA,IAAA;AAAA,EAChC,GACF;AAEJ;"}
@@ -1,57 +1,63 @@
1
1
  import { jsx as t, jsxs as e } from "react/jsx-runtime";
2
- import { useTranslation as S } from "react-i18next";
3
- import { useContractorPaymentGroupsGetSuspense as g } from "@gusto/embedded-api/react-query/contractorPaymentGroupsGet";
4
- import { useContractorsListSuspense as T } from "@gusto/embedded-api/react-query/contractorsList";
5
- import { useHistoricalPaymentSummaryDictionary as x } from "./useFormDictionary.js";
2
+ import { useTranslation as g } from "react-i18next";
3
+ import { useContractorPaymentGroupsGetSuspense as T } from "@gusto/embedded-api/react-query/contractorPaymentGroupsGet";
4
+ import { useContractorsListSuspense as x } from "@gusto/embedded-api/react-query/contractorsList";
5
+ import { useHistoricalPaymentSummaryDictionary as b } from "./useFormDictionary.js";
6
6
  import { Flex as a } from "../../../Common/Flex/Flex.js";
7
- import { BaseComponent as b } from "../../../Base/Base.js";
7
+ import { BaseComponent as H } from "../../../Base/Base.js";
8
8
  import "../../../Base/useBase.js";
9
- import { useComponentContext as H } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
10
- import { useI18n as G, useComponentDictionary as I } from "../../../../i18n/I18n.js";
11
- import { useDateFormatter as O } from "../../../../hooks/useDateFormatter.js";
12
- import { ContractorOnboardingStatus as A, componentEvents as E } from "../../../../shared/constants.js";
13
- import { useUnstableFeature as L } from "../../../../contexts/UnstableFeaturesProvider/useUnstableFeature.js";
14
- import { PaymentSummaryBlock as N } from "../shared/PaymentSummaryBlock/PaymentSummaryBlock.js";
15
- function J(r) {
16
- return /* @__PURE__ */ t(b, { ...r, componentName: "Contractor.Payments.HistoricalPaymentSummary", children: /* @__PURE__ */ t(R, { ...r }) });
9
+ import { useComponentContext as G } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
10
+ import { useI18n as I, useComponentDictionary as O } from "../../../../i18n/I18n.js";
11
+ import { useDateFormatter as A } from "../../../../hooks/useDateFormatter.js";
12
+ import { ContractorOnboardingStatus as E, componentEvents as L } from "../../../../shared/constants.js";
13
+ import { useUnstableFeature as N } from "../../../../contexts/UnstableFeaturesProvider/useUnstableFeature.js";
14
+ import { PaymentSummaryBlock as R } from "../shared/PaymentSummaryBlock/PaymentSummaryBlock.js";
15
+ function K(r) {
16
+ return /* @__PURE__ */ t(H, { ...r, componentName: "Contractor.Payments.HistoricalPaymentSummary", children: /* @__PURE__ */ t(k, { ...r }) });
17
17
  }
18
- function R({ paymentGroupId: r, companyId: s, dictionary: c, onEvent: u }) {
19
- L("historicalPayments", { throwIfDisabled: !0 }), G("Contractor.Payments.HistoricalPaymentSummary"), I("Contractor.Payments.HistoricalPaymentSummary", c);
20
- const { t: o } = S("Contractor.Payments.HistoricalPaymentSummary"), { Heading: l, Text: m, Button: y, Alert: p } = H(), { formatLongWithYear: f } = O(), d = x(), { data: C } = g({
18
+ function k({
19
+ paymentGroupId: r,
20
+ companyId: s,
21
+ dictionary: c,
22
+ onEvent: u,
23
+ className: l
24
+ }) {
25
+ N("historicalPayments", { throwIfDisabled: !0 }), I("Contractor.Payments.HistoricalPaymentSummary"), O("Contractor.Payments.HistoricalPaymentSummary", c);
26
+ const { t: o } = g("Contractor.Payments.HistoricalPaymentSummary"), { Heading: y, Text: m, Button: p, Alert: f } = G(), { formatLongWithYear: d } = A(), C = b(), { data: P } = T({
21
27
  contractorPaymentGroupUuid: r
22
- }), n = C.contractorPaymentGroup, { data: P } = T({ companyUuid: s }), h = (P.contractors || []).filter(
23
- (i) => i.isActive && i.onboardingStatus === A.ONBOARDING_COMPLETED
28
+ }), n = P.contractorPaymentGroup, { data: h } = x({ companyUuid: s }), D = (h.contractors || []).filter(
29
+ (i) => i.isActive && i.onboardingStatus === E.ONBOARDING_COMPLETED
24
30
  );
25
31
  if (!n)
26
32
  return null;
27
- const D = () => {
28
- u(E.CONTRACTOR_HISTORICAL_PAYMENT_EXIT);
33
+ const S = () => {
34
+ u(L.CONTRACTOR_HISTORICAL_PAYMENT_EXIT);
29
35
  };
30
- return /* @__PURE__ */ e(a, { flexDirection: "column", gap: 24, children: [
31
- /* @__PURE__ */ t(p, { status: "success", label: o("successTitle"), children: /* @__PURE__ */ t(m, { children: o("successMessage", {
36
+ return /* @__PURE__ */ e(a, { className: l, flexDirection: "column", gap: 24, children: [
37
+ /* @__PURE__ */ t(f, { status: "success", label: o("successTitle"), children: /* @__PURE__ */ t(m, { children: o("successMessage", {
32
38
  count: n.contractorPayments?.length ?? 0
33
39
  }) }) }),
34
40
  /* @__PURE__ */ e(a, { justifyContent: "space-between", alignItems: "flex-start", children: [
35
41
  /* @__PURE__ */ e(a, { flexDirection: "column", gap: 2, children: [
36
- /* @__PURE__ */ t(l, { as: "h2", children: o("summaryTitle") }),
42
+ /* @__PURE__ */ t(y, { as: "h2", children: o("summaryTitle") }),
37
43
  /* @__PURE__ */ t(m, { variant: "supporting", children: o("summarySubtitle", {
38
- checkDate: f(n.checkDate ?? "")
44
+ checkDate: d(n.checkDate ?? "")
39
45
  }) })
40
46
  ] }),
41
- /* @__PURE__ */ t(y, { onClick: D, variant: "primary", children: o("doneCta") })
47
+ /* @__PURE__ */ t(p, { onClick: S, variant: "primary", children: o("doneCta") })
42
48
  ] }),
43
49
  /* @__PURE__ */ t(
44
- N,
50
+ R,
45
51
  {
46
52
  contractorPaymentGroup: n,
47
- contractors: h,
53
+ contractors: D,
48
54
  showDebitColumns: !1,
49
- dictionary: d
55
+ dictionary: C
50
56
  }
51
57
  )
52
58
  ] });
53
59
  }
54
60
  export {
55
- J as HistoricalPaymentSummary
61
+ K as HistoricalPaymentSummary
56
62
  };
57
63
  //# sourceMappingURL=HistoricalPaymentSummary.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HistoricalPaymentSummary.js","sources":["../../../../../src/components/Contractor/Payments/HistoricalPaymentSummary/HistoricalPaymentSummary.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { useContractorPaymentGroupsGetSuspense } from '@gusto/embedded-api/react-query/contractorPaymentGroupsGet'\nimport { useContractorsListSuspense } from '@gusto/embedded-api/react-query/contractorsList'\nimport { PaymentSummaryBlock } from '../shared/PaymentSummaryBlock'\nimport { useHistoricalPaymentSummaryDictionary } from './useFormDictionary'\nimport { Flex } from '@/components/Common'\nimport { BaseComponent, type BaseComponentInterface } from '@/components/Base'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useComponentDictionary, useI18n } from '@/i18n'\nimport { useDateFormatter } from '@/hooks/useDateFormatter'\nimport { componentEvents, ContractorOnboardingStatus } from '@/shared/constants'\nimport { useUnstableFeature } from '@/contexts/UnstableFeaturesProvider/useUnstableFeature'\n\n/**\n * Props for {@link HistoricalPaymentSummary}.\n *\n * @alpha\n */\nexport interface HistoricalPaymentSummaryProps extends BaseComponentInterface<'Contractor.Payments.HistoricalPaymentSummary'> {\n /** UUID of the historical contractor payment group to summarize. */\n paymentGroupId: string\n /** UUID of the company that owns the payment group. */\n companyId: string\n}\n\n/**\n * Displays the summary of a successfully recorded historical contractor payment.\n *\n * @remarks\n * Fetches the created contractor payment group by ID and renders a per-contractor breakdown.\n * Historical payments don't move money, so unlike `PaymentSummary` there is no debit account,\n * debit date, or wire-transfer confirmation to show.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `contractor/historicalPayments/exit` | User is done reviewing the summary. | — |\n *\n * @param props - See {@link HistoricalPaymentSummaryProps}.\n * @returns The rendered payment summary, or `null` when the payment group cannot be loaded.\n * @alpha\n */\nexport function HistoricalPaymentSummary(props: HistoricalPaymentSummaryProps) {\n return (\n <BaseComponent {...props} componentName=\"Contractor.Payments.HistoricalPaymentSummary\">\n <Root {...props} />\n </BaseComponent>\n )\n}\n\nfunction Root({ paymentGroupId, companyId, dictionary, onEvent }: HistoricalPaymentSummaryProps) {\n useUnstableFeature('historicalPayments', { throwIfDisabled: true })\n useI18n('Contractor.Payments.HistoricalPaymentSummary')\n useComponentDictionary('Contractor.Payments.HistoricalPaymentSummary', dictionary)\n const { t } = useTranslation('Contractor.Payments.HistoricalPaymentSummary')\n const { Heading, Text, Button, Alert } = useComponentContext()\n const { formatLongWithYear } = useDateFormatter()\n const summaryDictionary = useHistoricalPaymentSummaryDictionary()\n\n const { data: paymentGroupData } = useContractorPaymentGroupsGetSuspense({\n contractorPaymentGroupUuid: paymentGroupId,\n })\n const contractorPaymentGroup = paymentGroupData.contractorPaymentGroup\n\n const { data: contractorList } = useContractorsListSuspense({ companyUuid: companyId })\n const contractors = (contractorList.contractors || []).filter(\n contractor =>\n contractor.isActive &&\n contractor.onboardingStatus === ContractorOnboardingStatus.ONBOARDING_COMPLETED,\n )\n\n if (!contractorPaymentGroup) {\n return null\n }\n\n const handleDone = () => {\n onEvent(componentEvents.CONTRACTOR_HISTORICAL_PAYMENT_EXIT)\n }\n\n return (\n <Flex flexDirection=\"column\" gap={24}>\n <Alert status=\"success\" label={t('successTitle')}>\n <Text>\n {t('successMessage', {\n count: contractorPaymentGroup.contractorPayments?.length ?? 0,\n })}\n </Text>\n </Alert>\n\n <Flex justifyContent=\"space-between\" alignItems=\"flex-start\">\n <Flex flexDirection=\"column\" gap={2}>\n <Heading as=\"h2\">{t('summaryTitle')}</Heading>\n <Text variant=\"supporting\">\n {t('summarySubtitle', {\n checkDate: formatLongWithYear(contractorPaymentGroup.checkDate ?? ''),\n })}\n </Text>\n </Flex>\n <Button onClick={handleDone} variant=\"primary\">\n {t('doneCta')}\n </Button>\n </Flex>\n\n <PaymentSummaryBlock\n contractorPaymentGroup={contractorPaymentGroup}\n contractors={contractors}\n showDebitColumns={false}\n dictionary={summaryDictionary}\n />\n </Flex>\n )\n}\n"],"names":["HistoricalPaymentSummary","props","jsx","BaseComponent","Root","paymentGroupId","companyId","dictionary","onEvent","useUnstableFeature","useI18n","useComponentDictionary","t","useTranslation","Heading","Text","Button","Alert","useComponentContext","formatLongWithYear","useDateFormatter","summaryDictionary","useHistoricalPaymentSummaryDictionary","paymentGroupData","useContractorPaymentGroupsGetSuspense","contractorPaymentGroup","contractorList","useContractorsListSuspense","contractors","contractor","ContractorOnboardingStatus","handleDone","componentEvents","jsxs","Flex","PaymentSummaryBlock"],"mappings":";;;;;;;;;;;;;;AA0CO,SAASA,EAAyBC,GAAsC;AAC7E,SACE,gBAAAC,EAACC,GAAA,EAAe,GAAGF,GAAO,eAAc,gDACtC,UAAA,gBAAAC,EAACE,GAAA,EAAM,GAAGH,EAAA,CAAO,EAAA,CACnB;AAEJ;AAEA,SAASG,EAAK,EAAE,gBAAAC,GAAgB,WAAAC,GAAW,YAAAC,GAAY,SAAAC,KAA0C;AAC/F,EAAAC,EAAmB,sBAAsB,EAAE,iBAAiB,GAAA,CAAM,GAClEC,EAAQ,8CAA8C,GACtDC,EAAuB,gDAAgDJ,CAAU;AACjF,QAAM,EAAE,GAAAK,EAAA,IAAMC,EAAe,8CAA8C,GACrE,EAAE,SAAAC,GAAS,MAAAC,GAAM,QAAAC,GAAQ,OAAAC,EAAA,IAAUC,EAAA,GACnC,EAAE,oBAAAC,EAAA,IAAuBC,EAAA,GACzBC,IAAoBC,EAAA,GAEpB,EAAE,MAAMC,EAAA,IAAqBC,EAAsC;AAAA,IACvE,4BAA4BnB;AAAA,EAAA,CAC7B,GACKoB,IAAyBF,EAAiB,wBAE1C,EAAE,MAAMG,EAAA,IAAmBC,EAA2B,EAAE,aAAarB,GAAW,GAChFsB,KAAeF,EAAe,eAAe,CAAA,GAAI;AAAA,IACrD,CAAAG,MACEA,EAAW,YACXA,EAAW,qBAAqBC,EAA2B;AAAA,EAAA;AAG/D,MAAI,CAACL;AACH,WAAO;AAGT,QAAMM,IAAa,MAAM;AACvB,IAAAvB,EAAQwB,EAAgB,kCAAkC;AAAA,EAC5D;AAEA,SACE,gBAAAC,EAACC,GAAA,EAAK,eAAc,UAAS,KAAK,IAChC,UAAA;AAAA,IAAA,gBAAAhC,EAACe,GAAA,EAAM,QAAO,WAAU,OAAOL,EAAE,cAAc,GAC7C,UAAA,gBAAAV,EAACa,GAAA,EACE,UAAAH,EAAE,kBAAkB;AAAA,MACnB,OAAOa,EAAuB,oBAAoB,UAAU;AAAA,IAAA,CAC7D,GACH,EAAA,CACF;AAAA,IAEA,gBAAAQ,EAACC,GAAA,EAAK,gBAAe,iBAAgB,YAAW,cAC9C,UAAA;AAAA,MAAA,gBAAAD,EAACC,GAAA,EAAK,eAAc,UAAS,KAAK,GAChC,UAAA;AAAA,QAAA,gBAAAhC,EAACY,GAAA,EAAQ,IAAG,MAAM,UAAAF,EAAE,cAAc,GAAE;AAAA,QACpC,gBAAAV,EAACa,GAAA,EAAK,SAAQ,cACX,YAAE,mBAAmB;AAAA,UACpB,WAAWI,EAAmBM,EAAuB,aAAa,EAAE;AAAA,QAAA,CACrE,EAAA,CACH;AAAA,MAAA,GACF;AAAA,MACA,gBAAAvB,EAACc,KAAO,SAASe,GAAY,SAAQ,WAClC,UAAAnB,EAAE,SAAS,EAAA,CACd;AAAA,IAAA,GACF;AAAA,IAEA,gBAAAV;AAAA,MAACiC;AAAA,MAAA;AAAA,QACC,wBAAAV;AAAA,QACA,aAAAG;AAAA,QACA,kBAAkB;AAAA,QAClB,YAAYP;AAAA,MAAA;AAAA,IAAA;AAAA,EACd,GACF;AAEJ;"}
1
+ {"version":3,"file":"HistoricalPaymentSummary.js","sources":["../../../../../src/components/Contractor/Payments/HistoricalPaymentSummary/HistoricalPaymentSummary.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { useContractorPaymentGroupsGetSuspense } from '@gusto/embedded-api/react-query/contractorPaymentGroupsGet'\nimport { useContractorsListSuspense } from '@gusto/embedded-api/react-query/contractorsList'\nimport { PaymentSummaryBlock } from '../shared/PaymentSummaryBlock'\nimport { useHistoricalPaymentSummaryDictionary } from './useFormDictionary'\nimport { Flex } from '@/components/Common'\nimport { BaseComponent, type BaseComponentInterface } from '@/components/Base'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useComponentDictionary, useI18n } from '@/i18n'\nimport { useDateFormatter } from '@/hooks/useDateFormatter'\nimport { componentEvents, ContractorOnboardingStatus } from '@/shared/constants'\nimport { useUnstableFeature } from '@/contexts/UnstableFeaturesProvider/useUnstableFeature'\n\n/**\n * Props for {@link HistoricalPaymentSummary}.\n *\n * @alpha\n */\nexport interface HistoricalPaymentSummaryProps extends BaseComponentInterface<'Contractor.Payments.HistoricalPaymentSummary'> {\n /** UUID of the historical contractor payment group to summarize. */\n paymentGroupId: string\n /** UUID of the company that owns the payment group. */\n companyId: string\n}\n\n/**\n * Displays the summary of a successfully recorded historical contractor payment.\n *\n * @remarks\n * Fetches the created contractor payment group by ID and renders a per-contractor breakdown.\n * Historical payments don't move money, so unlike `PaymentSummary` there is no debit account,\n * debit date, or wire-transfer confirmation to show.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `contractor/historicalPayments/exit` | User is done reviewing the summary. | — |\n *\n * @param props - See {@link HistoricalPaymentSummaryProps}.\n * @returns The rendered payment summary, or `null` when the payment group cannot be loaded.\n * @alpha\n */\nexport function HistoricalPaymentSummary(props: HistoricalPaymentSummaryProps) {\n return (\n <BaseComponent {...props} componentName=\"Contractor.Payments.HistoricalPaymentSummary\">\n <Root {...props} />\n </BaseComponent>\n )\n}\n\nfunction Root({\n paymentGroupId,\n companyId,\n dictionary,\n onEvent,\n className,\n}: HistoricalPaymentSummaryProps) {\n useUnstableFeature('historicalPayments', { throwIfDisabled: true })\n useI18n('Contractor.Payments.HistoricalPaymentSummary')\n useComponentDictionary('Contractor.Payments.HistoricalPaymentSummary', dictionary)\n const { t } = useTranslation('Contractor.Payments.HistoricalPaymentSummary')\n const { Heading, Text, Button, Alert } = useComponentContext()\n const { formatLongWithYear } = useDateFormatter()\n const summaryDictionary = useHistoricalPaymentSummaryDictionary()\n\n const { data: paymentGroupData } = useContractorPaymentGroupsGetSuspense({\n contractorPaymentGroupUuid: paymentGroupId,\n })\n const contractorPaymentGroup = paymentGroupData.contractorPaymentGroup\n\n const { data: contractorList } = useContractorsListSuspense({ companyUuid: companyId })\n const contractors = (contractorList.contractors || []).filter(\n contractor =>\n contractor.isActive &&\n contractor.onboardingStatus === ContractorOnboardingStatus.ONBOARDING_COMPLETED,\n )\n\n if (!contractorPaymentGroup) {\n return null\n }\n\n const handleDone = () => {\n onEvent(componentEvents.CONTRACTOR_HISTORICAL_PAYMENT_EXIT)\n }\n\n return (\n <Flex className={className} flexDirection=\"column\" gap={24}>\n <Alert status=\"success\" label={t('successTitle')}>\n <Text>\n {t('successMessage', {\n count: contractorPaymentGroup.contractorPayments?.length ?? 0,\n })}\n </Text>\n </Alert>\n\n <Flex justifyContent=\"space-between\" alignItems=\"flex-start\">\n <Flex flexDirection=\"column\" gap={2}>\n <Heading as=\"h2\">{t('summaryTitle')}</Heading>\n <Text variant=\"supporting\">\n {t('summarySubtitle', {\n checkDate: formatLongWithYear(contractorPaymentGroup.checkDate ?? ''),\n })}\n </Text>\n </Flex>\n <Button onClick={handleDone} variant=\"primary\">\n {t('doneCta')}\n </Button>\n </Flex>\n\n <PaymentSummaryBlock\n contractorPaymentGroup={contractorPaymentGroup}\n contractors={contractors}\n showDebitColumns={false}\n dictionary={summaryDictionary}\n />\n </Flex>\n )\n}\n"],"names":["HistoricalPaymentSummary","props","jsx","BaseComponent","Root","paymentGroupId","companyId","dictionary","onEvent","className","useUnstableFeature","useI18n","useComponentDictionary","t","useTranslation","Heading","Text","Button","Alert","useComponentContext","formatLongWithYear","useDateFormatter","summaryDictionary","useHistoricalPaymentSummaryDictionary","paymentGroupData","useContractorPaymentGroupsGetSuspense","contractorPaymentGroup","contractorList","useContractorsListSuspense","contractors","contractor","ContractorOnboardingStatus","handleDone","componentEvents","Flex","jsxs","PaymentSummaryBlock"],"mappings":";;;;;;;;;;;;;;AA0CO,SAASA,EAAyBC,GAAsC;AAC7E,SACE,gBAAAC,EAACC,GAAA,EAAe,GAAGF,GAAO,eAAc,gDACtC,UAAA,gBAAAC,EAACE,GAAA,EAAM,GAAGH,EAAA,CAAO,EAAA,CACnB;AAEJ;AAEA,SAASG,EAAK;AAAA,EACZ,gBAAAC;AAAA,EACA,WAAAC;AAAA,EACA,YAAAC;AAAA,EACA,SAAAC;AAAA,EACA,WAAAC;AACF,GAAkC;AAChC,EAAAC,EAAmB,sBAAsB,EAAE,iBAAiB,GAAA,CAAM,GAClEC,EAAQ,8CAA8C,GACtDC,EAAuB,gDAAgDL,CAAU;AACjF,QAAM,EAAE,GAAAM,EAAA,IAAMC,EAAe,8CAA8C,GACrE,EAAE,SAAAC,GAAS,MAAAC,GAAM,QAAAC,GAAQ,OAAAC,EAAA,IAAUC,EAAA,GACnC,EAAE,oBAAAC,EAAA,IAAuBC,EAAA,GACzBC,IAAoBC,EAAA,GAEpB,EAAE,MAAMC,EAAA,IAAqBC,EAAsC;AAAA,IACvE,4BAA4BpB;AAAA,EAAA,CAC7B,GACKqB,IAAyBF,EAAiB,wBAE1C,EAAE,MAAMG,EAAA,IAAmBC,EAA2B,EAAE,aAAatB,GAAW,GAChFuB,KAAeF,EAAe,eAAe,CAAA,GAAI;AAAA,IACrD,CAAAG,MACEA,EAAW,YACXA,EAAW,qBAAqBC,EAA2B;AAAA,EAAA;AAG/D,MAAI,CAACL;AACH,WAAO;AAGT,QAAMM,IAAa,MAAM;AACvB,IAAAxB,EAAQyB,EAAgB,kCAAkC;AAAA,EAC5D;AAEA,2BACGC,GAAA,EAAK,WAAAzB,GAAsB,eAAc,UAAS,KAAK,IACtD,UAAA;AAAA,IAAA,gBAAAP,EAACgB,GAAA,EAAM,QAAO,WAAU,OAAOL,EAAE,cAAc,GAC7C,UAAA,gBAAAX,EAACc,GAAA,EACE,UAAAH,EAAE,kBAAkB;AAAA,MACnB,OAAOa,EAAuB,oBAAoB,UAAU;AAAA,IAAA,CAC7D,GACH,EAAA,CACF;AAAA,IAEA,gBAAAS,EAACD,GAAA,EAAK,gBAAe,iBAAgB,YAAW,cAC9C,UAAA;AAAA,MAAA,gBAAAC,EAACD,GAAA,EAAK,eAAc,UAAS,KAAK,GAChC,UAAA;AAAA,QAAA,gBAAAhC,EAACa,GAAA,EAAQ,IAAG,MAAM,UAAAF,EAAE,cAAc,GAAE;AAAA,QACpC,gBAAAX,EAACc,GAAA,EAAK,SAAQ,cACX,YAAE,mBAAmB;AAAA,UACpB,WAAWI,EAAmBM,EAAuB,aAAa,EAAE;AAAA,QAAA,CACrE,EAAA,CACH;AAAA,MAAA,GACF;AAAA,MACA,gBAAAxB,EAACe,KAAO,SAASe,GAAY,SAAQ,WAClC,UAAAnB,EAAE,SAAS,EAAA,CACd;AAAA,IAAA,GACF;AAAA,IAEA,gBAAAX;AAAA,MAACkC;AAAA,MAAA;AAAA,QACC,wBAAAV;AAAA,QACA,aAAAG;AAAA,QACA,kBAAkB;AAAA,QAClB,YAAYP;AAAA,MAAA;AAAA,IAAA;AAAA,EACd,GACF;AAEJ;"}
@@ -1,31 +1,31 @@
1
- import { jsx as n, Fragment as f } from "react/jsx-runtime";
1
+ import { jsx as r } from "react/jsx-runtime";
2
2
  import { useContractorPaymentGroupsGetSuspense as G } from "@gusto/embedded-api/react-query/contractorPaymentGroupsGet";
3
3
  import { useContractorsListSuspense as T } from "@gusto/embedded-api/react-query/contractorsList";
4
- import { useContractorPaymentsDeleteMutation as h } from "@gusto/embedded-api/react-query/contractorPaymentsDelete";
5
- import { useTranslation as A } from "react-i18next";
4
+ import { useContractorPaymentsDeleteMutation as A } from "@gusto/embedded-api/react-query/contractorPaymentsDelete";
5
+ import { useTranslation as h } from "react-i18next";
6
6
  import { PaymentHistoryPresentation as w } from "./PaymentHistoryPresentation.js";
7
7
  import { useComponentDictionary as E } from "../../../../i18n/I18n.js";
8
8
  import { BaseComponent as N } from "../../../Base/Base.js";
9
9
  import { useBase as R } from "../../../Base/useBase.js";
10
10
  import { componentEvents as m } from "../../../../shared/constants.js";
11
- function b(t) {
12
- return /* @__PURE__ */ n(N, { ...t, children: /* @__PURE__ */ n(H, { ...t, children: t.children }) });
11
+ function g(t) {
12
+ return /* @__PURE__ */ r(N, { ...t, children: /* @__PURE__ */ r(H, { ...t, children: t.children }) });
13
13
  }
14
- const H = ({ paymentId: t, dictionary: s, onEvent: e }) => {
14
+ const H = ({ paymentId: t, dictionary: s, onEvent: e, className: i }) => {
15
15
  E("Contractor.Payments.PaymentHistory", s);
16
- const { t: i } = A("Contractor.Payments.PaymentHistory"), { baseSubmitHandler: y } = R(), { data: r } = G({
16
+ const { t: y } = h("Contractor.Payments.PaymentHistory"), { baseSubmitHandler: u } = R(), { data: n } = G({
17
17
  contractorPaymentGroupUuid: t
18
18
  });
19
- if (!r.contractorPaymentGroup)
20
- throw new Error(i("errors.paymentGroupNotFound"));
21
- const a = r.contractorPaymentGroup.companyUuid, { data: u } = T({ companyUuid: a }), c = u.contractors || [], { mutateAsync: p, isPending: P } = h(), d = (o) => {
19
+ if (!n.contractorPaymentGroup)
20
+ throw new Error(y("errors.paymentGroupNotFound"));
21
+ const a = n.contractorPaymentGroup.companyUuid, { data: p } = T({ companyUuid: a }), c = p.contractors || [], { mutateAsync: P, isPending: d } = A(), C = (o) => {
22
22
  e(m.CONTRACTOR_PAYMENT_VIEW_DETAILS, {
23
23
  contractor: c.find((l) => l.uuid === o),
24
24
  paymentGroupId: t
25
25
  });
26
- }, C = async (o) => {
27
- await y(o, async () => {
28
- await p({
26
+ }, f = async (o) => {
27
+ await u(o, async () => {
28
+ await P({
29
29
  request: {
30
30
  contractorPaymentId: o,
31
31
  companyId: a
@@ -33,18 +33,19 @@ const H = ({ paymentId: t, dictionary: s, onEvent: e }) => {
33
33
  });
34
34
  }), e(m.CONTRACTOR_PAYMENT_CANCEL, { paymentId: o });
35
35
  };
36
- return /* @__PURE__ */ n(f, { children: /* @__PURE__ */ n(
36
+ return /* @__PURE__ */ r(
37
37
  w,
38
38
  {
39
- paymentGroup: r.contractorPaymentGroup,
39
+ className: i,
40
+ paymentGroup: n.contractorPaymentGroup,
40
41
  contractors: c,
41
- isCancelling: P,
42
- onViewPayment: d,
43
- onCancelPayment: C
42
+ isCancelling: d,
43
+ onViewPayment: C,
44
+ onCancelPayment: f
44
45
  }
45
- ) });
46
+ );
46
47
  };
47
48
  export {
48
- b as PaymentHistory
49
+ g as PaymentHistory
49
50
  };
50
51
  //# sourceMappingURL=PaymentHistory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PaymentHistory.js","sources":["../../../../../src/components/Contractor/Payments/PaymentHistory/PaymentHistory.tsx"],"sourcesContent":["import { useContractorPaymentGroupsGetSuspense } from '@gusto/embedded-api/react-query/contractorPaymentGroupsGet'\nimport { useContractorsListSuspense } from '@gusto/embedded-api/react-query/contractorsList'\nimport { useContractorPaymentsDeleteMutation } from '@gusto/embedded-api/react-query/contractorPaymentsDelete'\nimport { useTranslation } from 'react-i18next'\nimport { PaymentHistoryPresentation } from './PaymentHistoryPresentation'\nimport { useComponentDictionary } from '@/i18n'\nimport { BaseComponent, useBase, type BaseComponentInterface } from '@/components/Base'\nimport { componentEvents } from '@/shared/constants'\n\n/**\n * Props for {@link PaymentHistory}.\n *\n * @public\n */\nexport interface PaymentHistoryProps extends BaseComponentInterface<'Contractor.Payments.PaymentHistory'> {\n /** UUID of the contractor payment group to display. */\n paymentId: string\n}\n\n/**\n * Displays a contractor payment group, including each individual contractor payment, with actions to view details or cancel.\n *\n * @remarks\n * Features:\n *\n * - **Payment group overview** — debit date and group context in the header.\n * - **Per-contractor table** — contractor, wage type, payment method, hours, wage, bonus, reimbursement, and total for each payment.\n * - **Row actions** — view an individual contractor payment, or cancel it when the payment is cancelable.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `contractor/payments/view/details` | A row's view-details action was triggered. | `{ contractor: Contractor \\| undefined, paymentGroupId: string }` — `contractor` is `undefined` if the contractor UUID is not found in the loaded list |\n * | `contractor/payments/cancel` | An individual contractor payment was successfully canceled. | `{ paymentId: string }` — the individual contractor payment UUID, not the payment group UUID passed as `paymentId` prop |\n *\n * @param props - Component props including the payment group `paymentId` and the standard `onEvent` callback.\n * @returns The rendered payment history view for the payment group.\n * @public\n *\n * @example\n * ```tsx\n * import { ContractorManagement } from '@gusto/embedded-react-sdk'\n *\n * <ContractorManagement.PaymentHistory\n * paymentId=\"payment-group-uuid\"\n * onEvent={() => {}}\n * />\n * ```\n */\nexport function PaymentHistory(props: PaymentHistoryProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nconst Root = ({ paymentId, dictionary, onEvent }: PaymentHistoryProps) => {\n useComponentDictionary('Contractor.Payments.PaymentHistory', dictionary)\n const { t } = useTranslation('Contractor.Payments.PaymentHistory')\n const { baseSubmitHandler } = useBase()\n\n const { data: paymentGroupResponse } = useContractorPaymentGroupsGetSuspense({\n contractorPaymentGroupUuid: paymentId,\n })\n if (!paymentGroupResponse.contractorPaymentGroup) {\n throw new Error(t('errors.paymentGroupNotFound'))\n }\n\n const companyId = paymentGroupResponse.contractorPaymentGroup.companyUuid!\n\n const { data: contractorList } = useContractorsListSuspense({ companyUuid: companyId })\n const contractors = contractorList.contractors || []\n\n const { mutateAsync: cancelPayment, isPending: isCancelling } =\n useContractorPaymentsDeleteMutation()\n\n const handleViewPayment = (contractorUuid: string) => {\n onEvent(componentEvents.CONTRACTOR_PAYMENT_VIEW_DETAILS, {\n contractor: contractors.find(c => c.uuid === contractorUuid),\n paymentGroupId: paymentId,\n })\n }\n\n const handleCancelPayment = async (paymentId: string) => {\n await baseSubmitHandler(paymentId, async () => {\n await cancelPayment({\n request: {\n contractorPaymentId: paymentId,\n companyId,\n },\n })\n })\n\n onEvent(componentEvents.CONTRACTOR_PAYMENT_CANCEL, { paymentId })\n }\n\n return (\n <>\n <PaymentHistoryPresentation\n paymentGroup={paymentGroupResponse.contractorPaymentGroup}\n contractors={contractors}\n isCancelling={isCancelling}\n onViewPayment={handleViewPayment}\n onCancelPayment={handleCancelPayment}\n />\n </>\n )\n}\n"],"names":["PaymentHistory","props","jsx","BaseComponent","Root","paymentId","dictionary","onEvent","useComponentDictionary","t","useTranslation","baseSubmitHandler","useBase","paymentGroupResponse","useContractorPaymentGroupsGetSuspense","companyId","contractorList","useContractorsListSuspense","contractors","cancelPayment","isCancelling","useContractorPaymentsDeleteMutation","handleViewPayment","contractorUuid","componentEvents","c","handleCancelPayment","Fragment","PaymentHistoryPresentation"],"mappings":";;;;;;;;;;AAiDO,SAASA,EAAeC,GAA4B;AACzD,SACE,gBAAAC,EAACC,GAAA,EAAe,GAAGF,GACjB,UAAA,gBAAAC,EAACE,KAAM,GAAGH,GAAQ,UAAAA,EAAM,SAAA,CAAS,EAAA,CACnC;AAEJ;AAEA,MAAMG,IAAO,CAAC,EAAE,WAAAC,GAAW,YAAAC,GAAY,SAAAC,QAAmC;AACxE,EAAAC,EAAuB,sCAAsCF,CAAU;AACvE,QAAM,EAAE,GAAAG,EAAA,IAAMC,EAAe,oCAAoC,GAC3D,EAAE,mBAAAC,EAAA,IAAsBC,EAAA,GAExB,EAAE,MAAMC,EAAA,IAAyBC,EAAsC;AAAA,IAC3E,4BAA4BT;AAAA,EAAA,CAC7B;AACD,MAAI,CAACQ,EAAqB;AACxB,UAAM,IAAI,MAAMJ,EAAE,6BAA6B,CAAC;AAGlD,QAAMM,IAAYF,EAAqB,uBAAuB,aAExD,EAAE,MAAMG,EAAA,IAAmBC,EAA2B,EAAE,aAAaF,GAAW,GAChFG,IAAcF,EAAe,eAAe,CAAA,GAE5C,EAAE,aAAaG,GAAe,WAAWC,EAAA,IAC7CC,EAAA,GAEIC,IAAoB,CAACC,MAA2B;AACpD,IAAAhB,EAAQiB,EAAgB,iCAAiC;AAAA,MACvD,YAAYN,EAAY,KAAK,CAAAO,MAAKA,EAAE,SAASF,CAAc;AAAA,MAC3D,gBAAgBlB;AAAA,IAAA,CACjB;AAAA,EACH,GAEMqB,IAAsB,OAAOrB,MAAsB;AACvD,UAAMM,EAAkBN,GAAW,YAAY;AAC7C,YAAMc,EAAc;AAAA,QAClB,SAAS;AAAA,UACP,qBAAqBd;AAAAA,UACrB,WAAAU;AAAA,QAAA;AAAA,MACF,CACD;AAAA,IACH,CAAC,GAEDR,EAAQiB,EAAgB,2BAA2B,EAAE,WAAAnB,GAAW;AAAA,EAClE;AAEA,SACE,gBAAAH,EAAAyB,GAAA,EACE,UAAA,gBAAAzB;AAAA,IAAC0B;AAAA,IAAA;AAAA,MACC,cAAcf,EAAqB;AAAA,MACnC,aAAAK;AAAA,MACA,cAAAE;AAAA,MACA,eAAeE;AAAA,MACf,iBAAiBI;AAAA,IAAA;AAAA,EAAA,GAErB;AAEJ;"}
1
+ {"version":3,"file":"PaymentHistory.js","sources":["../../../../../src/components/Contractor/Payments/PaymentHistory/PaymentHistory.tsx"],"sourcesContent":["import { useContractorPaymentGroupsGetSuspense } from '@gusto/embedded-api/react-query/contractorPaymentGroupsGet'\nimport { useContractorsListSuspense } from '@gusto/embedded-api/react-query/contractorsList'\nimport { useContractorPaymentsDeleteMutation } from '@gusto/embedded-api/react-query/contractorPaymentsDelete'\nimport { useTranslation } from 'react-i18next'\nimport { PaymentHistoryPresentation } from './PaymentHistoryPresentation'\nimport { useComponentDictionary } from '@/i18n'\nimport { BaseComponent, useBase, type BaseComponentInterface } from '@/components/Base'\nimport { componentEvents } from '@/shared/constants'\n\n/**\n * Props for {@link PaymentHistory}.\n *\n * @public\n */\nexport interface PaymentHistoryProps extends BaseComponentInterface<'Contractor.Payments.PaymentHistory'> {\n /** UUID of the contractor payment group to display. */\n paymentId: string\n}\n\n/**\n * Displays a contractor payment group, including each individual contractor payment, with actions to view details or cancel.\n *\n * @remarks\n * Features:\n *\n * - **Payment group overview** — debit date and group context in the header.\n * - **Per-contractor table** — contractor, wage type, payment method, hours, wage, bonus, reimbursement, and total for each payment.\n * - **Row actions** — view an individual contractor payment, or cancel it when the payment is cancelable.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `contractor/payments/view/details` | A row's view-details action was triggered. | `{ contractor: Contractor \\| undefined, paymentGroupId: string }` — `contractor` is `undefined` if the contractor UUID is not found in the loaded list |\n * | `contractor/payments/cancel` | An individual contractor payment was successfully canceled. | `{ paymentId: string }` — the individual contractor payment UUID, not the payment group UUID passed as `paymentId` prop |\n *\n * @param props - Component props including the payment group `paymentId` and the standard `onEvent` callback.\n * @returns The rendered payment history view for the payment group.\n * @public\n *\n * @example\n * ```tsx\n * import { ContractorManagement } from '@gusto/embedded-react-sdk'\n *\n * <ContractorManagement.PaymentHistory\n * paymentId=\"payment-group-uuid\"\n * onEvent={() => {}}\n * />\n * ```\n */\nexport function PaymentHistory(props: PaymentHistoryProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nconst Root = ({ paymentId, dictionary, onEvent, className }: PaymentHistoryProps) => {\n useComponentDictionary('Contractor.Payments.PaymentHistory', dictionary)\n const { t } = useTranslation('Contractor.Payments.PaymentHistory')\n const { baseSubmitHandler } = useBase()\n\n const { data: paymentGroupResponse } = useContractorPaymentGroupsGetSuspense({\n contractorPaymentGroupUuid: paymentId,\n })\n if (!paymentGroupResponse.contractorPaymentGroup) {\n throw new Error(t('errors.paymentGroupNotFound'))\n }\n\n const companyId = paymentGroupResponse.contractorPaymentGroup.companyUuid!\n\n const { data: contractorList } = useContractorsListSuspense({ companyUuid: companyId })\n const contractors = contractorList.contractors || []\n\n const { mutateAsync: cancelPayment, isPending: isCancelling } =\n useContractorPaymentsDeleteMutation()\n\n const handleViewPayment = (contractorUuid: string) => {\n onEvent(componentEvents.CONTRACTOR_PAYMENT_VIEW_DETAILS, {\n contractor: contractors.find(c => c.uuid === contractorUuid),\n paymentGroupId: paymentId,\n })\n }\n\n const handleCancelPayment = async (paymentId: string) => {\n await baseSubmitHandler(paymentId, async () => {\n await cancelPayment({\n request: {\n contractorPaymentId: paymentId,\n companyId,\n },\n })\n })\n\n onEvent(componentEvents.CONTRACTOR_PAYMENT_CANCEL, { paymentId })\n }\n\n return (\n <PaymentHistoryPresentation\n className={className}\n paymentGroup={paymentGroupResponse.contractorPaymentGroup}\n contractors={contractors}\n isCancelling={isCancelling}\n onViewPayment={handleViewPayment}\n onCancelPayment={handleCancelPayment}\n />\n )\n}\n"],"names":["PaymentHistory","props","jsx","BaseComponent","Root","paymentId","dictionary","onEvent","className","useComponentDictionary","t","useTranslation","baseSubmitHandler","useBase","paymentGroupResponse","useContractorPaymentGroupsGetSuspense","companyId","contractorList","useContractorsListSuspense","contractors","cancelPayment","isCancelling","useContractorPaymentsDeleteMutation","handleViewPayment","contractorUuid","componentEvents","c","handleCancelPayment","PaymentHistoryPresentation"],"mappings":";;;;;;;;;;AAiDO,SAASA,EAAeC,GAA4B;AACzD,SACE,gBAAAC,EAACC,GAAA,EAAe,GAAGF,GACjB,UAAA,gBAAAC,EAACE,KAAM,GAAGH,GAAQ,UAAAA,EAAM,SAAA,CAAS,EAAA,CACnC;AAEJ;AAEA,MAAMG,IAAO,CAAC,EAAE,WAAAC,GAAW,YAAAC,GAAY,SAAAC,GAAS,WAAAC,QAAqC;AACnF,EAAAC,EAAuB,sCAAsCH,CAAU;AACvE,QAAM,EAAE,GAAAI,EAAA,IAAMC,EAAe,oCAAoC,GAC3D,EAAE,mBAAAC,EAAA,IAAsBC,EAAA,GAExB,EAAE,MAAMC,EAAA,IAAyBC,EAAsC;AAAA,IAC3E,4BAA4BV;AAAA,EAAA,CAC7B;AACD,MAAI,CAACS,EAAqB;AACxB,UAAM,IAAI,MAAMJ,EAAE,6BAA6B,CAAC;AAGlD,QAAMM,IAAYF,EAAqB,uBAAuB,aAExD,EAAE,MAAMG,EAAA,IAAmBC,EAA2B,EAAE,aAAaF,GAAW,GAChFG,IAAcF,EAAe,eAAe,CAAA,GAE5C,EAAE,aAAaG,GAAe,WAAWC,EAAA,IAC7CC,EAAA,GAEIC,IAAoB,CAACC,MAA2B;AACpD,IAAAjB,EAAQkB,EAAgB,iCAAiC;AAAA,MACvD,YAAYN,EAAY,KAAK,CAAAO,MAAKA,EAAE,SAASF,CAAc;AAAA,MAC3D,gBAAgBnB;AAAA,IAAA,CACjB;AAAA,EACH,GAEMsB,IAAsB,OAAOtB,MAAsB;AACvD,UAAMO,EAAkBP,GAAW,YAAY;AAC7C,YAAMe,EAAc;AAAA,QAClB,SAAS;AAAA,UACP,qBAAqBf;AAAAA,UACrB,WAAAW;AAAA,QAAA;AAAA,MACF,CACD;AAAA,IACH,CAAC,GAEDT,EAAQkB,EAAgB,2BAA2B,EAAE,WAAApB,GAAW;AAAA,EAClE;AAEA,SACE,gBAAAH;AAAA,IAAC0B;AAAA,IAAA;AAAA,MACC,WAAApB;AAAA,MACA,cAAcM,EAAqB;AAAA,MACnC,aAAAK;AAAA,MACA,cAAAE;AAAA,MACA,eAAeE;AAAA,MACf,iBAAiBI;AAAA,IAAA;AAAA,EAAA;AAGvB;"}