@gusto/embedded-react-sdk 0.51.0 → 0.51.2

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 (530) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/components/Base/useBaseSubmit.js +4 -4
  3. package/dist/components/Base/useBaseSubmit.js.map +1 -1
  4. package/dist/components/Common/DocumentList/DocumentList.d.ts +8 -1
  5. package/dist/components/Common/DocumentList/DocumentList.js +24 -21
  6. package/dist/components/Common/DocumentList/DocumentList.js.map +1 -1
  7. package/dist/components/Common/OnboardingStatusBadge/index.d.ts +2 -2
  8. package/dist/components/Common/OnboardingStatusBadge/index.js.map +1 -1
  9. package/dist/components/Common/TaxInputs/TaxInputs.d.ts +2 -2
  10. package/dist/components/Common/TaxInputs/TaxInputs.js.map +1 -1
  11. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js +5 -5
  12. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js.map +1 -1
  13. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.d.ts +1 -1
  14. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +9 -8
  15. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
  16. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js +3 -3
  17. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js.map +1 -1
  18. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.d.ts +1 -1
  19. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +9 -8
  20. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
  21. package/dist/components/Company/AssignSignatory/useAssignSignatory.js +11 -10
  22. package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
  23. package/dist/components/Company/BankAccount/BankAccount.js +1 -1
  24. package/dist/components/Company/BankAccount/BankAccount.js.map +1 -1
  25. package/dist/components/Company/BankAccount/BankAccountComponents.d.ts +1 -1
  26. package/dist/components/Company/BankAccount/BankAccountComponents.js.map +1 -1
  27. package/dist/components/Company/BankAccount/BankAccountForm/BankAccountForm.js +1 -1
  28. package/dist/components/Company/BankAccount/BankAccountForm/BankAccountForm.js.map +1 -1
  29. package/dist/components/Company/BankAccount/BankAccountForm/context.js +9 -8
  30. package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
  31. package/dist/components/Company/BankAccount/BankAccountList/BankAccountList.js +1 -1
  32. package/dist/components/Company/BankAccount/BankAccountList/BankAccountList.js.map +1 -1
  33. package/dist/components/Company/BankAccount/BankAccountList/context.d.ts +1 -1
  34. package/dist/components/Company/BankAccount/BankAccountList/context.js.map +1 -1
  35. package/dist/components/Company/BankAccount/BankAccountVerify/BankAccountVerify.js +1 -1
  36. package/dist/components/Company/BankAccount/BankAccountVerify/BankAccountVerify.js.map +1 -1
  37. package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js +2 -2
  38. package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
  39. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.d.ts +2 -2
  40. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +9 -8
  41. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  42. package/dist/components/Company/DocumentSigner/DocumentSigner.js +1 -1
  43. package/dist/components/Company/DocumentSigner/DocumentSigner.js.map +1 -1
  44. package/dist/components/Company/DocumentSigner/documentSignerStateMachine.d.ts +2 -2
  45. package/dist/components/Company/DocumentSigner/documentSignerStateMachine.js.map +1 -1
  46. package/dist/components/Company/DocumentSigner/shared/useSignCompanyForm/useSignCompanyForm.d.ts +1 -1
  47. package/dist/components/Company/DocumentSigner/shared/useSignCompanyForm/useSignCompanyForm.js +3 -3
  48. package/dist/components/Company/DocumentSigner/shared/useSignCompanyForm/useSignCompanyForm.js.map +1 -1
  49. package/dist/components/Company/FederalTaxes/FederalTaxes.js +2 -2
  50. package/dist/components/Company/FederalTaxes/FederalTaxes.js.map +1 -1
  51. package/dist/components/Company/FederalTaxes/Form.js +1 -1
  52. package/dist/components/Company/FederalTaxes/Form.js.map +1 -1
  53. package/dist/components/Company/FederalTaxes/useFederalTaxes.d.ts +1 -1
  54. package/dist/components/Company/FederalTaxes/useFederalTaxes.js +12 -11
  55. package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
  56. package/dist/components/Company/Industry/Context.js +12 -11
  57. package/dist/components/Company/Industry/Context.js.map +1 -1
  58. package/dist/components/Company/Industry/Industry.js +2 -2
  59. package/dist/components/Company/Industry/Industry.js.map +1 -1
  60. package/dist/components/Company/Locations/LocationForm/Actions.js +7 -7
  61. package/dist/components/Company/Locations/LocationForm/Actions.js.map +1 -1
  62. package/dist/components/Company/Locations/LocationForm/LocationForm.js +46 -45
  63. package/dist/components/Company/Locations/LocationForm/LocationForm.js.map +1 -1
  64. package/dist/components/Company/Locations/LocationForm/useLocationForm.js +9 -8
  65. package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
  66. package/dist/components/Company/Locations/LocationsList/LocationsList.js +1 -1
  67. package/dist/components/Company/Locations/LocationsList/LocationsList.js.map +1 -1
  68. package/dist/components/Company/Locations/LocationsList/useLocationsList.d.ts +1 -1
  69. package/dist/components/Company/Locations/LocationsList/useLocationsList.js +9 -8
  70. package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
  71. package/dist/components/Company/OnboardingOverview/OnboardingOverview.js +1 -1
  72. package/dist/components/Company/OnboardingOverview/OnboardingOverview.js.map +1 -1
  73. package/dist/components/Company/OnboardingOverview/context.d.ts +1 -1
  74. package/dist/components/Company/OnboardingOverview/context.js +9 -8
  75. package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
  76. package/dist/components/Company/PaySchedule/PaySchedule.js +1 -1
  77. package/dist/components/Company/PaySchedule/PaySchedule.js.map +1 -1
  78. package/dist/components/Company/PaySchedule/PayScheduleList.js +1 -1
  79. package/dist/components/Company/PaySchedule/PayScheduleList.js.map +1 -1
  80. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/usePayScheduleForm.d.ts +2 -2
  81. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/usePayScheduleForm.js +6 -6
  82. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/usePayScheduleForm.js.map +1 -1
  83. package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js +3 -3
  84. package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js.map +1 -1
  85. package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.js +2 -2
  86. package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.js.map +1 -1
  87. package/dist/components/Company/StateTaxes/StateTaxesForm/applicableIf.d.ts +1 -1
  88. package/dist/components/Company/StateTaxes/StateTaxesForm/applicableIf.js.map +1 -1
  89. package/dist/components/Company/StateTaxes/StateTaxesForm/context.d.ts +1 -1
  90. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +9 -8
  91. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
  92. package/dist/components/Company/StateTaxes/StateTaxesList/List.js +1 -1
  93. package/dist/components/Company/StateTaxes/StateTaxesList/List.js.map +1 -1
  94. package/dist/components/Company/StateTaxes/StateTaxesList/StateTaxesList.js +1 -1
  95. package/dist/components/Company/StateTaxes/StateTaxesList/StateTaxesList.js.map +1 -1
  96. package/dist/components/Company/StateTaxes/StateTaxesList/context.d.ts +1 -1
  97. package/dist/components/Company/StateTaxes/StateTaxesList/context.js +9 -8
  98. package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
  99. package/dist/components/Contractor/Address/shared/useContractorAddressForm/useContractorAddressForm.d.ts +2 -2
  100. package/dist/components/Contractor/Address/shared/useContractorAddressForm/useContractorAddressForm.js +3 -3
  101. package/dist/components/Contractor/Address/shared/useContractorAddressForm/useContractorAddressForm.js.map +1 -1
  102. package/dist/components/Contractor/ContractorList/index.js +1 -1
  103. package/dist/components/Contractor/ContractorList/index.js.map +1 -1
  104. package/dist/components/Contractor/ContractorList/useContractorList.d.ts +1 -1
  105. package/dist/components/Contractor/ContractorList/useContractorList.js +1 -1
  106. package/dist/components/Contractor/ContractorList/useContractorList.js.map +1 -1
  107. package/dist/components/Contractor/Documents/DocumentSigner/documentSignerStateMachine.d.ts +1 -1
  108. package/dist/components/Contractor/Documents/DocumentSigner/documentSignerStateMachine.js.map +1 -1
  109. package/dist/components/Contractor/Documents/DocumentsList/DocumentsList.d.ts +3 -1
  110. package/dist/components/Contractor/Documents/DocumentsList/DocumentsList.js +64 -51
  111. package/dist/components/Contractor/Documents/DocumentsList/DocumentsList.js.map +1 -1
  112. package/dist/components/Contractor/Documents/DocumentsList/useContractorDocumentsList/useContractorDocumentsList.d.ts +1 -1
  113. package/dist/components/Contractor/Documents/DocumentsList/useContractorDocumentsList/useContractorDocumentsList.js +1 -1
  114. package/dist/components/Contractor/Documents/DocumentsList/useContractorDocumentsList/useContractorDocumentsList.js.map +1 -1
  115. package/dist/components/Contractor/Documents/SignatureForm/SignatureForm.js +201 -161
  116. package/dist/components/Contractor/Documents/SignatureForm/SignatureForm.js.map +1 -1
  117. package/dist/components/Contractor/Documents/SignatureForm/useContractorSignatureForm/useContractorSignatureForm.d.ts +2 -2
  118. package/dist/components/Contractor/Documents/SignatureForm/useContractorSignatureForm/useContractorSignatureForm.js +3 -3
  119. package/dist/components/Contractor/Documents/SignatureForm/useContractorSignatureForm/useContractorSignatureForm.js.map +1 -1
  120. package/dist/components/Contractor/Documents/SignatureForm/useContractorSignatureForm/w9Fields.d.ts +1 -1
  121. package/dist/components/Contractor/Documents/SignatureForm/useContractorSignatureForm/w9Fields.js +55 -54
  122. package/dist/components/Contractor/Documents/SignatureForm/useContractorSignatureForm/w9Fields.js.map +1 -1
  123. package/dist/components/Contractor/Landing/Landing.js +2 -2
  124. package/dist/components/Contractor/Landing/Landing.js.map +1 -1
  125. package/dist/components/Contractor/NewHireReport/NewHireReport.js +2 -2
  126. package/dist/components/Contractor/NewHireReport/NewHireReport.js.map +1 -1
  127. package/dist/components/Contractor/PaymentMethod/shared/useContractorBankAccountForm/useContractorBankAccountForm.d.ts +1 -1
  128. package/dist/components/Contractor/PaymentMethod/shared/useContractorBankAccountForm/useContractorBankAccountForm.js +2 -2
  129. package/dist/components/Contractor/PaymentMethod/shared/useContractorBankAccountForm/useContractorBankAccountForm.js.map +1 -1
  130. package/dist/components/Contractor/PaymentMethod/shared/useContractorPaymentMethodForm/useContractorPaymentMethodForm.d.ts +1 -1
  131. package/dist/components/Contractor/PaymentMethod/shared/useContractorPaymentMethodForm/useContractorPaymentMethodForm.js +2 -2
  132. package/dist/components/Contractor/PaymentMethod/shared/useContractorPaymentMethodForm/useContractorPaymentMethodForm.js.map +1 -1
  133. package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js +5 -5
  134. package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js.map +1 -1
  135. package/dist/components/Contractor/Payments/CreatePayment/CreatePaymentPresentation.d.ts +2 -2
  136. package/dist/components/Contractor/Payments/CreatePayment/CreatePaymentPresentation.js.map +1 -1
  137. package/dist/components/Contractor/Payments/CreatePayment/FastAchSubmissionBlockerBanner.d.ts +2 -2
  138. package/dist/components/Contractor/Payments/CreatePayment/FastAchSubmissionBlockerBanner.js.map +1 -1
  139. package/dist/components/Contractor/Payments/CreatePayment/GenericBlocker.d.ts +1 -1
  140. package/dist/components/Contractor/Payments/CreatePayment/GenericBlocker.js.map +1 -1
  141. package/dist/components/Contractor/Payments/CreatePayment/PreviewPresentation.d.ts +4 -4
  142. package/dist/components/Contractor/Payments/CreatePayment/PreviewPresentation.js.map +1 -1
  143. package/dist/components/Contractor/Payments/CreatePayment/helpers.d.ts +1 -1
  144. package/dist/components/Contractor/Payments/CreatePayment/helpers.js.map +1 -1
  145. package/dist/components/Contractor/Payments/PaymentFlow/paymentStateMachine.js.map +1 -1
  146. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistory.js +3 -3
  147. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistory.js.map +1 -1
  148. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistoryPresentation.d.ts +2 -2
  149. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistoryPresentation.js.map +1 -1
  150. package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatement.js +4 -4
  151. package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatement.js.map +1 -1
  152. package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatementPresentation.d.ts +3 -3
  153. package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatementPresentation.js.map +1 -1
  154. package/dist/components/Contractor/Payments/PaymentSummary/PaymentSummary.js +3 -3
  155. package/dist/components/Contractor/Payments/PaymentSummary/PaymentSummary.js.map +1 -1
  156. package/dist/components/Contractor/Payments/PaymentSummary/PaymentSummaryPresentation.d.ts +3 -3
  157. package/dist/components/Contractor/Payments/PaymentSummary/PaymentSummaryPresentation.js.map +1 -1
  158. package/dist/components/Contractor/Payments/PaymentsList/PaymentsList.js +3 -3
  159. package/dist/components/Contractor/Payments/PaymentsList/PaymentsList.js.map +1 -1
  160. package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.d.ts +1 -1
  161. package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.js.map +1 -1
  162. package/dist/components/Contractor/Profile/SelfOnboardingContractorProfile.js +1 -1
  163. package/dist/components/Contractor/Profile/SelfOnboardingContractorProfile.js.map +1 -1
  164. package/dist/components/Contractor/Profile/shared/useContractorDetailsForm/contractorDetailsSchema.js +1 -1
  165. package/dist/components/Contractor/Profile/shared/useContractorDetailsForm/contractorDetailsSchema.js.map +1 -1
  166. package/dist/components/Contractor/Profile/shared/useContractorDetailsForm/useContractorDetailsForm.d.ts +1 -1
  167. package/dist/components/Contractor/Profile/shared/useContractorDetailsForm/useContractorDetailsForm.js +3 -3
  168. package/dist/components/Contractor/Profile/shared/useContractorDetailsForm/useContractorDetailsForm.js.map +1 -1
  169. package/dist/components/Contractor/Submit/Submit.js +3 -3
  170. package/dist/components/Contractor/Submit/Submit.js.map +1 -1
  171. package/dist/components/Employee/Compensation/management/CompensationCard/CompensationCard.js +1 -1
  172. package/dist/components/Employee/Compensation/management/CompensationCard/CompensationCard.js.map +1 -1
  173. package/dist/components/Employee/Compensation/management/CompensationEditForm/CompensationEditForm.js +1 -1
  174. package/dist/components/Employee/Compensation/management/CompensationEditForm/CompensationEditForm.js.map +1 -1
  175. package/dist/components/Employee/Compensation/management/CompensationEditJobForm/CompensationEditJobForm.js +1 -1
  176. package/dist/components/Employee/Compensation/management/CompensationEditJobForm/CompensationEditJobForm.js.map +1 -1
  177. package/dist/components/Employee/Compensation/management/ManagementCompensationFormBody.js.map +1 -1
  178. package/dist/components/Employee/Compensation/onboarding/Compensation.d.ts +2 -2
  179. package/dist/components/Employee/Compensation/onboarding/Compensation.js +1 -1
  180. package/dist/components/Employee/Compensation/onboarding/Compensation.js.map +1 -1
  181. package/dist/components/Employee/Compensation/onboarding/CompensationFlowComponents.d.ts +2 -2
  182. package/dist/components/Employee/Compensation/onboarding/CompensationFlowComponents.js.map +1 -1
  183. package/dist/components/Employee/Compensation/onboarding/JobsList/JobsList.js +2 -2
  184. package/dist/components/Employee/Compensation/onboarding/JobsList/JobsList.js.map +1 -1
  185. package/dist/components/Employee/Compensation/onboarding/JobsList/JobsListPresentation.d.ts +1 -1
  186. package/dist/components/Employee/Compensation/onboarding/JobsList/JobsListPresentation.js.map +1 -1
  187. package/dist/components/Employee/Compensation/shared/AddCompensationFormBody.js.map +1 -1
  188. package/dist/components/Employee/Compensation/shared/derivePrimaryFlsaStatus.d.ts +1 -1
  189. package/dist/components/Employee/Compensation/shared/derivePrimaryFlsaStatus.js.map +1 -1
  190. package/dist/components/Employee/Compensation/shared/getPendingCompensationChanges.d.ts +2 -2
  191. package/dist/components/Employee/Compensation/shared/getPendingCompensationChanges.js.map +1 -1
  192. package/dist/components/Employee/Compensation/shared/useCompensationForm/fields.d.ts +3 -3
  193. package/dist/components/Employee/Compensation/shared/useCompensationForm/fields.js.map +1 -1
  194. package/dist/components/Employee/Compensation/shared/useCompensationForm/useCompensationForm.d.ts +4 -4
  195. package/dist/components/Employee/Compensation/shared/useCompensationForm/useCompensationForm.js +7 -7
  196. package/dist/components/Employee/Compensation/shared/useCompensationForm/useCompensationForm.js.map +1 -1
  197. package/dist/components/Employee/Compensation/shared/useCompensationManagement/useCompensationManagement.d.ts +1 -1
  198. package/dist/components/Employee/Compensation/shared/useCompensationManagement/useCompensationManagement.js +4 -4
  199. package/dist/components/Employee/Compensation/shared/useCompensationManagement/useCompensationManagement.js.map +1 -1
  200. package/dist/components/Employee/Compensation/shared/useJobForm/useJobForm.d.ts +3 -3
  201. package/dist/components/Employee/Compensation/shared/useJobForm/useJobForm.js +7 -7
  202. package/dist/components/Employee/Compensation/shared/useJobForm/useJobForm.js.map +1 -1
  203. package/dist/components/Employee/Dashboard/Dashboard.js +1 -1
  204. package/dist/components/Employee/Dashboard/Dashboard.js.map +1 -1
  205. package/dist/components/Employee/Dashboard/dashboardStateMachine.js.map +1 -1
  206. package/dist/components/Employee/Deductions/management/DeductionsCard/DeductionsCard.js.map +1 -1
  207. package/dist/components/Employee/Deductions/management/deductionsStateMachine.js.map +1 -1
  208. package/dist/components/Employee/Deductions/onboarding/DeductionsList/DeductionsList.d.ts +1 -1
  209. package/dist/components/Employee/Deductions/onboarding/DeductionsList/DeductionsList.js.map +1 -1
  210. package/dist/components/Employee/Deductions/onboarding/deductionsContextualComponents.d.ts +1 -1
  211. package/dist/components/Employee/Deductions/onboarding/deductionsContextualComponents.js.map +1 -1
  212. package/dist/components/Employee/Deductions/shared/DeductionsForm/ChildSupportFormView.d.ts +1 -1
  213. package/dist/components/Employee/Deductions/shared/DeductionsForm/ChildSupportFormView.js.map +1 -1
  214. package/dist/components/Employee/Deductions/shared/DeductionsForm/DeductionsForm.d.ts +1 -1
  215. package/dist/components/Employee/Deductions/shared/DeductionsForm/DeductionsForm.js.map +1 -1
  216. package/dist/components/Employee/Deductions/shared/DeductionsForm/StandardDeductionForm.d.ts +1 -1
  217. package/dist/components/Employee/Deductions/shared/DeductionsForm/StandardDeductionForm.js.map +1 -1
  218. package/dist/components/Employee/Deductions/shared/DeleteDeductionDialog.d.ts +1 -1
  219. package/dist/components/Employee/Deductions/shared/DeleteDeductionDialog.js.map +1 -1
  220. package/dist/components/Employee/Deductions/shared/formatDeductionAmount.d.ts +1 -1
  221. package/dist/components/Employee/Deductions/shared/formatDeductionAmount.js.map +1 -1
  222. package/dist/components/Employee/Deductions/shared/useChildSupportGarnishmentForm/childSupportGarnishmentFormSchema.d.ts +1 -1
  223. package/dist/components/Employee/Deductions/shared/useChildSupportGarnishmentForm/childSupportGarnishmentFormSchema.js +1 -1
  224. package/dist/components/Employee/Deductions/shared/useChildSupportGarnishmentForm/childSupportGarnishmentFormSchema.js.map +1 -1
  225. package/dist/components/Employee/Deductions/shared/useChildSupportGarnishmentForm/fields.d.ts +1 -1
  226. package/dist/components/Employee/Deductions/shared/useChildSupportGarnishmentForm/fields.js.map +1 -1
  227. package/dist/components/Employee/Deductions/shared/useChildSupportGarnishmentForm/useChildSupportGarnishmentForm.d.ts +2 -2
  228. package/dist/components/Employee/Deductions/shared/useChildSupportGarnishmentForm/useChildSupportGarnishmentForm.js +5 -5
  229. package/dist/components/Employee/Deductions/shared/useChildSupportGarnishmentForm/useChildSupportGarnishmentForm.js.map +1 -1
  230. package/dist/components/Employee/Deductions/shared/useDeductionForm/deductionFormSchema.js +1 -1
  231. package/dist/components/Employee/Deductions/shared/useDeductionForm/deductionFormSchema.js.map +1 -1
  232. package/dist/components/Employee/Deductions/shared/useDeductionForm/fields.d.ts +1 -1
  233. package/dist/components/Employee/Deductions/shared/useDeductionForm/fields.js.map +1 -1
  234. package/dist/components/Employee/Deductions/shared/useDeductionForm/useDeductionForm.d.ts +1 -1
  235. package/dist/components/Employee/Deductions/shared/useDeductionForm/useDeductionForm.js +3 -3
  236. package/dist/components/Employee/Deductions/shared/useDeductionForm/useDeductionForm.js.map +1 -1
  237. package/dist/components/Employee/Deductions/shared/useDeductionsList.d.ts +1 -1
  238. package/dist/components/Employee/Deductions/shared/useDeductionsList.js +2 -2
  239. package/dist/components/Employee/Deductions/shared/useDeductionsList.js.map +1 -1
  240. package/dist/components/Employee/Deductions/shared/useDeleteDeduction.d.ts +1 -1
  241. package/dist/components/Employee/Deductions/shared/useDeleteDeduction.js.map +1 -1
  242. package/dist/components/Employee/Documents/management/DocumentManager.js +2 -2
  243. package/dist/components/Employee/Documents/management/DocumentManager.js.map +1 -1
  244. package/dist/components/Employee/Documents/management/DocumentsCard/DocumentsCard.js.map +1 -1
  245. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/DocumentList.js +1 -1
  246. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
  247. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.d.ts +1 -1
  248. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js +9 -8
  249. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  250. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentSigner.js +2 -2
  251. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentSigner.js.map +1 -1
  252. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibility.js +3 -3
  253. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibility.js.map +1 -1
  254. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibilityPresentation.js +1 -1
  255. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibilityPresentation.js.map +1 -1
  256. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibilitySchema.js +1 -1
  257. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibilitySchema.js.map +1 -1
  258. package/dist/components/Employee/Documents/onboarding/DocumentSigner/I9SignatureForm/I9SignatureForm.js +1 -1
  259. package/dist/components/Employee/Documents/onboarding/DocumentSigner/I9SignatureForm/I9SignatureForm.js.map +1 -1
  260. package/dist/components/Employee/Documents/onboarding/DocumentSigner/documentSignerStateMachine.d.ts +1 -1
  261. package/dist/components/Employee/Documents/onboarding/DocumentSigner/documentSignerStateMachine.js.map +1 -1
  262. package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocuments.js +2 -2
  263. package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocuments.js.map +1 -1
  264. package/dist/components/Employee/Documents/shared/useDocumentsList/useDocumentsList.d.ts +1 -1
  265. package/dist/components/Employee/Documents/shared/useDocumentsList/useDocumentsList.js +1 -1
  266. package/dist/components/Employee/Documents/shared/useDocumentsList/useDocumentsList.js.map +1 -1
  267. package/dist/components/Employee/Documents/shared/useSignEmployeeForm/useSignEmployeeForm.d.ts +1 -1
  268. package/dist/components/Employee/Documents/shared/useSignEmployeeForm/useSignEmployeeForm.js +3 -3
  269. package/dist/components/Employee/Documents/shared/useSignEmployeeForm/useSignEmployeeForm.js.map +1 -1
  270. package/dist/components/Employee/EmployeeList/onboarding/EmployeeList.js.map +1 -1
  271. package/dist/components/Employee/EmployeeList/onboarding/EmployeeListView.d.ts +1 -1
  272. package/dist/components/Employee/EmployeeList/onboarding/EmployeeListView.js.map +1 -1
  273. package/dist/components/Employee/EmployeeList/shared/useEmployeeList.d.ts +3 -3
  274. package/dist/components/Employee/EmployeeList/shared/useEmployeeList.js +3 -3
  275. package/dist/components/Employee/EmployeeList/shared/useEmployeeList.js.map +1 -1
  276. package/dist/components/Employee/FederalTaxes/shared/useFederalTaxesForm/federalTaxesSchema.js +1 -1
  277. package/dist/components/Employee/FederalTaxes/shared/useFederalTaxesForm/federalTaxesSchema.js.map +1 -1
  278. package/dist/components/Employee/FederalTaxes/shared/useFederalTaxesForm/useFederalTaxesForm.d.ts +1 -1
  279. package/dist/components/Employee/FederalTaxes/shared/useFederalTaxesForm/useFederalTaxesForm.js +2 -2
  280. package/dist/components/Employee/FederalTaxes/shared/useFederalTaxesForm/useFederalTaxesForm.js.map +1 -1
  281. package/dist/components/Employee/FederalTaxes/shared/useFederalTaxesSummary/useFederalTaxesSummary.d.ts +1 -1
  282. package/dist/components/Employee/FederalTaxes/shared/useFederalTaxesSummary/useFederalTaxesSummary.js +1 -1
  283. package/dist/components/Employee/FederalTaxes/shared/useFederalTaxesSummary/useFederalTaxesSummary.js.map +1 -1
  284. package/dist/components/Employee/HomeAddress/management/HomeAddressEditForm.js.map +1 -1
  285. package/dist/components/Employee/HomeAddress/management/HomeAddressView.d.ts +1 -1
  286. package/dist/components/Employee/HomeAddress/management/HomeAddressView.js.map +1 -1
  287. package/dist/components/Employee/HomeAddress/management/getPendingFutureHomeAddress.d.ts +1 -1
  288. package/dist/components/Employee/HomeAddress/management/getPendingFutureHomeAddress.js.map +1 -1
  289. package/dist/components/Employee/HomeAddress/management/useHomeAddressManagement.d.ts +1 -1
  290. package/dist/components/Employee/HomeAddress/management/useHomeAddressManagement.js +3 -3
  291. package/dist/components/Employee/HomeAddress/management/useHomeAddressManagement.js.map +1 -1
  292. package/dist/components/Employee/HomeAddress/shared/useHomeAddressSummary/useHomeAddressSummary.d.ts +1 -1
  293. package/dist/components/Employee/HomeAddress/shared/useHomeAddressSummary/useHomeAddressSummary.js +1 -1
  294. package/dist/components/Employee/HomeAddress/shared/useHomeAddressSummary/useHomeAddressSummary.js.map +1 -1
  295. package/dist/components/Employee/Landing/Landing.js +2 -2
  296. package/dist/components/Employee/Landing/Landing.js.map +1 -1
  297. package/dist/components/Employee/OnboardingExecutionFlow/OnboardingExecutionFlowComponents.d.ts +1 -1
  298. package/dist/components/Employee/OnboardingExecutionFlow/OnboardingExecutionFlowComponents.js.map +1 -1
  299. package/dist/components/Employee/OnboardingSummary/OnboardingSummary.js +2 -2
  300. package/dist/components/Employee/OnboardingSummary/OnboardingSummary.js.map +1 -1
  301. package/dist/components/Employee/PaymentMethod/shared/BankFormBody/BankFormBody.d.ts +1 -1
  302. package/dist/components/Employee/PaymentMethod/shared/BankFormBody/BankFormBody.js.map +1 -1
  303. package/dist/components/Employee/PaymentMethod/shared/SplitPaymentsFormBody/SplitPaymentsFormBody.d.ts +1 -1
  304. package/dist/components/Employee/PaymentMethod/shared/SplitPaymentsFormBody/SplitPaymentsFormBody.js.map +1 -1
  305. package/dist/components/Employee/PaymentMethod/shared/useBankForm/useBankForm.d.ts +1 -1
  306. package/dist/components/Employee/PaymentMethod/shared/useBankForm/useBankForm.js +1 -1
  307. package/dist/components/Employee/PaymentMethod/shared/useBankForm/useBankForm.js.map +1 -1
  308. package/dist/components/Employee/PaymentMethod/shared/usePaymentMethodForm/usePaymentMethodForm.d.ts +1 -1
  309. package/dist/components/Employee/PaymentMethod/shared/usePaymentMethodForm/usePaymentMethodForm.js +2 -2
  310. package/dist/components/Employee/PaymentMethod/shared/usePaymentMethodForm/usePaymentMethodForm.js.map +1 -1
  311. package/dist/components/Employee/PaymentMethod/shared/usePaymentMethodList.d.ts +2 -2
  312. package/dist/components/Employee/PaymentMethod/shared/usePaymentMethodList.js +4 -4
  313. package/dist/components/Employee/PaymentMethod/shared/usePaymentMethodList.js.map +1 -1
  314. package/dist/components/Employee/PaymentMethod/shared/useSplitPaymentsForm/useSplitPaymentsForm.d.ts +2 -2
  315. package/dist/components/Employee/PaymentMethod/shared/useSplitPaymentsForm/useSplitPaymentsForm.js +3 -3
  316. package/dist/components/Employee/PaymentMethod/shared/useSplitPaymentsForm/useSplitPaymentsForm.js.map +1 -1
  317. package/dist/components/Employee/Paystubs/shared/usePaystubsList/usePaystubsList.d.ts +1 -1
  318. package/dist/components/Employee/Paystubs/shared/usePaystubsList/usePaystubsList.js +3 -3
  319. package/dist/components/Employee/Paystubs/shared/usePaystubsList/usePaystubsList.js.map +1 -1
  320. package/dist/components/Employee/Profile/onboarding/AdminProfile.js.map +1 -1
  321. package/dist/components/Employee/Profile/onboarding/EmployeeProfile.js +1 -1
  322. package/dist/components/Employee/Profile/onboarding/EmployeeProfile.js.map +1 -1
  323. package/dist/components/Employee/Profile/shared/useEmployeeDetailsForm/useEmployeeDetailsForm.d.ts +1 -1
  324. package/dist/components/Employee/Profile/shared/useEmployeeDetailsForm/useEmployeeDetailsForm.js +5 -5
  325. package/dist/components/Employee/Profile/shared/useEmployeeDetailsForm/useEmployeeDetailsForm.js.map +1 -1
  326. package/dist/components/Employee/Profile/shared/useEmployeeProfileSummary/useEmployeeProfileSummary.d.ts +1 -1
  327. package/dist/components/Employee/Profile/shared/useEmployeeProfileSummary/useEmployeeProfileSummary.js +1 -1
  328. package/dist/components/Employee/Profile/shared/useEmployeeProfileSummary/useEmployeeProfileSummary.js.map +1 -1
  329. package/dist/components/Employee/Profile/shared/useHomeAddressForm/useCurrentHomeAddressForm.js +1 -1
  330. package/dist/components/Employee/Profile/shared/useHomeAddressForm/useCurrentHomeAddressForm.js.map +1 -1
  331. package/dist/components/Employee/Profile/shared/useHomeAddressForm/useHomeAddressForm.d.ts +1 -1
  332. package/dist/components/Employee/Profile/shared/useHomeAddressForm/useHomeAddressForm.js +4 -4
  333. package/dist/components/Employee/Profile/shared/useHomeAddressForm/useHomeAddressForm.js.map +1 -1
  334. package/dist/components/Employee/Profile/shared/useWorkAddressForm/fields.d.ts +1 -1
  335. package/dist/components/Employee/Profile/shared/useWorkAddressForm/fields.js.map +1 -1
  336. package/dist/components/Employee/Profile/shared/useWorkAddressForm/useCurrentWorkAddressForm.js +1 -1
  337. package/dist/components/Employee/Profile/shared/useWorkAddressForm/useCurrentWorkAddressForm.js.map +1 -1
  338. package/dist/components/Employee/Profile/shared/useWorkAddressForm/useWorkAddressForm.d.ts +2 -2
  339. package/dist/components/Employee/Profile/shared/useWorkAddressForm/useWorkAddressForm.js +5 -5
  340. package/dist/components/Employee/Profile/shared/useWorkAddressForm/useWorkAddressForm.js.map +1 -1
  341. package/dist/components/Employee/SelfOnboardingFlow/SelfOnboardingComponents.d.ts +1 -1
  342. package/dist/components/Employee/SelfOnboardingFlow/SelfOnboardingComponents.js.map +1 -1
  343. package/dist/components/Employee/StateTaxes/management/StateTaxesCard/StateTaxesCard.js.map +1 -1
  344. package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/__fixtures__/stateTaxesFixtures.d.ts +1 -1
  345. package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/__fixtures__/toWireFormat.d.ts +1 -1
  346. package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/employeeStateTaxesSchema.d.ts +1 -1
  347. package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/employeeStateTaxesSchema.js.map +1 -1
  348. package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/fieldMapping.d.ts +1 -1
  349. package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/fieldMapping.js.map +1 -1
  350. package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/fields.d.ts +1 -1
  351. package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/fields.js.map +1 -1
  352. package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/useEmployeeStateTaxesForm.d.ts +1 -1
  353. package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/useEmployeeStateTaxesForm.js +2 -2
  354. package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/useEmployeeStateTaxesForm.js.map +1 -1
  355. package/dist/components/Employee/StateTaxes/shared/useStateTaxesSummary/useStateTaxesSummary.d.ts +1 -1
  356. package/dist/components/Employee/StateTaxes/shared/useStateTaxesSummary/useStateTaxesSummary.js +1 -1
  357. package/dist/components/Employee/StateTaxes/shared/useStateTaxesSummary/useStateTaxesSummary.js.map +1 -1
  358. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js +9 -9
  359. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js.map +1 -1
  360. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.d.ts +1 -1
  361. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.js.map +1 -1
  362. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummary.js +4 -4
  363. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummary.js.map +1 -1
  364. package/dist/components/Employee/WorkAddress/management/WorkAddressEditForm.js.map +1 -1
  365. package/dist/components/Employee/WorkAddress/management/WorkAddressView.d.ts +1 -1
  366. package/dist/components/Employee/WorkAddress/management/WorkAddressView.js.map +1 -1
  367. package/dist/components/Employee/WorkAddress/management/getPendingFutureWorkAddress.d.ts +2 -2
  368. package/dist/components/Employee/WorkAddress/management/getPendingFutureWorkAddress.js.map +1 -1
  369. package/dist/components/Employee/WorkAddress/management/useWorkAddressManagement.d.ts +1 -1
  370. package/dist/components/Employee/WorkAddress/management/useWorkAddressManagement.js +3 -3
  371. package/dist/components/Employee/WorkAddress/management/useWorkAddressManagement.js.map +1 -1
  372. package/dist/components/Employee/WorkAddress/shared/useEmployeeWorkAddressSummary/useEmployeeWorkAddressSummary.d.ts +1 -1
  373. package/dist/components/Employee/WorkAddress/shared/useEmployeeWorkAddressSummary/useEmployeeWorkAddressSummary.js +1 -1
  374. package/dist/components/Employee/WorkAddress/shared/useEmployeeWorkAddressSummary/useEmployeeWorkAddressSummary.js.map +1 -1
  375. package/dist/components/InformationRequests/InformationRequestForm/InformationRequestForm.js +4 -4
  376. package/dist/components/InformationRequests/InformationRequestForm/InformationRequestForm.js.map +1 -1
  377. package/dist/components/InformationRequests/InformationRequestList/InformationRequestList.js +2 -2
  378. package/dist/components/InformationRequests/InformationRequestList/InformationRequestList.js.map +1 -1
  379. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.js +1 -1
  380. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.js.map +1 -1
  381. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsBanner/ConfirmWireDetailsBanner.js +2 -2
  382. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsBanner/ConfirmWireDetailsBanner.js.map +1 -1
  383. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/ConfirmWireDetailsForm.js +3 -3
  384. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/ConfirmWireDetailsForm.js.map +1 -1
  385. package/dist/components/Payroll/ConfirmWireDetails/WireInstructions/WireInstructions.js +2 -2
  386. package/dist/components/Payroll/ConfirmWireDetails/WireInstructions/WireInstructions.js.map +1 -1
  387. package/dist/components/Payroll/Dismissal/DismissalFlowComponents.js +1 -1
  388. package/dist/components/Payroll/Dismissal/DismissalFlowComponents.js.map +1 -1
  389. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelection.js +4 -4
  390. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelection.js.map +1 -1
  391. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js +8 -7
  392. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js.map +1 -1
  393. package/dist/components/Payroll/OffCycle/OffCycleFlowComponents.js +1 -1
  394. package/dist/components/Payroll/OffCycle/OffCycleFlowComponents.js.map +1 -1
  395. package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js +4 -4
  396. package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js.map +1 -1
  397. package/dist/components/Payroll/OffCycleTaxWithholdingModal/OffCycleTaxWithholdingModal.js +1 -1
  398. package/dist/components/Payroll/OffCycleTaxWithholdingModal/OffCycleTaxWithholdingModal.js.map +1 -1
  399. package/dist/components/Payroll/OffCycleTaxWithholdingTable/OffCycleTaxWithholdingTableTypes.d.ts +1 -1
  400. package/dist/components/Payroll/OffCycleTaxWithholdingTable/OffCycleTaxWithholdingTableTypes.js +1 -1
  401. package/dist/components/Payroll/OffCycleTaxWithholdingTable/OffCycleTaxWithholdingTableTypes.js.map +1 -1
  402. package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerList.js +4 -4
  403. package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerList.js.map +1 -1
  404. package/dist/components/Payroll/PayrollBlocker/payrollHelpers.js +2 -2
  405. package/dist/components/Payroll/PayrollBlocker/payrollHelpers.js.map +1 -1
  406. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js +7 -7
  407. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js.map +1 -1
  408. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.d.ts +5 -5
  409. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js.map +1 -1
  410. package/dist/components/Payroll/PayrollConfiguration/usePayrollConfigurationData.d.ts +4 -4
  411. package/dist/components/Payroll/PayrollConfiguration/usePayrollConfigurationData.js +5 -5
  412. package/dist/components/Payroll/PayrollConfiguration/usePayrollConfigurationData.js.map +1 -1
  413. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js +3 -3
  414. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js.map +1 -1
  415. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.d.ts +4 -4
  416. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js +1 -1
  417. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js.map +1 -1
  418. package/dist/components/Payroll/PayrollEditEmployee/TimeOffField.d.ts +2 -2
  419. package/dist/components/Payroll/PayrollEditEmployee/TimeOffField.js.map +1 -1
  420. package/dist/components/Payroll/PayrollExecutionFlow/PayrollExecutionFlow.d.ts +1 -1
  421. package/dist/components/Payroll/PayrollExecutionFlow/PayrollExecutionFlow.js.map +1 -1
  422. package/dist/components/Payroll/PayrollExecutionFlow/payrollExecutionMachine.js.map +1 -1
  423. package/dist/components/Payroll/PayrollFlow/PayrollExecutionFlowContextual.js +1 -1
  424. package/dist/components/Payroll/PayrollFlow/PayrollExecutionFlowContextual.js.map +1 -1
  425. package/dist/components/Payroll/PayrollFlow/PayrollFlowComponents.d.ts +1 -1
  426. package/dist/components/Payroll/PayrollFlow/PayrollFlowComponents.js.map +1 -1
  427. package/dist/components/Payroll/PayrollFlow/TransitionFlowContextual.js +2 -2
  428. package/dist/components/Payroll/PayrollFlow/TransitionFlowContextual.js.map +1 -1
  429. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js.map +1 -1
  430. package/dist/components/Payroll/PayrollHistory/PayrollHistory.js +4 -4
  431. package/dist/components/Payroll/PayrollHistory/PayrollHistory.js.map +1 -1
  432. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.d.ts +2 -2
  433. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js.map +1 -1
  434. package/dist/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.js +2 -2
  435. package/dist/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.js.map +1 -1
  436. package/dist/components/Payroll/PayrollList/PayrollList.js +8 -8
  437. package/dist/components/Payroll/PayrollList/PayrollList.js.map +1 -1
  438. package/dist/components/Payroll/PayrollList/PayrollListPresentation.d.ts +3 -3
  439. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js +1 -1
  440. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js.map +1 -1
  441. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js +7 -7
  442. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js.map +1 -1
  443. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.d.ts +4 -4
  444. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js.map +1 -1
  445. package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchSubmissionBlockerBanner.d.ts +2 -2
  446. package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchSubmissionBlockerBanner.js.map +1 -1
  447. package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/GenericBlocker.d.ts +1 -1
  448. package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/GenericBlocker.js.map +1 -1
  449. package/dist/components/Payroll/PayrollReceipts/PayrollReceipts.js +1 -1
  450. package/dist/components/Payroll/PayrollReceipts/PayrollReceipts.js.map +1 -1
  451. package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.d.ts +1 -1
  452. package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.js.map +1 -1
  453. package/dist/components/Payroll/PayrollStatusBadges/payrollStatusConfig.d.ts +1 -1
  454. package/dist/components/Payroll/PayrollStatusBadges/payrollStatusConfig.js +2 -2
  455. package/dist/components/Payroll/PayrollStatusBadges/payrollStatusConfig.js.map +1 -1
  456. package/dist/components/Payroll/RecoveryCases/RecoveryCasesList/RecoveryCasesList.js +1 -1
  457. package/dist/components/Payroll/RecoveryCases/RecoveryCasesList/RecoveryCasesList.js.map +1 -1
  458. package/dist/components/Payroll/RecoveryCases/RecoveryCasesResubmit/RecoveryCasesResubmit.js +2 -2
  459. package/dist/components/Payroll/RecoveryCases/RecoveryCasesResubmit/RecoveryCasesResubmit.js.map +1 -1
  460. package/dist/components/Payroll/Transition/TransitionFlowComponents.js +1 -1
  461. package/dist/components/Payroll/Transition/TransitionFlowComponents.js.map +1 -1
  462. package/dist/components/Payroll/TransitionCreation/TransitionCreation.js +4 -4
  463. package/dist/components/Payroll/TransitionCreation/TransitionCreation.js.map +1 -1
  464. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlert.js +3 -3
  465. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlert.js.map +1 -1
  466. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlertPresentation.d.ts +1 -1
  467. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlertPresentation.js.map +1 -1
  468. package/dist/components/Payroll/helpers.d.ts +6 -6
  469. package/dist/components/Payroll/helpers.js +1 -1
  470. package/dist/components/Payroll/helpers.js.map +1 -1
  471. package/dist/components/Payroll/payrollTypes.js +1 -1
  472. package/dist/components/Payroll/payrollTypes.js.map +1 -1
  473. package/dist/components/Payroll/usePreparedPayrollData.d.ts +2 -2
  474. package/dist/components/Payroll/usePreparedPayrollData.js +16 -15
  475. package/dist/components/Payroll/usePreparedPayrollData.js.map +1 -1
  476. package/dist/components/Payroll/useUnprocessedTransitionPayPeriods.d.ts +1 -1
  477. package/dist/components/Payroll/useUnprocessedTransitionPayPeriods.js +3 -3
  478. package/dist/components/Payroll/useUnprocessedTransitionPayPeriods.js.map +1 -1
  479. package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetail.js +3 -3
  480. package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetail.js.map +1 -1
  481. package/dist/components/TimeOff/HolidaySelectionForm/HolidaySelectionForm.js +3 -3
  482. package/dist/components/TimeOff/HolidaySelectionForm/HolidaySelectionForm.js.map +1 -1
  483. package/dist/components/TimeOff/PolicyList/PolicyList.js +6 -6
  484. package/dist/components/TimeOff/PolicyList/PolicyList.js.map +1 -1
  485. package/dist/components/TimeOff/PolicySettings/PolicySettings.js +30 -29
  486. package/dist/components/TimeOff/PolicySettings/PolicySettings.js.map +1 -1
  487. package/dist/components/TimeOff/PolicyTypeSelector/PolicyTypeSelector.js +1 -1
  488. package/dist/components/TimeOff/PolicyTypeSelector/PolicyTypeSelector.js.map +1 -1
  489. package/dist/components/TimeOff/TimeOffFlow/timeOffPolicyTypes.d.ts +1 -1
  490. package/dist/components/TimeOff/TimeOffFlow/timeOffPolicyTypes.js.map +1 -1
  491. package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationForm.js +27 -26
  492. package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationForm.js.map +1 -1
  493. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesHoliday.js +2 -2
  494. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesHoliday.js.map +1 -1
  495. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentationTypes.d.ts +1 -1
  496. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesTimeOff.js +69 -68
  497. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesTimeOff.js.map +1 -1
  498. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/useSelectEmployeesData.js +3 -3
  499. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/useSelectEmployeesData.js.map +1 -1
  500. package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetail.js +67 -66
  501. package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetail.js.map +1 -1
  502. package/dist/contexts/ApiProvider/ApiProvider.js +3 -3
  503. package/dist/contexts/ApiProvider/ApiProvider.js.map +1 -1
  504. package/dist/contexts/ApiProvider/apiVersion.d.ts +23 -0
  505. package/dist/contexts/ApiProvider/apiVersion.js +6 -0
  506. package/dist/contexts/ApiProvider/apiVersion.js.map +1 -0
  507. package/dist/contexts/ApiProvider/apiVersionHook.js +3 -2
  508. package/dist/contexts/ApiProvider/apiVersionHook.js.map +1 -1
  509. package/dist/contexts/ApiProvider/createSdkQueryClient.d.ts +1 -1
  510. package/dist/contexts/ApiProvider/createSdkQueryClient.js +7 -6
  511. package/dist/contexts/ApiProvider/createSdkQueryClient.js.map +1 -1
  512. package/dist/helpers/apiErrorToList.d.ts +1 -1
  513. package/dist/helpers/apiErrorToList.js.map +1 -1
  514. package/dist/helpers/formattedStrings.d.ts +2 -2
  515. package/dist/helpers/formattedStrings.js.map +1 -1
  516. package/dist/hooks/useCompanyPaymentSpeed.d.ts +1 -1
  517. package/dist/hooks/useCompanyPaymentSpeed.js +1 -1
  518. package/dist/hooks/useCompanyPaymentSpeed.js.map +1 -1
  519. package/dist/i18n/en/Contractor.DocumentsList.json.js +20 -16
  520. package/dist/i18n/en/Contractor.DocumentsList.json.js.map +1 -1
  521. package/dist/i18n/types.d.ts +4 -0
  522. package/dist/models/external.d.ts +204 -204
  523. package/dist/shared/constants.d.ts +1 -1
  524. package/dist/shared/constants.js +2 -2
  525. package/dist/shared/constants.js.map +1 -1
  526. package/dist/types/hooks.d.ts +1 -1
  527. package/dist/types/sdkError.js +3 -3
  528. package/dist/types/sdkError.js.map +1 -1
  529. package/docs/guides/endpoint-inventory.json +1201 -297
  530. package/package.json +7 -7
@@ -1,30 +1,31 @@
1
1
  import { jsx as l, jsxs as X, Fragment as z } from "react/jsx-runtime";
2
- import { useState as y, useMemo as v, useCallback as _ } from "react";
2
+ import { useState as y, useMemo as _, useCallback as P } from "react";
3
3
  import { useTranslation as Z } from "react-i18next";
4
- import { useTimeOffPoliciesGetSuspense as ee } from "@gusto/embedded-api-v-2026-02-01/react-query/timeOffPoliciesGet";
5
- import { useTimeOffPoliciesRemoveEmployeesMutation as re } from "@gusto/embedded-api-v-2026-02-01/react-query/timeOffPoliciesRemoveEmployees";
6
- import { useTimeOffPoliciesUpdateBalanceMutation as te } from "@gusto/embedded-api-v-2026-02-01/react-query/timeOffPoliciesUpdateBalance";
7
- import { useEmployeesListSuspense as ae } from "@gusto/embedded-api-v-2026-02-01/react-query/employeesList";
8
- import { UnprocessableEntityError as oe } from "@gusto/embedded-api-v-2026-02-01/models/errors/unprocessableentityerror";
4
+ import { useTimeOffPoliciesGetSuspense as ee } from "@gusto/embedded-api/react-query/timeOffPoliciesGet";
5
+ import { useTimeOffPoliciesRemoveEmployeesMutation as re } from "@gusto/embedded-api/react-query/timeOffPoliciesRemoveEmployees";
6
+ import { useTimeOffPoliciesUpdateBalanceMutation as te } from "@gusto/embedded-api/react-query/timeOffPoliciesUpdateBalance";
7
+ import { useEmployeesListSuspense as ae } from "@gusto/embedded-api/react-query/employeesList";
8
+ import { UnprocessableEntityError as oe } from "@gusto/embedded-api/models/errors/unprocessableentityerror";
9
9
  import { useQueryClient as ne } from "@tanstack/react-query";
10
10
  import { TimeOffPolicyDetailPresentation as ie } from "./TimeOffPolicyDetailPresentation.js";
11
11
  import { EditEmployeeBalanceModal as le } from "./EditEmployeeBalanceModal.js";
12
- import { HamburgerMenu as se } from "../../Common/HamburgerMenu/HamburgerMenu.js";
13
- import { BaseComponent as me } from "../../Base/Base.js";
14
- import { useBase as ue } from "../../Base/useBase.js";
12
+ import { API_QUERY_NAMESPACE as se } from "../../../contexts/ApiProvider/apiVersion.js";
13
+ import { HamburgerMenu as me } from "../../Common/HamburgerMenu/HamburgerMenu.js";
14
+ import { BaseComponent as ue } from "../../Base/Base.js";
15
+ import { useBase as ce } from "../../Base/useBase.js";
15
16
  import { SDKInternalError as x } from "../../../types/sdkError.js";
16
- import { componentEvents as O } from "../../../shared/constants.js";
17
- import { useComponentContext as ce } from "../../../contexts/ComponentAdapter/useComponentContext.js";
18
- import { useI18n as de } from "../../../i18n/I18n.js";
19
- import { useLocale as fe } from "../../../contexts/LocaleProvider/useLocale.js";
20
- import { isEditableTimeOffPolicyType as pe } from "../TimeOffFlow/timeOffPolicyTypes.js";
17
+ import { componentEvents as E } from "../../../shared/constants.js";
18
+ import { useComponentContext as de } from "../../../contexts/ComponentAdapter/useComponentContext.js";
19
+ import { useI18n as fe } from "../../../i18n/I18n.js";
20
+ import { useLocale as pe } from "../../../contexts/LocaleProvider/useLocale.js";
21
+ import { isEditableTimeOffPolicyType as ye } from "../TimeOffFlow/timeOffPolicyTypes.js";
21
22
  import R from "../../../assets/icons/edit-02.svg.js";
22
- import ye from "../../../assets/icons/trashcan.svg.js";
23
- import ve from "../../../assets/icons/plus-circle.svg.js";
24
- function Qe(e) {
25
- return /* @__PURE__ */ l(me, { ...e, children: /* @__PURE__ */ l(Ee, { ...e }) });
23
+ import _e from "../../../assets/icons/trashcan.svg.js";
24
+ import Pe from "../../../assets/icons/plus-circle.svg.js";
25
+ function Xe(e) {
26
+ return /* @__PURE__ */ l(ue, { ...e, children: /* @__PURE__ */ l(Ce, { ...e }) });
26
27
  }
27
- const _e = {
28
+ const he = {
28
29
  unlimited: "unlimited",
29
30
  per_pay_period: "perPayPeriod",
30
31
  per_calendar_year: "perCalendarYear",
@@ -34,25 +35,25 @@ const _e = {
34
35
  per_hour_paid: "perHourPaid",
35
36
  per_hour_paid_no_overtime: "perHourPaidNoOvertime"
36
37
  };
37
- function be(e) {
38
- return _e[e] ?? "unlimited";
38
+ function ve(e) {
39
+ return he[e] ?? "unlimited";
39
40
  }
40
- function he(e) {
41
+ function Te(e) {
41
42
  return e === "sick" ? "sick" : "vacation";
42
43
  }
43
- function Pe(e, r) {
44
+ function be(e, r) {
44
45
  if (!e) return;
45
46
  const [a, t] = e.split("-");
46
47
  return !a || !t ? e : new Date(2e3, parseInt(a, 10) - 1, parseInt(t, 10)).toLocaleDateString(r, { month: "long", day: "numeric" });
47
48
  }
48
- function Te(e, r) {
49
- const a = he(e.policyType), t = be(e.accrualMethod);
49
+ function Ee(e, r) {
50
+ const a = Te(e.policyType), t = ve(e.accrualMethod);
50
51
  return t === "unlimited" ? { policyType: a, accrualMethod: t } : {
51
52
  policyType: a,
52
53
  accrualMethod: t,
53
54
  accrualRate: e.accrualRate ? Number(e.accrualRate) : 0,
54
55
  accrualRateUnit: e.accrualRateUnit ? Number(e.accrualRateUnit) : void 0,
55
- resetDate: Pe(e.policyResetDate, r)
56
+ resetDate: be(e.policyResetDate, r)
56
57
  };
57
58
  }
58
59
  function Oe(e) {
@@ -78,39 +79,39 @@ function ge(e, r) {
78
79
  };
79
80
  });
80
81
  }
81
- function Ee({ policyId: e }) {
82
- de("Company.TimeOff.TimeOffPolicyDetails");
83
- const { t: r } = Z("Company.TimeOff.TimeOffPolicyDetails"), { onEvent: a, baseSubmitHandler: t, error: s, setError: u } = ue(), { Button: c } = ce(), { locale: S } = fe(), H = ne(), { data: U } = ee({
82
+ function Ce({ policyId: e }) {
83
+ fe("Company.TimeOff.TimeOffPolicyDetails");
84
+ const { t: r } = Z("Company.TimeOff.TimeOffPolicyDetails"), { onEvent: a, baseSubmitHandler: t, error: s, setError: u } = ce(), { Button: c } = de(), { locale: S } = pe(), A = ne(), { data: U } = ee({
84
85
  timeOffPolicyUuid: e
85
- }), { mutateAsync: A, isPending: k } = re(), { mutateAsync: B, isPending: I } = te(), o = U.timeOffPolicy;
86
+ }), { mutateAsync: H, isPending: k } = re(), { mutateAsync: B, isPending: I } = te(), o = U.timeOffPolicy;
86
87
  if (!o) throw new Error("Unexpected response: missing timeOffPolicy");
87
- const d = pe(o.policyType), { data: w } = ae({
88
+ const d = ye(o.policyType), { data: w } = ae({
88
89
  companyId: o.companyUuid,
89
90
  terminated: !1
90
- }), [F, Y] = y("details"), [b, D] = y(""), [q, g] = y(), [f, E] = y(null), [m, C] = y(null), h = v(() => Te(o, S), [o, S]), $ = v(() => Oe(o), [o]), N = v(
91
+ }), [F, Y] = y("details"), [h, D] = y(""), [q, O] = y(), [f, g] = y(null), [m, C] = y(null), v = _(() => Ee(o, S), [o, S]), $ = _(() => Oe(o), [o]), N = _(
91
92
  () => ge(o, w.showEmployees ?? []),
92
93
  [o, w.showEmployees]
93
- ), j = v(() => {
94
- if (!b.trim()) return N;
95
- const i = b.toLowerCase();
94
+ ), j = _(() => {
95
+ if (!h.trim()) return N;
96
+ const i = h.toLowerCase();
96
97
  return N.filter((n) => `${n.firstName ?? ""} ${n.lastName ?? ""}`.toLowerCase().includes(i));
97
- }, [N, b]), P = _(() => {
98
- H.invalidateQueries({
99
- queryKey: ["@gusto/embedded-api-v-2026-02-01", "timeOffPolicies", "get"]
98
+ }, [N, h]), T = P(() => {
99
+ A.invalidateQueries({
100
+ queryKey: [se, "timeOffPolicies", "get"]
100
101
  });
101
- }, [H]), V = _(
102
+ }, [A]), V = P(
102
103
  async (i, n) => {
103
- E(null), await t({}, async () => {
104
- await A({
104
+ g(null), await t({}, async () => {
105
+ await H({
105
106
  request: {
106
107
  timeOffPolicyUuid: e,
107
108
  requestBody: { employees: [{ uuid: i }] }
108
109
  }
109
- }), P(), g(r("flash.employeeRemoved", { name: n }));
110
+ }), T(), O(r("flash.employeeRemoved", { name: n }));
110
111
  });
111
112
  },
112
- [t, A, e, P, r]
113
- ), W = _(
113
+ [t, H, e, T, r]
114
+ ), W = P(
114
115
  async (i) => {
115
116
  m && await t({}, async () => {
116
117
  try {
@@ -126,13 +127,13 @@ function Ee({ policyId: e }) {
126
127
  if (n instanceof oe) {
127
128
  const p = o.maxHours != null ? Number(o.maxHours) : null;
128
129
  if (n.errors.some(
129
- (T) => T.message === "LIMIT_VIOLATION_MAX_HOURS" || T.category === "invalid_attribute_value"
130
+ (b) => b.message === "LIMIT_VIOLATION_MAX_HOURS" || b.category === "invalid_attribute_value"
130
131
  ) && p != null)
131
132
  throw new x(
132
133
  r("editBalanceModal.errors.balanceExceedsMax", { max: p }),
133
134
  "api_error"
134
135
  );
135
- const J = n.errors.map((T) => T.message).filter(Boolean);
136
+ const J = n.errors.map((b) => b.message).filter(Boolean);
136
137
  throw new x(
137
138
  J.join(". ") || r("editBalanceModal.errors.updateFailed"),
138
139
  "api_error"
@@ -140,7 +141,7 @@ function Ee({ policyId: e }) {
140
141
  }
141
142
  throw n;
142
143
  }
143
- P(), C(null), g(r("flash.balanceUpdated", { name: m.employeeName }));
144
+ T(), C(null), O(r("flash.balanceUpdated", { name: m.employeeName }));
144
145
  });
145
146
  },
146
147
  [
@@ -148,20 +149,20 @@ function Ee({ policyId: e }) {
148
149
  B,
149
150
  e,
150
151
  m,
151
- P,
152
+ T,
152
153
  r,
153
154
  o.maxHours
154
155
  ]
155
- ), M = _(() => {
156
- a(O.TIME_OFF_ADD_EMPLOYEES_TO_POLICY, { policyId: e });
157
- }, [a, e]), G = v(() => {
156
+ ), M = P(() => {
157
+ a(E.TIME_OFF_ADD_EMPLOYEES_TO_POLICY, { policyId: e });
158
+ }, [a, e]), G = _(() => {
158
159
  if (d)
159
160
  return [
160
161
  /* @__PURE__ */ l(
161
162
  c,
162
163
  {
163
164
  variant: "secondary",
164
- icon: /* @__PURE__ */ l(ve, { "aria-hidden": !0 }),
165
+ icon: /* @__PURE__ */ l(Pe, { "aria-hidden": !0 }),
165
166
  onClick: M,
166
167
  children: r("addEmployeeCta")
167
168
  },
@@ -173,14 +174,14 @@ function Ee({ policyId: e }) {
173
174
  variant: "secondary",
174
175
  icon: /* @__PURE__ */ l(R, { "aria-hidden": !0 }),
175
176
  onClick: () => {
176
- a(O.TIME_OFF_EDIT_POLICY, { policyId: e });
177
+ a(E.TIME_OFF_EDIT_POLICY, { policyId: e });
177
178
  },
178
179
  children: r("editPolicyCta")
179
180
  },
180
181
  "edit"
181
182
  )
182
183
  ];
183
- }, [c, a, e, r, d, M]), L = o.accrualMethod === "unlimited", K = _(
184
+ }, [c, a, e, r, d, M]), L = o.accrualMethod === "unlimited", K = P(
184
185
  (i) => {
185
186
  const n = `${i.firstName ?? ""} ${i.lastName ?? ""}`.trim(), p = [
186
187
  ...L ? [] : [
@@ -198,14 +199,14 @@ function Ee({ policyId: e }) {
198
199
  ],
199
200
  {
200
201
  label: r("employeeTable.removeEmployee"),
201
- icon: /* @__PURE__ */ l(ye, { "aria-hidden": !0 }),
202
+ icon: /* @__PURE__ */ l(_e, { "aria-hidden": !0 }),
202
203
  onClick: () => {
203
- E({ uuid: i.uuid, name: n });
204
+ g({ uuid: i.uuid, name: n });
204
205
  }
205
206
  }
206
207
  ];
207
208
  return /* @__PURE__ */ l(
208
- se,
209
+ me,
209
210
  {
210
211
  items: p,
211
212
  triggerLabel: `${r("employeeTable.actions")} ${n}`
@@ -213,11 +214,11 @@ function Ee({ policyId: e }) {
213
214
  );
214
215
  },
215
216
  [r, L, u]
216
- ), Q = h.accrualMethod === "unlimited" ? { policyDetails: h } : {
217
- policyDetails: h,
217
+ ), Q = v.accrualMethod === "unlimited" ? { policyDetails: v } : {
218
+ policyDetails: v,
218
219
  policySettings: $,
219
220
  onChangeSettings: d ? () => {
220
- a(O.TIME_OFF_CHANGE_SETTINGS, { policyId: e });
221
+ a(E.TIME_OFF_CHANGE_SETTINGS, { policyId: e });
221
222
  } : void 0
222
223
  };
223
224
  return /* @__PURE__ */ X(z, { children: [
@@ -226,9 +227,9 @@ function Ee({ policyId: e }) {
226
227
  {
227
228
  ...Q,
228
229
  title: o.name,
229
- subtitle: r(`subtitle.${h.policyType}`),
230
+ subtitle: r(`subtitle.${v.policyType}`),
230
231
  onBack: () => {
231
- a(O.TIME_OFF_BACK_TO_LIST);
232
+ a(E.TIME_OFF_BACK_TO_LIST);
232
233
  },
233
234
  backLabel: r("breadcrumb"),
234
235
  actions: G,
@@ -236,7 +237,7 @@ function Ee({ policyId: e }) {
236
237
  onTabChange: Y,
237
238
  employees: {
238
239
  data: j,
239
- searchValue: b,
240
+ searchValue: h,
240
241
  onSearchChange: D,
241
242
  onSearchClear: () => {
242
243
  D("");
@@ -251,13 +252,13 @@ function Ee({ policyId: e }) {
251
252
  f && V(f.uuid, f.name);
252
253
  },
253
254
  onClose: () => {
254
- E(null);
255
+ g(null);
255
256
  },
256
257
  isPending: k
257
258
  },
258
259
  successAlert: q,
259
260
  onDismissAlert: () => {
260
- g(void 0);
261
+ O(void 0);
261
262
  }
262
263
  }
263
264
  ),
@@ -278,6 +279,6 @@ function Ee({ policyId: e }) {
278
279
  ] });
279
280
  }
280
281
  export {
281
- Qe as TimeOffPolicyDetail
282
+ Xe as TimeOffPolicyDetail
282
283
  };
283
284
  //# sourceMappingURL=TimeOffPolicyDetail.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TimeOffPolicyDetail.js","sources":["../../../../src/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetail.tsx"],"sourcesContent":["import { useCallback, useMemo, useState } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport { useTimeOffPoliciesGetSuspense } from '@gusto/embedded-api-v-2026-02-01/react-query/timeOffPoliciesGet'\nimport { useTimeOffPoliciesRemoveEmployeesMutation } from '@gusto/embedded-api-v-2026-02-01/react-query/timeOffPoliciesRemoveEmployees'\nimport { useTimeOffPoliciesUpdateBalanceMutation } from '@gusto/embedded-api-v-2026-02-01/react-query/timeOffPoliciesUpdateBalance'\nimport { useEmployeesListSuspense } from '@gusto/embedded-api-v-2026-02-01/react-query/employeesList'\nimport type { TimeOffPolicy } from '@gusto/embedded-api-v-2026-02-01/models/components/timeoffpolicy'\nimport { UnprocessableEntityError } from '@gusto/embedded-api-v-2026-02-01/models/errors/unprocessableentityerror'\nimport { useQueryClient } from '@tanstack/react-query'\nimport { TimeOffPolicyDetailPresentation } from './TimeOffPolicyDetailPresentation'\nimport { EditEmployeeBalanceModal } from './EditEmployeeBalanceModal'\nimport type {\n TimeOffPolicyDetailEmployee,\n AccrualMethodKey,\n PolicyDetails,\n PolicySettingsDisplay,\n PolicyTypeKey,\n} from './TimeOffPolicyDetailTypes'\nimport { HamburgerMenu } from '@/components/Common/HamburgerMenu'\nimport { BaseComponent, type BaseComponentInterface } from '@/components/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { SDKInternalError } from '@/types/sdkError'\nimport { componentEvents } from '@/shared/constants'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useI18n } from '@/i18n'\nimport { useLocale } from '@/contexts/LocaleProvider/useLocale'\nimport { isEditableTimeOffPolicyType } from '@/components/TimeOff/TimeOffFlow/timeOffPolicyTypes'\nimport EditIcon from '@/assets/icons/edit-02.svg?react'\nimport TrashCanSvg from '@/assets/icons/trashcan.svg?react'\nimport PlusCircleIcon from '@/assets/icons/plus-circle.svg?react'\n\n/**\n * Props for {@link TimeOffPolicyDetail}.\n *\n * @public\n */\nexport interface TimeOffPolicyDetailProps extends BaseComponentInterface<'Company.TimeOff.TimeOffPolicyDetails'> {\n /** UUID of the time-off policy to display. */\n policyId: string\n}\n\n/**\n * Detail view for a sick or vacation time-off policy.\n *\n * @remarks\n * Loads the policy and its enrolled employees, then renders the tabbed detail view with\n * actions for editing the policy, adding or removing employees, and adjusting individual\n * balances. Editable actions are only shown for sick and vacation policies.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `timeOff/addEmployeesToPolicy` | The add-employees action was clicked. | `{ policyId: string }` |\n * | `timeOff/backToList` | The back navigation was clicked. | — |\n * | `timeOff/changeSettings` | The change-settings action was clicked. | `{ policyId: string }` |\n * | `timeOff/editPolicy` | The edit-policy action was clicked. | `{ policyId: string }` |\n *\n * @param props - The policy id and standard base component props (`onEvent`, `dictionary`, etc.).\n * @returns The rendered detail view.\n * @public\n */\nexport function TimeOffPolicyDetail(props: TimeOffPolicyDetailProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props} />\n </BaseComponent>\n )\n}\n\nconst API_ACCRUAL_METHOD_MAP: Record<string, AccrualMethodKey> = {\n unlimited: 'unlimited',\n per_pay_period: 'perPayPeriod',\n per_calendar_year: 'perCalendarYear',\n per_anniversary_year: 'perAnniversaryYear',\n per_hour_worked: 'perHourWorked',\n per_hour_worked_no_overtime: 'perHourWorkedNoOvertime',\n per_hour_paid: 'perHourPaid',\n per_hour_paid_no_overtime: 'perHourPaidNoOvertime',\n}\n\nfunction mapAccrualMethod(apiMethod: string): AccrualMethodKey {\n return API_ACCRUAL_METHOD_MAP[apiMethod] ?? 'unlimited'\n}\n\nfunction mapPolicyType(apiType: string): PolicyTypeKey {\n if (apiType === 'sick') return 'sick'\n return 'vacation'\n}\n\nfunction formatResetDate(\n resetDate: string | null | undefined,\n locale?: string,\n): string | undefined {\n if (!resetDate) return undefined\n const [month, day] = resetDate.split('-')\n if (!month || !day) return resetDate\n const date = new Date(2000, parseInt(month, 10) - 1, parseInt(day, 10))\n return date.toLocaleDateString(locale, { month: 'long', day: 'numeric' })\n}\n\nfunction derivePolicyDetails(policy: TimeOffPolicy, locale?: string): PolicyDetails {\n const policyType = mapPolicyType(policy.policyType)\n const accrualMethod = mapAccrualMethod(policy.accrualMethod)\n\n if (accrualMethod === 'unlimited') {\n return { policyType, accrualMethod }\n }\n\n return {\n policyType,\n accrualMethod,\n accrualRate: policy.accrualRate ? Number(policy.accrualRate) : 0,\n accrualRateUnit: policy.accrualRateUnit ? Number(policy.accrualRateUnit) : undefined,\n resetDate: formatResetDate(policy.policyResetDate, locale),\n }\n}\n\nfunction derivePolicySettings(policy: TimeOffPolicy): PolicySettingsDisplay | undefined {\n if (policy.accrualMethod === 'unlimited') return undefined\n\n return {\n maxAccrualHoursPerYear:\n policy.maxAccrualHoursPerYear != null ? Number(policy.maxAccrualHoursPerYear) : null,\n maxHours: policy.maxHours != null ? Number(policy.maxHours) : null,\n carryoverLimitHours:\n policy.carryoverLimitHours != null ? Number(policy.carryoverLimitHours) : null,\n accrualWaitingPeriodDays: policy.accrualWaitingPeriodDays ?? null,\n paidOutOnTermination: policy.paidOutOnTermination ?? false,\n }\n}\n\nfunction deriveEmployees(\n policy: TimeOffPolicy,\n allEmployees: Array<{\n uuid: string\n firstName?: string | null\n lastName?: string | null\n jobs?: Array<{ primary?: boolean; title?: string | null }> | null\n }>,\n): TimeOffPolicyDetailEmployee[] {\n const employeeMap = new Map(allEmployees.map(e => [e.uuid, e]))\n return policy.employees.map(policyEmp => {\n const emp = employeeMap.get(policyEmp.uuid ?? '')\n const primaryJob = emp?.jobs?.find(job => job.primary)\n return {\n uuid: policyEmp.uuid ?? '',\n firstName: emp?.firstName ?? null,\n lastName: emp?.lastName ?? null,\n jobTitle: primaryJob?.title ?? emp?.jobs?.[0]?.title ?? null,\n balance: policyEmp.balance != null ? Number(policyEmp.balance) : null,\n }\n })\n}\n\ninterface EditBalanceState {\n employeeUuid: string\n employeeName: string\n currentBalance: number\n}\n\nfunction Root({ policyId }: TimeOffPolicyDetailProps) {\n useI18n('Company.TimeOff.TimeOffPolicyDetails')\n const { t } = useTranslation('Company.TimeOff.TimeOffPolicyDetails')\n const { onEvent, baseSubmitHandler, error, setError } = useBase()\n const { Button } = useComponentContext()\n const { locale } = useLocale()\n const queryClient = useQueryClient()\n\n const { data: policyResponse } = useTimeOffPoliciesGetSuspense({\n timeOffPolicyUuid: policyId,\n })\n\n const { mutateAsync: removeEmployees, isPending: isRemovePending } =\n useTimeOffPoliciesRemoveEmployeesMutation()\n const { mutateAsync: updateBalance, isPending: isBalancePending } =\n useTimeOffPoliciesUpdateBalanceMutation()\n\n const policy = policyResponse.timeOffPolicy\n if (!policy) throw new Error('Unexpected response: missing timeOffPolicy')\n\n const isEditable = isEditableTimeOffPolicyType(policy.policyType)\n\n const { data: employeesData } = useEmployeesListSuspense({\n companyId: policy.companyUuid,\n terminated: false,\n })\n\n const [selectedTabId, setSelectedTabId] = useState('details')\n const [searchValue, setSearchValue] = useState('')\n const [successAlert, setSuccessAlert] = useState<string | undefined>()\n const [removeTarget, setRemoveTarget] = useState<{\n uuid: string\n name: string\n } | null>(null)\n const [editBalanceState, setEditBalanceState] = useState<EditBalanceState | null>(null)\n\n const policyDetails = useMemo(() => derivePolicyDetails(policy, locale), [policy, locale])\n const policySettings = useMemo(() => derivePolicySettings(policy), [policy])\n const employees = useMemo(\n () => deriveEmployees(policy, employeesData.showEmployees ?? []),\n [policy, employeesData.showEmployees],\n )\n\n const filteredEmployees = useMemo(() => {\n if (!searchValue.trim()) return employees\n const query = searchValue.toLowerCase()\n return employees.filter(emp => {\n const fullName = `${emp.firstName ?? ''} ${emp.lastName ?? ''}`.toLowerCase()\n return fullName.includes(query)\n })\n }, [employees, searchValue])\n\n const invalidatePolicy = useCallback(() => {\n void queryClient.invalidateQueries({\n queryKey: ['@gusto/embedded-api-v-2026-02-01', 'timeOffPolicies', 'get'],\n })\n }, [queryClient])\n\n const handleRemoveEmployee = useCallback(\n async (employeeUuid: string, employeeName: string) => {\n setRemoveTarget(null)\n await baseSubmitHandler({}, async () => {\n await removeEmployees({\n request: {\n timeOffPolicyUuid: policyId,\n requestBody: { employees: [{ uuid: employeeUuid }] },\n },\n })\n invalidatePolicy()\n setSuccessAlert(t('flash.employeeRemoved', { name: employeeName }))\n })\n },\n [baseSubmitHandler, removeEmployees, policyId, invalidatePolicy, t],\n )\n\n const handleUpdateBalance = useCallback(\n async (newBalance: number) => {\n if (!editBalanceState) return\n await baseSubmitHandler({}, async () => {\n try {\n await updateBalance({\n request: {\n timeOffPolicyUuid: policyId,\n requestBody: {\n employees: [{ uuid: editBalanceState.employeeUuid, balance: String(newBalance) }],\n },\n },\n })\n } catch (err) {\n if (err instanceof UnprocessableEntityError) {\n const maxHours = policy.maxHours != null ? Number(policy.maxHours) : null\n const hasLimitViolation = err.errors.some(\n e =>\n e.message === 'LIMIT_VIOLATION_MAX_HOURS' ||\n e.category === 'invalid_attribute_value',\n )\n if (hasLimitViolation && maxHours != null) {\n throw new SDKInternalError(\n t('editBalanceModal.errors.balanceExceedsMax', { max: maxHours }),\n 'api_error',\n )\n }\n const messages = err.errors.map(e => e.message).filter(Boolean)\n throw new SDKInternalError(\n messages.join('. ') || t('editBalanceModal.errors.updateFailed'),\n 'api_error',\n )\n }\n throw err\n }\n invalidatePolicy()\n setEditBalanceState(null)\n setSuccessAlert(t('flash.balanceUpdated', { name: editBalanceState.employeeName }))\n })\n },\n [\n baseSubmitHandler,\n updateBalance,\n policyId,\n editBalanceState,\n invalidatePolicy,\n t,\n policy.maxHours,\n ],\n )\n\n const handleAddEmployees = useCallback(() => {\n onEvent(componentEvents.TIME_OFF_ADD_EMPLOYEES_TO_POLICY, { policyId })\n }, [onEvent, policyId])\n\n const actions = useMemo(() => {\n if (!isEditable) return undefined\n return [\n <Button\n key=\"add\"\n variant=\"secondary\"\n icon={<PlusCircleIcon aria-hidden />}\n onClick={handleAddEmployees}\n >\n {t('addEmployeeCta')}\n </Button>,\n <Button\n key=\"edit\"\n variant=\"secondary\"\n icon={<EditIcon aria-hidden />}\n onClick={() => {\n onEvent(componentEvents.TIME_OFF_EDIT_POLICY, { policyId })\n }}\n >\n {t('editPolicyCta')}\n </Button>,\n ]\n }, [Button, onEvent, policyId, t, isEditable, handleAddEmployees])\n\n const isUnlimited = policy.accrualMethod === 'unlimited'\n\n const itemMenu = useCallback(\n (employee: TimeOffPolicyDetailEmployee) => {\n const employeeName = `${employee.firstName ?? ''} ${employee.lastName ?? ''}`.trim()\n const items = [\n ...(!isUnlimited\n ? [\n {\n label: t('employeeTable.editBalance'),\n icon: <EditIcon aria-hidden />,\n onClick: () => {\n setError(null)\n setEditBalanceState({\n employeeUuid: employee.uuid,\n employeeName,\n currentBalance: employee.balance ?? 0,\n })\n },\n },\n ]\n : []),\n {\n label: t('employeeTable.removeEmployee'),\n icon: <TrashCanSvg aria-hidden />,\n onClick: () => {\n setRemoveTarget({ uuid: employee.uuid, name: employeeName })\n },\n },\n ]\n return (\n <HamburgerMenu\n items={items}\n triggerLabel={`${t('employeeTable.actions')} ${employeeName}`}\n />\n )\n },\n [t, isUnlimited, setError],\n )\n\n const discriminatedProps =\n policyDetails.accrualMethod === 'unlimited'\n ? { policyDetails }\n : {\n policyDetails,\n policySettings: policySettings!,\n onChangeSettings: isEditable\n ? () => {\n onEvent(componentEvents.TIME_OFF_CHANGE_SETTINGS, { policyId })\n }\n : undefined,\n }\n\n return (\n <>\n <TimeOffPolicyDetailPresentation\n {...discriminatedProps}\n title={policy.name}\n subtitle={t(`subtitle.${policyDetails.policyType}`)}\n onBack={() => {\n onEvent(componentEvents.TIME_OFF_BACK_TO_LIST)\n }}\n backLabel={t('breadcrumb')}\n actions={actions}\n selectedTabId={selectedTabId}\n onTabChange={setSelectedTabId}\n employees={{\n data: filteredEmployees,\n searchValue,\n onSearchChange: setSearchValue,\n onSearchClear: () => {\n setSearchValue('')\n },\n ...(isEditable ? { itemMenu } : {}),\n }}\n onAddEmployee={isEditable ? handleAddEmployees : undefined}\n removeDialog={{\n isOpen: removeTarget !== null,\n employeeName: removeTarget?.name ?? '',\n onConfirm: () => {\n if (removeTarget) {\n void handleRemoveEmployee(removeTarget.uuid, removeTarget.name)\n }\n },\n onClose: () => {\n setRemoveTarget(null)\n },\n isPending: isRemovePending,\n }}\n successAlert={successAlert}\n onDismissAlert={() => {\n setSuccessAlert(undefined)\n }}\n />\n\n <EditEmployeeBalanceModal\n isOpen={editBalanceState !== null}\n onClose={() => {\n setEditBalanceState(null)\n setError(null)\n }}\n employeeName={editBalanceState?.employeeName ?? ''}\n currentBalance={editBalanceState?.currentBalance ?? 0}\n onConfirm={handleUpdateBalance}\n isPending={isBalancePending}\n error={error}\n />\n </>\n )\n}\n"],"names":["TimeOffPolicyDetail","props","jsx","BaseComponent","Root","API_ACCRUAL_METHOD_MAP","mapAccrualMethod","apiMethod","mapPolicyType","apiType","formatResetDate","resetDate","locale","month","day","derivePolicyDetails","policy","policyType","accrualMethod","derivePolicySettings","deriveEmployees","allEmployees","employeeMap","e","policyEmp","emp","primaryJob","job","policyId","useI18n","t","useTranslation","onEvent","baseSubmitHandler","error","setError","useBase","Button","useComponentContext","useLocale","queryClient","useQueryClient","policyResponse","useTimeOffPoliciesGetSuspense","removeEmployees","isRemovePending","useTimeOffPoliciesRemoveEmployeesMutation","updateBalance","isBalancePending","useTimeOffPoliciesUpdateBalanceMutation","isEditable","isEditableTimeOffPolicyType","employeesData","useEmployeesListSuspense","selectedTabId","setSelectedTabId","useState","searchValue","setSearchValue","successAlert","setSuccessAlert","removeTarget","setRemoveTarget","editBalanceState","setEditBalanceState","policyDetails","useMemo","policySettings","employees","filteredEmployees","query","invalidatePolicy","useCallback","handleRemoveEmployee","employeeUuid","employeeName","handleUpdateBalance","newBalance","err","UnprocessableEntityError","maxHours","SDKInternalError","messages","handleAddEmployees","componentEvents","actions","PlusCircleIcon","EditIcon","isUnlimited","itemMenu","employee","items","TrashCanSvg","HamburgerMenu","discriminatedProps","jsxs","Fragment","TimeOffPolicyDetailPresentation","EditEmployeeBalanceModal"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AA6DO,SAASA,GAAoBC,GAAiC;AACnE,SACE,gBAAAC,EAACC,MAAe,GAAGF,GACjB,4BAACG,IAAA,EAAM,GAAGH,GAAO,EAAA,CACnB;AAEJ;AAEA,MAAMI,KAA2D;AAAA,EAC/D,WAAW;AAAA,EACX,gBAAgB;AAAA,EAChB,mBAAmB;AAAA,EACnB,sBAAsB;AAAA,EACtB,iBAAiB;AAAA,EACjB,6BAA6B;AAAA,EAC7B,eAAe;AAAA,EACf,2BAA2B;AAC7B;AAEA,SAASC,GAAiBC,GAAqC;AAC7D,SAAOF,GAAuBE,CAAS,KAAK;AAC9C;AAEA,SAASC,GAAcC,GAAgC;AACrD,SAAIA,MAAY,SAAe,SACxB;AACT;AAEA,SAASC,GACPC,GACAC,GACoB;AACpB,MAAI,CAACD,EAAW;AAChB,QAAM,CAACE,GAAOC,CAAG,IAAIH,EAAU,MAAM,GAAG;AACxC,SAAI,CAACE,KAAS,CAACC,IAAYH,IACd,IAAI,KAAK,KAAM,SAASE,GAAO,EAAE,IAAI,GAAG,SAASC,GAAK,EAAE,CAAC,EAC1D,mBAAmBF,GAAQ,EAAE,OAAO,QAAQ,KAAK,WAAW;AAC1E;AAEA,SAASG,GAAoBC,GAAuBJ,GAAgC;AAClF,QAAMK,IAAaT,GAAcQ,EAAO,UAAU,GAC5CE,IAAgBZ,GAAiBU,EAAO,aAAa;AAE3D,SAAIE,MAAkB,cACb,EAAE,YAAAD,GAAY,eAAAC,EAAA,IAGhB;AAAA,IACL,YAAAD;AAAA,IACA,eAAAC;AAAA,IACA,aAAaF,EAAO,cAAc,OAAOA,EAAO,WAAW,IAAI;AAAA,IAC/D,iBAAiBA,EAAO,kBAAkB,OAAOA,EAAO,eAAe,IAAI;AAAA,IAC3E,WAAWN,GAAgBM,EAAO,iBAAiBJ,CAAM;AAAA,EAAA;AAE7D;AAEA,SAASO,GAAqBH,GAA0D;AACtF,MAAIA,EAAO,kBAAkB;AAE7B,WAAO;AAAA,MACL,wBACEA,EAAO,0BAA0B,OAAO,OAAOA,EAAO,sBAAsB,IAAI;AAAA,MAClF,UAAUA,EAAO,YAAY,OAAO,OAAOA,EAAO,QAAQ,IAAI;AAAA,MAC9D,qBACEA,EAAO,uBAAuB,OAAO,OAAOA,EAAO,mBAAmB,IAAI;AAAA,MAC5E,0BAA0BA,EAAO,4BAA4B;AAAA,MAC7D,sBAAsBA,EAAO,wBAAwB;AAAA,IAAA;AAEzD;AAEA,SAASI,GACPJ,GACAK,GAM+B;AAC/B,QAAMC,IAAc,IAAI,IAAID,EAAa,IAAI,CAAAE,MAAK,CAACA,EAAE,MAAMA,CAAC,CAAC,CAAC;AAC9D,SAAOP,EAAO,UAAU,IAAI,CAAAQ,MAAa;AACvC,UAAMC,IAAMH,EAAY,IAAIE,EAAU,QAAQ,EAAE,GAC1CE,IAAaD,GAAK,MAAM,KAAK,CAAAE,MAAOA,EAAI,OAAO;AACrD,WAAO;AAAA,MACL,MAAMH,EAAU,QAAQ;AAAA,MACxB,WAAWC,GAAK,aAAa;AAAA,MAC7B,UAAUA,GAAK,YAAY;AAAA,MAC3B,UAAUC,GAAY,SAASD,GAAK,OAAO,CAAC,GAAG,SAAS;AAAA,MACxD,SAASD,EAAU,WAAW,OAAO,OAAOA,EAAU,OAAO,IAAI;AAAA,IAAA;AAAA,EAErE,CAAC;AACH;AAQA,SAASpB,GAAK,EAAE,UAAAwB,KAAsC;AACpD,EAAAC,GAAQ,sCAAsC;AAC9C,QAAM,EAAE,GAAAC,EAAA,IAAMC,EAAe,sCAAsC,GAC7D,EAAE,SAAAC,GAAS,mBAAAC,GAAmB,OAAAC,GAAO,UAAAC,EAAA,IAAaC,GAAA,GAClD,EAAE,QAAAC,EAAA,IAAWC,GAAA,GACb,EAAE,QAAA1B,EAAA,IAAW2B,GAAA,GACbC,IAAcC,GAAA,GAEd,EAAE,MAAMC,EAAA,IAAmBC,GAA8B;AAAA,IAC7D,mBAAmBf;AAAA,EAAA,CACpB,GAEK,EAAE,aAAagB,GAAiB,WAAWC,EAAA,IAC/CC,GAAA,GACI,EAAE,aAAaC,GAAe,WAAWC,EAAA,IAC7CC,GAAA,GAEIjC,IAAS0B,EAAe;AAC9B,MAAI,CAAC1B,EAAQ,OAAM,IAAI,MAAM,4CAA4C;AAEzE,QAAMkC,IAAaC,GAA4BnC,EAAO,UAAU,GAE1D,EAAE,MAAMoC,EAAA,IAAkBC,GAAyB;AAAA,IACvD,WAAWrC,EAAO;AAAA,IAClB,YAAY;AAAA,EAAA,CACb,GAEK,CAACsC,GAAeC,CAAgB,IAAIC,EAAS,SAAS,GACtD,CAACC,GAAaC,CAAc,IAAIF,EAAS,EAAE,GAC3C,CAACG,GAAcC,CAAe,IAAIJ,EAAA,GAClC,CAACK,GAAcC,CAAe,IAAIN,EAG9B,IAAI,GACR,CAACO,GAAkBC,CAAmB,IAAIR,EAAkC,IAAI,GAEhFS,IAAgBC,EAAQ,MAAMnD,GAAoBC,GAAQJ,CAAM,GAAG,CAACI,GAAQJ,CAAM,CAAC,GACnFuD,IAAiBD,EAAQ,MAAM/C,GAAqBH,CAAM,GAAG,CAACA,CAAM,CAAC,GACrEoD,IAAYF;AAAA,IAChB,MAAM9C,GAAgBJ,GAAQoC,EAAc,iBAAiB,CAAA,CAAE;AAAA,IAC/D,CAACpC,GAAQoC,EAAc,aAAa;AAAA,EAAA,GAGhCiB,IAAoBH,EAAQ,MAAM;AACtC,QAAI,CAACT,EAAY,KAAA,EAAQ,QAAOW;AAChC,UAAME,IAAQb,EAAY,YAAA;AAC1B,WAAOW,EAAU,OAAO,CAAA3C,MACL,GAAGA,EAAI,aAAa,EAAE,IAAIA,EAAI,YAAY,EAAE,GAAG,YAAA,EAChD,SAAS6C,CAAK,CAC/B;AAAA,EACH,GAAG,CAACF,GAAWX,CAAW,CAAC,GAErBc,IAAmBC,EAAY,MAAM;AACzC,IAAKhC,EAAY,kBAAkB;AAAA,MACjC,UAAU,CAAC,oCAAoC,mBAAmB,KAAK;AAAA,IAAA,CACxE;AAAA,EACH,GAAG,CAACA,CAAW,CAAC,GAEViC,IAAuBD;AAAA,IAC3B,OAAOE,GAAsBC,MAAyB;AACpD,MAAAb,EAAgB,IAAI,GACpB,MAAM7B,EAAkB,CAAA,GAAI,YAAY;AACtC,cAAMW,EAAgB;AAAA,UACpB,SAAS;AAAA,YACP,mBAAmBhB;AAAA,YACnB,aAAa,EAAE,WAAW,CAAC,EAAE,MAAM8C,EAAA,CAAc,EAAA;AAAA,UAAE;AAAA,QACrD,CACD,GACDH,EAAA,GACAX,EAAgB9B,EAAE,yBAAyB,EAAE,MAAM6C,EAAA,CAAc,CAAC;AAAA,MACpE,CAAC;AAAA,IACH;AAAA,IACA,CAAC1C,GAAmBW,GAAiBhB,GAAU2C,GAAkBzC,CAAC;AAAA,EAAA,GAG9D8C,IAAsBJ;AAAA,IAC1B,OAAOK,MAAuB;AAC5B,MAAKd,KACL,MAAM9B,EAAkB,CAAA,GAAI,YAAY;AACtC,YAAI;AACF,gBAAMc,EAAc;AAAA,YAClB,SAAS;AAAA,cACP,mBAAmBnB;AAAA,cACnB,aAAa;AAAA,gBACX,WAAW,CAAC,EAAE,MAAMmC,EAAiB,cAAc,SAAS,OAAOc,CAAU,EAAA,CAAG;AAAA,cAAA;AAAA,YAClF;AAAA,UACF,CACD;AAAA,QACH,SAASC,GAAK;AACZ,cAAIA,aAAeC,IAA0B;AAC3C,kBAAMC,IAAWhE,EAAO,YAAY,OAAO,OAAOA,EAAO,QAAQ,IAAI;AAMrE,gBAL0B8D,EAAI,OAAO;AAAA,cACnC,CAAAvD,MACEA,EAAE,YAAY,+BACdA,EAAE,aAAa;AAAA,YAAA,KAEMyD,KAAY;AACnC,oBAAM,IAAIC;AAAA,gBACRnD,EAAE,6CAA6C,EAAE,KAAKkD,GAAU;AAAA,gBAChE;AAAA,cAAA;AAGJ,kBAAME,IAAWJ,EAAI,OAAO,IAAI,OAAKvD,EAAE,OAAO,EAAE,OAAO,OAAO;AAC9D,kBAAM,IAAI0D;AAAA,cACRC,EAAS,KAAK,IAAI,KAAKpD,EAAE,sCAAsC;AAAA,cAC/D;AAAA,YAAA;AAAA,UAEJ;AACA,gBAAMgD;AAAA,QACR;AACA,QAAAP,EAAA,GACAP,EAAoB,IAAI,GACxBJ,EAAgB9B,EAAE,wBAAwB,EAAE,MAAMiC,EAAiB,aAAA,CAAc,CAAC;AAAA,MACpF,CAAC;AAAA,IACH;AAAA,IACA;AAAA,MACE9B;AAAA,MACAc;AAAA,MACAnB;AAAA,MACAmC;AAAA,MACAQ;AAAA,MACAzC;AAAA,MACAd,EAAO;AAAA,IAAA;AAAA,EACT,GAGImE,IAAqBX,EAAY,MAAM;AAC3C,IAAAxC,EAAQoD,EAAgB,kCAAkC,EAAE,UAAAxD,EAAA,CAAU;AAAA,EACxE,GAAG,CAACI,GAASJ,CAAQ,CAAC,GAEhByD,IAAUnB,EAAQ,MAAM;AAC5B,QAAKhB;AACL,aAAO;AAAA,QACL,gBAAAhD;AAAA,UAACmC;AAAA,UAAA;AAAA,YAEC,SAAQ;AAAA,YACR,MAAM,gBAAAnC,EAACoF,IAAA,EAAe,eAAW,GAAA,CAAC;AAAA,YAClC,SAASH;AAAA,YAER,YAAE,gBAAgB;AAAA,UAAA;AAAA,UALf;AAAA,QAAA;AAAA,QAON,gBAAAjF;AAAA,UAACmC;AAAA,UAAA;AAAA,YAEC,SAAQ;AAAA,YACR,MAAM,gBAAAnC,EAACqF,GAAA,EAAS,eAAW,GAAA,CAAC;AAAA,YAC5B,SAAS,MAAM;AACb,cAAAvD,EAAQoD,EAAgB,sBAAsB,EAAE,UAAAxD,EAAA,CAAU;AAAA,YAC5D;AAAA,YAEC,YAAE,eAAe;AAAA,UAAA;AAAA,UAPd;AAAA,QAAA;AAAA,MAQN;AAAA,EAEJ,GAAG,CAACS,GAAQL,GAASJ,GAAUE,GAAGoB,GAAYiC,CAAkB,CAAC,GAE3DK,IAAcxE,EAAO,kBAAkB,aAEvCyE,IAAWjB;AAAA,IACf,CAACkB,MAA0C;AACzC,YAAMf,IAAe,GAAGe,EAAS,aAAa,EAAE,IAAIA,EAAS,YAAY,EAAE,GAAG,KAAA,GACxEC,IAAQ;AAAA,QACZ,GAAKH,IAeD,CAAA,IAdA;AAAA,UACE;AAAA,YACE,OAAO1D,EAAE,2BAA2B;AAAA,YACpC,MAAM,gBAAA5B,EAACqF,GAAA,EAAS,eAAW,GAAA,CAAC;AAAA,YAC5B,SAAS,MAAM;AACb,cAAApD,EAAS,IAAI,GACb6B,EAAoB;AAAA,gBAClB,cAAc0B,EAAS;AAAA,gBACvB,cAAAf;AAAA,gBACA,gBAAgBe,EAAS,WAAW;AAAA,cAAA,CACrC;AAAA,YACH;AAAA,UAAA;AAAA,QACF;AAAA,QAGN;AAAA,UACE,OAAO5D,EAAE,8BAA8B;AAAA,UACvC,MAAM,gBAAA5B,EAAC0F,IAAA,EAAY,eAAW,GAAA,CAAC;AAAA,UAC/B,SAAS,MAAM;AACb,YAAA9B,EAAgB,EAAE,MAAM4B,EAAS,MAAM,MAAMf,GAAc;AAAA,UAC7D;AAAA,QAAA;AAAA,MACF;AAEF,aACE,gBAAAzE;AAAA,QAAC2F;AAAA,QAAA;AAAA,UACC,OAAAF;AAAA,UACA,cAAc,GAAG7D,EAAE,uBAAuB,CAAC,IAAI6C,CAAY;AAAA,QAAA;AAAA,MAAA;AAAA,IAGjE;AAAA,IACA,CAAC7C,GAAG0D,GAAarD,CAAQ;AAAA,EAAA,GAGrB2D,IACJ7B,EAAc,kBAAkB,cAC5B,EAAE,eAAAA,MACF;AAAA,IACE,eAAAA;AAAA,IACA,gBAAAE;AAAA,IACA,kBAAkBjB,IACd,MAAM;AACJ,MAAAlB,EAAQoD,EAAgB,0BAA0B,EAAE,UAAAxD,EAAA,CAAU;AAAA,IAChE,IACA;AAAA,EAAA;AAGZ,SACE,gBAAAmE,EAAAC,GAAA,EACE,UAAA;AAAA,IAAA,gBAAA9F;AAAA,MAAC+F;AAAA,MAAA;AAAA,QACE,GAAGH;AAAA,QACJ,OAAO9E,EAAO;AAAA,QACd,UAAUc,EAAE,YAAYmC,EAAc,UAAU,EAAE;AAAA,QAClD,QAAQ,MAAM;AACZ,UAAAjC,EAAQoD,EAAgB,qBAAqB;AAAA,QAC/C;AAAA,QACA,WAAWtD,EAAE,YAAY;AAAA,QACzB,SAAAuD;AAAA,QACA,eAAA/B;AAAA,QACA,aAAaC;AAAA,QACb,WAAW;AAAA,UACT,MAAMc;AAAA,UACN,aAAAZ;AAAA,UACA,gBAAgBC;AAAA,UAChB,eAAe,MAAM;AACnB,YAAAA,EAAe,EAAE;AAAA,UACnB;AAAA,UACA,GAAIR,IAAa,EAAE,UAAAuC,MAAa,CAAA;AAAA,QAAC;AAAA,QAEnC,eAAevC,IAAaiC,IAAqB;AAAA,QACjD,cAAc;AAAA,UACZ,QAAQtB,MAAiB;AAAA,UACzB,cAAcA,GAAc,QAAQ;AAAA,UACpC,WAAW,MAAM;AACf,YAAIA,KACGY,EAAqBZ,EAAa,MAAMA,EAAa,IAAI;AAAA,UAElE;AAAA,UACA,SAAS,MAAM;AACb,YAAAC,EAAgB,IAAI;AAAA,UACtB;AAAA,UACA,WAAWjB;AAAA,QAAA;AAAA,QAEb,cAAAc;AAAA,QACA,gBAAgB,MAAM;AACpB,UAAAC,EAAgB,MAAS;AAAA,QAC3B;AAAA,MAAA;AAAA,IAAA;AAAA,IAGF,gBAAA1D;AAAA,MAACgG;AAAA,MAAA;AAAA,QACC,QAAQnC,MAAqB;AAAA,QAC7B,SAAS,MAAM;AACb,UAAAC,EAAoB,IAAI,GACxB7B,EAAS,IAAI;AAAA,QACf;AAAA,QACA,cAAc4B,GAAkB,gBAAgB;AAAA,QAChD,gBAAgBA,GAAkB,kBAAkB;AAAA,QACpD,WAAWa;AAAA,QACX,WAAW5B;AAAA,QACX,OAAAd;AAAA,MAAA;AAAA,IAAA;AAAA,EACF,GACF;AAEJ;"}
1
+ {"version":3,"file":"TimeOffPolicyDetail.js","sources":["../../../../src/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetail.tsx"],"sourcesContent":["import { useCallback, useMemo, useState } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport { useTimeOffPoliciesGetSuspense } from '@gusto/embedded-api/react-query/timeOffPoliciesGet'\nimport { useTimeOffPoliciesRemoveEmployeesMutation } from '@gusto/embedded-api/react-query/timeOffPoliciesRemoveEmployees'\nimport { useTimeOffPoliciesUpdateBalanceMutation } from '@gusto/embedded-api/react-query/timeOffPoliciesUpdateBalance'\nimport { useEmployeesListSuspense } from '@gusto/embedded-api/react-query/employeesList'\nimport type { TimeOffPolicy } from '@gusto/embedded-api/models/components/timeoffpolicy'\nimport { UnprocessableEntityError } from '@gusto/embedded-api/models/errors/unprocessableentityerror'\nimport { useQueryClient } from '@tanstack/react-query'\nimport { TimeOffPolicyDetailPresentation } from './TimeOffPolicyDetailPresentation'\nimport { EditEmployeeBalanceModal } from './EditEmployeeBalanceModal'\nimport type {\n TimeOffPolicyDetailEmployee,\n AccrualMethodKey,\n PolicyDetails,\n PolicySettingsDisplay,\n PolicyTypeKey,\n} from './TimeOffPolicyDetailTypes'\nimport { API_QUERY_NAMESPACE } from '@/contexts/ApiProvider/apiVersion'\nimport { HamburgerMenu } from '@/components/Common/HamburgerMenu'\nimport { BaseComponent, type BaseComponentInterface } from '@/components/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { SDKInternalError } from '@/types/sdkError'\nimport { componentEvents } from '@/shared/constants'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useI18n } from '@/i18n'\nimport { useLocale } from '@/contexts/LocaleProvider/useLocale'\nimport { isEditableTimeOffPolicyType } from '@/components/TimeOff/TimeOffFlow/timeOffPolicyTypes'\nimport EditIcon from '@/assets/icons/edit-02.svg?react'\nimport TrashCanSvg from '@/assets/icons/trashcan.svg?react'\nimport PlusCircleIcon from '@/assets/icons/plus-circle.svg?react'\n\n/**\n * Props for {@link TimeOffPolicyDetail}.\n *\n * @public\n */\nexport interface TimeOffPolicyDetailProps extends BaseComponentInterface<'Company.TimeOff.TimeOffPolicyDetails'> {\n /** UUID of the time-off policy to display. */\n policyId: string\n}\n\n/**\n * Detail view for a sick or vacation time-off policy.\n *\n * @remarks\n * Loads the policy and its enrolled employees, then renders the tabbed detail view with\n * actions for editing the policy, adding or removing employees, and adjusting individual\n * balances. Editable actions are only shown for sick and vacation policies.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `timeOff/addEmployeesToPolicy` | The add-employees action was clicked. | `{ policyId: string }` |\n * | `timeOff/backToList` | The back navigation was clicked. | — |\n * | `timeOff/changeSettings` | The change-settings action was clicked. | `{ policyId: string }` |\n * | `timeOff/editPolicy` | The edit-policy action was clicked. | `{ policyId: string }` |\n *\n * @param props - The policy id and standard base component props (`onEvent`, `dictionary`, etc.).\n * @returns The rendered detail view.\n * @public\n */\nexport function TimeOffPolicyDetail(props: TimeOffPolicyDetailProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props} />\n </BaseComponent>\n )\n}\n\nconst API_ACCRUAL_METHOD_MAP: Record<string, AccrualMethodKey> = {\n unlimited: 'unlimited',\n per_pay_period: 'perPayPeriod',\n per_calendar_year: 'perCalendarYear',\n per_anniversary_year: 'perAnniversaryYear',\n per_hour_worked: 'perHourWorked',\n per_hour_worked_no_overtime: 'perHourWorkedNoOvertime',\n per_hour_paid: 'perHourPaid',\n per_hour_paid_no_overtime: 'perHourPaidNoOvertime',\n}\n\nfunction mapAccrualMethod(apiMethod: string): AccrualMethodKey {\n return API_ACCRUAL_METHOD_MAP[apiMethod] ?? 'unlimited'\n}\n\nfunction mapPolicyType(apiType: string): PolicyTypeKey {\n if (apiType === 'sick') return 'sick'\n return 'vacation'\n}\n\nfunction formatResetDate(\n resetDate: string | null | undefined,\n locale?: string,\n): string | undefined {\n if (!resetDate) return undefined\n const [month, day] = resetDate.split('-')\n if (!month || !day) return resetDate\n const date = new Date(2000, parseInt(month, 10) - 1, parseInt(day, 10))\n return date.toLocaleDateString(locale, { month: 'long', day: 'numeric' })\n}\n\nfunction derivePolicyDetails(policy: TimeOffPolicy, locale?: string): PolicyDetails {\n const policyType = mapPolicyType(policy.policyType)\n const accrualMethod = mapAccrualMethod(policy.accrualMethod)\n\n if (accrualMethod === 'unlimited') {\n return { policyType, accrualMethod }\n }\n\n return {\n policyType,\n accrualMethod,\n accrualRate: policy.accrualRate ? Number(policy.accrualRate) : 0,\n accrualRateUnit: policy.accrualRateUnit ? Number(policy.accrualRateUnit) : undefined,\n resetDate: formatResetDate(policy.policyResetDate, locale),\n }\n}\n\nfunction derivePolicySettings(policy: TimeOffPolicy): PolicySettingsDisplay | undefined {\n if (policy.accrualMethod === 'unlimited') return undefined\n\n return {\n maxAccrualHoursPerYear:\n policy.maxAccrualHoursPerYear != null ? Number(policy.maxAccrualHoursPerYear) : null,\n maxHours: policy.maxHours != null ? Number(policy.maxHours) : null,\n carryoverLimitHours:\n policy.carryoverLimitHours != null ? Number(policy.carryoverLimitHours) : null,\n accrualWaitingPeriodDays: policy.accrualWaitingPeriodDays ?? null,\n paidOutOnTermination: policy.paidOutOnTermination ?? false,\n }\n}\n\nfunction deriveEmployees(\n policy: TimeOffPolicy,\n allEmployees: Array<{\n uuid: string\n firstName?: string | null\n lastName?: string | null\n jobs?: Array<{ primary?: boolean; title?: string | null }> | null\n }>,\n): TimeOffPolicyDetailEmployee[] {\n const employeeMap = new Map(allEmployees.map(e => [e.uuid, e]))\n return policy.employees.map(policyEmp => {\n const emp = employeeMap.get(policyEmp.uuid ?? '')\n const primaryJob = emp?.jobs?.find(job => job.primary)\n return {\n uuid: policyEmp.uuid ?? '',\n firstName: emp?.firstName ?? null,\n lastName: emp?.lastName ?? null,\n jobTitle: primaryJob?.title ?? emp?.jobs?.[0]?.title ?? null,\n balance: policyEmp.balance != null ? Number(policyEmp.balance) : null,\n }\n })\n}\n\ninterface EditBalanceState {\n employeeUuid: string\n employeeName: string\n currentBalance: number\n}\n\nfunction Root({ policyId }: TimeOffPolicyDetailProps) {\n useI18n('Company.TimeOff.TimeOffPolicyDetails')\n const { t } = useTranslation('Company.TimeOff.TimeOffPolicyDetails')\n const { onEvent, baseSubmitHandler, error, setError } = useBase()\n const { Button } = useComponentContext()\n const { locale } = useLocale()\n const queryClient = useQueryClient()\n\n const { data: policyResponse } = useTimeOffPoliciesGetSuspense({\n timeOffPolicyUuid: policyId,\n })\n\n const { mutateAsync: removeEmployees, isPending: isRemovePending } =\n useTimeOffPoliciesRemoveEmployeesMutation()\n const { mutateAsync: updateBalance, isPending: isBalancePending } =\n useTimeOffPoliciesUpdateBalanceMutation()\n\n const policy = policyResponse.timeOffPolicy\n if (!policy) throw new Error('Unexpected response: missing timeOffPolicy')\n\n const isEditable = isEditableTimeOffPolicyType(policy.policyType)\n\n const { data: employeesData } = useEmployeesListSuspense({\n companyId: policy.companyUuid,\n terminated: false,\n })\n\n const [selectedTabId, setSelectedTabId] = useState('details')\n const [searchValue, setSearchValue] = useState('')\n const [successAlert, setSuccessAlert] = useState<string | undefined>()\n const [removeTarget, setRemoveTarget] = useState<{\n uuid: string\n name: string\n } | null>(null)\n const [editBalanceState, setEditBalanceState] = useState<EditBalanceState | null>(null)\n\n const policyDetails = useMemo(() => derivePolicyDetails(policy, locale), [policy, locale])\n const policySettings = useMemo(() => derivePolicySettings(policy), [policy])\n const employees = useMemo(\n () => deriveEmployees(policy, employeesData.showEmployees ?? []),\n [policy, employeesData.showEmployees],\n )\n\n const filteredEmployees = useMemo(() => {\n if (!searchValue.trim()) return employees\n const query = searchValue.toLowerCase()\n return employees.filter(emp => {\n const fullName = `${emp.firstName ?? ''} ${emp.lastName ?? ''}`.toLowerCase()\n return fullName.includes(query)\n })\n }, [employees, searchValue])\n\n const invalidatePolicy = useCallback(() => {\n void queryClient.invalidateQueries({\n queryKey: [API_QUERY_NAMESPACE, 'timeOffPolicies', 'get'],\n })\n }, [queryClient])\n\n const handleRemoveEmployee = useCallback(\n async (employeeUuid: string, employeeName: string) => {\n setRemoveTarget(null)\n await baseSubmitHandler({}, async () => {\n await removeEmployees({\n request: {\n timeOffPolicyUuid: policyId,\n requestBody: { employees: [{ uuid: employeeUuid }] },\n },\n })\n invalidatePolicy()\n setSuccessAlert(t('flash.employeeRemoved', { name: employeeName }))\n })\n },\n [baseSubmitHandler, removeEmployees, policyId, invalidatePolicy, t],\n )\n\n const handleUpdateBalance = useCallback(\n async (newBalance: number) => {\n if (!editBalanceState) return\n await baseSubmitHandler({}, async () => {\n try {\n await updateBalance({\n request: {\n timeOffPolicyUuid: policyId,\n requestBody: {\n employees: [{ uuid: editBalanceState.employeeUuid, balance: String(newBalance) }],\n },\n },\n })\n } catch (err) {\n if (err instanceof UnprocessableEntityError) {\n const maxHours = policy.maxHours != null ? Number(policy.maxHours) : null\n const hasLimitViolation = err.errors.some(\n e =>\n e.message === 'LIMIT_VIOLATION_MAX_HOURS' ||\n e.category === 'invalid_attribute_value',\n )\n if (hasLimitViolation && maxHours != null) {\n throw new SDKInternalError(\n t('editBalanceModal.errors.balanceExceedsMax', { max: maxHours }),\n 'api_error',\n )\n }\n const messages = err.errors.map(e => e.message).filter(Boolean)\n throw new SDKInternalError(\n messages.join('. ') || t('editBalanceModal.errors.updateFailed'),\n 'api_error',\n )\n }\n throw err\n }\n invalidatePolicy()\n setEditBalanceState(null)\n setSuccessAlert(t('flash.balanceUpdated', { name: editBalanceState.employeeName }))\n })\n },\n [\n baseSubmitHandler,\n updateBalance,\n policyId,\n editBalanceState,\n invalidatePolicy,\n t,\n policy.maxHours,\n ],\n )\n\n const handleAddEmployees = useCallback(() => {\n onEvent(componentEvents.TIME_OFF_ADD_EMPLOYEES_TO_POLICY, { policyId })\n }, [onEvent, policyId])\n\n const actions = useMemo(() => {\n if (!isEditable) return undefined\n return [\n <Button\n key=\"add\"\n variant=\"secondary\"\n icon={<PlusCircleIcon aria-hidden />}\n onClick={handleAddEmployees}\n >\n {t('addEmployeeCta')}\n </Button>,\n <Button\n key=\"edit\"\n variant=\"secondary\"\n icon={<EditIcon aria-hidden />}\n onClick={() => {\n onEvent(componentEvents.TIME_OFF_EDIT_POLICY, { policyId })\n }}\n >\n {t('editPolicyCta')}\n </Button>,\n ]\n }, [Button, onEvent, policyId, t, isEditable, handleAddEmployees])\n\n const isUnlimited = policy.accrualMethod === 'unlimited'\n\n const itemMenu = useCallback(\n (employee: TimeOffPolicyDetailEmployee) => {\n const employeeName = `${employee.firstName ?? ''} ${employee.lastName ?? ''}`.trim()\n const items = [\n ...(!isUnlimited\n ? [\n {\n label: t('employeeTable.editBalance'),\n icon: <EditIcon aria-hidden />,\n onClick: () => {\n setError(null)\n setEditBalanceState({\n employeeUuid: employee.uuid,\n employeeName,\n currentBalance: employee.balance ?? 0,\n })\n },\n },\n ]\n : []),\n {\n label: t('employeeTable.removeEmployee'),\n icon: <TrashCanSvg aria-hidden />,\n onClick: () => {\n setRemoveTarget({ uuid: employee.uuid, name: employeeName })\n },\n },\n ]\n return (\n <HamburgerMenu\n items={items}\n triggerLabel={`${t('employeeTable.actions')} ${employeeName}`}\n />\n )\n },\n [t, isUnlimited, setError],\n )\n\n const discriminatedProps =\n policyDetails.accrualMethod === 'unlimited'\n ? { policyDetails }\n : {\n policyDetails,\n policySettings: policySettings!,\n onChangeSettings: isEditable\n ? () => {\n onEvent(componentEvents.TIME_OFF_CHANGE_SETTINGS, { policyId })\n }\n : undefined,\n }\n\n return (\n <>\n <TimeOffPolicyDetailPresentation\n {...discriminatedProps}\n title={policy.name}\n subtitle={t(`subtitle.${policyDetails.policyType}`)}\n onBack={() => {\n onEvent(componentEvents.TIME_OFF_BACK_TO_LIST)\n }}\n backLabel={t('breadcrumb')}\n actions={actions}\n selectedTabId={selectedTabId}\n onTabChange={setSelectedTabId}\n employees={{\n data: filteredEmployees,\n searchValue,\n onSearchChange: setSearchValue,\n onSearchClear: () => {\n setSearchValue('')\n },\n ...(isEditable ? { itemMenu } : {}),\n }}\n onAddEmployee={isEditable ? handleAddEmployees : undefined}\n removeDialog={{\n isOpen: removeTarget !== null,\n employeeName: removeTarget?.name ?? '',\n onConfirm: () => {\n if (removeTarget) {\n void handleRemoveEmployee(removeTarget.uuid, removeTarget.name)\n }\n },\n onClose: () => {\n setRemoveTarget(null)\n },\n isPending: isRemovePending,\n }}\n successAlert={successAlert}\n onDismissAlert={() => {\n setSuccessAlert(undefined)\n }}\n />\n\n <EditEmployeeBalanceModal\n isOpen={editBalanceState !== null}\n onClose={() => {\n setEditBalanceState(null)\n setError(null)\n }}\n employeeName={editBalanceState?.employeeName ?? ''}\n currentBalance={editBalanceState?.currentBalance ?? 0}\n onConfirm={handleUpdateBalance}\n isPending={isBalancePending}\n error={error}\n />\n </>\n )\n}\n"],"names":["TimeOffPolicyDetail","props","jsx","BaseComponent","Root","API_ACCRUAL_METHOD_MAP","mapAccrualMethod","apiMethod","mapPolicyType","apiType","formatResetDate","resetDate","locale","month","day","derivePolicyDetails","policy","policyType","accrualMethod","derivePolicySettings","deriveEmployees","allEmployees","employeeMap","e","policyEmp","emp","primaryJob","job","policyId","useI18n","t","useTranslation","onEvent","baseSubmitHandler","error","setError","useBase","Button","useComponentContext","useLocale","queryClient","useQueryClient","policyResponse","useTimeOffPoliciesGetSuspense","removeEmployees","isRemovePending","useTimeOffPoliciesRemoveEmployeesMutation","updateBalance","isBalancePending","useTimeOffPoliciesUpdateBalanceMutation","isEditable","isEditableTimeOffPolicyType","employeesData","useEmployeesListSuspense","selectedTabId","setSelectedTabId","useState","searchValue","setSearchValue","successAlert","setSuccessAlert","removeTarget","setRemoveTarget","editBalanceState","setEditBalanceState","policyDetails","useMemo","policySettings","employees","filteredEmployees","query","invalidatePolicy","useCallback","API_QUERY_NAMESPACE","handleRemoveEmployee","employeeUuid","employeeName","handleUpdateBalance","newBalance","err","UnprocessableEntityError","maxHours","SDKInternalError","messages","handleAddEmployees","componentEvents","actions","PlusCircleIcon","EditIcon","isUnlimited","itemMenu","employee","items","TrashCanSvg","HamburgerMenu","discriminatedProps","jsxs","Fragment","TimeOffPolicyDetailPresentation","EditEmployeeBalanceModal"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AA8DO,SAASA,GAAoBC,GAAiC;AACnE,SACE,gBAAAC,EAACC,MAAe,GAAGF,GACjB,4BAACG,IAAA,EAAM,GAAGH,GAAO,EAAA,CACnB;AAEJ;AAEA,MAAMI,KAA2D;AAAA,EAC/D,WAAW;AAAA,EACX,gBAAgB;AAAA,EAChB,mBAAmB;AAAA,EACnB,sBAAsB;AAAA,EACtB,iBAAiB;AAAA,EACjB,6BAA6B;AAAA,EAC7B,eAAe;AAAA,EACf,2BAA2B;AAC7B;AAEA,SAASC,GAAiBC,GAAqC;AAC7D,SAAOF,GAAuBE,CAAS,KAAK;AAC9C;AAEA,SAASC,GAAcC,GAAgC;AACrD,SAAIA,MAAY,SAAe,SACxB;AACT;AAEA,SAASC,GACPC,GACAC,GACoB;AACpB,MAAI,CAACD,EAAW;AAChB,QAAM,CAACE,GAAOC,CAAG,IAAIH,EAAU,MAAM,GAAG;AACxC,SAAI,CAACE,KAAS,CAACC,IAAYH,IACd,IAAI,KAAK,KAAM,SAASE,GAAO,EAAE,IAAI,GAAG,SAASC,GAAK,EAAE,CAAC,EAC1D,mBAAmBF,GAAQ,EAAE,OAAO,QAAQ,KAAK,WAAW;AAC1E;AAEA,SAASG,GAAoBC,GAAuBJ,GAAgC;AAClF,QAAMK,IAAaT,GAAcQ,EAAO,UAAU,GAC5CE,IAAgBZ,GAAiBU,EAAO,aAAa;AAE3D,SAAIE,MAAkB,cACb,EAAE,YAAAD,GAAY,eAAAC,EAAA,IAGhB;AAAA,IACL,YAAAD;AAAA,IACA,eAAAC;AAAA,IACA,aAAaF,EAAO,cAAc,OAAOA,EAAO,WAAW,IAAI;AAAA,IAC/D,iBAAiBA,EAAO,kBAAkB,OAAOA,EAAO,eAAe,IAAI;AAAA,IAC3E,WAAWN,GAAgBM,EAAO,iBAAiBJ,CAAM;AAAA,EAAA;AAE7D;AAEA,SAASO,GAAqBH,GAA0D;AACtF,MAAIA,EAAO,kBAAkB;AAE7B,WAAO;AAAA,MACL,wBACEA,EAAO,0BAA0B,OAAO,OAAOA,EAAO,sBAAsB,IAAI;AAAA,MAClF,UAAUA,EAAO,YAAY,OAAO,OAAOA,EAAO,QAAQ,IAAI;AAAA,MAC9D,qBACEA,EAAO,uBAAuB,OAAO,OAAOA,EAAO,mBAAmB,IAAI;AAAA,MAC5E,0BAA0BA,EAAO,4BAA4B;AAAA,MAC7D,sBAAsBA,EAAO,wBAAwB;AAAA,IAAA;AAEzD;AAEA,SAASI,GACPJ,GACAK,GAM+B;AAC/B,QAAMC,IAAc,IAAI,IAAID,EAAa,IAAI,CAAAE,MAAK,CAACA,EAAE,MAAMA,CAAC,CAAC,CAAC;AAC9D,SAAOP,EAAO,UAAU,IAAI,CAAAQ,MAAa;AACvC,UAAMC,IAAMH,EAAY,IAAIE,EAAU,QAAQ,EAAE,GAC1CE,IAAaD,GAAK,MAAM,KAAK,CAAAE,MAAOA,EAAI,OAAO;AACrD,WAAO;AAAA,MACL,MAAMH,EAAU,QAAQ;AAAA,MACxB,WAAWC,GAAK,aAAa;AAAA,MAC7B,UAAUA,GAAK,YAAY;AAAA,MAC3B,UAAUC,GAAY,SAASD,GAAK,OAAO,CAAC,GAAG,SAAS;AAAA,MACxD,SAASD,EAAU,WAAW,OAAO,OAAOA,EAAU,OAAO,IAAI;AAAA,IAAA;AAAA,EAErE,CAAC;AACH;AAQA,SAASpB,GAAK,EAAE,UAAAwB,KAAsC;AACpD,EAAAC,GAAQ,sCAAsC;AAC9C,QAAM,EAAE,GAAAC,EAAA,IAAMC,EAAe,sCAAsC,GAC7D,EAAE,SAAAC,GAAS,mBAAAC,GAAmB,OAAAC,GAAO,UAAAC,EAAA,IAAaC,GAAA,GAClD,EAAE,QAAAC,EAAA,IAAWC,GAAA,GACb,EAAE,QAAA1B,EAAA,IAAW2B,GAAA,GACbC,IAAcC,GAAA,GAEd,EAAE,MAAMC,EAAA,IAAmBC,GAA8B;AAAA,IAC7D,mBAAmBf;AAAA,EAAA,CACpB,GAEK,EAAE,aAAagB,GAAiB,WAAWC,EAAA,IAC/CC,GAAA,GACI,EAAE,aAAaC,GAAe,WAAWC,EAAA,IAC7CC,GAAA,GAEIjC,IAAS0B,EAAe;AAC9B,MAAI,CAAC1B,EAAQ,OAAM,IAAI,MAAM,4CAA4C;AAEzE,QAAMkC,IAAaC,GAA4BnC,EAAO,UAAU,GAE1D,EAAE,MAAMoC,EAAA,IAAkBC,GAAyB;AAAA,IACvD,WAAWrC,EAAO;AAAA,IAClB,YAAY;AAAA,EAAA,CACb,GAEK,CAACsC,GAAeC,CAAgB,IAAIC,EAAS,SAAS,GACtD,CAACC,GAAaC,CAAc,IAAIF,EAAS,EAAE,GAC3C,CAACG,GAAcC,CAAe,IAAIJ,EAAA,GAClC,CAACK,GAAcC,CAAe,IAAIN,EAG9B,IAAI,GACR,CAACO,GAAkBC,CAAmB,IAAIR,EAAkC,IAAI,GAEhFS,IAAgBC,EAAQ,MAAMnD,GAAoBC,GAAQJ,CAAM,GAAG,CAACI,GAAQJ,CAAM,CAAC,GACnFuD,IAAiBD,EAAQ,MAAM/C,GAAqBH,CAAM,GAAG,CAACA,CAAM,CAAC,GACrEoD,IAAYF;AAAA,IAChB,MAAM9C,GAAgBJ,GAAQoC,EAAc,iBAAiB,CAAA,CAAE;AAAA,IAC/D,CAACpC,GAAQoC,EAAc,aAAa;AAAA,EAAA,GAGhCiB,IAAoBH,EAAQ,MAAM;AACtC,QAAI,CAACT,EAAY,KAAA,EAAQ,QAAOW;AAChC,UAAME,IAAQb,EAAY,YAAA;AAC1B,WAAOW,EAAU,OAAO,CAAA3C,MACL,GAAGA,EAAI,aAAa,EAAE,IAAIA,EAAI,YAAY,EAAE,GAAG,YAAA,EAChD,SAAS6C,CAAK,CAC/B;AAAA,EACH,GAAG,CAACF,GAAWX,CAAW,CAAC,GAErBc,IAAmBC,EAAY,MAAM;AACzC,IAAKhC,EAAY,kBAAkB;AAAA,MACjC,UAAU,CAACiC,IAAqB,mBAAmB,KAAK;AAAA,IAAA,CACzD;AAAA,EACH,GAAG,CAACjC,CAAW,CAAC,GAEVkC,IAAuBF;AAAA,IAC3B,OAAOG,GAAsBC,MAAyB;AACpD,MAAAd,EAAgB,IAAI,GACpB,MAAM7B,EAAkB,CAAA,GAAI,YAAY;AACtC,cAAMW,EAAgB;AAAA,UACpB,SAAS;AAAA,YACP,mBAAmBhB;AAAA,YACnB,aAAa,EAAE,WAAW,CAAC,EAAE,MAAM+C,EAAA,CAAc,EAAA;AAAA,UAAE;AAAA,QACrD,CACD,GACDJ,EAAA,GACAX,EAAgB9B,EAAE,yBAAyB,EAAE,MAAM8C,EAAA,CAAc,CAAC;AAAA,MACpE,CAAC;AAAA,IACH;AAAA,IACA,CAAC3C,GAAmBW,GAAiBhB,GAAU2C,GAAkBzC,CAAC;AAAA,EAAA,GAG9D+C,IAAsBL;AAAA,IAC1B,OAAOM,MAAuB;AAC5B,MAAKf,KACL,MAAM9B,EAAkB,CAAA,GAAI,YAAY;AACtC,YAAI;AACF,gBAAMc,EAAc;AAAA,YAClB,SAAS;AAAA,cACP,mBAAmBnB;AAAA,cACnB,aAAa;AAAA,gBACX,WAAW,CAAC,EAAE,MAAMmC,EAAiB,cAAc,SAAS,OAAOe,CAAU,EAAA,CAAG;AAAA,cAAA;AAAA,YAClF;AAAA,UACF,CACD;AAAA,QACH,SAASC,GAAK;AACZ,cAAIA,aAAeC,IAA0B;AAC3C,kBAAMC,IAAWjE,EAAO,YAAY,OAAO,OAAOA,EAAO,QAAQ,IAAI;AAMrE,gBAL0B+D,EAAI,OAAO;AAAA,cACnC,CAAAxD,MACEA,EAAE,YAAY,+BACdA,EAAE,aAAa;AAAA,YAAA,KAEM0D,KAAY;AACnC,oBAAM,IAAIC;AAAA,gBACRpD,EAAE,6CAA6C,EAAE,KAAKmD,GAAU;AAAA,gBAChE;AAAA,cAAA;AAGJ,kBAAME,IAAWJ,EAAI,OAAO,IAAI,OAAKxD,EAAE,OAAO,EAAE,OAAO,OAAO;AAC9D,kBAAM,IAAI2D;AAAA,cACRC,EAAS,KAAK,IAAI,KAAKrD,EAAE,sCAAsC;AAAA,cAC/D;AAAA,YAAA;AAAA,UAEJ;AACA,gBAAMiD;AAAA,QACR;AACA,QAAAR,EAAA,GACAP,EAAoB,IAAI,GACxBJ,EAAgB9B,EAAE,wBAAwB,EAAE,MAAMiC,EAAiB,aAAA,CAAc,CAAC;AAAA,MACpF,CAAC;AAAA,IACH;AAAA,IACA;AAAA,MACE9B;AAAA,MACAc;AAAA,MACAnB;AAAA,MACAmC;AAAA,MACAQ;AAAA,MACAzC;AAAA,MACAd,EAAO;AAAA,IAAA;AAAA,EACT,GAGIoE,IAAqBZ,EAAY,MAAM;AAC3C,IAAAxC,EAAQqD,EAAgB,kCAAkC,EAAE,UAAAzD,EAAA,CAAU;AAAA,EACxE,GAAG,CAACI,GAASJ,CAAQ,CAAC,GAEhB0D,IAAUpB,EAAQ,MAAM;AAC5B,QAAKhB;AACL,aAAO;AAAA,QACL,gBAAAhD;AAAA,UAACmC;AAAA,UAAA;AAAA,YAEC,SAAQ;AAAA,YACR,MAAM,gBAAAnC,EAACqF,IAAA,EAAe,eAAW,GAAA,CAAC;AAAA,YAClC,SAASH;AAAA,YAER,YAAE,gBAAgB;AAAA,UAAA;AAAA,UALf;AAAA,QAAA;AAAA,QAON,gBAAAlF;AAAA,UAACmC;AAAA,UAAA;AAAA,YAEC,SAAQ;AAAA,YACR,MAAM,gBAAAnC,EAACsF,GAAA,EAAS,eAAW,GAAA,CAAC;AAAA,YAC5B,SAAS,MAAM;AACb,cAAAxD,EAAQqD,EAAgB,sBAAsB,EAAE,UAAAzD,EAAA,CAAU;AAAA,YAC5D;AAAA,YAEC,YAAE,eAAe;AAAA,UAAA;AAAA,UAPd;AAAA,QAAA;AAAA,MAQN;AAAA,EAEJ,GAAG,CAACS,GAAQL,GAASJ,GAAUE,GAAGoB,GAAYkC,CAAkB,CAAC,GAE3DK,IAAczE,EAAO,kBAAkB,aAEvC0E,IAAWlB;AAAA,IACf,CAACmB,MAA0C;AACzC,YAAMf,IAAe,GAAGe,EAAS,aAAa,EAAE,IAAIA,EAAS,YAAY,EAAE,GAAG,KAAA,GACxEC,IAAQ;AAAA,QACZ,GAAKH,IAeD,CAAA,IAdA;AAAA,UACE;AAAA,YACE,OAAO3D,EAAE,2BAA2B;AAAA,YACpC,MAAM,gBAAA5B,EAACsF,GAAA,EAAS,eAAW,GAAA,CAAC;AAAA,YAC5B,SAAS,MAAM;AACb,cAAArD,EAAS,IAAI,GACb6B,EAAoB;AAAA,gBAClB,cAAc2B,EAAS;AAAA,gBACvB,cAAAf;AAAA,gBACA,gBAAgBe,EAAS,WAAW;AAAA,cAAA,CACrC;AAAA,YACH;AAAA,UAAA;AAAA,QACF;AAAA,QAGN;AAAA,UACE,OAAO7D,EAAE,8BAA8B;AAAA,UACvC,MAAM,gBAAA5B,EAAC2F,IAAA,EAAY,eAAW,GAAA,CAAC;AAAA,UAC/B,SAAS,MAAM;AACb,YAAA/B,EAAgB,EAAE,MAAM6B,EAAS,MAAM,MAAMf,GAAc;AAAA,UAC7D;AAAA,QAAA;AAAA,MACF;AAEF,aACE,gBAAA1E;AAAA,QAAC4F;AAAA,QAAA;AAAA,UACC,OAAAF;AAAA,UACA,cAAc,GAAG9D,EAAE,uBAAuB,CAAC,IAAI8C,CAAY;AAAA,QAAA;AAAA,MAAA;AAAA,IAGjE;AAAA,IACA,CAAC9C,GAAG2D,GAAatD,CAAQ;AAAA,EAAA,GAGrB4D,IACJ9B,EAAc,kBAAkB,cAC5B,EAAE,eAAAA,MACF;AAAA,IACE,eAAAA;AAAA,IACA,gBAAAE;AAAA,IACA,kBAAkBjB,IACd,MAAM;AACJ,MAAAlB,EAAQqD,EAAgB,0BAA0B,EAAE,UAAAzD,EAAA,CAAU;AAAA,IAChE,IACA;AAAA,EAAA;AAGZ,SACE,gBAAAoE,EAAAC,GAAA,EACE,UAAA;AAAA,IAAA,gBAAA/F;AAAA,MAACgG;AAAA,MAAA;AAAA,QACE,GAAGH;AAAA,QACJ,OAAO/E,EAAO;AAAA,QACd,UAAUc,EAAE,YAAYmC,EAAc,UAAU,EAAE;AAAA,QAClD,QAAQ,MAAM;AACZ,UAAAjC,EAAQqD,EAAgB,qBAAqB;AAAA,QAC/C;AAAA,QACA,WAAWvD,EAAE,YAAY;AAAA,QACzB,SAAAwD;AAAA,QACA,eAAAhC;AAAA,QACA,aAAaC;AAAA,QACb,WAAW;AAAA,UACT,MAAMc;AAAA,UACN,aAAAZ;AAAA,UACA,gBAAgBC;AAAA,UAChB,eAAe,MAAM;AACnB,YAAAA,EAAe,EAAE;AAAA,UACnB;AAAA,UACA,GAAIR,IAAa,EAAE,UAAAwC,MAAa,CAAA;AAAA,QAAC;AAAA,QAEnC,eAAexC,IAAakC,IAAqB;AAAA,QACjD,cAAc;AAAA,UACZ,QAAQvB,MAAiB;AAAA,UACzB,cAAcA,GAAc,QAAQ;AAAA,UACpC,WAAW,MAAM;AACf,YAAIA,KACGa,EAAqBb,EAAa,MAAMA,EAAa,IAAI;AAAA,UAElE;AAAA,UACA,SAAS,MAAM;AACb,YAAAC,EAAgB,IAAI;AAAA,UACtB;AAAA,UACA,WAAWjB;AAAA,QAAA;AAAA,QAEb,cAAAc;AAAA,QACA,gBAAgB,MAAM;AACpB,UAAAC,EAAgB,MAAS;AAAA,QAC3B;AAAA,MAAA;AAAA,IAAA;AAAA,IAGF,gBAAA1D;AAAA,MAACiG;AAAA,MAAA;AAAA,QACC,QAAQpC,MAAqB;AAAA,QAC7B,SAAS,MAAM;AACb,UAAAC,EAAoB,IAAI,GACxB7B,EAAS,IAAI;AAAA,QACf;AAAA,QACA,cAAc4B,GAAkB,gBAAgB;AAAA,QAChD,gBAAgBA,GAAkB,kBAAkB;AAAA,QACpD,WAAWc;AAAA,QACX,WAAW7B;AAAA,QACX,OAAAd;AAAA,MAAA;AAAA,IAAA;AAAA,EACF,GACF;AAEJ;"}
@@ -1,8 +1,8 @@
1
1
  import { jsx as u } from "react/jsx-runtime";
2
2
  import { QueryClientProvider as E } from "@tanstack/react-query";
3
- import { GustoEmbeddedProvider as R } from "@gusto/embedded-api-v-2026-02-01/react-query/_context";
4
- import { GustoEmbeddedCore as q } from "@gusto/embedded-api-v-2026-02-01/core";
5
- import { SDKHooks as C } from "@gusto/embedded-api-v-2026-02-01/hooks/hooks";
3
+ import { GustoEmbeddedProvider as R } from "@gusto/embedded-api/react-query/_context";
4
+ import { GustoEmbeddedCore as q } from "@gusto/embedded-api/core";
5
+ import { SDKHooks as C } from "@gusto/embedded-api/hooks/hooks";
6
6
  import { useMemo as a } from "react";
7
7
  import { apiVersionHook as b } from "./apiVersionHook.js";
8
8
  import { createSdkQueryClient as g } from "./createSdkQueryClient.js";
@@ -1 +1 @@
1
- {"version":3,"file":"ApiProvider.js","sources":["../../../src/contexts/ApiProvider/ApiProvider.tsx"],"sourcesContent":["import { QueryClientProvider, type QueryClient } from '@tanstack/react-query'\nimport { GustoEmbeddedProvider } from '@gusto/embedded-api-v-2026-02-01/react-query/_context'\nimport { GustoEmbeddedCore } from '@gusto/embedded-api-v-2026-02-01/core'\nimport { SDKHooks as NativeSDKHooks } from '@gusto/embedded-api-v-2026-02-01/hooks/hooks'\nimport { useMemo } from 'react'\nimport { apiVersionHook } from './apiVersionHook'\nimport { createSdkQueryClient } from './createSdkQueryClient'\nimport type { SDKHooks, BeforeRequestHook } from '@/types/hooks'\n\n/**\n * Props for {@link ApiProvider}.\n *\n * @public\n */\nexport interface ApiProviderProps {\n /** Base URL the SDK uses for all `@gusto/embedded-api-v-2026-02-01` requests. */\n url: string\n /** Default headers applied to every SDK request, in addition to the `X-Gusto-API-Version` header set automatically. */\n headers?: HeadersInit\n /** Lifecycle hooks for intercepting and modifying SDK requests and responses. */\n hooks?: SDKHooks\n /** Subtree that renders inside the API + React Query providers. */\n children: React.ReactNode\n /** Optional React Query client. When omitted, a client is created with the SDK's defaults (auto-invalidation on mutation success). */\n queryClient?: QueryClient\n}\n\n/**\n * Wires the `@gusto/embedded-api-v-2026-02-01` client and a React Query client into the React tree.\n *\n * @remarks\n * Registers the SDK's `X-Gusto-API-Version` header on every request, applies any default `headers`,\n * and registers user-supplied lifecycle hooks (`beforeCreateRequest`, `beforeRequest`, `afterSuccess`,\n * `afterError`). When no `queryClient` is supplied, one is created with the SDK's defaults so\n * successful mutations under the `['@gusto/embedded-api-v-2026-02-01']` key invalidate every SDK\n * query automatically. Partners who supply their own `QueryClient` are responsible for matching that\n * contract.\n *\n * Typically wrapped by {@link GustoProvider}; use directly only when composing the provider stack\n * manually.\n *\n * @param props - See {@link ApiProviderProps}.\n * @returns A React subtree wrapped in `QueryClientProvider` and the embedded API context.\n * @public\n */\nexport function ApiProvider({\n url,\n headers,\n hooks,\n children,\n queryClient: queryClientFromProps,\n}: ApiProviderProps) {\n const gustoClient = useMemo(() => {\n const client = new GustoEmbeddedCore({\n serverURL: url,\n })\n\n const sdkHooks = client._options.hooks || new NativeSDKHooks()\n\n sdkHooks.registerBeforeRequestHook(apiVersionHook)\n\n if (headers) {\n const defaultHeaderHook: BeforeRequestHook = {\n beforeRequest: (context, request) => {\n const headersInstance = new Headers(headers)\n headersInstance.forEach((headerValue, headerName) => {\n if (headerValue) {\n request.headers.set(headerName, headerValue)\n }\n })\n return request\n },\n }\n sdkHooks.registerBeforeRequestHook(defaultHeaderHook)\n }\n\n if (hooks?.beforeCreateRequest) {\n hooks.beforeCreateRequest.forEach(hook => {\n sdkHooks.registerBeforeCreateRequestHook(hook)\n })\n }\n\n if (hooks?.beforeRequest) {\n hooks.beforeRequest.forEach(hook => {\n sdkHooks.registerBeforeRequestHook(hook)\n })\n }\n\n if (hooks?.afterSuccess) {\n hooks.afterSuccess.forEach(hook => {\n sdkHooks.registerAfterSuccessHook(hook)\n })\n }\n\n if (hooks?.afterError) {\n hooks.afterError.forEach(hook => {\n sdkHooks.registerAfterErrorHook(hook)\n })\n }\n\n if (!client._options.hooks) {\n client._options.hooks = sdkHooks\n }\n\n return client\n }, [url, headers, hooks])\n\n const queryClient = useMemo(() => {\n return queryClientFromProps ?? createSdkQueryClient()\n }, [queryClientFromProps])\n\n return (\n <QueryClientProvider client={queryClient}>\n <GustoEmbeddedProvider client={gustoClient}>{children}</GustoEmbeddedProvider>\n </QueryClientProvider>\n )\n}\n"],"names":["ApiProvider","url","headers","hooks","children","queryClientFromProps","gustoClient","useMemo","client","GustoEmbeddedCore","sdkHooks","NativeSDKHooks","apiVersionHook","defaultHeaderHook","context","request","headerValue","headerName","hook","queryClient","createSdkQueryClient","jsx","QueryClientProvider","GustoEmbeddedProvider"],"mappings":";;;;;;;;AA6CO,SAASA,EAAY;AAAA,EAC1B,KAAAC;AAAA,EACA,SAAAC;AAAA,EACA,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,aAAaC;AACf,GAAqB;AACnB,QAAMC,IAAcC,EAAQ,MAAM;AAChC,UAAMC,IAAS,IAAIC,EAAkB;AAAA,MACnC,WAAWR;AAAA,IAAA,CACZ,GAEKS,IAAWF,EAAO,SAAS,SAAS,IAAIG,EAAA;AAI9C,QAFAD,EAAS,0BAA0BE,CAAc,GAE7CV,GAAS;AACX,YAAMW,IAAuC;AAAA,QAC3C,eAAe,CAACC,GAASC,OACC,IAAI,QAAQb,CAAO,EAC3B,QAAQ,CAACc,GAAaC,MAAe;AACnD,UAAID,KACFD,EAAQ,QAAQ,IAAIE,GAAYD,CAAW;AAAA,QAE/C,CAAC,GACMD;AAAA,MACT;AAEF,MAAAL,EAAS,0BAA0BG,CAAiB;AAAA,IACtD;AAEA,WAAIV,GAAO,uBACTA,EAAM,oBAAoB,QAAQ,CAAAe,MAAQ;AACxC,MAAAR,EAAS,gCAAgCQ,CAAI;AAAA,IAC/C,CAAC,GAGCf,GAAO,iBACTA,EAAM,cAAc,QAAQ,CAAAe,MAAQ;AAClC,MAAAR,EAAS,0BAA0BQ,CAAI;AAAA,IACzC,CAAC,GAGCf,GAAO,gBACTA,EAAM,aAAa,QAAQ,CAAAe,MAAQ;AACjC,MAAAR,EAAS,yBAAyBQ,CAAI;AAAA,IACxC,CAAC,GAGCf,GAAO,cACTA,EAAM,WAAW,QAAQ,CAAAe,MAAQ;AAC/B,MAAAR,EAAS,uBAAuBQ,CAAI;AAAA,IACtC,CAAC,GAGEV,EAAO,SAAS,UACnBA,EAAO,SAAS,QAAQE,IAGnBF;AAAA,EACT,GAAG,CAACP,GAAKC,GAASC,CAAK,CAAC,GAElBgB,IAAcZ,EAAQ,MACnBF,KAAwBe,EAAA,GAC9B,CAACf,CAAoB,CAAC;AAEzB,SACE,gBAAAgB,EAACC,KAAoB,QAAQH,GAC3B,4BAACI,GAAA,EAAsB,QAAQjB,GAAc,UAAAF,EAAA,CAAS,EAAA,CACxD;AAEJ;"}
1
+ {"version":3,"file":"ApiProvider.js","sources":["../../../src/contexts/ApiProvider/ApiProvider.tsx"],"sourcesContent":["import { QueryClientProvider, type QueryClient } from '@tanstack/react-query'\nimport { GustoEmbeddedProvider } from '@gusto/embedded-api/react-query/_context'\nimport { GustoEmbeddedCore } from '@gusto/embedded-api/core'\nimport { SDKHooks as NativeSDKHooks } from '@gusto/embedded-api/hooks/hooks'\nimport { useMemo } from 'react'\nimport { apiVersionHook } from './apiVersionHook'\nimport { createSdkQueryClient } from './createSdkQueryClient'\nimport type { SDKHooks, BeforeRequestHook } from '@/types/hooks'\n\n/**\n * Props for {@link ApiProvider}.\n *\n * @public\n */\nexport interface ApiProviderProps {\n /** Base URL the SDK uses for all `@gusto/embedded-api-v-2026-02-01` requests. */\n url: string\n /** Default headers applied to every SDK request, in addition to the `X-Gusto-API-Version` header set automatically. */\n headers?: HeadersInit\n /** Lifecycle hooks for intercepting and modifying SDK requests and responses. */\n hooks?: SDKHooks\n /** Subtree that renders inside the API + React Query providers. */\n children: React.ReactNode\n /** Optional React Query client. When omitted, a client is created with the SDK's defaults (auto-invalidation on mutation success). */\n queryClient?: QueryClient\n}\n\n/**\n * Wires the `@gusto/embedded-api-v-2026-02-01` client and a React Query client into the React tree.\n *\n * @remarks\n * Registers the SDK's `X-Gusto-API-Version` header on every request, applies any default `headers`,\n * and registers user-supplied lifecycle hooks (`beforeCreateRequest`, `beforeRequest`, `afterSuccess`,\n * `afterError`). When no `queryClient` is supplied, one is created with the SDK's defaults so\n * successful mutations under the `['@gusto/embedded-api-v-2026-02-01']` key invalidate every SDK\n * query automatically. Partners who supply their own `QueryClient` are responsible for matching that\n * contract.\n *\n * Typically wrapped by {@link GustoProvider}; use directly only when composing the provider stack\n * manually.\n *\n * @param props - See {@link ApiProviderProps}.\n * @returns A React subtree wrapped in `QueryClientProvider` and the embedded API context.\n * @public\n */\nexport function ApiProvider({\n url,\n headers,\n hooks,\n children,\n queryClient: queryClientFromProps,\n}: ApiProviderProps) {\n const gustoClient = useMemo(() => {\n const client = new GustoEmbeddedCore({\n serverURL: url,\n })\n\n const sdkHooks = client._options.hooks || new NativeSDKHooks()\n\n sdkHooks.registerBeforeRequestHook(apiVersionHook)\n\n if (headers) {\n const defaultHeaderHook: BeforeRequestHook = {\n beforeRequest: (context, request) => {\n const headersInstance = new Headers(headers)\n headersInstance.forEach((headerValue, headerName) => {\n if (headerValue) {\n request.headers.set(headerName, headerValue)\n }\n })\n return request\n },\n }\n sdkHooks.registerBeforeRequestHook(defaultHeaderHook)\n }\n\n if (hooks?.beforeCreateRequest) {\n hooks.beforeCreateRequest.forEach(hook => {\n sdkHooks.registerBeforeCreateRequestHook(hook)\n })\n }\n\n if (hooks?.beforeRequest) {\n hooks.beforeRequest.forEach(hook => {\n sdkHooks.registerBeforeRequestHook(hook)\n })\n }\n\n if (hooks?.afterSuccess) {\n hooks.afterSuccess.forEach(hook => {\n sdkHooks.registerAfterSuccessHook(hook)\n })\n }\n\n if (hooks?.afterError) {\n hooks.afterError.forEach(hook => {\n sdkHooks.registerAfterErrorHook(hook)\n })\n }\n\n if (!client._options.hooks) {\n client._options.hooks = sdkHooks\n }\n\n return client\n }, [url, headers, hooks])\n\n const queryClient = useMemo(() => {\n return queryClientFromProps ?? createSdkQueryClient()\n }, [queryClientFromProps])\n\n return (\n <QueryClientProvider client={queryClient}>\n <GustoEmbeddedProvider client={gustoClient}>{children}</GustoEmbeddedProvider>\n </QueryClientProvider>\n )\n}\n"],"names":["ApiProvider","url","headers","hooks","children","queryClientFromProps","gustoClient","useMemo","client","GustoEmbeddedCore","sdkHooks","NativeSDKHooks","apiVersionHook","defaultHeaderHook","context","request","headerValue","headerName","hook","queryClient","createSdkQueryClient","jsx","QueryClientProvider","GustoEmbeddedProvider"],"mappings":";;;;;;;;AA6CO,SAASA,EAAY;AAAA,EAC1B,KAAAC;AAAA,EACA,SAAAC;AAAA,EACA,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,aAAaC;AACf,GAAqB;AACnB,QAAMC,IAAcC,EAAQ,MAAM;AAChC,UAAMC,IAAS,IAAIC,EAAkB;AAAA,MACnC,WAAWR;AAAA,IAAA,CACZ,GAEKS,IAAWF,EAAO,SAAS,SAAS,IAAIG,EAAA;AAI9C,QAFAD,EAAS,0BAA0BE,CAAc,GAE7CV,GAAS;AACX,YAAMW,IAAuC;AAAA,QAC3C,eAAe,CAACC,GAASC,OACC,IAAI,QAAQb,CAAO,EAC3B,QAAQ,CAACc,GAAaC,MAAe;AACnD,UAAID,KACFD,EAAQ,QAAQ,IAAIE,GAAYD,CAAW;AAAA,QAE/C,CAAC,GACMD;AAAA,MACT;AAEF,MAAAL,EAAS,0BAA0BG,CAAiB;AAAA,IACtD;AAEA,WAAIV,GAAO,uBACTA,EAAM,oBAAoB,QAAQ,CAAAe,MAAQ;AACxC,MAAAR,EAAS,gCAAgCQ,CAAI;AAAA,IAC/C,CAAC,GAGCf,GAAO,iBACTA,EAAM,cAAc,QAAQ,CAAAe,MAAQ;AAClC,MAAAR,EAAS,0BAA0BQ,CAAI;AAAA,IACzC,CAAC,GAGCf,GAAO,gBACTA,EAAM,aAAa,QAAQ,CAAAe,MAAQ;AACjC,MAAAR,EAAS,yBAAyBQ,CAAI;AAAA,IACxC,CAAC,GAGCf,GAAO,cACTA,EAAM,WAAW,QAAQ,CAAAe,MAAQ;AAC/B,MAAAR,EAAS,uBAAuBQ,CAAI;AAAA,IACtC,CAAC,GAGEV,EAAO,SAAS,UACnBA,EAAO,SAAS,QAAQE,IAGnBF;AAAA,EACT,GAAG,CAACP,GAAKC,GAASC,CAAK,CAAC,GAElBgB,IAAcZ,EAAQ,MACnBF,KAAwBe,EAAA,GAC9B,CAACf,CAAoB,CAAC;AAEzB,SACE,gBAAAgB,EAACC,KAAoB,QAAQH,GAC3B,4BAACI,GAAA,EAAsB,QAAQjB,GAAc,UAAAF,EAAA,CAAS,EAAA,CACxD;AAEJ;"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Single source of truth for the pinned Gusto Embedded API version.
3
+ *
4
+ * @remarks
5
+ * Bumping the API version is a two-line change: update {@link API_VERSION} here and
6
+ * repoint the `@gusto/embedded-api` alias target in `package.json`. Everything else —
7
+ * the `X-Gusto-API-Version` request header and every hand-written TanStack Query key —
8
+ * derives from this constant, so no per-file edits are required.
9
+ *
10
+ * @internal
11
+ */
12
+ export declare const API_VERSION = "2026-02-01";
13
+ /**
14
+ * TanStack Query namespace the embedded-api client prefixes onto every generated
15
+ * query and mutation key (segment 1 of every key it emits).
16
+ *
17
+ * @remarks
18
+ * Must equal the resolved package name so hand-written keys used for targeted
19
+ * invalidation match the library-generated ones. Derived from {@link API_VERSION}.
20
+ *
21
+ * @internal
22
+ */
23
+ export declare const API_QUERY_NAMESPACE: "@gusto/embedded-api-v-2026-02-01";
@@ -0,0 +1,6 @@
1
+ const e = "2026-02-01", o = `@gusto/embedded-api-v-${e}`;
2
+ export {
3
+ o as API_QUERY_NAMESPACE,
4
+ e as API_VERSION
5
+ };
6
+ //# sourceMappingURL=apiVersion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apiVersion.js","sources":["../../../src/contexts/ApiProvider/apiVersion.ts"],"sourcesContent":["/**\n * Single source of truth for the pinned Gusto Embedded API version.\n *\n * @remarks\n * Bumping the API version is a two-line change: update {@link API_VERSION} here and\n * repoint the `@gusto/embedded-api` alias target in `package.json`. Everything else —\n * the `X-Gusto-API-Version` request header and every hand-written TanStack Query key —\n * derives from this constant, so no per-file edits are required.\n *\n * @internal\n */\nexport const API_VERSION = '2026-02-01'\n\n/**\n * TanStack Query namespace the embedded-api client prefixes onto every generated\n * query and mutation key (segment 1 of every key it emits).\n *\n * @remarks\n * Must equal the resolved package name so hand-written keys used for targeted\n * invalidation match the library-generated ones. Derived from {@link API_VERSION}.\n *\n * @internal\n */\nexport const API_QUERY_NAMESPACE = `@gusto/embedded-api-v-${API_VERSION}` as const\n"],"names":["API_VERSION","API_QUERY_NAMESPACE"],"mappings":"AAWO,MAAMA,IAAc,cAYdC,IAAsB,yBAAyBD,CAAW;"}
@@ -1,5 +1,6 @@
1
- const o = "2026-02-01", s = {
2
- beforeRequest: (t, e) => (e.headers.set("X-Gusto-API-Version", o), e)
1
+ import { API_VERSION as e } from "./apiVersion.js";
2
+ const s = {
3
+ beforeRequest: (r, o) => (o.headers.set("X-Gusto-API-Version", e), o)
3
4
  };
4
5
  export {
5
6
  s as apiVersionHook
@@ -1 +1 @@
1
- {"version":3,"file":"apiVersionHook.js","sources":["../../../src/contexts/ApiProvider/apiVersionHook.ts"],"sourcesContent":["import type { BeforeRequestHook } from '@/types/hooks'\n\nconst CURRENT_API_VERSION = '2026-02-01'\n\n/** @internal */\nexport const apiVersionHook: BeforeRequestHook = {\n beforeRequest: (_context, request) => {\n request.headers.set('X-Gusto-API-Version', CURRENT_API_VERSION)\n return request\n },\n}\n"],"names":["CURRENT_API_VERSION","apiVersionHook","_context","request"],"mappings":"AAEA,MAAMA,IAAsB,cAGfC,IAAoC;AAAA,EAC/C,eAAe,CAACC,GAAUC,OACxBA,EAAQ,QAAQ,IAAI,uBAAuBH,CAAmB,GACvDG;AAEX;"}
1
+ {"version":3,"file":"apiVersionHook.js","sources":["../../../src/contexts/ApiProvider/apiVersionHook.ts"],"sourcesContent":["import { API_VERSION } from './apiVersion'\nimport type { BeforeRequestHook } from '@/types/hooks'\n\n/** @internal */\nexport const apiVersionHook: BeforeRequestHook = {\n beforeRequest: (_context, request) => {\n request.headers.set('X-Gusto-API-Version', API_VERSION)\n return request\n },\n}\n"],"names":["apiVersionHook","_context","request","API_VERSION"],"mappings":";AAIO,MAAMA,IAAoC;AAAA,EAC/C,eAAe,CAACC,GAAUC,OACxBA,EAAQ,QAAQ,IAAI,uBAAuBC,CAAW,GAC/CD;AAEX;"}
@@ -1,6 +1,6 @@
1
1
  import { QueryClient } from '@tanstack/react-query';
2
2
  /**
3
- * Creates a `QueryClient` pre-configured with the SDK's defaults for queries and mutations under the `['@gusto/embedded-api-v-2026-02-01']` key.
3
+ * Creates a `QueryClient` pre-configured with the SDK's defaults for queries and mutations under the {@link API_QUERY_NAMESPACE} key.
4
4
  *
5
5
  * @remarks
6
6
  * Defaults applied:
@@ -1,14 +1,15 @@
1
- import { QueryClient as t } from "@tanstack/react-query";
2
- function a() {
3
- const e = new t();
4
- return e.setQueryDefaults(["@gusto/embedded-api-v-2026-02-01"], { retry: !1 }), e.setMutationDefaults(["@gusto/embedded-api-v-2026-02-01"], {
1
+ import { QueryClient as r } from "@tanstack/react-query";
2
+ import { API_QUERY_NAMESPACE as t } from "./apiVersion.js";
3
+ function i() {
4
+ const e = new r();
5
+ return e.setQueryDefaults([t], { retry: !1 }), e.setMutationDefaults([t], {
5
6
  retry: !1,
6
7
  onSuccess: async () => {
7
- await e.invalidateQueries({ queryKey: ["@gusto/embedded-api-v-2026-02-01"] });
8
+ await e.invalidateQueries({ queryKey: [t] });
8
9
  }
9
10
  }), e;
10
11
  }
11
12
  export {
12
- a as createSdkQueryClient
13
+ i as createSdkQueryClient
13
14
  };
14
15
  //# sourceMappingURL=createSdkQueryClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"createSdkQueryClient.js","sources":["../../../src/contexts/ApiProvider/createSdkQueryClient.ts"],"sourcesContent":["import { QueryClient } from '@tanstack/react-query'\n\n/**\n * Creates a `QueryClient` pre-configured with the SDK's defaults for queries and mutations under the `['@gusto/embedded-api-v-2026-02-01']` key.\n *\n * @remarks\n * Defaults applied:\n * - `retry: false` on both queries and mutations.\n * - On any successful mutation, every SDK query under the namespace is invalidated so the next read refetches fresh data.\n *\n * {@link ApiProvider} uses this when no `queryClient` prop is supplied, and `GustoTestProvider` uses it so tests faithfully replicate production\n * mutation/refetch behavior. Partners who supply their own `QueryClient` to {@link ApiProvider} are responsible for configuring equivalent\n * defaults if they want mutations to invalidate cached reads.\n *\n * @returns A new `QueryClient` with the SDK's query and mutation defaults applied.\n * @internal\n */\nexport function createSdkQueryClient(): QueryClient {\n const client = new QueryClient()\n client.setQueryDefaults(['@gusto/embedded-api-v-2026-02-01'], { retry: false })\n client.setMutationDefaults(['@gusto/embedded-api-v-2026-02-01'], {\n retry: false,\n onSuccess: async () => {\n await client.invalidateQueries({ queryKey: ['@gusto/embedded-api-v-2026-02-01'] })\n },\n })\n return client\n}\n"],"names":["createSdkQueryClient","client","QueryClient"],"mappings":";AAiBO,SAASA,IAAoC;AAClD,QAAMC,IAAS,IAAIC,EAAA;AACnB,SAAAD,EAAO,iBAAiB,CAAC,kCAAkC,GAAG,EAAE,OAAO,IAAO,GAC9EA,EAAO,oBAAoB,CAAC,kCAAkC,GAAG;AAAA,IAC/D,OAAO;AAAA,IACP,WAAW,YAAY;AACrB,YAAMA,EAAO,kBAAkB,EAAE,UAAU,CAAC,kCAAkC,GAAG;AAAA,IACnF;AAAA,EAAA,CACD,GACMA;AACT;"}
1
+ {"version":3,"file":"createSdkQueryClient.js","sources":["../../../src/contexts/ApiProvider/createSdkQueryClient.ts"],"sourcesContent":["import { QueryClient } from '@tanstack/react-query'\nimport { API_QUERY_NAMESPACE } from './apiVersion'\n\n/**\n * Creates a `QueryClient` pre-configured with the SDK's defaults for queries and mutations under the {@link API_QUERY_NAMESPACE} key.\n *\n * @remarks\n * Defaults applied:\n * - `retry: false` on both queries and mutations.\n * - On any successful mutation, every SDK query under the namespace is invalidated so the next read refetches fresh data.\n *\n * {@link ApiProvider} uses this when no `queryClient` prop is supplied, and `GustoTestProvider` uses it so tests faithfully replicate production\n * mutation/refetch behavior. Partners who supply their own `QueryClient` to {@link ApiProvider} are responsible for configuring equivalent\n * defaults if they want mutations to invalidate cached reads.\n *\n * @returns A new `QueryClient` with the SDK's query and mutation defaults applied.\n * @internal\n */\nexport function createSdkQueryClient(): QueryClient {\n const client = new QueryClient()\n client.setQueryDefaults([API_QUERY_NAMESPACE], { retry: false })\n client.setMutationDefaults([API_QUERY_NAMESPACE], {\n retry: false,\n onSuccess: async () => {\n await client.invalidateQueries({ queryKey: [API_QUERY_NAMESPACE] })\n },\n })\n return client\n}\n"],"names":["createSdkQueryClient","client","QueryClient","API_QUERY_NAMESPACE"],"mappings":";;AAkBO,SAASA,IAAoC;AAClD,QAAMC,IAAS,IAAIC,EAAA;AACnB,SAAAD,EAAO,iBAAiB,CAACE,CAAmB,GAAG,EAAE,OAAO,IAAO,GAC/DF,EAAO,oBAAoB,CAACE,CAAmB,GAAG;AAAA,IAChD,OAAO;AAAA,IACP,WAAW,YAAY;AACrB,YAAMF,EAAO,kBAAkB,EAAE,UAAU,CAACE,CAAmB,GAAG;AAAA,IACpE;AAAA,EAAA,CACD,GACMF;AACT;"}
@@ -1,4 +1,4 @@
1
- import { EntityErrorObject } from '@gusto/embedded-api-v-2026-02-01/models/components/entityerrorobject';
1
+ import { EntityErrorObject } from '@gusto/embedded-api/models/components/entityerrorobject';
2
2
  /**
3
3
  * Renders each error in the list that carries a `message` as a `<span>` keyed by `errorKey`.
4
4
  *
@@ -1 +1 @@
1
- {"version":3,"file":"apiErrorToList.js","sources":["../../src/helpers/apiErrorToList.tsx"],"sourcesContent":["import type { EntityErrorObject } from '@gusto/embedded-api-v-2026-02-01/models/components/entityerrorobject'\nimport { snakeCaseToCamelCase } from './formattedStrings'\n\n/**\n * Renders each error in the list that carries a `message` as a `<span>` keyed by `errorKey`.\n *\n * @param errorList - Flat list of entity errors returned by the API.\n * @returns React nodes for messaged entries; entries without a message yield `null`.\n * @internal\n */\nexport const renderErrorList = (errorList: Array<EntityErrorObject>): React.ReactNode[] => {\n return errorList.map(errorFromList => {\n if (errorFromList.message) {\n return <span key={errorFromList.errorKey}>{errorFromList.message}</span>\n }\n return null\n })\n}\n/**\n * Recursively flattens a nested API error tree into a list keyed for form-field display.\n *\n * @remarks Builds dot-separated `errorKey` paths from nested errors and converts each segment\n * from snake_case to camelCase so the resulting keys match react-hook-form field names.\n * `metadata.key` is used as the path segment for nested errors when present; `metadata.state`\n * is a special case for state-tax validation errors, falling back to the node's own `errorKey`.\n *\n * @param error - The root entity error to flatten.\n * @param parentKey - Accumulated dot-path prefix used during recursion. Omit at the top level.\n * @returns A flat list of `{ errorKey, message, category }` entries ready to bind to form fields.\n * @internal\n */\nexport const getFieldErrors = (\n error: EntityErrorObject,\n parentKey?: string,\n): Array<EntityErrorObject> => {\n const keyPrefix = parentKey ? parentKey + '.' : ''\n if (error.category === 'invalid_attribute_value' || error.category === 'invalid_operation') {\n return [\n {\n errorKey: snakeCaseToCamelCase(keyPrefix + error.errorKey),\n message: error.message ?? '',\n category: error.category,\n },\n ]\n }\n if (error.category === 'nested_errors' && error.errors !== undefined) {\n //TODO: clean this up once Metadata type is fixed in openapi spec\n let keySuffix = ''\n //@ts-expect-error: Metadata in speakeasy is incorrectly typed\n if (error.metadata?.key && typeof error.metadata.key === 'string') {\n //@ts-expect-error: Metadata in speakeasy is incorrectly typed\n keySuffix = error.metadata.key as string\n //@ts-expect-error: Metadata in speakeasy is incorrectly typed\n } else if (error.metadata?.state && typeof error.metadata.state === 'string') {\n //@ts-expect-error: Metadata in speakeasy is incorrectly typed\n keySuffix = error.metadata.state as string\n } else if (error.errorKey) {\n keySuffix = error.errorKey\n }\n return error.errors.flatMap(err => getFieldErrors(err, keyPrefix + keySuffix))\n }\n if (error.message) {\n return [\n {\n errorKey: snakeCaseToCamelCase(keyPrefix + error.errorKey),\n message: error.message,\n category: error.category,\n },\n ]\n }\n return []\n}\n"],"names":["renderErrorList","errorList","errorFromList","jsx","getFieldErrors","error","parentKey","keyPrefix","snakeCaseToCamelCase","keySuffix","err"],"mappings":";;AAUO,MAAMA,IAAkB,CAACC,MACvBA,EAAU,IAAI,CAAAC,MACfA,EAAc,UACT,gBAAAC,EAAC,QAAA,EAAmC,UAAAD,EAAc,QAAA,GAAvCA,EAAc,QAAiC,IAE5D,IACR,GAeUE,IAAiB,CAC5BC,GACAC,MAC6B;AAC7B,QAAMC,IAAYD,IAAYA,IAAY,MAAM;AAChD,MAAID,EAAM,aAAa,6BAA6BA,EAAM,aAAa;AACrE,WAAO;AAAA,MACL;AAAA,QACE,UAAUG,EAAqBD,IAAYF,EAAM,QAAQ;AAAA,QACzD,SAASA,EAAM,WAAW;AAAA,QAC1B,UAAUA,EAAM;AAAA,MAAA;AAAA,IAClB;AAGJ,MAAIA,EAAM,aAAa,mBAAmBA,EAAM,WAAW,QAAW;AAEpE,QAAII,IAAY;AAEhB,WAAIJ,EAAM,UAAU,OAAO,OAAOA,EAAM,SAAS,OAAQ,WAEvDI,IAAYJ,EAAM,SAAS,MAElBA,EAAM,UAAU,SAAS,OAAOA,EAAM,SAAS,SAAU,WAElEI,IAAYJ,EAAM,SAAS,QAClBA,EAAM,aACfI,IAAYJ,EAAM,WAEbA,EAAM,OAAO,QAAQ,CAAAK,MAAON,EAAeM,GAAKH,IAAYE,CAAS,CAAC;AAAA,EAC/E;AACA,SAAIJ,EAAM,UACD;AAAA,IACL;AAAA,MACE,UAAUG,EAAqBD,IAAYF,EAAM,QAAQ;AAAA,MACzD,SAASA,EAAM;AAAA,MACf,UAAUA,EAAM;AAAA,IAAA;AAAA,EAClB,IAGG,CAAA;AACT;"}
1
+ {"version":3,"file":"apiErrorToList.js","sources":["../../src/helpers/apiErrorToList.tsx"],"sourcesContent":["import type { EntityErrorObject } from '@gusto/embedded-api/models/components/entityerrorobject'\nimport { snakeCaseToCamelCase } from './formattedStrings'\n\n/**\n * Renders each error in the list that carries a `message` as a `<span>` keyed by `errorKey`.\n *\n * @param errorList - Flat list of entity errors returned by the API.\n * @returns React nodes for messaged entries; entries without a message yield `null`.\n * @internal\n */\nexport const renderErrorList = (errorList: Array<EntityErrorObject>): React.ReactNode[] => {\n return errorList.map(errorFromList => {\n if (errorFromList.message) {\n return <span key={errorFromList.errorKey}>{errorFromList.message}</span>\n }\n return null\n })\n}\n/**\n * Recursively flattens a nested API error tree into a list keyed for form-field display.\n *\n * @remarks Builds dot-separated `errorKey` paths from nested errors and converts each segment\n * from snake_case to camelCase so the resulting keys match react-hook-form field names.\n * `metadata.key` is used as the path segment for nested errors when present; `metadata.state`\n * is a special case for state-tax validation errors, falling back to the node's own `errorKey`.\n *\n * @param error - The root entity error to flatten.\n * @param parentKey - Accumulated dot-path prefix used during recursion. Omit at the top level.\n * @returns A flat list of `{ errorKey, message, category }` entries ready to bind to form fields.\n * @internal\n */\nexport const getFieldErrors = (\n error: EntityErrorObject,\n parentKey?: string,\n): Array<EntityErrorObject> => {\n const keyPrefix = parentKey ? parentKey + '.' : ''\n if (error.category === 'invalid_attribute_value' || error.category === 'invalid_operation') {\n return [\n {\n errorKey: snakeCaseToCamelCase(keyPrefix + error.errorKey),\n message: error.message ?? '',\n category: error.category,\n },\n ]\n }\n if (error.category === 'nested_errors' && error.errors !== undefined) {\n //TODO: clean this up once Metadata type is fixed in openapi spec\n let keySuffix = ''\n //@ts-expect-error: Metadata in speakeasy is incorrectly typed\n if (error.metadata?.key && typeof error.metadata.key === 'string') {\n //@ts-expect-error: Metadata in speakeasy is incorrectly typed\n keySuffix = error.metadata.key as string\n //@ts-expect-error: Metadata in speakeasy is incorrectly typed\n } else if (error.metadata?.state && typeof error.metadata.state === 'string') {\n //@ts-expect-error: Metadata in speakeasy is incorrectly typed\n keySuffix = error.metadata.state as string\n } else if (error.errorKey) {\n keySuffix = error.errorKey\n }\n return error.errors.flatMap(err => getFieldErrors(err, keyPrefix + keySuffix))\n }\n if (error.message) {\n return [\n {\n errorKey: snakeCaseToCamelCase(keyPrefix + error.errorKey),\n message: error.message,\n category: error.category,\n },\n ]\n }\n return []\n}\n"],"names":["renderErrorList","errorList","errorFromList","jsx","getFieldErrors","error","parentKey","keyPrefix","snakeCaseToCamelCase","keySuffix","err"],"mappings":";;AAUO,MAAMA,IAAkB,CAACC,MACvBA,EAAU,IAAI,CAAAC,MACfA,EAAc,UACT,gBAAAC,EAAC,QAAA,EAAmC,UAAAD,EAAc,QAAA,GAAvCA,EAAc,QAAiC,IAE5D,IACR,GAeUE,IAAiB,CAC5BC,GACAC,MAC6B;AAC7B,QAAMC,IAAYD,IAAYA,IAAY,MAAM;AAChD,MAAID,EAAM,aAAa,6BAA6BA,EAAM,aAAa;AACrE,WAAO;AAAA,MACL;AAAA,QACE,UAAUG,EAAqBD,IAAYF,EAAM,QAAQ;AAAA,QACzD,SAASA,EAAM,WAAW;AAAA,QAC1B,UAAUA,EAAM;AAAA,MAAA;AAAA,IAClB;AAGJ,MAAIA,EAAM,aAAa,mBAAmBA,EAAM,WAAW,QAAW;AAEpE,QAAII,IAAY;AAEhB,WAAIJ,EAAM,UAAU,OAAO,OAAOA,EAAM,SAAS,OAAQ,WAEvDI,IAAYJ,EAAM,SAAS,MAElBA,EAAM,UAAU,SAAS,OAAOA,EAAM,SAAS,SAAU,WAElEI,IAAYJ,EAAM,SAAS,QAClBA,EAAM,aACfI,IAAYJ,EAAM,WAEbA,EAAM,OAAO,QAAQ,CAAAK,MAAON,EAAeM,GAAKH,IAAYE,CAAS,CAAC;AAAA,EAC/E;AACA,SAAIJ,EAAM,UACD;AAAA,IACL;AAAA,MACE,UAAUG,EAAqBD,IAAYF,EAAM,QAAQ;AAAA,MACzD,SAASA,EAAM;AAAA,MACf,UAAUA,EAAM;AAAA,IAAA;AAAA,EAClB,IAGG,CAAA;AACT;"}
@@ -1,5 +1,5 @@
1
- import { Location } from '@gusto/embedded-api-v-2026-02-01/models/components/location';
2
- import { EmployeeAddress } from '@gusto/embedded-api-v-2026-02-01/models/components/employeeaddress';
1
+ import { Location } from '@gusto/embedded-api/models/components/location';
2
+ import { EmployeeAddress } from '@gusto/embedded-api/models/components/employeeaddress';
3
3
  import { TFunction } from 'i18next';
4
4
  /**
5
5
  * Joins a first and last name into a single capitalized display string.