@gusto/embedded-react-sdk 0.57.2 → 0.58.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 +108 -0
- package/dist/components/Common/DataView/DataCards/DataCards.js +98 -66
- package/dist/components/Common/DataView/DataCards/DataCards.js.map +1 -1
- package/dist/components/Common/DataView/DataCards/DataCards.module.scss.js +11 -9
- package/dist/components/Common/DataView/DataCards/DataCards.module.scss.js.map +1 -1
- package/dist/components/Common/DataView/DataTable/DataTable.js +86 -75
- package/dist/components/Common/DataView/DataTable/DataTable.js.map +1 -1
- package/dist/components/Common/DataView/DataView.js.map +1 -1
- package/dist/components/Common/DataView/getSortControls.js +22 -0
- package/dist/components/Common/DataView/getSortControls.js.map +1 -0
- package/dist/components/Common/DataView/useDataView.js +30 -24
- package/dist/components/Common/DataView/useDataView.js.map +1 -1
- package/dist/components/Common/DateRangeFilter/DateRangeFilter.js +32 -32
- package/dist/components/Common/DateRangeFilter/DateRangeFilter.js.map +1 -1
- package/dist/components/Common/OnboardingStatusBadge/index.js.map +1 -1
- package/dist/components/Common/UI/Table/Table.js +65 -25
- package/dist/components/Common/UI/Table/Table.js.map +1 -1
- package/dist/components/Common/UI/Table/Table.module.scss.js +8 -4
- package/dist/components/Common/UI/Table/Table.module.scss.js.map +1 -1
- package/dist/components/Common/UI/Table/TableTypes.js.map +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +3 -4
- package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +3 -4
- package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/useAssignSignatory.js +5 -6
- package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountForm/context.js +3 -4
- package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
- package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +3 -4
- package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
- package/dist/components/Company/FederalTaxes/useFederalTaxes.js +5 -6
- package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
- package/dist/components/Company/Industry/Context.js +6 -7
- package/dist/components/Company/Industry/Context.js.map +1 -1
- package/dist/components/Company/Locations/LocationForm/useLocationForm.js +3 -4
- package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
- package/dist/components/Company/Locations/LocationsList/useLocationsList.js +3 -4
- package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
- package/dist/components/Company/OnboardingOverview/context.js +3 -4
- package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
- package/dist/components/Company/PaySchedule/PaySchedule.js +30 -45
- package/dist/components/Company/PaySchedule/PaySchedule.js.map +1 -1
- package/dist/components/Company/PaySchedule/PayScheduleComponents.js +11 -12
- package/dist/components/Company/PaySchedule/PayScheduleComponents.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/AutoPilotDialog/AutoPilotDialog.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/AutoPilotDialog/useAutoPilotDialog.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentCompensationStepPresentation.js +34 -14
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentCompensationStepPresentation.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentDepartmentStepPresentation.js +106 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentDepartmentStepPresentation.js.map +1 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentEmployeeStepPresentation.js +136 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentEmployeeStepPresentation.js.map +1 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentScheduleStepPresentation.js +38 -20
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentScheduleStepPresentation.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentTypeStepPresentation.js +78 -44
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentTypeStepPresentation.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignment.js +45 -37
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignment.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignmentComponents.js +244 -95
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignmentComponents.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/departmentAccess.js +22 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/departmentAccess.js.map +1 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/employeeJob.js +13 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/employeeJob.js.map +1 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/payScheduleAssignmentStateMachine.js +48 -43
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/payScheduleAssignmentStateMachine.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/scheduleLabel.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/useAssignableEmployees.js +57 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/useAssignableEmployees.js.map +1 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleCompensationOverviewPresentation.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/PayScheduleDepartmentOverviewPresentation.js +83 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleDepartmentOverviewPresentation.js.map +1 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleEmployeeOverviewPresentation.js +84 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleEmployeeOverviewPresentation.js.map +1 -0
- package/dist/components/Company/PaySchedule/management/PayScheduleManagementComponents.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/PayScheduleOverview.js +109 -39
- package/dist/components/Company/PaySchedule/management/PayScheduleOverview.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/PayScheduleOverviewPresentation.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/payScheduleManagementStateMachine.js.map +1 -1
- package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/fields.js.map +1 -1
- package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/payScheduleSchema.js.map +1 -1
- package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/usePayScheduleForm.js +78 -83
- package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/usePayScheduleForm.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +3 -4
- package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesList/context.js +3 -4
- package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
- package/dist/components/Company/StateTaxes/TaxRateManagement/context.js +3 -4
- package/dist/components/Company/StateTaxes/TaxRateManagement/context.js.map +1 -1
- package/dist/components/Contractor/Address/shared/useContractorAddressForm/useContractorAddressForm.js +5 -5
- package/dist/components/Contractor/Address/shared/useContractorAddressForm/useContractorAddressForm.js.map +1 -1
- package/dist/components/Contractor/Address/shared/useContractorAddressSummary/useContractorAddressSummary.js +1 -1
- package/dist/components/Contractor/Address/shared/useContractorAddressSummary/useContractorAddressSummary.js.map +1 -1
- package/dist/components/Contractor/Compensation/management/CompensationEditForm.js +45 -54
- package/dist/components/Contractor/Compensation/management/CompensationEditForm.js.map +1 -1
- package/dist/components/Contractor/Compensation/shared/useContractorCompensationSummary/useContractorCompensationSummary.js +4 -4
- package/dist/components/Contractor/Compensation/shared/useContractorCompensationSummary/useContractorCompensationSummary.js.map +1 -1
- package/dist/components/Contractor/Compensation/shared/useContractorPayForm/contractorPaySchema.js +17 -22
- package/dist/components/Contractor/Compensation/shared/useContractorPayForm/contractorPaySchema.js.map +1 -1
- package/dist/components/Contractor/Compensation/shared/useContractorPayForm/useContractorPayForm.js +3 -3
- package/dist/components/Contractor/Compensation/shared/useContractorPayForm/useContractorPayForm.js.map +1 -1
- package/dist/components/Contractor/ContractorList/management/ManagementContractorList.js +1 -0
- package/dist/components/Contractor/ContractorList/management/ManagementContractorList.js.map +1 -1
- package/dist/components/Contractor/ContractorList/management/ManagementContractorListView.js +122 -113
- package/dist/components/Contractor/ContractorList/management/ManagementContractorListView.js.map +1 -1
- package/dist/components/Contractor/ContractorList/shared/useContractorList.js +63 -54
- package/dist/components/Contractor/ContractorList/shared/useContractorList.js.map +1 -1
- package/dist/components/Contractor/Dashboard/Dashboard.js +20 -20
- package/dist/components/Contractor/Dashboard/Dashboard.js.map +1 -1
- package/dist/components/Contractor/Dismissal/useDismissal/useDismissal.js +10 -10
- package/dist/components/Contractor/Dismissal/useDismissal/useDismissal.js.map +1 -1
- package/dist/components/Contractor/Landing/Landing.js +43 -39
- package/dist/components/Contractor/Landing/Landing.js.map +1 -1
- package/dist/components/Contractor/NewHireReport/NewHireReport.js +3 -3
- package/dist/components/Contractor/NewHireReport/NewHireReport.js.map +1 -1
- package/dist/components/Contractor/PaymentMethod/onboarding/PaymentMethod.js +39 -48
- package/dist/components/Contractor/PaymentMethod/onboarding/PaymentMethod.js.map +1 -1
- package/dist/components/Contractor/Payments/CreateHistoricalPayment/CreateHistoricalPayment.js +1 -1
- package/dist/components/Contractor/Payments/CreateHistoricalPayment/CreateHistoricalPayment.js.map +1 -1
- package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js +10 -10
- package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js.map +1 -1
- package/dist/components/Contractor/Payments/HistoricalPaymentSummary/HistoricalPaymentSummary.js +4 -4
- package/dist/components/Contractor/Payments/HistoricalPaymentSummary/HistoricalPaymentSummary.js.map +1 -1
- package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistory.js +8 -8
- package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistory.js.map +1 -1
- package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatement.js +5 -5
- package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatement.js.map +1 -1
- package/dist/components/Contractor/Payments/PaymentSummary/PaymentSummary.js +3 -3
- package/dist/components/Contractor/Payments/PaymentSummary/PaymentSummary.js.map +1 -1
- package/dist/components/Contractor/Profile/onboarding/ContractorProfile.js +76 -69
- package/dist/components/Contractor/Profile/onboarding/ContractorProfile.js.map +1 -1
- package/dist/components/Contractor/Profile/onboarding/SelfOnboardingContractorProfile.js +1 -1
- package/dist/components/Contractor/Profile/onboarding/SelfOnboardingContractorProfile.js.map +1 -1
- package/dist/components/Contractor/Profile/shared/useContractorDetailsForm/contractorDetailsSchema.js +27 -29
- package/dist/components/Contractor/Profile/shared/useContractorDetailsForm/contractorDetailsSchema.js.map +1 -1
- package/dist/components/Contractor/Profile/shared/useContractorDetailsForm/useContractorDetailsForm.js +15 -13
- package/dist/components/Contractor/Profile/shared/useContractorDetailsForm/useContractorDetailsForm.js.map +1 -1
- package/dist/components/Contractor/Profile/shared/useContractorProfileSummary/useContractorProfileSummary.js +1 -1
- package/dist/components/Contractor/Profile/shared/useContractorProfileSummary/useContractorProfileSummary.js.map +1 -1
- package/dist/components/Contractor/SelfOnboardingFlow/SelfOnboardingComponents.js +2 -9
- package/dist/components/Contractor/SelfOnboardingFlow/SelfOnboardingComponents.js.map +1 -1
- package/dist/components/Contractor/Submit/Submit.js +18 -18
- package/dist/components/Contractor/Submit/Submit.js.map +1 -1
- package/dist/components/Contractor/shared/SelectContractors/useSelectContractors.js +6 -6
- package/dist/components/Contractor/shared/SelectContractors/useSelectContractors.js.map +1 -1
- package/dist/components/Contractor/shared/hourlyRate.js +14 -0
- package/dist/components/Contractor/shared/hourlyRate.js.map +1 -0
- package/dist/components/Employee/Compensation/management/CompensationCard/CompensationCard.js +63 -63
- package/dist/components/Employee/Compensation/management/CompensationCard/CompensationCard.js.map +1 -1
- package/dist/components/Employee/Compensation/shared/useCompensationForm/useCompensationForm.js +25 -25
- package/dist/components/Employee/Compensation/shared/useCompensationForm/useCompensationForm.js.map +1 -1
- package/dist/components/Employee/Compensation/shared/useCompensationManagement/useCompensationManagement.js +15 -15
- package/dist/components/Employee/Compensation/shared/useCompensationManagement/useCompensationManagement.js.map +1 -1
- package/dist/components/Employee/Compensation/shared/useJobForm/useJobForm.js +1 -1
- package/dist/components/Employee/Compensation/shared/useJobForm/useJobForm.js.map +1 -1
- package/dist/components/Employee/Dashboard/Dashboard.js +25 -25
- package/dist/components/Employee/Dashboard/Dashboard.js.map +1 -1
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js +3 -4
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentSigner.js +7 -7
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentSigner.js.map +1 -1
- package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocuments.js +1 -1
- package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocuments.js.map +1 -1
- package/dist/components/Employee/HomeAddress/management/useHomeAddressManagement.js +6 -6
- package/dist/components/Employee/HomeAddress/management/useHomeAddressManagement.js.map +1 -1
- package/dist/components/Employee/Landing/Landing.js +37 -33
- package/dist/components/Employee/Landing/Landing.js.map +1 -1
- package/dist/components/Employee/OnboardingSummary/OnboardingSummary.js +27 -27
- package/dist/components/Employee/OnboardingSummary/OnboardingSummary.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/onboarding/ListView.js +65 -74
- package/dist/components/Employee/PaymentMethod/onboarding/ListView.js.map +1 -1
- package/dist/components/Employee/Profile/shared/useEmployeeDetailsForm/useEmployeeDetailsForm.js +6 -6
- package/dist/components/Employee/Profile/shared/useEmployeeDetailsForm/useEmployeeDetailsForm.js.map +1 -1
- package/dist/components/Employee/Profile/shared/useEmployeeProfileSummary/useEmployeeProfileSummary.js +1 -1
- package/dist/components/Employee/Profile/shared/useEmployeeProfileSummary/useEmployeeProfileSummary.js.map +1 -1
- package/dist/components/Employee/SelfOnboardingFlow/SelfOnboardingComponents.js +8 -15
- package/dist/components/Employee/SelfOnboardingFlow/SelfOnboardingComponents.js.map +1 -1
- package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js +11 -11
- package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js.map +1 -1
- package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummary.js +12 -12
- package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummary.js.map +1 -1
- package/dist/components/Employee/WorkAddress/management/useWorkAddressManagement.js +26 -26
- package/dist/components/Employee/WorkAddress/management/useWorkAddressManagement.js.map +1 -1
- package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelection.js +16 -16
- package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelection.js.map +1 -1
- package/dist/components/Payroll/GrossUpModal/GrossUpModal.js +2 -3
- package/dist/components/Payroll/GrossUpModal/GrossUpModal.js.map +1 -1
- package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js +84 -82
- package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js.map +1 -1
- package/dist/components/Payroll/OffCycleTaxWithholdingTable/getDefaultWithholdingPayPeriod.js +8 -0
- package/dist/components/Payroll/OffCycleTaxWithholdingTable/getDefaultWithholdingPayPeriod.js.map +1 -0
- package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js +97 -92
- package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollConfiguration/usePayrollConfigurationData.js +1 -1
- package/dist/components/Payroll/PayrollConfiguration/usePayrollConfigurationData.js.map +1 -1
- package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js +18 -18
- package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js.map +1 -1
- package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js +146 -134
- package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.module.scss.js +14 -12
- package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.module.scss.js.map +1 -1
- package/dist/components/Payroll/PayrollEditEmployee/TimeOffField.js +34 -33
- package/dist/components/Payroll/PayrollEditEmployee/TimeOffField.js.map +1 -1
- package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/fields.js +49 -48
- package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/fields.js.map +1 -1
- package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/usePayrollEditEmployeeForm.js +1 -1
- package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/usePayrollEditEmployeeForm.js.map +1 -1
- package/dist/components/Payroll/PayrollExecutionFlow/PayrollExecutionFlow.js.map +1 -1
- package/dist/components/Payroll/PayrollExecutionFlow/payrollExecutionMachine.js +0 -4
- 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/PayrollFlowComponents.js +51 -38
- package/dist/components/Payroll/PayrollFlow/PayrollFlowComponents.js.map +1 -1
- package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js +121 -102
- package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js.map +1 -1
- package/dist/components/Payroll/PayrollHistory/PayrollHistory.js.map +1 -1
- package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js +6 -6
- package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollLanding/PayrollLanding.js.map +1 -1
- package/dist/components/Payroll/PayrollList/PayrollList.js +79 -74
- package/dist/components/Payroll/PayrollList/PayrollList.js.map +1 -1
- package/dist/components/Payroll/PayrollList/PayrollListPresentation.js +9 -9
- package/dist/components/Payroll/PayrollList/PayrollListPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollOverview/PayrollOverview.js +92 -83
- package/dist/components/Payroll/PayrollOverview/PayrollOverview.js.map +1 -1
- package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.js +23 -27
- package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.js.map +1 -1
- package/dist/components/Payroll/PrintChecks/PrintChecksForm/PrintChecksForm.js +82 -75
- package/dist/components/Payroll/PrintChecks/PrintChecksForm/PrintChecksForm.js.map +1 -1
- package/dist/components/Payroll/RropPayrollEditEmployee/RropPayrollEditEmployee.js +416 -0
- package/dist/components/Payroll/RropPayrollEditEmployee/RropPayrollEditEmployee.js.map +1 -0
- package/dist/components/Payroll/{UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.module.scss.js → RropPayrollEditEmployee/RropPayrollEditEmployee.module.scss.js} +1 -1
- package/dist/components/Payroll/RropPayrollEditEmployee/RropPayrollEditEmployee.module.scss.js.map +1 -0
- package/dist/components/Payroll/TransitionConfiguration/TransitionConfiguration.js +97 -0
- package/dist/components/Payroll/TransitionConfiguration/TransitionConfiguration.js.map +1 -0
- package/dist/components/Payroll/TransitionConfiguration/TransitionConfigurationPresentation.js +106 -0
- package/dist/components/Payroll/TransitionConfiguration/TransitionConfigurationPresentation.js.map +1 -0
- package/dist/components/Payroll/{TransitionCreation/TransitionCreationPresentation.module.scss.js → TransitionConfiguration/TransitionConfigurationPresentation.module.scss.js} +1 -1
- package/dist/components/Payroll/TransitionConfiguration/TransitionConfigurationPresentation.module.scss.js.map +1 -0
- package/dist/components/Payroll/TransitionConfiguration/TransitionConfigurationTypes.js +10 -0
- package/dist/components/Payroll/TransitionConfiguration/TransitionConfigurationTypes.js.map +1 -0
- package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlert.js +86 -64
- package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlert.js.map +1 -1
- package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlertPresentation.js +126 -77
- package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlertPresentation.js.map +1 -1
- package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlertPresentation.module.scss.js +8 -0
- package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlertPresentation.module.scss.js.map +1 -0
- package/dist/components/Payroll/helpers.js +1 -1
- package/dist/components/Payroll/helpers.js.map +1 -1
- package/dist/components/Payroll/index.js +16 -20
- package/dist/components/Payroll/index.js.map +1 -1
- package/dist/components/Payroll/payrollTypes.js +1 -1
- package/dist/components/Payroll/payrollTypes.js.map +1 -1
- package/dist/components/Payroll/usePreparedPayrollData.js +2 -3
- package/dist/components/Payroll/usePreparedPayrollData.js.map +1 -1
- package/dist/components/Payroll/useUnprocessedTransitionPayPeriods.js +11 -14
- package/dist/components/Payroll/useUnprocessedTransitionPayPeriods.js.map +1 -1
- package/dist/contexts/ApiProvider/ApiProvider.js +18 -17
- package/dist/contexts/ApiProvider/ApiProvider.js.map +1 -1
- package/dist/contexts/ApiProvider/payScheduleCustomNameHook.js +31 -0
- package/dist/contexts/ApiProvider/payScheduleCustomNameHook.js.map +1 -0
- package/dist/contexts/ApiProvider/payrollOffCycleReasonEnumHook.js +1 -1
- package/dist/contexts/ApiProvider/payrollOffCycleReasonEnumHook.js.map +1 -1
- package/dist/contexts/FeaturesProvider/FeaturesProvider.js +14 -0
- package/dist/contexts/FeaturesProvider/FeaturesProvider.js.map +1 -0
- package/dist/contexts/FeaturesProvider/useFeature.js +7 -0
- package/dist/contexts/FeaturesProvider/useFeature.js.map +1 -0
- package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js +32 -30
- package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js.map +1 -1
- package/dist/contexts/UnstableFeaturesProvider/useUnstableFeature.js.map +1 -1
- package/dist/i18n/I18n.js +2 -3
- package/dist/i18n/I18n.js.map +1 -1
- package/dist/i18n/en/Company.Management.PaySchedule.json.js +31 -13
- package/dist/i18n/en/Company.Management.PaySchedule.json.js.map +1 -1
- package/dist/i18n/en/Company.Management.PayScheduleAssignment.json.js +20 -12
- package/dist/i18n/en/Company.Management.PayScheduleAssignment.json.js.map +1 -1
- package/dist/i18n/en/Contractor.Profile.json.js +1 -1
- package/dist/i18n/en/Payroll.PayrollEditEmployee.json.js +29 -23
- package/dist/i18n/en/Payroll.PayrollEditEmployee.json.js.map +1 -1
- package/dist/i18n/en/Payroll.PayrollHistory.json.js +1 -1
- package/dist/i18n/en/Payroll.PayrollLanding.json.js +1 -1
- package/dist/i18n/en/Payroll.PayrollList.json.js +5 -5
- package/dist/i18n/en/{Payroll.UNSTABLE_PayrollEditEmployee.json.js → Payroll.RropPayrollEditEmployee.json.js} +42 -38
- package/dist/i18n/en/Payroll.RropPayrollEditEmployee.json.js.map +1 -0
- package/dist/i18n/en/Payroll.TransitionConfiguration.json.js +28 -0
- package/dist/i18n/en/Payroll.TransitionConfiguration.json.js.map +1 -0
- package/dist/i18n/en/Payroll.TransitionPayrollAlert.json.js +16 -12
- package/dist/i18n/en/Payroll.TransitionPayrollAlert.json.js.map +1 -1
- package/dist/i18n/en/common.json.js +1 -1
- package/dist/package.json.js +1 -1
- package/dist/partner-hook-utils/form/composeSubmitHandler.js +55 -48
- package/dist/partner-hook-utils/form/composeSubmitHandler.js.map +1 -1
- package/dist/partner-hook-utils/form/fields/RadioGroupHookField.js +31 -29
- package/dist/partner-hook-utils/form/fields/RadioGroupHookField.js.map +1 -1
- package/dist/shared/constants.js +7 -6
- package/dist/shared/constants.js.map +1 -1
- package/dist/src/components/Common/DataView/DataCards/DataCards.d.ts +3 -1
- package/dist/src/components/Common/DataView/DataTable/DataTable.d.ts +3 -1
- package/dist/src/components/Common/DataView/DataView.d.ts +2 -0
- package/dist/src/components/Common/DataView/getSortControls.d.ts +24 -0
- package/dist/src/components/Common/DataView/useDataView.d.ts +22 -1
- package/dist/src/components/Common/DateRangeFilter/DateRangeFilter.d.ts +2 -2
- package/dist/src/components/Common/OnboardingStatusBadge/index.d.ts +1 -1
- package/dist/src/components/Common/UI/Table/TableTypes.d.ts +71 -2
- package/dist/src/components/Company/PaySchedule/PaySchedule.d.ts +1 -9
- package/dist/src/components/Company/PaySchedule/PayScheduleComponents.d.ts +0 -1
- package/dist/src/components/Company/PaySchedule/management/AutoPilotDialog/AutoPilotDialog.d.ts +1 -1
- package/dist/src/components/Company/PaySchedule/management/AutoPilotDialog/useAutoPilotDialog.d.ts +1 -1
- package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentCompensationStepPresentation.d.ts +10 -3
- package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentDepartmentStepPresentation.d.ts +21 -0
- package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentEmployeeStepPresentation.d.ts +34 -0
- package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentScheduleStepPresentation.d.ts +9 -3
- package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentTypeStepPresentation.d.ts +5 -1
- package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignment.d.ts +10 -10
- package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignmentComponents.d.ts +12 -4
- package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/departmentAccess.d.ts +19 -0
- package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/employeeJob.d.ts +17 -0
- package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/scheduleLabel.d.ts +1 -1
- package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/useAssignableEmployees.d.ts +34 -0
- package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/usePayScheduleAssignment.d.ts +16 -3
- package/dist/src/components/Company/PaySchedule/management/PayScheduleCompensationOverviewPresentation.d.ts +1 -1
- package/dist/src/components/Company/PaySchedule/management/PayScheduleDepartmentOverviewPresentation.d.ts +23 -0
- package/dist/src/components/Company/PaySchedule/management/PayScheduleEmployeeOverviewPresentation.d.ts +25 -0
- package/dist/src/components/Company/PaySchedule/management/PayScheduleManagementComponents.d.ts +1 -1
- package/dist/src/components/Company/PaySchedule/management/PayScheduleOverviewPresentation.d.ts +1 -1
- package/dist/src/components/Company/PaySchedule/shared/usePayScheduleForm/fields.d.ts +1 -1
- package/dist/src/components/Company/PaySchedule/shared/usePayScheduleForm/payScheduleSchema.d.ts +1 -1
- package/dist/src/components/Company/PaySchedule/shared/usePayScheduleForm/usePayScheduleForm.d.ts +4 -15
- package/dist/src/components/Contractor/ContractorList/management/ManagementContractorListView.d.ts +2 -2
- package/dist/src/components/Contractor/ContractorList/shared/index.d.ts +1 -1
- package/dist/src/components/Contractor/ContractorList/shared/useContractorList.d.ts +38 -0
- package/dist/src/components/Contractor/Landing/Landing.d.ts +5 -2
- package/dist/src/components/Contractor/shared/hourlyRate.d.ts +23 -0
- package/dist/src/components/Employee/Landing/Landing.d.ts +5 -2
- package/dist/src/components/Payroll/OffCycleTaxWithholdingTable/getDefaultWithholdingPayPeriod.d.ts +9 -0
- package/dist/src/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollConfiguration/usePayrollConfigurationData.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollEditEmployee/TimeOffField.d.ts +3 -1
- package/dist/src/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/fields.d.ts +2 -0
- package/dist/src/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/usePayrollEditEmployeeForm.d.ts +2 -2
- package/dist/src/components/Payroll/PayrollExecutionFlow/PayrollExecutionFlow.d.ts +8 -6
- package/dist/src/components/Payroll/PayrollExecutionFlow/payrollExecutionMachine.d.ts +0 -8
- package/dist/src/components/Payroll/PayrollFlow/PayrollFlow.d.ts +5 -3
- package/dist/src/components/Payroll/PayrollFlow/PayrollFlowComponents.d.ts +2 -3
- package/dist/src/components/Payroll/PayrollFlow/payrollStateMachine.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollHistory/PayrollHistoryPresentation.d.ts +1 -1
- package/dist/src/components/Payroll/PayrollLanding/PayrollLanding.d.ts +18 -5
- package/dist/src/components/Payroll/PayrollList/PayrollList.d.ts +11 -5
- package/dist/src/components/Payroll/PayrollList/PayrollListPresentation.d.ts +2 -2
- package/dist/src/components/Payroll/PayrollOverview/PayrollOverviewPresentation.d.ts +1 -1
- package/dist/src/components/Payroll/{UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.d.ts → RropPayrollEditEmployee/RropPayrollEditEmployee.d.ts} +9 -5
- package/dist/src/components/Payroll/TransitionConfiguration/TransitionConfiguration.d.ts +55 -0
- package/dist/src/components/Payroll/TransitionConfiguration/TransitionConfigurationPresentation.d.ts +9 -0
- package/dist/src/components/Payroll/TransitionConfiguration/TransitionConfigurationTypes.d.ts +52 -0
- package/dist/src/components/Payroll/TransitionConfiguration/index.d.ts +2 -0
- package/dist/src/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlertPresentation.d.ts +5 -2
- package/dist/src/components/Payroll/helpers.d.ts +2 -2
- package/dist/src/components/Payroll/index.d.ts +2 -6
- package/dist/src/components/Payroll/usePreparedPayrollData.d.ts +2 -2
- package/dist/src/contexts/ApiProvider/payScheduleCustomNameHook.d.ts +14 -0
- package/dist/src/contexts/ApiProvider/payScheduleCustomNameHook.test.d.ts +1 -0
- package/dist/src/contexts/ComponentAdapter/componentAdapterTypes.d.ts +1 -1
- package/dist/src/contexts/FeaturesProvider/FeaturesProvider.d.ts +21 -0
- package/dist/src/contexts/FeaturesProvider/useFeature.d.ts +53 -0
- package/dist/src/contexts/GustoProvider/GustoProviderCustomUIAdapter.d.ts +3 -0
- package/dist/src/contexts/UnstableFeaturesProvider/useUnstableFeature.d.ts +38 -10
- package/dist/src/contexts/index.d.ts +1 -0
- package/dist/src/i18n/en/common.json.d.ts +5 -1
- package/dist/src/i18n/types.d.ts +195 -70
- package/dist/src/models/external.d.ts +63 -48
- package/dist/src/partner-hook-utils/form/fields/RadioGroupHookField.d.ts +9 -7
- package/dist/src/shared/constants.d.ts +5 -3
- package/dist/src/test-utils/renderWithProviders.d.ts +2 -0
- package/dist/style.css +1 -1
- package/docs/guides/endpoint-inventory.json +57 -40
- package/package.json +23 -22
- package/dist/components/Payroll/PayrollFlow/TransitionFlowContextual.js +0 -29
- package/dist/components/Payroll/PayrollFlow/TransitionFlowContextual.js.map +0 -1
- package/dist/components/Payroll/Transition/TransitionFlow.js +0 -60
- package/dist/components/Payroll/Transition/TransitionFlow.js.map +0 -1
- package/dist/components/Payroll/Transition/TransitionFlowComponents.js +0 -31
- package/dist/components/Payroll/Transition/TransitionFlowComponents.js.map +0 -1
- package/dist/components/Payroll/Transition/transitionStateMachine.js +0 -49
- package/dist/components/Payroll/Transition/transitionStateMachine.js.map +0 -1
- package/dist/components/Payroll/TransitionCreation/TransitionCreation.js +0 -100
- package/dist/components/Payroll/TransitionCreation/TransitionCreation.js.map +0 -1
- package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.js +0 -110
- package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.js.map +0 -1
- package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.module.scss.js.map +0 -1
- package/dist/components/Payroll/TransitionCreation/TransitionCreationTypes.js +0 -21
- package/dist/components/Payroll/TransitionCreation/TransitionCreationTypes.js.map +0 -1
- package/dist/components/Payroll/TransitionPayroll/TransitionPayroll.js +0 -48
- package/dist/components/Payroll/TransitionPayroll/TransitionPayroll.js.map +0 -1
- package/dist/components/Payroll/TransitionPayroll/TransitionPayrollComponents.js +0 -35
- package/dist/components/Payroll/TransitionPayroll/TransitionPayrollComponents.js.map +0 -1
- package/dist/components/Payroll/TransitionPayroll/transitionPayrollStateMachine.js +0 -23
- package/dist/components/Payroll/TransitionPayroll/transitionPayrollStateMachine.js.map +0 -1
- package/dist/components/Payroll/TransitionPayroll/useResolveTransitionPayroll.js +0 -29
- package/dist/components/Payroll/TransitionPayroll/useResolveTransitionPayroll.js.map +0 -1
- package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.js +0 -411
- package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.js.map +0 -1
- package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.module.scss.js.map +0 -1
- package/dist/i18n/en/Payroll.Transition.json.js +0 -8
- package/dist/i18n/en/Payroll.Transition.json.js.map +0 -1
- package/dist/i18n/en/Payroll.TransitionCreation.json.js +0 -26
- package/dist/i18n/en/Payroll.TransitionCreation.json.js.map +0 -1
- package/dist/i18n/en/Payroll.UNSTABLE_PayrollEditEmployee.json.js.map +0 -1
- package/dist/src/components/Payroll/PayrollFlow/TransitionFlowContextual.d.ts +0 -7
- package/dist/src/components/Payroll/Transition/TransitionFlow.d.ts +0 -55
- package/dist/src/components/Payroll/Transition/TransitionFlowComponents.d.ts +0 -52
- package/dist/src/components/Payroll/Transition/index.d.ts +0 -2
- package/dist/src/components/Payroll/Transition/transitionStateMachine.d.ts +0 -29
- package/dist/src/components/Payroll/TransitionCreation/TransitionCreation.d.ts +0 -22
- package/dist/src/components/Payroll/TransitionCreation/TransitionCreationPresentation.d.ts +0 -9
- package/dist/src/components/Payroll/TransitionCreation/TransitionCreationTypes.d.ts +0 -57
- package/dist/src/components/Payroll/TransitionCreation/index.d.ts +0 -2
- package/dist/src/components/Payroll/TransitionPayroll/TransitionPayroll.d.ts +0 -55
- package/dist/src/components/Payroll/TransitionPayroll/TransitionPayrollComponents.d.ts +0 -24
- package/dist/src/components/Payroll/TransitionPayroll/TransitionPayrollTypes.d.ts +0 -23
- package/dist/src/components/Payroll/TransitionPayroll/index.d.ts +0 -2
- package/dist/src/components/Payroll/TransitionPayroll/transitionPayrollStateMachine.d.ts +0 -15
- package/dist/src/components/Payroll/TransitionPayroll/useResolveTransitionPayroll.d.ts +0 -28
- /package/dist/src/components/{Payroll/Transition/transitionStateMachine.test.d.ts → Common/DataView/getSortControls.test.d.ts} +0 -0
|
@@ -1,89 +1,217 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
1
|
+
import { jsx as m, jsxs as B, Fragment as I } from "react/jsx-runtime";
|
|
2
|
+
import { usePaySchedulesGetAssignmentsSuspense as M } from "@gusto/embedded-api/react-query/paySchedulesGetAssignments";
|
|
3
|
+
import { useDepartmentsGetAll as Y, useDepartmentsGetAllSuspense as G } from "@gusto/embedded-api/react-query/departmentsGetAll";
|
|
4
|
+
import { useTranslation as v } from "react-i18next";
|
|
5
|
+
import { useState as b, useMemo as k, useEffect as L } from "react";
|
|
6
|
+
import { usePaySchedulesGetAllSuspense as w } from "@gusto/embedded-api/react-query/paySchedulesGetAll";
|
|
7
|
+
import { usePaySchedulesPreviewAssignmentMutation as R } from "@gusto/embedded-api/react-query/paySchedulesPreviewAssignment";
|
|
8
|
+
import { usePaySchedulesAssignMutation as O } from "@gusto/embedded-api/react-query/paySchedulesAssign";
|
|
9
|
+
import { PayScheduleAssignmentBodyType as r } from "@gusto/embedded-api/models/components/payscheduleassignmentbody";
|
|
10
|
+
import { AssignmentEmployeeStepPresentation as F } from "./AssignmentEmployeeStepPresentation.js";
|
|
11
|
+
import { useAssignableEmployees as K, useAssignableEmployeesSuspense as x } from "./useAssignableEmployees.js";
|
|
12
|
+
import { AssignmentDepartmentStepPresentation as q } from "./AssignmentDepartmentStepPresentation.js";
|
|
13
|
+
import { AssignmentTypeStepPresentation as X } from "./AssignmentTypeStepPresentation.js";
|
|
14
|
+
import { AssignmentScheduleStepPresentation as j } from "./AssignmentScheduleStepPresentation.js";
|
|
15
|
+
import { AssignmentCompensationStepPresentation as W } from "./AssignmentCompensationStepPresentation.js";
|
|
16
|
+
import { AssignmentReviewStepPresentation as z } from "./AssignmentReviewStepPresentation.js";
|
|
17
|
+
import { isAssignmentAccessDenied as N, getCompanyDepartments as H } from "./departmentAccess.js";
|
|
18
|
+
import { getPrimaryCompensation as J } from "./employeeJob.js";
|
|
19
|
+
import { PayScheduleForm as Q } from "../../PayScheduleForm.js";
|
|
20
|
+
import { useFlow as U } from "../../../../Flow/useFlow.js";
|
|
21
|
+
import { BaseLayout as T } from "../../../../Base/Base.js";
|
|
22
|
+
import { useBase as V } from "../../../../Base/useBase.js";
|
|
23
|
+
import { ensureRequired as y } from "../../../../../helpers/ensureRequired.js";
|
|
24
|
+
import { componentEvents as a, FlsaStatus as D } from "../../../../../shared/constants.js";
|
|
25
|
+
import { useComponentContext as Z } from "../../../../../contexts/ComponentAdapter/useComponentContext.js";
|
|
26
|
+
function Te() {
|
|
27
|
+
const { companyId: n, assignmentType: i, onEvent: l } = U(), { data: u, error: d, isPending: c } = Y(
|
|
28
|
+
{ companyUuid: n },
|
|
22
29
|
{
|
|
23
|
-
|
|
30
|
+
throwOnError: (s) => !N(s)
|
|
31
|
+
}
|
|
32
|
+
), t = K(n);
|
|
33
|
+
return c || t.status === "loading" ? /* @__PURE__ */ m(T, { isLoading: !0 }) : /* @__PURE__ */ m(
|
|
34
|
+
X,
|
|
35
|
+
{
|
|
36
|
+
hasEmployees: t.employees.length > 0,
|
|
37
|
+
employeeAccessDenied: t.accessDenied,
|
|
38
|
+
hasDepartments: H(u?.departmentList).length > 0,
|
|
39
|
+
departmentAccessDenied: N(d),
|
|
40
|
+
defaultType: i,
|
|
24
41
|
onBack: () => {
|
|
25
|
-
|
|
42
|
+
l(a.PAY_SCHEDULE_ASSIGNMENT_CANCEL);
|
|
26
43
|
},
|
|
27
44
|
onContinue: (s) => {
|
|
28
|
-
|
|
45
|
+
l(a.PAY_SCHEDULE_ASSIGNMENT_TYPE_SELECTED, { type: s });
|
|
29
46
|
}
|
|
30
47
|
}
|
|
31
48
|
);
|
|
32
49
|
}
|
|
33
|
-
function
|
|
50
|
+
function Ne() {
|
|
34
51
|
const {
|
|
35
52
|
companyId: n,
|
|
36
|
-
assignmentType:
|
|
37
|
-
defaultPayScheduleUuid:
|
|
38
|
-
hourlyPayScheduleUuid:
|
|
39
|
-
salariedPayScheduleUuid:
|
|
40
|
-
onEvent:
|
|
41
|
-
} =
|
|
42
|
-
companyId:
|
|
43
|
-
}),
|
|
44
|
-
return
|
|
45
|
-
|
|
53
|
+
assignmentType: i,
|
|
54
|
+
defaultPayScheduleUuid: l,
|
|
55
|
+
hourlyPayScheduleUuid: u,
|
|
56
|
+
salariedPayScheduleUuid: d,
|
|
57
|
+
onEvent: c
|
|
58
|
+
} = U(), { data: t } = w({
|
|
59
|
+
companyId: y(n)
|
|
60
|
+
}), s = t.payScheduleShowResponse ?? [], E = s.find((e) => e.active), A = (e) => s.some((h) => h.uuid === e) ? e : E?.uuid;
|
|
61
|
+
return i === r.ByEmployee ? /* @__PURE__ */ m($, { schedules: s }) : i === r.ByDepartment ? /* @__PURE__ */ m(ne, { schedules: s }) : i === r.HourlySalaried ? /* @__PURE__ */ m(
|
|
62
|
+
W,
|
|
46
63
|
{
|
|
47
|
-
schedules:
|
|
48
|
-
hourlyPayScheduleUuid:
|
|
49
|
-
salariedPayScheduleUuid:
|
|
50
|
-
onBack: () => {
|
|
51
|
-
|
|
64
|
+
schedules: s,
|
|
65
|
+
hourlyPayScheduleUuid: A(u),
|
|
66
|
+
salariedPayScheduleUuid: A(d),
|
|
67
|
+
onBack: (e) => {
|
|
68
|
+
c(a.PAY_SCHEDULE_ASSIGNMENT_BACK, e);
|
|
52
69
|
},
|
|
53
|
-
onAddPaySchedule: () => {
|
|
54
|
-
|
|
70
|
+
onAddPaySchedule: (e) => {
|
|
71
|
+
c(a.PAY_SCHEDULE_CREATE, e);
|
|
55
72
|
},
|
|
56
73
|
onContinue: (e) => {
|
|
57
|
-
|
|
74
|
+
c(a.PAY_SCHEDULE_ASSIGNMENT_SCHEDULE_SELECTED, e);
|
|
58
75
|
}
|
|
59
76
|
}
|
|
60
|
-
) : /* @__PURE__ */
|
|
61
|
-
|
|
77
|
+
) : /* @__PURE__ */ m(
|
|
78
|
+
j,
|
|
62
79
|
{
|
|
63
|
-
schedules:
|
|
64
|
-
defaultPayScheduleUuid:
|
|
65
|
-
onBack: () => {
|
|
66
|
-
|
|
80
|
+
schedules: s,
|
|
81
|
+
defaultPayScheduleUuid: A(l),
|
|
82
|
+
onBack: (e) => {
|
|
83
|
+
c(a.PAY_SCHEDULE_ASSIGNMENT_BACK, e);
|
|
67
84
|
},
|
|
68
|
-
onAddPaySchedule: () => {
|
|
69
|
-
|
|
85
|
+
onAddPaySchedule: (e) => {
|
|
86
|
+
c(a.PAY_SCHEDULE_CREATE, e);
|
|
70
87
|
},
|
|
71
88
|
onContinue: (e) => {
|
|
72
|
-
|
|
89
|
+
c(a.PAY_SCHEDULE_ASSIGNMENT_SCHEDULE_SELECTED, {
|
|
73
90
|
defaultPayScheduleUuid: e
|
|
74
91
|
});
|
|
75
92
|
}
|
|
76
93
|
}
|
|
77
94
|
);
|
|
78
95
|
}
|
|
79
|
-
function
|
|
80
|
-
const {
|
|
81
|
-
|
|
82
|
-
|
|
96
|
+
function $({ schedules: n }) {
|
|
97
|
+
const {
|
|
98
|
+
companyId: i,
|
|
99
|
+
employees: l,
|
|
100
|
+
onEvent: u
|
|
101
|
+
} = U(), d = x(i), { data: c } = M({ companyId: i }), t = c.payScheduleAssignment, s = !d.accessDenied && d.employees.length === 0, { t: E } = v("Company.Management.PayScheduleAssignment");
|
|
102
|
+
if (L(() => {
|
|
103
|
+
s && u(a.PAY_SCHEDULE_CREATE, {
|
|
104
|
+
assignmentType: r.Single,
|
|
105
|
+
employees: void 0,
|
|
106
|
+
defaultPayScheduleUuid: void 0
|
|
107
|
+
});
|
|
108
|
+
}, [s, u]), d.accessDenied)
|
|
109
|
+
return /* @__PURE__ */ m(T, { children: /* @__PURE__ */ m(
|
|
110
|
+
ee,
|
|
111
|
+
{
|
|
112
|
+
onBack: () => {
|
|
113
|
+
u(a.PAY_SCHEDULE_ASSIGNMENT_BACK);
|
|
114
|
+
},
|
|
115
|
+
label: E("employeeAccessDenied"),
|
|
116
|
+
backLabel: E("backCta")
|
|
117
|
+
}
|
|
118
|
+
) });
|
|
119
|
+
if (s) return null;
|
|
120
|
+
const A = n.find((o) => o.active)?.uuid ?? n[0]?.uuid ?? "", e = (o) => n.find((g) => g.uuid === o)?.uuid ?? A, h = {
|
|
121
|
+
employees: d.employees.map((o) => {
|
|
122
|
+
const g = l?.find(
|
|
123
|
+
(S) => S.employeeUuid === o.uuid
|
|
124
|
+
)?.payScheduleUuid;
|
|
125
|
+
let P = t?.defaultPayScheduleUuid;
|
|
126
|
+
if (t?.type === r.ByEmployee)
|
|
127
|
+
P = t.employees?.find((S) => S.employeeUuid === o.uuid)?.payScheduleUuid ?? P;
|
|
128
|
+
else if (t?.type === r.ByDepartment)
|
|
129
|
+
P = t.departments?.find((S) => S.departmentUuid === o.departmentUuid)?.payScheduleUuid ?? P;
|
|
130
|
+
else if (t?.type === r.HourlySalaried) {
|
|
131
|
+
const S = o.flsaStatus ?? J(o)?.flsaStatus;
|
|
132
|
+
P = S === D.NONEXEMPT || S === D.SALARIED_NONEXEMPT || S === D.COMMISSION_ONLY_NONEXEMPT ? t.hourlyPayScheduleUuid : t.salariedPayScheduleUuid;
|
|
133
|
+
}
|
|
134
|
+
return { employeeUuid: o.uuid, payScheduleUuid: e(g ?? P) };
|
|
135
|
+
})
|
|
136
|
+
};
|
|
137
|
+
return /* @__PURE__ */ m(
|
|
138
|
+
F,
|
|
139
|
+
{
|
|
140
|
+
employees: d.employees,
|
|
141
|
+
schedules: n,
|
|
142
|
+
selection: h,
|
|
143
|
+
onBack: (o) => {
|
|
144
|
+
u(a.PAY_SCHEDULE_ASSIGNMENT_BACK, o);
|
|
145
|
+
},
|
|
146
|
+
onAddPaySchedule: (o) => {
|
|
147
|
+
u(a.PAY_SCHEDULE_CREATE, o);
|
|
148
|
+
},
|
|
149
|
+
onContinue: (o) => {
|
|
150
|
+
u(a.PAY_SCHEDULE_ASSIGNMENT_SCHEDULE_SELECTED, o);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
);
|
|
154
|
+
}
|
|
155
|
+
function ee({
|
|
156
|
+
onBack: n,
|
|
157
|
+
label: i,
|
|
158
|
+
backLabel: l
|
|
159
|
+
}) {
|
|
160
|
+
const u = Z();
|
|
161
|
+
return /* @__PURE__ */ B(I, { children: [
|
|
162
|
+
/* @__PURE__ */ m(u.Alert, { status: "warning", label: i }),
|
|
163
|
+
/* @__PURE__ */ m(u.Button, { variant: "secondary", onClick: n, children: l })
|
|
164
|
+
] });
|
|
165
|
+
}
|
|
166
|
+
function ne({ schedules: n }) {
|
|
167
|
+
const {
|
|
168
|
+
companyId: i,
|
|
169
|
+
departments: l,
|
|
170
|
+
defaultPayScheduleUuid: u,
|
|
171
|
+
onEvent: d
|
|
172
|
+
} = U(), { data: c } = G({ companyUuid: i }), t = H(c.departmentList), s = t.length > 0;
|
|
173
|
+
if (L(() => {
|
|
174
|
+
s || d(a.PAY_SCHEDULE_CREATE, {
|
|
175
|
+
assignmentType: r.Single,
|
|
176
|
+
departments: void 0,
|
|
177
|
+
defaultPayScheduleUuid: void 0
|
|
178
|
+
});
|
|
179
|
+
}, [s, d]), !s) return null;
|
|
180
|
+
const E = n.find((e) => e.active)?.uuid ?? n[0]?.uuid ?? "", A = (e) => n.find((h) => h.uuid === e)?.uuid ?? E;
|
|
181
|
+
return /* @__PURE__ */ m(
|
|
182
|
+
q,
|
|
183
|
+
{
|
|
184
|
+
departments: t,
|
|
185
|
+
schedules: n,
|
|
186
|
+
selection: {
|
|
187
|
+
defaultPayScheduleUuid: A(u),
|
|
188
|
+
departments: t.map((e) => ({
|
|
189
|
+
departmentUuid: y(e.uuid),
|
|
190
|
+
payScheduleUuid: A(
|
|
191
|
+
l?.find((h) => h.departmentUuid === e.uuid)?.payScheduleUuid
|
|
192
|
+
)
|
|
193
|
+
}))
|
|
194
|
+
},
|
|
195
|
+
onBack: (e) => {
|
|
196
|
+
d(a.PAY_SCHEDULE_ASSIGNMENT_BACK, e);
|
|
197
|
+
},
|
|
198
|
+
onAddPaySchedule: (e) => {
|
|
199
|
+
d(a.PAY_SCHEDULE_CREATE, e);
|
|
200
|
+
},
|
|
201
|
+
onContinue: (e) => {
|
|
202
|
+
d(a.PAY_SCHEDULE_ASSIGNMENT_SCHEDULE_SELECTED, e);
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
);
|
|
206
|
+
}
|
|
207
|
+
function ve() {
|
|
208
|
+
const { t: n } = v("Company.Management.PayScheduleAssignment"), { companyId: i, onEvent: l } = U();
|
|
209
|
+
return /* @__PURE__ */ m(
|
|
210
|
+
Q,
|
|
83
211
|
{
|
|
84
212
|
variant: "management",
|
|
85
|
-
companyId:
|
|
86
|
-
onEvent:
|
|
213
|
+
companyId: y(i),
|
|
214
|
+
onEvent: l,
|
|
87
215
|
copy: {
|
|
88
216
|
anchorEndOfPayPeriodDescription: n("scheduleForm.anchorEndOfPayPeriodDescription"),
|
|
89
217
|
payrollDeadline: n("scheduleForm.payrollDeadline")
|
|
@@ -91,63 +219,84 @@ function ne() {
|
|
|
91
219
|
}
|
|
92
220
|
);
|
|
93
221
|
}
|
|
94
|
-
function
|
|
222
|
+
function He() {
|
|
95
223
|
const {
|
|
96
224
|
companyId: n,
|
|
97
|
-
assignmentType:
|
|
98
|
-
defaultPayScheduleUuid:
|
|
99
|
-
hourlyPayScheduleUuid:
|
|
100
|
-
salariedPayScheduleUuid:
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
225
|
+
assignmentType: i,
|
|
226
|
+
defaultPayScheduleUuid: l,
|
|
227
|
+
hourlyPayScheduleUuid: u,
|
|
228
|
+
salariedPayScheduleUuid: d,
|
|
229
|
+
departments: c,
|
|
230
|
+
employees: t,
|
|
231
|
+
onEvent: s
|
|
232
|
+
} = U(), { baseSubmitHandler: E, error: A } = V(), [e, h] = b(null), { mutateAsync: o, isPending: g } = R(), { mutateAsync: P, isPending: S } = O(), C = k(() => {
|
|
233
|
+
if (i === r.ByEmployee) {
|
|
234
|
+
const p = y(t), f = p[0]?.payScheduleUuid;
|
|
235
|
+
return f && p.every((_) => _.payScheduleUuid === f) ? { type: r.Single, defaultPayScheduleUuid: f } : { type: r.ByEmployee, employees: p };
|
|
236
|
+
}
|
|
237
|
+
if (i === r.ByDepartment) {
|
|
238
|
+
const p = y(l), f = y(c);
|
|
239
|
+
return f.length === 0 || f.every((_) => _.payScheduleUuid === p) ? { type: r.Single, defaultPayScheduleUuid: p } : {
|
|
240
|
+
type: r.ByDepartment,
|
|
241
|
+
defaultPayScheduleUuid: p,
|
|
242
|
+
departments: f
|
|
243
|
+
};
|
|
244
|
+
}
|
|
245
|
+
if (i === r.HourlySalaried) {
|
|
246
|
+
const p = y(u), f = y(d);
|
|
247
|
+
return p === f ? {
|
|
248
|
+
type: r.Single,
|
|
249
|
+
defaultPayScheduleUuid: p
|
|
108
250
|
} : {
|
|
109
|
-
type:
|
|
110
|
-
hourlyPayScheduleUuid:
|
|
111
|
-
salariedPayScheduleUuid:
|
|
251
|
+
type: r.HourlySalaried,
|
|
252
|
+
hourlyPayScheduleUuid: p,
|
|
253
|
+
salariedPayScheduleUuid: f
|
|
112
254
|
};
|
|
113
255
|
}
|
|
114
256
|
return {
|
|
115
|
-
type:
|
|
116
|
-
defaultPayScheduleUuid:
|
|
257
|
+
type: r.Single,
|
|
258
|
+
defaultPayScheduleUuid: y(l)
|
|
117
259
|
};
|
|
118
|
-
}, [
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
260
|
+
}, [
|
|
261
|
+
i,
|
|
262
|
+
l,
|
|
263
|
+
u,
|
|
264
|
+
d,
|
|
265
|
+
c,
|
|
266
|
+
t
|
|
267
|
+
]);
|
|
268
|
+
return L(() => {
|
|
269
|
+
E(void 0, async () => {
|
|
270
|
+
const p = await o({
|
|
271
|
+
request: { companyId: y(n), payScheduleAssignmentBody: C }
|
|
123
272
|
});
|
|
124
|
-
|
|
273
|
+
h(p.payScheduleAssignmentPreview?.employeeChanges ?? []);
|
|
125
274
|
});
|
|
126
|
-
}, [n,
|
|
127
|
-
|
|
275
|
+
}, [n, C, o, E]), A ? null : g || !e ? /* @__PURE__ */ m(T, { isLoading: !0 }) : /* @__PURE__ */ m(
|
|
276
|
+
z,
|
|
128
277
|
{
|
|
129
|
-
employeeChanges:
|
|
130
|
-
isSubmitting:
|
|
278
|
+
employeeChanges: e,
|
|
279
|
+
isSubmitting: S,
|
|
131
280
|
onBack: () => {
|
|
132
|
-
|
|
281
|
+
s(a.PAY_SCHEDULE_ASSIGNMENT_BACK);
|
|
133
282
|
},
|
|
134
283
|
onSubmit: () => {
|
|
135
|
-
|
|
136
|
-
await
|
|
284
|
+
E(void 0, async () => {
|
|
285
|
+
await P({
|
|
137
286
|
request: {
|
|
138
|
-
companyId:
|
|
139
|
-
payScheduleAssignmentBody:
|
|
287
|
+
companyId: y(n),
|
|
288
|
+
payScheduleAssignmentBody: C
|
|
140
289
|
}
|
|
141
|
-
}),
|
|
290
|
+
}), s(a.PAY_SCHEDULE_ASSIGNED, { ...C, employeeChanges: e });
|
|
142
291
|
});
|
|
143
292
|
}
|
|
144
293
|
}
|
|
145
294
|
);
|
|
146
295
|
}
|
|
147
296
|
export {
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
297
|
+
ve as AssignmentCreateScheduleStep,
|
|
298
|
+
He as AssignmentReviewStep,
|
|
299
|
+
Ne as AssignmentScheduleStep,
|
|
300
|
+
Te as AssignmentTypeStep
|
|
152
301
|
};
|
|
153
302
|
//# sourceMappingURL=PayScheduleAssignmentComponents.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PayScheduleAssignmentComponents.js","sources":["../../../../../../src/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignmentComponents.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { useEffect, useMemo, useState } from 'react'\nimport { usePaySchedulesGetAllSuspense } from '@gusto/embedded-api/react-query/paySchedulesGetAll'\nimport { usePaySchedulesPreviewAssignmentMutation } from '@gusto/embedded-api/react-query/paySchedulesPreviewAssignment'\nimport { usePaySchedulesAssignMutation } from '@gusto/embedded-api/react-query/paySchedulesAssign'\nimport { PayScheduleAssignmentBodyType } from '@gusto/embedded-api/models/components/payscheduleassignmentbody'\nimport type { PayScheduleAssignmentEmployeeChange } from '@gusto/embedded-api/models/components/payscheduleassignmentemployeechange'\nimport type { PayScheduleShow } from '@gusto/embedded-api/models/components/payscheduleshow'\nimport { AssignmentTypeStepPresentation } from './AssignmentTypeStepPresentation'\nimport { AssignmentScheduleStepPresentation } from './AssignmentScheduleStepPresentation'\nimport { AssignmentCompensationStepPresentation } from './AssignmentCompensationStepPresentation'\nimport { AssignmentReviewStepPresentation } from './AssignmentReviewStepPresentation'\nimport type {\n PayScheduleAssignmentContextInterface,\n SupportedAssignmentType,\n} from './usePayScheduleAssignment'\nimport { PayScheduleForm } from '@/components/Company/PaySchedule/PayScheduleForm'\nimport { useFlow } from '@/components/Flow/useFlow'\nimport { useBase, BaseLayout } from '@/components/Base'\nimport { ensureRequired } from '@/helpers/ensureRequired'\nimport { componentEvents } from '@/shared/constants'\n\n/**\n * The assignment the user built, already collapsed to the type that actually gets submitted.\n * Doubles as the request body and as the `assigned` event payload.\n *\n * @internal\n */\nexport type AssignmentSelection =\n | {\n type: typeof PayScheduleAssignmentBodyType.Single\n defaultPayScheduleUuid: string\n }\n | {\n type: typeof PayScheduleAssignmentBodyType.HourlySalaried\n hourlyPayScheduleUuid: string\n salariedPayScheduleUuid: string\n }\n\n/** @internal */\nexport type EventPayloads = {\n [componentEvents.PAY_SCHEDULE_ASSIGNMENT_TYPE_SELECTED]: { type: SupportedAssignmentType }\n [componentEvents.PAY_SCHEDULE_ASSIGNMENT_SCHEDULE_SELECTED]:\n | { defaultPayScheduleUuid: string }\n | { hourlyPayScheduleUuid: string; salariedPayScheduleUuid: string }\n [componentEvents.PAY_SCHEDULE_CREATED]: { paySchedule: PayScheduleShow }\n [componentEvents.PAY_SCHEDULE_ASSIGNED]: AssignmentSelection & {\n employeeChanges: PayScheduleAssignmentEmployeeChange[]\n }\n}\n\n/** @internal */\nexport function AssignmentTypeStep() {\n const { assignmentType, onEvent } = useFlow<PayScheduleAssignmentContextInterface>()\n\n return (\n <AssignmentTypeStepPresentation\n defaultType={assignmentType}\n onBack={() => {\n onEvent(componentEvents.PAY_SCHEDULE_ASSIGNMENT_CANCEL)\n }}\n onContinue={type => {\n onEvent(componentEvents.PAY_SCHEDULE_ASSIGNMENT_TYPE_SELECTED, { type })\n }}\n />\n )\n}\n\n/** @internal */\nexport function AssignmentScheduleStep() {\n const {\n companyId,\n assignmentType,\n defaultPayScheduleUuid,\n hourlyPayScheduleUuid,\n salariedPayScheduleUuid,\n onEvent,\n } = useFlow<PayScheduleAssignmentContextInterface>()\n const { data: paySchedules } = usePaySchedulesGetAllSuspense({\n companyId: ensureRequired(companyId),\n })\n const schedules = paySchedules.payScheduleShowResponse ?? []\n const activeSchedule = schedules.find(s => s.active)\n /**\n * A uuid carried in from the company's existing assignment has no option to select if the\n * schedule is no longer in the company's list, which would leave the dropdown blank.\n */\n const preselect = (uuid: string | undefined) =>\n schedules.some(s => s.uuid === uuid) ? uuid : activeSchedule?.uuid\n\n if (assignmentType === PayScheduleAssignmentBodyType.HourlySalaried) {\n return (\n <AssignmentCompensationStepPresentation\n schedules={schedules}\n hourlyPayScheduleUuid={preselect(hourlyPayScheduleUuid)}\n salariedPayScheduleUuid={preselect(salariedPayScheduleUuid)}\n onBack={() => {\n onEvent(componentEvents.PAY_SCHEDULE_ASSIGNMENT_BACK)\n }}\n onAddPaySchedule={() => {\n onEvent(componentEvents.PAY_SCHEDULE_CREATE)\n }}\n onContinue={selection => {\n onEvent(componentEvents.PAY_SCHEDULE_ASSIGNMENT_SCHEDULE_SELECTED, selection)\n }}\n />\n )\n }\n\n return (\n <AssignmentScheduleStepPresentation\n schedules={schedules}\n defaultPayScheduleUuid={preselect(defaultPayScheduleUuid)}\n onBack={() => {\n onEvent(componentEvents.PAY_SCHEDULE_ASSIGNMENT_BACK)\n }}\n onAddPaySchedule={() => {\n onEvent(componentEvents.PAY_SCHEDULE_CREATE)\n }}\n onContinue={uuid => {\n onEvent(componentEvents.PAY_SCHEDULE_ASSIGNMENT_SCHEDULE_SELECTED, {\n defaultPayScheduleUuid: uuid,\n })\n }}\n />\n )\n}\n\n/** @internal */\nexport function AssignmentCreateScheduleStep() {\n const { t } = useTranslation('Company.Management.PayScheduleAssignment')\n const { companyId, onEvent } = useFlow<PayScheduleAssignmentContextInterface>()\n\n return (\n <PayScheduleForm\n variant=\"management\"\n companyId={ensureRequired(companyId)}\n onEvent={onEvent}\n copy={{\n anchorEndOfPayPeriodDescription: t('scheduleForm.anchorEndOfPayPeriodDescription'),\n payrollDeadline: t('scheduleForm.payrollDeadline'),\n }}\n />\n )\n}\n\n/** @internal */\nexport function AssignmentReviewStep() {\n const {\n companyId,\n assignmentType,\n defaultPayScheduleUuid,\n hourlyPayScheduleUuid,\n salariedPayScheduleUuid,\n onEvent,\n } = useFlow<PayScheduleAssignmentContextInterface>()\n const { baseSubmitHandler, error } = useBase()\n const [employeeChanges, setEmployeeChanges] = useState<\n PayScheduleAssignmentEmployeeChange[] | null\n >(null)\n const { mutateAsync: previewAssignment, isPending: isPreviewLoading } =\n usePaySchedulesPreviewAssignmentMutation()\n const { mutateAsync: assignSchedules, isPending: isAssigning } = usePaySchedulesAssignMutation()\n\n const assignment: AssignmentSelection = useMemo(() => {\n if (assignmentType === PayScheduleAssignmentBodyType.HourlySalaried) {\n const hourly = ensureRequired(hourlyPayScheduleUuid)\n const salaried = ensureRequired(salariedPayScheduleUuid)\n\n // One schedule for both compensation types is a single-schedule assignment. Collapsing\n // here rather than at submit keeps the previewed changes identical to what gets sent.\n if (hourly === salaried) {\n return {\n type: PayScheduleAssignmentBodyType.Single,\n defaultPayScheduleUuid: hourly,\n }\n }\n\n return {\n type: PayScheduleAssignmentBodyType.HourlySalaried,\n hourlyPayScheduleUuid: hourly,\n salariedPayScheduleUuid: salaried,\n }\n }\n\n return {\n type: PayScheduleAssignmentBodyType.Single,\n defaultPayScheduleUuid: ensureRequired(defaultPayScheduleUuid),\n }\n }, [assignmentType, defaultPayScheduleUuid, hourlyPayScheduleUuid, salariedPayScheduleUuid])\n\n useEffect(() => {\n void baseSubmitHandler(undefined, async () => {\n const response = await previewAssignment({\n request: { companyId: ensureRequired(companyId), payScheduleAssignmentBody: assignment },\n })\n setEmployeeChanges(response.payScheduleAssignmentPreview?.employeeChanges ?? [])\n })\n }, [companyId, assignment, previewAssignment, baseSubmitHandler])\n\n // The enclosing BaseComponent's own BaseLayout already renders `error` for this whole\n // component tree, so surface only the loading state here to avoid rendering it twice.\n if (error) {\n return null\n }\n if (isPreviewLoading || !employeeChanges) {\n return <BaseLayout isLoading />\n }\n\n return (\n <AssignmentReviewStepPresentation\n employeeChanges={employeeChanges}\n isSubmitting={isAssigning}\n onBack={() => {\n onEvent(componentEvents.PAY_SCHEDULE_ASSIGNMENT_BACK)\n }}\n onSubmit={() => {\n void baseSubmitHandler(undefined, async () => {\n await assignSchedules({\n request: {\n companyId: ensureRequired(companyId),\n payScheduleAssignmentBody: assignment,\n },\n })\n onEvent(componentEvents.PAY_SCHEDULE_ASSIGNED, { ...assignment, employeeChanges })\n })\n }}\n />\n )\n}\n"],"names":["AssignmentTypeStep","assignmentType","onEvent","useFlow","jsx","AssignmentTypeStepPresentation","componentEvents","type","AssignmentScheduleStep","companyId","defaultPayScheduleUuid","hourlyPayScheduleUuid","salariedPayScheduleUuid","paySchedules","usePaySchedulesGetAllSuspense","ensureRequired","schedules","activeSchedule","s","preselect","uuid","PayScheduleAssignmentBodyType","AssignmentCompensationStepPresentation","selection","AssignmentScheduleStepPresentation","AssignmentCreateScheduleStep","t","useTranslation","PayScheduleForm","AssignmentReviewStep","baseSubmitHandler","error","useBase","employeeChanges","setEmployeeChanges","useState","previewAssignment","isPreviewLoading","usePaySchedulesPreviewAssignmentMutation","assignSchedules","isAssigning","usePaySchedulesAssignMutation","assignment","useMemo","hourly","salaried","useEffect","response","BaseLayout","AssignmentReviewStepPresentation"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PayScheduleAssignmentComponents.js","sources":["../../../../../../src/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignmentComponents.tsx"],"sourcesContent":["import { usePaySchedulesGetAssignmentsSuspense } from '@gusto/embedded-api/react-query/paySchedulesGetAssignments'\nimport {\n useDepartmentsGetAll,\n useDepartmentsGetAllSuspense,\n} from '@gusto/embedded-api/react-query/departmentsGetAll'\nimport { useTranslation } from 'react-i18next'\nimport { useEffect, useMemo, useState } from 'react'\nimport { usePaySchedulesGetAllSuspense } from '@gusto/embedded-api/react-query/paySchedulesGetAll'\nimport { usePaySchedulesPreviewAssignmentMutation } from '@gusto/embedded-api/react-query/paySchedulesPreviewAssignment'\nimport { usePaySchedulesAssignMutation } from '@gusto/embedded-api/react-query/paySchedulesAssign'\nimport { PayScheduleAssignmentBodyType } from '@gusto/embedded-api/models/components/payscheduleassignmentbody'\nimport type { PayScheduleAssignmentEmployeeChange } from '@gusto/embedded-api/models/components/payscheduleassignmentemployeechange'\nimport type { PayScheduleShow } from '@gusto/embedded-api/models/components/payschedulelistitem'\nimport {\n AssignmentEmployeeStepPresentation,\n type EmployeeSelection,\n} from './AssignmentEmployeeStepPresentation'\nimport { useAssignableEmployees, useAssignableEmployeesSuspense } from './useAssignableEmployees'\nimport {\n AssignmentDepartmentStepPresentation,\n type DepartmentSelection,\n} from './AssignmentDepartmentStepPresentation'\nimport { AssignmentTypeStepPresentation } from './AssignmentTypeStepPresentation'\nimport { AssignmentScheduleStepPresentation } from './AssignmentScheduleStepPresentation'\nimport { AssignmentCompensationStepPresentation } from './AssignmentCompensationStepPresentation'\nimport { AssignmentReviewStepPresentation } from './AssignmentReviewStepPresentation'\nimport { getCompanyDepartments, isAssignmentAccessDenied } from './departmentAccess'\nimport type {\n AssignmentDraft,\n PayScheduleAssignmentContextInterface,\n SupportedAssignmentType,\n} from './usePayScheduleAssignment'\nimport { getPrimaryCompensation } from './employeeJob'\nimport { PayScheduleForm } from '@/components/Company/PaySchedule/PayScheduleForm'\nimport { useFlow } from '@/components/Flow/useFlow'\nimport { useBase, BaseLayout } from '@/components/Base'\nimport { ensureRequired } from '@/helpers/ensureRequired'\nimport { componentEvents, FlsaStatus } from '@/shared/constants'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\n/**\n * The assignment the user built, already collapsed to the type that actually gets submitted.\n * Doubles as the request body and as the `assigned` event payload.\n *\n * @internal\n */\nexport type AssignmentSelection =\n | {\n type: typeof PayScheduleAssignmentBodyType.Single\n defaultPayScheduleUuid: string\n }\n | {\n type: typeof PayScheduleAssignmentBodyType.HourlySalaried\n hourlyPayScheduleUuid: string\n salariedPayScheduleUuid: string\n }\n | ({ type: typeof PayScheduleAssignmentBodyType.ByDepartment } & DepartmentSelection)\n | ({ type: typeof PayScheduleAssignmentBodyType.ByEmployee } & EmployeeSelection)\n\n/** @internal */\nexport type EventPayloads = {\n [componentEvents.PAY_SCHEDULE_ASSIGNMENT_TYPE_SELECTED]: { type: SupportedAssignmentType }\n [componentEvents.PAY_SCHEDULE_ASSIGNMENT_SCHEDULE_SELECTED]:\n | { defaultPayScheduleUuid: string }\n | { hourlyPayScheduleUuid: string; salariedPayScheduleUuid: string }\n | DepartmentSelection\n | EmployeeSelection\n [componentEvents.PAY_SCHEDULE_CREATE]: AssignmentDraft | undefined\n [componentEvents.PAY_SCHEDULE_ASSIGNMENT_BACK]: AssignmentDraft | undefined\n [componentEvents.PAY_SCHEDULE_CREATED]: { paySchedule: PayScheduleShow }\n [componentEvents.PAY_SCHEDULE_ASSIGNED]: AssignmentSelection & {\n employeeChanges: PayScheduleAssignmentEmployeeChange[]\n }\n}\n\n/** @internal */\nexport function AssignmentTypeStep() {\n const { companyId, assignmentType, onEvent } = useFlow<PayScheduleAssignmentContextInterface>()\n\n const { data, error, isPending } = useDepartmentsGetAll(\n { companyUuid: companyId },\n {\n throwOnError: error => !isAssignmentAccessDenied(error),\n },\n )\n const employees = useAssignableEmployees(companyId)\n if (isPending || employees.status === 'loading') return <BaseLayout isLoading />\n\n return (\n <AssignmentTypeStepPresentation\n hasEmployees={employees.employees.length > 0}\n employeeAccessDenied={employees.accessDenied}\n hasDepartments={getCompanyDepartments(data?.departmentList).length > 0}\n departmentAccessDenied={isAssignmentAccessDenied(error)}\n defaultType={assignmentType}\n onBack={() => {\n onEvent(componentEvents.PAY_SCHEDULE_ASSIGNMENT_CANCEL)\n }}\n onContinue={type => {\n onEvent(componentEvents.PAY_SCHEDULE_ASSIGNMENT_TYPE_SELECTED, { type })\n }}\n />\n )\n}\n\n/** @internal */\nexport function AssignmentScheduleStep() {\n const {\n companyId,\n assignmentType,\n defaultPayScheduleUuid,\n hourlyPayScheduleUuid,\n salariedPayScheduleUuid,\n onEvent,\n } = useFlow<PayScheduleAssignmentContextInterface>()\n const { data: paySchedules } = usePaySchedulesGetAllSuspense({\n companyId: ensureRequired(companyId),\n })\n const schedules = paySchedules.payScheduleShowResponse ?? []\n const activeSchedule = schedules.find(s => s.active)\n /**\n * A uuid carried in from the company's existing assignment has no option to select if the\n * schedule is no longer in the company's list, which would leave the dropdown blank.\n */\n const preselect = (uuid: string | undefined) =>\n schedules.some(s => s.uuid === uuid) ? uuid : activeSchedule?.uuid\n\n if (assignmentType === PayScheduleAssignmentBodyType.ByEmployee) {\n return <AssignmentEmployeeStep schedules={schedules} />\n }\n\n if (assignmentType === PayScheduleAssignmentBodyType.ByDepartment) {\n return <AssignmentDepartmentStep schedules={schedules} />\n }\n\n if (assignmentType === PayScheduleAssignmentBodyType.HourlySalaried) {\n return (\n <AssignmentCompensationStepPresentation\n schedules={schedules}\n hourlyPayScheduleUuid={preselect(hourlyPayScheduleUuid)}\n salariedPayScheduleUuid={preselect(salariedPayScheduleUuid)}\n onBack={selection => {\n onEvent(componentEvents.PAY_SCHEDULE_ASSIGNMENT_BACK, selection)\n }}\n onAddPaySchedule={selection => {\n onEvent(componentEvents.PAY_SCHEDULE_CREATE, selection)\n }}\n onContinue={selection => {\n onEvent(componentEvents.PAY_SCHEDULE_ASSIGNMENT_SCHEDULE_SELECTED, selection)\n }}\n />\n )\n }\n\n return (\n <AssignmentScheduleStepPresentation\n schedules={schedules}\n defaultPayScheduleUuid={preselect(defaultPayScheduleUuid)}\n onBack={selection => {\n onEvent(componentEvents.PAY_SCHEDULE_ASSIGNMENT_BACK, selection)\n }}\n onAddPaySchedule={selection => {\n onEvent(componentEvents.PAY_SCHEDULE_CREATE, selection)\n }}\n onContinue={uuid => {\n onEvent(componentEvents.PAY_SCHEDULE_ASSIGNMENT_SCHEDULE_SELECTED, {\n defaultPayScheduleUuid: uuid,\n })\n }}\n />\n )\n}\n\nfunction AssignmentEmployeeStep({ schedules }: { schedules: PayScheduleShow[] }) {\n const {\n companyId,\n employees: selectedEmployees,\n onEvent,\n } = useFlow<PayScheduleAssignmentContextInterface>()\n const roster = useAssignableEmployeesSuspense(companyId)\n const { data } = usePaySchedulesGetAssignmentsSuspense({ companyId })\n const assignment = data.payScheduleAssignment\n const isEmpty = !roster.accessDenied && roster.employees.length === 0\n const { t } = useTranslation('Company.Management.PayScheduleAssignment')\n useEffect(() => {\n if (isEmpty) {\n onEvent(componentEvents.PAY_SCHEDULE_CREATE, {\n assignmentType: PayScheduleAssignmentBodyType.Single,\n employees: undefined,\n defaultPayScheduleUuid: undefined,\n })\n }\n }, [isEmpty, onEvent])\n if (roster.accessDenied)\n return (\n <BaseLayout>\n <EmployeeAccessWarning\n onBack={() => {\n onEvent(componentEvents.PAY_SCHEDULE_ASSIGNMENT_BACK)\n }}\n label={t('employeeAccessDenied')}\n backLabel={t('backCta')}\n />\n </BaseLayout>\n )\n if (isEmpty) return null\n const fallback = schedules.find(schedule => schedule.active)?.uuid ?? schedules[0]?.uuid ?? ''\n const validSchedule = (uuid: string | null | undefined) =>\n schedules.find(schedule => schedule.uuid === uuid)?.uuid ?? fallback\n const selection: EmployeeSelection = {\n employees: roster.employees.map(employee => {\n const selected = selectedEmployees?.find(\n entry => entry.employeeUuid === employee.uuid,\n )?.payScheduleUuid\n let stored = assignment?.defaultPayScheduleUuid\n if (assignment?.type === PayScheduleAssignmentBodyType.ByEmployee) {\n stored =\n assignment.employees?.find(entry => entry.employeeUuid === employee.uuid)\n ?.payScheduleUuid ?? stored\n } else if (assignment?.type === PayScheduleAssignmentBodyType.ByDepartment) {\n stored =\n assignment.departments?.find(entry => entry.departmentUuid === employee.departmentUuid)\n ?.payScheduleUuid ?? stored\n } else if (assignment?.type === PayScheduleAssignmentBodyType.HourlySalaried) {\n const status = employee.flsaStatus ?? getPrimaryCompensation(employee)?.flsaStatus\n stored =\n status === FlsaStatus.NONEXEMPT ||\n status === FlsaStatus.SALARIED_NONEXEMPT ||\n status === FlsaStatus.COMMISSION_ONLY_NONEXEMPT\n ? assignment.hourlyPayScheduleUuid\n : assignment.salariedPayScheduleUuid\n }\n return { employeeUuid: employee.uuid, payScheduleUuid: validSchedule(selected ?? stored) }\n }),\n }\n return (\n <AssignmentEmployeeStepPresentation\n employees={roster.employees}\n schedules={schedules}\n selection={selection}\n onBack={draft => {\n onEvent(componentEvents.PAY_SCHEDULE_ASSIGNMENT_BACK, draft)\n }}\n onAddPaySchedule={draft => {\n onEvent(componentEvents.PAY_SCHEDULE_CREATE, draft)\n }}\n onContinue={draft => {\n onEvent(componentEvents.PAY_SCHEDULE_ASSIGNMENT_SCHEDULE_SELECTED, draft)\n }}\n />\n )\n}\n\nfunction EmployeeAccessWarning({\n onBack,\n label,\n backLabel,\n}: {\n onBack: () => void\n label: string\n backLabel: string\n}) {\n const Components = useComponentContext()\n return (\n <>\n <Components.Alert status=\"warning\" label={label} />\n <Components.Button variant=\"secondary\" onClick={onBack}>\n {backLabel}\n </Components.Button>\n </>\n )\n}\n\nfunction AssignmentDepartmentStep({ schedules }: { schedules: PayScheduleShow[] }) {\n const {\n companyId,\n departments: selectedDepartments,\n defaultPayScheduleUuid,\n onEvent,\n } = useFlow<PayScheduleAssignmentContextInterface>()\n const { data } = useDepartmentsGetAllSuspense({ companyUuid: companyId })\n const departments = getCompanyDepartments(data.departmentList)\n const hasDepartments = departments.length > 0\n\n useEffect(() => {\n if (!hasDepartments) {\n onEvent(componentEvents.PAY_SCHEDULE_CREATE, {\n assignmentType: PayScheduleAssignmentBodyType.Single,\n departments: undefined,\n defaultPayScheduleUuid: undefined,\n })\n }\n }, [hasDepartments, onEvent])\n\n if (!hasDepartments) return null\n\n const fallbackUuid = schedules.find(schedule => schedule.active)?.uuid ?? schedules[0]?.uuid ?? ''\n const preselect = (uuid: string | undefined) =>\n schedules.find(schedule => schedule.uuid === uuid)?.uuid ?? fallbackUuid\n\n return (\n <AssignmentDepartmentStepPresentation\n departments={departments}\n schedules={schedules}\n selection={{\n defaultPayScheduleUuid: preselect(defaultPayScheduleUuid),\n departments: departments.map(department => ({\n departmentUuid: ensureRequired(department.uuid),\n payScheduleUuid: preselect(\n selectedDepartments?.find(selection => selection.departmentUuid === department.uuid)\n ?.payScheduleUuid,\n ),\n })),\n }}\n onBack={selection => {\n onEvent(componentEvents.PAY_SCHEDULE_ASSIGNMENT_BACK, selection)\n }}\n onAddPaySchedule={selection => {\n onEvent(componentEvents.PAY_SCHEDULE_CREATE, selection)\n }}\n onContinue={selection => {\n onEvent(componentEvents.PAY_SCHEDULE_ASSIGNMENT_SCHEDULE_SELECTED, selection)\n }}\n />\n )\n}\n\n/** @internal */\nexport function AssignmentCreateScheduleStep() {\n const { t } = useTranslation('Company.Management.PayScheduleAssignment')\n const { companyId, onEvent } = useFlow<PayScheduleAssignmentContextInterface>()\n\n return (\n <PayScheduleForm\n variant=\"management\"\n companyId={ensureRequired(companyId)}\n onEvent={onEvent}\n copy={{\n anchorEndOfPayPeriodDescription: t('scheduleForm.anchorEndOfPayPeriodDescription'),\n payrollDeadline: t('scheduleForm.payrollDeadline'),\n }}\n />\n )\n}\n\n/** @internal */\nexport function AssignmentReviewStep() {\n const {\n companyId,\n assignmentType,\n defaultPayScheduleUuid,\n hourlyPayScheduleUuid,\n salariedPayScheduleUuid,\n departments,\n employees,\n onEvent,\n } = useFlow<PayScheduleAssignmentContextInterface>()\n const { baseSubmitHandler, error } = useBase()\n const [employeeChanges, setEmployeeChanges] = useState<\n PayScheduleAssignmentEmployeeChange[] | null\n >(null)\n const { mutateAsync: previewAssignment, isPending: isPreviewLoading } =\n usePaySchedulesPreviewAssignmentMutation()\n const { mutateAsync: assignSchedules, isPending: isAssigning } = usePaySchedulesAssignMutation()\n\n const assignment: AssignmentSelection = useMemo(() => {\n if (assignmentType === PayScheduleAssignmentBodyType.ByEmployee) {\n const selections = ensureRequired(employees)\n const firstSchedule = selections[0]?.payScheduleUuid\n if (\n firstSchedule &&\n selections.every(selection => selection.payScheduleUuid === firstSchedule)\n ) {\n return { type: PayScheduleAssignmentBodyType.Single, defaultPayScheduleUuid: firstSchedule }\n }\n return { type: PayScheduleAssignmentBodyType.ByEmployee, employees: selections }\n }\n if (assignmentType === PayScheduleAssignmentBodyType.ByDepartment) {\n const defaultUuid = ensureRequired(defaultPayScheduleUuid)\n const selections = ensureRequired(departments)\n if (\n selections.length === 0 ||\n selections.every(selection => selection.payScheduleUuid === defaultUuid)\n ) {\n return { type: PayScheduleAssignmentBodyType.Single, defaultPayScheduleUuid: defaultUuid }\n }\n return {\n type: PayScheduleAssignmentBodyType.ByDepartment,\n defaultPayScheduleUuid: defaultUuid,\n departments: selections,\n }\n }\n if (assignmentType === PayScheduleAssignmentBodyType.HourlySalaried) {\n const hourly = ensureRequired(hourlyPayScheduleUuid)\n const salaried = ensureRequired(salariedPayScheduleUuid)\n\n // One schedule for both compensation types is a single-schedule assignment. Collapsing\n // here rather than at submit keeps the previewed changes identical to what gets sent.\n if (hourly === salaried) {\n return {\n type: PayScheduleAssignmentBodyType.Single,\n defaultPayScheduleUuid: hourly,\n }\n }\n\n return {\n type: PayScheduleAssignmentBodyType.HourlySalaried,\n hourlyPayScheduleUuid: hourly,\n salariedPayScheduleUuid: salaried,\n }\n }\n\n return {\n type: PayScheduleAssignmentBodyType.Single,\n defaultPayScheduleUuid: ensureRequired(defaultPayScheduleUuid),\n }\n }, [\n assignmentType,\n defaultPayScheduleUuid,\n hourlyPayScheduleUuid,\n salariedPayScheduleUuid,\n departments,\n employees,\n ])\n\n useEffect(() => {\n void baseSubmitHandler(undefined, async () => {\n const response = await previewAssignment({\n request: { companyId: ensureRequired(companyId), payScheduleAssignmentBody: assignment },\n })\n setEmployeeChanges(response.payScheduleAssignmentPreview?.employeeChanges ?? [])\n })\n }, [companyId, assignment, previewAssignment, baseSubmitHandler])\n\n // The enclosing BaseComponent's own BaseLayout already renders `error` for this whole\n // component tree, so surface only the loading state here to avoid rendering it twice.\n if (error) {\n return null\n }\n if (isPreviewLoading || !employeeChanges) {\n return <BaseLayout isLoading />\n }\n\n return (\n <AssignmentReviewStepPresentation\n employeeChanges={employeeChanges}\n isSubmitting={isAssigning}\n onBack={() => {\n onEvent(componentEvents.PAY_SCHEDULE_ASSIGNMENT_BACK)\n }}\n onSubmit={() => {\n void baseSubmitHandler(undefined, async () => {\n await assignSchedules({\n request: {\n companyId: ensureRequired(companyId),\n payScheduleAssignmentBody: assignment,\n },\n })\n onEvent(componentEvents.PAY_SCHEDULE_ASSIGNED, { ...assignment, employeeChanges })\n })\n }}\n />\n )\n}\n"],"names":["AssignmentTypeStep","companyId","assignmentType","onEvent","useFlow","data","error","isPending","useDepartmentsGetAll","isAssignmentAccessDenied","employees","useAssignableEmployees","jsx","BaseLayout","AssignmentTypeStepPresentation","getCompanyDepartments","componentEvents","type","AssignmentScheduleStep","defaultPayScheduleUuid","hourlyPayScheduleUuid","salariedPayScheduleUuid","paySchedules","usePaySchedulesGetAllSuspense","ensureRequired","schedules","activeSchedule","s","preselect","uuid","PayScheduleAssignmentBodyType","AssignmentEmployeeStep","AssignmentDepartmentStep","AssignmentCompensationStepPresentation","selection","AssignmentScheduleStepPresentation","selectedEmployees","roster","useAssignableEmployeesSuspense","usePaySchedulesGetAssignmentsSuspense","assignment","isEmpty","t","useTranslation","useEffect","EmployeeAccessWarning","fallback","schedule","validSchedule","employee","selected","entry","stored","status","getPrimaryCompensation","FlsaStatus","AssignmentEmployeeStepPresentation","draft","onBack","label","backLabel","Components","useComponentContext","jsxs","Fragment","selectedDepartments","useDepartmentsGetAllSuspense","departments","hasDepartments","fallbackUuid","AssignmentDepartmentStepPresentation","department","AssignmentCreateScheduleStep","PayScheduleForm","AssignmentReviewStep","baseSubmitHandler","useBase","employeeChanges","setEmployeeChanges","useState","previewAssignment","isPreviewLoading","usePaySchedulesPreviewAssignmentMutation","assignSchedules","isAssigning","usePaySchedulesAssignMutation","useMemo","selections","firstSchedule","defaultUuid","hourly","salaried","response","AssignmentReviewStepPresentation"],"mappings":"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"}
|
package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/departmentAccess.js
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { GustoEmbeddedError as r } from "@gusto/embedded-api/models/errors/gustoembeddederror";
|
|
2
|
+
function n(t) {
|
|
3
|
+
return (t ?? []).filter(
|
|
4
|
+
(e) => !!e.uuid
|
|
5
|
+
);
|
|
6
|
+
}
|
|
7
|
+
function a(t) {
|
|
8
|
+
if (!(t instanceof r) || t.httpMeta.response.status !== 403) return !1;
|
|
9
|
+
try {
|
|
10
|
+
const e = JSON.parse(t.httpMeta.body);
|
|
11
|
+
return typeof e == "object" && e !== null && "errors" in e && Array.isArray(e.errors) && e.errors.some(
|
|
12
|
+
(o) => typeof o == "object" && o !== null && "category" in o && o.category === "missing_oauth_scopes"
|
|
13
|
+
);
|
|
14
|
+
} catch {
|
|
15
|
+
return !1;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
export {
|
|
19
|
+
n as getCompanyDepartments,
|
|
20
|
+
a as isAssignmentAccessDenied
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=departmentAccess.js.map
|
package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/departmentAccess.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"departmentAccess.js","sources":["../../../../../../src/components/Company/PaySchedule/management/PayScheduleAssignment/departmentAccess.ts"],"sourcesContent":["import { GustoEmbeddedError } from '@gusto/embedded-api/models/errors/gustoembeddederror'\nimport type { Department } from '@gusto/embedded-api/models/components/department'\n\n/**\n * Narrows department responses to entries that can be assigned a schedule.\n *\n * @param departments - Departments returned by the API.\n * @returns Departments with a usable UUID.\n * @internal\n */\nexport function getCompanyDepartments(departments: Department[] | undefined) {\n return (departments ?? []).filter((department): department is Department & { uuid: string } =>\n Boolean(department.uuid),\n )\n}\n\n/**\n * Identifies an assignment data request rejected for missing OAuth scopes.\n *\n * @param error - Assignment query error.\n * @returns Whether access is unavailable because a required scope is missing.\n * @internal\n */\nexport function isAssignmentAccessDenied(error: unknown): boolean {\n if (!(error instanceof GustoEmbeddedError) || error.httpMeta.response.status !== 403) return false\n try {\n const body: unknown = JSON.parse(error.httpMeta.body)\n return (\n typeof body === 'object' &&\n body !== null &&\n 'errors' in body &&\n Array.isArray(body.errors) &&\n body.errors.some(\n (entry: unknown) =>\n typeof entry === 'object' &&\n entry !== null &&\n 'category' in entry &&\n entry.category === 'missing_oauth_scopes',\n )\n )\n } catch {\n return false\n }\n}\n"],"names":["getCompanyDepartments","departments","department","isAssignmentAccessDenied","error","GustoEmbeddedError","body","entry"],"mappings":";AAUO,SAASA,EAAsBC,GAAuC;AAC3E,UAAQA,KAAe,CAAA,GAAI;AAAA,IAAO,CAACC,MACjC,EAAQA,EAAW;AAAA,EAAI;AAE3B;AASO,SAASC,EAAyBC,GAAyB;AAChE,MAAI,EAAEA,aAAiBC,MAAuBD,EAAM,SAAS,SAAS,WAAW,IAAK,QAAO;AAC7F,MAAI;AACF,UAAME,IAAgB,KAAK,MAAMF,EAAM,SAAS,IAAI;AACpD,WACE,OAAOE,KAAS,YAChBA,MAAS,QACT,YAAYA,KACZ,MAAM,QAAQA,EAAK,MAAM,KACzBA,EAAK,OAAO;AAAA,MACV,CAACC,MACC,OAAOA,KAAU,YACjBA,MAAU,QACV,cAAcA,KACdA,EAAM,aAAa;AAAA,IAAA;AAAA,EAG3B,QAAQ;AACN,WAAO;AAAA,EACT;AACF;"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
function r(o) {
|
|
2
|
+
return o.jobs?.find((n) => n.primary) ?? o.jobs?.[0];
|
|
3
|
+
}
|
|
4
|
+
function t(o) {
|
|
5
|
+
const n = r(o);
|
|
6
|
+
if (n?.currentCompensationUuid !== null)
|
|
7
|
+
return n?.currentCompensationUuid ? n.compensations?.find((i) => i.uuid === n.currentCompensationUuid) : n?.compensations?.[0];
|
|
8
|
+
}
|
|
9
|
+
export {
|
|
10
|
+
t as getPrimaryCompensation,
|
|
11
|
+
r as getPrimaryJob
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=employeeJob.js.map
|
package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/employeeJob.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"employeeJob.js","sources":["../../../../../../src/components/Company/PaySchedule/management/PayScheduleAssignment/employeeJob.ts"],"sourcesContent":["import type { ShowEmployees } from '@gusto/embedded-api/models/components/showemployees'\n\n/**\n * Finds the primary job, falling back to the first job for older responses.\n *\n * @param employee - Employee whose job is needed.\n * @returns The primary job, or undefined when no jobs exist.\n * @internal\n */\nexport function getPrimaryJob(employee: Pick<ShowEmployees, 'jobs'>) {\n return employee.jobs?.find(job => job.primary) ?? employee.jobs?.[0]\n}\n\n/**\n * Finds the primary job's current compensation without depending on array order.\n *\n * @param employee - Employee whose compensation is needed.\n * @returns The named current compensation, or the first record when no pointer is supplied.\n * @internal\n */\nexport function getPrimaryCompensation(employee: Pick<ShowEmployees, 'jobs'>) {\n const job = getPrimaryJob(employee)\n if (job?.currentCompensationUuid === null) return undefined\n return job?.currentCompensationUuid\n ? job.compensations?.find(compensation => compensation.uuid === job.currentCompensationUuid)\n : job?.compensations?.[0]\n}\n"],"names":["getPrimaryJob","employee","job","getPrimaryCompensation","compensation"],"mappings":"AASO,SAASA,EAAcC,GAAuC;AACnE,SAAOA,EAAS,MAAM,KAAK,CAAAC,MAAOA,EAAI,OAAO,KAAKD,EAAS,OAAO,CAAC;AACrE;AASO,SAASE,EAAuBF,GAAuC;AAC5E,QAAMC,IAAMF,EAAcC,CAAQ;AAClC,MAAIC,GAAK,4BAA4B;AACrC,WAAOA,GAAK,0BACRA,EAAI,eAAe,KAAK,CAAAE,MAAgBA,EAAa,SAASF,EAAI,uBAAuB,IACzFA,GAAK,gBAAgB,CAAC;AAC5B;"}
|