@gusto/embedded-react-sdk 0.36.0 → 0.37.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 (448) hide show
  1. package/CHANGELOG.md +58 -0
  2. package/README.md +6 -0
  3. package/dist/UNSTABLE_Hooks.d.ts +1 -1
  4. package/dist/UNSTABLE_Hooks.js +50 -6
  5. package/dist/UNSTABLE_Hooks.js.map +1 -1
  6. package/dist/components/Base/Base.d.ts +8 -9
  7. package/dist/components/Base/Base.js +123 -101
  8. package/dist/components/Base/Base.js.map +1 -1
  9. package/dist/components/Base/index.d.ts +1 -1
  10. package/dist/components/Base/useBase.d.ts +3 -7
  11. package/dist/components/Base/useBase.js.map +1 -1
  12. package/dist/components/Base/useBaseSubmit.d.ts +3 -5
  13. package/dist/components/Base/useBaseSubmit.js +27 -50
  14. package/dist/components/Base/useBaseSubmit.js.map +1 -1
  15. package/dist/components/Common/Fields/CheckboxField/CheckboxField.d.ts +2 -0
  16. package/dist/components/Common/Fields/CheckboxField/CheckboxField.js +17 -16
  17. package/dist/components/Common/Fields/CheckboxField/CheckboxField.js.map +1 -1
  18. package/dist/components/Common/Fields/DatePickerField/DatePickerField.d.ts +5 -3
  19. package/dist/components/Common/Fields/DatePickerField/DatePickerField.js +46 -36
  20. package/dist/components/Common/Fields/DatePickerField/DatePickerField.js.map +1 -1
  21. package/dist/components/Common/Fields/NumberInputField/NumberInputField.d.ts +2 -0
  22. package/dist/components/Common/Fields/NumberInputField/NumberInputField.js +21 -20
  23. package/dist/components/Common/Fields/NumberInputField/NumberInputField.js.map +1 -1
  24. package/dist/components/Common/Fields/RadioGroupField/RadioGroupField.d.ts +3 -1
  25. package/dist/components/Common/Fields/RadioGroupField/RadioGroupField.js +20 -19
  26. package/dist/components/Common/Fields/RadioGroupField/RadioGroupField.js.map +1 -1
  27. package/dist/components/Common/Fields/SelectField/SelectField.d.ts +3 -1
  28. package/dist/components/Common/Fields/SelectField/SelectField.js +19 -18
  29. package/dist/components/Common/Fields/SelectField/SelectField.js.map +1 -1
  30. package/dist/components/Common/Fields/SwitchField/SwitchField.d.ts +2 -0
  31. package/dist/components/Common/Fields/SwitchField/SwitchField.js +19 -18
  32. package/dist/components/Common/Fields/SwitchField/SwitchField.js.map +1 -1
  33. package/dist/components/Common/Fields/TextInputField/TextInputField.d.ts +2 -0
  34. package/dist/components/Common/Fields/TextInputField/TextInputField.js +10 -9
  35. package/dist/components/Common/Fields/TextInputField/TextInputField.js.map +1 -1
  36. package/dist/components/Common/UI/Breadcrumbs/Breadcrumbs.js +1 -1
  37. package/dist/components/Common/UI/DescriptionList/DescriptionList.module.scss.js +2 -2
  38. package/dist/components/Common/UI/FileInput/FileInput.js +1 -1
  39. package/dist/components/Common/UI/ProgressBar/ProgressBar.js +4 -4
  40. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +8 -7
  41. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
  42. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +8 -7
  43. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
  44. package/dist/components/Company/AssignSignatory/useAssignSignatory.js +10 -9
  45. package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
  46. package/dist/components/Company/BankAccount/BankAccountForm/context.js +8 -7
  47. package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
  48. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +8 -7
  49. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  50. package/dist/components/Company/DocumentSigner/SignatureForm/useSignatureForm.js +8 -7
  51. package/dist/components/Company/DocumentSigner/SignatureForm/useSignatureForm.js.map +1 -1
  52. package/dist/components/Company/FederalTaxes/useFederalTaxes.js +13 -12
  53. package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
  54. package/dist/components/Company/Industry/Context.js +11 -10
  55. package/dist/components/Company/Industry/Context.js.map +1 -1
  56. package/dist/components/Company/Locations/LocationForm/useLocationForm.js +8 -7
  57. package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
  58. package/dist/components/Company/Locations/LocationsList/useLocationsList.js +8 -7
  59. package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
  60. package/dist/components/Company/OnboardingOverview/context.js +8 -7
  61. package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
  62. package/dist/components/Company/PaySchedule/PaySchedule.js +60 -60
  63. package/dist/components/Company/PaySchedule/PaySchedule.js.map +1 -1
  64. package/dist/components/Company/PaySchedule/usePaySchedule.js +10 -9
  65. package/dist/components/Company/PaySchedule/usePaySchedule.js.map +1 -1
  66. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +8 -7
  67. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
  68. package/dist/components/Company/StateTaxes/StateTaxesList/context.js +8 -7
  69. package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
  70. package/dist/components/Contractor/Address/useAddress.js +10 -9
  71. package/dist/components/Contractor/Address/useAddress.js.map +1 -1
  72. package/dist/components/Contractor/Profile/ContractorProfileForm.js +15 -15
  73. package/dist/components/Contractor/Profile/useContractorProfile.js +41 -38
  74. package/dist/components/Contractor/Profile/useContractorProfile.js.map +1 -1
  75. package/dist/components/Employee/Deductions/DeductionsForm/ChildSupportForm.js +7 -6
  76. package/dist/components/Employee/Deductions/DeductionsForm/ChildSupportForm.js.map +1 -1
  77. package/dist/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.js +14 -13
  78. package/dist/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.js.map +1 -1
  79. package/dist/components/Employee/Deductions/DeductionsForm/GarnishmentForm.js +7 -6
  80. package/dist/components/Employee/Deductions/DeductionsForm/GarnishmentForm.js.map +1 -1
  81. package/dist/components/Employee/DocumentSigner/DocumentList/useDocumentList.js +8 -7
  82. package/dist/components/Employee/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  83. package/dist/components/Employee/DocumentSigner/SignatureForm/useSignatureForm.js +8 -7
  84. package/dist/components/Employee/DocumentSigner/SignatureForm/useSignatureForm.js.map +1 -1
  85. package/dist/components/Employee/EmployeeList/useEmployeeList.js +8 -7
  86. package/dist/components/Employee/EmployeeList/useEmployeeList.js.map +1 -1
  87. package/dist/components/Employee/FederalTaxes/FederalTaxes.js +42 -42
  88. package/dist/components/Employee/FederalTaxes/FederalTaxes.js.map +1 -1
  89. package/dist/components/Employee/FederalTaxes/useFederalTaxes.js +8 -7
  90. package/dist/components/Employee/FederalTaxes/useFederalTaxes.js.map +1 -1
  91. package/dist/components/Employee/PaymentMethod/usePaymentMethod.js +10 -9
  92. package/dist/components/Employee/PaymentMethod/usePaymentMethod.js.map +1 -1
  93. package/dist/components/Employee/Profile/HomeAddress.d.ts +3 -3
  94. package/dist/components/Employee/Profile/HomeAddress.js +38 -36
  95. package/dist/components/Employee/Profile/HomeAddress.js.map +1 -1
  96. package/dist/components/Employee/Profile/Profile.js +30 -29
  97. package/dist/components/Employee/Profile/Profile.js.map +1 -1
  98. package/dist/components/Employee/Profile/useProfile.js +8 -7
  99. package/dist/components/Employee/Profile/useProfile.js.map +1 -1
  100. package/dist/components/Employee/StateTaxes/StateTaxes.js +50 -50
  101. package/dist/components/Employee/StateTaxes/StateTaxes.js.map +1 -1
  102. package/dist/components/Employee/StateTaxes/useStateTaxes.js +8 -7
  103. package/dist/components/Employee/StateTaxes/useStateTaxes.js.map +1 -1
  104. package/dist/components/Employee/Taxes/Taxes.js +53 -53
  105. package/dist/components/Employee/Taxes/Taxes.js.map +1 -1
  106. package/dist/components/Employee/Taxes/useTaxes.js +8 -7
  107. package/dist/components/Employee/Taxes/useTaxes.js.map +1 -1
  108. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.d.ts +11 -0
  109. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js +123 -0
  110. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js.map +1 -0
  111. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.d.ts +11 -0
  112. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.js +92 -0
  113. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.js.map +1 -0
  114. package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlow.d.ts +2 -0
  115. package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlow.js +30 -0
  116. package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlow.js.map +1 -0
  117. package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlowComponents.d.ts +23 -0
  118. package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlowComponents.js +72 -0
  119. package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlowComponents.js.map +1 -0
  120. package/dist/components/Employee/Terminations/TerminationFlow/index.d.ts +3 -0
  121. package/dist/components/Employee/Terminations/TerminationFlow/terminationStateMachine.d.ts +7 -0
  122. package/dist/components/Employee/Terminations/TerminationFlow/terminationStateMachine.js +165 -0
  123. package/dist/components/Employee/Terminations/TerminationFlow/terminationStateMachine.js.map +1 -0
  124. package/dist/components/Employee/Terminations/TerminationFlow/terminationStateMachine.test.d.ts +1 -0
  125. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummary.d.ts +9 -0
  126. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummary.js +86 -0
  127. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummary.js.map +1 -0
  128. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.d.ts +20 -0
  129. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.js +103 -0
  130. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.js.map +1 -0
  131. package/dist/components/Employee/Terminations/TerminationsData.d.ts +6 -0
  132. package/dist/components/Employee/Terminations/index.d.ts +8 -0
  133. package/dist/components/Employee/Terminations/types.d.ts +1 -0
  134. package/dist/components/Employee/index.d.ts +7 -0
  135. package/dist/components/Employee/index.js +34 -28
  136. package/dist/components/Employee/index.js.map +1 -1
  137. package/dist/components/InformationRequests/InformationRequests.js +31 -31
  138. package/dist/components/InformationRequests/InformationRequests.js.map +1 -1
  139. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.js +41 -41
  140. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.js.map +1 -1
  141. package/dist/components/Payroll/Dismissal/DismissalFlow.d.ts +2 -0
  142. package/dist/components/Payroll/Dismissal/DismissalFlow.js +32 -0
  143. package/dist/components/Payroll/Dismissal/DismissalFlow.js.map +1 -0
  144. package/dist/components/Payroll/Dismissal/DismissalFlowComponents.d.ts +16 -0
  145. package/dist/components/Payroll/Dismissal/DismissalFlowComponents.js +52 -0
  146. package/dist/components/Payroll/Dismissal/DismissalFlowComponents.js.map +1 -0
  147. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelection.d.ts +6 -0
  148. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelection.js +69 -0
  149. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelection.js.map +1 -0
  150. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.d.ts +9 -0
  151. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.js +53 -0
  152. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.js.map +1 -0
  153. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/index.d.ts +3 -0
  154. package/dist/components/Payroll/Dismissal/dismissalStateMachine.d.ts +6 -0
  155. package/dist/components/Payroll/Dismissal/dismissalStateMachine.js +51 -0
  156. package/dist/components/Payroll/Dismissal/dismissalStateMachine.js.map +1 -0
  157. package/dist/components/Payroll/Dismissal/dismissalStateMachine.test.d.ts +1 -0
  158. package/dist/components/Payroll/Dismissal/index.d.ts +3 -0
  159. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js +18 -15
  160. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js.map +1 -1
  161. package/dist/components/Payroll/OffCycle/OffCycleFlow.d.ts +1 -1
  162. package/dist/components/Payroll/OffCycle/OffCycleFlow.js +19 -18
  163. package/dist/components/Payroll/OffCycle/OffCycleFlow.js.map +1 -1
  164. package/dist/components/Payroll/OffCycle/OffCycleFlowComponents.d.ts +3 -0
  165. package/dist/components/Payroll/OffCycle/OffCycleFlowComponents.js +32 -24
  166. package/dist/components/Payroll/OffCycle/OffCycleFlowComponents.js.map +1 -1
  167. package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js +45 -45
  168. package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js.map +1 -1
  169. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.d.ts +1 -1
  170. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.js +75 -66
  171. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.js.map +1 -1
  172. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.module.scss.js +8 -0
  173. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.module.scss.js.map +1 -0
  174. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationTypes.d.ts +0 -1
  175. package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormPresentation.module.scss.js +4 -4
  176. package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormTypes.js +2 -2
  177. package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormTypes.js.map +1 -1
  178. package/dist/components/Payroll/OffCyclePayPeriodDateForm/useOffCyclePayPeriodDateValidation.d.ts +1 -0
  179. package/dist/components/Payroll/OffCyclePayPeriodDateForm/useOffCyclePayPeriodDateValidation.js +1 -0
  180. package/dist/components/Payroll/OffCyclePayPeriodDateForm/useOffCyclePayPeriodDateValidation.js.map +1 -1
  181. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js +186 -159
  182. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js.map +1 -1
  183. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.d.ts +3 -3
  184. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js +69 -69
  185. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js.map +1 -1
  186. package/dist/components/Payroll/PayrollConfiguration/grossUpHelpers.d.ts +3 -2
  187. package/dist/components/Payroll/PayrollConfiguration/grossUpHelpers.js +8 -8
  188. package/dist/components/Payroll/PayrollConfiguration/grossUpHelpers.js.map +1 -1
  189. package/dist/components/Payroll/PayrollConfiguration/usePayrollConfigurationData.d.ts +5 -3
  190. package/dist/components/Payroll/PayrollConfiguration/usePayrollConfigurationData.js +76 -70
  191. package/dist/components/Payroll/PayrollConfiguration/usePayrollConfigurationData.js.map +1 -1
  192. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js +47 -42
  193. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js.map +1 -1
  194. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.d.ts +4 -2
  195. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js +235 -196
  196. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js.map +1 -1
  197. package/dist/components/Payroll/PayrollFlow/OffCycleFlowContextual.d.ts +1 -0
  198. package/dist/components/Payroll/PayrollFlow/OffCycleFlowContextual.js +12 -0
  199. package/dist/components/Payroll/PayrollFlow/OffCycleFlowContextual.js.map +1 -0
  200. package/dist/components/Payroll/PayrollFlow/PayrollFlowComponents.d.ts +3 -0
  201. package/dist/components/Payroll/PayrollFlow/PayrollFlowComponents.js.map +1 -1
  202. package/dist/components/Payroll/PayrollFlow/TransitionFlowContextual.d.ts +1 -0
  203. package/dist/components/Payroll/PayrollFlow/TransitionFlowContextual.js +21 -0
  204. package/dist/components/Payroll/PayrollFlow/TransitionFlowContextual.js.map +1 -0
  205. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.d.ts +2 -0
  206. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js +95 -64
  207. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js.map +1 -1
  208. package/dist/components/Payroll/PayrollHistory/PayrollHistory.js +53 -47
  209. package/dist/components/Payroll/PayrollHistory/PayrollHistory.js.map +1 -1
  210. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js +8 -8
  211. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js.map +1 -1
  212. package/dist/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.js +25 -23
  213. package/dist/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.js.map +1 -1
  214. package/dist/components/Payroll/PayrollList/PayrollList.js +40 -32
  215. package/dist/components/Payroll/PayrollList/PayrollList.js.map +1 -1
  216. package/dist/components/Payroll/PayrollList/PayrollListPresentation.d.ts +2 -1
  217. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js +110 -93
  218. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js.map +1 -1
  219. package/dist/components/Payroll/PayrollList/PayrollListPresentation.module.scss.js +12 -8
  220. package/dist/components/Payroll/PayrollList/PayrollListPresentation.module.scss.js.map +1 -1
  221. package/dist/components/Payroll/Transition/TransitionFlow.d.ts +2 -0
  222. package/dist/components/Payroll/Transition/TransitionFlow.js +38 -0
  223. package/dist/components/Payroll/Transition/TransitionFlow.js.map +1 -0
  224. package/dist/components/Payroll/Transition/TransitionFlowComponents.d.ts +19 -0
  225. package/dist/components/Payroll/Transition/TransitionFlowComponents.js +54 -0
  226. package/dist/components/Payroll/Transition/TransitionFlowComponents.js.map +1 -0
  227. package/dist/components/Payroll/Transition/index.d.ts +3 -0
  228. package/dist/components/Payroll/Transition/transitionStateMachine.d.ts +6 -0
  229. package/dist/components/Payroll/Transition/transitionStateMachine.js +58 -0
  230. package/dist/components/Payroll/Transition/transitionStateMachine.js.map +1 -0
  231. package/dist/components/Payroll/Transition/transitionStateMachine.test.d.ts +1 -0
  232. package/dist/components/Payroll/TransitionCreation/TransitionCreation.d.ts +2 -0
  233. package/dist/components/Payroll/TransitionCreation/TransitionCreation.js +92 -0
  234. package/dist/components/Payroll/TransitionCreation/TransitionCreation.js.map +1 -0
  235. package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.d.ts +2 -0
  236. package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.js +111 -0
  237. package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.js.map +1 -0
  238. package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.module.scss.js +8 -0
  239. package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.module.scss.js.map +1 -0
  240. package/dist/components/Payroll/TransitionCreation/TransitionCreationTypes.d.ts +28 -0
  241. package/dist/components/Payroll/TransitionCreation/TransitionCreationTypes.js +21 -0
  242. package/dist/components/Payroll/TransitionCreation/TransitionCreationTypes.js.map +1 -0
  243. package/dist/components/Payroll/TransitionCreation/index.d.ts +3 -0
  244. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlert.d.ts +8 -0
  245. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlert.js +83 -0
  246. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlert.js.map +1 -0
  247. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlertPresentation.d.ts +16 -0
  248. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlertPresentation.js +100 -0
  249. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlertPresentation.js.map +1 -0
  250. package/dist/components/Payroll/TransitionPayrollAlert/index.d.ts +2 -0
  251. package/dist/components/Payroll/helpers.d.ts +2 -1
  252. package/dist/components/Payroll/helpers.js +98 -87
  253. package/dist/components/Payroll/helpers.js.map +1 -1
  254. package/dist/components/Payroll/index.d.ts +6 -0
  255. package/dist/components/Payroll/index.js +32 -26
  256. package/dist/components/Payroll/index.js.map +1 -1
  257. package/dist/components/Payroll/payrollTypes.d.ts +21 -0
  258. package/dist/components/Payroll/payrollTypes.js +27 -0
  259. package/dist/components/Payroll/payrollTypes.js.map +1 -0
  260. package/dist/components/Payroll/usePreparedPayrollData.js +4 -4
  261. package/dist/components/UNSTABLE_Hooks/collectErrors.d.ts +6 -0
  262. package/dist/components/UNSTABLE_Hooks/collectErrors.js +9 -0
  263. package/dist/components/UNSTABLE_Hooks/collectErrors.js.map +1 -0
  264. package/dist/components/UNSTABLE_Hooks/form/FormFieldsMetadataContext.d.ts +8 -0
  265. package/dist/components/UNSTABLE_Hooks/form/FormFieldsMetadataContext.js +13 -0
  266. package/dist/components/UNSTABLE_Hooks/form/FormFieldsMetadataContext.js.map +1 -0
  267. package/dist/components/UNSTABLE_Hooks/form/FormFieldsMetadataProvider.d.ts +10 -0
  268. package/dist/components/UNSTABLE_Hooks/form/FormFieldsMetadataProvider.js +13 -0
  269. package/dist/components/UNSTABLE_Hooks/form/FormFieldsMetadataProvider.js.map +1 -0
  270. package/dist/components/UNSTABLE_Hooks/form/SDKFormProvider.d.ts +23 -0
  271. package/dist/components/UNSTABLE_Hooks/form/SDKFormProvider.js +24 -0
  272. package/dist/components/UNSTABLE_Hooks/form/SDKFormProvider.js.map +1 -0
  273. package/dist/components/UNSTABLE_Hooks/form/composeFormSchema.d.ts +26 -0
  274. package/dist/components/UNSTABLE_Hooks/form/composeFormSchema.js +24 -0
  275. package/dist/components/UNSTABLE_Hooks/form/composeFormSchema.js.map +1 -0
  276. package/dist/components/UNSTABLE_Hooks/form/composeSubmitHandler.d.ts +53 -0
  277. package/dist/components/UNSTABLE_Hooks/form/composeSubmitHandler.js +34 -0
  278. package/dist/components/UNSTABLE_Hooks/form/composeSubmitHandler.js.map +1 -0
  279. package/dist/components/UNSTABLE_Hooks/form/composeSubmitHandler.test.d.ts +1 -0
  280. package/dist/components/UNSTABLE_Hooks/form/deriveFieldsMetadata.d.ts +3 -0
  281. package/dist/components/UNSTABLE_Hooks/form/deriveFieldsMetadata.js +14 -0
  282. package/dist/components/UNSTABLE_Hooks/form/deriveFieldsMetadata.js.map +1 -0
  283. package/dist/components/UNSTABLE_Hooks/form/deriveFieldsMetadata.test.d.ts +1 -0
  284. package/dist/components/UNSTABLE_Hooks/form/fields/CheckboxHookField.d.ts +9 -0
  285. package/dist/components/UNSTABLE_Hooks/form/fields/CheckboxHookField.js +34 -0
  286. package/dist/components/UNSTABLE_Hooks/form/fields/CheckboxHookField.js.map +1 -0
  287. package/dist/components/UNSTABLE_Hooks/form/fields/DatePickerHookField.d.ts +9 -0
  288. package/dist/components/UNSTABLE_Hooks/form/fields/DatePickerHookField.js +29 -0
  289. package/dist/components/UNSTABLE_Hooks/form/fields/DatePickerHookField.js.map +1 -0
  290. package/dist/components/UNSTABLE_Hooks/form/fields/NumberInputHookField.d.ts +12 -0
  291. package/dist/components/UNSTABLE_Hooks/form/fields/NumberInputHookField.js +40 -0
  292. package/dist/components/UNSTABLE_Hooks/form/fields/NumberInputHookField.js.map +1 -0
  293. package/dist/components/UNSTABLE_Hooks/form/fields/RadioGroupHookField.d.ts +10 -0
  294. package/dist/components/UNSTABLE_Hooks/form/fields/RadioGroupHookField.js +40 -0
  295. package/dist/components/UNSTABLE_Hooks/form/fields/RadioGroupHookField.js.map +1 -0
  296. package/dist/components/UNSTABLE_Hooks/form/fields/SelectHookField.d.ts +10 -0
  297. package/dist/components/UNSTABLE_Hooks/form/fields/SelectHookField.js +40 -0
  298. package/dist/components/UNSTABLE_Hooks/form/fields/SelectHookField.js.map +1 -0
  299. package/dist/components/UNSTABLE_Hooks/form/fields/SwitchHookField.d.ts +9 -0
  300. package/dist/components/UNSTABLE_Hooks/form/fields/SwitchHookField.js +34 -0
  301. package/dist/components/UNSTABLE_Hooks/form/fields/SwitchHookField.js.map +1 -0
  302. package/dist/components/UNSTABLE_Hooks/form/fields/TextInputHookField.d.ts +11 -0
  303. package/dist/components/UNSTABLE_Hooks/form/fields/TextInputHookField.js +38 -0
  304. package/dist/components/UNSTABLE_Hooks/form/fields/TextInputHookField.js.map +1 -0
  305. package/dist/components/UNSTABLE_Hooks/form/fields/index.d.ts +15 -0
  306. package/dist/components/UNSTABLE_Hooks/form/getFieldWithOptions.d.ts +2 -0
  307. package/dist/components/UNSTABLE_Hooks/form/getFieldWithOptions.js +8 -0
  308. package/dist/components/UNSTABLE_Hooks/form/getFieldWithOptions.js.map +1 -0
  309. package/dist/components/UNSTABLE_Hooks/form/getFormSubmissionValues.d.ts +18 -0
  310. package/dist/components/UNSTABLE_Hooks/form/getFormSubmissionValues.js +10 -0
  311. package/dist/components/UNSTABLE_Hooks/form/getFormSubmissionValues.js.map +1 -0
  312. package/dist/components/UNSTABLE_Hooks/form/getFormSubmissionValues.test.d.ts +1 -0
  313. package/dist/components/UNSTABLE_Hooks/form/index.d.ts +14 -0
  314. package/dist/components/UNSTABLE_Hooks/form/resolveRequiredFields.d.ts +6 -0
  315. package/dist/components/UNSTABLE_Hooks/form/resolveRequiredFields.js +14 -0
  316. package/dist/components/UNSTABLE_Hooks/form/resolveRequiredFields.js.map +1 -0
  317. package/dist/components/UNSTABLE_Hooks/form/types.d.ts +27 -0
  318. package/dist/components/UNSTABLE_Hooks/form/useFieldErrorMessage.d.ts +2 -0
  319. package/dist/components/UNSTABLE_Hooks/form/useFieldErrorMessage.js +17 -0
  320. package/dist/components/UNSTABLE_Hooks/form/useFieldErrorMessage.js.map +1 -0
  321. package/dist/components/UNSTABLE_Hooks/form/useFieldsMetadata.d.ts +4 -0
  322. package/dist/components/UNSTABLE_Hooks/form/useFieldsMetadata.js +9 -0
  323. package/dist/components/UNSTABLE_Hooks/form/useFieldsMetadata.js.map +1 -0
  324. package/dist/components/UNSTABLE_Hooks/form/withOptions.d.ts +5 -0
  325. package/dist/components/UNSTABLE_Hooks/form/withOptions.js +7 -0
  326. package/dist/components/UNSTABLE_Hooks/form/withOptions.js.map +1 -0
  327. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/CompensationForm.d.ts +5 -0
  328. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/CompensationForm.js +151 -0
  329. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/CompensationForm.js.map +1 -0
  330. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/compensationSchema.d.ts +97 -0
  331. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/compensationSchema.js +121 -0
  332. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/compensationSchema.js.map +1 -0
  333. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/fields.d.ts +34 -0
  334. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/fields.js +50 -0
  335. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/fields.js.map +1 -0
  336. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/index.d.ts +7 -0
  337. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/useCompensationForm.d.ts +104 -0
  338. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/useCompensationForm.js +259 -0
  339. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/useCompensationForm.js.map +1 -0
  340. package/dist/components/UNSTABLE_Hooks/hooks/useEmployeeDetailsForm/EmployeeDetailsForm.d.ts +5 -0
  341. package/dist/components/UNSTABLE_Hooks/hooks/useEmployeeDetailsForm/EmployeeDetailsForm.js +114 -0
  342. package/dist/components/UNSTABLE_Hooks/hooks/useEmployeeDetailsForm/EmployeeDetailsForm.js.map +1 -0
  343. package/dist/components/UNSTABLE_Hooks/hooks/useEmployeeDetailsForm/employeeDetailsSchema.d.ts +39 -0
  344. package/dist/components/UNSTABLE_Hooks/hooks/useEmployeeDetailsForm/employeeDetailsSchema.js +45 -0
  345. package/dist/components/UNSTABLE_Hooks/hooks/useEmployeeDetailsForm/employeeDetailsSchema.js.map +1 -0
  346. package/dist/components/UNSTABLE_Hooks/hooks/useEmployeeDetailsForm/fields.d.ts +23 -0
  347. package/dist/components/UNSTABLE_Hooks/hooks/useEmployeeDetailsForm/fields.js +46 -0
  348. package/dist/components/UNSTABLE_Hooks/hooks/useEmployeeDetailsForm/fields.js.map +1 -0
  349. package/dist/components/UNSTABLE_Hooks/hooks/useEmployeeDetailsForm/index.d.ts +7 -0
  350. package/dist/components/UNSTABLE_Hooks/hooks/useEmployeeDetailsForm/useEmployeeDetailsForm.d.ts +77 -0
  351. package/dist/components/UNSTABLE_Hooks/hooks/useEmployeeDetailsForm/useEmployeeDetailsForm.js +153 -0
  352. package/dist/components/UNSTABLE_Hooks/hooks/useEmployeeDetailsForm/useEmployeeDetailsForm.js.map +1 -0
  353. package/dist/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/WorkAddressForm.d.ts +5 -0
  354. package/dist/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/WorkAddressForm.js +71 -0
  355. package/dist/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/WorkAddressForm.js.map +1 -0
  356. package/dist/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/fields.d.ts +10 -0
  357. package/dist/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/fields.js +14 -0
  358. package/dist/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/fields.js.map +1 -0
  359. package/dist/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/index.d.ts +7 -0
  360. package/dist/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/useWorkAddressForm.d.ts +68 -0
  361. package/dist/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/useWorkAddressForm.js +129 -0
  362. package/dist/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/useWorkAddressForm.js.map +1 -0
  363. package/dist/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/workAddressSchema.d.ts +25 -0
  364. package/dist/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/workAddressSchema.js +24 -0
  365. package/dist/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/workAddressSchema.js.map +1 -0
  366. package/dist/components/UNSTABLE_Hooks/index.d.ts +9 -0
  367. package/dist/components/UNSTABLE_Hooks/types.d.ts +49 -0
  368. package/dist/components/UNSTABLE_Hooks/useErrorHandling.d.ts +9 -0
  369. package/dist/components/UNSTABLE_Hooks/useErrorHandling.js +12 -0
  370. package/dist/components/UNSTABLE_Hooks/useErrorHandling.js.map +1 -0
  371. package/dist/components/UNSTABLE_Hooks/useErrorHandling.test.d.ts +1 -0
  372. package/dist/contexts/ApiProvider/ApiProvider.js +11 -11
  373. package/dist/contexts/ApiProvider/ApiProvider.js.map +1 -1
  374. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js +43 -47
  375. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js.map +1 -1
  376. package/dist/contexts/ObservabilityProvider/index.d.ts +1 -1
  377. package/dist/contexts/ObservabilityProvider/sanitization.d.ts +0 -14
  378. package/dist/contexts/ObservabilityProvider/sanitization.js +51 -51
  379. package/dist/contexts/ObservabilityProvider/sanitization.js.map +1 -1
  380. package/dist/contexts/ObservabilityProvider/useSanitizedObservability.d.ts +0 -3
  381. package/dist/contexts/ObservabilityProvider/useSanitizedObservability.js.map +1 -1
  382. package/dist/helpers/requiredIf.d.ts +13 -0
  383. package/dist/helpers/requiredIf.js +8 -0
  384. package/dist/helpers/requiredIf.js.map +1 -0
  385. package/dist/i18n/I18n.js +13 -13
  386. package/dist/i18n/I18n.js.map +1 -1
  387. package/dist/i18n/en/Employee.Terminations.TerminateEmployee.json.js +18 -0
  388. package/dist/i18n/en/Employee.Terminations.TerminateEmployee.json.js.map +1 -0
  389. package/dist/i18n/en/Employee.Terminations.TerminationFlow.json.js +12 -0
  390. package/dist/i18n/en/Employee.Terminations.TerminationFlow.json.js.map +1 -0
  391. package/dist/i18n/en/Employee.Terminations.TerminationSummary.json.js +20 -0
  392. package/dist/i18n/en/Employee.Terminations.TerminationSummary.json.js.map +1 -0
  393. package/dist/i18n/en/Payroll.Dismissal.json.js +22 -0
  394. package/dist/i18n/en/Payroll.Dismissal.json.js.map +1 -0
  395. package/dist/i18n/en/Payroll.OffCycleCreation.json.js +15 -11
  396. package/dist/i18n/en/Payroll.OffCycleCreation.json.js.map +1 -1
  397. package/dist/i18n/en/Payroll.OffCyclePayPeriodDateForm.json.js +1 -1
  398. package/dist/i18n/en/Payroll.PayrollEditEmployee.json.js +20 -18
  399. package/dist/i18n/en/Payroll.PayrollEditEmployee.json.js.map +1 -1
  400. package/dist/i18n/en/Payroll.PayrollList.json.js +20 -18
  401. package/dist/i18n/en/Payroll.PayrollList.json.js.map +1 -1
  402. package/dist/i18n/en/Payroll.Transition.json.js +8 -0
  403. package/dist/i18n/en/Payroll.Transition.json.js.map +1 -0
  404. package/dist/i18n/en/Payroll.TransitionCreation.json.js +26 -0
  405. package/dist/i18n/en/Payroll.TransitionCreation.json.js.map +1 -0
  406. package/dist/i18n/en/Payroll.TransitionPayrollAlert.json.js +18 -0
  407. package/dist/i18n/en/Payroll.TransitionPayrollAlert.json.js.map +1 -0
  408. package/dist/i18n/en/UNSTABLE.CompensationForm.json.js +58 -0
  409. package/dist/i18n/en/UNSTABLE.CompensationForm.json.js.map +1 -0
  410. package/dist/i18n/en/UNSTABLE.EmployeeDetailsForm.json.js +34 -0
  411. package/dist/i18n/en/UNSTABLE.EmployeeDetailsForm.json.js.map +1 -0
  412. package/dist/i18n/en/UNSTABLE.WorkAddressForm.json.js +24 -0
  413. package/dist/i18n/en/UNSTABLE.WorkAddressForm.json.js.map +1 -0
  414. package/dist/i18n/en/common.json.d.ts +2 -1
  415. package/dist/i18n/en/common.json.js +9 -9
  416. package/dist/index.d.ts +3 -2
  417. package/dist/index.js +14 -13
  418. package/dist/models/WA_RISK_CODES.d.ts +5 -2866
  419. package/dist/models/WA_RISK_CODES.js.map +1 -1
  420. package/dist/shared/constants.d.ts +32 -0
  421. package/dist/shared/constants.js +83 -65
  422. package/dist/shared/constants.js.map +1 -1
  423. package/dist/style.css +1 -1
  424. package/dist/types/i18next.d.ts +279 -1
  425. package/dist/types/observability.d.ts +31 -65
  426. package/dist/types/sdkError.d.ts +97 -0
  427. package/dist/types/sdkError.js +95 -0
  428. package/dist/types/sdkError.js.map +1 -0
  429. package/dist/types/sdkError.test.d.ts +1 -0
  430. package/docs/reference/endpoint-inventory.json +212 -14
  431. package/package.json +16 -16
  432. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfiguration.d.ts +0 -6
  433. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfiguration.js +0 -70
  434. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfiguration.js.map +0 -1
  435. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfigurationContext.d.ts +0 -7
  436. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfigurationContext.js +0 -6
  437. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfigurationContext.js.map +0 -1
  438. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfigurationProvider.d.ts +0 -9
  439. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfigurationProvider.js +0 -40
  440. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfigurationProvider.js.map +0 -1
  441. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/index.d.ts +0 -5
  442. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/usePayrollConfiguration.d.ts +0 -2
  443. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/usePayrollConfiguration.js +0 -12
  444. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/usePayrollConfiguration.js.map +0 -1
  445. package/dist/components/Payroll/UNSTABLE_PayrollHooks/index.d.ts +0 -2
  446. package/dist/contexts/ObservabilityProvider/observabilityUtils.d.ts +0 -5
  447. package/dist/contexts/ObservabilityProvider/observabilityUtils.js +0 -45
  448. package/dist/contexts/ObservabilityProvider/observabilityUtils.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"CustomDeductionForm.js","sources":["../../../../../src/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { FormProvider, useForm, useWatch, type SubmitHandler } from 'react-hook-form'\nimport { useMemo } from 'react'\nimport { z } from 'zod'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { type Garnishment } from '@gusto/embedded-api/models/components/garnishment'\nimport { useGarnishmentsCreateMutation } from '@gusto/embedded-api/react-query/garnishmentsCreate'\nimport { useGarnishmentsUpdateMutation } from '@gusto/embedded-api/react-query/garnishmentsUpdate'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { Form } from '@/components/Common/Form'\nimport { ActionsLayout } from '@/components/Common'\nimport { Flex } from '@/components/Common/Flex/Flex'\nimport { NumberInputField, TextInputField, RadioGroupField } from '@/components/Common'\nimport { type CommonComponentInterface, useBase } from '@/components/Base'\nimport { componentEvents } from '@/shared/constants'\n\nconst NON_NEGATIVE_ERROR = 'Number must be greater than or equal to 0'\n\nexport const DeductionSchema = z.object({\n active: z.boolean(),\n amount: z.number().min(0, { error: NON_NEGATIVE_ERROR }).transform(String),\n description: z.string().min(1),\n times: z.number().nullable(),\n recurring: z.boolean(),\n annualMaximum: z\n .number()\n .min(0, { error: NON_NEGATIVE_ERROR })\n .transform(val => (val > 0 ? val.toString() : null))\n .nullable(),\n totalAmount: z\n .number()\n .min(0, { error: NON_NEGATIVE_ERROR })\n .transform(val => (val > 0 ? val.toString() : null))\n .nullable(),\n deductAsPercentage: z.boolean(),\n})\n\nexport type DeductionInputs = z.input<typeof DeductionSchema>\nexport type DeductionPayload = z.output<typeof DeductionSchema>\n\ninterface ChildSupportFormProps extends CommonComponentInterface<'Employee.Deductions'> {\n employeeId: string\n deduction?: Garnishment | null\n onCancel: () => void\n}\n\nfunction CustomDeductionForm({ deduction, employeeId, onCancel }: ChildSupportFormProps) {\n const { onEvent, baseSubmitHandler } = useBase()\n const { t } = useTranslation('Employee.Deductions')\n const Components = useComponentContext()\n\n const { mutateAsync: createDeduction, isPending: isPendingCreate } =\n useGarnishmentsCreateMutation()\n const { mutateAsync: updateDeduction, isPending: isPendingUpdate } =\n useGarnishmentsUpdateMutation()\n const isPending = isPendingCreate || isPendingUpdate\n\n const defaultValues: DeductionInputs = useMemo(() => {\n return {\n amount: deduction?.amount ? Number(deduction.amount) : 0,\n description: deduction?.description ?? '',\n times: deduction?.times ?? null,\n recurring: deduction?.recurring ?? true,\n annualMaximum: deduction?.annualMaximum ? Number(deduction.annualMaximum) : null,\n totalAmount: deduction?.totalAmount ? Number(deduction.totalAmount) : null,\n deductAsPercentage: deduction?.deductAsPercentage ?? true,\n active: true,\n } as DeductionInputs\n }, [deduction])\n\n const formMethods = useForm<DeductionInputs, unknown, DeductionPayload>({\n resolver: zodResolver(DeductionSchema),\n defaultValues,\n })\n const { control } = formMethods\n const watchedRecurring = useWatch({ control, name: 'recurring' })\n const watchedAmountPercentage = useWatch({ control, name: 'deductAsPercentage' })\n\n const onSubmit: SubmitHandler<DeductionPayload> = async data => {\n await baseSubmitHandler(data, async payload => {\n if (!deduction) {\n const { garnishment: createDeductionResponse } = await createDeduction({\n request: {\n employeeId: employeeId,\n requestBody: { ...payload, courtOrdered: false, times: payload.recurring ? null : 1 }, // custom deductions cannot be court ordered/garnishment\n },\n })\n\n onEvent(componentEvents.EMPLOYEE_DEDUCTION_CREATED, createDeductionResponse)\n } else {\n const { garnishment: updateDeductionResponse } = await updateDeduction({\n request: {\n garnishmentId: deduction.uuid,\n requestBody: {\n ...payload,\n version: deduction.version as string,\n times: payload.recurring ? null : 1,\n },\n },\n })\n onEvent(componentEvents.EMPLOYEE_DEDUCTION_UPDATED, updateDeductionResponse)\n }\n })\n }\n\n const handleCancel = () => {\n onCancel()\n }\n\n return (\n <FormProvider {...formMethods}>\n <Form onSubmit={formMethods.handleSubmit(onSubmit)}>\n <Flex flexDirection=\"column\" gap={32}>\n <>\n <Components.Heading as=\"h3\">{t('customDeductionTitle')}</Components.Heading>\n <Flex flexDirection=\"column\" gap={20}>\n <Flex flexDirection=\"column\" gap={20}>\n <TextInputField name=\"description\" label={t('descriptionLabelV2')} isRequired />\n <RadioGroupField\n name=\"recurring\"\n label={t('frequencyLabel')}\n isRequired\n options={[\n { value: true, label: t('frequencyRecurringOptionV2') },\n { value: false, label: t('frequencyOneTimeOptionV2') },\n ]}\n />\n <RadioGroupField\n name=\"deductAsPercentage\"\n label={t('deductionTypeLabelV2')}\n isRequired\n options={[\n { value: true, label: t('deductionTypePercentageOptionV2') },\n { value: false, label: t('deductionTypeFixedAmountOption') },\n ]}\n />\n <NumberInputField\n name=\"amount\"\n adornmentStart={!watchedAmountPercentage && '$'}\n adornmentEnd={watchedAmountPercentage && '%'}\n label={t('deductionAmountLabel')}\n isRequired\n min={0}\n format={watchedAmountPercentage ? 'percent' : 'currency'}\n description={\n watchedAmountPercentage\n ? t('deductionAmountDescriptionPercentage')\n : t('deductionAmountDescriptionFixed')\n }\n />\n </Flex>\n {watchedRecurring && (\n <Flex flexDirection=\"column\" gap={20}>\n <NumberInputField\n name=\"totalAmount\"\n adornmentStart=\"$\"\n format=\"currency\"\n label={t('totalAmountLabel')}\n description={t('totalAmountDescription')}\n min={0}\n />\n <NumberInputField\n name=\"annualMaximum\"\n adornmentStart=\"$\"\n format=\"currency\"\n label={t('annualMaxLabel')}\n min={0}\n description={t('annualMaxDescription')}\n />\n </Flex>\n )}\n </Flex>\n <ActionsLayout>\n <Components.Button variant=\"secondary\" onClick={handleCancel}>\n {t('cancelCta')}\n </Components.Button>\n <Components.Button type=\"submit\" isLoading={isPending}>\n {t('saveCta')}\n </Components.Button>\n </ActionsLayout>\n </>\n </Flex>\n </Form>\n </FormProvider>\n )\n}\n\nexport default CustomDeductionForm\n"],"names":["NON_NEGATIVE_ERROR","DeductionSchema","z","val","CustomDeductionForm","deduction","employeeId","onCancel","onEvent","baseSubmitHandler","useBase","t","useTranslation","Components","useComponentContext","createDeduction","isPendingCreate","useGarnishmentsCreateMutation","updateDeduction","isPendingUpdate","useGarnishmentsUpdateMutation","isPending","defaultValues","useMemo","formMethods","useForm","zodResolver","control","watchedRecurring","useWatch","watchedAmountPercentage","onSubmit","data","payload","updateDeductionResponse","componentEvents","createDeductionResponse","handleCancel","FormProvider","jsx","Form","Flex","jsxs","Fragment","TextInputField","RadioGroupField","NumberInputField","ActionsLayout"],"mappings":"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"}
1
+ {"version":3,"file":"CustomDeductionForm.js","sources":["../../../../../src/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { FormProvider, useForm, useWatch, type SubmitHandler } from 'react-hook-form'\nimport { useMemo } from 'react'\nimport { z } from 'zod'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { type Garnishment } from '@gusto/embedded-api/models/components/garnishment'\nimport { useGarnishmentsCreateMutation } from '@gusto/embedded-api/react-query/garnishmentsCreate'\nimport { useGarnishmentsUpdateMutation } from '@gusto/embedded-api/react-query/garnishmentsUpdate'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { Form } from '@/components/Common/Form'\nimport { ActionsLayout } from '@/components/Common'\nimport { Flex } from '@/components/Common/Flex/Flex'\nimport { NumberInputField, TextInputField, RadioGroupField } from '@/components/Common'\nimport { type CommonComponentInterface, useBase } from '@/components/Base'\nimport { componentEvents } from '@/shared/constants'\n\nconst NON_NEGATIVE_ERROR = 'Number must be greater than or equal to 0'\n\nexport const DeductionSchema = z.object({\n active: z.boolean(),\n amount: z.number().min(0, { error: NON_NEGATIVE_ERROR }).transform(String),\n description: z.string().min(1),\n times: z.number().nullable(),\n recurring: z.boolean(),\n annualMaximum: z\n .number()\n .min(0, { error: NON_NEGATIVE_ERROR })\n .transform(val => (val > 0 ? val.toString() : null))\n .nullable(),\n totalAmount: z\n .number()\n .min(0, { error: NON_NEGATIVE_ERROR })\n .transform(val => (val > 0 ? val.toString() : null))\n .nullable(),\n deductAsPercentage: z.boolean(),\n})\n\nexport type DeductionInputs = z.input<typeof DeductionSchema>\nexport type DeductionPayload = z.output<typeof DeductionSchema>\n\ninterface ChildSupportFormProps extends CommonComponentInterface<'Employee.Deductions'> {\n employeeId: string\n deduction?: Garnishment | null\n onCancel: () => void\n}\n\nfunction CustomDeductionForm({ deduction, employeeId, onCancel }: ChildSupportFormProps) {\n const { onEvent, baseSubmitHandler } = useBase()\n const { t } = useTranslation('Employee.Deductions')\n const Components = useComponentContext()\n\n const { mutateAsync: createDeduction, isPending: isPendingCreate } =\n useGarnishmentsCreateMutation()\n const { mutateAsync: updateDeduction, isPending: isPendingUpdate } =\n useGarnishmentsUpdateMutation()\n const isPending = isPendingCreate || isPendingUpdate\n\n const defaultValues: DeductionInputs = useMemo(() => {\n return {\n amount: deduction?.amount ? Number(deduction.amount) : 0,\n description: deduction?.description ?? '',\n times: deduction?.times ?? null,\n recurring: deduction?.recurring ?? true,\n annualMaximum: deduction?.annualMaximum ? Number(deduction.annualMaximum) : null,\n totalAmount: deduction?.totalAmount ? Number(deduction.totalAmount) : null,\n deductAsPercentage: deduction?.deductAsPercentage ?? true,\n active: true,\n } as DeductionInputs\n }, [deduction])\n\n const formMethods = useForm<DeductionInputs, unknown, DeductionPayload>({\n resolver: zodResolver(DeductionSchema),\n defaultValues,\n })\n const { control } = formMethods\n const watchedRecurring = useWatch({ control, name: 'recurring' })\n const watchedAmountPercentage = useWatch({ control, name: 'deductAsPercentage' })\n\n const onSubmit: SubmitHandler<DeductionPayload> = async data => {\n await baseSubmitHandler(data, async payload => {\n if (!deduction) {\n const { garnishment: createDeductionResponse } = await createDeduction({\n request: {\n employeeId: employeeId,\n requestBody: { ...payload, courtOrdered: false, times: payload.recurring ? null : 1 }, // custom deductions cannot be court ordered/garnishment\n },\n })\n\n onEvent(componentEvents.EMPLOYEE_DEDUCTION_CREATED, createDeductionResponse)\n } else {\n const { garnishment: updateDeductionResponse } = await updateDeduction({\n request: {\n garnishmentId: deduction.uuid,\n requestBody: {\n ...payload,\n version: deduction.version as string,\n times: payload.recurring ? null : 1,\n },\n },\n })\n onEvent(componentEvents.EMPLOYEE_DEDUCTION_UPDATED, updateDeductionResponse)\n }\n })\n }\n\n const handleCancel = () => {\n onCancel()\n }\n\n return (\n <FormProvider {...formMethods}>\n <Form onSubmit={formMethods.handleSubmit(onSubmit)}>\n <Flex flexDirection=\"column\" gap={32}>\n <>\n <Components.Heading as=\"h3\">{t('customDeductionTitle')}</Components.Heading>\n <Flex flexDirection=\"column\" gap={20}>\n <Flex flexDirection=\"column\" gap={20}>\n <TextInputField name=\"description\" label={t('descriptionLabelV2')} isRequired />\n <RadioGroupField\n name=\"recurring\"\n label={t('frequencyLabel')}\n isRequired\n options={[\n { value: true, label: t('frequencyRecurringOptionV2') },\n { value: false, label: t('frequencyOneTimeOptionV2') },\n ]}\n />\n <RadioGroupField\n name=\"deductAsPercentage\"\n label={t('deductionTypeLabelV2')}\n isRequired\n options={[\n { value: true, label: t('deductionTypePercentageOptionV2') },\n { value: false, label: t('deductionTypeFixedAmountOption') },\n ]}\n />\n <NumberInputField\n name=\"amount\"\n adornmentStart={!watchedAmountPercentage && '$'}\n adornmentEnd={watchedAmountPercentage && '%'}\n label={t('deductionAmountLabel')}\n isRequired\n min={0}\n format={watchedAmountPercentage ? 'percent' : 'currency'}\n description={\n watchedAmountPercentage\n ? t('deductionAmountDescriptionPercentage')\n : t('deductionAmountDescriptionFixed')\n }\n />\n </Flex>\n {watchedRecurring && (\n <Flex flexDirection=\"column\" gap={20}>\n <NumberInputField\n name=\"totalAmount\"\n adornmentStart=\"$\"\n format=\"currency\"\n label={t('totalAmountLabel')}\n description={t('totalAmountDescription')}\n min={0}\n />\n <NumberInputField\n name=\"annualMaximum\"\n adornmentStart=\"$\"\n format=\"currency\"\n label={t('annualMaxLabel')}\n min={0}\n description={t('annualMaxDescription')}\n />\n </Flex>\n )}\n </Flex>\n <ActionsLayout>\n <Components.Button variant=\"secondary\" onClick={handleCancel}>\n {t('cancelCta')}\n </Components.Button>\n <Components.Button type=\"submit\" isLoading={isPending}>\n {t('saveCta')}\n </Components.Button>\n </ActionsLayout>\n </>\n </Flex>\n </Form>\n </FormProvider>\n )\n}\n\nexport default CustomDeductionForm\n"],"names":["NON_NEGATIVE_ERROR","DeductionSchema","z","val","CustomDeductionForm","deduction","employeeId","onCancel","onEvent","baseSubmitHandler","useBase","t","useTranslation","Components","useComponentContext","createDeduction","isPendingCreate","useGarnishmentsCreateMutation","updateDeduction","isPendingUpdate","useGarnishmentsUpdateMutation","isPending","defaultValues","useMemo","formMethods","useForm","zodResolver","control","watchedRecurring","useWatch","watchedAmountPercentage","onSubmit","data","payload","updateDeductionResponse","componentEvents","createDeductionResponse","handleCancel","FormProvider","jsx","Form","Flex","jsxs","Fragment","TextInputField","RadioGroupField","NumberInputField","ActionsLayout"],"mappings":"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"}
@@ -17,13 +17,14 @@ import { TextInputField as z } from "../../../Common/Fields/TextInputField/TextI
17
17
  import { ActionsLayout as H } from "../../../Common/ActionsLayout/ActionsLayout.js";
18
18
  import { NumberInputField as c } from "../../../Common/Fields/NumberInputField/NumberInputField.js";
19
19
  import "react-error-boundary";
20
- import "@gusto/embedded-api/models/errors/gustoembeddederror";
21
- import "@gusto/embedded-api/models/errors/sdkvalidationerror";
22
20
  import "@tanstack/react-query";
23
21
  import { useBase as Y } from "../../../Base/useBase.js";
22
+ import "@gusto/embedded-api/models/errors/apierror";
23
+ import "@gusto/embedded-api/models/errors/gustoembeddederror";
24
+ import "@gusto/embedded-api/models/errors/sdkvalidationerror";
25
+ import "@gusto/embedded-api/models/errors/unprocessableentityerrorobject";
26
+ import "@gusto/embedded-api/models/errors/httpclienterrors";
24
27
  import "../../../../contexts/LoadingIndicatorProvider/useLoadingIndicator.js";
25
- import "dompurify";
26
- import "../../../../contexts/LocaleProvider/useLocale.js";
27
28
  const p = "Number must be greater than or equal to 0", k = r.object({
28
29
  active: r.boolean(),
29
30
  amount: r.number().min(0, { error: p }).transform(String),
@@ -36,7 +37,7 @@ const p = "Number must be greater than or equal to 0", k = r.object({
36
37
  deductAsPercentage: r.boolean(),
37
38
  garnishmentType: r.enum(w)
38
39
  });
39
- function ye({
40
+ function xe({
40
41
  deduction: e,
41
42
  employeeId: A,
42
43
  selectedGarnishmentType: D,
@@ -160,6 +161,6 @@ function ye({
160
161
  }
161
162
  export {
162
163
  k as DeductionSchema,
163
- ye as default
164
+ xe as default
164
165
  };
165
166
  //# sourceMappingURL=GarnishmentForm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GarnishmentForm.js","sources":["../../../../../src/components/Employee/Deductions/DeductionsForm/GarnishmentForm.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { FormProvider, useForm, useWatch, type SubmitHandler } from 'react-hook-form'\nimport { useMemo } from 'react'\nimport { z } from 'zod'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { type Garnishment } from '@gusto/embedded-api/models/components/garnishment'\nimport { GarnishmentType } from '@gusto/embedded-api/models/operations/postv1employeesemployeeidgarnishments'\nimport { useGarnishmentsCreateMutation } from '@gusto/embedded-api/react-query/garnishmentsCreate'\nimport { useGarnishmentsUpdateMutation } from '@gusto/embedded-api/react-query/garnishmentsUpdate'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { Form } from '@/components/Common/Form'\nimport { ActionsLayout } from '@/components/Common'\nimport { Flex } from '@/components/Common/Flex/Flex'\nimport { NumberInputField, TextInputField, RadioGroupField } from '@/components/Common'\nimport { type CommonComponentInterface, useBase } from '@/components/Base'\nimport { componentEvents } from '@/shared/constants'\n\nconst NON_NEGATIVE_ERROR = 'Number must be greater than or equal to 0'\n\nexport const DeductionSchema = z.object({\n active: z.boolean(),\n amount: z.number().min(0, { error: NON_NEGATIVE_ERROR }).transform(String),\n description: z.string().min(1),\n courtOrdered: z.boolean(),\n times: z.number().nullable(),\n recurring: z.boolean(),\n annualMaximum: z\n .number()\n .min(0, { error: NON_NEGATIVE_ERROR })\n .transform(val => (val > 0 ? val.toString() : null))\n .nullable(),\n totalAmount: z\n .number()\n .min(0, { error: NON_NEGATIVE_ERROR })\n .transform(val => (val > 0 ? val.toString() : null))\n .nullable(),\n deductAsPercentage: z.boolean(),\n garnishmentType: z.enum(GarnishmentType),\n})\n\nexport type DeductionInputs = z.input<typeof DeductionSchema>\nexport type DeductionPayload = z.output<typeof DeductionSchema>\n\ninterface GarnishmentFormProps extends CommonComponentInterface<'Employee.Deductions'> {\n employeeId: string\n deduction?: Garnishment | null\n selectedGarnishmentType: GarnishmentType\n selectedGarnishmentTitle: string\n onCancel: () => void\n}\n\nfunction GarnishmentForm({\n deduction,\n employeeId,\n selectedGarnishmentType,\n selectedGarnishmentTitle,\n onCancel,\n}: GarnishmentFormProps) {\n const { onEvent, baseSubmitHandler } = useBase()\n const { t } = useTranslation('Employee.Deductions')\n const Components = useComponentContext()\n\n const { mutateAsync: createDeduction, isPending: isPendingCreate } =\n useGarnishmentsCreateMutation()\n const { mutateAsync: updateDeduction, isPending: isPendingUpdate } =\n useGarnishmentsUpdateMutation()\n const isPending = isPendingCreate || isPendingUpdate\n\n const defaultValues: DeductionInputs = useMemo(() => {\n return {\n amount: deduction?.amount ? Number(deduction.amount) : 0,\n description: deduction?.description ?? '',\n times: deduction?.times ?? null,\n recurring: deduction?.recurring ?? true,\n annualMaximum: deduction?.annualMaximum ? Number(deduction.annualMaximum) : null,\n totalAmount: deduction?.totalAmount ? Number(deduction.totalAmount) : null,\n deductAsPercentage: deduction?.deductAsPercentage ?? true,\n active: true,\n courtOrdered: true,\n garnishmentType: deduction?.garnishmentType ?? selectedGarnishmentType,\n }\n }, [deduction])\n\n const formMethods = useForm<DeductionInputs, unknown, DeductionPayload>({\n resolver: zodResolver(DeductionSchema),\n defaultValues,\n })\n const { control } = formMethods\n const watchedRecurring = useWatch({ control, name: 'recurring' })\n const watchedAmountPercentage = useWatch({ control, name: 'deductAsPercentage' })\n\n const onSubmit: SubmitHandler<DeductionPayload> = async data => {\n await baseSubmitHandler(data, async payload => {\n if (!deduction) {\n const { garnishment: createDeductionResponse } = await createDeduction({\n request: {\n employeeId: employeeId,\n requestBody: { ...payload, times: payload.recurring ? null : 1 },\n },\n })\n\n onEvent(componentEvents.EMPLOYEE_DEDUCTION_CREATED, createDeductionResponse)\n } else {\n const { garnishment: updateDeductionResponse } = await updateDeduction({\n request: {\n garnishmentId: deduction.uuid,\n requestBody: {\n ...payload,\n version: deduction.version as string,\n times: payload.recurring ? null : 1,\n },\n },\n })\n onEvent(componentEvents.EMPLOYEE_DEDUCTION_UPDATED, updateDeductionResponse)\n }\n })\n }\n\n const handleCancel = () => {\n onCancel()\n }\n\n return (\n <FormProvider {...formMethods}>\n <Form onSubmit={formMethods.handleSubmit(onSubmit)}>\n <Flex flexDirection=\"column\" gap={32}>\n <>\n <Components.Heading as=\"h3\">{selectedGarnishmentTitle}</Components.Heading>\n <Flex flexDirection=\"column\" gap={20}>\n <Flex flexDirection=\"column\" gap={20}>\n <TextInputField name=\"description\" label={t('descriptionLabelV2')} isRequired />\n <RadioGroupField\n name=\"recurring\"\n label={t('frequencyLabel')}\n isRequired\n options={[\n { value: true, label: t('frequencyRecurringOptionV2') },\n { value: false, label: t('frequencyOneTimeOptionV2') },\n ]}\n />\n <RadioGroupField\n name=\"deductAsPercentage\"\n label={t('deductionTypeLabelV2')}\n isRequired\n options={[\n { value: true, label: t('deductionTypePercentageOptionV2') },\n { value: false, label: t('deductionTypeFixedAmountOption') },\n ]}\n />\n <NumberInputField\n name=\"amount\"\n adornmentStart={!watchedAmountPercentage && '$'}\n adornmentEnd={watchedAmountPercentage && '%'}\n label={t('deductionAmountLabel')}\n isRequired\n min={0}\n format={watchedAmountPercentage ? 'percent' : 'currency'}\n description={\n watchedAmountPercentage\n ? t('deductionAmountDescriptionPercentage')\n : t('deductionAmountDescriptionFixed')\n }\n />\n </Flex>\n {watchedRecurring && (\n <Flex flexDirection=\"column\" gap={20}>\n <NumberInputField\n name=\"totalAmount\"\n adornmentStart=\"$\"\n format=\"currency\"\n label={t('totalAmountLabel')}\n description={t('totalAmountDescription')}\n min={0}\n />\n <NumberInputField\n name=\"annualMaximum\"\n adornmentStart=\"$\"\n format=\"currency\"\n label={t('annualMaxLabel')}\n min={0}\n description={t('annualMaxDescription')}\n />\n </Flex>\n )}\n </Flex>\n <ActionsLayout>\n <Components.Button variant=\"secondary\" onClick={handleCancel}>\n {t('cancelCta')}\n </Components.Button>\n <Components.Button type=\"submit\" isLoading={isPending}>\n {t('saveCta')}\n </Components.Button>\n </ActionsLayout>\n </>\n </Flex>\n </Form>\n </FormProvider>\n )\n}\n\nexport default GarnishmentForm\n"],"names":["NON_NEGATIVE_ERROR","DeductionSchema","z","val","GarnishmentType","GarnishmentForm","deduction","employeeId","selectedGarnishmentType","selectedGarnishmentTitle","onCancel","onEvent","baseSubmitHandler","useBase","t","useTranslation","Components","useComponentContext","createDeduction","isPendingCreate","useGarnishmentsCreateMutation","updateDeduction","isPendingUpdate","useGarnishmentsUpdateMutation","isPending","defaultValues","useMemo","formMethods","useForm","zodResolver","control","watchedRecurring","useWatch","watchedAmountPercentage","onSubmit","data","payload","updateDeductionResponse","componentEvents","createDeductionResponse","handleCancel","FormProvider","jsx","Form","Flex","jsxs","Fragment","TextInputField","RadioGroupField","NumberInputField","ActionsLayout"],"mappings":"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"}
1
+ {"version":3,"file":"GarnishmentForm.js","sources":["../../../../../src/components/Employee/Deductions/DeductionsForm/GarnishmentForm.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { FormProvider, useForm, useWatch, type SubmitHandler } from 'react-hook-form'\nimport { useMemo } from 'react'\nimport { z } from 'zod'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { type Garnishment } from '@gusto/embedded-api/models/components/garnishment'\nimport { GarnishmentType } from '@gusto/embedded-api/models/operations/postv1employeesemployeeidgarnishments'\nimport { useGarnishmentsCreateMutation } from '@gusto/embedded-api/react-query/garnishmentsCreate'\nimport { useGarnishmentsUpdateMutation } from '@gusto/embedded-api/react-query/garnishmentsUpdate'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { Form } from '@/components/Common/Form'\nimport { ActionsLayout } from '@/components/Common'\nimport { Flex } from '@/components/Common/Flex/Flex'\nimport { NumberInputField, TextInputField, RadioGroupField } from '@/components/Common'\nimport { type CommonComponentInterface, useBase } from '@/components/Base'\nimport { componentEvents } from '@/shared/constants'\n\nconst NON_NEGATIVE_ERROR = 'Number must be greater than or equal to 0'\n\nexport const DeductionSchema = z.object({\n active: z.boolean(),\n amount: z.number().min(0, { error: NON_NEGATIVE_ERROR }).transform(String),\n description: z.string().min(1),\n courtOrdered: z.boolean(),\n times: z.number().nullable(),\n recurring: z.boolean(),\n annualMaximum: z\n .number()\n .min(0, { error: NON_NEGATIVE_ERROR })\n .transform(val => (val > 0 ? val.toString() : null))\n .nullable(),\n totalAmount: z\n .number()\n .min(0, { error: NON_NEGATIVE_ERROR })\n .transform(val => (val > 0 ? val.toString() : null))\n .nullable(),\n deductAsPercentage: z.boolean(),\n garnishmentType: z.enum(GarnishmentType),\n})\n\nexport type DeductionInputs = z.input<typeof DeductionSchema>\nexport type DeductionPayload = z.output<typeof DeductionSchema>\n\ninterface GarnishmentFormProps extends CommonComponentInterface<'Employee.Deductions'> {\n employeeId: string\n deduction?: Garnishment | null\n selectedGarnishmentType: GarnishmentType\n selectedGarnishmentTitle: string\n onCancel: () => void\n}\n\nfunction GarnishmentForm({\n deduction,\n employeeId,\n selectedGarnishmentType,\n selectedGarnishmentTitle,\n onCancel,\n}: GarnishmentFormProps) {\n const { onEvent, baseSubmitHandler } = useBase()\n const { t } = useTranslation('Employee.Deductions')\n const Components = useComponentContext()\n\n const { mutateAsync: createDeduction, isPending: isPendingCreate } =\n useGarnishmentsCreateMutation()\n const { mutateAsync: updateDeduction, isPending: isPendingUpdate } =\n useGarnishmentsUpdateMutation()\n const isPending = isPendingCreate || isPendingUpdate\n\n const defaultValues: DeductionInputs = useMemo(() => {\n return {\n amount: deduction?.amount ? Number(deduction.amount) : 0,\n description: deduction?.description ?? '',\n times: deduction?.times ?? null,\n recurring: deduction?.recurring ?? true,\n annualMaximum: deduction?.annualMaximum ? Number(deduction.annualMaximum) : null,\n totalAmount: deduction?.totalAmount ? Number(deduction.totalAmount) : null,\n deductAsPercentage: deduction?.deductAsPercentage ?? true,\n active: true,\n courtOrdered: true,\n garnishmentType: deduction?.garnishmentType ?? selectedGarnishmentType,\n }\n }, [deduction])\n\n const formMethods = useForm<DeductionInputs, unknown, DeductionPayload>({\n resolver: zodResolver(DeductionSchema),\n defaultValues,\n })\n const { control } = formMethods\n const watchedRecurring = useWatch({ control, name: 'recurring' })\n const watchedAmountPercentage = useWatch({ control, name: 'deductAsPercentage' })\n\n const onSubmit: SubmitHandler<DeductionPayload> = async data => {\n await baseSubmitHandler(data, async payload => {\n if (!deduction) {\n const { garnishment: createDeductionResponse } = await createDeduction({\n request: {\n employeeId: employeeId,\n requestBody: { ...payload, times: payload.recurring ? null : 1 },\n },\n })\n\n onEvent(componentEvents.EMPLOYEE_DEDUCTION_CREATED, createDeductionResponse)\n } else {\n const { garnishment: updateDeductionResponse } = await updateDeduction({\n request: {\n garnishmentId: deduction.uuid,\n requestBody: {\n ...payload,\n version: deduction.version as string,\n times: payload.recurring ? null : 1,\n },\n },\n })\n onEvent(componentEvents.EMPLOYEE_DEDUCTION_UPDATED, updateDeductionResponse)\n }\n })\n }\n\n const handleCancel = () => {\n onCancel()\n }\n\n return (\n <FormProvider {...formMethods}>\n <Form onSubmit={formMethods.handleSubmit(onSubmit)}>\n <Flex flexDirection=\"column\" gap={32}>\n <>\n <Components.Heading as=\"h3\">{selectedGarnishmentTitle}</Components.Heading>\n <Flex flexDirection=\"column\" gap={20}>\n <Flex flexDirection=\"column\" gap={20}>\n <TextInputField name=\"description\" label={t('descriptionLabelV2')} isRequired />\n <RadioGroupField\n name=\"recurring\"\n label={t('frequencyLabel')}\n isRequired\n options={[\n { value: true, label: t('frequencyRecurringOptionV2') },\n { value: false, label: t('frequencyOneTimeOptionV2') },\n ]}\n />\n <RadioGroupField\n name=\"deductAsPercentage\"\n label={t('deductionTypeLabelV2')}\n isRequired\n options={[\n { value: true, label: t('deductionTypePercentageOptionV2') },\n { value: false, label: t('deductionTypeFixedAmountOption') },\n ]}\n />\n <NumberInputField\n name=\"amount\"\n adornmentStart={!watchedAmountPercentage && '$'}\n adornmentEnd={watchedAmountPercentage && '%'}\n label={t('deductionAmountLabel')}\n isRequired\n min={0}\n format={watchedAmountPercentage ? 'percent' : 'currency'}\n description={\n watchedAmountPercentage\n ? t('deductionAmountDescriptionPercentage')\n : t('deductionAmountDescriptionFixed')\n }\n />\n </Flex>\n {watchedRecurring && (\n <Flex flexDirection=\"column\" gap={20}>\n <NumberInputField\n name=\"totalAmount\"\n adornmentStart=\"$\"\n format=\"currency\"\n label={t('totalAmountLabel')}\n description={t('totalAmountDescription')}\n min={0}\n />\n <NumberInputField\n name=\"annualMaximum\"\n adornmentStart=\"$\"\n format=\"currency\"\n label={t('annualMaxLabel')}\n min={0}\n description={t('annualMaxDescription')}\n />\n </Flex>\n )}\n </Flex>\n <ActionsLayout>\n <Components.Button variant=\"secondary\" onClick={handleCancel}>\n {t('cancelCta')}\n </Components.Button>\n <Components.Button type=\"submit\" isLoading={isPending}>\n {t('saveCta')}\n </Components.Button>\n </ActionsLayout>\n </>\n </Flex>\n </Form>\n </FormProvider>\n )\n}\n\nexport default GarnishmentForm\n"],"names":["NON_NEGATIVE_ERROR","DeductionSchema","z","val","GarnishmentType","GarnishmentForm","deduction","employeeId","selectedGarnishmentType","selectedGarnishmentTitle","onCancel","onEvent","baseSubmitHandler","useBase","t","useTranslation","Components","useComponentContext","createDeduction","isPendingCreate","useGarnishmentsCreateMutation","updateDeduction","isPendingUpdate","useGarnishmentsUpdateMutation","isPending","defaultValues","useMemo","formMethods","useForm","zodResolver","control","watchedRecurring","useWatch","watchedAmountPercentage","onSubmit","data","payload","updateDeductionResponse","componentEvents","createDeductionResponse","handleCancel","FormProvider","jsx","Form","Flex","jsxs","Fragment","TextInputField","RadioGroupField","NumberInputField","ActionsLayout"],"mappings":"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"}
@@ -2,20 +2,21 @@ 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/gustoembeddederror";
6
- import "@gusto/embedded-api/models/errors/sdkvalidationerror";
7
5
  import "@tanstack/react-query";
8
6
  import "../../../Base/useBase.js";
7
+ import "@gusto/embedded-api/models/errors/apierror";
8
+ import "@gusto/embedded-api/models/errors/gustoembeddederror";
9
+ import "@gusto/embedded-api/models/errors/sdkvalidationerror";
10
+ import "@gusto/embedded-api/models/errors/unprocessableentityerrorobject";
11
+ import "@gusto/embedded-api/models/errors/httpclienterrors";
9
12
  import "../../../../shared/constants.js";
10
13
  import "classnames";
11
14
  import "../../../../contexts/ComponentAdapter/useComponentContext.js";
12
15
  import "../../../../contexts/LoadingIndicatorProvider/useLoadingIndicator.js";
13
- import "dompurify";
14
- import "../../../../contexts/LocaleProvider/useLocale.js";
15
16
  import { createCompoundContext as t } from "../../../Base/createCompoundContext.js";
16
- const [a, f] = t("DocumentListContext");
17
+ const [f, v] = t("DocumentListContext");
17
18
  export {
18
- f as DocumentListProvider,
19
- a as useDocumentList
19
+ v as DocumentListProvider,
20
+ f as useDocumentList
20
21
  };
21
22
  //# sourceMappingURL=useDocumentList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useDocumentList.js","sources":["../../../../../src/components/Employee/DocumentSigner/DocumentList/useDocumentList.ts"],"sourcesContent":["import type { Form } from '@gusto/embedded-api/models/components/form'\nimport { createCompoundContext } from '@/components/Base'\n\ntype DocumentListContextType = {\n employeeForms: Form[]\n hasSignedAllForms: boolean\n handleContinue: () => void\n handleRequestFormToSign: (form: Form) => void\n documentListError: Error | null\n formToSign?: Form\n}\n\nconst [useDocumentList, DocumentListProvider] =\n createCompoundContext<DocumentListContextType>('DocumentListContext')\nexport { useDocumentList, DocumentListProvider }\n"],"names":["useDocumentList","DocumentListProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;AAYA,MAAM,CAACA,GAAiBC,CAAoB,IAC1CC,EAA+C,qBAAqB;"}
1
+ {"version":3,"file":"useDocumentList.js","sources":["../../../../../src/components/Employee/DocumentSigner/DocumentList/useDocumentList.ts"],"sourcesContent":["import type { Form } from '@gusto/embedded-api/models/components/form'\nimport { createCompoundContext } from '@/components/Base'\n\ntype DocumentListContextType = {\n employeeForms: Form[]\n hasSignedAllForms: boolean\n handleContinue: () => void\n handleRequestFormToSign: (form: Form) => void\n documentListError: Error | null\n formToSign?: Form\n}\n\nconst [useDocumentList, DocumentListProvider] =\n createCompoundContext<DocumentListContextType>('DocumentListContext')\nexport { useDocumentList, DocumentListProvider }\n"],"names":["useDocumentList","DocumentListProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;;AAYA,MAAM,CAACA,GAAiBC,CAAoB,IAC1CC,EAA+C,qBAAqB;"}
@@ -2,20 +2,21 @@ 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/gustoembeddederror";
6
- import "@gusto/embedded-api/models/errors/sdkvalidationerror";
7
5
  import "@tanstack/react-query";
8
6
  import "../../../Base/useBase.js";
7
+ import "@gusto/embedded-api/models/errors/apierror";
8
+ import "@gusto/embedded-api/models/errors/gustoembeddederror";
9
+ import "@gusto/embedded-api/models/errors/sdkvalidationerror";
10
+ import "@gusto/embedded-api/models/errors/unprocessableentityerrorobject";
11
+ import "@gusto/embedded-api/models/errors/httpclienterrors";
9
12
  import "../../../../shared/constants.js";
10
13
  import "classnames";
11
14
  import "../../../../contexts/ComponentAdapter/useComponentContext.js";
12
15
  import "../../../../contexts/LoadingIndicatorProvider/useLoadingIndicator.js";
13
- import "dompurify";
14
- import "../../../../contexts/LocaleProvider/useLocale.js";
15
16
  import { createCompoundContext as o } from "../../../Base/createCompoundContext.js";
16
- const [d, s] = o("SignatureFormContext");
17
+ const [s, f] = o("SignatureFormContext");
17
18
  export {
18
- s as SignatureFormProvider,
19
- d as useSignatureForm
19
+ f as SignatureFormProvider,
20
+ s as useSignatureForm
20
21
  };
21
22
  //# sourceMappingURL=useSignatureForm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useSignatureForm.js","sources":["../../../../../src/components/Employee/DocumentSigner/SignatureForm/useSignatureForm.ts"],"sourcesContent":["import type { Form } from '@gusto/embedded-api/models/components/form'\nimport { createCompoundContext } from '@/components/Base'\n\ntype SignatureFormContextType = {\n form: Form\n pdfUrl?: string | null\n handleBack: () => void\n isPending: boolean\n}\n\nconst [useSignatureForm, SignatureFormProvider] =\n createCompoundContext<SignatureFormContextType>('SignatureFormContext')\nexport { useSignatureForm, SignatureFormProvider }\n"],"names":["useSignatureForm","SignatureFormProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;AAUA,MAAM,CAACA,GAAkBC,CAAqB,IAC5CC,EAAgD,sBAAsB;"}
1
+ {"version":3,"file":"useSignatureForm.js","sources":["../../../../../src/components/Employee/DocumentSigner/SignatureForm/useSignatureForm.ts"],"sourcesContent":["import type { Form } from '@gusto/embedded-api/models/components/form'\nimport { createCompoundContext } from '@/components/Base'\n\ntype SignatureFormContextType = {\n form: Form\n pdfUrl?: string | null\n handleBack: () => void\n isPending: boolean\n}\n\nconst [useSignatureForm, SignatureFormProvider] =\n createCompoundContext<SignatureFormContextType>('SignatureFormContext')\nexport { useSignatureForm, SignatureFormProvider }\n"],"names":["useSignatureForm","SignatureFormProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;;AAUA,MAAM,CAACA,GAAkBC,CAAqB,IAC5CC,EAAgD,sBAAsB;"}
@@ -2,20 +2,21 @@ 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/gustoembeddederror";
6
- import "@gusto/embedded-api/models/errors/sdkvalidationerror";
7
5
  import "@tanstack/react-query";
8
6
  import "../../Base/useBase.js";
7
+ import "@gusto/embedded-api/models/errors/apierror";
8
+ import "@gusto/embedded-api/models/errors/gustoembeddederror";
9
+ import "@gusto/embedded-api/models/errors/sdkvalidationerror";
10
+ import "@gusto/embedded-api/models/errors/unprocessableentityerrorobject";
11
+ import "@gusto/embedded-api/models/errors/httpclienterrors";
9
12
  import "../../../shared/constants.js";
10
13
  import "classnames";
11
14
  import "../../../contexts/ComponentAdapter/useComponentContext.js";
12
15
  import "../../../contexts/LoadingIndicatorProvider/useLoadingIndicator.js";
13
- import "dompurify";
14
- import "../../../contexts/LocaleProvider/useLocale.js";
15
16
  import { createCompoundContext as o } from "../../Base/createCompoundContext.js";
16
- const [d, u] = o("EmployeeListContext");
17
+ const [u, a] = o("EmployeeListContext");
17
18
  export {
18
- u as EmployeeListProvider,
19
- d as useEmployeeList
19
+ a as EmployeeListProvider,
20
+ u as useEmployeeList
20
21
  };
21
22
  //# sourceMappingURL=useEmployeeList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useEmployeeList.js","sources":["../../../../src/components/Employee/EmployeeList/useEmployeeList.ts"],"sourcesContent":["import type { Employee } from '@gusto/embedded-api/models/components/employee'\nimport type { OnboardingStatus } from '@gusto/embedded-api/models/operations/putv1employeesemployeeidonboardingstatus'\nimport { createCompoundContext } from '@/components/Base'\nimport type { PaginationItemsPerPage } from '@/components/Common/PaginationControl/PaginationControlTypes'\n\n//Interface for context passed down to component slots\ntype EmployeeListContextType = {\n handleEdit: (uuid: string, onboardingStatus?: OnboardingStatus) => void\n handleDelete: (uuid: string) => Promise<void>\n handleCancelSelfOnboarding: (employeeId: string) => Promise<void>\n handleReview: (employeeId: string) => Promise<void>\n handleNew: () => void\n handleSkip: () => void\n handleFirstPage: () => void\n handlePreviousPage: () => void\n handleNextPage: () => void\n handleLastPage: () => void\n handleItemsPerPageChange: (newCount: PaginationItemsPerPage) => void\n currentPage: number\n totalPages: number\n totalCount: number\n employees: Employee[]\n itemsPerPage: PaginationItemsPerPage\n isFetching: boolean\n}\n\nconst [useEmployeeList, EmployeeListProvider] =\n createCompoundContext<EmployeeListContextType>('EmployeeListContext')\nexport { useEmployeeList, EmployeeListProvider }\n"],"names":["useEmployeeList","EmployeeListProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;AA0BA,MAAM,CAACA,GAAiBC,CAAoB,IAC1CC,EAA+C,qBAAqB;"}
1
+ {"version":3,"file":"useEmployeeList.js","sources":["../../../../src/components/Employee/EmployeeList/useEmployeeList.ts"],"sourcesContent":["import type { Employee } from '@gusto/embedded-api/models/components/employee'\nimport type { OnboardingStatus } from '@gusto/embedded-api/models/operations/putv1employeesemployeeidonboardingstatus'\nimport { createCompoundContext } from '@/components/Base'\nimport type { PaginationItemsPerPage } from '@/components/Common/PaginationControl/PaginationControlTypes'\n\n//Interface for context passed down to component slots\ntype EmployeeListContextType = {\n handleEdit: (uuid: string, onboardingStatus?: OnboardingStatus) => void\n handleDelete: (uuid: string) => Promise<void>\n handleCancelSelfOnboarding: (employeeId: string) => Promise<void>\n handleReview: (employeeId: string) => Promise<void>\n handleNew: () => void\n handleSkip: () => void\n handleFirstPage: () => void\n handlePreviousPage: () => void\n handleNextPage: () => void\n handleLastPage: () => void\n handleItemsPerPageChange: (newCount: PaginationItemsPerPage) => void\n currentPage: number\n totalPages: number\n totalCount: number\n employees: Employee[]\n itemsPerPage: PaginationItemsPerPage\n isFetching: boolean\n}\n\nconst [useEmployeeList, EmployeeListProvider] =\n createCompoundContext<EmployeeListContextType>('EmployeeListContext')\nexport { useEmployeeList, EmployeeListProvider }\n"],"names":["useEmployeeList","EmployeeListProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;;AA0BA,MAAM,CAACA,GAAiBC,CAAoB,IAC1CC,EAA+C,qBAAqB;"}
@@ -1,28 +1,28 @@
1
- import { jsx as o, jsxs as S, Fragment as g } from "react/jsx-runtime";
2
- import { zodResolver as v } from "@hookform/resolvers/zod";
3
- import { useForm as A, FormProvider as w } from "react-hook-form";
4
- import { useEffect as _ } from "react";
5
- import { useEmployeeTaxSetupGetFederalTaxesSuspense as N } from "@gusto/embedded-api/react-query/employeeTaxSetupGetFederalTaxes";
6
- import { useEmployeeTaxSetupUpdateFederalTaxesMutation as D } from "@gusto/embedded-api/react-query/employeeTaxSetupUpdateFederalTaxes";
7
- import { FederalFormSchema as I, FederalForm as R } from "./FederalForm.js";
8
- import { Head as P } from "./Head.js";
9
- import { Actions as W } from "./Actions.js";
10
- import { FederalTaxesProvider as J } from "./useFederalTaxes.js";
11
- import { BaseComponent as L } from "../../Base/Base.js";
12
- import { useBase as M } from "../../Base/useBase.js";
13
- import { useI18n as U, useComponentDictionary as B } from "../../../i18n/I18n.js";
14
- import { normalizeErrorKeyForForm as q } from "../../../helpers/formattedStrings.js";
15
- import { componentEvents as l } from "../../../shared/constants.js";
16
- import { Form as z } from "../../Common/Form/Form.js";
17
- function me(r) {
18
- return /* @__PURE__ */ o(L, { ...r, children: /* @__PURE__ */ o(C, { ...r }) });
1
+ import { jsx as o, jsxs as y, Fragment as v } from "react/jsx-runtime";
2
+ import { zodResolver as A } from "@hookform/resolvers/zod";
3
+ import { useForm as w, FormProvider as _ } from "react-hook-form";
4
+ import { useEffect as N } from "react";
5
+ import { useEmployeeTaxSetupGetFederalTaxesSuspense as D } from "@gusto/embedded-api/react-query/employeeTaxSetupGetFederalTaxes";
6
+ import { useEmployeeTaxSetupUpdateFederalTaxesMutation as I } from "@gusto/embedded-api/react-query/employeeTaxSetupUpdateFederalTaxes";
7
+ import { FederalFormSchema as R, FederalForm as P } from "./FederalForm.js";
8
+ import { Head as W } from "./Head.js";
9
+ import { Actions as J } from "./Actions.js";
10
+ import { FederalTaxesProvider as L } from "./useFederalTaxes.js";
11
+ import { BaseComponent as M } from "../../Base/Base.js";
12
+ import { useBase as U } from "../../Base/useBase.js";
13
+ import { useI18n as B, useComponentDictionary as O } from "../../../i18n/I18n.js";
14
+ import { normalizeErrorKeyForForm as j } from "../../../helpers/formattedStrings.js";
15
+ import { componentEvents as c } from "../../../shared/constants.js";
16
+ import { Form as q } from "../../Common/Form/Form.js";
17
+ function ie(r) {
18
+ return /* @__PURE__ */ o(M, { ...r, children: /* @__PURE__ */ o(z, { ...r }) });
19
19
  }
20
- const C = (r) => {
21
- const { employeeId: m, className: c, children: i, dictionary: p } = r, { onEvent: a, fieldErrors: n, baseSubmitHandler: f } = M();
22
- U("Employee.FederalTaxes"), B("Employee.FederalTaxes", p);
23
- const { data: h } = N({
20
+ const z = (r) => {
21
+ const { employeeId: m, className: l, children: i, dictionary: p } = r, { onEvent: a, error: f, baseSubmitHandler: h } = U();
22
+ B("Employee.FederalTaxes"), O("Employee.FederalTaxes", p);
23
+ const { data: E } = D({
24
24
  employeeUuid: m
25
- }), e = h.employeeFederalTax, { mutateAsync: E, isPending: x } = D(), F = e.w4DataType === "rev_2020_w4" ? {
25
+ }), e = E.employeeFederalTax, { mutateAsync: x, isPending: F } = I(), b = e.w4DataType === "rev_2020_w4" ? {
26
26
  filingStatus: e.filingStatus ?? "",
27
27
  twoJobs: e.twoJobs ? "true" : "false",
28
28
  deductions: e.deductions ? Number(e.deductions) : 0,
@@ -36,24 +36,24 @@ const C = (r) => {
36
36
  dependentsAmount: 0,
37
37
  otherIncome: 0,
38
38
  extraWithholding: 0
39
- }, d = A({
40
- resolver: v(I),
41
- defaultValues: F
42
- }), { handleSubmit: b, setError: u } = d;
43
- return _(() => {
39
+ }, d = w({
40
+ resolver: A(R),
41
+ defaultValues: b
42
+ }), { handleSubmit: T, setError: u } = d, n = f?.fieldErrors;
43
+ return N(() => {
44
44
  n && n.length > 0 && n.forEach((s) => {
45
- const t = q(s.errorKey);
45
+ const t = j(s.field);
46
46
  u(t, { type: "custom", message: s.message });
47
47
  });
48
- }, [n, u]), /* @__PURE__ */ o("section", { className: c, children: /* @__PURE__ */ o(
49
- J,
48
+ }, [n, u]), /* @__PURE__ */ o("section", { className: l, children: /* @__PURE__ */ o(
49
+ L,
50
50
  {
51
51
  value: {
52
- isPending: x
52
+ isPending: F
53
53
  },
54
- children: /* @__PURE__ */ o(w, { ...d, children: /* @__PURE__ */ o(z, { onSubmit: b(async (s) => {
55
- await f(s, async (t) => {
56
- const T = {
54
+ children: /* @__PURE__ */ o(_, { ...d, children: /* @__PURE__ */ o(q, { onSubmit: T(async (s) => {
55
+ await h(s, async (t) => {
56
+ const g = {
57
57
  filingStatus: t.filingStatus,
58
58
  twoJobs: t.twoJobs === "true",
59
59
  dependentsAmount: Number(t.dependentsAmount),
@@ -62,23 +62,23 @@ const C = (r) => {
62
62
  extraWithholding: Number(t.extraWithholding),
63
63
  w4DataType: "rev_2020_w4",
64
64
  version: e.version
65
- }, y = await E({
65
+ }, S = await x({
66
66
  request: {
67
67
  employeeUuid: m,
68
- requestBody: T
68
+ requestBody: g
69
69
  }
70
70
  });
71
- a(l.EMPLOYEE_FEDERAL_TAXES_UPDATED, y), a(l.EMPLOYEE_FEDERAL_TAXES_DONE);
71
+ a(c.EMPLOYEE_FEDERAL_TAXES_UPDATED, S), a(c.EMPLOYEE_FEDERAL_TAXES_DONE);
72
72
  });
73
- }), children: i || /* @__PURE__ */ S(g, { children: [
73
+ }), children: i || /* @__PURE__ */ y(v, { children: [
74
+ /* @__PURE__ */ o(W, {}),
74
75
  /* @__PURE__ */ o(P, {}),
75
- /* @__PURE__ */ o(R, {}),
76
- /* @__PURE__ */ o(W, {})
76
+ /* @__PURE__ */ o(J, {})
77
77
  ] }) }) })
78
78
  }
79
79
  ) });
80
80
  };
81
81
  export {
82
- me as FederalTaxes
82
+ ie as FederalTaxes
83
83
  };
84
84
  //# sourceMappingURL=FederalTaxes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FederalTaxes.js","sources":["../../../../src/components/Employee/FederalTaxes/FederalTaxes.tsx"],"sourcesContent":["import { zodResolver } from '@hookform/resolvers/zod'\nimport { FormProvider, useForm, type SubmitHandler } from 'react-hook-form'\nimport { useEffect } from 'react'\nimport { useEmployeeTaxSetupGetFederalTaxesSuspense } from '@gusto/embedded-api/react-query/employeeTaxSetupGetFederalTaxes'\nimport { useEmployeeTaxSetupUpdateFederalTaxesMutation } from '@gusto/embedded-api/react-query/employeeTaxSetupUpdateFederalTaxes'\nimport type { PutV1EmployeesEmployeeIdFederalTaxesRequestBody } from '@gusto/embedded-api/models/operations/putv1employeesemployeeidfederaltaxes'\nimport { FederalForm } from './FederalForm'\nimport { FederalFormSchema, type FederalFormInputs, type FederalFormPayload } from './FederalForm'\nimport { Head } from './Head'\nimport { Actions } from './Actions'\nimport { FederalTaxesProvider } from './useFederalTaxes'\nimport {\n useBase,\n BaseComponent,\n type BaseComponentInterface,\n type CommonComponentInterface,\n} from '@/components/Base'\nimport { useI18n } from '@/i18n'\nimport { normalizeErrorKeyForForm } from '@/helpers/formattedStrings'\nimport { componentEvents } from '@/shared/constants'\nimport { Form } from '@/components/Common/Form'\nimport { useComponentDictionary } from '@/i18n/I18n'\n\ninterface FederalTaxesProps extends CommonComponentInterface<'Employee.FederalTaxes'> {\n employeeId: string\n}\n\nexport function FederalTaxes(props: FederalTaxesProps & BaseComponentInterface) {\n return (\n <BaseComponent<'Employee.FederalTaxes'> {...props}>\n <Root {...props} />\n </BaseComponent>\n )\n}\n\nconst Root = (props: FederalTaxesProps) => {\n const { employeeId, className, children, dictionary } = props\n const { onEvent, fieldErrors, baseSubmitHandler } = useBase()\n useI18n('Employee.FederalTaxes')\n useComponentDictionary('Employee.FederalTaxes', dictionary)\n\n const { data: fedData } = useEmployeeTaxSetupGetFederalTaxesSuspense({\n employeeUuid: employeeId,\n })\n const employeeFederalTax = fedData.employeeFederalTax!\n\n const { mutateAsync: updateFederalTaxes, isPending } =\n useEmployeeTaxSetupUpdateFederalTaxesMutation()\n\n const isRev2020 = employeeFederalTax.w4DataType === 'rev_2020_w4'\n\n const defaultValues = isRev2020\n ? {\n filingStatus: employeeFederalTax.filingStatus ?? '',\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 }\n : {\n filingStatus: '',\n twoJobs: 'false',\n deductions: 0,\n dependentsAmount: 0,\n otherIncome: 0,\n extraWithholding: 0,\n }\n\n const formMethods = useForm<FederalFormInputs, unknown, FederalFormPayload>({\n resolver: zodResolver(FederalFormSchema),\n defaultValues,\n })\n const { handleSubmit, setError: _setError } = formMethods\n\n useEffect(() => {\n if (fieldErrors && fieldErrors.length > 0) {\n fieldErrors.forEach(msgObject => {\n const key = normalizeErrorKeyForForm(msgObject.errorKey)\n _setError(key as keyof FederalFormInputs, { type: 'custom', message: msgObject.message })\n })\n }\n }, [fieldErrors, _setError])\n\n const onSubmit: SubmitHandler<FederalFormPayload> = async data => {\n await baseSubmitHandler(data, async payload => {\n const requestBody: PutV1EmployeesEmployeeIdFederalTaxesRequestBody = {\n filingStatus:\n payload.filingStatus as PutV1EmployeesEmployeeIdFederalTaxesRequestBody['filingStatus'],\n twoJobs: payload.twoJobs === 'true',\n dependentsAmount: Number(payload.dependentsAmount),\n otherIncome: Number(payload.otherIncome),\n deductions: Number(payload.deductions),\n extraWithholding: Number(payload.extraWithholding),\n w4DataType: 'rev_2020_w4',\n version: employeeFederalTax.version,\n }\n\n const federalTaxesResponse = await updateFederalTaxes({\n request: {\n employeeUuid: employeeId,\n requestBody,\n },\n })\n onEvent(componentEvents.EMPLOYEE_FEDERAL_TAXES_UPDATED, federalTaxesResponse)\n onEvent(componentEvents.EMPLOYEE_FEDERAL_TAXES_DONE)\n })\n }\n\n return (\n <section className={className}>\n <FederalTaxesProvider\n value={{\n isPending,\n }}\n >\n <FormProvider {...formMethods}>\n <Form onSubmit={handleSubmit(onSubmit)}>\n {children ? (\n children\n ) : (\n <>\n <Head />\n <FederalForm />\n <Actions />\n </>\n )}\n </Form>\n </FormProvider>\n </FederalTaxesProvider>\n </section>\n )\n}\n"],"names":["FederalTaxes","props","jsx","BaseComponent","Root","employeeId","className","children","dictionary","onEvent","fieldErrors","baseSubmitHandler","useBase","useI18n","useComponentDictionary","fedData","useEmployeeTaxSetupGetFederalTaxesSuspense","employeeFederalTax","updateFederalTaxes","isPending","useEmployeeTaxSetupUpdateFederalTaxesMutation","defaultValues","formMethods","useForm","zodResolver","FederalFormSchema","handleSubmit","_setError","useEffect","msgObject","key","normalizeErrorKeyForForm","FederalTaxesProvider","FormProvider","Form","data","payload","requestBody","federalTaxesResponse","componentEvents","jsxs","Fragment","Head","FederalForm","Actions"],"mappings":"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"}
1
+ {"version":3,"file":"FederalTaxes.js","sources":["../../../../src/components/Employee/FederalTaxes/FederalTaxes.tsx"],"sourcesContent":["import { zodResolver } from '@hookform/resolvers/zod'\nimport { FormProvider, useForm, type SubmitHandler } from 'react-hook-form'\nimport { useEffect } from 'react'\nimport { useEmployeeTaxSetupGetFederalTaxesSuspense } from '@gusto/embedded-api/react-query/employeeTaxSetupGetFederalTaxes'\nimport { useEmployeeTaxSetupUpdateFederalTaxesMutation } from '@gusto/embedded-api/react-query/employeeTaxSetupUpdateFederalTaxes'\nimport type { PutV1EmployeesEmployeeIdFederalTaxesRequestBody } from '@gusto/embedded-api/models/operations/putv1employeesemployeeidfederaltaxes'\nimport { FederalForm } from './FederalForm'\nimport { FederalFormSchema, type FederalFormInputs, type FederalFormPayload } from './FederalForm'\nimport { Head } from './Head'\nimport { Actions } from './Actions'\nimport { FederalTaxesProvider } from './useFederalTaxes'\nimport {\n useBase,\n BaseComponent,\n type BaseComponentInterface,\n type CommonComponentInterface,\n} from '@/components/Base'\nimport { useI18n } from '@/i18n'\nimport { normalizeErrorKeyForForm } from '@/helpers/formattedStrings'\nimport { componentEvents } from '@/shared/constants'\nimport { Form } from '@/components/Common/Form'\nimport { useComponentDictionary } from '@/i18n/I18n'\n\ninterface FederalTaxesProps extends CommonComponentInterface<'Employee.FederalTaxes'> {\n employeeId: string\n}\n\nexport function FederalTaxes(props: FederalTaxesProps & BaseComponentInterface) {\n return (\n <BaseComponent<'Employee.FederalTaxes'> {...props}>\n <Root {...props} />\n </BaseComponent>\n )\n}\n\nconst Root = (props: FederalTaxesProps) => {\n const { employeeId, className, children, dictionary } = props\n const { onEvent, error, baseSubmitHandler } = useBase()\n useI18n('Employee.FederalTaxes')\n useComponentDictionary('Employee.FederalTaxes', dictionary)\n\n const { data: fedData } = useEmployeeTaxSetupGetFederalTaxesSuspense({\n employeeUuid: employeeId,\n })\n const employeeFederalTax = fedData.employeeFederalTax!\n\n const { mutateAsync: updateFederalTaxes, isPending } =\n useEmployeeTaxSetupUpdateFederalTaxesMutation()\n\n const isRev2020 = employeeFederalTax.w4DataType === 'rev_2020_w4'\n\n const defaultValues = isRev2020\n ? {\n filingStatus: employeeFederalTax.filingStatus ?? '',\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 }\n : {\n filingStatus: '',\n twoJobs: 'false',\n deductions: 0,\n dependentsAmount: 0,\n otherIncome: 0,\n extraWithholding: 0,\n }\n\n const formMethods = useForm<FederalFormInputs, unknown, FederalFormPayload>({\n resolver: zodResolver(FederalFormSchema),\n defaultValues,\n })\n const { handleSubmit, setError: _setError } = formMethods\n\n const fieldErrors = error?.fieldErrors\n useEffect(() => {\n if (fieldErrors && fieldErrors.length > 0) {\n fieldErrors.forEach(fieldError => {\n const key = normalizeErrorKeyForForm(fieldError.field)\n _setError(key as keyof FederalFormInputs, { type: 'custom', message: fieldError.message })\n })\n }\n }, [fieldErrors, _setError])\n\n const onSubmit: SubmitHandler<FederalFormPayload> = async data => {\n await baseSubmitHandler(data, async payload => {\n const requestBody: PutV1EmployeesEmployeeIdFederalTaxesRequestBody = {\n filingStatus:\n payload.filingStatus as PutV1EmployeesEmployeeIdFederalTaxesRequestBody['filingStatus'],\n twoJobs: payload.twoJobs === 'true',\n dependentsAmount: Number(payload.dependentsAmount),\n otherIncome: Number(payload.otherIncome),\n deductions: Number(payload.deductions),\n extraWithholding: Number(payload.extraWithholding),\n w4DataType: 'rev_2020_w4',\n version: employeeFederalTax.version,\n }\n\n const federalTaxesResponse = await updateFederalTaxes({\n request: {\n employeeUuid: employeeId,\n requestBody,\n },\n })\n onEvent(componentEvents.EMPLOYEE_FEDERAL_TAXES_UPDATED, federalTaxesResponse)\n onEvent(componentEvents.EMPLOYEE_FEDERAL_TAXES_DONE)\n })\n }\n\n return (\n <section className={className}>\n <FederalTaxesProvider\n value={{\n isPending,\n }}\n >\n <FormProvider {...formMethods}>\n <Form onSubmit={handleSubmit(onSubmit)}>\n {children ? (\n children\n ) : (\n <>\n <Head />\n <FederalForm />\n <Actions />\n </>\n )}\n </Form>\n </FormProvider>\n </FederalTaxesProvider>\n </section>\n )\n}\n"],"names":["FederalTaxes","props","jsx","BaseComponent","Root","employeeId","className","children","dictionary","onEvent","error","baseSubmitHandler","useBase","useI18n","useComponentDictionary","fedData","useEmployeeTaxSetupGetFederalTaxesSuspense","employeeFederalTax","updateFederalTaxes","isPending","useEmployeeTaxSetupUpdateFederalTaxesMutation","defaultValues","formMethods","useForm","zodResolver","FederalFormSchema","handleSubmit","_setError","fieldErrors","useEffect","fieldError","key","normalizeErrorKeyForForm","FederalTaxesProvider","FormProvider","Form","data","payload","requestBody","federalTaxesResponse","componentEvents","jsxs","Fragment","Head","FederalForm","Actions"],"mappings":"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"}
@@ -2,20 +2,21 @@ 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/gustoembeddederror";
6
- import "@gusto/embedded-api/models/errors/sdkvalidationerror";
7
5
  import "@tanstack/react-query";
8
6
  import "../../Base/useBase.js";
7
+ import "@gusto/embedded-api/models/errors/apierror";
8
+ import "@gusto/embedded-api/models/errors/gustoembeddederror";
9
+ import "@gusto/embedded-api/models/errors/sdkvalidationerror";
10
+ import "@gusto/embedded-api/models/errors/unprocessableentityerrorobject";
11
+ import "@gusto/embedded-api/models/errors/httpclienterrors";
9
12
  import "../../../shared/constants.js";
10
13
  import "classnames";
11
14
  import "../../../contexts/ComponentAdapter/useComponentContext.js";
12
15
  import "../../../contexts/LoadingIndicatorProvider/useLoadingIndicator.js";
13
- import "dompurify";
14
- import "../../../contexts/LocaleProvider/useLocale.js";
15
16
  import { createCompoundContext as o } from "../../Base/createCompoundContext.js";
16
- const [c, u] = o("FederalTaxesContext");
17
+ const [u, f] = o("FederalTaxesContext");
17
18
  export {
18
- u as FederalTaxesProvider,
19
- c as useFederalTaxes
19
+ f as FederalTaxesProvider,
20
+ u as useFederalTaxes
20
21
  };
21
22
  //# sourceMappingURL=useFederalTaxes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useFederalTaxes.js","sources":["../../../../src/components/Employee/FederalTaxes/useFederalTaxes.ts"],"sourcesContent":["import { createCompoundContext } from '@/components/Base'\n\ntype FederalTaxesContextType = {\n isPending: boolean\n}\n\nconst [useFederalTaxes, FederalTaxesProvider] =\n createCompoundContext<FederalTaxesContextType>('FederalTaxesContext')\nexport { useFederalTaxes, FederalTaxesProvider }\n"],"names":["useFederalTaxes","FederalTaxesProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;AAMA,MAAM,CAACA,GAAiBC,CAAoB,IAC1CC,EAA+C,qBAAqB;"}
1
+ {"version":3,"file":"useFederalTaxes.js","sources":["../../../../src/components/Employee/FederalTaxes/useFederalTaxes.ts"],"sourcesContent":["import { createCompoundContext } from '@/components/Base'\n\ntype FederalTaxesContextType = {\n isPending: boolean\n}\n\nconst [useFederalTaxes, FederalTaxesProvider] =\n createCompoundContext<FederalTaxesContextType>('FederalTaxesContext')\nexport { useFederalTaxes, FederalTaxesProvider }\n"],"names":["useFederalTaxes","FederalTaxesProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;;AAMA,MAAM,CAACA,GAAiBC,CAAoB,IAC1CC,EAA+C,qBAAqB;"}
@@ -4,18 +4,19 @@ import "react/jsx-runtime";
4
4
  import "react";
5
5
  import "react-error-boundary";
6
6
  import "react-i18next";
7
- import "@gusto/embedded-api/models/errors/gustoembeddederror";
8
- import "@gusto/embedded-api/models/errors/sdkvalidationerror";
9
7
  import "@tanstack/react-query";
10
8
  import "../../Base/useBase.js";
9
+ import "@gusto/embedded-api/models/errors/apierror";
10
+ import "@gusto/embedded-api/models/errors/gustoembeddederror";
11
+ import "@gusto/embedded-api/models/errors/sdkvalidationerror";
12
+ import "@gusto/embedded-api/models/errors/unprocessableentityerrorobject";
13
+ import "@gusto/embedded-api/models/errors/httpclienterrors";
11
14
  import "../../../shared/constants.js";
12
15
  import "classnames";
13
16
  import "../../../contexts/ComponentAdapter/useComponentContext.js";
14
17
  import "../../../contexts/LoadingIndicatorProvider/useLoadingIndicator.js";
15
- import "dompurify";
16
- import "../../../contexts/LocaleProvider/useLocale.js";
17
18
  import { createCompoundContext as n } from "../../Base/createCompoundContext.js";
18
- const S = t.union([
19
+ const k = t.union([
19
20
  a.extend({
20
21
  type: t.literal("Direct Deposit"),
21
22
  isSplit: t.literal(!1)
@@ -56,10 +57,10 @@ const S = t.union([
56
57
  remainder: t.string()
57
58
  })
58
59
  ])
59
- ]), [k, A] = n("PaymentMethodContext");
60
+ ]), [A, v] = n("PaymentMethodContext");
60
61
  export {
61
- S as CombinedSchema,
62
- A as PaymentMethodProvider,
63
- k as usePaymentMethod
62
+ k as CombinedSchema,
63
+ v as PaymentMethodProvider,
64
+ A as usePaymentMethod
64
65
  };
65
66
  //# sourceMappingURL=usePaymentMethod.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"usePaymentMethod.js","sources":["../../../../src/components/Employee/PaymentMethod/usePaymentMethod.ts"],"sourcesContent":["import type { EmployeeBankAccount } from '@gusto/embedded-api/models/components/employeebankaccount'\nimport type { EmployeePaymentMethod } from '@gusto/embedded-api/models/components/employeepaymentmethod'\nimport { z } from 'zod'\nimport { BankAccountSchema } from './BankAccount'\nimport { createCompoundContext } from '@/components/Base'\n\nexport const CombinedSchema = z.union([\n BankAccountSchema.extend({\n type: z.literal('Direct Deposit'),\n isSplit: z.literal(false),\n }),\n z.object({\n type: z.literal('Direct Deposit'),\n isSplit: z.literal(false),\n hasBankPayload: z.literal(false),\n }),\n z.object({\n type: z.literal('Check'),\n }),\n z.discriminatedUnion('splitBy', [\n z.object({\n type: z.literal('Direct Deposit'),\n isSplit: z.literal(true),\n hasBankPayload: z.literal(false),\n splitBy: z.literal('Percentage'),\n splitAmount: z.record(z.string(), z.number().max(100).min(0)).superRefine((input, ctx) => {\n const total = Object.values(input).reduce<number>((acc, curr) => acc + curr, 0)\n if (total !== 100) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: `percentage_split_total_error:${total}`,\n })\n }\n }),\n priority: z.record(z.string(), z.number()),\n }),\n z.object({\n type: z.literal('Direct Deposit'),\n isSplit: z.literal(true),\n hasBankPayload: z.literal(false),\n splitBy: z.literal('Amount'),\n priority: z.record(z.string(), z.number()).refine(input => {\n const arr = Object.values(input)\n return arr.filter((item, index) => arr.indexOf(item) !== index).length === 0\n }),\n splitAmount: z.record(z.string(), z.number().min(0).nullable()),\n remainder: z.string(),\n }),\n ]),\n])\n\nexport type CombinedSchemaInputs = z.input<typeof CombinedSchema>\nexport type CombinedSchemaOutputs = z.output<typeof CombinedSchema>\n\ntype PaymentMethodContextType = {\n bankAccounts: EmployeeBankAccount[]\n isPending: boolean\n watchedType?: string\n mode: MODE\n paymentMethod: EmployeePaymentMethod\n handleAdd: () => void\n handleSplit: () => void\n handleCancel: () => void\n handleDelete: (uuid: string) => void\n isAdmin: boolean\n}\n\nexport type MODE = 'ADD' | 'LIST' | 'SPLIT' | 'INITIAL'\n\nconst [usePaymentMethod, PaymentMethodProvider] =\n createCompoundContext<PaymentMethodContextType>('PaymentMethodContext')\nexport { usePaymentMethod, PaymentMethodProvider }\n"],"names":["CombinedSchema","z","BankAccountSchema","input","ctx","total","acc","curr","arr","item","index","usePaymentMethod","PaymentMethodProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;;;AAMO,MAAMA,IAAiBC,EAAE,MAAM;AAAA,EACpCC,EAAkB,OAAO;AAAA,IACvB,MAAMD,EAAE,QAAQ,gBAAgB;AAAA,IAChC,SAASA,EAAE,QAAQ,EAAK;AAAA,EAAA,CACzB;AAAA,EACDA,EAAE,OAAO;AAAA,IACP,MAAMA,EAAE,QAAQ,gBAAgB;AAAA,IAChC,SAASA,EAAE,QAAQ,EAAK;AAAA,IACxB,gBAAgBA,EAAE,QAAQ,EAAK;AAAA,EAAA,CAChC;AAAA,EACDA,EAAE,OAAO;AAAA,IACP,MAAMA,EAAE,QAAQ,OAAO;AAAA,EAAA,CACxB;AAAA,EACDA,EAAE,mBAAmB,WAAW;AAAA,IAC9BA,EAAE,OAAO;AAAA,MACP,MAAMA,EAAE,QAAQ,gBAAgB;AAAA,MAChC,SAASA,EAAE,QAAQ,EAAI;AAAA,MACvB,gBAAgBA,EAAE,QAAQ,EAAK;AAAA,MAC/B,SAASA,EAAE,QAAQ,YAAY;AAAA,MAC/B,aAAaA,EAAE,OAAOA,EAAE,OAAA,GAAUA,EAAE,OAAA,EAAS,IAAI,GAAG,EAAE,IAAI,CAAC,CAAC,EAAE,YAAY,CAACE,GAAOC,MAAQ;AACxF,cAAMC,IAAQ,OAAO,OAAOF,CAAK,EAAE,OAAe,CAACG,GAAKC,MAASD,IAAMC,GAAM,CAAC;AAC9E,QAAIF,MAAU,OACZD,EAAI,SAAS;AAAA,UACX,MAAMH,EAAE,aAAa;AAAA,UACrB,SAAS,gCAAgCI,CAAK;AAAA,QAAA,CAC/C;AAAA,MAEL,CAAC;AAAA,MACD,UAAUJ,EAAE,OAAOA,EAAE,UAAUA,EAAE,QAAQ;AAAA,IAAA,CAC1C;AAAA,IACDA,EAAE,OAAO;AAAA,MACP,MAAMA,EAAE,QAAQ,gBAAgB;AAAA,MAChC,SAASA,EAAE,QAAQ,EAAI;AAAA,MACvB,gBAAgBA,EAAE,QAAQ,EAAK;AAAA,MAC/B,SAASA,EAAE,QAAQ,QAAQ;AAAA,MAC3B,UAAUA,EAAE,OAAOA,EAAE,OAAA,GAAUA,EAAE,OAAA,CAAQ,EAAE,OAAO,CAAAE,MAAS;AACzD,cAAMK,IAAM,OAAO,OAAOL,CAAK;AAC/B,eAAOK,EAAI,OAAO,CAACC,GAAMC,MAAUF,EAAI,QAAQC,CAAI,MAAMC,CAAK,EAAE,WAAW;AAAA,MAC7E,CAAC;AAAA,MACD,aAAaT,EAAE,OAAOA,EAAE,OAAA,GAAUA,EAAE,OAAA,EAAS,IAAI,CAAC,EAAE,UAAU;AAAA,MAC9D,WAAWA,EAAE,OAAA;AAAA,IAAO,CACrB;AAAA,EAAA,CACF;AACH,CAAC,GAoBK,CAACU,GAAkBC,CAAqB,IAC5CC,EAAgD,sBAAsB;"}
1
+ {"version":3,"file":"usePaymentMethod.js","sources":["../../../../src/components/Employee/PaymentMethod/usePaymentMethod.ts"],"sourcesContent":["import type { EmployeeBankAccount } from '@gusto/embedded-api/models/components/employeebankaccount'\nimport type { EmployeePaymentMethod } from '@gusto/embedded-api/models/components/employeepaymentmethod'\nimport { z } from 'zod'\nimport { BankAccountSchema } from './BankAccount'\nimport { createCompoundContext } from '@/components/Base'\n\nexport const CombinedSchema = z.union([\n BankAccountSchema.extend({\n type: z.literal('Direct Deposit'),\n isSplit: z.literal(false),\n }),\n z.object({\n type: z.literal('Direct Deposit'),\n isSplit: z.literal(false),\n hasBankPayload: z.literal(false),\n }),\n z.object({\n type: z.literal('Check'),\n }),\n z.discriminatedUnion('splitBy', [\n z.object({\n type: z.literal('Direct Deposit'),\n isSplit: z.literal(true),\n hasBankPayload: z.literal(false),\n splitBy: z.literal('Percentage'),\n splitAmount: z.record(z.string(), z.number().max(100).min(0)).superRefine((input, ctx) => {\n const total = Object.values(input).reduce<number>((acc, curr) => acc + curr, 0)\n if (total !== 100) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: `percentage_split_total_error:${total}`,\n })\n }\n }),\n priority: z.record(z.string(), z.number()),\n }),\n z.object({\n type: z.literal('Direct Deposit'),\n isSplit: z.literal(true),\n hasBankPayload: z.literal(false),\n splitBy: z.literal('Amount'),\n priority: z.record(z.string(), z.number()).refine(input => {\n const arr = Object.values(input)\n return arr.filter((item, index) => arr.indexOf(item) !== index).length === 0\n }),\n splitAmount: z.record(z.string(), z.number().min(0).nullable()),\n remainder: z.string(),\n }),\n ]),\n])\n\nexport type CombinedSchemaInputs = z.input<typeof CombinedSchema>\nexport type CombinedSchemaOutputs = z.output<typeof CombinedSchema>\n\ntype PaymentMethodContextType = {\n bankAccounts: EmployeeBankAccount[]\n isPending: boolean\n watchedType?: string\n mode: MODE\n paymentMethod: EmployeePaymentMethod\n handleAdd: () => void\n handleSplit: () => void\n handleCancel: () => void\n handleDelete: (uuid: string) => void\n isAdmin: boolean\n}\n\nexport type MODE = 'ADD' | 'LIST' | 'SPLIT' | 'INITIAL'\n\nconst [usePaymentMethod, PaymentMethodProvider] =\n createCompoundContext<PaymentMethodContextType>('PaymentMethodContext')\nexport { usePaymentMethod, PaymentMethodProvider }\n"],"names":["CombinedSchema","z","BankAccountSchema","input","ctx","total","acc","curr","arr","item","index","usePaymentMethod","PaymentMethodProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;;;;AAMO,MAAMA,IAAiBC,EAAE,MAAM;AAAA,EACpCC,EAAkB,OAAO;AAAA,IACvB,MAAMD,EAAE,QAAQ,gBAAgB;AAAA,IAChC,SAASA,EAAE,QAAQ,EAAK;AAAA,EAAA,CACzB;AAAA,EACDA,EAAE,OAAO;AAAA,IACP,MAAMA,EAAE,QAAQ,gBAAgB;AAAA,IAChC,SAASA,EAAE,QAAQ,EAAK;AAAA,IACxB,gBAAgBA,EAAE,QAAQ,EAAK;AAAA,EAAA,CAChC;AAAA,EACDA,EAAE,OAAO;AAAA,IACP,MAAMA,EAAE,QAAQ,OAAO;AAAA,EAAA,CACxB;AAAA,EACDA,EAAE,mBAAmB,WAAW;AAAA,IAC9BA,EAAE,OAAO;AAAA,MACP,MAAMA,EAAE,QAAQ,gBAAgB;AAAA,MAChC,SAASA,EAAE,QAAQ,EAAI;AAAA,MACvB,gBAAgBA,EAAE,QAAQ,EAAK;AAAA,MAC/B,SAASA,EAAE,QAAQ,YAAY;AAAA,MAC/B,aAAaA,EAAE,OAAOA,EAAE,OAAA,GAAUA,EAAE,OAAA,EAAS,IAAI,GAAG,EAAE,IAAI,CAAC,CAAC,EAAE,YAAY,CAACE,GAAOC,MAAQ;AACxF,cAAMC,IAAQ,OAAO,OAAOF,CAAK,EAAE,OAAe,CAACG,GAAKC,MAASD,IAAMC,GAAM,CAAC;AAC9E,QAAIF,MAAU,OACZD,EAAI,SAAS;AAAA,UACX,MAAMH,EAAE,aAAa;AAAA,UACrB,SAAS,gCAAgCI,CAAK;AAAA,QAAA,CAC/C;AAAA,MAEL,CAAC;AAAA,MACD,UAAUJ,EAAE,OAAOA,EAAE,UAAUA,EAAE,QAAQ;AAAA,IAAA,CAC1C;AAAA,IACDA,EAAE,OAAO;AAAA,MACP,MAAMA,EAAE,QAAQ,gBAAgB;AAAA,MAChC,SAASA,EAAE,QAAQ,EAAI;AAAA,MACvB,gBAAgBA,EAAE,QAAQ,EAAK;AAAA,MAC/B,SAASA,EAAE,QAAQ,QAAQ;AAAA,MAC3B,UAAUA,EAAE,OAAOA,EAAE,OAAA,GAAUA,EAAE,OAAA,CAAQ,EAAE,OAAO,CAAAE,MAAS;AACzD,cAAMK,IAAM,OAAO,OAAOL,CAAK;AAC/B,eAAOK,EAAI,OAAO,CAACC,GAAMC,MAAUF,EAAI,QAAQC,CAAI,MAAMC,CAAK,EAAE,WAAW;AAAA,MAC7E,CAAC;AAAA,MACD,aAAaT,EAAE,OAAOA,EAAE,OAAA,GAAUA,EAAE,OAAA,EAAS,IAAI,CAAC,EAAE,UAAU;AAAA,MAC9D,WAAWA,EAAE,OAAA;AAAA,IAAO,CACrB;AAAA,EAAA,CACF;AACH,CAAC,GAoBK,CAACU,GAAkBC,CAAqB,IAC5CC,EAAgD,sBAAsB;"}
@@ -5,7 +5,7 @@ export declare const HomeAddressSchema: z.ZodUnion<readonly [z.ZodObject<{
5
5
  city: z.ZodString;
6
6
  state: z.ZodString;
7
7
  zip: z.ZodString;
8
- courtesyWithholding: z.ZodBoolean;
8
+ courtesyWithholding: z.ZodOptional<z.ZodBoolean>;
9
9
  selfOnboarding: z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodUndefined]>;
10
10
  }, z.core.$strip>, z.ZodObject<{
11
11
  selfOnboarding: z.ZodLiteral<true>;
@@ -16,7 +16,7 @@ export declare const HomeAddressSchemaWithCompletedOnboarding: z.ZodUnion<readon
16
16
  city: z.ZodString;
17
17
  state: z.ZodString;
18
18
  zip: z.ZodString;
19
- courtesyWithholding: z.ZodBoolean;
19
+ courtesyWithholding: z.ZodOptional<z.ZodBoolean>;
20
20
  selfOnboarding: z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodUndefined]>;
21
21
  }, z.core.$strip>, z.ZodObject<{
22
22
  street1: z.ZodString;
@@ -24,7 +24,7 @@ export declare const HomeAddressSchemaWithCompletedOnboarding: z.ZodUnion<readon
24
24
  city: z.ZodString;
25
25
  state: z.ZodString;
26
26
  zip: z.ZodString;
27
- courtesyWithholding: z.ZodBoolean;
27
+ courtesyWithholding: z.ZodOptional<z.ZodBoolean>;
28
28
  selfOnboarding: z.ZodLiteral<true>;
29
29
  }, z.core.$strip>]>;
30
30
  export type HomeAddressInputs = z.infer<typeof HomeAddressSchema>;