@gusto/embedded-react-sdk 0.12.3 → 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (182) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/assets/icons/spinner_small.svg.js +10 -0
  3. package/dist/assets/icons/spinner_small.svg.js.map +1 -0
  4. package/dist/components/Base/Base.js +27 -26
  5. package/dist/components/Base/Base.js.map +1 -1
  6. package/dist/components/Base/useBase.d.ts +2 -0
  7. package/dist/components/Base/useBase.js.map +1 -1
  8. package/dist/components/Common/DataView/DataView.d.ts +2 -1
  9. package/dist/components/Common/DataView/DataView.js +20 -19
  10. package/dist/components/Common/DataView/DataView.js.map +1 -1
  11. package/dist/components/Common/DataView/useDataView.d.ts +3 -1
  12. package/dist/components/Common/DataView/useDataView.js +13 -11
  13. package/dist/components/Common/DataView/useDataView.js.map +1 -1
  14. package/dist/components/Common/EmptyData/EmptyData.module.scss.js +1 -1
  15. package/dist/components/Common/InlineSpinner/InlineSpinner.d.ts +6 -0
  16. package/dist/components/Common/InlineSpinner/InlineSpinner.js +25 -0
  17. package/dist/components/Common/InlineSpinner/InlineSpinner.js.map +1 -0
  18. package/dist/components/Common/InlineSpinner/InlineSpinner.module.scss.js +10 -0
  19. package/dist/components/Common/InlineSpinner/InlineSpinner.module.scss.js.map +1 -0
  20. package/dist/components/Common/InlineSpinner/index.d.ts +2 -0
  21. package/dist/components/Common/PaginationControl/PaginationControl.js +31 -28
  22. package/dist/components/Common/PaginationControl/PaginationControl.js.map +1 -1
  23. package/dist/components/Common/PaginationControl/PaginationControlTypes.d.ts +1 -0
  24. package/dist/components/Common/SignatureForm/SignatureForm.js +3 -2
  25. package/dist/components/Common/SignatureForm/SignatureForm.js.map +1 -1
  26. package/dist/components/Common/SignatureForm/SignatureFormActions.js +7 -6
  27. package/dist/components/Common/SignatureForm/SignatureFormActions.js.map +1 -1
  28. package/dist/components/Common/SignatureForm/SignatureFormFields.js +8 -7
  29. package/dist/components/Common/SignatureForm/SignatureFormFields.js.map +1 -1
  30. package/dist/components/Common/UI/Table/Table.module.scss.js +1 -1
  31. package/dist/components/Common/index.d.ts +1 -0
  32. package/dist/components/Company/AssignSignatory/AssignSignatory.js +7 -6
  33. package/dist/components/Company/AssignSignatory/AssignSignatory.js.map +1 -1
  34. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js +3 -2
  35. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js.map +1 -1
  36. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js +3 -2
  37. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js.map +1 -1
  38. package/dist/components/Company/AssignSignatory/CreateSignatory/Schema.d.ts +2 -2
  39. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +4 -3
  40. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
  41. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js +6 -5
  42. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js.map +1 -1
  43. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js +10 -9
  44. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js.map +1 -1
  45. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +4 -3
  46. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
  47. package/dist/components/Company/AssignSignatory/useAssignSignatory.js +6 -5
  48. package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
  49. package/dist/components/Company/BankAccount/BankAccountForm/context.js +4 -3
  50. package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
  51. package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js +9 -8
  52. package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
  53. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +4 -3
  54. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  55. package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js +7 -6
  56. package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js.map +1 -1
  57. package/dist/components/Company/DocumentSigner/SignatureForm/useSignatureForm.js +4 -3
  58. package/dist/components/Company/DocumentSigner/SignatureForm/useSignatureForm.js.map +1 -1
  59. package/dist/components/Company/FederalTaxes/FederalTaxes.js +13 -12
  60. package/dist/components/Company/FederalTaxes/FederalTaxes.js.map +1 -1
  61. package/dist/components/Company/FederalTaxes/useFederalTaxes.js +12 -11
  62. package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
  63. package/dist/components/Company/Industry/Context.js +7 -6
  64. package/dist/components/Company/Industry/Context.js.map +1 -1
  65. package/dist/components/Company/Locations/LocationForm/Form.js +5 -4
  66. package/dist/components/Company/Locations/LocationForm/Form.js.map +1 -1
  67. package/dist/components/Company/Locations/LocationForm/LocationForm.js +10 -9
  68. package/dist/components/Company/Locations/LocationForm/LocationForm.js.map +1 -1
  69. package/dist/components/Company/Locations/LocationForm/useLocationForm.js +4 -3
  70. package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
  71. package/dist/components/Company/Locations/LocationsList/LocationsList.js +7 -6
  72. package/dist/components/Company/Locations/LocationsList/LocationsList.js.map +1 -1
  73. package/dist/components/Company/Locations/LocationsList/useLocationsList.js +4 -3
  74. package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
  75. package/dist/components/Company/OnboardingOverview/OnboardingOverview.js +3 -2
  76. package/dist/components/Company/OnboardingOverview/OnboardingOverview.js.map +1 -1
  77. package/dist/components/Company/OnboardingOverview/context.js +4 -3
  78. package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
  79. package/dist/components/Company/PaySchedule/PaySchedule.js +33 -32
  80. package/dist/components/Company/PaySchedule/PaySchedule.js.map +1 -1
  81. package/dist/components/Company/PaySchedule/_parts/Edit.js +3 -2
  82. package/dist/components/Company/PaySchedule/_parts/Edit.js.map +1 -1
  83. package/dist/components/Company/PaySchedule/usePaySchedule.js +6 -5
  84. package/dist/components/Company/PaySchedule/usePaySchedule.js.map +1 -1
  85. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +4 -3
  86. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
  87. package/dist/components/Company/StateTaxes/StateTaxesList/context.js +4 -3
  88. package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
  89. package/dist/components/Contractor/Address/Address.js +4 -3
  90. package/dist/components/Contractor/Address/Address.js.map +1 -1
  91. package/dist/components/Contractor/Address/Form.js +3 -2
  92. package/dist/components/Contractor/Address/Form.js.map +1 -1
  93. package/dist/components/Contractor/Address/useAddress.js +6 -5
  94. package/dist/components/Contractor/Address/useAddress.js.map +1 -1
  95. package/dist/components/Contractor/NewHireReport/NewHireReport.js +51 -49
  96. package/dist/components/Contractor/NewHireReport/NewHireReport.js.map +1 -1
  97. package/dist/components/Contractor/NewHireReport/types.d.ts +1 -0
  98. package/dist/components/Contractor/OnboardingFlow/OnboardingFlowComponents.js +19 -12
  99. package/dist/components/Contractor/OnboardingFlow/OnboardingFlowComponents.js.map +1 -1
  100. package/dist/components/Contractor/OnboardingFlow/onboardingStateMachine.js +6 -5
  101. package/dist/components/Contractor/OnboardingFlow/onboardingStateMachine.js.map +1 -1
  102. package/dist/components/Contractor/PaymentMethod/PaymentMethod.d.ts +4 -4
  103. package/dist/components/Contractor/Profile/useContractorProfile.d.ts +19 -19
  104. package/dist/components/Contractor/Profile/useContractorProfile.js +2 -2
  105. package/dist/components/Contractor/Profile/useContractorProfile.js.map +1 -1
  106. package/dist/components/Contractor/Submit/Submit.js +24 -24
  107. package/dist/components/Contractor/Submit/Submit.js.map +1 -1
  108. package/dist/components/Employee/DocumentSigner/DocumentList/DocumentList.js +8 -7
  109. package/dist/components/Employee/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
  110. package/dist/components/Employee/DocumentSigner/DocumentList/useDocumentList.js +4 -3
  111. package/dist/components/Employee/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  112. package/dist/components/Employee/DocumentSigner/SignatureForm/SignatureForm.js +10 -9
  113. package/dist/components/Employee/DocumentSigner/SignatureForm/SignatureForm.js.map +1 -1
  114. package/dist/components/Employee/DocumentSigner/SignatureForm/useSignatureForm.js +4 -3
  115. package/dist/components/Employee/DocumentSigner/SignatureForm/useSignatureForm.js.map +1 -1
  116. package/dist/components/Employee/EmployeeList/EmployeeList.js +75 -62
  117. package/dist/components/Employee/EmployeeList/EmployeeList.js.map +1 -1
  118. package/dist/components/Employee/EmployeeList/List.js +27 -25
  119. package/dist/components/Employee/EmployeeList/List.js.map +1 -1
  120. package/dist/components/Employee/EmployeeList/useEmployeeList.d.ts +1 -0
  121. package/dist/components/Employee/EmployeeList/useEmployeeList.js +4 -3
  122. package/dist/components/Employee/EmployeeList/useEmployeeList.js.map +1 -1
  123. package/dist/components/Employee/FederalTaxes/useFederalTaxes.js +4 -3
  124. package/dist/components/Employee/FederalTaxes/useFederalTaxes.js.map +1 -1
  125. package/dist/components/Employee/PaymentMethod/BankAccount.d.ts +2 -2
  126. package/dist/components/Employee/PaymentMethod/usePaymentMethod.d.ts +8 -8
  127. package/dist/components/Employee/PaymentMethod/usePaymentMethod.js +6 -5
  128. package/dist/components/Employee/PaymentMethod/usePaymentMethod.js.map +1 -1
  129. package/dist/components/Employee/Profile/AdminPersonalDetails.d.ts +2 -2
  130. package/dist/components/Employee/Profile/HomeAddress.js +5 -4
  131. package/dist/components/Employee/Profile/HomeAddress.js.map +1 -1
  132. package/dist/components/Employee/Profile/PersonalDetailsInputs.d.ts +2 -2
  133. package/dist/components/Employee/Profile/PersonalDetailsInputs.js +21 -20
  134. package/dist/components/Employee/Profile/PersonalDetailsInputs.js.map +1 -1
  135. package/dist/components/Employee/Profile/Profile.js +2 -0
  136. package/dist/components/Employee/Profile/Profile.js.map +1 -1
  137. package/dist/components/Employee/Profile/useProfile.js +4 -3
  138. package/dist/components/Employee/Profile/useProfile.js.map +1 -1
  139. package/dist/components/Employee/StateTaxes/useStateTaxes.js +4 -3
  140. package/dist/components/Employee/StateTaxes/useStateTaxes.js.map +1 -1
  141. package/dist/components/Employee/Taxes/useTaxes.js +4 -3
  142. package/dist/components/Employee/Taxes/useTaxes.js.map +1 -1
  143. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.d.ts +4 -2
  144. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js +75 -34
  145. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js.map +1 -1
  146. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.d.ts +10 -5
  147. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js +116 -50
  148. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js.map +1 -1
  149. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js +6 -5
  150. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js.map +1 -1
  151. package/dist/components/Payroll/PayrollList/PayrollList.d.ts +1 -1
  152. package/dist/components/Payroll/PayrollList/PayrollList.js +24 -11
  153. package/dist/components/Payroll/PayrollList/PayrollList.js.map +1 -1
  154. package/dist/components/Payroll/PayrollList/PayrollListPresentation.d.ts +8 -6
  155. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js +34 -25
  156. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js.map +1 -1
  157. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js +3 -2
  158. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js.map +1 -1
  159. package/dist/components/Payroll/RunPayrollFlow/RunPayroll.d.ts +2 -1
  160. package/dist/components/Payroll/RunPayrollFlow/RunPayroll.js +4 -4
  161. package/dist/components/Payroll/RunPayrollFlow/RunPayroll.js.map +1 -1
  162. package/dist/components/Payroll/helpers.d.ts +20 -0
  163. package/dist/components/Payroll/helpers.js +208 -0
  164. package/dist/components/Payroll/helpers.js.map +1 -0
  165. package/dist/components/Payroll/helpers.test.d.ts +1 -0
  166. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js +3 -2
  167. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js.map +1 -1
  168. package/dist/helpers/formattedStrings.d.ts +9 -0
  169. package/dist/helpers/formattedStrings.js +55 -16
  170. package/dist/helpers/formattedStrings.js.map +1 -1
  171. package/dist/i18n/I18n.js +11 -11
  172. package/dist/i18n/I18n.js.map +1 -1
  173. package/dist/i18n/en/Payroll.PayrollConfiguration.json.js +30 -0
  174. package/dist/i18n/en/Payroll.PayrollConfiguration.json.js.map +1 -0
  175. package/dist/i18n/en/Payroll.PayrollList.json.js +14 -0
  176. package/dist/i18n/en/Payroll.PayrollList.json.js.map +1 -0
  177. package/dist/i18n/en/common.json.d.ts +8 -0
  178. package/dist/i18n/en/common.json.js +15 -13
  179. package/dist/i18n/en/common.json.js.map +1 -1
  180. package/dist/style.css +1 -1
  181. package/dist/types/i18next.d.ts +45 -1
  182. package/package.json +28 -28
@@ -6,11 +6,12 @@ import "../../../Base/useBase.js";
6
6
  import "../../../../shared/constants.js";
7
7
  import "classnames";
8
8
  import "dompurify";
9
+ import "../../../../contexts/LocaleProvider/useLocale.js";
9
10
  import "../../../../contexts/ComponentAdapter/useComponentContext.js";
10
11
  import { createCompoundContext as o } from "../../../Base/createCompoundContext.js";
11
- const [x, C] = o("SignatureFormContext");
12
+ const [C, F] = o("SignatureFormContext");
12
13
  export {
13
- C as SignatureFormProvider,
14
- x as useSignatureForm
14
+ F as SignatureFormProvider,
15
+ C as useSignatureForm
15
16
  };
16
17
  //# sourceMappingURL=useSignatureForm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useSignatureForm.js","sources":["../../../../../src/components/Employee/DocumentSigner/SignatureForm/useSignatureForm.ts"],"sourcesContent":["import type { Form } from '@gusto/embedded-api/models/components/form'\nimport { createCompoundContext } from '@/components/Base'\n\ntype SignatureFormContextType = {\n form: Form\n pdfUrl?: string | null\n handleBack: () => void\n isPending: boolean\n}\n\nconst [useSignatureForm, SignatureFormProvider] =\n createCompoundContext<SignatureFormContextType>('SignatureFormContext')\nexport { useSignatureForm, SignatureFormProvider }\n"],"names":["useSignatureForm","SignatureFormProvider","createCompoundContext"],"mappings":";;;;;;;;;;AAUA,MAAM,CAACA,GAAkBC,CAAqB,IAC5CC,EAAgD,sBAAsB;"}
1
+ {"version":3,"file":"useSignatureForm.js","sources":["../../../../../src/components/Employee/DocumentSigner/SignatureForm/useSignatureForm.ts"],"sourcesContent":["import type { Form } from '@gusto/embedded-api/models/components/form'\nimport { createCompoundContext } from '@/components/Base'\n\ntype SignatureFormContextType = {\n form: Form\n pdfUrl?: string | null\n handleBack: () => void\n isPending: boolean\n}\n\nconst [useSignatureForm, SignatureFormProvider] =\n createCompoundContext<SignatureFormContextType>('SignatureFormContext')\nexport { useSignatureForm, SignatureFormProvider }\n"],"names":["useSignatureForm","SignatureFormProvider","createCompoundContext"],"mappings":";;;;;;;;;;;AAUA,MAAM,CAACA,GAAkBC,CAAqB,IAC5CC,EAAgD,sBAAsB;"}
@@ -1,67 +1,79 @@
1
- import { jsx as o, jsxs as B } from "react/jsx-runtime";
2
- import { useState as d } from "react";
3
- import { useEmployeesListSuspense as C } from "/home/runner/work/embedded-react-sdk/embedded-react-sdk/node_modules/@gusto/embedded-api/esm/react-query/employeesList.js";
4
- import { useEmployeesDeleteMutation as v } from "/home/runner/work/embedded-react-sdk/embedded-react-sdk/node_modules/@gusto/embedded-api/esm/react-query/employeesDelete.js";
5
- import { useEmployeesUpdateOnboardingStatusMutation as G } from "/home/runner/work/embedded-react-sdk/embedded-react-sdk/node_modules/@gusto/embedded-api/esm/react-query/employeesUpdateOnboardingStatus.js";
6
- import { EmployeeListProvider as Y } from "./useEmployeeList.js";
7
- import { Actions as F } from "./Actions.js";
8
- import { BaseComponent as U } from "../../Base/Base.js";
9
- import { useBase as W } from "../../Base/useBase.js";
10
- import { Flex as q } from "../../Common/Flex/Flex.js";
1
+ import { jsx as o, jsxs as C } from "react/jsx-runtime";
2
+ import { useState as y } from "react";
3
+ import { useEmployeesList as G } from "/home/runner/work/embedded-react-sdk/embedded-react-sdk/node_modules/@gusto/embedded-api/esm/react-query/employeesList.js";
4
+ import { useEmployeesDeleteMutation as F } from "/home/runner/work/embedded-react-sdk/embedded-react-sdk/node_modules/@gusto/embedded-api/esm/react-query/employeesDelete.js";
5
+ import { useEmployeesUpdateOnboardingStatusMutation as Y } from "/home/runner/work/embedded-react-sdk/embedded-react-sdk/node_modules/@gusto/embedded-api/esm/react-query/employeesUpdateOnboardingStatus.js";
6
+ import { keepPreviousData as U } from "/home/runner/work/embedded-react-sdk/embedded-react-sdk/node_modules/@tanstack/react-query/build/modern/index.js";
7
+ import { EmployeeListProvider as W } from "./useEmployeeList.js";
8
+ import { Actions as k } from "./Actions.js";
9
+ import { BaseComponent as q } from "../../Base/Base.js";
10
+ import { useBase as j } from "../../Base/useBase.js";
11
+ import { Flex as H } from "../../Common/Flex/Flex.js";
11
12
  import "classnames";
12
- import { componentEvents as s, EmployeeOnboardingStatus as l } from "../../../shared/constants.js";
13
- import { useI18n as j, useComponentDictionary as k } from "../../../i18n/I18n.js";
14
- import { Head as H } from "./Head.js";
15
- import { List as V } from "./List.js";
16
- import { useFlow as z } from "../../Flow/useFlow.js";
17
- function J(n) {
18
- return /* @__PURE__ */ o(U, { ...n, children: /* @__PURE__ */ o(K, { ...n, children: n.children }) });
13
+ import { componentEvents as s, EmployeeOnboardingStatus as E } from "../../../shared/constants.js";
14
+ import { Loading as V } from "../../Common/Loading/Loading.js";
15
+ import { useI18n as z, useComponentDictionary as J } from "../../../i18n/I18n.js";
16
+ import { Head as K } from "./Head.js";
17
+ import { List as Q } from "./List.js";
18
+ import { useFlow as X } from "../../Flow/useFlow.js";
19
+ function Z(n) {
20
+ return /* @__PURE__ */ o(q, { ...n, children: /* @__PURE__ */ o($, { ...n, children: n.children }) });
19
21
  }
20
- function K({ companyId: n, className: m, children: c, dictionary: y }) {
21
- j("Employee.EmployeeList"), k("Employee.EmployeeList", y);
22
- const { onEvent: a, baseSubmitHandler: r } = W(), [p, i] = d(1), [h, P] = d(5), { data: O } = C({ companyId: n, page: p, per: h }), { httpMeta: g, showEmployees: I } = O, N = I, { mutateAsync: A } = v(), { mutateAsync: D } = G(), E = Number(g.response.headers.get("x-total-pages") ?? 1), f = (e) => {
23
- P(e);
24
- }, L = () => {
25
- i(1);
26
- }, _ = () => {
27
- i((e) => Math.max(e - 1, 1));
22
+ function $({ companyId: n, className: m, children: l, dictionary: h }) {
23
+ z("Employee.EmployeeList"), J("Employee.EmployeeList", h);
24
+ const { onEvent: a, baseSubmitHandler: r } = j(), [p, i] = y(1), [P, g] = y(5), { data: u, fetchStatus: f, isFetching: O } = G(
25
+ {
26
+ companyId: n,
27
+ page: p,
28
+ per: P
29
+ },
30
+ { placeholderData: U }
31
+ ), { mutateAsync: D } = F(), { mutateAsync: I } = Y();
32
+ if (f === "fetching" && !u)
33
+ return /* @__PURE__ */ o(V, {});
34
+ const { httpMeta: N, showEmployees: A } = u, L = A, c = Number(N.response.headers.get("x-total-pages") ?? 1), _ = (e) => {
35
+ g(e);
28
36
  }, M = () => {
29
- i((e) => Math.min(e + 1, E));
37
+ i(1);
30
38
  }, S = () => {
31
- i(E);
32
- }, w = async (e) => {
39
+ i((e) => Math.max(e - 1, 1));
40
+ }, w = () => {
41
+ i((e) => Math.min(e + 1, c));
42
+ }, b = () => {
43
+ i(c);
44
+ }, R = async (e) => {
33
45
  await r(e, async (t) => {
34
- await A({
46
+ await D({
35
47
  request: { employeeId: t }
36
48
  }), a(s.EMPLOYEE_DELETED, { employeeId: t });
37
49
  });
38
- }, b = async (e) => {
50
+ }, T = async (e) => {
39
51
  await r(e, async (t) => {
40
- await u({
52
+ await d({
41
53
  employeeId: t,
42
- status: l.SELF_ONBOARDING_AWAITING_ADMIN_REVIEW
54
+ status: E.SELF_ONBOARDING_AWAITING_ADMIN_REVIEW
43
55
  }), a(s.EMPLOYEE_UPDATE, {
44
56
  employeeId: t,
45
- onboardingStatus: l.SELF_ONBOARDING_AWAITING_ADMIN_REVIEW
57
+ onboardingStatus: E.SELF_ONBOARDING_AWAITING_ADMIN_REVIEW
46
58
  });
47
59
  });
48
- }, R = async (e) => {
60
+ }, x = async (e) => {
49
61
  await r(e, async (t) => {
50
- await u({
62
+ await d({
51
63
  employeeId: t,
52
- status: l.ADMIN_ONBOARDING_INCOMPLETE
64
+ status: E.ADMIN_ONBOARDING_INCOMPLETE
53
65
  });
54
66
  });
55
- }, u = async (e) => {
56
- await r(e, async ({ employeeId: t, status: T }) => {
57
- const { employeeOnboardingStatus: x } = await D({
58
- request: { employeeId: t, requestBody: { onboardingStatus: T } }
67
+ }, d = async (e) => {
68
+ await r(e, async ({ employeeId: t, status: v }) => {
69
+ const { employeeOnboardingStatus: B } = await I({
70
+ request: { employeeId: t, requestBody: { onboardingStatus: v } }
59
71
  });
60
- a(s.EMPLOYEE_ONBOARDING_STATUS_UPDATED, x);
72
+ a(s.EMPLOYEE_ONBOARDING_STATUS_UPDATED, B);
61
73
  });
62
74
  };
63
75
  return /* @__PURE__ */ o("section", { className: m, children: /* @__PURE__ */ o(
64
- Y,
76
+ W,
65
77
  {
66
78
  value: {
67
79
  handleEdit: (e, t) => {
@@ -70,35 +82,36 @@ function K({ companyId: n, className: m, children: c, dictionary: y }) {
70
82
  handleNew: () => {
71
83
  a(s.EMPLOYEE_CREATE);
72
84
  },
73
- handleReview: b,
74
- handleDelete: w,
75
- employees: N,
85
+ handleReview: T,
86
+ handleDelete: R,
87
+ employees: L,
76
88
  currentPage: p,
77
- totalPages: E,
78
- handleFirstPage: L,
79
- handlePreviousPage: _,
80
- handleNextPage: M,
81
- handleLastPage: S,
82
- handleCancelSelfOnboarding: R,
83
- handleItemsPerPageChange: f,
89
+ totalPages: c,
90
+ handleFirstPage: M,
91
+ handlePreviousPage: S,
92
+ handleNextPage: w,
93
+ handleLastPage: b,
94
+ handleCancelSelfOnboarding: x,
95
+ handleItemsPerPageChange: _,
84
96
  handleSkip: () => {
85
97
  a(s.EMPLOYEE_ONBOARDING_DONE);
86
- }
98
+ },
99
+ isFetching: O
87
100
  },
88
- children: c || /* @__PURE__ */ B(q, { flexDirection: "column", children: [
89
- /* @__PURE__ */ o(H, {}),
90
- /* @__PURE__ */ o(V, {}),
91
- /* @__PURE__ */ o(F, {})
101
+ children: l || /* @__PURE__ */ C(H, { flexDirection: "column", children: [
102
+ /* @__PURE__ */ o(K, {}),
103
+ /* @__PURE__ */ o(Q, {}),
104
+ /* @__PURE__ */ o(k, {})
92
105
  ] })
93
106
  }
94
107
  ) });
95
108
  }
96
- const ye = () => {
97
- const { companyId: n, onEvent: m } = z();
98
- return /* @__PURE__ */ o(J, { companyId: n, onEvent: m });
109
+ const De = () => {
110
+ const { companyId: n, onEvent: m } = X();
111
+ return /* @__PURE__ */ o(Z, { companyId: n, onEvent: m });
99
112
  };
100
113
  export {
101
- J as EmployeeList,
102
- ye as EmployeeListContextual
114
+ Z as EmployeeList,
115
+ De as EmployeeListContextual
103
116
  };
104
117
  //# sourceMappingURL=EmployeeList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EmployeeList.js","sources":["../../../../src/components/Employee/EmployeeList/EmployeeList.tsx"],"sourcesContent":["import { useState } from 'react'\nimport { useEmployeesListSuspense } from '@gusto/embedded-api/react-query/employeesList'\nimport type { OnboardingStatus } from '@gusto/embedded-api/models/operations/putv1employeesemployeeidonboardingstatus'\nimport { useEmployeesDeleteMutation } from '@gusto/embedded-api/react-query/employeesDelete'\nimport { useEmployeesUpdateOnboardingStatusMutation } from '@gusto/embedded-api/react-query/employeesUpdateOnboardingStatus'\nimport type { OnboardingContextInterface } from '../OnboardingFlow/OnboardingFlowComponents'\nimport { EmployeeListProvider } from './useEmployeeList'\nimport { Actions } from './Actions'\nimport {\n BaseComponent,\n type BaseComponentInterface,\n type CommonComponentInterface,\n} from '@/components/Base/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { Flex } from '@/components/Common'\nimport { useI18n, useComponentDictionary } from '@/i18n'\nimport { componentEvents, EmployeeOnboardingStatus } from '@/shared/constants'\nimport { Head } from '@/components/Employee/EmployeeList/Head'\nimport { List } from '@/components/Employee/EmployeeList/List'\nimport { useFlow } from '@/components/Flow/useFlow'\n\n//Interface for component specific props\ninterface EmployeeListProps extends CommonComponentInterface<'Employee.EmployeeList'> {\n companyId: string\n}\n\nexport function EmployeeList(props: EmployeeListProps & BaseComponentInterface) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\nfunction Root({ companyId, className, children, dictionary }: EmployeeListProps) {\n //Using i18n hook to directly load necessary namespace\n useI18n('Employee.EmployeeList')\n useComponentDictionary('Employee.EmployeeList', dictionary)\n //Getting props from base context\n const { onEvent, baseSubmitHandler } = useBase()\n const [currentPage, setCurrentPage] = useState(1)\n const [itemsPerPage, setItemsPerPage] = useState(5)\n\n const { data } = useEmployeesListSuspense({ companyId, page: currentPage, per: itemsPerPage })\n const { httpMeta, showEmployees: employeeList } = data\n const employees = employeeList!\n\n const { mutateAsync: deleteEmployeeMutation } = useEmployeesDeleteMutation()\n const { mutateAsync: updateEmployeeOnboardingStatusMutation } =\n useEmployeesUpdateOnboardingStatusMutation()\n\n const totalPages = Number(httpMeta.response.headers.get('x-total-pages') ?? 1)\n\n const handleItemsPerPageChange = (newCount: number) => {\n setItemsPerPage(newCount)\n }\n const handleFirstPage = () => {\n setCurrentPage(1)\n }\n const handlePreviousPage = () => {\n setCurrentPage(prevPage => Math.max(prevPage - 1, 1))\n }\n const handleNextPage = () => {\n setCurrentPage(prevPage => Math.min(prevPage + 1, totalPages))\n }\n const handleLastPage = () => {\n setCurrentPage(totalPages)\n }\n const handleDelete = async (uuid: string) => {\n await baseSubmitHandler(uuid, async payload => {\n await deleteEmployeeMutation({\n request: { employeeId: payload },\n })\n\n onEvent(componentEvents.EMPLOYEE_DELETED, { employeeId: payload })\n })\n }\n /**Set onboarding status to self_onboarding_awaiting_admin_review and proceed to edit */\n const handleReview = async (data: string) => {\n await baseSubmitHandler(data, async employeeId => {\n await updateOnboardingStatus({\n employeeId,\n status: EmployeeOnboardingStatus.SELF_ONBOARDING_AWAITING_ADMIN_REVIEW,\n })\n onEvent(componentEvents.EMPLOYEE_UPDATE, {\n employeeId,\n onboardingStatus: EmployeeOnboardingStatus.SELF_ONBOARDING_AWAITING_ADMIN_REVIEW,\n })\n })\n }\n /**Update employee onboarding status reverting it back to admin_onboarding_incomplete */\n const handleCancelSelfOnboarding = async (data: string) => {\n await baseSubmitHandler(data, async employeeId => {\n await updateOnboardingStatus({\n employeeId,\n status: EmployeeOnboardingStatus.ADMIN_ONBOARDING_INCOMPLETE,\n })\n })\n }\n const updateOnboardingStatus = async (data: { employeeId: string; status: OnboardingStatus }) => {\n await baseSubmitHandler(data, async ({ employeeId, status }) => {\n const { employeeOnboardingStatus: responseData } =\n await updateEmployeeOnboardingStatusMutation({\n request: { employeeId, requestBody: { onboardingStatus: status } },\n })\n onEvent(componentEvents.EMPLOYEE_ONBOARDING_STATUS_UPDATED, responseData)\n })\n }\n const handleNew = () => {\n onEvent(componentEvents.EMPLOYEE_CREATE)\n }\n const handleSkip = () => {\n onEvent(componentEvents.EMPLOYEE_ONBOARDING_DONE)\n }\n\n const handleEdit = (uuid: string, onboardingStatus?: OnboardingStatus) => {\n onEvent(componentEvents.EMPLOYEE_UPDATE, { employeeId: uuid, onboardingStatus })\n }\n return (\n <section className={className}>\n <EmployeeListProvider\n value={{\n handleEdit,\n handleNew,\n handleReview,\n handleDelete,\n employees,\n currentPage,\n totalPages,\n handleFirstPage,\n handlePreviousPage,\n handleNextPage,\n handleLastPage,\n handleCancelSelfOnboarding,\n handleItemsPerPageChange,\n handleSkip,\n }}\n >\n {children ? (\n children\n ) : (\n <Flex flexDirection=\"column\">\n <Head />\n <List />\n <Actions />\n </Flex>\n )}\n </EmployeeListProvider>\n </section>\n )\n}\n\n/**\n * Wrapper used inside Flows -> exposes flow context for required parameters\n */\nexport const EmployeeListContextual = () => {\n const { companyId, onEvent } = useFlow<OnboardingContextInterface>()\n return <EmployeeList companyId={companyId} onEvent={onEvent} />\n}\n"],"names":["EmployeeList","props","jsx","BaseComponent","Root","companyId","className","children","dictionary","useI18n","useComponentDictionary","onEvent","baseSubmitHandler","useBase","currentPage","setCurrentPage","useState","itemsPerPage","setItemsPerPage","data","useEmployeesListSuspense","httpMeta","employeeList","employees","deleteEmployeeMutation","useEmployeesDeleteMutation","updateEmployeeOnboardingStatusMutation","useEmployeesUpdateOnboardingStatusMutation","totalPages","handleItemsPerPageChange","newCount","handleFirstPage","handlePreviousPage","prevPage","handleNextPage","handleLastPage","handleDelete","uuid","payload","componentEvents","handleReview","employeeId","updateOnboardingStatus","EmployeeOnboardingStatus","handleCancelSelfOnboarding","status","responseData","EmployeeListProvider","onboardingStatus","jsxs","Flex","Head","List","Actions","EmployeeListContextual","useFlow"],"mappings":"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"}
1
+ {"version":3,"file":"EmployeeList.js","sources":["../../../../src/components/Employee/EmployeeList/EmployeeList.tsx"],"sourcesContent":["import { useState } from 'react'\nimport { useEmployeesList } from '@gusto/embedded-api/react-query/employeesList'\nimport type { OnboardingStatus } from '@gusto/embedded-api/models/operations/putv1employeesemployeeidonboardingstatus'\nimport { useEmployeesDeleteMutation } from '@gusto/embedded-api/react-query/employeesDelete'\nimport { useEmployeesUpdateOnboardingStatusMutation } from '@gusto/embedded-api/react-query/employeesUpdateOnboardingStatus'\nimport { keepPreviousData } from '@tanstack/react-query'\nimport type { OnboardingContextInterface } from '../OnboardingFlow/OnboardingFlowComponents'\nimport { EmployeeListProvider } from './useEmployeeList'\nimport { Actions } from './Actions'\nimport {\n BaseComponent,\n type BaseComponentInterface,\n type CommonComponentInterface,\n} from '@/components/Base/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { Flex, Loading } from '@/components/Common'\nimport { useI18n, useComponentDictionary } from '@/i18n'\nimport { componentEvents, EmployeeOnboardingStatus } from '@/shared/constants'\nimport { Head } from '@/components/Employee/EmployeeList/Head'\nimport { List } from '@/components/Employee/EmployeeList/List'\nimport { useFlow } from '@/components/Flow/useFlow'\n\n//Interface for component specific props\ninterface EmployeeListProps extends CommonComponentInterface<'Employee.EmployeeList'> {\n companyId: string\n}\n\nexport function EmployeeList(props: EmployeeListProps & BaseComponentInterface) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\nfunction Root({ companyId, className, children, dictionary }: EmployeeListProps) {\n //Using i18n hook to directly load necessary namespace\n useI18n('Employee.EmployeeList')\n useComponentDictionary('Employee.EmployeeList', dictionary)\n //Getting props from base context\n const { onEvent, baseSubmitHandler } = useBase()\n const [currentPage, setCurrentPage] = useState(1)\n const [itemsPerPage, setItemsPerPage] = useState(5)\n\n const { data, fetchStatus, isFetching } = useEmployeesList(\n {\n companyId,\n page: currentPage,\n per: itemsPerPage,\n },\n { placeholderData: keepPreviousData },\n )\n\n const { mutateAsync: deleteEmployeeMutation } = useEmployeesDeleteMutation()\n const { mutateAsync: updateEmployeeOnboardingStatusMutation } =\n useEmployeesUpdateOnboardingStatusMutation()\n\n if (fetchStatus === 'fetching' && !data) {\n return <Loading />\n }\n const { httpMeta, showEmployees: employeeList } = data!\n const employees = employeeList!\n\n const totalPages = Number(httpMeta.response.headers.get('x-total-pages') ?? 1)\n\n const handleItemsPerPageChange = (newCount: number) => {\n setItemsPerPage(newCount)\n }\n const handleFirstPage = () => {\n setCurrentPage(1)\n }\n const handlePreviousPage = () => {\n setCurrentPage(prevPage => Math.max(prevPage - 1, 1))\n }\n const handleNextPage = () => {\n setCurrentPage(prevPage => Math.min(prevPage + 1, totalPages))\n }\n const handleLastPage = () => {\n setCurrentPage(totalPages)\n }\n const handleDelete = async (uuid: string) => {\n await baseSubmitHandler(uuid, async payload => {\n await deleteEmployeeMutation({\n request: { employeeId: payload },\n })\n\n onEvent(componentEvents.EMPLOYEE_DELETED, { employeeId: payload })\n })\n }\n /**Set onboarding status to self_onboarding_awaiting_admin_review and proceed to edit */\n const handleReview = async (data: string) => {\n await baseSubmitHandler(data, async employeeId => {\n await updateOnboardingStatus({\n employeeId,\n status: EmployeeOnboardingStatus.SELF_ONBOARDING_AWAITING_ADMIN_REVIEW,\n })\n onEvent(componentEvents.EMPLOYEE_UPDATE, {\n employeeId,\n onboardingStatus: EmployeeOnboardingStatus.SELF_ONBOARDING_AWAITING_ADMIN_REVIEW,\n })\n })\n }\n /**Update employee onboarding status reverting it back to admin_onboarding_incomplete */\n const handleCancelSelfOnboarding = async (data: string) => {\n await baseSubmitHandler(data, async employeeId => {\n await updateOnboardingStatus({\n employeeId,\n status: EmployeeOnboardingStatus.ADMIN_ONBOARDING_INCOMPLETE,\n })\n })\n }\n const updateOnboardingStatus = async (data: { employeeId: string; status: OnboardingStatus }) => {\n await baseSubmitHandler(data, async ({ employeeId, status }) => {\n const { employeeOnboardingStatus: responseData } =\n await updateEmployeeOnboardingStatusMutation({\n request: { employeeId, requestBody: { onboardingStatus: status } },\n })\n onEvent(componentEvents.EMPLOYEE_ONBOARDING_STATUS_UPDATED, responseData)\n })\n }\n const handleNew = () => {\n onEvent(componentEvents.EMPLOYEE_CREATE)\n }\n const handleSkip = () => {\n onEvent(componentEvents.EMPLOYEE_ONBOARDING_DONE)\n }\n\n const handleEdit = (uuid: string, onboardingStatus?: OnboardingStatus) => {\n onEvent(componentEvents.EMPLOYEE_UPDATE, { employeeId: uuid, onboardingStatus })\n }\n return (\n <section className={className}>\n <EmployeeListProvider\n value={{\n handleEdit,\n handleNew,\n handleReview,\n handleDelete,\n employees,\n currentPage,\n totalPages,\n handleFirstPage,\n handlePreviousPage,\n handleNextPage,\n handleLastPage,\n handleCancelSelfOnboarding,\n handleItemsPerPageChange,\n handleSkip,\n isFetching,\n }}\n >\n {children ? (\n children\n ) : (\n <Flex flexDirection=\"column\">\n <Head />\n <List />\n <Actions />\n </Flex>\n )}\n </EmployeeListProvider>\n </section>\n )\n}\n\n/**\n * Wrapper used inside Flows -> exposes flow context for required parameters\n */\nexport const EmployeeListContextual = () => {\n const { companyId, onEvent } = useFlow<OnboardingContextInterface>()\n return <EmployeeList companyId={companyId} onEvent={onEvent} />\n}\n"],"names":["EmployeeList","props","jsx","BaseComponent","Root","companyId","className","children","dictionary","useI18n","useComponentDictionary","onEvent","baseSubmitHandler","useBase","currentPage","setCurrentPage","useState","itemsPerPage","setItemsPerPage","data","fetchStatus","isFetching","useEmployeesList","keepPreviousData","deleteEmployeeMutation","useEmployeesDeleteMutation","updateEmployeeOnboardingStatusMutation","useEmployeesUpdateOnboardingStatusMutation","Loading","httpMeta","employeeList","employees","totalPages","handleItemsPerPageChange","newCount","handleFirstPage","handlePreviousPage","prevPage","handleNextPage","handleLastPage","handleDelete","uuid","payload","componentEvents","handleReview","employeeId","updateOnboardingStatus","EmployeeOnboardingStatus","handleCancelSelfOnboarding","status","responseData","EmployeeListProvider","onboardingStatus","jsxs","Flex","Head","List","Actions","EmployeeListContextual","useFlow"],"mappings":"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"}
@@ -1,21 +1,21 @@
1
- import { jsx as e, jsxs as c, Fragment as v } from "react/jsx-runtime";
2
- import { useTranslation as A } from "react-i18next";
3
- import { useState as T } from "react";
4
- import k from "./List.module.scss.js";
5
- import { useEmployeeList as w } from "./useEmployeeList.js";
1
+ import { jsx as e, jsxs as c, Fragment as A } from "react/jsx-runtime";
2
+ import { useTranslation as T } from "react-i18next";
3
+ import { useState as k } from "react";
4
+ import w from "./List.module.scss.js";
5
+ import { useEmployeeList as B } from "./useEmployeeList.js";
6
6
  import "classnames";
7
- import { EmployeeOnboardingStatus as i, EmployeeSelfOnboardingStatuses as B } from "../../../shared/constants.js";
8
- import { EmptyData as M } from "../../Common/EmptyData/EmptyData.js";
7
+ import { EmployeeOnboardingStatus as i, EmployeeSelfOnboardingStatuses as M } from "../../../shared/constants.js";
8
+ import { EmptyData as y } from "../../Common/EmptyData/EmptyData.js";
9
9
  import { ActionsLayout as h } from "../../Common/ActionsLayout/ActionsLayout.js";
10
- import { useComponentContext as y } from "../../../contexts/ComponentAdapter/useComponentContext.js";
11
- import { HamburgerMenu as G } from "../../Common/HamburgerMenu/HamburgerMenu.js";
12
- import { EmployeeOnboardingStatusBadge as R } from "../../Common/OnboardingStatusBadge/index.js";
10
+ import { useComponentContext as G } from "../../../contexts/ComponentAdapter/useComponentContext.js";
11
+ import { HamburgerMenu as R } from "../../Common/HamburgerMenu/HamburgerMenu.js";
12
+ import { EmployeeOnboardingStatusBadge as F } from "../../Common/OnboardingStatusBadge/index.js";
13
13
  import s from "../../../assets/icons/pencil.svg.js";
14
14
  import x from "../../../assets/icons/trashcan.svg.js";
15
- import { firstLastName as F } from "../../../helpers/formattedStrings.js";
16
- import { useDataView as V } from "../../Common/DataView/useDataView.js";
17
- import { DataView as j } from "../../Common/DataView/DataView.js";
18
- const rt = () => {
15
+ import { firstLastName as V } from "../../../helpers/formattedStrings.js";
16
+ import { useDataView as j } from "../../Common/DataView/useDataView.js";
17
+ import { DataView as W } from "../../Common/DataView/DataView.js";
18
+ const ot = () => {
19
19
  const {
20
20
  handleDelete: g,
21
21
  employees: d,
@@ -30,14 +30,15 @@ const rt = () => {
30
30
  handleItemsPerPageChange: L,
31
31
  currentPage: O,
32
32
  totalPages: _,
33
- handleSkip: D
34
- } = w(), r = y(), { t: a } = A("Employee.EmployeeList"), [I, u] = T(/* @__PURE__ */ new Set()), { ...P } = V({
33
+ handleSkip: D,
34
+ isFetching: I
35
+ } = B(), r = G(), { t: a } = T("Employee.EmployeeList"), [P, u] = k(/* @__PURE__ */ new Set()), { ...v } = j({
35
36
  data: d,
36
37
  columns: [
37
38
  {
38
39
  key: "name",
39
40
  title: a("nameLabel"),
40
- render: (t) => F({
41
+ render: (t) => V({
41
42
  first_name: t.firstName,
42
43
  last_name: t.lastName
43
44
  })
@@ -46,7 +47,7 @@ const rt = () => {
46
47
  key: "status",
47
48
  title: a("statusLabel"),
48
49
  render: ({ onboarded: t, onboardingStatus: n }) => /* @__PURE__ */ e(
49
- R,
50
+ F,
50
51
  {
51
52
  onboarded: t,
52
53
  onboardingStatus: n
@@ -62,7 +63,7 @@ const rt = () => {
62
63
  p(t.uuid, t.onboardingStatus ?? void 0);
63
64
  },
64
65
  icon: /* @__PURE__ */ e(s, { "aria-hidden": !0 })
65
- }), B.has(t.onboarding_status ?? "") && n.push({
66
+ }), M.has(t.onboarding_status ?? "") && n.push({
66
67
  label: a("cancelSelfOnboardingCta"),
67
68
  onClick: async () => {
68
69
  await b(t.uuid);
@@ -86,14 +87,15 @@ const rt = () => {
86
87
  },
87
88
  icon: /* @__PURE__ */ e(x, { "aria-hidden": !0 })
88
89
  }), /* @__PURE__ */ e(
89
- G,
90
+ R,
90
91
  {
91
92
  items: n,
92
93
  triggerLabel: a("hamburgerTitle"),
93
- isLoading: I.has(t.uuid)
94
+ isLoading: P.has(t.uuid)
94
95
  }
95
96
  );
96
97
  },
98
+ isFetching: I,
97
99
  pagination: {
98
100
  handleNextPage: C,
99
101
  handleFirstPage: E,
@@ -103,17 +105,17 @@ const rt = () => {
103
105
  currentPage: O,
104
106
  totalPages: _
105
107
  },
106
- emptyState: () => /* @__PURE__ */ e(M, { title: a("emptyTableTitle"), description: a("emptyTableDescription"), children: /* @__PURE__ */ c(h, { justifyContent: "center", children: [
108
+ emptyState: () => /* @__PURE__ */ e(y, { title: a("emptyTableTitle"), description: a("emptyTableDescription"), children: /* @__PURE__ */ c(h, { justifyContent: "center", children: [
107
109
  /* @__PURE__ */ e(r.Button, { variant: "secondary", onClick: D, children: a("skipCta") }),
108
110
  /* @__PURE__ */ e(r.Button, { variant: "primary", onClick: l, children: a("addEmployeeCTA") })
109
111
  ] }) })
110
112
  });
111
- return /* @__PURE__ */ c(v, { children: [
113
+ return /* @__PURE__ */ c(A, { children: [
112
114
  d.length > 0 && /* @__PURE__ */ e(h, { children: /* @__PURE__ */ e(r.Button, { variant: "secondary", onClick: l, children: a("addAnotherCta") }) }),
113
- /* @__PURE__ */ e("div", { className: k.container, children: /* @__PURE__ */ e(j, { label: a("employeeListLabel"), ...P }) })
115
+ /* @__PURE__ */ e("div", { className: w.container, children: /* @__PURE__ */ e(W, { label: a("employeeListLabel"), ...v }) })
114
116
  ] });
115
117
  };
116
118
  export {
117
- rt as List
119
+ ot as List
118
120
  };
119
121
  //# sourceMappingURL=List.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"List.js","sources":["../../../../src/components/Employee/EmployeeList/List.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { useState } from 'react'\nimport style from './List.module.scss'\nimport { useEmployeeList } from './useEmployeeList'\nimport { DataView, EmptyData, ActionsLayout, useDataView } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { HamburgerMenu } from '@/components/Common/HamburgerMenu'\nimport { EmployeeOnboardingStatusBadge } from '@/components/Common/OnboardingStatusBadge'\nimport PencilSvg from '@/assets/icons/pencil.svg?react'\nimport TrashCanSvg from '@/assets/icons/trashcan.svg?react'\nimport { EmployeeOnboardingStatus, EmployeeSelfOnboardingStatuses } from '@/shared/constants'\nimport { firstLastName } from '@/helpers/formattedStrings'\n\n/**List of employees slot for EmployeeList component */\nexport const List = () => {\n const {\n handleDelete,\n employees,\n handleEdit,\n handleReview,\n handleNew,\n handleCancelSelfOnboarding,\n handleFirstPage,\n handlePreviousPage,\n handleNextPage,\n handleLastPage,\n handleItemsPerPageChange,\n currentPage,\n totalPages,\n handleSkip,\n } = useEmployeeList()\n const Components = useComponentContext()\n\n const { t } = useTranslation('Employee.EmployeeList')\n const [deleting, setDeleting] = useState<Set<string>>(new Set())\n const { ...dataViewProps } = useDataView({\n data: employees,\n columns: [\n {\n key: 'name',\n title: t('nameLabel'),\n render: employee => {\n return firstLastName({\n first_name: employee.firstName,\n last_name: employee.lastName,\n })\n },\n },\n {\n key: 'status',\n title: t('statusLabel'),\n render: ({ onboarded, onboardingStatus }) => (\n <EmployeeOnboardingStatusBadge\n onboarded={onboarded}\n onboardingStatus={onboardingStatus}\n />\n ),\n },\n ],\n itemMenu: employee => {\n const menuItems = []\n\n // Edit item\n if (\n employee.onboardingStatus === EmployeeOnboardingStatus.ADMIN_ONBOARDING_INCOMPLETE ||\n employee.onboardingStatus === EmployeeOnboardingStatus.SELF_ONBOARDING_PENDING_INVITE ||\n employee.onboardingStatus ===\n EmployeeOnboardingStatus.SELF_ONBOARDING_AWAITING_ADMIN_REVIEW ||\n employee.onboardingStatus === EmployeeOnboardingStatus.ONBOARDING_COMPLETED\n ) {\n menuItems.push({\n label: t('editCta'),\n onClick: () => {\n handleEdit(employee.uuid, employee.onboardingStatus ?? undefined)\n },\n icon: <PencilSvg aria-hidden />,\n })\n }\n\n // Cancel self onboarding item\n /* @ts-expect-error: onboarding_status during runtime can be one of self onboarding statuses */\n if (EmployeeSelfOnboardingStatuses.has(employee.onboarding_status ?? '')) {\n menuItems.push({\n label: t('cancelSelfOnboardingCta'),\n onClick: async () => {\n await handleCancelSelfOnboarding(employee.uuid)\n },\n icon: <PencilSvg aria-hidden />,\n })\n }\n\n // Review item\n if (\n employee.onboardingStatus === EmployeeOnboardingStatus.SELF_ONBOARDING_COMPLETED_BY_EMPLOYEE\n ) {\n menuItems.push({\n label: t('reviewCta'),\n onClick: () => {\n void handleReview(employee.uuid)\n },\n icon: <PencilSvg aria-hidden />,\n })\n }\n\n // Delete item\n if (!employee.onboarded) {\n menuItems.push({\n label: t('deleteCta'),\n onClick: () => {\n setDeleting(prev => new Set(prev).add(employee.uuid))\n void handleDelete(employee.uuid).then(() => {\n setDeleting(prev => {\n const newSet = new Set(prev)\n newSet.delete(employee.uuid)\n return newSet\n })\n })\n },\n icon: <TrashCanSvg aria-hidden />,\n })\n }\n\n return (\n <HamburgerMenu\n items={menuItems}\n triggerLabel={t('hamburgerTitle')}\n isLoading={deleting.has(employee.uuid)}\n />\n )\n },\n pagination: {\n handleNextPage,\n handleFirstPage,\n handleLastPage,\n handlePreviousPage,\n handleItemsPerPageChange,\n currentPage,\n totalPages,\n },\n emptyState: () => (\n <EmptyData title={t('emptyTableTitle')} description={t('emptyTableDescription')}>\n <ActionsLayout justifyContent=\"center\">\n <Components.Button variant=\"secondary\" onClick={handleSkip}>\n {t('skipCta')}\n </Components.Button>\n <Components.Button variant=\"primary\" onClick={handleNew}>\n {t('addEmployeeCTA')}\n </Components.Button>\n </ActionsLayout>\n </EmptyData>\n ),\n })\n return (\n <>\n {employees.length > 0 && (\n <ActionsLayout>\n <Components.Button variant=\"secondary\" onClick={handleNew}>\n {t('addAnotherCta')}\n </Components.Button>\n </ActionsLayout>\n )}\n <div className={style.container}>\n <DataView label={t('employeeListLabel')} {...dataViewProps} />\n </div>\n </>\n )\n}\n"],"names":["List","handleDelete","employees","handleEdit","handleReview","handleNew","handleCancelSelfOnboarding","handleFirstPage","handlePreviousPage","handleNextPage","handleLastPage","handleItemsPerPageChange","currentPage","totalPages","handleSkip","useEmployeeList","Components","useComponentContext","t","useTranslation","deleting","setDeleting","useState","dataViewProps","useDataView","employee","firstLastName","onboarded","onboardingStatus","jsx","EmployeeOnboardingStatusBadge","menuItems","EmployeeOnboardingStatus","PencilSvg","EmployeeSelfOnboardingStatuses","prev","newSet","TrashCanSvg","HamburgerMenu","EmptyData","jsxs","ActionsLayout","Fragment","style","DataView"],"mappings":"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"}
1
+ {"version":3,"file":"List.js","sources":["../../../../src/components/Employee/EmployeeList/List.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { useState } from 'react'\nimport style from './List.module.scss'\nimport { useEmployeeList } from './useEmployeeList'\nimport { DataView, EmptyData, ActionsLayout, useDataView } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { HamburgerMenu } from '@/components/Common/HamburgerMenu'\nimport { EmployeeOnboardingStatusBadge } from '@/components/Common/OnboardingStatusBadge'\nimport PencilSvg from '@/assets/icons/pencil.svg?react'\nimport TrashCanSvg from '@/assets/icons/trashcan.svg?react'\nimport { EmployeeOnboardingStatus, EmployeeSelfOnboardingStatuses } from '@/shared/constants'\nimport { firstLastName } from '@/helpers/formattedStrings'\n\n/**List of employees slot for EmployeeList component */\nexport const List = () => {\n const {\n handleDelete,\n employees,\n handleEdit,\n handleReview,\n handleNew,\n handleCancelSelfOnboarding,\n handleFirstPage,\n handlePreviousPage,\n handleNextPage,\n handleLastPage,\n handleItemsPerPageChange,\n currentPage,\n totalPages,\n handleSkip,\n isFetching,\n } = useEmployeeList()\n const Components = useComponentContext()\n\n const { t } = useTranslation('Employee.EmployeeList')\n const [deleting, setDeleting] = useState<Set<string>>(new Set())\n const { ...dataViewProps } = useDataView({\n data: employees,\n columns: [\n {\n key: 'name',\n title: t('nameLabel'),\n render: employee => {\n return firstLastName({\n first_name: employee.firstName,\n last_name: employee.lastName,\n })\n },\n },\n {\n key: 'status',\n title: t('statusLabel'),\n render: ({ onboarded, onboardingStatus }) => (\n <EmployeeOnboardingStatusBadge\n onboarded={onboarded}\n onboardingStatus={onboardingStatus}\n />\n ),\n },\n ],\n itemMenu: employee => {\n const menuItems = []\n\n // Edit item\n if (\n employee.onboardingStatus === EmployeeOnboardingStatus.ADMIN_ONBOARDING_INCOMPLETE ||\n employee.onboardingStatus === EmployeeOnboardingStatus.SELF_ONBOARDING_PENDING_INVITE ||\n employee.onboardingStatus ===\n EmployeeOnboardingStatus.SELF_ONBOARDING_AWAITING_ADMIN_REVIEW ||\n employee.onboardingStatus === EmployeeOnboardingStatus.ONBOARDING_COMPLETED\n ) {\n menuItems.push({\n label: t('editCta'),\n onClick: () => {\n handleEdit(employee.uuid, employee.onboardingStatus ?? undefined)\n },\n icon: <PencilSvg aria-hidden />,\n })\n }\n\n // Cancel self onboarding item\n /* @ts-expect-error: onboarding_status during runtime can be one of self onboarding statuses */\n if (EmployeeSelfOnboardingStatuses.has(employee.onboarding_status ?? '')) {\n menuItems.push({\n label: t('cancelSelfOnboardingCta'),\n onClick: async () => {\n await handleCancelSelfOnboarding(employee.uuid)\n },\n icon: <PencilSvg aria-hidden />,\n })\n }\n\n // Review item\n if (\n employee.onboardingStatus === EmployeeOnboardingStatus.SELF_ONBOARDING_COMPLETED_BY_EMPLOYEE\n ) {\n menuItems.push({\n label: t('reviewCta'),\n onClick: () => {\n void handleReview(employee.uuid)\n },\n icon: <PencilSvg aria-hidden />,\n })\n }\n\n // Delete item\n if (!employee.onboarded) {\n menuItems.push({\n label: t('deleteCta'),\n onClick: () => {\n setDeleting(prev => new Set(prev).add(employee.uuid))\n void handleDelete(employee.uuid).then(() => {\n setDeleting(prev => {\n const newSet = new Set(prev)\n newSet.delete(employee.uuid)\n return newSet\n })\n })\n },\n icon: <TrashCanSvg aria-hidden />,\n })\n }\n\n return (\n <HamburgerMenu\n items={menuItems}\n triggerLabel={t('hamburgerTitle')}\n isLoading={deleting.has(employee.uuid)}\n />\n )\n },\n isFetching,\n pagination: {\n handleNextPage,\n handleFirstPage,\n handleLastPage,\n handlePreviousPage,\n handleItemsPerPageChange,\n currentPage,\n totalPages,\n },\n emptyState: () => (\n <EmptyData title={t('emptyTableTitle')} description={t('emptyTableDescription')}>\n <ActionsLayout justifyContent=\"center\">\n <Components.Button variant=\"secondary\" onClick={handleSkip}>\n {t('skipCta')}\n </Components.Button>\n <Components.Button variant=\"primary\" onClick={handleNew}>\n {t('addEmployeeCTA')}\n </Components.Button>\n </ActionsLayout>\n </EmptyData>\n ),\n })\n return (\n <>\n {employees.length > 0 && (\n <ActionsLayout>\n <Components.Button variant=\"secondary\" onClick={handleNew}>\n {t('addAnotherCta')}\n </Components.Button>\n </ActionsLayout>\n )}\n <div className={style.container}>\n <DataView label={t('employeeListLabel')} {...dataViewProps} />\n </div>\n </>\n )\n}\n"],"names":["List","handleDelete","employees","handleEdit","handleReview","handleNew","handleCancelSelfOnboarding","handleFirstPage","handlePreviousPage","handleNextPage","handleLastPage","handleItemsPerPageChange","currentPage","totalPages","handleSkip","isFetching","useEmployeeList","Components","useComponentContext","t","useTranslation","deleting","setDeleting","useState","dataViewProps","useDataView","employee","firstLastName","onboarded","onboardingStatus","jsx","EmployeeOnboardingStatusBadge","menuItems","EmployeeOnboardingStatus","PencilSvg","EmployeeSelfOnboardingStatuses","prev","newSet","TrashCanSvg","HamburgerMenu","EmptyData","jsxs","ActionsLayout","Fragment","style","DataView"],"mappings":"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"}
@@ -15,6 +15,7 @@ type EmployeeListContextType = {
15
15
  currentPage: number;
16
16
  totalPages: number;
17
17
  employees: Employee[];
18
+ isFetching: boolean;
18
19
  };
19
20
  declare const useEmployeeList: () => EmployeeListContextType, EmployeeListProvider: import('react').Provider<EmployeeListContextType | null>;
20
21
  export { useEmployeeList, EmployeeListProvider };
@@ -6,11 +6,12 @@ import "../../Base/useBase.js";
6
6
  import "../../../shared/constants.js";
7
7
  import "classnames";
8
8
  import "dompurify";
9
+ import "../../../contexts/LocaleProvider/useLocale.js";
9
10
  import "../../../contexts/ComponentAdapter/useComponentContext.js";
10
11
  import { createCompoundContext as o } from "../../Base/createCompoundContext.js";
11
- const [y, C] = o("EmployeeListContext");
12
+ const [C, E] = o("EmployeeListContext");
12
13
  export {
13
- C as EmployeeListProvider,
14
- y as useEmployeeList
14
+ E as EmployeeListProvider,
15
+ C as useEmployeeList
15
16
  };
16
17
  //# sourceMappingURL=useEmployeeList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useEmployeeList.js","sources":["../../../../src/components/Employee/EmployeeList/useEmployeeList.ts"],"sourcesContent":["import type { Employee } from '@gusto/embedded-api/models/components/employee'\nimport type { OnboardingStatus } from '@gusto/embedded-api/models/operations/putv1employeesemployeeidonboardingstatus'\nimport { createCompoundContext } from '@/components/Base'\n\n//Interface for context passed down to component slots\ntype EmployeeListContextType = {\n handleEdit: (uuid: string, onboardingStatus?: OnboardingStatus) => void\n handleDelete: (uuid: string) => Promise<void>\n handleCancelSelfOnboarding: (employeeId: string) => Promise<void>\n handleReview: (employeeId: string) => Promise<void>\n handleNew: () => void\n handleSkip: () => void\n handleFirstPage: () => void\n handlePreviousPage: () => void\n handleNextPage: () => void\n handleLastPage: () => void\n handleItemsPerPageChange: (newCount: number) => void\n currentPage: number\n totalPages: number\n employees: Employee[]\n}\n\nconst [useEmployeeList, EmployeeListProvider] =\n createCompoundContext<EmployeeListContextType>('EmployeeListContext')\nexport { useEmployeeList, EmployeeListProvider }\n"],"names":["useEmployeeList","EmployeeListProvider","createCompoundContext"],"mappings":";;;;;;;;;;AAsBA,MAAM,CAACA,GAAiBC,CAAoB,IAC1CC,EAA+C,qBAAqB;"}
1
+ {"version":3,"file":"useEmployeeList.js","sources":["../../../../src/components/Employee/EmployeeList/useEmployeeList.ts"],"sourcesContent":["import type { Employee } from '@gusto/embedded-api/models/components/employee'\nimport type { OnboardingStatus } from '@gusto/embedded-api/models/operations/putv1employeesemployeeidonboardingstatus'\nimport { createCompoundContext } from '@/components/Base'\n\n//Interface for context passed down to component slots\ntype EmployeeListContextType = {\n handleEdit: (uuid: string, onboardingStatus?: OnboardingStatus) => void\n handleDelete: (uuid: string) => Promise<void>\n handleCancelSelfOnboarding: (employeeId: string) => Promise<void>\n handleReview: (employeeId: string) => Promise<void>\n handleNew: () => void\n handleSkip: () => void\n handleFirstPage: () => void\n handlePreviousPage: () => void\n handleNextPage: () => void\n handleLastPage: () => void\n handleItemsPerPageChange: (newCount: number) => void\n currentPage: number\n totalPages: number\n employees: Employee[]\n isFetching: boolean\n}\n\nconst [useEmployeeList, EmployeeListProvider] =\n createCompoundContext<EmployeeListContextType>('EmployeeListContext')\nexport { useEmployeeList, EmployeeListProvider }\n"],"names":["useEmployeeList","EmployeeListProvider","createCompoundContext"],"mappings":";;;;;;;;;;;AAuBA,MAAM,CAACA,GAAiBC,CAAoB,IAC1CC,EAA+C,qBAAqB;"}
@@ -6,11 +6,12 @@ import "../../Base/useBase.js";
6
6
  import "../../../shared/constants.js";
7
7
  import "classnames";
8
8
  import "dompurify";
9
+ import "../../../contexts/LocaleProvider/useLocale.js";
9
10
  import "../../../contexts/ComponentAdapter/useComponentContext.js";
10
11
  import { createCompoundContext as o } from "../../Base/createCompoundContext.js";
11
- const [n, l] = o("FederalTaxesContext");
12
+ const [l, C] = o("FederalTaxesContext");
12
13
  export {
13
- l as FederalTaxesProvider,
14
- n as useFederalTaxes
14
+ C as FederalTaxesProvider,
15
+ l as useFederalTaxes
15
16
  };
16
17
  //# sourceMappingURL=useFederalTaxes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useFederalTaxes.js","sources":["../../../../src/components/Employee/FederalTaxes/useFederalTaxes.ts"],"sourcesContent":["import { createCompoundContext } from '@/components/Base'\n\ntype FederalTaxesContextType = {\n isPending: boolean\n}\n\nconst [useFederalTaxes, FederalTaxesProvider] =\n createCompoundContext<FederalTaxesContextType>('FederalTaxesContext')\nexport { useFederalTaxes, FederalTaxesProvider }\n"],"names":["useFederalTaxes","FederalTaxesProvider","createCompoundContext"],"mappings":";;;;;;;;;;AAMA,MAAM,CAACA,GAAiBC,CAAoB,IAC1CC,EAA+C,qBAAqB;"}
1
+ {"version":3,"file":"useFederalTaxes.js","sources":["../../../../src/components/Employee/FederalTaxes/useFederalTaxes.ts"],"sourcesContent":["import { createCompoundContext } from '@/components/Base'\n\ntype FederalTaxesContextType = {\n isPending: boolean\n}\n\nconst [useFederalTaxes, FederalTaxesProvider] =\n createCompoundContext<FederalTaxesContextType>('FederalTaxesContext')\nexport { useFederalTaxes, FederalTaxesProvider }\n"],"names":["useFederalTaxes","FederalTaxesProvider","createCompoundContext"],"mappings":";;;;;;;;;;;AAMA,MAAM,CAACA,GAAiBC,CAAoB,IAC1CC,EAA+C,qBAAqB;"}
@@ -6,15 +6,15 @@ export declare const BankAccountSchema: z.ZodObject<{
6
6
  accountType: z.ZodEnum<["Checking", "Savings"]>;
7
7
  hasBankPayload: z.ZodLiteral<true>;
8
8
  }, "strip", z.ZodTypeAny, {
9
- name: string;
10
9
  routingNumber: string;
11
10
  accountNumber: string;
11
+ name: string;
12
12
  accountType: "Checking" | "Savings";
13
13
  hasBankPayload: true;
14
14
  }, {
15
- name: string;
16
15
  routingNumber: string;
17
16
  accountNumber: string;
17
+ name: string;
18
18
  accountType: "Checking" | "Savings";
19
19
  hasBankPayload: true;
20
20
  }>;
@@ -11,19 +11,19 @@ export declare const CombinedSchema: z.ZodUnion<[z.ZodObject<{
11
11
  type: z.ZodLiteral<"Direct Deposit">;
12
12
  isSplit: z.ZodLiteral<false>;
13
13
  }, "strip", z.ZodTypeAny, {
14
- name: string;
15
- type: "Direct Deposit";
16
14
  routingNumber: string;
17
15
  accountNumber: string;
16
+ name: string;
18
17
  accountType: "Checking" | "Savings";
18
+ type: "Direct Deposit";
19
19
  hasBankPayload: true;
20
20
  isSplit: false;
21
21
  }, {
22
- name: string;
23
- type: "Direct Deposit";
24
22
  routingNumber: string;
25
23
  accountNumber: string;
24
+ name: string;
26
25
  accountType: "Checking" | "Savings";
26
+ type: "Direct Deposit";
27
27
  hasBankPayload: true;
28
28
  isSplit: false;
29
29
  }>, z.ZodObject<{
@@ -52,15 +52,15 @@ export declare const CombinedSchema: z.ZodUnion<[z.ZodObject<{
52
52
  splitAmount: z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodNumber>, Record<string, number>, Record<string, number>>;
53
53
  priority: z.ZodRecord<z.ZodString, z.ZodNumber>;
54
54
  }, "strip", z.ZodTypeAny, {
55
- type: "Direct Deposit";
56
55
  priority: Record<string, number>;
56
+ type: "Direct Deposit";
57
57
  hasBankPayload: false;
58
58
  isSplit: true;
59
59
  splitBy: "Percentage";
60
60
  splitAmount: Record<string, number>;
61
61
  }, {
62
- type: "Direct Deposit";
63
62
  priority: Record<string, number>;
63
+ type: "Direct Deposit";
64
64
  hasBankPayload: false;
65
65
  isSplit: true;
66
66
  splitBy: "Percentage";
@@ -74,16 +74,16 @@ export declare const CombinedSchema: z.ZodUnion<[z.ZodObject<{
74
74
  splitAmount: z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodNumber>>;
75
75
  remainder: z.ZodString;
76
76
  }, "strip", z.ZodTypeAny, {
77
- type: "Direct Deposit";
78
77
  priority: Record<string, number>;
78
+ type: "Direct Deposit";
79
79
  hasBankPayload: false;
80
80
  isSplit: true;
81
81
  splitBy: "Amount";
82
82
  splitAmount: Record<string, number | null>;
83
83
  remainder: string;
84
84
  }, {
85
- type: "Direct Deposit";
86
85
  priority: Record<string, number>;
86
+ type: "Direct Deposit";
87
87
  hasBankPayload: false;
88
88
  isSplit: true;
89
89
  splitBy: "Amount";
@@ -8,9 +8,10 @@ import "../../Base/useBase.js";
8
8
  import "../../../shared/constants.js";
9
9
  import "classnames";
10
10
  import "dompurify";
11
+ import "../../../contexts/LocaleProvider/useLocale.js";
11
12
  import "../../../contexts/ComponentAdapter/useComponentContext.js";
12
13
  import { createCompoundContext as a } from "../../Base/createCompoundContext.js";
13
- const D = t.union([
14
+ const P = t.union([
14
15
  o.extend({
15
16
  type: t.literal("Direct Deposit"),
16
17
  isSplit: t.literal(!1)
@@ -50,10 +51,10 @@ const D = t.union([
50
51
  remainder: t.string()
51
52
  })
52
53
  ])
53
- ]), [P, j] = a("PaymentMethodContext");
54
+ ]), [j, B] = a("PaymentMethodContext");
54
55
  export {
55
- D as CombinedSchema,
56
- j as PaymentMethodProvider,
57
- P as usePaymentMethod
56
+ P as CombinedSchema,
57
+ B as PaymentMethodProvider,
58
+ j as usePaymentMethod
58
59
  };
59
60
  //# sourceMappingURL=usePaymentMethod.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"usePaymentMethod.js","sources":["../../../../src/components/Employee/PaymentMethod/usePaymentMethod.ts"],"sourcesContent":["import type { EmployeeBankAccount } from '@gusto/embedded-api/models/components/employeebankaccount'\nimport type { EmployeePaymentMethod } from '@gusto/embedded-api/models/components/employeepaymentmethod'\nimport { z } from 'zod'\nimport { BankAccountSchema } from './BankAccount'\nimport { createCompoundContext } from '@/components/Base'\n\nexport const CombinedSchema = z.union([\n BankAccountSchema.extend({\n type: z.literal('Direct Deposit'),\n isSplit: z.literal(false),\n }),\n z.object({\n type: z.literal('Direct Deposit'),\n isSplit: z.literal(false),\n hasBankPayload: z.literal(false),\n }),\n z.object({\n type: z.literal('Check'),\n }),\n z.discriminatedUnion('splitBy', [\n z.object({\n type: z.literal('Direct Deposit'),\n isSplit: z.literal(true),\n hasBankPayload: z.literal(false),\n splitBy: z.literal('Percentage'),\n splitAmount: z.record(z.string(), z.number().max(100).min(0)).refine(\n input => Object.values(input).reduce((acc, curr) => acc + curr, 0) === 100,\n input => {\n const total = Object.values(input).reduce((acc, curr) => acc + curr, 0)\n return {\n message: `percentage_split_total_error:${total}`,\n }\n },\n ),\n priority: z.record(z.string(), z.number()),\n }),\n z.object({\n type: z.literal('Direct Deposit'),\n isSplit: z.literal(true),\n hasBankPayload: z.literal(false),\n splitBy: z.literal('Amount'),\n priority: z.record(z.string(), z.number()).refine(input => {\n const arr = Object.values(input)\n return arr.filter((item, index) => arr.indexOf(item) !== index).length === 0\n }),\n splitAmount: z.record(z.string(), z.number().min(0).nullable()),\n remainder: z.string(),\n }),\n ]),\n])\n\nexport type CombinedSchemaInputs = z.input<typeof CombinedSchema>\nexport type CombinedSchemaOutputs = z.output<typeof CombinedSchema>\n\ntype PaymentMethodContextType = {\n bankAccounts: EmployeeBankAccount[]\n isPending: boolean\n watchedType?: string\n mode: MODE\n paymentMethod: EmployeePaymentMethod\n handleAdd: () => void\n handleSplit: () => void\n handleCancel: () => void\n handleDelete: (uuid: string) => void\n}\n\nexport type MODE = 'ADD' | 'LIST' | 'SPLIT' | 'INITIAL'\n\nconst [usePaymentMethod, PaymentMethodProvider] =\n createCompoundContext<PaymentMethodContextType>('PaymentMethodContext')\nexport { usePaymentMethod, PaymentMethodProvider }\n"],"names":["CombinedSchema","z","BankAccountSchema","input","acc","curr","arr","item","index","usePaymentMethod","PaymentMethodProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;AAMO,MAAMA,IAAiBC,EAAE,MAAM;AAAA,EACpCC,EAAkB,OAAO;AAAA,IACvB,MAAMD,EAAE,QAAQ,gBAAgB;AAAA,IAChC,SAASA,EAAE,QAAQ,EAAK;AAAA,EAAA,CACzB;AAAA,EACDA,EAAE,OAAO;AAAA,IACP,MAAMA,EAAE,QAAQ,gBAAgB;AAAA,IAChC,SAASA,EAAE,QAAQ,EAAK;AAAA,IACxB,gBAAgBA,EAAE,QAAQ,EAAK;AAAA,EAAA,CAChC;AAAA,EACDA,EAAE,OAAO;AAAA,IACP,MAAMA,EAAE,QAAQ,OAAO;AAAA,EAAA,CACxB;AAAA,EACDA,EAAE,mBAAmB,WAAW;AAAA,IAC9BA,EAAE,OAAO;AAAA,MACP,MAAMA,EAAE,QAAQ,gBAAgB;AAAA,MAChC,SAASA,EAAE,QAAQ,EAAI;AAAA,MACvB,gBAAgBA,EAAE,QAAQ,EAAK;AAAA,MAC/B,SAASA,EAAE,QAAQ,YAAY;AAAA,MAC/B,aAAaA,EAAE,OAAOA,EAAE,UAAUA,EAAE,OAAA,EAAS,IAAI,GAAG,EAAE,IAAI,CAAC,CAAC,EAAE;AAAA,QAC5D,CAAAE,MAAS,OAAO,OAAOA,CAAK,EAAE,OAAO,CAACC,GAAKC,MAASD,IAAMC,GAAM,CAAC,MAAM;AAAA,QACvE,CAAAF,OAES;AAAA,UACL,SAAS,gCAFG,OAAO,OAAOA,CAAK,EAAE,OAAO,CAACC,GAAKC,MAASD,IAAMC,GAAM,CAAC,CAEtB;AAAA,QAAA;AAAA,MAElD;AAAA,MAEF,UAAUJ,EAAE,OAAOA,EAAE,UAAUA,EAAE,QAAQ;AAAA,IAAA,CAC1C;AAAA,IACDA,EAAE,OAAO;AAAA,MACP,MAAMA,EAAE,QAAQ,gBAAgB;AAAA,MAChC,SAASA,EAAE,QAAQ,EAAI;AAAA,MACvB,gBAAgBA,EAAE,QAAQ,EAAK;AAAA,MAC/B,SAASA,EAAE,QAAQ,QAAQ;AAAA,MAC3B,UAAUA,EAAE,OAAOA,EAAE,OAAA,GAAUA,EAAE,OAAA,CAAQ,EAAE,OAAO,CAAAE,MAAS;AACzD,cAAMG,IAAM,OAAO,OAAOH,CAAK;AAC/B,eAAOG,EAAI,OAAO,CAACC,GAAMC,MAAUF,EAAI,QAAQC,CAAI,MAAMC,CAAK,EAAE,WAAW;AAAA,MAC7E,CAAC;AAAA,MACD,aAAaP,EAAE,OAAOA,EAAE,OAAA,GAAUA,EAAE,OAAA,EAAS,IAAI,CAAC,EAAE,UAAU;AAAA,MAC9D,WAAWA,EAAE,OAAA;AAAA,IAAO,CACrB;AAAA,EAAA,CACF;AACH,CAAC,GAmBK,CAACQ,GAAkBC,CAAqB,IAC5CC,EAAgD,sBAAsB;"}
1
+ {"version":3,"file":"usePaymentMethod.js","sources":["../../../../src/components/Employee/PaymentMethod/usePaymentMethod.ts"],"sourcesContent":["import type { EmployeeBankAccount } from '@gusto/embedded-api/models/components/employeebankaccount'\nimport type { EmployeePaymentMethod } from '@gusto/embedded-api/models/components/employeepaymentmethod'\nimport { z } from 'zod'\nimport { BankAccountSchema } from './BankAccount'\nimport { createCompoundContext } from '@/components/Base'\n\nexport const CombinedSchema = z.union([\n BankAccountSchema.extend({\n type: z.literal('Direct Deposit'),\n isSplit: z.literal(false),\n }),\n z.object({\n type: z.literal('Direct Deposit'),\n isSplit: z.literal(false),\n hasBankPayload: z.literal(false),\n }),\n z.object({\n type: z.literal('Check'),\n }),\n z.discriminatedUnion('splitBy', [\n z.object({\n type: z.literal('Direct Deposit'),\n isSplit: z.literal(true),\n hasBankPayload: z.literal(false),\n splitBy: z.literal('Percentage'),\n splitAmount: z.record(z.string(), z.number().max(100).min(0)).refine(\n input => Object.values(input).reduce((acc, curr) => acc + curr, 0) === 100,\n input => {\n const total = Object.values(input).reduce((acc, curr) => acc + curr, 0)\n return {\n message: `percentage_split_total_error:${total}`,\n }\n },\n ),\n priority: z.record(z.string(), z.number()),\n }),\n z.object({\n type: z.literal('Direct Deposit'),\n isSplit: z.literal(true),\n hasBankPayload: z.literal(false),\n splitBy: z.literal('Amount'),\n priority: z.record(z.string(), z.number()).refine(input => {\n const arr = Object.values(input)\n return arr.filter((item, index) => arr.indexOf(item) !== index).length === 0\n }),\n splitAmount: z.record(z.string(), z.number().min(0).nullable()),\n remainder: z.string(),\n }),\n ]),\n])\n\nexport type CombinedSchemaInputs = z.input<typeof CombinedSchema>\nexport type CombinedSchemaOutputs = z.output<typeof CombinedSchema>\n\ntype PaymentMethodContextType = {\n bankAccounts: EmployeeBankAccount[]\n isPending: boolean\n watchedType?: string\n mode: MODE\n paymentMethod: EmployeePaymentMethod\n handleAdd: () => void\n handleSplit: () => void\n handleCancel: () => void\n handleDelete: (uuid: string) => void\n}\n\nexport type MODE = 'ADD' | 'LIST' | 'SPLIT' | 'INITIAL'\n\nconst [usePaymentMethod, PaymentMethodProvider] =\n createCompoundContext<PaymentMethodContextType>('PaymentMethodContext')\nexport { usePaymentMethod, PaymentMethodProvider }\n"],"names":["CombinedSchema","z","BankAccountSchema","input","acc","curr","arr","item","index","usePaymentMethod","PaymentMethodProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;AAMO,MAAMA,IAAiBC,EAAE,MAAM;AAAA,EACpCC,EAAkB,OAAO;AAAA,IACvB,MAAMD,EAAE,QAAQ,gBAAgB;AAAA,IAChC,SAASA,EAAE,QAAQ,EAAK;AAAA,EAAA,CACzB;AAAA,EACDA,EAAE,OAAO;AAAA,IACP,MAAMA,EAAE,QAAQ,gBAAgB;AAAA,IAChC,SAASA,EAAE,QAAQ,EAAK;AAAA,IACxB,gBAAgBA,EAAE,QAAQ,EAAK;AAAA,EAAA,CAChC;AAAA,EACDA,EAAE,OAAO;AAAA,IACP,MAAMA,EAAE,QAAQ,OAAO;AAAA,EAAA,CACxB;AAAA,EACDA,EAAE,mBAAmB,WAAW;AAAA,IAC9BA,EAAE,OAAO;AAAA,MACP,MAAMA,EAAE,QAAQ,gBAAgB;AAAA,MAChC,SAASA,EAAE,QAAQ,EAAI;AAAA,MACvB,gBAAgBA,EAAE,QAAQ,EAAK;AAAA,MAC/B,SAASA,EAAE,QAAQ,YAAY;AAAA,MAC/B,aAAaA,EAAE,OAAOA,EAAE,UAAUA,EAAE,OAAA,EAAS,IAAI,GAAG,EAAE,IAAI,CAAC,CAAC,EAAE;AAAA,QAC5D,CAAAE,MAAS,OAAO,OAAOA,CAAK,EAAE,OAAO,CAACC,GAAKC,MAASD,IAAMC,GAAM,CAAC,MAAM;AAAA,QACvE,CAAAF,OAES;AAAA,UACL,SAAS,gCAFG,OAAO,OAAOA,CAAK,EAAE,OAAO,CAACC,GAAKC,MAASD,IAAMC,GAAM,CAAC,CAEtB;AAAA,QAAA;AAAA,MAElD;AAAA,MAEF,UAAUJ,EAAE,OAAOA,EAAE,UAAUA,EAAE,QAAQ;AAAA,IAAA,CAC1C;AAAA,IACDA,EAAE,OAAO;AAAA,MACP,MAAMA,EAAE,QAAQ,gBAAgB;AAAA,MAChC,SAASA,EAAE,QAAQ,EAAI;AAAA,MACvB,gBAAgBA,EAAE,QAAQ,EAAK;AAAA,MAC/B,SAASA,EAAE,QAAQ,QAAQ;AAAA,MAC3B,UAAUA,EAAE,OAAOA,EAAE,OAAA,GAAUA,EAAE,OAAA,CAAQ,EAAE,OAAO,CAAAE,MAAS;AACzD,cAAMG,IAAM,OAAO,OAAOH,CAAK;AAC/B,eAAOG,EAAI,OAAO,CAACC,GAAMC,MAAUF,EAAI,QAAQC,CAAI,MAAMC,CAAK,EAAE,WAAW;AAAA,MAC7E,CAAC;AAAA,MACD,aAAaP,EAAE,OAAOA,EAAE,OAAA,GAAUA,EAAE,OAAA,EAAS,IAAI,CAAC,EAAE,UAAU;AAAA,MAC9D,WAAWA,EAAE,OAAA;AAAA,IAAO,CACrB;AAAA,EAAA,CACF;AACH,CAAC,GAmBK,CAACQ,GAAkBC,CAAqB,IAC5CC,EAAgD,sBAAsB;"}