@gusto/embedded-react-sdk 0.56.7 → 0.57.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (280) hide show
  1. package/CHANGELOG.md +60 -0
  2. package/README.md +1 -1
  3. package/dist/components/Base/Base.js +3 -2
  4. package/dist/components/Base/Base.js.map +1 -1
  5. package/dist/components/Common/DataView/DataCards/DataCards.js +44 -42
  6. package/dist/components/Common/DataView/DataCards/DataCards.js.map +1 -1
  7. package/dist/components/Common/DataView/DataCards/DataCards.module.scss.js +17 -15
  8. package/dist/components/Common/DataView/DataCards/DataCards.module.scss.js.map +1 -1
  9. package/dist/components/Common/UI/Input/Input.js +35 -32
  10. package/dist/components/Common/UI/Input/Input.js.map +1 -1
  11. package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js +8 -6
  12. package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js.map +1 -1
  13. package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js +10 -8
  14. package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js.map +1 -1
  15. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +6 -3
  16. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
  17. package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js +8 -6
  18. package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js.map +1 -1
  19. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +6 -3
  20. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
  21. package/dist/components/Company/AssignSignatory/TitleSelect.js +11 -10
  22. package/dist/components/Company/AssignSignatory/TitleSelect.js.map +1 -1
  23. package/dist/components/Company/AssignSignatory/useAssignSignatory.js +8 -5
  24. package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
  25. package/dist/components/Company/BankAccount/BankAccountForm/Actions.js +9 -8
  26. package/dist/components/Company/BankAccount/BankAccountForm/Actions.js.map +1 -1
  27. package/dist/components/Company/BankAccount/BankAccountForm/context.js +6 -3
  28. package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
  29. package/dist/components/Company/BankAccount/BankAccountList/Actions.js +12 -10
  30. package/dist/components/Company/BankAccount/BankAccountList/Actions.js.map +1 -1
  31. package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js +13 -11
  32. package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js.map +1 -1
  33. package/dist/components/Company/DocumentSigner/DocumentList/Actions.js +7 -5
  34. package/dist/components/Company/DocumentSigner/DocumentList/Actions.js.map +1 -1
  35. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +6 -3
  36. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  37. package/dist/components/Company/FederalTaxes/Actions.js +9 -7
  38. package/dist/components/Company/FederalTaxes/Actions.js.map +1 -1
  39. package/dist/components/Company/FederalTaxes/useFederalTaxes.js +11 -8
  40. package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
  41. package/dist/components/Company/Industry/Actions.js +7 -5
  42. package/dist/components/Company/Industry/Actions.js.map +1 -1
  43. package/dist/components/Company/Industry/Context.js +9 -6
  44. package/dist/components/Company/Industry/Context.js.map +1 -1
  45. package/dist/components/Company/Industry/Edit.js +12 -10
  46. package/dist/components/Company/Industry/Edit.js.map +1 -1
  47. package/dist/components/Company/Locations/LocationForm/Actions.js +10 -8
  48. package/dist/components/Company/Locations/LocationForm/Actions.js.map +1 -1
  49. package/dist/components/Company/Locations/LocationForm/useLocationForm.js +6 -3
  50. package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
  51. package/dist/components/Company/Locations/LocationsList/Actions.js +8 -6
  52. package/dist/components/Company/Locations/LocationsList/Actions.js.map +1 -1
  53. package/dist/components/Company/Locations/LocationsList/List.js +13 -11
  54. package/dist/components/Company/Locations/LocationsList/List.js.map +1 -1
  55. package/dist/components/Company/Locations/LocationsList/useLocationsList.js +6 -3
  56. package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
  57. package/dist/components/Company/OnboardingOverview/context.js +6 -3
  58. package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
  59. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentCompensationStepPresentation.js +70 -0
  60. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentCompensationStepPresentation.js.map +1 -0
  61. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentScheduleStepPresentation.js +30 -32
  62. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentScheduleStepPresentation.js.map +1 -1
  63. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentTypeStepPresentation.js +35 -27
  64. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentTypeStepPresentation.js.map +1 -1
  65. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignment.js +52 -31
  66. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignment.js.map +1 -1
  67. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignmentComponents.js +106 -66
  68. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignmentComponents.js.map +1 -1
  69. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/payScheduleAssignmentStateMachine.js +36 -30
  70. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/payScheduleAssignmentStateMachine.js.map +1 -1
  71. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/scheduleLabel.js +7 -0
  72. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/scheduleLabel.js.map +1 -0
  73. package/dist/components/Company/PaySchedule/management/PayScheduleCompensationOverviewPresentation.js +83 -0
  74. package/dist/components/Company/PaySchedule/management/PayScheduleCompensationOverviewPresentation.js.map +1 -0
  75. package/dist/components/Company/PaySchedule/management/PayScheduleOverview.js +46 -18
  76. package/dist/components/Company/PaySchedule/management/PayScheduleOverview.js.map +1 -1
  77. package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js +7 -5
  78. package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js.map +1 -1
  79. package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.js +96 -69
  80. package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.js.map +1 -1
  81. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +6 -3
  82. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
  83. package/dist/components/Company/StateTaxes/StateTaxesList/Actions.js +8 -6
  84. package/dist/components/Company/StateTaxes/StateTaxesList/Actions.js.map +1 -1
  85. package/dist/components/Company/StateTaxes/StateTaxesList/context.js +6 -3
  86. package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
  87. package/dist/components/Company/StateTaxes/TaxRateManagement/context.js +6 -3
  88. package/dist/components/Company/StateTaxes/TaxRateManagement/context.js.map +1 -1
  89. package/dist/components/Company/StateTaxes/shared/requirementSetError.js +27 -10
  90. package/dist/components/Company/StateTaxes/shared/requirementSetError.js.map +1 -1
  91. package/dist/components/Company/TaxPayments/TaxPaymentDetail/TaxPaymentDetail.js +77 -0
  92. package/dist/components/Company/TaxPayments/TaxPaymentDetail/TaxPaymentDetail.js.map +1 -0
  93. package/dist/components/Company/TaxPayments/TaxPaymentDetail/TaxPaymentDetailPresentation.js +94 -0
  94. package/dist/components/Company/TaxPayments/TaxPaymentDetail/TaxPaymentDetailPresentation.js.map +1 -0
  95. package/dist/components/Company/TaxPayments/TaxPaymentsFlow/TaxPaymentsFlow.js +26 -0
  96. package/dist/components/Company/TaxPayments/TaxPaymentsFlow/TaxPaymentsFlow.js.map +1 -0
  97. package/dist/components/Company/TaxPayments/TaxPaymentsFlow/TaxPaymentsFlowComponents.js +25 -0
  98. package/dist/components/Company/TaxPayments/TaxPaymentsFlow/TaxPaymentsFlowComponents.js.map +1 -0
  99. package/dist/components/Company/TaxPayments/TaxPaymentsFlow/taxPaymentsStateMachine.js +33 -0
  100. package/dist/components/Company/TaxPayments/TaxPaymentsFlow/taxPaymentsStateMachine.js.map +1 -0
  101. package/dist/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsList.js +55 -0
  102. package/dist/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsList.js.map +1 -0
  103. package/dist/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsListPresentation.js +153 -0
  104. package/dist/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsListPresentation.js.map +1 -0
  105. package/dist/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsListPresentation.module.scss.js +14 -0
  106. package/dist/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsListPresentation.module.scss.js.map +1 -0
  107. package/dist/components/Company/TaxPayments/shared/payrollLookupWindow.js +16 -0
  108. package/dist/components/Company/TaxPayments/shared/payrollLookupWindow.js.map +1 -0
  109. package/dist/components/Company/TaxPayments/shared/taxPaymentStatus.js +34 -0
  110. package/dist/components/Company/TaxPayments/shared/taxPaymentStatus.js.map +1 -0
  111. package/dist/components/Company/TaxPayments/shared/useAllTaxPayments.js +30 -0
  112. package/dist/components/Company/TaxPayments/shared/useAllTaxPayments.js.map +1 -0
  113. package/dist/components/Company/exports/companyManagement.js +10 -4
  114. package/dist/components/Company/exports/companyManagement.js.map +1 -1
  115. package/dist/components/Contractor/Compensation/management/CompensationCard/CompensationCard.js +17 -16
  116. package/dist/components/Contractor/Compensation/management/CompensationCard/CompensationCard.js.map +1 -1
  117. package/dist/components/Contractor/Documents/management/DocumentsCard/DocumentsCard.js +9 -8
  118. package/dist/components/Contractor/Documents/management/DocumentsCard/DocumentsCard.js.map +1 -1
  119. package/dist/components/Contractor/PaymentMethod/shared/ContractorBankAccountFormBody/ContractorBankAccountFormBody.js +8 -6
  120. package/dist/components/Contractor/PaymentMethod/shared/ContractorBankAccountFormBody/ContractorBankAccountFormBody.js.map +1 -1
  121. package/dist/components/Contractor/Profile/management/ProfileCard/ProfileCard.js +27 -26
  122. package/dist/components/Contractor/Profile/management/ProfileCard/ProfileCard.js.map +1 -1
  123. package/dist/components/Contractor/Profile/management/ProfileEditForm.js +11 -11
  124. package/dist/components/Employee/Deductions/management/DeductionsCard/DeductionsCard.js +13 -12
  125. package/dist/components/Employee/Deductions/management/DeductionsCard/DeductionsCard.js.map +1 -1
  126. package/dist/components/Employee/Documents/management/DocumentsCard/DocumentsCard.js +13 -12
  127. package/dist/components/Employee/Documents/management/DocumentsCard/DocumentsCard.js.map +1 -1
  128. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/Actions.js +8 -6
  129. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/Actions.js.map +1 -1
  130. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js +6 -3
  131. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  132. package/dist/components/Employee/EmployeeListFlow/employeeListStateMachine.js +24 -23
  133. package/dist/components/Employee/EmployeeListFlow/employeeListStateMachine.js.map +1 -1
  134. package/dist/components/Employee/FederalTaxes/management/FederalTaxesEditForm.js +4 -3
  135. package/dist/components/Employee/FederalTaxes/management/FederalTaxesEditForm.js.map +1 -1
  136. package/dist/components/Employee/FederalTaxes/onboarding/FederalTaxes.js +4 -3
  137. package/dist/components/Employee/FederalTaxes/onboarding/FederalTaxes.js.map +1 -1
  138. package/dist/components/Employee/PaymentMethod/shared/BankFormBody/BankFormBody.js +24 -22
  139. package/dist/components/Employee/PaymentMethod/shared/BankFormBody/BankFormBody.js.map +1 -1
  140. package/dist/components/Employee/Paystubs/management/PaystubsCard/PaystubsCard.js +9 -8
  141. package/dist/components/Employee/Paystubs/management/PaystubsCard/PaystubsCard.js.map +1 -1
  142. package/dist/components/Employee/Profile/management/ProfileCard/ProfileCard.js +15 -14
  143. package/dist/components/Employee/Profile/management/ProfileCard/ProfileCard.js.map +1 -1
  144. package/dist/components/Employee/Profile/management/ProfileEditForm.js +1 -1
  145. package/dist/components/Employee/Profile/onboarding/EmployeeProfile.js +1 -1
  146. package/dist/components/Employee/Profile/shared/useEmployeeDetailsForm/employeeDetailsSchema.js +13 -13
  147. package/dist/components/Employee/Profile/shared/useEmployeeDetailsForm/employeeDetailsSchema.js.map +1 -1
  148. package/dist/components/Employee/StateTaxes/management/StateTaxesEditForm.js +8 -7
  149. package/dist/components/Employee/StateTaxes/management/StateTaxesEditForm.js.map +1 -1
  150. package/dist/components/Employee/StateTaxes/onboarding/StateTaxes.js +8 -7
  151. package/dist/components/Employee/StateTaxes/onboarding/StateTaxes.js.map +1 -1
  152. package/dist/components/Employee/Terminations/TerminationFlow/terminationStateMachine.js +42 -34
  153. package/dist/components/Employee/Terminations/TerminationFlow/terminationStateMachine.js.map +1 -1
  154. package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormPresentation.js +16 -14
  155. package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormPresentation.js.map +1 -1
  156. package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.js +8 -6
  157. package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.js.map +1 -1
  158. package/dist/components/Payroll/OffCycleTaxWithholdingModal/OffCycleTaxWithholdingModal.js +11 -9
  159. package/dist/components/Payroll/OffCycleTaxWithholdingModal/OffCycleTaxWithholdingModal.js.map +1 -1
  160. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/payrollEditEmployeeHelpers.js +113 -111
  161. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/payrollEditEmployeeHelpers.js.map +1 -1
  162. package/dist/components/Payroll/PayrollFlow/PayrollFlow.js.map +1 -1
  163. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js +60 -52
  164. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js.map +1 -1
  165. package/dist/components/Payroll/PayrollHistory/PayrollHistory.js +27 -31
  166. package/dist/components/Payroll/PayrollHistory/PayrollHistory.js.map +1 -1
  167. package/dist/components/Payroll/PayrollLanding/PayrollLanding.js.map +1 -1
  168. package/dist/components/Payroll/PayrollLanding/payrollLandingStateMachine.js +23 -18
  169. package/dist/components/Payroll/PayrollLanding/payrollLandingStateMachine.js.map +1 -1
  170. package/dist/components/Payroll/PayrollList/PayrollList.js +31 -35
  171. package/dist/components/Payroll/PayrollList/PayrollList.js.map +1 -1
  172. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js +204 -179
  173. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js.map +1 -1
  174. package/dist/components/Payroll/PayrollOverview/PayrollOverview.module.scss.js +8 -0
  175. package/dist/components/Payroll/PayrollOverview/PayrollOverview.module.scss.js.map +1 -0
  176. package/dist/components/Payroll/PrintChecks/PrintChecksForm/PrintChecksForm.js +4 -4
  177. package/dist/components/Payroll/PrintChecks/PrintChecksForm/PrintChecksForm.js.map +1 -1
  178. package/dist/components/Payroll/PrintChecks/PrintChecksForm/useGenerationPoll.js +50 -41
  179. package/dist/components/Payroll/PrintChecks/PrintChecksForm/useGenerationPoll.js.map +1 -1
  180. package/dist/components/Payroll/TransitionPayroll/useResolveTransitionPayroll.js +5 -9
  181. package/dist/components/Payroll/TransitionPayroll/useResolveTransitionPayroll.js.map +1 -1
  182. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.js +164 -154
  183. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.js.map +1 -1
  184. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.module.scss.js +9 -5
  185. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.module.scss.js.map +1 -1
  186. package/dist/components/Payroll/helpers.js +91 -84
  187. package/dist/components/Payroll/helpers.js.map +1 -1
  188. package/dist/components/Payroll/usePreparedPayrollData.js +16 -13
  189. package/dist/components/Payroll/usePreparedPayrollData.js.map +1 -1
  190. package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailPresentation.js +4 -2
  191. package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailPresentation.js.map +1 -1
  192. package/dist/components/TimeOff/shared/EmployeeTable/EmployeeTable.js +8 -6
  193. package/dist/components/TimeOff/shared/EmployeeTable/EmployeeTable.js.map +1 -1
  194. package/dist/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayout.js +30 -28
  195. package/dist/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayout.js.map +1 -1
  196. package/dist/contexts/ApiProvider/ApiProvider.js +19 -18
  197. package/dist/contexts/ApiProvider/ApiProvider.js.map +1 -1
  198. package/dist/contexts/ApiProvider/createSdkQueryClient.js +4 -3
  199. package/dist/contexts/ApiProvider/createSdkQueryClient.js.map +1 -1
  200. package/dist/contexts/ApiProvider/payrollOffCycleReasonEnumHook.js +36 -0
  201. package/dist/contexts/ApiProvider/payrollOffCycleReasonEnumHook.js.map +1 -0
  202. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js +4 -2
  203. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js.map +1 -1
  204. package/dist/contexts/ObservabilityProvider/sanitization.js +98 -47
  205. package/dist/contexts/ObservabilityProvider/sanitization.js.map +1 -1
  206. package/dist/contexts/UnstableFeaturesProvider/useUnstableFeature.js.map +1 -1
  207. package/dist/helpers/validations.js +1 -1
  208. package/dist/helpers/validations.js.map +1 -1
  209. package/dist/i18n/I18n.js +2 -0
  210. package/dist/i18n/I18n.js.map +1 -1
  211. package/dist/i18n/en/Company.AssignSignatory.json.js +1 -1
  212. package/dist/i18n/en/Company.Management.PaySchedule.json.js +24 -14
  213. package/dist/i18n/en/Company.Management.PaySchedule.json.js.map +1 -1
  214. package/dist/i18n/en/Company.Management.PayScheduleAssignment.json.js +12 -10
  215. package/dist/i18n/en/Company.Management.PayScheduleAssignment.json.js.map +1 -1
  216. package/dist/i18n/en/Company.Management.TaxPaymentDetail.json.js +26 -0
  217. package/dist/i18n/en/Company.Management.TaxPaymentDetail.json.js.map +1 -0
  218. package/dist/i18n/en/Company.Management.TaxPaymentsList.json.js +48 -0
  219. package/dist/i18n/en/Company.Management.TaxPaymentsList.json.js.map +1 -0
  220. package/dist/i18n/en/Company.StateTaxes.json.js +1 -1
  221. package/dist/i18n/en/Payroll.PayrollOverview.json.js +42 -36
  222. package/dist/i18n/en/Payroll.PayrollOverview.json.js.map +1 -1
  223. package/dist/package.json.js +1 -1
  224. package/dist/partner-hook-utils/form/fields/CheckboxHookField.js +10 -8
  225. package/dist/partner-hook-utils/form/fields/CheckboxHookField.js.map +1 -1
  226. package/dist/partner-hook-utils/form/fields/NumberInputHookField.js +14 -12
  227. package/dist/partner-hook-utils/form/fields/NumberInputHookField.js.map +1 -1
  228. package/dist/partner-hook-utils/form/fields/RadioGroupHookField.js +15 -13
  229. package/dist/partner-hook-utils/form/fields/RadioGroupHookField.js.map +1 -1
  230. package/dist/partner-hook-utils/form/fields/SelectHookField.js +12 -10
  231. package/dist/partner-hook-utils/form/fields/SelectHookField.js.map +1 -1
  232. package/dist/partner-hook-utils/form/fields/SwitchHookField.js +16 -14
  233. package/dist/partner-hook-utils/form/fields/SwitchHookField.js.map +1 -1
  234. package/dist/partner-hook-utils/form/fields/TextInputHookField.js +10 -8
  235. package/dist/partner-hook-utils/form/fields/TextInputHookField.js.map +1 -1
  236. package/dist/shared/constants.js +62 -56
  237. package/dist/shared/constants.js.map +1 -1
  238. package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentCompensationStepPresentation.d.ts +15 -0
  239. package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentTypeStepPresentation.d.ts +3 -3
  240. package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignment.d.ts +7 -3
  241. package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignmentComponents.d.ts +20 -4
  242. package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/scheduleLabel.d.ts +3 -0
  243. package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/usePayScheduleAssignment.d.ts +10 -1
  244. package/dist/src/components/Company/PaySchedule/management/PayScheduleCompensationOverviewPresentation.d.ts +25 -0
  245. package/dist/src/components/Company/StateTaxes/shared/requirementSetError.d.ts +18 -5
  246. package/dist/src/components/Company/TaxPayments/TaxPaymentDetail/TaxPaymentDetail.d.ts +31 -0
  247. package/dist/src/components/Company/TaxPayments/TaxPaymentDetail/TaxPaymentDetailPresentation.d.ts +19 -0
  248. package/dist/src/components/Company/TaxPayments/TaxPaymentsFlow/TaxPaymentsFlow.d.ts +42 -0
  249. package/dist/src/components/Company/TaxPayments/TaxPaymentsFlow/TaxPaymentsFlowComponents.d.ts +20 -0
  250. package/dist/src/components/Company/TaxPayments/TaxPaymentsFlow/taxPaymentsStateMachine.d.ts +10 -0
  251. package/dist/src/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsList.d.ts +28 -0
  252. package/dist/src/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsListPresentation.d.ts +33 -0
  253. package/dist/src/components/Company/TaxPayments/index.d.ts +6 -0
  254. package/dist/src/components/Company/TaxPayments/shared/payrollLookupWindow.d.ts +29 -0
  255. package/dist/src/components/Company/TaxPayments/shared/payrollLookupWindow.test.d.ts +1 -0
  256. package/dist/src/components/Company/TaxPayments/shared/taxPaymentStatus.d.ts +62 -0
  257. package/dist/src/components/Company/TaxPayments/shared/taxPaymentStatus.test.d.ts +1 -0
  258. package/dist/src/components/Company/TaxPayments/shared/useAllTaxPayments.d.ts +30 -0
  259. package/dist/src/components/Company/exports/companyManagement.d.ts +2 -0
  260. package/dist/src/components/Employee/Profile/shared/useEmployeeDetailsForm/employeeDetailsSchema.test.d.ts +1 -0
  261. package/dist/src/components/Payroll/PayrollConfiguration/__fixtures__/payrollConfigurationMocks.d.ts +6 -1
  262. package/dist/src/components/Payroll/PayrollFlow/PayrollFlow.d.ts +1 -0
  263. package/dist/src/components/Payroll/PayrollLanding/PayrollLanding.d.ts +1 -0
  264. package/dist/src/components/Payroll/PayrollOverview/PayrollOverview.d.ts +9 -3
  265. package/dist/src/components/Payroll/helpers.d.ts +14 -18
  266. package/dist/src/contexts/ApiProvider/createSdkQueryClient.d.ts +2 -0
  267. package/dist/src/contexts/ApiProvider/createSdkQueryClient.test.d.ts +1 -0
  268. package/dist/src/contexts/ApiProvider/payrollOffCycleReasonEnumHook.d.ts +14 -0
  269. package/dist/src/contexts/ApiProvider/payrollOffCycleReasonEnumHook.test.d.ts +1 -0
  270. package/dist/src/contexts/ObservabilityProvider/sanitization.d.ts +8 -17
  271. package/dist/src/contexts/ObservabilityProvider/useSanitizedObservability.test.d.ts +1 -0
  272. package/dist/src/contexts/UnstableFeaturesProvider/useUnstableFeature.d.ts +2 -0
  273. package/dist/src/helpers/validations.test.d.ts +1 -0
  274. package/dist/src/i18n/types.d.ts +192 -4
  275. package/dist/src/models/external.d.ts +9 -6
  276. package/dist/src/shared/constants.d.ts +18 -0
  277. package/dist/src/types/observability.d.ts +59 -20
  278. package/dist/style.css +1 -1
  279. package/docs/guides/endpoint-inventory.json +48 -0
  280. package/package.json +34 -31
@@ -1,19 +1,19 @@
1
- import { jsx as o } from "react/jsx-runtime";
1
+ import { jsx as r } from "react/jsx-runtime";
2
2
  import { useState as U, useCallback as F } from "react";
3
3
  import { keepPreviousData as T } from "@tanstack/react-query";
4
4
  import { usePayrollsList as N } from "@gusto/embedded-api/react-query/payrollsList";
5
5
  import { usePayrollsCancelMutation as V } from "@gusto/embedded-api/react-query/payrollsCancel";
6
6
  import { useWireInRequestsListSuspense as q } from "@gusto/embedded-api/react-query/wireInRequestsList";
7
- import { QueryParamSortOrder as B, QueryParamPayrollTypes as i, ProcessingStatuses as Y } from "@gusto/embedded-api/models/operations/getv1companiescompanyidpayrolls";
7
+ import { QueryParamSortOrder as B, QueryParamPayrollTypes as p, ProcessingStatuses as Y } from "@gusto/embedded-api/models/operations/getv1companiescompanyidpayrolls";
8
8
  import { PayrollHistoryPresentation as b } from "./PayrollHistoryPresentation.js";
9
- import { BaseComponent as x, BaseLayout as K } from "../../Base/Base.js";
10
- import { useBase as W } from "../../Base/useBase.js";
11
- import { componentEvents as c } from "../../../shared/constants.js";
12
- import { useComponentDictionary as k, useI18n as Q } from "../../../i18n/I18n.js";
9
+ import { BaseComponent as K, BaseLayout as W } from "../../Base/Base.js";
10
+ import { useBase as k } from "../../Base/useBase.js";
11
+ import { componentEvents as i } from "../../../shared/constants.js";
12
+ import { useComponentDictionary as x, useI18n as Q } from "../../../i18n/I18n.js";
13
13
  import { usePagination as j } from "../../../hooks/usePagination/usePagination.js";
14
14
  import { useDateRangeFilter as v } from "../../../hooks/useDateRangeFilter/useDateRangeFilter.js";
15
15
  function yt(t) {
16
- return /* @__PURE__ */ o(x, { ...t, children: /* @__PURE__ */ o(Z, { ...t, children: t.children }) });
16
+ return /* @__PURE__ */ r(K, { ...t, children: /* @__PURE__ */ r(Z, { ...t, children: t.children }) });
17
17
  }
18
18
  const z = 6, G = 3, J = () => {
19
19
  const t = /* @__PURE__ */ new Date();
@@ -28,62 +28,58 @@ const z = 6, G = 3, J = () => {
28
28
  LoaderComponent: P,
29
29
  className: d
30
30
  }) => {
31
- k("Payroll.PayrollHistory", y), Q("Payroll.PayrollHistory");
32
- const [D, s] = U(null), { baseSubmitHandler: g } = W(), { currentPage: f, itemsPerPage: L, getPaginationProps: C, resetPage: u } = j(), m = v({
31
+ x("Payroll.PayrollHistory", y), Q("Payroll.PayrollHistory");
32
+ const [D, s] = U(null), { baseSubmitHandler: g } = k(), { currentPage: f, itemsPerPage: L, getPaginationProps: C, resetPage: c } = j(), u = v({
33
33
  initialStartDate: J(),
34
34
  initialEndDate: X(),
35
35
  onFilterChange: F(() => {
36
- u();
37
- }, [u])
38
- }), p = m.getApiDateParams(), { data: l, isFetching: R } = N(
36
+ c();
37
+ }, [c])
38
+ }), m = u.getApiDateParams(), { data: l, isFetching: R } = N(
39
39
  {
40
40
  companyId: n,
41
41
  processingStatuses: [Y.Processed],
42
- payrollTypes: [
43
- i.Regular,
44
- i.OffCycle,
45
- i.External
46
- ],
42
+ payrollTypes: [p.Regular, p.OffCycle],
47
43
  includeOffCycle: !0,
48
44
  include: ["totals", "payroll_status_meta"],
49
45
  sortOrder: B.Desc,
50
- startDate: p.startDate,
51
- endDate: p.endDate,
46
+ startDate: m.startDate,
47
+ endDate: m.endDate,
52
48
  page: f,
53
49
  per: L
54
50
  },
55
51
  { placeholderData: T, throwOnError: !0 }
56
52
  ), h = l?.payrollList || [], { data: O } = q({
57
53
  companyUuid: n
58
- }), E = O.wireInRequestList ?? [], { mutateAsync: _, isPending: S } = V(), w = (e, r, a) => {
59
- t(c.RUN_PAYROLL_SUMMARY_VIEWED, { payrollId: e, startDate: r, endDate: a });
60
- }, A = (e, r, a) => {
61
- t(c.RUN_PAYROLL_RECEIPT_VIEWED, { payrollId: e, startDate: r, endDate: a });
54
+ }), _ = O.wireInRequestList ?? [], { mutateAsync: E, isPending: S } = V(), w = (e, o, a) => {
55
+ t(i.RUN_PAYROLL_SUMMARY_VIEWED, { payrollId: e, startDate: o, endDate: a });
56
+ }, A = (e, o, a) => {
57
+ t(i.RUN_PAYROLL_RECEIPT_VIEWED, { payrollId: e, startDate: o, endDate: a });
62
58
  }, I = async (e) => {
63
- const r = e.payrollUuid || e.uuid;
59
+ const o = e.payrollUuid || e.uuid;
64
60
  try {
65
- await g(r, async (a) => {
66
- const H = await _({
61
+ await g(o, async (a) => {
62
+ const H = await E({
67
63
  request: {
68
64
  companyId: n,
69
65
  payrollId: a
70
66
  }
71
67
  });
72
- t(c.RUN_PAYROLL_CANCELLED, { payrollId: a, result: H });
68
+ t(i.RUN_PAYROLL_CANCELLED, { payrollId: a, result: H });
73
69
  });
74
70
  } finally {
75
71
  s(null);
76
72
  }
77
73
  };
78
74
  if (!l)
79
- return /* @__PURE__ */ o(K, { isLoading: !0, LoaderComponent: P });
75
+ return /* @__PURE__ */ r(W, { isLoading: !0, LoaderComponent: P });
80
76
  const M = C(l.httpMeta.response.headers, R);
81
- return /* @__PURE__ */ o(
77
+ return /* @__PURE__ */ r(
82
78
  b,
83
79
  {
84
80
  className: d,
85
81
  payrollHistory: h,
86
- wireInRequests: E,
82
+ wireInRequests: _,
87
83
  pagination: M,
88
84
  onViewSummary: w,
89
85
  onViewReceipt: A,
@@ -94,7 +90,7 @@ const z = 6, G = 3, J = () => {
94
90
  s(null);
95
91
  },
96
92
  isLoading: S,
97
- dateRangeFilter: m
93
+ dateRangeFilter: u
98
94
  }
99
95
  );
100
96
  };
@@ -1 +1 @@
1
- {"version":3,"file":"PayrollHistory.js","sources":["../../../../src/components/Payroll/PayrollHistory/PayrollHistory.tsx"],"sourcesContent":["import { useState, useCallback } from 'react'\nimport { keepPreviousData } from '@tanstack/react-query'\nimport { usePayrollsList } from '@gusto/embedded-api/react-query/payrollsList'\nimport { usePayrollsCancelMutation } from '@gusto/embedded-api/react-query/payrollsCancel'\nimport { useWireInRequestsListSuspense } from '@gusto/embedded-api/react-query/wireInRequestsList'\nimport {\n ProcessingStatuses,\n QueryParamPayrollTypes,\n QueryParamSortOrder as SortOrder,\n} from '@gusto/embedded-api/models/operations/getv1companiescompanyidpayrolls'\nimport type { Payroll } from '@gusto/embedded-api/models/components/payrollshow'\nimport { PayrollHistoryPresentation } from './PayrollHistoryPresentation'\nimport type { BaseComponentInterface } from '@/components/Base/Base'\nimport { BaseComponent, BaseLayout } from '@/components/Base/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { componentEvents } from '@/shared/constants'\nimport { useComponentDictionary, useI18n } from '@/i18n'\nimport { usePagination } from '@/hooks/usePagination/usePagination'\nimport { useDateRangeFilter } from '@/hooks/useDateRangeFilter/useDateRangeFilter'\n\n/**\n * Props for the {@link PayrollHistory} component.\n *\n * @public\n */\nexport interface PayrollHistoryProps extends BaseComponentInterface<'Payroll.PayrollHistory'> {\n /** Identifier of the company whose processed payrolls should be listed. */\n companyId: string\n}\n\n/**\n * Displays historical payroll records with filtering and management capabilities.\n *\n * @remarks\n * Lists processed regular, off-cycle, and external payrolls for a company and supports filtering by\n * pay period, viewing payroll summaries and receipts, and cancelling processed payrolls when they\n * remain within the cancellation window. Each row shows the pay period, payroll type, pay date,\n * status, and total pay amount.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `runPayroll/summary/viewed` | User views a payroll summary | `{ payrollId: string; startDate?: string; endDate?: string }` |\n * | `runPayroll/receipt/viewed` | User views a payroll receipt | `{ payrollId: string; startDate?: string; endDate?: string }` |\n * | `runPayroll/cancelled` | A payroll is cancelled | `{ payrollId: string; result: PayrollsCancelResponse }` |\n *\n * @param props - See {@link PayrollHistoryProps}.\n * @returns The rendered payroll history view.\n * @public\n */\nexport function PayrollHistory(props: PayrollHistoryProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nconst DEFAULT_LOOKBACK_MONTHS = 6\nconst DEFAULT_LOOKAHEAD_MONTHS = 3\n\nconst getDefaultStartDate = (): Date => {\n const date = new Date()\n date.setMonth(date.getMonth() - DEFAULT_LOOKBACK_MONTHS)\n return date\n}\n\nconst getDefaultEndDate = (): Date => {\n const date = new Date()\n date.setMonth(date.getMonth() + DEFAULT_LOOKAHEAD_MONTHS)\n return date\n}\n\nconst Root = ({\n onEvent,\n companyId,\n dictionary,\n LoaderComponent,\n className,\n}: PayrollHistoryProps) => {\n useComponentDictionary('Payroll.PayrollHistory', dictionary)\n useI18n('Payroll.PayrollHistory')\n\n const [cancelDialogItem, setCancelDialogItem] = useState<Payroll | null>(null)\n const { baseSubmitHandler } = useBase()\n const { currentPage, itemsPerPage, getPaginationProps, resetPage } = usePagination()\n\n const dateRangeFilter = useDateRangeFilter({\n initialStartDate: getDefaultStartDate(),\n initialEndDate: getDefaultEndDate(),\n onFilterChange: useCallback(() => {\n resetPage()\n }, [resetPage]),\n })\n const dateFilterParams = dateRangeFilter.getApiDateParams()\n\n const { data: payrollsData, isFetching } = usePayrollsList(\n {\n companyId,\n processingStatuses: [ProcessingStatuses.Processed],\n payrollTypes: [\n QueryParamPayrollTypes.Regular,\n QueryParamPayrollTypes.OffCycle,\n QueryParamPayrollTypes.External,\n ],\n includeOffCycle: true,\n include: ['totals', 'payroll_status_meta'],\n sortOrder: SortOrder.Desc,\n startDate: dateFilterParams.startDate,\n endDate: dateFilterParams.endDate,\n page: currentPage,\n per: itemsPerPage,\n },\n { placeholderData: keepPreviousData, throwOnError: true },\n )\n\n const payrollHistory = payrollsData?.payrollList || []\n\n const { data: wireInRequestsData } = useWireInRequestsListSuspense({\n companyUuid: companyId,\n })\n\n const wireInRequests = wireInRequestsData.wireInRequestList ?? []\n\n const { mutateAsync: cancelPayroll, isPending: isCancelling } = usePayrollsCancelMutation()\n\n const handleViewSummary = (payrollId: string, startDate?: string, endDate?: string) => {\n onEvent(componentEvents.RUN_PAYROLL_SUMMARY_VIEWED, { payrollId, startDate, endDate })\n }\n\n const handleViewReceipt = (payrollId: string, startDate?: string, endDate?: string) => {\n onEvent(componentEvents.RUN_PAYROLL_RECEIPT_VIEWED, { payrollId, startDate, endDate })\n }\n\n const handleCancelPayroll = async (item: Payroll) => {\n const payrollId = item.payrollUuid || item.uuid!\n try {\n await baseSubmitHandler(payrollId, async id => {\n const result = await cancelPayroll({\n request: {\n companyId,\n payrollId: id,\n },\n })\n\n onEvent(componentEvents.RUN_PAYROLL_CANCELLED, { payrollId: id, result })\n })\n } finally {\n setCancelDialogItem(null)\n }\n }\n\n if (!payrollsData) {\n return <BaseLayout isLoading LoaderComponent={LoaderComponent} />\n }\n\n const paginationProps = getPaginationProps(payrollsData.httpMeta.response.headers, isFetching)\n\n return (\n <PayrollHistoryPresentation\n className={className}\n payrollHistory={payrollHistory}\n wireInRequests={wireInRequests}\n pagination={paginationProps}\n onViewSummary={handleViewSummary}\n onViewReceipt={handleViewReceipt}\n onCancelPayroll={handleCancelPayroll}\n cancelDialogItem={cancelDialogItem}\n onCancelDialogOpen={setCancelDialogItem}\n onCancelDialogClose={() => {\n setCancelDialogItem(null)\n }}\n isLoading={isCancelling}\n dateRangeFilter={dateRangeFilter}\n />\n )\n}\n"],"names":["PayrollHistory","props","jsx","BaseComponent","Root","DEFAULT_LOOKBACK_MONTHS","DEFAULT_LOOKAHEAD_MONTHS","getDefaultStartDate","date","getDefaultEndDate","onEvent","companyId","dictionary","LoaderComponent","className","useComponentDictionary","useI18n","cancelDialogItem","setCancelDialogItem","useState","baseSubmitHandler","useBase","currentPage","itemsPerPage","getPaginationProps","resetPage","usePagination","dateRangeFilter","useDateRangeFilter","useCallback","dateFilterParams","payrollsData","isFetching","usePayrollsList","ProcessingStatuses","QueryParamPayrollTypes","SortOrder","keepPreviousData","payrollHistory","wireInRequestsData","useWireInRequestsListSuspense","wireInRequests","cancelPayroll","isCancelling","usePayrollsCancelMutation","handleViewSummary","payrollId","startDate","endDate","componentEvents","handleViewReceipt","handleCancelPayroll","item","id","result","BaseLayout","paginationProps","PayrollHistoryPresentation"],"mappings":"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"}
1
+ {"version":3,"file":"PayrollHistory.js","sources":["../../../../src/components/Payroll/PayrollHistory/PayrollHistory.tsx"],"sourcesContent":["import { useState, useCallback } from 'react'\nimport { keepPreviousData } from '@tanstack/react-query'\nimport { usePayrollsList } from '@gusto/embedded-api/react-query/payrollsList'\nimport { usePayrollsCancelMutation } from '@gusto/embedded-api/react-query/payrollsCancel'\nimport { useWireInRequestsListSuspense } from '@gusto/embedded-api/react-query/wireInRequestsList'\nimport {\n ProcessingStatuses,\n QueryParamPayrollTypes,\n QueryParamSortOrder as SortOrder,\n} from '@gusto/embedded-api/models/operations/getv1companiescompanyidpayrolls'\nimport type { Payroll } from '@gusto/embedded-api/models/components/payrollshow'\nimport { PayrollHistoryPresentation } from './PayrollHistoryPresentation'\nimport type { BaseComponentInterface } from '@/components/Base/Base'\nimport { BaseComponent, BaseLayout } from '@/components/Base/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { componentEvents } from '@/shared/constants'\nimport { useComponentDictionary, useI18n } from '@/i18n'\nimport { usePagination } from '@/hooks/usePagination/usePagination'\nimport { useDateRangeFilter } from '@/hooks/useDateRangeFilter/useDateRangeFilter'\n\n/**\n * Props for the {@link PayrollHistory} component.\n *\n * @public\n */\nexport interface PayrollHistoryProps extends BaseComponentInterface<'Payroll.PayrollHistory'> {\n /** Identifier of the company whose processed payrolls should be listed. */\n companyId: string\n}\n\n/**\n * Displays historical payroll records with filtering and management capabilities.\n *\n * @remarks\n * Lists processed regular, off-cycle, and external payrolls for a company and supports filtering by\n * pay period, viewing payroll summaries and receipts, and cancelling processed payrolls when they\n * remain within the cancellation window. Each row shows the pay period, payroll type, pay date,\n * status, and total pay amount.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `runPayroll/summary/viewed` | User views a payroll summary | `{ payrollId: string; startDate?: string; endDate?: string }` |\n * | `runPayroll/receipt/viewed` | User views a payroll receipt | `{ payrollId: string; startDate?: string; endDate?: string }` |\n * | `runPayroll/cancelled` | A payroll is cancelled | `{ payrollId: string; result: PayrollsCancelResponse }` |\n *\n * @param props - See {@link PayrollHistoryProps}.\n * @returns The rendered payroll history view.\n * @public\n */\nexport function PayrollHistory(props: PayrollHistoryProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nconst DEFAULT_LOOKBACK_MONTHS = 6\nconst DEFAULT_LOOKAHEAD_MONTHS = 3\n\nconst getDefaultStartDate = (): Date => {\n const date = new Date()\n date.setMonth(date.getMonth() - DEFAULT_LOOKBACK_MONTHS)\n return date\n}\n\nconst getDefaultEndDate = (): Date => {\n const date = new Date()\n date.setMonth(date.getMonth() + DEFAULT_LOOKAHEAD_MONTHS)\n return date\n}\n\nconst Root = ({\n onEvent,\n companyId,\n dictionary,\n LoaderComponent,\n className,\n}: PayrollHistoryProps) => {\n useComponentDictionary('Payroll.PayrollHistory', dictionary)\n useI18n('Payroll.PayrollHistory')\n\n const [cancelDialogItem, setCancelDialogItem] = useState<Payroll | null>(null)\n const { baseSubmitHandler } = useBase()\n const { currentPage, itemsPerPage, getPaginationProps, resetPage } = usePagination()\n\n const dateRangeFilter = useDateRangeFilter({\n initialStartDate: getDefaultStartDate(),\n initialEndDate: getDefaultEndDate(),\n onFilterChange: useCallback(() => {\n resetPage()\n }, [resetPage]),\n })\n const dateFilterParams = dateRangeFilter.getApiDateParams()\n\n const { data: payrollsData, isFetching } = usePayrollsList(\n {\n companyId,\n processingStatuses: [ProcessingStatuses.Processed],\n payrollTypes: [QueryParamPayrollTypes.Regular, QueryParamPayrollTypes.OffCycle],\n includeOffCycle: true,\n include: ['totals', 'payroll_status_meta'],\n sortOrder: SortOrder.Desc,\n startDate: dateFilterParams.startDate,\n endDate: dateFilterParams.endDate,\n page: currentPage,\n per: itemsPerPage,\n },\n { placeholderData: keepPreviousData, throwOnError: true },\n )\n\n const payrollHistory = payrollsData?.payrollList || []\n\n const { data: wireInRequestsData } = useWireInRequestsListSuspense({\n companyUuid: companyId,\n })\n\n const wireInRequests = wireInRequestsData.wireInRequestList ?? []\n\n const { mutateAsync: cancelPayroll, isPending: isCancelling } = usePayrollsCancelMutation()\n\n const handleViewSummary = (payrollId: string, startDate?: string, endDate?: string) => {\n onEvent(componentEvents.RUN_PAYROLL_SUMMARY_VIEWED, { payrollId, startDate, endDate })\n }\n\n const handleViewReceipt = (payrollId: string, startDate?: string, endDate?: string) => {\n onEvent(componentEvents.RUN_PAYROLL_RECEIPT_VIEWED, { payrollId, startDate, endDate })\n }\n\n const handleCancelPayroll = async (item: Payroll) => {\n const payrollId = item.payrollUuid || item.uuid!\n try {\n await baseSubmitHandler(payrollId, async id => {\n const result = await cancelPayroll({\n request: {\n companyId,\n payrollId: id,\n },\n })\n\n onEvent(componentEvents.RUN_PAYROLL_CANCELLED, { payrollId: id, result })\n })\n } finally {\n setCancelDialogItem(null)\n }\n }\n\n if (!payrollsData) {\n return <BaseLayout isLoading LoaderComponent={LoaderComponent} />\n }\n\n const paginationProps = getPaginationProps(payrollsData.httpMeta.response.headers, isFetching)\n\n return (\n <PayrollHistoryPresentation\n className={className}\n payrollHistory={payrollHistory}\n wireInRequests={wireInRequests}\n pagination={paginationProps}\n onViewSummary={handleViewSummary}\n onViewReceipt={handleViewReceipt}\n onCancelPayroll={handleCancelPayroll}\n cancelDialogItem={cancelDialogItem}\n onCancelDialogOpen={setCancelDialogItem}\n onCancelDialogClose={() => {\n setCancelDialogItem(null)\n }}\n isLoading={isCancelling}\n dateRangeFilter={dateRangeFilter}\n />\n )\n}\n"],"names":["PayrollHistory","props","jsx","BaseComponent","Root","DEFAULT_LOOKBACK_MONTHS","DEFAULT_LOOKAHEAD_MONTHS","getDefaultStartDate","date","getDefaultEndDate","onEvent","companyId","dictionary","LoaderComponent","className","useComponentDictionary","useI18n","cancelDialogItem","setCancelDialogItem","useState","baseSubmitHandler","useBase","currentPage","itemsPerPage","getPaginationProps","resetPage","usePagination","dateRangeFilter","useDateRangeFilter","useCallback","dateFilterParams","payrollsData","isFetching","usePayrollsList","ProcessingStatuses","QueryParamPayrollTypes","SortOrder","keepPreviousData","payrollHistory","wireInRequestsData","useWireInRequestsListSuspense","wireInRequests","cancelPayroll","isCancelling","usePayrollsCancelMutation","handleViewSummary","payrollId","startDate","endDate","componentEvents","handleViewReceipt","handleCancelPayroll","item","id","result","BaseLayout","paginationProps","PayrollHistoryPresentation"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"PayrollLanding.js","sources":["../../../../src/components/Payroll/PayrollLanding/PayrollLanding.tsx"],"sourcesContent":["import { useMemo } from 'react'\nimport { createMachine } from 'robot3'\nimport type { ConfirmWireDetailsComponentType } from '../ConfirmWireDetails/ConfirmWireDetails'\nimport { payrollLandingMachine, payrollLandingBreadcrumbNodes } from './payrollLandingStateMachine'\nimport {\n PayrollLandingTabsContextual,\n type PayrollLandingFlowContextInterface,\n type PayrollLandingFlowProps,\n} from './PayrollLandingFlowComponents'\nimport { Flow } from '@/components/Flow/Flow'\nimport type { BaseComponentInterface } from '@/components/Base/Base'\nimport { BaseComponent } from '@/components/Base/Base'\nimport { useComponentDictionary } from '@/i18n'\nimport { buildBreadcrumbs } from '@/helpers/breadcrumbHelpers'\n\n/**\n * Props for {@link PayrollLanding}.\n *\n * @public\n */\nexport interface PayrollLandingProps extends BaseComponentInterface<'Payroll.PayrollLanding'> {\n /** The associated company identifier. */\n companyId: string\n /** Whether to show reimbursement fields throughout the landing flow. Defaults to `true`. */\n withReimbursements?: boolean\n /** Whether to show the off-cycle payroll call-to-action. Defaults to `true`. */\n withOffcyclePayroll?: boolean\n /** Custom component that replaces the default wire details confirmation UI. */\n ConfirmWireDetailsComponent?: ConfirmWireDetailsComponentType\n /** When `true`, displays a dismissible success alert indicating a payroll was cancelled. */\n showPayrollCancelledAlert?: boolean\n}\n\n/**\n * Main landing surface for payroll operations, with tabs for running payroll and\n * viewing payroll history, plus inline navigation to a payroll's overview and receipt.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `runPayroll/selected` | User selected a payroll to run | `{ payrollUuid: string, payPeriod: object }` |\n * | `payroll/review` | User selected a calculated payroll to review | `{ payrollUuid: string, payPeriod: object }` |\n * | `payroll/skipped` | A payroll was skipped | `{ payrollId: string }` |\n * | `payroll/deleted` | A cancellable off-cycle payroll was deleted | `{ payrollId: string }` |\n * | `runPayroll/offCycle/start` | User clicked the Run off-cycle call-to-action | — |\n * | `transition/runPayroll` | User chose to run an unprocessed transition payroll from the Transition Payroll Alert | `{ startDate: string, endDate: string, payScheduleUuid?: string }` |\n * | `transition/payrollSkipped` | User skipped an unprocessed transition payroll from the Transition Payroll Alert | `{ startDate: string, endDate: string, payScheduleUuid?: string }` |\n * | `runPayroll/summary/viewed` | User opened a payroll's summary view | `{ payrollId: string }` |\n * | `runPayroll/receipt/viewed` | User opened a payroll's receipt view | `{ payrollId: string }` |\n * | `runPayroll/blockers/viewAll` | User opened the full list of payroll blockers | — |\n * | `runPayroll/cancelled` | A payroll was cancelled | `{ payrollId: string, result: object }` |\n * | `runPayroll/cancelled/alertDismissed` | User dismissed the payroll-cancelled success alert | — |\n *\n * When unprocessed transition pay periods exist, the landing surface renders a Transition\n * Payroll Alert. It looks ahead 90 days for upcoming transition periods, groups them by pay\n * schedule, and offers to run or skip each one. Choosing to run emits `transition/runPayroll`\n * (handle it by rendering `Payroll.TransitionFlow` with the supplied dates and pay schedule).\n * Skipping opens a confirmation dialog — warning that employees will not be paid for the\n * period — then skips the payroll and emits `transition/payrollSkipped`. Transition pay\n * periods should be resolved (run or skipped) before regular payrolls are run; the Gusto API\n * may reject regular payrolls while unresolved transition periods exist.\n *\n * @param props - See {@link PayrollLandingProps}.\n * @returns The payroll landing flow.\n * @public\n */\nexport function PayrollLanding(props: PayrollLandingProps) {\n return (\n <BaseComponent {...props}>\n <PayrollLandingFlow {...props} />\n </BaseComponent>\n )\n}\n\nfunction PayrollLandingFlow({\n companyId,\n onEvent,\n dictionary,\n withReimbursements = true,\n withOffcyclePayroll = true,\n ConfirmWireDetailsComponent,\n showPayrollCancelledAlert,\n}: PayrollLandingFlowProps) {\n useComponentDictionary('Payroll.PayrollLanding', dictionary)\n\n const machine = useMemo(\n () =>\n createMachine(\n 'tabs',\n payrollLandingMachine,\n (initialContext: PayrollLandingFlowContextInterface) => ({\n ...initialContext,\n component: PayrollLandingTabsContextual,\n companyId,\n selectedTab: 'run-payroll',\n withReimbursements,\n withOffcyclePayroll,\n ConfirmWireDetailsComponent,\n header: {\n type: 'breadcrumbs' as const,\n breadcrumbs: buildBreadcrumbs(payrollLandingBreadcrumbNodes),\n },\n showPayrollCancelledAlert,\n }),\n ),\n [\n companyId,\n withReimbursements,\n withOffcyclePayroll,\n ConfirmWireDetailsComponent,\n showPayrollCancelledAlert,\n ],\n )\n\n return <Flow onEvent={onEvent} machine={machine} />\n}\n"],"names":["PayrollLanding","props","jsx","BaseComponent","PayrollLandingFlow","companyId","onEvent","dictionary","withReimbursements","withOffcyclePayroll","ConfirmWireDetailsComponent","showPayrollCancelledAlert","useComponentDictionary","machine","useMemo","createMachine","payrollLandingMachine","initialContext","PayrollLandingTabsContextual","buildBreadcrumbs","payrollLandingBreadcrumbNodes","Flow"],"mappings":";;;;;;;;;AAkEO,SAASA,EAAeC,GAA4B;AACzD,SACE,gBAAAC,EAACC,KAAe,GAAGF,GACjB,4BAACG,GAAA,EAAoB,GAAGH,GAAO,EAAA,CACjC;AAEJ;AAEA,SAASG,EAAmB;AAAA,EAC1B,WAAAC;AAAA,EACA,SAAAC;AAAA,EACA,YAAAC;AAAA,EACA,oBAAAC,IAAqB;AAAA,EACrB,qBAAAC,IAAsB;AAAA,EACtB,6BAAAC;AAAA,EACA,2BAAAC;AACF,GAA4B;AAC1B,EAAAC,EAAuB,0BAA0BL,CAAU;AAE3D,QAAMM,IAAUC;AAAA,IACd,MACEC;AAAA,MACE;AAAA,MACAC;AAAA,MACA,CAACC,OAAwD;AAAA,QACvD,GAAGA;AAAA,QACH,WAAWC;AAAA,QACX,WAAAb;AAAA,QACA,aAAa;AAAA,QACb,oBAAAG;AAAA,QACA,qBAAAC;AAAA,QACA,6BAAAC;AAAA,QACA,QAAQ;AAAA,UACN,MAAM;AAAA,UACN,aAAaS,EAAiBC,CAA6B;AAAA,QAAA;AAAA,QAE7D,2BAAAT;AAAA,MAAA;AAAA,IACF;AAAA,IAEJ;AAAA,MACEN;AAAA,MACAG;AAAA,MACAC;AAAA,MACAC;AAAA,MACAC;AAAA,IAAA;AAAA,EACF;AAGF,SAAO,gBAAAT,EAACmB,GAAA,EAAK,SAAAf,GAAkB,SAAAO,EAAA,CAAkB;AACnD;"}
1
+ {"version":3,"file":"PayrollLanding.js","sources":["../../../../src/components/Payroll/PayrollLanding/PayrollLanding.tsx"],"sourcesContent":["import { useMemo } from 'react'\nimport { createMachine } from 'robot3'\nimport type { ConfirmWireDetailsComponentType } from '../ConfirmWireDetails/ConfirmWireDetails'\nimport { payrollLandingMachine, payrollLandingBreadcrumbNodes } from './payrollLandingStateMachine'\nimport {\n PayrollLandingTabsContextual,\n type PayrollLandingFlowContextInterface,\n type PayrollLandingFlowProps,\n} from './PayrollLandingFlowComponents'\nimport { Flow } from '@/components/Flow/Flow'\nimport type { BaseComponentInterface } from '@/components/Base/Base'\nimport { BaseComponent } from '@/components/Base/Base'\nimport { useComponentDictionary } from '@/i18n'\nimport { buildBreadcrumbs } from '@/helpers/breadcrumbHelpers'\n\n/**\n * Props for {@link PayrollLanding}.\n *\n * @public\n */\nexport interface PayrollLandingProps extends BaseComponentInterface<'Payroll.PayrollLanding'> {\n /** The associated company identifier. */\n companyId: string\n /** Whether to show reimbursement fields throughout the landing flow. Defaults to `true`. */\n withReimbursements?: boolean\n /** Whether to show the off-cycle payroll call-to-action. Defaults to `true`. */\n withOffcyclePayroll?: boolean\n /** Custom component that replaces the default wire details confirmation UI. */\n ConfirmWireDetailsComponent?: ConfirmWireDetailsComponentType\n /** When `true`, displays a dismissible success alert indicating a payroll was cancelled. */\n showPayrollCancelledAlert?: boolean\n}\n\n/**\n * Main landing surface for payroll operations, with tabs for running payroll and\n * viewing payroll history, plus inline navigation to a payroll's overview and receipt.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `runPayroll/selected` | User selected a payroll to run | `{ payrollUuid: string, payPeriod: object }` |\n * | `payroll/review` | User selected a calculated payroll to review | `{ payrollUuid: string, payPeriod: object }` |\n * | `payroll/skipped` | A payroll was skipped | `{ payrollId: string }` |\n * | `payroll/deleted` | A cancellable off-cycle payroll was deleted | `{ payrollId: string }` |\n * | `runPayroll/offCycle/start` | User clicked the Run off-cycle call-to-action | — |\n * | `transition/runPayroll` | User chose to run an unprocessed transition payroll from the Transition Payroll Alert | `{ startDate: string, endDate: string, payScheduleUuid?: string }` |\n * | `transition/payrollSkipped` | User skipped an unprocessed transition payroll from the Transition Payroll Alert | `{ startDate: string, endDate: string, payScheduleUuid?: string }` |\n * | `runPayroll/summary/viewed` | User opened a payroll's summary view | `{ payrollId: string }` |\n * | `runPayroll/receipt/viewed` | User opened a payroll's receipt view | `{ payrollId: string }` |\n * | `runPayroll/blockers/viewAll` | User opened the full list of payroll blockers | — |\n * | `runPayroll/cancelled` | A payroll was cancelled | `{ payrollId: string, result: object }` |\n * | `runPayroll/notCalculated/backToList` | User returns to the payroll list from a payroll that is no longer calculated | — |\n * | `runPayroll/cancelled/alertDismissed` | User dismissed the payroll-cancelled success alert | — |\n *\n * When unprocessed transition pay periods exist, the landing surface renders a Transition\n * Payroll Alert. It looks ahead 90 days for upcoming transition periods, groups them by pay\n * schedule, and offers to run or skip each one. Choosing to run emits `transition/runPayroll`\n * (handle it by rendering `Payroll.TransitionFlow` with the supplied dates and pay schedule).\n * Skipping opens a confirmation dialog — warning that employees will not be paid for the\n * period — then skips the payroll and emits `transition/payrollSkipped`. Transition pay\n * periods should be resolved (run or skipped) before regular payrolls are run; the Gusto API\n * may reject regular payrolls while unresolved transition periods exist.\n *\n * @param props - See {@link PayrollLandingProps}.\n * @returns The payroll landing flow.\n * @public\n */\nexport function PayrollLanding(props: PayrollLandingProps) {\n return (\n <BaseComponent {...props}>\n <PayrollLandingFlow {...props} />\n </BaseComponent>\n )\n}\n\nfunction PayrollLandingFlow({\n companyId,\n onEvent,\n dictionary,\n withReimbursements = true,\n withOffcyclePayroll = true,\n ConfirmWireDetailsComponent,\n showPayrollCancelledAlert,\n}: PayrollLandingFlowProps) {\n useComponentDictionary('Payroll.PayrollLanding', dictionary)\n\n const machine = useMemo(\n () =>\n createMachine(\n 'tabs',\n payrollLandingMachine,\n (initialContext: PayrollLandingFlowContextInterface) => ({\n ...initialContext,\n component: PayrollLandingTabsContextual,\n companyId,\n selectedTab: 'run-payroll',\n withReimbursements,\n withOffcyclePayroll,\n ConfirmWireDetailsComponent,\n header: {\n type: 'breadcrumbs' as const,\n breadcrumbs: buildBreadcrumbs(payrollLandingBreadcrumbNodes),\n },\n showPayrollCancelledAlert,\n }),\n ),\n [\n companyId,\n withReimbursements,\n withOffcyclePayroll,\n ConfirmWireDetailsComponent,\n showPayrollCancelledAlert,\n ],\n )\n\n return <Flow onEvent={onEvent} machine={machine} />\n}\n"],"names":["PayrollLanding","props","jsx","BaseComponent","PayrollLandingFlow","companyId","onEvent","dictionary","withReimbursements","withOffcyclePayroll","ConfirmWireDetailsComponent","showPayrollCancelledAlert","useComponentDictionary","machine","useMemo","createMachine","payrollLandingMachine","initialContext","PayrollLandingTabsContextual","buildBreadcrumbs","payrollLandingBreadcrumbNodes","Flow"],"mappings":";;;;;;;;;AAmEO,SAASA,EAAeC,GAA4B;AACzD,SACE,gBAAAC,EAACC,KAAe,GAAGF,GACjB,4BAACG,GAAA,EAAoB,GAAGH,GAAO,EAAA,CACjC;AAEJ;AAEA,SAASG,EAAmB;AAAA,EAC1B,WAAAC;AAAA,EACA,SAAAC;AAAA,EACA,YAAAC;AAAA,EACA,oBAAAC,IAAqB;AAAA,EACrB,qBAAAC,IAAsB;AAAA,EACtB,6BAAAC;AAAA,EACA,2BAAAC;AACF,GAA4B;AAC1B,EAAAC,EAAuB,0BAA0BL,CAAU;AAE3D,QAAMM,IAAUC;AAAA,IACd,MACEC;AAAA,MACE;AAAA,MACAC;AAAA,MACA,CAACC,OAAwD;AAAA,QACvD,GAAGA;AAAA,QACH,WAAWC;AAAA,QACX,WAAAb;AAAA,QACA,aAAa;AAAA,QACb,oBAAAG;AAAA,QACA,qBAAAC;AAAA,QACA,6BAAAC;AAAA,QACA,QAAQ;AAAA,UACN,MAAM;AAAA,UACN,aAAaS,EAAiBC,CAA6B;AAAA,QAAA;AAAA,QAE7D,2BAAAT;AAAA,MAAA;AAAA,IACF;AAAA,IAEJ;AAAA,MACEN;AAAA,MACAG;AAAA,MACAC;AAAA,MACAC;AAAA,MACAC;AAAA,IAAA;AAAA,EACF;AAGF,SAAO,gBAAAT,EAACmB,GAAA,EAAK,SAAAf,GAAkB,SAAAO,EAAA,CAAkB;AACnD;"}
@@ -1,9 +1,9 @@
1
- import { state as d, transition as t, reduce as r, guard as i } from "robot3";
2
- import { PayrollLandingTabsContextual as y, PayrollLandingOverviewContextual as s, PayrollLandingReceiptsContextual as p } from "./PayrollLandingFlowComponents.js";
1
+ import { state as n, transition as t, reduce as r, guard as i } from "robot3";
2
+ import { PayrollLandingTabsContextual as c, PayrollLandingOverviewContextual as s, PayrollLandingReceiptsContextual as p } from "./PayrollLandingFlowComponents.js";
3
3
  import { componentEvents as o } from "../../../shared/constants.js";
4
4
  import { updateBreadcrumbs as l } from "../../../helpers/breadcrumbHelpers.js";
5
- import { createBreadcrumbNavigateTransition as b } from "../../Common/FlowBreadcrumbs/breadcrumbTransitionHelpers.js";
6
- const R = {
5
+ import { createBreadcrumbNavigateTransition as y } from "../../Common/FlowBreadcrumbs/breadcrumbTransitionHelpers.js";
6
+ const A = {
7
7
  tabs: {
8
8
  parent: null,
9
9
  item: {
@@ -12,7 +12,7 @@ const R = {
12
12
  namespace: "Payroll.PayrollLanding",
13
13
  onNavigate: ((e) => ({
14
14
  ...e,
15
- component: y,
15
+ component: c,
16
16
  header: e.header?.type === "breadcrumbs" ? { ...e.header, currentBreadcrumbId: void 0 } : null,
17
17
  payrollUuid: void 0,
18
18
  previousState: void 0,
@@ -40,17 +40,17 @@ const R = {
40
40
  }, u = (e) => (a) => ({
41
41
  ...a,
42
42
  ...e
43
- }), n = (e = {}) => (a) => ({
43
+ }), d = (e = {}) => (a) => ({
44
44
  ...a,
45
- component: y,
45
+ component: c,
46
46
  payrollUuid: void 0,
47
47
  previousState: void 0,
48
48
  startDate: void 0,
49
49
  endDate: void 0,
50
50
  header: a.header?.type === "breadcrumbs" ? { ...a.header, currentBreadcrumbId: void 0 } : null,
51
51
  ...e
52
- }), c = b(), _ = {
53
- tabs: d(
52
+ }), b = y(), P = {
53
+ tabs: n(
54
54
  t(
55
55
  o.RUN_PAYROLL_RECEIPT_VIEWED,
56
56
  "receipt",
@@ -108,9 +108,14 @@ const R = {
108
108
  )
109
109
  )
110
110
  ),
111
- overview: d(
112
- c("tabs"),
113
- t(o.RUN_PAYROLL_BACK, "tabs", r(n())),
111
+ overview: n(
112
+ b("tabs"),
113
+ t(o.RUN_PAYROLL_BACK, "tabs", r(d())),
114
+ t(
115
+ o.RUN_PAYROLL_NOT_CALCULATED_BACK_TO_LIST,
116
+ "tabs",
117
+ r(d())
118
+ ),
114
119
  t(
115
120
  o.RUN_PAYROLL_RECEIPT_GET,
116
121
  "receipt",
@@ -129,11 +134,11 @@ const R = {
129
134
  t(
130
135
  o.RUN_PAYROLL_CANCELLED,
131
136
  "tabs",
132
- r(n({ showPayrollCancelledAlert: !0 }))
137
+ r(d({ showPayrollCancelledAlert: !0 }))
133
138
  )
134
139
  ),
135
- receipt: d(
136
- c("tabs"),
140
+ receipt: n(
141
+ b("tabs"),
137
142
  t(
138
143
  o.RUN_PAYROLL_BACK,
139
144
  "overview",
@@ -150,13 +155,13 @@ const R = {
150
155
  t(
151
156
  o.RUN_PAYROLL_BACK,
152
157
  "tabs",
153
- r(n()),
158
+ r(d()),
154
159
  i((e) => e.previousState === "tabs")
155
160
  )
156
161
  )
157
162
  };
158
163
  export {
159
- R as payrollLandingBreadcrumbNodes,
160
- _ as payrollLandingMachine
164
+ A as payrollLandingBreadcrumbNodes,
165
+ P as payrollLandingMachine
161
166
  };
162
167
  //# sourceMappingURL=payrollLandingStateMachine.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"payrollLandingStateMachine.js","sources":["../../../../src/components/Payroll/PayrollLanding/payrollLandingStateMachine.ts"],"sourcesContent":["import { transition, reduce, state, guard } from 'robot3'\nimport {\n PayrollLandingTabsContextual,\n PayrollLandingReceiptsContextual,\n PayrollLandingOverviewContextual,\n type PayrollLandingFlowContextInterface,\n} from './PayrollLandingFlowComponents'\nimport { componentEvents } from '@/shared/constants'\nimport type { MachineEventType, MachineTransition } from '@/types/Helpers'\nimport type { BreadcrumbNodes } from '@/components/Common/FlowBreadcrumbs/FlowBreadcrumbsTypes'\nimport { updateBreadcrumbs } from '@/helpers/breadcrumbHelpers'\nimport { createBreadcrumbNavigateTransition } from '@/components/Common/FlowBreadcrumbs/breadcrumbTransitionHelpers'\n\ntype EventPayloads = {\n [componentEvents.RUN_PAYROLL_RECEIPT_VIEWED]: {\n payrollId: string\n startDate?: string\n endDate?: string\n }\n [componentEvents.RUN_PAYROLL_SUMMARY_VIEWED]: {\n payrollId: string\n startDate?: string\n endDate?: string\n }\n [componentEvents.RUN_PAYROLL_RECEIPT_GET]: {\n payrollId: string\n }\n [componentEvents.RUN_PAYROLL_CANCELLED]: undefined\n [componentEvents.RUN_PAYROLL_CANCELLED_ALERT_DISMISSED]: undefined\n}\n\n/** @internal */\nexport const payrollLandingBreadcrumbNodes: BreadcrumbNodes = {\n tabs: {\n parent: null,\n item: {\n id: 'tabs',\n label: 'breadcrumbs.landing',\n namespace: 'Payroll.PayrollLanding',\n onNavigate: ((ctx: PayrollLandingFlowContextInterface) => ({\n ...ctx,\n component: PayrollLandingTabsContextual,\n header:\n ctx.header?.type === 'breadcrumbs'\n ? { ...ctx.header, currentBreadcrumbId: undefined }\n : null,\n payrollUuid: undefined,\n previousState: undefined,\n startDate: undefined,\n endDate: undefined,\n })) as (context: unknown) => unknown,\n },\n },\n overview: {\n parent: 'tabs',\n item: {\n id: 'overview',\n label: 'breadcrumbs.overview',\n namespace: 'Payroll.PayrollLanding',\n },\n },\n receipt: {\n parent: 'tabs',\n item: {\n id: 'receipt',\n label: 'breadcrumbs.receipt',\n namespace: 'Payroll.PayrollLanding',\n },\n },\n} as const\n\nconst createReducer = (props: Partial<PayrollLandingFlowContextInterface>) => {\n return (ctx: PayrollLandingFlowContextInterface): PayrollLandingFlowContextInterface => ({\n ...ctx,\n ...props,\n })\n}\n\n/**\n * Reducer that returns the flow to the landing tabs view while preserving\n * the existing breadcrumbs trail data so that re-entering a sub-state can\n * pick it up without rebuilding.\n */\nconst returnToTabs = (\n extra: Partial<PayrollLandingFlowContextInterface> = {},\n): ((ctx: PayrollLandingFlowContextInterface) => PayrollLandingFlowContextInterface) => {\n return (ctx: PayrollLandingFlowContextInterface) => ({\n ...ctx,\n component: PayrollLandingTabsContextual,\n payrollUuid: undefined,\n previousState: undefined,\n startDate: undefined,\n endDate: undefined,\n header:\n ctx.header?.type === 'breadcrumbs' ? { ...ctx.header, currentBreadcrumbId: undefined } : null,\n ...extra,\n })\n}\n\nconst breadcrumbNavigateTransition =\n createBreadcrumbNavigateTransition<PayrollLandingFlowContextInterface>()\n\n/** @internal */\nexport const payrollLandingMachine = {\n tabs: state<MachineTransition>(\n transition(\n componentEvents.RUN_PAYROLL_RECEIPT_VIEWED,\n 'receipt',\n reduce(\n (\n ctx: PayrollLandingFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.RUN_PAYROLL_RECEIPT_VIEWED>,\n ): PayrollLandingFlowContextInterface => ({\n ...updateBreadcrumbs('receipt', ctx, {\n startDate: ev.payload.startDate ?? '',\n endDate: ev.payload.endDate ?? '',\n }),\n component: PayrollLandingReceiptsContextual,\n payrollUuid: ev.payload.payrollId,\n previousState: 'tabs',\n selectedTab: 'payroll-history',\n startDate: ev.payload.startDate,\n endDate: ev.payload.endDate,\n showPayrollCancelledAlert: false,\n }),\n ),\n ),\n transition(\n componentEvents.RUN_PAYROLL_SUMMARY_VIEWED,\n 'overview',\n reduce(\n (\n ctx: PayrollLandingFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.RUN_PAYROLL_SUMMARY_VIEWED>,\n ): PayrollLandingFlowContextInterface => ({\n ...updateBreadcrumbs('overview', ctx, {\n startDate: ev.payload.startDate ?? '',\n endDate: ev.payload.endDate ?? '',\n }),\n component: PayrollLandingOverviewContextual,\n payrollUuid: ev.payload.payrollId,\n previousState: 'tabs',\n selectedTab: 'payroll-history',\n startDate: ev.payload.startDate,\n endDate: ev.payload.endDate,\n showPayrollCancelledAlert: false,\n }),\n ),\n ),\n transition(\n componentEvents.RUN_PAYROLL_CANCELLED,\n 'tabs',\n reduce(\n createReducer({\n showPayrollCancelledAlert: true,\n }),\n ),\n ),\n transition(\n componentEvents.RUN_PAYROLL_CANCELLED_ALERT_DISMISSED,\n 'tabs',\n reduce(\n createReducer({\n showPayrollCancelledAlert: false,\n }),\n ),\n ),\n ),\n overview: state<MachineTransition>(\n breadcrumbNavigateTransition('tabs'),\n transition(componentEvents.RUN_PAYROLL_BACK, 'tabs', reduce(returnToTabs())),\n transition(\n componentEvents.RUN_PAYROLL_RECEIPT_GET,\n 'receipt',\n reduce(\n (\n ctx: PayrollLandingFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.RUN_PAYROLL_RECEIPT_GET>,\n ): PayrollLandingFlowContextInterface => ({\n ...updateBreadcrumbs('receipt', ctx, {\n startDate: ctx.startDate ?? '',\n endDate: ctx.endDate ?? '',\n }),\n component: PayrollLandingReceiptsContextual,\n payrollUuid: ev.payload.payrollId,\n previousState: 'overview',\n }),\n ),\n ),\n transition(\n componentEvents.RUN_PAYROLL_CANCELLED,\n 'tabs',\n reduce(returnToTabs({ showPayrollCancelledAlert: true })),\n ),\n ),\n receipt: state<MachineTransition>(\n breadcrumbNavigateTransition('tabs'),\n transition(\n componentEvents.RUN_PAYROLL_BACK,\n 'overview',\n reduce((ctx: PayrollLandingFlowContextInterface): PayrollLandingFlowContextInterface => ({\n ...updateBreadcrumbs('overview', ctx, {\n startDate: ctx.startDate ?? '',\n endDate: ctx.endDate ?? '',\n }),\n component: PayrollLandingOverviewContextual,\n previousState: 'tabs',\n })),\n guard((ctx: PayrollLandingFlowContextInterface) => {\n return ctx.previousState === 'overview'\n }),\n ),\n transition(\n componentEvents.RUN_PAYROLL_BACK,\n 'tabs',\n reduce(returnToTabs()),\n guard((ctx: PayrollLandingFlowContextInterface) => {\n return ctx.previousState === 'tabs'\n }),\n ),\n ),\n}\n"],"names":["payrollLandingBreadcrumbNodes","ctx","PayrollLandingTabsContextual","createReducer","props","returnToTabs","extra","breadcrumbNavigateTransition","createBreadcrumbNavigateTransition","payrollLandingMachine","state","transition","componentEvents","reduce","ev","updateBreadcrumbs","PayrollLandingReceiptsContextual","PayrollLandingOverviewContextual","guard"],"mappings":"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"}
1
+ {"version":3,"file":"payrollLandingStateMachine.js","sources":["../../../../src/components/Payroll/PayrollLanding/payrollLandingStateMachine.ts"],"sourcesContent":["import { transition, reduce, state, guard } from 'robot3'\nimport {\n PayrollLandingTabsContextual,\n PayrollLandingReceiptsContextual,\n PayrollLandingOverviewContextual,\n type PayrollLandingFlowContextInterface,\n} from './PayrollLandingFlowComponents'\nimport { componentEvents } from '@/shared/constants'\nimport type { MachineEventType, MachineTransition } from '@/types/Helpers'\nimport type { BreadcrumbNodes } from '@/components/Common/FlowBreadcrumbs/FlowBreadcrumbsTypes'\nimport { updateBreadcrumbs } from '@/helpers/breadcrumbHelpers'\nimport { createBreadcrumbNavigateTransition } from '@/components/Common/FlowBreadcrumbs/breadcrumbTransitionHelpers'\n\ntype EventPayloads = {\n [componentEvents.RUN_PAYROLL_RECEIPT_VIEWED]: {\n payrollId: string\n startDate?: string\n endDate?: string\n }\n [componentEvents.RUN_PAYROLL_SUMMARY_VIEWED]: {\n payrollId: string\n startDate?: string\n endDate?: string\n }\n [componentEvents.RUN_PAYROLL_RECEIPT_GET]: {\n payrollId: string\n }\n [componentEvents.RUN_PAYROLL_CANCELLED]: undefined\n [componentEvents.RUN_PAYROLL_CANCELLED_ALERT_DISMISSED]: undefined\n [componentEvents.RUN_PAYROLL_NOT_CALCULATED_BACK_TO_LIST]: undefined\n}\n\n/** @internal */\nexport const payrollLandingBreadcrumbNodes: BreadcrumbNodes = {\n tabs: {\n parent: null,\n item: {\n id: 'tabs',\n label: 'breadcrumbs.landing',\n namespace: 'Payroll.PayrollLanding',\n onNavigate: ((ctx: PayrollLandingFlowContextInterface) => ({\n ...ctx,\n component: PayrollLandingTabsContextual,\n header:\n ctx.header?.type === 'breadcrumbs'\n ? { ...ctx.header, currentBreadcrumbId: undefined }\n : null,\n payrollUuid: undefined,\n previousState: undefined,\n startDate: undefined,\n endDate: undefined,\n })) as (context: unknown) => unknown,\n },\n },\n overview: {\n parent: 'tabs',\n item: {\n id: 'overview',\n label: 'breadcrumbs.overview',\n namespace: 'Payroll.PayrollLanding',\n },\n },\n receipt: {\n parent: 'tabs',\n item: {\n id: 'receipt',\n label: 'breadcrumbs.receipt',\n namespace: 'Payroll.PayrollLanding',\n },\n },\n} as const\n\nconst createReducer = (props: Partial<PayrollLandingFlowContextInterface>) => {\n return (ctx: PayrollLandingFlowContextInterface): PayrollLandingFlowContextInterface => ({\n ...ctx,\n ...props,\n })\n}\n\n/**\n * Reducer that returns the flow to the landing tabs view while preserving\n * the existing breadcrumbs trail data so that re-entering a sub-state can\n * pick it up without rebuilding.\n */\nconst returnToTabs = (\n extra: Partial<PayrollLandingFlowContextInterface> = {},\n): ((ctx: PayrollLandingFlowContextInterface) => PayrollLandingFlowContextInterface) => {\n return (ctx: PayrollLandingFlowContextInterface) => ({\n ...ctx,\n component: PayrollLandingTabsContextual,\n payrollUuid: undefined,\n previousState: undefined,\n startDate: undefined,\n endDate: undefined,\n header:\n ctx.header?.type === 'breadcrumbs' ? { ...ctx.header, currentBreadcrumbId: undefined } : null,\n ...extra,\n })\n}\n\nconst breadcrumbNavigateTransition =\n createBreadcrumbNavigateTransition<PayrollLandingFlowContextInterface>()\n\n/** @internal */\nexport const payrollLandingMachine = {\n tabs: state<MachineTransition>(\n transition(\n componentEvents.RUN_PAYROLL_RECEIPT_VIEWED,\n 'receipt',\n reduce(\n (\n ctx: PayrollLandingFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.RUN_PAYROLL_RECEIPT_VIEWED>,\n ): PayrollLandingFlowContextInterface => ({\n ...updateBreadcrumbs('receipt', ctx, {\n startDate: ev.payload.startDate ?? '',\n endDate: ev.payload.endDate ?? '',\n }),\n component: PayrollLandingReceiptsContextual,\n payrollUuid: ev.payload.payrollId,\n previousState: 'tabs',\n selectedTab: 'payroll-history',\n startDate: ev.payload.startDate,\n endDate: ev.payload.endDate,\n showPayrollCancelledAlert: false,\n }),\n ),\n ),\n transition(\n componentEvents.RUN_PAYROLL_SUMMARY_VIEWED,\n 'overview',\n reduce(\n (\n ctx: PayrollLandingFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.RUN_PAYROLL_SUMMARY_VIEWED>,\n ): PayrollLandingFlowContextInterface => ({\n ...updateBreadcrumbs('overview', ctx, {\n startDate: ev.payload.startDate ?? '',\n endDate: ev.payload.endDate ?? '',\n }),\n component: PayrollLandingOverviewContextual,\n payrollUuid: ev.payload.payrollId,\n previousState: 'tabs',\n selectedTab: 'payroll-history',\n startDate: ev.payload.startDate,\n endDate: ev.payload.endDate,\n showPayrollCancelledAlert: false,\n }),\n ),\n ),\n transition(\n componentEvents.RUN_PAYROLL_CANCELLED,\n 'tabs',\n reduce(\n createReducer({\n showPayrollCancelledAlert: true,\n }),\n ),\n ),\n transition(\n componentEvents.RUN_PAYROLL_CANCELLED_ALERT_DISMISSED,\n 'tabs',\n reduce(\n createReducer({\n showPayrollCancelledAlert: false,\n }),\n ),\n ),\n ),\n overview: state<MachineTransition>(\n breadcrumbNavigateTransition('tabs'),\n transition(componentEvents.RUN_PAYROLL_BACK, 'tabs', reduce(returnToTabs())),\n transition(\n componentEvents.RUN_PAYROLL_NOT_CALCULATED_BACK_TO_LIST,\n 'tabs',\n reduce(returnToTabs()),\n ),\n transition(\n componentEvents.RUN_PAYROLL_RECEIPT_GET,\n 'receipt',\n reduce(\n (\n ctx: PayrollLandingFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.RUN_PAYROLL_RECEIPT_GET>,\n ): PayrollLandingFlowContextInterface => ({\n ...updateBreadcrumbs('receipt', ctx, {\n startDate: ctx.startDate ?? '',\n endDate: ctx.endDate ?? '',\n }),\n component: PayrollLandingReceiptsContextual,\n payrollUuid: ev.payload.payrollId,\n previousState: 'overview',\n }),\n ),\n ),\n transition(\n componentEvents.RUN_PAYROLL_CANCELLED,\n 'tabs',\n reduce(returnToTabs({ showPayrollCancelledAlert: true })),\n ),\n ),\n receipt: state<MachineTransition>(\n breadcrumbNavigateTransition('tabs'),\n transition(\n componentEvents.RUN_PAYROLL_BACK,\n 'overview',\n reduce((ctx: PayrollLandingFlowContextInterface): PayrollLandingFlowContextInterface => ({\n ...updateBreadcrumbs('overview', ctx, {\n startDate: ctx.startDate ?? '',\n endDate: ctx.endDate ?? '',\n }),\n component: PayrollLandingOverviewContextual,\n previousState: 'tabs',\n })),\n guard((ctx: PayrollLandingFlowContextInterface) => {\n return ctx.previousState === 'overview'\n }),\n ),\n transition(\n componentEvents.RUN_PAYROLL_BACK,\n 'tabs',\n reduce(returnToTabs()),\n guard((ctx: PayrollLandingFlowContextInterface) => {\n return ctx.previousState === 'tabs'\n }),\n ),\n ),\n}\n"],"names":["payrollLandingBreadcrumbNodes","ctx","PayrollLandingTabsContextual","createReducer","props","returnToTabs","extra","breadcrumbNavigateTransition","createBreadcrumbNavigateTransition","payrollLandingMachine","state","transition","componentEvents","reduce","ev","updateBreadcrumbs","PayrollLandingReceiptsContextual","PayrollLandingOverviewContextual","guard"],"mappings":"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"}
@@ -7,8 +7,8 @@ import { usePayrollsSkipMutation as $ } from "@gusto/embedded-api/react-query/pa
7
7
  import { usePayrollsDeleteMutation as ee } from "@gusto/embedded-api/react-query/payrollsDelete";
8
8
  import { usePayrollsGetBlockersSuspense as te } from "@gusto/embedded-api/react-query/payrollsGetBlockers";
9
9
  import { useWireInRequestsListSuspense as se } from "@gusto/embedded-api/react-query/wireInRequestsList";
10
- import { PayrollType as g } from "@gusto/embedded-api/models/operations/postcompaniespayrollskipcompanyuuid";
11
- import { QueryParamPayrollTypes as c, ProcessingStatuses as ae } from "@gusto/embedded-api/models/operations/getv1companiescompanyidpayrolls";
10
+ import { PayrollType as S } from "@gusto/embedded-api/models/operations/postcompaniespayrollskipcompanyuuid";
11
+ import { QueryParamPayrollTypes as g, ProcessingStatuses as ae } from "@gusto/embedded-api/models/operations/getv1companiescompanyidpayrolls";
12
12
  import { useUnprocessedTransitionPayPeriods as oe } from "../useUnprocessedTransitionPayPeriods.js";
13
13
  import { PayrollListPresentation as re } from "./PayrollListPresentation.js";
14
14
  import { BaseComponent as le, BaseLayout as ne } from "../../Base/Base.js";
@@ -29,29 +29,25 @@ const pe = 3, ye = () => /* @__PURE__ */ new Date(), me = () => {
29
29
  LoaderComponent: h,
30
30
  className: R
31
31
  }) => {
32
- const { baseSubmitHandler: u } = ie(), k = V(), [A, p] = r(!1), [w, y] = r(null), { currentPage: O, itemsPerPage: E, getPaginationProps: C, resetPage: m } = ce(), [T, P] = r(!1), [_, d] = r(null), f = ue({
32
+ const { baseSubmitHandler: c } = ie(), k = V(), [A, u] = r(!1), [w, p] = r(null), { currentPage: O, itemsPerPage: C, getPaginationProps: E, resetPage: y } = ce(), [T, m] = r(!1), [_, P] = r(null), d = ue({
33
33
  initialStartDate: ye(),
34
34
  initialEndDate: me(),
35
35
  onFilterChange: j(() => {
36
- m();
37
- }, [m])
38
- }), D = f.getApiDateParams(), { data: n, isFetching: F } = J(
36
+ y();
37
+ }, [y])
38
+ }), f = d.getApiDateParams(), { data: n, isFetching: F } = J(
39
39
  {
40
40
  companyId: t,
41
41
  processingStatuses: [ae.Unprocessed],
42
- startDate: D.startDate,
43
- endDate: D.endDate,
44
- payrollTypes: [
45
- c.Regular,
46
- c.OffCycle,
47
- c.External
48
- ],
42
+ startDate: f.startDate,
43
+ endDate: f.endDate,
44
+ payrollTypes: [g.Regular, g.OffCycle],
49
45
  includeOffCycle: !0,
50
46
  page: O,
51
- per: E
47
+ per: C
52
48
  },
53
49
  { placeholderData: z, throwOnError: !0 }
54
- ), S = n?.payrollList ?? [], { data: q } = Z({
50
+ ), D = n?.payrollList ?? [], { data: q } = Z({
55
51
  companyId: t
56
52
  }), B = q.payScheduleShowResponse, { data: U } = te({
57
53
  companyUuid: t
@@ -62,9 +58,9 @@ const pe = 3, ye = () => /* @__PURE__ */ new Date(), me = () => {
62
58
  })
63
59
  ), { data: M } = se({
64
60
  companyUuid: t
65
- }), Y = M.wireInRequestList ?? [], { hasUnprocessedTransitions: b } = oe(t), { mutateAsync: x } = $(), { mutateAsync: H } = ee(), N = ({ payrollUuid: e, payPeriod: s }) => {
61
+ }), Y = M.wireInRequestList ?? [], { hasUnprocessedTransitions: b } = oe(t), { mutateAsync: H } = $(), { mutateAsync: N } = ee(), v = ({ payrollUuid: e, payPeriod: s }) => {
66
62
  a(o.RUN_PAYROLL_SELECTED, { payrollUuid: e, payPeriod: s });
67
- }, v = () => {
63
+ }, x = () => {
68
64
  a(o.RUN_OFF_CYCLE_PAYROLL);
69
65
  }, G = ({
70
66
  payrollUuid: e,
@@ -72,12 +68,12 @@ const pe = 3, ye = () => /* @__PURE__ */ new Date(), me = () => {
72
68
  }) => {
73
69
  a(o.REVIEW_PAYROLL, { payrollUuid: e, payPeriod: s });
74
70
  }, K = async ({ payrollUuid: e }) => {
75
- const s = S.find((i) => i.payrollUuid === e);
71
+ const s = D.find((i) => i.payrollUuid === e);
76
72
  if (s?.payPeriod) {
77
- y(e);
78
- const i = s.offCycleReason === "Transition from old pay schedule" ? g.TransitionFromOldPaySchedule : g.Regular;
79
- await u({}, async () => {
80
- await x({
73
+ p(e);
74
+ const i = s.offCycleReason === "Transition from old pay schedule" ? S.TransitionFromOldPaySchedule : S.Regular;
75
+ await c({}, async () => {
76
+ await H({
81
77
  request: {
82
78
  companyUuid: t,
83
79
  requestBody: {
@@ -87,44 +83,44 @@ const pe = 3, ye = () => /* @__PURE__ */ new Date(), me = () => {
87
83
  payScheduleUuid: s.payPeriod?.payScheduleUuid ?? void 0
88
84
  }
89
85
  }
90
- }), p(!0), a(o.PAYROLL_SKIPPED, { payrollId: e });
91
- }), y(null);
86
+ }), u(!0), a(o.PAYROLL_SKIPPED, { payrollId: e });
87
+ }), p(null);
92
88
  }
93
89
  }, Q = async ({ payrollUuid: e }) => {
94
- e && (d(e), await u({}, async () => {
95
- await H({
90
+ e && (P(e), await c({}, async () => {
91
+ await N({
96
92
  request: { companyId: t, payrollId: e }
97
- }), await X(k), P(!0), a(o.PAYROLL_DELETED, { payrollId: e });
98
- }), d(null));
93
+ }), await X(k), m(!0), a(o.PAYROLL_DELETED, { payrollId: e });
94
+ }), P(null));
99
95
  };
100
96
  if (!n)
101
97
  return /* @__PURE__ */ l(ne, { isLoading: !0, LoaderComponent: h });
102
- const W = C(n.httpMeta.response.headers, F);
98
+ const W = E(n.httpMeta.response.headers, F);
103
99
  return /* @__PURE__ */ l(
104
100
  re,
105
101
  {
106
102
  className: R,
107
- payrolls: S,
103
+ payrolls: D,
108
104
  pagination: W,
109
105
  paySchedules: B,
110
- onRunPayroll: N,
106
+ onRunPayroll: v,
111
107
  onSubmitPayroll: G,
112
108
  onSkipPayroll: K,
113
109
  onDeletePayroll: Q,
114
- onRunOffCyclePayroll: v,
110
+ onRunOffCyclePayroll: x,
115
111
  showSkipSuccessAlert: A,
116
112
  onDismissSkipSuccessAlert: () => {
117
- p(!1);
113
+ u(!1);
118
114
  },
119
115
  showDeleteSuccessAlert: T,
120
116
  onDismissDeleteSuccessAlert: () => {
121
- P(!1);
117
+ m(!1);
122
118
  },
123
119
  skippingPayrollId: w,
124
120
  deletingPayrollId: _,
125
121
  blockers: I,
126
122
  wireInRequests: Y,
127
- dateRangeFilter: f,
123
+ dateRangeFilter: d,
128
124
  hasUnprocessedTransitions: b,
129
125
  withOffcyclePayroll: L
130
126
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PayrollList.js","sources":["../../../../src/components/Payroll/PayrollList/PayrollList.tsx"],"sourcesContent":["import { useState, useCallback } from 'react'\nimport { useQueryClient, keepPreviousData } from '@tanstack/react-query'\nimport {\n usePayrollsList,\n invalidateAllPayrollsList,\n} from '@gusto/embedded-api/react-query/payrollsList'\nimport { usePaySchedulesGetAllSuspense } from '@gusto/embedded-api/react-query/paySchedulesGetAll'\nimport { usePayrollsSkipMutation } from '@gusto/embedded-api/react-query/payrollsSkip'\nimport { usePayrollsDeleteMutation } from '@gusto/embedded-api/react-query/payrollsDelete'\nimport { usePayrollsGetBlockersSuspense } from '@gusto/embedded-api/react-query/payrollsGetBlockers'\nimport { useWireInRequestsListSuspense } from '@gusto/embedded-api/react-query/wireInRequestsList'\nimport { PayrollType } from '@gusto/embedded-api/models/operations/postcompaniespayrollskipcompanyuuid'\nimport {\n ProcessingStatuses,\n QueryParamPayrollTypes,\n} from '@gusto/embedded-api/models/operations/getv1companiescompanyidpayrolls'\nimport type { Payroll } from '@gusto/embedded-api/models/components/payrollshow'\nimport type { ApiPayrollBlocker } from '../PayrollBlocker/payrollHelpers'\nimport { useUnprocessedTransitionPayPeriods } from '../useUnprocessedTransitionPayPeriods'\nimport { PayrollListPresentation } from './PayrollListPresentation'\nimport type { BaseComponentInterface } from '@/components/Base'\nimport { BaseComponent, BaseLayout, useBase } from '@/components/Base'\nimport { componentEvents } from '@/shared/constants'\nimport { usePagination } from '@/hooks/usePagination/usePagination'\nimport { useDateRangeFilter } from '@/hooks/useDateRangeFilter/useDateRangeFilter'\n\n/**\n * Props for {@link PayrollList}.\n *\n * @public\n */\nexport interface PayrollListBlockProps extends BaseComponentInterface<never> {\n /** The associated company identifier. */\n companyId: string\n /** Whether to show the off-cycle payroll call-to-action. Defaults to `true`. */\n withOffcyclePayroll?: boolean\n}\n\n/**\n * Lists upcoming payrolls and lets users start running them.\n *\n * Displays available payrolls with pay period dates, payroll type, check date,\n * deadline, and status. Each row offers actions to run, submit a calculated\n * payroll, skip, or delete (for cancellable off-cycle payrolls). A separate\n * call-to-action starts an off-cycle payroll.\n *\n * @remarks\n * When the company has unprocessed transition pay periods within the next\n * 90 days, the Run Payroll action on Regular rows is disabled to prevent a\n * regular payroll from being run before the transition is resolved. Off-cycle\n * rows and the Run off-cycle action remain enabled, since off-cycle is the\n * path used to run a transition payroll. {@link PayrollLanding} pairs this\n * list with an alert that lets users run or skip the pending transition; when\n * using `PayrollList` directly, render an equivalent resolution surface\n * alongside it.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `runPayroll/selected` | User selected a payroll to run | `{ payrollUuid, payPeriod }` |\n * | `payroll/review` | User selected a calculated payroll to review and submit | `{ payrollUuid, payPeriod }` |\n * | `payroll/skipped` | A payroll was successfully skipped | `{ payrollId }` |\n * | `payroll/deleted` | A cancellable off-cycle payroll was successfully deleted | `{ payrollId }` |\n * | `runPayroll/offCycle/start` | User clicked the Run off-cycle call-to-action | — |\n *\n * @param props - See {@link PayrollListBlockProps}.\n * @returns The rendered payroll list.\n * @public\n */\nexport function PayrollList(props: PayrollListBlockProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props} />\n </BaseComponent>\n )\n}\n\nconst FUTURE_LOOKAHEAD_MONTHS = 3\n\nconst getDefaultStartDate = (): Date => new Date()\n\nconst getDefaultEndDate = (): Date => {\n const date = new Date()\n date.setMonth(date.getMonth() + FUTURE_LOOKAHEAD_MONTHS)\n return date\n}\n\nconst Root = ({\n companyId,\n onEvent,\n withOffcyclePayroll = true,\n LoaderComponent,\n className,\n}: PayrollListBlockProps) => {\n const { baseSubmitHandler } = useBase()\n const queryClient = useQueryClient()\n const [showSkipSuccessAlert, setShowSkipSuccessAlert] = useState(false)\n const [skippingPayrollId, setSkippingPayrollId] = useState<string | null>(null)\n const { currentPage, itemsPerPage, getPaginationProps, resetPage } = usePagination()\n const [showDeleteSuccessAlert, setShowDeleteSuccessAlert] = useState(false)\n const [deletingPayrollId, setDeletingPayrollId] = useState<string | null>(null)\n\n const dateRangeFilter = useDateRangeFilter({\n initialStartDate: getDefaultStartDate(),\n initialEndDate: getDefaultEndDate(),\n onFilterChange: useCallback(() => {\n resetPage()\n }, [resetPage]),\n })\n const dateFilterParams = dateRangeFilter.getApiDateParams()\n\n const { data: payrollsData, isFetching } = usePayrollsList(\n {\n companyId,\n processingStatuses: [ProcessingStatuses.Unprocessed],\n startDate: dateFilterParams.startDate,\n endDate: dateFilterParams.endDate,\n payrollTypes: [\n QueryParamPayrollTypes.Regular,\n QueryParamPayrollTypes.OffCycle,\n QueryParamPayrollTypes.External,\n ],\n includeOffCycle: true,\n page: currentPage,\n per: itemsPerPage,\n },\n { placeholderData: keepPreviousData, throwOnError: true },\n )\n const payrollList = payrollsData?.payrollList ?? []\n const { data: paySchedulesData } = usePaySchedulesGetAllSuspense({\n companyId,\n })\n const paySchedulesList = paySchedulesData.payScheduleShowResponse!\n\n const { data: blockersData } = usePayrollsGetBlockersSuspense({\n companyUuid: companyId,\n })\n\n const payrollBlockerList = blockersData.payrollBlockers ?? []\n\n const blockers: ApiPayrollBlocker[] = payrollBlockerList.map(\n (blocker: { key?: string; message?: string }) => ({\n key: blocker.key ?? 'unknown',\n message: blocker.message,\n }),\n )\n\n const { data: wireInRequestsData } = useWireInRequestsListSuspense({\n companyUuid: companyId,\n })\n\n const wireInRequests = wireInRequestsData.wireInRequestList ?? []\n\n const { hasUnprocessedTransitions } = useUnprocessedTransitionPayPeriods(companyId)\n\n const { mutateAsync: skipPayroll } = usePayrollsSkipMutation()\n const { mutateAsync: deletePayrollMutation } = usePayrollsDeleteMutation()\n\n const onRunPayroll = ({ payrollUuid, payPeriod }: Pick<Payroll, 'payrollUuid' | 'payPeriod'>) => {\n onEvent(componentEvents.RUN_PAYROLL_SELECTED, { payrollUuid, payPeriod })\n }\n const onRunOffCyclePayroll = () => {\n onEvent(componentEvents.RUN_OFF_CYCLE_PAYROLL)\n }\n const onSubmitPayroll = ({\n payrollUuid,\n payPeriod,\n }: Pick<Payroll, 'payrollUuid' | 'payPeriod'>) => {\n onEvent(componentEvents.REVIEW_PAYROLL, { payrollUuid, payPeriod })\n }\n const onSkipPayroll = async ({ payrollUuid }: Pick<Payroll, 'payrollUuid'>) => {\n const payroll = payrollList.find(payroll => payroll.payrollUuid === payrollUuid)\n\n if (payroll?.payPeriod) {\n setSkippingPayrollId(payrollUuid!)\n const payrollType =\n payroll.offCycleReason === 'Transition from old pay schedule'\n ? PayrollType.TransitionFromOldPaySchedule\n : PayrollType.Regular\n\n await baseSubmitHandler({}, async () => {\n await skipPayroll({\n request: {\n companyUuid: companyId,\n requestBody: {\n payrollType,\n startDate: payroll.payPeriod?.startDate ?? undefined,\n endDate: payroll.payPeriod?.endDate ?? undefined,\n payScheduleUuid: payroll.payPeriod?.payScheduleUuid ?? undefined,\n },\n },\n })\n\n setShowSkipSuccessAlert(true)\n onEvent(componentEvents.PAYROLL_SKIPPED, { payrollId: payrollUuid })\n })\n setSkippingPayrollId(null)\n }\n }\n\n const onDeletePayroll = async ({ payrollUuid }: Pick<Payroll, 'payrollUuid'>) => {\n if (payrollUuid) {\n setDeletingPayrollId(payrollUuid)\n await baseSubmitHandler({}, async () => {\n await deletePayrollMutation({\n request: { companyId, payrollId: payrollUuid },\n })\n await invalidateAllPayrollsList(queryClient)\n setShowDeleteSuccessAlert(true)\n onEvent(componentEvents.PAYROLL_DELETED, { payrollId: payrollUuid })\n })\n setDeletingPayrollId(null)\n }\n }\n\n if (!payrollsData) {\n return <BaseLayout isLoading LoaderComponent={LoaderComponent} />\n }\n\n const paginationProps = getPaginationProps(payrollsData.httpMeta.response.headers, isFetching)\n\n return (\n <PayrollListPresentation\n className={className}\n payrolls={payrollList}\n pagination={paginationProps}\n paySchedules={paySchedulesList}\n onRunPayroll={onRunPayroll}\n onSubmitPayroll={onSubmitPayroll}\n onSkipPayroll={onSkipPayroll}\n onDeletePayroll={onDeletePayroll}\n onRunOffCyclePayroll={onRunOffCyclePayroll}\n showSkipSuccessAlert={showSkipSuccessAlert}\n onDismissSkipSuccessAlert={() => {\n setShowSkipSuccessAlert(false)\n }}\n showDeleteSuccessAlert={showDeleteSuccessAlert}\n onDismissDeleteSuccessAlert={() => {\n setShowDeleteSuccessAlert(false)\n }}\n skippingPayrollId={skippingPayrollId}\n deletingPayrollId={deletingPayrollId}\n blockers={blockers}\n wireInRequests={wireInRequests}\n dateRangeFilter={dateRangeFilter}\n hasUnprocessedTransitions={hasUnprocessedTransitions}\n withOffcyclePayroll={withOffcyclePayroll}\n />\n )\n}\n"],"names":["PayrollList","props","jsx","BaseComponent","Root","FUTURE_LOOKAHEAD_MONTHS","getDefaultStartDate","getDefaultEndDate","date","companyId","onEvent","withOffcyclePayroll","LoaderComponent","className","baseSubmitHandler","useBase","queryClient","useQueryClient","showSkipSuccessAlert","setShowSkipSuccessAlert","useState","skippingPayrollId","setSkippingPayrollId","currentPage","itemsPerPage","getPaginationProps","resetPage","usePagination","showDeleteSuccessAlert","setShowDeleteSuccessAlert","deletingPayrollId","setDeletingPayrollId","dateRangeFilter","useDateRangeFilter","useCallback","dateFilterParams","payrollsData","isFetching","usePayrollsList","ProcessingStatuses","QueryParamPayrollTypes","keepPreviousData","payrollList","paySchedulesData","usePaySchedulesGetAllSuspense","paySchedulesList","blockersData","usePayrollsGetBlockersSuspense","blockers","blocker","wireInRequestsData","useWireInRequestsListSuspense","wireInRequests","hasUnprocessedTransitions","useUnprocessedTransitionPayPeriods","skipPayroll","usePayrollsSkipMutation","deletePayrollMutation","usePayrollsDeleteMutation","onRunPayroll","payrollUuid","payPeriod","componentEvents","onRunOffCyclePayroll","onSubmitPayroll","onSkipPayroll","payroll","payrollType","PayrollType","onDeletePayroll","invalidateAllPayrollsList","BaseLayout","paginationProps","PayrollListPresentation"],"mappings":"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"}
1
+ {"version":3,"file":"PayrollList.js","sources":["../../../../src/components/Payroll/PayrollList/PayrollList.tsx"],"sourcesContent":["import { useState, useCallback } from 'react'\nimport { useQueryClient, keepPreviousData } from '@tanstack/react-query'\nimport {\n usePayrollsList,\n invalidateAllPayrollsList,\n} from '@gusto/embedded-api/react-query/payrollsList'\nimport { usePaySchedulesGetAllSuspense } from '@gusto/embedded-api/react-query/paySchedulesGetAll'\nimport { usePayrollsSkipMutation } from '@gusto/embedded-api/react-query/payrollsSkip'\nimport { usePayrollsDeleteMutation } from '@gusto/embedded-api/react-query/payrollsDelete'\nimport { usePayrollsGetBlockersSuspense } from '@gusto/embedded-api/react-query/payrollsGetBlockers'\nimport { useWireInRequestsListSuspense } from '@gusto/embedded-api/react-query/wireInRequestsList'\nimport { PayrollType } from '@gusto/embedded-api/models/operations/postcompaniespayrollskipcompanyuuid'\nimport {\n ProcessingStatuses,\n QueryParamPayrollTypes,\n} from '@gusto/embedded-api/models/operations/getv1companiescompanyidpayrolls'\nimport type { Payroll } from '@gusto/embedded-api/models/components/payrollshow'\nimport type { ApiPayrollBlocker } from '../PayrollBlocker/payrollHelpers'\nimport { useUnprocessedTransitionPayPeriods } from '../useUnprocessedTransitionPayPeriods'\nimport { PayrollListPresentation } from './PayrollListPresentation'\nimport type { BaseComponentInterface } from '@/components/Base'\nimport { BaseComponent, BaseLayout, useBase } from '@/components/Base'\nimport { componentEvents } from '@/shared/constants'\nimport { usePagination } from '@/hooks/usePagination/usePagination'\nimport { useDateRangeFilter } from '@/hooks/useDateRangeFilter/useDateRangeFilter'\n\n/**\n * Props for {@link PayrollList}.\n *\n * @public\n */\nexport interface PayrollListBlockProps extends BaseComponentInterface<never> {\n /** The associated company identifier. */\n companyId: string\n /** Whether to show the off-cycle payroll call-to-action. Defaults to `true`. */\n withOffcyclePayroll?: boolean\n}\n\n/**\n * Lists upcoming payrolls and lets users start running them.\n *\n * Displays available payrolls with pay period dates, payroll type, check date,\n * deadline, and status. Each row offers actions to run, submit a calculated\n * payroll, skip, or delete (for cancellable off-cycle payrolls). A separate\n * call-to-action starts an off-cycle payroll.\n *\n * @remarks\n * When the company has unprocessed transition pay periods within the next\n * 90 days, the Run Payroll action on Regular rows is disabled to prevent a\n * regular payroll from being run before the transition is resolved. Off-cycle\n * rows and the Run off-cycle action remain enabled, since off-cycle is the\n * path used to run a transition payroll. {@link PayrollLanding} pairs this\n * list with an alert that lets users run or skip the pending transition; when\n * using `PayrollList` directly, render an equivalent resolution surface\n * alongside it.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `runPayroll/selected` | User selected a payroll to run | `{ payrollUuid, payPeriod }` |\n * | `payroll/review` | User selected a calculated payroll to review and submit | `{ payrollUuid, payPeriod }` |\n * | `payroll/skipped` | A payroll was successfully skipped | `{ payrollId }` |\n * | `payroll/deleted` | A cancellable off-cycle payroll was successfully deleted | `{ payrollId }` |\n * | `runPayroll/offCycle/start` | User clicked the Run off-cycle call-to-action | — |\n *\n * @param props - See {@link PayrollListBlockProps}.\n * @returns The rendered payroll list.\n * @public\n */\nexport function PayrollList(props: PayrollListBlockProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props} />\n </BaseComponent>\n )\n}\n\nconst FUTURE_LOOKAHEAD_MONTHS = 3\n\nconst getDefaultStartDate = (): Date => new Date()\n\nconst getDefaultEndDate = (): Date => {\n const date = new Date()\n date.setMonth(date.getMonth() + FUTURE_LOOKAHEAD_MONTHS)\n return date\n}\n\nconst Root = ({\n companyId,\n onEvent,\n withOffcyclePayroll = true,\n LoaderComponent,\n className,\n}: PayrollListBlockProps) => {\n const { baseSubmitHandler } = useBase()\n const queryClient = useQueryClient()\n const [showSkipSuccessAlert, setShowSkipSuccessAlert] = useState(false)\n const [skippingPayrollId, setSkippingPayrollId] = useState<string | null>(null)\n const { currentPage, itemsPerPage, getPaginationProps, resetPage } = usePagination()\n const [showDeleteSuccessAlert, setShowDeleteSuccessAlert] = useState(false)\n const [deletingPayrollId, setDeletingPayrollId] = useState<string | null>(null)\n\n const dateRangeFilter = useDateRangeFilter({\n initialStartDate: getDefaultStartDate(),\n initialEndDate: getDefaultEndDate(),\n onFilterChange: useCallback(() => {\n resetPage()\n }, [resetPage]),\n })\n const dateFilterParams = dateRangeFilter.getApiDateParams()\n\n const { data: payrollsData, isFetching } = usePayrollsList(\n {\n companyId,\n processingStatuses: [ProcessingStatuses.Unprocessed],\n startDate: dateFilterParams.startDate,\n endDate: dateFilterParams.endDate,\n payrollTypes: [QueryParamPayrollTypes.Regular, QueryParamPayrollTypes.OffCycle],\n includeOffCycle: true,\n page: currentPage,\n per: itemsPerPage,\n },\n { placeholderData: keepPreviousData, throwOnError: true },\n )\n const payrollList = payrollsData?.payrollList ?? []\n const { data: paySchedulesData } = usePaySchedulesGetAllSuspense({\n companyId,\n })\n const paySchedulesList = paySchedulesData.payScheduleShowResponse!\n\n const { data: blockersData } = usePayrollsGetBlockersSuspense({\n companyUuid: companyId,\n })\n\n const payrollBlockerList = blockersData.payrollBlockers ?? []\n\n const blockers: ApiPayrollBlocker[] = payrollBlockerList.map(\n (blocker: { key?: string; message?: string }) => ({\n key: blocker.key ?? 'unknown',\n message: blocker.message,\n }),\n )\n\n const { data: wireInRequestsData } = useWireInRequestsListSuspense({\n companyUuid: companyId,\n })\n\n const wireInRequests = wireInRequestsData.wireInRequestList ?? []\n\n const { hasUnprocessedTransitions } = useUnprocessedTransitionPayPeriods(companyId)\n\n const { mutateAsync: skipPayroll } = usePayrollsSkipMutation()\n const { mutateAsync: deletePayrollMutation } = usePayrollsDeleteMutation()\n\n const onRunPayroll = ({ payrollUuid, payPeriod }: Pick<Payroll, 'payrollUuid' | 'payPeriod'>) => {\n onEvent(componentEvents.RUN_PAYROLL_SELECTED, { payrollUuid, payPeriod })\n }\n const onRunOffCyclePayroll = () => {\n onEvent(componentEvents.RUN_OFF_CYCLE_PAYROLL)\n }\n const onSubmitPayroll = ({\n payrollUuid,\n payPeriod,\n }: Pick<Payroll, 'payrollUuid' | 'payPeriod'>) => {\n onEvent(componentEvents.REVIEW_PAYROLL, { payrollUuid, payPeriod })\n }\n const onSkipPayroll = async ({ payrollUuid }: Pick<Payroll, 'payrollUuid'>) => {\n const payroll = payrollList.find(payroll => payroll.payrollUuid === payrollUuid)\n\n if (payroll?.payPeriod) {\n setSkippingPayrollId(payrollUuid!)\n const payrollType =\n payroll.offCycleReason === 'Transition from old pay schedule'\n ? PayrollType.TransitionFromOldPaySchedule\n : PayrollType.Regular\n\n await baseSubmitHandler({}, async () => {\n await skipPayroll({\n request: {\n companyUuid: companyId,\n requestBody: {\n payrollType,\n startDate: payroll.payPeriod?.startDate ?? undefined,\n endDate: payroll.payPeriod?.endDate ?? undefined,\n payScheduleUuid: payroll.payPeriod?.payScheduleUuid ?? undefined,\n },\n },\n })\n\n setShowSkipSuccessAlert(true)\n onEvent(componentEvents.PAYROLL_SKIPPED, { payrollId: payrollUuid })\n })\n setSkippingPayrollId(null)\n }\n }\n\n const onDeletePayroll = async ({ payrollUuid }: Pick<Payroll, 'payrollUuid'>) => {\n if (payrollUuid) {\n setDeletingPayrollId(payrollUuid)\n await baseSubmitHandler({}, async () => {\n await deletePayrollMutation({\n request: { companyId, payrollId: payrollUuid },\n })\n await invalidateAllPayrollsList(queryClient)\n setShowDeleteSuccessAlert(true)\n onEvent(componentEvents.PAYROLL_DELETED, { payrollId: payrollUuid })\n })\n setDeletingPayrollId(null)\n }\n }\n\n if (!payrollsData) {\n return <BaseLayout isLoading LoaderComponent={LoaderComponent} />\n }\n\n const paginationProps = getPaginationProps(payrollsData.httpMeta.response.headers, isFetching)\n\n return (\n <PayrollListPresentation\n className={className}\n payrolls={payrollList}\n pagination={paginationProps}\n paySchedules={paySchedulesList}\n onRunPayroll={onRunPayroll}\n onSubmitPayroll={onSubmitPayroll}\n onSkipPayroll={onSkipPayroll}\n onDeletePayroll={onDeletePayroll}\n onRunOffCyclePayroll={onRunOffCyclePayroll}\n showSkipSuccessAlert={showSkipSuccessAlert}\n onDismissSkipSuccessAlert={() => {\n setShowSkipSuccessAlert(false)\n }}\n showDeleteSuccessAlert={showDeleteSuccessAlert}\n onDismissDeleteSuccessAlert={() => {\n setShowDeleteSuccessAlert(false)\n }}\n skippingPayrollId={skippingPayrollId}\n deletingPayrollId={deletingPayrollId}\n blockers={blockers}\n wireInRequests={wireInRequests}\n dateRangeFilter={dateRangeFilter}\n hasUnprocessedTransitions={hasUnprocessedTransitions}\n withOffcyclePayroll={withOffcyclePayroll}\n />\n )\n}\n"],"names":["PayrollList","props","jsx","BaseComponent","Root","FUTURE_LOOKAHEAD_MONTHS","getDefaultStartDate","getDefaultEndDate","date","companyId","onEvent","withOffcyclePayroll","LoaderComponent","className","baseSubmitHandler","useBase","queryClient","useQueryClient","showSkipSuccessAlert","setShowSkipSuccessAlert","useState","skippingPayrollId","setSkippingPayrollId","currentPage","itemsPerPage","getPaginationProps","resetPage","usePagination","showDeleteSuccessAlert","setShowDeleteSuccessAlert","deletingPayrollId","setDeletingPayrollId","dateRangeFilter","useDateRangeFilter","useCallback","dateFilterParams","payrollsData","isFetching","usePayrollsList","ProcessingStatuses","QueryParamPayrollTypes","keepPreviousData","payrollList","paySchedulesData","usePaySchedulesGetAllSuspense","paySchedulesList","blockersData","usePayrollsGetBlockersSuspense","blockers","blocker","wireInRequestsData","useWireInRequestsListSuspense","wireInRequests","hasUnprocessedTransitions","useUnprocessedTransitionPayPeriods","skipPayroll","usePayrollsSkipMutation","deletePayrollMutation","usePayrollsDeleteMutation","onRunPayroll","payrollUuid","payPeriod","componentEvents","onRunOffCyclePayroll","onSubmitPayroll","onSkipPayroll","payroll","payrollType","PayrollType","onDeletePayroll","invalidateAllPayrollsList","BaseLayout","paginationProps","PayrollListPresentation"],"mappings":"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"}