@gusto/embedded-react-sdk 0.12.0 → 0.12.3

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 (337) hide show
  1. package/CHANGELOG.md +133 -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/components/Base/Base.js +4 -4
  5. package/dist/components/Common/ReorderableList/DropZone.js +1 -1
  6. package/dist/components/Common/ReorderableList/DropZone.js.map +1 -1
  7. package/dist/components/Common/ReorderableList/ReorderableItem.js +1 -1
  8. package/dist/components/Common/ReorderableList/ReorderableItem.js.map +1 -1
  9. package/dist/components/Common/SignatureForm/SignatureForm.js +2 -2
  10. package/dist/components/Common/SignatureForm/SignatureFormActions.js +1 -1
  11. package/dist/components/Common/SignatureForm/SignatureFormFields.js +1 -1
  12. package/dist/components/Common/UI/CalendarPreview/CalendarPreview.js +1 -1
  13. package/dist/components/Common/UI/DatePicker/DatePicker.js +1 -1
  14. package/dist/components/Common/UI/ProgressBar/ProgressBar.d.ts +1 -1
  15. package/dist/components/Common/UI/ProgressBar/ProgressBar.js +19 -9
  16. package/dist/components/Common/UI/ProgressBar/ProgressBar.js.map +1 -1
  17. package/dist/components/Common/UI/ProgressBar/ProgressBarTypes.d.ts +4 -0
  18. package/dist/components/Common/hooks/useNumberFormatter.js +1 -1
  19. package/dist/components/Company/AssignSignatory/AssignSignatory.js +6 -7
  20. package/dist/components/Company/AssignSignatory/AssignSignatory.js.map +1 -1
  21. package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js +3 -2
  22. package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js.map +1 -1
  23. package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js +3 -2
  24. package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js.map +1 -1
  25. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js +7 -8
  26. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js.map +1 -1
  27. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js +13 -14
  28. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js.map +1 -1
  29. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +3 -7
  30. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
  31. package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js +3 -2
  32. package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js.map +1 -1
  33. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js +9 -10
  34. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js.map +1 -1
  35. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js +10 -11
  36. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js.map +1 -1
  37. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +3 -7
  38. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
  39. package/dist/components/Company/AssignSignatory/useAssignSignatory.js +5 -9
  40. package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
  41. package/dist/components/Company/BankAccount/BankAccount.js +7 -7
  42. package/dist/components/Company/BankAccount/BankAccount.js.map +1 -1
  43. package/dist/components/Company/BankAccount/BankAccountForm/Actions.js +6 -6
  44. package/dist/components/Company/BankAccount/BankAccountForm/BankAccountForm.js +8 -8
  45. package/dist/components/Company/BankAccount/BankAccountForm/BankAccountForm.js.map +1 -1
  46. package/dist/components/Company/BankAccount/BankAccountForm/Form.js +9 -8
  47. package/dist/components/Company/BankAccount/BankAccountForm/Form.js.map +1 -1
  48. package/dist/components/Company/BankAccount/BankAccountForm/context.js +3 -7
  49. package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
  50. package/dist/components/Company/BankAccount/BankAccountList/Actions.js +9 -8
  51. package/dist/components/Company/BankAccount/BankAccountList/Actions.js.map +1 -1
  52. package/dist/components/Company/BankAccount/BankAccountList/BankAccountList.js +4 -4
  53. package/dist/components/Company/BankAccount/BankAccountList/BankAccountList.js.map +1 -1
  54. package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js +8 -7
  55. package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js.map +1 -1
  56. package/dist/components/Company/BankAccount/BankAccountVerify/BankAccountVerify.js +2 -2
  57. package/dist/components/Company/BankAccount/BankAccountVerify/Form.js +5 -4
  58. package/dist/components/Company/BankAccount/BankAccountVerify/Form.js.map +1 -1
  59. package/dist/components/Company/DocumentSigner/DocumentList/Actions.js +3 -2
  60. package/dist/components/Company/DocumentSigner/DocumentList/Actions.js.map +1 -1
  61. package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js +10 -11
  62. package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
  63. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +3 -7
  64. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  65. package/dist/components/Company/DocumentSigner/DocumentSigner.js +1 -1
  66. package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js +9 -10
  67. package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js.map +1 -1
  68. package/dist/components/Company/DocumentSigner/SignatureForm/useSignatureForm.js +3 -7
  69. package/dist/components/Company/DocumentSigner/SignatureForm/useSignatureForm.js.map +1 -1
  70. package/dist/components/Company/FederalTaxes/Actions.js +6 -5
  71. package/dist/components/Company/FederalTaxes/Actions.js.map +1 -1
  72. package/dist/components/Company/FederalTaxes/FederalTaxes.js +15 -16
  73. package/dist/components/Company/FederalTaxes/FederalTaxes.js.map +1 -1
  74. package/dist/components/Company/FederalTaxes/Form.js +5 -4
  75. package/dist/components/Company/FederalTaxes/Form.js.map +1 -1
  76. package/dist/components/Company/FederalTaxes/useFederalTaxes.js +11 -15
  77. package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
  78. package/dist/components/Company/Industry/Actions.js +3 -2
  79. package/dist/components/Company/Industry/Actions.js.map +1 -1
  80. package/dist/components/Company/Industry/Context.js +6 -10
  81. package/dist/components/Company/Industry/Context.js.map +1 -1
  82. package/dist/components/Company/Industry/Edit.js +5 -4
  83. package/dist/components/Company/Industry/Edit.js.map +1 -1
  84. package/dist/components/Company/Industry/Industry.js +2 -2
  85. package/dist/components/Company/Locations/LocationForm/Actions.js +7 -6
  86. package/dist/components/Company/Locations/LocationForm/Actions.js.map +1 -1
  87. package/dist/components/Company/Locations/LocationForm/Form.js +5 -6
  88. package/dist/components/Company/Locations/LocationForm/Form.js.map +1 -1
  89. package/dist/components/Company/Locations/LocationForm/LocationForm.js +14 -15
  90. package/dist/components/Company/Locations/LocationForm/LocationForm.js.map +1 -1
  91. package/dist/components/Company/Locations/LocationForm/useLocationForm.js +3 -7
  92. package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
  93. package/dist/components/Company/Locations/LocationsList/Actions.js +7 -6
  94. package/dist/components/Company/Locations/LocationsList/Actions.js.map +1 -1
  95. package/dist/components/Company/Locations/LocationsList/List.js +3 -2
  96. package/dist/components/Company/Locations/LocationsList/List.js.map +1 -1
  97. package/dist/components/Company/Locations/LocationsList/LocationsList.js +7 -8
  98. package/dist/components/Company/Locations/LocationsList/LocationsList.js.map +1 -1
  99. package/dist/components/Company/Locations/LocationsList/useLocationsList.js +3 -7
  100. package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
  101. package/dist/components/Company/OnboardingOverview/Completed.js +11 -10
  102. package/dist/components/Company/OnboardingOverview/Completed.js.map +1 -1
  103. package/dist/components/Company/OnboardingOverview/MissingRequirements.js +7 -6
  104. package/dist/components/Company/OnboardingOverview/MissingRequirements.js.map +1 -1
  105. package/dist/components/Company/OnboardingOverview/OnboardingOverview.js +3 -4
  106. package/dist/components/Company/OnboardingOverview/OnboardingOverview.js.map +1 -1
  107. package/dist/components/Company/OnboardingOverview/context.js +3 -7
  108. package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
  109. package/dist/components/Company/PaySchedule/PaySchedule.js +38 -39
  110. package/dist/components/Company/PaySchedule/PaySchedule.js.map +1 -1
  111. package/dist/components/Company/PaySchedule/_parts/Actions.js +10 -9
  112. package/dist/components/Company/PaySchedule/_parts/Actions.js.map +1 -1
  113. package/dist/components/Company/PaySchedule/_parts/Edit.js +16 -17
  114. package/dist/components/Company/PaySchedule/_parts/Edit.js.map +1 -1
  115. package/dist/components/Company/PaySchedule/_parts/Head.js +7 -6
  116. package/dist/components/Company/PaySchedule/_parts/Head.js.map +1 -1
  117. package/dist/components/Company/PaySchedule/_parts/List.js +12 -11
  118. package/dist/components/Company/PaySchedule/_parts/List.js.map +1 -1
  119. package/dist/components/Company/PaySchedule/usePaySchedule.js +6 -10
  120. package/dist/components/Company/PaySchedule/usePaySchedule.js.map +1 -1
  121. package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js +3 -2
  122. package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js.map +1 -1
  123. package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.js +3 -3
  124. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +3 -7
  125. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
  126. package/dist/components/Company/StateTaxes/StateTaxesList/Actions.js +3 -2
  127. package/dist/components/Company/StateTaxes/StateTaxesList/Actions.js.map +1 -1
  128. package/dist/components/Company/StateTaxes/StateTaxesList/List.js +3 -2
  129. package/dist/components/Company/StateTaxes/StateTaxesList/List.js.map +1 -1
  130. package/dist/components/Company/StateTaxes/StateTaxesList/StateTaxesList.js +1 -1
  131. package/dist/components/Company/StateTaxes/StateTaxesList/context.js +3 -7
  132. package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
  133. package/dist/components/Contractor/Address/Address.js +8 -9
  134. package/dist/components/Contractor/Address/Address.js.map +1 -1
  135. package/dist/components/Contractor/Address/Form.js +3 -4
  136. package/dist/components/Contractor/Address/Form.js.map +1 -1
  137. package/dist/components/Contractor/Address/useAddress.js +5 -9
  138. package/dist/components/Contractor/Address/useAddress.js.map +1 -1
  139. package/dist/components/Contractor/ContractorList/index.js +18 -18
  140. package/dist/components/Contractor/ContractorList/useContractorList.js +1 -1
  141. package/dist/components/Contractor/NewHireReport/NewHireReport.js +3 -3
  142. package/dist/components/Contractor/OnboardingFlow/OnboardingFlow.js +12 -11
  143. package/dist/components/Contractor/OnboardingFlow/OnboardingFlow.js.map +1 -1
  144. package/dist/components/Contractor/OnboardingFlow/OnboardingFlowComponents.d.ts +1 -0
  145. package/dist/components/Contractor/OnboardingFlow/OnboardingFlowComponents.js +42 -22
  146. package/dist/components/Contractor/OnboardingFlow/OnboardingFlowComponents.js.map +1 -1
  147. package/dist/components/Contractor/OnboardingFlow/onboardingStateMachine.d.ts +5 -5
  148. package/dist/components/Contractor/OnboardingFlow/onboardingStateMachine.js +34 -16
  149. package/dist/components/Contractor/OnboardingFlow/onboardingStateMachine.js.map +1 -1
  150. package/dist/components/Contractor/PaymentMethod/BankAccountForm.js +6 -5
  151. package/dist/components/Contractor/PaymentMethod/BankAccountForm.js.map +1 -1
  152. package/dist/components/Contractor/PaymentMethod/PaymentMethod.js +86 -85
  153. package/dist/components/Contractor/PaymentMethod/PaymentMethod.js.map +1 -1
  154. package/dist/components/Contractor/Profile/ContractorProfile.js +23 -16
  155. package/dist/components/Contractor/Profile/ContractorProfile.js.map +1 -1
  156. package/dist/components/Contractor/Profile/ContractorProfileForm.d.ts +3 -1
  157. package/dist/components/Contractor/Profile/ContractorProfileForm.js +68 -65
  158. package/dist/components/Contractor/Profile/ContractorProfileForm.js.map +1 -1
  159. package/dist/components/Contractor/Profile/useContractorProfile.d.ts +16 -16
  160. package/dist/components/Contractor/Profile/useContractorProfile.js +110 -107
  161. package/dist/components/Contractor/Profile/useContractorProfile.js.map +1 -1
  162. package/dist/components/Contractor/Submit/Submit.js +38 -38
  163. package/dist/components/Contractor/Submit/Submit.js.map +1 -1
  164. package/dist/components/Employee/Compensation/Actions.js +1 -1
  165. package/dist/components/Employee/Compensation/Compensation.js +10 -10
  166. package/dist/components/Employee/Compensation/Compensation.js.map +1 -1
  167. package/dist/components/Employee/Compensation/Edit.js +12 -12
  168. package/dist/components/Employee/Compensation/List.js +23 -22
  169. package/dist/components/Employee/Compensation/List.js.map +1 -1
  170. package/dist/components/Employee/Compensation/useCompensation.js +1 -1
  171. package/dist/components/Employee/Compensation/useCompensation.js.map +1 -1
  172. package/dist/components/Employee/Deductions/Deductions.js +1 -1
  173. package/dist/components/Employee/Deductions/Deductions.js.map +1 -1
  174. package/dist/components/Employee/Deductions/DeductionsForm/DeductionsForm.js +12 -12
  175. package/dist/components/Employee/Deductions/DeductionsList/DeductionsList.js +3 -3
  176. package/dist/components/Employee/Deductions/IncludeDeductionsForm/IncludeDeductionsForm.js +9 -9
  177. package/dist/components/Employee/DocumentSigner/DocumentList/Actions.js +7 -6
  178. package/dist/components/Employee/DocumentSigner/DocumentList/Actions.js.map +1 -1
  179. package/dist/components/Employee/DocumentSigner/DocumentList/DocumentList.js +8 -9
  180. package/dist/components/Employee/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
  181. package/dist/components/Employee/DocumentSigner/DocumentList/List.js +3 -2
  182. package/dist/components/Employee/DocumentSigner/DocumentList/List.js.map +1 -1
  183. package/dist/components/Employee/DocumentSigner/DocumentList/useDocumentList.js +3 -7
  184. package/dist/components/Employee/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  185. package/dist/components/Employee/DocumentSigner/SignatureForm/SignatureForm.js +12 -13
  186. package/dist/components/Employee/DocumentSigner/SignatureForm/SignatureForm.js.map +1 -1
  187. package/dist/components/Employee/DocumentSigner/SignatureForm/useSignatureForm.js +3 -7
  188. package/dist/components/Employee/DocumentSigner/SignatureForm/useSignatureForm.js.map +1 -1
  189. package/dist/components/Employee/EmployeeList/Actions.js +3 -2
  190. package/dist/components/Employee/EmployeeList/Actions.js.map +1 -1
  191. package/dist/components/Employee/EmployeeList/EmployeeList.js +6 -7
  192. package/dist/components/Employee/EmployeeList/EmployeeList.js.map +1 -1
  193. package/dist/components/Employee/EmployeeList/Head.js +6 -5
  194. package/dist/components/Employee/EmployeeList/Head.js.map +1 -1
  195. package/dist/components/Employee/EmployeeList/List.js +12 -12
  196. package/dist/components/Employee/EmployeeList/useEmployeeList.js +3 -7
  197. package/dist/components/Employee/EmployeeList/useEmployeeList.js.map +1 -1
  198. package/dist/components/Employee/FederalTaxes/Actions.d.ts +1 -0
  199. package/dist/components/Employee/FederalTaxes/Actions.js +15 -0
  200. package/dist/components/Employee/FederalTaxes/Actions.js.map +1 -0
  201. package/dist/components/Employee/FederalTaxes/FederalForm.d.ts +29 -0
  202. package/dist/components/Employee/FederalTaxes/FederalForm.js +110 -0
  203. package/dist/components/Employee/FederalTaxes/FederalForm.js.map +1 -0
  204. package/dist/components/Employee/FederalTaxes/FederalTaxes.d.ts +6 -0
  205. package/dist/components/Employee/FederalTaxes/FederalTaxes.js +72 -0
  206. package/dist/components/Employee/FederalTaxes/FederalTaxes.js.map +1 -0
  207. package/dist/components/Employee/FederalTaxes/Head.d.ts +1 -0
  208. package/dist/components/Employee/FederalTaxes/Head.js +24 -0
  209. package/dist/components/Employee/FederalTaxes/Head.js.map +1 -0
  210. package/dist/components/Employee/FederalTaxes/index.d.ts +2 -0
  211. package/dist/components/Employee/FederalTaxes/useFederalTaxes.d.ts +5 -0
  212. package/dist/components/Employee/FederalTaxes/useFederalTaxes.js +16 -0
  213. package/dist/components/Employee/FederalTaxes/useFederalTaxes.js.map +1 -0
  214. package/dist/components/Employee/Landing/Landing.js +10 -10
  215. package/dist/components/Employee/OnboardingFlow/OnboardingFlow.d.ts +1 -19
  216. package/dist/components/Employee/OnboardingFlow/OnboardingFlow.js.map +1 -1
  217. package/dist/components/Employee/OnboardingFlow/OnboardingFlowComponents.d.ts +22 -0
  218. package/dist/components/Employee/OnboardingFlow/OnboardingFlowComponents.js +18 -0
  219. package/dist/components/Employee/OnboardingFlow/OnboardingFlowComponents.js.map +1 -0
  220. package/dist/components/Employee/OnboardingFlow/onboardingStateMachine.d.ts +2 -1
  221. package/dist/components/Employee/OnboardingFlow/onboardingStateMachine.js +72 -63
  222. package/dist/components/Employee/OnboardingFlow/onboardingStateMachine.js.map +1 -1
  223. package/dist/components/Employee/OnboardingSummary/OnboardingSummary.js +9 -9
  224. package/dist/components/Employee/OnboardingSummary/OnboardingSummary.js.map +1 -1
  225. package/dist/components/Employee/PaymentMethod/Actions.js +6 -5
  226. package/dist/components/Employee/PaymentMethod/Actions.js.map +1 -1
  227. package/dist/components/Employee/PaymentMethod/BankAccountEdit.js +1 -1
  228. package/dist/components/Employee/PaymentMethod/BankAccountsList.js +9 -8
  229. package/dist/components/Employee/PaymentMethod/BankAccountsList.js.map +1 -1
  230. package/dist/components/Employee/PaymentMethod/PaymentMethod.js +8 -8
  231. package/dist/components/Employee/PaymentMethod/PaymentMethod.js.map +1 -1
  232. package/dist/components/Employee/PaymentMethod/Split.js +9 -9
  233. package/dist/components/Employee/PaymentMethod/usePaymentMethod.js +9 -13
  234. package/dist/components/Employee/PaymentMethod/usePaymentMethod.js.map +1 -1
  235. package/dist/components/Employee/Profile/Actions.js +7 -6
  236. package/dist/components/Employee/Profile/Actions.js.map +1 -1
  237. package/dist/components/Employee/Profile/AdminPersonalDetails.d.ts +6 -6
  238. package/dist/components/Employee/Profile/HomeAddress.js +5 -6
  239. package/dist/components/Employee/Profile/HomeAddress.js.map +1 -1
  240. package/dist/components/Employee/Profile/PersonalDetailsInputs.d.ts +2 -2
  241. package/dist/components/Employee/Profile/PersonalDetailsInputs.js +21 -22
  242. package/dist/components/Employee/Profile/PersonalDetailsInputs.js.map +1 -1
  243. package/dist/components/Employee/Profile/Profile.js +13 -13
  244. package/dist/components/Employee/Profile/Profile.js.map +1 -1
  245. package/dist/components/Employee/Profile/useProfile.js +3 -7
  246. package/dist/components/Employee/Profile/useProfile.js.map +1 -1
  247. package/dist/components/Employee/SelfOnboardingFlow/SelfOnboardingComponents.d.ts +2 -1
  248. package/dist/components/Employee/SelfOnboardingFlow/SelfOnboardingComponents.js +37 -24
  249. package/dist/components/Employee/SelfOnboardingFlow/SelfOnboardingComponents.js.map +1 -1
  250. package/dist/components/Employee/SelfOnboardingFlow/selfOnboardingMachine.d.ts +2 -1
  251. package/dist/components/Employee/SelfOnboardingFlow/selfOnboardingMachine.js +31 -19
  252. package/dist/components/Employee/SelfOnboardingFlow/selfOnboardingMachine.js.map +1 -1
  253. package/dist/components/Employee/StateTaxes/Actions.d.ts +1 -0
  254. package/dist/components/Employee/StateTaxes/Actions.js +15 -0
  255. package/dist/components/Employee/StateTaxes/Actions.js.map +1 -0
  256. package/dist/components/Employee/StateTaxes/StateForm.d.ts +10 -0
  257. package/dist/components/Employee/StateTaxes/StateForm.js +34 -0
  258. package/dist/components/Employee/StateTaxes/StateForm.js.map +1 -0
  259. package/dist/components/Employee/StateTaxes/StateTaxes.d.ts +7 -0
  260. package/dist/components/Employee/StateTaxes/StateTaxes.js +90 -0
  261. package/dist/components/Employee/StateTaxes/StateTaxes.js.map +1 -0
  262. package/dist/components/Employee/StateTaxes/index.d.ts +2 -0
  263. package/dist/components/Employee/StateTaxes/useStateTaxes.d.ts +8 -0
  264. package/dist/components/Employee/StateTaxes/useStateTaxes.js +16 -0
  265. package/dist/components/Employee/StateTaxes/useStateTaxes.js.map +1 -0
  266. package/dist/components/Employee/Taxes/Actions.js +9 -8
  267. package/dist/components/Employee/Taxes/Actions.js.map +1 -1
  268. package/dist/components/Employee/Taxes/FederalForm.js +13 -12
  269. package/dist/components/Employee/Taxes/FederalForm.js.map +1 -1
  270. package/dist/components/Employee/Taxes/Taxes.d.ts +5 -0
  271. package/dist/components/Employee/Taxes/Taxes.js +73 -85
  272. package/dist/components/Employee/Taxes/Taxes.js.map +1 -1
  273. package/dist/components/Employee/Taxes/useTaxes.js +3 -7
  274. package/dist/components/Employee/Taxes/useTaxes.js.map +1 -1
  275. package/dist/components/Employee/index.d.ts +3 -1
  276. package/dist/components/Employee/index.js +16 -12
  277. package/dist/components/Employee/index.js.map +1 -1
  278. package/dist/components/Flow/Flow.js +15 -13
  279. package/dist/components/Flow/Flow.js.map +1 -1
  280. package/dist/components/Flow/useFlow.d.ts +1 -0
  281. package/dist/components/Flow/useFlow.js.map +1 -1
  282. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.d.ts +6 -0
  283. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js +41 -0
  284. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js.map +1 -0
  285. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.d.ts +11 -0
  286. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js +80 -0
  287. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js.map +1 -0
  288. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.d.ts +6 -0
  289. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js +19 -0
  290. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js.map +1 -0
  291. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.d.ts +5 -0
  292. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js +23 -0
  293. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js.map +1 -0
  294. package/dist/components/Payroll/PayrollList/PayrollList.d.ts +6 -0
  295. package/dist/components/Payroll/PayrollList/PayrollList.js +17 -0
  296. package/dist/components/Payroll/PayrollList/PayrollList.js.map +1 -0
  297. package/dist/components/Payroll/PayrollList/PayrollListPresentation.d.ts +9 -0
  298. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js +51 -0
  299. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js.map +1 -0
  300. package/dist/components/Payroll/PayrollOverview/PayrollOverview.d.ts +7 -0
  301. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js +32 -0
  302. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js.map +1 -0
  303. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.d.ts +6 -0
  304. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js +70 -0
  305. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js.map +1 -0
  306. package/dist/components/Payroll/RunPayrollFlow/RunPayroll.d.ts +16 -0
  307. package/dist/components/Payroll/RunPayrollFlow/RunPayroll.js +55 -0
  308. package/dist/components/Payroll/RunPayrollFlow/RunPayroll.js.map +1 -0
  309. package/dist/components/Payroll/RunPayrollFlow/RunPayrollFlow.d.ts +6 -0
  310. package/dist/components/Payroll/RunPayrollFlow/RunPayrollFlow.js +20 -0
  311. package/dist/components/Payroll/RunPayrollFlow/RunPayrollFlow.js.map +1 -0
  312. package/dist/components/Payroll/index.d.ts +6 -0
  313. package/dist/components/Payroll/index.js +13 -0
  314. package/dist/components/Payroll/index.js.map +1 -0
  315. package/dist/components/index.d.ts +1 -0
  316. package/dist/contexts/ApiProvider/ApiProvider.js +4 -4
  317. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js +3 -2
  318. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js.map +1 -1
  319. package/dist/contexts/ThemeProvider/ThemeProvider.js +7 -7
  320. package/dist/contexts/ThemeProvider/ThemeProvider.js.map +1 -1
  321. package/dist/i18n/I18n.js +1 -1
  322. package/dist/i18n/I18n.js.map +1 -1
  323. package/dist/i18n/en/Contractor.ContractorList.json.js +13 -11
  324. package/dist/i18n/en/Contractor.ContractorList.json.js.map +1 -1
  325. package/dist/i18n/en/Contractor.Profile.json.js +1 -1
  326. package/dist/i18n/en/Employee.FederalTaxes.json.js +46 -0
  327. package/dist/i18n/en/Employee.FederalTaxes.json.js.map +1 -0
  328. package/dist/i18n/en/Employee.StateTaxes.json.js +6 -10
  329. package/dist/i18n/en/Employee.StateTaxes.json.js.map +1 -1
  330. package/dist/i18n/en/Employee.Taxes.json.js +7 -7
  331. package/dist/index.js +11 -9
  332. package/dist/index.js.map +1 -1
  333. package/dist/shared/constants.d.ts +30 -2
  334. package/dist/shared/constants.js +75 -47
  335. package/dist/shared/constants.js.map +1 -1
  336. package/dist/types/i18next.d.ts +29 -7
  337. package/package.json +12 -13
@@ -3,6 +3,11 @@ interface TaxesProps extends CommonComponentInterface<'Employee.Taxes'> {
3
3
  employeeId: string;
4
4
  isAdmin?: boolean;
5
5
  }
6
+ /**
7
+ * @deprecated The Taxes component has been deprecated and will be removed in a future release.
8
+ * The component has been split into separate components for state and federal. Use Employee.FederalTaxes
9
+ * and Employee.StateTaxes components instead.
10
+ */
6
11
  export declare function Taxes(props: TaxesProps & BaseComponentInterface): import("react/jsx-runtime").JSX.Element;
7
12
  export declare const TaxesContextual: () => import("react/jsx-runtime").JSX.Element;
8
13
  export {};
@@ -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,15 @@ 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";
11
7
  import "classnames";
12
8
  import "dompurify";
13
9
  import "../../../contexts/ComponentAdapter/useComponentContext.js";
14
10
  import { createCompoundContext as o } from "../../Base/createCompoundContext.js";
15
- const [u, f] = o("TaxesContext");
11
+ const [C, T] = o("TaxesContext");
16
12
  export {
17
- f as TaxesProvider,
18
- u as useTaxes
13
+ T as TaxesProvider,
14
+ C as useTaxes
19
15
  };
20
16
  //# 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,29 +1,31 @@
1
1
  import { jsx as s, Fragment as d, jsxs as f } from "react/jsx-runtime";
2
2
  import { useMachine as h } from "react-robot";
3
3
  import { useTranslation as g } from "react-i18next";
4
- import { FlowContext as v } from "./useFlow.js";
5
- import { useComponentContext as w } from "../../contexts/ComponentAdapter/useComponentContext.js";
6
- const j = ({ onEvent: l, machine: m }) => {
7
- const p = w(), { t: i } = g(), [o, a, c] = h(m, {
4
+ import { FlowContext as C } from "./useFlow.js";
5
+ import { useComponentContext as v } from "../../contexts/ComponentAdapter/useComponentContext.js";
6
+ const b = ({ onEvent: l, machine: a }) => {
7
+ const p = v(), { t: m } = g(), [o, i, c] = h(a, {
8
8
  onEvent: x,
9
- component: null
10
- }), u = o.context.showProgress ?? !1, t = o.context.totalSteps ?? null, n = o.context.currentStep ?? null;
11
- function x(e, r) {
12
- c.child ? c.child.send({ type: e, payload: r }) : a({ type: e, payload: r }), l(e, r);
9
+ component: null,
10
+ progressBarCta: null
11
+ }), u = o.context.showProgress ?? !1, t = o.context.totalSteps ?? null, e = o.context.currentStep ?? null;
12
+ function x(n, r) {
13
+ c.child ? c.child.send({ type: n, payload: r }) : i({ type: n, payload: r }), l(n, r);
13
14
  }
14
15
  return /* @__PURE__ */ s(d, { children: /* @__PURE__ */ f(
15
- v.Provider,
16
+ C.Provider,
16
17
  {
17
18
  value: {
18
19
  ...o.context
19
20
  },
20
21
  children: [
21
- u && n && t && /* @__PURE__ */ s(
22
+ u && e && t && /* @__PURE__ */ s(
22
23
  p.ProgressBar,
23
24
  {
24
25
  totalSteps: t,
25
- currentStep: n,
26
- label: i("progressBarLabel", { totalSteps: t, currentStep: n })
26
+ currentStep: e,
27
+ label: m("progressBarLabel", { totalSteps: t, currentStep: e }),
28
+ cta: o.context.progressBarCta
27
29
  }
28
30
  ),
29
31
  o.context.component && /* @__PURE__ */ s(o.context.component, {})
@@ -32,6 +34,6 @@ const j = ({ onEvent: l, machine: m }) => {
32
34
  ) });
33
35
  };
34
36
  export {
35
- j as Flow
37
+ b as Flow
36
38
  };
37
39
  //# sourceMappingURL=Flow.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Flow.js","sources":["../../../src/components/Flow/Flow.tsx"],"sourcesContent":["import { useMachine } from 'react-robot'\nimport { type Machine } from 'robot3'\nimport { useTranslation } from 'react-i18next'\nimport type { OnEventType } from '../Base/useBase'\nimport type { FlowContextInterface } from './useFlow'\nimport { FlowContext } from './useFlow'\nimport { type EventType } from '@/shared/constants'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\ntype FlowProps = {\n machine: Machine<object, FlowContextInterface>\n onEvent: OnEventType<EventType, unknown>\n}\n\nexport const Flow = ({ onEvent, machine }: FlowProps) => {\n const Components = useComponentContext()\n const { t } = useTranslation()\n const [current, send, service] = useMachine(machine, {\n onEvent: handleEvent,\n component: null,\n })\n\n const showProgress = current.context.showProgress ?? false\n const totalSteps = current.context.totalSteps ?? null\n const currentStep = current.context.currentStep ?? null\n\n function handleEvent(type: EventType, data: unknown): void {\n //When dealing with nested state machine, correct machine needs to recieve an event\n if (service.child) {\n //@ts-expect-error: not sure why 'type' type is incorrectly derived here\n service.child.send({ type: type, payload: data })\n } else {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n send({ type: type, payload: data })\n }\n // Pass event upstream - onEvent can be optional on Flow component\n onEvent(type, data)\n }\n\n return (\n <>\n <FlowContext.Provider\n value={{\n ...current.context,\n }}\n >\n {showProgress && currentStep && totalSteps && (\n <Components.ProgressBar\n totalSteps={totalSteps}\n currentStep={currentStep}\n label={t('progressBarLabel', { totalSteps, currentStep })}\n />\n )}\n {current.context.component && <current.context.component />}\n </FlowContext.Provider>\n </>\n )\n}\n"],"names":["Flow","onEvent","machine","Components","useComponentContext","t","useTranslation","current","send","service","useMachine","handleEvent","showProgress","totalSteps","currentStep","type","data","jsx","Fragment","jsxs","FlowContext"],"mappings":";;;;;AAcO,MAAMA,IAAO,CAAC,EAAE,SAAAC,GAAS,SAAAC,QAAyB;AACvD,QAAMC,IAAaC,EAAA,GACb,EAAE,GAAAC,EAAA,IAAMC,EAAA,GACR,CAACC,GAASC,GAAMC,CAAO,IAAIC,EAAWR,GAAS;AAAA,IACnD,SAASS;AAAA,IACT,WAAW;AAAA,EAAA,CACZ,GAEKC,IAAeL,EAAQ,QAAQ,gBAAgB,IAC/CM,IAAaN,EAAQ,QAAQ,cAAc,MAC3CO,IAAcP,EAAQ,QAAQ,eAAe;AAEnD,WAASI,EAAYI,GAAiBC,GAAqB;AAEzD,IAAIP,EAAQ,QAEVA,EAAQ,MAAM,KAAK,EAAE,MAAAM,GAAY,SAASC,GAAM,IAGhDR,EAAK,EAAE,MAAAO,GAAY,SAASC,EAAA,CAAM,GAGpCf,EAAQc,GAAMC,CAAI;AAAA,EACpB;AAEA,SACE,gBAAAC,EAAAC,GAAA,EACE,UAAA,gBAAAC;AAAA,IAACC,EAAY;AAAA,IAAZ;AAAA,MACC,OAAO;AAAA,QACL,GAAGb,EAAQ;AAAA,MAAA;AAAA,MAGZ,UAAA;AAAA,QAAAK,KAAgBE,KAAeD,KAC9B,gBAAAI;AAAA,UAACd,EAAW;AAAA,UAAX;AAAA,YACC,YAAAU;AAAA,YACA,aAAAC;AAAA,YACA,OAAOT,EAAE,oBAAoB,EAAE,YAAAQ,GAAY,aAAAC,GAAa;AAAA,UAAA;AAAA,QAAA;AAAA,QAG3DP,EAAQ,QAAQ,+BAAcA,EAAQ,QAAQ,WAAhB,CAAA,CAA0B;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA,GAE7D;AAEJ;"}
1
+ {"version":3,"file":"Flow.js","sources":["../../../src/components/Flow/Flow.tsx"],"sourcesContent":["import { useMachine } from 'react-robot'\nimport { type Machine } from 'robot3'\nimport { useTranslation } from 'react-i18next'\nimport type { OnEventType } from '../Base/useBase'\nimport type { FlowContextInterface } from './useFlow'\nimport { FlowContext } from './useFlow'\nimport { type EventType } from '@/shared/constants'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\ntype FlowProps = {\n machine: Machine<object, FlowContextInterface>\n onEvent: OnEventType<EventType, unknown>\n}\n\nexport const Flow = ({ onEvent, machine }: FlowProps) => {\n const Components = useComponentContext()\n const { t } = useTranslation()\n const [current, send, service] = useMachine(machine, {\n onEvent: handleEvent,\n component: null,\n progressBarCta: null,\n })\n\n const showProgress = current.context.showProgress ?? false\n const totalSteps = current.context.totalSteps ?? null\n const currentStep = current.context.currentStep ?? null\n\n function handleEvent(type: EventType, data: unknown): void {\n //When dealing with nested state machine, correct machine needs to recieve an event\n if (service.child) {\n //@ts-expect-error: not sure why 'type' type is incorrectly derived here\n service.child.send({ type: type, payload: data })\n } else {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n send({ type: type, payload: data })\n }\n // Pass event upstream - onEvent can be optional on Flow component\n onEvent(type, data)\n }\n\n return (\n <>\n <FlowContext.Provider\n value={{\n ...current.context,\n }}\n >\n {showProgress && currentStep && totalSteps && (\n <Components.ProgressBar\n totalSteps={totalSteps}\n currentStep={currentStep}\n label={t('progressBarLabel', { totalSteps, currentStep })}\n cta={current.context.progressBarCta}\n />\n )}\n {current.context.component && <current.context.component />}\n </FlowContext.Provider>\n </>\n )\n}\n"],"names":["Flow","onEvent","machine","Components","useComponentContext","t","useTranslation","current","send","service","useMachine","handleEvent","showProgress","totalSteps","currentStep","type","data","jsx","Fragment","jsxs","FlowContext"],"mappings":";;;;;AAcO,MAAMA,IAAO,CAAC,EAAE,SAAAC,GAAS,SAAAC,QAAyB;AACvD,QAAMC,IAAaC,EAAA,GACb,EAAE,GAAAC,EAAA,IAAMC,EAAA,GACR,CAACC,GAASC,GAAMC,CAAO,IAAIC,EAAWR,GAAS;AAAA,IACnD,SAASS;AAAA,IACT,WAAW;AAAA,IACX,gBAAgB;AAAA,EAAA,CACjB,GAEKC,IAAeL,EAAQ,QAAQ,gBAAgB,IAC/CM,IAAaN,EAAQ,QAAQ,cAAc,MAC3CO,IAAcP,EAAQ,QAAQ,eAAe;AAEnD,WAASI,EAAYI,GAAiBC,GAAqB;AAEzD,IAAIP,EAAQ,QAEVA,EAAQ,MAAM,KAAK,EAAE,MAAAM,GAAY,SAASC,GAAM,IAGhDR,EAAK,EAAE,MAAAO,GAAY,SAASC,EAAA,CAAM,GAGpCf,EAAQc,GAAMC,CAAI;AAAA,EACpB;AAEA,SACE,gBAAAC,EAAAC,GAAA,EACE,UAAA,gBAAAC;AAAA,IAACC,EAAY;AAAA,IAAZ;AAAA,MACC,OAAO;AAAA,QACL,GAAGb,EAAQ;AAAA,MAAA;AAAA,MAGZ,UAAA;AAAA,QAAAK,KAAgBE,KAAeD,KAC9B,gBAAAI;AAAA,UAACd,EAAW;AAAA,UAAX;AAAA,YACC,YAAAU;AAAA,YACA,aAAAC;AAAA,YACA,OAAOT,EAAE,oBAAoB,EAAE,YAAAQ,GAAY,aAAAC,GAAa;AAAA,YACxD,KAAKP,EAAQ,QAAQ;AAAA,UAAA;AAAA,QAAA;AAAA,QAGxBA,EAAQ,QAAQ,+BAAcA,EAAQ,QAAQ,WAAhB,CAAA,CAA0B;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA,GAE7D;AAEJ;"}
@@ -8,6 +8,7 @@ export interface FlowContextInterface {
8
8
  totalSteps?: number;
9
9
  currentStep?: number | null;
10
10
  defaultValues?: Record<string, unknown>;
11
+ progressBarCta?: React.ComponentType | null;
11
12
  }
12
13
  export declare const FlowContext: import('react').Context<FlowContextInterface | null>;
13
14
  export declare function useFlow<C extends FlowContextInterface>(): C;
@@ -1 +1 @@
1
- {"version":3,"file":"useFlow.js","sources":["../../../src/components/Flow/useFlow.ts"],"sourcesContent":["import { createContext, useContext } from 'react'\nimport type { OnEventType } from '../Base/useBase'\nimport type { CommonComponentInterface } from '../Base'\nimport type { EventType } from '@/shared/constants'\n\nexport interface FlowContextInterface {\n component: React.ComponentType<CommonComponentInterface> | null\n onEvent: OnEventType<EventType, unknown>\n showProgress?: boolean\n totalSteps?: number\n currentStep?: number | null\n defaultValues?: Record<string, unknown>\n}\n\nexport const FlowContext = createContext<FlowContextInterface | null>(null)\n\n//TODO: This is hiding the fact that the callsite for useFlow\n// destructures a `companyId` that doesn't seem to exist\n// eslint-disable-next-line @typescript-eslint/no-unnecessary-type-parameters\nexport function useFlow<C extends FlowContextInterface>() {\n // When used outside provider, this is expected to return undefined - consumers must fallback to params\n const values = useContext<C>(FlowContext as unknown as React.Context<C>)\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n if (!values) {\n throw new Error('useFlow used outside provider')\n }\n return values\n}\n"],"names":["FlowContext","createContext","useFlow","values","useContext"],"mappings":";AAcO,MAAMA,IAAcC,EAA2C,IAAI;AAKnE,SAASC,IAA0C;AAExD,QAAMC,IAASC,EAAcJ,CAA0C;AAEvE,MAAI,CAACG;AACH,UAAM,IAAI,MAAM,+BAA+B;AAEjD,SAAOA;AACT;"}
1
+ {"version":3,"file":"useFlow.js","sources":["../../../src/components/Flow/useFlow.ts"],"sourcesContent":["import { createContext, useContext } from 'react'\nimport type { OnEventType } from '../Base/useBase'\nimport type { CommonComponentInterface } from '../Base'\nimport type { EventType } from '@/shared/constants'\n\nexport interface FlowContextInterface {\n component: React.ComponentType<CommonComponentInterface> | null\n onEvent: OnEventType<EventType, unknown>\n showProgress?: boolean\n totalSteps?: number\n currentStep?: number | null\n defaultValues?: Record<string, unknown>\n progressBarCta?: React.ComponentType | null\n}\n\nexport const FlowContext = createContext<FlowContextInterface | null>(null)\n\n//TODO: This is hiding the fact that the callsite for useFlow\n// destructures a `companyId` that doesn't seem to exist\n// eslint-disable-next-line @typescript-eslint/no-unnecessary-type-parameters\nexport function useFlow<C extends FlowContextInterface>() {\n // When used outside provider, this is expected to return undefined - consumers must fallback to params\n const values = useContext<C>(FlowContext as unknown as React.Context<C>)\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n if (!values) {\n throw new Error('useFlow used outside provider')\n }\n return values\n}\n"],"names":["FlowContext","createContext","useFlow","values","useContext"],"mappings":";AAeO,MAAMA,IAAcC,EAA2C,IAAI;AAKnE,SAASC,IAA0C;AAExD,QAAMC,IAASC,EAAcJ,CAA0C;AAEvE,MAAI,CAACG;AACH,UAAM,IAAI,MAAM,+BAA+B;AAEjD,SAAOA;AACT;"}
@@ -0,0 +1,6 @@
1
+ import { BaseComponentInterface } from '../../Base/Base';
2
+ interface PayrollConfigurationProps extends BaseComponentInterface {
3
+ payrollId: string;
4
+ }
5
+ export declare const PayrollConfiguration: ({ onEvent, payrollId, ...baseProps }: PayrollConfigurationProps) => import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -0,0 +1,41 @@
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,
24
+ {
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 });
34
+ }
35
+ }
36
+ ) });
37
+ };
38
+ export {
39
+ D as PayrollConfiguration
40
+ };
41
+ //# sourceMappingURL=PayrollConfiguration.js.map
@@ -0,0 +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;"}
@@ -0,0 +1,11 @@
1
+ interface Employee {
2
+ employeeId: string;
3
+ }
4
+ interface PayrollConfigurationPresentationProps {
5
+ employees: Employee[];
6
+ onBack: () => void;
7
+ onCalculatePayroll: () => void;
8
+ onEdit: (employee: Employee) => void;
9
+ }
10
+ export declare const PayrollConfigurationPresentation: ({ employees, onBack, onEdit, onCalculatePayroll, }: PayrollConfigurationPresentationProps) => import("react/jsx-runtime").JSX.Element;
11
+ export {};