@codeleap/web 6.3.0 → 7.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (900) hide show
  1. package/dist/components/ActivityIndicator/index.d.ts +6 -2
  2. package/dist/components/ActivityIndicator/index.d.ts.map +1 -0
  3. package/dist/components/ActivityIndicator/styles.d.ts +1 -0
  4. package/dist/components/ActivityIndicator/styles.d.ts.map +1 -0
  5. package/dist/components/ActivityIndicator/types.d.ts +13 -2
  6. package/dist/components/ActivityIndicator/types.d.ts.map +1 -0
  7. package/dist/components/Badge/index.d.ts +8 -1
  8. package/dist/components/Badge/index.d.ts.map +1 -0
  9. package/dist/components/Badge/styles.d.ts +1 -0
  10. package/dist/components/Badge/styles.d.ts.map +1 -0
  11. package/dist/components/Badge/types.d.ts +17 -2
  12. package/dist/components/Badge/types.d.ts.map +1 -0
  13. package/dist/components/Button/index.d.ts +12 -9
  14. package/dist/components/Button/index.d.ts.map +1 -0
  15. package/dist/components/Button/styles.d.ts +7 -4
  16. package/dist/components/Button/styles.d.ts.map +1 -0
  17. package/dist/components/Button/types.d.ts +9 -5
  18. package/dist/components/Button/types.d.ts.map +1 -0
  19. package/dist/components/Calendar/index.d.ts +18 -0
  20. package/dist/components/Calendar/index.d.ts.map +1 -0
  21. package/dist/components/Calendar/styles.d.ts +3 -0
  22. package/dist/components/Calendar/styles.d.ts.map +1 -0
  23. package/dist/components/Calendar/types.d.ts +20 -0
  24. package/dist/components/Calendar/types.d.ts.map +1 -0
  25. package/dist/components/Carousel/index.d.ts +6 -0
  26. package/dist/components/Carousel/index.d.ts.map +1 -0
  27. package/dist/components/Carousel/styles.d.ts +1 -0
  28. package/dist/components/Carousel/styles.d.ts.map +1 -0
  29. package/dist/components/Carousel/types.d.ts +14 -2
  30. package/dist/components/Carousel/types.d.ts.map +1 -0
  31. package/dist/components/Checkbox/index.d.ts +6 -2
  32. package/dist/components/Checkbox/index.d.ts.map +1 -0
  33. package/dist/components/Checkbox/styles.d.ts +4 -6
  34. package/dist/components/Checkbox/styles.d.ts.map +1 -0
  35. package/dist/components/Checkbox/types.d.ts +20 -5
  36. package/dist/components/Checkbox/types.d.ts.map +1 -0
  37. package/dist/components/Collapse/index.d.ts +5 -0
  38. package/dist/components/Collapse/index.d.ts.map +1 -0
  39. package/dist/components/Collapse/styles.d.ts +1 -0
  40. package/dist/components/Collapse/styles.d.ts.map +1 -0
  41. package/dist/components/Collapse/types.d.ts +6 -2
  42. package/dist/components/Collapse/types.d.ts.map +1 -0
  43. package/dist/components/ColorPicker/index.d.ts +6 -0
  44. package/dist/components/ColorPicker/index.d.ts.map +1 -0
  45. package/dist/components/ColorPicker/styles.d.ts +1 -0
  46. package/dist/components/ColorPicker/styles.d.ts.map +1 -0
  47. package/dist/components/ColorPicker/types.d.ts +17 -4
  48. package/dist/components/ColorPicker/types.d.ts.map +1 -0
  49. package/dist/components/CropPicker/hooks.d.ts +12 -2
  50. package/dist/components/CropPicker/hooks.d.ts.map +1 -0
  51. package/dist/components/CropPicker/index.d.ts +6 -2
  52. package/dist/components/CropPicker/index.d.ts.map +1 -0
  53. package/dist/components/CropPicker/styles.d.ts +2 -2
  54. package/dist/components/CropPicker/styles.d.ts.map +1 -0
  55. package/dist/components/CropPicker/types.d.ts +8 -4
  56. package/dist/components/CropPicker/types.d.ts.map +1 -0
  57. package/dist/components/CropPicker/utils.d.ts +10 -0
  58. package/dist/components/CropPicker/utils.d.ts.map +1 -0
  59. package/dist/components/DatePicker/index.d.ts +7 -2
  60. package/dist/components/DatePicker/index.d.ts.map +1 -0
  61. package/dist/components/DatePicker/styles.d.ts +3 -6
  62. package/dist/components/DatePicker/styles.d.ts.map +1 -0
  63. package/dist/components/DatePicker/types.d.ts +46 -50
  64. package/dist/components/DatePicker/types.d.ts.map +1 -0
  65. package/dist/components/Drawer/index.d.ts +7 -1
  66. package/dist/components/Drawer/index.d.ts.map +1 -0
  67. package/dist/components/Drawer/styles.d.ts +2 -2
  68. package/dist/components/Drawer/styles.d.ts.map +1 -0
  69. package/dist/components/Drawer/types.d.ts +8 -17
  70. package/dist/components/Drawer/types.d.ts.map +1 -0
  71. package/dist/components/Dropzone/context.d.ts +17 -0
  72. package/dist/components/Dropzone/context.d.ts.map +1 -0
  73. package/dist/components/Dropzone/elements.d.ts +32 -0
  74. package/dist/components/Dropzone/elements.d.ts.map +1 -0
  75. package/dist/components/Dropzone/index.d.ts +21 -0
  76. package/dist/components/Dropzone/index.d.ts.map +1 -0
  77. package/dist/components/Dropzone/styles.d.ts +3 -2
  78. package/dist/components/Dropzone/styles.d.ts.map +1 -0
  79. package/dist/components/Dropzone/types.d.ts +69 -33
  80. package/dist/components/Dropzone/types.d.ts.map +1 -0
  81. package/dist/components/Dropzone/useDropzone.d.ts +14 -0
  82. package/dist/components/Dropzone/useDropzone.d.ts.map +1 -0
  83. package/dist/components/EmptyPlaceholder/index.d.ts +6 -0
  84. package/dist/components/EmptyPlaceholder/index.d.ts.map +1 -0
  85. package/dist/components/EmptyPlaceholder/styles.d.ts +1 -0
  86. package/dist/components/EmptyPlaceholder/styles.d.ts.map +1 -0
  87. package/dist/components/EmptyPlaceholder/types.d.ts +12 -2
  88. package/dist/components/EmptyPlaceholder/types.d.ts.map +1 -0
  89. package/dist/components/Field/context.d.ts +26 -0
  90. package/dist/components/Field/context.d.ts.map +1 -0
  91. package/dist/components/Field/elements.d.ts +63 -0
  92. package/dist/components/Field/elements.d.ts.map +1 -0
  93. package/dist/components/Field/index.d.ts +66 -0
  94. package/dist/components/Field/index.d.ts.map +1 -0
  95. package/dist/components/Field/styles.d.ts +15 -0
  96. package/dist/components/Field/styles.d.ts.map +1 -0
  97. package/dist/components/Field/types.d.ts +46 -0
  98. package/dist/components/Field/types.d.ts.map +1 -0
  99. package/dist/components/{InputBase/useInputBase.d.ts → Field/useFieldInput.d.ts} +17 -6
  100. package/dist/components/Field/useFieldInput.d.ts.map +1 -0
  101. package/dist/components/FileInput/index.d.ts +6 -0
  102. package/dist/components/FileInput/index.d.ts.map +1 -0
  103. package/dist/components/FileInput/types.d.ts +8 -0
  104. package/dist/components/FileInput/types.d.ts.map +1 -0
  105. package/dist/components/Icon/index.d.ts +8 -1
  106. package/dist/components/Icon/index.d.ts.map +1 -0
  107. package/dist/components/Icon/styles.d.ts +1 -0
  108. package/dist/components/Icon/styles.d.ts.map +1 -0
  109. package/dist/components/Icon/types.d.ts +13 -3
  110. package/dist/components/Icon/types.d.ts.map +1 -0
  111. package/dist/components/List/context.d.ts +44 -0
  112. package/dist/components/List/context.d.ts.map +1 -0
  113. package/dist/components/List/elements.d.ts +29 -0
  114. package/dist/components/List/elements.d.ts.map +1 -0
  115. package/dist/components/List/index.d.ts +18 -2
  116. package/dist/components/List/index.d.ts.map +1 -0
  117. package/dist/components/List/scroll.d.ts +14 -0
  118. package/dist/components/List/scroll.d.ts.map +1 -0
  119. package/dist/components/List/styles.d.ts +2 -1
  120. package/dist/components/List/styles.d.ts.map +1 -0
  121. package/dist/components/List/types.d.ts +73 -13
  122. package/dist/components/List/types.d.ts.map +1 -0
  123. package/dist/components/LoadingOverlay/index.d.ts +7 -0
  124. package/dist/components/LoadingOverlay/index.d.ts.map +1 -0
  125. package/dist/components/LoadingOverlay/styles.d.ts +1 -0
  126. package/dist/components/LoadingOverlay/styles.d.ts.map +1 -0
  127. package/dist/components/LoadingOverlay/types.d.ts +8 -2
  128. package/dist/components/LoadingOverlay/types.d.ts.map +1 -0
  129. package/dist/components/MaskedTextInput/index.d.ts +7 -5
  130. package/dist/components/MaskedTextInput/index.d.ts.map +1 -0
  131. package/dist/components/MaskedTextInput/mask.d.ts +1 -0
  132. package/dist/components/MaskedTextInput/mask.d.ts.map +1 -0
  133. package/dist/components/MaskedTextInput/types.d.ts +12 -0
  134. package/dist/components/MaskedTextInput/types.d.ts.map +1 -0
  135. package/dist/components/Modal/context.d.ts +59 -0
  136. package/dist/components/Modal/context.d.ts.map +1 -0
  137. package/dist/components/Modal/elements.d.ts +38 -0
  138. package/dist/components/Modal/elements.d.ts.map +1 -0
  139. package/dist/components/Modal/index.d.ts +19 -2
  140. package/dist/components/Modal/index.d.ts.map +1 -0
  141. package/dist/components/Modal/styles.d.ts +3 -4
  142. package/dist/components/Modal/styles.d.ts.map +1 -0
  143. package/dist/components/Modal/types.d.ts +21 -36
  144. package/dist/components/Modal/types.d.ts.map +1 -0
  145. package/dist/components/NumberIncrement/index.d.ts +6 -2
  146. package/dist/components/NumberIncrement/index.d.ts.map +1 -0
  147. package/dist/components/NumberIncrement/styles.d.ts +4 -4
  148. package/dist/components/NumberIncrement/styles.d.ts.map +1 -0
  149. package/dist/components/NumberIncrement/types.d.ts +16 -4
  150. package/dist/components/NumberIncrement/types.d.ts.map +1 -0
  151. package/dist/components/NumberIncrement/useNumberIncrement.d.ts +10 -4
  152. package/dist/components/NumberIncrement/useNumberIncrement.d.ts.map +1 -0
  153. package/dist/components/Overlay/index.d.ts +7 -0
  154. package/dist/components/Overlay/index.d.ts.map +1 -0
  155. package/dist/components/Overlay/styles.d.ts +1 -0
  156. package/dist/components/Overlay/styles.d.ts.map +1 -0
  157. package/dist/components/Overlay/types.d.ts +8 -2
  158. package/dist/components/Overlay/types.d.ts.map +1 -0
  159. package/dist/components/PaginationButtons/index.d.ts +6 -0
  160. package/dist/components/PaginationButtons/index.d.ts.map +1 -0
  161. package/dist/components/PaginationButtons/styles.d.ts +1 -0
  162. package/dist/components/PaginationButtons/styles.d.ts.map +1 -0
  163. package/dist/components/PaginationButtons/types.d.ts +12 -2
  164. package/dist/components/PaginationButtons/types.d.ts.map +1 -0
  165. package/dist/components/PaginationIndicator/index.d.ts +6 -1
  166. package/dist/components/PaginationIndicator/index.d.ts.map +1 -0
  167. package/dist/components/PaginationIndicator/styles.d.ts +1 -0
  168. package/dist/components/PaginationIndicator/styles.d.ts.map +1 -0
  169. package/dist/components/PaginationIndicator/types.d.ts +11 -2
  170. package/dist/components/PaginationIndicator/types.d.ts.map +1 -0
  171. package/dist/components/Progress/Bar/Segmented.d.ts +16 -0
  172. package/dist/components/Progress/Bar/Segmented.d.ts.map +1 -0
  173. package/dist/components/Progress/Bar/index.d.ts +14 -0
  174. package/dist/components/Progress/Bar/index.d.ts.map +1 -0
  175. package/dist/components/Progress/Bar/styles.d.ts +3 -1
  176. package/dist/components/Progress/Bar/styles.d.ts.map +1 -0
  177. package/dist/components/Progress/Bar/types.d.ts +36 -6
  178. package/dist/components/Progress/Bar/types.d.ts.map +1 -0
  179. package/dist/components/Progress/Circle/Segmented.d.ts +16 -0
  180. package/dist/components/Progress/Circle/Segmented.d.ts.map +1 -0
  181. package/dist/components/Progress/Circle/index.d.ts +15 -0
  182. package/dist/components/Progress/Circle/index.d.ts.map +1 -0
  183. package/dist/components/Progress/Circle/styles.d.ts +3 -1
  184. package/dist/components/Progress/Circle/styles.d.ts.map +1 -0
  185. package/dist/components/Progress/Circle/types.d.ts +47 -7
  186. package/dist/components/Progress/Circle/types.d.ts.map +1 -0
  187. package/dist/components/Progress/index.d.ts +2 -0
  188. package/dist/components/Progress/index.d.ts.map +1 -0
  189. package/dist/components/Progress/utils.d.ts +1 -0
  190. package/dist/components/Progress/utils.d.ts.map +1 -0
  191. package/dist/components/RadioInput/index.d.ts +6 -2
  192. package/dist/components/RadioInput/index.d.ts.map +1 -0
  193. package/dist/components/RadioInput/styles.d.ts +4 -5
  194. package/dist/components/RadioInput/styles.d.ts.map +1 -0
  195. package/dist/components/RadioInput/types.d.ts +16 -7
  196. package/dist/components/RadioInput/types.d.ts.map +1 -0
  197. package/dist/components/SearchInput/index.d.ts +17 -0
  198. package/dist/components/SearchInput/index.d.ts.map +1 -0
  199. package/dist/components/SectionFilters/index.d.ts +8 -1
  200. package/dist/components/SectionFilters/index.d.ts.map +1 -0
  201. package/dist/components/SectionFilters/styles.d.ts +1 -0
  202. package/dist/components/SectionFilters/styles.d.ts.map +1 -0
  203. package/dist/components/SectionFilters/types.d.ts +28 -5
  204. package/dist/components/SectionFilters/types.d.ts.map +1 -0
  205. package/dist/components/Select/context.d.ts +61 -0
  206. package/dist/components/Select/context.d.ts.map +1 -0
  207. package/dist/components/Select/elements.d.ts +26 -0
  208. package/dist/components/Select/elements.d.ts.map +1 -0
  209. package/dist/components/Select/index.d.ts +71 -3
  210. package/dist/components/Select/index.d.ts.map +1 -0
  211. package/dist/components/Select/styles.d.ts +4 -51
  212. package/dist/components/Select/styles.d.ts.map +1 -0
  213. package/dist/components/Select/types.d.ts +79 -101
  214. package/dist/components/Select/types.d.ts.map +1 -0
  215. package/dist/components/Select/useTriggerWidth.d.ts +8 -0
  216. package/dist/components/Select/useTriggerWidth.d.ts.map +1 -0
  217. package/dist/components/Slider/index.d.ts +6 -2
  218. package/dist/components/Slider/index.d.ts.map +1 -0
  219. package/dist/components/Slider/styles.d.ts +4 -4
  220. package/dist/components/Slider/styles.d.ts.map +1 -0
  221. package/dist/components/Slider/types.d.ts +18 -4
  222. package/dist/components/Slider/types.d.ts.map +1 -0
  223. package/dist/components/Switch/index.d.ts +6 -2
  224. package/dist/components/Switch/index.d.ts.map +1 -0
  225. package/dist/components/Switch/styles.d.ts +4 -6
  226. package/dist/components/Switch/styles.d.ts.map +1 -0
  227. package/dist/components/Switch/types.d.ts +20 -5
  228. package/dist/components/Switch/types.d.ts.map +1 -0
  229. package/dist/components/Tag/index.d.ts +6 -0
  230. package/dist/components/Tag/index.d.ts.map +1 -0
  231. package/dist/components/Tag/styles.d.ts +1 -0
  232. package/dist/components/Tag/styles.d.ts.map +1 -0
  233. package/dist/components/Tag/types.d.ts +15 -2
  234. package/dist/components/Tag/types.d.ts.map +1 -0
  235. package/dist/components/Text/index.d.ts +8 -0
  236. package/dist/components/Text/index.d.ts.map +1 -0
  237. package/dist/components/Text/styles.d.ts +2 -1
  238. package/dist/components/Text/styles.d.ts.map +1 -0
  239. package/dist/components/Text/types.d.ts +18 -2
  240. package/dist/components/Text/types.d.ts.map +1 -0
  241. package/dist/components/TextEditor/index.d.ts +7 -1
  242. package/dist/components/TextEditor/index.d.ts.map +1 -0
  243. package/dist/components/TextEditor/styles.d.ts +1 -0
  244. package/dist/components/TextEditor/styles.d.ts.map +1 -0
  245. package/dist/components/TextEditor/types.d.ts +10 -2
  246. package/dist/components/TextEditor/types.d.ts.map +1 -0
  247. package/dist/components/TextInput/index.d.ts +6 -0
  248. package/dist/components/TextInput/index.d.ts.map +1 -0
  249. package/dist/components/TextInput/styles.d.ts +4 -6
  250. package/dist/components/TextInput/styles.d.ts.map +1 -0
  251. package/dist/components/TextInput/types.d.ts +20 -11
  252. package/dist/components/TextInput/types.d.ts.map +1 -0
  253. package/dist/components/TextInput/useTextInput.d.ts +22 -14
  254. package/dist/components/TextInput/useTextInput.d.ts.map +1 -0
  255. package/dist/components/Tooltip/index.d.ts +6 -0
  256. package/dist/components/Tooltip/index.d.ts.map +1 -0
  257. package/dist/components/Tooltip/styles.d.ts +1 -0
  258. package/dist/components/Tooltip/styles.d.ts.map +1 -0
  259. package/dist/components/Tooltip/types.d.ts +12 -2
  260. package/dist/components/Tooltip/types.d.ts.map +1 -0
  261. package/dist/components/Touchable/index.d.ts +13 -9
  262. package/dist/components/Touchable/index.d.ts.map +1 -0
  263. package/dist/components/Touchable/styles.d.ts +1 -0
  264. package/dist/components/Touchable/styles.d.ts.map +1 -0
  265. package/dist/components/Touchable/types.d.ts +14 -3
  266. package/dist/components/Touchable/types.d.ts.map +1 -0
  267. package/dist/components/View/index.d.ts +13 -9
  268. package/dist/components/View/index.d.ts.map +1 -0
  269. package/dist/components/View/styles.d.ts +1 -0
  270. package/dist/components/View/styles.d.ts.map +1 -0
  271. package/dist/components/View/types.d.ts +15 -2
  272. package/dist/components/View/types.d.ts.map +1 -0
  273. package/dist/components/components.d.ts +3 -4
  274. package/dist/components/components.d.ts.map +1 -0
  275. package/dist/index.d.ts +1 -0
  276. package/dist/index.d.ts.map +1 -0
  277. package/dist/lib/ListMasonry.d.ts +1 -0
  278. package/dist/lib/ListMasonry.d.ts.map +1 -0
  279. package/dist/lib/ThemeVariables.d.ts +10 -0
  280. package/dist/lib/ThemeVariables.d.ts.map +1 -0
  281. package/dist/lib/WebStyleRegistry.d.ts +21 -0
  282. package/dist/lib/WebStyleRegistry.d.ts.map +1 -0
  283. package/dist/lib/hooks/index.d.ts +4 -0
  284. package/dist/lib/hooks/index.d.ts.map +1 -0
  285. package/dist/lib/hooks/useAnimatedStyle.d.ts +8 -0
  286. package/dist/lib/hooks/useAnimatedStyle.d.ts.map +1 -0
  287. package/dist/lib/hooks/useAnimatedVariantStyles.d.ts +7 -0
  288. package/dist/lib/hooks/useAnimatedVariantStyles.d.ts.map +1 -0
  289. package/dist/lib/hooks/useAsyncSelect.d.ts +71 -0
  290. package/dist/lib/hooks/useAsyncSelect.d.ts.map +1 -0
  291. package/dist/lib/hooks/useBreakpointMatch.d.ts +12 -0
  292. package/dist/lib/hooks/useBreakpointMatch.d.ts.map +1 -0
  293. package/dist/lib/hooks/useClick.d.ts +7 -0
  294. package/dist/lib/hooks/useClick.d.ts.map +1 -0
  295. package/dist/lib/hooks/useClickOutside.d.ts +10 -1
  296. package/dist/lib/hooks/useClickOutside.d.ts.map +1 -0
  297. package/dist/lib/hooks/useFileInput.d.ts +8 -2
  298. package/dist/lib/hooks/useFileInput.d.ts.map +1 -0
  299. package/dist/lib/hooks/useIsomorphicEffect.d.ts +5 -0
  300. package/dist/lib/hooks/useIsomorphicEffect.d.ts.map +1 -0
  301. package/dist/lib/hooks/useKeydown.d.ts +9 -0
  302. package/dist/lib/hooks/useKeydown.d.ts.map +1 -0
  303. package/dist/lib/hooks/useListFocus.d.ts +19 -0
  304. package/dist/lib/hooks/useListFocus.d.ts.map +1 -0
  305. package/dist/lib/hooks/useMediaQuery.d.ts +8 -0
  306. package/dist/lib/hooks/useMediaQuery.d.ts.map +1 -0
  307. package/dist/lib/hooks/usePageExitBlocker.d.ts +11 -0
  308. package/dist/lib/hooks/usePageExitBlocker.d.ts.map +1 -0
  309. package/dist/lib/hooks/usePagination.d.ts +20 -5
  310. package/dist/lib/hooks/usePagination.d.ts.map +1 -0
  311. package/dist/lib/hooks/usePopState.d.ts +12 -0
  312. package/dist/lib/hooks/usePopState.d.ts.map +1 -0
  313. package/dist/lib/hooks/usePopoverDismiss.d.ts +20 -0
  314. package/dist/lib/hooks/usePopoverDismiss.d.ts.map +1 -0
  315. package/dist/lib/hooks/useRefresh.d.ts +12 -2
  316. package/dist/lib/hooks/useRefresh.d.ts.map +1 -0
  317. package/dist/lib/hooks/useScrollEffect.d.ts +7 -1
  318. package/dist/lib/hooks/useScrollEffect.d.ts.map +1 -0
  319. package/dist/lib/hooks/useSearchParams.d.ts +14 -0
  320. package/dist/lib/hooks/useSearchParams.d.ts.map +1 -0
  321. package/dist/lib/hooks/useStaticAnimationStyles.d.ts +7 -0
  322. package/dist/lib/hooks/useStaticAnimationStyles.d.ts.map +1 -0
  323. package/dist/lib/hooks/useStylesFor.d.ts +12 -2
  324. package/dist/lib/hooks/useStylesFor.d.ts.map +1 -0
  325. package/dist/lib/hooks/useTouchableEvents.d.ts +19 -0
  326. package/dist/lib/hooks/useTouchableEvents.d.ts.map +1 -0
  327. package/dist/lib/hooks/useWindowFocus.d.ts +6 -0
  328. package/dist/lib/hooks/useWindowFocus.d.ts.map +1 -0
  329. package/dist/lib/hooks/useWindowSize.d.ts +8 -1
  330. package/dist/lib/hooks/useWindowSize.d.ts.map +1 -0
  331. package/dist/lib/index.d.ts +2 -0
  332. package/dist/lib/index.d.ts.map +1 -0
  333. package/dist/lib/tools/index.d.ts +1 -0
  334. package/dist/lib/tools/index.d.ts.map +1 -0
  335. package/dist/lib/tools/localStorage.d.ts +13 -0
  336. package/dist/lib/tools/localStorage.d.ts.map +1 -0
  337. package/dist/lib/tools/mediaQuery.d.ts +10 -3
  338. package/dist/lib/tools/mediaQuery.d.ts.map +1 -0
  339. package/dist/lib/tools/modal.d.ts +12 -0
  340. package/dist/lib/tools/modal.d.ts.map +1 -0
  341. package/dist/lib/utils/attributes.d.ts +15 -0
  342. package/dist/lib/utils/attributes.d.ts.map +1 -0
  343. package/dist/lib/utils/cache.d.ts +5 -2
  344. package/dist/lib/utils/cache.d.ts.map +1 -0
  345. package/dist/lib/utils/index.d.ts +2 -0
  346. package/dist/lib/utils/index.d.ts.map +1 -0
  347. package/dist/lib/utils/pollyfils/scroll.d.ts +7 -0
  348. package/dist/lib/utils/pollyfils/scroll.d.ts.map +1 -0
  349. package/dist/lib/utils/stopPropagation.d.ts +6 -0
  350. package/dist/lib/utils/stopPropagation.d.ts.map +1 -0
  351. package/dist/lib/utils/test.d.ts +6 -0
  352. package/dist/lib/utils/test.d.ts.map +1 -0
  353. package/dist/types/index.d.ts +1 -0
  354. package/dist/types/index.d.ts.map +1 -0
  355. package/dist/types/utility.d.ts +19 -0
  356. package/dist/types/utility.d.ts.map +1 -0
  357. package/package.json +37 -23
  358. package/src/components/ActivityIndicator/index.tsx +8 -12
  359. package/src/components/ActivityIndicator/types.ts +12 -2
  360. package/src/components/Badge/index.tsx +8 -2
  361. package/src/components/Badge/types.ts +16 -2
  362. package/src/components/Button/index.tsx +28 -14
  363. package/src/components/Button/styles.ts +8 -4
  364. package/src/components/Button/types.ts +11 -5
  365. package/src/components/Calendar/index.tsx +121 -0
  366. package/src/components/Calendar/styles.ts +14 -0
  367. package/src/components/Calendar/types.ts +23 -0
  368. package/src/components/Carousel/index.tsx +5 -0
  369. package/src/components/Carousel/types.ts +13 -2
  370. package/src/components/Checkbox/index.tsx +62 -134
  371. package/src/components/Checkbox/styles.ts +3 -15
  372. package/src/components/Checkbox/types.ts +21 -7
  373. package/src/components/Collapse/index.tsx +4 -1
  374. package/src/components/Collapse/types.ts +5 -2
  375. package/src/components/ColorPicker/index.tsx +11 -4
  376. package/src/components/ColorPicker/types.ts +16 -4
  377. package/src/components/CropPicker/hooks.ts +9 -0
  378. package/src/components/CropPicker/index.tsx +28 -37
  379. package/src/components/CropPicker/styles.ts +1 -5
  380. package/src/components/CropPicker/types.ts +7 -4
  381. package/src/components/CropPicker/utils.ts +9 -0
  382. package/src/components/DatePicker/index.tsx +77 -130
  383. package/src/components/DatePicker/styles.ts +2 -22
  384. package/src/components/DatePicker/types.ts +45 -57
  385. package/src/components/Drawer/index.tsx +55 -167
  386. package/src/components/Drawer/styles.ts +4 -7
  387. package/src/components/Drawer/types.ts +9 -21
  388. package/src/components/Dropzone/context.tsx +52 -0
  389. package/src/components/Dropzone/elements.tsx +79 -0
  390. package/src/components/Dropzone/index.tsx +67 -213
  391. package/src/components/Dropzone/styles.ts +7 -12
  392. package/src/components/Dropzone/types.ts +92 -39
  393. package/src/components/Dropzone/useDropzone.ts +18 -0
  394. package/src/components/EmptyPlaceholder/index.tsx +6 -1
  395. package/src/components/EmptyPlaceholder/types.ts +11 -2
  396. package/src/components/Field/context.tsx +66 -0
  397. package/src/components/Field/elements.tsx +159 -0
  398. package/src/components/Field/index.tsx +55 -0
  399. package/src/components/Field/styles.ts +18 -0
  400. package/src/components/Field/types.ts +51 -0
  401. package/src/components/{InputBase/useInputBase.ts → Field/useFieldInput.ts} +13 -10
  402. package/src/components/FileInput/index.tsx +7 -2
  403. package/src/components/FileInput/types.ts +9 -2
  404. package/src/components/Icon/index.tsx +33 -5
  405. package/src/components/Icon/types.ts +14 -5
  406. package/src/components/List/context.tsx +97 -0
  407. package/src/components/List/elements.tsx +173 -0
  408. package/src/components/List/index.tsx +37 -74
  409. package/src/components/List/scroll.ts +83 -0
  410. package/src/components/List/styles.ts +1 -1
  411. package/src/components/List/types.ts +83 -19
  412. package/src/components/LoadingOverlay/index.tsx +6 -0
  413. package/src/components/LoadingOverlay/types.ts +7 -2
  414. package/src/components/MaskedTextInput/index.tsx +6 -4
  415. package/src/components/MaskedTextInput/types.ts +11 -0
  416. package/src/components/Modal/context.tsx +48 -0
  417. package/src/components/Modal/elements.tsx +119 -0
  418. package/src/components/Modal/index.tsx +38 -325
  419. package/src/components/Modal/styles.ts +4 -14
  420. package/src/components/Modal/types.ts +23 -45
  421. package/src/components/NumberIncrement/index.tsx +87 -88
  422. package/src/components/NumberIncrement/styles.ts +3 -8
  423. package/src/components/NumberIncrement/types.ts +16 -4
  424. package/src/components/NumberIncrement/useNumberIncrement.ts +7 -2
  425. package/src/components/Overlay/index.tsx +20 -3
  426. package/src/components/Overlay/types.ts +7 -2
  427. package/src/components/PaginationButtons/index.tsx +5 -0
  428. package/src/components/PaginationButtons/types.ts +11 -2
  429. package/src/components/PaginationIndicator/index.tsx +4 -0
  430. package/src/components/PaginationIndicator/types.ts +11 -3
  431. package/src/components/Progress/Bar/Segmented.tsx +66 -0
  432. package/src/components/Progress/Bar/index.tsx +31 -15
  433. package/src/components/Progress/Bar/styles.ts +6 -1
  434. package/src/components/Progress/Bar/types.ts +39 -7
  435. package/src/components/Progress/Circle/Segmented.tsx +114 -0
  436. package/src/components/Progress/Circle/index.tsx +89 -39
  437. package/src/components/Progress/Circle/styles.ts +7 -1
  438. package/src/components/Progress/Circle/types.ts +49 -7
  439. package/src/components/Progress/index.tsx +1 -0
  440. package/src/components/RadioInput/index.tsx +63 -56
  441. package/src/components/RadioInput/styles.ts +3 -7
  442. package/src/components/RadioInput/types.ts +16 -8
  443. package/src/components/SearchInput/index.tsx +31 -10
  444. package/src/components/SectionFilters/index.tsx +6 -0
  445. package/src/components/SectionFilters/types.ts +27 -5
  446. package/src/components/Select/context.tsx +262 -0
  447. package/src/components/Select/elements.tsx +126 -0
  448. package/src/components/Select/index.tsx +64 -494
  449. package/src/components/Select/styles.ts +7 -169
  450. package/src/components/Select/types.ts +68 -101
  451. package/src/components/Select/useTriggerWidth.ts +29 -0
  452. package/src/components/Slider/index.tsx +118 -116
  453. package/src/components/Slider/styles.ts +4 -9
  454. package/src/components/Slider/types.ts +19 -6
  455. package/src/components/Switch/index.tsx +60 -96
  456. package/src/components/Switch/styles.ts +3 -14
  457. package/src/components/Switch/types.ts +22 -7
  458. package/src/components/Tag/index.tsx +18 -5
  459. package/src/components/Tag/types.ts +15 -2
  460. package/src/components/Text/index.tsx +35 -3
  461. package/src/components/Text/styles.ts +1 -1
  462. package/src/components/Text/types.ts +19 -2
  463. package/src/components/TextEditor/index.tsx +7 -1
  464. package/src/components/TextEditor/types.ts +9 -2
  465. package/src/components/TextInput/index.tsx +94 -109
  466. package/src/components/TextInput/styles.ts +4 -8
  467. package/src/components/TextInput/types.ts +24 -11
  468. package/src/components/TextInput/useTextInput.ts +33 -17
  469. package/src/components/Tooltip/index.tsx +5 -3
  470. package/src/components/Tooltip/types.ts +11 -2
  471. package/src/components/Touchable/index.tsx +23 -25
  472. package/src/components/Touchable/types.ts +31 -19
  473. package/src/components/View/index.tsx +7 -5
  474. package/src/components/View/types.ts +14 -2
  475. package/src/components/components.ts +3 -4
  476. package/src/css.d.ts +10 -0
  477. package/src/lib/ThemeVariables.tsx +38 -0
  478. package/src/lib/WebStyleRegistry.ts +27 -0
  479. package/src/lib/hooks/index.ts +4 -0
  480. package/src/lib/hooks/useAnimatedStyle.ts +7 -0
  481. package/src/lib/hooks/useAnimatedVariantStyles.ts +6 -0
  482. package/src/lib/hooks/useAsyncSelect.ts +126 -0
  483. package/src/lib/hooks/useBreakpointMatch.ts +11 -0
  484. package/src/lib/hooks/useClick.ts +7 -1
  485. package/src/lib/hooks/useClickOutside.ts +8 -0
  486. package/src/lib/hooks/useFileInput.ts +5 -0
  487. package/src/lib/hooks/useIsomorphicEffect.ts +4 -0
  488. package/src/lib/hooks/useKeydown.ts +8 -0
  489. package/src/lib/hooks/useListFocus.ts +59 -0
  490. package/src/lib/hooks/useMediaQuery.ts +7 -0
  491. package/src/lib/hooks/usePageExitBlocker.ts +10 -0
  492. package/src/lib/hooks/usePagination.ts +14 -0
  493. package/src/lib/hooks/usePopState.ts +11 -0
  494. package/src/lib/hooks/usePopoverDismiss.ts +42 -0
  495. package/src/lib/hooks/useRefresh.ts +9 -0
  496. package/src/lib/hooks/useScrollEffect.ts +5 -0
  497. package/src/lib/hooks/useSearchParams.ts +13 -0
  498. package/src/lib/hooks/useStaticAnimationStyles.ts +6 -0
  499. package/src/lib/hooks/useStylesFor.ts +32 -21
  500. package/src/lib/hooks/useTouchableEvents.ts +41 -0
  501. package/src/lib/hooks/useWindowFocus.ts +5 -0
  502. package/src/lib/hooks/useWindowSize.ts +21 -6
  503. package/src/lib/index.ts +1 -0
  504. package/src/lib/tools/localStorage.ts +12 -0
  505. package/src/lib/tools/mediaQuery.ts +9 -3
  506. package/src/lib/tools/modal.ts +11 -0
  507. package/src/lib/utils/attributes.ts +53 -0
  508. package/src/lib/utils/cache.ts +2 -0
  509. package/src/lib/utils/index.ts +1 -0
  510. package/src/lib/utils/pollyfils/scroll.ts +6 -0
  511. package/src/lib/utils/stopPropagation.ts +5 -0
  512. package/src/lib/utils/test.ts +5 -0
  513. package/src/types/utility.ts +18 -2
  514. package/dist/components/ActionIcon/index.d.ts +0 -12
  515. package/dist/components/ActionIcon/index.js +0 -88
  516. package/dist/components/ActionIcon/index.js.map +0 -1
  517. package/dist/components/ActionIcon/styles.d.ts +0 -5
  518. package/dist/components/ActionIcon/styles.js +0 -3
  519. package/dist/components/ActionIcon/styles.js.map +0 -1
  520. package/dist/components/ActionIcon/types.d.ts +0 -11
  521. package/dist/components/ActionIcon/types.js +0 -3
  522. package/dist/components/ActionIcon/types.js.map +0 -1
  523. package/dist/components/ActivityIndicator/index.js +0 -74
  524. package/dist/components/ActivityIndicator/index.js.map +0 -1
  525. package/dist/components/ActivityIndicator/styles.js +0 -3
  526. package/dist/components/ActivityIndicator/styles.js.map +0 -1
  527. package/dist/components/ActivityIndicator/types.js +0 -3
  528. package/dist/components/ActivityIndicator/types.js.map +0 -1
  529. package/dist/components/Badge/index.js +0 -100
  530. package/dist/components/Badge/index.js.map +0 -1
  531. package/dist/components/Badge/styles.js +0 -3
  532. package/dist/components/Badge/styles.js.map +0 -1
  533. package/dist/components/Badge/types.js +0 -3
  534. package/dist/components/Badge/types.js.map +0 -1
  535. package/dist/components/Button/index.js +0 -91
  536. package/dist/components/Button/index.js.map +0 -1
  537. package/dist/components/Button/styles.js +0 -3
  538. package/dist/components/Button/styles.js.map +0 -1
  539. package/dist/components/Button/types.js +0 -3
  540. package/dist/components/Button/types.js.map +0 -1
  541. package/dist/components/Carousel/index.js +0 -168
  542. package/dist/components/Carousel/index.js.map +0 -1
  543. package/dist/components/Carousel/styles.js +0 -3
  544. package/dist/components/Carousel/styles.js.map +0 -1
  545. package/dist/components/Carousel/types.js +0 -3
  546. package/dist/components/Carousel/types.js.map +0 -1
  547. package/dist/components/Checkbox/index.js +0 -129
  548. package/dist/components/Checkbox/index.js.map +0 -1
  549. package/dist/components/Checkbox/styles.js +0 -3
  550. package/dist/components/Checkbox/styles.js.map +0 -1
  551. package/dist/components/Checkbox/types.js +0 -3
  552. package/dist/components/Checkbox/types.js.map +0 -1
  553. package/dist/components/Collapse/index.js +0 -62
  554. package/dist/components/Collapse/index.js.map +0 -1
  555. package/dist/components/Collapse/styles.js +0 -3
  556. package/dist/components/Collapse/styles.js.map +0 -1
  557. package/dist/components/Collapse/types.js +0 -3
  558. package/dist/components/Collapse/types.js.map +0 -1
  559. package/dist/components/ColorPicker/index.js +0 -84
  560. package/dist/components/ColorPicker/index.js.map +0 -1
  561. package/dist/components/ColorPicker/styles.js +0 -3
  562. package/dist/components/ColorPicker/styles.js.map +0 -1
  563. package/dist/components/ColorPicker/types.js +0 -3
  564. package/dist/components/ColorPicker/types.js.map +0 -1
  565. package/dist/components/CropPicker/components/CropPickerFooter.d.ts +0 -11
  566. package/dist/components/CropPicker/components/CropPickerFooter.js +0 -12
  567. package/dist/components/CropPicker/components/CropPickerFooter.js.map +0 -1
  568. package/dist/components/CropPicker/hooks.js +0 -184
  569. package/dist/components/CropPicker/hooks.js.map +0 -1
  570. package/dist/components/CropPicker/index.js +0 -66
  571. package/dist/components/CropPicker/index.js.map +0 -1
  572. package/dist/components/CropPicker/styles.js +0 -3
  573. package/dist/components/CropPicker/styles.js.map +0 -1
  574. package/dist/components/CropPicker/types.js +0 -3
  575. package/dist/components/CropPicker/types.js.map +0 -1
  576. package/dist/components/CropPicker/utils.js +0 -117
  577. package/dist/components/CropPicker/utils.js.map +0 -1
  578. package/dist/components/DatePicker/components/DayContent.d.ts +0 -11
  579. package/dist/components/DatePicker/components/DayContent.js +0 -43
  580. package/dist/components/DatePicker/components/DayContent.js.map +0 -1
  581. package/dist/components/DatePicker/components/Header.d.ts +0 -3
  582. package/dist/components/DatePicker/components/Header.js +0 -50
  583. package/dist/components/DatePicker/components/Header.js.map +0 -1
  584. package/dist/components/DatePicker/components/OuterInput.d.ts +0 -2
  585. package/dist/components/DatePicker/components/OuterInput.js +0 -36
  586. package/dist/components/DatePicker/components/OuterInput.js.map +0 -1
  587. package/dist/components/DatePicker/components/YearContent.d.ts +0 -9
  588. package/dist/components/DatePicker/components/YearContent.js +0 -33
  589. package/dist/components/DatePicker/components/YearContent.js.map +0 -1
  590. package/dist/components/DatePicker/components/index.d.ts +0 -4
  591. package/dist/components/DatePicker/components/index.js +0 -21
  592. package/dist/components/DatePicker/components/index.js.map +0 -1
  593. package/dist/components/DatePicker/index.js +0 -102
  594. package/dist/components/DatePicker/index.js.map +0 -1
  595. package/dist/components/DatePicker/styles.js +0 -3
  596. package/dist/components/DatePicker/styles.js.map +0 -1
  597. package/dist/components/DatePicker/types.js +0 -3
  598. package/dist/components/DatePicker/types.js.map +0 -1
  599. package/dist/components/Drawer/index.js +0 -139
  600. package/dist/components/Drawer/index.js.map +0 -1
  601. package/dist/components/Drawer/styles.js +0 -3
  602. package/dist/components/Drawer/styles.js.map +0 -1
  603. package/dist/components/Drawer/types.js +0 -3
  604. package/dist/components/Drawer/types.js.map +0 -1
  605. package/dist/components/Dropzone/index.js +0 -167
  606. package/dist/components/Dropzone/index.js.map +0 -1
  607. package/dist/components/Dropzone/styles.js +0 -3
  608. package/dist/components/Dropzone/styles.js.map +0 -1
  609. package/dist/components/Dropzone/types.js +0 -3
  610. package/dist/components/Dropzone/types.js.map +0 -1
  611. package/dist/components/EmptyPlaceholder/index.js +0 -86
  612. package/dist/components/EmptyPlaceholder/index.js.map +0 -1
  613. package/dist/components/EmptyPlaceholder/styles.js +0 -3
  614. package/dist/components/EmptyPlaceholder/styles.js.map +0 -1
  615. package/dist/components/EmptyPlaceholder/types.js +0 -3
  616. package/dist/components/EmptyPlaceholder/types.js.map +0 -1
  617. package/dist/components/FileInput/index.js +0 -136
  618. package/dist/components/FileInput/index.js.map +0 -1
  619. package/dist/components/FileInput/types.js +0 -3
  620. package/dist/components/FileInput/types.js.map +0 -1
  621. package/dist/components/Icon/index.js +0 -73
  622. package/dist/components/Icon/index.js.map +0 -1
  623. package/dist/components/Icon/styles.js +0 -3
  624. package/dist/components/Icon/styles.js.map +0 -1
  625. package/dist/components/Icon/types.js +0 -3
  626. package/dist/components/Icon/types.js.map +0 -1
  627. package/dist/components/InputBase/index.d.ts +0 -7
  628. package/dist/components/InputBase/index.js +0 -120
  629. package/dist/components/InputBase/index.js.map +0 -1
  630. package/dist/components/InputBase/styles.d.ts +0 -30
  631. package/dist/components/InputBase/styles.js +0 -73
  632. package/dist/components/InputBase/styles.js.map +0 -1
  633. package/dist/components/InputBase/types.d.ts +0 -37
  634. package/dist/components/InputBase/types.js +0 -3
  635. package/dist/components/InputBase/types.js.map +0 -1
  636. package/dist/components/InputBase/useInputBase.js +0 -54
  637. package/dist/components/InputBase/useInputBase.js.map +0 -1
  638. package/dist/components/InputBase/useInputBasePartialStyles.d.ts +0 -2
  639. package/dist/components/InputBase/useInputBasePartialStyles.js +0 -39
  640. package/dist/components/InputBase/useInputBasePartialStyles.js.map +0 -1
  641. package/dist/components/InputBase/utils.d.ts +0 -18
  642. package/dist/components/InputBase/utils.js +0 -63
  643. package/dist/components/InputBase/utils.js.map +0 -1
  644. package/dist/components/List/index.js +0 -138
  645. package/dist/components/List/index.js.map +0 -1
  646. package/dist/components/List/styles.js +0 -3
  647. package/dist/components/List/styles.js.map +0 -1
  648. package/dist/components/List/types.js +0 -3
  649. package/dist/components/List/types.js.map +0 -1
  650. package/dist/components/LoadingOverlay/index.js +0 -63
  651. package/dist/components/LoadingOverlay/index.js.map +0 -1
  652. package/dist/components/LoadingOverlay/styles.js +0 -3
  653. package/dist/components/LoadingOverlay/styles.js.map +0 -1
  654. package/dist/components/LoadingOverlay/types.js +0 -3
  655. package/dist/components/LoadingOverlay/types.js.map +0 -1
  656. package/dist/components/MaskedTextInput/index.js +0 -69
  657. package/dist/components/MaskedTextInput/index.js.map +0 -1
  658. package/dist/components/MaskedTextInput/mask.js +0 -37
  659. package/dist/components/MaskedTextInput/mask.js.map +0 -1
  660. package/dist/components/MaskedTextInput/types.js +0 -3
  661. package/dist/components/MaskedTextInput/types.js.map +0 -1
  662. package/dist/components/Modal/index.js +0 -217
  663. package/dist/components/Modal/index.js.map +0 -1
  664. package/dist/components/Modal/styles.js +0 -3
  665. package/dist/components/Modal/styles.js.map +0 -1
  666. package/dist/components/Modal/types.js +0 -3
  667. package/dist/components/Modal/types.js.map +0 -1
  668. package/dist/components/NumberIncrement/index.js +0 -102
  669. package/dist/components/NumberIncrement/index.js.map +0 -1
  670. package/dist/components/NumberIncrement/styles.js +0 -3
  671. package/dist/components/NumberIncrement/styles.js.map +0 -1
  672. package/dist/components/NumberIncrement/types.js +0 -3
  673. package/dist/components/NumberIncrement/types.js.map +0 -1
  674. package/dist/components/NumberIncrement/useNumberIncrement.js +0 -114
  675. package/dist/components/NumberIncrement/useNumberIncrement.js.map +0 -1
  676. package/dist/components/Overlay/index.js +0 -71
  677. package/dist/components/Overlay/index.js.map +0 -1
  678. package/dist/components/Overlay/styles.js +0 -3
  679. package/dist/components/Overlay/styles.js.map +0 -1
  680. package/dist/components/Overlay/types.js +0 -3
  681. package/dist/components/Overlay/types.js.map +0 -1
  682. package/dist/components/PaginationButtons/index.js +0 -131
  683. package/dist/components/PaginationButtons/index.js.map +0 -1
  684. package/dist/components/PaginationButtons/styles.js +0 -3
  685. package/dist/components/PaginationButtons/styles.js.map +0 -1
  686. package/dist/components/PaginationButtons/types.js +0 -3
  687. package/dist/components/PaginationButtons/types.js.map +0 -1
  688. package/dist/components/PaginationIndicator/index.js +0 -63
  689. package/dist/components/PaginationIndicator/index.js.map +0 -1
  690. package/dist/components/PaginationIndicator/styles.js +0 -3
  691. package/dist/components/PaginationIndicator/styles.js.map +0 -1
  692. package/dist/components/PaginationIndicator/types.js +0 -3
  693. package/dist/components/PaginationIndicator/types.js.map +0 -1
  694. package/dist/components/Progress/Bar/index.js +0 -76
  695. package/dist/components/Progress/Bar/index.js.map +0 -1
  696. package/dist/components/Progress/Bar/styles.js +0 -3
  697. package/dist/components/Progress/Bar/styles.js.map +0 -1
  698. package/dist/components/Progress/Bar/types.js +0 -3
  699. package/dist/components/Progress/Bar/types.js.map +0 -1
  700. package/dist/components/Progress/Circle/index.js +0 -82
  701. package/dist/components/Progress/Circle/index.js.map +0 -1
  702. package/dist/components/Progress/Circle/styles.js +0 -3
  703. package/dist/components/Progress/Circle/styles.js.map +0 -1
  704. package/dist/components/Progress/Circle/types.js +0 -3
  705. package/dist/components/Progress/Circle/types.js.map +0 -1
  706. package/dist/components/Progress/index.js +0 -19
  707. package/dist/components/Progress/index.js.map +0 -1
  708. package/dist/components/Progress/utils.js +0 -7
  709. package/dist/components/Progress/utils.js.map +0 -1
  710. package/dist/components/RadioInput/index.js +0 -83
  711. package/dist/components/RadioInput/index.js.map +0 -1
  712. package/dist/components/RadioInput/styles.js +0 -3
  713. package/dist/components/RadioInput/styles.js.map +0 -1
  714. package/dist/components/RadioInput/types.js +0 -3
  715. package/dist/components/RadioInput/types.js.map +0 -1
  716. package/dist/components/SearchInput/index.js +0 -101
  717. package/dist/components/SearchInput/index.js.map +0 -1
  718. package/dist/components/SectionFilters/index.js +0 -179
  719. package/dist/components/SectionFilters/index.js.map +0 -1
  720. package/dist/components/SectionFilters/styles.js +0 -3
  721. package/dist/components/SectionFilters/styles.js.map +0 -1
  722. package/dist/components/SectionFilters/types.js +0 -3
  723. package/dist/components/SectionFilters/types.js.map +0 -1
  724. package/dist/components/SegmentedControl/index.d.ts +0 -12
  725. package/dist/components/SegmentedControl/index.js +0 -149
  726. package/dist/components/SegmentedControl/index.js.map +0 -1
  727. package/dist/components/SegmentedControl/styles.d.ts +0 -4
  728. package/dist/components/SegmentedControl/styles.js +0 -3
  729. package/dist/components/SegmentedControl/styles.js.map +0 -1
  730. package/dist/components/SegmentedControl/types.d.ts +0 -39
  731. package/dist/components/SegmentedControl/types.js +0 -3
  732. package/dist/components/SegmentedControl/types.js.map +0 -1
  733. package/dist/components/Select/index.js +0 -383
  734. package/dist/components/Select/index.js.map +0 -1
  735. package/dist/components/Select/styles.js +0 -96
  736. package/dist/components/Select/styles.js.map +0 -1
  737. package/dist/components/Select/types.js +0 -3
  738. package/dist/components/Select/types.js.map +0 -1
  739. package/dist/components/Slider/index.js +0 -193
  740. package/dist/components/Slider/index.js.map +0 -1
  741. package/dist/components/Slider/styles.js +0 -3
  742. package/dist/components/Slider/styles.js.map +0 -1
  743. package/dist/components/Slider/types.js +0 -3
  744. package/dist/components/Slider/types.js.map +0 -1
  745. package/dist/components/Switch/index.js +0 -108
  746. package/dist/components/Switch/index.js.map +0 -1
  747. package/dist/components/Switch/styles.js +0 -3
  748. package/dist/components/Switch/styles.js.map +0 -1
  749. package/dist/components/Switch/types.js +0 -3
  750. package/dist/components/Switch/types.js.map +0 -1
  751. package/dist/components/Tag/index.js +0 -86
  752. package/dist/components/Tag/index.js.map +0 -1
  753. package/dist/components/Tag/styles.js +0 -3
  754. package/dist/components/Tag/styles.js.map +0 -1
  755. package/dist/components/Tag/types.js +0 -3
  756. package/dist/components/Tag/types.js.map +0 -1
  757. package/dist/components/Text/index.js +0 -102
  758. package/dist/components/Text/index.js.map +0 -1
  759. package/dist/components/Text/styles.js +0 -3
  760. package/dist/components/Text/styles.js.map +0 -1
  761. package/dist/components/Text/types.js +0 -3
  762. package/dist/components/Text/types.js.map +0 -1
  763. package/dist/components/TextEditor/index.js +0 -114
  764. package/dist/components/TextEditor/index.js.map +0 -1
  765. package/dist/components/TextEditor/styles.js +0 -3
  766. package/dist/components/TextEditor/styles.js.map +0 -1
  767. package/dist/components/TextEditor/types.js +0 -3
  768. package/dist/components/TextEditor/types.js.map +0 -1
  769. package/dist/components/TextInput/index.js +0 -141
  770. package/dist/components/TextInput/index.js.map +0 -1
  771. package/dist/components/TextInput/styles.js +0 -3
  772. package/dist/components/TextInput/styles.js.map +0 -1
  773. package/dist/components/TextInput/types.js +0 -3
  774. package/dist/components/TextInput/types.js.map +0 -1
  775. package/dist/components/TextInput/useTextInput.js +0 -65
  776. package/dist/components/TextInput/useTextInput.js.map +0 -1
  777. package/dist/components/Tooltip/index.js +0 -134
  778. package/dist/components/Tooltip/index.js.map +0 -1
  779. package/dist/components/Tooltip/styles.js +0 -3
  780. package/dist/components/Tooltip/styles.js.map +0 -1
  781. package/dist/components/Tooltip/types.js +0 -3
  782. package/dist/components/Tooltip/types.js.map +0 -1
  783. package/dist/components/Touchable/index.js +0 -125
  784. package/dist/components/Touchable/index.js.map +0 -1
  785. package/dist/components/Touchable/styles.js +0 -3
  786. package/dist/components/Touchable/styles.js.map +0 -1
  787. package/dist/components/Touchable/types.js +0 -3
  788. package/dist/components/Touchable/types.js.map +0 -1
  789. package/dist/components/View/index.js +0 -74
  790. package/dist/components/View/index.js.map +0 -1
  791. package/dist/components/View/styles.js +0 -3
  792. package/dist/components/View/styles.js.map +0 -1
  793. package/dist/components/View/types.js +0 -3
  794. package/dist/components/View/types.js.map +0 -1
  795. package/dist/components/VirtualList/context.d.ts +0 -3
  796. package/dist/components/VirtualList/context.js +0 -93
  797. package/dist/components/VirtualList/context.js.map +0 -1
  798. package/dist/components/VirtualList/index.d.ts +0 -5
  799. package/dist/components/VirtualList/index.js +0 -14
  800. package/dist/components/VirtualList/index.js.map +0 -1
  801. package/dist/components/VirtualList/list.d.ts +0 -3
  802. package/dist/components/VirtualList/list.js +0 -102
  803. package/dist/components/VirtualList/list.js.map +0 -1
  804. package/dist/components/VirtualList/types.d.ts +0 -33
  805. package/dist/components/VirtualList/types.js +0 -3
  806. package/dist/components/VirtualList/types.js.map +0 -1
  807. package/dist/components/components.js +0 -60
  808. package/dist/components/components.js.map +0 -1
  809. package/dist/index.js +0 -21
  810. package/dist/index.js.map +0 -1
  811. package/dist/lib/ListMasonry.js +0 -103
  812. package/dist/lib/ListMasonry.js.map +0 -1
  813. package/dist/lib/WebStyleRegistry.js +0 -70
  814. package/dist/lib/WebStyleRegistry.js.map +0 -1
  815. package/dist/lib/hooks/index.js +0 -36
  816. package/dist/lib/hooks/index.js.map +0 -1
  817. package/dist/lib/hooks/useAnimatedStyle.js +0 -20
  818. package/dist/lib/hooks/useAnimatedStyle.js.map +0 -1
  819. package/dist/lib/hooks/useAnimatedVariantStyles.js +0 -17
  820. package/dist/lib/hooks/useAnimatedVariantStyles.js.map +0 -1
  821. package/dist/lib/hooks/useBreakpointMatch.js +0 -124
  822. package/dist/lib/hooks/useBreakpointMatch.js.map +0 -1
  823. package/dist/lib/hooks/useClick.js +0 -36
  824. package/dist/lib/hooks/useClick.js.map +0 -1
  825. package/dist/lib/hooks/useClickOutside.js +0 -27
  826. package/dist/lib/hooks/useClickOutside.js.map +0 -1
  827. package/dist/lib/hooks/useFileInput.js +0 -17
  828. package/dist/lib/hooks/useFileInput.js.map +0 -1
  829. package/dist/lib/hooks/useIsomorphicEffect.js +0 -6
  830. package/dist/lib/hooks/useIsomorphicEffect.js.map +0 -1
  831. package/dist/lib/hooks/useKeydown.js +0 -37
  832. package/dist/lib/hooks/useKeydown.js.map +0 -1
  833. package/dist/lib/hooks/useMediaQuery.js +0 -21
  834. package/dist/lib/hooks/useMediaQuery.js.map +0 -1
  835. package/dist/lib/hooks/usePageExitBlocker.js +0 -41
  836. package/dist/lib/hooks/usePageExitBlocker.js.map +0 -1
  837. package/dist/lib/hooks/usePagination.js +0 -82
  838. package/dist/lib/hooks/usePagination.js.map +0 -1
  839. package/dist/lib/hooks/usePopState.js +0 -24
  840. package/dist/lib/hooks/usePopState.js.map +0 -1
  841. package/dist/lib/hooks/useRefresh.js +0 -115
  842. package/dist/lib/hooks/useRefresh.js.map +0 -1
  843. package/dist/lib/hooks/useScrollEffect.js +0 -27
  844. package/dist/lib/hooks/useScrollEffect.js.map +0 -1
  845. package/dist/lib/hooks/useSearchParams.js +0 -55
  846. package/dist/lib/hooks/useSearchParams.js.map +0 -1
  847. package/dist/lib/hooks/useStaticAnimationStyles.js +0 -24
  848. package/dist/lib/hooks/useStaticAnimationStyles.js.map +0 -1
  849. package/dist/lib/hooks/useStylesFor.js +0 -41
  850. package/dist/lib/hooks/useStylesFor.js.map +0 -1
  851. package/dist/lib/hooks/useWindowFocus.js +0 -31
  852. package/dist/lib/hooks/useWindowFocus.js.map +0 -1
  853. package/dist/lib/hooks/useWindowSize.js +0 -19
  854. package/dist/lib/hooks/useWindowSize.js.map +0 -1
  855. package/dist/lib/index.js +0 -22
  856. package/dist/lib/index.js.map +0 -1
  857. package/dist/lib/tools/index.js +0 -20
  858. package/dist/lib/tools/index.js.map +0 -1
  859. package/dist/lib/tools/localStorage.js +0 -158
  860. package/dist/lib/tools/localStorage.js.map +0 -1
  861. package/dist/lib/tools/mediaQuery.js +0 -34
  862. package/dist/lib/tools/mediaQuery.js.map +0 -1
  863. package/dist/lib/tools/modal.js +0 -62
  864. package/dist/lib/tools/modal.js.map +0 -1
  865. package/dist/lib/utils/cache.js +0 -15
  866. package/dist/lib/utils/cache.js.map +0 -1
  867. package/dist/lib/utils/index.js +0 -21
  868. package/dist/lib/utils/index.js.map +0 -1
  869. package/dist/lib/utils/pollyfils/scroll.js +0 -66
  870. package/dist/lib/utils/pollyfils/scroll.js.map +0 -1
  871. package/dist/lib/utils/stopPropagation.js +0 -19
  872. package/dist/lib/utils/stopPropagation.js.map +0 -1
  873. package/dist/lib/utils/test.js +0 -13
  874. package/dist/lib/utils/test.js.map +0 -1
  875. package/dist/types/index.js +0 -18
  876. package/dist/types/index.js.map +0 -1
  877. package/dist/types/utility.js +0 -3
  878. package/dist/types/utility.js.map +0 -1
  879. package/package.json.bak +0 -65
  880. package/src/components/ActionIcon/index.tsx +0 -93
  881. package/src/components/ActionIcon/styles.ts +0 -8
  882. package/src/components/ActionIcon/types.ts +0 -15
  883. package/src/components/CropPicker/components/CropPickerFooter.tsx +0 -39
  884. package/src/components/DatePicker/components/DayContent.tsx +0 -52
  885. package/src/components/DatePicker/components/Header.tsx +0 -79
  886. package/src/components/DatePicker/components/OuterInput.tsx +0 -17
  887. package/src/components/DatePicker/components/YearContent.tsx +0 -39
  888. package/src/components/DatePicker/components/index.tsx +0 -4
  889. package/src/components/InputBase/index.tsx +0 -138
  890. package/src/components/InputBase/styles.ts +0 -109
  891. package/src/components/InputBase/types.ts +0 -42
  892. package/src/components/InputBase/useInputBasePartialStyles.ts +0 -37
  893. package/src/components/InputBase/utils.ts +0 -84
  894. package/src/components/SegmentedControl/index.tsx +0 -223
  895. package/src/components/SegmentedControl/styles.ts +0 -12
  896. package/src/components/SegmentedControl/types.ts +0 -44
  897. package/src/components/VirtualList/context.tsx +0 -93
  898. package/src/components/VirtualList/index.tsx +0 -11
  899. package/src/components/VirtualList/list.tsx +0 -85
  900. package/src/components/VirtualList/types.ts +0 -38
@@ -0,0 +1,126 @@
1
+ import React, { useState, useId, useCallback } from 'react'
2
+ import { useQuery, type UseQueryOptions, type UseQueryResult } from '@tanstack/react-query'
3
+ import { type ICSS } from '@codeleap/styles'
4
+
5
+ /** Shape that `load` must resolve to in `useAsyncSelect`. */
6
+ export type AsyncSelectLoadResult<TOption> = {
7
+ data: any
8
+ results: TOption[]
9
+ }
10
+
11
+ /** Options for `useAsyncSelect`. */
12
+ export type UseAsyncSelectOptions<
13
+ TOption extends { label: string; value: any },
14
+ TQuery = string
15
+ > = {
16
+ queryKey?: readonly unknown[]
17
+ load: (query: TQuery) => Promise<AsyncSelectLoadResult<TOption>>
18
+ /**
19
+ * Controls when load() is triggered. Defaults to non-empty/non-null check.
20
+ * Pass `() => true` to load on mount with an empty query.
21
+ */
22
+ isSearchValid?: (query: TQuery) => boolean
23
+ renderError?: (error: unknown, style: ICSS) => React.ReactNode
24
+ renderNoResults?: (query: TQuery, style: ICSS) => React.ReactNode
25
+ renderLoading?: (style: ICSS) => React.ReactNode
26
+ queryOptions?: Omit<
27
+ UseQueryOptions<AsyncSelectLoadResult<TOption>, Error>,
28
+ 'queryKey' | 'queryFn' | 'enabled'
29
+ >
30
+ }
31
+
32
+ type SelectCompatibleProps<TOption extends { label: string; value: any }> = {
33
+ options: TOption[]
34
+ renderEmpty: (props: { style: ICSS }) => React.ReactNode
35
+ }
36
+
37
+ type AsyncSelectState<TOption extends { label: string; value: any }, TQuery> = {
38
+ query: (q: TQuery) => void
39
+ searchQuery: TQuery
40
+ data: any
41
+ isLoading: boolean
42
+ error: unknown
43
+ queryResult: UseQueryResult<AsyncSelectLoadResult<TOption>, Error>
44
+ }
45
+
46
+ /**
47
+ * Tuple returned by `useAsyncSelect`.
48
+ * Index 0 contains the props to spread onto a `Select` component;
49
+ * index 1 exposes the raw query state and the underlying `useQuery` result.
50
+ */
51
+ export type UseAsyncSelectReturn<
52
+ TOption extends { label: string; value: any },
53
+ TQuery
54
+ > = [SelectCompatibleProps<TOption>, AsyncSelectState<TOption, TQuery>]
55
+
56
+ /**
57
+ * Wraps TanStack Query to power a search-driven async Select component.
58
+ *
59
+ * Returns a `[selectProps, state]` tuple. Spread the first element onto a
60
+ * `Select` component; use the second to drive the search query and inspect
61
+ * loading / error state.
62
+ *
63
+ * The query is gated by `isSearchValid` (defaults to non-empty/non-null).
64
+ * Pass `isSearchValid: () => true` to fetch on mount with an empty query.
65
+ * Requires a TanStack Query `QueryClientProvider` in the tree.
66
+ */
67
+ export function useAsyncSelect<
68
+ TOption extends { label: string; value: any },
69
+ TQuery = string
70
+ >(
71
+ opts: UseAsyncSelectOptions<TOption, TQuery>
72
+ ): UseAsyncSelectReturn<TOption, TQuery> {
73
+ const {
74
+ load, isSearchValid, renderError, renderNoResults, renderLoading, queryOptions,
75
+ } = opts
76
+
77
+ const hookId = useId()
78
+ const baseKey = opts.queryKey ?? [hookId]
79
+
80
+ const [searchQuery, setSearchQuery] = useState<TQuery>('' as TQuery)
81
+
82
+ const defaultIsValid = (q: TQuery) => q != null && q !== ('' as TQuery)
83
+ const enabled = isSearchValid ? isSearchValid(searchQuery) : defaultIsValid(searchQuery)
84
+
85
+ const queryResult = useQuery({
86
+ queryKey: ['asyncSelect', ...baseKey, searchQuery],
87
+ queryFn: () => load(searchQuery),
88
+ enabled,
89
+ placeholderData: (prev) => prev,
90
+ ...queryOptions,
91
+ })
92
+
93
+ const query = useCallback((q: TQuery) => setSearchQuery(q), [])
94
+
95
+ const renderEmpty = useCallback(
96
+ ({ style }: { style: ICSS }): React.ReactNode => {
97
+ if (queryResult.isLoading || queryResult.isFetching) {
98
+ return renderLoading?.(style) ?? null
99
+ }
100
+ if (queryResult.isError) {
101
+ return renderError?.(queryResult.error, style) ?? null
102
+ }
103
+ return renderNoResults?.(searchQuery, style) ?? null
104
+ },
105
+ [
106
+ queryResult.isLoading, queryResult.isFetching,
107
+ queryResult.isError, queryResult.error,
108
+ renderLoading, renderError, renderNoResults, searchQuery,
109
+ ]
110
+ )
111
+
112
+ return [
113
+ {
114
+ options: (queryResult.data?.results ?? []) as TOption[],
115
+ renderEmpty,
116
+ },
117
+ {
118
+ query,
119
+ searchQuery,
120
+ data: queryResult.data?.data ?? null,
121
+ isLoading: queryResult.isLoading,
122
+ error: queryResult.error,
123
+ queryResult,
124
+ },
125
+ ]
126
+ }
@@ -82,6 +82,17 @@ function useBreakpointListeners() {
82
82
  return breakpointMatches
83
83
  }
84
84
 
85
+ /**
86
+ * Returns the value mapped to the currently active breakpoint.
87
+ *
88
+ * Reads breakpoint definitions from the active `themeStore` theme and attaches
89
+ * `matchMedia` listeners to track viewport changes reactively. The lookup walks
90
+ * up from the current breakpoint until it finds a key present in `values`, so
91
+ * you can omit smaller breakpoints and let them fall back to the next larger one.
92
+ *
93
+ * Must be rendered in a browser context; SSR always resolves to the fallback
94
+ * value (the largest defined key in `values`).
95
+ */
85
96
  export function useBreakpointMatch<T = string>(values: Partial<Record<Breakpoint, T>>): T {
86
97
  const breakpointMatches = useBreakpointListeners()
87
98
 
@@ -5,8 +5,14 @@ type HandlerClickOutside = (clickedOutside: boolean) => void
5
5
 
6
6
  type UseClickOutsideElementReturn = React.MutableRefObject<any>
7
7
 
8
+ /**
9
+ * Attaches a global `click` listener and calls `handler` with `true` when the
10
+ * user clicks outside the returned ref's element, or `false` when they click
11
+ * inside it. Pass additional `elements` refs to treat those nodes as "inside"
12
+ * as well — the handler fires `false` if any of them contains the click target.
13
+ */
8
14
  export function useClickOutsideElement(
9
- handler: HandlerClickOutside,
15
+ handler: HandlerClickOutside,
10
16
  elements: Array<React.MutableRefObject<any>> = null,
11
17
  ): UseClickOutsideElementReturn {
12
18
  const elementRef = useRef(null)
@@ -2,6 +2,14 @@ import { useEffect, useRef } from 'react'
2
2
 
3
3
  const DEFAULT_EVENTS = ['mousedown', 'touchstart']
4
4
 
5
+ /**
6
+ * Calls `handler` when a pointer event fires outside the returned ref's element.
7
+ *
8
+ * Listens for `mousedown` and `touchstart` by default; pass `events` to
9
+ * override. Supply `nodes` to bypass the ref entirely and check a fixed set of
10
+ * elements instead — useful when the trigger lives outside the component tree.
11
+ * Elements with `data-ignore-outside-clicks` are always ignored.
12
+ */
5
13
  export function useClickOutside<T extends HTMLElement = any>(
6
14
  handler: () => void,
7
15
  events?: string[] | null,
@@ -1,6 +1,11 @@
1
1
  import { useRef } from 'react'
2
2
  import { FileInputRef } from '../../components/FileInput/types'
3
3
 
4
+ /**
5
+ * Provides an imperative ref and `openFilePicker` helper for a `FileInput`
6
+ * component. Attach the returned `ref` to `<FileInput ref={ref} />` and call
7
+ * `openFilePicker()` from a button or any other trigger.
8
+ */
4
9
  export const useFileInput = () => {
5
10
  const inputRef = useRef<FileInputRef | null>(null)
6
11
 
@@ -1,3 +1,7 @@
1
1
  import { useEffect, useLayoutEffect } from 'react'
2
2
 
3
+ /**
4
+ * `useLayoutEffect` in the browser; `useEffect` on the server.
5
+ * Avoids the React SSR warning about `useLayoutEffect` in non-browser environments.
6
+ */
3
7
  export const useIsomorphicEffect = typeof document !== 'undefined' ? useLayoutEffect : useEffect
@@ -1,6 +1,7 @@
1
1
  import { TypeGuards } from '@codeleap/types'
2
2
  import { useEffect } from 'react'
3
3
 
4
+ /** Convenience key descriptors available as `useKeydown.keys`. */
4
5
  export const keydownDefaultKeyOptions = {
5
6
  ArrowLeft: 'ArrowLeft',
6
7
  ArrowRight: 'ArrowRight',
@@ -13,6 +14,13 @@ export const keydownDefaultKeyOptions = {
13
14
  },
14
15
  }
15
16
 
17
+ /**
18
+ * Adds a `keydown` listener on `document` for a single key.
19
+ *
20
+ * `expectedKey` can be a shorthand from `useKeydown.keys` (e.g. `'Enter'`) or
21
+ * an explicit `{ key, code }` object. The listener is re-registered whenever
22
+ * `deps` change.
23
+ */
16
24
  export function useKeydown(
17
25
  expectedKey: keyof typeof useKeydown.keys | { key: string; code: string },
18
26
  handler: (event: KeyboardEvent) => void,
@@ -0,0 +1,59 @@
1
+ import { useEffect, useMemo, type RefObject } from 'react'
2
+
3
+ /** Determines which option receives focus when `ListFocusHandle.focus` is called. */
4
+ export type ListFocusStrategy = 'first' | 'last' | 'selected'
5
+
6
+ export interface ListFocusHandle {
7
+ focus(strategy?: ListFocusStrategy): void
8
+ }
9
+
10
+ /**
11
+ * Creates a stable imperative focus handle for a ListBox DOM ref and returns it.
12
+ *
13
+ * The handle queries [role="option"] elements directly. When the chosen item
14
+ * receives DOM focus, react-aria's own useSelectableItem onFocus handler calls
15
+ * manager.setFocusedKey(key), so internal keyboard-navigation state stays in
16
+ * sync without needing access to ListStateContext.
17
+ *
18
+ * Pass the same listBoxRef to <ListBox ref={...}>.
19
+ * Pass externalRef to also expose the handle to a consumer-provided ref.
20
+ */
21
+ export function useListFocus(
22
+ listBoxRef: RefObject<HTMLElement | null>,
23
+ externalRef?: RefObject<ListFocusHandle | null>,
24
+ ): ListFocusHandle {
25
+ const handle = useMemo<ListFocusHandle>(() => ({
26
+ focus(strategy: ListFocusStrategy = 'selected') {
27
+ const list = listBoxRef.current
28
+ if (!list) return
29
+
30
+ const options = Array.from(
31
+ list.querySelectorAll<HTMLElement>('[role="option"]:not([data-disabled])')
32
+ )
33
+ if (!options.length) return
34
+
35
+ let target: HTMLElement | null = null
36
+
37
+ if (strategy === 'last') {
38
+ target = options.at(-1) ?? null
39
+ } else if (strategy === 'selected') {
40
+ target =
41
+ list.querySelector<HTMLElement>('[role="option"][aria-selected="true"]') ??
42
+ options[0] ??
43
+ null
44
+ } else {
45
+ target = options[0] ?? null
46
+ }
47
+
48
+ target?.focus()
49
+ },
50
+ }), [listBoxRef])
51
+
52
+ useEffect(() => {
53
+ if (!externalRef) return
54
+ externalRef.current = handle
55
+ return () => { externalRef.current = null }
56
+ }, [handle, externalRef])
57
+
58
+ return handle
59
+ }
@@ -1,6 +1,13 @@
1
1
  import { useEffect, useRef, useState } from 'react'
2
2
  import { attachMediaListener, getMediaQuery, isMediaQuery } from '../tools'
3
3
 
4
+ /**
5
+ * Subscribes to a CSS media query string and returns whether it currently matches.
6
+ *
7
+ * Falls back to a static check via `isMediaQuery` on SSR or when `matchMedia` is
8
+ * unavailable. The query string may include the `@media screen and ` prefix —
9
+ * it is stripped internally before passing to `window.matchMedia`.
10
+ */
4
11
  export function useMediaQuery(query: string) {
5
12
  const [matches, setMatches] = useState(isMediaQuery(query))
6
13
 
@@ -1,6 +1,16 @@
1
1
  import { globalHistory } from '@reach/router'
2
2
  import { useEffect } from 'react'
3
3
 
4
+ /**
5
+ * Blocks the user from leaving the current page without confirmation.
6
+ *
7
+ * Intercepts both browser tab-close / reload (`beforeunload`) and in-app
8
+ * navigation via `@reach/router`'s `globalHistory`. When a PUSH or POP
9
+ * navigation is detected, a `window.confirm` dialog is shown; `handler` is
10
+ * called with `true` if the user confirmed, `false` if they cancelled.
11
+ *
12
+ * Requires `@reach/router` to be present in the application.
13
+ */
4
14
  export const usePageExitBlocker = (
5
15
  handler: (willLeavePage: boolean) => void,
6
16
  deps: Array<any> = [],
@@ -1,6 +1,7 @@
1
1
  import { useMemo, useUncontrolled } from '@codeleap/hooks'
2
2
  import { range } from '@codeleap/utils'
3
3
 
4
+ /** Parameters accepted by `usePagination`. */
4
5
  export type PaginationParams = {
5
6
  initialPage?: number
6
7
  page?: number
@@ -15,6 +16,19 @@ export type PaginationParams = {
15
16
  abbreviationSymbol?: any
16
17
  }
17
18
 
19
+ /**
20
+ * Manages pagination state and computes the visible page range for a
21
+ * `PaginationButtons` component.
22
+ *
23
+ * Supports controlled (`page` + `onChangePage`) and uncontrolled modes. When
24
+ * `shouldAbbreviate` is true (default) and `total` exceeds
25
+ * `abbreviationMinimumAmount`, the range collapses middle pages into
26
+ * `abbreviationSymbol` entries. Mobile mode reduces the boundary count and
27
+ * forces abbreviation.
28
+ *
29
+ * Arrow buttons at positions `0` and `total + 1` are reserved for the
30
+ * previous/next controls and are not selectable as page numbers.
31
+ */
18
32
  export function usePagination(props: PaginationParams) {
19
33
 
20
34
  const { isMobile } = props
@@ -2,6 +2,17 @@ import { AnyFunction } from '@codeleap/types'
2
2
  import { useUnmount } from '@codeleap/hooks'
3
3
  import { useIsomorphicEffect } from './useIsomorphicEffect'
4
4
 
5
+ /**
6
+ * Conditionally attaches a `popstate` listener while `dependence` is `true`.
7
+ *
8
+ * When `dependence` becomes `true`, pushes the current URL onto the history
9
+ * stack so the browser back button triggers `popstate` rather than navigating
10
+ * away. When `dependence` becomes `false` (or the component unmounts), the
11
+ * listener is removed.
12
+ *
13
+ * Useful for keeping overlays (modals, drawers) dismissable via the browser
14
+ * back button.
15
+ */
5
16
  export const usePopState = (dependence: boolean, handler: AnyFunction) => {
6
17
  useIsomorphicEffect(() => {
7
18
  if (dependence) {
@@ -0,0 +1,42 @@
1
+ import { useEffect, useRef, type RefObject } from 'react'
2
+
3
+ /**
4
+ * Restores outside-click dismissal for a Popover rendered with isNonModal=true.
5
+ *
6
+ * react-aria's usePopover sets isDismissable=!isNonModal, which disables its own
7
+ * useInteractOutside listener. This hook adds an equivalent pointerdown capture
8
+ * listener directly on the document.
9
+ *
10
+ * The trigger element is excluded so its own press handler can handle the toggle.
11
+ * The blur-based close (shouldCloseOnBlur=true in useOverlay) still handles the
12
+ * case where focus is inside the popover and moves elsewhere, so this hook only
13
+ * needs to cover the unfocused-popover scenario.
14
+ */
15
+ export function usePopoverDismiss({
16
+ popoverRef,
17
+ triggerRef,
18
+ isOpen,
19
+ onClose,
20
+ }: {
21
+ popoverRef: RefObject<Element | null>
22
+ triggerRef: RefObject<Element | null>
23
+ isOpen: boolean
24
+ onClose: () => void
25
+ }) {
26
+ const onCloseRef = useRef(onClose)
27
+ useEffect(() => { onCloseRef.current = onClose })
28
+
29
+ useEffect(() => {
30
+ if (!isOpen) return
31
+
32
+ const handle = (e: PointerEvent) => {
33
+ const target = e.target as Node
34
+ if (popoverRef.current?.contains(target)) return
35
+ if (triggerRef.current?.contains(target)) return
36
+ onCloseRef.current()
37
+ }
38
+
39
+ document.addEventListener('pointerdown', handle, { capture: true })
40
+ return () => document.removeEventListener('pointerdown', handle, { capture: true })
41
+ }, [isOpen, popoverRef, triggerRef])
42
+ }
@@ -21,6 +21,15 @@ const scrollDebounce = (func, delay) => {
21
21
  return scrollDebounce
22
22
  }
23
23
 
24
+ /**
25
+ * Implements a pull-to-refresh pattern for web scroll containers.
26
+ *
27
+ * Monitors the window `scroll` event and fires `onRefresh` when the container
28
+ * has been scrolled above `threshold` (percentage) twice in quick succession.
29
+ * After `onRefresh` resolves, the refresh state is reset after 2.5 s. Set
30
+ * `enabled: false` to disable the listener entirely (e.g. while a request is
31
+ * already in flight). Attach `scrollableRef` to the scrollable container element.
32
+ */
24
33
  export const useRefresh = (onRefresh = () => null, options: UseRefreshOptions) => {
25
34
 
26
35
  const {
@@ -1,5 +1,10 @@
1
1
  import { useEffect } from 'react'
2
2
 
3
+ /**
4
+ * Calls `effect` on every window scroll event, passing whether `window.scrollY`
5
+ * has passed `breakpoint` and the current scroll position. The listener is
6
+ * re-registered when `breakpoint` or any `extraDependencies` change.
7
+ */
3
8
  export function useScrollEffect(
4
9
  effect: (passed: boolean, current: number) => any,
5
10
  breakpoint: number,
@@ -1,6 +1,10 @@
1
1
  import { useEffect, useRef, useState } from 'react'
2
2
  import { usePrevious } from '@codeleap/hooks'
3
3
 
4
+ /**
5
+ * Tuple returned by `useSearchParams`:
6
+ * `[params, setParams, reset, rawURLSearchParams]`.
7
+ */
4
8
  export type UseSearchParamsReturn<T> = [
5
9
  T,
6
10
  React.Dispatch<React.SetStateAction<T>>,
@@ -8,6 +12,15 @@ export type UseSearchParamsReturn<T> = [
8
12
  URLSearchParams
9
13
  ]
10
14
 
15
+ /**
16
+ * Syncs a typed record of string params with the URL query string via
17
+ * `window.history.replaceState`. On mount, reads the current URL params and
18
+ * merges them with `initial` defaults (initial values are only applied when the
19
+ * URL param is absent or empty). Call `reset()` to restore `initial`.
20
+ *
21
+ * Not a router integration — changes do not trigger a navigation event, and the
22
+ * hook does not react to external URL changes after mount.
23
+ */
11
24
  export function useSearchParams<
12
25
  T extends Record<string, string> = Record<string, string>
13
26
  >(initial?: T): UseSearchParamsReturn<T> {
@@ -1,6 +1,12 @@
1
1
  import { useRef } from 'react'
2
2
  import { SelectProperties } from '../../types'
3
3
 
4
+ /**
5
+ * Captures a frozen snapshot of the selected `keys` from `obj` on the first
6
+ * render and never updates it. Used by `useAnimatedVariantStyles` to keep the
7
+ * non-animated style values stable across re-renders so Framer Motion does not
8
+ * re-create animation targets unnecessarily.
9
+ */
4
10
  export function useStaticAnimationStyles<T extends Record<string | number | symbol, any>, K extends keyof T>(obj: T, keys: K[]) {
5
11
  const styles = useRef({})
6
12
 
@@ -1,34 +1,45 @@
1
- import { StyleProp, useStyleObserver } from '@codeleap/styles'
1
+ import { ComponentContext, ICSS, StyleProp, useStyleObserver } from '@codeleap/styles'
2
2
  import { useMemo } from 'react'
3
3
  import { WebStyleRegistry } from '../WebStyleRegistry'
4
- import { useIsMounted } from '@codeleap/hooks'
5
-
6
- export const useStylesFor = <T = unknown>(componentName: string, style: StyleProp<T, string>): T => {
4
+ import { useIsMounted, useStableReference } from '@codeleap/hooks'
5
+
6
+ /**
7
+ * Resolves a component's style parts from `WebStyleRegistry` and re-evaluates
8
+ * whenever the `style` prop or `context` changes.
9
+ *
10
+ * Must be called inside a component that has a `WebStyleRegistry` instance
11
+ * available (created once per app via `new WebStyleRegistry()`). Pass the
12
+ * component's registered name as `componentName` — it must match the name used
13
+ * in `WebStyleRegistry.registerComponent`.
14
+ */
15
+ export const useStylesFor = <C extends string>(componentName: string, style: StyleProp<C, string>, context?: ComponentContext): Record<C, ICSS> => {
7
16
  const styleObserver = useStyleObserver(style)
8
17
 
9
- const isMounted = useIsMounted()
18
+ // const isMounted = useIsMounted()
19
+
20
+ const stableContext = useStableReference(context ?? {})
10
21
 
11
22
  const styles = useMemo(() => {
12
- return WebStyleRegistry.current.styleFor(componentName, style)
13
- }, [styleObserver])
23
+ return WebStyleRegistry.current.styleFor(componentName, style, true, stableContext)
24
+ }, [styleObserver, stableContext])
14
25
 
15
- const processedStyles = useMemo(() => {
16
- // this is strange, but necessary to recalculate the pre-set styles from SSR
17
- return Object.entries(styles).reduce((acc, [key, styleValue]) => {
18
- const isServer = typeof window === 'undefined'
19
- const inEnvTransition = isServer ? false : !isMounted
26
+ // const processedStyles = useMemo(() => {
27
+ // // this is strange, but necessary to recalculate the pre-set styles from SSR
28
+ // return Object.entries(styles).reduce((acc, [key, styleValue]) => {
29
+ // const isServer = typeof window === 'undefined'
30
+ // const inEnvTransition = isServer ? false : !isMounted
20
31
 
21
- acc[key] = inEnvTransition ? {
22
- // Despite what it may look like, this is not (just) a joke. The "orphans" property is almost completely useless,
23
- // so we set it just to force the styles to recompute after hydration. Also picked for comedic impact.
24
- orphans: 1,
32
+ // acc[key] = inEnvTransition ? {
33
+ // // Despite what it may look like, this is not (just) a joke. The "orphans" property is almost completely useless,
34
+ // // so we set it just to force the styles to recompute after hydration. Also picked for comedic impact.
35
+ // orphans: 1,
25
36
 
26
- ...styleValue } : styleValue
37
+ // ...styleValue } : styleValue
27
38
 
28
- return acc
29
- }, {} as T)
30
- }, [styles, isMounted])
39
+ // return acc
40
+ // }, {} as Record<C, ICSS>)
41
+ // }, [styles, isMounted])
31
42
 
32
- return processedStyles
43
+ return styles as Record<C, ICSS>
33
44
 
34
45
  }
@@ -0,0 +1,41 @@
1
+ import { useState } from 'react'
2
+
3
+ /**
4
+ * Tracks hover and pressed interaction states for a `Touchable`-like element
5
+ * using pointer events. Uses `setPointerCapture` / `releasePointerCapture` so
6
+ * that `isPressed` stays accurate even when the pointer leaves the element
7
+ * while held down. Both states are forced to `false` when `disabled` is `true`.
8
+ */
9
+ export function useTouchableInteraction(disabled = false) {
10
+ const [isHovering, setIsHovering] = useState(false)
11
+ const [isPressed, setIsPressed] = useState(false)
12
+
13
+ return {
14
+ eventHandlers: {
15
+ onPointerEnter: () => setIsHovering(true),
16
+
17
+ onPointerLeave: () => {
18
+ setIsHovering(false)
19
+ setIsPressed(false)
20
+ },
21
+
22
+ onPointerDown: (e) => {
23
+ setIsPressed(true)
24
+ e.currentTarget.setPointerCapture(e.pointerId)
25
+ },
26
+
27
+ onPointerUp: (e) => {
28
+ setIsPressed(false)
29
+ e.currentTarget.releasePointerCapture(e.pointerId)
30
+ },
31
+
32
+ onPointerCancel: () => {
33
+ setIsPressed(false)
34
+ },
35
+ },
36
+ isHovering: isHovering && !disabled,
37
+ isPressed: isPressed && !disabled,
38
+ }
39
+ }
40
+
41
+ export type TouchableInteractionHandler = ReturnType<typeof useTouchableInteraction>
@@ -6,6 +6,11 @@ type UseWindowFocusOptions = {
6
6
  onBlur?: AnyFunction
7
7
  }
8
8
 
9
+ /**
10
+ * Returns `true` when the browser window has focus, `false` when it is blurred.
11
+ * Calls `options.onFocus` and `options.onBlur` side-effect callbacks as needed.
12
+ * The listeners are re-registered when `deps` change.
13
+ */
9
14
  export const useWindowFocus = (options: UseWindowFocusOptions = {}, deps: Array<any> = []): boolean => {
10
15
  const [focused, setFocused] = useState(true)
11
16
 
@@ -1,11 +1,26 @@
1
- import { useState, useEffect } from 'react'
1
+ import { useDebounceCallback } from '@codeleap/hooks'
2
+ import { useState, useEffect, useCallback } from 'react'
2
3
 
3
- export function useWindowSize() {
4
- const [size, setSize] = useState([])
5
4
 
6
- function handleResize() {
5
+ /**
6
+ * Returns `[innerWidth, innerHeight]` and keeps the value in sync with window
7
+ * resize events. When `live` is `false` (default), resize updates are debounced
8
+ * by 300 ms to avoid flooding renders. Pass `live: true` for immediate updates.
9
+ * SSR returns `[1920, 1080]` as a placeholder.
10
+ */
11
+ export function useWindowSize(live=false) {
12
+ const [size, setSize] = useState(() => {
13
+ if(typeof window === 'undefined') return [1920,1080]
14
+ return [window.innerWidth, window.innerHeight]
15
+ })
16
+
17
+ const handler = useCallback(() => {
7
18
  setSize([window.innerWidth, window.innerHeight])
8
- }
19
+ },[setSize])
20
+
21
+ const debouncedHandleResize = useDebounceCallback(handler, 300)
22
+
23
+ const handleResize = live ? handler : debouncedHandleResize.debounce
9
24
 
10
25
  useEffect(() => {
11
26
  handleResize()
@@ -15,7 +30,7 @@ export function useWindowSize() {
15
30
  return () => {
16
31
  window.removeEventListener('resize', handleResize)
17
32
  }
18
- }, [])
33
+ }, [handleResize])
19
34
 
20
35
  return size
21
36
  }
package/src/lib/index.ts CHANGED
@@ -3,3 +3,4 @@ export * from './tools'
3
3
  export * from './utils'
4
4
  export * from './ListMasonry'
5
5
  export * from './WebStyleRegistry'
6
+ export * from './ThemeVariables'
@@ -1,6 +1,7 @@
1
1
  import { useEffect, useState } from 'react'
2
2
  import { TypeGuards } from '@codeleap/types'
3
3
 
4
+ /** Callback signature for `LocalStorage.listen`. Receives the key, the raw `StorageEvent`, and the parsed new value. */
4
5
  export type LocalStorageHandler<T> = (key: T, event: StorageEvent, value: any) => void
5
6
  export type Key<T> = keyof T
6
7
 
@@ -11,6 +12,17 @@ type UseLocalStorageOptions = {
11
12
  parseValueOnGet?: boolean
12
13
  }
13
14
 
15
+ /**
16
+ * Type-safe wrapper around `window.localStorage`.
17
+ *
18
+ * Instantiate with a key map (`{ tokenKey: 'auth_token', ... }`) so all reads
19
+ * and writes are validated against the map's keys at compile time. Values are
20
+ * automatically JSON-serialised on write and JSON-parsed on read; strings are
21
+ * stored as-is. Returns safe no-ops when called server-side.
22
+ *
23
+ * Use `use()` to get a React state pair that stays in sync with storage across
24
+ * tabs via the `storage` event.
25
+ */
14
26
  export class LocalStorage<T extends Record<string, string>> {
15
27
  public storageKeys: T
16
28