@forgedevstack/bear 1.0.7 → 1.0.9

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 (348) hide show
  1. package/dist/components/ActivityItem/ActivityItem.cjs +1 -1
  2. package/dist/components/ActivityItem/ActivityItem.js +1 -0
  3. package/dist/components/Alert/Alert.cjs +1 -1
  4. package/dist/components/Alert/Alert.const.cjs +1 -1
  5. package/dist/components/Alert/Alert.const.d.ts +4 -0
  6. package/dist/components/Alert/Alert.const.js +10 -15
  7. package/dist/components/Alert/Alert.js +43 -38
  8. package/dist/components/AppBar/AppBar.cjs +1 -1
  9. package/dist/components/AppBar/AppBar.js +19 -14
  10. package/dist/components/BackTop/BackTop.cjs +1 -0
  11. package/dist/components/BackTop/BackTop.const.cjs +1 -0
  12. package/dist/components/BackTop/BackTop.const.d.ts +34 -0
  13. package/dist/components/BackTop/BackTop.const.js +29 -0
  14. package/dist/components/BackTop/BackTop.d.ts +21 -0
  15. package/dist/components/BackTop/BackTop.js +87 -0
  16. package/dist/components/BackTop/BackTop.types.d.ts +28 -0
  17. package/dist/components/BackTop/index.d.ts +3 -0
  18. package/dist/components/Badge/Badge.cjs +1 -1
  19. package/dist/components/Badge/Badge.constants.d.ts +4 -4
  20. package/dist/components/Badge/Badge.js +15 -14
  21. package/dist/components/Badge/Badge.types.d.ts +3 -3
  22. package/dist/components/BearLogo/EmberLogo.cjs +1 -1
  23. package/dist/components/BearLogo/EmberLogo.js +3 -2
  24. package/dist/components/BottomNavigation/BottomNavigation.cjs +1 -1
  25. package/dist/components/BottomNavigation/BottomNavigation.js +3 -2
  26. package/dist/components/BottomSheet/BottomSheet.cjs +1 -1
  27. package/dist/components/BottomSheet/BottomSheet.js +39 -38
  28. package/dist/components/Button/Button.cjs +1 -1
  29. package/dist/components/Button/Button.constants.cjs +38 -48
  30. package/dist/components/Button/Button.constants.d.ts +22 -3
  31. package/dist/components/Button/Button.constants.js +51 -50
  32. package/dist/components/Button/Button.d.ts +14 -7
  33. package/dist/components/Button/Button.js +123 -45
  34. package/dist/components/Button/Button.types.d.ts +22 -4
  35. package/dist/components/Calendar/Calendar.cjs +1 -1
  36. package/dist/components/Calendar/Calendar.js +3 -2
  37. package/dist/components/Card/Card.const.d.ts +2 -2
  38. package/dist/components/Card/Card.types.d.ts +2 -2
  39. package/dist/components/Carousel/Carousel.cjs +1 -1
  40. package/dist/components/Carousel/Carousel.const.cjs +1 -0
  41. package/dist/components/Carousel/Carousel.const.d.ts +12 -0
  42. package/dist/components/Carousel/Carousel.const.js +9 -0
  43. package/dist/components/Carousel/Carousel.d.ts +14 -3
  44. package/dist/components/Carousel/Carousel.js +222 -75
  45. package/dist/components/Carousel/Carousel.types.d.ts +32 -2
  46. package/dist/components/Carousel/index.d.ts +1 -1
  47. package/dist/components/Chat/Chat.cjs +1 -0
  48. package/dist/components/Chat/Chat.const.cjs +1 -0
  49. package/dist/components/Chat/Chat.const.d.ts +26 -0
  50. package/dist/components/Chat/Chat.const.js +29 -0
  51. package/dist/components/Chat/Chat.d.ts +21 -0
  52. package/dist/components/Chat/Chat.js +179 -0
  53. package/dist/components/Chat/Chat.types.d.ts +55 -0
  54. package/dist/components/Chat/index.d.ts +2 -0
  55. package/dist/components/Chip/Chip.cjs +1 -1
  56. package/dist/components/Chip/Chip.js +3 -2
  57. package/dist/components/CodeEditor/CodeEditor.cjs +5 -0
  58. package/dist/components/CodeEditor/CodeEditor.const.cjs +1 -0
  59. package/dist/components/CodeEditor/CodeEditor.const.d.ts +21 -0
  60. package/dist/components/CodeEditor/CodeEditor.const.js +119 -0
  61. package/dist/components/CodeEditor/CodeEditor.d.ts +22 -0
  62. package/dist/components/CodeEditor/CodeEditor.js +250 -0
  63. package/dist/components/CodeEditor/CodeEditor.types.d.ts +80 -0
  64. package/dist/components/CodeEditor/CodeEditor.utils.cjs +1 -0
  65. package/dist/components/CodeEditor/CodeEditor.utils.d.ts +6 -0
  66. package/dist/components/CodeEditor/CodeEditor.utils.js +75 -0
  67. package/dist/components/CodeEditor/index.d.ts +2 -0
  68. package/dist/components/Columns/Columns.cjs +1 -1
  69. package/dist/components/Columns/Columns.js +9 -8
  70. package/dist/components/Confetti/Confetti.cjs +1 -0
  71. package/dist/components/Confetti/Confetti.const.cjs +1 -0
  72. package/dist/components/Confetti/Confetti.const.d.ts +16 -0
  73. package/dist/components/Confetti/Confetti.const.js +36 -0
  74. package/dist/components/Confetti/Confetti.d.ts +23 -0
  75. package/dist/components/Confetti/Confetti.js +94 -0
  76. package/dist/components/Confetti/Confetti.types.d.ts +50 -0
  77. package/dist/components/Confetti/index.d.ts +4 -0
  78. package/dist/components/Confetti/useConfetti.cjs +1 -0
  79. package/dist/components/Confetti/useConfetti.d.ts +13 -0
  80. package/dist/components/Confetti/useConfetti.js +12 -0
  81. package/dist/components/CountdownTimer/CountdownTimer.cjs +1 -0
  82. package/dist/components/CountdownTimer/CountdownTimer.const.cjs +1 -0
  83. package/dist/components/CountdownTimer/CountdownTimer.const.d.ts +27 -0
  84. package/dist/components/CountdownTimer/CountdownTimer.const.js +35 -0
  85. package/dist/components/CountdownTimer/CountdownTimer.d.ts +7 -0
  86. package/dist/components/CountdownTimer/CountdownTimer.js +115 -0
  87. package/dist/components/CountdownTimer/CountdownTimer.types.d.ts +56 -0
  88. package/dist/components/CountdownTimer/index.d.ts +2 -0
  89. package/dist/components/Cropper/Cropper.cjs +1 -0
  90. package/dist/components/Cropper/Cropper.const.cjs +1 -0
  91. package/dist/components/Cropper/Cropper.const.d.ts +31 -0
  92. package/dist/components/Cropper/Cropper.const.js +33 -0
  93. package/dist/components/Cropper/Cropper.d.ts +21 -0
  94. package/dist/components/Cropper/Cropper.js +362 -0
  95. package/dist/components/Cropper/Cropper.types.d.ts +72 -0
  96. package/dist/components/Cropper/index.d.ts +2 -0
  97. package/dist/components/DataTable/DataTable.cjs +1 -1
  98. package/dist/components/DataTable/DataTable.js +5 -4
  99. package/dist/components/DatePicker/DatePicker.cjs +1 -1
  100. package/dist/components/DatePicker/DatePicker.js +3 -2
  101. package/dist/components/DiffViewer/DiffViewer.cjs +1 -0
  102. package/dist/components/DiffViewer/DiffViewer.const.cjs +1 -0
  103. package/dist/components/DiffViewer/DiffViewer.const.d.ts +18 -0
  104. package/dist/components/DiffViewer/DiffViewer.const.js +21 -0
  105. package/dist/components/DiffViewer/DiffViewer.d.ts +18 -0
  106. package/dist/components/DiffViewer/DiffViewer.js +127 -0
  107. package/dist/components/DiffViewer/DiffViewer.types.d.ts +40 -0
  108. package/dist/components/DiffViewer/DiffViewer.utils.cjs +3 -0
  109. package/dist/components/DiffViewer/DiffViewer.utils.d.ts +9 -0
  110. package/dist/components/DiffViewer/DiffViewer.utils.js +39 -0
  111. package/dist/components/DiffViewer/index.d.ts +2 -0
  112. package/dist/components/Divider/Divider.cjs +1 -1
  113. package/dist/components/Divider/Divider.js +15 -14
  114. package/dist/components/Dock/Dock.cjs +1 -0
  115. package/dist/components/Dock/Dock.const.cjs +1 -0
  116. package/dist/components/Dock/Dock.const.d.ts +25 -0
  117. package/dist/components/Dock/Dock.const.js +22 -0
  118. package/dist/components/Dock/Dock.d.ts +7 -0
  119. package/dist/components/Dock/Dock.js +144 -0
  120. package/dist/components/Dock/Dock.types.d.ts +42 -0
  121. package/dist/components/Dock/index.d.ts +2 -0
  122. package/dist/components/Drawer/Drawer.cjs +1 -1
  123. package/dist/components/Drawer/Drawer.js +35 -35
  124. package/dist/components/EmptyState/EmptyState.cjs +1 -1
  125. package/dist/components/EmptyState/EmptyState.js +7 -6
  126. package/dist/components/FloatingChat/FloatingChat.cjs +1 -0
  127. package/dist/components/FloatingChat/FloatingChat.const.cjs +1 -0
  128. package/dist/components/FloatingChat/FloatingChat.const.d.ts +12 -0
  129. package/dist/components/FloatingChat/FloatingChat.const.js +15 -0
  130. package/dist/components/FloatingChat/FloatingChat.d.ts +19 -0
  131. package/dist/components/FloatingChat/FloatingChat.js +144 -0
  132. package/dist/components/FloatingChat/FloatingChat.types.d.ts +44 -0
  133. package/dist/components/FloatingChat/index.d.ts +2 -0
  134. package/dist/components/GradientText/GradientText.cjs +1 -0
  135. package/dist/components/GradientText/GradientText.const.cjs +1 -0
  136. package/dist/components/GradientText/GradientText.const.d.ts +15 -0
  137. package/dist/components/GradientText/GradientText.const.js +36 -0
  138. package/dist/components/GradientText/GradientText.d.ts +7 -0
  139. package/dist/components/GradientText/GradientText.js +52 -0
  140. package/dist/components/GradientText/GradientText.types.d.ts +27 -0
  141. package/dist/components/GradientText/index.d.ts +2 -0
  142. package/dist/components/Highlight/Highlight.cjs +1 -1
  143. package/dist/components/Highlight/Highlight.const.cjs +1 -0
  144. package/dist/components/Highlight/Highlight.const.d.ts +8 -0
  145. package/dist/components/Highlight/Highlight.const.js +15 -0
  146. package/dist/components/Highlight/Highlight.d.ts +4 -0
  147. package/dist/components/Highlight/Highlight.js +32 -24
  148. package/dist/components/Highlight/Highlight.types.d.ts +9 -1
  149. package/dist/components/Highlight/index.d.ts +1 -1
  150. package/dist/components/Icon/Icon.cjs +1 -1
  151. package/dist/components/Icon/Icon.js +17 -16
  152. package/dist/components/Icon/index.cjs +1 -1
  153. package/dist/components/Icon/index.js +12 -11
  154. package/dist/components/JsonViewer/JsonViewer.cjs +1 -0
  155. package/dist/components/JsonViewer/JsonViewer.const.cjs +1 -0
  156. package/dist/components/JsonViewer/JsonViewer.const.d.ts +4 -0
  157. package/dist/components/JsonViewer/JsonViewer.const.js +24 -0
  158. package/dist/components/JsonViewer/JsonViewer.d.ts +17 -0
  159. package/dist/components/JsonViewer/JsonViewer.js +195 -0
  160. package/dist/components/JsonViewer/JsonViewer.types.d.ts +54 -0
  161. package/dist/components/JsonViewer/index.d.ts +2 -0
  162. package/dist/components/Kanban/Kanban.cjs +1 -1
  163. package/dist/components/Kanban/Kanban.js +18 -17
  164. package/dist/components/Kbd/Kbd.cjs +1 -1
  165. package/dist/components/Kbd/Kbd.js +17 -16
  166. package/dist/components/Map/Map.cjs +1 -0
  167. package/dist/components/Map/Map.const.cjs +1 -0
  168. package/dist/components/Map/Map.const.d.ts +20 -0
  169. package/dist/components/Map/Map.const.js +26 -0
  170. package/dist/components/Map/Map.d.ts +20 -0
  171. package/dist/components/Map/Map.js +259 -0
  172. package/dist/components/Map/Map.types.d.ts +81 -0
  173. package/dist/components/Map/index.d.ts +2 -0
  174. package/dist/components/Marquee/Marquee.cjs +1 -0
  175. package/dist/components/Marquee/Marquee.const.cjs +1 -0
  176. package/dist/components/Marquee/Marquee.const.d.ts +11 -0
  177. package/dist/components/Marquee/Marquee.const.js +12 -0
  178. package/dist/components/Marquee/Marquee.d.ts +7 -0
  179. package/dist/components/Marquee/Marquee.js +106 -0
  180. package/dist/components/Marquee/Marquee.types.d.ts +32 -0
  181. package/dist/components/Marquee/index.d.ts +2 -0
  182. package/dist/components/Masonry/Masonry.cjs +1 -0
  183. package/dist/components/Masonry/Masonry.const.cjs +1 -0
  184. package/dist/components/Masonry/Masonry.const.d.ts +9 -0
  185. package/dist/components/Masonry/Masonry.const.js +9 -0
  186. package/dist/components/Masonry/Masonry.d.ts +7 -0
  187. package/dist/components/Masonry/Masonry.js +51 -0
  188. package/dist/components/Masonry/Masonry.types.d.ts +21 -0
  189. package/dist/components/Masonry/index.d.ts +2 -0
  190. package/dist/components/NavigableSelect/NavigableSelect.cjs +1 -0
  191. package/dist/components/NavigableSelect/NavigableSelect.const.cjs +1 -0
  192. package/dist/components/NavigableSelect/NavigableSelect.const.d.ts +23 -0
  193. package/dist/components/NavigableSelect/NavigableSelect.const.js +33 -0
  194. package/dist/components/NavigableSelect/NavigableSelect.d.ts +7 -0
  195. package/dist/components/NavigableSelect/NavigableSelect.js +361 -0
  196. package/dist/components/NavigableSelect/NavigableSelect.types.d.ts +56 -0
  197. package/dist/components/NavigableSelect/index.d.ts +2 -0
  198. package/dist/components/Progress/Progress.cjs +1 -1
  199. package/dist/components/Progress/Progress.js +3 -2
  200. package/dist/components/QRCode/QRCode.cjs +1 -0
  201. package/dist/components/QRCode/QRCode.const.cjs +1 -0
  202. package/dist/components/QRCode/QRCode.const.d.ts +21 -0
  203. package/dist/components/QRCode/QRCode.const.js +11 -0
  204. package/dist/components/QRCode/QRCode.d.ts +29 -0
  205. package/dist/components/QRCode/QRCode.js +68 -0
  206. package/dist/components/QRCode/QRCode.types.d.ts +32 -0
  207. package/dist/components/QRCode/QRCode.utils.cjs +1 -0
  208. package/dist/components/QRCode/QRCode.utils.d.ts +12 -0
  209. package/dist/components/QRCode/QRCode.utils.js +74 -0
  210. package/dist/components/QRCode/index.d.ts +3 -0
  211. package/dist/components/RichEditor/components/ToolbarButton/ToolbarButton.cjs +1 -1
  212. package/dist/components/RichEditor/components/ToolbarButton/ToolbarButton.js +3 -2
  213. package/dist/components/ScrollArea/ScrollArea.cjs +1 -1
  214. package/dist/components/ScrollArea/ScrollArea.js +3 -2
  215. package/dist/components/Sidebar/Sidebar.cjs +1 -1
  216. package/dist/components/Sidebar/Sidebar.js +13 -12
  217. package/dist/components/Spinner/Spinner.cjs +1 -1
  218. package/dist/components/Spinner/Spinner.js +3 -2
  219. package/dist/components/Spinner/Spinner.types.d.ts +2 -2
  220. package/dist/components/Spotlight/Spotlight.cjs +1 -0
  221. package/dist/components/Spotlight/Spotlight.const.cjs +1 -0
  222. package/dist/components/Spotlight/Spotlight.const.d.ts +18 -0
  223. package/dist/components/Spotlight/Spotlight.const.js +9 -0
  224. package/dist/components/Spotlight/Spotlight.d.ts +7 -0
  225. package/dist/components/Spotlight/Spotlight.js +220 -0
  226. package/dist/components/Spotlight/Spotlight.types.d.ts +51 -0
  227. package/dist/components/Spotlight/index.d.ts +2 -0
  228. package/dist/components/StatCard/StatCard.cjs +1 -1
  229. package/dist/components/StatCard/StatCard.js +9 -8
  230. package/dist/components/Statistic/Statistic.cjs +1 -1
  231. package/dist/components/Statistic/Statistic.js +7 -6
  232. package/dist/components/Switch/Switch.cjs +1 -1
  233. package/dist/components/Switch/Switch.js +11 -10
  234. package/dist/components/Terminal/Terminal.cjs +1 -0
  235. package/dist/components/Terminal/Terminal.const.cjs +1 -0
  236. package/dist/components/Terminal/Terminal.const.d.ts +32 -0
  237. package/dist/components/Terminal/Terminal.const.js +42 -0
  238. package/dist/components/Terminal/Terminal.d.ts +27 -0
  239. package/dist/components/Terminal/Terminal.js +155 -0
  240. package/dist/components/Terminal/Terminal.types.d.ts +49 -0
  241. package/dist/components/Terminal/index.d.ts +2 -0
  242. package/dist/components/TimePicker/components/TimePickerColumnsDropdown/TimePickerColumnsDropdown.cjs +1 -1
  243. package/dist/components/TimePicker/components/TimePickerColumnsDropdown/TimePickerColumnsDropdown.js +16 -15
  244. package/dist/components/TimePicker/helpers/ClockFaceSvg.cjs +1 -1
  245. package/dist/components/TimePicker/helpers/ClockFaceSvg.js +13 -12
  246. package/dist/components/Tour/Tour.cjs +1 -0
  247. package/dist/components/Tour/Tour.const.cjs +1 -0
  248. package/dist/components/Tour/Tour.const.d.ts +25 -0
  249. package/dist/components/Tour/Tour.const.js +38 -0
  250. package/dist/components/Tour/Tour.d.ts +17 -0
  251. package/dist/components/Tour/Tour.js +179 -0
  252. package/dist/components/Tour/Tour.types.d.ts +80 -0
  253. package/dist/components/Tour/index.d.ts +4 -0
  254. package/dist/components/Tour/useTour.cjs +1 -0
  255. package/dist/components/Tour/useTour.d.ts +14 -0
  256. package/dist/components/Tour/useTour.js +27 -0
  257. package/dist/components/Transition/Transition.cjs +1 -0
  258. package/dist/components/Transition/Transition.const.cjs +1 -0
  259. package/dist/components/Transition/Transition.const.d.ts +15 -0
  260. package/dist/components/Transition/Transition.const.js +73 -0
  261. package/dist/components/Transition/Transition.d.ts +37 -0
  262. package/dist/components/Transition/Transition.js +107 -0
  263. package/dist/components/Transition/Transition.types.d.ts +69 -0
  264. package/dist/components/Transition/index.d.ts +2 -0
  265. package/dist/components/Typewriter/Typewriter.cjs +1 -0
  266. package/dist/components/Typewriter/Typewriter.const.cjs +1 -0
  267. package/dist/components/Typewriter/Typewriter.const.d.ts +22 -0
  268. package/dist/components/Typewriter/Typewriter.const.js +11 -0
  269. package/dist/components/Typewriter/Typewriter.d.ts +7 -0
  270. package/dist/components/Typewriter/Typewriter.js +88 -0
  271. package/dist/components/Typewriter/Typewriter.types.d.ts +32 -0
  272. package/dist/components/Typewriter/index.d.ts +2 -0
  273. package/dist/components/Typography/Typography.cjs +1 -1
  274. package/dist/components/Typography/Typography.d.ts +5 -1
  275. package/dist/components/Typography/Typography.js +93 -57
  276. package/dist/components/Typography/Typography.types.d.ts +29 -2
  277. package/dist/components/Watermark/Watermark.cjs +1 -0
  278. package/dist/components/Watermark/Watermark.const.cjs +1 -0
  279. package/dist/components/Watermark/Watermark.const.d.ts +30 -0
  280. package/dist/components/Watermark/Watermark.const.js +18 -0
  281. package/dist/components/Watermark/Watermark.d.ts +7 -0
  282. package/dist/components/Watermark/Watermark.js +96 -0
  283. package/dist/components/Watermark/Watermark.types.d.ts +35 -0
  284. package/dist/components/Watermark/index.d.ts +2 -0
  285. package/dist/components/index.cjs +1 -1
  286. package/dist/components/index.d.ts +46 -2
  287. package/dist/components/index.js +288 -237
  288. package/dist/context/BearProvider.cjs +1 -1
  289. package/dist/context/BearProvider.d.ts +110 -5
  290. package/dist/context/BearProvider.js +198 -53
  291. package/dist/context/defaultTheme.cjs +1 -1
  292. package/dist/context/defaultTheme.js +11 -11
  293. package/dist/hooks/index.cjs +1 -1
  294. package/dist/hooks/index.d.ts +18 -0
  295. package/dist/hooks/index.js +61 -39
  296. package/dist/hooks/useAnimate.cjs +1 -0
  297. package/dist/hooks/useAnimate.d.ts +61 -0
  298. package/dist/hooks/useAnimate.js +125 -0
  299. package/dist/hooks/useBearComponent/index.d.ts +2 -0
  300. package/dist/hooks/useBearComponent/useBearComponent.cjs +1 -0
  301. package/dist/hooks/useBearComponent/useBearComponent.d.ts +71 -0
  302. package/dist/hooks/useBearComponent/useBearComponent.js +54 -0
  303. package/dist/hooks/useBearComponent/useBearComponent.types.d.ts +40 -0
  304. package/dist/hooks/useIdle/index.d.ts +2 -0
  305. package/dist/hooks/useIdle/useIdle.cjs +1 -0
  306. package/dist/hooks/useIdle/useIdle.d.ts +22 -0
  307. package/dist/hooks/useIdle/useIdle.js +66 -0
  308. package/dist/hooks/useIdle/useIdle.types.d.ts +29 -0
  309. package/dist/hooks/useLongPress/index.d.ts +2 -0
  310. package/dist/hooks/useLongPress/useLongPress.cjs +1 -0
  311. package/dist/hooks/useLongPress/useLongPress.d.ts +17 -0
  312. package/dist/hooks/useLongPress/useLongPress.js +44 -0
  313. package/dist/hooks/useLongPress/useLongPress.types.d.ts +26 -0
  314. package/dist/hooks/useOnline/index.d.ts +2 -0
  315. package/dist/hooks/useOnline/useOnline.cjs +1 -0
  316. package/dist/hooks/useOnline/useOnline.d.ts +16 -0
  317. package/dist/hooks/useOnline/useOnline.js +25 -0
  318. package/dist/hooks/useOnline/useOnline.types.d.ts +15 -0
  319. package/dist/hooks/usePageVisibility/index.d.ts +2 -0
  320. package/dist/hooks/usePageVisibility/usePageVisibility.cjs +1 -0
  321. package/dist/hooks/usePageVisibility/usePageVisibility.d.ts +19 -0
  322. package/dist/hooks/usePageVisibility/usePageVisibility.js +26 -0
  323. package/dist/hooks/usePageVisibility/usePageVisibility.types.d.ts +15 -0
  324. package/dist/hooks/useResponsive.cjs +1 -0
  325. package/dist/hooks/useResponsive.d.ts +35 -0
  326. package/dist/hooks/useResponsive.js +74 -0
  327. package/dist/hooks/useSpotlight/index.d.ts +2 -0
  328. package/dist/hooks/useSpotlight/useSpotlight.cjs +1 -0
  329. package/dist/hooks/useSpotlight/useSpotlight.d.ts +24 -0
  330. package/dist/hooks/useSpotlight/useSpotlight.js +49 -0
  331. package/dist/hooks/useSpotlight/useSpotlight.types.d.ts +23 -0
  332. package/dist/hooks/useWebSocket/index.d.ts +2 -0
  333. package/dist/hooks/useWebSocket/useWebSocket.cjs +1 -0
  334. package/dist/hooks/useWebSocket/useWebSocket.d.ts +22 -0
  335. package/dist/hooks/useWebSocket/useWebSocket.js +75 -0
  336. package/dist/hooks/useWebSocket/useWebSocket.types.d.ts +44 -0
  337. package/dist/index.cjs +1 -1
  338. package/dist/index.js +363 -288
  339. package/dist/styles.css +1 -1
  340. package/dist/types/component.types.d.ts +125 -42
  341. package/dist/types/theme.types.d.ts +82 -0
  342. package/dist/utils/createSlots.cjs +1 -0
  343. package/dist/utils/createSlots.d.ts +70 -0
  344. package/dist/utils/createSlots.js +65 -0
  345. package/dist/utils/index.cjs +1 -1
  346. package/dist/utils/index.d.ts +2 -0
  347. package/dist/utils/index.js +4 -2
  348. package/package.json +1 -1
@@ -0,0 +1,61 @@
1
+ /**
2
+ * Animation preset names
3
+ */
4
+ export type AnimationPreset = 'fadeIn' | 'fadeOut' | 'slideInLeft' | 'slideInRight' | 'slideInUp' | 'slideInDown' | 'slideOutLeft' | 'slideOutRight' | 'slideOutUp' | 'slideOutDown' | 'scaleIn' | 'scaleOut' | 'rotateIn' | 'rotateOut' | 'flipX' | 'flipY' | 'bounceIn' | 'bounceOut' | 'pulse' | 'shake' | 'swing' | 'rubberBand' | 'tada' | 'wobble' | 'jello';
5
+ /**
6
+ * Keyframe definition
7
+ */
8
+ export interface AnimationKeyframe {
9
+ [property: string]: string | number;
10
+ }
11
+ export interface UseAnimateOptions {
12
+ /** Duration in ms */
13
+ duration?: number;
14
+ /** Delay in ms */
15
+ delay?: number;
16
+ /** Easing function */
17
+ easing?: string;
18
+ /** Number of iterations (Infinity for infinite) */
19
+ iterations?: number;
20
+ /** Fill mode */
21
+ fill?: FillMode;
22
+ /** Direction */
23
+ direction?: PlaybackDirection;
24
+ /** Auto-play on mount */
25
+ autoPlay?: boolean;
26
+ }
27
+ export interface UseAnimateReturn {
28
+ /** Ref to attach to the element */
29
+ ref: React.RefObject<HTMLElement | null>;
30
+ /** Play the animation */
31
+ play: (keyframes?: AnimationKeyframe[] | AnimationPreset, options?: UseAnimateOptions) => Animation | undefined;
32
+ /** Pause the animation */
33
+ pause: () => void;
34
+ /** Cancel the animation */
35
+ cancel: () => void;
36
+ /** Reverse the animation */
37
+ reverse: () => void;
38
+ /** Whether animation is playing */
39
+ isPlaying: boolean;
40
+ /** Whether animation is finished */
41
+ isFinished: boolean;
42
+ }
43
+ /**
44
+ * useAnimate - Programmatic animation hook using Web Animations API
45
+ *
46
+ * @description
47
+ * Provides a ref-based animation system with built-in presets
48
+ * and full control over play, pause, cancel, and reverse.
49
+ *
50
+ * @example
51
+ * ```tsx
52
+ * const { ref, play, isPlaying } = useAnimate({ duration: 500 });
53
+ *
54
+ * return (
55
+ * <div ref={ref} onClick={() => play('bounceIn')}>
56
+ * Animate me!
57
+ * </div>
58
+ * );
59
+ * ```
60
+ */
61
+ export declare const useAnimate: (defaultOptions?: UseAnimateOptions) => UseAnimateReturn;
@@ -0,0 +1,125 @@
1
+ import { useRef as y, useState as g, useCallback as n, useEffect as x } from "react";
2
+ const f = {
3
+ fadeIn: [{ opacity: 0 }, { opacity: 1 }],
4
+ fadeOut: [{ opacity: 1 }, { opacity: 0 }],
5
+ slideInLeft: [{ transform: "translateX(-100%)", opacity: 0 }, { transform: "translateX(0)", opacity: 1 }],
6
+ slideInRight: [{ transform: "translateX(100%)", opacity: 0 }, { transform: "translateX(0)", opacity: 1 }],
7
+ slideInUp: [{ transform: "translateY(100%)", opacity: 0 }, { transform: "translateY(0)", opacity: 1 }],
8
+ slideInDown: [{ transform: "translateY(-100%)", opacity: 0 }, { transform: "translateY(0)", opacity: 1 }],
9
+ slideOutLeft: [{ transform: "translateX(0)", opacity: 1 }, { transform: "translateX(-100%)", opacity: 0 }],
10
+ slideOutRight: [{ transform: "translateX(0)", opacity: 1 }, { transform: "translateX(100%)", opacity: 0 }],
11
+ slideOutUp: [{ transform: "translateY(0)", opacity: 1 }, { transform: "translateY(-100%)", opacity: 0 }],
12
+ slideOutDown: [{ transform: "translateY(0)", opacity: 1 }, { transform: "translateY(100%)", opacity: 0 }],
13
+ scaleIn: [{ transform: "scale(0)", opacity: 0 }, { transform: "scale(1)", opacity: 1 }],
14
+ scaleOut: [{ transform: "scale(1)", opacity: 1 }, { transform: "scale(0)", opacity: 0 }],
15
+ rotateIn: [{ transform: "rotate(-180deg) scale(0)", opacity: 0 }, { transform: "rotate(0) scale(1)", opacity: 1 }],
16
+ rotateOut: [{ transform: "rotate(0) scale(1)", opacity: 1 }, { transform: "rotate(180deg) scale(0)", opacity: 0 }],
17
+ flipX: [{ transform: "perspective(400px) rotateX(90deg)", opacity: 0 }, { transform: "perspective(400px) rotateX(0)", opacity: 1 }],
18
+ flipY: [{ transform: "perspective(400px) rotateY(90deg)", opacity: 0 }, { transform: "perspective(400px) rotateY(0)", opacity: 1 }],
19
+ bounceIn: [
20
+ { transform: "scale(0.3)", opacity: 0 },
21
+ { transform: "scale(1.05)" },
22
+ { transform: "scale(0.9)" },
23
+ { transform: "scale(1)", opacity: 1 }
24
+ ],
25
+ bounceOut: [
26
+ { transform: "scale(1)", opacity: 1 },
27
+ { transform: "scale(0.9)" },
28
+ { transform: "scale(1.05)" },
29
+ { transform: "scale(0.3)", opacity: 0 }
30
+ ],
31
+ pulse: [
32
+ { transform: "scale(1)" },
33
+ { transform: "scale(1.05)" },
34
+ { transform: "scale(1)" }
35
+ ],
36
+ shake: [
37
+ { transform: "translateX(0)" },
38
+ { transform: "translateX(-10px)" },
39
+ { transform: "translateX(10px)" },
40
+ { transform: "translateX(-10px)" },
41
+ { transform: "translateX(10px)" },
42
+ { transform: "translateX(0)" }
43
+ ],
44
+ swing: [
45
+ { transform: "rotate(0deg)" },
46
+ { transform: "rotate(15deg)" },
47
+ { transform: "rotate(-10deg)" },
48
+ { transform: "rotate(5deg)" },
49
+ { transform: "rotate(-5deg)" },
50
+ { transform: "rotate(0deg)" }
51
+ ],
52
+ rubberBand: [
53
+ { transform: "scale(1)" },
54
+ { transform: "scaleX(1.25) scaleY(0.75)" },
55
+ { transform: "scaleX(0.75) scaleY(1.25)" },
56
+ { transform: "scaleX(1.15) scaleY(0.85)" },
57
+ { transform: "scaleX(0.95) scaleY(1.05)" },
58
+ { transform: "scale(1)" }
59
+ ],
60
+ tada: [
61
+ { transform: "scale(1) rotate(0deg)" },
62
+ { transform: "scale(0.9) rotate(-3deg)" },
63
+ { transform: "scale(1.1) rotate(3deg)" },
64
+ { transform: "scale(1.1) rotate(-3deg)" },
65
+ { transform: "scale(1.1) rotate(3deg)" },
66
+ { transform: "scale(1) rotate(0deg)" }
67
+ ],
68
+ wobble: [
69
+ { transform: "translateX(0) rotate(0deg)" },
70
+ { transform: "translateX(-25%) rotate(-5deg)" },
71
+ { transform: "translateX(20%) rotate(3deg)" },
72
+ { transform: "translateX(-15%) rotate(-3deg)" },
73
+ { transform: "translateX(10%) rotate(2deg)" },
74
+ { transform: "translateX(0) rotate(0deg)" }
75
+ ],
76
+ jello: [
77
+ { transform: "skewX(0deg) skewY(0deg)" },
78
+ { transform: "skewX(-12.5deg) skewY(-12.5deg)" },
79
+ { transform: "skewX(6.25deg) skewY(6.25deg)" },
80
+ { transform: "skewX(-3.125deg) skewY(-3.125deg)" },
81
+ { transform: "skewX(1.5625deg) skewY(1.5625deg)" },
82
+ { transform: "skewX(0deg) skewY(0deg)" }
83
+ ]
84
+ }, v = (c = {}) => {
85
+ const i = y(null), r = y(null), [u, e] = g(!1), [X, l] = g(!1), m = n(
86
+ (t, I) => {
87
+ var d;
88
+ const p = i.current;
89
+ if (!p) return;
90
+ (d = r.current) == null || d.cancel();
91
+ const a = { ...c, ...I };
92
+ let s;
93
+ typeof t == "string" ? s = f[t] ?? f.fadeIn : Array.isArray(t) ? s = t : s = f.fadeIn;
94
+ const o = p.animate(s, {
95
+ duration: a.duration ?? 300,
96
+ delay: a.delay ?? 0,
97
+ easing: a.easing ?? "ease",
98
+ iterations: a.iterations ?? 1,
99
+ fill: a.fill ?? "forwards",
100
+ direction: a.direction ?? "normal"
101
+ });
102
+ return r.current = o, e(!0), l(!1), o.onfinish = () => {
103
+ e(!1), l(!0);
104
+ }, o.oncancel = () => {
105
+ e(!1);
106
+ }, o;
107
+ },
108
+ [c]
109
+ ), Y = n(() => {
110
+ var t;
111
+ (t = r.current) == null || t.pause(), e(!1);
112
+ }, []), w = n(() => {
113
+ var t;
114
+ (t = r.current) == null || t.cancel(), e(!1), l(!1);
115
+ }, []), k = n(() => {
116
+ var t;
117
+ (t = r.current) == null || t.reverse();
118
+ }, []);
119
+ return x(() => {
120
+ c.autoPlay && m();
121
+ }, []), { ref: i, play: m, pause: Y, cancel: w, reverse: k, isPlaying: u, isFinished: X };
122
+ };
123
+ export {
124
+ v as useAnimate
125
+ };
@@ -0,0 +1,2 @@
1
+ export { useBearComponent, useBC, BearComponentProvider, useBearComponentContext } from './useBearComponent';
2
+ export type { UseBearComponentReturn, BearComponentContextValue } from './useBearComponent.types';
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const B=require("react/jsx-runtime"),e=require("react"),p=e.createContext(null),k=({children:b,components:C={},variants:u={}})=>{const[t,a]=e.useState(C),[c,i]=e.useState(u),o=e.useCallback((n,g)=>{a(l=>({...l,[n]:{...l[n]||{},...g}}))},[]),s=e.useCallback((n,g)=>{i(l=>({...l,[n]:{...l[n]||{},...g}}))},[]),r=e.useCallback(n=>t[n],[t]),m=e.useCallback(n=>c[n],[c]),S=e.useCallback(()=>{a({}),i({})},[]),v=e.useMemo(()=>({components:t,variants:c,registerComponent:o,registerVariant:s,getComponentStyles:r,getVariantConfig:m,clearOverrides:S}),[t,c,o,s,r,m,S]);return B.jsx(p.Provider,{value:v,children:b})},y=()=>e.useContext(p),d=(b,C)=>{const u=e.useContext(p),t=u==null?void 0:u.components[b],a=e.useCallback((o="root")=>{const s=t,r=C,m=s==null?void 0:s[o];return{...(r==null?void 0:r[o])||{},...m||{}}},[t,C]),c=e.useCallback((o="root",s)=>({...a(o),...s||{}}),[a]),i=e.useMemo(()=>t!==void 0&&Object.keys(t).length>0,[t]);return{getStyles:a,mergeStyles:c,hasOverrides:i}},x=d;exports.BearComponentProvider=k;exports.useBC=x;exports.useBearComponent=d;exports.useBearComponentContext=y;
@@ -0,0 +1,71 @@
1
+ import { ReactNode } from 'react';
2
+ import { BearComponentOverrides, ButtonVariantsConfig } from '../../types/component.types';
3
+ import { UseBearComponentReturn, BearComponentContextValue } from './useBearComponent.types';
4
+ interface BearComponentProviderProps {
5
+ children: ReactNode;
6
+ /** Initial component overrides */
7
+ components?: BearComponentOverrides;
8
+ /** Initial variant configurations */
9
+ variants?: {
10
+ Button?: ButtonVariantsConfig;
11
+ };
12
+ }
13
+ /**
14
+ * Provider for global component customization
15
+ *
16
+ * @example
17
+ * ```tsx
18
+ * <BearComponentProvider
19
+ * components={{
20
+ * Button: {
21
+ * root: { borderRadius: '9999px' }
22
+ * }
23
+ * }}
24
+ * variants={{
25
+ * Button: {
26
+ * primary: {
27
+ * bg: '#ec4899',
28
+ * bgHover: '#db2777',
29
+ * text: '#ffffff'
30
+ * }
31
+ * }
32
+ * }}
33
+ * >
34
+ * <App />
35
+ * </BearComponentProvider>
36
+ * ```
37
+ */
38
+ export declare const BearComponentProvider: ({ children, components: initialComponents, variants: initialVariants, }: BearComponentProviderProps) => import("react/jsx-runtime").JSX.Element;
39
+ /**
40
+ * Access the component customization context
41
+ */
42
+ export declare const useBearComponentContext: () => BearComponentContextValue | null;
43
+ /**
44
+ * Hook to get and apply component style overrides
45
+ *
46
+ * @param componentKey - The component key (e.g., 'Button', 'Input')
47
+ * @param defaultStyles - Optional default styles to merge with
48
+ *
49
+ * @example
50
+ * ```tsx
51
+ * // Inside a component
52
+ * const { getStyles, mergeStyles, hasOverrides } = useBearComponent('Button');
53
+ *
54
+ * return (
55
+ * <button style={mergeStyles('root', { padding: '8px' })}>
56
+ * <span style={getStyles('text')}>Click me</span>
57
+ * </button>
58
+ * );
59
+ * ```
60
+ */
61
+ export declare const useBearComponent: <K extends keyof BearComponentOverrides>(componentKey: K, defaultStyles?: BearComponentOverrides[K]) => UseBearComponentReturn;
62
+ /**
63
+ * Shorthand alias for useBearComponent
64
+ *
65
+ * @example
66
+ * ```tsx
67
+ * const { getStyles } = useBC('Button');
68
+ * ```
69
+ */
70
+ export declare const useBC: <K extends keyof BearComponentOverrides>(componentKey: K, defaultStyles?: BearComponentOverrides[K]) => UseBearComponentReturn;
71
+ export {};
@@ -0,0 +1,54 @@
1
+ import { jsx as b } from "react/jsx-runtime";
2
+ import { createContext as O, useState as d, useCallback as r, useMemo as y, useContext as x } from "react";
3
+ const v = O(null), h = ({
4
+ children: p,
5
+ components: m = {},
6
+ variants: u = {}
7
+ }) => {
8
+ const [t, c] = d(m), [a, l] = d(u), o = r((e, S) => {
9
+ c((i) => ({
10
+ ...i,
11
+ [e]: {
12
+ ...i[e] || {},
13
+ ...S
14
+ }
15
+ }));
16
+ }, []), n = r((e, S) => {
17
+ l((i) => ({
18
+ ...i,
19
+ [e]: {
20
+ ...i[e] || {},
21
+ ...S
22
+ }
23
+ }));
24
+ }, []), s = r((e) => t[e], [t]), C = r((e) => a[e], [a]), g = r(() => {
25
+ c({}), l({});
26
+ }, []), B = y(() => ({
27
+ components: t,
28
+ variants: a,
29
+ registerComponent: o,
30
+ registerVariant: n,
31
+ getComponentStyles: s,
32
+ getVariantConfig: C,
33
+ clearOverrides: g
34
+ }), [t, a, o, n, s, C, g]);
35
+ return /* @__PURE__ */ b(v.Provider, { value: B, children: p });
36
+ }, j = () => x(v), P = (p, m) => {
37
+ const u = x(v), t = u == null ? void 0 : u.components[p], c = r((o = "root") => {
38
+ const n = t, s = m, C = n == null ? void 0 : n[o];
39
+ return {
40
+ ...(s == null ? void 0 : s[o]) || {},
41
+ ...C || {}
42
+ };
43
+ }, [t, m]), a = r((o = "root", n) => ({
44
+ ...c(o),
45
+ ...n || {}
46
+ }), [c]), l = y(() => t !== void 0 && Object.keys(t).length > 0, [t]);
47
+ return { getStyles: c, mergeStyles: a, hasOverrides: l };
48
+ }, k = P;
49
+ export {
50
+ h as BearComponentProvider,
51
+ k as useBC,
52
+ P as useBearComponent,
53
+ j as useBearComponentContext
54
+ };
@@ -0,0 +1,40 @@
1
+ import { CSSProperties } from 'react';
2
+ import { BearComponentOverrides, ButtonVariantsConfig } from '../../types/component.types';
3
+ /**
4
+ * Component part style definition
5
+ */
6
+ export interface ComponentPartStyles {
7
+ [part: string]: CSSProperties;
8
+ }
9
+ /**
10
+ * Return type for useBearComponent hook
11
+ */
12
+ export interface UseBearComponentReturn {
13
+ /** Get styles for a specific component part */
14
+ getStyles: (part?: string) => CSSProperties;
15
+ /** Merge with additional styles */
16
+ mergeStyles: (part: string | undefined, additionalStyles?: CSSProperties) => CSSProperties;
17
+ /** Check if component has overrides */
18
+ hasOverrides: boolean;
19
+ }
20
+ /**
21
+ * Context value for component customization
22
+ */
23
+ export interface BearComponentContextValue {
24
+ /** Component style overrides */
25
+ components: BearComponentOverrides;
26
+ /** Variant configurations */
27
+ variants: {
28
+ Button?: ButtonVariantsConfig;
29
+ };
30
+ /** Register component overrides */
31
+ registerComponent: <K extends keyof BearComponentOverrides>(componentKey: K, styles: BearComponentOverrides[K]) => void;
32
+ /** Register variant overrides */
33
+ registerVariant: <K extends 'Button'>(componentKey: K, variantConfig: ButtonVariantsConfig) => void;
34
+ /** Get component styles */
35
+ getComponentStyles: <K extends keyof BearComponentOverrides>(componentKey: K) => BearComponentOverrides[K] | undefined;
36
+ /** Get variant config */
37
+ getVariantConfig: <K extends 'Button'>(componentKey: K) => ButtonVariantsConfig | undefined;
38
+ /** Clear all overrides */
39
+ clearOverrides: () => void;
40
+ }
@@ -0,0 +1,2 @@
1
+ export { useIdle } from './useIdle';
2
+ export type { UseIdleOptions, UseIdleReturn } from './useIdle.types';
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react"),y=["mousemove","mousedown","keydown","touchstart","scroll","wheel"],A=6e4;function L(S={}){const{timeout:a=A,events:f=y,initialState:k=!1,onIdle:d,onActive:m}=S,[w,v]=e.useState(k),[D,I]=e.useState(Date.now()),[h,T]=e.useState(a),[c,b]=e.useState(!1),o=e.useRef(null),r=e.useRef(null),l=e.useRef(d),i=e.useRef(m);e.useEffect(()=>{l.current=d,i.current=m},[d,m]);const u=e.useCallback(()=>{o.current&&(clearTimeout(o.current),o.current=null),r.current&&(clearInterval(r.current),r.current=null)},[]),t=e.useCallback(()=>{if(c)return;u();const s=Date.now();T(a),r.current=setInterval(()=>{const n=Date.now()-s;T(Math.max(0,a-n))},1e3),o.current=setTimeout(()=>{var n;v(!0),(n=l.current)==null||n.call(l),r.current&&clearInterval(r.current)},a)},[a,c,u]),E=e.useCallback(()=>{var n;if(c)return;const s=w;v(!1),I(Date.now()),t(),s&&((n=i.current)==null||n.call(i))},[c,w,t]),C=e.useCallback(()=>{v(!1),I(Date.now()),t()},[t]),R=e.useCallback(()=>{b(!0),u()},[u]),p=e.useCallback(()=>{b(!1),t()},[t]);return e.useEffect(()=>{if(!(typeof window>"u"))return t(),f.forEach(s=>{window.addEventListener(s,E,{passive:!0})}),()=>{u(),f.forEach(s=>{window.removeEventListener(s,E)})}},[f,E,t,u]),{isIdle:w,remaining:h,lastActive:D,reset:C,pause:R,resume:p}}exports.useIdle=L;
@@ -0,0 +1,22 @@
1
+ import { UseIdleOptions, UseIdleReturn } from './useIdle.types';
2
+ /**
3
+ * useIdle - Detect user inactivity
4
+ *
5
+ * @example
6
+ * ```tsx
7
+ * const { isIdle, remaining, reset } = useIdle({
8
+ * timeout: 30000, // 30 seconds
9
+ * onIdle: () => console.log('User is idle'),
10
+ * onActive: () => console.log('User is active'),
11
+ * });
12
+ *
13
+ * return (
14
+ * <div>
15
+ * {isIdle ? 'User is idle' : `Active (${remaining}ms until idle)`}
16
+ * <button onClick={reset}>Reset</button>
17
+ * </div>
18
+ * );
19
+ * ```
20
+ */
21
+ export declare function useIdle(options?: UseIdleOptions): UseIdleReturn;
22
+ export default useIdle;
@@ -0,0 +1,66 @@
1
+ import { useState as f, useRef as d, useEffect as A, useCallback as c } from "react";
2
+ const F = [
3
+ "mousemove",
4
+ "mousedown",
5
+ "keydown",
6
+ "touchstart",
7
+ "scroll",
8
+ "wheel"
9
+ ], M = 6e4;
10
+ function R(L = {}) {
11
+ const {
12
+ timeout: o = M,
13
+ events: m = F,
14
+ initialState: y = !1,
15
+ onIdle: w,
16
+ onActive: v
17
+ } = L, [E, I] = f(y), [S, D] = f(Date.now()), [U, h] = f(o), [u, p] = f(!1), a = d(null), r = d(null), i = d(w), l = d(v);
18
+ A(() => {
19
+ i.current = w, l.current = v;
20
+ }, [w, v]);
21
+ const s = c(() => {
22
+ a.current && (clearTimeout(a.current), a.current = null), r.current && (clearInterval(r.current), r.current = null);
23
+ }, []), e = c(() => {
24
+ if (u) return;
25
+ s();
26
+ const t = Date.now();
27
+ h(o), r.current = setInterval(() => {
28
+ const n = Date.now() - t;
29
+ h(Math.max(0, o - n));
30
+ }, 1e3), a.current = setTimeout(() => {
31
+ var n;
32
+ I(!0), (n = i.current) == null || n.call(i), r.current && clearInterval(r.current);
33
+ }, o);
34
+ }, [o, u, s]), T = c(() => {
35
+ var n;
36
+ if (u) return;
37
+ const t = E;
38
+ I(!1), D(Date.now()), e(), t && ((n = l.current) == null || n.call(l));
39
+ }, [u, E, e]), g = c(() => {
40
+ I(!1), D(Date.now()), e();
41
+ }, [e]), k = c(() => {
42
+ p(!0), s();
43
+ }, [s]), x = c(() => {
44
+ p(!1), e();
45
+ }, [e]);
46
+ return A(() => {
47
+ if (!(typeof window > "u"))
48
+ return e(), m.forEach((t) => {
49
+ window.addEventListener(t, T, { passive: !0 });
50
+ }), () => {
51
+ s(), m.forEach((t) => {
52
+ window.removeEventListener(t, T);
53
+ });
54
+ };
55
+ }, [m, T, e, s]), {
56
+ isIdle: E,
57
+ remaining: U,
58
+ lastActive: S,
59
+ reset: g,
60
+ pause: k,
61
+ resume: x
62
+ };
63
+ }
64
+ export {
65
+ R as useIdle
66
+ };
@@ -0,0 +1,29 @@
1
+ /**
2
+ * useIdle hook types
3
+ */
4
+ export interface UseIdleOptions {
5
+ /** Timeout in milliseconds before user is considered idle (default: 60000 = 1 min) */
6
+ timeout?: number;
7
+ /** Events to listen for as activity (default: mouse, keyboard, touch, scroll) */
8
+ events?: (keyof WindowEventMap)[];
9
+ /** Initial idle state */
10
+ initialState?: boolean;
11
+ /** Callback when user becomes idle */
12
+ onIdle?: () => void;
13
+ /** Callback when user becomes active */
14
+ onActive?: () => void;
15
+ }
16
+ export interface UseIdleReturn {
17
+ /** Whether the user is currently idle */
18
+ isIdle: boolean;
19
+ /** Time remaining until idle (ms) */
20
+ remaining: number;
21
+ /** Last activity timestamp */
22
+ lastActive: number;
23
+ /** Reset the idle timer */
24
+ reset: () => void;
25
+ /** Pause idle detection */
26
+ pause: () => void;
27
+ /** Resume idle detection */
28
+ resume: () => void;
29
+ }
@@ -0,0 +1,2 @@
1
+ export { useLongPress } from './useLongPress';
2
+ export type { UseLongPressOptions, UseLongPressReturn } from './useLongPress.types';
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react"),p=400;function D(d={}){const{threshold:R=p,onLongPress:s,onClick:i,onStart:u,onFinish:c,onCancel:n,filterEvents:b,disabled:C=!1}=d,l=t.useRef(null),k=t.useRef(!1),r=t.useRef(!1),E=t.useRef(null),o=t.useCallback(()=>{l.current&&(clearTimeout(l.current),l.current=null)},[]),a=t.useCallback(e=>{C||b&&!b(e)||(r.current=!0,k.current=!1,E.current=e,u==null||u(e),l.current=setTimeout(()=>{k.current=!0,s==null||s(e)},R))},[C,b,u,s,R]),T=t.useCallback(e=>{r.current&&(o(),r.current=!1,n==null||n(e))},[o,n]),f=t.useCallback(e=>{r.current&&(o(),r.current=!1,!k.current&&i&&i(e),c==null||c(e))},[o,i,c]),L=t.useCallback(e=>{e.button===0&&a(e)},[a]),g=t.useCallback(e=>{f(e)},[f]),m=t.useCallback(e=>{T(e)},[T]),M=t.useCallback(e=>{a(e)},[a]),h=t.useCallback(e=>{f(e)},[f]);return{onMouseDown:L,onMouseUp:g,onMouseLeave:m,onTouchStart:M,onTouchEnd:h}}exports.useLongPress=D;
@@ -0,0 +1,17 @@
1
+ import { UseLongPressOptions, UseLongPressReturn } from './useLongPress.types';
2
+ /**
3
+ * useLongPress - Detect long press gestures
4
+ *
5
+ * @example
6
+ * ```tsx
7
+ * const longPressProps = useLongPress({
8
+ * threshold: 500,
9
+ * onLongPress: () => console.log('Long pressed!'),
10
+ * onClick: () => console.log('Clicked!'),
11
+ * });
12
+ *
13
+ * return <button {...longPressProps}>Hold me</button>;
14
+ * ```
15
+ */
16
+ export declare function useLongPress(options?: UseLongPressOptions): UseLongPressReturn;
17
+ export default useLongPress;
@@ -0,0 +1,44 @@
1
+ import { useRef as a, useCallback as t } from "react";
2
+ const H = 400;
3
+ function g(L = {}) {
4
+ const {
5
+ threshold: E = H,
6
+ onLongPress: n,
7
+ onClick: R,
8
+ onStart: c,
9
+ onFinish: s,
10
+ onCancel: u,
11
+ filterEvents: T,
12
+ disabled: d = !1
13
+ } = L, o = a(null), m = a(!1), e = a(!1), b = a(null), f = t(() => {
14
+ o.current && (clearTimeout(o.current), o.current = null);
15
+ }, []), l = t((r) => {
16
+ d || T && !T(r) || (e.current = !0, m.current = !1, b.current = r, c == null || c(r), o.current = setTimeout(() => {
17
+ m.current = !0, n == null || n(r);
18
+ }, E));
19
+ }, [d, T, c, n, E]), p = t((r) => {
20
+ e.current && (f(), e.current = !1, u == null || u(r));
21
+ }, [f, u]), i = t((r) => {
22
+ e.current && (f(), e.current = !1, !m.current && R && R(r), s == null || s(r));
23
+ }, [f, R, s]), h = t((r) => {
24
+ r.button === 0 && l(r);
25
+ }, [l]), D = t((r) => {
26
+ i(r);
27
+ }, [i]), M = t((r) => {
28
+ p(r);
29
+ }, [p]), k = t((r) => {
30
+ l(r);
31
+ }, [l]), A = t((r) => {
32
+ i(r);
33
+ }, [i]);
34
+ return {
35
+ onMouseDown: h,
36
+ onMouseUp: D,
37
+ onMouseLeave: M,
38
+ onTouchStart: k,
39
+ onTouchEnd: A
40
+ };
41
+ }
42
+ export {
43
+ g as useLongPress
44
+ };
@@ -0,0 +1,26 @@
1
+ import { MouseEvent, TouchEvent } from 'react';
2
+ export interface UseLongPressOptions {
3
+ /** Duration in ms to trigger long press (default: 400) */
4
+ threshold?: number;
5
+ /** Callback for long press */
6
+ onLongPress?: (event: MouseEvent | TouchEvent) => void;
7
+ /** Callback for regular click (if released before threshold) */
8
+ onClick?: (event: MouseEvent | TouchEvent) => void;
9
+ /** Callback when press starts */
10
+ onStart?: (event: MouseEvent | TouchEvent) => void;
11
+ /** Callback when press ends (regardless of long press) */
12
+ onFinish?: (event: MouseEvent | TouchEvent) => void;
13
+ /** Callback when press is cancelled (e.g., mouse leaves) */
14
+ onCancel?: (event: MouseEvent | TouchEvent) => void;
15
+ /** Filter function to determine if event should trigger */
16
+ filterEvents?: (event: MouseEvent | TouchEvent) => boolean;
17
+ /** Disable the long press */
18
+ disabled?: boolean;
19
+ }
20
+ export interface UseLongPressReturn {
21
+ onMouseDown: (event: MouseEvent) => void;
22
+ onMouseUp: (event: MouseEvent) => void;
23
+ onMouseLeave: (event: MouseEvent) => void;
24
+ onTouchStart: (event: TouchEvent) => void;
25
+ onTouchEnd: (event: TouchEvent) => void;
26
+ }
@@ -0,0 +1,2 @@
1
+ export { useOnline } from './useOnline';
2
+ export type { UseOnlineOptions, UseOnlineReturn } from './useOnline.types';
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react");function w(a={}){const{onOnline:o,onOffline:r}=a,[f,c]=e.useState(()=>typeof navigator<"u"?navigator.onLine:!0),[d,l]=e.useState(null),t=e.useRef(o),i=e.useRef(r);e.useEffect(()=>{t.current=o,i.current=r},[o,r]);const s=e.useCallback(()=>{var n;c(!0),l(Date.now()),(n=t.current)==null||n.call(t)},[]),u=e.useCallback(()=>{var n;c(!1),l(Date.now()),(n=i.current)==null||n.call(i)},[]);return e.useEffect(()=>{if(!(typeof window>"u"))return window.addEventListener("online",s),window.addEventListener("offline",u),()=>{window.removeEventListener("online",s),window.removeEventListener("offline",u)}},[s,u]),{isOnline:f,since:d}}exports.useOnline=w;
@@ -0,0 +1,16 @@
1
+ import { UseOnlineOptions, UseOnlineReturn } from './useOnline.types';
2
+ /**
3
+ * useOnline - Detect online/offline network status
4
+ *
5
+ * @example
6
+ * ```tsx
7
+ * const { isOnline, since } = useOnline({
8
+ * onOnline: () => console.log('Back online!'),
9
+ * onOffline: () => console.log('Gone offline!'),
10
+ * });
11
+ *
12
+ * return <div>{isOnline ? '🟢 Online' : '🔴 Offline'}</div>;
13
+ * ```
14
+ */
15
+ export declare function useOnline(options?: UseOnlineOptions): UseOnlineReturn;
16
+ export default useOnline;
@@ -0,0 +1,25 @@
1
+ import { useState as l, useRef as d, useEffect as f, useCallback as a } from "react";
2
+ function O(w = {}) {
3
+ const { onOnline: i, onOffline: o } = w, [v, u] = l(
4
+ () => typeof navigator < "u" ? navigator.onLine : !0
5
+ ), [E, c] = l(null), e = d(i), t = d(o);
6
+ f(() => {
7
+ e.current = i, t.current = o;
8
+ }, [i, o]);
9
+ const r = a(() => {
10
+ var n;
11
+ u(!0), c(Date.now()), (n = e.current) == null || n.call(e);
12
+ }, []), s = a(() => {
13
+ var n;
14
+ u(!1), c(Date.now()), (n = t.current) == null || n.call(t);
15
+ }, []);
16
+ return f(() => {
17
+ if (!(typeof window > "u"))
18
+ return window.addEventListener("online", r), window.addEventListener("offline", s), () => {
19
+ window.removeEventListener("online", r), window.removeEventListener("offline", s);
20
+ };
21
+ }, [r, s]), { isOnline: v, since: E };
22
+ }
23
+ export {
24
+ O as useOnline
25
+ };
@@ -0,0 +1,15 @@
1
+ /**
2
+ * useOnline hook types
3
+ */
4
+ export interface UseOnlineOptions {
5
+ /** Callback when going online */
6
+ onOnline?: () => void;
7
+ /** Callback when going offline */
8
+ onOffline?: () => void;
9
+ }
10
+ export interface UseOnlineReturn {
11
+ /** Whether the browser is currently online */
12
+ isOnline: boolean;
13
+ /** Time since last status change (ms) */
14
+ since: number | null;
15
+ }
@@ -0,0 +1,2 @@
1
+ export { usePageVisibility } from './usePageVisibility';
2
+ export type { UsePageVisibilityOptions, UsePageVisibilityReturn } from './usePageVisibility.types';
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react");function b(a={}){const{onVisible:n,onHidden:s}=a,[r,d]=e.useState(()=>typeof document<"u"?document.visibilityState:"visible"),i=e.useRef(n),t=e.useRef(s);e.useEffect(()=>{i.current=n,t.current=s},[n,s]);const u=e.useCallback(()=>{var o,l;const c=document.visibilityState;d(c),c==="visible"?(o=i.current)==null||o.call(i):c==="hidden"&&((l=t.current)==null||l.call(t))},[]);return e.useEffect(()=>{if(!(typeof document>"u"))return document.addEventListener("visibilitychange",u),()=>{document.removeEventListener("visibilitychange",u)}},[u]),{isVisible:r==="visible",visibilityState:r}}exports.usePageVisibility=b;