@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,62 +1,63 @@
1
- import { jsx as l, jsxs as De } from "react/jsx-runtime";
2
- import { usePayrollsSubmitMutation as Le } from "@gusto/embedded-api/react-query/payrollsSubmit";
3
- import { usePayrollsCancelMutation as _e } from "@gusto/embedded-api/react-query/payrollsCancel";
4
- import { usePayrollsGet as Oe } from "@gusto/embedded-api/react-query/payrollsGet";
5
- import { useEmployeesList as Ce } from "@gusto/embedded-api/react-query/employeesList";
6
- import { keepPreviousData as Ee } from "@tanstack/react-query";
7
- import { useTranslation as ke } from "react-i18next";
8
- import { useBankAccountsGetSuspense as Ae } from "@gusto/embedded-api/react-query/bankAccountsGet";
9
- import { useWireInRequestsGet as Ue } from "@gusto/embedded-api/react-query/wireInRequestsGet";
10
- import { useState as m, useMemo as Be, useEffect as L } from "react";
11
- import { useGustoEmbeddedContext as Te } from "@gusto/embedded-api/react-query/_context";
12
- import { payrollsGetPayStub as ve } from "@gusto/embedded-api/funcs/payrollsGetPayStub";
13
- import { useErrorBoundary as Ne } from "react-error-boundary";
14
- import { ConfirmWireDetails as qe } from "../ConfirmWireDetails/ConfirmWireDetails.js";
15
- import { canCancelPayroll as We } from "../helpers.js";
16
- import { PrintChecks as Ye } from "../PrintChecks/PrintChecks.js";
17
- import { PayrollOverviewPresentation as Fe } from "./PayrollOverviewPresentation.js";
1
+ import { jsx as l, jsxs as Le } from "react/jsx-runtime";
2
+ import { usePayrollsSubmitMutation as _e } from "@gusto/embedded-api/react-query/payrollsSubmit";
3
+ import { usePayrollsCancelMutation as Oe } from "@gusto/embedded-api/react-query/payrollsCancel";
4
+ import { usePayrollsGet as Ce } from "@gusto/embedded-api/react-query/payrollsGet";
5
+ import { useEmployeesList as Ee } from "@gusto/embedded-api/react-query/employeesList";
6
+ import { keepPreviousData as ke } from "@tanstack/react-query";
7
+ import { useTranslation as Ae } from "react-i18next";
8
+ import { useBankAccountsGetSuspense as Ue } from "@gusto/embedded-api/react-query/bankAccountsGet";
9
+ import { useWireInRequestsGet as Be } from "@gusto/embedded-api/react-query/wireInRequestsGet";
10
+ import { useState as m, useMemo as Te, useEffect as L } from "react";
11
+ import { useGustoEmbeddedContext as ve } from "@gusto/embedded-api/react-query/_context";
12
+ import { payrollsGetPayStub as Ne } from "@gusto/embedded-api/funcs/payrollsGetPayStub";
13
+ import { useErrorBoundary as qe } from "react-error-boundary";
14
+ import { ConfirmWireDetails as We } from "../ConfirmWireDetails/ConfirmWireDetails.js";
15
+ import { canCancelPayroll as Ye } from "../helpers.js";
16
+ import { PrintChecks as Fe } from "../PrintChecks/PrintChecks.js";
17
+ import { PayrollOverviewPresentation as Me } from "./PayrollOverviewPresentation.js";
18
18
  import { PayrollOverviewStatus as d } from "./PayrollOverviewTypes.js";
19
- import { useSubmissionPoll as Me } from "./useSubmissionPoll.js";
20
- import { useCompanyPaymentSpeed as Ie } from "../../../hooks/useCompanyPaymentSpeed.js";
21
- import { PAYROLL_PROCESSING_STATUS as Y, componentEvents as c, PAYROLL_RESOLVABLE_SUBMISSION_BLOCKER_TYPES as xe, payrollWireEvents as Ge } from "../../../shared/constants.js";
22
- import { BaseComponent as Ve } from "../../Base/Base.js";
23
- import { useBase as je } from "../../Base/useBase.js";
24
- import { useComponentDictionary as He, useI18n as Ke } from "../../../i18n/I18n.js";
25
- import { readableStreamToBlob as ze } from "../../../helpers/readableStreamToBlob.js";
26
- import { openPdfInNewTab as Je } from "../../../helpers/openPdfInNewTab.js";
27
- import Qe from "../../../hooks/useNumberFormatter.js";
28
- import { useDateFormatter as Xe } from "../../../hooks/useDateFormatter.js";
29
- import { useComponentContext as Ze } from "../../../contexts/ComponentAdapter/useComponentContext.js";
30
- import { renderErrorList as $e } from "../../../helpers/apiErrorToList.js";
31
- import { Flex as et } from "../../Common/Flex/Flex.js";
32
- import { usePagination as tt } from "../../../hooks/usePagination/usePagination.js";
33
- import { useNonce as st } from "../../../contexts/NonceProvider/useNonce.js";
34
- import { PayrollLoading as ot } from "../../Common/PayrollLoading/PayrollLoading.js";
35
- const rt = (r = []) => r.filter(
19
+ import { useSubmissionPoll as Ie } from "./useSubmissionPoll.js";
20
+ import { useCompanyPaymentSpeed as xe } from "../../../hooks/useCompanyPaymentSpeed.js";
21
+ import { PAYROLL_PROCESSING_STATUS as Y, componentEvents as c, PAYROLL_RESOLVABLE_SUBMISSION_BLOCKER_TYPES as Ge, payrollWireEvents as Ve } from "../../../shared/constants.js";
22
+ import { BaseComponent as je } from "../../Base/Base.js";
23
+ import { useBase as He } from "../../Base/useBase.js";
24
+ import { useComponentDictionary as Ke, useI18n as ze } from "../../../i18n/I18n.js";
25
+ import { readableStreamToBlob as Je } from "../../../helpers/readableStreamToBlob.js";
26
+ import { openPdfInNewTab as Qe } from "../../../helpers/openPdfInNewTab.js";
27
+ import Xe from "../../../hooks/useNumberFormatter.js";
28
+ import { useDateFormatter as Ze } from "../../../hooks/useDateFormatter.js";
29
+ import { useComponentContext as $e } from "../../../contexts/ComponentAdapter/useComponentContext.js";
30
+ import { renderErrorList as et } from "../../../helpers/apiErrorToList.js";
31
+ import { Flex as tt } from "../../Common/Flex/Flex.js";
32
+ import { usePagination as st } from "../../../hooks/usePagination/usePagination.js";
33
+ import { useNonce as ot } from "../../../contexts/NonceProvider/useNonce.js";
34
+ import { PayrollLoading as rt } from "../../Common/PayrollLoading/PayrollLoading.js";
35
+ const nt = (r = []) => r.filter(
36
36
  (n) => n.status === "unresolved" && n.unblockOptions && n.unblockOptions.length > 0
37
- ), nt = (r = []) => {
37
+ ), it = (r = []) => {
38
38
  const n = r.find((i) => i.status === "unresolved");
39
39
  return n?.unblockOptions ? n.unblockOptions.find(
40
40
  (i) => i.unblockType === "submit_wire"
41
41
  )?.metadata.wireInRequestUuid : void 0;
42
42
  };
43
- function xt(r) {
44
- return /* @__PURE__ */ l(Ve, { ...r, children: /* @__PURE__ */ l(it, { ...r, children: r.children }) });
43
+ function Gt(r) {
44
+ return /* @__PURE__ */ l(je, { ...r, children: /* @__PURE__ */ l(at, { ...r, children: r.children }) });
45
45
  }
46
- const it = ({
46
+ const at = ({
47
47
  companyId: r,
48
48
  payrollId: n,
49
49
  dictionary: _,
50
50
  onEvent: i,
51
51
  alerts: F,
52
52
  withReimbursements: M = !0,
53
- ConfirmWireDetailsComponent: I = qe,
54
- readOnly: b = !1
53
+ ConfirmWireDetailsComponent: I = We,
54
+ readOnly: b = !1,
55
+ className: x
55
56
  }) => {
56
- He("Payroll.PayrollOverview", _), Ke("Payroll.PayrollOverview");
57
- const { baseSubmitHandler: O } = je(), { t: a } = ke("Payroll.PayrollOverview"), [C, w] = m(!1), [x, h] = m(F || []), [E, G] = m({}), [P, p] = m(!1), { showBoundary: V } = Ne(), j = Qe("currency"), f = Xe(), { Button: H, UnorderedList: K, Text: k } = Ze(), [A, g] = m(d.Viewing), { currentPage: U, itemsPerPage: B, getPaginationProps: z } = tt({
57
+ Ke("Payroll.PayrollOverview", _), ze("Payroll.PayrollOverview");
58
+ const { baseSubmitHandler: O } = He(), { t: a } = Ae("Payroll.PayrollOverview"), [C, w] = m(!1), [G, h] = m(F || []), [E, V] = m({}), [P, p] = m(!1), { showBoundary: j } = qe(), H = Xe("currency"), f = Ze(), { Button: K, UnorderedList: z, Text: k } = $e(), [A, g] = m(d.Viewing), { currentPage: U, itemsPerPage: B, getPaginationProps: J } = st({
58
59
  defaultItemsPerPage: 25
59
- }), J = Te(), Q = Be(
60
+ }), Q = ve(), X = Te(
60
61
  () => ({
61
62
  companyId: r,
62
63
  payrollId: n,
@@ -68,30 +69,30 @@ const it = ({
68
69
  [r, n, U, B]
69
70
  ), {
70
71
  data: y,
71
- isFetching: X,
72
- refetch: Z
73
- } = Oe(Q, {
74
- placeholderData: Ee
75
- }), s = y?.payrollShow, $ = rt(s?.submissionBlockers), S = nt(s?.creditBlockers), { data: ee } = Ue(
72
+ isFetching: Z,
73
+ refetch: $
74
+ } = Ce(X, {
75
+ placeholderData: ke
76
+ }), s = y?.payrollShow, ee = nt(s?.submissionBlockers), S = it(s?.creditBlockers), { data: te } = Be(
76
77
  {
77
78
  wireInRequestUuid: S || ""
78
79
  },
79
80
  { enabled: !!S }
80
- ), T = ee?.wireInRequest, v = (s?.employeeCompensations ?? []).map((e) => e.employeeUuid).filter((e) => !!e), { data: te } = Ce(
81
+ ), T = te?.wireInRequest, v = (s?.employeeCompensations ?? []).map((e) => e.employeeUuid).filter((e) => !!e), { data: se } = Ee(
81
82
  { companyId: r, uuids: v },
82
83
  { enabled: v.length > 0 }
83
- ), se = (te?.showEmployees ?? []).reduce((e, t) => (e[t.uuid] = t.flsaStatus, e), {}), N = () => {
84
+ ), oe = (se?.showEmployees ?? []).reduce((e, t) => (e[t.uuid] = t.flsaStatus, e), {}), N = () => {
84
85
  i(c.RUN_PAYROLL_EDIT);
85
- }, oe = S && /* @__PURE__ */ l(
86
+ }, re = S && /* @__PURE__ */ l(
86
87
  I,
87
88
  {
88
89
  companyId: r,
89
90
  wireInId: S,
90
91
  onEvent: (e, t) => {
91
- e === Ge.PAYROLL_WIRE_FORM_DONE && p(!0), i(e, t);
92
+ e === Ve.PAYROLL_WIRE_FORM_DONE && p(!0), i(e, t);
92
93
  }
93
94
  }
94
- ), re = /* @__PURE__ */ l(Ye, { companyId: r, payrollId: n, onEvent: i });
95
+ ), ne = /* @__PURE__ */ l(Fe, { companyId: r, payrollId: n, onEvent: i });
95
96
  L(() => {
96
97
  T?.status === "pending_review" && !P && p(!0);
97
98
  }, [T?.status, P]);
@@ -111,7 +112,7 @@ const it = ({
111
112
  ]);
112
113
  }
113
114
  }, [P, R, a, f, k]);
114
- const ne = (e) => {
115
+ const ie = (e) => {
115
116
  i(c.RUN_PAYROLL_PROCESSED, {
116
117
  payPeriod: e?.payPeriod,
117
118
  payrollUuid: n
@@ -120,42 +121,42 @@ const it = ({
120
121
  type: "success",
121
122
  title: a("alerts.payrollProcessedTitle"),
122
123
  content: a("alerts.payrollProcessedMessage", {
123
- amount: j(Number(e?.totals?.companyDebit)),
124
+ amount: H(Number(e?.totals?.companyDebit)),
124
125
  date: f.formatShortWithYear(
125
126
  e?.payrollStatusMeta?.expectedDebitTime ?? e?.payrollDeadline
126
127
  )
127
128
  })
128
129
  }
129
130
  ]), p(!1), w(!1);
130
- }, ie = (e) => {
131
+ }, ae = (e) => {
131
132
  i(c.RUN_PAYROLL_PROCESSING_FAILED), h([
132
133
  {
133
134
  type: "error",
134
135
  title: a("alerts.payrollProcessingFailedTitle"),
135
- content: /* @__PURE__ */ De(et, { flexDirection: "column", gap: 16, children: [
136
- /* @__PURE__ */ l(K, { items: $e(e?.processingRequest?.errors ?? []) }),
137
- !b && /* @__PURE__ */ l(H, { variant: "secondary", onClick: N, children: a("alerts.payrollProcessingFailedCtaLabel") })
136
+ content: /* @__PURE__ */ Le(tt, { flexDirection: "column", gap: 16, children: [
137
+ /* @__PURE__ */ l(z, { items: et(e?.processingRequest?.errors ?? []) }),
138
+ !b && /* @__PURE__ */ l(K, { variant: "secondary", onClick: N, children: a("alerts.payrollProcessingFailedCtaLabel") })
138
139
  ] })
139
140
  }
140
141
  ]), p(!1), w(!1);
141
- }, { start: D, isPolling: ae } = Me({
142
- refetch: Z,
143
- onProcessed: ne,
144
- onProcessingFailed: ie
142
+ }, { start: D, isPolling: le } = Ie({
143
+ refetch: $,
144
+ onProcessed: ie,
145
+ onProcessingFailed: ae
145
146
  });
146
147
  L(() => {
147
148
  D({ baseline: null, sawSubmitting: !1 });
148
149
  }, [D]);
149
- const { data: le } = Ae({
150
+ const { data: ce } = Ue({
150
151
  companyId: r
151
- }), ce = le.companyBankAccounts?.[0], { paymentSpeed: ue } = Ie(r), { mutateAsync: me, isPending: de } = Le(), { mutateAsync: pe } = _e(), fe = st(), [Pe, q] = m(
152
+ }), ue = ce.companyBankAccounts?.[0], { paymentSpeed: me } = xe(r), { mutateAsync: de, isPending: pe } = _e(), { mutateAsync: fe } = Oe(), Pe = ot(), [ye, q] = m(
152
153
  () => /* @__PURE__ */ new Set()
153
154
  );
154
155
  if (!s)
155
- return /* @__PURE__ */ l(ot, { title: a("dataLoadingTitle") });
156
+ return /* @__PURE__ */ l(rt, { title: a("dataLoadingTitle") });
156
157
  if (A === d.Viewing && !s.calculatedAt)
157
158
  throw new Error(a("alerts.payrollNotCalculated"));
158
- const ye = z(y.httpMeta.response.headers, X), Se = s.payrollTaxes?.reduce(
159
+ const Se = J(y.httpMeta.response.headers, Z), be = s.payrollTaxes?.reduce(
159
160
  (e, t) => {
160
161
  if (!t.name) return e;
161
162
  const o = t.amount ?? 0;
@@ -165,10 +166,10 @@ const it = ({
165
166
  }, e;
166
167
  },
167
168
  {}
168
- ) || {}, be = async () => {
169
+ ) || {}, we = async () => {
169
170
  g(d.Cancelling), await O(y, async () => {
170
171
  try {
171
- const e = await pe({
172
+ const e = await fe({
172
173
  request: {
173
174
  companyId: r,
174
175
  payrollId: n
@@ -179,22 +180,22 @@ const it = ({
179
180
  throw g(d.Viewing), e;
180
181
  }
181
182
  });
182
- }, we = () => {
183
+ }, he = () => {
183
184
  i(c.RUN_PAYROLL_RECEIPT_GET, { payrollId: n });
184
- }, he = async (e) => {
185
- const t = Je({ loadingMessage: a("downloadLoadingMessage"), nonce: fe });
185
+ }, ge = async (e) => {
186
+ const t = Qe({ loadingMessage: a("downloadLoadingMessage"), nonce: Pe });
186
187
  q((o) => {
187
188
  const u = new Set(o);
188
189
  return u.add(e), u;
189
190
  });
190
191
  try {
191
- const o = await ve(J, { payrollId: n, employeeId: e });
192
+ const o = await Ne(Q, { payrollId: n, employeeId: e });
192
193
  if (!o.value?.responseStream)
193
194
  throw t.close(), new Error(a("alerts.paystubPdfError"));
194
- const u = await ze(o.value.responseStream, "application/pdf");
195
+ const u = await Je(o.value.responseStream, "application/pdf");
195
196
  t.navigate(u), i(c.RUN_PAYROLL_PDF_PAYSTUB_VIEWED, { employeeId: e });
196
197
  } catch (o) {
197
- t.close(), V(o instanceof Error ? o : new Error(String(o)));
198
+ t.close(), j(o instanceof Error ? o : new Error(String(o)));
198
199
  } finally {
199
200
  q((o) => {
200
201
  if (!o.has(e)) return o;
@@ -202,15 +203,15 @@ const it = ({
202
203
  return u.delete(e), u;
203
204
  });
204
205
  }
205
- }, ge = async () => {
206
+ }, Re = async () => {
206
207
  await O(y, async () => {
207
- const e = await me({
208
+ const e = await de({
208
209
  request: {
209
210
  companyId: r,
210
211
  payrollId: n,
211
212
  requestBody: {
212
213
  submissionBlockers: Object.entries(E).filter(
213
- ([t]) => xe.includes(t)
214
+ ([t]) => Ge.includes(t)
214
215
  ).map(([t, o]) => ({
215
216
  blockerType: t,
216
217
  selectedOption: o
@@ -227,7 +228,7 @@ const it = ({
227
228
  }), w(!0);
228
229
  });
229
230
  }, W = (() => {
230
- if (!(C || ae) && !(s.processed || s.processingRequest?.status === Y.submit_success) && s.checkDate && s.payrollDeadline)
231
+ if (!(C || le) && !(s.processed || s.processingRequest?.status === Y.submit_success) && s.checkDate && s.payrollDeadline)
231
232
  return {
232
233
  type: "info",
233
234
  title: a("alerts.directDepositDeadline", {
@@ -236,39 +237,40 @@ const it = ({
236
237
  }),
237
238
  content: a("alerts.directDepositDeadlineText")
238
239
  };
239
- })(), Re = [...x, ...W ? [W] : []];
240
+ })(), De = [...G, ...W ? [W] : []];
240
241
  return /* @__PURE__ */ l(
241
- Fe,
242
+ Me,
242
243
  {
244
+ className: x,
243
245
  onEdit: N,
244
- onSubmit: ge,
245
- onCancel: be,
246
- onPayrollReceipt: we,
247
- onPaystubDownload: he,
248
- status: de || C ? d.Submitting : A,
246
+ onSubmit: Re,
247
+ onCancel: we,
248
+ onPayrollReceipt: he,
249
+ onPaystubDownload: ge,
250
+ status: pe || C ? d.Submitting : A,
249
251
  isProcessed: s.processed === !0 || s.processingRequest?.status === Y.submit_success,
250
- canCancel: We(s) && !b,
252
+ canCancel: Ye(s) && !b,
251
253
  canEdit: !b,
252
254
  payrollData: s,
253
- employeeFlsaStatusByUuid: se,
254
- bankAccount: ce,
255
- taxes: Se,
256
- alerts: Re,
257
- submissionBlockers: $,
255
+ employeeFlsaStatusByUuid: oe,
256
+ bankAccount: ue,
257
+ taxes: be,
258
+ alerts: De,
259
+ submissionBlockers: ee,
258
260
  selectedUnblockOptions: E,
259
261
  onUnblockOptionChange: (e, t) => {
260
- G((o) => ({ ...o, [e]: t }));
262
+ V((o) => ({ ...o, [e]: t }));
261
263
  },
262
- wireInConfirmationRequest: oe,
263
- printChecksBanner: re,
264
+ wireInConfirmationRequest: re,
265
+ printChecksBanner: ne,
264
266
  withReimbursements: M,
265
- paymentSpeed: ue,
266
- pagination: ye,
267
- downloadingEmployeeIds: Pe
267
+ paymentSpeed: me,
268
+ pagination: Se,
269
+ downloadingEmployeeIds: ye
268
270
  }
269
271
  );
270
272
  };
271
273
  export {
272
- xt as PayrollOverview
274
+ Gt as PayrollOverview
273
275
  };
274
276
  //# sourceMappingURL=PayrollOverview.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PayrollOverview.js","sources":["../../../../src/components/Payroll/PayrollOverview/PayrollOverview.tsx"],"sourcesContent":["import { usePayrollsSubmitMutation } from '@gusto/embedded-api/react-query/payrollsSubmit'\nimport { usePayrollsCancelMutation } from '@gusto/embedded-api/react-query/payrollsCancel'\nimport { usePayrollsGet } from '@gusto/embedded-api/react-query/payrollsGet'\nimport { useEmployeesList } from '@gusto/embedded-api/react-query/employeesList'\nimport { keepPreviousData } from '@tanstack/react-query'\nimport { useTranslation } from 'react-i18next'\nimport { useBankAccountsGetSuspense } from '@gusto/embedded-api/react-query/bankAccountsGet'\nimport { useWireInRequestsGet } from '@gusto/embedded-api/react-query/wireInRequestsGet'\nimport { useEffect, useMemo, useState } from 'react'\nimport { useGustoEmbeddedContext } from '@gusto/embedded-api/react-query/_context'\nimport { payrollsGetPayStub } from '@gusto/embedded-api/funcs/payrollsGetPayStub'\nimport { useErrorBoundary } from 'react-error-boundary'\nimport type { GetV1CompaniesCompanyIdPayrollsPayrollIdRequest } from '@gusto/embedded-api/models/operations/getv1companiescompanyidpayrollspayrollid'\nimport type { PayrollSubmissionBlockerType } from '@gusto/embedded-api/models/components/payrollsubmissionblockertype'\nimport type {\n PayrollCreditBlockerType,\n PayrollCreditBlockerTypeUnblockOptions,\n} from '@gusto/embedded-api/models/components/payrollcreditblockertype'\nimport type { PayrollFlowAlert } from '../PayrollFlow/PayrollFlowComponents'\nimport {\n ConfirmWireDetails,\n type ConfirmWireDetailsComponentType,\n} from '../ConfirmWireDetails/ConfirmWireDetails'\nimport { canCancelPayroll } from '../helpers'\nimport { PrintChecks } from '../PrintChecks/PrintChecks'\nimport { PayrollOverviewPresentation } from './PayrollOverviewPresentation'\nimport { PayrollOverviewStatus } from './PayrollOverviewTypes'\nimport { useSubmissionPoll, type PayrollShow } from './useSubmissionPoll'\nimport { useCompanyPaymentSpeed } from '@/hooks/useCompanyPaymentSpeed'\nimport {\n componentEvents,\n payrollWireEvents,\n PAYROLL_PROCESSING_STATUS,\n PAYROLL_RESOLVABLE_SUBMISSION_BLOCKER_TYPES,\n type EventType,\n} from '@/shared/constants'\nimport { BaseComponent, useBase, type BaseComponentInterface } from '@/components/Base'\nimport { useComponentDictionary, useI18n } from '@/i18n'\nimport { readableStreamToBlob } from '@/helpers/readableStreamToBlob'\nimport { openPdfInNewTab } from '@/helpers/openPdfInNewTab'\nimport { useNonce } from '@/contexts/NonceProvider'\nimport useNumberFormatter from '@/hooks/useNumberFormatter'\nimport { useDateFormatter } from '@/hooks/useDateFormatter'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { renderErrorList } from '@/helpers/apiErrorToList'\nimport { Flex, PayrollLoading } from '@/components/Common'\nimport { usePagination } from '@/hooks/usePagination/usePagination'\n\n/**\n * Props for {@link PayrollOverview}.\n *\n * @public\n */\nexport interface PayrollOverviewProps extends BaseComponentInterface<'Payroll.PayrollOverview'> {\n /** Identifier of the company that owns the payroll. */\n companyId: string\n /** Identifier of the payroll being reviewed. The payroll must already be calculated. */\n payrollId: string\n /** Alert banners to display above the payroll summary. */\n alerts?: PayrollFlowAlert[]\n /** Whether reimbursement fields are shown in the totals and per-employee tables. Defaults to `true`. */\n withReimbursements?: boolean\n /** Custom component to replace the default wire details confirmation UI. */\n ConfirmWireDetailsComponent?: ConfirmWireDetailsComponentType\n /**\n * Hides the edit and cancel actions, leaving submit and receipt/paystub actions available.\n * Use for a deep link to a specific payroll where editing shouldn't be offered. Defaults to\n * `false`.\n */\n readOnly?: boolean\n}\n\nconst findUnresolvedBlockersWithOptions = (\n blockers: PayrollSubmissionBlockerType[] = [],\n): PayrollSubmissionBlockerType[] => {\n return blockers.filter(\n blocker =>\n blocker.status === 'unresolved' &&\n blocker.unblockOptions &&\n blocker.unblockOptions.length > 0,\n )\n}\n\nconst findWireInRequestUuid = (\n creditBlockers: PayrollCreditBlockerType[] = [],\n): string | undefined => {\n const unresolvedCreditBlocker = creditBlockers.find(blocker => blocker.status === 'unresolved')\n\n if (!unresolvedCreditBlocker?.unblockOptions) {\n return undefined\n }\n\n const wireUnblockOption = unresolvedCreditBlocker.unblockOptions.find(\n (option: PayrollCreditBlockerTypeUnblockOptions) => option.unblockType === 'submit_wire',\n )\n\n return wireUnblockOption?.metadata.wireInRequestUuid\n}\n\n/**\n * Final review screen for a calculated payroll before submission, with submit, cancel,\n * and edit controls. After submission, tracks processing status and surfaces the receipt\n * and per-employee paystub downloads once complete.\n *\n * @remarks\n * The payroll referenced by `payrollId` must already be calculated; rendering with an\n * uncalculated payroll throws. Unresolved submission blockers (e.g. fast-ACH threshold,\n * wire-in funding) are surfaced inline and the submit action stays disabled until each\n * blocker has a selected unblock option. While the payroll is processing, the component\n * polls until success or failure and emits the corresponding event. Pass `readOnly` to hide\n * the edit and cancel actions while keeping submit available.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `runPayroll/edit` | User chose to edit the payroll before submitting | — |\n * | `runPayroll/submitting` | Submit request was sent to the API | — |\n * | `runPayroll/submitted` | Payroll was successfully submitted | Submit payroll response |\n * | `runPayroll/processed` | Payroll finished processing successfully | `{ payPeriod, payrollUuid }` |\n * | `runPayroll/processingFailed` | Payroll processing failed | — |\n * | `runPayroll/cancelled` | Payroll was cancelled | Cancel payroll response |\n * | `runPayroll/receipt/get` | User requested the payroll receipt | `{ payrollId }` |\n * | `runPayroll/pdfPaystub/viewed` | User opened an employee's paystub PDF | `{ employeeId }` |\n * | `payroll/wire/form/done` | Wire-in details were confirmed via the embedded wire form | Submit wire-in response |\n * | `payroll/printChecks/start` | User opened the print-checks modal from the embedded print-checks banner | — |\n * | `payroll/printChecks/generate/start` | User submitted the print-checks form | — |\n * | `payroll/printChecks/generate/succeeded` | Printable checks finished generating | `{ documentUrl }` |\n * | `payroll/printChecks/generate/failed` | The print-checks request was rejected or generation failed | `{ errorMessage }` |\n * | `payroll/printChecks/retry` | User retried after a failed check generation | — |\n * | `payroll/printChecks/cancel` | User cancelled the print-checks form | — |\n * | `payroll/printChecks/close` | User closed the print-checks failure or summary screen | — |\n *\n * @param props - See {@link PayrollOverviewProps}.\n * @returns The payroll overview surface.\n * @public\n */\nexport function PayrollOverview(props: PayrollOverviewProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nconst Root = ({\n companyId,\n payrollId,\n dictionary,\n onEvent,\n alerts,\n withReimbursements = true,\n ConfirmWireDetailsComponent = ConfirmWireDetails,\n readOnly = false,\n}: PayrollOverviewProps) => {\n useComponentDictionary('Payroll.PayrollOverview', dictionary)\n useI18n('Payroll.PayrollOverview')\n const { baseSubmitHandler } = useBase()\n const { t } = useTranslation('Payroll.PayrollOverview')\n const [hasSubmittedInSession, setHasSubmittedInSession] = useState(false)\n const [internalAlerts, setInternalAlerts] = useState(alerts || [])\n const [selectedUnblockOptions, setSelectedUnblockOptions] = useState<Record<string, string>>({})\n const [showWireDetailsConfirmation, setShowWireDetailsConfirmation] = useState(false)\n const { showBoundary } = useErrorBoundary()\n const formatCurrency = useNumberFormatter('currency')\n const dateFormatter = useDateFormatter()\n const { Button, UnorderedList, Text } = useComponentContext()\n const [status, setStatus] = useState(PayrollOverviewStatus.Viewing)\n const { currentPage, itemsPerPage, getPaginationProps } = usePagination({\n defaultItemsPerPage: 25,\n })\n const gustoEmbedded = useGustoEmbeddedContext()\n\n const payrollRequest = useMemo<GetV1CompaniesCompanyIdPayrollsPayrollIdRequest>(\n () => ({\n companyId,\n payrollId,\n include: ['taxes', 'benefits', 'deductions', 'totals', 'payroll_taxes'],\n page: currentPage,\n per: itemsPerPage,\n sortBy: 'last_name',\n }),\n [companyId, payrollId, currentPage, itemsPerPage],\n )\n\n const {\n data,\n isFetching,\n refetch: refetchPayroll,\n } = usePayrollsGet(payrollRequest, {\n placeholderData: keepPreviousData,\n })\n const payrollData = data?.payrollShow\n const submissionBlockers = findUnresolvedBlockersWithOptions(payrollData?.submissionBlockers)\n const wireInId = findWireInRequestUuid(payrollData?.creditBlockers)\n\n const { data: wireInRequestData } = useWireInRequestsGet(\n {\n wireInRequestUuid: wireInId || '',\n },\n { enabled: !!wireInId },\n )\n const wireInRequest = wireInRequestData?.wireInRequest\n\n // Scoped to the current page's employees so this stays bounded regardless of company size,\n // since `flsaStatus` (compensation type) isn't available on employeeCompensations for\n // employees without an hourlyCompensations line item (e.g. salaried employees).\n const employeeUuids = (payrollData?.employeeCompensations ?? [])\n .map(employeeCompensation => employeeCompensation.employeeUuid)\n .filter((uuid): uuid is string => !!uuid)\n\n const { data: employeesData } = useEmployeesList(\n { companyId, uuids: employeeUuids },\n { enabled: employeeUuids.length > 0 },\n )\n const employeeFlsaStatusByUuid = (employeesData?.showEmployees ?? []).reduce<\n Record<string, string | undefined>\n >((acc, employee) => {\n acc[employee.uuid] = employee.flsaStatus\n return acc\n }, {})\n\n const onEdit = () => {\n onEvent(componentEvents.RUN_PAYROLL_EDIT)\n }\n\n const handleWireEvent = (type: EventType, data?: unknown) => {\n if (type === payrollWireEvents.PAYROLL_WIRE_FORM_DONE) {\n setShowWireDetailsConfirmation(true)\n }\n onEvent(type, data)\n }\n\n const wireInConfirmationRequest = wireInId && (\n <ConfirmWireDetailsComponent\n companyId={companyId}\n wireInId={wireInId}\n onEvent={handleWireEvent}\n />\n )\n\n const printChecksBanner = (\n <PrintChecks companyId={companyId} payrollId={payrollId} onEvent={onEvent} />\n )\n\n useEffect(() => {\n if (wireInRequest?.status === 'pending_review' && !showWireDetailsConfirmation) {\n setShowWireDetailsConfirmation(true)\n }\n }, [wireInRequest?.status, showWireDetailsConfirmation])\n\n const checkDate = payrollData?.checkDate\n useEffect(() => {\n if (checkDate && showWireDetailsConfirmation) {\n const formattedCheckDate = dateFormatter.formatShortWithYear(checkDate)\n\n setInternalAlerts([\n {\n type: 'success',\n title: t('alerts.wireDetailsSubmittedTitle'),\n content: (\n <Text>\n {t('alerts.wireDetailsSubmittedMessage', { checkDate: formattedCheckDate })}\n </Text>\n ),\n onDismiss: () => {\n setShowWireDetailsConfirmation(false)\n },\n },\n ])\n }\n }, [showWireDetailsConfirmation, checkDate, t, dateFormatter, Text])\n\n const emitProcessed = (payroll: PayrollShow | undefined) => {\n onEvent(componentEvents.RUN_PAYROLL_PROCESSED, {\n payPeriod: payroll?.payPeriod,\n payrollUuid: payrollId,\n })\n setInternalAlerts([\n {\n type: 'success',\n title: t('alerts.payrollProcessedTitle'),\n content: t('alerts.payrollProcessedMessage', {\n amount: formatCurrency(Number(payroll?.totals?.companyDebit)),\n date: dateFormatter.formatShortWithYear(\n payroll?.payrollStatusMeta?.expectedDebitTime ?? payroll?.payrollDeadline,\n ),\n }),\n },\n ])\n setShowWireDetailsConfirmation(false)\n setHasSubmittedInSession(false)\n }\n\n const emitProcessingFailed = (payroll: PayrollShow | undefined) => {\n onEvent(componentEvents.RUN_PAYROLL_PROCESSING_FAILED)\n setInternalAlerts([\n {\n type: 'error',\n title: t('alerts.payrollProcessingFailedTitle'),\n content: (\n <Flex flexDirection=\"column\" gap={16}>\n <UnorderedList items={renderErrorList(payroll?.processingRequest?.errors ?? [])} />\n {!readOnly && (\n <Button variant=\"secondary\" onClick={onEdit}>\n {t('alerts.payrollProcessingFailedCtaLabel')}\n </Button>\n )}\n </Flex>\n ),\n },\n ])\n setShowWireDetailsConfirmation(false)\n setHasSubmittedInSession(false)\n }\n\n const { start: startPayrollPoll, isPolling } = useSubmissionPoll({\n refetch: refetchPayroll,\n onProcessed: emitProcessed,\n onProcessingFailed: emitProcessingFailed,\n })\n\n // Always poll from mount, not just after Submit: the initial read is a non-suspense query, so\n // if its notification never arrives the component is stuck on `!payrollData` forever with no\n // other render source. This also doubles as picking up a submission already in flight\n // (another tab, another admin) — the poll's own evaluate rules keep the loop going for as long\n // as it reads `submitting`, regardless of why the loop started.\n useEffect(() => {\n startPayrollPoll({ baseline: null, sawSubmitting: false })\n }, [startPayrollPoll])\n\n const { data: bankAccountData } = useBankAccountsGetSuspense({\n companyId,\n })\n const bankAccount = bankAccountData.companyBankAccounts?.[0]\n\n const { paymentSpeed } = useCompanyPaymentSpeed(companyId)\n\n const { mutateAsync: submitPayroll, isPending } = usePayrollsSubmitMutation()\n\n const { mutateAsync: cancelPayroll } = usePayrollsCancelMutation()\n\n const nonce = useNonce()\n\n const [downloadingEmployeeIds, setDownloadingEmployeeIds] = useState<ReadonlySet<string>>(\n () => new Set(),\n )\n\n if (!payrollData) {\n return <PayrollLoading title={t('dataLoadingTitle')} />\n }\n\n if (status === PayrollOverviewStatus.Viewing && !payrollData.calculatedAt) {\n throw new Error(t('alerts.payrollNotCalculated'))\n }\n\n const pagination = getPaginationProps(data.httpMeta.response.headers, isFetching)\n\n // Per-tax totals come from the payroll-level `payrollTaxes` aggregate so they stay\n // correct when `employeeCompensations` is paginated (only a single page is loaded).\n const taxes =\n payrollData.payrollTaxes?.reduce(\n (acc, tax) => {\n if (!tax.name) return acc\n const amount = tax.amount ?? 0\n acc[tax.name] = {\n employee: (acc[tax.name]?.employee ?? 0) + (tax.employer ? 0 : amount),\n employer: (acc[tax.name]?.employer ?? 0) + (tax.employer ? amount : 0),\n }\n return acc\n },\n {} as Record<string, { employee: number; employer: number }>,\n ) || {}\n\n const onCancel = async () => {\n setStatus(PayrollOverviewStatus.Cancelling)\n await baseSubmitHandler(data, async () => {\n try {\n const result = await cancelPayroll({\n request: {\n companyId,\n payrollId,\n },\n })\n setStatus(PayrollOverviewStatus.Cancelled)\n onEvent(componentEvents.RUN_PAYROLL_CANCELLED, result)\n } catch (error) {\n setStatus(PayrollOverviewStatus.Viewing)\n throw error\n }\n })\n }\n const onPayrollReceipt = () => {\n onEvent(componentEvents.RUN_PAYROLL_RECEIPT_GET, { payrollId })\n }\n\n const onPaystubDownload = async (employeeId: string) => {\n const tab = openPdfInNewTab({ loadingMessage: t('downloadLoadingMessage'), nonce })\n setDownloadingEmployeeIds(prev => {\n const next = new Set(prev)\n next.add(employeeId)\n return next\n })\n try {\n const response = await payrollsGetPayStub(gustoEmbedded, { payrollId, employeeId })\n if (!response.value?.responseStream) {\n tab.close()\n throw new Error(t('alerts.paystubPdfError'))\n }\n const pdfBlob = await readableStreamToBlob(response.value.responseStream, 'application/pdf')\n tab.navigate(pdfBlob)\n onEvent(componentEvents.RUN_PAYROLL_PDF_PAYSTUB_VIEWED, { employeeId })\n } catch (err) {\n tab.close()\n showBoundary(err instanceof Error ? err : new Error(String(err)))\n } finally {\n setDownloadingEmployeeIds(prev => {\n if (!prev.has(employeeId)) return prev\n const next = new Set(prev)\n next.delete(employeeId)\n return next\n })\n }\n }\n const onSubmit = async () => {\n await baseSubmitHandler(data, async () => {\n const result = await submitPayroll({\n request: {\n companyId,\n payrollId,\n requestBody: {\n submissionBlockers: Object.entries(selectedUnblockOptions)\n .filter(([blockerType]) =>\n PAYROLL_RESOLVABLE_SUBMISSION_BLOCKER_TYPES.includes(blockerType),\n )\n .map(([blockerType, selectedOption]) => ({\n blockerType,\n selectedOption,\n })),\n },\n },\n })\n onEvent(componentEvents.RUN_PAYROLL_SUBMITTING)\n onEvent(componentEvents.RUN_PAYROLL_SUBMITTED, result)\n startPayrollPoll({\n baseline: {\n processed: payrollData.processed ?? false,\n status: payrollData.processingRequest?.status,\n },\n sawSubmitting: false,\n })\n setHasSubmittedInSession(true)\n })\n }\n\n const deadlineAlert: PayrollFlowAlert | undefined = (() => {\n if (hasSubmittedInSession || isPolling) return undefined\n if (\n payrollData.processed ||\n payrollData.processingRequest?.status === PAYROLL_PROCESSING_STATUS.submit_success\n )\n return undefined\n\n if (payrollData.checkDate && payrollData.payrollDeadline) {\n return {\n type: 'info' as const,\n title: t('alerts.directDepositDeadline', {\n payDate: dateFormatter.formatShortWithWeekday(payrollData.checkDate),\n ...dateFormatter.formatWithTime(payrollData.payrollDeadline),\n }),\n content: t('alerts.directDepositDeadlineText'),\n }\n }\n return undefined\n })()\n\n const combinedAlerts = [...internalAlerts, ...(deadlineAlert ? [deadlineAlert] : [])]\n\n return (\n <PayrollOverviewPresentation\n onEdit={onEdit}\n onSubmit={onSubmit}\n onCancel={onCancel}\n onPayrollReceipt={onPayrollReceipt}\n onPaystubDownload={onPaystubDownload}\n status={isPending || hasSubmittedInSession ? PayrollOverviewStatus.Submitting : status}\n isProcessed={\n payrollData.processed === true ||\n payrollData.processingRequest?.status === PAYROLL_PROCESSING_STATUS.submit_success\n }\n canCancel={canCancelPayroll(payrollData) && !readOnly}\n canEdit={!readOnly}\n payrollData={payrollData}\n employeeFlsaStatusByUuid={employeeFlsaStatusByUuid}\n bankAccount={bankAccount}\n taxes={taxes}\n alerts={combinedAlerts}\n submissionBlockers={submissionBlockers}\n selectedUnblockOptions={selectedUnblockOptions}\n onUnblockOptionChange={(blockerType, value) => {\n setSelectedUnblockOptions(prev => ({ ...prev, [blockerType]: value }))\n }}\n wireInConfirmationRequest={wireInConfirmationRequest}\n printChecksBanner={printChecksBanner}\n withReimbursements={withReimbursements}\n paymentSpeed={paymentSpeed}\n pagination={pagination}\n downloadingEmployeeIds={downloadingEmployeeIds}\n />\n )\n}\n"],"names":["findUnresolvedBlockersWithOptions","blockers","blocker","findWireInRequestUuid","creditBlockers","unresolvedCreditBlocker","option","PayrollOverview","props","jsx","BaseComponent","Root","companyId","payrollId","dictionary","onEvent","alerts","withReimbursements","ConfirmWireDetailsComponent","ConfirmWireDetails","readOnly","useComponentDictionary","useI18n","baseSubmitHandler","useBase","t","useTranslation","hasSubmittedInSession","setHasSubmittedInSession","useState","internalAlerts","setInternalAlerts","selectedUnblockOptions","setSelectedUnblockOptions","showWireDetailsConfirmation","setShowWireDetailsConfirmation","showBoundary","useErrorBoundary","formatCurrency","useNumberFormatter","dateFormatter","useDateFormatter","Button","UnorderedList","Text","useComponentContext","status","setStatus","PayrollOverviewStatus","currentPage","itemsPerPage","getPaginationProps","usePagination","gustoEmbedded","useGustoEmbeddedContext","payrollRequest","useMemo","data","isFetching","refetchPayroll","usePayrollsGet","keepPreviousData","payrollData","submissionBlockers","wireInId","wireInRequestData","useWireInRequestsGet","wireInRequest","employeeUuids","employeeCompensation","uuid","employeesData","useEmployeesList","employeeFlsaStatusByUuid","acc","employee","onEdit","componentEvents","wireInConfirmationRequest","type","payrollWireEvents","printChecksBanner","PrintChecks","useEffect","checkDate","formattedCheckDate","emitProcessed","payroll","emitProcessingFailed","jsxs","Flex","renderErrorList","startPayrollPoll","isPolling","useSubmissionPoll","bankAccountData","useBankAccountsGetSuspense","bankAccount","paymentSpeed","useCompanyPaymentSpeed","submitPayroll","isPending","usePayrollsSubmitMutation","cancelPayroll","usePayrollsCancelMutation","nonce","useNonce","downloadingEmployeeIds","setDownloadingEmployeeIds","PayrollLoading","pagination","taxes","tax","amount","onCancel","result","error","onPayrollReceipt","onPaystubDownload","employeeId","tab","openPdfInNewTab","prev","next","response","payrollsGetPayStub","pdfBlob","readableStreamToBlob","err","onSubmit","blockerType","PAYROLL_RESOLVABLE_SUBMISSION_BLOCKER_TYPES","selectedOption","deadlineAlert","PAYROLL_PROCESSING_STATUS","combinedAlerts","PayrollOverviewPresentation","canCancelPayroll","value"],"mappings":"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"}
1
+ {"version":3,"file":"PayrollOverview.js","sources":["../../../../src/components/Payroll/PayrollOverview/PayrollOverview.tsx"],"sourcesContent":["import { usePayrollsSubmitMutation } from '@gusto/embedded-api/react-query/payrollsSubmit'\nimport { usePayrollsCancelMutation } from '@gusto/embedded-api/react-query/payrollsCancel'\nimport { usePayrollsGet } from '@gusto/embedded-api/react-query/payrollsGet'\nimport { useEmployeesList } from '@gusto/embedded-api/react-query/employeesList'\nimport { keepPreviousData } from '@tanstack/react-query'\nimport { useTranslation } from 'react-i18next'\nimport { useBankAccountsGetSuspense } from '@gusto/embedded-api/react-query/bankAccountsGet'\nimport { useWireInRequestsGet } from '@gusto/embedded-api/react-query/wireInRequestsGet'\nimport { useEffect, useMemo, useState } from 'react'\nimport { useGustoEmbeddedContext } from '@gusto/embedded-api/react-query/_context'\nimport { payrollsGetPayStub } from '@gusto/embedded-api/funcs/payrollsGetPayStub'\nimport { useErrorBoundary } from 'react-error-boundary'\nimport type { GetV1CompaniesCompanyIdPayrollsPayrollIdRequest } from '@gusto/embedded-api/models/operations/getv1companiescompanyidpayrollspayrollid'\nimport type { PayrollSubmissionBlockerType } from '@gusto/embedded-api/models/components/payrollsubmissionblockertype'\nimport type {\n PayrollCreditBlockerType,\n PayrollCreditBlockerTypeUnblockOptions,\n} from '@gusto/embedded-api/models/components/payrollcreditblockertype'\nimport type { PayrollFlowAlert } from '../PayrollFlow/PayrollFlowComponents'\nimport {\n ConfirmWireDetails,\n type ConfirmWireDetailsComponentType,\n} from '../ConfirmWireDetails/ConfirmWireDetails'\nimport { canCancelPayroll } from '../helpers'\nimport { PrintChecks } from '../PrintChecks/PrintChecks'\nimport { PayrollOverviewPresentation } from './PayrollOverviewPresentation'\nimport { PayrollOverviewStatus } from './PayrollOverviewTypes'\nimport { useSubmissionPoll, type PayrollShow } from './useSubmissionPoll'\nimport { useCompanyPaymentSpeed } from '@/hooks/useCompanyPaymentSpeed'\nimport {\n componentEvents,\n payrollWireEvents,\n PAYROLL_PROCESSING_STATUS,\n PAYROLL_RESOLVABLE_SUBMISSION_BLOCKER_TYPES,\n type EventType,\n} from '@/shared/constants'\nimport { BaseComponent, useBase, type BaseComponentInterface } from '@/components/Base'\nimport { useComponentDictionary, useI18n } from '@/i18n'\nimport { readableStreamToBlob } from '@/helpers/readableStreamToBlob'\nimport { openPdfInNewTab } from '@/helpers/openPdfInNewTab'\nimport { useNonce } from '@/contexts/NonceProvider'\nimport useNumberFormatter from '@/hooks/useNumberFormatter'\nimport { useDateFormatter } from '@/hooks/useDateFormatter'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { renderErrorList } from '@/helpers/apiErrorToList'\nimport { Flex, PayrollLoading } from '@/components/Common'\nimport { usePagination } from '@/hooks/usePagination/usePagination'\n\n/**\n * Props for {@link PayrollOverview}.\n *\n * @public\n */\nexport interface PayrollOverviewProps extends BaseComponentInterface<'Payroll.PayrollOverview'> {\n /** Identifier of the company that owns the payroll. */\n companyId: string\n /** Identifier of the payroll being reviewed. The payroll must already be calculated. */\n payrollId: string\n /** Alert banners to display above the payroll summary. */\n alerts?: PayrollFlowAlert[]\n /** Whether reimbursement fields are shown in the totals and per-employee tables. Defaults to `true`. */\n withReimbursements?: boolean\n /** Custom component to replace the default wire details confirmation UI. */\n ConfirmWireDetailsComponent?: ConfirmWireDetailsComponentType\n /**\n * Hides the edit and cancel actions, leaving submit and receipt/paystub actions available.\n * Use for a deep link to a specific payroll where editing shouldn't be offered. Defaults to\n * `false`.\n */\n readOnly?: boolean\n}\n\nconst findUnresolvedBlockersWithOptions = (\n blockers: PayrollSubmissionBlockerType[] = [],\n): PayrollSubmissionBlockerType[] => {\n return blockers.filter(\n blocker =>\n blocker.status === 'unresolved' &&\n blocker.unblockOptions &&\n blocker.unblockOptions.length > 0,\n )\n}\n\nconst findWireInRequestUuid = (\n creditBlockers: PayrollCreditBlockerType[] = [],\n): string | undefined => {\n const unresolvedCreditBlocker = creditBlockers.find(blocker => blocker.status === 'unresolved')\n\n if (!unresolvedCreditBlocker?.unblockOptions) {\n return undefined\n }\n\n const wireUnblockOption = unresolvedCreditBlocker.unblockOptions.find(\n (option: PayrollCreditBlockerTypeUnblockOptions) => option.unblockType === 'submit_wire',\n )\n\n return wireUnblockOption?.metadata.wireInRequestUuid\n}\n\n/**\n * Final review screen for a calculated payroll before submission, with submit, cancel,\n * and edit controls. After submission, tracks processing status and surfaces the receipt\n * and per-employee paystub downloads once complete.\n *\n * @remarks\n * The payroll referenced by `payrollId` must already be calculated; rendering with an\n * uncalculated payroll throws. Unresolved submission blockers (e.g. fast-ACH threshold,\n * wire-in funding) are surfaced inline and the submit action stays disabled until each\n * blocker has a selected unblock option. While the payroll is processing, the component\n * polls until success or failure and emits the corresponding event. Pass `readOnly` to hide\n * the edit and cancel actions while keeping submit available.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `runPayroll/edit` | User chose to edit the payroll before submitting | — |\n * | `runPayroll/submitting` | Submit request was sent to the API | — |\n * | `runPayroll/submitted` | Payroll was successfully submitted | Submit payroll response |\n * | `runPayroll/processed` | Payroll finished processing successfully | `{ payPeriod, payrollUuid }` |\n * | `runPayroll/processingFailed` | Payroll processing failed | — |\n * | `runPayroll/cancelled` | Payroll was cancelled | Cancel payroll response |\n * | `runPayroll/receipt/get` | User requested the payroll receipt | `{ payrollId }` |\n * | `runPayroll/pdfPaystub/viewed` | User opened an employee's paystub PDF | `{ employeeId }` |\n * | `payroll/wire/form/done` | Wire-in details were confirmed via the embedded wire form | Submit wire-in response |\n * | `payroll/printChecks/start` | User opened the print-checks modal from the embedded print-checks banner | — |\n * | `payroll/printChecks/generate/start` | User submitted the print-checks form | — |\n * | `payroll/printChecks/generate/succeeded` | Printable checks finished generating | `{ documentUrl }` |\n * | `payroll/printChecks/generate/failed` | The print-checks request was rejected or generation failed | `{ errorMessage }` |\n * | `payroll/printChecks/retry` | User retried after a failed check generation | — |\n * | `payroll/printChecks/cancel` | User cancelled the print-checks form | — |\n * | `payroll/printChecks/close` | User closed the print-checks failure or summary screen | — |\n *\n * @param props - See {@link PayrollOverviewProps}.\n * @returns The payroll overview surface.\n * @public\n */\nexport function PayrollOverview(props: PayrollOverviewProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nconst Root = ({\n companyId,\n payrollId,\n dictionary,\n onEvent,\n alerts,\n withReimbursements = true,\n ConfirmWireDetailsComponent = ConfirmWireDetails,\n readOnly = false,\n className,\n}: PayrollOverviewProps) => {\n useComponentDictionary('Payroll.PayrollOverview', dictionary)\n useI18n('Payroll.PayrollOverview')\n const { baseSubmitHandler } = useBase()\n const { t } = useTranslation('Payroll.PayrollOverview')\n const [hasSubmittedInSession, setHasSubmittedInSession] = useState(false)\n const [internalAlerts, setInternalAlerts] = useState(alerts || [])\n const [selectedUnblockOptions, setSelectedUnblockOptions] = useState<Record<string, string>>({})\n const [showWireDetailsConfirmation, setShowWireDetailsConfirmation] = useState(false)\n const { showBoundary } = useErrorBoundary()\n const formatCurrency = useNumberFormatter('currency')\n const dateFormatter = useDateFormatter()\n const { Button, UnorderedList, Text } = useComponentContext()\n const [status, setStatus] = useState(PayrollOverviewStatus.Viewing)\n const { currentPage, itemsPerPage, getPaginationProps } = usePagination({\n defaultItemsPerPage: 25,\n })\n const gustoEmbedded = useGustoEmbeddedContext()\n\n const payrollRequest = useMemo<GetV1CompaniesCompanyIdPayrollsPayrollIdRequest>(\n () => ({\n companyId,\n payrollId,\n include: ['taxes', 'benefits', 'deductions', 'totals', 'payroll_taxes'],\n page: currentPage,\n per: itemsPerPage,\n sortBy: 'last_name',\n }),\n [companyId, payrollId, currentPage, itemsPerPage],\n )\n\n const {\n data,\n isFetching,\n refetch: refetchPayroll,\n } = usePayrollsGet(payrollRequest, {\n placeholderData: keepPreviousData,\n })\n const payrollData = data?.payrollShow\n const submissionBlockers = findUnresolvedBlockersWithOptions(payrollData?.submissionBlockers)\n const wireInId = findWireInRequestUuid(payrollData?.creditBlockers)\n\n const { data: wireInRequestData } = useWireInRequestsGet(\n {\n wireInRequestUuid: wireInId || '',\n },\n { enabled: !!wireInId },\n )\n const wireInRequest = wireInRequestData?.wireInRequest\n\n // Scoped to the current page's employees so this stays bounded regardless of company size,\n // since `flsaStatus` (compensation type) isn't available on employeeCompensations for\n // employees without an hourlyCompensations line item (e.g. salaried employees).\n const employeeUuids = (payrollData?.employeeCompensations ?? [])\n .map(employeeCompensation => employeeCompensation.employeeUuid)\n .filter((uuid): uuid is string => !!uuid)\n\n const { data: employeesData } = useEmployeesList(\n { companyId, uuids: employeeUuids },\n { enabled: employeeUuids.length > 0 },\n )\n const employeeFlsaStatusByUuid = (employeesData?.showEmployees ?? []).reduce<\n Record<string, string | undefined>\n >((acc, employee) => {\n acc[employee.uuid] = employee.flsaStatus\n return acc\n }, {})\n\n const onEdit = () => {\n onEvent(componentEvents.RUN_PAYROLL_EDIT)\n }\n\n const handleWireEvent = (type: EventType, data?: unknown) => {\n if (type === payrollWireEvents.PAYROLL_WIRE_FORM_DONE) {\n setShowWireDetailsConfirmation(true)\n }\n onEvent(type, data)\n }\n\n const wireInConfirmationRequest = wireInId && (\n <ConfirmWireDetailsComponent\n companyId={companyId}\n wireInId={wireInId}\n onEvent={handleWireEvent}\n />\n )\n\n const printChecksBanner = (\n <PrintChecks companyId={companyId} payrollId={payrollId} onEvent={onEvent} />\n )\n\n useEffect(() => {\n if (wireInRequest?.status === 'pending_review' && !showWireDetailsConfirmation) {\n setShowWireDetailsConfirmation(true)\n }\n }, [wireInRequest?.status, showWireDetailsConfirmation])\n\n const checkDate = payrollData?.checkDate\n useEffect(() => {\n if (checkDate && showWireDetailsConfirmation) {\n const formattedCheckDate = dateFormatter.formatShortWithYear(checkDate)\n\n setInternalAlerts([\n {\n type: 'success',\n title: t('alerts.wireDetailsSubmittedTitle'),\n content: (\n <Text>\n {t('alerts.wireDetailsSubmittedMessage', { checkDate: formattedCheckDate })}\n </Text>\n ),\n onDismiss: () => {\n setShowWireDetailsConfirmation(false)\n },\n },\n ])\n }\n }, [showWireDetailsConfirmation, checkDate, t, dateFormatter, Text])\n\n const emitProcessed = (payroll: PayrollShow | undefined) => {\n onEvent(componentEvents.RUN_PAYROLL_PROCESSED, {\n payPeriod: payroll?.payPeriod,\n payrollUuid: payrollId,\n })\n setInternalAlerts([\n {\n type: 'success',\n title: t('alerts.payrollProcessedTitle'),\n content: t('alerts.payrollProcessedMessage', {\n amount: formatCurrency(Number(payroll?.totals?.companyDebit)),\n date: dateFormatter.formatShortWithYear(\n payroll?.payrollStatusMeta?.expectedDebitTime ?? payroll?.payrollDeadline,\n ),\n }),\n },\n ])\n setShowWireDetailsConfirmation(false)\n setHasSubmittedInSession(false)\n }\n\n const emitProcessingFailed = (payroll: PayrollShow | undefined) => {\n onEvent(componentEvents.RUN_PAYROLL_PROCESSING_FAILED)\n setInternalAlerts([\n {\n type: 'error',\n title: t('alerts.payrollProcessingFailedTitle'),\n content: (\n <Flex flexDirection=\"column\" gap={16}>\n <UnorderedList items={renderErrorList(payroll?.processingRequest?.errors ?? [])} />\n {!readOnly && (\n <Button variant=\"secondary\" onClick={onEdit}>\n {t('alerts.payrollProcessingFailedCtaLabel')}\n </Button>\n )}\n </Flex>\n ),\n },\n ])\n setShowWireDetailsConfirmation(false)\n setHasSubmittedInSession(false)\n }\n\n const { start: startPayrollPoll, isPolling } = useSubmissionPoll({\n refetch: refetchPayroll,\n onProcessed: emitProcessed,\n onProcessingFailed: emitProcessingFailed,\n })\n\n // Always poll from mount, not just after Submit: the initial read is a non-suspense query, so\n // if its notification never arrives the component is stuck on `!payrollData` forever with no\n // other render source. This also doubles as picking up a submission already in flight\n // (another tab, another admin) — the poll's own evaluate rules keep the loop going for as long\n // as it reads `submitting`, regardless of why the loop started.\n useEffect(() => {\n startPayrollPoll({ baseline: null, sawSubmitting: false })\n }, [startPayrollPoll])\n\n const { data: bankAccountData } = useBankAccountsGetSuspense({\n companyId,\n })\n const bankAccount = bankAccountData.companyBankAccounts?.[0]\n\n const { paymentSpeed } = useCompanyPaymentSpeed(companyId)\n\n const { mutateAsync: submitPayroll, isPending } = usePayrollsSubmitMutation()\n\n const { mutateAsync: cancelPayroll } = usePayrollsCancelMutation()\n\n const nonce = useNonce()\n\n const [downloadingEmployeeIds, setDownloadingEmployeeIds] = useState<ReadonlySet<string>>(\n () => new Set(),\n )\n\n if (!payrollData) {\n return <PayrollLoading title={t('dataLoadingTitle')} />\n }\n\n if (status === PayrollOverviewStatus.Viewing && !payrollData.calculatedAt) {\n throw new Error(t('alerts.payrollNotCalculated'))\n }\n\n const pagination = getPaginationProps(data.httpMeta.response.headers, isFetching)\n\n // Per-tax totals come from the payroll-level `payrollTaxes` aggregate so they stay\n // correct when `employeeCompensations` is paginated (only a single page is loaded).\n const taxes =\n payrollData.payrollTaxes?.reduce(\n (acc, tax) => {\n if (!tax.name) return acc\n const amount = tax.amount ?? 0\n acc[tax.name] = {\n employee: (acc[tax.name]?.employee ?? 0) + (tax.employer ? 0 : amount),\n employer: (acc[tax.name]?.employer ?? 0) + (tax.employer ? amount : 0),\n }\n return acc\n },\n {} as Record<string, { employee: number; employer: number }>,\n ) || {}\n\n const onCancel = async () => {\n setStatus(PayrollOverviewStatus.Cancelling)\n await baseSubmitHandler(data, async () => {\n try {\n const result = await cancelPayroll({\n request: {\n companyId,\n payrollId,\n },\n })\n setStatus(PayrollOverviewStatus.Cancelled)\n onEvent(componentEvents.RUN_PAYROLL_CANCELLED, result)\n } catch (error) {\n setStatus(PayrollOverviewStatus.Viewing)\n throw error\n }\n })\n }\n const onPayrollReceipt = () => {\n onEvent(componentEvents.RUN_PAYROLL_RECEIPT_GET, { payrollId })\n }\n\n const onPaystubDownload = async (employeeId: string) => {\n const tab = openPdfInNewTab({ loadingMessage: t('downloadLoadingMessage'), nonce })\n setDownloadingEmployeeIds(prev => {\n const next = new Set(prev)\n next.add(employeeId)\n return next\n })\n try {\n const response = await payrollsGetPayStub(gustoEmbedded, { payrollId, employeeId })\n if (!response.value?.responseStream) {\n tab.close()\n throw new Error(t('alerts.paystubPdfError'))\n }\n const pdfBlob = await readableStreamToBlob(response.value.responseStream, 'application/pdf')\n tab.navigate(pdfBlob)\n onEvent(componentEvents.RUN_PAYROLL_PDF_PAYSTUB_VIEWED, { employeeId })\n } catch (err) {\n tab.close()\n showBoundary(err instanceof Error ? err : new Error(String(err)))\n } finally {\n setDownloadingEmployeeIds(prev => {\n if (!prev.has(employeeId)) return prev\n const next = new Set(prev)\n next.delete(employeeId)\n return next\n })\n }\n }\n const onSubmit = async () => {\n await baseSubmitHandler(data, async () => {\n const result = await submitPayroll({\n request: {\n companyId,\n payrollId,\n requestBody: {\n submissionBlockers: Object.entries(selectedUnblockOptions)\n .filter(([blockerType]) =>\n PAYROLL_RESOLVABLE_SUBMISSION_BLOCKER_TYPES.includes(blockerType),\n )\n .map(([blockerType, selectedOption]) => ({\n blockerType,\n selectedOption,\n })),\n },\n },\n })\n onEvent(componentEvents.RUN_PAYROLL_SUBMITTING)\n onEvent(componentEvents.RUN_PAYROLL_SUBMITTED, result)\n startPayrollPoll({\n baseline: {\n processed: payrollData.processed ?? false,\n status: payrollData.processingRequest?.status,\n },\n sawSubmitting: false,\n })\n setHasSubmittedInSession(true)\n })\n }\n\n const deadlineAlert: PayrollFlowAlert | undefined = (() => {\n if (hasSubmittedInSession || isPolling) return undefined\n if (\n payrollData.processed ||\n payrollData.processingRequest?.status === PAYROLL_PROCESSING_STATUS.submit_success\n )\n return undefined\n\n if (payrollData.checkDate && payrollData.payrollDeadline) {\n return {\n type: 'info' as const,\n title: t('alerts.directDepositDeadline', {\n payDate: dateFormatter.formatShortWithWeekday(payrollData.checkDate),\n ...dateFormatter.formatWithTime(payrollData.payrollDeadline),\n }),\n content: t('alerts.directDepositDeadlineText'),\n }\n }\n return undefined\n })()\n\n const combinedAlerts = [...internalAlerts, ...(deadlineAlert ? [deadlineAlert] : [])]\n\n return (\n <PayrollOverviewPresentation\n className={className}\n onEdit={onEdit}\n onSubmit={onSubmit}\n onCancel={onCancel}\n onPayrollReceipt={onPayrollReceipt}\n onPaystubDownload={onPaystubDownload}\n status={isPending || hasSubmittedInSession ? PayrollOverviewStatus.Submitting : status}\n isProcessed={\n payrollData.processed === true ||\n payrollData.processingRequest?.status === PAYROLL_PROCESSING_STATUS.submit_success\n }\n canCancel={canCancelPayroll(payrollData) && !readOnly}\n canEdit={!readOnly}\n payrollData={payrollData}\n employeeFlsaStatusByUuid={employeeFlsaStatusByUuid}\n bankAccount={bankAccount}\n taxes={taxes}\n alerts={combinedAlerts}\n submissionBlockers={submissionBlockers}\n selectedUnblockOptions={selectedUnblockOptions}\n onUnblockOptionChange={(blockerType, value) => {\n setSelectedUnblockOptions(prev => ({ ...prev, [blockerType]: value }))\n }}\n wireInConfirmationRequest={wireInConfirmationRequest}\n printChecksBanner={printChecksBanner}\n withReimbursements={withReimbursements}\n paymentSpeed={paymentSpeed}\n pagination={pagination}\n downloadingEmployeeIds={downloadingEmployeeIds}\n />\n )\n}\n"],"names":["findUnresolvedBlockersWithOptions","blockers","blocker","findWireInRequestUuid","creditBlockers","unresolvedCreditBlocker","option","PayrollOverview","props","jsx","BaseComponent","Root","companyId","payrollId","dictionary","onEvent","alerts","withReimbursements","ConfirmWireDetailsComponent","ConfirmWireDetails","readOnly","className","useComponentDictionary","useI18n","baseSubmitHandler","useBase","t","useTranslation","hasSubmittedInSession","setHasSubmittedInSession","useState","internalAlerts","setInternalAlerts","selectedUnblockOptions","setSelectedUnblockOptions","showWireDetailsConfirmation","setShowWireDetailsConfirmation","showBoundary","useErrorBoundary","formatCurrency","useNumberFormatter","dateFormatter","useDateFormatter","Button","UnorderedList","Text","useComponentContext","status","setStatus","PayrollOverviewStatus","currentPage","itemsPerPage","getPaginationProps","usePagination","gustoEmbedded","useGustoEmbeddedContext","payrollRequest","useMemo","data","isFetching","refetchPayroll","usePayrollsGet","keepPreviousData","payrollData","submissionBlockers","wireInId","wireInRequestData","useWireInRequestsGet","wireInRequest","employeeUuids","employeeCompensation","uuid","employeesData","useEmployeesList","employeeFlsaStatusByUuid","acc","employee","onEdit","componentEvents","wireInConfirmationRequest","type","payrollWireEvents","printChecksBanner","PrintChecks","useEffect","checkDate","formattedCheckDate","emitProcessed","payroll","emitProcessingFailed","jsxs","Flex","renderErrorList","startPayrollPoll","isPolling","useSubmissionPoll","bankAccountData","useBankAccountsGetSuspense","bankAccount","paymentSpeed","useCompanyPaymentSpeed","submitPayroll","isPending","usePayrollsSubmitMutation","cancelPayroll","usePayrollsCancelMutation","nonce","useNonce","downloadingEmployeeIds","setDownloadingEmployeeIds","PayrollLoading","pagination","taxes","tax","amount","onCancel","result","error","onPayrollReceipt","onPaystubDownload","employeeId","tab","openPdfInNewTab","prev","next","response","payrollsGetPayStub","pdfBlob","readableStreamToBlob","err","onSubmit","blockerType","PAYROLL_RESOLVABLE_SUBMISSION_BLOCKER_TYPES","selectedOption","deadlineAlert","PAYROLL_PROCESSING_STATUS","combinedAlerts","PayrollOverviewPresentation","canCancelPayroll","value"],"mappings":"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"}