@gusto/embedded-react-sdk 0.55.7 → 0.55.8

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 (336) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/dist/components/Common/FadeIn/FadeIn.module.scss.js +4 -4
  3. package/dist/components/Common/FieldCaption/FieldCaption.js +22 -18
  4. package/dist/components/Common/FieldCaption/FieldCaption.js.map +1 -1
  5. package/dist/components/Common/Flex/Flex.js +17 -15
  6. package/dist/components/Common/Flex/Flex.js.map +1 -1
  7. package/dist/components/Common/UI/Breadcrumbs/Breadcrumbs.js +1 -1
  8. package/dist/components/Common/UI/FileInput/FileInput.js +1 -1
  9. package/dist/components/Common/UI/Heading/Heading.module.scss.js +7 -7
  10. package/dist/components/Common/UI/ProgressBar/ProgressBar.js +4 -4
  11. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +5 -4
  12. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
  13. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +5 -4
  14. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
  15. package/dist/components/Company/AssignSignatory/useAssignSignatory.js +7 -6
  16. package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
  17. package/dist/components/Company/BankAccount/BankAccountForm/context.js +5 -4
  18. package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
  19. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +5 -4
  20. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  21. package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js +27 -27
  22. package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js.map +1 -1
  23. package/dist/components/Company/FederalTaxes/useFederalTaxes.js +10 -9
  24. package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
  25. package/dist/components/Company/Industry/Context.js +8 -7
  26. package/dist/components/Company/Industry/Context.js.map +1 -1
  27. package/dist/components/Company/Locations/LocationForm/useLocationForm.js +5 -4
  28. package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
  29. package/dist/components/Company/Locations/LocationsList/useLocationsList.js +5 -4
  30. package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
  31. package/dist/components/Company/OnboardingOverview/context.js +5 -4
  32. package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
  33. package/dist/components/Company/PaySchedule/PaySchedule.js +45 -30
  34. package/dist/components/Company/PaySchedule/PaySchedule.js.map +1 -1
  35. package/dist/components/Company/PaySchedule/PayScheduleComponents.js +12 -11
  36. package/dist/components/Company/PaySchedule/PayScheduleComponents.js.map +1 -1
  37. package/dist/components/Company/PaySchedule/PayScheduleForm.js +72 -55
  38. package/dist/components/Company/PaySchedule/PayScheduleForm.js.map +1 -1
  39. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/fields.js +24 -20
  40. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/fields.js.map +1 -1
  41. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/payScheduleSchema.js +33 -29
  42. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/payScheduleSchema.js.map +1 -1
  43. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/usePayScheduleForm.js +131 -115
  44. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/usePayScheduleForm.js.map +1 -1
  45. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +5 -4
  46. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
  47. package/dist/components/Company/StateTaxes/StateTaxesList/context.js +5 -4
  48. package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
  49. package/dist/components/Company/StateTaxes/TaxRateManagement/context.js +5 -4
  50. package/dist/components/Company/StateTaxes/TaxRateManagement/context.js.map +1 -1
  51. package/dist/components/Contractor/ContractorList/management/ManagementContractorList.js +31 -29
  52. package/dist/components/Contractor/ContractorList/management/ManagementContractorList.js.map +1 -1
  53. package/dist/components/Contractor/ContractorList/management/ManagementContractorListView.js +110 -109
  54. package/dist/components/Contractor/ContractorList/management/ManagementContractorListView.js.map +1 -1
  55. package/dist/components/Contractor/ContractorList/onboarding/ContractorList.js +21 -19
  56. package/dist/components/Contractor/ContractorList/onboarding/ContractorList.js.map +1 -1
  57. package/dist/components/Contractor/ContractorList/onboarding/ContractorListView.js +56 -55
  58. package/dist/components/Contractor/ContractorList/onboarding/ContractorListView.js.map +1 -1
  59. package/dist/components/Contractor/Dashboard/Dashboard.js +34 -33
  60. package/dist/components/Contractor/Dashboard/Dashboard.js.map +1 -1
  61. package/dist/components/Contractor/Payments/CreateHistoricalPayment/CreateHistoricalPayment.js +117 -115
  62. package/dist/components/Contractor/Payments/CreateHistoricalPayment/CreateHistoricalPayment.js.map +1 -1
  63. package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js +77 -75
  64. package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js.map +1 -1
  65. package/dist/components/Contractor/Payments/CreatePayment/CreatePaymentPresentation.js +44 -43
  66. package/dist/components/Contractor/Payments/CreatePayment/CreatePaymentPresentation.js.map +1 -1
  67. package/dist/components/Contractor/Payments/CreatePayment/PreviewPresentation.js +40 -39
  68. package/dist/components/Contractor/Payments/CreatePayment/PreviewPresentation.js.map +1 -1
  69. package/dist/components/Contractor/Payments/HistoricalPaymentSummary/HistoricalPaymentSummary.js +35 -29
  70. package/dist/components/Contractor/Payments/HistoricalPaymentSummary/HistoricalPaymentSummary.js.map +1 -1
  71. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistory.js +21 -20
  72. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistory.js.map +1 -1
  73. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistoryPresentation.js +41 -40
  74. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistoryPresentation.js.map +1 -1
  75. package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatement.js +21 -20
  76. package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatement.js.map +1 -1
  77. package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatementPresentation.js +33 -32
  78. package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatementPresentation.js.map +1 -1
  79. package/dist/components/Contractor/Payments/PaymentsList/PaymentsList.js +80 -78
  80. package/dist/components/Contractor/Payments/PaymentsList/PaymentsList.js.map +1 -1
  81. package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.js +44 -43
  82. package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.js.map +1 -1
  83. package/dist/components/Contractor/Submit/Submit.js +113 -105
  84. package/dist/components/Contractor/Submit/Submit.js.map +1 -1
  85. package/dist/components/Contractor/Submit/SubmitDone.js +11 -11
  86. package/dist/components/Contractor/Submit/SubmitDone.js.map +1 -1
  87. package/dist/components/Employee/Compensation/management/CompensationAddJobForm/CompensationAddJobForm.js +20 -18
  88. package/dist/components/Employee/Compensation/management/CompensationAddJobForm/CompensationAddJobForm.js.map +1 -1
  89. package/dist/components/Employee/Compensation/management/CompensationEditForm/CompensationEditForm.js +18 -15
  90. package/dist/components/Employee/Compensation/management/CompensationEditForm/CompensationEditForm.js.map +1 -1
  91. package/dist/components/Employee/Dashboard/Dashboard.js +33 -32
  92. package/dist/components/Employee/Dashboard/Dashboard.js.map +1 -1
  93. package/dist/components/Employee/Deductions/management/DeductionsEditForm/DeductionsEditForm.js +21 -19
  94. package/dist/components/Employee/Deductions/management/DeductionsEditForm/DeductionsEditForm.js.map +1 -1
  95. package/dist/components/Employee/Documents/management/DocumentManager.js +34 -26
  96. package/dist/components/Employee/Documents/management/DocumentManager.js.map +1 -1
  97. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js +5 -4
  98. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  99. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibility.js +30 -29
  100. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibility.js.map +1 -1
  101. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibilityPresentation.js +54 -53
  102. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibilityPresentation.js.map +1 -1
  103. package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocuments.js +29 -28
  104. package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocuments.js.map +1 -1
  105. package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocumentsPresentation.js +16 -15
  106. package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocumentsPresentation.js.map +1 -1
  107. package/dist/components/Employee/EmployeeList/management/ManagementEmployeeList.js +27 -25
  108. package/dist/components/Employee/EmployeeList/management/ManagementEmployeeList.js.map +1 -1
  109. package/dist/components/Employee/EmployeeList/management/ManagementEmployeeListView.js +89 -80
  110. package/dist/components/Employee/EmployeeList/management/ManagementEmployeeListView.js.map +1 -1
  111. package/dist/components/Employee/EmployeeList/onboarding/EmployeeList.js +22 -20
  112. package/dist/components/Employee/EmployeeList/onboarding/EmployeeList.js.map +1 -1
  113. package/dist/components/Employee/EmployeeList/onboarding/EmployeeListView.js +25 -24
  114. package/dist/components/Employee/EmployeeList/onboarding/EmployeeListView.js.map +1 -1
  115. package/dist/components/Employee/EmployeeList/shared/useEmployeeList.js +1 -1
  116. package/dist/components/Employee/EmployeeList/shared/useEmployeeList.js.map +1 -1
  117. package/dist/components/Employee/FederalTaxes/shared/FederalTaxesView.js +1 -1
  118. package/dist/components/Employee/HomeAddress/management/HomeAddressEditForm.js +19 -17
  119. package/dist/components/Employee/HomeAddress/management/HomeAddressEditForm.js.map +1 -1
  120. package/dist/components/Employee/HomeAddress/management/HomeAddressView.js +80 -79
  121. package/dist/components/Employee/HomeAddress/management/HomeAddressView.js.map +1 -1
  122. package/dist/components/Employee/PaymentMethod/management/PaymentMethodBankForm.js +4 -4
  123. package/dist/components/Employee/PaymentMethod/onboarding/BankForm.js +4 -4
  124. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js +40 -39
  125. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js.map +1 -1
  126. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.js +34 -33
  127. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.js.map +1 -1
  128. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummary.js +43 -41
  129. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummary.js.map +1 -1
  130. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.js +22 -21
  131. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.js.map +1 -1
  132. package/dist/components/Employee/WorkAddress/management/WorkAddressEditForm.js +19 -17
  133. package/dist/components/Employee/WorkAddress/management/WorkAddressEditForm.js.map +1 -1
  134. package/dist/components/Employee/WorkAddress/management/WorkAddressView.js +120 -116
  135. package/dist/components/Employee/WorkAddress/management/WorkAddressView.js.map +1 -1
  136. package/dist/components/Flow/Flow.js +1 -1
  137. package/dist/components/InformationRequests/InformationRequestList/InformationRequestList.js +29 -29
  138. package/dist/components/InformationRequests/InformationRequestList/InformationRequestList.js.map +1 -1
  139. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.js +37 -36
  140. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.js.map +1 -1
  141. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsBanner/ConfirmWireDetailsBanner.js +37 -36
  142. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsBanner/ConfirmWireDetailsBanner.js.map +1 -1
  143. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelection.js +35 -28
  144. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelection.js.map +1 -1
  145. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.js +27 -26
  146. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.js.map +1 -1
  147. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js +2 -3
  148. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js.map +1 -1
  149. package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js +52 -51
  150. package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js.map +1 -1
  151. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.js +34 -33
  152. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.js.map +1 -1
  153. package/dist/components/Payroll/OffCycleDeductionsSetting/OffCycleDeductionsSetting.js +23 -21
  154. package/dist/components/Payroll/OffCycleDeductionsSetting/OffCycleDeductionsSetting.js.map +1 -1
  155. package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelection.js +26 -19
  156. package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelection.js.map +1 -1
  157. package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.js +14 -12
  158. package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.js.map +1 -1
  159. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js +112 -109
  160. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js.map +1 -1
  161. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js +67 -65
  162. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js.map +1 -1
  163. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js +43 -41
  164. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js.map +1 -1
  165. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js +225 -223
  166. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js.map +1 -1
  167. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/fields.js +78 -75
  168. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/fields.js.map +1 -1
  169. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/payrollEditEmployeeHelpers.js +27 -27
  170. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/payrollEditEmployeeHelpers.js.map +1 -1
  171. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/payrollEditEmployeeSchema.js +19 -19
  172. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/payrollEditEmployeeSchema.js.map +1 -1
  173. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/usePayrollEditEmployeeForm.js +51 -48
  174. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/usePayrollEditEmployeeForm.js.map +1 -1
  175. package/dist/components/Payroll/PayrollHistory/PayrollHistory.js +58 -48
  176. package/dist/components/Payroll/PayrollHistory/PayrollHistory.js.map +1 -1
  177. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js +58 -57
  178. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js.map +1 -1
  179. package/dist/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.js +83 -69
  180. package/dist/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.js.map +1 -1
  181. package/dist/components/Payroll/PayrollList/PayrollList.js +62 -60
  182. package/dist/components/Payroll/PayrollList/PayrollList.js.map +1 -1
  183. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js +119 -117
  184. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js.map +1 -1
  185. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js +101 -99
  186. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js.map +1 -1
  187. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js +120 -110
  188. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js.map +1 -1
  189. package/dist/components/Payroll/PayrollReceipts/PayrollReceipts.js +20 -14
  190. package/dist/components/Payroll/PayrollReceipts/PayrollReceipts.js.map +1 -1
  191. package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.js +39 -38
  192. package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.js.map +1 -1
  193. package/dist/components/Payroll/PrintChecks/PrintChecksBanner/PrintChecksBanner.js +24 -17
  194. package/dist/components/Payroll/PrintChecks/PrintChecksBanner/PrintChecksBanner.js.map +1 -1
  195. package/dist/components/Payroll/PrintChecks/PrintChecksFailure/PrintChecksFailure.js +17 -17
  196. package/dist/components/Payroll/PrintChecks/PrintChecksFailure/PrintChecksFailure.js.map +1 -1
  197. package/dist/components/Payroll/PrintChecks/PrintChecksForm/PrintChecksForm.js +88 -80
  198. package/dist/components/Payroll/PrintChecks/PrintChecksForm/PrintChecksForm.js.map +1 -1
  199. package/dist/components/Payroll/PrintChecks/PrintChecksSummary/PrintChecksSummary.js +26 -26
  200. package/dist/components/Payroll/PrintChecks/PrintChecksSummary/PrintChecksSummary.js.map +1 -1
  201. package/dist/components/Payroll/RecoveryCases/RecoveryCasesResubmit/RecoveryCasesResubmit.js +32 -32
  202. package/dist/components/Payroll/RecoveryCases/RecoveryCasesResubmit/RecoveryCasesResubmit.js.map +1 -1
  203. package/dist/components/Payroll/TransitionCreation/TransitionCreation.js +50 -48
  204. package/dist/components/Payroll/TransitionCreation/TransitionCreation.js.map +1 -1
  205. package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.js +34 -33
  206. package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.js.map +1 -1
  207. package/dist/components/Payroll/TransitionCreation/TransitionCreationTypes.js.map +1 -1
  208. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlert.js +28 -24
  209. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlert.js.map +1 -1
  210. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.js +255 -228
  211. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.js.map +1 -1
  212. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.module.scss.js +8 -4
  213. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.module.scss.js.map +1 -1
  214. package/dist/components/Payroll/usePreparedPayrollData.js +4 -3
  215. package/dist/components/Payroll/usePreparedPayrollData.js.map +1 -1
  216. package/dist/components/TimeOff/AddEmployeesHoliday/AddEmployeesHoliday.js +5 -5
  217. package/dist/components/TimeOff/AddEmployeesHoliday/AddEmployeesHoliday.js.map +1 -1
  218. package/dist/components/TimeOff/AddEmployeesToPolicy/AddEmployeesToPolicy.js +8 -7
  219. package/dist/components/TimeOff/AddEmployeesToPolicy/AddEmployeesToPolicy.js.map +1 -1
  220. package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetail.js +51 -50
  221. package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetail.js.map +1 -1
  222. package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailPresentation.js +20 -18
  223. package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailPresentation.js.map +1 -1
  224. package/dist/components/TimeOff/HolidaySelectionForm/HolidaySelectionForm.js +51 -49
  225. package/dist/components/TimeOff/HolidaySelectionForm/HolidaySelectionForm.js.map +1 -1
  226. package/dist/components/TimeOff/HolidaySelectionForm/HolidaySelectionFormPresentation.js +20 -20
  227. package/dist/components/TimeOff/HolidaySelectionForm/HolidaySelectionFormPresentation.js.map +1 -1
  228. package/dist/components/TimeOff/PolicyList/PolicyList.js +50 -49
  229. package/dist/components/TimeOff/PolicyList/PolicyList.js.map +1 -1
  230. package/dist/components/TimeOff/PolicyList/PolicyListPresentation.js +34 -33
  231. package/dist/components/TimeOff/PolicyList/PolicyListPresentation.js.map +1 -1
  232. package/dist/components/TimeOff/PolicySettings/PolicySettings.js +46 -45
  233. package/dist/components/TimeOff/PolicySettings/PolicySettings.js.map +1 -1
  234. package/dist/components/TimeOff/PolicySettings/PolicySettingsPresentation.js +152 -143
  235. package/dist/components/TimeOff/PolicySettings/PolicySettingsPresentation.js.map +1 -1
  236. package/dist/components/TimeOff/PolicyTypeSelector/PolicyTypeSelector.js +14 -13
  237. package/dist/components/TimeOff/PolicyTypeSelector/PolicyTypeSelector.js.map +1 -1
  238. package/dist/components/TimeOff/PolicyTypeSelector/PolicyTypeSelectorPresentation.js +44 -35
  239. package/dist/components/TimeOff/PolicyTypeSelector/PolicyTypeSelectorPresentation.js.map +1 -1
  240. package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationForm.js +88 -71
  241. package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationForm.js.map +1 -1
  242. package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormPresentation.js +164 -155
  243. package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormPresentation.js.map +1 -1
  244. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesHoliday.js +57 -55
  245. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesHoliday.js.map +1 -1
  246. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentation.js +25 -24
  247. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentation.js.map +1 -1
  248. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesTimeOff.js +94 -92
  249. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesTimeOff.js.map +1 -1
  250. package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetail.js +156 -155
  251. package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetail.js.map +1 -1
  252. package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetailPresentation.js +21 -19
  253. package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetailPresentation.js.map +1 -1
  254. package/dist/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayout.js +28 -26
  255. package/dist/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayout.js.map +1 -1
  256. package/dist/contexts/ComponentAdapter/useComponentContext.js.map +1 -1
  257. package/dist/contexts/UnstableFeaturesProvider/useUnstableFeature.js.map +1 -1
  258. package/dist/i18n/en/Company.PaySchedule.json.js +22 -20
  259. package/dist/i18n/en/Company.PaySchedule.json.js.map +1 -1
  260. package/dist/i18n/en/Payroll.UNSTABLE_PayrollEditEmployee.json.js +62 -58
  261. package/dist/i18n/en/Payroll.UNSTABLE_PayrollEditEmployee.json.js.map +1 -1
  262. package/dist/package.json.js +1 -1
  263. package/dist/src/components/Common/FieldCaption/FieldCaption.d.ts +2 -16
  264. package/dist/src/components/Common/FieldCaption/FieldCaptionTypes.d.ts +22 -0
  265. package/dist/src/components/Common/FieldCaption/index.d.ts +1 -0
  266. package/dist/src/components/Common/Flex/Flex.d.ts +3 -1
  267. package/dist/src/components/Company/PaySchedule/PaySchedule.d.ts +10 -2
  268. package/dist/src/components/Company/PaySchedule/PayScheduleComponents.d.ts +1 -0
  269. package/dist/src/components/Company/PaySchedule/shared/usePayScheduleForm/fields.d.ts +9 -1
  270. package/dist/src/components/Company/PaySchedule/shared/usePayScheduleForm/index.d.ts +2 -2
  271. package/dist/src/components/Company/PaySchedule/shared/usePayScheduleForm/payScheduleSchema.d.ts +21 -5
  272. package/dist/src/components/Company/PaySchedule/shared/usePayScheduleForm/usePayScheduleForm.d.ts +21 -3
  273. package/dist/src/components/Contractor/ContractorList/management/ManagementContractorListView.d.ts +3 -1
  274. package/dist/src/components/Contractor/ContractorList/onboarding/ContractorListView.d.ts +3 -1
  275. package/dist/src/components/Contractor/Payments/CreatePayment/CreatePaymentPresentation.d.ts +3 -1
  276. package/dist/src/components/Contractor/Payments/CreatePayment/PreviewPresentation.d.ts +3 -1
  277. package/dist/src/components/Contractor/Payments/PaymentHistory/PaymentHistoryPresentation.d.ts +3 -1
  278. package/dist/src/components/Contractor/Payments/PaymentStatement/PaymentStatementPresentation.d.ts +3 -1
  279. package/dist/src/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.d.ts +3 -1
  280. package/dist/src/components/Contractor/Submit/SubmitDone.d.ts +3 -1
  281. package/dist/src/components/Employee/Compensation/management/CompensationEditForm/CompensationEditForm.d.ts +1 -1
  282. package/dist/src/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibilityPresentation.d.ts +3 -1
  283. package/dist/src/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocumentsPresentation.d.ts +3 -1
  284. package/dist/src/components/Employee/EmployeeList/management/ManagementEmployeeListView.d.ts +3 -1
  285. package/dist/src/components/Employee/EmployeeList/onboarding/EmployeeListView.d.ts +3 -1
  286. package/dist/src/components/Employee/EmployeeList/shared/useEmployeeList.d.ts +4 -0
  287. package/dist/src/components/Employee/HomeAddress/management/HomeAddressView.d.ts +3 -1
  288. package/dist/src/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.d.ts +3 -1
  289. package/dist/src/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.d.ts +3 -1
  290. package/dist/src/components/Employee/WorkAddress/management/WorkAddressView.d.ts +3 -1
  291. package/dist/src/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.d.ts +3 -1
  292. package/dist/src/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.d.ts +1 -1
  293. package/dist/src/components/Payroll/OffCycleCreation/OffCycleCreationTypes.d.ts +2 -0
  294. package/dist/src/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.d.ts +3 -1
  295. package/dist/src/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.d.ts +3 -1
  296. package/dist/src/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.d.ts +3 -1
  297. package/dist/src/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/fields.d.ts +9 -9
  298. package/dist/src/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/payrollEditEmployeeHelpers.d.ts +2 -2
  299. package/dist/src/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/payrollEditEmployeeSchema.d.ts +4 -4
  300. package/dist/src/components/Payroll/PayrollHistory/PayrollHistoryPresentation.d.ts +3 -1
  301. package/dist/src/components/Payroll/PayrollList/PayrollListPresentation.d.ts +3 -1
  302. package/dist/src/components/Payroll/PayrollOverview/PayrollOverviewPresentation.d.ts +2 -1
  303. package/dist/src/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.d.ts +2 -1
  304. package/dist/src/components/Payroll/TransitionCreation/TransitionCreationPresentation.d.ts +1 -1
  305. package/dist/src/components/Payroll/TransitionCreation/TransitionCreationTypes.d.ts +2 -0
  306. package/dist/src/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlert.d.ts +3 -1
  307. package/dist/src/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.d.ts +1 -1
  308. package/dist/src/components/TimeOff/AddEmployeesHoliday/AddEmployeesHoliday.d.ts +1 -1
  309. package/dist/src/components/TimeOff/AddEmployeesToPolicy/AddEmployeesToPolicy.d.ts +1 -1
  310. package/dist/src/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailPresentation.d.ts +1 -1
  311. package/dist/src/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailTypes.d.ts +2 -0
  312. package/dist/src/components/TimeOff/HolidaySelectionForm/HolidaySelectionFormTypes.d.ts +2 -0
  313. package/dist/src/components/TimeOff/PolicyList/PolicyListPresentation.d.ts +1 -1
  314. package/dist/src/components/TimeOff/PolicyList/PolicyListTypes.d.ts +2 -0
  315. package/dist/src/components/TimeOff/PolicySettings/PolicySettingsPresentation.d.ts +1 -1
  316. package/dist/src/components/TimeOff/PolicySettings/PolicySettingsTypes.d.ts +2 -0
  317. package/dist/src/components/TimeOff/PolicyTypeSelector/PolicyTypeSelectorPresentation.d.ts +1 -1
  318. package/dist/src/components/TimeOff/PolicyTypeSelector/PolicyTypeSelectorTypes.d.ts +2 -0
  319. package/dist/src/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormPresentation.d.ts +1 -1
  320. package/dist/src/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormTypes.d.ts +2 -0
  321. package/dist/src/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesHoliday.d.ts +2 -0
  322. package/dist/src/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentation.d.ts +1 -1
  323. package/dist/src/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentationTypes.d.ts +2 -0
  324. package/dist/src/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesTimeOff.d.ts +2 -0
  325. package/dist/src/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetailPresentation.d.ts +1 -1
  326. package/dist/src/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetailTypes.d.ts +3 -0
  327. package/dist/src/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayout.d.ts +1 -1
  328. package/dist/src/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayoutTypes.d.ts +2 -0
  329. package/dist/src/contexts/ComponentAdapter/componentAdapterTypes.d.ts +1 -0
  330. package/dist/src/contexts/ComponentAdapter/useComponentContext.d.ts +4 -1
  331. package/dist/src/contexts/UnstableFeaturesProvider/useUnstableFeature.d.ts +4 -1
  332. package/dist/src/i18n/types.d.ts +28 -2
  333. package/dist/src/index.d.ts +1 -1
  334. package/dist/src/models/external.d.ts +1 -0
  335. package/dist/style.css +1 -1
  336. package/package.json +16 -15
@@ -1,34 +1,36 @@
1
- import { jsx as r, jsxs as o, Fragment as V } from "react/jsx-runtime";
2
- import { useRef as _ } from "react";
3
- import { useTranslation as z, Trans as K } from "react-i18next";
4
- import { useFormatEmployeePayRate as W, getRegularHours as X, getOvertimeHours as q, formatHoursDisplay as R, getTotalPtoHours as J, getAdditionalEarnings as Q, getReimbursements as Y, calculateGrossPay as Z } from "../helpers.js";
1
+ import { jsx as r, jsxs as o, Fragment as _ } from "react/jsx-runtime";
2
+ import { useRef as z } from "react";
3
+ import K from "classnames";
4
+ import { useTranslation as W, Trans as X } from "react-i18next";
5
+ import { useFormatEmployeePayRate as q, getRegularHours as J, getOvertimeHours as Q, formatHoursDisplay as R, getTotalPtoHours as Y, getAdditionalEarnings as Z, getReimbursements as $, calculateGrossPay as ee } from "../helpers.js";
5
6
  import { PayrollCategory as E } from "../payrollTypes.js";
6
- import { PayrollBlockerAlerts as $ } from "../PayrollBlocker/components/PayrollBlockerAlerts.js";
7
- import ee from "./PayrollConfigurationPresentation.module.scss.js";
8
- import { useI18n as te } from "../../../i18n/I18n.js";
7
+ import { PayrollBlockerAlerts as te } from "../PayrollBlocker/components/PayrollBlockerAlerts.js";
8
+ import re from "./PayrollConfigurationPresentation.module.scss.js";
9
+ import { useI18n as ne } from "../../../i18n/I18n.js";
9
10
  import { Flex as u, FlexItem as b } from "../../Common/Flex/Flex.js";
10
- import { Grid as re } from "../../Common/Grid/Grid.js";
11
- import { HamburgerMenu as ne } from "../../Common/HamburgerMenu/HamburgerMenu.js";
12
- import { useComponentContext as oe } from "../../../contexts/ComponentAdapter/useComponentContext.js";
13
- import ie from "../../../assets/icons/pencil.svg.js";
14
- import le from "../../../assets/icons/x-circle.svg.js";
15
- import ae from "../../../assets/icons/plus-circle.svg.js";
16
- import se from "../../../assets/icons/coins-hand.svg.js";
17
- import { formatNumberAsCurrency as p, firstLastName as me } from "../../../helpers/formattedStrings.js";
18
- import { useDateFormatter as ce } from "../../../hooks/useDateFormatter.js";
19
- import ue from "../../../hooks/useContainerBreakpoints/useContainerBreakpoints.js";
20
- import { useUnstableFeature as de } from "../../../contexts/UnstableFeaturesProvider/useUnstableFeature.js";
21
- import { PayrollLoading as pe } from "../../Common/PayrollLoading/PayrollLoading.js";
22
- import { DataView as fe } from "../../Common/DataView/DataView.js";
23
- const ge = (l, f) => l?.startDate && l.endDate ? f.formatPayPeriod(l.startDate, l.endDate) : { startDate: "", endDate: "" }, Se = ({
24
- employeeCompensations: l,
25
- employeeDetails: f,
11
+ import { Grid as oe } from "../../Common/Grid/Grid.js";
12
+ import { HamburgerMenu as ie } from "../../Common/HamburgerMenu/HamburgerMenu.js";
13
+ import { useComponentContext as le } from "../../../contexts/ComponentAdapter/useComponentContext.js";
14
+ import ae from "../../../assets/icons/pencil.svg.js";
15
+ import se from "../../../assets/icons/x-circle.svg.js";
16
+ import me from "../../../assets/icons/plus-circle.svg.js";
17
+ import ce from "../../../assets/icons/coins-hand.svg.js";
18
+ import { formatNumberAsCurrency as p, firstLastName as ue } from "../../../helpers/formattedStrings.js";
19
+ import { useDateFormatter as de } from "../../../hooks/useDateFormatter.js";
20
+ import pe from "../../../hooks/useContainerBreakpoints/useContainerBreakpoints.js";
21
+ import { useUnstableFeature as fe } from "../../../contexts/UnstableFeaturesProvider/useUnstableFeature.js";
22
+ import { PayrollLoading as ge } from "../../Common/PayrollLoading/PayrollLoading.js";
23
+ import { DataView as ye } from "../../Common/DataView/DataView.js";
24
+ const he = (l, f) => l?.startDate && l.endDate ? f.formatPayPeriod(l.startDate, l.endDate) : { startDate: "", endDate: "" }, Ve = ({
25
+ className: l,
26
+ employeeCompensations: f,
27
+ employeeDetails: j,
26
28
  payPeriod: g,
27
- paySchedule: j,
28
- onEdit: w,
29
- onToggleExclude: H,
29
+ paySchedule: w,
30
+ onEdit: H,
31
+ onToggleExclude: M,
30
32
  onCalculatePayroll: D,
31
- onViewBlockers: M,
33
+ onViewBlockers: N,
32
34
  payrollCategory: y = E.Regular,
33
35
  alerts: P,
34
36
  payrollAlert: m,
@@ -36,18 +38,18 @@ const ge = (l, f) => l?.startDate && l.endDate ? f.formatPayPeriod(l.startDate,
36
38
  isCalculating: a,
37
39
  payrollBlockers: C = [],
38
40
  pagination: F,
39
- withReimbursements: N = !0,
41
+ withReimbursements: U = !0,
40
42
  isCalculateDisabled: k = !1,
41
- grossUpEnabled: U = !1,
42
- onGrossUpSelect: B
43
+ grossUpEnabled: B = !1,
44
+ onGrossUpSelect: G
43
45
  }) => {
44
- const { Button: x, Heading: T, Text: d, Badge: G, Alert: I } = oe();
45
- te("Payroll.PayrollConfiguration");
46
- const { t } = z("Payroll.PayrollConfiguration"), O = ce(), S = W(), A = de("payrollRegularRateOfPay"), v = _(null), s = ue({ ref: v }).includes("small"), c = new Map(f.map((e) => [e.uuid, e])), L = (e) => {
46
+ const { Button: x, Heading: T, Text: d, Badge: I, Alert: O } = le();
47
+ ne("Payroll.PayrollConfiguration");
48
+ const { t } = W("Payroll.PayrollConfiguration"), S = de(), A = q(), L = fe("payrollRegularRateOfPay"), v = z(null), s = pe({ ref: v }).includes("small"), c = new Map(j.map((e) => [e.uuid, e])), V = (e) => {
47
49
  const n = c.get(e);
48
- return (n ? me({ first_name: n.firstName, last_name: n.lastName }) : "") || t("unknownEmployeeFallback");
50
+ return (n ? ue({ first_name: n.firstName, last_name: n.lastName }) : "") || t("unknownEmployeeFallback");
49
51
  };
50
- return /* @__PURE__ */ r("div", { ref: v, className: ee.container, children: /* @__PURE__ */ o(u, { flexDirection: "column", gap: 32, children: [
52
+ return /* @__PURE__ */ r("div", { ref: v, className: K(re.container, l), children: /* @__PURE__ */ o(u, { flexDirection: "column", gap: 32, children: [
51
53
  /* @__PURE__ */ o(
52
54
  u,
53
55
  {
@@ -59,13 +61,13 @@ const ge = (l, f) => l?.startDate && l.endDate ? f.formatPayPeriod(l.startDate,
59
61
  /* @__PURE__ */ o(b, { children: [
60
62
  /* @__PURE__ */ r(T, { as: "h1", children: t("pageTitle") }),
61
63
  g && /* @__PURE__ */ r(d, { variant: "supporting", children: /* @__PURE__ */ r(
62
- K,
64
+ X,
63
65
  {
64
66
  i18nKey: y === E.Dismissal ? "descriptionDismissal" : "description",
65
67
  t,
66
68
  components: { dateWrapper: /* @__PURE__ */ r(d, { weight: "bold", as: "span" }) },
67
69
  values: {
68
- ...ge(g, O),
70
+ ...he(g, S),
69
71
  payrollType: y
70
72
  }
71
73
  }
@@ -91,22 +93,22 @@ const ge = (l, f) => l?.startDate && l.endDate ? f.formatPayPeriod(l.startDate,
91
93
  ]
92
94
  }
93
95
  ),
94
- (P || m) && /* @__PURE__ */ o(re, { gap: 16, gridTemplateColumns: "1fr", children: [
95
- m && /* @__PURE__ */ r(I, { label: m.label, status: m.variant, children: m.content }),
96
+ (P || m) && /* @__PURE__ */ o(oe, { gap: 16, gridTemplateColumns: "1fr", children: [
97
+ m && /* @__PURE__ */ r(O, { label: m.label, status: m.variant, children: m.content }),
96
98
  P
97
99
  ] }),
98
100
  h ? /* @__PURE__ */ r(
99
- pe,
101
+ ge,
100
102
  {
101
103
  title: t(a ? "calculatingTitle" : "loadingTitle"),
102
104
  description: t(a ? "calculatingDescription" : "loadingDescription")
103
105
  }
104
- ) : /* @__PURE__ */ o(V, { children: [
106
+ ) : /* @__PURE__ */ o(_, { children: [
105
107
  C.length > 0 && /* @__PURE__ */ r(
106
- $,
108
+ te,
107
109
  {
108
110
  blockers: C,
109
- onViewBlockersClick: M
111
+ onViewBlockersClick: N
110
112
  }
111
113
  ),
112
114
  /* @__PURE__ */ o(u, { flexDirection: "column", gap: 20, children: [
@@ -115,18 +117,18 @@ const ge = (l, f) => l?.startDate && l.endDate ? f.formatPayPeriod(l.startDate,
115
117
  /* @__PURE__ */ r(d, { variant: "supporting", children: t("hoursAndEarningsDescription") })
116
118
  ] }),
117
119
  /* @__PURE__ */ r(
118
- fe,
120
+ ye,
119
121
  {
120
122
  label: t("employeeCompensationsTitle"),
121
123
  columns: [
122
124
  {
123
125
  title: t("tableColumns.employees"),
124
126
  render: (e) => {
125
- const n = c.get(e.employeeUuid || ""), i = S(n);
127
+ const n = c.get(e.employeeUuid || ""), i = A(n);
126
128
  return /* @__PURE__ */ o(u, { flexDirection: "column", gap: 0, children: [
127
- L(e.employeeUuid || ""),
129
+ V(e.employeeUuid || ""),
128
130
  i && /* @__PURE__ */ r(d, { size: "xs", variant: "supporting", children: i }),
129
- e.excluded && /* @__PURE__ */ r(G, { status: "warning", children: t("skippedBadge") })
131
+ e.excluded && /* @__PURE__ */ r(I, { status: "warning", children: t("skippedBadge") })
130
132
  ] });
131
133
  }
132
134
  },
@@ -134,7 +136,7 @@ const ge = (l, f) => l?.startDate && l.endDate ? f.formatPayPeriod(l.startDate,
134
136
  title: t("tableColumns.hours"),
135
137
  justify: "end",
136
138
  render: (e) => {
137
- const n = X(e), i = q(e);
139
+ const n = J(e), i = Q(e);
138
140
  return R(n + i);
139
141
  }
140
142
  },
@@ -142,7 +144,7 @@ const ge = (l, f) => l?.startDate && l.endDate ? f.formatPayPeriod(l.startDate,
142
144
  title: t("tableColumns.timeOff"),
143
145
  justify: "end",
144
146
  render: (e) => {
145
- const n = J(e);
147
+ const n = Y(e);
146
148
  return R(n);
147
149
  }
148
150
  },
@@ -150,16 +152,16 @@ const ge = (l, f) => l?.startDate && l.endDate ? f.formatPayPeriod(l.startDate,
150
152
  title: t("tableColumns.additionalEarnings"),
151
153
  justify: "end",
152
154
  render: (e) => {
153
- const n = Q(e);
155
+ const n = Z(e);
154
156
  return p(n);
155
157
  }
156
158
  },
157
- ...N ? [
159
+ ...U ? [
158
160
  {
159
161
  title: t("tableColumns.reimbursements"),
160
162
  justify: "end",
161
163
  render: (e) => {
162
- const n = Y(e);
164
+ const n = $(e);
163
165
  return p(n);
164
166
  }
165
167
  }
@@ -168,45 +170,45 @@ const ge = (l, f) => l?.startDate && l.endDate ? f.formatPayPeriod(l.startDate,
168
170
  title: t("tableColumns.totalPay"),
169
171
  justify: "end",
170
172
  render: (e) => {
171
- if (A)
173
+ if (L)
172
174
  return p(Number(e.grossPay ?? 0));
173
- const n = c.get(e.employeeUuid || ""), i = n ? Z(
175
+ const n = c.get(e.employeeUuid || ""), i = n ? ee(
174
176
  e,
175
177
  n,
176
178
  g?.startDate,
177
- j,
179
+ w,
178
180
  y
179
181
  ) : 0;
180
182
  return p(i);
181
183
  }
182
184
  }
183
185
  ],
184
- data: l,
186
+ data: f,
185
187
  itemMenu: (e) => /* @__PURE__ */ r(
186
- ne,
188
+ ie,
187
189
  {
188
190
  items: [
189
191
  {
190
192
  label: t("editMenu.edit"),
191
- icon: /* @__PURE__ */ r(ie, { "aria-hidden": !0 }),
193
+ icon: /* @__PURE__ */ r(ae, { "aria-hidden": !0 }),
192
194
  onClick: () => {
193
195
  const n = c.get(e.employeeUuid || "");
194
- n && w(n);
196
+ n && H(n);
195
197
  }
196
198
  },
197
199
  {
198
200
  label: t(e.excluded ? "editMenu.unskip" : "editMenu.skip"),
199
- icon: e.excluded ? /* @__PURE__ */ r(ae, { "aria-hidden": !0 }) : /* @__PURE__ */ r(le, { "aria-hidden": !0 }),
201
+ icon: e.excluded ? /* @__PURE__ */ r(me, { "aria-hidden": !0 }) : /* @__PURE__ */ r(se, { "aria-hidden": !0 }),
200
202
  onClick: () => {
201
- c.get(e.employeeUuid || "") && H(e);
203
+ c.get(e.employeeUuid || "") && M(e);
202
204
  }
203
205
  },
204
- ...U ? [
206
+ ...B ? [
205
207
  {
206
208
  label: t("editMenu.setNetEarnings"),
207
- icon: /* @__PURE__ */ r(se, { "aria-hidden": !0 }),
209
+ icon: /* @__PURE__ */ r(ce, { "aria-hidden": !0 }),
208
210
  onClick: () => {
209
- e.employeeUuid && B?.(e.employeeUuid);
211
+ e.employeeUuid && G?.(e.employeeUuid);
210
212
  }
211
213
  }
212
214
  ] : []
@@ -222,6 +224,6 @@ const ge = (l, f) => l?.startDate && l.endDate ? f.formatPayPeriod(l.startDate,
222
224
  ] }) });
223
225
  };
224
226
  export {
225
- Se as PayrollConfigurationPresentation
227
+ Ve as PayrollConfigurationPresentation
226
228
  };
227
229
  //# 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 { useRef } from 'react'\nimport type { PayrollEmployeeCompensationsType } from '@gusto/embedded-api/models/components/payrollemployeecompensationstype'\nimport type { Employee } from '@gusto/embedded-api/models/components/employee'\nimport type { PayrollPayPeriodType } from '@gusto/embedded-api/models/components/payrollpayperiodtype'\nimport type { PayScheduleShow as PayScheduleObject } from '@gusto/embedded-api/models/components/payscheduleshow'\nimport { Trans, useTranslation } from 'react-i18next'\nimport {\n useFormatEmployeePayRate,\n getRegularHours,\n getOvertimeHours,\n getTotalPtoHours,\n getAdditionalEarnings,\n getReimbursements,\n formatHoursDisplay,\n calculateGrossPay,\n} from '../helpers'\nimport { PayrollCategory } from '../payrollTypes'\nimport type { ApiPayrollBlocker } from '../PayrollBlocker/payrollHelpers'\nimport { PayrollBlockerAlerts } from '../PayrollBlocker/components/PayrollBlockerAlerts'\nimport styles from './PayrollConfigurationPresentation.module.scss'\nimport { useI18n } from '@/i18n'\nimport { DataView, Flex, FlexItem, Grid, PayrollLoading } from '@/components/Common'\nimport type { PaginationControlProps } from '@/components/Common/PaginationControl/PaginationControlTypes'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { HamburgerMenu } from '@/components/Common/HamburgerMenu'\nimport PencilSvg from '@/assets/icons/pencil.svg?react'\nimport XCircle from '@/assets/icons/x-circle.svg?react'\nimport PlusCircle from '@/assets/icons/plus-circle.svg?react'\nimport CoinsHandSvg from '@/assets/icons/coins-hand.svg?react'\nimport { firstLastName, formatNumberAsCurrency } from '@/helpers/formattedStrings'\nimport { useDateFormatter } from '@/hooks/useDateFormatter'\nimport useContainerBreakpoints from '@/hooks/useContainerBreakpoints/useContainerBreakpoints'\nimport { useUnstableFeature } from '@/contexts/UnstableFeaturesProvider/useUnstableFeature'\n\ninterface PayrollConfigurationPresentationProps {\n employeeCompensations: PayrollEmployeeCompensationsType[]\n employeeDetails: Employee[]\n payPeriod?: PayrollPayPeriodType\n paySchedule?: PayScheduleObject\n onCalculatePayroll: () => void\n onEdit: (employee: Employee) => void\n onToggleExclude: (employeeCompensation: PayrollEmployeeCompensationsType) => void\n onViewBlockers: () => void\n payrollCategory?: PayrollCategory\n alerts?: ReactNode\n payrollAlert?: {\n label: string\n content?: ReactNode\n variant: 'info' | 'warning'\n }\n isPending?: boolean\n isCalculating?: boolean\n payrollBlockers?: ApiPayrollBlocker[]\n pagination?: PaginationControlProps\n withReimbursements?: boolean\n isCalculateDisabled?: boolean\n grossUpEnabled?: boolean\n onGrossUpSelect?: (employeeUuid: string) => void\n}\n\nconst getPayrollConfigurationTitle = (\n payPeriod: PayrollPayPeriodType | undefined,\n dateFormatter: ReturnType<typeof useDateFormatter>,\n) => {\n if (payPeriod?.startDate && payPeriod.endDate) {\n return dateFormatter.formatPayPeriod(payPeriod.startDate, payPeriod.endDate)\n }\n return { startDate: '', endDate: '' }\n}\n\n/** @internal */\nexport const PayrollConfigurationPresentation = ({\n employeeCompensations,\n employeeDetails,\n payPeriod,\n paySchedule,\n onEdit,\n onToggleExclude,\n onCalculatePayroll,\n onViewBlockers,\n payrollCategory = PayrollCategory.Regular,\n alerts,\n payrollAlert,\n isPending,\n isCalculating,\n payrollBlockers = [],\n pagination,\n withReimbursements = true,\n isCalculateDisabled = false,\n grossUpEnabled = false,\n onGrossUpSelect,\n}: PayrollConfigurationPresentationProps) => {\n const { Button, Heading, Text, Badge, Alert } = useComponentContext()\n useI18n('Payroll.PayrollConfiguration')\n const { t } = useTranslation('Payroll.PayrollConfiguration')\n const dateFormatter = useDateFormatter()\n const formatEmployeePayRate = useFormatEmployeePayRate()\n const isRegularRateOfPayEnabled = useUnstableFeature('payrollRegularRateOfPay')\n const containerRef = useRef<HTMLDivElement>(null)\n const breakpoints = useContainerBreakpoints({ ref: containerRef })\n const isDesktop = breakpoints.includes('small')\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 const name = employee\n ? firstLastName({ first_name: employee.firstName, last_name: employee.lastName })\n : ''\n return name || t('unknownEmployeeFallback')\n }\n\n return (\n <div ref={containerRef} className={styles.container}>\n <Flex flexDirection=\"column\" gap={32}>\n <Flex\n flexDirection={isDesktop ? 'row' : 'column'}\n justifyContent={isDesktop ? 'space-between' : 'normal'}\n alignItems={isDesktop ? 'center' : 'stretch'}\n gap={isDesktop ? 0 : 16}\n >\n <FlexItem>\n <Heading as=\"h1\">{t('pageTitle')}</Heading>\n {payPeriod && (\n <Text variant=\"supporting\">\n <Trans\n i18nKey={\n payrollCategory === PayrollCategory.Dismissal\n ? 'descriptionDismissal'\n : 'description'\n }\n t={t}\n components={{ dateWrapper: <Text weight=\"bold\" as=\"span\" /> }}\n values={{\n ...getPayrollConfigurationTitle(payPeriod, dateFormatter),\n payrollType: payrollCategory,\n }}\n />\n </Text>\n )}\n </FlexItem>\n <FlexItem flexGrow={isDesktop ? 0 : 0}>\n {isDesktop ? (\n <Button\n title={t('calculatePayrollTitle')}\n onClick={onCalculatePayroll}\n isDisabled={isCalculateDisabled || isPending || isCalculating}\n >\n {isCalculating ? t('calculatingPayroll') : t('calculatePayroll')}\n </Button>\n ) : (\n <Flex flexDirection=\"column\" justifyContent=\"normal\" alignItems=\"stretch\" gap={12}>\n <Button\n title={t('calculatePayrollTitle')}\n onClick={onCalculatePayroll}\n isDisabled={isCalculateDisabled || isPending || isCalculating}\n >\n {isCalculating ? t('calculatingPayroll') : t('calculatePayroll')}\n </Button>\n </Flex>\n )}\n </FlexItem>\n </Flex>\n\n {(alerts || payrollAlert) && (\n <Grid gap={16} gridTemplateColumns=\"1fr\">\n {payrollAlert && (\n <Alert label={payrollAlert.label} status={payrollAlert.variant}>\n {payrollAlert.content}\n </Alert>\n )}\n {alerts}\n </Grid>\n )}\n\n {isPending ? (\n <PayrollLoading\n title={isCalculating ? t('calculatingTitle') : t('loadingTitle')}\n description={isCalculating ? t('calculatingDescription') : t('loadingDescription')}\n />\n ) : (\n <>\n {payrollBlockers.length > 0 && (\n <PayrollBlockerAlerts\n blockers={payrollBlockers}\n onViewBlockersClick={onViewBlockers}\n />\n )}\n <Flex flexDirection=\"column\" gap={20}>\n <FlexItem>\n <Heading as=\"h2\" styledAs=\"h3\">\n {t('hoursAndEarningsTitle')}\n </Heading>\n <Text variant=\"supporting\">{t('hoursAndEarningsDescription')}</Text>\n </FlexItem>\n\n <DataView\n label={t('employeeCompensationsTitle')}\n columns={[\n {\n title: t('tableColumns.employees'),\n render: (item: PayrollEmployeeCompensationsType) => {\n const employee = employeeMap.get(item.employeeUuid || '')\n const payRateDisplay = formatEmployeePayRate(employee)\n return (\n <Flex flexDirection=\"column\" gap={0}>\n {getEmployeeName(item.employeeUuid || '')}\n {payRateDisplay && (\n <Text size=\"xs\" variant=\"supporting\">\n {payRateDisplay}\n </Text>\n )}\n {item.excluded && <Badge status=\"warning\">{t('skippedBadge')}</Badge>}\n </Flex>\n )\n },\n },\n {\n title: t('tableColumns.hours'),\n justify: 'end',\n render: (item: PayrollEmployeeCompensationsType) => {\n const hours = getRegularHours(item)\n const overtimeHours = getOvertimeHours(item)\n return formatHoursDisplay(hours + overtimeHours)\n },\n },\n {\n title: t('tableColumns.timeOff'),\n justify: 'end',\n render: (item: PayrollEmployeeCompensationsType) => {\n const ptoHours = getTotalPtoHours(item)\n return formatHoursDisplay(ptoHours)\n },\n },\n {\n title: t('tableColumns.additionalEarnings'),\n justify: 'end',\n render: (item: PayrollEmployeeCompensationsType) => {\n const earnings = getAdditionalEarnings(item)\n return formatNumberAsCurrency(earnings)\n },\n },\n ...(withReimbursements\n ? [\n {\n title: t('tableColumns.reimbursements'),\n justify: 'end' as const,\n render: (item: PayrollEmployeeCompensationsType) => {\n const reimbursements = getReimbursements(item)\n return formatNumberAsCurrency(reimbursements)\n },\n },\n ]\n : []),\n {\n title: t('tableColumns.totalPay'),\n justify: 'end',\n render: (item: PayrollEmployeeCompensationsType) => {\n if (isRegularRateOfPayEnabled) {\n return formatNumberAsCurrency(Number(item.grossPay ?? 0))\n }\n const employee = employeeMap.get(item.employeeUuid || '')\n const calculatedGrossPay = employee\n ? calculateGrossPay(\n item,\n employee,\n payPeriod?.startDate,\n paySchedule,\n payrollCategory,\n )\n : 0\n return formatNumberAsCurrency(calculatedGrossPay)\n },\n },\n ]}\n data={employeeCompensations}\n itemMenu={(item: PayrollEmployeeCompensationsType) => (\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 label: t(item.excluded ? 'editMenu.unskip' : 'editMenu.skip'),\n icon: item.excluded ? <PlusCircle aria-hidden /> : <XCircle aria-hidden />,\n onClick: () => {\n const employee = employeeMap.get(item.employeeUuid || '')\n if (employee) {\n onToggleExclude(item)\n }\n },\n },\n ...(grossUpEnabled\n ? [\n {\n label: t('editMenu.setNetEarnings'),\n icon: <CoinsHandSvg aria-hidden />,\n onClick: () => {\n if (item.employeeUuid) {\n onGrossUpSelect?.(item.employeeUuid)\n }\n },\n },\n ]\n : []),\n ]}\n triggerLabel={t('editMenu.edit')}\n />\n )}\n pagination={pagination}\n />\n </Flex>\n </>\n )}\n </Flex>\n </div>\n )\n}\n"],"names":["getPayrollConfigurationTitle","payPeriod","dateFormatter","PayrollConfigurationPresentation","employeeCompensations","employeeDetails","paySchedule","onEdit","onToggleExclude","onCalculatePayroll","onViewBlockers","payrollCategory","PayrollCategory","alerts","payrollAlert","isPending","isCalculating","payrollBlockers","pagination","withReimbursements","isCalculateDisabled","grossUpEnabled","onGrossUpSelect","Button","Heading","Text","Badge","Alert","useComponentContext","useI18n","useTranslation","useDateFormatter","formatEmployeePayRate","useFormatEmployeePayRate","isRegularRateOfPayEnabled","useUnstableFeature","containerRef","useRef","isDesktop","useContainerBreakpoints","employeeMap","employee","getEmployeeName","employeeUuid","firstLastName","jsx","styles","jsxs","Flex","FlexItem","Trans","Grid","PayrollLoading","Fragment","PayrollBlockerAlerts","DataView","item","payRateDisplay","hours","getRegularHours","overtimeHours","getOvertimeHours","formatHoursDisplay","ptoHours","getTotalPtoHours","earnings","getAdditionalEarnings","formatNumberAsCurrency","reimbursements","getReimbursements","calculatedGrossPay","calculateGrossPay","HamburgerMenu","PencilSvg","PlusCircle","XCircle","CoinsHandSvg"],"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 { useRef } from 'react'\nimport classNames from 'classnames'\nimport type { PayrollEmployeeCompensationsType } from '@gusto/embedded-api/models/components/payrollemployeecompensationstype'\nimport type { Employee } from '@gusto/embedded-api/models/components/employee'\nimport type { PayrollPayPeriodType } from '@gusto/embedded-api/models/components/payrollpayperiodtype'\nimport type { PayScheduleShow as PayScheduleObject } from '@gusto/embedded-api/models/components/payscheduleshow'\nimport { Trans, useTranslation } from 'react-i18next'\nimport {\n useFormatEmployeePayRate,\n getRegularHours,\n getOvertimeHours,\n getTotalPtoHours,\n getAdditionalEarnings,\n getReimbursements,\n formatHoursDisplay,\n calculateGrossPay,\n} from '../helpers'\nimport { PayrollCategory } from '../payrollTypes'\nimport type { ApiPayrollBlocker } from '../PayrollBlocker/payrollHelpers'\nimport { PayrollBlockerAlerts } from '../PayrollBlocker/components/PayrollBlockerAlerts'\nimport styles from './PayrollConfigurationPresentation.module.scss'\nimport { useI18n } from '@/i18n'\nimport { DataView, Flex, FlexItem, Grid, PayrollLoading } from '@/components/Common'\nimport type { PaginationControlProps } from '@/components/Common/PaginationControl/PaginationControlTypes'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { HamburgerMenu } from '@/components/Common/HamburgerMenu'\nimport PencilSvg from '@/assets/icons/pencil.svg?react'\nimport XCircle from '@/assets/icons/x-circle.svg?react'\nimport PlusCircle from '@/assets/icons/plus-circle.svg?react'\nimport CoinsHandSvg from '@/assets/icons/coins-hand.svg?react'\nimport { firstLastName, formatNumberAsCurrency } from '@/helpers/formattedStrings'\nimport { useDateFormatter } from '@/hooks/useDateFormatter'\nimport useContainerBreakpoints from '@/hooks/useContainerBreakpoints/useContainerBreakpoints'\nimport { useUnstableFeature } from '@/contexts/UnstableFeaturesProvider/useUnstableFeature'\n\ninterface PayrollConfigurationPresentationProps {\n /** CSS class name applied to the root element. */\n className?: string\n employeeCompensations: PayrollEmployeeCompensationsType[]\n employeeDetails: Employee[]\n payPeriod?: PayrollPayPeriodType\n paySchedule?: PayScheduleObject\n onCalculatePayroll: () => void\n onEdit: (employee: Employee) => void\n onToggleExclude: (employeeCompensation: PayrollEmployeeCompensationsType) => void\n onViewBlockers: () => void\n payrollCategory?: PayrollCategory\n alerts?: ReactNode\n payrollAlert?: {\n label: string\n content?: ReactNode\n variant: 'info' | 'warning'\n }\n isPending?: boolean\n isCalculating?: boolean\n payrollBlockers?: ApiPayrollBlocker[]\n pagination?: PaginationControlProps\n withReimbursements?: boolean\n isCalculateDisabled?: boolean\n grossUpEnabled?: boolean\n onGrossUpSelect?: (employeeUuid: string) => void\n}\n\nconst getPayrollConfigurationTitle = (\n payPeriod: PayrollPayPeriodType | undefined,\n dateFormatter: ReturnType<typeof useDateFormatter>,\n) => {\n if (payPeriod?.startDate && payPeriod.endDate) {\n return dateFormatter.formatPayPeriod(payPeriod.startDate, payPeriod.endDate)\n }\n return { startDate: '', endDate: '' }\n}\n\n/** @internal */\nexport const PayrollConfigurationPresentation = ({\n className,\n employeeCompensations,\n employeeDetails,\n payPeriod,\n paySchedule,\n onEdit,\n onToggleExclude,\n onCalculatePayroll,\n onViewBlockers,\n payrollCategory = PayrollCategory.Regular,\n alerts,\n payrollAlert,\n isPending,\n isCalculating,\n payrollBlockers = [],\n pagination,\n withReimbursements = true,\n isCalculateDisabled = false,\n grossUpEnabled = false,\n onGrossUpSelect,\n}: PayrollConfigurationPresentationProps) => {\n const { Button, Heading, Text, Badge, Alert } = useComponentContext()\n useI18n('Payroll.PayrollConfiguration')\n const { t } = useTranslation('Payroll.PayrollConfiguration')\n const dateFormatter = useDateFormatter()\n const formatEmployeePayRate = useFormatEmployeePayRate()\n const isRegularRateOfPayEnabled = useUnstableFeature('payrollRegularRateOfPay')\n const containerRef = useRef<HTMLDivElement>(null)\n const breakpoints = useContainerBreakpoints({ ref: containerRef })\n const isDesktop = breakpoints.includes('small')\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 const name = employee\n ? firstLastName({ first_name: employee.firstName, last_name: employee.lastName })\n : ''\n return name || t('unknownEmployeeFallback')\n }\n\n return (\n <div ref={containerRef} className={classNames(styles.container, className)}>\n <Flex flexDirection=\"column\" gap={32}>\n <Flex\n flexDirection={isDesktop ? 'row' : 'column'}\n justifyContent={isDesktop ? 'space-between' : 'normal'}\n alignItems={isDesktop ? 'center' : 'stretch'}\n gap={isDesktop ? 0 : 16}\n >\n <FlexItem>\n <Heading as=\"h1\">{t('pageTitle')}</Heading>\n {payPeriod && (\n <Text variant=\"supporting\">\n <Trans\n i18nKey={\n payrollCategory === PayrollCategory.Dismissal\n ? 'descriptionDismissal'\n : 'description'\n }\n t={t}\n components={{ dateWrapper: <Text weight=\"bold\" as=\"span\" /> }}\n values={{\n ...getPayrollConfigurationTitle(payPeriod, dateFormatter),\n payrollType: payrollCategory,\n }}\n />\n </Text>\n )}\n </FlexItem>\n <FlexItem flexGrow={isDesktop ? 0 : 0}>\n {isDesktop ? (\n <Button\n title={t('calculatePayrollTitle')}\n onClick={onCalculatePayroll}\n isDisabled={isCalculateDisabled || isPending || isCalculating}\n >\n {isCalculating ? t('calculatingPayroll') : t('calculatePayroll')}\n </Button>\n ) : (\n <Flex flexDirection=\"column\" justifyContent=\"normal\" alignItems=\"stretch\" gap={12}>\n <Button\n title={t('calculatePayrollTitle')}\n onClick={onCalculatePayroll}\n isDisabled={isCalculateDisabled || isPending || isCalculating}\n >\n {isCalculating ? t('calculatingPayroll') : t('calculatePayroll')}\n </Button>\n </Flex>\n )}\n </FlexItem>\n </Flex>\n\n {(alerts || payrollAlert) && (\n <Grid gap={16} gridTemplateColumns=\"1fr\">\n {payrollAlert && (\n <Alert label={payrollAlert.label} status={payrollAlert.variant}>\n {payrollAlert.content}\n </Alert>\n )}\n {alerts}\n </Grid>\n )}\n\n {isPending ? (\n <PayrollLoading\n title={isCalculating ? t('calculatingTitle') : t('loadingTitle')}\n description={isCalculating ? t('calculatingDescription') : t('loadingDescription')}\n />\n ) : (\n <>\n {payrollBlockers.length > 0 && (\n <PayrollBlockerAlerts\n blockers={payrollBlockers}\n onViewBlockersClick={onViewBlockers}\n />\n )}\n <Flex flexDirection=\"column\" gap={20}>\n <FlexItem>\n <Heading as=\"h2\" styledAs=\"h3\">\n {t('hoursAndEarningsTitle')}\n </Heading>\n <Text variant=\"supporting\">{t('hoursAndEarningsDescription')}</Text>\n </FlexItem>\n\n <DataView\n label={t('employeeCompensationsTitle')}\n columns={[\n {\n title: t('tableColumns.employees'),\n render: (item: PayrollEmployeeCompensationsType) => {\n const employee = employeeMap.get(item.employeeUuid || '')\n const payRateDisplay = formatEmployeePayRate(employee)\n return (\n <Flex flexDirection=\"column\" gap={0}>\n {getEmployeeName(item.employeeUuid || '')}\n {payRateDisplay && (\n <Text size=\"xs\" variant=\"supporting\">\n {payRateDisplay}\n </Text>\n )}\n {item.excluded && <Badge status=\"warning\">{t('skippedBadge')}</Badge>}\n </Flex>\n )\n },\n },\n {\n title: t('tableColumns.hours'),\n justify: 'end',\n render: (item: PayrollEmployeeCompensationsType) => {\n const hours = getRegularHours(item)\n const overtimeHours = getOvertimeHours(item)\n return formatHoursDisplay(hours + overtimeHours)\n },\n },\n {\n title: t('tableColumns.timeOff'),\n justify: 'end',\n render: (item: PayrollEmployeeCompensationsType) => {\n const ptoHours = getTotalPtoHours(item)\n return formatHoursDisplay(ptoHours)\n },\n },\n {\n title: t('tableColumns.additionalEarnings'),\n justify: 'end',\n render: (item: PayrollEmployeeCompensationsType) => {\n const earnings = getAdditionalEarnings(item)\n return formatNumberAsCurrency(earnings)\n },\n },\n ...(withReimbursements\n ? [\n {\n title: t('tableColumns.reimbursements'),\n justify: 'end' as const,\n render: (item: PayrollEmployeeCompensationsType) => {\n const reimbursements = getReimbursements(item)\n return formatNumberAsCurrency(reimbursements)\n },\n },\n ]\n : []),\n {\n title: t('tableColumns.totalPay'),\n justify: 'end',\n render: (item: PayrollEmployeeCompensationsType) => {\n if (isRegularRateOfPayEnabled) {\n return formatNumberAsCurrency(Number(item.grossPay ?? 0))\n }\n const employee = employeeMap.get(item.employeeUuid || '')\n const calculatedGrossPay = employee\n ? calculateGrossPay(\n item,\n employee,\n payPeriod?.startDate,\n paySchedule,\n payrollCategory,\n )\n : 0\n return formatNumberAsCurrency(calculatedGrossPay)\n },\n },\n ]}\n data={employeeCompensations}\n itemMenu={(item: PayrollEmployeeCompensationsType) => (\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 label: t(item.excluded ? 'editMenu.unskip' : 'editMenu.skip'),\n icon: item.excluded ? <PlusCircle aria-hidden /> : <XCircle aria-hidden />,\n onClick: () => {\n const employee = employeeMap.get(item.employeeUuid || '')\n if (employee) {\n onToggleExclude(item)\n }\n },\n },\n ...(grossUpEnabled\n ? [\n {\n label: t('editMenu.setNetEarnings'),\n icon: <CoinsHandSvg aria-hidden />,\n onClick: () => {\n if (item.employeeUuid) {\n onGrossUpSelect?.(item.employeeUuid)\n }\n },\n },\n ]\n : []),\n ]}\n triggerLabel={t('editMenu.edit')}\n />\n )}\n pagination={pagination}\n />\n </Flex>\n </>\n )}\n </Flex>\n </div>\n )\n}\n"],"names":["getPayrollConfigurationTitle","payPeriod","dateFormatter","PayrollConfigurationPresentation","className","employeeCompensations","employeeDetails","paySchedule","onEdit","onToggleExclude","onCalculatePayroll","onViewBlockers","payrollCategory","PayrollCategory","alerts","payrollAlert","isPending","isCalculating","payrollBlockers","pagination","withReimbursements","isCalculateDisabled","grossUpEnabled","onGrossUpSelect","Button","Heading","Text","Badge","Alert","useComponentContext","useI18n","useTranslation","useDateFormatter","formatEmployeePayRate","useFormatEmployeePayRate","isRegularRateOfPayEnabled","useUnstableFeature","containerRef","useRef","isDesktop","useContainerBreakpoints","employeeMap","employee","getEmployeeName","employeeUuid","firstLastName","jsx","classNames","styles","jsxs","Flex","FlexItem","Trans","Grid","PayrollLoading","Fragment","PayrollBlockerAlerts","DataView","item","payRateDisplay","hours","getRegularHours","overtimeHours","getOvertimeHours","formatHoursDisplay","ptoHours","getTotalPtoHours","earnings","getAdditionalEarnings","formatNumberAsCurrency","reimbursements","getReimbursements","calculatedGrossPay","calculateGrossPay","HamburgerMenu","PencilSvg","PlusCircle","XCircle","CoinsHandSvg"],"mappings":"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"}
@@ -1,39 +1,40 @@
1
1
  import { jsx as t } from "react/jsx-runtime";
2
- import { useEmployeesGetSuspense as k } from "@gusto/embedded-api/react-query/employeesGet";
3
- import { useEmployeePaymentMethodsGetBankAccountsSuspense as B } from "@gusto/embedded-api/react-query/employeePaymentMethodsGetBankAccounts";
4
- import { usePayrollsUpdateMutation as v } from "@gusto/embedded-api/react-query/payrollsUpdate";
5
- import { useMemo as x } from "react";
6
- import { useQueryClient as N } from "@tanstack/react-query";
7
- import { usePreparedPayrollData as q } from "../usePreparedPayrollData.js";
8
- import { PREPARE_QUERY_KEY as w } from "../PayrollConfiguration/usePayrollConfigurationData.js";
9
- import { derivePayrollCategory as M, isOffCyclePayroll as Q } from "../payrollTypes.js";
10
- import { cleanupReimbursements as T } from "../helpers.js";
11
- import { UNSTABLE_PayrollEditEmployee as z } from "../UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.js";
12
- import { PayrollEditEmployeePresentation as G } from "./PayrollEditEmployeePresentation.js";
13
- import { useUnstableFeature as H } from "../../../contexts/UnstableFeaturesProvider/useUnstableFeature.js";
2
+ import { useEmployeesGetSuspense as B } from "@gusto/embedded-api/react-query/employeesGet";
3
+ import { useEmployeePaymentMethodsGetBankAccountsSuspense as v } from "@gusto/embedded-api/react-query/employeePaymentMethodsGetBankAccounts";
4
+ import { usePayrollsUpdateMutation as x } from "@gusto/embedded-api/react-query/payrollsUpdate";
5
+ import { useMemo as N } from "react";
6
+ import { useQueryClient as q } from "@tanstack/react-query";
7
+ import { usePreparedPayrollData as w } from "../usePreparedPayrollData.js";
8
+ import { PREPARE_QUERY_KEY as M } from "../PayrollConfiguration/usePayrollConfigurationData.js";
9
+ import { derivePayrollCategory as Q, isOffCyclePayroll as T } from "../payrollTypes.js";
10
+ import { cleanupReimbursements as z } from "../helpers.js";
11
+ import { UNSTABLE_PayrollEditEmployee as G } from "../UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.js";
12
+ import { PayrollEditEmployeePresentation as H } from "./PayrollEditEmployeePresentation.js";
13
+ import { useUnstableFeature as K } from "../../../contexts/UnstableFeaturesProvider/useUnstableFeature.js";
14
14
  import { componentEvents as c } from "../../../shared/constants.js";
15
- import { BaseComponent as K } from "../../Base/Base.js";
16
- import { useComponentDictionary as j } from "../../../i18n/I18n.js";
17
- import { useBase as F } from "../../Base/useBase.js";
18
- function ce(e) {
19
- return H("payrollRegularRateOfPay") ? /* @__PURE__ */ t(z, { ...e }) : /* @__PURE__ */ t(K, { ...e, children: /* @__PURE__ */ t(V, { ...e, children: e.children }) });
15
+ import { BaseComponent as j } from "../../Base/Base.js";
16
+ import { useComponentDictionary as F } from "../../../i18n/I18n.js";
17
+ import { useBase as V } from "../../Base/useBase.js";
18
+ function ye(e) {
19
+ return K("payrollRegularRateOfPay") ? /* @__PURE__ */ t(G, { ...e }) : /* @__PURE__ */ t(j, { ...e, children: /* @__PURE__ */ t(W, { ...e, children: e.children }) });
20
20
  }
21
- const V = ({
21
+ const W = ({
22
22
  employeeId: e,
23
23
  companyId: n,
24
24
  payrollId: s,
25
25
  onEvent: i,
26
26
  dictionary: y,
27
- withReimbursements: d = !0
27
+ withReimbursements: d = !0,
28
+ className: f
28
29
  }) => {
29
- j("Payroll.PayrollEditEmployee", y);
30
- const f = N(), { LoadingIndicator: E, baseSubmitHandler: P } = F(), { data: C } = k({ employeeId: e }), { data: R } = B({
30
+ F("Payroll.PayrollEditEmployee", y);
31
+ const E = q(), { LoadingIndicator: P, baseSubmitHandler: C } = V(), { data: R } = B({ employeeId: e }), { data: A } = v({
31
32
  employeeId: e
32
- }), A = x(() => [e], [e]), { preparedPayroll: r, paySchedule: L, isLoading: b } = q({
33
+ }), L = N(() => [e], [e]), { preparedPayroll: r, paySchedule: b, isLoading: g } = w({
33
34
  companyId: n,
34
35
  payrollId: s,
35
- employeeUuids: A
36
- }), { mutateAsync: g, isPending: D } = v(), m = C.employee, S = r?.employeeCompensations?.at(0), _ = (R.employeeBankAccounts || []).length > 0, l = M(r ?? {}), O = !Q(l), U = ({
36
+ employeeUuids: L
37
+ }), { mutateAsync: D, isPending: S } = x(), m = R.employee, _ = r?.employeeCompensations?.at(0), O = (A.employeeBankAccounts || []).length > 0, l = Q(r ?? {}), U = !T(l), h = ({
37
38
  paymentMethod: o,
38
39
  reimbursements: a,
39
40
  customWithholdings: p,
@@ -46,11 +47,11 @@ const V = ({
46
47
  // itemized array gets rejected by the `emb_off_cycle_disable_named_reimbursements` backend
47
48
  // flag (default-on globally, expected removal 2026-09-01).
48
49
  // TODO(post-2026-09-01): drop the branch once the flag is gone.
49
- ...O && a ? { reimbursements: T(a) } : {}
50
- }), h = async (o) => {
51
- const a = U(o);
52
- await P(null, async () => {
53
- const p = await g({
50
+ ...U && a ? { reimbursements: z(a) } : {}
51
+ }), Y = async (o) => {
52
+ const a = h(o);
53
+ await C(null, async () => {
54
+ const p = await D({
54
55
  request: {
55
56
  companyId: n,
56
57
  payrollId: s,
@@ -59,34 +60,35 @@ const V = ({
59
60
  }
60
61
  }
61
62
  });
62
- await f.invalidateQueries({
63
- queryKey: [w, s]
63
+ await E.invalidateQueries({
64
+ queryKey: [M, s]
64
65
  }), i(c.RUN_PAYROLL_EMPLOYEE_SAVED, {
65
66
  payrollPrepared: p.payrollPrepared,
66
67
  employee: m
67
68
  });
68
69
  });
69
- }, Y = () => {
70
+ }, k = () => {
70
71
  i(c.RUN_PAYROLL_EMPLOYEE_CANCELLED);
71
72
  };
72
- return b ? /* @__PURE__ */ t(E, {}) : /* @__PURE__ */ t(
73
- G,
73
+ return g ? /* @__PURE__ */ t(P, {}) : /* @__PURE__ */ t(
74
+ H,
74
75
  {
75
- onSave: h,
76
- onCancel: Y,
76
+ className: f,
77
+ onSave: Y,
78
+ onCancel: k,
77
79
  employee: m,
78
- isPending: D,
79
- employeeCompensation: S,
80
+ isPending: S,
81
+ employeeCompensation: _,
80
82
  fixedCompensationTypes: r?.fixedCompensationTypes || [],
81
83
  payPeriodStartDate: r?.payPeriod?.startDate,
82
- paySchedule: L,
84
+ paySchedule: b,
83
85
  payrollCategory: l,
84
86
  withReimbursements: d,
85
- hasDirectDepositSetup: _
87
+ hasDirectDepositSetup: O
86
88
  }
87
89
  );
88
90
  };
89
91
  export {
90
- ce as PayrollEditEmployee
92
+ ye as PayrollEditEmployee
91
93
  };
92
94
  //# sourceMappingURL=PayrollEditEmployee.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PayrollEditEmployee.js","sources":["../../../../src/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.tsx"],"sourcesContent":["import { useEmployeesGetSuspense } from '@gusto/embedded-api/react-query/employeesGet'\nimport { useEmployeePaymentMethodsGetBankAccountsSuspense } from '@gusto/embedded-api/react-query/employeePaymentMethodsGetBankAccounts'\nimport { usePayrollsUpdateMutation } from '@gusto/embedded-api/react-query/payrollsUpdate'\nimport type { PayrollEmployeeCompensationsType } from '@gusto/embedded-api/models/components/payrollemployeecompensationstype'\nimport type { PayrollUpdateEmployeeCompensations } from '@gusto/embedded-api/models/components/payrollupdate'\nimport { useMemo } from 'react'\nimport { useQueryClient } from '@tanstack/react-query'\nimport { usePreparedPayrollData } from '../usePreparedPayrollData'\nimport { PREPARE_QUERY_KEY } from '../PayrollConfiguration/usePayrollConfigurationData'\nimport { derivePayrollCategory, isOffCyclePayroll } from '../payrollTypes'\nimport { cleanupReimbursements } from '../helpers'\nimport { UNSTABLE_PayrollEditEmployee } from '../UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee'\nimport { PayrollEditEmployeePresentation } from './PayrollEditEmployeePresentation'\nimport { useUnstableFeature } from '@/contexts/UnstableFeaturesProvider/useUnstableFeature'\nimport { componentEvents } from '@/shared/constants'\nimport type { BaseComponentInterface } from '@/components/Base/Base'\nimport { BaseComponent } from '@/components/Base/Base'\nimport { useComponentDictionary } from '@/i18n'\nimport { useBase } from '@/components/Base/useBase'\n\n/**\n * Props for {@link PayrollEditEmployee}.\n *\n * @public\n */\nexport interface PayrollEditEmployeeProps extends BaseComponentInterface<'Payroll.PayrollEditEmployee'> {\n /** The associated employee identifier. */\n employeeId: string\n /** The associated company identifier. */\n companyId: string\n /** The associated payroll identifier. */\n payrollId: string\n /** Whether to show reimbursement fields. Defaults to `true`. */\n withReimbursements?: boolean\n}\n\n/**\n * Editor for an individual employee's compensation within a payroll run.\n *\n * Allows modification of pay rates, hours, time off, additional earnings,\n * reimbursements, and payment method for a single employee on the specified payroll.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `runPayroll/employee/saved` | Fired when employee payroll compensation changes are saved | `{ payrollPrepared, employee }` |\n * | `runPayroll/employee/cancelled` | Fired when the user cancels editing employee payroll compensation | — |\n *\n * @param props - {@link PayrollEditEmployeeProps} plus base component props.\n * @returns The employee compensation editor.\n * @public\n *\n * @example\n * ```tsx\n * import { Payroll } from '@gusto/embedded-react-sdk'\n *\n * function MyComponent() {\n * return (\n * <Payroll.PayrollEditEmployee\n * employeeId=\"your-employee-id\"\n * companyId=\"your-company-id\"\n * payrollId=\"your-payroll-id\"\n * onEvent={() => {}}\n * />\n * )\n * }\n * ```\n */\nexport function PayrollEditEmployee(props: PayrollEditEmployeeProps) {\n const isRegularRateOfPayEnabled = useUnstableFeature('payrollRegularRateOfPay')\n\n if (isRegularRateOfPayEnabled) {\n return <UNSTABLE_PayrollEditEmployee {...props} />\n }\n\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nconst Root = ({\n employeeId,\n companyId,\n payrollId,\n onEvent,\n dictionary,\n withReimbursements = true,\n}: PayrollEditEmployeeProps) => {\n useComponentDictionary('Payroll.PayrollEditEmployee', dictionary)\n\n const queryClient = useQueryClient()\n const { LoadingIndicator, baseSubmitHandler } = useBase()\n\n const { data: employeeData } = useEmployeesGetSuspense({ employeeId })\n const { data: bankAccountsList } = useEmployeePaymentMethodsGetBankAccountsSuspense({\n employeeId,\n })\n const memoizedEmployeeId = useMemo(() => [employeeId], [employeeId])\n const { preparedPayroll, paySchedule, isLoading } = usePreparedPayrollData({\n companyId,\n payrollId,\n employeeUuids: memoizedEmployeeId,\n })\n\n const { mutateAsync: updatePayroll, isPending } = usePayrollsUpdateMutation()\n\n const employee = employeeData.employee!\n const employeeCompensation = preparedPayroll?.employeeCompensations?.at(0)\n const bankAccounts = bankAccountsList.employeeBankAccounts || []\n const hasDirectDepositSetup = bankAccounts.length > 0\n const payrollCategory = derivePayrollCategory(preparedPayroll ?? {})\n const usesItemizedReimbursements = !isOffCyclePayroll(payrollCategory)\n\n const transformEmployeeCompensation = ({\n paymentMethod,\n reimbursements,\n customWithholdings,\n ...compensation\n }: PayrollEmployeeCompensationsType): PayrollUpdateEmployeeCompensations => {\n return {\n ...compensation,\n ...(paymentMethod && paymentMethod !== 'Historical' ? { paymentMethod } : {}),\n memo: compensation.memo || undefined,\n // Off-cycle payrolls write reimbursements via the legacy fixed_compensations field; the\n // itemized array gets rejected by the `emb_off_cycle_disable_named_reimbursements` backend\n // flag (default-on globally, expected removal 2026-09-01).\n // TODO(post-2026-09-01): drop the branch once the flag is gone.\n ...(usesItemizedReimbursements && reimbursements\n ? { reimbursements: cleanupReimbursements(reimbursements) }\n : {}),\n }\n }\n\n const onSave = async (updatedCompensation: PayrollEmployeeCompensationsType) => {\n const transformedCompensation = transformEmployeeCompensation(updatedCompensation)\n await baseSubmitHandler(null, async () => {\n const result = await updatePayroll({\n request: {\n companyId,\n payrollId,\n payrollUpdate: {\n employeeCompensations: [transformedCompensation],\n },\n },\n })\n\n await queryClient.invalidateQueries({\n queryKey: [PREPARE_QUERY_KEY, payrollId],\n })\n\n onEvent(componentEvents.RUN_PAYROLL_EMPLOYEE_SAVED, {\n payrollPrepared: result.payrollPrepared,\n employee,\n })\n })\n }\n\n const onCancel = () => {\n onEvent(componentEvents.RUN_PAYROLL_EMPLOYEE_CANCELLED)\n }\n\n if (isLoading) {\n return <LoadingIndicator />\n }\n\n return (\n <PayrollEditEmployeePresentation\n onSave={onSave}\n onCancel={onCancel}\n employee={employee}\n isPending={isPending}\n employeeCompensation={employeeCompensation}\n fixedCompensationTypes={preparedPayroll?.fixedCompensationTypes || []}\n payPeriodStartDate={preparedPayroll?.payPeriod?.startDate}\n paySchedule={paySchedule}\n payrollCategory={payrollCategory}\n withReimbursements={withReimbursements}\n hasDirectDepositSetup={hasDirectDepositSetup}\n />\n )\n}\n"],"names":["PayrollEditEmployee","props","useUnstableFeature","jsx","UNSTABLE_PayrollEditEmployee","BaseComponent","Root","employeeId","companyId","payrollId","onEvent","dictionary","withReimbursements","useComponentDictionary","queryClient","useQueryClient","LoadingIndicator","baseSubmitHandler","useBase","employeeData","useEmployeesGetSuspense","bankAccountsList","useEmployeePaymentMethodsGetBankAccountsSuspense","memoizedEmployeeId","useMemo","preparedPayroll","paySchedule","isLoading","usePreparedPayrollData","updatePayroll","isPending","usePayrollsUpdateMutation","employee","employeeCompensation","hasDirectDepositSetup","payrollCategory","derivePayrollCategory","usesItemizedReimbursements","isOffCyclePayroll","transformEmployeeCompensation","paymentMethod","reimbursements","customWithholdings","compensation","cleanupReimbursements","onSave","updatedCompensation","transformedCompensation","result","PREPARE_QUERY_KEY","componentEvents","onCancel","PayrollEditEmployeePresentation"],"mappings":"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"}
1
+ {"version":3,"file":"PayrollEditEmployee.js","sources":["../../../../src/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.tsx"],"sourcesContent":["import { useEmployeesGetSuspense } from '@gusto/embedded-api/react-query/employeesGet'\nimport { useEmployeePaymentMethodsGetBankAccountsSuspense } from '@gusto/embedded-api/react-query/employeePaymentMethodsGetBankAccounts'\nimport { usePayrollsUpdateMutation } from '@gusto/embedded-api/react-query/payrollsUpdate'\nimport type { PayrollEmployeeCompensationsType } from '@gusto/embedded-api/models/components/payrollemployeecompensationstype'\nimport type { PayrollUpdateEmployeeCompensations } from '@gusto/embedded-api/models/components/payrollupdate'\nimport { useMemo } from 'react'\nimport { useQueryClient } from '@tanstack/react-query'\nimport { usePreparedPayrollData } from '../usePreparedPayrollData'\nimport { PREPARE_QUERY_KEY } from '../PayrollConfiguration/usePayrollConfigurationData'\nimport { derivePayrollCategory, isOffCyclePayroll } from '../payrollTypes'\nimport { cleanupReimbursements } from '../helpers'\nimport { UNSTABLE_PayrollEditEmployee } from '../UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee'\nimport { PayrollEditEmployeePresentation } from './PayrollEditEmployeePresentation'\nimport { useUnstableFeature } from '@/contexts/UnstableFeaturesProvider/useUnstableFeature'\nimport { componentEvents } from '@/shared/constants'\nimport type { BaseComponentInterface } from '@/components/Base/Base'\nimport { BaseComponent } from '@/components/Base/Base'\nimport { useComponentDictionary } from '@/i18n'\nimport { useBase } from '@/components/Base/useBase'\n\n/**\n * Props for {@link PayrollEditEmployee}.\n *\n * @public\n */\nexport interface PayrollEditEmployeeProps extends BaseComponentInterface<'Payroll.PayrollEditEmployee'> {\n /** The associated employee identifier. */\n employeeId: string\n /** The associated company identifier. */\n companyId: string\n /** The associated payroll identifier. */\n payrollId: string\n /** Whether to show reimbursement fields. Defaults to `true`. */\n withReimbursements?: boolean\n}\n\n/**\n * Editor for an individual employee's compensation within a payroll run.\n *\n * Allows modification of pay rates, hours, time off, additional earnings,\n * reimbursements, and payment method for a single employee on the specified payroll.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `runPayroll/employee/saved` | Fired when employee payroll compensation changes are saved | `{ payrollPrepared, employee }` |\n * | `runPayroll/employee/cancelled` | Fired when the user cancels editing employee payroll compensation | — |\n *\n * @param props - {@link PayrollEditEmployeeProps} plus base component props.\n * @returns The employee compensation editor.\n * @public\n *\n * @example\n * ```tsx\n * import { Payroll } from '@gusto/embedded-react-sdk'\n *\n * function MyComponent() {\n * return (\n * <Payroll.PayrollEditEmployee\n * employeeId=\"your-employee-id\"\n * companyId=\"your-company-id\"\n * payrollId=\"your-payroll-id\"\n * onEvent={() => {}}\n * />\n * )\n * }\n * ```\n */\nexport function PayrollEditEmployee(props: PayrollEditEmployeeProps) {\n const isRegularRateOfPayEnabled = useUnstableFeature('payrollRegularRateOfPay')\n\n if (isRegularRateOfPayEnabled) {\n return <UNSTABLE_PayrollEditEmployee {...props} />\n }\n\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nconst Root = ({\n employeeId,\n companyId,\n payrollId,\n onEvent,\n dictionary,\n withReimbursements = true,\n className,\n}: PayrollEditEmployeeProps) => {\n useComponentDictionary('Payroll.PayrollEditEmployee', dictionary)\n\n const queryClient = useQueryClient()\n const { LoadingIndicator, baseSubmitHandler } = useBase()\n\n const { data: employeeData } = useEmployeesGetSuspense({ employeeId })\n const { data: bankAccountsList } = useEmployeePaymentMethodsGetBankAccountsSuspense({\n employeeId,\n })\n const memoizedEmployeeId = useMemo(() => [employeeId], [employeeId])\n const { preparedPayroll, paySchedule, isLoading } = usePreparedPayrollData({\n companyId,\n payrollId,\n employeeUuids: memoizedEmployeeId,\n })\n\n const { mutateAsync: updatePayroll, isPending } = usePayrollsUpdateMutation()\n\n const employee = employeeData.employee!\n const employeeCompensation = preparedPayroll?.employeeCompensations?.at(0)\n const bankAccounts = bankAccountsList.employeeBankAccounts || []\n const hasDirectDepositSetup = bankAccounts.length > 0\n const payrollCategory = derivePayrollCategory(preparedPayroll ?? {})\n const usesItemizedReimbursements = !isOffCyclePayroll(payrollCategory)\n\n const transformEmployeeCompensation = ({\n paymentMethod,\n reimbursements,\n customWithholdings,\n ...compensation\n }: PayrollEmployeeCompensationsType): PayrollUpdateEmployeeCompensations => {\n return {\n ...compensation,\n ...(paymentMethod && paymentMethod !== 'Historical' ? { paymentMethod } : {}),\n memo: compensation.memo || undefined,\n // Off-cycle payrolls write reimbursements via the legacy fixed_compensations field; the\n // itemized array gets rejected by the `emb_off_cycle_disable_named_reimbursements` backend\n // flag (default-on globally, expected removal 2026-09-01).\n // TODO(post-2026-09-01): drop the branch once the flag is gone.\n ...(usesItemizedReimbursements && reimbursements\n ? { reimbursements: cleanupReimbursements(reimbursements) }\n : {}),\n }\n }\n\n const onSave = async (updatedCompensation: PayrollEmployeeCompensationsType) => {\n const transformedCompensation = transformEmployeeCompensation(updatedCompensation)\n await baseSubmitHandler(null, async () => {\n const result = await updatePayroll({\n request: {\n companyId,\n payrollId,\n payrollUpdate: {\n employeeCompensations: [transformedCompensation],\n },\n },\n })\n\n await queryClient.invalidateQueries({\n queryKey: [PREPARE_QUERY_KEY, payrollId],\n })\n\n onEvent(componentEvents.RUN_PAYROLL_EMPLOYEE_SAVED, {\n payrollPrepared: result.payrollPrepared,\n employee,\n })\n })\n }\n\n const onCancel = () => {\n onEvent(componentEvents.RUN_PAYROLL_EMPLOYEE_CANCELLED)\n }\n\n if (isLoading) {\n return <LoadingIndicator />\n }\n\n return (\n <PayrollEditEmployeePresentation\n className={className}\n onSave={onSave}\n onCancel={onCancel}\n employee={employee}\n isPending={isPending}\n employeeCompensation={employeeCompensation}\n fixedCompensationTypes={preparedPayroll?.fixedCompensationTypes || []}\n payPeriodStartDate={preparedPayroll?.payPeriod?.startDate}\n paySchedule={paySchedule}\n payrollCategory={payrollCategory}\n withReimbursements={withReimbursements}\n hasDirectDepositSetup={hasDirectDepositSetup}\n />\n )\n}\n"],"names":["PayrollEditEmployee","props","useUnstableFeature","jsx","UNSTABLE_PayrollEditEmployee","BaseComponent","Root","employeeId","companyId","payrollId","onEvent","dictionary","withReimbursements","className","useComponentDictionary","queryClient","useQueryClient","LoadingIndicator","baseSubmitHandler","useBase","employeeData","useEmployeesGetSuspense","bankAccountsList","useEmployeePaymentMethodsGetBankAccountsSuspense","memoizedEmployeeId","useMemo","preparedPayroll","paySchedule","isLoading","usePreparedPayrollData","updatePayroll","isPending","usePayrollsUpdateMutation","employee","employeeCompensation","hasDirectDepositSetup","payrollCategory","derivePayrollCategory","usesItemizedReimbursements","isOffCyclePayroll","transformEmployeeCompensation","paymentMethod","reimbursements","customWithholdings","compensation","cleanupReimbursements","onSave","updatedCompensation","transformedCompensation","result","PREPARE_QUERY_KEY","componentEvents","onCancel","PayrollEditEmployeePresentation"],"mappings":"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"}