@gusto/embedded-react-sdk 0.57.0 → 0.57.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 +36 -0
- package/dist/components/Common/DataView/DataCards/DataCards.js +44 -42
- package/dist/components/Common/DataView/DataCards/DataCards.js.map +1 -1
- package/dist/components/Common/DataView/DataCards/DataCards.module.scss.js +17 -15
- package/dist/components/Common/DataView/DataCards/DataCards.module.scss.js.map +1 -1
- package/dist/components/Common/UI/Input/Input.js +35 -32
- package/dist/components/Common/UI/Input/Input.js.map +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +4 -5
- package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +4 -5
- package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/useAssignSignatory.js +6 -7
- package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountForm/context.js +4 -5
- package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
- package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +4 -5
- package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
- package/dist/components/Company/FederalTaxes/useFederalTaxes.js +9 -10
- package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
- package/dist/components/Company/Industry/Context.js +7 -8
- package/dist/components/Company/Industry/Context.js.map +1 -1
- package/dist/components/Company/Locations/LocationForm/useLocationForm.js +4 -5
- package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
- package/dist/components/Company/Locations/LocationsList/useLocationsList.js +4 -5
- package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
- package/dist/components/Company/OnboardingOverview/context.js +4 -5
- package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
- package/dist/components/Company/PaySchedule/PayScheduleForm.js +66 -62
- package/dist/components/Company/PaySchedule/PayScheduleForm.js.map +1 -1
- package/dist/components/Company/PaySchedule/PayScheduleForm.module.scss.js +2 -2
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignmentComponents.js +80 -68
- package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignmentComponents.js.map +1 -1
- package/dist/components/Company/PaySchedule/management/PayScheduleManagementComponents.js +49 -44
- package/dist/components/Company/PaySchedule/management/PayScheduleManagementComponents.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.js +96 -69
- package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +4 -5
- package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesList/context.js +4 -5
- package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
- package/dist/components/Company/StateTaxes/TaxRateManagement/context.js +4 -5
- package/dist/components/Company/StateTaxes/TaxRateManagement/context.js.map +1 -1
- package/dist/components/Company/StateTaxes/shared/requirementSetError.js +27 -10
- package/dist/components/Company/StateTaxes/shared/requirementSetError.js.map +1 -1
- package/dist/components/Company/TaxPayments/TaxPaymentDetail/TaxPaymentDetail.js +77 -0
- package/dist/components/Company/TaxPayments/TaxPaymentDetail/TaxPaymentDetail.js.map +1 -0
- package/dist/components/Company/TaxPayments/TaxPaymentDetail/TaxPaymentDetailPresentation.js +94 -0
- package/dist/components/Company/TaxPayments/TaxPaymentDetail/TaxPaymentDetailPresentation.js.map +1 -0
- package/dist/components/Company/TaxPayments/TaxPaymentsFlow/TaxPaymentsFlow.js +26 -0
- package/dist/components/Company/TaxPayments/TaxPaymentsFlow/TaxPaymentsFlow.js.map +1 -0
- package/dist/components/Company/TaxPayments/TaxPaymentsFlow/TaxPaymentsFlowComponents.js +25 -0
- package/dist/components/Company/TaxPayments/TaxPaymentsFlow/TaxPaymentsFlowComponents.js.map +1 -0
- package/dist/components/Company/TaxPayments/TaxPaymentsFlow/taxPaymentsStateMachine.js +33 -0
- package/dist/components/Company/TaxPayments/TaxPaymentsFlow/taxPaymentsStateMachine.js.map +1 -0
- package/dist/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsList.js +55 -0
- package/dist/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsList.js.map +1 -0
- package/dist/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsListPresentation.js +153 -0
- package/dist/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsListPresentation.js.map +1 -0
- package/dist/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsListPresentation.module.scss.js +14 -0
- package/dist/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsListPresentation.module.scss.js.map +1 -0
- package/dist/components/Company/TaxPayments/shared/payrollLookupWindow.js +16 -0
- package/dist/components/Company/TaxPayments/shared/payrollLookupWindow.js.map +1 -0
- package/dist/components/Company/TaxPayments/shared/taxPaymentStatus.js +34 -0
- package/dist/components/Company/TaxPayments/shared/taxPaymentStatus.js.map +1 -0
- package/dist/components/Company/TaxPayments/shared/useAllTaxPayments.js +30 -0
- package/dist/components/Company/TaxPayments/shared/useAllTaxPayments.js.map +1 -0
- package/dist/components/Company/exports/companyManagement.js +10 -4
- package/dist/components/Company/exports/companyManagement.js.map +1 -1
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js +4 -5
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
- package/dist/components/Employee/EmployeeListFlow/employeeListStateMachine.js +24 -23
- package/dist/components/Employee/EmployeeListFlow/employeeListStateMachine.js.map +1 -1
- package/dist/components/Employee/Terminations/TerminationFlow/terminationStateMachine.js +42 -34
- package/dist/components/Employee/Terminations/TerminationFlow/terminationStateMachine.js.map +1 -1
- package/dist/components/Payroll/GrossUpModal/GrossUpModal.js +3 -2
- package/dist/components/Payroll/GrossUpModal/GrossUpModal.js.map +1 -1
- package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js +56 -54
- package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js.map +1 -1
- package/dist/components/Payroll/PayrollFlow/PayrollFlow.js.map +1 -1
- package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js +60 -52
- package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js.map +1 -1
- package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js +74 -88
- package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollLanding/PayrollLanding.js.map +1 -1
- package/dist/components/Payroll/PayrollLanding/payrollLandingStateMachine.js +23 -18
- package/dist/components/Payroll/PayrollLanding/payrollLandingStateMachine.js.map +1 -1
- package/dist/components/Payroll/PayrollOverview/PayrollOverview.js +204 -179
- package/dist/components/Payroll/PayrollOverview/PayrollOverview.js.map +1 -1
- package/dist/components/Payroll/PayrollOverview/PayrollOverview.module.scss.js +8 -0
- package/dist/components/Payroll/PayrollOverview/PayrollOverview.module.scss.js.map +1 -0
- package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js +44 -46
- package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js.map +1 -1
- package/dist/components/Payroll/PrintChecks/PrintChecksForm/PrintChecksForm.js +4 -4
- package/dist/components/Payroll/PrintChecks/PrintChecksForm/PrintChecksForm.js.map +1 -1
- package/dist/components/Payroll/PrintChecks/PrintChecksForm/useGenerationPoll.js +50 -41
- package/dist/components/Payroll/PrintChecks/PrintChecksForm/useGenerationPoll.js.map +1 -1
- package/dist/components/Payroll/TransitionCreation/TransitionCreation.js +63 -61
- package/dist/components/Payroll/TransitionCreation/TransitionCreation.js.map +1 -1
- package/dist/components/Payroll/TransitionPayroll/useResolveTransitionPayroll.js +14 -13
- package/dist/components/Payroll/TransitionPayroll/useResolveTransitionPayroll.js.map +1 -1
- package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.js +164 -154
- package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.js.map +1 -1
- package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.module.scss.js +9 -5
- package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.module.scss.js.map +1 -1
- package/dist/components/Payroll/helpers.js +103 -92
- package/dist/components/Payroll/helpers.js.map +1 -1
- package/dist/components/Payroll/usePreparedPayrollData.js +3 -4
- package/dist/components/Payroll/usePreparedPayrollData.js.map +1 -1
- package/dist/components/Payroll/useUnprocessedTransitionPayPeriods.js +2 -2
- package/dist/components/Payroll/useUnprocessedTransitionPayPeriods.js.map +1 -1
- package/dist/contexts/ApiProvider/ApiProvider.js +19 -18
- package/dist/contexts/ApiProvider/ApiProvider.js.map +1 -1
- package/dist/contexts/ApiProvider/payrollOffCycleReasonEnumHook.js +36 -0
- package/dist/contexts/ApiProvider/payrollOffCycleReasonEnumHook.js.map +1 -0
- package/dist/contexts/UnstableFeaturesProvider/useUnstableFeature.js.map +1 -1
- package/dist/helpers/dateFormatting.js +47 -40
- package/dist/helpers/dateFormatting.js.map +1 -1
- package/dist/i18n/I18n.js +2 -0
- package/dist/i18n/I18n.js.map +1 -1
- package/dist/i18n/en/Company.Management.PaySchedule.json.js +20 -18
- package/dist/i18n/en/Company.Management.PaySchedule.json.js.map +1 -1
- package/dist/i18n/en/Company.Management.PayScheduleAssignment.json.js +6 -4
- package/dist/i18n/en/Company.Management.PayScheduleAssignment.json.js.map +1 -1
- package/dist/i18n/en/Company.Management.TaxPaymentDetail.json.js +26 -0
- package/dist/i18n/en/Company.Management.TaxPaymentDetail.json.js.map +1 -0
- package/dist/i18n/en/Company.Management.TaxPaymentsList.json.js +48 -0
- package/dist/i18n/en/Company.Management.TaxPaymentsList.json.js.map +1 -0
- package/dist/i18n/en/Company.StateTaxes.json.js +1 -1
- package/dist/i18n/en/Payroll.PayrollHistory.json.js +5 -5
- package/dist/i18n/en/Payroll.PayrollOverview.json.js +42 -36
- package/dist/i18n/en/Payroll.PayrollOverview.json.js.map +1 -1
- package/dist/package.json.js +1 -1
- package/dist/shared/constants.js +62 -56
- package/dist/shared/constants.js.map +1 -1
- package/dist/src/components/Company/PaySchedule/PayScheduleForm.d.ts +6 -0
- package/dist/src/components/Company/StateTaxes/shared/requirementSetError.d.ts +18 -5
- package/dist/src/components/Company/TaxPayments/TaxPaymentDetail/TaxPaymentDetail.d.ts +31 -0
- package/dist/src/components/Company/TaxPayments/TaxPaymentDetail/TaxPaymentDetailPresentation.d.ts +19 -0
- package/dist/src/components/Company/TaxPayments/TaxPaymentsFlow/TaxPaymentsFlow.d.ts +42 -0
- package/dist/src/components/Company/TaxPayments/TaxPaymentsFlow/TaxPaymentsFlowComponents.d.ts +20 -0
- package/dist/src/components/Company/TaxPayments/TaxPaymentsFlow/taxPaymentsStateMachine.d.ts +10 -0
- package/dist/src/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsList.d.ts +28 -0
- package/dist/src/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsListPresentation.d.ts +33 -0
- package/dist/src/components/Company/TaxPayments/index.d.ts +6 -0
- package/dist/src/components/Company/TaxPayments/shared/payrollLookupWindow.d.ts +29 -0
- package/dist/src/components/Company/TaxPayments/shared/payrollLookupWindow.test.d.ts +1 -0
- package/dist/src/components/Company/TaxPayments/shared/taxPaymentStatus.d.ts +62 -0
- package/dist/src/components/Company/TaxPayments/shared/taxPaymentStatus.test.d.ts +1 -0
- package/dist/src/components/Company/TaxPayments/shared/useAllTaxPayments.d.ts +30 -0
- package/dist/src/components/Company/exports/companyManagement.d.ts +2 -0
- package/dist/src/components/Payroll/PayrollConfiguration/__fixtures__/payrollConfigurationMocks.d.ts +6 -1
- package/dist/src/components/Payroll/PayrollFlow/PayrollFlow.d.ts +1 -0
- package/dist/src/components/Payroll/PayrollLanding/PayrollLanding.d.ts +1 -0
- package/dist/src/components/Payroll/PayrollOverview/PayrollOverview.d.ts +9 -3
- package/dist/src/components/Payroll/helpers.d.ts +34 -18
- package/dist/src/contexts/ApiProvider/payrollOffCycleReasonEnumHook.d.ts +14 -0
- package/dist/src/contexts/ApiProvider/payrollOffCycleReasonEnumHook.test.d.ts +1 -0
- package/dist/src/contexts/UnstableFeaturesProvider/useUnstableFeature.d.ts +2 -0
- package/dist/src/helpers/dateFormatting.d.ts +13 -0
- package/dist/src/i18n/types.d.ts +168 -4
- package/dist/src/models/external.d.ts +2 -0
- package/dist/src/shared/constants.d.ts +18 -0
- package/dist/style.css +1 -1
- package/docs/guides/endpoint-inventory.json +33 -0
- package/package.json +30 -27
|
@@ -1,141 +1,153 @@
|
|
|
1
1
|
import { jsx as r } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { useTranslation as C } from "react-i18next";
|
|
3
|
+
import { useState as _, useMemo as U, useEffect as T } from "react";
|
|
4
|
+
import { usePaySchedulesGetAllSuspense as D } from "@gusto/embedded-api/react-query/paySchedulesGetAll";
|
|
4
5
|
import { usePaySchedulesPreviewAssignmentMutation as L } from "@gusto/embedded-api/react-query/paySchedulesPreviewAssignment";
|
|
5
6
|
import { usePaySchedulesAssignMutation as v } from "@gusto/embedded-api/react-query/paySchedulesAssign";
|
|
6
|
-
import { PayScheduleAssignmentBodyType as
|
|
7
|
-
import { AssignmentTypeStepPresentation as
|
|
8
|
-
import { AssignmentScheduleStepPresentation as
|
|
9
|
-
import { AssignmentCompensationStepPresentation as
|
|
10
|
-
import { AssignmentReviewStepPresentation as
|
|
11
|
-
import { PayScheduleForm as
|
|
12
|
-
import { useFlow as
|
|
7
|
+
import { PayScheduleAssignmentBodyType as m } from "@gusto/embedded-api/models/components/payscheduleassignmentbody";
|
|
8
|
+
import { AssignmentTypeStepPresentation as H } from "./AssignmentTypeStepPresentation.js";
|
|
9
|
+
import { AssignmentScheduleStepPresentation as N } from "./AssignmentScheduleStepPresentation.js";
|
|
10
|
+
import { AssignmentCompensationStepPresentation as I } from "./AssignmentCompensationStepPresentation.js";
|
|
11
|
+
import { AssignmentReviewStepPresentation as B } from "./AssignmentReviewStepPresentation.js";
|
|
12
|
+
import { PayScheduleForm as M } from "../../PayScheduleForm.js";
|
|
13
|
+
import { useFlow as h } from "../../../../Flow/useFlow.js";
|
|
13
14
|
import { BaseLayout as Y } from "../../../../Base/Base.js";
|
|
14
15
|
import { useBase as w } from "../../../../Base/useBase.js";
|
|
15
|
-
import { ensureRequired as
|
|
16
|
-
import { componentEvents as
|
|
17
|
-
function
|
|
18
|
-
const { assignmentType:
|
|
16
|
+
import { ensureRequired as a } from "../../../../../helpers/ensureRequired.js";
|
|
17
|
+
import { componentEvents as t } from "../../../../../shared/constants.js";
|
|
18
|
+
function $() {
|
|
19
|
+
const { assignmentType: n, onEvent: o } = h();
|
|
19
20
|
return /* @__PURE__ */ r(
|
|
20
|
-
|
|
21
|
+
H,
|
|
21
22
|
{
|
|
22
|
-
defaultType:
|
|
23
|
+
defaultType: n,
|
|
23
24
|
onBack: () => {
|
|
24
|
-
o(
|
|
25
|
+
o(t.PAY_SCHEDULE_ASSIGNMENT_CANCEL);
|
|
25
26
|
},
|
|
26
|
-
onContinue: (
|
|
27
|
-
o(
|
|
27
|
+
onContinue: (s) => {
|
|
28
|
+
o(t.PAY_SCHEDULE_ASSIGNMENT_TYPE_SELECTED, { type: s });
|
|
28
29
|
}
|
|
29
30
|
}
|
|
30
31
|
);
|
|
31
32
|
}
|
|
32
|
-
function
|
|
33
|
+
function ee() {
|
|
33
34
|
const {
|
|
34
|
-
companyId:
|
|
35
|
+
companyId: n,
|
|
35
36
|
assignmentType: o,
|
|
36
|
-
defaultPayScheduleUuid:
|
|
37
|
+
defaultPayScheduleUuid: s,
|
|
37
38
|
hourlyPayScheduleUuid: y,
|
|
38
39
|
salariedPayScheduleUuid: p,
|
|
39
|
-
onEvent:
|
|
40
|
-
} =
|
|
41
|
-
companyId:
|
|
42
|
-
}),
|
|
43
|
-
return o ===
|
|
44
|
-
|
|
40
|
+
onEvent: i
|
|
41
|
+
} = h(), { data: d } = D({
|
|
42
|
+
companyId: a(n)
|
|
43
|
+
}), u = d.payScheduleShowResponse ?? [], S = u.find((e) => e.active), c = (e) => u.some((A) => A.uuid === e) ? e : S?.uuid;
|
|
44
|
+
return o === m.HourlySalaried ? /* @__PURE__ */ r(
|
|
45
|
+
I,
|
|
45
46
|
{
|
|
46
|
-
schedules:
|
|
47
|
+
schedules: u,
|
|
47
48
|
hourlyPayScheduleUuid: c(y),
|
|
48
49
|
salariedPayScheduleUuid: c(p),
|
|
49
50
|
onBack: () => {
|
|
50
|
-
|
|
51
|
+
i(t.PAY_SCHEDULE_ASSIGNMENT_BACK);
|
|
51
52
|
},
|
|
52
53
|
onAddPaySchedule: () => {
|
|
53
|
-
|
|
54
|
+
i(t.PAY_SCHEDULE_CREATE);
|
|
54
55
|
},
|
|
55
56
|
onContinue: (e) => {
|
|
56
|
-
|
|
57
|
+
i(t.PAY_SCHEDULE_ASSIGNMENT_SCHEDULE_SELECTED, e);
|
|
57
58
|
}
|
|
58
59
|
}
|
|
59
60
|
) : /* @__PURE__ */ r(
|
|
60
|
-
|
|
61
|
+
N,
|
|
61
62
|
{
|
|
62
|
-
schedules:
|
|
63
|
-
defaultPayScheduleUuid: c(
|
|
63
|
+
schedules: u,
|
|
64
|
+
defaultPayScheduleUuid: c(s),
|
|
64
65
|
onBack: () => {
|
|
65
|
-
|
|
66
|
+
i(t.PAY_SCHEDULE_ASSIGNMENT_BACK);
|
|
66
67
|
},
|
|
67
68
|
onAddPaySchedule: () => {
|
|
68
|
-
|
|
69
|
+
i(t.PAY_SCHEDULE_CREATE);
|
|
69
70
|
},
|
|
70
71
|
onContinue: (e) => {
|
|
71
|
-
|
|
72
|
+
i(t.PAY_SCHEDULE_ASSIGNMENT_SCHEDULE_SELECTED, {
|
|
72
73
|
defaultPayScheduleUuid: e
|
|
73
74
|
});
|
|
74
75
|
}
|
|
75
76
|
}
|
|
76
77
|
);
|
|
77
78
|
}
|
|
78
|
-
function
|
|
79
|
-
const { companyId:
|
|
80
|
-
return /* @__PURE__ */ r(
|
|
79
|
+
function ne() {
|
|
80
|
+
const { t: n } = C("Company.Management.PayScheduleAssignment"), { companyId: o, onEvent: s } = h();
|
|
81
|
+
return /* @__PURE__ */ r(
|
|
82
|
+
M,
|
|
83
|
+
{
|
|
84
|
+
variant: "management",
|
|
85
|
+
companyId: a(o),
|
|
86
|
+
onEvent: s,
|
|
87
|
+
copy: {
|
|
88
|
+
anchorEndOfPayPeriodDescription: n("scheduleForm.anchorEndOfPayPeriodDescription"),
|
|
89
|
+
payrollDeadline: n("scheduleForm.payrollDeadline")
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
);
|
|
81
93
|
}
|
|
82
|
-
function
|
|
94
|
+
function te() {
|
|
83
95
|
const {
|
|
84
|
-
companyId:
|
|
96
|
+
companyId: n,
|
|
85
97
|
assignmentType: o,
|
|
86
|
-
defaultPayScheduleUuid:
|
|
98
|
+
defaultPayScheduleUuid: s,
|
|
87
99
|
hourlyPayScheduleUuid: y,
|
|
88
100
|
salariedPayScheduleUuid: p,
|
|
89
|
-
onEvent:
|
|
90
|
-
} =
|
|
91
|
-
if (o ===
|
|
92
|
-
const
|
|
93
|
-
return
|
|
94
|
-
type:
|
|
95
|
-
defaultPayScheduleUuid:
|
|
101
|
+
onEvent: i
|
|
102
|
+
} = h(), { baseSubmitHandler: d, error: u } = w(), [S, c] = _(null), { mutateAsync: e, isPending: A } = L(), { mutateAsync: f, isPending: g } = v(), E = U(() => {
|
|
103
|
+
if (o === m.HourlySalaried) {
|
|
104
|
+
const l = a(y), P = a(p);
|
|
105
|
+
return l === P ? {
|
|
106
|
+
type: m.Single,
|
|
107
|
+
defaultPayScheduleUuid: l
|
|
96
108
|
} : {
|
|
97
|
-
type:
|
|
98
|
-
hourlyPayScheduleUuid:
|
|
109
|
+
type: m.HourlySalaried,
|
|
110
|
+
hourlyPayScheduleUuid: l,
|
|
99
111
|
salariedPayScheduleUuid: P
|
|
100
112
|
};
|
|
101
113
|
}
|
|
102
114
|
return {
|
|
103
|
-
type:
|
|
104
|
-
defaultPayScheduleUuid:
|
|
115
|
+
type: m.Single,
|
|
116
|
+
defaultPayScheduleUuid: a(s)
|
|
105
117
|
};
|
|
106
|
-
}, [o,
|
|
107
|
-
return
|
|
118
|
+
}, [o, s, y, p]);
|
|
119
|
+
return T(() => {
|
|
108
120
|
d(void 0, async () => {
|
|
109
|
-
const
|
|
110
|
-
request: { companyId:
|
|
121
|
+
const l = await e({
|
|
122
|
+
request: { companyId: a(n), payScheduleAssignmentBody: E }
|
|
111
123
|
});
|
|
112
|
-
c(
|
|
124
|
+
c(l.payScheduleAssignmentPreview?.employeeChanges ?? []);
|
|
113
125
|
});
|
|
114
|
-
}, [
|
|
115
|
-
|
|
126
|
+
}, [n, E, e, d]), u ? null : A || !S ? /* @__PURE__ */ r(Y, { isLoading: !0 }) : /* @__PURE__ */ r(
|
|
127
|
+
B,
|
|
116
128
|
{
|
|
117
129
|
employeeChanges: S,
|
|
118
130
|
isSubmitting: g,
|
|
119
131
|
onBack: () => {
|
|
120
|
-
|
|
132
|
+
i(t.PAY_SCHEDULE_ASSIGNMENT_BACK);
|
|
121
133
|
},
|
|
122
134
|
onSubmit: () => {
|
|
123
135
|
d(void 0, async () => {
|
|
124
136
|
await f({
|
|
125
137
|
request: {
|
|
126
|
-
companyId:
|
|
138
|
+
companyId: a(n),
|
|
127
139
|
payScheduleAssignmentBody: E
|
|
128
140
|
}
|
|
129
|
-
}),
|
|
141
|
+
}), i(t.PAY_SCHEDULE_ASSIGNED, { ...E, employeeChanges: S });
|
|
130
142
|
});
|
|
131
143
|
}
|
|
132
144
|
}
|
|
133
145
|
);
|
|
134
146
|
}
|
|
135
147
|
export {
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
148
|
+
ne as AssignmentCreateScheduleStep,
|
|
149
|
+
te as AssignmentReviewStep,
|
|
150
|
+
ee as AssignmentScheduleStep,
|
|
151
|
+
$ as AssignmentTypeStep
|
|
140
152
|
};
|
|
141
153
|
//# sourceMappingURL=PayScheduleAssignmentComponents.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PayScheduleAssignmentComponents.js","sources":["../../../../../../src/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignmentComponents.tsx"],"sourcesContent":["import { 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 { companyId, onEvent } = useFlow<PayScheduleAssignmentContextInterface>()\n\n return <PayScheduleForm companyId={ensureRequired(companyId)} onEvent={onEvent} />\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","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 { 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,72 +1,77 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { useTranslation as
|
|
3
|
-
import { PayScheduleForm as
|
|
4
|
-
import { PayScheduleOverview as
|
|
5
|
-
import { useComponentContext as
|
|
1
|
+
import { jsxs as d, jsx as n } from "react/jsx-runtime";
|
|
2
|
+
import { useTranslation as u } from "react-i18next";
|
|
3
|
+
import { PayScheduleForm as p } from "../PayScheduleForm.js";
|
|
4
|
+
import { PayScheduleOverview as y } from "./PayScheduleOverview.js";
|
|
5
|
+
import { useComponentContext as f } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
|
|
6
6
|
import { useFlow as m } from "../../../Flow/useFlow.js";
|
|
7
|
-
import { ensureRequired as
|
|
8
|
-
import { componentEvents as
|
|
9
|
-
import { Flex as
|
|
10
|
-
import { AutoPilotDialog as
|
|
11
|
-
import { PayScheduleAssignment as
|
|
12
|
-
function
|
|
7
|
+
import { ensureRequired as r } from "../../../../helpers/ensureRequired.js";
|
|
8
|
+
import { componentEvents as h } from "../../../../shared/constants.js";
|
|
9
|
+
import { Flex as P } from "../../../Common/Flex/Flex.js";
|
|
10
|
+
import { AutoPilotDialog as S } from "./AutoPilotDialog/AutoPilotDialog.js";
|
|
11
|
+
import { PayScheduleAssignment as E } from "./PayScheduleAssignment/PayScheduleAssignment.js";
|
|
12
|
+
function b() {
|
|
13
13
|
const {
|
|
14
|
-
companyId:
|
|
15
|
-
onEvent:
|
|
14
|
+
companyId: e,
|
|
15
|
+
onEvent: o,
|
|
16
16
|
enableAutoPilot: l,
|
|
17
|
-
enableMultipleSchedules:
|
|
18
|
-
successAlert:
|
|
17
|
+
enableMultipleSchedules: a,
|
|
18
|
+
successAlert: t,
|
|
19
19
|
autoPilotSchedule: c
|
|
20
|
-
} = m(), { t:
|
|
21
|
-
return /* @__PURE__ */
|
|
22
|
-
|
|
23
|
-
|
|
20
|
+
} = m(), { t: i } = u("Company.Management.PaySchedule"), s = f();
|
|
21
|
+
return /* @__PURE__ */ d(P, { flexDirection: "column", gap: 16, children: [
|
|
22
|
+
t ? /* @__PURE__ */ n(
|
|
23
|
+
s.Alert,
|
|
24
24
|
{
|
|
25
25
|
status: "success",
|
|
26
|
-
label:
|
|
26
|
+
label: i(`alerts.${t}`),
|
|
27
27
|
onDismiss: () => {
|
|
28
|
-
|
|
28
|
+
o(h.PAY_SCHEDULE_MANAGEMENT_ALERT_DISMISSED, null);
|
|
29
29
|
}
|
|
30
30
|
}
|
|
31
31
|
) : null,
|
|
32
|
-
/* @__PURE__ */
|
|
33
|
-
|
|
32
|
+
/* @__PURE__ */ n(
|
|
33
|
+
y,
|
|
34
34
|
{
|
|
35
|
-
companyId:
|
|
36
|
-
onEvent:
|
|
35
|
+
companyId: r(e),
|
|
36
|
+
onEvent: o,
|
|
37
37
|
enableAutoPilot: l,
|
|
38
|
-
enableMultipleSchedules:
|
|
38
|
+
enableMultipleSchedules: a
|
|
39
39
|
}
|
|
40
40
|
),
|
|
41
|
-
c ? /* @__PURE__ */
|
|
42
|
-
|
|
41
|
+
c ? /* @__PURE__ */ n(
|
|
42
|
+
S,
|
|
43
43
|
{
|
|
44
|
-
companyId:
|
|
44
|
+
companyId: r(e),
|
|
45
45
|
schedule: c,
|
|
46
|
-
onEvent:
|
|
46
|
+
onEvent: o
|
|
47
47
|
}
|
|
48
48
|
) : null
|
|
49
49
|
] });
|
|
50
50
|
}
|
|
51
|
-
function
|
|
52
|
-
const { companyId:
|
|
53
|
-
return /* @__PURE__ */
|
|
51
|
+
function w() {
|
|
52
|
+
const { companyId: e, onEvent: o } = m();
|
|
53
|
+
return /* @__PURE__ */ n(E, { companyId: r(e), onEvent: o });
|
|
54
54
|
}
|
|
55
|
-
function
|
|
56
|
-
const { companyId: o, payScheduleId:
|
|
57
|
-
return /* @__PURE__ */
|
|
58
|
-
|
|
55
|
+
function T() {
|
|
56
|
+
const { t: e } = u("Company.Management.PaySchedule"), { companyId: o, payScheduleId: l, defaultValues: a, onEvent: t } = m();
|
|
57
|
+
return /* @__PURE__ */ n(
|
|
58
|
+
p,
|
|
59
59
|
{
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
60
|
+
variant: "management",
|
|
61
|
+
copy: {
|
|
62
|
+
anchorEndOfPayPeriodDescription: e("scheduleForm.anchorEndOfPayPeriodDescription"),
|
|
63
|
+
payrollDeadline: e("scheduleForm.payrollDeadline")
|
|
64
|
+
},
|
|
65
|
+
companyId: r(o),
|
|
66
|
+
payScheduleId: l,
|
|
67
|
+
defaultValues: a,
|
|
68
|
+
onEvent: t
|
|
64
69
|
}
|
|
65
70
|
);
|
|
66
71
|
}
|
|
67
72
|
export {
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
73
|
+
w as PayScheduleAssignmentContextual,
|
|
74
|
+
T as PayScheduleEditFormContextual,
|
|
75
|
+
b as PayScheduleOverviewContextual
|
|
71
76
|
};
|
|
72
77
|
//# sourceMappingURL=PayScheduleManagementComponents.js.map
|
package/dist/components/Company/PaySchedule/management/PayScheduleManagementComponents.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PayScheduleManagementComponents.js","sources":["../../../../../src/components/Company/PaySchedule/management/PayScheduleManagementComponents.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport type { PayScheduleShow } from '@gusto/embedded-api/models/components/payscheduleshow'\nimport { PayScheduleForm } from '../PayScheduleForm'\nimport type { PayScheduleDefaultValues } from '../PaySchedule'\nimport { PayScheduleOverview } from './PayScheduleOverview'\nimport { PayScheduleAssignment } from './PayScheduleAssignment'\nimport { AutoPilotDialog } from './AutoPilotDialog'\nimport { Flex } from '@/components/Common/Flex'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useFlow, type FlowContextInterface } from '@/components/Flow/useFlow'\nimport { ensureRequired } from '@/helpers/ensureRequired'\nimport { componentEvents } from '@/shared/constants'\n\n/** @internal */\nexport type PayScheduleManagementSuccessAlertCode = 'assignmentUpdated'\n\n/** @internal */\nexport interface PayScheduleManagementContextInterface extends FlowContextInterface {\n companyId: string\n payScheduleId?: string\n defaultValues?: PayScheduleDefaultValues\n enableAutoPilot?: boolean\n enableMultipleSchedules?: boolean\n successAlert?: PayScheduleManagementSuccessAlertCode | null\n autoPilotSchedule?: PayScheduleShow\n component: React.ComponentType | null\n}\n\n/** @internal */\nexport function PayScheduleOverviewContextual() {\n const {\n companyId,\n onEvent,\n enableAutoPilot,\n enableMultipleSchedules,\n successAlert,\n autoPilotSchedule,\n } = useFlow<PayScheduleManagementContextInterface>()\n const { t } = useTranslation('Company.Management.PaySchedule')\n const Components = useComponentContext()\n\n return (\n <Flex flexDirection=\"column\" gap={16}>\n {successAlert ? (\n <Components.Alert\n status=\"success\"\n label={t(`alerts.${successAlert}`)}\n onDismiss={() => {\n onEvent(componentEvents.PAY_SCHEDULE_MANAGEMENT_ALERT_DISMISSED, null)\n }}\n />\n ) : null}\n <PayScheduleOverview\n companyId={ensureRequired(companyId)}\n onEvent={onEvent}\n enableAutoPilot={enableAutoPilot}\n enableMultipleSchedules={enableMultipleSchedules}\n />\n {autoPilotSchedule ? (\n <AutoPilotDialog\n companyId={ensureRequired(companyId)}\n schedule={autoPilotSchedule}\n onEvent={onEvent}\n />\n ) : null}\n </Flex>\n )\n}\n\n/** @internal */\nexport function PayScheduleAssignmentContextual() {\n const { companyId, onEvent } = useFlow<PayScheduleManagementContextInterface>()\n\n return <PayScheduleAssignment companyId={ensureRequired(companyId)} onEvent={onEvent} />\n}\n\n/** @internal */\nexport function PayScheduleEditFormContextual() {\n const { companyId, payScheduleId, defaultValues, onEvent } =\n useFlow<PayScheduleManagementContextInterface>()\n\n return (\n <PayScheduleForm\n companyId={ensureRequired(companyId)}\n payScheduleId={payScheduleId}\n defaultValues={defaultValues}\n onEvent={onEvent}\n />\n )\n}\n"],"names":["PayScheduleOverviewContextual","companyId","onEvent","enableAutoPilot","enableMultipleSchedules","successAlert","autoPilotSchedule","useFlow","t","useTranslation","Components","useComponentContext","jsxs","Flex","jsx","componentEvents","PayScheduleOverview","ensureRequired","AutoPilotDialog","PayScheduleAssignmentContextual","PayScheduleAssignment","PayScheduleEditFormContextual","payScheduleId","defaultValues","PayScheduleForm"],"mappings":";;;;;;;;;;;AA6BO,SAASA,IAAgC;AAC9C,QAAM;AAAA,IACJ,WAAAC;AAAA,IACA,SAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,yBAAAC;AAAA,IACA,cAAAC;AAAA,IACA,mBAAAC;AAAA,EAAA,IACEC,EAAA,GACE,EAAE,GAAAC,EAAA,IAAMC,EAAe,gCAAgC,GACvDC,IAAaC,EAAA;AAEnB,SACE,gBAAAC,EAACC,GAAA,EAAK,eAAc,UAAS,KAAK,IAC/B,UAAA;AAAA,IAAAR,IACC,gBAAAS;AAAA,MAACJ,EAAW;AAAA,MAAX;AAAA,QACC,QAAO;AAAA,QACP,OAAOF,EAAE,UAAUH,CAAY,EAAE;AAAA,QACjC,WAAW,MAAM;AACf,UAAAH,EAAQa,EAAgB,yCAAyC,IAAI;AAAA,QACvE;AAAA,MAAA;AAAA,IAAA,IAEA;AAAA,IACJ,gBAAAD;AAAA,MAACE;AAAA,MAAA;AAAA,QACC,WAAWC,EAAehB,CAAS;AAAA,QACnC,SAAAC;AAAA,QACA,iBAAAC;AAAA,QACA,yBAAAC;AAAA,MAAA;AAAA,IAAA;AAAA,IAEDE,IACC,gBAAAQ;AAAA,MAACI;AAAA,MAAA;AAAA,QACC,WAAWD,EAAehB,CAAS;AAAA,QACnC,UAAUK;AAAA,QACV,SAAAJ;AAAA,MAAA;AAAA,IAAA,IAEA;AAAA,EAAA,GACN;AAEJ;AAGO,SAASiB,IAAkC;AAChD,QAAM,EAAE,WAAAlB,GAAW,SAAAC,EAAA,IAAYK,EAAA;AAE/B,2BAAQa,GAAA,EAAsB,WAAWH,EAAehB,CAAS,GAAG,SAAAC,GAAkB;AACxF;AAGO,SAASmB,IAAgC;AAC9C,QAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"PayScheduleManagementComponents.js","sources":["../../../../../src/components/Company/PaySchedule/management/PayScheduleManagementComponents.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport type { PayScheduleShow } from '@gusto/embedded-api/models/components/payscheduleshow'\nimport { PayScheduleForm } from '../PayScheduleForm'\nimport type { PayScheduleDefaultValues } from '../PaySchedule'\nimport { PayScheduleOverview } from './PayScheduleOverview'\nimport { PayScheduleAssignment } from './PayScheduleAssignment'\nimport { AutoPilotDialog } from './AutoPilotDialog'\nimport { Flex } from '@/components/Common/Flex'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useFlow, type FlowContextInterface } from '@/components/Flow/useFlow'\nimport { ensureRequired } from '@/helpers/ensureRequired'\nimport { componentEvents } from '@/shared/constants'\n\n/** @internal */\nexport type PayScheduleManagementSuccessAlertCode = 'assignmentUpdated'\n\n/** @internal */\nexport interface PayScheduleManagementContextInterface extends FlowContextInterface {\n companyId: string\n payScheduleId?: string\n defaultValues?: PayScheduleDefaultValues\n enableAutoPilot?: boolean\n enableMultipleSchedules?: boolean\n successAlert?: PayScheduleManagementSuccessAlertCode | null\n autoPilotSchedule?: PayScheduleShow\n component: React.ComponentType | null\n}\n\n/** @internal */\nexport function PayScheduleOverviewContextual() {\n const {\n companyId,\n onEvent,\n enableAutoPilot,\n enableMultipleSchedules,\n successAlert,\n autoPilotSchedule,\n } = useFlow<PayScheduleManagementContextInterface>()\n const { t } = useTranslation('Company.Management.PaySchedule')\n const Components = useComponentContext()\n\n return (\n <Flex flexDirection=\"column\" gap={16}>\n {successAlert ? (\n <Components.Alert\n status=\"success\"\n label={t(`alerts.${successAlert}`)}\n onDismiss={() => {\n onEvent(componentEvents.PAY_SCHEDULE_MANAGEMENT_ALERT_DISMISSED, null)\n }}\n />\n ) : null}\n <PayScheduleOverview\n companyId={ensureRequired(companyId)}\n onEvent={onEvent}\n enableAutoPilot={enableAutoPilot}\n enableMultipleSchedules={enableMultipleSchedules}\n />\n {autoPilotSchedule ? (\n <AutoPilotDialog\n companyId={ensureRequired(companyId)}\n schedule={autoPilotSchedule}\n onEvent={onEvent}\n />\n ) : null}\n </Flex>\n )\n}\n\n/** @internal */\nexport function PayScheduleAssignmentContextual() {\n const { companyId, onEvent } = useFlow<PayScheduleManagementContextInterface>()\n\n return <PayScheduleAssignment companyId={ensureRequired(companyId)} onEvent={onEvent} />\n}\n\n/** @internal */\nexport function PayScheduleEditFormContextual() {\n const { t } = useTranslation('Company.Management.PaySchedule')\n const { companyId, payScheduleId, defaultValues, onEvent } =\n useFlow<PayScheduleManagementContextInterface>()\n\n return (\n <PayScheduleForm\n variant=\"management\"\n copy={{\n anchorEndOfPayPeriodDescription: t('scheduleForm.anchorEndOfPayPeriodDescription'),\n payrollDeadline: t('scheduleForm.payrollDeadline'),\n }}\n companyId={ensureRequired(companyId)}\n payScheduleId={payScheduleId}\n defaultValues={defaultValues}\n onEvent={onEvent}\n />\n )\n}\n"],"names":["PayScheduleOverviewContextual","companyId","onEvent","enableAutoPilot","enableMultipleSchedules","successAlert","autoPilotSchedule","useFlow","t","useTranslation","Components","useComponentContext","jsxs","Flex","jsx","componentEvents","PayScheduleOverview","ensureRequired","AutoPilotDialog","PayScheduleAssignmentContextual","PayScheduleAssignment","PayScheduleEditFormContextual","payScheduleId","defaultValues","PayScheduleForm"],"mappings":";;;;;;;;;;;AA6BO,SAASA,IAAgC;AAC9C,QAAM;AAAA,IACJ,WAAAC;AAAA,IACA,SAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,yBAAAC;AAAA,IACA,cAAAC;AAAA,IACA,mBAAAC;AAAA,EAAA,IACEC,EAAA,GACE,EAAE,GAAAC,EAAA,IAAMC,EAAe,gCAAgC,GACvDC,IAAaC,EAAA;AAEnB,SACE,gBAAAC,EAACC,GAAA,EAAK,eAAc,UAAS,KAAK,IAC/B,UAAA;AAAA,IAAAR,IACC,gBAAAS;AAAA,MAACJ,EAAW;AAAA,MAAX;AAAA,QACC,QAAO;AAAA,QACP,OAAOF,EAAE,UAAUH,CAAY,EAAE;AAAA,QACjC,WAAW,MAAM;AACf,UAAAH,EAAQa,EAAgB,yCAAyC,IAAI;AAAA,QACvE;AAAA,MAAA;AAAA,IAAA,IAEA;AAAA,IACJ,gBAAAD;AAAA,MAACE;AAAA,MAAA;AAAA,QACC,WAAWC,EAAehB,CAAS;AAAA,QACnC,SAAAC;AAAA,QACA,iBAAAC;AAAA,QACA,yBAAAC;AAAA,MAAA;AAAA,IAAA;AAAA,IAEDE,IACC,gBAAAQ;AAAA,MAACI;AAAA,MAAA;AAAA,QACC,WAAWD,EAAehB,CAAS;AAAA,QACnC,UAAUK;AAAA,QACV,SAAAJ;AAAA,MAAA;AAAA,IAAA,IAEA;AAAA,EAAA,GACN;AAEJ;AAGO,SAASiB,IAAkC;AAChD,QAAM,EAAE,WAAAlB,GAAW,SAAAC,EAAA,IAAYK,EAAA;AAE/B,2BAAQa,GAAA,EAAsB,WAAWH,EAAehB,CAAS,GAAG,SAAAC,GAAkB;AACxF;AAGO,SAASmB,IAAgC;AAC9C,QAAM,EAAE,GAAAb,EAAA,IAAMC,EAAe,gCAAgC,GACvD,EAAE,WAAAR,GAAW,eAAAqB,GAAe,eAAAC,GAAe,SAAArB,EAAA,IAC/CK,EAAA;AAEF,SACE,gBAAAO;AAAA,IAACU;AAAA,IAAA;AAAA,MACC,SAAQ;AAAA,MACR,MAAM;AAAA,QACJ,iCAAiChB,EAAE,8CAA8C;AAAA,QACjF,iBAAiBA,EAAE,8BAA8B;AAAA,MAAA;AAAA,MAEnD,WAAWS,EAAehB,CAAS;AAAA,MACnC,eAAAqB;AAAA,MACA,eAAAC;AAAA,MACA,SAAArB;AAAA,IAAA;AAAA,EAAA;AAGN;"}
|