@gusto/embedded-react-sdk 0.36.0 → 0.37.0-rc.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 (344) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/dist/UNSTABLE_Hooks.d.ts +1 -1
  3. package/dist/UNSTABLE_Hooks.js +6 -6
  4. package/dist/components/Base/Base.d.ts +8 -10
  5. package/dist/components/Base/Base.js +121 -100
  6. package/dist/components/Base/Base.js.map +1 -1
  7. package/dist/components/Base/index.d.ts +1 -1
  8. package/dist/components/Base/useBase.d.ts +3 -7
  9. package/dist/components/Base/useBase.js.map +1 -1
  10. package/dist/components/Base/useBaseSubmit.d.ts +3 -5
  11. package/dist/components/Base/useBaseSubmit.js +27 -50
  12. package/dist/components/Base/useBaseSubmit.js.map +1 -1
  13. package/dist/components/Common/SignatureForm/SignatureFormActions.js +1 -1
  14. package/dist/components/Common/SignatureForm/SignatureFormFields.js +1 -1
  15. package/dist/components/Common/UI/Breadcrumbs/Breadcrumbs.js +1 -1
  16. package/dist/components/Common/UI/DescriptionList/DescriptionList.module.scss.js +2 -2
  17. package/dist/components/Common/UI/FileInput/FileInput.js +1 -1
  18. package/dist/components/Common/UI/ProgressBar/ProgressBar.js +4 -4
  19. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js +6 -5
  20. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js.map +1 -1
  21. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +6 -8
  22. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
  23. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js +5 -4
  24. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js.map +1 -1
  25. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +6 -8
  26. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
  27. package/dist/components/Company/AssignSignatory/useAssignSignatory.js +8 -10
  28. package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
  29. package/dist/components/Company/BankAccount/BankAccountForm/context.js +6 -8
  30. package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
  31. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +6 -8
  32. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  33. package/dist/components/Company/DocumentSigner/SignatureForm/useSignatureForm.js +6 -8
  34. package/dist/components/Company/DocumentSigner/SignatureForm/useSignatureForm.js.map +1 -1
  35. package/dist/components/Company/FederalTaxes/useFederalTaxes.js +11 -13
  36. package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
  37. package/dist/components/Company/Industry/Context.js +9 -11
  38. package/dist/components/Company/Industry/Context.js.map +1 -1
  39. package/dist/components/Company/Locations/LocationForm/Form.js +5 -4
  40. package/dist/components/Company/Locations/LocationForm/Form.js.map +1 -1
  41. package/dist/components/Company/Locations/LocationForm/useLocationForm.js +6 -8
  42. package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
  43. package/dist/components/Company/Locations/LocationsList/useLocationsList.js +6 -8
  44. package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
  45. package/dist/components/Company/OnboardingOverview/context.js +6 -8
  46. package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
  47. package/dist/components/Company/PaySchedule/PaySchedule.js +60 -60
  48. package/dist/components/Company/PaySchedule/PaySchedule.js.map +1 -1
  49. package/dist/components/Company/PaySchedule/_parts/Edit.js +10 -9
  50. package/dist/components/Company/PaySchedule/_parts/Edit.js.map +1 -1
  51. package/dist/components/Company/PaySchedule/usePaySchedule.js +8 -10
  52. package/dist/components/Company/PaySchedule/usePaySchedule.js.map +1 -1
  53. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +6 -8
  54. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
  55. package/dist/components/Company/StateTaxes/StateTaxesList/context.js +6 -8
  56. package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
  57. package/dist/components/Contractor/Address/Form.js +7 -6
  58. package/dist/components/Contractor/Address/Form.js.map +1 -1
  59. package/dist/components/Contractor/Address/useAddress.js +8 -10
  60. package/dist/components/Contractor/Address/useAddress.js.map +1 -1
  61. package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentPresentation.js +3 -2
  62. package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentPresentation.js.map +1 -1
  63. package/dist/components/Contractor/Profile/ContractorProfileForm.js +15 -15
  64. package/dist/components/Contractor/Profile/useContractorProfile.js +26 -28
  65. package/dist/components/Contractor/Profile/useContractorProfile.js.map +1 -1
  66. package/dist/components/Employee/Deductions/DeductionsForm/ChildSupportForm.js +13 -15
  67. package/dist/components/Employee/Deductions/DeductionsForm/ChildSupportForm.js.map +1 -1
  68. package/dist/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.js +5 -7
  69. package/dist/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.js.map +1 -1
  70. package/dist/components/Employee/Deductions/DeductionsForm/GarnishmentForm.js +5 -7
  71. package/dist/components/Employee/Deductions/DeductionsForm/GarnishmentForm.js.map +1 -1
  72. package/dist/components/Employee/Deductions/IncludeDeductions/IncludeDeductions.js +3 -2
  73. package/dist/components/Employee/Deductions/IncludeDeductions/IncludeDeductions.js.map +1 -1
  74. package/dist/components/Employee/DocumentSigner/DocumentList/useDocumentList.js +6 -8
  75. package/dist/components/Employee/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  76. package/dist/components/Employee/DocumentSigner/SignatureForm/useSignatureForm.js +6 -8
  77. package/dist/components/Employee/DocumentSigner/SignatureForm/useSignatureForm.js.map +1 -1
  78. package/dist/components/Employee/EmployeeList/useEmployeeList.js +6 -8
  79. package/dist/components/Employee/EmployeeList/useEmployeeList.js.map +1 -1
  80. package/dist/components/Employee/FederalTaxes/FederalTaxes.js +42 -42
  81. package/dist/components/Employee/FederalTaxes/FederalTaxes.js.map +1 -1
  82. package/dist/components/Employee/FederalTaxes/useFederalTaxes.js +6 -8
  83. package/dist/components/Employee/FederalTaxes/useFederalTaxes.js.map +1 -1
  84. package/dist/components/Employee/PaymentMethod/usePaymentMethod.js +8 -10
  85. package/dist/components/Employee/PaymentMethod/usePaymentMethod.js.map +1 -1
  86. package/dist/components/Employee/Profile/HomeAddress.js +9 -8
  87. package/dist/components/Employee/Profile/HomeAddress.js.map +1 -1
  88. package/dist/components/Employee/Profile/PersonalDetailsInputs.js +15 -14
  89. package/dist/components/Employee/Profile/PersonalDetailsInputs.js.map +1 -1
  90. package/dist/components/Employee/Profile/Profile.js +30 -29
  91. package/dist/components/Employee/Profile/Profile.js.map +1 -1
  92. package/dist/components/Employee/Profile/useProfile.js +6 -8
  93. package/dist/components/Employee/Profile/useProfile.js.map +1 -1
  94. package/dist/components/Employee/StateTaxes/StateTaxes.js +50 -50
  95. package/dist/components/Employee/StateTaxes/StateTaxes.js.map +1 -1
  96. package/dist/components/Employee/StateTaxes/useStateTaxes.js +6 -8
  97. package/dist/components/Employee/StateTaxes/useStateTaxes.js.map +1 -1
  98. package/dist/components/Employee/Taxes/Taxes.js +53 -53
  99. package/dist/components/Employee/Taxes/Taxes.js.map +1 -1
  100. package/dist/components/Employee/Taxes/useTaxes.js +6 -8
  101. package/dist/components/Employee/Taxes/useTaxes.js.map +1 -1
  102. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.d.ts +11 -0
  103. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js +123 -0
  104. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js.map +1 -0
  105. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.d.ts +11 -0
  106. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.js +92 -0
  107. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.js.map +1 -0
  108. package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlow.d.ts +2 -0
  109. package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlow.js +30 -0
  110. package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlow.js.map +1 -0
  111. package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlowComponents.d.ts +23 -0
  112. package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlowComponents.js +72 -0
  113. package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlowComponents.js.map +1 -0
  114. package/dist/components/Employee/Terminations/TerminationFlow/index.d.ts +3 -0
  115. package/dist/components/Employee/Terminations/TerminationFlow/terminationStateMachine.d.ts +7 -0
  116. package/dist/components/Employee/Terminations/TerminationFlow/terminationStateMachine.js +165 -0
  117. package/dist/components/Employee/Terminations/TerminationFlow/terminationStateMachine.js.map +1 -0
  118. package/dist/components/Employee/Terminations/TerminationFlow/terminationStateMachine.test.d.ts +1 -0
  119. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummary.d.ts +9 -0
  120. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummary.js +86 -0
  121. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummary.js.map +1 -0
  122. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.d.ts +20 -0
  123. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.js +103 -0
  124. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.js.map +1 -0
  125. package/dist/components/Employee/Terminations/TerminationsData.d.ts +6 -0
  126. package/dist/components/Employee/Terminations/index.d.ts +8 -0
  127. package/dist/components/Employee/Terminations/types.d.ts +1 -0
  128. package/dist/components/Employee/index.d.ts +7 -0
  129. package/dist/components/Employee/index.js +34 -28
  130. package/dist/components/Employee/index.js.map +1 -1
  131. package/dist/components/InformationRequests/InformationRequests.js +31 -31
  132. package/dist/components/InformationRequests/InformationRequests.js.map +1 -1
  133. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.js +41 -41
  134. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.js.map +1 -1
  135. package/dist/components/Payroll/Dismissal/DismissalFlow.d.ts +2 -0
  136. package/dist/components/Payroll/Dismissal/DismissalFlow.js +32 -0
  137. package/dist/components/Payroll/Dismissal/DismissalFlow.js.map +1 -0
  138. package/dist/components/Payroll/Dismissal/DismissalFlowComponents.d.ts +16 -0
  139. package/dist/components/Payroll/Dismissal/DismissalFlowComponents.js +52 -0
  140. package/dist/components/Payroll/Dismissal/DismissalFlowComponents.js.map +1 -0
  141. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelection.d.ts +6 -0
  142. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelection.js +69 -0
  143. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelection.js.map +1 -0
  144. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.d.ts +9 -0
  145. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.js +53 -0
  146. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.js.map +1 -0
  147. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/index.d.ts +3 -0
  148. package/dist/components/Payroll/Dismissal/dismissalStateMachine.d.ts +6 -0
  149. package/dist/components/Payroll/Dismissal/dismissalStateMachine.js +51 -0
  150. package/dist/components/Payroll/Dismissal/dismissalStateMachine.js.map +1 -0
  151. package/dist/components/Payroll/Dismissal/dismissalStateMachine.test.d.ts +1 -0
  152. package/dist/components/Payroll/Dismissal/index.d.ts +3 -0
  153. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js +3 -3
  154. package/dist/components/Payroll/OffCycle/OffCycleFlow.d.ts +1 -1
  155. package/dist/components/Payroll/OffCycle/OffCycleFlow.js +19 -18
  156. package/dist/components/Payroll/OffCycle/OffCycleFlow.js.map +1 -1
  157. package/dist/components/Payroll/OffCycle/OffCycleFlowComponents.d.ts +3 -0
  158. package/dist/components/Payroll/OffCycle/OffCycleFlowComponents.js +32 -24
  159. package/dist/components/Payroll/OffCycle/OffCycleFlowComponents.js.map +1 -1
  160. package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js +45 -45
  161. package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js.map +1 -1
  162. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.d.ts +1 -1
  163. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.js +75 -66
  164. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.js.map +1 -1
  165. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.module.scss.js +8 -0
  166. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.module.scss.js.map +1 -0
  167. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationTypes.d.ts +0 -1
  168. package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormPresentation.module.scss.js +4 -4
  169. package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormTypes.js +2 -2
  170. package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormTypes.js.map +1 -1
  171. package/dist/components/Payroll/OffCyclePayPeriodDateForm/useOffCyclePayPeriodDateValidation.d.ts +1 -0
  172. package/dist/components/Payroll/OffCyclePayPeriodDateForm/useOffCyclePayPeriodDateValidation.js +1 -0
  173. package/dist/components/Payroll/OffCyclePayPeriodDateForm/useOffCyclePayPeriodDateValidation.js.map +1 -1
  174. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js +186 -159
  175. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js.map +1 -1
  176. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.d.ts +3 -3
  177. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js +71 -70
  178. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js.map +1 -1
  179. package/dist/components/Payroll/PayrollConfiguration/grossUpHelpers.d.ts +3 -2
  180. package/dist/components/Payroll/PayrollConfiguration/grossUpHelpers.js +8 -8
  181. package/dist/components/Payroll/PayrollConfiguration/grossUpHelpers.js.map +1 -1
  182. package/dist/components/Payroll/PayrollConfiguration/usePayrollConfigurationData.d.ts +5 -3
  183. package/dist/components/Payroll/PayrollConfiguration/usePayrollConfigurationData.js +76 -70
  184. package/dist/components/Payroll/PayrollConfiguration/usePayrollConfigurationData.js.map +1 -1
  185. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js +47 -42
  186. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js.map +1 -1
  187. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.d.ts +4 -2
  188. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js +225 -194
  189. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js.map +1 -1
  190. package/dist/components/Payroll/PayrollFlow/OffCycleFlowContextual.d.ts +1 -0
  191. package/dist/components/Payroll/PayrollFlow/OffCycleFlowContextual.js +12 -0
  192. package/dist/components/Payroll/PayrollFlow/OffCycleFlowContextual.js.map +1 -0
  193. package/dist/components/Payroll/PayrollFlow/PayrollFlowComponents.d.ts +3 -0
  194. package/dist/components/Payroll/PayrollFlow/PayrollFlowComponents.js.map +1 -1
  195. package/dist/components/Payroll/PayrollFlow/TransitionFlowContextual.d.ts +1 -0
  196. package/dist/components/Payroll/PayrollFlow/TransitionFlowContextual.js +21 -0
  197. package/dist/components/Payroll/PayrollFlow/TransitionFlowContextual.js.map +1 -0
  198. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.d.ts +2 -0
  199. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js +95 -64
  200. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js.map +1 -1
  201. package/dist/components/Payroll/PayrollHistory/PayrollHistory.js +53 -47
  202. package/dist/components/Payroll/PayrollHistory/PayrollHistory.js.map +1 -1
  203. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js +8 -8
  204. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js.map +1 -1
  205. package/dist/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.js +25 -23
  206. package/dist/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.js.map +1 -1
  207. package/dist/components/Payroll/PayrollList/PayrollList.js +40 -32
  208. package/dist/components/Payroll/PayrollList/PayrollList.js.map +1 -1
  209. package/dist/components/Payroll/PayrollList/PayrollListPresentation.d.ts +2 -1
  210. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js +110 -93
  211. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js.map +1 -1
  212. package/dist/components/Payroll/PayrollList/PayrollListPresentation.module.scss.js +12 -8
  213. package/dist/components/Payroll/PayrollList/PayrollListPresentation.module.scss.js.map +1 -1
  214. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js +3 -2
  215. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js.map +1 -1
  216. package/dist/components/Payroll/Transition/TransitionFlow.d.ts +2 -0
  217. package/dist/components/Payroll/Transition/TransitionFlow.js +38 -0
  218. package/dist/components/Payroll/Transition/TransitionFlow.js.map +1 -0
  219. package/dist/components/Payroll/Transition/TransitionFlowComponents.d.ts +19 -0
  220. package/dist/components/Payroll/Transition/TransitionFlowComponents.js +54 -0
  221. package/dist/components/Payroll/Transition/TransitionFlowComponents.js.map +1 -0
  222. package/dist/components/Payroll/Transition/index.d.ts +3 -0
  223. package/dist/components/Payroll/Transition/transitionStateMachine.d.ts +6 -0
  224. package/dist/components/Payroll/Transition/transitionStateMachine.js +58 -0
  225. package/dist/components/Payroll/Transition/transitionStateMachine.js.map +1 -0
  226. package/dist/components/Payroll/Transition/transitionStateMachine.test.d.ts +1 -0
  227. package/dist/components/Payroll/TransitionCreation/TransitionCreation.d.ts +2 -0
  228. package/dist/components/Payroll/TransitionCreation/TransitionCreation.js +92 -0
  229. package/dist/components/Payroll/TransitionCreation/TransitionCreation.js.map +1 -0
  230. package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.d.ts +2 -0
  231. package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.js +111 -0
  232. package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.js.map +1 -0
  233. package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.module.scss.js +8 -0
  234. package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.module.scss.js.map +1 -0
  235. package/dist/components/Payroll/TransitionCreation/TransitionCreationTypes.d.ts +28 -0
  236. package/dist/components/Payroll/TransitionCreation/TransitionCreationTypes.js +21 -0
  237. package/dist/components/Payroll/TransitionCreation/TransitionCreationTypes.js.map +1 -0
  238. package/dist/components/Payroll/TransitionCreation/index.d.ts +3 -0
  239. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlert.d.ts +8 -0
  240. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlert.js +83 -0
  241. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlert.js.map +1 -0
  242. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlertPresentation.d.ts +16 -0
  243. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlertPresentation.js +100 -0
  244. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlertPresentation.js.map +1 -0
  245. package/dist/components/Payroll/TransitionPayrollAlert/index.d.ts +2 -0
  246. package/dist/components/Payroll/helpers.d.ts +2 -1
  247. package/dist/components/Payroll/helpers.js +98 -87
  248. package/dist/components/Payroll/helpers.js.map +1 -1
  249. package/dist/components/Payroll/index.d.ts +6 -0
  250. package/dist/components/Payroll/index.js +32 -26
  251. package/dist/components/Payroll/index.js.map +1 -1
  252. package/dist/components/Payroll/payrollTypes.d.ts +21 -0
  253. package/dist/components/Payroll/payrollTypes.js +27 -0
  254. package/dist/components/Payroll/payrollTypes.js.map +1 -0
  255. package/dist/components/Payroll/usePreparedPayrollData.js +5 -7
  256. package/dist/components/Payroll/usePreparedPayrollData.js.map +1 -1
  257. package/dist/components/UNSTABLE_Hooks/form/FormFieldsMetadataContext.d.ts +8 -0
  258. package/dist/components/UNSTABLE_Hooks/form/FormFieldsMetadataContext.js +13 -0
  259. package/dist/components/UNSTABLE_Hooks/form/FormFieldsMetadataContext.js.map +1 -0
  260. package/dist/components/UNSTABLE_Hooks/form/FormFieldsMetadataProvider.d.ts +10 -0
  261. package/dist/components/UNSTABLE_Hooks/form/SDKFormProvider.d.ts +18 -0
  262. package/dist/components/UNSTABLE_Hooks/form/deriveFieldsMetadata.d.ts +3 -0
  263. package/dist/components/UNSTABLE_Hooks/form/deriveFieldsMetadata.test.d.ts +1 -0
  264. package/dist/components/UNSTABLE_Hooks/form/index.d.ts +9 -0
  265. package/dist/components/UNSTABLE_Hooks/form/types.d.ts +15 -0
  266. package/dist/components/UNSTABLE_Hooks/form/useFieldErrorMessage.d.ts +1 -0
  267. package/dist/components/UNSTABLE_Hooks/form/useFieldErrorMessage.js +15 -0
  268. package/dist/components/UNSTABLE_Hooks/form/useFieldErrorMessage.js.map +1 -0
  269. package/dist/components/UNSTABLE_Hooks/form/useFieldsMetadata.d.ts +4 -0
  270. package/dist/components/UNSTABLE_Hooks/form/useFieldsMetadata.js +9 -0
  271. package/dist/components/UNSTABLE_Hooks/form/useFieldsMetadata.js.map +1 -0
  272. package/dist/components/UNSTABLE_Hooks/form/withOptions.d.ts +5 -0
  273. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/index.d.ts +3 -0
  274. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/useCompensationForm.d.ts +16 -0
  275. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/useCompensationForm.js +7 -0
  276. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/useCompensationForm.js.map +1 -0
  277. package/dist/components/UNSTABLE_Hooks/index.d.ts +5 -0
  278. package/dist/components/UNSTABLE_Hooks/types.d.ts +46 -0
  279. package/dist/contexts/ApiProvider/ApiProvider.js +11 -11
  280. package/dist/contexts/ApiProvider/ApiProvider.js.map +1 -1
  281. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js +43 -47
  282. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js.map +1 -1
  283. package/dist/contexts/ObservabilityProvider/index.d.ts +1 -1
  284. package/dist/contexts/ObservabilityProvider/sanitization.d.ts +0 -14
  285. package/dist/contexts/ObservabilityProvider/sanitization.js +51 -51
  286. package/dist/contexts/ObservabilityProvider/sanitization.js.map +1 -1
  287. package/dist/contexts/ObservabilityProvider/useSanitizedObservability.d.ts +0 -3
  288. package/dist/contexts/ObservabilityProvider/useSanitizedObservability.js.map +1 -1
  289. package/dist/i18n/I18n.js +11 -11
  290. package/dist/i18n/I18n.js.map +1 -1
  291. package/dist/i18n/en/Employee.Terminations.TerminateEmployee.json.js +18 -0
  292. package/dist/i18n/en/Employee.Terminations.TerminateEmployee.json.js.map +1 -0
  293. package/dist/i18n/en/Employee.Terminations.TerminationFlow.json.js +12 -0
  294. package/dist/i18n/en/Employee.Terminations.TerminationFlow.json.js.map +1 -0
  295. package/dist/i18n/en/Employee.Terminations.TerminationSummary.json.js +20 -0
  296. package/dist/i18n/en/Employee.Terminations.TerminationSummary.json.js.map +1 -0
  297. package/dist/i18n/en/Payroll.Dismissal.json.js +22 -0
  298. package/dist/i18n/en/Payroll.Dismissal.json.js.map +1 -0
  299. package/dist/i18n/en/Payroll.OffCycleCreation.json.js +15 -11
  300. package/dist/i18n/en/Payroll.OffCycleCreation.json.js.map +1 -1
  301. package/dist/i18n/en/Payroll.OffCyclePayPeriodDateForm.json.js +1 -1
  302. package/dist/i18n/en/Payroll.PayrollEditEmployee.json.js +20 -18
  303. package/dist/i18n/en/Payroll.PayrollEditEmployee.json.js.map +1 -1
  304. package/dist/i18n/en/Payroll.PayrollList.json.js +20 -18
  305. package/dist/i18n/en/Payroll.PayrollList.json.js.map +1 -1
  306. package/dist/i18n/en/Payroll.Transition.json.js +8 -0
  307. package/dist/i18n/en/Payroll.Transition.json.js.map +1 -0
  308. package/dist/i18n/en/Payroll.TransitionCreation.json.js +26 -0
  309. package/dist/i18n/en/Payroll.TransitionCreation.json.js.map +1 -0
  310. package/dist/i18n/en/Payroll.TransitionPayrollAlert.json.js +18 -0
  311. package/dist/i18n/en/Payroll.TransitionPayrollAlert.json.js.map +1 -0
  312. package/dist/i18n/en/common.json.d.ts +2 -1
  313. package/dist/i18n/en/common.json.js +9 -9
  314. package/dist/index.d.ts +3 -2
  315. package/dist/index.js +14 -13
  316. package/dist/shared/constants.d.ts +32 -0
  317. package/dist/shared/constants.js +83 -65
  318. package/dist/shared/constants.js.map +1 -1
  319. package/dist/style.css +1 -1
  320. package/dist/types/i18next.d.ts +163 -1
  321. package/dist/types/observability.d.ts +31 -65
  322. package/dist/types/sdkError.d.ts +91 -0
  323. package/dist/types/sdkError.js +95 -0
  324. package/dist/types/sdkError.js.map +1 -0
  325. package/dist/types/sdkError.test.d.ts +1 -0
  326. package/docs/reference/endpoint-inventory.json +120 -14
  327. package/package.json +13 -13
  328. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfiguration.d.ts +0 -6
  329. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfiguration.js +0 -70
  330. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfiguration.js.map +0 -1
  331. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfigurationContext.d.ts +0 -7
  332. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfigurationContext.js +0 -6
  333. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfigurationContext.js.map +0 -1
  334. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfigurationProvider.d.ts +0 -9
  335. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfigurationProvider.js +0 -40
  336. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfigurationProvider.js.map +0 -1
  337. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/index.d.ts +0 -5
  338. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/usePayrollConfiguration.d.ts +0 -2
  339. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/usePayrollConfiguration.js +0 -12
  340. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/usePayrollConfiguration.js.map +0 -1
  341. package/dist/components/Payroll/UNSTABLE_PayrollHooks/index.d.ts +0 -2
  342. package/dist/contexts/ObservabilityProvider/observabilityUtils.d.ts +0 -5
  343. package/dist/contexts/ObservabilityProvider/observabilityUtils.js +0 -45
  344. package/dist/contexts/ObservabilityProvider/observabilityUtils.js.map +0 -1
@@ -1,85 +1,91 @@
1
- import { jsx as c } from "react/jsx-runtime";
2
- import { useState as u, useMemo as S } from "react";
3
- import { usePayrollsListSuspense as f } from "@gusto/embedded-api/react-query/payrollsList";
1
+ import { jsx as u } from "react/jsx-runtime";
2
+ import { useState as y, useMemo as S } from "react";
3
+ import { usePayrollsListSuspense as L } from "@gusto/embedded-api/react-query/payrollsList";
4
4
  import { usePayrollsCancelMutation as I } from "@gusto/embedded-api/react-query/payrollsCancel";
5
- import { useWireInRequestsListSuspense as L } from "@gusto/embedded-api/react-query/wireInRequestsList";
6
- import { ProcessingStatuses as M } from "@gusto/embedded-api/models/operations/getv1companiescompanyidpayrolls";
7
- import { PayrollHistoryPresentation as V } from "./PayrollHistoryPresentation.js";
8
- import { BaseComponent as _ } from "../../Base/Base.js";
9
- import { useBase as E } from "../../Base/useBase.js";
10
- import { componentEvents as i } from "../../../shared/constants.js";
11
- import { useComponentDictionary as F, useI18n as A } from "../../../i18n/I18n.js";
12
- function K(e) {
13
- return /* @__PURE__ */ c(_, { ...e, children: /* @__PURE__ */ c(O, { ...e, children: e.children }) });
5
+ import { useWireInRequestsListSuspense as _ } from "@gusto/embedded-api/react-query/wireInRequestsList";
6
+ import { QueryParamPayrollTypes as i, ProcessingStatuses as E } from "@gusto/embedded-api/models/operations/getv1companiescompanyidpayrolls";
7
+ import { PayrollHistoryPresentation as O } from "./PayrollHistoryPresentation.js";
8
+ import { BaseComponent as A } from "../../Base/Base.js";
9
+ import { useBase as T } from "../../Base/useBase.js";
10
+ import { componentEvents as c } from "../../../shared/constants.js";
11
+ import { useComponentDictionary as F, useI18n as M } from "../../../i18n/I18n.js";
12
+ function X(e) {
13
+ return /* @__PURE__ */ u(A, { ...e, children: /* @__PURE__ */ u(H, { ...e, children: e.children }) });
14
14
  }
15
- const H = (e) => {
16
- const t = /* @__PURE__ */ new Date(), o = /* @__PURE__ */ new Date();
17
- switch (e) {
15
+ const U = 28, V = (e) => {
16
+ const t = /* @__PURE__ */ new Date(), a = /* @__PURE__ */ new Date(), o = /* @__PURE__ */ new Date();
17
+ switch (o.setDate(t.getDate() + U), e) {
18
18
  case "3months":
19
- o.setMonth(t.getMonth() - 3);
19
+ a.setMonth(t.getMonth() - 3);
20
20
  break;
21
21
  case "6months":
22
- o.setMonth(t.getMonth() - 6);
22
+ a.setMonth(t.getMonth() - 6);
23
23
  break;
24
24
  case "year":
25
- o.setFullYear(t.getFullYear() - 1);
25
+ a.setFullYear(t.getFullYear() - 1);
26
26
  break;
27
27
  }
28
28
  return {
29
- startDate: o.toISOString().split("T")[0] || "",
30
- endDate: t.toISOString().split("T")[0] || ""
29
+ startDate: a.toISOString().split("T")[0] || "",
30
+ endDate: o.toISOString().split("T")[0] || ""
31
31
  };
32
- }, O = ({ onEvent: e, companyId: t, dictionary: o }) => {
33
- F("Payroll.PayrollHistory", o), A("Payroll.PayrollHistory");
34
- const [l, y] = u("3months"), [p, r] = u(null), { baseSubmitHandler: d } = E(), m = S(() => H(l), [l]), { data: D } = f({
32
+ }, H = ({ onEvent: e, companyId: t, dictionary: a }) => {
33
+ F("Payroll.PayrollHistory", a), M("Payroll.PayrollHistory");
34
+ const [o, p] = y("3months"), [d, r] = y(null), { baseSubmitHandler: D } = T(), m = S(() => V(o), [o]), { data: P } = L({
35
35
  companyId: t,
36
- processingStatuses: [M.Processed],
36
+ processingStatuses: [E.Processed],
37
+ payrollTypes: [
38
+ i.Regular,
39
+ i.OffCycle,
40
+ i.External
41
+ ],
42
+ includeOffCycle: !0,
37
43
  startDate: m.startDate,
38
44
  endDate: m.endDate,
39
- include: ["totals"]
40
- }), { data: P } = L({
45
+ include: ["totals", "payroll_status_meta"]
46
+ }), { data: g } = _({
41
47
  companyUuid: t
42
- }), g = P.wireInRequestList ?? [], { mutateAsync: h, isPending: R } = I(), w = D.payrollList || [];
43
- return /* @__PURE__ */ c(
44
- V,
48
+ }), R = g.wireInRequestList ?? [], { mutateAsync: h, isPending: f } = I(), C = P.payrollList || [];
49
+ return /* @__PURE__ */ u(
50
+ O,
45
51
  {
46
- payrollHistory: w,
47
- wireInRequests: g,
48
- selectedTimeFilter: l,
49
- onTimeFilterChange: y,
50
- onViewSummary: (a, s, n) => {
51
- e(i.RUN_PAYROLL_SUMMARY_VIEWED, { payrollId: a, startDate: s, endDate: n });
52
+ payrollHistory: C,
53
+ wireInRequests: R,
54
+ selectedTimeFilter: o,
55
+ onTimeFilterChange: p,
56
+ onViewSummary: (n, l, s) => {
57
+ e(c.RUN_PAYROLL_SUMMARY_VIEWED, { payrollId: n, startDate: l, endDate: s });
52
58
  },
53
- onViewReceipt: (a, s, n) => {
54
- e(i.RUN_PAYROLL_RECEIPT_VIEWED, { payrollId: a, startDate: s, endDate: n });
59
+ onViewReceipt: (n, l, s) => {
60
+ e(c.RUN_PAYROLL_RECEIPT_VIEWED, { payrollId: n, startDate: l, endDate: s });
55
61
  },
56
- onCancelPayroll: async (a) => {
57
- const s = a.payrollUuid || a.uuid;
62
+ onCancelPayroll: async (n) => {
63
+ const l = n.payrollUuid || n.uuid;
58
64
  try {
59
- await d(s, async (n) => {
60
- const C = await h({
65
+ await D(l, async (s) => {
66
+ const w = await h({
61
67
  request: {
62
68
  companyId: t,
63
- payrollId: n
69
+ payrollId: s
64
70
  }
65
71
  });
66
- e(i.RUN_PAYROLL_CANCELLED, { payrollId: n, result: C });
72
+ e(c.RUN_PAYROLL_CANCELLED, { payrollId: s, result: w });
67
73
  });
68
74
  } finally {
69
75
  r(null);
70
76
  }
71
77
  },
72
- cancelDialogItem: p,
78
+ cancelDialogItem: d,
73
79
  onCancelDialogOpen: r,
74
80
  onCancelDialogClose: () => {
75
81
  r(null);
76
82
  },
77
- isLoading: R
83
+ isLoading: f
78
84
  }
79
85
  );
80
86
  };
81
87
  export {
82
- K as PayrollHistory,
83
- O as Root
88
+ X as PayrollHistory,
89
+ H as Root
84
90
  };
85
91
  //# sourceMappingURL=PayrollHistory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PayrollHistory.js","sources":["../../../../src/components/Payroll/PayrollHistory/PayrollHistory.tsx"],"sourcesContent":["import { useState, useMemo } from 'react'\nimport { usePayrollsListSuspense } 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 { ProcessingStatuses } from '@gusto/embedded-api/models/operations/getv1companiescompanyidpayrolls'\nimport type { Payroll } from '@gusto/embedded-api/models/components/payroll'\nimport { PayrollHistoryPresentation } from './PayrollHistoryPresentation'\nimport type { BaseComponentInterface } from '@/components/Base/Base'\nimport { BaseComponent } from '@/components/Base/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { componentEvents } from '@/shared/constants'\nimport { useComponentDictionary, useI18n } from '@/i18n'\n\nexport type TimeFilterOption = '3months' | '6months' | 'year'\n\nexport interface PayrollHistoryProps extends BaseComponentInterface<'Payroll.PayrollHistory'> {\n companyId: string\n}\n\nexport function PayrollHistory(props: PayrollHistoryProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nconst getDateRangeForFilter = (\n filter: TimeFilterOption,\n): { startDate: string; endDate: string } => {\n const now = new Date()\n const startDate = new Date()\n\n switch (filter) {\n case '3months':\n startDate.setMonth(now.getMonth() - 3)\n break\n case '6months':\n startDate.setMonth(now.getMonth() - 6)\n break\n case 'year':\n startDate.setFullYear(now.getFullYear() - 1)\n break\n }\n\n return {\n startDate: startDate.toISOString().split('T')[0] || '',\n endDate: now.toISOString().split('T')[0] || '',\n }\n}\n\nexport const Root = ({ onEvent, companyId, dictionary }: PayrollHistoryProps) => {\n useComponentDictionary('Payroll.PayrollHistory', dictionary)\n useI18n('Payroll.PayrollHistory')\n\n const [selectedTimeFilter, setSelectedTimeFilter] = useState<TimeFilterOption>('3months')\n const [cancelDialogItem, setCancelDialogItem] = useState<Payroll | null>(null)\n const { baseSubmitHandler } = useBase()\n\n const dateRange = useMemo(() => getDateRangeForFilter(selectedTimeFilter), [selectedTimeFilter])\n\n const { data: payrollsData } = usePayrollsListSuspense({\n companyId,\n processingStatuses: [ProcessingStatuses.Processed],\n startDate: dateRange.startDate,\n endDate: dateRange.endDate,\n include: ['totals'],\n })\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 payrollHistory = payrollsData.payrollList || []\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 return (\n <PayrollHistoryPresentation\n payrollHistory={payrollHistory}\n wireInRequests={wireInRequests}\n selectedTimeFilter={selectedTimeFilter}\n onTimeFilterChange={setSelectedTimeFilter}\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 />\n )\n}\n"],"names":["PayrollHistory","props","jsx","BaseComponent","Root","getDateRangeForFilter","filter","now","startDate","onEvent","companyId","dictionary","useComponentDictionary","useI18n","selectedTimeFilter","setSelectedTimeFilter","useState","cancelDialogItem","setCancelDialogItem","baseSubmitHandler","useBase","dateRange","useMemo","payrollsData","usePayrollsListSuspense","ProcessingStatuses","wireInRequestsData","useWireInRequestsListSuspense","wireInRequests","cancelPayroll","isCancelling","usePayrollsCancelMutation","payrollHistory","PayrollHistoryPresentation","payrollId","endDate","componentEvents","item","id","result"],"mappings":"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"}
1
+ {"version":3,"file":"PayrollHistory.js","sources":["../../../../src/components/Payroll/PayrollHistory/PayrollHistory.tsx"],"sourcesContent":["import { useState, useMemo } from 'react'\nimport { usePayrollsListSuspense } 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} from '@gusto/embedded-api/models/operations/getv1companiescompanyidpayrolls'\nimport type { Payroll } from '@gusto/embedded-api/models/components/payroll'\nimport { PayrollHistoryPresentation } from './PayrollHistoryPresentation'\nimport type { BaseComponentInterface } from '@/components/Base/Base'\nimport { BaseComponent } from '@/components/Base/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { componentEvents } from '@/shared/constants'\nimport { useComponentDictionary, useI18n } from '@/i18n'\n\nexport type TimeFilterOption = '3months' | '6months' | 'year'\n\nexport interface PayrollHistoryProps extends BaseComponentInterface<'Payroll.PayrollHistory'> {\n companyId: string\n}\n\nexport function PayrollHistory(props: PayrollHistoryProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nconst FUTURE_LOOKAHEAD_DAYS = 28\n\nconst getDateRangeForFilter = (\n filter: TimeFilterOption,\n): { startDate: string; endDate: string } => {\n const now = new Date()\n const startDate = new Date()\n const endDate = new Date()\n\n endDate.setDate(now.getDate() + FUTURE_LOOKAHEAD_DAYS)\n\n switch (filter) {\n case '3months':\n startDate.setMonth(now.getMonth() - 3)\n break\n case '6months':\n startDate.setMonth(now.getMonth() - 6)\n break\n case 'year':\n startDate.setFullYear(now.getFullYear() - 1)\n break\n }\n\n return {\n startDate: startDate.toISOString().split('T')[0] || '',\n endDate: endDate.toISOString().split('T')[0] || '',\n }\n}\n\nexport const Root = ({ onEvent, companyId, dictionary }: PayrollHistoryProps) => {\n useComponentDictionary('Payroll.PayrollHistory', dictionary)\n useI18n('Payroll.PayrollHistory')\n\n const [selectedTimeFilter, setSelectedTimeFilter] = useState<TimeFilterOption>('3months')\n const [cancelDialogItem, setCancelDialogItem] = useState<Payroll | null>(null)\n const { baseSubmitHandler } = useBase()\n\n const dateRange = useMemo(() => getDateRangeForFilter(selectedTimeFilter), [selectedTimeFilter])\n\n const { data: payrollsData } = usePayrollsListSuspense({\n companyId,\n processingStatuses: [ProcessingStatuses.Processed],\n payrollTypes: [\n QueryParamPayrollTypes.Regular,\n QueryParamPayrollTypes.OffCycle,\n QueryParamPayrollTypes.External,\n ],\n includeOffCycle: true,\n startDate: dateRange.startDate,\n endDate: dateRange.endDate,\n include: ['totals', 'payroll_status_meta'],\n })\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 payrollHistory = payrollsData.payrollList || []\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 return (\n <PayrollHistoryPresentation\n payrollHistory={payrollHistory}\n wireInRequests={wireInRequests}\n selectedTimeFilter={selectedTimeFilter}\n onTimeFilterChange={setSelectedTimeFilter}\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 />\n )\n}\n"],"names":["PayrollHistory","props","jsx","BaseComponent","Root","FUTURE_LOOKAHEAD_DAYS","getDateRangeForFilter","filter","now","startDate","endDate","onEvent","companyId","dictionary","useComponentDictionary","useI18n","selectedTimeFilter","setSelectedTimeFilter","useState","cancelDialogItem","setCancelDialogItem","baseSubmitHandler","useBase","dateRange","useMemo","payrollsData","usePayrollsListSuspense","ProcessingStatuses","QueryParamPayrollTypes","wireInRequestsData","useWireInRequestsListSuspense","wireInRequests","cancelPayroll","isCancelling","usePayrollsCancelMutation","payrollHistory","PayrollHistoryPresentation","payrollId","componentEvents","item","id","result"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { jsxs as l, jsx as r } from "react/jsx-runtime";
2
- import { useTranslation as U } from "react-i18next";
3
- import { getPayrollType as L, calculateTotalPayroll as N, canCancelPayroll as O } from "../helpers.js";
2
+ import { useTranslation as L } from "react-i18next";
3
+ import { getPayrollTypeLabel as U, calculateTotalPayroll as N, canCancelPayroll as O } from "../helpers.js";
4
4
  import j from "./PayrollHistoryPresentation.module.scss.js";
5
5
  import { Flex as n } from "../../Common/Flex/Flex.js";
6
6
  import "classnames";
@@ -24,13 +24,13 @@ const de = ({
24
24
  onViewReceipt: P,
25
25
  onCancelPayroll: D,
26
26
  cancelDialogItem: o,
27
- onCancelDialogOpen: g,
28
- onCancelDialogClose: b,
27
+ onCancelDialogOpen: b,
28
+ onCancelDialogClose: g,
29
29
  isLoading: C = !1
30
30
  }) => {
31
31
  const { Heading: d, Text: s, Select: F, Dialog: S } = V();
32
32
  I("Payroll.PayrollHistory");
33
- const { t } = U("Payroll.PayrollHistory"), m = Y(), v = [
33
+ const { t } = L("Payroll.PayrollHistory"), m = Y(), v = [
34
34
  { value: "3months", label: t("timeFilter.options.3months") },
35
35
  { value: "6months", label: t("timeFilter.options.6months") },
36
36
  { value: "year", label: t("timeFilter.options.year") }
@@ -50,7 +50,7 @@ const de = ({
50
50
  }), H = T.format(a);
51
51
  return `${R.format(a)} on ${H}`;
52
52
  }, x = (e) => {
53
- g(e);
53
+ b(e);
54
54
  }, k = () => {
55
55
  o && D(o);
56
56
  }, A = (e) => {
@@ -122,7 +122,7 @@ const de = ({
122
122
  },
123
123
  {
124
124
  title: t("columns.type"),
125
- render: (e) => L(e)
125
+ render: (e) => U(e)
126
126
  },
127
127
  {
128
128
  title: t("columns.payDate"),
@@ -150,7 +150,7 @@ const de = ({
150
150
  S,
151
151
  {
152
152
  isOpen: !!o,
153
- onClose: b,
153
+ onClose: g,
154
154
  onPrimaryActionClick: k,
155
155
  isDestructive: !0,
156
156
  isPrimaryActionLoading: C,
@@ -1 +1 @@
1
- {"version":3,"file":"PayrollHistoryPresentation.js","sources":["../../../../src/components/Payroll/PayrollHistory/PayrollHistoryPresentation.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport type { Payroll } from '@gusto/embedded-api/models/components/payroll'\nimport type { WireInRequest } from '@gusto/embedded-api/models/components/wireinrequest'\nimport { PayrollStatusBadges } from '../PayrollStatusBadges'\nimport { getPayrollType, calculateTotalPayroll, canCancelPayroll } from '../helpers'\nimport type { TimeFilterOption } from './PayrollHistory'\nimport styles from './PayrollHistoryPresentation.module.scss'\nimport type { MenuItem } from '@/components/Common/UI/Menu/MenuTypes'\nimport { DataView, Flex } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { HamburgerMenu } from '@/components/Common/HamburgerMenu'\nimport { formatNumberAsCurrency } from '@/helpers/formattedStrings'\nimport { useI18n } from '@/i18n'\nimport { useDateFormatter } from '@/hooks/useDateFormatter'\nimport TrashcanIcon from '@/assets/icons/trashcan.svg?react'\nimport FileIcon from '@/assets/icons/icon-file-outline.svg?react'\nimport ReceiptIcon from '@/assets/icons/icon-receipt-outline.svg?react'\n\ninterface PayrollHistoryPresentationProps {\n payrollHistory: Payroll[]\n wireInRequests: WireInRequest[]\n selectedTimeFilter: TimeFilterOption\n onTimeFilterChange: (value: TimeFilterOption) => void\n onViewSummary: (payrollId: string, startDate?: string, endDate?: string) => void\n onViewReceipt: (payrollId: string, startDate?: string, endDate?: string) => void\n onCancelPayroll: (item: Payroll) => void\n cancelDialogItem: Payroll | null\n onCancelDialogOpen: (item: Payroll) => void\n onCancelDialogClose: () => void\n isLoading?: boolean\n}\n\nexport const PayrollHistoryPresentation = ({\n payrollHistory,\n wireInRequests,\n selectedTimeFilter,\n onTimeFilterChange,\n onViewSummary,\n onViewReceipt,\n onCancelPayroll,\n cancelDialogItem,\n onCancelDialogOpen,\n onCancelDialogClose,\n isLoading = false,\n}: PayrollHistoryPresentationProps) => {\n const { Heading, Text, Select, Dialog } = useComponentContext()\n useI18n('Payroll.PayrollHistory')\n const { t } = useTranslation('Payroll.PayrollHistory')\n const dateFormatter = useDateFormatter()\n\n const timeFilterOptions = [\n { value: '3months', label: t('timeFilter.options.3months') },\n { value: '6months', label: t('timeFilter.options.6months') },\n { value: 'year', label: t('timeFilter.options.year') },\n ]\n\n const formatDeadlineForDialog = (item: Payroll): string => {\n const deadline = item.payrollDeadline\n if (!deadline) return ''\n\n const deadlineDate = new Date(deadline)\n const timeZone = 'America/New_York'\n\n const formatter = new Intl.DateTimeFormat('en-US', {\n weekday: 'short',\n month: 'short',\n day: 'numeric',\n timeZone,\n })\n\n const timeFormatter = new Intl.DateTimeFormat('en-US', {\n hour: 'numeric',\n minute: '2-digit',\n timeZoneName: 'short',\n timeZone,\n })\n\n const dateStr = formatter.format(deadlineDate)\n const timeStr = timeFormatter.format(deadlineDate)\n\n return `${timeStr} on ${dateStr}`\n }\n\n const handleCancelClick = (item: Payroll) => {\n onCancelDialogOpen(item)\n }\n\n const handleConfirmCancel = () => {\n if (cancelDialogItem) {\n onCancelPayroll(cancelDialogItem)\n }\n }\n\n const getMenuItems = (item: Payroll): MenuItem[] => {\n const payrollId = item.payrollUuid || item.uuid!\n const items: MenuItem[] = [\n {\n label: t('menu.viewSummary'),\n icon: <FileIcon aria-hidden />,\n onClick: () => {\n onViewSummary(payrollId, item.payPeriod?.startDate, item.payPeriod?.endDate)\n },\n },\n {\n label: t('menu.viewReceipt'),\n icon: <ReceiptIcon aria-hidden />,\n onClick: () => {\n onViewReceipt(payrollId, item.payPeriod?.startDate, item.payPeriod?.endDate)\n },\n },\n ]\n\n if (canCancelPayroll(item)) {\n items.push({\n label: t('menu.cancelPayroll'),\n icon: <TrashcanIcon aria-hidden />,\n onClick: () => {\n handleCancelClick(item)\n },\n 'data-destructive': 'true',\n })\n }\n\n return items\n }\n\n if (payrollHistory.length === 0) {\n return (\n <Flex flexDirection=\"column\" alignItems=\"center\" gap={24}>\n <Heading as=\"h3\">{t('emptyState.title')}</Heading>\n <Text>{t('emptyState.description')}</Text>\n </Flex>\n )\n }\n\n return (\n <Flex flexDirection=\"column\" gap={16}>\n <Flex\n flexDirection={{ base: 'column', medium: 'row' }}\n justifyContent=\"space-between\"\n alignItems=\"flex-start\"\n gap={{ base: 12, medium: 24 }}\n >\n <Flex>\n <Heading as=\"h2\">{t('title')}</Heading>\n </Flex>\n <div className={styles.timeFilterContainer}>\n <Select\n value={selectedTimeFilter}\n onChange={(value: string) => {\n onTimeFilterChange(value as TimeFilterOption)\n }}\n options={timeFilterOptions}\n label={t('timeFilter.placeholder')}\n shouldVisuallyHideLabel\n isRequired\n />\n </div>\n </Flex>\n\n <DataView\n label={t('dataView.label')}\n columns={[\n {\n title: t('columns.payPeriod'),\n render: (item: Payroll) =>\n dateFormatter.formatPayPeriodRange(\n item.payPeriod?.startDate,\n item.payPeriod?.endDate,\n ),\n },\n {\n title: t('columns.type'),\n render: (item: Payroll) => getPayrollType(item),\n },\n {\n title: t('columns.payDate'),\n render: (item: Payroll) => dateFormatter.formatShortWithYear(item.checkDate),\n },\n {\n title: t('columns.status'),\n render: (item: Payroll) => {\n const wireInRequest = wireInRequests.find(\n wire => wire.paymentUuid === item.payrollUuid,\n )\n return <PayrollStatusBadges payroll={item} wireInRequest={wireInRequest} />\n },\n },\n {\n title: t('columns.totalPayroll'),\n render: (item: Payroll) => formatNumberAsCurrency(calculateTotalPayroll(item)),\n },\n ]}\n data={payrollHistory}\n itemMenu={(item: Payroll) => <HamburgerMenu items={getMenuItems(item)} />}\n />\n\n <Dialog\n isOpen={!!cancelDialogItem}\n onClose={onCancelDialogClose}\n onPrimaryActionClick={handleConfirmCancel}\n isDestructive\n isPrimaryActionLoading={isLoading}\n primaryActionLabel={t('cancelDialog.primaryAction')}\n closeActionLabel={t('cancelDialog.secondaryAction')}\n title={\n cancelDialogItem\n ? t('cancelDialog.title', {\n payPeriod: dateFormatter.formatPayPeriodRange(\n cancelDialogItem.payPeriod?.startDate,\n cancelDialogItem.payPeriod?.endDate,\n ),\n })\n : ''\n }\n >\n {cancelDialogItem && (\n <Flex flexDirection=\"column\" gap={16}>\n <Text>{t('cancelDialog.body')}</Text>\n {cancelDialogItem.payrollDeadline && (\n <Text>\n {t('cancelDialog.deadline', {\n deadline: formatDeadlineForDialog(cancelDialogItem),\n })}\n </Text>\n )}\n </Flex>\n )}\n </Dialog>\n </Flex>\n )\n}\n"],"names":["PayrollHistoryPresentation","payrollHistory","wireInRequests","selectedTimeFilter","onTimeFilterChange","onViewSummary","onViewReceipt","onCancelPayroll","cancelDialogItem","onCancelDialogOpen","onCancelDialogClose","isLoading","Heading","Text","Select","Dialog","useComponentContext","useI18n","useTranslation","dateFormatter","useDateFormatter","timeFilterOptions","formatDeadlineForDialog","item","deadline","deadlineDate","timeZone","formatter","timeFormatter","dateStr","handleCancelClick","handleConfirmCancel","getMenuItems","payrollId","items","jsx","FileIcon","ReceiptIcon","canCancelPayroll","TrashcanIcon","Flex","jsxs","styles","value","DataView","getPayrollType","wireInRequest","wire","PayrollStatusBadges","formatNumberAsCurrency","calculateTotalPayroll","HamburgerMenu"],"mappings":"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"}
1
+ {"version":3,"file":"PayrollHistoryPresentation.js","sources":["../../../../src/components/Payroll/PayrollHistory/PayrollHistoryPresentation.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport type { Payroll } from '@gusto/embedded-api/models/components/payroll'\nimport type { WireInRequest } from '@gusto/embedded-api/models/components/wireinrequest'\nimport { PayrollStatusBadges } from '../PayrollStatusBadges'\nimport { getPayrollTypeLabel, calculateTotalPayroll, canCancelPayroll } from '../helpers'\nimport type { TimeFilterOption } from './PayrollHistory'\nimport styles from './PayrollHistoryPresentation.module.scss'\nimport type { MenuItem } from '@/components/Common/UI/Menu/MenuTypes'\nimport { DataView, Flex } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { HamburgerMenu } from '@/components/Common/HamburgerMenu'\nimport { formatNumberAsCurrency } from '@/helpers/formattedStrings'\nimport { useI18n } from '@/i18n'\nimport { useDateFormatter } from '@/hooks/useDateFormatter'\nimport TrashcanIcon from '@/assets/icons/trashcan.svg?react'\nimport FileIcon from '@/assets/icons/icon-file-outline.svg?react'\nimport ReceiptIcon from '@/assets/icons/icon-receipt-outline.svg?react'\n\ninterface PayrollHistoryPresentationProps {\n payrollHistory: Payroll[]\n wireInRequests: WireInRequest[]\n selectedTimeFilter: TimeFilterOption\n onTimeFilterChange: (value: TimeFilterOption) => void\n onViewSummary: (payrollId: string, startDate?: string, endDate?: string) => void\n onViewReceipt: (payrollId: string, startDate?: string, endDate?: string) => void\n onCancelPayroll: (item: Payroll) => void\n cancelDialogItem: Payroll | null\n onCancelDialogOpen: (item: Payroll) => void\n onCancelDialogClose: () => void\n isLoading?: boolean\n}\n\nexport const PayrollHistoryPresentation = ({\n payrollHistory,\n wireInRequests,\n selectedTimeFilter,\n onTimeFilterChange,\n onViewSummary,\n onViewReceipt,\n onCancelPayroll,\n cancelDialogItem,\n onCancelDialogOpen,\n onCancelDialogClose,\n isLoading = false,\n}: PayrollHistoryPresentationProps) => {\n const { Heading, Text, Select, Dialog } = useComponentContext()\n useI18n('Payroll.PayrollHistory')\n const { t } = useTranslation('Payroll.PayrollHistory')\n const dateFormatter = useDateFormatter()\n\n const timeFilterOptions = [\n { value: '3months', label: t('timeFilter.options.3months') },\n { value: '6months', label: t('timeFilter.options.6months') },\n { value: 'year', label: t('timeFilter.options.year') },\n ]\n\n const formatDeadlineForDialog = (item: Payroll): string => {\n const deadline = item.payrollDeadline\n if (!deadline) return ''\n\n const deadlineDate = new Date(deadline)\n const timeZone = 'America/New_York'\n\n const formatter = new Intl.DateTimeFormat('en-US', {\n weekday: 'short',\n month: 'short',\n day: 'numeric',\n timeZone,\n })\n\n const timeFormatter = new Intl.DateTimeFormat('en-US', {\n hour: 'numeric',\n minute: '2-digit',\n timeZoneName: 'short',\n timeZone,\n })\n\n const dateStr = formatter.format(deadlineDate)\n const timeStr = timeFormatter.format(deadlineDate)\n\n return `${timeStr} on ${dateStr}`\n }\n\n const handleCancelClick = (item: Payroll) => {\n onCancelDialogOpen(item)\n }\n\n const handleConfirmCancel = () => {\n if (cancelDialogItem) {\n onCancelPayroll(cancelDialogItem)\n }\n }\n\n const getMenuItems = (item: Payroll): MenuItem[] => {\n const payrollId = item.payrollUuid || item.uuid!\n const items: MenuItem[] = [\n {\n label: t('menu.viewSummary'),\n icon: <FileIcon aria-hidden />,\n onClick: () => {\n onViewSummary(payrollId, item.payPeriod?.startDate, item.payPeriod?.endDate)\n },\n },\n {\n label: t('menu.viewReceipt'),\n icon: <ReceiptIcon aria-hidden />,\n onClick: () => {\n onViewReceipt(payrollId, item.payPeriod?.startDate, item.payPeriod?.endDate)\n },\n },\n ]\n\n if (canCancelPayroll(item)) {\n items.push({\n label: t('menu.cancelPayroll'),\n icon: <TrashcanIcon aria-hidden />,\n onClick: () => {\n handleCancelClick(item)\n },\n 'data-destructive': 'true',\n })\n }\n\n return items\n }\n\n if (payrollHistory.length === 0) {\n return (\n <Flex flexDirection=\"column\" alignItems=\"center\" gap={24}>\n <Heading as=\"h3\">{t('emptyState.title')}</Heading>\n <Text>{t('emptyState.description')}</Text>\n </Flex>\n )\n }\n\n return (\n <Flex flexDirection=\"column\" gap={16}>\n <Flex\n flexDirection={{ base: 'column', medium: 'row' }}\n justifyContent=\"space-between\"\n alignItems=\"flex-start\"\n gap={{ base: 12, medium: 24 }}\n >\n <Flex>\n <Heading as=\"h2\">{t('title')}</Heading>\n </Flex>\n <div className={styles.timeFilterContainer}>\n <Select\n value={selectedTimeFilter}\n onChange={(value: string) => {\n onTimeFilterChange(value as TimeFilterOption)\n }}\n options={timeFilterOptions}\n label={t('timeFilter.placeholder')}\n shouldVisuallyHideLabel\n isRequired\n />\n </div>\n </Flex>\n\n <DataView\n label={t('dataView.label')}\n columns={[\n {\n title: t('columns.payPeriod'),\n render: (item: Payroll) =>\n dateFormatter.formatPayPeriodRange(\n item.payPeriod?.startDate,\n item.payPeriod?.endDate,\n ),\n },\n {\n title: t('columns.type'),\n render: (item: Payroll) => getPayrollTypeLabel(item),\n },\n {\n title: t('columns.payDate'),\n render: (item: Payroll) => dateFormatter.formatShortWithYear(item.checkDate),\n },\n {\n title: t('columns.status'),\n render: (item: Payroll) => {\n const wireInRequest = wireInRequests.find(\n wire => wire.paymentUuid === item.payrollUuid,\n )\n return <PayrollStatusBadges payroll={item} wireInRequest={wireInRequest} />\n },\n },\n {\n title: t('columns.totalPayroll'),\n render: (item: Payroll) => formatNumberAsCurrency(calculateTotalPayroll(item)),\n },\n ]}\n data={payrollHistory}\n itemMenu={(item: Payroll) => <HamburgerMenu items={getMenuItems(item)} />}\n />\n\n <Dialog\n isOpen={!!cancelDialogItem}\n onClose={onCancelDialogClose}\n onPrimaryActionClick={handleConfirmCancel}\n isDestructive\n isPrimaryActionLoading={isLoading}\n primaryActionLabel={t('cancelDialog.primaryAction')}\n closeActionLabel={t('cancelDialog.secondaryAction')}\n title={\n cancelDialogItem\n ? t('cancelDialog.title', {\n payPeriod: dateFormatter.formatPayPeriodRange(\n cancelDialogItem.payPeriod?.startDate,\n cancelDialogItem.payPeriod?.endDate,\n ),\n })\n : ''\n }\n >\n {cancelDialogItem && (\n <Flex flexDirection=\"column\" gap={16}>\n <Text>{t('cancelDialog.body')}</Text>\n {cancelDialogItem.payrollDeadline && (\n <Text>\n {t('cancelDialog.deadline', {\n deadline: formatDeadlineForDialog(cancelDialogItem),\n })}\n </Text>\n )}\n </Flex>\n )}\n </Dialog>\n </Flex>\n )\n}\n"],"names":["PayrollHistoryPresentation","payrollHistory","wireInRequests","selectedTimeFilter","onTimeFilterChange","onViewSummary","onViewReceipt","onCancelPayroll","cancelDialogItem","onCancelDialogOpen","onCancelDialogClose","isLoading","Heading","Text","Select","Dialog","useComponentContext","useI18n","useTranslation","dateFormatter","useDateFormatter","timeFilterOptions","formatDeadlineForDialog","item","deadline","deadlineDate","timeZone","formatter","timeFormatter","dateStr","handleCancelClick","handleConfirmCancel","getMenuItems","payrollId","items","jsx","FileIcon","ReceiptIcon","canCancelPayroll","TrashcanIcon","Flex","jsxs","styles","value","DataView","getPayrollTypeLabel","wireInRequest","wire","PayrollStatusBadges","formatNumberAsCurrency","calculateTotalPayroll","HamburgerMenu"],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import { jsx as r, jsxs as k } from "react/jsx-runtime";
2
2
  import { useState as w } from "react";
3
3
  import { useTranslation as g } from "react-i18next";
4
- import { useWireInRequestsListSuspense as D } from "@gusto/embedded-api/react-query/wireInRequestsList";
5
- import { usePayrollsGetBlockersSuspense as v } from "@gusto/embedded-api/react-query/payrollsGetBlockers";
6
- import { PayrollHistory as A } from "../PayrollHistory/PayrollHistory.js";
4
+ import { useWireInRequestsListSuspense as A } from "@gusto/embedded-api/react-query/wireInRequestsList";
5
+ import { usePayrollsGetBlockersSuspense as D } from "@gusto/embedded-api/react-query/payrollsGetBlockers";
6
+ import { PayrollHistory as v } from "../PayrollHistory/PayrollHistory.js";
7
7
  import { PayrollList as E } from "../PayrollList/PayrollList.js";
8
8
  import { PayrollOverview as x } from "../PayrollOverview/PayrollOverview.js";
9
9
  import { PayrollReceipts as _ } from "../PayrollReceipts/PayrollReceipts.js";
@@ -15,27 +15,28 @@ import { useComponentContext as T } from "../../../contexts/ComponentAdapter/use
15
15
  import { ensureRequired as t } from "../../../helpers/ensureRequired.js";
16
16
  import { Flex as U } from "../../Common/Flex/Flex.js";
17
17
  import { componentEvents as c } from "../../../shared/constants.js";
18
- function oo() {
18
+ import { TransitionPayrollAlert as W } from "../TransitionPayrollAlert/TransitionPayrollAlert.js";
19
+ function ro() {
19
20
  const {
20
21
  companyId: o,
21
22
  onEvent: e,
22
23
  selectedTab: n = "run-payroll",
23
- ConfirmWireDetailsComponent: a = h,
24
+ ConfirmWireDetailsComponent: s = h,
24
25
  showPayrollCancelledAlert: i
25
- } = m(), [p, u] = w(n), { Tabs: y, Alert: d } = T();
26
+ } = m(), [p, y] = w(n), { Tabs: u, Alert: d } = T();
26
27
  S("Payroll.PayrollLanding");
27
- const { t: l } = g("Payroll.PayrollLanding"), { data: f } = D({
28
+ const { t: l } = g("Payroll.PayrollLanding"), { data: f } = A({
28
29
  companyUuid: t(o)
29
30
  }), L = (f.wireInRequestList || []).some(
30
- (s) => s.status === "awaiting_funds"
31
+ (a) => a.status === "awaiting_funds"
31
32
  ), C = () => {
32
33
  e(c.RUN_PAYROLL_CANCELLED_ALERT_DISMISSED);
33
- }, { data: P } = v({
34
+ }, { data: P } = D({
34
35
  companyUuid: t(o)
35
36
  }), I = (P.payrollBlockers ?? []).map(
36
- (s) => ({
37
- key: s.key ?? "unknown",
38
- message: s.message
37
+ (a) => ({
38
+ key: a.key ?? "unknown",
39
+ message: a.message
39
40
  })
40
41
  ), b = () => {
41
42
  e(c.RUN_PAYROLL_BLOCKERS_VIEW_ALL);
@@ -48,7 +49,7 @@ function oo() {
48
49
  {
49
50
  id: "payroll-history",
50
51
  label: l("tabs.payrollHistory"),
51
- content: /* @__PURE__ */ r(A, { companyId: t(o), onEvent: e })
52
+ content: /* @__PURE__ */ r(v, { companyId: t(o), onEvent: e })
52
53
  }
53
54
  ];
54
55
  return /* @__PURE__ */ k(U, { flexDirection: "column", gap: 32, children: [
@@ -60,20 +61,21 @@ function oo() {
60
61
  onDismiss: C
61
62
  }
62
63
  ),
63
- L && /* @__PURE__ */ r(a, { companyId: t(o), onEvent: e }),
64
+ L && /* @__PURE__ */ r(s, { companyId: t(o), onEvent: e }),
65
+ /* @__PURE__ */ r(W, { companyId: t(o), onEvent: e }),
64
66
  /* @__PURE__ */ r(B, { blockers: I, onViewBlockersClick: b }),
65
67
  /* @__PURE__ */ r(
66
- y,
68
+ u,
67
69
  {
68
70
  tabs: R,
69
71
  selectedId: p,
70
- onSelectionChange: u,
72
+ onSelectionChange: y,
71
73
  "aria-label": l("aria.tabNavigation")
72
74
  }
73
75
  )
74
76
  ] });
75
77
  }
76
- function eo() {
78
+ function to() {
77
79
  const { payrollUuid: o, onEvent: e, withReimbursements: n } = m();
78
80
  return /* @__PURE__ */ r(
79
81
  _,
@@ -84,22 +86,22 @@ function eo() {
84
86
  }
85
87
  );
86
88
  }
87
- function ro() {
88
- const { companyId: o, payrollUuid: e, onEvent: n, withReimbursements: a, ConfirmWireDetailsComponent: i } = m();
89
+ function no() {
90
+ const { companyId: o, payrollUuid: e, onEvent: n, withReimbursements: s, ConfirmWireDetailsComponent: i } = m();
89
91
  return /* @__PURE__ */ r(
90
92
  x,
91
93
  {
92
94
  onEvent: n,
93
95
  companyId: t(o),
94
96
  payrollId: t(e),
95
- withReimbursements: a,
97
+ withReimbursements: s,
96
98
  ConfirmWireDetailsComponent: i
97
99
  }
98
100
  );
99
101
  }
100
102
  export {
101
- ro as PayrollLandingOverviewContextual,
102
- eo as PayrollLandingReceiptsContextual,
103
- oo as PayrollLandingTabsContextual
103
+ no as PayrollLandingOverviewContextual,
104
+ to as PayrollLandingReceiptsContextual,
105
+ ro as PayrollLandingTabsContextual
104
106
  };
105
107
  //# sourceMappingURL=PayrollLandingFlowComponents.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PayrollLandingFlowComponents.js","sources":["../../../../src/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.tsx"],"sourcesContent":["import { useState } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport { useWireInRequestsListSuspense } from '@gusto/embedded-api/react-query/wireInRequestsList'\nimport { usePayrollsGetBlockersSuspense } from '@gusto/embedded-api/react-query/payrollsGetBlockers'\nimport { PayrollHistory } from '../PayrollHistory/PayrollHistory'\nimport { PayrollList } from '../PayrollList/PayrollList'\nimport { PayrollOverview } from '../PayrollOverview/PayrollOverview'\nimport { PayrollReceipts } from '../PayrollReceipts/PayrollReceipts'\nimport {\n ConfirmWireDetails,\n type ConfirmWireDetailsComponentType,\n} from '../ConfirmWireDetails/ConfirmWireDetails'\nimport type { ApiPayrollBlocker } from '../PayrollBlocker/payrollHelpers'\nimport { PayrollBlockerAlerts } from '../PayrollBlocker/components/PayrollBlockerAlerts'\nimport type { BaseComponentInterface } from '@/components/Base/Base'\nimport { useFlow } from '@/components/Flow/useFlow'\nimport { useI18n } from '@/i18n'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { ensureRequired } from '@/helpers/ensureRequired'\nimport type { FlowContextInterface } from '@/components/Flow/useFlow'\nimport { Flex } from '@/components/Common/Flex/Flex'\nimport { componentEvents } from '@/shared/constants'\n\nexport interface PayrollLandingFlowProps extends BaseComponentInterface<'Payroll.PayrollLanding'> {\n companyId: string\n withReimbursements?: boolean\n ConfirmWireDetailsComponent?: ConfirmWireDetailsComponentType\n showPayrollCancelledAlert?: boolean\n}\n\nexport interface PayrollLandingFlowContextInterface extends FlowContextInterface {\n component: (() => React.JSX.Element) | null\n companyId: string\n payrollUuid?: string\n previousState?: 'tabs' | 'overview'\n selectedTab?: string\n withReimbursements: boolean\n ConfirmWireDetailsComponent?: ConfirmWireDetailsComponentType\n startDate?: string\n endDate?: string\n showPayrollCancelledAlert?: boolean\n}\n\nexport function PayrollLandingTabsContextual() {\n const {\n companyId,\n onEvent,\n selectedTab = 'run-payroll',\n ConfirmWireDetailsComponent = ConfirmWireDetails,\n showPayrollCancelledAlert,\n } = useFlow<PayrollLandingFlowContextInterface>()\n const [currentTab, setCurrentTab] = useState(selectedTab)\n const { Tabs, Alert } = useComponentContext()\n\n useI18n('Payroll.PayrollLanding')\n const { t } = useTranslation('Payroll.PayrollLanding')\n\n const { data: wireInRequestsData } = useWireInRequestsListSuspense({\n companyUuid: ensureRequired(companyId),\n })\n\n const hasActiveWireInRequests = (wireInRequestsData.wireInRequestList || []).some(\n r => r.status === 'awaiting_funds',\n )\n\n const handleDismissPayrollCancelledAlert = () => {\n onEvent(componentEvents.RUN_PAYROLL_CANCELLED_ALERT_DISMISSED)\n }\n\n const { data: blockersData } = usePayrollsGetBlockersSuspense({\n companyUuid: ensureRequired(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 onViewBlockers = () => {\n onEvent(componentEvents.RUN_PAYROLL_BLOCKERS_VIEW_ALL)\n }\n\n const tabs = [\n {\n id: 'run-payroll',\n label: t('tabs.runPayroll'),\n content: <PayrollList companyId={ensureRequired(companyId)} onEvent={onEvent} />,\n },\n {\n id: 'payroll-history',\n label: t('tabs.payrollHistory'),\n content: <PayrollHistory companyId={ensureRequired(companyId)} onEvent={onEvent} />,\n },\n ]\n\n return (\n <Flex flexDirection=\"column\" gap={32}>\n {showPayrollCancelledAlert && (\n <Alert\n status=\"success\"\n label={t('alerts.payrollCancelled')}\n onDismiss={handleDismissPayrollCancelledAlert}\n />\n )}\n {hasActiveWireInRequests && (\n <ConfirmWireDetailsComponent companyId={ensureRequired(companyId)} onEvent={onEvent} />\n )}\n <PayrollBlockerAlerts blockers={blockers} onViewBlockersClick={onViewBlockers} />\n <Tabs\n tabs={tabs}\n selectedId={currentTab}\n onSelectionChange={setCurrentTab}\n aria-label={t('aria.tabNavigation')}\n />\n </Flex>\n )\n}\n\nexport function PayrollLandingReceiptsContextual() {\n const { payrollUuid, onEvent, withReimbursements } = useFlow<PayrollLandingFlowContextInterface>()\n\n return (\n <PayrollReceipts\n onEvent={onEvent}\n payrollId={ensureRequired(payrollUuid)}\n withReimbursements={withReimbursements}\n />\n )\n}\n\nexport function PayrollLandingOverviewContextual() {\n const { companyId, payrollUuid, onEvent, withReimbursements, ConfirmWireDetailsComponent } =\n useFlow<PayrollLandingFlowContextInterface>()\n\n return (\n <PayrollOverview\n onEvent={onEvent}\n companyId={ensureRequired(companyId)}\n payrollId={ensureRequired(payrollUuid)}\n withReimbursements={withReimbursements}\n ConfirmWireDetailsComponent={ConfirmWireDetailsComponent}\n />\n )\n}\n"],"names":["PayrollLandingTabsContextual","companyId","onEvent","selectedTab","ConfirmWireDetailsComponent","ConfirmWireDetails","showPayrollCancelledAlert","useFlow","currentTab","setCurrentTab","useState","Tabs","Alert","useComponentContext","useI18n","t","useTranslation","wireInRequestsData","useWireInRequestsListSuspense","ensureRequired","hasActiveWireInRequests","r","handleDismissPayrollCancelledAlert","componentEvents","blockersData","usePayrollsGetBlockersSuspense","blockers","blocker","onViewBlockers","tabs","jsx","PayrollList","PayrollHistory","jsxs","Flex","PayrollBlockerAlerts","PayrollLandingReceiptsContextual","payrollUuid","withReimbursements","PayrollReceipts","PayrollLandingOverviewContextual","PayrollOverview"],"mappings":"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"}
1
+ {"version":3,"file":"PayrollLandingFlowComponents.js","sources":["../../../../src/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.tsx"],"sourcesContent":["import { useState } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport { useWireInRequestsListSuspense } from '@gusto/embedded-api/react-query/wireInRequestsList'\nimport { usePayrollsGetBlockersSuspense } from '@gusto/embedded-api/react-query/payrollsGetBlockers'\nimport { PayrollHistory } from '../PayrollHistory/PayrollHistory'\nimport { PayrollList } from '../PayrollList/PayrollList'\nimport { PayrollOverview } from '../PayrollOverview/PayrollOverview'\nimport { PayrollReceipts } from '../PayrollReceipts/PayrollReceipts'\nimport {\n ConfirmWireDetails,\n type ConfirmWireDetailsComponentType,\n} from '../ConfirmWireDetails/ConfirmWireDetails'\nimport type { ApiPayrollBlocker } from '../PayrollBlocker/payrollHelpers'\nimport { PayrollBlockerAlerts } from '../PayrollBlocker/components/PayrollBlockerAlerts'\nimport { TransitionPayrollAlert } from '../TransitionPayrollAlert'\nimport type { BaseComponentInterface } from '@/components/Base/Base'\nimport { useFlow } from '@/components/Flow/useFlow'\nimport { useI18n } from '@/i18n'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { ensureRequired } from '@/helpers/ensureRequired'\nimport type { FlowContextInterface } from '@/components/Flow/useFlow'\nimport { Flex } from '@/components/Common/Flex/Flex'\nimport { componentEvents } from '@/shared/constants'\n\nexport interface PayrollLandingFlowProps extends BaseComponentInterface<'Payroll.PayrollLanding'> {\n companyId: string\n withReimbursements?: boolean\n ConfirmWireDetailsComponent?: ConfirmWireDetailsComponentType\n showPayrollCancelledAlert?: boolean\n}\n\nexport interface PayrollLandingFlowContextInterface extends FlowContextInterface {\n component: (() => React.JSX.Element) | null\n companyId: string\n payrollUuid?: string\n previousState?: 'tabs' | 'overview'\n selectedTab?: string\n withReimbursements: boolean\n ConfirmWireDetailsComponent?: ConfirmWireDetailsComponentType\n startDate?: string\n endDate?: string\n showPayrollCancelledAlert?: boolean\n}\n\nexport function PayrollLandingTabsContextual() {\n const {\n companyId,\n onEvent,\n selectedTab = 'run-payroll',\n ConfirmWireDetailsComponent = ConfirmWireDetails,\n showPayrollCancelledAlert,\n } = useFlow<PayrollLandingFlowContextInterface>()\n const [currentTab, setCurrentTab] = useState(selectedTab)\n const { Tabs, Alert } = useComponentContext()\n\n useI18n('Payroll.PayrollLanding')\n const { t } = useTranslation('Payroll.PayrollLanding')\n\n const { data: wireInRequestsData } = useWireInRequestsListSuspense({\n companyUuid: ensureRequired(companyId),\n })\n\n const hasActiveWireInRequests = (wireInRequestsData.wireInRequestList || []).some(\n r => r.status === 'awaiting_funds',\n )\n\n const handleDismissPayrollCancelledAlert = () => {\n onEvent(componentEvents.RUN_PAYROLL_CANCELLED_ALERT_DISMISSED)\n }\n\n const { data: blockersData } = usePayrollsGetBlockersSuspense({\n companyUuid: ensureRequired(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 onViewBlockers = () => {\n onEvent(componentEvents.RUN_PAYROLL_BLOCKERS_VIEW_ALL)\n }\n\n const tabs = [\n {\n id: 'run-payroll',\n label: t('tabs.runPayroll'),\n content: <PayrollList companyId={ensureRequired(companyId)} onEvent={onEvent} />,\n },\n {\n id: 'payroll-history',\n label: t('tabs.payrollHistory'),\n content: <PayrollHistory companyId={ensureRequired(companyId)} onEvent={onEvent} />,\n },\n ]\n\n return (\n <Flex flexDirection=\"column\" gap={32}>\n {showPayrollCancelledAlert && (\n <Alert\n status=\"success\"\n label={t('alerts.payrollCancelled')}\n onDismiss={handleDismissPayrollCancelledAlert}\n />\n )}\n {hasActiveWireInRequests && (\n <ConfirmWireDetailsComponent companyId={ensureRequired(companyId)} onEvent={onEvent} />\n )}\n <TransitionPayrollAlert companyId={ensureRequired(companyId)} onEvent={onEvent} />\n <PayrollBlockerAlerts blockers={blockers} onViewBlockersClick={onViewBlockers} />\n <Tabs\n tabs={tabs}\n selectedId={currentTab}\n onSelectionChange={setCurrentTab}\n aria-label={t('aria.tabNavigation')}\n />\n </Flex>\n )\n}\n\nexport function PayrollLandingReceiptsContextual() {\n const { payrollUuid, onEvent, withReimbursements } = useFlow<PayrollLandingFlowContextInterface>()\n\n return (\n <PayrollReceipts\n onEvent={onEvent}\n payrollId={ensureRequired(payrollUuid)}\n withReimbursements={withReimbursements}\n />\n )\n}\n\nexport function PayrollLandingOverviewContextual() {\n const { companyId, payrollUuid, onEvent, withReimbursements, ConfirmWireDetailsComponent } =\n useFlow<PayrollLandingFlowContextInterface>()\n\n return (\n <PayrollOverview\n onEvent={onEvent}\n companyId={ensureRequired(companyId)}\n payrollId={ensureRequired(payrollUuid)}\n withReimbursements={withReimbursements}\n ConfirmWireDetailsComponent={ConfirmWireDetailsComponent}\n />\n )\n}\n"],"names":["PayrollLandingTabsContextual","companyId","onEvent","selectedTab","ConfirmWireDetailsComponent","ConfirmWireDetails","showPayrollCancelledAlert","useFlow","currentTab","setCurrentTab","useState","Tabs","Alert","useComponentContext","useI18n","t","useTranslation","wireInRequestsData","useWireInRequestsListSuspense","ensureRequired","hasActiveWireInRequests","r","handleDismissPayrollCancelledAlert","componentEvents","blockersData","usePayrollsGetBlockersSuspense","blockers","blocker","onViewBlockers","tabs","jsx","PayrollList","PayrollHistory","jsxs","Flex","TransitionPayrollAlert","PayrollBlockerAlerts","PayrollLandingReceiptsContextual","payrollUuid","withReimbursements","PayrollReceipts","PayrollLandingOverviewContextual","PayrollOverview"],"mappings":"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"}
@@ -1,40 +1,45 @@
1
1
  import { jsx as a } from "react/jsx-runtime";
2
- import { useState as p } from "react";
3
- import { usePayrollsListSuspense as h } from "@gusto/embedded-api/react-query/payrollsList";
4
- import { usePaySchedulesGetAllSuspense as w } from "@gusto/embedded-api/react-query/paySchedulesGetAll";
5
- import { usePayrollsSkipMutation as A } from "@gusto/embedded-api/react-query/payrollsSkip";
6
- import { usePayrollsGetBlockersSuspense as g } from "@gusto/embedded-api/react-query/payrollsGetBlockers";
2
+ import { useState as u } from "react";
3
+ import { usePayrollsListSuspense as A } from "@gusto/embedded-api/react-query/payrollsList";
4
+ import { usePaySchedulesGetAllSuspense as g } from "@gusto/embedded-api/react-query/paySchedulesGetAll";
5
+ import { usePayrollsSkipMutation as w } from "@gusto/embedded-api/react-query/payrollsSkip";
6
+ import { usePayrollsGetBlockersSuspense as O } from "@gusto/embedded-api/react-query/payrollsGetBlockers";
7
7
  import { useWireInRequestsListSuspense as B } from "@gusto/embedded-api/react-query/wireInRequestsList";
8
- import { PayrollType as q } from "@gusto/embedded-api/models/operations/postcompaniespayrollskipcompanyuuid";
9
- import { ProcessingStatuses as U } from "@gusto/embedded-api/models/operations/getv1companiescompanyidpayrolls";
10
- import { PayrollListPresentation as b } from "./PayrollListPresentation.js";
11
- import { BaseComponent as E } from "../../Base/Base.js";
12
- import { useBase as I } from "../../Base/useBase.js";
8
+ import { PayrollType as C } from "@gusto/embedded-api/models/operations/postcompaniespayrollskipcompanyuuid";
9
+ import { QueryParamPayrollTypes as l, ProcessingStatuses as U } from "@gusto/embedded-api/models/operations/getv1companiescompanyidpayrolls";
10
+ import { PayrollListPresentation as _ } from "./PayrollListPresentation.js";
11
+ import { BaseComponent as q } from "../../Base/Base.js";
12
+ import { useBase as E } from "../../Base/useBase.js";
13
13
  import { componentEvents as r } from "../../../shared/constants.js";
14
- function Q(e) {
15
- return /* @__PURE__ */ a(E, { ...e, children: /* @__PURE__ */ a(_, { ...e }) });
14
+ function $(e) {
15
+ return /* @__PURE__ */ a(q, { ...e, children: /* @__PURE__ */ a(b, { ...e }) });
16
16
  }
17
- const _ = ({ companyId: e, onEvent: t }) => {
18
- const { baseSubmitHandler: u } = I(), [c, l] = p(!1), [y, i] = p(null), { data: m } = h({
17
+ const b = ({ companyId: e, onEvent: t }) => {
18
+ const { baseSubmitHandler: y } = E(), [c, n] = u(!1), [m, i] = u(null), { data: P } = A({
19
19
  companyId: e,
20
- processingStatuses: [U.Unprocessed]
21
- }), n = m.payrollList, { data: S } = w({
20
+ processingStatuses: [U.Unprocessed],
21
+ payrollTypes: [
22
+ l.Regular,
23
+ l.OffCycle,
24
+ l.External
25
+ ]
26
+ }), p = P.payrollList, { data: S } = g({
22
27
  companyId: e
23
- }), P = S.payScheduleList, { data: d } = g({
28
+ }), d = S.payScheduleList, { data: f } = O({
24
29
  companyUuid: e
25
- }), f = (d.payrollBlockers ?? []).map(
30
+ }), L = (f.payrollBlockers ?? []).map(
26
31
  (s) => ({
27
32
  key: s.key ?? "unknown",
28
33
  message: s.message
29
34
  })
30
- ), { data: L } = B({
35
+ ), { data: R } = B({
31
36
  companyUuid: e
32
- }), k = L.wireInRequestList ?? [], { mutateAsync: R } = A();
37
+ }), k = R.wireInRequestList ?? [], { mutateAsync: D } = w();
33
38
  return /* @__PURE__ */ a(
34
- b,
39
+ _,
35
40
  {
36
- payrolls: n,
37
- paySchedules: P,
41
+ payrolls: p,
42
+ paySchedules: d,
38
43
  onRunPayroll: ({ payrollUuid: s, payPeriod: o }) => {
39
44
  t(r.RUN_PAYROLL_SELECTED, { payrollUuid: s, payPeriod: o });
40
45
  },
@@ -45,32 +50,35 @@ const _ = ({ companyId: e, onEvent: t }) => {
45
50
  t(r.REVIEW_PAYROLL, { payrollUuid: s, payPeriod: o });
46
51
  },
47
52
  onSkipPayroll: async ({ payrollUuid: s }) => {
48
- const o = n.find((D) => D.payrollUuid === s);
49
- o?.payPeriod && (i(s), await u({}, async () => {
50
- await R({
53
+ const o = p.find((h) => h.payrollUuid === s);
54
+ o?.payPeriod && (i(s), await y({}, async () => {
55
+ await D({
51
56
  request: {
52
57
  companyUuid: e,
53
58
  requestBody: {
54
- payrollType: q.Regular,
59
+ payrollType: C.Regular,
55
60
  startDate: o.payPeriod?.startDate,
56
61
  endDate: o.payPeriod?.endDate,
57
62
  payScheduleUuid: o.payPeriod?.payScheduleUuid ?? void 0
58
63
  }
59
64
  }
60
- }), l(!0), t(r.PAYROLL_SKIPPED, { payrollId: s });
65
+ }), n(!0), t(r.PAYROLL_SKIPPED, { payrollId: s });
61
66
  }), i(null));
62
67
  },
68
+ onRunOffCyclePayroll: () => {
69
+ t(r.RUN_OFF_CYCLE_PAYROLL);
70
+ },
63
71
  showSkipSuccessAlert: c,
64
72
  onDismissSkipSuccessAlert: () => {
65
- l(!1);
73
+ n(!1);
66
74
  },
67
- skippingPayrollId: y,
68
- blockers: f,
75
+ skippingPayrollId: m,
76
+ blockers: L,
69
77
  wireInRequests: k
70
78
  }
71
79
  );
72
80
  };
73
81
  export {
74
- Q as PayrollList
82
+ $ as PayrollList
75
83
  };
76
84
  //# sourceMappingURL=PayrollList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PayrollList.js","sources":["../../../../src/components/Payroll/PayrollList/PayrollList.tsx"],"sourcesContent":["import { useState } from 'react'\nimport { usePayrollsListSuspense } 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 { 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 { ProcessingStatuses } from '@gusto/embedded-api/models/operations/getv1companiescompanyidpayrolls'\nimport type { Payroll } from '@gusto/embedded-api/models/components/payroll'\nimport type { ApiPayrollBlocker } from '../PayrollBlocker/payrollHelpers'\nimport { PayrollListPresentation } from './PayrollListPresentation'\nimport type { BaseComponentInterface } from '@/components/Base'\nimport { BaseComponent, useBase } from '@/components/Base'\nimport { componentEvents } from '@/shared/constants'\n\ninterface PayrollListBlockProps extends BaseComponentInterface {\n companyId: string\n}\n\nexport function PayrollList(props: PayrollListBlockProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props} />\n </BaseComponent>\n )\n}\n\nconst Root = ({ companyId, onEvent }: PayrollListBlockProps) => {\n const { baseSubmitHandler } = useBase()\n const [showSkipSuccessAlert, setShowSkipSuccessAlert] = useState(false)\n const [skippingPayrollId, setSkippingPayrollId] = useState<string | null>(null)\n\n const { data: payrollsData } = usePayrollsListSuspense({\n companyId,\n processingStatuses: [ProcessingStatuses.Unprocessed],\n })\n const payrollList = payrollsData.payrollList!\n const { data: paySchedulesData } = usePaySchedulesGetAllSuspense({\n companyId,\n })\n const paySchedulesList = paySchedulesData.payScheduleList!\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 { mutateAsync: skipPayroll } = usePayrollsSkipMutation()\n\n const onRunPayroll = ({ payrollUuid, payPeriod }: Pick<Payroll, 'payrollUuid' | 'payPeriod'>) => {\n onEvent(componentEvents.RUN_PAYROLL_SELECTED, { payrollUuid, payPeriod })\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 await baseSubmitHandler({}, async () => {\n await skipPayroll({\n request: {\n companyUuid: companyId,\n requestBody: {\n payrollType: PayrollType.Regular,\n startDate: payroll.payPeriod?.startDate,\n endDate: payroll.payPeriod?.endDate,\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 return (\n <PayrollListPresentation\n payrolls={payrollList}\n paySchedules={paySchedulesList}\n onRunPayroll={onRunPayroll}\n onSubmitPayroll={onSubmitPayroll}\n onSkipPayroll={onSkipPayroll}\n showSkipSuccessAlert={showSkipSuccessAlert}\n onDismissSkipSuccessAlert={() => {\n setShowSkipSuccessAlert(false)\n }}\n skippingPayrollId={skippingPayrollId}\n blockers={blockers}\n wireInRequests={wireInRequests}\n />\n )\n}\n"],"names":["PayrollList","props","jsx","BaseComponent","Root","companyId","onEvent","baseSubmitHandler","useBase","showSkipSuccessAlert","setShowSkipSuccessAlert","useState","skippingPayrollId","setSkippingPayrollId","payrollsData","usePayrollsListSuspense","ProcessingStatuses","payrollList","paySchedulesData","usePaySchedulesGetAllSuspense","paySchedulesList","blockersData","usePayrollsGetBlockersSuspense","blockers","blocker","wireInRequestsData","useWireInRequestsListSuspense","wireInRequests","skipPayroll","usePayrollsSkipMutation","PayrollListPresentation","payrollUuid","payPeriod","componentEvents","payroll","PayrollType"],"mappings":";;;;;;;;;;;;;AAmBO,SAASA,EAAYC,GAA8B;AACxD,SACE,gBAAAC,EAACC,KAAe,GAAGF,GACjB,4BAACG,GAAA,EAAM,GAAGH,GAAO,EAAA,CACnB;AAEJ;AAEA,MAAMG,IAAO,CAAC,EAAE,WAAAC,GAAW,SAAAC,QAAqC;AAC9D,QAAM,EAAE,mBAAAC,EAAA,IAAsBC,EAAA,GACxB,CAACC,GAAsBC,CAAuB,IAAIC,EAAS,EAAK,GAChE,CAACC,GAAmBC,CAAoB,IAAIF,EAAwB,IAAI,GAExE,EAAE,MAAMG,EAAA,IAAiBC,EAAwB;AAAA,IACrD,WAAAV;AAAA,IACA,oBAAoB,CAACW,EAAmB,WAAW;AAAA,EAAA,CACpD,GACKC,IAAcH,EAAa,aAC3B,EAAE,MAAMI,EAAA,IAAqBC,EAA8B;AAAA,IAC/D,WAAAd;AAAA,EAAA,CACD,GACKe,IAAmBF,EAAiB,iBAEpC,EAAE,MAAMG,EAAA,IAAiBC,EAA+B;AAAA,IAC5D,aAAajB;AAAA,EAAA,CACd,GAIKkB,KAFqBF,EAAa,mBAAmB,CAAA,GAEF;AAAA,IACvD,CAACG,OAAiD;AAAA,MAChD,KAAKA,EAAQ,OAAO;AAAA,MACpB,SAASA,EAAQ;AAAA,IAAA;AAAA,EACnB,GAGI,EAAE,MAAMC,EAAA,IAAuBC,EAA8B;AAAA,IACjE,aAAarB;AAAA,EAAA,CACd,GAEKsB,IAAiBF,EAAmB,qBAAqB,CAAA,GAEzD,EAAE,aAAaG,EAAA,IAAgBC,EAAA;AAmCrC,SACE,gBAAA3B;AAAA,IAAC4B;AAAA,IAAA;AAAA,MACC,UAAUb;AAAA,MACV,cAAcG;AAAA,MACd,cArCiB,CAAC,EAAE,aAAAW,GAAa,WAAAC,QAA4D;AAC/F,QAAA1B,EAAQ2B,EAAgB,sBAAsB,EAAE,aAAAF,GAAa,WAAAC,GAAW;AAAA,MAC1E;AAAA,MAoCI,iBAnCoB,CAAC;AAAA,QACvB,aAAAD;AAAA,QACA,WAAAC;AAAA,MAAA,MACgD;AAChD,QAAA1B,EAAQ2B,EAAgB,gBAAgB,EAAE,aAAAF,GAAa,WAAAC,GAAW;AAAA,MACpE;AAAA,MA+BI,eA9BkB,OAAO,EAAE,aAAAD,QAAgD;AAC7E,cAAMG,IAAUjB,EAAY,KAAK,CAAAiB,MAAWA,EAAQ,gBAAgBH,CAAW;AAE/E,QAAIG,GAAS,cACXrB,EAAqBkB,CAAY,GACjC,MAAMxB,EAAkB,CAAA,GAAI,YAAY;AACtC,gBAAMqB,EAAY;AAAA,YAChB,SAAS;AAAA,cACP,aAAavB;AAAA,cACb,aAAa;AAAA,gBACX,aAAa8B,EAAY;AAAA,gBACzB,WAAWD,EAAQ,WAAW;AAAA,gBAC9B,SAASA,EAAQ,WAAW;AAAA,gBAC5B,iBAAiBA,EAAQ,WAAW,mBAAmB;AAAA,cAAA;AAAA,YACzD;AAAA,UACF,CACD,GAEDxB,EAAwB,EAAI,GAC5BJ,EAAQ2B,EAAgB,iBAAiB,EAAE,WAAWF,GAAa;AAAA,QACrE,CAAC,GACDlB,EAAqB,IAAI;AAAA,MAE7B;AAAA,MAQI,sBAAAJ;AAAA,MACA,2BAA2B,MAAM;AAC/B,QAAAC,EAAwB,EAAK;AAAA,MAC/B;AAAA,MACA,mBAAAE;AAAA,MACA,UAAAW;AAAA,MACA,gBAAAI;AAAA,IAAA;AAAA,EAAA;AAGN;"}
1
+ {"version":3,"file":"PayrollList.js","sources":["../../../../src/components/Payroll/PayrollList/PayrollList.tsx"],"sourcesContent":["import { useState } from 'react'\nimport { usePayrollsListSuspense } 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 { 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/payroll'\nimport type { ApiPayrollBlocker } from '../PayrollBlocker/payrollHelpers'\nimport { PayrollListPresentation } from './PayrollListPresentation'\nimport type { BaseComponentInterface } from '@/components/Base'\nimport { BaseComponent, useBase } from '@/components/Base'\nimport { componentEvents } from '@/shared/constants'\n\ninterface PayrollListBlockProps extends BaseComponentInterface {\n companyId: string\n}\n\nexport function PayrollList(props: PayrollListBlockProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props} />\n </BaseComponent>\n )\n}\n\nconst Root = ({ companyId, onEvent }: PayrollListBlockProps) => {\n const { baseSubmitHandler } = useBase()\n const [showSkipSuccessAlert, setShowSkipSuccessAlert] = useState(false)\n const [skippingPayrollId, setSkippingPayrollId] = useState<string | null>(null)\n\n const { data: payrollsData } = usePayrollsListSuspense({\n companyId,\n processingStatuses: [ProcessingStatuses.Unprocessed],\n payrollTypes: [\n QueryParamPayrollTypes.Regular,\n QueryParamPayrollTypes.OffCycle,\n QueryParamPayrollTypes.External,\n ],\n })\n const payrollList = payrollsData.payrollList!\n const { data: paySchedulesData } = usePaySchedulesGetAllSuspense({\n companyId,\n })\n const paySchedulesList = paySchedulesData.payScheduleList!\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 { mutateAsync: skipPayroll } = usePayrollsSkipMutation()\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 await baseSubmitHandler({}, async () => {\n await skipPayroll({\n request: {\n companyUuid: companyId,\n requestBody: {\n payrollType: PayrollType.Regular,\n startDate: payroll.payPeriod?.startDate,\n endDate: payroll.payPeriod?.endDate,\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 return (\n <PayrollListPresentation\n payrolls={payrollList}\n paySchedules={paySchedulesList}\n onRunPayroll={onRunPayroll}\n onSubmitPayroll={onSubmitPayroll}\n onSkipPayroll={onSkipPayroll}\n onRunOffCyclePayroll={onRunOffCyclePayroll}\n showSkipSuccessAlert={showSkipSuccessAlert}\n onDismissSkipSuccessAlert={() => {\n setShowSkipSuccessAlert(false)\n }}\n skippingPayrollId={skippingPayrollId}\n blockers={blockers}\n wireInRequests={wireInRequests}\n />\n )\n}\n"],"names":["PayrollList","props","jsx","BaseComponent","Root","companyId","onEvent","baseSubmitHandler","useBase","showSkipSuccessAlert","setShowSkipSuccessAlert","useState","skippingPayrollId","setSkippingPayrollId","payrollsData","usePayrollsListSuspense","ProcessingStatuses","QueryParamPayrollTypes","payrollList","paySchedulesData","usePaySchedulesGetAllSuspense","paySchedulesList","blockersData","usePayrollsGetBlockersSuspense","blockers","blocker","wireInRequestsData","useWireInRequestsListSuspense","wireInRequests","skipPayroll","usePayrollsSkipMutation","PayrollListPresentation","payrollUuid","payPeriod","componentEvents","payroll","PayrollType"],"mappings":";;;;;;;;;;;;;AAsBO,SAASA,EAAYC,GAA8B;AACxD,SACE,gBAAAC,EAACC,KAAe,GAAGF,GACjB,4BAACG,GAAA,EAAM,GAAGH,GAAO,EAAA,CACnB;AAEJ;AAEA,MAAMG,IAAO,CAAC,EAAE,WAAAC,GAAW,SAAAC,QAAqC;AAC9D,QAAM,EAAE,mBAAAC,EAAA,IAAsBC,EAAA,GACxB,CAACC,GAAsBC,CAAuB,IAAIC,EAAS,EAAK,GAChE,CAACC,GAAmBC,CAAoB,IAAIF,EAAwB,IAAI,GAExE,EAAE,MAAMG,EAAA,IAAiBC,EAAwB;AAAA,IACrD,WAAAV;AAAA,IACA,oBAAoB,CAACW,EAAmB,WAAW;AAAA,IACnD,cAAc;AAAA,MACZC,EAAuB;AAAA,MACvBA,EAAuB;AAAA,MACvBA,EAAuB;AAAA,IAAA;AAAA,EACzB,CACD,GACKC,IAAcJ,EAAa,aAC3B,EAAE,MAAMK,EAAA,IAAqBC,EAA8B;AAAA,IAC/D,WAAAf;AAAA,EAAA,CACD,GACKgB,IAAmBF,EAAiB,iBAEpC,EAAE,MAAMG,EAAA,IAAiBC,EAA+B;AAAA,IAC5D,aAAalB;AAAA,EAAA,CACd,GAIKmB,KAFqBF,EAAa,mBAAmB,CAAA,GAEF;AAAA,IACvD,CAACG,OAAiD;AAAA,MAChD,KAAKA,EAAQ,OAAO;AAAA,MACpB,SAASA,EAAQ;AAAA,IAAA;AAAA,EACnB,GAGI,EAAE,MAAMC,EAAA,IAAuBC,EAA8B;AAAA,IACjE,aAAatB;AAAA,EAAA,CACd,GAEKuB,IAAiBF,EAAmB,qBAAqB,CAAA,GAEzD,EAAE,aAAaG,EAAA,IAAgBC,EAAA;AAsCrC,SACE,gBAAA5B;AAAA,IAAC6B;AAAA,IAAA;AAAA,MACC,UAAUb;AAAA,MACV,cAAcG;AAAA,MACd,cAxCiB,CAAC,EAAE,aAAAW,GAAa,WAAAC,QAA4D;AAC/F,QAAA3B,EAAQ4B,EAAgB,sBAAsB,EAAE,aAAAF,GAAa,WAAAC,GAAW;AAAA,MAC1E;AAAA,MAuCI,iBAnCoB,CAAC;AAAA,QACvB,aAAAD;AAAA,QACA,WAAAC;AAAA,MAAA,MACgD;AAChD,QAAA3B,EAAQ4B,EAAgB,gBAAgB,EAAE,aAAAF,GAAa,WAAAC,GAAW;AAAA,MACpE;AAAA,MA+BI,eA9BkB,OAAO,EAAE,aAAAD,QAAgD;AAC7E,cAAMG,IAAUjB,EAAY,KAAK,CAAAiB,MAAWA,EAAQ,gBAAgBH,CAAW;AAE/E,QAAIG,GAAS,cACXtB,EAAqBmB,CAAY,GACjC,MAAMzB,EAAkB,CAAA,GAAI,YAAY;AACtC,gBAAMsB,EAAY;AAAA,YAChB,SAAS;AAAA,cACP,aAAaxB;AAAA,cACb,aAAa;AAAA,gBACX,aAAa+B,EAAY;AAAA,gBACzB,WAAWD,EAAQ,WAAW;AAAA,gBAC9B,SAASA,EAAQ,WAAW;AAAA,gBAC5B,iBAAiBA,EAAQ,WAAW,mBAAmB;AAAA,cAAA;AAAA,YACzD;AAAA,UACF,CACD,GAEDzB,EAAwB,EAAI,GAC5BJ,EAAQ4B,EAAgB,iBAAiB,EAAE,WAAWF,GAAa;AAAA,QACrE,CAAC,GACDnB,EAAqB,IAAI;AAAA,MAE7B;AAAA,MAQI,sBAxCyB,MAAM;AACjC,QAAAP,EAAQ4B,EAAgB,qBAAqB;AAAA,MAC/C;AAAA,MAuCI,sBAAAzB;AAAA,MACA,2BAA2B,MAAM;AAC/B,QAAAC,EAAwB,EAAK;AAAA,MAC/B;AAAA,MACA,mBAAAE;AAAA,MACA,UAAAY;AAAA,MACA,gBAAAI;AAAA,IAAA;AAAA,EAAA;AAGN;"}