@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.
Files changed (165) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/dist/components/Common/DataView/DataCards/DataCards.js +44 -42
  3. package/dist/components/Common/DataView/DataCards/DataCards.js.map +1 -1
  4. package/dist/components/Common/DataView/DataCards/DataCards.module.scss.js +17 -15
  5. package/dist/components/Common/DataView/DataCards/DataCards.module.scss.js.map +1 -1
  6. package/dist/components/Common/UI/Input/Input.js +35 -32
  7. package/dist/components/Common/UI/Input/Input.js.map +1 -1
  8. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +4 -5
  9. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
  10. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +4 -5
  11. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
  12. package/dist/components/Company/AssignSignatory/useAssignSignatory.js +6 -7
  13. package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
  14. package/dist/components/Company/BankAccount/BankAccountForm/context.js +4 -5
  15. package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
  16. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +4 -5
  17. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  18. package/dist/components/Company/FederalTaxes/useFederalTaxes.js +9 -10
  19. package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
  20. package/dist/components/Company/Industry/Context.js +7 -8
  21. package/dist/components/Company/Industry/Context.js.map +1 -1
  22. package/dist/components/Company/Locations/LocationForm/useLocationForm.js +4 -5
  23. package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
  24. package/dist/components/Company/Locations/LocationsList/useLocationsList.js +4 -5
  25. package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
  26. package/dist/components/Company/OnboardingOverview/context.js +4 -5
  27. package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
  28. package/dist/components/Company/PaySchedule/PayScheduleForm.js +66 -62
  29. package/dist/components/Company/PaySchedule/PayScheduleForm.js.map +1 -1
  30. package/dist/components/Company/PaySchedule/PayScheduleForm.module.scss.js +2 -2
  31. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignmentComponents.js +80 -68
  32. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignmentComponents.js.map +1 -1
  33. package/dist/components/Company/PaySchedule/management/PayScheduleManagementComponents.js +49 -44
  34. package/dist/components/Company/PaySchedule/management/PayScheduleManagementComponents.js.map +1 -1
  35. package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.js +96 -69
  36. package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.js.map +1 -1
  37. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +4 -5
  38. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
  39. package/dist/components/Company/StateTaxes/StateTaxesList/context.js +4 -5
  40. package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
  41. package/dist/components/Company/StateTaxes/TaxRateManagement/context.js +4 -5
  42. package/dist/components/Company/StateTaxes/TaxRateManagement/context.js.map +1 -1
  43. package/dist/components/Company/StateTaxes/shared/requirementSetError.js +27 -10
  44. package/dist/components/Company/StateTaxes/shared/requirementSetError.js.map +1 -1
  45. package/dist/components/Company/TaxPayments/TaxPaymentDetail/TaxPaymentDetail.js +77 -0
  46. package/dist/components/Company/TaxPayments/TaxPaymentDetail/TaxPaymentDetail.js.map +1 -0
  47. package/dist/components/Company/TaxPayments/TaxPaymentDetail/TaxPaymentDetailPresentation.js +94 -0
  48. package/dist/components/Company/TaxPayments/TaxPaymentDetail/TaxPaymentDetailPresentation.js.map +1 -0
  49. package/dist/components/Company/TaxPayments/TaxPaymentsFlow/TaxPaymentsFlow.js +26 -0
  50. package/dist/components/Company/TaxPayments/TaxPaymentsFlow/TaxPaymentsFlow.js.map +1 -0
  51. package/dist/components/Company/TaxPayments/TaxPaymentsFlow/TaxPaymentsFlowComponents.js +25 -0
  52. package/dist/components/Company/TaxPayments/TaxPaymentsFlow/TaxPaymentsFlowComponents.js.map +1 -0
  53. package/dist/components/Company/TaxPayments/TaxPaymentsFlow/taxPaymentsStateMachine.js +33 -0
  54. package/dist/components/Company/TaxPayments/TaxPaymentsFlow/taxPaymentsStateMachine.js.map +1 -0
  55. package/dist/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsList.js +55 -0
  56. package/dist/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsList.js.map +1 -0
  57. package/dist/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsListPresentation.js +153 -0
  58. package/dist/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsListPresentation.js.map +1 -0
  59. package/dist/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsListPresentation.module.scss.js +14 -0
  60. package/dist/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsListPresentation.module.scss.js.map +1 -0
  61. package/dist/components/Company/TaxPayments/shared/payrollLookupWindow.js +16 -0
  62. package/dist/components/Company/TaxPayments/shared/payrollLookupWindow.js.map +1 -0
  63. package/dist/components/Company/TaxPayments/shared/taxPaymentStatus.js +34 -0
  64. package/dist/components/Company/TaxPayments/shared/taxPaymentStatus.js.map +1 -0
  65. package/dist/components/Company/TaxPayments/shared/useAllTaxPayments.js +30 -0
  66. package/dist/components/Company/TaxPayments/shared/useAllTaxPayments.js.map +1 -0
  67. package/dist/components/Company/exports/companyManagement.js +10 -4
  68. package/dist/components/Company/exports/companyManagement.js.map +1 -1
  69. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js +4 -5
  70. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  71. package/dist/components/Employee/EmployeeListFlow/employeeListStateMachine.js +24 -23
  72. package/dist/components/Employee/EmployeeListFlow/employeeListStateMachine.js.map +1 -1
  73. package/dist/components/Employee/Terminations/TerminationFlow/terminationStateMachine.js +42 -34
  74. package/dist/components/Employee/Terminations/TerminationFlow/terminationStateMachine.js.map +1 -1
  75. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js +3 -2
  76. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js.map +1 -1
  77. package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js +56 -54
  78. package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js.map +1 -1
  79. package/dist/components/Payroll/PayrollFlow/PayrollFlow.js.map +1 -1
  80. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js +60 -52
  81. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js.map +1 -1
  82. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js +74 -88
  83. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js.map +1 -1
  84. package/dist/components/Payroll/PayrollLanding/PayrollLanding.js.map +1 -1
  85. package/dist/components/Payroll/PayrollLanding/payrollLandingStateMachine.js +23 -18
  86. package/dist/components/Payroll/PayrollLanding/payrollLandingStateMachine.js.map +1 -1
  87. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js +204 -179
  88. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js.map +1 -1
  89. package/dist/components/Payroll/PayrollOverview/PayrollOverview.module.scss.js +8 -0
  90. package/dist/components/Payroll/PayrollOverview/PayrollOverview.module.scss.js.map +1 -0
  91. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js +44 -46
  92. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js.map +1 -1
  93. package/dist/components/Payroll/PrintChecks/PrintChecksForm/PrintChecksForm.js +4 -4
  94. package/dist/components/Payroll/PrintChecks/PrintChecksForm/PrintChecksForm.js.map +1 -1
  95. package/dist/components/Payroll/PrintChecks/PrintChecksForm/useGenerationPoll.js +50 -41
  96. package/dist/components/Payroll/PrintChecks/PrintChecksForm/useGenerationPoll.js.map +1 -1
  97. package/dist/components/Payroll/TransitionCreation/TransitionCreation.js +63 -61
  98. package/dist/components/Payroll/TransitionCreation/TransitionCreation.js.map +1 -1
  99. package/dist/components/Payroll/TransitionPayroll/useResolveTransitionPayroll.js +14 -13
  100. package/dist/components/Payroll/TransitionPayroll/useResolveTransitionPayroll.js.map +1 -1
  101. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.js +164 -154
  102. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.js.map +1 -1
  103. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.module.scss.js +9 -5
  104. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.module.scss.js.map +1 -1
  105. package/dist/components/Payroll/helpers.js +103 -92
  106. package/dist/components/Payroll/helpers.js.map +1 -1
  107. package/dist/components/Payroll/usePreparedPayrollData.js +3 -4
  108. package/dist/components/Payroll/usePreparedPayrollData.js.map +1 -1
  109. package/dist/components/Payroll/useUnprocessedTransitionPayPeriods.js +2 -2
  110. package/dist/components/Payroll/useUnprocessedTransitionPayPeriods.js.map +1 -1
  111. package/dist/contexts/ApiProvider/ApiProvider.js +19 -18
  112. package/dist/contexts/ApiProvider/ApiProvider.js.map +1 -1
  113. package/dist/contexts/ApiProvider/payrollOffCycleReasonEnumHook.js +36 -0
  114. package/dist/contexts/ApiProvider/payrollOffCycleReasonEnumHook.js.map +1 -0
  115. package/dist/contexts/UnstableFeaturesProvider/useUnstableFeature.js.map +1 -1
  116. package/dist/helpers/dateFormatting.js +47 -40
  117. package/dist/helpers/dateFormatting.js.map +1 -1
  118. package/dist/i18n/I18n.js +2 -0
  119. package/dist/i18n/I18n.js.map +1 -1
  120. package/dist/i18n/en/Company.Management.PaySchedule.json.js +20 -18
  121. package/dist/i18n/en/Company.Management.PaySchedule.json.js.map +1 -1
  122. package/dist/i18n/en/Company.Management.PayScheduleAssignment.json.js +6 -4
  123. package/dist/i18n/en/Company.Management.PayScheduleAssignment.json.js.map +1 -1
  124. package/dist/i18n/en/Company.Management.TaxPaymentDetail.json.js +26 -0
  125. package/dist/i18n/en/Company.Management.TaxPaymentDetail.json.js.map +1 -0
  126. package/dist/i18n/en/Company.Management.TaxPaymentsList.json.js +48 -0
  127. package/dist/i18n/en/Company.Management.TaxPaymentsList.json.js.map +1 -0
  128. package/dist/i18n/en/Company.StateTaxes.json.js +1 -1
  129. package/dist/i18n/en/Payroll.PayrollHistory.json.js +5 -5
  130. package/dist/i18n/en/Payroll.PayrollOverview.json.js +42 -36
  131. package/dist/i18n/en/Payroll.PayrollOverview.json.js.map +1 -1
  132. package/dist/package.json.js +1 -1
  133. package/dist/shared/constants.js +62 -56
  134. package/dist/shared/constants.js.map +1 -1
  135. package/dist/src/components/Company/PaySchedule/PayScheduleForm.d.ts +6 -0
  136. package/dist/src/components/Company/StateTaxes/shared/requirementSetError.d.ts +18 -5
  137. package/dist/src/components/Company/TaxPayments/TaxPaymentDetail/TaxPaymentDetail.d.ts +31 -0
  138. package/dist/src/components/Company/TaxPayments/TaxPaymentDetail/TaxPaymentDetailPresentation.d.ts +19 -0
  139. package/dist/src/components/Company/TaxPayments/TaxPaymentsFlow/TaxPaymentsFlow.d.ts +42 -0
  140. package/dist/src/components/Company/TaxPayments/TaxPaymentsFlow/TaxPaymentsFlowComponents.d.ts +20 -0
  141. package/dist/src/components/Company/TaxPayments/TaxPaymentsFlow/taxPaymentsStateMachine.d.ts +10 -0
  142. package/dist/src/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsList.d.ts +28 -0
  143. package/dist/src/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsListPresentation.d.ts +33 -0
  144. package/dist/src/components/Company/TaxPayments/index.d.ts +6 -0
  145. package/dist/src/components/Company/TaxPayments/shared/payrollLookupWindow.d.ts +29 -0
  146. package/dist/src/components/Company/TaxPayments/shared/payrollLookupWindow.test.d.ts +1 -0
  147. package/dist/src/components/Company/TaxPayments/shared/taxPaymentStatus.d.ts +62 -0
  148. package/dist/src/components/Company/TaxPayments/shared/taxPaymentStatus.test.d.ts +1 -0
  149. package/dist/src/components/Company/TaxPayments/shared/useAllTaxPayments.d.ts +30 -0
  150. package/dist/src/components/Company/exports/companyManagement.d.ts +2 -0
  151. package/dist/src/components/Payroll/PayrollConfiguration/__fixtures__/payrollConfigurationMocks.d.ts +6 -1
  152. package/dist/src/components/Payroll/PayrollFlow/PayrollFlow.d.ts +1 -0
  153. package/dist/src/components/Payroll/PayrollLanding/PayrollLanding.d.ts +1 -0
  154. package/dist/src/components/Payroll/PayrollOverview/PayrollOverview.d.ts +9 -3
  155. package/dist/src/components/Payroll/helpers.d.ts +34 -18
  156. package/dist/src/contexts/ApiProvider/payrollOffCycleReasonEnumHook.d.ts +14 -0
  157. package/dist/src/contexts/ApiProvider/payrollOffCycleReasonEnumHook.test.d.ts +1 -0
  158. package/dist/src/contexts/UnstableFeaturesProvider/useUnstableFeature.d.ts +2 -0
  159. package/dist/src/helpers/dateFormatting.d.ts +13 -0
  160. package/dist/src/i18n/types.d.ts +168 -4
  161. package/dist/src/models/external.d.ts +2 -0
  162. package/dist/src/shared/constants.d.ts +18 -0
  163. package/dist/style.css +1 -1
  164. package/docs/guides/endpoint-inventory.json +33 -0
  165. package/package.json +30 -27
@@ -1,7 +1,13 @@
1
- import { PaySchedule as r } from "../PaySchedule/management/PaySchedule.js";
2
- import { PayScheduleAssignment as t } from "../PaySchedule/management/PayScheduleAssignment/PayScheduleAssignment.js";
1
+ import { PaySchedule as t } from "../PaySchedule/management/PaySchedule.js";
2
+ import { PayScheduleAssignment as a } from "../PaySchedule/management/PayScheduleAssignment/PayScheduleAssignment.js";
3
+ import { TaxPaymentDetail as x } from "../TaxPayments/TaxPaymentDetail/TaxPaymentDetail.js";
4
+ import { TaxPaymentsFlow as n } from "../TaxPayments/TaxPaymentsFlow/TaxPaymentsFlow.js";
5
+ import { TaxPaymentsList as s } from "../TaxPayments/TaxPaymentsList/TaxPaymentsList.js";
3
6
  export {
4
- r as PaySchedule,
5
- t as PayScheduleAssignment
7
+ t as PaySchedule,
8
+ a as PayScheduleAssignment,
9
+ x as TaxPaymentDetail,
10
+ n as TaxPaymentsFlow,
11
+ s as TaxPaymentsList
6
12
  };
7
13
  //# sourceMappingURL=companyManagement.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"companyManagement.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
1
+ {"version":3,"file":"companyManagement.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
@@ -9,14 +9,13 @@ import "@gusto/embedded-api/models/errors/gustoembeddederror";
9
9
  import "@gusto/embedded-api/models/errors/sdkvalidationerror";
10
10
  import "@gusto/embedded-api/models/errors/unprocessableentityerror";
11
11
  import "@gusto/embedded-api/models/errors/httpclienterrors";
12
- import "dompurify";
13
- import "../../../../../../contexts/LocaleProvider/useLocale.js";
14
12
  import "../../../../../../shared/constants.js";
15
13
  import "../../../../../../contexts/ComponentAdapter/useComponentContext.js";
14
+ import "../../../../../../contexts/LoadingIndicatorProvider/useLoadingIndicator.js";
16
15
  import { createCompoundContext as t } from "../../../../../Base/createCompoundContext.js";
17
- const [f, v] = t("DocumentListContext");
16
+ const [a, f] = t("DocumentListContext");
18
17
  export {
19
- v as DocumentListProvider,
20
- f as useDocumentList
18
+ f as DocumentListProvider,
19
+ a as useDocumentList
21
20
  };
22
21
  //# sourceMappingURL=useDocumentList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useDocumentList.js","sources":["../../../../../../../src/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.ts"],"sourcesContent":["import type { Form } from '@gusto/embedded-api/models/components/form'\nimport { createCompoundContext } from '@/components/Base'\n\ntype DocumentListContextType = {\n employeeForms: Form[]\n hasSignedAllForms: boolean\n handleContinue: () => void\n handleRequestFormToSign: (form: Form) => void\n documentListError: Error | null\n formToSign?: Form\n}\n\nconst [useDocumentList, DocumentListProvider] =\n createCompoundContext<DocumentListContextType>('DocumentListContext')\nexport { useDocumentList, DocumentListProvider }\n"],"names":["useDocumentList","DocumentListProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;;AAYA,MAAM,CAACA,GAAiBC,CAAoB,IAC1CC,EAA+C,qBAAqB;"}
1
+ {"version":3,"file":"useDocumentList.js","sources":["../../../../../../../src/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.ts"],"sourcesContent":["import type { Form } from '@gusto/embedded-api/models/components/form'\nimport { createCompoundContext } from '@/components/Base'\n\ntype DocumentListContextType = {\n employeeForms: Form[]\n hasSignedAllForms: boolean\n handleContinue: () => void\n handleRequestFormToSign: (form: Form) => void\n documentListError: Error | null\n formToSign?: Form\n}\n\nconst [useDocumentList, DocumentListProvider] =\n createCompoundContext<DocumentListContextType>('DocumentListContext')\nexport { useDocumentList, DocumentListProvider }\n"],"names":["useDocumentList","DocumentListProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;AAYA,MAAM,CAACA,GAAiBC,CAAoB,IAC1CC,EAA+C,qBAAqB;"}
@@ -1,72 +1,73 @@
1
- import { state as a, transition as o, reduce as n } from "robot3";
2
- import { DashboardFlowContextual as L, TerminationFlowContextual as m, OnboardingExecutionFlowContextual as r, EmployeeListContextual as s } from "./EmployeeListFlowComponents.js";
1
+ import { state as a, transition as t, reduce as n } from "robot3";
2
+ import { DashboardFlowContextual as i, TerminationFlowContextual as m, OnboardingExecutionFlowContextual as s, EmployeeListContextual as _ } from "./EmployeeListFlowComponents.js";
3
3
  import { componentEvents as e } from "../../../shared/constants.js";
4
- const i = {
4
+ const L = {
5
5
  type: "minimal",
6
6
  back: {
7
7
  labelKey: "backToListCta",
8
8
  namespace: "Employee.ManagementEmployeeList",
9
9
  event: e.EMPLOYEE_RETURN_TO_LIST
10
10
  }
11
- }, t = n(
11
+ }, o = n(
12
12
  (E) => ({
13
13
  ...E,
14
- component: s,
14
+ component: _,
15
15
  header: null,
16
16
  employeeId: void 0
17
17
  })
18
- ), _ = {
18
+ ), p = {
19
19
  list: a(
20
- o(
20
+ t(
21
21
  e.EMPLOYEE_UPDATE,
22
22
  "dashboard",
23
23
  n(
24
24
  (E, l) => ({
25
25
  ...E,
26
- component: L,
27
- header: i,
26
+ component: i,
27
+ header: L,
28
28
  employeeId: l.payload.employeeId
29
29
  })
30
30
  )
31
31
  ),
32
- o(
32
+ t(
33
33
  e.EMPLOYEE_DISMISS,
34
34
  "terminate",
35
35
  n(
36
36
  (E, l) => ({
37
37
  ...E,
38
38
  component: m,
39
- header: i,
39
+ header: L,
40
40
  employeeId: l.payload.employeeId
41
41
  })
42
42
  )
43
43
  ),
44
- o(
44
+ t(
45
45
  e.EMPLOYEE_CREATE,
46
46
  "onboard",
47
47
  n((E) => ({
48
48
  ...E,
49
- component: r,
50
- header: i
49
+ component: s,
50
+ header: L
51
51
  }))
52
52
  )
53
53
  ),
54
54
  dashboard: a(
55
- o(e.EMPLOYEE_RETURN_TO_LIST, "list", t)
55
+ t(e.EMPLOYEE_RETURN_TO_LIST, "list", o)
56
56
  ),
57
57
  terminate: a(
58
- o(e.EMPLOYEE_RETURN_TO_LIST, "list", t),
59
- o(e.PAYROLL_EXIT_FLOW, "list", t),
60
- o(e.RUN_PAYROLL_CANCELLED, "list", t),
61
- o(e.CANCEL, "list", t)
58
+ t(e.EMPLOYEE_RETURN_TO_LIST, "list", o),
59
+ t(e.PAYROLL_EXIT_FLOW, "list", o),
60
+ t(e.RUN_PAYROLL_CANCELLED, "list", o),
61
+ t(e.RUN_PAYROLL_NOT_CALCULATED_BACK_TO_LIST, "list", o),
62
+ t(e.CANCEL, "list", o)
62
63
  ),
63
64
  onboard: a(
64
- o(e.EMPLOYEE_RETURN_TO_LIST, "list", t),
65
- o(e.EMPLOYEES_LIST, "list", t),
66
- o(e.CANCEL, "list", t)
65
+ t(e.EMPLOYEE_RETURN_TO_LIST, "list", o),
66
+ t(e.EMPLOYEES_LIST, "list", o),
67
+ t(e.CANCEL, "list", o)
67
68
  )
68
69
  };
69
70
  export {
70
- _ as employeeListStateMachine
71
+ p as employeeListStateMachine
71
72
  };
72
73
  //# sourceMappingURL=employeeListStateMachine.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"employeeListStateMachine.js","sources":["../../../../src/components/Employee/EmployeeListFlow/employeeListStateMachine.ts"],"sourcesContent":["import { transition, reduce, state } from 'robot3'\nimport {\n DashboardFlowContextual,\n EmployeeListContextual,\n OnboardingExecutionFlowContextual,\n TerminationFlowContextual,\n type EmployeeListFlowContextInterface,\n} from './EmployeeListFlowComponents'\nimport { componentEvents } from '@/shared/constants'\nimport type { MachineEventType, MachineTransition } from '@/types/Helpers'\nimport type { FlowHeaderConfig } from '@/components/Flow/useFlow'\n\ntype EventPayloads = {\n [componentEvents.EMPLOYEE_UPDATE]: { employeeId: string }\n [componentEvents.EMPLOYEE_DISMISS]: { employeeId: string }\n}\n\nconst backToListHeader: FlowHeaderConfig = {\n type: 'minimal',\n back: {\n labelKey: 'backToListCta',\n namespace: 'Employee.ManagementEmployeeList',\n event: componentEvents.EMPLOYEE_RETURN_TO_LIST,\n },\n}\n\nconst returnToList = reduce(\n (ctx: EmployeeListFlowContextInterface): EmployeeListFlowContextInterface => ({\n ...ctx,\n component: EmployeeListContextual,\n header: null,\n employeeId: undefined,\n }),\n)\n\n/** @internal */\nexport const employeeListStateMachine = {\n list: state<MachineTransition>(\n transition(\n componentEvents.EMPLOYEE_UPDATE,\n 'dashboard',\n reduce(\n (\n ctx: EmployeeListFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.EMPLOYEE_UPDATE>,\n ): EmployeeListFlowContextInterface => ({\n ...ctx,\n component: DashboardFlowContextual,\n header: backToListHeader,\n employeeId: ev.payload.employeeId,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_DISMISS,\n 'terminate',\n reduce(\n (\n ctx: EmployeeListFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.EMPLOYEE_DISMISS>,\n ): EmployeeListFlowContextInterface => ({\n ...ctx,\n component: TerminationFlowContextual,\n header: backToListHeader,\n employeeId: ev.payload.employeeId,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_CREATE,\n 'onboard',\n reduce((ctx: EmployeeListFlowContextInterface): EmployeeListFlowContextInterface => ({\n ...ctx,\n component: OnboardingExecutionFlowContextual,\n header: backToListHeader,\n })),\n ),\n ),\n dashboard: state<MachineTransition>(\n transition(componentEvents.EMPLOYEE_RETURN_TO_LIST, 'list', returnToList),\n ),\n terminate: state<MachineTransition>(\n transition(componentEvents.EMPLOYEE_RETURN_TO_LIST, 'list', returnToList),\n transition(componentEvents.PAYROLL_EXIT_FLOW, 'list', returnToList),\n transition(componentEvents.RUN_PAYROLL_CANCELLED, 'list', returnToList),\n transition(componentEvents.CANCEL, 'list', returnToList),\n ),\n onboard: state<MachineTransition>(\n transition(componentEvents.EMPLOYEE_RETURN_TO_LIST, 'list', returnToList),\n transition(componentEvents.EMPLOYEES_LIST, 'list', returnToList),\n transition(componentEvents.CANCEL, 'list', returnToList),\n ),\n}\n"],"names":["backToListHeader","componentEvents","returnToList","reduce","ctx","EmployeeListContextual","employeeListStateMachine","state","transition","ev","DashboardFlowContextual","TerminationFlowContextual","OnboardingExecutionFlowContextual"],"mappings":";;;AAiBA,MAAMA,IAAqC;AAAA,EACzC,MAAM;AAAA,EACN,MAAM;AAAA,IACJ,UAAU;AAAA,IACV,WAAW;AAAA,IACX,OAAOC,EAAgB;AAAA,EAAA;AAE3B,GAEMC,IAAeC;AAAA,EACnB,CAACC,OAA6E;AAAA,IAC5E,GAAGA;AAAA,IACH,WAAWC;AAAA,IACX,QAAQ;AAAA,IACR,YAAY;AAAA,EAAA;AAEhB,GAGaC,IAA2B;AAAA,EACtC,MAAMC;AAAA,IACJC;AAAA,MACEP,EAAgB;AAAA,MAChB;AAAA,MACAE;AAAA,QACE,CACEC,GACAK,OACsC;AAAA,UACtC,GAAGL;AAAA,UACH,WAAWM;AAAA,UACX,QAAQV;AAAA,UACR,YAAYS,EAAG,QAAQ;AAAA,QAAA;AAAA,MACzB;AAAA,IACF;AAAA,IAEFD;AAAA,MACEP,EAAgB;AAAA,MAChB;AAAA,MACAE;AAAA,QACE,CACEC,GACAK,OACsC;AAAA,UACtC,GAAGL;AAAA,UACH,WAAWO;AAAA,UACX,QAAQX;AAAA,UACR,YAAYS,EAAG,QAAQ;AAAA,QAAA;AAAA,MACzB;AAAA,IACF;AAAA,IAEFD;AAAA,MACEP,EAAgB;AAAA,MAChB;AAAA,MACAE,EAAO,CAACC,OAA6E;AAAA,QACnF,GAAGA;AAAA,QACH,WAAWQ;AAAA,QACX,QAAQZ;AAAA,MAAA,EACR;AAAA,IAAA;AAAA,EACJ;AAAA,EAEF,WAAWO;AAAA,IACTC,EAAWP,EAAgB,yBAAyB,QAAQC,CAAY;AAAA,EAAA;AAAA,EAE1E,WAAWK;AAAA,IACTC,EAAWP,EAAgB,yBAAyB,QAAQC,CAAY;AAAA,IACxEM,EAAWP,EAAgB,mBAAmB,QAAQC,CAAY;AAAA,IAClEM,EAAWP,EAAgB,uBAAuB,QAAQC,CAAY;AAAA,IACtEM,EAAWP,EAAgB,QAAQ,QAAQC,CAAY;AAAA,EAAA;AAAA,EAEzD,SAASK;AAAA,IACPC,EAAWP,EAAgB,yBAAyB,QAAQC,CAAY;AAAA,IACxEM,EAAWP,EAAgB,gBAAgB,QAAQC,CAAY;AAAA,IAC/DM,EAAWP,EAAgB,QAAQ,QAAQC,CAAY;AAAA,EAAA;AAE3D;"}
1
+ {"version":3,"file":"employeeListStateMachine.js","sources":["../../../../src/components/Employee/EmployeeListFlow/employeeListStateMachine.ts"],"sourcesContent":["import { transition, reduce, state } from 'robot3'\nimport {\n DashboardFlowContextual,\n EmployeeListContextual,\n OnboardingExecutionFlowContextual,\n TerminationFlowContextual,\n type EmployeeListFlowContextInterface,\n} from './EmployeeListFlowComponents'\nimport { componentEvents } from '@/shared/constants'\nimport type { MachineEventType, MachineTransition } from '@/types/Helpers'\nimport type { FlowHeaderConfig } from '@/components/Flow/useFlow'\n\ntype EventPayloads = {\n [componentEvents.EMPLOYEE_UPDATE]: { employeeId: string }\n [componentEvents.EMPLOYEE_DISMISS]: { employeeId: string }\n}\n\nconst backToListHeader: FlowHeaderConfig = {\n type: 'minimal',\n back: {\n labelKey: 'backToListCta',\n namespace: 'Employee.ManagementEmployeeList',\n event: componentEvents.EMPLOYEE_RETURN_TO_LIST,\n },\n}\n\nconst returnToList = reduce(\n (ctx: EmployeeListFlowContextInterface): EmployeeListFlowContextInterface => ({\n ...ctx,\n component: EmployeeListContextual,\n header: null,\n employeeId: undefined,\n }),\n)\n\n/** @internal */\nexport const employeeListStateMachine = {\n list: state<MachineTransition>(\n transition(\n componentEvents.EMPLOYEE_UPDATE,\n 'dashboard',\n reduce(\n (\n ctx: EmployeeListFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.EMPLOYEE_UPDATE>,\n ): EmployeeListFlowContextInterface => ({\n ...ctx,\n component: DashboardFlowContextual,\n header: backToListHeader,\n employeeId: ev.payload.employeeId,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_DISMISS,\n 'terminate',\n reduce(\n (\n ctx: EmployeeListFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.EMPLOYEE_DISMISS>,\n ): EmployeeListFlowContextInterface => ({\n ...ctx,\n component: TerminationFlowContextual,\n header: backToListHeader,\n employeeId: ev.payload.employeeId,\n }),\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_CREATE,\n 'onboard',\n reduce((ctx: EmployeeListFlowContextInterface): EmployeeListFlowContextInterface => ({\n ...ctx,\n component: OnboardingExecutionFlowContextual,\n header: backToListHeader,\n })),\n ),\n ),\n dashboard: state<MachineTransition>(\n transition(componentEvents.EMPLOYEE_RETURN_TO_LIST, 'list', returnToList),\n ),\n terminate: state<MachineTransition>(\n transition(componentEvents.EMPLOYEE_RETURN_TO_LIST, 'list', returnToList),\n transition(componentEvents.PAYROLL_EXIT_FLOW, 'list', returnToList),\n transition(componentEvents.RUN_PAYROLL_CANCELLED, 'list', returnToList),\n transition(componentEvents.RUN_PAYROLL_NOT_CALCULATED_BACK_TO_LIST, 'list', returnToList),\n transition(componentEvents.CANCEL, 'list', returnToList),\n ),\n onboard: state<MachineTransition>(\n transition(componentEvents.EMPLOYEE_RETURN_TO_LIST, 'list', returnToList),\n transition(componentEvents.EMPLOYEES_LIST, 'list', returnToList),\n transition(componentEvents.CANCEL, 'list', returnToList),\n ),\n}\n"],"names":["backToListHeader","componentEvents","returnToList","reduce","ctx","EmployeeListContextual","employeeListStateMachine","state","transition","ev","DashboardFlowContextual","TerminationFlowContextual","OnboardingExecutionFlowContextual"],"mappings":";;;AAiBA,MAAMA,IAAqC;AAAA,EACzC,MAAM;AAAA,EACN,MAAM;AAAA,IACJ,UAAU;AAAA,IACV,WAAW;AAAA,IACX,OAAOC,EAAgB;AAAA,EAAA;AAE3B,GAEMC,IAAeC;AAAA,EACnB,CAACC,OAA6E;AAAA,IAC5E,GAAGA;AAAA,IACH,WAAWC;AAAA,IACX,QAAQ;AAAA,IACR,YAAY;AAAA,EAAA;AAEhB,GAGaC,IAA2B;AAAA,EACtC,MAAMC;AAAA,IACJC;AAAA,MACEP,EAAgB;AAAA,MAChB;AAAA,MACAE;AAAA,QACE,CACEC,GACAK,OACsC;AAAA,UACtC,GAAGL;AAAA,UACH,WAAWM;AAAA,UACX,QAAQV;AAAA,UACR,YAAYS,EAAG,QAAQ;AAAA,QAAA;AAAA,MACzB;AAAA,IACF;AAAA,IAEFD;AAAA,MACEP,EAAgB;AAAA,MAChB;AAAA,MACAE;AAAA,QACE,CACEC,GACAK,OACsC;AAAA,UACtC,GAAGL;AAAA,UACH,WAAWO;AAAA,UACX,QAAQX;AAAA,UACR,YAAYS,EAAG,QAAQ;AAAA,QAAA;AAAA,MACzB;AAAA,IACF;AAAA,IAEFD;AAAA,MACEP,EAAgB;AAAA,MAChB;AAAA,MACAE,EAAO,CAACC,OAA6E;AAAA,QACnF,GAAGA;AAAA,QACH,WAAWQ;AAAA,QACX,QAAQZ;AAAA,MAAA,EACR;AAAA,IAAA;AAAA,EACJ;AAAA,EAEF,WAAWO;AAAA,IACTC,EAAWP,EAAgB,yBAAyB,QAAQC,CAAY;AAAA,EAAA;AAAA,EAE1E,WAAWK;AAAA,IACTC,EAAWP,EAAgB,yBAAyB,QAAQC,CAAY;AAAA,IACxEM,EAAWP,EAAgB,mBAAmB,QAAQC,CAAY;AAAA,IAClEM,EAAWP,EAAgB,uBAAuB,QAAQC,CAAY;AAAA,IACtEM,EAAWP,EAAgB,yCAAyC,QAAQC,CAAY;AAAA,IACxFM,EAAWP,EAAgB,QAAQ,QAAQC,CAAY;AAAA,EAAA;AAAA,EAEzD,SAASK;AAAA,IACPC,EAAWP,EAAgB,yBAAyB,QAAQC,CAAY;AAAA,IACxEM,EAAWP,EAAgB,gBAAgB,QAAQC,CAAY;AAAA,IAC/DM,EAAWP,EAAgB,QAAQ,QAAQC,CAAY;AAAA,EAAA;AAE3D;"}
@@ -1,8 +1,8 @@
1
- import { state as t, transition as m, reduce as e, guard as s } from "robot3";
2
- import { PayrollLandingContextual as p, TerminateEmployeeContextual as i, DismissalFlowContextual as u, TerminationSummaryContextual as d } from "./TerminationFlowComponents.js";
1
+ import { state as t, transition as e, reduce as m, guard as p } from "robot3";
2
+ import { TerminateEmployeeContextual as i, DismissalFlowContextual as u, TerminationSummaryContextual as d, PayrollLandingContextual as y } from "./TerminationFlowComponents.js";
3
3
  import { componentEvents as n } from "../../../../shared/constants.js";
4
4
  import { patchBreadcrumbsHeader as o } from "../../../../helpers/breadcrumbHelpers.js";
5
- const N = {
5
+ const O = {
6
6
  form: {
7
7
  parent: null,
8
8
  item: {
@@ -40,38 +40,45 @@ const N = {
40
40
  }
41
41
  }
42
42
  };
43
- function y(r) {
43
+ function E(r) {
44
44
  return {
45
45
  ...o(r, { currentBreadcrumbId: "form" }),
46
46
  component: i
47
47
  };
48
48
  }
49
- function E(r) {
49
+ function I(r) {
50
50
  return {
51
51
  ...o(r, { currentBreadcrumbId: "summary" }),
52
52
  component: d
53
53
  };
54
54
  }
55
- const l = m(
55
+ function c(r) {
56
+ return {
57
+ ...o(r, { currentBreadcrumbId: void 0 }),
58
+ component: y,
59
+ payrollOption: void 0
60
+ };
61
+ }
62
+ const l = e(
56
63
  n.BREADCRUMB_NAVIGATE,
57
64
  "form",
58
- s(
65
+ p(
59
66
  (r, a) => a.payload.key === "form"
60
67
  ),
61
- e(y)
62
- ), c = m(
68
+ m(E)
69
+ ), s = e(
63
70
  n.BREADCRUMB_NAVIGATE,
64
71
  "summary",
65
- s(
72
+ p(
66
73
  (r, a) => a.payload.key === "summary"
67
74
  ),
68
- e(E)
69
- ), O = {
75
+ m(I)
76
+ ), N = {
70
77
  form: t(
71
- m(
78
+ e(
72
79
  n.EMPLOYEE_TERMINATION_DONE,
73
80
  "summary",
74
- e(
81
+ m(
75
82
  (r, a) => ({
76
83
  ...o(r, { currentBreadcrumbId: "summary" }),
77
84
  component: d,
@@ -81,10 +88,10 @@ const l = m(
81
88
  })
82
89
  )
83
90
  ),
84
- m(
91
+ e(
85
92
  n.EMPLOYEE_TERMINATION_VIEW_SUMMARY,
86
93
  "summary",
87
- e((r) => ({
94
+ m((r) => ({
88
95
  ...o(r, { currentBreadcrumbId: "summary" }),
89
96
  component: d,
90
97
  alerts: void 0
@@ -92,19 +99,19 @@ const l = m(
92
99
  )
93
100
  ),
94
101
  summary: t(
95
- m(
102
+ e(
96
103
  n.EMPLOYEE_TERMINATION_EDIT,
97
104
  "form",
98
- e((r) => ({
105
+ m((r) => ({
99
106
  ...o(r, { currentBreadcrumbId: "form" }),
100
107
  component: i,
101
108
  alerts: void 0
102
109
  }))
103
110
  ),
104
- m(
111
+ e(
105
112
  n.EMPLOYEE_TERMINATION_CANCELLED,
106
113
  "form",
107
- e(
114
+ m(
108
115
  (r, a) => ({
109
116
  ...o(r, { currentBreadcrumbId: "form" }),
110
117
  component: i,
@@ -113,10 +120,10 @@ const l = m(
113
120
  })
114
121
  )
115
122
  ),
116
- m(
123
+ e(
117
124
  n.EMPLOYEE_TERMINATION_RUN_PAYROLL,
118
125
  "dismissalPayroll",
119
- e(
126
+ m(
120
127
  (r, a) => ({
121
128
  ...o(r, { currentBreadcrumbId: void 0 }),
122
129
  component: u,
@@ -124,10 +131,10 @@ const l = m(
124
131
  })
125
132
  )
126
133
  ),
127
- m(
134
+ e(
128
135
  n.EMPLOYEE_TERMINATION_RUN_OFF_CYCLE_PAYROLL,
129
136
  "dismissalPayroll",
130
- e((r) => ({
137
+ m((r) => ({
131
138
  ...o(r, { currentBreadcrumbId: void 0 }),
132
139
  component: u,
133
140
  payrollUuid: void 0
@@ -136,22 +143,23 @@ const l = m(
136
143
  l
137
144
  ),
138
145
  dismissalPayroll: t(
139
- m(
146
+ e(
140
147
  n.PAYROLL_EXIT_FLOW,
141
148
  "payrollLanding",
142
- e((r) => ({
143
- ...o(r, { currentBreadcrumbId: void 0 }),
144
- component: p,
145
- payrollOption: void 0
146
- }))
149
+ m(c)
150
+ ),
151
+ e(
152
+ n.RUN_PAYROLL_NOT_CALCULATED_BACK_TO_LIST,
153
+ "payrollLanding",
154
+ m(c)
147
155
  ),
148
- c,
156
+ s,
149
157
  l
150
158
  ),
151
- payrollLanding: t(c, l)
159
+ payrollLanding: t(s, l)
152
160
  };
153
161
  export {
154
- N as terminationBreadcrumbNodes,
155
- O as terminationMachine
162
+ O as terminationBreadcrumbNodes,
163
+ N as terminationMachine
156
164
  };
157
165
  //# sourceMappingURL=terminationStateMachine.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"terminationStateMachine.js","sources":["../../../../../src/components/Employee/Terminations/TerminationFlow/terminationStateMachine.ts"],"sourcesContent":["import { transition, reduce, state, guard } from 'robot3'\nimport type { PayrollOption } from '../types'\nimport type {\n TerminationFlowContextInterface,\n TerminationFlowAlert,\n} from './TerminationFlowComponents'\nimport {\n TerminateEmployeeContextual,\n TerminationSummaryContextual,\n DismissalFlowContextual,\n PayrollLandingContextual,\n} from './TerminationFlowComponents'\nimport { componentEvents } from '@/shared/constants'\nimport type { MachineEventType, MachineTransition } from '@/types/Helpers'\nimport type { BreadcrumbNodes } from '@/components/Common/FlowBreadcrumbs/FlowBreadcrumbsTypes'\nimport { patchBreadcrumbsHeader } from '@/helpers/breadcrumbHelpers'\n\ntype EventPayloads = {\n [componentEvents.EMPLOYEE_TERMINATION_DONE]: {\n employeeId: string\n effectiveDate: string\n payrollOption: PayrollOption\n payrollUuid?: string\n }\n [componentEvents.EMPLOYEE_TERMINATION_VIEW_SUMMARY]: {\n employeeId: string\n effectiveDate: string\n payrollOption?: PayrollOption\n }\n [componentEvents.EMPLOYEE_TERMINATION_EDIT]: {\n employeeId: string\n }\n [componentEvents.EMPLOYEE_TERMINATION_CANCELLED]: {\n employeeId: string\n alert?: TerminationFlowAlert\n }\n [componentEvents.EMPLOYEE_TERMINATION_RUN_OFF_CYCLE_PAYROLL]: {\n employeeId: string\n companyId: string\n }\n [componentEvents.EMPLOYEE_TERMINATION_RUN_PAYROLL]: {\n employeeId: string\n companyId: string\n payrollUuid?: string\n }\n}\n\n/** @internal */\nexport const terminationBreadcrumbNodes: BreadcrumbNodes = {\n form: {\n parent: null,\n item: {\n id: 'form',\n label: 'breadcrumbs.form',\n namespace: 'Employee.Terminations.TerminationFlow',\n onNavigate: ((ctx: TerminationFlowContextInterface) => ({\n ...patchBreadcrumbsHeader(ctx, { currentBreadcrumbId: 'form' }),\n component: TerminateEmployeeContextual,\n })) as (context: unknown) => unknown,\n },\n },\n summary: {\n parent: 'form',\n item: {\n id: 'summary',\n label: 'breadcrumbs.summary',\n namespace: 'Employee.Terminations.TerminationFlow',\n onNavigate: ((ctx: TerminationFlowContextInterface) => ({\n ...patchBreadcrumbsHeader(ctx, { currentBreadcrumbId: 'summary' }),\n component: TerminationSummaryContextual,\n })) as (context: unknown) => unknown,\n },\n },\n dismissal: {\n parent: 'summary',\n item: {\n id: 'dismissal',\n label: 'breadcrumbs.dismissal',\n namespace: 'Employee.Terminations.TerminationFlow',\n onNavigate: ((ctx: TerminationFlowContextInterface) => ({\n ...patchBreadcrumbsHeader(ctx, { currentBreadcrumbId: undefined }),\n component: DismissalFlowContextual,\n })) as (context: unknown) => unknown,\n },\n },\n}\n\nfunction toFormReducer(ctx: TerminationFlowContextInterface): TerminationFlowContextInterface {\n return {\n ...patchBreadcrumbsHeader(ctx, { currentBreadcrumbId: 'form' }),\n component: TerminateEmployeeContextual,\n }\n}\n\nfunction toSummaryReducer(ctx: TerminationFlowContextInterface): TerminationFlowContextInterface {\n return {\n ...patchBreadcrumbsHeader(ctx, { currentBreadcrumbId: 'summary' }),\n component: TerminationSummaryContextual,\n }\n}\n\nconst formBreadcrumbTransition = transition(\n componentEvents.BREADCRUMB_NAVIGATE,\n 'form',\n guard(\n (_ctx: TerminationFlowContextInterface, ev: { payload: { key: string } }) =>\n ev.payload.key === 'form',\n ),\n reduce(toFormReducer),\n)\n\nconst summaryBreadcrumbTransition = transition(\n componentEvents.BREADCRUMB_NAVIGATE,\n 'summary',\n guard(\n (_ctx: TerminationFlowContextInterface, ev: { payload: { key: string } }) =>\n ev.payload.key === 'summary',\n ),\n reduce(toSummaryReducer),\n)\n\n/** @internal */\nexport const terminationMachine = {\n form: state<MachineTransition>(\n transition(\n componentEvents.EMPLOYEE_TERMINATION_DONE,\n 'summary',\n reduce(\n (\n ctx: TerminationFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.EMPLOYEE_TERMINATION_DONE>,\n ): TerminationFlowContextInterface => {\n return {\n ...patchBreadcrumbsHeader(ctx, { currentBreadcrumbId: 'summary' }),\n component: TerminationSummaryContextual,\n payrollOption: ev.payload.payrollOption,\n payrollUuid: ev.payload.payrollUuid,\n alerts: undefined,\n }\n },\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_TERMINATION_VIEW_SUMMARY,\n 'summary',\n reduce((ctx: TerminationFlowContextInterface): TerminationFlowContextInterface => {\n return {\n ...patchBreadcrumbsHeader(ctx, { currentBreadcrumbId: 'summary' }),\n component: TerminationSummaryContextual,\n alerts: undefined,\n }\n }),\n ),\n ),\n summary: state<MachineTransition>(\n transition(\n componentEvents.EMPLOYEE_TERMINATION_EDIT,\n 'form',\n reduce((ctx: TerminationFlowContextInterface): TerminationFlowContextInterface => {\n return {\n ...patchBreadcrumbsHeader(ctx, { currentBreadcrumbId: 'form' }),\n component: TerminateEmployeeContextual,\n alerts: undefined,\n }\n }),\n ),\n transition(\n componentEvents.EMPLOYEE_TERMINATION_CANCELLED,\n 'form',\n reduce(\n (\n ctx: TerminationFlowContextInterface,\n ev: MachineEventType<\n EventPayloads,\n typeof componentEvents.EMPLOYEE_TERMINATION_CANCELLED\n >,\n ): TerminationFlowContextInterface => {\n return {\n ...patchBreadcrumbsHeader(ctx, { currentBreadcrumbId: 'form' }),\n component: TerminateEmployeeContextual,\n alerts: ev.payload.alert ? [ev.payload.alert] : undefined,\n payrollOption: undefined,\n }\n },\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_TERMINATION_RUN_PAYROLL,\n 'dismissalPayroll',\n reduce(\n (\n ctx: TerminationFlowContextInterface,\n ev: MachineEventType<\n EventPayloads,\n typeof componentEvents.EMPLOYEE_TERMINATION_RUN_PAYROLL\n >,\n ): TerminationFlowContextInterface => {\n return {\n ...patchBreadcrumbsHeader(ctx, { currentBreadcrumbId: undefined }),\n component: DismissalFlowContextual,\n payrollUuid: ev.payload.payrollUuid ?? ctx.payrollUuid,\n }\n },\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_TERMINATION_RUN_OFF_CYCLE_PAYROLL,\n 'dismissalPayroll',\n reduce((ctx: TerminationFlowContextInterface): TerminationFlowContextInterface => {\n return {\n ...patchBreadcrumbsHeader(ctx, { currentBreadcrumbId: undefined }),\n component: DismissalFlowContextual,\n payrollUuid: undefined,\n }\n }),\n ),\n formBreadcrumbTransition,\n ),\n dismissalPayroll: state<MachineTransition>(\n transition(\n componentEvents.PAYROLL_EXIT_FLOW,\n 'payrollLanding',\n reduce((ctx: TerminationFlowContextInterface): TerminationFlowContextInterface => ({\n ...patchBreadcrumbsHeader(ctx, { currentBreadcrumbId: undefined }),\n component: PayrollLandingContextual,\n payrollOption: undefined,\n })),\n ),\n summaryBreadcrumbTransition,\n formBreadcrumbTransition,\n ),\n payrollLanding: state<MachineTransition>(summaryBreadcrumbTransition, formBreadcrumbTransition),\n}\n"],"names":["terminationBreadcrumbNodes","ctx","patchBreadcrumbsHeader","TerminateEmployeeContextual","TerminationSummaryContextual","DismissalFlowContextual","toFormReducer","toSummaryReducer","formBreadcrumbTransition","transition","componentEvents","guard","_ctx","ev","reduce","summaryBreadcrumbTransition","terminationMachine","state","PayrollLandingContextual"],"mappings":";;;;AAgDO,MAAMA,IAA8C;AAAA,EACzD,MAAM;AAAA,IACJ,QAAQ;AAAA,IACR,MAAM;AAAA,MACJ,IAAI;AAAA,MACJ,OAAO;AAAA,MACP,WAAW;AAAA,MACX,aAAa,CAACC,OAA0C;AAAA,QACtD,GAAGC,EAAuBD,GAAK,EAAE,qBAAqB,QAAQ;AAAA,QAC9D,WAAWE;AAAA,MAAA;AAAA,IACb;AAAA,EACF;AAAA,EAEF,SAAS;AAAA,IACP,QAAQ;AAAA,IACR,MAAM;AAAA,MACJ,IAAI;AAAA,MACJ,OAAO;AAAA,MACP,WAAW;AAAA,MACX,aAAa,CAACF,OAA0C;AAAA,QACtD,GAAGC,EAAuBD,GAAK,EAAE,qBAAqB,WAAW;AAAA,QACjE,WAAWG;AAAA,MAAA;AAAA,IACb;AAAA,EACF;AAAA,EAEF,WAAW;AAAA,IACT,QAAQ;AAAA,IACR,MAAM;AAAA,MACJ,IAAI;AAAA,MACJ,OAAO;AAAA,MACP,WAAW;AAAA,MACX,aAAa,CAACH,OAA0C;AAAA,QACtD,GAAGC,EAAuBD,GAAK,EAAE,qBAAqB,QAAW;AAAA,QACjE,WAAWI;AAAA,MAAA;AAAA,IACb;AAAA,EACF;AAEJ;AAEA,SAASC,EAAcL,GAAuE;AAC5F,SAAO;AAAA,IACL,GAAGC,EAAuBD,GAAK,EAAE,qBAAqB,QAAQ;AAAA,IAC9D,WAAWE;AAAA,EAAA;AAEf;AAEA,SAASI,EAAiBN,GAAuE;AAC/F,SAAO;AAAA,IACL,GAAGC,EAAuBD,GAAK,EAAE,qBAAqB,WAAW;AAAA,IACjE,WAAWG;AAAA,EAAA;AAEf;AAEA,MAAMI,IAA2BC;AAAA,EAC/BC,EAAgB;AAAA,EAChB;AAAA,EACAC;AAAA,IACE,CAACC,GAAuCC,MACtCA,EAAG,QAAQ,QAAQ;AAAA,EAAA;AAAA,EAEvBC,EAAOR,CAAa;AACtB,GAEMS,IAA8BN;AAAA,EAClCC,EAAgB;AAAA,EAChB;AAAA,EACAC;AAAA,IACE,CAACC,GAAuCC,MACtCA,EAAG,QAAQ,QAAQ;AAAA,EAAA;AAAA,EAEvBC,EAAOP,CAAgB;AACzB,GAGaS,IAAqB;AAAA,EAChC,MAAMC;AAAA,IACJR;AAAA,MACEC,EAAgB;AAAA,MAChB;AAAA,MACAI;AAAA,QACE,CACEb,GACAY,OAEO;AAAA,UACL,GAAGX,EAAuBD,GAAK,EAAE,qBAAqB,WAAW;AAAA,UACjE,WAAWG;AAAA,UACX,eAAeS,EAAG,QAAQ;AAAA,UAC1B,aAAaA,EAAG,QAAQ;AAAA,UACxB,QAAQ;AAAA,QAAA;AAAA,MAEZ;AAAA,IACF;AAAA,IAEFJ;AAAA,MACEC,EAAgB;AAAA,MAChB;AAAA,MACAI,EAAO,CAACb,OACC;AAAA,QACL,GAAGC,EAAuBD,GAAK,EAAE,qBAAqB,WAAW;AAAA,QACjE,WAAWG;AAAA,QACX,QAAQ;AAAA,MAAA,EAEX;AAAA,IAAA;AAAA,EACH;AAAA,EAEF,SAASa;AAAA,IACPR;AAAA,MACEC,EAAgB;AAAA,MAChB;AAAA,MACAI,EAAO,CAACb,OACC;AAAA,QACL,GAAGC,EAAuBD,GAAK,EAAE,qBAAqB,QAAQ;AAAA,QAC9D,WAAWE;AAAA,QACX,QAAQ;AAAA,MAAA,EAEX;AAAA,IAAA;AAAA,IAEHM;AAAA,MACEC,EAAgB;AAAA,MAChB;AAAA,MACAI;AAAA,QACE,CACEb,GACAY,OAKO;AAAA,UACL,GAAGX,EAAuBD,GAAK,EAAE,qBAAqB,QAAQ;AAAA,UAC9D,WAAWE;AAAA,UACX,QAAQU,EAAG,QAAQ,QAAQ,CAACA,EAAG,QAAQ,KAAK,IAAI;AAAA,UAChD,eAAe;AAAA,QAAA;AAAA,MAEnB;AAAA,IACF;AAAA,IAEFJ;AAAA,MACEC,EAAgB;AAAA,MAChB;AAAA,MACAI;AAAA,QACE,CACEb,GACAY,OAKO;AAAA,UACL,GAAGX,EAAuBD,GAAK,EAAE,qBAAqB,QAAW;AAAA,UACjE,WAAWI;AAAA,UACX,aAAaQ,EAAG,QAAQ,eAAeZ,EAAI;AAAA,QAAA;AAAA,MAE/C;AAAA,IACF;AAAA,IAEFQ;AAAA,MACEC,EAAgB;AAAA,MAChB;AAAA,MACAI,EAAO,CAACb,OACC;AAAA,QACL,GAAGC,EAAuBD,GAAK,EAAE,qBAAqB,QAAW;AAAA,QACjE,WAAWI;AAAA,QACX,aAAa;AAAA,MAAA,EAEhB;AAAA,IAAA;AAAA,IAEHG;AAAA,EAAA;AAAA,EAEF,kBAAkBS;AAAA,IAChBR;AAAA,MACEC,EAAgB;AAAA,MAChB;AAAA,MACAI,EAAO,CAACb,OAA2E;AAAA,QACjF,GAAGC,EAAuBD,GAAK,EAAE,qBAAqB,QAAW;AAAA,QACjE,WAAWiB;AAAA,QACX,eAAe;AAAA,MAAA,EACf;AAAA,IAAA;AAAA,IAEJH;AAAA,IACAP;AAAA,EAAA;AAAA,EAEF,gBAAgBS,EAAyBF,GAA6BP,CAAwB;AAChG;"}
1
+ {"version":3,"file":"terminationStateMachine.js","sources":["../../../../../src/components/Employee/Terminations/TerminationFlow/terminationStateMachine.ts"],"sourcesContent":["import { transition, reduce, state, guard } from 'robot3'\nimport type { PayrollOption } from '../types'\nimport type {\n TerminationFlowContextInterface,\n TerminationFlowAlert,\n} from './TerminationFlowComponents'\nimport {\n TerminateEmployeeContextual,\n TerminationSummaryContextual,\n DismissalFlowContextual,\n PayrollLandingContextual,\n} from './TerminationFlowComponents'\nimport { componentEvents } from '@/shared/constants'\nimport type { MachineEventType, MachineTransition } from '@/types/Helpers'\nimport type { BreadcrumbNodes } from '@/components/Common/FlowBreadcrumbs/FlowBreadcrumbsTypes'\nimport { patchBreadcrumbsHeader } from '@/helpers/breadcrumbHelpers'\n\ntype EventPayloads = {\n [componentEvents.EMPLOYEE_TERMINATION_DONE]: {\n employeeId: string\n effectiveDate: string\n payrollOption: PayrollOption\n payrollUuid?: string\n }\n [componentEvents.EMPLOYEE_TERMINATION_VIEW_SUMMARY]: {\n employeeId: string\n effectiveDate: string\n payrollOption?: PayrollOption\n }\n [componentEvents.EMPLOYEE_TERMINATION_EDIT]: {\n employeeId: string\n }\n [componentEvents.EMPLOYEE_TERMINATION_CANCELLED]: {\n employeeId: string\n alert?: TerminationFlowAlert\n }\n [componentEvents.EMPLOYEE_TERMINATION_RUN_OFF_CYCLE_PAYROLL]: {\n employeeId: string\n companyId: string\n }\n [componentEvents.EMPLOYEE_TERMINATION_RUN_PAYROLL]: {\n employeeId: string\n companyId: string\n payrollUuid?: string\n }\n}\n\n/** @internal */\nexport const terminationBreadcrumbNodes: BreadcrumbNodes = {\n form: {\n parent: null,\n item: {\n id: 'form',\n label: 'breadcrumbs.form',\n namespace: 'Employee.Terminations.TerminationFlow',\n onNavigate: ((ctx: TerminationFlowContextInterface) => ({\n ...patchBreadcrumbsHeader(ctx, { currentBreadcrumbId: 'form' }),\n component: TerminateEmployeeContextual,\n })) as (context: unknown) => unknown,\n },\n },\n summary: {\n parent: 'form',\n item: {\n id: 'summary',\n label: 'breadcrumbs.summary',\n namespace: 'Employee.Terminations.TerminationFlow',\n onNavigate: ((ctx: TerminationFlowContextInterface) => ({\n ...patchBreadcrumbsHeader(ctx, { currentBreadcrumbId: 'summary' }),\n component: TerminationSummaryContextual,\n })) as (context: unknown) => unknown,\n },\n },\n dismissal: {\n parent: 'summary',\n item: {\n id: 'dismissal',\n label: 'breadcrumbs.dismissal',\n namespace: 'Employee.Terminations.TerminationFlow',\n onNavigate: ((ctx: TerminationFlowContextInterface) => ({\n ...patchBreadcrumbsHeader(ctx, { currentBreadcrumbId: undefined }),\n component: DismissalFlowContextual,\n })) as (context: unknown) => unknown,\n },\n },\n}\n\nfunction toFormReducer(ctx: TerminationFlowContextInterface): TerminationFlowContextInterface {\n return {\n ...patchBreadcrumbsHeader(ctx, { currentBreadcrumbId: 'form' }),\n component: TerminateEmployeeContextual,\n }\n}\n\nfunction toSummaryReducer(ctx: TerminationFlowContextInterface): TerminationFlowContextInterface {\n return {\n ...patchBreadcrumbsHeader(ctx, { currentBreadcrumbId: 'summary' }),\n component: TerminationSummaryContextual,\n }\n}\n\nfunction toPayrollLandingReducer(\n ctx: TerminationFlowContextInterface,\n): TerminationFlowContextInterface {\n return {\n ...patchBreadcrumbsHeader(ctx, { currentBreadcrumbId: undefined }),\n component: PayrollLandingContextual,\n payrollOption: undefined,\n }\n}\n\nconst formBreadcrumbTransition = transition(\n componentEvents.BREADCRUMB_NAVIGATE,\n 'form',\n guard(\n (_ctx: TerminationFlowContextInterface, ev: { payload: { key: string } }) =>\n ev.payload.key === 'form',\n ),\n reduce(toFormReducer),\n)\n\nconst summaryBreadcrumbTransition = transition(\n componentEvents.BREADCRUMB_NAVIGATE,\n 'summary',\n guard(\n (_ctx: TerminationFlowContextInterface, ev: { payload: { key: string } }) =>\n ev.payload.key === 'summary',\n ),\n reduce(toSummaryReducer),\n)\n\n/** @internal */\nexport const terminationMachine = {\n form: state<MachineTransition>(\n transition(\n componentEvents.EMPLOYEE_TERMINATION_DONE,\n 'summary',\n reduce(\n (\n ctx: TerminationFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.EMPLOYEE_TERMINATION_DONE>,\n ): TerminationFlowContextInterface => {\n return {\n ...patchBreadcrumbsHeader(ctx, { currentBreadcrumbId: 'summary' }),\n component: TerminationSummaryContextual,\n payrollOption: ev.payload.payrollOption,\n payrollUuid: ev.payload.payrollUuid,\n alerts: undefined,\n }\n },\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_TERMINATION_VIEW_SUMMARY,\n 'summary',\n reduce((ctx: TerminationFlowContextInterface): TerminationFlowContextInterface => {\n return {\n ...patchBreadcrumbsHeader(ctx, { currentBreadcrumbId: 'summary' }),\n component: TerminationSummaryContextual,\n alerts: undefined,\n }\n }),\n ),\n ),\n summary: state<MachineTransition>(\n transition(\n componentEvents.EMPLOYEE_TERMINATION_EDIT,\n 'form',\n reduce((ctx: TerminationFlowContextInterface): TerminationFlowContextInterface => {\n return {\n ...patchBreadcrumbsHeader(ctx, { currentBreadcrumbId: 'form' }),\n component: TerminateEmployeeContextual,\n alerts: undefined,\n }\n }),\n ),\n transition(\n componentEvents.EMPLOYEE_TERMINATION_CANCELLED,\n 'form',\n reduce(\n (\n ctx: TerminationFlowContextInterface,\n ev: MachineEventType<\n EventPayloads,\n typeof componentEvents.EMPLOYEE_TERMINATION_CANCELLED\n >,\n ): TerminationFlowContextInterface => {\n return {\n ...patchBreadcrumbsHeader(ctx, { currentBreadcrumbId: 'form' }),\n component: TerminateEmployeeContextual,\n alerts: ev.payload.alert ? [ev.payload.alert] : undefined,\n payrollOption: undefined,\n }\n },\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_TERMINATION_RUN_PAYROLL,\n 'dismissalPayroll',\n reduce(\n (\n ctx: TerminationFlowContextInterface,\n ev: MachineEventType<\n EventPayloads,\n typeof componentEvents.EMPLOYEE_TERMINATION_RUN_PAYROLL\n >,\n ): TerminationFlowContextInterface => {\n return {\n ...patchBreadcrumbsHeader(ctx, { currentBreadcrumbId: undefined }),\n component: DismissalFlowContextual,\n payrollUuid: ev.payload.payrollUuid ?? ctx.payrollUuid,\n }\n },\n ),\n ),\n transition(\n componentEvents.EMPLOYEE_TERMINATION_RUN_OFF_CYCLE_PAYROLL,\n 'dismissalPayroll',\n reduce((ctx: TerminationFlowContextInterface): TerminationFlowContextInterface => {\n return {\n ...patchBreadcrumbsHeader(ctx, { currentBreadcrumbId: undefined }),\n component: DismissalFlowContextual,\n payrollUuid: undefined,\n }\n }),\n ),\n formBreadcrumbTransition,\n ),\n dismissalPayroll: state<MachineTransition>(\n transition(\n componentEvents.PAYROLL_EXIT_FLOW,\n 'payrollLanding',\n reduce(toPayrollLandingReducer),\n ),\n transition(\n componentEvents.RUN_PAYROLL_NOT_CALCULATED_BACK_TO_LIST,\n 'payrollLanding',\n reduce(toPayrollLandingReducer),\n ),\n summaryBreadcrumbTransition,\n formBreadcrumbTransition,\n ),\n payrollLanding: state<MachineTransition>(summaryBreadcrumbTransition, formBreadcrumbTransition),\n}\n"],"names":["terminationBreadcrumbNodes","ctx","patchBreadcrumbsHeader","TerminateEmployeeContextual","TerminationSummaryContextual","DismissalFlowContextual","toFormReducer","toSummaryReducer","toPayrollLandingReducer","PayrollLandingContextual","formBreadcrumbTransition","transition","componentEvents","guard","_ctx","ev","reduce","summaryBreadcrumbTransition","terminationMachine","state"],"mappings":"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"}
@@ -18,12 +18,13 @@ import "@gusto/embedded-api/models/errors/httpclienterrors";
18
18
  import { formatNumberAsCurrency as B } from "../../../helpers/formattedStrings.js";
19
19
  import "../../../shared/constants.js";
20
20
  import { useComponentContext as V } from "../../../contexts/ComponentAdapter/useComponentContext.js";
21
+ import "../../../contexts/LoadingIndicatorProvider/useLoadingIndicator.js";
21
22
  import { useI18n as D } from "../../../i18n/I18n.js";
22
23
  import { NumberInputField as E } from "../../Common/Fields/NumberInputField/NumberInputField.js";
23
24
  const T = C.object({
24
25
  netPay: C.number().positive()
25
26
  });
26
- function pe({ isOpen: n, onCalculateGrossUp: w, onApply: P, onCancel: p }) {
27
+ function ue({ isOpen: n, onCalculateGrossUp: w, onApply: P, onCancel: p }) {
27
28
  D("Payroll.GrossUpModal");
28
29
  const { t: r } = z("Payroll.GrossUpModal"), { Modal: x, Heading: u, Text: i, Button: c, Alert: f } = V(), { baseSubmitHandler: y } = k(), A = F(null), [l, m] = o(null), [h, d] = o(null), [M, g] = o(!1), [N, v] = o(!1), s = R({
29
30
  resolver: H(T),
@@ -113,6 +114,6 @@ function pe({ isOpen: n, onCalculateGrossUp: w, onApply: P, onCancel: p }) {
113
114
  );
114
115
  }
115
116
  export {
116
- pe as GrossUpModal
117
+ ue as GrossUpModal
117
118
  };
118
119
  //# sourceMappingURL=GrossUpModal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GrossUpModal.js","sources":["../../../../src/components/Payroll/GrossUpModal/GrossUpModal.tsx"],"sourcesContent":["import { useEffect, useRef, useState } from 'react'\nimport { FormProvider, useForm } from 'react-hook-form'\nimport { useTranslation } from 'react-i18next'\nimport { z } from 'zod'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport type { GrossUpModalProps } from './GrossUpModalTypes'\nimport styles from './GrossUpModal.module.scss'\nimport { ActionsLayout, Flex, NumberInputField } from '@/components/Common'\nimport { useBase } from '@/components/Base'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useI18n } from '@/i18n'\nimport { formatNumberAsCurrency } from '@/helpers/formattedStrings'\n\nconst GrossUpFormSchema = z.object({\n netPay: z.number().positive(),\n})\n\ntype GrossUpFormValues = z.infer<typeof GrossUpFormSchema>\n\n/** @internal */\nexport function GrossUpModal({ isOpen, onCalculateGrossUp, onApply, onCancel }: GrossUpModalProps) {\n useI18n('Payroll.GrossUpModal')\n const { t } = useTranslation('Payroll.GrossUpModal')\n const { Modal, Heading, Text, Button, Alert } = useComponentContext()\n const { baseSubmitHandler } = useBase()\n const modalContainerRef = useRef<HTMLDivElement>(null)\n\n const [calculatedGrossUp, setCalculatedGrossUp] = useState<string | null>(null)\n const [errorMessage, setErrorMessage] = useState<string | null>(null)\n const [isCalculating, setIsCalculating] = useState(false)\n const [isApplying, setIsApplying] = useState(false)\n\n const formHandlers = useForm<GrossUpFormValues>({\n resolver: zodResolver(GrossUpFormSchema),\n // Start blank rather than 0: 0 is not a valid net amount, and a leading 0\n // in the field means typing an amount produces values like \"0350\".\n defaultValues: {},\n })\n\n useEffect(() => {\n if (!isOpen) {\n formHandlers.reset()\n setCalculatedGrossUp(null)\n setErrorMessage(null)\n }\n }, [isOpen, formHandlers.reset])\n\n const handleCalculate = async (data: GrossUpFormValues) => {\n setErrorMessage(null)\n setCalculatedGrossUp(null)\n setIsCalculating(true)\n\n await baseSubmitHandler(null, async () => {\n try {\n const result = await onCalculateGrossUp(data.netPay)\n\n if (result) {\n setCalculatedGrossUp(result)\n } else {\n setErrorMessage(t('errorMessage'))\n }\n } finally {\n setIsCalculating(false)\n }\n })\n }\n\n const handleApply = async () => {\n if (calculatedGrossUp) {\n setIsApplying(true)\n await baseSubmitHandler(null, async () => {\n try {\n await onApply(calculatedGrossUp)\n } finally {\n setIsApplying(false)\n }\n })\n }\n }\n\n return (\n <Modal\n isOpen={isOpen}\n onClose={onCancel}\n containerRef={modalContainerRef}\n footer={\n <ActionsLayout>\n <Button\n variant=\"primary\"\n isDisabled={!calculatedGrossUp}\n onClick={handleApply}\n isLoading={isApplying}\n >\n {t('applyCta')}\n </Button>\n <Button variant=\"secondary\" onClick={onCancel}>\n {t('cancelCta')}\n </Button>\n </ActionsLayout>\n }\n >\n <FormProvider {...formHandlers}>\n <div className={styles.header}>\n <Heading as=\"h2\" styledAs=\"h3\">\n {t('title')}\n </Heading>\n <Text variant=\"supporting\" as=\"p\">\n {t('description')}\n </Text>\n </div>\n\n <div className={styles.content}>\n {errorMessage && (\n <div className={styles.alert}>\n <Alert label={errorMessage} status=\"error\" disableScrollIntoView />\n </div>\n )}\n\n <div className={styles.alert}>\n <Alert label={t('warning')} status=\"warning\" disableScrollIntoView />\n </div>\n\n {/* Bottom-align on the row itself: the .calculateButton align-self\n rule below only targets the default (react-aria) adapter, so in\n other adapters the button otherwise falls back to flex-start. */}\n <Flex flexDirection=\"row\" gap={8} alignItems=\"flex-end\">\n <NumberInputField\n name=\"netPay\"\n label={t('netPayLabel')}\n format=\"currency\"\n adornmentStart=\"$\"\n errorMessage={t('validations.netPay')}\n min={0}\n isRequired\n />\n <Button\n variant=\"secondary\"\n className={styles.calculateButton}\n isLoading={isCalculating}\n onClick={formHandlers.handleSubmit(handleCalculate)}\n >\n {t('calculateCta')}\n </Button>\n </Flex>\n\n {calculatedGrossUp ? (\n <div className={styles.result}>\n <Text size=\"sm\" variant=\"supporting\" weight=\"semibold\">\n {t('grossPayResult')}\n </Text>\n <Heading as=\"h3\">{formatNumberAsCurrency(parseFloat(calculatedGrossUp))}</Heading>\n </div>\n ) : (\n <Text size=\"sm\" variant=\"supporting\">\n {t('applyHint')}\n </Text>\n )}\n </div>\n </FormProvider>\n </Modal>\n )\n}\n"],"names":["GrossUpFormSchema","z","GrossUpModal","isOpen","onCalculateGrossUp","onApply","onCancel","useI18n","t","useTranslation","Modal","Heading","Text","Button","Alert","useComponentContext","baseSubmitHandler","useBase","modalContainerRef","useRef","calculatedGrossUp","setCalculatedGrossUp","useState","errorMessage","setErrorMessage","isCalculating","setIsCalculating","isApplying","setIsApplying","formHandlers","useForm","zodResolver","useEffect","handleCalculate","data","result","jsx","ActionsLayout","jsxs","FormProvider","styles","Flex","NumberInputField"],"mappings":"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"}
1
+ {"version":3,"file":"GrossUpModal.js","sources":["../../../../src/components/Payroll/GrossUpModal/GrossUpModal.tsx"],"sourcesContent":["import { useEffect, useRef, useState } from 'react'\nimport { FormProvider, useForm } from 'react-hook-form'\nimport { useTranslation } from 'react-i18next'\nimport { z } from 'zod'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport type { GrossUpModalProps } from './GrossUpModalTypes'\nimport styles from './GrossUpModal.module.scss'\nimport { ActionsLayout, Flex, NumberInputField } from '@/components/Common'\nimport { useBase } from '@/components/Base'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useI18n } from '@/i18n'\nimport { formatNumberAsCurrency } from '@/helpers/formattedStrings'\n\nconst GrossUpFormSchema = z.object({\n netPay: z.number().positive(),\n})\n\ntype GrossUpFormValues = z.infer<typeof GrossUpFormSchema>\n\n/** @internal */\nexport function GrossUpModal({ isOpen, onCalculateGrossUp, onApply, onCancel }: GrossUpModalProps) {\n useI18n('Payroll.GrossUpModal')\n const { t } = useTranslation('Payroll.GrossUpModal')\n const { Modal, Heading, Text, Button, Alert } = useComponentContext()\n const { baseSubmitHandler } = useBase()\n const modalContainerRef = useRef<HTMLDivElement>(null)\n\n const [calculatedGrossUp, setCalculatedGrossUp] = useState<string | null>(null)\n const [errorMessage, setErrorMessage] = useState<string | null>(null)\n const [isCalculating, setIsCalculating] = useState(false)\n const [isApplying, setIsApplying] = useState(false)\n\n const formHandlers = useForm<GrossUpFormValues>({\n resolver: zodResolver(GrossUpFormSchema),\n // Start blank rather than 0: 0 is not a valid net amount, and a leading 0\n // in the field means typing an amount produces values like \"0350\".\n defaultValues: {},\n })\n\n useEffect(() => {\n if (!isOpen) {\n formHandlers.reset()\n setCalculatedGrossUp(null)\n setErrorMessage(null)\n }\n }, [isOpen, formHandlers.reset])\n\n const handleCalculate = async (data: GrossUpFormValues) => {\n setErrorMessage(null)\n setCalculatedGrossUp(null)\n setIsCalculating(true)\n\n await baseSubmitHandler(null, async () => {\n try {\n const result = await onCalculateGrossUp(data.netPay)\n\n if (result) {\n setCalculatedGrossUp(result)\n } else {\n setErrorMessage(t('errorMessage'))\n }\n } finally {\n setIsCalculating(false)\n }\n })\n }\n\n const handleApply = async () => {\n if (calculatedGrossUp) {\n setIsApplying(true)\n await baseSubmitHandler(null, async () => {\n try {\n await onApply(calculatedGrossUp)\n } finally {\n setIsApplying(false)\n }\n })\n }\n }\n\n return (\n <Modal\n isOpen={isOpen}\n onClose={onCancel}\n containerRef={modalContainerRef}\n footer={\n <ActionsLayout>\n <Button\n variant=\"primary\"\n isDisabled={!calculatedGrossUp}\n onClick={handleApply}\n isLoading={isApplying}\n >\n {t('applyCta')}\n </Button>\n <Button variant=\"secondary\" onClick={onCancel}>\n {t('cancelCta')}\n </Button>\n </ActionsLayout>\n }\n >\n <FormProvider {...formHandlers}>\n <div className={styles.header}>\n <Heading as=\"h2\" styledAs=\"h3\">\n {t('title')}\n </Heading>\n <Text variant=\"supporting\" as=\"p\">\n {t('description')}\n </Text>\n </div>\n\n <div className={styles.content}>\n {errorMessage && (\n <div className={styles.alert}>\n <Alert label={errorMessage} status=\"error\" disableScrollIntoView />\n </div>\n )}\n\n <div className={styles.alert}>\n <Alert label={t('warning')} status=\"warning\" disableScrollIntoView />\n </div>\n\n {/* Bottom-align on the row itself: the .calculateButton align-self\n rule below only targets the default (react-aria) adapter, so in\n other adapters the button otherwise falls back to flex-start. */}\n <Flex flexDirection=\"row\" gap={8} alignItems=\"flex-end\">\n <NumberInputField\n name=\"netPay\"\n label={t('netPayLabel')}\n format=\"currency\"\n adornmentStart=\"$\"\n errorMessage={t('validations.netPay')}\n min={0}\n isRequired\n />\n <Button\n variant=\"secondary\"\n className={styles.calculateButton}\n isLoading={isCalculating}\n onClick={formHandlers.handleSubmit(handleCalculate)}\n >\n {t('calculateCta')}\n </Button>\n </Flex>\n\n {calculatedGrossUp ? (\n <div className={styles.result}>\n <Text size=\"sm\" variant=\"supporting\" weight=\"semibold\">\n {t('grossPayResult')}\n </Text>\n <Heading as=\"h3\">{formatNumberAsCurrency(parseFloat(calculatedGrossUp))}</Heading>\n </div>\n ) : (\n <Text size=\"sm\" variant=\"supporting\">\n {t('applyHint')}\n </Text>\n )}\n </div>\n </FormProvider>\n </Modal>\n )\n}\n"],"names":["GrossUpFormSchema","z","GrossUpModal","isOpen","onCalculateGrossUp","onApply","onCancel","useI18n","t","useTranslation","Modal","Heading","Text","Button","Alert","useComponentContext","baseSubmitHandler","useBase","modalContainerRef","useRef","calculatedGrossUp","setCalculatedGrossUp","useState","errorMessage","setErrorMessage","isCalculating","setIsCalculating","isApplying","setIsApplying","formHandlers","useForm","zodResolver","useEffect","handleCalculate","data","result","jsx","ActionsLayout","jsxs","FormProvider","styles","Flex","NumberInputField"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAaA,MAAMA,IAAoBC,EAAE,OAAO;AAAA,EACjC,QAAQA,EAAE,OAAA,EAAS,SAAA;AACrB,CAAC;AAKM,SAASC,GAAa,EAAE,QAAAC,GAAQ,oBAAAC,GAAoB,SAAAC,GAAS,UAAAC,KAA+B;AACjG,EAAAC,EAAQ,sBAAsB;AAC9B,QAAM,EAAE,GAAAC,EAAA,IAAMC,EAAe,sBAAsB,GAC7C,EAAE,OAAAC,GAAO,SAAAC,GAAS,MAAAC,GAAM,QAAAC,GAAQ,OAAAC,EAAA,IAAUC,EAAA,GAC1C,EAAE,mBAAAC,EAAA,IAAsBC,EAAA,GACxBC,IAAoBC,EAAuB,IAAI,GAE/C,CAACC,GAAmBC,CAAoB,IAAIC,EAAwB,IAAI,GACxE,CAACC,GAAcC,CAAe,IAAIF,EAAwB,IAAI,GAC9D,CAACG,GAAeC,CAAgB,IAAIJ,EAAS,EAAK,GAClD,CAACK,GAAYC,CAAa,IAAIN,EAAS,EAAK,GAE5CO,IAAeC,EAA2B;AAAA,IAC9C,UAAUC,EAAY/B,CAAiB;AAAA;AAAA;AAAA,IAGvC,eAAe,CAAA;AAAA,EAAC,CACjB;AAED,EAAAgC,EAAU,MAAM;AACd,IAAK7B,MACH0B,EAAa,MAAA,GACbR,EAAqB,IAAI,GACzBG,EAAgB,IAAI;AAAA,EAExB,GAAG,CAACrB,GAAQ0B,EAAa,KAAK,CAAC;AAE/B,QAAMI,IAAkB,OAAOC,MAA4B;AACzD,IAAAV,EAAgB,IAAI,GACpBH,EAAqB,IAAI,GACzBK,EAAiB,EAAI,GAErB,MAAMV,EAAkB,MAAM,YAAY;AACxC,UAAI;AACF,cAAMmB,IAAS,MAAM/B,EAAmB8B,EAAK,MAAM;AAEnD,QAAIC,IACFd,EAAqBc,CAAM,IAE3BX,EAAgBhB,EAAE,cAAc,CAAC;AAAA,MAErC,UAAA;AACE,QAAAkB,EAAiB,EAAK;AAAA,MACxB;AAAA,IACF,CAAC;AAAA,EACH;AAeA,SACE,gBAAAU;AAAA,IAAC1B;AAAA,IAAA;AAAA,MACC,QAAAP;AAAA,MACA,SAASG;AAAA,MACT,cAAcY;AAAA,MACd,0BACGmB,GAAA,EACC,UAAA;AAAA,QAAA,gBAAAD;AAAA,UAACvB;AAAA,UAAA;AAAA,YACC,SAAQ;AAAA,YACR,YAAY,CAACO;AAAA,YACb,SAvBU,YAAY;AAC9B,cAAIA,MACFQ,EAAc,EAAI,GAClB,MAAMZ,EAAkB,MAAM,YAAY;AACxC,oBAAI;AACF,wBAAMX,EAAQe,CAAiB;AAAA,gBACjC,UAAA;AACE,kBAAAQ,EAAc,EAAK;AAAA,gBACrB;AAAA,cACF,CAAC;AAAA,YAEL;AAAA,YAaU,WAAWD;AAAA,YAEV,YAAE,UAAU;AAAA,UAAA;AAAA,QAAA;AAAA,QAEf,gBAAAS,EAACvB,KAAO,SAAQ,aAAY,SAASP,GAClC,UAAAE,EAAE,WAAW,EAAA,CAChB;AAAA,MAAA,GACF;AAAA,MAGF,UAAA,gBAAA8B,EAACC,GAAA,EAAc,GAAGV,GAChB,UAAA;AAAA,QAAA,gBAAAS,EAAC,OAAA,EAAI,WAAWE,EAAO,QACrB,UAAA;AAAA,UAAA,gBAAAJ,EAACzB,KAAQ,IAAG,MAAK,UAAS,MACvB,UAAAH,EAAE,OAAO,GACZ;AAAA,UACA,gBAAA4B,EAACxB,KAAK,SAAQ,cAAa,IAAG,KAC3B,UAAAJ,EAAE,aAAa,EAAA,CAClB;AAAA,QAAA,GACF;AAAA,QAEA,gBAAA8B,EAAC,OAAA,EAAI,WAAWE,EAAO,SACpB,UAAA;AAAA,UAAAjB,KACC,gBAAAa,EAAC,OAAA,EAAI,WAAWI,EAAO,OACrB,UAAA,gBAAAJ,EAACtB,GAAA,EAAM,OAAOS,GAAc,QAAO,SAAQ,uBAAqB,IAAC,GACnE;AAAA,UAGF,gBAAAa,EAAC,OAAA,EAAI,WAAWI,EAAO,OACrB,UAAA,gBAAAJ,EAACtB,GAAA,EAAM,OAAON,EAAE,SAAS,GAAG,QAAO,WAAU,uBAAqB,IAAC,GACrE;AAAA,4BAKCiC,GAAA,EAAK,eAAc,OAAM,KAAK,GAAG,YAAW,YAC3C,UAAA;AAAA,YAAA,gBAAAL;AAAA,cAACM;AAAA,cAAA;AAAA,gBACC,MAAK;AAAA,gBACL,OAAOlC,EAAE,aAAa;AAAA,gBACtB,QAAO;AAAA,gBACP,gBAAe;AAAA,gBACf,cAAcA,EAAE,oBAAoB;AAAA,gBACpC,KAAK;AAAA,gBACL,YAAU;AAAA,cAAA;AAAA,YAAA;AAAA,YAEZ,gBAAA4B;AAAA,cAACvB;AAAA,cAAA;AAAA,gBACC,SAAQ;AAAA,gBACR,WAAW2B,EAAO;AAAA,gBAClB,WAAWf;AAAA,gBACX,SAASI,EAAa,aAAaI,CAAe;AAAA,gBAEjD,YAAE,cAAc;AAAA,cAAA;AAAA,YAAA;AAAA,UACnB,GACF;AAAA,UAECb,IACC,gBAAAkB,EAAC,OAAA,EAAI,WAAWE,EAAO,QACrB,UAAA;AAAA,YAAA,gBAAAJ,EAACxB,GAAA,EAAK,MAAK,MAAK,SAAQ,cAAa,QAAO,YACzC,UAAAJ,EAAE,gBAAgB,EAAA,CACrB;AAAA,YACA,gBAAA4B,EAACzB,KAAQ,IAAG,MAAM,YAAuB,WAAWS,CAAiB,CAAC,EAAA,CAAE;AAAA,UAAA,EAAA,CAC1E,sBAECR,GAAA,EAAK,MAAK,MAAK,SAAQ,cACrB,UAAAJ,EAAE,WAAW,EAAA,CAChB;AAAA,QAAA,EAAA,CAEJ;AAAA,MAAA,EAAA,CACF;AAAA,IAAA;AAAA,EAAA;AAGN;"}