@gusto/embedded-react-sdk 0.21.0 → 0.22.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +31 -0
- package/README.md +32 -17
- package/dist/assets/icons/icon-file-outline.svg.js +10 -0
- package/dist/assets/icons/icon-file-outline.svg.js.map +1 -0
- package/dist/assets/icons/icon-receipt-outline.svg.js +10 -0
- package/dist/assets/icons/icon-receipt-outline.svg.js.map +1 -0
- package/dist/components/Base/Base.js.map +1 -1
- package/dist/components/Base/index.d.ts +1 -1
- package/dist/components/Common/Fields/CheckboxField/CheckboxField.js.map +1 -1
- package/dist/components/Common/Fields/CheckboxGroupField/CheckboxGroupField.js.map +1 -1
- package/dist/components/Common/Fields/ComboBoxField/ComboBoxField.js.map +1 -1
- package/dist/components/Common/Fields/DatePickerField/DatePickerField.js.map +1 -1
- package/dist/components/Common/Fields/NumberInputField/NumberInputField.js.map +1 -1
- package/dist/components/Common/Fields/RadioGroupField/RadioGroupField.js.map +1 -1
- package/dist/components/Common/Fields/SelectField/SelectField.js.map +1 -1
- package/dist/components/Common/Fields/SwitchField/SwitchField.js.map +1 -1
- package/dist/components/Common/Fields/TextAreaField/TextAreaField.js.map +1 -1
- package/dist/components/Common/Fields/TextInputField/TextInputField.js.map +1 -1
- package/dist/components/Common/Fieldset/Fieldset.js.map +1 -1
- package/dist/components/Common/FlowBreadcrumbs/breadcrumbTransitionHelpers.d.ts +1 -0
- package/dist/components/Common/FlowBreadcrumbs/breadcrumbTransitionHelpers.js +14 -0
- package/dist/components/Common/FlowBreadcrumbs/breadcrumbTransitionHelpers.js.map +1 -0
- package/dist/components/Common/FlowBreadcrumbs/index.d.ts +1 -0
- package/dist/components/Common/SignatureForm/SignatureForm.js +11 -12
- package/dist/components/Common/SignatureForm/SignatureForm.js.map +1 -1
- package/dist/components/Common/SignatureForm/SignatureFormActions.js +1 -1
- package/dist/components/Common/SignatureForm/SignatureFormFields.js +2 -2
- package/dist/components/Common/UI/Badge/BadgeTypes.js.map +1 -1
- package/dist/components/Common/UI/Banner/BannerTypes.js.map +1 -1
- package/dist/components/Common/UI/Breadcrumbs/Breadcrumbs.js +1 -1
- package/dist/components/Common/UI/Button/ButtonTypes.js.map +1 -1
- package/dist/components/Common/UI/Checkbox/CheckboxTypes.js.map +1 -1
- package/dist/components/Common/UI/CheckboxGroup/CheckboxGroupTypes.js.map +1 -1
- package/dist/components/Common/UI/ComboBox/ComboBox.module.scss.js +1 -1
- package/dist/components/Common/UI/DatePicker/DatePicker.module.scss.js +7 -7
- package/dist/components/Common/UI/Input/InputTypes.js.map +1 -1
- package/dist/components/Common/UI/LoadingSpinner/LoadingSpinnerTypes.js.map +1 -1
- package/dist/components/Common/UI/ProgressBar/ProgressBar.js +4 -4
- package/dist/components/Common/UI/Radio/RadioTypes.js.map +1 -1
- package/dist/components/Common/UI/RadioGroup/RadioGroupTypes.js.map +1 -1
- package/dist/components/Common/UI/Select/Select.module.scss.js +6 -6
- package/dist/components/Common/UI/Switch/SwitchTypes.js.map +1 -1
- package/dist/components/Common/UI/Table/Table.module.scss.js +1 -1
- package/dist/components/Common/UI/Table/TableTypes.js.map +1 -1
- package/dist/components/Common/UI/TextArea/TextAreaTypes.js.map +1 -1
- package/dist/components/Common/UI/TextInput/TextInputTypes.js.map +1 -1
- package/dist/components/Company/AssignSignatory/AssignSignatory.js +1 -1
- package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js +17 -16
- package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js.map +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +3 -5
- package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js +6 -5
- package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js.map +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +3 -5
- package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/useAssignSignatory.js +5 -7
- package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountForm/Form.js +5 -6
- package/dist/components/Company/BankAccount/BankAccountForm/Form.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountForm/context.js +3 -5
- package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountVerify/Form.js +5 -6
- package/dist/components/Company/BankAccount/BankAccountVerify/Form.js.map +1 -1
- package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js +2 -2
- package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +3 -5
- package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
- package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js +2 -2
- package/dist/components/Company/DocumentSigner/SignatureForm/useSignatureForm.js +3 -5
- package/dist/components/Company/DocumentSigner/SignatureForm/useSignatureForm.js.map +1 -1
- package/dist/components/Company/FederalTaxes/FederalTaxes.js +2 -2
- package/dist/components/Company/FederalTaxes/Form.js +3 -4
- package/dist/components/Company/FederalTaxes/Form.js.map +1 -1
- package/dist/components/Company/FederalTaxes/useFederalTaxes.js +8 -10
- package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
- package/dist/components/Company/Industry/Context.js +6 -8
- package/dist/components/Company/Industry/Context.js.map +1 -1
- package/dist/components/Company/Locations/LocationForm/Form.js +6 -5
- package/dist/components/Company/Locations/LocationForm/Form.js.map +1 -1
- package/dist/components/Company/Locations/LocationForm/LocationForm.js +2 -2
- package/dist/components/Company/Locations/LocationForm/useLocationForm.js +3 -5
- package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
- package/dist/components/Company/Locations/LocationsList/LocationsList.js +2 -2
- package/dist/components/Company/Locations/LocationsList/useLocationsList.js +3 -5
- package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
- package/dist/components/Company/OnboardingOverview/Completed.js +2 -3
- package/dist/components/Company/OnboardingOverview/Completed.js.map +1 -1
- package/dist/components/Company/OnboardingOverview/MissingRequirements.js +2 -3
- package/dist/components/Company/OnboardingOverview/MissingRequirements.js.map +1 -1
- package/dist/components/Company/OnboardingOverview/OnboardingOverview.js +2 -2
- package/dist/components/Company/OnboardingOverview/context.js +3 -5
- package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
- package/dist/components/Company/PaySchedule/PaySchedule.js +2 -2
- package/dist/components/Company/PaySchedule/PaySchedule.js.map +1 -1
- package/dist/components/Company/PaySchedule/_parts/Edit.js +24 -23
- package/dist/components/Company/PaySchedule/_parts/Edit.js.map +1 -1
- package/dist/components/Company/PaySchedule/_parts/Head.js +8 -9
- package/dist/components/Company/PaySchedule/_parts/Head.js.map +1 -1
- package/dist/components/Company/PaySchedule/_parts/List.js +11 -12
- package/dist/components/Company/PaySchedule/_parts/List.js.map +1 -1
- package/dist/components/Company/PaySchedule/usePaySchedule.js +5 -7
- package/dist/components/Company/PaySchedule/usePaySchedule.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +3 -5
- package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesList/context.js +3 -5
- package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
- package/dist/components/Contractor/Address/Address.js +2 -2
- package/dist/components/Contractor/Address/Form.js +8 -7
- package/dist/components/Contractor/Address/Form.js.map +1 -1
- package/dist/components/Contractor/Address/useAddress.js +5 -7
- package/dist/components/Contractor/Address/useAddress.js.map +1 -1
- package/dist/components/Contractor/ContractorList/index.js +17 -17
- package/dist/components/Contractor/PaymentMethod/BankAccountForm.js +2 -2
- package/dist/components/Contractor/PaymentMethod/PaymentTypeForm.js +1 -1
- package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.d.ts +7 -0
- package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js +48 -0
- package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js.map +1 -0
- package/dist/components/Contractor/Payments/CreatePayment/CreatePaymentPresentation.d.ts +1 -2
- package/dist/components/Contractor/Payments/CreatePayment/CreatePaymentPresentation.js +109 -0
- package/dist/components/Contractor/Payments/CreatePayment/CreatePaymentPresentation.js.map +1 -0
- package/dist/components/Contractor/Payments/EditPayment/EditPayment.d.ts +7 -0
- package/dist/components/Contractor/Payments/EditPayment/EditPayment.js +34 -0
- package/dist/components/Contractor/Payments/EditPayment/EditPayment.js.map +1 -0
- package/dist/components/Contractor/Payments/EditPayment/EditPaymentPresentation.d.ts +6 -0
- package/dist/components/Contractor/Payments/EditPayment/EditPaymentPresentation.js +84 -0
- package/dist/components/Contractor/Payments/EditPayment/EditPaymentPresentation.js.map +1 -0
- package/dist/components/Contractor/Payments/Overview/Overview.d.ts +7 -0
- package/dist/components/Contractor/Payments/Overview/Overview.js +72 -0
- package/dist/components/Contractor/Payments/Overview/Overview.js.map +1 -0
- package/dist/components/Contractor/Payments/Overview/OverviewPresentation.js +131 -0
- package/dist/components/Contractor/Payments/Overview/OverviewPresentation.js.map +1 -0
- package/dist/components/Contractor/Payments/PaymentFlow/PaymentFlow.d.ts +2 -0
- package/dist/components/Contractor/Payments/PaymentFlow/PaymentFlow.js +26 -0
- package/dist/components/Contractor/Payments/PaymentFlow/PaymentFlow.js.map +1 -0
- package/dist/components/Contractor/Payments/PaymentFlow/PaymentFlowComponents.d.ts +15 -0
- package/dist/components/Contractor/Payments/PaymentFlow/PaymentFlowComponents.js +30 -0
- package/dist/components/Contractor/Payments/PaymentFlow/PaymentFlowComponents.js.map +1 -0
- package/dist/components/Contractor/Payments/PaymentFlow/index.d.ts +3 -0
- package/dist/components/Contractor/Payments/PaymentFlow/paymentStateMachine.d.ts +8 -0
- package/dist/components/Contractor/Payments/PaymentFlow/paymentStateMachine.js +158 -0
- package/dist/components/Contractor/Payments/PaymentFlow/paymentStateMachine.js.map +1 -0
- package/dist/components/Contractor/Payments/PaymentsList/PaymentsList.d.ts +7 -0
- package/dist/components/Contractor/Payments/PaymentsList/PaymentsList.js +29 -0
- package/dist/components/Contractor/Payments/PaymentsList/PaymentsList.js.map +1 -0
- package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.d.ts +18 -0
- package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.js +108 -0
- package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.js.map +1 -0
- package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.module.scss.js +10 -0
- package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.module.scss.js.map +1 -0
- package/dist/components/Contractor/Profile/ContractorProfileForm.js +15 -15
- package/dist/components/Contractor/Profile/useContractorProfile.d.ts +26 -26
- package/dist/components/Contractor/Profile/useContractorProfile.js +2 -3
- package/dist/components/Contractor/Profile/useContractorProfile.js.map +1 -1
- package/dist/components/Contractor/Submit/Submit.js +1 -1
- package/dist/components/Contractor/Submit/Submit.js.map +1 -1
- package/dist/components/Contractor/index.d.ts +1 -0
- package/dist/components/Contractor/index.js +4 -2
- package/dist/components/Contractor/index.js.map +1 -1
- package/dist/components/Employee/Compensation/Edit.js +14 -14
- package/dist/components/Employee/Deductions/DeductionsForm/ChildSupportForm.js +10 -12
- package/dist/components/Employee/Deductions/DeductionsForm/ChildSupportForm.js.map +1 -1
- package/dist/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.js +11 -13
- package/dist/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.js.map +1 -1
- package/dist/components/Employee/Deductions/DeductionsForm/DeductionsForm.js +83 -50
- package/dist/components/Employee/Deductions/DeductionsForm/DeductionsForm.js.map +1 -1
- package/dist/components/Employee/Deductions/DeductionsForm/GarnishmentForm.d.ts +56 -0
- package/dist/components/Employee/Deductions/DeductionsForm/GarnishmentForm.js +158 -0
- package/dist/components/Employee/Deductions/DeductionsForm/GarnishmentForm.js.map +1 -0
- package/dist/components/Employee/Deductions/DeductionsList/DeductionsList.js +1 -1
- package/dist/components/Employee/Deductions/IncludeDeductions/IncludeDeductions.js +3 -2
- package/dist/components/Employee/Deductions/IncludeDeductions/IncludeDeductions.js.map +1 -1
- package/dist/components/Employee/DocumentSigner/DocumentList/DocumentList.js +1 -1
- package/dist/components/Employee/DocumentSigner/DocumentList/List.js +2 -3
- package/dist/components/Employee/DocumentSigner/DocumentList/List.js.map +1 -1
- package/dist/components/Employee/DocumentSigner/DocumentList/useDocumentList.js +3 -5
- package/dist/components/Employee/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
- package/dist/components/Employee/DocumentSigner/SignatureForm/SignatureForm.js +1 -1
- package/dist/components/Employee/DocumentSigner/SignatureForm/useSignatureForm.js +3 -5
- package/dist/components/Employee/DocumentSigner/SignatureForm/useSignatureForm.js.map +1 -1
- package/dist/components/Employee/EmployeeList/EmployeeList.js +3 -4
- package/dist/components/Employee/EmployeeList/EmployeeList.js.map +1 -1
- package/dist/components/Employee/EmployeeList/Head.js +2 -3
- package/dist/components/Employee/EmployeeList/Head.js.map +1 -1
- package/dist/components/Employee/EmployeeList/useEmployeeList.js +3 -5
- package/dist/components/Employee/EmployeeList/useEmployeeList.js.map +1 -1
- package/dist/components/Employee/FederalTaxes/FederalForm.d.ts +22 -7
- package/dist/components/Employee/FederalTaxes/FederalForm.js +86 -32
- package/dist/components/Employee/FederalTaxes/FederalForm.js.map +1 -1
- package/dist/components/Employee/FederalTaxes/FederalTaxes.js +62 -46
- package/dist/components/Employee/FederalTaxes/FederalTaxes.js.map +1 -1
- package/dist/components/Employee/FederalTaxes/useFederalTaxes.js +3 -5
- package/dist/components/Employee/FederalTaxes/useFederalTaxes.js.map +1 -1
- package/dist/components/Employee/Landing/Landing.js +8 -8
- package/dist/components/Employee/OnboardingSummary/OnboardingSummary.js +7 -7
- package/dist/components/Employee/PaymentMethod/BankAccountEdit.js +2 -2
- package/dist/components/Employee/PaymentMethod/PaymentTypeForm.js +1 -1
- package/dist/components/Employee/PaymentMethod/Split.js +8 -8
- package/dist/components/Employee/PaymentMethod/usePaymentMethod.js +5 -7
- package/dist/components/Employee/PaymentMethod/usePaymentMethod.js.map +1 -1
- package/dist/components/Employee/Profile/AdminPersonalDetails.d.ts +6 -6
- package/dist/components/Employee/Profile/AdminPersonalDetails.js +1 -1
- package/dist/components/Employee/Profile/HomeAddress.js +10 -9
- package/dist/components/Employee/Profile/HomeAddress.js.map +1 -1
- package/dist/components/Employee/Profile/PersonalDetailsInputs.d.ts +2 -2
- package/dist/components/Employee/Profile/PersonalDetailsInputs.js +11 -10
- package/dist/components/Employee/Profile/PersonalDetailsInputs.js.map +1 -1
- package/dist/components/Employee/Profile/useProfile.js +3 -5
- package/dist/components/Employee/Profile/useProfile.js.map +1 -1
- package/dist/components/Employee/StateTaxes/useStateTaxes.js +3 -5
- package/dist/components/Employee/StateTaxes/useStateTaxes.js.map +1 -1
- package/dist/components/Employee/Taxes/FederalForm.d.ts +22 -7
- package/dist/components/Employee/Taxes/FederalForm.js +86 -32
- package/dist/components/Employee/Taxes/FederalForm.js.map +1 -1
- package/dist/components/Employee/Taxes/Taxes.js +97 -81
- package/dist/components/Employee/Taxes/Taxes.js.map +1 -1
- package/dist/components/Employee/Taxes/useTaxes.js +3 -5
- package/dist/components/Employee/Taxes/useTaxes.js.map +1 -1
- package/dist/components/Flow/Flow.js +12 -13
- package/dist/components/Flow/Flow.js.map +1 -1
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.js +46 -39
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.js.map +1 -1
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.module.scss.js +8 -0
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.module.scss.js.map +1 -0
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsBanner/ConfirmWireDetailsBanner.js.map +1 -1
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsComponents.js.map +1 -1
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/ConfirmWireDetailsForm.js +78 -79
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/ConfirmWireDetailsForm.js.map +1 -1
- package/dist/components/Payroll/ConfirmWireDetails/WireInstructions/WireInstructions.js +21 -22
- package/dist/components/Payroll/ConfirmWireDetails/WireInstructions/WireInstructions.js.map +1 -1
- package/dist/components/Payroll/ConfirmWireDetails/confirmWireDetailsStateMachine.d.ts +2 -2
- package/dist/components/Payroll/ConfirmWireDetails/confirmWireDetailsStateMachine.js +19 -19
- package/dist/components/Payroll/ConfirmWireDetails/confirmWireDetailsStateMachine.js.map +1 -1
- package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerAlerts.js +6 -7
- package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerAlerts.js.map +1 -1
- package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerList.js +2 -3
- package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerList.js.map +1 -1
- package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js +17 -16
- package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js +57 -56
- package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollEditEmployee/TimeOffField.js +8 -9
- package/dist/components/Payroll/PayrollEditEmployee/TimeOffField.js.map +1 -1
- package/dist/components/Payroll/PayrollFlow/PayrollFlowComponents.d.ts +1 -0
- package/dist/components/Payroll/PayrollFlow/PayrollFlowComponents.js.map +1 -1
- package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js +32 -40
- package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js.map +1 -1
- package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js +53 -53
- package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollList/PayrollListPresentation.js +16 -17
- package/dist/components/Payroll/PayrollList/PayrollListPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollOverview/PayrollOverview.js +127 -103
- package/dist/components/Payroll/PayrollOverview/PayrollOverview.js.map +1 -1
- package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js +254 -185
- package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchThresholdExceeded.js +2 -3
- package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchThresholdExceeded.js.map +1 -1
- package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.js +2 -3
- package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.module.scss.js +1 -1
- package/dist/components/Payroll/usePreparedPayrollData.js +7 -9
- package/dist/components/Payroll/usePreparedPayrollData.js.map +1 -1
- package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js +2 -3
- package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js.map +1 -1
- package/dist/helpers/formattedStrings.js +11 -12
- package/dist/helpers/formattedStrings.js.map +1 -1
- package/dist/i18n/I18n.js +8 -8
- package/dist/i18n/I18n.js.map +1 -1
- package/dist/i18n/en/Contractor.Payments.CreatePayment.json.js +34 -0
- package/dist/i18n/en/Contractor.Payments.CreatePayment.json.js.map +1 -0
- package/dist/i18n/en/Contractor.Payments.EditPayment.json.js +36 -0
- package/dist/i18n/en/Contractor.Payments.EditPayment.json.js.map +1 -0
- package/dist/i18n/en/Contractor.Payments.Overview.json.js +34 -0
- package/dist/i18n/en/Contractor.Payments.Overview.json.js.map +1 -0
- package/dist/i18n/en/Contractor.Payments.PaymentsList.json.js +34 -0
- package/dist/i18n/en/Contractor.Payments.PaymentsList.json.js.map +1 -0
- package/dist/i18n/en/Employee.Deductions.json.js +58 -46
- package/dist/i18n/en/Employee.Deductions.json.js.map +1 -1
- package/dist/i18n/en/Employee.FederalTaxes.json.js +49 -41
- package/dist/i18n/en/Employee.FederalTaxes.json.js.map +1 -1
- package/dist/i18n/en/Employee.Taxes.json.js +53 -45
- package/dist/i18n/en/Employee.Taxes.json.js.map +1 -1
- package/dist/i18n/en/Payroll.ConfirmWireDetailsForm.json.js +5 -5
- package/dist/i18n/en/Payroll.PayrollOverview.json.js +34 -30
- package/dist/i18n/en/Payroll.PayrollOverview.json.js.map +1 -1
- package/dist/shared/constants.d.ts +12 -0
- package/dist/shared/constants.js +66 -58
- package/dist/shared/constants.js.map +1 -1
- package/dist/style.css +1 -1
- package/dist/types/i18next.d.ts +141 -95
- package/package.json +13 -13
- package/dist/components/Contractor/Payments/PaymentEdit/PaymentEditPresentation.d.ts +0 -6
- package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistoryPresentation.d.ts +0 -18
- package/dist/i18n/en/ContractorPayment.ContractorPaymentCreatePayment.json.js +0 -32
- package/dist/i18n/en/ContractorPayment.ContractorPaymentCreatePayment.json.js.map +0 -1
- package/dist/i18n/en/ContractorPayment.ContractorPaymentOverview.json.js +0 -32
- package/dist/i18n/en/ContractorPayment.ContractorPaymentOverview.json.js.map +0 -1
- package/dist/i18n/en/ContractorPayment.ContractorPaymentPaymentHistory.json.js +0 -32
- package/dist/i18n/en/ContractorPayment.ContractorPaymentPaymentHistory.json.js.map +0 -1
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { state as i, transition as o, reduce as r
|
|
2
|
-
import { PayrollConfigurationContextual as
|
|
1
|
+
import { state as i, transition as o, reduce as r } from "robot3";
|
|
2
|
+
import { PayrollConfigurationContextual as d, PayrollOverviewContextual as m, PayrollEditEmployeeContextual as u, PayrollBlockerContextual as y, PayrollLandingContextual as s, PayrollReceiptsContextual as g } from "./PayrollFlowComponents.js";
|
|
3
3
|
import { componentEvents as l } from "../../../shared/constants.js";
|
|
4
4
|
import { updateBreadcrumbs as n } from "../../../helpers/breadcrumbHelpers.js";
|
|
5
|
+
import { createBreadcrumbNavigateTransition as b } from "../../Common/FlowBreadcrumbs/breadcrumbTransitionHelpers.js";
|
|
5
6
|
const v = {
|
|
6
7
|
landing: {
|
|
7
8
|
parent: null,
|
|
@@ -13,7 +14,7 @@ const v = {
|
|
|
13
14
|
...e,
|
|
14
15
|
currentBreadcrumb: "landing",
|
|
15
16
|
progressBarType: null,
|
|
16
|
-
component:
|
|
17
|
+
component: s
|
|
17
18
|
}))
|
|
18
19
|
}
|
|
19
20
|
},
|
|
@@ -25,7 +26,7 @@ const v = {
|
|
|
25
26
|
namespace: "Payroll.PayrollConfiguration",
|
|
26
27
|
onNavigate: ((e) => ({
|
|
27
28
|
...n("configuration", e),
|
|
28
|
-
component:
|
|
29
|
+
component: d
|
|
29
30
|
}))
|
|
30
31
|
}
|
|
31
32
|
},
|
|
@@ -37,7 +38,7 @@ const v = {
|
|
|
37
38
|
namespace: "Payroll.PayrollOverview",
|
|
38
39
|
onNavigate: ((e) => ({
|
|
39
40
|
...n("overview", e),
|
|
40
|
-
component:
|
|
41
|
+
component: m,
|
|
41
42
|
alerts: void 0
|
|
42
43
|
}))
|
|
43
44
|
}
|
|
@@ -66,30 +67,21 @@ const v = {
|
|
|
66
67
|
namespace: "Payroll.PayrollBlocker"
|
|
67
68
|
}
|
|
68
69
|
}
|
|
69
|
-
},
|
|
70
|
+
}, c = (e) => (a) => ({
|
|
70
71
|
...a,
|
|
71
72
|
...e
|
|
72
|
-
}), t = (
|
|
73
|
-
l.BREADCRUMB_NAVIGATE,
|
|
74
|
-
e,
|
|
75
|
-
g(
|
|
76
|
-
(a, y) => y.payload.key === e
|
|
77
|
-
),
|
|
78
|
-
r(
|
|
79
|
-
(a, y) => y.payload.onNavigate(a)
|
|
80
|
-
)
|
|
81
|
-
), c = o(
|
|
73
|
+
}), t = b(), p = o(
|
|
82
74
|
l.PAYROLL_EXIT_FLOW,
|
|
83
75
|
"landing",
|
|
84
76
|
r(
|
|
85
|
-
|
|
86
|
-
component:
|
|
77
|
+
c({
|
|
78
|
+
component: s,
|
|
87
79
|
progressBarType: null,
|
|
88
80
|
currentBreadcrumbId: "landing",
|
|
89
81
|
alerts: void 0
|
|
90
82
|
})
|
|
91
83
|
)
|
|
92
|
-
),
|
|
84
|
+
), _ = {
|
|
93
85
|
landing: i(
|
|
94
86
|
o(
|
|
95
87
|
l.RUN_PAYROLL_SELECTED,
|
|
@@ -100,7 +92,7 @@ const v = {
|
|
|
100
92
|
startDate: a.payload.payPeriod.startDate ?? "",
|
|
101
93
|
endDate: a.payload.payPeriod.endDate ?? ""
|
|
102
94
|
}),
|
|
103
|
-
component:
|
|
95
|
+
component: d,
|
|
104
96
|
payrollUuid: a.payload.payrollUuid,
|
|
105
97
|
progressBarType: "breadcrumbs",
|
|
106
98
|
ctaConfig: {
|
|
@@ -119,7 +111,7 @@ const v = {
|
|
|
119
111
|
startDate: a.payload.payPeriod.startDate ?? "",
|
|
120
112
|
endDate: a.payload.payPeriod.endDate ?? ""
|
|
121
113
|
}),
|
|
122
|
-
component:
|
|
114
|
+
component: m,
|
|
123
115
|
payrollUuid: a.payload.payrollUuid,
|
|
124
116
|
progressBarType: "breadcrumbs",
|
|
125
117
|
ctaConfig: {
|
|
@@ -133,8 +125,8 @@ const v = {
|
|
|
133
125
|
l.RUN_PAYROLL_BLOCKERS_VIEW_ALL,
|
|
134
126
|
"blockers",
|
|
135
127
|
r(
|
|
136
|
-
|
|
137
|
-
component:
|
|
128
|
+
c({
|
|
129
|
+
component: y,
|
|
138
130
|
progressBarType: "breadcrumbs",
|
|
139
131
|
ctaConfig: {
|
|
140
132
|
labelKey: "exitFlowCta",
|
|
@@ -155,7 +147,7 @@ const v = {
|
|
|
155
147
|
startDate: a.payload.payPeriod?.startDate ?? "",
|
|
156
148
|
endDate: a.payload.payPeriod?.endDate ?? ""
|
|
157
149
|
}),
|
|
158
|
-
component:
|
|
150
|
+
component: m,
|
|
159
151
|
alerts: a.payload.alert ? [...e.alerts ?? [], a.payload.alert] : e.alerts,
|
|
160
152
|
ctaConfig: {
|
|
161
153
|
labelKey: "exitFlowCta",
|
|
@@ -174,7 +166,7 @@ const v = {
|
|
|
174
166
|
lastName: a.payload.lastName
|
|
175
167
|
}),
|
|
176
168
|
progressBarType: "breadcrumbs",
|
|
177
|
-
component:
|
|
169
|
+
component: u,
|
|
178
170
|
employeeId: a.payload.employeeId,
|
|
179
171
|
firstName: a.payload.firstName,
|
|
180
172
|
lastName: a.payload.lastName,
|
|
@@ -189,11 +181,11 @@ const v = {
|
|
|
189
181
|
r(
|
|
190
182
|
(e, a) => ({
|
|
191
183
|
...n("blockers", e),
|
|
192
|
-
component:
|
|
184
|
+
component: y
|
|
193
185
|
})
|
|
194
186
|
)
|
|
195
187
|
),
|
|
196
|
-
|
|
188
|
+
p
|
|
197
189
|
),
|
|
198
190
|
overview: i(
|
|
199
191
|
t("landing"),
|
|
@@ -204,7 +196,7 @@ const v = {
|
|
|
204
196
|
r(
|
|
205
197
|
(e, a) => ({
|
|
206
198
|
...n("configuration", e),
|
|
207
|
-
component:
|
|
199
|
+
component: d,
|
|
208
200
|
alerts: void 0,
|
|
209
201
|
ctaConfig: {
|
|
210
202
|
labelKey: "exitFlowCta",
|
|
@@ -217,8 +209,8 @@ const v = {
|
|
|
217
209
|
l.RUN_PAYROLL_RECEIPT_GET,
|
|
218
210
|
"receipts",
|
|
219
211
|
r(
|
|
220
|
-
|
|
221
|
-
component:
|
|
212
|
+
c({
|
|
213
|
+
component: g,
|
|
222
214
|
progressBarType: "breadcrumbs",
|
|
223
215
|
alerts: void 0,
|
|
224
216
|
ctaConfig: {
|
|
@@ -232,15 +224,15 @@ const v = {
|
|
|
232
224
|
l.RUN_PAYROLL_CANCELLED,
|
|
233
225
|
"landing",
|
|
234
226
|
r(
|
|
235
|
-
|
|
236
|
-
component:
|
|
227
|
+
c({
|
|
228
|
+
component: s,
|
|
237
229
|
progressBarType: null,
|
|
238
230
|
alerts: void 0,
|
|
239
231
|
currentBreadcrumbId: "landing"
|
|
240
232
|
})
|
|
241
233
|
)
|
|
242
234
|
),
|
|
243
|
-
|
|
235
|
+
p
|
|
244
236
|
),
|
|
245
237
|
editEmployee: i(
|
|
246
238
|
t("landing"),
|
|
@@ -249,9 +241,9 @@ const v = {
|
|
|
249
241
|
l.RUN_PAYROLL_EMPLOYEE_SAVED,
|
|
250
242
|
"configuration",
|
|
251
243
|
r(
|
|
252
|
-
|
|
244
|
+
c({
|
|
253
245
|
currentBreadcrumbId: "configuration",
|
|
254
|
-
component:
|
|
246
|
+
component: d,
|
|
255
247
|
employeeId: void 0,
|
|
256
248
|
firstName: void 0,
|
|
257
249
|
lastName: void 0,
|
|
@@ -266,9 +258,9 @@ const v = {
|
|
|
266
258
|
l.RUN_PAYROLL_EMPLOYEE_CANCELLED,
|
|
267
259
|
"configuration",
|
|
268
260
|
r(
|
|
269
|
-
|
|
261
|
+
c({
|
|
270
262
|
currentBreadcrumbId: "configuration",
|
|
271
|
-
component:
|
|
263
|
+
component: d,
|
|
272
264
|
employeeId: void 0,
|
|
273
265
|
firstName: void 0,
|
|
274
266
|
lastName: void 0,
|
|
@@ -280,11 +272,11 @@ const v = {
|
|
|
280
272
|
)
|
|
281
273
|
)
|
|
282
274
|
),
|
|
283
|
-
receipts: i(t("landing"),
|
|
284
|
-
blockers: i(t("landing"),
|
|
275
|
+
receipts: i(t("landing"), p),
|
|
276
|
+
blockers: i(t("landing"), p)
|
|
285
277
|
};
|
|
286
278
|
export {
|
|
287
279
|
v as payrollFlowBreadcrumbsNodes,
|
|
288
|
-
|
|
280
|
+
_ as payrollMachine
|
|
289
281
|
};
|
|
290
282
|
//# sourceMappingURL=payrollStateMachine.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payrollStateMachine.js","sources":["../../../../src/components/Payroll/PayrollFlow/payrollStateMachine.ts"],"sourcesContent":["import { transition, reduce, state, guard } from 'robot3'\nimport type { PayrollPayPeriodType } from '@gusto/embedded-api/models/components/payrollpayperiodtype'\nimport type { PayrollFlowAlert } from './PayrollFlowComponents'\nimport {\n PayrollConfigurationContextual,\n PayrollOverviewContextual,\n PayrollEditEmployeeContextual,\n PayrollReceiptsContextual,\n PayrollBlockerContextual,\n type PayrollFlowContextInterface,\n PayrollLandingContextual,\n} from './PayrollFlowComponents'\nimport { componentEvents } from '@/shared/constants'\nimport type { MachineEventType, MachineTransition } from '@/types/Helpers'\nimport { updateBreadcrumbs } from '@/helpers/breadcrumbHelpers'\nimport type { BreadcrumbNodes } from '@/components/Common/FlowBreadcrumbs/FlowBreadcrumbsTypes'\n\ntype EventPayloads = {\n [componentEvents.RUN_PAYROLL_SELECTED]: {\n payrollUuid: string\n payPeriod: PayrollPayPeriodType\n }\n [componentEvents.REVIEW_PAYROLL]: {\n payrollUuid: string\n payPeriod: PayrollPayPeriodType\n }\n [componentEvents.RUN_PAYROLL_EMPLOYEE_EDIT]: {\n employeeId: string\n firstName: string\n lastName: string\n }\n [componentEvents.RUN_PAYROLL_CALCULATED]: {\n payrollUuid: string\n alert?: PayrollFlowAlert\n payPeriod?: PayrollPayPeriodType\n }\n [componentEvents.BREADCRUMB_NAVIGATE]: {\n key: string\n onNavigate: (ctx: PayrollFlowContextInterface) => PayrollFlowContextInterface\n }\n [componentEvents.RUN_PAYROLL_BLOCKERS_VIEW_ALL]: undefined\n [componentEvents.RUN_PAYROLL_EDIT]: undefined\n}\n\nexport const payrollFlowBreadcrumbsNodes: BreadcrumbNodes = {\n landing: {\n parent: null,\n item: {\n id: 'landing',\n label: 'labels.breadcrumbLabel',\n namespace: 'Payroll.PayrollLanding',\n onNavigate: ((ctx: PayrollFlowContextInterface) => ({\n ...ctx,\n currentBreadcrumb: 'landing',\n progressBarType: null,\n component: PayrollLandingContextual,\n })) as (context: unknown) => unknown,\n },\n },\n configuration: {\n parent: 'landing',\n item: {\n id: 'configuration',\n label: 'breadcrumbLabel',\n namespace: 'Payroll.PayrollConfiguration',\n onNavigate: ((ctx: PayrollFlowContextInterface) => ({\n ...updateBreadcrumbs('configuration', ctx),\n component: PayrollConfigurationContextual,\n })) as (context: unknown) => unknown,\n },\n },\n overview: {\n parent: 'configuration',\n item: {\n id: 'overview',\n label: 'breadcrumbLabel',\n namespace: 'Payroll.PayrollOverview',\n onNavigate: ((ctx: PayrollFlowContextInterface) => ({\n ...updateBreadcrumbs('overview', ctx),\n component: PayrollOverviewContextual,\n alerts: undefined,\n })) as (context: unknown) => unknown,\n },\n },\n editEmployee: {\n parent: 'configuration',\n item: {\n id: 'editEmployee',\n label: 'breadcrumbLabel',\n namespace: 'Payroll.PayrollEditEmployee',\n },\n },\n receipts: {\n parent: 'overview',\n item: {\n id: 'receipts',\n label: 'breadcrumbLabel',\n namespace: 'Payroll.PayrollReceipts',\n },\n },\n blockers: {\n parent: 'landing',\n item: {\n id: 'blockers',\n label: 'breadcrumbLabel',\n namespace: 'Payroll.PayrollBlocker',\n },\n },\n} as const\n\nconst createReducer = (props: Partial<PayrollFlowContextInterface>) => {\n return (ctx: PayrollFlowContextInterface): PayrollFlowContextInterface => ({\n ...ctx,\n ...props,\n })\n}\n\nconst breadcrumbNavigateTransition = (targetState: string) =>\n transition(\n componentEvents.BREADCRUMB_NAVIGATE,\n targetState,\n guard(\n (ctx: PayrollFlowContextInterface, ev: { payload: { key: string } }) =>\n ev.payload.key === targetState,\n ),\n reduce(\n (\n ctx: PayrollFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.BREADCRUMB_NAVIGATE>,\n ): PayrollFlowContextInterface => ev.payload.onNavigate(ctx),\n ),\n )\n\nconst exitFlowTransition = transition(\n componentEvents.PAYROLL_EXIT_FLOW,\n 'landing',\n reduce(\n createReducer({\n component: PayrollLandingContextual,\n progressBarType: null,\n currentBreadcrumbId: 'landing',\n alerts: undefined,\n }),\n ),\n)\n\nexport const payrollMachine = {\n landing: state<MachineTransition>(\n transition(\n componentEvents.RUN_PAYROLL_SELECTED,\n 'configuration',\n reduce(\n (\n ctx: PayrollFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.RUN_PAYROLL_SELECTED>,\n ): PayrollFlowContextInterface => {\n return {\n ...updateBreadcrumbs('configuration', ctx, {\n startDate: ev.payload.payPeriod.startDate ?? '',\n endDate: ev.payload.payPeriod.endDate ?? '',\n }),\n component: PayrollConfigurationContextual,\n payrollUuid: ev.payload.payrollUuid,\n progressBarType: 'breadcrumbs',\n ctaConfig: {\n labelKey: 'exitFlowCta',\n namespace: 'Payroll.PayrollConfiguration',\n },\n }\n },\n ),\n ),\n transition(\n componentEvents.REVIEW_PAYROLL,\n 'overview',\n reduce(\n (\n ctx: PayrollFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.REVIEW_PAYROLL>,\n ): PayrollFlowContextInterface => {\n return {\n ...updateBreadcrumbs('overview', ctx, {\n startDate: ev.payload.payPeriod.startDate ?? '',\n endDate: ev.payload.payPeriod.endDate ?? '',\n }),\n component: PayrollOverviewContextual,\n payrollUuid: ev.payload.payrollUuid,\n progressBarType: 'breadcrumbs',\n ctaConfig: {\n labelKey: 'exitFlowCta',\n namespace: 'Payroll.PayrollOverview',\n },\n }\n },\n ),\n ),\n transition(\n componentEvents.RUN_PAYROLL_BLOCKERS_VIEW_ALL,\n 'blockers',\n reduce(\n createReducer({\n component: PayrollBlockerContextual,\n progressBarType: 'breadcrumbs',\n ctaConfig: {\n labelKey: 'exitFlowCta',\n namespace: 'Payroll.PayrollBlocker',\n },\n }),\n ),\n ),\n ),\n configuration: state<MachineTransition>(\n breadcrumbNavigateTransition('landing'),\n transition(\n componentEvents.RUN_PAYROLL_CALCULATED,\n 'overview',\n reduce(\n (\n ctx: PayrollFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.RUN_PAYROLL_CALCULATED>,\n ): PayrollFlowContextInterface => {\n return {\n ...updateBreadcrumbs('overview', ctx, {\n startDate: ev.payload.payPeriod?.startDate ?? '',\n endDate: ev.payload.payPeriod?.endDate ?? '',\n }),\n component: PayrollOverviewContextual,\n alerts: ev.payload.alert ? [...(ctx.alerts ?? []), ev.payload.alert] : ctx.alerts,\n ctaConfig: {\n labelKey: 'exitFlowCta',\n namespace: 'Payroll.PayrollOverview',\n },\n }\n },\n ),\n ),\n transition(\n componentEvents.RUN_PAYROLL_EMPLOYEE_EDIT,\n 'editEmployee',\n reduce(\n (\n ctx: PayrollFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.RUN_PAYROLL_EMPLOYEE_EDIT>,\n ): PayrollFlowContextInterface => {\n return {\n ...updateBreadcrumbs('editEmployee', ctx, {\n firstName: ev.payload.firstName,\n lastName: ev.payload.lastName,\n }),\n progressBarType: 'breadcrumbs',\n component: PayrollEditEmployeeContextual,\n employeeId: ev.payload.employeeId,\n firstName: ev.payload.firstName,\n lastName: ev.payload.lastName,\n ctaConfig: null, // This state does not have exit cta in breadcrumbs\n }\n },\n ),\n ),\n transition(\n componentEvents.RUN_PAYROLL_BLOCKERS_VIEW_ALL,\n 'blockers',\n reduce(\n (\n ctx: PayrollFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.RUN_PAYROLL_BLOCKERS_VIEW_ALL>,\n ): PayrollFlowContextInterface => {\n return {\n ...updateBreadcrumbs('blockers', ctx),\n component: PayrollBlockerContextual,\n }\n },\n ),\n ),\n exitFlowTransition,\n ),\n overview: state<MachineTransition>(\n breadcrumbNavigateTransition('landing'),\n breadcrumbNavigateTransition('configuration'),\n transition(\n componentEvents.RUN_PAYROLL_EDIT,\n 'configuration',\n reduce(\n (\n ctx: PayrollFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.RUN_PAYROLL_EDIT>,\n ): PayrollFlowContextInterface => {\n return {\n ...updateBreadcrumbs('configuration', ctx),\n component: PayrollConfigurationContextual,\n alerts: undefined,\n ctaConfig: {\n labelKey: 'exitFlowCta',\n namespace: 'Payroll.PayrollConfiguration',\n },\n }\n },\n ),\n ),\n\n transition(\n componentEvents.RUN_PAYROLL_RECEIPT_GET,\n 'receipts',\n reduce(\n createReducer({\n component: PayrollReceiptsContextual,\n progressBarType: 'breadcrumbs',\n alerts: undefined,\n ctaConfig: {\n labelKey: 'exitFlowCta',\n namespace: 'Payroll.PayrollReceipts',\n },\n }),\n ),\n ),\n transition(\n componentEvents.RUN_PAYROLL_CANCELLED,\n 'landing',\n reduce(\n createReducer({\n component: PayrollLandingContextual,\n progressBarType: null,\n alerts: undefined,\n currentBreadcrumbId: 'landing',\n }),\n ),\n ),\n exitFlowTransition,\n ),\n editEmployee: state<MachineTransition>(\n breadcrumbNavigateTransition('landing'),\n breadcrumbNavigateTransition('configuration'),\n transition(\n componentEvents.RUN_PAYROLL_EMPLOYEE_SAVED,\n 'configuration',\n reduce(\n createReducer({\n currentBreadcrumbId: 'configuration',\n component: PayrollConfigurationContextual,\n employeeId: undefined,\n firstName: undefined,\n lastName: undefined,\n ctaConfig: {\n labelKey: 'exitFlowCta',\n namespace: 'Payroll.PayrollConfiguration',\n },\n }),\n ),\n ),\n transition(\n componentEvents.RUN_PAYROLL_EMPLOYEE_CANCELLED,\n 'configuration',\n reduce(\n createReducer({\n currentBreadcrumbId: 'configuration',\n component: PayrollConfigurationContextual,\n employeeId: undefined,\n firstName: undefined,\n lastName: undefined,\n ctaConfig: {\n labelKey: 'exitFlowCta',\n namespace: 'Payroll.PayrollConfiguration',\n },\n }),\n ),\n ),\n ),\n receipts: state<MachineTransition>(breadcrumbNavigateTransition('landing'), exitFlowTransition),\n blockers: state<MachineTransition>(breadcrumbNavigateTransition('landing'), exitFlowTransition),\n}\n"],"names":["payrollFlowBreadcrumbsNodes","ctx","PayrollLandingContextual","updateBreadcrumbs","PayrollConfigurationContextual","PayrollOverviewContextual","createReducer","props","breadcrumbNavigateTransition","targetState","transition","componentEvents","guard","ev","reduce","exitFlowTransition","payrollMachine","state","PayrollBlockerContextual","PayrollEditEmployeeContextual","PayrollReceiptsContextual"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"payrollStateMachine.js","sources":["../../../../src/components/Payroll/PayrollFlow/payrollStateMachine.ts"],"sourcesContent":["import { transition, reduce, state } from 'robot3'\nimport type { PayrollPayPeriodType } from '@gusto/embedded-api/models/components/payrollpayperiodtype'\nimport type { PayrollFlowAlert } from './PayrollFlowComponents'\nimport {\n PayrollConfigurationContextual,\n PayrollOverviewContextual,\n PayrollEditEmployeeContextual,\n PayrollReceiptsContextual,\n PayrollBlockerContextual,\n type PayrollFlowContextInterface,\n PayrollLandingContextual,\n} from './PayrollFlowComponents'\nimport { componentEvents } from '@/shared/constants'\nimport type { MachineEventType, MachineTransition } from '@/types/Helpers'\nimport { updateBreadcrumbs } from '@/helpers/breadcrumbHelpers'\nimport type { BreadcrumbNodes } from '@/components/Common/FlowBreadcrumbs/FlowBreadcrumbsTypes'\nimport { createBreadcrumbNavigateTransition } from '@/components/Common/FlowBreadcrumbs/breadcrumbTransitionHelpers'\n\ntype EventPayloads = {\n [componentEvents.RUN_PAYROLL_SELECTED]: {\n payrollUuid: string\n payPeriod: PayrollPayPeriodType\n }\n [componentEvents.REVIEW_PAYROLL]: {\n payrollUuid: string\n payPeriod: PayrollPayPeriodType\n }\n [componentEvents.RUN_PAYROLL_EMPLOYEE_EDIT]: {\n employeeId: string\n firstName: string\n lastName: string\n }\n [componentEvents.RUN_PAYROLL_CALCULATED]: {\n payrollUuid: string\n alert?: PayrollFlowAlert\n payPeriod?: PayrollPayPeriodType\n }\n [componentEvents.BREADCRUMB_NAVIGATE]: {\n key: string\n onNavigate: (ctx: PayrollFlowContextInterface) => PayrollFlowContextInterface\n }\n [componentEvents.RUN_PAYROLL_BLOCKERS_VIEW_ALL]: undefined\n [componentEvents.RUN_PAYROLL_EDIT]: undefined\n}\n\nexport const payrollFlowBreadcrumbsNodes: BreadcrumbNodes = {\n landing: {\n parent: null,\n item: {\n id: 'landing',\n label: 'labels.breadcrumbLabel',\n namespace: 'Payroll.PayrollLanding',\n onNavigate: ((ctx: PayrollFlowContextInterface) => ({\n ...ctx,\n currentBreadcrumb: 'landing',\n progressBarType: null,\n component: PayrollLandingContextual,\n })) as (context: unknown) => unknown,\n },\n },\n configuration: {\n parent: 'landing',\n item: {\n id: 'configuration',\n label: 'breadcrumbLabel',\n namespace: 'Payroll.PayrollConfiguration',\n onNavigate: ((ctx: PayrollFlowContextInterface) => ({\n ...updateBreadcrumbs('configuration', ctx),\n component: PayrollConfigurationContextual,\n })) as (context: unknown) => unknown,\n },\n },\n overview: {\n parent: 'configuration',\n item: {\n id: 'overview',\n label: 'breadcrumbLabel',\n namespace: 'Payroll.PayrollOverview',\n onNavigate: ((ctx: PayrollFlowContextInterface) => ({\n ...updateBreadcrumbs('overview', ctx),\n component: PayrollOverviewContextual,\n alerts: undefined,\n })) as (context: unknown) => unknown,\n },\n },\n editEmployee: {\n parent: 'configuration',\n item: {\n id: 'editEmployee',\n label: 'breadcrumbLabel',\n namespace: 'Payroll.PayrollEditEmployee',\n },\n },\n receipts: {\n parent: 'overview',\n item: {\n id: 'receipts',\n label: 'breadcrumbLabel',\n namespace: 'Payroll.PayrollReceipts',\n },\n },\n blockers: {\n parent: 'landing',\n item: {\n id: 'blockers',\n label: 'breadcrumbLabel',\n namespace: 'Payroll.PayrollBlocker',\n },\n },\n} as const\n\nconst createReducer = (props: Partial<PayrollFlowContextInterface>) => {\n return (ctx: PayrollFlowContextInterface): PayrollFlowContextInterface => ({\n ...ctx,\n ...props,\n })\n}\n\nconst breadcrumbNavigateTransition =\n createBreadcrumbNavigateTransition<PayrollFlowContextInterface>()\n\nconst exitFlowTransition = transition(\n componentEvents.PAYROLL_EXIT_FLOW,\n 'landing',\n reduce(\n createReducer({\n component: PayrollLandingContextual,\n progressBarType: null,\n currentBreadcrumbId: 'landing',\n alerts: undefined,\n }),\n ),\n)\n\nexport const payrollMachine = {\n landing: state<MachineTransition>(\n transition(\n componentEvents.RUN_PAYROLL_SELECTED,\n 'configuration',\n reduce(\n (\n ctx: PayrollFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.RUN_PAYROLL_SELECTED>,\n ): PayrollFlowContextInterface => {\n return {\n ...updateBreadcrumbs('configuration', ctx, {\n startDate: ev.payload.payPeriod.startDate ?? '',\n endDate: ev.payload.payPeriod.endDate ?? '',\n }),\n component: PayrollConfigurationContextual,\n payrollUuid: ev.payload.payrollUuid,\n progressBarType: 'breadcrumbs',\n ctaConfig: {\n labelKey: 'exitFlowCta',\n namespace: 'Payroll.PayrollConfiguration',\n },\n }\n },\n ),\n ),\n transition(\n componentEvents.REVIEW_PAYROLL,\n 'overview',\n reduce(\n (\n ctx: PayrollFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.REVIEW_PAYROLL>,\n ): PayrollFlowContextInterface => {\n return {\n ...updateBreadcrumbs('overview', ctx, {\n startDate: ev.payload.payPeriod.startDate ?? '',\n endDate: ev.payload.payPeriod.endDate ?? '',\n }),\n component: PayrollOverviewContextual,\n payrollUuid: ev.payload.payrollUuid,\n progressBarType: 'breadcrumbs',\n ctaConfig: {\n labelKey: 'exitFlowCta',\n namespace: 'Payroll.PayrollOverview',\n },\n }\n },\n ),\n ),\n transition(\n componentEvents.RUN_PAYROLL_BLOCKERS_VIEW_ALL,\n 'blockers',\n reduce(\n createReducer({\n component: PayrollBlockerContextual,\n progressBarType: 'breadcrumbs',\n ctaConfig: {\n labelKey: 'exitFlowCta',\n namespace: 'Payroll.PayrollBlocker',\n },\n }),\n ),\n ),\n ),\n configuration: state<MachineTransition>(\n breadcrumbNavigateTransition('landing'),\n transition(\n componentEvents.RUN_PAYROLL_CALCULATED,\n 'overview',\n reduce(\n (\n ctx: PayrollFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.RUN_PAYROLL_CALCULATED>,\n ): PayrollFlowContextInterface => {\n return {\n ...updateBreadcrumbs('overview', ctx, {\n startDate: ev.payload.payPeriod?.startDate ?? '',\n endDate: ev.payload.payPeriod?.endDate ?? '',\n }),\n component: PayrollOverviewContextual,\n alerts: ev.payload.alert ? [...(ctx.alerts ?? []), ev.payload.alert] : ctx.alerts,\n ctaConfig: {\n labelKey: 'exitFlowCta',\n namespace: 'Payroll.PayrollOverview',\n },\n }\n },\n ),\n ),\n transition(\n componentEvents.RUN_PAYROLL_EMPLOYEE_EDIT,\n 'editEmployee',\n reduce(\n (\n ctx: PayrollFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.RUN_PAYROLL_EMPLOYEE_EDIT>,\n ): PayrollFlowContextInterface => {\n return {\n ...updateBreadcrumbs('editEmployee', ctx, {\n firstName: ev.payload.firstName,\n lastName: ev.payload.lastName,\n }),\n progressBarType: 'breadcrumbs',\n component: PayrollEditEmployeeContextual,\n employeeId: ev.payload.employeeId,\n firstName: ev.payload.firstName,\n lastName: ev.payload.lastName,\n ctaConfig: null, // This state does not have exit cta in breadcrumbs\n }\n },\n ),\n ),\n transition(\n componentEvents.RUN_PAYROLL_BLOCKERS_VIEW_ALL,\n 'blockers',\n reduce(\n (\n ctx: PayrollFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.RUN_PAYROLL_BLOCKERS_VIEW_ALL>,\n ): PayrollFlowContextInterface => {\n return {\n ...updateBreadcrumbs('blockers', ctx),\n component: PayrollBlockerContextual,\n }\n },\n ),\n ),\n exitFlowTransition,\n ),\n overview: state<MachineTransition>(\n breadcrumbNavigateTransition('landing'),\n breadcrumbNavigateTransition('configuration'),\n transition(\n componentEvents.RUN_PAYROLL_EDIT,\n 'configuration',\n reduce(\n (\n ctx: PayrollFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.RUN_PAYROLL_EDIT>,\n ): PayrollFlowContextInterface => {\n return {\n ...updateBreadcrumbs('configuration', ctx),\n component: PayrollConfigurationContextual,\n alerts: undefined,\n ctaConfig: {\n labelKey: 'exitFlowCta',\n namespace: 'Payroll.PayrollConfiguration',\n },\n }\n },\n ),\n ),\n\n transition(\n componentEvents.RUN_PAYROLL_RECEIPT_GET,\n 'receipts',\n reduce(\n createReducer({\n component: PayrollReceiptsContextual,\n progressBarType: 'breadcrumbs',\n alerts: undefined,\n ctaConfig: {\n labelKey: 'exitFlowCta',\n namespace: 'Payroll.PayrollReceipts',\n },\n }),\n ),\n ),\n transition(\n componentEvents.RUN_PAYROLL_CANCELLED,\n 'landing',\n reduce(\n createReducer({\n component: PayrollLandingContextual,\n progressBarType: null,\n alerts: undefined,\n currentBreadcrumbId: 'landing',\n }),\n ),\n ),\n exitFlowTransition,\n ),\n editEmployee: state<MachineTransition>(\n breadcrumbNavigateTransition('landing'),\n breadcrumbNavigateTransition('configuration'),\n transition(\n componentEvents.RUN_PAYROLL_EMPLOYEE_SAVED,\n 'configuration',\n reduce(\n createReducer({\n currentBreadcrumbId: 'configuration',\n component: PayrollConfigurationContextual,\n employeeId: undefined,\n firstName: undefined,\n lastName: undefined,\n ctaConfig: {\n labelKey: 'exitFlowCta',\n namespace: 'Payroll.PayrollConfiguration',\n },\n }),\n ),\n ),\n transition(\n componentEvents.RUN_PAYROLL_EMPLOYEE_CANCELLED,\n 'configuration',\n reduce(\n createReducer({\n currentBreadcrumbId: 'configuration',\n component: PayrollConfigurationContextual,\n employeeId: undefined,\n firstName: undefined,\n lastName: undefined,\n ctaConfig: {\n labelKey: 'exitFlowCta',\n namespace: 'Payroll.PayrollConfiguration',\n },\n }),\n ),\n ),\n ),\n receipts: state<MachineTransition>(breadcrumbNavigateTransition('landing'), exitFlowTransition),\n blockers: state<MachineTransition>(breadcrumbNavigateTransition('landing'), exitFlowTransition),\n}\n"],"names":["payrollFlowBreadcrumbsNodes","ctx","PayrollLandingContextual","updateBreadcrumbs","PayrollConfigurationContextual","PayrollOverviewContextual","createReducer","props","breadcrumbNavigateTransition","createBreadcrumbNavigateTransition","exitFlowTransition","transition","componentEvents","reduce","payrollMachine","state","ev","PayrollBlockerContextual","PayrollEditEmployeeContextual","PayrollReceiptsContextual"],"mappings":"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"}
|
|
@@ -1,39 +1,39 @@
|
|
|
1
1
|
import { jsxs as d, jsx as r } from "react/jsx-runtime";
|
|
2
|
-
import { useTranslation as
|
|
3
|
-
import { getPayrollType as
|
|
4
|
-
import
|
|
2
|
+
import { useTranslation as U } from "react-i18next";
|
|
3
|
+
import { getPayrollType as I, calculateTotalPayroll as L } from "../helpers.js";
|
|
4
|
+
import j from "./PayrollHistoryPresentation.module.scss.js";
|
|
5
5
|
import { Flex as c } from "../../Common/Flex/Flex.js";
|
|
6
6
|
import "classnames";
|
|
7
|
-
import "
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import
|
|
13
|
-
import
|
|
14
|
-
import
|
|
15
|
-
import { PayrollStatusBadges as
|
|
16
|
-
import { DataView as
|
|
17
|
-
const
|
|
7
|
+
import { HamburgerMenu as V } from "../../Common/HamburgerMenu/HamburgerMenu.js";
|
|
8
|
+
import { useComponentContext as Y } from "../../../contexts/ComponentAdapter/useComponentContext.js";
|
|
9
|
+
import { formatNumberAsCurrency as q } from "../../../helpers/formattedStrings.js";
|
|
10
|
+
import { useI18n as Z } from "../../../i18n/I18n.js";
|
|
11
|
+
import { useDateFormatter as $ } from "../../../hooks/useDateFormatter.js";
|
|
12
|
+
import B from "../../../assets/icons/trashcan.svg.js";
|
|
13
|
+
import W from "../../../assets/icons/icon-file-outline.svg.js";
|
|
14
|
+
import _ from "../../../assets/icons/icon-receipt-outline.svg.js";
|
|
15
|
+
import { PayrollStatusBadges as z } from "../PayrollStatusBadges/PayrollStatusBadges.js";
|
|
16
|
+
import { DataView as E } from "../../Common/DataView/DataView.js";
|
|
17
|
+
const de = ({
|
|
18
18
|
payrollHistory: y,
|
|
19
|
-
wireInRequests:
|
|
20
|
-
selectedTimeFilter:
|
|
19
|
+
wireInRequests: g,
|
|
20
|
+
selectedTimeFilter: P,
|
|
21
21
|
onTimeFilterChange: S,
|
|
22
|
-
onViewSummary:
|
|
23
|
-
onViewReceipt:
|
|
24
|
-
onCancelPayroll:
|
|
22
|
+
onViewSummary: w,
|
|
23
|
+
onViewReceipt: b,
|
|
24
|
+
onCancelPayroll: C,
|
|
25
25
|
cancelDialogItem: a,
|
|
26
26
|
onCancelDialogOpen: F,
|
|
27
|
-
onCancelDialogClose:
|
|
28
|
-
isLoading:
|
|
27
|
+
onCancelDialogClose: T,
|
|
28
|
+
isLoading: v = !1
|
|
29
29
|
}) => {
|
|
30
|
-
const { Heading: f, Text: l, Select:
|
|
31
|
-
|
|
32
|
-
const { t } =
|
|
30
|
+
const { Heading: f, Text: l, Select: x, Dialog: k } = Y();
|
|
31
|
+
Z("Payroll.PayrollHistory");
|
|
32
|
+
const { t } = U("Payroll.PayrollHistory"), u = $(), A = [
|
|
33
33
|
{ value: "3months", label: t("timeFilter.options.3months") },
|
|
34
34
|
{ value: "6months", label: t("timeFilter.options.6months") },
|
|
35
35
|
{ value: "year", label: t("timeFilter.options.year") }
|
|
36
|
-
],
|
|
36
|
+
], H = (e) => {
|
|
37
37
|
if (e.payrollStatusMeta?.cancellable === !1)
|
|
38
38
|
return !1;
|
|
39
39
|
if (e.processed && e.payrollDeadline) {
|
|
@@ -52,7 +52,7 @@ const me = ({
|
|
|
52
52
|
n.setDate(1 + (7 - n.getDay()) + 7);
|
|
53
53
|
const i = new Date(o, 10, 1);
|
|
54
54
|
return i.setDate(1 + (7 - i.getDay()) % 7), e >= n && e < i ? -7 : -8;
|
|
55
|
-
},
|
|
55
|
+
}, O = (e) => {
|
|
56
56
|
const o = e.payrollDeadline;
|
|
57
57
|
if (!o) return "";
|
|
58
58
|
const n = new Date(o), i = "America/New_York", s = new Intl.DateTimeFormat("en-US", {
|
|
@@ -67,32 +67,32 @@ const me = ({
|
|
|
67
67
|
timeZone: i
|
|
68
68
|
}), D = s.format(n);
|
|
69
69
|
return `${m.format(n)} on ${D}`;
|
|
70
|
-
},
|
|
70
|
+
}, R = (e) => {
|
|
71
71
|
F(e);
|
|
72
|
-
},
|
|
73
|
-
a &&
|
|
74
|
-
},
|
|
72
|
+
}, M = () => {
|
|
73
|
+
a && C(a);
|
|
74
|
+
}, N = (e) => {
|
|
75
75
|
const o = e.payrollUuid || e.uuid, n = [
|
|
76
76
|
{
|
|
77
77
|
label: t("menu.viewSummary"),
|
|
78
|
-
icon: /* @__PURE__ */ r(
|
|
78
|
+
icon: /* @__PURE__ */ r(W, { "aria-hidden": !0 }),
|
|
79
79
|
onClick: () => {
|
|
80
|
-
|
|
80
|
+
w(o);
|
|
81
81
|
}
|
|
82
82
|
},
|
|
83
83
|
{
|
|
84
84
|
label: t("menu.viewReceipt"),
|
|
85
|
-
icon: /* @__PURE__ */ r(
|
|
85
|
+
icon: /* @__PURE__ */ r(_, { "aria-hidden": !0 }),
|
|
86
86
|
onClick: () => {
|
|
87
|
-
|
|
87
|
+
b(o);
|
|
88
88
|
}
|
|
89
89
|
}
|
|
90
90
|
];
|
|
91
|
-
return
|
|
91
|
+
return H(e) && n.push({
|
|
92
92
|
label: t("menu.cancelPayroll"),
|
|
93
|
-
icon: /* @__PURE__ */ r(
|
|
93
|
+
icon: /* @__PURE__ */ r(B, { "aria-hidden": !0 }),
|
|
94
94
|
onClick: () => {
|
|
95
|
-
|
|
95
|
+
R(e);
|
|
96
96
|
},
|
|
97
97
|
"data-destructive": "true"
|
|
98
98
|
}), n;
|
|
@@ -110,14 +110,14 @@ const me = ({
|
|
|
110
110
|
gap: { base: 12, medium: 24 },
|
|
111
111
|
children: [
|
|
112
112
|
/* @__PURE__ */ r(c, { children: /* @__PURE__ */ r(f, { as: "h2", children: t("title") }) }),
|
|
113
|
-
/* @__PURE__ */ r("div", { className:
|
|
114
|
-
|
|
113
|
+
/* @__PURE__ */ r("div", { className: j.timeFilterContainer, children: /* @__PURE__ */ r(
|
|
114
|
+
x,
|
|
115
115
|
{
|
|
116
|
-
value:
|
|
116
|
+
value: P,
|
|
117
117
|
onChange: (e) => {
|
|
118
118
|
S(e);
|
|
119
119
|
},
|
|
120
|
-
options:
|
|
120
|
+
options: A,
|
|
121
121
|
label: t("timeFilter.placeholder"),
|
|
122
122
|
shouldVisuallyHideLabel: !0,
|
|
123
123
|
isRequired: !0
|
|
@@ -127,7 +127,7 @@ const me = ({
|
|
|
127
127
|
}
|
|
128
128
|
),
|
|
129
129
|
/* @__PURE__ */ r(
|
|
130
|
-
|
|
130
|
+
E,
|
|
131
131
|
{
|
|
132
132
|
label: t("dataView.label"),
|
|
133
133
|
columns: [
|
|
@@ -140,7 +140,7 @@ const me = ({
|
|
|
140
140
|
},
|
|
141
141
|
{
|
|
142
142
|
title: t("columns.type"),
|
|
143
|
-
render: (e) => /* @__PURE__ */ r(l, { children:
|
|
143
|
+
render: (e) => /* @__PURE__ */ r(l, { children: I(e) })
|
|
144
144
|
},
|
|
145
145
|
{
|
|
146
146
|
title: t("columns.payDate"),
|
|
@@ -149,29 +149,29 @@ const me = ({
|
|
|
149
149
|
{
|
|
150
150
|
title: t("columns.status"),
|
|
151
151
|
render: (e) => {
|
|
152
|
-
const o =
|
|
152
|
+
const o = g.find(
|
|
153
153
|
(n) => n.paymentUuid === e.payrollUuid
|
|
154
154
|
);
|
|
155
|
-
return /* @__PURE__ */ r(
|
|
155
|
+
return /* @__PURE__ */ r(z, { payroll: e, wireInRequest: o });
|
|
156
156
|
}
|
|
157
157
|
},
|
|
158
158
|
{
|
|
159
159
|
title: t("columns.totalPayroll"),
|
|
160
|
-
render: (e) => /* @__PURE__ */ r(l, { weight: "semibold", children:
|
|
160
|
+
render: (e) => /* @__PURE__ */ r(l, { weight: "semibold", children: q(L(e)) })
|
|
161
161
|
}
|
|
162
162
|
],
|
|
163
163
|
data: y,
|
|
164
|
-
itemMenu: (e) => /* @__PURE__ */ r(
|
|
164
|
+
itemMenu: (e) => /* @__PURE__ */ r(V, { items: N(e) })
|
|
165
165
|
}
|
|
166
166
|
),
|
|
167
167
|
/* @__PURE__ */ r(
|
|
168
|
-
|
|
168
|
+
k,
|
|
169
169
|
{
|
|
170
170
|
isOpen: !!a,
|
|
171
|
-
onClose:
|
|
172
|
-
onPrimaryActionClick:
|
|
171
|
+
onClose: T,
|
|
172
|
+
onPrimaryActionClick: M,
|
|
173
173
|
isDestructive: !0,
|
|
174
|
-
isPrimaryActionLoading:
|
|
174
|
+
isPrimaryActionLoading: v,
|
|
175
175
|
primaryActionLabel: t("cancelDialog.primaryAction"),
|
|
176
176
|
closeActionLabel: t("cancelDialog.secondaryAction"),
|
|
177
177
|
title: a ? t("cancelDialog.title", {
|
|
@@ -183,7 +183,7 @@ const me = ({
|
|
|
183
183
|
children: a && /* @__PURE__ */ d(c, { flexDirection: "column", gap: 16, children: [
|
|
184
184
|
/* @__PURE__ */ r(l, { children: t("cancelDialog.body") }),
|
|
185
185
|
a.payrollDeadline && /* @__PURE__ */ r(l, { children: t("cancelDialog.deadline", {
|
|
186
|
-
deadline:
|
|
186
|
+
deadline: O(a)
|
|
187
187
|
}) })
|
|
188
188
|
] })
|
|
189
189
|
}
|
|
@@ -191,6 +191,6 @@ const me = ({
|
|
|
191
191
|
] });
|
|
192
192
|
};
|
|
193
193
|
export {
|
|
194
|
-
|
|
194
|
+
de as PayrollHistoryPresentation
|
|
195
195
|
};
|
|
196
196
|
//# sourceMappingURL=PayrollHistoryPresentation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PayrollHistoryPresentation.js","sources":["../../../../src/components/Payroll/PayrollHistory/PayrollHistoryPresentation.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport type { Payroll } from '@gusto/embedded-api/models/components/payroll'\nimport type { WireInRequest } from '@gusto/embedded-api/models/components/wireinrequest'\nimport { PayrollStatusBadges } from '../PayrollStatusBadges'\nimport { getPayrollType, calculateTotalPayroll } from '../helpers'\nimport type { TimeFilterOption } from './PayrollHistory'\nimport styles from './PayrollHistoryPresentation.module.scss'\nimport type { MenuItem } from '@/components/Common/UI/Menu/MenuTypes'\nimport { DataView, Flex } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { HamburgerMenu } from '@/components/Common/HamburgerMenu'\nimport { formatNumberAsCurrency } from '@/helpers/formattedStrings'\nimport { useI18n } from '@/i18n'\nimport { useDateFormatter } from '@/hooks/useDateFormatter'\nimport ListIcon from '@/assets/icons/list.svg?react'\nimport TrashcanIcon from '@/assets/icons/trashcan.svg?react'\n\ninterface PayrollHistoryPresentationProps {\n payrollHistory: Payroll[]\n wireInRequests: WireInRequest[]\n selectedTimeFilter: TimeFilterOption\n onTimeFilterChange: (value: TimeFilterOption) => void\n onViewSummary: (payrollId: string) => void\n onViewReceipt: (payrollId: string) => void\n onCancelPayroll: (item: Payroll) => void\n cancelDialogItem: Payroll | null\n onCancelDialogOpen: (item: Payroll) => void\n onCancelDialogClose: () => void\n isLoading?: boolean\n}\n\nexport const PayrollHistoryPresentation = ({\n payrollHistory,\n wireInRequests,\n selectedTimeFilter,\n onTimeFilterChange,\n onViewSummary,\n onViewReceipt,\n onCancelPayroll,\n cancelDialogItem,\n onCancelDialogOpen,\n onCancelDialogClose,\n isLoading = false,\n}: PayrollHistoryPresentationProps) => {\n const { Heading, Text, Select, Dialog } = useComponentContext()\n useI18n('Payroll.PayrollHistory')\n const { t } = useTranslation('Payroll.PayrollHistory')\n const dateFormatter = useDateFormatter()\n\n const timeFilterOptions = [\n { value: '3months', label: t('timeFilter.options.3months') },\n { value: '6months', label: t('timeFilter.options.6months') },\n { value: 'year', label: t('timeFilter.options.year') },\n ]\n\n const canCancelPayroll = (item: Payroll) => {\n if (item.payrollStatusMeta?.cancellable === false) {\n return false\n }\n\n if (item.processed && item.payrollDeadline) {\n const now = new Date()\n const deadline = new Date(item.payrollDeadline)\n\n const ptOffset = getPacificTimeOffset(now)\n const nowInPT = new Date(now.getTime() + ptOffset * 60 * 60 * 1000)\n const deadlineInPT = new Date(\n deadline.getTime() + getPacificTimeOffset(deadline) * 60 * 60 * 1000,\n )\n\n const isSameDay = nowInPT.toDateString() === deadlineInPT.toDateString()\n if (isSameDay) {\n const cutoffTime = new Date(deadlineInPT)\n cutoffTime.setHours(15, 30, 0, 0)\n\n if (nowInPT > cutoffTime) {\n return false\n }\n }\n }\n\n return true\n }\n\n const getPacificTimeOffset = (date: Date): number => {\n const year = date.getFullYear()\n\n const secondSundayMarch = new Date(year, 2, 1)\n secondSundayMarch.setDate(1 + (7 - secondSundayMarch.getDay()) + 7)\n\n const firstSundayNovember = new Date(year, 10, 1)\n firstSundayNovember.setDate(1 + ((7 - firstSundayNovember.getDay()) % 7))\n\n const isDST = date >= secondSundayMarch && date < firstSundayNovember\n return isDST ? -7 : -8\n }\n\n const formatDeadlineForDialog = (item: Payroll): string => {\n const deadline = item.payrollDeadline\n if (!deadline) return ''\n\n const deadlineDate = new Date(deadline)\n const timeZone = 'America/New_York'\n\n const formatter = new Intl.DateTimeFormat('en-US', {\n weekday: 'short',\n month: 'short',\n day: 'numeric',\n timeZone,\n })\n\n const timeFormatter = new Intl.DateTimeFormat('en-US', {\n hour: 'numeric',\n minute: '2-digit',\n timeZoneName: 'short',\n timeZone,\n })\n\n const dateStr = formatter.format(deadlineDate)\n const timeStr = timeFormatter.format(deadlineDate)\n\n return `${timeStr} on ${dateStr}`\n }\n\n const handleCancelClick = (item: Payroll) => {\n onCancelDialogOpen(item)\n }\n\n const handleConfirmCancel = () => {\n if (cancelDialogItem) {\n onCancelPayroll(cancelDialogItem)\n }\n }\n\n const getMenuItems = (item: Payroll): MenuItem[] => {\n const payrollId = item.payrollUuid || item.uuid!\n const items: MenuItem[] = [\n {\n label: t('menu.viewSummary'),\n icon: <ListIcon aria-hidden />,\n onClick: () => {\n onViewSummary(payrollId)\n },\n },\n {\n label: t('menu.viewReceipt'),\n icon: <ListIcon aria-hidden />,\n onClick: () => {\n onViewReceipt(payrollId)\n },\n },\n ]\n\n if (canCancelPayroll(item)) {\n items.push({\n label: t('menu.cancelPayroll'),\n icon: <TrashcanIcon aria-hidden />,\n onClick: () => {\n handleCancelClick(item)\n },\n 'data-destructive': 'true',\n })\n }\n\n return items\n }\n\n if (payrollHistory.length === 0) {\n return (\n <Flex flexDirection=\"column\" alignItems=\"center\" gap={24}>\n <Heading as=\"h3\">{t('emptyState.title')}</Heading>\n <Text>{t('emptyState.description')}</Text>\n </Flex>\n )\n }\n\n return (\n <Flex flexDirection=\"column\" gap={16}>\n <Flex\n flexDirection={{ base: 'column', medium: 'row' }}\n justifyContent=\"space-between\"\n alignItems=\"flex-start\"\n gap={{ base: 12, medium: 24 }}\n >\n <Flex>\n <Heading as=\"h2\">{t('title')}</Heading>\n </Flex>\n <div className={styles.timeFilterContainer}>\n <Select\n value={selectedTimeFilter}\n onChange={(value: string) => {\n onTimeFilterChange(value as TimeFilterOption)\n }}\n options={timeFilterOptions}\n label={t('timeFilter.placeholder')}\n shouldVisuallyHideLabel\n isRequired\n />\n </div>\n </Flex>\n\n <DataView\n label={t('dataView.label')}\n columns={[\n {\n title: t('columns.payPeriod'),\n render: (item: Payroll) => (\n <Text>\n {dateFormatter.formatPayPeriodRange(\n item.payPeriod?.startDate,\n item.payPeriod?.endDate,\n )}\n </Text>\n ),\n },\n {\n title: t('columns.type'),\n render: (item: Payroll) => <Text>{getPayrollType(item)}</Text>,\n },\n {\n title: t('columns.payDate'),\n render: (item: Payroll) => (\n <Text>{dateFormatter.formatShortWithYear(item.checkDate)}</Text>\n ),\n },\n {\n title: t('columns.status'),\n render: (item: Payroll) => {\n const wireInRequest = wireInRequests.find(\n wire => wire.paymentUuid === item.payrollUuid,\n )\n return <PayrollStatusBadges payroll={item} wireInRequest={wireInRequest} />\n },\n },\n {\n title: t('columns.totalPayroll'),\n render: (item: Payroll) => (\n <Text weight=\"semibold\">{formatNumberAsCurrency(calculateTotalPayroll(item))}</Text>\n ),\n },\n ]}\n data={payrollHistory}\n itemMenu={(item: Payroll) => <HamburgerMenu items={getMenuItems(item)} />}\n />\n\n <Dialog\n isOpen={!!cancelDialogItem}\n onClose={onCancelDialogClose}\n onPrimaryActionClick={handleConfirmCancel}\n isDestructive\n isPrimaryActionLoading={isLoading}\n primaryActionLabel={t('cancelDialog.primaryAction')}\n closeActionLabel={t('cancelDialog.secondaryAction')}\n title={\n cancelDialogItem\n ? t('cancelDialog.title', {\n payPeriod: dateFormatter.formatPayPeriodRange(\n cancelDialogItem.payPeriod?.startDate,\n cancelDialogItem.payPeriod?.endDate,\n ),\n })\n : ''\n }\n >\n {cancelDialogItem && (\n <Flex flexDirection=\"column\" gap={16}>\n <Text>{t('cancelDialog.body')}</Text>\n {cancelDialogItem.payrollDeadline && (\n <Text>\n {t('cancelDialog.deadline', {\n deadline: formatDeadlineForDialog(cancelDialogItem),\n })}\n </Text>\n )}\n </Flex>\n )}\n </Dialog>\n </Flex>\n )\n}\n"],"names":["PayrollHistoryPresentation","payrollHistory","wireInRequests","selectedTimeFilter","onTimeFilterChange","onViewSummary","onViewReceipt","onCancelPayroll","cancelDialogItem","onCancelDialogOpen","onCancelDialogClose","isLoading","Heading","Text","Select","Dialog","useComponentContext","useI18n","useTranslation","dateFormatter","useDateFormatter","timeFilterOptions","canCancelPayroll","item","now","deadline","ptOffset","getPacificTimeOffset","nowInPT","deadlineInPT","cutoffTime","date","year","secondSundayMarch","firstSundayNovember","formatDeadlineForDialog","deadlineDate","timeZone","formatter","timeFormatter","dateStr","handleCancelClick","handleConfirmCancel","getMenuItems","payrollId","items","jsx","ListIcon","TrashcanIcon","Flex","jsxs","styles","value","DataView","getPayrollType","wireInRequest","wire","PayrollStatusBadges","formatNumberAsCurrency","calculateTotalPayroll","HamburgerMenu"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PayrollHistoryPresentation.js","sources":["../../../../src/components/Payroll/PayrollHistory/PayrollHistoryPresentation.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport type { Payroll } from '@gusto/embedded-api/models/components/payroll'\nimport type { WireInRequest } from '@gusto/embedded-api/models/components/wireinrequest'\nimport { PayrollStatusBadges } from '../PayrollStatusBadges'\nimport { getPayrollType, calculateTotalPayroll } from '../helpers'\nimport type { TimeFilterOption } from './PayrollHistory'\nimport styles from './PayrollHistoryPresentation.module.scss'\nimport type { MenuItem } from '@/components/Common/UI/Menu/MenuTypes'\nimport { DataView, Flex } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { HamburgerMenu } from '@/components/Common/HamburgerMenu'\nimport { formatNumberAsCurrency } from '@/helpers/formattedStrings'\nimport { useI18n } from '@/i18n'\nimport { useDateFormatter } from '@/hooks/useDateFormatter'\nimport TrashcanIcon from '@/assets/icons/trashcan.svg?react'\nimport FileIcon from '@/assets/icons/icon-file-outline.svg?react'\nimport ReceiptIcon from '@/assets/icons/icon-receipt-outline.svg?react'\n\ninterface PayrollHistoryPresentationProps {\n payrollHistory: Payroll[]\n wireInRequests: WireInRequest[]\n selectedTimeFilter: TimeFilterOption\n onTimeFilterChange: (value: TimeFilterOption) => void\n onViewSummary: (payrollId: string) => void\n onViewReceipt: (payrollId: string) => void\n onCancelPayroll: (item: Payroll) => void\n cancelDialogItem: Payroll | null\n onCancelDialogOpen: (item: Payroll) => void\n onCancelDialogClose: () => void\n isLoading?: boolean\n}\n\nexport const PayrollHistoryPresentation = ({\n payrollHistory,\n wireInRequests,\n selectedTimeFilter,\n onTimeFilterChange,\n onViewSummary,\n onViewReceipt,\n onCancelPayroll,\n cancelDialogItem,\n onCancelDialogOpen,\n onCancelDialogClose,\n isLoading = false,\n}: PayrollHistoryPresentationProps) => {\n const { Heading, Text, Select, Dialog } = useComponentContext()\n useI18n('Payroll.PayrollHistory')\n const { t } = useTranslation('Payroll.PayrollHistory')\n const dateFormatter = useDateFormatter()\n\n const timeFilterOptions = [\n { value: '3months', label: t('timeFilter.options.3months') },\n { value: '6months', label: t('timeFilter.options.6months') },\n { value: 'year', label: t('timeFilter.options.year') },\n ]\n\n const canCancelPayroll = (item: Payroll) => {\n if (item.payrollStatusMeta?.cancellable === false) {\n return false\n }\n\n if (item.processed && item.payrollDeadline) {\n const now = new Date()\n const deadline = new Date(item.payrollDeadline)\n\n const ptOffset = getPacificTimeOffset(now)\n const nowInPT = new Date(now.getTime() + ptOffset * 60 * 60 * 1000)\n const deadlineInPT = new Date(\n deadline.getTime() + getPacificTimeOffset(deadline) * 60 * 60 * 1000,\n )\n\n const isSameDay = nowInPT.toDateString() === deadlineInPT.toDateString()\n if (isSameDay) {\n const cutoffTime = new Date(deadlineInPT)\n cutoffTime.setHours(15, 30, 0, 0)\n\n if (nowInPT > cutoffTime) {\n return false\n }\n }\n }\n\n return true\n }\n\n const getPacificTimeOffset = (date: Date): number => {\n const year = date.getFullYear()\n\n const secondSundayMarch = new Date(year, 2, 1)\n secondSundayMarch.setDate(1 + (7 - secondSundayMarch.getDay()) + 7)\n\n const firstSundayNovember = new Date(year, 10, 1)\n firstSundayNovember.setDate(1 + ((7 - firstSundayNovember.getDay()) % 7))\n\n const isDST = date >= secondSundayMarch && date < firstSundayNovember\n return isDST ? -7 : -8\n }\n\n const formatDeadlineForDialog = (item: Payroll): string => {\n const deadline = item.payrollDeadline\n if (!deadline) return ''\n\n const deadlineDate = new Date(deadline)\n const timeZone = 'America/New_York'\n\n const formatter = new Intl.DateTimeFormat('en-US', {\n weekday: 'short',\n month: 'short',\n day: 'numeric',\n timeZone,\n })\n\n const timeFormatter = new Intl.DateTimeFormat('en-US', {\n hour: 'numeric',\n minute: '2-digit',\n timeZoneName: 'short',\n timeZone,\n })\n\n const dateStr = formatter.format(deadlineDate)\n const timeStr = timeFormatter.format(deadlineDate)\n\n return `${timeStr} on ${dateStr}`\n }\n\n const handleCancelClick = (item: Payroll) => {\n onCancelDialogOpen(item)\n }\n\n const handleConfirmCancel = () => {\n if (cancelDialogItem) {\n onCancelPayroll(cancelDialogItem)\n }\n }\n\n const getMenuItems = (item: Payroll): MenuItem[] => {\n const payrollId = item.payrollUuid || item.uuid!\n const items: MenuItem[] = [\n {\n label: t('menu.viewSummary'),\n icon: <FileIcon aria-hidden />,\n onClick: () => {\n onViewSummary(payrollId)\n },\n },\n {\n label: t('menu.viewReceipt'),\n icon: <ReceiptIcon aria-hidden />,\n onClick: () => {\n onViewReceipt(payrollId)\n },\n },\n ]\n\n if (canCancelPayroll(item)) {\n items.push({\n label: t('menu.cancelPayroll'),\n icon: <TrashcanIcon aria-hidden />,\n onClick: () => {\n handleCancelClick(item)\n },\n 'data-destructive': 'true',\n })\n }\n\n return items\n }\n\n if (payrollHistory.length === 0) {\n return (\n <Flex flexDirection=\"column\" alignItems=\"center\" gap={24}>\n <Heading as=\"h3\">{t('emptyState.title')}</Heading>\n <Text>{t('emptyState.description')}</Text>\n </Flex>\n )\n }\n\n return (\n <Flex flexDirection=\"column\" gap={16}>\n <Flex\n flexDirection={{ base: 'column', medium: 'row' }}\n justifyContent=\"space-between\"\n alignItems=\"flex-start\"\n gap={{ base: 12, medium: 24 }}\n >\n <Flex>\n <Heading as=\"h2\">{t('title')}</Heading>\n </Flex>\n <div className={styles.timeFilterContainer}>\n <Select\n value={selectedTimeFilter}\n onChange={(value: string) => {\n onTimeFilterChange(value as TimeFilterOption)\n }}\n options={timeFilterOptions}\n label={t('timeFilter.placeholder')}\n shouldVisuallyHideLabel\n isRequired\n />\n </div>\n </Flex>\n\n <DataView\n label={t('dataView.label')}\n columns={[\n {\n title: t('columns.payPeriod'),\n render: (item: Payroll) => (\n <Text>\n {dateFormatter.formatPayPeriodRange(\n item.payPeriod?.startDate,\n item.payPeriod?.endDate,\n )}\n </Text>\n ),\n },\n {\n title: t('columns.type'),\n render: (item: Payroll) => <Text>{getPayrollType(item)}</Text>,\n },\n {\n title: t('columns.payDate'),\n render: (item: Payroll) => (\n <Text>{dateFormatter.formatShortWithYear(item.checkDate)}</Text>\n ),\n },\n {\n title: t('columns.status'),\n render: (item: Payroll) => {\n const wireInRequest = wireInRequests.find(\n wire => wire.paymentUuid === item.payrollUuid,\n )\n return <PayrollStatusBadges payroll={item} wireInRequest={wireInRequest} />\n },\n },\n {\n title: t('columns.totalPayroll'),\n render: (item: Payroll) => (\n <Text weight=\"semibold\">{formatNumberAsCurrency(calculateTotalPayroll(item))}</Text>\n ),\n },\n ]}\n data={payrollHistory}\n itemMenu={(item: Payroll) => <HamburgerMenu items={getMenuItems(item)} />}\n />\n\n <Dialog\n isOpen={!!cancelDialogItem}\n onClose={onCancelDialogClose}\n onPrimaryActionClick={handleConfirmCancel}\n isDestructive\n isPrimaryActionLoading={isLoading}\n primaryActionLabel={t('cancelDialog.primaryAction')}\n closeActionLabel={t('cancelDialog.secondaryAction')}\n title={\n cancelDialogItem\n ? t('cancelDialog.title', {\n payPeriod: dateFormatter.formatPayPeriodRange(\n cancelDialogItem.payPeriod?.startDate,\n cancelDialogItem.payPeriod?.endDate,\n ),\n })\n : ''\n }\n >\n {cancelDialogItem && (\n <Flex flexDirection=\"column\" gap={16}>\n <Text>{t('cancelDialog.body')}</Text>\n {cancelDialogItem.payrollDeadline && (\n <Text>\n {t('cancelDialog.deadline', {\n deadline: formatDeadlineForDialog(cancelDialogItem),\n })}\n </Text>\n )}\n </Flex>\n )}\n </Dialog>\n </Flex>\n )\n}\n"],"names":["PayrollHistoryPresentation","payrollHistory","wireInRequests","selectedTimeFilter","onTimeFilterChange","onViewSummary","onViewReceipt","onCancelPayroll","cancelDialogItem","onCancelDialogOpen","onCancelDialogClose","isLoading","Heading","Text","Select","Dialog","useComponentContext","useI18n","useTranslation","dateFormatter","useDateFormatter","timeFilterOptions","canCancelPayroll","item","now","deadline","ptOffset","getPacificTimeOffset","nowInPT","deadlineInPT","cutoffTime","date","year","secondSundayMarch","firstSundayNovember","formatDeadlineForDialog","deadlineDate","timeZone","formatter","timeFormatter","dateStr","handleCancelClick","handleConfirmCancel","getMenuItems","payrollId","items","jsx","FileIcon","ReceiptIcon","TrashcanIcon","Flex","jsxs","styles","value","DataView","getPayrollType","wireInRequest","wire","PayrollStatusBadges","formatNumberAsCurrency","calculateTotalPayroll","HamburgerMenu"],"mappings":"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"}
|