@gusto/embedded-react-sdk 0.52.2 → 0.53.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 +36 -0
- package/dist/components/Common/DateRangeFilter/DateRangeFilter.d.ts +1 -2
- package/dist/components/Common/DateRangeFilter/DateRangeFilter.js +42 -43
- package/dist/components/Common/DateRangeFilter/DateRangeFilter.js.map +1 -1
- package/dist/components/Common/Fields/PercentageField/PercentageField.js +44 -42
- package/dist/components/Common/Fields/PercentageField/PercentageField.js.map +1 -1
- package/dist/components/Common/UI/Box/Box.js +6 -6
- package/dist/components/Common/UI/Box/Box.js.map +1 -1
- package/dist/components/Common/UI/Box/Box.module.scss.js +8 -8
- package/dist/components/Common/UI/Box/BoxTypes.d.ts +1 -1
- package/dist/components/Common/UI/Breadcrumbs/Breadcrumbs.js +1 -1
- package/dist/components/Common/UI/CalendarPreview/CalendarPreview.js +16 -14
- package/dist/components/Common/UI/CalendarPreview/CalendarPreview.js.map +1 -1
- package/dist/components/Common/UI/Dialog/Dialog.js +29 -28
- package/dist/components/Common/UI/Dialog/Dialog.js.map +1 -1
- package/dist/components/Common/UI/FileInput/FileInput.js +1 -1
- package/dist/components/Common/UI/FormBox/FormBox.d.ts +1 -1
- package/dist/components/Common/UI/FormBox/FormBox.js +9 -8
- package/dist/components/Common/UI/FormBox/FormBox.js.map +1 -1
- package/dist/components/Common/UI/FormBox/FormBox.module.scss.js +8 -6
- package/dist/components/Common/UI/FormBox/FormBox.module.scss.js.map +1 -1
- package/dist/components/Common/UI/FormBox/FormBoxTypes.d.ts +5 -1
- package/dist/components/Common/UI/ProgressBar/ProgressBar.js +4 -4
- package/dist/components/Company/AssignSignatory/AssignSignatory.js +7 -10
- package/dist/components/Company/AssignSignatory/AssignSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js +6 -8
- package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js.map +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js +8 -9
- package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js.map +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js +18 -21
- package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js +11 -12
- package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js.map +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +5 -4
- package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/Head.js +8 -9
- package/dist/components/Company/AssignSignatory/Head.js.map +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js +6 -7
- package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js.map +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js +5 -8
- package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js +20 -21
- package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js.map +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +5 -4
- package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/TitleSelect.js +10 -12
- package/dist/components/Company/AssignSignatory/TitleSelect.js.map +1 -1
- package/dist/components/Company/AssignSignatory/useAssignSignatory.js +7 -6
- package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountForm/Actions.js +2 -3
- package/dist/components/Company/BankAccount/BankAccountForm/Actions.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountForm/Form.js +9 -11
- package/dist/components/Company/BankAccount/BankAccountForm/Form.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountForm/Head.js +2 -3
- package/dist/components/Company/BankAccount/BankAccountForm/Head.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountForm/context.js +5 -4
- package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountList/Actions.js +6 -7
- package/dist/components/Company/BankAccount/BankAccountList/Actions.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js +7 -8
- package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountVerify/Form.js +4 -6
- package/dist/components/Company/BankAccount/BankAccountVerify/Form.js.map +1 -1
- package/dist/components/Company/BankAccount/stateMachine.d.ts +0 -1
- package/dist/components/Company/BankAccount/stateMachine.js +33 -35
- package/dist/components/Company/BankAccount/stateMachine.js.map +1 -1
- package/dist/components/Company/DocumentSigner/DocumentList/Actions.js +5 -6
- package/dist/components/Company/DocumentSigner/DocumentList/Actions.js.map +1 -1
- package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js +11 -14
- package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
- package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +5 -4
- package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
- package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js +7 -8
- package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js.map +1 -1
- package/dist/components/Company/DocumentSigner/shared/useSignCompanyForm/fields.js +4 -4
- package/dist/components/Company/DocumentSigner/stateMachine.d.ts +0 -1
- package/dist/components/Company/DocumentSigner/stateMachine.js +27 -29
- package/dist/components/Company/DocumentSigner/stateMachine.js.map +1 -1
- package/dist/components/Company/FederalTaxes/Actions.js +6 -7
- package/dist/components/Company/FederalTaxes/Actions.js.map +1 -1
- package/dist/components/Company/FederalTaxes/FederalTaxes.js +7 -10
- package/dist/components/Company/FederalTaxes/FederalTaxes.js.map +1 -1
- package/dist/components/Company/FederalTaxes/Form.js +4 -4
- package/dist/components/Company/FederalTaxes/useFederalTaxes.js +10 -9
- package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
- package/dist/components/Company/Industry/Actions.js +5 -6
- package/dist/components/Company/Industry/Actions.js.map +1 -1
- package/dist/components/Company/Industry/Context.js +8 -7
- package/dist/components/Company/Industry/Context.js.map +1 -1
- package/dist/components/Company/Industry/Edit.js +10 -12
- package/dist/components/Company/Industry/Edit.js.map +1 -1
- package/dist/components/Company/Industry/IndustrySelect.js +6 -8
- package/dist/components/Company/Industry/IndustrySelect.js.map +1 -1
- package/dist/components/Company/Locations/LocationForm/Actions.js +6 -7
- package/dist/components/Company/Locations/LocationForm/Actions.js.map +1 -1
- package/dist/components/Company/Locations/LocationForm/Form.js +4 -6
- package/dist/components/Company/Locations/LocationForm/Form.js.map +1 -1
- package/dist/components/Company/Locations/LocationForm/LocationForm.js +11 -14
- package/dist/components/Company/Locations/LocationForm/LocationForm.js.map +1 -1
- package/dist/components/Company/Locations/LocationForm/useLocationForm.js +5 -4
- package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
- package/dist/components/Company/Locations/LocationsList/Actions.js +2 -3
- package/dist/components/Company/Locations/LocationsList/Actions.js.map +1 -1
- package/dist/components/Company/Locations/LocationsList/LocationsList.js +9 -12
- package/dist/components/Company/Locations/LocationsList/LocationsList.js.map +1 -1
- package/dist/components/Company/Locations/LocationsList/useLocationsList.js +5 -4
- package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
- package/dist/components/Company/OnboardingOverview/Completed.js +5 -6
- package/dist/components/Company/OnboardingOverview/Completed.js.map +1 -1
- package/dist/components/Company/OnboardingOverview/MissingRequirements.js +9 -10
- package/dist/components/Company/OnboardingOverview/MissingRequirements.js.map +1 -1
- package/dist/components/Company/OnboardingOverview/OnboardingOverview.js +2 -5
- package/dist/components/Company/OnboardingOverview/OnboardingOverview.js.map +1 -1
- package/dist/components/Company/OnboardingOverview/context.js +5 -4
- package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
- package/dist/components/Company/PaySchedule/PayScheduleForm.js +47 -51
- package/dist/components/Company/PaySchedule/PayScheduleForm.js.map +1 -1
- package/dist/components/Company/PaySchedule/payScheduleStateMachine.d.ts +0 -1
- package/dist/components/Company/PaySchedule/payScheduleStateMachine.js +26 -28
- package/dist/components/Company/PaySchedule/payScheduleStateMachine.js.map +1 -1
- package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/fields.js +5 -5
- package/dist/components/Company/StateTaxes/StateTaxes.d.ts +2 -1
- package/dist/components/Company/StateTaxes/StateTaxes.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesComponents.d.ts +2 -0
- package/dist/components/Company/StateTaxes/StateTaxesComponents.js +29 -16
- package/dist/components/Company/StateTaxes/StateTaxesComponents.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js +2 -3
- package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/Form.d.ts +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/Form.js +21 -32
- package/dist/components/Company/StateTaxes/StateTaxesForm/Form.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.js +67 -75
- package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +5 -4
- package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesList/Actions.js +6 -7
- package/dist/components/Company/StateTaxes/StateTaxesList/Actions.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesList/List.js +62 -47
- package/dist/components/Company/StateTaxes/StateTaxesList/List.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesList/StateTaxesList.d.ts +1 -0
- package/dist/components/Company/StateTaxes/StateTaxesList/StateTaxesList.js +26 -23
- package/dist/components/Company/StateTaxes/StateTaxesList/StateTaxesList.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesList/context.d.ts +1 -0
- package/dist/components/Company/StateTaxes/StateTaxesList/context.js +5 -4
- package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
- package/dist/components/Company/StateTaxes/TaxRateManagement/AddRateAction.d.ts +12 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/AddRateAction.js +36 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/AddRateAction.js.map +1 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/AddTaxRateDialog.d.ts +10 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/AddTaxRateDialog.js +110 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/AddTaxRateDialog.js.map +1 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/TaxRateHistorySection.d.ts +18 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/TaxRateHistorySection.js +55 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/TaxRateHistorySection.js.map +1 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/TaxRateManagement.d.ts +47 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/TaxRateManagement.js +108 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/TaxRateManagement.js.map +1 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/context.d.ts +25 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/context.js +22 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/context.js.map +1 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/index.d.ts +1 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/toHistoryRows.d.ts +29 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/toHistoryRows.js +34 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/toHistoryRows.js.map +1 -0
- package/dist/components/Company/StateTaxes/shared/RequirementFields.d.ts +17 -0
- package/dist/components/Company/StateTaxes/shared/RequirementFields.js +24 -0
- package/dist/components/Company/StateTaxes/shared/RequirementFields.js.map +1 -0
- package/dist/components/Company/StateTaxes/{StateTaxesForm → shared}/applicableIf.d.ts +1 -1
- package/dist/components/Company/StateTaxes/shared/applicableIf.js.map +1 -0
- package/dist/components/Company/StateTaxes/shared/applicableIf.test.d.ts +1 -0
- package/dist/components/Company/StateTaxes/shared/buildRequirementSchema.d.ts +19 -0
- package/dist/components/Company/StateTaxes/shared/buildRequirementSchema.js +38 -0
- package/dist/components/Company/StateTaxes/shared/buildRequirementSchema.js.map +1 -0
- package/dist/components/Company/StateTaxes/shared/requirementValue.d.ts +2 -0
- package/dist/components/Company/StateTaxes/shared/requirementValue.js +7 -0
- package/dist/components/Company/StateTaxes/shared/requirementValue.js.map +1 -0
- package/dist/components/Company/StateTaxes/shared/rhfKey.d.ts +23 -0
- package/dist/components/Company/StateTaxes/shared/rhfKey.js +13 -0
- package/dist/components/Company/StateTaxes/shared/rhfKey.js.map +1 -0
- package/dist/components/Company/StateTaxes/shared/rhfKey.test.d.ts +1 -0
- package/dist/components/Company/StateTaxes/stateTaxesStateMachine.d.ts +1 -0
- package/dist/components/Company/StateTaxes/stateTaxesStateMachine.js +33 -11
- package/dist/components/Company/StateTaxes/stateTaxesStateMachine.js.map +1 -1
- package/dist/components/Company/exports/companyOnboarding.d.ts +1 -0
- package/dist/components/Company/exports/companyOnboarding.js +12 -10
- package/dist/components/Company/exports/companyOnboarding.js.map +1 -1
- package/dist/components/Contractor/Address/Address.js +11 -12
- package/dist/components/Contractor/Address/Address.js.map +1 -1
- package/dist/components/Contractor/ContractorList/management/ManagementContractorList.d.ts +39 -0
- package/dist/components/Contractor/ContractorList/management/ManagementContractorList.js +90 -0
- package/dist/components/Contractor/ContractorList/management/ManagementContractorList.js.map +1 -0
- package/dist/components/Contractor/ContractorList/management/ManagementContractorListView.d.ts +22 -0
- package/dist/components/Contractor/ContractorList/management/ManagementContractorListView.js +247 -0
- package/dist/components/Contractor/ContractorList/management/ManagementContractorListView.js.map +1 -0
- package/dist/components/Contractor/ContractorList/{index.d.ts → onboarding/ContractorList.d.ts} +3 -3
- package/dist/components/Contractor/ContractorList/onboarding/ContractorList.js +51 -0
- package/dist/components/Contractor/ContractorList/onboarding/ContractorList.js.map +1 -0
- package/dist/components/Contractor/ContractorList/onboarding/ContractorListView.d.ts +16 -0
- package/dist/components/Contractor/ContractorList/onboarding/ContractorListView.js +113 -0
- package/dist/components/Contractor/ContractorList/onboarding/ContractorListView.js.map +1 -0
- package/dist/components/Contractor/ContractorList/shared/index.d.ts +1 -0
- package/dist/components/Contractor/ContractorList/shared/useContractorList.d.ts +87 -0
- package/dist/components/Contractor/ContractorList/shared/useContractorList.js +110 -0
- package/dist/components/Contractor/ContractorList/shared/useContractorList.js.map +1 -0
- package/dist/components/Contractor/Documents/DocumentSigner/stateMachine.d.ts +0 -1
- package/dist/components/Contractor/Documents/DocumentSigner/stateMachine.js +18 -20
- package/dist/components/Contractor/Documents/DocumentSigner/stateMachine.js.map +1 -1
- package/dist/components/Contractor/Documents/DocumentsList/DocumentsList.js +2 -3
- package/dist/components/Contractor/Documents/DocumentsList/DocumentsList.js.map +1 -1
- package/dist/components/Contractor/Documents/SignatureForm/SignatureForm.js +1 -1
- package/dist/components/Contractor/Documents/SignatureForm/useContractorSignatureForm/fields.js +8 -8
- package/dist/components/Contractor/OnboardingFlow/OnboardingFlowComponents.js +1 -1
- package/dist/components/Contractor/OnboardingFlow/OnboardingFlowComponents.js.map +1 -1
- package/dist/components/Contractor/OnboardingSummary/OnboardingSummary.js +9 -10
- package/dist/components/Contractor/OnboardingSummary/OnboardingSummary.js.map +1 -1
- package/dist/components/Contractor/PaymentMethod/PaymentMethod.js +2 -3
- package/dist/components/Contractor/PaymentMethod/PaymentMethod.js.map +1 -1
- package/dist/components/Contractor/PaymentMethod/shared/useContractorBankAccountForm/fields.js +1 -1
- package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js +162 -251
- package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js.map +1 -1
- package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentFormSchema.d.ts +2 -1
- package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentFormSchema.js +2 -2
- package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentFormSchema.js.map +1 -1
- package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentPresentation.js +45 -44
- package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentPresentation.js.map +1 -1
- package/dist/components/Contractor/Payments/CreatePayment/FastAchSubmissionBlockerBanner.js +2 -3
- package/dist/components/Contractor/Payments/CreatePayment/FastAchSubmissionBlockerBanner.js.map +1 -1
- package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.js +2 -3
- package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.js.map +1 -1
- package/dist/components/Contractor/Payments/shared/usePaymentAmountsEditor.d.ts +32 -0
- package/dist/components/Contractor/Payments/shared/usePaymentAmountsEditor.js +107 -0
- package/dist/components/Contractor/Payments/shared/usePaymentAmountsEditor.js.map +1 -0
- package/dist/components/Contractor/Payments/shared/usePaymentAmountsEditor.test.d.ts +1 -0
- package/dist/components/Contractor/Profile/BusinessSelfOnboardingProfile.js +6 -7
- package/dist/components/Contractor/Profile/BusinessSelfOnboardingProfile.js.map +1 -1
- package/dist/components/Contractor/Profile/IndividualSelfOnboardingProfile.js +18 -19
- package/dist/components/Contractor/Profile/IndividualSelfOnboardingProfile.js.map +1 -1
- package/dist/components/Contractor/Profile/shared/useContractorDetailsForm/fields.js +16 -16
- package/dist/components/Contractor/Submit/Submit.js +2 -3
- package/dist/components/Contractor/Submit/Submit.js.map +1 -1
- package/dist/components/Contractor/exports/contractorManagement.d.ts +1 -0
- package/dist/components/Contractor/exports/contractorManagement.js +12 -10
- package/dist/components/Contractor/exports/contractorManagement.js.map +1 -1
- package/dist/components/Contractor/exports/contractorOnboarding.d.ts +1 -1
- package/dist/components/Contractor/exports/contractorOnboarding.js +1 -1
- package/dist/components/Employee/Compensation/management/ManagementCompensationFormBody.js +32 -33
- package/dist/components/Employee/Compensation/management/ManagementCompensationFormBody.js.map +1 -1
- package/dist/components/Employee/Compensation/shared/AddCompensationFormBody.js +2 -3
- package/dist/components/Employee/Compensation/shared/AddCompensationFormBody.js.map +1 -1
- package/dist/components/Employee/Compensation/shared/useCompensationForm/fields.js +4 -4
- package/dist/components/Employee/Compensation/shared/useJobForm/fields.js +6 -6
- package/dist/components/Employee/Deductions/shared/DeductionsForm/ChildSupportFormView.js +6 -7
- package/dist/components/Employee/Deductions/shared/DeductionsForm/ChildSupportFormView.js.map +1 -1
- package/dist/components/Employee/Deductions/shared/DeductionsForm/StandardDeductionForm.js +14 -15
- package/dist/components/Employee/Deductions/shared/DeductionsForm/StandardDeductionForm.js.map +1 -1
- package/dist/components/Employee/Deductions/shared/useChildSupportGarnishmentForm/fields.js +8 -8
- package/dist/components/Employee/Deductions/shared/useDeductionForm/fields.js +4 -4
- package/dist/components/Employee/Documents/management/DocumentManager.js +6 -7
- package/dist/components/Employee/Documents/management/DocumentManager.js.map +1 -1
- package/dist/components/Employee/Documents/management/DocumentsCard/DocumentsCard.js +6 -7
- package/dist/components/Employee/Documents/management/DocumentsCard/DocumentsCard.js.map +1 -1
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/Actions.js +4 -5
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/Actions.js.map +1 -1
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/DocumentList.js +10 -13
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/List.js +5 -6
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/List.js.map +1 -1
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/List.module.scss.js +8 -0
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/List.module.scss.js.map +1 -0
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js +5 -4
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibility.js +22 -21
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibility.js.map +1 -1
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibilityPresentation.js +6 -6
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibilitySchema.js +5 -4
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibilitySchema.js.map +1 -1
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/I9SignatureForm/I9SignatureForm.js +3 -4
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/I9SignatureForm/I9SignatureForm.js.map +1 -1
- package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocumentsPresentation.js +6 -7
- package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocumentsPresentation.js.map +1 -1
- package/dist/components/Employee/Documents/shared/SignatureForm/SignatureForm.js +11 -12
- package/dist/components/Employee/Documents/shared/SignatureForm/SignatureForm.js.map +1 -1
- package/dist/components/Employee/Documents/shared/useSignEmployeeForm/fields.js +1 -1
- package/dist/components/Employee/FederalTaxes/management/FederalTaxesCard/FederalTaxesCard.js +15 -16
- package/dist/components/Employee/FederalTaxes/management/FederalTaxesCard/FederalTaxesCard.js.map +1 -1
- package/dist/components/Employee/FederalTaxes/management/FederalTaxesEditForm.js +6 -7
- package/dist/components/Employee/FederalTaxes/management/FederalTaxesEditForm.js.map +1 -1
- package/dist/components/Employee/FederalTaxes/onboarding/FederalTaxes.js +11 -12
- package/dist/components/Employee/FederalTaxes/onboarding/FederalTaxes.js.map +1 -1
- package/dist/components/Employee/FederalTaxes/shared/FederalTaxesView.js +1 -1
- package/dist/components/Employee/FederalTaxes/shared/useFederalTaxesForm/fields.js +4 -4
- package/dist/components/Employee/HomeAddress/management/HomeAddressCard/HomeAddressCard.js +7 -8
- package/dist/components/Employee/HomeAddress/management/HomeAddressCard/HomeAddressCard.js.map +1 -1
- package/dist/components/Employee/OnboardingSummary/OnboardingSummary.js +4 -4
- package/dist/components/Employee/PaymentMethod/management/PaymentMethodBankForm.js +29 -23
- package/dist/components/Employee/PaymentMethod/management/PaymentMethodBankForm.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/onboarding/BankForm.js +26 -20
- package/dist/components/Employee/PaymentMethod/onboarding/BankForm.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/onboarding/ListView.js +133 -99
- package/dist/components/Employee/PaymentMethod/onboarding/ListView.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/onboarding/ListView.module.scss.js +8 -0
- package/dist/components/Employee/PaymentMethod/onboarding/ListView.module.scss.js.map +1 -0
- package/dist/components/Employee/PaymentMethod/shared/BankFormBody/BankFormBody.d.ts +1 -1
- package/dist/components/Employee/PaymentMethod/shared/BankFormBody/BankFormBody.js +19 -20
- package/dist/components/Employee/PaymentMethod/shared/BankFormBody/BankFormBody.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/shared/SplitPaymentsFormBody/SplitPaymentsFormBody.js +92 -86
- package/dist/components/Employee/PaymentMethod/shared/SplitPaymentsFormBody/SplitPaymentsFormBody.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/shared/useBankForm/fields.js +1 -1
- package/dist/components/Employee/PaymentMethod/shared/useSplitPaymentsForm/splitFieldFactory.js +4 -4
- package/dist/components/Employee/Paystubs/management/PaystubsCard/PaystubsCard.js +65 -64
- package/dist/components/Employee/Paystubs/management/PaystubsCard/PaystubsCard.js.map +1 -1
- package/dist/components/Employee/Profile/management/ProfileCard/ProfileCard.js +7 -8
- package/dist/components/Employee/Profile/management/ProfileCard/ProfileCard.js.map +1 -1
- package/dist/components/Employee/Profile/management/ProfileEditForm.js +7 -7
- package/dist/components/Employee/Profile/onboarding/AdminProfile.js +6 -6
- package/dist/components/Employee/Profile/onboarding/EmployeeProfile.js +6 -6
- package/dist/components/Employee/Profile/shared/useEmployeeDetailsForm/fields.js +8 -8
- package/dist/components/Employee/Profile/shared/useHomeAddressForm/fields.js +5 -5
- package/dist/components/Employee/Profile/shared/useWorkAddressForm/fields.js +4 -4
- package/dist/components/Employee/StateTaxes/management/StateTaxesCard/StateTaxesCard.js +11 -12
- package/dist/components/Employee/StateTaxes/management/StateTaxesCard/StateTaxesCard.js.map +1 -1
- package/dist/components/Employee/StateTaxes/management/StateTaxesEditForm.js +9 -10
- package/dist/components/Employee/StateTaxes/management/StateTaxesEditForm.js.map +1 -1
- package/dist/components/Employee/StateTaxes/onboarding/StateTaxes.js +6 -7
- package/dist/components/Employee/StateTaxes/onboarding/StateTaxes.js.map +1 -1
- package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/fieldComponents.js +8 -8
- package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/useEmployeeStateTaxesForm.js +44 -45
- package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/useEmployeeStateTaxesForm.js.map +1 -1
- package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js +23 -22
- package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js.map +1 -1
- package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.js +27 -27
- package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.js.map +1 -1
- package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlowComponents.js +9 -10
- package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlowComponents.js.map +1 -1
- package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.js +2 -3
- package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.js.map +1 -1
- package/dist/components/Employee/WorkAddress/management/WorkAddressCard/WorkAddressCard.js +16 -17
- package/dist/components/Employee/WorkAddress/management/WorkAddressCard/WorkAddressCard.js.map +1 -1
- package/dist/components/Flow/Flow.js +1 -1
- package/dist/components/Flow/FlowHeader.js +3 -4
- package/dist/components/Flow/FlowHeader.js.map +1 -1
- package/dist/components/InformationRequests/InformationRequestForm/InformationRequestForm.js +8 -9
- package/dist/components/InformationRequests/InformationRequestForm/InformationRequestForm.js.map +1 -1
- package/dist/components/InformationRequests/InformationRequestList/InformationRequestList.js +7 -8
- package/dist/components/InformationRequests/InformationRequestList/InformationRequestList.js.map +1 -1
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/ConfirmWireDetailsForm.js +37 -37
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/ConfirmWireDetailsForm.js.map +1 -1
- package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.js +8 -9
- package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.js.map +1 -1
- package/dist/components/Payroll/GrossUpModal/GrossUpModal.js +7 -8
- package/dist/components/Payroll/GrossUpModal/GrossUpModal.js.map +1 -1
- package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormPresentation.js +10 -12
- package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormPresentation.js.map +1 -1
- package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.js +0 -1
- package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerAlerts.js +7 -8
- package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerAlerts.js.map +1 -1
- package/dist/components/Payroll/PayrollHistory/PayrollHistory.d.ts +3 -3
- package/dist/components/Payroll/PayrollHistory/PayrollHistory.js +54 -50
- package/dist/components/Payroll/PayrollHistory/PayrollHistory.js.map +1 -1
- package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js +80 -69
- package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollList/PayrollList.js +20 -18
- package/dist/components/Payroll/PayrollList/PayrollList.js.map +1 -1
- package/dist/components/Payroll/PayrollList/PayrollListPresentation.js +138 -136
- package/dist/components/Payroll/PayrollList/PayrollListPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollList/PayrollListPresentation.module.scss.js +10 -12
- package/dist/components/Payroll/PayrollList/PayrollListPresentation.module.scss.js.map +1 -1
- package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js +4 -4
- package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchSubmissionBlockerBanner.js +2 -3
- package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchSubmissionBlockerBanner.js.map +1 -1
- package/dist/components/Payroll/RecoveryCases/RecoveryCasesList/RecoveryCasesList.js +2 -3
- package/dist/components/Payroll/RecoveryCases/RecoveryCasesList/RecoveryCasesList.js.map +1 -1
- package/dist/components/Payroll/RecoveryCases/RecoveryCasesResubmit/RecoveryCasesResubmit.js +1 -2
- package/dist/components/Payroll/RecoveryCases/RecoveryCasesResubmit/RecoveryCasesResubmit.js.map +1 -1
- package/dist/components/Payroll/RecoveryCases/useRecoveryCaseErrorCode.js +2 -3
- package/dist/components/Payroll/RecoveryCases/useRecoveryCaseErrorCode.js.map +1 -1
- package/dist/components/Payroll/usePreparedPayrollData.js +4 -3
- package/dist/components/Payroll/usePreparedPayrollData.js.map +1 -1
- package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailPresentation.js +2 -3
- package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailPresentation.js.map +1 -1
- package/dist/components/TimeOff/PolicySettings/PolicySettingsPresentation.js +4 -4
- package/dist/components/TimeOff/PolicyTypeSelector/PolicyTypeSelectorPresentation.js +4 -4
- package/dist/components/TimeOff/TimeOffFlow/TimeOffFlowComponents.js +34 -36
- package/dist/components/TimeOff/TimeOffFlow/TimeOffFlowComponents.js.map +1 -1
- package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormPresentation.js +4 -4
- package/dist/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayout.js +24 -25
- package/dist/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayout.js.map +1 -1
- package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.d.ts +6 -0
- package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js +29 -28
- package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js.map +1 -1
- package/dist/contexts/LocaleProvider/useLocale.d.ts +1 -9
- package/dist/contexts/LocaleProvider/useLocale.js +5 -15
- package/dist/contexts/LocaleProvider/useLocale.js.map +1 -1
- package/dist/contexts/NonceProvider/index.d.ts +1 -0
- package/dist/contexts/NonceProvider/useNonce.d.ts +37 -0
- package/dist/contexts/NonceProvider/useNonce.js +7 -0
- package/dist/contexts/NonceProvider/useNonce.js.map +1 -0
- package/dist/contexts/ThemeProvider/ThemeProvider.js +25 -24
- package/dist/contexts/ThemeProvider/ThemeProvider.js.map +1 -1
- package/dist/contexts/index.d.ts +1 -0
- package/dist/hooks/useDateRangeFilter/useDateRangeFilter.d.ts +12 -7
- package/dist/hooks/useDateRangeFilter/useDateRangeFilter.js +25 -21
- package/dist/hooks/useDateRangeFilter/useDateRangeFilter.js.map +1 -1
- package/dist/i18n/I18n.js +1 -0
- package/dist/i18n/I18n.js.map +1 -1
- package/dist/i18n/en/Company.StateTaxes.json.js +6 -4
- package/dist/i18n/en/Company.StateTaxes.json.js.map +1 -1
- package/dist/i18n/en/Contractor.ContractorList.json.js +14 -12
- package/dist/i18n/en/Contractor.ContractorList.json.js.map +1 -1
- package/dist/i18n/en/Contractor.ManagementContractorList.json.js +60 -0
- package/dist/i18n/en/Contractor.ManagementContractorList.json.js.map +1 -0
- package/dist/i18n/en/Employee.Management.PaymentMethodBankForm.json.js +18 -16
- package/dist/i18n/en/Employee.Management.PaymentMethodBankForm.json.js.map +1 -1
- package/dist/i18n/en/Employee.Management.PaymentMethodSplitForm.json.js +2 -2
- package/dist/i18n/en/Employee.PaymentMethod.json.js +74 -72
- package/dist/i18n/en/Employee.PaymentMethod.json.js.map +1 -1
- package/dist/i18n/en/Employee.SplitPaymentsFormBody.json.js +2 -2
- package/dist/i18n/en/Payroll.PayrollHistory.json.js +8 -8
- package/dist/i18n/en/Payroll.PayrollList.json.js +23 -23
- package/dist/i18n/types.d.ts +193 -11
- package/dist/index.js +15 -13
- package/dist/index.js.map +1 -1
- package/dist/models/external.d.ts +4 -0
- package/dist/partner-hook-utils/form/SDKFormProvider.js +39 -24
- package/dist/partner-hook-utils/form/SDKFormProvider.js.map +1 -1
- package/dist/partner-hook-utils/form/fields/CheckboxHookField.js +12 -15
- package/dist/partner-hook-utils/form/fields/CheckboxHookField.js.map +1 -1
- package/dist/partner-hook-utils/form/fields/NumberInputHookField.js +16 -19
- package/dist/partner-hook-utils/form/fields/NumberInputHookField.js.map +1 -1
- package/dist/partner-hook-utils/form/fields/RadioGroupHookField.js +13 -16
- package/dist/partner-hook-utils/form/fields/RadioGroupHookField.js.map +1 -1
- package/dist/partner-hook-utils/form/fields/SelectHookField.js +12 -15
- package/dist/partner-hook-utils/form/fields/SelectHookField.js.map +1 -1
- package/dist/partner-hook-utils/form/fields/SwitchHookField.js +18 -21
- package/dist/partner-hook-utils/form/fields/SwitchHookField.js.map +1 -1
- package/dist/partner-hook-utils/form/fields/TextInputHookField.js +9 -12
- package/dist/partner-hook-utils/form/fields/TextInputHookField.js.map +1 -1
- package/dist/partner-hook-utils/form/preprocessors.d.ts +2 -2
- package/dist/partner-hook-utils/form/preprocessors.js +8 -7
- package/dist/partner-hook-utils/form/preprocessors.js.map +1 -1
- package/dist/partner-hook-utils/form/preprocessors.test.d.ts +1 -0
- package/dist/shared/constants.d.ts +12 -0
- package/dist/shared/constants.js +23 -17
- package/dist/shared/constants.js.map +1 -1
- package/dist/style.css +1 -1
- package/docs/guides/endpoint-inventory.json +61 -0
- package/package.json +16 -14
- package/dist/components/Company/StateTaxes/StateTaxesForm/applicableIf.js.map +0 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/rhfKey.d.ts +0 -4
- package/dist/components/Company/StateTaxes/StateTaxesForm/rhfKey.js +0 -5
- package/dist/components/Company/StateTaxes/StateTaxesForm/rhfKey.js.map +0 -1
- package/dist/components/Contractor/ContractorList/index.js +0 -141
- package/dist/components/Contractor/ContractorList/index.js.map +0 -1
- package/dist/components/Contractor/ContractorList/useContractorList.d.ts +0 -18
- package/dist/components/Contractor/ContractorList/useContractorList.js +0 -15
- package/dist/components/Contractor/ContractorList/useContractorList.js.map +0 -1
- /package/dist/components/Company/StateTaxes/{StateTaxesForm/applicableIf.test.d.ts → TaxRateManagement/toHistoryRows.test.d.ts} +0 -0
- /package/dist/components/Company/StateTaxes/{StateTaxesForm → shared}/applicableIf.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"I9SignatureForm.js","sources":["../../../../../../../src/components/Employee/Documents/onboarding/DocumentSigner/I9SignatureForm/I9SignatureForm.tsx"],"sourcesContent":["import { useTranslation, Trans } from 'react-i18next'\nimport type { AuthorizationStatus } from '@gusto/embedded-api/models/components/i9authorization'\nimport { useI9VerificationGetAuthorization } from '@gusto/embedded-api/react-query/i9VerificationGetAuthorization'\nimport { useSignEmployeeForm, type PreparerFieldGroup } from '../../../shared/useSignEmployeeForm'\nimport styles from './I9SignatureForm.module.scss'\nimport { BaseComponent, type BaseComponentInterface } from '@/components/Base/Base'\nimport { BaseLayout } from '@/components/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { useI18n } from '@/i18n'\nimport { componentEvents } from '@/shared/constants'\nimport { ActionsLayout, Flex } from '@/components/Common'\nimport { DocumentViewer } from '@/components/Common/DocumentViewer'\nimport { Form } from '@/components/Common/Form'\nimport { SDKFormProvider } from '@/partner-hook-utils/form/SDKFormProvider'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\n/**\n * Props for {@link I9SignatureForm}.\n *\n * @public\n */\nexport interface I9SignatureFormProps extends BaseComponentInterface<'Employee.I9SignatureForm'> {\n /** The associated employee identifier. */\n employeeId: string\n /** The identifier of the I-9 form to sign. */\n formId: string\n}\n\n/**\n * Presents the employee's I-9 form for review and signature.\n *\n * @remarks\n * Renders the I-9 PDF, surfaces the current employment-eligibility status, and\n * collects the employee's signature along with any preparer or translator\n * details. On successful submission the signed form is emitted.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `employee/forms/sign` | Fired after the I-9 is successfully signed | {@link APIModels.Form} |\n * | `employee/employmentEligibility/change` | Fired when the user requests to change their I-9 eligibility status | — |\n * | `cancel` | Fired when the user cancels signing and returns to the document list | — |\n *\n * @param props - See {@link I9SignatureFormProps}.\n * @returns The employee I-9 signature form.\n * @public\n */\nexport function I9SignatureForm(props: I9SignatureFormProps) {\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 } = useBase()\n const Components = useComponentContext()\n\n const hookResult = useSignEmployeeForm({ employeeId, formId })\n\n const { data: i9AuthData } = useI9VerificationGetAuthorization({ employeeId })\n const authorizationStatus = i9AuthData?.i9Authorization?.authorizationStatus\n\n if (hookResult.isLoading) {\n return <BaseLayout isLoading error={hookResult.errorHandling.errors} />\n }\n\n const { form, pdfUrl } = hookResult.data\n const { isPending } = hookResult.status\n const { Fields, preparers } = hookResult.form\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 () => {\n const result = await hookResult.actions.onSubmit()\n if (result) {\n onEvent(componentEvents.EMPLOYEE_SIGN_FORM, result.data)\n }\n }\n\n const preparerFieldGroups = [\n Fields.Preparer1,\n Fields.Preparer2,\n Fields.Preparer3,\n Fields.Preparer4,\n ].filter(Group => Group !== undefined)\n\n return (\n <section className={className}>\n <BaseLayout error={hookResult.errorHandling.errors}>\n <SDKFormProvider formHookResult={hookResult}>\n <Form onSubmit={() => void 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 <Fields.Signature\n label={t('signatureLabel')}\n description={t('signatureDescription')}\n validationMessages={{ REQUIRED: t('signatureError') }}\n />\n <Fields.ConfirmSignature\n label={t('confirmationLabel')}\n validationMessages={{ REQUIRED: t('confirmationError') }}\n />\n </Flex>\n\n {Fields.UsedPreparer && (\n <Flex flexDirection=\"column\" gap={20}>\n <Fields.UsedPreparer\n label={t('preparerQuestion')}\n validationMessages={{ REQUIRED: t('preparerQuestionError') }}\n />\n\n {preparerFieldGroups.map((PreparerFields, index) => {\n const isLast = index === preparerFieldGroups.length - 1\n return (\n <Flex flexDirection=\"column\" gap={0} key={index}>\n <div className={styles.preparerAlert}>\n <Components.Alert\n label={t('preparerNote')}\n status=\"info\"\n disableScrollIntoView\n />\n </div>\n <PreparerSection\n PreparerFields={PreparerFields}\n showAddButton={isLast && (preparers?.canAdd ?? false)}\n showRemoveButton={\n isLast &&\n (preparers?.canRemove ?? false) &&\n preparerFieldGroups.length > 1\n }\n onAdd={() => hookResult.actions.addPreparer?.()}\n onRemove={() => hookResult.actions.removePreparer?.()}\n />\n </Flex>\n )\n })}\n </Flex>\n )}\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 </SDKFormProvider>\n </BaseLayout>\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\ninterface PreparerSectionProps {\n PreparerFields: PreparerFieldGroup\n showRemoveButton: boolean\n showAddButton: boolean\n onAdd: () => void\n onRemove: () => void\n}\n\nfunction PreparerSection({\n PreparerFields,\n showRemoveButton,\n showAddButton,\n onAdd,\n onRemove,\n}: PreparerSectionProps) {\n const { t } = useTranslation('Employee.I9SignatureForm')\n const { t: tCommon } = useTranslation('common')\n const Components = useComponentContext()\n\n return (\n <Flex flexDirection=\"column\" gap={12}>\n <Components.Heading as=\"h3\">{t('preparerSectionTitle')}</Components.Heading>\n\n <PreparerFields.FirstName\n label={t('preparerFirstNameLabel')}\n validationMessages={{ REQUIRED: t('preparerFirstNameError') }}\n />\n <PreparerFields.LastName\n label={t('preparerLastNameLabel')}\n validationMessages={{ REQUIRED: t('preparerLastNameError') }}\n />\n <PreparerFields.Street1\n label={t('preparerStreet1Label')}\n validationMessages={{ REQUIRED: t('preparerStreet1Error') }}\n />\n <PreparerFields.Street2 label={t('preparerStreet2Label')} />\n <PreparerFields.City\n label={t('preparerCityLabel')}\n validationMessages={{ REQUIRED: t('preparerCityError') }}\n />\n <PreparerFields.State\n label={t('preparerStateLabel')}\n placeholder={t('preparerStatePlaceholder')}\n validationMessages={{ REQUIRED: t('preparerStateError') }}\n getOptionLabel={(abbr: string) => tCommon(`statesHash.${abbr}`, { defaultValue: abbr })}\n />\n <PreparerFields.Zip\n label={t('preparerZipLabel')}\n validationMessages={{ REQUIRED: t('preparerZipError') }}\n />\n <PreparerFields.Signature\n label={t('preparerSignatureLabel')}\n description={t('preparerSignatureDescription')}\n validationMessages={{ REQUIRED: t('preparerSignatureError') }}\n />\n <PreparerFields.ConfirmSignature\n label={t('preparerConfirmationLabel')}\n validationMessages={{ REQUIRED: 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"],"names":["I9SignatureForm","props","jsx","BaseComponent","Root","employeeId","formId","className","useI18n","useTranslation","onEvent","useBase","Components","useComponentContext","hookResult","useSignEmployeeForm","i9AuthData","useI9VerificationGetAuthorization","authorizationStatus","BaseLayout","form","pdfUrl","isPending","Fields","preparers","handleBack","componentEvents","handleChangeEligibility","handleSubmit","result","preparerFieldGroups","Group","SDKFormProvider","Form","jsxs","Flex","Trans","EligibilityStatusAlert","DocumentViewer","PreparerFields","index","isLast","styles","PreparerSection","ActionsLayout","onChangeStatus","t","alertLabelKeys","alertDescriptionKeys","showRemoveButton","showAddButton","onAdd","onRemove","tCommon","abbr"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"I9SignatureForm.js","sources":["../../../../../../../src/components/Employee/Documents/onboarding/DocumentSigner/I9SignatureForm/I9SignatureForm.tsx"],"sourcesContent":["import { useTranslation, Trans } from 'react-i18next'\nimport type { AuthorizationStatus } from '@gusto/embedded-api/models/components/i9authorization'\nimport { useI9VerificationGetAuthorization } from '@gusto/embedded-api/react-query/i9VerificationGetAuthorization'\nimport { useSignEmployeeForm, type PreparerFieldGroup } from '../../../shared/useSignEmployeeForm'\nimport styles from './I9SignatureForm.module.scss'\nimport { BaseComponent, type BaseComponentInterface } from '@/components/Base/Base'\nimport { BaseLayout } from '@/components/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { useI18n } from '@/i18n'\nimport { componentEvents } from '@/shared/constants'\nimport { ActionsLayout, Flex } from '@/components/Common'\nimport { DocumentViewer } from '@/components/Common/DocumentViewer'\nimport { Form } from '@/components/Common/Form'\nimport { SDKFormProvider } from '@/partner-hook-utils/form/SDKFormProvider'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\n/**\n * Props for {@link I9SignatureForm}.\n *\n * @public\n */\nexport interface I9SignatureFormProps extends BaseComponentInterface<'Employee.I9SignatureForm'> {\n /** The associated employee identifier. */\n employeeId: string\n /** The identifier of the I-9 form to sign. */\n formId: string\n}\n\n/**\n * Presents the employee's I-9 form for review and signature.\n *\n * @remarks\n * Renders the I-9 PDF, surfaces the current employment-eligibility status, and\n * collects the employee's signature along with any preparer or translator\n * details. On successful submission the signed form is emitted.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `employee/forms/sign` | Fired after the I-9 is successfully signed | {@link APIModels.Form} |\n * | `employee/employmentEligibility/change` | Fired when the user requests to change their I-9 eligibility status | — |\n * | `cancel` | Fired when the user cancels signing and returns to the document list | — |\n *\n * @param props - See {@link I9SignatureFormProps}.\n * @returns The employee I-9 signature form.\n * @public\n */\nexport function I9SignatureForm(props: I9SignatureFormProps) {\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 } = useBase()\n const Components = useComponentContext()\n\n const hookResult = useSignEmployeeForm({ employeeId, formId })\n\n const { data: i9AuthData } = useI9VerificationGetAuthorization({ employeeId })\n const authorizationStatus = i9AuthData?.i9Authorization?.authorizationStatus\n\n if (hookResult.isLoading) {\n return <BaseLayout isLoading error={hookResult.errorHandling.errors} />\n }\n\n const { form, pdfUrl } = hookResult.data\n const { isPending } = hookResult.status\n const { Fields, preparers } = hookResult.form\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 () => {\n const result = await hookResult.actions.onSubmit()\n if (result) {\n onEvent(componentEvents.EMPLOYEE_SIGN_FORM, result.data)\n }\n }\n\n const preparerFieldGroups = [\n Fields.Preparer1,\n Fields.Preparer2,\n Fields.Preparer3,\n Fields.Preparer4,\n ].filter(Group => Group !== undefined)\n\n return (\n <section className={className}>\n <BaseLayout error={hookResult.errorHandling.errors}>\n <SDKFormProvider formHookResult={hookResult}>\n <Form onSubmit={() => void 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 <Fields.Signature\n label={t('signatureLabel')}\n description={t('signatureDescription')}\n validationMessages={{ REQUIRED: t('signatureError') }}\n />\n <Fields.ConfirmSignature\n label={t('confirmationLabel')}\n validationMessages={{ REQUIRED: t('confirmationError') }}\n />\n </Flex>\n\n {Fields.UsedPreparer && (\n <Flex flexDirection=\"column\" gap={20}>\n <Fields.UsedPreparer\n label={t('preparerQuestion')}\n validationMessages={{ REQUIRED: t('preparerQuestionError') }}\n />\n\n {preparerFieldGroups.map((PreparerFields, index) => {\n const isLast = index === preparerFieldGroups.length - 1\n return (\n <Flex flexDirection=\"column\" gap={0} key={index}>\n <div className={styles.preparerAlert}>\n <Components.Alert\n label={t('preparerNote')}\n status=\"info\"\n disableScrollIntoView\n />\n </div>\n <PreparerSection\n PreparerFields={PreparerFields}\n showAddButton={isLast && (preparers?.canAdd ?? false)}\n showRemoveButton={\n isLast &&\n (preparers?.canRemove ?? false) &&\n preparerFieldGroups.length > 1\n }\n onAdd={() => hookResult.actions.addPreparer?.()}\n onRemove={() => hookResult.actions.removePreparer?.()}\n />\n </Flex>\n )\n })}\n </Flex>\n )}\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 </SDKFormProvider>\n </BaseLayout>\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\ninterface PreparerSectionProps {\n PreparerFields: PreparerFieldGroup\n showRemoveButton: boolean\n showAddButton: boolean\n onAdd: () => void\n onRemove: () => void\n}\n\nfunction PreparerSection({\n PreparerFields,\n showRemoveButton,\n showAddButton,\n onAdd,\n onRemove,\n}: PreparerSectionProps) {\n const { t } = useTranslation('Employee.I9SignatureForm')\n const { t: tCommon } = useTranslation('common')\n const Components = useComponentContext()\n\n return (\n <Flex flexDirection=\"column\" gap={12}>\n <Components.Heading as=\"h3\">{t('preparerSectionTitle')}</Components.Heading>\n\n <PreparerFields.FirstName\n label={t('preparerFirstNameLabel')}\n validationMessages={{ REQUIRED: t('preparerFirstNameError') }}\n />\n <PreparerFields.LastName\n label={t('preparerLastNameLabel')}\n validationMessages={{ REQUIRED: t('preparerLastNameError') }}\n />\n <PreparerFields.Street1\n label={t('preparerStreet1Label')}\n validationMessages={{ REQUIRED: t('preparerStreet1Error') }}\n />\n <PreparerFields.Street2 label={t('preparerStreet2Label')} />\n <PreparerFields.City\n label={t('preparerCityLabel')}\n validationMessages={{ REQUIRED: t('preparerCityError') }}\n />\n <PreparerFields.State\n label={t('preparerStateLabel')}\n placeholder={t('preparerStatePlaceholder')}\n validationMessages={{ REQUIRED: t('preparerStateError') }}\n getOptionLabel={(abbr: string) => tCommon(`statesHash.${abbr}`, { defaultValue: abbr })}\n />\n <PreparerFields.Zip\n label={t('preparerZipLabel')}\n validationMessages={{ REQUIRED: t('preparerZipError') }}\n />\n <PreparerFields.Signature\n label={t('preparerSignatureLabel')}\n description={t('preparerSignatureDescription')}\n validationMessages={{ REQUIRED: t('preparerSignatureError') }}\n />\n <PreparerFields.ConfirmSignature\n label={t('preparerConfirmationLabel')}\n validationMessages={{ REQUIRED: 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"],"names":["I9SignatureForm","props","jsx","BaseComponent","Root","employeeId","formId","className","useI18n","useTranslation","onEvent","useBase","Components","useComponentContext","hookResult","useSignEmployeeForm","i9AuthData","useI9VerificationGetAuthorization","authorizationStatus","BaseLayout","form","pdfUrl","isPending","Fields","preparers","handleBack","componentEvents","handleChangeEligibility","handleSubmit","result","preparerFieldGroups","Group","SDKFormProvider","Form","jsxs","Flex","Trans","EligibilityStatusAlert","DocumentViewer","PreparerFields","index","isLast","styles","PreparerSection","ActionsLayout","onChangeStatus","t","alertLabelKeys","alertDescriptionKeys","showRemoveButton","showAddButton","onAdd","onRemove","tCommon","abbr"],"mappings":"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"}
|
|
@@ -4,14 +4,13 @@ import { useForm as I, FormProvider as L } from "react-hook-form";
|
|
|
4
4
|
import { zodResolver as v } from "@hookform/resolvers/zod";
|
|
5
5
|
import { z as u } from "zod";
|
|
6
6
|
import { Flex as o, FlexItem as t } from "../../../../Common/Flex/Flex.js";
|
|
7
|
-
import {
|
|
8
|
-
import "
|
|
9
|
-
import { Form as w } from "../../../../Common/Form/Form.js";
|
|
7
|
+
import { Form as E } from "../../../../Common/Form/Form.js";
|
|
8
|
+
import { useComponentContext as w } from "../../../../../contexts/ComponentAdapter/useComponentContext.js";
|
|
10
9
|
import { useI18n as C } from "../../../../../i18n/I18n.js";
|
|
11
10
|
import { CheckboxField as F } from "../../../../Common/Fields/CheckboxField/CheckboxField.js";
|
|
12
11
|
const g = "gusto-sdk-employee-documents-form", T = u.object({
|
|
13
12
|
includeI9: u.boolean()
|
|
14
|
-
}),
|
|
13
|
+
}), V = ({
|
|
15
14
|
isEmployeeSelfOnboarding: a,
|
|
16
15
|
currentI9Status: h,
|
|
17
16
|
onSubmit: f,
|
|
@@ -19,14 +18,14 @@ const g = "gusto-sdk-employee-documents-form", T = u.object({
|
|
|
19
18
|
isPending: O
|
|
20
19
|
}) => {
|
|
21
20
|
C("Employee.EmployeeDocuments");
|
|
22
|
-
const { t: e } = y("Employee.EmployeeDocuments"), { Alert: d, Heading: l, Text: i, Button: s, Link: m, UnorderedList: D } =
|
|
21
|
+
const { t: e } = y("Employee.EmployeeDocuments"), { Alert: d, Heading: l, Text: i, Button: s, Link: m, UnorderedList: D } = w(), c = I({
|
|
23
22
|
resolver: v(T),
|
|
24
23
|
defaultValues: {
|
|
25
24
|
includeI9: h
|
|
26
25
|
}
|
|
27
26
|
}), x = c.watch("includeI9");
|
|
28
27
|
return /* @__PURE__ */ n(S, { children: /* @__PURE__ */ r(o, { flexDirection: "column", gap: 16, children: [
|
|
29
|
-
a ? /* @__PURE__ */ n(L, { ...c, children: /* @__PURE__ */ n(
|
|
28
|
+
a ? /* @__PURE__ */ n(L, { ...c, children: /* @__PURE__ */ n(E, { id: g, onSubmit: c.handleSubmit(f), children: /* @__PURE__ */ r(o, { flexDirection: "column", gap: 16, children: [
|
|
30
29
|
/* @__PURE__ */ r(o, { flexDirection: "column", gap: 4, children: [
|
|
31
30
|
/* @__PURE__ */ n(l, { as: "h2", children: e("selfOnboarding.title") }),
|
|
32
31
|
/* @__PURE__ */ n(i, { variant: "supporting", children: e("selfOnboarding.description") })
|
|
@@ -111,6 +110,6 @@ const g = "gusto-sdk-employee-documents-form", T = u.object({
|
|
|
111
110
|
] }) });
|
|
112
111
|
};
|
|
113
112
|
export {
|
|
114
|
-
|
|
113
|
+
V as EmployeeDocumentsPresentation
|
|
115
114
|
};
|
|
116
115
|
//# sourceMappingURL=EmployeeDocumentsPresentation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EmployeeDocumentsPresentation.js","sources":["../../../../../../src/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocumentsPresentation.tsx"],"sourcesContent":["import { Trans, useTranslation } from 'react-i18next'\nimport { FormProvider, useForm } from 'react-hook-form'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { z } from 'zod'\nimport { Flex, CheckboxField, FlexItem } from '@/components/Common'\nimport { Form } from '@/components/Common/Form'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useI18n } from '@/i18n'\n\nconst EMPLOYEE_DOCUMENTS_FORM_ID = 'gusto-sdk-employee-documents-form'\n\nconst EmployeeDocumentsSchema = z.object({\n includeI9: z.boolean(),\n})\n\n/** @internal */\nexport type EmployeeDocumentsFormValues = z.infer<typeof EmployeeDocumentsSchema>\n\n/** @internal */\nexport interface EmployeeDocumentsPresentationProps {\n isEmployeeSelfOnboarding: boolean\n currentI9Status: boolean\n onSubmit: (formData: EmployeeDocumentsFormValues) => Promise<void>\n onDone: () => void\n isPending: boolean\n}\n\n/** @internal */\nexport const EmployeeDocumentsPresentation = ({\n isEmployeeSelfOnboarding,\n currentI9Status,\n onSubmit,\n onDone,\n isPending,\n}: EmployeeDocumentsPresentationProps) => {\n useI18n('Employee.EmployeeDocuments')\n const { t } = useTranslation('Employee.EmployeeDocuments')\n const { Alert, Heading, Text, Button, Link, UnorderedList } = useComponentContext()\n\n const formMethods = useForm<EmployeeDocumentsFormValues>({\n resolver: zodResolver(EmployeeDocumentsSchema),\n defaultValues: {\n includeI9: currentI9Status,\n },\n })\n\n const includeI9 = formMethods.watch('includeI9')\n\n const renderSelfOnboarding = () => (\n <FormProvider {...formMethods}>\n <Form id={EMPLOYEE_DOCUMENTS_FORM_ID} onSubmit={formMethods.handleSubmit(onSubmit)}>\n <Flex flexDirection=\"column\" gap={16}>\n <Flex flexDirection=\"column\" gap={4}>\n <Heading as=\"h2\">{t('selfOnboarding.title')}</Heading>\n <Text variant=\"supporting\">{t('selfOnboarding.description')}</Text>\n </Flex>\n\n <Heading as=\"h3\">{t('selfOnboarding.documentsIncludedLabel')}</Heading>\n <FlexItem>\n <Text weight=\"medium\">{t('selfOnboarding.taxWithholdingLabel')}</Text>\n <Text variant=\"supporting\">{t('selfOnboarding.taxWithholdingDescription')}</Text>\n </FlexItem>\n <FlexItem>\n <Text weight=\"medium\">{t('selfOnboarding.directDepositLabel')}</Text>\n <Text variant=\"supporting\">{t('selfOnboarding.directDepositDescription')}</Text>\n </FlexItem>\n\n <Heading as=\"h3\">{t('selfOnboarding.includeI9Heading')}</Heading>\n <CheckboxField\n name=\"includeI9\"\n label={t('selfOnboarding.includeI9Label')}\n description={t('selfOnboarding.includeI9Description')}\n />\n\n {includeI9 ? (\n <Alert status=\"warning\" label={t('selfOnboarding.alerts.includedTitle')}>\n <UnorderedList\n items={[\n <Trans\n key=\"included-description-1\"\n i18nKey={'selfOnboarding.alerts.includedDescription'}\n t={t}\n components={{\n Link: <Link />,\n }}\n />,\n <span key=\"included-description-2\">\n {t('selfOnboarding.alerts.includedDescription2')}\n </span>,\n ]}\n />\n </Alert>\n ) : (\n <Alert status=\"info\" label={t('selfOnboarding.alerts.notIncludedTitle')}>\n <Trans\n i18nKey={'selfOnboarding.alerts.notIncludedDescription'}\n t={t}\n components={{\n Link: <Link />,\n }}\n />\n </Alert>\n )}\n </Flex>\n </Form>\n </FormProvider>\n )\n\n const renderNotSelfOnboarding = () => (\n <Flex flexDirection=\"column\" gap={32}>\n <Flex flexDirection=\"column\" gap={4}>\n <Heading as=\"h2\">{t('notSelfOnboarding.title')}</Heading>\n <Text variant=\"supporting\">{t('notSelfOnboarding.description')}</Text>\n </Flex>\n <Flex flexDirection=\"column\" gap={20}>\n <FlexItem>\n <Text weight=\"medium\">{t('notSelfOnboarding.employmentEligibilityLabel')}</Text>\n <Text variant=\"supporting\">\n {t('notSelfOnboarding.employmentEligibilityDescription')}\n </Text>\n </FlexItem>\n\n <FlexItem>\n <Text weight=\"medium\">{t('notSelfOnboarding.taxWithholdingLabel')}</Text>\n <Text variant=\"supporting\">{t('notSelfOnboarding.taxWithholdingDescription')}</Text>\n </FlexItem>\n <FlexItem>\n <Text weight=\"medium\">{t('notSelfOnboarding.directDepositLabel')}</Text>\n <Text variant=\"supporting\">{t('notSelfOnboarding.directDepositDescription')}</Text>\n </FlexItem>\n </Flex>\n <Alert status=\"info\" label={t('notSelfOnboarding.alertTitle')} disableScrollIntoView></Alert>\n </Flex>\n )\n\n return (\n <>\n <Flex flexDirection=\"column\" gap={16}>\n {isEmployeeSelfOnboarding ? renderSelfOnboarding() : renderNotSelfOnboarding()}\n\n <Flex justifyContent=\"flex-end\" gap={12}>\n {isEmployeeSelfOnboarding ? (\n <Button\n variant=\"primary\"\n type=\"submit\"\n form={EMPLOYEE_DOCUMENTS_FORM_ID}\n isLoading={isPending}\n >\n {t('continueCta')}\n </Button>\n ) : (\n <Button variant=\"primary\" onClick={onDone}>\n {t('continueCta')}\n </Button>\n )}\n </Flex>\n </Flex>\n </>\n )\n}\n"],"names":["EMPLOYEE_DOCUMENTS_FORM_ID","EmployeeDocumentsSchema","z","EmployeeDocumentsPresentation","isEmployeeSelfOnboarding","currentI9Status","onSubmit","onDone","isPending","useI18n","t","useTranslation","Alert","Heading","Text","Button","Link","UnorderedList","useComponentContext","formMethods","useForm","zodResolver","includeI9","jsxs","Flex","jsx","FormProvider","Form","FlexItem","CheckboxField","Trans"],"mappings":"
|
|
1
|
+
{"version":3,"file":"EmployeeDocumentsPresentation.js","sources":["../../../../../../src/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocumentsPresentation.tsx"],"sourcesContent":["import { Trans, useTranslation } from 'react-i18next'\nimport { FormProvider, useForm } from 'react-hook-form'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { z } from 'zod'\nimport { Flex, CheckboxField, FlexItem } from '@/components/Common'\nimport { Form } from '@/components/Common/Form'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useI18n } from '@/i18n'\n\nconst EMPLOYEE_DOCUMENTS_FORM_ID = 'gusto-sdk-employee-documents-form'\n\nconst EmployeeDocumentsSchema = z.object({\n includeI9: z.boolean(),\n})\n\n/** @internal */\nexport type EmployeeDocumentsFormValues = z.infer<typeof EmployeeDocumentsSchema>\n\n/** @internal */\nexport interface EmployeeDocumentsPresentationProps {\n isEmployeeSelfOnboarding: boolean\n currentI9Status: boolean\n onSubmit: (formData: EmployeeDocumentsFormValues) => Promise<void>\n onDone: () => void\n isPending: boolean\n}\n\n/** @internal */\nexport const EmployeeDocumentsPresentation = ({\n isEmployeeSelfOnboarding,\n currentI9Status,\n onSubmit,\n onDone,\n isPending,\n}: EmployeeDocumentsPresentationProps) => {\n useI18n('Employee.EmployeeDocuments')\n const { t } = useTranslation('Employee.EmployeeDocuments')\n const { Alert, Heading, Text, Button, Link, UnorderedList } = useComponentContext()\n\n const formMethods = useForm<EmployeeDocumentsFormValues>({\n resolver: zodResolver(EmployeeDocumentsSchema),\n defaultValues: {\n includeI9: currentI9Status,\n },\n })\n\n const includeI9 = formMethods.watch('includeI9')\n\n const renderSelfOnboarding = () => (\n <FormProvider {...formMethods}>\n <Form id={EMPLOYEE_DOCUMENTS_FORM_ID} onSubmit={formMethods.handleSubmit(onSubmit)}>\n <Flex flexDirection=\"column\" gap={16}>\n <Flex flexDirection=\"column\" gap={4}>\n <Heading as=\"h2\">{t('selfOnboarding.title')}</Heading>\n <Text variant=\"supporting\">{t('selfOnboarding.description')}</Text>\n </Flex>\n\n <Heading as=\"h3\">{t('selfOnboarding.documentsIncludedLabel')}</Heading>\n <FlexItem>\n <Text weight=\"medium\">{t('selfOnboarding.taxWithholdingLabel')}</Text>\n <Text variant=\"supporting\">{t('selfOnboarding.taxWithholdingDescription')}</Text>\n </FlexItem>\n <FlexItem>\n <Text weight=\"medium\">{t('selfOnboarding.directDepositLabel')}</Text>\n <Text variant=\"supporting\">{t('selfOnboarding.directDepositDescription')}</Text>\n </FlexItem>\n\n <Heading as=\"h3\">{t('selfOnboarding.includeI9Heading')}</Heading>\n <CheckboxField\n name=\"includeI9\"\n label={t('selfOnboarding.includeI9Label')}\n description={t('selfOnboarding.includeI9Description')}\n />\n\n {includeI9 ? (\n <Alert status=\"warning\" label={t('selfOnboarding.alerts.includedTitle')}>\n <UnorderedList\n items={[\n <Trans\n key=\"included-description-1\"\n i18nKey={'selfOnboarding.alerts.includedDescription'}\n t={t}\n components={{\n Link: <Link />,\n }}\n />,\n <span key=\"included-description-2\">\n {t('selfOnboarding.alerts.includedDescription2')}\n </span>,\n ]}\n />\n </Alert>\n ) : (\n <Alert status=\"info\" label={t('selfOnboarding.alerts.notIncludedTitle')}>\n <Trans\n i18nKey={'selfOnboarding.alerts.notIncludedDescription'}\n t={t}\n components={{\n Link: <Link />,\n }}\n />\n </Alert>\n )}\n </Flex>\n </Form>\n </FormProvider>\n )\n\n const renderNotSelfOnboarding = () => (\n <Flex flexDirection=\"column\" gap={32}>\n <Flex flexDirection=\"column\" gap={4}>\n <Heading as=\"h2\">{t('notSelfOnboarding.title')}</Heading>\n <Text variant=\"supporting\">{t('notSelfOnboarding.description')}</Text>\n </Flex>\n <Flex flexDirection=\"column\" gap={20}>\n <FlexItem>\n <Text weight=\"medium\">{t('notSelfOnboarding.employmentEligibilityLabel')}</Text>\n <Text variant=\"supporting\">\n {t('notSelfOnboarding.employmentEligibilityDescription')}\n </Text>\n </FlexItem>\n\n <FlexItem>\n <Text weight=\"medium\">{t('notSelfOnboarding.taxWithholdingLabel')}</Text>\n <Text variant=\"supporting\">{t('notSelfOnboarding.taxWithholdingDescription')}</Text>\n </FlexItem>\n <FlexItem>\n <Text weight=\"medium\">{t('notSelfOnboarding.directDepositLabel')}</Text>\n <Text variant=\"supporting\">{t('notSelfOnboarding.directDepositDescription')}</Text>\n </FlexItem>\n </Flex>\n <Alert status=\"info\" label={t('notSelfOnboarding.alertTitle')} disableScrollIntoView></Alert>\n </Flex>\n )\n\n return (\n <>\n <Flex flexDirection=\"column\" gap={16}>\n {isEmployeeSelfOnboarding ? renderSelfOnboarding() : renderNotSelfOnboarding()}\n\n <Flex justifyContent=\"flex-end\" gap={12}>\n {isEmployeeSelfOnboarding ? (\n <Button\n variant=\"primary\"\n type=\"submit\"\n form={EMPLOYEE_DOCUMENTS_FORM_ID}\n isLoading={isPending}\n >\n {t('continueCta')}\n </Button>\n ) : (\n <Button variant=\"primary\" onClick={onDone}>\n {t('continueCta')}\n </Button>\n )}\n </Flex>\n </Flex>\n </>\n )\n}\n"],"names":["EMPLOYEE_DOCUMENTS_FORM_ID","EmployeeDocumentsSchema","z","EmployeeDocumentsPresentation","isEmployeeSelfOnboarding","currentI9Status","onSubmit","onDone","isPending","useI18n","t","useTranslation","Alert","Heading","Text","Button","Link","UnorderedList","useComponentContext","formMethods","useForm","zodResolver","includeI9","jsxs","Flex","jsx","FormProvider","Form","FlexItem","CheckboxField","Trans"],"mappings":"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"}
|
|
@@ -5,19 +5,18 @@ import { BaseComponent as L, BaseLayout as d } from "../../../../Base/Base.js";
|
|
|
5
5
|
import { useBase as v } from "../../../../Base/useBase.js";
|
|
6
6
|
import { useI18n as D } from "../../../../../i18n/I18n.js";
|
|
7
7
|
import { componentEvents as u } from "../../../../../shared/constants.js";
|
|
8
|
-
import { Flex as
|
|
8
|
+
import { Flex as f } from "../../../../Common/Flex/Flex.js";
|
|
9
9
|
import { ActionsLayout as w } from "../../../../Common/ActionsLayout/ActionsLayout.js";
|
|
10
|
-
import {
|
|
11
|
-
import "
|
|
12
|
-
import {
|
|
13
|
-
import { SDKFormProvider as x } from "../../../../../partner-hook-utils/form/SDKFormProvider.js";
|
|
10
|
+
import { Form as y } from "../../../../Common/Form/Form.js";
|
|
11
|
+
import { SDKFormProvider as k } from "../../../../../partner-hook-utils/form/SDKFormProvider.js";
|
|
12
|
+
import { useComponentContext as x } from "../../../../../contexts/ComponentAdapter/useComponentContext.js";
|
|
14
13
|
import { DocumentViewer as R } from "../../../../Common/DocumentViewer/DocumentViewer.js";
|
|
15
|
-
function
|
|
14
|
+
function G(t) {
|
|
16
15
|
return /* @__PURE__ */ o(L, { ...t, children: /* @__PURE__ */ o(B, { ...t }) });
|
|
17
16
|
}
|
|
18
|
-
function B({ employeeId: t, formId:
|
|
17
|
+
function B({ employeeId: t, formId: p, className: g }) {
|
|
19
18
|
D("Employee.DocumentSigner");
|
|
20
|
-
const { t: r } = S("Employee.DocumentSigner"), { onEvent: m } = v(), n =
|
|
19
|
+
const { t: r } = S("Employee.DocumentSigner"), { onEvent: m } = v(), n = x(), e = F({ employeeId: t, formId: p });
|
|
21
20
|
if (e.isLoading)
|
|
22
21
|
return /* @__PURE__ */ o(d, { isLoading: !0, error: e.errorHandling.errors });
|
|
23
22
|
const { form: i, pdfUrl: a } = e.data, { isPending: h } = e.status, { Fields: l } = e.form, E = () => {
|
|
@@ -26,9 +25,9 @@ function B({ employeeId: t, formId: f, className: g }) {
|
|
|
26
25
|
const c = await e.actions.onSubmit();
|
|
27
26
|
c && m(u.EMPLOYEE_SIGN_FORM, c.data);
|
|
28
27
|
};
|
|
29
|
-
return /* @__PURE__ */ o("section", { className: g, children: /* @__PURE__ */ o(d, { error: e.errorHandling.errors, children: /* @__PURE__ */ o(
|
|
28
|
+
return /* @__PURE__ */ o("section", { className: g, children: /* @__PURE__ */ o(d, { error: e.errorHandling.errors, children: /* @__PURE__ */ o(k, { formHookResult: e, children: /* @__PURE__ */ o(y, { onSubmit: () => {
|
|
30
29
|
b();
|
|
31
|
-
}, children: /* @__PURE__ */ s(
|
|
30
|
+
}, children: /* @__PURE__ */ s(f, { flexDirection: "column", children: [
|
|
32
31
|
/* @__PURE__ */ s("section", { children: [
|
|
33
32
|
/* @__PURE__ */ o(n.Heading, { as: "h2", children: r("signatureFormTitle", { formTitle: i.title }) }),
|
|
34
33
|
a && /* @__PURE__ */ o(n.Text, { children: /* @__PURE__ */ o(
|
|
@@ -60,7 +59,7 @@ function B({ employeeId: t, formId: f, className: g }) {
|
|
|
60
59
|
viewDocumentLabel: r("viewDocumentCta")
|
|
61
60
|
}
|
|
62
61
|
),
|
|
63
|
-
/* @__PURE__ */ s(
|
|
62
|
+
/* @__PURE__ */ s(f, { flexDirection: "column", gap: 12, children: [
|
|
64
63
|
/* @__PURE__ */ o(
|
|
65
64
|
l.Signature,
|
|
66
65
|
{
|
|
@@ -84,6 +83,6 @@ function B({ employeeId: t, formId: f, className: g }) {
|
|
|
84
83
|
] }) }) }) }) });
|
|
85
84
|
}
|
|
86
85
|
export {
|
|
87
|
-
|
|
86
|
+
G as SignatureForm
|
|
88
87
|
};
|
|
89
88
|
//# sourceMappingURL=SignatureForm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SignatureForm.js","sources":["../../../../../../src/components/Employee/Documents/shared/SignatureForm/SignatureForm.tsx"],"sourcesContent":["import { useTranslation, Trans } from 'react-i18next'\nimport { useSignEmployeeForm } from '../useSignEmployeeForm'\nimport { BaseComponent, type BaseComponentInterface } from '@/components/Base/Base'\nimport { BaseLayout } from '@/components/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { useI18n } from '@/i18n'\nimport { componentEvents } from '@/shared/constants'\nimport { ActionsLayout, Flex } from '@/components/Common'\nimport { Form } from '@/components/Common/Form'\nimport { DocumentViewer } from '@/components/Common/DocumentViewer'\nimport { SDKFormProvider } from '@/partner-hook-utils/form/SDKFormProvider'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\n/**\n * Props for {@link SignatureForm}.\n *\n * @public\n */\nexport interface SignatureFormProps extends BaseComponentInterface<'Employee.DocumentSigner'> {\n /** The associated employee identifier. */\n employeeId: string\n /** The identifier of the form to sign. */\n formId: string\n}\n\n/**\n * Presents a single employee document for review and signature.\n *\n * @remarks\n * Renders the form's PDF and collects the employee's signature. On successful\n * submission the signed form is emitted; cancelling returns to the document list.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `employee/forms/sign` | Fired after the form is successfully signed | {@link APIModels.Form} |\n * | `cancel` | Fired when the user cancels signing and returns to the document list | — |\n *\n * @param props - See {@link SignatureFormProps}.\n * @returns The employee signature form.\n * @public\n */\nexport function SignatureForm(props: SignatureFormProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props} />\n </BaseComponent>\n )\n}\n\nfunction Root({ employeeId, formId, className }: SignatureFormProps) {\n useI18n('Employee.DocumentSigner')\n const { t } = useTranslation('Employee.DocumentSigner')\n const { onEvent } = useBase()\n const Components = useComponentContext()\n\n const hookResult = useSignEmployeeForm({ employeeId, formId })\n\n if (hookResult.isLoading) {\n return <BaseLayout isLoading error={hookResult.errorHandling.errors} />\n }\n\n const { form, pdfUrl } = hookResult.data\n const { isPending } = hookResult.status\n const { Fields } = hookResult.form\n\n const handleBack = () => {\n onEvent(componentEvents.CANCEL)\n }\n\n const handleSubmit = async () => {\n const result = await hookResult.actions.onSubmit()\n if (result) {\n onEvent(componentEvents.EMPLOYEE_SIGN_FORM, result.data)\n }\n }\n\n return (\n <section className={className}>\n <BaseLayout error={hookResult.errorHandling.errors}>\n <SDKFormProvider formHookResult={hookResult}>\n <Form onSubmit={() => void handleSubmit()}>\n <Flex flexDirection=\"column\">\n <section>\n <Components.Heading as=\"h2\">\n {t('signatureFormTitle', { formTitle: form.title })}\n </Components.Heading>\n {pdfUrl && (\n <Components.Text>\n <Trans\n t={t}\n i18nKey=\"downloadPrompt\"\n values={{ description: form.description }}\n components={{\n downloadLink: (\n <Components.Link\n href={pdfUrl}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n download={`${form.title || 'form'}.pdf`}\n />\n ),\n }}\n />\n </Components.Text>\n )}\n </section>\n\n <DocumentViewer\n url={pdfUrl}\n title={form.title}\n downloadInstructions={t('downloadAndReviewInstructions')}\n viewDocumentLabel={t('viewDocumentCta')}\n />\n\n <Flex flexDirection=\"column\" gap={12}>\n <Fields.Signature\n label={t('signatureFieldLabel')}\n description={t('signatureFieldDescription')}\n validationMessages={{ REQUIRED: t('signatureFieldError') }}\n />\n <Fields.ConfirmSignature\n label={t('confirmSignatureCheckboxLabel')}\n validationMessages={{ REQUIRED: t('confirmSignatureError') }}\n />\n </Flex>\n\n <ActionsLayout>\n <Components.Button variant=\"secondary\" type=\"button\" onClick={handleBack}>\n {t('backCta')}\n </Components.Button>\n <Components.Button type=\"submit\" isLoading={isPending}>\n {t('signFormCta')}\n </Components.Button>\n </ActionsLayout>\n </Flex>\n </Form>\n </SDKFormProvider>\n </BaseLayout>\n </section>\n )\n}\n"],"names":["SignatureForm","props","jsx","BaseComponent","Root","employeeId","formId","className","useI18n","t","useTranslation","onEvent","useBase","Components","useComponentContext","hookResult","useSignEmployeeForm","BaseLayout","form","pdfUrl","isPending","Fields","handleBack","componentEvents","handleSubmit","result","SDKFormProvider","Form","jsxs","Flex","Trans","DocumentViewer","ActionsLayout"],"mappings":"
|
|
1
|
+
{"version":3,"file":"SignatureForm.js","sources":["../../../../../../src/components/Employee/Documents/shared/SignatureForm/SignatureForm.tsx"],"sourcesContent":["import { useTranslation, Trans } from 'react-i18next'\nimport { useSignEmployeeForm } from '../useSignEmployeeForm'\nimport { BaseComponent, type BaseComponentInterface } from '@/components/Base/Base'\nimport { BaseLayout } from '@/components/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { useI18n } from '@/i18n'\nimport { componentEvents } from '@/shared/constants'\nimport { ActionsLayout, Flex } from '@/components/Common'\nimport { Form } from '@/components/Common/Form'\nimport { DocumentViewer } from '@/components/Common/DocumentViewer'\nimport { SDKFormProvider } from '@/partner-hook-utils/form/SDKFormProvider'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\n/**\n * Props for {@link SignatureForm}.\n *\n * @public\n */\nexport interface SignatureFormProps extends BaseComponentInterface<'Employee.DocumentSigner'> {\n /** The associated employee identifier. */\n employeeId: string\n /** The identifier of the form to sign. */\n formId: string\n}\n\n/**\n * Presents a single employee document for review and signature.\n *\n * @remarks\n * Renders the form's PDF and collects the employee's signature. On successful\n * submission the signed form is emitted; cancelling returns to the document list.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `employee/forms/sign` | Fired after the form is successfully signed | {@link APIModels.Form} |\n * | `cancel` | Fired when the user cancels signing and returns to the document list | — |\n *\n * @param props - See {@link SignatureFormProps}.\n * @returns The employee signature form.\n * @public\n */\nexport function SignatureForm(props: SignatureFormProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props} />\n </BaseComponent>\n )\n}\n\nfunction Root({ employeeId, formId, className }: SignatureFormProps) {\n useI18n('Employee.DocumentSigner')\n const { t } = useTranslation('Employee.DocumentSigner')\n const { onEvent } = useBase()\n const Components = useComponentContext()\n\n const hookResult = useSignEmployeeForm({ employeeId, formId })\n\n if (hookResult.isLoading) {\n return <BaseLayout isLoading error={hookResult.errorHandling.errors} />\n }\n\n const { form, pdfUrl } = hookResult.data\n const { isPending } = hookResult.status\n const { Fields } = hookResult.form\n\n const handleBack = () => {\n onEvent(componentEvents.CANCEL)\n }\n\n const handleSubmit = async () => {\n const result = await hookResult.actions.onSubmit()\n if (result) {\n onEvent(componentEvents.EMPLOYEE_SIGN_FORM, result.data)\n }\n }\n\n return (\n <section className={className}>\n <BaseLayout error={hookResult.errorHandling.errors}>\n <SDKFormProvider formHookResult={hookResult}>\n <Form onSubmit={() => void handleSubmit()}>\n <Flex flexDirection=\"column\">\n <section>\n <Components.Heading as=\"h2\">\n {t('signatureFormTitle', { formTitle: form.title })}\n </Components.Heading>\n {pdfUrl && (\n <Components.Text>\n <Trans\n t={t}\n i18nKey=\"downloadPrompt\"\n values={{ description: form.description }}\n components={{\n downloadLink: (\n <Components.Link\n href={pdfUrl}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n download={`${form.title || 'form'}.pdf`}\n />\n ),\n }}\n />\n </Components.Text>\n )}\n </section>\n\n <DocumentViewer\n url={pdfUrl}\n title={form.title}\n downloadInstructions={t('downloadAndReviewInstructions')}\n viewDocumentLabel={t('viewDocumentCta')}\n />\n\n <Flex flexDirection=\"column\" gap={12}>\n <Fields.Signature\n label={t('signatureFieldLabel')}\n description={t('signatureFieldDescription')}\n validationMessages={{ REQUIRED: t('signatureFieldError') }}\n />\n <Fields.ConfirmSignature\n label={t('confirmSignatureCheckboxLabel')}\n validationMessages={{ REQUIRED: t('confirmSignatureError') }}\n />\n </Flex>\n\n <ActionsLayout>\n <Components.Button variant=\"secondary\" type=\"button\" onClick={handleBack}>\n {t('backCta')}\n </Components.Button>\n <Components.Button type=\"submit\" isLoading={isPending}>\n {t('signFormCta')}\n </Components.Button>\n </ActionsLayout>\n </Flex>\n </Form>\n </SDKFormProvider>\n </BaseLayout>\n </section>\n )\n}\n"],"names":["SignatureForm","props","jsx","BaseComponent","Root","employeeId","formId","className","useI18n","t","useTranslation","onEvent","useBase","Components","useComponentContext","hookResult","useSignEmployeeForm","BaseLayout","form","pdfUrl","isPending","Fields","handleBack","componentEvents","handleSubmit","result","SDKFormProvider","Form","jsxs","Flex","Trans","DocumentViewer","ActionsLayout"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as e } from "react/jsx-runtime";
|
|
2
|
+
import { CheckboxHookField as t } from "../../../../../partner-hook-utils/form/fields/CheckboxHookField.js";
|
|
2
3
|
import { TextInputHookField as n } from "../../../../../partner-hook-utils/form/fields/TextInputHookField.js";
|
|
3
4
|
import { SelectHookField as a } from "../../../../../partner-hook-utils/form/fields/SelectHookField.js";
|
|
4
|
-
import { CheckboxHookField as t } from "../../../../../partner-hook-utils/form/fields/CheckboxHookField.js";
|
|
5
5
|
import { RadioGroupHookField as p } from "../../../../../partner-hook-utils/form/fields/RadioGroupHookField.js";
|
|
6
6
|
function c(r) {
|
|
7
7
|
return /* @__PURE__ */ e(n, { ...r, name: "signature" });
|
package/dist/components/Employee/FederalTaxes/management/FederalTaxesCard/FederalTaxesCard.js
CHANGED
|
@@ -2,19 +2,18 @@ import { jsx as t } from "react/jsx-runtime";
|
|
|
2
2
|
import { useTranslation as p } from "react-i18next";
|
|
3
3
|
import { Flex as u } from "../../../../Common/Flex/Flex.js";
|
|
4
4
|
import { Loading as h } from "../../../../Common/Loading/Loading.js";
|
|
5
|
-
import {
|
|
6
|
-
import "
|
|
7
|
-
import { BaseBoundaries as E, BaseLayout as f } from "../../../../Base/Base.js";
|
|
5
|
+
import { BaseBoundaries as x, BaseLayout as E } from "../../../../Base/Base.js";
|
|
6
|
+
import { useComponentContext as f } from "../../../../../contexts/ComponentAdapter/useComponentContext.js";
|
|
8
7
|
import g from "../../../../../hooks/useNumberFormatter.js";
|
|
9
8
|
import { useI18n as F } from "../../../../../i18n/I18n.js";
|
|
10
9
|
import { componentEvents as T } from "../../../../../shared/constants.js";
|
|
11
10
|
import { useFederalTaxesSummary as y } from "../../shared/useFederalTaxesSummary/useFederalTaxesSummary.js";
|
|
12
|
-
function
|
|
13
|
-
return /* @__PURE__ */ t(
|
|
11
|
+
function N(n) {
|
|
12
|
+
return /* @__PURE__ */ t(x, { componentName: "Employee.Management.FederalTaxes", children: /* @__PURE__ */ t(C, { ...n }) });
|
|
14
13
|
}
|
|
15
14
|
function C({ employeeId: n, onEvent: m }) {
|
|
16
15
|
F("Employee.Management.FederalTaxes");
|
|
17
|
-
const { t: o } = p("Employee.Management.FederalTaxes"),
|
|
16
|
+
const { t: o } = p("Employee.Management.FederalTaxes"), a = f(), i = g("currency"), d = y({ employeeId: n }), s = d.isLoading, e = d.isLoading ? void 0 : d.data.employeeFederalTax, c = () => {
|
|
18
17
|
m(T.EMPLOYEE_MANAGEMENT_FEDERAL_TAXES_CARD_EDIT_REQUESTED, { employeeId: n });
|
|
19
18
|
}, r = /* @__PURE__ */ t("span", { "aria-label": o("card.listEmptyPlaceholder"), children: "–" }), l = e ? [
|
|
20
19
|
{
|
|
@@ -27,36 +26,36 @@ function C({ employeeId: n, onEvent: m }) {
|
|
|
27
26
|
},
|
|
28
27
|
{
|
|
29
28
|
term: o("card.dependentsAndOtherCredits"),
|
|
30
|
-
description: "dependentsAmount" in e && e.dependentsAmount ?
|
|
29
|
+
description: "dependentsAmount" in e && e.dependentsAmount ? i(parseFloat(e.dependentsAmount)) : r
|
|
31
30
|
},
|
|
32
31
|
{
|
|
33
32
|
term: o("card.otherIncome"),
|
|
34
|
-
description: "otherIncome" in e && e.otherIncome ?
|
|
33
|
+
description: "otherIncome" in e && e.otherIncome ? i(parseFloat(e.otherIncome)) : r
|
|
35
34
|
},
|
|
36
35
|
{
|
|
37
36
|
term: o("card.deductions"),
|
|
38
|
-
description: "deductions" in e && e.deductions ?
|
|
37
|
+
description: "deductions" in e && e.deductions ? i(parseFloat(e.deductions)) : r
|
|
39
38
|
},
|
|
40
39
|
{
|
|
41
40
|
term: o("card.extraWithholding"),
|
|
42
|
-
description: "extraWithholding" in e && e.extraWithholding ?
|
|
41
|
+
description: "extraWithholding" in e && e.extraWithholding ? i(parseFloat(e.extraWithholding)) : r
|
|
43
42
|
}
|
|
44
43
|
] : [];
|
|
45
|
-
return /* @__PURE__ */ t(
|
|
46
|
-
|
|
44
|
+
return /* @__PURE__ */ t(E, { error: d.errorHandling.errors, children: /* @__PURE__ */ t(
|
|
45
|
+
a.Box,
|
|
47
46
|
{
|
|
48
47
|
header: /* @__PURE__ */ t(
|
|
49
|
-
|
|
48
|
+
a.BoxHeader,
|
|
50
49
|
{
|
|
51
50
|
title: o("card.title"),
|
|
52
|
-
action: /* @__PURE__ */ t(
|
|
51
|
+
action: /* @__PURE__ */ t(a.Button, { variant: "secondary", onClick: c, isDisabled: s, children: o("card.editCta") })
|
|
53
52
|
}
|
|
54
53
|
),
|
|
55
|
-
children: /* @__PURE__ */ t(u, { flexDirection: "column", gap: 16, children: s ? /* @__PURE__ */ t(h, {}) : e ? /* @__PURE__ */ t(
|
|
54
|
+
children: /* @__PURE__ */ t(u, { flexDirection: "column", gap: 16, children: s ? /* @__PURE__ */ t(h, {}) : e ? /* @__PURE__ */ t(a.DescriptionList, { items: l }) : null })
|
|
56
55
|
}
|
|
57
56
|
) });
|
|
58
57
|
}
|
|
59
58
|
export {
|
|
60
|
-
|
|
59
|
+
N as FederalTaxesCard
|
|
61
60
|
};
|
|
62
61
|
//# sourceMappingURL=FederalTaxesCard.js.map
|
package/dist/components/Employee/FederalTaxes/management/FederalTaxesCard/FederalTaxesCard.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FederalTaxesCard.js","sources":["../../../../../../src/components/Employee/FederalTaxes/management/FederalTaxesCard/FederalTaxesCard.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { useFederalTaxesSummary } from '../../shared/useFederalTaxesSummary'\nimport { Flex } from '@/components/Common/Flex/Flex'\nimport { Loading } from '@/components/Common'\nimport { BaseBoundaries, BaseLayout } from '@/components/Base/Base'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport useNumberFormatter from '@/hooks/useNumberFormatter'\nimport { useI18n } from '@/i18n'\nimport { componentEvents, type EventType } from '@/shared/constants'\nimport type { OnEventType } from '@/components/Base/useBase'\n\n/**\n * Props for {@link FederalTaxesCard}.\n *\n * @public\n */\nexport interface FederalTaxesCardProps {\n /** The associated employee identifier. */\n employeeId: string\n /** Callback invoked when the card emits an event. See the events table on {@link FederalTaxesCard} for the available event types and payloads. */\n onEvent: OnEventType<EventType, unknown>\n}\n\n/**\n * Standalone \"Federal taxes\" card. Owns its own data fetch via\n * `useFederalTaxesSummary` and emits\n * `EMPLOYEE_MANAGEMENT_FEDERAL_TAXES_CARD_EDIT_REQUESTED` when the Edit\n * button is clicked. The card has no alert API — alert rendering (when\n * introduced) is the orchestrator's responsibility.\n *\n * @public\n */\nexport function FederalTaxesCard(props: FederalTaxesCardProps) {\n return (\n <BaseBoundaries componentName=\"Employee.Management.FederalTaxes\">\n <FederalTaxesCardContent {...props} />\n </BaseBoundaries>\n )\n}\n\nfunction FederalTaxesCardContent({ employeeId, onEvent }: FederalTaxesCardProps) {\n useI18n('Employee.Management.FederalTaxes')\n const { t } = useTranslation('Employee.Management.FederalTaxes')\n const Components = useComponentContext()\n const formatCurrency = useNumberFormatter('currency')\n\n const summary = useFederalTaxesSummary({ employeeId })\n\n const isLoading = summary.isLoading\n const federalTaxes = summary.isLoading ? undefined : summary.data.employeeFederalTax\n\n const handleEdit = () => {\n onEvent(componentEvents.EMPLOYEE_MANAGEMENT_FEDERAL_TAXES_CARD_EDIT_REQUESTED, { employeeId })\n }\n\n const emptyPlaceholder = <span aria-label={t('card.listEmptyPlaceholder')}>–</span>\n\n const items = federalTaxes\n ? [\n {\n term: t('card.filingStatus'),\n description: federalTaxes.filingStatus || emptyPlaceholder,\n },\n {\n term: t('card.multipleJobs'),\n description:\n 'twoJobs' in federalTaxes && federalTaxes.twoJobs !== null\n ? federalTaxes.twoJobs\n ? t('common.yes')\n : t('common.no')\n : emptyPlaceholder,\n },\n {\n term: t('card.dependentsAndOtherCredits'),\n description:\n 'dependentsAmount' in federalTaxes && federalTaxes.dependentsAmount\n ? formatCurrency(parseFloat(federalTaxes.dependentsAmount))\n : emptyPlaceholder,\n },\n {\n term: t('card.otherIncome'),\n description:\n 'otherIncome' in federalTaxes && federalTaxes.otherIncome\n ? formatCurrency(parseFloat(federalTaxes.otherIncome))\n : emptyPlaceholder,\n },\n {\n term: t('card.deductions'),\n description:\n 'deductions' in federalTaxes && federalTaxes.deductions\n ? formatCurrency(parseFloat(federalTaxes.deductions))\n : emptyPlaceholder,\n },\n {\n term: t('card.extraWithholding'),\n description:\n 'extraWithholding' in federalTaxes && federalTaxes.extraWithholding\n ? formatCurrency(parseFloat(federalTaxes.extraWithholding))\n : emptyPlaceholder,\n },\n ]\n : []\n\n return (\n <BaseLayout error={summary.errorHandling.errors}>\n <Components.Box\n header={\n <Components.BoxHeader\n title={t('card.title')}\n action={\n <Components.Button variant=\"secondary\" onClick={handleEdit} isDisabled={isLoading}>\n {t('card.editCta')}\n </Components.Button>\n }\n />\n }\n >\n <Flex flexDirection=\"column\" gap={16}>\n {isLoading ? (\n <Loading />\n ) : federalTaxes ? (\n <Components.DescriptionList items={items} />\n ) : null}\n </Flex>\n </Components.Box>\n </BaseLayout>\n )\n}\n"],"names":["FederalTaxesCard","props","jsx","BaseBoundaries","FederalTaxesCardContent","employeeId","onEvent","useI18n","t","useTranslation","Components","useComponentContext","formatCurrency","useNumberFormatter","summary","useFederalTaxesSummary","isLoading","federalTaxes","handleEdit","componentEvents","emptyPlaceholder","items","BaseLayout","Flex","Loading"],"mappings":"
|
|
1
|
+
{"version":3,"file":"FederalTaxesCard.js","sources":["../../../../../../src/components/Employee/FederalTaxes/management/FederalTaxesCard/FederalTaxesCard.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { useFederalTaxesSummary } from '../../shared/useFederalTaxesSummary'\nimport { Flex } from '@/components/Common/Flex/Flex'\nimport { Loading } from '@/components/Common'\nimport { BaseBoundaries, BaseLayout } from '@/components/Base/Base'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport useNumberFormatter from '@/hooks/useNumberFormatter'\nimport { useI18n } from '@/i18n'\nimport { componentEvents, type EventType } from '@/shared/constants'\nimport type { OnEventType } from '@/components/Base/useBase'\n\n/**\n * Props for {@link FederalTaxesCard}.\n *\n * @public\n */\nexport interface FederalTaxesCardProps {\n /** The associated employee identifier. */\n employeeId: string\n /** Callback invoked when the card emits an event. See the events table on {@link FederalTaxesCard} for the available event types and payloads. */\n onEvent: OnEventType<EventType, unknown>\n}\n\n/**\n * Standalone \"Federal taxes\" card. Owns its own data fetch via\n * `useFederalTaxesSummary` and emits\n * `EMPLOYEE_MANAGEMENT_FEDERAL_TAXES_CARD_EDIT_REQUESTED` when the Edit\n * button is clicked. The card has no alert API — alert rendering (when\n * introduced) is the orchestrator's responsibility.\n *\n * @public\n */\nexport function FederalTaxesCard(props: FederalTaxesCardProps) {\n return (\n <BaseBoundaries componentName=\"Employee.Management.FederalTaxes\">\n <FederalTaxesCardContent {...props} />\n </BaseBoundaries>\n )\n}\n\nfunction FederalTaxesCardContent({ employeeId, onEvent }: FederalTaxesCardProps) {\n useI18n('Employee.Management.FederalTaxes')\n const { t } = useTranslation('Employee.Management.FederalTaxes')\n const Components = useComponentContext()\n const formatCurrency = useNumberFormatter('currency')\n\n const summary = useFederalTaxesSummary({ employeeId })\n\n const isLoading = summary.isLoading\n const federalTaxes = summary.isLoading ? undefined : summary.data.employeeFederalTax\n\n const handleEdit = () => {\n onEvent(componentEvents.EMPLOYEE_MANAGEMENT_FEDERAL_TAXES_CARD_EDIT_REQUESTED, { employeeId })\n }\n\n const emptyPlaceholder = <span aria-label={t('card.listEmptyPlaceholder')}>–</span>\n\n const items = federalTaxes\n ? [\n {\n term: t('card.filingStatus'),\n description: federalTaxes.filingStatus || emptyPlaceholder,\n },\n {\n term: t('card.multipleJobs'),\n description:\n 'twoJobs' in federalTaxes && federalTaxes.twoJobs !== null\n ? federalTaxes.twoJobs\n ? t('common.yes')\n : t('common.no')\n : emptyPlaceholder,\n },\n {\n term: t('card.dependentsAndOtherCredits'),\n description:\n 'dependentsAmount' in federalTaxes && federalTaxes.dependentsAmount\n ? formatCurrency(parseFloat(federalTaxes.dependentsAmount))\n : emptyPlaceholder,\n },\n {\n term: t('card.otherIncome'),\n description:\n 'otherIncome' in federalTaxes && federalTaxes.otherIncome\n ? formatCurrency(parseFloat(federalTaxes.otherIncome))\n : emptyPlaceholder,\n },\n {\n term: t('card.deductions'),\n description:\n 'deductions' in federalTaxes && federalTaxes.deductions\n ? formatCurrency(parseFloat(federalTaxes.deductions))\n : emptyPlaceholder,\n },\n {\n term: t('card.extraWithholding'),\n description:\n 'extraWithholding' in federalTaxes && federalTaxes.extraWithholding\n ? formatCurrency(parseFloat(federalTaxes.extraWithholding))\n : emptyPlaceholder,\n },\n ]\n : []\n\n return (\n <BaseLayout error={summary.errorHandling.errors}>\n <Components.Box\n header={\n <Components.BoxHeader\n title={t('card.title')}\n action={\n <Components.Button variant=\"secondary\" onClick={handleEdit} isDisabled={isLoading}>\n {t('card.editCta')}\n </Components.Button>\n }\n />\n }\n >\n <Flex flexDirection=\"column\" gap={16}>\n {isLoading ? (\n <Loading />\n ) : federalTaxes ? (\n <Components.DescriptionList items={items} />\n ) : null}\n </Flex>\n </Components.Box>\n </BaseLayout>\n )\n}\n"],"names":["FederalTaxesCard","props","jsx","BaseBoundaries","FederalTaxesCardContent","employeeId","onEvent","useI18n","t","useTranslation","Components","useComponentContext","formatCurrency","useNumberFormatter","summary","useFederalTaxesSummary","isLoading","federalTaxes","handleEdit","componentEvents","emptyPlaceholder","items","BaseLayout","Flex","Loading"],"mappings":";;;;;;;;;;AAgCO,SAASA,EAAiBC,GAA8B;AAC7D,SACE,gBAAAC,EAACC,KAAe,eAAc,oCAC5B,4BAACC,GAAA,EAAyB,GAAGH,GAAO,EAAA,CACtC;AAEJ;AAEA,SAASG,EAAwB,EAAE,YAAAC,GAAY,SAAAC,KAAkC;AAC/E,EAAAC,EAAQ,kCAAkC;AAC1C,QAAM,EAAE,GAAAC,EAAA,IAAMC,EAAe,kCAAkC,GACzDC,IAAaC,EAAA,GACbC,IAAiBC,EAAmB,UAAU,GAE9CC,IAAUC,EAAuB,EAAE,YAAAV,GAAY,GAE/CW,IAAYF,EAAQ,WACpBG,IAAeH,EAAQ,YAAY,SAAYA,EAAQ,KAAK,oBAE5DI,IAAa,MAAM;AACvB,IAAAZ,EAAQa,EAAgB,uDAAuD,EAAE,YAAAd,EAAA,CAAY;AAAA,EAC/F,GAEMe,IAAmB,gBAAAlB,EAAC,QAAA,EAAK,cAAYM,EAAE,2BAA2B,GAAG,UAAA,KAAC,GAEtEa,IAAQJ,IACV;AAAA,IACE;AAAA,MACE,MAAMT,EAAE,mBAAmB;AAAA,MAC3B,aAAaS,EAAa,gBAAgBG;AAAA,IAAA;AAAA,IAE5C;AAAA,MACE,MAAMZ,EAAE,mBAAmB;AAAA,MAC3B,aACE,aAAaS,KAAgBA,EAAa,YAAY,OAClDA,EAAa,UACXT,EAAE,YAAY,IACdA,EAAE,WAAW,IACfY;AAAA,IAAA;AAAA,IAER;AAAA,MACE,MAAMZ,EAAE,gCAAgC;AAAA,MACxC,aACE,sBAAsBS,KAAgBA,EAAa,mBAC/CL,EAAe,WAAWK,EAAa,gBAAgB,CAAC,IACxDG;AAAA,IAAA;AAAA,IAER;AAAA,MACE,MAAMZ,EAAE,kBAAkB;AAAA,MAC1B,aACE,iBAAiBS,KAAgBA,EAAa,cAC1CL,EAAe,WAAWK,EAAa,WAAW,CAAC,IACnDG;AAAA,IAAA;AAAA,IAER;AAAA,MACE,MAAMZ,EAAE,iBAAiB;AAAA,MACzB,aACE,gBAAgBS,KAAgBA,EAAa,aACzCL,EAAe,WAAWK,EAAa,UAAU,CAAC,IAClDG;AAAA,IAAA;AAAA,IAER;AAAA,MACE,MAAMZ,EAAE,uBAAuB;AAAA,MAC/B,aACE,sBAAsBS,KAAgBA,EAAa,mBAC/CL,EAAe,WAAWK,EAAa,gBAAgB,CAAC,IACxDG;AAAA,IAAA;AAAA,EACR,IAEF,CAAA;AAEJ,SACE,gBAAAlB,EAACoB,GAAA,EAAW,OAAOR,EAAQ,cAAc,QACvC,UAAA,gBAAAZ;AAAA,IAACQ,EAAW;AAAA,IAAX;AAAA,MACC,QACE,gBAAAR;AAAA,QAACQ,EAAW;AAAA,QAAX;AAAA,UACC,OAAOF,EAAE,YAAY;AAAA,UACrB,QACE,gBAAAN,EAACQ,EAAW,QAAX,EAAkB,SAAQ,aAAY,SAASQ,GAAY,YAAYF,GACrE,UAAAR,EAAE,cAAc,EAAA,CACnB;AAAA,QAAA;AAAA,MAAA;AAAA,MAKN,4BAACe,GAAA,EAAK,eAAc,UAAS,KAAK,IAC/B,UAAAP,IACC,gBAAAd,EAACsB,GAAA,CAAA,CAAQ,IACPP,IACF,gBAAAf,EAACQ,EAAW,iBAAX,EAA2B,OAAAW,GAAc,IACxC,KAAA,CACN;AAAA,IAAA;AAAA,EAAA,GAEJ;AAEJ;"}
|
|
@@ -6,11 +6,10 @@ import { useManagementFederalTaxesViewDictionary as M } from "./useViewDictionar
|
|
|
6
6
|
import { BaseBoundaries as y, BaseLayout as _ } from "../../../Base/Base.js";
|
|
7
7
|
import "../../../Base/useBase.js";
|
|
8
8
|
import { ActionsLayout as g } from "../../../Common/ActionsLayout/ActionsLayout.js";
|
|
9
|
-
import {
|
|
10
|
-
import "react";
|
|
11
|
-
import { useI18n as L, useComponentDictionary as C } from "../../../../i18n/I18n.js";
|
|
9
|
+
import { useI18n as A, useComponentDictionary as L } from "../../../../i18n/I18n.js";
|
|
12
10
|
import { componentEvents as m } from "../../../../shared/constants.js";
|
|
13
|
-
|
|
11
|
+
import { useComponentContext as C } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
|
|
12
|
+
function j({ FallbackComponent: t, ...n }) {
|
|
14
13
|
return /* @__PURE__ */ e(
|
|
15
14
|
y,
|
|
16
15
|
{
|
|
@@ -28,8 +27,8 @@ function h({
|
|
|
28
27
|
defaultValues: l,
|
|
29
28
|
onEvent: r
|
|
30
29
|
}) {
|
|
31
|
-
|
|
32
|
-
const { t: a } = F("Employee.Management.FederalTaxes"), i =
|
|
30
|
+
A("Employee.Management.FederalTaxes"), L("Employee.Management.FederalTaxes", c);
|
|
31
|
+
const { t: a } = F("Employee.Management.FederalTaxes"), i = C(), u = M(), o = x({
|
|
33
32
|
employeeId: t,
|
|
34
33
|
defaultValues: l,
|
|
35
34
|
optionalFieldsToRequire: {
|
|
@@ -60,6 +59,6 @@ function h({
|
|
|
60
59
|
);
|
|
61
60
|
}
|
|
62
61
|
export {
|
|
63
|
-
|
|
62
|
+
j as FederalTaxesEditForm
|
|
64
63
|
};
|
|
65
64
|
//# sourceMappingURL=FederalTaxesEditForm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FederalTaxesEditForm.js","sources":["../../../../../src/components/Employee/FederalTaxes/management/FederalTaxesEditForm.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { FederalTaxesView } from '../shared/FederalTaxesView'\nimport {\n useFederalTaxesForm,\n type UseFederalTaxesFormProps,\n type FederalTaxesFormData,\n} from '../shared/useFederalTaxesForm'\nimport { useManagementFederalTaxesViewDictionary } from './useViewDictionary'\nimport { BaseBoundaries, BaseLayout, type BaseComponentInterface } from '@/components/Base'\nimport { ActionsLayout } from '@/components/Common'\nimport { useI18n, useComponentDictionary } from '@/i18n'\nimport { componentEvents } from '@/shared/constants'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\n/**\n * Props for {@link FederalTaxesEditForm}.\n *\n * @public\n */\nexport interface FederalTaxesEditFormProps extends BaseComponentInterface<'Employee.Management.FederalTaxes'> {\n /** The associated employee identifier. */\n employeeId: string\n /** Pre-fill form values. Server data takes precedence when the employee already has values on file. */\n defaultValues?: Partial<FederalTaxesFormData>\n}\n\n/**\n * Standalone form for editing an employee's federal tax (W-4) withholdings — filing status, multiple-jobs flag, dependents, other income, deductions, and extra withholding.\n *\n * @remarks\n * Pair with {@link FederalTaxesCard} to route its `employee/management/federalTaxes/card/editRequested` event to this form. {@link FederalTaxes} bundles the card, this form, and the swap wiring as a single drop-in; reach for this form directly only when that orchestration is the wrong fit (for example, when the form needs to render in a modal or drawer, or when the swap is driven by a router).\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `employee/management/federalTaxes/editForm/submitted` | Fired after the form is saved; use it to return to the card | The updated `EmployeeFederalTax` entity |\n * | `employee/management/federalTaxes/editForm/cancelled` | Fired when the user clicks Cancel; use it to return to the card | — |\n *\n * @param props - See {@link FederalTaxesEditFormProps}.\n * @returns The rendered federal taxes edit form.\n * @public\n * @group Block components\n */\nexport function FederalTaxesEditForm({ FallbackComponent, ...props }: FederalTaxesEditFormProps) {\n return (\n <BaseBoundaries\n componentName=\"Employee.Management.FederalTaxes\"\n FallbackComponent={FallbackComponent}\n >\n <FederalTaxesEditFormRoot {...props} />\n </BaseBoundaries>\n )\n}\n\nfunction FederalTaxesEditFormRoot({\n employeeId,\n className,\n children,\n dictionary,\n defaultValues,\n onEvent,\n}: FederalTaxesEditFormProps) {\n useI18n('Employee.Management.FederalTaxes')\n useComponentDictionary('Employee.Management.FederalTaxes', dictionary)\n const { t } = useTranslation('Employee.Management.FederalTaxes')\n const Components = useComponentContext()\n const viewDictionary = useManagementFederalTaxesViewDictionary()\n\n const federalTaxes = useFederalTaxesForm({\n employeeId,\n defaultValues,\n optionalFieldsToRequire: {\n update: ['twoJobs', 'dependentsAmount', 'otherIncome', 'deductions', 'extraWithholding'],\n },\n } satisfies UseFederalTaxesFormProps)\n\n if (federalTaxes.isLoading) {\n return <BaseLayout isLoading error={federalTaxes.errorHandling.errors} />\n }\n\n const handleSubmit = async () => {\n const result = await federalTaxes.actions.onSubmit()\n if (!result) return\n\n onEvent(componentEvents.EMPLOYEE_MANAGEMENT_FEDERAL_TAXES_EDIT_FORM_SUBMITTED, result.data)\n }\n\n const handleCancel = () => {\n onEvent(componentEvents.EMPLOYEE_MANAGEMENT_FEDERAL_TAXES_EDIT_FORM_CANCELLED)\n }\n\n return (\n <FederalTaxesView\n federalTaxes={federalTaxes}\n onSubmit={handleSubmit}\n actions={\n <ActionsLayout>\n <Components.Button variant=\"secondary\" onClick={handleCancel}>\n {t('cancelCta')}\n </Components.Button>\n <Components.Button type=\"submit\" isLoading={federalTaxes.status.isPending}>\n {t('saveCta')}\n </Components.Button>\n </ActionsLayout>\n }\n className={className}\n dictionary={viewDictionary}\n >\n {children}\n </FederalTaxesView>\n )\n}\n"],"names":["FederalTaxesEditForm","FallbackComponent","props","jsx","BaseBoundaries","FederalTaxesEditFormRoot","employeeId","className","children","dictionary","defaultValues","onEvent","useI18n","useComponentDictionary","t","useTranslation","Components","useComponentContext","viewDictionary","useManagementFederalTaxesViewDictionary","federalTaxes","useFederalTaxesForm","BaseLayout","handleSubmit","result","componentEvents","handleCancel","FederalTaxesView","ActionsLayout"],"mappings":"
|
|
1
|
+
{"version":3,"file":"FederalTaxesEditForm.js","sources":["../../../../../src/components/Employee/FederalTaxes/management/FederalTaxesEditForm.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { FederalTaxesView } from '../shared/FederalTaxesView'\nimport {\n useFederalTaxesForm,\n type UseFederalTaxesFormProps,\n type FederalTaxesFormData,\n} from '../shared/useFederalTaxesForm'\nimport { useManagementFederalTaxesViewDictionary } from './useViewDictionary'\nimport { BaseBoundaries, BaseLayout, type BaseComponentInterface } from '@/components/Base'\nimport { ActionsLayout } from '@/components/Common'\nimport { useI18n, useComponentDictionary } from '@/i18n'\nimport { componentEvents } from '@/shared/constants'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\n/**\n * Props for {@link FederalTaxesEditForm}.\n *\n * @public\n */\nexport interface FederalTaxesEditFormProps extends BaseComponentInterface<'Employee.Management.FederalTaxes'> {\n /** The associated employee identifier. */\n employeeId: string\n /** Pre-fill form values. Server data takes precedence when the employee already has values on file. */\n defaultValues?: Partial<FederalTaxesFormData>\n}\n\n/**\n * Standalone form for editing an employee's federal tax (W-4) withholdings — filing status, multiple-jobs flag, dependents, other income, deductions, and extra withholding.\n *\n * @remarks\n * Pair with {@link FederalTaxesCard} to route its `employee/management/federalTaxes/card/editRequested` event to this form. {@link FederalTaxes} bundles the card, this form, and the swap wiring as a single drop-in; reach for this form directly only when that orchestration is the wrong fit (for example, when the form needs to render in a modal or drawer, or when the swap is driven by a router).\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `employee/management/federalTaxes/editForm/submitted` | Fired after the form is saved; use it to return to the card | The updated `EmployeeFederalTax` entity |\n * | `employee/management/federalTaxes/editForm/cancelled` | Fired when the user clicks Cancel; use it to return to the card | — |\n *\n * @param props - See {@link FederalTaxesEditFormProps}.\n * @returns The rendered federal taxes edit form.\n * @public\n * @group Block components\n */\nexport function FederalTaxesEditForm({ FallbackComponent, ...props }: FederalTaxesEditFormProps) {\n return (\n <BaseBoundaries\n componentName=\"Employee.Management.FederalTaxes\"\n FallbackComponent={FallbackComponent}\n >\n <FederalTaxesEditFormRoot {...props} />\n </BaseBoundaries>\n )\n}\n\nfunction FederalTaxesEditFormRoot({\n employeeId,\n className,\n children,\n dictionary,\n defaultValues,\n onEvent,\n}: FederalTaxesEditFormProps) {\n useI18n('Employee.Management.FederalTaxes')\n useComponentDictionary('Employee.Management.FederalTaxes', dictionary)\n const { t } = useTranslation('Employee.Management.FederalTaxes')\n const Components = useComponentContext()\n const viewDictionary = useManagementFederalTaxesViewDictionary()\n\n const federalTaxes = useFederalTaxesForm({\n employeeId,\n defaultValues,\n optionalFieldsToRequire: {\n update: ['twoJobs', 'dependentsAmount', 'otherIncome', 'deductions', 'extraWithholding'],\n },\n } satisfies UseFederalTaxesFormProps)\n\n if (federalTaxes.isLoading) {\n return <BaseLayout isLoading error={federalTaxes.errorHandling.errors} />\n }\n\n const handleSubmit = async () => {\n const result = await federalTaxes.actions.onSubmit()\n if (!result) return\n\n onEvent(componentEvents.EMPLOYEE_MANAGEMENT_FEDERAL_TAXES_EDIT_FORM_SUBMITTED, result.data)\n }\n\n const handleCancel = () => {\n onEvent(componentEvents.EMPLOYEE_MANAGEMENT_FEDERAL_TAXES_EDIT_FORM_CANCELLED)\n }\n\n return (\n <FederalTaxesView\n federalTaxes={federalTaxes}\n onSubmit={handleSubmit}\n actions={\n <ActionsLayout>\n <Components.Button variant=\"secondary\" onClick={handleCancel}>\n {t('cancelCta')}\n </Components.Button>\n <Components.Button type=\"submit\" isLoading={federalTaxes.status.isPending}>\n {t('saveCta')}\n </Components.Button>\n </ActionsLayout>\n }\n className={className}\n dictionary={viewDictionary}\n >\n {children}\n </FederalTaxesView>\n )\n}\n"],"names":["FederalTaxesEditForm","FallbackComponent","props","jsx","BaseBoundaries","FederalTaxesEditFormRoot","employeeId","className","children","dictionary","defaultValues","onEvent","useI18n","useComponentDictionary","t","useTranslation","Components","useComponentContext","viewDictionary","useManagementFederalTaxesViewDictionary","federalTaxes","useFederalTaxesForm","BaseLayout","handleSubmit","result","componentEvents","handleCancel","FederalTaxesView","ActionsLayout"],"mappings":";;;;;;;;;;;AA2CO,SAASA,EAAqB,EAAE,mBAAAC,GAAmB,GAAGC,KAAoC;AAC/F,SACE,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,eAAc;AAAA,MACd,mBAAAH;AAAA,MAEA,UAAA,gBAAAE,EAACE,GAAA,EAA0B,GAAGH,EAAA,CAAO;AAAA,IAAA;AAAA,EAAA;AAG3C;AAEA,SAASG,EAAyB;AAAA,EAChC,YAAAC;AAAA,EACA,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,YAAAC;AAAA,EACA,eAAAC;AAAA,EACA,SAAAC;AACF,GAA8B;AAC5B,EAAAC,EAAQ,kCAAkC,GAC1CC,EAAuB,oCAAoCJ,CAAU;AACrE,QAAM,EAAE,GAAAK,EAAA,IAAMC,EAAe,kCAAkC,GACzDC,IAAaC,EAAA,GACbC,IAAiBC,EAAA,GAEjBC,IAAeC,EAAoB;AAAA,IACvC,YAAAf;AAAA,IACA,eAAAI;AAAA,IACA,yBAAyB;AAAA,MACvB,QAAQ,CAAC,WAAW,oBAAoB,eAAe,cAAc,kBAAkB;AAAA,IAAA;AAAA,EACzF,CACkC;AAEpC,MAAIU,EAAa;AACf,6BAAQE,GAAA,EAAW,WAAS,IAAC,OAAOF,EAAa,cAAc,QAAQ;AAGzE,QAAMG,IAAe,YAAY;AAC/B,UAAMC,IAAS,MAAMJ,EAAa,QAAQ,SAAA;AAC1C,IAAKI,KAELb,EAAQc,EAAgB,uDAAuDD,EAAO,IAAI;AAAA,EAC5F,GAEME,IAAe,MAAM;AACzB,IAAAf,EAAQc,EAAgB,qDAAqD;AAAA,EAC/E;AAEA,SACE,gBAAAtB;AAAA,IAACwB;AAAA,IAAA;AAAA,MACC,cAAAP;AAAA,MACA,UAAUG;AAAA,MACV,2BACGK,GAAA,EACC,UAAA;AAAA,QAAA,gBAAAzB,EAACa,EAAW,QAAX,EAAkB,SAAQ,aAAY,SAASU,GAC7C,UAAAZ,EAAE,WAAW,EAAA,CAChB;AAAA,QACA,gBAAAX,EAACa,EAAW,QAAX,EAAkB,MAAK,UAAS,WAAWI,EAAa,OAAO,WAC7D,UAAAN,EAAE,SAAS,EAAA,CACd;AAAA,MAAA,GACF;AAAA,MAEF,WAAAP;AAAA,MACA,YAAYW;AAAA,MAEX,UAAAV;AAAA,IAAA;AAAA,EAAA;AAGP;"}
|
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
import { jsx as e } from "react/jsx-runtime";
|
|
2
|
-
import { useTranslation as
|
|
3
|
-
import { FederalTaxesView as
|
|
4
|
-
import { useFederalTaxesForm as
|
|
2
|
+
import { useTranslation as c } from "react-i18next";
|
|
3
|
+
import { FederalTaxesView as l } from "../shared/FederalTaxesView.js";
|
|
4
|
+
import { useFederalTaxesForm as p } from "../shared/useFederalTaxesForm/useFederalTaxesForm.js";
|
|
5
5
|
import { useOnboardingFederalTaxesViewDictionary as E } from "./useViewDictionary.js";
|
|
6
6
|
import { BaseBoundaries as f, BaseLayout as T } from "../../../Base/Base.js";
|
|
7
7
|
import "../../../Base/useBase.js";
|
|
8
8
|
import { ActionsLayout as x } from "../../../Common/ActionsLayout/ActionsLayout.js";
|
|
9
|
-
import {
|
|
10
|
-
import "react";
|
|
11
|
-
import { useI18n as y, useComponentDictionary as L } from "../../../../i18n/I18n.js";
|
|
9
|
+
import { useI18n as F, useComponentDictionary as y } from "../../../../i18n/I18n.js";
|
|
12
10
|
import { componentEvents as s } from "../../../../shared/constants.js";
|
|
13
|
-
|
|
11
|
+
import { useComponentContext as L } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
|
|
12
|
+
function M({ FallbackComponent: o, ...t }) {
|
|
14
13
|
return /* @__PURE__ */ e(f, { componentName: "Employee.FederalTaxes", FallbackComponent: o, children: /* @__PURE__ */ e(b, { ...t }) });
|
|
15
14
|
}
|
|
16
15
|
function b({
|
|
@@ -21,8 +20,8 @@ function b({
|
|
|
21
20
|
defaultValues: d,
|
|
22
21
|
onEvent: i
|
|
23
22
|
}) {
|
|
24
|
-
|
|
25
|
-
const u = E(), n =
|
|
23
|
+
F("Employee.FederalTaxes"), y("Employee.FederalTaxes", m);
|
|
24
|
+
const u = E(), n = p({
|
|
26
25
|
employeeId: o,
|
|
27
26
|
defaultValues: d,
|
|
28
27
|
optionalFieldsToRequire: {
|
|
@@ -30,7 +29,7 @@ function b({
|
|
|
30
29
|
}
|
|
31
30
|
});
|
|
32
31
|
return n.isLoading ? /* @__PURE__ */ e(T, { isLoading: !0, error: n.errorHandling.errors }) : /* @__PURE__ */ e(
|
|
33
|
-
|
|
32
|
+
l,
|
|
34
33
|
{
|
|
35
34
|
federalTaxes: n,
|
|
36
35
|
onSubmit: async () => {
|
|
@@ -45,10 +44,10 @@ function b({
|
|
|
45
44
|
);
|
|
46
45
|
}
|
|
47
46
|
function g({ isPending: o }) {
|
|
48
|
-
const { t } =
|
|
47
|
+
const { t } = c("Employee.FederalTaxes"), r = L();
|
|
49
48
|
return /* @__PURE__ */ e(x, { children: /* @__PURE__ */ e(r.Button, { type: "submit", isLoading: o, children: t("submitCta") }) });
|
|
50
49
|
}
|
|
51
50
|
export {
|
|
52
|
-
|
|
51
|
+
M as FederalTaxes
|
|
53
52
|
};
|
|
54
53
|
//# sourceMappingURL=FederalTaxes.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FederalTaxes.js","sources":["../../../../../src/components/Employee/FederalTaxes/onboarding/FederalTaxes.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { FederalTaxesView } from '../shared/FederalTaxesView'\nimport {\n useFederalTaxesForm,\n type UseFederalTaxesFormProps,\n type FederalTaxesFormData,\n} from '../shared/useFederalTaxesForm'\nimport { useOnboardingFederalTaxesViewDictionary } from './useViewDictionary'\nimport { BaseBoundaries, BaseLayout, type BaseComponentInterface } from '@/components/Base'\nimport { ActionsLayout } from '@/components/Common'\nimport { useI18n, useComponentDictionary } from '@/i18n'\nimport { componentEvents } from '@/shared/constants'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\n/**\n * Props for {@link FederalTaxes}.\n *\n * @public\n */\nexport interface FederalTaxesProps extends BaseComponentInterface<'Employee.FederalTaxes'> {\n /** The associated employee identifier. */\n employeeId: string\n /** Pre-fill form values. Server data takes precedence when the employee already has values on file. */\n defaultValues?: Partial<FederalTaxesFormData>\n /** Callback invoked when the block emits an event. See the events table on {@link FederalTaxes} for the available event types and payloads. */\n onEvent: BaseComponentInterface['onEvent']\n}\n\n/**\n * Onboarding step for collecting an employee's federal tax (W-4) withholdings — filing status, multiple-jobs flag, dependents, other income, deductions, and extra withholding.\n *\n * @remarks\n * The federal tax record is created automatically with the employee, so this step is always in update mode. Only the revised 2020 W-4 format is supported. All fields are required by the bundled form, mirroring the IRS-form UX.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `employee/federalTaxes/updated` | Fired after the form is saved | The updated `EmployeeFederalTax` entity |\n * | `employee/federalTaxes/done` | Fired after a successful save so the parent flow can advance | — |\n *\n * @param props - See {@link FederalTaxesProps}.\n * @returns The federal taxes onboarding step.\n * @public\n * @group Block components\n */\nexport function FederalTaxes({ FallbackComponent, ...props }: FederalTaxesProps) {\n return (\n <BaseBoundaries componentName=\"Employee.FederalTaxes\" FallbackComponent={FallbackComponent}>\n <FederalTaxesRoot {...props} />\n </BaseBoundaries>\n )\n}\n\nfunction FederalTaxesRoot({\n employeeId,\n className,\n children,\n dictionary,\n defaultValues,\n onEvent,\n}: FederalTaxesProps) {\n useI18n('Employee.FederalTaxes')\n useComponentDictionary('Employee.FederalTaxes', dictionary)\n const viewDictionary = useOnboardingFederalTaxesViewDictionary()\n\n const federalTaxes = useFederalTaxesForm({\n employeeId,\n defaultValues,\n optionalFieldsToRequire: {\n update: ['twoJobs', 'dependentsAmount', 'otherIncome', 'deductions', 'extraWithholding'],\n },\n } satisfies UseFederalTaxesFormProps)\n\n if (federalTaxes.isLoading) {\n return <BaseLayout isLoading error={federalTaxes.errorHandling.errors} />\n }\n\n const handleSubmit = async () => {\n const result = await federalTaxes.actions.onSubmit()\n if (!result) return\n\n onEvent(componentEvents.EMPLOYEE_FEDERAL_TAXES_UPDATED, result.data)\n onEvent(componentEvents.EMPLOYEE_FEDERAL_TAXES_DONE)\n }\n\n return (\n <FederalTaxesView\n federalTaxes={federalTaxes}\n onSubmit={handleSubmit}\n actions={<ContinueAction isPending={federalTaxes.status.isPending} />}\n className={className}\n dictionary={viewDictionary}\n >\n {children}\n </FederalTaxesView>\n )\n}\n\nfunction ContinueAction({ isPending }: { isPending: boolean }) {\n const { t } = useTranslation('Employee.FederalTaxes')\n const Components = useComponentContext()\n\n return (\n <ActionsLayout>\n <Components.Button type=\"submit\" isLoading={isPending}>\n {t('submitCta')}\n </Components.Button>\n </ActionsLayout>\n )\n}\n"],"names":["FederalTaxes","FallbackComponent","props","jsx","BaseBoundaries","FederalTaxesRoot","employeeId","className","children","dictionary","defaultValues","onEvent","useI18n","useComponentDictionary","viewDictionary","useOnboardingFederalTaxesViewDictionary","federalTaxes","useFederalTaxesForm","BaseLayout","FederalTaxesView","result","componentEvents","ContinueAction","isPending","useTranslation","Components","useComponentContext","ActionsLayout"],"mappings":"
|
|
1
|
+
{"version":3,"file":"FederalTaxes.js","sources":["../../../../../src/components/Employee/FederalTaxes/onboarding/FederalTaxes.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { FederalTaxesView } from '../shared/FederalTaxesView'\nimport {\n useFederalTaxesForm,\n type UseFederalTaxesFormProps,\n type FederalTaxesFormData,\n} from '../shared/useFederalTaxesForm'\nimport { useOnboardingFederalTaxesViewDictionary } from './useViewDictionary'\nimport { BaseBoundaries, BaseLayout, type BaseComponentInterface } from '@/components/Base'\nimport { ActionsLayout } from '@/components/Common'\nimport { useI18n, useComponentDictionary } from '@/i18n'\nimport { componentEvents } from '@/shared/constants'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\n/**\n * Props for {@link FederalTaxes}.\n *\n * @public\n */\nexport interface FederalTaxesProps extends BaseComponentInterface<'Employee.FederalTaxes'> {\n /** The associated employee identifier. */\n employeeId: string\n /** Pre-fill form values. Server data takes precedence when the employee already has values on file. */\n defaultValues?: Partial<FederalTaxesFormData>\n /** Callback invoked when the block emits an event. See the events table on {@link FederalTaxes} for the available event types and payloads. */\n onEvent: BaseComponentInterface['onEvent']\n}\n\n/**\n * Onboarding step for collecting an employee's federal tax (W-4) withholdings — filing status, multiple-jobs flag, dependents, other income, deductions, and extra withholding.\n *\n * @remarks\n * The federal tax record is created automatically with the employee, so this step is always in update mode. Only the revised 2020 W-4 format is supported. All fields are required by the bundled form, mirroring the IRS-form UX.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `employee/federalTaxes/updated` | Fired after the form is saved | The updated `EmployeeFederalTax` entity |\n * | `employee/federalTaxes/done` | Fired after a successful save so the parent flow can advance | — |\n *\n * @param props - See {@link FederalTaxesProps}.\n * @returns The federal taxes onboarding step.\n * @public\n * @group Block components\n */\nexport function FederalTaxes({ FallbackComponent, ...props }: FederalTaxesProps) {\n return (\n <BaseBoundaries componentName=\"Employee.FederalTaxes\" FallbackComponent={FallbackComponent}>\n <FederalTaxesRoot {...props} />\n </BaseBoundaries>\n )\n}\n\nfunction FederalTaxesRoot({\n employeeId,\n className,\n children,\n dictionary,\n defaultValues,\n onEvent,\n}: FederalTaxesProps) {\n useI18n('Employee.FederalTaxes')\n useComponentDictionary('Employee.FederalTaxes', dictionary)\n const viewDictionary = useOnboardingFederalTaxesViewDictionary()\n\n const federalTaxes = useFederalTaxesForm({\n employeeId,\n defaultValues,\n optionalFieldsToRequire: {\n update: ['twoJobs', 'dependentsAmount', 'otherIncome', 'deductions', 'extraWithholding'],\n },\n } satisfies UseFederalTaxesFormProps)\n\n if (federalTaxes.isLoading) {\n return <BaseLayout isLoading error={federalTaxes.errorHandling.errors} />\n }\n\n const handleSubmit = async () => {\n const result = await federalTaxes.actions.onSubmit()\n if (!result) return\n\n onEvent(componentEvents.EMPLOYEE_FEDERAL_TAXES_UPDATED, result.data)\n onEvent(componentEvents.EMPLOYEE_FEDERAL_TAXES_DONE)\n }\n\n return (\n <FederalTaxesView\n federalTaxes={federalTaxes}\n onSubmit={handleSubmit}\n actions={<ContinueAction isPending={federalTaxes.status.isPending} />}\n className={className}\n dictionary={viewDictionary}\n >\n {children}\n </FederalTaxesView>\n )\n}\n\nfunction ContinueAction({ isPending }: { isPending: boolean }) {\n const { t } = useTranslation('Employee.FederalTaxes')\n const Components = useComponentContext()\n\n return (\n <ActionsLayout>\n <Components.Button type=\"submit\" isLoading={isPending}>\n {t('submitCta')}\n </Components.Button>\n </ActionsLayout>\n )\n}\n"],"names":["FederalTaxes","FallbackComponent","props","jsx","BaseBoundaries","FederalTaxesRoot","employeeId","className","children","dictionary","defaultValues","onEvent","useI18n","useComponentDictionary","viewDictionary","useOnboardingFederalTaxesViewDictionary","federalTaxes","useFederalTaxesForm","BaseLayout","FederalTaxesView","result","componentEvents","ContinueAction","isPending","useTranslation","Components","useComponentContext","ActionsLayout"],"mappings":";;;;;;;;;;;AA6CO,SAASA,EAAa,EAAE,mBAAAC,GAAmB,GAAGC,KAA4B;AAC/E,SACE,gBAAAC,EAACC,KAAe,eAAc,yBAAwB,mBAAAH,GACpD,UAAA,gBAAAE,EAACE,GAAA,EAAkB,GAAGH,EAAA,CAAO,EAAA,CAC/B;AAEJ;AAEA,SAASG,EAAiB;AAAA,EACxB,YAAAC;AAAA,EACA,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,YAAAC;AAAA,EACA,eAAAC;AAAA,EACA,SAAAC;AACF,GAAsB;AACpB,EAAAC,EAAQ,uBAAuB,GAC/BC,EAAuB,yBAAyBJ,CAAU;AAC1D,QAAMK,IAAiBC,EAAA,GAEjBC,IAAeC,EAAoB;AAAA,IACvC,YAAAX;AAAA,IACA,eAAAI;AAAA,IACA,yBAAyB;AAAA,MACvB,QAAQ,CAAC,WAAW,oBAAoB,eAAe,cAAc,kBAAkB;AAAA,IAAA;AAAA,EACzF,CACkC;AAEpC,SAAIM,EAAa,8BACPE,GAAA,EAAW,WAAS,IAAC,OAAOF,EAAa,cAAc,QAAQ,IAYvE,gBAAAb;AAAA,IAACgB;AAAA,IAAA;AAAA,MACC,cAAAH;AAAA,MACA,UAXiB,YAAY;AAC/B,cAAMI,IAAS,MAAMJ,EAAa,QAAQ,SAAA;AAC1C,QAAKI,MAELT,EAAQU,EAAgB,gCAAgCD,EAAO,IAAI,GACnET,EAAQU,EAAgB,2BAA2B;AAAA,MACrD;AAAA,MAMI,SAAS,gBAAAlB,EAACmB,GAAA,EAAe,WAAWN,EAAa,OAAO,WAAW;AAAA,MACnE,WAAAT;AAAA,MACA,YAAYO;AAAA,MAEX,UAAAN;AAAA,IAAA;AAAA,EAAA;AAGP;AAEA,SAASc,EAAe,EAAE,WAAAC,KAAqC;AAC7D,QAAM,EAAE,EAAA,IAAMC,EAAe,uBAAuB,GAC9CC,IAAaC,EAAA;AAEnB,SACE,gBAAAvB,EAACwB,GAAA,EACC,UAAA,gBAAAxB,EAACsB,EAAW,QAAX,EAAkB,MAAK,UAAS,WAAWF,GACzC,UAAA,EAAE,WAAW,GAChB,GACF;AAEJ;"}
|
|
@@ -3,10 +3,10 @@ import { useTranslation as E, Trans as s } from "react-i18next";
|
|
|
3
3
|
import { BaseLayout as x } from "../../../Base/Base.js";
|
|
4
4
|
import "../../../Base/useBase.js";
|
|
5
5
|
import { Form as b } from "../../../Common/Form/Form.js";
|
|
6
|
+
import { Flex as l } from "../../../Common/Flex/Flex.js";
|
|
6
7
|
import { SDKFormProvider as I } from "../../../../partner-hook-utils/form/SDKFormProvider.js";
|
|
7
8
|
import { useComponentContext as R } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
|
|
8
9
|
import { useI18n as D, useComponentDictionary as F } from "../../../../i18n/I18n.js";
|
|
9
|
-
import { Flex as l } from "../../../Common/Flex/Flex.js";
|
|
10
10
|
function C({
|
|
11
11
|
federalTaxes: r,
|
|
12
12
|
onSubmit: d,
|