@gusto/embedded-react-sdk 0.43.0 → 0.44.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 +100 -0
- package/README.md +23 -5
- package/dist/assets/icons/edit-02.svg.js +10 -0
- package/dist/assets/icons/edit-02.svg.js.map +1 -0
- package/dist/components/Common/DataView/DataTable/DataTable.js +86 -64
- package/dist/components/Common/DataView/DataTable/DataTable.js.map +1 -1
- package/dist/components/Common/DetailViewLayout/DetailViewLayout.js +52 -0
- package/dist/components/Common/DetailViewLayout/DetailViewLayout.js.map +1 -0
- package/dist/components/Common/DetailViewLayout/DetailViewLayout.module.scss.js +18 -0
- package/dist/components/Common/DetailViewLayout/DetailViewLayout.module.scss.js.map +1 -0
- package/dist/components/Common/Fields/hooks/FieldElementRegistryProvider.d.ts +13 -0
- package/dist/components/Common/Fields/hooks/FieldElementRegistryProvider.js +12 -0
- package/dist/components/Common/Fields/hooks/FieldElementRegistryProvider.js.map +1 -0
- package/dist/components/Common/Fields/hooks/fieldElementRegistry.d.ts +21 -0
- package/dist/components/Common/Fields/hooks/fieldElementRegistry.js +29 -0
- package/dist/components/Common/Fields/hooks/fieldElementRegistry.js.map +1 -0
- package/dist/components/Common/Fields/hooks/useField.js +43 -37
- package/dist/components/Common/Fields/hooks/useField.js.map +1 -1
- package/dist/components/Common/Flex/Flex.d.ts +2 -1
- package/dist/components/Common/Flex/Flex.js +14 -12
- package/dist/components/Common/Flex/Flex.js.map +1 -1
- package/dist/components/Common/Flex/Flex.module.scss.js +4 -4
- package/dist/components/Common/TaxInputs/TaxInputs.js +1 -1
- package/dist/components/Common/TaxInputs/TaxInputs.js.map +1 -1
- package/dist/components/Common/UI/Button/Button.module.scss.js +2 -2
- package/dist/components/Common/UI/Dialog/Dialog.js +35 -36
- package/dist/components/Common/UI/Dialog/Dialog.js.map +1 -1
- package/dist/components/Common/UI/Switch/SwitchTypes.d.ts +2 -2
- package/dist/components/Common/UI/Switch/SwitchTypes.js.map +1 -1
- package/dist/components/Company/AssignSignatory/AssignSignatory.js +6 -7
- package/dist/components/Company/AssignSignatory/AssignSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js +3 -2
- package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js.map +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js +3 -2
- package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js.map +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js +6 -7
- package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js +2 -3
- package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js.map +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +6 -3
- package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js +3 -2
- package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js.map +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js +5 -6
- package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js +9 -10
- package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js.map +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +6 -3
- package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/TitleSelect.js +1 -1
- package/dist/components/Company/AssignSignatory/useAssignSignatory.js +8 -5
- package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountForm/Actions.js +6 -6
- package/dist/components/Company/BankAccount/BankAccountForm/Form.js +9 -8
- package/dist/components/Company/BankAccount/BankAccountForm/Form.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountForm/context.js +6 -3
- package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountList/Actions.js +9 -8
- package/dist/components/Company/BankAccount/BankAccountList/Actions.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js +8 -7
- package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountVerify/Form.js +5 -4
- package/dist/components/Company/BankAccount/BankAccountVerify/Form.js.map +1 -1
- package/dist/components/Company/DocumentSigner/DocumentList/Actions.js +3 -2
- package/dist/components/Company/DocumentSigner/DocumentList/Actions.js.map +1 -1
- package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js +2 -3
- package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
- package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +6 -3
- package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
- package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js +1 -1
- package/dist/components/Company/DocumentSigner/shared/useSignCompanyForm/useSignCompanyForm.js +26 -25
- package/dist/components/Company/DocumentSigner/shared/useSignCompanyForm/useSignCompanyForm.js.map +1 -1
- package/dist/components/Company/FederalTaxes/Actions.js +6 -5
- package/dist/components/Company/FederalTaxes/Actions.js.map +1 -1
- package/dist/components/Company/FederalTaxes/FederalTaxes.js +2 -3
- package/dist/components/Company/FederalTaxes/FederalTaxes.js.map +1 -1
- package/dist/components/Company/FederalTaxes/Form.js +3 -2
- package/dist/components/Company/FederalTaxes/Form.js.map +1 -1
- package/dist/components/Company/FederalTaxes/useFederalTaxes.js +11 -8
- package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
- package/dist/components/Company/Industry/Actions.js +3 -2
- package/dist/components/Company/Industry/Actions.js.map +1 -1
- package/dist/components/Company/Industry/Context.js +9 -6
- package/dist/components/Company/Industry/Context.js.map +1 -1
- package/dist/components/Company/Industry/Edit.js +5 -4
- package/dist/components/Company/Industry/Edit.js.map +1 -1
- package/dist/components/Company/Locations/LocationForm/Actions.js +7 -6
- package/dist/components/Company/Locations/LocationForm/Actions.js.map +1 -1
- package/dist/components/Company/Locations/LocationForm/Form.js +4 -5
- package/dist/components/Company/Locations/LocationForm/Form.js.map +1 -1
- package/dist/components/Company/Locations/LocationForm/LocationForm.js +12 -13
- package/dist/components/Company/Locations/LocationForm/LocationForm.js.map +1 -1
- package/dist/components/Company/Locations/LocationForm/index.d.ts +2 -0
- package/dist/components/Company/Locations/LocationForm/useLocationForm.js +6 -3
- package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
- package/dist/components/Company/Locations/LocationsList/Actions.js +7 -6
- package/dist/components/Company/Locations/LocationsList/Actions.js.map +1 -1
- package/dist/components/Company/Locations/LocationsList/List.js +8 -7
- package/dist/components/Company/Locations/LocationsList/List.js.map +1 -1
- package/dist/components/Company/Locations/LocationsList/LocationsList.js +6 -7
- package/dist/components/Company/Locations/LocationsList/LocationsList.js.map +1 -1
- package/dist/components/Company/Locations/LocationsList/useLocationsList.js +6 -3
- package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
- package/dist/components/Company/OnboardingOverview/Completed.js +11 -10
- package/dist/components/Company/OnboardingOverview/Completed.js.map +1 -1
- package/dist/components/Company/OnboardingOverview/MissingRequirements.js +3 -2
- package/dist/components/Company/OnboardingOverview/MissingRequirements.js.map +1 -1
- package/dist/components/Company/OnboardingOverview/OnboardingOverview.js +2 -3
- package/dist/components/Company/OnboardingOverview/OnboardingOverview.js.map +1 -1
- package/dist/components/Company/OnboardingOverview/context.js +6 -3
- package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
- package/dist/components/Company/PaySchedule/PayScheduleForm.js +2 -3
- package/dist/components/Company/PaySchedule/PayScheduleForm.js.map +1 -1
- package/dist/components/Company/PaySchedule/PayScheduleList.js +1 -1
- package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/usePayScheduleForm.js +53 -52
- package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/usePayScheduleForm.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js +3 -2
- package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/Form.js +12 -11
- package/dist/components/Company/StateTaxes/StateTaxesForm/Form.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.js +67 -63
- package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +6 -3
- package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/rhfKey.d.ts +2 -0
- package/dist/components/Company/StateTaxes/StateTaxesForm/rhfKey.js +6 -0
- package/dist/components/Company/StateTaxes/StateTaxesForm/rhfKey.js.map +1 -0
- package/dist/components/Company/StateTaxes/StateTaxesList/Actions.js +3 -2
- package/dist/components/Company/StateTaxes/StateTaxesList/Actions.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesList/List.js +57 -26
- package/dist/components/Company/StateTaxes/StateTaxesList/List.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesList/context.js +6 -3
- package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
- package/dist/components/Company/exports/companyOnboarding.d.ts +3 -0
- package/dist/components/Company/exports/companyOnboarding.js +21 -15
- package/dist/components/Company/exports/companyOnboarding.js.map +1 -1
- package/dist/components/Company/index.d.ts +1 -0
- package/dist/components/Company/index.js +14 -12
- package/dist/components/Company/index.js.map +1 -1
- package/dist/components/Contractor/Address/Address.js +3 -4
- package/dist/components/Contractor/Address/Address.js.map +1 -1
- package/dist/components/Contractor/Address/Form.js +6 -7
- package/dist/components/Contractor/Address/Form.js.map +1 -1
- package/dist/components/Contractor/Address/Head.js +7 -6
- package/dist/components/Contractor/Address/Head.js.map +1 -1
- package/dist/components/Contractor/Address/useAddress.js +8 -5
- package/dist/components/Contractor/Address/useAddress.js.map +1 -1
- package/dist/components/Contractor/ContractorList/index.js +17 -17
- package/dist/components/Contractor/PaymentMethod/BankAccountForm.js +3 -2
- package/dist/components/Contractor/PaymentMethod/BankAccountForm.js.map +1 -1
- package/dist/components/Contractor/PaymentMethod/PaymentTypeForm.js +1 -1
- package/dist/components/Contractor/Payments/CreatePayment/CreatePaymentPresentation.js +3 -2
- package/dist/components/Contractor/Payments/CreatePayment/CreatePaymentPresentation.js.map +1 -1
- package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentPresentation.js +2 -3
- package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentPresentation.js.map +1 -1
- package/dist/components/Contractor/Payments/CreatePayment/FastAchSubmissionBlockerBanner.js +6 -5
- package/dist/components/Contractor/Payments/CreatePayment/FastAchSubmissionBlockerBanner.js.map +1 -1
- package/dist/components/Contractor/Payments/CreatePayment/PreviewPresentation.js +1 -1
- package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistoryPresentation.js +3 -2
- package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistoryPresentation.js.map +1 -1
- package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatementPresentation.js +3 -2
- package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatementPresentation.js.map +1 -1
- package/dist/components/Contractor/Payments/PaymentSummary/PaymentSummaryPresentation.js +3 -2
- package/dist/components/Contractor/Payments/PaymentSummary/PaymentSummaryPresentation.js.map +1 -1
- package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.js +8 -7
- package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.js.map +1 -1
- package/dist/components/Contractor/Profile/useContractorProfile.js +34 -33
- package/dist/components/Contractor/Profile/useContractorProfile.js.map +1 -1
- package/dist/components/Contractor/Submit/Submit.js +1 -1
- package/dist/components/Employee/Compensation/Compensation.d.ts +7 -4
- package/dist/components/Employee/Compensation/Compensation.js +72 -179
- package/dist/components/Employee/Compensation/Compensation.js.map +1 -1
- package/dist/components/Employee/Compensation/CompensationFlowComponents.d.ts +27 -0
- package/dist/components/Employee/Compensation/CompensationFlowComponents.js +61 -0
- package/dist/components/Employee/Compensation/CompensationFlowComponents.js.map +1 -0
- package/dist/components/Employee/Compensation/EditCompensation/EditCompensation.d.ts +14 -0
- package/dist/components/Employee/Compensation/EditCompensation/EditCompensation.js +128 -0
- package/dist/components/Employee/Compensation/EditCompensation/EditCompensation.js.map +1 -0
- package/dist/components/Employee/Compensation/EditCompensation/EditCompensationPresentation.d.ts +17 -0
- package/dist/components/Employee/Compensation/EditCompensation/EditCompensationPresentation.js +224 -0
- package/dist/components/Employee/Compensation/EditCompensation/EditCompensationPresentation.js.map +1 -0
- package/dist/components/Employee/Compensation/EditCompensation/index.d.ts +5 -0
- package/dist/components/Employee/Compensation/JobsList/JobsList.d.ts +5 -0
- package/dist/components/Employee/Compensation/JobsList/JobsList.js +47 -0
- package/dist/components/Employee/Compensation/JobsList/JobsList.js.map +1 -0
- package/dist/components/Employee/Compensation/JobsList/JobsListPresentation.d.ts +11 -0
- package/dist/components/Employee/Compensation/JobsList/JobsListPresentation.js +98 -0
- package/dist/components/Employee/Compensation/JobsList/JobsListPresentation.js.map +1 -0
- package/dist/components/Employee/Compensation/JobsList/index.d.ts +5 -0
- package/dist/components/Employee/Compensation/{useCompensation.d.ts → compensationSchema.d.ts} +0 -22
- package/dist/components/Employee/Compensation/{useCompensation.js → compensationSchema.js} +9 -12
- package/dist/components/Employee/Compensation/compensationSchema.js.map +1 -0
- package/dist/components/Employee/Compensation/compensationStateMachine.d.ts +6 -0
- package/dist/components/Employee/Compensation/compensationStateMachine.js +73 -0
- package/dist/components/Employee/Compensation/compensationStateMachine.js.map +1 -0
- package/dist/components/Employee/Compensation/shared/useCompensationForm/compensationSchema.d.ts +62 -36
- package/dist/components/Employee/Compensation/shared/useCompensationForm/compensationSchema.js +81 -57
- package/dist/components/Employee/Compensation/shared/useCompensationForm/compensationSchema.js.map +1 -1
- package/dist/components/Employee/Compensation/shared/useCompensationForm/fields.d.ts +5 -12
- package/dist/components/Employee/Compensation/shared/useCompensationForm/fields.js +22 -35
- package/dist/components/Employee/Compensation/shared/useCompensationForm/fields.js.map +1 -1
- package/dist/components/Employee/Compensation/shared/useCompensationForm/index.d.ts +5 -3
- package/dist/components/Employee/Compensation/shared/useCompensationForm/useCompensationForm.d.ts +55 -13
- package/dist/components/Employee/Compensation/shared/useCompensationForm/useCompensationForm.js +216 -226
- package/dist/components/Employee/Compensation/shared/useCompensationForm/useCompensationForm.js.map +1 -1
- package/dist/components/Employee/Compensation/shared/useCompensationForm/useCurrentCompensationForm.d.ts +15 -0
- package/dist/components/Employee/Compensation/shared/useCompensationForm/useCurrentCompensationForm.js +27 -0
- package/dist/components/Employee/Compensation/shared/useCompensationForm/useCurrentCompensationForm.js.map +1 -0
- package/dist/components/Employee/Compensation/shared/useJobForm/fields.d.ts +19 -0
- package/dist/components/Employee/Compensation/shared/useJobForm/fields.js +29 -0
- package/dist/components/Employee/Compensation/shared/useJobForm/fields.js.map +1 -0
- package/dist/components/Employee/Compensation/shared/useJobForm/index.d.ts +7 -0
- package/dist/components/Employee/Compensation/shared/useJobForm/jobSchema.d.ts +43 -0
- package/dist/components/Employee/Compensation/shared/useJobForm/jobSchema.js +37 -0
- package/dist/components/Employee/Compensation/shared/useJobForm/jobSchema.js.map +1 -0
- package/dist/components/Employee/Compensation/shared/useJobForm/useCurrentJobForm.d.ts +13 -0
- package/dist/components/Employee/Compensation/shared/useJobForm/useCurrentJobForm.js +26 -0
- package/dist/components/Employee/Compensation/shared/useJobForm/useCurrentJobForm.js.map +1 -0
- package/dist/components/Employee/Compensation/shared/useJobForm/useJobForm.d.ts +56 -0
- package/dist/components/Employee/Compensation/shared/useJobForm/useJobForm.js +180 -0
- package/dist/components/Employee/Compensation/shared/useJobForm/useJobForm.js.map +1 -0
- package/dist/components/Employee/Dashboard/BasicDetailsView.js +15 -13
- package/dist/components/Employee/Dashboard/BasicDetailsView.js.map +1 -1
- package/dist/components/Employee/Dashboard/DashboardComponents.d.ts +3 -0
- package/dist/components/Employee/Dashboard/DashboardComponents.js +33 -15
- package/dist/components/Employee/Dashboard/DashboardComponents.js.map +1 -1
- package/dist/components/Employee/Dashboard/DocumentsView.js +13 -11
- package/dist/components/Employee/Dashboard/DocumentsView.js.map +1 -1
- package/dist/components/Employee/Dashboard/JobAndPayView.js +11 -9
- package/dist/components/Employee/Dashboard/JobAndPayView.js.map +1 -1
- package/dist/components/Employee/Dashboard/TaxesView.js +21 -19
- package/dist/components/Employee/Dashboard/TaxesView.js.map +1 -1
- package/dist/components/Employee/Dashboard/dashboardStateMachine.d.ts +3 -0
- package/dist/components/Employee/Dashboard/dashboardStateMachine.js +54 -33
- package/dist/components/Employee/Dashboard/dashboardStateMachine.js.map +1 -1
- package/dist/components/Employee/Deductions/DeductionsForm/ChildSupportForm.js +14 -11
- package/dist/components/Employee/Deductions/DeductionsForm/ChildSupportForm.js.map +1 -1
- package/dist/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.js +36 -33
- package/dist/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.js.map +1 -1
- package/dist/components/Employee/Deductions/DeductionsForm/GarnishmentForm.js +6 -3
- package/dist/components/Employee/Deductions/DeductionsForm/GarnishmentForm.js.map +1 -1
- package/dist/components/Employee/Deductions/DeductionsList/DeductionsList.js +1 -1
- package/dist/components/Employee/Deductions/IncludeDeductions/IncludeDeductions.js +2 -3
- package/dist/components/Employee/Deductions/IncludeDeductions/IncludeDeductions.js.map +1 -1
- package/dist/components/Employee/DocumentSigner/DocumentList/Actions.js +7 -6
- package/dist/components/Employee/DocumentSigner/DocumentList/Actions.js.map +1 -1
- package/dist/components/Employee/DocumentSigner/DocumentList/DocumentList.js +7 -8
- package/dist/components/Employee/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
- package/dist/components/Employee/DocumentSigner/DocumentList/List.js +3 -2
- package/dist/components/Employee/DocumentSigner/DocumentList/List.js.map +1 -1
- package/dist/components/Employee/DocumentSigner/DocumentList/useDocumentList.js +6 -3
- package/dist/components/Employee/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
- package/dist/components/Employee/DocumentSigner/EmploymentEligibility/EmploymentEligibilityPresentation.js +3 -2
- package/dist/components/Employee/DocumentSigner/EmploymentEligibility/EmploymentEligibilityPresentation.js.map +1 -1
- package/dist/components/Employee/DocumentSigner/shared/useSignEmployeeForm/useSignEmployeeForm.js +69 -68
- package/dist/components/Employee/DocumentSigner/shared/useSignEmployeeForm/useSignEmployeeForm.js.map +1 -1
- package/dist/components/Employee/EmployeeDocuments/EmployeeDocumentsPresentation.js +3 -2
- package/dist/components/Employee/EmployeeDocuments/EmployeeDocumentsPresentation.js.map +1 -1
- package/dist/components/Employee/EmployeeList/management/ManagementEmployeeListView.js +8 -7
- package/dist/components/Employee/EmployeeList/management/ManagementEmployeeListView.js.map +1 -1
- package/dist/components/Employee/EmployeeList/onboarding/EmployeeListView.js +18 -17
- package/dist/components/Employee/EmployeeList/onboarding/EmployeeListView.js.map +1 -1
- package/dist/components/Employee/FederalTaxes/index.d.ts +3 -1
- package/dist/components/Employee/FederalTaxes/management/FederalTaxes.d.ts +8 -0
- package/dist/components/Employee/FederalTaxes/management/FederalTaxes.js +71 -0
- package/dist/components/Employee/FederalTaxes/management/FederalTaxes.js.map +1 -0
- package/dist/components/Employee/FederalTaxes/management/index.d.ts +2 -0
- package/dist/components/Employee/FederalTaxes/onboarding/FederalTaxes.d.ts +8 -0
- package/dist/components/Employee/FederalTaxes/onboarding/FederalTaxes.js +55 -0
- package/dist/components/Employee/FederalTaxes/onboarding/FederalTaxes.js.map +1 -0
- package/dist/components/Employee/FederalTaxes/onboarding/index.d.ts +2 -0
- package/dist/components/Employee/FederalTaxes/shared/FederalTaxesView.d.ts +15 -0
- package/dist/components/Employee/FederalTaxes/shared/FederalTaxesView.js +104 -0
- package/dist/components/Employee/FederalTaxes/shared/FederalTaxesView.js.map +1 -0
- package/dist/components/Employee/FederalTaxes/shared/index.d.ts +3 -0
- package/dist/components/Employee/FederalTaxes/shared/useFederalTaxesForm/federalTaxesSchema.d.ts +41 -0
- package/dist/components/Employee/FederalTaxes/shared/useFederalTaxesForm/federalTaxesSchema.js +40 -0
- package/dist/components/Employee/FederalTaxes/shared/useFederalTaxesForm/federalTaxesSchema.js.map +1 -0
- package/dist/components/Employee/FederalTaxes/shared/useFederalTaxesForm/fields.d.ts +18 -0
- package/dist/components/Employee/FederalTaxes/shared/useFederalTaxesForm/fields.js +31 -0
- package/dist/components/Employee/FederalTaxes/shared/useFederalTaxesForm/fields.js.map +1 -0
- package/dist/components/Employee/FederalTaxes/shared/useFederalTaxesForm/index.d.ts +5 -0
- package/dist/components/Employee/FederalTaxes/shared/useFederalTaxesForm/useFederalTaxesForm.d.ts +37 -0
- package/dist/components/Employee/FederalTaxes/shared/useFederalTaxesForm/useFederalTaxesForm.js +140 -0
- package/dist/components/Employee/FederalTaxes/shared/useFederalTaxesForm/useFederalTaxesForm.js.map +1 -0
- package/dist/components/Employee/HomeAddress/management/HomeAddressView.js +2 -3
- package/dist/components/Employee/HomeAddress/management/HomeAddressView.js.map +1 -1
- package/dist/components/Employee/Landing/Landing.js +8 -8
- package/dist/components/Employee/OnboardingFlow/OnboardingFlowComponents.d.ts +1 -1
- package/dist/components/Employee/OnboardingFlow/OnboardingFlowComponents.js +2 -2
- package/dist/components/Employee/OnboardingFlow/OnboardingFlowComponents.js.map +1 -1
- package/dist/components/Employee/OnboardingFlow/onboardingStateMachine.js +1 -1
- package/dist/components/Employee/OnboardingFlow/onboardingStateMachine.js.map +1 -1
- package/dist/components/Employee/OnboardingSummary/OnboardingSummary.js +7 -7
- package/dist/components/Employee/PaymentMethod/Actions.js +6 -5
- package/dist/components/Employee/PaymentMethod/Actions.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/BankAccountEdit.js +1 -1
- package/dist/components/Employee/PaymentMethod/BankAccountsList.js +4 -4
- package/dist/components/Employee/PaymentMethod/PaymentTypeForm.js +1 -1
- package/dist/components/Employee/PaymentMethod/Split.js +1 -1
- package/dist/components/Employee/PaymentMethod/usePaymentMethod.js +8 -5
- package/dist/components/Employee/PaymentMethod/usePaymentMethod.js.map +1 -1
- package/dist/components/Employee/Profile/management/Profile.d.ts +6 -0
- package/dist/components/Employee/Profile/management/Profile.js +122 -0
- package/dist/components/Employee/Profile/management/Profile.js.map +1 -0
- package/dist/components/Employee/Profile/management/Profile.module.scss.js +8 -0
- package/dist/components/Employee/Profile/management/Profile.module.scss.js.map +1 -0
- package/dist/components/Employee/Profile/{AdminProfile.js → onboarding/AdminProfile.js} +15 -15
- package/dist/components/Employee/Profile/onboarding/AdminProfile.js.map +1 -0
- package/dist/components/Employee/Profile/{EmployeeProfile.js → onboarding/EmployeeProfile.js} +14 -14
- package/dist/components/Employee/Profile/onboarding/EmployeeProfile.js.map +1 -0
- package/dist/components/Employee/Profile/{Profile.d.ts → onboarding/Profile.d.ts} +2 -2
- package/dist/components/Employee/Profile/{Profile.js → onboarding/Profile.js} +4 -4
- package/dist/components/Employee/Profile/onboarding/Profile.js.map +1 -0
- package/dist/components/Employee/Profile/shared/useEmployeeDetailsForm/useEmployeeDetailsForm.d.ts +9 -4
- package/dist/components/Employee/Profile/shared/useEmployeeDetailsForm/useEmployeeDetailsForm.js +61 -58
- package/dist/components/Employee/Profile/shared/useEmployeeDetailsForm/useEmployeeDetailsForm.js.map +1 -1
- package/dist/components/Employee/Profile/shared/useHomeAddressForm/useHomeAddressForm.js +40 -39
- package/dist/components/Employee/Profile/shared/useHomeAddressForm/useHomeAddressForm.js.map +1 -1
- package/dist/components/Employee/Profile/shared/useWorkAddressForm/useWorkAddressForm.js +47 -46
- package/dist/components/Employee/Profile/shared/useWorkAddressForm/useWorkAddressForm.js.map +1 -1
- package/dist/components/Employee/SelfOnboardingFlow/SelfOnboardingComponents.js +14 -14
- package/dist/components/Employee/SelfOnboardingFlow/SelfOnboardingComponents.js.map +1 -1
- package/dist/components/Employee/StateTaxes/index.d.ts +2 -1
- package/dist/components/Employee/StateTaxes/management/StateTaxes.d.ts +6 -0
- package/dist/components/Employee/StateTaxes/management/StateTaxes.js +59 -0
- package/dist/components/Employee/StateTaxes/management/StateTaxes.js.map +1 -0
- package/dist/components/Employee/StateTaxes/management/index.d.ts +2 -0
- package/dist/components/Employee/StateTaxes/onboarding/StateTaxes.d.ts +8 -0
- package/dist/components/Employee/StateTaxes/onboarding/StateTaxes.js +49 -0
- package/dist/components/Employee/StateTaxes/onboarding/StateTaxes.js.map +1 -0
- package/dist/components/Employee/StateTaxes/onboarding/index.d.ts +2 -0
- package/dist/components/Employee/StateTaxes/shared/EmployeeStateTaxesView.d.ts +14 -0
- package/dist/components/Employee/StateTaxes/shared/EmployeeStateTaxesView.js +32 -0
- package/dist/components/Employee/StateTaxes/shared/EmployeeStateTaxesView.js.map +1 -0
- package/dist/components/Employee/StateTaxes/shared/index.d.ts +3 -0
- package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/__fixtures__/stateTaxesFixtures.d.ts +8 -0
- package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/__fixtures__/toWireFormat.d.ts +36 -0
- package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/employeeStateTaxesSchema.d.ts +56 -0
- package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/employeeStateTaxesSchema.js +116 -0
- package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/employeeStateTaxesSchema.js.map +1 -0
- package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/fieldComponents.d.ts +12 -0
- package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/fieldComponents.js +76 -0
- package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/fieldComponents.js.map +1 -0
- package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/fieldMapping.d.ts +14 -0
- package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/fieldMapping.js +23 -0
- package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/fieldMapping.js.map +1 -0
- package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/fieldMeta.d.ts +6 -0
- package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/fieldProps.d.ts +39 -0
- package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/fields.d.ts +46 -0
- package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/fields.js +93 -0
- package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/fields.js.map +1 -0
- package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/index.d.ts +6 -0
- package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/useEmployeeStateTaxesForm.d.ts +36 -0
- package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/useEmployeeStateTaxesForm.js +159 -0
- package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/useEmployeeStateTaxesForm.js.map +1 -0
- package/dist/components/Employee/Taxes/Actions.js +9 -8
- package/dist/components/Employee/Taxes/Actions.js.map +1 -1
- package/dist/components/Employee/Taxes/FederalForm.js +5 -4
- package/dist/components/Employee/Taxes/FederalForm.js.map +1 -1
- package/dist/components/Employee/Taxes/useTaxes.js +6 -3
- package/dist/components/Employee/Taxes/useTaxes.js.map +1 -1
- package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.js +3 -2
- package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.js.map +1 -1
- package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlowComponents.js +4 -4
- package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.js +3 -2
- package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.js.map +1 -1
- package/dist/components/Employee/WorkAddress/management/WorkAddressView.js +2 -3
- package/dist/components/Employee/WorkAddress/management/WorkAddressView.js.map +1 -1
- package/dist/components/Employee/exports/employeeManagement.d.ts +3 -0
- package/dist/components/Employee/exports/employeeManagement.js +16 -10
- package/dist/components/Employee/exports/employeeManagement.js.map +1 -1
- package/dist/components/Employee/exports/employeeOnboarding.d.ts +3 -3
- package/dist/components/Employee/exports/employeeOnboarding.js +19 -19
- package/dist/components/Employee/index.d.ts +2 -1
- package/dist/components/Employee/index.js +37 -37
- package/dist/components/Flow/FlowHeader.js +8 -8
- package/dist/components/Flow/FlowHeader.js.map +1 -1
- package/dist/components/InformationRequests/InformationRequestForm/InformationRequestForm.js +47 -46
- package/dist/components/InformationRequests/InformationRequestForm/InformationRequestForm.js.map +1 -1
- package/dist/components/InformationRequests/InformationRequestList/InformationRequestList.js +4 -4
- package/dist/components/InformationRequests/InformationRequests.js +1 -1
- package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.js +3 -2
- package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.js.map +1 -1
- package/dist/components/Payroll/GrossUpModal/GrossUpModal.js +22 -20
- package/dist/components/Payroll/GrossUpModal/GrossUpModal.js.map +1 -1
- package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.js +3 -2
- package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.js.map +1 -1
- package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormPresentation.js +1 -0
- package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormPresentation.js.map +1 -1
- package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.js +7 -6
- package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.js.map +1 -1
- package/dist/components/Payroll/OffCycleTaxWithholdingModal/OffCycleTaxWithholdingModal.js +3 -2
- package/dist/components/Payroll/OffCycleTaxWithholdingModal/OffCycleTaxWithholdingModal.js.map +1 -1
- package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerAlerts.js +9 -8
- package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerAlerts.js.map +1 -1
- package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerList.js +12 -12
- package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js +2 -3
- package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js +2 -3
- package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollEditEmployee/TimeOffField.js +17 -16
- package/dist/components/Payroll/PayrollEditEmployee/TimeOffField.js.map +1 -1
- package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js +3 -2
- package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollList/PayrollListPresentation.js +3 -2
- package/dist/components/Payroll/PayrollList/PayrollListPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js +2 -3
- package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchSubmissionBlockerBanner.js +3 -2
- package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchSubmissionBlockerBanner.js.map +1 -1
- package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.js +3 -2
- package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.js.map +1 -1
- package/dist/components/Payroll/RecoveryCases/RecoveryCasesList/RecoveryCasesList.js +4 -4
- package/dist/components/Payroll/RecoveryCases/RecoveryCasesResubmit/RecoveryCasesResubmit.js +6 -6
- package/dist/components/Payroll/RecoveryCases/useRecoveryCaseErrorCode.js +3 -2
- package/dist/components/Payroll/RecoveryCases/useRecoveryCaseErrorCode.js.map +1 -1
- package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.js +3 -2
- package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.js.map +1 -1
- package/dist/components/Payroll/usePreparedPayrollData.js +13 -10
- package/dist/components/Payroll/usePreparedPayrollData.js.map +1 -1
- package/dist/components/TimeOff/AddEmployeesHoliday/AddEmployeesHoliday.js.map +1 -0
- package/dist/components/{UNSTABLE_TimeOff → TimeOff}/AddEmployeesToPolicy/AddEmployeesToPolicy.d.ts +2 -0
- package/dist/components/{UNSTABLE_TimeOff → TimeOff}/AddEmployeesToPolicy/AddEmployeesToPolicy.js +3 -2
- package/dist/components/TimeOff/AddEmployeesToPolicy/AddEmployeesToPolicy.js.map +1 -0
- package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetail.d.ts +6 -0
- package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetail.js +149 -0
- package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetail.js.map +1 -0
- package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailPresentation.d.ts +2 -0
- package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailPresentation.js +80 -0
- package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailPresentation.js.map +1 -0
- package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailTypes.d.ts +21 -0
- package/dist/components/TimeOff/HolidayPolicyDetail/index.d.ts +5 -0
- package/dist/components/{UNSTABLE_TimeOff → TimeOff}/HolidaySelectionForm/HolidaySelectionForm.d.ts +1 -0
- package/dist/components/TimeOff/HolidaySelectionForm/HolidaySelectionForm.js +115 -0
- package/dist/components/TimeOff/HolidaySelectionForm/HolidaySelectionForm.js.map +1 -0
- package/dist/components/{UNSTABLE_TimeOff → TimeOff}/HolidaySelectionForm/HolidaySelectionFormPresentation.js +9 -7
- package/dist/components/TimeOff/HolidaySelectionForm/HolidaySelectionFormPresentation.js.map +1 -0
- package/dist/components/{UNSTABLE_TimeOff → TimeOff}/HolidaySelectionForm/HolidaySelectionFormTypes.d.ts +2 -0
- package/dist/components/TimeOff/PolicyList/PolicyList.js +103 -0
- package/dist/components/TimeOff/PolicyList/PolicyList.js.map +1 -0
- package/dist/components/TimeOff/PolicyList/PolicyListPresentation.js +135 -0
- package/dist/components/TimeOff/PolicyList/PolicyListPresentation.js.map +1 -0
- package/dist/components/{UNSTABLE_TimeOff → TimeOff}/PolicyList/PolicyListTypes.d.ts +1 -1
- package/dist/components/TimeOff/PolicySettings/PolicySettings.js +70 -0
- package/dist/components/TimeOff/PolicySettings/PolicySettings.js.map +1 -0
- package/dist/components/TimeOff/PolicySettings/PolicySettings.module.scss.js +16 -0
- package/dist/components/TimeOff/PolicySettings/PolicySettingsPresentation.js +164 -0
- package/dist/components/TimeOff/PolicySettings/PolicySettingsPresentation.js.map +1 -0
- package/dist/components/{UNSTABLE_TimeOff → TimeOff}/PolicySettings/PolicySettingsTypes.d.ts +1 -1
- package/dist/components/TimeOff/PolicyTypeSelector/PolicyTypeSelector.js +31 -0
- package/dist/components/TimeOff/PolicyTypeSelector/PolicyTypeSelector.js.map +1 -0
- package/dist/components/{UNSTABLE_TimeOff → TimeOff}/PolicyTypeSelector/PolicyTypeSelectorPresentation.d.ts +1 -1
- package/dist/components/TimeOff/PolicyTypeSelector/PolicyTypeSelectorPresentation.js +68 -0
- package/dist/components/TimeOff/PolicyTypeSelector/PolicyTypeSelectorPresentation.js.map +1 -0
- package/dist/components/{UNSTABLE_TimeOff → TimeOff}/PolicyTypeSelector/PolicyTypeSelectorTypes.d.ts +1 -0
- package/dist/components/TimeOff/TimeOffFlow/TimeOffFlow.js.map +1 -0
- package/dist/components/{UNSTABLE_TimeOff → TimeOff}/TimeOffFlow/TimeOffFlowComponents.d.ts +3 -3
- package/dist/components/TimeOff/TimeOffFlow/TimeOffFlowComponents.js +117 -0
- package/dist/components/TimeOff/TimeOffFlow/TimeOffFlowComponents.js.map +1 -0
- package/dist/components/TimeOff/TimeOffFlow/timeOffPolicyTypes.d.ts +9 -0
- package/dist/components/TimeOff/TimeOffFlow/timeOffPolicyTypes.js +25 -0
- package/dist/components/TimeOff/TimeOffFlow/timeOffPolicyTypes.js.map +1 -0
- package/dist/components/{UNSTABLE_TimeOff → TimeOff}/TimeOffFlow/timeOffStateMachine.d.ts +4 -2
- package/dist/components/TimeOff/TimeOffFlow/timeOffStateMachine.js +487 -0
- package/dist/components/TimeOff/TimeOffFlow/timeOffStateMachine.js.map +1 -0
- package/dist/components/{UNSTABLE_TimeOff → TimeOff}/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationForm.d.ts +1 -0
- package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationForm.js +158 -0
- package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationForm.js.map +1 -0
- package/dist/components/{UNSTABLE_TimeOff → TimeOff}/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormPresentation.js +85 -76
- package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormPresentation.js.map +1 -0
- package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesHoliday.d.ts +6 -0
- package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesHoliday.js +143 -0
- package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesHoliday.js.map +1 -0
- package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentation.d.ts +2 -0
- package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentation.js +103 -0
- package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentation.js.map +1 -0
- package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentationTypes.d.ts +41 -0
- package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesTimeOff.d.ts +9 -0
- package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesTimeOff.js +216 -0
- package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesTimeOff.js.map +1 -0
- package/dist/components/{UNSTABLE_TimeOff → TimeOff}/TimeOffManagement/SelectEmployees/useSelectEmployeesData.d.ts +2 -1
- package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/useSelectEmployeesData.js +64 -0
- package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/useSelectEmployeesData.js.map +1 -0
- package/dist/components/TimeOff/TimeOffPolicyDetail/EditEmployeeBalanceModal.d.ts +9 -0
- package/dist/components/TimeOff/TimeOffPolicyDetail/EditEmployeeBalanceModal.js +56 -0
- package/dist/components/TimeOff/TimeOffPolicyDetail/EditEmployeeBalanceModal.js.map +1 -0
- package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetail.d.ts +5 -0
- package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetail.js +251 -0
- package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetail.js.map +1 -0
- package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetail.module.scss.js +10 -0
- package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetail.module.scss.js.map +1 -0
- package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetailPresentation.d.ts +2 -0
- package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetailPresentation.js +143 -0
- package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetailPresentation.js.map +1 -0
- package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetailTypes.d.ts +52 -0
- package/dist/components/TimeOff/TimeOffPolicyDetail/index.d.ts +7 -0
- package/dist/components/TimeOff/ViewHolidayEmployees/ViewHolidayEmployees.js +9 -0
- package/dist/components/TimeOff/ViewHolidayEmployees/ViewHolidayEmployees.js.map +1 -0
- package/dist/components/TimeOff/ViewHolidayPolicyDetails/ViewHolidayPolicyDetails.d.ts +6 -0
- package/dist/components/TimeOff/ViewHolidayPolicyDetails/ViewHolidayPolicyDetails.js +9 -0
- package/dist/components/TimeOff/ViewHolidayPolicyDetails/ViewHolidayPolicyDetails.js.map +1 -0
- package/dist/components/TimeOff/ViewHolidaySchedule/ViewHolidaySchedule.js +9 -0
- package/dist/components/TimeOff/ViewHolidaySchedule/ViewHolidaySchedule.js.map +1 -0
- package/dist/components/{UNSTABLE_TimeOff → TimeOff}/index.d.ts +5 -4
- package/dist/components/TimeOff/index.js +27 -0
- package/dist/components/TimeOff/shared/EmployeeTable/EmployeeTable.d.ts +2 -0
- package/dist/components/TimeOff/shared/EmployeeTable/EmployeeTable.js +95 -0
- package/dist/components/TimeOff/shared/EmployeeTable/EmployeeTable.js.map +1 -0
- package/dist/components/{UNSTABLE_TimeOff → TimeOff}/shared/EmployeeTable/EmployeeTableTypes.d.ts +2 -0
- package/dist/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayout.d.ts +3 -0
- package/dist/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayout.js +86 -0
- package/dist/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayout.js.map +1 -0
- package/dist/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayoutTypes.d.ts +27 -0
- package/dist/components/TimeOff/shared/PolicyDetailLayout/index.d.ts +3 -0
- package/dist/components/{UNSTABLE_TimeOff → TimeOff}/shared/holidayHelpers.d.ts +1 -1
- package/dist/components/{UNSTABLE_TimeOff → TimeOff}/shared/holidayHelpers.js +8 -8
- package/dist/components/TimeOff/shared/holidayHelpers.js.map +1 -0
- package/dist/components/TimeOff/shared/holidayHelpers.test.d.ts +1 -0
- package/dist/components/index.d.ts +1 -1
- package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js +11 -10
- package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js.map +1 -1
- package/dist/helpers/dateFormatting.d.ts +2 -0
- package/dist/helpers/dateFormatting.js +4 -0
- package/dist/helpers/dateFormatting.js.map +1 -1
- package/dist/i18n/I18n.js +11 -10
- package/dist/i18n/I18n.js.map +1 -1
- package/dist/i18n/en/Company.StateTaxes.json.js +1 -1
- package/dist/i18n/en/Company.TimeOff.CreateTimeOffPolicy.json.js +12 -14
- package/dist/i18n/en/Company.TimeOff.CreateTimeOffPolicy.json.js.map +1 -1
- package/dist/i18n/en/Company.TimeOff.HolidayPolicy.json.js +18 -16
- package/dist/i18n/en/Company.TimeOff.HolidayPolicy.json.js.map +1 -1
- package/dist/i18n/en/Company.TimeOff.PolicyDetail.json.js +14 -0
- package/dist/i18n/en/Company.TimeOff.PolicyDetail.json.js.map +1 -0
- package/dist/i18n/en/Company.TimeOff.SelectEmployees.json.js +24 -16
- package/dist/i18n/en/Company.TimeOff.SelectEmployees.json.js.map +1 -1
- package/dist/i18n/en/Company.TimeOff.TimeOffPolicies.json.js +14 -14
- package/dist/i18n/en/Company.TimeOff.TimeOffPolicyDetails.json.js +46 -42
- package/dist/i18n/en/Company.TimeOff.TimeOffPolicyDetails.json.js.map +1 -1
- package/dist/i18n/en/Employee.FederalTaxes.json.js +16 -10
- package/dist/i18n/en/Employee.FederalTaxes.json.js.map +1 -1
- package/dist/i18n/en/Employee.Profile.json.js +24 -20
- package/dist/i18n/en/Employee.Profile.json.js.map +1 -1
- package/dist/i18n/en/Employee.StateTaxes.json.js +14 -6
- package/dist/i18n/en/Employee.StateTaxes.json.js.map +1 -1
- package/dist/i18n/en/Payroll.GrossUpModal.json.js +12 -10
- package/dist/i18n/en/Payroll.GrossUpModal.json.js.map +1 -1
- package/dist/index.d.ts +8 -2
- package/dist/index.js +118 -93
- package/dist/index.js.map +1 -1
- package/dist/partner-hook-utils/form/SDKFormProvider.js +18 -14
- package/dist/partner-hook-utils/form/SDKFormProvider.js.map +1 -1
- package/dist/partner-hook-utils/form/buildFormSchema.js +41 -41
- package/dist/partner-hook-utils/form/buildFormSchema.js.map +1 -1
- package/dist/partner-hook-utils/form/composeSubmitHandler.d.ts +10 -6
- package/dist/partner-hook-utils/form/composeSubmitHandler.js +49 -26
- package/dist/partner-hook-utils/form/composeSubmitHandler.js.map +1 -1
- package/dist/partner-hook-utils/form/fields/CheckboxHookField.d.ts +1 -1
- package/dist/partner-hook-utils/form/fields/CheckboxHookField.js +27 -23
- package/dist/partner-hook-utils/form/fields/CheckboxHookField.js.map +1 -1
- package/dist/partner-hook-utils/form/fields/DatePickerHookField.d.ts +1 -1
- package/dist/partner-hook-utils/form/fields/DatePickerHookField.js +33 -29
- package/dist/partner-hook-utils/form/fields/DatePickerHookField.js.map +1 -1
- package/dist/partner-hook-utils/form/fields/NumberInputHookField.d.ts +1 -1
- package/dist/partner-hook-utils/form/fields/NumberInputHookField.js +37 -33
- package/dist/partner-hook-utils/form/fields/NumberInputHookField.js.map +1 -1
- package/dist/partner-hook-utils/form/fields/RadioGroupHookField.d.ts +1 -1
- package/dist/partner-hook-utils/form/fields/RadioGroupHookField.js +32 -28
- package/dist/partner-hook-utils/form/fields/RadioGroupHookField.js.map +1 -1
- package/dist/partner-hook-utils/form/fields/SelectHookField.d.ts +1 -1
- package/dist/partner-hook-utils/form/fields/SelectHookField.js +34 -30
- package/dist/partner-hook-utils/form/fields/SelectHookField.js.map +1 -1
- package/dist/partner-hook-utils/form/fields/SwitchHookField.d.ts +1 -1
- package/dist/partner-hook-utils/form/fields/SwitchHookField.js +23 -19
- package/dist/partner-hook-utils/form/fields/SwitchHookField.js.map +1 -1
- package/dist/partner-hook-utils/form/fields/TextInputHookField.d.ts +1 -1
- package/dist/partner-hook-utils/form/fields/TextInputHookField.js +31 -27
- package/dist/partner-hook-utils/form/fields/TextInputHookField.js.map +1 -1
- package/dist/partner-hook-utils/form/fields/withFieldElementRegistry.d.ts +10 -0
- package/dist/partner-hook-utils/form/fields/withFieldElementRegistry.js +9 -0
- package/dist/partner-hook-utils/form/fields/withFieldElementRegistry.js.map +1 -0
- package/dist/partner-hook-utils/form/index.d.ts +3 -0
- package/dist/partner-hook-utils/form/resolveFieldError.js +10 -7
- package/dist/partner-hook-utils/form/resolveFieldError.js.map +1 -1
- package/dist/partner-hook-utils/form/useFieldErrorMessage.js +10 -7
- package/dist/partner-hook-utils/form/useFieldErrorMessage.js.map +1 -1
- package/dist/partner-hook-utils/form/useHookFieldResolution.d.ts +10 -3
- package/dist/partner-hook-utils/form/useHookFieldResolution.js +6 -6
- package/dist/partner-hook-utils/form/useHookFieldResolution.js.map +1 -1
- package/dist/partner-hook-utils/form/useHookFormInternals.d.ts +22 -0
- package/dist/partner-hook-utils/form/useHookFormInternals.js +12 -0
- package/dist/partner-hook-utils/form/useHookFormInternals.js.map +1 -0
- package/dist/partner-hook-utils/types.d.ts +15 -0
- package/dist/shared/constants.d.ts +22 -0
- package/dist/shared/constants.js +41 -30
- package/dist/shared/constants.js.map +1 -1
- package/dist/style.css +1 -1
- package/dist/types/i18next.d.ts +62 -14
- package/docs/reference/endpoint-inventory.json +313 -122
- package/package.json +18 -16
- package/dist/components/Employee/Compensation/Actions.d.ts +0 -1
- package/dist/components/Employee/Compensation/Actions.js +0 -39
- package/dist/components/Employee/Compensation/Actions.js.map +0 -1
- package/dist/components/Employee/Compensation/Edit.d.ts +0 -5
- package/dist/components/Employee/Compensation/Edit.js +0 -179
- package/dist/components/Employee/Compensation/Edit.js.map +0 -1
- package/dist/components/Employee/Compensation/Head.d.ts +0 -1
- package/dist/components/Employee/Compensation/Head.js +0 -22
- package/dist/components/Employee/Compensation/Head.js.map +0 -1
- package/dist/components/Employee/Compensation/List.d.ts +0 -1
- package/dist/components/Employee/Compensation/List.js +0 -72
- package/dist/components/Employee/Compensation/List.js.map +0 -1
- package/dist/components/Employee/Compensation/useCompensation.js.map +0 -1
- package/dist/components/Employee/FederalTaxes/Actions.d.ts +0 -1
- package/dist/components/Employee/FederalTaxes/Actions.js +0 -14
- package/dist/components/Employee/FederalTaxes/Actions.js.map +0 -1
- package/dist/components/Employee/FederalTaxes/FederalForm.d.ts +0 -12
- package/dist/components/Employee/FederalTaxes/FederalForm.js +0 -110
- package/dist/components/Employee/FederalTaxes/FederalForm.js.map +0 -1
- package/dist/components/Employee/FederalTaxes/FederalTaxes.d.ts +0 -6
- package/dist/components/Employee/FederalTaxes/FederalTaxes.js +0 -84
- package/dist/components/Employee/FederalTaxes/FederalTaxes.js.map +0 -1
- package/dist/components/Employee/FederalTaxes/Head.d.ts +0 -1
- package/dist/components/Employee/FederalTaxes/Head.js +0 -24
- package/dist/components/Employee/FederalTaxes/Head.js.map +0 -1
- package/dist/components/Employee/FederalTaxes/useFederalTaxes.d.ts +0 -5
- package/dist/components/Employee/FederalTaxes/useFederalTaxes.js +0 -21
- package/dist/components/Employee/FederalTaxes/useFederalTaxes.js.map +0 -1
- package/dist/components/Employee/Profile/AdminProfile.js.map +0 -1
- package/dist/components/Employee/Profile/EmployeeProfile.js.map +0 -1
- package/dist/components/Employee/Profile/Profile.js.map +0 -1
- package/dist/components/Employee/Profile/index.d.ts +0 -2
- package/dist/components/Employee/StateTaxes/Actions.d.ts +0 -1
- package/dist/components/Employee/StateTaxes/Actions.js +0 -14
- package/dist/components/Employee/StateTaxes/Actions.js.map +0 -1
- package/dist/components/Employee/StateTaxes/StateForm.d.ts +0 -6
- package/dist/components/Employee/StateTaxes/StateForm.js +0 -34
- package/dist/components/Employee/StateTaxes/StateForm.js.map +0 -1
- package/dist/components/Employee/StateTaxes/StateTaxes.d.ts +0 -7
- package/dist/components/Employee/StateTaxes/StateTaxes.js +0 -98
- package/dist/components/Employee/StateTaxes/StateTaxes.js.map +0 -1
- package/dist/components/Employee/StateTaxes/useStateTaxes.d.ts +0 -8
- package/dist/components/Employee/StateTaxes/useStateTaxes.js +0 -21
- package/dist/components/Employee/StateTaxes/useStateTaxes.js.map +0 -1
- package/dist/components/UNSTABLE_TimeOff/AddEmployeesHoliday/AddEmployeesHoliday.js.map +0 -1
- package/dist/components/UNSTABLE_TimeOff/AddEmployeesToPolicy/AddEmployeesToPolicy.js.map +0 -1
- package/dist/components/UNSTABLE_TimeOff/HolidaySelectionForm/HolidaySelectionForm.js +0 -49
- package/dist/components/UNSTABLE_TimeOff/HolidaySelectionForm/HolidaySelectionForm.js.map +0 -1
- package/dist/components/UNSTABLE_TimeOff/HolidaySelectionForm/HolidaySelectionFormPresentation.js.map +0 -1
- package/dist/components/UNSTABLE_TimeOff/PolicyList/PolicyList.js +0 -107
- package/dist/components/UNSTABLE_TimeOff/PolicyList/PolicyList.js.map +0 -1
- package/dist/components/UNSTABLE_TimeOff/PolicyList/PolicyListPresentation.js +0 -125
- package/dist/components/UNSTABLE_TimeOff/PolicyList/PolicyListPresentation.js.map +0 -1
- package/dist/components/UNSTABLE_TimeOff/PolicySettings/PolicySettings.js +0 -66
- package/dist/components/UNSTABLE_TimeOff/PolicySettings/PolicySettings.js.map +0 -1
- package/dist/components/UNSTABLE_TimeOff/PolicySettings/PolicySettings.module.scss.js +0 -16
- package/dist/components/UNSTABLE_TimeOff/PolicySettings/PolicySettingsPresentation.js +0 -154
- package/dist/components/UNSTABLE_TimeOff/PolicySettings/PolicySettingsPresentation.js.map +0 -1
- package/dist/components/UNSTABLE_TimeOff/PolicyTypeSelector/PolicyTypeSelector.js +0 -29
- package/dist/components/UNSTABLE_TimeOff/PolicyTypeSelector/PolicyTypeSelector.js.map +0 -1
- package/dist/components/UNSTABLE_TimeOff/PolicyTypeSelector/PolicyTypeSelectorPresentation.js +0 -67
- package/dist/components/UNSTABLE_TimeOff/PolicyTypeSelector/PolicyTypeSelectorPresentation.js.map +0 -1
- package/dist/components/UNSTABLE_TimeOff/TimeOffFlow/TimeOffFlow.js.map +0 -1
- package/dist/components/UNSTABLE_TimeOff/TimeOffFlow/TimeOffFlowComponents.js +0 -112
- package/dist/components/UNSTABLE_TimeOff/TimeOffFlow/TimeOffFlowComponents.js.map +0 -1
- package/dist/components/UNSTABLE_TimeOff/TimeOffFlow/timeOffStateMachine.js +0 -317
- package/dist/components/UNSTABLE_TimeOff/TimeOffFlow/timeOffStateMachine.js.map +0 -1
- package/dist/components/UNSTABLE_TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationForm.js +0 -72
- package/dist/components/UNSTABLE_TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationForm.js.map +0 -1
- package/dist/components/UNSTABLE_TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormPresentation.js.map +0 -1
- package/dist/components/UNSTABLE_TimeOff/TimeOffManagement/SelectEmployees/SelectEmployees.d.ts +0 -2
- package/dist/components/UNSTABLE_TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesHoliday.d.ts +0 -6
- package/dist/components/UNSTABLE_TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesHoliday.js +0 -66
- package/dist/components/UNSTABLE_TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesHoliday.js.map +0 -1
- package/dist/components/UNSTABLE_TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentation.d.ts +0 -2
- package/dist/components/UNSTABLE_TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentation.js +0 -82
- package/dist/components/UNSTABLE_TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentation.js.map +0 -1
- package/dist/components/UNSTABLE_TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentationTypes.d.ts +0 -24
- package/dist/components/UNSTABLE_TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesTimeOff.d.ts +0 -7
- package/dist/components/UNSTABLE_TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesTimeOff.js +0 -70
- package/dist/components/UNSTABLE_TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesTimeOff.js.map +0 -1
- package/dist/components/UNSTABLE_TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesTypes.d.ts +0 -24
- package/dist/components/UNSTABLE_TimeOff/TimeOffManagement/SelectEmployees/useSelectEmployeesData.js +0 -56
- package/dist/components/UNSTABLE_TimeOff/TimeOffManagement/SelectEmployees/useSelectEmployeesData.js.map +0 -1
- package/dist/components/UNSTABLE_TimeOff/ViewHolidayEmployees/ViewHolidayEmployees.js +0 -35
- package/dist/components/UNSTABLE_TimeOff/ViewHolidayEmployees/ViewHolidayEmployees.js.map +0 -1
- package/dist/components/UNSTABLE_TimeOff/ViewHolidaySchedule/ViewHolidaySchedule.js +0 -35
- package/dist/components/UNSTABLE_TimeOff/ViewHolidaySchedule/ViewHolidaySchedule.js.map +0 -1
- package/dist/components/UNSTABLE_TimeOff/ViewPolicyDetails/ViewPolicyDetails.d.ts +0 -5
- package/dist/components/UNSTABLE_TimeOff/ViewPolicyDetails/ViewPolicyDetails.js +0 -35
- package/dist/components/UNSTABLE_TimeOff/ViewPolicyDetails/ViewPolicyDetails.js.map +0 -1
- package/dist/components/UNSTABLE_TimeOff/ViewPolicyEmployees/ViewPolicyEmployees.d.ts +0 -5
- package/dist/components/UNSTABLE_TimeOff/ViewPolicyEmployees/ViewPolicyEmployees.js +0 -35
- package/dist/components/UNSTABLE_TimeOff/ViewPolicyEmployees/ViewPolicyEmployees.js.map +0 -1
- package/dist/components/UNSTABLE_TimeOff/index.js +0 -27
- package/dist/components/UNSTABLE_TimeOff/shared/EmployeeTable/EmployeeTable.d.ts +0 -2
- package/dist/components/UNSTABLE_TimeOff/shared/EmployeeTable/EmployeeTable.js +0 -90
- package/dist/components/UNSTABLE_TimeOff/shared/EmployeeTable/EmployeeTable.js.map +0 -1
- package/dist/components/UNSTABLE_TimeOff/shared/holidayHelpers.js.map +0 -1
- /package/dist/components/Employee/{Compensation/shared/useCompensationForm/compensationSchemaParity.test.d.ts → FederalTaxes/shared/useFederalTaxesForm/federalTaxesSchema.test.d.ts} +0 -0
- /package/dist/components/Employee/Profile/{AdminProfile.d.ts → onboarding/AdminProfile.d.ts} +0 -0
- /package/dist/components/Employee/Profile/{AdminProfile.module.scss.js → onboarding/AdminProfile.module.scss.js} +0 -0
- /package/dist/components/Employee/Profile/{AdminProfile.module.scss.js.map → onboarding/AdminProfile.module.scss.js.map} +0 -0
- /package/dist/components/Employee/Profile/{EmployeeProfile.d.ts → onboarding/EmployeeProfile.d.ts} +0 -0
- /package/dist/components/Employee/Profile/{EmployeeProfile.module.scss.js → onboarding/EmployeeProfile.module.scss.js} +0 -0
- /package/dist/components/Employee/Profile/{EmployeeProfile.module.scss.js.map → onboarding/EmployeeProfile.module.scss.js.map} +0 -0
- /package/dist/components/{UNSTABLE_TimeOff/TimeOffFlow/timeOffStateMachine.test.d.ts → Employee/StateTaxes/shared/useEmployeeStateTaxesForm/employeeStateTaxesSchema.test.d.ts} +0 -0
- /package/dist/components/{UNSTABLE_TimeOff → TimeOff}/AddEmployeesHoliday/AddEmployeesHoliday.d.ts +0 -0
- /package/dist/components/{UNSTABLE_TimeOff → TimeOff}/AddEmployeesHoliday/AddEmployeesHoliday.js +0 -0
- /package/dist/components/{UNSTABLE_TimeOff → TimeOff}/HolidaySelectionForm/HolidaySelectionFormPresentation.d.ts +0 -0
- /package/dist/components/{UNSTABLE_TimeOff → TimeOff}/PolicyList/PolicyList.d.ts +0 -0
- /package/dist/components/{UNSTABLE_TimeOff → TimeOff}/PolicyList/PolicyListPresentation.d.ts +0 -0
- /package/dist/components/{UNSTABLE_TimeOff → TimeOff}/PolicyList/PolicyListPresentation.module.scss.js +0 -0
- /package/dist/components/{UNSTABLE_TimeOff → TimeOff}/PolicyList/PolicyListPresentation.module.scss.js.map +0 -0
- /package/dist/components/{UNSTABLE_TimeOff → TimeOff}/PolicySettings/PolicySettings.d.ts +0 -0
- /package/dist/components/{UNSTABLE_TimeOff → TimeOff}/PolicySettings/PolicySettings.module.scss.js.map +0 -0
- /package/dist/components/{UNSTABLE_TimeOff → TimeOff}/PolicySettings/PolicySettingsPresentation.d.ts +0 -0
- /package/dist/components/{UNSTABLE_TimeOff → TimeOff}/PolicyTypeSelector/PolicyTypeSelector.d.ts +0 -0
- /package/dist/components/{UNSTABLE_TimeOff → TimeOff}/TimeOffFlow/TimeOffFlow.d.ts +0 -0
- /package/dist/components/{UNSTABLE_TimeOff → TimeOff}/TimeOffFlow/TimeOffFlow.js +0 -0
- /package/dist/components/{UNSTABLE_TimeOff → TimeOff}/TimeOffFlow/index.d.ts +0 -0
- /package/dist/components/{UNSTABLE_TimeOff/shared/holidayHelpers.test.d.ts → TimeOff/TimeOffFlow/timeOffStateMachine.test.d.ts} +0 -0
- /package/dist/components/{UNSTABLE_TimeOff → TimeOff}/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationForm.module.scss.js +0 -0
- /package/dist/components/{UNSTABLE_TimeOff → TimeOff}/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationForm.module.scss.js.map +0 -0
- /package/dist/components/{UNSTABLE_TimeOff → TimeOff}/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormPresentation.d.ts +0 -0
- /package/dist/components/{UNSTABLE_TimeOff → TimeOff}/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormTypes.d.ts +0 -0
- /package/dist/components/{UNSTABLE_TimeOff → TimeOff}/TimeOffManagement/PolicyConfigurationForm/index.d.ts +0 -0
- /package/dist/components/{UNSTABLE_TimeOff → TimeOff}/ViewHolidayEmployees/ViewHolidayEmployees.d.ts +0 -0
- /package/dist/components/{UNSTABLE_TimeOff → TimeOff}/ViewHolidaySchedule/ViewHolidaySchedule.d.ts +0 -0
- /package/dist/components/{UNSTABLE_TimeOff → TimeOff}/index.js.map +0 -0
- /package/dist/components/{UNSTABLE_TimeOff → TimeOff}/shared/EmployeeTable/EmployeeTable.module.scss.js +0 -0
- /package/dist/components/{UNSTABLE_TimeOff → TimeOff}/shared/EmployeeTable/EmployeeTable.module.scss.js.map +0 -0
- /package/dist/components/{UNSTABLE_TimeOff → TimeOff}/shared/EmployeeTable/index.d.ts +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"JobAndPayView.js","sources":["../../../../src/components/Employee/Dashboard/JobAndPayView.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport type { Job } from '@gusto/embedded-api/models/components/job'\nimport type { EmployeePaymentMethod } from '@gusto/embedded-api/models/components/employeepaymentmethod'\nimport type { Garnishment } from '@gusto/embedded-api/models/components/garnishment'\nimport type { EmployeeBankAccount } from '@gusto/embedded-api/models/components/employeebankaccount'\nimport type { GetV1EmployeesEmployeeUuidPayStubsResponse } from '@gusto/embedded-api/models/operations/getv1employeesemployeeuuidpaystubs'\nimport type { PaginationControlProps } from '@/components/Common/PaginationControl/PaginationControlTypes'\nimport { Flex } from '@/components/Common/Flex/Flex'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { DataView, useDataView, EmptyData, Loading } from '@/components/Common'\nimport { formatDateLongWithYear } from '@/helpers/dateFormatting'\nimport { useFormatPayRate } from '@/helpers/formattedStrings'\nimport useNumberFormatter from '@/hooks/useNumberFormatter'\nimport PlusCircleIcon from '@/assets/icons/plus-circle.svg?react'\nimport PercentCircleIcon from '@/assets/icons/percent-circle.svg?react'\n\ntype EmployeePayStub = NonNullable<\n GetV1EmployeesEmployeeUuidPayStubsResponse['employeePayStubsList']\n>[number]\n\nexport interface JobAndPayViewProps {\n job?: Job\n paymentMethod?: EmployeePaymentMethod\n bankAccounts?: EmployeeBankAccount[]\n garnishments?: Garnishment[]\n payStubs?: EmployeePayStub[]\n payStubsPagination?: PaginationControlProps\n isLoading?: boolean\n onEditCompensation?: () => void\n onSplitPaycheck?: () => void\n onAddBankAccount?: () => void\n onAddDeduction?: () => void\n}\n\nexport function JobAndPayView({\n job,\n paymentMethod,\n bankAccounts = [],\n garnishments = [],\n payStubs = [],\n payStubsPagination,\n isLoading = false,\n onEditCompensation,\n onSplitPaycheck,\n onAddBankAccount,\n onAddDeduction,\n}: JobAndPayViewProps) {\n const { t } = useTranslation('Employee.Dashboard')\n const Components = useComponentContext()\n const formatPayRate = useFormatPayRate()\n const formatCurrency = useNumberFormatter('currency')\n\n const bankAccountsColumns = [\n {\n key: 'nickname',\n title: t('jobAndPay.payment.nickname'),\n render: (bankAccount: EmployeeBankAccount) => bankAccount.name || '-',\n },\n {\n key: 'routingNumber',\n title: t('jobAndPay.payment.routingNumber'),\n render: (bankAccount: EmployeeBankAccount) => bankAccount.routingNumber || '-',\n },\n {\n key: 'accountType',\n title: t('jobAndPay.payment.accountType'),\n render: (bankAccount: EmployeeBankAccount) => bankAccount.accountType || '-',\n },\n ]\n\n const garnishmentsColumns = [\n {\n key: 'description',\n title: t('jobAndPay.deductions.deduction'),\n render: (garnishment: Garnishment) => garnishment.description || '-',\n },\n {\n key: 'frequency',\n title: t('jobAndPay.deductions.frequency'),\n render: (garnishment: Garnishment) =>\n garnishment.recurring ? t('jobAndPay.deductions.recurring') : '-',\n },\n {\n key: 'amount',\n title: t('jobAndPay.deductions.withhold'),\n render: (garnishment: Garnishment) => {\n if (garnishment.amount && typeof garnishment.amount === 'number') {\n return formatCurrency(garnishment.amount)\n }\n if (garnishment.annualMaximum) {\n return `${garnishment.annualMaximum}% per paycheck`\n }\n return '-'\n },\n },\n ]\n\n const payStubsColumns = [\n {\n key: 'payday',\n title: t('jobAndPay.paystubs.payday'),\n render: (payStub: EmployeePayStub) => formatDateLongWithYear(payStub.checkDate) || '-',\n },\n {\n key: 'checkAmount',\n title: t('jobAndPay.paystubs.checkAmount'),\n render: (payStub: EmployeePayStub) => {\n if (!payStub.netPay) return '-'\n const amount = parseFloat(payStub.netPay)\n return isNaN(amount) ? '-' : formatCurrency(amount)\n },\n },\n {\n key: 'grossPay',\n title: t('jobAndPay.paystubs.grossPay'),\n render: (payStub: EmployeePayStub) => {\n if (!payStub.grossPay) return '-'\n const amount = parseFloat(payStub.grossPay)\n return isNaN(amount) ? '-' : formatCurrency(amount)\n },\n },\n {\n key: 'paymentMethod',\n title: t('jobAndPay.paystubs.paymentMethod'),\n render: () => paymentMethod?.type || t('jobAndPay.paystubs.noPaymentMethod'),\n },\n ]\n\n const bankAccountsDataView = useDataView({\n data: bankAccounts,\n columns: bankAccountsColumns,\n isFetching: false,\n emptyState: () => (\n <EmptyData\n title={t('jobAndPay.payment.emptyState.title')}\n description={t('jobAndPay.payment.emptyState.description')}\n />\n ),\n })\n\n const garnishmentsDataView = useDataView({\n data: garnishments,\n columns: garnishmentsColumns,\n emptyState: () => (\n <EmptyData\n title={t('jobAndPay.deductions.emptyState.title')}\n description={t('jobAndPay.deductions.emptyState.description')}\n />\n ),\n })\n\n const payStubsDataView = useDataView({\n data: payStubs,\n columns: payStubsColumns,\n pagination: payStubsPagination,\n emptyState: () => (\n <EmptyData\n title={t('jobAndPay.paystubs.emptyState.title')}\n description={t('jobAndPay.paystubs.emptyState.description')}\n />\n ),\n })\n if (isLoading) {\n return <Loading />\n }\n return (\n <Flex flexDirection=\"column\" gap={24}>\n <Components.Box\n header={\n <Components.BoxHeader\n title={t('jobAndPay.compensation.title')}\n action={\n <Components.Button variant=\"secondary\" onClick={onEditCompensation}>\n {t('jobAndPay.compensation.editCta')}\n </Components.Button>\n }\n />\n }\n >\n <Flex flexDirection=\"column\" gap={16}>\n <Flex flexDirection=\"column\" gap={12}>\n {job?.title && (\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Text variant=\"supporting\">\n {t('jobAndPay.compensation.jobTitle')}\n </Components.Text>\n <Components.Text>{job.title}</Components.Text>\n </Flex>\n )}\n\n {job?.paymentUnit && (\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Text variant=\"supporting\">\n {t('jobAndPay.compensation.type')}\n </Components.Text>\n <Components.Text>\n {job.paymentUnit === 'Hour'\n ? t('jobAndPay.compensation.types.hourly')\n : job.paymentUnit === 'Salary' || job.paymentUnit === 'Year'\n ? t('jobAndPay.compensation.types.salary')\n : job.paymentUnit}\n </Components.Text>\n </Flex>\n )}\n\n {job?.rate && job.paymentUnit && typeof job.rate === 'number' && (\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Text variant=\"supporting\">\n {t('jobAndPay.compensation.wage')}\n </Components.Text>\n <Components.Text>{formatPayRate(job.rate, job.paymentUnit)}</Components.Text>\n </Flex>\n )}\n\n {job?.hireDate && (\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Text variant=\"supporting\">\n {t('jobAndPay.compensation.startDate')}\n </Components.Text>\n <Components.Text>{formatDateLongWithYear(job.hireDate)}</Components.Text>\n </Flex>\n )}\n </Flex>\n </Flex>\n </Components.Box>\n\n <Components.Box\n header={\n <Components.BoxHeader\n title={t('jobAndPay.payment.title')}\n action={\n <Flex gap={8} alignItems=\"flex-end\">\n <Components.Button\n variant=\"secondary\"\n onClick={onSplitPaycheck}\n icon={<PercentCircleIcon />}\n >\n {t('jobAndPay.payment.splitPaycheckCta')}\n </Components.Button>\n <Components.Button\n variant=\"secondary\"\n onClick={onAddBankAccount}\n icon={<PlusCircleIcon />}\n >\n {t('jobAndPay.payment.addBankAccountCta')}\n </Components.Button>\n </Flex>\n }\n />\n }\n >\n <Flex flexDirection=\"column\" gap={16}>\n <DataView label={t('jobAndPay.payment.listLabel')} {...bankAccountsDataView} />\n </Flex>\n </Components.Box>\n\n <Components.Box\n header={\n <Components.BoxHeader\n title={t('jobAndPay.deductions.title')}\n action={\n <Components.Button\n variant=\"secondary\"\n onClick={onAddDeduction}\n icon={<PlusCircleIcon />}\n >\n {t('jobAndPay.deductions.addDeductionCta')}\n </Components.Button>\n }\n />\n }\n >\n <Flex flexDirection=\"column\" gap={16}>\n <DataView label={t('jobAndPay.deductions.listLabel')} {...garnishmentsDataView} />\n </Flex>\n </Components.Box>\n\n <Components.Box header={<Components.BoxHeader title={t('jobAndPay.paystubs.title')} />}>\n <Flex flexDirection=\"column\" gap={16}>\n <DataView label={t('jobAndPay.paystubs.listLabel')} {...payStubsDataView} />\n </Flex>\n </Components.Box>\n </Flex>\n )\n}\n"],"names":["JobAndPayView","job","paymentMethod","bankAccounts","garnishments","payStubs","payStubsPagination","isLoading","onEditCompensation","onSplitPaycheck","onAddBankAccount","onAddDeduction","useTranslation","Components","useComponentContext","formatPayRate","useFormatPayRate","formatCurrency","useNumberFormatter","bankAccountsColumns","bankAccount","garnishmentsColumns","garnishment","payStubsColumns","payStub","formatDateLongWithYear","amount","bankAccountsDataView","useDataView","jsx","EmptyData","garnishmentsDataView","payStubsDataView","Loading","jsxs","Flex","PercentCircleIcon","PlusCircleIcon","DataView"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"JobAndPayView.js","sources":["../../../../src/components/Employee/Dashboard/JobAndPayView.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport type { Job } from '@gusto/embedded-api/models/components/job'\nimport type { EmployeePaymentMethod } from '@gusto/embedded-api/models/components/employeepaymentmethod'\nimport type { Garnishment } from '@gusto/embedded-api/models/components/garnishment'\nimport type { EmployeeBankAccount } from '@gusto/embedded-api/models/components/employeebankaccount'\nimport type { GetV1EmployeesEmployeeUuidPayStubsResponse } from '@gusto/embedded-api/models/operations/getv1employeesemployeeuuidpaystubs'\nimport type { PaginationControlProps } from '@/components/Common/PaginationControl/PaginationControlTypes'\nimport { Flex } from '@/components/Common/Flex/Flex'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { DataView, useDataView, EmptyData, Loading } from '@/components/Common'\nimport { formatDateLongWithYear } from '@/helpers/dateFormatting'\nimport { useFormatPayRate } from '@/helpers/formattedStrings'\nimport useNumberFormatter from '@/hooks/useNumberFormatter'\nimport PlusCircleIcon from '@/assets/icons/plus-circle.svg?react'\nimport PercentCircleIcon from '@/assets/icons/percent-circle.svg?react'\n\ntype EmployeePayStub = NonNullable<\n GetV1EmployeesEmployeeUuidPayStubsResponse['employeePayStubsList']\n>[number]\n\nexport interface JobAndPayViewProps {\n job?: Job\n paymentMethod?: EmployeePaymentMethod\n bankAccounts?: EmployeeBankAccount[]\n garnishments?: Garnishment[]\n payStubs?: EmployeePayStub[]\n payStubsPagination?: PaginationControlProps\n isLoading?: boolean\n onEditCompensation?: () => void\n onSplitPaycheck?: () => void\n onAddBankAccount?: () => void\n onAddDeduction?: () => void\n}\n\nexport function JobAndPayView({\n job,\n paymentMethod,\n bankAccounts = [],\n garnishments = [],\n payStubs = [],\n payStubsPagination,\n isLoading = false,\n onEditCompensation,\n onSplitPaycheck,\n onAddBankAccount,\n onAddDeduction,\n}: JobAndPayViewProps) {\n const { t } = useTranslation('Employee.Dashboard')\n const Components = useComponentContext()\n const formatPayRate = useFormatPayRate()\n const formatCurrency = useNumberFormatter('currency')\n\n const bankAccountsColumns = [\n {\n key: 'nickname',\n title: t('jobAndPay.payment.nickname'),\n render: (bankAccount: EmployeeBankAccount) => bankAccount.name || '-',\n },\n {\n key: 'routingNumber',\n title: t('jobAndPay.payment.routingNumber'),\n render: (bankAccount: EmployeeBankAccount) => bankAccount.routingNumber || '-',\n },\n {\n key: 'accountType',\n title: t('jobAndPay.payment.accountType'),\n render: (bankAccount: EmployeeBankAccount) => bankAccount.accountType || '-',\n },\n ]\n\n const garnishmentsColumns = [\n {\n key: 'description',\n title: t('jobAndPay.deductions.deduction'),\n render: (garnishment: Garnishment) => garnishment.description || '-',\n },\n {\n key: 'frequency',\n title: t('jobAndPay.deductions.frequency'),\n render: (garnishment: Garnishment) =>\n garnishment.recurring ? t('jobAndPay.deductions.recurring') : '-',\n },\n {\n key: 'amount',\n title: t('jobAndPay.deductions.withhold'),\n render: (garnishment: Garnishment) => {\n if (garnishment.amount && typeof garnishment.amount === 'number') {\n return formatCurrency(garnishment.amount)\n }\n if (garnishment.annualMaximum) {\n return `${garnishment.annualMaximum}% per paycheck`\n }\n return '-'\n },\n },\n ]\n\n const payStubsColumns = [\n {\n key: 'payday',\n title: t('jobAndPay.paystubs.payday'),\n render: (payStub: EmployeePayStub) => formatDateLongWithYear(payStub.checkDate) || '-',\n },\n {\n key: 'checkAmount',\n title: t('jobAndPay.paystubs.checkAmount'),\n render: (payStub: EmployeePayStub) => {\n if (!payStub.netPay) return '-'\n const amount = parseFloat(payStub.netPay)\n return isNaN(amount) ? '-' : formatCurrency(amount)\n },\n },\n {\n key: 'grossPay',\n title: t('jobAndPay.paystubs.grossPay'),\n render: (payStub: EmployeePayStub) => {\n if (!payStub.grossPay) return '-'\n const amount = parseFloat(payStub.grossPay)\n return isNaN(amount) ? '-' : formatCurrency(amount)\n },\n },\n {\n key: 'paymentMethod',\n title: t('jobAndPay.paystubs.paymentMethod'),\n render: () => paymentMethod?.type || t('jobAndPay.paystubs.noPaymentMethod'),\n },\n ]\n\n const bankAccountsDataView = useDataView({\n data: bankAccounts,\n columns: bankAccountsColumns,\n isFetching: false,\n emptyState: () => (\n <EmptyData\n title={t('jobAndPay.payment.emptyState.title')}\n description={t('jobAndPay.payment.emptyState.description')}\n />\n ),\n })\n\n const garnishmentsDataView = useDataView({\n data: garnishments,\n columns: garnishmentsColumns,\n emptyState: () => (\n <EmptyData\n title={t('jobAndPay.deductions.emptyState.title')}\n description={t('jobAndPay.deductions.emptyState.description')}\n />\n ),\n })\n\n const payStubsDataView = useDataView({\n data: payStubs,\n columns: payStubsColumns,\n pagination: payStubsPagination,\n emptyState: () => (\n <EmptyData\n title={t('jobAndPay.paystubs.emptyState.title')}\n description={t('jobAndPay.paystubs.emptyState.description')}\n />\n ),\n })\n if (isLoading) {\n return <Loading />\n }\n return (\n <Flex flexDirection=\"column\" gap={24}>\n <Components.Box\n header={\n <Components.BoxHeader\n title={t('jobAndPay.compensation.title')}\n action={\n <Components.Button variant=\"secondary\" onClick={onEditCompensation}>\n {t('jobAndPay.compensation.editCta')}\n </Components.Button>\n }\n />\n }\n >\n <Flex flexDirection=\"column\" gap={16}>\n <Flex flexDirection=\"column\" gap={12}>\n {job?.title && (\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Text variant=\"supporting\">\n {t('jobAndPay.compensation.jobTitle')}\n </Components.Text>\n <Components.Text>{job.title}</Components.Text>\n </Flex>\n )}\n\n {job?.paymentUnit && (\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Text variant=\"supporting\">\n {t('jobAndPay.compensation.type')}\n </Components.Text>\n <Components.Text>\n {job.paymentUnit === 'Hour'\n ? t('jobAndPay.compensation.types.hourly')\n : job.paymentUnit === 'Salary' || job.paymentUnit === 'Year'\n ? t('jobAndPay.compensation.types.salary')\n : job.paymentUnit}\n </Components.Text>\n </Flex>\n )}\n\n {job?.rate && job.paymentUnit && typeof job.rate === 'number' && (\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Text variant=\"supporting\">\n {t('jobAndPay.compensation.wage')}\n </Components.Text>\n <Components.Text>{formatPayRate(job.rate, job.paymentUnit)}</Components.Text>\n </Flex>\n )}\n\n {job?.hireDate && (\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Text variant=\"supporting\">\n {t('jobAndPay.compensation.startDate')}\n </Components.Text>\n <Components.Text>{formatDateLongWithYear(job.hireDate)}</Components.Text>\n </Flex>\n )}\n </Flex>\n </Flex>\n </Components.Box>\n\n <Components.Box\n header={\n <Components.BoxHeader\n title={t('jobAndPay.payment.title')}\n action={\n <Flex gap={8} alignItems=\"flex-end\">\n <Components.Button\n variant=\"secondary\"\n onClick={onSplitPaycheck}\n icon={<PercentCircleIcon />}\n >\n {t('jobAndPay.payment.splitPaycheckCta')}\n </Components.Button>\n <Components.Button\n variant=\"secondary\"\n onClick={onAddBankAccount}\n icon={<PlusCircleIcon />}\n >\n {t('jobAndPay.payment.addBankAccountCta')}\n </Components.Button>\n </Flex>\n }\n />\n }\n >\n <Flex flexDirection=\"column\" gap={16}>\n <DataView label={t('jobAndPay.payment.listLabel')} {...bankAccountsDataView} />\n </Flex>\n </Components.Box>\n\n <Components.Box\n header={\n <Components.BoxHeader\n title={t('jobAndPay.deductions.title')}\n action={\n <Components.Button\n variant=\"secondary\"\n onClick={onAddDeduction}\n icon={<PlusCircleIcon />}\n >\n {t('jobAndPay.deductions.addDeductionCta')}\n </Components.Button>\n }\n />\n }\n >\n <Flex flexDirection=\"column\" gap={16}>\n <DataView label={t('jobAndPay.deductions.listLabel')} {...garnishmentsDataView} />\n </Flex>\n </Components.Box>\n\n <Components.Box header={<Components.BoxHeader title={t('jobAndPay.paystubs.title')} />}>\n <Flex flexDirection=\"column\" gap={16}>\n <DataView label={t('jobAndPay.paystubs.listLabel')} {...payStubsDataView} />\n </Flex>\n </Components.Box>\n </Flex>\n )\n}\n"],"names":["JobAndPayView","job","paymentMethod","bankAccounts","garnishments","payStubs","payStubsPagination","isLoading","onEditCompensation","onSplitPaycheck","onAddBankAccount","onAddDeduction","useTranslation","Components","useComponentContext","formatPayRate","useFormatPayRate","formatCurrency","useNumberFormatter","bankAccountsColumns","bankAccount","garnishmentsColumns","garnishment","payStubsColumns","payStub","formatDateLongWithYear","amount","bankAccountsDataView","useDataView","jsx","EmptyData","garnishmentsDataView","payStubsDataView","Loading","jsxs","Flex","PercentCircleIcon","PlusCircleIcon","DataView"],"mappings":"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"}
|
|
@@ -2,29 +2,31 @@ import { jsx as t, jsxs as c } from "react/jsx-runtime";
|
|
|
2
2
|
import { useTranslation as f } from "react-i18next";
|
|
3
3
|
import { Flex as o } from "../../Common/Flex/Flex.js";
|
|
4
4
|
import { useComponentContext as y } from "../../../contexts/ComponentAdapter/useComponentContext.js";
|
|
5
|
+
import "classnames";
|
|
6
|
+
import "../../../shared/constants.js";
|
|
5
7
|
import { Loading as D } from "../../Common/Loading/Loading.js";
|
|
6
8
|
import F from "../../../hooks/useNumberFormatter.js";
|
|
7
|
-
function
|
|
9
|
+
function J({
|
|
8
10
|
federalTaxes: e,
|
|
9
11
|
stateTaxes: a,
|
|
10
12
|
isLoading: h = !1,
|
|
11
13
|
onEditFederalTaxes: s,
|
|
12
14
|
onEditStateTaxes: g
|
|
13
15
|
}) {
|
|
14
|
-
const { t: i } = f("Employee.Dashboard"), n = y(),
|
|
16
|
+
const { t: i } = f("Employee.Dashboard"), n = y(), u = F("currency");
|
|
15
17
|
if (h)
|
|
16
18
|
return /* @__PURE__ */ t(D, {});
|
|
17
19
|
const x = (l, r) => {
|
|
18
20
|
if (l.inputQuestionFormat.type === "Select" && l.inputQuestionFormat.options && l.inputQuestionFormat.options.length > 0) {
|
|
19
|
-
const
|
|
20
|
-
if (
|
|
21
|
-
return
|
|
21
|
+
const p = l.inputQuestionFormat.options.find((m) => m.value === r);
|
|
22
|
+
if (p?.label)
|
|
23
|
+
return p.label;
|
|
22
24
|
}
|
|
23
25
|
if (typeof r == "number")
|
|
24
|
-
return l.inputQuestionFormat.type === "Currency" ?
|
|
26
|
+
return l.inputQuestionFormat.type === "Currency" ? u(r) : r;
|
|
25
27
|
if (typeof r == "string" && !isNaN(parseFloat(r))) {
|
|
26
|
-
const
|
|
27
|
-
return l.inputQuestionFormat.type === "Currency" ? p
|
|
28
|
+
const p = parseFloat(r);
|
|
29
|
+
return l.inputQuestionFormat.type === "Currency" ? u(p) : r;
|
|
28
30
|
}
|
|
29
31
|
return typeof r == "boolean" ? i(r ? "common.yes" : "common.no") : r;
|
|
30
32
|
};
|
|
@@ -50,19 +52,19 @@ function A({
|
|
|
50
52
|
] }),
|
|
51
53
|
"dependentsAmount" in e && e.dependentsAmount && /* @__PURE__ */ c(o, { flexDirection: "column", gap: 0, children: [
|
|
52
54
|
/* @__PURE__ */ t(n.Text, { variant: "supporting", children: i("taxes.federal.dependentsAndOtherCredits") }),
|
|
53
|
-
/* @__PURE__ */ t(n.Text, { children:
|
|
55
|
+
/* @__PURE__ */ t(n.Text, { children: u(parseFloat(e.dependentsAmount)) })
|
|
54
56
|
] }),
|
|
55
57
|
"otherIncome" in e && e.otherIncome && /* @__PURE__ */ c(o, { flexDirection: "column", gap: 0, children: [
|
|
56
58
|
/* @__PURE__ */ t(n.Text, { variant: "supporting", children: i("taxes.federal.otherIncome") }),
|
|
57
|
-
/* @__PURE__ */ t(n.Text, { children:
|
|
59
|
+
/* @__PURE__ */ t(n.Text, { children: u(parseFloat(e.otherIncome)) })
|
|
58
60
|
] }),
|
|
59
61
|
"deductions" in e && e.deductions && /* @__PURE__ */ c(o, { flexDirection: "column", gap: 0, children: [
|
|
60
62
|
/* @__PURE__ */ t(n.Text, { variant: "supporting", children: i("taxes.federal.deductions") }),
|
|
61
|
-
/* @__PURE__ */ t(n.Text, { children:
|
|
63
|
+
/* @__PURE__ */ t(n.Text, { children: u(parseFloat(e.deductions)) })
|
|
62
64
|
] }),
|
|
63
65
|
"extraWithholding" in e && e.extraWithholding && /* @__PURE__ */ c(o, { flexDirection: "column", gap: 0, children: [
|
|
64
66
|
/* @__PURE__ */ t(n.Text, { variant: "supporting", children: i("taxes.federal.extraWithholding") }),
|
|
65
|
-
/* @__PURE__ */ t(n.Text, { children:
|
|
67
|
+
/* @__PURE__ */ t(n.Text, { children: u(parseFloat(e.extraWithholding)) })
|
|
66
68
|
] })
|
|
67
69
|
] }) })
|
|
68
70
|
}
|
|
@@ -79,12 +81,12 @@ function A({
|
|
|
79
81
|
),
|
|
80
82
|
children: /* @__PURE__ */ t(o, { flexDirection: "column", gap: 16, children: a && a.length > 0 ? /* @__PURE__ */ t(o, { flexDirection: "column", gap: 24, children: a.map((l, r) => /* @__PURE__ */ c(o, { flexDirection: "column", gap: 16, children: [
|
|
81
83
|
/* @__PURE__ */ t(n.Heading, { as: "h4", children: l.state }),
|
|
82
|
-
l.questions && l.questions.length > 0 && /* @__PURE__ */ t(o, { flexDirection: "column", gap: 12, children: l.questions.map((
|
|
83
|
-
const
|
|
84
|
-
return
|
|
85
|
-
/* @__PURE__ */ t(n.Text, { variant: "supporting", children:
|
|
86
|
-
/* @__PURE__ */ t(n.Text, { children: x(
|
|
87
|
-
] },
|
|
84
|
+
l.questions && l.questions.length > 0 && /* @__PURE__ */ t(o, { flexDirection: "column", gap: 12, children: l.questions.map((p, m) => {
|
|
85
|
+
const d = p.answers[0]?.value;
|
|
86
|
+
return d == null ? null : /* @__PURE__ */ c(o, { flexDirection: "column", gap: 0, children: [
|
|
87
|
+
/* @__PURE__ */ t(n.Text, { variant: "supporting", children: p.label }),
|
|
88
|
+
/* @__PURE__ */ t(n.Text, { children: x(p, d) })
|
|
89
|
+
] }, p.key || m);
|
|
88
90
|
}) })
|
|
89
91
|
] }, l.state || r)) }) : /* @__PURE__ */ t(n.Text, { children: i("taxes.state.noStateTaxes") }) })
|
|
90
92
|
}
|
|
@@ -92,6 +94,6 @@ function A({
|
|
|
92
94
|
] });
|
|
93
95
|
}
|
|
94
96
|
export {
|
|
95
|
-
|
|
97
|
+
J as TaxesView
|
|
96
98
|
};
|
|
97
99
|
//# sourceMappingURL=TaxesView.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaxesView.js","sources":["../../../../src/components/Employee/Dashboard/TaxesView.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport type { GetV1EmployeesEmployeeIdFederalTaxesResponse } from '@gusto/embedded-api/models/operations/getv1employeesemployeeidfederaltaxes'\nimport type { GetV1EmployeesEmployeeIdStateTaxesResponse } from '@gusto/embedded-api/models/operations/getv1employeesemployeeidstatetaxes'\nimport type { EmployeeStateTaxQuestion } from '@gusto/embedded-api/models/components/employeestatetaxquestion'\nimport { Flex } from '@/components/Common/Flex/Flex'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { Loading } from '@/components/Common'\nimport useNumberFormatter from '@/hooks/useNumberFormatter'\n\ntype EmployeeFederalTax = NonNullable<\n GetV1EmployeesEmployeeIdFederalTaxesResponse['employeeFederalTax']\n>\ntype EmployeeStateTax = NonNullable<\n GetV1EmployeesEmployeeIdStateTaxesResponse['employeeStateTaxesList']\n>[number]\n\nexport interface TaxesViewProps {\n federalTaxes?: EmployeeFederalTax\n stateTaxes?: EmployeeStateTax[]\n isLoading?: boolean\n onEditFederalTaxes?: () => void\n onEditStateTaxes?: () => void\n}\n\nexport function TaxesView({\n federalTaxes,\n stateTaxes,\n isLoading = false,\n onEditFederalTaxes,\n onEditStateTaxes,\n}: TaxesViewProps) {\n const { t } = useTranslation('Employee.Dashboard')\n const Components = useComponentContext()\n const formatCurrency = useNumberFormatter('currency')\n\n if (isLoading) {\n return <Loading />\n }\n\n // Helper function to format state tax answer values\n const formatStateTaxAnswer = (\n question: EmployeeStateTaxQuestion,\n answer: string | number | boolean,\n ) => {\n // For Select type questions, look up the label from options\n if (\n question.inputQuestionFormat.type === 'Select' &&\n question.inputQuestionFormat.options &&\n question.inputQuestionFormat.options.length > 0\n ) {\n const option = question.inputQuestionFormat.options.find(opt => opt.value === answer)\n if (option?.label) {\n return option.label\n }\n }\n\n // For numeric values, only format as currency for Currency questions\n if (typeof answer === 'number') {\n if (question.inputQuestionFormat.type === 'Currency') {\n return formatCurrency(answer)\n }\n return answer\n }\n\n // For string currency values (like \"0.0\")\n if (typeof answer === 'string' && !isNaN(parseFloat(answer))) {\n const numValue = parseFloat(answer)\n // Check if this looks like a currency (has decimal point or question type is Currency)\n if (question.inputQuestionFormat.type === 'Currency') {\n return formatCurrency(numValue)\n }\n // For non-currency numeric strings, return as-is\n return answer\n }\n\n // For boolean values\n if (typeof answer === 'boolean') {\n return answer ? t('common.yes') : t('common.no')\n }\n\n // Default: return string value as-is\n return answer\n }\n\n return (\n <Flex flexDirection=\"column\" gap={24}>\n <Components.Box\n header={\n <Components.BoxHeader\n title={t('taxes.federal.title')}\n action={\n <Components.Button variant=\"secondary\" onClick={onEditFederalTaxes}>\n {t('taxes.federal.editCta')}\n </Components.Button>\n }\n />\n }\n >\n <Flex flexDirection=\"column\" gap={16}>\n {federalTaxes && (\n <Flex flexDirection=\"column\" gap={12}>\n {federalTaxes.filingStatus && (\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Text variant=\"supporting\">\n {t('taxes.federal.filingStatus')}\n </Components.Text>\n <Components.Text>{federalTaxes.filingStatus}</Components.Text>\n </Flex>\n )}\n\n {'twoJobs' in federalTaxes && federalTaxes.twoJobs !== null && (\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Text variant=\"supporting\">\n {t('taxes.federal.multipleJobs')}\n </Components.Text>\n <Components.Text>\n {federalTaxes.twoJobs ? t('common.yes') : t('common.no')}\n </Components.Text>\n </Flex>\n )}\n\n {'dependentsAmount' in federalTaxes && federalTaxes.dependentsAmount && (\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Text variant=\"supporting\">\n {t('taxes.federal.dependentsAndOtherCredits')}\n </Components.Text>\n <Components.Text>\n {formatCurrency(parseFloat(federalTaxes.dependentsAmount))}\n </Components.Text>\n </Flex>\n )}\n\n {'otherIncome' in federalTaxes && federalTaxes.otherIncome && (\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Text variant=\"supporting\">\n {t('taxes.federal.otherIncome')}\n </Components.Text>\n <Components.Text>\n {formatCurrency(parseFloat(federalTaxes.otherIncome))}\n </Components.Text>\n </Flex>\n )}\n\n {'deductions' in federalTaxes && federalTaxes.deductions && (\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Text variant=\"supporting\">\n {t('taxes.federal.deductions')}\n </Components.Text>\n <Components.Text>\n {formatCurrency(parseFloat(federalTaxes.deductions))}\n </Components.Text>\n </Flex>\n )}\n\n {'extraWithholding' in federalTaxes && federalTaxes.extraWithholding && (\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Text variant=\"supporting\">\n {t('taxes.federal.extraWithholding')}\n </Components.Text>\n <Components.Text>\n {formatCurrency(parseFloat(federalTaxes.extraWithholding))}\n </Components.Text>\n </Flex>\n )}\n </Flex>\n )}\n </Flex>\n </Components.Box>\n\n <Components.Box\n header={\n <Components.BoxHeader\n title={t('taxes.state.title')}\n action={\n <Components.Button variant=\"secondary\" onClick={onEditStateTaxes}>\n {t('taxes.state.editCta')}\n </Components.Button>\n }\n />\n }\n >\n <Flex flexDirection=\"column\" gap={16}>\n {stateTaxes && stateTaxes.length > 0 ? (\n <Flex flexDirection=\"column\" gap={24}>\n {stateTaxes.map((stateTax, index) => (\n <Flex key={stateTax.state || index} flexDirection=\"column\" gap={16}>\n <Components.Heading as=\"h4\">{stateTax.state}</Components.Heading>\n\n {stateTax.questions && stateTax.questions.length > 0 && (\n <Flex flexDirection=\"column\" gap={12}>\n {stateTax.questions.map((question, qIndex) => {\n const answer = question.answers[0]?.value\n if (answer === null || answer === undefined) return null\n\n return (\n <Flex key={question.key || qIndex} flexDirection=\"column\" gap={0}>\n <Components.Text variant=\"supporting\">{question.label}</Components.Text>\n <Components.Text>\n {formatStateTaxAnswer(question, answer)}\n </Components.Text>\n </Flex>\n )\n })}\n </Flex>\n )}\n </Flex>\n ))}\n </Flex>\n ) : (\n <Components.Text>{t('taxes.state.noStateTaxes')}</Components.Text>\n )}\n </Flex>\n </Components.Box>\n </Flex>\n )\n}\n"],"names":["TaxesView","federalTaxes","stateTaxes","isLoading","onEditFederalTaxes","onEditStateTaxes","t","useTranslation","Components","useComponentContext","formatCurrency","useNumberFormatter","Loading","formatStateTaxAnswer","question","answer","option","opt","numValue","jsxs","Flex","jsx","stateTax","index","qIndex"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TaxesView.js","sources":["../../../../src/components/Employee/Dashboard/TaxesView.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport type { GetV1EmployeesEmployeeIdFederalTaxesResponse } from '@gusto/embedded-api/models/operations/getv1employeesemployeeidfederaltaxes'\nimport type { GetV1EmployeesEmployeeIdStateTaxesResponse } from '@gusto/embedded-api/models/operations/getv1employeesemployeeidstatetaxes'\nimport type { EmployeeStateTaxQuestion } from '@gusto/embedded-api/models/components/employeestatetaxquestion'\nimport { Flex } from '@/components/Common/Flex/Flex'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { Loading } from '@/components/Common'\nimport useNumberFormatter from '@/hooks/useNumberFormatter'\n\ntype EmployeeFederalTax = NonNullable<\n GetV1EmployeesEmployeeIdFederalTaxesResponse['employeeFederalTax']\n>\ntype EmployeeStateTax = NonNullable<\n GetV1EmployeesEmployeeIdStateTaxesResponse['employeeStateTaxesList']\n>[number]\n\nexport interface TaxesViewProps {\n federalTaxes?: EmployeeFederalTax\n stateTaxes?: EmployeeStateTax[]\n isLoading?: boolean\n onEditFederalTaxes?: () => void\n onEditStateTaxes?: () => void\n}\n\nexport function TaxesView({\n federalTaxes,\n stateTaxes,\n isLoading = false,\n onEditFederalTaxes,\n onEditStateTaxes,\n}: TaxesViewProps) {\n const { t } = useTranslation('Employee.Dashboard')\n const Components = useComponentContext()\n const formatCurrency = useNumberFormatter('currency')\n\n if (isLoading) {\n return <Loading />\n }\n\n // Helper function to format state tax answer values\n const formatStateTaxAnswer = (\n question: EmployeeStateTaxQuestion,\n answer: string | number | boolean,\n ) => {\n // For Select type questions, look up the label from options\n if (\n question.inputQuestionFormat.type === 'Select' &&\n question.inputQuestionFormat.options &&\n question.inputQuestionFormat.options.length > 0\n ) {\n const option = question.inputQuestionFormat.options.find(opt => opt.value === answer)\n if (option?.label) {\n return option.label\n }\n }\n\n // For numeric values, only format as currency for Currency questions\n if (typeof answer === 'number') {\n if (question.inputQuestionFormat.type === 'Currency') {\n return formatCurrency(answer)\n }\n return answer\n }\n\n // For string currency values (like \"0.0\")\n if (typeof answer === 'string' && !isNaN(parseFloat(answer))) {\n const numValue = parseFloat(answer)\n // Check if this looks like a currency (has decimal point or question type is Currency)\n if (question.inputQuestionFormat.type === 'Currency') {\n return formatCurrency(numValue)\n }\n // For non-currency numeric strings, return as-is\n return answer\n }\n\n // For boolean values\n if (typeof answer === 'boolean') {\n return answer ? t('common.yes') : t('common.no')\n }\n\n // Default: return string value as-is\n return answer\n }\n\n return (\n <Flex flexDirection=\"column\" gap={24}>\n <Components.Box\n header={\n <Components.BoxHeader\n title={t('taxes.federal.title')}\n action={\n <Components.Button variant=\"secondary\" onClick={onEditFederalTaxes}>\n {t('taxes.federal.editCta')}\n </Components.Button>\n }\n />\n }\n >\n <Flex flexDirection=\"column\" gap={16}>\n {federalTaxes && (\n <Flex flexDirection=\"column\" gap={12}>\n {federalTaxes.filingStatus && (\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Text variant=\"supporting\">\n {t('taxes.federal.filingStatus')}\n </Components.Text>\n <Components.Text>{federalTaxes.filingStatus}</Components.Text>\n </Flex>\n )}\n\n {'twoJobs' in federalTaxes && federalTaxes.twoJobs !== null && (\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Text variant=\"supporting\">\n {t('taxes.federal.multipleJobs')}\n </Components.Text>\n <Components.Text>\n {federalTaxes.twoJobs ? t('common.yes') : t('common.no')}\n </Components.Text>\n </Flex>\n )}\n\n {'dependentsAmount' in federalTaxes && federalTaxes.dependentsAmount && (\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Text variant=\"supporting\">\n {t('taxes.federal.dependentsAndOtherCredits')}\n </Components.Text>\n <Components.Text>\n {formatCurrency(parseFloat(federalTaxes.dependentsAmount))}\n </Components.Text>\n </Flex>\n )}\n\n {'otherIncome' in federalTaxes && federalTaxes.otherIncome && (\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Text variant=\"supporting\">\n {t('taxes.federal.otherIncome')}\n </Components.Text>\n <Components.Text>\n {formatCurrency(parseFloat(federalTaxes.otherIncome))}\n </Components.Text>\n </Flex>\n )}\n\n {'deductions' in federalTaxes && federalTaxes.deductions && (\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Text variant=\"supporting\">\n {t('taxes.federal.deductions')}\n </Components.Text>\n <Components.Text>\n {formatCurrency(parseFloat(federalTaxes.deductions))}\n </Components.Text>\n </Flex>\n )}\n\n {'extraWithholding' in federalTaxes && federalTaxes.extraWithholding && (\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Text variant=\"supporting\">\n {t('taxes.federal.extraWithholding')}\n </Components.Text>\n <Components.Text>\n {formatCurrency(parseFloat(federalTaxes.extraWithholding))}\n </Components.Text>\n </Flex>\n )}\n </Flex>\n )}\n </Flex>\n </Components.Box>\n\n <Components.Box\n header={\n <Components.BoxHeader\n title={t('taxes.state.title')}\n action={\n <Components.Button variant=\"secondary\" onClick={onEditStateTaxes}>\n {t('taxes.state.editCta')}\n </Components.Button>\n }\n />\n }\n >\n <Flex flexDirection=\"column\" gap={16}>\n {stateTaxes && stateTaxes.length > 0 ? (\n <Flex flexDirection=\"column\" gap={24}>\n {stateTaxes.map((stateTax, index) => (\n <Flex key={stateTax.state || index} flexDirection=\"column\" gap={16}>\n <Components.Heading as=\"h4\">{stateTax.state}</Components.Heading>\n\n {stateTax.questions && stateTax.questions.length > 0 && (\n <Flex flexDirection=\"column\" gap={12}>\n {stateTax.questions.map((question, qIndex) => {\n const answer = question.answers[0]?.value\n if (answer === null || answer === undefined) return null\n\n return (\n <Flex key={question.key || qIndex} flexDirection=\"column\" gap={0}>\n <Components.Text variant=\"supporting\">{question.label}</Components.Text>\n <Components.Text>\n {formatStateTaxAnswer(question, answer)}\n </Components.Text>\n </Flex>\n )\n })}\n </Flex>\n )}\n </Flex>\n ))}\n </Flex>\n ) : (\n <Components.Text>{t('taxes.state.noStateTaxes')}</Components.Text>\n )}\n </Flex>\n </Components.Box>\n </Flex>\n )\n}\n"],"names":["TaxesView","federalTaxes","stateTaxes","isLoading","onEditFederalTaxes","onEditStateTaxes","t","useTranslation","Components","useComponentContext","formatCurrency","useNumberFormatter","Loading","formatStateTaxAnswer","question","answer","option","opt","numValue","jsxs","Flex","jsx","stateTax","index","qIndex"],"mappings":"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"}
|
|
@@ -2,4 +2,7 @@ export declare const dashboardStateMachine: {
|
|
|
2
2
|
index: import('robot3').MachineState<any>;
|
|
3
3
|
homeAddress: import('robot3').MachineState<any>;
|
|
4
4
|
workAddress: import('robot3').MachineState<any>;
|
|
5
|
+
federalTaxes: import('robot3').MachineState<any>;
|
|
6
|
+
stateTaxes: import('robot3').MachineState<any>;
|
|
7
|
+
profile: import('robot3').MachineState<any>;
|
|
5
8
|
};
|
|
@@ -1,59 +1,80 @@
|
|
|
1
|
-
import { state as
|
|
2
|
-
import {
|
|
3
|
-
import { componentEvents as
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import { state as n, transition as t, reduce as a } from "robot3";
|
|
2
|
+
import { ProfileContextual as r, HomeAddressContextual as d, WorkAddressContextual as i, FederalTaxesContextual as s, StateTaxesContextual as m, DashboardViewContextual as x } from "./DashboardComponents.js";
|
|
3
|
+
import { componentEvents as o } from "../../../shared/constants.js";
|
|
4
|
+
const E = a(
|
|
5
|
+
(e) => ({
|
|
6
|
+
...e,
|
|
7
|
+
component: x,
|
|
8
|
+
header: null
|
|
9
|
+
})
|
|
10
|
+
), C = {
|
|
11
|
+
index: n(
|
|
12
|
+
t(
|
|
13
|
+
o.EMPLOYEE_UPDATE,
|
|
14
|
+
"profile",
|
|
15
|
+
a(
|
|
16
|
+
(e) => ({
|
|
17
|
+
...e,
|
|
18
|
+
component: r,
|
|
19
|
+
header: { type: "minimal" }
|
|
20
|
+
})
|
|
21
|
+
)
|
|
22
|
+
),
|
|
23
|
+
t(
|
|
24
|
+
o.EMPLOYEE_HOME_ADDRESS,
|
|
8
25
|
"homeAddress",
|
|
9
|
-
|
|
26
|
+
a(
|
|
10
27
|
(e) => ({
|
|
11
28
|
...e,
|
|
12
|
-
component:
|
|
29
|
+
component: d,
|
|
13
30
|
header: { type: "minimal" }
|
|
14
31
|
})
|
|
15
32
|
)
|
|
16
33
|
),
|
|
17
|
-
|
|
18
|
-
|
|
34
|
+
t(
|
|
35
|
+
o.EMPLOYEE_WORK_ADDRESS,
|
|
19
36
|
"workAddress",
|
|
20
|
-
|
|
37
|
+
a(
|
|
21
38
|
(e) => ({
|
|
22
39
|
...e,
|
|
23
|
-
component:
|
|
40
|
+
component: i,
|
|
24
41
|
header: { type: "minimal" }
|
|
25
42
|
})
|
|
26
43
|
)
|
|
27
|
-
)
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
"index",
|
|
33
|
-
n(
|
|
44
|
+
),
|
|
45
|
+
t(
|
|
46
|
+
o.EMPLOYEE_FEDERAL_TAXES_EDIT,
|
|
47
|
+
"federalTaxes",
|
|
48
|
+
a(
|
|
34
49
|
(e) => ({
|
|
35
50
|
...e,
|
|
36
|
-
component:
|
|
37
|
-
header:
|
|
51
|
+
component: s,
|
|
52
|
+
header: { type: "minimal" }
|
|
38
53
|
})
|
|
39
54
|
)
|
|
40
|
-
)
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
"index",
|
|
46
|
-
n(
|
|
55
|
+
),
|
|
56
|
+
t(
|
|
57
|
+
o.EMPLOYEE_STATE_TAXES_EDIT,
|
|
58
|
+
"stateTaxes",
|
|
59
|
+
a(
|
|
47
60
|
(e) => ({
|
|
48
61
|
...e,
|
|
49
|
-
component:
|
|
50
|
-
header:
|
|
62
|
+
component: m,
|
|
63
|
+
header: { type: "minimal" }
|
|
51
64
|
})
|
|
52
65
|
)
|
|
53
66
|
)
|
|
54
|
-
)
|
|
67
|
+
),
|
|
68
|
+
homeAddress: n(t(o.CANCEL, "index", E)),
|
|
69
|
+
workAddress: n(t(o.CANCEL, "index", E)),
|
|
70
|
+
federalTaxes: n(
|
|
71
|
+
t(o.CANCEL, "index", E),
|
|
72
|
+
t(o.EMPLOYEE_FEDERAL_TAXES_DONE, "index", E)
|
|
73
|
+
),
|
|
74
|
+
stateTaxes: n(t(o.CANCEL, "index", E)),
|
|
75
|
+
profile: n(t(o.CANCEL, "index", E))
|
|
55
76
|
};
|
|
56
77
|
export {
|
|
57
|
-
|
|
78
|
+
C as dashboardStateMachine
|
|
58
79
|
};
|
|
59
80
|
//# sourceMappingURL=dashboardStateMachine.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dashboardStateMachine.js","sources":["../../../../src/components/Employee/Dashboard/dashboardStateMachine.ts"],"sourcesContent":["import { transition, reduce, state } from 'robot3'\nimport {\n DashboardViewContextual,\n HomeAddressContextual,\n WorkAddressContextual,\n type DashboardContextInterface,\n} from './DashboardComponents'\nimport { componentEvents } from '@/shared/constants'\nimport type { MachineTransition } from '@/types/Helpers'\n\nexport const dashboardStateMachine = {\n index: state<MachineTransition>(\n transition(\n componentEvents.
|
|
1
|
+
{"version":3,"file":"dashboardStateMachine.js","sources":["../../../../src/components/Employee/Dashboard/dashboardStateMachine.ts"],"sourcesContent":["import { transition, reduce, state } from 'robot3'\nimport {\n DashboardViewContextual,\n HomeAddressContextual,\n WorkAddressContextual,\n FederalTaxesContextual,\n StateTaxesContextual,\n ProfileContextual,\n type DashboardContextInterface,\n} from './DashboardComponents'\nimport { componentEvents } from '@/shared/constants'\nimport type { MachineTransition } from '@/types/Helpers'\n\nconst returnToIndex = reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: DashboardViewContextual,\n header: null,\n }),\n)\n\nexport const dashboardStateMachine = {\n index: state<MachineTransition>(\n transition(\n componentEvents.EMPLOYEE_UPDATE,\n 'profile',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: ProfileContextual,\n header: { type: 'minimal' },\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_HOME_ADDRESS,\n 'homeAddress',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: HomeAddressContextual,\n header: { type: 'minimal' },\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_WORK_ADDRESS,\n 'workAddress',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: WorkAddressContextual,\n header: { type: 'minimal' },\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_FEDERAL_TAXES_EDIT,\n 'federalTaxes',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: FederalTaxesContextual,\n header: { type: 'minimal' },\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_STATE_TAXES_EDIT,\n 'stateTaxes',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: StateTaxesContextual,\n header: { type: 'minimal' },\n }),\n ),\n ),\n ),\n homeAddress: state<MachineTransition>(transition(componentEvents.CANCEL, 'index', returnToIndex)),\n workAddress: state<MachineTransition>(transition(componentEvents.CANCEL, 'index', returnToIndex)),\n federalTaxes: state<MachineTransition>(\n transition(componentEvents.CANCEL, 'index', returnToIndex),\n transition(componentEvents.EMPLOYEE_FEDERAL_TAXES_DONE, 'index', returnToIndex),\n ),\n stateTaxes: state<MachineTransition>(transition(componentEvents.CANCEL, 'index', returnToIndex)),\n profile: state<MachineTransition>(transition(componentEvents.CANCEL, 'index', returnToIndex)),\n}\n"],"names":["returnToIndex","reduce","ctx","DashboardViewContextual","dashboardStateMachine","state","transition","componentEvents","ProfileContextual","HomeAddressContextual","WorkAddressContextual","FederalTaxesContextual","StateTaxesContextual"],"mappings":";;;AAaA,MAAMA,IAAgBC;AAAA,EACpB,CAACC,OAA+D;AAAA,IAC9D,GAAGA;AAAA,IACH,WAAWC;AAAA,IACX,QAAQ;AAAA,EAAA;AAEZ,GAEaC,IAAwB;AAAA,EACnC,OAAOC;AAAA,IACLC;AAAA,MACEC,EAAgB;AAAA,MAChB;AAAA,MACAN;AAAA,QACE,CAACC,OAA+D;AAAA,UAC9D,GAAGA;AAAA,UACH,WAAWM;AAAA,UACX,QAAQ,EAAE,MAAM,UAAA;AAAA,QAAU;AAAA,MAC5B;AAAA,IACF;AAAA,IAEFF;AAAA,MACEC,EAAgB;AAAA,MAChB;AAAA,MACAN;AAAA,QACE,CAACC,OAA+D;AAAA,UAC9D,GAAGA;AAAA,UACH,WAAWO;AAAA,UACX,QAAQ,EAAE,MAAM,UAAA;AAAA,QAAU;AAAA,MAC5B;AAAA,IACF;AAAA,IAEFH;AAAA,MACEC,EAAgB;AAAA,MAChB;AAAA,MACAN;AAAA,QACE,CAACC,OAA+D;AAAA,UAC9D,GAAGA;AAAA,UACH,WAAWQ;AAAA,UACX,QAAQ,EAAE,MAAM,UAAA;AAAA,QAAU;AAAA,MAC5B;AAAA,IACF;AAAA,IAEFJ;AAAA,MACEC,EAAgB;AAAA,MAChB;AAAA,MACAN;AAAA,QACE,CAACC,OAA+D;AAAA,UAC9D,GAAGA;AAAA,UACH,WAAWS;AAAA,UACX,QAAQ,EAAE,MAAM,UAAA;AAAA,QAAU;AAAA,MAC5B;AAAA,IACF;AAAA,IAEFL;AAAA,MACEC,EAAgB;AAAA,MAChB;AAAA,MACAN;AAAA,QACE,CAACC,OAA+D;AAAA,UAC9D,GAAGA;AAAA,UACH,WAAWU;AAAA,UACX,QAAQ,EAAE,MAAM,UAAA;AAAA,QAAU;AAAA,MAC5B;AAAA,IACF;AAAA,EACF;AAAA,EAEF,aAAaP,EAAyBC,EAAWC,EAAgB,QAAQ,SAASP,CAAa,CAAC;AAAA,EAChG,aAAaK,EAAyBC,EAAWC,EAAgB,QAAQ,SAASP,CAAa,CAAC;AAAA,EAChG,cAAcK;AAAA,IACZC,EAAWC,EAAgB,QAAQ,SAASP,CAAa;AAAA,IACzDM,EAAWC,EAAgB,6BAA6B,SAASP,CAAa;AAAA,EAAA;AAAA,EAEhF,YAAYK,EAAyBC,EAAWC,EAAgB,QAAQ,SAASP,CAAa,CAAC;AAAA,EAC/F,SAASK,EAAyBC,EAAWC,EAAgB,QAAQ,SAASP,CAAa,CAAC;AAC9F;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { jsx as n, jsxs as
|
|
1
|
+
import { jsx as n, jsxs as p } from "react/jsx-runtime";
|
|
2
2
|
import { useTranslation as W } from "react-i18next";
|
|
3
3
|
import { useForm as j, useWatch as H, FormProvider as V } from "react-hook-form";
|
|
4
4
|
import { useMemo as K, useEffect as y } from "react";
|
|
@@ -11,6 +11,7 @@ import { useComponentContext as Q } from "../../../../contexts/ComponentAdapter/
|
|
|
11
11
|
import { Form as Z } from "../../../Common/Form/Form.js";
|
|
12
12
|
import { Flex as P } from "../../../Common/Flex/Flex.js";
|
|
13
13
|
import "classnames";
|
|
14
|
+
import { componentEvents as M } from "../../../../shared/constants.js";
|
|
14
15
|
import { ActionsLayout as ee } from "../../../Common/ActionsLayout/ActionsLayout.js";
|
|
15
16
|
import "react-error-boundary";
|
|
16
17
|
import "@tanstack/react-query";
|
|
@@ -20,7 +21,9 @@ import "@gusto/embedded-api/models/errors/gustoembeddederror";
|
|
|
20
21
|
import "@gusto/embedded-api/models/errors/sdkvalidationerror";
|
|
21
22
|
import "@gusto/embedded-api/models/errors/unprocessableentityerrorobject";
|
|
22
23
|
import "@gusto/embedded-api/models/errors/httpclienterrors";
|
|
23
|
-
import
|
|
24
|
+
import "dompurify";
|
|
25
|
+
import "../../../../contexts/LocaleProvider/useLocale.js";
|
|
26
|
+
import "../../../../contexts/LoadingIndicatorProvider/useLoadingIndicator.js";
|
|
24
27
|
import { SelectField as f } from "../../../Common/Fields/SelectField/SelectField.js";
|
|
25
28
|
import { TextInputField as te } from "../../../Common/Fields/TextInputField/TextInputField.js";
|
|
26
29
|
import { NumberInputField as D } from "../../../Common/Fields/NumberInputField/NumberInputField.js";
|
|
@@ -34,11 +37,11 @@ const ne = 0, oe = 0, ie = 100, _ = "Number must be greater than or equal to 0",
|
|
|
34
37
|
payPeriodMaximum: o.number().min(0, { error: _ }).transform((r) => r > 0 ? r.toString() : null).nullable(),
|
|
35
38
|
paymentPeriod: me
|
|
36
39
|
});
|
|
37
|
-
function
|
|
40
|
+
function Ue({
|
|
38
41
|
deduction: r,
|
|
39
42
|
handleStateAgencySelect: A,
|
|
40
43
|
stateAgencies: R,
|
|
41
|
-
counties:
|
|
44
|
+
counties: l,
|
|
42
45
|
singleAllCountiesFipsCode: u,
|
|
43
46
|
employeeId: x,
|
|
44
47
|
selectedAgency: N,
|
|
@@ -133,10 +136,10 @@ function Oe({
|
|
|
133
136
|
});
|
|
134
137
|
}, B = () => {
|
|
135
138
|
T();
|
|
136
|
-
}, G = N?.manualPaymentRequired, L =
|
|
137
|
-
return /* @__PURE__ */ n(V, { ...d, children: /* @__PURE__ */ n(Z, { onSubmit: d.handleSubmit(Y), children: /* @__PURE__ */
|
|
139
|
+
}, G = N?.manualPaymentRequired, L = l.length > 1 || l.length === 1 && u == null;
|
|
140
|
+
return /* @__PURE__ */ n(V, { ...d, children: /* @__PURE__ */ n(Z, { onSubmit: d.handleSubmit(Y), children: /* @__PURE__ */ p(P, { flexDirection: "column", gap: 32, children: [
|
|
138
141
|
/* @__PURE__ */ n(s.Heading, { as: "h3", children: e("childSupportTitle") }),
|
|
139
|
-
/* @__PURE__ */
|
|
142
|
+
/* @__PURE__ */ p(P, { flexDirection: "column", gap: 20, children: [
|
|
140
143
|
/* @__PURE__ */ n(
|
|
141
144
|
f,
|
|
142
145
|
{
|
|
@@ -149,14 +152,14 @@ function Oe({
|
|
|
149
152
|
}
|
|
150
153
|
),
|
|
151
154
|
G && /* @__PURE__ */ n(s.Alert, { status: "warning", label: e("manualPaymentRequired") }),
|
|
152
|
-
b && /* @__PURE__ */
|
|
155
|
+
b && /* @__PURE__ */ p(P, { flexDirection: "column", gap: 20, children: [
|
|
153
156
|
L && /* @__PURE__ */ n(
|
|
154
157
|
f,
|
|
155
158
|
{
|
|
156
159
|
name: "fipsCode",
|
|
157
160
|
label: e("county"),
|
|
158
161
|
description: e("countyDescription"),
|
|
159
|
-
options:
|
|
162
|
+
options: l,
|
|
160
163
|
isRequired: !0
|
|
161
164
|
}
|
|
162
165
|
),
|
|
@@ -222,13 +225,13 @@ function Oe({
|
|
|
222
225
|
)
|
|
223
226
|
] })
|
|
224
227
|
] }),
|
|
225
|
-
/* @__PURE__ */
|
|
228
|
+
/* @__PURE__ */ p(ee, { children: [
|
|
226
229
|
/* @__PURE__ */ n(s.Button, { variant: "secondary", onClick: B, children: e("cancelCta") }),
|
|
227
230
|
b && /* @__PURE__ */ n(s.Button, { type: "submit", isLoading: U, children: e("saveCta") })
|
|
228
231
|
] })
|
|
229
232
|
] }) }) });
|
|
230
233
|
}
|
|
231
234
|
export {
|
|
232
|
-
|
|
235
|
+
Ue as default
|
|
233
236
|
};
|
|
234
237
|
//# sourceMappingURL=ChildSupportForm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChildSupportForm.js","sources":["../../../../../src/components/Employee/Deductions/DeductionsForm/ChildSupportForm.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { FormProvider, useForm, useWatch, type SubmitHandler } from 'react-hook-form'\nimport { useEffect, useMemo } from 'react'\nimport { z } from 'zod'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { PaymentPeriod } from '@gusto/embedded-api/models/components/garnishmentchildsupport'\nimport type { GarnishmentType } from '@gusto/embedded-api/models/operations/postv1employeesemployeeidgarnishments'\nimport { type Garnishment } from '@gusto/embedded-api/models/components/garnishment'\nimport { useGarnishmentsCreateMutation } from '@gusto/embedded-api/react-query/garnishmentsCreate'\nimport { useGarnishmentsUpdateMutation } from '@gusto/embedded-api/react-query/garnishmentsUpdate'\nimport { type Agencies } from '@gusto/embedded-api/models/components/childsupportdata'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { Form } from '@/components/Common/Form'\nimport { ActionsLayout } from '@/components/Common'\nimport { Flex } from '@/components/Common/Flex/Flex'\nimport { NumberInputField, TextInputField, SelectField } from '@/components/Common'\nimport { type CommonComponentInterface, useBase } from '@/components/Base'\nimport { componentEvents } from '@/shared/constants'\n\nconst MINIMUM_PAY_PERIOD_AMOUNT = 0\nconst MINIMUM_PAYCHECK_PERCENTAGE = 0\nconst MAXIMUM_PAYCHECK_PERCENTAGE = 100\n\nconst NON_NEGATIVE_ERROR = 'Number must be greater than or equal to 0'\n\nconst ChildSupportPaymentPeriodSchema = z.enum(PaymentPeriod)\n\nconst ChildSupportSchema = z.object({\n state: z.string(),\n fipsCode: z.string(),\n caseNumber: z.string().nullable(),\n orderNumber: z.string().nullable(),\n remittanceNumber: z.string().nullable(),\n amount: z.number().min(0, { error: NON_NEGATIVE_ERROR }).transform(String),\n payPeriodMaximum: z\n .number()\n .min(0, { error: NON_NEGATIVE_ERROR })\n .transform(val => (val > 0 ? val.toString() : null))\n .nullable(),\n paymentPeriod: ChildSupportPaymentPeriodSchema,\n})\n\nexport type ChildSupportInputs = z.input<typeof ChildSupportSchema>\nexport type ChildSupportPayload = z.output<typeof ChildSupportSchema>\n\ninterface ChildSupportFormProps extends CommonComponentInterface<'Employee.Deductions'> {\n employeeId: string\n deduction?: Garnishment | null\n handleStateAgencySelect: (stateAgency: string) => void\n stateAgencies: { label: string; value: string }[]\n counties: { label: string; value: string }[]\n singleAllCountiesFipsCode: string | null | undefined\n selectedAgency?: Agencies\n onCancel: () => void\n}\n\nfunction ChildSupportForm({\n deduction,\n handleStateAgencySelect,\n stateAgencies,\n counties,\n singleAllCountiesFipsCode,\n employeeId,\n selectedAgency,\n onCancel,\n}: ChildSupportFormProps) {\n const { onEvent, baseSubmitHandler } = useBase()\n const { t } = useTranslation('Employee.Deductions')\n const Components = useComponentContext()\n\n const ATTR_KEY_TO_TEXT_FIELD_NAME_MAPPER = {\n case_number: {\n name: 'caseNumber',\n description: t('caseNumberDescription'),\n },\n order_number: {\n name: 'orderNumber',\n description: t('orderNumberDescription'),\n },\n remittance_number: {\n name: 'remittanceNumber',\n description: t('remittanceNumberDescription'),\n },\n } as const\n\n const requiredSelectedAgencyAttributes =\n selectedAgency?.requiredAttributes\n ?.map(attr => {\n if (!attr.key) {\n return null\n }\n if (!Object.prototype.hasOwnProperty.call(ATTR_KEY_TO_TEXT_FIELD_NAME_MAPPER, attr.key)) {\n return null\n }\n const key = attr.key as keyof typeof ATTR_KEY_TO_TEXT_FIELD_NAME_MAPPER\n const mappedAttr = ATTR_KEY_TO_TEXT_FIELD_NAME_MAPPER[key]\n return {\n name: mappedAttr.name,\n label: attr.label as string,\n description: mappedAttr.description,\n }\n })\n .filter((attr): attr is NonNullable<typeof attr> => attr !== null) || []\n\n const { mutateAsync: createDeduction, isPending: isPendingCreate } =\n useGarnishmentsCreateMutation()\n const { mutateAsync: updateDeduction, isPending: isPendingUpdate } =\n useGarnishmentsUpdateMutation()\n const isPending = isPendingCreate || isPendingUpdate\n\n const defaultChildSupportValues: ChildSupportInputs = useMemo(() => {\n return {\n amount: deduction?.amount ? Number(deduction.amount) : 0,\n payPeriodMaximum: deduction?.payPeriodMaximum ? Number(deduction.payPeriodMaximum) : null,\n state: deduction?.childSupport?.state || '',\n fipsCode: deduction?.childSupport?.fipsCode || '',\n caseNumber: deduction?.childSupport?.caseNumber || null,\n orderNumber: deduction?.childSupport?.orderNumber || null,\n remittanceNumber: deduction?.childSupport?.remittanceNumber || null,\n paymentPeriod: deduction?.childSupport?.paymentPeriod as PaymentPeriod,\n }\n }, [deduction])\n\n const childSupportFormMethods = useForm<ChildSupportInputs, unknown, ChildSupportPayload>({\n resolver: zodResolver(ChildSupportSchema),\n defaultValues: defaultChildSupportValues,\n })\n const { reset: resetChildSupportForm, setValue, control } = childSupportFormMethods\n const watchedStateAgency = useWatch({ control, name: 'state' })\n\n useEffect(() => {\n resetChildSupportForm(defaultChildSupportValues)\n }, [deduction, defaultChildSupportValues, resetChildSupportForm])\n\n // if in edit mode and user elects to change state agency, reset the required attribute values\n // as new selected agency might require different payload inputs, e.g. OH requires case number + order number\n useEffect(() => {\n setValue('caseNumber', null)\n setValue('orderNumber', null)\n setValue('remittanceNumber', null)\n }, [watchedStateAgency, setValue])\n\n useEffect(() => {\n if (typeof singleAllCountiesFipsCode === 'string') {\n setValue('fipsCode', singleAllCountiesFipsCode)\n }\n }, [singleAllCountiesFipsCode, setValue])\n\n const onChildSupportSubmit: SubmitHandler<ChildSupportPayload> = async data => {\n const childSupport = {\n state: data.state,\n paymentPeriod: data.paymentPeriod,\n fipsCode: data.fipsCode,\n caseNumber: data.caseNumber,\n orderNumber: data.orderNumber,\n remittanceNumber: data.remittanceNumber,\n }\n\n await baseSubmitHandler(data, async payload => {\n const requestBody = {\n active: true,\n amount: payload.amount,\n description: `Child Support - ${childSupport.caseNumber}`, // child support description follows prefix type + case number convention\n courtOrdered: true,\n garnishmentType: 'child_support' as GarnishmentType,\n times: null,\n deductAsPercentage: true, // child support must always deduct as percentage up to a pay period maximum limit and is recurring until cancelled\n payPeriodMaximum: payload.payPeriodMaximum,\n recurring: true,\n childSupport,\n }\n\n if (!deduction) {\n const { garnishment: createDeductionResponse } = await createDeduction({\n request: {\n employeeId,\n requestBody,\n },\n })\n onEvent(componentEvents.EMPLOYEE_DEDUCTION_CREATED, createDeductionResponse)\n } else {\n const { garnishment: updateDeductionResponse } = await updateDeduction({\n request: {\n garnishmentId: deduction.uuid,\n requestBody: {\n ...requestBody,\n version: deduction.version as string,\n },\n },\n })\n onEvent(componentEvents.EMPLOYEE_DEDUCTION_UPDATED, updateDeductionResponse)\n }\n })\n }\n\n const handleCancel = () => {\n onCancel()\n }\n\n const isManualPaymentRequired = selectedAgency?.manualPaymentRequired\n const hasSelectableCounties =\n counties.length > 1 || (counties.length === 1 && singleAllCountiesFipsCode == null)\n\n return (\n <FormProvider {...childSupportFormMethods}>\n <Form onSubmit={childSupportFormMethods.handleSubmit(onChildSupportSubmit)}>\n <Flex flexDirection=\"column\" gap={32}>\n <Components.Heading as=\"h3\">{t('childSupportTitle')}</Components.Heading>\n <Flex flexDirection=\"column\" gap={20}>\n <SelectField\n name=\"state\"\n label={t('agency')}\n description={t('agencyDescription')}\n options={stateAgencies}\n onChange={handleStateAgencySelect}\n isRequired\n />\n\n {isManualPaymentRequired && (\n <Components.Alert status=\"warning\" label={t('manualPaymentRequired')} />\n )}\n\n {watchedStateAgency && (\n <Flex flexDirection=\"column\" gap={20}>\n {hasSelectableCounties && (\n <SelectField\n name=\"fipsCode\"\n label={t('county')}\n description={t('countyDescription')}\n options={counties}\n isRequired\n />\n )}\n {/* render required inputs for respective agency, e.g. OH requires case number + order number */}\n {requiredSelectedAgencyAttributes.map(({ name, label, description }) => (\n <TextInputField\n key={name}\n name={name}\n label={label}\n description={description}\n isRequired\n />\n ))}\n <NumberInputField\n name=\"payPeriodMaximum\"\n label={t('totalAmountWithheld')}\n description={t('totalAmountWithheldDescription')}\n min={MINIMUM_PAY_PERIOD_AMOUNT}\n adornmentStart=\"$\"\n isRequired\n />\n <NumberInputField\n name=\"amount\"\n label={t('maxPaycheckPercentage')}\n description={t('maxPaycheckPercentageDescription')}\n isRequired\n min={MINIMUM_PAYCHECK_PERCENTAGE}\n max={MAXIMUM_PAYCHECK_PERCENTAGE}\n adornmentEnd=\"%\"\n />\n <SelectField\n name=\"paymentPeriod\"\n label={t('per')}\n description={t('perDescription')}\n options={[\n {\n label: t('everyWeek'),\n value: 'Every week',\n },\n {\n label: t('everyOtherWeek'),\n value: 'Every other week',\n },\n {\n label: t('twicePerMonth'),\n value: 'Twice per month',\n },\n {\n label: t('monthly'),\n value: 'Monthly',\n },\n ]}\n isRequired\n />\n </Flex>\n )}\n </Flex>\n <ActionsLayout>\n <Components.Button variant=\"secondary\" onClick={handleCancel}>\n {t('cancelCta')}\n </Components.Button>\n {watchedStateAgency && (\n <Components.Button type=\"submit\" isLoading={isPending}>\n {t('saveCta')}\n </Components.Button>\n )}\n </ActionsLayout>\n </Flex>\n </Form>\n </FormProvider>\n )\n}\n\nexport default ChildSupportForm\n"],"names":["MINIMUM_PAY_PERIOD_AMOUNT","MINIMUM_PAYCHECK_PERCENTAGE","MAXIMUM_PAYCHECK_PERCENTAGE","NON_NEGATIVE_ERROR","ChildSupportPaymentPeriodSchema","z","PaymentPeriod","ChildSupportSchema","val","ChildSupportForm","deduction","handleStateAgencySelect","stateAgencies","counties","singleAllCountiesFipsCode","employeeId","selectedAgency","onCancel","onEvent","baseSubmitHandler","useBase","t","useTranslation","Components","useComponentContext","ATTR_KEY_TO_TEXT_FIELD_NAME_MAPPER","requiredSelectedAgencyAttributes","attr","key","mappedAttr","createDeduction","isPendingCreate","useGarnishmentsCreateMutation","updateDeduction","isPendingUpdate","useGarnishmentsUpdateMutation","isPending","defaultChildSupportValues","useMemo","childSupportFormMethods","useForm","zodResolver","resetChildSupportForm","setValue","control","watchedStateAgency","useWatch","useEffect","onChildSupportSubmit","data","childSupport","payload","requestBody","updateDeductionResponse","componentEvents","createDeductionResponse","handleCancel","isManualPaymentRequired","hasSelectableCounties","FormProvider","jsx","Form","jsxs","Flex","SelectField","name","label","description","TextInputField","NumberInputField","ActionsLayout"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ChildSupportForm.js","sources":["../../../../../src/components/Employee/Deductions/DeductionsForm/ChildSupportForm.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { FormProvider, useForm, useWatch, type SubmitHandler } from 'react-hook-form'\nimport { useEffect, useMemo } from 'react'\nimport { z } from 'zod'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { PaymentPeriod } from '@gusto/embedded-api/models/components/garnishmentchildsupport'\nimport type { GarnishmentType } from '@gusto/embedded-api/models/operations/postv1employeesemployeeidgarnishments'\nimport { type Garnishment } from '@gusto/embedded-api/models/components/garnishment'\nimport { useGarnishmentsCreateMutation } from '@gusto/embedded-api/react-query/garnishmentsCreate'\nimport { useGarnishmentsUpdateMutation } from '@gusto/embedded-api/react-query/garnishmentsUpdate'\nimport { type Agencies } from '@gusto/embedded-api/models/components/childsupportdata'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { Form } from '@/components/Common/Form'\nimport { ActionsLayout } from '@/components/Common'\nimport { Flex } from '@/components/Common/Flex/Flex'\nimport { NumberInputField, TextInputField, SelectField } from '@/components/Common'\nimport { type CommonComponentInterface, useBase } from '@/components/Base'\nimport { componentEvents } from '@/shared/constants'\n\nconst MINIMUM_PAY_PERIOD_AMOUNT = 0\nconst MINIMUM_PAYCHECK_PERCENTAGE = 0\nconst MAXIMUM_PAYCHECK_PERCENTAGE = 100\n\nconst NON_NEGATIVE_ERROR = 'Number must be greater than or equal to 0'\n\nconst ChildSupportPaymentPeriodSchema = z.enum(PaymentPeriod)\n\nconst ChildSupportSchema = z.object({\n state: z.string(),\n fipsCode: z.string(),\n caseNumber: z.string().nullable(),\n orderNumber: z.string().nullable(),\n remittanceNumber: z.string().nullable(),\n amount: z.number().min(0, { error: NON_NEGATIVE_ERROR }).transform(String),\n payPeriodMaximum: z\n .number()\n .min(0, { error: NON_NEGATIVE_ERROR })\n .transform(val => (val > 0 ? val.toString() : null))\n .nullable(),\n paymentPeriod: ChildSupportPaymentPeriodSchema,\n})\n\nexport type ChildSupportInputs = z.input<typeof ChildSupportSchema>\nexport type ChildSupportPayload = z.output<typeof ChildSupportSchema>\n\ninterface ChildSupportFormProps extends CommonComponentInterface<'Employee.Deductions'> {\n employeeId: string\n deduction?: Garnishment | null\n handleStateAgencySelect: (stateAgency: string) => void\n stateAgencies: { label: string; value: string }[]\n counties: { label: string; value: string }[]\n singleAllCountiesFipsCode: string | null | undefined\n selectedAgency?: Agencies\n onCancel: () => void\n}\n\nfunction ChildSupportForm({\n deduction,\n handleStateAgencySelect,\n stateAgencies,\n counties,\n singleAllCountiesFipsCode,\n employeeId,\n selectedAgency,\n onCancel,\n}: ChildSupportFormProps) {\n const { onEvent, baseSubmitHandler } = useBase()\n const { t } = useTranslation('Employee.Deductions')\n const Components = useComponentContext()\n\n const ATTR_KEY_TO_TEXT_FIELD_NAME_MAPPER = {\n case_number: {\n name: 'caseNumber',\n description: t('caseNumberDescription'),\n },\n order_number: {\n name: 'orderNumber',\n description: t('orderNumberDescription'),\n },\n remittance_number: {\n name: 'remittanceNumber',\n description: t('remittanceNumberDescription'),\n },\n } as const\n\n const requiredSelectedAgencyAttributes =\n selectedAgency?.requiredAttributes\n ?.map(attr => {\n if (!attr.key) {\n return null\n }\n if (!Object.prototype.hasOwnProperty.call(ATTR_KEY_TO_TEXT_FIELD_NAME_MAPPER, attr.key)) {\n return null\n }\n const key = attr.key as keyof typeof ATTR_KEY_TO_TEXT_FIELD_NAME_MAPPER\n const mappedAttr = ATTR_KEY_TO_TEXT_FIELD_NAME_MAPPER[key]\n return {\n name: mappedAttr.name,\n label: attr.label as string,\n description: mappedAttr.description,\n }\n })\n .filter((attr): attr is NonNullable<typeof attr> => attr !== null) || []\n\n const { mutateAsync: createDeduction, isPending: isPendingCreate } =\n useGarnishmentsCreateMutation()\n const { mutateAsync: updateDeduction, isPending: isPendingUpdate } =\n useGarnishmentsUpdateMutation()\n const isPending = isPendingCreate || isPendingUpdate\n\n const defaultChildSupportValues: ChildSupportInputs = useMemo(() => {\n return {\n amount: deduction?.amount ? Number(deduction.amount) : 0,\n payPeriodMaximum: deduction?.payPeriodMaximum ? Number(deduction.payPeriodMaximum) : null,\n state: deduction?.childSupport?.state || '',\n fipsCode: deduction?.childSupport?.fipsCode || '',\n caseNumber: deduction?.childSupport?.caseNumber || null,\n orderNumber: deduction?.childSupport?.orderNumber || null,\n remittanceNumber: deduction?.childSupport?.remittanceNumber || null,\n paymentPeriod: deduction?.childSupport?.paymentPeriod as PaymentPeriod,\n }\n }, [deduction])\n\n const childSupportFormMethods = useForm<ChildSupportInputs, unknown, ChildSupportPayload>({\n resolver: zodResolver(ChildSupportSchema),\n defaultValues: defaultChildSupportValues,\n })\n const { reset: resetChildSupportForm, setValue, control } = childSupportFormMethods\n const watchedStateAgency = useWatch({ control, name: 'state' })\n\n useEffect(() => {\n resetChildSupportForm(defaultChildSupportValues)\n }, [deduction, defaultChildSupportValues, resetChildSupportForm])\n\n // if in edit mode and user elects to change state agency, reset the required attribute values\n // as new selected agency might require different payload inputs, e.g. OH requires case number + order number\n useEffect(() => {\n setValue('caseNumber', null)\n setValue('orderNumber', null)\n setValue('remittanceNumber', null)\n }, [watchedStateAgency, setValue])\n\n useEffect(() => {\n if (typeof singleAllCountiesFipsCode === 'string') {\n setValue('fipsCode', singleAllCountiesFipsCode)\n }\n }, [singleAllCountiesFipsCode, setValue])\n\n const onChildSupportSubmit: SubmitHandler<ChildSupportPayload> = async data => {\n const childSupport = {\n state: data.state,\n paymentPeriod: data.paymentPeriod,\n fipsCode: data.fipsCode,\n caseNumber: data.caseNumber,\n orderNumber: data.orderNumber,\n remittanceNumber: data.remittanceNumber,\n }\n\n await baseSubmitHandler(data, async payload => {\n const requestBody = {\n active: true,\n amount: payload.amount,\n description: `Child Support - ${childSupport.caseNumber}`, // child support description follows prefix type + case number convention\n courtOrdered: true,\n garnishmentType: 'child_support' as GarnishmentType,\n times: null,\n deductAsPercentage: true, // child support must always deduct as percentage up to a pay period maximum limit and is recurring until cancelled\n payPeriodMaximum: payload.payPeriodMaximum,\n recurring: true,\n childSupport,\n }\n\n if (!deduction) {\n const { garnishment: createDeductionResponse } = await createDeduction({\n request: {\n employeeId,\n requestBody,\n },\n })\n onEvent(componentEvents.EMPLOYEE_DEDUCTION_CREATED, createDeductionResponse)\n } else {\n const { garnishment: updateDeductionResponse } = await updateDeduction({\n request: {\n garnishmentId: deduction.uuid,\n requestBody: {\n ...requestBody,\n version: deduction.version as string,\n },\n },\n })\n onEvent(componentEvents.EMPLOYEE_DEDUCTION_UPDATED, updateDeductionResponse)\n }\n })\n }\n\n const handleCancel = () => {\n onCancel()\n }\n\n const isManualPaymentRequired = selectedAgency?.manualPaymentRequired\n const hasSelectableCounties =\n counties.length > 1 || (counties.length === 1 && singleAllCountiesFipsCode == null)\n\n return (\n <FormProvider {...childSupportFormMethods}>\n <Form onSubmit={childSupportFormMethods.handleSubmit(onChildSupportSubmit)}>\n <Flex flexDirection=\"column\" gap={32}>\n <Components.Heading as=\"h3\">{t('childSupportTitle')}</Components.Heading>\n <Flex flexDirection=\"column\" gap={20}>\n <SelectField\n name=\"state\"\n label={t('agency')}\n description={t('agencyDescription')}\n options={stateAgencies}\n onChange={handleStateAgencySelect}\n isRequired\n />\n\n {isManualPaymentRequired && (\n <Components.Alert status=\"warning\" label={t('manualPaymentRequired')} />\n )}\n\n {watchedStateAgency && (\n <Flex flexDirection=\"column\" gap={20}>\n {hasSelectableCounties && (\n <SelectField\n name=\"fipsCode\"\n label={t('county')}\n description={t('countyDescription')}\n options={counties}\n isRequired\n />\n )}\n {/* render required inputs for respective agency, e.g. OH requires case number + order number */}\n {requiredSelectedAgencyAttributes.map(({ name, label, description }) => (\n <TextInputField\n key={name}\n name={name}\n label={label}\n description={description}\n isRequired\n />\n ))}\n <NumberInputField\n name=\"payPeriodMaximum\"\n label={t('totalAmountWithheld')}\n description={t('totalAmountWithheldDescription')}\n min={MINIMUM_PAY_PERIOD_AMOUNT}\n adornmentStart=\"$\"\n isRequired\n />\n <NumberInputField\n name=\"amount\"\n label={t('maxPaycheckPercentage')}\n description={t('maxPaycheckPercentageDescription')}\n isRequired\n min={MINIMUM_PAYCHECK_PERCENTAGE}\n max={MAXIMUM_PAYCHECK_PERCENTAGE}\n adornmentEnd=\"%\"\n />\n <SelectField\n name=\"paymentPeriod\"\n label={t('per')}\n description={t('perDescription')}\n options={[\n {\n label: t('everyWeek'),\n value: 'Every week',\n },\n {\n label: t('everyOtherWeek'),\n value: 'Every other week',\n },\n {\n label: t('twicePerMonth'),\n value: 'Twice per month',\n },\n {\n label: t('monthly'),\n value: 'Monthly',\n },\n ]}\n isRequired\n />\n </Flex>\n )}\n </Flex>\n <ActionsLayout>\n <Components.Button variant=\"secondary\" onClick={handleCancel}>\n {t('cancelCta')}\n </Components.Button>\n {watchedStateAgency && (\n <Components.Button type=\"submit\" isLoading={isPending}>\n {t('saveCta')}\n </Components.Button>\n )}\n </ActionsLayout>\n </Flex>\n </Form>\n </FormProvider>\n )\n}\n\nexport default ChildSupportForm\n"],"names":["MINIMUM_PAY_PERIOD_AMOUNT","MINIMUM_PAYCHECK_PERCENTAGE","MAXIMUM_PAYCHECK_PERCENTAGE","NON_NEGATIVE_ERROR","ChildSupportPaymentPeriodSchema","z","PaymentPeriod","ChildSupportSchema","val","ChildSupportForm","deduction","handleStateAgencySelect","stateAgencies","counties","singleAllCountiesFipsCode","employeeId","selectedAgency","onCancel","onEvent","baseSubmitHandler","useBase","t","useTranslation","Components","useComponentContext","ATTR_KEY_TO_TEXT_FIELD_NAME_MAPPER","requiredSelectedAgencyAttributes","attr","key","mappedAttr","createDeduction","isPendingCreate","useGarnishmentsCreateMutation","updateDeduction","isPendingUpdate","useGarnishmentsUpdateMutation","isPending","defaultChildSupportValues","useMemo","childSupportFormMethods","useForm","zodResolver","resetChildSupportForm","setValue","control","watchedStateAgency","useWatch","useEffect","onChildSupportSubmit","data","childSupport","payload","requestBody","updateDeductionResponse","componentEvents","createDeductionResponse","handleCancel","isManualPaymentRequired","hasSelectableCounties","FormProvider","jsx","Form","jsxs","Flex","SelectField","name","label","description","TextInputField","NumberInputField","ActionsLayout"],"mappings":"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"}
|