@gusto/embedded-react-sdk 0.45.0 → 0.46.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +64 -0
- package/dist/components/Common/DataView/DataCards/DataCards.d.ts +2 -1
- package/dist/components/Common/DataView/DataCards/DataCards.js +14 -13
- package/dist/components/Common/DataView/DataCards/DataCards.js.map +1 -1
- package/dist/components/Common/DataView/DataTable/DataTable.d.ts +2 -1
- package/dist/components/Common/DataView/DataTable/DataTable.js +51 -50
- package/dist/components/Common/DataView/DataTable/DataTable.js.map +1 -1
- package/dist/components/Common/DataView/DataView.d.ts +1 -0
- package/dist/components/Common/DataView/DataView.js.map +1 -1
- package/dist/components/Common/DataView/useDataView.d.ts +8 -1
- package/dist/components/Common/DataView/useDataView.js +20 -17
- package/dist/components/Common/DataView/useDataView.js.map +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +20 -4
- package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +20 -4
- package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/useAssignSignatory.js +22 -6
- package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountForm/context.js +20 -4
- package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
- package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +20 -4
- package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
- package/dist/components/Company/DocumentSigner/shared/useSignCompanyForm/fields.js +4 -4
- package/dist/components/Company/FederalTaxes/useFederalTaxes.js +28 -12
- package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
- package/dist/components/Company/Industry/Context.js +23 -7
- package/dist/components/Company/Industry/Context.js.map +1 -1
- package/dist/components/Company/Locations/LocationForm/useLocationForm.js +20 -4
- package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
- package/dist/components/Company/Locations/LocationsList/useLocationsList.js +20 -4
- package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
- package/dist/components/Company/OnboardingOverview/context.js +20 -4
- package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
- package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/fields.js +5 -5
- package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +20 -4
- package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesList/context.js +20 -4
- package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
- package/dist/components/Contractor/Address/useAddress.js +22 -6
- package/dist/components/Contractor/Address/useAddress.js.map +1 -1
- package/dist/components/Contractor/Profile/useContractorProfile.js +52 -42
- package/dist/components/Contractor/Profile/useContractorProfile.js.map +1 -1
- package/dist/components/Employee/Compensation/management/AddAnotherJob/AddAnotherJob.d.ts +9 -0
- package/dist/components/Employee/Compensation/management/AddAnotherJob/AddAnotherJob.js +76 -0
- package/dist/components/Employee/Compensation/management/AddAnotherJob/AddAnotherJob.js.map +1 -0
- package/dist/components/Employee/Compensation/management/AddAnotherJob/AddAnotherJob.module.scss.js +8 -0
- package/dist/components/Employee/Compensation/management/AddAnotherJob/AddAnotherJob.module.scss.js.map +1 -0
- package/dist/components/Employee/Compensation/management/EditCompensation/EditCompensation.d.ts +11 -0
- package/dist/components/Employee/Compensation/management/EditCompensation/EditCompensation.js +85 -0
- package/dist/components/Employee/Compensation/management/EditCompensation/EditCompensation.js.map +1 -0
- package/dist/components/Employee/Compensation/management/EditCompensation/EditCompensation.module.scss.js +8 -0
- package/dist/components/Employee/Compensation/management/EditCompensation/EditCompensation.module.scss.js.map +1 -0
- package/dist/components/Employee/Compensation/management/EditCompensation/index.d.ts +3 -0
- package/dist/components/Employee/Compensation/management/EditPendingCompensation/EditPendingCompensation.d.ts +25 -0
- package/dist/components/Employee/Compensation/management/EditPendingCompensation/EditPendingCompensation.js +81 -0
- package/dist/components/Employee/Compensation/management/EditPendingCompensation/EditPendingCompensation.js.map +1 -0
- package/dist/components/Employee/Compensation/management/EditPendingCompensation/EditPendingCompensation.module.scss.js +8 -0
- package/dist/components/Employee/Compensation/management/EditPendingCompensation/EditPendingCompensation.module.scss.js.map +1 -0
- package/dist/components/Employee/Compensation/management/ManagementCompensationFormBody.d.ts +18 -0
- package/dist/components/Employee/Compensation/management/ManagementCompensationFormBody.js +171 -0
- package/dist/components/Employee/Compensation/management/ManagementCompensationFormBody.js.map +1 -0
- package/dist/components/Employee/Compensation/management/index.d.ts +6 -0
- package/dist/components/Employee/Compensation/onboarding/EditCompensation/EditCompensation.d.ts +6 -1
- package/dist/components/Employee/Compensation/onboarding/EditCompensation/EditCompensation.js +67 -209
- package/dist/components/Employee/Compensation/onboarding/EditCompensation/EditCompensation.js.map +1 -1
- package/dist/components/Employee/Compensation/shared/AddCompensationFormBody.d.ts +18 -0
- package/dist/components/Employee/Compensation/shared/AddCompensationFormBody.js +169 -0
- package/dist/components/Employee/Compensation/shared/AddCompensationFormBody.js.map +1 -0
- package/dist/components/Employee/Compensation/shared/useCompensationForm/compensationSchema.d.ts +16 -0
- package/dist/components/Employee/Compensation/shared/useCompensationForm/compensationSchema.js +36 -30
- package/dist/components/Employee/Compensation/shared/useCompensationForm/compensationSchema.js.map +1 -1
- package/dist/components/Employee/Compensation/shared/useCompensationForm/fields.d.ts +1 -1
- package/dist/components/Employee/Compensation/shared/useCompensationForm/fields.js +4 -4
- package/dist/components/Employee/Compensation/shared/useCompensationForm/fields.js.map +1 -1
- package/dist/components/Employee/Compensation/shared/useCompensationForm/useCompensationForm.js +212 -187
- package/dist/components/Employee/Compensation/shared/useCompensationForm/useCompensationForm.js.map +1 -1
- package/dist/components/Employee/Compensation/shared/useJobForm/fields.js +6 -6
- package/dist/components/Employee/Compensation/shared/useJobForm/jobSchema.d.ts +8 -0
- package/dist/components/Employee/Compensation/shared/useJobForm/jobSchema.js +22 -17
- package/dist/components/Employee/Compensation/shared/useJobForm/jobSchema.js.map +1 -1
- package/dist/components/Employee/Compensation/shared/useJobForm/useJobForm.d.ts +12 -2
- package/dist/components/Employee/Compensation/shared/useJobForm/useJobForm.js +115 -110
- package/dist/components/Employee/Compensation/shared/useJobForm/useJobForm.js.map +1 -1
- package/dist/components/Employee/Dashboard/BasicDetailsView.d.ts +8 -3
- package/dist/components/Employee/Dashboard/BasicDetailsView.js +108 -84
- package/dist/components/Employee/Dashboard/BasicDetailsView.js.map +1 -1
- package/dist/components/Employee/Dashboard/Dashboard.d.ts +2 -0
- package/dist/components/Employee/Dashboard/Dashboard.js +86 -68
- package/dist/components/Employee/Dashboard/Dashboard.js.map +1 -1
- package/dist/components/Employee/Dashboard/DashboardComponents.d.ts +8 -4
- package/dist/components/Employee/Dashboard/DashboardComponents.js +147 -93
- package/dist/components/Employee/Dashboard/DashboardComponents.js.map +1 -1
- package/dist/components/Employee/Dashboard/DocumentsView.js +18 -11
- package/dist/components/Employee/Dashboard/DocumentsView.js.map +1 -1
- package/dist/components/Employee/Dashboard/JobAndPayView.js +304 -264
- package/dist/components/Employee/Dashboard/JobAndPayView.js.map +1 -1
- package/dist/components/Employee/Dashboard/JobAndPayView.module.scss.js +10 -0
- package/dist/components/Employee/Dashboard/JobAndPayView.module.scss.js.map +1 -0
- package/dist/components/Employee/Dashboard/TaxesView.d.ts +7 -2
- package/dist/components/Employee/Dashboard/TaxesView.js +68 -54
- package/dist/components/Employee/Dashboard/TaxesView.js.map +1 -1
- package/dist/components/Employee/Dashboard/dashboardStateMachine.js +152 -142
- package/dist/components/Employee/Dashboard/dashboardStateMachine.js.map +1 -1
- package/dist/components/Employee/Dashboard/getPendingCompensationChanges.d.ts +6 -0
- package/dist/components/Employee/Dashboard/getPendingCompensationChanges.js +13 -12
- package/dist/components/Employee/Dashboard/getPendingCompensationChanges.js.map +1 -1
- package/dist/components/Employee/Dashboard/hooks/useEmployeeBasicDetails.d.ts +12 -5
- package/dist/components/Employee/Dashboard/hooks/useEmployeeBasicDetails.js +21 -21
- package/dist/components/Employee/Dashboard/hooks/useEmployeeBasicDetails.js.map +1 -1
- package/dist/components/Employee/Dashboard/hooks/useEmployeeCompensation.d.ts +13 -3
- package/dist/components/Employee/Dashboard/hooks/useEmployeeCompensation.js +53 -55
- package/dist/components/Employee/Dashboard/hooks/useEmployeeCompensation.js.map +1 -1
- package/dist/components/Employee/Dashboard/hooks/useEmployeeForms.d.ts +10 -4
- package/dist/components/Employee/Dashboard/hooks/useEmployeeForms.js +10 -12
- package/dist/components/Employee/Dashboard/hooks/useEmployeeForms.js.map +1 -1
- package/dist/components/Employee/Dashboard/hooks/useEmployeeTaxes.d.ts +10 -3
- package/dist/components/Employee/Dashboard/hooks/useEmployeeTaxes.js +19 -14
- package/dist/components/Employee/Dashboard/hooks/useEmployeeTaxes.js.map +1 -1
- package/dist/components/Employee/Deductions/shared/useChildSupportGarnishmentForm/fields.js +8 -8
- package/dist/components/Employee/Deductions/shared/useDeductionForm/fields.js +4 -4
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js +20 -4
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
- package/dist/components/Employee/Documents/shared/useSignEmployeeForm/fields.js +1 -1
- package/dist/components/Employee/EmployeeList/management/ManagementEmployeeList.js +37 -40
- package/dist/components/Employee/EmployeeList/management/ManagementEmployeeList.js.map +1 -1
- package/dist/components/Employee/EmployeeList/management/ManagementEmployeeListView.d.ts +1 -2
- package/dist/components/Employee/EmployeeList/management/ManagementEmployeeListView.js +64 -71
- package/dist/components/Employee/EmployeeList/management/ManagementEmployeeListView.js.map +1 -1
- package/dist/components/Employee/EmployeeListFlow/EmployeeListFlow.d.ts +2 -0
- package/dist/components/Employee/EmployeeListFlow/EmployeeListFlow.js +25 -0
- package/dist/components/Employee/EmployeeListFlow/EmployeeListFlow.js.map +1 -0
- package/dist/components/Employee/EmployeeListFlow/EmployeeListFlowComponents.d.ts +13 -0
- package/dist/components/Employee/EmployeeListFlow/EmployeeListFlowComponents.js +37 -0
- package/dist/components/Employee/EmployeeListFlow/EmployeeListFlowComponents.js.map +1 -0
- package/dist/components/Employee/EmployeeListFlow/employeeListStateMachine.d.ts +6 -0
- package/dist/components/Employee/EmployeeListFlow/employeeListStateMachine.js +69 -0
- package/dist/components/Employee/EmployeeListFlow/employeeListStateMachine.js.map +1 -0
- package/dist/components/Employee/EmployeeListFlow/index.d.ts +3 -0
- package/dist/components/Employee/FederalTaxes/shared/useFederalTaxesForm/fields.js +4 -4
- package/dist/components/Employee/HomeAddress/management/HomeAddress.js +15 -12
- package/dist/components/Employee/HomeAddress/management/HomeAddress.js.map +1 -1
- package/dist/components/Employee/HomeAddress/management/HomeAddressView.d.ts +2 -1
- package/dist/components/Employee/HomeAddress/management/HomeAddressView.js +86 -83
- package/dist/components/Employee/HomeAddress/management/HomeAddressView.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/shared/useBankForm/fields.js +1 -1
- package/dist/components/Employee/PaymentMethod/shared/useSplitPaymentsForm/splitFieldFactory.js +4 -4
- package/dist/components/Employee/Profile/shared/useEmployeeDetailsForm/fields.js +8 -8
- package/dist/components/Employee/Profile/shared/useHomeAddressForm/fields.js +5 -5
- package/dist/components/Employee/Profile/shared/useWorkAddressForm/fields.js +4 -4
- package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/fieldComponents.js +8 -8
- package/dist/components/Employee/Taxes/useTaxes.js +20 -4
- package/dist/components/Employee/Taxes/useTaxes.js.map +1 -1
- package/dist/components/Employee/WorkAddress/management/WorkAddress.js +14 -11
- package/dist/components/Employee/WorkAddress/management/WorkAddress.js.map +1 -1
- package/dist/components/Employee/WorkAddress/management/WorkAddressView.d.ts +2 -1
- package/dist/components/Employee/WorkAddress/management/WorkAddressView.js +92 -89
- package/dist/components/Employee/WorkAddress/management/WorkAddressView.js.map +1 -1
- package/dist/components/Employee/exports/employeeManagement.d.ts +2 -0
- package/dist/components/Employee/exports/employeeManagement.js +18 -16
- package/dist/components/Employee/exports/employeeManagement.js.map +1 -1
- package/dist/components/Employee/index.d.ts +2 -0
- package/dist/components/Employee/index.js +32 -30
- package/dist/components/Employee/index.js.map +1 -1
- package/dist/components/Flow/FlowHeader.js +34 -31
- package/dist/components/Flow/FlowHeader.js.map +1 -1
- package/dist/components/Flow/useFlow.d.ts +12 -0
- package/dist/components/Flow/useFlow.js.map +1 -1
- package/dist/components/Payroll/GrossUpModal/GrossUpModal.js +34 -26
- package/dist/components/Payroll/GrossUpModal/GrossUpModal.js.map +1 -1
- package/dist/components/Payroll/usePreparedPayrollData.js +36 -22
- package/dist/components/Payroll/usePreparedPayrollData.js.map +1 -1
- package/dist/components/TimeOff/PolicyList/PolicyList.js +92 -69
- package/dist/components/TimeOff/PolicyList/PolicyList.js.map +1 -1
- package/dist/components/TimeOff/PolicyList/PolicyListPresentation.js +23 -23
- package/dist/components/TimeOff/PolicyList/PolicyListPresentation.js.map +1 -1
- package/dist/components/TimeOff/PolicySettings/PolicySettingsPresentation.js +52 -40
- package/dist/components/TimeOff/PolicySettings/PolicySettingsPresentation.js.map +1 -1
- package/dist/components/TimeOff/TimeOffFlow/TimeOffFlowComponents.d.ts +1 -1
- package/dist/components/TimeOff/TimeOffFlow/TimeOffFlowComponents.js.map +1 -1
- package/dist/components/TimeOff/TimeOffFlow/timeOffStateMachine.js +73 -56
- package/dist/components/TimeOff/TimeOffFlow/timeOffStateMachine.js.map +1 -1
- package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationForm.js +58 -58
- package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationForm.js.map +1 -1
- package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormPresentation.d.ts +1 -1
- package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormPresentation.js +91 -87
- package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormPresentation.js.map +1 -1
- package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormTypes.d.ts +2 -0
- package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesHoliday.js +91 -124
- package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesHoliday.js.map +1 -1
- package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentation.d.ts +1 -1
- package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentation.js +72 -87
- package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentation.js.map +1 -1
- package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentationTypes.d.ts +1 -6
- package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesTimeOff.js +160 -220
- package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesTimeOff.js.map +1 -1
- package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/useSelectEmployeesData.d.ts +7 -3
- package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/useSelectEmployeesData.js +77 -54
- package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/useSelectEmployeesData.js.map +1 -1
- package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/useSelectEmployeesData.test.d.ts +1 -0
- package/dist/components/TimeOff/TimeOffPolicyDetail/EditEmployeeBalanceModal.js +12 -11
- package/dist/components/TimeOff/TimeOffPolicyDetail/EditEmployeeBalanceModal.js.map +1 -1
- package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetail.js +177 -147
- package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetail.js.map +1 -1
- package/dist/components/TimeOff/shared/EmployeeTable/EmployeeTable.d.ts +1 -1
- package/dist/components/TimeOff/shared/EmployeeTable/EmployeeTable.js +38 -36
- package/dist/components/TimeOff/shared/EmployeeTable/EmployeeTable.js.map +1 -1
- package/dist/components/TimeOff/shared/EmployeeTable/EmployeeTableTypes.d.ts +2 -0
- package/dist/i18n/en/Company.TimeOff.SelectEmployees.json.js +10 -10
- package/dist/i18n/en/Company.TimeOff.TimeOffPolicies.json.js +17 -15
- package/dist/i18n/en/Company.TimeOff.TimeOffPolicies.json.js.map +1 -1
- package/dist/i18n/en/Company.TimeOff.TimeOffPolicyDetails.json.js +9 -9
- package/dist/i18n/en/Employee.Compensation.json.js +68 -56
- package/dist/i18n/en/Employee.Compensation.json.js.map +1 -1
- package/dist/i18n/en/Employee.Dashboard.json.js +26 -24
- package/dist/i18n/en/Employee.Dashboard.json.js.map +1 -1
- package/dist/i18n/en/Employee.DocumentManager.json.js +1 -1
- package/dist/i18n/en/Employee.HomeAddress.Management.json.js +12 -10
- package/dist/i18n/en/Employee.HomeAddress.Management.json.js.map +1 -1
- package/dist/i18n/en/Employee.ManagementEmployeeList.json.js +32 -30
- package/dist/i18n/en/Employee.ManagementEmployeeList.json.js.map +1 -1
- package/dist/i18n/en/Employee.WorkAddress.Management.json.js +16 -14
- package/dist/i18n/en/Employee.WorkAddress.Management.json.js.map +1 -1
- package/dist/i18n/en/common.json.d.ts +21 -0
- package/dist/partner-hook-utils/form/fields/DatePickerHookField.js +33 -32
- package/dist/partner-hook-utils/form/fields/DatePickerHookField.js.map +1 -1
- package/dist/partner-hook-utils/types.d.ts +4 -0
- package/dist/shared/constants.d.ts +4 -0
- package/dist/shared/constants.js +20 -18
- package/dist/shared/constants.js.map +1 -1
- package/dist/style.css +1 -1
- package/dist/types/i18next.d.ts +45 -11
- package/docs/reference/endpoint-inventory.json +24 -8
- package/package.json +1 -1
|
@@ -1,264 +1,274 @@
|
|
|
1
|
-
import { state as d, transition as
|
|
2
|
-
import { ProfileContextual as
|
|
3
|
-
import { componentEvents as
|
|
4
|
-
const o =
|
|
5
|
-
(
|
|
6
|
-
...
|
|
7
|
-
component:
|
|
1
|
+
import { state as d, transition as e, reduce as t } from "robot3";
|
|
2
|
+
import { ProfileContextual as r, HomeAddressContextual as u, WorkAddressContextual as a, FederalTaxesContextual as i, StateTaxesContextual as C, PaymentBankFormContextual as _, PaymentSplitViewContextual as D, DocumentManagerContextual as O, AddJobContextual as x, EditCompensationContextual as T, AddAnotherJobContextual as m, DeductionFormContextual as A, DashboardViewContextual as c } from "./DashboardComponents.js";
|
|
3
|
+
import { componentEvents as n } from "../../../shared/constants.js";
|
|
4
|
+
const o = t(
|
|
5
|
+
(E) => ({
|
|
6
|
+
...E,
|
|
7
|
+
component: c,
|
|
8
8
|
header: null,
|
|
9
9
|
currentJob: null,
|
|
10
10
|
successAlert: null
|
|
11
11
|
})
|
|
12
|
-
),
|
|
12
|
+
), s = (E) => t(
|
|
13
13
|
(l) => ({
|
|
14
14
|
...l,
|
|
15
|
-
component:
|
|
15
|
+
component: c,
|
|
16
16
|
header: null,
|
|
17
17
|
currentJob: null,
|
|
18
|
-
successAlert:
|
|
18
|
+
successAlert: E
|
|
19
19
|
})
|
|
20
20
|
), M = {
|
|
21
21
|
index: d(
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
e(
|
|
23
|
+
n.EMPLOYEE_UPDATE,
|
|
24
24
|
"profile",
|
|
25
|
-
|
|
26
|
-
(
|
|
27
|
-
...
|
|
28
|
-
component:
|
|
29
|
-
header: { type: "minimal" },
|
|
25
|
+
t(
|
|
26
|
+
(E) => ({
|
|
27
|
+
...E,
|
|
28
|
+
component: r,
|
|
30
29
|
successAlert: null
|
|
31
30
|
})
|
|
32
31
|
)
|
|
33
32
|
),
|
|
34
|
-
|
|
35
|
-
|
|
33
|
+
e(
|
|
34
|
+
n.EMPLOYEE_HOME_ADDRESS,
|
|
36
35
|
"homeAddress",
|
|
37
|
-
|
|
38
|
-
(
|
|
39
|
-
...
|
|
40
|
-
component:
|
|
41
|
-
header: { type: "minimal" },
|
|
36
|
+
t(
|
|
37
|
+
(E) => ({
|
|
38
|
+
...E,
|
|
39
|
+
component: u,
|
|
42
40
|
successAlert: null
|
|
43
41
|
})
|
|
44
42
|
)
|
|
45
43
|
),
|
|
46
|
-
|
|
47
|
-
|
|
44
|
+
e(
|
|
45
|
+
n.EMPLOYEE_WORK_ADDRESS,
|
|
48
46
|
"workAddress",
|
|
49
|
-
|
|
50
|
-
(
|
|
51
|
-
...
|
|
52
|
-
component:
|
|
53
|
-
header: { type: "minimal" },
|
|
47
|
+
t(
|
|
48
|
+
(E) => ({
|
|
49
|
+
...E,
|
|
50
|
+
component: a,
|
|
54
51
|
successAlert: null
|
|
55
52
|
})
|
|
56
53
|
)
|
|
57
54
|
),
|
|
58
|
-
|
|
59
|
-
|
|
55
|
+
e(
|
|
56
|
+
n.EMPLOYEE_FEDERAL_TAXES_EDIT,
|
|
60
57
|
"federalTaxes",
|
|
61
|
-
|
|
62
|
-
(
|
|
63
|
-
...
|
|
64
|
-
component:
|
|
65
|
-
header: { type: "minimal" },
|
|
58
|
+
t(
|
|
59
|
+
(E) => ({
|
|
60
|
+
...E,
|
|
61
|
+
component: i,
|
|
66
62
|
successAlert: null
|
|
67
63
|
})
|
|
68
64
|
)
|
|
69
65
|
),
|
|
70
|
-
|
|
71
|
-
|
|
66
|
+
e(
|
|
67
|
+
n.EMPLOYEE_STATE_TAXES_EDIT,
|
|
72
68
|
"stateTaxes",
|
|
73
|
-
|
|
74
|
-
(
|
|
75
|
-
...
|
|
76
|
-
component:
|
|
77
|
-
header: { type: "minimal" },
|
|
69
|
+
t(
|
|
70
|
+
(E) => ({
|
|
71
|
+
...E,
|
|
72
|
+
component: C,
|
|
78
73
|
successAlert: null
|
|
79
74
|
})
|
|
80
75
|
)
|
|
81
76
|
),
|
|
82
|
-
|
|
83
|
-
|
|
77
|
+
e(
|
|
78
|
+
n.EMPLOYEE_BANK_ACCOUNT_CREATE,
|
|
84
79
|
"paymentBankForm",
|
|
85
|
-
|
|
86
|
-
(
|
|
87
|
-
...
|
|
88
|
-
component:
|
|
89
|
-
header: { type: "minimal" },
|
|
80
|
+
t(
|
|
81
|
+
(E) => ({
|
|
82
|
+
...E,
|
|
83
|
+
component: _,
|
|
90
84
|
successAlert: null
|
|
91
85
|
})
|
|
92
86
|
)
|
|
93
87
|
),
|
|
94
|
-
|
|
95
|
-
|
|
88
|
+
e(
|
|
89
|
+
n.EMPLOYEE_SPLIT_PAYCHECK,
|
|
96
90
|
"paymentSplitView",
|
|
97
|
-
|
|
98
|
-
(
|
|
99
|
-
...
|
|
100
|
-
component:
|
|
101
|
-
header: { type: "minimal" },
|
|
91
|
+
t(
|
|
92
|
+
(E) => ({
|
|
93
|
+
...E,
|
|
94
|
+
component: D,
|
|
102
95
|
successAlert: null
|
|
103
96
|
})
|
|
104
97
|
)
|
|
105
98
|
),
|
|
106
|
-
|
|
107
|
-
|
|
99
|
+
e(
|
|
100
|
+
n.EMPLOYEE_VIEW_FORM_TO_SIGN,
|
|
108
101
|
"documentManager",
|
|
109
|
-
|
|
110
|
-
(
|
|
111
|
-
...
|
|
112
|
-
component:
|
|
113
|
-
header: { type: "minimal" },
|
|
102
|
+
t(
|
|
103
|
+
(E, l) => ({
|
|
104
|
+
...E,
|
|
105
|
+
component: O,
|
|
114
106
|
formId: l.payload.formId,
|
|
115
107
|
successAlert: null
|
|
116
108
|
})
|
|
117
109
|
)
|
|
118
110
|
),
|
|
119
|
-
|
|
120
|
-
|
|
111
|
+
e(
|
|
112
|
+
n.EMPLOYEE_JOB_ADD,
|
|
121
113
|
"addJob",
|
|
122
|
-
|
|
123
|
-
(
|
|
124
|
-
...
|
|
125
|
-
component:
|
|
126
|
-
header: { type: "minimal" },
|
|
114
|
+
t(
|
|
115
|
+
(E) => ({
|
|
116
|
+
...E,
|
|
117
|
+
component: x,
|
|
127
118
|
currentJob: null,
|
|
128
119
|
successAlert: null
|
|
129
120
|
})
|
|
130
121
|
)
|
|
131
122
|
),
|
|
132
|
-
|
|
133
|
-
|
|
123
|
+
e(
|
|
124
|
+
n.EMPLOYEE_COMPENSATION_CREATE,
|
|
134
125
|
"editCompensation",
|
|
135
|
-
|
|
136
|
-
(
|
|
137
|
-
...
|
|
138
|
-
component:
|
|
139
|
-
header: { type: "minimal" },
|
|
126
|
+
t(
|
|
127
|
+
(E, l) => ({
|
|
128
|
+
...E,
|
|
129
|
+
component: T,
|
|
140
130
|
currentJob: l.payload.job,
|
|
141
131
|
successAlert: null
|
|
142
132
|
})
|
|
143
133
|
)
|
|
144
134
|
),
|
|
145
|
-
|
|
146
|
-
|
|
135
|
+
e(
|
|
136
|
+
n.EMPLOYEE_JOB_ADD_ANOTHER,
|
|
147
137
|
"addAnotherJob",
|
|
148
|
-
|
|
149
|
-
(
|
|
150
|
-
...
|
|
151
|
-
component:
|
|
152
|
-
header: { type: "minimal" },
|
|
138
|
+
t(
|
|
139
|
+
(E) => ({
|
|
140
|
+
...E,
|
|
141
|
+
component: m,
|
|
153
142
|
currentJob: null,
|
|
154
143
|
successAlert: null
|
|
155
144
|
})
|
|
156
145
|
)
|
|
157
146
|
),
|
|
158
|
-
|
|
159
|
-
|
|
147
|
+
e(
|
|
148
|
+
n.EMPLOYEE_BANK_ACCOUNT_DELETED,
|
|
160
149
|
"index",
|
|
161
|
-
|
|
162
|
-
(
|
|
163
|
-
...
|
|
150
|
+
t(
|
|
151
|
+
(E) => ({
|
|
152
|
+
...E,
|
|
164
153
|
successAlert: "bankAccountDeleted"
|
|
165
154
|
})
|
|
166
155
|
)
|
|
167
156
|
),
|
|
168
|
-
|
|
169
|
-
|
|
157
|
+
e(
|
|
158
|
+
n.EMPLOYEE_DEDUCTION_ADD,
|
|
170
159
|
"deductionForm",
|
|
171
|
-
|
|
172
|
-
(
|
|
173
|
-
...
|
|
174
|
-
component:
|
|
175
|
-
header: { type: "minimal" },
|
|
160
|
+
t(
|
|
161
|
+
(E) => ({
|
|
162
|
+
...E,
|
|
163
|
+
component: A,
|
|
176
164
|
successAlert: null,
|
|
177
165
|
editingDeductionId: void 0
|
|
178
166
|
})
|
|
179
167
|
)
|
|
180
168
|
),
|
|
181
|
-
|
|
182
|
-
|
|
169
|
+
e(
|
|
170
|
+
n.EMPLOYEE_DEDUCTION_EDIT,
|
|
183
171
|
"deductionForm",
|
|
184
|
-
|
|
185
|
-
(
|
|
186
|
-
...
|
|
187
|
-
component:
|
|
188
|
-
header: { type: "minimal" },
|
|
172
|
+
t(
|
|
173
|
+
(E, l) => ({
|
|
174
|
+
...E,
|
|
175
|
+
component: A,
|
|
189
176
|
successAlert: null,
|
|
190
177
|
editingDeductionId: l.payload.uuid
|
|
191
178
|
})
|
|
192
179
|
)
|
|
193
180
|
),
|
|
194
|
-
|
|
195
|
-
|
|
181
|
+
e(
|
|
182
|
+
n.EMPLOYEE_DEDUCTION_DELETED,
|
|
196
183
|
"index",
|
|
197
|
-
|
|
198
|
-
(
|
|
199
|
-
...
|
|
184
|
+
t(
|
|
185
|
+
(E) => ({
|
|
186
|
+
...E,
|
|
200
187
|
successAlert: "deductionDeleted"
|
|
201
188
|
})
|
|
202
189
|
)
|
|
203
190
|
),
|
|
204
|
-
|
|
205
|
-
|
|
191
|
+
e(
|
|
192
|
+
n.EMPLOYEE_DISMISS,
|
|
206
193
|
"index",
|
|
207
|
-
|
|
208
|
-
(
|
|
209
|
-
...
|
|
194
|
+
t(
|
|
195
|
+
(E) => ({
|
|
196
|
+
...E,
|
|
210
197
|
successAlert: null
|
|
211
198
|
})
|
|
212
199
|
)
|
|
200
|
+
),
|
|
201
|
+
e(
|
|
202
|
+
n.EMPLOYEE_DASHBOARD_TAB_CHANGE,
|
|
203
|
+
"index",
|
|
204
|
+
t(
|
|
205
|
+
(E, l) => ({
|
|
206
|
+
...E,
|
|
207
|
+
selectedTab: l.payload.tab
|
|
208
|
+
})
|
|
209
|
+
)
|
|
213
210
|
)
|
|
214
211
|
),
|
|
215
|
-
homeAddress: d(n
|
|
216
|
-
workAddress: d(n
|
|
212
|
+
homeAddress: d(e(n.CANCEL, "index", o)),
|
|
213
|
+
workAddress: d(e(n.CANCEL, "index", o)),
|
|
217
214
|
federalTaxes: d(
|
|
218
|
-
n
|
|
219
|
-
n
|
|
215
|
+
e(n.CANCEL, "index", o),
|
|
216
|
+
e(n.EMPLOYEE_FEDERAL_TAXES_DONE, "index", o)
|
|
220
217
|
),
|
|
221
|
-
stateTaxes: d(n
|
|
222
|
-
profile: d(n
|
|
218
|
+
stateTaxes: d(e(n.CANCEL, "index", o)),
|
|
219
|
+
profile: d(e(n.CANCEL, "index", o)),
|
|
223
220
|
paymentBankForm: d(
|
|
224
|
-
|
|
225
|
-
|
|
221
|
+
e(
|
|
222
|
+
n.EMPLOYEE_BANK_ACCOUNT_CREATED,
|
|
226
223
|
"index",
|
|
227
|
-
|
|
224
|
+
s("bankAccountAdded")
|
|
228
225
|
),
|
|
229
|
-
n
|
|
226
|
+
e(n.CANCEL, "index", o)
|
|
230
227
|
),
|
|
231
228
|
paymentSplitView: d(
|
|
232
|
-
|
|
233
|
-
|
|
229
|
+
e(
|
|
230
|
+
n.EMPLOYEE_PAYMENT_METHOD_UPDATED,
|
|
234
231
|
"index",
|
|
235
|
-
|
|
232
|
+
s("splitUpdated")
|
|
236
233
|
),
|
|
237
|
-
n
|
|
234
|
+
e(n.CANCEL, "index", o)
|
|
238
235
|
),
|
|
239
236
|
documentManager: d(
|
|
240
|
-
n
|
|
237
|
+
e(n.CANCEL, "index", o)
|
|
241
238
|
),
|
|
242
239
|
deductionForm: d(
|
|
243
|
-
|
|
244
|
-
|
|
240
|
+
e(
|
|
241
|
+
n.EMPLOYEE_DEDUCTION_CREATED,
|
|
245
242
|
"index",
|
|
246
|
-
|
|
243
|
+
s("deductionAdded")
|
|
247
244
|
),
|
|
248
|
-
|
|
249
|
-
|
|
245
|
+
e(
|
|
246
|
+
n.EMPLOYEE_DEDUCTION_UPDATED,
|
|
250
247
|
"index",
|
|
251
|
-
|
|
248
|
+
s("deductionUpdated")
|
|
252
249
|
),
|
|
253
|
-
n
|
|
254
|
-
n
|
|
250
|
+
e(n.EMPLOYEE_DEDUCTION_CANCEL, "index", o),
|
|
251
|
+
e(n.CANCEL, "index", o)
|
|
252
|
+
),
|
|
253
|
+
addJob: d(
|
|
254
|
+
e(
|
|
255
|
+
n.EMPLOYEE_COMPENSATION_UPDATED,
|
|
256
|
+
"index",
|
|
257
|
+
s("jobAdded")
|
|
258
|
+
),
|
|
259
|
+
e(n.CANCEL, "index", o)
|
|
255
260
|
),
|
|
256
|
-
addJob: d(n(t.CANCEL, "index", o)),
|
|
257
261
|
editCompensation: d(
|
|
258
|
-
n
|
|
262
|
+
e(n.EMPLOYEE_COMPENSATION_DONE, "index", o),
|
|
263
|
+
e(n.CANCEL, "index", o)
|
|
259
264
|
),
|
|
260
265
|
addAnotherJob: d(
|
|
261
|
-
|
|
266
|
+
e(
|
|
267
|
+
n.EMPLOYEE_COMPENSATION_UPDATED,
|
|
268
|
+
"index",
|
|
269
|
+
s("jobAdded")
|
|
270
|
+
),
|
|
271
|
+
e(n.CANCEL, "index", o)
|
|
262
272
|
)
|
|
263
273
|
};
|
|
264
274
|
export {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dashboardStateMachine.js","sources":["../../../../src/components/Employee/Dashboard/dashboardStateMachine.ts"],"sourcesContent":["import { transition, reduce, state } from 'robot3'\nimport type { Garnishment } from '@gusto/embedded-api/models/components/garnishment'\nimport type { Job } from '@gusto/embedded-api/models/components/job'\nimport {\n DashboardViewContextual,\n HomeAddressContextual,\n WorkAddressContextual,\n FederalTaxesContextual,\n StateTaxesContextual,\n ProfileContextual,\n PaymentBankFormContextual,\n PaymentSplitViewContextual,\n DocumentManagerContextual,\n DeductionFormContextual,\n AddJobPlaceholderContextual,\n EditCompensationPlaceholderContextual,\n AddAnotherJobPlaceholderContextual,\n type DashboardContextInterface,\n} from './DashboardComponents'\nimport { componentEvents } from '@/shared/constants'\nimport type { MachineEventType, MachineTransition } from '@/types/Helpers'\n\ntype EventPayloads = {\n [componentEvents.EMPLOYEE_VIEW_FORM_TO_SIGN]: { employeeId: string; formId: string }\n [componentEvents.EMPLOYEE_DEDUCTION_EDIT]: Garnishment\n [componentEvents.EMPLOYEE_COMPENSATION_CREATE]: { employeeId: string; job: Job }\n}\n\nconst returnToIndex = reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: DashboardViewContextual,\n header: null,\n currentJob: null,\n successAlert: null,\n }),\n)\n\nconst returnToIndexWithAlert = (alert: DashboardContextInterface['successAlert']) =>\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: DashboardViewContextual,\n header: null,\n currentJob: null,\n successAlert: alert,\n }),\n )\n\nexport const dashboardStateMachine = {\n index: state<MachineTransition>(\n transition(\n componentEvents.EMPLOYEE_UPDATE,\n 'profile',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: ProfileContextual,\n header: { type: 'minimal' },\n successAlert: null,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_HOME_ADDRESS,\n 'homeAddress',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: HomeAddressContextual,\n header: { type: 'minimal' },\n successAlert: null,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_WORK_ADDRESS,\n 'workAddress',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: WorkAddressContextual,\n header: { type: 'minimal' },\n successAlert: null,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_FEDERAL_TAXES_EDIT,\n 'federalTaxes',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: FederalTaxesContextual,\n header: { type: 'minimal' },\n successAlert: null,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_STATE_TAXES_EDIT,\n 'stateTaxes',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: StateTaxesContextual,\n header: { type: 'minimal' },\n successAlert: null,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_BANK_ACCOUNT_CREATE,\n 'paymentBankForm',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: PaymentBankFormContextual,\n header: { type: 'minimal' },\n successAlert: null,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_SPLIT_PAYCHECK,\n 'paymentSplitView',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: PaymentSplitViewContextual,\n header: { type: 'minimal' },\n successAlert: null,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_VIEW_FORM_TO_SIGN,\n 'documentManager',\n reduce(\n (\n ctx: DashboardContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.EMPLOYEE_VIEW_FORM_TO_SIGN>,\n ): DashboardContextInterface => ({\n ...ctx,\n component: DocumentManagerContextual,\n header: { type: 'minimal' },\n formId: ev.payload.formId,\n successAlert: null,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_JOB_ADD,\n 'addJob',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: AddJobPlaceholderContextual,\n header: { type: 'minimal' },\n currentJob: null,\n successAlert: null,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_COMPENSATION_CREATE,\n 'editCompensation',\n reduce(\n (\n ctx: DashboardContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.EMPLOYEE_COMPENSATION_CREATE>,\n ): DashboardContextInterface => ({\n ...ctx,\n component: EditCompensationPlaceholderContextual,\n header: { type: 'minimal' },\n currentJob: ev.payload.job,\n successAlert: null,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_JOB_ADD_ANOTHER,\n 'addAnotherJob',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: AddAnotherJobPlaceholderContextual,\n header: { type: 'minimal' },\n currentJob: null,\n successAlert: null,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_BANK_ACCOUNT_DELETED,\n 'index',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n successAlert: 'bankAccountDeleted',\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_DEDUCTION_ADD,\n 'deductionForm',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: DeductionFormContextual,\n header: { type: 'minimal' },\n successAlert: null,\n editingDeductionId: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_DEDUCTION_EDIT,\n 'deductionForm',\n reduce(\n (\n ctx: DashboardContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.EMPLOYEE_DEDUCTION_EDIT>,\n ): DashboardContextInterface => ({\n ...ctx,\n component: DeductionFormContextual,\n header: { type: 'minimal' },\n successAlert: null,\n editingDeductionId: ev.payload.uuid,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_DEDUCTION_DELETED,\n 'index',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n successAlert: 'deductionDeleted',\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_DISMISS,\n 'index',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n successAlert: null,\n }),\n ),\n ),\n ),\n homeAddress: state<MachineTransition>(transition(componentEvents.CANCEL, 'index', returnToIndex)),\n workAddress: state<MachineTransition>(transition(componentEvents.CANCEL, 'index', returnToIndex)),\n federalTaxes: state<MachineTransition>(\n transition(componentEvents.CANCEL, 'index', returnToIndex),\n transition(componentEvents.EMPLOYEE_FEDERAL_TAXES_DONE, 'index', returnToIndex),\n ),\n stateTaxes: state<MachineTransition>(transition(componentEvents.CANCEL, 'index', returnToIndex)),\n profile: state<MachineTransition>(transition(componentEvents.CANCEL, 'index', returnToIndex)),\n paymentBankForm: state<MachineTransition>(\n transition(\n componentEvents.EMPLOYEE_BANK_ACCOUNT_CREATED,\n 'index',\n returnToIndexWithAlert('bankAccountAdded'),\n ),\n transition(componentEvents.CANCEL, 'index', returnToIndex),\n ),\n paymentSplitView: state<MachineTransition>(\n transition(\n componentEvents.EMPLOYEE_PAYMENT_METHOD_UPDATED,\n 'index',\n returnToIndexWithAlert('splitUpdated'),\n ),\n transition(componentEvents.CANCEL, 'index', returnToIndex),\n ),\n documentManager: state<MachineTransition>(\n transition(componentEvents.CANCEL, 'index', returnToIndex),\n ),\n deductionForm: state<MachineTransition>(\n transition(\n componentEvents.EMPLOYEE_DEDUCTION_CREATED,\n 'index',\n returnToIndexWithAlert('deductionAdded'),\n ),\n transition(\n componentEvents.EMPLOYEE_DEDUCTION_UPDATED,\n 'index',\n returnToIndexWithAlert('deductionUpdated'),\n ),\n transition(componentEvents.EMPLOYEE_DEDUCTION_CANCEL, 'index', returnToIndex),\n transition(componentEvents.CANCEL, 'index', returnToIndex),\n ),\n addJob: state<MachineTransition>(transition(componentEvents.CANCEL, 'index', returnToIndex)),\n editCompensation: state<MachineTransition>(\n transition(componentEvents.CANCEL, 'index', returnToIndex),\n ),\n addAnotherJob: state<MachineTransition>(\n transition(componentEvents.CANCEL, 'index', returnToIndex),\n ),\n}\n"],"names":["returnToIndex","reduce","ctx","DashboardViewContextual","returnToIndexWithAlert","alert","dashboardStateMachine","state","transition","componentEvents","ProfileContextual","HomeAddressContextual","WorkAddressContextual","FederalTaxesContextual","StateTaxesContextual","PaymentBankFormContextual","PaymentSplitViewContextual","ev","DocumentManagerContextual","AddJobPlaceholderContextual","EditCompensationPlaceholderContextual","AddAnotherJobPlaceholderContextual","DeductionFormContextual"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dashboardStateMachine.js","sources":["../../../../src/components/Employee/Dashboard/dashboardStateMachine.ts"],"sourcesContent":["import { transition, reduce, state } from 'robot3'\nimport type { Garnishment } from '@gusto/embedded-api/models/components/garnishment'\nimport type { Job } from '@gusto/embedded-api/models/components/job'\nimport type { DashboardTab } from './Dashboard'\nimport {\n DashboardViewContextual,\n HomeAddressContextual,\n WorkAddressContextual,\n FederalTaxesContextual,\n StateTaxesContextual,\n ProfileContextual,\n PaymentBankFormContextual,\n PaymentSplitViewContextual,\n DocumentManagerContextual,\n DeductionFormContextual,\n AddJobContextual,\n EditCompensationContextual,\n AddAnotherJobContextual,\n type DashboardContextInterface,\n} from './DashboardComponents'\nimport { componentEvents } from '@/shared/constants'\nimport type { MachineEventType, MachineTransition } from '@/types/Helpers'\n\ntype EventPayloads = {\n [componentEvents.EMPLOYEE_VIEW_FORM_TO_SIGN]: { employeeId: string; formId: string }\n [componentEvents.EMPLOYEE_DEDUCTION_EDIT]: Garnishment\n [componentEvents.EMPLOYEE_COMPENSATION_CREATE]: { employeeId: string; job: Job }\n [componentEvents.EMPLOYEE_DASHBOARD_TAB_CHANGE]: { tab: DashboardTab }\n}\n\nconst returnToIndex = reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: DashboardViewContextual,\n header: null,\n currentJob: null,\n successAlert: null,\n }),\n)\n\nconst returnToIndexWithAlert = (alert: DashboardContextInterface['successAlert']) =>\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: DashboardViewContextual,\n header: null,\n currentJob: null,\n successAlert: alert,\n }),\n )\n\nexport const dashboardStateMachine = {\n index: state<MachineTransition>(\n transition(\n componentEvents.EMPLOYEE_UPDATE,\n 'profile',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: ProfileContextual,\n successAlert: null,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_HOME_ADDRESS,\n 'homeAddress',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: HomeAddressContextual,\n successAlert: null,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_WORK_ADDRESS,\n 'workAddress',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: WorkAddressContextual,\n successAlert: null,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_FEDERAL_TAXES_EDIT,\n 'federalTaxes',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: FederalTaxesContextual,\n successAlert: null,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_STATE_TAXES_EDIT,\n 'stateTaxes',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: StateTaxesContextual,\n successAlert: null,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_BANK_ACCOUNT_CREATE,\n 'paymentBankForm',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: PaymentBankFormContextual,\n successAlert: null,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_SPLIT_PAYCHECK,\n 'paymentSplitView',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: PaymentSplitViewContextual,\n successAlert: null,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_VIEW_FORM_TO_SIGN,\n 'documentManager',\n reduce(\n (\n ctx: DashboardContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.EMPLOYEE_VIEW_FORM_TO_SIGN>,\n ): DashboardContextInterface => ({\n ...ctx,\n component: DocumentManagerContextual,\n formId: ev.payload.formId,\n successAlert: null,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_JOB_ADD,\n 'addJob',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: AddJobContextual,\n currentJob: null,\n successAlert: null,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_COMPENSATION_CREATE,\n 'editCompensation',\n reduce(\n (\n ctx: DashboardContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.EMPLOYEE_COMPENSATION_CREATE>,\n ): DashboardContextInterface => ({\n ...ctx,\n component: EditCompensationContextual,\n currentJob: ev.payload.job,\n successAlert: null,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_JOB_ADD_ANOTHER,\n 'addAnotherJob',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: AddAnotherJobContextual,\n currentJob: null,\n successAlert: null,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_BANK_ACCOUNT_DELETED,\n 'index',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n successAlert: 'bankAccountDeleted',\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_DEDUCTION_ADD,\n 'deductionForm',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n component: DeductionFormContextual,\n successAlert: null,\n editingDeductionId: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_DEDUCTION_EDIT,\n 'deductionForm',\n reduce(\n (\n ctx: DashboardContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.EMPLOYEE_DEDUCTION_EDIT>,\n ): DashboardContextInterface => ({\n ...ctx,\n component: DeductionFormContextual,\n successAlert: null,\n editingDeductionId: ev.payload.uuid,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_DEDUCTION_DELETED,\n 'index',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n successAlert: 'deductionDeleted',\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_DISMISS,\n 'index',\n reduce(\n (ctx: DashboardContextInterface): DashboardContextInterface => ({\n ...ctx,\n successAlert: null,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_DASHBOARD_TAB_CHANGE,\n 'index',\n reduce(\n (\n ctx: DashboardContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.EMPLOYEE_DASHBOARD_TAB_CHANGE>,\n ): DashboardContextInterface => ({\n ...ctx,\n selectedTab: ev.payload.tab,\n }),\n ),\n ),\n ),\n homeAddress: state<MachineTransition>(transition(componentEvents.CANCEL, 'index', returnToIndex)),\n workAddress: state<MachineTransition>(transition(componentEvents.CANCEL, 'index', returnToIndex)),\n federalTaxes: state<MachineTransition>(\n transition(componentEvents.CANCEL, 'index', returnToIndex),\n transition(componentEvents.EMPLOYEE_FEDERAL_TAXES_DONE, 'index', returnToIndex),\n ),\n stateTaxes: state<MachineTransition>(transition(componentEvents.CANCEL, 'index', returnToIndex)),\n profile: state<MachineTransition>(transition(componentEvents.CANCEL, 'index', returnToIndex)),\n paymentBankForm: state<MachineTransition>(\n transition(\n componentEvents.EMPLOYEE_BANK_ACCOUNT_CREATED,\n 'index',\n returnToIndexWithAlert('bankAccountAdded'),\n ),\n transition(componentEvents.CANCEL, 'index', returnToIndex),\n ),\n paymentSplitView: state<MachineTransition>(\n transition(\n componentEvents.EMPLOYEE_PAYMENT_METHOD_UPDATED,\n 'index',\n returnToIndexWithAlert('splitUpdated'),\n ),\n transition(componentEvents.CANCEL, 'index', returnToIndex),\n ),\n documentManager: state<MachineTransition>(\n transition(componentEvents.CANCEL, 'index', returnToIndex),\n ),\n deductionForm: state<MachineTransition>(\n transition(\n componentEvents.EMPLOYEE_DEDUCTION_CREATED,\n 'index',\n returnToIndexWithAlert('deductionAdded'),\n ),\n transition(\n componentEvents.EMPLOYEE_DEDUCTION_UPDATED,\n 'index',\n returnToIndexWithAlert('deductionUpdated'),\n ),\n transition(componentEvents.EMPLOYEE_DEDUCTION_CANCEL, 'index', returnToIndex),\n transition(componentEvents.CANCEL, 'index', returnToIndex),\n ),\n addJob: state<MachineTransition>(\n transition(\n componentEvents.EMPLOYEE_COMPENSATION_UPDATED,\n 'index',\n returnToIndexWithAlert('jobAdded'),\n ),\n transition(componentEvents.CANCEL, 'index', returnToIndex),\n ),\n editCompensation: state<MachineTransition>(\n transition(componentEvents.EMPLOYEE_COMPENSATION_DONE, 'index', returnToIndex),\n transition(componentEvents.CANCEL, 'index', returnToIndex),\n ),\n addAnotherJob: state<MachineTransition>(\n transition(\n componentEvents.EMPLOYEE_COMPENSATION_UPDATED,\n 'index',\n returnToIndexWithAlert('jobAdded'),\n ),\n transition(componentEvents.CANCEL, 'index', returnToIndex),\n ),\n}\n"],"names":["returnToIndex","reduce","ctx","DashboardViewContextual","returnToIndexWithAlert","alert","dashboardStateMachine","state","transition","componentEvents","ProfileContextual","HomeAddressContextual","WorkAddressContextual","FederalTaxesContextual","StateTaxesContextual","PaymentBankFormContextual","PaymentSplitViewContextual","ev","DocumentManagerContextual","AddJobContextual","EditCompensationContextual","AddAnotherJobContextual","DeductionFormContextual"],"mappings":"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"}
|
|
@@ -30,6 +30,12 @@ export interface PendingCompensationChange {
|
|
|
30
30
|
effectiveDate: string;
|
|
31
31
|
jobTitle: string | null;
|
|
32
32
|
details: PendingChangeDetail[];
|
|
33
|
+
/**
|
|
34
|
+
* True when the job has no current (on-or-before-today) compensation —
|
|
35
|
+
* i.e., the job itself hasn't started yet. The UI renders a "Pending"
|
|
36
|
+
* badge rather than a change alert in this case.
|
|
37
|
+
*/
|
|
38
|
+
isNewJob: boolean;
|
|
33
39
|
}
|
|
34
40
|
/**
|
|
35
41
|
* Returns the pending compensation changes for an employee, flattened across
|
|
@@ -3,7 +3,7 @@ const D = (t) => new Date(t.getFullYear(), t.getMonth(), t.getDate()), C = (t, e
|
|
|
3
3
|
if (!t) return !1;
|
|
4
4
|
const n = w(t);
|
|
5
5
|
return n ? D(n) > e : !1;
|
|
6
|
-
},
|
|
6
|
+
}, b = (t, e) => {
|
|
7
7
|
if (!t) return !1;
|
|
8
8
|
const n = w(t);
|
|
9
9
|
return n ? D(n) <= e : !1;
|
|
@@ -12,15 +12,15 @@ const D = (t) => new Date(t.getFullYear(), t.getMonth(), t.getDate()), C = (t, e
|
|
|
12
12
|
const e = Number(t);
|
|
13
13
|
return Number.isFinite(e) ? e : null;
|
|
14
14
|
};
|
|
15
|
-
function
|
|
15
|
+
function y(t, e, n) {
|
|
16
16
|
const a = [], c = t.title ?? n, i = e.title ?? n;
|
|
17
17
|
i && c !== i && a.push({ kind: "titleChange", title: i });
|
|
18
|
-
const
|
|
19
|
-
(o !== null && o !==
|
|
20
|
-
const
|
|
21
|
-
return !
|
|
18
|
+
const l = g(t.rate), o = g(e.rate), d = t.paymentUnit, f = e.paymentUnit;
|
|
19
|
+
(o !== null && o !== l || f !== void 0 && f !== d) && o !== null && f && a.push({ kind: "payChange", rate: o, paymentUnit: f }), e.flsaStatus && e.flsaStatus !== t.flsaStatus && a.push({ kind: "flsaChange", flsaStatus: e.flsaStatus });
|
|
20
|
+
const u = t.adjustForMinimumWage ?? !1, m = e.adjustForMinimumWage ?? !1, h = t.minimumWages?.[0], p = e.minimumWages?.[0];
|
|
21
|
+
return !u && m ? a.push({ kind: "minWageEnabled", wage: p?.wage ?? null }) : u && !m ? a.push({ kind: "minWageDisabled" }) : u && m && (h?.uuid !== p?.uuid || h?.wage !== p?.wage) && a.push({ kind: "minWageChanged", wage: p?.wage ?? null }), a;
|
|
22
22
|
}
|
|
23
|
-
function
|
|
23
|
+
function U(t, e) {
|
|
24
24
|
const n = g(t.rate);
|
|
25
25
|
return [
|
|
26
26
|
{
|
|
@@ -35,21 +35,22 @@ function k(t, e = {}) {
|
|
|
35
35
|
if (!t?.length) return [];
|
|
36
36
|
const n = e.today ?? /* @__PURE__ */ new Date(), a = D(n), c = [];
|
|
37
37
|
for (const i of t) {
|
|
38
|
-
const
|
|
38
|
+
const l = i.compensations ?? [], o = l.filter((s) => C(s.effectiveDate, a)).slice().sort((s, r) => (s.effectiveDate ?? "").localeCompare(r.effectiveDate ?? ""));
|
|
39
39
|
if (o.length === 0) continue;
|
|
40
|
-
const d = i.currentCompensationUuid ?
|
|
40
|
+
const d = i.currentCompensationUuid ? l.find((s) => s.uuid === i.currentCompensationUuid) : void 0, f = d && b(d.effectiveDate, a) ? d : null;
|
|
41
41
|
for (let s = 0; s < o.length; s++) {
|
|
42
|
-
const r = o[s],
|
|
42
|
+
const r = o[s], u = s === 0 ? f : o[s - 1], m = u ? y(u, r, i.title) : U(r, i.title);
|
|
43
43
|
c.push({
|
|
44
44
|
compensationUuid: r.uuid,
|
|
45
45
|
jobUuid: i.uuid,
|
|
46
46
|
effectiveDate: r.effectiveDate,
|
|
47
47
|
jobTitle: i.title,
|
|
48
|
-
details: m
|
|
48
|
+
details: m,
|
|
49
|
+
isNewJob: u === null
|
|
49
50
|
});
|
|
50
51
|
}
|
|
51
52
|
}
|
|
52
|
-
return c.sort((i,
|
|
53
|
+
return c.sort((i, l) => i.effectiveDate.localeCompare(l.effectiveDate)), c;
|
|
53
54
|
}
|
|
54
55
|
export {
|
|
55
56
|
k as getPendingCompensationChanges
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getPendingCompensationChanges.js","sources":["../../../../src/components/Employee/Dashboard/getPendingCompensationChanges.ts"],"sourcesContent":["import type { Compensation } from '@gusto/embedded-api/models/components/compensation'\nimport type { FlsaStatusType } from '@gusto/embedded-api/models/components/flsastatustype'\nimport type { Job } from '@gusto/embedded-api/models/components/job'\nimport { normalizeToDate } from '@/helpers/dateFormatting'\n\nexport type PendingChangeDetail =\n | { kind: 'titleChange'; title: string }\n | { kind: 'payChange'; rate: number; paymentUnit: string }\n | { kind: 'flsaChange'; flsaStatus: FlsaStatusType }\n | { kind: 'minWageEnabled'; wage: string | null }\n | { kind: 'minWageDisabled' }\n | { kind: 'minWageChanged'; wage: string | null }\n | {\n kind: 'newJob'\n title: string | null\n rate: number | null\n paymentUnit: string | null\n }\n\nexport interface PendingCompensationChange {\n compensationUuid: string\n jobUuid: string\n effectiveDate: string\n jobTitle: string | null\n details: PendingChangeDetail[]\n}\n\nconst startOfLocalDay = (d: Date) => new Date(d.getFullYear(), d.getMonth(), d.getDate())\n\nconst isAfterToday = (effectiveDate: string | undefined, todayStart: Date): boolean => {\n if (!effectiveDate) return false\n const parsed = normalizeToDate(effectiveDate)\n if (!parsed) return false\n return startOfLocalDay(parsed) > todayStart\n}\n\nconst isOnOrBeforeToday = (effectiveDate: string | undefined, todayStart: Date): boolean => {\n if (!effectiveDate) return false\n const parsed = normalizeToDate(effectiveDate)\n if (!parsed) return false\n return startOfLocalDay(parsed) <= todayStart\n}\n\nconst numericRate = (rate: string | undefined): number | null => {\n if (rate === undefined || rate === '') return null\n const n = Number(rate)\n return Number.isFinite(n) ? n : null\n}\n\nfunction buildExistingJobDetails(\n baseline: Compensation,\n future: Compensation,\n jobTitle: string | null,\n): PendingChangeDetail[] {\n const details: PendingChangeDetail[] = []\n\n const baseTitle = baseline.title ?? jobTitle\n const futureTitle = future.title ?? jobTitle\n if (futureTitle && baseTitle !== futureTitle) {\n details.push({ kind: 'titleChange', title: futureTitle })\n }\n\n const baseRate = numericRate(baseline.rate)\n const futureRate = numericRate(future.rate)\n const baseUnit = baseline.paymentUnit\n const futureUnit = future.paymentUnit\n const rateDiffers = futureRate !== null && futureRate !== baseRate\n const unitDiffers = futureUnit !== undefined && futureUnit !== baseUnit\n if ((rateDiffers || unitDiffers) && futureRate !== null && futureUnit) {\n details.push({ kind: 'payChange', rate: futureRate, paymentUnit: futureUnit })\n }\n\n if (future.flsaStatus && future.flsaStatus !== baseline.flsaStatus) {\n details.push({ kind: 'flsaChange', flsaStatus: future.flsaStatus })\n }\n\n const baseAdj = baseline.adjustForMinimumWage ?? false\n const futureAdj = future.adjustForMinimumWage ?? false\n const baseMw = baseline.minimumWages?.[0]\n const futureMw = future.minimumWages?.[0]\n\n if (!baseAdj && futureAdj) {\n details.push({ kind: 'minWageEnabled', wage: futureMw?.wage ?? null })\n } else if (baseAdj && !futureAdj) {\n details.push({ kind: 'minWageDisabled' })\n } else if (baseAdj && futureAdj) {\n if (baseMw?.uuid !== futureMw?.uuid || baseMw?.wage !== futureMw?.wage) {\n details.push({ kind: 'minWageChanged', wage: futureMw?.wage ?? null })\n }\n }\n\n return details\n}\n\nfunction buildNewJobDetails(future: Compensation, jobTitle: string | null): PendingChangeDetail[] {\n const rate = numericRate(future.rate)\n return [\n {\n kind: 'newJob',\n title: future.title ?? jobTitle,\n rate,\n paymentUnit: rate !== null && future.paymentUnit ? future.paymentUnit : null,\n },\n ]\n}\n\n/**\n * Returns the pending compensation changes for an employee, flattened across\n * all jobs and sorted globally by `effectiveDate` ascending.\n *\n * A pending change is any `Compensation` whose `effectiveDate` is strictly\n * after today (local midnight). When a single job has multiple future-dated\n * compensations stacked, each is returned in chronological order and the diff\n * details for the N+1th comp are computed against the Nth (rather than the\n * job's current compensation) so the bullets remain meaningful end-to-end.\n *\n * The helper returns structured deltas (a discriminated union per detail) so\n * the consuming UI is responsible for formatting them via i18n / pay-rate\n * helpers. This keeps the helper pure and trivially unit-testable.\n */\nexport function getPendingCompensationChanges(\n jobs: Job[] | undefined,\n options: { today?: Date } = {},\n): PendingCompensationChange[] {\n if (!jobs?.length) return []\n\n const now = options.today ?? new Date()\n const todayStart = startOfLocalDay(now)\n const results: PendingCompensationChange[] = []\n\n for (const job of jobs) {\n const comps = job.compensations ?? []\n\n const futureComps = comps\n .filter(c => isAfterToday(c.effectiveDate, todayStart))\n .slice()\n .sort((a, b) => (a.effectiveDate ?? '').localeCompare(b.effectiveDate ?? ''))\n\n if (futureComps.length === 0) continue\n\n const referencedCurrent = job.currentCompensationUuid\n ? comps.find(c => c.uuid === job.currentCompensationUuid)\n : undefined\n const currentComp =\n referencedCurrent && isOnOrBeforeToday(referencedCurrent.effectiveDate, todayStart)\n ? referencedCurrent\n : null\n\n for (let i = 0; i < futureComps.length; i++) {\n const future = futureComps[i]!\n const baseline = i === 0 ? currentComp : futureComps[i - 1]!\n\n const details = baseline\n ? buildExistingJobDetails(baseline, future, job.title)\n : buildNewJobDetails(future, job.title)\n\n results.push({\n compensationUuid: future.uuid,\n jobUuid: job.uuid,\n effectiveDate: future.effectiveDate!,\n jobTitle: job.title,\n details,\n })\n }\n }\n\n results.sort((a, b) => a.effectiveDate.localeCompare(b.effectiveDate))\n\n return results\n}\n"],"names":["startOfLocalDay","d","isAfterToday","effectiveDate","todayStart","parsed","normalizeToDate","isOnOrBeforeToday","numericRate","rate","n","buildExistingJobDetails","baseline","future","jobTitle","details","baseTitle","futureTitle","baseRate","futureRate","baseUnit","futureUnit","baseAdj","futureAdj","baseMw","futureMw","buildNewJobDetails","getPendingCompensationChanges","jobs","options","now","results","job","comps","futureComps","c","a","b","referencedCurrent","currentComp","i"],"mappings":";
|
|
1
|
+
{"version":3,"file":"getPendingCompensationChanges.js","sources":["../../../../src/components/Employee/Dashboard/getPendingCompensationChanges.ts"],"sourcesContent":["import type { Compensation } from '@gusto/embedded-api/models/components/compensation'\nimport type { FlsaStatusType } from '@gusto/embedded-api/models/components/flsastatustype'\nimport type { Job } from '@gusto/embedded-api/models/components/job'\nimport { normalizeToDate } from '@/helpers/dateFormatting'\n\nexport type PendingChangeDetail =\n | { kind: 'titleChange'; title: string }\n | { kind: 'payChange'; rate: number; paymentUnit: string }\n | { kind: 'flsaChange'; flsaStatus: FlsaStatusType }\n | { kind: 'minWageEnabled'; wage: string | null }\n | { kind: 'minWageDisabled' }\n | { kind: 'minWageChanged'; wage: string | null }\n | {\n kind: 'newJob'\n title: string | null\n rate: number | null\n paymentUnit: string | null\n }\n\nexport interface PendingCompensationChange {\n compensationUuid: string\n jobUuid: string\n effectiveDate: string\n jobTitle: string | null\n details: PendingChangeDetail[]\n /**\n * True when the job has no current (on-or-before-today) compensation —\n * i.e., the job itself hasn't started yet. The UI renders a \"Pending\"\n * badge rather than a change alert in this case.\n */\n isNewJob: boolean\n}\n\nconst startOfLocalDay = (d: Date) => new Date(d.getFullYear(), d.getMonth(), d.getDate())\n\nconst isAfterToday = (effectiveDate: string | undefined, todayStart: Date): boolean => {\n if (!effectiveDate) return false\n const parsed = normalizeToDate(effectiveDate)\n if (!parsed) return false\n return startOfLocalDay(parsed) > todayStart\n}\n\nconst isOnOrBeforeToday = (effectiveDate: string | undefined, todayStart: Date): boolean => {\n if (!effectiveDate) return false\n const parsed = normalizeToDate(effectiveDate)\n if (!parsed) return false\n return startOfLocalDay(parsed) <= todayStart\n}\n\nconst numericRate = (rate: string | undefined): number | null => {\n if (rate === undefined || rate === '') return null\n const n = Number(rate)\n return Number.isFinite(n) ? n : null\n}\n\nfunction buildExistingJobDetails(\n baseline: Compensation,\n future: Compensation,\n jobTitle: string | null,\n): PendingChangeDetail[] {\n const details: PendingChangeDetail[] = []\n\n const baseTitle = baseline.title ?? jobTitle\n const futureTitle = future.title ?? jobTitle\n if (futureTitle && baseTitle !== futureTitle) {\n details.push({ kind: 'titleChange', title: futureTitle })\n }\n\n const baseRate = numericRate(baseline.rate)\n const futureRate = numericRate(future.rate)\n const baseUnit = baseline.paymentUnit\n const futureUnit = future.paymentUnit\n const rateDiffers = futureRate !== null && futureRate !== baseRate\n const unitDiffers = futureUnit !== undefined && futureUnit !== baseUnit\n if ((rateDiffers || unitDiffers) && futureRate !== null && futureUnit) {\n details.push({ kind: 'payChange', rate: futureRate, paymentUnit: futureUnit })\n }\n\n if (future.flsaStatus && future.flsaStatus !== baseline.flsaStatus) {\n details.push({ kind: 'flsaChange', flsaStatus: future.flsaStatus })\n }\n\n const baseAdj = baseline.adjustForMinimumWage ?? false\n const futureAdj = future.adjustForMinimumWage ?? false\n const baseMw = baseline.minimumWages?.[0]\n const futureMw = future.minimumWages?.[0]\n\n if (!baseAdj && futureAdj) {\n details.push({ kind: 'minWageEnabled', wage: futureMw?.wage ?? null })\n } else if (baseAdj && !futureAdj) {\n details.push({ kind: 'minWageDisabled' })\n } else if (baseAdj && futureAdj) {\n if (baseMw?.uuid !== futureMw?.uuid || baseMw?.wage !== futureMw?.wage) {\n details.push({ kind: 'minWageChanged', wage: futureMw?.wage ?? null })\n }\n }\n\n return details\n}\n\nfunction buildNewJobDetails(future: Compensation, jobTitle: string | null): PendingChangeDetail[] {\n const rate = numericRate(future.rate)\n return [\n {\n kind: 'newJob',\n title: future.title ?? jobTitle,\n rate,\n paymentUnit: rate !== null && future.paymentUnit ? future.paymentUnit : null,\n },\n ]\n}\n\n/**\n * Returns the pending compensation changes for an employee, flattened across\n * all jobs and sorted globally by `effectiveDate` ascending.\n *\n * A pending change is any `Compensation` whose `effectiveDate` is strictly\n * after today (local midnight). When a single job has multiple future-dated\n * compensations stacked, each is returned in chronological order and the diff\n * details for the N+1th comp are computed against the Nth (rather than the\n * job's current compensation) so the bullets remain meaningful end-to-end.\n *\n * The helper returns structured deltas (a discriminated union per detail) so\n * the consuming UI is responsible for formatting them via i18n / pay-rate\n * helpers. This keeps the helper pure and trivially unit-testable.\n */\nexport function getPendingCompensationChanges(\n jobs: Job[] | undefined,\n options: { today?: Date } = {},\n): PendingCompensationChange[] {\n if (!jobs?.length) return []\n\n const now = options.today ?? new Date()\n const todayStart = startOfLocalDay(now)\n const results: PendingCompensationChange[] = []\n\n for (const job of jobs) {\n const comps = job.compensations ?? []\n\n const futureComps = comps\n .filter(c => isAfterToday(c.effectiveDate, todayStart))\n .slice()\n .sort((a, b) => (a.effectiveDate ?? '').localeCompare(b.effectiveDate ?? ''))\n\n if (futureComps.length === 0) continue\n\n const referencedCurrent = job.currentCompensationUuid\n ? comps.find(c => c.uuid === job.currentCompensationUuid)\n : undefined\n const currentComp =\n referencedCurrent && isOnOrBeforeToday(referencedCurrent.effectiveDate, todayStart)\n ? referencedCurrent\n : null\n\n for (let i = 0; i < futureComps.length; i++) {\n const future = futureComps[i]!\n const baseline = i === 0 ? currentComp : futureComps[i - 1]!\n\n const details = baseline\n ? buildExistingJobDetails(baseline, future, job.title)\n : buildNewJobDetails(future, job.title)\n\n results.push({\n compensationUuid: future.uuid,\n jobUuid: job.uuid,\n effectiveDate: future.effectiveDate!,\n jobTitle: job.title,\n details,\n isNewJob: baseline === null,\n })\n }\n }\n\n results.sort((a, b) => a.effectiveDate.localeCompare(b.effectiveDate))\n\n return results\n}\n"],"names":["startOfLocalDay","d","isAfterToday","effectiveDate","todayStart","parsed","normalizeToDate","isOnOrBeforeToday","numericRate","rate","n","buildExistingJobDetails","baseline","future","jobTitle","details","baseTitle","futureTitle","baseRate","futureRate","baseUnit","futureUnit","baseAdj","futureAdj","baseMw","futureMw","buildNewJobDetails","getPendingCompensationChanges","jobs","options","now","results","job","comps","futureComps","c","a","b","referencedCurrent","currentComp","i"],"mappings":"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"}
|
|
@@ -1,17 +1,24 @@
|
|
|
1
1
|
import { Employee } from '@gusto/embedded-api/models/components/employee';
|
|
2
2
|
import { EmployeeAddress } from '@gusto/embedded-api/models/components/employeeaddress';
|
|
3
3
|
import { EmployeeWorkAddress } from '@gusto/embedded-api/models/components/employeeworkaddress';
|
|
4
|
-
import {
|
|
4
|
+
import { BaseHookReady } from '../../../../partner-hook-utils/types';
|
|
5
5
|
export interface UseEmployeeBasicDetailsProps {
|
|
6
6
|
employeeId: string;
|
|
7
7
|
}
|
|
8
|
-
type
|
|
9
|
-
employee
|
|
8
|
+
export type UseEmployeeBasicDetailsResult = BaseHookReady<{
|
|
9
|
+
employee?: Employee;
|
|
10
10
|
currentHomeAddress?: EmployeeAddress;
|
|
11
11
|
currentWorkAddress?: EmployeeWorkAddress;
|
|
12
12
|
}, {
|
|
13
13
|
isPending: boolean;
|
|
14
|
+
isEmployeeLoading: boolean;
|
|
15
|
+
isHomeAddressLoading: boolean;
|
|
16
|
+
isWorkAddressLoading: boolean;
|
|
14
17
|
}>;
|
|
15
|
-
|
|
18
|
+
/**
|
|
19
|
+
* Phase B: each query runs non-Suspense so the three cards (employee
|
|
20
|
+
* info, home address, work address) can paint independently. The
|
|
21
|
+
* consuming view branches on the per-query loading flags to render
|
|
22
|
+
* skeletons inside the box bodies.
|
|
23
|
+
*/
|
|
16
24
|
export declare function useEmployeeBasicDetails({ employeeId, }: UseEmployeeBasicDetailsProps): UseEmployeeBasicDetailsResult;
|
|
17
|
-
export {};
|