@gusto/embedded-react-sdk 0.31.1 → 0.33.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 +67 -0
- package/dist/assets/icons/icon-arrow-right.svg.js +10 -0
- package/dist/assets/icons/icon-arrow-right.svg.js.map +1 -0
- package/dist/components/Base/Base.js +46 -45
- package/dist/components/Base/Base.js.map +1 -1
- package/dist/components/Base/useBase.d.ts +2 -3
- package/dist/components/Base/useBase.js.map +1 -1
- package/dist/components/Base/useBaseSubmit.js +32 -19
- package/dist/components/Base/useBaseSubmit.js.map +1 -1
- package/dist/components/Common/DataView/DataView.js +1 -1
- package/dist/components/Common/DocumentList/DocumentList.js +1 -1
- package/dist/components/Common/DocumentViewer/DocumentViewer.js +1 -1
- package/dist/components/Common/FlowBreadcrumbs/FlowBreadcrumbs.js +1 -1
- package/dist/components/Common/MultiSelectComboBox/MultiSelectComboBox.d.ts +2 -0
- package/dist/components/Common/MultiSelectComboBox/MultiSelectComboBoxTypes.d.ts +16 -0
- package/dist/components/Common/MultiSelectComboBox/index.d.ts +3 -0
- package/dist/components/Common/RequirementsList/RequirementsList.js +1 -1
- package/dist/components/Common/RequirementsList/RequirementsList.js.map +1 -1
- package/dist/components/Common/RequirementsList/RequirementsList.module.scss.js +1 -1
- package/dist/components/Common/SignatureForm/SignatureForm.js +3 -2
- package/dist/components/Common/SignatureForm/SignatureForm.js.map +1 -1
- package/dist/components/Common/SignatureForm/SignatureFormActions.js +4 -3
- package/dist/components/Common/SignatureForm/SignatureFormActions.js.map +1 -1
- package/dist/components/Common/SignatureForm/SignatureFormFields.js +7 -6
- package/dist/components/Common/SignatureForm/SignatureFormFields.js.map +1 -1
- package/dist/components/Common/UI/Badge/Badge.js +39 -8
- package/dist/components/Common/UI/Badge/Badge.js.map +1 -1
- package/dist/components/Common/UI/Badge/Badge.module.scss.js +8 -4
- package/dist/components/Common/UI/Badge/Badge.module.scss.js.map +1 -1
- package/dist/components/Common/UI/Badge/BadgeTypes.d.ts +12 -0
- package/dist/components/Common/UI/Badge/BadgeTypes.js.map +1 -1
- package/dist/components/Common/UI/Box/Box.d.ts +2 -0
- package/dist/components/Common/UI/Box/Box.js +13 -0
- package/dist/components/Common/UI/Box/Box.js.map +1 -0
- package/dist/components/Common/UI/Box/Box.module.scss.js +12 -0
- package/dist/components/Common/UI/Box/Box.module.scss.js.map +1 -0
- package/dist/components/Common/UI/Box/BoxTypes.d.ts +15 -0
- package/dist/components/Common/UI/Box/index.d.ts +2 -0
- package/dist/components/Common/UI/Dialog/Dialog.js +1 -1
- package/dist/components/Common/UI/Input/InputTypes.d.ts +1 -1
- package/dist/components/Common/UI/Input/InputTypes.js.map +1 -1
- package/dist/components/Common/UI/List/List.module.scss.js +1 -1
- package/dist/components/Common/UI/Modal/Modal.js +1 -1
- package/dist/components/Common/UI/Tabs/Tabs.js +1 -1
- package/dist/components/Common/UI/TextInput/TextInput.js +30 -28
- package/dist/components/Common/UI/TextInput/TextInput.js.map +1 -1
- package/dist/components/Common/UI/TextInput/TextInputTypes.d.ts +1 -1
- package/dist/components/Common/UI/TextInput/TextInputTypes.js.map +1 -1
- package/dist/components/Company/AssignSignatory/AssignSignatory.js +3 -2
- package/dist/components/Company/AssignSignatory/AssignSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js +3 -2
- package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js.map +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js +3 -2
- package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js.map +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js +6 -5
- package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js.map +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +2 -2
- package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js +3 -2
- package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js.map +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js +5 -4
- package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js.map +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +2 -2
- package/dist/components/Company/AssignSignatory/TitleSelect.js +5 -5
- package/dist/components/Company/AssignSignatory/TitleSelect.js.map +1 -1
- package/dist/components/Company/AssignSignatory/useAssignSignatory.js +2 -2
- 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/Form.js +5 -4
- package/dist/components/Company/BankAccount/BankAccountForm/Form.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountForm/context.js +2 -2
- package/dist/components/Company/BankAccount/BankAccountList/Actions.js +3 -2
- package/dist/components/Company/BankAccount/BankAccountList/Actions.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js +7 -6
- package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountVerify/Form.js +5 -4
- package/dist/components/Company/BankAccount/BankAccountVerify/Form.js.map +1 -1
- package/dist/components/Company/DocumentSigner/DocumentList/Actions.js +3 -2
- package/dist/components/Company/DocumentSigner/DocumentList/Actions.js.map +1 -1
- package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js +9 -8
- package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
- package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +2 -2
- package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js +3 -2
- package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js.map +1 -1
- package/dist/components/Company/DocumentSigner/SignatureForm/useSignatureForm.js +2 -2
- package/dist/components/Company/FederalTaxes/Actions.js +7 -6
- package/dist/components/Company/FederalTaxes/Actions.js.map +1 -1
- package/dist/components/Company/FederalTaxes/FederalTaxes.js +3 -2
- package/dist/components/Company/FederalTaxes/FederalTaxes.js.map +1 -1
- package/dist/components/Company/FederalTaxes/Form.js +3 -2
- package/dist/components/Company/FederalTaxes/Form.js.map +1 -1
- package/dist/components/Company/FederalTaxes/useFederalTaxes.js +2 -2
- package/dist/components/Company/Industry/Actions.js +8 -7
- package/dist/components/Company/Industry/Actions.js.map +1 -1
- package/dist/components/Company/Industry/Context.js +2 -2
- package/dist/components/Company/Industry/Edit.js +3 -2
- package/dist/components/Company/Industry/Edit.js.map +1 -1
- package/dist/components/Company/Locations/LocationForm/Actions.js +7 -6
- package/dist/components/Company/Locations/LocationForm/Actions.js.map +1 -1
- package/dist/components/Company/Locations/LocationForm/Form.js +5 -4
- package/dist/components/Company/Locations/LocationForm/Form.js.map +1 -1
- package/dist/components/Company/Locations/LocationForm/LocationForm.js +3 -2
- package/dist/components/Company/Locations/LocationForm/LocationForm.js.map +1 -1
- package/dist/components/Company/Locations/LocationForm/useLocationForm.js +2 -2
- package/dist/components/Company/Locations/LocationsList/Actions.js +3 -2
- package/dist/components/Company/Locations/LocationsList/Actions.js.map +1 -1
- package/dist/components/Company/Locations/LocationsList/List.js +7 -6
- package/dist/components/Company/Locations/LocationsList/List.js.map +1 -1
- package/dist/components/Company/Locations/LocationsList/LocationsList.js +3 -2
- package/dist/components/Company/Locations/LocationsList/LocationsList.js.map +1 -1
- package/dist/components/Company/Locations/LocationsList/useLocationsList.js +2 -2
- package/dist/components/Company/OnboardingOverview/Completed.js +11 -10
- package/dist/components/Company/OnboardingOverview/Completed.js.map +1 -1
- package/dist/components/Company/OnboardingOverview/MissingRequirements.js +38 -26
- package/dist/components/Company/OnboardingOverview/MissingRequirements.js.map +1 -1
- package/dist/components/Company/OnboardingOverview/OnboardingOverview.js +7 -6
- package/dist/components/Company/OnboardingOverview/OnboardingOverview.js.map +1 -1
- package/dist/components/Company/OnboardingOverview/context.js +2 -2
- package/dist/components/Company/PaySchedule/PaySchedule.js +24 -21
- package/dist/components/Company/PaySchedule/PaySchedule.js.map +1 -1
- package/dist/components/Company/PaySchedule/_parts/Actions.js +3 -2
- package/dist/components/Company/PaySchedule/_parts/Actions.js.map +1 -1
- package/dist/components/Company/PaySchedule/_parts/Edit.js +10 -9
- package/dist/components/Company/PaySchedule/_parts/Edit.js.map +1 -1
- package/dist/components/Company/PaySchedule/_parts/Head.js +9 -8
- package/dist/components/Company/PaySchedule/_parts/Head.js.map +1 -1
- package/dist/components/Company/PaySchedule/_parts/List.js +6 -5
- package/dist/components/Company/PaySchedule/_parts/List.js.map +1 -1
- package/dist/components/Company/PaySchedule/usePaySchedule.js +2 -2
- package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js +3 -2
- package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.js +40 -46
- package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +2 -2
- package/dist/components/Company/StateTaxes/StateTaxesList/Actions.js +3 -2
- package/dist/components/Company/StateTaxes/StateTaxesList/Actions.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesList/List.js +3 -2
- package/dist/components/Company/StateTaxes/StateTaxesList/List.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesList/context.js +2 -2
- package/dist/components/Company/index.js +20 -20
- package/dist/components/Contractor/Address/Address.js +6 -6
- package/dist/components/Contractor/Address/Address.js.map +1 -1
- package/dist/components/Contractor/Address/Form.js +7 -6
- package/dist/components/Contractor/Address/Form.js.map +1 -1
- package/dist/components/Contractor/Address/useAddress.js +2 -2
- package/dist/components/Contractor/ContractorList/index.js +16 -15
- package/dist/components/Contractor/ContractorList/index.js.map +1 -1
- package/dist/components/Contractor/NewHireReport/NewHireReport.js +14 -13
- package/dist/components/Contractor/NewHireReport/NewHireReport.js.map +1 -1
- package/dist/components/Contractor/PaymentMethod/BankAccountForm.js +11 -10
- package/dist/components/Contractor/PaymentMethod/BankAccountForm.js.map +1 -1
- package/dist/components/Contractor/PaymentMethod/PaymentMethod.js +3 -2
- 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/Payments/CreatePayment/CreatePayment.js +151 -116
- package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js.map +1 -1
- package/dist/components/Contractor/Payments/CreatePayment/CreatePaymentPresentation.d.ts +4 -1
- package/dist/components/Contractor/Payments/CreatePayment/CreatePaymentPresentation.js +55 -50
- package/dist/components/Contractor/Payments/CreatePayment/CreatePaymentPresentation.js.map +1 -1
- package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentFormSchema.d.ts +84 -0
- package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentFormSchema.js +23 -0
- package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentFormSchema.js.map +1 -0
- package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentPresentation.d.ts +3 -31
- package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentPresentation.js +61 -66
- package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentPresentation.js.map +1 -1
- package/dist/components/Contractor/Payments/CreatePayment/FastAchSubmissionBlockerBanner.d.ts +2 -1
- package/dist/components/Contractor/Payments/CreatePayment/FastAchSubmissionBlockerBanner.js +21 -22
- package/dist/components/Contractor/Payments/CreatePayment/FastAchSubmissionBlockerBanner.js.map +1 -1
- package/dist/components/Contractor/Payments/CreatePayment/PreviewPresentation.d.ts +2 -1
- package/dist/components/Contractor/Payments/CreatePayment/PreviewPresentation.js +32 -29
- package/dist/components/Contractor/Payments/CreatePayment/PreviewPresentation.js.map +1 -1
- package/dist/components/Contractor/Payments/PaymentFlow/PaymentFlowComponents.js +0 -1
- package/dist/components/Contractor/Payments/PaymentFlow/PaymentFlowComponents.js.map +1 -1
- package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistoryPresentation.js +3 -2
- package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistoryPresentation.js.map +1 -1
- package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatementPresentation.js +3 -2
- package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatementPresentation.js.map +1 -1
- package/dist/components/Contractor/Payments/PaymentSummary/PaymentSummaryPresentation.js +3 -2
- package/dist/components/Contractor/Payments/PaymentSummary/PaymentSummaryPresentation.js.map +1 -1
- package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.js +27 -27
- package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.js.map +1 -1
- package/dist/components/Contractor/Profile/useContractorProfile.js +2 -2
- package/dist/components/Contractor/Submit/Submit.js +20 -19
- package/dist/components/Contractor/Submit/Submit.js.map +1 -1
- package/dist/components/Employee/Compensation/Actions.js +13 -12
- package/dist/components/Employee/Compensation/Actions.js.map +1 -1
- package/dist/components/Employee/Compensation/Edit.js +3 -2
- package/dist/components/Employee/Compensation/Edit.js.map +1 -1
- package/dist/components/Employee/Compensation/List.js +23 -22
- package/dist/components/Employee/Compensation/List.js.map +1 -1
- package/dist/components/Employee/Deductions/DeductionsForm/ChildSupportForm.js +2 -2
- package/dist/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.js +2 -2
- package/dist/components/Employee/Deductions/DeductionsForm/GarnishmentForm.js +2 -2
- package/dist/components/Employee/Deductions/DeductionsList/DeductionsList.js +7 -6
- package/dist/components/Employee/Deductions/DeductionsList/DeductionsList.js.map +1 -1
- package/dist/components/Employee/Deductions/IncludeDeductions/IncludeDeductions.js +3 -2
- package/dist/components/Employee/Deductions/IncludeDeductions/IncludeDeductions.js.map +1 -1
- package/dist/components/Employee/Deductions/stateMachine.js +1 -1
- package/dist/components/Employee/DocumentSigner/DocumentList/Actions.js +9 -8
- package/dist/components/Employee/DocumentSigner/DocumentList/Actions.js.map +1 -1
- package/dist/components/Employee/DocumentSigner/DocumentList/DocumentList.js +24 -22
- package/dist/components/Employee/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
- package/dist/components/Employee/DocumentSigner/DocumentList/List.js +3 -2
- package/dist/components/Employee/DocumentSigner/DocumentList/List.js.map +1 -1
- package/dist/components/Employee/DocumentSigner/DocumentList/useDocumentList.d.ts +1 -0
- package/dist/components/Employee/DocumentSigner/DocumentList/useDocumentList.js +2 -2
- package/dist/components/Employee/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
- package/dist/components/Employee/DocumentSigner/DocumentSigner.js +9 -9
- package/dist/components/Employee/DocumentSigner/DocumentSigner.js.map +1 -1
- package/dist/components/Employee/DocumentSigner/EmploymentEligibility/EmploymentEligibilityPresentation.js +46 -41
- package/dist/components/Employee/DocumentSigner/EmploymentEligibility/EmploymentEligibilityPresentation.js.map +1 -1
- package/dist/components/Employee/DocumentSigner/I9SignatureForm/I9SignatureForm.js +150 -111
- package/dist/components/Employee/DocumentSigner/I9SignatureForm/I9SignatureForm.js.map +1 -1
- package/dist/components/Employee/DocumentSigner/SignatureForm/SignatureForm.js +3 -2
- package/dist/components/Employee/DocumentSigner/SignatureForm/SignatureForm.js.map +1 -1
- package/dist/components/Employee/DocumentSigner/SignatureForm/useSignatureForm.js +2 -2
- package/dist/components/Employee/DocumentSigner/documentSignerStateMachine.d.ts +1 -0
- package/dist/components/Employee/DocumentSigner/documentSignerStateMachine.js.map +1 -1
- package/dist/components/Employee/DocumentSigner/stateMachine.js +34 -22
- package/dist/components/Employee/DocumentSigner/stateMachine.js.map +1 -1
- package/dist/components/Employee/EmployeeDocuments/EmployeeDocumentsPresentation.js +3 -2
- package/dist/components/Employee/EmployeeDocuments/EmployeeDocumentsPresentation.js.map +1 -1
- package/dist/components/Employee/EmployeeList/Actions.js +7 -6
- package/dist/components/Employee/EmployeeList/Actions.js.map +1 -1
- package/dist/components/Employee/EmployeeList/Head.js +6 -5
- package/dist/components/Employee/EmployeeList/Head.js.map +1 -1
- package/dist/components/Employee/EmployeeList/List.js +3 -2
- package/dist/components/Employee/EmployeeList/List.js.map +1 -1
- package/dist/components/Employee/EmployeeList/useEmployeeList.js +2 -2
- package/dist/components/Employee/FederalTaxes/Actions.js +6 -5
- package/dist/components/Employee/FederalTaxes/Actions.js.map +1 -1
- package/dist/components/Employee/FederalTaxes/FederalForm.js +5 -4
- package/dist/components/Employee/FederalTaxes/FederalForm.js.map +1 -1
- package/dist/components/Employee/FederalTaxes/FederalTaxes.js +16 -15
- package/dist/components/Employee/FederalTaxes/FederalTaxes.js.map +1 -1
- package/dist/components/Employee/FederalTaxes/useFederalTaxes.js +2 -2
- package/dist/components/Employee/Landing/Landing.js +50 -44
- package/dist/components/Employee/Landing/Landing.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/Actions.js +6 -5
- package/dist/components/Employee/PaymentMethod/Actions.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/BankAccountEdit.js +3 -2
- package/dist/components/Employee/PaymentMethod/BankAccountEdit.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/BankAccountsList.js +3 -2
- package/dist/components/Employee/PaymentMethod/BankAccountsList.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/PaymentTypeForm.js +6 -5
- package/dist/components/Employee/PaymentMethod/PaymentTypeForm.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/Split.js +3 -2
- package/dist/components/Employee/PaymentMethod/Split.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/usePaymentMethod.js +2 -2
- package/dist/components/Employee/Profile/Actions.js +6 -5
- package/dist/components/Employee/Profile/Actions.js.map +1 -1
- package/dist/components/Employee/Profile/AdminPersonalDetails.js +8 -7
- package/dist/components/Employee/Profile/AdminPersonalDetails.js.map +1 -1
- package/dist/components/Employee/Profile/HomeAddress.js +9 -8
- package/dist/components/Employee/Profile/HomeAddress.js.map +1 -1
- package/dist/components/Employee/Profile/PersonalDetailsInputs.js +9 -8
- package/dist/components/Employee/Profile/PersonalDetailsInputs.js.map +1 -1
- package/dist/components/Employee/Profile/useProfile.js +2 -2
- package/dist/components/Employee/StateTaxes/Actions.js +6 -5
- package/dist/components/Employee/StateTaxes/Actions.js.map +1 -1
- package/dist/components/Employee/StateTaxes/StateTaxes.js +29 -29
- package/dist/components/Employee/StateTaxes/StateTaxes.js.map +1 -1
- package/dist/components/Employee/StateTaxes/useStateTaxes.js +2 -2
- package/dist/components/Employee/Taxes/Actions.js +7 -6
- package/dist/components/Employee/Taxes/Actions.js.map +1 -1
- package/dist/components/Employee/Taxes/FederalForm.js +7 -6
- package/dist/components/Employee/Taxes/FederalForm.js.map +1 -1
- package/dist/components/Employee/Taxes/Taxes.js +19 -19
- package/dist/components/Employee/Taxes/Taxes.js.map +1 -1
- package/dist/components/Employee/Taxes/useTaxes.js +2 -2
- package/dist/components/Employee/index.js +22 -22
- package/dist/components/Flow/Flow.js +8 -7
- package/dist/components/Flow/Flow.js.map +1 -1
- package/dist/components/InformationRequests/InformationRequestForm/InformationRequestForm.js +1 -0
- package/dist/components/InformationRequests/InformationRequestForm/InformationRequestForm.js.map +1 -1
- package/dist/components/InformationRequests/InformationRequestList/InformationRequestList.d.ts +0 -1
- package/dist/components/InformationRequests/InformationRequestList/InformationRequestList.js +32 -37
- package/dist/components/InformationRequests/InformationRequestList/InformationRequestList.js.map +1 -1
- package/dist/components/InformationRequests/InformationRequests.d.ts +1 -2
- package/dist/components/InformationRequests/InformationRequests.js +36 -43
- package/dist/components/InformationRequests/InformationRequests.js.map +1 -1
- package/dist/components/InformationRequests/index.js +4 -4
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/ConfirmWireDetailsForm.js +1 -0
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/ConfirmWireDetailsForm.js.map +1 -1
- package/dist/components/Payroll/OffCycle/OffCycleFlowComponents.js +23 -21
- package/dist/components/Payroll/OffCycle/OffCycleFlowComponents.js.map +1 -1
- package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.d.ts +2 -0
- package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js +79 -0
- package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js.map +1 -0
- package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.d.ts +2 -0
- package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.js +46 -0
- package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.js.map +1 -0
- package/dist/components/Payroll/OffCycleCreation/OffCycleCreationTypes.d.ts +14 -0
- package/dist/components/Payroll/OffCycleCreation/index.d.ts +3 -0
- package/dist/components/Payroll/OffCycleDeductionsSetting/OffCycleDeductionsSetting.d.ts +2 -0
- package/dist/components/Payroll/OffCycleDeductionsSetting/OffCycleDeductionsSetting.js +44 -0
- package/dist/components/Payroll/OffCycleDeductionsSetting/OffCycleDeductionsSetting.js.map +1 -0
- package/dist/components/Payroll/OffCycleDeductionsSetting/index.d.ts +3 -0
- package/dist/components/Payroll/OffCycleDeductionsSetting/types.d.ts +10 -0
- package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormPresentation.d.ts +1 -2
- package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormPresentation.js +37 -0
- package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormPresentation.js.map +1 -0
- package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormPresentation.module.scss.js +12 -0
- package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormPresentation.module.scss.js.map +1 -0
- package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormTypes.d.ts +0 -4
- package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormTypes.js +48 -0
- package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormTypes.js.map +1 -0
- package/dist/components/Payroll/OffCyclePayPeriodDateForm/useOffCyclePayPeriodDateValidation.js +18 -0
- package/dist/components/Payroll/OffCyclePayPeriodDateForm/useOffCyclePayPeriodDateValidation.js.map +1 -0
- package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelection.js +26 -27
- package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelection.js.map +1 -1
- package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.d.ts +3 -3
- package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.js +17 -16
- package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.js.map +1 -1
- package/dist/components/Payroll/OffCycleTaxWithholdingModal/OffCycleTaxWithholdingModal.d.ts +2 -0
- package/dist/components/Payroll/OffCycleTaxWithholdingModal/OffCycleTaxWithholdingModalTypes.d.ts +8 -0
- package/dist/components/Payroll/OffCycleTaxWithholdingModal/index.d.ts +3 -0
- package/dist/components/Payroll/OffCycleTaxWithholdingTable/OffCycleTaxWithholdingTable.d.ts +2 -0
- package/dist/components/Payroll/OffCycleTaxWithholdingTable/OffCycleTaxWithholdingTableTypes.d.ts +17 -0
- package/dist/components/Payroll/OffCycleTaxWithholdingTable/index.d.ts +3 -0
- package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerAlerts.d.ts +3 -8
- package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerAlerts.js +37 -35
- package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerAlerts.js.map +1 -1
- package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerList.js +16 -24
- package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerList.js.map +1 -1
- package/dist/components/Payroll/PayrollBlocker/payrollHelpers.d.ts +2 -0
- package/dist/components/Payroll/PayrollBlocker/payrollHelpers.js +30 -24
- package/dist/components/Payroll/PayrollBlocker/payrollHelpers.js.map +1 -1
- package/dist/components/Payroll/PayrollBlocker/payrollHelpers.test.d.ts +1 -0
- package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js +12 -8
- package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js.map +1 -1
- package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js +42 -41
- package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js +4 -3
- package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollEditEmployee/TimeOffField.js +6 -5
- package/dist/components/Payroll/PayrollEditEmployee/TimeOffField.js.map +1 -1
- package/dist/components/Payroll/PayrollExecutionFlow/payrollExecutionMachine.js +38 -35
- package/dist/components/Payroll/PayrollExecutionFlow/payrollExecutionMachine.js.map +1 -1
- package/dist/components/Payroll/PayrollFlow/PayrollFlowComponents.d.ts +1 -0
- package/dist/components/Payroll/PayrollFlow/PayrollFlowComponents.js.map +1 -1
- package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js +16 -15
- package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.js +32 -32
- package/dist/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.js.map +1 -1
- package/dist/components/Payroll/PayrollList/PayrollListPresentation.js +19 -18
- package/dist/components/Payroll/PayrollList/PayrollListPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollOverview/PayrollOverview.js +70 -67
- package/dist/components/Payroll/PayrollOverview/PayrollOverview.js.map +1 -1
- package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.d.ts +2 -1
- package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js +39 -36
- package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchSubmissionBlockerBanner.d.ts +2 -1
- package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchSubmissionBlockerBanner.js +18 -19
- package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchSubmissionBlockerBanner.js.map +1 -1
- package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.js +1 -1
- package/dist/components/Payroll/RecoveryCases/RecoveryCasesList/RecoveryCasesList.js +3 -2
- package/dist/components/Payroll/RecoveryCases/RecoveryCasesList/RecoveryCasesList.js.map +1 -1
- package/dist/components/Payroll/RecoveryCases/RecoveryCasesResubmit/RecoveryCasesResubmit.js +7 -6
- package/dist/components/Payroll/RecoveryCases/RecoveryCasesResubmit/RecoveryCasesResubmit.js.map +1 -1
- package/dist/components/Payroll/RecoveryCases/useRecoveryCaseErrorCode.js +4 -3
- package/dist/components/Payroll/RecoveryCases/useRecoveryCaseErrorCode.js.map +1 -1
- package/dist/components/Payroll/index.d.ts +4 -0
- package/dist/components/Payroll/index.js +22 -18
- package/dist/components/Payroll/index.js.map +1 -1
- package/dist/components/Payroll/usePreparedPayrollData.js +2 -2
- package/dist/contexts/ComponentAdapter/adapters/defaultComponentAdapter.js +48 -46
- package/dist/contexts/ComponentAdapter/adapters/defaultComponentAdapter.js.map +1 -1
- package/dist/contexts/ComponentAdapter/componentAdapterTypes.d.ts +1 -0
- package/dist/contexts/ComponentAdapter/useComponentContext.d.ts +2 -0
- package/dist/contexts/ComponentAdapter/useComponentContext.js.map +1 -1
- package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js +3 -2
- package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js.map +1 -1
- package/dist/contexts/ThemeProvider/theme.d.ts +1 -0
- package/dist/contexts/ThemeProvider/theme.js +1 -0
- package/dist/contexts/ThemeProvider/theme.js.map +1 -1
- package/dist/helpers/apiErrorToList.js +14 -8
- package/dist/helpers/apiErrorToList.js.map +1 -1
- package/dist/helpers/dateFormatting.js +61 -45
- package/dist/helpers/dateFormatting.js.map +1 -1
- package/dist/helpers/formattedStrings.d.ts +1 -0
- package/dist/helpers/formattedStrings.js +21 -20
- package/dist/helpers/formattedStrings.js.map +1 -1
- package/dist/hooks/useOverflowDetection/useOverflowDetection.js +5 -6
- package/dist/i18n/I18n.js +7 -7
- package/dist/i18n/I18n.js.map +1 -1
- package/dist/i18n/en/Contractor.Payments.CreatePayment.json.js +12 -12
- package/dist/i18n/en/Employee.EmployeeDocuments.json.js +1 -1
- package/dist/i18n/en/Employee.I9SignatureForm.json.js +83 -65
- package/dist/i18n/en/Employee.I9SignatureForm.json.js.map +1 -1
- package/dist/i18n/en/Employee.Landing.json.js +7 -9
- package/dist/i18n/en/Employee.Landing.json.js.map +1 -1
- package/dist/i18n/en/Payroll.OffCycleCreation.json.js +14 -0
- package/dist/i18n/en/Payroll.OffCycleCreation.json.js.map +1 -0
- package/dist/i18n/en/Payroll.OffCycleDeductionsSetting.json.js +12 -0
- package/dist/i18n/en/Payroll.OffCycleDeductionsSetting.json.js.map +1 -0
- package/dist/i18n/en/Payroll.OffCycleTaxWithholding.json.js +18 -0
- package/dist/i18n/en/Payroll.OffCycleTaxWithholding.json.js.map +1 -0
- package/dist/i18n/en/Payroll.PayrollBlocker.json.js +21 -19
- package/dist/i18n/en/Payroll.PayrollBlocker.json.js.map +1 -1
- package/dist/i18n/en/Payroll.PayrollOverview.json.js +1 -1
- package/dist/i18n/en/common.json.d.ts +4 -1
- package/dist/i18n/en/common.json.js +5 -5
- package/dist/shared/constants.d.ts +4 -0
- package/dist/shared/constants.js +6 -4
- package/dist/shared/constants.js.map +1 -1
- package/dist/style.css +1 -1
- package/dist/types/i18next.d.ts +79 -2
- package/docs/reference/endpoint-inventory.json +1706 -0
- package/package.json +29 -13
- package/dist/components/Employee/Landing/Landing.module.scss.js +0 -8
- package/dist/components/Employee/Landing/Landing.module.scss.js.map +0 -1
|
@@ -1,27 +1,29 @@
|
|
|
1
|
-
import { jsx as e, jsxs as
|
|
1
|
+
import { jsx as e, jsxs as m } from "react/jsx-runtime";
|
|
2
2
|
import { z as l } from "zod";
|
|
3
|
-
import { useForm as
|
|
3
|
+
import { useForm as M, FormProvider as q, useFormContext as w, useFieldArray as x } from "react-hook-form";
|
|
4
4
|
import { zodResolver as B } from "@hookform/resolvers/zod";
|
|
5
|
-
import { useTranslation as y, Trans as
|
|
5
|
+
import { useTranslation as y, Trans as T } from "react-i18next";
|
|
6
6
|
import { useEmployeeFormsGetPdfSuspense as k } from "@gusto/embedded-api/react-query/employeeFormsGetPdf";
|
|
7
|
-
import { useEmployeeFormsSignMutation as
|
|
8
|
-
import { useEmployeeFormsGetSuspense as
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import
|
|
7
|
+
import { useEmployeeFormsSignMutation as G } from "@gusto/embedded-api/react-query/employeeFormsSign";
|
|
8
|
+
import { useEmployeeFormsGetSuspense as V } from "@gusto/embedded-api/react-query/employeeFormsGet";
|
|
9
|
+
import { useI9VerificationGetAuthorization as j } from "@gusto/embedded-api/react-query/i9VerificationGetAuthorization";
|
|
10
|
+
import F from "./I9SignatureForm.module.scss.js";
|
|
11
|
+
import { BaseComponent as H } from "../../../Base/Base.js";
|
|
12
|
+
import { useBase as O } from "../../../Base/useBase.js";
|
|
13
|
+
import { useI18n as Y } from "../../../../i18n/I18n.js";
|
|
14
|
+
import { componentEvents as C, STATES_ABBR as K } from "../../../../shared/constants.js";
|
|
15
|
+
import { Flex as f } from "../../../Common/Flex/Flex.js";
|
|
16
|
+
import "classnames";
|
|
17
|
+
import { ActionsLayout as U } from "../../../Common/ActionsLayout/ActionsLayout.js";
|
|
18
|
+
import { useComponentContext as S } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
|
|
17
19
|
import "react";
|
|
18
|
-
import { Form as
|
|
19
|
-
import { TextInputField as
|
|
20
|
-
import { CheckboxField as
|
|
21
|
-
import { RadioGroupField as
|
|
22
|
-
import { SelectField as
|
|
23
|
-
import { DocumentViewer as
|
|
24
|
-
const
|
|
20
|
+
import { Form as Z } from "../../../Common/Form/Form.js";
|
|
21
|
+
import { TextInputField as c } from "../../../Common/Fields/TextInputField/TextInputField.js";
|
|
22
|
+
import { CheckboxField as P } from "../../../Common/Fields/CheckboxField/CheckboxField.js";
|
|
23
|
+
import { RadioGroupField as Q } from "../../../Common/Fields/RadioGroupField/RadioGroupField.js";
|
|
24
|
+
import { SelectField as X } from "../../../Common/Fields/SelectField/SelectField.js";
|
|
25
|
+
import { DocumentViewer as J } from "../../../Common/DocumentViewer/DocumentViewer.js";
|
|
26
|
+
const W = 4, ee = l.object({
|
|
25
27
|
firstName: l.string().min(1),
|
|
26
28
|
lastName: l.string().min(1),
|
|
27
29
|
street1: l.string().min(1),
|
|
@@ -30,79 +32,88 @@ const K = 4, Q = l.object({
|
|
|
30
32
|
state: l.string().min(1),
|
|
31
33
|
zip: l.string().min(1),
|
|
32
34
|
signature: l.string().min(1),
|
|
33
|
-
agree: l.boolean().refine((
|
|
34
|
-
}),
|
|
35
|
+
agree: l.boolean().refine((i) => i)
|
|
36
|
+
}), re = l.object({
|
|
35
37
|
signature: l.string().min(1),
|
|
36
38
|
agree: l.literal(!0),
|
|
37
39
|
usedPreparer: l.enum(["yes", "no"]),
|
|
38
|
-
preparers: l.array(
|
|
40
|
+
preparers: l.array(ee)
|
|
39
41
|
});
|
|
40
|
-
function
|
|
41
|
-
return /* @__PURE__ */ e(
|
|
42
|
+
function Ie(i) {
|
|
43
|
+
return /* @__PURE__ */ e(H, { ...i, children: /* @__PURE__ */ e(te, { ...i }) });
|
|
42
44
|
}
|
|
43
|
-
function
|
|
44
|
-
|
|
45
|
-
const { t } = y("Employee.I9SignatureForm"), { onEvent:
|
|
45
|
+
function te({ employeeId: i, formId: a, className: o }) {
|
|
46
|
+
Y("Employee.I9SignatureForm");
|
|
47
|
+
const { t } = y("Employee.I9SignatureForm"), { onEvent: n, baseSubmitHandler: r } = O(), p = S(), { data: b } = V({ employeeId: i, formId: a }), s = b.form, {
|
|
46
48
|
data: { formPdf: d }
|
|
47
|
-
} = k({ employeeId:
|
|
48
|
-
resolver: B(
|
|
49
|
+
} = k({ employeeId: i, formId: s.uuid }), h = d?.documentUrl, { data: g } = j({ employeeId: i }), u = g?.i9Authorization?.authorizationStatus, { mutateAsync: N, isPending: R } = G(), A = M({
|
|
50
|
+
resolver: B(re),
|
|
49
51
|
defaultValues: {
|
|
50
52
|
signature: "",
|
|
51
53
|
usedPreparer: "no",
|
|
52
54
|
preparers: []
|
|
53
55
|
}
|
|
54
56
|
}), $ = () => {
|
|
55
|
-
|
|
56
|
-
},
|
|
57
|
-
|
|
58
|
-
|
|
57
|
+
n(C.CANCEL);
|
|
58
|
+
}, v = () => {
|
|
59
|
+
n(C.EMPLOYEE_CHANGE_ELIGIBILITY_STATUS);
|
|
60
|
+
}, _ = async (D) => {
|
|
61
|
+
await r(D, async (E) => {
|
|
62
|
+
const I = ae(E), { form: z } = await N({
|
|
59
63
|
request: {
|
|
60
|
-
employeeId:
|
|
61
|
-
formId:
|
|
64
|
+
employeeId: i,
|
|
65
|
+
formId: s.uuid,
|
|
62
66
|
requestBody: {
|
|
63
|
-
signatureText:
|
|
64
|
-
agree:
|
|
65
|
-
...
|
|
67
|
+
signatureText: E.signature,
|
|
68
|
+
agree: E.agree,
|
|
69
|
+
...I
|
|
66
70
|
}
|
|
67
71
|
}
|
|
68
72
|
});
|
|
69
|
-
|
|
73
|
+
n(C.EMPLOYEE_SIGN_FORM, z);
|
|
70
74
|
});
|
|
71
75
|
};
|
|
72
|
-
return /* @__PURE__ */ e("section", { className:
|
|
73
|
-
/* @__PURE__ */
|
|
74
|
-
/* @__PURE__ */ e(
|
|
75
|
-
/* @__PURE__ */ e(
|
|
76
|
-
|
|
76
|
+
return /* @__PURE__ */ e("section", { className: o, children: /* @__PURE__ */ e(q, { ...A, children: /* @__PURE__ */ e(Z, { onSubmit: A.handleSubmit(_), children: /* @__PURE__ */ m(f, { flexDirection: "column", gap: 20, children: [
|
|
77
|
+
/* @__PURE__ */ m("section", { children: [
|
|
78
|
+
/* @__PURE__ */ e(p.Heading, { as: "h2", children: t("title") }),
|
|
79
|
+
/* @__PURE__ */ e(p.Text, { children: /* @__PURE__ */ e(
|
|
80
|
+
T,
|
|
77
81
|
{
|
|
78
82
|
i18nKey: "description",
|
|
79
83
|
t,
|
|
80
84
|
components: {
|
|
81
85
|
viewFormLink: h ? /* @__PURE__ */ e(
|
|
82
|
-
|
|
86
|
+
p.Link,
|
|
83
87
|
{
|
|
84
88
|
href: h,
|
|
85
89
|
target: "_blank",
|
|
86
90
|
rel: "noopener noreferrer",
|
|
87
|
-
download: `${
|
|
91
|
+
download: `${s.title || "form"}.pdf`
|
|
88
92
|
}
|
|
89
93
|
) : /* @__PURE__ */ e("span", {})
|
|
90
94
|
}
|
|
91
95
|
}
|
|
92
96
|
) })
|
|
93
97
|
] }),
|
|
98
|
+
u && /* @__PURE__ */ e(
|
|
99
|
+
ie,
|
|
100
|
+
{
|
|
101
|
+
authorizationStatus: u,
|
|
102
|
+
onChangeStatus: v
|
|
103
|
+
}
|
|
104
|
+
),
|
|
94
105
|
/* @__PURE__ */ e(
|
|
95
|
-
|
|
106
|
+
J,
|
|
96
107
|
{
|
|
97
108
|
url: h,
|
|
98
|
-
title:
|
|
109
|
+
title: s.title,
|
|
99
110
|
downloadInstructions: t("downloadInstructions"),
|
|
100
111
|
viewDocumentLabel: t("viewDocumentCta")
|
|
101
112
|
}
|
|
102
113
|
),
|
|
103
|
-
/* @__PURE__ */
|
|
114
|
+
/* @__PURE__ */ m(f, { flexDirection: "column", gap: 12, children: [
|
|
104
115
|
/* @__PURE__ */ e(
|
|
105
|
-
|
|
116
|
+
c,
|
|
106
117
|
{
|
|
107
118
|
name: "signature",
|
|
108
119
|
label: t("signatureLabel"),
|
|
@@ -112,7 +123,7 @@ function J({ employeeId: n, formId: i, className: s }) {
|
|
|
112
123
|
}
|
|
113
124
|
),
|
|
114
125
|
/* @__PURE__ */ e(
|
|
115
|
-
|
|
126
|
+
P,
|
|
116
127
|
{
|
|
117
128
|
name: "agree",
|
|
118
129
|
isRequired: !0,
|
|
@@ -121,14 +132,42 @@ function J({ employeeId: n, formId: i, className: s }) {
|
|
|
121
132
|
}
|
|
122
133
|
)
|
|
123
134
|
] }),
|
|
124
|
-
/* @__PURE__ */ e(
|
|
125
|
-
/* @__PURE__ */
|
|
126
|
-
/* @__PURE__ */ e(
|
|
127
|
-
/* @__PURE__ */ e(
|
|
135
|
+
/* @__PURE__ */ e(ne, {}),
|
|
136
|
+
/* @__PURE__ */ m(U, { children: [
|
|
137
|
+
/* @__PURE__ */ e(p.Button, { variant: "secondary", type: "button", onClick: $, children: t("cancelCta") }),
|
|
138
|
+
/* @__PURE__ */ e(p.Button, { type: "submit", isLoading: R, children: t("signCta") })
|
|
128
139
|
] })
|
|
129
140
|
] }) }) }) });
|
|
130
141
|
}
|
|
131
|
-
|
|
142
|
+
function ie({
|
|
143
|
+
authorizationStatus: i,
|
|
144
|
+
onChangeStatus: a
|
|
145
|
+
}) {
|
|
146
|
+
const { t: o } = y("Employee.I9SignatureForm"), t = S(), n = {
|
|
147
|
+
citizen: "eligibilityAlertLabel_citizen",
|
|
148
|
+
permanent_resident: "eligibilityAlertLabel_permanent_resident",
|
|
149
|
+
noncitizen: "eligibilityAlertLabel_noncitizen",
|
|
150
|
+
alien: "eligibilityAlertLabel_alien"
|
|
151
|
+
}, r = {
|
|
152
|
+
citizen: "eligibilityAlertDescription_citizen",
|
|
153
|
+
permanent_resident: "eligibilityAlertDescription_permanent_resident",
|
|
154
|
+
noncitizen: "eligibilityAlertDescription_noncitizen",
|
|
155
|
+
alien: "eligibilityAlertDescription_alien"
|
|
156
|
+
};
|
|
157
|
+
return /* @__PURE__ */ e(
|
|
158
|
+
t.Alert,
|
|
159
|
+
{
|
|
160
|
+
status: "info",
|
|
161
|
+
label: o(n[i]),
|
|
162
|
+
disableScrollIntoView: !0,
|
|
163
|
+
children: /* @__PURE__ */ m(f, { flexDirection: "column", gap: 8, children: [
|
|
164
|
+
/* @__PURE__ */ e(t.Text, { children: o(r[i]) }),
|
|
165
|
+
/* @__PURE__ */ e("div", { children: /* @__PURE__ */ e(t.Button, { variant: "secondary", type: "button", onClick: a, children: o("eligibilityAlertChangeStatusCta") }) })
|
|
166
|
+
] })
|
|
167
|
+
}
|
|
168
|
+
);
|
|
169
|
+
}
|
|
170
|
+
const L = {
|
|
132
171
|
firstName: "",
|
|
133
172
|
lastName: "",
|
|
134
173
|
street1: "",
|
|
@@ -139,114 +178,114 @@ const P = {
|
|
|
139
178
|
signature: "",
|
|
140
179
|
agree: !1
|
|
141
180
|
};
|
|
142
|
-
function
|
|
143
|
-
const { t:
|
|
144
|
-
|
|
181
|
+
function ne() {
|
|
182
|
+
const { t: i } = y("Employee.I9SignatureForm"), a = S(), { watch: o, control: t } = w(), { fields: n, append: r, remove: p } = x({ control: t, name: "preparers" }), b = o("usedPreparer"), s = n.length < W, d = (g) => {
|
|
183
|
+
g === "yes" && n.length === 0 && r(L), g === "no" && n.length > 0 && p();
|
|
145
184
|
}, h = () => {
|
|
146
|
-
|
|
185
|
+
s && r(L);
|
|
147
186
|
};
|
|
148
|
-
return /* @__PURE__ */
|
|
187
|
+
return /* @__PURE__ */ m(f, { flexDirection: "column", gap: 20, children: [
|
|
149
188
|
/* @__PURE__ */ e(
|
|
150
|
-
|
|
189
|
+
Q,
|
|
151
190
|
{
|
|
152
191
|
name: "usedPreparer",
|
|
153
|
-
label:
|
|
192
|
+
label: i("preparerQuestion"),
|
|
154
193
|
isRequired: !0,
|
|
155
194
|
options: [
|
|
156
|
-
{ label:
|
|
157
|
-
{ label:
|
|
195
|
+
{ label: i("preparerNo"), value: "no" },
|
|
196
|
+
{ label: i("preparerYes"), value: "yes" }
|
|
158
197
|
],
|
|
159
198
|
onChange: d
|
|
160
199
|
}
|
|
161
200
|
),
|
|
162
|
-
|
|
163
|
-
/* @__PURE__ */ e("div", { className:
|
|
201
|
+
b === "yes" && n.map((g, u) => /* @__PURE__ */ m(f, { flexDirection: "column", gap: 0, children: [
|
|
202
|
+
/* @__PURE__ */ e("div", { className: F.preparerAlert, children: /* @__PURE__ */ e(a.Alert, { label: i("preparerNote"), status: "info", disableScrollIntoView: !0 }) }),
|
|
164
203
|
/* @__PURE__ */ e(
|
|
165
|
-
|
|
204
|
+
oe,
|
|
166
205
|
{
|
|
167
|
-
index:
|
|
206
|
+
index: u,
|
|
168
207
|
onRemove: () => {
|
|
169
|
-
|
|
208
|
+
p(u);
|
|
170
209
|
},
|
|
171
|
-
showRemoveButton:
|
|
172
|
-
showAddButton:
|
|
210
|
+
showRemoveButton: u !== 0,
|
|
211
|
+
showAddButton: s && u === n.length - 1,
|
|
173
212
|
onAdd: h
|
|
174
213
|
}
|
|
175
214
|
)
|
|
176
|
-
] },
|
|
215
|
+
] }, g.id))
|
|
177
216
|
] });
|
|
178
217
|
}
|
|
179
|
-
function
|
|
180
|
-
index:
|
|
181
|
-
onRemove:
|
|
182
|
-
showRemoveButton:
|
|
218
|
+
function oe({
|
|
219
|
+
index: i,
|
|
220
|
+
onRemove: a,
|
|
221
|
+
showRemoveButton: o,
|
|
183
222
|
showAddButton: t,
|
|
184
|
-
onAdd:
|
|
223
|
+
onAdd: n
|
|
185
224
|
}) {
|
|
186
|
-
const { t: r } = y("Employee.I9SignatureForm"),
|
|
187
|
-
return /* @__PURE__ */
|
|
188
|
-
/* @__PURE__ */ e(
|
|
225
|
+
const { t: r } = y("Employee.I9SignatureForm"), p = S(), b = K.map((d) => ({ label: d, value: d })), s = `preparers.${i}`;
|
|
226
|
+
return /* @__PURE__ */ m(f, { flexDirection: "column", gap: 12, children: [
|
|
227
|
+
/* @__PURE__ */ e(p.Heading, { as: "h3", children: r("preparerSectionTitle") }),
|
|
189
228
|
/* @__PURE__ */ e(
|
|
190
|
-
|
|
229
|
+
c,
|
|
191
230
|
{
|
|
192
|
-
name: `${
|
|
231
|
+
name: `${s}.firstName`,
|
|
193
232
|
label: r("preparerFirstNameLabel"),
|
|
194
233
|
errorMessage: r("preparerFirstNameError"),
|
|
195
234
|
isRequired: !0
|
|
196
235
|
}
|
|
197
236
|
),
|
|
198
237
|
/* @__PURE__ */ e(
|
|
199
|
-
|
|
238
|
+
c,
|
|
200
239
|
{
|
|
201
|
-
name: `${
|
|
240
|
+
name: `${s}.lastName`,
|
|
202
241
|
label: r("preparerLastNameLabel"),
|
|
203
242
|
errorMessage: r("preparerLastNameError"),
|
|
204
243
|
isRequired: !0
|
|
205
244
|
}
|
|
206
245
|
),
|
|
207
246
|
/* @__PURE__ */ e(
|
|
208
|
-
|
|
247
|
+
c,
|
|
209
248
|
{
|
|
210
|
-
name: `${
|
|
249
|
+
name: `${s}.street1`,
|
|
211
250
|
label: r("preparerStreet1Label"),
|
|
212
251
|
errorMessage: r("preparerStreet1Error"),
|
|
213
252
|
isRequired: !0
|
|
214
253
|
}
|
|
215
254
|
),
|
|
216
|
-
/* @__PURE__ */ e(
|
|
255
|
+
/* @__PURE__ */ e(c, { name: `${s}.street2`, label: r("preparerStreet2Label") }),
|
|
217
256
|
/* @__PURE__ */ e(
|
|
218
|
-
|
|
257
|
+
c,
|
|
219
258
|
{
|
|
220
|
-
name: `${
|
|
259
|
+
name: `${s}.city`,
|
|
221
260
|
label: r("preparerCityLabel"),
|
|
222
261
|
errorMessage: r("preparerCityError"),
|
|
223
262
|
isRequired: !0
|
|
224
263
|
}
|
|
225
264
|
),
|
|
226
265
|
/* @__PURE__ */ e(
|
|
227
|
-
|
|
266
|
+
X,
|
|
228
267
|
{
|
|
229
|
-
name: `${
|
|
268
|
+
name: `${s}.state`,
|
|
230
269
|
label: r("preparerStateLabel"),
|
|
231
270
|
errorMessage: r("preparerStateError"),
|
|
232
271
|
isRequired: !0,
|
|
233
|
-
options:
|
|
272
|
+
options: b,
|
|
234
273
|
placeholder: "Select a state..."
|
|
235
274
|
}
|
|
236
275
|
),
|
|
237
276
|
/* @__PURE__ */ e(
|
|
238
|
-
|
|
277
|
+
c,
|
|
239
278
|
{
|
|
240
|
-
name: `${
|
|
279
|
+
name: `${s}.zip`,
|
|
241
280
|
label: r("preparerZipLabel"),
|
|
242
281
|
errorMessage: r("preparerZipError"),
|
|
243
282
|
isRequired: !0
|
|
244
283
|
}
|
|
245
284
|
),
|
|
246
285
|
/* @__PURE__ */ e(
|
|
247
|
-
|
|
286
|
+
c,
|
|
248
287
|
{
|
|
249
|
-
name: `${
|
|
288
|
+
name: `${s}.signature`,
|
|
250
289
|
label: r("preparerSignatureLabel"),
|
|
251
290
|
description: r("preparerSignatureDescription"),
|
|
252
291
|
errorMessage: r("preparerSignatureError"),
|
|
@@ -254,30 +293,30 @@ function ee({
|
|
|
254
293
|
}
|
|
255
294
|
),
|
|
256
295
|
/* @__PURE__ */ e(
|
|
257
|
-
|
|
296
|
+
P,
|
|
258
297
|
{
|
|
259
|
-
name: `${
|
|
298
|
+
name: `${s}.agree`,
|
|
260
299
|
isRequired: !0,
|
|
261
300
|
label: r("preparerConfirmationLabel"),
|
|
262
301
|
errorMessage: r("preparerConfirmationError")
|
|
263
302
|
}
|
|
264
303
|
),
|
|
265
|
-
(t ||
|
|
266
|
-
t && /* @__PURE__ */ e(
|
|
267
|
-
|
|
304
|
+
(t || o) && /* @__PURE__ */ m("div", { className: F.preparerActions, children: [
|
|
305
|
+
t && /* @__PURE__ */ e(p.Button, { type: "button", variant: "secondary", onClick: n, children: r("addPreparerCta") }),
|
|
306
|
+
o && /* @__PURE__ */ e(p.Button, { type: "button", variant: "error", onClick: a, children: r("removePreparerCta") })
|
|
268
307
|
] })
|
|
269
308
|
] });
|
|
270
309
|
}
|
|
271
|
-
function
|
|
272
|
-
if (
|
|
310
|
+
function ae(i) {
|
|
311
|
+
if (i.usedPreparer !== "yes" || i.preparers.length === 0)
|
|
273
312
|
return { preparer: !1 };
|
|
274
|
-
const
|
|
275
|
-
return
|
|
276
|
-
const
|
|
277
|
-
t > 0 && (
|
|
278
|
-
}),
|
|
313
|
+
const a = { preparer: !0 };
|
|
314
|
+
return i.preparers.forEach((o, t) => {
|
|
315
|
+
const n = t === 0 ? "preparer" : `preparer${t + 1}`;
|
|
316
|
+
t > 0 && (a[`preparer${t + 1}`] = !0), a[`${n}FirstName`] = o.firstName, a[`${n}LastName`] = o.lastName, a[`${n}Street1`] = o.street1, o.street2 && (a[`${n}Street2`] = o.street2), a[`${n}City`] = o.city, a[`${n}State`] = o.state, a[`${n}Zip`] = o.zip, a[`${n}Agree`] = "true";
|
|
317
|
+
}), a;
|
|
279
318
|
}
|
|
280
319
|
export {
|
|
281
|
-
|
|
320
|
+
Ie as I9SignatureForm
|
|
282
321
|
};
|
|
283
322
|
//# sourceMappingURL=I9SignatureForm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"I9SignatureForm.js","sources":["../../../../../src/components/Employee/DocumentSigner/I9SignatureForm/I9SignatureForm.tsx"],"sourcesContent":["import { z } from 'zod'\nimport { FormProvider, useFieldArray, useForm, useFormContext } from 'react-hook-form'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { useTranslation, Trans } from 'react-i18next'\nimport { useEmployeeFormsGetPdfSuspense } from '@gusto/embedded-api/react-query/employeeFormsGetPdf'\nimport { useEmployeeFormsSignMutation } from '@gusto/embedded-api/react-query/employeeFormsSign'\nimport { useEmployeeFormsGetSuspense } from '@gusto/embedded-api/react-query/employeeFormsGet'\nimport styles from './I9SignatureForm.module.scss'\nimport {\n BaseComponent,\n type BaseComponentInterface,\n type CommonComponentInterface,\n} from '@/components/Base/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { useI18n } from '@/i18n'\nimport { componentEvents, STATES_ABBR } from '@/shared/constants'\nimport {\n ActionsLayout,\n CheckboxField,\n Flex,\n RadioGroupField,\n SelectField,\n TextInputField,\n} from '@/components/Common'\nimport { DocumentViewer } from '@/components/Common/DocumentViewer'\nimport { Form } from '@/components/Common/Form'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\nconst MAX_PREPARERS = 4\n\nconst preparerSchema = z.object({\n firstName: z.string().min(1),\n lastName: z.string().min(1),\n street1: z.string().min(1),\n street2: z.string().optional(),\n city: z.string().min(1),\n state: z.string().min(1),\n zip: z.string().min(1),\n signature: z.string().min(1),\n agree: z.boolean().refine(val => val),\n})\n\nexport type PreparerInputs = z.infer<typeof preparerSchema>\n\nconst i9SignatureFormSchema = z.object({\n signature: z.string().min(1),\n agree: z.literal(true),\n usedPreparer: z.enum(['yes', 'no']),\n preparers: z.array(preparerSchema),\n})\n\nexport type I9SignatureFormInputs = z.infer<typeof i9SignatureFormSchema>\n\ninterface I9SignatureFormProps extends CommonComponentInterface {\n employeeId: string\n formId: string\n}\n\nexport function I9SignatureForm(props: I9SignatureFormProps & BaseComponentInterface) {\n return (\n <BaseComponent {...props}>\n <Root {...props} />\n </BaseComponent>\n )\n}\n\nfunction Root({ employeeId, formId, className }: I9SignatureFormProps) {\n useI18n('Employee.I9SignatureForm')\n const { t } = useTranslation('Employee.I9SignatureForm')\n const { onEvent, baseSubmitHandler } = useBase()\n const Components = useComponentContext()\n\n const { data: formData } = useEmployeeFormsGetSuspense({ employeeId, formId })\n const form = formData.form!\n\n const {\n data: { formPdf },\n } = useEmployeeFormsGetPdfSuspense({ employeeId, formId: form.uuid })\n const pdfUrl = formPdf?.documentUrl\n\n const { mutateAsync: signForm, isPending } = useEmployeeFormsSignMutation()\n\n const methods = useForm<I9SignatureFormInputs>({\n resolver: zodResolver(i9SignatureFormSchema),\n defaultValues: {\n signature: '',\n usedPreparer: 'no',\n preparers: [],\n },\n })\n\n const handleBack = () => {\n onEvent(componentEvents.CANCEL)\n }\n\n const handleSubmit = async (data: I9SignatureFormInputs) => {\n await baseSubmitHandler(data, async payload => {\n const preparerPayload = buildPreparerPayload(payload)\n const { form: signFormResult } = await signForm({\n request: {\n employeeId,\n formId: form.uuid,\n requestBody: {\n signatureText: payload.signature,\n agree: payload.agree,\n ...preparerPayload,\n },\n },\n })\n onEvent(componentEvents.EMPLOYEE_SIGN_FORM, signFormResult)\n })\n }\n\n return (\n <section className={className}>\n <FormProvider {...methods}>\n <Form onSubmit={methods.handleSubmit(handleSubmit)}>\n <Flex flexDirection=\"column\" gap={20}>\n <section>\n <Components.Heading as=\"h2\">{t('title')}</Components.Heading>\n <Components.Text>\n <Trans\n i18nKey=\"description\"\n t={t}\n components={{\n viewFormLink: pdfUrl ? (\n <Components.Link\n href={pdfUrl}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n download={`${form.title || 'form'}.pdf`}\n />\n ) : (\n <span />\n ),\n }}\n />\n </Components.Text>\n </section>\n\n <DocumentViewer\n url={pdfUrl}\n title={form.title}\n downloadInstructions={t('downloadInstructions')}\n viewDocumentLabel={t('viewDocumentCta')}\n />\n\n <Flex flexDirection=\"column\" gap={12}>\n <TextInputField\n name=\"signature\"\n label={t('signatureLabel')}\n description={t('signatureDescription')}\n errorMessage={t('signatureError')}\n isRequired\n />\n <CheckboxField\n name=\"agree\"\n isRequired\n label={t('confirmationLabel')}\n errorMessage={t('confirmationError')}\n />\n </Flex>\n\n <PreparerSection />\n\n <ActionsLayout>\n <Components.Button variant=\"secondary\" type=\"button\" onClick={handleBack}>\n {t('cancelCta')}\n </Components.Button>\n <Components.Button type=\"submit\" isLoading={isPending}>\n {t('signCta')}\n </Components.Button>\n </ActionsLayout>\n </Flex>\n </Form>\n </FormProvider>\n </section>\n )\n}\n\nconst emptyPreparer = {\n firstName: '',\n lastName: '',\n street1: '',\n street2: '',\n city: '',\n state: '',\n zip: '',\n signature: '',\n agree: false,\n}\n\nfunction PreparerSection() {\n const { t } = useTranslation('Employee.I9SignatureForm')\n const Components = useComponentContext()\n const { watch, control } = useFormContext<I9SignatureFormInputs>()\n const { fields, append, remove } = useFieldArray({ control, name: 'preparers' })\n\n const usedPreparer = watch('usedPreparer')\n const canAddPreparer = fields.length < MAX_PREPARERS\n\n const handlePreparerChange = (value: string) => {\n if (value === 'yes' && fields.length === 0) {\n append(emptyPreparer)\n }\n if (value === 'no' && fields.length > 0) {\n remove()\n }\n }\n\n const handleAddPreparer = () => {\n if (canAddPreparer) {\n append(emptyPreparer)\n }\n }\n\n return (\n <Flex flexDirection=\"column\" gap={20}>\n <RadioGroupField\n name=\"usedPreparer\"\n label={t('preparerQuestion')}\n isRequired\n options={[\n { label: t('preparerNo'), value: 'no' },\n { label: t('preparerYes'), value: 'yes' },\n ]}\n onChange={handlePreparerChange}\n />\n\n {usedPreparer === 'yes' &&\n fields.map((field, index) => (\n <Flex flexDirection=\"column\" gap={0} key={field.id}>\n <div className={styles.preparerAlert}>\n <Components.Alert label={t('preparerNote')} status=\"info\" disableScrollIntoView />\n </div>\n <PreparerFields\n index={index}\n onRemove={() => {\n remove(index)\n }}\n showRemoveButton={index !== 0 && index === fields.length - 1}\n showAddButton={canAddPreparer && index === fields.length - 1}\n onAdd={handleAddPreparer}\n />\n </Flex>\n ))}\n </Flex>\n )\n}\n\ninterface PreparerFieldsProps {\n index: number\n onRemove: () => void\n showRemoveButton: boolean\n showAddButton: boolean\n onAdd: () => void\n}\n\nfunction PreparerFields({\n index,\n onRemove,\n showRemoveButton,\n showAddButton,\n onAdd,\n}: PreparerFieldsProps) {\n const { t } = useTranslation('Employee.I9SignatureForm')\n const Components = useComponentContext()\n\n const stateOptions = STATES_ABBR.map(abbr => ({ label: abbr, value: abbr }))\n const fieldId = `preparers.${index}`\n\n return (\n <Flex flexDirection=\"column\" gap={12}>\n <Components.Heading as=\"h3\">{t('preparerSectionTitle')}</Components.Heading>\n\n <TextInputField\n name={`${fieldId}.firstName`}\n label={t('preparerFirstNameLabel')}\n errorMessage={t('preparerFirstNameError')}\n isRequired\n />\n <TextInputField\n name={`${fieldId}.lastName`}\n label={t('preparerLastNameLabel')}\n errorMessage={t('preparerLastNameError')}\n isRequired\n />\n <TextInputField\n name={`${fieldId}.street1`}\n label={t('preparerStreet1Label')}\n errorMessage={t('preparerStreet1Error')}\n isRequired\n />\n <TextInputField name={`${fieldId}.street2`} label={t('preparerStreet2Label')} />\n <TextInputField\n name={`${fieldId}.city`}\n label={t('preparerCityLabel')}\n errorMessage={t('preparerCityError')}\n isRequired\n />\n <SelectField\n name={`${fieldId}.state`}\n label={t('preparerStateLabel')}\n errorMessage={t('preparerStateError')}\n isRequired\n options={stateOptions}\n placeholder=\"Select a state...\"\n />\n <TextInputField\n name={`${fieldId}.zip`}\n label={t('preparerZipLabel')}\n errorMessage={t('preparerZipError')}\n isRequired\n />\n <TextInputField\n name={`${fieldId}.signature`}\n label={t('preparerSignatureLabel')}\n description={t('preparerSignatureDescription')}\n errorMessage={t('preparerSignatureError')}\n isRequired\n />\n <CheckboxField\n name={`${fieldId}.agree`}\n isRequired\n label={t('preparerConfirmationLabel')}\n errorMessage={t('preparerConfirmationError')}\n />\n\n {(showAddButton || showRemoveButton) && (\n <div className={styles.preparerActions}>\n {showAddButton && (\n <Components.Button type=\"button\" variant=\"secondary\" onClick={onAdd}>\n {t('addPreparerCta')}\n </Components.Button>\n )}\n {showRemoveButton && (\n <Components.Button type=\"button\" variant=\"error\" onClick={onRemove}>\n {t('removePreparerCta')}\n </Components.Button>\n )}\n </div>\n )}\n </Flex>\n )\n}\n\nfunction buildPreparerPayload(payload: I9SignatureFormInputs) {\n if (payload.usedPreparer !== 'yes' || payload.preparers.length === 0) {\n return { preparer: false }\n }\n\n const result: Record<string, unknown> = { preparer: true }\n\n payload.preparers.forEach((preparer, index) => {\n const prefix = index === 0 ? 'preparer' : `preparer${index + 1}`\n if (index > 0) {\n result[`preparer${index + 1}`] = true\n }\n result[`${prefix}FirstName`] = preparer.firstName\n result[`${prefix}LastName`] = preparer.lastName\n result[`${prefix}Street1`] = preparer.street1\n if (preparer.street2) result[`${prefix}Street2`] = preparer.street2\n result[`${prefix}City`] = preparer.city\n result[`${prefix}State`] = preparer.state\n result[`${prefix}Zip`] = preparer.zip\n result[`${prefix}Agree`] = 'true'\n })\n\n return result\n}\n"],"names":["MAX_PREPARERS","preparerSchema","z","val","i9SignatureFormSchema","I9SignatureForm","props","jsx","BaseComponent","Root","employeeId","formId","className","useI18n","useTranslation","onEvent","baseSubmitHandler","useBase","Components","useComponentContext","formData","useEmployeeFormsGetSuspense","form","formPdf","useEmployeeFormsGetPdfSuspense","pdfUrl","signForm","isPending","useEmployeeFormsSignMutation","methods","useForm","zodResolver","handleBack","componentEvents","handleSubmit","data","payload","preparerPayload","buildPreparerPayload","signFormResult","FormProvider","Form","jsxs","Flex","Trans","DocumentViewer","TextInputField","CheckboxField","PreparerSection","ActionsLayout","emptyPreparer","t","watch","control","useFormContext","fields","append","remove","useFieldArray","usedPreparer","canAddPreparer","handlePreparerChange","value","handleAddPreparer","RadioGroupField","field","index","styles","PreparerFields","onRemove","showRemoveButton","showAddButton","onAdd","stateOptions","STATES_ABBR","abbr","fieldId","SelectField","result","preparer","prefix"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"I9SignatureForm.js","sources":["../../../../../src/components/Employee/DocumentSigner/I9SignatureForm/I9SignatureForm.tsx"],"sourcesContent":["import { z } from 'zod'\nimport { FormProvider, useFieldArray, useForm, useFormContext } from 'react-hook-form'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { useTranslation, Trans } from 'react-i18next'\nimport { useEmployeeFormsGetPdfSuspense } from '@gusto/embedded-api/react-query/employeeFormsGetPdf'\nimport { useEmployeeFormsSignMutation } from '@gusto/embedded-api/react-query/employeeFormsSign'\nimport { useEmployeeFormsGetSuspense } from '@gusto/embedded-api/react-query/employeeFormsGet'\nimport { useI9VerificationGetAuthorization } from '@gusto/embedded-api/react-query/i9VerificationGetAuthorization'\nimport type { AuthorizationStatus } from '@gusto/embedded-api/models/components/i9authorization'\nimport styles from './I9SignatureForm.module.scss'\nimport {\n BaseComponent,\n type BaseComponentInterface,\n type CommonComponentInterface,\n} from '@/components/Base/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { useI18n } from '@/i18n'\nimport { componentEvents, STATES_ABBR } from '@/shared/constants'\nimport {\n ActionsLayout,\n CheckboxField,\n Flex,\n RadioGroupField,\n SelectField,\n TextInputField,\n} from '@/components/Common'\nimport { DocumentViewer } from '@/components/Common/DocumentViewer'\nimport { Form } from '@/components/Common/Form'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\nconst MAX_PREPARERS = 4\n\nconst preparerSchema = z.object({\n firstName: z.string().min(1),\n lastName: z.string().min(1),\n street1: z.string().min(1),\n street2: z.string().optional(),\n city: z.string().min(1),\n state: z.string().min(1),\n zip: z.string().min(1),\n signature: z.string().min(1),\n agree: z.boolean().refine(val => val),\n})\n\nexport type PreparerInputs = z.infer<typeof preparerSchema>\n\nconst i9SignatureFormSchema = z.object({\n signature: z.string().min(1),\n agree: z.literal(true),\n usedPreparer: z.enum(['yes', 'no']),\n preparers: z.array(preparerSchema),\n})\n\nexport type I9SignatureFormInputs = z.infer<typeof i9SignatureFormSchema>\n\ninterface I9SignatureFormProps extends CommonComponentInterface {\n employeeId: string\n formId: string\n}\n\nexport function I9SignatureForm(props: I9SignatureFormProps & BaseComponentInterface) {\n return (\n <BaseComponent {...props}>\n <Root {...props} />\n </BaseComponent>\n )\n}\n\nfunction Root({ employeeId, formId, className }: I9SignatureFormProps) {\n useI18n('Employee.I9SignatureForm')\n const { t } = useTranslation('Employee.I9SignatureForm')\n const { onEvent, baseSubmitHandler } = useBase()\n const Components = useComponentContext()\n\n const { data: formData } = useEmployeeFormsGetSuspense({ employeeId, formId })\n const form = formData.form!\n\n const {\n data: { formPdf },\n } = useEmployeeFormsGetPdfSuspense({ employeeId, formId: form.uuid })\n const pdfUrl = formPdf?.documentUrl\n\n const { data: i9AuthData } = useI9VerificationGetAuthorization({ employeeId })\n const authorizationStatus = i9AuthData?.i9Authorization?.authorizationStatus\n\n const { mutateAsync: signForm, isPending } = useEmployeeFormsSignMutation()\n\n const methods = useForm<I9SignatureFormInputs>({\n resolver: zodResolver(i9SignatureFormSchema),\n defaultValues: {\n signature: '',\n usedPreparer: 'no',\n preparers: [],\n },\n })\n\n const handleBack = () => {\n onEvent(componentEvents.CANCEL)\n }\n\n const handleChangeEligibility = () => {\n onEvent(componentEvents.EMPLOYEE_CHANGE_ELIGIBILITY_STATUS)\n }\n\n const handleSubmit = async (data: I9SignatureFormInputs) => {\n await baseSubmitHandler(data, async payload => {\n const preparerPayload = buildPreparerPayload(payload)\n const { form: signFormResult } = await signForm({\n request: {\n employeeId,\n formId: form.uuid,\n requestBody: {\n signatureText: payload.signature,\n agree: payload.agree,\n ...preparerPayload,\n },\n },\n })\n onEvent(componentEvents.EMPLOYEE_SIGN_FORM, signFormResult)\n })\n }\n\n return (\n <section className={className}>\n <FormProvider {...methods}>\n <Form onSubmit={methods.handleSubmit(handleSubmit)}>\n <Flex flexDirection=\"column\" gap={20}>\n <section>\n <Components.Heading as=\"h2\">{t('title')}</Components.Heading>\n <Components.Text>\n <Trans\n i18nKey=\"description\"\n t={t}\n components={{\n viewFormLink: pdfUrl ? (\n <Components.Link\n href={pdfUrl}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n download={`${form.title || 'form'}.pdf`}\n />\n ) : (\n <span />\n ),\n }}\n />\n </Components.Text>\n </section>\n\n {authorizationStatus && (\n <EligibilityStatusAlert\n authorizationStatus={authorizationStatus}\n onChangeStatus={handleChangeEligibility}\n />\n )}\n\n <DocumentViewer\n url={pdfUrl}\n title={form.title}\n downloadInstructions={t('downloadInstructions')}\n viewDocumentLabel={t('viewDocumentCta')}\n />\n\n <Flex flexDirection=\"column\" gap={12}>\n <TextInputField\n name=\"signature\"\n label={t('signatureLabel')}\n description={t('signatureDescription')}\n errorMessage={t('signatureError')}\n isRequired\n />\n <CheckboxField\n name=\"agree\"\n isRequired\n label={t('confirmationLabel')}\n errorMessage={t('confirmationError')}\n />\n </Flex>\n\n <PreparerSection />\n\n <ActionsLayout>\n <Components.Button variant=\"secondary\" type=\"button\" onClick={handleBack}>\n {t('cancelCta')}\n </Components.Button>\n <Components.Button type=\"submit\" isLoading={isPending}>\n {t('signCta')}\n </Components.Button>\n </ActionsLayout>\n </Flex>\n </Form>\n </FormProvider>\n </section>\n )\n}\n\ninterface EligibilityStatusAlertProps {\n authorizationStatus: AuthorizationStatus\n onChangeStatus: () => void\n}\n\nfunction EligibilityStatusAlert({\n authorizationStatus,\n onChangeStatus,\n}: EligibilityStatusAlertProps) {\n const { t } = useTranslation('Employee.I9SignatureForm')\n const Components = useComponentContext()\n\n const alertLabelKeys = {\n citizen: 'eligibilityAlertLabel_citizen',\n permanent_resident: 'eligibilityAlertLabel_permanent_resident',\n noncitizen: 'eligibilityAlertLabel_noncitizen',\n alien: 'eligibilityAlertLabel_alien',\n } as const satisfies Record<AuthorizationStatus, string>\n\n const alertDescriptionKeys = {\n citizen: 'eligibilityAlertDescription_citizen',\n permanent_resident: 'eligibilityAlertDescription_permanent_resident',\n noncitizen: 'eligibilityAlertDescription_noncitizen',\n alien: 'eligibilityAlertDescription_alien',\n } as const satisfies Record<AuthorizationStatus, string>\n\n return (\n <Components.Alert\n status=\"info\"\n label={t(alertLabelKeys[authorizationStatus])}\n disableScrollIntoView\n >\n <Flex flexDirection=\"column\" gap={8}>\n <Components.Text>{t(alertDescriptionKeys[authorizationStatus])}</Components.Text>\n <div>\n <Components.Button variant=\"secondary\" type=\"button\" onClick={onChangeStatus}>\n {t('eligibilityAlertChangeStatusCta')}\n </Components.Button>\n </div>\n </Flex>\n </Components.Alert>\n )\n}\n\nconst emptyPreparer = {\n firstName: '',\n lastName: '',\n street1: '',\n street2: '',\n city: '',\n state: '',\n zip: '',\n signature: '',\n agree: false,\n}\n\nfunction PreparerSection() {\n const { t } = useTranslation('Employee.I9SignatureForm')\n const Components = useComponentContext()\n const { watch, control } = useFormContext<I9SignatureFormInputs>()\n const { fields, append, remove } = useFieldArray({ control, name: 'preparers' })\n\n const usedPreparer = watch('usedPreparer')\n const canAddPreparer = fields.length < MAX_PREPARERS\n\n const handlePreparerChange = (value: string) => {\n if (value === 'yes' && fields.length === 0) {\n append(emptyPreparer)\n }\n if (value === 'no' && fields.length > 0) {\n remove()\n }\n }\n\n const handleAddPreparer = () => {\n if (canAddPreparer) {\n append(emptyPreparer)\n }\n }\n\n return (\n <Flex flexDirection=\"column\" gap={20}>\n <RadioGroupField\n name=\"usedPreparer\"\n label={t('preparerQuestion')}\n isRequired\n options={[\n { label: t('preparerNo'), value: 'no' },\n { label: t('preparerYes'), value: 'yes' },\n ]}\n onChange={handlePreparerChange}\n />\n\n {usedPreparer === 'yes' &&\n fields.map((field, index) => (\n <Flex flexDirection=\"column\" gap={0} key={field.id}>\n <div className={styles.preparerAlert}>\n <Components.Alert label={t('preparerNote')} status=\"info\" disableScrollIntoView />\n </div>\n <PreparerFields\n index={index}\n onRemove={() => {\n remove(index)\n }}\n showRemoveButton={index !== 0}\n showAddButton={canAddPreparer && index === fields.length - 1}\n onAdd={handleAddPreparer}\n />\n </Flex>\n ))}\n </Flex>\n )\n}\n\ninterface PreparerFieldsProps {\n index: number\n onRemove: () => void\n showRemoveButton: boolean\n showAddButton: boolean\n onAdd: () => void\n}\n\nfunction PreparerFields({\n index,\n onRemove,\n showRemoveButton,\n showAddButton,\n onAdd,\n}: PreparerFieldsProps) {\n const { t } = useTranslation('Employee.I9SignatureForm')\n const Components = useComponentContext()\n\n const stateOptions = STATES_ABBR.map(abbr => ({ label: abbr, value: abbr }))\n const fieldId = `preparers.${index}`\n\n return (\n <Flex flexDirection=\"column\" gap={12}>\n <Components.Heading as=\"h3\">{t('preparerSectionTitle')}</Components.Heading>\n\n <TextInputField\n name={`${fieldId}.firstName`}\n label={t('preparerFirstNameLabel')}\n errorMessage={t('preparerFirstNameError')}\n isRequired\n />\n <TextInputField\n name={`${fieldId}.lastName`}\n label={t('preparerLastNameLabel')}\n errorMessage={t('preparerLastNameError')}\n isRequired\n />\n <TextInputField\n name={`${fieldId}.street1`}\n label={t('preparerStreet1Label')}\n errorMessage={t('preparerStreet1Error')}\n isRequired\n />\n <TextInputField name={`${fieldId}.street2`} label={t('preparerStreet2Label')} />\n <TextInputField\n name={`${fieldId}.city`}\n label={t('preparerCityLabel')}\n errorMessage={t('preparerCityError')}\n isRequired\n />\n <SelectField\n name={`${fieldId}.state`}\n label={t('preparerStateLabel')}\n errorMessage={t('preparerStateError')}\n isRequired\n options={stateOptions}\n placeholder=\"Select a state...\"\n />\n <TextInputField\n name={`${fieldId}.zip`}\n label={t('preparerZipLabel')}\n errorMessage={t('preparerZipError')}\n isRequired\n />\n <TextInputField\n name={`${fieldId}.signature`}\n label={t('preparerSignatureLabel')}\n description={t('preparerSignatureDescription')}\n errorMessage={t('preparerSignatureError')}\n isRequired\n />\n <CheckboxField\n name={`${fieldId}.agree`}\n isRequired\n label={t('preparerConfirmationLabel')}\n errorMessage={t('preparerConfirmationError')}\n />\n\n {(showAddButton || showRemoveButton) && (\n <div className={styles.preparerActions}>\n {showAddButton && (\n <Components.Button type=\"button\" variant=\"secondary\" onClick={onAdd}>\n {t('addPreparerCta')}\n </Components.Button>\n )}\n {showRemoveButton && (\n <Components.Button type=\"button\" variant=\"error\" onClick={onRemove}>\n {t('removePreparerCta')}\n </Components.Button>\n )}\n </div>\n )}\n </Flex>\n )\n}\n\nfunction buildPreparerPayload(payload: I9SignatureFormInputs) {\n if (payload.usedPreparer !== 'yes' || payload.preparers.length === 0) {\n return { preparer: false }\n }\n\n const result: Record<string, unknown> = { preparer: true }\n\n payload.preparers.forEach((preparer, index) => {\n const prefix = index === 0 ? 'preparer' : `preparer${index + 1}`\n if (index > 0) {\n result[`preparer${index + 1}`] = true\n }\n result[`${prefix}FirstName`] = preparer.firstName\n result[`${prefix}LastName`] = preparer.lastName\n result[`${prefix}Street1`] = preparer.street1\n if (preparer.street2) result[`${prefix}Street2`] = preparer.street2\n result[`${prefix}City`] = preparer.city\n result[`${prefix}State`] = preparer.state\n result[`${prefix}Zip`] = preparer.zip\n result[`${prefix}Agree`] = 'true'\n })\n\n return result\n}\n"],"names":["MAX_PREPARERS","preparerSchema","z","val","i9SignatureFormSchema","I9SignatureForm","props","jsx","BaseComponent","Root","employeeId","formId","className","useI18n","useTranslation","onEvent","baseSubmitHandler","useBase","Components","useComponentContext","formData","useEmployeeFormsGetSuspense","form","formPdf","useEmployeeFormsGetPdfSuspense","pdfUrl","i9AuthData","useI9VerificationGetAuthorization","authorizationStatus","signForm","isPending","useEmployeeFormsSignMutation","methods","useForm","zodResolver","handleBack","componentEvents","handleChangeEligibility","handleSubmit","data","payload","preparerPayload","buildPreparerPayload","signFormResult","FormProvider","Form","jsxs","Flex","Trans","EligibilityStatusAlert","DocumentViewer","TextInputField","CheckboxField","PreparerSection","ActionsLayout","onChangeStatus","t","alertLabelKeys","alertDescriptionKeys","emptyPreparer","watch","control","useFormContext","fields","append","remove","useFieldArray","usedPreparer","canAddPreparer","handlePreparerChange","value","handleAddPreparer","RadioGroupField","field","index","styles","PreparerFields","onRemove","showRemoveButton","showAddButton","onAdd","stateOptions","STATES_ABBR","abbr","fieldId","SelectField","result","preparer","prefix"],"mappings":"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"}
|
|
@@ -13,10 +13,11 @@ import { useI18n as G } from "../../../../i18n/I18n.js";
|
|
|
13
13
|
import { componentEvents as i } from "../../../../shared/constants.js";
|
|
14
14
|
import { Flex as M } from "../../../Common/Flex/Flex.js";
|
|
15
15
|
import "react-i18next";
|
|
16
|
+
import "classnames";
|
|
16
17
|
import "../../../../contexts/ComponentAdapter/useComponentContext.js";
|
|
17
18
|
import "react";
|
|
18
19
|
import { SignatureForm as R } from "../../../Common/SignatureForm/SignatureForm.js";
|
|
19
|
-
function
|
|
20
|
+
function oo(r) {
|
|
20
21
|
return /* @__PURE__ */ o(A, { ...r, children: /* @__PURE__ */ o(j, { ...r }) });
|
|
21
22
|
}
|
|
22
23
|
function j({ employeeId: r, formId: s, className: u, children: n }) {
|
|
@@ -61,6 +62,6 @@ function j({ employeeId: r, formId: s, className: u, children: n }) {
|
|
|
61
62
|
) });
|
|
62
63
|
}
|
|
63
64
|
export {
|
|
64
|
-
|
|
65
|
+
oo as SignatureForm
|
|
65
66
|
};
|
|
66
67
|
//# sourceMappingURL=SignatureForm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SignatureForm.js","sources":["../../../../../src/components/Employee/DocumentSigner/SignatureForm/SignatureForm.tsx"],"sourcesContent":["import { useEmployeeFormsGetPdfSuspense } from '@gusto/embedded-api/react-query/employeeFormsGetPdf'\nimport { useEmployeeFormsSignMutation } from '@gusto/embedded-api/react-query/employeeFormsSign'\nimport { useEmployeeFormsGetSuspense } from '@gusto/embedded-api/react-query/employeeFormsGet'\nimport { Form as FormComponent } from './Form'\nimport { Head } from './Head'\nimport { Actions } from './Actions'\nimport { Preview } from './Preview'\nimport { SignatureFormProvider } from './useSignatureForm'\nimport {\n BaseComponent,\n type BaseComponentInterface,\n type CommonComponentInterface,\n} from '@/components/Base/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { useI18n } from '@/i18n'\nimport { componentEvents } from '@/shared/constants'\nimport { Flex } from '@/components/Common'\nimport type { SignatureFormInputs } from '@/components/Common/SignatureForm'\nimport { SignatureForm as SharedSignatureForm } from '@/components/Common/SignatureForm'\n\ninterface SignatureFormProps extends CommonComponentInterface {\n employeeId: string\n formId: string\n}\n\nexport function SignatureForm(props: SignatureFormProps & BaseComponentInterface) {\n return (\n <BaseComponent {...props}>\n <Root {...props} />\n </BaseComponent>\n )\n}\n\nfunction Root({ employeeId, formId, className, children }: SignatureFormProps) {\n useI18n('Employee.DocumentSigner')\n const { onEvent, baseSubmitHandler } = useBase()\n\n const { data } = useEmployeeFormsGetSuspense({ employeeId, formId })\n const form = data.form!\n\n const {\n data: { formPdf },\n } = useEmployeeFormsGetPdfSuspense({ employeeId, formId: form.uuid })\n const pdfUrl = formPdf!.documentUrl\n\n const { mutateAsync: signForm, isPending: isSignFormPending } = useEmployeeFormsSignMutation()\n\n const handleBack = () => {\n onEvent(componentEvents.CANCEL)\n }\n\n const handleSubmit = async (data: SignatureFormInputs) => {\n await baseSubmitHandler(data, async payload => {\n if (form.uuid) {\n const { form: signFormResult } = await signForm({\n request: {\n employeeId,\n formId: form.uuid,\n requestBody: {\n signatureText: payload.signature,\n agree: payload.confirmSignature,\n },\n },\n })\n onEvent(componentEvents.EMPLOYEE_SIGN_FORM, signFormResult)\n }\n })\n }\n\n return (\n <section className={className}>\n <SignatureFormProvider\n value={{\n pdfUrl,\n handleBack,\n form,\n isPending: isSignFormPending,\n }}\n >\n <SharedSignatureForm onSubmit={handleSubmit}>\n <Flex flexDirection=\"column\">\n {children ? (\n children\n ) : (\n <>\n <Head />\n <Preview />\n <FormComponent />\n <Actions />\n </>\n )}\n </Flex>\n </SharedSignatureForm>\n </SignatureFormProvider>\n </section>\n )\n}\n"],"names":["SignatureForm","props","jsx","BaseComponent","Root","employeeId","formId","className","children","useI18n","onEvent","baseSubmitHandler","useBase","data","useEmployeeFormsGetSuspense","form","formPdf","useEmployeeFormsGetPdfSuspense","pdfUrl","signForm","isSignFormPending","useEmployeeFormsSignMutation","SignatureFormProvider","componentEvents","SharedSignatureForm","payload","signFormResult","Flex","jsxs","Fragment","Head","Preview","FormComponent","Actions"],"mappings":"
|
|
1
|
+
{"version":3,"file":"SignatureForm.js","sources":["../../../../../src/components/Employee/DocumentSigner/SignatureForm/SignatureForm.tsx"],"sourcesContent":["import { useEmployeeFormsGetPdfSuspense } from '@gusto/embedded-api/react-query/employeeFormsGetPdf'\nimport { useEmployeeFormsSignMutation } from '@gusto/embedded-api/react-query/employeeFormsSign'\nimport { useEmployeeFormsGetSuspense } from '@gusto/embedded-api/react-query/employeeFormsGet'\nimport { Form as FormComponent } from './Form'\nimport { Head } from './Head'\nimport { Actions } from './Actions'\nimport { Preview } from './Preview'\nimport { SignatureFormProvider } from './useSignatureForm'\nimport {\n BaseComponent,\n type BaseComponentInterface,\n type CommonComponentInterface,\n} from '@/components/Base/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { useI18n } from '@/i18n'\nimport { componentEvents } from '@/shared/constants'\nimport { Flex } from '@/components/Common'\nimport type { SignatureFormInputs } from '@/components/Common/SignatureForm'\nimport { SignatureForm as SharedSignatureForm } from '@/components/Common/SignatureForm'\n\ninterface SignatureFormProps extends CommonComponentInterface {\n employeeId: string\n formId: string\n}\n\nexport function SignatureForm(props: SignatureFormProps & BaseComponentInterface) {\n return (\n <BaseComponent {...props}>\n <Root {...props} />\n </BaseComponent>\n )\n}\n\nfunction Root({ employeeId, formId, className, children }: SignatureFormProps) {\n useI18n('Employee.DocumentSigner')\n const { onEvent, baseSubmitHandler } = useBase()\n\n const { data } = useEmployeeFormsGetSuspense({ employeeId, formId })\n const form = data.form!\n\n const {\n data: { formPdf },\n } = useEmployeeFormsGetPdfSuspense({ employeeId, formId: form.uuid })\n const pdfUrl = formPdf!.documentUrl\n\n const { mutateAsync: signForm, isPending: isSignFormPending } = useEmployeeFormsSignMutation()\n\n const handleBack = () => {\n onEvent(componentEvents.CANCEL)\n }\n\n const handleSubmit = async (data: SignatureFormInputs) => {\n await baseSubmitHandler(data, async payload => {\n if (form.uuid) {\n const { form: signFormResult } = await signForm({\n request: {\n employeeId,\n formId: form.uuid,\n requestBody: {\n signatureText: payload.signature,\n agree: payload.confirmSignature,\n },\n },\n })\n onEvent(componentEvents.EMPLOYEE_SIGN_FORM, signFormResult)\n }\n })\n }\n\n return (\n <section className={className}>\n <SignatureFormProvider\n value={{\n pdfUrl,\n handleBack,\n form,\n isPending: isSignFormPending,\n }}\n >\n <SharedSignatureForm onSubmit={handleSubmit}>\n <Flex flexDirection=\"column\">\n {children ? (\n children\n ) : (\n <>\n <Head />\n <Preview />\n <FormComponent />\n <Actions />\n </>\n )}\n </Flex>\n </SharedSignatureForm>\n </SignatureFormProvider>\n </section>\n )\n}\n"],"names":["SignatureForm","props","jsx","BaseComponent","Root","employeeId","formId","className","children","useI18n","onEvent","baseSubmitHandler","useBase","data","useEmployeeFormsGetSuspense","form","formPdf","useEmployeeFormsGetPdfSuspense","pdfUrl","signForm","isSignFormPending","useEmployeeFormsSignMutation","SignatureFormProvider","componentEvents","SharedSignatureForm","payload","signFormResult","Flex","jsxs","Fragment","Head","Preview","FormComponent","Actions"],"mappings":";;;;;;;;;;;;;;;;;;;AAyBO,SAASA,GAAcC,GAAoD;AAChF,SACE,gBAAAC,EAACC,KAAe,GAAGF,GACjB,4BAACG,GAAA,EAAM,GAAGH,GAAO,EAAA,CACnB;AAEJ;AAEA,SAASG,EAAK,EAAE,YAAAC,GAAY,QAAAC,GAAQ,WAAAC,GAAW,UAAAC,KAAgC;AAC7E,EAAAC,EAAQ,yBAAyB;AACjC,QAAM,EAAE,SAAAC,GAAS,mBAAAC,EAAA,IAAsBC,EAAA,GAEjC,EAAE,MAAAC,EAAA,IAASC,EAA4B,EAAE,YAAAT,GAAY,QAAAC,GAAQ,GAC7DS,IAAOF,EAAK,MAEZ;AAAA,IACJ,MAAM,EAAE,SAAAG,EAAA;AAAA,EAAQ,IACdC,EAA+B,EAAE,YAAAZ,GAAY,QAAQU,EAAK,MAAM,GAC9DG,IAASF,EAAS,aAElB,EAAE,aAAaG,GAAU,WAAWC,EAAA,IAAsBC,EAAA;AAwBhE,SACE,gBAAAnB,EAAC,aAAQ,WAAAK,GACP,UAAA,gBAAAL;AAAA,IAACoB;AAAA,IAAA;AAAA,MACC,OAAO;AAAA,QACL,QAAAJ;AAAA,QACA,YA3BW,MAAM;AACvB,UAAAR,EAAQa,EAAgB,MAAM;AAAA,QAChC;AAAA,QA0BQ,MAAAR;AAAA,QACA,WAAWK;AAAA,MAAA;AAAA,MAGb,UAAA,gBAAAlB,EAACsB,GAAA,EAAoB,UA5BN,OAAOX,MAA8B;AACxD,cAAMF,EAAkBE,GAAM,OAAMY,MAAW;AAC7C,cAAIV,EAAK,MAAM;AACb,kBAAM,EAAE,MAAMW,EAAA,IAAmB,MAAMP,EAAS;AAAA,cAC9C,SAAS;AAAA,gBACP,YAAAd;AAAA,gBACA,QAAQU,EAAK;AAAA,gBACb,aAAa;AAAA,kBACX,eAAeU,EAAQ;AAAA,kBACvB,OAAOA,EAAQ;AAAA,gBAAA;AAAA,cACjB;AAAA,YACF,CACD;AACD,YAAAf,EAAQa,EAAgB,oBAAoBG,CAAc;AAAA,UAC5D;AAAA,QACF,CAAC;AAAA,MACH,GAaQ,UAAA,gBAAAxB,EAACyB,KAAK,eAAc,UACjB,UAAAnB,KAGC,gBAAAoB,EAAAC,GAAA,EACE,UAAA;AAAA,QAAA,gBAAA3B,EAAC4B,GAAA,EAAK;AAAA,0BACLC,GAAA,EAAQ;AAAA,0BACRC,GAAA,EAAc;AAAA,0BACdC,GAAA,CAAA,CAAQ;AAAA,MAAA,EAAA,CACX,GAEJ,EAAA,CACF;AAAA,IAAA;AAAA,EAAA,GAEJ;AAEJ;"}
|
|
@@ -2,13 +2,13 @@ import "react/jsx-runtime";
|
|
|
2
2
|
import "react";
|
|
3
3
|
import "react-error-boundary";
|
|
4
4
|
import "react-i18next";
|
|
5
|
-
import "@gusto/embedded-api/models/errors/
|
|
5
|
+
import "@gusto/embedded-api/models/errors/gustoembeddederror";
|
|
6
6
|
import "@gusto/embedded-api/models/errors/sdkvalidationerror";
|
|
7
7
|
import "@tanstack/react-query";
|
|
8
8
|
import "../../../Base/useBase.js";
|
|
9
9
|
import "../../../../shared/constants.js";
|
|
10
|
+
import "classnames";
|
|
10
11
|
import "../../../../contexts/ComponentAdapter/useComponentContext.js";
|
|
11
|
-
import "../../../../contexts/LoadingIndicatorProvider/useLoadingIndicator.js";
|
|
12
12
|
import "dompurify";
|
|
13
13
|
import "../../../../contexts/LocaleProvider/useLocale.js";
|
|
14
14
|
import { createCompoundContext as o } from "../../../Base/createCompoundContext.js";
|
|
@@ -8,6 +8,7 @@ export type EventPayloads = {
|
|
|
8
8
|
name?: string;
|
|
9
9
|
};
|
|
10
10
|
[componentEvents.EMPLOYEE_EMPLOYMENT_ELIGIBILITY_DONE]: unknown;
|
|
11
|
+
[componentEvents.EMPLOYEE_CHANGE_ELIGIBILITY_STATUS]: undefined;
|
|
11
12
|
[componentEvents.CANCEL]: undefined;
|
|
12
13
|
};
|
|
13
14
|
export interface DocumentSignerContextInterface extends FlowContextInterface {
|