@ryuzaki13/react-foundation-lib 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (570) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +654 -0
  3. package/dist/array/array.d.ts +30 -0
  4. package/dist/array/array.d.ts.map +1 -0
  5. package/dist/array/index.d.ts +3 -0
  6. package/dist/array/index.d.ts.map +1 -0
  7. package/dist/array/index.js +2 -0
  8. package/dist/array/reorder.d.ts +10 -0
  9. package/dist/array/reorder.d.ts.map +1 -0
  10. package/dist/auth/getClientFingerprint.d.ts +2 -0
  11. package/dist/auth/getClientFingerprint.d.ts.map +1 -0
  12. package/dist/binary/binaryToBlob.d.ts +13 -0
  13. package/dist/binary/binaryToBlob.d.ts.map +1 -0
  14. package/dist/binary/index.d.ts +3 -0
  15. package/dist/binary/index.d.ts.map +1 -0
  16. package/dist/binary/index.js +126 -0
  17. package/dist/binary/index.js.map +1 -0
  18. package/dist/binary/useBinaryFile.d.ts +8 -0
  19. package/dist/binary/useBinaryFile.d.ts.map +1 -0
  20. package/dist/bounded-copy-stack/boundedCopyStack.d.ts +26 -0
  21. package/dist/bounded-copy-stack/boundedCopyStack.d.ts.map +1 -0
  22. package/dist/bounded-copy-stack/index.d.ts +2 -0
  23. package/dist/bounded-copy-stack/index.d.ts.map +1 -0
  24. package/dist/bounded-copy-stack/index.js +26 -0
  25. package/dist/bounded-copy-stack/index.js.map +1 -0
  26. package/dist/chunks/array-BBSjoTRy.js +146 -0
  27. package/dist/chunks/array-BBSjoTRy.js.map +1 -0
  28. package/dist/chunks/dateUtils-D9dpdTl7.js +760 -0
  29. package/dist/chunks/dateUtils-D9dpdTl7.js.map +1 -0
  30. package/dist/chunks/formatters-CQppb89D.js +1234 -0
  31. package/dist/chunks/formatters-CQppb89D.js.map +1 -0
  32. package/dist/chunks/formulas-BxcH5Zjt.js +279 -0
  33. package/dist/chunks/formulas-BxcH5Zjt.js.map +1 -0
  34. package/dist/chunks/isRecord-DXDTW-jA.js +18 -0
  35. package/dist/chunks/isRecord-DXDTW-jA.js.map +1 -0
  36. package/dist/chunks/odata-service-BAYf08WI.js +1223 -0
  37. package/dist/chunks/odata-service-BAYf08WI.js.map +1 -0
  38. package/dist/chunks/string-comparison-BKT7PXmq.js +20 -0
  39. package/dist/chunks/string-comparison-BKT7PXmq.js.map +1 -0
  40. package/dist/chunks/validate-BChpTW6y.js +468 -0
  41. package/dist/chunks/validate-BChpTW6y.js.map +1 -0
  42. package/dist/context-menu/anchor.d.ts +19 -0
  43. package/dist/context-menu/anchor.d.ts.map +1 -0
  44. package/dist/context-menu/index.d.ts +4 -0
  45. package/dist/context-menu/index.d.ts.map +1 -0
  46. package/dist/context-menu/index.js +57 -0
  47. package/dist/context-menu/index.js.map +1 -0
  48. package/dist/context-menu/state.d.ts +6 -0
  49. package/dist/context-menu/state.d.ts.map +1 -0
  50. package/dist/context-menu/types.d.ts +25 -0
  51. package/dist/context-menu/types.d.ts.map +1 -0
  52. package/dist/copy/index.d.ts +5 -0
  53. package/dist/copy/index.d.ts.map +1 -0
  54. package/dist/copy/index.js +56 -0
  55. package/dist/copy/index.js.map +1 -0
  56. package/dist/copy/useCopyElementText.d.ts +6 -0
  57. package/dist/copy/useCopyElementText.d.ts.map +1 -0
  58. package/dist/copy/useCopyFeedback.d.ts +11 -0
  59. package/dist/copy/useCopyFeedback.d.ts.map +1 -0
  60. package/dist/copy/useCopyText.d.ts +4 -0
  61. package/dist/copy/useCopyText.d.ts.map +1 -0
  62. package/dist/copy/useElementText.d.ts +5 -0
  63. package/dist/copy/useElementText.d.ts.map +1 -0
  64. package/dist/crypto/hashString.d.ts +5 -0
  65. package/dist/crypto/hashString.d.ts.map +1 -0
  66. package/dist/crypto/index.d.ts +3 -0
  67. package/dist/crypto/index.d.ts.map +1 -0
  68. package/dist/crypto/index.js +62 -0
  69. package/dist/crypto/index.js.map +1 -0
  70. package/dist/crypto/uuid.d.ts +5 -0
  71. package/dist/crypto/uuid.d.ts.map +1 -0
  72. package/dist/currency/currency.d.ts +8 -0
  73. package/dist/currency/currency.d.ts.map +1 -0
  74. package/dist/currency/index.d.ts +2 -0
  75. package/dist/currency/index.d.ts.map +1 -0
  76. package/dist/currency/index.js +16 -0
  77. package/dist/currency/index.js.map +1 -0
  78. package/dist/date-segments/index.d.ts +3 -0
  79. package/dist/date-segments/index.d.ts.map +1 -0
  80. package/dist/date-segments/index.js +160 -0
  81. package/dist/date-segments/index.js.map +1 -0
  82. package/dist/date-segments/mask.d.ts +54 -0
  83. package/dist/date-segments/mask.d.ts.map +1 -0
  84. package/dist/dom/downloadFile.d.ts +4 -0
  85. package/dist/dom/downloadFile.d.ts.map +1 -0
  86. package/dist/dom/getOrCreatePortalRoot.d.ts +2 -0
  87. package/dist/dom/getOrCreatePortalRoot.d.ts.map +1 -0
  88. package/dist/dom/index.d.ts +10 -0
  89. package/dist/dom/index.d.ts.map +1 -0
  90. package/dist/dom/index.js +159 -0
  91. package/dist/dom/index.js.map +1 -0
  92. package/dist/dom/useClickOutside.d.ts +3 -0
  93. package/dist/dom/useClickOutside.d.ts.map +1 -0
  94. package/dist/dom/useElementHeightObserver.d.ts +3 -0
  95. package/dist/dom/useElementHeightObserver.d.ts.map +1 -0
  96. package/dist/dom/useEscapeDismiss.d.ts +14 -0
  97. package/dist/dom/useEscapeDismiss.d.ts.map +1 -0
  98. package/dist/dom/useFocusTrap.d.ts +5 -0
  99. package/dist/dom/useFocusTrap.d.ts.map +1 -0
  100. package/dist/dom/useIntersectionObserver.d.ts +4 -0
  101. package/dist/dom/useIntersectionObserver.d.ts.map +1 -0
  102. package/dist/dom/useIsTouchDevice.d.ts +2 -0
  103. package/dist/dom/useIsTouchDevice.d.ts.map +1 -0
  104. package/dist/dom/useOverlayFocus.d.ts +14 -0
  105. package/dist/dom/useOverlayFocus.d.ts.map +1 -0
  106. package/dist/error/index.d.ts +2 -0
  107. package/dist/error/index.d.ts.map +1 -0
  108. package/dist/error/index.js +20 -0
  109. package/dist/error/index.js.map +1 -0
  110. package/dist/error/missingContextError.d.ts +14 -0
  111. package/dist/error/missingContextError.d.ts.map +1 -0
  112. package/dist/error-report/breadcrumbs.d.ts +11 -0
  113. package/dist/error-report/breadcrumbs.d.ts.map +1 -0
  114. package/dist/error-report/capture.d.ts +6 -0
  115. package/dist/error-report/capture.d.ts.map +1 -0
  116. package/dist/error-report/diagnostics.d.ts +29 -0
  117. package/dist/error-report/diagnostics.d.ts.map +1 -0
  118. package/dist/error-report/drafts.d.ts +25 -0
  119. package/dist/error-report/drafts.d.ts.map +1 -0
  120. package/dist/error-report/environment.d.ts +19 -0
  121. package/dist/error-report/environment.d.ts.map +1 -0
  122. package/dist/error-report/errorInfo.d.ts +7 -0
  123. package/dist/error-report/errorInfo.d.ts.map +1 -0
  124. package/dist/error-report/index.d.ts +11 -0
  125. package/dist/error-report/index.d.ts.map +1 -0
  126. package/dist/error-report/index.js +464 -0
  127. package/dist/error-report/index.js.map +1 -0
  128. package/dist/error-report/runtime.d.ts +26 -0
  129. package/dist/error-report/runtime.d.ts.map +1 -0
  130. package/dist/error-report/safeValue.d.ts +14 -0
  131. package/dist/error-report/safeValue.d.ts.map +1 -0
  132. package/dist/error-report/transport.d.ts +32 -0
  133. package/dist/error-report/transport.d.ts.map +1 -0
  134. package/dist/error-report/types.d.ts +123 -0
  135. package/dist/error-report/types.d.ts.map +1 -0
  136. package/dist/excel/excel.d.ts +52 -0
  137. package/dist/excel/excel.d.ts.map +1 -0
  138. package/dist/excel/index.d.ts +3 -0
  139. package/dist/excel/index.d.ts.map +1 -0
  140. package/dist/excel/index.js +139 -0
  141. package/dist/excel/index.js.map +1 -0
  142. package/dist/excel/tableExport.d.ts +26 -0
  143. package/dist/excel/tableExport.d.ts.map +1 -0
  144. package/dist/file/contentDisposition.d.ts +11 -0
  145. package/dist/file/contentDisposition.d.ts.map +1 -0
  146. package/dist/file/image/index.d.ts +3 -0
  147. package/dist/file/image/index.d.ts.map +1 -0
  148. package/dist/file/image/readImageFile.d.ts +8 -0
  149. package/dist/file/image/readImageFile.d.ts.map +1 -0
  150. package/dist/file/image/types.d.ts +30 -0
  151. package/dist/file/image/types.d.ts.map +1 -0
  152. package/dist/file/index.d.ts +5 -0
  153. package/dist/file/index.d.ts.map +1 -0
  154. package/dist/file/index.js +211 -0
  155. package/dist/file/index.js.map +1 -0
  156. package/dist/file/mimeType.d.ts +2 -0
  157. package/dist/file/mimeType.d.ts.map +1 -0
  158. package/dist/file/read-file/assert.d.ts +4 -0
  159. package/dist/file/read-file/assert.d.ts.map +1 -0
  160. package/dist/file/read-file/index.d.ts +4 -0
  161. package/dist/file/read-file/index.d.ts.map +1 -0
  162. package/dist/file/read-file/readFile.d.ts +14 -0
  163. package/dist/file/read-file/readFile.d.ts.map +1 -0
  164. package/dist/file/read-file/types.d.ts +43 -0
  165. package/dist/file/read-file/types.d.ts.map +1 -0
  166. package/dist/form/formErrors.d.ts +2 -0
  167. package/dist/form/formErrors.d.ts.map +1 -0
  168. package/dist/form/index.d.ts +2 -0
  169. package/dist/form/index.d.ts.map +1 -0
  170. package/dist/form/index.js +19 -0
  171. package/dist/form/index.js.map +1 -0
  172. package/dist/formatters/boolean/index.d.ts +3 -0
  173. package/dist/formatters/boolean/index.d.ts.map +1 -0
  174. package/dist/formatters/boolean/parseAbapBoolean.d.ts +3 -0
  175. package/dist/formatters/boolean/parseAbapBoolean.d.ts.map +1 -0
  176. package/dist/formatters/boolean/toAbapBoolean.d.ts +3 -0
  177. package/dist/formatters/boolean/toAbapBoolean.d.ts.map +1 -0
  178. package/dist/formatters/date/calendarDate.d.ts +48 -0
  179. package/dist/formatters/date/calendarDate.d.ts.map +1 -0
  180. package/dist/formatters/date/calendarPeriod.d.ts +33 -0
  181. package/dist/formatters/date/calendarPeriod.d.ts.map +1 -0
  182. package/dist/formatters/date/dateRange.d.ts +25 -0
  183. package/dist/formatters/date/dateRange.d.ts.map +1 -0
  184. package/dist/formatters/date/educationDate.d.ts +79 -0
  185. package/dist/formatters/date/educationDate.d.ts.map +1 -0
  186. package/dist/formatters/date/formatDate.d.ts +98 -0
  187. package/dist/formatters/date/formatDate.d.ts.map +1 -0
  188. package/dist/formatters/date/index.d.ts +14 -0
  189. package/dist/formatters/date/index.d.ts.map +1 -0
  190. package/dist/formatters/date/parseDate.d.ts +44 -0
  191. package/dist/formatters/date/parseDate.d.ts.map +1 -0
  192. package/dist/formatters/date/pattern.d.ts +38 -0
  193. package/dist/formatters/date/pattern.d.ts.map +1 -0
  194. package/dist/formatters/date/presets.d.ts +108 -0
  195. package/dist/formatters/date/presets.d.ts.map +1 -0
  196. package/dist/formatters/date/relativeRanges.d.ts +35 -0
  197. package/dist/formatters/date/relativeRanges.d.ts.map +1 -0
  198. package/dist/formatters/date/types.d.ts +70 -0
  199. package/dist/formatters/date/types.d.ts.map +1 -0
  200. package/dist/formatters/formatName.d.ts +13 -0
  201. package/dist/formatters/formatName.d.ts.map +1 -0
  202. package/dist/formatters/formatPhone.d.ts +3 -0
  203. package/dist/formatters/formatPhone.d.ts.map +1 -0
  204. package/dist/formatters/formatTagAsHashtag.d.ts +6 -0
  205. package/dist/formatters/formatTagAsHashtag.d.ts.map +1 -0
  206. package/dist/formatters/index.d.ts +11 -0
  207. package/dist/formatters/index.d.ts.map +1 -0
  208. package/dist/formatters/index.js +6 -0
  209. package/dist/formatters/normalizeLeadingZeros.d.ts +27 -0
  210. package/dist/formatters/normalizeLeadingZeros.d.ts.map +1 -0
  211. package/dist/formatters/number/compact.d.ts +10 -0
  212. package/dist/formatters/number/compact.d.ts.map +1 -0
  213. package/dist/formatters/number/formatCompactNumber.d.ts +49 -0
  214. package/dist/formatters/number/formatCompactNumber.d.ts.map +1 -0
  215. package/dist/formatters/number/formatNumber.d.ts +93 -0
  216. package/dist/formatters/number/formatNumber.d.ts.map +1 -0
  217. package/dist/formatters/number/index.d.ts +6 -0
  218. package/dist/formatters/number/index.d.ts.map +1 -0
  219. package/dist/formatters/number/isZeroValue.d.ts +5 -0
  220. package/dist/formatters/number/isZeroValue.d.ts.map +1 -0
  221. package/dist/formatters/number/parseNumber.d.ts +12 -0
  222. package/dist/formatters/number/parseNumber.d.ts.map +1 -0
  223. package/dist/formatters/number/presets.d.ts +24 -0
  224. package/dist/formatters/number/presets.d.ts.map +1 -0
  225. package/dist/formatters/number/types.d.ts +46 -0
  226. package/dist/formatters/number/types.d.ts.map +1 -0
  227. package/dist/formatters/pipeline/clone.d.ts +15 -0
  228. package/dist/formatters/pipeline/clone.d.ts.map +1 -0
  229. package/dist/formatters/pipeline/definitions.d.ts +14 -0
  230. package/dist/formatters/pipeline/definitions.d.ts.map +1 -0
  231. package/dist/formatters/pipeline/dependencies.d.ts +38 -0
  232. package/dist/formatters/pipeline/dependencies.d.ts.map +1 -0
  233. package/dist/formatters/pipeline/execute.d.ts +21 -0
  234. package/dist/formatters/pipeline/execute.d.ts.map +1 -0
  235. package/dist/formatters/pipeline/index.d.ts +10 -0
  236. package/dist/formatters/pipeline/index.d.ts.map +1 -0
  237. package/dist/formatters/pipeline/normalize.d.ts +3 -0
  238. package/dist/formatters/pipeline/normalize.d.ts.map +1 -0
  239. package/dist/formatters/pipeline/registry.d.ts +11 -0
  240. package/dist/formatters/pipeline/registry.d.ts.map +1 -0
  241. package/dist/formatters/pipeline/rekey.d.ts +11 -0
  242. package/dist/formatters/pipeline/rekey.d.ts.map +1 -0
  243. package/dist/formatters/pipeline/runtime.d.ts +17 -0
  244. package/dist/formatters/pipeline/runtime.d.ts.map +1 -0
  245. package/dist/formatters/pipeline/types.d.ts +379 -0
  246. package/dist/formatters/pipeline/types.d.ts.map +1 -0
  247. package/dist/formatters/pipeline/validate.d.ts +29 -0
  248. package/dist/formatters/pipeline/validate.d.ts.map +1 -0
  249. package/dist/formatters/rowBased/context.d.ts +9 -0
  250. package/dist/formatters/rowBased/context.d.ts.map +1 -0
  251. package/dist/formatters/rowBased/definitions/index.d.ts +6 -0
  252. package/dist/formatters/rowBased/definitions/index.d.ts.map +1 -0
  253. package/dist/formatters/rowBased/index.d.ts +4 -0
  254. package/dist/formatters/rowBased/index.d.ts.map +1 -0
  255. package/dist/formatters/rowBased/registry.d.ts +19 -0
  256. package/dist/formatters/rowBased/registry.d.ts.map +1 -0
  257. package/dist/formatters/rowBased/types.d.ts +29 -0
  258. package/dist/formatters/rowBased/types.d.ts.map +1 -0
  259. package/dist/formatters/strings/index.d.ts +6 -0
  260. package/dist/formatters/strings/index.d.ts.map +1 -0
  261. package/dist/formatters/strings/normalizeText.d.ts +11 -0
  262. package/dist/formatters/strings/normalizeText.d.ts.map +1 -0
  263. package/dist/formatters/strings/startsWithIgnoringZeros.d.ts +2 -0
  264. package/dist/formatters/strings/startsWithIgnoringZeros.d.ts.map +1 -0
  265. package/dist/formatters/strings/stripInnerSpaces.d.ts +6 -0
  266. package/dist/formatters/strings/stripInnerSpaces.d.ts.map +1 -0
  267. package/dist/formatters/strings/stripLeadingZeros.d.ts +10 -0
  268. package/dist/formatters/strings/stripLeadingZeros.d.ts.map +1 -0
  269. package/dist/formatters/strings/truncateText.d.ts +2 -0
  270. package/dist/formatters/strings/truncateText.d.ts.map +1 -0
  271. package/dist/formatters/valueState/fixedValueStateResolver.d.ts +41 -0
  272. package/dist/formatters/valueState/fixedValueStateResolver.d.ts.map +1 -0
  273. package/dist/formatters/valueState/index.d.ts +7 -0
  274. package/dist/formatters/valueState/index.d.ts.map +1 -0
  275. package/dist/formatters/valueState/presentation.d.ts +4 -0
  276. package/dist/formatters/valueState/presentation.d.ts.map +1 -0
  277. package/dist/formatters/valueState/resolveValueStateClassName.d.ts +3 -0
  278. package/dist/formatters/valueState/resolveValueStateClassName.d.ts.map +1 -0
  279. package/dist/formatters/valueState/thresholdValueStateResolver.d.ts +40 -0
  280. package/dist/formatters/valueState/thresholdValueStateResolver.d.ts.map +1 -0
  281. package/dist/formatters/valueState/types.d.ts +35 -0
  282. package/dist/formatters/valueState/types.d.ts.map +1 -0
  283. package/dist/formatters/valueState/valueStateRegistry.d.ts +45 -0
  284. package/dist/formatters/valueState/valueStateRegistry.d.ts.map +1 -0
  285. package/dist/formulas/definitions/base.d.ts +7 -0
  286. package/dist/formulas/definitions/base.d.ts.map +1 -0
  287. package/dist/formulas/definitions/index.d.ts +3 -0
  288. package/dist/formulas/definitions/index.d.ts.map +1 -0
  289. package/dist/formulas/definitions/sales.d.ts +7 -0
  290. package/dist/formulas/definitions/sales.d.ts.map +1 -0
  291. package/dist/formulas/execute.d.ts +36 -0
  292. package/dist/formulas/execute.d.ts.map +1 -0
  293. package/dist/formulas/index.d.ts +5 -0
  294. package/dist/formulas/index.d.ts.map +1 -0
  295. package/dist/formulas/index.js +2 -0
  296. package/dist/formulas/perf.runtime.d.ts +48 -0
  297. package/dist/formulas/perf.runtime.d.ts.map +1 -0
  298. package/dist/formulas/registry.d.ts +10 -0
  299. package/dist/formulas/registry.d.ts.map +1 -0
  300. package/dist/formulas/types.d.ts +16 -0
  301. package/dist/formulas/types.d.ts.map +1 -0
  302. package/dist/formulas/validate.d.ts +22 -0
  303. package/dist/formulas/validate.d.ts.map +1 -0
  304. package/dist/hooks/index.d.ts +11 -0
  305. package/dist/hooks/index.d.ts.map +1 -0
  306. package/dist/hooks/index.js +291 -0
  307. package/dist/hooks/index.js.map +1 -0
  308. package/dist/hooks/types.d.ts +4 -0
  309. package/dist/hooks/types.d.ts.map +1 -0
  310. package/dist/hooks/useBlockBrowserZoom.d.ts +7 -0
  311. package/dist/hooks/useBlockBrowserZoom.d.ts.map +1 -0
  312. package/dist/hooks/useDebounce.d.ts +2 -0
  313. package/dist/hooks/useDebounce.d.ts.map +1 -0
  314. package/dist/hooks/useDebounceCallback.d.ts +22 -0
  315. package/dist/hooks/useDebounceCallback.d.ts.map +1 -0
  316. package/dist/hooks/useDndSortableSensors.d.ts +13 -0
  317. package/dist/hooks/useDndSortableSensors.d.ts.map +1 -0
  318. package/dist/hooks/useFloatingListbox.d.ts +61 -0
  319. package/dist/hooks/useFloatingListbox.d.ts.map +1 -0
  320. package/dist/hooks/useLazyComponent.d.ts +28 -0
  321. package/dist/hooks/useLazyComponent.d.ts.map +1 -0
  322. package/dist/hooks/useReferenceTrace.d.ts +2 -0
  323. package/dist/hooks/useReferenceTrace.d.ts.map +1 -0
  324. package/dist/hooks/useSearchLink.d.ts +5 -0
  325. package/dist/hooks/useSearchLink.d.ts.map +1 -0
  326. package/dist/hooks/useSearchParams.d.ts +8 -0
  327. package/dist/hooks/useSearchParams.d.ts.map +1 -0
  328. package/dist/hooks/useThrottledCallback.d.ts +43 -0
  329. package/dist/hooks/useThrottledCallback.d.ts.map +1 -0
  330. package/dist/http/httpHeaders.d.ts +3 -0
  331. package/dist/http/httpHeaders.d.ts.map +1 -0
  332. package/dist/http/index.d.ts +3 -0
  333. package/dist/http/index.d.ts.map +1 -0
  334. package/dist/http/index.js +18 -0
  335. package/dist/http/index.js.map +1 -0
  336. package/dist/http/textResponse.d.ts +7 -0
  337. package/dist/http/textResponse.d.ts.map +1 -0
  338. package/dist/media/breakpoints.d.ts +9 -0
  339. package/dist/media/breakpoints.d.ts.map +1 -0
  340. package/dist/media/getCurrentFontSize.d.ts +4 -0
  341. package/dist/media/getCurrentFontSize.d.ts.map +1 -0
  342. package/dist/media/index.d.ts +7 -0
  343. package/dist/media/index.d.ts.map +1 -0
  344. package/dist/media/index.js +147 -0
  345. package/dist/media/index.js.map +1 -0
  346. package/dist/media/pxToEm.d.ts +2 -0
  347. package/dist/media/pxToEm.d.ts.map +1 -0
  348. package/dist/media/responsive.d.ts +29 -0
  349. package/dist/media/responsive.d.ts.map +1 -0
  350. package/dist/media/useMatchMedia.d.ts +15 -0
  351. package/dist/media/useMatchMedia.d.ts.map +1 -0
  352. package/dist/media/useMediaQuery.d.ts +10 -0
  353. package/dist/media/useMediaQuery.d.ts.map +1 -0
  354. package/dist/notifications/index.d.ts +4 -0
  355. package/dist/notifications/index.d.ts.map +1 -0
  356. package/dist/notifications/index.js +124 -0
  357. package/dist/notifications/index.js.map +1 -0
  358. package/dist/notifications/notify.d.ts +32 -0
  359. package/dist/notifications/notify.d.ts.map +1 -0
  360. package/dist/notifications/store.d.ts +31 -0
  361. package/dist/notifications/store.d.ts.map +1 -0
  362. package/dist/notifications/types.d.ts +19 -0
  363. package/dist/notifications/types.d.ts.map +1 -0
  364. package/dist/number-scale/index.d.ts +3 -0
  365. package/dist/number-scale/index.d.ts.map +1 -0
  366. package/dist/number-scale/index.js +99 -0
  367. package/dist/number-scale/index.js.map +1 -0
  368. package/dist/number-scale/numberScale.d.ts +52 -0
  369. package/dist/number-scale/numberScale.d.ts.map +1 -0
  370. package/dist/number-scale/types.d.ts +44 -0
  371. package/dist/number-scale/types.d.ts.map +1 -0
  372. package/dist/odata/buildSeparatedArrays.d.ts +10 -0
  373. package/dist/odata/buildSeparatedArrays.d.ts.map +1 -0
  374. package/dist/odata/dateUtils.d.ts +14 -0
  375. package/dist/odata/dateUtils.d.ts.map +1 -0
  376. package/dist/odata/findCollectionPairs.d.ts +11 -0
  377. package/dist/odata/findCollectionPairs.d.ts.map +1 -0
  378. package/dist/odata/index.d.ts +6 -0
  379. package/dist/odata/index.d.ts.map +1 -0
  380. package/dist/odata/index.js +102 -0
  381. package/dist/odata/index.js.map +1 -0
  382. package/dist/odata/store.d.ts +42 -0
  383. package/dist/odata/store.d.ts.map +1 -0
  384. package/dist/odata/types.d.ts +12 -0
  385. package/dist/odata/types.d.ts.map +1 -0
  386. package/dist/odata-service/baseTypes.d.ts +6 -0
  387. package/dist/odata-service/baseTypes.d.ts.map +1 -0
  388. package/dist/odata-service/builder.d.ts +33 -0
  389. package/dist/odata-service/builder.d.ts.map +1 -0
  390. package/dist/odata-service/columns.d.ts +10 -0
  391. package/dist/odata-service/columns.d.ts.map +1 -0
  392. package/dist/odata-service/filterDefinitions.d.ts +113 -0
  393. package/dist/odata-service/filterDefinitions.d.ts.map +1 -0
  394. package/dist/odata-service/filters.d.ts +75 -0
  395. package/dist/odata-service/filters.d.ts.map +1 -0
  396. package/dist/odata-service/formatters.d.ts +33 -0
  397. package/dist/odata-service/formatters.d.ts.map +1 -0
  398. package/dist/odata-service/index.d.ts +16 -0
  399. package/dist/odata-service/index.d.ts.map +1 -0
  400. package/dist/odata-service/index.js +2 -0
  401. package/dist/odata-service/parser.d.ts +14 -0
  402. package/dist/odata-service/parser.d.ts.map +1 -0
  403. package/dist/odata-service/schema.d.ts +8 -0
  404. package/dist/odata-service/schema.d.ts.map +1 -0
  405. package/dist/odata-service/sorts.d.ts +26 -0
  406. package/dist/odata-service/sorts.d.ts.map +1 -0
  407. package/dist/odata-service/sqlFilters.d.ts +32 -0
  408. package/dist/odata-service/sqlFilters.d.ts.map +1 -0
  409. package/dist/odata-service/types.d.ts +166 -0
  410. package/dist/odata-service/types.d.ts.map +1 -0
  411. package/dist/odata-service/typesValidation.d.ts +6 -0
  412. package/dist/odata-service/typesValidation.d.ts.map +1 -0
  413. package/dist/odata-service/unwrapODataQueryResult.d.ts +22 -0
  414. package/dist/odata-service/unwrapODataQueryResult.d.ts.map +1 -0
  415. package/dist/odata-service/utils.d.ts +5 -0
  416. package/dist/odata-service/utils.d.ts.map +1 -0
  417. package/dist/odata-service/wrapParams.d.ts +7 -0
  418. package/dist/odata-service/wrapParams.d.ts.map +1 -0
  419. package/dist/presets/index.d.ts +2 -0
  420. package/dist/presets/index.d.ts.map +1 -0
  421. package/dist/presets/index.js +23 -0
  422. package/dist/presets/index.js.map +1 -0
  423. package/dist/presets/presets.d.ts +20 -0
  424. package/dist/presets/presets.d.ts.map +1 -0
  425. package/dist/pwa/index.d.ts +3 -0
  426. package/dist/pwa/index.d.ts.map +1 -0
  427. package/dist/pwa/index.js +206 -0
  428. package/dist/pwa/index.js.map +1 -0
  429. package/dist/pwa/serviceWorker.d.ts +31 -0
  430. package/dist/pwa/serviceWorker.d.ts.map +1 -0
  431. package/dist/pwa/swCachePolicy.d.ts +24 -0
  432. package/dist/pwa/swCachePolicy.d.ts.map +1 -0
  433. package/dist/pwa/useServiceWorkerUpdate.d.ts +6 -0
  434. package/dist/pwa/useServiceWorkerUpdate.d.ts.map +1 -0
  435. package/dist/query-client/broadcast.d.ts +23 -0
  436. package/dist/query-client/broadcast.d.ts.map +1 -0
  437. package/dist/query-client/index.d.ts +5 -0
  438. package/dist/query-client/index.d.ts.map +1 -0
  439. package/dist/query-client/index.js +204 -0
  440. package/dist/query-client/index.js.map +1 -0
  441. package/dist/query-client/persistence.d.ts +33 -0
  442. package/dist/query-client/persistence.d.ts.map +1 -0
  443. package/dist/query-client/queryClient.d.ts +127 -0
  444. package/dist/query-client/queryClient.d.ts.map +1 -0
  445. package/dist/query-client/queryPersistenceAdapter.d.ts +7 -0
  446. package/dist/query-client/queryPersistenceAdapter.d.ts.map +1 -0
  447. package/dist/range-output/index.d.ts +2 -0
  448. package/dist/range-output/index.d.ts.map +1 -0
  449. package/dist/range-output/index.js +22 -0
  450. package/dist/range-output/index.js.map +1 -0
  451. package/dist/range-output/rangeOutput.d.ts +15 -0
  452. package/dist/range-output/rangeOutput.d.ts.map +1 -0
  453. package/dist/seo/index.d.ts +3 -0
  454. package/dist/seo/index.d.ts.map +1 -0
  455. package/dist/seo/index.js +125 -0
  456. package/dist/seo/index.js.map +1 -0
  457. package/dist/seo/seo.d.ts +16 -0
  458. package/dist/seo/seo.d.ts.map +1 -0
  459. package/dist/seo/types.d.ts +28 -0
  460. package/dist/seo/types.d.ts.map +1 -0
  461. package/dist/session-storage/index.d.ts +2 -0
  462. package/dist/session-storage/index.d.ts.map +1 -0
  463. package/dist/session-storage/index.js +17 -0
  464. package/dist/session-storage/index.js.map +1 -0
  465. package/dist/session-storage/sessionId.d.ts +8 -0
  466. package/dist/session-storage/sessionId.d.ts.map +1 -0
  467. package/dist/string-comparison/compareStrings.d.ts +9 -0
  468. package/dist/string-comparison/compareStrings.d.ts.map +1 -0
  469. package/dist/string-comparison/index.d.ts +2 -0
  470. package/dist/string-comparison/index.d.ts.map +1 -0
  471. package/dist/string-comparison/index.js +2 -0
  472. package/dist/table/columnLayout.d.ts +23 -0
  473. package/dist/table/columnLayout.d.ts.map +1 -0
  474. package/dist/table/columnOrder.d.ts +21 -0
  475. package/dist/table/columnOrder.d.ts.map +1 -0
  476. package/dist/table/columnSizing.d.ts +7 -0
  477. package/dist/table/columnSizing.d.ts.map +1 -0
  478. package/dist/table/index.d.ts +9 -0
  479. package/dist/table/index.d.ts.map +1 -0
  480. package/dist/table/index.js +229 -0
  481. package/dist/table/index.js.map +1 -0
  482. package/dist/table/odataAdapter.d.ts +63 -0
  483. package/dist/table/odataAdapter.d.ts.map +1 -0
  484. package/dist/table/selection.d.ts +16 -0
  485. package/dist/table/selection.d.ts.map +1 -0
  486. package/dist/table/types.d.ts +60 -0
  487. package/dist/table/types.d.ts.map +1 -0
  488. package/dist/table/useTableRowSelection.d.ts +19 -0
  489. package/dist/table/useTableRowSelection.d.ts.map +1 -0
  490. package/dist/table/utils.d.ts +20 -0
  491. package/dist/table/utils.d.ts.map +1 -0
  492. package/dist/three-scene/index.d.ts +3 -0
  493. package/dist/three-scene/index.d.ts.map +1 -0
  494. package/dist/three-scene/index.js +84 -0
  495. package/dist/three-scene/index.js.map +1 -0
  496. package/dist/three-scene/threeSceneAvailability.d.ts +15 -0
  497. package/dist/three-scene/threeSceneAvailability.d.ts.map +1 -0
  498. package/dist/three-scene/useThreeSceneAvailability.d.ts +8 -0
  499. package/dist/three-scene/useThreeSceneAvailability.d.ts.map +1 -0
  500. package/dist/tree-table/buildTreeTableRows.d.ts +9 -0
  501. package/dist/tree-table/buildTreeTableRows.d.ts.map +1 -0
  502. package/dist/tree-table/index.d.ts +4 -0
  503. package/dist/tree-table/index.d.ts.map +1 -0
  504. package/dist/tree-table/index.js +126 -0
  505. package/dist/tree-table/index.js.map +1 -0
  506. package/dist/tree-table/transposeFlatRowsToTreeTableRows.d.ts +11 -0
  507. package/dist/tree-table/transposeFlatRowsToTreeTableRows.d.ts.map +1 -0
  508. package/dist/tree-table/types.d.ts +87 -0
  509. package/dist/tree-table/types.d.ts.map +1 -0
  510. package/dist/types/index.d.ts +2 -0
  511. package/dist/types/index.d.ts.map +1 -0
  512. package/dist/types/index.js +8 -0
  513. package/dist/types/index.js.map +1 -0
  514. package/dist/types/types.d.ts +12 -0
  515. package/dist/types/types.d.ts.map +1 -0
  516. package/dist/utils/childrenCount.d.ts +3 -0
  517. package/dist/utils/childrenCount.d.ts.map +1 -0
  518. package/dist/utils/cn.d.ts +6 -0
  519. package/dist/utils/cn.d.ts.map +1 -0
  520. package/dist/utils/createLazyComponent.d.ts +22 -0
  521. package/dist/utils/createLazyComponent.d.ts.map +1 -0
  522. package/dist/utils/deepCloneWithoutFunctions.d.ts +20 -0
  523. package/dist/utils/deepCloneWithoutFunctions.d.ts.map +1 -0
  524. package/dist/utils/deepCopyWithoutFunctions.d.ts +10 -0
  525. package/dist/utils/deepCopyWithoutFunctions.d.ts.map +1 -0
  526. package/dist/utils/index.d.ts +17 -0
  527. package/dist/utils/index.d.ts.map +1 -0
  528. package/dist/utils/index.js +209 -0
  529. package/dist/utils/index.js.map +1 -0
  530. package/dist/utils/keyboard.d.ts +36 -0
  531. package/dist/utils/keyboard.d.ts.map +1 -0
  532. package/dist/utils/logger.d.ts +2 -0
  533. package/dist/utils/logger.d.ts.map +1 -0
  534. package/dist/utils/selectNavigation.d.ts +8 -0
  535. package/dist/utils/selectNavigation.d.ts.map +1 -0
  536. package/dist/utils/stableStringify.d.ts +8 -0
  537. package/dist/utils/stableStringify.d.ts.map +1 -0
  538. package/dist/utils/toBase64.d.ts +3 -0
  539. package/dist/utils/toBase64.d.ts.map +1 -0
  540. package/dist/utils/treeNode.d.ts +9 -0
  541. package/dist/utils/treeNode.d.ts.map +1 -0
  542. package/dist/validators/index.d.ts +7 -0
  543. package/dist/validators/index.d.ts.map +1 -0
  544. package/dist/validators/index.js +54 -0
  545. package/dist/validators/index.js.map +1 -0
  546. package/dist/validators/isDomReference.d.ts +3 -0
  547. package/dist/validators/isDomReference.d.ts.map +1 -0
  548. package/dist/validators/isImageExtension.d.ts +3 -0
  549. package/dist/validators/isImageExtension.d.ts.map +1 -0
  550. package/dist/validators/isRecord.d.ts +5 -0
  551. package/dist/validators/isRecord.d.ts.map +1 -0
  552. package/dist/validators/isSafe.d.ts +2 -0
  553. package/dist/validators/isSafe.d.ts.map +1 -0
  554. package/dist/validators/positiveInteger.d.ts +2 -0
  555. package/dist/validators/positiveInteger.d.ts.map +1 -0
  556. package/dist/validators/validateUrl.d.ts +10 -0
  557. package/dist/validators/validateUrl.d.ts.map +1 -0
  558. package/dist/virtualizer/index.d.ts +2 -0
  559. package/dist/virtualizer/index.d.ts.map +1 -0
  560. package/dist/virtualizer/index.js +19 -0
  561. package/dist/virtualizer/index.js.map +1 -0
  562. package/dist/virtualizer/useFetchNextPageEffect.d.ts +8 -0
  563. package/dist/virtualizer/useFetchNextPageEffect.d.ts.map +1 -0
  564. package/dist/xml/index.d.ts +2 -0
  565. package/dist/xml/index.d.ts.map +1 -0
  566. package/dist/xml/index.js +17 -0
  567. package/dist/xml/index.js.map +1 -0
  568. package/dist/xml/xml.d.ts +5 -0
  569. package/dist/xml/xml.d.ts.map +1 -0
  570. package/package.json +428 -0
@@ -0,0 +1,159 @@
1
+ import { useEffect as e, useEffectEvent as t, useLayoutEffect as n, useRef as r, useState as i } from "react";
2
+ //#region src/dom/downloadFile.ts
3
+ function a(e, t) {
4
+ let n = document.createElement("a");
5
+ n.href = t, n.download = e, n.click(), window.setTimeout(() => {
6
+ window.URL.revokeObjectURL(t);
7
+ }, 0);
8
+ }
9
+ function o(e, t) {
10
+ a(e, window.URL.createObjectURL(t));
11
+ }
12
+ function s(e, t) {
13
+ o(e, new Blob([JSON.stringify(t, null, 2)], { type: "application/json;charset=utf-8" }));
14
+ }
15
+ //#endregion
16
+ //#region src/dom/getOrCreatePortalRoot.ts
17
+ function c(e) {
18
+ if (typeof document > "u") return null;
19
+ let t = document.getElementById(e);
20
+ if (t instanceof HTMLElement) return t;
21
+ let n = document.createElement("div");
22
+ return n.id = e, document.body.append(n), n;
23
+ }
24
+ //#endregion
25
+ //#region src/dom/useClickOutside.ts
26
+ function l(t, n) {
27
+ e(() => {
28
+ let e = (e) => {
29
+ if (Array.isArray(t)) {
30
+ let r = !0;
31
+ for (let n of t) n.current && n.current.contains(e.target) && (r = !1);
32
+ r && n();
33
+ } else t.current && !t.current.contains(e.target) && n();
34
+ };
35
+ return document.addEventListener("mousedown", e), () => document.removeEventListener("mousedown", e);
36
+ }, [t, n]);
37
+ }
38
+ //#endregion
39
+ //#region src/dom/useElementHeightObserver.ts
40
+ function u(e) {
41
+ let [t, r] = i(0);
42
+ return n(() => {
43
+ let t = e.current;
44
+ if (!t) return;
45
+ let n = new ResizeObserver((e) => {
46
+ let n = e[0]?.contentRect.height ?? t.getBoundingClientRect().height;
47
+ r(n);
48
+ });
49
+ return n.observe(t), () => n.disconnect();
50
+ }, [e.current]), t;
51
+ }
52
+ //#endregion
53
+ //#region src/dom/useEscapeDismiss.ts
54
+ function d({ active: n, onDismiss: r, enabled: i = !0, documentTarget: a, containerRef: o }) {
55
+ let s = t(() => r());
56
+ e(() => {
57
+ if (!n || !i) return;
58
+ let e = a ?? (typeof document > "u" ? null : document);
59
+ if (!e) return;
60
+ let t = (t) => {
61
+ if (t.key !== "Escape") return;
62
+ let n = e.activeElement, r = o?.current;
63
+ r && n instanceof Node && n !== r && !r.contains(n) || (t.preventDefault(), s());
64
+ };
65
+ return e.addEventListener("keydown", t, !0), () => e.removeEventListener("keydown", t, !0);
66
+ }, [
67
+ n,
68
+ i,
69
+ a,
70
+ o
71
+ ]);
72
+ }
73
+ //#endregion
74
+ //#region src/dom/useOverlayFocus.ts
75
+ var f = "button:not([disabled]), [href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex=\"-1\"]):not([disabled])";
76
+ function p({ active: n, trapFocus: i = !1, restoreFocus: a = !0, initialFocus: o = "auto", restoreFocusTarget: s, containerRef: c }) {
77
+ let l = r(null), u = c ?? l, d = r(null), p = t((e) => Array.from(e.querySelectorAll(f)).filter((e) => !e.hasAttribute("aria-hidden"))), m = t((e) => {
78
+ if (o === "container") return e;
79
+ if (typeof o == "function") return o(e) ?? e;
80
+ let t = p(e);
81
+ return t.find((e) => e.hasAttribute("autofocus") || e.hasAttribute("autoFocus")) ?? t[0] ?? e;
82
+ }), h = t(() => s?.() ?? d.current);
83
+ return e(() => {
84
+ if (!n) return;
85
+ d.current = document.activeElement instanceof HTMLElement ? document.activeElement : null;
86
+ let e = null, t = 0, r = () => {
87
+ if (e = u.current, !e) {
88
+ t = window.requestAnimationFrame(r);
89
+ return;
90
+ }
91
+ let n = m(e);
92
+ n instanceof HTMLElement && n.isConnected && n.focus(), i && e.addEventListener("keydown", o);
93
+ }, o = (t) => {
94
+ if (!i || t.key !== "Tab" || !e) return;
95
+ let n = p(e);
96
+ if (n.length === 0) {
97
+ t.preventDefault(), e.focus();
98
+ return;
99
+ }
100
+ let r = n[0], a = n[n.length - 1], o = document.activeElement;
101
+ if (t.shiftKey) {
102
+ (o === r || o === e) && (t.preventDefault(), a.focus());
103
+ return;
104
+ }
105
+ o === a && (t.preventDefault(), r.focus());
106
+ };
107
+ return r(), () => {
108
+ if (window.cancelAnimationFrame(t), i && e && e.removeEventListener("keydown", o), !a) return;
109
+ let n = h();
110
+ n?.isConnected && n.focus();
111
+ };
112
+ }, [
113
+ n,
114
+ i,
115
+ a,
116
+ u
117
+ ]), u;
118
+ }
119
+ //#endregion
120
+ //#region src/dom/useFocusTrap.ts
121
+ var m = (e) => p({
122
+ active: e,
123
+ trapFocus: !0,
124
+ restoreFocus: !0,
125
+ initialFocus: "auto"
126
+ });
127
+ //#endregion
128
+ //#region src/dom/useIntersectionObserver.ts
129
+ function h(t, n) {
130
+ let [r, a] = i(!1);
131
+ return e(() => {
132
+ let e = t.current;
133
+ if (!e) return;
134
+ let r = new IntersectionObserver(([e]) => {
135
+ a(e.isIntersecting);
136
+ }, n);
137
+ return r.observe(e), () => {
138
+ e && r.unobserve(e), r.disconnect();
139
+ };
140
+ }, [n, t]), { isIntersecting: r };
141
+ }
142
+ //#endregion
143
+ //#region src/dom/useIsTouchDevice.ts
144
+ var g = () => {
145
+ let [t, n] = i(!1);
146
+ return e(() => {
147
+ let e = () => {
148
+ let e = window.matchMedia("(pointer: coarse)").matches || "ontouchstart" in window || navigator.maxTouchPoints > 0;
149
+ n(e);
150
+ };
151
+ return e(), window.addEventListener("resize", e), () => {
152
+ window.removeEventListener("resize", e);
153
+ };
154
+ }, []), t;
155
+ };
156
+ //#endregion
157
+ export { o as downloadFileFromBlob, s as downloadFileFromJson, a as downloadFileFromObjectURL, c as getOrCreatePortalRoot, l as useClickOutside, u as useElementHeightObserver, d as useEscapeDismiss, m as useFocusTrap, h as useIntersectionObserver, g as useIsTouchDevice, p as useOverlayFocus };
158
+
159
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../src/dom/downloadFile.ts","../../src/dom/getOrCreatePortalRoot.ts","../../src/dom/useClickOutside.ts","../../src/dom/useElementHeightObserver.ts","../../src/dom/useEscapeDismiss.ts","../../src/dom/useOverlayFocus.ts","../../src/dom/useFocusTrap.ts","../../src/dom/useIntersectionObserver.ts","../../src/dom/useIsTouchDevice.ts"],"sourcesContent":["export function downloadFileFromObjectURL(filename: string, objectUrl: string) {\n\tconst link = document.createElement(\"a\");\n\n\tlink.href = objectUrl;\n\tlink.download = filename;\n\tlink.click();\n\n\twindow.setTimeout(() => {\n\t\twindow.URL.revokeObjectURL(objectUrl);\n\t}, 0);\n}\n\nexport function downloadFileFromBlob(filename: string, blob: Blob) {\n\tconst objectUrl = window.URL.createObjectURL(blob);\n\tdownloadFileFromObjectURL(filename, objectUrl);\n}\n\nexport function downloadFileFromJson(filename: string, payload: unknown) {\n\tconst blob = new Blob([JSON.stringify(payload, null, 2)], { type: \"application/json;charset=utf-8\" });\n\tdownloadFileFromBlob(filename, blob);\n}\n","export function getOrCreatePortalRoot(id: string): HTMLElement | null {\n\tif (typeof document === \"undefined\") {\n\t\treturn null;\n\t}\n\n\tconst existingElement = document.getElementById(id);\n\tif (existingElement instanceof HTMLElement) {\n\t\treturn existingElement;\n\t}\n\n\tconst portalRoot = document.createElement(\"div\");\n\tportalRoot.id = id;\n\tdocument.body.append(portalRoot);\n\n\treturn portalRoot;\n}\n","import { RefObject, useEffect } from \"react\";\n\nexport function useClickOutside(ref: RefObject<HTMLElement | null> | RefObject<HTMLElement | null>[], handler: () => void) {\n\tuseEffect(() => {\n\t\tconst handleClickOutside = (event: MouseEvent) => {\n\t\t\tif (Array.isArray(ref)) {\n\t\t\t\tlet isOutside = true;\n\t\t\t\tfor (const r of ref) {\n\t\t\t\t\tif (r.current && r.current.contains(event.target as Node)) {\n\t\t\t\t\t\tisOutside = false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (isOutside) {\n\t\t\t\t\thandler();\n\t\t\t\t}\n\t\t\t} else if (ref.current && !ref.current.contains(event.target as Node)) {\n\t\t\t\thandler();\n\t\t\t}\n\t\t};\n\n\t\tdocument.addEventListener(\"mousedown\", handleClickOutside);\n\t\treturn () => document.removeEventListener(\"mousedown\", handleClickOutside);\n\t}, [ref, handler]);\n}\n","import { type RefObject, useLayoutEffect, useState } from \"react\";\n\nexport function useElementHeightObserver<TElement extends HTMLElement>(elementRef: RefObject<TElement | null>) {\n\tconst [height, setHeight] = useState(0);\n\n\tuseLayoutEffect(() => {\n\t\tconst element = elementRef.current;\n\t\tif (!element) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst observer = new ResizeObserver((entries) => {\n\t\t\tconst nextHeight = entries[0]?.contentRect.height ?? element.getBoundingClientRect().height;\n\t\t\tsetHeight(nextHeight);\n\t\t});\n\t\tobserver.observe(element);\n\n\t\treturn () => observer.disconnect();\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps, react-hooks/refs\n\t}, [elementRef.current]);\n\n\treturn height;\n}\n","import { RefObject, useEffect, useEffectEvent } from \"react\";\n\ninterface UseEscapeDismissOptions {\n\tactive: boolean;\n\tonDismiss: () => void;\n\tenabled?: boolean;\n\tdocumentTarget?: Document | null;\n\tcontainerRef?: RefObject<HTMLElement | null>;\n}\n\n/**\n * Подписывает overlay на закрытие по клавише Escape.\n */\nexport function useEscapeDismiss({ active, onDismiss, enabled = true, documentTarget, containerRef }: UseEscapeDismissOptions) {\n\tconst dismiss = useEffectEvent(() => onDismiss());\n\n\tuseEffect(() => {\n\t\tif (!active || !enabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst targetDocument = documentTarget ?? (typeof document === \"undefined\" ? null : document);\n\t\tif (!targetDocument) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst handleKeyDown = (event: KeyboardEvent) => {\n\t\t\tif (event.key !== \"Escape\" /*|| event.defaultPrevented*/) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst activeElement = targetDocument.activeElement;\n\t\t\tconst container = containerRef?.current;\n\t\t\tif (container && activeElement instanceof Node && activeElement !== container && !container.contains(activeElement)) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tevent.preventDefault();\n\t\t\tdismiss();\n\t\t};\n\n\t\ttargetDocument.addEventListener(\"keydown\", handleKeyDown, true);\n\t\treturn () => targetDocument.removeEventListener(\"keydown\", handleKeyDown, true);\n\t}, [active, enabled, documentTarget, containerRef]);\n}\n","import { RefObject, useEffect, useEffectEvent, useRef } from \"react\";\n\nconst focusableElementsSelector =\n\t'button:not([disabled]), [href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex=\"-1\"]):not([disabled])';\n\nexport interface UseOverlayFocusOptions<T extends HTMLElement> {\n\tactive: boolean;\n\ttrapFocus?: boolean;\n\trestoreFocus?: boolean;\n\tinitialFocus?: \"auto\" | \"container\" | ((container: T) => HTMLElement | null | undefined);\n\trestoreFocusTarget?: () => HTMLElement | null | undefined;\n\tcontainerRef?: RefObject<T | null>;\n}\n\n/**\n * Возвращает ref overlay-контейнера и управляет начальными/возвратными переходами фокуса.\n */\nexport function useOverlayFocus<T extends HTMLElement>({\n\tactive,\n\ttrapFocus = false,\n\trestoreFocus = true,\n\tinitialFocus = \"auto\",\n\trestoreFocusTarget,\n\tcontainerRef\n}: UseOverlayFocusOptions<T>) {\n\tconst internalOverlayRef = useRef<T | null>(null);\n\tconst overlayRef = containerRef ?? internalOverlayRef;\n\tconst previousActiveElementRef = useRef<HTMLElement | null>(null);\n\n\t/**\n\t * Собирает фокусируемые элементы overlay в актуальном DOM-порядке.\n\t */\n\tconst getFocusableElements = useEffectEvent((container: T) =>\n\t\tArray.from(container.querySelectorAll<HTMLElement>(focusableElementsSelector)).filter(\n\t\t\t(element) => !element.hasAttribute(\"aria-hidden\")\n\t\t)\n\t);\n\n\t/**\n\t * Вычисляет стартовый фокус при открытии overlay.\n\t */\n\tconst resolveInitialFocus = useEffectEvent((container: T) => {\n\t\tif (initialFocus === \"container\") {\n\t\t\treturn container;\n\t\t}\n\n\t\tif (typeof initialFocus === \"function\") {\n\t\t\treturn initialFocus(container) ?? container;\n\t\t}\n\n\t\tconst focusableElements = getFocusableElements(container);\n\t\treturn (\n\t\t\tfocusableElements.find((element) => element.hasAttribute(\"autofocus\") || element.hasAttribute(\"autoFocus\")) ??\n\t\t\tfocusableElements[0] ??\n\t\t\tcontainer\n\t\t);\n\t});\n\n\t/**\n\t * Вычисляет элемент, которому нужно вернуть фокус после закрытия overlay.\n\t */\n\tconst resolveRestoreFocusTarget = useEffectEvent(() => restoreFocusTarget?.() ?? previousActiveElementRef.current);\n\n\tuseEffect(() => {\n\t\tif (!active) {\n\t\t\treturn;\n\t\t}\n\n\t\tpreviousActiveElementRef.current = document.activeElement instanceof HTMLElement ? document.activeElement : null;\n\t\tlet overlayElement: T | null = null;\n\t\tlet rafId = 0;\n\n\t\t/**\n\t\t * Цикл откладывает инициализацию, пока ref контейнера не будет привязан к DOM.\n\t\t */\n\t\tconst attachOverlay = () => {\n\t\t\toverlayElement = overlayRef.current;\n\t\t\tif (!overlayElement) {\n\t\t\t\trafId = window.requestAnimationFrame(attachOverlay);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst focusTarget = resolveInitialFocus(overlayElement);\n\t\t\tif (focusTarget instanceof HTMLElement && focusTarget.isConnected) {\n\t\t\t\tfocusTarget.focus();\n\t\t\t}\n\n\t\t\tif (trapFocus) {\n\t\t\t\toverlayElement.addEventListener(\"keydown\", handleTabKey);\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Зацикливает Tab внутри overlay, пока он открыт как модальный слой.\n\t\t */\n\t\tconst handleTabKey = (event: KeyboardEvent) => {\n\t\t\tif (!trapFocus || event.key !== \"Tab\" || !overlayElement) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst focusableElements = getFocusableElements(overlayElement);\n\t\t\tif (focusableElements.length === 0) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\toverlayElement.focus();\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst firstElement = focusableElements[0];\n\t\t\tconst lastElement = focusableElements[focusableElements.length - 1];\n\t\t\tconst activeElement = document.activeElement;\n\n\t\t\tif (event.shiftKey) {\n\t\t\t\tif (activeElement === firstElement || activeElement === overlayElement) {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tlastElement.focus();\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (activeElement === lastElement) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tfirstElement.focus();\n\t\t\t}\n\t\t};\n\n\t\tattachOverlay();\n\n\t\treturn () => {\n\t\t\twindow.cancelAnimationFrame(rafId);\n\t\t\tif (trapFocus && overlayElement) {\n\t\t\t\toverlayElement.removeEventListener(\"keydown\", handleTabKey);\n\t\t\t}\n\n\t\t\tif (!restoreFocus) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst restoreTarget = resolveRestoreFocusTarget();\n\t\t\tif (restoreTarget?.isConnected) {\n\t\t\t\trestoreTarget.focus();\n\t\t\t}\n\t\t};\n\t}, [active, trapFocus, restoreFocus, overlayRef]);\n\n\treturn overlayRef;\n}\n","import { useOverlayFocus } from \"./useOverlayFocus\";\n\n/**\n * Совместимый wrapper для overlay с фокус-ловушкой.\n */\nexport const useFocusTrap = (isOpen: boolean) => {\n\treturn useOverlayFocus<HTMLDivElement>({ active: isOpen, trapFocus: true, restoreFocus: true, initialFocus: \"auto\" });\n};\n","import { useEffect, useState } from \"react\";\n\nexport function useIntersectionObserver(ref: React.RefObject<Element | null>, options?: IntersectionObserverInit) {\n\tconst [isIntersecting, setIsIntersecting] = useState(false);\n\n\tuseEffect(() => {\n\t\tconst el = ref.current;\n\t\tif (!el) return;\n\n\t\tconst observer = new IntersectionObserver(([entry]) => {\n\t\t\tsetIsIntersecting(entry.isIntersecting);\n\t\t}, options);\n\n\t\tobserver.observe(el);\n\n\t\treturn () => {\n\t\t\tif (el) {\n\t\t\t\tobserver.unobserve(el);\n\t\t\t}\n\t\t\tobserver.disconnect();\n\t\t};\n\t}, [options, ref]); // не забыть, что ref.current может меняться\n\n\treturn { isIntersecting };\n}\n","import { useEffect, useState } from \"react\";\n\nexport const useIsTouchDevice = () => {\n\tconst [isTouchDevice, setIsTouchDevice] = useState(false);\n\n\tuseEffect(() => {\n\t\tconst checkTouchDevice = () => {\n\t\t\tconst isTouch = window.matchMedia(\"(pointer: coarse)\").matches || \"ontouchstart\" in window || navigator.maxTouchPoints > 0;\n\t\t\tsetIsTouchDevice(isTouch);\n\t\t};\n\n\t\tcheckTouchDevice();\n\n\t\t// Обработчик для изменений в типе устройства\n\t\twindow.addEventListener(\"resize\", checkTouchDevice);\n\n\t\treturn () => {\n\t\t\twindow.removeEventListener(\"resize\", checkTouchDevice);\n\t\t};\n\t}, []);\n\n\treturn isTouchDevice;\n};\n"],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { RefObject } from "react";
2
+ export declare function useClickOutside(ref: RefObject<HTMLElement | null> | RefObject<HTMLElement | null>[], handler: () => void): void;
3
+ //# sourceMappingURL=useClickOutside.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useClickOutside.d.ts","sourceRoot":"","sources":["../../src/dom/useClickOutside.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAa,MAAM,OAAO,CAAC;AAE7C,wBAAgB,eAAe,CAAC,GAAG,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,IAAI,QAqBxH"}
@@ -0,0 +1,3 @@
1
+ import { type RefObject } from "react";
2
+ export declare function useElementHeightObserver<TElement extends HTMLElement>(elementRef: RefObject<TElement | null>): number;
3
+ //# sourceMappingURL=useElementHeightObserver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useElementHeightObserver.d.ts","sourceRoot":"","sources":["../../src/dom/useElementHeightObserver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAA6B,MAAM,OAAO,CAAC;AAElE,wBAAgB,wBAAwB,CAAC,QAAQ,SAAS,WAAW,EAAE,UAAU,EAAE,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC,UAoB5G"}
@@ -0,0 +1,14 @@
1
+ import { RefObject } from "react";
2
+ interface UseEscapeDismissOptions {
3
+ active: boolean;
4
+ onDismiss: () => void;
5
+ enabled?: boolean;
6
+ documentTarget?: Document | null;
7
+ containerRef?: RefObject<HTMLElement | null>;
8
+ }
9
+ /**
10
+ * Подписывает overlay на закрытие по клавише Escape.
11
+ */
12
+ export declare function useEscapeDismiss({ active, onDismiss, enabled, documentTarget, containerRef }: UseEscapeDismissOptions): void;
13
+ export {};
14
+ //# sourceMappingURL=useEscapeDismiss.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useEscapeDismiss.d.ts","sourceRoot":"","sources":["../../src/dom/useEscapeDismiss.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAA6B,MAAM,OAAO,CAAC;AAE7D,UAAU,uBAAuB;IAChC,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IACjC,YAAY,CAAC,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;CAC7C;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,OAAc,EAAE,cAAc,EAAE,YAAY,EAAE,EAAE,uBAAuB,QA+B5H"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Совместимый wrapper для overlay с фокус-ловушкой.
3
+ */
4
+ export declare const useFocusTrap: (isOpen: boolean) => import("react").RefObject<HTMLDivElement | null>;
5
+ //# sourceMappingURL=useFocusTrap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFocusTrap.d.ts","sourceRoot":"","sources":["../../src/dom/useFocusTrap.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,YAAY,GAAI,QAAQ,OAAO,qDAE3C,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare function useIntersectionObserver(ref: React.RefObject<Element | null>, options?: IntersectionObserverInit): {
2
+ isIntersecting: boolean;
3
+ };
4
+ //# sourceMappingURL=useIntersectionObserver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useIntersectionObserver.d.ts","sourceRoot":"","sources":["../../src/dom/useIntersectionObserver.ts"],"names":[],"mappings":"AAEA,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,KAAK,CAAC,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,OAAO,CAAC,EAAE,wBAAwB;;EAsB/G"}
@@ -0,0 +1,2 @@
1
+ export declare const useIsTouchDevice: () => boolean;
2
+ //# sourceMappingURL=useIsTouchDevice.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useIsTouchDevice.d.ts","sourceRoot":"","sources":["../../src/dom/useIsTouchDevice.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,gBAAgB,eAoB5B,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { RefObject } from "react";
2
+ export interface UseOverlayFocusOptions<T extends HTMLElement> {
3
+ active: boolean;
4
+ trapFocus?: boolean;
5
+ restoreFocus?: boolean;
6
+ initialFocus?: "auto" | "container" | ((container: T) => HTMLElement | null | undefined);
7
+ restoreFocusTarget?: () => HTMLElement | null | undefined;
8
+ containerRef?: RefObject<T | null>;
9
+ }
10
+ /**
11
+ * Возвращает ref overlay-контейнера и управляет начальными/возвратными переходами фокуса.
12
+ */
13
+ export declare function useOverlayFocus<T extends HTMLElement>({ active, trapFocus, restoreFocus, initialFocus, restoreFocusTarget, containerRef }: UseOverlayFocusOptions<T>): RefObject<T | null>;
14
+ //# sourceMappingURL=useOverlayFocus.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useOverlayFocus.d.ts","sourceRoot":"","sources":["../../src/dom/useOverlayFocus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAqC,MAAM,OAAO,CAAC;AAKrE,MAAM,WAAW,sBAAsB,CAAC,CAAC,SAAS,WAAW;IAC5D,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC,KAAK,WAAW,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;IACzF,kBAAkB,CAAC,EAAE,MAAM,WAAW,GAAG,IAAI,GAAG,SAAS,CAAC;IAC1D,YAAY,CAAC,EAAE,SAAS,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;CACnC;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,CAAC,SAAS,WAAW,EAAE,EACtD,MAAM,EACN,SAAiB,EACjB,YAAmB,EACnB,YAAqB,EACrB,kBAAkB,EAClB,YAAY,EACZ,EAAE,sBAAsB,CAAC,CAAC,CAAC,uBAyH3B"}
@@ -0,0 +1,2 @@
1
+ export * from "./missingContextError";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/error/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC"}
@@ -0,0 +1,20 @@
1
+ //#region src/error/missingContextError.ts
2
+ function e({ hookName: e, providerName: t, contextName: n }) {
3
+ let r = n ? ` "${n}"` : "";
4
+ return [
5
+ `Хук ${e} должен использоваться внутри ${t}.`,
6
+ `Контекст${r} равен null, поэтому, вероятно, дерево компонентов не обёрнуто в ${t}.`,
7
+ `Убедитесь, что ${t} расположен выше компонента, который вызывает ${e}.`
8
+ ].join(" ");
9
+ }
10
+ function t({ hookName: t, providerName: n, contextName: r }) {
11
+ return Error(e({
12
+ hookName: t,
13
+ providerName: n,
14
+ contextName: r
15
+ }));
16
+ }
17
+ //#endregion
18
+ export { t as createMissingContextError, e as createMissingContextErrorMessage };
19
+
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../src/error/missingContextError.ts"],"sourcesContent":["type ContextErrorMessageOptions = {\n\thookName: string;\n\tproviderName: string;\n\tcontextName?: string;\n};\n\nexport function createMissingContextErrorMessage({ hookName, providerName, contextName }: ContextErrorMessageOptions): string {\n\tconst contextPart = contextName ? ` \"${contextName}\"` : \"\";\n\n\treturn [\n\t\t`Хук ${hookName} должен использоваться внутри ${providerName}.`,\n\t\t`Контекст${contextPart} равен null, поэтому, вероятно, дерево компонентов не обёрнуто в ${providerName}.`,\n\t\t`Убедитесь, что ${providerName} расположен выше компонента, который вызывает ${hookName}.`\n\t].join(\" \");\n}\n\ntype MissingContextErrorOptions = {\n\thookName: string;\n\tproviderName: string;\n\tcontextName?: string;\n};\n\nexport function createMissingContextError({ hookName, providerName, contextName }: MissingContextErrorOptions): Error {\n\treturn new Error(\n\t\tcreateMissingContextErrorMessage({\n\t\t\thookName,\n\t\t\tproviderName,\n\t\t\tcontextName\n\t\t})\n\t);\n}\n"],"mappings":";AAMA,SAAgB,EAAiC,EAAE,aAAU,iBAAc,kBAAmD;CAC7H,IAAM,IAAc,IAAc,KAAK,EAAY,KAAK;CAExD,OAAO;EACN,OAAO,EAAS,gCAAgC,EAAa;EAC7D,WAAW,EAAY,mEAAmE,EAAa;EACvG,kBAAkB,EAAa,gDAAgD,EAAS;CACzF,CAAC,CAAC,KAAK,GAAG;AACX;AAQA,SAAgB,EAA0B,EAAE,aAAU,iBAAc,kBAAkD;CACrH,OAAW,MACV,EAAiC;EAChC;EACA;EACA;CACD,CAAC,CACF;AACD"}
@@ -0,0 +1,14 @@
1
+ type ContextErrorMessageOptions = {
2
+ hookName: string;
3
+ providerName: string;
4
+ contextName?: string;
5
+ };
6
+ export declare function createMissingContextErrorMessage({ hookName, providerName, contextName }: ContextErrorMessageOptions): string;
7
+ type MissingContextErrorOptions = {
8
+ hookName: string;
9
+ providerName: string;
10
+ contextName?: string;
11
+ };
12
+ export declare function createMissingContextError({ hookName, providerName, contextName }: MissingContextErrorOptions): Error;
13
+ export {};
14
+ //# sourceMappingURL=missingContextError.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"missingContextError.d.ts","sourceRoot":"","sources":["../../src/error/missingContextError.ts"],"names":[],"mappings":"AAAA,KAAK,0BAA0B,GAAG;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,wBAAgB,gCAAgC,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,WAAW,EAAE,EAAE,0BAA0B,GAAG,MAAM,CAQ5H;AAED,KAAK,0BAA0B,GAAG;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,wBAAgB,yBAAyB,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,WAAW,EAAE,EAAE,0BAA0B,GAAG,KAAK,CAQpH"}
@@ -0,0 +1,11 @@
1
+ import type { ErrorReportBreadcrumb } from "./types";
2
+ export declare function addErrorReportBreadcrumb(breadcrumb: Omit<ErrorReportBreadcrumb, "utc"> & {
3
+ utc?: string;
4
+ }): void;
5
+ export declare function getErrorReportBreadcrumbs(): ErrorReportBreadcrumb[];
6
+ export declare function clearErrorReportBreadcrumbs(): void;
7
+ /**
8
+ * Подключает breadcrumbs по действиям пользователя без тел запросов.
9
+ */
10
+ export declare function installErrorReportBrowserBreadcrumbs(): () => void;
11
+ //# sourceMappingURL=breadcrumbs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"breadcrumbs.d.ts","sourceRoot":"","sources":["../../src/error-report/breadcrumbs.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAyBrD,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,IAAI,CAAC,qBAAqB,EAAE,KAAK,CAAC,GAAG;IAAE,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,QAEzG;AAED,wBAAgB,yBAAyB,4BAExC;AAED,wBAAgB,2BAA2B,SAE1C;AA+GD;;GAEG;AACH,wBAAgB,oCAAoC,eAyBnD"}
@@ -0,0 +1,6 @@
1
+ import { type Mutation, type Query, type QueryClient } from "@tanstack/react-query";
2
+ import type { ErrorReportMutationContext, ErrorReportQueryContext, ErrorReportRuntimeContext } from "./types";
3
+ export declare function captureQueryErrorReport(error: unknown, query: Query<unknown, unknown, unknown>, queryClient: QueryClient, context?: ErrorReportQueryContext): Promise<import("./types").ErrorReportDraft | undefined>;
4
+ export declare function captureMutationErrorReport(error: unknown, mutation: Mutation<unknown, unknown, unknown, unknown>, queryClient: QueryClient, context?: ErrorReportMutationContext): Promise<import("./types").ErrorReportDraft | undefined>;
5
+ export declare function captureRuntimeErrorReport(error: unknown, context?: ErrorReportRuntimeContext, queryClient?: QueryClient): Promise<import("./types").ErrorReportDraft | undefined>;
6
+ //# sourceMappingURL=capture.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capture.d.ts","sourceRoot":"","sources":["../../src/error-report/capture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,KAAK,EAAE,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAcpF,OAAO,KAAK,EAAE,0BAA0B,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAC;AAE9G,wBAAsB,uBAAuB,CAC5C,KAAK,EAAE,OAAO,EACd,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EACvC,WAAW,EAAE,WAAW,EACxB,OAAO,CAAC,EAAE,uBAAuB,2DA4BjC;AAED,wBAAsB,0BAA0B,CAC/C,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EACtD,WAAW,EAAE,WAAW,EACxB,OAAO,GAAE,0BAA+B,2DAuBxC;AAED,wBAAsB,yBAAyB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,GAAE,yBAA8B,EAAE,WAAW,CAAC,EAAE,WAAW,2DAqBjI"}
@@ -0,0 +1,29 @@
1
+ import { type MutationKey, type MutationState, type QueryClient, type QueryKey, type QueryState } from "@tanstack/react-query";
2
+ import { type ErrorReportMutationDiagnostics, type ErrorReportPersistedQueryDiagnostics, type ErrorReportQueryDiagnostics } from "./types";
3
+ type QueryDiagnosticSource = {
4
+ queryHash: string;
5
+ queryKey: QueryKey;
6
+ state: QueryState<unknown, unknown>;
7
+ meta?: Record<string, unknown>;
8
+ getObserversCount: () => number;
9
+ };
10
+ type MutationDiagnosticSource = {
11
+ options: {
12
+ mutationKey?: MutationKey;
13
+ };
14
+ state: MutationState<unknown, unknown, unknown, unknown>;
15
+ meta?: Record<string, unknown>;
16
+ };
17
+ export declare function collectQueryDiagnostics(query: QueryDiagnosticSource): ErrorReportQueryDiagnostics;
18
+ export declare function collectMutationDiagnostics(mutation: MutationDiagnosticSource): ErrorReportMutationDiagnostics;
19
+ export declare function collectQueryClientDiagnostics(queryClient: QueryClient): {
20
+ queries: ErrorReportQueryDiagnostics[];
21
+ mutations: ErrorReportMutationDiagnostics[];
22
+ };
23
+ /**
24
+ * Читает IndexedDB persistence и возвращает только технические поля.
25
+ * `state.data` и другие значения кеша не попадают в результат.
26
+ */
27
+ export declare function collectPersistedQueryDiagnostics(): Promise<ErrorReportPersistedQueryDiagnostics[]>;
28
+ export {};
29
+ //# sourceMappingURL=diagnostics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagnostics.d.ts","sourceRoot":"","sources":["../../src/error-report/diagnostics.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,aAAa,EAAE,KAAK,WAAW,EAAE,KAAK,QAAQ,EAAE,KAAK,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAM/H,OAAO,EACN,KAAK,8BAA8B,EACnC,KAAK,oCAAoC,EACzC,KAAK,2BAA2B,EAEhC,MAAM,SAAS,CAAC;AAEjB,KAAK,qBAAqB,GAAG;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,iBAAiB,EAAE,MAAM,MAAM,CAAC;CAChC,CAAC;AAEF,KAAK,wBAAwB,GAAG;IAC/B,OAAO,EAAE;QACR,WAAW,CAAC,EAAE,WAAW,CAAC;KAC1B,CAAC;IACF,KAAK,EAAE,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACzD,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B,CAAC;AAUF,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,qBAAqB,GAAG,2BAA2B,CAejG;AAED,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,wBAAwB,GAAG,8BAA8B,CAS7G;AAED,wBAAgB,6BAA6B,CAAC,WAAW,EAAE,WAAW;;;EAKrE;AAmBD;;;GAGG;AACH,wBAAsB,gCAAgC,IAAI,OAAO,CAAC,oCAAoC,EAAE,CAAC,CAYxG"}
@@ -0,0 +1,25 @@
1
+ import type { ErrorReportCategory, ErrorReportDraft, ErrorReportErrorInfo, ErrorReportPayload, ErrorReportSafeValue } from "./types";
2
+ export declare function getErrorReportDraft(reportId: string): ErrorReportDraft | undefined;
3
+ export declare function updateErrorReportDraft(reportId: string, patch: Partial<ErrorReportDraft>): {
4
+ reportId: string;
5
+ sessionId: string;
6
+ createdUtc: string;
7
+ category: ErrorReportCategory;
8
+ status: import("./types").ErrorReportStatus;
9
+ sentUtc?: string;
10
+ failedReason?: string;
11
+ payload: ErrorReportPayload;
12
+ } | undefined;
13
+ export declare function getErrorReportDrafts(): ErrorReportDraft[];
14
+ export declare function captureErrorReportDraft(args: {
15
+ category: ErrorReportCategory;
16
+ source: string;
17
+ error: ErrorReportErrorInfo;
18
+ query?: ErrorReportPayload["query"];
19
+ mutation?: ErrorReportPayload["mutation"];
20
+ queryClient?: ErrorReportPayload["queryClient"];
21
+ persistedQueries?: ErrorReportPayload["persistedQueries"];
22
+ react?: ErrorReportPayload["react"];
23
+ context?: Record<string, ErrorReportSafeValue>;
24
+ }): ErrorReportDraft | undefined;
25
+ //# sourceMappingURL=drafts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drafts.d.ts","sourceRoot":"","sources":["../../src/error-report/drafts.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAsDrI,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,gCAEnD;AAED,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,gBAAgB,CAAC;;;;;;;;;cAOxF;AAED,wBAAgB,oBAAoB,uBAEnC;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE;IAC7C,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,oBAAoB,CAAC;IAC5B,KAAK,CAAC,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACpC,QAAQ,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAC1C,WAAW,CAAC,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;IAChD,gBAAgB,CAAC,EAAE,kBAAkB,CAAC,kBAAkB,CAAC,CAAC;IAC1D,KAAK,CAAC,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;CAC/C,gCAoCA"}
@@ -0,0 +1,19 @@
1
+ type ErrorReportEnvironmentOptions = {
2
+ isDev?: boolean;
3
+ };
4
+ /**
5
+ * Отчеты собираются только в браузере и только вне dev-режима.
6
+ * На серверном рендеринге draft не создается, чтобы не смешивать SSR-ошибки с клиентской диагностикой.
7
+ */
8
+ export declare function isErrorReportingEnabled(options?: ErrorReportEnvironmentOptions): boolean;
9
+ export declare function getErrorReportEnvironment(): {
10
+ mode: "development" | "production";
11
+ buildId: string | undefined;
12
+ };
13
+ export declare function getErrorReportClientEnvironment(): {
14
+ userAgent: string;
15
+ language: string;
16
+ timeZone: string;
17
+ } | undefined;
18
+ export {};
19
+ //# sourceMappingURL=environment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"environment.d.ts","sourceRoot":"","sources":["../../src/error-report/environment.ts"],"names":[],"mappings":"AAAA,KAAK,6BAA6B,GAAG;IACpC,KAAK,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,GAAE,6BAAkC,WAIlF;AAED,wBAAgB,yBAAyB;;;EAOxC;AAED,wBAAgB,+BAA+B;;;;cAQ9C"}
@@ -0,0 +1,7 @@
1
+ import type { ErrorReportErrorInfo } from "./types";
2
+ /**
3
+ * Нормализует любое брошенное значение в форму, удобную для поиска и сохранения.
4
+ * Stacktrace намеренно сохраняется полностью: это основная диагностическая ценность отчета.
5
+ */
6
+ export declare function createErrorInfo(error: unknown): ErrorReportErrorInfo;
7
+ //# sourceMappingURL=errorInfo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errorInfo.d.ts","sourceRoot":"","sources":["../../src/error-report/errorInfo.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAgCpD;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,oBAAoB,CA4BpE"}
@@ -0,0 +1,11 @@
1
+ export * from "./breadcrumbs";
2
+ export * from "./capture";
3
+ export * from "./diagnostics";
4
+ export * from "./drafts";
5
+ export * from "./environment";
6
+ export * from "./errorInfo";
7
+ export * from "./runtime";
8
+ export * from "./safeValue";
9
+ export * from "./transport";
10
+ export * from "./types";
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/error-report/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC"}