@gusto/embedded-react-sdk 0.56.0 → 0.56.2
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 +27 -0
- package/dist/components/Common/UI/Breadcrumbs/Breadcrumbs.js +1 -1
- package/dist/components/Common/UI/FileInput/FileInput.js +1 -1
- package/dist/components/Common/UI/ProgressBar/ProgressBar.js +4 -4
- 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/useInviteSignatory.js +3 -6
- package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.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/context.js +3 -6
- package/dist/components/Company/BankAccount/BankAccountForm/context.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/useFederalTaxes.js +8 -11
- package/dist/components/Company/FederalTaxes/useFederalTaxes.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/Locations/LocationForm/useLocationForm.js +3 -6
- package/dist/components/Company/Locations/LocationForm/useLocationForm.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/StateTaxes/StateTaxesForm/context.js +3 -6
- package/dist/components/Company/StateTaxes/StateTaxesForm/context.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/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/FederalTaxes/shared/FederalTaxesView.js +1 -1
- package/dist/components/Employee/PaymentMethod/management/PaymentMethodBankForm.js +4 -4
- package/dist/components/Employee/PaymentMethod/onboarding/BankForm.js +4 -4
- package/dist/components/Flow/Flow.js +1 -1
- package/dist/components/Payroll/GrossUpModal/GrossUpModal.js +6 -7
- package/dist/components/Payroll/GrossUpModal/GrossUpModal.js.map +1 -1
- package/dist/components/Payroll/OffCycle/OffCycleFlow.js.map +1 -1
- package/dist/components/Payroll/OffCycle/OffCycleFlowComponents.js +24 -18
- package/dist/components/Payroll/OffCycle/OffCycleFlowComponents.js.map +1 -1
- package/dist/components/Payroll/OffCycle/offCycleStateMachine.js +39 -21
- package/dist/components/Payroll/OffCycle/offCycleStateMachine.js.map +1 -1
- package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js +85 -82
- package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js.map +1 -1
- package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.js +52 -51
- package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerAlerts.js +12 -12
- package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerAlerts.js.map +1 -1
- package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerList.js +40 -40
- package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerList.js.map +1 -1
- package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js +26 -25
- package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js.map +1 -1
- package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js +71 -61
- package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js.map +1 -1
- package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js +13 -16
- package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollEditEmployee/TimeOffField.js +0 -1
- package/dist/components/Payroll/PayrollEditEmployee/TimeOffField.js.map +1 -1
- package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/payrollEditEmployeeHelpers.js +138 -110
- package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/payrollEditEmployeeHelpers.js.map +1 -1
- package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/usePayrollEditEmployeeForm.js +149 -146
- package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/usePayrollEditEmployeeForm.js.map +1 -1
- package/dist/components/Payroll/PayrollExecutionFlow/PayrollExecutionFlow.js.map +1 -1
- package/dist/components/Payroll/PayrollExecutionFlow/payrollExecutionMachine.js +4 -0
- package/dist/components/Payroll/PayrollExecutionFlow/payrollExecutionMachine.js.map +1 -1
- package/dist/components/Payroll/PayrollFlow/PayrollFlow.js.map +1 -1
- package/dist/components/Payroll/PayrollFlow/TransitionFlowContextual.js +22 -35
- package/dist/components/Payroll/PayrollFlow/TransitionFlowContextual.js.map +1 -1
- package/dist/components/Payroll/Transition/TransitionFlow.js +49 -36
- package/dist/components/Payroll/Transition/TransitionFlow.js.map +1 -1
- package/dist/components/Payroll/Transition/TransitionFlowComponents.js +24 -47
- package/dist/components/Payroll/Transition/TransitionFlowComponents.js.map +1 -1
- package/dist/components/Payroll/Transition/transitionStateMachine.js +35 -40
- package/dist/components/Payroll/Transition/transitionStateMachine.js.map +1 -1
- package/dist/components/Payroll/TransitionPayroll/TransitionPayroll.js +48 -0
- package/dist/components/Payroll/TransitionPayroll/TransitionPayroll.js.map +1 -0
- package/dist/components/Payroll/TransitionPayroll/TransitionPayrollComponents.js +35 -0
- package/dist/components/Payroll/TransitionPayroll/TransitionPayrollComponents.js.map +1 -0
- package/dist/components/Payroll/TransitionPayroll/transitionPayrollStateMachine.js +23 -0
- package/dist/components/Payroll/TransitionPayroll/transitionPayrollStateMachine.js.map +1 -0
- package/dist/components/Payroll/TransitionPayroll/useResolveTransitionPayroll.js +32 -0
- package/dist/components/Payroll/TransitionPayroll/useResolveTransitionPayroll.js.map +1 -0
- package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.js +48 -47
- package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.js.map +1 -1
- package/dist/components/Payroll/index.js +7 -5
- package/dist/components/Payroll/index.js.map +1 -1
- package/dist/components/Payroll/usePreparedPayrollData.js +12 -15
- package/dist/components/Payroll/usePreparedPayrollData.js.map +1 -1
- package/dist/i18n/I18n.js +9 -4
- package/dist/i18n/I18n.js.map +1 -1
- package/dist/i18n/en/Payroll.PayrollBlocker.json.js +10 -8
- package/dist/i18n/en/Payroll.PayrollBlocker.json.js.map +1 -1
- package/dist/i18n/en/Payroll.UNSTABLE_PayrollEditEmployee.json.js +52 -50
- package/dist/i18n/en/Payroll.UNSTABLE_PayrollEditEmployee.json.js.map +1 -1
- package/dist/i18n/es_US/Company.StateTaxes.json.js +1 -1
- package/dist/i18n/es_US/Contractor.ContractorList.json.js +14 -12
- package/dist/i18n/es_US/Contractor.ContractorList.json.js.map +1 -1
- package/dist/i18n/es_US/Contractor.Management.Compensation.json.js +4 -4
- package/dist/i18n/es_US/Contractor.Management.Profile.json.js +4 -4
- package/dist/i18n/es_US/Contractor.ManagementContractorList.json.js +40 -38
- package/dist/i18n/es_US/Contractor.ManagementContractorList.json.js.map +1 -1
- package/dist/i18n/es_US/Contractor.Payments.PaymentsList.json.js +18 -16
- package/dist/i18n/es_US/Contractor.Payments.PaymentsList.json.js.map +1 -1
- package/dist/i18n/es_US/Contractor.Profile.json.js +5 -5
- package/dist/i18n/es_US/Payroll.OffCycleCreation.json.js +11 -9
- package/dist/i18n/es_US/Payroll.OffCycleCreation.json.js.map +1 -1
- package/dist/i18n/es_US/Payroll.OffCyclePayPeriodDateForm.json.js +2 -2
- package/dist/i18n/es_US/Payroll.OffCycleTaxWithholding.json.js +6 -6
- package/dist/i18n/es_US/Payroll.PayrollConfiguration.json.js +15 -15
- package/dist/i18n/es_US/Payroll.PayrollEditEmployee.json.js +28 -26
- package/dist/i18n/es_US/Payroll.PayrollEditEmployee.json.js.map +1 -1
- package/dist/i18n/es_US/Payroll.PayrollOverview.json.js +40 -38
- package/dist/i18n/es_US/Payroll.PayrollOverview.json.js.map +1 -1
- package/dist/i18n/es_US/Payroll.PrintChecksBanner.json.js +14 -0
- package/dist/i18n/es_US/Payroll.PrintChecksBanner.json.js.map +1 -0
- package/dist/i18n/es_US/Payroll.PrintChecksFailure.json.js +12 -0
- package/dist/i18n/es_US/Payroll.PrintChecksFailure.json.js.map +1 -0
- package/dist/i18n/es_US/Payroll.PrintChecksForm.json.js +26 -0
- package/dist/i18n/es_US/Payroll.PrintChecksForm.json.js.map +1 -0
- package/dist/i18n/es_US/Payroll.PrintChecksSummary.json.js +14 -0
- package/dist/i18n/es_US/Payroll.PrintChecksSummary.json.js.map +1 -0
- package/dist/i18n/es_US/Payroll.UNSTABLE_PayrollEditEmployee.json.js +78 -0
- package/dist/i18n/es_US/Payroll.UNSTABLE_PayrollEditEmployee.json.js.map +1 -0
- package/dist/i18n/es_US/common.json.js +1 -1
- package/dist/package.json.js +1 -1
- package/dist/shared/constants.js +21 -20
- package/dist/shared/constants.js.map +1 -1
- package/dist/src/components/Common/ActionsLayout/ActionsLayout.d.ts +1 -1
- package/dist/src/components/Common/Alert/Alert.d.ts +1 -1
- package/dist/src/components/Common/DataView/DataCards/DataCards.d.ts +1 -1
- package/dist/src/components/Common/DataView/DataTable/DataTable.d.ts +1 -1
- package/dist/src/components/Common/DataView/DataView.d.ts +1 -1
- package/dist/src/components/Common/DateRangeFilter/DateRangeFilter.d.ts +1 -1
- package/dist/src/components/Common/DetailViewLayout/DetailViewLayout.d.ts +1 -1
- package/dist/src/components/Common/DocumentList/DocumentList.d.ts +1 -1
- package/dist/src/components/Common/DocumentViewer/DocumentViewer.d.ts +1 -1
- package/dist/src/components/Common/EmptyData/EmptyData.d.ts +1 -1
- package/dist/src/components/Common/FieldCaption/FieldCaption.d.ts +1 -1
- package/dist/src/components/Common/FieldErrorMessage/FieldErrorMessage.d.ts +1 -1
- package/dist/src/components/Common/Fields/CheckboxGroupField/CheckboxGroupField.d.ts +1 -1
- package/dist/src/components/Common/Fields/ComboBoxField/ComboBoxField.d.ts +1 -1
- package/dist/src/components/Common/Fields/PercentageField/PercentageField.d.ts +1 -1
- package/dist/src/components/Common/Fields/RadioGroupField/RadioGroupField.d.ts +1 -1
- package/dist/src/components/Common/Fields/SelectField/SelectField.d.ts +1 -1
- package/dist/src/components/Common/Fields/hooks/FieldElementRegistryProvider.d.ts +1 -1
- package/dist/src/components/Common/Flex/Flex.d.ts +2 -2
- package/dist/src/components/Common/FlowBreadcrumbs/FlowBreadcrumbs.d.ts +1 -1
- package/dist/src/components/Common/Form/Form.d.ts +1 -1
- package/dist/src/components/Common/Grid/Grid.d.ts +1 -1
- package/dist/src/components/Common/HamburgerMenu/HamburgerMenu.d.ts +1 -1
- package/dist/src/components/Common/InlineSpinner/InlineSpinner.d.ts +1 -1
- package/dist/src/components/Common/InternalError/InternalError.d.ts +1 -1
- package/dist/src/components/Common/Loading/Loading.d.ts +1 -1
- package/dist/src/components/Common/OnboardingStatusBadge/index.d.ts +3 -3
- package/dist/src/components/Common/PaginationControl/PaginationControl.d.ts +1 -1
- package/dist/src/components/Common/PayrollLoading/PayrollLoading.d.ts +1 -1
- package/dist/src/components/Common/ReorderableList/ReorderableList.d.ts +1 -1
- package/dist/src/components/Common/RequirementsList/RequirementsList.d.ts +1 -1
- package/dist/src/components/Common/TaxInputs/TaxInputs.d.ts +7 -7
- package/dist/src/components/Common/Toast/Toast.d.ts +1 -1
- package/dist/src/components/Common/UI/Alert/Alert.d.ts +1 -1
- package/dist/src/components/Common/UI/Box/Box.d.ts +1 -1
- package/dist/src/components/Common/UI/BoxHeader/BoxHeader.d.ts +1 -1
- package/dist/src/components/Common/UI/Breadcrumbs/Breadcrumbs.d.ts +1 -1
- package/dist/src/components/Common/UI/Button/Button.d.ts +1 -1
- package/dist/src/components/Common/UI/Button/ButtonIcon.d.ts +1 -1
- package/dist/src/components/Common/UI/CalendarPreview/CalendarLegend.d.ts +1 -1
- package/dist/src/components/Common/UI/CalendarPreview/CalendarPreview.d.ts +1 -1
- package/dist/src/components/Common/UI/Card/Card.d.ts +1 -1
- package/dist/src/components/Common/UI/Checkbox/Checkbox.d.ts +1 -1
- package/dist/src/components/Common/UI/ComboBox/ComboBox.d.ts +1 -1
- package/dist/src/components/Common/UI/DatePicker/DatePicker.d.ts +1 -1
- package/dist/src/components/Common/UI/DateRangePicker/DateRangePicker.d.ts +1 -1
- package/dist/src/components/Common/UI/DescriptionList/DescriptionList.d.ts +1 -1
- package/dist/src/components/Common/UI/Dialog/Dialog.d.ts +1 -1
- package/dist/src/components/Common/UI/FileInput/FileInput.d.ts +1 -1
- package/dist/src/components/Common/UI/FormBox/FormBox.d.ts +1 -1
- package/dist/src/components/Common/UI/FormBoxHeader/FormBoxHeader.d.ts +1 -1
- package/dist/src/components/Common/UI/Heading/Heading.d.ts +1 -1
- package/dist/src/components/Common/UI/Input/Input.d.ts +1 -1
- package/dist/src/components/Common/UI/Link/Link.d.ts +1 -1
- package/dist/src/components/Common/UI/List/OrderedList.d.ts +1 -1
- package/dist/src/components/Common/UI/List/UnorderedList.d.ts +1 -1
- package/dist/src/components/Common/UI/Menu/Menu.d.ts +1 -1
- package/dist/src/components/Common/UI/Modal/Modal.d.ts +1 -1
- package/dist/src/components/Common/UI/MultiSelectComboBox/MultiSelectComboBox.d.ts +1 -1
- package/dist/src/components/Common/UI/NumberInput/NumberInput.d.ts +1 -1
- package/dist/src/components/Common/UI/ProgressBar/ProgressBar.d.ts +1 -1
- package/dist/src/components/Common/UI/Radio/Radio.d.ts +1 -1
- package/dist/src/components/Common/UI/Select/Select.d.ts +1 -1
- package/dist/src/components/Common/UI/Switch/Switch.d.ts +1 -1
- package/dist/src/components/Common/UI/Table/Table.d.ts +1 -1
- package/dist/src/components/Common/UI/Tabs/Tabs.d.ts +1 -1
- package/dist/src/components/Common/UI/Text/Text.d.ts +1 -1
- package/dist/src/components/Common/UI/TextArea/TextArea.d.ts +1 -1
- package/dist/src/components/Common/UI/TextInput/TextInput.d.ts +1 -1
- package/dist/src/components/Company/AssignSignatory/AssignSignatory.d.ts +1 -1
- package/dist/src/components/Company/AssignSignatory/AssignSignatorySelection.d.ts +1 -1
- package/dist/src/components/Company/AssignSignatory/CreateSignatory/Actions.d.ts +1 -1
- package/dist/src/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.d.ts +1 -1
- package/dist/src/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.d.ts +1 -1
- package/dist/src/components/Company/AssignSignatory/Head.d.ts +1 -1
- package/dist/src/components/Company/AssignSignatory/InviteSignatory/Actions.d.ts +1 -1
- package/dist/src/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.d.ts +1 -1
- package/dist/src/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.d.ts +1 -1
- package/dist/src/components/Company/AssignSignatory/SignatoryForm.d.ts +1 -1
- package/dist/src/components/Company/AssignSignatory/TitleSelect.d.ts +1 -1
- package/dist/src/components/Company/BankAccount/BankAccount.d.ts +1 -1
- package/dist/src/components/Company/BankAccount/BankAccountComponents.d.ts +3 -3
- package/dist/src/components/Company/BankAccount/BankAccountForm/Actions.d.ts +1 -1
- package/dist/src/components/Company/BankAccount/BankAccountForm/BankAccountForm.d.ts +1 -1
- package/dist/src/components/Company/BankAccount/BankAccountForm/Form.d.ts +1 -1
- package/dist/src/components/Company/BankAccount/BankAccountForm/Head.d.ts +1 -1
- package/dist/src/components/Company/BankAccount/BankAccountList/AccountView.d.ts +1 -1
- package/dist/src/components/Company/BankAccount/BankAccountList/Actions.d.ts +1 -1
- package/dist/src/components/Company/BankAccount/BankAccountList/BankAccountList.d.ts +1 -1
- package/dist/src/components/Company/BankAccount/BankAccountList/Head.d.ts +1 -1
- package/dist/src/components/Company/BankAccount/BankAccountVerify/Actions.d.ts +1 -1
- package/dist/src/components/Company/BankAccount/BankAccountVerify/BankAccountVerify.d.ts +1 -1
- package/dist/src/components/Company/BankAccount/BankAccountVerify/Form.d.ts +1 -1
- package/dist/src/components/Company/BankAccount/BankAccountVerify/Head.d.ts +1 -1
- package/dist/src/components/Company/DocumentSigner/DocumentList/Actions.d.ts +1 -1
- package/dist/src/components/Company/DocumentSigner/DocumentList/DocumentList.d.ts +1 -1
- package/dist/src/components/Company/DocumentSigner/DocumentList/Head.d.ts +1 -1
- package/dist/src/components/Company/DocumentSigner/DocumentList/List.d.ts +1 -1
- package/dist/src/components/Company/DocumentSigner/DocumentList/ManageSignatories.d.ts +1 -1
- package/dist/src/components/Company/DocumentSigner/DocumentSigner.d.ts +1 -1
- package/dist/src/components/Company/DocumentSigner/SignatureForm/SignatureForm.d.ts +1 -1
- package/dist/src/components/Company/DocumentSigner/documentSignerStateMachine.d.ts +3 -3
- package/dist/src/components/Company/DocumentSigner/shared/useSignCompanyForm/fields.d.ts +2 -2
- package/dist/src/components/Company/FederalTaxes/Actions.d.ts +1 -1
- package/dist/src/components/Company/FederalTaxes/FederalTaxes.d.ts +1 -1
- package/dist/src/components/Company/FederalTaxes/Form.d.ts +1 -1
- package/dist/src/components/Company/FederalTaxes/Head.d.ts +1 -1
- package/dist/src/components/Company/Industry/Actions.d.ts +1 -1
- package/dist/src/components/Company/Industry/Edit.d.ts +1 -1
- package/dist/src/components/Company/Industry/Head.d.ts +1 -1
- package/dist/src/components/Company/Industry/Industry.d.ts +1 -1
- package/dist/src/components/Company/Industry/IndustrySelect.d.ts +1 -1
- package/dist/src/components/Company/Locations/LocationForm/Actions.d.ts +1 -1
- package/dist/src/components/Company/Locations/LocationForm/Form.d.ts +1 -1
- package/dist/src/components/Company/Locations/LocationForm/Head.d.ts +1 -1
- package/dist/src/components/Company/Locations/LocationForm/LocationForm.d.ts +1 -1
- package/dist/src/components/Company/Locations/Locations.d.ts +1 -1
- package/dist/src/components/Company/Locations/LocationsList/Actions.d.ts +1 -1
- package/dist/src/components/Company/Locations/LocationsList/Head.d.ts +1 -1
- package/dist/src/components/Company/Locations/LocationsList/List.d.ts +1 -1
- package/dist/src/components/Company/Locations/LocationsList/LocationsList.d.ts +1 -1
- package/dist/src/components/Company/Locations/locationsStateMachine.d.ts +2 -2
- package/dist/src/components/Company/OnboardingFlow/OnboardingFlow.d.ts +1 -1
- package/dist/src/components/Company/OnboardingFlow/OnboardingFlowComponents.d.ts +9 -9
- package/dist/src/components/Company/OnboardingOverview/Completed.d.ts +1 -1
- package/dist/src/components/Company/OnboardingOverview/MissingRequirements.d.ts +1 -1
- package/dist/src/components/Company/OnboardingOverview/OnboardingOverview.d.ts +1 -1
- package/dist/src/components/Company/PaySchedule/PaySchedule.d.ts +1 -1
- package/dist/src/components/Company/PaySchedule/PayScheduleComponents.d.ts +2 -2
- package/dist/src/components/Company/PaySchedule/PayScheduleForm.d.ts +1 -1
- package/dist/src/components/Company/PaySchedule/PayScheduleList.d.ts +1 -1
- package/dist/src/components/Company/PaySchedule/shared/usePayScheduleForm/fields.d.ts +8 -8
- package/dist/src/components/Company/StateTaxes/StateTaxes.d.ts +1 -1
- package/dist/src/components/Company/StateTaxes/StateTaxesComponents.d.ts +3 -3
- package/dist/src/components/Company/StateTaxes/StateTaxesForm/Actions.d.ts +1 -1
- package/dist/src/components/Company/StateTaxes/StateTaxesForm/Form.d.ts +1 -1
- package/dist/src/components/Company/StateTaxes/StateTaxesForm/Head.d.ts +1 -1
- package/dist/src/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.d.ts +1 -1
- package/dist/src/components/Company/StateTaxes/StateTaxesList/Actions.d.ts +1 -1
- package/dist/src/components/Company/StateTaxes/StateTaxesList/Head.d.ts +1 -1
- package/dist/src/components/Company/StateTaxes/StateTaxesList/List.d.ts +1 -1
- package/dist/src/components/Company/StateTaxes/StateTaxesList/StateTaxesList.d.ts +1 -1
- package/dist/src/components/Company/StateTaxes/TaxRateManagement/AddRateAction.d.ts +1 -1
- package/dist/src/components/Company/StateTaxes/TaxRateManagement/AddTaxRateDialog.d.ts +1 -1
- package/dist/src/components/Company/StateTaxes/TaxRateManagement/TaxRateHistorySection.d.ts +1 -1
- package/dist/src/components/Company/StateTaxes/TaxRateManagement/TaxRateManagement.d.ts +1 -1
- package/dist/src/components/Company/StateTaxes/shared/RequirementFields.d.ts +1 -1
- package/dist/src/components/Contractor/Address/management/Address.d.ts +1 -1
- package/dist/src/components/Contractor/Address/management/AddressCard/AddressCard.d.ts +1 -1
- package/dist/src/components/Contractor/Address/management/AddressComponents.d.ts +2 -2
- package/dist/src/components/Contractor/Address/management/AddressEditForm.d.ts +1 -1
- package/dist/src/components/Contractor/Address/shared/useContractorAddressForm/fields.d.ts +5 -5
- package/dist/src/components/Contractor/Compensation/management/Compensation.d.ts +1 -1
- package/dist/src/components/Contractor/Compensation/management/CompensationCard/CompensationCard.d.ts +1 -1
- package/dist/src/components/Contractor/Compensation/management/CompensationComponents.d.ts +2 -2
- package/dist/src/components/Contractor/Compensation/management/CompensationEditForm.d.ts +1 -1
- package/dist/src/components/Contractor/Compensation/shared/useContractorPayForm/fields.d.ts +2 -2
- package/dist/src/components/Contractor/ContractorList/management/ManagementContractorList.d.ts +1 -1
- package/dist/src/components/Contractor/ContractorList/management/ManagementContractorListView.d.ts +1 -1
- package/dist/src/components/Contractor/ContractorList/onboarding/ContractorList.d.ts +1 -1
- package/dist/src/components/Contractor/ContractorList/onboarding/ContractorListView.d.ts +1 -1
- package/dist/src/components/Contractor/ContractorListFlow/ContractorListFlow.d.ts +1 -1
- package/dist/src/components/Contractor/ContractorListFlow/ContractorListFlowComponents.d.ts +2 -2
- package/dist/src/components/Contractor/Dashboard/Dashboard.d.ts +1 -1
- package/dist/src/components/Contractor/Dashboard/DashboardComponents.d.ts +5 -5
- package/dist/src/components/Contractor/Dashboard/DashboardFlow.d.ts +1 -1
- package/dist/src/components/Contractor/Dashboard/DetailsView.d.ts +1 -1
- package/dist/src/components/Contractor/Dashboard/PayView.d.ts +1 -1
- package/dist/src/components/Contractor/Documents/management/DocumentsCard/DocumentsCard.d.ts +1 -1
- package/dist/src/components/Contractor/Documents/onboarding/DocumentSigner/DocumentSigner.d.ts +1 -1
- package/dist/src/components/Contractor/Documents/onboarding/DocumentSigner/documentSignerStateMachine.d.ts +2 -2
- package/dist/src/components/Contractor/Documents/onboarding/DocumentsList/DocumentsList.d.ts +1 -1
- package/dist/src/components/Contractor/Documents/shared/SignatureForm/SignatureForm.d.ts +1 -1
- package/dist/src/components/Contractor/Documents/shared/SignatureForm/useContractorSignatureForm/fields.d.ts +19 -19
- package/dist/src/components/Contractor/Landing/Landing.d.ts +1 -1
- package/dist/src/components/Contractor/NewHireReport/NewHireReport.d.ts +1 -1
- package/dist/src/components/Contractor/OnboardingFlow/OnboardingFlow.d.ts +1 -1
- package/dist/src/components/Contractor/OnboardingFlow/OnboardingFlowComponents.d.ts +7 -7
- package/dist/src/components/Contractor/OnboardingSummary/OnboardingSummary.d.ts +1 -1
- package/dist/src/components/Contractor/PaymentMethod/management/PaymentMethod.d.ts +1 -1
- package/dist/src/components/Contractor/PaymentMethod/management/PaymentMethodCard/PaymentMethodCard.d.ts +1 -1
- package/dist/src/components/Contractor/PaymentMethod/management/PaymentMethodComponents.d.ts +2 -2
- package/dist/src/components/Contractor/PaymentMethod/management/PaymentMethodEditForm.d.ts +1 -1
- package/dist/src/components/Contractor/PaymentMethod/onboarding/PaymentMethod.d.ts +1 -1
- package/dist/src/components/Contractor/PaymentMethod/shared/ContractorBankAccountFields/ContractorBankAccountFields.d.ts +1 -1
- package/dist/src/components/Contractor/PaymentMethod/shared/ContractorBankAccountFormBody/ContractorBankAccountFormBody.d.ts +1 -1
- package/dist/src/components/Contractor/PaymentMethod/shared/useContractorBankAccountForm/fields.d.ts +4 -4
- package/dist/src/components/Contractor/PaymentMethod/shared/useContractorPaymentMethodForm/fields.d.ts +1 -1
- package/dist/src/components/Contractor/Payments/CreateHistoricalPayment/CreateHistoricalPayment.d.ts +1 -1
- package/dist/src/components/Contractor/Payments/CreatePayment/CreatePayment.d.ts +1 -1
- package/dist/src/components/Contractor/Payments/CreatePayment/CreatePaymentPresentation.d.ts +1 -1
- package/dist/src/components/Contractor/Payments/CreatePayment/FastAchSubmissionBlockerBanner.d.ts +1 -1
- package/dist/src/components/Contractor/Payments/CreatePayment/GenericBlocker.d.ts +1 -1
- package/dist/src/components/Contractor/Payments/CreatePayment/PreviewPresentation.d.ts +1 -1
- package/dist/src/components/Contractor/Payments/CreatePaymentFlow/CreatePaymentFlow.d.ts +2 -2
- package/dist/src/components/Contractor/Payments/CreatePaymentFlow/CreatePaymentFlowComponents.d.ts +2 -2
- package/dist/src/components/Contractor/Payments/HistoricalPaymentFlow/HistoricalPaymentFlow.d.ts +2 -2
- package/dist/src/components/Contractor/Payments/HistoricalPaymentFlow/HistoricalPaymentFlowComponents.d.ts +2 -2
- package/dist/src/components/Contractor/Payments/HistoricalPaymentSummary/HistoricalPaymentSummary.d.ts +1 -1
- package/dist/src/components/Contractor/Payments/PaymentFlow/PaymentFlow.d.ts +1 -1
- package/dist/src/components/Contractor/Payments/PaymentFlow/PaymentFlowComponents.d.ts +5 -5
- package/dist/src/components/Contractor/Payments/PaymentHistory/PaymentHistory.d.ts +1 -1
- package/dist/src/components/Contractor/Payments/PaymentHistory/PaymentHistoryPresentation.d.ts +1 -1
- package/dist/src/components/Contractor/Payments/PaymentStatement/PaymentStatement.d.ts +1 -1
- package/dist/src/components/Contractor/Payments/PaymentStatement/PaymentStatementPresentation.d.ts +1 -1
- package/dist/src/components/Contractor/Payments/PaymentSummary/PaymentSummary.d.ts +2 -2
- package/dist/src/components/Contractor/Payments/PaymentSummary/PaymentSummaryPresentation.d.ts +1 -1
- package/dist/src/components/Contractor/Payments/PaymentsList/PaymentsList.d.ts +2 -2
- package/dist/src/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.d.ts +1 -1
- package/dist/src/components/Contractor/Payments/ViewPaymentFlow/ViewPaymentFlow.d.ts +2 -2
- package/dist/src/components/Contractor/Payments/ViewPaymentFlow/ViewPaymentFlowComponents.d.ts +2 -2
- package/dist/src/components/Contractor/Payments/shared/PaymentSummaryBlock/PaymentSummaryBlock.d.ts +1 -1
- package/dist/src/components/Contractor/Payments/shared/SetPaymentAmounts/EditContractorPaymentPresentation.d.ts +1 -1
- package/dist/src/components/Contractor/Payments/shared/SetPaymentAmounts/SetPaymentAmounts.d.ts +1 -1
- package/dist/src/components/Contractor/Profile/management/Profile.d.ts +1 -1
- package/dist/src/components/Contractor/Profile/management/ProfileCard/ProfileCard.d.ts +1 -1
- package/dist/src/components/Contractor/Profile/management/ProfileComponents.d.ts +2 -2
- package/dist/src/components/Contractor/Profile/management/ProfileEditForm.d.ts +1 -1
- package/dist/src/components/Contractor/Profile/onboarding/BusinessSelfOnboardingProfile.d.ts +1 -1
- package/dist/src/components/Contractor/Profile/onboarding/ContractorProfile.d.ts +1 -1
- package/dist/src/components/Contractor/Profile/onboarding/IndividualSelfOnboardingProfile.d.ts +1 -1
- package/dist/src/components/Contractor/Profile/onboarding/SelfOnboardingContractorProfile.d.ts +1 -1
- package/dist/src/components/Contractor/Profile/shared/useContractorDetailsForm/fields.d.ts +14 -14
- package/dist/src/components/Contractor/SelfOnboardingFlow/SelfOnboardingComponents.d.ts +6 -6
- package/dist/src/components/Contractor/SelfOnboardingFlow/SelfOnboardingFlow.d.ts +1 -1
- package/dist/src/components/Contractor/Submit/Submit.d.ts +1 -1
- package/dist/src/components/Contractor/Submit/SubmitDone.d.ts +1 -1
- package/dist/src/components/Contractor/shared/SelectContractors/SelectContractors.d.ts +1 -1
- package/dist/src/components/Contractor/shared/SelectContractors/SelectContractorsPresentation.d.ts +1 -1
- package/dist/src/components/Employee/Compensation/management/Compensation.d.ts +1 -1
- package/dist/src/components/Employee/Compensation/management/CompensationAddAnotherJobForm/CompensationAddAnotherJobForm.d.ts +1 -1
- package/dist/src/components/Employee/Compensation/management/CompensationAddJobForm/CompensationAddJobForm.d.ts +1 -1
- package/dist/src/components/Employee/Compensation/management/CompensationCard/CompensationCard.d.ts +1 -1
- package/dist/src/components/Employee/Compensation/management/CompensationComponents.d.ts +4 -4
- package/dist/src/components/Employee/Compensation/management/CompensationEditForm/CompensationEditForm.d.ts +1 -1
- package/dist/src/components/Employee/Compensation/management/CompensationEditJobForm/CompensationEditJobForm.d.ts +1 -1
- package/dist/src/components/Employee/Compensation/management/CompensationEditPendingJobForm/CompensationEditPendingJobForm.d.ts +1 -1
- package/dist/src/components/Employee/Compensation/management/ManagementCompensationFormBody.d.ts +1 -1
- package/dist/src/components/Employee/Compensation/onboarding/Compensation.d.ts +2 -2
- package/dist/src/components/Employee/Compensation/onboarding/CompensationFlowComponents.d.ts +3 -3
- package/dist/src/components/Employee/Compensation/onboarding/EditCompensation/EditCompensation.d.ts +1 -1
- package/dist/src/components/Employee/Compensation/onboarding/JobsList/JobsList.d.ts +1 -1
- package/dist/src/components/Employee/Compensation/onboarding/JobsList/JobsListPresentation.d.ts +1 -1
- package/dist/src/components/Employee/Compensation/shared/AddCompensationFormBody.d.ts +1 -1
- package/dist/src/components/Employee/Compensation/shared/PendingChangesReviewModal.d.ts +1 -1
- package/dist/src/components/Employee/Compensation/shared/useCompensationForm/fields.d.ts +7 -7
- package/dist/src/components/Employee/Compensation/shared/useJobForm/fields.d.ts +5 -5
- package/dist/src/components/Employee/Dashboard/BasicDetailsView.d.ts +1 -1
- package/dist/src/components/Employee/Dashboard/Dashboard.d.ts +1 -1
- package/dist/src/components/Employee/Dashboard/DashboardComponents.d.ts +13 -13
- package/dist/src/components/Employee/Dashboard/DashboardFlow.d.ts +1 -1
- package/dist/src/components/Employee/Dashboard/JobAndPayView.d.ts +1 -1
- package/dist/src/components/Employee/Dashboard/TaxesView.d.ts +2 -2
- package/dist/src/components/Employee/Deductions/management/Deductions.d.ts +1 -1
- package/dist/src/components/Employee/Deductions/management/DeductionsCard/DeductionsCard.d.ts +1 -1
- package/dist/src/components/Employee/Deductions/management/DeductionsComponents.d.ts +2 -2
- package/dist/src/components/Employee/Deductions/management/DeductionsEditForm/DeductionsEditForm.d.ts +1 -1
- package/dist/src/components/Employee/Deductions/onboarding/Deductions.d.ts +1 -1
- package/dist/src/components/Employee/Deductions/onboarding/DeductionsList/DeductionsList.d.ts +1 -1
- package/dist/src/components/Employee/Deductions/onboarding/deductionsContextualComponents.d.ts +2 -2
- package/dist/src/components/Employee/Deductions/shared/DeductionsForm/ChildSupportFormView.d.ts +1 -1
- package/dist/src/components/Employee/Deductions/shared/DeductionsForm/DeductionsForm.d.ts +1 -1
- package/dist/src/components/Employee/Deductions/shared/DeductionsForm/StandardDeductionForm.d.ts +1 -1
- package/dist/src/components/Employee/Deductions/shared/DeleteDeductionDialog.d.ts +1 -1
- package/dist/src/components/Employee/Deductions/shared/useChildSupportGarnishmentForm/fields.d.ts +8 -8
- package/dist/src/components/Employee/Deductions/shared/useDeductionForm/fields.d.ts +7 -7
- package/dist/src/components/Employee/Documents/management/DocumentManager.d.ts +1 -1
- package/dist/src/components/Employee/Documents/management/Documents.d.ts +1 -1
- package/dist/src/components/Employee/Documents/management/DocumentsCard/DocumentsCard.d.ts +1 -1
- package/dist/src/components/Employee/Documents/management/DocumentsComponents.d.ts +2 -2
- package/dist/src/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/Actions.d.ts +1 -1
- package/dist/src/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/DocumentList.d.ts +1 -1
- package/dist/src/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/Head.d.ts +1 -1
- package/dist/src/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/List.d.ts +1 -1
- package/dist/src/components/Employee/Documents/onboarding/DocumentSigner/DocumentSigner.d.ts +1 -1
- package/dist/src/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibility.d.ts +1 -1
- package/dist/src/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibilityPresentation.d.ts +1 -1
- package/dist/src/components/Employee/Documents/onboarding/DocumentSigner/I9SignatureForm/I9SignatureForm.d.ts +1 -1
- package/dist/src/components/Employee/Documents/onboarding/DocumentSigner/documentSignerStateMachine.d.ts +4 -4
- package/dist/src/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocuments.d.ts +2 -2
- package/dist/src/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocumentsPresentation.d.ts +1 -1
- package/dist/src/components/Employee/Documents/shared/SignatureForm/SignatureForm.d.ts +1 -1
- package/dist/src/components/Employee/Documents/shared/useSignEmployeeForm/fields.d.ts +39 -39
- package/dist/src/components/Employee/EmployeeList/management/ManagementEmployeeList.d.ts +1 -1
- package/dist/src/components/Employee/EmployeeList/management/ManagementEmployeeListView.d.ts +1 -1
- package/dist/src/components/Employee/EmployeeList/onboarding/EmployeeList.d.ts +1 -1
- package/dist/src/components/Employee/EmployeeList/onboarding/EmployeeListView.d.ts +1 -1
- package/dist/src/components/Employee/EmployeeListFlow/EmployeeListFlow.d.ts +1 -1
- package/dist/src/components/Employee/EmployeeListFlow/EmployeeListFlowComponents.d.ts +4 -4
- package/dist/src/components/Employee/FederalTaxes/management/FederalTaxes.d.ts +1 -1
- package/dist/src/components/Employee/FederalTaxes/management/FederalTaxesCard/FederalTaxesCard.d.ts +1 -1
- package/dist/src/components/Employee/FederalTaxes/management/FederalTaxesComponents.d.ts +2 -2
- package/dist/src/components/Employee/FederalTaxes/management/FederalTaxesEditForm.d.ts +1 -1
- package/dist/src/components/Employee/FederalTaxes/onboarding/FederalTaxes.d.ts +1 -1
- package/dist/src/components/Employee/FederalTaxes/shared/FederalTaxesView.d.ts +1 -1
- package/dist/src/components/Employee/FederalTaxes/shared/useFederalTaxesForm/fields.d.ts +6 -6
- package/dist/src/components/Employee/HomeAddress/management/HomeAddress.d.ts +1 -1
- package/dist/src/components/Employee/HomeAddress/management/HomeAddressCard/HomeAddressCard.d.ts +1 -1
- package/dist/src/components/Employee/HomeAddress/management/HomeAddressComponents.d.ts +2 -2
- package/dist/src/components/Employee/HomeAddress/management/HomeAddressEditForm.d.ts +1 -1
- package/dist/src/components/Employee/HomeAddress/management/HomeAddressView.d.ts +1 -1
- package/dist/src/components/Employee/Landing/Landing.d.ts +1 -1
- package/dist/src/components/Employee/OnboardingExecutionFlow/OnboardingExecutionFlow.d.ts +1 -1
- package/dist/src/components/Employee/OnboardingExecutionFlow/OnboardingExecutionFlowComponents.d.ts +3 -3
- package/dist/src/components/Employee/OnboardingExecutionFlow/onboardingExecutionStateMachine.d.ts +1 -1
- package/dist/src/components/Employee/OnboardingFlow/OnboardingFlow.d.ts +1 -1
- package/dist/src/components/Employee/OnboardingFlow/OnboardingFlowComponents.d.ts +2 -2
- package/dist/src/components/Employee/OnboardingSummary/OnboardingSummary.d.ts +2 -2
- package/dist/src/components/Employee/PaymentMethod/management/PaymentMethod.d.ts +1 -1
- package/dist/src/components/Employee/PaymentMethod/management/PaymentMethodBankForm.d.ts +1 -1
- package/dist/src/components/Employee/PaymentMethod/management/PaymentMethodCard.d.ts +1 -1
- package/dist/src/components/Employee/PaymentMethod/management/PaymentMethodComponents.d.ts +3 -3
- package/dist/src/components/Employee/PaymentMethod/management/PaymentMethodSplitForm.d.ts +1 -1
- package/dist/src/components/Employee/PaymentMethod/onboarding/BankForm.d.ts +1 -1
- package/dist/src/components/Employee/PaymentMethod/onboarding/ListView.d.ts +1 -1
- package/dist/src/components/Employee/PaymentMethod/onboarding/PaymentMethod.d.ts +2 -2
- package/dist/src/components/Employee/PaymentMethod/onboarding/PaymentMethodComponents.d.ts +3 -3
- package/dist/src/components/Employee/PaymentMethod/onboarding/SplitView.d.ts +1 -1
- package/dist/src/components/Employee/PaymentMethod/shared/BankFormBody/BankFormBody.d.ts +1 -1
- package/dist/src/components/Employee/PaymentMethod/shared/DeleteBankAccountDialog.d.ts +1 -1
- package/dist/src/components/Employee/PaymentMethod/shared/SplitPaymentsFormBody/SplitPaymentsFormBody.d.ts +1 -1
- package/dist/src/components/Employee/PaymentMethod/shared/useBankForm/fields.d.ts +4 -4
- package/dist/src/components/Employee/PaymentMethod/shared/usePaymentMethodForm/fields.d.ts +1 -1
- package/dist/src/components/Employee/PaymentMethod/shared/useSplitPaymentsForm/fields.d.ts +1 -1
- package/dist/src/components/Employee/Paystubs/management/PaystubsCard/PaystubsCard.d.ts +1 -1
- package/dist/src/components/Employee/Profile/management/Profile.d.ts +1 -1
- package/dist/src/components/Employee/Profile/management/ProfileCard/ProfileCard.d.ts +1 -1
- package/dist/src/components/Employee/Profile/management/ProfileComponents.d.ts +2 -2
- package/dist/src/components/Employee/Profile/management/ProfileEditForm.d.ts +1 -1
- package/dist/src/components/Employee/Profile/onboarding/AdminProfile.d.ts +1 -1
- package/dist/src/components/Employee/Profile/onboarding/EmployeeProfile.d.ts +1 -1
- package/dist/src/components/Employee/Profile/onboarding/Profile.d.ts +2 -2
- package/dist/src/components/Employee/Profile/shared/useEmployeeDetailsForm/fields.d.ts +7 -7
- package/dist/src/components/Employee/Profile/shared/useHomeAddressForm/fields.d.ts +7 -7
- package/dist/src/components/Employee/Profile/shared/useWorkAddressForm/fields.d.ts +2 -2
- package/dist/src/components/Employee/SelfOnboardingFlow/SelfOnboardingComponents.d.ts +7 -7
- package/dist/src/components/Employee/SelfOnboardingFlow/SelfOnboardingFlow.d.ts +1 -1
- package/dist/src/components/Employee/StateTaxes/management/StateTaxes.d.ts +1 -1
- package/dist/src/components/Employee/StateTaxes/management/StateTaxesCard/StateTaxesCard.d.ts +1 -1
- package/dist/src/components/Employee/StateTaxes/management/StateTaxesComponents.d.ts +2 -2
- package/dist/src/components/Employee/StateTaxes/management/StateTaxesEditForm.d.ts +1 -1
- package/dist/src/components/Employee/StateTaxes/onboarding/StateTaxes.d.ts +1 -1
- package/dist/src/components/Employee/StateTaxes/shared/EmployeeStateTaxesView.d.ts +1 -1
- package/dist/src/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/fieldComponents.d.ts +6 -6
- package/dist/src/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.d.ts +1 -1
- package/dist/src/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.d.ts +1 -1
- package/dist/src/components/Employee/Terminations/TerminationFlow/TerminationFlow.d.ts +1 -1
- package/dist/src/components/Employee/Terminations/TerminationFlow/TerminationFlowComponents.d.ts +4 -4
- package/dist/src/components/Employee/Terminations/TerminationSummary/TerminationSummary.d.ts +1 -1
- package/dist/src/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.d.ts +1 -1
- package/dist/src/components/Employee/WorkAddress/management/WorkAddress.d.ts +1 -1
- package/dist/src/components/Employee/WorkAddress/management/WorkAddressCard/WorkAddressCard.d.ts +1 -1
- package/dist/src/components/Employee/WorkAddress/management/WorkAddressComponents.d.ts +2 -2
- package/dist/src/components/Employee/WorkAddress/management/WorkAddressEditForm.d.ts +1 -1
- package/dist/src/components/Employee/WorkAddress/management/WorkAddressView.d.ts +1 -1
- package/dist/src/components/Flow/Flow.d.ts +1 -1
- package/dist/src/components/Flow/FlowHeader.d.ts +1 -1
- package/dist/src/components/InformationRequests/InformationRequestForm/InformationRequestForm.d.ts +2 -2
- package/dist/src/components/InformationRequests/InformationRequestList/InformationRequestList.d.ts +1 -1
- package/dist/src/components/InformationRequests/InformationRequests.d.ts +1 -1
- package/dist/src/components/InformationRequests/InformationRequestsComponents.d.ts +1 -1
- package/dist/src/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.d.ts +1 -1
- package/dist/src/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsBanner/ConfirmWireDetailsBanner.d.ts +1 -1
- package/dist/src/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsComponents.d.ts +2 -2
- package/dist/src/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/ConfirmWireDetailsForm.d.ts +1 -1
- package/dist/src/components/Payroll/ConfirmWireDetails/WireInstructions/WireInstructions.d.ts +1 -1
- package/dist/src/components/Payroll/Dismissal/DismissalFlow.d.ts +1 -1
- package/dist/src/components/Payroll/Dismissal/DismissalFlowComponents.d.ts +2 -2
- package/dist/src/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelection.d.ts +1 -1
- package/dist/src/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.d.ts +1 -1
- package/dist/src/components/Payroll/GrossUpModal/GrossUpModal.d.ts +1 -1
- package/dist/src/components/Payroll/OffCycle/OffCycleFlow.d.ts +3 -1
- package/dist/src/components/Payroll/OffCycle/OffCycleFlowComponents.d.ts +4 -2
- package/dist/src/components/Payroll/OffCycle/offCycleStateMachine.d.ts +1 -0
- package/dist/src/components/Payroll/OffCycleCreation/OffCycleCreation.d.ts +2 -1
- package/dist/src/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.d.ts +1 -1
- package/dist/src/components/Payroll/OffCycleCreation/OffCycleCreationTypes.d.ts +5 -0
- package/dist/src/components/Payroll/OffCycleDeductionsSetting/OffCycleDeductionsSetting.d.ts +1 -1
- package/dist/src/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormPresentation.d.ts +1 -1
- package/dist/src/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelection.d.ts +1 -1
- package/dist/src/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.d.ts +1 -1
- package/dist/src/components/Payroll/OffCycleTaxWithholdingModal/OffCycleTaxWithholdingModal.d.ts +1 -1
- package/dist/src/components/Payroll/OffCycleTaxWithholdingTable/OffCycleTaxWithholdingTable.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollBlocker/components/PayrollBlockerAlerts.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollBlocker/components/PayrollBlockerList.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollConfiguration/PayrollConfiguration.d.ts +2 -2
- package/dist/src/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollEditEmployee/TimeOffField.d.ts +2 -2
- package/dist/src/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/payrollEditEmployeeHelpers.d.ts +18 -0
- package/dist/src/components/Payroll/PayrollExecutionFlow/PayrollExecutionFlow.d.ts +3 -3
- package/dist/src/components/Payroll/PayrollExecutionFlow/payrollExecutionMachine.d.ts +8 -0
- package/dist/src/components/Payroll/PayrollFlow/OffCycleFlowContextual.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollFlow/PayrollExecutionFlowContextual.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollFlow/PayrollFlow.d.ts +2 -2
- package/dist/src/components/Payroll/PayrollFlow/PayrollFlowComponents.d.ts +7 -7
- package/dist/src/components/Payroll/PayrollFlow/TransitionFlowContextual.d.ts +7 -2
- package/dist/src/components/Payroll/PayrollHistory/PayrollHistory.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollHistory/PayrollHistoryPresentation.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollLanding/PayrollLanding.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.d.ts +3 -3
- package/dist/src/components/Payroll/PayrollList/PayrollList.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollList/PayrollListPresentation.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollOverview/PayrollOverview.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollOverview/PayrollOverviewPresentation.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchSubmissionBlockerBanner.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollOverview/SubmissionBlockers/GenericBlocker.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollReceipts/PayrollReceipts.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollStatusBadges/PayrollStatusBadges.d.ts +1 -1
- package/dist/src/components/Payroll/PrintChecks/PrintChecks.d.ts +1 -1
- package/dist/src/components/Payroll/PrintChecks/PrintChecksBanner/PrintChecksBanner.d.ts +1 -1
- package/dist/src/components/Payroll/PrintChecks/PrintChecksComponents.d.ts +3 -3
- package/dist/src/components/Payroll/PrintChecks/PrintChecksFailure/PrintChecksFailure.d.ts +1 -1
- package/dist/src/components/Payroll/PrintChecks/PrintChecksForm/PrintChecksForm.d.ts +1 -1
- package/dist/src/components/Payroll/PrintChecks/PrintChecksSummary/PrintChecksSummary.d.ts +1 -1
- package/dist/src/components/Payroll/RecoveryCases/RecoveryCases.d.ts +1 -1
- package/dist/src/components/Payroll/RecoveryCases/RecoveryCasesComponents.d.ts +1 -1
- package/dist/src/components/Payroll/RecoveryCases/RecoveryCasesList/RecoveryCasesList.d.ts +1 -1
- package/dist/src/components/Payroll/RecoveryCases/RecoveryCasesResubmit/RecoveryCasesResubmit.d.ts +1 -1
- package/dist/src/components/Payroll/Transition/TransitionFlow.d.ts +17 -15
- package/dist/src/components/Payroll/Transition/TransitionFlowComponents.d.ts +21 -12
- package/dist/src/components/Payroll/Transition/transitionStateMachine.d.ts +25 -4
- package/dist/src/components/Payroll/TransitionCreation/TransitionCreation.d.ts +1 -1
- package/dist/src/components/Payroll/TransitionCreation/TransitionCreationPresentation.d.ts +1 -1
- package/dist/src/components/Payroll/TransitionPayroll/TransitionPayroll.d.ts +55 -0
- package/dist/src/components/Payroll/TransitionPayroll/TransitionPayrollComponents.d.ts +24 -0
- package/dist/src/components/Payroll/TransitionPayroll/TransitionPayrollTypes.d.ts +23 -0
- package/dist/src/components/Payroll/TransitionPayroll/index.d.ts +2 -0
- package/dist/src/components/Payroll/TransitionPayroll/transitionPayrollStateMachine.d.ts +15 -0
- package/dist/src/components/Payroll/TransitionPayroll/useResolveTransitionPayroll.d.ts +28 -0
- package/dist/src/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlert.d.ts +1 -1
- package/dist/src/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlertPresentation.d.ts +1 -1
- package/dist/src/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.d.ts +1 -1
- package/dist/src/components/Payroll/index.d.ts +2 -0
- package/dist/src/components/TimeOff/AddEmployeesHoliday/AddEmployeesHoliday.d.ts +1 -1
- package/dist/src/components/TimeOff/AddEmployeesToPolicy/AddEmployeesToPolicy.d.ts +1 -1
- package/dist/src/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetail.d.ts +1 -1
- package/dist/src/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailPresentation.d.ts +1 -1
- package/dist/src/components/TimeOff/HolidaySelectionForm/HolidaySelectionForm.d.ts +1 -1
- package/dist/src/components/TimeOff/HolidaySelectionForm/HolidaySelectionFormPresentation.d.ts +1 -1
- package/dist/src/components/TimeOff/PolicyList/PolicyList.d.ts +1 -1
- package/dist/src/components/TimeOff/PolicyList/PolicyListPresentation.d.ts +1 -1
- package/dist/src/components/TimeOff/PolicySettings/PolicySettings.d.ts +1 -1
- package/dist/src/components/TimeOff/PolicySettings/PolicySettingsPresentation.d.ts +1 -1
- package/dist/src/components/TimeOff/PolicyTypeSelector/PolicyTypeSelector.d.ts +1 -1
- package/dist/src/components/TimeOff/PolicyTypeSelector/PolicyTypeSelectorPresentation.d.ts +1 -1
- package/dist/src/components/TimeOff/TimeOffFlow/TimeOffFlow.d.ts +1 -1
- package/dist/src/components/TimeOff/TimeOffFlow/TimeOffFlowComponents.d.ts +12 -12
- package/dist/src/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationForm.d.ts +1 -1
- package/dist/src/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormPresentation.d.ts +1 -1
- package/dist/src/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesHoliday.d.ts +1 -1
- package/dist/src/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentation.d.ts +1 -1
- package/dist/src/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesTimeOff.d.ts +1 -1
- package/dist/src/components/TimeOff/TimeOffPolicyDetail/EditEmployeeBalanceModal.d.ts +1 -1
- package/dist/src/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetail.d.ts +1 -1
- package/dist/src/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetailPresentation.d.ts +1 -1
- package/dist/src/components/TimeOff/ViewHolidayEmployees/ViewHolidayEmployees.d.ts +1 -1
- package/dist/src/components/TimeOff/ViewHolidayPolicyDetails/ViewHolidayPolicyDetails.d.ts +1 -1
- package/dist/src/components/TimeOff/ViewHolidaySchedule/ViewHolidaySchedule.d.ts +1 -1
- package/dist/src/components/TimeOff/shared/EmployeeTable/EmployeeTable.d.ts +1 -1
- package/dist/src/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayout.d.ts +1 -1
- package/dist/src/contexts/ApiProvider/ApiProvider.d.ts +1 -1
- package/dist/src/contexts/LoadingIndicatorProvider/LoadingIndicatorProvider.d.ts +1 -1
- package/dist/src/contexts/LocaleProvider/LocaleProvider.d.ts +1 -1
- package/dist/src/contexts/ObservabilityProvider/ObservabilityProvider.d.ts +1 -1
- package/dist/src/contexts/ThemeProvider/customRender.d.ts +1 -1
- package/dist/src/contexts/UnstableFeaturesProvider/UnstableFeaturesProvider.d.ts +1 -1
- package/dist/src/i18n/types.d.ts +9 -1
- package/dist/src/partner-hook-utils/form/FormFieldsMetadataProvider.d.ts +1 -1
- package/dist/src/partner-hook-utils/form/SDKFormProvider.d.ts +1 -1
- package/dist/src/shared/constants.d.ts +2 -0
- package/dist/src/test-utils/renderWithProviders.d.ts +1 -1
- package/docs/guides/endpoint-inventory.json +14 -19
- package/package.json +8 -8
package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.js
CHANGED
|
@@ -2,10 +2,10 @@ import { jsx as t, jsxs as m, Fragment as J } from "react/jsx-runtime";
|
|
|
2
2
|
import { useRef as fe, useMemo as Ee, Fragment as ge } from "react";
|
|
3
3
|
import { useTranslation as ee } from "react-i18next";
|
|
4
4
|
import { PayrollUpdatePaymentMethod as ye } from "@gusto/embedded-api/models/components/payrollupdate";
|
|
5
|
-
import { isSplitByWorkweek as
|
|
6
|
-
import { PayrollEditEmployeeErrorCodes as
|
|
5
|
+
import { isSplitByWorkweek as I } from "../PayrollEditEmployee/shared/usePayrollEditEmployeeForm/fields.js";
|
|
6
|
+
import { PayrollEditEmployeeErrorCodes as B } from "../PayrollEditEmployee/shared/usePayrollEditEmployeeForm/payrollEditEmployeeSchema.js";
|
|
7
7
|
import E from "./UNSTABLE_PayrollEditEmployee.module.scss.js";
|
|
8
|
-
import { componentEvents as Q, COMPENSATION_NAME_REIMBURSEMENT as Ce, COMPENSATION_NAME_PAYCHECK_TIPS as Ne, COMPENSATION_NAME_CASH_TIPS as ve, COMPENSATION_NAME_CORRECTION_PAYMENT as Oe, COMPENSATION_NAME_COMMISSION as
|
|
8
|
+
import { componentEvents as Q, COMPENSATION_NAME_REIMBURSEMENT as Ce, COMPENSATION_NAME_PAYCHECK_TIPS as Ne, COMPENSATION_NAME_CASH_TIPS as ve, COMPENSATION_NAME_CORRECTION_PAYMENT as Oe, COMPENSATION_NAME_COMMISSION as Ae, COMPENSATION_NAME_BONUS as Te, COMPENSATION_NAME_DOUBLE_OVERTIME as Pe, COMPENSATION_NAME_OVERTIME as Me, COMPENSATION_NAME_REGULAR_HOURS as Se } from "../../../shared/constants.js";
|
|
9
9
|
import { BaseBoundaries as Re, BaseLayout as X } from "../../Base/Base.js";
|
|
10
10
|
import "../../Base/useBase.js";
|
|
11
11
|
import { useComponentDictionary as Le, useI18n as _e } from "../../../i18n/I18n.js";
|
|
@@ -41,12 +41,12 @@ const je = ({
|
|
|
41
41
|
rows: h,
|
|
42
42
|
isAdding: b,
|
|
43
43
|
draftFields: N,
|
|
44
|
-
onBeginAdd:
|
|
44
|
+
onBeginAdd: T,
|
|
45
45
|
onSave: P,
|
|
46
46
|
onCancel: L,
|
|
47
|
-
onRemove:
|
|
47
|
+
onRemove: M
|
|
48
48
|
}) => {
|
|
49
|
-
const { t: e } = ee("Payroll.UNSTABLE_PayrollEditEmployee"), { Button: g, ButtonIcon:
|
|
49
|
+
const { t: e } = ee("Payroll.UNSTABLE_PayrollEditEmployee"), { Button: g, ButtonIcon: S, Heading: y } = te(), { Description: C, Amount: v } = N, O = Ve({
|
|
50
50
|
data: h,
|
|
51
51
|
columns: [
|
|
52
52
|
{
|
|
@@ -68,20 +68,20 @@ const je = ({
|
|
|
68
68
|
],
|
|
69
69
|
itemMenu: (d) => {
|
|
70
70
|
if (d.recurring) return null;
|
|
71
|
-
const
|
|
71
|
+
const A = d.description.trim() || e("reimbursementUnnamedFallback");
|
|
72
72
|
return /* @__PURE__ */ t(
|
|
73
|
-
|
|
73
|
+
S,
|
|
74
74
|
{
|
|
75
75
|
variant: "tertiary",
|
|
76
76
|
onClick: () => {
|
|
77
|
-
|
|
77
|
+
M(d.index);
|
|
78
78
|
},
|
|
79
|
-
"aria-label": e("removeReimbursementLabel", { description:
|
|
79
|
+
"aria-label": e("removeReimbursementLabel", { description: A }),
|
|
80
80
|
children: /* @__PURE__ */ t(Ue, { "aria-hidden": !0 })
|
|
81
81
|
}
|
|
82
82
|
);
|
|
83
83
|
},
|
|
84
|
-
emptyState: () => /* @__PURE__ */ t(we, { title: e("reimbursementEmptyTitle"), children: /* @__PURE__ */ t(g, { variant: "secondary", onClick:
|
|
84
|
+
emptyState: () => /* @__PURE__ */ t(we, { title: e("reimbursementEmptyTitle"), children: /* @__PURE__ */ t(g, { variant: "secondary", onClick: T, icon: /* @__PURE__ */ t(Z, { "aria-hidden": !0 }), children: e("addReimbursementCta") }) })
|
|
85
85
|
});
|
|
86
86
|
return /* @__PURE__ */ m(u, { flexDirection: "column", gap: 12, children: [
|
|
87
87
|
/* @__PURE__ */ t(y, { as: "h3", styledAs: "h4", children: e("reimbursementTitle") }),
|
|
@@ -105,7 +105,7 @@ const je = ({
|
|
|
105
105
|
g,
|
|
106
106
|
{
|
|
107
107
|
variant: "secondary",
|
|
108
|
-
onClick:
|
|
108
|
+
onClick: T,
|
|
109
109
|
title: e("addReimbursementLink"),
|
|
110
110
|
icon: /* @__PURE__ */ t(Z, { "aria-hidden": !0 }),
|
|
111
111
|
children: e("addReimbursementLink")
|
|
@@ -116,47 +116,47 @@ const je = ({
|
|
|
116
116
|
employeeId: h,
|
|
117
117
|
companyId: b,
|
|
118
118
|
payrollId: N,
|
|
119
|
-
withReimbursements:
|
|
119
|
+
withReimbursements: T = !0,
|
|
120
120
|
onEvent: P,
|
|
121
121
|
dictionary: L,
|
|
122
|
-
LoaderComponent:
|
|
122
|
+
LoaderComponent: M
|
|
123
123
|
}) => {
|
|
124
124
|
Le("Payroll.UNSTABLE_PayrollEditEmployee", L), _e("Payroll.UNSTABLE_PayrollEditEmployee");
|
|
125
|
-
const { t: e } = ee("Payroll.UNSTABLE_PayrollEditEmployee"), g = Be(), { Alert:
|
|
125
|
+
const { t: e } = ee("Payroll.UNSTABLE_PayrollEditEmployee"), g = Be(), { Alert: S, Box: y, BoxHeader: C, Button: v, Heading: O, Text: d } = te(), A = fe(null), f = Fe({ ref: A }).includes("small"), ne = Ee(
|
|
126
126
|
() => ({
|
|
127
|
-
[
|
|
128
|
-
[
|
|
129
|
-
[
|
|
127
|
+
[B.NEGATIVE_AMOUNT]: e("validations.negativeAmount"),
|
|
128
|
+
[B.REQUIRED_WORKWEEK]: e("validations.requiredWorkweek"),
|
|
129
|
+
[B.REIMBURSEMENT_AMOUNT]: e("validations.reimbursementAmount")
|
|
130
130
|
}),
|
|
131
131
|
[e]
|
|
132
132
|
), r = He({
|
|
133
133
|
employeeId: h,
|
|
134
134
|
companyId: b,
|
|
135
135
|
payrollId: N,
|
|
136
|
-
withReimbursements:
|
|
136
|
+
withReimbursements: T,
|
|
137
137
|
errorMessages: ne
|
|
138
138
|
});
|
|
139
139
|
if (r.isLoading)
|
|
140
|
-
return /* @__PURE__ */ t("div", { ref:
|
|
141
|
-
const { employee: _ } = r.data, c = r.form.Fields,
|
|
140
|
+
return /* @__PURE__ */ t("div", { ref: A, className: E.container, children: /* @__PURE__ */ t(X, { isLoading: !0, error: r.errorHandling.errors, LoaderComponent: M }) });
|
|
141
|
+
const { employee: _ } = r.data, c = r.form.Fields, F = De({
|
|
142
142
|
first_name: _.firstName,
|
|
143
143
|
last_name: _.lastName
|
|
144
144
|
}), re = (n) => {
|
|
145
145
|
switch (n) {
|
|
146
|
-
case Me:
|
|
147
|
-
return e("compensationNames.regularHours");
|
|
148
146
|
case Se:
|
|
147
|
+
return e("compensationNames.regularHours");
|
|
148
|
+
case Me:
|
|
149
149
|
return e("compensationNames.overtime");
|
|
150
150
|
case Pe:
|
|
151
151
|
return e("compensationNames.doubleOvertime");
|
|
152
152
|
default:
|
|
153
153
|
return n;
|
|
154
154
|
}
|
|
155
|
-
},
|
|
155
|
+
}, k = (n) => {
|
|
156
156
|
switch (n) {
|
|
157
|
-
case Ae:
|
|
158
|
-
return e("fixedCompensationNames.bonus");
|
|
159
157
|
case Te:
|
|
158
|
+
return e("fixedCompensationNames.bonus");
|
|
159
|
+
case Ae:
|
|
160
160
|
return e("fixedCompensationNames.commission");
|
|
161
161
|
case Oe:
|
|
162
162
|
return e("fixedCompensationNames.correctionPayment");
|
|
@@ -169,11 +169,11 @@ const je = ({
|
|
|
169
169
|
default:
|
|
170
170
|
return n;
|
|
171
171
|
}
|
|
172
|
-
},
|
|
173
|
-
const { label: o, rowHeader: a, valueColumnLabel: l, labelFor: s, adornmentStart: me, adornmentEnd: de } = i, ce =
|
|
172
|
+
}, w = (n) => I(n) ? n[r.data.workweeks[0]?.startDate ?? ""] ?? [] : n, U = (n, i) => {
|
|
173
|
+
const { label: o, rowHeader: a, valueColumnLabel: l, labelFor: s, adornmentStart: me, adornmentEnd: de } = i, ce = I(n), ue = w(n), $ = (p, x) => /* @__PURE__ */ t("div", { className: E.inputContainer, children: /* @__PURE__ */ t(
|
|
174
174
|
p.Field,
|
|
175
175
|
{
|
|
176
|
-
label:
|
|
176
|
+
label: x,
|
|
177
177
|
shouldVisuallyHideLabel: !0,
|
|
178
178
|
adornmentStart: me,
|
|
179
179
|
adornmentEnd: de
|
|
@@ -183,18 +183,18 @@ const je = ({
|
|
|
183
183
|
justify: "end",
|
|
184
184
|
render: (p) => $(p, s(p.name))
|
|
185
185
|
}, he = r.data.workweeks.map(
|
|
186
|
-
({ startDate: p, endDate:
|
|
187
|
-
const K = g.formatPayPeriodRange(p,
|
|
186
|
+
({ startDate: p, endDate: x }) => {
|
|
187
|
+
const K = g.formatPayPeriodRange(p, x, {
|
|
188
188
|
useShortMonth: !0
|
|
189
189
|
});
|
|
190
190
|
return {
|
|
191
191
|
title: K,
|
|
192
192
|
justify: "end",
|
|
193
|
-
render: (
|
|
193
|
+
render: (D) => {
|
|
194
194
|
const q = n[p]?.find(
|
|
195
|
-
(z) => z.jobUuid ===
|
|
195
|
+
(z) => z.jobUuid === D.jobUuid && z.name === D.name
|
|
196
196
|
);
|
|
197
|
-
return q ? $(q, `${s(
|
|
197
|
+
return q ? $(q, `${s(D.name)} ${K}`) : null;
|
|
198
198
|
}
|
|
199
199
|
};
|
|
200
200
|
}
|
|
@@ -205,7 +205,7 @@ const je = ({
|
|
|
205
205
|
return /* @__PURE__ */ t(R, { label: o, isWithinBox: !0, columns: be, data: ue });
|
|
206
206
|
}, ie = (n, i) => {
|
|
207
207
|
const { title: o, footer: a, ...l } = i;
|
|
208
|
-
return
|
|
208
|
+
return w(n).length === 0 && !a ? null : /* @__PURE__ */ t(y, { header: /* @__PURE__ */ t(C, { title: o }), withPadding: !1, footer: a, children: U(n, l) });
|
|
209
209
|
}, H = (n, i) => {
|
|
210
210
|
if (n.length === 0) return null;
|
|
211
211
|
const { title: o, description: a } = i, l = [
|
|
@@ -240,20 +240,20 @@ const je = ({
|
|
|
240
240
|
return /* @__PURE__ */ t(R, { label: i, isWithinBox: !0, columns: o, data: n });
|
|
241
241
|
}, j = (n) => /* @__PURE__ */ t("div", { className: E.earningsGroupLabel, children: /* @__PURE__ */ t(d, { size: "sm", weight: "semibold", children: n }) }), ae = () => {
|
|
242
242
|
const n = c.overtimeIncludedEarnings, i = c.overtimeExcludedEarnings.map((l) => ({
|
|
243
|
-
label:
|
|
243
|
+
label: k(l.id),
|
|
244
244
|
Field: l.Field
|
|
245
|
-
})), o =
|
|
245
|
+
})), o = w(n).length > 0;
|
|
246
246
|
if (!o && i.length === 0) return null;
|
|
247
247
|
const a = U(n, {
|
|
248
248
|
label: e("additionalEarningsTitle"),
|
|
249
249
|
rowHeader: e("typeColumn"),
|
|
250
250
|
valueColumnLabel: e("amountColumn"),
|
|
251
|
-
labelFor:
|
|
251
|
+
labelFor: k,
|
|
252
252
|
adornmentStart: "$"
|
|
253
253
|
});
|
|
254
|
-
if (!
|
|
254
|
+
if (!I(n)) {
|
|
255
255
|
const l = [
|
|
256
|
-
...n.map((s) => ({ label:
|
|
256
|
+
...n.map((s) => ({ label: k(s.name), Field: s.Field })),
|
|
257
257
|
...i
|
|
258
258
|
];
|
|
259
259
|
return /* @__PURE__ */ t(y, { header: /* @__PURE__ */ t(C, { title: e("additionalEarningsTitle") }), withPadding: !1, children: V(l, e("additionalEarningsTitle")) });
|
|
@@ -261,11 +261,12 @@ const je = ({
|
|
|
261
261
|
return /* @__PURE__ */ m(y, { header: /* @__PURE__ */ t(C, { title: e("additionalEarningsTitle") }), withPadding: !1, children: [
|
|
262
262
|
o ? /* @__PURE__ */ m(J, { children: [
|
|
263
263
|
/* @__PURE__ */ t("div", { className: E.earningsAlert, children: /* @__PURE__ */ t(
|
|
264
|
-
|
|
264
|
+
S,
|
|
265
265
|
{
|
|
266
266
|
status: "info",
|
|
267
|
-
label: e("overtimeMultiplierEarningsAlert"
|
|
268
|
-
disableScrollIntoView: !0
|
|
267
|
+
label: e("overtimeMultiplierEarningsAlert"),
|
|
268
|
+
disableScrollIntoView: !0,
|
|
269
|
+
children: /* @__PURE__ */ t(d, { size: "sm", children: e("overtimeMultiplierEarningsAlertDescription") })
|
|
269
270
|
}
|
|
270
271
|
) }),
|
|
271
272
|
j(e("overtimeIncludedEarningsGroupLabel")),
|
|
@@ -307,7 +308,7 @@ const je = ({
|
|
|
307
308
|
]
|
|
308
309
|
}
|
|
309
310
|
);
|
|
310
|
-
return /* @__PURE__ */ t("div", { ref:
|
|
311
|
+
return /* @__PURE__ */ t("div", { ref: A, className: E.container, children: /* @__PURE__ */ t(X, { error: r.errorHandling.errors, LoaderComponent: M, children: /* @__PURE__ */ t(xe, { formHookResult: r, children: /* @__PURE__ */ m(u, { flexDirection: "column", gap: 24, children: [
|
|
311
312
|
/* @__PURE__ */ m(
|
|
312
313
|
u,
|
|
313
314
|
{
|
|
@@ -316,7 +317,7 @@ const je = ({
|
|
|
316
317
|
alignItems: f ? "flex-start" : "stretch",
|
|
317
318
|
gap: 12,
|
|
318
319
|
children: [
|
|
319
|
-
/* @__PURE__ */ t(u, { flexDirection: "column", alignItems: "stretch", gap: 8, children: /* @__PURE__ */ t(O, { as: "h1", styledAs: "h2", children: e("pageTitle", { employeeName:
|
|
320
|
+
/* @__PURE__ */ t(u, { flexDirection: "column", alignItems: "stretch", gap: 8, children: /* @__PURE__ */ t(O, { as: "h1", styledAs: "h2", children: e("pageTitle", { employeeName: F }) }) }),
|
|
320
321
|
f && Y
|
|
321
322
|
]
|
|
322
323
|
}
|
|
@@ -327,10 +328,10 @@ const je = ({
|
|
|
327
328
|
return /* @__PURE__ */ m(u, { flexDirection: "column", gap: 16, children: [
|
|
328
329
|
n ? /* @__PURE__ */ t(O, { as: "h3", children: i }) : null,
|
|
329
330
|
a ? /* @__PURE__ */ t(
|
|
330
|
-
|
|
331
|
+
S,
|
|
331
332
|
{
|
|
332
333
|
status: "info",
|
|
333
|
-
label: e("overtimeWorkweekAlert", { employeeName:
|
|
334
|
+
label: e("overtimeWorkweekAlert", { employeeName: F }),
|
|
334
335
|
disableScrollIntoView: !0
|
|
335
336
|
}
|
|
336
337
|
) : null,
|
package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UNSTABLE_PayrollEditEmployee.js","sources":["../../../../src/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.tsx"],"sourcesContent":["import { Fragment, useMemo, useRef } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport { PayrollUpdatePaymentMethod } from '@gusto/embedded-api/models/components/payrollupdate'\nimport type { PayrollEditEmployeeProps } from '../PayrollEditEmployee/PayrollEditEmployee'\nimport { usePayrollEditEmployeeForm } from '../PayrollEditEmployee/shared/usePayrollEditEmployeeForm'\nimport {\n isSplitByWorkweek,\n type HourEntry,\n type TimeOffEntry,\n type ReimbursementRow,\n type ReimbursementDraftFields,\n} from '../PayrollEditEmployee/shared/usePayrollEditEmployeeForm/fields'\nimport { PayrollEditEmployeeErrorCodes } from '../PayrollEditEmployee/shared/usePayrollEditEmployeeForm/payrollEditEmployeeSchema'\nimport styles from './UNSTABLE_PayrollEditEmployee.module.scss'\nimport {\n componentEvents,\n COMPENSATION_NAME_REGULAR_HOURS,\n COMPENSATION_NAME_OVERTIME,\n COMPENSATION_NAME_DOUBLE_OVERTIME,\n COMPENSATION_NAME_BONUS,\n COMPENSATION_NAME_COMMISSION,\n COMPENSATION_NAME_CORRECTION_PAYMENT,\n COMPENSATION_NAME_CASH_TIPS,\n COMPENSATION_NAME_PAYCHECK_TIPS,\n COMPENSATION_NAME_REIMBURSEMENT,\n} from '@/shared/constants'\nimport { BaseBoundaries, BaseLayout } from '@/components/Base'\nimport { useComponentDictionary, useI18n } from '@/i18n'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { Flex, Grid, DataView, useDataView, EmptyData } from '@/components/Common'\nimport type { useDataViewPropReturn } from '@/components/Common/DataView/useDataView'\nimport { SDKFormProvider } from '@/partner-hook-utils/form/SDKFormProvider'\nimport { firstLastName, formatNumberAsCurrency } from '@/helpers/formattedStrings'\nimport { useDateFormatter } from '@/hooks/useDateFormatter'\nimport useContainerBreakpoints from '@/hooks/useContainerBreakpoints/useContainerBreakpoints'\nimport PlusCircleIcon from '@/assets/icons/plus-circle.svg?react'\nimport TrashCanSvg from '@/assets/icons/trashcan.svg?react'\n\n/**\n * In-development regular-rate-of-pay rebuild of {@link PayrollEditEmployee}.\n *\n * @remarks\n * Gated behind the `payrollRegularRateOfPay` unstable feature flag and not part of the public\n * SDK surface. `PayrollEditEmployee` renders this in place of the stable editor when the flag is\n * enabled. Consumes {@link usePayrollEditEmployeeForm} and renders the header, the hours /\n * additional-earnings / time-off / payment-method sections, and the\n * `Cancel`/`Save` controls, performing a real payroll update on save. For an overtime-eligible\n * employee on a multi-workweek payroll, Overtime/Double-overtime rows start hidden behind a single,\n * employee-level \"Add overtime\" control (`form.data.withOvertime` / `form.actions.addOvertime`)\n * unless the employee already has real overtime hours or matching per-workweek breakdowns; adding\n * overtime also switches hours and overtime-affecting earnings to per-workweek columns and surfaces\n * the per-row \"fill in every workweek\" validation. `Cancel` and `Save` emit the same events as the\n * stable component so the surrounding flow behaves identically.\n *\n * @internal\n */\nexport function UNSTABLE_PayrollEditEmployee({\n FallbackComponent,\n LoaderComponent,\n ...props\n}: PayrollEditEmployeeProps) {\n return (\n <BaseBoundaries\n componentName=\"Payroll.UNSTABLE_PayrollEditEmployee\"\n FallbackComponent={FallbackComponent}\n LoaderComponent={LoaderComponent}\n >\n <Root LoaderComponent={LoaderComponent} {...props} />\n </BaseBoundaries>\n )\n}\n\ninterface ReimbursementsSectionProps {\n rows: ReimbursementRow[]\n isAdding: boolean\n draftFields: ReimbursementDraftFields\n onBeginAdd: () => void\n onSave: () => void\n onCancel: () => void\n onRemove: (index: number) => void\n}\n\n// Reimbursement UI duplicated from the stable PayrollEditEmployeePresentation for\n// visual parity while the RRoP editor is developed alongside legacy. Powered by\n// usePayrollEditEmployeeForm rather than a local field array/draft form.\nconst ReimbursementsSection = ({\n rows,\n isAdding,\n draftFields,\n onBeginAdd,\n onSave,\n onCancel,\n onRemove,\n}: ReimbursementsSectionProps) => {\n const { t } = useTranslation('Payroll.UNSTABLE_PayrollEditEmployee')\n const { Button, ButtonIcon, Heading } = useComponentContext()\n const { Description, Amount } = draftFields\n\n const reimbursementDataViewProps = useDataView<ReimbursementRow>({\n data: rows,\n columns: [\n {\n key: 'description',\n title: t('reimbursementDescriptionColumn'),\n render: row => row.description.trim() || t('reimbursementUnnamedFallback'),\n },\n {\n key: 'amount',\n title: t('reimbursementAmountColumn'),\n justify: 'end',\n render: row => formatNumberAsCurrency(parseFloat(row.amount || '0')),\n },\n {\n key: 'recurring',\n title: t('reimbursementTypeColumn'),\n render: row =>\n row.recurring ? t('reimbursementTypeRecurring') : t('reimbursementTypeOneTime'),\n },\n ],\n itemMenu: row => {\n if (row.recurring) return null\n const displayDescription = row.description.trim() || t('reimbursementUnnamedFallback')\n return (\n <ButtonIcon\n variant=\"tertiary\"\n onClick={() => {\n onRemove(row.index)\n }}\n aria-label={t('removeReimbursementLabel', { description: displayDescription })}\n >\n <TrashCanSvg aria-hidden />\n </ButtonIcon>\n )\n },\n emptyState: () => (\n <EmptyData title={t('reimbursementEmptyTitle')}>\n <Button variant=\"secondary\" onClick={onBeginAdd} icon={<PlusCircleIcon aria-hidden />}>\n {t('addReimbursementCta')}\n </Button>\n </EmptyData>\n ),\n })\n\n return (\n <Flex flexDirection=\"column\" gap={12}>\n <Heading as=\"h3\" styledAs=\"h4\">\n {t('reimbursementTitle')}\n </Heading>\n {!(rows.length === 0 && isAdding) && (\n <DataView label={t('reimbursementsTableLabel')} {...reimbursementDataViewProps} />\n )}\n {isAdding ? (\n <Flex flexDirection=\"column\" gap={12}>\n <Grid gridTemplateColumns={{ base: '1fr', small: [320, 320] }} gap={20}>\n <Description\n label={t('reimbursementDescriptionLabel')}\n placeholder={t('reimbursementDescriptionPlaceholder')}\n />\n <Amount label={t('reimbursementAmountLabel')} adornmentStart=\"$\" isRequired />\n </Grid>\n <Flex gap={12}>\n <Button onClick={onSave} title={t('saveReimbursementCta')}>\n {t('saveReimbursementCta')}\n </Button>\n <Button variant=\"secondary\" onClick={onCancel} title={t('cancelReimbursementCta')}>\n {t('cancelReimbursementCta')}\n </Button>\n </Flex>\n </Flex>\n ) : (\n rows.length > 0 && (\n <div>\n <Button\n variant=\"secondary\"\n onClick={onBeginAdd}\n title={t('addReimbursementLink')}\n icon={<PlusCircleIcon aria-hidden />}\n >\n {t('addReimbursementLink')}\n </Button>\n </div>\n )\n )}\n </Flex>\n )\n}\n\nconst Root = ({\n employeeId,\n companyId,\n payrollId,\n withReimbursements = true,\n onEvent,\n dictionary,\n LoaderComponent,\n}: PayrollEditEmployeeProps) => {\n useComponentDictionary('Payroll.UNSTABLE_PayrollEditEmployee', dictionary)\n useI18n('Payroll.UNSTABLE_PayrollEditEmployee')\n const { t } = useTranslation('Payroll.UNSTABLE_PayrollEditEmployee')\n const dateFormatter = useDateFormatter()\n\n const { Alert, Box, BoxHeader, Button, Heading, Text } = useComponentContext()\n\n const containerRef = useRef<HTMLDivElement>(null)\n const breakpoints = useContainerBreakpoints({ ref: containerRef })\n const isSmallOrGreater = breakpoints.includes('small')\n\n // Error copy keyed by code, supplied to the hook once. Every bound field\n // resolves and renders its own message from this — the consumer never\n // reconstructs form paths or picks which rule a field can fail. Memoized so\n // the hook's fields aren't rebuilt each render.\n const errorMessages = useMemo(\n () => ({\n [PayrollEditEmployeeErrorCodes.NEGATIVE_AMOUNT]: t('validations.negativeAmount'),\n [PayrollEditEmployeeErrorCodes.REQUIRED_WORKWEEK]: t('validations.requiredWorkweek'),\n [PayrollEditEmployeeErrorCodes.REIMBURSEMENT_AMOUNT]: t('validations.reimbursementAmount'),\n }),\n [t],\n )\n\n const form = usePayrollEditEmployeeForm({\n employeeId,\n companyId,\n payrollId,\n withReimbursements,\n errorMessages,\n })\n\n if (form.isLoading) {\n return (\n <div ref={containerRef} className={styles.container}>\n <BaseLayout isLoading error={form.errorHandling.errors} LoaderComponent={LoaderComponent} />\n </div>\n )\n }\n\n const { employee } = form.data\n const Fields = form.form.Fields\n\n const employeeName = firstLastName({\n first_name: employee.firstName,\n last_name: employee.lastName,\n })\n\n const hoursLabel = (name: string) => {\n switch (name) {\n case COMPENSATION_NAME_REGULAR_HOURS:\n return t('compensationNames.regularHours')\n case COMPENSATION_NAME_OVERTIME:\n return t('compensationNames.overtime')\n case COMPENSATION_NAME_DOUBLE_OVERTIME:\n return t('compensationNames.doubleOvertime')\n default:\n return name\n }\n }\n\n const earningLabel = (name: string) => {\n switch (name) {\n case COMPENSATION_NAME_BONUS:\n return t('fixedCompensationNames.bonus')\n case COMPENSATION_NAME_COMMISSION:\n return t('fixedCompensationNames.commission')\n case COMPENSATION_NAME_CORRECTION_PAYMENT:\n return t('fixedCompensationNames.correctionPayment')\n case COMPENSATION_NAME_CASH_TIPS:\n return t('fixedCompensationNames.cashTips')\n case COMPENSATION_NAME_PAYCHECK_TIPS:\n return t('fixedCompensationNames.paycheckTips')\n case COMPENSATION_NAME_REIMBURSEMENT:\n return t('fixedCompensationNames.reimbursement')\n default:\n return name\n }\n }\n\n // The visible rows for a section: the first workweek's rows drive the row set\n // (workweek columns fan out from there), or the flat list when not split.\n const getSectionRows = (section: HourEntry[] | Record<string, HourEntry[]>) =>\n isSplitByWorkweek(section) ? (section[form.data.workweeks[0]?.startDate ?? ''] ?? []) : section\n\n const buildBreakdownDataView = (\n section: HourEntry[] | Record<string, HourEntry[]>,\n options: {\n label: string\n rowHeader: string\n valueColumnLabel: string\n labelFor: (name: string) => string\n adornmentStart?: string\n adornmentEnd?: string\n },\n ) => {\n const { label, rowHeader, valueColumnLabel, labelFor, adornmentStart, adornmentEnd } = options\n const split = isSplitByWorkweek(section)\n const rows = getSectionRows(section)\n\n const renderField = (entry: HourEntry, fieldLabel: string) => (\n <div className={styles.inputContainer}>\n <entry.Field\n label={fieldLabel}\n shouldVisuallyHideLabel\n adornmentStart={adornmentStart}\n adornmentEnd={adornmentEnd}\n />\n </div>\n )\n\n const valueColumn: useDataViewPropReturn<HourEntry>['columns'][number] = {\n title: valueColumnLabel,\n justify: 'end',\n render: row => renderField(row, labelFor(row.name)),\n }\n\n // Columns come straight from the hook's normalized workweeks, so each header\n // has both boundary dates without re-deriving them from the raw payroll.\n const workweekColumns: useDataViewPropReturn<HourEntry>['columns'] = form.data.workweeks.map(\n ({ startDate, endDate }) => {\n const rangeLabel = dateFormatter.formatPayPeriodRange(startDate, endDate, {\n useShortMonth: true,\n })\n return {\n title: rangeLabel,\n justify: 'end',\n render: row => {\n const cell = (section as Record<string, HourEntry[]>)[startDate]?.find(\n entry => entry.jobUuid === row.jobUuid && entry.name === row.name,\n )\n return cell ? renderField(cell, `${labelFor(row.name)} ${rangeLabel}`) : null\n },\n }\n },\n )\n\n const columns: useDataViewPropReturn<HourEntry>['columns'] = [\n { title: rowHeader, render: row => labelFor(row.name) },\n ...(split ? workweekColumns : [valueColumn]),\n ]\n\n return <DataView label={label} isWithinBox columns={columns} data={rows} />\n }\n\n const renderBreakdownSection = (\n section: HourEntry[] | Record<string, HourEntry[]>,\n options: {\n title: string\n label: string\n rowHeader: string\n valueColumnLabel: string\n labelFor: (name: string) => string\n adornmentStart?: string\n adornmentEnd?: string\n footer?: React.ReactNode\n },\n ) => {\n const { title, footer, ...viewOptions } = options\n if (getSectionRows(section).length === 0 && !footer) return null\n\n return (\n <Box header={<BoxHeader title={title} />} withPadding={false} footer={footer}>\n {buildBreakdownDataView(section, viewOptions)}\n </Box>\n )\n }\n\n const renderTimeOffSection = (\n entries: TimeOffEntry[],\n options: { title: string; description?: string },\n ) => {\n if (entries.length === 0) return null\n const { title, description } = options\n\n const columns: useDataViewPropReturn<TimeOffEntry>['columns'] = [\n {\n title: t('typeColumn'),\n render: entry => entry.name,\n },\n {\n title: t('hoursColumn'),\n justify: 'end',\n render: entry => (\n <div className={styles.inputContainer}>\n <entry.Field\n label={entry.name}\n shouldVisuallyHideLabel\n adornmentEnd={t('hoursUnit')}\n description={\n entry.remaining !== null\n ? t('timeOffBalance.remaining', { balance: entry.remaining })\n : undefined\n }\n />\n </div>\n ),\n },\n ]\n\n return (\n <Box header={<BoxHeader title={title} description={description} />} withPadding={false}>\n <DataView label={title} isWithinBox columns={columns} data={entries} />\n </Box>\n )\n }\n\n // A flat single-amount earnings table: one \"type\" column and one \"$\" input\n // column. Used for the merged no-overtime list and the overtime-excluded group.\n const renderAmountTable = (\n rows: { label: string; Field: HourEntry['Field'] }[],\n label: string,\n ) => {\n const columns: useDataViewPropReturn<(typeof rows)[number]>['columns'] = [\n { title: t('typeColumn'), render: row => row.label },\n {\n title: t('amountColumn'),\n justify: 'end',\n render: row => (\n <div className={styles.inputContainer}>\n <row.Field label={row.label} shouldVisuallyHideLabel adornmentStart=\"$\" />\n </div>\n ),\n },\n ]\n return <DataView label={label} isWithinBox columns={columns} data={rows} />\n }\n\n const renderGroupLabel = (label: string) => (\n <div className={styles.earningsGroupLabel}>\n <Text size=\"sm\" weight=\"semibold\">\n {label}\n </Text>\n </div>\n )\n\n const renderEarningsSection = () => {\n const includedEarnings = Fields.overtimeIncludedEarnings\n const excludedRows = Fields.overtimeExcludedEarnings.map(entry => ({\n label: earningLabel(entry.id),\n Field: entry.Field,\n }))\n\n const hasIncluded = getSectionRows(includedEarnings).length > 0\n if (!hasIncluded && excludedRows.length === 0) return null\n\n const includedTable = buildBreakdownDataView(includedEarnings, {\n label: t('additionalEarningsTitle'),\n rowHeader: t('typeColumn'),\n valueColumnLabel: t('amountColumn'),\n labelFor: earningLabel,\n adornmentStart: '$',\n })\n\n // Split into per-workweek columns and labeled overtime groups only once\n // overtime is added (the included section becomes workweek-keyed). Otherwise\n // included and excluded earnings render together as one flat list.\n if (!isSplitByWorkweek(includedEarnings)) {\n const mergedRows = [\n ...includedEarnings.map(entry => ({ label: earningLabel(entry.name), Field: entry.Field })),\n ...excludedRows,\n ]\n return (\n <Box header={<BoxHeader title={t('additionalEarningsTitle')} />} withPadding={false}>\n {renderAmountTable(mergedRows, t('additionalEarningsTitle'))}\n </Box>\n )\n }\n\n return (\n <Box header={<BoxHeader title={t('additionalEarningsTitle')} />} withPadding={false}>\n {hasIncluded ? (\n <>\n <div className={styles.earningsAlert}>\n <Alert\n status=\"info\"\n label={t('overtimeMultiplierEarningsAlert', { employeeName })}\n disableScrollIntoView\n />\n </div>\n {renderGroupLabel(t('overtimeIncludedEarningsGroupLabel'))}\n {includedTable}\n </>\n ) : null}\n {excludedRows.length > 0 ? (\n <>\n {renderGroupLabel(t('overtimeExcludedEarningsGroupLabel'))}\n {renderAmountTable(excludedRows, t('overtimeExcludedEarningsGroupLabel'))}\n </>\n ) : null}\n </Box>\n )\n }\n\n const PaymentMethodField = Fields.paymentMethod\n const ReimbursementDraft = Fields.reimbursementDraft\n const reimbursementRows = form.data.reimbursements\n const isAddingReimbursement = form.form.reimbursementDraft?.isAdding ?? false\n\n const handleSave = async () => {\n const result = await form.actions.onSubmit()\n if (!result) return\n onEvent(componentEvents.RUN_PAYROLL_EMPLOYEE_SAVED, {\n payrollPrepared: result.data,\n employee,\n })\n }\n\n const handleCancel = () => {\n onEvent(componentEvents.RUN_PAYROLL_EMPLOYEE_CANCELLED)\n }\n\n const actions = (\n <Flex\n flexDirection={isSmallOrGreater ? 'row' : 'column'}\n justifyContent={isSmallOrGreater ? 'flex-end' : 'normal'}\n alignItems={isSmallOrGreater ? 'flex-start' : 'stretch'}\n gap={12}\n >\n <Button variant=\"secondary\" onClick={handleCancel} title={t('cancelCta')}>\n {t('cancelCta')}\n </Button>\n <Button\n onClick={() => {\n void handleSave()\n }}\n title={t('saveCta')}\n isLoading={form.status.isPending}\n >\n {t('saveCta')}\n </Button>\n </Flex>\n )\n\n return (\n <div ref={containerRef} className={styles.container}>\n <BaseLayout error={form.errorHandling.errors} LoaderComponent={LoaderComponent}>\n <SDKFormProvider formHookResult={form}>\n <Flex flexDirection=\"column\" gap={24}>\n <Flex\n flexDirection={isSmallOrGreater ? 'row' : 'column'}\n justifyContent=\"space-between\"\n alignItems={isSmallOrGreater ? 'flex-start' : 'stretch'}\n gap={12}\n >\n <Flex flexDirection=\"column\" alignItems=\"stretch\" gap={8}>\n <Heading as=\"h1\" styledAs=\"h2\">\n {t('pageTitle', { employeeName })}\n </Heading>\n </Flex>\n {isSmallOrGreater && actions}\n </Flex>\n {!isSmallOrGreater && actions}\n\n {(() => {\n const isMultiJob = Fields.jobs.length > 1\n const genericHoursTitle = form.data.isOvertimeEligible\n ? t('regularHoursTitle')\n : t('regularHoursTitleWithoutOvertime')\n // \"Add overtime\" is an employee-level action, but the design gives\n // every job its own button so each job's hours box can trigger it.\n const showAddOvertime = !form.data.withOvertime && form.data.isOvertimeEligible\n // Its counterpart once overtime is on: a single employee-level alert\n // explaining the workweek split, rendered once above all jobs.\n const showOvertimeWorkweekAlert =\n form.data.withOvertime && form.data.isOvertimeEligible\n\n return (\n <Flex flexDirection=\"column\" gap={16}>\n {isMultiJob ? <Heading as=\"h3\">{genericHoursTitle}</Heading> : null}\n {showOvertimeWorkweekAlert ? (\n <Alert\n status=\"info\"\n label={t('overtimeWorkweekAlert', { employeeName })}\n disableScrollIntoView\n />\n ) : null}\n {Fields.jobs.map(job => (\n <Fragment key={job.jobUuid}>\n {renderBreakdownSection(job.hours, {\n title: isMultiJob ? (job.title ?? genericHoursTitle) : genericHoursTitle,\n label: genericHoursTitle,\n rowHeader: t('hourTypeColumn'),\n valueColumnLabel: t('hoursColumn'),\n labelFor: hoursLabel,\n adornmentEnd: t('hoursUnit'),\n footer: showAddOvertime ? (\n <Button\n variant=\"secondary\"\n onClick={() => {\n form.actions.addOvertime()\n }}\n title={t('addOvertimeCta')}\n >\n {t('addOvertimeCta')}\n </Button>\n ) : undefined,\n })}\n </Fragment>\n ))}\n </Flex>\n )\n })()}\n\n {renderEarningsSection()}\n\n {renderTimeOffSection(Fields.timeOff, {\n title: Fields.finalPayout ? t('timeOffTitleDismissal') : t('timeOffTitle'),\n })}\n\n {Fields.finalPayout\n ? renderTimeOffSection(Fields.finalPayout, {\n title: t('finalPayoutTitle'),\n description: t('finalPayoutDescription'),\n })\n : null}\n\n {PaymentMethodField ? (\n <Flex flexDirection=\"column\" gap={24}>\n {ReimbursementDraft ? (\n <ReimbursementsSection\n rows={reimbursementRows ?? []}\n isAdding={isAddingReimbursement}\n draftFields={ReimbursementDraft}\n onBeginAdd={() => form.actions.beginAddReimbursement?.()}\n onSave={() => form.actions.saveReimbursement?.()}\n onCancel={() => form.actions.cancelReimbursement?.()}\n onRemove={index => form.actions.removeReimbursement?.(index)}\n />\n ) : null}\n\n <Flex flexDirection=\"column\" gap={12}>\n <Heading as=\"h3\" styledAs=\"h4\">\n {t('paymentMethodTitle')}\n </Heading>\n <PaymentMethodField\n label={t('paymentMethodLabel')}\n description={t('paymentMethodDescription')}\n getOptionLabel={value =>\n value === PayrollUpdatePaymentMethod.Check\n ? t('paymentMethodOptions.check')\n : t('paymentMethodOptions.directDeposit')\n }\n />\n </Flex>\n </Flex>\n ) : null}\n </Flex>\n </SDKFormProvider>\n </BaseLayout>\n </div>\n )\n}\n"],"names":["UNSTABLE_PayrollEditEmployee","FallbackComponent","LoaderComponent","props","jsx","BaseBoundaries","Root","ReimbursementsSection","rows","isAdding","draftFields","onBeginAdd","onSave","onCancel","onRemove","t","useTranslation","Button","ButtonIcon","Heading","useComponentContext","Description","Amount","reimbursementDataViewProps","useDataView","row","formatNumberAsCurrency","displayDescription","TrashCanSvg","EmptyData","PlusCircleIcon","jsxs","Flex","DataView","Grid","employeeId","companyId","payrollId","withReimbursements","onEvent","dictionary","useComponentDictionary","useI18n","dateFormatter","useDateFormatter","Alert","Box","BoxHeader","Text","containerRef","useRef","isSmallOrGreater","useContainerBreakpoints","errorMessages","useMemo","PayrollEditEmployeeErrorCodes","form","usePayrollEditEmployeeForm","styles","BaseLayout","employee","Fields","employeeName","firstLastName","hoursLabel","name","COMPENSATION_NAME_REGULAR_HOURS","COMPENSATION_NAME_OVERTIME","COMPENSATION_NAME_DOUBLE_OVERTIME","earningLabel","COMPENSATION_NAME_BONUS","COMPENSATION_NAME_COMMISSION","COMPENSATION_NAME_CORRECTION_PAYMENT","COMPENSATION_NAME_CASH_TIPS","COMPENSATION_NAME_PAYCHECK_TIPS","COMPENSATION_NAME_REIMBURSEMENT","getSectionRows","section","isSplitByWorkweek","buildBreakdownDataView","options","label","rowHeader","valueColumnLabel","labelFor","adornmentStart","adornmentEnd","split","renderField","entry","fieldLabel","valueColumn","workweekColumns","startDate","endDate","rangeLabel","cell","columns","renderBreakdownSection","title","footer","viewOptions","renderTimeOffSection","entries","description","renderAmountTable","renderGroupLabel","renderEarningsSection","includedEarnings","excludedRows","hasIncluded","includedTable","mergedRows","Fragment","PaymentMethodField","ReimbursementDraft","reimbursementRows","isAddingReimbursement","handleSave","result","componentEvents","actions","SDKFormProvider","isMultiJob","genericHoursTitle","showAddOvertime","showOvertimeWorkweekAlert","job","index","value","PayrollUpdatePaymentMethod"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"UNSTABLE_PayrollEditEmployee.js","sources":["../../../../src/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.tsx"],"sourcesContent":["import { Fragment, useMemo, useRef } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport { PayrollUpdatePaymentMethod } from '@gusto/embedded-api/models/components/payrollupdate'\nimport type { PayrollEditEmployeeProps } from '../PayrollEditEmployee/PayrollEditEmployee'\nimport { usePayrollEditEmployeeForm } from '../PayrollEditEmployee/shared/usePayrollEditEmployeeForm'\nimport {\n isSplitByWorkweek,\n type HourEntry,\n type TimeOffEntry,\n type ReimbursementRow,\n type ReimbursementDraftFields,\n} from '../PayrollEditEmployee/shared/usePayrollEditEmployeeForm/fields'\nimport { PayrollEditEmployeeErrorCodes } from '../PayrollEditEmployee/shared/usePayrollEditEmployeeForm/payrollEditEmployeeSchema'\nimport styles from './UNSTABLE_PayrollEditEmployee.module.scss'\nimport {\n componentEvents,\n COMPENSATION_NAME_REGULAR_HOURS,\n COMPENSATION_NAME_OVERTIME,\n COMPENSATION_NAME_DOUBLE_OVERTIME,\n COMPENSATION_NAME_BONUS,\n COMPENSATION_NAME_COMMISSION,\n COMPENSATION_NAME_CORRECTION_PAYMENT,\n COMPENSATION_NAME_CASH_TIPS,\n COMPENSATION_NAME_PAYCHECK_TIPS,\n COMPENSATION_NAME_REIMBURSEMENT,\n} from '@/shared/constants'\nimport { BaseBoundaries, BaseLayout } from '@/components/Base'\nimport { useComponentDictionary, useI18n } from '@/i18n'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { Flex, Grid, DataView, useDataView, EmptyData } from '@/components/Common'\nimport type { useDataViewPropReturn } from '@/components/Common/DataView/useDataView'\nimport { SDKFormProvider } from '@/partner-hook-utils/form/SDKFormProvider'\nimport { firstLastName, formatNumberAsCurrency } from '@/helpers/formattedStrings'\nimport { useDateFormatter } from '@/hooks/useDateFormatter'\nimport useContainerBreakpoints from '@/hooks/useContainerBreakpoints/useContainerBreakpoints'\nimport PlusCircleIcon from '@/assets/icons/plus-circle.svg?react'\nimport TrashCanSvg from '@/assets/icons/trashcan.svg?react'\n\n/**\n * In-development regular-rate-of-pay rebuild of {@link PayrollEditEmployee}.\n *\n * @remarks\n * Gated behind the `payrollRegularRateOfPay` unstable feature flag and not part of the public\n * SDK surface. `PayrollEditEmployee` renders this in place of the stable editor when the flag is\n * enabled. Consumes {@link usePayrollEditEmployeeForm} and renders the header, the hours /\n * additional-earnings / time-off / payment-method sections, and the\n * `Cancel`/`Save` controls, performing a real payroll update on save. For an overtime-eligible\n * employee on a multi-workweek payroll, Overtime/Double-overtime rows start hidden behind a single,\n * employee-level \"Add overtime\" control (`form.data.withOvertime` / `form.actions.addOvertime`)\n * unless the employee already has real overtime hours or matching per-workweek breakdowns; adding\n * overtime also switches hours and overtime-affecting earnings to per-workweek columns and surfaces\n * the per-row \"fill in every workweek\" validation. `Cancel` and `Save` emit the same events as the\n * stable component so the surrounding flow behaves identically.\n *\n * @internal\n */\nexport function UNSTABLE_PayrollEditEmployee({\n FallbackComponent,\n LoaderComponent,\n ...props\n}: PayrollEditEmployeeProps) {\n return (\n <BaseBoundaries\n componentName=\"Payroll.UNSTABLE_PayrollEditEmployee\"\n FallbackComponent={FallbackComponent}\n LoaderComponent={LoaderComponent}\n >\n <Root LoaderComponent={LoaderComponent} {...props} />\n </BaseBoundaries>\n )\n}\n\ninterface ReimbursementsSectionProps {\n rows: ReimbursementRow[]\n isAdding: boolean\n draftFields: ReimbursementDraftFields\n onBeginAdd: () => void\n onSave: () => void\n onCancel: () => void\n onRemove: (index: number) => void\n}\n\n// Reimbursement UI duplicated from the stable PayrollEditEmployeePresentation for\n// visual parity while the RRoP editor is developed alongside legacy. Powered by\n// usePayrollEditEmployeeForm rather than a local field array/draft form.\nconst ReimbursementsSection = ({\n rows,\n isAdding,\n draftFields,\n onBeginAdd,\n onSave,\n onCancel,\n onRemove,\n}: ReimbursementsSectionProps) => {\n const { t } = useTranslation('Payroll.UNSTABLE_PayrollEditEmployee')\n const { Button, ButtonIcon, Heading } = useComponentContext()\n const { Description, Amount } = draftFields\n\n const reimbursementDataViewProps = useDataView<ReimbursementRow>({\n data: rows,\n columns: [\n {\n key: 'description',\n title: t('reimbursementDescriptionColumn'),\n render: row => row.description.trim() || t('reimbursementUnnamedFallback'),\n },\n {\n key: 'amount',\n title: t('reimbursementAmountColumn'),\n justify: 'end',\n render: row => formatNumberAsCurrency(parseFloat(row.amount || '0')),\n },\n {\n key: 'recurring',\n title: t('reimbursementTypeColumn'),\n render: row =>\n row.recurring ? t('reimbursementTypeRecurring') : t('reimbursementTypeOneTime'),\n },\n ],\n itemMenu: row => {\n if (row.recurring) return null\n const displayDescription = row.description.trim() || t('reimbursementUnnamedFallback')\n return (\n <ButtonIcon\n variant=\"tertiary\"\n onClick={() => {\n onRemove(row.index)\n }}\n aria-label={t('removeReimbursementLabel', { description: displayDescription })}\n >\n <TrashCanSvg aria-hidden />\n </ButtonIcon>\n )\n },\n emptyState: () => (\n <EmptyData title={t('reimbursementEmptyTitle')}>\n <Button variant=\"secondary\" onClick={onBeginAdd} icon={<PlusCircleIcon aria-hidden />}>\n {t('addReimbursementCta')}\n </Button>\n </EmptyData>\n ),\n })\n\n return (\n <Flex flexDirection=\"column\" gap={12}>\n <Heading as=\"h3\" styledAs=\"h4\">\n {t('reimbursementTitle')}\n </Heading>\n {!(rows.length === 0 && isAdding) && (\n <DataView label={t('reimbursementsTableLabel')} {...reimbursementDataViewProps} />\n )}\n {isAdding ? (\n <Flex flexDirection=\"column\" gap={12}>\n <Grid gridTemplateColumns={{ base: '1fr', small: [320, 320] }} gap={20}>\n <Description\n label={t('reimbursementDescriptionLabel')}\n placeholder={t('reimbursementDescriptionPlaceholder')}\n />\n <Amount label={t('reimbursementAmountLabel')} adornmentStart=\"$\" isRequired />\n </Grid>\n <Flex gap={12}>\n <Button onClick={onSave} title={t('saveReimbursementCta')}>\n {t('saveReimbursementCta')}\n </Button>\n <Button variant=\"secondary\" onClick={onCancel} title={t('cancelReimbursementCta')}>\n {t('cancelReimbursementCta')}\n </Button>\n </Flex>\n </Flex>\n ) : (\n rows.length > 0 && (\n <div>\n <Button\n variant=\"secondary\"\n onClick={onBeginAdd}\n title={t('addReimbursementLink')}\n icon={<PlusCircleIcon aria-hidden />}\n >\n {t('addReimbursementLink')}\n </Button>\n </div>\n )\n )}\n </Flex>\n )\n}\n\nconst Root = ({\n employeeId,\n companyId,\n payrollId,\n withReimbursements = true,\n onEvent,\n dictionary,\n LoaderComponent,\n}: PayrollEditEmployeeProps) => {\n useComponentDictionary('Payroll.UNSTABLE_PayrollEditEmployee', dictionary)\n useI18n('Payroll.UNSTABLE_PayrollEditEmployee')\n const { t } = useTranslation('Payroll.UNSTABLE_PayrollEditEmployee')\n const dateFormatter = useDateFormatter()\n\n const { Alert, Box, BoxHeader, Button, Heading, Text } = useComponentContext()\n\n const containerRef = useRef<HTMLDivElement>(null)\n const breakpoints = useContainerBreakpoints({ ref: containerRef })\n const isSmallOrGreater = breakpoints.includes('small')\n\n // Error copy keyed by code, supplied to the hook once. Every bound field\n // resolves and renders its own message from this — the consumer never\n // reconstructs form paths or picks which rule a field can fail. Memoized so\n // the hook's fields aren't rebuilt each render.\n const errorMessages = useMemo(\n () => ({\n [PayrollEditEmployeeErrorCodes.NEGATIVE_AMOUNT]: t('validations.negativeAmount'),\n [PayrollEditEmployeeErrorCodes.REQUIRED_WORKWEEK]: t('validations.requiredWorkweek'),\n [PayrollEditEmployeeErrorCodes.REIMBURSEMENT_AMOUNT]: t('validations.reimbursementAmount'),\n }),\n [t],\n )\n\n const form = usePayrollEditEmployeeForm({\n employeeId,\n companyId,\n payrollId,\n withReimbursements,\n errorMessages,\n })\n\n if (form.isLoading) {\n return (\n <div ref={containerRef} className={styles.container}>\n <BaseLayout isLoading error={form.errorHandling.errors} LoaderComponent={LoaderComponent} />\n </div>\n )\n }\n\n const { employee } = form.data\n const Fields = form.form.Fields\n\n const employeeName = firstLastName({\n first_name: employee.firstName,\n last_name: employee.lastName,\n })\n\n const hoursLabel = (name: string) => {\n switch (name) {\n case COMPENSATION_NAME_REGULAR_HOURS:\n return t('compensationNames.regularHours')\n case COMPENSATION_NAME_OVERTIME:\n return t('compensationNames.overtime')\n case COMPENSATION_NAME_DOUBLE_OVERTIME:\n return t('compensationNames.doubleOvertime')\n default:\n return name\n }\n }\n\n const earningLabel = (name: string) => {\n switch (name) {\n case COMPENSATION_NAME_BONUS:\n return t('fixedCompensationNames.bonus')\n case COMPENSATION_NAME_COMMISSION:\n return t('fixedCompensationNames.commission')\n case COMPENSATION_NAME_CORRECTION_PAYMENT:\n return t('fixedCompensationNames.correctionPayment')\n case COMPENSATION_NAME_CASH_TIPS:\n return t('fixedCompensationNames.cashTips')\n case COMPENSATION_NAME_PAYCHECK_TIPS:\n return t('fixedCompensationNames.paycheckTips')\n case COMPENSATION_NAME_REIMBURSEMENT:\n return t('fixedCompensationNames.reimbursement')\n default:\n return name\n }\n }\n\n // The visible rows for a section: the first workweek's rows drive the row set\n // (workweek columns fan out from there), or the flat list when not split.\n const getSectionRows = (section: HourEntry[] | Record<string, HourEntry[]>) =>\n isSplitByWorkweek(section) ? (section[form.data.workweeks[0]?.startDate ?? ''] ?? []) : section\n\n const buildBreakdownDataView = (\n section: HourEntry[] | Record<string, HourEntry[]>,\n options: {\n label: string\n rowHeader: string\n valueColumnLabel: string\n labelFor: (name: string) => string\n adornmentStart?: string\n adornmentEnd?: string\n },\n ) => {\n const { label, rowHeader, valueColumnLabel, labelFor, adornmentStart, adornmentEnd } = options\n const split = isSplitByWorkweek(section)\n const rows = getSectionRows(section)\n\n const renderField = (entry: HourEntry, fieldLabel: string) => (\n <div className={styles.inputContainer}>\n <entry.Field\n label={fieldLabel}\n shouldVisuallyHideLabel\n adornmentStart={adornmentStart}\n adornmentEnd={adornmentEnd}\n />\n </div>\n )\n\n const valueColumn: useDataViewPropReturn<HourEntry>['columns'][number] = {\n title: valueColumnLabel,\n justify: 'end',\n render: row => renderField(row, labelFor(row.name)),\n }\n\n // Columns come straight from the hook's normalized workweeks, so each header\n // has both boundary dates without re-deriving them from the raw payroll.\n const workweekColumns: useDataViewPropReturn<HourEntry>['columns'] = form.data.workweeks.map(\n ({ startDate, endDate }) => {\n const rangeLabel = dateFormatter.formatPayPeriodRange(startDate, endDate, {\n useShortMonth: true,\n })\n return {\n title: rangeLabel,\n justify: 'end',\n render: row => {\n const cell = (section as Record<string, HourEntry[]>)[startDate]?.find(\n entry => entry.jobUuid === row.jobUuid && entry.name === row.name,\n )\n return cell ? renderField(cell, `${labelFor(row.name)} ${rangeLabel}`) : null\n },\n }\n },\n )\n\n const columns: useDataViewPropReturn<HourEntry>['columns'] = [\n { title: rowHeader, render: row => labelFor(row.name) },\n ...(split ? workweekColumns : [valueColumn]),\n ]\n\n return <DataView label={label} isWithinBox columns={columns} data={rows} />\n }\n\n const renderBreakdownSection = (\n section: HourEntry[] | Record<string, HourEntry[]>,\n options: {\n title: string\n label: string\n rowHeader: string\n valueColumnLabel: string\n labelFor: (name: string) => string\n adornmentStart?: string\n adornmentEnd?: string\n footer?: React.ReactNode\n },\n ) => {\n const { title, footer, ...viewOptions } = options\n if (getSectionRows(section).length === 0 && !footer) return null\n\n return (\n <Box header={<BoxHeader title={title} />} withPadding={false} footer={footer}>\n {buildBreakdownDataView(section, viewOptions)}\n </Box>\n )\n }\n\n const renderTimeOffSection = (\n entries: TimeOffEntry[],\n options: { title: string; description?: string },\n ) => {\n if (entries.length === 0) return null\n const { title, description } = options\n\n const columns: useDataViewPropReturn<TimeOffEntry>['columns'] = [\n {\n title: t('typeColumn'),\n render: entry => entry.name,\n },\n {\n title: t('hoursColumn'),\n justify: 'end',\n render: entry => (\n <div className={styles.inputContainer}>\n <entry.Field\n label={entry.name}\n shouldVisuallyHideLabel\n adornmentEnd={t('hoursUnit')}\n description={\n entry.remaining !== null\n ? t('timeOffBalance.remaining', { balance: entry.remaining })\n : undefined\n }\n />\n </div>\n ),\n },\n ]\n\n return (\n <Box header={<BoxHeader title={title} description={description} />} withPadding={false}>\n <DataView label={title} isWithinBox columns={columns} data={entries} />\n </Box>\n )\n }\n\n // A flat single-amount earnings table: one \"type\" column and one \"$\" input\n // column. Used for the merged no-overtime list and the overtime-excluded group.\n const renderAmountTable = (\n rows: { label: string; Field: HourEntry['Field'] }[],\n label: string,\n ) => {\n const columns: useDataViewPropReturn<(typeof rows)[number]>['columns'] = [\n { title: t('typeColumn'), render: row => row.label },\n {\n title: t('amountColumn'),\n justify: 'end',\n render: row => (\n <div className={styles.inputContainer}>\n <row.Field label={row.label} shouldVisuallyHideLabel adornmentStart=\"$\" />\n </div>\n ),\n },\n ]\n return <DataView label={label} isWithinBox columns={columns} data={rows} />\n }\n\n const renderGroupLabel = (label: string) => (\n <div className={styles.earningsGroupLabel}>\n <Text size=\"sm\" weight=\"semibold\">\n {label}\n </Text>\n </div>\n )\n\n const renderEarningsSection = () => {\n const includedEarnings = Fields.overtimeIncludedEarnings\n const excludedRows = Fields.overtimeExcludedEarnings.map(entry => ({\n label: earningLabel(entry.id),\n Field: entry.Field,\n }))\n\n const hasIncluded = getSectionRows(includedEarnings).length > 0\n if (!hasIncluded && excludedRows.length === 0) return null\n\n const includedTable = buildBreakdownDataView(includedEarnings, {\n label: t('additionalEarningsTitle'),\n rowHeader: t('typeColumn'),\n valueColumnLabel: t('amountColumn'),\n labelFor: earningLabel,\n adornmentStart: '$',\n })\n\n // Split into per-workweek columns and labeled overtime groups only once\n // overtime is added (the included section becomes workweek-keyed). Otherwise\n // included and excluded earnings render together as one flat list.\n if (!isSplitByWorkweek(includedEarnings)) {\n const mergedRows = [\n ...includedEarnings.map(entry => ({ label: earningLabel(entry.name), Field: entry.Field })),\n ...excludedRows,\n ]\n return (\n <Box header={<BoxHeader title={t('additionalEarningsTitle')} />} withPadding={false}>\n {renderAmountTable(mergedRows, t('additionalEarningsTitle'))}\n </Box>\n )\n }\n\n return (\n <Box header={<BoxHeader title={t('additionalEarningsTitle')} />} withPadding={false}>\n {hasIncluded ? (\n <>\n <div className={styles.earningsAlert}>\n <Alert\n status=\"info\"\n label={t('overtimeMultiplierEarningsAlert')}\n disableScrollIntoView\n >\n <Text size=\"sm\">{t('overtimeMultiplierEarningsAlertDescription')}</Text>\n </Alert>\n </div>\n {renderGroupLabel(t('overtimeIncludedEarningsGroupLabel'))}\n {includedTable}\n </>\n ) : null}\n {excludedRows.length > 0 ? (\n <>\n {renderGroupLabel(t('overtimeExcludedEarningsGroupLabel'))}\n {renderAmountTable(excludedRows, t('overtimeExcludedEarningsGroupLabel'))}\n </>\n ) : null}\n </Box>\n )\n }\n\n const PaymentMethodField = Fields.paymentMethod\n const ReimbursementDraft = Fields.reimbursementDraft\n const reimbursementRows = form.data.reimbursements\n const isAddingReimbursement = form.form.reimbursementDraft?.isAdding ?? false\n\n const handleSave = async () => {\n const result = await form.actions.onSubmit()\n if (!result) return\n onEvent(componentEvents.RUN_PAYROLL_EMPLOYEE_SAVED, {\n payrollPrepared: result.data,\n employee,\n })\n }\n\n const handleCancel = () => {\n onEvent(componentEvents.RUN_PAYROLL_EMPLOYEE_CANCELLED)\n }\n\n const actions = (\n <Flex\n flexDirection={isSmallOrGreater ? 'row' : 'column'}\n justifyContent={isSmallOrGreater ? 'flex-end' : 'normal'}\n alignItems={isSmallOrGreater ? 'flex-start' : 'stretch'}\n gap={12}\n >\n <Button variant=\"secondary\" onClick={handleCancel} title={t('cancelCta')}>\n {t('cancelCta')}\n </Button>\n <Button\n onClick={() => {\n void handleSave()\n }}\n title={t('saveCta')}\n isLoading={form.status.isPending}\n >\n {t('saveCta')}\n </Button>\n </Flex>\n )\n\n return (\n <div ref={containerRef} className={styles.container}>\n <BaseLayout error={form.errorHandling.errors} LoaderComponent={LoaderComponent}>\n <SDKFormProvider formHookResult={form}>\n <Flex flexDirection=\"column\" gap={24}>\n <Flex\n flexDirection={isSmallOrGreater ? 'row' : 'column'}\n justifyContent=\"space-between\"\n alignItems={isSmallOrGreater ? 'flex-start' : 'stretch'}\n gap={12}\n >\n <Flex flexDirection=\"column\" alignItems=\"stretch\" gap={8}>\n <Heading as=\"h1\" styledAs=\"h2\">\n {t('pageTitle', { employeeName })}\n </Heading>\n </Flex>\n {isSmallOrGreater && actions}\n </Flex>\n {!isSmallOrGreater && actions}\n\n {(() => {\n const isMultiJob = Fields.jobs.length > 1\n const genericHoursTitle = form.data.isOvertimeEligible\n ? t('regularHoursTitle')\n : t('regularHoursTitleWithoutOvertime')\n // \"Add overtime\" is an employee-level action, but the design gives\n // every job its own button so each job's hours box can trigger it.\n const showAddOvertime = !form.data.withOvertime && form.data.isOvertimeEligible\n // Its counterpart once overtime is on: a single employee-level alert\n // explaining the workweek split, rendered once above all jobs.\n const showOvertimeWorkweekAlert =\n form.data.withOvertime && form.data.isOvertimeEligible\n\n return (\n <Flex flexDirection=\"column\" gap={16}>\n {isMultiJob ? <Heading as=\"h3\">{genericHoursTitle}</Heading> : null}\n {showOvertimeWorkweekAlert ? (\n <Alert\n status=\"info\"\n label={t('overtimeWorkweekAlert', { employeeName })}\n disableScrollIntoView\n />\n ) : null}\n {Fields.jobs.map(job => (\n <Fragment key={job.jobUuid}>\n {renderBreakdownSection(job.hours, {\n title: isMultiJob ? (job.title ?? genericHoursTitle) : genericHoursTitle,\n label: genericHoursTitle,\n rowHeader: t('hourTypeColumn'),\n valueColumnLabel: t('hoursColumn'),\n labelFor: hoursLabel,\n adornmentEnd: t('hoursUnit'),\n footer: showAddOvertime ? (\n <Button\n variant=\"secondary\"\n onClick={() => {\n form.actions.addOvertime()\n }}\n title={t('addOvertimeCta')}\n >\n {t('addOvertimeCta')}\n </Button>\n ) : undefined,\n })}\n </Fragment>\n ))}\n </Flex>\n )\n })()}\n\n {renderEarningsSection()}\n\n {renderTimeOffSection(Fields.timeOff, {\n title: Fields.finalPayout ? t('timeOffTitleDismissal') : t('timeOffTitle'),\n })}\n\n {Fields.finalPayout\n ? renderTimeOffSection(Fields.finalPayout, {\n title: t('finalPayoutTitle'),\n description: t('finalPayoutDescription'),\n })\n : null}\n\n {PaymentMethodField ? (\n <Flex flexDirection=\"column\" gap={24}>\n {ReimbursementDraft ? (\n <ReimbursementsSection\n rows={reimbursementRows ?? []}\n isAdding={isAddingReimbursement}\n draftFields={ReimbursementDraft}\n onBeginAdd={() => form.actions.beginAddReimbursement?.()}\n onSave={() => form.actions.saveReimbursement?.()}\n onCancel={() => form.actions.cancelReimbursement?.()}\n onRemove={index => form.actions.removeReimbursement?.(index)}\n />\n ) : null}\n\n <Flex flexDirection=\"column\" gap={12}>\n <Heading as=\"h3\" styledAs=\"h4\">\n {t('paymentMethodTitle')}\n </Heading>\n <PaymentMethodField\n label={t('paymentMethodLabel')}\n description={t('paymentMethodDescription')}\n getOptionLabel={value =>\n value === PayrollUpdatePaymentMethod.Check\n ? t('paymentMethodOptions.check')\n : t('paymentMethodOptions.directDeposit')\n }\n />\n </Flex>\n </Flex>\n ) : null}\n </Flex>\n </SDKFormProvider>\n </BaseLayout>\n </div>\n )\n}\n"],"names":["UNSTABLE_PayrollEditEmployee","FallbackComponent","LoaderComponent","props","jsx","BaseBoundaries","Root","ReimbursementsSection","rows","isAdding","draftFields","onBeginAdd","onSave","onCancel","onRemove","t","useTranslation","Button","ButtonIcon","Heading","useComponentContext","Description","Amount","reimbursementDataViewProps","useDataView","row","formatNumberAsCurrency","displayDescription","TrashCanSvg","EmptyData","PlusCircleIcon","jsxs","Flex","DataView","Grid","employeeId","companyId","payrollId","withReimbursements","onEvent","dictionary","useComponentDictionary","useI18n","dateFormatter","useDateFormatter","Alert","Box","BoxHeader","Text","containerRef","useRef","isSmallOrGreater","useContainerBreakpoints","errorMessages","useMemo","PayrollEditEmployeeErrorCodes","form","usePayrollEditEmployeeForm","styles","BaseLayout","employee","Fields","employeeName","firstLastName","hoursLabel","name","COMPENSATION_NAME_REGULAR_HOURS","COMPENSATION_NAME_OVERTIME","COMPENSATION_NAME_DOUBLE_OVERTIME","earningLabel","COMPENSATION_NAME_BONUS","COMPENSATION_NAME_COMMISSION","COMPENSATION_NAME_CORRECTION_PAYMENT","COMPENSATION_NAME_CASH_TIPS","COMPENSATION_NAME_PAYCHECK_TIPS","COMPENSATION_NAME_REIMBURSEMENT","getSectionRows","section","isSplitByWorkweek","buildBreakdownDataView","options","label","rowHeader","valueColumnLabel","labelFor","adornmentStart","adornmentEnd","split","renderField","entry","fieldLabel","valueColumn","workweekColumns","startDate","endDate","rangeLabel","cell","columns","renderBreakdownSection","title","footer","viewOptions","renderTimeOffSection","entries","description","renderAmountTable","renderGroupLabel","renderEarningsSection","includedEarnings","excludedRows","hasIncluded","includedTable","mergedRows","Fragment","PaymentMethodField","ReimbursementDraft","reimbursementRows","isAddingReimbursement","handleSave","result","componentEvents","actions","SDKFormProvider","isMultiJob","genericHoursTitle","showAddOvertime","showOvertimeWorkweekAlert","job","index","value","PayrollUpdatePaymentMethod"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { PayrollConfiguration as e } from "./PayrollConfiguration/PayrollConfiguration.js";
|
|
2
2
|
import { PayrollEditEmployee as l } from "./PayrollEditEmployee/PayrollEditEmployee.js";
|
|
3
3
|
import { PayrollHistory as i } from "./PayrollHistory/PayrollHistory.js";
|
|
4
|
-
import { PayrollLanding as
|
|
4
|
+
import { PayrollLanding as a } from "./PayrollLanding/PayrollLanding.js";
|
|
5
5
|
import { PayrollList as x } from "./PayrollList/PayrollList.js";
|
|
6
6
|
import { PayrollOverview as s } from "./PayrollOverview/PayrollOverview.js";
|
|
7
7
|
import { PayrollFlow as P } from "./PayrollFlow/PayrollFlow.js";
|
|
@@ -12,19 +12,20 @@ import { PrintChecks as g } from "./PrintChecks/PrintChecks.js";
|
|
|
12
12
|
import { DismissalFlow as v } from "./Dismissal/DismissalFlow.js";
|
|
13
13
|
import { DismissalPayPeriodSelection as L } from "./Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelection.js";
|
|
14
14
|
import { OffCycleCreation as S } from "./OffCycleCreation/OffCycleCreation.js";
|
|
15
|
-
import { OffCycleDeductionsSetting as
|
|
15
|
+
import { OffCycleDeductionsSetting as k } from "./OffCycleDeductionsSetting/OffCycleDeductionsSetting.js";
|
|
16
16
|
import { OffCycleFlow as B } from "./OffCycle/OffCycleFlow.js";
|
|
17
17
|
import { OffCycleReasonSelection as W } from "./OffCycleReasonSelection/OffCycleReasonSelection.js";
|
|
18
18
|
import { PayrollBlockerList as j } from "./PayrollBlocker/components/PayrollBlockerList.js";
|
|
19
19
|
import { PayrollExecutionFlow as z } from "./PayrollExecutionFlow/PayrollExecutionFlow.js";
|
|
20
20
|
import { TransitionCreation as G } from "./TransitionCreation/TransitionCreation.js";
|
|
21
21
|
import { TransitionFlow as J } from "./Transition/TransitionFlow.js";
|
|
22
|
+
import { TransitionPayroll as M } from "./TransitionPayroll/TransitionPayroll.js";
|
|
22
23
|
export {
|
|
23
24
|
F as ConfirmWireDetails,
|
|
24
25
|
v as DismissalFlow,
|
|
25
26
|
L as DismissalPayPeriodSelection,
|
|
26
27
|
S as OffCycleCreation,
|
|
27
|
-
|
|
28
|
+
k as OffCycleDeductionsSetting,
|
|
28
29
|
B as OffCycleFlow,
|
|
29
30
|
W as OffCycleReasonSelection,
|
|
30
31
|
j as PayrollBlockerList,
|
|
@@ -33,13 +34,14 @@ export {
|
|
|
33
34
|
z as PayrollExecutionFlow,
|
|
34
35
|
P as PayrollFlow,
|
|
35
36
|
i as PayrollHistory,
|
|
36
|
-
|
|
37
|
+
a as PayrollLanding,
|
|
37
38
|
x as PayrollList,
|
|
38
39
|
s as PayrollOverview,
|
|
39
40
|
C as PayrollReceipts,
|
|
40
41
|
g as PrintChecks,
|
|
41
42
|
d as RecoveryCases,
|
|
42
43
|
G as TransitionCreation,
|
|
43
|
-
J as TransitionFlow
|
|
44
|
+
J as TransitionFlow,
|
|
45
|
+
M as TransitionPayroll
|
|
44
46
|
};
|
|
45
47
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { useState as M, useRef as
|
|
1
|
+
import { useState as M, useRef as y, useMemo as _, useCallback as m, useEffect as b } from "react";
|
|
2
2
|
import { usePayrollsPrepareMutation as L } from "@gusto/embedded-api/react-query/payrollsPrepare";
|
|
3
3
|
import { usePaySchedulesGet as D } from "@gusto/embedded-api/react-query/paySchedulesGet";
|
|
4
4
|
import { UnprocessableEntityError as T } from "@gusto/embedded-api/models/errors/unprocessableentityerror";
|
|
@@ -11,20 +11,17 @@ import "@gusto/embedded-api/models/errors/apierror";
|
|
|
11
11
|
import "@gusto/embedded-api/models/errors/gustoembeddederror";
|
|
12
12
|
import "@gusto/embedded-api/models/errors/sdkvalidationerror";
|
|
13
13
|
import "@gusto/embedded-api/models/errors/httpclienterrors";
|
|
14
|
-
import "dompurify";
|
|
15
|
-
import "../../contexts/LocaleProvider/useLocale.js";
|
|
16
14
|
import "../../shared/constants.js";
|
|
17
15
|
import "../../contexts/ComponentAdapter/useComponentContext.js";
|
|
18
|
-
import "../../contexts/LoadingIndicatorProvider/useLoadingIndicator.js";
|
|
19
16
|
import { retryAsync as x } from "../../helpers/retryAsync.js";
|
|
20
|
-
const q = 4, v = 1500, B = (e) => e instanceof T ? e.errors.some((r) => r.category === "invalid_operation") : !1,
|
|
17
|
+
const q = 4, v = 1500, B = (e) => e instanceof T ? e.errors.some((r) => r.category === "invalid_operation") : !1, V = ({
|
|
21
18
|
companyId: e,
|
|
22
19
|
payrollId: r,
|
|
23
20
|
employeeUuids: a,
|
|
24
21
|
sortBy: n,
|
|
25
22
|
onDataReady: l
|
|
26
23
|
}) => {
|
|
27
|
-
const { mutateAsync:
|
|
24
|
+
const { mutateAsync: c, isPending: p } = L(), [o, f] = M(), t = y(!1), u = y(!1), { baseSubmitHandler: d } = w(), h = _(() => a?.join(",") ?? "", [a]), { data: S, isLoading: E } = D(
|
|
28
25
|
{
|
|
29
26
|
companyId: e,
|
|
30
27
|
payScheduleId: o?.payPeriod?.payScheduleUuid || ""
|
|
@@ -32,8 +29,8 @@ const q = 4, v = 1500, B = (e) => e instanceof T ? e.errors.some((r) => r.catego
|
|
|
32
29
|
{
|
|
33
30
|
enabled: !!o?.payPeriod?.payScheduleUuid
|
|
34
31
|
}
|
|
35
|
-
), P =
|
|
36
|
-
const
|
|
32
|
+
), P = m(async () => {
|
|
33
|
+
const i = await c({
|
|
37
34
|
request: {
|
|
38
35
|
companyId: e,
|
|
39
36
|
payrollId: r,
|
|
@@ -43,8 +40,8 @@ const q = 4, v = 1500, B = (e) => e instanceof T ? e.errors.some((r) => r.catego
|
|
|
43
40
|
}
|
|
44
41
|
}
|
|
45
42
|
});
|
|
46
|
-
f(
|
|
47
|
-
}, [e, r,
|
|
43
|
+
f(i.payrollPrepared), i.payrollPrepared && (t.current = !0, l?.(i.payrollPrepared));
|
|
44
|
+
}, [e, r, c, h, n, l]), s = m(async () => {
|
|
48
45
|
await d(
|
|
49
46
|
null,
|
|
50
47
|
() => x(P, {
|
|
@@ -55,11 +52,11 @@ const q = 4, v = 1500, B = (e) => e instanceof T ? e.errors.some((r) => r.catego
|
|
|
55
52
|
);
|
|
56
53
|
}, [d, P]);
|
|
57
54
|
b(() => {
|
|
58
|
-
u.current || (u.current = !0,
|
|
59
|
-
}, [
|
|
60
|
-
const g =
|
|
55
|
+
u.current || (u.current = !0, s());
|
|
56
|
+
}, [s]);
|
|
57
|
+
const g = p && !t.current, R = p && t.current, A = g || E;
|
|
61
58
|
return {
|
|
62
|
-
handlePreparePayroll:
|
|
59
|
+
handlePreparePayroll: s,
|
|
63
60
|
preparedPayroll: o,
|
|
64
61
|
paySchedule: S?.payScheduleShow,
|
|
65
62
|
isLoading: A,
|
|
@@ -68,6 +65,6 @@ const q = 4, v = 1500, B = (e) => e instanceof T ? e.errors.some((r) => r.catego
|
|
|
68
65
|
};
|
|
69
66
|
};
|
|
70
67
|
export {
|
|
71
|
-
|
|
68
|
+
V as usePreparedPayrollData
|
|
72
69
|
};
|
|
73
70
|
//# sourceMappingURL=usePreparedPayrollData.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePreparedPayrollData.js","sources":["../../../src/components/Payroll/usePreparedPayrollData.ts"],"sourcesContent":["import { useState, useEffect, useCallback, useRef, useMemo } from 'react'\nimport { usePayrollsPrepareMutation } from '@gusto/embedded-api/react-query/payrollsPrepare'\nimport { usePaySchedulesGet } from '@gusto/embedded-api/react-query/paySchedulesGet'\nimport type { PayrollPrepared } from '@gusto/embedded-api/models/components/payrollshow'\nimport type { PayScheduleShow } from '@gusto/embedded-api/models/components/payscheduleshow'\nimport { UnprocessableEntityError } from '@gusto/embedded-api/models/errors/unprocessableentityerror'\nimport { useBase } from '../Base'\nimport { retryAsync } from '@/helpers/retryAsync'\n\ninterface UsePreparedPayrollDataParams {\n companyId: string\n payrollId: string\n employeeUuids?: string[]\n sortBy?: string\n onDataReady?: (preparedPayroll: PayrollPrepared) => void\n}\n\ninterface UsePreparedPayrollDataReturn {\n handlePreparePayroll: () => Promise<void>\n preparedPayroll: PayrollPrepared | undefined\n paySchedule: PayScheduleShow | undefined\n isLoading: boolean\n isPaginating: boolean\n hasInitialData: boolean\n}\n\nconst PREPARE_MAX_ATTEMPTS = 4\nconst PREPARE_RETRY_DELAY_MS = 1500\n\nconst isPayrollBeingProcessedError = (error: unknown): boolean => {\n if (!(error instanceof UnprocessableEntityError)) return false\n return error.errors.some(e => e.category === 'invalid_operation')\n}\n\n/**\n * Wraps the prepare-payroll mutation and pay-schedule fetch, retrying while the payroll is still being processed.\n *\n * @remarks\n * Fires the prepare call once on mount, then exposes `handlePreparePayroll` for callers that need to re-prepare\n * (e.g. after sort or pagination changes). Distinguishes initial loading from subsequent pagination via\n * `isLoading` and `isPaginating`, and surfaces the pay schedule for the prepared payroll's pay period.\n *\n * @param params - The company and payroll identifiers, plus optional employee filter, sort, and ready callback.\n * @returns The prepared payroll, its pay schedule, loading flags, and a `handlePreparePayroll` callback to re-run.\n * @internal\n */\nexport const usePreparedPayrollData = ({\n companyId,\n payrollId,\n employeeUuids,\n sortBy,\n onDataReady,\n}: UsePreparedPayrollDataParams): UsePreparedPayrollDataReturn => {\n const { mutateAsync: preparePayroll, isPending: isPreparePayrollPending } =\n usePayrollsPrepareMutation()\n const [preparedPayroll, setPreparedPayroll] = useState<PayrollPrepared | undefined>()\n const hasInitialDataRef = useRef(false)\n const hasFiredRef = useRef(false)\n const { baseSubmitHandler } = useBase()\n\n const employeeUuidsKey = useMemo(() => employeeUuids?.join(',') ?? '', [employeeUuids])\n\n const { data: payScheduleData, isLoading: isPayScheduleLoading } = usePaySchedulesGet(\n {\n companyId,\n payScheduleId: preparedPayroll?.payPeriod?.payScheduleUuid || '',\n },\n {\n enabled: !!preparedPayroll?.payPeriod?.payScheduleUuid,\n },\n )\n\n const executePrepare = useCallback(async () => {\n const result = await preparePayroll({\n request: {\n companyId,\n payrollId,\n sortBy,\n requestBody: {\n employeeUuids,\n },\n },\n })\n setPreparedPayroll(result.payrollPrepared)\n if (result.payrollPrepared) {\n hasInitialDataRef.current = true\n onDataReady?.(result.payrollPrepared)\n }\n }, [companyId, payrollId, preparePayroll, employeeUuidsKey, sortBy, onDataReady])\n\n const handlePreparePayroll = useCallback(async () => {\n await baseSubmitHandler(null, () =>\n retryAsync(executePrepare, {\n maxAttempts: PREPARE_MAX_ATTEMPTS,\n delayMs: PREPARE_RETRY_DELAY_MS,\n shouldRetry: isPayrollBeingProcessedError,\n }),\n )\n }, [baseSubmitHandler, executePrepare])\n\n useEffect(() => {\n if (hasFiredRef.current) return\n hasFiredRef.current = true\n void handlePreparePayroll()\n }, [handlePreparePayroll])\n\n const isInitialLoading = isPreparePayrollPending && !hasInitialDataRef.current\n const isPaginating = isPreparePayrollPending && hasInitialDataRef.current\n const isLoading = isInitialLoading || isPayScheduleLoading\n\n return {\n handlePreparePayroll,\n preparedPayroll,\n paySchedule: payScheduleData?.payScheduleShow,\n isLoading,\n isPaginating,\n hasInitialData: hasInitialDataRef.current,\n }\n}\n"],"names":["PREPARE_MAX_ATTEMPTS","PREPARE_RETRY_DELAY_MS","isPayrollBeingProcessedError","error","UnprocessableEntityError","e","usePreparedPayrollData","companyId","payrollId","employeeUuids","sortBy","onDataReady","preparePayroll","isPreparePayrollPending","usePayrollsPrepareMutation","preparedPayroll","setPreparedPayroll","useState","hasInitialDataRef","useRef","hasFiredRef","baseSubmitHandler","useBase","employeeUuidsKey","useMemo","payScheduleData","isPayScheduleLoading","usePaySchedulesGet","executePrepare","useCallback","result","handlePreparePayroll","retryAsync","useEffect","isInitialLoading","isPaginating","isLoading"],"mappings":"
|
|
1
|
+
{"version":3,"file":"usePreparedPayrollData.js","sources":["../../../src/components/Payroll/usePreparedPayrollData.ts"],"sourcesContent":["import { useState, useEffect, useCallback, useRef, useMemo } from 'react'\nimport { usePayrollsPrepareMutation } from '@gusto/embedded-api/react-query/payrollsPrepare'\nimport { usePaySchedulesGet } from '@gusto/embedded-api/react-query/paySchedulesGet'\nimport type { PayrollPrepared } from '@gusto/embedded-api/models/components/payrollshow'\nimport type { PayScheduleShow } from '@gusto/embedded-api/models/components/payscheduleshow'\nimport { UnprocessableEntityError } from '@gusto/embedded-api/models/errors/unprocessableentityerror'\nimport { useBase } from '../Base'\nimport { retryAsync } from '@/helpers/retryAsync'\n\ninterface UsePreparedPayrollDataParams {\n companyId: string\n payrollId: string\n employeeUuids?: string[]\n sortBy?: string\n onDataReady?: (preparedPayroll: PayrollPrepared) => void\n}\n\ninterface UsePreparedPayrollDataReturn {\n handlePreparePayroll: () => Promise<void>\n preparedPayroll: PayrollPrepared | undefined\n paySchedule: PayScheduleShow | undefined\n isLoading: boolean\n isPaginating: boolean\n hasInitialData: boolean\n}\n\nconst PREPARE_MAX_ATTEMPTS = 4\nconst PREPARE_RETRY_DELAY_MS = 1500\n\nconst isPayrollBeingProcessedError = (error: unknown): boolean => {\n if (!(error instanceof UnprocessableEntityError)) return false\n return error.errors.some(e => e.category === 'invalid_operation')\n}\n\n/**\n * Wraps the prepare-payroll mutation and pay-schedule fetch, retrying while the payroll is still being processed.\n *\n * @remarks\n * Fires the prepare call once on mount, then exposes `handlePreparePayroll` for callers that need to re-prepare\n * (e.g. after sort or pagination changes). Distinguishes initial loading from subsequent pagination via\n * `isLoading` and `isPaginating`, and surfaces the pay schedule for the prepared payroll's pay period.\n *\n * @param params - The company and payroll identifiers, plus optional employee filter, sort, and ready callback.\n * @returns The prepared payroll, its pay schedule, loading flags, and a `handlePreparePayroll` callback to re-run.\n * @internal\n */\nexport const usePreparedPayrollData = ({\n companyId,\n payrollId,\n employeeUuids,\n sortBy,\n onDataReady,\n}: UsePreparedPayrollDataParams): UsePreparedPayrollDataReturn => {\n const { mutateAsync: preparePayroll, isPending: isPreparePayrollPending } =\n usePayrollsPrepareMutation()\n const [preparedPayroll, setPreparedPayroll] = useState<PayrollPrepared | undefined>()\n const hasInitialDataRef = useRef(false)\n const hasFiredRef = useRef(false)\n const { baseSubmitHandler } = useBase()\n\n const employeeUuidsKey = useMemo(() => employeeUuids?.join(',') ?? '', [employeeUuids])\n\n const { data: payScheduleData, isLoading: isPayScheduleLoading } = usePaySchedulesGet(\n {\n companyId,\n payScheduleId: preparedPayroll?.payPeriod?.payScheduleUuid || '',\n },\n {\n enabled: !!preparedPayroll?.payPeriod?.payScheduleUuid,\n },\n )\n\n const executePrepare = useCallback(async () => {\n const result = await preparePayroll({\n request: {\n companyId,\n payrollId,\n sortBy,\n requestBody: {\n employeeUuids,\n },\n },\n })\n setPreparedPayroll(result.payrollPrepared)\n if (result.payrollPrepared) {\n hasInitialDataRef.current = true\n onDataReady?.(result.payrollPrepared)\n }\n }, [companyId, payrollId, preparePayroll, employeeUuidsKey, sortBy, onDataReady])\n\n const handlePreparePayroll = useCallback(async () => {\n await baseSubmitHandler(null, () =>\n retryAsync(executePrepare, {\n maxAttempts: PREPARE_MAX_ATTEMPTS,\n delayMs: PREPARE_RETRY_DELAY_MS,\n shouldRetry: isPayrollBeingProcessedError,\n }),\n )\n }, [baseSubmitHandler, executePrepare])\n\n useEffect(() => {\n if (hasFiredRef.current) return\n hasFiredRef.current = true\n void handlePreparePayroll()\n }, [handlePreparePayroll])\n\n const isInitialLoading = isPreparePayrollPending && !hasInitialDataRef.current\n const isPaginating = isPreparePayrollPending && hasInitialDataRef.current\n const isLoading = isInitialLoading || isPayScheduleLoading\n\n return {\n handlePreparePayroll,\n preparedPayroll,\n paySchedule: payScheduleData?.payScheduleShow,\n isLoading,\n isPaginating,\n hasInitialData: hasInitialDataRef.current,\n }\n}\n"],"names":["PREPARE_MAX_ATTEMPTS","PREPARE_RETRY_DELAY_MS","isPayrollBeingProcessedError","error","UnprocessableEntityError","e","usePreparedPayrollData","companyId","payrollId","employeeUuids","sortBy","onDataReady","preparePayroll","isPreparePayrollPending","usePayrollsPrepareMutation","preparedPayroll","setPreparedPayroll","useState","hasInitialDataRef","useRef","hasFiredRef","baseSubmitHandler","useBase","employeeUuidsKey","useMemo","payScheduleData","isPayScheduleLoading","usePaySchedulesGet","executePrepare","useCallback","result","handlePreparePayroll","retryAsync","useEffect","isInitialLoading","isPaginating","isLoading"],"mappings":";;;;;;;;;;;;;;;;AA0BA,MAAMA,IAAuB,GACvBC,IAAyB,MAEzBC,IAA+B,CAACC,MAC9BA,aAAiBC,IAChBD,EAAM,OAAO,KAAK,CAAAE,MAAKA,EAAE,aAAa,mBAAmB,IADP,IAgB9CC,IAAyB,CAAC;AAAA,EACrC,WAAAC;AAAA,EACA,WAAAC;AAAA,EACA,eAAAC;AAAA,EACA,QAAAC;AAAA,EACA,aAAAC;AACF,MAAkE;AAChE,QAAM,EAAE,aAAaC,GAAgB,WAAWC,EAAA,IAC9CC,EAAA,GACI,CAACC,GAAiBC,CAAkB,IAAIC,EAAA,GACxCC,IAAoBC,EAAO,EAAK,GAChCC,IAAcD,EAAO,EAAK,GAC1B,EAAE,mBAAAE,EAAA,IAAsBC,EAAA,GAExBC,IAAmBC,EAAQ,MAAMf,GAAe,KAAK,GAAG,KAAK,IAAI,CAACA,CAAa,CAAC,GAEhF,EAAE,MAAMgB,GAAiB,WAAWC,MAAyBC;AAAA,IACjE;AAAA,MACE,WAAApB;AAAA,MACA,eAAeQ,GAAiB,WAAW,mBAAmB;AAAA,IAAA;AAAA,IAEhE;AAAA,MACE,SAAS,CAAC,CAACA,GAAiB,WAAW;AAAA,IAAA;AAAA,EACzC,GAGIa,IAAiBC,EAAY,YAAY;AAC7C,UAAMC,IAAS,MAAMlB,EAAe;AAAA,MAClC,SAAS;AAAA,QACP,WAAAL;AAAA,QACA,WAAAC;AAAA,QACA,QAAAE;AAAA,QACA,aAAa;AAAA,UACX,eAAAD;AAAA,QAAA;AAAA,MACF;AAAA,IACF,CACD;AACD,IAAAO,EAAmBc,EAAO,eAAe,GACrCA,EAAO,oBACTZ,EAAkB,UAAU,IAC5BP,IAAcmB,EAAO,eAAe;AAAA,EAExC,GAAG,CAACvB,GAAWC,GAAWI,GAAgBW,GAAkBb,GAAQC,CAAW,CAAC,GAE1EoB,IAAuBF,EAAY,YAAY;AACnD,UAAMR;AAAA,MAAkB;AAAA,MAAM,MAC5BW,EAAWJ,GAAgB;AAAA,QACzB,aAAa5B;AAAA,QACb,SAASC;AAAA,QACT,aAAaC;AAAA,MAAA,CACd;AAAA,IAAA;AAAA,EAEL,GAAG,CAACmB,GAAmBO,CAAc,CAAC;AAEtC,EAAAK,EAAU,MAAM;AACd,IAAIb,EAAY,YAChBA,EAAY,UAAU,IACjBW,EAAA;AAAA,EACP,GAAG,CAACA,CAAoB,CAAC;AAEzB,QAAMG,IAAmBrB,KAA2B,CAACK,EAAkB,SACjEiB,IAAetB,KAA2BK,EAAkB,SAC5DkB,IAAYF,KAAoBR;AAEtC,SAAO;AAAA,IACL,sBAAAK;AAAA,IACA,iBAAAhB;AAAA,IACA,aAAaU,GAAiB;AAAA,IAC9B,WAAAW;AAAA,IACA,cAAAD;AAAA,IACA,gBAAgBjB,EAAkB;AAAA,EAAA;AAEtC;"}
|