@gusto/embedded-react-sdk 0.12.1 → 0.13.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 (367) hide show
  1. package/CHANGELOG.md +139 -0
  2. package/dist/_virtual/dynamic-import-helper.js +1 -8
  3. package/dist/_virtual/dynamic-import-helper.js.map +1 -1
  4. package/dist/assets/icons/spinner_small.svg.js +10 -0
  5. package/dist/assets/icons/spinner_small.svg.js.map +1 -0
  6. package/dist/components/Base/Base.js +38 -36
  7. package/dist/components/Base/Base.js.map +1 -1
  8. package/dist/components/Base/useBase.d.ts +2 -0
  9. package/dist/components/Base/useBase.js.map +1 -1
  10. package/dist/components/Common/DataView/DataView.d.ts +2 -1
  11. package/dist/components/Common/DataView/DataView.js +20 -19
  12. package/dist/components/Common/DataView/DataView.js.map +1 -1
  13. package/dist/components/Common/DataView/useDataView.d.ts +3 -1
  14. package/dist/components/Common/DataView/useDataView.js +13 -11
  15. package/dist/components/Common/DataView/useDataView.js.map +1 -1
  16. package/dist/components/Common/EmptyData/EmptyData.module.scss.js +1 -1
  17. package/dist/components/Common/InlineSpinner/InlineSpinner.d.ts +6 -0
  18. package/dist/components/Common/InlineSpinner/InlineSpinner.js +25 -0
  19. package/dist/components/Common/InlineSpinner/InlineSpinner.js.map +1 -0
  20. package/dist/components/Common/InlineSpinner/InlineSpinner.module.scss.js +10 -0
  21. package/dist/components/Common/InlineSpinner/InlineSpinner.module.scss.js.map +1 -0
  22. package/dist/components/Common/InlineSpinner/index.d.ts +2 -0
  23. package/dist/components/Common/PaginationControl/PaginationControl.js +31 -28
  24. package/dist/components/Common/PaginationControl/PaginationControl.js.map +1 -1
  25. package/dist/components/Common/PaginationControl/PaginationControlTypes.d.ts +1 -0
  26. package/dist/components/Common/ReorderableList/DropZone.js +1 -1
  27. package/dist/components/Common/ReorderableList/DropZone.js.map +1 -1
  28. package/dist/components/Common/ReorderableList/ReorderableItem.js +1 -1
  29. package/dist/components/Common/ReorderableList/ReorderableItem.js.map +1 -1
  30. package/dist/components/Common/SignatureForm/SignatureForm.js +8 -5
  31. package/dist/components/Common/SignatureForm/SignatureForm.js.map +1 -1
  32. package/dist/components/Common/SignatureForm/SignatureFormActions.js +13 -10
  33. package/dist/components/Common/SignatureForm/SignatureFormActions.js.map +1 -1
  34. package/dist/components/Common/SignatureForm/SignatureFormFields.js +13 -10
  35. package/dist/components/Common/SignatureForm/SignatureFormFields.js.map +1 -1
  36. package/dist/components/Common/UI/CalendarPreview/CalendarPreview.js +1 -1
  37. package/dist/components/Common/UI/DatePicker/DatePicker.js +1 -1
  38. package/dist/components/Common/UI/Table/Table.module.scss.js +1 -1
  39. package/dist/components/Common/hooks/useNumberFormatter.js +1 -1
  40. package/dist/components/Common/index.d.ts +1 -0
  41. package/dist/components/Company/AssignSignatory/AssignSignatory.js +8 -6
  42. package/dist/components/Company/AssignSignatory/AssignSignatory.js.map +1 -1
  43. package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js +8 -6
  44. package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js.map +1 -1
  45. package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js +10 -8
  46. package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js.map +1 -1
  47. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js +8 -7
  48. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js.map +1 -1
  49. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js +14 -13
  50. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js.map +1 -1
  51. package/dist/components/Company/AssignSignatory/CreateSignatory/Schema.d.ts +2 -2
  52. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +5 -8
  53. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
  54. package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js +8 -6
  55. package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js.map +1 -1
  56. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js +10 -9
  57. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js.map +1 -1
  58. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js +11 -10
  59. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js.map +1 -1
  60. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +5 -8
  61. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
  62. package/dist/components/Company/AssignSignatory/TitleSelect.js +8 -7
  63. package/dist/components/Company/AssignSignatory/TitleSelect.js.map +1 -1
  64. package/dist/components/Company/AssignSignatory/useAssignSignatory.js +7 -10
  65. package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
  66. package/dist/components/Company/BankAccount/BankAccount.js +1 -1
  67. package/dist/components/Company/BankAccount/BankAccountForm/Actions.js +9 -8
  68. package/dist/components/Company/BankAccount/BankAccountForm/Actions.js.map +1 -1
  69. package/dist/components/Company/BankAccount/BankAccountForm/BankAccountForm.js +2 -2
  70. package/dist/components/Company/BankAccount/BankAccountForm/Form.js +11 -9
  71. package/dist/components/Company/BankAccount/BankAccountForm/Form.js.map +1 -1
  72. package/dist/components/Company/BankAccount/BankAccountForm/context.js +5 -8
  73. package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
  74. package/dist/components/Company/BankAccount/BankAccountList/Actions.js +12 -10
  75. package/dist/components/Company/BankAccount/BankAccountList/Actions.js.map +1 -1
  76. package/dist/components/Company/BankAccount/BankAccountList/BankAccountList.js +1 -1
  77. package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js +13 -11
  78. package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js.map +1 -1
  79. package/dist/components/Company/BankAccount/BankAccountVerify/BankAccountVerify.js +2 -2
  80. package/dist/components/Company/BankAccount/BankAccountVerify/Form.js +6 -4
  81. package/dist/components/Company/BankAccount/BankAccountVerify/Form.js.map +1 -1
  82. package/dist/components/Company/DocumentSigner/DocumentList/Actions.js +7 -5
  83. package/dist/components/Company/DocumentSigner/DocumentList/Actions.js.map +1 -1
  84. package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js +14 -12
  85. package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
  86. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +5 -8
  87. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  88. package/dist/components/Company/DocumentSigner/DocumentSigner.js +1 -1
  89. package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js +11 -9
  90. package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js.map +1 -1
  91. package/dist/components/Company/DocumentSigner/SignatureForm/useSignatureForm.js +5 -8
  92. package/dist/components/Company/DocumentSigner/SignatureForm/useSignatureForm.js.map +1 -1
  93. package/dist/components/Company/FederalTaxes/Actions.js +9 -7
  94. package/dist/components/Company/FederalTaxes/Actions.js.map +1 -1
  95. package/dist/components/Company/FederalTaxes/FederalTaxes.js +20 -18
  96. package/dist/components/Company/FederalTaxes/FederalTaxes.js.map +1 -1
  97. package/dist/components/Company/FederalTaxes/Form.js +6 -4
  98. package/dist/components/Company/FederalTaxes/Form.js.map +1 -1
  99. package/dist/components/Company/FederalTaxes/useFederalTaxes.js +10 -13
  100. package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
  101. package/dist/components/Company/Industry/Actions.js +7 -5
  102. package/dist/components/Company/Industry/Actions.js.map +1 -1
  103. package/dist/components/Company/Industry/Context.js +8 -11
  104. package/dist/components/Company/Industry/Context.js.map +1 -1
  105. package/dist/components/Company/Industry/Edit.js +12 -10
  106. package/dist/components/Company/Industry/Edit.js.map +1 -1
  107. package/dist/components/Company/Industry/Industry.js +2 -2
  108. package/dist/components/Company/Locations/LocationForm/Actions.js +8 -6
  109. package/dist/components/Company/Locations/LocationForm/Actions.js.map +1 -1
  110. package/dist/components/Company/Locations/LocationForm/Form.js +6 -5
  111. package/dist/components/Company/Locations/LocationForm/Form.js.map +1 -1
  112. package/dist/components/Company/Locations/LocationForm/LocationForm.js +16 -14
  113. package/dist/components/Company/Locations/LocationForm/LocationForm.js.map +1 -1
  114. package/dist/components/Company/Locations/LocationForm/useLocationForm.js +5 -8
  115. package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
  116. package/dist/components/Company/Locations/LocationsList/Actions.js +8 -6
  117. package/dist/components/Company/Locations/LocationsList/Actions.js.map +1 -1
  118. package/dist/components/Company/Locations/LocationsList/List.js +4 -2
  119. package/dist/components/Company/Locations/LocationsList/List.js.map +1 -1
  120. package/dist/components/Company/Locations/LocationsList/LocationsList.js +15 -13
  121. package/dist/components/Company/Locations/LocationsList/LocationsList.js.map +1 -1
  122. package/dist/components/Company/Locations/LocationsList/useLocationsList.js +5 -8
  123. package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
  124. package/dist/components/Company/OnboardingOverview/Completed.js +14 -12
  125. package/dist/components/Company/OnboardingOverview/Completed.js.map +1 -1
  126. package/dist/components/Company/OnboardingOverview/MissingRequirements.js +8 -6
  127. package/dist/components/Company/OnboardingOverview/MissingRequirements.js.map +1 -1
  128. package/dist/components/Company/OnboardingOverview/OnboardingOverview.js +5 -3
  129. package/dist/components/Company/OnboardingOverview/OnboardingOverview.js.map +1 -1
  130. package/dist/components/Company/OnboardingOverview/context.js +5 -8
  131. package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
  132. package/dist/components/Company/PaySchedule/PaySchedule.js +40 -38
  133. package/dist/components/Company/PaySchedule/PaySchedule.js.map +1 -1
  134. package/dist/components/Company/PaySchedule/_parts/Actions.js +12 -10
  135. package/dist/components/Company/PaySchedule/_parts/Actions.js.map +1 -1
  136. package/dist/components/Company/PaySchedule/_parts/Edit.js +17 -16
  137. package/dist/components/Company/PaySchedule/_parts/Edit.js.map +1 -1
  138. package/dist/components/Company/PaySchedule/_parts/Head.js +8 -6
  139. package/dist/components/Company/PaySchedule/_parts/Head.js.map +1 -1
  140. package/dist/components/Company/PaySchedule/_parts/List.js +15 -13
  141. package/dist/components/Company/PaySchedule/_parts/List.js.map +1 -1
  142. package/dist/components/Company/PaySchedule/usePaySchedule.js +8 -11
  143. package/dist/components/Company/PaySchedule/usePaySchedule.js.map +1 -1
  144. package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js +7 -5
  145. package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js.map +1 -1
  146. package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.js +3 -3
  147. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +5 -8
  148. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
  149. package/dist/components/Company/StateTaxes/StateTaxesList/Actions.js +8 -6
  150. package/dist/components/Company/StateTaxes/StateTaxesList/Actions.js.map +1 -1
  151. package/dist/components/Company/StateTaxes/StateTaxesList/List.js +7 -5
  152. package/dist/components/Company/StateTaxes/StateTaxesList/List.js.map +1 -1
  153. package/dist/components/Company/StateTaxes/StateTaxesList/StateTaxesList.js +1 -1
  154. package/dist/components/Company/StateTaxes/StateTaxesList/context.js +5 -8
  155. package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
  156. package/dist/components/Contractor/Address/Address.js +10 -8
  157. package/dist/components/Contractor/Address/Address.js.map +1 -1
  158. package/dist/components/Contractor/Address/Form.js +4 -3
  159. package/dist/components/Contractor/Address/Form.js.map +1 -1
  160. package/dist/components/Contractor/Address/useAddress.js +7 -10
  161. package/dist/components/Contractor/Address/useAddress.js.map +1 -1
  162. package/dist/components/Contractor/ContractorList/index.js +26 -25
  163. package/dist/components/Contractor/ContractorList/index.js.map +1 -1
  164. package/dist/components/Contractor/ContractorList/useContractorList.js +1 -1
  165. package/dist/components/Contractor/NewHireReport/NewHireReport.js +58 -55
  166. package/dist/components/Contractor/NewHireReport/NewHireReport.js.map +1 -1
  167. package/dist/components/Contractor/NewHireReport/types.d.ts +1 -0
  168. package/dist/components/Contractor/OnboardingFlow/OnboardingFlowComponents.js +19 -12
  169. package/dist/components/Contractor/OnboardingFlow/OnboardingFlowComponents.js.map +1 -1
  170. package/dist/components/Contractor/OnboardingFlow/onboardingStateMachine.js +6 -5
  171. package/dist/components/Contractor/OnboardingFlow/onboardingStateMachine.js.map +1 -1
  172. package/dist/components/Contractor/PaymentMethod/BankAccountForm.js +7 -5
  173. package/dist/components/Contractor/PaymentMethod/BankAccountForm.js.map +1 -1
  174. package/dist/components/Contractor/PaymentMethod/PaymentMethod.d.ts +4 -4
  175. package/dist/components/Contractor/PaymentMethod/PaymentMethod.js +87 -85
  176. package/dist/components/Contractor/PaymentMethod/PaymentMethod.js.map +1 -1
  177. package/dist/components/Contractor/PaymentMethod/PaymentTypeForm.js +3 -2
  178. package/dist/components/Contractor/PaymentMethod/PaymentTypeForm.js.map +1 -1
  179. package/dist/components/Contractor/Profile/ContractorProfile.js +1 -1
  180. package/dist/components/Contractor/Profile/ContractorProfileForm.js +13 -13
  181. package/dist/components/Contractor/Profile/useContractorProfile.d.ts +19 -19
  182. package/dist/components/Contractor/Profile/useContractorProfile.js +37 -41
  183. package/dist/components/Contractor/Profile/useContractorProfile.js.map +1 -1
  184. package/dist/components/Contractor/Submit/Submit.js +28 -27
  185. package/dist/components/Contractor/Submit/Submit.js.map +1 -1
  186. package/dist/components/Employee/Compensation/Actions.js +6 -5
  187. package/dist/components/Employee/Compensation/Actions.js.map +1 -1
  188. package/dist/components/Employee/Compensation/Compensation.js +10 -10
  189. package/dist/components/Employee/Compensation/Compensation.js.map +1 -1
  190. package/dist/components/Employee/Compensation/Edit.js +15 -14
  191. package/dist/components/Employee/Compensation/Edit.js.map +1 -1
  192. package/dist/components/Employee/Compensation/List.js +25 -23
  193. package/dist/components/Employee/Compensation/List.js.map +1 -1
  194. package/dist/components/Employee/Compensation/useCompensation.js +1 -1
  195. package/dist/components/Employee/Compensation/useCompensation.js.map +1 -1
  196. package/dist/components/Employee/Deductions/Deductions.js +1 -1
  197. package/dist/components/Employee/Deductions/Deductions.js.map +1 -1
  198. package/dist/components/Employee/Deductions/DeductionsForm/DeductionsForm.js +15 -14
  199. package/dist/components/Employee/Deductions/DeductionsForm/DeductionsForm.js.map +1 -1
  200. package/dist/components/Employee/Deductions/DeductionsList/DeductionsList.js +10 -9
  201. package/dist/components/Employee/Deductions/DeductionsList/DeductionsList.js.map +1 -1
  202. package/dist/components/Employee/Deductions/IncludeDeductionsForm/IncludeDeductionsForm.js +12 -11
  203. package/dist/components/Employee/Deductions/IncludeDeductionsForm/IncludeDeductionsForm.js.map +1 -1
  204. package/dist/components/Employee/DocumentSigner/DocumentList/Actions.js +8 -6
  205. package/dist/components/Employee/DocumentSigner/DocumentList/Actions.js.map +1 -1
  206. package/dist/components/Employee/DocumentSigner/DocumentList/DocumentList.js +12 -10
  207. package/dist/components/Employee/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
  208. package/dist/components/Employee/DocumentSigner/DocumentList/List.js +4 -2
  209. package/dist/components/Employee/DocumentSigner/DocumentList/List.js.map +1 -1
  210. package/dist/components/Employee/DocumentSigner/DocumentList/useDocumentList.js +5 -8
  211. package/dist/components/Employee/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  212. package/dist/components/Employee/DocumentSigner/SignatureForm/SignatureForm.js +16 -14
  213. package/dist/components/Employee/DocumentSigner/SignatureForm/SignatureForm.js.map +1 -1
  214. package/dist/components/Employee/DocumentSigner/SignatureForm/useSignatureForm.js +5 -8
  215. package/dist/components/Employee/DocumentSigner/SignatureForm/useSignatureForm.js.map +1 -1
  216. package/dist/components/Employee/EmployeeList/Actions.js +6 -4
  217. package/dist/components/Employee/EmployeeList/Actions.js.map +1 -1
  218. package/dist/components/Employee/EmployeeList/EmployeeList.js +76 -62
  219. package/dist/components/Employee/EmployeeList/EmployeeList.js.map +1 -1
  220. package/dist/components/Employee/EmployeeList/Head.js +7 -5
  221. package/dist/components/Employee/EmployeeList/Head.js.map +1 -1
  222. package/dist/components/Employee/EmployeeList/List.js +30 -27
  223. package/dist/components/Employee/EmployeeList/List.js.map +1 -1
  224. package/dist/components/Employee/EmployeeList/useEmployeeList.d.ts +1 -0
  225. package/dist/components/Employee/EmployeeList/useEmployeeList.js +5 -8
  226. package/dist/components/Employee/EmployeeList/useEmployeeList.js.map +1 -1
  227. package/dist/components/Employee/FederalTaxes/Actions.d.ts +1 -0
  228. package/dist/components/Employee/FederalTaxes/Actions.js +15 -0
  229. package/dist/components/Employee/FederalTaxes/Actions.js.map +1 -0
  230. package/dist/components/Employee/FederalTaxes/FederalForm.d.ts +29 -0
  231. package/dist/components/Employee/FederalTaxes/FederalForm.js +110 -0
  232. package/dist/components/Employee/FederalTaxes/FederalForm.js.map +1 -0
  233. package/dist/components/Employee/FederalTaxes/FederalTaxes.d.ts +6 -0
  234. package/dist/components/Employee/FederalTaxes/FederalTaxes.js +72 -0
  235. package/dist/components/Employee/FederalTaxes/FederalTaxes.js.map +1 -0
  236. package/dist/components/Employee/FederalTaxes/Head.d.ts +1 -0
  237. package/dist/components/Employee/FederalTaxes/Head.js +24 -0
  238. package/dist/components/Employee/FederalTaxes/Head.js.map +1 -0
  239. package/dist/components/Employee/FederalTaxes/index.d.ts +2 -0
  240. package/dist/components/Employee/FederalTaxes/useFederalTaxes.d.ts +5 -0
  241. package/dist/components/Employee/FederalTaxes/useFederalTaxes.js +17 -0
  242. package/dist/components/Employee/FederalTaxes/useFederalTaxes.js.map +1 -0
  243. package/dist/components/Employee/Landing/Landing.js +15 -14
  244. package/dist/components/Employee/Landing/Landing.js.map +1 -1
  245. package/dist/components/Employee/OnboardingFlow/OnboardingFlow.d.ts +1 -19
  246. package/dist/components/Employee/OnboardingFlow/OnboardingFlow.js.map +1 -1
  247. package/dist/components/Employee/OnboardingFlow/OnboardingFlowComponents.d.ts +22 -0
  248. package/dist/components/Employee/OnboardingFlow/OnboardingFlowComponents.js +18 -0
  249. package/dist/components/Employee/OnboardingFlow/OnboardingFlowComponents.js.map +1 -0
  250. package/dist/components/Employee/OnboardingFlow/onboardingStateMachine.d.ts +2 -1
  251. package/dist/components/Employee/OnboardingFlow/onboardingStateMachine.js +72 -63
  252. package/dist/components/Employee/OnboardingFlow/onboardingStateMachine.js.map +1 -1
  253. package/dist/components/Employee/OnboardingSummary/OnboardingSummary.js +9 -9
  254. package/dist/components/Employee/OnboardingSummary/OnboardingSummary.js.map +1 -1
  255. package/dist/components/Employee/PaymentMethod/Actions.js +9 -7
  256. package/dist/components/Employee/PaymentMethod/Actions.js.map +1 -1
  257. package/dist/components/Employee/PaymentMethod/BankAccount.d.ts +2 -2
  258. package/dist/components/Employee/PaymentMethod/BankAccountEdit.js +6 -5
  259. package/dist/components/Employee/PaymentMethod/BankAccountEdit.js.map +1 -1
  260. package/dist/components/Employee/PaymentMethod/BankAccountsList.js +10 -8
  261. package/dist/components/Employee/PaymentMethod/BankAccountsList.js.map +1 -1
  262. package/dist/components/Employee/PaymentMethod/PaymentMethod.js +8 -8
  263. package/dist/components/Employee/PaymentMethod/PaymentMethod.js.map +1 -1
  264. package/dist/components/Employee/PaymentMethod/PaymentTypeForm.js +3 -2
  265. package/dist/components/Employee/PaymentMethod/PaymentTypeForm.js.map +1 -1
  266. package/dist/components/Employee/PaymentMethod/Split.js +12 -11
  267. package/dist/components/Employee/PaymentMethod/Split.js.map +1 -1
  268. package/dist/components/Employee/PaymentMethod/usePaymentMethod.d.ts +8 -8
  269. package/dist/components/Employee/PaymentMethod/usePaymentMethod.js +11 -14
  270. package/dist/components/Employee/PaymentMethod/usePaymentMethod.js.map +1 -1
  271. package/dist/components/Employee/Profile/Actions.js +9 -7
  272. package/dist/components/Employee/Profile/Actions.js.map +1 -1
  273. package/dist/components/Employee/Profile/AdminPersonalDetails.d.ts +2 -2
  274. package/dist/components/Employee/Profile/AdminPersonalDetails.js +10 -9
  275. package/dist/components/Employee/Profile/AdminPersonalDetails.js.map +1 -1
  276. package/dist/components/Employee/Profile/HomeAddress.js +6 -5
  277. package/dist/components/Employee/Profile/HomeAddress.js.map +1 -1
  278. package/dist/components/Employee/Profile/PersonalDetailsInputs.d.ts +2 -2
  279. package/dist/components/Employee/Profile/PersonalDetailsInputs.js +22 -21
  280. package/dist/components/Employee/Profile/PersonalDetailsInputs.js.map +1 -1
  281. package/dist/components/Employee/Profile/Profile.js +15 -13
  282. package/dist/components/Employee/Profile/Profile.js.map +1 -1
  283. package/dist/components/Employee/Profile/useProfile.js +5 -8
  284. package/dist/components/Employee/Profile/useProfile.js.map +1 -1
  285. package/dist/components/Employee/SelfOnboardingFlow/SelfOnboardingComponents.d.ts +2 -1
  286. package/dist/components/Employee/SelfOnboardingFlow/SelfOnboardingComponents.js +37 -24
  287. package/dist/components/Employee/SelfOnboardingFlow/SelfOnboardingComponents.js.map +1 -1
  288. package/dist/components/Employee/SelfOnboardingFlow/selfOnboardingMachine.d.ts +2 -1
  289. package/dist/components/Employee/SelfOnboardingFlow/selfOnboardingMachine.js +31 -19
  290. package/dist/components/Employee/SelfOnboardingFlow/selfOnboardingMachine.js.map +1 -1
  291. package/dist/components/Employee/StateTaxes/Actions.d.ts +1 -0
  292. package/dist/components/Employee/StateTaxes/Actions.js +15 -0
  293. package/dist/components/Employee/StateTaxes/Actions.js.map +1 -0
  294. package/dist/components/Employee/StateTaxes/StateForm.d.ts +10 -0
  295. package/dist/components/Employee/StateTaxes/StateForm.js +34 -0
  296. package/dist/components/Employee/StateTaxes/StateForm.js.map +1 -0
  297. package/dist/components/Employee/StateTaxes/StateTaxes.d.ts +7 -0
  298. package/dist/components/Employee/StateTaxes/StateTaxes.js +90 -0
  299. package/dist/components/Employee/StateTaxes/StateTaxes.js.map +1 -0
  300. package/dist/components/Employee/StateTaxes/index.d.ts +2 -0
  301. package/dist/components/Employee/StateTaxes/useStateTaxes.d.ts +8 -0
  302. package/dist/components/Employee/StateTaxes/useStateTaxes.js +17 -0
  303. package/dist/components/Employee/StateTaxes/useStateTaxes.js.map +1 -0
  304. package/dist/components/Employee/Taxes/Actions.js +10 -8
  305. package/dist/components/Employee/Taxes/Actions.js.map +1 -1
  306. package/dist/components/Employee/Taxes/FederalForm.js +14 -12
  307. package/dist/components/Employee/Taxes/FederalForm.js.map +1 -1
  308. package/dist/components/Employee/Taxes/Taxes.d.ts +5 -0
  309. package/dist/components/Employee/Taxes/Taxes.js +73 -85
  310. package/dist/components/Employee/Taxes/Taxes.js.map +1 -1
  311. package/dist/components/Employee/Taxes/useTaxes.js +5 -8
  312. package/dist/components/Employee/Taxes/useTaxes.js.map +1 -1
  313. package/dist/components/Employee/index.d.ts +3 -1
  314. package/dist/components/Employee/index.js +16 -12
  315. package/dist/components/Employee/index.js.map +1 -1
  316. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.d.ts +4 -2
  317. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js +75 -34
  318. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js.map +1 -1
  319. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.d.ts +10 -5
  320. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js +118 -50
  321. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js.map +1 -1
  322. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js +14 -11
  323. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js.map +1 -1
  324. package/dist/components/Payroll/PayrollList/PayrollList.d.ts +1 -1
  325. package/dist/components/Payroll/PayrollList/PayrollList.js +24 -11
  326. package/dist/components/Payroll/PayrollList/PayrollList.js.map +1 -1
  327. package/dist/components/Payroll/PayrollList/PayrollListPresentation.d.ts +8 -6
  328. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js +36 -25
  329. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js.map +1 -1
  330. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js +1 -1
  331. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js +12 -9
  332. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js.map +1 -1
  333. package/dist/components/Payroll/RunPayrollFlow/RunPayroll.d.ts +2 -1
  334. package/dist/components/Payroll/RunPayrollFlow/RunPayroll.js +4 -4
  335. package/dist/components/Payroll/RunPayrollFlow/RunPayroll.js.map +1 -1
  336. package/dist/components/Payroll/helpers.d.ts +20 -0
  337. package/dist/components/Payroll/helpers.js +208 -0
  338. package/dist/components/Payroll/helpers.js.map +1 -0
  339. package/dist/components/Payroll/helpers.test.d.ts +1 -0
  340. package/dist/contexts/ApiProvider/ApiProvider.js +4 -4
  341. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js +8 -5
  342. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js.map +1 -1
  343. package/dist/contexts/ThemeProvider/ThemeProvider.js +7 -7
  344. package/dist/contexts/ThemeProvider/ThemeProvider.js.map +1 -1
  345. package/dist/helpers/formattedStrings.d.ts +9 -0
  346. package/dist/helpers/formattedStrings.js +55 -16
  347. package/dist/helpers/formattedStrings.js.map +1 -1
  348. package/dist/i18n/I18n.js +11 -11
  349. package/dist/i18n/I18n.js.map +1 -1
  350. package/dist/i18n/en/Employee.FederalTaxes.json.js +46 -0
  351. package/dist/i18n/en/Employee.FederalTaxes.json.js.map +1 -0
  352. package/dist/i18n/en/Employee.StateTaxes.json.js +6 -10
  353. package/dist/i18n/en/Employee.StateTaxes.json.js.map +1 -1
  354. package/dist/i18n/en/Employee.Taxes.json.js +7 -7
  355. package/dist/i18n/en/Payroll.PayrollConfiguration.json.js +30 -0
  356. package/dist/i18n/en/Payroll.PayrollConfiguration.json.js.map +1 -0
  357. package/dist/i18n/en/Payroll.PayrollList.json.js +14 -0
  358. package/dist/i18n/en/Payroll.PayrollList.json.js.map +1 -0
  359. package/dist/i18n/en/common.json.d.ts +8 -0
  360. package/dist/i18n/en/common.json.js +15 -13
  361. package/dist/i18n/en/common.json.js.map +1 -1
  362. package/dist/shared/constants.d.ts +4 -2
  363. package/dist/shared/constants.js +10 -9
  364. package/dist/shared/constants.js.map +1 -1
  365. package/dist/style.css +1 -1
  366. package/dist/types/i18next.d.ts +71 -4
  367. package/package.json +29 -30
@@ -1,36 +1,36 @@
1
- import { jsx as t, jsxs as C, Fragment as L } from "react/jsx-runtime";
2
- import { zodResolver as M } from "@hookform/resolvers/zod";
3
- import { useForm as O, FormProvider as J } from "react-hook-form";
4
- import { useTranslation as X } from "react-i18next";
5
- import { useEffect as q } from "react";
6
- import { useEmployeeTaxSetupGetFederalTaxesSuspense as B } from "@gusto/embedded-api/react-query/employeeTaxSetupGetFederalTaxes";
7
- import { useEmployeeTaxSetupUpdateFederalTaxesMutation as H } from "@gusto/embedded-api/react-query/employeeTaxSetupUpdateFederalTaxes";
8
- import { useEmployeeTaxSetupGetStateTaxesSuspense as V } from "@gusto/embedded-api/react-query/employeeTaxSetupGetStateTaxes";
9
- import { useEmployeeTaxSetupUpdateStateTaxesMutation as W } from "@gusto/embedded-api/react-query/employeeTaxSetupUpdateStateTaxes";
10
- import { Actions as Y } from "./Actions.js";
11
- import { FederalFormSchema as j, FederalForm as G } from "./FederalForm.js";
12
- import { FederalHead as z } from "./FederalHead.js";
13
- import { StateFormSchema as Q, StateForm as K } from "./StateForm.js";
14
- import { TaxesProvider as Z } from "./useTaxes.js";
15
- import { BaseComponent as $ } from "../../Base/Base.js";
16
- import { useBase as ee } from "../../Base/useBase.js";
17
- import { useFlow as te } from "../../Flow/useFlow.js";
18
- import { useI18n as oe, useComponentDictionary as se } from "../../../i18n/I18n.js";
19
- import { componentEvents as S } from "../../../shared/constants.js";
20
- import { snakeCaseToCamelCase as A } from "../../../helpers/formattedStrings.js";
21
- import { Form as re } from "../../Common/Form/Form.js";
22
- const ne = "2010-01-01";
23
- function ae(o) {
24
- return /* @__PURE__ */ t($, { ...o, children: /* @__PURE__ */ t(ie, { ...o, children: o.children }) });
1
+ import { jsx as t, jsxs as M, Fragment as I } from "react/jsx-runtime";
2
+ import { zodResolver as O } from "/home/runner/work/embedded-react-sdk/embedded-react-sdk/node_modules/@hookform/resolvers/zod/dist/zod.mjs";
3
+ import { useForm as C, FormProvider as J } from "react-hook-form";
4
+ import "react-i18next";
5
+ import { useEffect as X } from "react";
6
+ import { useEmployeeTaxSetupGetFederalTaxesSuspense as q } from "/home/runner/work/embedded-react-sdk/embedded-react-sdk/node_modules/@gusto/embedded-api/esm/react-query/employeeTaxSetupGetFederalTaxes.js";
7
+ import { useEmployeeTaxSetupUpdateFederalTaxesMutation as B } from "/home/runner/work/embedded-react-sdk/embedded-react-sdk/node_modules/@gusto/embedded-api/esm/react-query/employeeTaxSetupUpdateFederalTaxes.js";
8
+ import { useEmployeeTaxSetupGetStateTaxesSuspense as H } from "/home/runner/work/embedded-react-sdk/embedded-react-sdk/node_modules/@gusto/embedded-api/esm/react-query/employeeTaxSetupGetStateTaxes.js";
9
+ import { useEmployeeTaxSetupUpdateStateTaxesMutation as V } from "/home/runner/work/embedded-react-sdk/embedded-react-sdk/node_modules/@gusto/embedded-api/esm/react-query/employeeTaxSetupUpdateStateTaxes.js";
10
+ import { Actions as W } from "./Actions.js";
11
+ import { FederalFormSchema as Y, FederalForm as j } from "./FederalForm.js";
12
+ import { FederalHead as G } from "./FederalHead.js";
13
+ import { StateFormSchema as z, StateForm as Q } from "./StateForm.js";
14
+ import { TaxesProvider as K } from "./useTaxes.js";
15
+ import { BaseComponent as Z } from "../../Base/Base.js";
16
+ import { useBase as $ } from "../../Base/useBase.js";
17
+ import "../../Flow/useFlow.js";
18
+ import { useI18n as ee, useComponentDictionary as te } from "../../../i18n/I18n.js";
19
+ import { componentEvents as E } from "../../../shared/constants.js";
20
+ import { snakeCaseToCamelCase as v } from "../../../helpers/formattedStrings.js";
21
+ import { Form as oe } from "../../Common/Form/Form.js";
22
+ const se = "2010-01-01";
23
+ function we(i) {
24
+ return /* @__PURE__ */ t(Z, { ...i, children: /* @__PURE__ */ t(re, { ...i, children: i.children }) });
25
25
  }
26
- const ie = (o) => {
27
- const { employeeId: i, className: f, children: u, isAdmin: h = !1, dictionary: g } = o, { onEvent: y, fieldErrors: p, baseSubmitHandler: w } = ee();
28
- oe("Employee.Taxes"), se("Employee.Taxes", g);
29
- const { data: P } = B({
30
- employeeUuid: i
31
- }), e = P.employeeFederalTax, { mutateAsync: b, isPending: _ } = H(), { data: D } = V({
32
- employeeUuid: i
33
- }), T = D.employeeStateTaxesList, { mutateAsync: U, isPending: N } = W(), k = {
26
+ const re = (i) => {
27
+ const { employeeId: d, className: A, children: x, isAdmin: S = !1, dictionary: b } = i, { onEvent: c, fieldErrors: u, baseSubmitHandler: g } = $();
28
+ ee("Employee.Taxes"), te("Employee.Taxes", b);
29
+ const { data: P } = q({
30
+ employeeUuid: d
31
+ }), e = P.employeeFederalTax, { mutateAsync: w, isPending: _ } = B(), { data: D } = H({
32
+ employeeUuid: d
33
+ }), f = D.employeeStateTaxesList, { mutateAsync: U, isPending: N } = V(), k = {
34
34
  ...e,
35
35
  filingStatus: e.filingStatus ?? void 0,
36
36
  twoJobs: e.twoJobs ? "true" : "false",
@@ -38,56 +38,56 @@ const ie = (o) => {
38
38
  dependentsAmount: e.dependentsAmount ? Number(e.dependentsAmount) : 0,
39
39
  otherIncome: e.otherIncome ? Number(e.otherIncome) : 0,
40
40
  extraWithholding: e.extraWithholding ? Number(e.extraWithholding) : 0,
41
- states: T.reduce((s, r) => (r.state && (s[r.state] = r.questions?.reduce((n, l) => {
42
- const d = l.answers[0]?.value, m = A(l.key);
43
- return m === "fileNewHireReport" ? n[m] = typeof d > "u" ? !0 : d : n[m] = d, n;
44
- }, {})), s), {})
45
- }, F = O({
46
- resolver: M(j.merge(Q)),
41
+ states: f.reduce((o, s) => (s.state && (o[s.state] = s.questions?.reduce((r, m) => {
42
+ const l = m.answers[0]?.value, n = v(m.key);
43
+ return n === "fileNewHireReport" ? r[n] = typeof l > "u" ? !0 : l : r[n] = l, r;
44
+ }, {})), o), {})
45
+ }, h = C({
46
+ resolver: O(Y.merge(z)),
47
47
  defaultValues: k
48
- }), { handleSubmit: I, setError: v } = F;
49
- return q(() => {
50
- p && p.length > 0 && p.forEach((s) => {
51
- const r = s.key.replace(".value", "");
52
- v(r, { type: "custom", message: s.message });
48
+ }), { handleSubmit: R, setError: F } = h;
49
+ return X(() => {
50
+ u && u.length > 0 && u.forEach((o) => {
51
+ const s = o.key.replace(".value", "");
52
+ F(s, { type: "custom", message: o.message });
53
53
  });
54
- }, [p, v]), /* @__PURE__ */ t("section", { className: f, children: /* @__PURE__ */ t(
55
- Z,
54
+ }, [u, F]), /* @__PURE__ */ t("section", { className: A, children: /* @__PURE__ */ t(
55
+ K,
56
56
  {
57
57
  value: {
58
- employeeStateTaxes: T,
59
- isAdmin: h,
58
+ employeeStateTaxes: f,
59
+ isAdmin: S,
60
60
  isPending: _ || N
61
61
  },
62
- children: /* @__PURE__ */ t(J, { ...F, children: /* @__PURE__ */ t(re, { onSubmit: I(async (s) => {
63
- await w(s, async (r) => {
64
- const { states: n, ...l } = r, d = await b({
62
+ children: /* @__PURE__ */ t(J, { ...h, children: /* @__PURE__ */ t(oe, { onSubmit: R(async (o) => {
63
+ await g(o, async (s) => {
64
+ const { states: r, ...m } = s, l = await w({
65
65
  request: {
66
- employeeUuid: i,
66
+ employeeUuid: d,
67
67
  requestBody: {
68
- ...l,
69
- twoJobs: l.twoJobs === "true",
68
+ ...m,
69
+ twoJobs: m.twoJobs === "true",
70
70
  version: e.version
71
71
  }
72
72
  }
73
73
  });
74
- if (y(S.EMPLOYEE_FEDERAL_TAXES_UPDATED, d), n && Object.keys(n).length > 0) {
75
- const m = [];
76
- for (const E of T) {
77
- const x = E.state;
78
- x && E.questions !== void 0 && m.push({
79
- state: x,
80
- questions: E.questions.map((a) => {
81
- if (a.isQuestionForAdminOnly && !h)
74
+ if (c(E.EMPLOYEE_FEDERAL_TAXES_UPDATED, l), r && Object.keys(r).length > 0) {
75
+ const n = [];
76
+ for (const y of f) {
77
+ const T = y.state;
78
+ T && y.questions !== void 0 && n.push({
79
+ state: T,
80
+ questions: y.questions.map((a) => {
81
+ if (a.isQuestionForAdminOnly && !S)
82
82
  return null;
83
- const c = n[x]?.[A(a.key)];
83
+ const p = r[T]?.[v(a.key)];
84
84
  return {
85
85
  key: a.key,
86
86
  answers: [
87
87
  {
88
- validFrom: a.answers[0]?.validFrom ?? ne,
88
+ validFrom: a.answers[0]?.validFrom ?? se,
89
89
  validUpTo: a.answers[0]?.validUpTo ?? null,
90
- value: c == null || typeof c == "number" && isNaN(c) ? "" : c
90
+ value: p == null || typeof p == "number" && isNaN(p) ? "" : p
91
91
  }
92
92
  ]
93
93
  };
@@ -95,35 +95,23 @@ const ie = (o) => {
95
95
  //Filtering out questions in non-admin setup
96
96
  });
97
97
  }
98
- const R = await U({
99
- request: { employeeUuid: i, employeeStateTaxesRequest: { states: m } }
98
+ const L = await U({
99
+ request: { employeeUuid: d, employeeStateTaxesRequest: { states: n } }
100
100
  });
101
- y(S.EMPLOYEE_STATE_TAXES_UPDATED, R);
101
+ c(E.EMPLOYEE_STATE_TAXES_UPDATED, L);
102
102
  }
103
- y(S.EMPLOYEE_TAXES_DONE);
103
+ c(E.EMPLOYEE_TAXES_DONE);
104
104
  });
105
- }), children: u || /* @__PURE__ */ C(L, { children: [
106
- /* @__PURE__ */ t(z, {}),
105
+ }), children: x || /* @__PURE__ */ M(I, { children: [
107
106
  /* @__PURE__ */ t(G, {}),
108
- /* @__PURE__ */ t(K, {}),
109
- /* @__PURE__ */ t(Y, {})
107
+ /* @__PURE__ */ t(j, {}),
108
+ /* @__PURE__ */ t(Q, {}),
109
+ /* @__PURE__ */ t(W, {})
110
110
  ] }) }) })
111
111
  }
112
112
  ) });
113
- }, Ue = () => {
114
- const { employeeId: o, onEvent: i, isAdmin: f } = te(), { t: u } = X();
115
- if (!o)
116
- throw new Error(
117
- u("errors.missingParamsOrContext", {
118
- component: "EmployeeTaxes",
119
- param: "employeeId",
120
- provider: "FlowProvider"
121
- })
122
- );
123
- return /* @__PURE__ */ t(ae, { employeeId: o, onEvent: i, isAdmin: f ?? !1 });
124
113
  };
125
114
  export {
126
- ae as Taxes,
127
- Ue as TaxesContextual
115
+ we as Taxes
128
116
  };
129
117
  //# sourceMappingURL=Taxes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Taxes.js","sources":["../../../../src/components/Employee/Taxes/Taxes.tsx"],"sourcesContent":["import { zodResolver } from '@hookform/resolvers/zod'\nimport { FormProvider, useForm, type SubmitHandler } from 'react-hook-form'\nimport { useTranslation } from 'react-i18next'\nimport { useEffect } from 'react'\nimport { useEmployeeTaxSetupGetFederalTaxesSuspense } from '@gusto/embedded-api/react-query/employeeTaxSetupGetFederalTaxes'\nimport { useEmployeeTaxSetupUpdateFederalTaxesMutation } from '@gusto/embedded-api/react-query/employeeTaxSetupUpdateFederalTaxes'\nimport { useEmployeeTaxSetupGetStateTaxesSuspense } from '@gusto/embedded-api/react-query/employeeTaxSetupGetStateTaxes'\nimport { useEmployeeTaxSetupUpdateStateTaxesMutation } from '@gusto/embedded-api/react-query/employeeTaxSetupUpdateStateTaxes'\nimport type { OnboardingContextInterface } from '../OnboardingFlow/OnboardingFlow'\nimport { Actions } from './Actions'\nimport {\n FederalForm,\n FederalFormSchema,\n type FederalFormInputs,\n type FederalFormPayload,\n} from './FederalForm'\nimport { FederalHead } from './FederalHead'\nimport { StateForm, StateFormSchema, type StateFormPayload } from './StateForm'\nimport { TaxesProvider } from './useTaxes'\nimport {\n useBase,\n BaseComponent,\n type BaseComponentInterface,\n type CommonComponentInterface,\n} from '@/components/Base'\nimport { useFlow } from '@/components/Flow/useFlow'\nimport { useI18n } from '@/i18n'\nimport { componentEvents } from '@/shared/constants'\nimport { snakeCaseToCamelCase } from '@/helpers/formattedStrings'\nimport { Form } from '@/components/Common/Form'\nimport { useComponentDictionary } from '@/i18n/I18n'\n\nconst DEFAULT_TAX_VALID_FROM = '2010-01-01'\n\ninterface TaxesProps extends CommonComponentInterface<'Employee.Taxes'> {\n employeeId: string\n isAdmin?: boolean\n}\n\nexport function Taxes(props: TaxesProps & BaseComponentInterface) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nconst Root = (props: TaxesProps) => {\n const { employeeId, className, children, isAdmin = false, dictionary } = props\n const { onEvent, fieldErrors, baseSubmitHandler } = useBase()\n useI18n('Employee.Taxes')\n useComponentDictionary('Employee.Taxes', dictionary)\n\n const { data: fedData } = useEmployeeTaxSetupGetFederalTaxesSuspense({\n employeeUuid: employeeId,\n })\n const employeeFederalTax = fedData.employeeFederalTax!\n\n const { mutateAsync: updateFederalTaxes, isPending: isPendingFederalTaxes } =\n useEmployeeTaxSetupUpdateFederalTaxesMutation()\n\n const { data: stateData } = useEmployeeTaxSetupGetStateTaxesSuspense({\n employeeUuid: employeeId,\n })\n const employeeStateTaxes = stateData.employeeStateTaxesList!\n const { mutateAsync: updateStateTaxes, isPending: isPendingStateTaxes } =\n useEmployeeTaxSetupUpdateStateTaxesMutation()\n\n const defaultValues = {\n ...employeeFederalTax,\n filingStatus: employeeFederalTax.filingStatus ?? undefined,\n twoJobs: employeeFederalTax.twoJobs ? 'true' : 'false',\n deductions: employeeFederalTax.deductions ? Number(employeeFederalTax.deductions) : 0,\n dependentsAmount: employeeFederalTax.dependentsAmount\n ? Number(employeeFederalTax.dependentsAmount)\n : 0,\n otherIncome: employeeFederalTax.otherIncome ? Number(employeeFederalTax.otherIncome) : 0,\n extraWithholding: employeeFederalTax.extraWithholding\n ? Number(employeeFederalTax.extraWithholding)\n : 0,\n states: employeeStateTaxes.reduce((acc: Record<string, unknown>, state) => {\n if (state.state) {\n acc[state.state] = state.questions?.reduce((acc: Record<string, unknown>, question) => {\n const value = question.answers[0]?.value\n const key = snakeCaseToCamelCase(question.key)\n // Default new hire report to true if not specified\n if (key === 'fileNewHireReport') {\n acc[key] = typeof value === 'undefined' ? true : value\n } else {\n acc[key] = value\n }\n return acc\n }, {})\n }\n return acc\n }, {}),\n }\n\n const formMethods = useForm<FederalFormInputs, unknown, FederalFormPayload & StateFormPayload>({\n resolver: zodResolver(FederalFormSchema.merge(StateFormSchema)),\n defaultValues,\n })\n const { handleSubmit, setError: _setError } = formMethods\n\n useEffect(() => {\n //If list of field specific errors from API is present, mark corresponding fields as invalid\n if (fieldErrors && fieldErrors.length > 0) {\n fieldErrors.forEach(msgObject => {\n const key = msgObject.key.replace('.value', '')\n _setError(key as keyof FederalFormInputs, { type: 'custom', message: msgObject.message })\n })\n }\n }, [fieldErrors, _setError])\n\n const onSubmit: SubmitHandler<FederalFormPayload & StateFormPayload> = async data => {\n await baseSubmitHandler(data, async payload => {\n const { states: statesPayload, ...federalPayload } = payload\n\n const federalTaxesResponse = await updateFederalTaxes({\n request: {\n employeeUuid: employeeId,\n requestBody: {\n ...federalPayload,\n twoJobs: federalPayload.twoJobs === 'true',\n version: employeeFederalTax.version,\n },\n },\n })\n onEvent(componentEvents.EMPLOYEE_FEDERAL_TAXES_UPDATED, federalTaxesResponse)\n\n //State Taxes - only process if statesPayload exists\n if (statesPayload && Object.keys(statesPayload).length > 0) {\n const states = []\n\n for (const state of employeeStateTaxes) {\n const stateName = state.state\n\n if (stateName && state.questions !== undefined) {\n states.push({\n state: stateName,\n questions: state.questions\n .map(question => {\n if (question.isQuestionForAdminOnly && !isAdmin) {\n return null\n }\n const formValue = statesPayload[stateName]?.[snakeCaseToCamelCase(question.key)]\n return {\n key: question.key,\n answers: [\n {\n validFrom: question.answers[0]?.validFrom ?? DEFAULT_TAX_VALID_FROM,\n validUpTo: question.answers[0]?.validUpTo ?? null,\n value:\n formValue == null || (typeof formValue === 'number' && isNaN(formValue))\n ? ''\n : (formValue as string | number | boolean),\n },\n ],\n }\n })\n .filter(q => q !== null), //Filtering out questions in non-admin setup\n })\n }\n }\n\n const stateTaxesResponse = await updateStateTaxes({\n request: { employeeUuid: employeeId, employeeStateTaxesRequest: { states } },\n })\n onEvent(componentEvents.EMPLOYEE_STATE_TAXES_UPDATED, stateTaxesResponse)\n }\n\n onEvent(componentEvents.EMPLOYEE_TAXES_DONE)\n })\n }\n\n return (\n <section className={className}>\n <TaxesProvider\n value={{\n employeeStateTaxes,\n isAdmin: isAdmin,\n isPending: isPendingFederalTaxes || isPendingStateTaxes,\n }}\n >\n <FormProvider {...formMethods}>\n <Form onSubmit={handleSubmit(onSubmit)}>\n {children ? (\n children\n ) : (\n <>\n <FederalHead />\n <FederalForm />\n <StateForm />\n <Actions />\n </>\n )}\n </Form>\n </FormProvider>\n </TaxesProvider>\n </section>\n )\n}\n\nexport const TaxesContextual = () => {\n const { employeeId, onEvent, isAdmin } = useFlow<OnboardingContextInterface>()\n const { t } = useTranslation()\n if (!employeeId) {\n throw new Error(\n t('errors.missingParamsOrContext', {\n component: 'EmployeeTaxes',\n param: 'employeeId',\n provider: 'FlowProvider',\n }),\n )\n }\n return <Taxes employeeId={employeeId} onEvent={onEvent} isAdmin={isAdmin ?? false} />\n}\n"],"names":["DEFAULT_TAX_VALID_FROM","Taxes","props","jsx","BaseComponent","Root","employeeId","className","children","isAdmin","dictionary","onEvent","fieldErrors","baseSubmitHandler","useBase","useI18n","useComponentDictionary","fedData","useEmployeeTaxSetupGetFederalTaxesSuspense","employeeFederalTax","updateFederalTaxes","isPendingFederalTaxes","useEmployeeTaxSetupUpdateFederalTaxesMutation","stateData","useEmployeeTaxSetupGetStateTaxesSuspense","employeeStateTaxes","updateStateTaxes","isPendingStateTaxes","useEmployeeTaxSetupUpdateStateTaxesMutation","defaultValues","acc","state","question","value","key","snakeCaseToCamelCase","formMethods","useForm","zodResolver","FederalFormSchema","StateFormSchema","handleSubmit","_setError","useEffect","msgObject","TaxesProvider","FormProvider","Form","data","payload","statesPayload","federalPayload","federalTaxesResponse","componentEvents","states","stateName","formValue","q","stateTaxesResponse","jsxs","Fragment","FederalHead","FederalForm","StateForm","Actions","TaxesContextual","useFlow","t","useTranslation"],"mappings":"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"}
1
+ {"version":3,"file":"Taxes.js","sources":["../../../../src/components/Employee/Taxes/Taxes.tsx"],"sourcesContent":["import { zodResolver } from '@hookform/resolvers/zod'\nimport { FormProvider, useForm, type SubmitHandler } from 'react-hook-form'\nimport { useTranslation } from 'react-i18next'\nimport { useEffect } from 'react'\nimport { useEmployeeTaxSetupGetFederalTaxesSuspense } from '@gusto/embedded-api/react-query/employeeTaxSetupGetFederalTaxes'\nimport { useEmployeeTaxSetupUpdateFederalTaxesMutation } from '@gusto/embedded-api/react-query/employeeTaxSetupUpdateFederalTaxes'\nimport { useEmployeeTaxSetupGetStateTaxesSuspense } from '@gusto/embedded-api/react-query/employeeTaxSetupGetStateTaxes'\nimport { useEmployeeTaxSetupUpdateStateTaxesMutation } from '@gusto/embedded-api/react-query/employeeTaxSetupUpdateStateTaxes'\nimport type { OnboardingContextInterface } from '../OnboardingFlow/OnboardingFlowComponents'\nimport { Actions } from './Actions'\nimport {\n FederalForm,\n FederalFormSchema,\n type FederalFormInputs,\n type FederalFormPayload,\n} from './FederalForm'\nimport { FederalHead } from './FederalHead'\nimport { StateForm, StateFormSchema, type StateFormPayload } from './StateForm'\nimport { TaxesProvider } from './useTaxes'\nimport {\n useBase,\n BaseComponent,\n type BaseComponentInterface,\n type CommonComponentInterface,\n} from '@/components/Base'\nimport { useFlow } from '@/components/Flow/useFlow'\nimport { useI18n } from '@/i18n'\nimport { componentEvents } from '@/shared/constants'\nimport { snakeCaseToCamelCase } from '@/helpers/formattedStrings'\nimport { Form } from '@/components/Common/Form'\nimport { useComponentDictionary } from '@/i18n/I18n'\n\nconst DEFAULT_TAX_VALID_FROM = '2010-01-01'\n\ninterface TaxesProps extends CommonComponentInterface<'Employee.Taxes'> {\n employeeId: string\n isAdmin?: boolean\n}\n\n/**\n * @deprecated The Taxes component has been deprecated and will be removed in a future release.\n * The component has been split into separate components for state and federal. Use Employee.FederalTaxes\n * and Employee.StateTaxes components instead.\n */\nexport function Taxes(props: TaxesProps & BaseComponentInterface) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nconst Root = (props: TaxesProps) => {\n const { employeeId, className, children, isAdmin = false, dictionary } = props\n const { onEvent, fieldErrors, baseSubmitHandler } = useBase()\n useI18n('Employee.Taxes')\n useComponentDictionary('Employee.Taxes', dictionary)\n\n const { data: fedData } = useEmployeeTaxSetupGetFederalTaxesSuspense({\n employeeUuid: employeeId,\n })\n const employeeFederalTax = fedData.employeeFederalTax!\n\n const { mutateAsync: updateFederalTaxes, isPending: isPendingFederalTaxes } =\n useEmployeeTaxSetupUpdateFederalTaxesMutation()\n\n const { data: stateData } = useEmployeeTaxSetupGetStateTaxesSuspense({\n employeeUuid: employeeId,\n })\n const employeeStateTaxes = stateData.employeeStateTaxesList!\n const { mutateAsync: updateStateTaxes, isPending: isPendingStateTaxes } =\n useEmployeeTaxSetupUpdateStateTaxesMutation()\n\n const defaultValues = {\n ...employeeFederalTax,\n filingStatus: employeeFederalTax.filingStatus ?? undefined,\n twoJobs: employeeFederalTax.twoJobs ? 'true' : 'false',\n deductions: employeeFederalTax.deductions ? Number(employeeFederalTax.deductions) : 0,\n dependentsAmount: employeeFederalTax.dependentsAmount\n ? Number(employeeFederalTax.dependentsAmount)\n : 0,\n otherIncome: employeeFederalTax.otherIncome ? Number(employeeFederalTax.otherIncome) : 0,\n extraWithholding: employeeFederalTax.extraWithholding\n ? Number(employeeFederalTax.extraWithholding)\n : 0,\n states: employeeStateTaxes.reduce((acc: Record<string, unknown>, state) => {\n if (state.state) {\n acc[state.state] = state.questions?.reduce((acc: Record<string, unknown>, question) => {\n const value = question.answers[0]?.value\n const key = snakeCaseToCamelCase(question.key)\n // Default new hire report to true if not specified\n if (key === 'fileNewHireReport') {\n acc[key] = typeof value === 'undefined' ? true : value\n } else {\n acc[key] = value\n }\n return acc\n }, {})\n }\n return acc\n }, {}),\n }\n\n const formMethods = useForm<FederalFormInputs, unknown, FederalFormPayload & StateFormPayload>({\n resolver: zodResolver(FederalFormSchema.merge(StateFormSchema)),\n defaultValues,\n })\n const { handleSubmit, setError: _setError } = formMethods\n\n useEffect(() => {\n //If list of field specific errors from API is present, mark corresponding fields as invalid\n if (fieldErrors && fieldErrors.length > 0) {\n fieldErrors.forEach(msgObject => {\n const key = msgObject.key.replace('.value', '')\n _setError(key as keyof FederalFormInputs, { type: 'custom', message: msgObject.message })\n })\n }\n }, [fieldErrors, _setError])\n\n const onSubmit: SubmitHandler<FederalFormPayload & StateFormPayload> = async data => {\n await baseSubmitHandler(data, async payload => {\n const { states: statesPayload, ...federalPayload } = payload\n\n const federalTaxesResponse = await updateFederalTaxes({\n request: {\n employeeUuid: employeeId,\n requestBody: {\n ...federalPayload,\n twoJobs: federalPayload.twoJobs === 'true',\n version: employeeFederalTax.version,\n },\n },\n })\n onEvent(componentEvents.EMPLOYEE_FEDERAL_TAXES_UPDATED, federalTaxesResponse)\n\n //State Taxes - only process if statesPayload exists\n if (statesPayload && Object.keys(statesPayload).length > 0) {\n const states = []\n\n for (const state of employeeStateTaxes) {\n const stateName = state.state\n\n if (stateName && state.questions !== undefined) {\n states.push({\n state: stateName,\n questions: state.questions\n .map(question => {\n if (question.isQuestionForAdminOnly && !isAdmin) {\n return null\n }\n const formValue = statesPayload[stateName]?.[snakeCaseToCamelCase(question.key)]\n return {\n key: question.key,\n answers: [\n {\n validFrom: question.answers[0]?.validFrom ?? DEFAULT_TAX_VALID_FROM,\n validUpTo: question.answers[0]?.validUpTo ?? null,\n value:\n formValue == null || (typeof formValue === 'number' && isNaN(formValue))\n ? ''\n : (formValue as string | number | boolean),\n },\n ],\n }\n })\n .filter(q => q !== null), //Filtering out questions in non-admin setup\n })\n }\n }\n\n const stateTaxesResponse = await updateStateTaxes({\n request: { employeeUuid: employeeId, employeeStateTaxesRequest: { states } },\n })\n onEvent(componentEvents.EMPLOYEE_STATE_TAXES_UPDATED, stateTaxesResponse)\n }\n\n onEvent(componentEvents.EMPLOYEE_TAXES_DONE)\n })\n }\n\n return (\n <section className={className}>\n <TaxesProvider\n value={{\n employeeStateTaxes,\n isAdmin: isAdmin,\n isPending: isPendingFederalTaxes || isPendingStateTaxes,\n }}\n >\n <FormProvider {...formMethods}>\n <Form onSubmit={handleSubmit(onSubmit)}>\n {children ? (\n children\n ) : (\n <>\n <FederalHead />\n <FederalForm />\n <StateForm />\n <Actions />\n </>\n )}\n </Form>\n </FormProvider>\n </TaxesProvider>\n </section>\n )\n}\n\nexport const TaxesContextual = () => {\n const { employeeId, onEvent, isAdmin } = useFlow<OnboardingContextInterface>()\n const { t } = useTranslation()\n if (!employeeId) {\n throw new Error(\n t('errors.missingParamsOrContext', {\n component: 'EmployeeTaxes',\n param: 'employeeId',\n provider: 'FlowProvider',\n }),\n )\n }\n return <Taxes employeeId={employeeId} onEvent={onEvent} isAdmin={isAdmin ?? false} />\n}\n"],"names":["DEFAULT_TAX_VALID_FROM","Taxes","props","jsx","BaseComponent","Root","employeeId","className","children","isAdmin","dictionary","onEvent","fieldErrors","baseSubmitHandler","useBase","useI18n","useComponentDictionary","fedData","useEmployeeTaxSetupGetFederalTaxesSuspense","employeeFederalTax","updateFederalTaxes","isPendingFederalTaxes","useEmployeeTaxSetupUpdateFederalTaxesMutation","stateData","useEmployeeTaxSetupGetStateTaxesSuspense","employeeStateTaxes","updateStateTaxes","isPendingStateTaxes","useEmployeeTaxSetupUpdateStateTaxesMutation","defaultValues","acc","state","question","value","key","snakeCaseToCamelCase","formMethods","useForm","zodResolver","FederalFormSchema","StateFormSchema","handleSubmit","_setError","useEffect","msgObject","TaxesProvider","FormProvider","Form","data","payload","statesPayload","federalPayload","federalTaxesResponse","componentEvents","states","stateName","formValue","q","stateTaxesResponse","jsxs","Fragment","FederalHead","FederalForm","StateForm","Actions"],"mappings":"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"}
@@ -2,19 +2,16 @@ import "react/jsx-runtime";
2
2
  import "react";
3
3
  import "react-error-boundary";
4
4
  import "react-i18next";
5
- import "@gusto/embedded-api/models/errors/apierror";
6
- import "@gusto/embedded-api/models/errors/sdkvalidationerror";
7
- import "@gusto/embedded-api/models/errors/unprocessableentityerrorobject";
8
- import "@tanstack/react-query";
9
5
  import "../../Base/useBase.js";
10
6
  import "../../../shared/constants.js";
7
+ import "classnames";
11
8
  import "dompurify";
9
+ import "../../../contexts/LocaleProvider/useLocale.js";
12
10
  import "../../../contexts/ComponentAdapter/useComponentContext.js";
13
- import "../../../contexts/LoadingIndicatorProvider/useLoadingIndicator.js";
14
11
  import { createCompoundContext as o } from "../../Base/createCompoundContext.js";
15
- const [u, f] = o("TaxesContext");
12
+ const [T, c] = o("TaxesContext");
16
13
  export {
17
- f as TaxesProvider,
18
- u as useTaxes
14
+ c as TaxesProvider,
15
+ T as useTaxes
19
16
  };
20
17
  //# sourceMappingURL=useTaxes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useTaxes.js","sources":["../../../../src/components/Employee/Taxes/useTaxes.ts"],"sourcesContent":["import type { EmployeeStateTaxesList } from '@gusto/embedded-api/models/components/employeestatetaxeslist'\nimport { createCompoundContext } from '@/components/Base'\n\ntype TaxesContextType = {\n employeeStateTaxes: EmployeeStateTaxesList[]\n isPending: boolean\n isAdmin: boolean\n}\n\nconst [useTaxes, TaxesProvider] = createCompoundContext<TaxesContextType>('TaxesContext')\nexport { useTaxes, TaxesProvider }\n"],"names":["useTaxes","TaxesProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;AASA,MAAM,CAACA,GAAUC,CAAa,IAAIC,EAAwC,cAAc;"}
1
+ {"version":3,"file":"useTaxes.js","sources":["../../../../src/components/Employee/Taxes/useTaxes.ts"],"sourcesContent":["import type { EmployeeStateTaxesList } from '@gusto/embedded-api/models/components/employeestatetaxeslist'\nimport { createCompoundContext } from '@/components/Base'\n\ntype TaxesContextType = {\n employeeStateTaxes: EmployeeStateTaxesList[]\n isPending: boolean\n isAdmin: boolean\n}\n\nconst [useTaxes, TaxesProvider] = createCompoundContext<TaxesContextType>('TaxesContext')\nexport { useTaxes, TaxesProvider }\n"],"names":["useTaxes","TaxesProvider","createCompoundContext"],"mappings":";;;;;;;;;;;AASA,MAAM,CAACA,GAAUC,CAAa,IAAIC,EAAwC,cAAc;"}
@@ -4,9 +4,11 @@ export { Deductions } from './Deductions';
4
4
  export { OnboardingSummary } from './OnboardingSummary';
5
5
  export { Profile } from './Profile';
6
6
  export { Compensation } from './Compensation';
7
- export { Taxes } from './Taxes';
7
+ export { FederalTaxes } from './FederalTaxes';
8
+ export { StateTaxes } from './StateTaxes';
8
9
  export { PaymentMethod } from './PaymentMethod';
9
10
  export { Landing } from './Landing';
10
11
  export { DocumentSigner } from './DocumentSigner';
11
12
  export { OnboardingFlow } from './OnboardingFlow/OnboardingFlow';
12
13
  export { SelfOnboardingFlow } from './SelfOnboardingFlow/SelfOnboardingFlow';
14
+ export { Taxes } from './Taxes';
@@ -1,25 +1,29 @@
1
1
  import { EmployeeList as e } from "./EmployeeList/EmployeeList.js";
2
- import { OnboardingFlow as t } from "./OnboardingFlow/OnboardingFlow.js";
2
+ import { OnboardingFlow as m } from "./OnboardingFlow/OnboardingFlow.js";
3
3
  import { SelfOnboardingFlow as f } from "./SelfOnboardingFlow/SelfOnboardingFlow.js";
4
- import { Deductions as x } from "./Deductions/Deductions.js";
5
- import { OnboardingSummary as a } from "./OnboardingSummary/OnboardingSummary.js";
6
- import { Profile as g } from "./Profile/Profile.js";
7
- import { Compensation as s } from "./Compensation/Compensation.js";
8
- import { Taxes as u } from "./Taxes/Taxes.js";
4
+ import { Deductions as n } from "./Deductions/Deductions.js";
5
+ import { OnboardingSummary as i } from "./OnboardingSummary/OnboardingSummary.js";
6
+ import { Profile as l } from "./Profile/Profile.js";
7
+ import { Compensation as g } from "./Compensation/Compensation.js";
8
+ import { FederalTaxes as b } from "./FederalTaxes/FederalTaxes.js";
9
+ import { StateTaxes as y } from "./StateTaxes/StateTaxes.js";
9
10
  import { PaymentMethod as O } from "./PaymentMethod/PaymentMethod.js";
10
11
  import { Landing as c } from "./Landing/Landing.js";
11
12
  import { DocumentSigner as D } from "./DocumentSigner/DocumentSigner.js";
13
+ import { Taxes as P } from "./Taxes/Taxes.js";
12
14
  export {
13
- s as Compensation,
14
- x as Deductions,
15
+ g as Compensation,
16
+ n as Deductions,
15
17
  D as DocumentSigner,
16
18
  e as EmployeeList,
19
+ b as FederalTaxes,
17
20
  c as Landing,
18
- t as OnboardingFlow,
19
- a as OnboardingSummary,
21
+ m as OnboardingFlow,
22
+ i as OnboardingSummary,
20
23
  O as PaymentMethod,
21
- g as Profile,
24
+ l as Profile,
22
25
  f as SelfOnboardingFlow,
23
- u as Taxes
26
+ y as StateTaxes,
27
+ P as Taxes
24
28
  };
25
29
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;"}
@@ -1,6 +1,8 @@
1
1
  import { BaseComponentInterface } from '../../Base/Base';
2
- interface PayrollConfigurationProps extends BaseComponentInterface {
2
+ interface PayrollConfigurationProps extends BaseComponentInterface<'Payroll.PayrollConfiguration'> {
3
+ companyId: string;
3
4
  payrollId: string;
4
5
  }
5
- export declare const PayrollConfiguration: ({ onEvent, payrollId, ...baseProps }: PayrollConfigurationProps) => import("react/jsx-runtime").JSX.Element;
6
+ export declare function PayrollConfiguration(props: PayrollConfigurationProps & BaseComponentInterface): import("react/jsx-runtime").JSX.Element;
7
+ export declare const Root: ({ onEvent, companyId, payrollId, dictionary }: PayrollConfigurationProps) => import("react/jsx-runtime").JSX.Element;
6
8
  export {};
@@ -1,41 +1,82 @@
1
- import { jsx as a } from "react/jsx-runtime";
2
- import { useState as s } from "react";
3
- import { PayrollEditEmployee as d } from "../PayrollEditEmployee/PayrollEditEmployee.js";
4
- import { PayrollConfigurationPresentation as E } from "./PayrollConfigurationPresentation.js";
5
- import { BaseComponent as y } from "../../Base/Base.js";
6
- import { componentEvents as e } from "../../../shared/constants.js";
7
- const u = ({ payrollId: o }) => ({
8
- data: {
9
- employees: [{ employeeId: "cdef" }]
10
- }
11
- }), P = ({ payrollId: o }) => ({ mutate: async () => {
12
- } }), D = ({
13
- onEvent: o,
14
- payrollId: n,
15
- ...i
16
- }) => {
17
- const {
18
- data: { employees: m }
19
- } = u({ payrollId: n }), { mutate: c } = P({ payrollId: n }), [r, l] = s(void 0);
20
- return /* @__PURE__ */ a(y, { ...i, onEvent: o, children: r ? /* @__PURE__ */ a(d, { onEvent: (t, p) => {
21
- t === e.RUN_PAYROLL_EMPLOYEE_SAVED && l(void 0), o(t, p);
22
- }, employeeId: r }) : /* @__PURE__ */ a(
23
- E,
1
+ import { jsx as r } from "react/jsx-runtime";
2
+ import { useState as m, useEffect as P } from "react";
3
+ import { useEmployeesListSuspense as U } from "/home/runner/work/embedded-react-sdk/embedded-react-sdk/node_modules/@gusto/embedded-api/esm/react-query/employeesList.js";
4
+ import { usePayrollsPrepareMutation as w } from "/home/runner/work/embedded-react-sdk/embedded-react-sdk/node_modules/@gusto/embedded-api/esm/react-query/payrollsPrepare.js";
5
+ import { usePayrollsGetSuspense as Y } from "/home/runner/work/embedded-react-sdk/embedded-react-sdk/node_modules/@gusto/embedded-api/esm/react-query/payrollsGet.js";
6
+ import { usePayrollsCalculateMutation as q } from "/home/runner/work/embedded-react-sdk/embedded-react-sdk/node_modules/@gusto/embedded-api/esm/react-query/payrollsCalculate.js";
7
+ import { usePaySchedulesGet as B } from "/home/runner/work/embedded-react-sdk/embedded-react-sdk/node_modules/@gusto/embedded-api/esm/react-query/paySchedulesGet.js";
8
+ import { PayrollProcessingRequestStatus as d } from "/home/runner/work/embedded-react-sdk/embedded-react-sdk/node_modules/@gusto/embedded-api/esm/models/components/payrollprocessingrequest.js";
9
+ import { PayrollEditEmployee as M } from "../PayrollEditEmployee/PayrollEditEmployee.js";
10
+ import { PayrollConfigurationPresentation as N } from "./PayrollConfigurationPresentation.js";
11
+ import { BaseComponent as b } from "../../Base/Base.js";
12
+ import { useBase as j } from "../../Base/useBase.js";
13
+ import { componentEvents as s } from "../../../shared/constants.js";
14
+ import { useComponentDictionary as v, useI18n as x } from "../../../i18n/I18n.js";
15
+ function ee(e) {
16
+ return /* @__PURE__ */ r(b, { ...e, children: /* @__PURE__ */ r(G, { ...e, children: e.children }) });
17
+ }
18
+ const G = ({ onEvent: e, companyId: o, payrollId: l, dictionary: f }) => {
19
+ v("Payroll.PayrollConfiguration", f), x("Payroll.PayrollConfiguration");
20
+ const { LoadingIndicator: C } = j(), { data: n } = Y(
24
21
  {
25
- employees: m,
26
- onBack: () => {
27
- o(e.RUN_PAYROLL_BACK);
28
- },
29
- onCalculatePayroll: async () => {
30
- await c(), o(e.RUN_PAYROLL_CALCULATED);
31
- },
32
- onEdit: ({ employeeId: t }) => {
33
- l(t), o(e.RUN_PAYROLL_EMPLOYEE_EDITED, { employeeId: t });
22
+ companyId: o,
23
+ payrollId: l
24
+ },
25
+ { refetchInterval: 5e3 }
26
+ ), { data: E } = U({
27
+ companyId: o
28
+ }), { mutateAsync: u, isPending: h } = w(), { mutateAsync: S } = q(), [a, L] = m(), [c, p] = m(void 0), { data: g } = B(
29
+ {
30
+ companyId: o,
31
+ payScheduleId: a?.payPeriod?.payScheduleUuid || ""
32
+ },
33
+ {
34
+ enabled: !!a?.payPeriod?.payScheduleUuid
35
+ }
36
+ );
37
+ P(() => {
38
+ (async () => {
39
+ const i = await u({
40
+ request: {
41
+ companyId: o,
42
+ payrollId: l
43
+ }
44
+ });
45
+ L(i.payrollPrepared);
46
+ })();
47
+ }, [o, l, u]);
48
+ const R = () => {
49
+ e(s.RUN_PAYROLL_BACK);
50
+ }, A = async () => {
51
+ await S({
52
+ request: {
53
+ companyId: o,
54
+ payrollId: l
34
55
  }
56
+ });
57
+ }, _ = (t) => {
58
+ p(t.uuid), e(s.RUN_PAYROLL_EMPLOYEE_EDITED, { employeeId: t.uuid });
59
+ }, D = (t, i) => {
60
+ t === s.RUN_PAYROLL_EMPLOYEE_SAVED && p(void 0), e(t, i);
61
+ }, O = n.payrollShow?.processingRequest?.status === d.Calculating, y = n.payrollShow?.processingRequest?.status === d.CalculateSuccess;
62
+ return P(() => {
63
+ y && e(s.RUN_PAYROLL_CALCULATED);
64
+ }, [y, e]), h || O ? /* @__PURE__ */ r(C, {}) : c ? /* @__PURE__ */ r(M, { onEvent: D, employeeId: c }) : /* @__PURE__ */ r(
65
+ N,
66
+ {
67
+ onBack: R,
68
+ onCalculatePayroll: A,
69
+ onEdit: _,
70
+ employeeCompensations: a?.employeeCompensations || [],
71
+ employeeDetails: E.showEmployees || [],
72
+ payPeriod: a?.payPeriod,
73
+ paySchedule: g?.payScheduleObject,
74
+ isOffCycle: a?.offCycle
35
75
  }
36
- ) });
76
+ );
37
77
  };
38
78
  export {
39
- D as PayrollConfiguration
79
+ ee as PayrollConfiguration,
80
+ G as Root
40
81
  };
41
82
  //# sourceMappingURL=PayrollConfiguration.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PayrollConfiguration.js","sources":["../../../../src/components/Payroll/PayrollConfiguration/PayrollConfiguration.tsx"],"sourcesContent":["import { useState } from 'react'\nimport { PayrollEditEmployee } from '../PayrollEditEmployee/PayrollEditEmployee'\nimport { PayrollConfigurationPresentation } from './PayrollConfigurationPresentation'\nimport type { BaseComponentInterface } from '@/components/Base/Base'\nimport { BaseComponent } from '@/components/Base/Base'\nimport type { EventType } from '@/shared/constants'\nimport { componentEvents } from '@/shared/constants'\nimport type { OnEventType } from '@/components/Base/useBase'\n\n//TODO: Use Speakeasy type\ninterface PayrollItem {\n payrollId: string\n}\n\n// TODO: Replace this hook with call to Speakeasy instead\nconst usePayrollApi = ({ payrollId }: PayrollItem) => {\n return {\n data: {\n employees: [{ employeeId: 'cdef' }],\n },\n }\n}\n// TODO: Replace this hook with call to Speakeasy instead\nconst useCalculatePayrollApi = ({ payrollId }: PayrollItem) => {\n const mutate = async () => {}\n return { mutate }\n}\n\ninterface PayrollConfigurationProps extends BaseComponentInterface {\n payrollId: string\n}\nexport const PayrollConfiguration = ({\n onEvent,\n payrollId,\n ...baseProps\n}: PayrollConfigurationProps) => {\n const {\n data: { employees },\n } = usePayrollApi({ payrollId })\n const { mutate } = useCalculatePayrollApi({ payrollId })\n const [editedEmployeeId, setEditedEmployeeId] = useState<string | undefined>(undefined)\n const onBack = () => {\n onEvent(componentEvents.RUN_PAYROLL_BACK)\n }\n const onCalculatePayroll = async () => {\n await mutate()\n onEvent(componentEvents.RUN_PAYROLL_CALCULATED)\n }\n const onEdit = ({ employeeId }: { employeeId: string }) => {\n setEditedEmployeeId(employeeId)\n onEvent(componentEvents.RUN_PAYROLL_EMPLOYEE_EDITED, { employeeId })\n }\n\n const wrappedOnEvent: OnEventType<string, unknown> = (event, payload) => {\n if (event === componentEvents.RUN_PAYROLL_EMPLOYEE_SAVED) {\n setEditedEmployeeId(undefined)\n }\n onEvent(event as EventType, payload)\n }\n\n const childComponent = editedEmployeeId ? (\n <PayrollEditEmployee onEvent={wrappedOnEvent} employeeId={editedEmployeeId} />\n ) : (\n <PayrollConfigurationPresentation\n employees={employees}\n onBack={onBack}\n onCalculatePayroll={onCalculatePayroll}\n onEdit={onEdit}\n />\n )\n\n return (\n <BaseComponent {...baseProps} onEvent={onEvent}>\n {childComponent}\n </BaseComponent>\n )\n}\n"],"names":["usePayrollApi","payrollId","useCalculatePayrollApi","PayrollConfiguration","onEvent","baseProps","employees","mutate","editedEmployeeId","setEditedEmployeeId","useState","jsx","BaseComponent","PayrollEditEmployee","event","payload","componentEvents","PayrollConfigurationPresentation","employeeId"],"mappings":";;;;;;AAeA,MAAMA,IAAgB,CAAC,EAAE,WAAAC,SAChB;AAAA,EACL,MAAM;AAAA,IACJ,WAAW,CAAC,EAAE,YAAY,QAAQ;AAAA,EAAA;AACpC,IAIEC,IAAyB,CAAC,EAAE,WAAAD,SAEzB,EAAE,QADM,YAAY;AAAC,EACnB,IAMEE,IAAuB,CAAC;AAAA,EACnC,SAAAC;AAAA,EACA,WAAAH;AAAA,EACA,GAAGI;AACL,MAAiC;AAC/B,QAAM;AAAA,IACJ,MAAM,EAAE,WAAAC,EAAA;AAAA,EAAU,IAChBN,EAAc,EAAE,WAAAC,GAAW,GACzB,EAAE,QAAAM,EAAA,IAAWL,EAAuB,EAAE,WAAAD,GAAW,GACjD,CAACO,GAAkBC,CAAmB,IAAIC,EAA6B,MAAS;AA+BtF,SACE,gBAAAC,EAACC,GAAA,EAAe,GAAGP,GAAW,SAAAD,GAC3B,UAbkBI,IACrB,gBAAAG,EAACE,GAAA,EAAoB,SAR8B,CAACC,GAAOC,MAAY;AACvE,IAAID,MAAUE,EAAgB,8BAC5BP,EAAoB,MAAS,GAE/BL,EAAQU,GAAoBC,CAAO;AAAA,EACrC,GAGgD,YAAYP,GAAkB,IAE5E,gBAAAG;AAAA,IAACM;AAAA,IAAA;AAAA,MACC,WAAAX;AAAA,MACA,QAxBW,MAAM;AACnB,QAAAF,EAAQY,EAAgB,gBAAgB;AAAA,MAC1C;AAAA,MAuBI,oBAtBuB,YAAY;AACrC,cAAMT,EAAA,GACNH,EAAQY,EAAgB,sBAAsB;AAAA,MAChD;AAAA,MAoBI,QAnBW,CAAC,EAAE,YAAAE,QAAyC;AACzD,QAAAT,EAAoBS,CAAU,GAC9Bd,EAAQY,EAAgB,6BAA6B,EAAE,YAAAE,EAAA,CAAY;AAAA,MACrE;AAAA,IAgBI;AAAA,EAAA,GAOF;AAEJ;"}
1
+ {"version":3,"file":"PayrollConfiguration.js","sources":["../../../../src/components/Payroll/PayrollConfiguration/PayrollConfiguration.tsx"],"sourcesContent":["import { useState, useEffect } from 'react'\nimport { useEmployeesListSuspense } from '@gusto/embedded-api/react-query/employeesList'\nimport { usePayrollsPrepareMutation } from '@gusto/embedded-api/react-query/payrollsPrepare'\nimport { usePayrollsGetSuspense } from '@gusto/embedded-api/react-query/payrollsGet'\nimport { usePayrollsCalculateMutation } from '@gusto/embedded-api/react-query/payrollsCalculate'\nimport { usePaySchedulesGet } from '@gusto/embedded-api/react-query/paySchedulesGet'\nimport type { Employee } from '@gusto/embedded-api/models/components/employee'\nimport type { PayrollPrepared } from '@gusto/embedded-api/models/components/payrollprepared'\nimport { PayrollProcessingRequestStatus } from '@gusto/embedded-api/models/components/payrollprocessingrequest'\nimport { PayrollEditEmployee } from '../PayrollEditEmployee/PayrollEditEmployee'\nimport { PayrollConfigurationPresentation } from './PayrollConfigurationPresentation'\nimport type { BaseComponentInterface } from '@/components/Base/Base'\nimport { BaseComponent } from '@/components/Base/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport type { EventType } from '@/shared/constants'\nimport { componentEvents } from '@/shared/constants'\nimport type { OnEventType } from '@/components/Base/useBase'\nimport { useComponentDictionary, useI18n } from '@/i18n'\n\ninterface PayrollConfigurationProps extends BaseComponentInterface<'Payroll.PayrollConfiguration'> {\n companyId: string\n payrollId: string\n}\n\nexport function PayrollConfiguration(props: PayrollConfigurationProps & BaseComponentInterface) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nexport const Root = ({ onEvent, companyId, payrollId, dictionary }: PayrollConfigurationProps) => {\n useComponentDictionary('Payroll.PayrollConfiguration', dictionary)\n useI18n('Payroll.PayrollConfiguration')\n\n const { LoadingIndicator } = useBase()\n\n const { data: payrollData } = usePayrollsGetSuspense(\n {\n companyId,\n payrollId,\n },\n { refetchInterval: 5_000 },\n )\n\n const { data: employeeData } = useEmployeesListSuspense({\n companyId,\n })\n\n const { mutateAsync: preparePayroll, isPending: isPreparePayrollPending } =\n usePayrollsPrepareMutation()\n const { mutateAsync: calculatePayroll } = usePayrollsCalculateMutation()\n const [preparedPayroll, setPreparedPayroll] = useState<PayrollPrepared | undefined>()\n const [editedEmployeeId, setEditedEmployeeId] = useState<string | undefined>(undefined)\n\n const { data: payScheduleData } = usePaySchedulesGet(\n {\n companyId,\n payScheduleId: preparedPayroll?.payPeriod?.payScheduleUuid || '',\n },\n {\n enabled: Boolean(preparedPayroll?.payPeriod?.payScheduleUuid),\n },\n )\n\n useEffect(() => {\n const handlePreparePayroll = async () => {\n const result = await preparePayroll({\n request: {\n companyId,\n payrollId,\n },\n })\n setPreparedPayroll(result.payrollPrepared)\n }\n\n void handlePreparePayroll()\n }, [companyId, payrollId, preparePayroll])\n\n const onBack = () => {\n onEvent(componentEvents.RUN_PAYROLL_BACK)\n }\n const onCalculatePayroll = async () => {\n await calculatePayroll({\n request: {\n companyId,\n payrollId,\n },\n })\n }\n const onEdit = (employee: Employee) => {\n setEditedEmployeeId(employee.uuid)\n onEvent(componentEvents.RUN_PAYROLL_EMPLOYEE_EDITED, { employeeId: employee.uuid })\n }\n\n const wrappedOnEvent: OnEventType<string, unknown> = (event, payload) => {\n if (event === componentEvents.RUN_PAYROLL_EMPLOYEE_SAVED) {\n setEditedEmployeeId(undefined)\n }\n onEvent(event as EventType, payload)\n }\n\n const isCalculating =\n payrollData.payrollShow?.processingRequest?.status ===\n PayrollProcessingRequestStatus.Calculating\n const isCalculated =\n payrollData.payrollShow?.processingRequest?.status ===\n PayrollProcessingRequestStatus.CalculateSuccess\n\n useEffect(() => {\n if (isCalculated) {\n onEvent(componentEvents.RUN_PAYROLL_CALCULATED)\n }\n }, [isCalculated, onEvent])\n\n if (isPreparePayrollPending || isCalculating) {\n return <LoadingIndicator />\n }\n\n return editedEmployeeId ? (\n <PayrollEditEmployee onEvent={wrappedOnEvent} employeeId={editedEmployeeId} />\n ) : (\n <PayrollConfigurationPresentation\n onBack={onBack}\n onCalculatePayroll={onCalculatePayroll}\n onEdit={onEdit}\n employeeCompensations={preparedPayroll?.employeeCompensations || []}\n employeeDetails={employeeData.showEmployees || []}\n payPeriod={preparedPayroll?.payPeriod}\n paySchedule={payScheduleData?.payScheduleObject}\n isOffCycle={preparedPayroll?.offCycle}\n />\n )\n}\n"],"names":["PayrollConfiguration","props","jsx","BaseComponent","Root","onEvent","companyId","payrollId","dictionary","useComponentDictionary","useI18n","LoadingIndicator","useBase","payrollData","usePayrollsGetSuspense","employeeData","useEmployeesListSuspense","preparePayroll","isPreparePayrollPending","usePayrollsPrepareMutation","calculatePayroll","usePayrollsCalculateMutation","preparedPayroll","setPreparedPayroll","useState","editedEmployeeId","setEditedEmployeeId","payScheduleData","usePaySchedulesGet","useEffect","result","onBack","componentEvents","onCalculatePayroll","onEdit","employee","wrappedOnEvent","event","payload","isCalculating","PayrollProcessingRequestStatus","isCalculated","PayrollEditEmployee","PayrollConfigurationPresentation"],"mappings":";;;;;;;;;;;;;;AAwBO,SAASA,GAAqBC,GAA2D;AAC9F,SACE,gBAAAC,EAACC,GAAA,EAAe,GAAGF,GACjB,UAAA,gBAAAC,EAACE,KAAM,GAAGH,GAAQ,UAAAA,EAAM,SAAA,CAAS,EAAA,CACnC;AAEJ;AAEO,MAAMG,IAAO,CAAC,EAAE,SAAAC,GAAS,WAAAC,GAAW,WAAAC,GAAW,YAAAC,QAA4C;AAChG,EAAAC,EAAuB,gCAAgCD,CAAU,GACjEE,EAAQ,8BAA8B;AAEtC,QAAM,EAAE,kBAAAC,EAAA,IAAqBC,EAAA,GAEvB,EAAE,MAAMC,EAAA,IAAgBC;AAAA,IAC5B;AAAA,MACE,WAAAR;AAAA,MACA,WAAAC;AAAA,IAAA;AAAA,IAEF,EAAE,iBAAiB,IAAA;AAAA,EAAM,GAGrB,EAAE,MAAMQ,EAAA,IAAiBC,EAAyB;AAAA,IACtD,WAAAV;AAAA,EAAA,CACD,GAEK,EAAE,aAAaW,GAAgB,WAAWC,EAAA,IAC9CC,EAAA,GACI,EAAE,aAAaC,EAAA,IAAqBC,EAAA,GACpC,CAACC,GAAiBC,CAAkB,IAAIC,EAAA,GACxC,CAACC,GAAkBC,CAAmB,IAAIF,EAA6B,MAAS,GAEhF,EAAE,MAAMG,EAAA,IAAoBC;AAAA,IAChC;AAAA,MACE,WAAAtB;AAAA,MACA,eAAegB,GAAiB,WAAW,mBAAmB;AAAA,IAAA;AAAA,IAEhE;AAAA,MACE,SAAS,EAAQA,GAAiB,WAAW;AAAA,IAAe;AAAA,EAC9D;AAGF,EAAAO,EAAU,MAAM;AAWd,KAV6B,YAAY;AACvC,YAAMC,IAAS,MAAMb,EAAe;AAAA,QAClC,SAAS;AAAA,UACP,WAAAX;AAAA,UACA,WAAAC;AAAA,QAAA;AAAA,MACF,CACD;AACD,MAAAgB,EAAmBO,EAAO,eAAe;AAAA,IAC3C,GAEK;AAAA,EACP,GAAG,CAACxB,GAAWC,GAAWU,CAAc,CAAC;AAEzC,QAAMc,IAAS,MAAM;AACnB,IAAA1B,EAAQ2B,EAAgB,gBAAgB;AAAA,EAC1C,GACMC,IAAqB,YAAY;AACrC,UAAMb,EAAiB;AAAA,MACrB,SAAS;AAAA,QACP,WAAAd;AAAA,QACA,WAAAC;AAAA,MAAA;AAAA,IACF,CACD;AAAA,EACH,GACM2B,IAAS,CAACC,MAAuB;AACrC,IAAAT,EAAoBS,EAAS,IAAI,GACjC9B,EAAQ2B,EAAgB,6BAA6B,EAAE,YAAYG,EAAS,MAAM;AAAA,EACpF,GAEMC,IAA+C,CAACC,GAAOC,MAAY;AACvE,IAAID,MAAUL,EAAgB,8BAC5BN,EAAoB,MAAS,GAE/BrB,EAAQgC,GAAoBC,CAAO;AAAA,EACrC,GAEMC,IACJ1B,EAAY,aAAa,mBAAmB,WAC5C2B,EAA+B,aAC3BC,IACJ5B,EAAY,aAAa,mBAAmB,WAC5C2B,EAA+B;AAQjC,SANAX,EAAU,MAAM;AACd,IAAIY,KACFpC,EAAQ2B,EAAgB,sBAAsB;AAAA,EAElD,GAAG,CAACS,GAAcpC,CAAO,CAAC,GAEtBa,KAA2BqB,sBACrB5B,GAAA,EAAiB,IAGpBc,IACL,gBAAAvB,EAACwC,GAAA,EAAoB,SAASN,GAAgB,YAAYX,GAAkB,IAE5E,gBAAAvB;AAAA,IAACyC;AAAA,IAAA;AAAA,MACC,QAAAZ;AAAA,MACA,oBAAAE;AAAA,MACA,QAAAC;AAAA,MACA,uBAAuBZ,GAAiB,yBAAyB,CAAA;AAAA,MACjE,iBAAiBP,EAAa,iBAAiB,CAAA;AAAA,MAC/C,WAAWO,GAAiB;AAAA,MAC5B,aAAaK,GAAiB;AAAA,MAC9B,YAAYL,GAAiB;AAAA,IAAA;AAAA,EAAA;AAGnC;"}
@@ -1,11 +1,16 @@
1
- interface Employee {
2
- employeeId: string;
3
- }
1
+ import { EmployeeCompensations } from '@gusto/embedded-api/models/components/payrollshow';
2
+ import { Employee } from '@gusto/embedded-api/models/components/employee';
3
+ import { PayrollPayPeriodType } from '@gusto/embedded-api/models/components/payrollpayperiodtype';
4
+ import { PayScheduleObject } from '@gusto/embedded-api/models/components/payscheduleobject';
4
5
  interface PayrollConfigurationPresentationProps {
5
- employees: Employee[];
6
+ employeeCompensations: EmployeeCompensations[];
7
+ employeeDetails: Employee[];
8
+ payPeriod?: PayrollPayPeriodType;
9
+ paySchedule?: PayScheduleObject;
6
10
  onBack: () => void;
7
11
  onCalculatePayroll: () => void;
8
12
  onEdit: (employee: Employee) => void;
13
+ isOffCycle?: boolean;
9
14
  }
10
- export declare const PayrollConfigurationPresentation: ({ employees, onBack, onEdit, onCalculatePayroll, }: PayrollConfigurationPresentationProps) => import("react/jsx-runtime").JSX.Element;
15
+ export declare const PayrollConfigurationPresentation: ({ employeeCompensations, employeeDetails, payPeriod, paySchedule, onBack, onEdit, onCalculatePayroll, isOffCycle, }: PayrollConfigurationPresentationProps) => import("react/jsx-runtime").JSX.Element;
11
16
  export {};