@gusto/embedded-react-sdk 0.33.0 → 0.35.0-rc.1

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 (354) hide show
  1. package/CHANGELOG.md +63 -0
  2. package/dist/components/Base/Base.d.ts +6 -2
  3. package/dist/components/Base/Base.js +105 -59
  4. package/dist/components/Base/Base.js.map +1 -1
  5. package/dist/components/Base/useBase.d.ts +1 -0
  6. package/dist/components/Base/useBase.js.map +1 -1
  7. package/dist/components/Base/useBaseSubmit.d.ts +1 -1
  8. package/dist/components/Base/useBaseSubmit.js +60 -33
  9. package/dist/components/Base/useBaseSubmit.js.map +1 -1
  10. package/dist/components/Common/Fields/MultiSelectComboBoxField/MultiSelectComboBoxField.d.ts +5 -0
  11. package/dist/components/Common/Fields/MultiSelectComboBoxField/MultiSelectComboBoxField.js +34 -0
  12. package/dist/components/Common/Fields/MultiSelectComboBoxField/MultiSelectComboBoxField.js.map +1 -0
  13. package/dist/components/Common/Fields/MultiSelectComboBoxField/index.d.ts +2 -0
  14. package/dist/components/Common/HamburgerMenu/HamburgerMenu.d.ts +1 -1
  15. package/dist/components/Common/HamburgerMenu/HamburgerMenu.js +15 -13
  16. package/dist/components/Common/HamburgerMenu/HamburgerMenu.js.map +1 -1
  17. package/dist/components/Common/HamburgerMenu/HamburgerMenuTypes.d.ts +1 -0
  18. package/dist/components/Common/SignatureForm/SignatureForm.d.ts +1 -7
  19. package/dist/components/Common/SignatureForm/SignatureForm.js +12 -11
  20. package/dist/components/Common/SignatureForm/SignatureForm.js.map +1 -1
  21. package/dist/components/Common/SignatureForm/SignatureFormActions.js +1 -1
  22. package/dist/components/Common/SignatureForm/SignatureFormFields.js +1 -1
  23. package/dist/components/Common/UI/Menu/Menu.js +24 -24
  24. package/dist/components/Common/UI/Menu/Menu.js.map +1 -1
  25. package/dist/components/Common/UI/Menu/Menu.module.scss.js +7 -7
  26. package/dist/components/Common/UI/Menu/MenuTypes.d.ts +5 -0
  27. package/dist/components/Common/UI/Menu/MenuTypes.js +4 -3
  28. package/dist/components/Common/UI/Menu/MenuTypes.js.map +1 -1
  29. package/dist/components/Common/UI/MultiSelectComboBox/MultiSelectComboBox.d.ts +2 -0
  30. package/dist/components/Common/UI/MultiSelectComboBox/MultiSelectComboBox.js +127 -0
  31. package/dist/components/Common/UI/MultiSelectComboBox/MultiSelectComboBox.js.map +1 -0
  32. package/dist/components/Common/UI/MultiSelectComboBox/MultiSelectComboBox.module.scss.js +16 -0
  33. package/dist/components/Common/UI/MultiSelectComboBox/MultiSelectComboBox.module.scss.js.map +1 -0
  34. package/dist/components/Common/{MultiSelectComboBox → UI/MultiSelectComboBox}/MultiSelectComboBoxTypes.d.ts +6 -5
  35. package/dist/components/Common/UI/Table/Table.module.scss.js +1 -1
  36. package/dist/components/Common/index.d.ts +1 -0
  37. package/dist/components/Company/AssignSignatory/AssignSignatory.js +1 -1
  38. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js +1 -1
  39. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js +5 -6
  40. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js.map +1 -1
  41. package/dist/components/Company/AssignSignatory/CreateSignatory/Schema.d.ts +4 -30
  42. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +1 -1
  43. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js +1 -1
  44. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.d.ts +2 -26
  45. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js +4 -5
  46. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js.map +1 -1
  47. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +1 -1
  48. package/dist/components/Company/AssignSignatory/useAssignSignatory.js +1 -1
  49. package/dist/components/Company/BankAccount/BankAccountForm/Form.d.ts +1 -7
  50. package/dist/components/Company/BankAccount/BankAccountForm/Form.js +5 -4
  51. package/dist/components/Company/BankAccount/BankAccountForm/Form.js.map +1 -1
  52. package/dist/components/Company/BankAccount/BankAccountForm/context.js +1 -1
  53. package/dist/components/Company/BankAccount/BankAccountVerify/Form.d.ts +1 -7
  54. package/dist/components/Company/BankAccount/BankAccountVerify/Form.js +5 -4
  55. package/dist/components/Company/BankAccount/BankAccountVerify/Form.js.map +1 -1
  56. package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js +2 -2
  57. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +1 -1
  58. package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js +2 -2
  59. package/dist/components/Company/DocumentSigner/SignatureForm/useSignatureForm.js +1 -1
  60. package/dist/components/Company/FederalTaxes/FederalTaxes.js +2 -2
  61. package/dist/components/Company/FederalTaxes/Form.js +3 -2
  62. package/dist/components/Company/FederalTaxes/Form.js.map +1 -1
  63. package/dist/components/Company/FederalTaxes/useFederalTaxes.d.ts +7 -13
  64. package/dist/components/Company/FederalTaxes/useFederalTaxes.js +1 -1
  65. package/dist/components/Company/Industry/Context.js +1 -1
  66. package/dist/components/Company/Locations/LocationForm/Form.d.ts +7 -20
  67. package/dist/components/Company/Locations/LocationForm/Form.js +4 -5
  68. package/dist/components/Company/Locations/LocationForm/Form.js.map +1 -1
  69. package/dist/components/Company/Locations/LocationForm/LocationForm.js +2 -2
  70. package/dist/components/Company/Locations/LocationForm/useLocationForm.js +1 -1
  71. package/dist/components/Company/Locations/LocationsList/LocationsList.js +2 -2
  72. package/dist/components/Company/Locations/LocationsList/useLocationsList.js +1 -1
  73. package/dist/components/Company/OnboardingOverview/Completed.js +3 -2
  74. package/dist/components/Company/OnboardingOverview/Completed.js.map +1 -1
  75. package/dist/components/Company/OnboardingOverview/MissingRequirements.js +6 -5
  76. package/dist/components/Company/OnboardingOverview/MissingRequirements.js.map +1 -1
  77. package/dist/components/Company/OnboardingOverview/OnboardingOverview.js +2 -2
  78. package/dist/components/Company/OnboardingOverview/context.js +1 -1
  79. package/dist/components/Company/PaySchedule/PaySchedule.js +2 -2
  80. package/dist/components/Company/PaySchedule/_parts/Edit.js +9 -10
  81. package/dist/components/Company/PaySchedule/_parts/Edit.js.map +1 -1
  82. package/dist/components/Company/PaySchedule/_parts/Head.js +9 -8
  83. package/dist/components/Company/PaySchedule/_parts/Head.js.map +1 -1
  84. package/dist/components/Company/PaySchedule/_parts/List.js +12 -11
  85. package/dist/components/Company/PaySchedule/_parts/List.js.map +1 -1
  86. package/dist/components/Company/PaySchedule/usePaySchedule.d.ts +7 -18
  87. package/dist/components/Company/PaySchedule/usePaySchedule.js +1 -1
  88. package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.js.map +1 -1
  89. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +1 -1
  90. package/dist/components/Company/StateTaxes/StateTaxesList/context.js +1 -1
  91. package/dist/components/Contractor/Address/Address.js +2 -2
  92. package/dist/components/Contractor/Address/Form.js +6 -7
  93. package/dist/components/Contractor/Address/Form.js.map +1 -1
  94. package/dist/components/Contractor/Address/useAddress.d.ts +1 -13
  95. package/dist/components/Contractor/Address/useAddress.js +1 -1
  96. package/dist/components/Contractor/ContractorList/index.js +17 -17
  97. package/dist/components/Contractor/ContractorList/useContractorList.js +4 -4
  98. package/dist/components/Contractor/ContractorList/useContractorList.js.map +1 -1
  99. package/dist/components/Contractor/NewHireReport/NewHireReport.d.ts +5 -15
  100. package/dist/components/Contractor/NewHireReport/NewHireReport.js +28 -28
  101. package/dist/components/Contractor/NewHireReport/NewHireReport.js.map +1 -1
  102. package/dist/components/Contractor/PaymentMethod/PaymentMethod.d.ts +7 -20
  103. package/dist/components/Contractor/PaymentMethod/PaymentTypeForm.d.ts +5 -6
  104. package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js +119 -113
  105. package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js.map +1 -1
  106. package/dist/components/Contractor/Payments/CreatePayment/CreatePaymentPresentation.js +3 -2
  107. package/dist/components/Contractor/Payments/CreatePayment/CreatePaymentPresentation.js.map +1 -1
  108. package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentFormSchema.d.ts +19 -67
  109. package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentPresentation.js +2 -3
  110. package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentPresentation.js.map +1 -1
  111. package/dist/components/Contractor/Payments/CreatePayment/FastAchSubmissionBlockerBanner.js +18 -17
  112. package/dist/components/Contractor/Payments/CreatePayment/FastAchSubmissionBlockerBanner.js.map +1 -1
  113. package/dist/components/Contractor/Payments/CreatePayment/PreviewPresentation.js +1 -1
  114. package/dist/components/Contractor/Payments/PaymentFlow/PaymentFlowComponents.js +27 -26
  115. package/dist/components/Contractor/Payments/PaymentFlow/PaymentFlowComponents.js.map +1 -1
  116. package/dist/components/Contractor/Payments/PaymentFlow/paymentStateMachine.js +76 -44
  117. package/dist/components/Contractor/Payments/PaymentFlow/paymentStateMachine.js.map +1 -1
  118. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistory.js +1 -1
  119. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistory.js.map +1 -1
  120. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistoryPresentation.js +3 -2
  121. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistoryPresentation.js.map +1 -1
  122. package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatement.js +1 -1
  123. package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatement.js.map +1 -1
  124. package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatementPresentation.js +7 -6
  125. package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatementPresentation.js.map +1 -1
  126. package/dist/components/Contractor/Payments/PaymentSummary/PaymentSummary.d.ts +3 -1
  127. package/dist/components/Contractor/Payments/PaymentSummary/PaymentSummary.js +28 -22
  128. package/dist/components/Contractor/Payments/PaymentSummary/PaymentSummary.js.map +1 -1
  129. package/dist/components/Contractor/Payments/PaymentSummary/PaymentSummaryPresentation.d.ts +3 -1
  130. package/dist/components/Contractor/Payments/PaymentSummary/PaymentSummaryPresentation.js +66 -54
  131. package/dist/components/Contractor/Payments/PaymentSummary/PaymentSummaryPresentation.js.map +1 -1
  132. package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.js +3 -2
  133. package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.js.map +1 -1
  134. package/dist/components/Contractor/Profile/useContractorProfile.d.ts +54 -120
  135. package/dist/components/Contractor/Profile/useContractorProfile.js +50 -49
  136. package/dist/components/Contractor/Profile/useContractorProfile.js.map +1 -1
  137. package/dist/components/Contractor/Submit/Submit.js +1 -1
  138. package/dist/components/Employee/Compensation/Edit.js +70 -70
  139. package/dist/components/Employee/Compensation/Edit.js.map +1 -1
  140. package/dist/components/Employee/Compensation/useCompensation.d.ts +17 -44
  141. package/dist/components/Employee/Deductions/DeductionsForm/ChildSupportForm.d.ts +4 -22
  142. package/dist/components/Employee/Deductions/DeductionsForm/ChildSupportForm.js +61 -61
  143. package/dist/components/Employee/Deductions/DeductionsForm/ChildSupportForm.js.map +1 -1
  144. package/dist/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.d.ts +4 -22
  145. package/dist/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.js +34 -34
  146. package/dist/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.js.map +1 -1
  147. package/dist/components/Employee/Deductions/DeductionsForm/GarnishmentForm.d.ts +5 -27
  148. package/dist/components/Employee/Deductions/DeductionsForm/GarnishmentForm.js +47 -47
  149. package/dist/components/Employee/Deductions/DeductionsForm/GarnishmentForm.js.map +1 -1
  150. package/dist/components/Employee/Deductions/DeductionsList/DeductionsList.js +1 -1
  151. package/dist/components/Employee/Deductions/IncludeDeductions/IncludeDeductions.js +2 -3
  152. package/dist/components/Employee/Deductions/IncludeDeductions/IncludeDeductions.js.map +1 -1
  153. package/dist/components/Employee/Deductions/useDeductions.d.ts +7 -26
  154. package/dist/components/Employee/DocumentSigner/DocumentList/DocumentList.js +1 -1
  155. package/dist/components/Employee/DocumentSigner/DocumentList/List.js +3 -2
  156. package/dist/components/Employee/DocumentSigner/DocumentList/List.js.map +1 -1
  157. package/dist/components/Employee/DocumentSigner/DocumentList/useDocumentList.js +1 -1
  158. package/dist/components/Employee/DocumentSigner/EmploymentEligibility/EmploymentEligibilityPresentation.js +3 -2
  159. package/dist/components/Employee/DocumentSigner/EmploymentEligibility/EmploymentEligibilityPresentation.js.map +1 -1
  160. package/dist/components/Employee/DocumentSigner/EmploymentEligibility/EmploymentEligibilitySchema.d.ts +5 -29
  161. package/dist/components/Employee/DocumentSigner/EmploymentEligibility/EmploymentEligibilitySchema.js +8 -8
  162. package/dist/components/Employee/DocumentSigner/EmploymentEligibility/EmploymentEligibilitySchema.js.map +1 -1
  163. package/dist/components/Employee/DocumentSigner/I9SignatureForm/I9SignatureForm.d.ts +9 -76
  164. package/dist/components/Employee/DocumentSigner/SignatureForm/Form.js +5 -5
  165. package/dist/components/Employee/DocumentSigner/SignatureForm/Form.js.map +1 -1
  166. package/dist/components/Employee/DocumentSigner/SignatureForm/Preview.js +8 -8
  167. package/dist/components/Employee/DocumentSigner/SignatureForm/Preview.js.map +1 -1
  168. package/dist/components/Employee/DocumentSigner/SignatureForm/SignatureForm.js +1 -1
  169. package/dist/components/Employee/DocumentSigner/SignatureForm/useSignatureForm.js +1 -1
  170. package/dist/components/Employee/EmployeeDocuments/EmployeeDocumentsPresentation.d.ts +1 -5
  171. package/dist/components/Employee/EmployeeDocuments/EmployeeDocumentsPresentation.js +3 -2
  172. package/dist/components/Employee/EmployeeDocuments/EmployeeDocumentsPresentation.js.map +1 -1
  173. package/dist/components/Employee/EmployeeList/EmployeeList.js +4 -3
  174. package/dist/components/Employee/EmployeeList/EmployeeList.js.map +1 -1
  175. package/dist/components/Employee/EmployeeList/Head.js +3 -2
  176. package/dist/components/Employee/EmployeeList/Head.js.map +1 -1
  177. package/dist/components/Employee/EmployeeList/useEmployeeList.js +1 -1
  178. package/dist/components/Employee/FederalTaxes/FederalForm.d.ts +7 -33
  179. package/dist/components/Employee/FederalTaxes/useFederalTaxes.js +1 -1
  180. package/dist/components/Employee/Landing/Landing.js +8 -8
  181. package/dist/components/Employee/OnboardingSummary/OnboardingSummary.js +7 -7
  182. package/dist/components/Employee/PaymentMethod/BankAccount.d.ts +5 -14
  183. package/dist/components/Employee/PaymentMethod/PaymentTypeForm.d.ts +5 -6
  184. package/dist/components/Employee/PaymentMethod/usePaymentMethod.d.ts +12 -68
  185. package/dist/components/Employee/PaymentMethod/usePaymentMethod.js +17 -16
  186. package/dist/components/Employee/PaymentMethod/usePaymentMethod.js.map +1 -1
  187. package/dist/components/Employee/Profile/AdminPersonalDetails.d.ts +17 -82
  188. package/dist/components/Employee/Profile/AdminPersonalDetails.js +38 -33
  189. package/dist/components/Employee/Profile/AdminPersonalDetails.js.map +1 -1
  190. package/dist/components/Employee/Profile/HomeAddress.d.ts +11 -66
  191. package/dist/components/Employee/Profile/HomeAddress.js +8 -9
  192. package/dist/components/Employee/Profile/HomeAddress.js.map +1 -1
  193. package/dist/components/Employee/Profile/PersonalDetailsInputs.d.ts +15 -64
  194. package/dist/components/Employee/Profile/PersonalDetailsInputs.js +31 -28
  195. package/dist/components/Employee/Profile/PersonalDetailsInputs.js.map +1 -1
  196. package/dist/components/Employee/Profile/Profile.js +2 -5
  197. package/dist/components/Employee/Profile/Profile.js.map +1 -1
  198. package/dist/components/Employee/Profile/SelfPersonalDetails.d.ts +8 -37
  199. package/dist/components/Employee/Profile/SelfPersonalDetails.js +22 -19
  200. package/dist/components/Employee/Profile/SelfPersonalDetails.js.map +1 -1
  201. package/dist/components/Employee/Profile/useProfile.js +1 -1
  202. package/dist/components/Employee/StateTaxes/StateForm.d.ts +1 -5
  203. package/dist/components/Employee/StateTaxes/StateTaxes.js +69 -61
  204. package/dist/components/Employee/StateTaxes/StateTaxes.js.map +1 -1
  205. package/dist/components/Employee/StateTaxes/useStateTaxes.js +1 -1
  206. package/dist/components/Employee/Taxes/FederalForm.d.ts +7 -33
  207. package/dist/components/Employee/Taxes/StateForm.d.ts +1 -5
  208. package/dist/components/Employee/Taxes/useTaxes.js +1 -1
  209. package/dist/components/Flow/Flow.js +3 -2
  210. package/dist/components/Flow/Flow.js.map +1 -1
  211. package/dist/components/InformationRequests/InformationRequestForm/InformationRequestForm.js +9 -9
  212. package/dist/components/InformationRequests/InformationRequestList/InformationRequestList.js +4 -4
  213. package/dist/components/InformationRequests/InformationRequests.js +1 -1
  214. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/ConfirmWireDetailsForm.d.ts +1 -11
  215. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/ConfirmWireDetailsForm.js +1 -1
  216. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/ConfirmWireDetailsForm.js.map +1 -1
  217. package/dist/components/Payroll/GrossUpModal/GrossUpModal.d.ts +2 -0
  218. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js +101 -0
  219. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js.map +1 -0
  220. package/dist/components/Payroll/GrossUpModal/GrossUpModal.module.scss.js +16 -0
  221. package/dist/components/Payroll/GrossUpModal/GrossUpModal.module.scss.js.map +1 -0
  222. package/dist/components/Payroll/GrossUpModal/GrossUpModalTypes.d.ts +7 -0
  223. package/dist/components/Payroll/GrossUpModal/index.d.ts +3 -0
  224. package/dist/components/Payroll/OffCycle/OffCycleFlowComponents.js +6 -9
  225. package/dist/components/Payroll/OffCycle/OffCycleFlowComponents.js.map +1 -1
  226. package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js +104 -57
  227. package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js.map +1 -1
  228. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.d.ts +1 -1
  229. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.js +93 -24
  230. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.js.map +1 -1
  231. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationTypes.d.ts +11 -0
  232. package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormTypes.d.ts +2 -22
  233. package/dist/components/Payroll/OffCycleTaxWithholdingModal/OffCycleTaxWithholdingModal.js +102 -0
  234. package/dist/components/Payroll/OffCycleTaxWithholdingModal/OffCycleTaxWithholdingModal.js.map +1 -0
  235. package/dist/components/Payroll/OffCycleTaxWithholdingModal/OffCycleTaxWithholdingModal.module.scss.js +14 -0
  236. package/dist/components/Payroll/OffCycleTaxWithholdingModal/OffCycleTaxWithholdingModal.module.scss.js.map +1 -0
  237. package/dist/components/Payroll/OffCycleTaxWithholdingTable/OffCycleTaxWithholdingTable.js +52 -0
  238. package/dist/components/Payroll/OffCycleTaxWithholdingTable/OffCycleTaxWithholdingTable.js.map +1 -0
  239. package/dist/components/Payroll/OffCycleTaxWithholdingTable/OffCycleTaxWithholdingTable.module.scss.js +16 -0
  240. package/dist/components/Payroll/OffCycleTaxWithholdingTable/OffCycleTaxWithholdingTable.module.scss.js.map +1 -0
  241. package/dist/components/Payroll/OffCycleTaxWithholdingTable/OffCycleTaxWithholdingTableTypes.d.ts +12 -2
  242. package/dist/components/Payroll/OffCycleTaxWithholdingTable/OffCycleTaxWithholdingTableTypes.js +15 -0
  243. package/dist/components/Payroll/OffCycleTaxWithholdingTable/OffCycleTaxWithholdingTableTypes.js.map +1 -0
  244. package/dist/components/Payroll/OffCycleTaxWithholdingTable/index.d.ts +2 -1
  245. package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerAlerts.js +3 -2
  246. package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerAlerts.js.map +1 -1
  247. package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerList.js +12 -12
  248. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js +212 -120
  249. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js.map +1 -1
  250. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.d.ts +3 -1
  251. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js +88 -77
  252. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js.map +1 -1
  253. package/dist/components/Payroll/PayrollConfiguration/grossUpHelpers.d.ts +2 -0
  254. package/dist/components/Payroll/PayrollConfiguration/grossUpHelpers.js +11 -0
  255. package/dist/components/Payroll/PayrollConfiguration/grossUpHelpers.js.map +1 -0
  256. package/dist/components/Payroll/PayrollConfiguration/usePayrollConfigurationData.js +67 -57
  257. package/dist/components/Payroll/PayrollConfiguration/usePayrollConfigurationData.js.map +1 -1
  258. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js +5 -5
  259. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js.map +1 -1
  260. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.d.ts +2 -12
  261. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js +36 -37
  262. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js.map +1 -1
  263. package/dist/components/Payroll/PayrollEditEmployee/TimeOffField.js +13 -12
  264. package/dist/components/Payroll/PayrollEditEmployee/TimeOffField.js.map +1 -1
  265. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js +3 -2
  266. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js.map +1 -1
  267. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js +3 -2
  268. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js.map +1 -1
  269. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js +2 -3
  270. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js.map +1 -1
  271. package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchSubmissionBlockerBanner.js +8 -7
  272. package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchSubmissionBlockerBanner.js.map +1 -1
  273. package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.js +3 -2
  274. package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.js.map +1 -1
  275. package/dist/components/Payroll/RecoveryCases/RecoveryCasesList/RecoveryCasesList.js +1 -1
  276. package/dist/components/Payroll/RecoveryCases/RecoveryCasesResubmit/RecoveryCasesResubmit.js +6 -6
  277. package/dist/components/Payroll/RecoveryCases/useRecoveryCaseErrorCode.js +3 -2
  278. package/dist/components/Payroll/RecoveryCases/useRecoveryCaseErrorCode.js.map +1 -1
  279. package/dist/components/Payroll/usePreparedPayrollData.js +47 -46
  280. package/dist/components/Payroll/usePreparedPayrollData.js.map +1 -1
  281. package/dist/contexts/ApiProvider/ApiProvider.js +26 -25
  282. package/dist/contexts/ApiProvider/ApiProvider.js.map +1 -1
  283. package/dist/contexts/ApiProvider/apiVersionHook.d.ts +2 -0
  284. package/dist/contexts/ApiProvider/apiVersionHook.js +7 -0
  285. package/dist/contexts/ApiProvider/apiVersionHook.js.map +1 -0
  286. package/dist/contexts/ApiProvider/apiVersionHook.test.d.ts +1 -0
  287. package/dist/contexts/ComponentAdapter/adapters/defaultComponentAdapter.js +60 -58
  288. package/dist/contexts/ComponentAdapter/adapters/defaultComponentAdapter.js.map +1 -1
  289. package/dist/contexts/ComponentAdapter/useComponentContext.d.ts +2 -0
  290. package/dist/contexts/ComponentAdapter/useComponentContext.js.map +1 -1
  291. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.d.ts +2 -0
  292. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js +58 -39
  293. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js.map +1 -1
  294. package/dist/contexts/ObservabilityProvider/ObservabilityContext.d.ts +5 -0
  295. package/dist/contexts/ObservabilityProvider/ObservabilityContext.js +6 -0
  296. package/dist/contexts/ObservabilityProvider/ObservabilityContext.js.map +1 -0
  297. package/dist/contexts/ObservabilityProvider/ObservabilityProvider.d.ts +7 -0
  298. package/dist/contexts/ObservabilityProvider/ObservabilityProvider.js +11 -0
  299. package/dist/contexts/ObservabilityProvider/ObservabilityProvider.js.map +1 -0
  300. package/dist/contexts/ObservabilityProvider/index.d.ts +5 -0
  301. package/dist/contexts/ObservabilityProvider/observabilityUtils.d.ts +5 -0
  302. package/dist/contexts/ObservabilityProvider/observabilityUtils.js +45 -0
  303. package/dist/contexts/ObservabilityProvider/observabilityUtils.js.map +1 -0
  304. package/dist/contexts/ObservabilityProvider/sanitization.d.ts +19 -0
  305. package/dist/contexts/ObservabilityProvider/sanitization.js +95 -0
  306. package/dist/contexts/ObservabilityProvider/sanitization.js.map +1 -0
  307. package/dist/contexts/ObservabilityProvider/sanitization.test.d.ts +1 -0
  308. package/dist/contexts/ObservabilityProvider/useObservability.d.ts +2 -0
  309. package/dist/contexts/ObservabilityProvider/useObservability.js +11 -0
  310. package/dist/contexts/ObservabilityProvider/useObservability.js.map +1 -0
  311. package/dist/contexts/ObservabilityProvider/useSanitizedObservability.d.ts +8 -0
  312. package/dist/contexts/ObservabilityProvider/useSanitizedObservability.js +28 -0
  313. package/dist/contexts/ObservabilityProvider/useSanitizedObservability.js.map +1 -0
  314. package/dist/contexts/ThemeProvider/ThemeProvider.js +23 -23
  315. package/dist/contexts/ThemeProvider/ThemeProvider.js.map +1 -1
  316. package/dist/contexts/index.d.ts +2 -0
  317. package/dist/helpers/formattedStrings.js +12 -13
  318. package/dist/helpers/formattedStrings.js.map +1 -1
  319. package/dist/helpers/rem.d.ts +7 -3
  320. package/dist/helpers/rem.js +14 -10
  321. package/dist/helpers/rem.js.map +1 -1
  322. package/dist/helpers/rem.test.d.ts +1 -0
  323. package/dist/helpers/retryAsync.d.ts +7 -0
  324. package/dist/helpers/retryAsync.js +18 -0
  325. package/dist/helpers/retryAsync.js.map +1 -0
  326. package/dist/helpers/validations.d.ts +2 -2
  327. package/dist/i18n/I18n.js +1 -1
  328. package/dist/i18n/I18n.js.map +1 -1
  329. package/dist/i18n/en/Company.PaySchedule.json.js +1 -1
  330. package/dist/i18n/en/Contractor.Payments.PaymentSummary.json.js +42 -40
  331. package/dist/i18n/en/Contractor.Payments.PaymentSummary.json.js.map +1 -1
  332. package/dist/i18n/en/Contractor.Payments.PaymentsList.json.js +9 -9
  333. package/dist/i18n/en/Payroll.EmployeeSelection.json.js +10 -0
  334. package/dist/i18n/en/Payroll.EmployeeSelection.json.js.map +1 -0
  335. package/dist/i18n/en/Payroll.GrossUpModal.json.js +24 -0
  336. package/dist/i18n/en/Payroll.GrossUpModal.json.js.map +1 -0
  337. package/dist/i18n/en/Payroll.OffCycleCreation.json.js +10 -8
  338. package/dist/i18n/en/Payroll.OffCycleCreation.json.js.map +1 -1
  339. package/dist/i18n/en/Payroll.OffCycleTaxWithholding.json.js +13 -11
  340. package/dist/i18n/en/Payroll.OffCycleTaxWithholding.json.js.map +1 -1
  341. package/dist/i18n/en/Payroll.PayrollConfiguration.json.js +1 -1
  342. package/dist/index.d.ts +2 -0
  343. package/dist/index.js +19 -13
  344. package/dist/index.js.map +1 -1
  345. package/dist/shared/constants.d.ts +5 -0
  346. package/dist/shared/constants.js +11 -8
  347. package/dist/shared/constants.js.map +1 -1
  348. package/dist/style.css +1 -1
  349. package/dist/types/i18next.d.ts +36 -1
  350. package/dist/types/observability.d.ts +145 -0
  351. package/docs/reference/endpoint-inventory.json +14 -1
  352. package/package.json +25 -24
  353. package/dist/components/Common/MultiSelectComboBox/MultiSelectComboBox.d.ts +0 -2
  354. /package/dist/components/Common/{MultiSelectComboBox → UI/MultiSelectComboBox}/index.d.ts +0 -0
@@ -11,8 +11,14 @@ export declare const ContractorType: {
11
11
  declare const ContractorProfileSchema: z.ZodObject<{
12
12
  selfOnboarding: z.ZodBoolean;
13
13
  email: z.ZodOptional<z.ZodString>;
14
- contractorType: z.ZodEnum<["Individual", "Business"]>;
15
- wageType: z.ZodEnum<["Hourly", "Fixed"]>;
14
+ contractorType: z.ZodEnum<{
15
+ Business: "Business";
16
+ Individual: "Individual";
17
+ }>;
18
+ wageType: z.ZodEnum<{
19
+ Hourly: "Hourly";
20
+ Fixed: "Fixed";
21
+ }>;
16
22
  startDate: z.ZodDate;
17
23
  firstName: z.ZodOptional<z.ZodString>;
18
24
  middleInitial: z.ZodOptional<z.ZodString>;
@@ -21,39 +27,19 @@ declare const ContractorProfileSchema: z.ZodObject<{
21
27
  businessName: z.ZodOptional<z.ZodString>;
22
28
  ein: z.ZodOptional<z.ZodString>;
23
29
  hourlyRate: z.ZodOptional<z.ZodNumber>;
24
- }, "strip", z.ZodTypeAny, {
25
- wageType: "Hourly" | "Fixed";
26
- startDate: Date;
27
- selfOnboarding: boolean;
28
- contractorType: "Business" | "Individual";
29
- ssn?: string | undefined;
30
- ein?: string | undefined;
31
- email?: string | undefined;
32
- firstName?: string | undefined;
33
- lastName?: string | undefined;
34
- businessName?: string | undefined;
35
- hourlyRate?: number | undefined;
36
- middleInitial?: string | undefined;
37
- }, {
38
- wageType: "Hourly" | "Fixed";
39
- startDate: Date;
40
- selfOnboarding: boolean;
41
- contractorType: "Business" | "Individual";
42
- ssn?: string | undefined;
43
- ein?: string | undefined;
44
- email?: string | undefined;
45
- firstName?: string | undefined;
46
- lastName?: string | undefined;
47
- businessName?: string | undefined;
48
- hourlyRate?: number | undefined;
49
- middleInitial?: string | undefined;
50
- }>;
30
+ }, z.core.$strip>;
51
31
  export type ContractorProfileFormData = z.infer<typeof ContractorProfileSchema>;
52
- export declare const createContractorProfileValidationSchema: (t: (key: string) => string, hasSsn: boolean, hasEin: boolean) => z.ZodEffects<z.ZodObject<{
32
+ export declare const createContractorProfileValidationSchema: (t: (key: string) => string, hasSsn: boolean, hasEin: boolean) => z.ZodObject<{
53
33
  selfOnboarding: z.ZodBoolean;
54
34
  email: z.ZodOptional<z.ZodString>;
55
- contractorType: z.ZodEnum<["Individual", "Business"]>;
56
- wageType: z.ZodEnum<["Hourly", "Fixed"]>;
35
+ contractorType: z.ZodEnum<{
36
+ Business: "Business";
37
+ Individual: "Individual";
38
+ }>;
39
+ wageType: z.ZodEnum<{
40
+ Hourly: "Hourly";
41
+ Fixed: "Fixed";
42
+ }>;
57
43
  startDate: z.ZodDate;
58
44
  firstName: z.ZodOptional<z.ZodString>;
59
45
  middleInitial: z.ZodOptional<z.ZodString>;
@@ -62,59 +48,7 @@ export declare const createContractorProfileValidationSchema: (t: (key: string)
62
48
  businessName: z.ZodOptional<z.ZodString>;
63
49
  ein: z.ZodOptional<z.ZodString>;
64
50
  hourlyRate: z.ZodOptional<z.ZodNumber>;
65
- }, "strip", z.ZodTypeAny, {
66
- wageType: "Hourly" | "Fixed";
67
- startDate: Date;
68
- selfOnboarding: boolean;
69
- contractorType: "Business" | "Individual";
70
- ssn?: string | undefined;
71
- ein?: string | undefined;
72
- email?: string | undefined;
73
- firstName?: string | undefined;
74
- lastName?: string | undefined;
75
- businessName?: string | undefined;
76
- hourlyRate?: number | undefined;
77
- middleInitial?: string | undefined;
78
- }, {
79
- wageType: "Hourly" | "Fixed";
80
- startDate: Date;
81
- selfOnboarding: boolean;
82
- contractorType: "Business" | "Individual";
83
- ssn?: string | undefined;
84
- ein?: string | undefined;
85
- email?: string | undefined;
86
- firstName?: string | undefined;
87
- lastName?: string | undefined;
88
- businessName?: string | undefined;
89
- hourlyRate?: number | undefined;
90
- middleInitial?: string | undefined;
91
- }>, {
92
- wageType: "Hourly" | "Fixed";
93
- startDate: Date;
94
- selfOnboarding: boolean;
95
- contractorType: "Business" | "Individual";
96
- ssn?: string | undefined;
97
- ein?: string | undefined;
98
- email?: string | undefined;
99
- firstName?: string | undefined;
100
- lastName?: string | undefined;
101
- businessName?: string | undefined;
102
- hourlyRate?: number | undefined;
103
- middleInitial?: string | undefined;
104
- }, {
105
- wageType: "Hourly" | "Fixed";
106
- startDate: Date;
107
- selfOnboarding: boolean;
108
- contractorType: "Business" | "Individual";
109
- ssn?: string | undefined;
110
- ein?: string | undefined;
111
- email?: string | undefined;
112
- firstName?: string | undefined;
113
- lastName?: string | undefined;
114
- businessName?: string | undefined;
115
- hourlyRate?: number | undefined;
116
- middleInitial?: string | undefined;
117
- }>;
51
+ }, z.core.$strip>;
118
52
  export interface UseContractorProfileProps {
119
53
  companyId: string;
120
54
  contractorId?: string;
@@ -123,31 +57,31 @@ export interface UseContractorProfileProps {
123
57
  }
124
58
  export declare function useContractorProfile({ companyId, contractorId, defaultValues, existingContractor, }: UseContractorProfileProps): {
125
59
  formMethods: import('react-hook-form').UseFormReturn<{
126
- wageType: "Hourly" | "Fixed";
127
- startDate: Date;
128
60
  selfOnboarding: boolean;
129
61
  contractorType: "Business" | "Individual";
130
- ssn?: string | undefined;
131
- ein?: string | undefined;
62
+ wageType: "Hourly" | "Fixed";
63
+ startDate: Date;
132
64
  email?: string | undefined;
133
65
  firstName?: string | undefined;
66
+ middleInitial?: string | undefined;
134
67
  lastName?: string | undefined;
68
+ ssn?: string | undefined;
135
69
  businessName?: string | undefined;
70
+ ein?: string | undefined;
136
71
  hourlyRate?: number | undefined;
137
- middleInitial?: string | undefined;
138
72
  }, unknown, {
139
- wageType: "Hourly" | "Fixed";
140
- startDate: Date;
141
73
  selfOnboarding: boolean;
142
74
  contractorType: "Business" | "Individual";
143
- ssn?: string | undefined;
144
- ein?: string | undefined;
75
+ wageType: "Hourly" | "Fixed";
76
+ startDate: Date;
145
77
  email?: string | undefined;
146
78
  firstName?: string | undefined;
79
+ middleInitial?: string | undefined;
147
80
  lastName?: string | undefined;
81
+ ssn?: string | undefined;
148
82
  businessName?: string | undefined;
83
+ ein?: string | undefined;
149
84
  hourlyRate?: number | undefined;
150
- middleInitial?: string | undefined;
151
85
  }>;
152
86
  handleSubmit: (e?: React.BaseSyntheticEvent) => Promise<void>;
153
87
  formState: {
@@ -161,74 +95,74 @@ export declare function useContractorProfile({ companyId, contractorId, defaultV
161
95
  disabled: boolean;
162
96
  submitCount: number;
163
97
  defaultValues?: Readonly<{
164
- wageType?: "Hourly" | "Fixed" | undefined;
165
- startDate?: Date | undefined;
166
98
  selfOnboarding?: boolean | undefined;
167
99
  contractorType?: "Business" | "Individual" | undefined;
168
- ssn?: string | undefined;
169
- ein?: string | undefined;
100
+ wageType?: "Hourly" | "Fixed" | undefined;
101
+ startDate?: Date | undefined;
170
102
  email?: string | undefined;
171
103
  firstName?: string | undefined;
104
+ middleInitial?: string | undefined;
172
105
  lastName?: string | undefined;
106
+ ssn?: string | undefined;
173
107
  businessName?: string | undefined;
108
+ ein?: string | undefined;
174
109
  hourlyRate?: number | undefined;
175
- middleInitial?: string | undefined;
176
110
  }> | undefined;
177
111
  dirtyFields: Partial<Readonly<{
178
- wageType?: boolean | undefined;
179
- startDate?: boolean | undefined;
180
112
  selfOnboarding?: boolean | undefined;
181
113
  contractorType?: boolean | undefined;
182
- ssn?: boolean | undefined;
183
- ein?: boolean | undefined;
114
+ wageType?: boolean | undefined;
115
+ startDate?: boolean | undefined;
184
116
  email?: boolean | undefined;
185
117
  firstName?: boolean | undefined;
118
+ middleInitial?: boolean | undefined;
186
119
  lastName?: boolean | undefined;
120
+ ssn?: boolean | undefined;
187
121
  businessName?: boolean | undefined;
122
+ ein?: boolean | undefined;
188
123
  hourlyRate?: boolean | undefined;
189
- middleInitial?: boolean | undefined;
190
124
  }>>;
191
125
  touchedFields: Partial<Readonly<{
192
- wageType?: boolean | undefined;
193
- startDate?: boolean | undefined;
194
126
  selfOnboarding?: boolean | undefined;
195
127
  contractorType?: boolean | undefined;
196
- ssn?: boolean | undefined;
197
- ein?: boolean | undefined;
128
+ wageType?: boolean | undefined;
129
+ startDate?: boolean | undefined;
198
130
  email?: boolean | undefined;
199
131
  firstName?: boolean | undefined;
132
+ middleInitial?: boolean | undefined;
200
133
  lastName?: boolean | undefined;
134
+ ssn?: boolean | undefined;
201
135
  businessName?: boolean | undefined;
136
+ ein?: boolean | undefined;
202
137
  hourlyRate?: boolean | undefined;
203
- middleInitial?: boolean | undefined;
204
138
  }>>;
205
139
  validatingFields: Partial<Readonly<{
206
- wageType?: boolean | undefined;
207
- startDate?: boolean | undefined;
208
140
  selfOnboarding?: boolean | undefined;
209
141
  contractorType?: boolean | undefined;
210
- ssn?: boolean | undefined;
211
- ein?: boolean | undefined;
142
+ wageType?: boolean | undefined;
143
+ startDate?: boolean | undefined;
212
144
  email?: boolean | undefined;
213
145
  firstName?: boolean | undefined;
146
+ middleInitial?: boolean | undefined;
214
147
  lastName?: boolean | undefined;
148
+ ssn?: boolean | undefined;
215
149
  businessName?: boolean | undefined;
150
+ ein?: boolean | undefined;
216
151
  hourlyRate?: boolean | undefined;
217
- middleInitial?: boolean | undefined;
218
152
  }>>;
219
153
  errors: import('react-hook-form').FieldErrors<{
220
- wageType: "Hourly" | "Fixed";
221
- startDate: Date;
222
154
  selfOnboarding: boolean;
223
155
  contractorType: "Business" | "Individual";
224
- ssn?: string | undefined;
225
- ein?: string | undefined;
156
+ wageType: "Hourly" | "Fixed";
157
+ startDate: Date;
226
158
  email?: string | undefined;
227
159
  firstName?: string | undefined;
160
+ middleInitial?: string | undefined;
228
161
  lastName?: string | undefined;
162
+ ssn?: string | undefined;
229
163
  businessName?: string | undefined;
164
+ ein?: string | undefined;
230
165
  hourlyRate?: number | undefined;
231
- middleInitial?: string | undefined;
232
166
  }>;
233
167
  isReady: boolean;
234
168
  };
@@ -1,11 +1,11 @@
1
1
  import { useMemo as V } from "react";
2
- import { useTranslation as $ } from "react-i18next";
3
- import { zodResolver as X } from "@hookform/resolvers/zod";
2
+ import { useTranslation as X } from "react-i18next";
3
+ import { zodResolver as $ } from "@hookform/resolvers/zod";
4
4
  import { useForm as j, useWatch as v } from "react-hook-form";
5
5
  import { z as s } from "zod";
6
6
  import { useContractorsCreateMutation as L } from "@gusto/embedded-api/react-query/contractorsCreate";
7
7
  import { useContractorsUpdateMutation as k } from "@gusto/embedded-api/react-query/contractorsUpdate";
8
- import { WageType as J, ContractorType as K } from "@gusto/embedded-api/models/components/contractor";
8
+ import { ContractorWageType as J, ContractorType as K } from "@gusto/embedded-api/models/components/contractor";
9
9
  import "react/jsx-runtime";
10
10
  import "react-error-boundary";
11
11
  import "@gusto/embedded-api/models/errors/gustoembeddederror";
@@ -15,100 +15,101 @@ import { useBase as Q } from "../../Base/useBase.js";
15
15
  import { ContractorSelfOnboardingStatuses as Y, componentEvents as b, ContractorOnboardingStatus as x } from "../../../shared/constants.js";
16
16
  import "classnames";
17
17
  import "../../../contexts/ComponentAdapter/useComponentContext.js";
18
+ import "../../../contexts/LoadingIndicatorProvider/useLoadingIndicator.js";
18
19
  import { removeNonDigits as ee } from "../../../helpers/formattedStrings.js";
19
20
  import { useI18n as oe } from "../../../i18n/I18n.js";
20
- import { SSN_REGEX as se, NAME_REGEX as N } from "../../../helpers/validations.js";
21
+ import { SSN_REGEX as se, NAME_REGEX as g } from "../../../helpers/validations.js";
21
22
  import { formatDateToStringDate as ae } from "../../../helpers/dateFormatting.js";
22
23
  import { normalizeEin as te } from "../../../helpers/federalEin.js";
23
- const n = J, a = K, ie = s.object({
24
+ const i = J, a = K, ne = s.object({
24
25
  // Self-onboarding toggle
25
26
  selfOnboarding: s.boolean(),
26
27
  email: s.string().email().optional(),
27
28
  // Required contractor fields
28
29
  contractorType: s.enum([a.Individual, a.Business]),
29
- wageType: s.enum([n.Hourly, n.Fixed]),
30
+ wageType: s.enum([i.Hourly, i.Fixed]),
30
31
  startDate: s.date(),
31
32
  // Individual contractor fields
32
- firstName: s.string().min(1).regex(N).optional(),
33
+ firstName: s.string().min(1).regex(g).optional(),
33
34
  middleInitial: s.string().optional(),
34
- lastName: s.string().min(1).regex(N).optional(),
35
+ lastName: s.string().min(1).regex(g).optional(),
35
36
  ssn: s.string().optional(),
36
37
  // Business contractor fields
37
38
  businessName: s.string().optional(),
38
39
  ein: s.string().optional(),
39
40
  // Wage fields
40
41
  hourlyRate: s.number().min(0).optional()
41
- }), ne = (t, f, m) => ie.superRefine(
42
- (e, i) => {
43
- if (e.selfOnboarding && !e.email && i.addIssue({
42
+ }), ie = (t, f, m) => ne.superRefine(
43
+ (e, n) => {
44
+ if (e.selfOnboarding && !e.email && n.addIssue({
44
45
  code: s.ZodIssueCode.custom,
45
46
  path: ["email"],
46
47
  message: t("validations.email")
47
48
  }), e.contractorType === a.Individual)
48
- if (e.firstName || i.addIssue({
49
+ if (e.firstName || n.addIssue({
49
50
  code: s.ZodIssueCode.custom,
50
51
  path: ["firstName"],
51
52
  message: t("validations.firstName")
52
- }), e.lastName || i.addIssue({
53
+ }), e.lastName || n.addIssue({
53
54
  code: s.ZodIssueCode.custom,
54
55
  path: ["lastName"],
55
56
  message: t("validations.lastName")
56
57
  }), !e.ssn)
57
- !f && !e.selfOnboarding && i.addIssue({
58
+ !f && !e.selfOnboarding && n.addIssue({
58
59
  code: s.ZodIssueCode.custom,
59
60
  path: ["ssn"],
60
61
  message: t("validations.ssn")
61
62
  });
62
63
  else {
63
64
  const l = ee(e.ssn);
64
- se.test(l) || i.addIssue({
65
+ se.test(l) || n.addIssue({
65
66
  code: s.ZodIssueCode.custom,
66
67
  path: ["ssn"],
67
68
  message: t("validations.ssnFormat")
68
69
  });
69
70
  }
70
71
  if (e.contractorType === a.Business)
71
- if (e.businessName || i.addIssue({
72
+ if (e.businessName || n.addIssue({
72
73
  code: s.ZodIssueCode.custom,
73
74
  path: ["businessName"],
74
75
  message: t("validations.businessName")
75
76
  }), !e.ein)
76
- !m && !e.selfOnboarding && i.addIssue({
77
+ !m && !e.selfOnboarding && n.addIssue({
77
78
  code: s.ZodIssueCode.custom,
78
79
  path: ["ein"],
79
80
  message: t("validations.ein")
80
81
  });
81
82
  else {
82
83
  const l = te(e.ein);
83
- /^\d{2}-\d{7}$/.test(l) || i.addIssue({
84
+ /^\d{2}-\d{7}$/.test(l) || n.addIssue({
84
85
  code: s.ZodIssueCode.custom,
85
86
  path: ["ein"],
86
87
  message: t("validations.einFormat")
87
88
  });
88
89
  }
89
- e.wageType === n.Hourly && (e.hourlyRate === void 0 || e.hourlyRate < 0) && i.addIssue({
90
+ e.wageType === i.Hourly && (e.hourlyRate === void 0 || e.hourlyRate < 0) && n.addIssue({
90
91
  code: s.ZodIssueCode.custom,
91
92
  path: ["hourlyRate"],
92
93
  message: t("validations.hourlyRate")
93
94
  });
94
95
  }
95
96
  );
96
- function Fe({
97
+ function Pe({
97
98
  companyId: t,
98
99
  contractorId: f,
99
100
  defaultValues: m,
100
101
  existingContractor: e
101
102
  }) {
102
103
  oe("Contractor.Profile");
103
- const { t: i } = $("Contractor.Profile"), { onEvent: l, baseSubmitHandler: T } = Q(), I = ne(
104
- i,
104
+ const { t: n } = X("Contractor.Profile"), { onEvent: l, baseSubmitHandler: I } = Q(), T = ie(
105
+ n,
105
106
  e?.hasSsn ?? !1,
106
107
  e?.hasEin ?? !1
107
- ), { mutateAsync: S, isPending: w } = L(), { mutateAsync: R, isPending: O } = k(), D = V(
108
+ ), { mutateAsync: R, isPending: S } = L(), { mutateAsync: w, isPending: O } = k(), D = V(
108
109
  () => ({
109
110
  selfOnboarding: !1,
110
111
  contractorType: a.Business,
111
- wageType: n.Fixed,
112
+ wageType: i.Fixed,
112
113
  startDate: /* @__PURE__ */ new Date(),
113
114
  ...m,
114
115
  // Override with existing contractor data if available
@@ -118,7 +119,7 @@ function Fe({
118
119
  Y.has(e.onboardingStatus)
119
120
  ) : !1,
120
121
  contractorType: e.type || a.Business,
121
- wageType: e.wageType || n.Fixed,
122
+ wageType: e.wageType || i.Fixed,
122
123
  startDate: e.startDate ? new Date(e.startDate) : /* @__PURE__ */ new Date(),
123
124
  firstName: e.firstName || void 0,
124
125
  middleInitial: e.middleInitial || void 0,
@@ -133,19 +134,19 @@ function Fe({
133
134
  }),
134
135
  [e, m]
135
136
  ), d = j({
136
- resolver: X(I),
137
+ resolver: $(T),
137
138
  defaultValues: D
138
139
  }), { handleSubmit: E, formState: F } = d, u = v({ control: d.control, name: "contractorType" }), P = v({ control: d.control, name: "wageType" }), y = v({
139
140
  control: d.control,
140
141
  name: "selfOnboarding"
141
- }), g = (o) => {
142
+ }), N = (o) => {
142
143
  const r = {
143
144
  type: o.contractorType,
144
145
  wageType: o.wageType,
145
146
  startDate: ae(o.startDate) || "",
146
147
  selfOnboarding: o.selfOnboarding,
147
148
  email: o.selfOnboarding ? o.email : void 0,
148
- hourlyRate: o.wageType === n.Hourly ? String(o.hourlyRate) : void 0,
149
+ hourlyRate: o.wageType === i.Hourly ? String(o.hourlyRate) : void 0,
149
150
  isActive: !0
150
151
  };
151
152
  return o.contractorType === a.Individual ? {
@@ -163,27 +164,27 @@ function Fe({
163
164
  businessName: o.businessName,
164
165
  ein: o.ein?.replace(/-/g, "")
165
166
  };
166
- }, B = (o, r) => ({
167
- ...g(o),
167
+ }, C = (o, r) => ({
168
+ ...N(o),
168
169
  version: r
169
- }), C = async (o) => {
170
- await T(o, async (r) => {
170
+ }), B = async (o) => {
171
+ await I(o, async (r) => {
171
172
  let c = e?.uuid;
172
173
  if (e) {
173
174
  if (!e.version)
174
175
  throw new Error("Contractor version is required for updates");
175
- const h = e.version, p = B(r, h), G = await R({
176
+ const h = e.version, p = C(r, h), G = await w({
176
177
  request: {
177
178
  contractorUuid: c,
178
- requestBody: p
179
+ contractorUpdateRequestBody: p
179
180
  }
180
181
  });
181
182
  l(b.CONTRACTOR_UPDATED, G.contractor);
182
183
  } else {
183
- const h = g(r), p = await S({
184
+ const h = N(r), p = await R({
184
185
  request: {
185
186
  companyUuid: t,
186
- requestBody: h
187
+ contractorCreateRequestBody: h
187
188
  }
188
189
  });
189
190
  c = p.contractor?.uuid, l(b.CONTRACTOR_CREATED, p.contractor);
@@ -193,17 +194,17 @@ function Fe({
193
194
  contractorId: c
194
195
  });
195
196
  });
196
- }, A = !!y, H = u === a.Business, Z = u === a.Individual, _ = P === n.Hourly, M = u === a.Individual && !y, U = u === a.Business && !y, W = [
197
+ }, A = !!y, H = u === a.Business, Z = u === a.Individual, _ = P === i.Hourly, U = u === a.Individual && !y, M = u === a.Business && !y, q = [
197
198
  { label: "Individual", value: a.Individual },
198
199
  { label: "Business", value: a.Business }
199
- ], q = [
200
- { label: "Hourly", value: n.Hourly },
201
- { label: "Fixed", value: n.Fixed }
202
- ], z = w || O;
200
+ ], W = [
201
+ { label: "Hourly", value: i.Hourly },
202
+ { label: "Fixed", value: i.Fixed }
203
+ ], z = S || O;
203
204
  return {
204
205
  // Form methods and submission
205
206
  formMethods: d,
206
- handleSubmit: E(C),
207
+ handleSubmit: E(B),
207
208
  formState: {
208
209
  ...F,
209
210
  isSubmitting: z
@@ -213,19 +214,19 @@ function Fe({
213
214
  shouldShowBusinessFields: H,
214
215
  shouldShowIndividualFields: Z,
215
216
  shouldShowHourlyRate: _,
216
- shouldShowSsnField: M,
217
- shouldShowEinField: U,
217
+ shouldShowSsnField: U,
218
+ shouldShowEinField: M,
218
219
  // Form options
219
- contractorTypeOptions: W,
220
- wageTypeOptions: q,
220
+ contractorTypeOptions: q,
221
+ wageTypeOptions: W,
221
222
  // Component state
222
223
  isEditing: !!f
223
224
  };
224
225
  }
225
226
  export {
226
227
  a as ContractorType,
227
- n as WageType,
228
- ne as createContractorProfileValidationSchema,
229
- Fe as useContractorProfile
228
+ i as WageType,
229
+ ie as createContractorProfileValidationSchema,
230
+ Pe as useContractorProfile
230
231
  };
231
232
  //# sourceMappingURL=useContractorProfile.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useContractorProfile.js","sources":["../../../../src/components/Contractor/Profile/useContractorProfile.ts"],"sourcesContent":["import { useMemo } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport type { SubmitHandler } from 'react-hook-form'\nimport { useForm, useWatch } from 'react-hook-form'\nimport { z } from 'zod'\nimport { useContractorsCreateMutation } from '@gusto/embedded-api/react-query/contractorsCreate'\nimport { useContractorsUpdateMutation } from '@gusto/embedded-api/react-query/contractorsUpdate'\nimport type { PostV1CompaniesCompanyUuidContractorsRequestBody } from '@gusto/embedded-api/models/operations/postv1companiescompanyuuidcontractors'\nimport type { PutV1ContractorsContractorUuidRequestBody } from '@gusto/embedded-api/models/operations/putv1contractorscontractoruuid'\nimport {\n WageType as ApiWageType,\n ContractorType as ApiContractorType,\n type Contractor,\n} from '@gusto/embedded-api/models/components/contractor'\nimport { useBase } from '@/components/Base'\nimport { useI18n } from '@/i18n'\nimport {\n componentEvents,\n ContractorOnboardingStatus,\n ContractorSelfOnboardingStatuses,\n} from '@/shared/constants'\nimport { SSN_REGEX, NAME_REGEX } from '@/helpers/validations'\nimport { removeNonDigits } from '@/helpers/formattedStrings'\nimport { formatDateToStringDate } from '@/helpers/dateFormatting'\nimport { normalizeEin } from '@/helpers/federalEin'\n\n// Re-export the API types for convenience\nexport const WageType = ApiWageType\nexport const ContractorType = ApiContractorType\n\n// Form schema definition - exported for use in stories and tests\nconst ContractorProfileSchema = z.object({\n // Self-onboarding toggle\n selfOnboarding: z.boolean(),\n email: z.string().email().optional(),\n\n // Required contractor fields\n contractorType: z.enum([ContractorType.Individual, ContractorType.Business]),\n wageType: z.enum([WageType.Hourly, WageType.Fixed]),\n startDate: z.date(),\n\n // Individual contractor fields\n firstName: z.string().min(1).regex(NAME_REGEX).optional(),\n middleInitial: z.string().optional(),\n lastName: z.string().min(1).regex(NAME_REGEX).optional(),\n ssn: z.string().optional(),\n\n // Business contractor fields\n businessName: z.string().optional(),\n ein: z.string().optional(),\n\n // Wage fields\n hourlyRate: z.number().min(0).optional(),\n})\n\nexport type ContractorProfileFormData = z.infer<typeof ContractorProfileSchema>\n\n// Create validation schema - exported for stories\nexport const createContractorProfileValidationSchema = (\n t: (key: string) => string,\n hasSsn: boolean,\n hasEin: boolean,\n) => {\n return ContractorProfileSchema.superRefine(\n (data: ContractorProfileFormData, ctx: z.RefinementCtx) => {\n // Email validation for contractor invitation\n if (data.selfOnboarding && !data.email) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n path: ['email'],\n message: t('validations.email'),\n })\n }\n\n // Individual contractor validations\n if (data.contractorType === ContractorType.Individual) {\n if (!data.firstName) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n path: ['firstName'],\n message: t('validations.firstName'),\n })\n }\n\n if (!data.lastName) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n path: ['lastName'],\n message: t('validations.lastName'),\n })\n }\n\n if (!data.ssn) {\n if (!hasSsn && !data.selfOnboarding) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n path: ['ssn'],\n message: t('validations.ssn'),\n })\n }\n } else {\n // Validate SSN format\n const cleanSSN = removeNonDigits(data.ssn)\n if (!SSN_REGEX.test(cleanSSN)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n path: ['ssn'],\n message: t('validations.ssnFormat'),\n })\n }\n }\n }\n\n // Business contractor validations\n if (data.contractorType === ContractorType.Business) {\n if (!data.businessName) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n path: ['businessName'],\n message: t('validations.businessName'),\n })\n }\n\n if (!data.ein) {\n if (!hasEin && !data.selfOnboarding) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n path: ['ein'],\n message: t('validations.ein'),\n })\n }\n } else {\n // Validate EIN format after normalization (XX-XXXXXXX)\n const normalizedEin = normalizeEin(data.ein)\n if (!/^\\d{2}-\\d{7}$/.test(normalizedEin)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n path: ['ein'],\n message: t('validations.einFormat'),\n })\n }\n }\n }\n\n // Hourly rate validation for hourly contractors\n if (data.wageType === WageType.Hourly) {\n if (data.hourlyRate === undefined || data.hourlyRate < 0) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n path: ['hourlyRate'],\n message: t('validations.hourlyRate'),\n })\n }\n }\n },\n )\n}\n\nexport interface UseContractorProfileProps {\n companyId: string\n contractorId?: string\n defaultValues?: Partial<ContractorProfileFormData>\n existingContractor?: Contractor\n}\n\nexport function useContractorProfile({\n companyId,\n contractorId,\n defaultValues,\n existingContractor,\n}: UseContractorProfileProps) {\n useI18n('Contractor.Profile')\n const { t } = useTranslation('Contractor.Profile')\n const { onEvent, baseSubmitHandler } = useBase()\n\n // Create validation schema with translations\n const validationSchema = createContractorProfileValidationSchema(\n t as (key: string) => string,\n existingContractor?.hasSsn ?? false,\n existingContractor?.hasEin ?? false,\n )\n\n // API mutations\n const { mutateAsync: createContractor, isPending: isCreating } = useContractorsCreateMutation()\n const { mutateAsync: updateContractor, isPending: isUpdating } = useContractorsUpdateMutation()\n\n // Prepare default values from existing contractor or provided defaults\n const formDefaultValues = useMemo(\n () => ({\n selfOnboarding: false,\n contractorType: ContractorType.Business,\n wageType: WageType.Fixed,\n startDate: new Date(),\n ...defaultValues,\n // Override with existing contractor data if available\n ...(existingContractor && {\n selfOnboarding: existingContractor.onboardingStatus\n ? // @ts-expect-error: onboarding_status during runtime can be one of self onboarding statuses\n ContractorSelfOnboardingStatuses.has(existingContractor.onboardingStatus)\n : false,\n contractorType: existingContractor.type || ContractorType.Business,\n wageType: existingContractor.wageType || WageType.Fixed,\n startDate: existingContractor.startDate\n ? new Date(existingContractor.startDate)\n : new Date(),\n firstName: existingContractor.firstName || undefined,\n middleInitial: existingContractor.middleInitial || undefined,\n lastName: existingContractor.lastName || undefined,\n businessName: existingContractor.businessName || undefined,\n email: existingContractor.email || undefined,\n hourlyRate: existingContractor.hourlyRate\n ? (() => {\n const parsed = parseFloat(existingContractor.hourlyRate)\n return isNaN(parsed) ? undefined : parsed\n })()\n : undefined,\n }),\n }),\n [existingContractor, defaultValues],\n )\n\n // Form setup\n const formMethods = useForm<ContractorProfileFormData, unknown, ContractorProfileFormData>({\n resolver: zodResolver(validationSchema),\n defaultValues: formDefaultValues,\n })\n\n const { handleSubmit, formState } = formMethods\n\n // Watch form values for conditional rendering\n const watchedType = useWatch({ control: formMethods.control, name: 'contractorType' })\n const watchedWageType = useWatch({ control: formMethods.control, name: 'wageType' })\n const watchedSelfOnboarding = useWatch({\n control: formMethods.control,\n name: 'selfOnboarding',\n })\n\n // Helper function to transform form data to API payload\n const transformFormDataToCreatePayload = (\n data: ContractorProfileFormData,\n ): PostV1CompaniesCompanyUuidContractorsRequestBody => {\n const basePayload = {\n type: data.contractorType,\n wageType: data.wageType,\n startDate: formatDateToStringDate(data.startDate) || '',\n selfOnboarding: data.selfOnboarding,\n email: data.selfOnboarding ? data.email : undefined,\n hourlyRate: data.wageType === WageType.Hourly ? String(data.hourlyRate) : undefined,\n isActive: true,\n }\n\n if (data.contractorType === ContractorType.Individual) {\n return {\n ...basePayload,\n firstName: data.firstName,\n middleInitial: data.middleInitial || undefined,\n lastName: data.lastName,\n ssn: data.ssn,\n fileNewHireReport: false, // Default value\n }\n } else {\n return {\n ...basePayload,\n fileNewHireReport: false, // Default value\n businessName: data.businessName,\n ein: data.ein?.replace(/-/g, ''),\n }\n }\n }\n\n const transformFormDataToUpdatePayload = (\n data: ContractorProfileFormData,\n version: string,\n ): PutV1ContractorsContractorUuidRequestBody => {\n const createPayload = transformFormDataToCreatePayload(data)\n return {\n ...createPayload,\n version,\n }\n }\n\n // Event handlers\n const onSubmit: SubmitHandler<ContractorProfileFormData> = async data => {\n await baseSubmitHandler(data, async payload => {\n let contractorId = existingContractor?.uuid\n if (existingContractor) {\n // Update existing contractor\n if (!existingContractor.version) {\n throw new Error('Contractor version is required for updates')\n }\n const version = existingContractor.version\n const apiPayload = transformFormDataToUpdatePayload(payload, version)\n\n const updateResponse = await updateContractor({\n request: {\n contractorUuid: contractorId!,\n requestBody: apiPayload,\n },\n })\n\n onEvent(componentEvents.CONTRACTOR_UPDATED, updateResponse.contractor)\n } else {\n // Create new contractor\n const apiPayload = transformFormDataToCreatePayload(payload)\n\n const createResponse = await createContractor({\n request: {\n companyUuid: companyId,\n requestBody: apiPayload,\n },\n })\n\n contractorId = createResponse.contractor?.uuid\n onEvent(componentEvents.CONTRACTOR_CREATED, createResponse.contractor)\n }\n\n onEvent(componentEvents.CONTRACTOR_PROFILE_DONE, {\n selfOnboarding:\n payload.selfOnboarding &&\n existingContractor?.onboardingStatus !==\n ContractorOnboardingStatus.ADMIN_ONBOARDING_REVIEW,\n contractorId,\n })\n })\n }\n\n // Conditional rendering helpers\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-conversion\n const shouldShowEmailField = !!watchedSelfOnboarding\n const shouldShowBusinessFields = watchedType === ContractorType.Business\n const shouldShowIndividualFields = watchedType === ContractorType.Individual\n const shouldShowHourlyRate = watchedWageType === WageType.Hourly\n const shouldShowSsnField = watchedType === ContractorType.Individual && !watchedSelfOnboarding\n const shouldShowEinField = watchedType === ContractorType.Business && !watchedSelfOnboarding\n\n // Form field options\n const contractorTypeOptions = [\n { label: 'Individual', value: ContractorType.Individual },\n { label: 'Business', value: ContractorType.Business },\n ]\n\n const wageTypeOptions = [\n { label: 'Hourly', value: WageType.Hourly },\n { label: 'Fixed', value: WageType.Fixed },\n ]\n\n // Determine if we're currently submitting (creating or updating)\n const isSubmitting = isCreating || isUpdating\n // Return only what the component actually needs\n return {\n // Form methods and submission\n formMethods,\n handleSubmit: handleSubmit(onSubmit),\n formState: {\n ...formState,\n isSubmitting,\n },\n\n // Conditional rendering flags\n shouldShowEmailField,\n shouldShowBusinessFields,\n shouldShowIndividualFields,\n shouldShowHourlyRate,\n shouldShowSsnField,\n shouldShowEinField,\n\n // Form options\n contractorTypeOptions,\n wageTypeOptions,\n\n // Component state\n isEditing: !!contractorId,\n }\n}\n"],"names":["WageType","ApiWageType","ContractorType","ApiContractorType","ContractorProfileSchema","z","NAME_REGEX","createContractorProfileValidationSchema","hasSsn","hasEin","data","ctx","cleanSSN","removeNonDigits","SSN_REGEX","normalizedEin","normalizeEin","useContractorProfile","companyId","contractorId","defaultValues","existingContractor","useI18n","t","useTranslation","onEvent","baseSubmitHandler","useBase","validationSchema","createContractor","isCreating","useContractorsCreateMutation","updateContractor","isUpdating","useContractorsUpdateMutation","formDefaultValues","useMemo","ContractorSelfOnboardingStatuses","parsed","formMethods","useForm","zodResolver","handleSubmit","formState","watchedType","useWatch","watchedWageType","watchedSelfOnboarding","transformFormDataToCreatePayload","basePayload","formatDateToStringDate","transformFormDataToUpdatePayload","version","onSubmit","payload","apiPayload","updateResponse","componentEvents","createResponse","ContractorOnboardingStatus","shouldShowEmailField","shouldShowBusinessFields","shouldShowIndividualFields","shouldShowHourlyRate","shouldShowSsnField","shouldShowEinField","contractorTypeOptions","wageTypeOptions","isSubmitting"],"mappings":"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"}
1
+ {"version":3,"file":"useContractorProfile.js","sources":["../../../../src/components/Contractor/Profile/useContractorProfile.ts"],"sourcesContent":["import { useMemo } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport type { SubmitHandler } from 'react-hook-form'\nimport { useForm, useWatch } from 'react-hook-form'\nimport { z } from 'zod'\nimport { useContractorsCreateMutation } from '@gusto/embedded-api/react-query/contractorsCreate'\nimport { useContractorsUpdateMutation } from '@gusto/embedded-api/react-query/contractorsUpdate'\nimport type { ContractorCreateRequestBody } from '@gusto/embedded-api/models/components/contractorcreaterequestbody'\nimport type { ContractorUpdateRequestBody } from '@gusto/embedded-api/models/components/contractorupdaterequestbody'\nimport {\n ContractorWageType as ApiWageType,\n ContractorType as ApiContractorType,\n type Contractor,\n} from '@gusto/embedded-api/models/components/contractor'\nimport { useBase } from '@/components/Base'\nimport { useI18n } from '@/i18n'\nimport {\n componentEvents,\n ContractorOnboardingStatus,\n ContractorSelfOnboardingStatuses,\n} from '@/shared/constants'\nimport { SSN_REGEX, NAME_REGEX } from '@/helpers/validations'\nimport { removeNonDigits } from '@/helpers/formattedStrings'\nimport { formatDateToStringDate } from '@/helpers/dateFormatting'\nimport { normalizeEin } from '@/helpers/federalEin'\n\n// Re-export the API types for convenience\nexport const WageType = ApiWageType\nexport const ContractorType = ApiContractorType\n\n// Form schema definition - exported for use in stories and tests\nconst ContractorProfileSchema = z.object({\n // Self-onboarding toggle\n selfOnboarding: z.boolean(),\n email: z.string().email().optional(),\n\n // Required contractor fields\n contractorType: z.enum([ContractorType.Individual, ContractorType.Business]),\n wageType: z.enum([WageType.Hourly, WageType.Fixed]),\n startDate: z.date(),\n\n // Individual contractor fields\n firstName: z.string().min(1).regex(NAME_REGEX).optional(),\n middleInitial: z.string().optional(),\n lastName: z.string().min(1).regex(NAME_REGEX).optional(),\n ssn: z.string().optional(),\n\n // Business contractor fields\n businessName: z.string().optional(),\n ein: z.string().optional(),\n\n // Wage fields\n hourlyRate: z.number().min(0).optional(),\n})\n\nexport type ContractorProfileFormData = z.infer<typeof ContractorProfileSchema>\n\n// Create validation schema - exported for stories\nexport const createContractorProfileValidationSchema = (\n t: (key: string) => string,\n hasSsn: boolean,\n hasEin: boolean,\n) => {\n return ContractorProfileSchema.superRefine(\n (data: ContractorProfileFormData, ctx: z.RefinementCtx) => {\n // Email validation for contractor invitation\n if (data.selfOnboarding && !data.email) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n path: ['email'],\n message: t('validations.email'),\n })\n }\n\n // Individual contractor validations\n if (data.contractorType === ContractorType.Individual) {\n if (!data.firstName) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n path: ['firstName'],\n message: t('validations.firstName'),\n })\n }\n\n if (!data.lastName) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n path: ['lastName'],\n message: t('validations.lastName'),\n })\n }\n\n if (!data.ssn) {\n if (!hasSsn && !data.selfOnboarding) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n path: ['ssn'],\n message: t('validations.ssn'),\n })\n }\n } else {\n // Validate SSN format\n const cleanSSN = removeNonDigits(data.ssn)\n if (!SSN_REGEX.test(cleanSSN)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n path: ['ssn'],\n message: t('validations.ssnFormat'),\n })\n }\n }\n }\n\n // Business contractor validations\n if (data.contractorType === ContractorType.Business) {\n if (!data.businessName) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n path: ['businessName'],\n message: t('validations.businessName'),\n })\n }\n\n if (!data.ein) {\n if (!hasEin && !data.selfOnboarding) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n path: ['ein'],\n message: t('validations.ein'),\n })\n }\n } else {\n // Validate EIN format after normalization (XX-XXXXXXX)\n const normalizedEin = normalizeEin(data.ein)\n if (!/^\\d{2}-\\d{7}$/.test(normalizedEin)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n path: ['ein'],\n message: t('validations.einFormat'),\n })\n }\n }\n }\n\n // Hourly rate validation for hourly contractors\n if (data.wageType === WageType.Hourly) {\n if (data.hourlyRate === undefined || data.hourlyRate < 0) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n path: ['hourlyRate'],\n message: t('validations.hourlyRate'),\n })\n }\n }\n },\n )\n}\n\nexport interface UseContractorProfileProps {\n companyId: string\n contractorId?: string\n defaultValues?: Partial<ContractorProfileFormData>\n existingContractor?: Contractor\n}\n\nexport function useContractorProfile({\n companyId,\n contractorId,\n defaultValues,\n existingContractor,\n}: UseContractorProfileProps) {\n useI18n('Contractor.Profile')\n const { t } = useTranslation('Contractor.Profile')\n const { onEvent, baseSubmitHandler } = useBase()\n\n // Create validation schema with translations\n const validationSchema = createContractorProfileValidationSchema(\n t as (key: string) => string,\n existingContractor?.hasSsn ?? false,\n existingContractor?.hasEin ?? false,\n )\n\n // API mutations\n const { mutateAsync: createContractor, isPending: isCreating } = useContractorsCreateMutation()\n const { mutateAsync: updateContractor, isPending: isUpdating } = useContractorsUpdateMutation()\n\n // Prepare default values from existing contractor or provided defaults\n const formDefaultValues = useMemo(\n () => ({\n selfOnboarding: false,\n contractorType: ContractorType.Business,\n wageType: WageType.Fixed,\n startDate: new Date(),\n ...defaultValues,\n // Override with existing contractor data if available\n ...(existingContractor && {\n selfOnboarding: existingContractor.onboardingStatus\n ? // @ts-expect-error: onboarding_status during runtime can be one of self onboarding statuses\n ContractorSelfOnboardingStatuses.has(existingContractor.onboardingStatus)\n : false,\n contractorType: existingContractor.type || ContractorType.Business,\n wageType: existingContractor.wageType || WageType.Fixed,\n startDate: existingContractor.startDate\n ? new Date(existingContractor.startDate)\n : new Date(),\n firstName: existingContractor.firstName || undefined,\n middleInitial: existingContractor.middleInitial || undefined,\n lastName: existingContractor.lastName || undefined,\n businessName: existingContractor.businessName || undefined,\n email: existingContractor.email || undefined,\n hourlyRate: existingContractor.hourlyRate\n ? (() => {\n const parsed = parseFloat(existingContractor.hourlyRate)\n return isNaN(parsed) ? undefined : parsed\n })()\n : undefined,\n }),\n }),\n [existingContractor, defaultValues],\n )\n\n // Form setup\n const formMethods = useForm<ContractorProfileFormData, unknown, ContractorProfileFormData>({\n resolver: zodResolver(validationSchema),\n defaultValues: formDefaultValues,\n })\n\n const { handleSubmit, formState } = formMethods\n\n // Watch form values for conditional rendering\n const watchedType = useWatch({ control: formMethods.control, name: 'contractorType' })\n const watchedWageType = useWatch({ control: formMethods.control, name: 'wageType' })\n const watchedSelfOnboarding = useWatch({\n control: formMethods.control,\n name: 'selfOnboarding',\n })\n\n // Helper function to transform form data to API payload\n const transformFormDataToCreatePayload = (\n data: ContractorProfileFormData,\n ): ContractorCreateRequestBody => {\n const basePayload = {\n type: data.contractorType,\n wageType: data.wageType,\n startDate: formatDateToStringDate(data.startDate) || '',\n selfOnboarding: data.selfOnboarding,\n email: data.selfOnboarding ? data.email : undefined,\n hourlyRate: data.wageType === WageType.Hourly ? String(data.hourlyRate) : undefined,\n isActive: true,\n }\n\n if (data.contractorType === ContractorType.Individual) {\n return {\n ...basePayload,\n firstName: data.firstName,\n middleInitial: data.middleInitial || undefined,\n lastName: data.lastName,\n ssn: data.ssn,\n fileNewHireReport: false, // Default value\n }\n } else {\n return {\n ...basePayload,\n fileNewHireReport: false, // Default value\n businessName: data.businessName,\n ein: data.ein?.replace(/-/g, ''),\n }\n }\n }\n\n const transformFormDataToUpdatePayload = (\n data: ContractorProfileFormData,\n version: string,\n ): ContractorUpdateRequestBody => {\n const createPayload = transformFormDataToCreatePayload(data)\n return {\n ...createPayload,\n version,\n }\n }\n\n // Event handlers\n const onSubmit: SubmitHandler<ContractorProfileFormData> = async data => {\n await baseSubmitHandler(data, async payload => {\n let contractorId = existingContractor?.uuid\n if (existingContractor) {\n // Update existing contractor\n if (!existingContractor.version) {\n throw new Error('Contractor version is required for updates')\n }\n const version = existingContractor.version\n const apiPayload = transformFormDataToUpdatePayload(payload, version)\n\n const updateResponse = await updateContractor({\n request: {\n contractorUuid: contractorId!,\n contractorUpdateRequestBody: apiPayload,\n },\n })\n\n onEvent(componentEvents.CONTRACTOR_UPDATED, updateResponse.contractor)\n } else {\n // Create new contractor\n const apiPayload = transformFormDataToCreatePayload(payload)\n\n const createResponse = await createContractor({\n request: {\n companyUuid: companyId,\n contractorCreateRequestBody: apiPayload,\n },\n })\n\n contractorId = createResponse.contractor?.uuid\n onEvent(componentEvents.CONTRACTOR_CREATED, createResponse.contractor)\n }\n\n onEvent(componentEvents.CONTRACTOR_PROFILE_DONE, {\n selfOnboarding:\n payload.selfOnboarding &&\n existingContractor?.onboardingStatus !==\n ContractorOnboardingStatus.ADMIN_ONBOARDING_REVIEW,\n contractorId,\n })\n })\n }\n\n // Conditional rendering helpers\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-conversion\n const shouldShowEmailField = !!watchedSelfOnboarding\n const shouldShowBusinessFields = watchedType === ContractorType.Business\n const shouldShowIndividualFields = watchedType === ContractorType.Individual\n const shouldShowHourlyRate = watchedWageType === WageType.Hourly\n const shouldShowSsnField = watchedType === ContractorType.Individual && !watchedSelfOnboarding\n const shouldShowEinField = watchedType === ContractorType.Business && !watchedSelfOnboarding\n\n // Form field options\n const contractorTypeOptions = [\n { label: 'Individual', value: ContractorType.Individual },\n { label: 'Business', value: ContractorType.Business },\n ]\n\n const wageTypeOptions = [\n { label: 'Hourly', value: WageType.Hourly },\n { label: 'Fixed', value: WageType.Fixed },\n ]\n\n // Determine if we're currently submitting (creating or updating)\n const isSubmitting = isCreating || isUpdating\n // Return only what the component actually needs\n return {\n // Form methods and submission\n formMethods,\n handleSubmit: handleSubmit(onSubmit),\n formState: {\n ...formState,\n isSubmitting,\n },\n\n // Conditional rendering flags\n shouldShowEmailField,\n shouldShowBusinessFields,\n shouldShowIndividualFields,\n shouldShowHourlyRate,\n shouldShowSsnField,\n shouldShowEinField,\n\n // Form options\n contractorTypeOptions,\n wageTypeOptions,\n\n // Component state\n isEditing: !!contractorId,\n }\n}\n"],"names":["WageType","ApiWageType","ContractorType","ApiContractorType","ContractorProfileSchema","z","NAME_REGEX","createContractorProfileValidationSchema","hasSsn","hasEin","data","ctx","cleanSSN","removeNonDigits","SSN_REGEX","normalizedEin","normalizeEin","useContractorProfile","companyId","contractorId","defaultValues","existingContractor","useI18n","t","useTranslation","onEvent","baseSubmitHandler","useBase","validationSchema","createContractor","isCreating","useContractorsCreateMutation","updateContractor","isUpdating","useContractorsUpdateMutation","formDefaultValues","useMemo","ContractorSelfOnboardingStatuses","parsed","formMethods","useForm","zodResolver","handleSubmit","formState","watchedType","useWatch","watchedWageType","watchedSelfOnboarding","transformFormDataToCreatePayload","basePayload","formatDateToStringDate","transformFormDataToUpdatePayload","version","onSubmit","payload","apiPayload","updateResponse","componentEvents","createResponse","ContractorOnboardingStatus","shouldShowEmailField","shouldShowBusinessFields","shouldShowIndividualFields","shouldShowHourlyRate","shouldShowSsnField","shouldShowEinField","contractorTypeOptions","wageTypeOptions","isSubmitting"],"mappings":"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"}
@@ -6,12 +6,12 @@ import { useContractorsGetSuspense as A } from "@gusto/embedded-api/react-query/
6
6
  import { SubmitDone as E } from "./SubmitDone.js";
7
7
  import { Flex as C } from "../../Common/Flex/Flex.js";
8
8
  import "classnames";
9
+ import { ContractorOnboardingStatus as d, componentEvents as s } from "../../../shared/constants.js";
9
10
  import { useComponentContext as b } from "../../../contexts/ComponentAdapter/useComponentContext.js";
10
11
  import "react";
11
12
  import { useI18n as I } from "../../../i18n/I18n.js";
12
13
  import { BaseComponent as B } from "../../Base/Base.js";
13
14
  import { useBase as v } from "../../Base/useBase.js";
14
- import { ContractorOnboardingStatus as d, componentEvents as s } from "../../../shared/constants.js";
15
15
  import { firstLastName as x } from "../../../helpers/formattedStrings.js";
16
16
  function W(o) {
17
17
  return /* @__PURE__ */ t(B, { ...o, children: /* @__PURE__ */ t(U, { ...o, children: o.children }) });