@gusto/embedded-react-sdk 0.36.0 → 0.37.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (448) hide show
  1. package/CHANGELOG.md +58 -0
  2. package/README.md +6 -0
  3. package/dist/UNSTABLE_Hooks.d.ts +1 -1
  4. package/dist/UNSTABLE_Hooks.js +50 -6
  5. package/dist/UNSTABLE_Hooks.js.map +1 -1
  6. package/dist/components/Base/Base.d.ts +8 -9
  7. package/dist/components/Base/Base.js +123 -101
  8. package/dist/components/Base/Base.js.map +1 -1
  9. package/dist/components/Base/index.d.ts +1 -1
  10. package/dist/components/Base/useBase.d.ts +3 -7
  11. package/dist/components/Base/useBase.js.map +1 -1
  12. package/dist/components/Base/useBaseSubmit.d.ts +3 -5
  13. package/dist/components/Base/useBaseSubmit.js +27 -50
  14. package/dist/components/Base/useBaseSubmit.js.map +1 -1
  15. package/dist/components/Common/Fields/CheckboxField/CheckboxField.d.ts +2 -0
  16. package/dist/components/Common/Fields/CheckboxField/CheckboxField.js +17 -16
  17. package/dist/components/Common/Fields/CheckboxField/CheckboxField.js.map +1 -1
  18. package/dist/components/Common/Fields/DatePickerField/DatePickerField.d.ts +5 -3
  19. package/dist/components/Common/Fields/DatePickerField/DatePickerField.js +46 -36
  20. package/dist/components/Common/Fields/DatePickerField/DatePickerField.js.map +1 -1
  21. package/dist/components/Common/Fields/NumberInputField/NumberInputField.d.ts +2 -0
  22. package/dist/components/Common/Fields/NumberInputField/NumberInputField.js +21 -20
  23. package/dist/components/Common/Fields/NumberInputField/NumberInputField.js.map +1 -1
  24. package/dist/components/Common/Fields/RadioGroupField/RadioGroupField.d.ts +3 -1
  25. package/dist/components/Common/Fields/RadioGroupField/RadioGroupField.js +20 -19
  26. package/dist/components/Common/Fields/RadioGroupField/RadioGroupField.js.map +1 -1
  27. package/dist/components/Common/Fields/SelectField/SelectField.d.ts +3 -1
  28. package/dist/components/Common/Fields/SelectField/SelectField.js +19 -18
  29. package/dist/components/Common/Fields/SelectField/SelectField.js.map +1 -1
  30. package/dist/components/Common/Fields/SwitchField/SwitchField.d.ts +2 -0
  31. package/dist/components/Common/Fields/SwitchField/SwitchField.js +19 -18
  32. package/dist/components/Common/Fields/SwitchField/SwitchField.js.map +1 -1
  33. package/dist/components/Common/Fields/TextInputField/TextInputField.d.ts +2 -0
  34. package/dist/components/Common/Fields/TextInputField/TextInputField.js +10 -9
  35. package/dist/components/Common/Fields/TextInputField/TextInputField.js.map +1 -1
  36. package/dist/components/Common/UI/Breadcrumbs/Breadcrumbs.js +1 -1
  37. package/dist/components/Common/UI/DescriptionList/DescriptionList.module.scss.js +2 -2
  38. package/dist/components/Common/UI/FileInput/FileInput.js +1 -1
  39. package/dist/components/Common/UI/ProgressBar/ProgressBar.js +4 -4
  40. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +8 -7
  41. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
  42. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +8 -7
  43. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
  44. package/dist/components/Company/AssignSignatory/useAssignSignatory.js +10 -9
  45. package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
  46. package/dist/components/Company/BankAccount/BankAccountForm/context.js +8 -7
  47. package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
  48. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +8 -7
  49. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  50. package/dist/components/Company/DocumentSigner/SignatureForm/useSignatureForm.js +8 -7
  51. package/dist/components/Company/DocumentSigner/SignatureForm/useSignatureForm.js.map +1 -1
  52. package/dist/components/Company/FederalTaxes/useFederalTaxes.js +13 -12
  53. package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
  54. package/dist/components/Company/Industry/Context.js +11 -10
  55. package/dist/components/Company/Industry/Context.js.map +1 -1
  56. package/dist/components/Company/Locations/LocationForm/useLocationForm.js +8 -7
  57. package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
  58. package/dist/components/Company/Locations/LocationsList/useLocationsList.js +8 -7
  59. package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
  60. package/dist/components/Company/OnboardingOverview/context.js +8 -7
  61. package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
  62. package/dist/components/Company/PaySchedule/PaySchedule.js +60 -60
  63. package/dist/components/Company/PaySchedule/PaySchedule.js.map +1 -1
  64. package/dist/components/Company/PaySchedule/usePaySchedule.js +10 -9
  65. package/dist/components/Company/PaySchedule/usePaySchedule.js.map +1 -1
  66. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +8 -7
  67. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
  68. package/dist/components/Company/StateTaxes/StateTaxesList/context.js +8 -7
  69. package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
  70. package/dist/components/Contractor/Address/useAddress.js +10 -9
  71. package/dist/components/Contractor/Address/useAddress.js.map +1 -1
  72. package/dist/components/Contractor/Profile/ContractorProfileForm.js +15 -15
  73. package/dist/components/Contractor/Profile/useContractorProfile.js +41 -38
  74. package/dist/components/Contractor/Profile/useContractorProfile.js.map +1 -1
  75. package/dist/components/Employee/Deductions/DeductionsForm/ChildSupportForm.js +7 -6
  76. package/dist/components/Employee/Deductions/DeductionsForm/ChildSupportForm.js.map +1 -1
  77. package/dist/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.js +14 -13
  78. package/dist/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.js.map +1 -1
  79. package/dist/components/Employee/Deductions/DeductionsForm/GarnishmentForm.js +7 -6
  80. package/dist/components/Employee/Deductions/DeductionsForm/GarnishmentForm.js.map +1 -1
  81. package/dist/components/Employee/DocumentSigner/DocumentList/useDocumentList.js +8 -7
  82. package/dist/components/Employee/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  83. package/dist/components/Employee/DocumentSigner/SignatureForm/useSignatureForm.js +8 -7
  84. package/dist/components/Employee/DocumentSigner/SignatureForm/useSignatureForm.js.map +1 -1
  85. package/dist/components/Employee/EmployeeList/useEmployeeList.js +8 -7
  86. package/dist/components/Employee/EmployeeList/useEmployeeList.js.map +1 -1
  87. package/dist/components/Employee/FederalTaxes/FederalTaxes.js +42 -42
  88. package/dist/components/Employee/FederalTaxes/FederalTaxes.js.map +1 -1
  89. package/dist/components/Employee/FederalTaxes/useFederalTaxes.js +8 -7
  90. package/dist/components/Employee/FederalTaxes/useFederalTaxes.js.map +1 -1
  91. package/dist/components/Employee/PaymentMethod/usePaymentMethod.js +10 -9
  92. package/dist/components/Employee/PaymentMethod/usePaymentMethod.js.map +1 -1
  93. package/dist/components/Employee/Profile/HomeAddress.d.ts +3 -3
  94. package/dist/components/Employee/Profile/HomeAddress.js +38 -36
  95. package/dist/components/Employee/Profile/HomeAddress.js.map +1 -1
  96. package/dist/components/Employee/Profile/Profile.js +30 -29
  97. package/dist/components/Employee/Profile/Profile.js.map +1 -1
  98. package/dist/components/Employee/Profile/useProfile.js +8 -7
  99. package/dist/components/Employee/Profile/useProfile.js.map +1 -1
  100. package/dist/components/Employee/StateTaxes/StateTaxes.js +50 -50
  101. package/dist/components/Employee/StateTaxes/StateTaxes.js.map +1 -1
  102. package/dist/components/Employee/StateTaxes/useStateTaxes.js +8 -7
  103. package/dist/components/Employee/StateTaxes/useStateTaxes.js.map +1 -1
  104. package/dist/components/Employee/Taxes/Taxes.js +53 -53
  105. package/dist/components/Employee/Taxes/Taxes.js.map +1 -1
  106. package/dist/components/Employee/Taxes/useTaxes.js +8 -7
  107. package/dist/components/Employee/Taxes/useTaxes.js.map +1 -1
  108. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.d.ts +11 -0
  109. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js +123 -0
  110. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js.map +1 -0
  111. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.d.ts +11 -0
  112. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.js +92 -0
  113. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.js.map +1 -0
  114. package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlow.d.ts +2 -0
  115. package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlow.js +30 -0
  116. package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlow.js.map +1 -0
  117. package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlowComponents.d.ts +23 -0
  118. package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlowComponents.js +72 -0
  119. package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlowComponents.js.map +1 -0
  120. package/dist/components/Employee/Terminations/TerminationFlow/index.d.ts +3 -0
  121. package/dist/components/Employee/Terminations/TerminationFlow/terminationStateMachine.d.ts +7 -0
  122. package/dist/components/Employee/Terminations/TerminationFlow/terminationStateMachine.js +165 -0
  123. package/dist/components/Employee/Terminations/TerminationFlow/terminationStateMachine.js.map +1 -0
  124. package/dist/components/Employee/Terminations/TerminationFlow/terminationStateMachine.test.d.ts +1 -0
  125. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummary.d.ts +9 -0
  126. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummary.js +86 -0
  127. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummary.js.map +1 -0
  128. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.d.ts +20 -0
  129. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.js +103 -0
  130. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.js.map +1 -0
  131. package/dist/components/Employee/Terminations/TerminationsData.d.ts +6 -0
  132. package/dist/components/Employee/Terminations/index.d.ts +8 -0
  133. package/dist/components/Employee/Terminations/types.d.ts +1 -0
  134. package/dist/components/Employee/index.d.ts +7 -0
  135. package/dist/components/Employee/index.js +34 -28
  136. package/dist/components/Employee/index.js.map +1 -1
  137. package/dist/components/InformationRequests/InformationRequests.js +31 -31
  138. package/dist/components/InformationRequests/InformationRequests.js.map +1 -1
  139. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.js +41 -41
  140. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.js.map +1 -1
  141. package/dist/components/Payroll/Dismissal/DismissalFlow.d.ts +2 -0
  142. package/dist/components/Payroll/Dismissal/DismissalFlow.js +32 -0
  143. package/dist/components/Payroll/Dismissal/DismissalFlow.js.map +1 -0
  144. package/dist/components/Payroll/Dismissal/DismissalFlowComponents.d.ts +16 -0
  145. package/dist/components/Payroll/Dismissal/DismissalFlowComponents.js +52 -0
  146. package/dist/components/Payroll/Dismissal/DismissalFlowComponents.js.map +1 -0
  147. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelection.d.ts +6 -0
  148. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelection.js +69 -0
  149. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelection.js.map +1 -0
  150. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.d.ts +9 -0
  151. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.js +53 -0
  152. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.js.map +1 -0
  153. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/index.d.ts +3 -0
  154. package/dist/components/Payroll/Dismissal/dismissalStateMachine.d.ts +6 -0
  155. package/dist/components/Payroll/Dismissal/dismissalStateMachine.js +51 -0
  156. package/dist/components/Payroll/Dismissal/dismissalStateMachine.js.map +1 -0
  157. package/dist/components/Payroll/Dismissal/dismissalStateMachine.test.d.ts +1 -0
  158. package/dist/components/Payroll/Dismissal/index.d.ts +3 -0
  159. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js +18 -15
  160. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js.map +1 -1
  161. package/dist/components/Payroll/OffCycle/OffCycleFlow.d.ts +1 -1
  162. package/dist/components/Payroll/OffCycle/OffCycleFlow.js +19 -18
  163. package/dist/components/Payroll/OffCycle/OffCycleFlow.js.map +1 -1
  164. package/dist/components/Payroll/OffCycle/OffCycleFlowComponents.d.ts +3 -0
  165. package/dist/components/Payroll/OffCycle/OffCycleFlowComponents.js +32 -24
  166. package/dist/components/Payroll/OffCycle/OffCycleFlowComponents.js.map +1 -1
  167. package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js +45 -45
  168. package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js.map +1 -1
  169. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.d.ts +1 -1
  170. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.js +75 -66
  171. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.js.map +1 -1
  172. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.module.scss.js +8 -0
  173. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.module.scss.js.map +1 -0
  174. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationTypes.d.ts +0 -1
  175. package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormPresentation.module.scss.js +4 -4
  176. package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormTypes.js +2 -2
  177. package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormTypes.js.map +1 -1
  178. package/dist/components/Payroll/OffCyclePayPeriodDateForm/useOffCyclePayPeriodDateValidation.d.ts +1 -0
  179. package/dist/components/Payroll/OffCyclePayPeriodDateForm/useOffCyclePayPeriodDateValidation.js +1 -0
  180. package/dist/components/Payroll/OffCyclePayPeriodDateForm/useOffCyclePayPeriodDateValidation.js.map +1 -1
  181. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js +186 -159
  182. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js.map +1 -1
  183. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.d.ts +3 -3
  184. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js +69 -69
  185. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js.map +1 -1
  186. package/dist/components/Payroll/PayrollConfiguration/grossUpHelpers.d.ts +3 -2
  187. package/dist/components/Payroll/PayrollConfiguration/grossUpHelpers.js +8 -8
  188. package/dist/components/Payroll/PayrollConfiguration/grossUpHelpers.js.map +1 -1
  189. package/dist/components/Payroll/PayrollConfiguration/usePayrollConfigurationData.d.ts +5 -3
  190. package/dist/components/Payroll/PayrollConfiguration/usePayrollConfigurationData.js +76 -70
  191. package/dist/components/Payroll/PayrollConfiguration/usePayrollConfigurationData.js.map +1 -1
  192. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js +47 -42
  193. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js.map +1 -1
  194. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.d.ts +4 -2
  195. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js +235 -196
  196. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js.map +1 -1
  197. package/dist/components/Payroll/PayrollFlow/OffCycleFlowContextual.d.ts +1 -0
  198. package/dist/components/Payroll/PayrollFlow/OffCycleFlowContextual.js +12 -0
  199. package/dist/components/Payroll/PayrollFlow/OffCycleFlowContextual.js.map +1 -0
  200. package/dist/components/Payroll/PayrollFlow/PayrollFlowComponents.d.ts +3 -0
  201. package/dist/components/Payroll/PayrollFlow/PayrollFlowComponents.js.map +1 -1
  202. package/dist/components/Payroll/PayrollFlow/TransitionFlowContextual.d.ts +1 -0
  203. package/dist/components/Payroll/PayrollFlow/TransitionFlowContextual.js +21 -0
  204. package/dist/components/Payroll/PayrollFlow/TransitionFlowContextual.js.map +1 -0
  205. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.d.ts +2 -0
  206. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js +95 -64
  207. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js.map +1 -1
  208. package/dist/components/Payroll/PayrollHistory/PayrollHistory.js +53 -47
  209. package/dist/components/Payroll/PayrollHistory/PayrollHistory.js.map +1 -1
  210. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js +8 -8
  211. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js.map +1 -1
  212. package/dist/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.js +25 -23
  213. package/dist/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.js.map +1 -1
  214. package/dist/components/Payroll/PayrollList/PayrollList.js +40 -32
  215. package/dist/components/Payroll/PayrollList/PayrollList.js.map +1 -1
  216. package/dist/components/Payroll/PayrollList/PayrollListPresentation.d.ts +2 -1
  217. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js +110 -93
  218. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js.map +1 -1
  219. package/dist/components/Payroll/PayrollList/PayrollListPresentation.module.scss.js +12 -8
  220. package/dist/components/Payroll/PayrollList/PayrollListPresentation.module.scss.js.map +1 -1
  221. package/dist/components/Payroll/Transition/TransitionFlow.d.ts +2 -0
  222. package/dist/components/Payroll/Transition/TransitionFlow.js +38 -0
  223. package/dist/components/Payroll/Transition/TransitionFlow.js.map +1 -0
  224. package/dist/components/Payroll/Transition/TransitionFlowComponents.d.ts +19 -0
  225. package/dist/components/Payroll/Transition/TransitionFlowComponents.js +54 -0
  226. package/dist/components/Payroll/Transition/TransitionFlowComponents.js.map +1 -0
  227. package/dist/components/Payroll/Transition/index.d.ts +3 -0
  228. package/dist/components/Payroll/Transition/transitionStateMachine.d.ts +6 -0
  229. package/dist/components/Payroll/Transition/transitionStateMachine.js +58 -0
  230. package/dist/components/Payroll/Transition/transitionStateMachine.js.map +1 -0
  231. package/dist/components/Payroll/Transition/transitionStateMachine.test.d.ts +1 -0
  232. package/dist/components/Payroll/TransitionCreation/TransitionCreation.d.ts +2 -0
  233. package/dist/components/Payroll/TransitionCreation/TransitionCreation.js +92 -0
  234. package/dist/components/Payroll/TransitionCreation/TransitionCreation.js.map +1 -0
  235. package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.d.ts +2 -0
  236. package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.js +111 -0
  237. package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.js.map +1 -0
  238. package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.module.scss.js +8 -0
  239. package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.module.scss.js.map +1 -0
  240. package/dist/components/Payroll/TransitionCreation/TransitionCreationTypes.d.ts +28 -0
  241. package/dist/components/Payroll/TransitionCreation/TransitionCreationTypes.js +21 -0
  242. package/dist/components/Payroll/TransitionCreation/TransitionCreationTypes.js.map +1 -0
  243. package/dist/components/Payroll/TransitionCreation/index.d.ts +3 -0
  244. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlert.d.ts +8 -0
  245. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlert.js +83 -0
  246. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlert.js.map +1 -0
  247. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlertPresentation.d.ts +16 -0
  248. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlertPresentation.js +100 -0
  249. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlertPresentation.js.map +1 -0
  250. package/dist/components/Payroll/TransitionPayrollAlert/index.d.ts +2 -0
  251. package/dist/components/Payroll/helpers.d.ts +2 -1
  252. package/dist/components/Payroll/helpers.js +98 -87
  253. package/dist/components/Payroll/helpers.js.map +1 -1
  254. package/dist/components/Payroll/index.d.ts +6 -0
  255. package/dist/components/Payroll/index.js +32 -26
  256. package/dist/components/Payroll/index.js.map +1 -1
  257. package/dist/components/Payroll/payrollTypes.d.ts +21 -0
  258. package/dist/components/Payroll/payrollTypes.js +27 -0
  259. package/dist/components/Payroll/payrollTypes.js.map +1 -0
  260. package/dist/components/Payroll/usePreparedPayrollData.js +4 -4
  261. package/dist/components/UNSTABLE_Hooks/collectErrors.d.ts +6 -0
  262. package/dist/components/UNSTABLE_Hooks/collectErrors.js +9 -0
  263. package/dist/components/UNSTABLE_Hooks/collectErrors.js.map +1 -0
  264. package/dist/components/UNSTABLE_Hooks/form/FormFieldsMetadataContext.d.ts +8 -0
  265. package/dist/components/UNSTABLE_Hooks/form/FormFieldsMetadataContext.js +13 -0
  266. package/dist/components/UNSTABLE_Hooks/form/FormFieldsMetadataContext.js.map +1 -0
  267. package/dist/components/UNSTABLE_Hooks/form/FormFieldsMetadataProvider.d.ts +10 -0
  268. package/dist/components/UNSTABLE_Hooks/form/FormFieldsMetadataProvider.js +13 -0
  269. package/dist/components/UNSTABLE_Hooks/form/FormFieldsMetadataProvider.js.map +1 -0
  270. package/dist/components/UNSTABLE_Hooks/form/SDKFormProvider.d.ts +23 -0
  271. package/dist/components/UNSTABLE_Hooks/form/SDKFormProvider.js +24 -0
  272. package/dist/components/UNSTABLE_Hooks/form/SDKFormProvider.js.map +1 -0
  273. package/dist/components/UNSTABLE_Hooks/form/composeFormSchema.d.ts +26 -0
  274. package/dist/components/UNSTABLE_Hooks/form/composeFormSchema.js +24 -0
  275. package/dist/components/UNSTABLE_Hooks/form/composeFormSchema.js.map +1 -0
  276. package/dist/components/UNSTABLE_Hooks/form/composeSubmitHandler.d.ts +53 -0
  277. package/dist/components/UNSTABLE_Hooks/form/composeSubmitHandler.js +34 -0
  278. package/dist/components/UNSTABLE_Hooks/form/composeSubmitHandler.js.map +1 -0
  279. package/dist/components/UNSTABLE_Hooks/form/composeSubmitHandler.test.d.ts +1 -0
  280. package/dist/components/UNSTABLE_Hooks/form/deriveFieldsMetadata.d.ts +3 -0
  281. package/dist/components/UNSTABLE_Hooks/form/deriveFieldsMetadata.js +14 -0
  282. package/dist/components/UNSTABLE_Hooks/form/deriveFieldsMetadata.js.map +1 -0
  283. package/dist/components/UNSTABLE_Hooks/form/deriveFieldsMetadata.test.d.ts +1 -0
  284. package/dist/components/UNSTABLE_Hooks/form/fields/CheckboxHookField.d.ts +9 -0
  285. package/dist/components/UNSTABLE_Hooks/form/fields/CheckboxHookField.js +34 -0
  286. package/dist/components/UNSTABLE_Hooks/form/fields/CheckboxHookField.js.map +1 -0
  287. package/dist/components/UNSTABLE_Hooks/form/fields/DatePickerHookField.d.ts +9 -0
  288. package/dist/components/UNSTABLE_Hooks/form/fields/DatePickerHookField.js +29 -0
  289. package/dist/components/UNSTABLE_Hooks/form/fields/DatePickerHookField.js.map +1 -0
  290. package/dist/components/UNSTABLE_Hooks/form/fields/NumberInputHookField.d.ts +12 -0
  291. package/dist/components/UNSTABLE_Hooks/form/fields/NumberInputHookField.js +40 -0
  292. package/dist/components/UNSTABLE_Hooks/form/fields/NumberInputHookField.js.map +1 -0
  293. package/dist/components/UNSTABLE_Hooks/form/fields/RadioGroupHookField.d.ts +10 -0
  294. package/dist/components/UNSTABLE_Hooks/form/fields/RadioGroupHookField.js +40 -0
  295. package/dist/components/UNSTABLE_Hooks/form/fields/RadioGroupHookField.js.map +1 -0
  296. package/dist/components/UNSTABLE_Hooks/form/fields/SelectHookField.d.ts +10 -0
  297. package/dist/components/UNSTABLE_Hooks/form/fields/SelectHookField.js +40 -0
  298. package/dist/components/UNSTABLE_Hooks/form/fields/SelectHookField.js.map +1 -0
  299. package/dist/components/UNSTABLE_Hooks/form/fields/SwitchHookField.d.ts +9 -0
  300. package/dist/components/UNSTABLE_Hooks/form/fields/SwitchHookField.js +34 -0
  301. package/dist/components/UNSTABLE_Hooks/form/fields/SwitchHookField.js.map +1 -0
  302. package/dist/components/UNSTABLE_Hooks/form/fields/TextInputHookField.d.ts +11 -0
  303. package/dist/components/UNSTABLE_Hooks/form/fields/TextInputHookField.js +38 -0
  304. package/dist/components/UNSTABLE_Hooks/form/fields/TextInputHookField.js.map +1 -0
  305. package/dist/components/UNSTABLE_Hooks/form/fields/index.d.ts +15 -0
  306. package/dist/components/UNSTABLE_Hooks/form/getFieldWithOptions.d.ts +2 -0
  307. package/dist/components/UNSTABLE_Hooks/form/getFieldWithOptions.js +8 -0
  308. package/dist/components/UNSTABLE_Hooks/form/getFieldWithOptions.js.map +1 -0
  309. package/dist/components/UNSTABLE_Hooks/form/getFormSubmissionValues.d.ts +18 -0
  310. package/dist/components/UNSTABLE_Hooks/form/getFormSubmissionValues.js +10 -0
  311. package/dist/components/UNSTABLE_Hooks/form/getFormSubmissionValues.js.map +1 -0
  312. package/dist/components/UNSTABLE_Hooks/form/getFormSubmissionValues.test.d.ts +1 -0
  313. package/dist/components/UNSTABLE_Hooks/form/index.d.ts +14 -0
  314. package/dist/components/UNSTABLE_Hooks/form/resolveRequiredFields.d.ts +6 -0
  315. package/dist/components/UNSTABLE_Hooks/form/resolveRequiredFields.js +14 -0
  316. package/dist/components/UNSTABLE_Hooks/form/resolveRequiredFields.js.map +1 -0
  317. package/dist/components/UNSTABLE_Hooks/form/types.d.ts +27 -0
  318. package/dist/components/UNSTABLE_Hooks/form/useFieldErrorMessage.d.ts +2 -0
  319. package/dist/components/UNSTABLE_Hooks/form/useFieldErrorMessage.js +17 -0
  320. package/dist/components/UNSTABLE_Hooks/form/useFieldErrorMessage.js.map +1 -0
  321. package/dist/components/UNSTABLE_Hooks/form/useFieldsMetadata.d.ts +4 -0
  322. package/dist/components/UNSTABLE_Hooks/form/useFieldsMetadata.js +9 -0
  323. package/dist/components/UNSTABLE_Hooks/form/useFieldsMetadata.js.map +1 -0
  324. package/dist/components/UNSTABLE_Hooks/form/withOptions.d.ts +5 -0
  325. package/dist/components/UNSTABLE_Hooks/form/withOptions.js +7 -0
  326. package/dist/components/UNSTABLE_Hooks/form/withOptions.js.map +1 -0
  327. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/CompensationForm.d.ts +5 -0
  328. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/CompensationForm.js +151 -0
  329. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/CompensationForm.js.map +1 -0
  330. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/compensationSchema.d.ts +97 -0
  331. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/compensationSchema.js +121 -0
  332. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/compensationSchema.js.map +1 -0
  333. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/fields.d.ts +34 -0
  334. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/fields.js +50 -0
  335. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/fields.js.map +1 -0
  336. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/index.d.ts +7 -0
  337. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/useCompensationForm.d.ts +104 -0
  338. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/useCompensationForm.js +259 -0
  339. package/dist/components/UNSTABLE_Hooks/hooks/useCompensationForm/useCompensationForm.js.map +1 -0
  340. package/dist/components/UNSTABLE_Hooks/hooks/useEmployeeDetailsForm/EmployeeDetailsForm.d.ts +5 -0
  341. package/dist/components/UNSTABLE_Hooks/hooks/useEmployeeDetailsForm/EmployeeDetailsForm.js +114 -0
  342. package/dist/components/UNSTABLE_Hooks/hooks/useEmployeeDetailsForm/EmployeeDetailsForm.js.map +1 -0
  343. package/dist/components/UNSTABLE_Hooks/hooks/useEmployeeDetailsForm/employeeDetailsSchema.d.ts +39 -0
  344. package/dist/components/UNSTABLE_Hooks/hooks/useEmployeeDetailsForm/employeeDetailsSchema.js +45 -0
  345. package/dist/components/UNSTABLE_Hooks/hooks/useEmployeeDetailsForm/employeeDetailsSchema.js.map +1 -0
  346. package/dist/components/UNSTABLE_Hooks/hooks/useEmployeeDetailsForm/fields.d.ts +23 -0
  347. package/dist/components/UNSTABLE_Hooks/hooks/useEmployeeDetailsForm/fields.js +46 -0
  348. package/dist/components/UNSTABLE_Hooks/hooks/useEmployeeDetailsForm/fields.js.map +1 -0
  349. package/dist/components/UNSTABLE_Hooks/hooks/useEmployeeDetailsForm/index.d.ts +7 -0
  350. package/dist/components/UNSTABLE_Hooks/hooks/useEmployeeDetailsForm/useEmployeeDetailsForm.d.ts +77 -0
  351. package/dist/components/UNSTABLE_Hooks/hooks/useEmployeeDetailsForm/useEmployeeDetailsForm.js +153 -0
  352. package/dist/components/UNSTABLE_Hooks/hooks/useEmployeeDetailsForm/useEmployeeDetailsForm.js.map +1 -0
  353. package/dist/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/WorkAddressForm.d.ts +5 -0
  354. package/dist/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/WorkAddressForm.js +71 -0
  355. package/dist/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/WorkAddressForm.js.map +1 -0
  356. package/dist/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/fields.d.ts +10 -0
  357. package/dist/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/fields.js +14 -0
  358. package/dist/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/fields.js.map +1 -0
  359. package/dist/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/index.d.ts +7 -0
  360. package/dist/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/useWorkAddressForm.d.ts +68 -0
  361. package/dist/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/useWorkAddressForm.js +129 -0
  362. package/dist/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/useWorkAddressForm.js.map +1 -0
  363. package/dist/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/workAddressSchema.d.ts +25 -0
  364. package/dist/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/workAddressSchema.js +24 -0
  365. package/dist/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/workAddressSchema.js.map +1 -0
  366. package/dist/components/UNSTABLE_Hooks/index.d.ts +9 -0
  367. package/dist/components/UNSTABLE_Hooks/types.d.ts +49 -0
  368. package/dist/components/UNSTABLE_Hooks/useErrorHandling.d.ts +9 -0
  369. package/dist/components/UNSTABLE_Hooks/useErrorHandling.js +12 -0
  370. package/dist/components/UNSTABLE_Hooks/useErrorHandling.js.map +1 -0
  371. package/dist/components/UNSTABLE_Hooks/useErrorHandling.test.d.ts +1 -0
  372. package/dist/contexts/ApiProvider/ApiProvider.js +11 -11
  373. package/dist/contexts/ApiProvider/ApiProvider.js.map +1 -1
  374. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js +43 -47
  375. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js.map +1 -1
  376. package/dist/contexts/ObservabilityProvider/index.d.ts +1 -1
  377. package/dist/contexts/ObservabilityProvider/sanitization.d.ts +0 -14
  378. package/dist/contexts/ObservabilityProvider/sanitization.js +51 -51
  379. package/dist/contexts/ObservabilityProvider/sanitization.js.map +1 -1
  380. package/dist/contexts/ObservabilityProvider/useSanitizedObservability.d.ts +0 -3
  381. package/dist/contexts/ObservabilityProvider/useSanitizedObservability.js.map +1 -1
  382. package/dist/helpers/requiredIf.d.ts +13 -0
  383. package/dist/helpers/requiredIf.js +8 -0
  384. package/dist/helpers/requiredIf.js.map +1 -0
  385. package/dist/i18n/I18n.js +13 -13
  386. package/dist/i18n/I18n.js.map +1 -1
  387. package/dist/i18n/en/Employee.Terminations.TerminateEmployee.json.js +18 -0
  388. package/dist/i18n/en/Employee.Terminations.TerminateEmployee.json.js.map +1 -0
  389. package/dist/i18n/en/Employee.Terminations.TerminationFlow.json.js +12 -0
  390. package/dist/i18n/en/Employee.Terminations.TerminationFlow.json.js.map +1 -0
  391. package/dist/i18n/en/Employee.Terminations.TerminationSummary.json.js +20 -0
  392. package/dist/i18n/en/Employee.Terminations.TerminationSummary.json.js.map +1 -0
  393. package/dist/i18n/en/Payroll.Dismissal.json.js +22 -0
  394. package/dist/i18n/en/Payroll.Dismissal.json.js.map +1 -0
  395. package/dist/i18n/en/Payroll.OffCycleCreation.json.js +15 -11
  396. package/dist/i18n/en/Payroll.OffCycleCreation.json.js.map +1 -1
  397. package/dist/i18n/en/Payroll.OffCyclePayPeriodDateForm.json.js +1 -1
  398. package/dist/i18n/en/Payroll.PayrollEditEmployee.json.js +20 -18
  399. package/dist/i18n/en/Payroll.PayrollEditEmployee.json.js.map +1 -1
  400. package/dist/i18n/en/Payroll.PayrollList.json.js +20 -18
  401. package/dist/i18n/en/Payroll.PayrollList.json.js.map +1 -1
  402. package/dist/i18n/en/Payroll.Transition.json.js +8 -0
  403. package/dist/i18n/en/Payroll.Transition.json.js.map +1 -0
  404. package/dist/i18n/en/Payroll.TransitionCreation.json.js +26 -0
  405. package/dist/i18n/en/Payroll.TransitionCreation.json.js.map +1 -0
  406. package/dist/i18n/en/Payroll.TransitionPayrollAlert.json.js +18 -0
  407. package/dist/i18n/en/Payroll.TransitionPayrollAlert.json.js.map +1 -0
  408. package/dist/i18n/en/UNSTABLE.CompensationForm.json.js +58 -0
  409. package/dist/i18n/en/UNSTABLE.CompensationForm.json.js.map +1 -0
  410. package/dist/i18n/en/UNSTABLE.EmployeeDetailsForm.json.js +34 -0
  411. package/dist/i18n/en/UNSTABLE.EmployeeDetailsForm.json.js.map +1 -0
  412. package/dist/i18n/en/UNSTABLE.WorkAddressForm.json.js +24 -0
  413. package/dist/i18n/en/UNSTABLE.WorkAddressForm.json.js.map +1 -0
  414. package/dist/i18n/en/common.json.d.ts +2 -1
  415. package/dist/i18n/en/common.json.js +9 -9
  416. package/dist/index.d.ts +3 -2
  417. package/dist/index.js +14 -13
  418. package/dist/models/WA_RISK_CODES.d.ts +5 -2866
  419. package/dist/models/WA_RISK_CODES.js.map +1 -1
  420. package/dist/shared/constants.d.ts +32 -0
  421. package/dist/shared/constants.js +83 -65
  422. package/dist/shared/constants.js.map +1 -1
  423. package/dist/style.css +1 -1
  424. package/dist/types/i18next.d.ts +279 -1
  425. package/dist/types/observability.d.ts +31 -65
  426. package/dist/types/sdkError.d.ts +97 -0
  427. package/dist/types/sdkError.js +95 -0
  428. package/dist/types/sdkError.js.map +1 -0
  429. package/dist/types/sdkError.test.d.ts +1 -0
  430. package/docs/reference/endpoint-inventory.json +212 -14
  431. package/package.json +16 -16
  432. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfiguration.d.ts +0 -6
  433. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfiguration.js +0 -70
  434. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfiguration.js.map +0 -1
  435. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfigurationContext.d.ts +0 -7
  436. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfigurationContext.js +0 -6
  437. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfigurationContext.js.map +0 -1
  438. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfigurationProvider.d.ts +0 -9
  439. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfigurationProvider.js +0 -40
  440. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/PayrollConfigurationProvider.js.map +0 -1
  441. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/index.d.ts +0 -5
  442. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/usePayrollConfiguration.d.ts +0 -2
  443. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/usePayrollConfiguration.js +0 -12
  444. package/dist/components/Payroll/UNSTABLE_PayrollHooks/PayrollConfiguration/usePayrollConfiguration.js.map +0 -1
  445. package/dist/components/Payroll/UNSTABLE_PayrollHooks/index.d.ts +0 -2
  446. package/dist/contexts/ObservabilityProvider/observabilityUtils.d.ts +0 -5
  447. package/dist/contexts/ObservabilityProvider/observabilityUtils.js +0 -45
  448. package/dist/contexts/ObservabilityProvider/observabilityUtils.js.map +0 -1
@@ -0,0 +1,25 @@
1
+ import { z } from 'zod';
2
+ import { RequiredFields } from '../../form/resolveRequiredFields';
3
+ export declare const WorkAddressErrorCodes: {
4
+ readonly REQUIRED: "REQUIRED";
5
+ };
6
+ export type WorkAddressErrorCode = (typeof WorkAddressErrorCodes)[keyof typeof WorkAddressErrorCodes];
7
+ declare const fieldValidators: {
8
+ locationUuid: z.ZodString;
9
+ effectiveDate: z.ZodISODate;
10
+ };
11
+ export type WorkAddressField = keyof typeof fieldValidators;
12
+ export type WorkAddressFormData = {
13
+ [K in keyof typeof fieldValidators]: z.infer<(typeof fieldValidators)[K]>;
14
+ };
15
+ export type WorkAddressFormOutputs = WorkAddressFormData;
16
+ interface WorkAddressSchemaOptions {
17
+ mode?: 'create' | 'update';
18
+ requiredFields?: RequiredFields<WorkAddressField>;
19
+ withEffectiveDateField?: boolean;
20
+ }
21
+ export declare function createWorkAddressSchema(options?: WorkAddressSchemaOptions): z.ZodObject<{
22
+ locationUuid: z.ZodString;
23
+ effectiveDate: z.ZodISODate;
24
+ }, z.core.$strip>;
25
+ export {};
@@ -0,0 +1,24 @@
1
+ import { z as r } from "zod";
2
+ import { composeFormSchema as c } from "../../form/composeFormSchema.js";
3
+ import { filterRequiredFields as n } from "../../form/resolveRequiredFields.js";
4
+ const t = {
5
+ REQUIRED: "REQUIRED"
6
+ }, E = {
7
+ locationUuid: r.string().min(1, { message: t.REQUIRED }),
8
+ effectiveDate: r.iso.date({ error: () => t.REQUIRED })
9
+ }, a = /* @__PURE__ */ new Set(["locationUuid"]), R = /* @__PURE__ */ new Set(["locationUuid"]);
10
+ function l(i = {}) {
11
+ const { mode: o = "create", requiredFields: e, withEffectiveDateField: d = !0 } = i, s = d ? e : n(e, "effectiveDate");
12
+ return c({
13
+ fieldValidators: E,
14
+ requiredOnCreate: a,
15
+ requiredOnUpdate: R,
16
+ mode: o,
17
+ requiredFields: s
18
+ });
19
+ }
20
+ export {
21
+ t as WorkAddressErrorCodes,
22
+ l as createWorkAddressSchema
23
+ };
24
+ //# sourceMappingURL=workAddressSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workAddressSchema.js","sources":["../../../../../src/components/UNSTABLE_Hooks/hooks/useWorkAddressForm/workAddressSchema.ts"],"sourcesContent":["import { z } from 'zod'\nimport { composeFormSchema } from '../../form/composeFormSchema'\nimport { filterRequiredFields, type RequiredFields } from '../../form/resolveRequiredFields'\n\nexport const WorkAddressErrorCodes = {\n REQUIRED: 'REQUIRED',\n} as const\n\nexport type WorkAddressErrorCode =\n (typeof WorkAddressErrorCodes)[keyof typeof WorkAddressErrorCodes]\n\nconst fieldValidators = {\n locationUuid: z.string().min(1, { message: WorkAddressErrorCodes.REQUIRED }),\n effectiveDate: z.iso.date({ error: () => WorkAddressErrorCodes.REQUIRED }),\n}\n\nexport type WorkAddressField = keyof typeof fieldValidators\n\nexport type WorkAddressFormData = {\n [K in keyof typeof fieldValidators]: z.infer<(typeof fieldValidators)[K]>\n}\nexport type WorkAddressFormOutputs = WorkAddressFormData\n\nconst REQUIRED_ON_CREATE = new Set<WorkAddressField>(['locationUuid'])\nconst REQUIRED_ON_UPDATE = new Set<WorkAddressField>(['locationUuid'])\n\ninterface WorkAddressSchemaOptions {\n mode?: 'create' | 'update'\n requiredFields?: RequiredFields<WorkAddressField>\n withEffectiveDateField?: boolean\n}\n\nexport function createWorkAddressSchema(options: WorkAddressSchemaOptions = {}) {\n const { mode = 'create', requiredFields, withEffectiveDateField = true } = options\n\n const effectiveRequiredFields = withEffectiveDateField\n ? requiredFields\n : filterRequiredFields(requiredFields, 'effectiveDate')\n\n return composeFormSchema({\n fieldValidators,\n requiredOnCreate: REQUIRED_ON_CREATE,\n requiredOnUpdate: REQUIRED_ON_UPDATE,\n mode,\n requiredFields: effectiveRequiredFields,\n })\n}\n"],"names":["WorkAddressErrorCodes","fieldValidators","z","REQUIRED_ON_CREATE","REQUIRED_ON_UPDATE","createWorkAddressSchema","options","mode","requiredFields","withEffectiveDateField","effectiveRequiredFields","filterRequiredFields","composeFormSchema"],"mappings":";;;AAIO,MAAMA,IAAwB;AAAA,EACnC,UAAU;AACZ,GAKMC,IAAkB;AAAA,EACtB,cAAcC,EAAE,OAAA,EAAS,IAAI,GAAG,EAAE,SAASF,EAAsB,UAAU;AAAA,EAC3E,eAAeE,EAAE,IAAI,KAAK,EAAE,OAAO,MAAMF,EAAsB,SAAA,CAAU;AAC3E,GASMG,IAAqB,oBAAI,IAAsB,CAAC,cAAc,CAAC,GAC/DC,IAAqB,oBAAI,IAAsB,CAAC,cAAc,CAAC;AAQ9D,SAASC,EAAwBC,IAAoC,IAAI;AAC9E,QAAM,EAAE,MAAAC,IAAO,UAAU,gBAAAC,GAAgB,wBAAAC,IAAyB,OAASH,GAErEI,IAA0BD,IAC5BD,IACAG,EAAqBH,GAAgB,eAAe;AAExD,SAAOI,EAAkB;AAAA,IACvB,iBAAAX;AAAA,IACA,kBAAkBE;AAAA,IAClB,kBAAkBC;AAAA,IAClB,MAAAG;AAAA,IACA,gBAAgBG;AAAA,EAAA,CACjB;AACH;"}
@@ -0,0 +1,9 @@
1
+ import "./types/i18next.d.ts"
2
+ export type { HookFormInternals, HookLoadingResult, HookSubmitResult, HookErrorHandling, BaseHookReady, BaseFormHookReady, } from './types';
3
+ export { useErrorHandling } from './useErrorHandling';
4
+ export type { FieldMetadata, FieldMetadataWithOptions, FieldsMetadata, FormFieldsMetadataContextValue, ValidationMessages, BaseFieldProps, TextInputHookFieldProps, SelectHookFieldProps, CheckboxHookFieldProps, NumberInputHookFieldProps, DatePickerHookFieldProps, RadioGroupHookFieldProps, TextInputProps, SelectProps, SelectOption, CheckboxProps, NumberInputProps, DatePickerProps, RadioGroupProps, RadioGroupOption, SwitchHookFieldProps, SwitchProps, } from './form';
5
+ export { collectErrors } from './collectErrors';
6
+ export { withOptions, FormFieldsMetadataProvider, SDKFormProvider, useFieldsMetadata, useFieldErrorMessage, deriveFieldsMetadata, composeSubmitHandler, TextInputHookField, SelectHookField, CheckboxHookField, NumberInputHookField, DatePickerHookField, RadioGroupHookField, SwitchHookField, } from './form';
7
+ export { useCompensationForm, CompensationForm, CompensationErrorCodes, createCompensationSchema, type CompensationFormProps, type CompensationSubmitCallbacks, type CompensationSubmitOptions, type CompensationRequiredFields, type UseCompensationFormProps, type UseCompensationFormResult, type UseCompensationFormReady, type CompensationFieldsMetadata, type CompensationFormFields, type CompensationErrorCode, type CompensationField, type CompensationFormData, type CompensationFormOutputs, type RequiredValidation, type RateValidation, type StartDateFieldProps, type JobTitleFieldProps, type FlsaStatusFieldProps, type RateFieldProps, type PaymentUnitFieldProps, type AdjustForMinimumWageFieldProps, type MinimumWageIdFieldProps, type TwoPercentShareholderFieldProps, type StateWcCoveredFieldProps, type StateWcClassCodeFieldProps, } from './hooks/useCompensationForm';
8
+ export { useEmployeeDetailsForm, EmployeeDetailsForm, EmployeeDetailsErrorCodes, createEmployeeDetailsSchema, type EmployeeDetailsFormProps, type EmployeeDetailsSubmitCallbacks, type EmployeeDetailsRequiredFields, type UseEmployeeDetailsFormProps, type UseEmployeeDetailsFormResult, type UseEmployeeDetailsFormReady, type EmployeeDetailsFieldsMetadata, type EmployeeDetailsFormFields, type EmployeeDetailsErrorCode, type EmployeeDetailsFormData, type EmployeeDetailsFormOutputs, type EmployeeDetailsField, type EmployeeDetailsRequiredValidation, type NameValidation, type EmailValidation, type SsnValidation, type FirstNameFieldProps, type MiddleInitialFieldProps, type LastNameFieldProps, type EmailFieldProps, type DateOfBirthFieldProps, type SsnFieldProps, type SelfOnboardingFieldProps, } from './hooks/useEmployeeDetailsForm';
9
+ export { useWorkAddressForm, WorkAddressForm, WorkAddressErrorCodes, createWorkAddressSchema, type WorkAddressFormProps, type WorkAddressSubmitCallbacks, type WorkAddressSubmitOptions, type WorkAddressRequiredFields, type UseWorkAddressFormProps, type UseWorkAddressFormResult, type UseWorkAddressFormReady, type WorkAddressFieldsMetadata, type WorkAddressFormFields, type WorkAddressErrorCode, type WorkAddressFormData, type WorkAddressFormOutputs, type WorkAddressField, type WorkAddressRequiredValidation, type LocationFieldProps, type EffectiveDateFieldProps, } from './hooks/useWorkAddressForm';
@@ -0,0 +1,49 @@
1
+ import { UseFormReturn, FieldValues } from 'react-hook-form';
2
+ import { FieldsMetadata } from './form/types';
3
+ import { SDKError } from '../../types/sdkError';
4
+ /** Exposes react-hook-form internals for SDK utilities and advanced partner use cases. */
5
+ export interface HookFormInternals<TFormData extends FieldValues = FieldValues> {
6
+ formMethods: UseFormReturn<TFormData>;
7
+ }
8
+ /** Discriminated union member returned while async data is being fetched. */
9
+ export interface HookLoadingResult {
10
+ isLoading: true;
11
+ errorHandling: HookErrorHandling;
12
+ }
13
+ /** Result shape returned by a successful form submission. */
14
+ export interface HookSubmitResult<T> {
15
+ mode: 'create' | 'update';
16
+ data: T;
17
+ }
18
+ /** Error state and recovery actions returned by all hooks. */
19
+ export interface HookErrorHandling {
20
+ errors: SDKError[];
21
+ retryQueries: () => void;
22
+ clearSubmitError: () => void;
23
+ }
24
+ /** Base shape for non-form hooks. Individual hooks override `data`. */
25
+ export interface BaseHookReady {
26
+ isLoading: false;
27
+ data: Record<string, unknown>;
28
+ status: {
29
+ isPending: boolean;
30
+ };
31
+ errorHandling: HookErrorHandling;
32
+ }
33
+ /** Base shape for form hooks. Individual hooks override `data`, `actions`, and `form`. */
34
+ export interface BaseFormHookReady<TFieldsMetadata extends FieldsMetadata = FieldsMetadata> {
35
+ isLoading: false;
36
+ data: Record<string, unknown>;
37
+ status: {
38
+ isPending: boolean;
39
+ mode: 'create' | 'update';
40
+ };
41
+ actions: Record<string, unknown>;
42
+ errorHandling: HookErrorHandling;
43
+ form: {
44
+ Fields: Record<string, unknown>;
45
+ fieldsMetadata: TFieldsMetadata;
46
+ hookFormInternals: HookFormInternals;
47
+ getFormSubmissionValues: () => Record<string, unknown> | undefined;
48
+ };
49
+ }
@@ -0,0 +1,9 @@
1
+ import { UseQueryResult } from '@tanstack/react-query';
2
+ import { HookErrorHandling } from './types';
3
+ import { SDKError } from '../../types/sdkError';
4
+ type QueryWithRefetch = Pick<UseQueryResult, 'error' | 'refetch'>;
5
+ export declare function useErrorHandling(queries: QueryWithRefetch[], submitState: {
6
+ error: SDKError | null;
7
+ setError: (error: SDKError | null) => void;
8
+ }): HookErrorHandling;
9
+ export {};
@@ -0,0 +1,12 @@
1
+ import { collectErrors as t } from "./collectErrors.js";
2
+ function i(o, e) {
3
+ return { errors: t(o, e.error), retryQueries: () => {
4
+ o.filter((r) => r.error != null).forEach((r) => void r.refetch());
5
+ }, clearSubmitError: () => {
6
+ e.setError(null);
7
+ } };
8
+ }
9
+ export {
10
+ i as useErrorHandling
11
+ };
12
+ //# sourceMappingURL=useErrorHandling.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useErrorHandling.js","sources":["../../../src/components/UNSTABLE_Hooks/useErrorHandling.ts"],"sourcesContent":["import type { UseQueryResult } from '@tanstack/react-query'\nimport { collectErrors } from './collectErrors'\nimport type { HookErrorHandling } from './types'\nimport type { SDKError } from '@/types/sdkError'\n\ntype QueryWithRefetch = Pick<UseQueryResult, 'error' | 'refetch'>\n\nexport function useErrorHandling(\n queries: QueryWithRefetch[],\n submitState: { error: SDKError | null; setError: (error: SDKError | null) => void },\n): HookErrorHandling {\n const errors = collectErrors(queries, submitState.error)\n\n const retryQueries = () => {\n queries.filter(q => q.error != null).forEach(q => void q.refetch())\n }\n\n const clearSubmitError = () => {\n submitState.setError(null)\n }\n\n return { errors, retryQueries, clearSubmitError }\n}\n"],"names":["useErrorHandling","queries","submitState","collectErrors","q"],"mappings":";AAOO,SAASA,EACdC,GACAC,GACmB;AAWnB,SAAO,EAAE,QAVMC,EAAcF,GAASC,EAAY,KAAK,GAUtC,cARI,MAAM;AACzB,IAAAD,EAAQ,OAAO,CAAAG,MAAKA,EAAE,SAAS,IAAI,EAAE,QAAQ,CAAAA,MAAK,KAAKA,EAAE,QAAA,CAAS;AAAA,EACpE,GAM+B,kBAJN,MAAM;AAC7B,IAAAF,EAAY,SAAS,IAAI;AAAA,EAC3B,EAE+B;AACjC;"}
@@ -1,8 +1,8 @@
1
- import { jsx as u } from "react/jsx-runtime";
2
- import { QueryClient as H, QueryClientProvider as E } from "@tanstack/react-query";
3
- import { GustoEmbeddedProvider as R } from "@gusto/embedded-api/react-query/_context";
4
- import { GustoEmbeddedCore as b } from "@gusto/embedded-api/core";
5
- import { SDKHooks as g } from "@gusto/embedded-api/hooks/hooks";
1
+ import { jsx as c } from "react/jsx-runtime";
2
+ import { QueryClient as H, QueryClientProvider as b } from "@tanstack/react-query";
3
+ import { GustoEmbeddedProvider as g } from "@gusto/embedded-api/react-query/_context";
4
+ import { GustoEmbeddedCore as E } from "@gusto/embedded-api/core";
5
+ import { SDKHooks as R } from "@gusto/embedded-api/hooks/hooks";
6
6
  import { useMemo as a } from "react";
7
7
  import { apiVersionHook as q } from "./apiVersionHook.js";
8
8
  function A({
@@ -13,13 +13,13 @@ function A({
13
13
  queryClient: i
14
14
  }) {
15
15
  const m = a(() => {
16
- const r = new b({
16
+ const r = new E({
17
17
  serverURL: f
18
- }), t = r._options.hooks || new g();
18
+ }), t = r._options.hooks || new R();
19
19
  if (t.registerBeforeRequestHook(q), s) {
20
20
  const o = {
21
- beforeRequest: (C, n) => (new Headers(s).forEach((c, l) => {
22
- c && n.headers.set(l, c);
21
+ beforeRequest: (y, n) => (new Headers(s).forEach((u, l) => {
22
+ u && n.headers.set(l, u);
23
23
  }), n)
24
24
  };
25
25
  t.registerBeforeRequestHook(o);
@@ -37,11 +37,11 @@ function A({
37
37
  if (i)
38
38
  return i;
39
39
  const r = new H(), t = async () => {
40
- await r.invalidateQueries();
40
+ await r.invalidateQueries({ queryKey: ["@gusto/embedded-api"] });
41
41
  };
42
42
  return r.setQueryDefaults(["@gusto/embedded-api"], { retry: !1 }), r.setMutationDefaults(["@gusto/embedded-api"], { onSuccess: t, retry: !1 }), r;
43
43
  }, [i]);
44
- return /* @__PURE__ */ u(E, { client: p, children: /* @__PURE__ */ u(R, { client: m, children: d }) });
44
+ return /* @__PURE__ */ c(b, { client: p, children: /* @__PURE__ */ c(g, { client: m, children: d }) });
45
45
  }
46
46
  export {
47
47
  A as ApiProvider
@@ -1 +1 @@
1
- {"version":3,"file":"ApiProvider.js","sources":["../../../src/contexts/ApiProvider/ApiProvider.tsx"],"sourcesContent":["import { QueryClient, QueryClientProvider } 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 type { SDKHooks, BeforeRequestHook } from '@/types/hooks'\n\nexport interface ApiProviderProps {\n url: string\n headers?: HeadersInit\n hooks?: SDKHooks\n children: React.ReactNode\n queryClient?: QueryClient\n}\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 if (queryClientFromProps) {\n return queryClientFromProps\n }\n\n // Create and configure a new QueryClient for internal SDK use\n const client = new QueryClient()\n\n const onSuccess = async () => {\n await client.invalidateQueries()\n }\n client.setQueryDefaults(['@gusto/embedded-api'], { retry: false })\n client.setMutationDefaults(['@gusto/embedded-api'], { onSuccess, retry: false })\n\n return client\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","QueryClient","onSuccess","jsx","QueryClientProvider","GustoEmbeddedProvider"],"mappings":";;;;;;;AAgBO,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,MAAM;AAChC,QAAIF;AACF,aAAOA;AAIT,UAAMG,IAAS,IAAIY,EAAA,GAEbC,IAAY,YAAY;AAC5B,YAAMb,EAAO,kBAAA;AAAA,IACf;AACA,WAAAA,EAAO,iBAAiB,CAAC,qBAAqB,GAAG,EAAE,OAAO,IAAO,GACjEA,EAAO,oBAAoB,CAAC,qBAAqB,GAAG,EAAE,WAAAa,GAAW,OAAO,IAAO,GAExEb;AAAA,EACT,GAAG,CAACH,CAAoB,CAAC;AAEzB,SACE,gBAAAiB,EAACC,KAAoB,QAAQJ,GAC3B,4BAACK,GAAA,EAAsB,QAAQlB,GAAc,UAAAF,EAAA,CAAS,EAAA,CACxD;AAEJ;"}
1
+ {"version":3,"file":"ApiProvider.js","sources":["../../../src/contexts/ApiProvider/ApiProvider.tsx"],"sourcesContent":["import { QueryClient, QueryClientProvider } 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 type { SDKHooks, BeforeRequestHook } from '@/types/hooks'\n\nexport interface ApiProviderProps {\n url: string\n headers?: HeadersInit\n hooks?: SDKHooks\n children: React.ReactNode\n queryClient?: QueryClient\n}\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 if (queryClientFromProps) {\n return queryClientFromProps\n }\n\n // Create and configure a new QueryClient for internal SDK use\n const client = new QueryClient()\n\n const onSuccess = async () => {\n await client.invalidateQueries({ queryKey: ['@gusto/embedded-api'] })\n }\n client.setQueryDefaults(['@gusto/embedded-api'], { retry: false })\n client.setMutationDefaults(['@gusto/embedded-api'], { onSuccess, retry: false })\n\n return client\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","QueryClient","onSuccess","jsx","QueryClientProvider","GustoEmbeddedProvider"],"mappings":";;;;;;;AAgBO,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,MAAM;AAChC,QAAIF;AACF,aAAOA;AAIT,UAAMG,IAAS,IAAIY,EAAA,GAEbC,IAAY,YAAY;AAC5B,YAAMb,EAAO,kBAAkB,EAAE,UAAU,CAAC,qBAAqB,GAAG;AAAA,IACtE;AACA,WAAAA,EAAO,iBAAiB,CAAC,qBAAqB,GAAG,EAAE,OAAO,IAAO,GACjEA,EAAO,oBAAoB,CAAC,qBAAqB,GAAG,EAAE,WAAAa,GAAW,OAAO,IAAO,GAExEb;AAAA,EACT,GAAG,CAACH,CAAoB,CAAC;AAEzB,SACE,gBAAAiB,EAACC,KAAoB,QAAQJ,GAC3B,4BAACK,GAAA,EAAsB,QAAQlB,GAAc,UAAAF,EAAA,CAAS,EAAA,CACxD;AAEJ;"}
@@ -1,77 +1,73 @@
1
1
  import { jsx as o } from "react/jsx-runtime";
2
- import { ErrorBoundary as y } from "react-error-boundary";
3
- import { I18nextProvider as E } from "react-i18next";
4
- import { useEffect as g, useMemo as k } from "react";
5
- import { ComponentsProvider as P } from "../ComponentAdapter/ComponentsProvider.js";
6
- import { ApiProvider as x } from "../ApiProvider/ApiProvider.js";
7
- import { LoadingIndicatorProvider as C } from "../LoadingIndicatorProvider/LoadingIndicatorProvider.js";
8
- import { ObservabilityProvider as I } from "../ObservabilityProvider/ObservabilityProvider.js";
2
+ import { ErrorBoundary as E } from "react-error-boundary";
3
+ import { I18nextProvider as g } from "react-i18next";
4
+ import { useEffect as P, useMemo as k } from "react";
5
+ import { ComponentsProvider as S } from "../ComponentAdapter/ComponentsProvider.js";
6
+ import { ApiProvider as C } from "../ApiProvider/ApiProvider.js";
7
+ import { LoadingIndicatorProvider as I } from "../LoadingIndicatorProvider/LoadingIndicatorProvider.js";
9
8
  import { sanitizeError as L } from "../ObservabilityProvider/sanitization.js";
10
9
  import { SDKI18next as m } from "./SDKI18next.js";
11
10
  import "../../shared/constants.js";
12
11
  import "classnames";
13
- import { InternalError as S } from "../../components/Common/InternalError/InternalError.js";
12
+ import { InternalError as x } from "../../components/Common/InternalError/InternalError.js";
14
13
  import "../ComponentAdapter/useComponentContext.js";
15
- import { LocaleProvider as U } from "../LocaleProvider/LocaleProvider.js";
14
+ import { LocaleProvider as z } from "../LocaleProvider/LocaleProvider.js";
16
15
  import "../LocaleProvider/useLocale.js";
17
- import { ThemeProvider as z } from "../ThemeProvider/ThemeProvider.js";
18
- const Q = (s) => {
16
+ import { ThemeProvider as D } from "../ThemeProvider/ThemeProvider.js";
17
+ import { normalizeToSDKError as U } from "../../types/sdkError.js";
18
+ import { ObservabilityProvider as T } from "../ObservabilityProvider/ObservabilityProvider.js";
19
+ const Y = (s) => {
19
20
  const {
20
- children: c,
21
+ children: l,
21
22
  config: r,
22
- dictionary: n,
23
- lng: a = "en",
24
- locale: l = "en-US",
23
+ dictionary: i,
24
+ lng: t = "en",
25
+ locale: c = "en-US",
25
26
  currency: d = "USD",
26
27
  theme: p,
27
- components: f,
28
- LoaderComponent: v,
29
- queryClient: u
28
+ components: v,
29
+ LoaderComponent: f,
30
+ queryClient: b
30
31
  } = s;
31
- if (n)
32
- for (const e in n) {
33
- const i = e;
34
- for (const t in n[i])
32
+ if (i)
33
+ for (const n in i) {
34
+ const e = n;
35
+ for (const a in i[e])
35
36
  m.addResourceBundle(
36
- i,
37
- t,
38
- n[i][t],
37
+ e,
38
+ a,
39
+ i[e][a],
39
40
  !0,
40
41
  !0
41
42
  );
42
43
  }
43
- g(() => {
44
- (async () => await m.changeLanguage(a))();
45
- }, [a]);
46
- const b = k(() => {
44
+ P(() => {
45
+ (async () => await m.changeLanguage(t))();
46
+ }, [t]);
47
+ const u = k(() => {
47
48
  if (r.observability?.onError)
48
- return (e, i) => {
49
+ return (n, e) => {
49
50
  if (!r.observability?.onError) return;
50
- const t = {
51
- type: "internal_error",
52
- message: e instanceof Error ? e.message : "Unknown error",
53
- stack: e instanceof Error ? e.stack : void 0,
54
- context: {
55
- componentStack: i.componentStack ?? void 0
56
- },
57
- originalError: e,
58
- timestamp: Date.now()
59
- }, h = L(t, r.observability.sanitization);
60
- r.observability.onError(h);
51
+ const h = {
52
+ ...U(n),
53
+ timestamp: Date.now(),
54
+ componentStack: e.componentStack ?? void 0
55
+ }, y = L(h, r.observability.sanitization);
56
+ r.observability.onError(y);
61
57
  };
62
58
  }, [r.observability]);
63
- return /* @__PURE__ */ o(P, { value: f, children: /* @__PURE__ */ o(C, { value: v, children: /* @__PURE__ */ o(I, { observability: r.observability, children: /* @__PURE__ */ o(y, { FallbackComponent: S, onError: b, children: /* @__PURE__ */ o(z, { theme: p, children: /* @__PURE__ */ o(U, { locale: l, currency: d, children: /* @__PURE__ */ o(E, { i18n: m, children: /* @__PURE__ */ o(
64
- x,
59
+ return /* @__PURE__ */ o(S, { value: v, children: /* @__PURE__ */ o(I, { value: f, children: /* @__PURE__ */ o(T, { observability: r.observability, children: /* @__PURE__ */ o(E, { FallbackComponent: x, onError: u, children: /* @__PURE__ */ o(D, { theme: p, children: /* @__PURE__ */ o(z, { locale: c, currency: d, children: /* @__PURE__ */ o(g, { i18n: m, children: /* @__PURE__ */ o(
60
+ C,
65
61
  {
66
62
  url: r.baseUrl,
67
63
  headers: r.headers,
68
64
  hooks: r.hooks,
69
- queryClient: u,
70
- children: c
65
+ queryClient: b,
66
+ children: l
71
67
  }
72
- ) }, a) }) }) }) }) }) });
68
+ ) }, t) }) }) }) }) }) });
73
69
  };
74
70
  export {
75
- Q as GustoProviderCustomUIAdapter
71
+ Y as GustoProviderCustomUIAdapter
76
72
  };
77
73
  //# sourceMappingURL=GustoProviderCustomUIAdapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GustoProviderCustomUIAdapter.js","sources":["../../../src/contexts/GustoProvider/GustoProviderCustomUIAdapter.tsx"],"sourcesContent":["import type React from 'react'\nimport type { ErrorInfo } from 'react'\nimport { ErrorBoundary } from 'react-error-boundary'\nimport { I18nextProvider } from 'react-i18next'\nimport type { QueryClient } from '@tanstack/react-query'\nimport { useEffect, useMemo } from 'react'\nimport { ComponentsProvider } from '../ComponentAdapter/ComponentsProvider'\nimport type { ComponentsContextType } from '../ComponentAdapter/useComponentContext'\nimport { ApiProvider } from '../ApiProvider/ApiProvider'\nimport { LoadingIndicatorProvider } from '../LoadingIndicatorProvider/LoadingIndicatorProvider'\nimport type { LoadingIndicatorContextProps } from '../LoadingIndicatorProvider/useLoadingIndicator'\nimport { ObservabilityProvider } from '../ObservabilityProvider'\nimport { sanitizeError } from '../ObservabilityProvider/sanitization'\nimport { SDKI18next } from './SDKI18next'\nimport { InternalError } from '@/components/Common'\nimport { LocaleProvider } from '@/contexts/LocaleProvider'\nimport { ThemeProvider } from '@/contexts/ThemeProvider'\nimport type { GustoSDKTheme } from '@/contexts/ThemeProvider/theme'\nimport type { ResourceDictionary, SupportedLanguages } from '@/types/Helpers'\nimport type { SDKHooks } from '@/types/hooks'\nimport type { ObservabilityHook } from '@/types/observability'\n\nexport interface APIConfig {\n baseUrl: string\n headers?: HeadersInit\n hooks?: SDKHooks\n observability?: ObservabilityHook\n}\n\nexport interface GustoProviderProps {\n config: APIConfig\n dictionary?: ResourceDictionary\n lng?: string\n locale?: string\n currency?: string\n theme?: GustoSDKTheme\n queryClient?: QueryClient\n components: ComponentsContextType\n LoaderComponent?: LoadingIndicatorContextProps['LoadingIndicator']\n}\n\nexport interface GustoProviderCustomUIAdapterProps extends GustoProviderProps {\n children?: React.ReactNode\n}\n\n/**\n * A provider that accepts UI component adapters through the components prop\n */\nconst GustoProviderCustomUIAdapter: React.FC<GustoProviderCustomUIAdapterProps> = props => {\n const {\n children,\n config,\n dictionary,\n lng = 'en',\n locale = 'en-US',\n currency = 'USD',\n theme,\n components,\n LoaderComponent,\n queryClient,\n } = props\n\n // Handle dictionary resources\n if (dictionary) {\n for (const language in dictionary) {\n const lang = language as SupportedLanguages\n for (const ns in dictionary[lang]) {\n // Adding resources overrides to i18next instance - initial load will override common namespace and add component specific dictionaries provided by partners\n SDKI18next.addResourceBundle(\n lang,\n ns,\n (dictionary[lang] as Record<string, unknown>)[ns],\n true,\n true,\n )\n }\n }\n }\n\n // Handle language change\n useEffect(() => {\n void (async () => {\n await SDKI18next.changeLanguage(lng)\n })()\n }, [lng])\n\n // Create sanitized error handler that respects sanitization config\n const handleTopLevelError = useMemo(() => {\n if (!config.observability?.onError) return undefined\n\n return (error: unknown, errorInfo: ErrorInfo) => {\n if (!config.observability?.onError) return\n\n const unsanitizedError = {\n type: 'internal_error' as const,\n message: error instanceof Error ? error.message : 'Unknown error',\n stack: error instanceof Error ? error.stack : undefined,\n context: {\n componentStack: errorInfo.componentStack ?? undefined,\n },\n originalError: error,\n timestamp: Date.now(),\n }\n\n // Apply sanitization with the same config used for other errors\n const sanitizedError = sanitizeError(unsanitizedError, config.observability.sanitization)\n\n config.observability.onError(sanitizedError)\n }\n }, [config.observability])\n return (\n <ComponentsProvider value={components}>\n <LoadingIndicatorProvider value={LoaderComponent}>\n <ObservabilityProvider observability={config.observability}>\n <ErrorBoundary FallbackComponent={InternalError} onError={handleTopLevelError}>\n <ThemeProvider theme={theme}>\n <LocaleProvider locale={locale} currency={currency}>\n <I18nextProvider i18n={SDKI18next} key={lng}>\n <ApiProvider\n url={config.baseUrl}\n headers={config.headers}\n hooks={config.hooks}\n queryClient={queryClient}\n >\n {children}\n </ApiProvider>\n </I18nextProvider>\n </LocaleProvider>\n </ThemeProvider>\n </ErrorBoundary>\n </ObservabilityProvider>\n </LoadingIndicatorProvider>\n </ComponentsProvider>\n )\n}\n\nexport { GustoProviderCustomUIAdapter }\n"],"names":["GustoProviderCustomUIAdapter","props","children","config","dictionary","lng","locale","currency","theme","components","LoaderComponent","queryClient","language","lang","ns","SDKI18next","useEffect","handleTopLevelError","useMemo","error","errorInfo","unsanitizedError","sanitizedError","sanitizeError","jsx","ComponentsProvider","LoadingIndicatorProvider","ObservabilityProvider","ErrorBoundary","InternalError","ThemeProvider","LocaleProvider","I18nextProvider","ApiProvider"],"mappings":";;;;;;;;;;;;;;;;;AAgDA,MAAMA,IAA4E,CAAAC,MAAS;AACzF,QAAM;AAAA,IACJ,UAAAC;AAAA,IACA,QAAAC;AAAA,IACA,YAAAC;AAAA,IACA,KAAAC,IAAM;AAAA,IACN,QAAAC,IAAS;AAAA,IACT,UAAAC,IAAW;AAAA,IACX,OAAAC;AAAA,IACA,YAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,aAAAC;AAAA,EAAA,IACEV;AAGJ,MAAIG;AACF,eAAWQ,KAAYR,GAAY;AACjC,YAAMS,IAAOD;AACb,iBAAWE,KAAMV,EAAWS,CAAI;AAE9B,QAAAE,EAAW;AAAA,UACTF;AAAA,UACAC;AAAA,UACCV,EAAWS,CAAI,EAA8BC,CAAE;AAAA,UAChD;AAAA,UACA;AAAA,QAAA;AAAA,IAGN;AAIF,EAAAE,EAAU,MAAM;AACd,KAAM,YACJ,MAAMD,EAAW,eAAeV,CAAG;AAAA,EAEvC,GAAG,CAACA,CAAG,CAAC;AAGR,QAAMY,IAAsBC,EAAQ,MAAM;AACxC,QAAKf,EAAO,eAAe;AAE3B,aAAO,CAACgB,GAAgBC,MAAyB;AAC/C,YAAI,CAACjB,EAAO,eAAe,QAAS;AAEpC,cAAMkB,IAAmB;AAAA,UACvB,MAAM;AAAA,UACN,SAASF,aAAiB,QAAQA,EAAM,UAAU;AAAA,UAClD,OAAOA,aAAiB,QAAQA,EAAM,QAAQ;AAAA,UAC9C,SAAS;AAAA,YACP,gBAAgBC,EAAU,kBAAkB;AAAA,UAAA;AAAA,UAE9C,eAAeD;AAAA,UACf,WAAW,KAAK,IAAA;AAAA,QAAI,GAIhBG,IAAiBC,EAAcF,GAAkBlB,EAAO,cAAc,YAAY;AAExF,QAAAA,EAAO,cAAc,QAAQmB,CAAc;AAAA,MAC7C;AAAA,EACF,GAAG,CAACnB,EAAO,aAAa,CAAC;AACzB,SACE,gBAAAqB,EAACC,GAAA,EAAmB,OAAOhB,GACzB,UAAA,gBAAAe,EAACE,GAAA,EAAyB,OAAOhB,GAC/B,UAAA,gBAAAc,EAACG,GAAA,EAAsB,eAAexB,EAAO,eAC3C,UAAA,gBAAAqB,EAACI,GAAA,EAAc,mBAAmBC,GAAe,SAASZ,GACxD,UAAA,gBAAAO,EAACM,GAAA,EAAc,OAAAtB,GACb,UAAA,gBAAAgB,EAACO,GAAA,EAAe,QAAAzB,GAAgB,UAAAC,GAC9B,UAAA,gBAAAiB,EAACQ,GAAA,EAAgB,MAAMjB,GACrB,UAAA,gBAAAS;AAAA,IAACS;AAAA,IAAA;AAAA,MACC,KAAK9B,EAAO;AAAA,MACZ,SAASA,EAAO;AAAA,MAChB,OAAOA,EAAO;AAAA,MACd,aAAAQ;AAAA,MAEC,UAAAT;AAAA,IAAA;AAAA,EAAA,KAPmCG,CASxC,GACF,GACF,EAAA,CACF,EAAA,CACF,GACF,GACF;AAEJ;"}
1
+ {"version":3,"file":"GustoProviderCustomUIAdapter.js","sources":["../../../src/contexts/GustoProvider/GustoProviderCustomUIAdapter.tsx"],"sourcesContent":["import type React from 'react'\nimport type { ErrorInfo } from 'react'\nimport { ErrorBoundary } from 'react-error-boundary'\nimport { I18nextProvider } from 'react-i18next'\nimport type { QueryClient } from '@tanstack/react-query'\nimport { useEffect, useMemo } from 'react'\nimport { ComponentsProvider } from '../ComponentAdapter/ComponentsProvider'\nimport type { ComponentsContextType } from '../ComponentAdapter/useComponentContext'\nimport { ApiProvider } from '../ApiProvider/ApiProvider'\nimport { LoadingIndicatorProvider } from '../LoadingIndicatorProvider/LoadingIndicatorProvider'\nimport type { LoadingIndicatorContextProps } from '../LoadingIndicatorProvider/useLoadingIndicator'\nimport { ObservabilityProvider } from '../ObservabilityProvider'\nimport { sanitizeError } from '../ObservabilityProvider/sanitization'\nimport { SDKI18next } from './SDKI18next'\nimport { InternalError } from '@/components/Common'\nimport { LocaleProvider } from '@/contexts/LocaleProvider'\nimport { ThemeProvider } from '@/contexts/ThemeProvider'\nimport type { GustoSDKTheme } from '@/contexts/ThemeProvider/theme'\nimport type { ResourceDictionary, SupportedLanguages } from '@/types/Helpers'\nimport type { SDKHooks } from '@/types/hooks'\nimport type { ObservabilityHook } from '@/types/observability'\nimport { normalizeToSDKError } from '@/types/sdkError'\n\nexport interface APIConfig {\n baseUrl: string\n headers?: HeadersInit\n hooks?: SDKHooks\n observability?: ObservabilityHook\n}\n\nexport interface GustoProviderProps {\n config: APIConfig\n dictionary?: ResourceDictionary\n lng?: string\n locale?: string\n currency?: string\n theme?: GustoSDKTheme\n queryClient?: QueryClient\n components: ComponentsContextType\n LoaderComponent?: LoadingIndicatorContextProps['LoadingIndicator']\n}\n\nexport interface GustoProviderCustomUIAdapterProps extends GustoProviderProps {\n children?: React.ReactNode\n}\n\n/**\n * A provider that accepts UI component adapters through the components prop\n */\nconst GustoProviderCustomUIAdapter: React.FC<GustoProviderCustomUIAdapterProps> = props => {\n const {\n children,\n config,\n dictionary,\n lng = 'en',\n locale = 'en-US',\n currency = 'USD',\n theme,\n components,\n LoaderComponent,\n queryClient,\n } = props\n\n if (dictionary) {\n for (const language in dictionary) {\n const lang = language as SupportedLanguages\n for (const ns in dictionary[lang]) {\n SDKI18next.addResourceBundle(\n lang,\n ns,\n (dictionary[lang] as Record<string, unknown>)[ns],\n true,\n true,\n )\n }\n }\n }\n\n useEffect(() => {\n void (async () => {\n await SDKI18next.changeLanguage(lng)\n })()\n }, [lng])\n\n const handleTopLevelError = useMemo(() => {\n if (!config.observability?.onError) return undefined\n\n return (error: unknown, errorInfo: ErrorInfo) => {\n if (!config.observability?.onError) return\n\n const sdkError = normalizeToSDKError(error)\n\n const observabilityError = {\n ...sdkError,\n timestamp: Date.now(),\n componentStack: errorInfo.componentStack ?? undefined,\n }\n\n const sanitizedError = sanitizeError(observabilityError, config.observability.sanitization)\n\n config.observability.onError(sanitizedError)\n }\n }, [config.observability])\n return (\n <ComponentsProvider value={components}>\n <LoadingIndicatorProvider value={LoaderComponent}>\n <ObservabilityProvider observability={config.observability}>\n <ErrorBoundary FallbackComponent={InternalError} onError={handleTopLevelError}>\n <ThemeProvider theme={theme}>\n <LocaleProvider locale={locale} currency={currency}>\n <I18nextProvider i18n={SDKI18next} key={lng}>\n <ApiProvider\n url={config.baseUrl}\n headers={config.headers}\n hooks={config.hooks}\n queryClient={queryClient}\n >\n {children}\n </ApiProvider>\n </I18nextProvider>\n </LocaleProvider>\n </ThemeProvider>\n </ErrorBoundary>\n </ObservabilityProvider>\n </LoadingIndicatorProvider>\n </ComponentsProvider>\n )\n}\n\nexport { GustoProviderCustomUIAdapter }\n"],"names":["GustoProviderCustomUIAdapter","props","children","config","dictionary","lng","locale","currency","theme","components","LoaderComponent","queryClient","language","lang","ns","SDKI18next","useEffect","handleTopLevelError","useMemo","error","errorInfo","observabilityError","normalizeToSDKError","sanitizedError","sanitizeError","jsx","ComponentsProvider","LoadingIndicatorProvider","ObservabilityProvider","ErrorBoundary","InternalError","ThemeProvider","LocaleProvider","I18nextProvider","ApiProvider"],"mappings":";;;;;;;;;;;;;;;;;;AAiDA,MAAMA,IAA4E,CAAAC,MAAS;AACzF,QAAM;AAAA,IACJ,UAAAC;AAAA,IACA,QAAAC;AAAA,IACA,YAAAC;AAAA,IACA,KAAAC,IAAM;AAAA,IACN,QAAAC,IAAS;AAAA,IACT,UAAAC,IAAW;AAAA,IACX,OAAAC;AAAA,IACA,YAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,aAAAC;AAAA,EAAA,IACEV;AAEJ,MAAIG;AACF,eAAWQ,KAAYR,GAAY;AACjC,YAAMS,IAAOD;AACb,iBAAWE,KAAMV,EAAWS,CAAI;AAC9B,QAAAE,EAAW;AAAA,UACTF;AAAA,UACAC;AAAA,UACCV,EAAWS,CAAI,EAA8BC,CAAE;AAAA,UAChD;AAAA,UACA;AAAA,QAAA;AAAA,IAGN;AAGF,EAAAE,EAAU,MAAM;AACd,KAAM,YACJ,MAAMD,EAAW,eAAeV,CAAG;AAAA,EAEvC,GAAG,CAACA,CAAG,CAAC;AAER,QAAMY,IAAsBC,EAAQ,MAAM;AACxC,QAAKf,EAAO,eAAe;AAE3B,aAAO,CAACgB,GAAgBC,MAAyB;AAC/C,YAAI,CAACjB,EAAO,eAAe,QAAS;AAIpC,cAAMkB,IAAqB;AAAA,UACzB,GAHeC,EAAoBH,CAAK;AAAA,UAIxC,WAAW,KAAK,IAAA;AAAA,UAChB,gBAAgBC,EAAU,kBAAkB;AAAA,QAAA,GAGxCG,IAAiBC,EAAcH,GAAoBlB,EAAO,cAAc,YAAY;AAE1F,QAAAA,EAAO,cAAc,QAAQoB,CAAc;AAAA,MAC7C;AAAA,EACF,GAAG,CAACpB,EAAO,aAAa,CAAC;AACzB,SACE,gBAAAsB,EAACC,GAAA,EAAmB,OAAOjB,GACzB,UAAA,gBAAAgB,EAACE,GAAA,EAAyB,OAAOjB,GAC/B,UAAA,gBAAAe,EAACG,GAAA,EAAsB,eAAezB,EAAO,eAC3C,UAAA,gBAAAsB,EAACI,GAAA,EAAc,mBAAmBC,GAAe,SAASb,GACxD,UAAA,gBAAAQ,EAACM,GAAA,EAAc,OAAAvB,GACb,UAAA,gBAAAiB,EAACO,GAAA,EAAe,QAAA1B,GAAgB,UAAAC,GAC9B,UAAA,gBAAAkB,EAACQ,GAAA,EAAgB,MAAMlB,GACrB,UAAA,gBAAAU;AAAA,IAACS;AAAA,IAAA;AAAA,MACC,KAAK/B,EAAO;AAAA,MACZ,SAASA,EAAO;AAAA,MAChB,OAAOA,EAAO;AAAA,MACd,aAAAQ;AAAA,MAEC,UAAAT;AAAA,IAAA;AAAA,EAAA,KAPmCG,CASxC,GACF,GACF,EAAA,CACF,EAAA,CACF,GACF,GACF;AAEJ;"}
@@ -1,5 +1,5 @@
1
1
  import "./types/i18next.d.ts"
2
2
  export { ObservabilityProvider } from './ObservabilityProvider';
3
3
  export { useObservability } from './useObservability';
4
- export { createObservabilityError } from './observabilityUtils';
4
+ export { normalizeToSDKError } from '../../types/sdkError';
5
5
  export type { ObservabilityProviderProps } from './ObservabilityProvider';
@@ -1,19 +1,5 @@
1
1
  import { ObservabilityError, ObservabilityMetric, SanitizationConfig } from '../../types/observability';
2
- /**
3
- * Sanitizes a string by replacing PII patterns with redacted placeholders
4
- */
5
2
  export declare function sanitizeString(value: string): string;
6
- /**
7
- * Recursively sanitizes an object by:
8
- * 1. Removing sensitive field names
9
- * 2. Redacting PII patterns in string values
10
- */
11
3
  export declare function sanitizeObject(obj: unknown, additionalSensitiveFields?: string[]): unknown;
12
- /**
13
- * Sanitizes an ObservabilityError to remove PII
14
- */
15
4
  export declare function sanitizeError(error: ObservabilityError, config?: SanitizationConfig): ObservabilityError;
16
- /**
17
- * Sanitizes an ObservabilityMetric to remove PII
18
- */
19
5
  export declare function sanitizeMetric(metric: ObservabilityMetric, config?: SanitizationConfig): ObservabilityMetric;
@@ -1,20 +1,15 @@
1
- const u = [
2
- // SSN patterns (XXX-XX-XXXX, XXXXXXXXX)
1
+ const o = [
3
2
  { pattern: /\b\d{3}-\d{2}-\d{4}\b/g, replacement: "[SSN-REDACTED]" },
4
3
  { pattern: /\b\d{9}\b/g, replacement: "[SSN-REDACTED]" },
5
- // Email addresses
6
4
  {
7
5
  pattern: /\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b/g,
8
6
  replacement: "[EMAIL-REDACTED]"
9
7
  },
10
- // Phone numbers (various formats)
11
8
  { pattern: /\b\d{3}[-.\s]?\d{3}[-.\s]?\d{4}\b/g, replacement: "[PHONE-REDACTED]" },
12
9
  { pattern: /\(\d{3}\)\s*\d{3}[-.\s]?\d{4}/g, replacement: "[PHONE-REDACTED]" },
13
- // Credit card numbers (basic pattern)
14
10
  { pattern: /\b\d{4}[-\s]?\d{4}[-\s]?\d{4}[-\s]?\d{4}\b/g, replacement: "[CC-REDACTED]" },
15
- // API keys and tokens (common patterns)
16
11
  { pattern: /\b[A-Za-z0-9_-]{32,}\b/g, replacement: "[TOKEN-REDACTED]" }
17
- ], d = [
12
+ ], E = [
18
13
  "password",
19
14
  "token",
20
15
  "apiKey",
@@ -33,63 +28,68 @@ const u = [
33
28
  "accountNumber",
34
29
  "account_number"
35
30
  ];
36
- function c(t) {
37
- let e = t;
38
- for (const { pattern: n, replacement: r } of u)
39
- e = e.replace(n, r);
40
- return e;
31
+ function d(e) {
32
+ let t = e;
33
+ for (const { pattern: n, replacement: r } of o)
34
+ t = t.replace(n, r);
35
+ return t;
41
36
  }
42
- function s(t, e = []) {
43
- if (t == null)
44
- return t;
45
- if (typeof t == "string")
46
- return c(t);
47
- if (typeof t == "number" || typeof t == "boolean")
48
- return t;
49
- if (Array.isArray(t))
50
- return t.map((n) => s(n, e));
51
- if (typeof t == "object") {
52
- const n = {}, r = [...d, ...e];
53
- for (const [i, a] of Object.entries(t)) {
54
- if (r.some((o) => i.toLowerCase().includes(o.toLowerCase()))) {
55
- n[i] = "[REDACTED]";
37
+ function s(e, t = []) {
38
+ if (e == null)
39
+ return e;
40
+ if (typeof e == "string")
41
+ return d(e);
42
+ if (typeof e == "number" || typeof e == "boolean")
43
+ return e;
44
+ if (Array.isArray(e))
45
+ return e.map((n) => s(n, t));
46
+ if (typeof e == "object") {
47
+ const n = {}, r = [...E, ...t];
48
+ for (const [a, c] of Object.entries(e)) {
49
+ if (r.some((u) => a.toLowerCase().includes(u.toLowerCase()))) {
50
+ n[a] = "[REDACTED]";
56
51
  continue;
57
52
  }
58
- n[i] = s(a, e);
53
+ n[a] = s(c, t);
59
54
  }
60
55
  return n;
61
56
  }
62
- return t;
57
+ return e;
63
58
  }
64
- function E(t, e = {}) {
59
+ function p(e, t = {}) {
65
60
  const {
66
61
  enabled: n = !0,
67
- includeOriginalError: r = !1,
68
- customErrorSanitizer: i,
69
- additionalSensitiveFields: a = []
70
- } = e;
71
- return i ? i(t) : n ? {
72
- ...t,
73
- message: c(t.message),
74
- stack: t.stack ? c(t.stack) : void 0,
75
- context: s(
76
- t.context,
77
- a
78
- ),
79
- originalError: r ? t.originalError : void 0
80
- } : r ? t : { ...t, originalError: void 0 };
62
+ includeRawError: r = !1,
63
+ customErrorSanitizer: a,
64
+ additionalSensitiveFields: c = []
65
+ } = t;
66
+ if (a)
67
+ return a(e);
68
+ if (!n)
69
+ return r ? e : { ...e, raw: void 0 };
70
+ const u = e.fieldErrors.map((i) => ({
71
+ ...i,
72
+ message: d(i.message),
73
+ metadata: i.metadata ? s(i.metadata, c) : void 0
74
+ }));
75
+ return {
76
+ ...e,
77
+ message: d(e.message),
78
+ fieldErrors: u,
79
+ raw: r ? e.raw : void 0
80
+ };
81
81
  }
82
- function l(t, e = {}) {
83
- const { enabled: n = !0, customMetricSanitizer: r, additionalSensitiveFields: i = [] } = e;
84
- return r ? r(t) : n ? {
85
- ...t,
86
- tags: t.tags ? s(t.tags, i) : void 0
87
- } : t;
82
+ function l(e, t = {}) {
83
+ const { enabled: n = !0, customMetricSanitizer: r, additionalSensitiveFields: a = [] } = t;
84
+ return r ? r(e) : n ? {
85
+ ...e,
86
+ tags: e.tags ? s(e.tags, a) : void 0
87
+ } : e;
88
88
  }
89
89
  export {
90
- E as sanitizeError,
90
+ p as sanitizeError,
91
91
  l as sanitizeMetric,
92
92
  s as sanitizeObject,
93
- c as sanitizeString
93
+ d as sanitizeString
94
94
  };
95
95
  //# sourceMappingURL=sanitization.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sanitization.js","sources":["../../../src/contexts/ObservabilityProvider/sanitization.ts"],"sourcesContent":["import type {\n ObservabilityError,\n ObservabilityMetric,\n SanitizationConfig,\n} from '@/types/observability'\n\n/**\n * Common PII patterns to redact from strings\n */\nconst PII_PATTERNS = [\n // SSN patterns (XXX-XX-XXXX, XXXXXXXXX)\n { pattern: /\\b\\d{3}-\\d{2}-\\d{4}\\b/g, replacement: '[SSN-REDACTED]' },\n { pattern: /\\b\\d{9}\\b/g, replacement: '[SSN-REDACTED]' },\n\n // Email addresses\n {\n pattern: /\\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Z|a-z]{2,}\\b/g,\n replacement: '[EMAIL-REDACTED]',\n },\n\n // Phone numbers (various formats)\n { pattern: /\\b\\d{3}[-.\\s]?\\d{3}[-.\\s]?\\d{4}\\b/g, replacement: '[PHONE-REDACTED]' },\n { pattern: /\\(\\d{3}\\)\\s*\\d{3}[-.\\s]?\\d{4}/g, replacement: '[PHONE-REDACTED]' },\n\n // Credit card numbers (basic pattern)\n { pattern: /\\b\\d{4}[-\\s]?\\d{4}[-\\s]?\\d{4}[-\\s]?\\d{4}\\b/g, replacement: '[CC-REDACTED]' },\n\n // API keys and tokens (common patterns)\n { pattern: /\\b[A-Za-z0-9_-]{32,}\\b/g, replacement: '[TOKEN-REDACTED]' },\n]\n\n/**\n * Fields that commonly contain sensitive data and should be removed\n */\nconst SENSITIVE_FIELD_NAMES = [\n 'password',\n 'token',\n 'apiKey',\n 'api_key',\n 'secret',\n 'ssn',\n 'social_security_number',\n 'creditCard',\n 'credit_card',\n 'cvv',\n 'pin',\n 'bankAccount',\n 'bank_account',\n 'routingNumber',\n 'routing_number',\n 'accountNumber',\n 'account_number',\n]\n\n/**\n * Sanitizes a string by replacing PII patterns with redacted placeholders\n */\nexport function sanitizeString(value: string): string {\n let sanitized = value\n\n for (const { pattern, replacement } of PII_PATTERNS) {\n sanitized = sanitized.replace(pattern, replacement)\n }\n\n return sanitized\n}\n\n/**\n * Recursively sanitizes an object by:\n * 1. Removing sensitive field names\n * 2. Redacting PII patterns in string values\n */\nexport function sanitizeObject(obj: unknown, additionalSensitiveFields: string[] = []): unknown {\n if (obj === null || obj === undefined) {\n return obj\n }\n\n if (typeof obj === 'string') {\n return sanitizeString(obj)\n }\n\n if (typeof obj === 'number' || typeof obj === 'boolean') {\n return obj\n }\n\n if (Array.isArray(obj)) {\n return obj.map(item => sanitizeObject(item, additionalSensitiveFields))\n }\n\n if (typeof obj === 'object') {\n const sanitized: Record<string, unknown> = {}\n\n // Combine default and additional sensitive fields for this call only\n const allSensitiveFields = [...SENSITIVE_FIELD_NAMES, ...additionalSensitiveFields]\n\n for (const [key, value] of Object.entries(obj)) {\n // Skip sensitive fields entirely\n if (allSensitiveFields.some(field => key.toLowerCase().includes(field.toLowerCase()))) {\n sanitized[key] = '[REDACTED]'\n continue\n }\n\n sanitized[key] = sanitizeObject(value, additionalSensitiveFields)\n }\n\n return sanitized\n }\n\n return obj\n}\n\n/**\n * Sanitizes an ObservabilityError to remove PII\n */\nexport function sanitizeError(\n error: ObservabilityError,\n config: SanitizationConfig = {},\n): ObservabilityError {\n const {\n enabled = true,\n includeOriginalError = false,\n customErrorSanitizer,\n additionalSensitiveFields = [],\n } = config\n\n // If custom sanitizer is provided, use it\n if (customErrorSanitizer) {\n return customErrorSanitizer(error)\n }\n\n // If sanitization is disabled, return as-is but still respect includeOriginalError\n if (!enabled) {\n return includeOriginalError ? error : { ...error, originalError: undefined }\n }\n\n // Sanitize the error, passing additionalSensitiveFields to sanitizeObject\n const sanitized: ObservabilityError = {\n ...error,\n message: sanitizeString(error.message),\n stack: error.stack ? sanitizeString(error.stack) : undefined,\n context: sanitizeObject(\n error.context,\n additionalSensitiveFields,\n ) as ObservabilityError['context'],\n originalError: includeOriginalError ? error.originalError : undefined,\n }\n\n return sanitized\n}\n\n/**\n * Sanitizes an ObservabilityMetric to remove PII\n */\nexport function sanitizeMetric(\n metric: ObservabilityMetric,\n config: SanitizationConfig = {},\n): ObservabilityMetric {\n const { enabled = true, customMetricSanitizer, additionalSensitiveFields = [] } = config\n\n // If custom sanitizer is provided, use it\n if (customMetricSanitizer) {\n return customMetricSanitizer(metric)\n }\n\n // If sanitization is disabled, return as-is\n if (!enabled) {\n return metric\n }\n\n // Sanitize metric tags (in case they contain dynamic values), passing additionalSensitiveFields\n const sanitized: ObservabilityMetric = {\n ...metric,\n tags: metric.tags\n ? (sanitizeObject(metric.tags, additionalSensitiveFields) as Record<string, string>)\n : undefined,\n }\n\n return sanitized\n}\n"],"names":["PII_PATTERNS","SENSITIVE_FIELD_NAMES","sanitizeString","value","sanitized","pattern","replacement","sanitizeObject","obj","additionalSensitiveFields","item","allSensitiveFields","key","field","sanitizeError","error","config","enabled","includeOriginalError","customErrorSanitizer","sanitizeMetric","metric","customMetricSanitizer"],"mappings":"AASA,MAAMA,IAAe;AAAA;AAAA,EAEnB,EAAE,SAAS,0BAA0B,aAAa,iBAAA;AAAA,EAClD,EAAE,SAAS,cAAc,aAAa,iBAAA;AAAA;AAAA,EAGtC;AAAA,IACE,SAAS;AAAA,IACT,aAAa;AAAA,EAAA;AAAA;AAAA,EAIf,EAAE,SAAS,sCAAsC,aAAa,mBAAA;AAAA,EAC9D,EAAE,SAAS,kCAAkC,aAAa,mBAAA;AAAA;AAAA,EAG1D,EAAE,SAAS,+CAA+C,aAAa,gBAAA;AAAA;AAAA,EAGvE,EAAE,SAAS,2BAA2B,aAAa,mBAAA;AACrD,GAKMC,IAAwB;AAAA,EAC5B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAKO,SAASC,EAAeC,GAAuB;AACpD,MAAIC,IAAYD;AAEhB,aAAW,EAAE,SAAAE,GAAS,aAAAC,EAAA,KAAiBN;AACrC,IAAAI,IAAYA,EAAU,QAAQC,GAASC,CAAW;AAGpD,SAAOF;AACT;AAOO,SAASG,EAAeC,GAAcC,IAAsC,IAAa;AAC9F,MAAID,KAAQ;AACV,WAAOA;AAGT,MAAI,OAAOA,KAAQ;AACjB,WAAON,EAAeM,CAAG;AAG3B,MAAI,OAAOA,KAAQ,YAAY,OAAOA,KAAQ;AAC5C,WAAOA;AAGT,MAAI,MAAM,QAAQA,CAAG;AACnB,WAAOA,EAAI,IAAI,CAAAE,MAAQH,EAAeG,GAAMD,CAAyB,CAAC;AAGxE,MAAI,OAAOD,KAAQ,UAAU;AAC3B,UAAMJ,IAAqC,CAAA,GAGrCO,IAAqB,CAAC,GAAGV,GAAuB,GAAGQ,CAAyB;AAElF,eAAW,CAACG,GAAKT,CAAK,KAAK,OAAO,QAAQK,CAAG,GAAG;AAE9C,UAAIG,EAAmB,KAAK,CAAAE,MAASD,EAAI,YAAA,EAAc,SAASC,EAAM,YAAA,CAAa,CAAC,GAAG;AACrF,QAAAT,EAAUQ,CAAG,IAAI;AACjB;AAAA,MACF;AAEA,MAAAR,EAAUQ,CAAG,IAAIL,EAAeJ,GAAOM,CAAyB;AAAA,IAClE;AAEA,WAAOL;AAAA,EACT;AAEA,SAAOI;AACT;AAKO,SAASM,EACdC,GACAC,IAA6B,IACT;AACpB,QAAM;AAAA,IACJ,SAAAC,IAAU;AAAA,IACV,sBAAAC,IAAuB;AAAA,IACvB,sBAAAC;AAAA,IACA,2BAAAV,IAA4B,CAAA;AAAA,EAAC,IAC3BO;AAGJ,SAAIG,IACKA,EAAqBJ,CAAK,IAI9BE,IAKiC;AAAA,IACpC,GAAGF;AAAA,IACH,SAASb,EAAea,EAAM,OAAO;AAAA,IACrC,OAAOA,EAAM,QAAQb,EAAea,EAAM,KAAK,IAAI;AAAA,IACnD,SAASR;AAAA,MACPQ,EAAM;AAAA,MACNN;AAAA,IAAA;AAAA,IAEF,eAAeS,IAAuBH,EAAM,gBAAgB;AAAA,EAAA,IAZrDG,IAAuBH,IAAQ,EAAE,GAAGA,GAAO,eAAe,OAAA;AAgBrE;AAKO,SAASK,EACdC,GACAL,IAA6B,IACR;AACrB,QAAM,EAAE,SAAAC,IAAU,IAAM,uBAAAK,GAAuB,2BAAAb,IAA4B,CAAA,MAAOO;AAGlF,SAAIM,IACKA,EAAsBD,CAAM,IAIhCJ,IAKkC;AAAA,IACrC,GAAGI;AAAA,IACH,MAAMA,EAAO,OACRd,EAAec,EAAO,MAAMZ,CAAyB,IACtD;AAAA,EAAA,IARGY;AAYX;"}
1
+ {"version":3,"file":"sanitization.js","sources":["../../../src/contexts/ObservabilityProvider/sanitization.ts"],"sourcesContent":["import type {\n ObservabilityError,\n ObservabilityMetric,\n SanitizationConfig,\n} from '@/types/observability'\n\nconst PII_PATTERNS = [\n { pattern: /\\b\\d{3}-\\d{2}-\\d{4}\\b/g, replacement: '[SSN-REDACTED]' },\n { pattern: /\\b\\d{9}\\b/g, replacement: '[SSN-REDACTED]' },\n {\n pattern: /\\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Z|a-z]{2,}\\b/g,\n replacement: '[EMAIL-REDACTED]',\n },\n { pattern: /\\b\\d{3}[-.\\s]?\\d{3}[-.\\s]?\\d{4}\\b/g, replacement: '[PHONE-REDACTED]' },\n { pattern: /\\(\\d{3}\\)\\s*\\d{3}[-.\\s]?\\d{4}/g, replacement: '[PHONE-REDACTED]' },\n { pattern: /\\b\\d{4}[-\\s]?\\d{4}[-\\s]?\\d{4}[-\\s]?\\d{4}\\b/g, replacement: '[CC-REDACTED]' },\n { pattern: /\\b[A-Za-z0-9_-]{32,}\\b/g, replacement: '[TOKEN-REDACTED]' },\n]\n\nconst SENSITIVE_FIELD_NAMES = [\n 'password',\n 'token',\n 'apiKey',\n 'api_key',\n 'secret',\n 'ssn',\n 'social_security_number',\n 'creditCard',\n 'credit_card',\n 'cvv',\n 'pin',\n 'bankAccount',\n 'bank_account',\n 'routingNumber',\n 'routing_number',\n 'accountNumber',\n 'account_number',\n]\n\nexport function sanitizeString(value: string): string {\n let sanitized = value\n\n for (const { pattern, replacement } of PII_PATTERNS) {\n sanitized = sanitized.replace(pattern, replacement)\n }\n\n return sanitized\n}\n\nexport function sanitizeObject(obj: unknown, additionalSensitiveFields: string[] = []): unknown {\n if (obj === null || obj === undefined) {\n return obj\n }\n\n if (typeof obj === 'string') {\n return sanitizeString(obj)\n }\n\n if (typeof obj === 'number' || typeof obj === 'boolean') {\n return obj\n }\n\n if (Array.isArray(obj)) {\n return obj.map(item => sanitizeObject(item, additionalSensitiveFields))\n }\n\n if (typeof obj === 'object') {\n const sanitized: Record<string, unknown> = {}\n\n const allSensitiveFields = [...SENSITIVE_FIELD_NAMES, ...additionalSensitiveFields]\n\n for (const [key, value] of Object.entries(obj)) {\n if (allSensitiveFields.some(field => key.toLowerCase().includes(field.toLowerCase()))) {\n sanitized[key] = '[REDACTED]'\n continue\n }\n\n sanitized[key] = sanitizeObject(value, additionalSensitiveFields)\n }\n\n return sanitized\n }\n\n return obj\n}\n\nexport function sanitizeError(\n error: ObservabilityError,\n config: SanitizationConfig = {},\n): ObservabilityError {\n const {\n enabled = true,\n includeRawError = false,\n customErrorSanitizer,\n additionalSensitiveFields = [],\n } = config\n\n if (customErrorSanitizer) {\n return customErrorSanitizer(error)\n }\n\n if (!enabled) {\n return includeRawError ? error : { ...error, raw: undefined }\n }\n\n const sanitizedFieldErrors = error.fieldErrors.map(fe => ({\n ...fe,\n message: sanitizeString(fe.message),\n metadata: fe.metadata\n ? (sanitizeObject(fe.metadata, additionalSensitiveFields) as Record<string, unknown>)\n : undefined,\n }))\n\n return {\n ...error,\n message: sanitizeString(error.message),\n fieldErrors: sanitizedFieldErrors,\n raw: includeRawError ? error.raw : undefined,\n }\n}\n\nexport function sanitizeMetric(\n metric: ObservabilityMetric,\n config: SanitizationConfig = {},\n): ObservabilityMetric {\n const { enabled = true, customMetricSanitizer, additionalSensitiveFields = [] } = config\n\n if (customMetricSanitizer) {\n return customMetricSanitizer(metric)\n }\n\n if (!enabled) {\n return metric\n }\n\n return {\n ...metric,\n tags: metric.tags\n ? (sanitizeObject(metric.tags, additionalSensitiveFields) as Record<string, string>)\n : undefined,\n }\n}\n"],"names":["PII_PATTERNS","SENSITIVE_FIELD_NAMES","sanitizeString","value","sanitized","pattern","replacement","sanitizeObject","obj","additionalSensitiveFields","item","allSensitiveFields","key","field","sanitizeError","error","config","enabled","includeRawError","customErrorSanitizer","sanitizedFieldErrors","fe","sanitizeMetric","metric","customMetricSanitizer"],"mappings":"AAMA,MAAMA,IAAe;AAAA,EACnB,EAAE,SAAS,0BAA0B,aAAa,iBAAA;AAAA,EAClD,EAAE,SAAS,cAAc,aAAa,iBAAA;AAAA,EACtC;AAAA,IACE,SAAS;AAAA,IACT,aAAa;AAAA,EAAA;AAAA,EAEf,EAAE,SAAS,sCAAsC,aAAa,mBAAA;AAAA,EAC9D,EAAE,SAAS,kCAAkC,aAAa,mBAAA;AAAA,EAC1D,EAAE,SAAS,+CAA+C,aAAa,gBAAA;AAAA,EACvE,EAAE,SAAS,2BAA2B,aAAa,mBAAA;AACrD,GAEMC,IAAwB;AAAA,EAC5B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEO,SAASC,EAAeC,GAAuB;AACpD,MAAIC,IAAYD;AAEhB,aAAW,EAAE,SAAAE,GAAS,aAAAC,EAAA,KAAiBN;AACrC,IAAAI,IAAYA,EAAU,QAAQC,GAASC,CAAW;AAGpD,SAAOF;AACT;AAEO,SAASG,EAAeC,GAAcC,IAAsC,IAAa;AAC9F,MAAID,KAAQ;AACV,WAAOA;AAGT,MAAI,OAAOA,KAAQ;AACjB,WAAON,EAAeM,CAAG;AAG3B,MAAI,OAAOA,KAAQ,YAAY,OAAOA,KAAQ;AAC5C,WAAOA;AAGT,MAAI,MAAM,QAAQA,CAAG;AACnB,WAAOA,EAAI,IAAI,CAAAE,MAAQH,EAAeG,GAAMD,CAAyB,CAAC;AAGxE,MAAI,OAAOD,KAAQ,UAAU;AAC3B,UAAMJ,IAAqC,CAAA,GAErCO,IAAqB,CAAC,GAAGV,GAAuB,GAAGQ,CAAyB;AAElF,eAAW,CAACG,GAAKT,CAAK,KAAK,OAAO,QAAQK,CAAG,GAAG;AAC9C,UAAIG,EAAmB,KAAK,CAAAE,MAASD,EAAI,YAAA,EAAc,SAASC,EAAM,YAAA,CAAa,CAAC,GAAG;AACrF,QAAAT,EAAUQ,CAAG,IAAI;AACjB;AAAA,MACF;AAEA,MAAAR,EAAUQ,CAAG,IAAIL,EAAeJ,GAAOM,CAAyB;AAAA,IAClE;AAEA,WAAOL;AAAA,EACT;AAEA,SAAOI;AACT;AAEO,SAASM,EACdC,GACAC,IAA6B,IACT;AACpB,QAAM;AAAA,IACJ,SAAAC,IAAU;AAAA,IACV,iBAAAC,IAAkB;AAAA,IAClB,sBAAAC;AAAA,IACA,2BAAAV,IAA4B,CAAA;AAAA,EAAC,IAC3BO;AAEJ,MAAIG;AACF,WAAOA,EAAqBJ,CAAK;AAGnC,MAAI,CAACE;AACH,WAAOC,IAAkBH,IAAQ,EAAE,GAAGA,GAAO,KAAK,OAAA;AAGpD,QAAMK,IAAuBL,EAAM,YAAY,IAAI,CAAAM,OAAO;AAAA,IACxD,GAAGA;AAAA,IACH,SAASnB,EAAemB,EAAG,OAAO;AAAA,IAClC,UAAUA,EAAG,WACRd,EAAec,EAAG,UAAUZ,CAAyB,IACtD;AAAA,EAAA,EACJ;AAEF,SAAO;AAAA,IACL,GAAGM;AAAA,IACH,SAASb,EAAea,EAAM,OAAO;AAAA,IACrC,aAAaK;AAAA,IACb,KAAKF,IAAkBH,EAAM,MAAM;AAAA,EAAA;AAEvC;AAEO,SAASO,EACdC,GACAP,IAA6B,IACR;AACrB,QAAM,EAAE,SAAAC,IAAU,IAAM,uBAAAO,GAAuB,2BAAAf,IAA4B,CAAA,MAAOO;AAElF,SAAIQ,IACKA,EAAsBD,CAAM,IAGhCN,IAIE;AAAA,IACL,GAAGM;AAAA,IACH,MAAMA,EAAO,OACRhB,EAAegB,EAAO,MAAMd,CAAyB,IACtD;AAAA,EAAA,IAPGc;AASX;"}
@@ -1,7 +1,4 @@
1
1
  import { ObservabilityError, ObservabilityMetric, ObservabilityHook } from '../../types/observability';
2
- /**
3
- * Wraps an ObservabilityHook to apply sanitization before calling the callbacks
4
- */
5
2
  export declare function useSanitizedObservability(observability?: ObservabilityHook): {
6
3
  onError: ((error: ObservabilityError) => void) | undefined;
7
4
  onMetric: ((metric: ObservabilityMetric) => void) | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"useSanitizedObservability.js","sources":["../../../src/contexts/ObservabilityProvider/useSanitizedObservability.ts"],"sourcesContent":["import { useCallback } from 'react'\nimport { sanitizeError, sanitizeMetric } from './sanitization'\nimport type {\n ObservabilityError,\n ObservabilityMetric,\n ObservabilityHook,\n} from '@/types/observability'\n\n/**\n * Wraps an ObservabilityHook to apply sanitization before calling the callbacks\n */\nexport function useSanitizedObservability(observability?: ObservabilityHook) {\n const sanitizationConfig = observability?.sanitization\n\n const onError = useCallback(\n (error: ObservabilityError) => {\n if (!observability?.onError) return\n\n const sanitized = sanitizeError(error, sanitizationConfig)\n observability.onError(sanitized)\n },\n [observability, sanitizationConfig],\n )\n\n const onMetric = useCallback(\n (metric: ObservabilityMetric) => {\n if (!observability?.onMetric) return\n\n const sanitized = sanitizeMetric(metric, sanitizationConfig)\n observability.onMetric(sanitized)\n },\n [observability, sanitizationConfig],\n )\n\n if (!observability) {\n return undefined\n }\n\n return {\n onError: observability.onError ? onError : undefined,\n onMetric: observability.onMetric ? onMetric : undefined,\n }\n}\n"],"names":["useSanitizedObservability","observability","sanitizationConfig","onError","useCallback","error","sanitized","sanitizeError","onMetric","metric","sanitizeMetric"],"mappings":";;AAWO,SAASA,EAA0BC,GAAmC;AAC3E,QAAMC,IAAqBD,GAAe,cAEpCE,IAAUC;AAAA,IACd,CAACC,MAA8B;AAC7B,UAAI,CAACJ,GAAe,QAAS;AAE7B,YAAMK,IAAYC,EAAcF,GAAOH,CAAkB;AACzD,MAAAD,EAAc,QAAQK,CAAS;AAAA,IACjC;AAAA,IACA,CAACL,GAAeC,CAAkB;AAAA,EAAA,GAG9BM,IAAWJ;AAAA,IACf,CAACK,MAAgC;AAC/B,UAAI,CAACR,GAAe,SAAU;AAE9B,YAAMK,IAAYI,EAAeD,GAAQP,CAAkB;AAC3D,MAAAD,EAAc,SAASK,CAAS;AAAA,IAClC;AAAA,IACA,CAACL,GAAeC,CAAkB;AAAA,EAAA;AAGpC,MAAKD;AAIL,WAAO;AAAA,MACL,SAASA,EAAc,UAAUE,IAAU;AAAA,MAC3C,UAAUF,EAAc,WAAWO,IAAW;AAAA,IAAA;AAElD;"}
1
+ {"version":3,"file":"useSanitizedObservability.js","sources":["../../../src/contexts/ObservabilityProvider/useSanitizedObservability.ts"],"sourcesContent":["import { useCallback } from 'react'\nimport { sanitizeError, sanitizeMetric } from './sanitization'\nimport type {\n ObservabilityError,\n ObservabilityMetric,\n ObservabilityHook,\n} from '@/types/observability'\n\nexport function useSanitizedObservability(observability?: ObservabilityHook) {\n const sanitizationConfig = observability?.sanitization\n\n const onError = useCallback(\n (error: ObservabilityError) => {\n if (!observability?.onError) return\n\n const sanitized = sanitizeError(error, sanitizationConfig)\n observability.onError(sanitized)\n },\n [observability, sanitizationConfig],\n )\n\n const onMetric = useCallback(\n (metric: ObservabilityMetric) => {\n if (!observability?.onMetric) return\n\n const sanitized = sanitizeMetric(metric, sanitizationConfig)\n observability.onMetric(sanitized)\n },\n [observability, sanitizationConfig],\n )\n\n if (!observability) {\n return undefined\n }\n\n return {\n onError: observability.onError ? onError : undefined,\n onMetric: observability.onMetric ? onMetric : undefined,\n }\n}\n"],"names":["useSanitizedObservability","observability","sanitizationConfig","onError","useCallback","error","sanitized","sanitizeError","onMetric","metric","sanitizeMetric"],"mappings":";;AAQO,SAASA,EAA0BC,GAAmC;AAC3E,QAAMC,IAAqBD,GAAe,cAEpCE,IAAUC;AAAA,IACd,CAACC,MAA8B;AAC7B,UAAI,CAACJ,GAAe,QAAS;AAE7B,YAAMK,IAAYC,EAAcF,GAAOH,CAAkB;AACzD,MAAAD,EAAc,QAAQK,CAAS;AAAA,IACjC;AAAA,IACA,CAACL,GAAeC,CAAkB;AAAA,EAAA,GAG9BM,IAAWJ;AAAA,IACf,CAACK,MAAgC;AAC/B,UAAI,CAACR,GAAe,SAAU;AAE9B,YAAMK,IAAYI,EAAeD,GAAQP,CAAkB;AAC3D,MAAAD,EAAc,SAASK,CAAS;AAAA,IAClC;AAAA,IACA,CAACL,GAAeC,CAAkB;AAAA,EAAA;AAGpC,MAAKD;AAIL,WAAO;AAAA,MACL,SAASA,EAAc,UAAUE,IAAU;AAAA,MAC3C,UAAUF,EAAc,WAAWO,IAAW;AAAA,IAAA;AAElD;"}