@gusto/embedded-react-sdk 0.10.7 → 0.11.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 (235) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/components/Common/HamburgerMenu/HamburgerMenu.js +20 -19
  3. package/dist/components/Common/HamburgerMenu/HamburgerMenu.js.map +1 -1
  4. package/dist/components/Common/ReorderableList/ReorderableItem.js +1 -1
  5. package/dist/components/Common/ReorderableList/ReorderableItem.js.map +1 -1
  6. package/dist/components/Common/SignatureForm/SignatureForm.js +1 -1
  7. package/dist/components/Common/SignatureForm/SignatureFormActions.js +1 -1
  8. package/dist/components/Common/SignatureForm/SignatureFormFields.js +1 -1
  9. package/dist/components/Common/UI/Button/Button.d.ts +1 -1
  10. package/dist/components/Common/UI/Button/Button.js +4 -4
  11. package/dist/components/Common/UI/Button/Button.js.map +1 -1
  12. package/dist/components/Common/UI/Button/ButtonTypes.d.ts +1 -1
  13. package/dist/components/Company/AssignSignatory/AssignSignatory.d.ts +0 -5
  14. package/dist/components/Company/AssignSignatory/AssignSignatory.js +34 -38
  15. package/dist/components/Company/AssignSignatory/AssignSignatory.js.map +1 -1
  16. package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js +3 -2
  17. package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js.map +1 -1
  18. package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js +3 -2
  19. package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js.map +1 -1
  20. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.d.ts +0 -4
  21. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js +51 -54
  22. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js.map +1 -1
  23. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js +13 -14
  24. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js.map +1 -1
  25. package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js +3 -2
  26. package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js.map +1 -1
  27. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.d.ts +0 -4
  28. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js +40 -43
  29. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js.map +1 -1
  30. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js +10 -11
  31. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js.map +1 -1
  32. package/dist/components/Company/AssignSignatory/index.d.ts +0 -1
  33. package/dist/components/Company/BankAccount/BankAccount.d.ts +0 -5
  34. package/dist/components/Company/BankAccount/BankAccount.js +17 -23
  35. package/dist/components/Company/BankAccount/BankAccount.js.map +1 -1
  36. package/dist/components/Company/BankAccount/BankAccountForm/Actions.js +6 -6
  37. package/dist/components/Company/BankAccount/BankAccountForm/BankAccountForm.d.ts +0 -5
  38. package/dist/components/Company/BankAccount/BankAccountForm/BankAccountForm.js +28 -31
  39. package/dist/components/Company/BankAccount/BankAccountForm/BankAccountForm.js.map +1 -1
  40. package/dist/components/Company/BankAccount/BankAccountForm/Form.js +9 -8
  41. package/dist/components/Company/BankAccount/BankAccountForm/Form.js.map +1 -1
  42. package/dist/components/Company/BankAccount/BankAccountList/Actions.js +9 -8
  43. package/dist/components/Company/BankAccount/BankAccountList/Actions.js.map +1 -1
  44. package/dist/components/Company/BankAccount/BankAccountList/BankAccountList.d.ts +0 -5
  45. package/dist/components/Company/BankAccount/BankAccountList/BankAccountList.js +25 -28
  46. package/dist/components/Company/BankAccount/BankAccountList/BankAccountList.js.map +1 -1
  47. package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js +8 -7
  48. package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js.map +1 -1
  49. package/dist/components/Company/BankAccount/BankAccountVerify/BankAccountVerify.d.ts +0 -5
  50. package/dist/components/Company/BankAccount/BankAccountVerify/BankAccountVerify.js +33 -36
  51. package/dist/components/Company/BankAccount/BankAccountVerify/BankAccountVerify.js.map +1 -1
  52. package/dist/components/Company/BankAccount/BankAccountVerify/Form.js +5 -4
  53. package/dist/components/Company/BankAccount/BankAccountVerify/Form.js.map +1 -1
  54. package/dist/components/Company/DocumentSigner/DocumentList/Actions.js +3 -2
  55. package/dist/components/Company/DocumentSigner/DocumentList/Actions.js.map +1 -1
  56. package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.d.ts +0 -6
  57. package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js +38 -43
  58. package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
  59. package/dist/components/Company/DocumentSigner/DocumentSigner.d.ts +0 -4
  60. package/dist/components/Company/DocumentSigner/DocumentSigner.js +23 -26
  61. package/dist/components/Company/DocumentSigner/DocumentSigner.js.map +1 -1
  62. package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.d.ts +0 -6
  63. package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js +41 -46
  64. package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js.map +1 -1
  65. package/dist/components/Company/FederalTaxes/Actions.js +6 -5
  66. package/dist/components/Company/FederalTaxes/Actions.js.map +1 -1
  67. package/dist/components/Company/FederalTaxes/FederalTaxes.js +12 -13
  68. package/dist/components/Company/FederalTaxes/FederalTaxes.js.map +1 -1
  69. package/dist/components/Company/FederalTaxes/Form.js +4 -3
  70. package/dist/components/Company/FederalTaxes/Form.js.map +1 -1
  71. package/dist/components/Company/Industry/Actions.js +3 -2
  72. package/dist/components/Company/Industry/Actions.js.map +1 -1
  73. package/dist/components/Company/Industry/Edit.js +5 -4
  74. package/dist/components/Company/Industry/Edit.js.map +1 -1
  75. package/dist/components/Company/Industry/Industry.d.ts +0 -5
  76. package/dist/components/Company/Industry/Industry.js +23 -29
  77. package/dist/components/Company/Industry/Industry.js.map +1 -1
  78. package/dist/components/Company/Locations/LocationForm/Actions.js +7 -6
  79. package/dist/components/Company/Locations/LocationForm/Actions.js.map +1 -1
  80. package/dist/components/Company/Locations/LocationForm/Form.js +5 -6
  81. package/dist/components/Company/Locations/LocationForm/Form.js.map +1 -1
  82. package/dist/components/Company/Locations/LocationForm/LocationForm.d.ts +0 -5
  83. package/dist/components/Company/Locations/LocationForm/LocationForm.js +44 -48
  84. package/dist/components/Company/Locations/LocationForm/LocationForm.js.map +1 -1
  85. package/dist/components/Company/Locations/Locations.d.ts +0 -4
  86. package/dist/components/Company/Locations/Locations.js +14 -18
  87. package/dist/components/Company/Locations/Locations.js.map +1 -1
  88. package/dist/components/Company/Locations/LocationsList/Actions.js +7 -6
  89. package/dist/components/Company/Locations/LocationsList/Actions.js.map +1 -1
  90. package/dist/components/Company/Locations/LocationsList/List.js +3 -2
  91. package/dist/components/Company/Locations/LocationsList/List.js.map +1 -1
  92. package/dist/components/Company/Locations/LocationsList/LocationsList.d.ts +0 -5
  93. package/dist/components/Company/Locations/LocationsList/LocationsList.js +28 -32
  94. package/dist/components/Company/Locations/LocationsList/LocationsList.js.map +1 -1
  95. package/dist/components/Company/OnboardingOverview/Completed.js +11 -10
  96. package/dist/components/Company/OnboardingOverview/Completed.js.map +1 -1
  97. package/dist/components/Company/OnboardingOverview/MissingRequirements.js +7 -6
  98. package/dist/components/Company/OnboardingOverview/MissingRequirements.js.map +1 -1
  99. package/dist/components/Company/OnboardingOverview/OnboardingOverview.js +2 -3
  100. package/dist/components/Company/OnboardingOverview/OnboardingOverview.js.map +1 -1
  101. package/dist/components/Company/PaySchedule/PaySchedule.d.ts +1 -7
  102. package/dist/components/Company/PaySchedule/PaySchedule.js +72 -77
  103. package/dist/components/Company/PaySchedule/PaySchedule.js.map +1 -1
  104. package/dist/components/Company/PaySchedule/_parts/Actions.js +10 -9
  105. package/dist/components/Company/PaySchedule/_parts/Actions.js.map +1 -1
  106. package/dist/components/Company/PaySchedule/_parts/Edit.js +37 -38
  107. package/dist/components/Company/PaySchedule/_parts/Edit.js.map +1 -1
  108. package/dist/components/Company/PaySchedule/_parts/Head.js +7 -6
  109. package/dist/components/Company/PaySchedule/_parts/Head.js.map +1 -1
  110. package/dist/components/Company/PaySchedule/_parts/List.js +12 -11
  111. package/dist/components/Company/PaySchedule/_parts/List.js.map +1 -1
  112. package/dist/components/Company/StateTaxes/StateTaxes.d.ts +0 -4
  113. package/dist/components/Company/StateTaxes/StateTaxes.js +16 -20
  114. package/dist/components/Company/StateTaxes/StateTaxes.js.map +1 -1
  115. package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js +3 -2
  116. package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js.map +1 -1
  117. package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.d.ts +0 -5
  118. package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.js +44 -47
  119. package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.js.map +1 -1
  120. package/dist/components/Company/StateTaxes/StateTaxesList/Actions.js +3 -2
  121. package/dist/components/Company/StateTaxes/StateTaxesList/Actions.js.map +1 -1
  122. package/dist/components/Company/StateTaxes/StateTaxesList/List.js +3 -2
  123. package/dist/components/Company/StateTaxes/StateTaxesList/List.js.map +1 -1
  124. package/dist/components/Company/StateTaxes/StateTaxesList/StateTaxesList.d.ts +0 -5
  125. package/dist/components/Company/StateTaxes/StateTaxesList/StateTaxesList.js +26 -29
  126. package/dist/components/Company/StateTaxes/StateTaxesList/StateTaxesList.js.map +1 -1
  127. package/dist/components/Contractor/Address/Address.d.ts +0 -5
  128. package/dist/components/Contractor/Address/Address.js +35 -39
  129. package/dist/components/Contractor/Address/Address.js.map +1 -1
  130. package/dist/components/Contractor/Address/Form.js +3 -4
  131. package/dist/components/Contractor/Address/Form.js.map +1 -1
  132. package/dist/components/Contractor/List/index.js +2 -3
  133. package/dist/components/Contractor/List/index.js.map +1 -1
  134. package/dist/components/Contractor/PaymentMethod/BankAccountForm.js +6 -5
  135. package/dist/components/Contractor/PaymentMethod/BankAccountForm.js.map +1 -1
  136. package/dist/components/Contractor/Profile/ContractorProfile.d.ts +11 -0
  137. package/dist/components/Contractor/Profile/ContractorProfile.js +24 -0
  138. package/dist/components/Contractor/Profile/ContractorProfile.js.map +1 -0
  139. package/dist/components/Contractor/Profile/ContractorProfileForm.d.ts +5 -0
  140. package/dist/components/Contractor/Profile/ContractorProfileForm.js +140 -0
  141. package/dist/components/Contractor/Profile/ContractorProfileForm.js.map +1 -0
  142. package/dist/components/Contractor/Profile/index.d.ts +3 -0
  143. package/dist/components/Contractor/Profile/useContractorProfile.d.ts +254 -0
  144. package/dist/components/Contractor/Profile/useContractorProfile.js +223 -0
  145. package/dist/components/Contractor/Profile/useContractorProfile.js.map +1 -0
  146. package/dist/components/Contractor/Submit/ContractorSubmitWithApi.d.ts +6 -0
  147. package/dist/components/Contractor/Submit/ContractorSubmitWithApi.js +27 -0
  148. package/dist/components/Contractor/Submit/ContractorSubmitWithApi.js.map +1 -0
  149. package/dist/components/Contractor/Submit/SubmitDone.d.ts +5 -0
  150. package/dist/components/Contractor/Submit/SubmitDone.js +18 -0
  151. package/dist/components/Contractor/Submit/SubmitDone.js.map +1 -0
  152. package/dist/components/Contractor/Submit/index.d.ts +6 -0
  153. package/dist/components/Contractor/Submit/index.js +20 -0
  154. package/dist/components/Contractor/Submit/index.js.map +1 -0
  155. package/dist/components/Contractor/Submit/index.module.scss.js +8 -0
  156. package/dist/components/Contractor/Submit/index.module.scss.js.map +1 -0
  157. package/dist/components/Contractor/index.d.ts +2 -0
  158. package/dist/components/Contractor/index.js +10 -6
  159. package/dist/components/Contractor/index.js.map +1 -1
  160. package/dist/components/Employee/Compensation/Actions.js +1 -1
  161. package/dist/components/Employee/Compensation/Compensation.d.ts +0 -6
  162. package/dist/components/Employee/Compensation/Compensation.js +97 -102
  163. package/dist/components/Employee/Compensation/Compensation.js.map +1 -1
  164. package/dist/components/Employee/Compensation/Edit.js +12 -12
  165. package/dist/components/Employee/Compensation/List.js +23 -22
  166. package/dist/components/Employee/Compensation/List.js.map +1 -1
  167. package/dist/components/Employee/Deductions/Actions.js +8 -7
  168. package/dist/components/Employee/Deductions/Actions.js.map +1 -1
  169. package/dist/components/Employee/Deductions/DeductionForm.js +11 -10
  170. package/dist/components/Employee/Deductions/DeductionForm.js.map +1 -1
  171. package/dist/components/Employee/Deductions/DeductionsList.js +6 -5
  172. package/dist/components/Employee/Deductions/DeductionsList.js.map +1 -1
  173. package/dist/components/Employee/Deductions/IncludeDeductionsForm.js +11 -10
  174. package/dist/components/Employee/Deductions/IncludeDeductionsForm.js.map +1 -1
  175. package/dist/components/Employee/DocumentSigner/DocumentList/Actions.js +7 -6
  176. package/dist/components/Employee/DocumentSigner/DocumentList/Actions.js.map +1 -1
  177. package/dist/components/Employee/DocumentSigner/DocumentList/DocumentList.d.ts +0 -5
  178. package/dist/components/Employee/DocumentSigner/DocumentList/DocumentList.js +25 -29
  179. package/dist/components/Employee/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
  180. package/dist/components/Employee/DocumentSigner/DocumentList/List.js +3 -2
  181. package/dist/components/Employee/DocumentSigner/DocumentList/List.js.map +1 -1
  182. package/dist/components/Employee/DocumentSigner/DocumentSigner.d.ts +1 -7
  183. package/dist/components/Employee/DocumentSigner/DocumentSigner.js +16 -20
  184. package/dist/components/Employee/DocumentSigner/DocumentSigner.js.map +1 -1
  185. package/dist/components/Employee/DocumentSigner/SignatureForm/SignatureForm.d.ts +0 -7
  186. package/dist/components/Employee/DocumentSigner/SignatureForm/SignatureForm.js +40 -45
  187. package/dist/components/Employee/DocumentSigner/SignatureForm/SignatureForm.js.map +1 -1
  188. package/dist/components/Employee/EmployeeList/Actions.js +3 -2
  189. package/dist/components/Employee/EmployeeList/Actions.js.map +1 -1
  190. package/dist/components/Employee/EmployeeList/EmployeeList.d.ts +0 -5
  191. package/dist/components/Employee/EmployeeList/EmployeeList.js +56 -60
  192. package/dist/components/Employee/EmployeeList/EmployeeList.js.map +1 -1
  193. package/dist/components/Employee/EmployeeList/Head.js +6 -5
  194. package/dist/components/Employee/EmployeeList/Head.js.map +1 -1
  195. package/dist/components/Employee/EmployeeList/List.js +12 -12
  196. package/dist/components/Employee/Landing/Landing.js +8 -8
  197. package/dist/components/Employee/OnboardingSummary/OnboardingSummary.js +7 -7
  198. package/dist/components/Employee/PaymentMethod/Actions.js +6 -5
  199. package/dist/components/Employee/PaymentMethod/Actions.js.map +1 -1
  200. package/dist/components/Employee/PaymentMethod/BankAccountEdit.js +1 -1
  201. package/dist/components/Employee/PaymentMethod/BankAccountsList.js +9 -8
  202. package/dist/components/Employee/PaymentMethod/BankAccountsList.js.map +1 -1
  203. package/dist/components/Employee/PaymentMethod/Split.js +8 -8
  204. package/dist/components/Employee/Profile/Actions.js +7 -6
  205. package/dist/components/Employee/Profile/Actions.js.map +1 -1
  206. package/dist/components/Employee/Profile/AdminPersonalDetails.d.ts +3 -3
  207. package/dist/components/Employee/Profile/HomeAddress.js +5 -6
  208. package/dist/components/Employee/Profile/HomeAddress.js.map +1 -1
  209. package/dist/components/Employee/Profile/PersonalDetailsInputs.d.ts +2 -2
  210. package/dist/components/Employee/Profile/PersonalDetailsInputs.js +10 -11
  211. package/dist/components/Employee/Profile/PersonalDetailsInputs.js.map +1 -1
  212. package/dist/components/Employee/Profile/Profile.d.ts +0 -8
  213. package/dist/components/Employee/Profile/Profile.js +131 -138
  214. package/dist/components/Employee/Profile/Profile.js.map +1 -1
  215. package/dist/components/Employee/Taxes/Actions.js +9 -8
  216. package/dist/components/Employee/Taxes/Actions.js.map +1 -1
  217. package/dist/components/Employee/Taxes/FederalForm.js +11 -10
  218. package/dist/components/Employee/Taxes/FederalForm.js.map +1 -1
  219. package/dist/components/Employee/Taxes/Taxes.d.ts +0 -6
  220. package/dist/components/Employee/Taxes/Taxes.js +76 -81
  221. package/dist/components/Employee/Taxes/Taxes.js.map +1 -1
  222. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js +3 -2
  223. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js.map +1 -1
  224. package/dist/i18n/I18n.js +1 -1
  225. package/dist/i18n/I18n.js.map +1 -1
  226. package/dist/i18n/en/Contractor.ContractorSubmit.json.js +22 -0
  227. package/dist/i18n/en/Contractor.ContractorSubmit.json.js.map +1 -0
  228. package/dist/i18n/en/Contractor.Profile.json.js +73 -0
  229. package/dist/i18n/en/Contractor.Profile.json.js.map +1 -0
  230. package/dist/shared/constants.d.ts +14 -0
  231. package/dist/shared/constants.js +33 -26
  232. package/dist/shared/constants.js.map +1 -1
  233. package/dist/style.css +1 -1
  234. package/dist/types/i18next.d.ts +77 -1
  235. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"FederalForm.js","sources":["../../../../src/components/Employee/Taxes/FederalForm.tsx"],"sourcesContent":["import { Trans, useTranslation } from 'react-i18next'\nimport { z } from 'zod'\nimport { NumberInputField, RadioGroupField, SelectField } 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.Taxes')\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 options={filingStatusCategories}\n isRequired\n errorMessage={t('validations.federalFilingStatus')}\n />\n <RadioGroupField\n name=\"twoJobs\"\n label={t('multipleJobs2c')}\n errorMessage={t('validations.federalTwoJobs')}\n description={\n <Components.Text>\n <Trans\n i18nKey={'includesSpouseExplanation'}\n t={t}\n components={{\n irs_link: <Components.Link />,\n }}\n />\n </Components.Text>\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/Taxes/FederalForm.tsx"],"sourcesContent":["import { Trans, useTranslation } from 'react-i18next'\nimport { z } from 'zod'\nimport { NumberInputField, RadioGroupField, SelectField } 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.Taxes')\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 options={filingStatusCategories}\n isRequired\n errorMessage={t('validations.federalFilingStatus')}\n />\n <RadioGroupField\n name=\"twoJobs\"\n label={t('multipleJobs2c')}\n errorMessage={t('validations.federalTwoJobs')}\n description={\n <Components.Text>\n <Trans\n i18nKey={'includesSpouseExplanation'}\n t={t}\n components={{\n irs_link: <Components.Link />,\n }}\n />\n </Components.Text>\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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"}
@@ -4,11 +4,5 @@ interface TaxesProps extends CommonComponentInterface<'Employee.Taxes'> {
4
4
  isAdmin?: boolean;
5
5
  }
6
6
  export declare function Taxes(props: TaxesProps & BaseComponentInterface): import("react/jsx-runtime").JSX.Element;
7
- export declare namespace Taxes {
8
- var FederalHead: typeof import("./FederalHead").FederalHead;
9
- var FederalForm: typeof import("./FederalForm").FederalForm;
10
- var StateForm: () => (import("react/jsx-runtime").JSX.Element | null)[];
11
- var Actions: () => import("react/jsx-runtime").JSX.Element;
12
- }
13
7
  export declare const TaxesContextual: () => import("react/jsx-runtime").JSX.Element;
14
8
  export {};
@@ -1,36 +1,36 @@
1
- import { jsx as t, jsxs as J, Fragment as X } from "react/jsx-runtime";
2
- import { zodResolver as q } from "@hookform/resolvers/zod";
3
- import { useForm as B, FormProvider as V } from "react-hook-form";
4
- import { useTranslation as W } from "react-i18next";
5
- import { useEffect as Y } from "react";
6
- import { useEmployeeTaxSetupGetFederalTaxesSuspense as j } from "@gusto/embedded-api/react-query/employeeTaxSetupGetFederalTaxes";
7
- import { useEmployeeTaxSetupUpdateFederalTaxesMutation as G } from "@gusto/embedded-api/react-query/employeeTaxSetupUpdateFederalTaxes";
8
- import { useEmployeeTaxSetupGetStateTaxesSuspense as z } from "@gusto/embedded-api/react-query/employeeTaxSetupGetStateTaxes";
9
- import { useEmployeeTaxSetupUpdateStateTaxesMutation as Q } from "@gusto/embedded-api/react-query/employeeTaxSetupUpdateStateTaxes";
10
- import { Actions as w } from "./Actions.js";
11
- import { FederalFormSchema as K, FederalForm as P } from "./FederalForm.js";
12
- import { FederalHead as b } from "./FederalHead.js";
13
- import { StateFormSchema as Z, StateForm as _ } from "./StateForm.js";
14
- import { TaxesProvider as $ } from "./useTaxes.js";
15
- import { BaseComponent as ee } from "../../Base/Base.js";
16
- import { useBase as te } from "../../Base/useBase.js";
17
- import { useFlow as oe } from "../../Flow/useFlow.js";
18
- import { useI18n as se, useComponentDictionary as re } from "../../../i18n/I18n.js";
1
+ import { jsx as t, jsxs as C, Fragment as L } from "react/jsx-runtime";
2
+ import { zodResolver as M } from "@hookform/resolvers/zod";
3
+ import { useForm as O, FormProvider as J } from "react-hook-form";
4
+ import { useTranslation as X } from "react-i18next";
5
+ import { useEffect as q } from "react";
6
+ import { useEmployeeTaxSetupGetFederalTaxesSuspense as B } from "@gusto/embedded-api/react-query/employeeTaxSetupGetFederalTaxes";
7
+ import { useEmployeeTaxSetupUpdateFederalTaxesMutation as H } from "@gusto/embedded-api/react-query/employeeTaxSetupUpdateFederalTaxes";
8
+ import { useEmployeeTaxSetupGetStateTaxesSuspense as V } from "@gusto/embedded-api/react-query/employeeTaxSetupGetStateTaxes";
9
+ import { useEmployeeTaxSetupUpdateStateTaxesMutation as W } from "@gusto/embedded-api/react-query/employeeTaxSetupUpdateStateTaxes";
10
+ import { Actions as Y } from "./Actions.js";
11
+ import { FederalFormSchema as j, FederalForm as G } from "./FederalForm.js";
12
+ import { FederalHead as z } from "./FederalHead.js";
13
+ import { StateFormSchema as Q, StateForm as K } from "./StateForm.js";
14
+ import { TaxesProvider as Z } from "./useTaxes.js";
15
+ import { BaseComponent as $ } from "../../Base/Base.js";
16
+ import { useBase as ee } from "../../Base/useBase.js";
17
+ import { useFlow as te } from "../../Flow/useFlow.js";
18
+ import { useI18n as oe, useComponentDictionary as se } from "../../../i18n/I18n.js";
19
19
  import { componentEvents as S } from "../../../shared/constants.js";
20
- import { snakeCaseToCamelCase as g } from "../../../helpers/formattedStrings.js";
21
- import { Form as ae } from "../../Common/Form/Form.js";
20
+ import { snakeCaseToCamelCase as A } from "../../../helpers/formattedStrings.js";
21
+ import { Form as re } from "../../Common/Form/Form.js";
22
22
  const ne = "2010-01-01";
23
- function u(o) {
24
- return /* @__PURE__ */ t(ee, { ...o, children: /* @__PURE__ */ t(me, { ...o, children: o.children }) });
23
+ function ae(o) {
24
+ return /* @__PURE__ */ t($, { ...o, children: /* @__PURE__ */ t(ie, { ...o, children: o.children }) });
25
25
  }
26
- const me = (o) => {
27
- const { employeeId: m, className: y, children: p, isAdmin: h = !1, dictionary: D } = o, { onEvent: T, fieldErrors: c, baseSubmitHandler: U } = te();
28
- se("Employee.Taxes"), re("Employee.Taxes", D);
29
- const { data: N } = j({
30
- employeeUuid: m
31
- }), e = N.employeeFederalTax, { mutateAsync: k, isPending: I } = G(), { data: R } = z({
32
- employeeUuid: m
33
- }), E = R.employeeStateTaxesList, { mutateAsync: C, isPending: L } = Q(), M = {
26
+ const ie = (o) => {
27
+ const { employeeId: i, className: f, children: u, isAdmin: h = !1, dictionary: g } = o, { onEvent: y, fieldErrors: p, baseSubmitHandler: w } = ee();
28
+ oe("Employee.Taxes"), se("Employee.Taxes", g);
29
+ const { data: P } = B({
30
+ employeeUuid: i
31
+ }), e = P.employeeFederalTax, { mutateAsync: b, isPending: _ } = H(), { data: D } = V({
32
+ employeeUuid: i
33
+ }), T = D.employeeStateTaxesList, { mutateAsync: U, isPending: N } = W(), k = {
34
34
  ...e,
35
35
  filingStatus: e.filingStatus ?? void 0,
36
36
  twoJobs: e.twoJobs ? "true" : "false",
@@ -38,32 +38,32 @@ const me = (o) => {
38
38
  dependentsAmount: e.dependentsAmount ? Number(e.dependentsAmount) : 0,
39
39
  otherIncome: e.otherIncome ? Number(e.otherIncome) : 0,
40
40
  extraWithholding: e.extraWithholding ? Number(e.extraWithholding) : 0,
41
- states: E.reduce((s, r) => (r.state && (s[r.state] = r.questions?.reduce((a, l) => {
42
- const d = l.answers[0]?.value, i = g(l.key);
43
- return i === "fileNewHireReport" ? a[i] = typeof d > "u" ? !0 : d : a[i] = d, a;
41
+ states: T.reduce((s, r) => (r.state && (s[r.state] = r.questions?.reduce((n, l) => {
42
+ const d = l.answers[0]?.value, m = A(l.key);
43
+ return m === "fileNewHireReport" ? n[m] = typeof d > "u" ? !0 : d : n[m] = d, n;
44
44
  }, {})), s), {})
45
- }, v = B({
46
- resolver: q(K.merge(Z)),
47
- defaultValues: M
48
- }), { handleSubmit: O, setError: A } = v;
49
- return Y(() => {
50
- c && c.length > 0 && c.forEach((s) => {
45
+ }, F = O({
46
+ resolver: M(j.merge(Q)),
47
+ defaultValues: k
48
+ }), { handleSubmit: I, setError: v } = F;
49
+ return q(() => {
50
+ p && p.length > 0 && p.forEach((s) => {
51
51
  const r = s.key.replace(".value", "");
52
- A(r, { type: "custom", message: s.message });
52
+ v(r, { type: "custom", message: s.message });
53
53
  });
54
- }, [c, A]), /* @__PURE__ */ t("section", { className: y, children: /* @__PURE__ */ t(
55
- $,
54
+ }, [p, v]), /* @__PURE__ */ t("section", { className: f, children: /* @__PURE__ */ t(
55
+ Z,
56
56
  {
57
57
  value: {
58
- employeeStateTaxes: E,
58
+ employeeStateTaxes: T,
59
59
  isAdmin: h,
60
- isPending: I || L
60
+ isPending: _ || N
61
61
  },
62
- children: /* @__PURE__ */ t(V, { ...v, children: /* @__PURE__ */ t(ae, { onSubmit: O(async (s) => {
63
- await U(s, async (r) => {
64
- const { states: a, ...l } = r, d = await k({
62
+ children: /* @__PURE__ */ t(J, { ...F, children: /* @__PURE__ */ t(re, { onSubmit: I(async (s) => {
63
+ await w(s, async (r) => {
64
+ const { states: n, ...l } = r, d = await b({
65
65
  request: {
66
- employeeUuid: m,
66
+ employeeUuid: i,
67
67
  requestBody: {
68
68
  ...l,
69
69
  twoJobs: l.twoJobs === "true",
@@ -71,64 +71,59 @@ const me = (o) => {
71
71
  }
72
72
  }
73
73
  });
74
- if (T(S.EMPLOYEE_FEDERAL_TAXES_UPDATED, d), a && Object.keys(a).length > 0) {
75
- const i = [];
76
- for (const x of E) {
77
- const F = x.state;
78
- F && x.questions !== void 0 && i.push({
79
- state: F,
80
- questions: x.questions.map((n) => {
81
- if (n.isQuestionForAdminOnly && !h)
74
+ if (y(S.EMPLOYEE_FEDERAL_TAXES_UPDATED, d), n && Object.keys(n).length > 0) {
75
+ const m = [];
76
+ for (const E of T) {
77
+ const x = E.state;
78
+ x && E.questions !== void 0 && m.push({
79
+ state: x,
80
+ questions: E.questions.map((a) => {
81
+ if (a.isQuestionForAdminOnly && !h)
82
82
  return null;
83
- const f = a[F]?.[g(n.key)];
83
+ const c = n[x]?.[A(a.key)];
84
84
  return {
85
- key: n.key,
85
+ key: a.key,
86
86
  answers: [
87
87
  {
88
- validFrom: n.answers[0]?.validFrom ?? ne,
89
- validUpTo: n.answers[0]?.validUpTo ?? null,
90
- value: f == null || typeof f == "number" && isNaN(f) ? "" : f
88
+ validFrom: a.answers[0]?.validFrom ?? ne,
89
+ validUpTo: a.answers[0]?.validUpTo ?? null,
90
+ value: c == null || typeof c == "number" && isNaN(c) ? "" : c
91
91
  }
92
92
  ]
93
93
  };
94
- }).filter((n) => n !== null)
94
+ }).filter((a) => a !== null)
95
95
  //Filtering out questions in non-admin setup
96
96
  });
97
97
  }
98
- const H = await C({
99
- request: { employeeUuid: m, employeeStateTaxesRequest: { states: i } }
98
+ const R = await U({
99
+ request: { employeeUuid: i, employeeStateTaxesRequest: { states: m } }
100
100
  });
101
- T(S.EMPLOYEE_STATE_TAXES_UPDATED, H);
101
+ y(S.EMPLOYEE_STATE_TAXES_UPDATED, R);
102
102
  }
103
- T(S.EMPLOYEE_TAXES_DONE);
103
+ y(S.EMPLOYEE_TAXES_DONE);
104
104
  });
105
- }), children: p || /* @__PURE__ */ J(X, { children: [
106
- /* @__PURE__ */ t(b, {}),
107
- /* @__PURE__ */ t(P, {}),
108
- /* @__PURE__ */ t(_, {}),
109
- /* @__PURE__ */ t(w, {})
105
+ }), children: u || /* @__PURE__ */ C(L, { children: [
106
+ /* @__PURE__ */ t(z, {}),
107
+ /* @__PURE__ */ t(G, {}),
108
+ /* @__PURE__ */ t(K, {}),
109
+ /* @__PURE__ */ t(Y, {})
110
110
  ] }) }) })
111
111
  }
112
112
  ) });
113
- };
114
- u.FederalHead = b;
115
- u.FederalForm = P;
116
- u.StateForm = _;
117
- u.Actions = w;
118
- const Ue = () => {
119
- const { employeeId: o, onEvent: m, isAdmin: y } = oe(), { t: p } = W();
113
+ }, Ue = () => {
114
+ const { employeeId: o, onEvent: i, isAdmin: f } = te(), { t: u } = X();
120
115
  if (!o)
121
116
  throw new Error(
122
- p("errors.missingParamsOrContext", {
117
+ u("errors.missingParamsOrContext", {
123
118
  component: "EmployeeTaxes",
124
119
  param: "employeeId",
125
120
  provider: "FlowProvider"
126
121
  })
127
122
  );
128
- return /* @__PURE__ */ t(u, { employeeId: o, onEvent: m, isAdmin: y ?? !1 });
123
+ return /* @__PURE__ */ t(ae, { employeeId: o, onEvent: i, isAdmin: f ?? !1 });
129
124
  };
130
125
  export {
131
- u as Taxes,
126
+ ae as Taxes,
132
127
  Ue as TaxesContextual
133
128
  };
134
129
  //# sourceMappingURL=Taxes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Taxes.js","sources":["../../../../src/components/Employee/Taxes/Taxes.tsx"],"sourcesContent":["import { zodResolver } from '@hookform/resolvers/zod'\nimport { FormProvider, useForm, type SubmitHandler } from 'react-hook-form'\nimport { useTranslation } from 'react-i18next'\nimport { useEffect } from 'react'\nimport { useEmployeeTaxSetupGetFederalTaxesSuspense } from '@gusto/embedded-api/react-query/employeeTaxSetupGetFederalTaxes'\nimport { useEmployeeTaxSetupUpdateFederalTaxesMutation } from '@gusto/embedded-api/react-query/employeeTaxSetupUpdateFederalTaxes'\nimport { useEmployeeTaxSetupGetStateTaxesSuspense } from '@gusto/embedded-api/react-query/employeeTaxSetupGetStateTaxes'\nimport { useEmployeeTaxSetupUpdateStateTaxesMutation } from '@gusto/embedded-api/react-query/employeeTaxSetupUpdateStateTaxes'\nimport type { OnboardingContextInterface } from '../OnboardingFlow/OnboardingFlow'\nimport { Actions } from './Actions'\nimport {\n FederalForm,\n FederalFormSchema,\n type FederalFormInputs,\n type FederalFormPayload,\n} from './FederalForm'\nimport { FederalHead } from './FederalHead'\nimport { StateForm, StateFormSchema, type StateFormPayload } from './StateForm'\nimport { TaxesProvider } from './useTaxes'\nimport {\n useBase,\n BaseComponent,\n type BaseComponentInterface,\n type CommonComponentInterface,\n} from '@/components/Base'\nimport { useFlow } from '@/components/Flow/useFlow'\nimport { useI18n } from '@/i18n'\nimport { componentEvents } from '@/shared/constants'\nimport { snakeCaseToCamelCase } from '@/helpers/formattedStrings'\nimport { Form } from '@/components/Common/Form'\nimport { useComponentDictionary } from '@/i18n/I18n'\n\nconst DEFAULT_TAX_VALID_FROM = '2010-01-01'\n\ninterface TaxesProps extends CommonComponentInterface<'Employee.Taxes'> {\n employeeId: string\n isAdmin?: boolean\n}\n\nexport function Taxes(props: TaxesProps & BaseComponentInterface) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nconst Root = (props: TaxesProps) => {\n const { employeeId, className, children, isAdmin = false, dictionary } = props\n const { onEvent, fieldErrors, baseSubmitHandler } = useBase()\n useI18n('Employee.Taxes')\n useComponentDictionary('Employee.Taxes', dictionary)\n\n const { data: fedData } = useEmployeeTaxSetupGetFederalTaxesSuspense({\n employeeUuid: employeeId,\n })\n const employeeFederalTax = fedData.employeeFederalTax!\n\n const { mutateAsync: updateFederalTaxes, isPending: isPendingFederalTaxes } =\n useEmployeeTaxSetupUpdateFederalTaxesMutation()\n\n const { data: stateData } = useEmployeeTaxSetupGetStateTaxesSuspense({\n employeeUuid: employeeId,\n })\n const employeeStateTaxes = stateData.employeeStateTaxesList!\n const { mutateAsync: updateStateTaxes, isPending: isPendingStateTaxes } =\n useEmployeeTaxSetupUpdateStateTaxesMutation()\n\n const defaultValues = {\n ...employeeFederalTax,\n filingStatus: employeeFederalTax.filingStatus ?? undefined,\n twoJobs: employeeFederalTax.twoJobs ? 'true' : 'false',\n deductions: employeeFederalTax.deductions ? Number(employeeFederalTax.deductions) : 0,\n dependentsAmount: employeeFederalTax.dependentsAmount\n ? Number(employeeFederalTax.dependentsAmount)\n : 0,\n otherIncome: employeeFederalTax.otherIncome ? Number(employeeFederalTax.otherIncome) : 0,\n extraWithholding: employeeFederalTax.extraWithholding\n ? Number(employeeFederalTax.extraWithholding)\n : 0,\n states: employeeStateTaxes.reduce((acc: Record<string, unknown>, state) => {\n if (state.state) {\n acc[state.state] = state.questions?.reduce((acc: Record<string, unknown>, question) => {\n const value = question.answers[0]?.value\n const key = snakeCaseToCamelCase(question.key)\n // Default new hire report to true if not specified\n if (key === 'fileNewHireReport') {\n acc[key] = typeof value === 'undefined' ? true : value\n } else {\n acc[key] = value\n }\n return acc\n }, {})\n }\n return acc\n }, {}),\n }\n\n const formMethods = useForm<FederalFormInputs, unknown, FederalFormPayload & StateFormPayload>({\n resolver: zodResolver(FederalFormSchema.merge(StateFormSchema)),\n defaultValues,\n })\n const { handleSubmit, setError: _setError } = formMethods\n\n useEffect(() => {\n //If list of field specific errors from API is present, mark corresponding fields as invalid\n if (fieldErrors && fieldErrors.length > 0) {\n fieldErrors.forEach(msgObject => {\n const key = msgObject.key.replace('.value', '')\n _setError(key as keyof FederalFormInputs, { type: 'custom', message: msgObject.message })\n })\n }\n }, [fieldErrors, _setError])\n\n const onSubmit: SubmitHandler<FederalFormPayload & StateFormPayload> = async data => {\n await baseSubmitHandler(data, async payload => {\n const { states: statesPayload, ...federalPayload } = payload\n\n const federalTaxesResponse = await updateFederalTaxes({\n request: {\n employeeUuid: employeeId,\n requestBody: {\n ...federalPayload,\n twoJobs: federalPayload.twoJobs === 'true',\n version: employeeFederalTax.version,\n },\n },\n })\n onEvent(componentEvents.EMPLOYEE_FEDERAL_TAXES_UPDATED, federalTaxesResponse)\n\n //State Taxes - only process if statesPayload exists\n if (statesPayload && Object.keys(statesPayload).length > 0) {\n const states = []\n\n for (const state of employeeStateTaxes) {\n const stateName = state.state\n\n if (stateName && state.questions !== undefined) {\n states.push({\n state: stateName,\n questions: state.questions\n .map(question => {\n if (question.isQuestionForAdminOnly && !isAdmin) {\n return null\n }\n const formValue = statesPayload[stateName]?.[snakeCaseToCamelCase(question.key)]\n return {\n key: question.key,\n answers: [\n {\n validFrom: question.answers[0]?.validFrom ?? DEFAULT_TAX_VALID_FROM,\n validUpTo: question.answers[0]?.validUpTo ?? null,\n value:\n formValue == null || (typeof formValue === 'number' && isNaN(formValue))\n ? ''\n : (formValue as string | number | boolean),\n },\n ],\n }\n })\n .filter(q => q !== null), //Filtering out questions in non-admin setup\n })\n }\n }\n\n const stateTaxesResponse = await updateStateTaxes({\n request: { employeeUuid: employeeId, employeeStateTaxesRequest: { states } },\n })\n onEvent(componentEvents.EMPLOYEE_STATE_TAXES_UPDATED, stateTaxesResponse)\n }\n\n onEvent(componentEvents.EMPLOYEE_TAXES_DONE)\n })\n }\n\n return (\n <section className={className}>\n <TaxesProvider\n value={{\n employeeStateTaxes,\n isAdmin: isAdmin,\n isPending: isPendingFederalTaxes || isPendingStateTaxes,\n }}\n >\n <FormProvider {...formMethods}>\n <Form onSubmit={handleSubmit(onSubmit)}>\n {children ? (\n children\n ) : (\n <>\n <FederalHead />\n <FederalForm />\n <StateForm />\n <Actions />\n </>\n )}\n </Form>\n </FormProvider>\n </TaxesProvider>\n </section>\n )\n}\nTaxes.FederalHead = FederalHead\nTaxes.FederalForm = FederalForm\nTaxes.StateForm = StateForm\nTaxes.Actions = Actions\n\nexport const TaxesContextual = () => {\n const { employeeId, onEvent, isAdmin } = useFlow<OnboardingContextInterface>()\n const { t } = useTranslation()\n if (!employeeId) {\n throw new Error(\n t('errors.missingParamsOrContext', {\n component: 'EmployeeTaxes',\n param: 'employeeId',\n provider: 'FlowProvider',\n }),\n )\n }\n return <Taxes employeeId={employeeId} onEvent={onEvent} isAdmin={isAdmin ?? false} />\n}\n"],"names":["DEFAULT_TAX_VALID_FROM","Taxes","props","jsx","BaseComponent","Root","employeeId","className","children","isAdmin","dictionary","onEvent","fieldErrors","baseSubmitHandler","useBase","useI18n","useComponentDictionary","fedData","useEmployeeTaxSetupGetFederalTaxesSuspense","employeeFederalTax","updateFederalTaxes","isPendingFederalTaxes","useEmployeeTaxSetupUpdateFederalTaxesMutation","stateData","useEmployeeTaxSetupGetStateTaxesSuspense","employeeStateTaxes","updateStateTaxes","isPendingStateTaxes","useEmployeeTaxSetupUpdateStateTaxesMutation","defaultValues","acc","state","question","value","key","snakeCaseToCamelCase","formMethods","useForm","zodResolver","FederalFormSchema","StateFormSchema","handleSubmit","_setError","useEffect","msgObject","TaxesProvider","FormProvider","Form","data","payload","statesPayload","federalPayload","federalTaxesResponse","componentEvents","states","stateName","formValue","q","stateTaxesResponse","jsxs","Fragment","FederalHead","FederalForm","StateForm","Actions","TaxesContextual","useFlow","t","useTranslation"],"mappings":"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"}
1
+ {"version":3,"file":"Taxes.js","sources":["../../../../src/components/Employee/Taxes/Taxes.tsx"],"sourcesContent":["import { zodResolver } from '@hookform/resolvers/zod'\nimport { FormProvider, useForm, type SubmitHandler } from 'react-hook-form'\nimport { useTranslation } from 'react-i18next'\nimport { useEffect } from 'react'\nimport { useEmployeeTaxSetupGetFederalTaxesSuspense } from '@gusto/embedded-api/react-query/employeeTaxSetupGetFederalTaxes'\nimport { useEmployeeTaxSetupUpdateFederalTaxesMutation } from '@gusto/embedded-api/react-query/employeeTaxSetupUpdateFederalTaxes'\nimport { useEmployeeTaxSetupGetStateTaxesSuspense } from '@gusto/embedded-api/react-query/employeeTaxSetupGetStateTaxes'\nimport { useEmployeeTaxSetupUpdateStateTaxesMutation } from '@gusto/embedded-api/react-query/employeeTaxSetupUpdateStateTaxes'\nimport type { OnboardingContextInterface } from '../OnboardingFlow/OnboardingFlow'\nimport { Actions } from './Actions'\nimport {\n FederalForm,\n FederalFormSchema,\n type FederalFormInputs,\n type FederalFormPayload,\n} from './FederalForm'\nimport { FederalHead } from './FederalHead'\nimport { StateForm, StateFormSchema, type StateFormPayload } from './StateForm'\nimport { TaxesProvider } from './useTaxes'\nimport {\n useBase,\n BaseComponent,\n type BaseComponentInterface,\n type CommonComponentInterface,\n} from '@/components/Base'\nimport { useFlow } from '@/components/Flow/useFlow'\nimport { useI18n } from '@/i18n'\nimport { componentEvents } from '@/shared/constants'\nimport { snakeCaseToCamelCase } from '@/helpers/formattedStrings'\nimport { Form } from '@/components/Common/Form'\nimport { useComponentDictionary } from '@/i18n/I18n'\n\nconst DEFAULT_TAX_VALID_FROM = '2010-01-01'\n\ninterface TaxesProps extends CommonComponentInterface<'Employee.Taxes'> {\n employeeId: string\n isAdmin?: boolean\n}\n\nexport function Taxes(props: TaxesProps & BaseComponentInterface) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nconst Root = (props: TaxesProps) => {\n const { employeeId, className, children, isAdmin = false, dictionary } = props\n const { onEvent, fieldErrors, baseSubmitHandler } = useBase()\n useI18n('Employee.Taxes')\n useComponentDictionary('Employee.Taxes', dictionary)\n\n const { data: fedData } = useEmployeeTaxSetupGetFederalTaxesSuspense({\n employeeUuid: employeeId,\n })\n const employeeFederalTax = fedData.employeeFederalTax!\n\n const { mutateAsync: updateFederalTaxes, isPending: isPendingFederalTaxes } =\n useEmployeeTaxSetupUpdateFederalTaxesMutation()\n\n const { data: stateData } = useEmployeeTaxSetupGetStateTaxesSuspense({\n employeeUuid: employeeId,\n })\n const employeeStateTaxes = stateData.employeeStateTaxesList!\n const { mutateAsync: updateStateTaxes, isPending: isPendingStateTaxes } =\n useEmployeeTaxSetupUpdateStateTaxesMutation()\n\n const defaultValues = {\n ...employeeFederalTax,\n filingStatus: employeeFederalTax.filingStatus ?? undefined,\n twoJobs: employeeFederalTax.twoJobs ? 'true' : 'false',\n deductions: employeeFederalTax.deductions ? Number(employeeFederalTax.deductions) : 0,\n dependentsAmount: employeeFederalTax.dependentsAmount\n ? Number(employeeFederalTax.dependentsAmount)\n : 0,\n otherIncome: employeeFederalTax.otherIncome ? Number(employeeFederalTax.otherIncome) : 0,\n extraWithholding: employeeFederalTax.extraWithholding\n ? Number(employeeFederalTax.extraWithholding)\n : 0,\n states: employeeStateTaxes.reduce((acc: Record<string, unknown>, state) => {\n if (state.state) {\n acc[state.state] = state.questions?.reduce((acc: Record<string, unknown>, question) => {\n const value = question.answers[0]?.value\n const key = snakeCaseToCamelCase(question.key)\n // Default new hire report to true if not specified\n if (key === 'fileNewHireReport') {\n acc[key] = typeof value === 'undefined' ? true : value\n } else {\n acc[key] = value\n }\n return acc\n }, {})\n }\n return acc\n }, {}),\n }\n\n const formMethods = useForm<FederalFormInputs, unknown, FederalFormPayload & StateFormPayload>({\n resolver: zodResolver(FederalFormSchema.merge(StateFormSchema)),\n defaultValues,\n })\n const { handleSubmit, setError: _setError } = formMethods\n\n useEffect(() => {\n //If list of field specific errors from API is present, mark corresponding fields as invalid\n if (fieldErrors && fieldErrors.length > 0) {\n fieldErrors.forEach(msgObject => {\n const key = msgObject.key.replace('.value', '')\n _setError(key as keyof FederalFormInputs, { type: 'custom', message: msgObject.message })\n })\n }\n }, [fieldErrors, _setError])\n\n const onSubmit: SubmitHandler<FederalFormPayload & StateFormPayload> = async data => {\n await baseSubmitHandler(data, async payload => {\n const { states: statesPayload, ...federalPayload } = payload\n\n const federalTaxesResponse = await updateFederalTaxes({\n request: {\n employeeUuid: employeeId,\n requestBody: {\n ...federalPayload,\n twoJobs: federalPayload.twoJobs === 'true',\n version: employeeFederalTax.version,\n },\n },\n })\n onEvent(componentEvents.EMPLOYEE_FEDERAL_TAXES_UPDATED, federalTaxesResponse)\n\n //State Taxes - only process if statesPayload exists\n if (statesPayload && Object.keys(statesPayload).length > 0) {\n const states = []\n\n for (const state of employeeStateTaxes) {\n const stateName = state.state\n\n if (stateName && state.questions !== undefined) {\n states.push({\n state: stateName,\n questions: state.questions\n .map(question => {\n if (question.isQuestionForAdminOnly && !isAdmin) {\n return null\n }\n const formValue = statesPayload[stateName]?.[snakeCaseToCamelCase(question.key)]\n return {\n key: question.key,\n answers: [\n {\n validFrom: question.answers[0]?.validFrom ?? DEFAULT_TAX_VALID_FROM,\n validUpTo: question.answers[0]?.validUpTo ?? null,\n value:\n formValue == null || (typeof formValue === 'number' && isNaN(formValue))\n ? ''\n : (formValue as string | number | boolean),\n },\n ],\n }\n })\n .filter(q => q !== null), //Filtering out questions in non-admin setup\n })\n }\n }\n\n const stateTaxesResponse = await updateStateTaxes({\n request: { employeeUuid: employeeId, employeeStateTaxesRequest: { states } },\n })\n onEvent(componentEvents.EMPLOYEE_STATE_TAXES_UPDATED, stateTaxesResponse)\n }\n\n onEvent(componentEvents.EMPLOYEE_TAXES_DONE)\n })\n }\n\n return (\n <section className={className}>\n <TaxesProvider\n value={{\n employeeStateTaxes,\n isAdmin: isAdmin,\n isPending: isPendingFederalTaxes || isPendingStateTaxes,\n }}\n >\n <FormProvider {...formMethods}>\n <Form onSubmit={handleSubmit(onSubmit)}>\n {children ? (\n children\n ) : (\n <>\n <FederalHead />\n <FederalForm />\n <StateForm />\n <Actions />\n </>\n )}\n </Form>\n </FormProvider>\n </TaxesProvider>\n </section>\n )\n}\n\nexport const TaxesContextual = () => {\n const { employeeId, onEvent, isAdmin } = useFlow<OnboardingContextInterface>()\n const { t } = useTranslation()\n if (!employeeId) {\n throw new Error(\n t('errors.missingParamsOrContext', {\n component: 'EmployeeTaxes',\n param: 'employeeId',\n provider: 'FlowProvider',\n }),\n )\n }\n return <Taxes employeeId={employeeId} onEvent={onEvent} isAdmin={isAdmin ?? false} />\n}\n"],"names":["DEFAULT_TAX_VALID_FROM","Taxes","props","jsx","BaseComponent","Root","employeeId","className","children","isAdmin","dictionary","onEvent","fieldErrors","baseSubmitHandler","useBase","useI18n","useComponentDictionary","fedData","useEmployeeTaxSetupGetFederalTaxesSuspense","employeeFederalTax","updateFederalTaxes","isPendingFederalTaxes","useEmployeeTaxSetupUpdateFederalTaxesMutation","stateData","useEmployeeTaxSetupGetStateTaxesSuspense","employeeStateTaxes","updateStateTaxes","isPendingStateTaxes","useEmployeeTaxSetupUpdateStateTaxesMutation","defaultValues","acc","state","question","value","key","snakeCaseToCamelCase","formMethods","useForm","zodResolver","FederalFormSchema","StateFormSchema","handleSubmit","_setError","useEffect","msgObject","TaxesProvider","FormProvider","Form","data","payload","statesPayload","federalPayload","federalTaxesResponse","componentEvents","states","stateName","formValue","q","stateTaxesResponse","jsxs","Fragment","FederalHead","FederalForm","StateForm","Actions","TaxesContextual","useFlow","t","useTranslation"],"mappings":"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"}
@@ -7,10 +7,11 @@ import { ApiProvider as I } from "../ApiProvider/ApiProvider.js";
7
7
  import { LoadingIndicatorProvider as x } from "../LoadingIndicatorProvider/LoadingIndicatorProvider.js";
8
8
  import { SDKI18next as i } from "./SDKI18next.js";
9
9
  import "classnames";
10
+ import "../../shared/constants.js";
10
11
  import { InternalError as y } from "../../components/Common/InternalError/InternalError.js";
11
12
  import { LocaleProvider as C } from "../LocaleProvider/LocaleProvider.js";
12
13
  import { ThemeProvider as L } from "../ThemeProvider/ThemeProvider.js";
13
- const K = (a) => {
14
+ const R = (a) => {
14
15
  const {
15
16
  children: d,
16
17
  config: t,
@@ -39,6 +40,6 @@ const K = (a) => {
39
40
  }, [e]), /* @__PURE__ */ r(P, { value: f, children: /* @__PURE__ */ r(x, { value: s, children: /* @__PURE__ */ r(h, { FallbackComponent: y, children: /* @__PURE__ */ r(L, { theme: p, children: /* @__PURE__ */ r(C, { locale: c, currency: l, children: /* @__PURE__ */ r(v, { i18n: i, children: /* @__PURE__ */ r(I, { url: t.baseUrl, headers: t.headers, children: d }) }, e) }) }) }) }) });
40
41
  };
41
42
  export {
42
- K as GustoProviderCustomUIAdapter
43
+ R as GustoProviderCustomUIAdapter
43
44
  };
44
45
  //# sourceMappingURL=GustoProviderCustomUIAdapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GustoProviderCustomUIAdapter.js","sources":["../../../src/contexts/GustoProvider/GustoProviderCustomUIAdapter.tsx"],"sourcesContent":["import type React from 'react'\nimport { ErrorBoundary } from 'react-error-boundary'\nimport { I18nextProvider } from 'react-i18next'\nimport type { QueryClient } from '@tanstack/react-query'\nimport { useEffect } from 'react'\nimport { ComponentsProvider } from '../ComponentAdapter/ComponentsProvider'\nimport type { ComponentsContextType } from '../ComponentAdapter/useComponentContext'\nimport { ApiProvider } from '../ApiProvider/ApiProvider'\nimport { LoadingIndicatorProvider } from '../LoadingIndicatorProvider/LoadingIndicatorProvider'\nimport type { LoadingIndicatorContextProps } from '../LoadingIndicatorProvider/useLoadingIndicator'\nimport { SDKI18next } from './SDKI18next'\nimport { InternalError } from '@/components/Common'\nimport { LocaleProvider } from '@/contexts/LocaleProvider'\nimport { ThemeProvider } from '@/contexts/ThemeProvider'\nimport type { GTheme } from '@/types/GTheme'\nimport type { DeepPartial, ResourceDictionary, SupportedLanguages } from '@/types/Helpers'\n\ninterface APIConfig {\n baseUrl: string\n headers?: HeadersInit\n}\n\nexport interface GustoProviderProps {\n config: APIConfig\n dictionary?: ResourceDictionary\n lng?: string\n locale?: string\n currency?: string\n theme?: DeepPartial<GTheme>\n queryClient?: QueryClient\n components: ComponentsContextType\n LoaderComponent?: LoadingIndicatorContextProps['LoadingIndicator']\n}\n\nexport interface GustoProviderCustomUIAdapterProps extends GustoProviderProps {\n children?: React.ReactNode\n}\n\n/**\n * A provider that accepts UI component adapters through the components prop\n */\nconst GustoProviderCustomUIAdapter: React.FC<GustoProviderCustomUIAdapterProps> = props => {\n const {\n children,\n config,\n dictionary,\n lng = 'en',\n locale = 'en-US',\n currency = 'USD',\n theme,\n components,\n LoaderComponent,\n } = props\n\n // Handle dictionary resources\n if (dictionary) {\n for (const language in dictionary) {\n const lang = language as SupportedLanguages\n for (const ns in dictionary[lang]) {\n // Adding resources overrides to i18next instance - initial load will override common namespace and add component specific dictionaries provided by partners\n SDKI18next.addResourceBundle(\n lang,\n ns,\n (dictionary[lang] as Record<string, unknown>)[ns],\n true,\n true,\n )\n }\n }\n }\n\n // Handle language change\n useEffect(() => {\n void (async () => {\n await SDKI18next.changeLanguage(lng)\n })()\n }, [lng])\n\n return (\n <ComponentsProvider value={components}>\n <LoadingIndicatorProvider value={LoaderComponent}>\n <ErrorBoundary FallbackComponent={InternalError}>\n <ThemeProvider theme={theme}>\n <LocaleProvider locale={locale} currency={currency}>\n <I18nextProvider i18n={SDKI18next} key={lng}>\n <ApiProvider url={config.baseUrl} headers={config.headers}>\n {children}\n </ApiProvider>\n </I18nextProvider>\n </LocaleProvider>\n </ThemeProvider>\n </ErrorBoundary>\n </LoadingIndicatorProvider>\n </ComponentsProvider>\n )\n}\n\nexport { GustoProviderCustomUIAdapter }\n"],"names":["GustoProviderCustomUIAdapter","props","children","config","dictionary","lng","locale","currency","theme","components","LoaderComponent","language","lang","ns","SDKI18next","useEffect","ComponentsProvider","jsx","LoadingIndicatorProvider","ErrorBoundary","InternalError","ThemeProvider","LocaleProvider","I18nextProvider","ApiProvider"],"mappings":";;;;;;;;;;;;AAyCA,MAAMA,IAA4E,CAASC,MAAA;AACnF,QAAA;AAAA,IACJ,UAAAC;AAAA,IACA,QAAAC;AAAA,IACA,YAAAC;AAAA,IACA,KAAAC,IAAM;AAAA,IACN,QAAAC,IAAS;AAAA,IACT,UAAAC,IAAW;AAAA,IACX,OAAAC;AAAA,IACA,YAAAC;AAAA,IACA,iBAAAC;AAAA,EAAA,IACET;AAGJ,MAAIG;AACF,eAAWO,KAAYP,GAAY;AACjC,YAAMQ,IAAOD;AACF,iBAAAE,KAAMT,EAAWQ,CAAI;AAEnB,QAAAE,EAAA;AAAA,UACTF;AAAA,UACAC;AAAA,UACCT,EAAWQ,CAAI,EAA8BC,CAAE;AAAA,UAChD;AAAA,UACA;AAAA,QACF;AAAA,IACF;AAKJ,SAAAE,EAAU,MAAM;AACd,KAAM,YACE,MAAAD,EAAW,eAAeT,CAAG;AAAA,EAClC,GACF,CAACA,CAAG,CAAC,qBAGLW,GAAmB,EAAA,OAAOP,GACzB,UAAA,gBAAAQ,EAACC,KAAyB,OAAOR,GAC/B,UAAC,gBAAAO,EAAAE,GAAA,EAAc,mBAAmBC,GAChC,UAAA,gBAAAH,EAACI,KAAc,OAAAb,GACb,UAAA,gBAAAS,EAACK,KAAe,QAAAhB,GAAgB,UAAAC,GAC9B,UAAC,gBAAAU,EAAAM,GAAA,EAAgB,MAAMT,GACrB,UAAA,gBAAAG,EAACO,GAAY,EAAA,KAAKrB,EAAO,SAAS,SAASA,EAAO,SAC/C,UAAAD,EACH,CAAA,EAHsC,GAAAG,CAIxC,GACF,EACF,CAAA,GACF,GACF,EACF,CAAA;AAEJ;"}
1
+ {"version":3,"file":"GustoProviderCustomUIAdapter.js","sources":["../../../src/contexts/GustoProvider/GustoProviderCustomUIAdapter.tsx"],"sourcesContent":["import type React from 'react'\nimport { ErrorBoundary } from 'react-error-boundary'\nimport { I18nextProvider } from 'react-i18next'\nimport type { QueryClient } from '@tanstack/react-query'\nimport { useEffect } from 'react'\nimport { ComponentsProvider } from '../ComponentAdapter/ComponentsProvider'\nimport type { ComponentsContextType } from '../ComponentAdapter/useComponentContext'\nimport { ApiProvider } from '../ApiProvider/ApiProvider'\nimport { LoadingIndicatorProvider } from '../LoadingIndicatorProvider/LoadingIndicatorProvider'\nimport type { LoadingIndicatorContextProps } from '../LoadingIndicatorProvider/useLoadingIndicator'\nimport { SDKI18next } from './SDKI18next'\nimport { InternalError } from '@/components/Common'\nimport { LocaleProvider } from '@/contexts/LocaleProvider'\nimport { ThemeProvider } from '@/contexts/ThemeProvider'\nimport type { GTheme } from '@/types/GTheme'\nimport type { DeepPartial, ResourceDictionary, SupportedLanguages } from '@/types/Helpers'\n\ninterface APIConfig {\n baseUrl: string\n headers?: HeadersInit\n}\n\nexport interface GustoProviderProps {\n config: APIConfig\n dictionary?: ResourceDictionary\n lng?: string\n locale?: string\n currency?: string\n theme?: DeepPartial<GTheme>\n queryClient?: QueryClient\n components: ComponentsContextType\n LoaderComponent?: LoadingIndicatorContextProps['LoadingIndicator']\n}\n\nexport interface GustoProviderCustomUIAdapterProps extends GustoProviderProps {\n children?: React.ReactNode\n}\n\n/**\n * A provider that accepts UI component adapters through the components prop\n */\nconst GustoProviderCustomUIAdapter: React.FC<GustoProviderCustomUIAdapterProps> = props => {\n const {\n children,\n config,\n dictionary,\n lng = 'en',\n locale = 'en-US',\n currency = 'USD',\n theme,\n components,\n LoaderComponent,\n } = props\n\n // Handle dictionary resources\n if (dictionary) {\n for (const language in dictionary) {\n const lang = language as SupportedLanguages\n for (const ns in dictionary[lang]) {\n // Adding resources overrides to i18next instance - initial load will override common namespace and add component specific dictionaries provided by partners\n SDKI18next.addResourceBundle(\n lang,\n ns,\n (dictionary[lang] as Record<string, unknown>)[ns],\n true,\n true,\n )\n }\n }\n }\n\n // Handle language change\n useEffect(() => {\n void (async () => {\n await SDKI18next.changeLanguage(lng)\n })()\n }, [lng])\n\n return (\n <ComponentsProvider value={components}>\n <LoadingIndicatorProvider value={LoaderComponent}>\n <ErrorBoundary FallbackComponent={InternalError}>\n <ThemeProvider theme={theme}>\n <LocaleProvider locale={locale} currency={currency}>\n <I18nextProvider i18n={SDKI18next} key={lng}>\n <ApiProvider url={config.baseUrl} headers={config.headers}>\n {children}\n </ApiProvider>\n </I18nextProvider>\n </LocaleProvider>\n </ThemeProvider>\n </ErrorBoundary>\n </LoadingIndicatorProvider>\n </ComponentsProvider>\n )\n}\n\nexport { GustoProviderCustomUIAdapter }\n"],"names":["GustoProviderCustomUIAdapter","props","children","config","dictionary","lng","locale","currency","theme","components","LoaderComponent","language","lang","ns","SDKI18next","useEffect","ComponentsProvider","jsx","LoadingIndicatorProvider","ErrorBoundary","InternalError","ThemeProvider","LocaleProvider","I18nextProvider","ApiProvider"],"mappings":";;;;;;;;;;;;;AAyCA,MAAMA,IAA4E,CAASC,MAAA;AACnF,QAAA;AAAA,IACJ,UAAAC;AAAA,IACA,QAAAC;AAAA,IACA,YAAAC;AAAA,IACA,KAAAC,IAAM;AAAA,IACN,QAAAC,IAAS;AAAA,IACT,UAAAC,IAAW;AAAA,IACX,OAAAC;AAAA,IACA,YAAAC;AAAA,IACA,iBAAAC;AAAA,EAAA,IACET;AAGJ,MAAIG;AACF,eAAWO,KAAYP,GAAY;AACjC,YAAMQ,IAAOD;AACF,iBAAAE,KAAMT,EAAWQ,CAAI;AAEnB,QAAAE,EAAA;AAAA,UACTF;AAAA,UACAC;AAAA,UACCT,EAAWQ,CAAI,EAA8BC,CAAE;AAAA,UAChD;AAAA,UACA;AAAA,QACF;AAAA,IACF;AAKJ,SAAAE,EAAU,MAAM;AACd,KAAM,YACE,MAAAD,EAAW,eAAeT,CAAG;AAAA,EAClC,GACF,CAACA,CAAG,CAAC,qBAGLW,GAAmB,EAAA,OAAOP,GACzB,UAAA,gBAAAQ,EAACC,KAAyB,OAAOR,GAC/B,UAAC,gBAAAO,EAAAE,GAAA,EAAc,mBAAmBC,GAChC,UAAA,gBAAAH,EAACI,KAAc,OAAAb,GACb,UAAA,gBAAAS,EAACK,KAAe,QAAAhB,GAAgB,UAAAC,GAC9B,UAAC,gBAAAU,EAAAM,GAAA,EAAgB,MAAMT,GACrB,UAAA,gBAAAG,EAACO,GAAY,EAAA,KAAKrB,EAAO,SAAS,SAASA,EAAO,SAC/C,UAAAD,EACH,CAAA,EAHsC,GAAAG,CAIxC,GACF,EACF,CAAA,GACF,GACF,EACF,CAAA;AAEJ;"}
package/dist/i18n/I18n.js CHANGED
@@ -5,7 +5,7 @@ const C = "common", s = new l(50), c = ({ lng: n = "en", ns: o }) => {
5
5
  let e = !0, t = !1, r;
6
6
  const i = (async () => {
7
7
  try {
8
- r = (await p(/* @__PURE__ */ Object.assign({ "./en/Company.AddBank.json": () => import("./en/Company.AddBank.json.js"), "./en/Company.Addresses.json": () => import("./en/Company.Addresses.json.js"), "./en/Company.AssignSignatory.json": () => import("./en/Company.AssignSignatory.json.js"), "./en/Company.BankAccount.json": () => import("./en/Company.BankAccount.json.js"), "./en/Company.DocumentList.json": () => import("./en/Company.DocumentList.json.js"), "./en/Company.FederalTaxes.json": () => import("./en/Company.FederalTaxes.json.js"), "./en/Company.Industry.json": () => import("./en/Company.Industry.json.js"), "./en/Company.Locations.json": () => import("./en/Company.Locations.json.js"), "./en/Company.OnboardingOverview.json": () => import("./en/Company.OnboardingOverview.json.js"), "./en/Company.PaySchedule.json": () => import("./en/Company.PaySchedule.json.js"), "./en/Company.SignatureForm.json": () => import("./en/Company.SignatureForm.json.js"), "./en/Company.StateTaxes.json": () => import("./en/Company.StateTaxes.json.js"), "./en/Contractor.Address.json": () => import("./en/Contractor.Address.json.js"), "./en/Contractor.ContractorList.json": () => import("./en/Contractor.ContractorList.json.js"), "./en/Contractor.NewHireReport.json": () => import("./en/Contractor.NewHireReport.json.js"), "./en/Contractor.PaymentMethod.json": () => import("./en/Contractor.PaymentMethod.json.js"), "./en/Employee.BankAccount.json": () => import("./en/Employee.BankAccount.json.js"), "./en/Employee.Compensation.json": () => import("./en/Employee.Compensation.json.js"), "./en/Employee.Deductions.json": () => import("./en/Employee.Deductions.json.js"), "./en/Employee.DocumentSigner.json": () => import("./en/Employee.DocumentSigner.json.js"), "./en/Employee.EmployeeList.json": () => import("./en/Employee.EmployeeList.json.js"), "./en/Employee.HomeAddress.json": () => import("./en/Employee.HomeAddress.json.js"), "./en/Employee.Landing.json": () => import("./en/Employee.Landing.json.js"), "./en/Employee.OnboardingSummary.json": () => import("./en/Employee.OnboardingSummary.json.js"), "./en/Employee.PaySchedules.json": () => import("./en/Employee.PaySchedules.json.js"), "./en/Employee.PaymentMethod.json": () => import("./en/Employee.PaymentMethod.json.js"), "./en/Employee.Profile.json": () => import("./en/Employee.Profile.json.js"), "./en/Employee.SplitPaycheck.json": () => import("./en/Employee.SplitPaycheck.json.js"), "./en/Employee.StateTaxes.json": () => import("./en/Employee.StateTaxes.json.js"), "./en/Employee.Taxes.json": () => import("./en/Employee.Taxes.json.js"), "./en/Payroll.PayrollHistoryList.json": () => import("./en/Payroll.PayrollHistoryList.json.js"), "./en/Payroll.PayrollSchedule.json": () => import("./en/Payroll.PayrollSchedule.json.js"), "./en/common.json": () => import("./en/common.json.js") }), `./${n}/${o}.json`, 3)).default, e = !1;
8
+ r = (await p(/* @__PURE__ */ Object.assign({ "./en/Company.AddBank.json": () => import("./en/Company.AddBank.json.js"), "./en/Company.Addresses.json": () => import("./en/Company.Addresses.json.js"), "./en/Company.AssignSignatory.json": () => import("./en/Company.AssignSignatory.json.js"), "./en/Company.BankAccount.json": () => import("./en/Company.BankAccount.json.js"), "./en/Company.DocumentList.json": () => import("./en/Company.DocumentList.json.js"), "./en/Company.FederalTaxes.json": () => import("./en/Company.FederalTaxes.json.js"), "./en/Company.Industry.json": () => import("./en/Company.Industry.json.js"), "./en/Company.Locations.json": () => import("./en/Company.Locations.json.js"), "./en/Company.OnboardingOverview.json": () => import("./en/Company.OnboardingOverview.json.js"), "./en/Company.PaySchedule.json": () => import("./en/Company.PaySchedule.json.js"), "./en/Company.SignatureForm.json": () => import("./en/Company.SignatureForm.json.js"), "./en/Company.StateTaxes.json": () => import("./en/Company.StateTaxes.json.js"), "./en/Contractor.Address.json": () => import("./en/Contractor.Address.json.js"), "./en/Contractor.ContractorList.json": () => import("./en/Contractor.ContractorList.json.js"), "./en/Contractor.ContractorSubmit.json": () => import("./en/Contractor.ContractorSubmit.json.js"), "./en/Contractor.NewHireReport.json": () => import("./en/Contractor.NewHireReport.json.js"), "./en/Contractor.PaymentMethod.json": () => import("./en/Contractor.PaymentMethod.json.js"), "./en/Contractor.Profile.json": () => import("./en/Contractor.Profile.json.js"), "./en/Employee.BankAccount.json": () => import("./en/Employee.BankAccount.json.js"), "./en/Employee.Compensation.json": () => import("./en/Employee.Compensation.json.js"), "./en/Employee.Deductions.json": () => import("./en/Employee.Deductions.json.js"), "./en/Employee.DocumentSigner.json": () => import("./en/Employee.DocumentSigner.json.js"), "./en/Employee.EmployeeList.json": () => import("./en/Employee.EmployeeList.json.js"), "./en/Employee.HomeAddress.json": () => import("./en/Employee.HomeAddress.json.js"), "./en/Employee.Landing.json": () => import("./en/Employee.Landing.json.js"), "./en/Employee.OnboardingSummary.json": () => import("./en/Employee.OnboardingSummary.json.js"), "./en/Employee.PaySchedules.json": () => import("./en/Employee.PaySchedules.json.js"), "./en/Employee.PaymentMethod.json": () => import("./en/Employee.PaymentMethod.json.js"), "./en/Employee.Profile.json": () => import("./en/Employee.Profile.json.js"), "./en/Employee.SplitPaycheck.json": () => import("./en/Employee.SplitPaycheck.json.js"), "./en/Employee.StateTaxes.json": () => import("./en/Employee.StateTaxes.json.js"), "./en/Employee.Taxes.json": () => import("./en/Employee.Taxes.json.js"), "./en/Payroll.PayrollHistoryList.json": () => import("./en/Payroll.PayrollHistoryList.json.js"), "./en/Payroll.PayrollSchedule.json": () => import("./en/Payroll.PayrollSchedule.json.js"), "./en/common.json": () => import("./en/common.json.js") }), `./${n}/${o}.json`, 3)).default, e = !1;
9
9
  } catch {
10
10
  t = !0, e = !1;
11
11
  }
@@ -1 +1 @@
1
- {"version":3,"file":"I18n.js","sources":["../../src/i18n/I18n.ts"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport type { CustomTypeOptions } from 'i18next'\nimport { LRUCache } from '@/helpers/LRUCache'\nimport type { ResourceDictionary, Resources } from '@/types/Helpers'\n\nexport const defaultNS = 'common'\n\n//LRU cache holding requested resources\nconst resourceCache = new LRUCache(50)\n/**\n * Dynamic loading of translation resources - works with Suspence to prevent early access to loadable strings\n * @param lng(string): resource language\n * @param ns(string): Namespace/name of the component/resource\n * @returns Promise<Translation resource>\n */\nconst loadResource = ({ lng = 'en', ns }: { ns: string; lng?: string }) => {\n let isLoading = true\n let isError = false\n let resource: Record<string, string>\n\n const importResources = async () => {\n try {\n const module = await import(`@/i18n/${lng}/${ns}.json`)\n\n resource = module.default\n isLoading = false\n } catch (err) {\n isError = true\n isLoading = false\n }\n }\n const promise = importResources()\n return () => {\n if (isLoading) {\n // eslint-disable-next-line @typescript-eslint/only-throw-error\n throw promise // Throw the promise to indicate Suspense should suspend.\n } else if (isError) {\n throw new Error(`Error loading translation for component: ${ns}`) // Handle error\n } else {\n return resource // Return the resource when loading is complete\n }\n }\n}\n\n/**\n * Hook that allows component to load custom dictionary\n * @param @private {string} ns - Namespace - should match component name exactly - not exposed to consumers\n */\nexport const useI18n = (ns: keyof CustomTypeOptions['resources'] | null) => {\n //Getting our instance of i18n -> supplied by the provider set in GustoApiProvider\n const { i18n: i18nInstance } = useTranslation()\n //Abort when namespace is not provided\n if (!ns) return\n const key = `${i18nInstance.resolvedLanguage}:${ns}`\n //Skip loading default resource if it is already in cache\n if (resourceCache.get(key) === null) {\n //If resource not in cache, initiate loading and add getter to cache\n resourceCache.put(key, loadResource({ lng: i18nInstance.resolvedLanguage, ns: ns }))\n }\n //Get resourceGetter from cache\n const resourceGetter = resourceCache.get(key)\n if (resourceGetter) {\n const resource = resourceGetter()\n i18nInstance.addResourceBundle(i18nInstance.resolvedLanguage ?? 'en', ns, resource, true, false) //Last argument is set to false to prevent override of keys provided by partners on GustoApiProvider level through dictionary prop\n }\n}\n\n//Used by individual components to override their dictionaries with partner provided resources\nexport const useComponentDictionary = <K extends keyof Resources>(\n ns: keyof CustomTypeOptions['resources'],\n resource?: ResourceDictionary<K> | null,\n) => {\n const { i18n: i18nInstance } = useTranslation()\n if (resource) {\n for (const lang in resource) {\n i18nInstance.addResourceBundle(lang, ns, resource[lang], true, true)\n }\n }\n}\n"],"names":["defaultNS","resourceCache","LRUCache","loadResource","lng","ns","isLoading","isError","resource","promise","__variableDynamicImportRuntimeHelper","useI18n","i18nInstance","useTranslation","key","resourceGetter","useComponentDictionary","lang"],"mappings":";;;AAKO,MAAMA,IAAY,UAGnBC,IAAgB,IAAIC,EAAS,EAAE,GAO/BC,IAAe,CAAC,EAAE,KAAAC,IAAM,MAAM,IAAAC,QAAuC;AACzE,MAAIC,IAAY,IACZC,IAAU,IACVC;AAaJ,QAAMC,KAXkB,YAAY;AAC9B,QAAA;AAGF,MAAAD,KAFe,MAAME,4yFAEH,SACNJ,IAAA;AAAA,YACA;AACF,MAAAC,IAAA,IACED,IAAA;AAAA,IAAA;AAAA,EAEhB,GACgC;AAChC,SAAO,MAAM;AACX,QAAIA;AAEI,YAAAG;QACGF;AACT,YAAM,IAAI,MAAM,4CAA4CF,CAAE,EAAE;AAEzD,WAAAG;AAAA,EAEX;AACF,GAMaG,IAAU,CAACN,MAAoD;AAE1E,QAAM,EAAE,MAAMO,EAAa,IAAIC,EAAe;AAE9C,MAAI,CAACR,EAAI;AACT,QAAMS,IAAM,GAAGF,EAAa,gBAAgB,IAAIP,CAAE;AAElD,EAAIJ,EAAc,IAAIa,CAAG,MAAM,QAEfb,EAAA,IAAIa,GAAKX,EAAa,EAAE,KAAKS,EAAa,kBAAkB,IAAAP,EAAO,CAAC,CAAC;AAG/E,QAAAU,IAAiBd,EAAc,IAAIa,CAAG;AAC5C,MAAIC,GAAgB;AAClB,UAAMP,IAAWO,EAAe;AAChC,IAAAH,EAAa,kBAAkBA,EAAa,oBAAoB,MAAMP,GAAIG,GAAU,IAAM,EAAK;AAAA,EAAA;AAEnG,GAGaQ,IAAyB,CACpCX,GACAG,MACG;AACH,QAAM,EAAE,MAAMI,EAAa,IAAIC,EAAe;AAC9C,MAAIL;AACF,eAAWS,KAAQT;AACjB,MAAAI,EAAa,kBAAkBK,GAAMZ,GAAIG,EAASS,CAAI,GAAG,IAAM,EAAI;AAGzE;"}
1
+ {"version":3,"file":"I18n.js","sources":["../../src/i18n/I18n.ts"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport type { CustomTypeOptions } from 'i18next'\nimport { LRUCache } from '@/helpers/LRUCache'\nimport type { ResourceDictionary, Resources } from '@/types/Helpers'\n\nexport const defaultNS = 'common'\n\n//LRU cache holding requested resources\nconst resourceCache = new LRUCache(50)\n/**\n * Dynamic loading of translation resources - works with Suspence to prevent early access to loadable strings\n * @param lng(string): resource language\n * @param ns(string): Namespace/name of the component/resource\n * @returns Promise<Translation resource>\n */\nconst loadResource = ({ lng = 'en', ns }: { ns: string; lng?: string }) => {\n let isLoading = true\n let isError = false\n let resource: Record<string, string>\n\n const importResources = async () => {\n try {\n const module = await import(`@/i18n/${lng}/${ns}.json`)\n\n resource = module.default\n isLoading = false\n } catch (err) {\n isError = true\n isLoading = false\n }\n }\n const promise = importResources()\n return () => {\n if (isLoading) {\n // eslint-disable-next-line @typescript-eslint/only-throw-error\n throw promise // Throw the promise to indicate Suspense should suspend.\n } else if (isError) {\n throw new Error(`Error loading translation for component: ${ns}`) // Handle error\n } else {\n return resource // Return the resource when loading is complete\n }\n }\n}\n\n/**\n * Hook that allows component to load custom dictionary\n * @param @private {string} ns - Namespace - should match component name exactly - not exposed to consumers\n */\nexport const useI18n = (ns: keyof CustomTypeOptions['resources'] | null) => {\n //Getting our instance of i18n -> supplied by the provider set in GustoApiProvider\n const { i18n: i18nInstance } = useTranslation()\n //Abort when namespace is not provided\n if (!ns) return\n const key = `${i18nInstance.resolvedLanguage}:${ns}`\n //Skip loading default resource if it is already in cache\n if (resourceCache.get(key) === null) {\n //If resource not in cache, initiate loading and add getter to cache\n resourceCache.put(key, loadResource({ lng: i18nInstance.resolvedLanguage, ns: ns }))\n }\n //Get resourceGetter from cache\n const resourceGetter = resourceCache.get(key)\n if (resourceGetter) {\n const resource = resourceGetter()\n i18nInstance.addResourceBundle(i18nInstance.resolvedLanguage ?? 'en', ns, resource, true, false) //Last argument is set to false to prevent override of keys provided by partners on GustoApiProvider level through dictionary prop\n }\n}\n\n//Used by individual components to override their dictionaries with partner provided resources\nexport const useComponentDictionary = <K extends keyof Resources>(\n ns: keyof CustomTypeOptions['resources'],\n resource?: ResourceDictionary<K> | null,\n) => {\n const { i18n: i18nInstance } = useTranslation()\n if (resource) {\n for (const lang in resource) {\n i18nInstance.addResourceBundle(lang, ns, resource[lang], true, true)\n }\n }\n}\n"],"names":["defaultNS","resourceCache","LRUCache","loadResource","lng","ns","isLoading","isError","resource","promise","__variableDynamicImportRuntimeHelper","useI18n","i18nInstance","useTranslation","key","resourceGetter","useComponentDictionary","lang"],"mappings":";;;AAKO,MAAMA,IAAY,UAGnBC,IAAgB,IAAIC,EAAS,EAAE,GAO/BC,IAAe,CAAC,EAAE,KAAAC,IAAM,MAAM,IAAAC,QAAuC;AACzE,MAAIC,IAAY,IACZC,IAAU,IACVC;AAaJ,QAAMC,KAXkB,YAAY;AAC9B,QAAA;AAGF,MAAAD,KAFe,MAAME,g+FAEH,SACNJ,IAAA;AAAA,YACA;AACF,MAAAC,IAAA,IACED,IAAA;AAAA,IAAA;AAAA,EAEhB,GACgC;AAChC,SAAO,MAAM;AACX,QAAIA;AAEI,YAAAG;QACGF;AACT,YAAM,IAAI,MAAM,4CAA4CF,CAAE,EAAE;AAEzD,WAAAG;AAAA,EAEX;AACF,GAMaG,IAAU,CAACN,MAAoD;AAE1E,QAAM,EAAE,MAAMO,EAAa,IAAIC,EAAe;AAE9C,MAAI,CAACR,EAAI;AACT,QAAMS,IAAM,GAAGF,EAAa,gBAAgB,IAAIP,CAAE;AAElD,EAAIJ,EAAc,IAAIa,CAAG,MAAM,QAEfb,EAAA,IAAIa,GAAKX,EAAa,EAAE,KAAKS,EAAa,kBAAkB,IAAAP,EAAO,CAAC,CAAC;AAG/E,QAAAU,IAAiBd,EAAc,IAAIa,CAAG;AAC5C,MAAIC,GAAgB;AAClB,UAAMP,IAAWO,EAAe;AAChC,IAAAH,EAAa,kBAAkBA,EAAa,oBAAoB,MAAMP,GAAIG,GAAU,IAAM,EAAK;AAAA,EAAA;AAEnG,GAGaQ,IAAyB,CACpCX,GACAG,MACG;AACH,QAAM,EAAE,MAAMI,EAAa,IAAIC,EAAe;AAC9C,MAAIL;AACF,eAAWS,KAAQT;AACjB,MAAAI,EAAa,kBAAkBK,GAAMZ,GAAIG,EAASS,CAAI,GAAG,IAAM,EAAI;AAGzE;"}
@@ -0,0 +1,22 @@
1
+ const t = "Contractor Onboarded", e = "This contractor has been successfully onboarded.", n = "Done", o = "Submit and complete onboarding", a = "Please note that after submitting", s = [
2
+ "The contractor type cannot be changed.",
3
+ "The new hire report cannot be modified.",
4
+ "This contractor has unsigned documents and will need to manually complete and submit those documents to you separately."
5
+ ], c = {
6
+ doneTitle: t,
7
+ doneText: e,
8
+ doneCTA: n,
9
+ submitCTA: o,
10
+ title: a,
11
+ warningItems: s
12
+ };
13
+ export {
14
+ c as default,
15
+ n as doneCTA,
16
+ e as doneText,
17
+ t as doneTitle,
18
+ o as submitCTA,
19
+ a as title,
20
+ s as warningItems
21
+ };
22
+ //# sourceMappingURL=Contractor.ContractorSubmit.json.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Contractor.ContractorSubmit.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
@@ -0,0 +1,73 @@
1
+ const e = "Contractor profile", t = "This information will be used for payments and on tax documents, so double-check that it's accurate.", a = {
2
+ inviteContractor: {
3
+ label: "Invite this contractor to enter some of their own details online",
4
+ description: "Your contractor will be invited to enter their information on their own time."
5
+ },
6
+ email: {
7
+ label: "Contractor's email address"
8
+ },
9
+ contractorType: {
10
+ label: "Type"
11
+ },
12
+ firstName: {
13
+ label: "First Name"
14
+ },
15
+ lastName: {
16
+ label: "Last Name"
17
+ },
18
+ middleInitial: {
19
+ label: "Middle Initial"
20
+ },
21
+ ssn: {
22
+ label: "Social Security Number",
23
+ placeholder: "XXX-XX-XXXX"
24
+ },
25
+ businessName: {
26
+ label: "Business Name"
27
+ },
28
+ startDate: {
29
+ label: "Start Date",
30
+ description: "Your contractor's first day of work at your company"
31
+ },
32
+ wageType: {
33
+ label: "Wage Type"
34
+ },
35
+ hourlyRate: {
36
+ label: "Hourly Rate"
37
+ },
38
+ ein: {
39
+ label: "EIN",
40
+ placeholder: "XX-XXXXXXX"
41
+ }
42
+ }, r = {
43
+ email: "Email is required when inviting contractor",
44
+ firstName: "First name is required for individual contractors",
45
+ lastName: "Last name is required for individual contractors",
46
+ ssn: "SSN is required for individual contractors",
47
+ ssnFormat: "SSN must be valid format",
48
+ businessName: "Business name is required for business contractors",
49
+ ein: "EIN is required for business contractors",
50
+ einFormat: "EIN must be valid format (XX-XXXXXXX)",
51
+ hourlyRate: "Hourly rate is required for hourly contractors"
52
+ }, i = {
53
+ cancel: "Cancel",
54
+ create: "Create Contractor",
55
+ update: "Update Contractor",
56
+ creating: "Creating...",
57
+ updating: "Updating..."
58
+ }, o = {
59
+ title: e,
60
+ subtitle: t,
61
+ fields: a,
62
+ validations: r,
63
+ buttons: i
64
+ };
65
+ export {
66
+ i as buttons,
67
+ o as default,
68
+ a as fields,
69
+ t as subtitle,
70
+ e as title,
71
+ r as validations
72
+ };
73
+ //# sourceMappingURL=Contractor.Profile.json.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Contractor.Profile.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -84,6 +84,13 @@ export declare const contractorEvents: {
84
84
  readonly CONTRACTOR_PAYMENT_METHOD_UPDATED: "contractor/paymentMethod/updated";
85
85
  readonly CONTRACTOR_BANK_ACCOUNT_CREATED: "contractor/bankAccount/created";
86
86
  readonly CONTRACTOR_PAYMENT_METHOD_DONE: "contractor/paymentMethod/done";
87
+ readonly CONTRACTOR_CREATE: "contractor/create";
88
+ readonly CONTRACTOR_CREATED: "contractor/created";
89
+ readonly CONTRACTOR_UPDATE: "contractor/update";
90
+ readonly CONTRACTOR_UPDATED: "contractor/updated";
91
+ readonly CONTRACTOR_DELETED: "contractor/deleted";
92
+ readonly CONTRACTOR_PROFILE_DONE: "contractor/profile/done";
93
+ readonly CONTRACTOR_PROFILE_SUBMITTED: "contractor/profile/submitted";
87
94
  readonly CONTRACTOR_NEW_HIRE_REPORT_UPDATED: "contractor/newHireReport/updated";
88
95
  readonly CONTRACTOR_NEW_HIRE_REPORT_DONE: "contractor/newHireReport/done";
89
96
  };
@@ -102,6 +109,13 @@ export declare const componentEvents: {
102
109
  readonly CONTRACTOR_PAYMENT_METHOD_UPDATED: "contractor/paymentMethod/updated";
103
110
  readonly CONTRACTOR_BANK_ACCOUNT_CREATED: "contractor/bankAccount/created";
104
111
  readonly CONTRACTOR_PAYMENT_METHOD_DONE: "contractor/paymentMethod/done";
112
+ readonly CONTRACTOR_CREATE: "contractor/create";
113
+ readonly CONTRACTOR_CREATED: "contractor/created";
114
+ readonly CONTRACTOR_UPDATE: "contractor/update";
115
+ readonly CONTRACTOR_UPDATED: "contractor/updated";
116
+ readonly CONTRACTOR_DELETED: "contractor/deleted";
117
+ readonly CONTRACTOR_PROFILE_DONE: "contractor/profile/done";
118
+ readonly CONTRACTOR_PROFILE_SUBMITTED: "contractor/profile/submitted";
105
119
  readonly CONTRACTOR_NEW_HIRE_REPORT_UPDATED: "contractor/newHireReport/updated";
106
120
  readonly CONTRACTOR_NEW_HIRE_REPORT_DONE: "contractor/newHireReport/done";
107
121
  readonly PAY_SCHEDULE_CREATE: "paySchedule/create";