@gusto/embedded-react-sdk 0.21.0 → 0.23.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 (282) hide show
  1. package/CHANGELOG.md +62 -0
  2. package/README.md +32 -17
  3. package/dist/assets/icons/eye.svg.js +10 -0
  4. package/dist/assets/icons/eye.svg.js.map +1 -0
  5. package/dist/assets/icons/icon-file-outline.svg.js +10 -0
  6. package/dist/assets/icons/icon-file-outline.svg.js.map +1 -0
  7. package/dist/assets/icons/icon-receipt-outline.svg.js +10 -0
  8. package/dist/assets/icons/icon-receipt-outline.svg.js.map +1 -0
  9. package/dist/components/Base/Base.js.map +1 -1
  10. package/dist/components/Base/index.d.ts +1 -1
  11. package/dist/components/Common/Fields/CheckboxField/CheckboxField.js.map +1 -1
  12. package/dist/components/Common/Fields/CheckboxGroupField/CheckboxGroupField.js.map +1 -1
  13. package/dist/components/Common/Fields/ComboBoxField/ComboBoxField.js.map +1 -1
  14. package/dist/components/Common/Fields/DatePickerField/DatePickerField.js.map +1 -1
  15. package/dist/components/Common/Fields/NumberInputField/NumberInputField.js.map +1 -1
  16. package/dist/components/Common/Fields/RadioGroupField/RadioGroupField.js.map +1 -1
  17. package/dist/components/Common/Fields/SelectField/SelectField.js.map +1 -1
  18. package/dist/components/Common/Fields/SwitchField/SwitchField.js.map +1 -1
  19. package/dist/components/Common/Fields/TextAreaField/TextAreaField.js.map +1 -1
  20. package/dist/components/Common/Fields/TextInputField/TextInputField.js.map +1 -1
  21. package/dist/components/Common/Fieldset/Fieldset.js.map +1 -1
  22. package/dist/components/Common/FlowBreadcrumbs/breadcrumbTransitionHelpers.d.ts +1 -0
  23. package/dist/components/Common/FlowBreadcrumbs/breadcrumbTransitionHelpers.js +14 -0
  24. package/dist/components/Common/FlowBreadcrumbs/breadcrumbTransitionHelpers.js.map +1 -0
  25. package/dist/components/Common/FlowBreadcrumbs/index.d.ts +1 -0
  26. package/dist/components/Common/PaginationControl/PaginationControlTypes.d.ts +1 -1
  27. package/dist/components/Common/ReorderableList/ReorderableItem.d.ts +1 -1
  28. package/dist/components/Common/ReorderableList/ReorderableItem.js.map +1 -1
  29. package/dist/components/Common/ReorderableList/ReorderableList.js +7 -7
  30. package/dist/components/Common/ReorderableList/ReorderableList.js.map +1 -1
  31. package/dist/components/Common/SignatureForm/SignatureFormActions.js +1 -1
  32. package/dist/components/Common/SignatureForm/SignatureFormFields.js +1 -1
  33. package/dist/components/Common/UI/Badge/BadgeTypes.js.map +1 -1
  34. package/dist/components/Common/UI/Banner/BannerTypes.js.map +1 -1
  35. package/dist/components/Common/UI/Button/ButtonIcon.d.ts +1 -1
  36. package/dist/components/Common/UI/Button/ButtonIcon.js +10 -7
  37. package/dist/components/Common/UI/Button/ButtonIcon.js.map +1 -1
  38. package/dist/components/Common/UI/Button/ButtonTypes.js.map +1 -1
  39. package/dist/components/Common/UI/Checkbox/CheckboxTypes.js.map +1 -1
  40. package/dist/components/Common/UI/CheckboxGroup/CheckboxGroupTypes.js.map +1 -1
  41. package/dist/components/Common/UI/ComboBox/ComboBox.module.scss.js +1 -1
  42. package/dist/components/Common/UI/DatePicker/DatePicker.module.scss.js +7 -7
  43. package/dist/components/Common/UI/Input/InputTypes.js.map +1 -1
  44. package/dist/components/Common/UI/LoadingSpinner/LoadingSpinnerTypes.js.map +1 -1
  45. package/dist/components/Common/UI/Radio/RadioTypes.js.map +1 -1
  46. package/dist/components/Common/UI/RadioGroup/RadioGroupTypes.js.map +1 -1
  47. package/dist/components/Common/UI/Select/Select.module.scss.js +6 -6
  48. package/dist/components/Common/UI/Switch/SwitchTypes.js.map +1 -1
  49. package/dist/components/Common/UI/Table/Table.module.scss.js +1 -1
  50. package/dist/components/Common/UI/Table/TableTypes.js.map +1 -1
  51. package/dist/components/Common/UI/Tabs/Tabs.module.scss.js +5 -5
  52. package/dist/components/Common/UI/TextArea/TextAreaTypes.js.map +1 -1
  53. package/dist/components/Common/UI/TextInput/TextInputTypes.js.map +1 -1
  54. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js +6 -5
  55. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js.map +1 -1
  56. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +3 -4
  57. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
  58. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js +5 -4
  59. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js.map +1 -1
  60. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +3 -4
  61. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
  62. package/dist/components/Company/AssignSignatory/useAssignSignatory.js +5 -6
  63. package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
  64. package/dist/components/Company/BankAccount/BankAccountForm/context.js +3 -4
  65. package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
  66. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +3 -4
  67. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  68. package/dist/components/Company/DocumentSigner/SignatureForm/useSignatureForm.js +3 -4
  69. package/dist/components/Company/DocumentSigner/SignatureForm/useSignatureForm.js.map +1 -1
  70. package/dist/components/Company/FederalTaxes/useFederalTaxes.js +5 -6
  71. package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
  72. package/dist/components/Company/Industry/Context.js +6 -7
  73. package/dist/components/Company/Industry/Context.js.map +1 -1
  74. package/dist/components/Company/Locations/LocationForm/Form.js +5 -4
  75. package/dist/components/Company/Locations/LocationForm/Form.js.map +1 -1
  76. package/dist/components/Company/Locations/LocationForm/useLocationForm.js +3 -4
  77. package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
  78. package/dist/components/Company/Locations/LocationsList/useLocationsList.js +3 -4
  79. package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
  80. package/dist/components/Company/OnboardingOverview/context.js +3 -4
  81. package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
  82. package/dist/components/Company/PaySchedule/PaySchedule.js.map +1 -1
  83. package/dist/components/Company/PaySchedule/_parts/Edit.js +10 -9
  84. package/dist/components/Company/PaySchedule/_parts/Edit.js.map +1 -1
  85. package/dist/components/Company/PaySchedule/usePaySchedule.js +5 -6
  86. package/dist/components/Company/PaySchedule/usePaySchedule.js.map +1 -1
  87. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +3 -4
  88. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
  89. package/dist/components/Company/StateTaxes/StateTaxesList/context.js +3 -4
  90. package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
  91. package/dist/components/Company/index.d.ts +2 -0
  92. package/dist/components/Company/index.js +20 -16
  93. package/dist/components/Company/index.js.map +1 -1
  94. package/dist/components/Contractor/Address/Form.js +7 -6
  95. package/dist/components/Contractor/Address/Form.js.map +1 -1
  96. package/dist/components/Contractor/Address/useAddress.js +5 -6
  97. package/dist/components/Contractor/Address/useAddress.js.map +1 -1
  98. package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.d.ts +7 -0
  99. package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js +204 -0
  100. package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js.map +1 -0
  101. package/dist/components/Contractor/Payments/CreatePayment/CreatePaymentPresentation.d.ts +15 -9
  102. package/dist/components/Contractor/Payments/CreatePayment/CreatePaymentPresentation.js +140 -0
  103. package/dist/components/Contractor/Payments/CreatePayment/CreatePaymentPresentation.js.map +1 -0
  104. package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentPresentation.d.ts +39 -0
  105. package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentPresentation.js +132 -0
  106. package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentPresentation.js.map +1 -0
  107. package/dist/components/Contractor/Payments/CreatePayment/PreviewPresentation.d.ts +11 -0
  108. package/dist/components/Contractor/Payments/CreatePayment/PreviewPresentation.js +139 -0
  109. package/dist/components/Contractor/Payments/CreatePayment/PreviewPresentation.js.map +1 -0
  110. package/dist/components/Contractor/Payments/CreatePayment/helpers.d.ts +2 -0
  111. package/dist/components/Contractor/Payments/CreatePayment/helpers.js +6 -0
  112. package/dist/components/Contractor/Payments/CreatePayment/helpers.js.map +1 -0
  113. package/dist/components/Contractor/Payments/PaymentFlow/PaymentFlow.d.ts +2 -0
  114. package/dist/components/Contractor/Payments/PaymentFlow/PaymentFlow.js +26 -0
  115. package/dist/components/Contractor/Payments/PaymentFlow/PaymentFlow.js.map +1 -0
  116. package/dist/components/Contractor/Payments/PaymentFlow/PaymentFlowComponents.d.ts +16 -0
  117. package/dist/components/Contractor/Payments/PaymentFlow/PaymentFlowComponents.js +31 -0
  118. package/dist/components/Contractor/Payments/PaymentFlow/PaymentFlowComponents.js.map +1 -0
  119. package/dist/components/Contractor/Payments/PaymentFlow/index.d.ts +3 -0
  120. package/dist/components/Contractor/Payments/PaymentFlow/paymentStateMachine.d.ts +7 -0
  121. package/dist/components/Contractor/Payments/PaymentFlow/paymentStateMachine.js +122 -0
  122. package/dist/components/Contractor/Payments/PaymentFlow/paymentStateMachine.js.map +1 -0
  123. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistory.d.ts +8 -0
  124. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistory.js +26 -0
  125. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistory.js.map +1 -0
  126. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistoryPresentation.d.ts +17 -15
  127. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistoryPresentation.js +114 -0
  128. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistoryPresentation.js.map +1 -0
  129. package/dist/components/Contractor/Payments/PaymentsList/PaymentsList.d.ts +9 -0
  130. package/dist/components/Contractor/Payments/PaymentsList/PaymentsList.js +49 -0
  131. package/dist/components/Contractor/Payments/PaymentsList/PaymentsList.js.map +1 -0
  132. package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.d.ts +12 -0
  133. package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.js +116 -0
  134. package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.js.map +1 -0
  135. package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.module.scss.js +10 -0
  136. package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.module.scss.js.map +1 -0
  137. package/dist/components/Contractor/Payments/types.d.ts +8 -0
  138. package/dist/components/Contractor/Profile/useContractorProfile.d.ts +26 -26
  139. package/dist/components/Contractor/Submit/Submit.js.map +1 -1
  140. package/dist/components/Contractor/index.d.ts +1 -0
  141. package/dist/components/Contractor/index.js +4 -2
  142. package/dist/components/Contractor/index.js.map +1 -1
  143. package/dist/components/Employee/Deductions/DeductionsForm/ChildSupportForm.js +2 -3
  144. package/dist/components/Employee/Deductions/DeductionsForm/ChildSupportForm.js.map +1 -1
  145. package/dist/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.d.ts +0 -3
  146. package/dist/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.js +62 -77
  147. package/dist/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.js.map +1 -1
  148. package/dist/components/Employee/Deductions/DeductionsForm/DeductionsForm.js +83 -50
  149. package/dist/components/Employee/Deductions/DeductionsForm/DeductionsForm.js.map +1 -1
  150. package/dist/components/Employee/Deductions/DeductionsForm/GarnishmentForm.d.ts +56 -0
  151. package/dist/components/Employee/Deductions/DeductionsForm/GarnishmentForm.js +159 -0
  152. package/dist/components/Employee/Deductions/DeductionsForm/GarnishmentForm.js.map +1 -0
  153. package/dist/components/Employee/Deductions/IncludeDeductions/IncludeDeductions.js +3 -2
  154. package/dist/components/Employee/Deductions/IncludeDeductions/IncludeDeductions.js.map +1 -1
  155. package/dist/components/Employee/DocumentSigner/DocumentList/useDocumentList.js +3 -4
  156. package/dist/components/Employee/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  157. package/dist/components/Employee/DocumentSigner/SignatureForm/useSignatureForm.js +3 -4
  158. package/dist/components/Employee/DocumentSigner/SignatureForm/useSignatureForm.js.map +1 -1
  159. package/dist/components/Employee/EmployeeList/useEmployeeList.js +3 -4
  160. package/dist/components/Employee/EmployeeList/useEmployeeList.js.map +1 -1
  161. package/dist/components/Employee/FederalTaxes/FederalForm.d.ts +22 -7
  162. package/dist/components/Employee/FederalTaxes/FederalForm.js +86 -32
  163. package/dist/components/Employee/FederalTaxes/FederalForm.js.map +1 -1
  164. package/dist/components/Employee/FederalTaxes/FederalTaxes.js +62 -46
  165. package/dist/components/Employee/FederalTaxes/FederalTaxes.js.map +1 -1
  166. package/dist/components/Employee/FederalTaxes/useFederalTaxes.js +3 -4
  167. package/dist/components/Employee/FederalTaxes/useFederalTaxes.js.map +1 -1
  168. package/dist/components/Employee/PaymentMethod/BankAccountsList.js +25 -23
  169. package/dist/components/Employee/PaymentMethod/BankAccountsList.js.map +1 -1
  170. package/dist/components/Employee/PaymentMethod/PaymentMethod.js +116 -106
  171. package/dist/components/Employee/PaymentMethod/PaymentMethod.js.map +1 -1
  172. package/dist/components/Employee/PaymentMethod/Split.js.map +1 -1
  173. package/dist/components/Employee/PaymentMethod/usePaymentMethod.js +5 -6
  174. package/dist/components/Employee/PaymentMethod/usePaymentMethod.js.map +1 -1
  175. package/dist/components/Employee/Profile/AdminPersonalDetails.d.ts +6 -6
  176. package/dist/components/Employee/Profile/HomeAddress.js +9 -8
  177. package/dist/components/Employee/Profile/HomeAddress.js.map +1 -1
  178. package/dist/components/Employee/Profile/PersonalDetailsInputs.d.ts +2 -2
  179. package/dist/components/Employee/Profile/PersonalDetailsInputs.js +9 -8
  180. package/dist/components/Employee/Profile/PersonalDetailsInputs.js.map +1 -1
  181. package/dist/components/Employee/Profile/useProfile.js +3 -4
  182. package/dist/components/Employee/Profile/useProfile.js.map +1 -1
  183. package/dist/components/Employee/StateTaxes/useStateTaxes.js +3 -4
  184. package/dist/components/Employee/StateTaxes/useStateTaxes.js.map +1 -1
  185. package/dist/components/Employee/Taxes/FederalForm.d.ts +22 -7
  186. package/dist/components/Employee/Taxes/FederalForm.js +86 -32
  187. package/dist/components/Employee/Taxes/FederalForm.js.map +1 -1
  188. package/dist/components/Employee/Taxes/Taxes.js +97 -81
  189. package/dist/components/Employee/Taxes/Taxes.js.map +1 -1
  190. package/dist/components/Employee/Taxes/useTaxes.js +3 -4
  191. package/dist/components/Employee/Taxes/useTaxes.js.map +1 -1
  192. package/dist/components/Flow/Flow.d.ts +3 -3
  193. package/dist/components/Flow/Flow.js +35 -31
  194. package/dist/components/Flow/Flow.js.map +1 -1
  195. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.js +46 -39
  196. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.js.map +1 -1
  197. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.module.scss.js +8 -0
  198. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.module.scss.js.map +1 -0
  199. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsBanner/ConfirmWireDetailsBanner.js.map +1 -1
  200. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsComponents.js.map +1 -1
  201. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/ConfirmWireDetailsForm.js +71 -72
  202. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/ConfirmWireDetailsForm.js.map +1 -1
  203. package/dist/components/Payroll/ConfirmWireDetails/WireInstructions/WireInstructions.js +21 -22
  204. package/dist/components/Payroll/ConfirmWireDetails/WireInstructions/WireInstructions.js.map +1 -1
  205. package/dist/components/Payroll/ConfirmWireDetails/confirmWireDetailsStateMachine.d.ts +2 -2
  206. package/dist/components/Payroll/ConfirmWireDetails/confirmWireDetailsStateMachine.js +19 -19
  207. package/dist/components/Payroll/ConfirmWireDetails/confirmWireDetailsStateMachine.js.map +1 -1
  208. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js +17 -16
  209. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js.map +1 -1
  210. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js +36 -35
  211. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js.map +1 -1
  212. package/dist/components/Payroll/PayrollFlow/PayrollFlowComponents.d.ts +1 -0
  213. package/dist/components/Payroll/PayrollFlow/PayrollFlowComponents.js.map +1 -1
  214. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js +75 -68
  215. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js.map +1 -1
  216. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js +66 -65
  217. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js.map +1 -1
  218. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js +127 -103
  219. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js.map +1 -1
  220. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js +254 -185
  221. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js.map +1 -1
  222. package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/{FastAchThresholdExceeded.d.ts → FastAchSubmissionBlockerBanner.d.ts} +2 -2
  223. package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchSubmissionBlockerBanner.js +55 -0
  224. package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchSubmissionBlockerBanner.js.map +1 -0
  225. package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/index.d.ts +1 -1
  226. package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.module.scss.js +1 -1
  227. package/dist/components/Payroll/PayrollStatusBadges/payrollStatusConfig.js +1 -1
  228. package/dist/components/Payroll/PayrollStatusBadges/payrollStatusConfig.js.map +1 -1
  229. package/dist/components/Payroll/index.d.ts +1 -1
  230. package/dist/components/Payroll/index.js +8 -6
  231. package/dist/components/Payroll/index.js.map +1 -1
  232. package/dist/components/Payroll/usePreparedPayrollData.js +6 -7
  233. package/dist/components/Payroll/usePreparedPayrollData.js.map +1 -1
  234. package/dist/contexts/ComponentAdapter/componentAdapterTypes.d.ts +4 -1
  235. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js +9 -11
  236. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js.map +1 -1
  237. package/dist/contexts/LocaleProvider/useLocale.d.ts +6 -3
  238. package/dist/contexts/LocaleProvider/useLocale.js +12 -9
  239. package/dist/contexts/LocaleProvider/useLocale.js.map +1 -1
  240. package/dist/helpers/currencyHelpers.d.ts +2 -0
  241. package/dist/helpers/currencyHelpers.js +6 -0
  242. package/dist/helpers/currencyHelpers.js.map +1 -0
  243. package/dist/helpers/formattedStrings.js +11 -12
  244. package/dist/helpers/formattedStrings.js.map +1 -1
  245. package/dist/i18n/I18n.js +10 -10
  246. package/dist/i18n/I18n.js.map +1 -1
  247. package/dist/i18n/en/Contractor.Payments.CreatePayment.json.js +40 -0
  248. package/dist/i18n/en/Contractor.Payments.CreatePayment.json.js.map +1 -0
  249. package/dist/i18n/en/Contractor.Payments.PaymentHistory.json.js +24 -0
  250. package/dist/i18n/en/Contractor.Payments.PaymentHistory.json.js.map +1 -0
  251. package/dist/i18n/en/Contractor.Payments.PaymentsList.json.js +36 -0
  252. package/dist/i18n/en/Contractor.Payments.PaymentsList.json.js.map +1 -0
  253. package/dist/i18n/en/Employee.Deductions.json.js +58 -46
  254. package/dist/i18n/en/Employee.Deductions.json.js.map +1 -1
  255. package/dist/i18n/en/Employee.FederalTaxes.json.js +49 -41
  256. package/dist/i18n/en/Employee.FederalTaxes.json.js.map +1 -1
  257. package/dist/i18n/en/Employee.Taxes.json.js +53 -45
  258. package/dist/i18n/en/Employee.Taxes.json.js.map +1 -1
  259. package/dist/i18n/en/Payroll.ConfirmWireDetailsForm.json.js +5 -5
  260. package/dist/i18n/en/Payroll.PayrollConfiguration.json.js +1 -1
  261. package/dist/i18n/en/Payroll.PayrollList.json.js +5 -5
  262. package/dist/i18n/en/Payroll.PayrollOverview.json.js +35 -31
  263. package/dist/i18n/en/Payroll.PayrollOverview.json.js.map +1 -1
  264. package/dist/shared/constants.d.ts +18 -0
  265. package/dist/shared/constants.js +73 -59
  266. package/dist/shared/constants.js.map +1 -1
  267. package/dist/style.css +1 -1
  268. package/dist/types/i18next.d.ts +182 -125
  269. package/package.json +18 -18
  270. package/dist/components/Contractor/Payments/Detail/DetailPresentation.d.ts +0 -19
  271. package/dist/components/Contractor/Payments/Overview/OverviewPresentation.d.ts +0 -18
  272. package/dist/components/Contractor/Payments/PaymentEdit/PaymentEditPresentation.d.ts +0 -6
  273. package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchThresholdExceeded.js +0 -52
  274. package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchThresholdExceeded.js.map +0 -1
  275. package/dist/i18n/en/ContractorPayment.ContractorPaymentCreatePayment.json.js +0 -32
  276. package/dist/i18n/en/ContractorPayment.ContractorPaymentCreatePayment.json.js.map +0 -1
  277. package/dist/i18n/en/ContractorPayment.ContractorPaymentDetail.json.js +0 -24
  278. package/dist/i18n/en/ContractorPayment.ContractorPaymentDetail.json.js.map +0 -1
  279. package/dist/i18n/en/ContractorPayment.ContractorPaymentOverview.json.js +0 -32
  280. package/dist/i18n/en/ContractorPayment.ContractorPaymentOverview.json.js.map +0 -1
  281. package/dist/i18n/en/ContractorPayment.ContractorPaymentPaymentHistory.json.js +0 -32
  282. package/dist/i18n/en/ContractorPayment.ContractorPaymentPaymentHistory.json.js.map +0 -1
@@ -1,29 +1,44 @@
1
1
  import { z } from 'zod';
2
- export declare const FederalFormSchema: z.ZodObject<{
2
+ export declare const FederalFormSchema: z.ZodDiscriminatedUnion<"w4DataType", [z.ZodObject<{
3
+ w4DataType: z.ZodLiteral<"rev_2020_w4">;
3
4
  filingStatus: z.ZodString;
4
5
  twoJobs: z.ZodString;
5
6
  dependentsAmount: z.ZodEffects<z.ZodNumber, string, number>;
6
7
  otherIncome: z.ZodEffects<z.ZodNumber, string, number>;
7
8
  deductions: z.ZodEffects<z.ZodNumber, string, number>;
8
9
  extraWithholding: z.ZodEffects<z.ZodNumber, string, number>;
9
- w4DataType: z.ZodEnum<["pre_2020_w4", "rev_2020_w4"]>;
10
10
  }, "strip", z.ZodTypeAny, {
11
11
  deductions: string;
12
12
  extraWithholding: string;
13
- otherIncome: string;
14
13
  filingStatus: string;
14
+ otherIncome: string;
15
+ w4DataType: "rev_2020_w4";
15
16
  twoJobs: string;
16
17
  dependentsAmount: string;
17
- w4DataType: "pre_2020_w4" | "rev_2020_w4";
18
18
  }, {
19
19
  deductions: number;
20
20
  extraWithholding: number;
21
- otherIncome: number;
22
21
  filingStatus: string;
22
+ otherIncome: number;
23
+ w4DataType: "rev_2020_w4";
23
24
  twoJobs: string;
24
25
  dependentsAmount: number;
25
- w4DataType: "pre_2020_w4" | "rev_2020_w4";
26
- }>;
26
+ }>, z.ZodObject<{
27
+ w4DataType: z.ZodLiteral<"pre_2020_w4">;
28
+ filingStatus: z.ZodString;
29
+ federalWithholdingAllowance: z.ZodNumber;
30
+ additionalWithholding: z.ZodString;
31
+ }, "strip", z.ZodTypeAny, {
32
+ additionalWithholding: string;
33
+ federalWithholdingAllowance: number;
34
+ filingStatus: string;
35
+ w4DataType: "pre_2020_w4";
36
+ }, {
37
+ additionalWithholding: string;
38
+ federalWithholdingAllowance: number;
39
+ filingStatus: string;
40
+ w4DataType: "pre_2020_w4";
41
+ }>]>;
27
42
  export type FederalFormInputs = z.input<typeof FederalFormSchema>;
28
43
  export type FederalFormPayload = z.output<typeof FederalFormSchema>;
29
44
  export declare function FederalForm(): import("react/jsx-runtime").JSX.Element;
@@ -1,56 +1,67 @@
1
- import { jsxs as l, Fragment as a, jsx as r } from "react/jsx-runtime";
2
- import { useTranslation as s, Trans as m } from "react-i18next";
1
+ import { jsx as t, jsxs as n, Fragment as a } from "react/jsx-runtime";
2
+ import { useTranslation as o, Trans as u } from "react-i18next";
3
+ import { useFormContext as m } from "react-hook-form";
3
4
  import { z as i } from "zod";
4
5
  import "../../../shared/constants.js";
5
6
  import "classnames";
6
- import { RadioGroupField as u } from "../../Common/Fields/RadioGroupField/RadioGroupField.js";
7
- import { NumberInputField as t } from "../../Common/Fields/NumberInputField/NumberInputField.js";
8
- import { useComponentContext as d } from "../../../contexts/ComponentAdapter/useComponentContext.js";
7
+ import { RadioGroupField as g } from "../../Common/Fields/RadioGroupField/RadioGroupField.js";
8
+ import { TextInputField as f } from "../../Common/Fields/TextInputField/TextInputField.js";
9
+ import { NumberInputField as r } from "../../Common/Fields/NumberInputField/NumberInputField.js";
10
+ import { useComponentContext as c } from "../../../contexts/ComponentAdapter/useComponentContext.js";
9
11
  import "react";
10
- import { SelectField as f } from "../../Common/Fields/SelectField/SelectField.js";
11
- const I = i.object({
12
+ import { SelectField as s } from "../../Common/Fields/SelectField/SelectField.js";
13
+ const p = i.object({
14
+ w4DataType: i.literal("rev_2020_w4"),
12
15
  filingStatus: i.string().min(1),
13
16
  twoJobs: i.string().min(1),
14
17
  dependentsAmount: i.number().transform(String),
15
18
  otherIncome: i.number().transform(String),
16
19
  deductions: i.number().transform(String),
17
- extraWithholding: i.number().transform(String),
18
- w4DataType: i.enum(["pre_2020_w4", "rev_2020_w4"])
19
- });
20
- function v() {
21
- const { t: e } = s("Employee.FederalTaxes"), o = d(), n = [
20
+ extraWithholding: i.number().transform(String)
21
+ }), h = i.object({
22
+ w4DataType: i.literal("pre_2020_w4"),
23
+ filingStatus: i.string().min(1),
24
+ federalWithholdingAllowance: i.number().int(),
25
+ additionalWithholding: i.string()
26
+ }), H = i.discriminatedUnion("w4DataType", [p, h]);
27
+ function A() {
28
+ const { watch: e } = m();
29
+ return e("w4DataType") === "rev_2020_w4" ? /* @__PURE__ */ t(b, {}) : /* @__PURE__ */ t(S, {});
30
+ }
31
+ function b() {
32
+ const { t: e } = o("Employee.FederalTaxes"), l = c(), d = [
22
33
  { value: "Single", label: e("filingStatusSingle") },
23
34
  { value: "Married", label: e("filingStatusMarried") },
24
35
  { value: "Head of Household", label: e("filingStatusHeadOfHousehold") },
25
36
  { value: "Exempt from withholding", label: e("filingStatusExemptFromWithholding") }
26
37
  ];
27
- return /* @__PURE__ */ l(a, { children: [
28
- /* @__PURE__ */ r(
29
- f,
38
+ return /* @__PURE__ */ n(a, { children: [
39
+ /* @__PURE__ */ t(
40
+ s,
30
41
  {
31
42
  name: "filingStatus",
32
43
  label: e("federalFilingStatus1c"),
33
- placeholder: e("federalFillingStatusPlaceholder"),
44
+ placeholder: e("federalFilingStatusPlaceholder"),
34
45
  description: e("selectWithholdingDescription"),
35
- options: n,
46
+ options: d,
36
47
  isRequired: !0,
37
48
  errorMessage: e("validations.federalFilingStatus")
38
49
  }
39
50
  ),
40
- /* @__PURE__ */ r(
41
- u,
51
+ /* @__PURE__ */ t(
52
+ g,
42
53
  {
43
54
  name: "twoJobs",
44
55
  isRequired: !0,
45
56
  label: e("multipleJobs2c"),
46
57
  errorMessage: e("validations.federalTwoJobs"),
47
- description: /* @__PURE__ */ r(
48
- m,
58
+ description: /* @__PURE__ */ t(
59
+ u,
49
60
  {
50
61
  i18nKey: "includesSpouseExplanation",
51
62
  t: e,
52
63
  components: {
53
- IrsLink: /* @__PURE__ */ r(o.Link, {})
64
+ IrsLink: /* @__PURE__ */ t(l.Link, {})
54
65
  }
55
66
  }
56
67
  ),
@@ -60,8 +71,8 @@ function v() {
60
71
  ]
61
72
  }
62
73
  ),
63
- /* @__PURE__ */ r(
64
- t,
74
+ /* @__PURE__ */ t(
75
+ r,
65
76
  {
66
77
  name: "dependentsAmount",
67
78
  isRequired: !0,
@@ -69,8 +80,8 @@ function v() {
69
80
  errorMessage: e("fieldIsRequired")
70
81
  }
71
82
  ),
72
- /* @__PURE__ */ r(
73
- t,
83
+ /* @__PURE__ */ t(
84
+ r,
74
85
  {
75
86
  name: "otherIncome",
76
87
  isRequired: !0,
@@ -80,8 +91,8 @@ function v() {
80
91
  errorMessage: e("fieldIsRequired")
81
92
  }
82
93
  ),
83
- /* @__PURE__ */ r(
84
- t,
94
+ /* @__PURE__ */ t(
95
+ r,
85
96
  {
86
97
  name: "deductions",
87
98
  isRequired: !0,
@@ -91,8 +102,8 @@ function v() {
91
102
  errorMessage: e("fieldIsRequired")
92
103
  }
93
104
  ),
94
- /* @__PURE__ */ r(
95
- t,
105
+ /* @__PURE__ */ t(
106
+ r,
96
107
  {
97
108
  name: "extraWithholding",
98
109
  isRequired: !0,
@@ -104,8 +115,51 @@ function v() {
104
115
  )
105
116
  ] });
106
117
  }
118
+ function S() {
119
+ const { t: e } = o("Employee.FederalTaxes"), l = [
120
+ { value: "Single", label: e("filingStatusSingle") },
121
+ { value: "Married", label: e("filingStatusMarried") },
122
+ { value: "Head of Household", label: e("filingStatusHeadOfHousehold") },
123
+ { value: "Exempt from withholding", label: e("filingStatusExemptFromWithholding") },
124
+ { value: "Married, but withhold as Single", label: e("filingStatusMarriedWithholdAsSingle") }
125
+ ];
126
+ return /* @__PURE__ */ n(a, { children: [
127
+ /* @__PURE__ */ t(
128
+ r,
129
+ {
130
+ name: "federalWithholdingAllowance",
131
+ isRequired: !0,
132
+ label: e("federalWithholdingAllowance"),
133
+ min: 0,
134
+ maximumFractionDigits: 0,
135
+ errorMessage: e("fieldIsRequired")
136
+ }
137
+ ),
138
+ /* @__PURE__ */ t(
139
+ s,
140
+ {
141
+ name: "filingStatus",
142
+ label: e("filingStatus"),
143
+ placeholder: e("federalFilingStatusPlaceholder"),
144
+ description: e("selectWithholdingDescription"),
145
+ options: l,
146
+ isRequired: !0,
147
+ errorMessage: e("validations.federalFilingStatus")
148
+ }
149
+ ),
150
+ /* @__PURE__ */ t(
151
+ f,
152
+ {
153
+ name: "additionalWithholding",
154
+ label: e("additionalWithholding"),
155
+ type: "number",
156
+ errorMessage: e("fieldIsRequired")
157
+ }
158
+ )
159
+ ] });
160
+ }
107
161
  export {
108
- v as FederalForm,
109
- I as FederalFormSchema
162
+ A as FederalForm,
163
+ H as FederalFormSchema
110
164
  };
111
165
  //# sourceMappingURL=FederalForm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FederalForm.js","sources":["../../../../src/components/Employee/FederalTaxes/FederalForm.tsx"],"sourcesContent":["import { Trans, useTranslation } from 'react-i18next'\nimport { z } from 'zod'\nimport { SelectField, RadioGroupField, NumberInputField } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\nexport const FederalFormSchema = z.object({\n filingStatus: z.string().min(1),\n twoJobs: z.string().min(1),\n dependentsAmount: z.number().transform(String),\n otherIncome: z.number().transform(String),\n deductions: z.number().transform(String),\n extraWithholding: z.number().transform(String),\n w4DataType: z.enum(['pre_2020_w4', 'rev_2020_w4']),\n})\n\nexport type FederalFormInputs = z.input<typeof FederalFormSchema>\nexport type FederalFormPayload = z.output<typeof FederalFormSchema>\n\nexport function FederalForm() {\n const { t } = useTranslation('Employee.FederalTaxes')\n const Components = useComponentContext()\n\n const filingStatusCategories = [\n { value: 'Single', label: t('filingStatusSingle') },\n { value: 'Married', label: t('filingStatusMarried') },\n { value: 'Head of Household', label: t('filingStatusHeadOfHousehold') },\n { value: 'Exempt from withholding', label: t('filingStatusExemptFromWithholding') },\n ]\n\n return (\n <>\n <SelectField\n name=\"filingStatus\"\n label={t('federalFilingStatus1c')}\n placeholder={t('federalFillingStatusPlaceholder')}\n description={t('selectWithholdingDescription')}\n options={filingStatusCategories}\n isRequired\n errorMessage={t('validations.federalFilingStatus')}\n />\n <RadioGroupField\n name=\"twoJobs\"\n isRequired\n label={t('multipleJobs2c')}\n errorMessage={t('validations.federalTwoJobs')}\n description={\n <Trans\n i18nKey={'includesSpouseExplanation'}\n t={t}\n components={{\n IrsLink: <Components.Link />,\n }}\n />\n }\n options={[\n { value: 'true', label: t('twoJobYesLabel') },\n { value: 'false', label: t('twoJobNoLabel') },\n ]}\n />\n <NumberInputField\n name=\"dependentsAmount\"\n isRequired\n label={t('dependentsTotalIfApplicable')}\n errorMessage={t('fieldIsRequired')}\n />\n <NumberInputField\n name=\"otherIncome\"\n isRequired\n label={t('otherIncome')}\n format=\"currency\"\n min={0}\n errorMessage={t('fieldIsRequired')}\n />\n <NumberInputField\n name=\"deductions\"\n isRequired\n label={t('deductions')}\n format=\"currency\"\n min={0}\n errorMessage={t('fieldIsRequired')}\n />\n <NumberInputField\n name=\"extraWithholding\"\n isRequired\n label={t('extraWithholding')}\n format=\"currency\"\n min={0}\n errorMessage={t('fieldIsRequired')}\n />\n </>\n )\n}\n"],"names":["FederalFormSchema","z","FederalForm","t","useTranslation","Components","useComponentContext","filingStatusCategories","jsxs","Fragment","jsx","SelectField","RadioGroupField","Trans","NumberInputField"],"mappings":"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"}
1
+ {"version":3,"file":"FederalForm.js","sources":["../../../../src/components/Employee/FederalTaxes/FederalForm.tsx"],"sourcesContent":["import { Trans, useTranslation } from 'react-i18next'\nimport { useFormContext } from 'react-hook-form'\nimport { z } from 'zod'\nimport { SelectField, RadioGroupField, NumberInputField, TextInputField } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\nconst Rev2020Schema = z.object({\n w4DataType: z.literal('rev_2020_w4'),\n filingStatus: z.string().min(1),\n twoJobs: z.string().min(1),\n dependentsAmount: z.number().transform(String),\n otherIncome: z.number().transform(String),\n deductions: z.number().transform(String),\n extraWithholding: z.number().transform(String),\n})\n\nconst Pre2020Schema = z.object({\n w4DataType: z.literal('pre_2020_w4'),\n filingStatus: z.string().min(1),\n federalWithholdingAllowance: z.number().int(),\n additionalWithholding: z.string(),\n})\n\nexport const FederalFormSchema = z.discriminatedUnion('w4DataType', [Rev2020Schema, Pre2020Schema])\n\nexport type FederalFormInputs = z.input<typeof FederalFormSchema>\nexport type FederalFormPayload = z.output<typeof FederalFormSchema>\n\nexport function FederalForm() {\n const { watch } = useFormContext<FederalFormInputs>()\n const w4DataType = watch('w4DataType')\n\n if (w4DataType === 'rev_2020_w4') {\n return <Rev2020Form />\n }\n\n return <Pre2020Form />\n}\n\nfunction Rev2020Form() {\n const { t } = useTranslation('Employee.FederalTaxes')\n const Components = useComponentContext()\n\n const filingStatusOptions = [\n { value: 'Single', label: t('filingStatusSingle') },\n { value: 'Married', label: t('filingStatusMarried') },\n { value: 'Head of Household', label: t('filingStatusHeadOfHousehold') },\n { value: 'Exempt from withholding', label: t('filingStatusExemptFromWithholding') },\n ]\n\n return (\n <>\n <SelectField\n name=\"filingStatus\"\n label={t('federalFilingStatus1c')}\n placeholder={t('federalFilingStatusPlaceholder')}\n description={t('selectWithholdingDescription')}\n options={filingStatusOptions}\n isRequired\n errorMessage={t('validations.federalFilingStatus')}\n />\n <RadioGroupField\n name=\"twoJobs\"\n isRequired\n label={t('multipleJobs2c')}\n errorMessage={t('validations.federalTwoJobs')}\n description={\n <Trans\n i18nKey={'includesSpouseExplanation'}\n t={t}\n components={{\n IrsLink: <Components.Link />,\n }}\n />\n }\n options={[\n { value: 'true', label: t('twoJobYesLabel') },\n { value: 'false', label: t('twoJobNoLabel') },\n ]}\n />\n <NumberInputField\n name=\"dependentsAmount\"\n isRequired\n label={t('dependentsTotalIfApplicable')}\n errorMessage={t('fieldIsRequired')}\n />\n <NumberInputField\n name=\"otherIncome\"\n isRequired\n label={t('otherIncome')}\n format=\"currency\"\n min={0}\n errorMessage={t('fieldIsRequired')}\n />\n <NumberInputField\n name=\"deductions\"\n isRequired\n label={t('deductions')}\n format=\"currency\"\n min={0}\n errorMessage={t('fieldIsRequired')}\n />\n <NumberInputField\n name=\"extraWithholding\"\n isRequired\n label={t('extraWithholding')}\n format=\"currency\"\n min={0}\n errorMessage={t('fieldIsRequired')}\n />\n </>\n )\n}\n\nfunction Pre2020Form() {\n const { t } = useTranslation('Employee.FederalTaxes')\n\n const filingStatusOptions = [\n { value: 'Single', label: t('filingStatusSingle') },\n { value: 'Married', label: t('filingStatusMarried') },\n { value: 'Head of Household', label: t('filingStatusHeadOfHousehold') },\n { value: 'Exempt from withholding', label: t('filingStatusExemptFromWithholding') },\n { value: 'Married, but withhold as Single', label: t('filingStatusMarriedWithholdAsSingle') },\n ]\n\n return (\n <>\n <NumberInputField\n name=\"federalWithholdingAllowance\"\n isRequired\n label={t('federalWithholdingAllowance')}\n min={0}\n maximumFractionDigits={0}\n errorMessage={t('fieldIsRequired')}\n />\n <SelectField\n name=\"filingStatus\"\n label={t('filingStatus')}\n placeholder={t('federalFilingStatusPlaceholder')}\n description={t('selectWithholdingDescription')}\n options={filingStatusOptions}\n isRequired\n errorMessage={t('validations.federalFilingStatus')}\n />\n <TextInputField\n name=\"additionalWithholding\"\n label={t('additionalWithholding')}\n type=\"number\"\n errorMessage={t('fieldIsRequired')}\n />\n </>\n )\n}\n"],"names":["Rev2020Schema","z","Pre2020Schema","FederalFormSchema","FederalForm","watch","useFormContext","Rev2020Form","Pre2020Form","t","useTranslation","Components","useComponentContext","filingStatusOptions","jsxs","Fragment","jsx","SelectField","RadioGroupField","Trans","NumberInputField","TextInputField"],"mappings":"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"}
@@ -1,72 +1,88 @@
1
- import { jsx as o, jsxs as b, Fragment as S } from "react/jsx-runtime";
2
- import { zodResolver as v } from "@hookform/resolvers/zod";
3
- import { useForm as A, FormProvider as g } from "react-hook-form";
4
- import { useEffect as D } from "react";
5
- import { useEmployeeTaxSetupGetFederalTaxesSuspense as w } from "@gusto/embedded-api/react-query/employeeTaxSetupGetFederalTaxes";
6
- import { useEmployeeTaxSetupUpdateFederalTaxesMutation as _ } from "@gusto/embedded-api/react-query/employeeTaxSetupUpdateFederalTaxes";
7
- import { FederalFormSchema as N, FederalForm as P } from "./FederalForm.js";
8
- import { Head as I } from "./Head.js";
9
- import { Actions as R } from "./Actions.js";
1
+ import { jsx as o, jsxs as S, Fragment as v } from "react/jsx-runtime";
2
+ import { zodResolver as A } from "@hookform/resolvers/zod";
3
+ import { useForm as y, FormProvider as D } from "react-hook-form";
4
+ import { useEffect as _ } from "react";
5
+ import { useEmployeeTaxSetupGetFederalTaxesSuspense as b } from "@gusto/embedded-api/react-query/employeeTaxSetupGetFederalTaxes";
6
+ import { useEmployeeTaxSetupUpdateFederalTaxesMutation as W } from "@gusto/embedded-api/react-query/employeeTaxSetupUpdateFederalTaxes";
7
+ import { FederalFormSchema as I, FederalForm as R } from "./FederalForm.js";
8
+ import { Head as N } from "./Head.js";
9
+ import { Actions as P } from "./Actions.js";
10
10
  import { FederalTaxesProvider as J } from "./useFederalTaxes.js";
11
11
  import { BaseComponent as L } from "../../Base/Base.js";
12
12
  import { useBase as M } from "../../Base/useBase.js";
13
13
  import { useI18n as U, useComponentDictionary as B } from "../../../i18n/I18n.js";
14
14
  import { componentEvents as u } from "../../../shared/constants.js";
15
- import { Form as W } from "../../Common/Form/Form.js";
16
- function re(r) {
17
- return /* @__PURE__ */ o(L, { ...r, children: /* @__PURE__ */ o(q, { ...r }) });
15
+ import { Form as q } from "../../Common/Form/Form.js";
16
+ function ne(r) {
17
+ return /* @__PURE__ */ o(L, { ...r, children: /* @__PURE__ */ o(C, { ...r }) });
18
18
  }
19
- const q = (r) => {
20
- const { employeeId: m, className: c, children: a, dictionary: p } = r, { onEvent: i, fieldErrors: t, baseSubmitHandler: f } = M();
21
- U("Employee.FederalTaxes"), B("Employee.FederalTaxes", p);
22
- const { data: E } = w({
23
- employeeUuid: m
24
- }), e = E.employeeFederalTax, { mutateAsync: h, isPending: y } = _(), F = {
25
- filingStatus: e.filingStatus ?? void 0,
19
+ const C = (r) => {
20
+ const { employeeId: s, className: c, children: a, dictionary: h } = r, { onEvent: m, fieldErrors: n, baseSubmitHandler: f } = M();
21
+ U("Employee.FederalTaxes"), B("Employee.FederalTaxes", h);
22
+ const { data: p } = b({
23
+ employeeUuid: s
24
+ }), e = p.employeeFederalTax, { mutateAsync: g, isPending: E } = W(), T = e.w4DataType === "rev_2020_w4" ? {
25
+ w4DataType: "rev_2020_w4",
26
+ filingStatus: e.filingStatus ?? "",
26
27
  twoJobs: e.twoJobs ? "true" : "false",
27
28
  deductions: e.deductions ? Number(e.deductions) : 0,
28
29
  dependentsAmount: e.dependentsAmount ? Number(e.dependentsAmount) : 0,
29
30
  otherIncome: e.otherIncome ? Number(e.otherIncome) : 0,
30
- extraWithholding: e.extraWithholding ? Number(e.extraWithholding) : 0,
31
- w4DataType: e.w4DataType
32
- }, d = A({
33
- resolver: v(N),
34
- defaultValues: F
35
- }), { handleSubmit: x, setError: l } = d;
36
- return D(() => {
37
- t && t.length > 0 && t.forEach((n) => {
38
- const s = n.errorKey.replace(".value", "");
39
- l(s, { type: "custom", message: n.message });
31
+ extraWithholding: e.extraWithholding ? Number(e.extraWithholding) : 0
32
+ } : {
33
+ w4DataType: "pre_2020_w4",
34
+ filingStatus: e.filingStatus ?? "",
35
+ federalWithholdingAllowance: e.federalWithholdingAllowance ?? 0,
36
+ additionalWithholding: e.additionalWithholding
37
+ }, d = y({
38
+ resolver: A(I),
39
+ defaultValues: T
40
+ }), { handleSubmit: w, setError: l } = d;
41
+ return _(() => {
42
+ n && n.length > 0 && n.forEach((i) => {
43
+ const t = i.errorKey.replace(".value", "");
44
+ l(t, { type: "custom", message: i.message });
40
45
  });
41
- }, [t, l]), /* @__PURE__ */ o("section", { className: c, children: /* @__PURE__ */ o(
46
+ }, [n, l]), /* @__PURE__ */ o("section", { className: c, children: /* @__PURE__ */ o(
42
47
  J,
43
48
  {
44
49
  value: {
45
- isPending: y
50
+ isPending: E
46
51
  },
47
- children: /* @__PURE__ */ o(g, { ...d, children: /* @__PURE__ */ o(W, { onSubmit: x(async (n) => {
48
- await f(n, async (s) => {
49
- const T = await h({
52
+ children: /* @__PURE__ */ o(D, { ...d, children: /* @__PURE__ */ o(q, { onSubmit: w(async (i) => {
53
+ await f(i, async (t) => {
54
+ const x = t.w4DataType === "rev_2020_w4" ? {
55
+ filingStatus: t.filingStatus,
56
+ twoJobs: t.twoJobs === "true",
57
+ dependentsAmount: t.dependentsAmount,
58
+ otherIncome: t.otherIncome,
59
+ deductions: t.deductions,
60
+ extraWithholding: t.extraWithholding,
61
+ w4DataType: t.w4DataType,
62
+ version: e.version
63
+ } : {
64
+ filingStatus: t.filingStatus,
65
+ federalWithholdingAllowance: t.federalWithholdingAllowance,
66
+ additionalWithholding: t.additionalWithholding,
67
+ w4DataType: t.w4DataType,
68
+ version: e.version
69
+ }, F = await g({
50
70
  request: {
51
- employeeUuid: m,
52
- requestBody: {
53
- ...s,
54
- twoJobs: s.twoJobs === "true",
55
- version: e.version
56
- }
71
+ employeeUuid: s,
72
+ requestBody: x
57
73
  }
58
74
  });
59
- i(u.EMPLOYEE_FEDERAL_TAXES_UPDATED, T), i(u.EMPLOYEE_FEDERAL_TAXES_DONE);
75
+ m(u.EMPLOYEE_FEDERAL_TAXES_UPDATED, F), m(u.EMPLOYEE_FEDERAL_TAXES_DONE);
60
76
  });
61
- }), children: a || /* @__PURE__ */ b(S, { children: [
62
- /* @__PURE__ */ o(I, {}),
63
- /* @__PURE__ */ o(P, {}),
64
- /* @__PURE__ */ o(R, {})
77
+ }), children: a || /* @__PURE__ */ S(v, { children: [
78
+ /* @__PURE__ */ o(N, {}),
79
+ /* @__PURE__ */ o(R, {}),
80
+ /* @__PURE__ */ o(P, {})
65
81
  ] }) }) })
66
82
  }
67
83
  ) });
68
84
  };
69
85
  export {
70
- re as FederalTaxes
86
+ ne as FederalTaxes
71
87
  };
72
88
  //# 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 { 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 { 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 defaultValues = {\n filingStatus: employeeFederalTax.filingStatus ?? undefined,\n twoJobs: employeeFederalTax.twoJobs ? ('true' as const) : ('false' as const),\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 w4DataType: employeeFederalTax.w4DataType,\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 = msgObject.errorKey.replace('.value', '')\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 federalTaxesResponse = await updateFederalTaxes({\n request: {\n employeeUuid: employeeId,\n requestBody: {\n ...payload,\n twoJobs: payload.twoJobs === 'true',\n version: employeeFederalTax.version,\n },\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","FederalTaxesProvider","FormProvider","Form","data","payload","federalTaxesResponse","componentEvents","jsxs","Fragment","Head","FederalForm","Actions"],"mappings":";;;;;;;;;;;;;;;AAyBO,SAASA,GAAaC,GAAmD;AAC9E,SACE,gBAAAC,EAACC,KAAwC,GAAGF,GAC1C,4BAACG,GAAA,EAAM,GAAGH,GAAO,EAAA,CACnB;AAEJ;AAEA,MAAMG,IAAO,CAACH,MAA6B;AACzC,QAAM,EAAE,YAAAI,GAAY,WAAAC,GAAW,UAAAC,GAAU,YAAAC,MAAeP,GAClD,EAAE,SAAAQ,GAAS,aAAAC,GAAa,mBAAAC,EAAA,IAAsBC,EAAA;AACpD,EAAAC,EAAQ,uBAAuB,GAC/BC,EAAuB,yBAAyBN,CAAU;AAE1D,QAAM,EAAE,MAAMO,EAAA,IAAYC,EAA2C;AAAA,IACnE,cAAcX;AAAA,EAAA,CACf,GACKY,IAAqBF,EAAQ,oBAE7B,EAAE,aAAaG,GAAoB,WAAAC,EAAA,IACvCC,EAAA,GAEIC,IAAgB;AAAA,IACpB,cAAcJ,EAAmB,gBAAgB;AAAA,IACjD,SAASA,EAAmB,UAAW,SAAoB;AAAA,IAC3D,YAAYA,EAAmB,aAAa,OAAOA,EAAmB,UAAU,IAAI;AAAA,IACpF,kBAAkBA,EAAmB,mBACjC,OAAOA,EAAmB,gBAAgB,IAC1C;AAAA,IACJ,aAAaA,EAAmB,cAAc,OAAOA,EAAmB,WAAW,IAAI;AAAA,IACvF,kBAAkBA,EAAmB,mBACjC,OAAOA,EAAmB,gBAAgB,IAC1C;AAAA,IACJ,YAAYA,EAAmB;AAAA,EAAA,GAG3BK,IAAcC,EAAwD;AAAA,IAC1E,UAAUC,EAAYC,CAAiB;AAAA,IACvC,eAAAJ;AAAA,EAAA,CACD,GACK,EAAE,cAAAK,GAAc,UAAUC,EAAA,IAAcL;AAE9C,SAAAM,EAAU,MAAM;AACd,IAAIlB,KAAeA,EAAY,SAAS,KACtCA,EAAY,QAAQ,CAAAmB,MAAa;AAC/B,YAAMC,IAAMD,EAAU,SAAS,QAAQ,UAAU,EAAE;AACnD,MAAAF,EAAUG,GAAgC,EAAE,MAAM,UAAU,SAASD,EAAU,SAAS;AAAA,IAC1F,CAAC;AAAA,EAEL,GAAG,CAACnB,GAAaiB,CAAS,CAAC,GAoBzB,gBAAAzB,EAAC,aAAQ,WAAAI,GACP,UAAA,gBAAAJ;AAAA,IAAC6B;AAAA,IAAA;AAAA,MACC,OAAO;AAAA,QACL,WAAAZ;AAAA,MAAA;AAAA,MAGF,UAAA,gBAAAjB,EAAC8B,GAAA,EAAc,GAAGV,GAChB,UAAA,gBAAApB,EAAC+B,GAAA,EAAK,UAAUP,EAzB4B,OAAMQ,MAAQ;AAChE,cAAMvB,EAAkBuB,GAAM,OAAMC,MAAW;AAC7C,gBAAMC,IAAuB,MAAMlB,EAAmB;AAAA,YACpD,SAAS;AAAA,cACP,cAAcb;AAAA,cACd,aAAa;AAAA,gBACX,GAAG8B;AAAA,gBACH,SAASA,EAAQ,YAAY;AAAA,gBAC7B,SAASlB,EAAmB;AAAA,cAAA;AAAA,YAC9B;AAAA,UACF,CACD;AACD,UAAAR,EAAQ4B,EAAgB,gCAAgCD,CAAoB,GAC5E3B,EAAQ4B,EAAgB,2BAA2B;AAAA,QACrD,CAAC;AAAA,MACH,CAU6C,GAClC,UAAA9B,KAGC,gBAAA+B,EAAAC,GAAA,EACE,UAAA;AAAA,QAAA,gBAAArC,EAACsC,GAAA,EAAK;AAAA,0BACLC,GAAA,EAAY;AAAA,0BACZC,GAAA,CAAA,CAAQ;AAAA,MAAA,EAAA,CACX,GAEJ,EAAA,CACF;AAAA,IAAA;AAAA,EAAA,GAEJ;AAEJ;"}
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 { 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 { 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: FederalFormInputs = isRev2020\n ? {\n w4DataType: 'rev_2020_w4',\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 w4DataType: 'pre_2020_w4',\n filingStatus: employeeFederalTax.filingStatus ?? '',\n federalWithholdingAllowance: employeeFederalTax.federalWithholdingAllowance ?? 0,\n additionalWithholding: employeeFederalTax.additionalWithholding,\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 = msgObject.errorKey.replace('.value', '')\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 =\n payload.w4DataType === 'rev_2020_w4'\n ? {\n filingStatus: payload.filingStatus,\n twoJobs: payload.twoJobs === 'true',\n dependentsAmount: payload.dependentsAmount,\n otherIncome: payload.otherIncome,\n deductions: payload.deductions,\n extraWithholding: payload.extraWithholding,\n w4DataType: payload.w4DataType,\n version: employeeFederalTax.version,\n }\n : {\n filingStatus: payload.filingStatus,\n federalWithholdingAllowance: payload.federalWithholdingAllowance,\n additionalWithholding: payload.additionalWithholding,\n w4DataType: payload.w4DataType,\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","FederalTaxesProvider","FormProvider","Form","data","payload","requestBody","federalTaxesResponse","componentEvents","jsxs","Fragment","Head","FederalForm","Actions"],"mappings":"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"}
@@ -11,11 +11,10 @@ import "classnames";
11
11
  import "../../../contexts/ComponentAdapter/useComponentContext.js";
12
12
  import "../../../contexts/LoadingIndicatorProvider/useLoadingIndicator.js";
13
13
  import "dompurify";
14
- import "../../../contexts/LocaleProvider/useLocale.js";
15
14
  import { createCompoundContext as o } from "../../Base/createCompoundContext.js";
16
- const [c, u] = o("FederalTaxesContext");
15
+ const [T, c] = o("FederalTaxesContext");
17
16
  export {
18
- u as FederalTaxesProvider,
19
- c as useFederalTaxes
17
+ c as FederalTaxesProvider,
18
+ T as useFederalTaxes
20
19
  };
21
20
  //# 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;"}
@@ -1,16 +1,17 @@
1
- import { jsx as o } from "react/jsx-runtime";
2
- import { useTranslation as s } from "react-i18next";
3
- import { usePaymentMethod as p } from "./usePaymentMethod.js";
4
- import d from "../../../assets/icons/trashcan.svg.js";
5
- import "../../../shared/constants.js";
1
+ import { jsx as n } from "react/jsx-runtime";
2
+ import { useTranslation as d } from "react-i18next";
3
+ import { usePaymentMethod as f } from "./usePaymentMethod.js";
4
+ import y from "../../../assets/icons/trashcan.svg.js";
5
+ import { SPLIT_BY as b } from "../../../shared/constants.js";
6
6
  import "classnames";
7
- import { HamburgerMenu as f } from "../../Common/HamburgerMenu/HamburgerMenu.js";
8
- import y from "../../../hooks/useNumberFormatter.js";
9
- import { useDataView as b } from "../../Common/DataView/useDataView.js";
10
- import { DataView as k } from "../../Common/DataView/DataView.js";
11
- function D() {
12
- const { bankAccounts: r, paymentMethod: n, mode: i, handleDelete: m, isPending: u } = p(), { t } = s("Employee.PaymentMethod"), a = y(n.splitBy === "Amount" ? "currency" : "percent"), { ...l } = b({
13
- data: r,
7
+ import { HamburgerMenu as k } from "../../Common/HamburgerMenu/HamburgerMenu.js";
8
+ import g from "../../../hooks/useNumberFormatter.js";
9
+ import { centsToDollars as A } from "../../../helpers/currencyHelpers.js";
10
+ import { useDataView as T } from "../../Common/DataView/useDataView.js";
11
+ import { DataView as h } from "../../Common/DataView/DataView.js";
12
+ function I() {
13
+ const { bankAccounts: i, paymentMethod: e, mode: m, handleDelete: u, isPending: a } = f(), { t } = d("Employee.PaymentMethod"), l = g(e.splitBy === "Amount" ? "currency" : "percent"), { ...s } = T({
14
+ data: i,
14
15
  columns: [
15
16
  { key: "name", title: t("nicknameColumn") },
16
17
  { key: "routingNumber", title: t("routingNumberColumn") },
@@ -18,32 +19,33 @@ function D() {
18
19
  {
19
20
  key: "splitAmount",
20
21
  title: t("allocationColumn"),
21
- render: (e) => a(
22
- n.splits?.find((c) => c.uuid === e.uuid)?.splitAmount ?? 0
23
- )
22
+ render: (o) => {
23
+ const r = e.splits?.find((p) => p.uuid === o.uuid)?.splitAmount ?? 0, c = e.splitBy === b.amount ? A(r) ?? 0 : r;
24
+ return l(c);
25
+ }
24
26
  }
25
27
  ],
26
- itemMenu: (e) => /* @__PURE__ */ o(
27
- f,
28
+ itemMenu: (o) => /* @__PURE__ */ n(
29
+ k,
28
30
  {
29
31
  items: [
30
32
  {
31
33
  label: t("deleteBankAccountCta"),
32
34
  onClick: () => {
33
- m(e.uuid);
35
+ u(o.uuid);
34
36
  },
35
- icon: /* @__PURE__ */ o(d, { "aria-hidden": !0 })
37
+ icon: /* @__PURE__ */ n(y, { "aria-hidden": !0 })
36
38
  }
37
39
  ],
38
40
  triggerLabel: t("hamburgerTitle"),
39
- isLoading: u
41
+ isLoading: a
40
42
  }
41
43
  )
42
44
  });
43
- if (i === "LIST")
44
- return /* @__PURE__ */ o(k, { label: t("bankAccountsListLabel"), ...l });
45
+ if (m === "LIST")
46
+ return /* @__PURE__ */ n(h, { label: t("bankAccountsListLabel"), ...s });
45
47
  }
46
48
  export {
47
- D as BankAccountsList
49
+ I as BankAccountsList
48
50
  };
49
51
  //# sourceMappingURL=BankAccountsList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BankAccountsList.js","sources":["../../../../src/components/Employee/PaymentMethod/BankAccountsList.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { usePaymentMethod } from './usePaymentMethod'\nimport TrashCanSvg from '@/assets/icons/trashcan.svg?react'\nimport { DataView, useDataView } from '@/components/Common'\nimport useNumberFormatter from '@/hooks/useNumberFormatter'\nimport { HamburgerMenu } from '@/components/Common/HamburgerMenu'\n\nexport function BankAccountsList() {\n const { bankAccounts, paymentMethod, mode, handleDelete, isPending } = usePaymentMethod()\n const { t } = useTranslation('Employee.PaymentMethod')\n const format = useNumberFormatter(paymentMethod.splitBy === 'Amount' ? 'currency' : 'percent')\n\n const { ...dataViewProps } = useDataView({\n data: bankAccounts,\n columns: [\n { key: 'name', title: t('nicknameColumn') },\n { key: 'routingNumber', title: t('routingNumberColumn') },\n { key: 'accountType', title: t('accountTypeColumn') },\n {\n key: 'splitAmount',\n title: t('allocationColumn'),\n render: bankAccount => {\n return format(\n paymentMethod.splits?.find(split => split.uuid === bankAccount.uuid)?.splitAmount ?? 0,\n )\n },\n },\n ],\n itemMenu: bankAccount => {\n return (\n <HamburgerMenu\n items={[\n {\n label: t('deleteBankAccountCta'),\n onClick: () => {\n handleDelete(bankAccount.uuid)\n },\n icon: <TrashCanSvg aria-hidden />,\n },\n ]}\n triggerLabel={t('hamburgerTitle')}\n isLoading={isPending}\n />\n )\n },\n })\n\n if (mode !== 'LIST') return\n\n return <DataView label={t('bankAccountsListLabel')} {...dataViewProps} />\n}\n"],"names":["BankAccountsList","bankAccounts","paymentMethod","mode","handleDelete","isPending","usePaymentMethod","useTranslation","format","useNumberFormatter","dataViewProps","useDataView","bankAccount","split","jsx","HamburgerMenu","TrashCanSvg","DataView"],"mappings":";;;;;;;;;;AAOO,SAASA,IAAmB;AACjC,QAAM,EAAE,cAAAC,GAAc,eAAAC,GAAe,MAAAC,GAAM,cAAAC,GAAc,WAAAC,EAAA,IAAcC,EAAA,GACjE,EAAE,EAAA,IAAMC,EAAe,wBAAwB,GAC/CC,IAASC,EAAmBP,EAAc,YAAY,WAAW,aAAa,SAAS,GAEvF,EAAE,GAAGQ,EAAA,IAAkBC,EAAY;AAAA,IACvC,MAAMV;AAAA,IACN,SAAS;AAAA,MACP,EAAE,KAAK,QAAQ,OAAO,EAAE,gBAAgB,EAAA;AAAA,MACxC,EAAE,KAAK,iBAAiB,OAAO,EAAE,qBAAqB,EAAA;AAAA,MACtD,EAAE,KAAK,eAAe,OAAO,EAAE,mBAAmB,EAAA;AAAA,MAClD;AAAA,QACE,KAAK;AAAA,QACL,OAAO,EAAE,kBAAkB;AAAA,QAC3B,QAAQ,CAAAW,MACCJ;AAAA,UACLN,EAAc,QAAQ,KAAK,CAAAW,MAASA,EAAM,SAASD,EAAY,IAAI,GAAG,eAAe;AAAA,QAAA;AAAA,MAEzF;AAAA,IACF;AAAA,IAEF,UAAU,CAAAA,MAEN,gBAAAE;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,OAAO;AAAA,UACL;AAAA,YACE,OAAO,EAAE,sBAAsB;AAAA,YAC/B,SAAS,MAAM;AACb,cAAAX,EAAaQ,EAAY,IAAI;AAAA,YAC/B;AAAA,YACA,MAAM,gBAAAE,EAACE,GAAA,EAAY,eAAW,GAAA,CAAC;AAAA,UAAA;AAAA,QACjC;AAAA,QAEF,cAAc,EAAE,gBAAgB;AAAA,QAChC,WAAWX;AAAA,MAAA;AAAA,IAAA;AAAA,EAGjB,CACD;AAED,MAAIF,MAAS;AAEb,6BAAQc,GAAA,EAAS,OAAO,EAAE,uBAAuB,GAAI,GAAGP,GAAe;AACzE;"}
1
+ {"version":3,"file":"BankAccountsList.js","sources":["../../../../src/components/Employee/PaymentMethod/BankAccountsList.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { usePaymentMethod } from './usePaymentMethod'\nimport TrashCanSvg from '@/assets/icons/trashcan.svg?react'\nimport { DataView, useDataView } from '@/components/Common'\nimport useNumberFormatter from '@/hooks/useNumberFormatter'\nimport { HamburgerMenu } from '@/components/Common/HamburgerMenu'\nimport { SPLIT_BY } from '@/shared/constants'\nimport { centsToDollars } from '@/helpers/currencyHelpers'\n\nexport function BankAccountsList() {\n const { bankAccounts, paymentMethod, mode, handleDelete, isPending } = usePaymentMethod()\n const { t } = useTranslation('Employee.PaymentMethod')\n const format = useNumberFormatter(paymentMethod.splitBy === 'Amount' ? 'currency' : 'percent')\n\n const { ...dataViewProps } = useDataView({\n data: bankAccounts,\n columns: [\n { key: 'name', title: t('nicknameColumn') },\n { key: 'routingNumber', title: t('routingNumberColumn') },\n { key: 'accountType', title: t('accountTypeColumn') },\n {\n key: 'splitAmount',\n title: t('allocationColumn'),\n render: bankAccount => {\n const splitAmount =\n paymentMethod.splits?.find(split => split.uuid === bankAccount.uuid)?.splitAmount ?? 0\n const displayValue =\n paymentMethod.splitBy === SPLIT_BY.amount\n ? (centsToDollars(splitAmount) ?? 0)\n : splitAmount\n return format(displayValue)\n },\n },\n ],\n itemMenu: bankAccount => {\n return (\n <HamburgerMenu\n items={[\n {\n label: t('deleteBankAccountCta'),\n onClick: () => {\n handleDelete(bankAccount.uuid)\n },\n icon: <TrashCanSvg aria-hidden />,\n },\n ]}\n triggerLabel={t('hamburgerTitle')}\n isLoading={isPending}\n />\n )\n },\n })\n\n if (mode !== 'LIST') return\n\n return <DataView label={t('bankAccountsListLabel')} {...dataViewProps} />\n}\n"],"names":["BankAccountsList","bankAccounts","paymentMethod","mode","handleDelete","isPending","usePaymentMethod","useTranslation","format","useNumberFormatter","dataViewProps","useDataView","bankAccount","splitAmount","split","displayValue","SPLIT_BY","centsToDollars","jsx","HamburgerMenu","TrashCanSvg","DataView"],"mappings":";;;;;;;;;;;AASO,SAASA,IAAmB;AACjC,QAAM,EAAE,cAAAC,GAAc,eAAAC,GAAe,MAAAC,GAAM,cAAAC,GAAc,WAAAC,EAAA,IAAcC,EAAA,GACjE,EAAE,EAAA,IAAMC,EAAe,wBAAwB,GAC/CC,IAASC,EAAmBP,EAAc,YAAY,WAAW,aAAa,SAAS,GAEvF,EAAE,GAAGQ,EAAA,IAAkBC,EAAY;AAAA,IACvC,MAAMV;AAAA,IACN,SAAS;AAAA,MACP,EAAE,KAAK,QAAQ,OAAO,EAAE,gBAAgB,EAAA;AAAA,MACxC,EAAE,KAAK,iBAAiB,OAAO,EAAE,qBAAqB,EAAA;AAAA,MACtD,EAAE,KAAK,eAAe,OAAO,EAAE,mBAAmB,EAAA;AAAA,MAClD;AAAA,QACE,KAAK;AAAA,QACL,OAAO,EAAE,kBAAkB;AAAA,QAC3B,QAAQ,CAAAW,MAAe;AACrB,gBAAMC,IACJX,EAAc,QAAQ,KAAK,CAAAY,MAASA,EAAM,SAASF,EAAY,IAAI,GAAG,eAAe,GACjFG,IACJb,EAAc,YAAYc,EAAS,SAC9BC,EAAeJ,CAAW,KAAK,IAChCA;AACN,iBAAOL,EAAOO,CAAY;AAAA,QAC5B;AAAA,MAAA;AAAA,IACF;AAAA,IAEF,UAAU,CAAAH,MAEN,gBAAAM;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,OAAO;AAAA,UACL;AAAA,YACE,OAAO,EAAE,sBAAsB;AAAA,YAC/B,SAAS,MAAM;AACb,cAAAf,EAAaQ,EAAY,IAAI;AAAA,YAC/B;AAAA,YACA,MAAM,gBAAAM,EAACE,GAAA,EAAY,eAAW,GAAA,CAAC;AAAA,UAAA;AAAA,QACjC;AAAA,QAEF,cAAc,EAAE,gBAAgB;AAAA,QAChC,WAAWf;AAAA,MAAA;AAAA,IAAA;AAAA,EAGjB,CACD;AAED,MAAIF,MAAS;AAEb,6BAAQkB,GAAA,EAAS,OAAO,EAAE,uBAAuB,GAAI,GAAGX,GAAe;AACzE;"}