@gusto/embedded-react-sdk 0.57.1 → 0.57.3
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 +33 -0
- package/dist/components/Base/Base.js +2 -3
- package/dist/components/Base/Base.js.map +1 -1
- package/dist/components/Common/DateRangeFilter/DateRangeFilter.js +32 -32
- package/dist/components/Common/DateRangeFilter/DateRangeFilter.js.map +1 -1
- package/dist/components/Common/OnboardingStatusBadge/index.js.map +1 -1
- package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js +6 -8
- package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js.map +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js +8 -10
- package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js.map +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +3 -6
- package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js +6 -8
- package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js.map +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +3 -6
- package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/TitleSelect.js +10 -11
- package/dist/components/Company/AssignSignatory/TitleSelect.js.map +1 -1
- package/dist/components/Company/AssignSignatory/useAssignSignatory.js +5 -8
- package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountForm/Actions.js +8 -9
- package/dist/components/Company/BankAccount/BankAccountForm/Actions.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountForm/context.js +3 -6
- package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountList/Actions.js +10 -12
- package/dist/components/Company/BankAccount/BankAccountList/Actions.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js +11 -13
- package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js.map +1 -1
- package/dist/components/Company/DocumentSigner/DocumentList/Actions.js +5 -7
- package/dist/components/Company/DocumentSigner/DocumentList/Actions.js.map +1 -1
- package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +3 -6
- package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
- package/dist/components/Company/FederalTaxes/Actions.js +7 -9
- package/dist/components/Company/FederalTaxes/Actions.js.map +1 -1
- package/dist/components/Company/FederalTaxes/useFederalTaxes.js +8 -11
- package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
- package/dist/components/Company/Industry/Actions.js +5 -7
- package/dist/components/Company/Industry/Actions.js.map +1 -1
- package/dist/components/Company/Industry/Context.js +6 -9
- package/dist/components/Company/Industry/Context.js.map +1 -1
- package/dist/components/Company/Industry/Edit.js +10 -12
- package/dist/components/Company/Industry/Edit.js.map +1 -1
- package/dist/components/Company/Locations/LocationForm/Actions.js +8 -10
- package/dist/components/Company/Locations/LocationForm/Actions.js.map +1 -1
- package/dist/components/Company/Locations/LocationForm/useLocationForm.js +3 -6
- package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
- package/dist/components/Company/Locations/LocationsList/Actions.js +6 -8
- package/dist/components/Company/Locations/LocationsList/Actions.js.map +1 -1
- package/dist/components/Company/Locations/LocationsList/List.js +11 -13
- package/dist/components/Company/Locations/LocationsList/List.js.map +1 -1
- package/dist/components/Company/Locations/LocationsList/useLocationsList.js +3 -6
- package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
- package/dist/components/Company/OnboardingOverview/context.js +3 -6
- package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
- package/dist/components/Company/PaySchedule/PayScheduleForm.js +66 -62
- package/dist/components/Company/PaySchedule/PayScheduleForm.js.map +1 -1
- package/dist/components/Company/PaySchedule/PayScheduleForm.module.scss.js +2 -2
- package/dist/components/Company/PaySchedule/management/AutoPilotDialog/AutoPilotDialog.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/AutoPilotDialog/useAutoPilotDialog.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentCompensationStepPresentation.js +34 -14
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentCompensationStepPresentation.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentDepartmentStepPresentation.js +106 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentDepartmentStepPresentation.js.map +1 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentEmployeeStepPresentation.js +136 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentEmployeeStepPresentation.js.map +1 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentScheduleStepPresentation.js +38 -20
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentScheduleStepPresentation.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentTypeStepPresentation.js +78 -44
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentTypeStepPresentation.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignment.js +45 -37
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignment.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignmentComponents.js +253 -92
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignmentComponents.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/departmentAccess.js +22 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/departmentAccess.js.map +1 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/employeeJob.js +13 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/employeeJob.js.map +1 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/payScheduleAssignmentStateMachine.js +48 -43
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/payScheduleAssignmentStateMachine.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/scheduleLabel.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/useAssignableEmployees.js +57 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/useAssignableEmployees.js.map +1 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleCompensationOverviewPresentation.js +11 -13
- package/dist/components/Company/PaySchedule/management/PayScheduleCompensationOverviewPresentation.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/PayScheduleDepartmentOverviewPresentation.js +83 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleDepartmentOverviewPresentation.js.map +1 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleEmployeeOverviewPresentation.js +84 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleEmployeeOverviewPresentation.js.map +1 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleManagementComponents.js +49 -44
- package/dist/components/Company/PaySchedule/management/PayScheduleManagementComponents.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/PayScheduleOverview.js +109 -39
- package/dist/components/Company/PaySchedule/management/PayScheduleOverview.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/PayScheduleOverviewPresentation.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/payScheduleManagementStateMachine.js.map +1 -1
- package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/usePayScheduleForm.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js +5 -7
- package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +3 -6
- package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesList/Actions.js +6 -8
- package/dist/components/Company/StateTaxes/StateTaxesList/Actions.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesList/context.js +3 -6
- package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
- package/dist/components/Company/StateTaxes/TaxRateManagement/context.js +3 -6
- package/dist/components/Company/StateTaxes/TaxRateManagement/context.js.map +1 -1
- package/dist/components/Contractor/Address/shared/useContractorAddressForm/useContractorAddressForm.js +5 -5
- package/dist/components/Contractor/Address/shared/useContractorAddressForm/useContractorAddressForm.js.map +1 -1
- package/dist/components/Contractor/Address/shared/useContractorAddressSummary/useContractorAddressSummary.js +1 -1
- package/dist/components/Contractor/Address/shared/useContractorAddressSummary/useContractorAddressSummary.js.map +1 -1
- package/dist/components/Contractor/Compensation/management/CompensationCard/CompensationCard.js +16 -17
- package/dist/components/Contractor/Compensation/management/CompensationCard/CompensationCard.js.map +1 -1
- package/dist/components/Contractor/Compensation/shared/useContractorCompensationSummary/useContractorCompensationSummary.js +4 -4
- package/dist/components/Contractor/Compensation/shared/useContractorCompensationSummary/useContractorCompensationSummary.js.map +1 -1
- package/dist/components/Contractor/Compensation/shared/useContractorPayForm/useContractorPayForm.js +3 -3
- package/dist/components/Contractor/Compensation/shared/useContractorPayForm/useContractorPayForm.js.map +1 -1
- package/dist/components/Contractor/ContractorList/shared/useContractorList.js +6 -6
- package/dist/components/Contractor/ContractorList/shared/useContractorList.js.map +1 -1
- package/dist/components/Contractor/Dashboard/Dashboard.js +20 -20
- package/dist/components/Contractor/Dashboard/Dashboard.js.map +1 -1
- package/dist/components/Contractor/Dismissal/useDismissal/useDismissal.js +10 -10
- package/dist/components/Contractor/Dismissal/useDismissal/useDismissal.js.map +1 -1
- package/dist/components/Contractor/Documents/management/DocumentsCard/DocumentsCard.js +8 -9
- package/dist/components/Contractor/Documents/management/DocumentsCard/DocumentsCard.js.map +1 -1
- package/dist/components/Contractor/Landing/Landing.js +43 -39
- package/dist/components/Contractor/Landing/Landing.js.map +1 -1
- package/dist/components/Contractor/NewHireReport/NewHireReport.js +3 -3
- package/dist/components/Contractor/NewHireReport/NewHireReport.js.map +1 -1
- package/dist/components/Contractor/PaymentMethod/shared/ContractorBankAccountFormBody/ContractorBankAccountFormBody.js +6 -8
- package/dist/components/Contractor/PaymentMethod/shared/ContractorBankAccountFormBody/ContractorBankAccountFormBody.js.map +1 -1
- package/dist/components/Contractor/Payments/CreateHistoricalPayment/CreateHistoricalPayment.js +1 -1
- package/dist/components/Contractor/Payments/CreateHistoricalPayment/CreateHistoricalPayment.js.map +1 -1
- package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js +10 -10
- package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js.map +1 -1
- package/dist/components/Contractor/Payments/HistoricalPaymentSummary/HistoricalPaymentSummary.js +4 -4
- package/dist/components/Contractor/Payments/HistoricalPaymentSummary/HistoricalPaymentSummary.js.map +1 -1
- package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistory.js +8 -8
- package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistory.js.map +1 -1
- package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatement.js +5 -5
- package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatement.js.map +1 -1
- package/dist/components/Contractor/Payments/PaymentSummary/PaymentSummary.js +3 -3
- package/dist/components/Contractor/Payments/PaymentSummary/PaymentSummary.js.map +1 -1
- package/dist/components/Contractor/Profile/management/ProfileCard/ProfileCard.js +26 -27
- package/dist/components/Contractor/Profile/management/ProfileCard/ProfileCard.js.map +1 -1
- package/dist/components/Contractor/Profile/management/ProfileEditForm.js +11 -11
- package/dist/components/Contractor/Profile/onboarding/SelfOnboardingContractorProfile.js +1 -1
- package/dist/components/Contractor/Profile/onboarding/SelfOnboardingContractorProfile.js.map +1 -1
- package/dist/components/Contractor/Profile/shared/useContractorDetailsForm/useContractorDetailsForm.js +1 -1
- package/dist/components/Contractor/Profile/shared/useContractorDetailsForm/useContractorDetailsForm.js.map +1 -1
- package/dist/components/Contractor/Profile/shared/useContractorProfileSummary/useContractorProfileSummary.js +1 -1
- package/dist/components/Contractor/Profile/shared/useContractorProfileSummary/useContractorProfileSummary.js.map +1 -1
- package/dist/components/Contractor/SelfOnboardingFlow/SelfOnboardingComponents.js +2 -9
- package/dist/components/Contractor/SelfOnboardingFlow/SelfOnboardingComponents.js.map +1 -1
- package/dist/components/Contractor/Submit/Submit.js +18 -18
- package/dist/components/Contractor/Submit/Submit.js.map +1 -1
- package/dist/components/Contractor/shared/SelectContractors/useSelectContractors.js +6 -6
- package/dist/components/Contractor/shared/SelectContractors/useSelectContractors.js.map +1 -1
- package/dist/components/Employee/Compensation/shared/useCompensationForm/useCompensationForm.js +25 -25
- package/dist/components/Employee/Compensation/shared/useCompensationForm/useCompensationForm.js.map +1 -1
- package/dist/components/Employee/Compensation/shared/useCompensationManagement/useCompensationManagement.js +15 -15
- package/dist/components/Employee/Compensation/shared/useCompensationManagement/useCompensationManagement.js.map +1 -1
- package/dist/components/Employee/Compensation/shared/useJobForm/useJobForm.js +1 -1
- package/dist/components/Employee/Compensation/shared/useJobForm/useJobForm.js.map +1 -1
- package/dist/components/Employee/Dashboard/Dashboard.js +25 -25
- package/dist/components/Employee/Dashboard/Dashboard.js.map +1 -1
- package/dist/components/Employee/Deductions/management/DeductionsCard/DeductionsCard.js +12 -13
- package/dist/components/Employee/Deductions/management/DeductionsCard/DeductionsCard.js.map +1 -1
- package/dist/components/Employee/Documents/management/DocumentsCard/DocumentsCard.js +12 -13
- package/dist/components/Employee/Documents/management/DocumentsCard/DocumentsCard.js.map +1 -1
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/Actions.js +6 -8
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/Actions.js.map +1 -1
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js +3 -6
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentSigner.js +7 -7
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentSigner.js.map +1 -1
- package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocuments.js +1 -1
- package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocuments.js.map +1 -1
- package/dist/components/Employee/FederalTaxes/management/FederalTaxesEditForm.js +3 -4
- package/dist/components/Employee/FederalTaxes/management/FederalTaxesEditForm.js.map +1 -1
- package/dist/components/Employee/FederalTaxes/onboarding/FederalTaxes.js +3 -4
- package/dist/components/Employee/FederalTaxes/onboarding/FederalTaxes.js.map +1 -1
- package/dist/components/Employee/HomeAddress/management/useHomeAddressManagement.js +6 -6
- package/dist/components/Employee/HomeAddress/management/useHomeAddressManagement.js.map +1 -1
- package/dist/components/Employee/Landing/Landing.js +37 -33
- package/dist/components/Employee/Landing/Landing.js.map +1 -1
- package/dist/components/Employee/OnboardingSummary/OnboardingSummary.js +27 -27
- package/dist/components/Employee/OnboardingSummary/OnboardingSummary.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/shared/BankFormBody/BankFormBody.js +22 -24
- package/dist/components/Employee/PaymentMethod/shared/BankFormBody/BankFormBody.js.map +1 -1
- package/dist/components/Employee/Paystubs/management/PaystubsCard/PaystubsCard.js +8 -9
- package/dist/components/Employee/Paystubs/management/PaystubsCard/PaystubsCard.js.map +1 -1
- package/dist/components/Employee/Profile/management/ProfileCard/ProfileCard.js +14 -15
- package/dist/components/Employee/Profile/management/ProfileCard/ProfileCard.js.map +1 -1
- package/dist/components/Employee/Profile/management/ProfileEditForm.js +1 -1
- package/dist/components/Employee/Profile/onboarding/EmployeeProfile.js +1 -1
- package/dist/components/Employee/Profile/shared/useEmployeeDetailsForm/useEmployeeDetailsForm.js +6 -6
- package/dist/components/Employee/Profile/shared/useEmployeeDetailsForm/useEmployeeDetailsForm.js.map +1 -1
- package/dist/components/Employee/Profile/shared/useEmployeeProfileSummary/useEmployeeProfileSummary.js +1 -1
- package/dist/components/Employee/Profile/shared/useEmployeeProfileSummary/useEmployeeProfileSummary.js.map +1 -1
- package/dist/components/Employee/SelfOnboardingFlow/SelfOnboardingComponents.js +8 -15
- package/dist/components/Employee/SelfOnboardingFlow/SelfOnboardingComponents.js.map +1 -1
- package/dist/components/Employee/StateTaxes/management/StateTaxesEditForm.js +7 -8
- package/dist/components/Employee/StateTaxes/management/StateTaxesEditForm.js.map +1 -1
- package/dist/components/Employee/StateTaxes/onboarding/StateTaxes.js +7 -8
- package/dist/components/Employee/StateTaxes/onboarding/StateTaxes.js.map +1 -1
- package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js +11 -11
- package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js.map +1 -1
- package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummary.js +12 -12
- package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummary.js.map +1 -1
- package/dist/components/Employee/WorkAddress/management/useWorkAddressManagement.js +26 -26
- package/dist/components/Employee/WorkAddress/management/useWorkAddressManagement.js.map +1 -1
- package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js +56 -54
- package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js.map +1 -1
- package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormPresentation.js +14 -16
- package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormPresentation.js.map +1 -1
- package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.js +6 -8
- package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.js.map +1 -1
- package/dist/components/Payroll/OffCycleTaxWithholdingModal/OffCycleTaxWithholdingModal.js +9 -11
- package/dist/components/Payroll/OffCycleTaxWithholdingModal/OffCycleTaxWithholdingModal.js.map +1 -1
- package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js +66 -64
- package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollConfiguration/usePayrollConfigurationData.js +1 -1
- package/dist/components/Payroll/PayrollConfiguration/usePayrollConfigurationData.js.map +1 -1
- package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js +6 -6
- package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js.map +1 -1
- package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/usePayrollEditEmployeeForm.js +1 -1
- package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/usePayrollEditEmployeeForm.js.map +1 -1
- package/dist/components/Payroll/PayrollHistory/PayrollHistory.js.map +1 -1
- package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js +75 -89
- package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollList/PayrollList.js.map +1 -1
- package/dist/components/Payroll/PayrollList/PayrollListPresentation.js +9 -9
- package/dist/components/Payroll/PayrollList/PayrollListPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js +44 -46
- package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.js.map +1 -1
- package/dist/components/Payroll/TransitionCreation/TransitionCreation.js +63 -61
- package/dist/components/Payroll/TransitionCreation/TransitionCreation.js.map +1 -1
- package/dist/components/Payroll/TransitionPayroll/useResolveTransitionPayroll.js +14 -13
- package/dist/components/Payroll/TransitionPayroll/useResolveTransitionPayroll.js.map +1 -1
- package/dist/components/Payroll/helpers.js +53 -49
- package/dist/components/Payroll/helpers.js.map +1 -1
- package/dist/components/Payroll/payrollTypes.js +1 -1
- package/dist/components/Payroll/payrollTypes.js.map +1 -1
- package/dist/components/Payroll/usePreparedPayrollData.js +13 -16
- package/dist/components/Payroll/usePreparedPayrollData.js.map +1 -1
- package/dist/components/Payroll/useUnprocessedTransitionPayPeriods.js +2 -2
- package/dist/components/Payroll/useUnprocessedTransitionPayPeriods.js.map +1 -1
- package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailPresentation.js +2 -4
- package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailPresentation.js.map +1 -1
- package/dist/components/TimeOff/shared/EmployeeTable/EmployeeTable.js +6 -8
- package/dist/components/TimeOff/shared/EmployeeTable/EmployeeTable.js.map +1 -1
- package/dist/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayout.js +28 -30
- package/dist/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayout.js.map +1 -1
- package/dist/contexts/ApiProvider/payrollOffCycleReasonEnumHook.js +1 -1
- package/dist/contexts/ApiProvider/payrollOffCycleReasonEnumHook.js.map +1 -1
- package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js +2 -4
- package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js.map +1 -1
- package/dist/helpers/dateFormatting.js +47 -40
- package/dist/helpers/dateFormatting.js.map +1 -1
- package/dist/i18n/en/Company.Management.PaySchedule.json.js +37 -17
- package/dist/i18n/en/Company.Management.PaySchedule.json.js.map +1 -1
- package/dist/i18n/en/Company.Management.PayScheduleAssignment.json.js +20 -10
- package/dist/i18n/en/Company.Management.PayScheduleAssignment.json.js.map +1 -1
- package/dist/i18n/en/Payroll.PayrollHistory.json.js +5 -5
- package/dist/i18n/en/Payroll.PayrollList.json.js +5 -5
- package/dist/i18n/en/Payroll.PayrollOverview.json.js +1 -1
- package/dist/package.json.js +1 -1
- package/dist/partner-hook-utils/form/fields/CheckboxHookField.js +8 -10
- package/dist/partner-hook-utils/form/fields/CheckboxHookField.js.map +1 -1
- package/dist/partner-hook-utils/form/fields/NumberInputHookField.js +12 -14
- package/dist/partner-hook-utils/form/fields/NumberInputHookField.js.map +1 -1
- package/dist/partner-hook-utils/form/fields/RadioGroupHookField.js +13 -15
- package/dist/partner-hook-utils/form/fields/RadioGroupHookField.js.map +1 -1
- package/dist/partner-hook-utils/form/fields/SelectHookField.js +10 -12
- package/dist/partner-hook-utils/form/fields/SelectHookField.js.map +1 -1
- package/dist/partner-hook-utils/form/fields/SwitchHookField.js +14 -16
- package/dist/partner-hook-utils/form/fields/SwitchHookField.js.map +1 -1
- package/dist/partner-hook-utils/form/fields/TextInputHookField.js +8 -10
- package/dist/partner-hook-utils/form/fields/TextInputHookField.js.map +1 -1
- package/dist/shared/constants.js +5 -5
- package/dist/shared/constants.js.map +1 -1
- package/dist/src/components/Common/DateRangeFilter/DateRangeFilter.d.ts +2 -2
- package/dist/src/components/Common/OnboardingStatusBadge/index.d.ts +1 -1
- package/dist/src/components/Company/PaySchedule/PayScheduleForm.d.ts +6 -0
- package/dist/src/components/Company/PaySchedule/management/AutoPilotDialog/AutoPilotDialog.d.ts +1 -1
- package/dist/src/components/Company/PaySchedule/management/AutoPilotDialog/useAutoPilotDialog.d.ts +1 -1
- package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentCompensationStepPresentation.d.ts +10 -3
- package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentDepartmentStepPresentation.d.ts +21 -0
- package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentEmployeeStepPresentation.d.ts +34 -0
- package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentScheduleStepPresentation.d.ts +9 -3
- package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentTypeStepPresentation.d.ts +5 -1
- package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignment.d.ts +10 -10
- package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignmentComponents.d.ts +12 -4
- package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/departmentAccess.d.ts +19 -0
- package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/employeeJob.d.ts +17 -0
- package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/scheduleLabel.d.ts +1 -1
- package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/useAssignableEmployees.d.ts +34 -0
- package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/usePayScheduleAssignment.d.ts +16 -3
- package/dist/src/components/Company/PaySchedule/management/PayScheduleCompensationOverviewPresentation.d.ts +1 -1
- package/dist/src/components/Company/PaySchedule/management/PayScheduleDepartmentOverviewPresentation.d.ts +23 -0
- package/dist/src/components/Company/PaySchedule/management/PayScheduleEmployeeOverviewPresentation.d.ts +25 -0
- package/dist/src/components/Company/PaySchedule/management/PayScheduleManagementComponents.d.ts +1 -1
- package/dist/src/components/Company/PaySchedule/management/PayScheduleOverviewPresentation.d.ts +1 -1
- package/dist/src/components/Company/PaySchedule/shared/usePayScheduleForm/usePayScheduleForm.d.ts +1 -1
- package/dist/src/components/Contractor/Landing/Landing.d.ts +5 -2
- package/dist/src/components/Employee/Landing/Landing.d.ts +5 -2
- package/dist/src/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollConfiguration/usePayrollConfigurationData.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/usePayrollEditEmployeeForm.d.ts +2 -2
- package/dist/src/components/Payroll/PayrollHistory/PayrollHistoryPresentation.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollList/PayrollListPresentation.d.ts +2 -2
- package/dist/src/components/Payroll/PayrollOverview/PayrollOverviewPresentation.d.ts +1 -1
- package/dist/src/components/Payroll/helpers.d.ts +22 -2
- package/dist/src/components/Payroll/usePreparedPayrollData.d.ts +2 -2
- package/dist/src/helpers/dateFormatting.d.ts +13 -0
- package/dist/src/i18n/types.d.ts +96 -6
- package/dist/src/models/external.d.ts +63 -48
- package/dist/src/shared/constants.d.ts +1 -1
- package/dist/style.css +1 -1
- package/docs/guides/endpoint-inventory.json +33 -13
- package/package.json +21 -21
|
@@ -4,20 +4,13 @@ import { useFlow as m } from "../../Flow/useFlow.js";
|
|
|
4
4
|
import { Profile as a } from "../Profile/onboarding/Profile.js";
|
|
5
5
|
import { FederalTaxes as i } from "../FederalTaxes/onboarding/FederalTaxes.js";
|
|
6
6
|
import { Landing as d } from "../Landing/Landing.js";
|
|
7
|
-
import { OnboardingSummary as
|
|
8
|
-
import { DocumentSigner as
|
|
7
|
+
import { OnboardingSummary as s } from "../OnboardingSummary/OnboardingSummary.js";
|
|
8
|
+
import { DocumentSigner as p } from "../Documents/onboarding/DocumentSigner/DocumentSigner.js";
|
|
9
9
|
import { PaymentMethod as l } from "../PaymentMethod/onboarding/PaymentMethod.js";
|
|
10
|
-
import { StateTaxes as
|
|
10
|
+
import { StateTaxes as f } from "../StateTaxes/onboarding/StateTaxes.js";
|
|
11
11
|
function P() {
|
|
12
|
-
const {
|
|
13
|
-
return /* @__PURE__ */ t(
|
|
14
|
-
d,
|
|
15
|
-
{
|
|
16
|
-
companyId: n(e),
|
|
17
|
-
employeeId: n(o),
|
|
18
|
-
onEvent: r
|
|
19
|
-
}
|
|
20
|
-
);
|
|
12
|
+
const { employeeId: e, onEvent: o } = m();
|
|
13
|
+
return /* @__PURE__ */ t(d, { employeeId: n(e), onEvent: o });
|
|
21
14
|
}
|
|
22
15
|
function T() {
|
|
23
16
|
const { companyId: e, employeeId: o, onEvent: r } = m();
|
|
@@ -38,7 +31,7 @@ function h() {
|
|
|
38
31
|
function F() {
|
|
39
32
|
const { employeeId: e, onEvent: o } = m();
|
|
40
33
|
return /* @__PURE__ */ t(
|
|
41
|
-
|
|
34
|
+
f,
|
|
42
35
|
{
|
|
43
36
|
employeeId: n(e),
|
|
44
37
|
onEvent: o,
|
|
@@ -53,7 +46,7 @@ function b() {
|
|
|
53
46
|
function A() {
|
|
54
47
|
const { employeeId: e, onEvent: o } = m();
|
|
55
48
|
return /* @__PURE__ */ t(
|
|
56
|
-
|
|
49
|
+
s,
|
|
57
50
|
{
|
|
58
51
|
employeeId: n(e),
|
|
59
52
|
onEvent: o,
|
|
@@ -64,7 +57,7 @@ function A() {
|
|
|
64
57
|
function D() {
|
|
65
58
|
const { employeeId: e, withEmployeeI9: o = !1, onEvent: r } = m();
|
|
66
59
|
return /* @__PURE__ */ t(
|
|
67
|
-
|
|
60
|
+
p,
|
|
68
61
|
{
|
|
69
62
|
employeeId: n(e),
|
|
70
63
|
withEmployeeI9: o,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelfOnboardingComponents.js","sources":["../../../../src/components/Employee/SelfOnboardingFlow/SelfOnboardingComponents.tsx"],"sourcesContent":["import type { PaymentMethodBankAccount } from '@gusto/embedded-api/models/components/paymentmethodbankaccount'\nimport { ensureRequired } from '@/helpers/ensureRequired'\nimport type { FlowContextInterface } from '@/components/Flow/useFlow'\nimport { useFlow } from '@/components/Flow/useFlow'\nimport type { BaseComponentInterface } from '@/components/Base'\nimport { Landing as LandingComponent } from '@/components/Employee/Landing'\nimport { Profile as ProfileComponent } from '@/components/Employee/Profile/onboarding/Profile'\nimport { FederalTaxes as FederalTaxesComponent } from '@/components/Employee/FederalTaxes/onboarding/FederalTaxes'\nimport { StateTaxes as StateTaxesComponent } from '@/components/Employee/StateTaxes/onboarding'\nimport { PaymentMethod as PaymentMethodComponent } from '@/components/Employee/PaymentMethod'\nimport { OnboardingSummary as OnboardingSummaryComponent } from '@/components/Employee/OnboardingSummary'\nimport { DocumentSigner as DocumentSignerComponent } from '@/components/Employee/Documents/onboarding/DocumentSigner'\n\n/**\n * Props for {@link SelfOnboardingFlow}.\n *\n * @public\n */\nexport interface SelfOnboardingFlowProps extends BaseComponentInterface<never> {\n /** The associated company identifier. */\n companyId: string\n /** The associated employee identifier. */\n employeeId: string\n /** When true, the Document Signer step checks if the employee has I-9 enabled and routes to the Employment Eligibility and I-9 signature form steps. Defaults to `false`. */\n withEmployeeI9?: boolean\n}\n\n/** @internal */\nexport interface SelfOnboardingContextInterface extends FlowContextInterface {\n companyId: string\n employeeId: string\n withEmployeeI9?: boolean\n paymentMethod?: PaymentMethodBankAccount\n}\n\n/** @internal */\nexport function Landing() {\n const {
|
|
1
|
+
{"version":3,"file":"SelfOnboardingComponents.js","sources":["../../../../src/components/Employee/SelfOnboardingFlow/SelfOnboardingComponents.tsx"],"sourcesContent":["import type { PaymentMethodBankAccount } from '@gusto/embedded-api/models/components/paymentmethodbankaccount'\nimport { ensureRequired } from '@/helpers/ensureRequired'\nimport type { FlowContextInterface } from '@/components/Flow/useFlow'\nimport { useFlow } from '@/components/Flow/useFlow'\nimport type { BaseComponentInterface } from '@/components/Base'\nimport { Landing as LandingComponent } from '@/components/Employee/Landing'\nimport { Profile as ProfileComponent } from '@/components/Employee/Profile/onboarding/Profile'\nimport { FederalTaxes as FederalTaxesComponent } from '@/components/Employee/FederalTaxes/onboarding/FederalTaxes'\nimport { StateTaxes as StateTaxesComponent } from '@/components/Employee/StateTaxes/onboarding'\nimport { PaymentMethod as PaymentMethodComponent } from '@/components/Employee/PaymentMethod'\nimport { OnboardingSummary as OnboardingSummaryComponent } from '@/components/Employee/OnboardingSummary'\nimport { DocumentSigner as DocumentSignerComponent } from '@/components/Employee/Documents/onboarding/DocumentSigner'\n\n/**\n * Props for {@link SelfOnboardingFlow}.\n *\n * @public\n */\nexport interface SelfOnboardingFlowProps extends BaseComponentInterface<never> {\n /** The associated company identifier. */\n companyId: string\n /** The associated employee identifier. */\n employeeId: string\n /** When true, the Document Signer step checks if the employee has I-9 enabled and routes to the Employment Eligibility and I-9 signature form steps. Defaults to `false`. */\n withEmployeeI9?: boolean\n}\n\n/** @internal */\nexport interface SelfOnboardingContextInterface extends FlowContextInterface {\n companyId: string\n employeeId: string\n withEmployeeI9?: boolean\n paymentMethod?: PaymentMethodBankAccount\n}\n\n/** @internal */\nexport function Landing() {\n const { employeeId, onEvent } = useFlow<SelfOnboardingContextInterface>()\n return <LandingComponent employeeId={ensureRequired(employeeId)} onEvent={onEvent} />\n}\n\n/** @internal */\nexport function Profile() {\n const { companyId, employeeId, onEvent } = useFlow<SelfOnboardingContextInterface>()\n return (\n <ProfileComponent\n companyId={ensureRequired(companyId)}\n employeeId={ensureRequired(employeeId)}\n onEvent={onEvent}\n isAdmin={false}\n />\n )\n}\n\n/** @internal */\nexport function FederalTaxes() {\n const { employeeId, onEvent } = useFlow<SelfOnboardingContextInterface>()\n return <FederalTaxesComponent employeeId={ensureRequired(employeeId)} onEvent={onEvent} />\n}\n\n/** @internal */\nexport function StateTaxes() {\n const { employeeId, onEvent } = useFlow<SelfOnboardingContextInterface>()\n return (\n <StateTaxesComponent\n employeeId={ensureRequired(employeeId)}\n onEvent={onEvent}\n isAdmin={false}\n />\n )\n}\n\n/** @internal */\nexport function PaymentMethod() {\n const { employeeId, onEvent } = useFlow<SelfOnboardingContextInterface>()\n return <PaymentMethodComponent employeeId={ensureRequired(employeeId)} onEvent={onEvent} />\n}\n\n/** @internal */\nexport function OnboardingSummary() {\n const { employeeId, onEvent } = useFlow<SelfOnboardingContextInterface>()\n return (\n <OnboardingSummaryComponent\n employeeId={ensureRequired(employeeId)}\n onEvent={onEvent}\n isAdmin={false}\n />\n )\n}\n\n/** @internal */\nexport function DocumentSigner() {\n const { employeeId, withEmployeeI9 = false, onEvent } = useFlow<SelfOnboardingContextInterface>()\n return (\n <DocumentSignerComponent\n employeeId={ensureRequired(employeeId)}\n withEmployeeI9={withEmployeeI9}\n onEvent={onEvent}\n />\n )\n}\n"],"names":["Landing","employeeId","onEvent","useFlow","LandingComponent","ensureRequired","Profile","companyId","jsx","ProfileComponent","FederalTaxes","FederalTaxesComponent","StateTaxes","StateTaxesComponent","PaymentMethod","PaymentMethodComponent","OnboardingSummary","OnboardingSummaryComponent","DocumentSigner","withEmployeeI9","DocumentSignerComponent"],"mappings":";;;;;;;;;;AAoCO,SAASA,IAAU;AACxB,QAAM,EAAE,YAAAC,GAAY,SAAAC,EAAA,IAAYC,EAAA;AAChC,2BAAQC,GAAA,EAAiB,YAAYC,EAAeJ,CAAU,GAAG,SAAAC,GAAkB;AACrF;AAGO,SAASI,IAAU;AACxB,QAAM,EAAE,WAAAC,GAAW,YAAAN,GAAY,SAAAC,EAAA,IAAYC,EAAA;AAC3C,SACE,gBAAAK;AAAA,IAACC;AAAAA,IAAA;AAAA,MACC,WAAWJ,EAAeE,CAAS;AAAA,MACnC,YAAYF,EAAeJ,CAAU;AAAA,MACrC,SAAAC;AAAA,MACA,SAAS;AAAA,IAAA;AAAA,EAAA;AAGf;AAGO,SAASQ,IAAe;AAC7B,QAAM,EAAE,YAAAT,GAAY,SAAAC,EAAA,IAAYC,EAAA;AAChC,2BAAQQ,GAAA,EAAsB,YAAYN,EAAeJ,CAAU,GAAG,SAAAC,GAAkB;AAC1F;AAGO,SAASU,IAAa;AAC3B,QAAM,EAAE,YAAAX,GAAY,SAAAC,EAAA,IAAYC,EAAA;AAChC,SACE,gBAAAK;AAAA,IAACK;AAAAA,IAAA;AAAA,MACC,YAAYR,EAAeJ,CAAU;AAAA,MACrC,SAAAC;AAAA,MACA,SAAS;AAAA,IAAA;AAAA,EAAA;AAGf;AAGO,SAASY,IAAgB;AAC9B,QAAM,EAAE,YAAAb,GAAY,SAAAC,EAAA,IAAYC,EAAA;AAChC,2BAAQY,GAAA,EAAuB,YAAYV,EAAeJ,CAAU,GAAG,SAAAC,GAAkB;AAC3F;AAGO,SAASc,IAAoB;AAClC,QAAM,EAAE,YAAAf,GAAY,SAAAC,EAAA,IAAYC,EAAA;AAChC,SACE,gBAAAK;AAAA,IAACS;AAAAA,IAAA;AAAA,MACC,YAAYZ,EAAeJ,CAAU;AAAA,MACrC,SAAAC;AAAA,MACA,SAAS;AAAA,IAAA;AAAA,EAAA;AAGf;AAGO,SAASgB,IAAiB;AAC/B,QAAM,EAAE,YAAAjB,GAAY,gBAAAkB,IAAiB,IAAO,SAAAjB,EAAA,IAAYC,EAAA;AACxD,SACE,gBAAAK;AAAA,IAACY;AAAAA,IAAA;AAAA,MACC,YAAYf,EAAeJ,CAAU;AAAA,MACrC,gBAAAkB;AAAA,MACA,SAAAjB;AAAA,IAAA;AAAA,EAAA;AAGN;"}
|
|
@@ -4,13 +4,12 @@ import { EmployeeStateTaxesView as x } from "../shared/EmployeeStateTaxesView.js
|
|
|
4
4
|
import { useManagementStateTaxesViewDictionary as y } from "./useViewDictionary.js";
|
|
5
5
|
import { BaseBoundaries as d, BaseLayout as f } from "../../../Base/Base.js";
|
|
6
6
|
import "../../../Base/useBase.js";
|
|
7
|
-
import "classnames";
|
|
8
|
-
import { componentEvents as E } from "../../../../shared/constants.js";
|
|
9
7
|
import { ActionsLayout as g } from "../../../Common/ActionsLayout/ActionsLayout.js";
|
|
10
8
|
import { useI18n as A, useComponentDictionary as M } from "../../../../i18n/I18n.js";
|
|
9
|
+
import { componentEvents as E } from "../../../../shared/constants.js";
|
|
11
10
|
import { useComponentContext as _ } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
|
|
12
11
|
import { useEmployeeStateTaxesForm as C } from "../shared/useEmployeeStateTaxesForm/useEmployeeStateTaxesForm.js";
|
|
13
|
-
function
|
|
12
|
+
function I({
|
|
14
13
|
FallbackComponent: a,
|
|
15
14
|
LoaderComponent: o,
|
|
16
15
|
...n
|
|
@@ -33,7 +32,7 @@ function L({
|
|
|
33
32
|
LoaderComponent: i
|
|
34
33
|
}) {
|
|
35
34
|
A("Employee.Management.StateTaxes"), M("Employee.Management.StateTaxes", n);
|
|
36
|
-
const { t: s } = S("Employee.Management.StateTaxes"), m = _(), e = C({ employeeId: a }),
|
|
35
|
+
const { t: s } = S("Employee.Management.StateTaxes"), m = _(), e = C({ employeeId: a }), u = y();
|
|
37
36
|
if (e.isLoading)
|
|
38
37
|
return /* @__PURE__ */ t(
|
|
39
38
|
f,
|
|
@@ -43,7 +42,7 @@ function L({
|
|
|
43
42
|
LoaderComponent: i
|
|
44
43
|
}
|
|
45
44
|
);
|
|
46
|
-
const
|
|
45
|
+
const p = async () => {
|
|
47
46
|
const c = await e.actions.onSubmit();
|
|
48
47
|
c && r(E.EMPLOYEE_MANAGEMENT_STATE_TAXES_UPDATED, {
|
|
49
48
|
employeeStateTaxesList: c.data
|
|
@@ -55,18 +54,18 @@ function L({
|
|
|
55
54
|
x,
|
|
56
55
|
{
|
|
57
56
|
stateTaxes: e,
|
|
58
|
-
onSubmit:
|
|
57
|
+
onSubmit: p,
|
|
59
58
|
actions: /* @__PURE__ */ l(g, { children: [
|
|
60
59
|
/* @__PURE__ */ t(m.Button, { variant: "secondary", onClick: T, children: s("cancelCta") }),
|
|
61
60
|
/* @__PURE__ */ t(m.Button, { type: "submit", isLoading: e.status.isPending, children: s("saveCta") })
|
|
62
61
|
] }),
|
|
63
62
|
className: o,
|
|
64
|
-
dictionary:
|
|
63
|
+
dictionary: u,
|
|
65
64
|
LoaderComponent: i
|
|
66
65
|
}
|
|
67
66
|
);
|
|
68
67
|
}
|
|
69
68
|
export {
|
|
70
|
-
|
|
69
|
+
I as StateTaxesEditForm
|
|
71
70
|
};
|
|
72
71
|
//# sourceMappingURL=StateTaxesEditForm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StateTaxesEditForm.js","sources":["../../../../../src/components/Employee/StateTaxes/management/StateTaxesEditForm.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { EmployeeStateTaxesView, useEmployeeStateTaxesForm } from '../shared'\nimport { useManagementStateTaxesViewDictionary } from './useViewDictionary'\nimport { BaseBoundaries, BaseLayout, type BaseComponentInterface } from '@/components/Base'\nimport { ActionsLayout } from '@/components/Common'\nimport { useI18n, useComponentDictionary } from '@/i18n'\nimport { componentEvents } from '@/shared/constants'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\n/**\n * Props for {@link StateTaxesEditForm}.\n *\n * @public\n */\nexport interface StateTaxesEditFormProps extends BaseComponentInterface<'Employee.Management.StateTaxes'> {\n /** The associated employee identifier. */\n employeeId: string\n}\n\n/**\n * Standalone edit screen for the state-tax management flow. Renders the shared\n * state-tax form against the `Employee.Management.StateTaxes` namespace and\n * emits scoped management events on submit and cancel, so partner copy\n * overrides on the management namespace do not leak into the onboarding flow.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `employee/management/stateTaxes/updated` | Form was submitted successfully | `{ employeeStateTaxesList: EmployeeStateTaxesList[] }` |\n * | `employee/management/stateTaxes/editCancelled` | Cancel button was clicked | — |\n *\n * @param props - The component props.\n * @public\n */\nexport function StateTaxesEditForm({\n FallbackComponent,\n LoaderComponent,\n ...props\n}: StateTaxesEditFormProps) {\n return (\n <BaseBoundaries\n componentName=\"Employee.Management.StateTaxes\"\n FallbackComponent={FallbackComponent}\n LoaderComponent={LoaderComponent}\n >\n <StateTaxesEditFormRoot LoaderComponent={LoaderComponent} {...props} />\n </BaseBoundaries>\n )\n}\n\nfunction StateTaxesEditFormRoot({\n employeeId,\n className,\n dictionary,\n onEvent,\n LoaderComponent,\n}: StateTaxesEditFormProps) {\n useI18n('Employee.Management.StateTaxes')\n useComponentDictionary('Employee.Management.StateTaxes', dictionary)\n const { t } = useTranslation('Employee.Management.StateTaxes')\n const Components = useComponentContext()\n\n const stateTaxes = useEmployeeStateTaxesForm({ employeeId })\n const managementStateTaxesDictionary = useManagementStateTaxesViewDictionary()\n\n if (stateTaxes.isLoading) {\n return (\n <BaseLayout\n isLoading\n error={stateTaxes.errorHandling.errors}\n LoaderComponent={LoaderComponent}\n />\n )\n }\n\n const handleSubmit = async () => {\n const result = await stateTaxes.actions.onSubmit()\n if (!result) return\n\n onEvent(componentEvents.EMPLOYEE_MANAGEMENT_STATE_TAXES_UPDATED, {\n employeeStateTaxesList: result.data,\n })\n }\n\n const handleCancel = () => {\n onEvent(componentEvents.EMPLOYEE_MANAGEMENT_STATE_TAXES_EDIT_CANCELLED)\n }\n\n return (\n <EmployeeStateTaxesView\n stateTaxes={stateTaxes}\n onSubmit={handleSubmit}\n actions={\n <ActionsLayout>\n <Components.Button variant=\"secondary\" onClick={handleCancel}>\n {t('cancelCta')}\n </Components.Button>\n <Components.Button type=\"submit\" isLoading={stateTaxes.status.isPending}>\n {t('saveCta')}\n </Components.Button>\n </ActionsLayout>\n }\n className={className}\n dictionary={managementStateTaxesDictionary}\n LoaderComponent={LoaderComponent}\n />\n )\n}\n"],"names":["StateTaxesEditForm","FallbackComponent","LoaderComponent","props","jsx","BaseBoundaries","StateTaxesEditFormRoot","employeeId","className","dictionary","onEvent","useI18n","useComponentDictionary","t","useTranslation","Components","useComponentContext","stateTaxes","useEmployeeStateTaxesForm","managementStateTaxesDictionary","useManagementStateTaxesViewDictionary","BaseLayout","handleSubmit","result","componentEvents","handleCancel","EmployeeStateTaxesView","ActionsLayout"],"mappings":"
|
|
1
|
+
{"version":3,"file":"StateTaxesEditForm.js","sources":["../../../../../src/components/Employee/StateTaxes/management/StateTaxesEditForm.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { EmployeeStateTaxesView, useEmployeeStateTaxesForm } from '../shared'\nimport { useManagementStateTaxesViewDictionary } from './useViewDictionary'\nimport { BaseBoundaries, BaseLayout, type BaseComponentInterface } from '@/components/Base'\nimport { ActionsLayout } from '@/components/Common'\nimport { useI18n, useComponentDictionary } from '@/i18n'\nimport { componentEvents } from '@/shared/constants'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\n/**\n * Props for {@link StateTaxesEditForm}.\n *\n * @public\n */\nexport interface StateTaxesEditFormProps extends BaseComponentInterface<'Employee.Management.StateTaxes'> {\n /** The associated employee identifier. */\n employeeId: string\n}\n\n/**\n * Standalone edit screen for the state-tax management flow. Renders the shared\n * state-tax form against the `Employee.Management.StateTaxes` namespace and\n * emits scoped management events on submit and cancel, so partner copy\n * overrides on the management namespace do not leak into the onboarding flow.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `employee/management/stateTaxes/updated` | Form was submitted successfully | `{ employeeStateTaxesList: EmployeeStateTaxesList[] }` |\n * | `employee/management/stateTaxes/editCancelled` | Cancel button was clicked | — |\n *\n * @param props - The component props.\n * @public\n */\nexport function StateTaxesEditForm({\n FallbackComponent,\n LoaderComponent,\n ...props\n}: StateTaxesEditFormProps) {\n return (\n <BaseBoundaries\n componentName=\"Employee.Management.StateTaxes\"\n FallbackComponent={FallbackComponent}\n LoaderComponent={LoaderComponent}\n >\n <StateTaxesEditFormRoot LoaderComponent={LoaderComponent} {...props} />\n </BaseBoundaries>\n )\n}\n\nfunction StateTaxesEditFormRoot({\n employeeId,\n className,\n dictionary,\n onEvent,\n LoaderComponent,\n}: StateTaxesEditFormProps) {\n useI18n('Employee.Management.StateTaxes')\n useComponentDictionary('Employee.Management.StateTaxes', dictionary)\n const { t } = useTranslation('Employee.Management.StateTaxes')\n const Components = useComponentContext()\n\n const stateTaxes = useEmployeeStateTaxesForm({ employeeId })\n const managementStateTaxesDictionary = useManagementStateTaxesViewDictionary()\n\n if (stateTaxes.isLoading) {\n return (\n <BaseLayout\n isLoading\n error={stateTaxes.errorHandling.errors}\n LoaderComponent={LoaderComponent}\n />\n )\n }\n\n const handleSubmit = async () => {\n const result = await stateTaxes.actions.onSubmit()\n if (!result) return\n\n onEvent(componentEvents.EMPLOYEE_MANAGEMENT_STATE_TAXES_UPDATED, {\n employeeStateTaxesList: result.data,\n })\n }\n\n const handleCancel = () => {\n onEvent(componentEvents.EMPLOYEE_MANAGEMENT_STATE_TAXES_EDIT_CANCELLED)\n }\n\n return (\n <EmployeeStateTaxesView\n stateTaxes={stateTaxes}\n onSubmit={handleSubmit}\n actions={\n <ActionsLayout>\n <Components.Button variant=\"secondary\" onClick={handleCancel}>\n {t('cancelCta')}\n </Components.Button>\n <Components.Button type=\"submit\" isLoading={stateTaxes.status.isPending}>\n {t('saveCta')}\n </Components.Button>\n </ActionsLayout>\n }\n className={className}\n dictionary={managementStateTaxesDictionary}\n LoaderComponent={LoaderComponent}\n />\n )\n}\n"],"names":["StateTaxesEditForm","FallbackComponent","LoaderComponent","props","jsx","BaseBoundaries","StateTaxesEditFormRoot","employeeId","className","dictionary","onEvent","useI18n","useComponentDictionary","t","useTranslation","Components","useComponentContext","stateTaxes","useEmployeeStateTaxesForm","managementStateTaxesDictionary","useManagementStateTaxesViewDictionary","BaseLayout","handleSubmit","result","componentEvents","handleCancel","EmployeeStateTaxesView","ActionsLayout"],"mappings":";;;;;;;;;;;AAkCO,SAASA,EAAmB;AAAA,EACjC,mBAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,GAAGC;AACL,GAA4B;AAC1B,SACE,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,eAAc;AAAA,MACd,mBAAAJ;AAAA,MACA,iBAAAC;AAAA,MAEA,UAAA,gBAAAE,EAACE,GAAA,EAAuB,iBAAAJ,GAAmC,GAAGC,EAAA,CAAO;AAAA,IAAA;AAAA,EAAA;AAG3E;AAEA,SAASG,EAAuB;AAAA,EAC9B,YAAAC;AAAA,EACA,WAAAC;AAAA,EACA,YAAAC;AAAA,EACA,SAAAC;AAAA,EACA,iBAAAR;AACF,GAA4B;AAC1B,EAAAS,EAAQ,gCAAgC,GACxCC,EAAuB,kCAAkCH,CAAU;AACnE,QAAM,EAAE,GAAAI,EAAA,IAAMC,EAAe,gCAAgC,GACvDC,IAAaC,EAAA,GAEbC,IAAaC,EAA0B,EAAE,YAAAX,GAAY,GACrDY,IAAiCC,EAAA;AAEvC,MAAIH,EAAW;AACb,WACE,gBAAAb;AAAA,MAACiB;AAAA,MAAA;AAAA,QACC,WAAS;AAAA,QACT,OAAOJ,EAAW,cAAc;AAAA,QAChC,iBAAAf;AAAA,MAAA;AAAA,IAAA;AAKN,QAAMoB,IAAe,YAAY;AAC/B,UAAMC,IAAS,MAAMN,EAAW,QAAQ,SAAA;AACxC,IAAKM,KAELb,EAAQc,EAAgB,yCAAyC;AAAA,MAC/D,wBAAwBD,EAAO;AAAA,IAAA,CAChC;AAAA,EACH,GAEME,IAAe,MAAM;AACzB,IAAAf,EAAQc,EAAgB,8CAA8C;AAAA,EACxE;AAEA,SACE,gBAAApB;AAAA,IAACsB;AAAA,IAAA;AAAA,MACC,YAAAT;AAAA,MACA,UAAUK;AAAA,MACV,2BACGK,GAAA,EACC,UAAA;AAAA,QAAA,gBAAAvB,EAACW,EAAW,QAAX,EAAkB,SAAQ,aAAY,SAASU,GAC7C,UAAAZ,EAAE,WAAW,EAAA,CAChB;AAAA,QACA,gBAAAT,EAACW,EAAW,QAAX,EAAkB,MAAK,UAAS,WAAWE,EAAW,OAAO,WAC3D,UAAAJ,EAAE,SAAS,EAAA,CACd;AAAA,MAAA,GACF;AAAA,MAEF,WAAAL;AAAA,MACA,YAAYW;AAAA,MACZ,iBAAAjB;AAAA,IAAA;AAAA,EAAA;AAGN;"}
|
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
import { jsx as t } from "react/jsx-runtime";
|
|
2
|
-
import { useTranslation as
|
|
2
|
+
import { useTranslation as p } from "react-i18next";
|
|
3
3
|
import { EmployeeStateTaxesView as T } from "../shared/EmployeeStateTaxesView.js";
|
|
4
4
|
import { useOnboardingStateTaxesViewDictionary as S } from "./useViewDictionary.js";
|
|
5
5
|
import { BaseBoundaries as E, BaseLayout as f } from "../../../Base/Base.js";
|
|
6
6
|
import "../../../Base/useBase.js";
|
|
7
|
-
import "classnames";
|
|
8
|
-
import { componentEvents as m } from "../../../../shared/constants.js";
|
|
9
7
|
import { ActionsLayout as l } from "../../../Common/ActionsLayout/ActionsLayout.js";
|
|
10
8
|
import { useI18n as x, useComponentDictionary as y } from "../../../../i18n/I18n.js";
|
|
9
|
+
import { componentEvents as m } from "../../../../shared/constants.js";
|
|
11
10
|
import { useComponentContext as d } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
|
|
12
11
|
import { useEmployeeStateTaxesForm as b } from "../shared/useEmployeeStateTaxesForm/useEmployeeStateTaxesForm.js";
|
|
13
|
-
function
|
|
12
|
+
function X({ FallbackComponent: o, LoaderComponent: e, ...n }) {
|
|
14
13
|
return /* @__PURE__ */ t(
|
|
15
14
|
E,
|
|
16
15
|
{
|
|
@@ -30,7 +29,7 @@ function g({
|
|
|
30
29
|
LoaderComponent: a
|
|
31
30
|
}) {
|
|
32
31
|
x("Employee.StateTaxes"), y("Employee.StateTaxes", n);
|
|
33
|
-
const i = b({ employeeId: o, isAdmin: u }),
|
|
32
|
+
const i = b({ employeeId: o, isAdmin: u }), c = S();
|
|
34
33
|
return i.isLoading ? /* @__PURE__ */ t(
|
|
35
34
|
f,
|
|
36
35
|
{
|
|
@@ -50,16 +49,16 @@ function g({
|
|
|
50
49
|
},
|
|
51
50
|
actions: /* @__PURE__ */ t(A, { isPending: i.status.isPending }),
|
|
52
51
|
className: e,
|
|
53
|
-
dictionary:
|
|
52
|
+
dictionary: c,
|
|
54
53
|
LoaderComponent: a
|
|
55
54
|
}
|
|
56
55
|
);
|
|
57
56
|
}
|
|
58
57
|
function A({ isPending: o }) {
|
|
59
|
-
const { t: e } =
|
|
58
|
+
const { t: e } = p("Employee.StateTaxes"), n = d();
|
|
60
59
|
return /* @__PURE__ */ t(l, { children: /* @__PURE__ */ t(n.Button, { type: "submit", isLoading: o, children: e("submitCta") }) });
|
|
61
60
|
}
|
|
62
61
|
export {
|
|
63
|
-
|
|
62
|
+
X as StateTaxes
|
|
64
63
|
};
|
|
65
64
|
//# sourceMappingURL=StateTaxes.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StateTaxes.js","sources":["../../../../../src/components/Employee/StateTaxes/onboarding/StateTaxes.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { EmployeeStateTaxesView, useEmployeeStateTaxesForm } from '../shared'\nimport { useOnboardingStateTaxesViewDictionary } from './useViewDictionary'\nimport { BaseBoundaries, BaseLayout, type BaseComponentInterface } from '@/components/Base'\nimport { ActionsLayout } from '@/components/Common'\nimport { useI18n, useComponentDictionary } from '@/i18n'\nimport { componentEvents } from '@/shared/constants'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\n/**\n * Props for {@link StateTaxes}.\n *\n * @public\n */\nexport interface StateTaxesProps extends BaseComponentInterface<'Employee.StateTaxes'> {\n /** The associated employee identifier. */\n employeeId: string\n /** Render admin-only questions and submit them. Defaults to `false`. */\n isAdmin?: boolean\n}\n\n/**\n * Onboarding step that collects an employee's per-state tax withholding\n * answers. The set of fields is driven by the API response for each state\n * on record.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `employee/stateTaxes/updated` | Form was submitted successfully | `{ employeeStateTaxesList: EmployeeStateTaxesList[] }` |\n * | `employee/stateTaxes/done` | Onboarding step has finished — emitted immediately after `updated` | — |\n *\n * @param props - The component props.\n * @public\n */\nexport function StateTaxes({ FallbackComponent, LoaderComponent, ...props }: StateTaxesProps) {\n return (\n <BaseBoundaries\n componentName=\"Employee.StateTaxes\"\n FallbackComponent={FallbackComponent}\n LoaderComponent={LoaderComponent}\n >\n <StateTaxesRoot LoaderComponent={LoaderComponent} {...props} />\n </BaseBoundaries>\n )\n}\n\nfunction StateTaxesRoot({\n employeeId,\n className,\n dictionary,\n onEvent,\n isAdmin = false,\n LoaderComponent,\n}: StateTaxesProps) {\n useI18n('Employee.StateTaxes')\n useComponentDictionary('Employee.StateTaxes', dictionary)\n\n const stateTaxes = useEmployeeStateTaxesForm({ employeeId, isAdmin })\n const onboardingStateTaxesDictionary = useOnboardingStateTaxesViewDictionary()\n\n if (stateTaxes.isLoading) {\n return (\n <BaseLayout\n isLoading\n error={stateTaxes.errorHandling.errors}\n LoaderComponent={LoaderComponent}\n />\n )\n }\n\n const handleSubmit = async () => {\n const result = await stateTaxes.actions.onSubmit()\n if (!result) return\n\n onEvent(componentEvents.EMPLOYEE_STATE_TAXES_UPDATED, {\n employeeStateTaxesList: result.data,\n })\n onEvent(componentEvents.EMPLOYEE_STATE_TAXES_DONE)\n }\n\n return (\n <EmployeeStateTaxesView\n stateTaxes={stateTaxes}\n onSubmit={handleSubmit}\n actions={<ContinueAction isPending={stateTaxes.status.isPending} />}\n className={className}\n dictionary={onboardingStateTaxesDictionary}\n LoaderComponent={LoaderComponent}\n />\n )\n}\n\nfunction ContinueAction({ isPending }: { isPending: boolean }) {\n const { t } = useTranslation('Employee.StateTaxes')\n const Components = useComponentContext()\n\n return (\n <ActionsLayout>\n <Components.Button type=\"submit\" isLoading={isPending}>\n {t('submitCta')}\n </Components.Button>\n </ActionsLayout>\n )\n}\n"],"names":["StateTaxes","FallbackComponent","LoaderComponent","props","jsx","BaseBoundaries","StateTaxesRoot","employeeId","className","dictionary","onEvent","isAdmin","useI18n","useComponentDictionary","stateTaxes","useEmployeeStateTaxesForm","onboardingStateTaxesDictionary","useOnboardingStateTaxesViewDictionary","BaseLayout","EmployeeStateTaxesView","result","componentEvents","ContinueAction","isPending","t","useTranslation","Components","useComponentContext","ActionsLayout"],"mappings":"
|
|
1
|
+
{"version":3,"file":"StateTaxes.js","sources":["../../../../../src/components/Employee/StateTaxes/onboarding/StateTaxes.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { EmployeeStateTaxesView, useEmployeeStateTaxesForm } from '../shared'\nimport { useOnboardingStateTaxesViewDictionary } from './useViewDictionary'\nimport { BaseBoundaries, BaseLayout, type BaseComponentInterface } from '@/components/Base'\nimport { ActionsLayout } from '@/components/Common'\nimport { useI18n, useComponentDictionary } from '@/i18n'\nimport { componentEvents } from '@/shared/constants'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\n/**\n * Props for {@link StateTaxes}.\n *\n * @public\n */\nexport interface StateTaxesProps extends BaseComponentInterface<'Employee.StateTaxes'> {\n /** The associated employee identifier. */\n employeeId: string\n /** Render admin-only questions and submit them. Defaults to `false`. */\n isAdmin?: boolean\n}\n\n/**\n * Onboarding step that collects an employee's per-state tax withholding\n * answers. The set of fields is driven by the API response for each state\n * on record.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `employee/stateTaxes/updated` | Form was submitted successfully | `{ employeeStateTaxesList: EmployeeStateTaxesList[] }` |\n * | `employee/stateTaxes/done` | Onboarding step has finished — emitted immediately after `updated` | — |\n *\n * @param props - The component props.\n * @public\n */\nexport function StateTaxes({ FallbackComponent, LoaderComponent, ...props }: StateTaxesProps) {\n return (\n <BaseBoundaries\n componentName=\"Employee.StateTaxes\"\n FallbackComponent={FallbackComponent}\n LoaderComponent={LoaderComponent}\n >\n <StateTaxesRoot LoaderComponent={LoaderComponent} {...props} />\n </BaseBoundaries>\n )\n}\n\nfunction StateTaxesRoot({\n employeeId,\n className,\n dictionary,\n onEvent,\n isAdmin = false,\n LoaderComponent,\n}: StateTaxesProps) {\n useI18n('Employee.StateTaxes')\n useComponentDictionary('Employee.StateTaxes', dictionary)\n\n const stateTaxes = useEmployeeStateTaxesForm({ employeeId, isAdmin })\n const onboardingStateTaxesDictionary = useOnboardingStateTaxesViewDictionary()\n\n if (stateTaxes.isLoading) {\n return (\n <BaseLayout\n isLoading\n error={stateTaxes.errorHandling.errors}\n LoaderComponent={LoaderComponent}\n />\n )\n }\n\n const handleSubmit = async () => {\n const result = await stateTaxes.actions.onSubmit()\n if (!result) return\n\n onEvent(componentEvents.EMPLOYEE_STATE_TAXES_UPDATED, {\n employeeStateTaxesList: result.data,\n })\n onEvent(componentEvents.EMPLOYEE_STATE_TAXES_DONE)\n }\n\n return (\n <EmployeeStateTaxesView\n stateTaxes={stateTaxes}\n onSubmit={handleSubmit}\n actions={<ContinueAction isPending={stateTaxes.status.isPending} />}\n className={className}\n dictionary={onboardingStateTaxesDictionary}\n LoaderComponent={LoaderComponent}\n />\n )\n}\n\nfunction ContinueAction({ isPending }: { isPending: boolean }) {\n const { t } = useTranslation('Employee.StateTaxes')\n const Components = useComponentContext()\n\n return (\n <ActionsLayout>\n <Components.Button type=\"submit\" isLoading={isPending}>\n {t('submitCta')}\n </Components.Button>\n </ActionsLayout>\n )\n}\n"],"names":["StateTaxes","FallbackComponent","LoaderComponent","props","jsx","BaseBoundaries","StateTaxesRoot","employeeId","className","dictionary","onEvent","isAdmin","useI18n","useComponentDictionary","stateTaxes","useEmployeeStateTaxesForm","onboardingStateTaxesDictionary","useOnboardingStateTaxesViewDictionary","BaseLayout","EmployeeStateTaxesView","result","componentEvents","ContinueAction","isPending","t","useTranslation","Components","useComponentContext","ActionsLayout"],"mappings":";;;;;;;;;;;AAmCO,SAASA,EAAW,EAAE,mBAAAC,GAAmB,iBAAAC,GAAiB,GAAGC,KAA0B;AAC5F,SACE,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,eAAc;AAAA,MACd,mBAAAJ;AAAA,MACA,iBAAAC;AAAA,MAEA,UAAA,gBAAAE,EAACE,GAAA,EAAe,iBAAAJ,GAAmC,GAAGC,EAAA,CAAO;AAAA,IAAA;AAAA,EAAA;AAGnE;AAEA,SAASG,EAAe;AAAA,EACtB,YAAAC;AAAA,EACA,WAAAC;AAAA,EACA,YAAAC;AAAA,EACA,SAAAC;AAAA,EACA,SAAAC,IAAU;AAAA,EACV,iBAAAT;AACF,GAAoB;AAClB,EAAAU,EAAQ,qBAAqB,GAC7BC,EAAuB,uBAAuBJ,CAAU;AAExD,QAAMK,IAAaC,EAA0B,EAAE,YAAAR,GAAY,SAAAI,GAAS,GAC9DK,IAAiCC,EAAA;AAEvC,SAAIH,EAAW,YAEX,gBAAAV;AAAA,IAACc;AAAA,IAAA;AAAA,MACC,WAAS;AAAA,MACT,OAAOJ,EAAW,cAAc;AAAA,MAChC,iBAAAZ;AAAA,IAAA;AAAA,EAAA,IAgBJ,gBAAAE;AAAA,IAACe;AAAA,IAAA;AAAA,MACC,YAAAL;AAAA,MACA,UAbiB,YAAY;AAC/B,cAAMM,IAAS,MAAMN,EAAW,QAAQ,SAAA;AACxC,QAAKM,MAELV,EAAQW,EAAgB,8BAA8B;AAAA,UACpD,wBAAwBD,EAAO;AAAA,QAAA,CAChC,GACDV,EAAQW,EAAgB,yBAAyB;AAAA,MACnD;AAAA,MAMI,SAAS,gBAAAjB,EAACkB,GAAA,EAAe,WAAWR,EAAW,OAAO,WAAW;AAAA,MACjE,WAAAN;AAAA,MACA,YAAYQ;AAAA,MACZ,iBAAAd;AAAA,IAAA;AAAA,EAAA;AAGN;AAEA,SAASoB,EAAe,EAAE,WAAAC,KAAqC;AAC7D,QAAM,EAAE,GAAAC,EAAA,IAAMC,EAAe,qBAAqB,GAC5CC,IAAaC,EAAA;AAEnB,SACE,gBAAAvB,EAACwB,GAAA,EACC,UAAA,gBAAAxB,EAACsB,EAAW,QAAX,EAAkB,MAAK,UAAS,WAAWH,GACzC,UAAAC,EAAE,WAAW,GAChB,GACF;AAEJ;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { jsx as
|
|
1
|
+
import { jsx as y } from "react/jsx-runtime";
|
|
2
2
|
import { useQueryClient as Y } from "@tanstack/react-query";
|
|
3
3
|
import { useEmployeesGetSuspense as q } from "@gusto/embedded-api/react-query/employeesGet";
|
|
4
4
|
import { useEmployeeEmploymentsGetTerminationsSuspense as b, invalidateAllEmployeeEmploymentsGetTerminations as I } from "@gusto/embedded-api/react-query/employeeEmploymentsGetTerminations";
|
|
@@ -8,7 +8,7 @@ import { usePayrollsCreateOffCycleMutation as k } from "@gusto/embedded-api/reac
|
|
|
8
8
|
import { usePaySchedulesGetUnprocessedTerminationPeriods as x, invalidateAllPaySchedulesGetUnprocessedTerminationPeriods as W } from "@gusto/embedded-api/react-query/paySchedulesGetUnprocessedTerminationPeriods";
|
|
9
9
|
import { invalidateAllPayrollsList as F } from "@gusto/embedded-api/react-query/payrollsList";
|
|
10
10
|
import { OffCycleReason as H } from "@gusto/embedded-api/models/operations/postv1companiescompanyidpayrolls";
|
|
11
|
-
import { RFCDate as
|
|
11
|
+
import { RFCDate as p } from "@gusto/embedded-api/types/rfcdate";
|
|
12
12
|
import { TerminateEmployeePresentation as j } from "./TerminateEmployeePresentation.js";
|
|
13
13
|
import { BaseComponent as Q } from "../../../Base/Base.js";
|
|
14
14
|
import { useBase as V } from "../../../Base/useBase.js";
|
|
@@ -17,14 +17,14 @@ import { useComponentDictionary as z, useI18n as J } from "../../../../i18n/I18n
|
|
|
17
17
|
import { firstLastName as K } from "../../../../helpers/formattedStrings.js";
|
|
18
18
|
import { formatDateToStringDate as X } from "../../../../helpers/dateFormatting.js";
|
|
19
19
|
function Ce(e) {
|
|
20
|
-
return /* @__PURE__ */
|
|
20
|
+
return /* @__PURE__ */ y(Q, { ...e, children: /* @__PURE__ */ y(Z, { ...e, children: e.children }) });
|
|
21
21
|
}
|
|
22
|
-
const Z = ({ employeeId: e, companyId:
|
|
22
|
+
const Z = ({ employeeId: e, companyId: E, dictionary: D, className: C }) => {
|
|
23
23
|
z("Employee.Terminations.TerminateEmployee", D), J("Employee.Terminations.TerminateEmployee");
|
|
24
24
|
const c = Y(), { onEvent: i, baseSubmitHandler: A } = V(), {
|
|
25
|
-
data: {
|
|
25
|
+
data: { employeeShow: u }
|
|
26
26
|
} = q({ employeeId: e }), { data: r } = b({ employeeId: e }), { mutateAsync: O, isPending: h } = B(), { mutateAsync: N, isPending: M } = G(), { mutateAsync: _, isPending: R } = k(), { refetch: L } = x(
|
|
27
|
-
{ companyId:
|
|
27
|
+
{ companyId: E },
|
|
28
28
|
{ enabled: !1 }
|
|
29
29
|
);
|
|
30
30
|
if (u?.terminated && r.terminations?.[0])
|
|
@@ -37,7 +37,7 @@ const Z = ({ employeeId: e, companyId: y, dictionary: D, className: C }) => {
|
|
|
37
37
|
first_name: u?.firstName,
|
|
38
38
|
last_name: u?.lastName
|
|
39
39
|
}), s = r.terminations?.[0];
|
|
40
|
-
return /* @__PURE__ */
|
|
40
|
+
return /* @__PURE__ */ y(
|
|
41
41
|
j,
|
|
42
42
|
{
|
|
43
43
|
employeeName: g,
|
|
@@ -74,14 +74,14 @@ const Z = ({ employeeId: e, companyId: y, dictionary: D, className: C }) => {
|
|
|
74
74
|
if (t.startDate && t.endDate) {
|
|
75
75
|
const P = await _({
|
|
76
76
|
request: {
|
|
77
|
-
companyId:
|
|
77
|
+
companyId: E,
|
|
78
78
|
requestBody: {
|
|
79
79
|
offCycle: !0,
|
|
80
80
|
offCycleReason: H.DismissedEmployee,
|
|
81
|
-
startDate: new
|
|
82
|
-
endDate: new
|
|
81
|
+
startDate: new p(t.startDate),
|
|
82
|
+
endDate: new p(t.endDate),
|
|
83
83
|
employeeUuids: [e],
|
|
84
|
-
checkDate: t.checkDate ? new
|
|
84
|
+
checkDate: t.checkDate ? new p(t.checkDate) : void 0
|
|
85
85
|
}
|
|
86
86
|
}
|
|
87
87
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TerminateEmployee.js","sources":["../../../../../src/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.tsx"],"sourcesContent":["import { useQueryClient } from '@tanstack/react-query'\nimport { useEmployeesGetSuspense } from '@gusto/embedded-api/react-query/employeesGet'\nimport {\n useEmployeeEmploymentsGetTerminationsSuspense,\n invalidateAllEmployeeEmploymentsGetTerminations,\n} from '@gusto/embedded-api/react-query/employeeEmploymentsGetTerminations'\nimport { useEmployeeEmploymentsCreateTerminationMutation } from '@gusto/embedded-api/react-query/employeeEmploymentsCreateTermination'\nimport { useEmployeeEmploymentsUpdateTerminationMutation } from '@gusto/embedded-api/react-query/employeeEmploymentsUpdateTermination'\nimport { usePayrollsCreateOffCycleMutation } from '@gusto/embedded-api/react-query/payrollsCreateOffCycle'\nimport {\n usePaySchedulesGetUnprocessedTerminationPeriods,\n invalidateAllPaySchedulesGetUnprocessedTerminationPeriods,\n} from '@gusto/embedded-api/react-query/paySchedulesGetUnprocessedTerminationPeriods'\nimport { invalidateAllPayrollsList } from '@gusto/embedded-api/react-query/payrollsList'\nimport { OffCycleReason } from '@gusto/embedded-api/models/operations/postv1companiescompanyidpayrolls'\nimport { RFCDate } from '@gusto/embedded-api/types/rfcdate'\nimport type { PayrollOption } from '../types'\nimport { TerminateEmployeePresentation } from './TerminateEmployeePresentation'\nimport type { BaseComponentInterface } from '@/components/Base/Base'\nimport { BaseComponent } from '@/components/Base/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { componentEvents } from '@/shared/constants'\nimport { useComponentDictionary, useI18n } from '@/i18n'\nimport { firstLastName } from '@/helpers/formattedStrings'\nimport { formatDateToStringDate } from '@/helpers/dateFormatting'\n\n/**\n * Props for {@link TerminateEmployee}.\n *\n * @public\n */\nexport interface TerminateEmployeeProps extends BaseComponentInterface<'Employee.Terminations.TerminateEmployee'> {\n /** The employee identifier to terminate. */\n employeeId: string\n /** The associated company identifier. */\n companyId: string\n}\n\n/**\n * Form values collected by {@link TerminateEmployee}.\n *\n * @public\n */\nexport interface TerminateEmployeeFormData {\n /** The effective date of the termination — the employee's last day of work. */\n lastDayOfWork: Date\n /** How to process the employee's final paycheck. */\n payrollOption: PayrollOption\n}\n\n/**\n * Standalone form for capturing an employee's termination details — last day of work and how to process final payroll.\n *\n * @remarks\n * The main termination form used inside {@link TerminationFlow}. Detects existing\n * terminations and pre-populates for editing when one is active, or routes to\n * the summary view (via the `employee/termination/viewSummary` event) when the\n * employee is already terminated.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `employee/termination/created` | Fired when a new termination is created | `{ employeeId: string, effectiveDate: string, payrollOption: PayrollOption }` |\n * | `employee/termination/updated` | Fired when an existing termination is updated | `{ employeeId: string, effectiveDate: string, payrollOption: PayrollOption }` |\n * | `employee/termination/done` | Fired when the termination form is completed | `{ employeeId: string, effectiveDate: string, payrollOption: PayrollOption, payrollUuid?: string }` |\n * | `employee/termination/viewSummary` | Fired when redirecting to view an existing termination | `{ employeeId: string, effectiveDate: string }` |\n * | `employee/termination/payrollCreated` | Fired after a dismissal-payroll period was successfully created | `{ payrolls: PayrollUnprocessed[] }` |\n * | `employee/termination/payrollFailed` | Fired if creating a dismissal payroll fails | `{ employeeId: string, error: unknown }` |\n * | `CANCEL` | Fired when the user clicks Cancel | — |\n *\n * @param props - See {@link TerminateEmployeeProps}.\n * @returns The termination form.\n * @public\n * @group Block components\n *\n * @example\n * ```tsx\n * import { EmployeeManagement } from '@gusto/embedded-react-sdk'\n *\n * function MyComponent() {\n * return (\n * <EmployeeManagement.TerminateEmployee\n * companyId=\"a007e1ab-3595-43c2-ab4b-af7a5af2e365\"\n * employeeId=\"4b3f930f-82cd-48a8-b797-798686e12e5e\"\n * onEvent={() => {}}\n * />\n * )\n * }\n * ```\n */\nexport function TerminateEmployee(props: TerminateEmployeeProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nconst Root = ({ employeeId, companyId, dictionary, className }: TerminateEmployeeProps) => {\n useComponentDictionary('Employee.Terminations.TerminateEmployee', dictionary)\n useI18n('Employee.Terminations.TerminateEmployee')\n\n const queryClient = useQueryClient()\n const { onEvent, baseSubmitHandler } = useBase()\n\n const {\n data: { employee },\n } = useEmployeesGetSuspense({ employeeId })\n\n const { data: terminationsData } = useEmployeeEmploymentsGetTerminationsSuspense({ employeeId })\n\n const { mutateAsync: createTermination, isPending: isCreatingTermination } =\n useEmployeeEmploymentsCreateTerminationMutation()\n\n const { mutateAsync: updateTermination, isPending: isUpdatingTermination } =\n useEmployeeEmploymentsUpdateTerminationMutation()\n\n const { mutateAsync: createOffCyclePayroll, isPending: isCreatingPayroll } =\n usePayrollsCreateOffCycleMutation()\n\n const { refetch: fetchTerminationPeriods } = usePaySchedulesGetUnprocessedTerminationPeriods(\n { companyId },\n { enabled: false },\n )\n\n // If employee is already terminated, redirect to summary with existing termination data\n // Don't pass payrollOption to avoid showing the success alert\n if (employee?.terminated && terminationsData.terminations?.[0]) {\n onEvent(componentEvents.EMPLOYEE_TERMINATION_VIEW_SUMMARY, {\n employeeId,\n effectiveDate: terminationsData.terminations[0].effectiveDate!,\n termination: terminationsData.terminations[0],\n })\n return null\n }\n\n const employeeName = firstLastName({\n first_name: employee?.firstName,\n last_name: employee?.lastName,\n })\n\n const existingTermination = terminationsData.terminations?.[0]\n\n const handleSubmit = async (formData: TerminateEmployeeFormData) => {\n const { lastDayOfWork, payrollOption } = formData\n const effectiveDate = formatDateToStringDate(lastDayOfWork)!\n\n await baseSubmitHandler({ effectiveDate, payrollOption }, async () => {\n const runTerminationPayroll = payrollOption === 'dismissalPayroll'\n\n const result = existingTermination\n ? await updateTermination({\n request: {\n employeeId,\n requestBody: {\n version: existingTermination.version!,\n effectiveDate,\n runTerminationPayroll,\n },\n },\n })\n : await createTermination({\n request: {\n employeeId,\n requestBody: {\n effectiveDate,\n runTerminationPayroll,\n },\n },\n })\n\n await invalidateAllEmployeeEmploymentsGetTerminations(queryClient)\n\n let firstPayrollUuid: string | undefined\n\n if (runTerminationPayroll) {\n try {\n const { data: terminationPeriodsData } = await fetchTerminationPeriods()\n\n const employeePeriods =\n terminationPeriodsData?.unprocessedTerminationPayPeriods?.filter(\n period => period.employeeUuid === employeeId,\n ) ?? []\n\n const createdPayrolls = []\n\n for (const terminationPeriod of employeePeriods) {\n if (terminationPeriod.startDate && terminationPeriod.endDate) {\n const payrollResult = await createOffCyclePayroll({\n request: {\n companyId,\n requestBody: {\n offCycle: true,\n offCycleReason: OffCycleReason.DismissedEmployee,\n startDate: new RFCDate(terminationPeriod.startDate),\n endDate: new RFCDate(terminationPeriod.endDate),\n employeeUuids: [employeeId],\n checkDate: terminationPeriod.checkDate\n ? new RFCDate(terminationPeriod.checkDate)\n : undefined,\n },\n },\n })\n\n if (payrollResult.payrollUnprocessed) {\n createdPayrolls.push(payrollResult.payrollUnprocessed)\n }\n }\n }\n\n if (createdPayrolls.length > 0) {\n firstPayrollUuid = createdPayrolls[0]?.payrollUuid ?? createdPayrolls[0]?.uuid\n\n await invalidateAllPayrollsList(queryClient)\n await invalidateAllPaySchedulesGetUnprocessedTerminationPeriods(queryClient)\n\n onEvent(componentEvents.EMPLOYEE_TERMINATION_PAYROLL_CREATED, {\n payrolls: createdPayrolls,\n })\n }\n } catch (payrollError) {\n onEvent(componentEvents.EMPLOYEE_TERMINATION_PAYROLL_FAILED, {\n error: payrollError,\n employeeId,\n })\n }\n }\n\n const eventType = existingTermination\n ? componentEvents.EMPLOYEE_TERMINATION_UPDATED\n : componentEvents.EMPLOYEE_TERMINATION_CREATED\n\n onEvent(eventType, {\n termination: result.termination,\n payrollOption,\n runTerminationPayroll,\n })\n\n onEvent(componentEvents.EMPLOYEE_TERMINATION_DONE, {\n employeeId,\n effectiveDate,\n payrollOption,\n payrollUuid: firstPayrollUuid,\n termination: result.termination,\n ...(payrollOption === 'anotherWay' && { manualHandling: true }),\n })\n })\n }\n\n const handleCancel = () => {\n onEvent(componentEvents.CANCEL)\n }\n\n const isPending = isCreatingTermination || isUpdatingTermination || isCreatingPayroll\n\n return (\n <TerminateEmployeePresentation\n employeeName={employeeName}\n existingTermination={existingTermination}\n onSubmit={handleSubmit}\n onCancel={handleCancel}\n isLoading={isPending}\n className={className}\n />\n )\n}\n"],"names":["TerminateEmployee","props","jsx","BaseComponent","Root","employeeId","companyId","dictionary","className","useComponentDictionary","useI18n","queryClient","useQueryClient","onEvent","baseSubmitHandler","useBase","employee","useEmployeesGetSuspense","terminationsData","useEmployeeEmploymentsGetTerminationsSuspense","createTermination","isCreatingTermination","useEmployeeEmploymentsCreateTerminationMutation","updateTermination","isUpdatingTermination","useEmployeeEmploymentsUpdateTerminationMutation","createOffCyclePayroll","isCreatingPayroll","usePayrollsCreateOffCycleMutation","fetchTerminationPeriods","usePaySchedulesGetUnprocessedTerminationPeriods","componentEvents","employeeName","firstLastName","existingTermination","TerminateEmployeePresentation","formData","lastDayOfWork","payrollOption","effectiveDate","formatDateToStringDate","runTerminationPayroll","result","invalidateAllEmployeeEmploymentsGetTerminations","firstPayrollUuid","terminationPeriodsData","employeePeriods","period","createdPayrolls","terminationPeriod","payrollResult","OffCycleReason","RFCDate","invalidateAllPayrollsList","invalidateAllPaySchedulesGetUnprocessedTerminationPeriods","payrollError","eventType"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TerminateEmployee.js","sources":["../../../../../src/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.tsx"],"sourcesContent":["import { useQueryClient } from '@tanstack/react-query'\nimport { useEmployeesGetSuspense } from '@gusto/embedded-api/react-query/employeesGet'\nimport {\n useEmployeeEmploymentsGetTerminationsSuspense,\n invalidateAllEmployeeEmploymentsGetTerminations,\n} from '@gusto/embedded-api/react-query/employeeEmploymentsGetTerminations'\nimport { useEmployeeEmploymentsCreateTerminationMutation } from '@gusto/embedded-api/react-query/employeeEmploymentsCreateTermination'\nimport { useEmployeeEmploymentsUpdateTerminationMutation } from '@gusto/embedded-api/react-query/employeeEmploymentsUpdateTermination'\nimport { usePayrollsCreateOffCycleMutation } from '@gusto/embedded-api/react-query/payrollsCreateOffCycle'\nimport {\n usePaySchedulesGetUnprocessedTerminationPeriods,\n invalidateAllPaySchedulesGetUnprocessedTerminationPeriods,\n} from '@gusto/embedded-api/react-query/paySchedulesGetUnprocessedTerminationPeriods'\nimport { invalidateAllPayrollsList } from '@gusto/embedded-api/react-query/payrollsList'\nimport { OffCycleReason } from '@gusto/embedded-api/models/operations/postv1companiescompanyidpayrolls'\nimport { RFCDate } from '@gusto/embedded-api/types/rfcdate'\nimport type { PayrollOption } from '../types'\nimport { TerminateEmployeePresentation } from './TerminateEmployeePresentation'\nimport type { BaseComponentInterface } from '@/components/Base/Base'\nimport { BaseComponent } from '@/components/Base/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { componentEvents } from '@/shared/constants'\nimport { useComponentDictionary, useI18n } from '@/i18n'\nimport { firstLastName } from '@/helpers/formattedStrings'\nimport { formatDateToStringDate } from '@/helpers/dateFormatting'\n\n/**\n * Props for {@link TerminateEmployee}.\n *\n * @public\n */\nexport interface TerminateEmployeeProps extends BaseComponentInterface<'Employee.Terminations.TerminateEmployee'> {\n /** The employee identifier to terminate. */\n employeeId: string\n /** The associated company identifier. */\n companyId: string\n}\n\n/**\n * Form values collected by {@link TerminateEmployee}.\n *\n * @public\n */\nexport interface TerminateEmployeeFormData {\n /** The effective date of the termination — the employee's last day of work. */\n lastDayOfWork: Date\n /** How to process the employee's final paycheck. */\n payrollOption: PayrollOption\n}\n\n/**\n * Standalone form for capturing an employee's termination details — last day of work and how to process final payroll.\n *\n * @remarks\n * The main termination form used inside {@link TerminationFlow}. Detects existing\n * terminations and pre-populates for editing when one is active, or routes to\n * the summary view (via the `employee/termination/viewSummary` event) when the\n * employee is already terminated.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `employee/termination/created` | Fired when a new termination is created | `{ employeeId: string, effectiveDate: string, payrollOption: PayrollOption }` |\n * | `employee/termination/updated` | Fired when an existing termination is updated | `{ employeeId: string, effectiveDate: string, payrollOption: PayrollOption }` |\n * | `employee/termination/done` | Fired when the termination form is completed | `{ employeeId: string, effectiveDate: string, payrollOption: PayrollOption, payrollUuid?: string }` |\n * | `employee/termination/viewSummary` | Fired when redirecting to view an existing termination | `{ employeeId: string, effectiveDate: string }` |\n * | `employee/termination/payrollCreated` | Fired after a dismissal-payroll period was successfully created | `{ payrolls: PayrollUnprocessed[] }` |\n * | `employee/termination/payrollFailed` | Fired if creating a dismissal payroll fails | `{ employeeId: string, error: unknown }` |\n * | `CANCEL` | Fired when the user clicks Cancel | — |\n *\n * @param props - See {@link TerminateEmployeeProps}.\n * @returns The termination form.\n * @public\n * @group Block components\n *\n * @example\n * ```tsx\n * import { EmployeeManagement } from '@gusto/embedded-react-sdk'\n *\n * function MyComponent() {\n * return (\n * <EmployeeManagement.TerminateEmployee\n * companyId=\"a007e1ab-3595-43c2-ab4b-af7a5af2e365\"\n * employeeId=\"4b3f930f-82cd-48a8-b797-798686e12e5e\"\n * onEvent={() => {}}\n * />\n * )\n * }\n * ```\n */\nexport function TerminateEmployee(props: TerminateEmployeeProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nconst Root = ({ employeeId, companyId, dictionary, className }: TerminateEmployeeProps) => {\n useComponentDictionary('Employee.Terminations.TerminateEmployee', dictionary)\n useI18n('Employee.Terminations.TerminateEmployee')\n\n const queryClient = useQueryClient()\n const { onEvent, baseSubmitHandler } = useBase()\n\n const {\n data: { employeeShow: employee },\n } = useEmployeesGetSuspense({ employeeId })\n\n const { data: terminationsData } = useEmployeeEmploymentsGetTerminationsSuspense({ employeeId })\n\n const { mutateAsync: createTermination, isPending: isCreatingTermination } =\n useEmployeeEmploymentsCreateTerminationMutation()\n\n const { mutateAsync: updateTermination, isPending: isUpdatingTermination } =\n useEmployeeEmploymentsUpdateTerminationMutation()\n\n const { mutateAsync: createOffCyclePayroll, isPending: isCreatingPayroll } =\n usePayrollsCreateOffCycleMutation()\n\n const { refetch: fetchTerminationPeriods } = usePaySchedulesGetUnprocessedTerminationPeriods(\n { companyId },\n { enabled: false },\n )\n\n // If employee is already terminated, redirect to summary with existing termination data\n // Don't pass payrollOption to avoid showing the success alert\n if (employee?.terminated && terminationsData.terminations?.[0]) {\n onEvent(componentEvents.EMPLOYEE_TERMINATION_VIEW_SUMMARY, {\n employeeId,\n effectiveDate: terminationsData.terminations[0].effectiveDate!,\n termination: terminationsData.terminations[0],\n })\n return null\n }\n\n const employeeName = firstLastName({\n first_name: employee?.firstName,\n last_name: employee?.lastName,\n })\n\n const existingTermination = terminationsData.terminations?.[0]\n\n const handleSubmit = async (formData: TerminateEmployeeFormData) => {\n const { lastDayOfWork, payrollOption } = formData\n const effectiveDate = formatDateToStringDate(lastDayOfWork)!\n\n await baseSubmitHandler({ effectiveDate, payrollOption }, async () => {\n const runTerminationPayroll = payrollOption === 'dismissalPayroll'\n\n const result = existingTermination\n ? await updateTermination({\n request: {\n employeeId,\n requestBody: {\n version: existingTermination.version!,\n effectiveDate,\n runTerminationPayroll,\n },\n },\n })\n : await createTermination({\n request: {\n employeeId,\n requestBody: {\n effectiveDate,\n runTerminationPayroll,\n },\n },\n })\n\n await invalidateAllEmployeeEmploymentsGetTerminations(queryClient)\n\n let firstPayrollUuid: string | undefined\n\n if (runTerminationPayroll) {\n try {\n const { data: terminationPeriodsData } = await fetchTerminationPeriods()\n\n const employeePeriods =\n terminationPeriodsData?.unprocessedTerminationPayPeriods?.filter(\n period => period.employeeUuid === employeeId,\n ) ?? []\n\n const createdPayrolls = []\n\n for (const terminationPeriod of employeePeriods) {\n if (terminationPeriod.startDate && terminationPeriod.endDate) {\n const payrollResult = await createOffCyclePayroll({\n request: {\n companyId,\n requestBody: {\n offCycle: true,\n offCycleReason: OffCycleReason.DismissedEmployee,\n startDate: new RFCDate(terminationPeriod.startDate),\n endDate: new RFCDate(terminationPeriod.endDate),\n employeeUuids: [employeeId],\n checkDate: terminationPeriod.checkDate\n ? new RFCDate(terminationPeriod.checkDate)\n : undefined,\n },\n },\n })\n\n if (payrollResult.payrollUnprocessed) {\n createdPayrolls.push(payrollResult.payrollUnprocessed)\n }\n }\n }\n\n if (createdPayrolls.length > 0) {\n firstPayrollUuid = createdPayrolls[0]?.payrollUuid ?? createdPayrolls[0]?.uuid\n\n await invalidateAllPayrollsList(queryClient)\n await invalidateAllPaySchedulesGetUnprocessedTerminationPeriods(queryClient)\n\n onEvent(componentEvents.EMPLOYEE_TERMINATION_PAYROLL_CREATED, {\n payrolls: createdPayrolls,\n })\n }\n } catch (payrollError) {\n onEvent(componentEvents.EMPLOYEE_TERMINATION_PAYROLL_FAILED, {\n error: payrollError,\n employeeId,\n })\n }\n }\n\n const eventType = existingTermination\n ? componentEvents.EMPLOYEE_TERMINATION_UPDATED\n : componentEvents.EMPLOYEE_TERMINATION_CREATED\n\n onEvent(eventType, {\n termination: result.termination,\n payrollOption,\n runTerminationPayroll,\n })\n\n onEvent(componentEvents.EMPLOYEE_TERMINATION_DONE, {\n employeeId,\n effectiveDate,\n payrollOption,\n payrollUuid: firstPayrollUuid,\n termination: result.termination,\n ...(payrollOption === 'anotherWay' && { manualHandling: true }),\n })\n })\n }\n\n const handleCancel = () => {\n onEvent(componentEvents.CANCEL)\n }\n\n const isPending = isCreatingTermination || isUpdatingTermination || isCreatingPayroll\n\n return (\n <TerminateEmployeePresentation\n employeeName={employeeName}\n existingTermination={existingTermination}\n onSubmit={handleSubmit}\n onCancel={handleCancel}\n isLoading={isPending}\n className={className}\n />\n )\n}\n"],"names":["TerminateEmployee","props","jsx","BaseComponent","Root","employeeId","companyId","dictionary","className","useComponentDictionary","useI18n","queryClient","useQueryClient","onEvent","baseSubmitHandler","useBase","employee","useEmployeesGetSuspense","terminationsData","useEmployeeEmploymentsGetTerminationsSuspense","createTermination","isCreatingTermination","useEmployeeEmploymentsCreateTerminationMutation","updateTermination","isUpdatingTermination","useEmployeeEmploymentsUpdateTerminationMutation","createOffCyclePayroll","isCreatingPayroll","usePayrollsCreateOffCycleMutation","fetchTerminationPeriods","usePaySchedulesGetUnprocessedTerminationPeriods","componentEvents","employeeName","firstLastName","existingTermination","TerminateEmployeePresentation","formData","lastDayOfWork","payrollOption","effectiveDate","formatDateToStringDate","runTerminationPayroll","result","invalidateAllEmployeeEmploymentsGetTerminations","firstPayrollUuid","terminationPeriodsData","employeePeriods","period","createdPayrolls","terminationPeriod","payrollResult","OffCycleReason","RFCDate","invalidateAllPayrollsList","invalidateAllPaySchedulesGetUnprocessedTerminationPeriods","payrollError","eventType"],"mappings":"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"}
|
|
@@ -24,14 +24,14 @@ const J = ({
|
|
|
24
24
|
}) => {
|
|
25
25
|
Q("Employee.Terminations.TerminationSummary", D), W("Employee.Terminations.TerminationSummary");
|
|
26
26
|
const m = B(), { onEvent: t, baseSubmitHandler: T } = H(), [p, a] = b(!1), {
|
|
27
|
-
data: {
|
|
28
|
-
} = G({ employeeId: n }), { data: P } = j({ employeeId: n }), { mutateAsync:
|
|
27
|
+
data: { employeeShow: s }
|
|
28
|
+
} = G({ employeeId: n }), { data: P } = j({ employeeId: n }), { mutateAsync: h, isPending: c } = q(), R = [s?.firstName, s?.lastName].filter(Boolean).join(" "), u = P.terminations ?? [], e = u.find((I) => I.active) ?? u[0], f = e?.effectiveDate, L = e?.cancelable === !0, E = U(f), N = new Date((/* @__PURE__ */ new Date()).toDateString()), O = !s?.terminated && E ? E >= N : !1, y = i === "anotherWay", _ = !y && (e?.runTerminationPayroll === !0 || i === "dismissalPayroll"), g = i !== void 0, A = () => {
|
|
29
29
|
a(!0);
|
|
30
|
-
},
|
|
30
|
+
}, S = () => {
|
|
31
31
|
a(!1);
|
|
32
|
-
},
|
|
32
|
+
}, w = async () => {
|
|
33
33
|
e && await T({ terminationId: e.uuid }, async () => {
|
|
34
|
-
await
|
|
34
|
+
await h({
|
|
35
35
|
request: {
|
|
36
36
|
employeeId: n
|
|
37
37
|
}
|
|
@@ -40,12 +40,12 @@ const J = ({
|
|
|
40
40
|
termination: e
|
|
41
41
|
});
|
|
42
42
|
});
|
|
43
|
-
},
|
|
43
|
+
}, M = () => {
|
|
44
44
|
t(o.EMPLOYEE_TERMINATION_EDIT, {
|
|
45
45
|
employeeId: n,
|
|
46
46
|
termination: e
|
|
47
47
|
});
|
|
48
|
-
},
|
|
48
|
+
}, v = () => {
|
|
49
49
|
t(o.EMPLOYEE_TERMINATION_RUN_PAYROLL, {
|
|
50
50
|
employeeId: n,
|
|
51
51
|
companyId: l,
|
|
@@ -62,7 +62,7 @@ const J = ({
|
|
|
62
62
|
return e ? /* @__PURE__ */ r(
|
|
63
63
|
F,
|
|
64
64
|
{
|
|
65
|
-
employeeName:
|
|
65
|
+
employeeName: R,
|
|
66
66
|
effectiveDate: f,
|
|
67
67
|
canCancel: L,
|
|
68
68
|
canEdit: O,
|
|
@@ -70,13 +70,13 @@ const J = ({
|
|
|
70
70
|
showRunOffCyclePayroll: y,
|
|
71
71
|
showSuccessAlert: g,
|
|
72
72
|
onCancelClick: A,
|
|
73
|
-
onEditDismissal:
|
|
74
|
-
onRunDismissalPayroll:
|
|
73
|
+
onEditDismissal: M,
|
|
74
|
+
onRunDismissalPayroll: v,
|
|
75
75
|
onRunOffCyclePayroll: Y,
|
|
76
76
|
isLoading: c,
|
|
77
77
|
isCancelDialogOpen: p,
|
|
78
|
-
onDialogClose:
|
|
79
|
-
onDialogConfirm:
|
|
78
|
+
onDialogClose: S,
|
|
79
|
+
onDialogConfirm: w,
|
|
80
80
|
isCancelling: c,
|
|
81
81
|
className: d
|
|
82
82
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TerminationSummary.js","sources":["../../../../../src/components/Employee/Terminations/TerminationSummary/TerminationSummary.tsx"],"sourcesContent":["import { useState } from 'react'\nimport { useQueryClient } from '@tanstack/react-query'\nimport { useEmployeesGetSuspense } from '@gusto/embedded-api/react-query/employeesGet'\nimport {\n useEmployeeEmploymentsGetTerminationsSuspense,\n invalidateAllEmployeeEmploymentsGetTerminations,\n} from '@gusto/embedded-api/react-query/employeeEmploymentsGetTerminations'\nimport { useEmployeeEmploymentsDeleteTerminationMutation } from '@gusto/embedded-api/react-query/employeeEmploymentsDeleteTermination'\nimport { invalidateAllEmployeesList } from '@gusto/embedded-api/react-query/employeesList'\nimport type { PayrollOption } from '../types'\nimport { TerminationSummaryPresentation } from './TerminationSummaryPresentation'\nimport { normalizeToDate } from '@/helpers/dateFormatting'\nimport type { BaseComponentInterface } from '@/components/Base/Base'\nimport { BaseComponent } from '@/components/Base/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { componentEvents } from '@/shared/constants'\nimport { useComponentDictionary, useI18n } from '@/i18n'\n\n/**\n * Props for {@link TerminationSummary}.\n *\n * @public\n */\nexport interface TerminationSummaryProps extends BaseComponentInterface<'Employee.Terminations.TerminationSummary'> {\n /** The associated employee identifier. */\n employeeId: string\n /** The associated company identifier. */\n companyId: string\n /** The selected payroll processing option. When provided, the summary surfaces a success alert confirming the action taken. */\n payrollOption?: PayrollOption\n /** UUID of the created off-cycle payroll (when applicable). */\n payrollUuid?: string\n}\n\n/**\n * Termination summary with edit, cancel, and run-payroll actions plus an offboarding checklist.\n *\n * @remarks\n * Displays termination details and provides actions for managing the termination. Includes an offboarding checklist covering payroll timing, tax forms, and account disconnection. The available actions depend on the termination state:\n *\n * - **Edit** is available when the termination date is in the future and the employee is not yet terminated. The effective date cannot be edited if it is in the past.\n * - **Cancel** is available when the termination is still cancellable — `regularPayroll` or `anotherWay` options can be cancelled; `dismissalPayroll` cannot.\n * - **Run termination payroll** is shown for the `dismissalPayroll` option and navigates to the dismissal payroll flow.\n * - **Run off-cycle payroll** is shown for the `anotherWay` option and navigates to the off-cycle payroll creation flow.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `employee/termination/edit` | Fired when user clicks to edit termination details | `{ employeeId: string }` |\n * | `employee/termination/cancelled` | Fired when a termination is successfully cancelled | `{ employeeId: string, alert?: `{@link TerminationFlowAlert}` }` |\n * | `employee/termination/runPayroll` | Fired when user clicks to run termination payroll | `{ employeeId: string, companyId: string, effectiveDate: string }` |\n * | `employee/termination/runOffCyclePayroll` | Fired when user clicks to run an off-cycle payroll | `{ employeeId: string, companyId: string }` |\n *\n * @param props - See {@link TerminationSummaryProps}.\n * @returns The termination summary view.\n * @public\n * @group Block components\n *\n * @example\n * ```tsx\n * import { EmployeeManagement } from '@gusto/embedded-react-sdk'\n *\n * function MyComponent() {\n * return (\n * <EmployeeManagement.TerminationSummary\n * companyId=\"a007e1ab-3595-43c2-ab4b-af7a5af2e365\"\n * employeeId=\"4b3f930f-82cd-48a8-b797-798686e12e5e\"\n * payrollOption=\"dismissalPayroll\"\n * onEvent={() => {}}\n * />\n * )\n * }\n * ```\n */\nexport function TerminationSummary(props: TerminationSummaryProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nconst Root = ({\n employeeId,\n companyId,\n payrollOption,\n payrollUuid,\n dictionary,\n className,\n}: TerminationSummaryProps) => {\n useComponentDictionary('Employee.Terminations.TerminationSummary', dictionary)\n useI18n('Employee.Terminations.TerminationSummary')\n\n const queryClient = useQueryClient()\n const { onEvent, baseSubmitHandler } = useBase()\n\n const [isCancelDialogOpen, setIsCancelDialogOpen] = useState(false)\n\n const {\n data: { employee },\n } = useEmployeesGetSuspense({ employeeId })\n\n const { data: terminationsData } = useEmployeeEmploymentsGetTerminationsSuspense({ employeeId })\n\n const { mutateAsync: deleteTermination, isPending: isDeleting } =\n useEmployeeEmploymentsDeleteTerminationMutation()\n\n const employeeName = [employee?.firstName, employee?.lastName].filter(Boolean).join(' ')\n\n const terminations = terminationsData.terminations ?? []\n const termination = terminations.find(t => t.active) ?? terminations[0]\n\n const effectiveDate = termination?.effectiveDate\n const canCancel = termination?.cancelable === true\n const effectiveDateLocal = normalizeToDate(effectiveDate)\n const todayMidnight = new Date(new Date().toDateString())\n const canEdit =\n !employee?.terminated && effectiveDateLocal ? effectiveDateLocal >= todayMidnight : false\n\n const showRunOffCyclePayroll = payrollOption === 'anotherWay'\n const showRunPayroll =\n !showRunOffCyclePayroll &&\n (termination?.runTerminationPayroll === true || payrollOption === 'dismissalPayroll')\n\n // Only show success alert if payrollOption is provided (meaning we just completed the termination)\n // Don't show it if we're just viewing an existing termination (employee already terminated)\n const showSuccessAlert = payrollOption !== undefined\n\n const handleCancelClick = () => {\n setIsCancelDialogOpen(true)\n }\n\n const handleDialogClose = () => {\n setIsCancelDialogOpen(false)\n }\n\n const handleConfirmCancel = async () => {\n if (!termination) return\n\n await baseSubmitHandler({ terminationId: termination.uuid }, async () => {\n await deleteTermination({\n request: {\n employeeId,\n },\n })\n\n await invalidateAllEmployeeEmploymentsGetTerminations(queryClient)\n await invalidateAllEmployeesList(queryClient)\n\n setIsCancelDialogOpen(false)\n\n onEvent(componentEvents.EMPLOYEE_TERMINATION_CANCELLED, {\n employeeId,\n termination,\n })\n })\n }\n\n const handleEditDismissal = () => {\n onEvent(componentEvents.EMPLOYEE_TERMINATION_EDIT, {\n employeeId,\n termination,\n })\n }\n\n const handleRunDismissalPayroll = () => {\n onEvent(componentEvents.EMPLOYEE_TERMINATION_RUN_PAYROLL, {\n employeeId,\n companyId,\n payrollUuid,\n termination,\n })\n }\n\n const handleRunOffCyclePayroll = () => {\n onEvent(componentEvents.EMPLOYEE_TERMINATION_RUN_OFF_CYCLE_PAYROLL, {\n employeeId,\n companyId,\n termination,\n })\n }\n\n if (!termination) {\n return null\n }\n\n return (\n <TerminationSummaryPresentation\n employeeName={employeeName}\n effectiveDate={effectiveDate}\n canCancel={canCancel}\n canEdit={canEdit}\n showRunPayroll={showRunPayroll}\n showRunOffCyclePayroll={showRunOffCyclePayroll}\n showSuccessAlert={showSuccessAlert}\n onCancelClick={handleCancelClick}\n onEditDismissal={handleEditDismissal}\n onRunDismissalPayroll={handleRunDismissalPayroll}\n onRunOffCyclePayroll={handleRunOffCyclePayroll}\n isLoading={isDeleting}\n isCancelDialogOpen={isCancelDialogOpen}\n onDialogClose={handleDialogClose}\n onDialogConfirm={handleConfirmCancel}\n isCancelling={isDeleting}\n className={className}\n />\n )\n}\n"],"names":["TerminationSummary","props","jsx","BaseComponent","Root","employeeId","companyId","payrollOption","payrollUuid","dictionary","className","useComponentDictionary","useI18n","queryClient","useQueryClient","onEvent","baseSubmitHandler","useBase","isCancelDialogOpen","setIsCancelDialogOpen","useState","employee","useEmployeesGetSuspense","terminationsData","useEmployeeEmploymentsGetTerminationsSuspense","deleteTermination","isDeleting","useEmployeeEmploymentsDeleteTerminationMutation","employeeName","terminations","termination","t","effectiveDate","canCancel","effectiveDateLocal","normalizeToDate","todayMidnight","canEdit","showRunOffCyclePayroll","showRunPayroll","showSuccessAlert","handleCancelClick","handleDialogClose","handleConfirmCancel","invalidateAllEmployeeEmploymentsGetTerminations","invalidateAllEmployeesList","componentEvents","handleEditDismissal","handleRunDismissalPayroll","handleRunOffCyclePayroll","TerminationSummaryPresentation"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TerminationSummary.js","sources":["../../../../../src/components/Employee/Terminations/TerminationSummary/TerminationSummary.tsx"],"sourcesContent":["import { useState } from 'react'\nimport { useQueryClient } from '@tanstack/react-query'\nimport { useEmployeesGetSuspense } from '@gusto/embedded-api/react-query/employeesGet'\nimport {\n useEmployeeEmploymentsGetTerminationsSuspense,\n invalidateAllEmployeeEmploymentsGetTerminations,\n} from '@gusto/embedded-api/react-query/employeeEmploymentsGetTerminations'\nimport { useEmployeeEmploymentsDeleteTerminationMutation } from '@gusto/embedded-api/react-query/employeeEmploymentsDeleteTermination'\nimport { invalidateAllEmployeesList } from '@gusto/embedded-api/react-query/employeesList'\nimport type { PayrollOption } from '../types'\nimport { TerminationSummaryPresentation } from './TerminationSummaryPresentation'\nimport { normalizeToDate } from '@/helpers/dateFormatting'\nimport type { BaseComponentInterface } from '@/components/Base/Base'\nimport { BaseComponent } from '@/components/Base/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { componentEvents } from '@/shared/constants'\nimport { useComponentDictionary, useI18n } from '@/i18n'\n\n/**\n * Props for {@link TerminationSummary}.\n *\n * @public\n */\nexport interface TerminationSummaryProps extends BaseComponentInterface<'Employee.Terminations.TerminationSummary'> {\n /** The associated employee identifier. */\n employeeId: string\n /** The associated company identifier. */\n companyId: string\n /** The selected payroll processing option. When provided, the summary surfaces a success alert confirming the action taken. */\n payrollOption?: PayrollOption\n /** UUID of the created off-cycle payroll (when applicable). */\n payrollUuid?: string\n}\n\n/**\n * Termination summary with edit, cancel, and run-payroll actions plus an offboarding checklist.\n *\n * @remarks\n * Displays termination details and provides actions for managing the termination. Includes an offboarding checklist covering payroll timing, tax forms, and account disconnection. The available actions depend on the termination state:\n *\n * - **Edit** is available when the termination date is in the future and the employee is not yet terminated. The effective date cannot be edited if it is in the past.\n * - **Cancel** is available when the termination is still cancellable — `regularPayroll` or `anotherWay` options can be cancelled; `dismissalPayroll` cannot.\n * - **Run termination payroll** is shown for the `dismissalPayroll` option and navigates to the dismissal payroll flow.\n * - **Run off-cycle payroll** is shown for the `anotherWay` option and navigates to the off-cycle payroll creation flow.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `employee/termination/edit` | Fired when user clicks to edit termination details | `{ employeeId: string }` |\n * | `employee/termination/cancelled` | Fired when a termination is successfully cancelled | `{ employeeId: string, alert?: `{@link TerminationFlowAlert}` }` |\n * | `employee/termination/runPayroll` | Fired when user clicks to run termination payroll | `{ employeeId: string, companyId: string, effectiveDate: string }` |\n * | `employee/termination/runOffCyclePayroll` | Fired when user clicks to run an off-cycle payroll | `{ employeeId: string, companyId: string }` |\n *\n * @param props - See {@link TerminationSummaryProps}.\n * @returns The termination summary view.\n * @public\n * @group Block components\n *\n * @example\n * ```tsx\n * import { EmployeeManagement } from '@gusto/embedded-react-sdk'\n *\n * function MyComponent() {\n * return (\n * <EmployeeManagement.TerminationSummary\n * companyId=\"a007e1ab-3595-43c2-ab4b-af7a5af2e365\"\n * employeeId=\"4b3f930f-82cd-48a8-b797-798686e12e5e\"\n * payrollOption=\"dismissalPayroll\"\n * onEvent={() => {}}\n * />\n * )\n * }\n * ```\n */\nexport function TerminationSummary(props: TerminationSummaryProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nconst Root = ({\n employeeId,\n companyId,\n payrollOption,\n payrollUuid,\n dictionary,\n className,\n}: TerminationSummaryProps) => {\n useComponentDictionary('Employee.Terminations.TerminationSummary', dictionary)\n useI18n('Employee.Terminations.TerminationSummary')\n\n const queryClient = useQueryClient()\n const { onEvent, baseSubmitHandler } = useBase()\n\n const [isCancelDialogOpen, setIsCancelDialogOpen] = useState(false)\n\n const {\n data: { employeeShow: employee },\n } = useEmployeesGetSuspense({ employeeId })\n\n const { data: terminationsData } = useEmployeeEmploymentsGetTerminationsSuspense({ employeeId })\n\n const { mutateAsync: deleteTermination, isPending: isDeleting } =\n useEmployeeEmploymentsDeleteTerminationMutation()\n\n const employeeName = [employee?.firstName, employee?.lastName].filter(Boolean).join(' ')\n\n const terminations = terminationsData.terminations ?? []\n const termination = terminations.find(t => t.active) ?? terminations[0]\n\n const effectiveDate = termination?.effectiveDate\n const canCancel = termination?.cancelable === true\n const effectiveDateLocal = normalizeToDate(effectiveDate)\n const todayMidnight = new Date(new Date().toDateString())\n const canEdit =\n !employee?.terminated && effectiveDateLocal ? effectiveDateLocal >= todayMidnight : false\n\n const showRunOffCyclePayroll = payrollOption === 'anotherWay'\n const showRunPayroll =\n !showRunOffCyclePayroll &&\n (termination?.runTerminationPayroll === true || payrollOption === 'dismissalPayroll')\n\n // Only show success alert if payrollOption is provided (meaning we just completed the termination)\n // Don't show it if we're just viewing an existing termination (employee already terminated)\n const showSuccessAlert = payrollOption !== undefined\n\n const handleCancelClick = () => {\n setIsCancelDialogOpen(true)\n }\n\n const handleDialogClose = () => {\n setIsCancelDialogOpen(false)\n }\n\n const handleConfirmCancel = async () => {\n if (!termination) return\n\n await baseSubmitHandler({ terminationId: termination.uuid }, async () => {\n await deleteTermination({\n request: {\n employeeId,\n },\n })\n\n await invalidateAllEmployeeEmploymentsGetTerminations(queryClient)\n await invalidateAllEmployeesList(queryClient)\n\n setIsCancelDialogOpen(false)\n\n onEvent(componentEvents.EMPLOYEE_TERMINATION_CANCELLED, {\n employeeId,\n termination,\n })\n })\n }\n\n const handleEditDismissal = () => {\n onEvent(componentEvents.EMPLOYEE_TERMINATION_EDIT, {\n employeeId,\n termination,\n })\n }\n\n const handleRunDismissalPayroll = () => {\n onEvent(componentEvents.EMPLOYEE_TERMINATION_RUN_PAYROLL, {\n employeeId,\n companyId,\n payrollUuid,\n termination,\n })\n }\n\n const handleRunOffCyclePayroll = () => {\n onEvent(componentEvents.EMPLOYEE_TERMINATION_RUN_OFF_CYCLE_PAYROLL, {\n employeeId,\n companyId,\n termination,\n })\n }\n\n if (!termination) {\n return null\n }\n\n return (\n <TerminationSummaryPresentation\n employeeName={employeeName}\n effectiveDate={effectiveDate}\n canCancel={canCancel}\n canEdit={canEdit}\n showRunPayroll={showRunPayroll}\n showRunOffCyclePayroll={showRunOffCyclePayroll}\n showSuccessAlert={showSuccessAlert}\n onCancelClick={handleCancelClick}\n onEditDismissal={handleEditDismissal}\n onRunDismissalPayroll={handleRunDismissalPayroll}\n onRunOffCyclePayroll={handleRunOffCyclePayroll}\n isLoading={isDeleting}\n isCancelDialogOpen={isCancelDialogOpen}\n onDialogClose={handleDialogClose}\n onDialogConfirm={handleConfirmCancel}\n isCancelling={isDeleting}\n className={className}\n />\n )\n}\n"],"names":["TerminationSummary","props","jsx","BaseComponent","Root","employeeId","companyId","payrollOption","payrollUuid","dictionary","className","useComponentDictionary","useI18n","queryClient","useQueryClient","onEvent","baseSubmitHandler","useBase","isCancelDialogOpen","setIsCancelDialogOpen","useState","employee","useEmployeesGetSuspense","terminationsData","useEmployeeEmploymentsGetTerminationsSuspense","deleteTermination","isDeleting","useEmployeeEmploymentsDeleteTerminationMutation","employeeName","terminations","termination","t","effectiveDate","canCancel","effectiveDateLocal","normalizeToDate","todayMidnight","canEdit","showRunOffCyclePayroll","showRunPayroll","showSuccessAlert","handleCancelClick","handleDialogClose","handleConfirmCancel","invalidateAllEmployeeEmploymentsGetTerminations","invalidateAllEmployeesList","componentEvents","handleEditDismissal","handleRunDismissalPayroll","handleRunOffCyclePayroll","TerminationSummaryPresentation"],"mappings":"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"}
|