@gusto/embedded-react-sdk 0.17.0 → 0.18.0

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 (364) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/dist/components/Base/Base.js +50 -65
  3. package/dist/components/Base/Base.js.map +1 -1
  4. package/dist/components/Base/useBase.d.ts +2 -5
  5. package/dist/components/Base/useBase.js.map +1 -1
  6. package/dist/components/Common/FlowBreadcrumbs/FlowBreadcrumbs.js +42 -36
  7. package/dist/components/Common/FlowBreadcrumbs/FlowBreadcrumbs.js.map +1 -1
  8. package/dist/components/Common/HamburgerMenu/HamburgerMenu.js +1 -1
  9. package/dist/components/Common/HamburgerMenu/HamburgerMenu.js.map +1 -1
  10. package/dist/components/Common/SignatureForm/SignatureForm.js +4 -7
  11. package/dist/components/Common/SignatureForm/SignatureForm.js.map +1 -1
  12. package/dist/components/Common/SignatureForm/SignatureFormActions.js +10 -13
  13. package/dist/components/Common/SignatureForm/SignatureFormActions.js.map +1 -1
  14. package/dist/components/Common/SignatureForm/SignatureFormFields.js +10 -13
  15. package/dist/components/Common/SignatureForm/SignatureFormFields.js.map +1 -1
  16. package/dist/components/Common/UI/DatePicker/DatePicker.module.scss.js +8 -8
  17. package/dist/components/Common/UI/Dialog/Dialog.js +50 -76
  18. package/dist/components/Common/UI/Dialog/Dialog.js.map +1 -1
  19. package/dist/components/Common/UI/Dialog/Dialog.module.scss.js +8 -14
  20. package/dist/components/Common/UI/Dialog/Dialog.module.scss.js.map +1 -1
  21. package/dist/components/Common/UI/Link/LinkTypes.d.ts +7 -6
  22. package/dist/components/Common/UI/Modal/Modal.d.ts +2 -0
  23. package/dist/components/Common/UI/Modal/Modal.js +90 -0
  24. package/dist/components/Common/UI/Modal/Modal.js.map +1 -0
  25. package/dist/components/Common/UI/Modal/Modal.module.scss.js +26 -0
  26. package/dist/components/Common/UI/Modal/Modal.module.scss.js.map +1 -0
  27. package/dist/components/Common/UI/Modal/ModalTypes.d.ts +34 -0
  28. package/dist/components/Common/UI/Modal/ModalTypes.js +8 -0
  29. package/dist/components/Common/UI/Modal/ModalTypes.js.map +1 -0
  30. package/dist/components/Common/UI/Modal/index.d.ts +3 -0
  31. package/dist/components/Common/UI/Tabs/Tabs.d.ts +0 -5
  32. package/dist/components/Common/UI/Tabs/Tabs.js +45 -16
  33. package/dist/components/Common/UI/Tabs/Tabs.js.map +1 -1
  34. package/dist/components/Common/UI/Tabs/Tabs.module.scss.js +8 -4
  35. package/dist/components/Common/UI/Tabs/Tabs.module.scss.js.map +1 -1
  36. package/dist/components/Common/UI/Tabs/TabsTypes.d.ts +7 -0
  37. package/dist/components/Common/index.d.ts +0 -1
  38. package/dist/components/Company/AssignSignatory/AssignSignatory.js +6 -8
  39. package/dist/components/Company/AssignSignatory/AssignSignatory.js.map +1 -1
  40. package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js +6 -8
  41. package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js.map +1 -1
  42. package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js +8 -10
  43. package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js.map +1 -1
  44. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js +2 -3
  45. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js.map +1 -1
  46. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js +2 -3
  47. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js.map +1 -1
  48. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +4 -6
  49. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
  50. package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js +6 -8
  51. package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js.map +1 -1
  52. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js +5 -6
  53. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js.map +1 -1
  54. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js +9 -10
  55. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js.map +1 -1
  56. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +4 -6
  57. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
  58. package/dist/components/Company/AssignSignatory/TitleSelect.js +7 -8
  59. package/dist/components/Company/AssignSignatory/TitleSelect.js.map +1 -1
  60. package/dist/components/Company/AssignSignatory/useAssignSignatory.js +6 -8
  61. package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
  62. package/dist/components/Company/BankAccount/BankAccountForm/Actions.js +8 -9
  63. package/dist/components/Company/BankAccount/BankAccountForm/Actions.js.map +1 -1
  64. package/dist/components/Company/BankAccount/BankAccountForm/Form.js +9 -11
  65. package/dist/components/Company/BankAccount/BankAccountForm/Form.js.map +1 -1
  66. package/dist/components/Company/BankAccount/BankAccountForm/context.js +4 -6
  67. package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
  68. package/dist/components/Company/BankAccount/BankAccountList/Actions.js +10 -12
  69. package/dist/components/Company/BankAccount/BankAccountList/Actions.js.map +1 -1
  70. package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js +11 -13
  71. package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js.map +1 -1
  72. package/dist/components/Company/BankAccount/BankAccountVerify/Form.js +4 -6
  73. package/dist/components/Company/BankAccount/BankAccountVerify/Form.js.map +1 -1
  74. package/dist/components/Company/DocumentSigner/DocumentList/Actions.js +5 -7
  75. package/dist/components/Company/DocumentSigner/DocumentList/Actions.js.map +1 -1
  76. package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js +11 -13
  77. package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
  78. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +4 -6
  79. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  80. package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js +6 -8
  81. package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js.map +1 -1
  82. package/dist/components/Company/DocumentSigner/SignatureForm/useSignatureForm.js +4 -6
  83. package/dist/components/Company/DocumentSigner/SignatureForm/useSignatureForm.js.map +1 -1
  84. package/dist/components/Company/FederalTaxes/Actions.js +7 -9
  85. package/dist/components/Company/FederalTaxes/Actions.js.map +1 -1
  86. package/dist/components/Company/FederalTaxes/FederalTaxes.js +15 -17
  87. package/dist/components/Company/FederalTaxes/FederalTaxes.js.map +1 -1
  88. package/dist/components/Company/FederalTaxes/Form.js +2 -4
  89. package/dist/components/Company/FederalTaxes/Form.js.map +1 -1
  90. package/dist/components/Company/FederalTaxes/useFederalTaxes.js +9 -11
  91. package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
  92. package/dist/components/Company/Industry/Actions.js +5 -7
  93. package/dist/components/Company/Industry/Actions.js.map +1 -1
  94. package/dist/components/Company/Industry/Context.js +7 -9
  95. package/dist/components/Company/Industry/Context.js.map +1 -1
  96. package/dist/components/Company/Industry/Edit.js +10 -12
  97. package/dist/components/Company/Industry/Edit.js.map +1 -1
  98. package/dist/components/Company/Locations/LocationForm/Actions.js +6 -8
  99. package/dist/components/Company/Locations/LocationForm/Actions.js.map +1 -1
  100. package/dist/components/Company/Locations/LocationForm/Form.js +4 -5
  101. package/dist/components/Company/Locations/LocationForm/Form.js.map +1 -1
  102. package/dist/components/Company/Locations/LocationForm/LocationForm.js +10 -12
  103. package/dist/components/Company/Locations/LocationForm/LocationForm.js.map +1 -1
  104. package/dist/components/Company/Locations/LocationForm/useLocationForm.js +4 -6
  105. package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
  106. package/dist/components/Company/Locations/LocationsList/Actions.js +6 -8
  107. package/dist/components/Company/Locations/LocationsList/Actions.js.map +1 -1
  108. package/dist/components/Company/Locations/LocationsList/List.js +6 -8
  109. package/dist/components/Company/Locations/LocationsList/List.js.map +1 -1
  110. package/dist/components/Company/Locations/LocationsList/LocationsList.js +12 -14
  111. package/dist/components/Company/Locations/LocationsList/LocationsList.js.map +1 -1
  112. package/dist/components/Company/Locations/LocationsList/useLocationsList.js +4 -6
  113. package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
  114. package/dist/components/Company/OnboardingOverview/Completed.js +12 -14
  115. package/dist/components/Company/OnboardingOverview/Completed.js.map +1 -1
  116. package/dist/components/Company/OnboardingOverview/MissingRequirements.js +6 -8
  117. package/dist/components/Company/OnboardingOverview/MissingRequirements.js.map +1 -1
  118. package/dist/components/Company/OnboardingOverview/OnboardingOverview.js +2 -4
  119. package/dist/components/Company/OnboardingOverview/OnboardingOverview.js.map +1 -1
  120. package/dist/components/Company/OnboardingOverview/context.js +4 -6
  121. package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
  122. package/dist/components/Company/PaySchedule/PaySchedule.js +40 -42
  123. package/dist/components/Company/PaySchedule/PaySchedule.js.map +1 -1
  124. package/dist/components/Company/PaySchedule/_parts/Actions.js +10 -12
  125. package/dist/components/Company/PaySchedule/_parts/Actions.js.map +1 -1
  126. package/dist/components/Company/PaySchedule/_parts/Edit.js +35 -37
  127. package/dist/components/Company/PaySchedule/_parts/Edit.js.map +1 -1
  128. package/dist/components/Company/PaySchedule/_parts/Head.js +17 -19
  129. package/dist/components/Company/PaySchedule/_parts/Head.js.map +1 -1
  130. package/dist/components/Company/PaySchedule/_parts/List.js +13 -15
  131. package/dist/components/Company/PaySchedule/_parts/List.js.map +1 -1
  132. package/dist/components/Company/PaySchedule/usePaySchedule.js +6 -8
  133. package/dist/components/Company/PaySchedule/usePaySchedule.js.map +1 -1
  134. package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js +5 -7
  135. package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js.map +1 -1
  136. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +4 -6
  137. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
  138. package/dist/components/Company/StateTaxes/StateTaxesList/Actions.js +6 -8
  139. package/dist/components/Company/StateTaxes/StateTaxesList/Actions.js.map +1 -1
  140. package/dist/components/Company/StateTaxes/StateTaxesList/List.js +5 -7
  141. package/dist/components/Company/StateTaxes/StateTaxesList/List.js.map +1 -1
  142. package/dist/components/Company/StateTaxes/StateTaxesList/context.js +4 -6
  143. package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
  144. package/dist/components/Contractor/Address/Address.js +4 -6
  145. package/dist/components/Contractor/Address/Address.js.map +1 -1
  146. package/dist/components/Contractor/Address/Form.js +2 -3
  147. package/dist/components/Contractor/Address/Form.js.map +1 -1
  148. package/dist/components/Contractor/Address/useAddress.js +6 -8
  149. package/dist/components/Contractor/Address/useAddress.js.map +1 -1
  150. package/dist/components/Contractor/ContractorList/index.js +30 -31
  151. package/dist/components/Contractor/ContractorList/index.js.map +1 -1
  152. package/dist/components/Contractor/NewHireReport/NewHireReport.js +13 -14
  153. package/dist/components/Contractor/NewHireReport/NewHireReport.js.map +1 -1
  154. package/dist/components/Contractor/PaymentMethod/BankAccountForm.js +4 -6
  155. package/dist/components/Contractor/PaymentMethod/BankAccountForm.js.map +1 -1
  156. package/dist/components/Contractor/PaymentMethod/PaymentMethod.js +2 -3
  157. package/dist/components/Contractor/PaymentMethod/PaymentMethod.js.map +1 -1
  158. package/dist/components/Contractor/PaymentMethod/PaymentTypeForm.js +2 -3
  159. package/dist/components/Contractor/PaymentMethod/PaymentTypeForm.js.map +1 -1
  160. package/dist/components/Contractor/Profile/useContractorProfile.js +3 -4
  161. package/dist/components/Contractor/Profile/useContractorProfile.js.map +1 -1
  162. package/dist/components/Contractor/Submit/Submit.js +3 -4
  163. package/dist/components/Contractor/Submit/Submit.js.map +1 -1
  164. package/dist/components/Employee/Compensation/Actions.js +5 -6
  165. package/dist/components/Employee/Compensation/Actions.js.map +1 -1
  166. package/dist/components/Employee/Compensation/Edit.js +10 -9
  167. package/dist/components/Employee/Compensation/Edit.js.map +1 -1
  168. package/dist/components/Employee/Compensation/List.js +23 -25
  169. package/dist/components/Employee/Compensation/List.js.map +1 -1
  170. package/dist/components/Employee/Deductions/DeductionsComponents.js +1 -1
  171. package/dist/components/Employee/Deductions/DeductionsComponents.js.map +1 -1
  172. package/dist/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.d.ts +6 -6
  173. package/dist/components/Employee/Deductions/DeductionsForm/DeductionsForm.d.ts +2 -2
  174. package/dist/components/Employee/Deductions/DeductionsForm/DeductionsForm.js +3 -4
  175. package/dist/components/Employee/Deductions/DeductionsForm/DeductionsForm.js.map +1 -1
  176. package/dist/components/Employee/Deductions/DeductionsList/DeductionsList.js +44 -40
  177. package/dist/components/Employee/Deductions/DeductionsList/DeductionsList.js.map +1 -1
  178. package/dist/components/Employee/Deductions/IncludeDeductionsForm/IncludeDeductionsForm.js +3 -4
  179. package/dist/components/Employee/Deductions/IncludeDeductionsForm/IncludeDeductionsForm.js.map +1 -1
  180. package/dist/components/Employee/Deductions/useDeductions.d.ts +2 -2
  181. package/dist/components/Employee/DocumentSigner/DocumentList/Actions.js +6 -8
  182. package/dist/components/Employee/DocumentSigner/DocumentList/Actions.js.map +1 -1
  183. package/dist/components/Employee/DocumentSigner/DocumentList/DocumentList.js +9 -11
  184. package/dist/components/Employee/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
  185. package/dist/components/Employee/DocumentSigner/DocumentList/List.js +2 -4
  186. package/dist/components/Employee/DocumentSigner/DocumentList/List.js.map +1 -1
  187. package/dist/components/Employee/DocumentSigner/DocumentList/useDocumentList.js +4 -6
  188. package/dist/components/Employee/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  189. package/dist/components/Employee/DocumentSigner/SignatureForm/SignatureForm.js +11 -13
  190. package/dist/components/Employee/DocumentSigner/SignatureForm/SignatureForm.js.map +1 -1
  191. package/dist/components/Employee/DocumentSigner/SignatureForm/useSignatureForm.js +4 -6
  192. package/dist/components/Employee/DocumentSigner/SignatureForm/useSignatureForm.js.map +1 -1
  193. package/dist/components/Employee/EmployeeList/Actions.js +4 -6
  194. package/dist/components/Employee/EmployeeList/Actions.js.map +1 -1
  195. package/dist/components/Employee/EmployeeList/EmployeeList.js +3 -4
  196. package/dist/components/Employee/EmployeeList/EmployeeList.js.map +1 -1
  197. package/dist/components/Employee/EmployeeList/Head.js +5 -7
  198. package/dist/components/Employee/EmployeeList/Head.js.map +1 -1
  199. package/dist/components/Employee/EmployeeList/List.js +18 -19
  200. package/dist/components/Employee/EmployeeList/List.js.map +1 -1
  201. package/dist/components/Employee/EmployeeList/useEmployeeList.js +4 -6
  202. package/dist/components/Employee/EmployeeList/useEmployeeList.js.map +1 -1
  203. package/dist/components/Employee/FederalTaxes/Actions.js +6 -8
  204. package/dist/components/Employee/FederalTaxes/Actions.js.map +1 -1
  205. package/dist/components/Employee/FederalTaxes/FederalForm.js +11 -13
  206. package/dist/components/Employee/FederalTaxes/FederalForm.js.map +1 -1
  207. package/dist/components/Employee/FederalTaxes/FederalTaxes.js +8 -8
  208. package/dist/components/Employee/FederalTaxes/FederalTaxes.js.map +1 -1
  209. package/dist/components/Employee/FederalTaxes/Head.js +6 -6
  210. package/dist/components/Employee/FederalTaxes/Head.js.map +1 -1
  211. package/dist/components/Employee/FederalTaxes/useFederalTaxes.js +4 -6
  212. package/dist/components/Employee/FederalTaxes/useFederalTaxes.js.map +1 -1
  213. package/dist/components/Employee/Landing/Landing.js +12 -13
  214. package/dist/components/Employee/Landing/Landing.js.map +1 -1
  215. package/dist/components/Employee/OnboardingSummary/OnboardingSummary.js +7 -7
  216. package/dist/components/Employee/PaymentMethod/Actions.js +7 -9
  217. package/dist/components/Employee/PaymentMethod/Actions.js.map +1 -1
  218. package/dist/components/Employee/PaymentMethod/BankAccountEdit.js +4 -5
  219. package/dist/components/Employee/PaymentMethod/BankAccountEdit.js.map +1 -1
  220. package/dist/components/Employee/PaymentMethod/BankAccountsList.js +9 -11
  221. package/dist/components/Employee/PaymentMethod/BankAccountsList.js.map +1 -1
  222. package/dist/components/Employee/PaymentMethod/PaymentTypeForm.js +6 -7
  223. package/dist/components/Employee/PaymentMethod/PaymentTypeForm.js.map +1 -1
  224. package/dist/components/Employee/PaymentMethod/Split.js +3 -4
  225. package/dist/components/Employee/PaymentMethod/Split.js.map +1 -1
  226. package/dist/components/Employee/PaymentMethod/usePaymentMethod.js +6 -8
  227. package/dist/components/Employee/PaymentMethod/usePaymentMethod.js.map +1 -1
  228. package/dist/components/Employee/Profile/Actions.js +7 -9
  229. package/dist/components/Employee/Profile/Actions.js.map +1 -1
  230. package/dist/components/Employee/Profile/AdminPersonalDetails.js +38 -35
  231. package/dist/components/Employee/Profile/AdminPersonalDetails.js.map +1 -1
  232. package/dist/components/Employee/Profile/HomeAddress.d.ts +52 -0
  233. package/dist/components/Employee/Profile/HomeAddress.js +63 -44
  234. package/dist/components/Employee/Profile/HomeAddress.js.map +1 -1
  235. package/dist/components/Employee/Profile/PersonalDetailsInputs.js +20 -21
  236. package/dist/components/Employee/Profile/PersonalDetailsInputs.js.map +1 -1
  237. package/dist/components/Employee/Profile/Profile.js +150 -143
  238. package/dist/components/Employee/Profile/Profile.js.map +1 -1
  239. package/dist/components/Employee/Profile/useProfile.d.ts +1 -0
  240. package/dist/components/Employee/Profile/useProfile.js +4 -6
  241. package/dist/components/Employee/Profile/useProfile.js.map +1 -1
  242. package/dist/components/Employee/StateTaxes/Actions.js +8 -10
  243. package/dist/components/Employee/StateTaxes/Actions.js.map +1 -1
  244. package/dist/components/Employee/StateTaxes/StateTaxes.js +4 -4
  245. package/dist/components/Employee/StateTaxes/StateTaxes.js.map +1 -1
  246. package/dist/components/Employee/StateTaxes/useStateTaxes.js +4 -6
  247. package/dist/components/Employee/StateTaxes/useStateTaxes.js.map +1 -1
  248. package/dist/components/Employee/Taxes/Actions.js +8 -10
  249. package/dist/components/Employee/Taxes/Actions.js.map +1 -1
  250. package/dist/components/Employee/Taxes/FederalForm.js +9 -11
  251. package/dist/components/Employee/Taxes/FederalForm.js.map +1 -1
  252. package/dist/components/Employee/Taxes/FederalHead.js +6 -6
  253. package/dist/components/Employee/Taxes/FederalHead.js.map +1 -1
  254. package/dist/components/Employee/Taxes/Taxes.js +5 -5
  255. package/dist/components/Employee/Taxes/Taxes.js.map +1 -1
  256. package/dist/components/Employee/Taxes/useTaxes.js +4 -6
  257. package/dist/components/Employee/Taxes/useTaxes.js.map +1 -1
  258. package/dist/components/Flow/Flow.js +16 -18
  259. package/dist/components/Flow/Flow.js.map +1 -1
  260. package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerAlerts.js +9 -11
  261. package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerAlerts.js.map +1 -1
  262. package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerList.js +6 -7
  263. package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerList.js.map +1 -1
  264. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js +64 -64
  265. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js.map +1 -1
  266. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js +133 -135
  267. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js.map +1 -1
  268. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.module.scss.js +5 -3
  269. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.module.scss.js.map +1 -1
  270. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js +127 -119
  271. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js.map +1 -1
  272. package/dist/components/Payroll/PayrollEditEmployee/TimeOffField.js +5 -7
  273. package/dist/components/Payroll/PayrollEditEmployee/TimeOffField.js.map +1 -1
  274. package/dist/components/Payroll/PayrollFlow/PayrollFlowComponents.d.ts +3 -1
  275. package/dist/components/Payroll/PayrollFlow/PayrollFlowComponents.js +22 -22
  276. package/dist/components/Payroll/PayrollFlow/PayrollFlowComponents.js.map +1 -1
  277. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js +40 -27
  278. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js.map +1 -1
  279. package/dist/components/Payroll/PayrollHistory/PayrollHistory.js +50 -72
  280. package/dist/components/Payroll/PayrollHistory/PayrollHistory.js.map +1 -1
  281. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js +2 -4
  282. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js.map +1 -1
  283. package/dist/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.d.ts +1 -1
  284. package/dist/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.js +4 -4
  285. package/dist/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.js.map +1 -1
  286. package/dist/components/Payroll/PayrollLanding/payrollLandingStateMachine.js +20 -20
  287. package/dist/components/Payroll/PayrollLanding/payrollLandingStateMachine.js.map +1 -1
  288. package/dist/components/Payroll/PayrollList/PayrollList.js +24 -21
  289. package/dist/components/Payroll/PayrollList/PayrollList.js.map +1 -1
  290. package/dist/components/Payroll/PayrollList/PayrollListPresentation.d.ts +3 -9
  291. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js +117 -129
  292. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js.map +1 -1
  293. package/dist/components/Payroll/PayrollList/PayrollListPresentation.module.scss.js +6 -6
  294. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js +89 -78
  295. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js.map +1 -1
  296. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js +192 -211
  297. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js.map +1 -1
  298. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.module.scss.js +8 -0
  299. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.module.scss.js.map +1 -0
  300. package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.js +2 -3
  301. package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.js.map +1 -1
  302. package/dist/components/Payroll/usePreparedPayrollData.js +8 -10
  303. package/dist/components/Payroll/usePreparedPayrollData.js.map +1 -1
  304. package/dist/contexts/ComponentAdapter/adapters/defaultComponentAdapter.js +40 -38
  305. package/dist/contexts/ComponentAdapter/adapters/defaultComponentAdapter.js.map +1 -1
  306. package/dist/contexts/ComponentAdapter/componentAdapterTypes.d.ts +1 -0
  307. package/dist/contexts/ComponentAdapter/useComponentContext.d.ts +2 -0
  308. package/dist/contexts/ComponentAdapter/useComponentContext.js.map +1 -1
  309. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js +5 -8
  310. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js.map +1 -1
  311. package/dist/helpers/apiErrorToList.d.ts +7 -0
  312. package/dist/helpers/apiErrorToList.js +23 -0
  313. package/dist/helpers/apiErrorToList.js.map +1 -0
  314. package/dist/helpers/breadcrumbHelpers.js +30 -30
  315. package/dist/helpers/breadcrumbHelpers.js.map +1 -1
  316. package/dist/helpers/dateFormatting.d.ts +15 -7
  317. package/dist/helpers/dateFormatting.js +88 -35
  318. package/dist/helpers/dateFormatting.js.map +1 -1
  319. package/dist/helpers/formattedStrings.js +11 -12
  320. package/dist/helpers/formattedStrings.js.map +1 -1
  321. package/dist/hooks/useAsyncError.js.map +1 -0
  322. package/dist/hooks/useDateFormatter.d.ts +19 -0
  323. package/dist/hooks/useDateFormatter.js +24 -0
  324. package/dist/hooks/useDateFormatter.js.map +1 -0
  325. package/dist/hooks/useMenu.js.map +1 -0
  326. package/dist/{components/Common/hooks → hooks}/useNumberFormatter.js +1 -1
  327. package/dist/hooks/useNumberFormatter.js.map +1 -0
  328. package/dist/hooks/useOverflowDetection/index.d.ts +3 -0
  329. package/dist/hooks/useOverflowDetection/useOverflowDetection.d.ts +7 -0
  330. package/dist/hooks/useOverflowDetection/useOverflowDetection.js +28 -0
  331. package/dist/hooks/useOverflowDetection/useOverflowDetection.js.map +1 -0
  332. package/dist/i18n/en/Company.PaySchedule.json.js +9 -9
  333. package/dist/i18n/en/Employee.Compensation.json.js +15 -15
  334. package/dist/i18n/en/Employee.Deductions.json.js +131 -105
  335. package/dist/i18n/en/Employee.Deductions.json.js.map +1 -1
  336. package/dist/i18n/en/Employee.FederalTaxes.json.js +9 -9
  337. package/dist/i18n/en/Employee.HomeAddress.json.js +1 -1
  338. package/dist/i18n/en/Employee.Taxes.json.js +25 -27
  339. package/dist/i18n/en/Employee.Taxes.json.js.map +1 -1
  340. package/dist/i18n/en/Payroll.PayrollConfiguration.json.js +1 -1
  341. package/dist/i18n/en/Payroll.PayrollOverview.json.js +23 -23
  342. package/dist/i18n/en/common.json.d.ts +2 -1
  343. package/dist/i18n/en/common.json.js +4 -4
  344. package/dist/style.css +1 -1
  345. package/dist/types/i18next.d.ts +16 -1
  346. package/package.json +9 -9
  347. package/dist/components/Common/hooks/useAsyncError.js.map +0 -1
  348. package/dist/components/Common/hooks/useMenu.js.map +0 -1
  349. package/dist/components/Common/hooks/useNumberFormatter.js.map +0 -1
  350. package/dist/components/Employee/Deductions/DeductionsForm/ChildSupportForm.js +0 -221
  351. package/dist/components/Employee/Deductions/DeductionsForm/ChildSupportForm.js.map +0 -1
  352. package/dist/components/Employee/Deductions/DeductionsForm/ChildSupportForm.module.scss.js +0 -8
  353. package/dist/components/Employee/Deductions/DeductionsForm/ChildSupportForm.module.scss.js.map +0 -1
  354. package/dist/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.js +0 -132
  355. package/dist/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.js.map +0 -1
  356. package/dist/components/Employee/Deductions/DeductionsForm/DeductionsForm.module.scss.js +0 -14
  357. package/dist/components/Employee/Deductions/DeductionsForm/DeductionsForm.module.scss.js.map +0 -1
  358. package/dist/components/Employee/Deductions/DeductionsForm/UNSTABLE_DeductionsForm.js +0 -98
  359. package/dist/components/Employee/Deductions/DeductionsForm/UNSTABLE_DeductionsForm.js.map +0 -1
  360. /package/dist/{components/Common/hooks → hooks}/useAsyncError.d.ts +0 -0
  361. /package/dist/{components/Common/hooks → hooks}/useAsyncError.js +0 -0
  362. /package/dist/{components/Common/hooks → hooks}/useMenu.d.ts +0 -0
  363. /package/dist/{components/Common/hooks → hooks}/useMenu.js +0 -0
  364. /package/dist/{components/Common/hooks → hooks}/useNumberFormatter.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"PayrollHistoryPresentation.js","sources":["../../../../src/components/Payroll/PayrollHistory/PayrollHistoryPresentation.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport type { PayrollHistoryItem, PayrollHistoryStatus, 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 ListIcon from '@/assets/icons/list.svg?react'\nimport TrashcanIcon from '@/assets/icons/trashcan.svg?react'\n\ninterface PayrollHistoryPresentationProps {\n payrollHistory: PayrollHistoryItem[]\n selectedTimeFilter: TimeFilterOption\n onTimeFilterChange: (value: TimeFilterOption) => void\n onViewSummary: (payrollId: string) => void\n onViewReceipt: (payrollId: string) => void\n onCancelPayroll: (payrollId: string) => void\n cancelDialogItem: PayrollHistoryItem | null\n onCancelDialogOpen: (item: PayrollHistoryItem) => void\n onCancelDialogClose: () => void\n isLoading?: boolean\n}\n\nconst getStatusVariant = (status: PayrollHistoryStatus) => {\n switch (status) {\n case 'Complete':\n case 'Paid':\n return 'success'\n case 'In progress':\n case 'Unprocessed':\n return 'warning'\n case 'Submitted':\n case 'Pending':\n return 'info'\n default:\n return 'info'\n }\n}\n\nexport const PayrollHistoryPresentation = ({\n payrollHistory,\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, Badge, Select, Dialog } = useComponentContext()\n useI18n('Payroll.PayrollHistory')\n const { t } = useTranslation('Payroll.PayrollHistory')\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 canCancelPayroll = (item: PayrollHistoryItem) => {\n const { status, payroll } = item\n\n const hasValidStatus =\n status === 'Unprocessed' ||\n status === 'Submitted' ||\n status === 'Pending' ||\n status === 'In progress'\n if (!hasValidStatus) return false\n\n if (payroll.payrollStatusMeta?.cancellable === false) {\n return false\n }\n\n // If payroll is processed, check the 3:30 PM PT deadline constraint\n if (payroll.processed && payroll.payrollDeadline) {\n const now = new Date()\n const deadline = new Date(payroll.payrollDeadline)\n\n const ptOffset = getPacificTimeOffset(now)\n const nowInPT = new Date(now.getTime() + ptOffset * 60 * 60 * 1000)\n const deadlineInPT = new Date(\n deadline.getTime() + getPacificTimeOffset(deadline) * 60 * 60 * 1000,\n )\n\n const isSameDay = nowInPT.toDateString() === deadlineInPT.toDateString()\n if (isSameDay) {\n const cutoffTime = new Date(deadlineInPT)\n cutoffTime.setHours(15, 30, 0, 0)\n\n if (nowInPT > cutoffTime) {\n return false\n }\n }\n }\n\n return true\n }\n\n const getPacificTimeOffset = (date: Date): number => {\n const year = date.getFullYear()\n\n const secondSundayMarch = new Date(year, 2, 1)\n secondSundayMarch.setDate(1 + (7 - secondSundayMarch.getDay()) + 7)\n\n const firstSundayNovember = new Date(year, 10, 1)\n firstSundayNovember.setDate(1 + ((7 - firstSundayNovember.getDay()) % 7))\n\n const isDST = date >= secondSundayMarch && date < firstSundayNovember\n return isDST ? -7 : -8\n }\n\n const formatDeadlineForDialog = (item: PayrollHistoryItem): string => {\n const deadline = item.payroll.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: PayrollHistoryItem) => {\n onCancelDialogOpen(item)\n }\n\n const handleConfirmCancel = () => {\n if (cancelDialogItem) {\n onCancelPayroll(cancelDialogItem.id)\n }\n }\n\n const getMenuItems = (item: PayrollHistoryItem): MenuItem[] => {\n const items: MenuItem[] = [\n {\n label: t('menu.viewSummary'),\n icon: <ListIcon aria-hidden />,\n onClick: () => {\n onViewSummary(item.id)\n },\n },\n {\n label: t('menu.viewReceipt'),\n icon: <ListIcon aria-hidden />,\n onClick: () => {\n onViewReceipt(item.id)\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: PayrollHistoryItem) => <Text>{item.payPeriod}</Text>,\n },\n {\n title: t('columns.type'),\n render: (item: PayrollHistoryItem) => <Text>{item.type}</Text>,\n },\n {\n title: t('columns.payDate'),\n render: (item: PayrollHistoryItem) => <Text>{item.payDate}</Text>,\n },\n {\n title: t('columns.status'),\n render: (item: PayrollHistoryItem) => (\n <Badge status={getStatusVariant(item.status)}>{item.status}</Badge>\n ),\n },\n {\n title: t('columns.totalPayroll'),\n render: (item: PayrollHistoryItem) => (\n <Text weight=\"semibold\">\n {item.amount !== undefined\n ? formatNumberAsCurrency(item.amount)\n : t('labels.noAmount')}\n </Text>\n ),\n },\n ]}\n data={payrollHistory}\n itemMenu={(item: PayrollHistoryItem) => <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 ? t('cancelDialog.title', { payPeriod: cancelDialogItem.payPeriod }) : ''\n }\n >\n {cancelDialogItem && (\n <Flex flexDirection=\"column\" gap={16}>\n <Text>{t('cancelDialog.body')}</Text>\n {cancelDialogItem.payroll.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":["getStatusVariant","status","PayrollHistoryPresentation","payrollHistory","selectedTimeFilter","onTimeFilterChange","onViewSummary","onViewReceipt","onCancelPayroll","cancelDialogItem","onCancelDialogOpen","onCancelDialogClose","isLoading","Heading","Text","Badge","Select","Dialog","useComponentContext","useI18n","useTranslation","timeFilterOptions","canCancelPayroll","item","payroll","now","deadline","ptOffset","getPacificTimeOffset","nowInPT","deadlineInPT","cutoffTime","date","year","secondSundayMarch","firstSundayNovember","formatDeadlineForDialog","deadlineDate","timeZone","formatter","timeFormatter","dateStr","handleCancelClick","handleConfirmCancel","getMenuItems","items","jsx","ListIcon","TrashcanIcon","Flex","jsxs","styles","value","DataView","formatNumberAsCurrency","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 { PayrollHistoryItem, PayrollHistoryStatus, 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 ListIcon from '@/assets/icons/list.svg?react'\nimport TrashcanIcon from '@/assets/icons/trashcan.svg?react'\n\ninterface PayrollHistoryPresentationProps {\n payrollHistory: PayrollHistoryItem[]\n selectedTimeFilter: TimeFilterOption\n onTimeFilterChange: (value: TimeFilterOption) => void\n onViewSummary: (payrollId: string) => void\n onViewReceipt: (payrollId: string) => void\n onCancelPayroll: (payrollId: string) => void\n cancelDialogItem: PayrollHistoryItem | null\n onCancelDialogOpen: (item: PayrollHistoryItem) => void\n onCancelDialogClose: () => void\n isLoading?: boolean\n}\n\nconst getStatusVariant = (status: PayrollHistoryStatus) => {\n switch (status) {\n case 'Complete':\n case 'Paid':\n return 'success'\n case 'In progress':\n case 'Unprocessed':\n return 'warning'\n case 'Submitted':\n case 'Pending':\n return 'info'\n default:\n return 'info'\n }\n}\n\nexport const PayrollHistoryPresentation = ({\n payrollHistory,\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, Badge, Select, Dialog } = useComponentContext()\n useI18n('Payroll.PayrollHistory')\n const { t } = useTranslation('Payroll.PayrollHistory')\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 canCancelPayroll = (item: PayrollHistoryItem) => {\n const { status, payroll } = item\n\n const hasValidStatus =\n status === 'Unprocessed' ||\n status === 'Submitted' ||\n status === 'Pending' ||\n status === 'In progress'\n if (!hasValidStatus) return false\n\n if (payroll.payrollStatusMeta?.cancellable === false) {\n return false\n }\n\n // If payroll is processed, check the 3:30 PM PT deadline constraint\n if (payroll.processed && payroll.payrollDeadline) {\n const now = new Date()\n const deadline = new Date(payroll.payrollDeadline)\n\n const ptOffset = getPacificTimeOffset(now)\n const nowInPT = new Date(now.getTime() + ptOffset * 60 * 60 * 1000)\n const deadlineInPT = new Date(\n deadline.getTime() + getPacificTimeOffset(deadline) * 60 * 60 * 1000,\n )\n\n const isSameDay = nowInPT.toDateString() === deadlineInPT.toDateString()\n if (isSameDay) {\n const cutoffTime = new Date(deadlineInPT)\n cutoffTime.setHours(15, 30, 0, 0)\n\n if (nowInPT > cutoffTime) {\n return false\n }\n }\n }\n\n return true\n }\n\n const getPacificTimeOffset = (date: Date): number => {\n const year = date.getFullYear()\n\n const secondSundayMarch = new Date(year, 2, 1)\n secondSundayMarch.setDate(1 + (7 - secondSundayMarch.getDay()) + 7)\n\n const firstSundayNovember = new Date(year, 10, 1)\n firstSundayNovember.setDate(1 + ((7 - firstSundayNovember.getDay()) % 7))\n\n const isDST = date >= secondSundayMarch && date < firstSundayNovember\n return isDST ? -7 : -8\n }\n\n const formatDeadlineForDialog = (item: PayrollHistoryItem): string => {\n const deadline = item.payroll.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: PayrollHistoryItem) => {\n onCancelDialogOpen(item)\n }\n\n const handleConfirmCancel = () => {\n if (cancelDialogItem) {\n onCancelPayroll(cancelDialogItem.id)\n }\n }\n\n const getMenuItems = (item: PayrollHistoryItem): MenuItem[] => {\n const items: MenuItem[] = [\n {\n label: t('menu.viewSummary'),\n icon: <ListIcon aria-hidden />,\n onClick: () => {\n onViewSummary(item.id)\n },\n },\n {\n label: t('menu.viewReceipt'),\n icon: <ListIcon aria-hidden />,\n onClick: () => {\n onViewReceipt(item.id)\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: PayrollHistoryItem) => <Text>{item.payPeriod}</Text>,\n },\n {\n title: t('columns.type'),\n render: (item: PayrollHistoryItem) => <Text>{item.type}</Text>,\n },\n {\n title: t('columns.payDate'),\n render: (item: PayrollHistoryItem) => <Text>{item.payDate}</Text>,\n },\n {\n title: t('columns.status'),\n render: (item: PayrollHistoryItem) => (\n <Badge status={getStatusVariant(item.status)}>{item.status}</Badge>\n ),\n },\n {\n title: t('columns.totalPayroll'),\n render: (item: PayrollHistoryItem) => (\n <Text weight=\"semibold\">\n {item.amount !== undefined\n ? formatNumberAsCurrency(item.amount)\n : t('labels.noAmount')}\n </Text>\n ),\n },\n ]}\n data={payrollHistory}\n itemMenu={(item: PayrollHistoryItem) => <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 ? t('cancelDialog.title', { payPeriod: cancelDialogItem.payPeriod }) : ''\n }\n >\n {cancelDialogItem && (\n <Flex flexDirection=\"column\" gap={16}>\n <Text>{t('cancelDialog.body')}</Text>\n {cancelDialogItem.payroll.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":["getStatusVariant","status","PayrollHistoryPresentation","payrollHistory","selectedTimeFilter","onTimeFilterChange","onViewSummary","onViewReceipt","onCancelPayroll","cancelDialogItem","onCancelDialogOpen","onCancelDialogClose","isLoading","Heading","Text","Badge","Select","Dialog","useComponentContext","useI18n","useTranslation","timeFilterOptions","canCancelPayroll","item","payroll","now","deadline","ptOffset","getPacificTimeOffset","nowInPT","deadlineInPT","cutoffTime","date","year","secondSundayMarch","firstSundayNovember","formatDeadlineForDialog","deadlineDate","timeZone","formatter","timeFormatter","dateStr","handleCancelClick","handleConfirmCancel","getMenuItems","items","jsx","ListIcon","TrashcanIcon","Flex","jsxs","styles","value","DataView","formatNumberAsCurrency","HamburgerMenu"],"mappings":"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"}
@@ -6,7 +6,7 @@ export interface PayrollLandingFlowProps extends BaseComponentInterface<'Payroll
6
6
  export interface PayrollLandingFlowContextInterface extends FlowContextInterface {
7
7
  component: (() => React.JSX.Element) | null;
8
8
  companyId: string;
9
- payrollId?: string;
9
+ payrollUuid?: string;
10
10
  previousState?: 'tabs' | 'overview';
11
11
  selectedTab?: string;
12
12
  }
@@ -39,11 +39,11 @@ function O() {
39
39
  );
40
40
  }
41
41
  function S() {
42
- const { payrollId: o, onEvent: r } = e();
42
+ const { payrollUuid: o, onEvent: r } = e();
43
43
  return /* @__PURE__ */ t(b, { onEvent: r, payrollId: n(o) });
44
44
  }
45
- function j() {
46
- const { companyId: o, payrollId: r, onEvent: a } = e();
45
+ function U() {
46
+ const { companyId: o, payrollUuid: r, onEvent: a } = e();
47
47
  return /* @__PURE__ */ t(
48
48
  f,
49
49
  {
@@ -54,7 +54,7 @@ function j() {
54
54
  );
55
55
  }
56
56
  export {
57
- j as PayrollLandingOverviewContextual,
57
+ U as PayrollLandingOverviewContextual,
58
58
  S as PayrollLandingReceiptsContextual,
59
59
  O as PayrollLandingTabsContextual
60
60
  };
@@ -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 { PayrollHistory } from '../PayrollHistory/PayrollHistory'\nimport { PayrollList } from '../PayrollList/PayrollList'\nimport { PayrollOverview } from '../PayrollOverview/PayrollOverview'\nimport { PayrollReceipts } from '../PayrollReceipts/PayrollReceipts'\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'\n\nexport interface PayrollLandingFlowProps extends BaseComponentInterface<'Payroll.PayrollLanding'> {\n companyId: string\n}\n\nexport interface PayrollLandingFlowContextInterface extends FlowContextInterface {\n component: (() => React.JSX.Element) | null\n companyId: string\n payrollId?: string\n previousState?: 'tabs' | 'overview'\n selectedTab?: string\n}\n\nexport function PayrollLandingTabsContextual() {\n const {\n companyId,\n onEvent,\n selectedTab = 'run-payroll',\n } = useFlow<PayrollLandingFlowContextInterface>()\n const [currentTab, setCurrentTab] = useState(selectedTab)\n const { Tabs } = useComponentContext()\n\n useI18n('Payroll.PayrollLanding')\n const { t } = useTranslation('Payroll.PayrollLanding')\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 <Tabs\n tabs={tabs}\n selectedId={currentTab}\n onSelectionChange={setCurrentTab}\n aria-label={t('aria.tabNavigation')}\n />\n )\n}\n\nexport function PayrollLandingReceiptsContextual() {\n const { payrollId, onEvent } = useFlow<PayrollLandingFlowContextInterface>()\n\n return <PayrollReceipts onEvent={onEvent} payrollId={ensureRequired(payrollId)} />\n}\n\nexport function PayrollLandingOverviewContextual() {\n const { companyId, payrollId, onEvent } = useFlow<PayrollLandingFlowContextInterface>()\n\n return (\n <PayrollOverview\n onEvent={onEvent}\n companyId={ensureRequired(companyId)}\n payrollId={ensureRequired(payrollId)}\n />\n )\n}\n"],"names":["PayrollLandingTabsContextual","companyId","onEvent","selectedTab","useFlow","currentTab","setCurrentTab","useState","Tabs","useComponentContext","useI18n","t","useTranslation","tabs","jsx","PayrollList","ensureRequired","PayrollHistory","PayrollLandingReceiptsContextual","payrollId","PayrollReceipts","PayrollLandingOverviewContextual","PayrollOverview"],"mappings":";;;;;;;;;;;AAyBO,SAASA,IAA+B;AAC7C,QAAM;AAAA,IACJ,WAAAC;AAAA,IACA,SAAAC;AAAA,IACA,aAAAC,IAAc;AAAA,EAAA,IACZC,EAAA,GACE,CAACC,GAAYC,CAAa,IAAIC,EAASJ,CAAW,GAClD,EAAE,MAAAK,EAAA,IAASC,EAAA;AAEjB,EAAAC,EAAQ,wBAAwB;AAChC,QAAM,EAAE,GAAAC,EAAA,IAAMC,EAAe,wBAAwB,GAE/CC,IAAO;AAAA,IACX;AAAA,MACE,IAAI;AAAA,MACJ,OAAOF,EAAE,iBAAiB;AAAA,MAC1B,SAAS,gBAAAG,EAACC,GAAA,EAAY,WAAWC,EAAef,CAAS,GAAG,SAAAC,EAAA,CAAkB;AAAA,IAAA;AAAA,IAEhF;AAAA,MACE,IAAI;AAAA,MACJ,OAAOS,EAAE,qBAAqB;AAAA,MAC9B,SAAS,gBAAAG,EAACG,GAAA,EAAe,WAAWD,EAAef,CAAS,GAAG,SAAAC,EAAA,CAAkB;AAAA,IAAA;AAAA,EACnF;AAGF,SACE,gBAAAY;AAAA,IAACN;AAAA,IAAA;AAAA,MACC,MAAAK;AAAA,MACA,YAAYR;AAAA,MACZ,mBAAmBC;AAAA,MACnB,cAAYK,EAAE,oBAAoB;AAAA,IAAA;AAAA,EAAA;AAGxC;AAEO,SAASO,IAAmC;AACjD,QAAM,EAAE,WAAAC,GAAW,SAAAjB,EAAA,IAAYE,EAAA;AAE/B,2BAAQgB,GAAA,EAAgB,SAAAlB,GAAkB,WAAWc,EAAeG,CAAS,GAAG;AAClF;AAEO,SAASE,IAAmC;AACjD,QAAM,EAAE,WAAApB,GAAW,WAAAkB,GAAW,SAAAjB,EAAA,IAAYE,EAAA;AAE1C,SACE,gBAAAU;AAAA,IAACQ;AAAA,IAAA;AAAA,MACC,SAAApB;AAAA,MACA,WAAWc,EAAef,CAAS;AAAA,MACnC,WAAWe,EAAeG,CAAS;AAAA,IAAA;AAAA,EAAA;AAGzC;"}
1
+ {"version":3,"file":"PayrollLandingFlowComponents.js","sources":["../../../../src/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.tsx"],"sourcesContent":["import { useState } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport { PayrollHistory } from '../PayrollHistory/PayrollHistory'\nimport { PayrollList } from '../PayrollList/PayrollList'\nimport { PayrollOverview } from '../PayrollOverview/PayrollOverview'\nimport { PayrollReceipts } from '../PayrollReceipts/PayrollReceipts'\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'\n\nexport interface PayrollLandingFlowProps extends BaseComponentInterface<'Payroll.PayrollLanding'> {\n companyId: string\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}\n\nexport function PayrollLandingTabsContextual() {\n const {\n companyId,\n onEvent,\n selectedTab = 'run-payroll',\n } = useFlow<PayrollLandingFlowContextInterface>()\n const [currentTab, setCurrentTab] = useState(selectedTab)\n const { Tabs } = useComponentContext()\n\n useI18n('Payroll.PayrollLanding')\n const { t } = useTranslation('Payroll.PayrollLanding')\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 <Tabs\n tabs={tabs}\n selectedId={currentTab}\n onSelectionChange={setCurrentTab}\n aria-label={t('aria.tabNavigation')}\n />\n )\n}\n\nexport function PayrollLandingReceiptsContextual() {\n const { payrollUuid, onEvent } = useFlow<PayrollLandingFlowContextInterface>()\n\n return <PayrollReceipts onEvent={onEvent} payrollId={ensureRequired(payrollUuid)} />\n}\n\nexport function PayrollLandingOverviewContextual() {\n const { companyId, payrollUuid, onEvent } = useFlow<PayrollLandingFlowContextInterface>()\n\n return (\n <PayrollOverview\n onEvent={onEvent}\n companyId={ensureRequired(companyId)}\n payrollId={ensureRequired(payrollUuid)}\n />\n )\n}\n"],"names":["PayrollLandingTabsContextual","companyId","onEvent","selectedTab","useFlow","currentTab","setCurrentTab","useState","Tabs","useComponentContext","useI18n","t","useTranslation","tabs","jsx","PayrollList","ensureRequired","PayrollHistory","PayrollLandingReceiptsContextual","payrollUuid","PayrollReceipts","PayrollLandingOverviewContextual","PayrollOverview"],"mappings":";;;;;;;;;;;AAyBO,SAASA,IAA+B;AAC7C,QAAM;AAAA,IACJ,WAAAC;AAAA,IACA,SAAAC;AAAA,IACA,aAAAC,IAAc;AAAA,EAAA,IACZC,EAAA,GACE,CAACC,GAAYC,CAAa,IAAIC,EAASJ,CAAW,GAClD,EAAE,MAAAK,EAAA,IAASC,EAAA;AAEjB,EAAAC,EAAQ,wBAAwB;AAChC,QAAM,EAAE,GAAAC,EAAA,IAAMC,EAAe,wBAAwB,GAE/CC,IAAO;AAAA,IACX;AAAA,MACE,IAAI;AAAA,MACJ,OAAOF,EAAE,iBAAiB;AAAA,MAC1B,SAAS,gBAAAG,EAACC,GAAA,EAAY,WAAWC,EAAef,CAAS,GAAG,SAAAC,EAAA,CAAkB;AAAA,IAAA;AAAA,IAEhF;AAAA,MACE,IAAI;AAAA,MACJ,OAAOS,EAAE,qBAAqB;AAAA,MAC9B,SAAS,gBAAAG,EAACG,GAAA,EAAe,WAAWD,EAAef,CAAS,GAAG,SAAAC,EAAA,CAAkB;AAAA,IAAA;AAAA,EACnF;AAGF,SACE,gBAAAY;AAAA,IAACN;AAAA,IAAA;AAAA,MACC,MAAAK;AAAA,MACA,YAAYR;AAAA,MACZ,mBAAmBC;AAAA,MACnB,cAAYK,EAAE,oBAAoB;AAAA,IAAA;AAAA,EAAA;AAGxC;AAEO,SAASO,IAAmC;AACjD,QAAM,EAAE,aAAAC,GAAa,SAAAjB,EAAA,IAAYE,EAAA;AAEjC,2BAAQgB,GAAA,EAAgB,SAAAlB,GAAkB,WAAWc,EAAeG,CAAW,GAAG;AACpF;AAEO,SAASE,IAAmC;AACjD,QAAM,EAAE,WAAApB,GAAW,aAAAkB,GAAa,SAAAjB,EAAA,IAAYE,EAAA;AAE5C,SACE,gBAAAU;AAAA,IAACQ;AAAA,IAAA;AAAA,MACC,SAAApB;AAAA,MACA,WAAWc,EAAef,CAAS;AAAA,MACnC,WAAWe,EAAeG,CAAW;AAAA,IAAA;AAAA,EAAA;AAG3C;"}
@@ -1,19 +1,19 @@
1
- import { state as p, transition as t, reduce as r, guard as n } from "robot3";
2
- import { PayrollLandingReceiptsContextual as i, PayrollLandingOverviewContextual as s, PayrollLandingTabsContextual as v } from "./PayrollLandingFlowComponents.js";
1
+ import { state as i, transition as t, reduce as r, guard as l } from "robot3";
2
+ import { PayrollLandingReceiptsContextual as n, PayrollLandingOverviewContextual as s, PayrollLandingTabsContextual as v } from "./PayrollLandingFlowComponents.js";
3
3
  import { componentEvents as a } from "../../../shared/constants.js";
4
- const l = (e) => (o) => ({
4
+ const p = (e) => (o) => ({
5
5
  ...o,
6
6
  ...e
7
- }), u = {
8
- tabs: p(
7
+ }), y = {
8
+ tabs: i(
9
9
  t(
10
10
  a.RUN_PAYROLL_RECEIPT_VIEWED,
11
11
  "receipt",
12
12
  r(
13
13
  (e, o) => ({
14
14
  ...e,
15
- component: i,
16
- payrollId: o.payload.payrollId,
15
+ component: n,
16
+ payrollUuid: o.payload.payrollId,
17
17
  previousState: "tabs",
18
18
  selectedTab: "payroll-history"
19
19
  // Receipt viewed from payroll history tab
@@ -27,7 +27,7 @@ const l = (e) => (o) => ({
27
27
  (e, o) => ({
28
28
  ...e,
29
29
  component: s,
30
- payrollId: o.payload.payrollId,
30
+ payrollUuid: o.payload.payrollId,
31
31
  previousState: "tabs",
32
32
  selectedTab: "payroll-history"
33
33
  // Summary viewed from payroll history tab
@@ -35,14 +35,14 @@ const l = (e) => (o) => ({
35
35
  )
36
36
  )
37
37
  ),
38
- overview: p(
38
+ overview: i(
39
39
  t(
40
40
  a.RUN_PAYROLL_BACK,
41
41
  "tabs",
42
42
  r(
43
- l({
43
+ p({
44
44
  component: v,
45
- payrollId: void 0,
45
+ payrollUuid: void 0,
46
46
  previousState: void 0
47
47
  // Preserve selectedTab when going back to tabs
48
48
  })
@@ -54,40 +54,40 @@ const l = (e) => (o) => ({
54
54
  r(
55
55
  (e, o) => ({
56
56
  ...e,
57
- component: i,
58
- payrollId: o.payload.payrollId,
57
+ component: n,
58
+ payrollUuid: o.payload.payrollId,
59
59
  previousState: "overview"
60
60
  })
61
61
  )
62
62
  )
63
63
  ),
64
- receipt: p(
64
+ receipt: i(
65
65
  t(
66
66
  a.RUN_PAYROLL_BACK,
67
67
  "overview",
68
68
  r(
69
- l({
69
+ p({
70
70
  component: s,
71
71
  previousState: "tabs"
72
72
  })
73
73
  ),
74
- n((e) => e.previousState === "overview")
74
+ l((e) => e.previousState === "overview")
75
75
  ),
76
76
  t(
77
77
  a.RUN_PAYROLL_BACK,
78
78
  "tabs",
79
79
  r(
80
- l({
80
+ p({
81
81
  component: v,
82
- payrollId: void 0,
82
+ payrollUuid: void 0,
83
83
  previousState: void 0
84
84
  })
85
85
  ),
86
- n((e) => e.previousState === "tabs")
86
+ l((e) => e.previousState === "tabs")
87
87
  )
88
88
  )
89
89
  };
90
90
  export {
91
- u as payrollLandingMachine
91
+ y as payrollLandingMachine
92
92
  };
93
93
  //# sourceMappingURL=payrollLandingStateMachine.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"payrollLandingStateMachine.js","sources":["../../../../src/components/Payroll/PayrollLanding/payrollLandingStateMachine.ts"],"sourcesContent":["import { transition, reduce, state, guard } from 'robot3'\nimport {\n PayrollLandingTabsContextual,\n PayrollLandingReceiptsContextual,\n PayrollLandingOverviewContextual,\n type PayrollLandingFlowContextInterface,\n} from './PayrollLandingFlowComponents'\nimport { componentEvents } from '@/shared/constants'\nimport type { MachineEventType, MachineTransition } from '@/types/Helpers'\n\ntype EventPayloads = {\n [componentEvents.RUN_PAYROLL_RECEIPT_VIEWED]: {\n payrollId: string\n }\n [componentEvents.RUN_PAYROLL_SUMMARY_VIEWED]: {\n payrollId: string\n }\n [componentEvents.RUN_PAYROLL_RECEIPT_GET]: {\n payrollId: string\n }\n}\n\nconst createReducer = (props: Partial<PayrollLandingFlowContextInterface>) => {\n return (ctx: PayrollLandingFlowContextInterface): PayrollLandingFlowContextInterface => ({\n ...ctx,\n ...props,\n })\n}\n\nexport const payrollLandingMachine = {\n tabs: state<MachineTransition>(\n transition(\n componentEvents.RUN_PAYROLL_RECEIPT_VIEWED,\n 'receipt',\n reduce(\n (\n ctx: PayrollLandingFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.RUN_PAYROLL_RECEIPT_VIEWED>,\n ): PayrollLandingFlowContextInterface => ({\n ...ctx,\n component: PayrollLandingReceiptsContextual,\n payrollId: ev.payload.payrollId,\n previousState: 'tabs',\n selectedTab: 'payroll-history', // Receipt viewed from payroll history tab\n }),\n ),\n ),\n transition(\n componentEvents.RUN_PAYROLL_SUMMARY_VIEWED,\n 'overview',\n reduce(\n (\n ctx: PayrollLandingFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.RUN_PAYROLL_SUMMARY_VIEWED>,\n ): PayrollLandingFlowContextInterface => ({\n ...ctx,\n component: PayrollLandingOverviewContextual,\n payrollId: ev.payload.payrollId,\n previousState: 'tabs',\n selectedTab: 'payroll-history', // Summary viewed from payroll history tab\n }),\n ),\n ),\n ),\n overview: state<MachineTransition>(\n transition(\n componentEvents.RUN_PAYROLL_BACK,\n 'tabs',\n reduce(\n createReducer({\n component: PayrollLandingTabsContextual,\n payrollId: undefined,\n previousState: undefined,\n // Preserve selectedTab when going back to tabs\n }),\n ),\n ),\n transition(\n componentEvents.RUN_PAYROLL_RECEIPT_GET,\n 'receipt',\n reduce(\n (\n ctx: PayrollLandingFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.RUN_PAYROLL_RECEIPT_GET>,\n ): PayrollLandingFlowContextInterface => {\n return {\n ...ctx,\n component: PayrollLandingReceiptsContextual,\n payrollId: ev.payload.payrollId,\n previousState: 'overview',\n }\n },\n ),\n ),\n ),\n receipt: state<MachineTransition>(\n transition(\n componentEvents.RUN_PAYROLL_BACK,\n 'overview',\n reduce(\n createReducer({\n component: PayrollLandingOverviewContextual,\n previousState: 'tabs',\n }),\n ),\n guard((ctx: PayrollLandingFlowContextInterface) => {\n return ctx.previousState === 'overview'\n }),\n ),\n transition(\n componentEvents.RUN_PAYROLL_BACK,\n 'tabs',\n reduce(\n createReducer({\n component: PayrollLandingTabsContextual,\n payrollId: undefined,\n previousState: undefined,\n }),\n ),\n guard((ctx: PayrollLandingFlowContextInterface) => {\n return ctx.previousState === 'tabs'\n }),\n ),\n ),\n}\n"],"names":["createReducer","props","ctx","payrollLandingMachine","state","transition","componentEvents","reduce","ev","PayrollLandingReceiptsContextual","PayrollLandingOverviewContextual","PayrollLandingTabsContextual","guard"],"mappings":";;;AAsBA,MAAMA,IAAgB,CAACC,MACd,CAACC,OAAiF;AAAA,EACvF,GAAGA;AAAA,EACH,GAAGD;AAAA,IAIME,IAAwB;AAAA,EACnC,MAAMC;AAAA,IACJC;AAAA,MACEC,EAAgB;AAAA,MAChB;AAAA,MACAC;AAAA,QACE,CACEL,GACAM,OACwC;AAAA,UACxC,GAAGN;AAAA,UACH,WAAWO;AAAA,UACX,WAAWD,EAAG,QAAQ;AAAA,UACtB,eAAe;AAAA,UACf,aAAa;AAAA;AAAA,QAAA;AAAA,MACf;AAAA,IACF;AAAA,IAEFH;AAAA,MACEC,EAAgB;AAAA,MAChB;AAAA,MACAC;AAAA,QACE,CACEL,GACAM,OACwC;AAAA,UACxC,GAAGN;AAAA,UACH,WAAWQ;AAAA,UACX,WAAWF,EAAG,QAAQ;AAAA,UACtB,eAAe;AAAA,UACf,aAAa;AAAA;AAAA,QAAA;AAAA,MACf;AAAA,IACF;AAAA,EACF;AAAA,EAEF,UAAUJ;AAAA,IACRC;AAAA,MACEC,EAAgB;AAAA,MAChB;AAAA,MACAC;AAAA,QACEP,EAAc;AAAA,UACZ,WAAWW;AAAA,UACX,WAAW;AAAA,UACX,eAAe;AAAA;AAAA,QAAA,CAEhB;AAAA,MAAA;AAAA,IACH;AAAA,IAEFN;AAAA,MACEC,EAAgB;AAAA,MAChB;AAAA,MACAC;AAAA,QACE,CACEL,GACAM,OAEO;AAAA,UACL,GAAGN;AAAA,UACH,WAAWO;AAAA,UACX,WAAWD,EAAG,QAAQ;AAAA,UACtB,eAAe;AAAA,QAAA;AAAA,MAEnB;AAAA,IACF;AAAA,EACF;AAAA,EAEF,SAASJ;AAAA,IACPC;AAAA,MACEC,EAAgB;AAAA,MAChB;AAAA,MACAC;AAAA,QACEP,EAAc;AAAA,UACZ,WAAWU;AAAA,UACX,eAAe;AAAA,QAAA,CAChB;AAAA,MAAA;AAAA,MAEHE,EAAM,CAACV,MACEA,EAAI,kBAAkB,UAC9B;AAAA,IAAA;AAAA,IAEHG;AAAA,MACEC,EAAgB;AAAA,MAChB;AAAA,MACAC;AAAA,QACEP,EAAc;AAAA,UACZ,WAAWW;AAAA,UACX,WAAW;AAAA,UACX,eAAe;AAAA,QAAA,CAChB;AAAA,MAAA;AAAA,MAEHC,EAAM,CAACV,MACEA,EAAI,kBAAkB,MAC9B;AAAA,IAAA;AAAA,EACH;AAEJ;"}
1
+ {"version":3,"file":"payrollLandingStateMachine.js","sources":["../../../../src/components/Payroll/PayrollLanding/payrollLandingStateMachine.ts"],"sourcesContent":["import { transition, reduce, state, guard } from 'robot3'\nimport {\n PayrollLandingTabsContextual,\n PayrollLandingReceiptsContextual,\n PayrollLandingOverviewContextual,\n type PayrollLandingFlowContextInterface,\n} from './PayrollLandingFlowComponents'\nimport { componentEvents } from '@/shared/constants'\nimport type { MachineEventType, MachineTransition } from '@/types/Helpers'\n\ntype EventPayloads = {\n [componentEvents.RUN_PAYROLL_RECEIPT_VIEWED]: {\n payrollId: string\n }\n [componentEvents.RUN_PAYROLL_SUMMARY_VIEWED]: {\n payrollId: string\n }\n [componentEvents.RUN_PAYROLL_RECEIPT_GET]: {\n payrollId: string\n }\n}\n\nconst createReducer = (props: Partial<PayrollLandingFlowContextInterface>) => {\n return (ctx: PayrollLandingFlowContextInterface): PayrollLandingFlowContextInterface => ({\n ...ctx,\n ...props,\n })\n}\n\nexport const payrollLandingMachine = {\n tabs: state<MachineTransition>(\n transition(\n componentEvents.RUN_PAYROLL_RECEIPT_VIEWED,\n 'receipt',\n reduce(\n (\n ctx: PayrollLandingFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.RUN_PAYROLL_RECEIPT_VIEWED>,\n ): PayrollLandingFlowContextInterface => ({\n ...ctx,\n component: PayrollLandingReceiptsContextual,\n payrollUuid: ev.payload.payrollId,\n previousState: 'tabs',\n selectedTab: 'payroll-history', // Receipt viewed from payroll history tab\n }),\n ),\n ),\n transition(\n componentEvents.RUN_PAYROLL_SUMMARY_VIEWED,\n 'overview',\n reduce(\n (\n ctx: PayrollLandingFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.RUN_PAYROLL_SUMMARY_VIEWED>,\n ): PayrollLandingFlowContextInterface => ({\n ...ctx,\n component: PayrollLandingOverviewContextual,\n payrollUuid: ev.payload.payrollId,\n previousState: 'tabs',\n selectedTab: 'payroll-history', // Summary viewed from payroll history tab\n }),\n ),\n ),\n ),\n overview: state<MachineTransition>(\n transition(\n componentEvents.RUN_PAYROLL_BACK,\n 'tabs',\n reduce(\n createReducer({\n component: PayrollLandingTabsContextual,\n payrollUuid: undefined,\n previousState: undefined,\n // Preserve selectedTab when going back to tabs\n }),\n ),\n ),\n transition(\n componentEvents.RUN_PAYROLL_RECEIPT_GET,\n 'receipt',\n reduce(\n (\n ctx: PayrollLandingFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.RUN_PAYROLL_RECEIPT_GET>,\n ): PayrollLandingFlowContextInterface => {\n return {\n ...ctx,\n component: PayrollLandingReceiptsContextual,\n payrollUuid: ev.payload.payrollId,\n previousState: 'overview',\n }\n },\n ),\n ),\n ),\n receipt: state<MachineTransition>(\n transition(\n componentEvents.RUN_PAYROLL_BACK,\n 'overview',\n reduce(\n createReducer({\n component: PayrollLandingOverviewContextual,\n previousState: 'tabs',\n }),\n ),\n guard((ctx: PayrollLandingFlowContextInterface) => {\n return ctx.previousState === 'overview'\n }),\n ),\n transition(\n componentEvents.RUN_PAYROLL_BACK,\n 'tabs',\n reduce(\n createReducer({\n component: PayrollLandingTabsContextual,\n payrollUuid: undefined,\n previousState: undefined,\n }),\n ),\n guard((ctx: PayrollLandingFlowContextInterface) => {\n return ctx.previousState === 'tabs'\n }),\n ),\n ),\n}\n"],"names":["createReducer","props","ctx","payrollLandingMachine","state","transition","componentEvents","reduce","ev","PayrollLandingReceiptsContextual","PayrollLandingOverviewContextual","PayrollLandingTabsContextual","guard"],"mappings":";;;AAsBA,MAAMA,IAAgB,CAACC,MACd,CAACC,OAAiF;AAAA,EACvF,GAAGA;AAAA,EACH,GAAGD;AAAA,IAIME,IAAwB;AAAA,EACnC,MAAMC;AAAA,IACJC;AAAA,MACEC,EAAgB;AAAA,MAChB;AAAA,MACAC;AAAA,QACE,CACEL,GACAM,OACwC;AAAA,UACxC,GAAGN;AAAA,UACH,WAAWO;AAAA,UACX,aAAaD,EAAG,QAAQ;AAAA,UACxB,eAAe;AAAA,UACf,aAAa;AAAA;AAAA,QAAA;AAAA,MACf;AAAA,IACF;AAAA,IAEFH;AAAA,MACEC,EAAgB;AAAA,MAChB;AAAA,MACAC;AAAA,QACE,CACEL,GACAM,OACwC;AAAA,UACxC,GAAGN;AAAA,UACH,WAAWQ;AAAA,UACX,aAAaF,EAAG,QAAQ;AAAA,UACxB,eAAe;AAAA,UACf,aAAa;AAAA;AAAA,QAAA;AAAA,MACf;AAAA,IACF;AAAA,EACF;AAAA,EAEF,UAAUJ;AAAA,IACRC;AAAA,MACEC,EAAgB;AAAA,MAChB;AAAA,MACAC;AAAA,QACEP,EAAc;AAAA,UACZ,WAAWW;AAAA,UACX,aAAa;AAAA,UACb,eAAe;AAAA;AAAA,QAAA,CAEhB;AAAA,MAAA;AAAA,IACH;AAAA,IAEFN;AAAA,MACEC,EAAgB;AAAA,MAChB;AAAA,MACAC;AAAA,QACE,CACEL,GACAM,OAEO;AAAA,UACL,GAAGN;AAAA,UACH,WAAWO;AAAA,UACX,aAAaD,EAAG,QAAQ;AAAA,UACxB,eAAe;AAAA,QAAA;AAAA,MAEnB;AAAA,IACF;AAAA,EACF;AAAA,EAEF,SAASJ;AAAA,IACPC;AAAA,MACEC,EAAgB;AAAA,MAChB;AAAA,MACAC;AAAA,QACEP,EAAc;AAAA,UACZ,WAAWU;AAAA,UACX,eAAe;AAAA,QAAA,CAChB;AAAA,MAAA;AAAA,MAEHE,EAAM,CAACV,MACEA,EAAI,kBAAkB,UAC9B;AAAA,IAAA;AAAA,IAEHG;AAAA,MACEC,EAAgB;AAAA,MAChB;AAAA,MACAC;AAAA,QACEP,EAAc;AAAA,UACZ,WAAWW;AAAA,UACX,aAAa;AAAA,UACb,eAAe;AAAA,QAAA,CAChB;AAAA,MAAA;AAAA,MAEHC,EAAM,CAACV,MACEA,EAAI,kBAAkB,MAC9B;AAAA,IAAA;AAAA,EACH;AAEJ;"}
@@ -2,10 +2,10 @@ import { jsx as a } from "react/jsx-runtime";
2
2
  import { useState as n } from "react";
3
3
  import { usePayrollsListSuspense as B } from "@gusto/embedded-api/react-query/payrollsList";
4
4
  import { usePaySchedulesGetAllSuspense as g } from "@gusto/embedded-api/react-query/paySchedulesGetAll";
5
- import { usePayrollsSkipMutation as U } from "@gusto/embedded-api/react-query/payrollsSkip";
6
- import { usePayrollsGetBlockersSuspense as _ } from "@gusto/embedded-api/react-query/payrollsGetBlockers";
7
- import { PayrollType as w } from "@gusto/embedded-api/models/operations/postcompaniespayrollskipcompanyuuid";
8
- import { ProcessingStatuses as E } from "@gusto/embedded-api/models/operations/getv1companiescompanyidpayrolls";
5
+ import { usePayrollsSkipMutation as _ } from "@gusto/embedded-api/react-query/payrollsSkip";
6
+ import { usePayrollsGetBlockersSuspense as w } from "@gusto/embedded-api/react-query/payrollsGetBlockers";
7
+ import { PayrollType as E } from "@gusto/embedded-api/models/operations/postcompaniespayrollskipcompanyuuid";
8
+ import { ProcessingStatuses as U } from "@gusto/embedded-api/models/operations/getv1companiescompanyidpayrolls";
9
9
  import { getPayrollType as O } from "../helpers.js";
10
10
  import { PayrollListPresentation as T } from "./PayrollListPresentation.js";
11
11
  import { BaseComponent as b } from "../../Base/Base.js";
@@ -16,39 +16,42 @@ const C = (o) => ({
16
16
  payrollType: O(o)
17
17
  });
18
18
  function X(o) {
19
- return /* @__PURE__ */ a(b, { ...o, children: /* @__PURE__ */ a(V, { ...o }) });
19
+ return /* @__PURE__ */ a(b, { ...o, children: /* @__PURE__ */ a(I, { ...o }) });
20
20
  }
21
- const V = ({ companyId: o, onEvent: e }) => {
21
+ const I = ({ companyId: o, onEvent: t }) => {
22
22
  const { baseSubmitHandler: c } = Y(), [y, l] = n(!1), [u, i] = n(null), { data: m } = B({
23
23
  companyId: o,
24
- processingStatuses: [E.Unprocessed]
24
+ processingStatuses: [U.Unprocessed]
25
25
  }), p = m.payrollList, { data: P } = g({
26
26
  companyId: o
27
- }), S = P.payScheduleList, { data: d } = _({
27
+ }), S = P.payScheduleList, { data: d } = w({
28
28
  companyUuid: o
29
29
  }), L = (d.payrollBlockerList ?? []).map((s) => ({
30
30
  key: s.key ?? "unknown",
31
31
  message: s.message
32
- })), { mutateAsync: f } = U(), k = ({ payrollId: s }) => {
33
- e(r.RUN_PAYROLL_SELECTED, { payrollId: s });
34
- }, R = ({ payrollId: s }) => {
35
- e(r.REVIEW_PAYROLL, { payrollId: s });
32
+ })), { mutateAsync: f } = _(), k = ({ payrollUuid: s, payPeriod: e }) => {
33
+ t(r.RUN_PAYROLL_SELECTED, { payrollUuid: s, payPeriod: e });
34
+ }, R = ({
35
+ payrollUuid: s,
36
+ payPeriod: e
37
+ }) => {
38
+ t(r.REVIEW_PAYROLL, { payrollUuid: s, payPeriod: e });
36
39
  }, h = () => {
37
- e(r.RUN_PAYROLL_BLOCKERS_VIEW_ALL);
38
- }, A = async ({ payrollId: s }) => {
39
- const t = p.find((D) => D.payrollUuid === s);
40
- t?.payPeriod && (i(s), await c({}, async () => {
40
+ t(r.RUN_PAYROLL_BLOCKERS_VIEW_ALL);
41
+ }, A = async ({ payrollUuid: s }) => {
42
+ const e = p.find((D) => D.payrollUuid === s);
43
+ e?.payPeriod && (i(s), await c({}, async () => {
41
44
  await f({
42
45
  request: {
43
46
  companyUuid: o,
44
47
  requestBody: {
45
- payrollType: w.Regular,
46
- startDate: t.payPeriod?.startDate,
47
- endDate: t.payPeriod?.endDate,
48
- payScheduleUuid: t.payPeriod?.payScheduleUuid ?? void 0
48
+ payrollType: E.Regular,
49
+ startDate: e.payPeriod?.startDate,
50
+ endDate: e.payPeriod?.endDate,
51
+ payScheduleUuid: e.payPeriod?.payScheduleUuid ?? void 0
49
52
  }
50
53
  }
51
- }), l(!0), e(r.PAYROLL_SKIPPED, { payrollId: s });
54
+ }), l(!0), t(r.PAYROLL_SKIPPED, { payrollId: s });
52
55
  }), i(null));
53
56
  };
54
57
  return /* @__PURE__ */ a(
@@ -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 { 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 { getPayrollType } from '../helpers'\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\nconst createPayrollProjection = (p: Payroll) => ({\n ...p,\n payrollType: getPayrollType(p),\n})\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.payrollBlockerList ?? []\n\n const blockers: ApiPayrollBlocker[] = payrollBlockerList.map(blocker => ({\n key: blocker.key ?? 'unknown',\n message: blocker.message,\n }))\n\n const { mutateAsync: skipPayroll } = usePayrollsSkipMutation()\n\n const onRunPayroll = ({ payrollId }: { payrollId: string }) => {\n onEvent(componentEvents.RUN_PAYROLL_SELECTED, { payrollId })\n }\n const onSubmitPayroll = ({ payrollId }: { payrollId: string }) => {\n onEvent(componentEvents.REVIEW_PAYROLL, { payrollId })\n }\n const onViewBlockers = () => {\n onEvent(componentEvents.RUN_PAYROLL_BLOCKERS_VIEW_ALL)\n }\n const onSkipPayroll = async ({ payrollId }: { payrollId: string }) => {\n const payroll = payrollList.find(payroll => payroll.payrollUuid === payrollId)\n\n if (payroll?.payPeriod) {\n setSkippingPayrollId(payrollId)\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 })\n })\n setSkippingPayrollId(null)\n }\n }\n return (\n <PayrollListPresentation\n payrolls={payrollList.map(createPayrollProjection)}\n paySchedules={paySchedulesList}\n onRunPayroll={onRunPayroll}\n onSubmitPayroll={onSubmitPayroll}\n onSkipPayroll={onSkipPayroll}\n onViewBlockers={onViewBlockers}\n showSkipSuccessAlert={showSkipSuccessAlert}\n onDismissSkipSuccessAlert={() => {\n setShowSkipSuccessAlert(false)\n }}\n skippingPayrollId={skippingPayrollId}\n blockers={blockers}\n />\n )\n}\n"],"names":["createPayrollProjection","p","getPayrollType","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","skipPayroll","usePayrollsSkipMutation","onRunPayroll","payrollId","componentEvents","onSubmitPayroll","onViewBlockers","onSkipPayroll","payroll","PayrollType","PayrollListPresentation"],"mappings":";;;;;;;;;;;;;AAeA,MAAMA,IAA0B,CAACC,OAAgB;AAAA,EAC/C,GAAGA;AAAA,EACH,aAAaC,EAAeD,CAAC;AAC/B;AAMO,SAASE,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,sBAAsB,CAAA,GAEL,IAAI,CAAAG,OAAY;AAAA,IACvE,KAAKA,EAAQ,OAAO;AAAA,IACpB,SAASA,EAAQ;AAAA,EAAA,EACjB,GAEI,EAAE,aAAaC,EAAA,IAAgBC,EAAA,GAE/BC,IAAe,CAAC,EAAE,WAAAC,QAAuC;AAC7D,IAAAtB,EAAQuB,EAAgB,sBAAsB,EAAE,WAAAD,EAAA,CAAW;AAAA,EAC7D,GACME,IAAkB,CAAC,EAAE,WAAAF,QAAuC;AAChE,IAAAtB,EAAQuB,EAAgB,gBAAgB,EAAE,WAAAD,EAAA,CAAW;AAAA,EACvD,GACMG,IAAiB,MAAM;AAC3B,IAAAzB,EAAQuB,EAAgB,6BAA6B;AAAA,EACvD,GACMG,IAAgB,OAAO,EAAE,WAAAJ,QAAuC;AACpE,UAAMK,IAAUhB,EAAY,KAAK,CAAAgB,MAAWA,EAAQ,gBAAgBL,CAAS;AAE7E,IAAIK,GAAS,cACXpB,EAAqBe,CAAS,GAC9B,MAAMrB,EAAkB,CAAA,GAAI,YAAY;AACtC,YAAMkB,EAAY;AAAA,QAChB,SAAS;AAAA,UACP,aAAapB;AAAA,UACb,aAAa;AAAA,YACX,aAAa6B,EAAY;AAAA,YACzB,WAAWD,EAAQ,WAAW;AAAA,YAC9B,SAASA,EAAQ,WAAW;AAAA,YAC5B,iBAAiBA,EAAQ,WAAW,mBAAmB;AAAA,UAAA;AAAA,QACzD;AAAA,MACF,CACD,GAEDvB,EAAwB,EAAI,GAC5BJ,EAAQuB,EAAgB,iBAAiB,EAAE,WAAAD,EAAA,CAAW;AAAA,IACxD,CAAC,GACDf,EAAqB,IAAI;AAAA,EAE7B;AACA,SACE,gBAAAX;AAAA,IAACiC;AAAA,IAAA;AAAA,MACC,UAAUlB,EAAY,IAAIpB,CAAuB;AAAA,MACjD,cAAcuB;AAAA,MACd,cAAAO;AAAA,MACA,iBAAAG;AAAA,MACA,eAAAE;AAAA,MACA,gBAAAD;AAAA,MACA,sBAAAtB;AAAA,MACA,2BAA2B,MAAM;AAC/B,QAAAC,EAAwB,EAAK;AAAA,MAC/B;AAAA,MACA,mBAAAE;AAAA,MACA,UAAAW;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 { 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 { getPayrollType } from '../helpers'\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\nconst createPayrollProjection = (p: Payroll) => ({\n ...p,\n payrollType: getPayrollType(p),\n})\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.payrollBlockerList ?? []\n\n const blockers: ApiPayrollBlocker[] = payrollBlockerList.map(blocker => ({\n key: blocker.key ?? 'unknown',\n message: blocker.message,\n }))\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 onViewBlockers = () => {\n onEvent(componentEvents.RUN_PAYROLL_BLOCKERS_VIEW_ALL)\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.map(createPayrollProjection)}\n paySchedules={paySchedulesList}\n onRunPayroll={onRunPayroll}\n onSubmitPayroll={onSubmitPayroll}\n onSkipPayroll={onSkipPayroll}\n onViewBlockers={onViewBlockers}\n showSkipSuccessAlert={showSkipSuccessAlert}\n onDismissSkipSuccessAlert={() => {\n setShowSkipSuccessAlert(false)\n }}\n skippingPayrollId={skippingPayrollId}\n blockers={blockers}\n />\n )\n}\n"],"names":["createPayrollProjection","p","getPayrollType","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","skipPayroll","usePayrollsSkipMutation","onRunPayroll","payrollUuid","payPeriod","componentEvents","onSubmitPayroll","onViewBlockers","onSkipPayroll","payroll","PayrollType","PayrollListPresentation"],"mappings":";;;;;;;;;;;;;AAeA,MAAMA,IAA0B,CAACC,OAAgB;AAAA,EAC/C,GAAGA;AAAA,EACH,aAAaC,EAAeD,CAAC;AAC/B;AAMO,SAASE,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,sBAAsB,CAAA,GAEL,IAAI,CAAAG,OAAY;AAAA,IACvE,KAAKA,EAAQ,OAAO;AAAA,IACpB,SAASA,EAAQ;AAAA,EAAA,EACjB,GAEI,EAAE,aAAaC,EAAA,IAAgBC,EAAA,GAE/BC,IAAe,CAAC,EAAE,aAAAC,GAAa,WAAAC,QAA4D;AAC/F,IAAAvB,EAAQwB,EAAgB,sBAAsB,EAAE,aAAAF,GAAa,WAAAC,GAAW;AAAA,EAC1E,GACME,IAAkB,CAAC;AAAA,IACvB,aAAAH;AAAA,IACA,WAAAC;AAAA,EAAA,MACgD;AAChD,IAAAvB,EAAQwB,EAAgB,gBAAgB,EAAE,aAAAF,GAAa,WAAAC,GAAW;AAAA,EACpE,GACMG,IAAiB,MAAM;AAC3B,IAAA1B,EAAQwB,EAAgB,6BAA6B;AAAA,EACvD,GACMG,IAAgB,OAAO,EAAE,aAAAL,QAAgD;AAC7E,UAAMM,IAAUjB,EAAY,KAAK,CAAAiB,MAAWA,EAAQ,gBAAgBN,CAAW;AAE/E,IAAIM,GAAS,cACXrB,EAAqBe,CAAY,GACjC,MAAMrB,EAAkB,CAAA,GAAI,YAAY;AACtC,YAAMkB,EAAY;AAAA,QAChB,SAAS;AAAA,UACP,aAAapB;AAAA,UACb,aAAa;AAAA,YACX,aAAa8B,EAAY;AAAA,YACzB,WAAWD,EAAQ,WAAW;AAAA,YAC9B,SAASA,EAAQ,WAAW;AAAA,YAC5B,iBAAiBA,EAAQ,WAAW,mBAAmB;AAAA,UAAA;AAAA,QACzD;AAAA,MACF,CACD,GAEDxB,EAAwB,EAAI,GAC5BJ,EAAQwB,EAAgB,iBAAiB,EAAE,WAAWF,GAAa;AAAA,IACrE,CAAC,GACDf,EAAqB,IAAI;AAAA,EAE7B;AACA,SACE,gBAAAX;AAAA,IAACkC;AAAA,IAAA;AAAA,MACC,UAAUnB,EAAY,IAAIpB,CAAuB;AAAA,MACjD,cAAcuB;AAAA,MACd,cAAAO;AAAA,MACA,iBAAAI;AAAA,MACA,eAAAE;AAAA,MACA,gBAAAD;AAAA,MACA,sBAAAvB;AAAA,MACA,2BAA2B,MAAM;AAC/B,QAAAC,EAAwB,EAAK;AAAA,MAC/B;AAAA,MACA,mBAAAE;AAAA,MACA,UAAAW;AAAA,IAAA;AAAA,EAAA;AAGN;"}
@@ -6,15 +6,9 @@ interface PresentationPayroll extends Payroll {
6
6
  payrollType: PayrollType;
7
7
  }
8
8
  interface PayrollListPresentationProps {
9
- onRunPayroll: ({ payrollId }: {
10
- payrollId: NonNullable<Payroll['payrollUuid']>;
11
- }) => void;
12
- onSubmitPayroll: ({ payrollId }: {
13
- payrollId: NonNullable<Payroll['payrollUuid']>;
14
- }) => void;
15
- onSkipPayroll: ({ payrollId }: {
16
- payrollId: NonNullable<Payroll['payrollUuid']>;
17
- }) => void;
9
+ onRunPayroll: ({ payrollUuid, payPeriod }: Pick<Payroll, 'payrollUuid' | 'payPeriod'>) => void;
10
+ onSubmitPayroll: ({ payrollUuid, payPeriod }: Pick<Payroll, 'payrollUuid' | 'payPeriod'>) => void;
11
+ onSkipPayroll: ({ payrollUuid }: Pick<Payroll, 'payrollUuid'>) => void;
18
12
  onViewBlockers?: () => void;
19
13
  payrolls: PresentationPayroll[];
20
14
  paySchedules: PayScheduleList[];