@gusto/embedded-react-sdk 0.54.0 → 0.54.1-rc.1

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 (415) hide show
  1. package/CHANGELOG.md +39 -0
  2. package/dist/components/Common/FlowBreadcrumbs/breadcrumbTransitionHelpers.d.ts +3 -3
  3. package/dist/components/Common/FlowBreadcrumbs/breadcrumbTransitionHelpers.js +6 -5
  4. package/dist/components/Common/FlowBreadcrumbs/breadcrumbTransitionHelpers.js.map +1 -1
  5. package/dist/components/Common/Loading/Loading.d.ts +6 -1
  6. package/dist/components/Common/Loading/Loading.js +13 -12
  7. package/dist/components/Common/Loading/Loading.js.map +1 -1
  8. package/dist/components/Common/Loading/Loading.module.scss.js +1 -1
  9. package/dist/components/Common/PayrollLoading/PayrollLoading.js +1 -1
  10. package/dist/components/Common/PayrollLoading/PayrollLoading.js.map +1 -1
  11. package/dist/components/Common/UI/Alert/Alert.js +8 -8
  12. package/dist/components/Common/UI/Alert/Alert.js.map +1 -1
  13. package/dist/components/Common/UI/Alert/Alert.module.scss.js +18 -16
  14. package/dist/components/Common/UI/Alert/Alert.module.scss.js.map +1 -1
  15. package/dist/components/Common/UI/Breadcrumbs/Breadcrumbs.js +1 -1
  16. package/dist/components/Common/UI/FileInput/FileInput.js +1 -1
  17. package/dist/components/Common/UI/Menu/Menu.js +19 -18
  18. package/dist/components/Common/UI/Menu/Menu.js.map +1 -1
  19. package/dist/components/Common/UI/ProgressBar/ProgressBar.js +4 -4
  20. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +3 -4
  21. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
  22. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +3 -4
  23. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
  24. package/dist/components/Company/AssignSignatory/useAssignSignatory.js +5 -6
  25. package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
  26. package/dist/components/Company/BankAccount/BankAccount.js +9 -9
  27. package/dist/components/Company/BankAccount/BankAccount.js.map +1 -1
  28. package/dist/components/Company/BankAccount/BankAccountForm/context.js +3 -4
  29. package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
  30. package/dist/components/Company/BankAccount/stateMachine.d.ts +3 -3
  31. package/dist/components/Company/BankAccount/stateMachine.js +7 -6
  32. package/dist/components/Company/BankAccount/stateMachine.js.map +1 -1
  33. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +3 -4
  34. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  35. package/dist/components/Company/DocumentSigner/DocumentSigner.js +10 -10
  36. package/dist/components/Company/DocumentSigner/DocumentSigner.js.map +1 -1
  37. package/dist/components/Company/DocumentSigner/assignSignatoryState.d.ts +1 -1
  38. package/dist/components/Company/DocumentSigner/assignSignatoryState.js +13 -12
  39. package/dist/components/Company/DocumentSigner/assignSignatoryState.js.map +1 -1
  40. package/dist/components/Company/DocumentSigner/shared/useSignCompanyForm/fields.js +4 -4
  41. package/dist/components/Company/DocumentSigner/stateMachine.d.ts +4 -4
  42. package/dist/components/Company/DocumentSigner/stateMachine.js +14 -13
  43. package/dist/components/Company/DocumentSigner/stateMachine.js.map +1 -1
  44. package/dist/components/Company/FederalTaxes/useFederalTaxes.js +5 -6
  45. package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
  46. package/dist/components/Company/Industry/Context.js +6 -7
  47. package/dist/components/Company/Industry/Context.js.map +1 -1
  48. package/dist/components/Company/Industry/Industry.js +2 -2
  49. package/dist/components/Company/Industry/Industry.js.map +1 -1
  50. package/dist/components/Company/Locations/LocationForm/useLocationForm.js +3 -4
  51. package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
  52. package/dist/components/Company/Locations/Locations.js +8 -8
  53. package/dist/components/Company/Locations/Locations.js.map +1 -1
  54. package/dist/components/Company/Locations/LocationsList/useLocationsList.js +3 -4
  55. package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
  56. package/dist/components/Company/Locations/stateMachine.d.ts +3 -3
  57. package/dist/components/Company/Locations/stateMachine.js +3 -2
  58. package/dist/components/Company/Locations/stateMachine.js.map +1 -1
  59. package/dist/components/Company/OnboardingFlow/OnboardingFlow.js +8 -8
  60. package/dist/components/Company/OnboardingFlow/OnboardingFlow.js.map +1 -1
  61. package/dist/components/Company/OnboardingFlow/onboardingStateMachine.d.ts +10 -10
  62. package/dist/components/Company/OnboardingFlow/onboardingStateMachine.js +11 -10
  63. package/dist/components/Company/OnboardingFlow/onboardingStateMachine.js.map +1 -1
  64. package/dist/components/Company/OnboardingOverview/OnboardingOverview.js +20 -19
  65. package/dist/components/Company/OnboardingOverview/OnboardingOverview.js.map +1 -1
  66. package/dist/components/Company/OnboardingOverview/context.js +3 -4
  67. package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
  68. package/dist/components/Company/PaySchedule/PaySchedule.js +16 -15
  69. package/dist/components/Company/PaySchedule/PaySchedule.js.map +1 -1
  70. package/dist/components/Company/PaySchedule/PayScheduleForm.js +29 -28
  71. package/dist/components/Company/PaySchedule/PayScheduleForm.js.map +1 -1
  72. package/dist/components/Company/PaySchedule/payScheduleStateMachine.d.ts +3 -3
  73. package/dist/components/Company/PaySchedule/payScheduleStateMachine.js +4 -3
  74. package/dist/components/Company/PaySchedule/payScheduleStateMachine.js.map +1 -1
  75. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/fields.d.ts +1 -1
  76. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/fields.js +5 -5
  77. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/fields.js.map +1 -1
  78. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/payScheduleSchema.js +24 -21
  79. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/payScheduleSchema.js.map +1 -1
  80. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/usePayScheduleForm.js +11 -11
  81. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/usePayScheduleForm.js.map +1 -1
  82. package/dist/components/Company/StateTaxes/StateTaxes.js +8 -8
  83. package/dist/components/Company/StateTaxes/StateTaxes.js.map +1 -1
  84. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +3 -4
  85. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
  86. package/dist/components/Company/StateTaxes/StateTaxesList/context.js +3 -4
  87. package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
  88. package/dist/components/Company/StateTaxes/TaxRateManagement/TaxRateHistorySection.js +14 -13
  89. package/dist/components/Company/StateTaxes/TaxRateManagement/TaxRateHistorySection.js.map +1 -1
  90. package/dist/components/Company/StateTaxes/TaxRateManagement/context.js +3 -4
  91. package/dist/components/Company/StateTaxes/TaxRateManagement/context.js.map +1 -1
  92. package/dist/components/Company/StateTaxes/stateTaxesStateMachine.d.ts +3 -3
  93. package/dist/components/Company/StateTaxes/stateTaxesStateMachine.js +13 -12
  94. package/dist/components/Company/StateTaxes/stateTaxesStateMachine.js.map +1 -1
  95. package/dist/components/Contractor/Address/management/Address.js +7 -7
  96. package/dist/components/Contractor/Address/management/Address.js.map +1 -1
  97. package/dist/components/Contractor/Address/management/addressStateMachine.d.ts +2 -2
  98. package/dist/components/Contractor/Address/management/addressStateMachine.js +14 -13
  99. package/dist/components/Contractor/Address/management/addressStateMachine.js.map +1 -1
  100. package/dist/components/Contractor/Compensation/management/Compensation.js +7 -7
  101. package/dist/components/Contractor/Compensation/management/Compensation.js.map +1 -1
  102. package/dist/components/Contractor/Compensation/management/compensationStateMachine.d.ts +2 -2
  103. package/dist/components/Contractor/Compensation/management/compensationStateMachine.js +4 -3
  104. package/dist/components/Contractor/Compensation/management/compensationStateMachine.js.map +1 -1
  105. package/dist/components/Contractor/ContractorList/management/ManagementContractorListView.js +22 -21
  106. package/dist/components/Contractor/ContractorList/management/ManagementContractorListView.js.map +1 -1
  107. package/dist/components/Contractor/Dashboard/DashboardFlow.js +8 -8
  108. package/dist/components/Contractor/Dashboard/DashboardFlow.js.map +1 -1
  109. package/dist/components/Contractor/Dashboard/dashboardStateMachine.d.ts +5 -5
  110. package/dist/components/Contractor/Dashboard/dashboardStateMachine.js +7 -6
  111. package/dist/components/Contractor/Dashboard/dashboardStateMachine.js.map +1 -1
  112. package/dist/components/Contractor/Documents/onboarding/DocumentSigner/DocumentSigner.js +8 -8
  113. package/dist/components/Contractor/Documents/onboarding/DocumentSigner/DocumentSigner.js.map +1 -1
  114. package/dist/components/Contractor/Documents/onboarding/DocumentSigner/stateMachine.d.ts +2 -2
  115. package/dist/components/Contractor/Documents/onboarding/DocumentSigner/stateMachine.js +13 -12
  116. package/dist/components/Contractor/Documents/onboarding/DocumentSigner/stateMachine.js.map +1 -1
  117. package/dist/components/Contractor/Documents/shared/SignatureForm/useContractorSignatureForm/fields.js +8 -8
  118. package/dist/components/Contractor/Landing/Landing.js +30 -29
  119. package/dist/components/Contractor/Landing/Landing.js.map +1 -1
  120. package/dist/components/Contractor/OnboardingFlow/OnboardingFlow.js +8 -8
  121. package/dist/components/Contractor/OnboardingFlow/OnboardingFlow.js.map +1 -1
  122. package/dist/components/Contractor/OnboardingFlow/onboardingStateMachine.d.ts +7 -7
  123. package/dist/components/Contractor/OnboardingFlow/onboardingStateMachine.js +8 -7
  124. package/dist/components/Contractor/OnboardingFlow/onboardingStateMachine.js.map +1 -1
  125. package/dist/components/Contractor/OnboardingSummary/OnboardingSummary.js +18 -17
  126. package/dist/components/Contractor/OnboardingSummary/OnboardingSummary.js.map +1 -1
  127. package/dist/components/Contractor/PaymentMethod/management/PaymentMethod.js +7 -7
  128. package/dist/components/Contractor/PaymentMethod/management/PaymentMethod.js.map +1 -1
  129. package/dist/components/Contractor/PaymentMethod/management/paymentMethodStateMachine.d.ts +2 -2
  130. package/dist/components/Contractor/PaymentMethod/management/paymentMethodStateMachine.js +14 -13
  131. package/dist/components/Contractor/PaymentMethod/management/paymentMethodStateMachine.js.map +1 -1
  132. package/dist/components/Contractor/PaymentMethod/shared/useContractorBankAccountForm/fields.js +1 -1
  133. package/dist/components/Contractor/Payments/CreateHistoricalPayment/CreateHistoricalPayment.d.ts +41 -0
  134. package/dist/components/Contractor/Payments/CreateHistoricalPayment/CreateHistoricalPayment.js +175 -0
  135. package/dist/components/Contractor/Payments/CreateHistoricalPayment/CreateHistoricalPayment.js.map +1 -0
  136. package/dist/components/Contractor/Payments/CreateHistoricalPayment/index.d.ts +1 -0
  137. package/dist/components/Contractor/Payments/CreateHistoricalPayment/useFormDictionary.d.ts +18 -0
  138. package/dist/components/Contractor/Payments/{HistoricalPaymentAmounts → CreateHistoricalPayment}/useFormDictionary.js +37 -7
  139. package/dist/components/Contractor/Payments/CreateHistoricalPayment/useFormDictionary.js.map +1 -0
  140. package/dist/components/Contractor/Payments/CreatePaymentFlow/CreatePaymentFlow.js +9 -9
  141. package/dist/components/Contractor/Payments/CreatePaymentFlow/CreatePaymentFlow.js.map +1 -1
  142. package/dist/components/Contractor/Payments/CreatePaymentFlow/createPaymentMachine.d.ts +2 -2
  143. package/dist/components/Contractor/Payments/CreatePaymentFlow/createPaymentMachine.js +9 -8
  144. package/dist/components/Contractor/Payments/CreatePaymentFlow/createPaymentMachine.js.map +1 -1
  145. package/dist/components/Contractor/Payments/HistoricalPaymentSummary/HistoricalPaymentSummary.d.ts +30 -0
  146. package/dist/components/Contractor/Payments/HistoricalPaymentSummary/HistoricalPaymentSummary.js +56 -0
  147. package/dist/components/Contractor/Payments/HistoricalPaymentSummary/HistoricalPaymentSummary.js.map +1 -0
  148. package/dist/components/Contractor/Payments/HistoricalPaymentSummary/index.d.ts +1 -0
  149. package/dist/components/Contractor/Payments/HistoricalPaymentSummary/useFormDictionary.d.ts +9 -0
  150. package/dist/components/Contractor/Payments/HistoricalPaymentSummary/useFormDictionary.js +33 -0
  151. package/dist/components/Contractor/Payments/HistoricalPaymentSummary/useFormDictionary.js.map +1 -0
  152. package/dist/components/Contractor/Payments/PaymentFlow/PaymentFlow.js +8 -8
  153. package/dist/components/Contractor/Payments/PaymentFlow/PaymentFlow.js.map +1 -1
  154. package/dist/components/Contractor/Payments/PaymentFlow/paymentStateMachine.d.ts +4 -4
  155. package/dist/components/Contractor/Payments/PaymentFlow/paymentStateMachine.js +10 -9
  156. package/dist/components/Contractor/Payments/PaymentFlow/paymentStateMachine.js.map +1 -1
  157. package/dist/components/Contractor/Payments/PaymentSummary/PaymentSummaryPresentation.js +46 -131
  158. package/dist/components/Contractor/Payments/PaymentSummary/PaymentSummaryPresentation.js.map +1 -1
  159. package/dist/components/Contractor/Payments/PaymentSummary/useFormDictionary.d.ts +9 -0
  160. package/dist/components/Contractor/Payments/PaymentSummary/useFormDictionary.js +36 -0
  161. package/dist/components/Contractor/Payments/PaymentSummary/useFormDictionary.js.map +1 -0
  162. package/dist/components/Contractor/Payments/ViewPaymentFlow/ViewPaymentFlow.js +8 -8
  163. package/dist/components/Contractor/Payments/ViewPaymentFlow/ViewPaymentFlow.js.map +1 -1
  164. package/dist/components/Contractor/Payments/ViewPaymentFlow/viewPaymentMachine.d.ts +2 -2
  165. package/dist/components/Contractor/Payments/ViewPaymentFlow/viewPaymentMachine.js +15 -14
  166. package/dist/components/Contractor/Payments/ViewPaymentFlow/viewPaymentMachine.js.map +1 -1
  167. package/dist/components/Contractor/Payments/shared/PaymentSummaryBlock/PaymentSummaryBlock.d.ts +83 -0
  168. package/dist/components/Contractor/Payments/shared/PaymentSummaryBlock/PaymentSummaryBlock.js +124 -0
  169. package/dist/components/Contractor/Payments/shared/PaymentSummaryBlock/PaymentSummaryBlock.js.map +1 -0
  170. package/dist/components/Contractor/Payments/shared/PaymentSummaryBlock/index.d.ts +1 -0
  171. package/dist/components/Contractor/Profile/management/Profile.js +7 -7
  172. package/dist/components/Contractor/Profile/management/Profile.js.map +1 -1
  173. package/dist/components/Contractor/Profile/management/profileStateMachine.d.ts +2 -2
  174. package/dist/components/Contractor/Profile/management/profileStateMachine.js +11 -10
  175. package/dist/components/Contractor/Profile/management/profileStateMachine.js.map +1 -1
  176. package/dist/components/Contractor/Profile/shared/useContractorDetailsForm/fields.js +16 -16
  177. package/dist/components/Contractor/SelfOnboardingFlow/SelfOnboardingFlow.js +8 -8
  178. package/dist/components/Contractor/SelfOnboardingFlow/SelfOnboardingFlow.js.map +1 -1
  179. package/dist/components/Contractor/SelfOnboardingFlow/selfOnboardingMachine.d.ts +5 -5
  180. package/dist/components/Contractor/SelfOnboardingFlow/selfOnboardingMachine.js +7 -6
  181. package/dist/components/Contractor/SelfOnboardingFlow/selfOnboardingMachine.js.map +1 -1
  182. package/dist/components/Contractor/exports/contractorManagement.d.ts +2 -2
  183. package/dist/components/Contractor/exports/contractorManagement.js +20 -20
  184. package/dist/components/Employee/Compensation/management/Compensation.js +7 -7
  185. package/dist/components/Employee/Compensation/management/Compensation.js.map +1 -1
  186. package/dist/components/Employee/Compensation/management/CompensationComponents.js +4 -4
  187. package/dist/components/Employee/Compensation/management/compensationStateMachine.d.ts +4 -4
  188. package/dist/components/Employee/Compensation/management/compensationStateMachine.js +21 -20
  189. package/dist/components/Employee/Compensation/management/compensationStateMachine.js.map +1 -1
  190. package/dist/components/Employee/Compensation/onboarding/Compensation.js +11 -11
  191. package/dist/components/Employee/Compensation/onboarding/Compensation.js.map +1 -1
  192. package/dist/components/Employee/Compensation/onboarding/compensationStateMachine.d.ts +4 -4
  193. package/dist/components/Employee/Compensation/onboarding/compensationStateMachine.js +11 -10
  194. package/dist/components/Employee/Compensation/onboarding/compensationStateMachine.js.map +1 -1
  195. package/dist/components/Employee/Compensation/shared/useCompensationForm/fields.js +4 -4
  196. package/dist/components/Employee/Compensation/shared/useJobForm/fields.js +6 -6
  197. package/dist/components/Employee/Dashboard/DashboardFlow.js +8 -8
  198. package/dist/components/Employee/Dashboard/DashboardFlow.js.map +1 -1
  199. package/dist/components/Employee/Dashboard/dashboardStateMachine.d.ts +13 -13
  200. package/dist/components/Employee/Dashboard/dashboardStateMachine.js +15 -14
  201. package/dist/components/Employee/Dashboard/dashboardStateMachine.js.map +1 -1
  202. package/dist/components/Employee/Deductions/management/Deductions.js +7 -7
  203. package/dist/components/Employee/Deductions/management/Deductions.js.map +1 -1
  204. package/dist/components/Employee/Deductions/management/deductionsStateMachine.d.ts +2 -2
  205. package/dist/components/Employee/Deductions/management/deductionsStateMachine.js +9 -8
  206. package/dist/components/Employee/Deductions/management/deductionsStateMachine.js.map +1 -1
  207. package/dist/components/Employee/Deductions/onboarding/Deductions.js +7 -7
  208. package/dist/components/Employee/Deductions/onboarding/Deductions.js.map +1 -1
  209. package/dist/components/Employee/Deductions/onboarding/stateMachine.d.ts +3 -3
  210. package/dist/components/Employee/Deductions/onboarding/stateMachine.js +9 -8
  211. package/dist/components/Employee/Deductions/onboarding/stateMachine.js.map +1 -1
  212. package/dist/components/Employee/Deductions/shared/useChildSupportGarnishmentForm/fields.js +8 -8
  213. package/dist/components/Employee/Deductions/shared/useDeductionForm/fields.js +4 -4
  214. package/dist/components/Employee/Documents/management/DocumentManager.js +2 -1
  215. package/dist/components/Employee/Documents/management/DocumentManager.js.map +1 -1
  216. package/dist/components/Employee/Documents/management/Documents.js +7 -7
  217. package/dist/components/Employee/Documents/management/Documents.js.map +1 -1
  218. package/dist/components/Employee/Documents/management/documentsStateMachine.d.ts +2 -2
  219. package/dist/components/Employee/Documents/management/documentsStateMachine.js +4 -3
  220. package/dist/components/Employee/Documents/management/documentsStateMachine.js.map +1 -1
  221. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js +3 -4
  222. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  223. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentSigner.js +10 -10
  224. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentSigner.js.map +1 -1
  225. package/dist/components/Employee/Documents/onboarding/DocumentSigner/stateMachine.d.ts +4 -4
  226. package/dist/components/Employee/Documents/onboarding/DocumentSigner/stateMachine.js +13 -12
  227. package/dist/components/Employee/Documents/onboarding/DocumentSigner/stateMachine.js.map +1 -1
  228. package/dist/components/Employee/Documents/shared/useSignEmployeeForm/fields.js +1 -1
  229. package/dist/components/Employee/EmployeeListFlow/EmployeeListFlow.js +8 -8
  230. package/dist/components/Employee/EmployeeListFlow/EmployeeListFlow.js.map +1 -1
  231. package/dist/components/Employee/EmployeeListFlow/employeeListStateMachine.d.ts +4 -4
  232. package/dist/components/Employee/EmployeeListFlow/employeeListStateMachine.js +8 -7
  233. package/dist/components/Employee/EmployeeListFlow/employeeListStateMachine.js.map +1 -1
  234. package/dist/components/Employee/FederalTaxes/management/FederalTaxes.js +7 -7
  235. package/dist/components/Employee/FederalTaxes/management/FederalTaxes.js.map +1 -1
  236. package/dist/components/Employee/FederalTaxes/management/federalTaxesStateMachine.d.ts +2 -2
  237. package/dist/components/Employee/FederalTaxes/management/federalTaxesStateMachine.js +4 -3
  238. package/dist/components/Employee/FederalTaxes/management/federalTaxesStateMachine.js.map +1 -1
  239. package/dist/components/Employee/FederalTaxes/shared/FederalTaxesView.js +1 -1
  240. package/dist/components/Employee/FederalTaxes/shared/useFederalTaxesForm/fields.js +4 -4
  241. package/dist/components/Employee/HomeAddress/management/HomeAddress.js +7 -7
  242. package/dist/components/Employee/HomeAddress/management/HomeAddress.js.map +1 -1
  243. package/dist/components/Employee/HomeAddress/management/homeAddressStateMachine.d.ts +2 -2
  244. package/dist/components/Employee/HomeAddress/management/homeAddressStateMachine.js +6 -5
  245. package/dist/components/Employee/HomeAddress/management/homeAddressStateMachine.js.map +1 -1
  246. package/dist/components/Employee/Landing/Landing.js +31 -30
  247. package/dist/components/Employee/Landing/Landing.js.map +1 -1
  248. package/dist/components/Employee/OnboardingExecutionFlow/OnboardingExecutionFlow.js +6 -6
  249. package/dist/components/Employee/OnboardingExecutionFlow/OnboardingExecutionFlow.js.map +1 -1
  250. package/dist/components/Employee/OnboardingExecutionFlow/onboardingExecutionStateMachine.d.ts +8 -8
  251. package/dist/components/Employee/OnboardingExecutionFlow/onboardingExecutionStateMachine.js +20 -19
  252. package/dist/components/Employee/OnboardingExecutionFlow/onboardingExecutionStateMachine.js.map +1 -1
  253. package/dist/components/Employee/OnboardingFlow/OnboardingFlow.js +8 -8
  254. package/dist/components/Employee/OnboardingFlow/OnboardingFlow.js.map +1 -1
  255. package/dist/components/Employee/OnboardingFlow/onboardingStateMachine.d.ts +3 -3
  256. package/dist/components/Employee/OnboardingFlow/onboardingStateMachine.js +4 -3
  257. package/dist/components/Employee/OnboardingFlow/onboardingStateMachine.js.map +1 -1
  258. package/dist/components/Employee/OnboardingSummary/OnboardingSummary.js +59 -58
  259. package/dist/components/Employee/OnboardingSummary/OnboardingSummary.js.map +1 -1
  260. package/dist/components/Employee/PaymentMethod/management/PaymentMethod.js +7 -7
  261. package/dist/components/Employee/PaymentMethod/management/PaymentMethod.js.map +1 -1
  262. package/dist/components/Employee/PaymentMethod/management/PaymentMethodBankForm.js +4 -4
  263. package/dist/components/Employee/PaymentMethod/management/paymentMethodStateMachine.d.ts +3 -3
  264. package/dist/components/Employee/PaymentMethod/management/paymentMethodStateMachine.js +9 -8
  265. package/dist/components/Employee/PaymentMethod/management/paymentMethodStateMachine.js.map +1 -1
  266. package/dist/components/Employee/PaymentMethod/onboarding/BankForm.js +4 -4
  267. package/dist/components/Employee/PaymentMethod/onboarding/PaymentMethod.js +8 -8
  268. package/dist/components/Employee/PaymentMethod/onboarding/PaymentMethod.js.map +1 -1
  269. package/dist/components/Employee/PaymentMethod/onboarding/paymentMethodStateMachine.d.ts +3 -3
  270. package/dist/components/Employee/PaymentMethod/onboarding/paymentMethodStateMachine.js +7 -6
  271. package/dist/components/Employee/PaymentMethod/onboarding/paymentMethodStateMachine.js.map +1 -1
  272. package/dist/components/Employee/PaymentMethod/shared/useBankForm/fields.js +1 -1
  273. package/dist/components/Employee/PaymentMethod/shared/useSplitPaymentsForm/splitFieldFactory.js +4 -4
  274. package/dist/components/Employee/Profile/management/Profile.js +7 -7
  275. package/dist/components/Employee/Profile/management/Profile.js.map +1 -1
  276. package/dist/components/Employee/Profile/management/profileStateMachine.d.ts +2 -2
  277. package/dist/components/Employee/Profile/management/profileStateMachine.js +12 -11
  278. package/dist/components/Employee/Profile/management/profileStateMachine.js.map +1 -1
  279. package/dist/components/Employee/Profile/shared/useEmployeeDetailsForm/fields.js +8 -8
  280. package/dist/components/Employee/Profile/shared/useHomeAddressForm/fields.js +5 -5
  281. package/dist/components/Employee/Profile/shared/useWorkAddressForm/fields.js +4 -4
  282. package/dist/components/Employee/SelfOnboardingFlow/SelfOnboardingFlow.js +8 -8
  283. package/dist/components/Employee/SelfOnboardingFlow/SelfOnboardingFlow.js.map +1 -1
  284. package/dist/components/Employee/SelfOnboardingFlow/selfOnboardingMachine.d.ts +6 -6
  285. package/dist/components/Employee/SelfOnboardingFlow/selfOnboardingMachine.js +21 -20
  286. package/dist/components/Employee/SelfOnboardingFlow/selfOnboardingMachine.js.map +1 -1
  287. package/dist/components/Employee/StateTaxes/management/StateTaxes.js +7 -7
  288. package/dist/components/Employee/StateTaxes/management/StateTaxes.js.map +1 -1
  289. package/dist/components/Employee/StateTaxes/management/stateTaxesStateMachine.d.ts +2 -2
  290. package/dist/components/Employee/StateTaxes/management/stateTaxesStateMachine.js +4 -3
  291. package/dist/components/Employee/StateTaxes/management/stateTaxesStateMachine.js.map +1 -1
  292. package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/fieldComponents.js +8 -8
  293. package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlow.js +9 -9
  294. package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlow.js.map +1 -1
  295. package/dist/components/Employee/Terminations/TerminationFlow/terminationStateMachine.d.ts +4 -4
  296. package/dist/components/Employee/Terminations/TerminationFlow/terminationStateMachine.js +7 -6
  297. package/dist/components/Employee/Terminations/TerminationFlow/terminationStateMachine.js.map +1 -1
  298. package/dist/components/Employee/WorkAddress/management/WorkAddress.js +7 -7
  299. package/dist/components/Employee/WorkAddress/management/WorkAddress.js.map +1 -1
  300. package/dist/components/Employee/WorkAddress/management/workAddressStateMachine.d.ts +2 -2
  301. package/dist/components/Employee/WorkAddress/management/workAddressStateMachine.js +2 -1
  302. package/dist/components/Employee/WorkAddress/management/workAddressStateMachine.js.map +1 -1
  303. package/dist/components/Flow/Flow.d.ts +6 -7
  304. package/dist/components/Flow/Flow.js +27 -21
  305. package/dist/components/Flow/Flow.js.map +1 -1
  306. package/dist/components/InformationRequests/InformationRequests.js +19 -19
  307. package/dist/components/InformationRequests/InformationRequests.js.map +1 -1
  308. package/dist/components/InformationRequests/informationRequestsStateMachine.d.ts +3 -3
  309. package/dist/components/InformationRequests/informationRequestsStateMachine.js +10 -9
  310. package/dist/components/InformationRequests/informationRequestsStateMachine.js.map +1 -1
  311. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.js +18 -18
  312. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.js.map +1 -1
  313. package/dist/components/Payroll/ConfirmWireDetails/confirmWireDetailsStateMachine.d.ts +4 -4
  314. package/dist/components/Payroll/ConfirmWireDetails/confirmWireDetailsStateMachine.js +4 -3
  315. package/dist/components/Payroll/ConfirmWireDetails/confirmWireDetailsStateMachine.js.map +1 -1
  316. package/dist/components/Payroll/Dismissal/DismissalFlow.js +7 -7
  317. package/dist/components/Payroll/Dismissal/DismissalFlow.js.map +1 -1
  318. package/dist/components/Payroll/Dismissal/dismissalStateMachine.d.ts +2 -2
  319. package/dist/components/Payroll/Dismissal/dismissalStateMachine.js +10 -9
  320. package/dist/components/Payroll/Dismissal/dismissalStateMachine.js.map +1 -1
  321. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js +2 -3
  322. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js.map +1 -1
  323. package/dist/components/Payroll/OffCycle/OffCycleFlow.js +7 -7
  324. package/dist/components/Payroll/OffCycle/OffCycleFlow.js.map +1 -1
  325. package/dist/components/Payroll/OffCycle/offCycleStateMachine.d.ts +2 -2
  326. package/dist/components/Payroll/OffCycle/offCycleStateMachine.js +15 -14
  327. package/dist/components/Payroll/OffCycle/offCycleStateMachine.js.map +1 -1
  328. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js +44 -44
  329. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js.map +1 -1
  330. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js +108 -108
  331. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js.map +1 -1
  332. package/dist/components/Payroll/PayrollExecutionFlow/PayrollExecutionFlow.js +9 -9
  333. package/dist/components/Payroll/PayrollExecutionFlow/PayrollExecutionFlow.js.map +1 -1
  334. package/dist/components/Payroll/PayrollExecutionFlow/payrollExecutionMachine.d.ts +5 -5
  335. package/dist/components/Payroll/PayrollExecutionFlow/payrollExecutionMachine.js +12 -11
  336. package/dist/components/Payroll/PayrollExecutionFlow/payrollExecutionMachine.js.map +1 -1
  337. package/dist/components/Payroll/PayrollFlow/PayrollFlow.js +10 -10
  338. package/dist/components/Payroll/PayrollFlow/PayrollFlow.js.map +1 -1
  339. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.d.ts +7 -7
  340. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js +15 -14
  341. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js.map +1 -1
  342. package/dist/components/Payroll/PayrollLanding/PayrollLanding.js +7 -7
  343. package/dist/components/Payroll/PayrollLanding/PayrollLanding.js.map +1 -1
  344. package/dist/components/Payroll/PayrollLanding/payrollLandingStateMachine.d.ts +3 -3
  345. package/dist/components/Payroll/PayrollLanding/payrollLandingStateMachine.js +13 -12
  346. package/dist/components/Payroll/PayrollLanding/payrollLandingStateMachine.js.map +1 -1
  347. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js +1 -1
  348. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js.map +1 -1
  349. package/dist/components/Payroll/RecoveryCases/RecoveryCases.js +12 -12
  350. package/dist/components/Payroll/RecoveryCases/RecoveryCases.js.map +1 -1
  351. package/dist/components/Payroll/RecoveryCases/recoveryCasesStateMachine.d.ts +3 -3
  352. package/dist/components/Payroll/RecoveryCases/recoveryCasesStateMachine.js +6 -5
  353. package/dist/components/Payroll/RecoveryCases/recoveryCasesStateMachine.js.map +1 -1
  354. package/dist/components/Payroll/Transition/TransitionFlow.js +7 -7
  355. package/dist/components/Payroll/Transition/TransitionFlow.js.map +1 -1
  356. package/dist/components/Payroll/Transition/transitionStateMachine.d.ts +2 -2
  357. package/dist/components/Payroll/Transition/transitionStateMachine.js +15 -14
  358. package/dist/components/Payroll/Transition/transitionStateMachine.js.map +1 -1
  359. package/dist/components/Payroll/usePreparedPayrollData.js +8 -9
  360. package/dist/components/Payroll/usePreparedPayrollData.js.map +1 -1
  361. package/dist/components/TimeOff/TimeOffFlow/TimeOffFlow.js +8 -8
  362. package/dist/components/TimeOff/TimeOffFlow/TimeOffFlow.js.map +1 -1
  363. package/dist/components/TimeOff/TimeOffFlow/timeOffStateMachine.d.ts +14 -14
  364. package/dist/components/TimeOff/TimeOffFlow/timeOffStateMachine.js +5 -4
  365. package/dist/components/TimeOff/TimeOffFlow/timeOffStateMachine.js.map +1 -1
  366. package/dist/components/TimeOff/shared/EmployeeTable/EmployeeTable.js +23 -23
  367. package/dist/components/TimeOff/shared/EmployeeTable/EmployeeTable.js.map +1 -1
  368. package/dist/contexts/LoadingIndicatorProvider/useLoadingIndicator.d.ts +4 -11
  369. package/dist/contexts/LoadingIndicatorProvider/useLoadingIndicator.js +8 -8
  370. package/dist/contexts/LoadingIndicatorProvider/useLoadingIndicator.js.map +1 -1
  371. package/dist/i18n/I18n.js +7 -7
  372. package/dist/i18n/I18n.js.map +1 -1
  373. package/dist/i18n/en/Company.PaySchedule.json.js +5 -5
  374. package/dist/i18n/en/Company.StateTaxes.json.js +1 -1
  375. package/dist/i18n/en/Company.TimeOff.EmployeeTable.json.js +20 -18
  376. package/dist/i18n/en/Company.TimeOff.EmployeeTable.json.js.map +1 -1
  377. package/dist/i18n/en/Contractor.ManagementContractorList.json.js +46 -44
  378. package/dist/i18n/en/Contractor.ManagementContractorList.json.js.map +1 -1
  379. package/dist/i18n/en/Contractor.Payments.CreateHistoricalPayment.json.js +36 -0
  380. package/dist/i18n/en/Contractor.Payments.CreateHistoricalPayment.json.js.map +1 -0
  381. package/dist/i18n/en/Contractor.Payments.HistoricalPaymentSummary.json.js +48 -0
  382. package/dist/i18n/en/Contractor.Payments.HistoricalPaymentSummary.json.js.map +1 -0
  383. package/dist/i18n/en/Contractor.Payments.PaymentSummary.json.js +7 -7
  384. package/dist/i18n/en/Payroll.PayrollConfiguration.json.js +29 -27
  385. package/dist/i18n/en/Payroll.PayrollConfiguration.json.js.map +1 -1
  386. package/dist/i18n/types.d.ts +219 -105
  387. package/dist/lib/state-machine/__tests__/core.test.d.ts +1 -0
  388. package/dist/lib/state-machine/core.d.ts +20 -0
  389. package/dist/lib/state-machine/core.js +48 -0
  390. package/dist/lib/state-machine/core.js.map +1 -0
  391. package/dist/lib/state-machine/index.d.ts +5 -0
  392. package/dist/lib/state-machine/index.js +39 -0
  393. package/dist/lib/state-machine/index.js.map +1 -0
  394. package/dist/lib/state-machine/types.d.ts +60 -0
  395. package/dist/shared/constants.d.ts +12 -4
  396. package/dist/shared/constants.js +23 -20
  397. package/dist/shared/constants.js.map +1 -1
  398. package/dist/style.css +1 -1
  399. package/dist/types/Helpers.d.ts +1 -3
  400. package/docs/guides/endpoint-inventory.json +30 -1
  401. package/package.json +18 -19
  402. package/dist/components/Contractor/Payments/HistoricalPaymentAmounts/HistoricalPaymentAmounts.d.ts +0 -33
  403. package/dist/components/Contractor/Payments/HistoricalPaymentAmounts/HistoricalPaymentAmounts.js +0 -62
  404. package/dist/components/Contractor/Payments/HistoricalPaymentAmounts/HistoricalPaymentAmounts.js.map +0 -1
  405. package/dist/components/Contractor/Payments/HistoricalPaymentAmounts/index.d.ts +0 -1
  406. package/dist/components/Contractor/Payments/HistoricalPaymentAmounts/useFormDictionary.d.ts +0 -9
  407. package/dist/components/Contractor/Payments/HistoricalPaymentAmounts/useFormDictionary.js.map +0 -1
  408. package/dist/components/Contractor/Payments/HistoricalPaymentContractors/HistoricalPaymentContractors.d.ts +0 -27
  409. package/dist/components/Contractor/Payments/HistoricalPaymentContractors/HistoricalPaymentContractors.js +0 -56
  410. package/dist/components/Contractor/Payments/HistoricalPaymentContractors/HistoricalPaymentContractors.js.map +0 -1
  411. package/dist/components/Contractor/Payments/HistoricalPaymentContractors/index.d.ts +0 -1
  412. package/dist/i18n/en/Contractor.Payments.HistoricalPaymentAmounts.json.js +0 -36
  413. package/dist/i18n/en/Contractor.Payments.HistoricalPaymentAmounts.json.js.map +0 -1
  414. package/dist/i18n/en/Contractor.Payments.HistoricalPaymentContractors.json.js +0 -18
  415. package/dist/i18n/en/Contractor.Payments.HistoricalPaymentContractors.json.js.map +0 -1
@@ -0,0 +1,41 @@
1
+ import { BaseComponentInterface } from '../../../Base';
2
+ /**
3
+ * Props for {@link CreateHistoricalPayment}.
4
+ *
5
+ * @alpha
6
+ */
7
+ export interface CreateHistoricalPaymentProps extends BaseComponentInterface<'Contractor.Payments.CreateHistoricalPayment'> {
8
+ /** UUID of the company recording the historical payment. */
9
+ companyId: string;
10
+ }
11
+ /**
12
+ * Records a historical contractor payment — one that already happened outside Gusto and does not
13
+ * move money — by picking a paid date and the contractors being paid, entering hours, wages,
14
+ * bonuses, and reimbursements for them, then reviewing and submitting.
15
+ *
16
+ * @remarks
17
+ * Every contractor payment is fixed to the `Historical Payment` payment method, so there is no
18
+ * payment method choice or debit information to review.
19
+ * Continue on the contractor-selection step is disabled until the paid date is valid and at least
20
+ * one contractor is selected. Continue on the amounts step is disabled until at least one selected
21
+ * contractor has a payment total greater than zero, and swaps the amounts grid for an in-place
22
+ * review (mirroring `CreatePayment`'s preview step); Edit returns to the grid without losing
23
+ * entered amounts, and Submit creates the contractor payment group. Once creation succeeds, the
24
+ * Edit and Submit buttons are replaced with a success message, since the creation token has been
25
+ * consumed and the host is expected to navigate away (e.g. to `HistoricalPaymentSummary`).
26
+ *
27
+ * @events
28
+ * | Event | Description | Data |
29
+ * | ----- | ----------- | ---- |
30
+ * | `contractor/historicalPayments/edit` | The edit modal was opened for a contractor. | — |
31
+ * | `contractor/historicalPayments/update` | A contractor's payment values were updated locally. | The updated form values (hours, wage, bonus, reimbursement, payment method, etc.). |
32
+ * | `contractor/historicalPayments/preview` | The preview API call succeeded. | The contractor payment group preview response. |
33
+ * | `contractor/historicalPayments/backToEdit` | The user returned from preview to continue editing. | — |
34
+ * | `contractor/historicalPayments/created` | The payment group was successfully created. | The created contractor payment group response. |
35
+ *
36
+ * @param props - See {@link CreateHistoricalPaymentProps}.
37
+ * @returns The rendered contractor-selection screen, the payment-amounts entry screen, or its
38
+ * in-place review.
39
+ * @alpha
40
+ */
41
+ export declare function CreateHistoricalPayment(props: CreateHistoricalPaymentProps): import("react").JSX.Element;
@@ -0,0 +1,175 @@
1
+ import { jsx as t, jsxs as i } from "react/jsx-runtime";
2
+ import { useContractorsListSuspense as j } from "@gusto/embedded-api/react-query/contractorsList";
3
+ import { useContractorPaymentGroupsPreviewMutation as q } from "@gusto/embedded-api/react-query/contractorPaymentGroupsPreview";
4
+ import { useContractorPaymentGroupsCreateMutation as W } from "@gusto/embedded-api/react-query/contractorPaymentGroupsCreate";
5
+ import { RFCDate as O } from "@gusto/embedded-api/types/rfcdate";
6
+ import { useMemo as U, useState as y } from "react";
7
+ import { useTranslation as x } from "react-i18next";
8
+ import { usePaymentAmountsEditor as K } from "../shared/usePaymentAmountsEditor.js";
9
+ import { getHistoricalPaymentCheckDateBounds as V } from "../shared/historicalPaymentDateBounds.js";
10
+ import { useCreateHistoricalPaymentDictionary as z, useCreateHistoricalPaymentReviewDictionary as J } from "./useFormDictionary.js";
11
+ import { formatDateToStringDate as Q } from "../../../../helpers/dateFormatting.js";
12
+ import { Flex as c, FlexItem as X } from "../../../Common/Flex/Flex.js";
13
+ import { ActionsLayout as Z } from "../../../Common/ActionsLayout/ActionsLayout.js";
14
+ import { BaseComponent as $ } from "../../../Base/Base.js";
15
+ import { useBase as tt } from "../../../Base/useBase.js";
16
+ import { useComponentContext as M } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
17
+ import { useI18n as et, useComponentDictionary as nt } from "../../../../i18n/I18n.js";
18
+ import { useDateFormatter as rt } from "../../../../hooks/useDateFormatter.js";
19
+ import { componentEvents as p } from "../../../../shared/constants.js";
20
+ import { SelectContractors as ot } from "../../shared/SelectContractors/SelectContractors.js";
21
+ import { PaymentSummaryBlock as at } from "../shared/PaymentSummaryBlock/PaymentSummaryBlock.js";
22
+ import { SetPaymentAmounts as it } from "../shared/SetPaymentAmounts/SetPaymentAmounts.js";
23
+ const S = ["Historical Payment"];
24
+ function Ot(a) {
25
+ return /* @__PURE__ */ t($, { ...a, componentName: "Contractor.Payments.CreateHistoricalPayment", children: /* @__PURE__ */ t(ct, { ...a }) });
26
+ }
27
+ function ct({ companyId: a, dictionary: R, onEvent: h }) {
28
+ et("Contractor.Payments.CreateHistoricalPayment"), nt("Contractor.Payments.CreateHistoricalPayment", R);
29
+ const { t: e } = x("Contractor.Payments.CreateHistoricalPayment"), { Heading: r, Text: f, Button: u, DatePicker: m } = M(), { minDate: d, maxDate: C } = U(() => V(), []), [o, I] = y(null), [P, E] = y([]), [l, D] = y(null);
30
+ let s = null;
31
+ o !== null && o > C ? s = e("select.dateInFutureError") : o !== null && o < d && (s = e("select.dateTooEarlyError", {
32
+ year: o.getFullYear(),
33
+ allowedYear: d.getFullYear()
34
+ }));
35
+ const T = P.length > 0 && o !== null && s === null, g = () => {
36
+ if (!T) return;
37
+ const A = Q(o);
38
+ A && D({ contractorIds: P, checkDate: A });
39
+ };
40
+ return l ? /* @__PURE__ */ t(
41
+ st,
42
+ {
43
+ companyId: a,
44
+ contractorIds: l.contractorIds,
45
+ checkDate: l.checkDate,
46
+ onEvent: h
47
+ }
48
+ ) : /* @__PURE__ */ i(c, { flexDirection: "column", gap: 32, children: [
49
+ /* @__PURE__ */ i(c, { flexDirection: "column", gap: 4, children: [
50
+ /* @__PURE__ */ t(r, { as: "h2", children: e("select.heading") }),
51
+ /* @__PURE__ */ t(f, { variant: "supporting", children: e("select.subtitle") })
52
+ ] }),
53
+ /* @__PURE__ */ t(
54
+ m,
55
+ {
56
+ label: e("select.dateLabel"),
57
+ isRequired: !0,
58
+ value: o,
59
+ onChange: I,
60
+ minDate: d,
61
+ maxDate: C,
62
+ isInvalid: s !== null,
63
+ errorMessage: s ?? void 0
64
+ }
65
+ ),
66
+ /* @__PURE__ */ t(ot, { companyId: a, onSelectionChange: E }),
67
+ /* @__PURE__ */ t(Z, { children: /* @__PURE__ */ t(u, { onClick: g, variant: "primary", isDisabled: !T, children: e("select.continueButton") }) })
68
+ ] });
69
+ }
70
+ function st({ companyId: a, contractorIds: R, checkDate: h, onEvent: e }) {
71
+ const { t: r } = x("Contractor.Payments.CreateHistoricalPayment"), { Heading: f, Text: u, Button: m, Alert: d } = M(), { baseSubmitHandler: C } = tt(), { formatLongWithYear: o } = rt(), I = z(), P = J(), { data: E } = j({ companyUuid: a }), l = (E.contractors ?? []).filter(
72
+ (n) => R.includes(n.uuid)
73
+ ), { virtualContractorPayments: D, totals: s, editModal: T } = K({
74
+ contractors: l,
75
+ allowedPaymentMethods: S,
76
+ onEditOpen: () => {
77
+ e(p.CONTRACTOR_HISTORICAL_PAYMENT_EDIT);
78
+ },
79
+ onEditSave: (n) => {
80
+ e(p.CONTRACTOR_HISTORICAL_PAYMENT_UPDATE, n);
81
+ }
82
+ }), g = s.total > 0, { mutateAsync: A, isPending: b } = q(), { mutateAsync: B, isPending: L } = W(), [w, k] = y(null), [_, N] = y(!1), H = () => D.filter((n) => n.isTouched).map(({ isTouched: n, ...v }) => v), Y = async () => {
83
+ g && await C(null, async () => {
84
+ const n = await A({
85
+ request: {
86
+ companyId: a,
87
+ requestBody: {
88
+ checkDate: new O(h),
89
+ contractorPayments: H()
90
+ }
91
+ }
92
+ });
93
+ k(n.contractorPaymentGroupPreview || null), e(
94
+ p.CONTRACTOR_HISTORICAL_PAYMENT_PREVIEW,
95
+ n.contractorPaymentGroupPreview
96
+ );
97
+ });
98
+ }, G = () => {
99
+ k(null), e(p.CONTRACTOR_HISTORICAL_PAYMENT_BACK_TO_EDIT);
100
+ }, F = async () => {
101
+ const n = w?.creationToken;
102
+ !n || _ || await C(null, async () => {
103
+ const v = await B({
104
+ request: {
105
+ companyId: a,
106
+ requestBody: {
107
+ checkDate: new O(h),
108
+ creationToken: n,
109
+ contractorPayments: H()
110
+ }
111
+ }
112
+ });
113
+ v.contractorPaymentGroup && (N(!0), e(
114
+ p.CONTRACTOR_HISTORICAL_PAYMENT_CREATED,
115
+ v.contractorPaymentGroup
116
+ ));
117
+ });
118
+ };
119
+ return w ? /* @__PURE__ */ i(c, { flexDirection: "column", gap: 32, children: [
120
+ /* @__PURE__ */ i(c, { justifyContent: "space-between", alignItems: "flex-start", gap: 16, children: [
121
+ /* @__PURE__ */ i(c, { flexDirection: "column", gap: 4, children: [
122
+ /* @__PURE__ */ t(f, { as: "h2", children: r("review.title") }),
123
+ /* @__PURE__ */ t(u, { variant: "supporting", children: r("review.subtitle", {
124
+ checkDate: o(w.checkDate ?? "")
125
+ }) })
126
+ ] }),
127
+ !_ && /* @__PURE__ */ i(c, { justifyContent: "flex-end", gap: 16, children: [
128
+ /* @__PURE__ */ t(m, { onClick: G, variant: "secondary", children: r("review.editButton") }),
129
+ /* @__PURE__ */ t(m, { onClick: F, variant: "primary", isLoading: L, children: r("review.submitButton") })
130
+ ] })
131
+ ] }),
132
+ _ && /* @__PURE__ */ t(d, { status: "success", label: r("review.successTitle"), children: /* @__PURE__ */ t(u, { children: r("review.successMessage") }) }),
133
+ /* @__PURE__ */ t(
134
+ at,
135
+ {
136
+ contractorPaymentGroup: w,
137
+ contractors: l,
138
+ showDebitColumns: !1,
139
+ dictionary: P
140
+ }
141
+ )
142
+ ] }) : /* @__PURE__ */ i(c, { flexDirection: "column", gap: 32, children: [
143
+ /* @__PURE__ */ i(c, { justifyContent: "flex-end", gap: 16, children: [
144
+ /* @__PURE__ */ i(c, { flexDirection: "column", gap: 4, children: [
145
+ /* @__PURE__ */ t(f, { as: "h2", children: r("amounts.heading") }),
146
+ /* @__PURE__ */ t(u, { variant: "supporting", children: r("amounts.subtitle") })
147
+ ] }),
148
+ /* @__PURE__ */ t(X, { children: /* @__PURE__ */ t(
149
+ m,
150
+ {
151
+ onClick: Y,
152
+ variant: "primary",
153
+ isDisabled: !g,
154
+ isLoading: b,
155
+ children: r("amounts.continueButton")
156
+ }
157
+ ) })
158
+ ] }),
159
+ /* @__PURE__ */ t(
160
+ it,
161
+ {
162
+ contractors: l,
163
+ contractorPayments: D,
164
+ totals: s,
165
+ allowedPaymentMethods: S,
166
+ editModal: T,
167
+ dictionary: I
168
+ }
169
+ )
170
+ ] });
171
+ }
172
+ export {
173
+ Ot as CreateHistoricalPayment
174
+ };
175
+ //# sourceMappingURL=CreateHistoricalPayment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CreateHistoricalPayment.js","sources":["../../../../../src/components/Contractor/Payments/CreateHistoricalPayment/CreateHistoricalPayment.tsx"],"sourcesContent":["import { useContractorsListSuspense } from '@gusto/embedded-api/react-query/contractorsList'\nimport { useContractorPaymentGroupsPreviewMutation } from '@gusto/embedded-api/react-query/contractorPaymentGroupsPreview'\nimport { useContractorPaymentGroupsCreateMutation } from '@gusto/embedded-api/react-query/contractorPaymentGroupsCreate'\nimport type { ContractorPaymentGroupPreview } from '@gusto/embedded-api/models/components/contractorpaymentgrouppreview'\nimport type { PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod as ContractorPaymentMethod } from '@gusto/embedded-api/models/operations/postv1companiescompanyidcontractorpaymentgroups'\nimport { RFCDate } from '@gusto/embedded-api/types/rfcdate'\nimport { useMemo, useState } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport { usePaymentAmountsEditor } from '../shared/usePaymentAmountsEditor'\nimport { SetPaymentAmounts } from '../shared/SetPaymentAmounts'\nimport { PaymentSummaryBlock } from '../shared/PaymentSummaryBlock'\nimport { getHistoricalPaymentCheckDateBounds } from '../shared/historicalPaymentDateBounds'\nimport {\n useCreateHistoricalPaymentDictionary,\n useCreateHistoricalPaymentReviewDictionary,\n} from './useFormDictionary'\nimport { formatDateToStringDate } from '@/helpers/dateFormatting'\nimport { ActionsLayout, Flex, FlexItem } from '@/components/Common'\nimport { BaseComponent, useBase, type BaseComponentInterface } from '@/components/Base'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useComponentDictionary, useI18n } from '@/i18n'\nimport { useDateFormatter } from '@/hooks/useDateFormatter'\nimport { componentEvents } from '@/shared/constants'\nimport { SelectContractors } from '@/components/Contractor/shared/SelectContractors/SelectContractors'\n\nconst ALLOWED_PAYMENT_METHODS: ContractorPaymentMethod[] = ['Historical Payment']\n\n/**\n * Props for {@link CreateHistoricalPayment}.\n *\n * @alpha\n */\nexport interface CreateHistoricalPaymentProps extends BaseComponentInterface<'Contractor.Payments.CreateHistoricalPayment'> {\n /** UUID of the company recording the historical payment. */\n companyId: string\n}\n\n/**\n * Records a historical contractor payment — one that already happened outside Gusto and does not\n * move money — by picking a paid date and the contractors being paid, entering hours, wages,\n * bonuses, and reimbursements for them, then reviewing and submitting.\n *\n * @remarks\n * Every contractor payment is fixed to the `Historical Payment` payment method, so there is no\n * payment method choice or debit information to review.\n * Continue on the contractor-selection step is disabled until the paid date is valid and at least\n * one contractor is selected. Continue on the amounts step is disabled until at least one selected\n * contractor has a payment total greater than zero, and swaps the amounts grid for an in-place\n * review (mirroring `CreatePayment`'s preview step); Edit returns to the grid without losing\n * entered amounts, and Submit creates the contractor payment group. Once creation succeeds, the\n * Edit and Submit buttons are replaced with a success message, since the creation token has been\n * consumed and the host is expected to navigate away (e.g. to `HistoricalPaymentSummary`).\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `contractor/historicalPayments/edit` | The edit modal was opened for a contractor. | — |\n * | `contractor/historicalPayments/update` | A contractor's payment values were updated locally. | The updated form values (hours, wage, bonus, reimbursement, payment method, etc.). |\n * | `contractor/historicalPayments/preview` | The preview API call succeeded. | The contractor payment group preview response. |\n * | `contractor/historicalPayments/backToEdit` | The user returned from preview to continue editing. | — |\n * | `contractor/historicalPayments/created` | The payment group was successfully created. | The created contractor payment group response. |\n *\n * @param props - See {@link CreateHistoricalPaymentProps}.\n * @returns The rendered contractor-selection screen, the payment-amounts entry screen, or its\n * in-place review.\n * @alpha\n */\nexport function CreateHistoricalPayment(props: CreateHistoricalPaymentProps) {\n return (\n <BaseComponent {...props} componentName=\"Contractor.Payments.CreateHistoricalPayment\">\n <Root {...props} />\n </BaseComponent>\n )\n}\n\ninterface ContractorSelection {\n contractorIds: string[]\n checkDate: string\n}\n\nfunction Root({ companyId, dictionary, onEvent }: CreateHistoricalPaymentProps) {\n useI18n('Contractor.Payments.CreateHistoricalPayment')\n useComponentDictionary('Contractor.Payments.CreateHistoricalPayment', dictionary)\n const { t } = useTranslation('Contractor.Payments.CreateHistoricalPayment')\n const { Heading, Text, Button, DatePicker } = useComponentContext()\n\n const { minDate, maxDate } = useMemo(() => getHistoricalPaymentCheckDateBounds(), [])\n const [checkDate, setCheckDate] = useState<Date | null>(null)\n const [selectedIds, setSelectedIds] = useState<string[]>([])\n const [selection, setSelection] = useState<ContractorSelection | null>(null)\n\n let dateError: string | null = null\n if (checkDate !== null && checkDate > maxDate) {\n dateError = t('select.dateInFutureError')\n } else if (checkDate !== null && checkDate < minDate) {\n dateError = t('select.dateTooEarlyError', {\n year: checkDate.getFullYear(),\n allowedYear: minDate.getFullYear(),\n })\n }\n\n const canContinue = selectedIds.length > 0 && checkDate !== null && dateError === null\n\n const handleContinue = () => {\n if (!canContinue) return\n const checkDateString = formatDateToStringDate(checkDate)\n if (!checkDateString) return\n setSelection({ contractorIds: selectedIds, checkDate: checkDateString })\n }\n\n if (!selection) {\n return (\n <Flex flexDirection=\"column\" gap={32}>\n <Flex flexDirection=\"column\" gap={4}>\n <Heading as=\"h2\">{t('select.heading')}</Heading>\n <Text variant=\"supporting\">{t('select.subtitle')}</Text>\n </Flex>\n\n <DatePicker\n label={t('select.dateLabel')}\n isRequired\n value={checkDate}\n onChange={setCheckDate}\n minDate={minDate}\n maxDate={maxDate}\n isInvalid={dateError !== null}\n errorMessage={dateError ?? undefined}\n />\n\n <SelectContractors companyId={companyId} onSelectionChange={setSelectedIds} />\n\n <ActionsLayout>\n <Button onClick={handleContinue} variant=\"primary\" isDisabled={!canContinue}>\n {t('select.continueButton')}\n </Button>\n </ActionsLayout>\n </Flex>\n )\n }\n\n return (\n <AmountsAndReview\n companyId={companyId}\n contractorIds={selection.contractorIds}\n checkDate={selection.checkDate}\n onEvent={onEvent}\n />\n )\n}\n\ninterface AmountsAndReviewProps {\n companyId: string\n contractorIds: string[]\n checkDate: string\n onEvent: CreateHistoricalPaymentProps['onEvent']\n}\n\nfunction AmountsAndReview({ companyId, contractorIds, checkDate, onEvent }: AmountsAndReviewProps) {\n const { t } = useTranslation('Contractor.Payments.CreateHistoricalPayment')\n const { Heading, Text, Button, Alert } = useComponentContext()\n const { baseSubmitHandler } = useBase()\n const { formatLongWithYear } = useDateFormatter()\n const paymentAmountsDictionary = useCreateHistoricalPaymentDictionary()\n const reviewDictionary = useCreateHistoricalPaymentReviewDictionary()\n\n const { data: contractorList } = useContractorsListSuspense({ companyUuid: companyId })\n const contractors = (contractorList.contractors ?? []).filter(contractor =>\n contractorIds.includes(contractor.uuid),\n )\n\n const { virtualContractorPayments, totals, editModal } = usePaymentAmountsEditor({\n contractors,\n allowedPaymentMethods: ALLOWED_PAYMENT_METHODS,\n onEditOpen: () => {\n onEvent(componentEvents.CONTRACTOR_HISTORICAL_PAYMENT_EDIT)\n },\n onEditSave: data => {\n onEvent(componentEvents.CONTRACTOR_HISTORICAL_PAYMENT_UPDATE, data)\n },\n })\n\n const canContinue = totals.total > 0\n\n const { mutateAsync: previewContractorPaymentGroup, isPending: isPreviewing } =\n useContractorPaymentGroupsPreviewMutation()\n const { mutateAsync: createContractorPaymentGroup, isPending: isCreating } =\n useContractorPaymentGroupsCreateMutation()\n\n const [previewData, setPreviewData] = useState<ContractorPaymentGroupPreview | null>(null)\n const [isCreated, setIsCreated] = useState(false)\n\n const touchedContractorPayments = () =>\n virtualContractorPayments\n .filter(payment => payment.isTouched)\n .map(({ isTouched: _isTouched, ...rest }) => rest)\n\n const handleContinue = async () => {\n if (!canContinue) return\n\n await baseSubmitHandler(null, async () => {\n const response = await previewContractorPaymentGroup({\n request: {\n companyId,\n requestBody: {\n checkDate: new RFCDate(checkDate),\n contractorPayments: touchedContractorPayments(),\n },\n },\n })\n setPreviewData(response.contractorPaymentGroupPreview || null)\n onEvent(\n componentEvents.CONTRACTOR_HISTORICAL_PAYMENT_PREVIEW,\n response.contractorPaymentGroupPreview,\n )\n })\n }\n\n const handleBackToEdit = () => {\n setPreviewData(null)\n onEvent(componentEvents.CONTRACTOR_HISTORICAL_PAYMENT_BACK_TO_EDIT)\n }\n\n const handleSubmit = async () => {\n const creationToken = previewData?.creationToken\n if (!creationToken || isCreated) return\n\n await baseSubmitHandler(null, async () => {\n const response = await createContractorPaymentGroup({\n request: {\n companyId,\n requestBody: {\n checkDate: new RFCDate(checkDate),\n creationToken,\n contractorPayments: touchedContractorPayments(),\n },\n },\n })\n\n if (!response.contractorPaymentGroup) return\n\n setIsCreated(true)\n onEvent(\n componentEvents.CONTRACTOR_HISTORICAL_PAYMENT_CREATED,\n response.contractorPaymentGroup,\n )\n })\n }\n\n if (previewData) {\n return (\n <Flex flexDirection=\"column\" gap={32}>\n <Flex justifyContent=\"space-between\" alignItems=\"flex-start\" gap={16}>\n <Flex flexDirection=\"column\" gap={4}>\n <Heading as=\"h2\">{t('review.title')}</Heading>\n <Text variant=\"supporting\">\n {t('review.subtitle', {\n checkDate: formatLongWithYear(previewData.checkDate ?? ''),\n })}\n </Text>\n </Flex>\n {!isCreated && (\n <Flex justifyContent=\"flex-end\" gap={16}>\n <Button onClick={handleBackToEdit} variant=\"secondary\">\n {t('review.editButton')}\n </Button>\n <Button onClick={handleSubmit} variant=\"primary\" isLoading={isCreating}>\n {t('review.submitButton')}\n </Button>\n </Flex>\n )}\n </Flex>\n\n {isCreated && (\n <Alert status=\"success\" label={t('review.successTitle')}>\n <Text>{t('review.successMessage')}</Text>\n </Alert>\n )}\n\n <PaymentSummaryBlock\n contractorPaymentGroup={previewData}\n contractors={contractors}\n showDebitColumns={false}\n dictionary={reviewDictionary}\n />\n </Flex>\n )\n }\n\n return (\n <Flex flexDirection=\"column\" gap={32}>\n <Flex justifyContent=\"flex-end\" gap={16}>\n <Flex flexDirection=\"column\" gap={4}>\n <Heading as=\"h2\">{t('amounts.heading')}</Heading>\n <Text variant=\"supporting\">{t('amounts.subtitle')}</Text>\n </Flex>\n <FlexItem>\n <Button\n onClick={handleContinue}\n variant=\"primary\"\n isDisabled={!canContinue}\n isLoading={isPreviewing}\n >\n {t('amounts.continueButton')}\n </Button>\n </FlexItem>\n </Flex>\n\n <SetPaymentAmounts\n contractors={contractors}\n contractorPayments={virtualContractorPayments}\n totals={totals}\n allowedPaymentMethods={ALLOWED_PAYMENT_METHODS}\n editModal={editModal}\n dictionary={paymentAmountsDictionary}\n />\n </Flex>\n )\n}\n"],"names":["ALLOWED_PAYMENT_METHODS","CreateHistoricalPayment","props","jsx","BaseComponent","Root","companyId","dictionary","onEvent","useI18n","useComponentDictionary","t","useTranslation","Heading","Text","Button","DatePicker","useComponentContext","minDate","maxDate","useMemo","getHistoricalPaymentCheckDateBounds","checkDate","setCheckDate","useState","selectedIds","setSelectedIds","selection","setSelection","dateError","canContinue","handleContinue","checkDateString","formatDateToStringDate","AmountsAndReview","jsxs","Flex","SelectContractors","ActionsLayout","contractorIds","Alert","baseSubmitHandler","useBase","formatLongWithYear","useDateFormatter","paymentAmountsDictionary","useCreateHistoricalPaymentDictionary","reviewDictionary","useCreateHistoricalPaymentReviewDictionary","contractorList","useContractorsListSuspense","contractors","contractor","virtualContractorPayments","totals","editModal","usePaymentAmountsEditor","componentEvents","data","previewContractorPaymentGroup","isPreviewing","useContractorPaymentGroupsPreviewMutation","createContractorPaymentGroup","isCreating","useContractorPaymentGroupsCreateMutation","previewData","setPreviewData","isCreated","setIsCreated","touchedContractorPayments","payment","_isTouched","rest","response","RFCDate","handleBackToEdit","handleSubmit","creationToken","PaymentSummaryBlock","FlexItem","SetPaymentAmounts"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export { CreateHistoricalPayment, type CreateHistoricalPaymentProps, } from './CreateHistoricalPayment';
@@ -0,0 +1,18 @@
1
+ import { SetPaymentAmountsDictionary } from '../shared/SetPaymentAmounts';
2
+ import { PaymentSummaryBlockDictionary } from '../shared/PaymentSummaryBlock';
3
+ /**
4
+ * Resolves `SetPaymentAmounts`'s text against `CreateHistoricalPayment`'s own
5
+ * `Contractor.Payments.CreateHistoricalPayment` namespace, so partner
6
+ * overrides on that namespace flow into the shared grid and edit modal.
7
+ *
8
+ * @internal
9
+ */
10
+ export declare function useCreateHistoricalPaymentDictionary(): SetPaymentAmountsDictionary;
11
+ /**
12
+ * Resolves `PaymentSummaryBlock`'s text against `CreateHistoricalPayment`'s own
13
+ * `Contractor.Payments.CreateHistoricalPayment` namespace (under the `review` key), so partner
14
+ * overrides on that namespace flow into the in-place review step.
15
+ *
16
+ * @internal
17
+ */
18
+ export declare function useCreateHistoricalPaymentReviewDictionary(): PaymentSummaryBlockDictionary;
@@ -1,8 +1,8 @@
1
- import { useMemo as r } from "react";
2
- import { useTranslation as o } from "react-i18next";
3
- function s() {
4
- const { t } = o("Contractor.Payments.HistoricalPaymentAmounts");
5
- return r(
1
+ import { useMemo as e } from "react";
2
+ import { useTranslation as a } from "react-i18next";
3
+ function i() {
4
+ const { t } = a("Contractor.Payments.CreateHistoricalPayment");
5
+ return e(
6
6
  () => ({
7
7
  hoursAndPaymentsLabel: t("hoursAndPaymentsLabel"),
8
8
  contractorTableHeaders: {
@@ -26,7 +26,7 @@ function s() {
26
26
  subtitle: t("editContractorPayment.subtitle"),
27
27
  hoursLabel: t("editContractorPayment.hoursLabel"),
28
28
  hoursAdornment: t("editContractorPayment.hoursAdornment"),
29
- hoursPayDescription: (e, a) => t("editContractorPayment.hoursPayDescription", { rate: e, total: a }),
29
+ hoursPayDescription: (o, r) => t("editContractorPayment.hoursPayDescription", { rate: o, total: r }),
30
30
  wageLabel: t("editContractorPayment.wageLabel"),
31
31
  bonusLabel: t("editContractorPayment.bonusLabel"),
32
32
  reimbursementLabel: t("editContractorPayment.reimbursementLabel"),
@@ -47,7 +47,37 @@ function s() {
47
47
  [t]
48
48
  );
49
49
  }
50
+ function s() {
51
+ const { t } = a("Contractor.Payments.CreateHistoricalPayment", {
52
+ keyPrefix: "review"
53
+ });
54
+ return e(
55
+ () => ({
56
+ paymentSummaryTitle: t("paymentSummaryTitle"),
57
+ totalAmount: t("totalAmount"),
58
+ contractorPayDate: t("contractorPayDate"),
59
+ contractorPaymentsTitle: t("contractorPaymentsTitle"),
60
+ contractor: t("contractor"),
61
+ wageType: t("wageType"),
62
+ paymentMethod: t("paymentMethod"),
63
+ paymentMethods: {
64
+ directDeposit: t("paymentMethods.directDeposit"),
65
+ check: t("paymentMethods.check"),
66
+ historicalPayment: t("paymentMethods.historicalPayment")
67
+ },
68
+ hours: t("hours"),
69
+ wage: t("wage"),
70
+ bonus: t("bonus"),
71
+ reimbursement: t("reimbursement"),
72
+ total: t("total"),
73
+ totalsLabel: t("totalsLabel"),
74
+ notAvailable: t("notAvailable")
75
+ }),
76
+ [t]
77
+ );
78
+ }
50
79
  export {
51
- s as useHistoricalPaymentAmountsDictionary
80
+ i as useCreateHistoricalPaymentDictionary,
81
+ s as useCreateHistoricalPaymentReviewDictionary
52
82
  };
53
83
  //# sourceMappingURL=useFormDictionary.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFormDictionary.js","sources":["../../../../../src/components/Contractor/Payments/CreateHistoricalPayment/useFormDictionary.ts"],"sourcesContent":["import { useMemo } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport type { SetPaymentAmountsDictionary } from '../shared/SetPaymentAmounts'\nimport type { PaymentSummaryBlockDictionary } from '../shared/PaymentSummaryBlock'\n\n/**\n * Resolves `SetPaymentAmounts`'s text against `CreateHistoricalPayment`'s own\n * `Contractor.Payments.CreateHistoricalPayment` namespace, so partner\n * overrides on that namespace flow into the shared grid and edit modal.\n *\n * @internal\n */\nexport function useCreateHistoricalPaymentDictionary(): SetPaymentAmountsDictionary {\n const { t } = useTranslation('Contractor.Payments.CreateHistoricalPayment')\n\n return useMemo<SetPaymentAmountsDictionary>(\n () => ({\n hoursAndPaymentsLabel: t('hoursAndPaymentsLabel'),\n contractorTableHeaders: {\n contractor: t('contractorTableHeaders.contractor'),\n wageType: t('contractorTableHeaders.wageType'),\n paymentMethod: t('contractorTableHeaders.paymentMethod'),\n hours: t('contractorTableHeaders.hours'),\n wage: t('contractorTableHeaders.wage'),\n bonus: t('contractorTableHeaders.bonus'),\n reimbursement: t('contractorTableHeaders.reimbursement'),\n total: t('contractorTableHeaders.total'),\n },\n emptyTableTitle: t('emptyTableTitle'),\n emptyTableDescription: t('emptyTableDescription'),\n na: t('na'),\n totalsLabel: t('totalsLabel'),\n editContractor: t('editContractor'),\n perHour: t('perHour'),\n editContractorPayment: {\n title: t('editContractorPayment.title'),\n subtitle: t('editContractorPayment.subtitle'),\n hoursLabel: t('editContractorPayment.hoursLabel'),\n hoursAdornment: t('editContractorPayment.hoursAdornment'),\n hoursPayDescription: (rate, total) =>\n t('editContractorPayment.hoursPayDescription', { rate, total }),\n wageLabel: t('editContractorPayment.wageLabel'),\n bonusLabel: t('editContractorPayment.bonusLabel'),\n reimbursementLabel: t('editContractorPayment.reimbursementLabel'),\n paymentMethodLabel: t('editContractorPayment.paymentMethodLabel'),\n cancelCta: t('editContractorPayment.cancelCta'),\n saveCta: t('editContractorPayment.saveCta'),\n paymentMethods: {\n check: t('editContractorPayment.paymentMethods.check'),\n directDeposit: t('editContractorPayment.paymentMethods.directDeposit'),\n historicalPayment: t('editContractorPayment.paymentMethods.historicalPayment'),\n },\n errors: {\n directDepositNotAvailable: t('editContractorPayment.errors.directDepositNotAvailable'),\n unsupportedPaymentMethod: t('editContractorPayment.errors.unsupportedPaymentMethod'),\n },\n },\n }),\n [t],\n )\n}\n\n/**\n * Resolves `PaymentSummaryBlock`'s text against `CreateHistoricalPayment`'s own\n * `Contractor.Payments.CreateHistoricalPayment` namespace (under the `review` key), so partner\n * overrides on that namespace flow into the in-place review step.\n *\n * @internal\n */\nexport function useCreateHistoricalPaymentReviewDictionary(): PaymentSummaryBlockDictionary {\n const { t } = useTranslation('Contractor.Payments.CreateHistoricalPayment', {\n keyPrefix: 'review',\n })\n\n return useMemo<PaymentSummaryBlockDictionary>(\n () => ({\n paymentSummaryTitle: t('paymentSummaryTitle'),\n totalAmount: t('totalAmount'),\n contractorPayDate: t('contractorPayDate'),\n contractorPaymentsTitle: t('contractorPaymentsTitle'),\n contractor: t('contractor'),\n wageType: t('wageType'),\n paymentMethod: t('paymentMethod'),\n paymentMethods: {\n directDeposit: t('paymentMethods.directDeposit'),\n check: t('paymentMethods.check'),\n historicalPayment: t('paymentMethods.historicalPayment'),\n },\n hours: t('hours'),\n wage: t('wage'),\n bonus: t('bonus'),\n reimbursement: t('reimbursement'),\n total: t('total'),\n totalsLabel: t('totalsLabel'),\n notAvailable: t('notAvailable'),\n }),\n [t],\n )\n}\n"],"names":["useCreateHistoricalPaymentDictionary","useTranslation","useMemo","rate","total","useCreateHistoricalPaymentReviewDictionary"],"mappings":";;AAYO,SAASA,IAAoE;AAClF,QAAM,EAAE,EAAA,IAAMC,EAAe,6CAA6C;AAE1E,SAAOC;AAAA,IACL,OAAO;AAAA,MACL,uBAAuB,EAAE,uBAAuB;AAAA,MAChD,wBAAwB;AAAA,QACtB,YAAY,EAAE,mCAAmC;AAAA,QACjD,UAAU,EAAE,iCAAiC;AAAA,QAC7C,eAAe,EAAE,sCAAsC;AAAA,QACvD,OAAO,EAAE,8BAA8B;AAAA,QACvC,MAAM,EAAE,6BAA6B;AAAA,QACrC,OAAO,EAAE,8BAA8B;AAAA,QACvC,eAAe,EAAE,sCAAsC;AAAA,QACvD,OAAO,EAAE,8BAA8B;AAAA,MAAA;AAAA,MAEzC,iBAAiB,EAAE,iBAAiB;AAAA,MACpC,uBAAuB,EAAE,uBAAuB;AAAA,MAChD,IAAI,EAAE,IAAI;AAAA,MACV,aAAa,EAAE,aAAa;AAAA,MAC5B,gBAAgB,EAAE,gBAAgB;AAAA,MAClC,SAAS,EAAE,SAAS;AAAA,MACpB,uBAAuB;AAAA,QACrB,OAAO,EAAE,6BAA6B;AAAA,QACtC,UAAU,EAAE,gCAAgC;AAAA,QAC5C,YAAY,EAAE,kCAAkC;AAAA,QAChD,gBAAgB,EAAE,sCAAsC;AAAA,QACxD,qBAAqB,CAACC,GAAMC,MAC1B,EAAE,6CAA6C,EAAE,MAAAD,GAAM,OAAAC,GAAO;AAAA,QAChE,WAAW,EAAE,iCAAiC;AAAA,QAC9C,YAAY,EAAE,kCAAkC;AAAA,QAChD,oBAAoB,EAAE,0CAA0C;AAAA,QAChE,oBAAoB,EAAE,0CAA0C;AAAA,QAChE,WAAW,EAAE,iCAAiC;AAAA,QAC9C,SAAS,EAAE,+BAA+B;AAAA,QAC1C,gBAAgB;AAAA,UACd,OAAO,EAAE,4CAA4C;AAAA,UACrD,eAAe,EAAE,oDAAoD;AAAA,UACrE,mBAAmB,EAAE,wDAAwD;AAAA,QAAA;AAAA,QAE/E,QAAQ;AAAA,UACN,2BAA2B,EAAE,wDAAwD;AAAA,UACrF,0BAA0B,EAAE,uDAAuD;AAAA,QAAA;AAAA,MACrF;AAAA,IACF;AAAA,IAEF,CAAC,CAAC;AAAA,EAAA;AAEN;AASO,SAASC,IAA4E;AAC1F,QAAM,EAAE,EAAA,IAAMJ,EAAe,+CAA+C;AAAA,IAC1E,WAAW;AAAA,EAAA,CACZ;AAED,SAAOC;AAAA,IACL,OAAO;AAAA,MACL,qBAAqB,EAAE,qBAAqB;AAAA,MAC5C,aAAa,EAAE,aAAa;AAAA,MAC5B,mBAAmB,EAAE,mBAAmB;AAAA,MACxC,yBAAyB,EAAE,yBAAyB;AAAA,MACpD,YAAY,EAAE,YAAY;AAAA,MAC1B,UAAU,EAAE,UAAU;AAAA,MACtB,eAAe,EAAE,eAAe;AAAA,MAChC,gBAAgB;AAAA,QACd,eAAe,EAAE,8BAA8B;AAAA,QAC/C,OAAO,EAAE,sBAAsB;AAAA,QAC/B,mBAAmB,EAAE,kCAAkC;AAAA,MAAA;AAAA,MAEzD,OAAO,EAAE,OAAO;AAAA,MAChB,MAAM,EAAE,MAAM;AAAA,MACd,OAAO,EAAE,OAAO;AAAA,MAChB,eAAe,EAAE,eAAe;AAAA,MAChC,OAAO,EAAE,OAAO;AAAA,MAChB,aAAa,EAAE,aAAa;AAAA,MAC5B,cAAc,EAAE,cAAc;AAAA,IAAA;AAAA,IAEhC,CAAC,CAAC;AAAA,EAAA;AAEN;"}
@@ -1,8 +1,8 @@
1
1
  import { jsx as r } from "react/jsx-runtime";
2
- import { createMachine as u } from "robot3";
3
- import { useState as b } from "react";
4
- import { createPaymentMachine as p, createPaymentBreadcrumbsNodes as d } from "./createPaymentMachine.js";
5
- import { CreatePaymentContextual as f } from "./CreatePaymentFlowComponents.js";
2
+ import { useState as u } from "react";
3
+ import { createPaymentMachine as b, createPaymentBreadcrumbsNodes as p } from "./createPaymentMachine.js";
4
+ import { CreatePaymentContextual as d } from "./CreatePaymentFlowComponents.js";
5
+ import { createMachine as f } from "../../../../lib/state-machine/core.js";
6
6
  import { Flow as y } from "../../../Flow/Flow.js";
7
7
  import { buildBreadcrumbs as P, updateBreadcrumbs as l } from "../../../../helpers/breadcrumbHelpers.js";
8
8
  const B = [];
@@ -14,8 +14,8 @@ function C({
14
14
  onEvent: a,
15
15
  prefixBreadcrumbs: m = B
16
16
  }) {
17
- const [n] = b(() => {
18
- const o = P(d), c = Object.fromEntries(
17
+ const [n] = u(() => {
18
+ const o = P(p), c = Object.fromEntries(
19
19
  Object.entries(o).map(([t, s]) => [
20
20
  t,
21
21
  [...m, ...s]
@@ -26,13 +26,13 @@ function C({
26
26
  breadcrumbs: c
27
27
  }
28
28
  });
29
- return u(
29
+ return f(
30
30
  "createPayment",
31
- p,
31
+ b,
32
32
  (t) => ({
33
33
  ...t,
34
34
  ...i,
35
- component: f,
35
+ component: d,
36
36
  companyId: e
37
37
  })
38
38
  );
@@ -1 +1 @@
1
- {"version":3,"file":"CreatePaymentFlow.js","sources":["../../../../../src/components/Contractor/Payments/CreatePaymentFlow/CreatePaymentFlow.tsx"],"sourcesContent":["import { createMachine } from 'robot3'\nimport { useState } from 'react'\nimport { createPaymentBreadcrumbsNodes, createPaymentMachine } from './createPaymentMachine'\nimport {\n CreatePaymentContextual,\n type CreatePaymentFlowContextInterface,\n type CreatePaymentFlowProps,\n} from './CreatePaymentFlowComponents'\nimport { Flow } from '@/components/Flow/Flow'\nimport type { FlowBreadcrumb } from '@/components/Common/FlowBreadcrumbs/FlowBreadcrumbsTypes'\nimport { buildBreadcrumbs, updateBreadcrumbs } from '@/helpers/breadcrumbHelpers'\n\nconst EMPTY_BREADCRUMBS: FlowBreadcrumb[] = []\n\n/**\n * Props for the flow-internal {@link CreatePaymentInternalFlow}, which layers a parent flow's\n * prefix breadcrumbs on top of the public {@link CreatePaymentFlowProps}.\n *\n * @internal\n */\nexport interface CreatePaymentInternalFlowProps extends CreatePaymentFlowProps {\n /**\n * Breadcrumbs prepended to the flow's own breadcrumb trail. Set by a parent flow (e.g.\n * `PaymentFlow`) so the breadcrumb history remains coherent across the handoff.\n */\n prefixBreadcrumbs?: FlowBreadcrumb[]\n}\n\n/**\n * Guided flow to create a contractor payment and review the resulting summary.\n *\n * @remarks\n * This is the inner flow that powers the create-payment spoke of `ContractorManagement.PaymentFlow`.\n * Render it directly when you have built your own payments landing page and want to hand the user\n * off to the standard create-payment experience without re-implementing it. The flow ships with\n * breadcrumb navigation and handles Fast ACH blockers and wire transfer requirements inline.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `contractor/payments/created` | Fired when a payment group is successfully created | The created `ContractorPaymentGroup` |\n * | `contractor/payments/exit` | Fired when the user completes the payment flow | `{ uuid?: string \\| null }` |\n * | `payroll/wire/form/done` | Fired when wire transfer details are submitted | `{ wireInRequest: WireInRequest, confirmationAlert: { title: string, content?: string } }` |\n * | `breadcrumb/navigate` | Fired when the user clicks a breadcrumb to navigate back | `{ key: string, onNavigate: (ctx) => ctx }` |\n *\n * @components\n * - {@link CreatePayment}\n * - {@link PaymentSummary}\n *\n * @param props - See {@link CreatePaymentFlowProps}.\n * @returns The composed create-payment flow.\n * @alpha\n *\n * @example\n * ```tsx title=\"App.tsx\"\n * import { ContractorManagement } from '@gusto/embedded-react-sdk'\n *\n * function MyApp() {\n * return (\n * <ContractorManagement.CreatePaymentFlow\n * companyId=\"a007e1ab-3595-43c2-ab4b-af7a5af2e365\"\n * onEvent={() => {}}\n * />\n * )\n * }\n * ```\n */\nexport function CreatePaymentFlow(props: CreatePaymentFlowProps) {\n return <CreatePaymentInternalFlow {...props} />\n}\n\n/**\n * Flow-internal entry point for {@link CreatePaymentFlow} that additionally accepts\n * flow-injected `prefixBreadcrumbs`. Partners use {@link CreatePaymentFlow}; `PaymentFlow` renders\n * this directly to prepend its own breadcrumb trail.\n *\n * @internal\n */\nexport function CreatePaymentInternalFlow({\n companyId,\n onEvent,\n prefixBreadcrumbs = EMPTY_BREADCRUMBS,\n}: CreatePaymentInternalFlowProps) {\n // Built once via a lazy useState initializer, not useMemo: the machine's identity must survive\n // re-renders no matter what, and useMemo is only a performance hint React may discard, not an\n // identity guarantee. A useMemo keyed on `prefixBreadcrumbs` previously recreated this machine\n // (and reset in-flight state) whenever the parent app re-rendered in response to a bubbled\n // `onEvent` call, since an inline array literal upstream gets a new reference every render.\n const [createPaymentFlow] = useState(() => {\n const baseBreadcrumbs = buildBreadcrumbs(createPaymentBreadcrumbsNodes)\n const breadcrumbs = Object.fromEntries(\n Object.entries(baseBreadcrumbs).map(([stateKey, trail]) => [\n stateKey,\n [...prefixBreadcrumbs, ...trail],\n ]),\n )\n\n const initialBreadcrumbContext = updateBreadcrumbs('createPayment', {\n header: {\n type: 'breadcrumbs' as const,\n breadcrumbs,\n },\n })\n\n return createMachine(\n 'createPayment',\n createPaymentMachine,\n (initialContext: CreatePaymentFlowContextInterface) => ({\n ...initialContext,\n ...initialBreadcrumbContext,\n component: CreatePaymentContextual,\n companyId,\n }),\n )\n })\n\n return <Flow machine={createPaymentFlow} onEvent={onEvent} />\n}\n"],"names":["EMPTY_BREADCRUMBS","CreatePaymentFlow","props","jsx","CreatePaymentInternalFlow","companyId","onEvent","prefixBreadcrumbs","createPaymentFlow","useState","baseBreadcrumbs","buildBreadcrumbs","createPaymentBreadcrumbsNodes","breadcrumbs","stateKey","trail","initialBreadcrumbContext","updateBreadcrumbs","createMachine","createPaymentMachine","initialContext","CreatePaymentContextual","Flow"],"mappings":";;;;;;;AAYA,MAAMA,IAAsC,CAAA;AAuDrC,SAASC,EAAkBC,GAA+B;AAC/D,SAAO,gBAAAC,EAACC,GAAA,EAA2B,GAAGF,EAAA,CAAO;AAC/C;AASO,SAASE,EAA0B;AAAA,EACxC,WAAAC;AAAA,EACA,SAAAC;AAAA,EACA,mBAAAC,IAAoBP;AACtB,GAAmC;AAMjC,QAAM,CAACQ,CAAiB,IAAIC,EAAS,MAAM;AACzC,UAAMC,IAAkBC,EAAiBC,CAA6B,GAChEC,IAAc,OAAO;AAAA,MACzB,OAAO,QAAQH,CAAe,EAAE,IAAI,CAAC,CAACI,GAAUC,CAAK,MAAM;AAAA,QACzDD;AAAA,QACA,CAAC,GAAGP,GAAmB,GAAGQ,CAAK;AAAA,MAAA,CAChC;AAAA,IAAA,GAGGC,IAA2BC,EAAkB,iBAAiB;AAAA,MAClE,QAAQ;AAAA,QACN,MAAM;AAAA,QACN,aAAAJ;AAAA,MAAA;AAAA,IACF,CACD;AAED,WAAOK;AAAA,MACL;AAAA,MACAC;AAAA,MACA,CAACC,OAAuD;AAAA,QACtD,GAAGA;AAAA,QACH,GAAGJ;AAAA,QACH,WAAWK;AAAA,QACX,WAAAhB;AAAA,MAAA;AAAA,IACF;AAAA,EAEJ,CAAC;AAED,SAAO,gBAAAF,EAACmB,GAAA,EAAK,SAASd,GAAmB,SAAAF,EAAA,CAAkB;AAC7D;"}
1
+ {"version":3,"file":"CreatePaymentFlow.js","sources":["../../../../../src/components/Contractor/Payments/CreatePaymentFlow/CreatePaymentFlow.tsx"],"sourcesContent":["import { useState } from 'react'\nimport { createPaymentBreadcrumbsNodes, createPaymentMachine } from './createPaymentMachine'\nimport {\n CreatePaymentContextual,\n type CreatePaymentFlowContextInterface,\n type CreatePaymentFlowProps,\n} from './CreatePaymentFlowComponents'\nimport { createMachine } from '@/lib/state-machine'\nimport { Flow } from '@/components/Flow/Flow'\nimport type { FlowBreadcrumb } from '@/components/Common/FlowBreadcrumbs/FlowBreadcrumbsTypes'\nimport { buildBreadcrumbs, updateBreadcrumbs } from '@/helpers/breadcrumbHelpers'\n\nconst EMPTY_BREADCRUMBS: FlowBreadcrumb[] = []\n\n/**\n * Props for the flow-internal {@link CreatePaymentInternalFlow}, which layers a parent flow's\n * prefix breadcrumbs on top of the public {@link CreatePaymentFlowProps}.\n *\n * @internal\n */\nexport interface CreatePaymentInternalFlowProps extends CreatePaymentFlowProps {\n /**\n * Breadcrumbs prepended to the flow's own breadcrumb trail. Set by a parent flow (e.g.\n * `PaymentFlow`) so the breadcrumb history remains coherent across the handoff.\n */\n prefixBreadcrumbs?: FlowBreadcrumb[]\n}\n\n/**\n * Guided flow to create a contractor payment and review the resulting summary.\n *\n * @remarks\n * This is the inner flow that powers the create-payment spoke of `ContractorManagement.PaymentFlow`.\n * Render it directly when you have built your own payments landing page and want to hand the user\n * off to the standard create-payment experience without re-implementing it. The flow ships with\n * breadcrumb navigation and handles Fast ACH blockers and wire transfer requirements inline.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `contractor/payments/created` | Fired when a payment group is successfully created | The created `ContractorPaymentGroup` |\n * | `contractor/payments/exit` | Fired when the user completes the payment flow | `{ uuid?: string \\| null }` |\n * | `payroll/wire/form/done` | Fired when wire transfer details are submitted | `{ wireInRequest: WireInRequest, confirmationAlert: { title: string, content?: string } }` |\n * | `breadcrumb/navigate` | Fired when the user clicks a breadcrumb to navigate back | `{ key: string, onNavigate: (ctx) => ctx }` |\n *\n * @components\n * - {@link CreatePayment}\n * - {@link PaymentSummary}\n *\n * @param props - See {@link CreatePaymentFlowProps}.\n * @returns The composed create-payment flow.\n * @alpha\n *\n * @example\n * ```tsx title=\"App.tsx\"\n * import { ContractorManagement } from '@gusto/embedded-react-sdk'\n *\n * function MyApp() {\n * return (\n * <ContractorManagement.CreatePaymentFlow\n * companyId=\"a007e1ab-3595-43c2-ab4b-af7a5af2e365\"\n * onEvent={() => {}}\n * />\n * )\n * }\n * ```\n */\nexport function CreatePaymentFlow(props: CreatePaymentFlowProps) {\n return <CreatePaymentInternalFlow {...props} />\n}\n\n/**\n * Flow-internal entry point for {@link CreatePaymentFlow} that additionally accepts\n * flow-injected `prefixBreadcrumbs`. Partners use {@link CreatePaymentFlow}; `PaymentFlow` renders\n * this directly to prepend its own breadcrumb trail.\n *\n * @internal\n */\nexport function CreatePaymentInternalFlow({\n companyId,\n onEvent,\n prefixBreadcrumbs = EMPTY_BREADCRUMBS,\n}: CreatePaymentInternalFlowProps) {\n // Built once via a lazy useState initializer, not useMemo: the machine's identity must survive\n // re-renders no matter what, and useMemo is only a performance hint React may discard, not an\n // identity guarantee. A useMemo keyed on `prefixBreadcrumbs` previously recreated this machine\n // (and reset in-flight state) whenever the parent app re-rendered in response to a bubbled\n // `onEvent` call, since an inline array literal upstream gets a new reference every render.\n const [createPaymentFlow] = useState(() => {\n const baseBreadcrumbs = buildBreadcrumbs(createPaymentBreadcrumbsNodes)\n const breadcrumbs = Object.fromEntries(\n Object.entries(baseBreadcrumbs).map(([stateKey, trail]) => [\n stateKey,\n [...prefixBreadcrumbs, ...trail],\n ]),\n )\n\n const initialBreadcrumbContext = updateBreadcrumbs('createPayment', {\n header: {\n type: 'breadcrumbs' as const,\n breadcrumbs,\n },\n })\n\n return createMachine(\n 'createPayment',\n createPaymentMachine,\n (initialContext: CreatePaymentFlowContextInterface) => ({\n ...initialContext,\n ...initialBreadcrumbContext,\n component: CreatePaymentContextual,\n companyId,\n }),\n )\n })\n\n return <Flow machine={createPaymentFlow} onEvent={onEvent} />\n}\n"],"names":["EMPTY_BREADCRUMBS","CreatePaymentFlow","props","jsx","CreatePaymentInternalFlow","companyId","onEvent","prefixBreadcrumbs","createPaymentFlow","useState","baseBreadcrumbs","buildBreadcrumbs","createPaymentBreadcrumbsNodes","breadcrumbs","stateKey","trail","initialBreadcrumbContext","updateBreadcrumbs","createMachine","createPaymentMachine","initialContext","CreatePaymentContextual","Flow"],"mappings":";;;;;;;AAYA,MAAMA,IAAsC,CAAA;AAuDrC,SAASC,EAAkBC,GAA+B;AAC/D,SAAO,gBAAAC,EAACC,GAAA,EAA2B,GAAGF,EAAA,CAAO;AAC/C;AASO,SAASE,EAA0B;AAAA,EACxC,WAAAC;AAAA,EACA,SAAAC;AAAA,EACA,mBAAAC,IAAoBP;AACtB,GAAmC;AAMjC,QAAM,CAACQ,CAAiB,IAAIC,EAAS,MAAM;AACzC,UAAMC,IAAkBC,EAAiBC,CAA6B,GAChEC,IAAc,OAAO;AAAA,MACzB,OAAO,QAAQH,CAAe,EAAE,IAAI,CAAC,CAACI,GAAUC,CAAK,MAAM;AAAA,QACzDD;AAAA,QACA,CAAC,GAAGP,GAAmB,GAAGQ,CAAK;AAAA,MAAA,CAChC;AAAA,IAAA,GAGGC,IAA2BC,EAAkB,iBAAiB;AAAA,MAClE,QAAQ;AAAA,QACN,MAAM;AAAA,QACN,aAAAJ;AAAA,MAAA;AAAA,IACF,CACD;AAED,WAAOK;AAAA,MACL;AAAA,MACAC;AAAA,MACA,CAACC,OAAuD;AAAA,QACtD,GAAGA;AAAA,QACH,GAAGJ;AAAA,QACH,WAAWK;AAAA,QACX,WAAAhB;AAAA,MAAA;AAAA,IACF;AAAA,EAEJ,CAAC;AAED,SAAO,gBAAAF,EAACmB,GAAA,EAAK,SAASd,GAAmB,SAAAF,EAAA,CAAkB;AAC7D;"}
@@ -3,6 +3,6 @@ import { BreadcrumbNodes } from '../../../Common/FlowBreadcrumbs/FlowBreadcrumbs
3
3
  export declare const createPaymentBreadcrumbsNodes: BreadcrumbNodes;
4
4
  /** @internal */
5
5
  export declare const createPaymentMachine: {
6
- createPayment: import('robot3').MachineState<any>;
7
- paymentSummary: import('robot3').MachineState<any>;
6
+ createPayment: import('../../../../lib/state-machine').StateDefinition;
7
+ paymentSummary: import('../../../../lib/state-machine').StateDefinition;
8
8
  };
@@ -1,8 +1,9 @@
1
- import { state as a, transition as m, reduce as r } from "robot3";
2
1
  import { PaymentSummaryContextual as o } from "./CreatePaymentFlowComponents.js";
3
- import { payrollWireEvents as y, componentEvents as c } from "../../../../shared/constants.js";
2
+ import "react";
3
+ import { state as a, transition as m, reduce as r } from "../../../../lib/state-machine/core.js";
4
+ import { componentEvents as y, payrollWireEvents as c } from "../../../../shared/constants.js";
4
5
  import { updateBreadcrumbs as n } from "../../../../helpers/breadcrumbHelpers.js";
5
- const s = {
6
+ const d = {
6
7
  createPayment: {
7
8
  parent: null,
8
9
  item: {
@@ -22,10 +23,10 @@ const s = {
22
23
  namespace: "Contractor.Payments.PaymentSummary"
23
24
  }
24
25
  }
25
- }, d = {
26
+ }, P = {
26
27
  createPayment: a(
27
28
  m(
28
- c.CONTRACTOR_PAYMENT_CREATED,
29
+ y.CONTRACTOR_PAYMENT_CREATED,
29
30
  "paymentSummary",
30
31
  r(
31
32
  (e, t) => ({
@@ -39,7 +40,7 @@ const s = {
39
40
  ),
40
41
  paymentSummary: a(
41
42
  m(
42
- y.PAYROLL_WIRE_FORM_DONE,
43
+ c.PAYROLL_WIRE_FORM_DONE,
43
44
  "paymentSummary",
44
45
  r(
45
46
  (e, t) => ({
@@ -57,7 +58,7 @@ const s = {
57
58
  )
58
59
  };
59
60
  export {
60
- s as createPaymentBreadcrumbsNodes,
61
- d as createPaymentMachine
61
+ d as createPaymentBreadcrumbsNodes,
62
+ P as createPaymentMachine
62
63
  };
63
64
  //# sourceMappingURL=createPaymentMachine.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"createPaymentMachine.js","sources":["../../../../../src/components/Contractor/Payments/CreatePaymentFlow/createPaymentMachine.ts"],"sourcesContent":["import { reduce, state, transition } from 'robot3'\nimport type { ContractorPaymentGroup } from '@gusto/embedded-api/models/components/contractorpaymentgroup'\nimport type { WireInRequest } from '@gusto/embedded-api/models/components/wireinrequest'\nimport {\n PaymentSummaryContextual,\n type CreatePaymentFlowContextInterface,\n} from './CreatePaymentFlowComponents'\nimport { payrollWireEvents, componentEvents } from '@/shared/constants'\nimport type { MachineEventType, MachineTransition } from '@/types/Helpers'\nimport { updateBreadcrumbs } from '@/helpers/breadcrumbHelpers'\nimport type { BreadcrumbNodes } from '@/components/Common/FlowBreadcrumbs/FlowBreadcrumbsTypes'\n\ntype EventPayloads = {\n [componentEvents.CONTRACTOR_PAYMENT_CREATED]: ContractorPaymentGroup\n [payrollWireEvents.PAYROLL_WIRE_FORM_DONE]: {\n wireInRequest: WireInRequest\n confirmationAlert: {\n title: string\n content?: string\n }\n }\n}\n\n/** @internal */\nexport const createPaymentBreadcrumbsNodes: BreadcrumbNodes = {\n createPayment: {\n parent: null,\n item: {\n id: 'createPayment',\n label: 'breadcrumbLabel',\n namespace: 'Contractor.Payments.CreatePayment',\n onNavigate: ((ctx: CreatePaymentFlowContextInterface) => ({\n ...updateBreadcrumbs('createPayment', ctx),\n })) as (context: unknown) => unknown,\n },\n },\n paymentSummary: {\n parent: null,\n item: {\n id: 'paymentSummary',\n label: 'breadcrumbLabel',\n namespace: 'Contractor.Payments.PaymentSummary',\n },\n },\n}\n\n/** @internal */\nexport const createPaymentMachine = {\n createPayment: state<MachineTransition>(\n transition(\n componentEvents.CONTRACTOR_PAYMENT_CREATED,\n 'paymentSummary',\n reduce(\n (\n ctx: CreatePaymentFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.CONTRACTOR_PAYMENT_CREATED>,\n ): CreatePaymentFlowContextInterface => {\n return {\n ...updateBreadcrumbs('paymentSummary', ctx),\n component: PaymentSummaryContextual,\n createdPaymentGroupId: ev.payload.uuid,\n alerts: undefined,\n }\n },\n ),\n ),\n ),\n paymentSummary: state<MachineTransition>(\n transition(\n payrollWireEvents.PAYROLL_WIRE_FORM_DONE,\n 'paymentSummary',\n reduce(\n (\n ctx: CreatePaymentFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof payrollWireEvents.PAYROLL_WIRE_FORM_DONE>,\n ): CreatePaymentFlowContextInterface => {\n return {\n ...ctx,\n alerts: [\n {\n type: 'success',\n title: 'wireDetailsSubmitted',\n content: ev.payload.confirmationAlert.content,\n },\n ],\n }\n },\n ),\n ),\n ),\n}\n"],"names":["createPaymentBreadcrumbsNodes","ctx","updateBreadcrumbs","createPaymentMachine","state","transition","componentEvents","reduce","ev","PaymentSummaryContextual","payrollWireEvents"],"mappings":";;;;AAwBO,MAAMA,IAAiD;AAAA,EAC5D,eAAe;AAAA,IACb,QAAQ;AAAA,IACR,MAAM;AAAA,MACJ,IAAI;AAAA,MACJ,OAAO;AAAA,MACP,WAAW;AAAA,MACX,aAAa,CAACC,OAA4C;AAAA,QACxD,GAAGC,EAAkB,iBAAiBD,CAAG;AAAA,MAAA;AAAA,IAC3C;AAAA,EACF;AAAA,EAEF,gBAAgB;AAAA,IACd,QAAQ;AAAA,IACR,MAAM;AAAA,MACJ,IAAI;AAAA,MACJ,OAAO;AAAA,MACP,WAAW;AAAA,IAAA;AAAA,EACb;AAEJ,GAGaE,IAAuB;AAAA,EAClC,eAAeC;AAAA,IACbC;AAAA,MACEC,EAAgB;AAAA,MAChB;AAAA,MACAC;AAAA,QACE,CACEN,GACAO,OAEO;AAAA,UACL,GAAGN,EAAkB,kBAAkBD,CAAG;AAAA,UAC1C,WAAWQ;AAAA,UACX,uBAAuBD,EAAG,QAAQ;AAAA,UAClC,QAAQ;AAAA,QAAA;AAAA,MAEZ;AAAA,IACF;AAAA,EACF;AAAA,EAEF,gBAAgBJ;AAAA,IACdC;AAAA,MACEK,EAAkB;AAAA,MAClB;AAAA,MACAH;AAAA,QACE,CACEN,GACAO,OAEO;AAAA,UACL,GAAGP;AAAA,UACH,QAAQ;AAAA,YACN;AAAA,cACE,MAAM;AAAA,cACN,OAAO;AAAA,cACP,SAASO,EAAG,QAAQ,kBAAkB;AAAA,YAAA;AAAA,UACxC;AAAA,QACF;AAAA,MAEJ;AAAA,IACF;AAAA,EACF;AAEJ;"}
1
+ {"version":3,"file":"createPaymentMachine.js","sources":["../../../../../src/components/Contractor/Payments/CreatePaymentFlow/createPaymentMachine.ts"],"sourcesContent":["import type { ContractorPaymentGroup } from '@gusto/embedded-api/models/components/contractorpaymentgroup'\nimport type { WireInRequest } from '@gusto/embedded-api/models/components/wireinrequest'\nimport {\n PaymentSummaryContextual,\n type CreatePaymentFlowContextInterface,\n} from './CreatePaymentFlowComponents'\nimport { reduce, state, transition } from '@/lib/state-machine'\nimport { payrollWireEvents, componentEvents } from '@/shared/constants'\nimport type { MachineEventType, MachineTransition } from '@/types/Helpers'\nimport { updateBreadcrumbs } from '@/helpers/breadcrumbHelpers'\nimport type { BreadcrumbNodes } from '@/components/Common/FlowBreadcrumbs/FlowBreadcrumbsTypes'\n\ntype EventPayloads = {\n [componentEvents.CONTRACTOR_PAYMENT_CREATED]: ContractorPaymentGroup\n [payrollWireEvents.PAYROLL_WIRE_FORM_DONE]: {\n wireInRequest: WireInRequest\n confirmationAlert: {\n title: string\n content?: string\n }\n }\n}\n\n/** @internal */\nexport const createPaymentBreadcrumbsNodes: BreadcrumbNodes = {\n createPayment: {\n parent: null,\n item: {\n id: 'createPayment',\n label: 'breadcrumbLabel',\n namespace: 'Contractor.Payments.CreatePayment',\n onNavigate: ((ctx: CreatePaymentFlowContextInterface) => ({\n ...updateBreadcrumbs('createPayment', ctx),\n })) as (context: unknown) => unknown,\n },\n },\n paymentSummary: {\n parent: null,\n item: {\n id: 'paymentSummary',\n label: 'breadcrumbLabel',\n namespace: 'Contractor.Payments.PaymentSummary',\n },\n },\n}\n\n/** @internal */\nexport const createPaymentMachine = {\n createPayment: state<MachineTransition>(\n transition(\n componentEvents.CONTRACTOR_PAYMENT_CREATED,\n 'paymentSummary',\n reduce(\n (\n ctx: CreatePaymentFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof componentEvents.CONTRACTOR_PAYMENT_CREATED>,\n ): CreatePaymentFlowContextInterface => {\n return {\n ...updateBreadcrumbs('paymentSummary', ctx),\n component: PaymentSummaryContextual,\n createdPaymentGroupId: ev.payload.uuid,\n alerts: undefined,\n }\n },\n ),\n ),\n ),\n paymentSummary: state<MachineTransition>(\n transition(\n payrollWireEvents.PAYROLL_WIRE_FORM_DONE,\n 'paymentSummary',\n reduce(\n (\n ctx: CreatePaymentFlowContextInterface,\n ev: MachineEventType<EventPayloads, typeof payrollWireEvents.PAYROLL_WIRE_FORM_DONE>,\n ): CreatePaymentFlowContextInterface => {\n return {\n ...ctx,\n alerts: [\n {\n type: 'success',\n title: 'wireDetailsSubmitted',\n content: ev.payload.confirmationAlert.content,\n },\n ],\n }\n },\n ),\n ),\n ),\n}\n"],"names":["createPaymentBreadcrumbsNodes","ctx","updateBreadcrumbs","createPaymentMachine","state","transition","componentEvents","reduce","ev","PaymentSummaryContextual","payrollWireEvents"],"mappings":";;;;;AAwBO,MAAMA,IAAiD;AAAA,EAC5D,eAAe;AAAA,IACb,QAAQ;AAAA,IACR,MAAM;AAAA,MACJ,IAAI;AAAA,MACJ,OAAO;AAAA,MACP,WAAW;AAAA,MACX,aAAa,CAACC,OAA4C;AAAA,QACxD,GAAGC,EAAkB,iBAAiBD,CAAG;AAAA,MAAA;AAAA,IAC3C;AAAA,EACF;AAAA,EAEF,gBAAgB;AAAA,IACd,QAAQ;AAAA,IACR,MAAM;AAAA,MACJ,IAAI;AAAA,MACJ,OAAO;AAAA,MACP,WAAW;AAAA,IAAA;AAAA,EACb;AAEJ,GAGaE,IAAuB;AAAA,EAClC,eAAeC;AAAA,IACbC;AAAA,MACEC,EAAgB;AAAA,MAChB;AAAA,MACAC;AAAA,QACE,CACEN,GACAO,OAEO;AAAA,UACL,GAAGN,EAAkB,kBAAkBD,CAAG;AAAA,UAC1C,WAAWQ;AAAA,UACX,uBAAuBD,EAAG,QAAQ;AAAA,UAClC,QAAQ;AAAA,QAAA;AAAA,MAEZ;AAAA,IACF;AAAA,EACF;AAAA,EAEF,gBAAgBJ;AAAA,IACdC;AAAA,MACEK,EAAkB;AAAA,MAClB;AAAA,MACAH;AAAA,QACE,CACEN,GACAO,OAEO;AAAA,UACL,GAAGP;AAAA,UACH,QAAQ;AAAA,YACN;AAAA,cACE,MAAM;AAAA,cACN,OAAO;AAAA,cACP,SAASO,EAAG,QAAQ,kBAAkB;AAAA,YAAA;AAAA,UACxC;AAAA,QACF;AAAA,MAEJ;AAAA,IACF;AAAA,EACF;AAEJ;"}
@@ -0,0 +1,30 @@
1
+ import { BaseComponentInterface } from '../../../Base';
2
+ /**
3
+ * Props for {@link HistoricalPaymentSummary}.
4
+ *
5
+ * @alpha
6
+ */
7
+ export interface HistoricalPaymentSummaryProps extends BaseComponentInterface<'Contractor.Payments.HistoricalPaymentSummary'> {
8
+ /** UUID of the historical contractor payment group to summarize. */
9
+ paymentGroupId: string;
10
+ /** UUID of the company that owns the payment group. */
11
+ companyId: string;
12
+ }
13
+ /**
14
+ * Displays the summary of a successfully recorded historical contractor payment.
15
+ *
16
+ * @remarks
17
+ * Fetches the created contractor payment group by ID and renders a per-contractor breakdown.
18
+ * Historical payments don't move money, so unlike `PaymentSummary` there is no debit account,
19
+ * debit date, or wire-transfer confirmation to show.
20
+ *
21
+ * @events
22
+ * | Event | Description | Data |
23
+ * | ----- | ----------- | ---- |
24
+ * | `contractor/historicalPayments/exit` | User is done reviewing the summary. | — |
25
+ *
26
+ * @param props - See {@link HistoricalPaymentSummaryProps}.
27
+ * @returns The rendered payment summary, or `null` when the payment group cannot be loaded.
28
+ * @alpha
29
+ */
30
+ export declare function HistoricalPaymentSummary(props: HistoricalPaymentSummaryProps): import("react").JSX.Element;
@@ -0,0 +1,56 @@
1
+ import { jsx as t, jsxs as e } from "react/jsx-runtime";
2
+ import { useTranslation as S } from "react-i18next";
3
+ import { useContractorPaymentGroupsGetSuspense as g } from "@gusto/embedded-api/react-query/contractorPaymentGroupsGet";
4
+ import { useContractorsListSuspense as T } from "@gusto/embedded-api/react-query/contractorsList";
5
+ import { useHistoricalPaymentSummaryDictionary as x } from "./useFormDictionary.js";
6
+ import { Flex as a } from "../../../Common/Flex/Flex.js";
7
+ import { BaseComponent as H } from "../../../Base/Base.js";
8
+ import "../../../Base/useBase.js";
9
+ import { useComponentContext as G } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
10
+ import { useI18n as O, useComponentDictionary as b } from "../../../../i18n/I18n.js";
11
+ import { useDateFormatter as A } from "../../../../hooks/useDateFormatter.js";
12
+ import { ContractorOnboardingStatus as I, componentEvents as E } from "../../../../shared/constants.js";
13
+ import { PaymentSummaryBlock as L } from "../shared/PaymentSummaryBlock/PaymentSummaryBlock.js";
14
+ function q(r) {
15
+ return /* @__PURE__ */ t(H, { ...r, componentName: "Contractor.Payments.HistoricalPaymentSummary", children: /* @__PURE__ */ t(N, { ...r }) });
16
+ }
17
+ function N({ paymentGroupId: r, companyId: c, dictionary: s, onEvent: u }) {
18
+ O("Contractor.Payments.HistoricalPaymentSummary"), b("Contractor.Payments.HistoricalPaymentSummary", s);
19
+ const { t: o } = S("Contractor.Payments.HistoricalPaymentSummary"), { Heading: l, Text: m, Button: y, Alert: p } = G(), { formatLongWithYear: f } = A(), d = x(), { data: C } = g({
20
+ contractorPaymentGroupUuid: r
21
+ }), n = C.contractorPaymentGroup, { data: P } = T({ companyUuid: c }), h = (P.contractors || []).filter(
22
+ (i) => i.isActive && i.onboardingStatus === I.ONBOARDING_COMPLETED
23
+ );
24
+ if (!n)
25
+ return null;
26
+ const D = () => {
27
+ u(E.CONTRACTOR_HISTORICAL_PAYMENT_EXIT);
28
+ };
29
+ return /* @__PURE__ */ e(a, { flexDirection: "column", gap: 24, children: [
30
+ /* @__PURE__ */ t(p, { status: "success", label: o("successTitle"), children: /* @__PURE__ */ t(m, { children: o("successMessage", {
31
+ count: n.contractorPayments?.length ?? 0
32
+ }) }) }),
33
+ /* @__PURE__ */ e(a, { justifyContent: "space-between", alignItems: "flex-start", children: [
34
+ /* @__PURE__ */ e(a, { flexDirection: "column", gap: 2, children: [
35
+ /* @__PURE__ */ t(l, { as: "h2", children: o("summaryTitle") }),
36
+ /* @__PURE__ */ t(m, { variant: "supporting", children: o("summarySubtitle", {
37
+ checkDate: f(n.checkDate ?? "")
38
+ }) })
39
+ ] }),
40
+ /* @__PURE__ */ t(y, { onClick: D, variant: "primary", children: o("doneCta") })
41
+ ] }),
42
+ /* @__PURE__ */ t(
43
+ L,
44
+ {
45
+ contractorPaymentGroup: n,
46
+ contractors: h,
47
+ showDebitColumns: !1,
48
+ dictionary: d
49
+ }
50
+ )
51
+ ] });
52
+ }
53
+ export {
54
+ q as HistoricalPaymentSummary
55
+ };
56
+ //# sourceMappingURL=HistoricalPaymentSummary.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HistoricalPaymentSummary.js","sources":["../../../../../src/components/Contractor/Payments/HistoricalPaymentSummary/HistoricalPaymentSummary.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { useContractorPaymentGroupsGetSuspense } from '@gusto/embedded-api/react-query/contractorPaymentGroupsGet'\nimport { useContractorsListSuspense } from '@gusto/embedded-api/react-query/contractorsList'\nimport { PaymentSummaryBlock } from '../shared/PaymentSummaryBlock'\nimport { useHistoricalPaymentSummaryDictionary } from './useFormDictionary'\nimport { Flex } from '@/components/Common'\nimport { BaseComponent, type BaseComponentInterface } from '@/components/Base'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useComponentDictionary, useI18n } from '@/i18n'\nimport { useDateFormatter } from '@/hooks/useDateFormatter'\nimport { componentEvents, ContractorOnboardingStatus } from '@/shared/constants'\n\n/**\n * Props for {@link HistoricalPaymentSummary}.\n *\n * @alpha\n */\nexport interface HistoricalPaymentSummaryProps extends BaseComponentInterface<'Contractor.Payments.HistoricalPaymentSummary'> {\n /** UUID of the historical contractor payment group to summarize. */\n paymentGroupId: string\n /** UUID of the company that owns the payment group. */\n companyId: string\n}\n\n/**\n * Displays the summary of a successfully recorded historical contractor payment.\n *\n * @remarks\n * Fetches the created contractor payment group by ID and renders a per-contractor breakdown.\n * Historical payments don't move money, so unlike `PaymentSummary` there is no debit account,\n * debit date, or wire-transfer confirmation to show.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `contractor/historicalPayments/exit` | User is done reviewing the summary. | — |\n *\n * @param props - See {@link HistoricalPaymentSummaryProps}.\n * @returns The rendered payment summary, or `null` when the payment group cannot be loaded.\n * @alpha\n */\nexport function HistoricalPaymentSummary(props: HistoricalPaymentSummaryProps) {\n return (\n <BaseComponent {...props} componentName=\"Contractor.Payments.HistoricalPaymentSummary\">\n <Root {...props} />\n </BaseComponent>\n )\n}\n\nfunction Root({ paymentGroupId, companyId, dictionary, onEvent }: HistoricalPaymentSummaryProps) {\n useI18n('Contractor.Payments.HistoricalPaymentSummary')\n useComponentDictionary('Contractor.Payments.HistoricalPaymentSummary', dictionary)\n const { t } = useTranslation('Contractor.Payments.HistoricalPaymentSummary')\n const { Heading, Text, Button, Alert } = useComponentContext()\n const { formatLongWithYear } = useDateFormatter()\n const summaryDictionary = useHistoricalPaymentSummaryDictionary()\n\n const { data: paymentGroupData } = useContractorPaymentGroupsGetSuspense({\n contractorPaymentGroupUuid: paymentGroupId,\n })\n const contractorPaymentGroup = paymentGroupData.contractorPaymentGroup\n\n const { data: contractorList } = useContractorsListSuspense({ companyUuid: companyId })\n const contractors = (contractorList.contractors || []).filter(\n contractor =>\n contractor.isActive &&\n contractor.onboardingStatus === ContractorOnboardingStatus.ONBOARDING_COMPLETED,\n )\n\n if (!contractorPaymentGroup) {\n return null\n }\n\n const handleDone = () => {\n onEvent(componentEvents.CONTRACTOR_HISTORICAL_PAYMENT_EXIT)\n }\n\n return (\n <Flex flexDirection=\"column\" gap={24}>\n <Alert status=\"success\" label={t('successTitle')}>\n <Text>\n {t('successMessage', {\n count: contractorPaymentGroup.contractorPayments?.length ?? 0,\n })}\n </Text>\n </Alert>\n\n <Flex justifyContent=\"space-between\" alignItems=\"flex-start\">\n <Flex flexDirection=\"column\" gap={2}>\n <Heading as=\"h2\">{t('summaryTitle')}</Heading>\n <Text variant=\"supporting\">\n {t('summarySubtitle', {\n checkDate: formatLongWithYear(contractorPaymentGroup.checkDate ?? ''),\n })}\n </Text>\n </Flex>\n <Button onClick={handleDone} variant=\"primary\">\n {t('doneCta')}\n </Button>\n </Flex>\n\n <PaymentSummaryBlock\n contractorPaymentGroup={contractorPaymentGroup}\n contractors={contractors}\n showDebitColumns={false}\n dictionary={summaryDictionary}\n />\n </Flex>\n )\n}\n"],"names":["HistoricalPaymentSummary","props","jsx","BaseComponent","Root","paymentGroupId","companyId","dictionary","onEvent","useI18n","useComponentDictionary","t","useTranslation","Heading","Text","Button","Alert","useComponentContext","formatLongWithYear","useDateFormatter","summaryDictionary","useHistoricalPaymentSummaryDictionary","paymentGroupData","useContractorPaymentGroupsGetSuspense","contractorPaymentGroup","contractorList","useContractorsListSuspense","contractors","contractor","ContractorOnboardingStatus","handleDone","componentEvents","jsxs","Flex","PaymentSummaryBlock"],"mappings":";;;;;;;;;;;;;AAyCO,SAASA,EAAyBC,GAAsC;AAC7E,SACE,gBAAAC,EAACC,GAAA,EAAe,GAAGF,GAAO,eAAc,gDACtC,UAAA,gBAAAC,EAACE,GAAA,EAAM,GAAGH,EAAA,CAAO,EAAA,CACnB;AAEJ;AAEA,SAASG,EAAK,EAAE,gBAAAC,GAAgB,WAAAC,GAAW,YAAAC,GAAY,SAAAC,KAA0C;AAC/F,EAAAC,EAAQ,8CAA8C,GACtDC,EAAuB,gDAAgDH,CAAU;AACjF,QAAM,EAAE,GAAAI,EAAA,IAAMC,EAAe,8CAA8C,GACrE,EAAE,SAAAC,GAAS,MAAAC,GAAM,QAAAC,GAAQ,OAAAC,EAAA,IAAUC,EAAA,GACnC,EAAE,oBAAAC,EAAA,IAAuBC,EAAA,GACzBC,IAAoBC,EAAA,GAEpB,EAAE,MAAMC,EAAA,IAAqBC,EAAsC;AAAA,IACvE,4BAA4BlB;AAAA,EAAA,CAC7B,GACKmB,IAAyBF,EAAiB,wBAE1C,EAAE,MAAMG,EAAA,IAAmBC,EAA2B,EAAE,aAAapB,GAAW,GAChFqB,KAAeF,EAAe,eAAe,CAAA,GAAI;AAAA,IACrD,CAAAG,MACEA,EAAW,YACXA,EAAW,qBAAqBC,EAA2B;AAAA,EAAA;AAG/D,MAAI,CAACL;AACH,WAAO;AAGT,QAAMM,IAAa,MAAM;AACvB,IAAAtB,EAAQuB,EAAgB,kCAAkC;AAAA,EAC5D;AAEA,SACE,gBAAAC,EAACC,GAAA,EAAK,eAAc,UAAS,KAAK,IAChC,UAAA;AAAA,IAAA,gBAAA/B,EAACc,GAAA,EAAM,QAAO,WAAU,OAAOL,EAAE,cAAc,GAC7C,UAAA,gBAAAT,EAACY,GAAA,EACE,UAAAH,EAAE,kBAAkB;AAAA,MACnB,OAAOa,EAAuB,oBAAoB,UAAU;AAAA,IAAA,CAC7D,GACH,EAAA,CACF;AAAA,IAEA,gBAAAQ,EAACC,GAAA,EAAK,gBAAe,iBAAgB,YAAW,cAC9C,UAAA;AAAA,MAAA,gBAAAD,EAACC,GAAA,EAAK,eAAc,UAAS,KAAK,GAChC,UAAA;AAAA,QAAA,gBAAA/B,EAACW,GAAA,EAAQ,IAAG,MAAM,UAAAF,EAAE,cAAc,GAAE;AAAA,QACpC,gBAAAT,EAACY,GAAA,EAAK,SAAQ,cACX,YAAE,mBAAmB;AAAA,UACpB,WAAWI,EAAmBM,EAAuB,aAAa,EAAE;AAAA,QAAA,CACrE,EAAA,CACH;AAAA,MAAA,GACF;AAAA,MACA,gBAAAtB,EAACa,KAAO,SAASe,GAAY,SAAQ,WAClC,UAAAnB,EAAE,SAAS,EAAA,CACd;AAAA,IAAA,GACF;AAAA,IAEA,gBAAAT;AAAA,MAACgC;AAAA,MAAA;AAAA,QACC,wBAAAV;AAAA,QACA,aAAAG;AAAA,QACA,kBAAkB;AAAA,QAClB,YAAYP;AAAA,MAAA;AAAA,IAAA;AAAA,EACd,GACF;AAEJ;"}