@gnwebsoft/ui 4.0.3 → 4.0.4

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 (335) hide show
  1. package/dist/{chunk-DKD73ADK.cjs → chunk-2QTXS736.cjs} +28 -77
  2. package/dist/{chunk-DS524L7W.cjs → chunk-3RZ4JNO3.cjs} +5 -5
  3. package/dist/chunk-HKO2FXDM.js +2232 -0
  4. package/dist/{chunk-M3NVOZ7L.cjs → chunk-IKHMJW5A.cjs} +1 -1
  5. package/dist/chunk-LUW7V5GI.cjs +1 -1
  6. package/dist/chunk-MVPLBJRK.cjs +1 -1
  7. package/dist/chunk-NMJ5V7FQ.js +2512 -0
  8. package/dist/chunk-XN3KVY4J.js +467 -0
  9. package/dist/chunk-XTPFOURJ.cjs +72 -0
  10. package/dist/chunk-Y3QTSDLJ.cjs +1 -1
  11. package/dist/core/api/ApiClient.d.ts +329 -0
  12. package/dist/core/api/ApiClient.d.ts.map +1 -0
  13. package/dist/core/api/CorrelationIdGenerator.d.ts +52 -0
  14. package/dist/core/api/CorrelationIdGenerator.d.ts.map +1 -0
  15. package/dist/core/api/Errors/ErrorNormalizer.d.ts +106 -0
  16. package/dist/core/api/Errors/ErrorNormalizer.d.ts.map +1 -0
  17. package/dist/core/api/Interceptors/InterceptorManager.d.ts +236 -0
  18. package/dist/core/api/Interceptors/InterceptorManager.d.ts.map +1 -0
  19. package/dist/core/api/Models/FilterModel.d.ts +22 -0
  20. package/dist/core/api/Models/FilterModel.d.ts.map +1 -0
  21. package/dist/core/api/Models/QueryParams.d.ts +13 -0
  22. package/dist/core/api/Models/QueryParams.d.ts.map +1 -0
  23. package/dist/core/api/Models/index.d.ts +3 -0
  24. package/dist/core/api/Models/index.d.ts.map +1 -0
  25. package/dist/core/api/RequestManager.d.ts +142 -0
  26. package/dist/core/api/RequestManager.d.ts.map +1 -0
  27. package/dist/core/api/Retry/RetryHandler.d.ts +100 -0
  28. package/dist/core/api/Retry/RetryHandler.d.ts.map +1 -0
  29. package/dist/core/api/Signals/SignalManager.d.ts +153 -0
  30. package/dist/core/api/Signals/SignalManager.d.ts.map +1 -0
  31. package/dist/core/api/Utils/ResponseParser.d.ts +105 -0
  32. package/dist/core/api/Utils/ResponseParser.d.ts.map +1 -0
  33. package/dist/core/api/Utils/UrlBuilder.d.ts +111 -0
  34. package/dist/core/api/Utils/UrlBuilder.d.ts.map +1 -0
  35. package/dist/core/api/createApiClient.d.ts +243 -0
  36. package/dist/core/api/createApiClient.d.ts.map +1 -0
  37. package/dist/core/api/index.d.ts +7 -0
  38. package/dist/core/api/index.d.ts.map +1 -0
  39. package/dist/core/api/types/ApiError.d.ts +17 -0
  40. package/dist/core/api/types/ApiError.d.ts.map +1 -0
  41. package/dist/core/api/types/ApiResponse.d.ts +76 -0
  42. package/dist/core/api/types/ApiResponse.d.ts.map +1 -0
  43. package/dist/core/api/types/CancelToken.d.ts +15 -0
  44. package/dist/core/api/types/CancelToken.d.ts.map +1 -0
  45. package/dist/core/api/types/ErrorInterceptor.d.ts +3 -0
  46. package/dist/core/api/types/ErrorInterceptor.d.ts.map +1 -0
  47. package/dist/core/api/types/ErrorResponseData.d.ts +68 -0
  48. package/dist/core/api/types/ErrorResponseData.d.ts.map +1 -0
  49. package/dist/core/api/types/RequestConfig.d.ts +21 -0
  50. package/dist/core/api/types/RequestConfig.d.ts.map +1 -0
  51. package/dist/core/api/types/RequestInterceptor.d.ts +3 -0
  52. package/dist/core/api/types/RequestInterceptor.d.ts.map +1 -0
  53. package/dist/core/api/types/ResponseInterceptor.d.ts +3 -0
  54. package/dist/core/api/types/ResponseInterceptor.d.ts.map +1 -0
  55. package/dist/core/api/types/ValidationErrors.d.ts +7 -0
  56. package/dist/core/api/types/ValidationErrors.d.ts.map +1 -0
  57. package/dist/core/api/types/index.d.ts +10 -0
  58. package/dist/core/api/types/index.d.ts.map +1 -0
  59. package/dist/core/api/useValidationErrors.d.ts +11 -0
  60. package/dist/core/api/useValidationErrors.d.ts.map +1 -0
  61. package/dist/core/components/AuthorizedView/AuthorizedView.d.ts +7 -0
  62. package/dist/core/components/AuthorizedView/AuthorizedView.d.ts.map +1 -0
  63. package/dist/core/components/AuthorizedView/index.d.ts +2 -0
  64. package/dist/core/components/AuthorizedView/index.d.ts.map +1 -0
  65. package/dist/core/components/CancelButton/CancelButton.d.ts +4 -0
  66. package/dist/core/components/CancelButton/CancelButton.d.ts.map +1 -0
  67. package/dist/core/components/CancelButton/index.d.ts +2 -0
  68. package/dist/core/components/CancelButton/index.d.ts.map +1 -0
  69. package/dist/core/components/ClearButton/ClearButton.d.ts +63 -0
  70. package/dist/core/components/ClearButton/ClearButton.d.ts.map +1 -0
  71. package/dist/core/components/ClearButton/index.d.ts +2 -0
  72. package/dist/core/components/ClearButton/index.d.ts.map +1 -0
  73. package/dist/core/components/Containers/SimpleContainer.d.ts +10 -0
  74. package/dist/core/components/Containers/SimpleContainer.d.ts.map +1 -0
  75. package/dist/core/components/Containers/index.d.ts +2 -0
  76. package/dist/core/components/Containers/index.d.ts.map +1 -0
  77. package/dist/core/components/FilterButton/FilterButton.d.ts +86 -0
  78. package/dist/core/components/FilterButton/FilterButton.d.ts.map +1 -0
  79. package/dist/core/components/FilterButton/index.d.ts +2 -0
  80. package/dist/core/components/FilterButton/index.d.ts.map +1 -0
  81. package/dist/core/components/FilterDisplay/FilterChip.d.ts +9 -0
  82. package/dist/core/components/FilterDisplay/FilterChip.d.ts.map +1 -0
  83. package/dist/core/components/FilterDisplay/FilterDisplay.d.ts +10 -0
  84. package/dist/core/components/FilterDisplay/FilterDisplay.d.ts.map +1 -0
  85. package/dist/core/components/FilterDisplay/index.d.ts +3 -0
  86. package/dist/core/components/FilterDisplay/index.d.ts.map +1 -0
  87. package/dist/core/components/FilterWrapper/FilterWrapper.d.ts +99 -0
  88. package/dist/core/components/FilterWrapper/FilterWrapper.d.ts.map +1 -0
  89. package/dist/core/components/FilterWrapper/index.d.ts +2 -0
  90. package/dist/core/components/FilterWrapper/index.d.ts.map +1 -0
  91. package/dist/core/components/Footer/Footer.d.ts +3 -0
  92. package/dist/core/components/Footer/Footer.d.ts.map +1 -0
  93. package/dist/core/components/Footer/index.d.ts +2 -0
  94. package/dist/core/components/Footer/index.d.ts.map +1 -0
  95. package/dist/core/components/LabelText/LabelText.d.ts +103 -0
  96. package/dist/core/components/LabelText/LabelText.d.ts.map +1 -0
  97. package/dist/core/components/LabelText/index.d.ts +2 -0
  98. package/dist/core/components/LabelText/index.d.ts.map +1 -0
  99. package/dist/core/components/RenderIf/RenderIf.d.ts +7 -0
  100. package/dist/core/components/RenderIf/RenderIf.d.ts.map +1 -0
  101. package/dist/core/components/RenderIf/index.d.ts +2 -0
  102. package/dist/core/components/RenderIf/index.d.ts.map +1 -0
  103. package/dist/core/components/SectionBox/SectionBox.d.ts +15 -0
  104. package/dist/core/components/SectionBox/SectionBox.d.ts.map +1 -0
  105. package/dist/core/components/SectionBox/index.d.ts +2 -0
  106. package/dist/core/components/SectionBox/index.d.ts.map +1 -0
  107. package/dist/core/components/SimpleTabs/SimpleTabs.d.ts +17 -0
  108. package/dist/core/components/SimpleTabs/SimpleTabs.d.ts.map +1 -0
  109. package/dist/core/components/SimpleTabs/index.d.ts +2 -0
  110. package/dist/core/components/SimpleTabs/index.d.ts.map +1 -0
  111. package/dist/core/components/SubmitButton/SubmitButton.d.ts +6 -0
  112. package/dist/core/components/SubmitButton/SubmitButton.d.ts.map +1 -0
  113. package/dist/core/components/SubmitButton/index.d.ts +2 -0
  114. package/dist/core/components/SubmitButton/index.d.ts.map +1 -0
  115. package/dist/core/components/WithRef/WithRef.d.ts +14 -0
  116. package/dist/core/components/WithRef/WithRef.d.ts.map +1 -0
  117. package/dist/core/components/WithRef/index.d.ts +2 -0
  118. package/dist/core/components/WithRef/index.d.ts.map +1 -0
  119. package/dist/core/components/index.d.ts +15 -0
  120. package/dist/core/components/index.d.ts.map +1 -0
  121. package/dist/core/config.d.ts +24 -0
  122. package/dist/core/config.d.ts.map +1 -0
  123. package/dist/core/hooks/index.d.ts +3 -0
  124. package/dist/core/hooks/index.d.ts.map +1 -0
  125. package/dist/core/hooks/makeQuery.d.ts +12 -0
  126. package/dist/core/hooks/makeQuery.d.ts.map +1 -0
  127. package/dist/core/hooks/useApiClient.d.ts +3 -0
  128. package/dist/core/hooks/useApiClient.d.ts.map +1 -0
  129. package/dist/core/hooks/useFormErrorHandler.d.ts +35 -0
  130. package/dist/core/hooks/useFormErrorHandler.d.ts.map +1 -0
  131. package/dist/core/hooks/useListView.d.ts +20 -0
  132. package/dist/core/hooks/useListView.d.ts.map +1 -0
  133. package/dist/core/index.cjs +3 -3
  134. package/dist/core/index.d.ts +9 -0
  135. package/dist/core/index.d.ts.map +1 -0
  136. package/dist/core/index.js +1 -1
  137. package/dist/core/models.d.ts +5 -0
  138. package/dist/core/models.d.ts.map +1 -0
  139. package/dist/core/types/FilterLabel.d.ts +6 -0
  140. package/dist/core/types/FilterLabel.d.ts.map +1 -0
  141. package/dist/core/types/ListModels.d.ts +18 -0
  142. package/dist/core/types/ListModels.d.ts.map +1 -0
  143. package/dist/core/types/OptionsRequest.d.ts +4 -0
  144. package/dist/core/types/OptionsRequest.d.ts.map +1 -0
  145. package/dist/core/types/index.d.ts +4 -0
  146. package/dist/core/types/index.d.ts.map +1 -0
  147. package/dist/core/utils/CacheUtility/index.d.ts +15 -0
  148. package/dist/core/utils/CacheUtility/index.d.ts.map +1 -0
  149. package/dist/core/utils/calculateFilterCount.d.ts +2 -0
  150. package/dist/core/utils/calculateFilterCount.d.ts.map +1 -0
  151. package/dist/core/utils/format-time.d.ts +79 -0
  152. package/dist/core/utils/format-time.d.ts.map +1 -0
  153. package/dist/core/utils/getEmptyObject.d.ts +7 -0
  154. package/dist/core/utils/getEmptyObject.d.ts.map +1 -0
  155. package/dist/core/utils/index.d.ts +7 -0
  156. package/dist/core/utils/index.d.ts.map +1 -0
  157. package/dist/core/utils/useStableRowCount.d.ts +9 -0
  158. package/dist/core/utils/useStableRowCount.d.ts.map +1 -0
  159. package/dist/core/utils/watch/core.d.ts +22 -0
  160. package/dist/core/utils/watch/core.d.ts.map +1 -0
  161. package/dist/core/utils/watch/index.d.ts +49 -0
  162. package/dist/core/utils/watch/index.d.ts.map +1 -0
  163. package/dist/core/utils/watch/utilities.d.ts +34 -0
  164. package/dist/core/utils/watch/utilities.d.ts.map +1 -0
  165. package/dist/hooks/index.cjs +1 -1
  166. package/dist/hooks/index.d.ts +3 -0
  167. package/dist/hooks/index.d.ts.map +1 -0
  168. package/dist/hooks/useTransform/enhanced.d.ts +133 -0
  169. package/dist/hooks/useTransform/enhanced.d.ts.map +1 -0
  170. package/dist/hooks/useTransform/index.d.ts +93 -0
  171. package/dist/hooks/useTransform/index.d.ts.map +1 -0
  172. package/dist/index.cjs +6 -24
  173. package/dist/index.d.ts +6 -0
  174. package/dist/index.d.ts.map +1 -0
  175. package/dist/index.js +4 -22
  176. package/dist/types/AsyncSelectPayload.d.ts +9 -0
  177. package/dist/types/AsyncSelectPayload.d.ts.map +1 -0
  178. package/dist/types/OperationResponse.d.ts +5 -0
  179. package/dist/types/OperationResponse.d.ts.map +1 -0
  180. package/dist/types/OptionItem.d.ts +75 -0
  181. package/dist/types/OptionItem.d.ts.map +1 -0
  182. package/dist/types/api.d.ts +127 -0
  183. package/dist/types/api.d.ts.map +1 -0
  184. package/dist/types/events.d.ts +74 -0
  185. package/dist/types/events.d.ts.map +1 -0
  186. package/dist/types/index.cjs +3 -3
  187. package/dist/types/index.d.ts +17 -0
  188. package/dist/types/index.d.ts.map +1 -0
  189. package/dist/types/index.js +1 -1
  190. package/dist/types/utilities.d.ts +458 -0
  191. package/dist/types/utilities.d.ts.map +1 -0
  192. package/dist/utils/api.d.ts +14 -0
  193. package/dist/utils/api.d.ts.map +1 -0
  194. package/dist/utils/api2.d.ts +14 -0
  195. package/dist/utils/api2.d.ts.map +1 -0
  196. package/dist/utils/flattenObjectKeys.d.ts +63 -0
  197. package/dist/utils/flattenObjectKeys.d.ts.map +1 -0
  198. package/dist/utils/getTimezone.d.ts +4 -0
  199. package/dist/utils/getTimezone.d.ts.map +1 -0
  200. package/dist/utils/handleServerErrors.d.ts +70 -0
  201. package/dist/utils/handleServerErrors.d.ts.map +1 -0
  202. package/dist/utils/index.cjs +3 -3
  203. package/dist/utils/index.d.ts +11 -0
  204. package/dist/utils/index.d.ts.map +1 -0
  205. package/dist/utils/index.js +1 -1
  206. package/dist/utils/propertyExists.d.ts +35 -0
  207. package/dist/utils/propertyExists.d.ts.map +1 -0
  208. package/dist/utils/readValueAsDate.d.ts +4 -0
  209. package/dist/utils/readValueAsDate.d.ts.map +1 -0
  210. package/dist/utils/removeLeadingTrailingSlashes.d.ts +2 -0
  211. package/dist/utils/removeLeadingTrailingSlashes.d.ts.map +1 -0
  212. package/dist/utils/schemaTools.d.ts +82 -0
  213. package/dist/utils/schemaTools.d.ts.map +1 -0
  214. package/dist/utils/typeGuards.d.ts +316 -0
  215. package/dist/utils/typeGuards.d.ts.map +1 -0
  216. package/dist/utils/watch/core.d.ts +22 -0
  217. package/dist/utils/watch/core.d.ts.map +1 -0
  218. package/dist/utils/watch/index.d.ts +49 -0
  219. package/dist/utils/watch/index.d.ts.map +1 -0
  220. package/dist/utils/watch/utilities.d.ts +34 -0
  221. package/dist/utils/watch/utilities.d.ts.map +1 -0
  222. package/dist/wrappers/AsyncMultiSelect/AsyncMultiSelect.d.ts +9 -0
  223. package/dist/wrappers/AsyncMultiSelect/AsyncMultiSelect.d.ts.map +1 -0
  224. package/dist/wrappers/AsyncMultiSelect/index.d.ts +3 -0
  225. package/dist/wrappers/AsyncMultiSelect/index.d.ts.map +1 -0
  226. package/dist/wrappers/AsyncMultiSelect/types.d.ts +19 -0
  227. package/dist/wrappers/AsyncMultiSelect/types.d.ts.map +1 -0
  228. package/dist/wrappers/AsyncMultiSelect2/AsyncMultiSelect2.d.ts +8 -0
  229. package/dist/wrappers/AsyncMultiSelect2/AsyncMultiSelect2.d.ts.map +1 -0
  230. package/dist/wrappers/AsyncMultiSelect2/index.d.ts +3 -0
  231. package/dist/wrappers/AsyncMultiSelect2/index.d.ts.map +1 -0
  232. package/dist/wrappers/AsyncMultiSelect2/types.d.ts +29 -0
  233. package/dist/wrappers/AsyncMultiSelect2/types.d.ts.map +1 -0
  234. package/dist/wrappers/AsyncSelect/index.d.ts +9 -0
  235. package/dist/wrappers/AsyncSelect/index.d.ts.map +1 -0
  236. package/dist/wrappers/AsyncSelect/types.d.ts +19 -0
  237. package/dist/wrappers/AsyncSelect/types.d.ts.map +1 -0
  238. package/dist/wrappers/Button.d.ts +49 -0
  239. package/dist/wrappers/Button.d.ts.map +1 -0
  240. package/dist/wrappers/CheckboxElement/CheckboxElement.d.ts +102 -0
  241. package/dist/wrappers/CheckboxElement/CheckboxElement.d.ts.map +1 -0
  242. package/dist/wrappers/CheckboxElement/index.d.ts +3 -0
  243. package/dist/wrappers/CheckboxElement/index.d.ts.map +1 -0
  244. package/dist/wrappers/CheckboxElement/types.d.ts +76 -0
  245. package/dist/wrappers/CheckboxElement/types.d.ts.map +1 -0
  246. package/dist/wrappers/CheckboxGroup/CheckboxGroup.d.ts +96 -0
  247. package/dist/wrappers/CheckboxGroup/CheckboxGroup.d.ts.map +1 -0
  248. package/dist/wrappers/CheckboxGroup/EnhancedCheckboxGroup.d.ts +49 -0
  249. package/dist/wrappers/CheckboxGroup/EnhancedCheckboxGroup.d.ts.map +1 -0
  250. package/dist/wrappers/CheckboxGroup/enhanced-types.d.ts +171 -0
  251. package/dist/wrappers/CheckboxGroup/enhanced-types.d.ts.map +1 -0
  252. package/dist/wrappers/CheckboxGroup/index.d.ts +3 -0
  253. package/dist/wrappers/CheckboxGroup/index.d.ts.map +1 -0
  254. package/dist/wrappers/CheckboxGroup/types.d.ts +106 -0
  255. package/dist/wrappers/CheckboxGroup/types.d.ts.map +1 -0
  256. package/dist/wrappers/DatePickerElement/DatePickerElement.d.ts +131 -0
  257. package/dist/wrappers/DatePickerElement/DatePickerElement.d.ts.map +1 -0
  258. package/dist/wrappers/DatePickerElement/DatePickerElementCore.d.ts +57 -0
  259. package/dist/wrappers/DatePickerElement/DatePickerElementCore.d.ts.map +1 -0
  260. package/dist/wrappers/DatePickerElement/hooks/index.d.ts +24 -0
  261. package/dist/wrappers/DatePickerElement/hooks/index.d.ts.map +1 -0
  262. package/dist/wrappers/DatePickerElement/hooks/useDatePickerStyles.d.ts +63 -0
  263. package/dist/wrappers/DatePickerElement/hooks/useDatePickerStyles.d.ts.map +1 -0
  264. package/dist/wrappers/DatePickerElement/hooks/useDatePickerValidation.d.ts +79 -0
  265. package/dist/wrappers/DatePickerElement/hooks/useDatePickerValidation.d.ts.map +1 -0
  266. package/dist/wrappers/DatePickerElement/hooks/useDatePickerValue.d.ts +73 -0
  267. package/dist/wrappers/DatePickerElement/hooks/useDatePickerValue.d.ts.map +1 -0
  268. package/dist/wrappers/DatePickerElement/index.d.ts +47 -0
  269. package/dist/wrappers/DatePickerElement/index.d.ts.map +1 -0
  270. package/dist/wrappers/DatePickerElement/types.d.ts +183 -0
  271. package/dist/wrappers/DatePickerElement/types.d.ts.map +1 -0
  272. package/dist/wrappers/DatePickerElement/utils.d.ts +89 -0
  273. package/dist/wrappers/DatePickerElement/utils.d.ts.map +1 -0
  274. package/dist/wrappers/DateTimePickerElement/index.d.ts +1 -0
  275. package/dist/wrappers/DateTimePickerElement/index.d.ts.map +1 -0
  276. package/dist/wrappers/DateTimePickerElement/types.d.ts +1 -0
  277. package/dist/wrappers/DateTimePickerElement/types.d.ts.map +1 -0
  278. package/dist/wrappers/Field/index.d.ts +42 -0
  279. package/dist/wrappers/Field/index.d.ts.map +1 -0
  280. package/dist/wrappers/NumberFieldElement/NumberFieldElement.d.ts +176 -0
  281. package/dist/wrappers/NumberFieldElement/NumberFieldElement.d.ts.map +1 -0
  282. package/dist/wrappers/NumberFieldElement/index.d.ts +3 -0
  283. package/dist/wrappers/NumberFieldElement/index.d.ts.map +1 -0
  284. package/dist/wrappers/OTPInputElement/HelperText.d.ts +8 -0
  285. package/dist/wrappers/OTPInputElement/HelperText.d.ts.map +1 -0
  286. package/dist/wrappers/OTPInputElement/OTPInputElement.d.ts +32 -0
  287. package/dist/wrappers/OTPInputElement/OTPInputElement.d.ts.map +1 -0
  288. package/dist/wrappers/OTPInputElement/index.d.ts +3 -0
  289. package/dist/wrappers/OTPInputElement/index.d.ts.map +1 -0
  290. package/dist/wrappers/PasswordElement/PasswordElement.d.ts +104 -0
  291. package/dist/wrappers/PasswordElement/PasswordElement.d.ts.map +1 -0
  292. package/dist/wrappers/PasswordElement/index.d.ts +2 -0
  293. package/dist/wrappers/PasswordElement/index.d.ts.map +1 -0
  294. package/dist/wrappers/RadioButtonGroup/RadioButtonGroup.d.ts +38 -0
  295. package/dist/wrappers/RadioButtonGroup/RadioButtonGroup.d.ts.map +1 -0
  296. package/dist/wrappers/RadioButtonGroup/index.d.ts +2 -0
  297. package/dist/wrappers/RadioButtonGroup/index.d.ts.map +1 -0
  298. package/dist/wrappers/SelectCascadeElement/SelectCascadeElement.d.ts +22 -0
  299. package/dist/wrappers/SelectCascadeElement/SelectCascadeElement.d.ts.map +1 -0
  300. package/dist/wrappers/SelectCascadeElement/index.d.ts +2 -0
  301. package/dist/wrappers/SelectCascadeElement/index.d.ts.map +1 -0
  302. package/dist/wrappers/SelectElement/SelectElement.d.ts +152 -0
  303. package/dist/wrappers/SelectElement/SelectElement.d.ts.map +1 -0
  304. package/dist/wrappers/SelectElement/index.d.ts +2 -0
  305. package/dist/wrappers/SelectElement/index.d.ts.map +1 -0
  306. package/dist/wrappers/SelectMultiElement/SelectMultiElement.d.ts +21 -0
  307. package/dist/wrappers/SelectMultiElement/SelectMultiElement.d.ts.map +1 -0
  308. package/dist/wrappers/SelectMultiElement/index.d.ts +2 -0
  309. package/dist/wrappers/SelectMultiElement/index.d.ts.map +1 -0
  310. package/dist/wrappers/TextFieldElement/TextFieldElement.d.ts +179 -0
  311. package/dist/wrappers/TextFieldElement/TextFieldElement.d.ts.map +1 -0
  312. package/dist/wrappers/TextFieldElement/index.d.ts +3 -0
  313. package/dist/wrappers/TextFieldElement/index.d.ts.map +1 -0
  314. package/dist/wrappers/TimePickerElement/TimePickerElement.d.ts +30 -0
  315. package/dist/wrappers/TimePickerElement/TimePickerElement.d.ts.map +1 -0
  316. package/dist/wrappers/TimePickerElement/index.d.ts +2 -0
  317. package/dist/wrappers/TimePickerElement/index.d.ts.map +1 -0
  318. package/dist/wrappers/index.cjs +3 -4
  319. package/dist/wrappers/index.d.ts +14 -0
  320. package/dist/wrappers/index.d.ts.map +1 -0
  321. package/dist/wrappers/index.js +1 -2
  322. package/dist/wrappers/types/common.d.ts +87 -0
  323. package/dist/wrappers/types/common.d.ts.map +1 -0
  324. package/dist/wrappers/types/index.d.ts +8 -0
  325. package/dist/wrappers/types/index.d.ts.map +1 -0
  326. package/package.json +4 -8
  327. package/dist/chunk-BXWPG6VW.js +0 -108
  328. package/dist/chunk-EOUSOGZ6.js +0 -2281
  329. package/dist/chunk-EYXPJMEF.cjs +0 -108
  330. package/dist/chunk-GHW77WIM.cjs +0 -72
  331. package/dist/chunk-PUQIPRL2.js +0 -467
  332. package/dist/chunk-YAYXHYKC.js +0 -2512
  333. package/dist/i18n/index.cjs +0 -21
  334. package/dist/i18n/index.js +0 -21
  335. /package/dist/{chunk-MULSVYFT.js → chunk-6GKAC3KH.js} +0 -0
@@ -0,0 +1,236 @@
1
+ import type { ApiError } from '../types/ApiError';
2
+ import type { ErrorInterceptor } from '../types/ErrorInterceptor';
3
+ import type { RequestConfig } from '../types/RequestConfig';
4
+ import type { RequestInterceptor } from '../types/RequestInterceptor';
5
+ import type { ResponseInterceptor } from '../types/ResponseInterceptor';
6
+ import type { ApiResponse } from '@/types';
7
+ /**
8
+ * Manages the registration and execution of request/response/error interceptors.
9
+ *
10
+ * This internal class implements the interceptor pattern, allowing middleware-style
11
+ * functions to be registered and executed at different points in the request lifecycle:
12
+ * - **Request Interceptors**: Modify requests before they are sent
13
+ * - **Response Interceptors**: Transform responses before they are returned
14
+ * - **Error Interceptors**: Handle or transform errors before they are thrown
15
+ *
16
+ * Interceptors are executed sequentially in the order they were registered,
17
+ * forming a processing pipeline. Each interceptor can:
18
+ * - Inspect the data passing through
19
+ * - Transform or enhance the data
20
+ * - Short-circuit the pipeline (for errors)
21
+ * - Perform side effects (logging, monitoring, etc.)
22
+ *
23
+ * Key Features:
24
+ * - **Sequential Execution**: Interceptors run in registration order
25
+ * - **Unregistration Support**: Returns cleanup function for each interceptor
26
+ * - **Type Safety**: Fully typed interceptor functions with generics
27
+ * - **Error Handling**: Graceful handling of interceptor failures
28
+ *
29
+ * @internal This class is not exported from the public API
30
+ *
31
+ * @example
32
+ * Common interceptor patterns:
33
+ * ```typescript
34
+ * const manager = new InterceptorManager();
35
+ *
36
+ * // Request logging
37
+ * manager.addRequestInterceptor(async (config) => {
38
+ * console.log('Request:', config.method, config.url);
39
+ * return config;
40
+ * });
41
+ *
42
+ * // Response transformation
43
+ * manager.addResponseInterceptor(async (response) => {
44
+ * if (response.apiData) {
45
+ * response.apiData = camelCaseKeys(response.apiData);
46
+ * }
47
+ * return response;
48
+ * });
49
+ *
50
+ * // Error monitoring
51
+ * manager.addErrorInterceptor(async (error) => {
52
+ * if (error.status >= 500) {
53
+ * await logToMonitoring(error);
54
+ * }
55
+ * throw error; // Re-throw to maintain error flow
56
+ * });
57
+ * ```
58
+ */
59
+ export declare class InterceptorManager {
60
+ /**
61
+ * Array of registered request interceptors
62
+ * @private
63
+ */
64
+ private readonly requestInterceptors;
65
+ /**
66
+ * Array of registered response interceptors
67
+ * @private
68
+ */
69
+ private readonly responseInterceptors;
70
+ /**
71
+ * Array of registered error interceptors
72
+ * @private
73
+ */
74
+ private readonly errorInterceptors;
75
+ /**
76
+ * Registers a request interceptor to modify requests before they are sent.
77
+ *
78
+ * Request interceptors can:
79
+ * - Add or modify headers
80
+ * - Transform request bodies
81
+ * - Add query parameters
82
+ * - Implement request signing
83
+ * - Log outgoing requests
84
+ *
85
+ * @param interceptor - Async function that receives and returns RequestConfig
86
+ * @returns Cleanup function to unregister this interceptor
87
+ *
88
+ * @example
89
+ * ```typescript
90
+ * // Add authentication header
91
+ * const unregister = manager.addRequestInterceptor(async (config) => {
92
+ * const token = await getAuthToken();
93
+ * config.headers = config.headers || new Headers();
94
+ * config.headers.set('Authorization', `Bearer ${token}`);
95
+ * return config;
96
+ * });
97
+ *
98
+ * // Later, remove the interceptor
99
+ * unregister();
100
+ * ```
101
+ */
102
+ addRequestInterceptor(interceptor: RequestInterceptor): () => void;
103
+ /**
104
+ * Registers a response interceptor to transform responses before they are returned.
105
+ *
106
+ * Response interceptors can:
107
+ * - Transform response data format
108
+ * - Extract nested data structures
109
+ * - Add computed properties
110
+ * - Cache responses
111
+ * - Log successful responses
112
+ *
113
+ * @param interceptor - Async function that receives and returns ApiResponse
114
+ * @returns Cleanup function to unregister this interceptor
115
+ *
116
+ * @example
117
+ * ```typescript
118
+ * // Extract data from envelope
119
+ * manager.addResponseInterceptor(async (response) => {
120
+ * if (response.apiData?.result) {
121
+ * response.apiData = response.apiData.result;
122
+ * }
123
+ * return response;
124
+ * });
125
+ *
126
+ * // Add timestamps
127
+ * manager.addResponseInterceptor(async (response) => {
128
+ * return {
129
+ * ...response,
130
+ * receivedAt: new Date().toISOString()
131
+ * };
132
+ * });
133
+ * ```
134
+ */
135
+ addResponseInterceptor(interceptor: ResponseInterceptor): () => void;
136
+ /**
137
+ * Registers an error interceptor to handle or transform errors before they are thrown.
138
+ *
139
+ * Error interceptors can:
140
+ * - Log errors to monitoring services
141
+ * - Transform error formats
142
+ * - Implement retry logic
143
+ * - Show user notifications
144
+ * - Extract validation errors
145
+ *
146
+ * **Note:** Error interceptors should re-throw the error (or a transformed version)
147
+ * to maintain the error flow. The final error is always thrown.
148
+ *
149
+ * @param interceptor - Async function that receives and returns (or throws) ApiError
150
+ * @returns Cleanup function to unregister this interceptor
151
+ *
152
+ * @example
153
+ * ```typescript
154
+ * // Log to monitoring service
155
+ * manager.addErrorInterceptor(async (error) => {
156
+ * if (error.status >= 500) {
157
+ * await Sentry.captureException(error, {
158
+ * extra: { traceId: error.traceId }
159
+ * });
160
+ * }
161
+ * throw error; // Re-throw to continue error flow
162
+ * });
163
+ *
164
+ * // Transform error messages
165
+ * manager.addErrorInterceptor(async (error) => {
166
+ * if (error.status === 404) {
167
+ * error.title = 'Resource not found';
168
+ * }
169
+ * throw error;
170
+ * });
171
+ * ```
172
+ */
173
+ addErrorInterceptor(interceptor: ErrorInterceptor): () => void;
174
+ /**
175
+ * Applies all registered request interceptors in sequential order.
176
+ *
177
+ * Each interceptor receives the config modified by the previous interceptor,
178
+ * forming a processing pipeline. If any interceptor throws an error,
179
+ * the pipeline stops and the error propagates.
180
+ *
181
+ * @param config - The initial request configuration
182
+ * @returns The modified request configuration after all interceptors
183
+ *
184
+ * @example
185
+ * ```typescript
186
+ * const config = { method: 'GET', url: '/users' };
187
+ * const finalConfig = await manager.applyRequestInterceptors(config);
188
+ * // finalConfig has been processed by all registered interceptors
189
+ * ```
190
+ */
191
+ applyRequestInterceptors(config: RequestConfig): Promise<RequestConfig>;
192
+ /**
193
+ * Applies all registered response interceptors in sequential order.
194
+ *
195
+ * Each interceptor receives the response modified by the previous interceptor,
196
+ * forming a processing pipeline. If any interceptor throws an error,
197
+ * the pipeline stops and the error propagates.
198
+ *
199
+ * @template T - The type of the response data
200
+ * @param response - The initial API response
201
+ * @returns The modified response after all interceptors
202
+ *
203
+ * @example
204
+ * ```typescript
205
+ * const response = { data: { id: 1, name: 'John' } };
206
+ * const finalResponse = await manager.applyResponseInterceptors(response);
207
+ * // finalResponse has been processed by all registered interceptors
208
+ * ```
209
+ */
210
+ applyResponseInterceptors<T>(response: ApiResponse<T>): Promise<ApiResponse<T>>;
211
+ /**
212
+ * Applies all registered error interceptors in sequential order and re-throws.
213
+ *
214
+ * Each interceptor receives the error (potentially modified by previous interceptors).
215
+ * Interceptors can transform the error before re-throwing it. The final error
216
+ * is always thrown to maintain error flow.
217
+ *
218
+ * If an interceptor itself throws an error, that becomes the new error to process
219
+ * by subsequent interceptors.
220
+ *
221
+ * @param error - The initial API error
222
+ * @returns Never returns (always throws)
223
+ * @throws The final error after all interceptors have processed it
224
+ *
225
+ * @example
226
+ * ```typescript
227
+ * try {
228
+ * await manager.applyErrorInterceptors(error);
229
+ * } catch (finalError) {
230
+ * // finalError has been processed by all registered error interceptors
231
+ * }
232
+ * ```
233
+ */
234
+ applyErrorInterceptors(error: ApiError): Promise<never>;
235
+ }
236
+ //# sourceMappingURL=InterceptorManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InterceptorManager.d.ts","sourceRoot":"","sources":["../../../../src/core/api/Interceptors/InterceptorManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAExE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AACH,qBAAa,kBAAkB;IAC7B;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAA4B;IAEhE;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAA6B;IAElE;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA0B;IAE5D;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,qBAAqB,CAAC,WAAW,EAAE,kBAAkB,GAAG,MAAM,IAAI;IAUlE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,sBAAsB,CAAC,WAAW,EAAE,mBAAmB,GAAG,MAAM,IAAI;IAUpE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoCG;IACH,mBAAmB,CAAC,WAAW,EAAE,gBAAgB,GAAG,MAAM,IAAI;IAU9D;;;;;;;;;;;;;;;;OAgBG;IACG,wBAAwB,CAC5B,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,aAAa,CAAC;IAUzB;;;;;;;;;;;;;;;;;OAiBG;IACG,yBAAyB,CAAC,CAAC,EAC/B,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,GACvB,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAU1B;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACG,sBAAsB,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC;CAa9D"}
@@ -0,0 +1,22 @@
1
+ import type { GridSortModel } from '@mui/x-data-grid';
2
+ /**
3
+ * Generic filter model for list requests with pagination and sorting
4
+ * @template TFilterModel - The specific filter criteria type
5
+ */
6
+ export interface PostModel<TFilterModel = Record<string, unknown>> {
7
+ filterModel?: TFilterModel;
8
+ pageOffset: number;
9
+ pageSize: number;
10
+ sortField: string | null;
11
+ sortOrder: 'asc' | 'desc' | null | undefined;
12
+ sortModel?: GridSortModel;
13
+ }
14
+ /**
15
+ * Standardized list response structure for paginated data
16
+ * @template TListModel - The type of individual list items
17
+ */
18
+ export interface ListResponse<TListModel> {
19
+ Data: TListModel[];
20
+ Total: number;
21
+ }
22
+ //# sourceMappingURL=FilterModel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FilterModel.d.ts","sourceRoot":"","sources":["../../../../src/core/api/Models/FilterModel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD;;;GAGG;AACH,MAAM,WAAW,SAAS,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC/D,WAAW,CAAC,EAAE,YAAY,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,KAAK,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC7C,SAAS,CAAC,EAAE,aAAa,CAAC;CAC3B;AAED;;;GAGG;AACH,MAAM,WAAW,YAAY,CAAC,UAAU;IACtC,IAAI,EAAE,UAAU,EAAE,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;CACf"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Primitive types that can be used as query parameters
3
+ */
4
+ export type QueryParamValue = string | number | boolean | null | undefined;
5
+ /**
6
+ * Record type for URL query parameters
7
+ */
8
+ export type QueryParams = Record<string, QueryParamValue | QueryParamValue[]>;
9
+ /**
10
+ * Response data types supported by the API client
11
+ */
12
+ export type ResponseData = Record<string, unknown> | string | Blob;
13
+ //# sourceMappingURL=QueryParams.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryParams.d.ts","sourceRoot":"","sources":["../../../../src/core/api/Models/QueryParams.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;AAE3E;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,eAAe,GAAG,eAAe,EAAE,CAAC,CAAC;AAE9E;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC"}
@@ -0,0 +1,3 @@
1
+ export type { PostModel, ListResponse } from './FilterModel';
2
+ export type { QueryParamValue, QueryParams, ResponseData } from './QueryParams';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/api/Models/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7D,YAAY,EAAE,eAAe,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,142 @@
1
+ /**
2
+ * Manages active HTTP requests with support for cancellation and correlation tracking.
3
+ *
4
+ * This internal class maintains a registry of in-flight requests, allowing them to be
5
+ * cancelled individually or in bulk. Each request is tracked by a unique key and
6
+ * associated with a correlation ID for distributed tracing.
7
+ *
8
+ * Key Features:
9
+ * - **Request Deduplication**: Automatically cancels duplicate requests with the same key
10
+ * - **Correlation Tracking**: Maps request keys to correlation IDs for tracing
11
+ * - **Bulk Cancellation**: Cancel all pending requests at once (useful for cleanup)
12
+ * - **Memory Management**: Automatically cleans up tracking data when requests complete
13
+ *
14
+ * @internal This class is not exported from the public API
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * const manager = new RequestManager();
19
+ * const controller = new AbortController();
20
+ *
21
+ * // Track a request
22
+ * manager.add('GET_/users/123', controller, 'api-abc123');
23
+ *
24
+ * // Cancel specific request
25
+ * manager.cancel('GET_/users/123');
26
+ *
27
+ * // Or cancel all requests
28
+ * manager.cancelAll();
29
+ * ```
30
+ */
31
+ export declare class RequestManager {
32
+ /**
33
+ * Map of active request keys to their abort controllers
34
+ * @private
35
+ */
36
+ private activeRequests;
37
+ /**
38
+ * Map of request keys to their correlation IDs for tracing
39
+ * @private
40
+ */
41
+ private correlationMap;
42
+ /**
43
+ * Registers a new request for tracking and cancellation management.
44
+ *
45
+ * If a request with the same key already exists, it will be automatically
46
+ * cancelled before the new one is registered (request deduplication).
47
+ *
48
+ * @param key - Unique identifier for the request (typically method + URL + timestamp)
49
+ * @param controller - AbortController for cancelling the request
50
+ * @param correlationId - Correlation ID for distributed tracing
51
+ *
52
+ * @example
53
+ * ```typescript
54
+ * const controller = new AbortController();
55
+ * manager.add('GET_/api/users_1699999999', controller, 'api-abc123');
56
+ * ```
57
+ */
58
+ add(key: string, controller: AbortController, correlationId: string): void;
59
+ /**
60
+ * Removes a request from tracking without cancelling it.
61
+ *
62
+ * This is typically called when a request completes successfully or fails.
63
+ * Use {@link cancel} instead if you need to abort the request.
64
+ *
65
+ * @param key - Unique identifier for the request to remove
66
+ *
67
+ * @example
68
+ * ```typescript
69
+ * // Called automatically after request completes
70
+ * manager.remove('GET_/api/users_1699999999');
71
+ * ```
72
+ */
73
+ remove(key: string): void;
74
+ /**
75
+ * Cancels a specific request and removes it from tracking.
76
+ *
77
+ * If the request doesn't exist or was already cancelled, this operation is a no-op.
78
+ * The associated AbortController's signal will be triggered, causing any active
79
+ * fetch operations to abort.
80
+ *
81
+ * @param key - Unique identifier for the request to cancel
82
+ *
83
+ * @example
84
+ * ```typescript
85
+ * // User navigates away, cancel the pending request
86
+ * manager.cancel('GET_/api/users_1699999999');
87
+ * ```
88
+ */
89
+ cancel(key: string): void;
90
+ /**
91
+ * Cancels all active requests and clears all tracking data.
92
+ *
93
+ * This is useful for cleanup scenarios such as:
94
+ * - User logout
95
+ * - Component unmount
96
+ * - Navigation to a different part of the application
97
+ * - Error recovery that requires a clean slate
98
+ *
99
+ * @example
100
+ * ```typescript
101
+ * // Cancel all pending requests on logout
102
+ * function handleLogout() {
103
+ * apiClient.cancelAllRequests();
104
+ * // ... rest of logout logic
105
+ * }
106
+ * ```
107
+ */
108
+ cancelAll(): void;
109
+ /**
110
+ * Checks if a request with the given key is currently being tracked.
111
+ *
112
+ * @param key - Unique identifier for the request
113
+ * @returns `true` if the request is active, `false` otherwise
114
+ *
115
+ * @example
116
+ * ```typescript
117
+ * if (manager.has('GET_/api/users_1699999999')) {
118
+ * console.log('Request is still pending');
119
+ * }
120
+ * ```
121
+ */
122
+ has(key: string): boolean;
123
+ /**
124
+ * Retrieves the correlation ID for a given request key.
125
+ *
126
+ * Correlation IDs are used for distributed tracing and request tracking
127
+ * across services and logs.
128
+ *
129
+ * @param key - Unique identifier for the request
130
+ * @returns The correlation ID if found, `undefined` otherwise
131
+ *
132
+ * @example
133
+ * ```typescript
134
+ * const correlationId = manager.getCorrelationId('GET_/api/users_1699999999');
135
+ * if (correlationId) {
136
+ * console.log('Trace request with ID:', correlationId);
137
+ * }
138
+ * ```
139
+ */
140
+ getCorrelationId(key: string): string | undefined;
141
+ }
142
+ //# sourceMappingURL=RequestManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RequestManager.d.ts","sourceRoot":"","sources":["../../../src/core/api/RequestManager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,qBAAa,cAAc;IACzB;;;OAGG;IACH,OAAO,CAAC,cAAc,CAA2C;IAEjE;;;OAGG;IACH,OAAO,CAAC,cAAc,CAAkC;IAExD;;;;;;;;;;;;;;;OAeG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI;IAO1E;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAKzB;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAUzB;;;;;;;;;;;;;;;;;OAiBG;IACH,SAAS,IAAI,IAAI;IAMjB;;;;;;;;;;;;OAYG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIzB;;;;;;;;;;;;;;;;OAgBG;IACH,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;CAGlD"}
@@ -0,0 +1,100 @@
1
+ /**
2
+ * Implements automatic retry logic with exponential backoff for failed HTTP requests.
3
+ *
4
+ * This internal class handles transient failures by automatically retrying requests
5
+ * with progressively increasing delays between attempts. The exponential backoff
6
+ * strategy helps prevent overwhelming a struggling server while giving temporary
7
+ * issues time to resolve.
8
+ *
9
+ * Key Features:
10
+ * - **Exponential Backoff**: Doubles delay between retries (e.g., 1s, 2s, 4s, 8s)
11
+ * - **Smart Error Detection**: Skips retry for non-retryable errors (validation, aborts)
12
+ * - **Abort Support**: Respects cancellation signals during retry delays
13
+ * - **Type Safety**: Fully generic implementation preserving return types
14
+ *
15
+ * Retry Strategy:
16
+ * - **Retryable**: Network errors, 5xx server errors, timeouts
17
+ * - **Non-Retryable**: Validation errors (400), AbortErrors, cancelled requests
18
+ *
19
+ * @internal This class is not exported from the public API
20
+ *
21
+ * @example
22
+ * Retry configuration in ApiClient:
23
+ * ```typescript
24
+ * const client = new ApiClient('https://api.example.com');
25
+ *
26
+ * // Retry up to 3 times with 1s initial delay
27
+ * const { apiData } = await client.get('/users', {
28
+ * retries: 3,
29
+ * retryDelay: 1000 // 1s, 2s, 4s
30
+ * });
31
+ * ```
32
+ */
33
+ export declare class RetryHandler {
34
+ /**
35
+ * Retries a failed request with exponential backoff strategy.
36
+ *
37
+ * The retry logic works as follows:
38
+ * 1. Attempts the request immediately
39
+ * 2. On failure, checks if the error is retryable
40
+ * 3. If retryable and retries remain, waits for the current delay
41
+ * 4. Doubles the delay for the next attempt
42
+ * 5. Repeats until success or retries exhausted
43
+ *
44
+ * **Non-Retryable Errors:**
45
+ * - Validation errors (400) - Client sent bad data
46
+ * - AbortErrors - Request was explicitly cancelled
47
+ * - Requests with aborted signals
48
+ *
49
+ * **Abort Handling:**
50
+ * If the signal is aborted during a retry delay, the retry is immediately
51
+ * cancelled and an AbortError is thrown.
52
+ *
53
+ * @template T - The return type of the function being retried
54
+ * @param fn - Async function to retry on failure
55
+ * @param retries - Number of retry attempts remaining (decrements each retry)
56
+ * @param delay - Current delay in milliseconds before next retry
57
+ * @param signal - Optional AbortSignal to cancel retries
58
+ * @returns Promise resolving to the function's result on success
59
+ * @throws The last error encountered if all retries are exhausted
60
+ * @throws AbortError if the signal is aborted during execution or delay
61
+ *
62
+ * @example
63
+ * Basic retry usage:
64
+ * ```typescript
65
+ * const handler = new RetryHandler();
66
+ * const fetchUser = () => fetch('/api/users/123').then(r => r.json());
67
+ *
68
+ * try {
69
+ * const user = await handler.retryRequest(
70
+ * fetchUser,
71
+ * 3, // 3 retries
72
+ * 1000 // Start with 1s delay
73
+ * );
74
+ * console.log('User:', user);
75
+ * } catch (error) {
76
+ * console.error('Failed after all retries:', error);
77
+ * }
78
+ * ```
79
+ *
80
+ * @example
81
+ * With cancellation support:
82
+ * ```typescript
83
+ * const controller = new AbortController();
84
+ * const signal = controller.signal;
85
+ *
86
+ * // Cancel after 5 seconds
87
+ * setTimeout(() => controller.abort(), 5000);
88
+ *
89
+ * try {
90
+ * await handler.retryRequest(fetchUser, 5, 1000, signal);
91
+ * } catch (error) {
92
+ * if (error.name === 'AbortError') {
93
+ * console.log('Retry cancelled');
94
+ * }
95
+ * }
96
+ * ```
97
+ */
98
+ retryRequest<T>(fn: () => Promise<T>, retries: number, delay: number, signal?: AbortSignal): Promise<T>;
99
+ }
100
+ //# sourceMappingURL=RetryHandler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RetryHandler.d.ts","sourceRoot":"","sources":["../../../../src/core/api/Retry/RetryHandler.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,qBAAa,YAAY;IACvB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+DG;IACG,YAAY,CAAC,CAAC,EAClB,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,CAAC,CAAC;CA0Cd"}