@gusto/embedded-react-sdk 0.12.1 → 0.13.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.
- package/CHANGELOG.md +139 -0
- package/dist/_virtual/dynamic-import-helper.js +1 -8
- package/dist/_virtual/dynamic-import-helper.js.map +1 -1
- package/dist/assets/icons/spinner_small.svg.js +10 -0
- package/dist/assets/icons/spinner_small.svg.js.map +1 -0
- package/dist/components/Base/Base.js +38 -36
- package/dist/components/Base/Base.js.map +1 -1
- package/dist/components/Base/useBase.d.ts +2 -0
- package/dist/components/Base/useBase.js.map +1 -1
- package/dist/components/Common/DataView/DataView.d.ts +2 -1
- package/dist/components/Common/DataView/DataView.js +20 -19
- package/dist/components/Common/DataView/DataView.js.map +1 -1
- package/dist/components/Common/DataView/useDataView.d.ts +3 -1
- package/dist/components/Common/DataView/useDataView.js +13 -11
- package/dist/components/Common/DataView/useDataView.js.map +1 -1
- package/dist/components/Common/EmptyData/EmptyData.module.scss.js +1 -1
- package/dist/components/Common/InlineSpinner/InlineSpinner.d.ts +6 -0
- package/dist/components/Common/InlineSpinner/InlineSpinner.js +25 -0
- package/dist/components/Common/InlineSpinner/InlineSpinner.js.map +1 -0
- package/dist/components/Common/InlineSpinner/InlineSpinner.module.scss.js +10 -0
- package/dist/components/Common/InlineSpinner/InlineSpinner.module.scss.js.map +1 -0
- package/dist/components/Common/InlineSpinner/index.d.ts +2 -0
- package/dist/components/Common/PaginationControl/PaginationControl.js +31 -28
- package/dist/components/Common/PaginationControl/PaginationControl.js.map +1 -1
- package/dist/components/Common/PaginationControl/PaginationControlTypes.d.ts +1 -0
- package/dist/components/Common/ReorderableList/DropZone.js +1 -1
- package/dist/components/Common/ReorderableList/DropZone.js.map +1 -1
- package/dist/components/Common/ReorderableList/ReorderableItem.js +1 -1
- package/dist/components/Common/ReorderableList/ReorderableItem.js.map +1 -1
- package/dist/components/Common/SignatureForm/SignatureForm.js +8 -5
- package/dist/components/Common/SignatureForm/SignatureForm.js.map +1 -1
- package/dist/components/Common/SignatureForm/SignatureFormActions.js +13 -10
- package/dist/components/Common/SignatureForm/SignatureFormActions.js.map +1 -1
- package/dist/components/Common/SignatureForm/SignatureFormFields.js +13 -10
- package/dist/components/Common/SignatureForm/SignatureFormFields.js.map +1 -1
- package/dist/components/Common/UI/CalendarPreview/CalendarPreview.js +1 -1
- package/dist/components/Common/UI/DatePicker/DatePicker.js +1 -1
- package/dist/components/Common/UI/Table/Table.module.scss.js +1 -1
- package/dist/components/Common/hooks/useNumberFormatter.js +1 -1
- package/dist/components/Common/index.d.ts +1 -0
- package/dist/components/Company/AssignSignatory/AssignSignatory.js +8 -6
- package/dist/components/Company/AssignSignatory/AssignSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js +8 -6
- package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js.map +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js +10 -8
- package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js.map +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js +8 -7
- package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js +14 -13
- package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js.map +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/Schema.d.ts +2 -2
- package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +5 -8
- package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js +8 -6
- package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js.map +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js +10 -9
- package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js +11 -10
- package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js.map +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +5 -8
- package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/TitleSelect.js +8 -7
- package/dist/components/Company/AssignSignatory/TitleSelect.js.map +1 -1
- package/dist/components/Company/AssignSignatory/useAssignSignatory.js +7 -10
- package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccount.js +1 -1
- package/dist/components/Company/BankAccount/BankAccountForm/Actions.js +9 -8
- package/dist/components/Company/BankAccount/BankAccountForm/Actions.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountForm/BankAccountForm.js +2 -2
- package/dist/components/Company/BankAccount/BankAccountForm/Form.js +11 -9
- package/dist/components/Company/BankAccount/BankAccountForm/Form.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountForm/context.js +5 -8
- package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountList/Actions.js +12 -10
- package/dist/components/Company/BankAccount/BankAccountList/Actions.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountList/BankAccountList.js +1 -1
- package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js +13 -11
- package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountVerify/BankAccountVerify.js +2 -2
- package/dist/components/Company/BankAccount/BankAccountVerify/Form.js +6 -4
- package/dist/components/Company/BankAccount/BankAccountVerify/Form.js.map +1 -1
- package/dist/components/Company/DocumentSigner/DocumentList/Actions.js +7 -5
- package/dist/components/Company/DocumentSigner/DocumentList/Actions.js.map +1 -1
- package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js +14 -12
- package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
- package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +5 -8
- package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
- package/dist/components/Company/DocumentSigner/DocumentSigner.js +1 -1
- package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js +11 -9
- package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js.map +1 -1
- package/dist/components/Company/DocumentSigner/SignatureForm/useSignatureForm.js +5 -8
- package/dist/components/Company/DocumentSigner/SignatureForm/useSignatureForm.js.map +1 -1
- package/dist/components/Company/FederalTaxes/Actions.js +9 -7
- package/dist/components/Company/FederalTaxes/Actions.js.map +1 -1
- package/dist/components/Company/FederalTaxes/FederalTaxes.js +20 -18
- package/dist/components/Company/FederalTaxes/FederalTaxes.js.map +1 -1
- package/dist/components/Company/FederalTaxes/Form.js +6 -4
- package/dist/components/Company/FederalTaxes/Form.js.map +1 -1
- package/dist/components/Company/FederalTaxes/useFederalTaxes.js +10 -13
- package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
- package/dist/components/Company/Industry/Actions.js +7 -5
- package/dist/components/Company/Industry/Actions.js.map +1 -1
- package/dist/components/Company/Industry/Context.js +8 -11
- package/dist/components/Company/Industry/Context.js.map +1 -1
- package/dist/components/Company/Industry/Edit.js +12 -10
- package/dist/components/Company/Industry/Edit.js.map +1 -1
- package/dist/components/Company/Industry/Industry.js +2 -2
- package/dist/components/Company/Locations/LocationForm/Actions.js +8 -6
- package/dist/components/Company/Locations/LocationForm/Actions.js.map +1 -1
- package/dist/components/Company/Locations/LocationForm/Form.js +6 -5
- package/dist/components/Company/Locations/LocationForm/Form.js.map +1 -1
- package/dist/components/Company/Locations/LocationForm/LocationForm.js +16 -14
- package/dist/components/Company/Locations/LocationForm/LocationForm.js.map +1 -1
- package/dist/components/Company/Locations/LocationForm/useLocationForm.js +5 -8
- package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
- package/dist/components/Company/Locations/LocationsList/Actions.js +8 -6
- package/dist/components/Company/Locations/LocationsList/Actions.js.map +1 -1
- package/dist/components/Company/Locations/LocationsList/List.js +4 -2
- package/dist/components/Company/Locations/LocationsList/List.js.map +1 -1
- package/dist/components/Company/Locations/LocationsList/LocationsList.js +15 -13
- package/dist/components/Company/Locations/LocationsList/LocationsList.js.map +1 -1
- package/dist/components/Company/Locations/LocationsList/useLocationsList.js +5 -8
- package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
- package/dist/components/Company/OnboardingOverview/Completed.js +14 -12
- package/dist/components/Company/OnboardingOverview/Completed.js.map +1 -1
- package/dist/components/Company/OnboardingOverview/MissingRequirements.js +8 -6
- package/dist/components/Company/OnboardingOverview/MissingRequirements.js.map +1 -1
- package/dist/components/Company/OnboardingOverview/OnboardingOverview.js +5 -3
- package/dist/components/Company/OnboardingOverview/OnboardingOverview.js.map +1 -1
- package/dist/components/Company/OnboardingOverview/context.js +5 -8
- package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
- package/dist/components/Company/PaySchedule/PaySchedule.js +40 -38
- package/dist/components/Company/PaySchedule/PaySchedule.js.map +1 -1
- package/dist/components/Company/PaySchedule/_parts/Actions.js +12 -10
- package/dist/components/Company/PaySchedule/_parts/Actions.js.map +1 -1
- package/dist/components/Company/PaySchedule/_parts/Edit.js +17 -16
- package/dist/components/Company/PaySchedule/_parts/Edit.js.map +1 -1
- package/dist/components/Company/PaySchedule/_parts/Head.js +8 -6
- package/dist/components/Company/PaySchedule/_parts/Head.js.map +1 -1
- package/dist/components/Company/PaySchedule/_parts/List.js +15 -13
- package/dist/components/Company/PaySchedule/_parts/List.js.map +1 -1
- package/dist/components/Company/PaySchedule/usePaySchedule.js +8 -11
- package/dist/components/Company/PaySchedule/usePaySchedule.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js +7 -5
- package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.js +3 -3
- package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +5 -8
- package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesList/Actions.js +8 -6
- package/dist/components/Company/StateTaxes/StateTaxesList/Actions.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesList/List.js +7 -5
- package/dist/components/Company/StateTaxes/StateTaxesList/List.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesList/StateTaxesList.js +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesList/context.js +5 -8
- package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
- package/dist/components/Contractor/Address/Address.js +10 -8
- package/dist/components/Contractor/Address/Address.js.map +1 -1
- package/dist/components/Contractor/Address/Form.js +4 -3
- package/dist/components/Contractor/Address/Form.js.map +1 -1
- package/dist/components/Contractor/Address/useAddress.js +7 -10
- package/dist/components/Contractor/Address/useAddress.js.map +1 -1
- package/dist/components/Contractor/ContractorList/index.js +26 -25
- package/dist/components/Contractor/ContractorList/index.js.map +1 -1
- package/dist/components/Contractor/ContractorList/useContractorList.js +1 -1
- package/dist/components/Contractor/NewHireReport/NewHireReport.js +58 -55
- package/dist/components/Contractor/NewHireReport/NewHireReport.js.map +1 -1
- package/dist/components/Contractor/NewHireReport/types.d.ts +1 -0
- package/dist/components/Contractor/OnboardingFlow/OnboardingFlowComponents.js +19 -12
- package/dist/components/Contractor/OnboardingFlow/OnboardingFlowComponents.js.map +1 -1
- package/dist/components/Contractor/OnboardingFlow/onboardingStateMachine.js +6 -5
- package/dist/components/Contractor/OnboardingFlow/onboardingStateMachine.js.map +1 -1
- package/dist/components/Contractor/PaymentMethod/BankAccountForm.js +7 -5
- package/dist/components/Contractor/PaymentMethod/BankAccountForm.js.map +1 -1
- package/dist/components/Contractor/PaymentMethod/PaymentMethod.d.ts +4 -4
- package/dist/components/Contractor/PaymentMethod/PaymentMethod.js +87 -85
- package/dist/components/Contractor/PaymentMethod/PaymentMethod.js.map +1 -1
- package/dist/components/Contractor/PaymentMethod/PaymentTypeForm.js +3 -2
- package/dist/components/Contractor/PaymentMethod/PaymentTypeForm.js.map +1 -1
- package/dist/components/Contractor/Profile/ContractorProfile.js +1 -1
- package/dist/components/Contractor/Profile/ContractorProfileForm.js +13 -13
- package/dist/components/Contractor/Profile/useContractorProfile.d.ts +19 -19
- package/dist/components/Contractor/Profile/useContractorProfile.js +37 -41
- package/dist/components/Contractor/Profile/useContractorProfile.js.map +1 -1
- package/dist/components/Contractor/Submit/Submit.js +28 -27
- package/dist/components/Contractor/Submit/Submit.js.map +1 -1
- package/dist/components/Employee/Compensation/Actions.js +6 -5
- package/dist/components/Employee/Compensation/Actions.js.map +1 -1
- package/dist/components/Employee/Compensation/Compensation.js +10 -10
- package/dist/components/Employee/Compensation/Compensation.js.map +1 -1
- package/dist/components/Employee/Compensation/Edit.js +15 -14
- package/dist/components/Employee/Compensation/Edit.js.map +1 -1
- package/dist/components/Employee/Compensation/List.js +25 -23
- package/dist/components/Employee/Compensation/List.js.map +1 -1
- package/dist/components/Employee/Compensation/useCompensation.js +1 -1
- package/dist/components/Employee/Compensation/useCompensation.js.map +1 -1
- package/dist/components/Employee/Deductions/Deductions.js +1 -1
- package/dist/components/Employee/Deductions/Deductions.js.map +1 -1
- package/dist/components/Employee/Deductions/DeductionsForm/DeductionsForm.js +15 -14
- package/dist/components/Employee/Deductions/DeductionsForm/DeductionsForm.js.map +1 -1
- package/dist/components/Employee/Deductions/DeductionsList/DeductionsList.js +10 -9
- package/dist/components/Employee/Deductions/DeductionsList/DeductionsList.js.map +1 -1
- package/dist/components/Employee/Deductions/IncludeDeductionsForm/IncludeDeductionsForm.js +12 -11
- package/dist/components/Employee/Deductions/IncludeDeductionsForm/IncludeDeductionsForm.js.map +1 -1
- package/dist/components/Employee/DocumentSigner/DocumentList/Actions.js +8 -6
- package/dist/components/Employee/DocumentSigner/DocumentList/Actions.js.map +1 -1
- package/dist/components/Employee/DocumentSigner/DocumentList/DocumentList.js +12 -10
- package/dist/components/Employee/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
- package/dist/components/Employee/DocumentSigner/DocumentList/List.js +4 -2
- package/dist/components/Employee/DocumentSigner/DocumentList/List.js.map +1 -1
- package/dist/components/Employee/DocumentSigner/DocumentList/useDocumentList.js +5 -8
- package/dist/components/Employee/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
- package/dist/components/Employee/DocumentSigner/SignatureForm/SignatureForm.js +16 -14
- package/dist/components/Employee/DocumentSigner/SignatureForm/SignatureForm.js.map +1 -1
- package/dist/components/Employee/DocumentSigner/SignatureForm/useSignatureForm.js +5 -8
- package/dist/components/Employee/DocumentSigner/SignatureForm/useSignatureForm.js.map +1 -1
- package/dist/components/Employee/EmployeeList/Actions.js +6 -4
- package/dist/components/Employee/EmployeeList/Actions.js.map +1 -1
- package/dist/components/Employee/EmployeeList/EmployeeList.js +76 -62
- package/dist/components/Employee/EmployeeList/EmployeeList.js.map +1 -1
- package/dist/components/Employee/EmployeeList/Head.js +7 -5
- package/dist/components/Employee/EmployeeList/Head.js.map +1 -1
- package/dist/components/Employee/EmployeeList/List.js +30 -27
- package/dist/components/Employee/EmployeeList/List.js.map +1 -1
- package/dist/components/Employee/EmployeeList/useEmployeeList.d.ts +1 -0
- package/dist/components/Employee/EmployeeList/useEmployeeList.js +5 -8
- package/dist/components/Employee/EmployeeList/useEmployeeList.js.map +1 -1
- package/dist/components/Employee/FederalTaxes/Actions.d.ts +1 -0
- package/dist/components/Employee/FederalTaxes/Actions.js +15 -0
- package/dist/components/Employee/FederalTaxes/Actions.js.map +1 -0
- package/dist/components/Employee/FederalTaxes/FederalForm.d.ts +29 -0
- package/dist/components/Employee/FederalTaxes/FederalForm.js +110 -0
- package/dist/components/Employee/FederalTaxes/FederalForm.js.map +1 -0
- package/dist/components/Employee/FederalTaxes/FederalTaxes.d.ts +6 -0
- package/dist/components/Employee/FederalTaxes/FederalTaxes.js +72 -0
- package/dist/components/Employee/FederalTaxes/FederalTaxes.js.map +1 -0
- package/dist/components/Employee/FederalTaxes/Head.d.ts +1 -0
- package/dist/components/Employee/FederalTaxes/Head.js +24 -0
- package/dist/components/Employee/FederalTaxes/Head.js.map +1 -0
- package/dist/components/Employee/FederalTaxes/index.d.ts +2 -0
- package/dist/components/Employee/FederalTaxes/useFederalTaxes.d.ts +5 -0
- package/dist/components/Employee/FederalTaxes/useFederalTaxes.js +17 -0
- package/dist/components/Employee/FederalTaxes/useFederalTaxes.js.map +1 -0
- package/dist/components/Employee/Landing/Landing.js +15 -14
- package/dist/components/Employee/Landing/Landing.js.map +1 -1
- package/dist/components/Employee/OnboardingFlow/OnboardingFlow.d.ts +1 -19
- package/dist/components/Employee/OnboardingFlow/OnboardingFlow.js.map +1 -1
- package/dist/components/Employee/OnboardingFlow/OnboardingFlowComponents.d.ts +22 -0
- package/dist/components/Employee/OnboardingFlow/OnboardingFlowComponents.js +18 -0
- package/dist/components/Employee/OnboardingFlow/OnboardingFlowComponents.js.map +1 -0
- package/dist/components/Employee/OnboardingFlow/onboardingStateMachine.d.ts +2 -1
- package/dist/components/Employee/OnboardingFlow/onboardingStateMachine.js +72 -63
- package/dist/components/Employee/OnboardingFlow/onboardingStateMachine.js.map +1 -1
- package/dist/components/Employee/OnboardingSummary/OnboardingSummary.js +9 -9
- package/dist/components/Employee/OnboardingSummary/OnboardingSummary.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/Actions.js +9 -7
- package/dist/components/Employee/PaymentMethod/Actions.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/BankAccount.d.ts +2 -2
- package/dist/components/Employee/PaymentMethod/BankAccountEdit.js +6 -5
- package/dist/components/Employee/PaymentMethod/BankAccountEdit.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/BankAccountsList.js +10 -8
- package/dist/components/Employee/PaymentMethod/BankAccountsList.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/PaymentMethod.js +8 -8
- package/dist/components/Employee/PaymentMethod/PaymentMethod.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/PaymentTypeForm.js +3 -2
- package/dist/components/Employee/PaymentMethod/PaymentTypeForm.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/Split.js +12 -11
- package/dist/components/Employee/PaymentMethod/Split.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/usePaymentMethod.d.ts +8 -8
- package/dist/components/Employee/PaymentMethod/usePaymentMethod.js +11 -14
- package/dist/components/Employee/PaymentMethod/usePaymentMethod.js.map +1 -1
- package/dist/components/Employee/Profile/Actions.js +9 -7
- package/dist/components/Employee/Profile/Actions.js.map +1 -1
- package/dist/components/Employee/Profile/AdminPersonalDetails.d.ts +2 -2
- package/dist/components/Employee/Profile/AdminPersonalDetails.js +10 -9
- package/dist/components/Employee/Profile/AdminPersonalDetails.js.map +1 -1
- package/dist/components/Employee/Profile/HomeAddress.js +6 -5
- package/dist/components/Employee/Profile/HomeAddress.js.map +1 -1
- package/dist/components/Employee/Profile/PersonalDetailsInputs.d.ts +2 -2
- package/dist/components/Employee/Profile/PersonalDetailsInputs.js +22 -21
- package/dist/components/Employee/Profile/PersonalDetailsInputs.js.map +1 -1
- package/dist/components/Employee/Profile/Profile.js +15 -13
- package/dist/components/Employee/Profile/Profile.js.map +1 -1
- package/dist/components/Employee/Profile/useProfile.js +5 -8
- package/dist/components/Employee/Profile/useProfile.js.map +1 -1
- package/dist/components/Employee/SelfOnboardingFlow/SelfOnboardingComponents.d.ts +2 -1
- package/dist/components/Employee/SelfOnboardingFlow/SelfOnboardingComponents.js +37 -24
- package/dist/components/Employee/SelfOnboardingFlow/SelfOnboardingComponents.js.map +1 -1
- package/dist/components/Employee/SelfOnboardingFlow/selfOnboardingMachine.d.ts +2 -1
- package/dist/components/Employee/SelfOnboardingFlow/selfOnboardingMachine.js +31 -19
- package/dist/components/Employee/SelfOnboardingFlow/selfOnboardingMachine.js.map +1 -1
- package/dist/components/Employee/StateTaxes/Actions.d.ts +1 -0
- package/dist/components/Employee/StateTaxes/Actions.js +15 -0
- package/dist/components/Employee/StateTaxes/Actions.js.map +1 -0
- package/dist/components/Employee/StateTaxes/StateForm.d.ts +10 -0
- package/dist/components/Employee/StateTaxes/StateForm.js +34 -0
- package/dist/components/Employee/StateTaxes/StateForm.js.map +1 -0
- package/dist/components/Employee/StateTaxes/StateTaxes.d.ts +7 -0
- package/dist/components/Employee/StateTaxes/StateTaxes.js +90 -0
- package/dist/components/Employee/StateTaxes/StateTaxes.js.map +1 -0
- package/dist/components/Employee/StateTaxes/index.d.ts +2 -0
- package/dist/components/Employee/StateTaxes/useStateTaxes.d.ts +8 -0
- package/dist/components/Employee/StateTaxes/useStateTaxes.js +17 -0
- package/dist/components/Employee/StateTaxes/useStateTaxes.js.map +1 -0
- package/dist/components/Employee/Taxes/Actions.js +10 -8
- package/dist/components/Employee/Taxes/Actions.js.map +1 -1
- package/dist/components/Employee/Taxes/FederalForm.js +14 -12
- package/dist/components/Employee/Taxes/FederalForm.js.map +1 -1
- package/dist/components/Employee/Taxes/Taxes.d.ts +5 -0
- package/dist/components/Employee/Taxes/Taxes.js +73 -85
- package/dist/components/Employee/Taxes/Taxes.js.map +1 -1
- package/dist/components/Employee/Taxes/useTaxes.js +5 -8
- package/dist/components/Employee/Taxes/useTaxes.js.map +1 -1
- package/dist/components/Employee/index.d.ts +3 -1
- package/dist/components/Employee/index.js +16 -12
- package/dist/components/Employee/index.js.map +1 -1
- package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.d.ts +4 -2
- package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js +75 -34
- package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js.map +1 -1
- package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.d.ts +10 -5
- package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js +118 -50
- package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js +14 -11
- package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollList/PayrollList.d.ts +1 -1
- package/dist/components/Payroll/PayrollList/PayrollList.js +24 -11
- package/dist/components/Payroll/PayrollList/PayrollList.js.map +1 -1
- package/dist/components/Payroll/PayrollList/PayrollListPresentation.d.ts +8 -6
- package/dist/components/Payroll/PayrollList/PayrollListPresentation.js +36 -25
- package/dist/components/Payroll/PayrollList/PayrollListPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollOverview/PayrollOverview.js +1 -1
- package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js +12 -9
- package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js.map +1 -1
- package/dist/components/Payroll/RunPayrollFlow/RunPayroll.d.ts +2 -1
- package/dist/components/Payroll/RunPayrollFlow/RunPayroll.js +4 -4
- package/dist/components/Payroll/RunPayrollFlow/RunPayroll.js.map +1 -1
- package/dist/components/Payroll/helpers.d.ts +20 -0
- package/dist/components/Payroll/helpers.js +208 -0
- package/dist/components/Payroll/helpers.js.map +1 -0
- package/dist/components/Payroll/helpers.test.d.ts +1 -0
- package/dist/contexts/ApiProvider/ApiProvider.js +4 -4
- package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js +8 -5
- package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js.map +1 -1
- package/dist/contexts/ThemeProvider/ThemeProvider.js +7 -7
- package/dist/contexts/ThemeProvider/ThemeProvider.js.map +1 -1
- package/dist/helpers/formattedStrings.d.ts +9 -0
- package/dist/helpers/formattedStrings.js +55 -16
- package/dist/helpers/formattedStrings.js.map +1 -1
- package/dist/i18n/I18n.js +11 -11
- package/dist/i18n/I18n.js.map +1 -1
- package/dist/i18n/en/Employee.FederalTaxes.json.js +46 -0
- package/dist/i18n/en/Employee.FederalTaxes.json.js.map +1 -0
- package/dist/i18n/en/Employee.StateTaxes.json.js +6 -10
- package/dist/i18n/en/Employee.StateTaxes.json.js.map +1 -1
- package/dist/i18n/en/Employee.Taxes.json.js +7 -7
- package/dist/i18n/en/Payroll.PayrollConfiguration.json.js +30 -0
- package/dist/i18n/en/Payroll.PayrollConfiguration.json.js.map +1 -0
- package/dist/i18n/en/Payroll.PayrollList.json.js +14 -0
- package/dist/i18n/en/Payroll.PayrollList.json.js.map +1 -0
- package/dist/i18n/en/common.json.d.ts +8 -0
- package/dist/i18n/en/common.json.js +15 -13
- package/dist/i18n/en/common.json.js.map +1 -1
- package/dist/shared/constants.d.ts +4 -2
- package/dist/shared/constants.js +10 -9
- package/dist/shared/constants.js.map +1 -1
- package/dist/style.css +1 -1
- package/dist/types/i18next.d.ts +71 -4
- package/package.json +29 -30
|
@@ -1,116 +1,118 @@
|
|
|
1
|
-
import { jsx as t, jsxs as
|
|
2
|
-
import { useTranslation as
|
|
3
|
-
import { useForm as
|
|
4
|
-
import { useContractorPaymentMethodGetSuspense as
|
|
5
|
-
import { useContractorPaymentMethodGetBankAccountsSuspense as
|
|
6
|
-
import { useContractorPaymentMethodsCreateBankAccountMutation as
|
|
7
|
-
import { useMemo as
|
|
8
|
-
import
|
|
9
|
-
import { zodResolver as
|
|
10
|
-
import { useContractorPaymentMethodUpdateMutation as
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
1
|
+
import { jsx as t, jsxs as H } from "react/jsx-runtime";
|
|
2
|
+
import { useTranslation as j } from "react-i18next";
|
|
3
|
+
import { useForm as G, useWatch as Q, FormProvider as V } from "react-hook-form";
|
|
4
|
+
import { useContractorPaymentMethodGetSuspense as Y, buildContractorPaymentMethodGetQuery as z } from "/home/runner/work/embedded-react-sdk/embedded-react-sdk/node_modules/@gusto/embedded-api/esm/react-query/contractorPaymentMethodGet.js";
|
|
5
|
+
import { useContractorPaymentMethodGetBankAccountsSuspense as L } from "/home/runner/work/embedded-react-sdk/embedded-react-sdk/node_modules/@gusto/embedded-api/esm/react-query/contractorPaymentMethodGetBankAccounts.js";
|
|
6
|
+
import { useContractorPaymentMethodsCreateBankAccountMutation as K } from "/home/runner/work/embedded-react-sdk/embedded-react-sdk/node_modules/@gusto/embedded-api/esm/react-query/contractorPaymentMethodsCreateBankAccount.js";
|
|
7
|
+
import { useState as W, useMemo as J } from "react";
|
|
8
|
+
import n from "zod";
|
|
9
|
+
import { zodResolver as X } from "/home/runner/work/embedded-react-sdk/embedded-react-sdk/node_modules/@hookform/resolvers/zod/dist/zod.mjs";
|
|
10
|
+
import { useContractorPaymentMethodUpdateMutation as Z } from "/home/runner/work/embedded-react-sdk/embedded-react-sdk/node_modules/@gusto/embedded-api/esm/react-query/contractorPaymentMethodUpdate.js";
|
|
11
|
+
import { useQueryClient as $ } from "/home/runner/work/embedded-react-sdk/embedded-react-sdk/node_modules/@tanstack/react-query/build/modern/index.js";
|
|
12
|
+
import { useGustoEmbeddedContext as I } from "/home/runner/work/embedded-react-sdk/embedded-react-sdk/node_modules/@gusto/embedded-api/esm/react-query/_context.js";
|
|
13
|
+
import { BankAccountForm as tt } from "./BankAccountForm.js";
|
|
14
|
+
import { PaymentTypeForm as et } from "./PaymentTypeForm.js";
|
|
15
|
+
import { useComponentDictionary as ot, useI18n as nt } from "../../../i18n/I18n.js";
|
|
16
|
+
import { BaseComponent as rt } from "../../Base/Base.js";
|
|
17
|
+
import { useBase as ct } from "../../Base/useBase.js";
|
|
18
|
+
import { useComponentContext as at } from "../../../contexts/ComponentAdapter/useComponentContext.js";
|
|
19
|
+
import { Form as it } from "../../Common/Form/Form.js";
|
|
20
|
+
import { PAYMENT_METHODS as m, componentEvents as s } from "../../../shared/constants.js";
|
|
21
|
+
import { ActionsLayout as mt } from "../../Common/ActionsLayout/ActionsLayout.js";
|
|
22
|
+
import { Flex as st } from "../../Common/Flex/Flex.js";
|
|
23
|
+
import "classnames";
|
|
24
|
+
import { routingNumberValidation as ut, accountNumberValidation as dt } from "../../../helpers/validations.js";
|
|
25
|
+
const pt = n.discriminatedUnion("type", [
|
|
26
|
+
n.object({
|
|
27
|
+
type: n.literal("Direct Deposit"),
|
|
28
|
+
name: n.string().min(1),
|
|
29
|
+
routingNumber: ut,
|
|
30
|
+
accountNumber: n.any(),
|
|
28
31
|
//Explicitely setting account number as most permissive
|
|
29
|
-
accountType:
|
|
32
|
+
accountType: n.enum(["Checking", "Savings"])
|
|
30
33
|
}),
|
|
31
|
-
|
|
32
|
-
type:
|
|
34
|
+
n.object({
|
|
35
|
+
type: n.literal("Check")
|
|
33
36
|
})
|
|
34
37
|
]);
|
|
35
|
-
function
|
|
36
|
-
return /* @__PURE__ */ t(
|
|
38
|
+
function jt(o) {
|
|
39
|
+
return /* @__PURE__ */ t(rt, { ...o, children: /* @__PURE__ */ t(yt, { ...o, children: o.children }) });
|
|
37
40
|
}
|
|
38
|
-
function
|
|
39
|
-
|
|
40
|
-
const { t:
|
|
41
|
-
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
} =
|
|
45
|
-
|
|
46
|
-
}
|
|
41
|
+
function yt({ contractorId: o, className: P, dictionary: C }) {
|
|
42
|
+
ot("Contractor.PaymentMethod", C), nt("Contractor.PaymentMethod");
|
|
43
|
+
const { t: u } = j("Contractor.PaymentMethod"), { onEvent: a, baseSubmitHandler: b } = ct(), d = at(), A = $(), N = I(), [T, p] = W(!1), g = Y({
|
|
44
|
+
contractorUuid: o
|
|
45
|
+
}), D = z(N, {
|
|
46
|
+
contractorUuid: o
|
|
47
|
+
}), i = g.data.contractorPaymentMethod, {
|
|
48
|
+
data: { contractorBankAccountList: E }
|
|
49
|
+
} = L({
|
|
50
|
+
contractorUuid: o
|
|
51
|
+
}), e = E?.[0] || void 0, { mutateAsync: k, isPending: R } = Z(), { mutateAsync: v, isPending: B } = K(), O = J(
|
|
47
52
|
() => ({
|
|
48
|
-
type:
|
|
53
|
+
type: i.type || m.check,
|
|
49
54
|
name: e?.name || "",
|
|
50
55
|
routingNumber: e?.routingNumber || "",
|
|
51
56
|
accountNumber: e?.hiddenAccountNumber || "",
|
|
52
57
|
accountType: e?.accountType || "Checking"
|
|
53
58
|
}),
|
|
54
|
-
[
|
|
55
|
-
),
|
|
56
|
-
resolver:
|
|
57
|
-
defaultValues:
|
|
58
|
-
}),
|
|
59
|
-
await b(
|
|
60
|
-
let
|
|
61
|
-
if (
|
|
62
|
-
const { name:
|
|
63
|
-
if (
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
return;
|
|
67
|
-
}
|
|
68
|
-
} else
|
|
69
|
-
h = !1;
|
|
70
|
-
}
|
|
71
|
-
const E = await C({
|
|
72
|
-
request: {
|
|
73
|
-
contractorUuid: n,
|
|
74
|
-
requestBody: {
|
|
75
|
-
type: o.type,
|
|
76
|
-
version: u.version
|
|
77
|
-
}
|
|
59
|
+
[i, e]
|
|
60
|
+
), r = G({
|
|
61
|
+
resolver: X(pt),
|
|
62
|
+
defaultValues: O
|
|
63
|
+
}), S = Q({ control: r.control, name: "type" }), _ = async (x) => {
|
|
64
|
+
await b(x, async (c) => {
|
|
65
|
+
let y;
|
|
66
|
+
if (c.type === m.directDeposit) {
|
|
67
|
+
const { name: h, accountNumber: f, routingNumber: l, accountType: M } = c;
|
|
68
|
+
if ((h !== e?.name || l !== e.routingNumber || M !== e.accountType || f !== e.hiddenAccountNumber) && !dt.safeParse(c.accountNumber).success) {
|
|
69
|
+
r.setError("accountNumber", { type: "validate" });
|
|
70
|
+
return;
|
|
78
71
|
}
|
|
79
|
-
|
|
80
|
-
if (m(s.CONTRACTOR_PAYMENT_METHOD_UPDATED, E), o.type === i.directDeposit && h) {
|
|
81
|
-
const a = await A({
|
|
72
|
+
const w = await v({
|
|
82
73
|
request: {
|
|
83
|
-
contractorUuid:
|
|
74
|
+
contractorUuid: o,
|
|
84
75
|
requestBody: {
|
|
85
|
-
name:
|
|
86
|
-
routingNumber:
|
|
87
|
-
accountNumber:
|
|
88
|
-
accountType:
|
|
76
|
+
name: h,
|
|
77
|
+
routingNumber: l,
|
|
78
|
+
accountNumber: f,
|
|
79
|
+
accountType: M
|
|
89
80
|
}
|
|
90
81
|
}
|
|
91
82
|
});
|
|
92
|
-
|
|
83
|
+
a(s.CONTRACTOR_BANK_ACCOUNT_CREATED, w), p(!0);
|
|
84
|
+
const q = (await A.fetchQuery(D)).contractorPaymentMethod;
|
|
85
|
+
p(!1), y = q.version;
|
|
93
86
|
}
|
|
94
|
-
|
|
87
|
+
const F = await k({
|
|
88
|
+
request: {
|
|
89
|
+
contractorUuid: o,
|
|
90
|
+
requestBody: {
|
|
91
|
+
type: c.type,
|
|
92
|
+
version: y || i.version
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
a(s.CONTRACTOR_PAYMENT_METHOD_UPDATED, F), a(s.CONTRACTOR_PAYMENT_METHOD_DONE);
|
|
95
97
|
});
|
|
96
|
-
},
|
|
97
|
-
return /* @__PURE__ */ t("section", { className:
|
|
98
|
-
/* @__PURE__ */ t(d.Heading, { as: "h2", children:
|
|
99
|
-
/* @__PURE__ */ t(
|
|
98
|
+
}, U = S === m.directDeposit;
|
|
99
|
+
return /* @__PURE__ */ t("section", { className: P, children: /* @__PURE__ */ t(V, { ...r, children: /* @__PURE__ */ t(it, { onSubmit: r.handleSubmit(_), children: /* @__PURE__ */ H(st, { gap: 32, flexDirection: "column", children: [
|
|
100
|
+
/* @__PURE__ */ t(d.Heading, { as: "h2", children: u("title") }),
|
|
101
|
+
/* @__PURE__ */ t(et, {}),
|
|
100
102
|
/* @__PURE__ */ t("hr", {}),
|
|
101
|
-
|
|
102
|
-
/* @__PURE__ */ t(
|
|
103
|
+
U && /* @__PURE__ */ t(tt, { bankAccount: e }),
|
|
104
|
+
/* @__PURE__ */ t(mt, { children: /* @__PURE__ */ t(
|
|
103
105
|
d.Button,
|
|
104
106
|
{
|
|
105
107
|
type: "submit",
|
|
106
108
|
variant: "primary",
|
|
107
|
-
isDisabled:
|
|
108
|
-
children:
|
|
109
|
+
isDisabled: R || B || T,
|
|
110
|
+
children: u("continueCta")
|
|
109
111
|
}
|
|
110
112
|
) })
|
|
111
113
|
] }) }) }) });
|
|
112
114
|
}
|
|
113
115
|
export {
|
|
114
|
-
|
|
116
|
+
jt as PaymentMethod
|
|
115
117
|
};
|
|
116
118
|
//# sourceMappingURL=PaymentMethod.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PaymentMethod.js","sources":["../../../../src/components/Contractor/PaymentMethod/PaymentMethod.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport type { SubmitHandler } from 'react-hook-form'\nimport { FormProvider, useForm, useWatch } from 'react-hook-form'\nimport { useContractorPaymentMethodGetSuspense } from '@gusto/embedded-api/react-query/contractorPaymentMethodGet'\nimport { useContractorPaymentMethodGetBankAccountsSuspense } from '@gusto/embedded-api/react-query/contractorPaymentMethodGetBankAccounts'\nimport { useContractorPaymentMethodsCreateBankAccountMutation } from '@gusto/embedded-api/react-query/contractorPaymentMethodsCreateBankAccount'\nimport { useMemo } from 'react'\nimport z from 'zod'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { useContractorPaymentMethodUpdateMutation } from '@gusto/embedded-api/react-query/contractorPaymentMethodUpdate'\nimport type { PaymentMethodProps } from './types'\nimport { BankAccountForm } from './BankAccountForm'\nimport { PaymentTypeForm } from './PaymentTypeForm'\nimport { useI18n } from '@/i18n'\nimport { BaseComponent, useBase } from '@/components/Base'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { Form } from '@/components/Common/Form'\nimport { useComponentDictionary } from '@/i18n/I18n'\nimport { componentEvents, PAYMENT_METHODS } from '@/shared/constants'\nimport { ActionsLayout } from '@/components/Common/ActionsLayout'\nimport { Flex } from '@/components/Common'\nimport { accountNumberValidation, routingNumberValidation } from '@/helpers/validations'\n\nconst PaymentMethodSchema = z.discriminatedUnion('type', [\n z.object({\n type: z.literal('Direct Deposit'),\n name: z.string().min(1),\n routingNumber: routingNumberValidation,\n accountNumber: z.any(), //Explicitely setting account number as most permissive\n accountType: z.enum(['Checking', 'Savings']),\n }),\n z.object({\n type: z.literal('Check'),\n }),\n])\n\nexport type PaymentMethodSchemaInputs = z.input<typeof PaymentMethodSchema>\nexport type PaymentMethodSchemaOutputs = z.output<typeof PaymentMethodSchema>\n\nexport function PaymentMethod(props: PaymentMethodProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nfunction Root({ contractorId, className, dictionary }: PaymentMethodProps) {\n useComponentDictionary('Contractor.PaymentMethod', dictionary)\n useI18n('Contractor.PaymentMethod')\n const { t } = useTranslation('Contractor.PaymentMethod')\n const { onEvent, baseSubmitHandler } = useBase()\n const Components = useComponentContext()\n\n const {\n data: { contractorPaymentMethod },\n } = useContractorPaymentMethodGetSuspense({ contractorUuid: contractorId })\n const paymentMethod = contractorPaymentMethod!\n\n const {\n data: { contractorBankAccountList },\n } = useContractorPaymentMethodGetBankAccountsSuspense({\n contractorUuid: contractorId,\n })\n const bankAccount = contractorBankAccountList?.[0] || undefined\n\n const { mutateAsync: updatePaymentMethod, isPending: paymentMethodPending } =\n useContractorPaymentMethodUpdateMutation()\n const { mutateAsync: createBankAccount, isPending: bankAccountPending } =\n useContractorPaymentMethodsCreateBankAccountMutation()\n\n const defaultValues = useMemo(\n () => ({\n type: paymentMethod.type || PAYMENT_METHODS.check,\n name: bankAccount?.name || '',\n routingNumber: bankAccount?.routingNumber || '',\n accountNumber: bankAccount?.hiddenAccountNumber || '',\n accountType: bankAccount?.accountType || 'Checking',\n }),\n [paymentMethod, bankAccount],\n )\n\n const formMethods = useForm({\n resolver: zodResolver(PaymentMethodSchema),\n defaultValues: defaultValues,\n })\n\n const watchedType = useWatch({ control: formMethods.control, name: 'type' })\n const onSubmit: SubmitHandler<PaymentMethodSchemaInputs> = async data => {\n await baseSubmitHandler(data, async payload => {\n let permitBankSubmission = true\n\n if (payload.type === PAYMENT_METHODS.directDeposit) {\n /** Custom validation logic for accountNumber - because masked account value is used as default value, it is only validated when any of the bank-related fields are modified*/\n const { name, accountNumber, routingNumber, accountType } = payload\n if (\n name !== bankAccount?.name ||\n routingNumber !== bankAccount.routingNumber ||\n accountType !== bankAccount.accountType ||\n accountNumber !== bankAccount.hiddenAccountNumber\n ) {\n const res = accountNumberValidation.safeParse(payload.accountNumber)\n if (!res.success) {\n formMethods.setError('accountNumber', { type: 'validate' })\n return\n }\n } else {\n //Edgecase: bank fields are untouched, but we don't want to resubmit with masked account number\n permitBankSubmission = false\n }\n }\n const paymentMethodResponse = await updatePaymentMethod({\n request: {\n contractorUuid: contractorId,\n requestBody: {\n type: payload.type,\n\n version: paymentMethod.version as string,\n },\n },\n })\n onEvent(componentEvents.CONTRACTOR_PAYMENT_METHOD_UPDATED, paymentMethodResponse)\n\n //This update has to follow payment method update because it changes version of paymentMethod\n if (payload.type === PAYMENT_METHODS.directDeposit && permitBankSubmission) {\n const bankAccountResponse = await createBankAccount({\n request: {\n contractorUuid: contractorId,\n requestBody: {\n name: payload.name,\n routingNumber: payload.routingNumber,\n accountNumber: payload.accountNumber,\n accountType: payload.accountType,\n },\n },\n })\n onEvent(componentEvents.CONTRACTOR_BANK_ACCOUNT_CREATED, bankAccountResponse)\n }\n onEvent(componentEvents.CONTRACTOR_PAYMENT_METHOD_DONE)\n })\n }\n\n const showBankAccountForm = watchedType === PAYMENT_METHODS.directDeposit\n\n return (\n <section className={className}>\n <FormProvider {...formMethods}>\n <Form onSubmit={formMethods.handleSubmit(onSubmit)}>\n <Flex gap={32} flexDirection={'column'}>\n <Components.Heading as=\"h2\">{t('title')}</Components.Heading>\n <PaymentTypeForm />\n <hr />\n {showBankAccountForm && <BankAccountForm bankAccount={bankAccount} />}\n <ActionsLayout>\n <Components.Button\n type=\"submit\"\n variant=\"primary\"\n isDisabled={paymentMethodPending || bankAccountPending}\n >\n {t('continueCta')}\n </Components.Button>\n </ActionsLayout>\n </Flex>\n </Form>\n </FormProvider>\n </section>\n )\n}\n"],"names":["PaymentMethodSchema","z","routingNumberValidation","PaymentMethod","props","jsx","BaseComponent","Root","contractorId","className","dictionary","useComponentDictionary","useI18n","t","useTranslation","onEvent","baseSubmitHandler","useBase","Components","useComponentContext","contractorPaymentMethod","useContractorPaymentMethodGetSuspense","paymentMethod","contractorBankAccountList","useContractorPaymentMethodGetBankAccountsSuspense","bankAccount","updatePaymentMethod","paymentMethodPending","useContractorPaymentMethodUpdateMutation","createBankAccount","bankAccountPending","useContractorPaymentMethodsCreateBankAccountMutation","defaultValues","useMemo","PAYMENT_METHODS","formMethods","useForm","zodResolver","watchedType","useWatch","onSubmit","data","payload","permitBankSubmission","name","accountNumber","routingNumber","accountType","accountNumberValidation","paymentMethodResponse","componentEvents","bankAccountResponse","showBankAccountForm","FormProvider","Form","jsxs","Flex","PaymentTypeForm","BankAccountForm","ActionsLayout"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PaymentMethod.js","sources":["../../../../src/components/Contractor/PaymentMethod/PaymentMethod.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport type { SubmitHandler } from 'react-hook-form'\nimport { FormProvider, useForm, useWatch } from 'react-hook-form'\nimport { useContractorPaymentMethodGetSuspense } from '@gusto/embedded-api/react-query/contractorPaymentMethodGet'\nimport { useContractorPaymentMethodGetBankAccountsSuspense } from '@gusto/embedded-api/react-query/contractorPaymentMethodGetBankAccounts'\nimport { useContractorPaymentMethodsCreateBankAccountMutation } from '@gusto/embedded-api/react-query/contractorPaymentMethodsCreateBankAccount'\nimport { useMemo, useState } from 'react'\nimport z from 'zod'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { useContractorPaymentMethodUpdateMutation } from '@gusto/embedded-api/react-query/contractorPaymentMethodUpdate'\nimport { useQueryClient } from '@tanstack/react-query'\nimport { buildContractorPaymentMethodGetQuery } from '@gusto/embedded-api/react-query/contractorPaymentMethodGet'\nimport { useGustoEmbeddedContext } from '@gusto/embedded-api/react-query/_context'\nimport type { PaymentMethodProps } from './types'\nimport { BankAccountForm } from './BankAccountForm'\nimport { PaymentTypeForm } from './PaymentTypeForm'\nimport { useI18n } from '@/i18n'\nimport { BaseComponent, useBase } from '@/components/Base'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { Form } from '@/components/Common/Form'\nimport { useComponentDictionary } from '@/i18n/I18n'\nimport { componentEvents, PAYMENT_METHODS } from '@/shared/constants'\nimport { ActionsLayout } from '@/components/Common/ActionsLayout'\nimport { Flex } from '@/components/Common'\nimport { accountNumberValidation, routingNumberValidation } from '@/helpers/validations'\n\nconst PaymentMethodSchema = z.discriminatedUnion('type', [\n z.object({\n type: z.literal('Direct Deposit'),\n name: z.string().min(1),\n routingNumber: routingNumberValidation,\n accountNumber: z.any(), //Explicitely setting account number as most permissive\n accountType: z.enum(['Checking', 'Savings']),\n }),\n z.object({\n type: z.literal('Check'),\n }),\n])\n\nexport type PaymentMethodSchemaInputs = z.input<typeof PaymentMethodSchema>\nexport type PaymentMethodSchemaOutputs = z.output<typeof PaymentMethodSchema>\n\nexport function PaymentMethod(props: PaymentMethodProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nfunction Root({ contractorId, className, dictionary }: PaymentMethodProps) {\n useComponentDictionary('Contractor.PaymentMethod', dictionary)\n useI18n('Contractor.PaymentMethod')\n const { t } = useTranslation('Contractor.PaymentMethod')\n const { onEvent, baseSubmitHandler } = useBase()\n const Components = useComponentContext()\n const queryClient = useQueryClient()\n const gustoClient = useGustoEmbeddedContext()\n const [isPaymentMethodPending, setIsPaymentMethodPending] = useState(false)\n\n const contractorPaymentMethod = useContractorPaymentMethodGetSuspense({\n contractorUuid: contractorId,\n })\n\n const getPaymentMethodQuery = buildContractorPaymentMethodGetQuery(gustoClient, {\n contractorUuid: contractorId,\n })\n\n const paymentMethod = contractorPaymentMethod.data.contractorPaymentMethod!\n\n const {\n data: { contractorBankAccountList },\n } = useContractorPaymentMethodGetBankAccountsSuspense({\n contractorUuid: contractorId,\n })\n const bankAccount = contractorBankAccountList?.[0] || undefined\n\n const { mutateAsync: updatePaymentMethod, isPending: paymentMethodPending } =\n useContractorPaymentMethodUpdateMutation()\n const { mutateAsync: createBankAccount, isPending: bankAccountPending } =\n useContractorPaymentMethodsCreateBankAccountMutation()\n\n const defaultValues = useMemo(\n () => ({\n type: paymentMethod.type || PAYMENT_METHODS.check,\n name: bankAccount?.name || '',\n routingNumber: bankAccount?.routingNumber || '',\n accountNumber: bankAccount?.hiddenAccountNumber || '',\n accountType: bankAccount?.accountType || 'Checking',\n }),\n [paymentMethod, bankAccount],\n )\n\n const formMethods = useForm({\n resolver: zodResolver(PaymentMethodSchema),\n defaultValues: defaultValues,\n })\n\n const watchedType = useWatch({ control: formMethods.control, name: 'type' })\n const onSubmit: SubmitHandler<PaymentMethodSchemaInputs> = async data => {\n await baseSubmitHandler(data, async payload => {\n let updatedPaymentMethodVersion: string | undefined\n if (payload.type === PAYMENT_METHODS.directDeposit) {\n /** Custom validation logic for accountNumber - because masked account value is used as default value, it is only validated when any of the bank-related fields are modified*/\n const { name, accountNumber, routingNumber, accountType } = payload\n if (\n name !== bankAccount?.name ||\n routingNumber !== bankAccount.routingNumber ||\n accountType !== bankAccount.accountType ||\n accountNumber !== bankAccount.hiddenAccountNumber\n ) {\n const res = accountNumberValidation.safeParse(payload.accountNumber)\n if (!res.success) {\n formMethods.setError('accountNumber', { type: 'validate' })\n return\n }\n }\n\n const bankAccountResponse = await createBankAccount({\n request: {\n contractorUuid: contractorId,\n requestBody: {\n name,\n routingNumber,\n accountNumber,\n accountType,\n },\n },\n })\n\n onEvent(componentEvents.CONTRACTOR_BANK_ACCOUNT_CREATED, bankAccountResponse)\n\n // We have to fetch the updated payment method imperatively here because updating the bank\n // account will cause the payment method version to update. This ensures we have the latest version.\n setIsPaymentMethodPending(true)\n const updatedPaymentMethodResponse = await queryClient.fetchQuery(getPaymentMethodQuery)\n const updatedPaymentMethod = updatedPaymentMethodResponse.contractorPaymentMethod!\n setIsPaymentMethodPending(false)\n\n updatedPaymentMethodVersion = updatedPaymentMethod.version as string\n }\n // For check payment method, no bank account creation needed\n const paymentMethodResponse = await updatePaymentMethod({\n request: {\n contractorUuid: contractorId,\n requestBody: {\n type: payload.type,\n version: updatedPaymentMethodVersion || (paymentMethod.version as string),\n },\n },\n })\n onEvent(componentEvents.CONTRACTOR_PAYMENT_METHOD_UPDATED, paymentMethodResponse)\n onEvent(componentEvents.CONTRACTOR_PAYMENT_METHOD_DONE)\n })\n }\n\n const showBankAccountForm = watchedType === PAYMENT_METHODS.directDeposit\n\n return (\n <section className={className}>\n <FormProvider {...formMethods}>\n <Form onSubmit={formMethods.handleSubmit(onSubmit)}>\n <Flex gap={32} flexDirection={'column'}>\n <Components.Heading as=\"h2\">{t('title')}</Components.Heading>\n <PaymentTypeForm />\n <hr />\n {showBankAccountForm && <BankAccountForm bankAccount={bankAccount} />}\n <ActionsLayout>\n <Components.Button\n type=\"submit\"\n variant=\"primary\"\n isDisabled={paymentMethodPending || bankAccountPending || isPaymentMethodPending}\n >\n {t('continueCta')}\n </Components.Button>\n </ActionsLayout>\n </Flex>\n </Form>\n </FormProvider>\n </section>\n )\n}\n"],"names":["PaymentMethodSchema","z","routingNumberValidation","PaymentMethod","props","jsx","BaseComponent","Root","contractorId","className","dictionary","useComponentDictionary","useI18n","t","useTranslation","onEvent","baseSubmitHandler","useBase","Components","useComponentContext","queryClient","useQueryClient","gustoClient","useGustoEmbeddedContext","isPaymentMethodPending","setIsPaymentMethodPending","useState","contractorPaymentMethod","useContractorPaymentMethodGetSuspense","getPaymentMethodQuery","buildContractorPaymentMethodGetQuery","paymentMethod","contractorBankAccountList","useContractorPaymentMethodGetBankAccountsSuspense","bankAccount","updatePaymentMethod","paymentMethodPending","useContractorPaymentMethodUpdateMutation","createBankAccount","bankAccountPending","useContractorPaymentMethodsCreateBankAccountMutation","defaultValues","useMemo","PAYMENT_METHODS","formMethods","useForm","zodResolver","watchedType","useWatch","onSubmit","data","payload","updatedPaymentMethodVersion","name","accountNumber","routingNumber","accountType","accountNumberValidation","bankAccountResponse","componentEvents","updatedPaymentMethod","paymentMethodResponse","showBankAccountForm","FormProvider","Form","jsxs","Flex","PaymentTypeForm","BankAccountForm","ActionsLayout"],"mappings":"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"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { jsx as i } from "react/jsx-runtime";
|
|
2
2
|
import { useTranslation as r } from "react-i18next";
|
|
3
3
|
import { z as t } from "zod";
|
|
4
|
+
import "classnames";
|
|
4
5
|
import { PAYMENT_METHODS as o } from "../../../shared/constants.js";
|
|
5
6
|
import { RadioGroupField as p } from "../../Common/Fields/RadioGroupField/RadioGroupField.js";
|
|
6
7
|
t.object({
|
|
7
8
|
type: t.enum(["Check", "Direct Deposit"])
|
|
8
9
|
});
|
|
9
|
-
function
|
|
10
|
+
function d() {
|
|
10
11
|
const { t: e } = r("Contractor.PaymentMethod");
|
|
11
12
|
return /* @__PURE__ */ i(
|
|
12
13
|
p,
|
|
@@ -30,6 +31,6 @@ function s() {
|
|
|
30
31
|
);
|
|
31
32
|
}
|
|
32
33
|
export {
|
|
33
|
-
|
|
34
|
+
d as PaymentTypeForm
|
|
34
35
|
};
|
|
35
36
|
//# sourceMappingURL=PaymentTypeForm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PaymentTypeForm.js","sources":["../../../../src/components/Contractor/PaymentMethod/PaymentTypeForm.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { z } from 'zod'\nimport { RadioGroupField } from '@/components/Common'\nimport { PAYMENT_METHODS } from '@/shared/constants'\n\nexport const PaymentTypeSchema = z.object({\n type: z.enum(['Check', 'Direct Deposit']),\n})\nexport type PaymentTypeInputs = z.input<typeof PaymentTypeSchema>\nexport type PaymentTypePayload = z.output<typeof PaymentTypeSchema>\n\nexport function PaymentTypeForm() {\n const { t } = useTranslation('Contractor.PaymentMethod')\n return (\n <RadioGroupField\n name=\"type\"\n label={t('paymentFieldsetLegend')}\n shouldVisuallyHideLabel\n options={[\n {\n value: PAYMENT_METHODS.directDeposit,\n label: t('directDepositLabel'),\n description: t('directDepositDescription'),\n },\n {\n value: PAYMENT_METHODS.check,\n label: t('checkLabel'),\n description: t('checkDescription'),\n },\n ]}\n />\n )\n}\n"],"names":["z","PaymentTypeForm","t","useTranslation","jsx","RadioGroupField","PAYMENT_METHODS"],"mappings":"
|
|
1
|
+
{"version":3,"file":"PaymentTypeForm.js","sources":["../../../../src/components/Contractor/PaymentMethod/PaymentTypeForm.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { z } from 'zod'\nimport { RadioGroupField } from '@/components/Common'\nimport { PAYMENT_METHODS } from '@/shared/constants'\n\nexport const PaymentTypeSchema = z.object({\n type: z.enum(['Check', 'Direct Deposit']),\n})\nexport type PaymentTypeInputs = z.input<typeof PaymentTypeSchema>\nexport type PaymentTypePayload = z.output<typeof PaymentTypeSchema>\n\nexport function PaymentTypeForm() {\n const { t } = useTranslation('Contractor.PaymentMethod')\n return (\n <RadioGroupField\n name=\"type\"\n label={t('paymentFieldsetLegend')}\n shouldVisuallyHideLabel\n options={[\n {\n value: PAYMENT_METHODS.directDeposit,\n label: t('directDepositLabel'),\n description: t('directDepositDescription'),\n },\n {\n value: PAYMENT_METHODS.check,\n label: t('checkLabel'),\n description: t('checkDescription'),\n },\n ]}\n />\n )\n}\n"],"names":["z","PaymentTypeForm","t","useTranslation","jsx","RadioGroupField","PAYMENT_METHODS"],"mappings":";;;;;;AAKiCA,EAAE,OAAO;AAAA,EACxC,MAAMA,EAAE,KAAK,CAAC,SAAS,gBAAgB,CAAC;AAC1C,CAAC;AAIM,SAASC,IAAkB;AAChC,QAAM,EAAE,GAAAC,EAAA,IAAMC,EAAe,0BAA0B;AACvD,SACE,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,MAAK;AAAA,MACL,OAAOH,EAAE,uBAAuB;AAAA,MAChC,yBAAuB;AAAA,MACvB,SAAS;AAAA,QACP;AAAA,UACE,OAAOI,EAAgB;AAAA,UACvB,OAAOJ,EAAE,oBAAoB;AAAA,UAC7B,aAAaA,EAAE,0BAA0B;AAAA,QAAA;AAAA,QAE3C;AAAA,UACE,OAAOI,EAAgB;AAAA,UACvB,OAAOJ,EAAE,YAAY;AAAA,UACrB,aAAaA,EAAE,kBAAkB;AAAA,QAAA;AAAA,MACnC;AAAA,IACF;AAAA,EAAA;AAGN;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as t } from "react/jsx-runtime";
|
|
2
|
-
import { useContractorsGetSuspense as m } from "
|
|
2
|
+
import { useContractorsGetSuspense as m } from "/home/runner/work/embedded-react-sdk/embedded-react-sdk/node_modules/@gusto/embedded-api/esm/react-query/contractorsGet.js";
|
|
3
3
|
import { useContractorProfile as f } from "./useContractorProfile.js";
|
|
4
4
|
import { ContractorType as W, WageType as g } from "./useContractorProfile.js";
|
|
5
5
|
import { ContractorProfileForm as d } from "./ContractorProfileForm.js";
|
|
@@ -6,14 +6,14 @@ import { useI18n as T } from "../../../i18n/I18n.js";
|
|
|
6
6
|
import { Form as C } from "../../Common/Form/Form.js";
|
|
7
7
|
import { Grid as n } from "../../Common/Grid/Grid.js";
|
|
8
8
|
import { Flex as D } from "../../Common/Flex/Flex.js";
|
|
9
|
-
import { usePlaceholderSSN as I, normalizeSSN as O } from "../../../helpers/ssn.js";
|
|
10
|
-
import { usePlaceholderEin as x, normalizeEin as E } from "../../../helpers/federalEin.js";
|
|
11
|
-
import { ContractorOnboardingStatus as j } from "../../../shared/constants.js";
|
|
12
9
|
import { TextInputField as l } from "../../Common/Fields/TextInputField/TextInputField.js";
|
|
10
|
+
import { NumberInputField as I } from "../../Common/Fields/NumberInputField/NumberInputField.js";
|
|
13
11
|
import { RadioGroupField as d } from "../../Common/Fields/RadioGroupField/RadioGroupField.js";
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
12
|
+
import { SwitchField as O } from "../../Common/Fields/SwitchField/SwitchField.js";
|
|
13
|
+
import { DatePickerField as x } from "../../Common/Fields/DatePickerField/DatePickerField.js";
|
|
14
|
+
import { usePlaceholderSSN as E, normalizeSSN as j } from "../../../helpers/ssn.js";
|
|
15
|
+
import { usePlaceholderEin as w, normalizeEin as G } from "../../../helpers/federalEin.js";
|
|
16
|
+
import { ContractorOnboardingStatus as v } from "../../../shared/constants.js";
|
|
17
17
|
function Z({
|
|
18
18
|
formMethods: u,
|
|
19
19
|
handleSubmit: f,
|
|
@@ -30,7 +30,7 @@ function Z({
|
|
|
30
30
|
}) {
|
|
31
31
|
const t = S();
|
|
32
32
|
T("Contractor.Profile");
|
|
33
|
-
const { t: e } = P("Contractor.Profile"), y =
|
|
33
|
+
const { t: e } = P("Contractor.Profile"), y = E(a?.hasSsn ?? !1), q = w(a?.hasEin ?? !1);
|
|
34
34
|
return /* @__PURE__ */ r("section", { className: R, children: /* @__PURE__ */ r(F, { ...u, children: /* @__PURE__ */ i(C, { onSubmit: f, children: [
|
|
35
35
|
/* @__PURE__ */ i(n, { gridTemplateColumns: "1fr", gap: 24, className: "mb-8", children: [
|
|
36
36
|
/* @__PURE__ */ i("header", { children: [
|
|
@@ -39,12 +39,12 @@ function Z({
|
|
|
39
39
|
] }),
|
|
40
40
|
/* @__PURE__ */ r(t.Card, { children: /* @__PURE__ */ i(n, { gap: 16, children: [
|
|
41
41
|
/* @__PURE__ */ r(
|
|
42
|
-
|
|
42
|
+
O,
|
|
43
43
|
{
|
|
44
44
|
name: "selfOnboarding",
|
|
45
45
|
label: e("fields.selfOnboarding.label"),
|
|
46
46
|
description: e("fields.selfOnboarding.description"),
|
|
47
|
-
isDisabled: a && a.onboardingStatus !==
|
|
47
|
+
isDisabled: a && a.onboardingStatus !== v.ADMIN_ONBOARDING_INCOMPLETE
|
|
48
48
|
}
|
|
49
49
|
),
|
|
50
50
|
b && /* @__PURE__ */ r(
|
|
@@ -78,7 +78,7 @@ function Z({
|
|
|
78
78
|
name: "ssn",
|
|
79
79
|
label: e("fields.ssn.label"),
|
|
80
80
|
placeholder: y,
|
|
81
|
-
transform:
|
|
81
|
+
transform: j,
|
|
82
82
|
isRequired: !0
|
|
83
83
|
}
|
|
84
84
|
)
|
|
@@ -98,7 +98,7 @@ function Z({
|
|
|
98
98
|
name: "ein",
|
|
99
99
|
label: e("fields.ein.label"),
|
|
100
100
|
placeholder: q,
|
|
101
|
-
transform:
|
|
101
|
+
transform: G,
|
|
102
102
|
isRequired: !0
|
|
103
103
|
}
|
|
104
104
|
)
|
|
@@ -113,7 +113,7 @@ function Z({
|
|
|
113
113
|
}
|
|
114
114
|
),
|
|
115
115
|
h && /* @__PURE__ */ r(
|
|
116
|
-
|
|
116
|
+
I,
|
|
117
117
|
{
|
|
118
118
|
name: "hourlyRate",
|
|
119
119
|
label: e("fields.hourlyRate.label"),
|
|
@@ -123,7 +123,7 @@ function Z({
|
|
|
123
123
|
}
|
|
124
124
|
),
|
|
125
125
|
/* @__PURE__ */ r(
|
|
126
|
-
|
|
126
|
+
x,
|
|
127
127
|
{
|
|
128
128
|
name: "startDate",
|
|
129
129
|
label: e("fields.startDate.label"),
|
|
@@ -9,7 +9,7 @@ export declare const ContractorType: {
|
|
|
9
9
|
readonly Business: "Business";
|
|
10
10
|
};
|
|
11
11
|
declare const ContractorProfileSchema: z.ZodObject<{
|
|
12
|
-
selfOnboarding: z.
|
|
12
|
+
selfOnboarding: z.ZodBoolean;
|
|
13
13
|
email: z.ZodOptional<z.ZodString>;
|
|
14
14
|
contractorType: z.ZodEnum<["Individual", "Business"]>;
|
|
15
15
|
wageType: z.ZodEnum<["Hourly", "Fixed"]>;
|
|
@@ -26,31 +26,31 @@ declare const ContractorProfileSchema: z.ZodObject<{
|
|
|
26
26
|
contractorType: "Business" | "Individual";
|
|
27
27
|
startDate: Date;
|
|
28
28
|
wageType: "Hourly" | "Fixed";
|
|
29
|
-
email?: string | undefined;
|
|
30
29
|
ssn?: string | undefined;
|
|
31
30
|
ein?: string | undefined;
|
|
31
|
+
email?: string | undefined;
|
|
32
32
|
firstName?: string | undefined;
|
|
33
33
|
lastName?: string | undefined;
|
|
34
34
|
businessName?: string | undefined;
|
|
35
35
|
hourlyRate?: number | undefined;
|
|
36
36
|
middleInitial?: string | undefined;
|
|
37
37
|
}, {
|
|
38
|
+
selfOnboarding: boolean;
|
|
38
39
|
contractorType: "Business" | "Individual";
|
|
39
40
|
startDate: Date;
|
|
40
41
|
wageType: "Hourly" | "Fixed";
|
|
41
|
-
email?: string | undefined;
|
|
42
42
|
ssn?: string | undefined;
|
|
43
43
|
ein?: string | undefined;
|
|
44
|
+
email?: string | undefined;
|
|
44
45
|
firstName?: string | undefined;
|
|
45
46
|
lastName?: string | undefined;
|
|
46
47
|
businessName?: string | undefined;
|
|
47
48
|
hourlyRate?: number | undefined;
|
|
48
|
-
selfOnboarding?: boolean | undefined;
|
|
49
49
|
middleInitial?: string | undefined;
|
|
50
50
|
}>;
|
|
51
51
|
export type ContractorProfileFormData = z.infer<typeof ContractorProfileSchema>;
|
|
52
52
|
export declare const createContractorProfileValidationSchema: (t: (key: string) => string, hasSsn: boolean, hasEin: boolean) => z.ZodEffects<z.ZodObject<{
|
|
53
|
-
selfOnboarding: z.
|
|
53
|
+
selfOnboarding: z.ZodBoolean;
|
|
54
54
|
email: z.ZodOptional<z.ZodString>;
|
|
55
55
|
contractorType: z.ZodEnum<["Individual", "Business"]>;
|
|
56
56
|
wageType: z.ZodEnum<["Hourly", "Fixed"]>;
|
|
@@ -67,52 +67,52 @@ export declare const createContractorProfileValidationSchema: (t: (key: string)
|
|
|
67
67
|
contractorType: "Business" | "Individual";
|
|
68
68
|
startDate: Date;
|
|
69
69
|
wageType: "Hourly" | "Fixed";
|
|
70
|
-
email?: string | undefined;
|
|
71
70
|
ssn?: string | undefined;
|
|
72
71
|
ein?: string | undefined;
|
|
72
|
+
email?: string | undefined;
|
|
73
73
|
firstName?: string | undefined;
|
|
74
74
|
lastName?: string | undefined;
|
|
75
75
|
businessName?: string | undefined;
|
|
76
76
|
hourlyRate?: number | undefined;
|
|
77
77
|
middleInitial?: string | undefined;
|
|
78
78
|
}, {
|
|
79
|
+
selfOnboarding: boolean;
|
|
79
80
|
contractorType: "Business" | "Individual";
|
|
80
81
|
startDate: Date;
|
|
81
82
|
wageType: "Hourly" | "Fixed";
|
|
82
|
-
email?: string | undefined;
|
|
83
83
|
ssn?: string | undefined;
|
|
84
84
|
ein?: string | undefined;
|
|
85
|
+
email?: string | undefined;
|
|
85
86
|
firstName?: string | undefined;
|
|
86
87
|
lastName?: string | undefined;
|
|
87
88
|
businessName?: string | undefined;
|
|
88
89
|
hourlyRate?: number | undefined;
|
|
89
|
-
selfOnboarding?: boolean | undefined;
|
|
90
90
|
middleInitial?: string | undefined;
|
|
91
91
|
}>, {
|
|
92
92
|
selfOnboarding: boolean;
|
|
93
93
|
contractorType: "Business" | "Individual";
|
|
94
94
|
startDate: Date;
|
|
95
95
|
wageType: "Hourly" | "Fixed";
|
|
96
|
-
email?: string | undefined;
|
|
97
96
|
ssn?: string | undefined;
|
|
98
97
|
ein?: string | undefined;
|
|
98
|
+
email?: string | undefined;
|
|
99
99
|
firstName?: string | undefined;
|
|
100
100
|
lastName?: string | undefined;
|
|
101
101
|
businessName?: string | undefined;
|
|
102
102
|
hourlyRate?: number | undefined;
|
|
103
103
|
middleInitial?: string | undefined;
|
|
104
104
|
}, {
|
|
105
|
+
selfOnboarding: boolean;
|
|
105
106
|
contractorType: "Business" | "Individual";
|
|
106
107
|
startDate: Date;
|
|
107
108
|
wageType: "Hourly" | "Fixed";
|
|
108
|
-
email?: string | undefined;
|
|
109
109
|
ssn?: string | undefined;
|
|
110
110
|
ein?: string | undefined;
|
|
111
|
+
email?: string | undefined;
|
|
111
112
|
firstName?: string | undefined;
|
|
112
113
|
lastName?: string | undefined;
|
|
113
114
|
businessName?: string | undefined;
|
|
114
115
|
hourlyRate?: number | undefined;
|
|
115
|
-
selfOnboarding?: boolean | undefined;
|
|
116
116
|
middleInitial?: string | undefined;
|
|
117
117
|
}>;
|
|
118
118
|
export interface UseContractorProfileProps {
|
|
@@ -127,22 +127,22 @@ export declare function useContractorProfile({ companyId, contractorId, defaultV
|
|
|
127
127
|
contractorType: "Business" | "Individual";
|
|
128
128
|
startDate: Date;
|
|
129
129
|
wageType: "Hourly" | "Fixed";
|
|
130
|
-
email?: string | undefined;
|
|
131
130
|
ssn?: string | undefined;
|
|
132
131
|
ein?: string | undefined;
|
|
132
|
+
email?: string | undefined;
|
|
133
133
|
firstName?: string | undefined;
|
|
134
134
|
lastName?: string | undefined;
|
|
135
135
|
businessName?: string | undefined;
|
|
136
136
|
hourlyRate?: number | undefined;
|
|
137
137
|
middleInitial?: string | undefined;
|
|
138
|
-
},
|
|
138
|
+
}, unknown, {
|
|
139
139
|
selfOnboarding: boolean;
|
|
140
140
|
contractorType: "Business" | "Individual";
|
|
141
141
|
startDate: Date;
|
|
142
142
|
wageType: "Hourly" | "Fixed";
|
|
143
|
-
email?: string | undefined;
|
|
144
143
|
ssn?: string | undefined;
|
|
145
144
|
ein?: string | undefined;
|
|
145
|
+
email?: string | undefined;
|
|
146
146
|
firstName?: string | undefined;
|
|
147
147
|
lastName?: string | undefined;
|
|
148
148
|
businessName?: string | undefined;
|
|
@@ -165,9 +165,9 @@ export declare function useContractorProfile({ companyId, contractorId, defaultV
|
|
|
165
165
|
contractorType?: "Business" | "Individual" | undefined;
|
|
166
166
|
startDate?: Date | undefined;
|
|
167
167
|
wageType?: "Hourly" | "Fixed" | undefined;
|
|
168
|
-
email?: string | undefined;
|
|
169
168
|
ssn?: string | undefined;
|
|
170
169
|
ein?: string | undefined;
|
|
170
|
+
email?: string | undefined;
|
|
171
171
|
firstName?: string | undefined;
|
|
172
172
|
lastName?: string | undefined;
|
|
173
173
|
businessName?: string | undefined;
|
|
@@ -179,9 +179,9 @@ export declare function useContractorProfile({ companyId, contractorId, defaultV
|
|
|
179
179
|
contractorType?: boolean | undefined;
|
|
180
180
|
startDate?: boolean | undefined;
|
|
181
181
|
wageType?: boolean | undefined;
|
|
182
|
-
email?: boolean | undefined;
|
|
183
182
|
ssn?: boolean | undefined;
|
|
184
183
|
ein?: boolean | undefined;
|
|
184
|
+
email?: boolean | undefined;
|
|
185
185
|
firstName?: boolean | undefined;
|
|
186
186
|
lastName?: boolean | undefined;
|
|
187
187
|
businessName?: boolean | undefined;
|
|
@@ -193,9 +193,9 @@ export declare function useContractorProfile({ companyId, contractorId, defaultV
|
|
|
193
193
|
contractorType?: boolean | undefined;
|
|
194
194
|
startDate?: boolean | undefined;
|
|
195
195
|
wageType?: boolean | undefined;
|
|
196
|
-
email?: boolean | undefined;
|
|
197
196
|
ssn?: boolean | undefined;
|
|
198
197
|
ein?: boolean | undefined;
|
|
198
|
+
email?: boolean | undefined;
|
|
199
199
|
firstName?: boolean | undefined;
|
|
200
200
|
lastName?: boolean | undefined;
|
|
201
201
|
businessName?: boolean | undefined;
|
|
@@ -207,9 +207,9 @@ export declare function useContractorProfile({ companyId, contractorId, defaultV
|
|
|
207
207
|
contractorType?: boolean | undefined;
|
|
208
208
|
startDate?: boolean | undefined;
|
|
209
209
|
wageType?: boolean | undefined;
|
|
210
|
-
email?: boolean | undefined;
|
|
211
210
|
ssn?: boolean | undefined;
|
|
212
211
|
ein?: boolean | undefined;
|
|
212
|
+
email?: boolean | undefined;
|
|
213
213
|
firstName?: boolean | undefined;
|
|
214
214
|
lastName?: boolean | undefined;
|
|
215
215
|
businessName?: boolean | undefined;
|
|
@@ -221,9 +221,9 @@ export declare function useContractorProfile({ companyId, contractorId, defaultV
|
|
|
221
221
|
contractorType: "Business" | "Individual";
|
|
222
222
|
startDate: Date;
|
|
223
223
|
wageType: "Hourly" | "Fixed";
|
|
224
|
-
email?: string | undefined;
|
|
225
224
|
ssn?: string | undefined;
|
|
226
225
|
ein?: string | undefined;
|
|
226
|
+
email?: string | undefined;
|
|
227
227
|
firstName?: string | undefined;
|
|
228
228
|
lastName?: string | undefined;
|
|
229
229
|
businessName?: string | undefined;
|