@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
@@ -1,18 +1,79 @@
1
1
  import { ReactNode } from 'react';
2
- import { BearTheme, BearThemeOverride } from '../types';
2
+ import { BearTheme, BearThemeOverride, CustomVariant, CustomVariantsMap } from '../types';
3
+ import { BearComponentOverrides, ButtonVariantsConfig } from '../types/component.types';
4
+ import { CustomTypography, CustomTypographyMap } from '../components/Typography/Typography.types';
3
5
  interface BearContextValue {
4
6
  theme: BearTheme;
5
7
  mode: 'light' | 'dark';
6
8
  setMode: (mode: 'light' | 'dark') => void;
7
9
  toggleMode: () => void;
8
10
  updateTheme: (overrides: BearThemeOverride) => void;
11
+ /** Component style overrides */
12
+ components: BearComponentOverrides;
13
+ /** Variant configurations */
14
+ variants: {
15
+ Button?: ButtonVariantsConfig;
16
+ };
17
+ /** Custom variants map */
18
+ customVariants: CustomVariantsMap;
19
+ /** Check if a variant exists (built-in or custom) */
20
+ hasVariant: (name: string) => boolean;
21
+ /** Get variant colors */
22
+ getVariant: (name: string) => CustomVariant | undefined;
23
+ /** Register a new custom variant at runtime */
24
+ addVariant: (name: string, config: CustomVariant) => void;
25
+ /** Custom typography variants */
26
+ customTypography: CustomTypographyMap;
27
+ /** Check if typography variant exists */
28
+ hasTypography: (name: string) => boolean;
29
+ /** Get typography config */
30
+ getTypography: (name: string) => CustomTypography | undefined;
31
+ /** Add custom typography at runtime */
32
+ addTypography: (name: string, config: CustomTypography) => void;
33
+ /** Register component overrides */
34
+ registerComponent: <K extends keyof BearComponentOverrides>(componentKey: K, styles: BearComponentOverrides[K]) => void;
35
+ /** Register variant overrides */
36
+ registerVariant: <K extends 'Button'>(componentKey: K, variantConfig: ButtonVariantsConfig) => void;
9
37
  }
38
+ /** Bear context - use useBear() hook instead of consuming directly */
39
+ export declare const BearContext: import('react').Context<BearContextValue | null>;
10
40
  interface BearProviderProps {
11
41
  children: ReactNode;
12
42
  /** Initial theme mode */
13
43
  defaultMode?: 'light' | 'dark';
14
44
  /** Theme overrides applied on top of default theme */
15
45
  theme?: BearThemeOverride;
46
+ /** Global component style overrides */
47
+ components?: BearComponentOverrides;
48
+ /** Variant color configurations for built-in variants */
49
+ variants?: {
50
+ Button?: ButtonVariantsConfig;
51
+ };
52
+ /**
53
+ * Custom variants - add your own color variants!
54
+ * @example
55
+ * ```tsx
56
+ * <BearProvider customVariants={{
57
+ * redBrand: { bg: '#dc2626', bgHover: '#b91c1c', text: '#ffffff' },
58
+ * oceanBlue: { bg: '#0ea5e9', bgHover: '#0284c7', text: '#ffffff' },
59
+ * }}>
60
+ * ```
61
+ * Then use: `<Button variant="redBrand">Click me</Button>`
62
+ */
63
+ customVariants?: CustomVariantsMap;
64
+ /**
65
+ * Custom typography variants - add your own text styles!
66
+ * @example
67
+ * ```tsx
68
+ * <BearProvider customTypography={{
69
+ * b250: { fontSize: '25px', fontWeight: 'bold', lineHeight: '1.2' },
70
+ * display1: { fontSize: '4rem', fontWeight: 800, letterSpacing: '-0.025em' },
71
+ * label: { fontSize: '12px', fontWeight: 'medium', textTransform: 'uppercase' },
72
+ * }}>
73
+ * ```
74
+ * Then use: `<Typography variant="b250">Custom text</Typography>`
75
+ */
76
+ customTypography?: CustomTypographyMap;
16
77
  /** Persist theme preference to localStorage */
17
78
  persistPreference?: boolean;
18
79
  /** localStorage key for persisting preference */
@@ -27,20 +88,42 @@ interface BearProviderProps {
27
88
  *
28
89
  * function App() {
29
90
  * return (
30
- * <BearProvider defaultMode="dark">
31
- * <YourApp />
91
+ * <BearProvider
92
+ * defaultMode="dark"
93
+ * // Simple: just pass a color string!
94
+ * theme={{
95
+ * colors: {
96
+ * primary: '#3b82f6', // or 'blue', 'red', '#hex'
97
+ * }
98
+ * }}
99
+ * // Or full control with color scales:
100
+ * // theme={{
101
+ * // colors: {
102
+ * // primary: { 500: '#ec4899', 600: '#db2777', ... }
103
+ * // }
104
+ * // }}
105
+ * customVariants={{
106
+ * redBrand: { bg: '#dc2626', bgHover: '#b91c1c', text: '#fff' },
107
+ * oceanBlue: { bg: '#0ea5e9', bgHover: '#0284c7', text: '#fff' },
108
+ * }}
109
+ * >
110
+ * <Button variant="redBrand">Red Brand Button</Button>
111
+ * <Button variant="primary">Uses theme primary</Button>
32
112
  * </BearProvider>
33
113
  * );
34
114
  * }
35
115
  * ```
36
116
  */
37
- export declare const BearProvider: ({ children, defaultMode, theme: themeOverrides, persistPreference, storageKey, }: BearProviderProps) => import("react/jsx-runtime").JSX.Element;
117
+ export declare const BearProvider: ({ children, defaultMode, theme: themeOverrides, components: initialComponents, variants: initialVariants, customVariants: initialCustomVariants, customTypography: initialCustomTypography, persistPreference, storageKey, }: BearProviderProps) => import("react/jsx-runtime").JSX.Element;
38
118
  /**
39
119
  * Hook to access the Bear theme context
40
120
  *
41
121
  * @example
42
122
  * ```tsx
43
- * const { theme, mode, toggleMode } = useBear();
123
+ * const { theme, mode, toggleMode, addVariant } = useBear();
124
+ *
125
+ * // Add a variant at runtime
126
+ * addVariant('myBrand', { bg: '#ff6b6b', bgHover: '#ee5a5a', text: '#fff' });
44
127
  * ```
45
128
  */
46
129
  export declare const useBear: () => BearContextValue;
@@ -61,4 +144,26 @@ export declare const useBearMode: () => {
61
144
  setMode: (mode: "light" | "dark") => void;
62
145
  toggleMode: () => void;
63
146
  };
147
+ /**
148
+ * Hook to work with custom variants
149
+ *
150
+ * @example
151
+ * ```tsx
152
+ * const { addVariant, hasVariant, getVariant } = useBearVariants();
153
+ *
154
+ * // Add a new variant dynamically
155
+ * addVariant('hotPink', { bg: '#ec4899', bgHover: '#db2777', text: '#fff' });
156
+ *
157
+ * // Check if variant exists
158
+ * if (hasVariant('hotPink')) {
159
+ * // use it!
160
+ * }
161
+ * ```
162
+ */
163
+ export declare const useBearVariants: () => {
164
+ customVariants: CustomVariantsMap;
165
+ hasVariant: (name: string) => boolean;
166
+ getVariant: (name: string) => CustomVariant | undefined;
167
+ addVariant: (name: string, config: CustomVariant) => void;
168
+ };
64
169
  export {};
@@ -1,71 +1,216 @@
1
- import { jsx as B } from "react/jsx-runtime";
2
- import { createContext as T, useContext as p, useState as f, useMemo as h, useCallback as u, useEffect as E } from "react";
3
- import { defaultDarkTheme as g, defaultLightTheme as M } from "./defaultTheme.js";
4
- const m = T(null), L = "bear-theme-mode", j = ({
1
+ import { jsx as ee } from "react/jsx-runtime";
2
+ import { createContext as te, useContext as _, useState as m, useMemo as T, useCallback as i, useEffect as re } from "react";
3
+ import { defaultDarkTheme as F, defaultLightTheme as se } from "./defaultTheme.js";
4
+ const j = te(null), oe = "bear-theme-mode", ne = ["primary", "secondary", "success", "warning", "danger", "info", "ghost", "outline", "error"], W = (t) => {
5
+ const o = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);
6
+ return o ? {
7
+ r: parseInt(o[1], 16),
8
+ g: parseInt(o[2], 16),
9
+ b: parseInt(o[3], 16)
10
+ } : null;
11
+ }, N = (t, o, s) => "#" + [t, o, s].map((c) => {
12
+ const b = Math.max(0, Math.min(255, Math.round(c))).toString(16);
13
+ return b.length === 1 ? "0" + b : b;
14
+ }).join(""), P = (t, o) => {
15
+ const s = W(t);
16
+ if (!s) return t;
17
+ const c = o / 100;
18
+ return N(
19
+ s.r + (255 - s.r) * c,
20
+ s.g + (255 - s.g) * c,
21
+ s.b + (255 - s.b) * c
22
+ );
23
+ }, x = (t, o) => {
24
+ const s = W(t);
25
+ if (!s) return t;
26
+ const c = 1 - o / 100;
27
+ return N(s.r * c, s.g * c, s.b * c);
28
+ }, ae = (t) => ({
29
+ 50: P(t, 95),
30
+ 100: P(t, 85),
31
+ 200: P(t, 70),
32
+ 300: P(t, 50),
33
+ 400: P(t, 25),
34
+ 500: t,
35
+ 600: x(t, 10),
36
+ 700: x(t, 25),
37
+ 800: x(t, 40),
38
+ 900: x(t, 55),
39
+ 950: x(t, 70)
40
+ }), ce = (t) => typeof t != "string" ? !1 : t.startsWith("#") || t.startsWith("rgb") || /^[a-z]+$/i.test(t), R = {
41
+ red: "#ef4444",
42
+ blue: "#3b82f6",
43
+ green: "#22c55e",
44
+ yellow: "#eab308",
45
+ orange: "#f97316",
46
+ purple: "#a855f7",
47
+ pink: "#ec4899",
48
+ cyan: "#06b6d4",
49
+ teal: "#14b8a6",
50
+ indigo: "#6366f1",
51
+ violet: "#8b5cf6",
52
+ rose: "#f43f5e",
53
+ amber: "#f59e0b",
54
+ lime: "#84cc16",
55
+ emerald: "#10b981",
56
+ sky: "#0ea5e9",
57
+ slate: "#64748b",
58
+ gray: "#6b7280",
59
+ zinc: "#71717a",
60
+ neutral: "#737373",
61
+ stone: "#78716c",
62
+ white: "#ffffff",
63
+ black: "#000000"
64
+ }, be = (t) => {
65
+ const o = t.toLowerCase();
66
+ return R[o] ? R[o] : (t.startsWith("#"), t);
67
+ };
68
+ function v(t, o) {
69
+ if (!o) return t;
70
+ const s = { ...t }, c = t, b = o, $ = s;
71
+ for (const p in b)
72
+ if (Object.prototype.hasOwnProperty.call(b, p)) {
73
+ const l = b[p], d = c[p];
74
+ l && typeof l == "object" && !Array.isArray(l) && d && typeof d == "object" && !Array.isArray(d) ? $[p] = v(
75
+ d,
76
+ l
77
+ ) : l !== void 0 && ($[p] = l);
78
+ }
79
+ return s;
80
+ }
81
+ const f = (t, o, s) => {
82
+ Object.entries(s).forEach(([c, b]) => {
83
+ t.style.setProperty(`--bear-${o}-${c}`, b);
84
+ });
85
+ }, ie = (t, o, s) => {
86
+ t.style.setProperty(`--bear-${o}-bg`, s.bg), s.bgHover && t.style.setProperty(`--bear-${o}-bg-hover`, s.bgHover), s.bgActive && t.style.setProperty(`--bear-${o}-bg-active`, s.bgActive), s.text && t.style.setProperty(`--bear-${o}-text`, s.text), s.border && t.style.setProperty(`--bear-${o}-border`, s.border), s.ring && t.style.setProperty(`--bear-${o}-ring`, s.ring);
87
+ }, ue = ({
5
88
  children: t,
6
- defaultMode: c = "light",
7
- theme: n,
8
- persistPreference: d = !0,
9
- storageKey: l = L
89
+ defaultMode: o = "light",
90
+ theme: s,
91
+ components: c = {},
92
+ variants: b = {},
93
+ customVariants: $ = {},
94
+ customTypography: p = {},
95
+ persistPreference: l = !0,
96
+ storageKey: d = oe
10
97
  }) => {
11
- const [o, x] = f(() => {
12
- if (typeof window < "u" && d) {
13
- const e = localStorage.getItem(l);
98
+ const [y, G] = m(() => {
99
+ if (typeof window < "u" && l) {
100
+ const e = localStorage.getItem(d);
14
101
  if (e === "light" || e === "dark")
15
102
  return e;
16
103
  if (window.matchMedia("(prefers-color-scheme: dark)").matches)
17
104
  return "dark";
18
105
  }
19
- return c;
20
- }), [s, P] = f(n || {}), r = h(() => {
21
- const e = o === "dark" ? g : M;
22
- return Object.keys(s).length === 0 ? e : {
23
- ...e,
24
- ...s,
25
- colors: s.colors ? { ...e.colors, ...s.colors } : e.colors
26
- };
27
- }, [o, s]), a = u((e) => {
28
- x(e), typeof window < "u" && d && localStorage.setItem(l, e);
29
- }, [d, l]), y = u(() => {
30
- a(o === "light" ? "dark" : "light");
31
- }, [o, a]), b = u((e) => {
32
- P((i) => ({ ...i, ...e }));
106
+ return o;
107
+ }), [k, Y] = m(s || {}), [V, q] = m(c), [h, J] = m(b), [u, Q] = m($), [g, X] = m(p), O = T(() => {
108
+ if (!k || Object.keys(k).length === 0)
109
+ return {};
110
+ const e = { ...k };
111
+ if (e.colors) {
112
+ const n = ["primary", "secondary", "success", "warning", "danger", "info", "neutral"];
113
+ for (const r of n) {
114
+ const z = e.colors[r];
115
+ if (ce(z)) {
116
+ const K = be(z);
117
+ e.colors[r] = ae(K);
118
+ }
119
+ }
120
+ }
121
+ return e;
122
+ }, [k]), a = T(() => {
123
+ const e = y === "dark" ? F : se;
124
+ return Object.keys(O).length === 0 ? e : v(e, O);
125
+ }, [y, O]), w = i((e) => {
126
+ G(e), typeof window < "u" && l && localStorage.setItem(d, e);
127
+ }, [l, d]), A = i(() => {
128
+ w(y === "light" ? "dark" : "light");
129
+ }, [y, w]), E = i((e) => {
130
+ Y((n) => v(n, e));
131
+ }, []), B = i((e, n) => {
132
+ q((r) => ({
133
+ ...r,
134
+ [e]: {
135
+ ...r[e] || {},
136
+ ...n
137
+ }
138
+ }));
139
+ }, []), M = i((e, n) => {
140
+ J((r) => ({
141
+ ...r,
142
+ [e]: {
143
+ ...r[e] || {},
144
+ ...n
145
+ }
146
+ }));
147
+ }, []), S = i((e) => ne.includes(e) || e in u, [u]), I = i((e) => u[e], [u]), L = i((e, n) => {
148
+ Q((r) => ({
149
+ ...r,
150
+ [e]: n
151
+ }));
152
+ }, []), C = i((e) => e in g, [g]), H = i((e) => g[e], [g]), D = i((e, n) => {
153
+ X((r) => ({
154
+ ...r,
155
+ [e]: n
156
+ }));
33
157
  }, []);
34
- E(() => {
158
+ re(() => {
35
159
  if (typeof document < "u") {
36
160
  const e = document.documentElement;
37
- o === "dark" ? e.classList.add("dark") : e.classList.remove("dark"), e.classList.remove("bear-light", "bear-dark"), e.classList.add(`bear-${o}`), Object.entries(r.colors.primary).forEach(([i, w]) => {
38
- e.style.setProperty(`--bear-primary-${i}`, w);
39
- }), e.style.setProperty("--bear-bg-primary", r.colors.background.primary), e.style.setProperty("--bear-bg-secondary", r.colors.background.secondary), e.style.setProperty("--bear-bg-tertiary", r.colors.background.tertiary), e.style.setProperty("--bear-text-primary", r.colors.text.primary), e.style.setProperty("--bear-text-secondary", r.colors.text.secondary), e.style.setProperty("--bear-text-muted", r.colors.text.muted), e.style.setProperty("--bear-border-default", r.colors.border.default);
161
+ y === "dark" ? e.classList.add("dark") : e.classList.remove("dark"), e.classList.remove("bear-light", "bear-dark"), e.classList.add(`bear-${y}`), f(e, "primary", a.colors.primary), f(e, "secondary", a.colors.secondary), f(e, "success", a.colors.success), f(e, "warning", a.colors.warning), f(e, "danger", a.colors.danger), f(e, "info", a.colors.info), f(e, "neutral", a.colors.neutral), e.style.setProperty("--bear-bg-primary", a.colors.background.primary), e.style.setProperty("--bear-bg-secondary", a.colors.background.secondary), e.style.setProperty("--bear-bg-tertiary", a.colors.background.tertiary), e.style.setProperty("--bear-text-primary", a.colors.text.primary), e.style.setProperty("--bear-text-secondary", a.colors.text.secondary), e.style.setProperty("--bear-text-muted", a.colors.text.muted), e.style.setProperty("--bear-text-inverted", a.colors.text.inverted), e.style.setProperty("--bear-border-default", a.colors.border.default), e.style.setProperty("--bear-border-subtle", a.colors.border.subtle), e.style.setProperty("--bear-border-strong", a.colors.border.strong), h.Button && Object.entries(h.Button).forEach(([n, r]) => {
162
+ r && (r.bg && e.style.setProperty(`--bear-btn-${n}-bg`, r.bg), r.bgHover && e.style.setProperty(`--bear-btn-${n}-bg-hover`, r.bgHover), r.bgActive && e.style.setProperty(`--bear-btn-${n}-bg-active`, r.bgActive), r.bgDisabled && e.style.setProperty(`--bear-btn-${n}-bg-disabled`, r.bgDisabled), r.text && e.style.setProperty(`--bear-btn-${n}-text`, r.text), r.textDisabled && e.style.setProperty(`--bear-btn-${n}-text-disabled`, r.textDisabled), r.border && e.style.setProperty(`--bear-btn-${n}-border`, r.border), r.borderHover && e.style.setProperty(`--bear-btn-${n}-border-hover`, r.borderHover), r.ring && e.style.setProperty(`--bear-btn-${n}-ring`, r.ring));
163
+ }), Object.entries(u).forEach(([n, r]) => {
164
+ ie(e, n, r);
165
+ }), e.style.setProperty("--bear-font-sans", a.typography.fontFamily.sans), e.style.setProperty("--bear-font-mono", a.typography.fontFamily.mono), Object.entries(a.shadows).forEach(([n, r]) => {
166
+ e.style.setProperty(`--bear-shadow-${n}`, r);
167
+ }), Object.entries(a.borderRadius).forEach(([n, r]) => {
168
+ e.style.setProperty(`--bear-radius-${n}`, r);
169
+ }), Object.entries(a.spacing).forEach(([n, r]) => {
170
+ e.style.setProperty(`--bear-spacing-${n}`, r);
171
+ });
40
172
  }
41
- }, [r, o]);
42
- const v = h(() => ({
43
- theme: r,
44
- mode: o,
45
- setMode: a,
46
- toggleMode: y,
47
- updateTheme: b
48
- }), [r, o, a, y, b]);
49
- return /* @__PURE__ */ B(m.Provider, { value: v, children: t });
50
- }, k = () => {
51
- const t = p(m);
173
+ }, [a, y, h, u]);
174
+ const Z = T(() => ({
175
+ theme: a,
176
+ mode: y,
177
+ setMode: w,
178
+ toggleMode: A,
179
+ updateTheme: E,
180
+ components: V,
181
+ variants: h,
182
+ customVariants: u,
183
+ hasVariant: S,
184
+ getVariant: I,
185
+ addVariant: L,
186
+ customTypography: g,
187
+ hasTypography: C,
188
+ getTypography: H,
189
+ addTypography: D,
190
+ registerComponent: B,
191
+ registerVariant: M
192
+ }), [a, y, w, A, E, V, h, u, S, I, L, g, C, H, D, B, M]);
193
+ return /* @__PURE__ */ ee(j.Provider, { value: Z, children: t });
194
+ }, U = () => {
195
+ const t = _(j);
52
196
  if (!t)
53
197
  throw new Error("useBear must be used within a BearProvider");
54
198
  return t;
55
- }, A = () => {
56
- const { theme: t } = k();
199
+ }, pe = () => {
200
+ const { theme: t } = U();
57
201
  return t;
58
- }, D = () => {
59
- const t = p(m);
60
- return t ? t.theme : g;
61
- }, I = () => {
62
- const { mode: t, setMode: c, toggleMode: n } = k();
63
- return { mode: t, setMode: c, toggleMode: n };
202
+ }, fe = () => {
203
+ const t = _(j);
204
+ return t ? t.theme : F;
205
+ }, ge = () => {
206
+ const { mode: t, setMode: o, toggleMode: s } = U();
207
+ return { mode: t, setMode: o, toggleMode: s };
64
208
  };
65
209
  export {
66
- j as BearProvider,
67
- k as useBear,
68
- I as useBearMode,
69
- A as useBearTheme,
70
- D as useBearThemeOptional
210
+ j as BearContext,
211
+ ue as BearProvider,
212
+ U as useBear,
213
+ ge as useBearMode,
214
+ pe as useBearTheme,
215
+ fe as useBearThemeOptional
71
216
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r={50:"#fff7ed",100:"#ffedd5",200:"#fed7aa",300:"#fdba74",400:"#fb923c",500:"#f97316",600:"#ea580c",700:"#c2410c",800:"#9a3412",900:"#7c2d12",950:"#431407"},f={50:"#faf5ff",100:"#f3e8ff",200:"#e9d5ff",300:"#d8b4fe",400:"#c084fc",500:"#a855f7",600:"#9333ea",700:"#7c3aed",800:"#6b21a8",900:"#581c87",950:"#3b0764"},a={50:"#f0fdf4",100:"#dcfce7",200:"#bbf7d0",300:"#86efac",400:"#4ade80",500:"#22c55e",600:"#16a34a",700:"#15803d",800:"#166534",900:"#14532d",950:"#052e16"},o={50:"#fefce8",100:"#fef9c3",200:"#fef08a",300:"#fde047",400:"#facc15",500:"#eab308",600:"#ca8a04",700:"#a16207",800:"#854d0e",900:"#713f12",950:"#422006"},x={50:"#fef2f2",100:"#fee2e2",200:"#fecaca",300:"#fca5a5",400:"#f87171",500:"#ef4444",600:"#dc2626",700:"#b91c1c",800:"#991b1b",900:"#7f1d1d",950:"#450a0a"},d={50:"#eff6ff",100:"#dbeafe",200:"#bfdbfe",300:"#93c5fd",400:"#60a5fa",500:"#3b82f6",600:"#2563eb",700:"#1d4ed8",800:"#1e40af",900:"#1e3a8a",950:"#172554"},p={50:"#fafafa",100:"#f4f4f5",200:"#e4e4e7",300:"#d4d4d8",400:"#a1a1aa",500:"#71717a",600:"#52525b",700:"#3f3f46",800:"#27272a",900:"#18181b",950:"#09090b"},e={mode:"light",colors:{primary:r,secondary:f,success:a,warning:o,danger:x,info:d,neutral:p,background:{primary:"#ffffff",secondary:"#f9fafb",tertiary:"#f3f4f6"},text:{primary:"#111827",secondary:"#4b5563",muted:"#9ca3af",inverted:"#ffffff"},border:{default:"#e5e7eb",subtle:"#f3f4f6",strong:"#d1d5db"}},typography:{fontFamily:{sans:"Inter, system-ui, -apple-system, sans-serif",mono:"JetBrains Mono, Fira Code, monospace"},fontSize:{xs:"0.75rem",sm:"0.875rem",base:"1rem",lg:"1.125rem",xl:"1.25rem","2xl":"1.5rem","3xl":"1.875rem","4xl":"2.25rem"},fontWeight:{normal:400,medium:500,semibold:600,bold:700},lineHeight:{tight:1.25,normal:1.5,relaxed:1.75}},spacing:{0:"0",1:"0.25rem",2:"0.5rem",3:"0.75rem",4:"1rem",5:"1.25rem",6:"1.5rem",8:"2rem",10:"2.5rem",12:"3rem",16:"4rem",20:"5rem",24:"6rem",32:"8rem"},borderRadius:{none:"0",sm:"0.25rem",md:"0.375rem",lg:"0.5rem",xl:"0.75rem","2xl":"1rem",full:"9999px"},shadows:{none:"none",sm:"0 1px 2px 0 rgb(0 0 0 / 0.05)",md:"0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)",lg:"0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)",xl:"0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)","2xl":"0 25px 50px -12px rgb(0 0 0 / 0.25)",inner:"inset 0 2px 4px 0 rgb(0 0 0 / 0.05)"},breakpoints:{sm:"640px",md:"768px",lg:"1024px",xl:"1280px","2xl":"1536px"}},s={...e,mode:"dark",colors:{...e.colors,background:{primary:"#09090b",secondary:"#18181b",tertiary:"#27272a"},text:{primary:"#fafafa",secondary:"#a1a1aa",muted:"#71717a",inverted:"#09090b"},border:{default:"#27272a",subtle:"#18181b",strong:"#3f3f46"}},shadows:{none:"none",sm:"0 1px 2px 0 rgb(0 0 0 / 0.3)",md:"0 4px 6px -1px rgb(0 0 0 / 0.4), 0 2px 4px -2px rgb(0 0 0 / 0.3)",lg:"0 10px 15px -3px rgb(0 0 0 / 0.4), 0 4px 6px -4px rgb(0 0 0 / 0.3)",xl:"0 20px 25px -5px rgb(0 0 0 / 0.5), 0 8px 10px -6px rgb(0 0 0 / 0.3)","2xl":"0 25px 50px -12px rgb(0 0 0 / 0.6)",inner:"inset 0 2px 4px 0 rgb(0 0 0 / 0.2)"}};exports.defaultDarkTheme=s;exports.defaultLightTheme=e;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r={50:"#fdf2f8",100:"#fce7f3",200:"#fbcfe8",300:"#f9a8d4",400:"#f472b6",500:"#ec4899",600:"#db2777",700:"#be185d",800:"#9d174d",900:"#831843",950:"#500724"},f={50:"#faf5ff",100:"#f3e8ff",200:"#e9d5ff",300:"#d8b4fe",400:"#c084fc",500:"#a855f7",600:"#9333ea",700:"#7c3aed",800:"#6b21a8",900:"#581c87",950:"#3b0764"},a={50:"#f0fdf4",100:"#dcfce7",200:"#bbf7d0",300:"#86efac",400:"#4ade80",500:"#22c55e",600:"#16a34a",700:"#15803d",800:"#166534",900:"#14532d",950:"#052e16"},o={50:"#fefce8",100:"#fef9c3",200:"#fef08a",300:"#fde047",400:"#facc15",500:"#eab308",600:"#ca8a04",700:"#a16207",800:"#854d0e",900:"#713f12",950:"#422006"},x={50:"#fef2f2",100:"#fee2e2",200:"#fecaca",300:"#fca5a5",400:"#f87171",500:"#ef4444",600:"#dc2626",700:"#b91c1c",800:"#991b1b",900:"#7f1d1d",950:"#450a0a"},d={50:"#eff6ff",100:"#dbeafe",200:"#bfdbfe",300:"#93c5fd",400:"#60a5fa",500:"#3b82f6",600:"#2563eb",700:"#1d4ed8",800:"#1e40af",900:"#1e3a8a",950:"#172554"},p={50:"#fafafa",100:"#f4f4f5",200:"#e4e4e7",300:"#d4d4d8",400:"#a1a1aa",500:"#71717a",600:"#52525b",700:"#3f3f46",800:"#27272a",900:"#18181b",950:"#09090b"},e={mode:"light",colors:{primary:r,secondary:f,success:a,warning:o,danger:x,info:d,neutral:p,background:{primary:"#ffffff",secondary:"#f9fafb",tertiary:"#f3f4f6"},text:{primary:"#111827",secondary:"#4b5563",muted:"#9ca3af",inverted:"#ffffff"},border:{default:"#e5e7eb",subtle:"#f3f4f6",strong:"#d1d5db"}},typography:{fontFamily:{sans:"Inter, system-ui, -apple-system, sans-serif",mono:"JetBrains Mono, Fira Code, monospace"},fontSize:{xs:"0.75rem",sm:"0.875rem",base:"1rem",lg:"1.125rem",xl:"1.25rem","2xl":"1.5rem","3xl":"1.875rem","4xl":"2.25rem"},fontWeight:{normal:400,medium:500,semibold:600,bold:700},lineHeight:{tight:1.25,normal:1.5,relaxed:1.75}},spacing:{0:"0",1:"0.25rem",2:"0.5rem",3:"0.75rem",4:"1rem",5:"1.25rem",6:"1.5rem",8:"2rem",10:"2.5rem",12:"3rem",16:"4rem",20:"5rem",24:"6rem",32:"8rem"},borderRadius:{none:"0",sm:"0.25rem",md:"0.375rem",lg:"0.5rem",xl:"0.75rem","2xl":"1rem",full:"9999px"},shadows:{none:"none",sm:"0 1px 2px 0 rgb(0 0 0 / 0.05)",md:"0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)",lg:"0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)",xl:"0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)","2xl":"0 25px 50px -12px rgb(0 0 0 / 0.25)",inner:"inset 0 2px 4px 0 rgb(0 0 0 / 0.05)"},breakpoints:{sm:"640px",md:"768px",lg:"1024px",xl:"1280px","2xl":"1536px"}},s={...e,mode:"dark",colors:{...e.colors,background:{primary:"#09090b",secondary:"#18181b",tertiary:"#27272a"},text:{primary:"#fafafa",secondary:"#a1a1aa",muted:"#71717a",inverted:"#09090b"},border:{default:"#27272a",subtle:"#18181b",strong:"#3f3f46"}},shadows:{none:"none",sm:"0 1px 2px 0 rgb(0 0 0 / 0.3)",md:"0 4px 6px -1px rgb(0 0 0 / 0.4), 0 2px 4px -2px rgb(0 0 0 / 0.3)",lg:"0 10px 15px -3px rgb(0 0 0 / 0.4), 0 4px 6px -4px rgb(0 0 0 / 0.3)",xl:"0 20px 25px -5px rgb(0 0 0 / 0.5), 0 8px 10px -6px rgb(0 0 0 / 0.3)","2xl":"0 25px 50px -12px rgb(0 0 0 / 0.6)",inner:"inset 0 2px 4px 0 rgb(0 0 0 / 0.2)"}};exports.defaultDarkTheme=s;exports.defaultLightTheme=e;
@@ -1,15 +1,15 @@
1
1
  const r = {
2
- 50: "#fff7ed",
3
- 100: "#ffedd5",
4
- 200: "#fed7aa",
5
- 300: "#fdba74",
6
- 400: "#fb923c",
7
- 500: "#f97316",
8
- 600: "#ea580c",
9
- 700: "#c2410c",
10
- 800: "#9a3412",
11
- 900: "#7c2d12",
12
- 950: "#431407"
2
+ 50: "#fdf2f8",
3
+ 100: "#fce7f3",
4
+ 200: "#fbcfe8",
5
+ 300: "#f9a8d4",
6
+ 400: "#f472b6",
7
+ 500: "#ec4899",
8
+ 600: "#db2777",
9
+ 700: "#be185d",
10
+ 800: "#9d174d",
11
+ 900: "#831843",
12
+ 950: "#500724"
13
13
  }, f = {
14
14
  50: "#faf5ff",
15
15
  100: "#f3e8ff",
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./useMediaQuery.cjs"),t=require("./useClickOutside.cjs"),a=require("./useDisclosure.cjs"),l=require("./useBearStyles.cjs"),i=require("./bearStyled.cjs"),c=require("./useSlide/useSlide.cjs"),n=require("./useParallax/useParallax.cjs"),d=require("./useBounce/useBounce.cjs"),b=require("./useFloat/useFloat.cjs"),q=require("./usePulse/usePulse.cjs"),y=require("./useShake/useShake.cjs"),S=require("./useClipboard/useClipboard.cjs"),s=require("./useDebounce/useDebounce.cjs"),u=require("./useThrottle/useThrottle.cjs"),D=require("./useLocalStorage/useLocalStorage.cjs"),r=require("./useKeyPress/useKeyPress.cjs"),o=require("./useIntersectionObserver/useIntersectionObserver.cjs"),P=require("./useDragDrop/useDragDrop.cjs"),k=require("./useLazyLoad/useLazyLoad.cjs");exports.useIsDesktop=e.useIsDesktop;exports.useIsMobile=e.useIsMobile;exports.useIsTablet=e.useIsTablet;exports.useMediaQuery=e.useMediaQuery;exports.usePrefersDark=e.usePrefersDark;exports.usePrefersReducedMotion=e.usePrefersReducedMotion;exports.useClickOutside=t.useClickOutside;exports.useDisclosure=a.useDisclosure;exports.useBearStyles=l.useBearStyles;exports.bearStyled=i.bearStyled;exports.useSlide=c.useSlide;exports.useParallax=n.useParallax;exports.useBounce=d.useBounce;exports.useFloat=b.useFloat;exports.usePulse=q.usePulse;exports.useShake=y.useShake;exports.useClipboard=S.useClipboard;exports.useDebounce=s.useDebounce;exports.useDebouncedCallback=s.useDebouncedCallback;exports.useThrottle=u.useThrottle;exports.useThrottledCallback=u.useThrottledCallback;exports.useLocalStorage=D.useLocalStorage;exports.useKeyPress=r.useKeyPress;exports.useKeyPressState=r.useKeyPressState;exports.useInView=o.useInView;exports.useIntersectionObserver=o.useIntersectionObserver;exports.useDragDrop=P.useDragDrop;exports.useLazyLoad=k.useLazyLoad;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./useMediaQuery.cjs"),n=require("./useClickOutside.cjs"),a=require("./useDisclosure.cjs"),l=require("./useBearStyles.cjs"),c=require("./bearStyled.cjs"),d=require("./useSlide/useSlide.cjs"),b=require("./useParallax/useParallax.cjs"),q=require("./useBounce/useBounce.cjs"),p=require("./useFloat/useFloat.cjs"),P=require("./usePulse/usePulse.cjs"),S=require("./useShake/useShake.cjs"),y=require("./useClipboard/useClipboard.cjs"),u=require("./useDebounce/useDebounce.cjs"),r=require("./useThrottle/useThrottle.cjs"),C=require("./useLocalStorage/useLocalStorage.cjs"),o=require("./useKeyPress/useKeyPress.cjs"),t=require("./useIntersectionObserver/useIntersectionObserver.cjs"),D=require("./useDragDrop/useDragDrop.cjs"),g=require("./useLazyLoad/useLazyLoad.cjs"),s=require("./useBearComponent/useBearComponent.cjs"),k=require("./useSpotlight/useSpotlight.cjs"),B=require("./useOnline/useOnline.cjs"),I=require("./useWebSocket/useWebSocket.cjs"),L=require("./useIdle/useIdle.cjs"),h=require("./usePageVisibility/usePageVisibility.cjs"),m=require("./useLongPress/useLongPress.cjs"),v=require("./useAnimate.cjs"),i=require("./useResponsive.cjs");exports.useIsDesktop=e.useIsDesktop;exports.useIsMobile=e.useIsMobile;exports.useIsTablet=e.useIsTablet;exports.useMediaQuery=e.useMediaQuery;exports.usePrefersDark=e.usePrefersDark;exports.usePrefersReducedMotion=e.usePrefersReducedMotion;exports.useClickOutside=n.useClickOutside;exports.useDisclosure=a.useDisclosure;exports.useBearStyles=l.useBearStyles;exports.bearStyled=c.bearStyled;exports.useSlide=d.useSlide;exports.useParallax=b.useParallax;exports.useBounce=q.useBounce;exports.useFloat=p.useFloat;exports.usePulse=P.usePulse;exports.useShake=S.useShake;exports.useClipboard=y.useClipboard;exports.useDebounce=u.useDebounce;exports.useDebouncedCallback=u.useDebouncedCallback;exports.useThrottle=r.useThrottle;exports.useThrottledCallback=r.useThrottledCallback;exports.useLocalStorage=C.useLocalStorage;exports.useKeyPress=o.useKeyPress;exports.useKeyPressState=o.useKeyPressState;exports.useInView=t.useInView;exports.useIntersectionObserver=t.useIntersectionObserver;exports.useDragDrop=D.useDragDrop;exports.useLazyLoad=g.useLazyLoad;exports.BearComponentProvider=s.BearComponentProvider;exports.useBC=s.useBC;exports.useBearComponent=s.useBearComponent;exports.useBearComponentContext=s.useBearComponentContext;exports.useSpotlight=k.useSpotlight;exports.useOnline=B.useOnline;exports.useWebSocket=I.useWebSocket;exports.useIdle=L.useIdle;exports.usePageVisibility=h.usePageVisibility;exports.useLongPress=m.useLongPress;exports.useAnimate=v.useAnimate;exports.useResponsive=i.useResponsive;exports.useResponsiveProps=i.useResponsiveProps;
@@ -31,3 +31,21 @@ export { useDragDrop } from './useDragDrop';
31
31
  export type { UseDragDropOptions, UseDragDropReturn, DragDropId } from './useDragDrop';
32
32
  export { useLazyLoad } from './useLazyLoad';
33
33
  export type { UseLazyLoadOptions, UseLazyLoadReturn } from './useLazyLoad';
34
+ export { useBearComponent, useBC, BearComponentProvider, useBearComponentContext } from './useBearComponent';
35
+ export type { UseBearComponentReturn, BearComponentContextValue } from './useBearComponent';
36
+ export { useSpotlight } from './useSpotlight';
37
+ export type { UseSpotlightOptions, UseSpotlightReturn } from './useSpotlight';
38
+ export { useOnline } from './useOnline';
39
+ export type { UseOnlineOptions, UseOnlineReturn } from './useOnline';
40
+ export { useWebSocket } from './useWebSocket';
41
+ export type { UseWebSocketOptions, UseWebSocketReturn, WebSocketStatus } from './useWebSocket';
42
+ export { useIdle } from './useIdle';
43
+ export type { UseIdleOptions, UseIdleReturn } from './useIdle';
44
+ export { usePageVisibility } from './usePageVisibility';
45
+ export type { UsePageVisibilityOptions, UsePageVisibilityReturn } from './usePageVisibility';
46
+ export { useLongPress } from './useLongPress';
47
+ export type { UseLongPressOptions, UseLongPressReturn } from './useLongPress';
48
+ export { useAnimate } from './useAnimate';
49
+ export type { UseAnimateOptions, UseAnimateReturn, AnimationPreset, AnimationKeyframe } from './useAnimate';
50
+ export { useResponsive, useResponsiveProps } from './useResponsive';
51
+ export type { ResponsiveProp } from './useResponsive';
@@ -1,49 +1,71 @@
1
- import { useIsDesktop as o, useIsMobile as s, useIsTablet as t, useMediaQuery as u, usePrefersDark as p, usePrefersReducedMotion as a } from "./useMediaQuery.js";
1
+ import { useIsDesktop as r, useIsMobile as s, useIsTablet as t, useMediaQuery as u, usePrefersDark as p, usePrefersReducedMotion as m } from "./useMediaQuery.js";
2
2
  import { useClickOutside as x } from "./useClickOutside.js";
3
- import { useDisclosure as m } from "./useDisclosure.js";
4
- import { useBearStyles as d } from "./useBearStyles.js";
3
+ import { useDisclosure as l } from "./useDisclosure.js";
4
+ import { useBearStyles as n } from "./useBearStyles.js";
5
5
  import { bearStyled as b } from "./bearStyled.js";
6
- import { useSlide as D } from "./useSlide/useSlide.js";
7
- import { useParallax as y } from "./useParallax/useParallax.js";
8
- import { useBounce as S } from "./useBounce/useBounce.js";
9
- import { useFloat as C } from "./useFloat/useFloat.js";
10
- import { usePulse as L } from "./usePulse/usePulse.js";
11
- import { useShake as T } from "./useShake/useShake.js";
12
- import { useClipboard as B } from "./useClipboard/useClipboard.js";
13
- import { useDebounce as O, useDebouncedCallback as v } from "./useDebounce/useDebounce.js";
14
- import { useThrottle as z, useThrottledCallback as F } from "./useThrottle/useThrottle.js";
15
- import { useLocalStorage as R } from "./useLocalStorage/useLocalStorage.js";
16
- import { useKeyPress as j, useKeyPressState as q } from "./useKeyPress/useKeyPress.js";
17
- import { useInView as E, useIntersectionObserver as G } from "./useIntersectionObserver/useIntersectionObserver.js";
18
- import { useDragDrop as J } from "./useDragDrop/useDragDrop.js";
19
- import { useLazyLoad as U } from "./useLazyLoad/useLazyLoad.js";
6
+ import { useSlide as P } from "./useSlide/useSlide.js";
7
+ import { useParallax as S } from "./useParallax/useParallax.js";
8
+ import { useBounce as y } from "./useBounce/useBounce.js";
9
+ import { useFloat as B } from "./useFloat/useFloat.js";
10
+ import { usePulse as g } from "./usePulse/usePulse.js";
11
+ import { useShake as v } from "./useShake/useShake.js";
12
+ import { useClipboard as M } from "./useClipboard/useClipboard.js";
13
+ import { useDebounce as R, useDebouncedCallback as T } from "./useDebounce/useDebounce.js";
14
+ import { useThrottle as V, useThrottledCallback as w } from "./useThrottle/useThrottle.js";
15
+ import { useLocalStorage as A } from "./useLocalStorage/useLocalStorage.js";
16
+ import { useKeyPress as Q, useKeyPressState as W } from "./useKeyPress/useKeyPress.js";
17
+ import { useInView as q, useIntersectionObserver as E } from "./useIntersectionObserver/useIntersectionObserver.js";
18
+ import { useDragDrop as H } from "./useDragDrop/useDragDrop.js";
19
+ import { useLazyLoad as N } from "./useLazyLoad/useLazyLoad.js";
20
+ import { BearComponentProvider as X, useBC as Y, useBearComponent as Z, useBearComponentContext as _ } from "./useBearComponent/useBearComponent.js";
21
+ import { useSpotlight as ee } from "./useSpotlight/useSpotlight.js";
22
+ import { useOnline as re } from "./useOnline/useOnline.js";
23
+ import { useWebSocket as te } from "./useWebSocket/useWebSocket.js";
24
+ import { useIdle as pe } from "./useIdle/useIdle.js";
25
+ import { usePageVisibility as fe } from "./usePageVisibility/usePageVisibility.js";
26
+ import { useLongPress as ae } from "./useLongPress/useLongPress.js";
27
+ import { useAnimate as ie } from "./useAnimate.js";
28
+ import { useResponsive as de, useResponsiveProps as be } from "./useResponsive.js";
20
29
  export {
30
+ X as BearComponentProvider,
21
31
  b as bearStyled,
22
- d as useBearStyles,
23
- S as useBounce,
32
+ ie as useAnimate,
33
+ Y as useBC,
34
+ Z as useBearComponent,
35
+ _ as useBearComponentContext,
36
+ n as useBearStyles,
37
+ y as useBounce,
24
38
  x as useClickOutside,
25
- B as useClipboard,
26
- O as useDebounce,
27
- v as useDebouncedCallback,
28
- m as useDisclosure,
29
- J as useDragDrop,
30
- C as useFloat,
31
- E as useInView,
32
- G as useIntersectionObserver,
33
- o as useIsDesktop,
39
+ M as useClipboard,
40
+ R as useDebounce,
41
+ T as useDebouncedCallback,
42
+ l as useDisclosure,
43
+ H as useDragDrop,
44
+ B as useFloat,
45
+ pe as useIdle,
46
+ q as useInView,
47
+ E as useIntersectionObserver,
48
+ r as useIsDesktop,
34
49
  s as useIsMobile,
35
50
  t as useIsTablet,
36
- j as useKeyPress,
37
- q as useKeyPressState,
38
- U as useLazyLoad,
39
- R as useLocalStorage,
51
+ Q as useKeyPress,
52
+ W as useKeyPressState,
53
+ N as useLazyLoad,
54
+ A as useLocalStorage,
55
+ ae as useLongPress,
40
56
  u as useMediaQuery,
41
- y as useParallax,
57
+ re as useOnline,
58
+ fe as usePageVisibility,
59
+ S as useParallax,
42
60
  p as usePrefersDark,
43
- a as usePrefersReducedMotion,
44
- L as usePulse,
45
- T as useShake,
46
- D as useSlide,
47
- z as useThrottle,
48
- F as useThrottledCallback
61
+ m as usePrefersReducedMotion,
62
+ g as usePulse,
63
+ de as useResponsive,
64
+ be as useResponsiveProps,
65
+ v as useShake,
66
+ P as useSlide,
67
+ ee as useSpotlight,
68
+ V as useThrottle,
69
+ w as useThrottledCallback,
70
+ te as useWebSocket
49
71
  };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react"),f={fadeIn:[{opacity:0},{opacity:1}],fadeOut:[{opacity:1},{opacity:0}],slideInLeft:[{transform:"translateX(-100%)",opacity:0},{transform:"translateX(0)",opacity:1}],slideInRight:[{transform:"translateX(100%)",opacity:0},{transform:"translateX(0)",opacity:1}],slideInUp:[{transform:"translateY(100%)",opacity:0},{transform:"translateY(0)",opacity:1}],slideInDown:[{transform:"translateY(-100%)",opacity:0},{transform:"translateY(0)",opacity:1}],slideOutLeft:[{transform:"translateX(0)",opacity:1},{transform:"translateX(-100%)",opacity:0}],slideOutRight:[{transform:"translateX(0)",opacity:1},{transform:"translateX(100%)",opacity:0}],slideOutUp:[{transform:"translateY(0)",opacity:1},{transform:"translateY(-100%)",opacity:0}],slideOutDown:[{transform:"translateY(0)",opacity:1},{transform:"translateY(100%)",opacity:0}],scaleIn:[{transform:"scale(0)",opacity:0},{transform:"scale(1)",opacity:1}],scaleOut:[{transform:"scale(1)",opacity:1},{transform:"scale(0)",opacity:0}],rotateIn:[{transform:"rotate(-180deg) scale(0)",opacity:0},{transform:"rotate(0) scale(1)",opacity:1}],rotateOut:[{transform:"rotate(0) scale(1)",opacity:1},{transform:"rotate(180deg) scale(0)",opacity:0}],flipX:[{transform:"perspective(400px) rotateX(90deg)",opacity:0},{transform:"perspective(400px) rotateX(0)",opacity:1}],flipY:[{transform:"perspective(400px) rotateY(90deg)",opacity:0},{transform:"perspective(400px) rotateY(0)",opacity:1}],bounceIn:[{transform:"scale(0.3)",opacity:0},{transform:"scale(1.05)"},{transform:"scale(0.9)"},{transform:"scale(1)",opacity:1}],bounceOut:[{transform:"scale(1)",opacity:1},{transform:"scale(0.9)"},{transform:"scale(1.05)"},{transform:"scale(0.3)",opacity:0}],pulse:[{transform:"scale(1)"},{transform:"scale(1.05)"},{transform:"scale(1)"}],shake:[{transform:"translateX(0)"},{transform:"translateX(-10px)"},{transform:"translateX(10px)"},{transform:"translateX(-10px)"},{transform:"translateX(10px)"},{transform:"translateX(0)"}],swing:[{transform:"rotate(0deg)"},{transform:"rotate(15deg)"},{transform:"rotate(-10deg)"},{transform:"rotate(5deg)"},{transform:"rotate(-5deg)"},{transform:"rotate(0deg)"}],rubberBand:[{transform:"scale(1)"},{transform:"scaleX(1.25) scaleY(0.75)"},{transform:"scaleX(0.75) scaleY(1.25)"},{transform:"scaleX(1.15) scaleY(0.85)"},{transform:"scaleX(0.95) scaleY(1.05)"},{transform:"scale(1)"}],tada:[{transform:"scale(1) rotate(0deg)"},{transform:"scale(0.9) rotate(-3deg)"},{transform:"scale(1.1) rotate(3deg)"},{transform:"scale(1.1) rotate(-3deg)"},{transform:"scale(1.1) rotate(3deg)"},{transform:"scale(1) rotate(0deg)"}],wobble:[{transform:"translateX(0) rotate(0deg)"},{transform:"translateX(-25%) rotate(-5deg)"},{transform:"translateX(20%) rotate(3deg)"},{transform:"translateX(-15%) rotate(-3deg)"},{transform:"translateX(10%) rotate(2deg)"},{transform:"translateX(0) rotate(0deg)"}],jello:[{transform:"skewX(0deg) skewY(0deg)"},{transform:"skewX(-12.5deg) skewY(-12.5deg)"},{transform:"skewX(6.25deg) skewY(6.25deg)"},{transform:"skewX(-3.125deg) skewY(-3.125deg)"},{transform:"skewX(1.5625deg) skewY(1.5625deg)"},{transform:"skewX(0deg) skewY(0deg)"}]},k=(l={})=>{const i=a.useRef(null),e=a.useRef(null),[y,s]=a.useState(!1),[g,c]=a.useState(!1),m=a.useCallback((t,w)=>{var d;const p=i.current;if(!p)return;(d=e.current)==null||d.cancel();const r={...l,...w};let o;typeof t=="string"?o=f[t]??f.fadeIn:Array.isArray(t)?o=t:o=f.fadeIn;const n=p.animate(o,{duration:r.duration??300,delay:r.delay??0,easing:r.easing??"ease",iterations:r.iterations??1,fill:r.fill??"forwards",direction:r.direction??"normal"});return e.current=n,s(!0),c(!1),n.onfinish=()=>{s(!1),c(!0)},n.oncancel=()=>{s(!1)},n},[l]),u=a.useCallback(()=>{var t;(t=e.current)==null||t.pause(),s(!1)},[]),X=a.useCallback(()=>{var t;(t=e.current)==null||t.cancel(),s(!1),c(!1)},[]),Y=a.useCallback(()=>{var t;(t=e.current)==null||t.reverse()},[]);return a.useEffect(()=>{l.autoPlay&&m()},[]),{ref:i,play:m,pause:u,cancel:X,reverse:Y,isPlaying:y,isFinished:g}};exports.useAnimate=k;