@gusto/embedded-react-sdk 0.55.7 → 0.56.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (379) hide show
  1. package/CHANGELOG.md +63 -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/Menu/MenuTypes.js.map +1 -1
  11. package/dist/components/Common/UI/MultiSelectComboBox/MultiSelectComboBox.js +43 -42
  12. package/dist/components/Common/UI/MultiSelectComboBox/MultiSelectComboBox.js.map +1 -1
  13. package/dist/components/Common/UI/ProgressBar/ProgressBar.js +4 -4
  14. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +5 -3
  15. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
  16. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +5 -3
  17. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
  18. package/dist/components/Company/AssignSignatory/useAssignSignatory.js +7 -5
  19. package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
  20. package/dist/components/Company/BankAccount/BankAccountForm/context.js +5 -3
  21. package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
  22. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +5 -3
  23. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  24. package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js +27 -27
  25. package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js.map +1 -1
  26. package/dist/components/Company/FederalTaxes/useFederalTaxes.js +10 -8
  27. package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
  28. package/dist/components/Company/Industry/Context.js +8 -6
  29. package/dist/components/Company/Industry/Context.js.map +1 -1
  30. package/dist/components/Company/Locations/LocationForm/useLocationForm.js +5 -3
  31. package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
  32. package/dist/components/Company/Locations/LocationsList/useLocationsList.js +5 -3
  33. package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
  34. package/dist/components/Company/OnboardingOverview/context.js +5 -3
  35. package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
  36. package/dist/components/Company/PaySchedule/PaySchedule.js +45 -30
  37. package/dist/components/Company/PaySchedule/PaySchedule.js.map +1 -1
  38. package/dist/components/Company/PaySchedule/PayScheduleComponents.js +12 -11
  39. package/dist/components/Company/PaySchedule/PayScheduleComponents.js.map +1 -1
  40. package/dist/components/Company/PaySchedule/PayScheduleForm.js +72 -55
  41. package/dist/components/Company/PaySchedule/PayScheduleForm.js.map +1 -1
  42. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/fields.js +24 -20
  43. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/fields.js.map +1 -1
  44. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/payScheduleSchema.js +33 -29
  45. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/payScheduleSchema.js.map +1 -1
  46. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/usePayScheduleForm.js +131 -115
  47. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/usePayScheduleForm.js.map +1 -1
  48. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +5 -3
  49. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
  50. package/dist/components/Company/StateTaxes/StateTaxesList/context.js +5 -3
  51. package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
  52. package/dist/components/Company/StateTaxes/TaxRateManagement/context.js +5 -3
  53. package/dist/components/Company/StateTaxes/TaxRateManagement/context.js.map +1 -1
  54. package/dist/components/Contractor/ContractorList/management/ManagementContractorList.js +31 -29
  55. package/dist/components/Contractor/ContractorList/management/ManagementContractorList.js.map +1 -1
  56. package/dist/components/Contractor/ContractorList/management/ManagementContractorListView.js +110 -109
  57. package/dist/components/Contractor/ContractorList/management/ManagementContractorListView.js.map +1 -1
  58. package/dist/components/Contractor/ContractorList/onboarding/ContractorList.js +21 -19
  59. package/dist/components/Contractor/ContractorList/onboarding/ContractorList.js.map +1 -1
  60. package/dist/components/Contractor/ContractorList/onboarding/ContractorListView.js +56 -55
  61. package/dist/components/Contractor/ContractorList/onboarding/ContractorListView.js.map +1 -1
  62. package/dist/components/Contractor/Dashboard/Dashboard.js +34 -33
  63. package/dist/components/Contractor/Dashboard/Dashboard.js.map +1 -1
  64. package/dist/components/Contractor/Payments/CreateHistoricalPayment/CreateHistoricalPayment.js +117 -115
  65. package/dist/components/Contractor/Payments/CreateHistoricalPayment/CreateHistoricalPayment.js.map +1 -1
  66. package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js +77 -75
  67. package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js.map +1 -1
  68. package/dist/components/Contractor/Payments/CreatePayment/CreatePaymentPresentation.js +44 -43
  69. package/dist/components/Contractor/Payments/CreatePayment/CreatePaymentPresentation.js.map +1 -1
  70. package/dist/components/Contractor/Payments/CreatePayment/PreviewPresentation.js +40 -39
  71. package/dist/components/Contractor/Payments/CreatePayment/PreviewPresentation.js.map +1 -1
  72. package/dist/components/Contractor/Payments/HistoricalPaymentSummary/HistoricalPaymentSummary.js +35 -29
  73. package/dist/components/Contractor/Payments/HistoricalPaymentSummary/HistoricalPaymentSummary.js.map +1 -1
  74. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistory.js +21 -20
  75. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistory.js.map +1 -1
  76. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistoryPresentation.js +41 -40
  77. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistoryPresentation.js.map +1 -1
  78. package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatement.js +21 -20
  79. package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatement.js.map +1 -1
  80. package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatementPresentation.js +33 -32
  81. package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatementPresentation.js.map +1 -1
  82. package/dist/components/Contractor/Payments/PaymentsList/PaymentsList.js +80 -78
  83. package/dist/components/Contractor/Payments/PaymentsList/PaymentsList.js.map +1 -1
  84. package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.js +44 -43
  85. package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.js.map +1 -1
  86. package/dist/components/Contractor/Submit/Submit.js +113 -105
  87. package/dist/components/Contractor/Submit/Submit.js.map +1 -1
  88. package/dist/components/Contractor/Submit/SubmitDone.js +11 -11
  89. package/dist/components/Contractor/Submit/SubmitDone.js.map +1 -1
  90. package/dist/components/Employee/Compensation/management/CompensationAddJobForm/CompensationAddJobForm.js +20 -18
  91. package/dist/components/Employee/Compensation/management/CompensationAddJobForm/CompensationAddJobForm.js.map +1 -1
  92. package/dist/components/Employee/Compensation/management/CompensationEditForm/CompensationEditForm.js +18 -15
  93. package/dist/components/Employee/Compensation/management/CompensationEditForm/CompensationEditForm.js.map +1 -1
  94. package/dist/components/Employee/Dashboard/Dashboard.js +33 -32
  95. package/dist/components/Employee/Dashboard/Dashboard.js.map +1 -1
  96. package/dist/components/Employee/Deductions/management/DeductionsEditForm/DeductionsEditForm.js +21 -19
  97. package/dist/components/Employee/Deductions/management/DeductionsEditForm/DeductionsEditForm.js.map +1 -1
  98. package/dist/components/Employee/Documents/management/DocumentManager.js +34 -26
  99. package/dist/components/Employee/Documents/management/DocumentManager.js.map +1 -1
  100. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js +5 -3
  101. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  102. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibility.js +30 -29
  103. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibility.js.map +1 -1
  104. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibilityPresentation.js +54 -53
  105. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibilityPresentation.js.map +1 -1
  106. package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocuments.js +29 -28
  107. package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocuments.js.map +1 -1
  108. package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocumentsPresentation.js +16 -15
  109. package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocumentsPresentation.js.map +1 -1
  110. package/dist/components/Employee/EmployeeList/management/ManagementEmployeeList.js +27 -25
  111. package/dist/components/Employee/EmployeeList/management/ManagementEmployeeList.js.map +1 -1
  112. package/dist/components/Employee/EmployeeList/management/ManagementEmployeeListView.js +121 -111
  113. package/dist/components/Employee/EmployeeList/management/ManagementEmployeeListView.js.map +1 -1
  114. package/dist/components/Employee/EmployeeList/onboarding/EmployeeList.js +22 -20
  115. package/dist/components/Employee/EmployeeList/onboarding/EmployeeList.js.map +1 -1
  116. package/dist/components/Employee/EmployeeList/onboarding/EmployeeListView.js +24 -23
  117. package/dist/components/Employee/EmployeeList/onboarding/EmployeeListView.js.map +1 -1
  118. package/dist/components/Employee/EmployeeList/shared/useEmployeeList.js +52 -43
  119. package/dist/components/Employee/EmployeeList/shared/useEmployeeList.js.map +1 -1
  120. package/dist/components/Employee/EmployeeListFlow/employeeListStateMachine.js +29 -26
  121. package/dist/components/Employee/EmployeeListFlow/employeeListStateMachine.js.map +1 -1
  122. package/dist/components/Employee/FederalTaxes/shared/FederalTaxesView.js +1 -1
  123. package/dist/components/Employee/HomeAddress/management/HomeAddressEditForm.js +19 -17
  124. package/dist/components/Employee/HomeAddress/management/HomeAddressEditForm.js.map +1 -1
  125. package/dist/components/Employee/HomeAddress/management/HomeAddressView.js +79 -78
  126. package/dist/components/Employee/HomeAddress/management/HomeAddressView.js.map +1 -1
  127. package/dist/components/Employee/PaymentMethod/management/PaymentMethodBankForm.js +4 -4
  128. package/dist/components/Employee/PaymentMethod/onboarding/BankForm.js +4 -4
  129. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js +40 -39
  130. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js.map +1 -1
  131. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.js +31 -30
  132. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.js.map +1 -1
  133. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummary.js +43 -41
  134. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummary.js.map +1 -1
  135. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.js +20 -19
  136. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.js.map +1 -1
  137. package/dist/components/Employee/WorkAddress/management/WorkAddressEditForm.js +19 -17
  138. package/dist/components/Employee/WorkAddress/management/WorkAddressEditForm.js.map +1 -1
  139. package/dist/components/Employee/WorkAddress/management/WorkAddressView.js +49 -48
  140. package/dist/components/Employee/WorkAddress/management/WorkAddressView.js.map +1 -1
  141. package/dist/components/Flow/Flow.js +1 -1
  142. package/dist/components/InformationRequests/InformationRequestList/InformationRequestList.js +28 -28
  143. package/dist/components/InformationRequests/InformationRequestList/InformationRequestList.js.map +1 -1
  144. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.js +37 -36
  145. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.js.map +1 -1
  146. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsBanner/ConfirmWireDetailsBanner.js +36 -35
  147. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsBanner/ConfirmWireDetailsBanner.js.map +1 -1
  148. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelection.js +35 -28
  149. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelection.js.map +1 -1
  150. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.js +23 -22
  151. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.js.map +1 -1
  152. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js +48 -45
  153. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js.map +1 -1
  154. package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js +85 -77
  155. package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js.map +1 -1
  156. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.js +63 -59
  157. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.js.map +1 -1
  158. package/dist/components/Payroll/OffCycleDeductionsSetting/OffCycleDeductionsSetting.js +23 -21
  159. package/dist/components/Payroll/OffCycleDeductionsSetting/OffCycleDeductionsSetting.js.map +1 -1
  160. package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelection.js +26 -19
  161. package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelection.js.map +1 -1
  162. package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.js +14 -12
  163. package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.js.map +1 -1
  164. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js +184 -162
  165. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js.map +1 -1
  166. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js +67 -65
  167. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js.map +1 -1
  168. package/dist/components/Payroll/PayrollConfiguration/useCalculationPoll.js +48 -34
  169. package/dist/components/Payroll/PayrollConfiguration/useCalculationPoll.js.map +1 -1
  170. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js +43 -41
  171. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js.map +1 -1
  172. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js +225 -223
  173. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js.map +1 -1
  174. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/fields.js +78 -75
  175. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/fields.js.map +1 -1
  176. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/payrollEditEmployeeHelpers.js +27 -27
  177. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/payrollEditEmployeeHelpers.js.map +1 -1
  178. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/payrollEditEmployeeSchema.js +19 -19
  179. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/payrollEditEmployeeSchema.js.map +1 -1
  180. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/usePayrollEditEmployeeForm.js +51 -48
  181. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/usePayrollEditEmployeeForm.js.map +1 -1
  182. package/dist/components/Payroll/PayrollHistory/PayrollHistory.js +58 -48
  183. package/dist/components/Payroll/PayrollHistory/PayrollHistory.js.map +1 -1
  184. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js +58 -57
  185. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js.map +1 -1
  186. package/dist/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.js +83 -69
  187. package/dist/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.js.map +1 -1
  188. package/dist/components/Payroll/PayrollList/PayrollList.js +62 -60
  189. package/dist/components/Payroll/PayrollList/PayrollList.js.map +1 -1
  190. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js +119 -117
  191. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js.map +1 -1
  192. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js +187 -171
  193. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js.map +1 -1
  194. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js +120 -110
  195. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js.map +1 -1
  196. package/dist/components/Payroll/PayrollOverview/useSubmissionPoll.js +45 -34
  197. package/dist/components/Payroll/PayrollOverview/useSubmissionPoll.js.map +1 -1
  198. package/dist/components/Payroll/PayrollReceipts/PayrollReceipts.js +20 -14
  199. package/dist/components/Payroll/PayrollReceipts/PayrollReceipts.js.map +1 -1
  200. package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.js +62 -61
  201. package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.js.map +1 -1
  202. package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.module.scss.js +14 -14
  203. package/dist/components/Payroll/PrintChecks/PrintChecksBanner/PrintChecksBanner.js +24 -17
  204. package/dist/components/Payroll/PrintChecks/PrintChecksBanner/PrintChecksBanner.js.map +1 -1
  205. package/dist/components/Payroll/PrintChecks/PrintChecksFailure/PrintChecksFailure.js +22 -22
  206. package/dist/components/Payroll/PrintChecks/PrintChecksFailure/PrintChecksFailure.js.map +1 -1
  207. package/dist/components/Payroll/PrintChecks/PrintChecksForm/PrintChecksForm.js +88 -80
  208. package/dist/components/Payroll/PrintChecks/PrintChecksForm/PrintChecksForm.js.map +1 -1
  209. package/dist/components/Payroll/PrintChecks/PrintChecksForm/useGenerationPoll.js +52 -37
  210. package/dist/components/Payroll/PrintChecks/PrintChecksForm/useGenerationPoll.js.map +1 -1
  211. package/dist/components/Payroll/PrintChecks/PrintChecksSummary/PrintChecksSummary.js +26 -26
  212. package/dist/components/Payroll/PrintChecks/PrintChecksSummary/PrintChecksSummary.js.map +1 -1
  213. package/dist/components/Payroll/RecoveryCases/RecoveryCasesResubmit/RecoveryCasesResubmit.js +32 -32
  214. package/dist/components/Payroll/RecoveryCases/RecoveryCasesResubmit/RecoveryCasesResubmit.js.map +1 -1
  215. package/dist/components/Payroll/TransitionCreation/TransitionCreation.js +50 -48
  216. package/dist/components/Payroll/TransitionCreation/TransitionCreation.js.map +1 -1
  217. package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.js +34 -33
  218. package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.js.map +1 -1
  219. package/dist/components/Payroll/TransitionCreation/TransitionCreationTypes.js.map +1 -1
  220. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlert.js +28 -24
  221. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlert.js.map +1 -1
  222. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.js +255 -228
  223. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.js.map +1 -1
  224. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.module.scss.js +8 -4
  225. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.module.scss.js.map +1 -1
  226. package/dist/components/Payroll/usePreparedPayrollData.js +10 -8
  227. package/dist/components/Payroll/usePreparedPayrollData.js.map +1 -1
  228. package/dist/components/TimeOff/AddEmployeesHoliday/AddEmployeesHoliday.js +5 -5
  229. package/dist/components/TimeOff/AddEmployeesHoliday/AddEmployeesHoliday.js.map +1 -1
  230. package/dist/components/TimeOff/AddEmployeesToPolicy/AddEmployeesToPolicy.js +8 -7
  231. package/dist/components/TimeOff/AddEmployeesToPolicy/AddEmployeesToPolicy.js.map +1 -1
  232. package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetail.js +51 -50
  233. package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetail.js.map +1 -1
  234. package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailPresentation.js +20 -18
  235. package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailPresentation.js.map +1 -1
  236. package/dist/components/TimeOff/HolidaySelectionForm/HolidaySelectionForm.js +51 -49
  237. package/dist/components/TimeOff/HolidaySelectionForm/HolidaySelectionForm.js.map +1 -1
  238. package/dist/components/TimeOff/HolidaySelectionForm/HolidaySelectionFormPresentation.js +20 -20
  239. package/dist/components/TimeOff/HolidaySelectionForm/HolidaySelectionFormPresentation.js.map +1 -1
  240. package/dist/components/TimeOff/PolicyList/PolicyList.js +50 -49
  241. package/dist/components/TimeOff/PolicyList/PolicyList.js.map +1 -1
  242. package/dist/components/TimeOff/PolicyList/PolicyListPresentation.js +34 -33
  243. package/dist/components/TimeOff/PolicyList/PolicyListPresentation.js.map +1 -1
  244. package/dist/components/TimeOff/PolicySettings/PolicySettings.js +46 -45
  245. package/dist/components/TimeOff/PolicySettings/PolicySettings.js.map +1 -1
  246. package/dist/components/TimeOff/PolicySettings/PolicySettingsPresentation.js +152 -143
  247. package/dist/components/TimeOff/PolicySettings/PolicySettingsPresentation.js.map +1 -1
  248. package/dist/components/TimeOff/PolicyTypeSelector/PolicyTypeSelector.js +14 -13
  249. package/dist/components/TimeOff/PolicyTypeSelector/PolicyTypeSelector.js.map +1 -1
  250. package/dist/components/TimeOff/PolicyTypeSelector/PolicyTypeSelectorPresentation.js +44 -35
  251. package/dist/components/TimeOff/PolicyTypeSelector/PolicyTypeSelectorPresentation.js.map +1 -1
  252. package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationForm.js +88 -71
  253. package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationForm.js.map +1 -1
  254. package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormPresentation.js +164 -155
  255. package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormPresentation.js.map +1 -1
  256. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesHoliday.js +57 -55
  257. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesHoliday.js.map +1 -1
  258. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentation.js +25 -24
  259. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentation.js.map +1 -1
  260. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesTimeOff.js +94 -92
  261. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesTimeOff.js.map +1 -1
  262. package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetail.js +156 -155
  263. package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetail.js.map +1 -1
  264. package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetailPresentation.js +21 -19
  265. package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetailPresentation.js.map +1 -1
  266. package/dist/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayout.js +28 -26
  267. package/dist/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayout.js.map +1 -1
  268. package/dist/contexts/ApiProvider/ApiProvider.js +29 -28
  269. package/dist/contexts/ApiProvider/ApiProvider.js.map +1 -1
  270. package/dist/contexts/ApiProvider/apiVersionMismatchHook.js +15 -0
  271. package/dist/contexts/ApiProvider/apiVersionMismatchHook.js.map +1 -0
  272. package/dist/contexts/ComponentAdapter/useComponentContext.js.map +1 -1
  273. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js.map +1 -1
  274. package/dist/contexts/ThemeProvider/ThemeProvider.js +32 -26
  275. package/dist/contexts/ThemeProvider/ThemeProvider.js.map +1 -1
  276. package/dist/contexts/UnstableFeaturesProvider/useUnstableFeature.js.map +1 -1
  277. package/dist/hooks/usePollingTask/usePollingTask.js +53 -41
  278. package/dist/hooks/usePollingTask/usePollingTask.js.map +1 -1
  279. package/dist/i18n/en/Company.PaySchedule.json.js +22 -20
  280. package/dist/i18n/en/Company.PaySchedule.json.js.map +1 -1
  281. package/dist/i18n/en/Employee.ManagementEmployeeList.json.js +28 -24
  282. package/dist/i18n/en/Employee.ManagementEmployeeList.json.js.map +1 -1
  283. package/dist/i18n/en/Payroll.GrossUpModal.json.js +12 -10
  284. package/dist/i18n/en/Payroll.GrossUpModal.json.js.map +1 -1
  285. package/dist/i18n/en/Payroll.PayrollConfiguration.json.js +8 -8
  286. package/dist/i18n/en/Payroll.PayrollOverview.json.js +15 -15
  287. package/dist/i18n/en/Payroll.UNSTABLE_PayrollEditEmployee.json.js +62 -58
  288. package/dist/i18n/en/Payroll.UNSTABLE_PayrollEditEmployee.json.js.map +1 -1
  289. package/dist/package.json.js +1 -1
  290. package/dist/src/components/Common/FieldCaption/FieldCaption.d.ts +2 -16
  291. package/dist/src/components/Common/FieldCaption/FieldCaptionTypes.d.ts +22 -0
  292. package/dist/src/components/Common/FieldCaption/index.d.ts +1 -0
  293. package/dist/src/components/Common/Flex/Flex.d.ts +3 -1
  294. package/dist/src/components/Common/UI/ComboBox/ComboBoxTypes.d.ts +1 -1
  295. package/dist/src/components/Common/UI/DatePicker/DatePickerTypes.d.ts +2 -1
  296. package/dist/src/components/Common/UI/Menu/MenuTypes.d.ts +1 -1
  297. package/dist/src/components/Common/UI/MultiSelectComboBox/MultiSelectComboBox.d.ts +1 -1
  298. package/dist/src/components/Common/UI/MultiSelectComboBox/MultiSelectComboBoxTypes.d.ts +5 -0
  299. package/dist/src/components/Common/UI/Select/SelectTypes.d.ts +2 -1
  300. package/dist/src/components/Company/PaySchedule/PaySchedule.d.ts +10 -2
  301. package/dist/src/components/Company/PaySchedule/PayScheduleComponents.d.ts +1 -0
  302. package/dist/src/components/Company/PaySchedule/shared/usePayScheduleForm/fields.d.ts +9 -1
  303. package/dist/src/components/Company/PaySchedule/shared/usePayScheduleForm/index.d.ts +2 -2
  304. package/dist/src/components/Company/PaySchedule/shared/usePayScheduleForm/payScheduleSchema.d.ts +21 -5
  305. package/dist/src/components/Company/PaySchedule/shared/usePayScheduleForm/usePayScheduleForm.d.ts +21 -3
  306. package/dist/src/components/Contractor/ContractorList/management/ManagementContractorListView.d.ts +3 -1
  307. package/dist/src/components/Contractor/ContractorList/onboarding/ContractorListView.d.ts +3 -1
  308. package/dist/src/components/Contractor/Payments/CreatePayment/CreatePaymentPresentation.d.ts +3 -1
  309. package/dist/src/components/Contractor/Payments/CreatePayment/PreviewPresentation.d.ts +3 -1
  310. package/dist/src/components/Contractor/Payments/PaymentHistory/PaymentHistoryPresentation.d.ts +3 -1
  311. package/dist/src/components/Contractor/Payments/PaymentStatement/PaymentStatementPresentation.d.ts +3 -1
  312. package/dist/src/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.d.ts +3 -1
  313. package/dist/src/components/Contractor/Submit/SubmitDone.d.ts +3 -1
  314. package/dist/src/components/Employee/Compensation/management/CompensationEditForm/CompensationEditForm.d.ts +1 -1
  315. package/dist/src/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibilityPresentation.d.ts +3 -1
  316. package/dist/src/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocumentsPresentation.d.ts +3 -1
  317. package/dist/src/components/Employee/EmployeeList/management/ManagementEmployeeListView.d.ts +3 -1
  318. package/dist/src/components/Employee/EmployeeList/onboarding/EmployeeListView.d.ts +3 -1
  319. package/dist/src/components/Employee/EmployeeList/shared/useEmployeeList.d.ts +11 -2
  320. package/dist/src/components/Employee/EmployeeListFlow/employeeListStateMachine.test.d.ts +1 -0
  321. package/dist/src/components/Employee/HomeAddress/management/HomeAddressView.d.ts +3 -1
  322. package/dist/src/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.d.ts +3 -1
  323. package/dist/src/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.d.ts +3 -1
  324. package/dist/src/components/Employee/WorkAddress/management/WorkAddressView.d.ts +3 -1
  325. package/dist/src/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.d.ts +3 -1
  326. package/dist/src/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.d.ts +1 -1
  327. package/dist/src/components/Payroll/OffCycleCreation/OffCycleCreationTypes.d.ts +8 -0
  328. package/dist/src/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.d.ts +3 -1
  329. package/dist/src/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.d.ts +3 -1
  330. package/dist/src/components/Payroll/PayrollConfiguration/useCalculationPoll.d.ts +6 -1
  331. package/dist/src/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.d.ts +3 -1
  332. package/dist/src/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/fields.d.ts +9 -9
  333. package/dist/src/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/payrollEditEmployeeHelpers.d.ts +2 -2
  334. package/dist/src/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/payrollEditEmployeeSchema.d.ts +4 -4
  335. package/dist/src/components/Payroll/PayrollHistory/PayrollHistoryPresentation.d.ts +3 -1
  336. package/dist/src/components/Payroll/PayrollList/PayrollListPresentation.d.ts +3 -1
  337. package/dist/src/components/Payroll/PayrollOverview/PayrollOverviewPresentation.d.ts +2 -1
  338. package/dist/src/components/Payroll/PayrollOverview/useSubmissionPoll.d.ts +10 -1
  339. package/dist/src/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.d.ts +2 -1
  340. package/dist/src/components/Payroll/TransitionCreation/TransitionCreationPresentation.d.ts +1 -1
  341. package/dist/src/components/Payroll/TransitionCreation/TransitionCreationTypes.d.ts +2 -0
  342. package/dist/src/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlert.d.ts +3 -1
  343. package/dist/src/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.d.ts +1 -1
  344. package/dist/src/components/TimeOff/AddEmployeesHoliday/AddEmployeesHoliday.d.ts +1 -1
  345. package/dist/src/components/TimeOff/AddEmployeesToPolicy/AddEmployeesToPolicy.d.ts +1 -1
  346. package/dist/src/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailPresentation.d.ts +1 -1
  347. package/dist/src/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailTypes.d.ts +2 -0
  348. package/dist/src/components/TimeOff/HolidaySelectionForm/HolidaySelectionFormTypes.d.ts +2 -0
  349. package/dist/src/components/TimeOff/PolicyList/PolicyListPresentation.d.ts +1 -1
  350. package/dist/src/components/TimeOff/PolicyList/PolicyListTypes.d.ts +2 -0
  351. package/dist/src/components/TimeOff/PolicySettings/PolicySettingsPresentation.d.ts +1 -1
  352. package/dist/src/components/TimeOff/PolicySettings/PolicySettingsTypes.d.ts +2 -0
  353. package/dist/src/components/TimeOff/PolicyTypeSelector/PolicyTypeSelectorPresentation.d.ts +1 -1
  354. package/dist/src/components/TimeOff/PolicyTypeSelector/PolicyTypeSelectorTypes.d.ts +2 -0
  355. package/dist/src/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormPresentation.d.ts +1 -1
  356. package/dist/src/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormTypes.d.ts +2 -0
  357. package/dist/src/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesHoliday.d.ts +2 -0
  358. package/dist/src/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentation.d.ts +1 -1
  359. package/dist/src/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentationTypes.d.ts +2 -0
  360. package/dist/src/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesTimeOff.d.ts +2 -0
  361. package/dist/src/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetailPresentation.d.ts +1 -1
  362. package/dist/src/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetailTypes.d.ts +3 -0
  363. package/dist/src/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayout.d.ts +1 -1
  364. package/dist/src/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayoutTypes.d.ts +2 -0
  365. package/dist/src/contexts/ApiProvider/ApiProvider.d.ts +5 -3
  366. package/dist/src/contexts/ApiProvider/apiVersionMismatchHook.d.ts +3 -0
  367. package/dist/src/contexts/ApiProvider/apiVersionMismatchHook.test.d.ts +1 -0
  368. package/dist/src/contexts/ComponentAdapter/componentAdapterTypes.d.ts +1 -0
  369. package/dist/src/contexts/ComponentAdapter/useComponentContext.d.ts +4 -1
  370. package/dist/src/contexts/GustoProvider/GustoProviderCustomUIAdapter.d.ts +9 -1
  371. package/dist/src/contexts/ThemeProvider/ThemeProvider.d.ts +8 -3
  372. package/dist/src/contexts/UnstableFeaturesProvider/useUnstableFeature.d.ts +4 -1
  373. package/dist/src/hooks/usePollingTask/usePollingTask.d.ts +55 -14
  374. package/dist/src/i18n/types.d.ts +42 -2
  375. package/dist/src/index.d.ts +1 -1
  376. package/dist/src/models/external.d.ts +1 -0
  377. package/dist/style.css +1 -1
  378. package/docs/guides/endpoint-inventory.json +5 -0
  379. package/package.json +20 -19
@@ -1,39 +1,40 @@
1
1
  import { jsx as n, jsxs as h } from "react/jsx-runtime";
2
- import { useTranslation as v } from "react-i18next";
3
- import { useWireInRequestsListSuspense as M } from "@gusto/embedded-api/react-query/wireInRequestsList";
4
- import { usePayrollsListSuspense as N } from "@gusto/embedded-api/react-query/payrollsList";
5
- import { useState as Z, useEffect as _ } from "react";
6
- import { BaseComponent as j } from "../../../Base/Base.js";
2
+ import { useTranslation as M } from "react-i18next";
3
+ import { useWireInRequestsListSuspense as N } from "@gusto/embedded-api/react-query/wireInRequestsList";
4
+ import { usePayrollsListSuspense as Z } from "@gusto/embedded-api/react-query/payrollsList";
5
+ import { useState as _, useEffect as j } from "react";
6
+ import { BaseComponent as k } from "../../../Base/Base.js";
7
7
  import "../../../Base/useBase.js";
8
- import { useComponentContext as k } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
9
- import { useComponentDictionary as E, useI18n as G } from "../../../../i18n/I18n.js";
8
+ import { useComponentContext as E } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
9
+ import { useComponentDictionary as G, useI18n as z } from "../../../../i18n/I18n.js";
10
10
  import { Flex as g } from "../../../Common/Flex/Flex.js";
11
- import { useDateFormatter as z } from "../../../../hooks/useDateFormatter.js";
12
- import H from "../../../../hooks/useNumberFormatter.js";
13
- function ie(i) {
14
- return /* @__PURE__ */ n(j, { ...i, children: /* @__PURE__ */ n(J, { ...i, children: i.children }) });
11
+ import { useDateFormatter as H } from "../../../../hooks/useDateFormatter.js";
12
+ import J from "../../../../hooks/useNumberFormatter.js";
13
+ function se(i) {
14
+ return /* @__PURE__ */ n(k, { ...i, children: /* @__PURE__ */ n(K, { ...i, children: i.children }) });
15
15
  }
16
- const J = ({
16
+ const K = ({
17
17
  wireInId: i,
18
18
  companyId: u,
19
19
  dictionary: D,
20
20
  confirmationAlert: l,
21
- onStartWireTransfer: C
21
+ onStartWireTransfer: C,
22
+ className: P
22
23
  }) => {
23
- E("Payroll.ConfirmWireDetailsBanner", D), G("Payroll.ConfirmWireDetailsBanner");
24
- const { t: s } = v("Payroll.ConfirmWireDetailsBanner"), { Alert: P, Banner: L, Button: R, UnorderedList: b, Text: c } = k(), q = z(), [w, d] = Z(!1), S = H("currency");
25
- _(() => {
24
+ G("Payroll.ConfirmWireDetailsBanner", D), z("Payroll.ConfirmWireDetailsBanner");
25
+ const { t: s } = M("Payroll.ConfirmWireDetailsBanner"), { Alert: L, Banner: R, Button: b, UnorderedList: q, Text: c } = E(), w = H(), [S, d] = _(!1), B = J("currency");
26
+ j(() => {
26
27
  l && d(!1);
27
28
  }, [l]);
28
- const { data: B } = M({
29
+ const { data: W } = N({
29
30
  companyUuid: u
30
- }), { data: W } = N({
31
+ }), { data: x } = Z({
31
32
  companyId: u,
32
33
  processed: !0
33
- }), p = (B.wireInRequestList || []).filter(
34
+ }), p = (W.wireInRequestList || []).filter(
34
35
  (e) => e.status === "awaiting_funds"
35
- ), x = i ? p.filter((e) => e.uuid === i) : p, A = W.payrollList || [], r = x.map((e) => {
36
- const t = A.find((o) => o.payrollUuid === e.paymentUuid), a = t?.payPeriod ? q.formatPayPeriodRange(t.payPeriod.startDate, t.payPeriod.endDate) : "";
36
+ ), A = i ? p.filter((e) => e.uuid === i) : p, T = x.payrollList || [], r = A.map((e) => {
37
+ const t = T.find((o) => o.payrollUuid === e.paymentUuid), a = t?.payPeriod ? w.formatPayPeriodRange(t.payPeriod.startDate, t.payPeriod.endDate) : "";
37
38
  return {
38
39
  wireInRequest: e,
39
40
  payroll: t,
@@ -41,49 +42,49 @@ const J = ({
41
42
  paymentType: e.paymentType,
42
43
  requestedAmount: e.requestedAmount ?? ""
43
44
  };
44
- }), f = r.length > 0 && (r.length > 1 || r[0]?.wireInRequest), y = !w && l;
45
+ }), f = r.length > 0 && (r.length > 1 || r[0]?.wireInRequest), y = !S && l;
45
46
  if (!f && !y)
46
47
  return null;
47
- const T = (e) => {
48
+ const I = (e) => {
48
49
  const t = new Date(e), o = t.toLocaleTimeString("en-US", {
49
50
  hour: "numeric",
50
51
  minute: t.getMinutes() === 0 ? void 0 : "2-digit",
51
52
  hour12: !0,
52
53
  timeZone: "America/Los_Angeles",
53
54
  timeZoneName: "short"
54
- }).replace(/\s?(AM|PM)/i, (F) => F.trim().toLowerCase()), m = t.toLocaleDateString("en-US", {
55
+ }).replace(/\s?(AM|PM)/i, (v) => v.trim().toLowerCase()), m = t.toLocaleDateString("en-US", {
55
56
  month: "long",
56
57
  day: "numeric",
57
58
  year: "numeric",
58
59
  timeZone: "America/Los_Angeles"
59
60
  });
60
61
  return { time: o, date: m };
61
- }, I = () => {
62
+ }, U = () => {
62
63
  const e = r.length === 1, { wireInRequest: t, payrollRange: a } = r[0] || {};
63
64
  if (e) {
64
65
  if (i && t?.wireInDeadline) {
65
- const { time: o, date: m } = T(t.wireInDeadline);
66
+ const { time: o, date: m } = I(t.wireInDeadline);
66
67
  return s("banner.title", { time: o, date: m });
67
68
  }
68
69
  return s("banner.titleWithPayroll", { payrollRange: a });
69
70
  }
70
71
  return s("banner.titleMultiple", { count: r.length });
71
- }, U = () => {
72
+ }, F = () => {
72
73
  if (r.length > 1)
73
74
  return /* @__PURE__ */ n(
74
- b,
75
+ q,
75
76
  {
76
77
  items: r.map(
77
78
  ({ paymentType: e, payrollRange: t, requestedAmount: a }, o) => e === "Payroll" ? /* @__PURE__ */ n(c, { children: s("banner.requestLabelPayroll", { payrollRange: t }) }, o) : /* @__PURE__ */ n(c, { children: s("banner.requestLabelContractorPaymentGroup", {
78
- requestedAmount: S(Number(a))
79
+ requestedAmount: B(Number(a))
79
80
  }) }, o)
80
81
  )
81
82
  }
82
83
  );
83
84
  };
84
- return /* @__PURE__ */ h(g, { flexDirection: "column", gap: 16, children: [
85
+ return /* @__PURE__ */ h(g, { className: P, flexDirection: "column", gap: 16, children: [
85
86
  y && /* @__PURE__ */ n(
86
- P,
87
+ L,
87
88
  {
88
89
  status: "success",
89
90
  label: l.title,
@@ -93,14 +94,14 @@ const J = ({
93
94
  children: l.content
94
95
  }
95
96
  ),
96
- f && /* @__PURE__ */ n(L, { status: "warning", title: I(), children: /* @__PURE__ */ h(g, { flexDirection: "column", gap: 16, alignItems: "flex-start", children: [
97
+ f && /* @__PURE__ */ n(R, { status: "warning", title: U(), children: /* @__PURE__ */ h(g, { flexDirection: "column", gap: 16, alignItems: "flex-start", children: [
97
98
  /* @__PURE__ */ n("div", { children: s("banner.description") }),
98
- U(),
99
- /* @__PURE__ */ n(R, { variant: "secondary", onClick: C, children: s("cta.startWireTransfer") })
99
+ F(),
100
+ /* @__PURE__ */ n(b, { variant: "secondary", onClick: C, children: s("cta.startWireTransfer") })
100
101
  ] }) })
101
102
  ] });
102
103
  };
103
104
  export {
104
- ie as ConfirmWireDetailsBanner
105
+ se as ConfirmWireDetailsBanner
105
106
  };
106
107
  //# sourceMappingURL=ConfirmWireDetailsBanner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ConfirmWireDetailsBanner.js","sources":["../../../../../src/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsBanner/ConfirmWireDetailsBanner.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { useWireInRequestsListSuspense } from '@gusto/embedded-api/react-query/wireInRequestsList'\nimport { usePayrollsListSuspense } from '@gusto/embedded-api/react-query/payrollsList'\nimport { useState, useEffect } from 'react'\nimport type { ConfirmationAlert } from '../types'\nimport { BaseComponent, type BaseComponentInterface } from '@/components/Base'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useComponentDictionary, useI18n } from '@/i18n'\nimport { Flex } from '@/components/Common/Flex/Flex'\nimport { useDateFormatter } from '@/hooks/useDateFormatter'\nimport useNumberFormatter from '@/hooks/useNumberFormatter'\n\ninterface ConfirmWireDetailsBannerProps extends BaseComponentInterface<'Payroll.ConfirmWireDetailsBanner'> {\n wireInId?: string\n companyId: string\n confirmationAlert?: ConfirmationAlert\n onStartWireTransfer: () => void\n}\n\n/** @internal */\nexport function ConfirmWireDetailsBanner(props: ConfirmWireDetailsBannerProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nconst Root = ({\n wireInId,\n companyId,\n dictionary,\n confirmationAlert,\n onStartWireTransfer,\n}: ConfirmWireDetailsBannerProps) => {\n useComponentDictionary('Payroll.ConfirmWireDetailsBanner', dictionary)\n useI18n('Payroll.ConfirmWireDetailsBanner')\n const { t } = useTranslation('Payroll.ConfirmWireDetailsBanner')\n const { Alert, Banner, Button, UnorderedList, Text } = useComponentContext()\n const dateFormatter = useDateFormatter()\n const [isConfirmationAlertDismissed, setIsConfirmationAlertDismissed] = useState(false)\n const currencyFormatter = useNumberFormatter('currency')\n\n useEffect(() => {\n if (confirmationAlert) {\n setIsConfirmationAlertDismissed(false)\n }\n }, [confirmationAlert])\n\n const { data: wireInRequestsData } = useWireInRequestsListSuspense({\n companyUuid: companyId,\n })\n\n const { data: payrollsData } = usePayrollsListSuspense({\n companyId,\n processed: true,\n })\n\n const activeWireInRequests = (wireInRequestsData.wireInRequestList || []).filter(\n request => request.status === 'awaiting_funds',\n )\n const wireInRequests = wireInId\n ? activeWireInRequests.filter(request => request.uuid === wireInId)\n : activeWireInRequests\n\n const payrolls = payrollsData.payrollList || []\n\n const wireInRequestsWithPayrolls = wireInRequests.map(wireInRequest => {\n const payroll = payrolls.find(p => p.payrollUuid === wireInRequest.paymentUuid)\n const payrollRange = payroll?.payPeriod\n ? dateFormatter.formatPayPeriodRange(payroll.payPeriod.startDate, payroll.payPeriod.endDate)\n : ''\n return {\n wireInRequest,\n payroll,\n payrollRange,\n paymentType: wireInRequest.paymentType,\n requestedAmount: wireInRequest.requestedAmount ?? '',\n }\n })\n\n const shouldShowBanner =\n wireInRequestsWithPayrolls.length > 0 &&\n (wireInRequestsWithPayrolls.length > 1 || wireInRequestsWithPayrolls[0]?.wireInRequest)\n\n const shouldShowConfirmationAlert = !isConfirmationAlertDismissed && confirmationAlert\n\n if (!shouldShowBanner && !shouldShowConfirmationAlert) {\n return null\n }\n\n const formatDeadline = (deadline: string) => {\n const date = new Date(deadline)\n\n const timeRaw = date.toLocaleTimeString('en-US', {\n hour: 'numeric',\n minute: date.getMinutes() === 0 ? undefined : '2-digit',\n hour12: true,\n timeZone: 'America/Los_Angeles',\n timeZoneName: 'short',\n })\n\n const time = timeRaw.replace(/\\s?(AM|PM)/i, match => match.trim().toLowerCase())\n\n const dateString = date.toLocaleDateString('en-US', {\n month: 'long',\n day: 'numeric',\n year: 'numeric',\n timeZone: 'America/Los_Angeles',\n })\n\n return { time, date: dateString }\n }\n\n const getBannerTitle = () => {\n const isSingleWireInRequest = wireInRequestsWithPayrolls.length === 1\n const { wireInRequest, payrollRange } = wireInRequestsWithPayrolls[0] || {}\n\n if (isSingleWireInRequest) {\n if (wireInId && wireInRequest?.wireInDeadline) {\n const { time, date } = formatDeadline(wireInRequest.wireInDeadline)\n return t('banner.title', { time, date })\n }\n return t('banner.titleWithPayroll', { payrollRange })\n }\n return t('banner.titleMultiple', { count: wireInRequestsWithPayrolls.length })\n }\n\n const getBannerContent = () => {\n if (wireInRequestsWithPayrolls.length > 1) {\n return (\n <UnorderedList\n items={wireInRequestsWithPayrolls.map(\n ({ paymentType, payrollRange, requestedAmount }, index) =>\n paymentType === 'Payroll' ? (\n <Text key={index}>{t('banner.requestLabelPayroll', { payrollRange })}</Text>\n ) : (\n <Text key={index}>\n {t('banner.requestLabelContractorPaymentGroup', {\n requestedAmount: currencyFormatter(Number(requestedAmount)),\n })}\n </Text>\n ),\n )}\n />\n )\n }\n }\n\n return (\n <Flex flexDirection=\"column\" gap={16}>\n {shouldShowConfirmationAlert && (\n <Alert\n status=\"success\"\n label={confirmationAlert.title}\n onDismiss={() => {\n setIsConfirmationAlertDismissed(true)\n }}\n >\n {confirmationAlert.content}\n </Alert>\n )}\n {shouldShowBanner && (\n <Banner status=\"warning\" title={getBannerTitle()}>\n <Flex flexDirection=\"column\" gap={16} alignItems=\"flex-start\">\n <div>{t('banner.description')}</div>\n {getBannerContent()}\n <Button variant=\"secondary\" onClick={onStartWireTransfer}>\n {t('cta.startWireTransfer')}\n </Button>\n </Flex>\n </Banner>\n )}\n </Flex>\n )\n}\n"],"names":["ConfirmWireDetailsBanner","props","jsx","BaseComponent","Root","wireInId","companyId","dictionary","confirmationAlert","onStartWireTransfer","useComponentDictionary","useI18n","t","useTranslation","Alert","Banner","Button","UnorderedList","Text","useComponentContext","dateFormatter","useDateFormatter","isConfirmationAlertDismissed","setIsConfirmationAlertDismissed","useState","currencyFormatter","useNumberFormatter","useEffect","wireInRequestsData","useWireInRequestsListSuspense","payrollsData","usePayrollsListSuspense","activeWireInRequests","request","wireInRequests","payrolls","wireInRequestsWithPayrolls","wireInRequest","payroll","p","payrollRange","shouldShowBanner","shouldShowConfirmationAlert","formatDeadline","deadline","date","time","match","dateString","getBannerTitle","isSingleWireInRequest","getBannerContent","paymentType","requestedAmount","index","jsxs","Flex"],"mappings":"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"}
1
+ {"version":3,"file":"ConfirmWireDetailsBanner.js","sources":["../../../../../src/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsBanner/ConfirmWireDetailsBanner.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { useWireInRequestsListSuspense } from '@gusto/embedded-api/react-query/wireInRequestsList'\nimport { usePayrollsListSuspense } from '@gusto/embedded-api/react-query/payrollsList'\nimport { useState, useEffect } from 'react'\nimport type { ConfirmationAlert } from '../types'\nimport { BaseComponent, type BaseComponentInterface } from '@/components/Base'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useComponentDictionary, useI18n } from '@/i18n'\nimport { Flex } from '@/components/Common/Flex/Flex'\nimport { useDateFormatter } from '@/hooks/useDateFormatter'\nimport useNumberFormatter from '@/hooks/useNumberFormatter'\n\ninterface ConfirmWireDetailsBannerProps extends BaseComponentInterface<'Payroll.ConfirmWireDetailsBanner'> {\n wireInId?: string\n companyId: string\n confirmationAlert?: ConfirmationAlert\n onStartWireTransfer: () => void\n}\n\n/** @internal */\nexport function ConfirmWireDetailsBanner(props: ConfirmWireDetailsBannerProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nconst Root = ({\n wireInId,\n companyId,\n dictionary,\n confirmationAlert,\n onStartWireTransfer,\n className,\n}: ConfirmWireDetailsBannerProps) => {\n useComponentDictionary('Payroll.ConfirmWireDetailsBanner', dictionary)\n useI18n('Payroll.ConfirmWireDetailsBanner')\n const { t } = useTranslation('Payroll.ConfirmWireDetailsBanner')\n const { Alert, Banner, Button, UnorderedList, Text } = useComponentContext()\n const dateFormatter = useDateFormatter()\n const [isConfirmationAlertDismissed, setIsConfirmationAlertDismissed] = useState(false)\n const currencyFormatter = useNumberFormatter('currency')\n\n useEffect(() => {\n if (confirmationAlert) {\n setIsConfirmationAlertDismissed(false)\n }\n }, [confirmationAlert])\n\n const { data: wireInRequestsData } = useWireInRequestsListSuspense({\n companyUuid: companyId,\n })\n\n const { data: payrollsData } = usePayrollsListSuspense({\n companyId,\n processed: true,\n })\n\n const activeWireInRequests = (wireInRequestsData.wireInRequestList || []).filter(\n request => request.status === 'awaiting_funds',\n )\n const wireInRequests = wireInId\n ? activeWireInRequests.filter(request => request.uuid === wireInId)\n : activeWireInRequests\n\n const payrolls = payrollsData.payrollList || []\n\n const wireInRequestsWithPayrolls = wireInRequests.map(wireInRequest => {\n const payroll = payrolls.find(p => p.payrollUuid === wireInRequest.paymentUuid)\n const payrollRange = payroll?.payPeriod\n ? dateFormatter.formatPayPeriodRange(payroll.payPeriod.startDate, payroll.payPeriod.endDate)\n : ''\n return {\n wireInRequest,\n payroll,\n payrollRange,\n paymentType: wireInRequest.paymentType,\n requestedAmount: wireInRequest.requestedAmount ?? '',\n }\n })\n\n const shouldShowBanner =\n wireInRequestsWithPayrolls.length > 0 &&\n (wireInRequestsWithPayrolls.length > 1 || wireInRequestsWithPayrolls[0]?.wireInRequest)\n\n const shouldShowConfirmationAlert = !isConfirmationAlertDismissed && confirmationAlert\n\n if (!shouldShowBanner && !shouldShowConfirmationAlert) {\n return null\n }\n\n const formatDeadline = (deadline: string) => {\n const date = new Date(deadline)\n\n const timeRaw = date.toLocaleTimeString('en-US', {\n hour: 'numeric',\n minute: date.getMinutes() === 0 ? undefined : '2-digit',\n hour12: true,\n timeZone: 'America/Los_Angeles',\n timeZoneName: 'short',\n })\n\n const time = timeRaw.replace(/\\s?(AM|PM)/i, match => match.trim().toLowerCase())\n\n const dateString = date.toLocaleDateString('en-US', {\n month: 'long',\n day: 'numeric',\n year: 'numeric',\n timeZone: 'America/Los_Angeles',\n })\n\n return { time, date: dateString }\n }\n\n const getBannerTitle = () => {\n const isSingleWireInRequest = wireInRequestsWithPayrolls.length === 1\n const { wireInRequest, payrollRange } = wireInRequestsWithPayrolls[0] || {}\n\n if (isSingleWireInRequest) {\n if (wireInId && wireInRequest?.wireInDeadline) {\n const { time, date } = formatDeadline(wireInRequest.wireInDeadline)\n return t('banner.title', { time, date })\n }\n return t('banner.titleWithPayroll', { payrollRange })\n }\n return t('banner.titleMultiple', { count: wireInRequestsWithPayrolls.length })\n }\n\n const getBannerContent = () => {\n if (wireInRequestsWithPayrolls.length > 1) {\n return (\n <UnorderedList\n items={wireInRequestsWithPayrolls.map(\n ({ paymentType, payrollRange, requestedAmount }, index) =>\n paymentType === 'Payroll' ? (\n <Text key={index}>{t('banner.requestLabelPayroll', { payrollRange })}</Text>\n ) : (\n <Text key={index}>\n {t('banner.requestLabelContractorPaymentGroup', {\n requestedAmount: currencyFormatter(Number(requestedAmount)),\n })}\n </Text>\n ),\n )}\n />\n )\n }\n }\n\n return (\n <Flex className={className} flexDirection=\"column\" gap={16}>\n {shouldShowConfirmationAlert && (\n <Alert\n status=\"success\"\n label={confirmationAlert.title}\n onDismiss={() => {\n setIsConfirmationAlertDismissed(true)\n }}\n >\n {confirmationAlert.content}\n </Alert>\n )}\n {shouldShowBanner && (\n <Banner status=\"warning\" title={getBannerTitle()}>\n <Flex flexDirection=\"column\" gap={16} alignItems=\"flex-start\">\n <div>{t('banner.description')}</div>\n {getBannerContent()}\n <Button variant=\"secondary\" onClick={onStartWireTransfer}>\n {t('cta.startWireTransfer')}\n </Button>\n </Flex>\n </Banner>\n )}\n </Flex>\n )\n}\n"],"names":["ConfirmWireDetailsBanner","props","jsx","BaseComponent","Root","wireInId","companyId","dictionary","confirmationAlert","onStartWireTransfer","className","useComponentDictionary","useI18n","t","useTranslation","Alert","Banner","Button","UnorderedList","Text","useComponentContext","dateFormatter","useDateFormatter","isConfirmationAlertDismissed","setIsConfirmationAlertDismissed","useState","currencyFormatter","useNumberFormatter","useEffect","wireInRequestsData","useWireInRequestsListSuspense","payrollsData","usePayrollsListSuspense","activeWireInRequests","request","wireInRequests","payrolls","wireInRequestsWithPayrolls","wireInRequest","payroll","p","payrollRange","shouldShowBanner","shouldShowConfirmationAlert","formatDeadline","deadline","date","time","match","dateString","getBannerTitle","isSingleWireInRequest","getBannerContent","paymentType","requestedAmount","index","Flex","jsxs"],"mappings":"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"}
@@ -1,48 +1,54 @@
1
1
  import { jsx as d } from "react/jsx-runtime";
2
- import { useEffect as A, useMemo as y, useState as O } from "react";
3
- import { usePaySchedulesGetUnprocessedTerminationPeriodsSuspense as b } from "@gusto/embedded-api/react-query/paySchedulesGetUnprocessedTerminationPeriods";
4
- import { usePayrollsCreateOffCycleMutation as g } from "@gusto/embedded-api/react-query/payrollsCreateOffCycle";
5
- import { OffCycleReason as T } from "@gusto/embedded-api/models/operations/postv1companiescompanyidpayrolls";
2
+ import { useEffect as O, useMemo as y, useState as b } from "react";
3
+ import { usePaySchedulesGetUnprocessedTerminationPeriodsSuspense as g } from "@gusto/embedded-api/react-query/paySchedulesGetUnprocessedTerminationPeriods";
4
+ import { usePayrollsCreateOffCycleMutation as T } from "@gusto/embedded-api/react-query/payrollsCreateOffCycle";
5
+ import { OffCycleReason as K } from "@gusto/embedded-api/models/operations/postv1companiescompanyidpayrolls";
6
6
  import { RFCDate as D } from "@gusto/embedded-api/types/rfcdate";
7
- import { useTranslation as K } from "react-i18next";
8
- import { DismissalPayPeriodSelectionPresentation as L } from "./DismissalPayPeriodSelectionPresentation.js";
9
- import { BaseComponent as M } from "../../../Base/Base.js";
10
- import { useBase as $ } from "../../../Base/useBase.js";
7
+ import { useTranslation as L } from "react-i18next";
8
+ import { DismissalPayPeriodSelectionPresentation as M } from "./DismissalPayPeriodSelectionPresentation.js";
9
+ import { BaseComponent as $ } from "../../../Base/Base.js";
10
+ import { useBase as q } from "../../../Base/useBase.js";
11
11
  import { componentEvents as p } from "../../../../shared/constants.js";
12
12
  import { SDKInternalError as u } from "../../../../types/sdkError.js";
13
- import { useComponentDictionary as q, useI18n as x } from "../../../../i18n/I18n.js";
14
- import { formatPayPeriodRange as N } from "../../../../helpers/dateFormatting.js";
15
- function oe(t) {
16
- return /* @__PURE__ */ d(M, { ...t, children: /* @__PURE__ */ d(Y, { ...t }) });
13
+ import { useComponentDictionary as x, useI18n as N } from "../../../../i18n/I18n.js";
14
+ import { formatPayPeriodRange as Y } from "../../../../helpers/dateFormatting.js";
15
+ function te(t) {
16
+ return /* @__PURE__ */ d($, { ...t, children: /* @__PURE__ */ d(j, { ...t }) });
17
17
  }
18
18
  const S = (t) => `${t.startDate}__${t.endDate}`;
19
- function Y({ companyId: t, employeeId: r, payrollId: n, dictionary: E }) {
20
- q("Payroll.Dismissal", E), x("Payroll.Dismissal");
21
- const { t: i } = K("Payroll.Dismissal"), { onEvent: l, baseSubmitHandler: C } = $(), { data: f } = b({ companyId: t }), { mutateAsync: w, isPending: U } = g(), v = !!n && !!r;
22
- A(() => {
19
+ function j({
20
+ companyId: t,
21
+ employeeId: r,
22
+ payrollId: n,
23
+ dictionary: E,
24
+ className: C
25
+ }) {
26
+ x("Payroll.Dismissal", E), N("Payroll.Dismissal");
27
+ const { t: i } = L("Payroll.Dismissal"), { onEvent: l, baseSubmitHandler: w } = q(), { data: f } = g({ companyId: t }), { mutateAsync: U, isPending: v } = T(), h = !!n && !!r;
28
+ O(() => {
23
29
  n && r && l(p.DISMISSAL_PAY_PERIOD_SELECTED, { payrollUuid: n });
24
30
  }, [n, r, l]);
25
31
  const m = y(() => (f.unprocessedTerminationPayPeriods ?? []).filter((o) => !r || o.employeeUuid === r).filter(
26
32
  (o) => !!o.startDate && !!o.endDate && !!o.employeeUuid
27
33
  ), [f, r]), c = y(() => m.map((e) => {
28
- const o = N(e.startDate, e.endDate), a = e.employeeName ? `${o} (${e.employeeName})` : o;
34
+ const o = Y(e.startDate, e.endDate), a = e.employeeName ? `${o} (${e.employeeName})` : o;
29
35
  return {
30
36
  value: S(e),
31
37
  label: a
32
38
  };
33
- }), [m]), h = c.length === 1 ? c[0].value : void 0, [s, B] = O(h), R = async () => {
34
- await C({ selectedPeriodKey: s }, async () => {
39
+ }), [m]), B = c.length === 1 ? c[0].value : void 0, [s, R] = b(B), _ = async () => {
40
+ await w({ selectedPeriodKey: s }, async () => {
35
41
  if (s === void 0)
36
42
  throw new u(i("errors.noPayPeriodSelected"));
37
- const e = m.find((_) => S(_) === s);
43
+ const e = m.find((A) => S(A) === s);
38
44
  if (!e)
39
45
  throw new u(i("errors.invalidPayPeriod"));
40
- const o = r ?? e.employeeUuid, a = await w({
46
+ const o = r ?? e.employeeUuid, a = await U({
41
47
  request: {
42
48
  companyId: t,
43
49
  requestBody: {
44
50
  offCycle: !0,
45
- offCycleReason: T.DismissedEmployee,
51
+ offCycleReason: K.DismissedEmployee,
46
52
  startDate: new D(e.startDate),
47
53
  endDate: new D(e.endDate),
48
54
  employeeUuids: [o]
@@ -54,18 +60,19 @@ function Y({ companyId: t, employeeId: r, payrollId: n, dictionary: E }) {
54
60
  l(p.DISMISSAL_PAY_PERIOD_SELECTED, { payrollUuid: P });
55
61
  });
56
62
  };
57
- return v ? null : /* @__PURE__ */ d(
58
- L,
63
+ return h ? null : /* @__PURE__ */ d(
64
+ M,
59
65
  {
60
66
  payPeriodOptions: c,
61
67
  selectedPeriodKey: s,
62
- onSelectPeriod: B,
63
- onSubmit: R,
64
- isPending: U
68
+ onSelectPeriod: R,
69
+ onSubmit: _,
70
+ isPending: v,
71
+ className: C
65
72
  }
66
73
  );
67
74
  }
68
75
  export {
69
- oe as DismissalPayPeriodSelection
76
+ te as DismissalPayPeriodSelection
70
77
  };
71
78
  //# sourceMappingURL=DismissalPayPeriodSelection.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DismissalPayPeriodSelection.js","sources":["../../../../../src/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelection.tsx"],"sourcesContent":["import { useEffect, useMemo, useState } from 'react'\nimport { usePaySchedulesGetUnprocessedTerminationPeriodsSuspense } from '@gusto/embedded-api/react-query/paySchedulesGetUnprocessedTerminationPeriods'\nimport { usePayrollsCreateOffCycleMutation } from '@gusto/embedded-api/react-query/payrollsCreateOffCycle'\nimport type { UnprocessedTerminationPayPeriod } from '@gusto/embedded-api/models/components/unprocessedterminationpayperiod'\nimport { OffCycleReason } from '@gusto/embedded-api/models/operations/postv1companiescompanyidpayrolls'\nimport { RFCDate } from '@gusto/embedded-api/types/rfcdate'\nimport { useTranslation } from 'react-i18next'\nimport { DismissalPayPeriodSelectionPresentation } from './DismissalPayPeriodSelectionPresentation'\nimport { BaseComponent } from '@/components/Base/Base'\nimport type { BaseComponentInterface } from '@/components/Base/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { componentEvents } from '@/shared/constants'\nimport { SDKInternalError } from '@/types/sdkError'\nimport { useComponentDictionary, useI18n } from '@/i18n'\nimport { formatPayPeriodRange } from '@/helpers/dateFormatting'\nimport type { SelectOption } from '@/components/Common/UI/Select/SelectTypes'\n\n/**\n * Props for {@link DismissalPayPeriodSelection}.\n *\n * @public\n */\nexport interface DismissalPayPeriodSelectionProps extends BaseComponentInterface<'Payroll.Dismissal'> {\n /** Identifier of the company the dismissal payroll belongs to. */\n companyId: string\n /** Identifier of the terminated employee. When provided, the available pay periods are filtered to this employee. */\n employeeId?: string\n /** Identifier of an existing dismissal payroll. When provided alongside `employeeId`, pay period selection is skipped and the component immediately emits the selection event. */\n payrollId?: string\n}\n\n/**\n * Pay period selection step for the dismissal payroll workflow.\n *\n * Lists the terminated employee's unprocessed termination pay periods and, on submit, creates an off-cycle payroll with the \"Dismissed employee\" reason for the selected period. When only one pay period is available it is pre-selected. When both `payrollId` and `employeeId` are supplied the step is skipped and the selection event fires immediately with the existing payroll.\n *\n * @remarks\n * Events:\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `dismissal/payPeriod/selected` | Fired after a pay period is selected and the off-cycle payroll has been created, or immediately when `payrollId` is supplied. | `{ payrollUuid: string }` |\n *\n * @param props - See {@link DismissalPayPeriodSelectionProps}.\n * @returns The rendered pay period selection step, or nothing while auto-advancing past selection.\n * @public\n */\nexport function DismissalPayPeriodSelection(props: DismissalPayPeriodSelectionProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props} />\n </BaseComponent>\n )\n}\n\ntype RequiredPayPeriod = UnprocessedTerminationPayPeriod &\n Required<Pick<UnprocessedTerminationPayPeriod, 'startDate' | 'endDate' | 'employeeUuid'>>\n\nconst payPeriodKey = (period: RequiredPayPeriod) => `${period.startDate}__${period.endDate}`\n\nfunction Root({ companyId, employeeId, payrollId, dictionary }: DismissalPayPeriodSelectionProps) {\n useComponentDictionary('Payroll.Dismissal', dictionary)\n useI18n('Payroll.Dismissal')\n const { t } = useTranslation('Payroll.Dismissal')\n const { onEvent, baseSubmitHandler } = useBase()\n\n const { data } = usePaySchedulesGetUnprocessedTerminationPeriodsSuspense({ companyId })\n const { mutateAsync: createOffCyclePayroll, isPending } = usePayrollsCreateOffCycleMutation()\n\n const shouldAutoAdvance = Boolean(payrollId) && Boolean(employeeId)\n\n useEffect(() => {\n if (payrollId && employeeId) {\n onEvent(componentEvents.DISMISSAL_PAY_PERIOD_SELECTED, { payrollUuid: payrollId })\n }\n }, [payrollId, employeeId, onEvent])\n\n const employeePayPeriods: RequiredPayPeriod[] = useMemo(() => {\n const allPeriods = data.unprocessedTerminationPayPeriods ?? []\n return allPeriods\n .filter(period => !employeeId || period.employeeUuid === employeeId)\n .filter(\n (period): period is RequiredPayPeriod =>\n Boolean(period.startDate) && Boolean(period.endDate) && Boolean(period.employeeUuid),\n )\n }, [data, employeeId])\n\n const payPeriodOptions: SelectOption[] = useMemo(() => {\n return employeePayPeriods.map(period => {\n const dateRange = formatPayPeriodRange(period.startDate, period.endDate)\n const label = period.employeeName ? `${dateRange} (${period.employeeName})` : dateRange\n return {\n value: payPeriodKey(period),\n label,\n }\n })\n }, [employeePayPeriods])\n\n const initialSelection = payPeriodOptions.length === 1 ? payPeriodOptions[0]!.value : undefined\n const [selectedPeriodKey, setSelectedPeriodKey] = useState(initialSelection)\n\n const handleSubmit = async () => {\n await baseSubmitHandler({ selectedPeriodKey }, async () => {\n if (selectedPeriodKey === undefined) {\n throw new SDKInternalError(t('errors.noPayPeriodSelected'))\n }\n\n const period = employeePayPeriods.find(p => payPeriodKey(p) === selectedPeriodKey)\n if (!period) {\n throw new SDKInternalError(t('errors.invalidPayPeriod'))\n }\n\n const resolvedEmployeeId = employeeId ?? period.employeeUuid\n\n const response = await createOffCyclePayroll({\n request: {\n companyId,\n requestBody: {\n offCycle: true,\n offCycleReason: OffCycleReason.DismissedEmployee,\n startDate: new RFCDate(period.startDate),\n endDate: new RFCDate(period.endDate),\n employeeUuids: [resolvedEmployeeId],\n },\n },\n })\n\n const payrollUuid =\n response.payrollUnprocessed?.payrollUuid ?? response.payrollUnprocessed?.uuid\n\n if (!payrollUuid) {\n throw new SDKInternalError(t('errors.missingPayrollId'))\n }\n\n onEvent(componentEvents.DISMISSAL_PAY_PERIOD_SELECTED, { payrollUuid })\n })\n }\n\n if (shouldAutoAdvance) {\n return null\n }\n\n return (\n <DismissalPayPeriodSelectionPresentation\n payPeriodOptions={payPeriodOptions}\n selectedPeriodKey={selectedPeriodKey}\n onSelectPeriod={setSelectedPeriodKey}\n onSubmit={handleSubmit}\n isPending={isPending}\n />\n )\n}\n"],"names":["DismissalPayPeriodSelection","props","jsx","BaseComponent","Root","payPeriodKey","period","companyId","employeeId","payrollId","dictionary","useComponentDictionary","useI18n","t","useTranslation","onEvent","baseSubmitHandler","useBase","data","usePaySchedulesGetUnprocessedTerminationPeriodsSuspense","createOffCyclePayroll","isPending","usePayrollsCreateOffCycleMutation","shouldAutoAdvance","useEffect","componentEvents","employeePayPeriods","useMemo","payPeriodOptions","dateRange","formatPayPeriodRange","label","initialSelection","selectedPeriodKey","setSelectedPeriodKey","useState","handleSubmit","SDKInternalError","p","resolvedEmployeeId","response","OffCycleReason","RFCDate","payrollUuid","DismissalPayPeriodSelectionPresentation"],"mappings":"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"}
1
+ {"version":3,"file":"DismissalPayPeriodSelection.js","sources":["../../../../../src/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelection.tsx"],"sourcesContent":["import { useEffect, useMemo, useState } from 'react'\nimport { usePaySchedulesGetUnprocessedTerminationPeriodsSuspense } from '@gusto/embedded-api/react-query/paySchedulesGetUnprocessedTerminationPeriods'\nimport { usePayrollsCreateOffCycleMutation } from '@gusto/embedded-api/react-query/payrollsCreateOffCycle'\nimport type { UnprocessedTerminationPayPeriod } from '@gusto/embedded-api/models/components/unprocessedterminationpayperiod'\nimport { OffCycleReason } from '@gusto/embedded-api/models/operations/postv1companiescompanyidpayrolls'\nimport { RFCDate } from '@gusto/embedded-api/types/rfcdate'\nimport { useTranslation } from 'react-i18next'\nimport { DismissalPayPeriodSelectionPresentation } from './DismissalPayPeriodSelectionPresentation'\nimport { BaseComponent } from '@/components/Base/Base'\nimport type { BaseComponentInterface } from '@/components/Base/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { componentEvents } from '@/shared/constants'\nimport { SDKInternalError } from '@/types/sdkError'\nimport { useComponentDictionary, useI18n } from '@/i18n'\nimport { formatPayPeriodRange } from '@/helpers/dateFormatting'\nimport type { SelectOption } from '@/components/Common/UI/Select/SelectTypes'\n\n/**\n * Props for {@link DismissalPayPeriodSelection}.\n *\n * @public\n */\nexport interface DismissalPayPeriodSelectionProps extends BaseComponentInterface<'Payroll.Dismissal'> {\n /** Identifier of the company the dismissal payroll belongs to. */\n companyId: string\n /** Identifier of the terminated employee. When provided, the available pay periods are filtered to this employee. */\n employeeId?: string\n /** Identifier of an existing dismissal payroll. When provided alongside `employeeId`, pay period selection is skipped and the component immediately emits the selection event. */\n payrollId?: string\n}\n\n/**\n * Pay period selection step for the dismissal payroll workflow.\n *\n * Lists the terminated employee's unprocessed termination pay periods and, on submit, creates an off-cycle payroll with the \"Dismissed employee\" reason for the selected period. When only one pay period is available it is pre-selected. When both `payrollId` and `employeeId` are supplied the step is skipped and the selection event fires immediately with the existing payroll.\n *\n * @remarks\n * Events:\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `dismissal/payPeriod/selected` | Fired after a pay period is selected and the off-cycle payroll has been created, or immediately when `payrollId` is supplied. | `{ payrollUuid: string }` |\n *\n * @param props - See {@link DismissalPayPeriodSelectionProps}.\n * @returns The rendered pay period selection step, or nothing while auto-advancing past selection.\n * @public\n */\nexport function DismissalPayPeriodSelection(props: DismissalPayPeriodSelectionProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props} />\n </BaseComponent>\n )\n}\n\ntype RequiredPayPeriod = UnprocessedTerminationPayPeriod &\n Required<Pick<UnprocessedTerminationPayPeriod, 'startDate' | 'endDate' | 'employeeUuid'>>\n\nconst payPeriodKey = (period: RequiredPayPeriod) => `${period.startDate}__${period.endDate}`\n\nfunction Root({\n companyId,\n employeeId,\n payrollId,\n dictionary,\n className,\n}: DismissalPayPeriodSelectionProps) {\n useComponentDictionary('Payroll.Dismissal', dictionary)\n useI18n('Payroll.Dismissal')\n const { t } = useTranslation('Payroll.Dismissal')\n const { onEvent, baseSubmitHandler } = useBase()\n\n const { data } = usePaySchedulesGetUnprocessedTerminationPeriodsSuspense({ companyId })\n const { mutateAsync: createOffCyclePayroll, isPending } = usePayrollsCreateOffCycleMutation()\n\n const shouldAutoAdvance = Boolean(payrollId) && Boolean(employeeId)\n\n useEffect(() => {\n if (payrollId && employeeId) {\n onEvent(componentEvents.DISMISSAL_PAY_PERIOD_SELECTED, { payrollUuid: payrollId })\n }\n }, [payrollId, employeeId, onEvent])\n\n const employeePayPeriods: RequiredPayPeriod[] = useMemo(() => {\n const allPeriods = data.unprocessedTerminationPayPeriods ?? []\n return allPeriods\n .filter(period => !employeeId || period.employeeUuid === employeeId)\n .filter(\n (period): period is RequiredPayPeriod =>\n Boolean(period.startDate) && Boolean(period.endDate) && Boolean(period.employeeUuid),\n )\n }, [data, employeeId])\n\n const payPeriodOptions: SelectOption[] = useMemo(() => {\n return employeePayPeriods.map(period => {\n const dateRange = formatPayPeriodRange(period.startDate, period.endDate)\n const label = period.employeeName ? `${dateRange} (${period.employeeName})` : dateRange\n return {\n value: payPeriodKey(period),\n label,\n }\n })\n }, [employeePayPeriods])\n\n const initialSelection = payPeriodOptions.length === 1 ? payPeriodOptions[0]!.value : undefined\n const [selectedPeriodKey, setSelectedPeriodKey] = useState(initialSelection)\n\n const handleSubmit = async () => {\n await baseSubmitHandler({ selectedPeriodKey }, async () => {\n if (selectedPeriodKey === undefined) {\n throw new SDKInternalError(t('errors.noPayPeriodSelected'))\n }\n\n const period = employeePayPeriods.find(p => payPeriodKey(p) === selectedPeriodKey)\n if (!period) {\n throw new SDKInternalError(t('errors.invalidPayPeriod'))\n }\n\n const resolvedEmployeeId = employeeId ?? period.employeeUuid\n\n const response = await createOffCyclePayroll({\n request: {\n companyId,\n requestBody: {\n offCycle: true,\n offCycleReason: OffCycleReason.DismissedEmployee,\n startDate: new RFCDate(period.startDate),\n endDate: new RFCDate(period.endDate),\n employeeUuids: [resolvedEmployeeId],\n },\n },\n })\n\n const payrollUuid =\n response.payrollUnprocessed?.payrollUuid ?? response.payrollUnprocessed?.uuid\n\n if (!payrollUuid) {\n throw new SDKInternalError(t('errors.missingPayrollId'))\n }\n\n onEvent(componentEvents.DISMISSAL_PAY_PERIOD_SELECTED, { payrollUuid })\n })\n }\n\n if (shouldAutoAdvance) {\n return null\n }\n\n return (\n <DismissalPayPeriodSelectionPresentation\n payPeriodOptions={payPeriodOptions}\n selectedPeriodKey={selectedPeriodKey}\n onSelectPeriod={setSelectedPeriodKey}\n onSubmit={handleSubmit}\n isPending={isPending}\n className={className}\n />\n )\n}\n"],"names":["DismissalPayPeriodSelection","props","jsx","BaseComponent","Root","payPeriodKey","period","companyId","employeeId","payrollId","dictionary","className","useComponentDictionary","useI18n","t","useTranslation","onEvent","baseSubmitHandler","useBase","data","usePaySchedulesGetUnprocessedTerminationPeriodsSuspense","createOffCyclePayroll","isPending","usePayrollsCreateOffCycleMutation","shouldAutoAdvance","useEffect","componentEvents","employeePayPeriods","useMemo","payPeriodOptions","dateRange","formatPayPeriodRange","label","initialSelection","selectedPeriodKey","setSelectedPeriodKey","useState","handleSubmit","SDKInternalError","p","resolvedEmployeeId","response","OffCycleReason","RFCDate","payrollUuid","DismissalPayPeriodSelectionPresentation"],"mappings":"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"}
@@ -1,42 +1,43 @@
1
1
  import { jsxs as t, jsx as e } from "react/jsx-runtime";
2
- import { useTranslation as d } from "react-i18next";
2
+ import { useTranslation as f } from "react-i18next";
3
3
  import { Flex as o } from "../../../Common/Flex/Flex.js";
4
- import { ActionsLayout as f } from "../../../Common/ActionsLayout/ActionsLayout.js";
5
- import { useComponentContext as g } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
6
- import { useI18n as x } from "../../../../i18n/I18n.js";
7
- function L({
4
+ import { ActionsLayout as g } from "../../../Common/ActionsLayout/ActionsLayout.js";
5
+ import { useComponentContext as x } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
6
+ import { useI18n as D } from "../../../../i18n/I18n.js";
7
+ function S({
8
8
  payPeriodOptions: n,
9
9
  selectedPeriodKey: r,
10
- onSelectPeriod: s,
11
- onSubmit: c,
12
- isPending: l
10
+ onSelectPeriod: c,
11
+ onSubmit: m,
12
+ isPending: l,
13
+ className: a
13
14
  }) {
14
- x("Payroll.Dismissal");
15
- const { t: i } = d("Payroll.Dismissal"), { Heading: a, Text: m, Select: p, Button: u, Alert: h } = g();
16
- return n.length === 0 ? /* @__PURE__ */ t(o, { flexDirection: "column", gap: 24, children: [
17
- /* @__PURE__ */ e(o, { flexDirection: "column", gap: 4, children: /* @__PURE__ */ e(a, { as: "h2", children: i("pageTitle") }) }),
18
- /* @__PURE__ */ e(h, { status: "info", label: i("emptyState") })
19
- ] }) : /* @__PURE__ */ t(o, { flexDirection: "column", gap: 24, children: [
15
+ D("Payroll.Dismissal");
16
+ const { t: i } = f("Payroll.Dismissal"), { Heading: s, Text: p, Select: u, Button: h, Alert: d } = x();
17
+ return n.length === 0 ? /* @__PURE__ */ t(o, { className: a, flexDirection: "column", gap: 24, children: [
18
+ /* @__PURE__ */ e(o, { flexDirection: "column", gap: 4, children: /* @__PURE__ */ e(s, { as: "h2", children: i("pageTitle") }) }),
19
+ /* @__PURE__ */ e(d, { status: "info", label: i("emptyState") })
20
+ ] }) : /* @__PURE__ */ t(o, { className: a, flexDirection: "column", gap: 24, children: [
20
21
  /* @__PURE__ */ t(o, { flexDirection: "column", gap: 4, children: [
21
- /* @__PURE__ */ e(a, { as: "h2", children: i("pageTitle") }),
22
- /* @__PURE__ */ e(m, { variant: "supporting", children: i("pageDescription") })
22
+ /* @__PURE__ */ e(s, { as: "h2", children: i("pageTitle") }),
23
+ /* @__PURE__ */ e(p, { variant: "supporting", children: i("pageDescription") })
23
24
  ] }),
24
25
  /* @__PURE__ */ e(
25
- p,
26
+ u,
26
27
  {
27
28
  label: i("selectLabel"),
28
29
  options: n,
29
30
  value: r,
30
- onChange: s,
31
+ onChange: c,
31
32
  placeholder: i("selectPlaceholder"),
32
33
  isRequired: !0
33
34
  }
34
35
  ),
35
- /* @__PURE__ */ e(f, { children: /* @__PURE__ */ e(
36
- u,
36
+ /* @__PURE__ */ e(g, { children: /* @__PURE__ */ e(
37
+ h,
37
38
  {
38
39
  variant: "primary",
39
- onClick: c,
40
+ onClick: m,
40
41
  isLoading: l,
41
42
  isDisabled: l || r === void 0,
42
43
  children: i("continueCta")
@@ -45,6 +46,6 @@ function L({
45
46
  ] });
46
47
  }
47
48
  export {
48
- L as DismissalPayPeriodSelectionPresentation
49
+ S as DismissalPayPeriodSelectionPresentation
49
50
  };
50
51
  //# sourceMappingURL=DismissalPayPeriodSelectionPresentation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DismissalPayPeriodSelectionPresentation.js","sources":["../../../../../src/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { Flex, ActionsLayout } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useI18n } from '@/i18n'\nimport type { SelectOption } from '@/components/Common/UI/Select/SelectTypes'\n\n/** @internal */\nexport interface DismissalPayPeriodSelectionPresentationProps {\n /** Pay period options to display in the select. */\n payPeriodOptions: SelectOption[]\n /** Key of the currently selected pay period option, or undefined when none is selected. */\n selectedPeriodKey: string | undefined\n /** Called when the user selects a pay period from the options. */\n onSelectPeriod: (value: string) => void\n /** Called when the user clicks the continue button. */\n onSubmit: () => void\n /** Whether the submit action is in flight. */\n isPending: boolean\n}\n\n/** @internal */\nexport function DismissalPayPeriodSelectionPresentation({\n payPeriodOptions,\n selectedPeriodKey,\n onSelectPeriod,\n onSubmit,\n isPending,\n}: DismissalPayPeriodSelectionPresentationProps) {\n useI18n('Payroll.Dismissal')\n const { t } = useTranslation('Payroll.Dismissal')\n const { Heading, Text, Select, Button, Alert } = useComponentContext()\n\n const hasNoPayPeriods = payPeriodOptions.length === 0\n\n if (hasNoPayPeriods) {\n return (\n <Flex flexDirection=\"column\" gap={24}>\n <Flex flexDirection=\"column\" gap={4}>\n <Heading as=\"h2\">{t('pageTitle')}</Heading>\n </Flex>\n <Alert status=\"info\" label={t('emptyState')} />\n </Flex>\n )\n }\n\n return (\n <Flex flexDirection=\"column\" gap={24}>\n <Flex flexDirection=\"column\" gap={4}>\n <Heading as=\"h2\">{t('pageTitle')}</Heading>\n <Text variant=\"supporting\">{t('pageDescription')}</Text>\n </Flex>\n\n <Select\n label={t('selectLabel')}\n options={payPeriodOptions}\n value={selectedPeriodKey}\n onChange={onSelectPeriod}\n placeholder={t('selectPlaceholder')}\n isRequired\n />\n\n <ActionsLayout>\n <Button\n variant=\"primary\"\n onClick={onSubmit}\n isLoading={isPending}\n isDisabled={isPending || selectedPeriodKey === undefined}\n >\n {t('continueCta')}\n </Button>\n </ActionsLayout>\n </Flex>\n )\n}\n"],"names":["DismissalPayPeriodSelectionPresentation","payPeriodOptions","selectedPeriodKey","onSelectPeriod","onSubmit","isPending","useI18n","t","useTranslation","Heading","Text","Select","Button","Alert","useComponentContext","jsxs","Flex","jsx","ActionsLayout"],"mappings":";;;;;;AAqBO,SAASA,EAAwC;AAAA,EACtD,kBAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,UAAAC;AAAA,EACA,WAAAC;AACF,GAAiD;AAC/C,EAAAC,EAAQ,mBAAmB;AAC3B,QAAM,EAAE,GAAAC,EAAA,IAAMC,EAAe,mBAAmB,GAC1C,EAAE,SAAAC,GAAS,MAAAC,GAAM,QAAAC,GAAQ,QAAAC,GAAQ,OAAAC,EAAA,IAAUC,EAAA;AAIjD,SAFwBb,EAAiB,WAAW,IAIhD,gBAAAc,EAACC,GAAA,EAAK,eAAc,UAAS,KAAK,IAChC,UAAA;AAAA,IAAA,gBAAAC,EAACD,GAAA,EAAK,eAAc,UAAS,KAAK,GAChC,UAAA,gBAAAC,EAACR,GAAA,EAAQ,IAAG,MAAM,UAAAF,EAAE,WAAW,EAAA,CAAE,GACnC;AAAA,sBACCM,GAAA,EAAM,QAAO,QAAO,OAAON,EAAE,YAAY,EAAA,CAAG;AAAA,EAAA,GAC/C,IAKF,gBAAAQ,EAACC,GAAA,EAAK,eAAc,UAAS,KAAK,IAChC,UAAA;AAAA,IAAA,gBAAAD,EAACC,GAAA,EAAK,eAAc,UAAS,KAAK,GAChC,UAAA;AAAA,MAAA,gBAAAC,EAACR,GAAA,EAAQ,IAAG,MAAM,UAAAF,EAAE,WAAW,GAAE;AAAA,wBAChCG,GAAA,EAAK,SAAQ,cAAc,UAAAH,EAAE,iBAAiB,EAAA,CAAE;AAAA,IAAA,GACnD;AAAA,IAEA,gBAAAU;AAAA,MAACN;AAAA,MAAA;AAAA,QACC,OAAOJ,EAAE,aAAa;AAAA,QACtB,SAASN;AAAA,QACT,OAAOC;AAAA,QACP,UAAUC;AAAA,QACV,aAAaI,EAAE,mBAAmB;AAAA,QAClC,YAAU;AAAA,MAAA;AAAA,IAAA;AAAA,sBAGXW,GAAA,EACC,UAAA,gBAAAD;AAAA,MAACL;AAAA,MAAA;AAAA,QACC,SAAQ;AAAA,QACR,SAASR;AAAA,QACT,WAAWC;AAAA,QACX,YAAYA,KAAaH,MAAsB;AAAA,QAE9C,YAAE,aAAa;AAAA,MAAA;AAAA,IAAA,EAClB,CACF;AAAA,EAAA,GACF;AAEJ;"}
1
+ {"version":3,"file":"DismissalPayPeriodSelectionPresentation.js","sources":["../../../../../src/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { Flex, ActionsLayout } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useI18n } from '@/i18n'\nimport type { SelectOption } from '@/components/Common/UI/Select/SelectTypes'\n\n/** @internal */\nexport interface DismissalPayPeriodSelectionPresentationProps {\n /** Pay period options to display in the select. */\n payPeriodOptions: SelectOption[]\n /** Key of the currently selected pay period option, or undefined when none is selected. */\n selectedPeriodKey: string | undefined\n /** Called when the user selects a pay period from the options. */\n onSelectPeriod: (value: string) => void\n /** Called when the user clicks the continue button. */\n onSubmit: () => void\n /** Whether the submit action is in flight. */\n isPending: boolean\n /** CSS class name applied to the root element. */\n className?: string\n}\n\n/** @internal */\nexport function DismissalPayPeriodSelectionPresentation({\n payPeriodOptions,\n selectedPeriodKey,\n onSelectPeriod,\n onSubmit,\n isPending,\n className,\n}: DismissalPayPeriodSelectionPresentationProps) {\n useI18n('Payroll.Dismissal')\n const { t } = useTranslation('Payroll.Dismissal')\n const { Heading, Text, Select, Button, Alert } = useComponentContext()\n\n const hasNoPayPeriods = payPeriodOptions.length === 0\n\n if (hasNoPayPeriods) {\n return (\n <Flex className={className} flexDirection=\"column\" gap={24}>\n <Flex flexDirection=\"column\" gap={4}>\n <Heading as=\"h2\">{t('pageTitle')}</Heading>\n </Flex>\n <Alert status=\"info\" label={t('emptyState')} />\n </Flex>\n )\n }\n\n return (\n <Flex className={className} flexDirection=\"column\" gap={24}>\n <Flex flexDirection=\"column\" gap={4}>\n <Heading as=\"h2\">{t('pageTitle')}</Heading>\n <Text variant=\"supporting\">{t('pageDescription')}</Text>\n </Flex>\n\n <Select\n label={t('selectLabel')}\n options={payPeriodOptions}\n value={selectedPeriodKey}\n onChange={onSelectPeriod}\n placeholder={t('selectPlaceholder')}\n isRequired\n />\n\n <ActionsLayout>\n <Button\n variant=\"primary\"\n onClick={onSubmit}\n isLoading={isPending}\n isDisabled={isPending || selectedPeriodKey === undefined}\n >\n {t('continueCta')}\n </Button>\n </ActionsLayout>\n </Flex>\n )\n}\n"],"names":["DismissalPayPeriodSelectionPresentation","payPeriodOptions","selectedPeriodKey","onSelectPeriod","onSubmit","isPending","className","useI18n","t","useTranslation","Heading","Text","Select","Button","Alert","useComponentContext","Flex","jsx","jsxs","ActionsLayout"],"mappings":";;;;;;AAuBO,SAASA,EAAwC;AAAA,EACtD,kBAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,UAAAC;AAAA,EACA,WAAAC;AAAA,EACA,WAAAC;AACF,GAAiD;AAC/C,EAAAC,EAAQ,mBAAmB;AAC3B,QAAM,EAAE,GAAAC,EAAA,IAAMC,EAAe,mBAAmB,GAC1C,EAAE,SAAAC,GAAS,MAAAC,GAAM,QAAAC,GAAQ,QAAAC,GAAQ,OAAAC,EAAA,IAAUC,EAAA;AAIjD,SAFwBd,EAAiB,WAAW,sBAI/Ce,GAAA,EAAK,WAAAV,GAAsB,eAAc,UAAS,KAAK,IACtD,UAAA;AAAA,IAAA,gBAAAW,EAACD,GAAA,EAAK,eAAc,UAAS,KAAK,GAChC,UAAA,gBAAAC,EAACP,GAAA,EAAQ,IAAG,MAAM,UAAAF,EAAE,WAAW,EAAA,CAAE,GACnC;AAAA,sBACCM,GAAA,EAAM,QAAO,QAAO,OAAON,EAAE,YAAY,EAAA,CAAG;AAAA,EAAA,GAC/C,sBAKDQ,GAAA,EAAK,WAAAV,GAAsB,eAAc,UAAS,KAAK,IACtD,UAAA;AAAA,IAAA,gBAAAY,EAACF,GAAA,EAAK,eAAc,UAAS,KAAK,GAChC,UAAA;AAAA,MAAA,gBAAAC,EAACP,GAAA,EAAQ,IAAG,MAAM,UAAAF,EAAE,WAAW,GAAE;AAAA,wBAChCG,GAAA,EAAK,SAAQ,cAAc,UAAAH,EAAE,iBAAiB,EAAA,CAAE;AAAA,IAAA,GACnD;AAAA,IAEA,gBAAAS;AAAA,MAACL;AAAA,MAAA;AAAA,QACC,OAAOJ,EAAE,aAAa;AAAA,QACtB,SAASP;AAAA,QACT,OAAOC;AAAA,QACP,UAAUC;AAAA,QACV,aAAaK,EAAE,mBAAmB;AAAA,QAClC,YAAU;AAAA,MAAA;AAAA,IAAA;AAAA,sBAGXW,GAAA,EACC,UAAA,gBAAAF;AAAA,MAACJ;AAAA,MAAA;AAAA,QACC,SAAQ;AAAA,QACR,SAAST;AAAA,QACT,WAAWC;AAAA,QACX,YAAYA,KAAaH,MAAsB;AAAA,QAE9C,YAAE,aAAa;AAAA,MAAA;AAAA,IAAA,EAClB,CACF;AAAA,EAAA,GACF;AAEJ;"}