@gusto/embedded-react-sdk 0.13.3 → 0.13.4

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 (256) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/assets/icons/hamburger.svg.js +5 -5
  3. package/dist/assets/icons/hamburger.svg.js.map +1 -1
  4. package/dist/assets/icons/receipt-check.svg.js +10 -0
  5. package/dist/assets/icons/receipt-check.svg.js.map +1 -0
  6. package/dist/components/Common/DataView/DataTable/DataTable.js +29 -28
  7. package/dist/components/Common/DataView/DataTable/DataTable.js.map +1 -1
  8. package/dist/components/Common/DocumentViewer/DocumentViewer.d.ts +1 -1
  9. package/dist/components/Common/DocumentViewer/DocumentViewer.js +9 -9
  10. package/dist/components/Common/DocumentViewer/DocumentViewer.js.map +1 -1
  11. package/dist/components/Common/Fields/RadioGroupField/RadioGroupField.d.ts +1 -1
  12. package/dist/components/Common/Fields/RadioGroupField/RadioGroupField.js.map +1 -1
  13. package/dist/components/Common/SignatureForm/SignatureForm.js +1 -1
  14. package/dist/components/Common/SignatureForm/SignatureFormActions.js +1 -1
  15. package/dist/components/Common/SignatureForm/SignatureFormFields.js +1 -1
  16. package/dist/components/Common/UI/RadioGroup/RadioGroup.js +33 -31
  17. package/dist/components/Common/UI/RadioGroup/RadioGroup.js.map +1 -1
  18. package/dist/components/Common/UI/RadioGroup/RadioGroupTypes.d.ts +4 -0
  19. package/dist/components/Common/UI/RadioGroup/RadioGroupTypes.js.map +1 -1
  20. package/dist/components/Common/UI/Table/Table.js +22 -13
  21. package/dist/components/Common/UI/Table/Table.js.map +1 -1
  22. package/dist/components/Common/UI/Table/Table.module.scss.js +1 -1
  23. package/dist/components/Common/UI/Table/TableTypes.d.ts +5 -0
  24. package/dist/components/Common/UI/Table/TableTypes.js +2 -1
  25. package/dist/components/Common/UI/Table/TableTypes.js.map +1 -1
  26. package/dist/components/Common/UI/Text/Text.module.scss.js +15 -14
  27. package/dist/components/Common/UI/Text/Text.module.scss.js.map +1 -1
  28. package/dist/components/Common/UI/Text/TextTypes.d.ts +2 -2
  29. package/dist/components/Common/UI/Text/TextTypes.js.map +1 -1
  30. package/dist/components/Company/AssignSignatory/AssignSignatory.js +6 -7
  31. package/dist/components/Company/AssignSignatory/AssignSignatory.js.map +1 -1
  32. package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js +3 -2
  33. package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js.map +1 -1
  34. package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js +3 -2
  35. package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js.map +1 -1
  36. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js +2 -3
  37. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js.map +1 -1
  38. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js +13 -14
  39. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js.map +1 -1
  40. package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js +3 -2
  41. package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js.map +1 -1
  42. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js +5 -6
  43. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js.map +1 -1
  44. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js +10 -11
  45. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js.map +1 -1
  46. package/dist/components/Company/BankAccount/BankAccount.js +25 -21
  47. package/dist/components/Company/BankAccount/BankAccount.js.map +1 -1
  48. package/dist/components/Company/BankAccount/BankAccountForm/Actions.js +6 -6
  49. package/dist/components/Company/BankAccount/BankAccountForm/Form.js +9 -8
  50. package/dist/components/Company/BankAccount/BankAccountForm/Form.js.map +1 -1
  51. package/dist/components/Company/BankAccount/BankAccountList/Actions.js +9 -8
  52. package/dist/components/Company/BankAccount/BankAccountList/Actions.js.map +1 -1
  53. package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js +8 -7
  54. package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js.map +1 -1
  55. package/dist/components/Company/BankAccount/BankAccountVerify/Form.js +5 -4
  56. package/dist/components/Company/BankAccount/BankAccountVerify/Form.js.map +1 -1
  57. package/dist/components/Company/DocumentSigner/DocumentList/Actions.js +3 -2
  58. package/dist/components/Company/DocumentSigner/DocumentList/Actions.js.map +1 -1
  59. package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js +34 -35
  60. package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
  61. package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js +6 -7
  62. package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js.map +1 -1
  63. package/dist/components/Company/FederalTaxes/Actions.js +6 -5
  64. package/dist/components/Company/FederalTaxes/Actions.js.map +1 -1
  65. package/dist/components/Company/FederalTaxes/FederalTaxes.js +12 -13
  66. package/dist/components/Company/FederalTaxes/FederalTaxes.js.map +1 -1
  67. package/dist/components/Company/FederalTaxes/Form.js +4 -3
  68. package/dist/components/Company/FederalTaxes/Form.js.map +1 -1
  69. package/dist/components/Company/Industry/Actions.js +3 -2
  70. package/dist/components/Company/Industry/Actions.js.map +1 -1
  71. package/dist/components/Company/Industry/Edit.js +5 -4
  72. package/dist/components/Company/Industry/Edit.js.map +1 -1
  73. package/dist/components/Company/Locations/LocationForm/Actions.js +7 -6
  74. package/dist/components/Company/Locations/LocationForm/Actions.js.map +1 -1
  75. package/dist/components/Company/Locations/LocationForm/Form.js +5 -6
  76. package/dist/components/Company/Locations/LocationForm/Form.js.map +1 -1
  77. package/dist/components/Company/Locations/LocationForm/LocationForm.js +10 -11
  78. package/dist/components/Company/Locations/LocationForm/LocationForm.js.map +1 -1
  79. package/dist/components/Company/Locations/Locations.js +21 -17
  80. package/dist/components/Company/Locations/Locations.js.map +1 -1
  81. package/dist/components/Company/Locations/LocationsList/Actions.js +7 -6
  82. package/dist/components/Company/Locations/LocationsList/Actions.js.map +1 -1
  83. package/dist/components/Company/Locations/LocationsList/List.js +16 -16
  84. package/dist/components/Company/Locations/LocationsList/List.js.map +1 -1
  85. package/dist/components/Company/Locations/LocationsList/LocationsList.js +6 -7
  86. package/dist/components/Company/Locations/LocationsList/LocationsList.js.map +1 -1
  87. package/dist/components/Company/OnboardingFlow/OnboardingFlow.js +21 -17
  88. package/dist/components/Company/OnboardingFlow/OnboardingFlow.js.map +1 -1
  89. package/dist/components/Company/OnboardingOverview/Completed.js +11 -10
  90. package/dist/components/Company/OnboardingOverview/Completed.js.map +1 -1
  91. package/dist/components/Company/OnboardingOverview/MissingRequirements.js +7 -6
  92. package/dist/components/Company/OnboardingOverview/MissingRequirements.js.map +1 -1
  93. package/dist/components/Company/OnboardingOverview/OnboardingOverview.js +2 -3
  94. package/dist/components/Company/OnboardingOverview/OnboardingOverview.js.map +1 -1
  95. package/dist/components/Company/PaySchedule/PaySchedule.js +33 -34
  96. package/dist/components/Company/PaySchedule/PaySchedule.js.map +1 -1
  97. package/dist/components/Company/PaySchedule/_parts/Actions.js +10 -9
  98. package/dist/components/Company/PaySchedule/_parts/Actions.js.map +1 -1
  99. package/dist/components/Company/PaySchedule/_parts/Edit.js +16 -17
  100. package/dist/components/Company/PaySchedule/_parts/Edit.js.map +1 -1
  101. package/dist/components/Company/PaySchedule/_parts/Head.js +7 -6
  102. package/dist/components/Company/PaySchedule/_parts/Head.js.map +1 -1
  103. package/dist/components/Company/PaySchedule/_parts/List.js +12 -11
  104. package/dist/components/Company/PaySchedule/_parts/List.js.map +1 -1
  105. package/dist/components/Company/StateTaxes/StateTaxes.js +20 -16
  106. package/dist/components/Company/StateTaxes/StateTaxes.js.map +1 -1
  107. package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js +3 -2
  108. package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js.map +1 -1
  109. package/dist/components/Company/StateTaxes/StateTaxesList/Actions.js +3 -2
  110. package/dist/components/Company/StateTaxes/StateTaxesList/Actions.js.map +1 -1
  111. package/dist/components/Company/StateTaxes/StateTaxesList/List.js +3 -2
  112. package/dist/components/Company/StateTaxes/StateTaxesList/List.js.map +1 -1
  113. package/dist/components/Contractor/Address/Address.js +4 -5
  114. package/dist/components/Contractor/Address/Address.js.map +1 -1
  115. package/dist/components/Contractor/Address/Form.js +3 -4
  116. package/dist/components/Contractor/Address/Form.js.map +1 -1
  117. package/dist/components/Contractor/ContractorList/index.js +17 -17
  118. package/dist/components/Contractor/OnboardingFlow/OnboardingFlow.js +25 -21
  119. package/dist/components/Contractor/OnboardingFlow/OnboardingFlow.js.map +1 -1
  120. package/dist/components/Contractor/PaymentMethod/BankAccountForm.js +6 -5
  121. package/dist/components/Contractor/PaymentMethod/BankAccountForm.js.map +1 -1
  122. package/dist/components/Contractor/Profile/ContractorProfileForm.js +13 -13
  123. package/dist/components/Contractor/Submit/Submit.js +1 -1
  124. package/dist/components/Employee/Compensation/Actions.js +1 -1
  125. package/dist/components/Employee/Compensation/Edit.js +12 -12
  126. package/dist/components/Employee/Compensation/List.js +23 -22
  127. package/dist/components/Employee/Compensation/List.js.map +1 -1
  128. package/dist/components/Employee/Deductions/DeductionsComponents.js +1 -1
  129. package/dist/components/Employee/Deductions/DeductionsComponents.js.map +1 -1
  130. package/dist/components/Employee/Deductions/DeductionsForm/ChildSupportForm.d.ts +55 -0
  131. package/dist/components/Employee/Deductions/DeductionsForm/ChildSupportForm.js +221 -0
  132. package/dist/components/Employee/Deductions/DeductionsForm/ChildSupportForm.js.map +1 -0
  133. package/dist/components/Employee/Deductions/DeductionsForm/ChildSupportForm.module.scss.js +8 -0
  134. package/dist/components/Employee/Deductions/DeductionsForm/ChildSupportForm.module.scss.js.map +1 -0
  135. package/dist/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.d.ts +42 -0
  136. package/dist/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.js +132 -0
  137. package/dist/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.js.map +1 -0
  138. package/dist/components/Employee/Deductions/DeductionsForm/DeductionsForm.js +8 -8
  139. package/dist/components/Employee/Deductions/DeductionsForm/DeductionsForm.module.scss.js +14 -0
  140. package/dist/components/Employee/Deductions/DeductionsForm/DeductionsForm.module.scss.js.map +1 -0
  141. package/dist/components/Employee/Deductions/DeductionsForm/UNSTABLE_DeductionsForm.d.ts +7 -0
  142. package/dist/components/Employee/Deductions/DeductionsForm/UNSTABLE_DeductionsForm.js +98 -0
  143. package/dist/components/Employee/Deductions/DeductionsForm/UNSTABLE_DeductionsForm.js.map +1 -0
  144. package/dist/components/Employee/Deductions/DeductionsList/DeductionsList.js +1 -1
  145. package/dist/components/Employee/Deductions/IncludeDeductionsForm/IncludeDeductionsForm.js +8 -8
  146. package/dist/components/Employee/DocumentSigner/DocumentList/Actions.js +7 -6
  147. package/dist/components/Employee/DocumentSigner/DocumentList/Actions.js.map +1 -1
  148. package/dist/components/Employee/DocumentSigner/DocumentList/DocumentList.js +7 -8
  149. package/dist/components/Employee/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
  150. package/dist/components/Employee/DocumentSigner/DocumentList/List.js +3 -2
  151. package/dist/components/Employee/DocumentSigner/DocumentList/List.js.map +1 -1
  152. package/dist/components/Employee/DocumentSigner/DocumentSigner.js +19 -15
  153. package/dist/components/Employee/DocumentSigner/DocumentSigner.js.map +1 -1
  154. package/dist/components/Employee/DocumentSigner/SignatureForm/SignatureForm.js +9 -10
  155. package/dist/components/Employee/DocumentSigner/SignatureForm/SignatureForm.js.map +1 -1
  156. package/dist/components/Employee/EmployeeList/Actions.js +3 -2
  157. package/dist/components/Employee/EmployeeList/Actions.js.map +1 -1
  158. package/dist/components/Employee/EmployeeList/EmployeeList.js +4 -3
  159. package/dist/components/Employee/EmployeeList/EmployeeList.js.map +1 -1
  160. package/dist/components/Employee/EmployeeList/Head.js +6 -5
  161. package/dist/components/Employee/EmployeeList/Head.js.map +1 -1
  162. package/dist/components/Employee/EmployeeList/List.js +12 -12
  163. package/dist/components/Employee/FederalTaxes/Actions.js +7 -6
  164. package/dist/components/Employee/FederalTaxes/Actions.js.map +1 -1
  165. package/dist/components/Employee/FederalTaxes/FederalForm.js +12 -11
  166. package/dist/components/Employee/FederalTaxes/FederalForm.js.map +1 -1
  167. package/dist/components/Employee/Landing/Landing.js +8 -8
  168. package/dist/components/Employee/OnboardingFlow/OnboardingFlow.js +24 -20
  169. package/dist/components/Employee/OnboardingFlow/OnboardingFlow.js.map +1 -1
  170. package/dist/components/Employee/OnboardingSummary/OnboardingSummary.js +7 -7
  171. package/dist/components/Employee/PaymentMethod/Actions.js +6 -5
  172. package/dist/components/Employee/PaymentMethod/Actions.js.map +1 -1
  173. package/dist/components/Employee/PaymentMethod/BankAccountEdit.js +1 -1
  174. package/dist/components/Employee/PaymentMethod/BankAccountsList.js +9 -8
  175. package/dist/components/Employee/PaymentMethod/BankAccountsList.js.map +1 -1
  176. package/dist/components/Employee/PaymentMethod/Split.js +8 -8
  177. package/dist/components/Employee/Profile/Actions.js +7 -6
  178. package/dist/components/Employee/Profile/Actions.js.map +1 -1
  179. package/dist/components/Employee/Profile/HomeAddress.js +5 -6
  180. package/dist/components/Employee/Profile/HomeAddress.js.map +1 -1
  181. package/dist/components/Employee/Profile/PersonalDetailsInputs.js +21 -22
  182. package/dist/components/Employee/Profile/PersonalDetailsInputs.js.map +1 -1
  183. package/dist/components/Employee/Profile/Profile.d.ts +1 -0
  184. package/dist/components/Employee/Profile/Profile.js +22 -22
  185. package/dist/components/Employee/Profile/Profile.js.map +1 -1
  186. package/dist/components/Employee/SelfOnboardingFlow/SelfOnboardingFlow.js +17 -13
  187. package/dist/components/Employee/SelfOnboardingFlow/SelfOnboardingFlow.js.map +1 -1
  188. package/dist/components/Employee/StateTaxes/Actions.js +8 -7
  189. package/dist/components/Employee/StateTaxes/Actions.js.map +1 -1
  190. package/dist/components/Employee/Taxes/Actions.js +9 -8
  191. package/dist/components/Employee/Taxes/Actions.js.map +1 -1
  192. package/dist/components/Employee/Taxes/FederalForm.js +13 -12
  193. package/dist/components/Employee/Taxes/FederalForm.js.map +1 -1
  194. package/dist/components/Payroll/PayrollBlocker/PayrollBlockerAlerts.d.ts +7 -0
  195. package/dist/components/Payroll/PayrollBlocker/PayrollBlockerList.d.ts +6 -0
  196. package/dist/components/Payroll/PayrollBlocker/PayrollBlockerTypes.d.ts +101 -0
  197. package/dist/components/Payroll/PayrollBlocker/index.d.ts +4 -0
  198. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js +64 -56
  199. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js.map +1 -1
  200. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js +2 -3
  201. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js.map +1 -1
  202. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js +65 -66
  203. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js.map +1 -1
  204. package/dist/components/Payroll/PayrollEditEmployee/TimeOffField.js +9 -8
  205. package/dist/components/Payroll/PayrollEditEmployee/TimeOffField.js.map +1 -1
  206. package/dist/components/Payroll/PayrollFlow/PayrollFlow.d.ts +2 -0
  207. package/dist/components/Payroll/PayrollFlow/PayrollFlow.js +26 -0
  208. package/dist/components/Payroll/PayrollFlow/PayrollFlow.js.map +1 -0
  209. package/dist/components/Payroll/PayrollFlow/PayrollFlowComponents.d.ts +25 -0
  210. package/dist/components/Payroll/PayrollFlow/PayrollFlowComponents.js +59 -0
  211. package/dist/components/Payroll/PayrollFlow/PayrollFlowComponents.js.map +1 -0
  212. package/dist/components/Payroll/PayrollFlow/index.d.ts +3 -0
  213. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.d.ts +7 -0
  214. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js +116 -0
  215. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js.map +1 -0
  216. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js +3 -2
  217. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js.map +1 -1
  218. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js +7 -6
  219. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js.map +1 -1
  220. package/dist/components/Payroll/PayrollOverview/PayrollOverview.d.ts +3 -1
  221. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js +60 -52
  222. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js.map +1 -1
  223. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.d.ts +3 -1
  224. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js +97 -96
  225. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js.map +1 -1
  226. package/dist/components/Payroll/PayrollReceipts/PayrollReceipts.d.ts +7 -0
  227. package/dist/components/Payroll/PayrollReceipts/PayrollReceipts.js +21 -0
  228. package/dist/components/Payroll/PayrollReceipts/PayrollReceipts.js.map +1 -0
  229. package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.js +220 -0
  230. package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.js.map +1 -0
  231. package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.module.scss.js +28 -0
  232. package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.module.scss.js.map +1 -0
  233. package/dist/components/Payroll/RunPayrollFlow/RunPayroll.js +46 -37
  234. package/dist/components/Payroll/RunPayrollFlow/RunPayroll.js.map +1 -1
  235. package/dist/components/Payroll/index.d.ts +2 -0
  236. package/dist/components/Payroll/index.js +12 -8
  237. package/dist/components/Payroll/index.js.map +1 -1
  238. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js +3 -2
  239. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js.map +1 -1
  240. package/dist/contexts/ThemeProvider/theme.d.ts +1 -0
  241. package/dist/contexts/ThemeProvider/theme.js +2 -1
  242. package/dist/contexts/ThemeProvider/theme.js.map +1 -1
  243. package/dist/i18n/I18n.js +1 -1
  244. package/dist/i18n/I18n.js.map +1 -1
  245. package/dist/i18n/en/Employee.Deductions.json.js +126 -66
  246. package/dist/i18n/en/Employee.Deductions.json.js.map +1 -1
  247. package/dist/i18n/en/Payroll.PayrollConfiguration.json.js +15 -15
  248. package/dist/i18n/en/Payroll.PayrollOverview.json.js +8 -8
  249. package/dist/i18n/en/PayrollBlocker.json.js +18 -0
  250. package/dist/i18n/en/PayrollBlocker.json.js.map +1 -0
  251. package/dist/shared/constants.d.ts +12 -4
  252. package/dist/shared/constants.js +37 -33
  253. package/dist/shared/constants.js.map +1 -1
  254. package/dist/style.css +1 -1
  255. package/dist/types/i18next.d.ts +40 -2
  256. package/package.json +8 -8
@@ -1,12 +1,13 @@
1
1
  import { jsxs as l, Fragment as a, jsx as r } from "react/jsx-runtime";
2
- import { useTranslation as s, Trans as u } from "react-i18next";
2
+ import { useTranslation as s, Trans as m } from "react-i18next";
3
3
  import { z as t } from "zod";
4
4
  import "classnames";
5
- import { useComponentContext as m } from "../../../contexts/ComponentAdapter/useComponentContext.js";
6
- import { SelectField as d } from "../../Common/Fields/SelectField/SelectField.js";
7
- import { RadioGroupField as f } from "../../Common/Fields/RadioGroupField/RadioGroupField.js";
5
+ import "../../../shared/constants.js";
6
+ import { RadioGroupField as u } from "../../Common/Fields/RadioGroupField/RadioGroupField.js";
8
7
  import { NumberInputField as i } from "../../Common/Fields/NumberInputField/NumberInputField.js";
9
- const R = t.object({
8
+ import { useComponentContext as d } from "../../../contexts/ComponentAdapter/useComponentContext.js";
9
+ import { SelectField as f } from "../../Common/Fields/SelectField/SelectField.js";
10
+ const q = t.object({
10
11
  filingStatus: t.string().min(1),
11
12
  twoJobs: t.string().min(1),
12
13
  dependentsAmount: t.number().transform(String),
@@ -15,8 +16,8 @@ const R = t.object({
15
16
  extraWithholding: t.number().transform(String),
16
17
  w4DataType: t.enum(["pre_2020_w4", "rev_2020_w4"])
17
18
  });
18
- function q() {
19
- const { t: e } = s("Employee.Taxes"), o = m(), n = [
19
+ function v() {
20
+ const { t: e } = s("Employee.Taxes"), o = d(), n = [
20
21
  { value: "Single", label: e("filingStatusSingle") },
21
22
  { value: "Married", label: e("filingStatusMarried") },
22
23
  { value: "Head of Household", label: e("filingStatusHeadOfHousehold") },
@@ -24,7 +25,7 @@ function q() {
24
25
  ];
25
26
  return /* @__PURE__ */ l(a, { children: [
26
27
  /* @__PURE__ */ r(
27
- d,
28
+ f,
28
29
  {
29
30
  name: "filingStatus",
30
31
  label: e("federalFilingStatus1c"),
@@ -35,14 +36,14 @@ function q() {
35
36
  }
36
37
  ),
37
38
  /* @__PURE__ */ r(
38
- f,
39
+ u,
39
40
  {
40
41
  name: "twoJobs",
41
42
  isRequired: !0,
42
43
  label: e("multipleJobs2c"),
43
44
  errorMessage: e("validations.federalTwoJobs"),
44
45
  description: /* @__PURE__ */ r(o.Text, { children: /* @__PURE__ */ r(
45
- u,
46
+ m,
46
47
  {
47
48
  i18nKey: "includesSpouseExplanation",
48
49
  t: e,
@@ -102,7 +103,7 @@ function q() {
102
103
  ] });
103
104
  }
104
105
  export {
105
- q as FederalForm,
106
- R as FederalFormSchema
106
+ v as FederalForm,
107
+ q as FederalFormSchema
107
108
  };
108
109
  //# sourceMappingURL=FederalForm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FederalForm.js","sources":["../../../../src/components/Employee/Taxes/FederalForm.tsx"],"sourcesContent":["import { Trans, useTranslation } from 'react-i18next'\nimport { z } from 'zod'\nimport { NumberInputField, RadioGroupField, SelectField } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\nexport const FederalFormSchema = z.object({\n filingStatus: z.string().min(1),\n twoJobs: z.string().min(1),\n dependentsAmount: z.number().transform(String),\n otherIncome: z.number().transform(String),\n deductions: z.number().transform(String),\n extraWithholding: z.number().transform(String),\n w4DataType: z.enum(['pre_2020_w4', 'rev_2020_w4']),\n})\n\nexport type FederalFormInputs = z.input<typeof FederalFormSchema>\nexport type FederalFormPayload = z.output<typeof FederalFormSchema>\n\nexport function FederalForm() {\n const { t } = useTranslation('Employee.Taxes')\n const Components = useComponentContext()\n\n const filingStatusCategories = [\n { value: 'Single', label: t('filingStatusSingle') },\n { value: 'Married', label: t('filingStatusMarried') },\n { value: 'Head of Household', label: t('filingStatusHeadOfHousehold') },\n { value: 'Exempt from withholding', label: t('filingStatusExemptFromWithholding') },\n ]\n\n return (\n <>\n <SelectField\n name=\"filingStatus\"\n label={t('federalFilingStatus1c')}\n placeholder={t('federalFillingStatusPlaceholder')}\n options={filingStatusCategories}\n isRequired\n errorMessage={t('validations.federalFilingStatus')}\n />\n <RadioGroupField\n name=\"twoJobs\"\n isRequired\n label={t('multipleJobs2c')}\n errorMessage={t('validations.federalTwoJobs')}\n description={\n <Components.Text>\n <Trans\n i18nKey={'includesSpouseExplanation'}\n t={t}\n components={{\n irs_link: <Components.Link />,\n }}\n />\n </Components.Text>\n }\n options={[\n { value: 'true', label: t('twoJobYesLabel') },\n { value: 'false', label: t('twoJobNoLabel') },\n ]}\n />\n <NumberInputField\n name=\"dependentsAmount\"\n isRequired\n label={t('dependentsTotalIfApplicable')}\n errorMessage={t('fieldIsRequired')}\n />\n <NumberInputField\n name=\"otherIncome\"\n isRequired\n label={t('otherIncome')}\n format=\"currency\"\n min={0}\n errorMessage={t('fieldIsRequired')}\n />\n <NumberInputField\n name=\"deductions\"\n isRequired\n label={t('deductions')}\n format=\"currency\"\n min={0}\n errorMessage={t('fieldIsRequired')}\n />\n <NumberInputField\n name=\"extraWithholding\"\n isRequired\n label={t('extraWithholding')}\n format=\"currency\"\n min={0}\n errorMessage={t('fieldIsRequired')}\n />\n </>\n )\n}\n"],"names":["FederalFormSchema","z","FederalForm","t","useTranslation","Components","useComponentContext","filingStatusCategories","jsxs","Fragment","jsx","SelectField","RadioGroupField","Trans","NumberInputField"],"mappings":";;;;;;;;AAKO,MAAMA,IAAoBC,EAAE,OAAO;AAAA,EACxC,cAAcA,EAAE,SAAS,IAAI,CAAC;AAAA,EAC9B,SAASA,EAAE,SAAS,IAAI,CAAC;AAAA,EACzB,kBAAkBA,EAAE,SAAS,UAAU,MAAM;AAAA,EAC7C,aAAaA,EAAE,SAAS,UAAU,MAAM;AAAA,EACxC,YAAYA,EAAE,SAAS,UAAU,MAAM;AAAA,EACvC,kBAAkBA,EAAE,SAAS,UAAU,MAAM;AAAA,EAC7C,YAAYA,EAAE,KAAK,CAAC,eAAe,aAAa,CAAC;AACnD,CAAC;AAKM,SAASC,IAAc;AAC5B,QAAM,EAAE,GAAAC,EAAA,IAAMC,EAAe,gBAAgB,GACvCC,IAAaC,EAAA,GAEbC,IAAyB;AAAA,IAC7B,EAAE,OAAO,UAAU,OAAOJ,EAAE,oBAAoB,EAAA;AAAA,IAChD,EAAE,OAAO,WAAW,OAAOA,EAAE,qBAAqB,EAAA;AAAA,IAClD,EAAE,OAAO,qBAAqB,OAAOA,EAAE,6BAA6B,EAAA;AAAA,IACpE,EAAE,OAAO,2BAA2B,OAAOA,EAAE,mCAAmC,EAAA;AAAA,EAAE;AAGpF,SACE,gBAAAK,EAAAC,GAAA,EACE,UAAA;AAAA,IAAA,gBAAAC;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,OAAOR,EAAE,uBAAuB;AAAA,QAChC,aAAaA,EAAE,iCAAiC;AAAA,QAChD,SAASI;AAAA,QACT,YAAU;AAAA,QACV,cAAcJ,EAAE,iCAAiC;AAAA,MAAA;AAAA,IAAA;AAAA,IAEnD,gBAAAO;AAAA,MAACE;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,YAAU;AAAA,QACV,OAAOT,EAAE,gBAAgB;AAAA,QACzB,cAAcA,EAAE,4BAA4B;AAAA,QAC5C,aACE,gBAAAO,EAACL,EAAW,MAAX,EACC,UAAA,gBAAAK;AAAA,UAACG;AAAA,UAAA;AAAA,YACC,SAAS;AAAA,YACT,GAAAV;AAAA,YACA,YAAY;AAAA,cACV,UAAU,gBAAAO,EAACL,EAAW,MAAX,CAAA,CAAgB;AAAA,YAAA;AAAA,UAC7B;AAAA,QAAA,GAEJ;AAAA,QAEF,SAAS;AAAA,UACP,EAAE,OAAO,QAAQ,OAAOF,EAAE,gBAAgB,EAAA;AAAA,UAC1C,EAAE,OAAO,SAAS,OAAOA,EAAE,eAAe,EAAA;AAAA,QAAE;AAAA,MAC9C;AAAA,IAAA;AAAA,IAEF,gBAAAO;AAAA,MAACI;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,YAAU;AAAA,QACV,OAAOX,EAAE,6BAA6B;AAAA,QACtC,cAAcA,EAAE,iBAAiB;AAAA,MAAA;AAAA,IAAA;AAAA,IAEnC,gBAAAO;AAAA,MAACI;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,YAAU;AAAA,QACV,OAAOX,EAAE,aAAa;AAAA,QACtB,QAAO;AAAA,QACP,KAAK;AAAA,QACL,cAAcA,EAAE,iBAAiB;AAAA,MAAA;AAAA,IAAA;AAAA,IAEnC,gBAAAO;AAAA,MAACI;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,YAAU;AAAA,QACV,OAAOX,EAAE,YAAY;AAAA,QACrB,QAAO;AAAA,QACP,KAAK;AAAA,QACL,cAAcA,EAAE,iBAAiB;AAAA,MAAA;AAAA,IAAA;AAAA,IAEnC,gBAAAO;AAAA,MAACI;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,YAAU;AAAA,QACV,OAAOX,EAAE,kBAAkB;AAAA,QAC3B,QAAO;AAAA,QACP,KAAK;AAAA,QACL,cAAcA,EAAE,iBAAiB;AAAA,MAAA;AAAA,IAAA;AAAA,EACnC,GACF;AAEJ;"}
1
+ {"version":3,"file":"FederalForm.js","sources":["../../../../src/components/Employee/Taxes/FederalForm.tsx"],"sourcesContent":["import { Trans, useTranslation } from 'react-i18next'\nimport { z } from 'zod'\nimport { NumberInputField, RadioGroupField, SelectField } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\nexport const FederalFormSchema = z.object({\n filingStatus: z.string().min(1),\n twoJobs: z.string().min(1),\n dependentsAmount: z.number().transform(String),\n otherIncome: z.number().transform(String),\n deductions: z.number().transform(String),\n extraWithholding: z.number().transform(String),\n w4DataType: z.enum(['pre_2020_w4', 'rev_2020_w4']),\n})\n\nexport type FederalFormInputs = z.input<typeof FederalFormSchema>\nexport type FederalFormPayload = z.output<typeof FederalFormSchema>\n\nexport function FederalForm() {\n const { t } = useTranslation('Employee.Taxes')\n const Components = useComponentContext()\n\n const filingStatusCategories = [\n { value: 'Single', label: t('filingStatusSingle') },\n { value: 'Married', label: t('filingStatusMarried') },\n { value: 'Head of Household', label: t('filingStatusHeadOfHousehold') },\n { value: 'Exempt from withholding', label: t('filingStatusExemptFromWithholding') },\n ]\n\n return (\n <>\n <SelectField\n name=\"filingStatus\"\n label={t('federalFilingStatus1c')}\n placeholder={t('federalFillingStatusPlaceholder')}\n options={filingStatusCategories}\n isRequired\n errorMessage={t('validations.federalFilingStatus')}\n />\n <RadioGroupField\n name=\"twoJobs\"\n isRequired\n label={t('multipleJobs2c')}\n errorMessage={t('validations.federalTwoJobs')}\n description={\n <Components.Text>\n <Trans\n i18nKey={'includesSpouseExplanation'}\n t={t}\n components={{\n irs_link: <Components.Link />,\n }}\n />\n </Components.Text>\n }\n options={[\n { value: 'true', label: t('twoJobYesLabel') },\n { value: 'false', label: t('twoJobNoLabel') },\n ]}\n />\n <NumberInputField\n name=\"dependentsAmount\"\n isRequired\n label={t('dependentsTotalIfApplicable')}\n errorMessage={t('fieldIsRequired')}\n />\n <NumberInputField\n name=\"otherIncome\"\n isRequired\n label={t('otherIncome')}\n format=\"currency\"\n min={0}\n errorMessage={t('fieldIsRequired')}\n />\n <NumberInputField\n name=\"deductions\"\n isRequired\n label={t('deductions')}\n format=\"currency\"\n min={0}\n errorMessage={t('fieldIsRequired')}\n />\n <NumberInputField\n name=\"extraWithholding\"\n isRequired\n label={t('extraWithholding')}\n format=\"currency\"\n min={0}\n errorMessage={t('fieldIsRequired')}\n />\n </>\n )\n}\n"],"names":["FederalFormSchema","z","FederalForm","t","useTranslation","Components","useComponentContext","filingStatusCategories","jsxs","Fragment","jsx","SelectField","RadioGroupField","Trans","NumberInputField"],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { PayrollBlockerProps } from './PayrollBlockerTypes';
2
+ /**
3
+ * PayrollBlockerAlerts - Alert-style component for inline blocker display
4
+ * Shows single blocker as alert, or multiple blockers as summary with "Review" button
5
+ * Note: Parent components should handle empty blocker arrays - this component assumes blockers exist
6
+ */
7
+ export declare function PayrollBlockerAlerts({ blockers, onMultipleViewClick, multipleViewLabel, className, }: PayrollBlockerProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,6 @@
1
+ import { PayrollBlockerListProps } from './PayrollBlockerTypes';
2
+ /**
3
+ * PayrollBlockerList - DataView-based component displaying payroll blockers
4
+ * Shows each blocker with individual resolution buttons
5
+ */
6
+ export declare function PayrollBlockerList({ blockers, className }: PayrollBlockerListProps): import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,101 @@
1
+ /**
2
+ * Status of a payroll blocker
3
+ */
4
+ export type PayrollBlockerStatus = 'unresolved' | 'in_progress' | 'resolved' | 'skipped';
5
+ /**
6
+ * Individual step in the resolution process
7
+ */
8
+ export interface PayrollBlockerResolutionStep {
9
+ id: string;
10
+ title: string;
11
+ description: string;
12
+ /**
13
+ * Optional action button for this step
14
+ */
15
+ action?: {
16
+ label: string;
17
+ variant?: 'primary' | 'secondary' | 'tertiary';
18
+ onClick: () => void;
19
+ };
20
+ /**
21
+ * External link if resolution requires navigation
22
+ */
23
+ externalLink?: {
24
+ url: string;
25
+ label: string;
26
+ opensInNewTab?: boolean;
27
+ };
28
+ /**
29
+ * Whether this step has been completed
30
+ */
31
+ completed?: boolean;
32
+ /**
33
+ * Whether this step is currently active/in progress
34
+ */
35
+ active?: boolean;
36
+ }
37
+ /**
38
+ * Complete information about a payroll blocker including resolution steps
39
+ */
40
+ export interface PayrollBlocker {
41
+ id: string;
42
+ title: string;
43
+ description: string;
44
+ /**
45
+ * Additional context or help text
46
+ */
47
+ helpText?: string;
48
+ /**
49
+ * Current resolution status (defaults to 'unresolved' for backward compatibility)
50
+ */
51
+ status?: PayrollBlockerStatus;
52
+ /**
53
+ * Estimated time to resolve (for user planning)
54
+ */
55
+ estimatedResolutionTime?: string;
56
+ /**
57
+ * Category for grouping blockers
58
+ */
59
+ category?: string;
60
+ /**
61
+ * Sequential steps to resolve this blocker (defaults to empty array for backward compatibility)
62
+ */
63
+ resolutionSteps?: PayrollBlockerResolutionStep[];
64
+ /**
65
+ * Quick action for simple one-click resolutions (used in alert view)
66
+ */
67
+ quickAction?: {
68
+ label: string;
69
+ onClick: () => void;
70
+ };
71
+ /**
72
+ * Legacy action format for backward compatibility
73
+ */
74
+ action?: {
75
+ label: string;
76
+ onClick: () => void;
77
+ };
78
+ /**
79
+ * Contact information if user needs help
80
+ */
81
+ supportContact?: {
82
+ label: string;
83
+ url: string;
84
+ type: 'email' | 'phone' | 'chat' | 'help_center';
85
+ };
86
+ }
87
+ export interface PayrollBlockerProps {
88
+ blockers: PayrollBlocker[];
89
+ /**
90
+ * Handler for viewing all blockers when multiple exist.
91
+ * Should be provided when there are multiple blockers to give users a way to address them.
92
+ */
93
+ onMultipleViewClick?: () => void;
94
+ multipleViewLabel?: string;
95
+ className?: string;
96
+ }
97
+ export interface PayrollBlockerListProps {
98
+ blockers: PayrollBlocker[];
99
+ onBack?: () => void;
100
+ className?: string;
101
+ }
@@ -0,0 +1,4 @@
1
+ import "./types/i18next.d.ts"
2
+ export { PayrollBlockerAlerts } from './PayrollBlockerAlerts';
3
+ export { PayrollBlockerList } from './PayrollBlockerList';
4
+ export type { PayrollBlocker, PayrollBlockerProps, PayrollBlockerListProps, PayrollBlockerStatus, PayrollBlockerResolutionStep, } from './PayrollBlockerTypes';
@@ -1,72 +1,80 @@
1
- import { jsx as t } from "react/jsx-runtime";
2
- import { useEffect as D } from "react";
3
- import { useEmployeesListSuspense as h } from "@gusto/embedded-api/react-query/employeesList";
4
- import { usePayrollsGetSuspense as E } from "@gusto/embedded-api/react-query/payrollsGet";
1
+ import { jsx as a } from "react/jsx-runtime";
2
+ import { useEffect as h } from "react";
3
+ import { useEmployeesListSuspense as D } from "@gusto/embedded-api/react-query/employeesList";
4
+ import { usePayrollsGetSuspense as S } from "@gusto/embedded-api/react-query/payrollsGet";
5
5
  import { usePayrollsCalculateMutation as A } from "@gusto/embedded-api/react-query/payrollsCalculate";
6
- import { PayrollProcessingRequestStatus as n } from "@gusto/embedded-api/models/components/payrollprocessingrequest";
7
- import { usePreparedPayrollData as S } from "../usePreparedPayrollData.js";
8
- import { PayrollConfigurationPresentation as _ } from "./PayrollConfigurationPresentation.js";
9
- import { BaseComponent as O } from "../../Base/Base.js";
10
- import { useBase as q } from "../../Base/useBase.js";
11
- import { componentEvents as s } from "../../../shared/constants.js";
12
- import { useComponentDictionary as w, useI18n as B } from "../../../i18n/I18n.js";
13
- function H(o) {
14
- return /* @__PURE__ */ t(O, { ...o, children: /* @__PURE__ */ t(U, { ...o, children: o.children }) });
6
+ import { PayrollProcessingRequestStatus as c } from "@gusto/embedded-api/models/components/payrollprocessingrequest";
7
+ import { useTranslation as E } from "react-i18next";
8
+ import { usePreparedPayrollData as _ } from "../usePreparedPayrollData.js";
9
+ import { PayrollConfigurationPresentation as O } from "./PayrollConfigurationPresentation.js";
10
+ import { BaseComponent as q } from "../../Base/Base.js";
11
+ import { useBase as w } from "../../Base/useBase.js";
12
+ import { componentEvents as i } from "../../../shared/constants.js";
13
+ import { useComponentDictionary as B, useI18n as U } from "../../../i18n/I18n.js";
14
+ const u = (o) => o?.payrollShow?.processingRequest?.status === c.Calculating, Y = (o) => o?.payrollShow?.processingRequest?.status === c.CalculateSuccess;
15
+ function Q(o) {
16
+ return /* @__PURE__ */ a(q, { ...o, children: /* @__PURE__ */ a(x, { ...o, children: o.children }) });
15
17
  }
16
- const U = ({
18
+ const x = ({
17
19
  onEvent: o,
18
- companyId: e,
19
- payrollId: a,
20
- dictionary: u,
21
- alerts: c
20
+ companyId: t,
21
+ payrollId: e,
22
+ dictionary: m,
23
+ alerts: p
22
24
  }) => {
23
- w("Payroll.PayrollConfiguration", u), B("Payroll.PayrollConfiguration");
24
- const { LoadingIndicator: m } = q(), { data: l } = E(
25
+ B("Payroll.PayrollConfiguration", m), U("Payroll.PayrollConfiguration");
26
+ const { t: n } = E("Payroll.PayrollConfiguration"), { LoadingIndicator: f } = w(), { data: r } = S(
25
27
  {
26
- companyId: e,
27
- payrollId: a
28
+ companyId: t,
29
+ payrollId: e,
30
+ include: ["taxes", "benefits", "deductions"]
28
31
  },
29
- { refetchInterval: 5e3 }
30
- ), { data: p } = h({
31
- companyId: e
32
- }), { mutateAsync: y } = A(), {
33
- preparedPayroll: r,
34
- paySchedule: f,
35
- isLoading: P
36
- } = S({
37
- companyId: e,
38
- payrollId: a
39
- }), C = () => {
40
- o(s.RUN_PAYROLL_BACK);
41
- }, d = async () => {
42
- await y({
32
+ {
33
+ refetchInterval: (l) => u(l.state.data) ? 5e3 : !1
34
+ }
35
+ ), { data: y } = D({
36
+ companyId: t
37
+ }), { mutateAsync: P } = A(), {
38
+ preparedPayroll: s,
39
+ paySchedule: C,
40
+ isLoading: d
41
+ } = _({
42
+ companyId: t,
43
+ payrollId: e
44
+ }), g = () => {
45
+ o(i.RUN_PAYROLL_BACK);
46
+ }, L = async () => {
47
+ await P({
43
48
  request: {
44
- companyId: e,
45
- payrollId: a
49
+ companyId: t,
50
+ payrollId: e
46
51
  }
47
52
  });
48
- }, L = (R) => {
49
- o(s.RUN_PAYROLL_EMPLOYEE_EDITED, { employeeId: R.uuid });
50
- }, g = l.payrollShow?.processingRequest?.status === n.Calculating, i = l.payrollShow?.processingRequest?.status === n.CalculateSuccess;
51
- return D(() => {
52
- i && o(s.RUN_PAYROLL_CALCULATED);
53
- }, [i, o]), P || g ? /* @__PURE__ */ t(m, {}) : /* @__PURE__ */ t(
54
- _,
53
+ }, R = (l) => {
54
+ o(i.RUN_PAYROLL_EMPLOYEE_EDIT, { employeeId: l.uuid });
55
+ };
56
+ return h(() => {
57
+ Y(r) && o(i.RUN_PAYROLL_CALCULATED, {
58
+ payrollId: e,
59
+ alert: { type: "success", title: n("alerts.progressSaved") }
60
+ });
61
+ }, [r, o, e, n]), d || u(r) ? /* @__PURE__ */ a(f, {}) : /* @__PURE__ */ a(
62
+ O,
55
63
  {
56
- onBack: C,
57
- onCalculatePayroll: d,
58
- onEdit: L,
59
- employeeCompensations: r?.employeeCompensations || [],
60
- employeeDetails: p.showEmployees || [],
61
- payPeriod: r?.payPeriod,
62
- paySchedule: f,
63
- isOffCycle: r?.offCycle,
64
- alerts: c
64
+ onBack: g,
65
+ onCalculatePayroll: L,
66
+ onEdit: R,
67
+ employeeCompensations: s?.employeeCompensations || [],
68
+ employeeDetails: y.showEmployees || [],
69
+ payPeriod: s?.payPeriod,
70
+ paySchedule: C,
71
+ isOffCycle: s?.offCycle,
72
+ alerts: p
65
73
  }
66
74
  );
67
75
  };
68
76
  export {
69
- H as PayrollConfiguration,
70
- U as Root
77
+ Q as PayrollConfiguration,
78
+ x as Root
71
79
  };
72
80
  //# sourceMappingURL=PayrollConfiguration.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PayrollConfiguration.js","sources":["../../../../src/components/Payroll/PayrollConfiguration/PayrollConfiguration.tsx"],"sourcesContent":["import { useEffect, type ReactNode } from 'react'\nimport { useEmployeesListSuspense } from '@gusto/embedded-api/react-query/employeesList'\nimport { usePayrollsGetSuspense } from '@gusto/embedded-api/react-query/payrollsGet'\nimport { usePayrollsCalculateMutation } from '@gusto/embedded-api/react-query/payrollsCalculate'\nimport type { Employee } from '@gusto/embedded-api/models/components/employee'\nimport { PayrollProcessingRequestStatus } from '@gusto/embedded-api/models/components/payrollprocessingrequest'\nimport { usePreparedPayrollData } from '../usePreparedPayrollData'\nimport { PayrollConfigurationPresentation } from './PayrollConfigurationPresentation'\nimport type { BaseComponentInterface } from '@/components/Base/Base'\nimport { BaseComponent } from '@/components/Base/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { componentEvents } from '@/shared/constants'\nimport { useComponentDictionary, useI18n } from '@/i18n'\n\ninterface PayrollConfigurationProps extends BaseComponentInterface<'Payroll.PayrollConfiguration'> {\n companyId: string\n payrollId: string\n alerts?: ReactNode\n}\n\nexport function PayrollConfiguration(props: PayrollConfigurationProps & BaseComponentInterface) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nexport const Root = ({\n onEvent,\n companyId,\n payrollId,\n dictionary,\n alerts,\n}: PayrollConfigurationProps) => {\n useComponentDictionary('Payroll.PayrollConfiguration', dictionary)\n useI18n('Payroll.PayrollConfiguration')\n\n const { LoadingIndicator } = useBase()\n\n const { data: payrollData } = usePayrollsGetSuspense(\n {\n companyId,\n payrollId,\n },\n { refetchInterval: 5_000 },\n )\n\n const { data: employeeData } = useEmployeesListSuspense({\n companyId,\n })\n\n const { mutateAsync: calculatePayroll } = usePayrollsCalculateMutation()\n\n const {\n preparedPayroll,\n paySchedule,\n isLoading: isPreparedPayrollDataLoading,\n } = usePreparedPayrollData({\n companyId,\n payrollId,\n })\n\n const onBack = () => {\n onEvent(componentEvents.RUN_PAYROLL_BACK)\n }\n const onCalculatePayroll = async () => {\n await calculatePayroll({\n request: {\n companyId,\n payrollId,\n },\n })\n }\n const onEdit = (employee: Employee) => {\n onEvent(componentEvents.RUN_PAYROLL_EMPLOYEE_EDITED, { employeeId: employee.uuid })\n }\n\n const isCalculating =\n payrollData.payrollShow?.processingRequest?.status ===\n PayrollProcessingRequestStatus.Calculating\n const isCalculated =\n payrollData.payrollShow?.processingRequest?.status ===\n PayrollProcessingRequestStatus.CalculateSuccess\n\n useEffect(() => {\n if (isCalculated) {\n onEvent(componentEvents.RUN_PAYROLL_CALCULATED)\n }\n }, [isCalculated, onEvent])\n\n if (isPreparedPayrollDataLoading || isCalculating) {\n return <LoadingIndicator />\n }\n\n return (\n <PayrollConfigurationPresentation\n onBack={onBack}\n onCalculatePayroll={onCalculatePayroll}\n onEdit={onEdit}\n employeeCompensations={preparedPayroll?.employeeCompensations || []}\n employeeDetails={employeeData.showEmployees || []}\n payPeriod={preparedPayroll?.payPeriod}\n paySchedule={paySchedule}\n isOffCycle={preparedPayroll?.offCycle}\n alerts={alerts}\n />\n )\n}\n"],"names":["PayrollConfiguration","props","jsx","BaseComponent","Root","onEvent","companyId","payrollId","dictionary","alerts","useComponentDictionary","useI18n","LoadingIndicator","useBase","payrollData","usePayrollsGetSuspense","employeeData","useEmployeesListSuspense","calculatePayroll","usePayrollsCalculateMutation","preparedPayroll","paySchedule","isPreparedPayrollDataLoading","usePreparedPayrollData","onBack","componentEvents","onCalculatePayroll","onEdit","employee","isCalculating","PayrollProcessingRequestStatus","isCalculated","useEffect","PayrollConfigurationPresentation"],"mappings":";;;;;;;;;;;;AAoBO,SAASA,EAAqBC,GAA2D;AAC9F,SACE,gBAAAC,EAACC,GAAA,EAAe,GAAGF,GACjB,UAAA,gBAAAC,EAACE,KAAM,GAAGH,GAAQ,UAAAA,EAAM,SAAA,CAAS,EAAA,CACnC;AAEJ;AAEO,MAAMG,IAAO,CAAC;AAAA,EACnB,SAAAC;AAAA,EACA,WAAAC;AAAA,EACA,WAAAC;AAAA,EACA,YAAAC;AAAA,EACA,QAAAC;AACF,MAAiC;AAC/B,EAAAC,EAAuB,gCAAgCF,CAAU,GACjEG,EAAQ,8BAA8B;AAEtC,QAAM,EAAE,kBAAAC,EAAA,IAAqBC,EAAA,GAEvB,EAAE,MAAMC,EAAA,IAAgBC;AAAA,IAC5B;AAAA,MACE,WAAAT;AAAA,MACA,WAAAC;AAAA,IAAA;AAAA,IAEF,EAAE,iBAAiB,IAAA;AAAA,EAAM,GAGrB,EAAE,MAAMS,EAAA,IAAiBC,EAAyB;AAAA,IACtD,WAAAX;AAAA,EAAA,CACD,GAEK,EAAE,aAAaY,EAAA,IAAqBC,EAAA,GAEpC;AAAA,IACJ,iBAAAC;AAAA,IACA,aAAAC;AAAA,IACA,WAAWC;AAAA,EAAA,IACTC,EAAuB;AAAA,IACzB,WAAAjB;AAAA,IACA,WAAAC;AAAA,EAAA,CACD,GAEKiB,IAAS,MAAM;AACnB,IAAAnB,EAAQoB,EAAgB,gBAAgB;AAAA,EAC1C,GACMC,IAAqB,YAAY;AACrC,UAAMR,EAAiB;AAAA,MACrB,SAAS;AAAA,QACP,WAAAZ;AAAA,QACA,WAAAC;AAAA,MAAA;AAAA,IACF,CACD;AAAA,EACH,GACMoB,IAAS,CAACC,MAAuB;AACrC,IAAAvB,EAAQoB,EAAgB,6BAA6B,EAAE,YAAYG,EAAS,MAAM;AAAA,EACpF,GAEMC,IACJf,EAAY,aAAa,mBAAmB,WAC5CgB,EAA+B,aAC3BC,IACJjB,EAAY,aAAa,mBAAmB,WAC5CgB,EAA+B;AAQjC,SANAE,EAAU,MAAM;AACd,IAAID,KACF1B,EAAQoB,EAAgB,sBAAsB;AAAA,EAElD,GAAG,CAACM,GAAc1B,CAAO,CAAC,GAEtBiB,KAAgCO,sBAC1BjB,GAAA,EAAiB,IAIzB,gBAAAV;AAAA,IAAC+B;AAAA,IAAA;AAAA,MACC,QAAAT;AAAA,MACA,oBAAAE;AAAA,MACA,QAAAC;AAAA,MACA,uBAAuBP,GAAiB,yBAAyB,CAAA;AAAA,MACjE,iBAAiBJ,EAAa,iBAAiB,CAAA;AAAA,MAC/C,WAAWI,GAAiB;AAAA,MAC5B,aAAAC;AAAA,MACA,YAAYD,GAAiB;AAAA,MAC7B,QAAAX;AAAA,IAAA;AAAA,EAAA;AAGN;"}
1
+ {"version":3,"file":"PayrollConfiguration.js","sources":["../../../../src/components/Payroll/PayrollConfiguration/PayrollConfiguration.tsx"],"sourcesContent":["import { useEffect, type ReactNode } from 'react'\nimport { useEmployeesListSuspense } from '@gusto/embedded-api/react-query/employeesList'\nimport { usePayrollsGetSuspense } from '@gusto/embedded-api/react-query/payrollsGet'\nimport { usePayrollsCalculateMutation } from '@gusto/embedded-api/react-query/payrollsCalculate'\nimport type { Employee } from '@gusto/embedded-api/models/components/employee'\nimport { PayrollProcessingRequestStatus } from '@gusto/embedded-api/models/components/payrollprocessingrequest'\nimport type { GetV1CompaniesCompanyIdPayrollsPayrollIdResponse } from '@gusto/embedded-api/models/operations/getv1companiescompanyidpayrollspayrollid'\nimport { useTranslation } from 'react-i18next'\nimport { usePreparedPayrollData } from '../usePreparedPayrollData'\nimport { PayrollConfigurationPresentation } from './PayrollConfigurationPresentation'\nimport type { BaseComponentInterface } from '@/components/Base/Base'\nimport { BaseComponent } from '@/components/Base/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { componentEvents } from '@/shared/constants'\nimport { useComponentDictionary, useI18n } from '@/i18n'\n\nconst isCalculating = (payrollData?: GetV1CompaniesCompanyIdPayrollsPayrollIdResponse) =>\n payrollData?.payrollShow?.processingRequest?.status === PayrollProcessingRequestStatus.Calculating\nconst isCalculated = (payrollData?: GetV1CompaniesCompanyIdPayrollsPayrollIdResponse) =>\n payrollData?.payrollShow?.processingRequest?.status ===\n PayrollProcessingRequestStatus.CalculateSuccess\n\ninterface PayrollConfigurationProps extends BaseComponentInterface<'Payroll.PayrollConfiguration'> {\n companyId: string\n payrollId: string\n alerts?: ReactNode\n}\n\nexport function PayrollConfiguration(props: PayrollConfigurationProps & BaseComponentInterface) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nexport const Root = ({\n onEvent,\n companyId,\n payrollId,\n dictionary,\n alerts,\n}: PayrollConfigurationProps) => {\n useComponentDictionary('Payroll.PayrollConfiguration', dictionary)\n useI18n('Payroll.PayrollConfiguration')\n const { t } = useTranslation('Payroll.PayrollConfiguration')\n\n const { LoadingIndicator } = useBase()\n\n const { data: payrollData } = usePayrollsGetSuspense(\n {\n companyId,\n payrollId,\n include: ['taxes', 'benefits', 'deductions'],\n },\n {\n refetchInterval: query => (isCalculating(query.state.data) ? 5_000 : false),\n },\n )\n\n const { data: employeeData } = useEmployeesListSuspense({\n companyId,\n })\n\n const { mutateAsync: calculatePayroll } = usePayrollsCalculateMutation()\n\n const {\n preparedPayroll,\n paySchedule,\n isLoading: isPreparedPayrollDataLoading,\n } = usePreparedPayrollData({\n companyId,\n payrollId,\n })\n\n const onBack = () => {\n onEvent(componentEvents.RUN_PAYROLL_BACK)\n }\n const onCalculatePayroll = async () => {\n await calculatePayroll({\n request: {\n companyId,\n payrollId,\n },\n })\n }\n const onEdit = (employee: Employee) => {\n onEvent(componentEvents.RUN_PAYROLL_EMPLOYEE_EDIT, { employeeId: employee.uuid })\n }\n\n useEffect(() => {\n if (isCalculated(payrollData)) {\n onEvent(componentEvents.RUN_PAYROLL_CALCULATED, {\n payrollId,\n alert: { type: 'success', title: t('alerts.progressSaved') },\n })\n }\n }, [payrollData, onEvent, payrollId, t])\n\n if (isPreparedPayrollDataLoading || isCalculating(payrollData)) {\n return <LoadingIndicator />\n }\n\n return (\n <PayrollConfigurationPresentation\n onBack={onBack}\n onCalculatePayroll={onCalculatePayroll}\n onEdit={onEdit}\n employeeCompensations={preparedPayroll?.employeeCompensations || []}\n employeeDetails={employeeData.showEmployees || []}\n payPeriod={preparedPayroll?.payPeriod}\n paySchedule={paySchedule}\n isOffCycle={preparedPayroll?.offCycle}\n alerts={alerts}\n />\n )\n}\n"],"names":["isCalculating","payrollData","PayrollProcessingRequestStatus","isCalculated","PayrollConfiguration","props","jsx","BaseComponent","Root","onEvent","companyId","payrollId","dictionary","alerts","useComponentDictionary","useI18n","t","useTranslation","LoadingIndicator","useBase","usePayrollsGetSuspense","query","employeeData","useEmployeesListSuspense","calculatePayroll","usePayrollsCalculateMutation","preparedPayroll","paySchedule","isPreparedPayrollDataLoading","usePreparedPayrollData","onBack","componentEvents","onCalculatePayroll","onEdit","employee","useEffect","PayrollConfigurationPresentation"],"mappings":";;;;;;;;;;;;;AAgBA,MAAMA,IAAgB,CAACC,MACrBA,GAAa,aAAa,mBAAmB,WAAWC,EAA+B,aACnFC,IAAe,CAACF,MACpBA,GAAa,aAAa,mBAAmB,WAC7CC,EAA+B;AAQ1B,SAASE,EAAqBC,GAA2D;AAC9F,SACE,gBAAAC,EAACC,GAAA,EAAe,GAAGF,GACjB,UAAA,gBAAAC,EAACE,KAAM,GAAGH,GAAQ,UAAAA,EAAM,SAAA,CAAS,EAAA,CACnC;AAEJ;AAEO,MAAMG,IAAO,CAAC;AAAA,EACnB,SAAAC;AAAA,EACA,WAAAC;AAAA,EACA,WAAAC;AAAA,EACA,YAAAC;AAAA,EACA,QAAAC;AACF,MAAiC;AAC/B,EAAAC,EAAuB,gCAAgCF,CAAU,GACjEG,EAAQ,8BAA8B;AACtC,QAAM,EAAE,GAAAC,EAAA,IAAMC,EAAe,8BAA8B,GAErD,EAAE,kBAAAC,EAAA,IAAqBC,EAAA,GAEvB,EAAE,MAAMlB,EAAA,IAAgBmB;AAAA,IAC5B;AAAA,MACE,WAAAV;AAAA,MACA,WAAAC;AAAA,MACA,SAAS,CAAC,SAAS,YAAY,YAAY;AAAA,IAAA;AAAA,IAE7C;AAAA,MACE,iBAAiB,CAAAU,MAAUrB,EAAcqB,EAAM,MAAM,IAAI,IAAI,MAAQ;AAAA,IAAA;AAAA,EACvE,GAGI,EAAE,MAAMC,EAAA,IAAiBC,EAAyB;AAAA,IACtD,WAAAb;AAAA,EAAA,CACD,GAEK,EAAE,aAAac,EAAA,IAAqBC,EAAA,GAEpC;AAAA,IACJ,iBAAAC;AAAA,IACA,aAAAC;AAAA,IACA,WAAWC;AAAA,EAAA,IACTC,EAAuB;AAAA,IACzB,WAAAnB;AAAA,IACA,WAAAC;AAAA,EAAA,CACD,GAEKmB,IAAS,MAAM;AACnB,IAAArB,EAAQsB,EAAgB,gBAAgB;AAAA,EAC1C,GACMC,IAAqB,YAAY;AACrC,UAAMR,EAAiB;AAAA,MACrB,SAAS;AAAA,QACP,WAAAd;AAAA,QACA,WAAAC;AAAA,MAAA;AAAA,IACF,CACD;AAAA,EACH,GACMsB,IAAS,CAACC,MAAuB;AACrC,IAAAzB,EAAQsB,EAAgB,2BAA2B,EAAE,YAAYG,EAAS,MAAM;AAAA,EAClF;AAWA,SATAC,EAAU,MAAM;AACd,IAAIhC,EAAaF,CAAW,KAC1BQ,EAAQsB,EAAgB,wBAAwB;AAAA,MAC9C,WAAApB;AAAA,MACA,OAAO,EAAE,MAAM,WAAW,OAAOK,EAAE,sBAAsB,EAAA;AAAA,IAAE,CAC5D;AAAA,EAEL,GAAG,CAACf,GAAaQ,GAASE,GAAWK,CAAC,CAAC,GAEnCY,KAAgC5B,EAAcC,CAAW,sBACnDiB,GAAA,EAAiB,IAIzB,gBAAAZ;AAAA,IAAC8B;AAAA,IAAA;AAAA,MACC,QAAAN;AAAA,MACA,oBAAAE;AAAA,MACA,QAAAC;AAAA,MACA,uBAAuBP,GAAiB,yBAAyB,CAAA;AAAA,MACjE,iBAAiBJ,EAAa,iBAAiB,CAAA;AAAA,MAC/C,WAAWI,GAAiB;AAAA,MAC5B,aAAAC;AAAA,MACA,YAAYD,GAAiB;AAAA,MAC7B,QAAAb;AAAA,IAAA;AAAA,EAAA;AAGN;"}
@@ -4,7 +4,6 @@ import { useFormatEmployeePayRate as A, getRegularHours as L, getOvertimeHours a
4
4
  import { useI18n as j } from "../../../i18n/I18n.js";
5
5
  import { Flex as h } from "../../Common/Flex/Flex.js";
6
6
  import { Grid as G } from "../../Common/Grid/Grid.js";
7
- import "classnames";
8
7
  import { useComponentContext as I } from "../../../contexts/ComponentAdapter/useComponentContext.js";
9
8
  import { HamburgerMenu as O } from "../../Common/HamburgerMenu/HamburgerMenu.js";
10
9
  import _ from "../../../assets/icons/pencil.svg.js";
@@ -32,7 +31,7 @@ const J = ({
32
31
  }
33
32
  }
34
33
  return s("pageTitle", { startDate: "", endDate: "" });
35
- }, ie = ({
34
+ }, ae = ({
36
35
  employeeCompensations: i,
37
36
  employeeDetails: m,
38
37
  payPeriod: s,
@@ -139,6 +138,6 @@ const J = ({
139
138
  ] });
140
139
  };
141
140
  export {
142
- ie as PayrollConfigurationPresentation
141
+ ae as PayrollConfigurationPresentation
143
142
  };
144
143
  //# sourceMappingURL=PayrollConfigurationPresentation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PayrollConfigurationPresentation.js","sources":["../../../../src/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.tsx"],"sourcesContent":["import type { ReactNode } from 'react'\nimport type { EmployeeCompensations } from '@gusto/embedded-api/models/components/payrollshow'\nimport type { Employee } from '@gusto/embedded-api/models/components/employee'\nimport type { PayrollPayPeriodType } from '@gusto/embedded-api/models/components/payrollpayperiodtype'\nimport type { PayScheduleObject } from '@gusto/embedded-api/models/components/payscheduleobject'\nimport { useTranslation } from 'react-i18next'\nimport type { TFunction } from 'i18next'\nimport type { PayrollEmployeeCompensationsType } from '@gusto/embedded-api/models/components/payrollemployeecompensationstype'\nimport {\n useFormatEmployeePayRate,\n getRegularHours,\n getOvertimeHours,\n getTotalPtoHours,\n getAdditionalEarnings,\n getReimbursements,\n formatHoursDisplay,\n calculateGrossPay,\n} from '../helpers'\nimport { useI18n } from '@/i18n'\nimport { DataView, Flex, Grid } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { HamburgerMenu } from '@/components/Common/HamburgerMenu'\nimport PencilSvg from '@/assets/icons/pencil.svg?react'\nimport { firstLastName, formatNumberAsCurrency } from '@/helpers/formattedStrings'\nimport { parseDateStringToLocal } from '@/helpers/dateFormatting'\nimport { useLocale } from '@/contexts/LocaleProvider/useLocale'\n\ninterface PayrollConfigurationPresentationProps {\n employeeCompensations: EmployeeCompensations[]\n employeeDetails: Employee[]\n payPeriod?: PayrollPayPeriodType\n paySchedule?: PayScheduleObject\n onBack: () => void\n onCalculatePayroll: () => void\n onEdit: (employee: Employee) => void\n isOffCycle?: boolean\n alerts?: ReactNode\n}\n\nconst getPayrollConfigurationTitle = ({\n payPeriod,\n locale,\n t,\n}: {\n payPeriod?: PayrollPayPeriodType\n locale: string\n t: TFunction<'Payroll.PayrollConfiguration'>\n}) => {\n if (payPeriod?.startDate && payPeriod.endDate) {\n const startDate = parseDateStringToLocal(payPeriod.startDate)\n const endDate = parseDateStringToLocal(payPeriod.endDate)\n\n if (startDate && endDate) {\n const startFormatted = startDate.toLocaleDateString(locale, {\n month: 'long',\n day: 'numeric',\n })\n const endFormatted = endDate.toLocaleDateString(locale, {\n month: 'short',\n day: 'numeric',\n year: 'numeric',\n })\n return t('pageTitle', { startDate: startFormatted, endDate: endFormatted })\n }\n }\n return t('pageTitle', { startDate: '', endDate: '' })\n}\n\nexport const PayrollConfigurationPresentation = ({\n employeeCompensations,\n employeeDetails,\n payPeriod,\n paySchedule,\n onBack,\n onEdit,\n onCalculatePayroll,\n isOffCycle = false,\n alerts,\n}: PayrollConfigurationPresentationProps) => {\n const { Button, Heading, Text, Badge } = useComponentContext()\n useI18n('Payroll.PayrollConfiguration')\n const { t } = useTranslation('Payroll.PayrollConfiguration')\n const { locale } = useLocale()\n const formatEmployeePayRate = useFormatEmployeePayRate()\n\n const employeeMap = new Map(employeeDetails.map(employee => [employee.uuid, employee]))\n\n const getEmployeeName = (employeeUuid: string) => {\n const employee = employeeMap.get(employeeUuid)\n return employee\n ? firstLastName({ first_name: employee.firstName, last_name: employee.lastName })\n : null\n }\n\n return (\n <Flex flexDirection=\"column\" gap={16}>\n <Flex justifyContent=\"space-between\" alignItems=\"center\">\n <Heading as=\"h1\">{getPayrollConfigurationTitle({ payPeriod, locale, t })}</Heading>\n <Button title={t('calculatePayrollTitle')} onClick={onCalculatePayroll}>\n {t('calculatePayroll')}\n </Button>\n </Flex>\n\n <Text>{t('regularPayroll')}</Text>\n\n {alerts && (\n <Grid gap={16} gridTemplateColumns=\"1fr\">\n {alerts}\n </Grid>\n )}\n\n <Heading as=\"h3\">{t('hoursAndEarningsTitle')}</Heading>\n <Text>{t('hoursAndEarningsDescription')}</Text>\n\n <DataView\n label={t('employeeCompensationsTitle')}\n columns={[\n {\n title: <Text weight=\"semibold\">{t('tableColumns.employees')}</Text>,\n render: (item: EmployeeCompensations) => {\n const employee = employeeMap.get(item.employeeUuid || '')\n const payRateDisplay = formatEmployeePayRate(employee)\n return (\n <Flex flexDirection=\"column\" gap={8 as const}>\n <Text weight=\"semibold\">{getEmployeeName(item.employeeUuid || '')}</Text>\n {payRateDisplay && <Text variant=\"supporting\">{payRateDisplay}</Text>}\n {item.excluded && <Badge status=\"warning\">{t('skippedBadge')}</Badge>}\n </Flex>\n )\n },\n },\n {\n title: <Text weight=\"semibold\">{t('tableColumns.hours')}</Text>,\n render: (item: EmployeeCompensations) => {\n const hours = getRegularHours(item)\n const overtimeHours = getOvertimeHours(item)\n return <Text>{formatHoursDisplay(hours + overtimeHours)}</Text>\n },\n },\n {\n title: <Text weight=\"semibold\">{t('tableColumns.timeOff')}</Text>,\n render: (item: EmployeeCompensations) => {\n const ptoHours = getTotalPtoHours(item)\n return <Text>{formatHoursDisplay(ptoHours)}</Text>\n },\n },\n {\n title: <Text weight=\"semibold\">{t('tableColumns.additionalEarnings')}</Text>,\n render: (item: EmployeeCompensations) => {\n const earnings = getAdditionalEarnings(item)\n return <Text>{formatNumberAsCurrency(earnings)}</Text>\n },\n },\n {\n title: <Text weight=\"semibold\">{t('tableColumns.reimbursements')}</Text>,\n render: (item: EmployeeCompensations) => {\n const reimbursements = getReimbursements(item)\n return <Text>{formatNumberAsCurrency(reimbursements)}</Text>\n },\n },\n {\n title: <Text weight=\"semibold\">{t('tableColumns.totalPay')}</Text>,\n render: (item: PayrollEmployeeCompensationsType) => {\n const employee = employeeMap.get(item.employeeUuid || '')\n const calculatedGrossPay = employee\n ? calculateGrossPay(item, employee, payPeriod?.startDate, paySchedule, isOffCycle)\n : 0\n return <Text>{formatNumberAsCurrency(calculatedGrossPay)}</Text>\n },\n },\n ]}\n data={employeeCompensations\n .filter(compensation => {\n const employeeUuid = compensation.employeeUuid\n if (!employeeUuid) return false\n return employeeMap.has(employeeUuid)\n })\n .sort((a, b) => {\n const employeeA = employeeMap.get(a.employeeUuid || '')\n const employeeB = employeeMap.get(b.employeeUuid || '')\n const lastNameA = employeeA?.lastName || ''\n const lastNameB = employeeB?.lastName || ''\n return lastNameA.localeCompare(lastNameB)\n })}\n itemMenu={(item: EmployeeCompensations) => (\n <HamburgerMenu\n items={[\n {\n label: t('editMenu.edit'),\n icon: <PencilSvg aria-hidden />,\n onClick: () => {\n const employee = employeeMap.get(item.employeeUuid || '')\n if (employee) {\n onEdit(employee)\n }\n },\n },\n ]}\n triggerLabel={t('editMenu.edit')}\n />\n )}\n />\n\n <Button title={t('backButtonTitle')} onClick={onBack} variant=\"secondary\">\n {t('backButton')}\n </Button>\n </Flex>\n )\n}\n"],"names":["getPayrollConfigurationTitle","payPeriod","locale","t","startDate","parseDateStringToLocal","endDate","startFormatted","endFormatted","PayrollConfigurationPresentation","employeeCompensations","employeeDetails","paySchedule","onBack","onEdit","onCalculatePayroll","isOffCycle","alerts","Button","Heading","Text","Badge","useComponentContext","useI18n","useTranslation","useLocale","formatEmployeePayRate","useFormatEmployeePayRate","employeeMap","employee","getEmployeeName","employeeUuid","firstLastName","jsxs","Flex","jsx","Grid","DataView","item","payRateDisplay","hours","getRegularHours","overtimeHours","getOvertimeHours","formatHoursDisplay","ptoHours","getTotalPtoHours","earnings","getAdditionalEarnings","formatNumberAsCurrency","reimbursements","getReimbursements","calculatedGrossPay","calculateGrossPay","compensation","a","b","employeeA","employeeB","lastNameA","lastNameB","HamburgerMenu","PencilSvg"],"mappings":"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"}
1
+ {"version":3,"file":"PayrollConfigurationPresentation.js","sources":["../../../../src/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.tsx"],"sourcesContent":["import type { ReactNode } from 'react'\nimport type { EmployeeCompensations } from '@gusto/embedded-api/models/components/payrollshow'\nimport type { Employee } from '@gusto/embedded-api/models/components/employee'\nimport type { PayrollPayPeriodType } from '@gusto/embedded-api/models/components/payrollpayperiodtype'\nimport type { PayScheduleObject } from '@gusto/embedded-api/models/components/payscheduleobject'\nimport { useTranslation } from 'react-i18next'\nimport type { TFunction } from 'i18next'\nimport type { PayrollEmployeeCompensationsType } from '@gusto/embedded-api/models/components/payrollemployeecompensationstype'\nimport {\n useFormatEmployeePayRate,\n getRegularHours,\n getOvertimeHours,\n getTotalPtoHours,\n getAdditionalEarnings,\n getReimbursements,\n formatHoursDisplay,\n calculateGrossPay,\n} from '../helpers'\nimport { useI18n } from '@/i18n'\nimport { DataView, Flex, Grid } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { HamburgerMenu } from '@/components/Common/HamburgerMenu'\nimport PencilSvg from '@/assets/icons/pencil.svg?react'\nimport { firstLastName, formatNumberAsCurrency } from '@/helpers/formattedStrings'\nimport { parseDateStringToLocal } from '@/helpers/dateFormatting'\nimport { useLocale } from '@/contexts/LocaleProvider/useLocale'\n\ninterface PayrollConfigurationPresentationProps {\n employeeCompensations: EmployeeCompensations[]\n employeeDetails: Employee[]\n payPeriod?: PayrollPayPeriodType\n paySchedule?: PayScheduleObject\n onBack: () => void\n onCalculatePayroll: () => void\n onEdit: (employee: Employee) => void\n isOffCycle?: boolean\n alerts?: ReactNode\n}\n\nconst getPayrollConfigurationTitle = ({\n payPeriod,\n locale,\n t,\n}: {\n payPeriod?: PayrollPayPeriodType\n locale: string\n t: TFunction<'Payroll.PayrollConfiguration'>\n}) => {\n if (payPeriod?.startDate && payPeriod.endDate) {\n const startDate = parseDateStringToLocal(payPeriod.startDate)\n const endDate = parseDateStringToLocal(payPeriod.endDate)\n\n if (startDate && endDate) {\n const startFormatted = startDate.toLocaleDateString(locale, {\n month: 'long',\n day: 'numeric',\n })\n const endFormatted = endDate.toLocaleDateString(locale, {\n month: 'short',\n day: 'numeric',\n year: 'numeric',\n })\n return t('pageTitle', { startDate: startFormatted, endDate: endFormatted })\n }\n }\n return t('pageTitle', { startDate: '', endDate: '' })\n}\n\nexport const PayrollConfigurationPresentation = ({\n employeeCompensations,\n employeeDetails,\n payPeriod,\n paySchedule,\n onBack,\n onEdit,\n onCalculatePayroll,\n isOffCycle = false,\n alerts,\n}: PayrollConfigurationPresentationProps) => {\n const { Button, Heading, Text, Badge } = useComponentContext()\n useI18n('Payroll.PayrollConfiguration')\n const { t } = useTranslation('Payroll.PayrollConfiguration')\n const { locale } = useLocale()\n const formatEmployeePayRate = useFormatEmployeePayRate()\n\n const employeeMap = new Map(employeeDetails.map(employee => [employee.uuid, employee]))\n\n const getEmployeeName = (employeeUuid: string) => {\n const employee = employeeMap.get(employeeUuid)\n return employee\n ? firstLastName({ first_name: employee.firstName, last_name: employee.lastName })\n : null\n }\n\n return (\n <Flex flexDirection=\"column\" gap={16}>\n <Flex justifyContent=\"space-between\" alignItems=\"center\">\n <Heading as=\"h1\">{getPayrollConfigurationTitle({ payPeriod, locale, t })}</Heading>\n <Button title={t('calculatePayrollTitle')} onClick={onCalculatePayroll}>\n {t('calculatePayroll')}\n </Button>\n </Flex>\n\n <Text>{t('regularPayroll')}</Text>\n\n {alerts && (\n <Grid gap={16} gridTemplateColumns=\"1fr\">\n {alerts}\n </Grid>\n )}\n\n <Heading as=\"h3\">{t('hoursAndEarningsTitle')}</Heading>\n <Text>{t('hoursAndEarningsDescription')}</Text>\n\n <DataView\n label={t('employeeCompensationsTitle')}\n columns={[\n {\n title: <Text weight=\"semibold\">{t('tableColumns.employees')}</Text>,\n render: (item: EmployeeCompensations) => {\n const employee = employeeMap.get(item.employeeUuid || '')\n const payRateDisplay = formatEmployeePayRate(employee)\n return (\n <Flex flexDirection=\"column\" gap={8 as const}>\n <Text weight=\"semibold\">{getEmployeeName(item.employeeUuid || '')}</Text>\n {payRateDisplay && <Text variant=\"supporting\">{payRateDisplay}</Text>}\n {item.excluded && <Badge status=\"warning\">{t('skippedBadge')}</Badge>}\n </Flex>\n )\n },\n },\n {\n title: <Text weight=\"semibold\">{t('tableColumns.hours')}</Text>,\n render: (item: EmployeeCompensations) => {\n const hours = getRegularHours(item)\n const overtimeHours = getOvertimeHours(item)\n return <Text>{formatHoursDisplay(hours + overtimeHours)}</Text>\n },\n },\n {\n title: <Text weight=\"semibold\">{t('tableColumns.timeOff')}</Text>,\n render: (item: EmployeeCompensations) => {\n const ptoHours = getTotalPtoHours(item)\n return <Text>{formatHoursDisplay(ptoHours)}</Text>\n },\n },\n {\n title: <Text weight=\"semibold\">{t('tableColumns.additionalEarnings')}</Text>,\n render: (item: EmployeeCompensations) => {\n const earnings = getAdditionalEarnings(item)\n return <Text>{formatNumberAsCurrency(earnings)}</Text>\n },\n },\n {\n title: <Text weight=\"semibold\">{t('tableColumns.reimbursements')}</Text>,\n render: (item: EmployeeCompensations) => {\n const reimbursements = getReimbursements(item)\n return <Text>{formatNumberAsCurrency(reimbursements)}</Text>\n },\n },\n {\n title: <Text weight=\"semibold\">{t('tableColumns.totalPay')}</Text>,\n render: (item: PayrollEmployeeCompensationsType) => {\n const employee = employeeMap.get(item.employeeUuid || '')\n const calculatedGrossPay = employee\n ? calculateGrossPay(item, employee, payPeriod?.startDate, paySchedule, isOffCycle)\n : 0\n return <Text>{formatNumberAsCurrency(calculatedGrossPay)}</Text>\n },\n },\n ]}\n data={employeeCompensations\n .filter(compensation => {\n const employeeUuid = compensation.employeeUuid\n if (!employeeUuid) return false\n return employeeMap.has(employeeUuid)\n })\n .sort((a, b) => {\n const employeeA = employeeMap.get(a.employeeUuid || '')\n const employeeB = employeeMap.get(b.employeeUuid || '')\n const lastNameA = employeeA?.lastName || ''\n const lastNameB = employeeB?.lastName || ''\n return lastNameA.localeCompare(lastNameB)\n })}\n itemMenu={(item: EmployeeCompensations) => (\n <HamburgerMenu\n items={[\n {\n label: t('editMenu.edit'),\n icon: <PencilSvg aria-hidden />,\n onClick: () => {\n const employee = employeeMap.get(item.employeeUuid || '')\n if (employee) {\n onEdit(employee)\n }\n },\n },\n ]}\n triggerLabel={t('editMenu.edit')}\n />\n )}\n />\n\n <Button title={t('backButtonTitle')} onClick={onBack} variant=\"secondary\">\n {t('backButton')}\n </Button>\n </Flex>\n )\n}\n"],"names":["getPayrollConfigurationTitle","payPeriod","locale","t","startDate","parseDateStringToLocal","endDate","startFormatted","endFormatted","PayrollConfigurationPresentation","employeeCompensations","employeeDetails","paySchedule","onBack","onEdit","onCalculatePayroll","isOffCycle","alerts","Button","Heading","Text","Badge","useComponentContext","useI18n","useTranslation","useLocale","formatEmployeePayRate","useFormatEmployeePayRate","employeeMap","employee","getEmployeeName","employeeUuid","firstLastName","jsxs","Flex","jsx","Grid","DataView","item","payRateDisplay","hours","getRegularHours","overtimeHours","getOvertimeHours","formatHoursDisplay","ptoHours","getTotalPtoHours","earnings","getAdditionalEarnings","formatNumberAsCurrency","reimbursements","getReimbursements","calculatedGrossPay","calculateGrossPay","compensation","a","b","employeeA","employeeB","lastNameA","lastNameB","HamburgerMenu","PencilSvg"],"mappings":";;;;;;;;;;;;;AAuCA,MAAMA,IAA+B,CAAC;AAAA,EACpC,WAAAC;AAAA,EACA,QAAAC;AAAA,EACA,GAAAC;AACF,MAIM;AACJ,MAAIF,GAAW,aAAaA,EAAU,SAAS;AAC7C,UAAMG,IAAYC,EAAuBJ,EAAU,SAAS,GACtDK,IAAUD,EAAuBJ,EAAU,OAAO;AAExD,QAAIG,KAAaE,GAAS;AACxB,YAAMC,IAAiBH,EAAU,mBAAmBF,GAAQ;AAAA,QAC1D,OAAO;AAAA,QACP,KAAK;AAAA,MAAA,CACN,GACKM,IAAeF,EAAQ,mBAAmBJ,GAAQ;AAAA,QACtD,OAAO;AAAA,QACP,KAAK;AAAA,QACL,MAAM;AAAA,MAAA,CACP;AACD,aAAOC,EAAE,aAAa,EAAE,WAAWI,GAAgB,SAASC,GAAc;AAAA,IAC5E;AAAA,EACF;AACA,SAAOL,EAAE,aAAa,EAAE,WAAW,IAAI,SAAS,IAAI;AACtD,GAEaM,KAAmC,CAAC;AAAA,EAC/C,uBAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,WAAAV;AAAA,EACA,aAAAW;AAAA,EACA,QAAAC;AAAA,EACA,QAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,YAAAC,IAAa;AAAA,EACb,QAAAC;AACF,MAA6C;AAC3C,QAAM,EAAE,QAAAC,GAAQ,SAAAC,GAAS,MAAAC,GAAM,OAAAC,EAAA,IAAUC,EAAA;AACzC,EAAAC,EAAQ,8BAA8B;AACtC,QAAM,EAAE,GAAApB,EAAA,IAAMqB,EAAe,8BAA8B,GACrD,EAAE,QAAAtB,EAAA,IAAWuB,EAAA,GACbC,IAAwBC,EAAA,GAExBC,IAAc,IAAI,IAAIjB,EAAgB,IAAI,CAAAkB,MAAY,CAACA,EAAS,MAAMA,CAAQ,CAAC,CAAC,GAEhFC,IAAkB,CAACC,MAAyB;AAChD,UAAMF,IAAWD,EAAY,IAAIG,CAAY;AAC7C,WAAOF,IACHG,EAAc,EAAE,YAAYH,EAAS,WAAW,WAAWA,EAAS,SAAA,CAAU,IAC9E;AAAA,EACN;AAEA,SACE,gBAAAI,EAACC,GAAA,EAAK,eAAc,UAAS,KAAK,IAChC,UAAA;AAAA,IAAA,gBAAAD,EAACC,GAAA,EAAK,gBAAe,iBAAgB,YAAW,UAC9C,UAAA;AAAA,MAAA,gBAAAC,EAAChB,GAAA,EAAQ,IAAG,MAAM,UAAAnB,EAA6B,EAAE,WAAAC,GAAW,QAAAC,GAAQ,GAAAC,EAAA,CAAG,EAAA,CAAE;AAAA,MACzE,gBAAAgC,EAACjB,GAAA,EAAO,OAAOf,EAAE,uBAAuB,GAAG,SAASY,GACjD,UAAAZ,EAAE,kBAAkB,EAAA,CACvB;AAAA,IAAA,GACF;AAAA,IAEA,gBAAAgC,EAACf,GAAA,EAAM,UAAAjB,EAAE,gBAAgB,EAAA,CAAE;AAAA,IAE1Bc,KACC,gBAAAkB,EAACC,GAAA,EAAK,KAAK,IAAI,qBAAoB,OAChC,UAAAnB,GACH;AAAA,sBAGDE,GAAA,EAAQ,IAAG,MAAM,UAAAhB,EAAE,uBAAuB,GAAE;AAAA,IAC7C,gBAAAgC,EAACf,GAAA,EAAM,UAAAjB,EAAE,6BAA6B,EAAA,CAAE;AAAA,IAExC,gBAAAgC;AAAA,MAACE;AAAA,MAAA;AAAA,QACC,OAAOlC,EAAE,4BAA4B;AAAA,QACrC,SAAS;AAAA,UACP;AAAA,YACE,OAAO,gBAAAgC,EAACf,GAAA,EAAK,QAAO,YAAY,UAAAjB,EAAE,wBAAwB,GAAE;AAAA,YAC5D,QAAQ,CAACmC,MAAgC;AACvC,oBAAMT,IAAWD,EAAY,IAAIU,EAAK,gBAAgB,EAAE,GAClDC,IAAiBb,EAAsBG,CAAQ;AACrD,qBACE,gBAAAI,EAACC,GAAA,EAAK,eAAc,UAAS,KAAK,GAChC,UAAA;AAAA,gBAAA,gBAAAC,EAACf,KAAK,QAAO,YAAY,YAAgBkB,EAAK,gBAAgB,EAAE,GAAE;AAAA,gBACjEC,KAAkB,gBAAAJ,EAACf,GAAA,EAAK,SAAQ,cAAc,UAAAmB,GAAe;AAAA,gBAC7DD,EAAK,YAAY,gBAAAH,EAACd,GAAA,EAAM,QAAO,WAAW,UAAAlB,EAAE,cAAc,EAAA,CAAE;AAAA,cAAA,GAC/D;AAAA,YAEJ;AAAA,UAAA;AAAA,UAEF;AAAA,YACE,OAAO,gBAAAgC,EAACf,GAAA,EAAK,QAAO,YAAY,UAAAjB,EAAE,oBAAoB,GAAE;AAAA,YACxD,QAAQ,CAACmC,MAAgC;AACvC,oBAAME,IAAQC,EAAgBH,CAAI,GAC5BI,IAAgBC,EAAiBL,CAAI;AAC3C,qBAAO,gBAAAH,EAACf,GAAA,EAAM,UAAAwB,EAAmBJ,IAAQE,CAAa,GAAE;AAAA,YAC1D;AAAA,UAAA;AAAA,UAEF;AAAA,YACE,OAAO,gBAAAP,EAACf,GAAA,EAAK,QAAO,YAAY,UAAAjB,EAAE,sBAAsB,GAAE;AAAA,YAC1D,QAAQ,CAACmC,MAAgC;AACvC,oBAAMO,IAAWC,EAAiBR,CAAI;AACtC,qBAAO,gBAAAH,EAACf,GAAA,EAAM,UAAAwB,EAAmBC,CAAQ,GAAE;AAAA,YAC7C;AAAA,UAAA;AAAA,UAEF;AAAA,YACE,OAAO,gBAAAV,EAACf,GAAA,EAAK,QAAO,YAAY,UAAAjB,EAAE,iCAAiC,GAAE;AAAA,YACrE,QAAQ,CAACmC,MAAgC;AACvC,oBAAMS,IAAWC,EAAsBV,CAAI;AAC3C,qBAAO,gBAAAH,EAACf,GAAA,EAAM,UAAA6B,EAAuBF,CAAQ,GAAE;AAAA,YACjD;AAAA,UAAA;AAAA,UAEF;AAAA,YACE,OAAO,gBAAAZ,EAACf,GAAA,EAAK,QAAO,YAAY,UAAAjB,EAAE,6BAA6B,GAAE;AAAA,YACjE,QAAQ,CAACmC,MAAgC;AACvC,oBAAMY,IAAiBC,EAAkBb,CAAI;AAC7C,qBAAO,gBAAAH,EAACf,GAAA,EAAM,UAAA6B,EAAuBC,CAAc,GAAE;AAAA,YACvD;AAAA,UAAA;AAAA,UAEF;AAAA,YACE,OAAO,gBAAAf,EAACf,GAAA,EAAK,QAAO,YAAY,UAAAjB,EAAE,uBAAuB,GAAE;AAAA,YAC3D,QAAQ,CAACmC,MAA2C;AAClD,oBAAMT,IAAWD,EAAY,IAAIU,EAAK,gBAAgB,EAAE,GAClDc,IAAqBvB,IACvBwB,EAAkBf,GAAMT,GAAU5B,GAAW,WAAWW,GAAaI,CAAU,IAC/E;AACJ,qBAAO,gBAAAmB,EAACf,GAAA,EAAM,UAAA6B,EAAuBG,CAAkB,GAAE;AAAA,YAC3D;AAAA,UAAA;AAAA,QACF;AAAA,QAEF,MAAM1C,EACH,OAAO,CAAA4C,MAAgB;AACtB,gBAAMvB,IAAeuB,EAAa;AAClC,iBAAKvB,IACEH,EAAY,IAAIG,CAAY,IADT;AAAA,QAE5B,CAAC,EACA,KAAK,CAACwB,GAAGC,MAAM;AACd,gBAAMC,IAAY7B,EAAY,IAAI2B,EAAE,gBAAgB,EAAE,GAChDG,IAAY9B,EAAY,IAAI4B,EAAE,gBAAgB,EAAE,GAChDG,IAAYF,GAAW,YAAY,IACnCG,IAAYF,GAAW,YAAY;AACzC,iBAAOC,EAAU,cAAcC,CAAS;AAAA,QAC1C,CAAC;AAAA,QACH,UAAU,CAACtB,MACT,gBAAAH;AAAA,UAAC0B;AAAA,UAAA;AAAA,YACC,OAAO;AAAA,cACL;AAAA,gBACE,OAAO1D,EAAE,eAAe;AAAA,gBACxB,MAAM,gBAAAgC,EAAC2B,GAAA,EAAU,eAAW,GAAA,CAAC;AAAA,gBAC7B,SAAS,MAAM;AACb,wBAAMjC,IAAWD,EAAY,IAAIU,EAAK,gBAAgB,EAAE;AACxD,kBAAIT,KACFf,EAAOe,CAAQ;AAAA,gBAEnB;AAAA,cAAA;AAAA,YACF;AAAA,YAEF,cAAc1B,EAAE,eAAe;AAAA,UAAA;AAAA,QAAA;AAAA,MACjC;AAAA,IAAA;AAAA,IAIJ,gBAAAgC,EAACjB,GAAA,EAAO,OAAOf,EAAE,iBAAiB,GAAG,SAASU,GAAQ,SAAQ,aAC3D,UAAAV,EAAE,YAAY,EAAA,CACjB;AAAA,EAAA,GACF;AAEJ;"}