@brycks/core-front 0.2.7 → 0.2.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 (777) hide show
  1. package/dist/components/data/InfoItem/InfoItem.cjs +2 -0
  2. package/dist/components/data/InfoItem/InfoItem.cjs.map +1 -0
  3. package/dist/components/data/InfoItem/InfoItem.js +140 -0
  4. package/dist/components/data/InfoItem/InfoItem.js.map +1 -0
  5. package/dist/components/data/List/List.cjs +2 -0
  6. package/dist/components/data/List/List.cjs.map +1 -0
  7. package/dist/components/data/List/List.js +178 -0
  8. package/dist/components/data/List/List.js.map +1 -0
  9. package/dist/components/data/Table/Table.cjs +2 -0
  10. package/dist/components/data/Table/Table.cjs.map +1 -0
  11. package/dist/components/data/Table/Table.js +247 -0
  12. package/dist/components/data/Table/Table.js.map +1 -0
  13. package/dist/components/data.cjs +2 -0
  14. package/dist/components/data.cjs.map +1 -0
  15. package/dist/components/data.d.ts +2 -0
  16. package/dist/components/data.js +20 -0
  17. package/dist/components/data.js.map +1 -0
  18. package/dist/components/feedback/Alert/Alert.cjs +2 -0
  19. package/dist/components/feedback/Alert/Alert.cjs.map +1 -0
  20. package/dist/components/feedback/Alert/Alert.js +204 -0
  21. package/dist/components/feedback/Alert/Alert.js.map +1 -0
  22. package/dist/components/feedback/Drawer/Drawer.cjs +23 -0
  23. package/dist/components/feedback/Drawer/Drawer.cjs.map +1 -0
  24. package/dist/components/feedback/Drawer/Drawer.js +199 -0
  25. package/dist/components/feedback/Drawer/Drawer.js.map +1 -0
  26. package/dist/components/feedback/Modal/Modal.cjs +2 -0
  27. package/dist/components/feedback/Modal/Modal.cjs.map +1 -0
  28. package/dist/components/feedback/Modal/Modal.js +183 -0
  29. package/dist/components/feedback/Modal/Modal.js.map +1 -0
  30. package/dist/components/feedback/Popover/Popover.cjs +7 -0
  31. package/dist/components/feedback/Popover/Popover.cjs.map +1 -0
  32. package/dist/components/feedback/Popover/Popover.js +168 -0
  33. package/dist/components/feedback/Popover/Popover.js.map +1 -0
  34. package/dist/components/feedback/Progress/Progress.cjs +12 -0
  35. package/dist/components/feedback/Progress/Progress.cjs.map +1 -0
  36. package/dist/components/feedback/Progress/Progress.js +172 -0
  37. package/dist/components/feedback/Progress/Progress.js.map +1 -0
  38. package/dist/components/feedback/Toast/Toast.cjs +11 -0
  39. package/dist/components/feedback/Toast/Toast.cjs.map +1 -0
  40. package/dist/components/feedback/Toast/Toast.js +216 -0
  41. package/dist/components/feedback/Toast/Toast.js.map +1 -0
  42. package/dist/components/feedback/Toast/ToastContext.cjs +2 -0
  43. package/dist/components/feedback/Toast/ToastContext.cjs.map +1 -0
  44. package/dist/components/feedback/Toast/ToastContext.js +13 -0
  45. package/dist/components/feedback/Toast/ToastContext.js.map +1 -0
  46. package/dist/components/feedback/Tooltip/Tooltip.cjs +7 -0
  47. package/dist/components/feedback/Tooltip/Tooltip.cjs.map +1 -0
  48. package/dist/components/feedback/Tooltip/Tooltip.js +128 -0
  49. package/dist/components/feedback/Tooltip/Tooltip.js.map +1 -0
  50. package/dist/components/feedback.cjs +2 -0
  51. package/dist/components/feedback.cjs.map +1 -0
  52. package/dist/components/feedback.d.ts +2 -0
  53. package/dist/components/feedback.js +20 -0
  54. package/dist/components/feedback.js.map +1 -0
  55. package/dist/components/form/Checkbox/Checkbox.cjs +2 -0
  56. package/dist/components/form/Checkbox/Checkbox.cjs.map +1 -0
  57. package/dist/components/form/Checkbox/Checkbox.js +144 -0
  58. package/dist/components/form/Checkbox/Checkbox.js.map +1 -0
  59. package/dist/components/form/DateInput/DateInput.cjs +2 -0
  60. package/dist/components/form/DateInput/DateInput.cjs.map +1 -0
  61. package/dist/components/form/DateInput/DateInput.js +119 -0
  62. package/dist/components/form/DateInput/DateInput.js.map +1 -0
  63. package/dist/components/form/DropZone/DropZone.cjs +2 -0
  64. package/dist/components/form/DropZone/DropZone.cjs.map +1 -0
  65. package/dist/components/form/DropZone/DropZone.js +132 -0
  66. package/dist/components/form/DropZone/DropZone.js.map +1 -0
  67. package/dist/components/form/FieldError/FieldError.cjs +2 -0
  68. package/dist/components/form/FieldError/FieldError.cjs.map +1 -0
  69. package/dist/components/form/FieldError/FieldError.js +77 -0
  70. package/dist/components/form/FieldError/FieldError.js.map +1 -0
  71. package/dist/components/form/FileInput/FileInput.cjs +2 -0
  72. package/dist/components/form/FileInput/FileInput.cjs.map +1 -0
  73. package/dist/components/form/FileInput/FileInput.js +163 -0
  74. package/dist/components/form/FileInput/FileInput.js.map +1 -0
  75. package/dist/components/form/Form/Form.cjs +2 -0
  76. package/dist/components/form/Form/Form.cjs.map +1 -0
  77. package/dist/components/form/Form/Form.js +67 -0
  78. package/dist/components/form/Form/Form.js.map +1 -0
  79. package/dist/components/form/FormCard/FormCard.cjs +2 -0
  80. package/dist/components/form/FormCard/FormCard.cjs.map +1 -0
  81. package/dist/components/form/FormCard/FormCard.js +91 -0
  82. package/dist/components/form/FormCard/FormCard.js.map +1 -0
  83. package/dist/components/form/FormField/FormField.cjs +2 -0
  84. package/dist/components/form/FormField/FormField.cjs.map +1 -0
  85. package/dist/components/form/FormField/FormField.js +97 -0
  86. package/dist/components/form/FormField/FormField.js.map +1 -0
  87. package/dist/components/form/FormGroup/FormGroup.cjs +2 -0
  88. package/dist/components/form/FormGroup/FormGroup.cjs.map +1 -0
  89. package/dist/components/form/FormGroup/FormGroup.js +79 -0
  90. package/dist/components/form/FormGroup/FormGroup.js.map +1 -0
  91. package/dist/components/form/FormLabel/FormLabel.cjs +2 -0
  92. package/dist/components/form/FormLabel/FormLabel.cjs.map +1 -0
  93. package/dist/components/form/FormLabel/FormLabel.js +68 -0
  94. package/dist/components/form/FormLabel/FormLabel.js.map +1 -0
  95. package/dist/components/form/Input/Input.cjs +2 -0
  96. package/dist/components/form/Input/Input.cjs.map +1 -0
  97. package/dist/components/form/Input/Input.js +155 -0
  98. package/dist/components/form/Input/Input.js.map +1 -0
  99. package/dist/components/form/Radio/Radio.cjs +2 -0
  100. package/dist/components/form/Radio/Radio.cjs.map +1 -0
  101. package/dist/components/form/Radio/Radio.js +162 -0
  102. package/dist/components/form/Radio/Radio.js.map +1 -0
  103. package/dist/components/form/Select/Select.cjs +2 -0
  104. package/dist/components/form/Select/Select.cjs.map +1 -0
  105. package/dist/components/form/Select/Select.js +114 -0
  106. package/dist/components/form/Select/Select.js.map +1 -0
  107. package/dist/components/form/Slider/Slider.cjs +2 -0
  108. package/dist/components/form/Slider/Slider.cjs.map +1 -0
  109. package/dist/components/form/Slider/Slider.js +147 -0
  110. package/dist/components/form/Slider/Slider.js.map +1 -0
  111. package/dist/components/form/Switch/Switch.cjs +2 -0
  112. package/dist/components/form/Switch/Switch.cjs.map +1 -0
  113. package/dist/components/form/Switch/Switch.js +118 -0
  114. package/dist/components/form/Switch/Switch.js.map +1 -0
  115. package/dist/components/form/TextField/TextField.cjs +2 -0
  116. package/dist/components/form/TextField/TextField.cjs.map +1 -0
  117. package/dist/components/form/TextField/TextField.js +89 -0
  118. package/dist/components/form/TextField/TextField.js.map +1 -0
  119. package/dist/components/form/Textarea/Textarea.cjs +2 -0
  120. package/dist/components/form/Textarea/Textarea.cjs.map +1 -0
  121. package/dist/components/form/Textarea/Textarea.js +121 -0
  122. package/dist/components/form/Textarea/Textarea.js.map +1 -0
  123. package/dist/components/form.cjs +2 -0
  124. package/dist/components/form.cjs.map +1 -0
  125. package/dist/components/form.d.ts +2 -0
  126. package/dist/components/form.js +34 -0
  127. package/dist/components/form.js.map +1 -0
  128. package/dist/components/layout/AspectRatio/AspectRatio.cjs +2 -0
  129. package/dist/components/layout/AspectRatio/AspectRatio.cjs.map +1 -0
  130. package/dist/components/layout/AspectRatio/AspectRatio.js +50 -0
  131. package/dist/components/layout/AspectRatio/AspectRatio.js.map +1 -0
  132. package/dist/components/layout/Box/Box.cjs +2 -0
  133. package/dist/components/layout/Box/Box.cjs.map +1 -0
  134. package/dist/components/layout/Box/Box.js +58 -0
  135. package/dist/components/layout/Box/Box.js.map +1 -0
  136. package/dist/components/layout/Box/Box.styles.cjs +2 -0
  137. package/dist/components/layout/Box/Box.styles.cjs.map +1 -0
  138. package/dist/components/layout/Box/Box.styles.js +30 -0
  139. package/dist/components/layout/Box/Box.styles.js.map +1 -0
  140. package/dist/components/layout/Card/Card.cjs +2 -0
  141. package/dist/components/layout/Card/Card.cjs.map +1 -0
  142. package/dist/components/layout/Card/Card.js +135 -0
  143. package/dist/components/layout/Card/Card.js.map +1 -0
  144. package/dist/components/layout/Container/Container.cjs +2 -0
  145. package/dist/components/layout/Container/Container.cjs.map +1 -0
  146. package/dist/components/layout/Container/Container.js +57 -0
  147. package/dist/components/layout/Container/Container.js.map +1 -0
  148. package/dist/components/layout/Flex/Flex.cjs +2 -0
  149. package/dist/components/layout/Flex/Flex.cjs.map +1 -0
  150. package/dist/components/layout/Flex/Flex.js +101 -0
  151. package/dist/components/layout/Flex/Flex.js.map +1 -0
  152. package/dist/components/layout/Grid/Grid.cjs +2 -0
  153. package/dist/components/layout/Grid/Grid.cjs.map +1 -0
  154. package/dist/components/layout/Grid/Grid.js +92 -0
  155. package/dist/components/layout/Grid/Grid.js.map +1 -0
  156. package/dist/components/layout/Section/Section.cjs +2 -0
  157. package/dist/components/layout/Section/Section.cjs.map +1 -0
  158. package/dist/components/layout/Section/Section.js +85 -0
  159. package/dist/components/layout/Section/Section.js.map +1 -0
  160. package/dist/components/layout/Semantic/Semantic.cjs +2 -0
  161. package/dist/components/layout/Semantic/Semantic.cjs.map +1 -0
  162. package/dist/components/layout/Semantic/Semantic.js +103 -0
  163. package/dist/components/layout/Semantic/Semantic.js.map +1 -0
  164. package/dist/components/layout/Spacer/Spacer.cjs +2 -0
  165. package/dist/components/layout/Spacer/Spacer.cjs.map +1 -0
  166. package/dist/components/layout/Spacer/Spacer.js +38 -0
  167. package/dist/components/layout/Spacer/Spacer.js.map +1 -0
  168. package/dist/components/layout/Stack/Stack.cjs +2 -0
  169. package/dist/components/layout/Stack/Stack.cjs.map +1 -0
  170. package/dist/components/layout/Stack/Stack.js +67 -0
  171. package/dist/components/layout/Stack/Stack.js.map +1 -0
  172. package/dist/components/layout.cjs +2 -0
  173. package/dist/components/layout.cjs.map +1 -0
  174. package/dist/components/layout.d.ts +2 -0
  175. package/dist/components/layout.js +35 -0
  176. package/dist/components/layout.js.map +1 -0
  177. package/dist/components/media/Image/Image.cjs +2 -0
  178. package/dist/components/media/Image/Image.cjs.map +1 -0
  179. package/dist/components/media/Image/Image.js +171 -0
  180. package/dist/components/media/Image/Image.js.map +1 -0
  181. package/dist/components/media/ImageThumbnail/ImageThumbnail.cjs +2 -0
  182. package/dist/components/media/ImageThumbnail/ImageThumbnail.cjs.map +1 -0
  183. package/dist/components/media/ImageThumbnail/ImageThumbnail.js +112 -0
  184. package/dist/components/media/ImageThumbnail/ImageThumbnail.js.map +1 -0
  185. package/dist/components/media/Video/Video.cjs +2 -0
  186. package/dist/components/media/Video/Video.cjs.map +1 -0
  187. package/dist/components/media/Video/Video.js +185 -0
  188. package/dist/components/media/Video/Video.js.map +1 -0
  189. package/dist/components/navigation/Accordion/Accordion.cjs +2 -0
  190. package/dist/components/navigation/Accordion/Accordion.cjs.map +1 -0
  191. package/dist/components/navigation/Accordion/Accordion.js +180 -0
  192. package/dist/components/navigation/Accordion/Accordion.js.map +1 -0
  193. package/dist/components/navigation/Breadcrumb/Breadcrumb.cjs +2 -0
  194. package/dist/components/navigation/Breadcrumb/Breadcrumb.cjs.map +1 -0
  195. package/dist/components/navigation/Breadcrumb/Breadcrumb.js +137 -0
  196. package/dist/components/navigation/Breadcrumb/Breadcrumb.js.map +1 -0
  197. package/dist/components/navigation/Dropdown/Dropdown.cjs +7 -0
  198. package/dist/components/navigation/Dropdown/Dropdown.cjs.map +1 -0
  199. package/dist/components/navigation/Dropdown/Dropdown.js +259 -0
  200. package/dist/components/navigation/Dropdown/Dropdown.js.map +1 -0
  201. package/dist/components/navigation/Menu/Menu.cjs +2 -0
  202. package/dist/components/navigation/Menu/Menu.cjs.map +1 -0
  203. package/dist/components/navigation/Menu/Menu.js +151 -0
  204. package/dist/components/navigation/Menu/Menu.js.map +1 -0
  205. package/dist/components/navigation/Pagination/Pagination.cjs +2 -0
  206. package/dist/components/navigation/Pagination/Pagination.cjs.map +1 -0
  207. package/dist/components/navigation/Pagination/Pagination.js +201 -0
  208. package/dist/components/navigation/Pagination/Pagination.js.map +1 -0
  209. package/dist/components/navigation/Tabs/Tabs.cjs +7 -0
  210. package/dist/components/navigation/Tabs/Tabs.cjs.map +1 -0
  211. package/dist/components/navigation/Tabs/Tabs.js +196 -0
  212. package/dist/components/navigation/Tabs/Tabs.js.map +1 -0
  213. package/dist/components/navigation.cjs +2 -0
  214. package/dist/components/navigation.cjs.map +1 -0
  215. package/dist/components/navigation.d.ts +2 -0
  216. package/dist/components/navigation.js +29 -0
  217. package/dist/components/navigation.js.map +1 -0
  218. package/dist/components/primitives/Button/Button.cjs +2 -0
  219. package/dist/components/primitives/Button/Button.cjs.map +1 -0
  220. package/dist/components/primitives/Button/Button.js +173 -0
  221. package/dist/components/primitives/Button/Button.js.map +1 -0
  222. package/dist/components/primitives/Button/Button.styles.cjs +2 -0
  223. package/dist/components/primitives/Button/Button.styles.cjs.map +1 -0
  224. package/dist/components/primitives/Button/Button.styles.js +321 -0
  225. package/dist/components/primitives/Button/Button.styles.js.map +1 -0
  226. package/dist/components/primitives/Icon/Icon.cjs +2 -0
  227. package/dist/components/primitives/Icon/Icon.cjs.map +1 -0
  228. package/dist/components/primitives/Icon/Icon.js +58 -0
  229. package/dist/components/primitives/Icon/Icon.js.map +1 -0
  230. package/dist/components/primitives/Icon/iconPaths.cjs +2 -0
  231. package/dist/components/primitives/Icon/iconPaths.cjs.map +1 -0
  232. package/dist/components/primitives/Icon/iconPaths.js +63 -0
  233. package/dist/components/primitives/Icon/iconPaths.js.map +1 -0
  234. package/dist/components/typography/Heading/Heading.cjs +2 -0
  235. package/dist/components/typography/Heading/Heading.cjs.map +1 -0
  236. package/dist/components/typography/Heading/Heading.js +65 -0
  237. package/dist/components/typography/Heading/Heading.js.map +1 -0
  238. package/dist/components/typography/Text/Text.cjs +2 -0
  239. package/dist/components/typography/Text/Text.cjs.map +1 -0
  240. package/dist/components/typography/Text/Text.js +88 -0
  241. package/dist/components/typography/Text/Text.js.map +1 -0
  242. package/dist/components/utility/Avatar/Avatar.cjs +2 -0
  243. package/dist/components/utility/Avatar/Avatar.cjs.map +1 -0
  244. package/dist/components/utility/Avatar/Avatar.js +91 -0
  245. package/dist/components/utility/Avatar/Avatar.js.map +1 -0
  246. package/dist/components/utility/Badge/Badge.cjs +2 -0
  247. package/dist/components/utility/Badge/Badge.cjs.map +1 -0
  248. package/dist/components/utility/Badge/Badge.js +90 -0
  249. package/dist/components/utility/Badge/Badge.js.map +1 -0
  250. package/dist/components/utility/Divider/Divider.cjs +2 -0
  251. package/dist/components/utility/Divider/Divider.cjs.map +1 -0
  252. package/dist/components/utility/Divider/Divider.js +87 -0
  253. package/dist/components/utility/Divider/Divider.js.map +1 -0
  254. package/dist/components/utility/EmptyState/EmptyState.cjs +2 -0
  255. package/dist/components/utility/EmptyState/EmptyState.cjs.map +1 -0
  256. package/dist/components/utility/EmptyState/EmptyState.js +132 -0
  257. package/dist/components/utility/EmptyState/EmptyState.js.map +1 -0
  258. package/dist/components/utility/FocusTrap/FocusTrap.cjs +2 -0
  259. package/dist/components/utility/FocusTrap/FocusTrap.cjs.map +1 -0
  260. package/dist/components/utility/FocusTrap/FocusTrap.js +35 -0
  261. package/dist/components/utility/FocusTrap/FocusTrap.js.map +1 -0
  262. package/dist/components/utility/Loader/Loader.cjs +2 -0
  263. package/dist/components/utility/Loader/Loader.cjs.map +1 -0
  264. package/dist/components/utility/Loader/Loader.js +142 -0
  265. package/dist/components/utility/Loader/Loader.js.map +1 -0
  266. package/dist/components/utility/Logo/Logo.cjs +2 -0
  267. package/dist/components/utility/Logo/Logo.cjs.map +1 -0
  268. package/dist/components/utility/Logo/Logo.js +61 -0
  269. package/dist/components/utility/Logo/Logo.js.map +1 -0
  270. package/dist/components/utility/Overlay/Overlay.cjs +7 -0
  271. package/dist/components/utility/Overlay/Overlay.cjs.map +1 -0
  272. package/dist/components/utility/Overlay/Overlay.js +59 -0
  273. package/dist/components/utility/Overlay/Overlay.js.map +1 -0
  274. package/dist/components/utility/Portal/Portal.cjs +2 -0
  275. package/dist/components/utility/Portal/Portal.cjs.map +1 -0
  276. package/dist/components/utility/Portal/Portal.js +18 -0
  277. package/dist/components/utility/Portal/Portal.js.map +1 -0
  278. package/dist/components/utility/ScreenReaderOnly/ScreenReaderOnly.cjs +2 -0
  279. package/dist/components/utility/ScreenReaderOnly/ScreenReaderOnly.cjs.map +1 -0
  280. package/dist/components/utility/ScreenReaderOnly/ScreenReaderOnly.js +53 -0
  281. package/dist/components/utility/ScreenReaderOnly/ScreenReaderOnly.js.map +1 -0
  282. package/dist/components/utility/Skeleton/Skeleton.cjs +2 -0
  283. package/dist/components/utility/Skeleton/Skeleton.cjs.map +1 -0
  284. package/dist/components/utility/Skeleton/Skeleton.js +91 -0
  285. package/dist/components/utility/Skeleton/Skeleton.js.map +1 -0
  286. package/dist/components/utility.cjs +2 -0
  287. package/dist/components/utility.cjs.map +1 -0
  288. package/dist/components/utility.d.ts +2 -0
  289. package/dist/components/utility.js +29 -0
  290. package/dist/components/utility.js.map +1 -0
  291. package/dist/data.d.ts +198 -0
  292. package/dist/design-system/primitives/focus.cjs +2 -0
  293. package/dist/design-system/primitives/focus.cjs.map +1 -0
  294. package/dist/design-system/primitives/focus.js +42 -0
  295. package/dist/design-system/primitives/focus.js.map +1 -0
  296. package/dist/design-system/primitives/layout.cjs +2 -0
  297. package/dist/design-system/primitives/layout.cjs.map +1 -0
  298. package/dist/design-system/primitives/layout.js +79 -0
  299. package/dist/design-system/primitives/layout.js.map +1 -0
  300. package/dist/design-system/primitives/opacity.cjs +2 -0
  301. package/dist/design-system/primitives/opacity.cjs.map +1 -0
  302. package/dist/design-system/primitives/opacity.js +72 -0
  303. package/dist/design-system/primitives/opacity.js.map +1 -0
  304. package/dist/design-system/primitives/sizing.cjs +2 -0
  305. package/dist/design-system/primitives/sizing.cjs.map +1 -0
  306. package/dist/design-system/primitives/sizing.js +118 -0
  307. package/dist/design-system/primitives/sizing.js.map +1 -0
  308. package/dist/design-system/primitives/transitions.cjs +52 -0
  309. package/dist/design-system/primitives/transitions.cjs.map +1 -0
  310. package/dist/design-system/primitives/transitions.js +121 -0
  311. package/dist/design-system/primitives/transitions.js.map +1 -0
  312. package/dist/design-system/primitives/typography.cjs +2 -0
  313. package/dist/design-system/primitives/typography.cjs.map +1 -0
  314. package/dist/design-system/primitives/typography.js +146 -0
  315. package/dist/design-system/primitives/typography.js.map +1 -0
  316. package/dist/design-system/themes/ThemeProvider.cjs +2 -0
  317. package/dist/design-system/themes/ThemeProvider.cjs.map +1 -0
  318. package/dist/design-system/themes/ThemeProvider.js +78 -0
  319. package/dist/design-system/themes/ThemeProvider.js.map +1 -0
  320. package/dist/design-system/themes/cssVariables.cjs +2 -0
  321. package/dist/design-system/themes/cssVariables.cjs.map +1 -0
  322. package/dist/design-system/themes/cssVariables.js +57 -0
  323. package/dist/design-system/themes/cssVariables.js.map +1 -0
  324. package/dist/design-system/themes/darkTheme.cjs +2 -0
  325. package/dist/design-system/themes/darkTheme.cjs.map +1 -0
  326. package/dist/design-system/themes/darkTheme.js +76 -0
  327. package/dist/design-system/themes/darkTheme.js.map +1 -0
  328. package/dist/design-system/themes/lightTheme.cjs +2 -0
  329. package/dist/design-system/themes/lightTheme.cjs.map +1 -0
  330. package/dist/design-system/themes/lightTheme.js +76 -0
  331. package/dist/design-system/themes/lightTheme.js.map +1 -0
  332. package/dist/design-system/tokens/borders.cjs +2 -0
  333. package/dist/design-system/tokens/borders.cjs.map +1 -0
  334. package/dist/design-system/tokens/borders.js +78 -0
  335. package/dist/design-system/tokens/borders.js.map +1 -0
  336. package/dist/design-system/tokens/breakpoints.cjs +2 -0
  337. package/dist/design-system/tokens/breakpoints.cjs.map +1 -0
  338. package/dist/design-system/tokens/breakpoints.js +58 -0
  339. package/dist/design-system/tokens/breakpoints.js.map +1 -0
  340. package/dist/design-system/tokens/colors.cjs +2 -0
  341. package/dist/design-system/tokens/colors.cjs.map +1 -0
  342. package/dist/{colors-B_8a3coi.js → design-system/tokens/colors.js} +16 -16
  343. package/dist/design-system/tokens/colors.js.map +1 -0
  344. package/dist/design-system/tokens/motion.cjs +2 -0
  345. package/dist/design-system/tokens/motion.cjs.map +1 -0
  346. package/dist/design-system/tokens/motion.js +133 -0
  347. package/dist/design-system/tokens/motion.js.map +1 -0
  348. package/dist/design-system/tokens/shadows.cjs +2 -0
  349. package/dist/design-system/tokens/shadows.cjs.map +1 -0
  350. package/dist/design-system/tokens/shadows.js +46 -0
  351. package/dist/design-system/tokens/shadows.js.map +1 -0
  352. package/dist/design-system/tokens/spacing.cjs +2 -0
  353. package/dist/design-system/tokens/spacing.cjs.map +1 -0
  354. package/dist/design-system/tokens/spacing.js +96 -0
  355. package/dist/design-system/tokens/spacing.js.map +1 -0
  356. package/dist/design-system/tokens/typography.cjs +2 -0
  357. package/dist/design-system/tokens/typography.cjs.map +1 -0
  358. package/dist/design-system/tokens/typography.js +199 -0
  359. package/dist/design-system/tokens/typography.js.map +1 -0
  360. package/dist/design-system/tokens/zIndex.cjs +2 -0
  361. package/dist/design-system/tokens/zIndex.cjs.map +1 -0
  362. package/dist/design-system/tokens/zIndex.js +32 -0
  363. package/dist/design-system/tokens/zIndex.js.map +1 -0
  364. package/dist/feedback.d.ts +244 -0
  365. package/dist/form.d.ts +415 -0
  366. package/dist/hooks/useClickOutside.cjs +2 -0
  367. package/dist/hooks/useClickOutside.cjs.map +1 -0
  368. package/dist/hooks/useClickOutside.js +18 -0
  369. package/dist/hooks/useClickOutside.js.map +1 -0
  370. package/dist/hooks/useControllable.cjs +2 -0
  371. package/dist/hooks/useControllable.cjs.map +1 -0
  372. package/dist/hooks/useControllable.js +25 -0
  373. package/dist/hooks/useControllable.js.map +1 -0
  374. package/dist/hooks/useDisclosure.cjs +2 -0
  375. package/dist/hooks/useDisclosure.cjs.map +1 -0
  376. package/dist/hooks/useDisclosure.js +22 -0
  377. package/dist/hooks/useDisclosure.js.map +1 -0
  378. package/dist/hooks/useFocusTrap.cjs +2 -0
  379. package/dist/hooks/useFocusTrap.cjs.map +1 -0
  380. package/dist/hooks/useFocusTrap.js +56 -0
  381. package/dist/hooks/useFocusTrap.js.map +1 -0
  382. package/dist/hooks/useId.cjs +2 -0
  383. package/dist/hooks/useId.cjs.map +1 -0
  384. package/dist/hooks/useId.js +22 -0
  385. package/dist/hooks/useId.js.map +1 -0
  386. package/dist/hooks/useKeyboardNavigation.cjs +2 -0
  387. package/dist/hooks/useKeyboardNavigation.cjs.map +1 -0
  388. package/dist/hooks/useKeyboardNavigation.js +82 -0
  389. package/dist/hooks/useKeyboardNavigation.js.map +1 -0
  390. package/dist/hooks/useMediaQuery.cjs +2 -0
  391. package/dist/hooks/useMediaQuery.cjs.map +1 -0
  392. package/dist/hooks/useMediaQuery.js +33 -0
  393. package/dist/hooks/useMediaQuery.js.map +1 -0
  394. package/dist/hooks.cjs +2 -0
  395. package/dist/hooks.cjs.map +1 -0
  396. package/dist/hooks.d.ts +146 -0
  397. package/dist/hooks.js +23 -0
  398. package/dist/hooks.js.map +1 -0
  399. package/dist/index.cjs +1 -148
  400. package/dist/index.cjs.map +1 -1
  401. package/dist/index.d.ts +4311 -141
  402. package/dist/index.js +291 -8305
  403. package/dist/index.js.map +1 -1
  404. package/dist/layout.d.ts +543 -0
  405. package/dist/navigation.d.ts +290 -0
  406. package/dist/styles.css +1 -1
  407. package/dist/themes.cjs +1 -1
  408. package/dist/themes.d.ts +214 -2
  409. package/dist/themes.js +11 -8
  410. package/dist/themes.js.map +1 -1
  411. package/dist/tokens.cjs +1 -1
  412. package/dist/tokens.cjs.map +1 -1
  413. package/dist/tokens.d.ts +976 -2
  414. package/dist/tokens.js +38 -624
  415. package/dist/tokens.js.map +1 -1
  416. package/dist/utility.d.ts +259 -0
  417. package/dist/utils/lazyComponent.cjs +2 -0
  418. package/dist/utils/lazyComponent.cjs.map +1 -0
  419. package/dist/utils/lazyComponent.js +26 -0
  420. package/dist/utils/lazyComponent.js.map +1 -0
  421. package/dist/utils/styles.cjs +2 -0
  422. package/dist/utils/styles.cjs.map +1 -0
  423. package/dist/utils/styles.js +35 -0
  424. package/dist/utils/styles.js.map +1 -0
  425. package/package.json +37 -1
  426. package/dist/colors-B_8a3coi.js.map +0 -1
  427. package/dist/colors-Bp6ROxvx.cjs +0 -2
  428. package/dist/colors-Bp6ROxvx.cjs.map +0 -1
  429. package/dist/components/data/InfoItem/InfoItem.d.ts +0 -44
  430. package/dist/components/data/InfoItem/InfoItem.d.ts.map +0 -1
  431. package/dist/components/data/InfoItem/index.d.ts +0 -2
  432. package/dist/components/data/InfoItem/index.d.ts.map +0 -1
  433. package/dist/components/data/List/List.d.ts +0 -44
  434. package/dist/components/data/List/List.d.ts.map +0 -1
  435. package/dist/components/data/List/index.d.ts +0 -3
  436. package/dist/components/data/List/index.d.ts.map +0 -1
  437. package/dist/components/data/Table/Table.d.ts +0 -74
  438. package/dist/components/data/Table/Table.d.ts.map +0 -1
  439. package/dist/components/data/Table/index.d.ts +0 -3
  440. package/dist/components/data/Table/index.d.ts.map +0 -1
  441. package/dist/components/data/index.d.ts +0 -7
  442. package/dist/components/data/index.d.ts.map +0 -1
  443. package/dist/components/feedback/Alert/Alert.d.ts +0 -29
  444. package/dist/components/feedback/Alert/Alert.d.ts.map +0 -1
  445. package/dist/components/feedback/Alert/index.d.ts +0 -3
  446. package/dist/components/feedback/Alert/index.d.ts.map +0 -1
  447. package/dist/components/feedback/Drawer/Drawer.d.ts +0 -29
  448. package/dist/components/feedback/Drawer/Drawer.d.ts.map +0 -1
  449. package/dist/components/feedback/Drawer/index.d.ts +0 -3
  450. package/dist/components/feedback/Drawer/index.d.ts.map +0 -1
  451. package/dist/components/feedback/Modal/Modal.d.ts +0 -28
  452. package/dist/components/feedback/Modal/Modal.d.ts.map +0 -1
  453. package/dist/components/feedback/Modal/index.d.ts +0 -3
  454. package/dist/components/feedback/Modal/index.d.ts.map +0 -1
  455. package/dist/components/feedback/Popover/Popover.d.ts +0 -35
  456. package/dist/components/feedback/Popover/Popover.d.ts.map +0 -1
  457. package/dist/components/feedback/Popover/index.d.ts +0 -3
  458. package/dist/components/feedback/Popover/index.d.ts.map +0 -1
  459. package/dist/components/feedback/Progress/Progress.d.ts +0 -30
  460. package/dist/components/feedback/Progress/Progress.d.ts.map +0 -1
  461. package/dist/components/feedback/Progress/index.d.ts +0 -3
  462. package/dist/components/feedback/Progress/index.d.ts.map +0 -1
  463. package/dist/components/feedback/Toast/Toast.d.ts +0 -47
  464. package/dist/components/feedback/Toast/Toast.d.ts.map +0 -1
  465. package/dist/components/feedback/Toast/index.d.ts +0 -3
  466. package/dist/components/feedback/Toast/index.d.ts.map +0 -1
  467. package/dist/components/feedback/Tooltip/Tooltip.d.ts +0 -20
  468. package/dist/components/feedback/Tooltip/Tooltip.d.ts.map +0 -1
  469. package/dist/components/feedback/Tooltip/index.d.ts +0 -3
  470. package/dist/components/feedback/Tooltip/index.d.ts.map +0 -1
  471. package/dist/components/feedback/index.d.ts +0 -13
  472. package/dist/components/feedback/index.d.ts.map +0 -1
  473. package/dist/components/form/Checkbox/Checkbox.d.ts +0 -20
  474. package/dist/components/form/Checkbox/Checkbox.d.ts.map +0 -1
  475. package/dist/components/form/Checkbox/index.d.ts +0 -3
  476. package/dist/components/form/Checkbox/index.d.ts.map +0 -1
  477. package/dist/components/form/DateInput/DateInput.d.ts +0 -28
  478. package/dist/components/form/DateInput/DateInput.d.ts.map +0 -1
  479. package/dist/components/form/DateInput/index.d.ts +0 -3
  480. package/dist/components/form/DateInput/index.d.ts.map +0 -1
  481. package/dist/components/form/DropZone/DropZone.d.ts +0 -27
  482. package/dist/components/form/DropZone/DropZone.d.ts.map +0 -1
  483. package/dist/components/form/DropZone/index.d.ts +0 -2
  484. package/dist/components/form/DropZone/index.d.ts.map +0 -1
  485. package/dist/components/form/FieldError/FieldError.d.ts +0 -18
  486. package/dist/components/form/FieldError/FieldError.d.ts.map +0 -1
  487. package/dist/components/form/FieldError/index.d.ts +0 -3
  488. package/dist/components/form/FieldError/index.d.ts.map +0 -1
  489. package/dist/components/form/FileInput/FileInput.d.ts +0 -33
  490. package/dist/components/form/FileInput/FileInput.d.ts.map +0 -1
  491. package/dist/components/form/FileInput/index.d.ts +0 -3
  492. package/dist/components/form/FileInput/index.d.ts.map +0 -1
  493. package/dist/components/form/Form/Form.d.ts +0 -16
  494. package/dist/components/form/Form/Form.d.ts.map +0 -1
  495. package/dist/components/form/Form/index.d.ts +0 -2
  496. package/dist/components/form/Form/index.d.ts.map +0 -1
  497. package/dist/components/form/FormCard/FormCard.d.ts +0 -20
  498. package/dist/components/form/FormCard/FormCard.d.ts.map +0 -1
  499. package/dist/components/form/FormCard/index.d.ts +0 -2
  500. package/dist/components/form/FormCard/index.d.ts.map +0 -1
  501. package/dist/components/form/FormField/FormField.d.ts +0 -36
  502. package/dist/components/form/FormField/FormField.d.ts.map +0 -1
  503. package/dist/components/form/FormField/index.d.ts +0 -3
  504. package/dist/components/form/FormField/index.d.ts.map +0 -1
  505. package/dist/components/form/FormGroup/FormGroup.d.ts +0 -31
  506. package/dist/components/form/FormGroup/FormGroup.d.ts.map +0 -1
  507. package/dist/components/form/FormGroup/index.d.ts +0 -2
  508. package/dist/components/form/FormGroup/index.d.ts.map +0 -1
  509. package/dist/components/form/FormLabel/FormLabel.d.ts +0 -20
  510. package/dist/components/form/FormLabel/FormLabel.d.ts.map +0 -1
  511. package/dist/components/form/FormLabel/index.d.ts +0 -2
  512. package/dist/components/form/FormLabel/index.d.ts.map +0 -1
  513. package/dist/components/form/Input/Input.d.ts +0 -21
  514. package/dist/components/form/Input/Input.d.ts.map +0 -1
  515. package/dist/components/form/Input/index.d.ts +0 -3
  516. package/dist/components/form/Input/index.d.ts.map +0 -1
  517. package/dist/components/form/Radio/Radio.d.ts +0 -46
  518. package/dist/components/form/Radio/Radio.d.ts.map +0 -1
  519. package/dist/components/form/Radio/index.d.ts +0 -3
  520. package/dist/components/form/Radio/index.d.ts.map +0 -1
  521. package/dist/components/form/Select/Select.d.ts +0 -21
  522. package/dist/components/form/Select/Select.d.ts.map +0 -1
  523. package/dist/components/form/Select/index.d.ts +0 -3
  524. package/dist/components/form/Select/index.d.ts.map +0 -1
  525. package/dist/components/form/Slider/Slider.d.ts +0 -32
  526. package/dist/components/form/Slider/Slider.d.ts.map +0 -1
  527. package/dist/components/form/Slider/index.d.ts +0 -3
  528. package/dist/components/form/Slider/index.d.ts.map +0 -1
  529. package/dist/components/form/Switch/Switch.d.ts +0 -16
  530. package/dist/components/form/Switch/Switch.d.ts.map +0 -1
  531. package/dist/components/form/Switch/index.d.ts +0 -3
  532. package/dist/components/form/Switch/index.d.ts.map +0 -1
  533. package/dist/components/form/TextField/TextField.d.ts +0 -16
  534. package/dist/components/form/TextField/TextField.d.ts.map +0 -1
  535. package/dist/components/form/TextField/index.d.ts +0 -3
  536. package/dist/components/form/TextField/index.d.ts.map +0 -1
  537. package/dist/components/form/Textarea/Textarea.d.ts +0 -27
  538. package/dist/components/form/Textarea/Textarea.d.ts.map +0 -1
  539. package/dist/components/form/Textarea/index.d.ts +0 -3
  540. package/dist/components/form/Textarea/index.d.ts.map +0 -1
  541. package/dist/components/form/index.d.ts +0 -21
  542. package/dist/components/form/index.d.ts.map +0 -1
  543. package/dist/components/index.d.ts +0 -12
  544. package/dist/components/index.d.ts.map +0 -1
  545. package/dist/components/layout/AspectRatio/AspectRatio.d.ts +0 -19
  546. package/dist/components/layout/AspectRatio/AspectRatio.d.ts.map +0 -1
  547. package/dist/components/layout/AspectRatio/index.d.ts +0 -2
  548. package/dist/components/layout/AspectRatio/index.d.ts.map +0 -1
  549. package/dist/components/layout/Box/Box.d.ts +0 -11
  550. package/dist/components/layout/Box/Box.d.ts.map +0 -1
  551. package/dist/components/layout/Box/Box.styles.d.ts +0 -4
  552. package/dist/components/layout/Box/Box.styles.d.ts.map +0 -1
  553. package/dist/components/layout/Box/Box.types.d.ts +0 -38
  554. package/dist/components/layout/Box/Box.types.d.ts.map +0 -1
  555. package/dist/components/layout/Box/index.d.ts +0 -3
  556. package/dist/components/layout/Box/index.d.ts.map +0 -1
  557. package/dist/components/layout/Card/Card.d.ts +0 -40
  558. package/dist/components/layout/Card/Card.d.ts.map +0 -1
  559. package/dist/components/layout/Card/index.d.ts +0 -3
  560. package/dist/components/layout/Card/index.d.ts.map +0 -1
  561. package/dist/components/layout/Container/Container.d.ts +0 -31
  562. package/dist/components/layout/Container/Container.d.ts.map +0 -1
  563. package/dist/components/layout/Container/index.d.ts +0 -3
  564. package/dist/components/layout/Container/index.d.ts.map +0 -1
  565. package/dist/components/layout/Flex/Flex.d.ts +0 -63
  566. package/dist/components/layout/Flex/Flex.d.ts.map +0 -1
  567. package/dist/components/layout/Flex/index.d.ts +0 -3
  568. package/dist/components/layout/Flex/index.d.ts.map +0 -1
  569. package/dist/components/layout/Grid/Grid.d.ts +0 -80
  570. package/dist/components/layout/Grid/Grid.d.ts.map +0 -1
  571. package/dist/components/layout/Grid/index.d.ts +0 -3
  572. package/dist/components/layout/Grid/index.d.ts.map +0 -1
  573. package/dist/components/layout/Section/Section.d.ts +0 -22
  574. package/dist/components/layout/Section/Section.d.ts.map +0 -1
  575. package/dist/components/layout/Section/index.d.ts +0 -3
  576. package/dist/components/layout/Section/index.d.ts.map +0 -1
  577. package/dist/components/layout/Semantic/Semantic.d.ts +0 -32
  578. package/dist/components/layout/Semantic/Semantic.d.ts.map +0 -1
  579. package/dist/components/layout/Semantic/index.d.ts +0 -3
  580. package/dist/components/layout/Semantic/index.d.ts.map +0 -1
  581. package/dist/components/layout/Spacer/Spacer.d.ts +0 -18
  582. package/dist/components/layout/Spacer/Spacer.d.ts.map +0 -1
  583. package/dist/components/layout/Spacer/index.d.ts +0 -3
  584. package/dist/components/layout/Spacer/index.d.ts.map +0 -1
  585. package/dist/components/layout/Stack/Stack.d.ts +0 -13
  586. package/dist/components/layout/Stack/Stack.d.ts.map +0 -1
  587. package/dist/components/layout/Stack/Stack.types.d.ts +0 -33
  588. package/dist/components/layout/Stack/Stack.types.d.ts.map +0 -1
  589. package/dist/components/layout/Stack/index.d.ts +0 -3
  590. package/dist/components/layout/Stack/index.d.ts.map +0 -1
  591. package/dist/components/layout/index.d.ts +0 -16
  592. package/dist/components/layout/index.d.ts.map +0 -1
  593. package/dist/components/media/Image/Image.d.ts +0 -33
  594. package/dist/components/media/Image/Image.d.ts.map +0 -1
  595. package/dist/components/media/Image/index.d.ts +0 -2
  596. package/dist/components/media/Image/index.d.ts.map +0 -1
  597. package/dist/components/media/ImageThumbnail/ImageThumbnail.d.ts +0 -27
  598. package/dist/components/media/ImageThumbnail/ImageThumbnail.d.ts.map +0 -1
  599. package/dist/components/media/ImageThumbnail/index.d.ts +0 -2
  600. package/dist/components/media/ImageThumbnail/index.d.ts.map +0 -1
  601. package/dist/components/media/Video/Video.d.ts +0 -67
  602. package/dist/components/media/Video/Video.d.ts.map +0 -1
  603. package/dist/components/media/Video/index.d.ts +0 -2
  604. package/dist/components/media/Video/index.d.ts.map +0 -1
  605. package/dist/components/media/index.d.ts +0 -8
  606. package/dist/components/media/index.d.ts.map +0 -1
  607. package/dist/components/navigation/Accordion/Accordion.d.ts +0 -41
  608. package/dist/components/navigation/Accordion/Accordion.d.ts.map +0 -1
  609. package/dist/components/navigation/Accordion/index.d.ts +0 -3
  610. package/dist/components/navigation/Accordion/index.d.ts.map +0 -1
  611. package/dist/components/navigation/Breadcrumb/Breadcrumb.d.ts +0 -31
  612. package/dist/components/navigation/Breadcrumb/Breadcrumb.d.ts.map +0 -1
  613. package/dist/components/navigation/Breadcrumb/index.d.ts +0 -3
  614. package/dist/components/navigation/Breadcrumb/index.d.ts.map +0 -1
  615. package/dist/components/navigation/Dropdown/Dropdown.d.ts +0 -47
  616. package/dist/components/navigation/Dropdown/Dropdown.d.ts.map +0 -1
  617. package/dist/components/navigation/Dropdown/index.d.ts +0 -3
  618. package/dist/components/navigation/Dropdown/index.d.ts.map +0 -1
  619. package/dist/components/navigation/Menu/Menu.d.ts +0 -45
  620. package/dist/components/navigation/Menu/Menu.d.ts.map +0 -1
  621. package/dist/components/navigation/Menu/index.d.ts +0 -3
  622. package/dist/components/navigation/Menu/index.d.ts.map +0 -1
  623. package/dist/components/navigation/Pagination/Pagination.d.ts +0 -29
  624. package/dist/components/navigation/Pagination/Pagination.d.ts.map +0 -1
  625. package/dist/components/navigation/Pagination/index.d.ts +0 -3
  626. package/dist/components/navigation/Pagination/index.d.ts.map +0 -1
  627. package/dist/components/navigation/Tabs/Tabs.d.ts +0 -52
  628. package/dist/components/navigation/Tabs/Tabs.d.ts.map +0 -1
  629. package/dist/components/navigation/Tabs/index.d.ts +0 -3
  630. package/dist/components/navigation/Tabs/index.d.ts.map +0 -1
  631. package/dist/components/navigation/index.d.ts +0 -10
  632. package/dist/components/navigation/index.d.ts.map +0 -1
  633. package/dist/components/primitives/Button/Button.d.ts +0 -12
  634. package/dist/components/primitives/Button/Button.d.ts.map +0 -1
  635. package/dist/components/primitives/Button/Button.styles.d.ts +0 -29
  636. package/dist/components/primitives/Button/Button.styles.d.ts.map +0 -1
  637. package/dist/components/primitives/Button/Button.types.d.ts +0 -37
  638. package/dist/components/primitives/Button/Button.types.d.ts.map +0 -1
  639. package/dist/components/primitives/Button/index.d.ts +0 -3
  640. package/dist/components/primitives/Button/index.d.ts.map +0 -1
  641. package/dist/components/primitives/Icon/Icon.d.ts +0 -88
  642. package/dist/components/primitives/Icon/Icon.d.ts.map +0 -1
  643. package/dist/components/primitives/Icon/index.d.ts +0 -3
  644. package/dist/components/primitives/Icon/index.d.ts.map +0 -1
  645. package/dist/components/primitives/index.d.ts +0 -8
  646. package/dist/components/primitives/index.d.ts.map +0 -1
  647. package/dist/components/typography/Heading/Heading.d.ts +0 -38
  648. package/dist/components/typography/Heading/Heading.d.ts.map +0 -1
  649. package/dist/components/typography/Heading/index.d.ts +0 -3
  650. package/dist/components/typography/Heading/index.d.ts.map +0 -1
  651. package/dist/components/typography/Text/Text.d.ts +0 -43
  652. package/dist/components/typography/Text/Text.d.ts.map +0 -1
  653. package/dist/components/typography/Text/index.d.ts +0 -3
  654. package/dist/components/typography/Text/index.d.ts.map +0 -1
  655. package/dist/components/typography/index.d.ts +0 -8
  656. package/dist/components/typography/index.d.ts.map +0 -1
  657. package/dist/components/utility/Avatar/Avatar.d.ts +0 -22
  658. package/dist/components/utility/Avatar/Avatar.d.ts.map +0 -1
  659. package/dist/components/utility/Avatar/index.d.ts +0 -3
  660. package/dist/components/utility/Avatar/index.d.ts.map +0 -1
  661. package/dist/components/utility/Badge/Badge.d.ts +0 -20
  662. package/dist/components/utility/Badge/Badge.d.ts.map +0 -1
  663. package/dist/components/utility/Badge/index.d.ts +0 -3
  664. package/dist/components/utility/Badge/index.d.ts.map +0 -1
  665. package/dist/components/utility/Divider/Divider.d.ts +0 -19
  666. package/dist/components/utility/Divider/Divider.d.ts.map +0 -1
  667. package/dist/components/utility/Divider/index.d.ts +0 -3
  668. package/dist/components/utility/Divider/index.d.ts.map +0 -1
  669. package/dist/components/utility/EmptyState/EmptyState.d.ts +0 -26
  670. package/dist/components/utility/EmptyState/EmptyState.d.ts.map +0 -1
  671. package/dist/components/utility/EmptyState/index.d.ts +0 -3
  672. package/dist/components/utility/EmptyState/index.d.ts.map +0 -1
  673. package/dist/components/utility/FocusTrap/FocusTrap.d.ts +0 -19
  674. package/dist/components/utility/FocusTrap/FocusTrap.d.ts.map +0 -1
  675. package/dist/components/utility/FocusTrap/index.d.ts +0 -3
  676. package/dist/components/utility/FocusTrap/index.d.ts.map +0 -1
  677. package/dist/components/utility/Loader/Loader.d.ts +0 -21
  678. package/dist/components/utility/Loader/Loader.d.ts.map +0 -1
  679. package/dist/components/utility/Loader/index.d.ts +0 -3
  680. package/dist/components/utility/Loader/index.d.ts.map +0 -1
  681. package/dist/components/utility/Logo/Logo.d.ts +0 -14
  682. package/dist/components/utility/Logo/Logo.d.ts.map +0 -1
  683. package/dist/components/utility/Logo/index.d.ts +0 -3
  684. package/dist/components/utility/Logo/index.d.ts.map +0 -1
  685. package/dist/components/utility/Overlay/Overlay.d.ts +0 -25
  686. package/dist/components/utility/Overlay/Overlay.d.ts.map +0 -1
  687. package/dist/components/utility/Overlay/index.d.ts +0 -3
  688. package/dist/components/utility/Overlay/index.d.ts.map +0 -1
  689. package/dist/components/utility/Portal/Portal.d.ts +0 -14
  690. package/dist/components/utility/Portal/Portal.d.ts.map +0 -1
  691. package/dist/components/utility/Portal/index.d.ts +0 -3
  692. package/dist/components/utility/Portal/index.d.ts.map +0 -1
  693. package/dist/components/utility/ScreenReaderOnly/ScreenReaderOnly.d.ts +0 -17
  694. package/dist/components/utility/ScreenReaderOnly/ScreenReaderOnly.d.ts.map +0 -1
  695. package/dist/components/utility/ScreenReaderOnly/index.d.ts +0 -2
  696. package/dist/components/utility/ScreenReaderOnly/index.d.ts.map +0 -1
  697. package/dist/components/utility/Skeleton/Skeleton.d.ts +0 -35
  698. package/dist/components/utility/Skeleton/Skeleton.d.ts.map +0 -1
  699. package/dist/components/utility/Skeleton/index.d.ts +0 -3
  700. package/dist/components/utility/Skeleton/index.d.ts.map +0 -1
  701. package/dist/components/utility/index.d.ts +0 -17
  702. package/dist/components/utility/index.d.ts.map +0 -1
  703. package/dist/cssVariables-BguyVeCi.cjs +0 -2
  704. package/dist/cssVariables-BguyVeCi.cjs.map +0 -1
  705. package/dist/cssVariables-D9uw0uKO.js +0 -273
  706. package/dist/cssVariables-D9uw0uKO.js.map +0 -1
  707. package/dist/design-system/index.d.ts +0 -16
  708. package/dist/design-system/index.d.ts.map +0 -1
  709. package/dist/design-system/primitives/focus.d.ts +0 -67
  710. package/dist/design-system/primitives/focus.d.ts.map +0 -1
  711. package/dist/design-system/primitives/index.d.ts +0 -15
  712. package/dist/design-system/primitives/index.d.ts.map +0 -1
  713. package/dist/design-system/primitives/layout.d.ts +0 -114
  714. package/dist/design-system/primitives/layout.d.ts.map +0 -1
  715. package/dist/design-system/primitives/opacity.d.ts +0 -88
  716. package/dist/design-system/primitives/opacity.d.ts.map +0 -1
  717. package/dist/design-system/primitives/sizing.d.ts +0 -155
  718. package/dist/design-system/primitives/sizing.d.ts.map +0 -1
  719. package/dist/design-system/primitives/transitions.d.ts +0 -92
  720. package/dist/design-system/primitives/transitions.d.ts.map +0 -1
  721. package/dist/design-system/primitives/typography.d.ts +0 -164
  722. package/dist/design-system/primitives/typography.d.ts.map +0 -1
  723. package/dist/design-system/themes/ThemeProvider.d.ts +0 -18
  724. package/dist/design-system/themes/ThemeProvider.d.ts.map +0 -1
  725. package/dist/design-system/themes/cssVariables.d.ts +0 -52
  726. package/dist/design-system/themes/cssVariables.d.ts.map +0 -1
  727. package/dist/design-system/themes/darkTheme.d.ts +0 -3
  728. package/dist/design-system/themes/darkTheme.d.ts.map +0 -1
  729. package/dist/design-system/themes/index.d.ts +0 -11
  730. package/dist/design-system/themes/index.d.ts.map +0 -1
  731. package/dist/design-system/themes/lightTheme.d.ts +0 -3
  732. package/dist/design-system/themes/lightTheme.d.ts.map +0 -1
  733. package/dist/design-system/themes/types.d.ts +0 -134
  734. package/dist/design-system/themes/types.d.ts.map +0 -1
  735. package/dist/design-system/tokens/borders.d.ts +0 -86
  736. package/dist/design-system/tokens/borders.d.ts.map +0 -1
  737. package/dist/design-system/tokens/breakpoints.d.ts +0 -66
  738. package/dist/design-system/tokens/breakpoints.d.ts.map +0 -1
  739. package/dist/design-system/tokens/colors.d.ts +0 -206
  740. package/dist/design-system/tokens/colors.d.ts.map +0 -1
  741. package/dist/design-system/tokens/index.d.ts +0 -23
  742. package/dist/design-system/tokens/index.d.ts.map +0 -1
  743. package/dist/design-system/tokens/motion.d.ts +0 -204
  744. package/dist/design-system/tokens/motion.d.ts.map +0 -1
  745. package/dist/design-system/tokens/shadows.d.ts +0 -55
  746. package/dist/design-system/tokens/shadows.d.ts.map +0 -1
  747. package/dist/design-system/tokens/spacing.d.ts +0 -104
  748. package/dist/design-system/tokens/spacing.d.ts.map +0 -1
  749. package/dist/design-system/tokens/typography.d.ts +0 -214
  750. package/dist/design-system/tokens/typography.d.ts.map +0 -1
  751. package/dist/design-system/tokens/zIndex.d.ts +0 -36
  752. package/dist/design-system/tokens/zIndex.d.ts.map +0 -1
  753. package/dist/hooks/index.d.ts +0 -13
  754. package/dist/hooks/index.d.ts.map +0 -1
  755. package/dist/hooks/useClickOutside.d.ts +0 -9
  756. package/dist/hooks/useClickOutside.d.ts.map +0 -1
  757. package/dist/hooks/useControllable.d.ts +0 -24
  758. package/dist/hooks/useControllable.d.ts.map +0 -1
  759. package/dist/hooks/useDisclosure.d.ts +0 -19
  760. package/dist/hooks/useDisclosure.d.ts.map +0 -1
  761. package/dist/hooks/useFocusTrap.d.ts +0 -21
  762. package/dist/hooks/useFocusTrap.d.ts.map +0 -1
  763. package/dist/hooks/useId.d.ts +0 -9
  764. package/dist/hooks/useId.d.ts.map +0 -1
  765. package/dist/hooks/useKeyboardNavigation.d.ts +0 -35
  766. package/dist/hooks/useKeyboardNavigation.d.ts.map +0 -1
  767. package/dist/hooks/useMediaQuery.d.ts +0 -13
  768. package/dist/hooks/useMediaQuery.d.ts.map +0 -1
  769. package/dist/index.d.ts.map +0 -1
  770. package/dist/types/common.d.ts +0 -90
  771. package/dist/types/common.d.ts.map +0 -1
  772. package/dist/types/index.d.ts +0 -7
  773. package/dist/types/index.d.ts.map +0 -1
  774. package/dist/utils/index.d.ts +0 -7
  775. package/dist/utils/index.d.ts.map +0 -1
  776. package/dist/utils/styles.d.ts +0 -17
  777. package/dist/utils/styles.d.ts.map +0 -1
@@ -0,0 +1,216 @@
1
+ import { jsxs as y, Fragment as Y, jsx as t } from "react/jsx-runtime";
2
+ import { forwardRef as B, useState as b, useEffect as T, useCallback as x } from "react";
3
+ import { createPortal as N } from "react-dom";
4
+ import { cx as P } from "../../../utils/styles.js";
5
+ import { ToastContext as R } from "./ToastContext.js";
6
+ const $ = {
7
+ info: {
8
+ bg: "var(--brycks-info-50)",
9
+ border: "var(--brycks-info-200)",
10
+ icon: "var(--brycks-info-default)"
11
+ },
12
+ success: {
13
+ bg: "var(--brycks-success-50)",
14
+ border: "var(--brycks-success-200)",
15
+ icon: "var(--brycks-success-default)"
16
+ },
17
+ warning: {
18
+ bg: "var(--brycks-warning-50)",
19
+ border: "var(--brycks-warning-200)",
20
+ icon: "var(--brycks-warning-default)"
21
+ },
22
+ error: {
23
+ bg: "var(--brycks-error-50)",
24
+ border: "var(--brycks-error-200)",
25
+ icon: "var(--brycks-error-default)"
26
+ }
27
+ };
28
+ function D({ intent: m }) {
29
+ return /* @__PURE__ */ t("svg", { width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: /* @__PURE__ */ t("path", { d: {
30
+ info: "M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z",
31
+ success: "M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z",
32
+ warning: "M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z",
33
+ error: "M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m7-2a9 9 0 11-18 0 9 9 0 0118 0z"
34
+ }[m] }) });
35
+ }
36
+ function H() {
37
+ return /* @__PURE__ */ t("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", children: /* @__PURE__ */ t("path", { d: "M4 4l8 8M12 4l-8 8", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" }) });
38
+ }
39
+ const C = B(function({
40
+ intent: n = "info",
41
+ title: a,
42
+ description: i,
43
+ isOpen: r = !0,
44
+ duration: c = 5e3,
45
+ onClose: l,
46
+ showCloseButton: g = !0,
47
+ action: d,
48
+ icon: p,
49
+ className: h,
50
+ style: k,
51
+ testId: e,
52
+ ...o
53
+ }, u) {
54
+ const [f, w] = b(r), [M, S] = b(!1);
55
+ if (T(() => {
56
+ if (r)
57
+ w(!0), S(!1);
58
+ else {
59
+ S(!0);
60
+ const s = setTimeout(() => w(!1), 200);
61
+ return () => clearTimeout(s);
62
+ }
63
+ }, [r]), T(() => {
64
+ if (!r || c === 0) return;
65
+ const s = setTimeout(() => {
66
+ l?.();
67
+ }, c);
68
+ return () => clearTimeout(s);
69
+ }, [r, c, l]), !f) return null;
70
+ const v = $[n], z = {
71
+ display: "flex",
72
+ alignItems: "flex-start",
73
+ gap: 12,
74
+ padding: "12px 16px",
75
+ backgroundColor: v.bg,
76
+ border: `1px solid ${v.border}`,
77
+ borderRadius: "var(--brycks-radius-lg)",
78
+ boxShadow: "var(--brycks-shadow-lg)",
79
+ maxWidth: 400,
80
+ animation: M ? "brycks-toast-out 200ms ease-in forwards" : "brycks-toast-in 200ms ease-out",
81
+ ...k
82
+ }, I = {
83
+ color: v.icon,
84
+ flexShrink: 0,
85
+ marginTop: 2
86
+ }, L = {
87
+ flex: 1,
88
+ display: "flex",
89
+ flexDirection: "column",
90
+ gap: 4
91
+ }, E = {
92
+ fontSize: 14,
93
+ fontWeight: 600,
94
+ color: "var(--brycks-foreground-default)",
95
+ lineHeight: 1.4
96
+ }, W = {
97
+ fontSize: 13,
98
+ color: "var(--brycks-foreground-muted)",
99
+ lineHeight: 1.4
100
+ }, j = {
101
+ display: "flex",
102
+ alignItems: "center",
103
+ justifyContent: "center",
104
+ width: 24,
105
+ height: 24,
106
+ borderRadius: "var(--brycks-radius-sm)",
107
+ color: "var(--brycks-foreground-muted)",
108
+ transition: "all 150ms ease-out",
109
+ flexShrink: 0,
110
+ marginLeft: "auto"
111
+ };
112
+ return /* @__PURE__ */ y(Y, { children: [
113
+ /* @__PURE__ */ t("style", { children: `
114
+ @keyframes brycks-toast-in {
115
+ from { opacity: 0; transform: translateY(-8px) scale(0.95); }
116
+ to { opacity: 1; transform: translateY(0) scale(1); }
117
+ }
118
+ @keyframes brycks-toast-out {
119
+ from { opacity: 1; transform: translateY(0) scale(1); }
120
+ to { opacity: 0; transform: translateY(-8px) scale(0.95); }
121
+ }
122
+ ` }),
123
+ /* @__PURE__ */ y(
124
+ "div",
125
+ {
126
+ ref: u,
127
+ role: "alert",
128
+ "aria-live": "polite",
129
+ className: P("brycks-toast", `brycks-toast--${n}`, h),
130
+ style: z,
131
+ "data-testid": e,
132
+ ...o,
133
+ children: [
134
+ /* @__PURE__ */ t("span", { style: I, children: p || /* @__PURE__ */ t(D, { intent: n }) }),
135
+ /* @__PURE__ */ y("div", { style: L, children: [
136
+ a && /* @__PURE__ */ t("span", { style: E, children: a }),
137
+ i && /* @__PURE__ */ t("span", { style: W, children: i }),
138
+ d && /* @__PURE__ */ t("div", { style: { marginTop: 8 }, children: d })
139
+ ] }),
140
+ g && /* @__PURE__ */ t(
141
+ "button",
142
+ {
143
+ type: "button",
144
+ style: j,
145
+ onClick: l,
146
+ "aria-label": "Close toast",
147
+ onMouseEnter: (s) => {
148
+ s.currentTarget.style.backgroundColor = "var(--brycks-background-muted)";
149
+ },
150
+ onMouseLeave: (s) => {
151
+ s.currentTarget.style.backgroundColor = "transparent";
152
+ },
153
+ children: /* @__PURE__ */ t(H, {})
154
+ }
155
+ )
156
+ ]
157
+ }
158
+ )
159
+ ] });
160
+ });
161
+ C.displayName = "Toast";
162
+ const V = {
163
+ "top-left": { top: 16, left: 16 },
164
+ "top-center": { top: 16, left: "50%", transform: "translateX(-50%)" },
165
+ "top-right": { top: 16, right: 16 },
166
+ "bottom-left": { bottom: 16, left: 16 },
167
+ "bottom-center": { bottom: 16, left: "50%", transform: "translateX(-50%)" },
168
+ "bottom-right": { bottom: 16, right: 16 }
169
+ };
170
+ let X = 0;
171
+ function K({
172
+ children: m,
173
+ position: n = "top-right",
174
+ maxToasts: a = 5
175
+ }) {
176
+ const [i, r] = b([]), [c, l] = b(!1);
177
+ T(() => {
178
+ l(!0);
179
+ }, []);
180
+ const g = x(
181
+ (e) => {
182
+ const o = `toast-${++X}`;
183
+ return r((u) => {
184
+ const f = [...u, { id: o, props: e }];
185
+ return f.length > a ? f.slice(-a) : f;
186
+ }), o;
187
+ },
188
+ [a]
189
+ ), d = x((e) => {
190
+ r((o) => o.filter((u) => u.id !== e));
191
+ }, []), p = x(() => {
192
+ r([]);
193
+ }, []), h = {
194
+ position: "fixed",
195
+ zIndex: "var(--brycks-z-toast)",
196
+ display: "flex",
197
+ flexDirection: "column",
198
+ gap: 8,
199
+ pointerEvents: "none",
200
+ ...V[n]
201
+ }, k = {
202
+ pointerEvents: "auto"
203
+ };
204
+ return /* @__PURE__ */ y(R.Provider, { value: { toasts: i, addToast: g, removeToast: d, removeAll: p }, children: [
205
+ m,
206
+ c && N(
207
+ /* @__PURE__ */ t("div", { className: "brycks-toast-container", style: h, children: i.map(({ id: e, props: o }) => /* @__PURE__ */ t("div", { style: k, children: /* @__PURE__ */ t(C, { ...o, isOpen: !0, onClose: () => d(e) }) }, e)) }),
208
+ document.body
209
+ )
210
+ ] });
211
+ }
212
+ export {
213
+ C as Toast,
214
+ K as ToastProvider
215
+ };
216
+ //# sourceMappingURL=Toast.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Toast.js","sources":["../../../../src/components/feedback/Toast/Toast.tsx"],"sourcesContent":["/**\n * Toast Component\n *\n * A notification toast with auto-dismiss and action support.\n * Includes a toast container for managing multiple toasts.\n */\n\nimport {\n forwardRef,\n useState,\n useEffect,\n useCallback,\n type CSSProperties,\n type ReactNode,\n type HTMLAttributes,\n} from 'react'\nimport { createPortal } from 'react-dom'\nimport { cx } from '../../../utils/styles'\nimport { ToastContext } from './ToastContext'\nimport type { ToastItem } from './ToastContext'\n\nexport type ToastIntent = 'info' | 'success' | 'warning' | 'error'\nexport type ToastPosition = 'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center' | 'bottom-right'\n\nexport interface ToastProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title'> {\n /** Toast intent/type */\n intent?: ToastIntent\n /** Toast title */\n title?: ReactNode\n /** Toast description */\n description?: ReactNode\n /** Whether the toast is visible */\n isOpen?: boolean\n /** Duration in ms before auto-dismiss (0 = no auto-dismiss) */\n duration?: number\n /** Callback when toast should close */\n onClose?: () => void\n /** Whether to show close button */\n showCloseButton?: boolean\n /** Action button */\n action?: ReactNode\n /** Custom icon */\n icon?: ReactNode\n /** Custom class name */\n className?: string\n /** Test ID */\n testId?: string\n}\n\nconst intentConfig: Record<ToastIntent, { bg: string; border: string; icon: string }> = {\n info: {\n bg: 'var(--brycks-info-50)',\n border: 'var(--brycks-info-200)',\n icon: 'var(--brycks-info-default)',\n },\n success: {\n bg: 'var(--brycks-success-50)',\n border: 'var(--brycks-success-200)',\n icon: 'var(--brycks-success-default)',\n },\n warning: {\n bg: 'var(--brycks-warning-50)',\n border: 'var(--brycks-warning-200)',\n icon: 'var(--brycks-warning-default)',\n },\n error: {\n bg: 'var(--brycks-error-50)',\n border: 'var(--brycks-error-200)',\n icon: 'var(--brycks-error-default)',\n },\n}\n\nfunction ToastIcon({ intent }: { intent: ToastIntent }) {\n const paths: Record<ToastIntent, string> = {\n info: 'M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z',\n success: 'M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z',\n warning: 'M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z',\n error: 'M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m7-2a9 9 0 11-18 0 9 9 0 0118 0z',\n }\n\n return (\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <path d={paths[intent]} />\n </svg>\n )\n}\n\nfunction CloseIcon() {\n return (\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\n <path d=\"M4 4l8 8M12 4l-8 8\" stroke=\"currentColor\" strokeWidth=\"1.5\" strokeLinecap=\"round\" />\n </svg>\n )\n}\n\nexport const Toast = forwardRef<HTMLDivElement, ToastProps>(function Toast(\n {\n intent = 'info',\n title,\n description,\n isOpen = true,\n duration = 5000,\n onClose,\n showCloseButton = true,\n action,\n icon,\n className,\n style,\n testId,\n ...props\n },\n ref\n) {\n const [isVisible, setIsVisible] = useState(isOpen)\n const [isExiting, setIsExiting] = useState(false)\n\n useEffect(() => {\n if (isOpen) {\n setIsVisible(true)\n setIsExiting(false)\n } else {\n setIsExiting(true)\n const timer = setTimeout(() => setIsVisible(false), 200)\n return () => clearTimeout(timer)\n }\n }, [isOpen])\n\n useEffect(() => {\n if (!isOpen || duration === 0) return\n\n const timer = setTimeout(() => {\n onClose?.()\n }, duration)\n\n return () => clearTimeout(timer)\n }, [isOpen, duration, onClose])\n\n if (!isVisible) return null\n\n const config = intentConfig[intent]\n\n const toastStyle: CSSProperties = {\n display: 'flex',\n alignItems: 'flex-start',\n gap: 12,\n padding: '12px 16px',\n backgroundColor: config.bg,\n border: `1px solid ${config.border}`,\n borderRadius: 'var(--brycks-radius-lg)',\n boxShadow: 'var(--brycks-shadow-lg)',\n maxWidth: 400,\n animation: isExiting\n ? 'brycks-toast-out 200ms ease-in forwards'\n : 'brycks-toast-in 200ms ease-out',\n ...style,\n }\n\n const iconStyle: CSSProperties = {\n color: config.icon,\n flexShrink: 0,\n marginTop: 2,\n }\n\n const contentStyle: CSSProperties = {\n flex: 1,\n display: 'flex',\n flexDirection: 'column',\n gap: 4,\n }\n\n const titleStyle: CSSProperties = {\n fontSize: 14,\n fontWeight: 600,\n color: 'var(--brycks-foreground-default)',\n lineHeight: 1.4,\n }\n\n const descriptionStyle: CSSProperties = {\n fontSize: 13,\n color: 'var(--brycks-foreground-muted)',\n lineHeight: 1.4,\n }\n\n const closeButtonStyle: CSSProperties = {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n width: 24,\n height: 24,\n borderRadius: 'var(--brycks-radius-sm)',\n color: 'var(--brycks-foreground-muted)',\n transition: 'all 150ms ease-out',\n flexShrink: 0,\n marginLeft: 'auto',\n }\n\n return (\n <>\n <style>\n {`\n @keyframes brycks-toast-in {\n from { opacity: 0; transform: translateY(-8px) scale(0.95); }\n to { opacity: 1; transform: translateY(0) scale(1); }\n }\n @keyframes brycks-toast-out {\n from { opacity: 1; transform: translateY(0) scale(1); }\n to { opacity: 0; transform: translateY(-8px) scale(0.95); }\n }\n `}\n </style>\n <div\n ref={ref}\n role=\"alert\"\n aria-live=\"polite\"\n className={cx('brycks-toast', `brycks-toast--${intent}`, className)}\n style={toastStyle}\n data-testid={testId}\n {...props}\n >\n <span style={iconStyle}>\n {icon || <ToastIcon intent={intent} />}\n </span>\n <div style={contentStyle}>\n {title && <span style={titleStyle}>{title}</span>}\n {description && <span style={descriptionStyle}>{description}</span>}\n {action && <div style={{ marginTop: 8 }}>{action}</div>}\n </div>\n {showCloseButton && (\n <button\n type=\"button\"\n style={closeButtonStyle}\n onClick={onClose}\n aria-label=\"Close toast\"\n onMouseEnter={(e) => {\n e.currentTarget.style.backgroundColor = 'var(--brycks-background-muted)'\n }}\n onMouseLeave={(e) => {\n e.currentTarget.style.backgroundColor = 'transparent'\n }}\n >\n <CloseIcon />\n </button>\n )}\n </div>\n </>\n )\n})\n\nToast.displayName = 'Toast'\n\n// Toast Provider\nexport interface ToastProviderProps {\n children: ReactNode\n position?: ToastPosition\n maxToasts?: number\n}\n\nconst positionStyles: Record<ToastPosition, CSSProperties> = {\n 'top-left': { top: 16, left: 16 },\n 'top-center': { top: 16, left: '50%', transform: 'translateX(-50%)' },\n 'top-right': { top: 16, right: 16 },\n 'bottom-left': { bottom: 16, left: 16 },\n 'bottom-center': { bottom: 16, left: '50%', transform: 'translateX(-50%)' },\n 'bottom-right': { bottom: 16, right: 16 },\n}\n\nlet toastCounter = 0\n\nexport function ToastProvider({\n children,\n position = 'top-right',\n maxToasts = 5,\n}: ToastProviderProps) {\n const [toasts, setToasts] = useState<ToastItem[]>([])\n const [mounted, setMounted] = useState(false)\n\n useEffect(() => {\n setMounted(true)\n }, [])\n\n const addToast = useCallback(\n (props: Omit<ToastProps, 'isOpen' | 'onClose'>) => {\n const id = `toast-${++toastCounter}`\n setToasts((prev) => {\n const newToasts = [...prev, { id, props }]\n if (newToasts.length > maxToasts) {\n return newToasts.slice(-maxToasts)\n }\n return newToasts\n })\n return id\n },\n [maxToasts]\n )\n\n const removeToast = useCallback((id: string) => {\n setToasts((prev) => prev.filter((t) => t.id !== id))\n }, [])\n\n const removeAll = useCallback(() => {\n setToasts([])\n }, [])\n\n const containerStyle: CSSProperties = {\n position: 'fixed',\n zIndex: 'var(--brycks-z-toast)' as unknown as number,\n display: 'flex',\n flexDirection: 'column',\n gap: 8,\n pointerEvents: 'none',\n ...positionStyles[position],\n }\n\n const toastWrapperStyle: CSSProperties = {\n pointerEvents: 'auto',\n }\n\n return (\n <ToastContext.Provider value={{ toasts, addToast, removeToast, removeAll }}>\n {children}\n {mounted &&\n createPortal(\n <div className=\"brycks-toast-container\" style={containerStyle}>\n {toasts.map(({ id, props }) => (\n <div key={id} style={toastWrapperStyle}>\n <Toast {...props} isOpen onClose={() => removeToast(id)} />\n </div>\n ))}\n </div>,\n document.body\n )}\n </ToastContext.Provider>\n )\n}\n"],"names":["intentConfig","ToastIcon","intent","jsx","CloseIcon","Toast","forwardRef","title","description","isOpen","duration","onClose","showCloseButton","action","icon","className","style","testId","props","ref","isVisible","setIsVisible","useState","isExiting","setIsExiting","useEffect","timer","config","toastStyle","iconStyle","contentStyle","titleStyle","descriptionStyle","closeButtonStyle","jsxs","Fragment","cx","e","positionStyles","toastCounter","ToastProvider","children","position","maxToasts","toasts","setToasts","mounted","setMounted","addToast","useCallback","id","prev","newToasts","removeToast","t","removeAll","containerStyle","toastWrapperStyle","ToastContext","createPortal"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react"),o=e.createContext(null);function s(){const t=e.useContext(o);if(!t)throw new Error("useToast must be used within a ToastProvider");return t}exports.ToastContext=o;exports.useToast=s;
2
+ //# sourceMappingURL=ToastContext.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToastContext.cjs","sources":["../../../../src/components/feedback/Toast/ToastContext.ts"],"sourcesContent":["/**\r\n * Toast Context\r\n *\r\n * Context and hook for managing toasts.\r\n */\r\n\r\nimport { createContext, useContext } from 'react'\r\nimport type { ToastProps } from './Toast'\r\n\r\nexport interface ToastItem {\r\n id: string\r\n props: Omit<ToastProps, 'isOpen' | 'onClose'>\r\n}\r\n\r\nexport interface ToastContextValue {\r\n toasts: ToastItem[]\r\n addToast: (props: Omit<ToastProps, 'isOpen' | 'onClose'>) => string\r\n removeToast: (id: string) => void\r\n removeAll: () => void\r\n}\r\n\r\nexport const ToastContext = createContext<ToastContextValue | null>(null)\r\n\r\nexport function useToast() {\r\n const context = useContext(ToastContext)\r\n if (!context) {\r\n throw new Error('useToast must be used within a ToastProvider')\r\n }\r\n return context\r\n}\r\n"],"names":["ToastContext","createContext","useToast","context","useContext"],"mappings":"yGAqBaA,EAAeC,EAAAA,cAAwC,IAAI,EAEjE,SAASC,GAAW,CACzB,MAAMC,EAAUC,EAAAA,WAAWJ,CAAY,EACvC,GAAI,CAACG,EACH,MAAM,IAAI,MAAM,8CAA8C,EAEhE,OAAOA,CACT"}
@@ -0,0 +1,13 @@
1
+ import { createContext as o, useContext as e } from "react";
2
+ const n = o(null);
3
+ function s() {
4
+ const t = e(n);
5
+ if (!t)
6
+ throw new Error("useToast must be used within a ToastProvider");
7
+ return t;
8
+ }
9
+ export {
10
+ n as ToastContext,
11
+ s as useToast
12
+ };
13
+ //# sourceMappingURL=ToastContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToastContext.js","sources":["../../../../src/components/feedback/Toast/ToastContext.ts"],"sourcesContent":["/**\r\n * Toast Context\r\n *\r\n * Context and hook for managing toasts.\r\n */\r\n\r\nimport { createContext, useContext } from 'react'\r\nimport type { ToastProps } from './Toast'\r\n\r\nexport interface ToastItem {\r\n id: string\r\n props: Omit<ToastProps, 'isOpen' | 'onClose'>\r\n}\r\n\r\nexport interface ToastContextValue {\r\n toasts: ToastItem[]\r\n addToast: (props: Omit<ToastProps, 'isOpen' | 'onClose'>) => string\r\n removeToast: (id: string) => void\r\n removeAll: () => void\r\n}\r\n\r\nexport const ToastContext = createContext<ToastContextValue | null>(null)\r\n\r\nexport function useToast() {\r\n const context = useContext(ToastContext)\r\n if (!context) {\r\n throw new Error('useToast must be used within a ToastProvider')\r\n }\r\n return context\r\n}\r\n"],"names":["ToastContext","createContext","useToast","context","useContext"],"mappings":";AAqBO,MAAMA,IAAeC,EAAwC,IAAI;AAEjE,SAASC,IAAW;AACzB,QAAMC,IAAUC,EAAWJ,CAAY;AACvC,MAAI,CAACG;AACH,UAAM,IAAI,MAAM,8CAA8C;AAEhE,SAAOA;AACT;"}
@@ -0,0 +1,7 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),e=require("react"),P=require("react-dom"),I=require("../../../utils/styles.cjs"),B=require("../../../hooks/useMediaQuery.cjs"),v=e.forwardRef(function({content:k,placement:i="top",delay:x=200,isDisabled:R,className:T,testId:M,children:S,...j},l){const[u,p]=e.useState(!1),[b,E]=e.useState({top:0,left:0}),h=e.useRef(null),g=e.useRef(null),a=e.useRef(null),y=e.useId(),L=B.usePrefersReducedMotion(),c=e.useCallback(()=>{if(!h.current||!g.current)return;const t=h.current.getBoundingClientRect(),o=g.current.getBoundingClientRect(),d=8;let s=0,n=0;switch(i){case"top":s=t.top-o.height-d,n=t.left+(t.width-o.width)/2;break;case"bottom":s=t.bottom+d,n=t.left+(t.width-o.width)/2;break;case"left":s=t.top+(t.height-o.height)/2,n=t.left-o.width-d;break;case"right":s=t.top+(t.height-o.height)/2,n=t.right+d;break}const f=8;n=Math.max(f,Math.min(n,window.innerWidth-o.width-f)),s=Math.max(f,Math.min(s,window.innerHeight-o.height-f)),E({top:s,left:n})},[i]);e.useEffect(()=>(u&&(c(),window.addEventListener("scroll",c,!0),window.addEventListener("resize",c)),()=>{window.removeEventListener("scroll",c,!0),window.removeEventListener("resize",c)}),[u,c]);const m=()=>{R||(a.current=setTimeout(()=>{p(!0)},x))},w=()=>{a.current&&clearTimeout(a.current),p(!1)};e.useEffect(()=>()=>{a.current&&clearTimeout(a.current)},[]);const z={display:"inline-flex"},q={position:"fixed",top:b.top,left:b.left,zIndex:"var(--brycks-z-tooltip)",maxWidth:300,padding:"var(--brycks-space-1-5) var(--brycks-space-2-5)",fontSize:"var(--brycks-font-size-xs)",fontWeight:500,lineHeight:1.4,color:"var(--brycks-foreground-inverse)",backgroundColor:"var(--brycks-background-inverse)",borderRadius:"var(--brycks-radius-md)",boxShadow:"var(--brycks-shadow-lg)",pointerEvents:"none",animation:L?"none":"brycks-tooltip-in 150ms ease-out"},C={position:"absolute",width:8,height:8,backgroundColor:"var(--brycks-background-inverse)",transform:"rotate(45deg)",...i==="top"&&{bottom:-4,left:"50%",marginLeft:-4},...i==="bottom"&&{top:-4,left:"50%",marginLeft:-4},...i==="left"&&{right:-4,top:"50%",marginTop:-4},...i==="right"&&{left:-4,top:"50%",marginTop:-4}};return r.jsxs(r.Fragment,{children:[r.jsx("div",{ref:h,style:z,onMouseEnter:m,onMouseLeave:w,onFocus:m,onBlur:w,"aria-describedby":u?y:void 0,children:S}),u&&P.createPortal(r.jsxs(r.Fragment,{children:[r.jsx("style",{children:`
2
+ @keyframes brycks-tooltip-in {
3
+ from { opacity: 0; transform: scale(0.95); }
4
+ to { opacity: 1; transform: scale(1); }
5
+ }
6
+ `}),r.jsxs("div",{ref:t=>{g.current=t,typeof l=="function"?l(t):l&&(l.current=t)},id:y,role:"tooltip",className:I.cx("brycks-tooltip",`brycks-tooltip--${i}`,T),style:q,"data-testid":M,...j,children:[k,r.jsx("span",{style:C})]})]}),document.body)]})});v.displayName="Tooltip";exports.Tooltip=v;
7
+ //# sourceMappingURL=Tooltip.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tooltip.cjs","sources":["../../../../src/components/feedback/Tooltip/Tooltip.tsx"],"sourcesContent":["/**\r\n * Tooltip Component\r\n *\r\n * Lightweight tooltip for displaying additional information on hover.\r\n * Clean animation with proper positioning.\r\n */\r\n\r\nimport {\r\n forwardRef,\r\n useState,\r\n useRef,\r\n useEffect,\r\n useCallback,\r\n useId,\r\n type CSSProperties,\r\n type ReactNode,\r\n type HTMLAttributes,\r\n} from 'react'\r\nimport { createPortal } from 'react-dom'\r\nimport { cx } from '../../../utils/styles'\r\nimport { usePrefersReducedMotion } from '../../../hooks/useMediaQuery'\r\n\r\nexport type TooltipPlacement = 'top' | 'bottom' | 'left' | 'right'\r\n\r\nexport interface TooltipProps extends Omit<HTMLAttributes<HTMLDivElement>, 'content'> {\r\n /** Tooltip content */\r\n content: ReactNode\r\n /** Placement relative to trigger */\r\n placement?: TooltipPlacement\r\n /** Delay before showing (ms) */\r\n delay?: number\r\n /** Whether tooltip is disabled */\r\n isDisabled?: boolean\r\n /** Custom class name */\r\n className?: string\r\n /** Test ID */\r\n testId?: string\r\n /** Trigger element */\r\n children: ReactNode\r\n}\r\n\r\nexport const Tooltip = forwardRef<HTMLDivElement, TooltipProps>(function Tooltip(\r\n {\r\n content,\r\n placement = 'top',\r\n delay = 200,\r\n isDisabled,\r\n className,\r\n testId,\r\n children,\r\n ...props\r\n },\r\n ref\r\n) {\r\n const [isVisible, setIsVisible] = useState(false)\r\n const [position, setPosition] = useState({ top: 0, left: 0 })\r\n const triggerRef = useRef<HTMLDivElement>(null)\r\n const tooltipRef = useRef<HTMLDivElement>(null)\r\n const timeoutRef = useRef<ReturnType<typeof setTimeout>>(null)\r\n const tooltipId = useId()\r\n const prefersReducedMotion = usePrefersReducedMotion()\r\n\r\n const calculatePosition = useCallback(() => {\r\n if (!triggerRef.current || !tooltipRef.current) return\r\n\r\n const triggerRect = triggerRef.current.getBoundingClientRect()\r\n const tooltipRect = tooltipRef.current.getBoundingClientRect()\r\n const gap = 8\r\n\r\n let top = 0\r\n let left = 0\r\n\r\n switch (placement) {\r\n case 'top':\r\n top = triggerRect.top - tooltipRect.height - gap\r\n left = triggerRect.left + (triggerRect.width - tooltipRect.width) / 2\r\n break\r\n case 'bottom':\r\n top = triggerRect.bottom + gap\r\n left = triggerRect.left + (triggerRect.width - tooltipRect.width) / 2\r\n break\r\n case 'left':\r\n top = triggerRect.top + (triggerRect.height - tooltipRect.height) / 2\r\n left = triggerRect.left - tooltipRect.width - gap\r\n break\r\n case 'right':\r\n top = triggerRect.top + (triggerRect.height - tooltipRect.height) / 2\r\n left = triggerRect.right + gap\r\n break\r\n }\r\n\r\n // Keep tooltip within viewport\r\n const padding = 8\r\n left = Math.max(padding, Math.min(left, window.innerWidth - tooltipRect.width - padding))\r\n top = Math.max(padding, Math.min(top, window.innerHeight - tooltipRect.height - padding))\r\n\r\n setPosition({ top, left })\r\n }, [placement])\r\n\r\n useEffect(() => {\r\n if (isVisible) {\r\n calculatePosition()\r\n window.addEventListener('scroll', calculatePosition, true)\r\n window.addEventListener('resize', calculatePosition)\r\n }\r\n\r\n return () => {\r\n window.removeEventListener('scroll', calculatePosition, true)\r\n window.removeEventListener('resize', calculatePosition)\r\n }\r\n }, [isVisible, calculatePosition])\r\n\r\n const showTooltip = () => {\r\n if (isDisabled) return\r\n timeoutRef.current = setTimeout(() => {\r\n setIsVisible(true)\r\n }, delay)\r\n }\r\n\r\n const hideTooltip = () => {\r\n if (timeoutRef.current) {\r\n clearTimeout(timeoutRef.current)\r\n }\r\n setIsVisible(false)\r\n }\r\n\r\n useEffect(() => {\r\n return () => {\r\n if (timeoutRef.current) {\r\n clearTimeout(timeoutRef.current)\r\n }\r\n }\r\n }, [])\r\n\r\n const triggerStyle: CSSProperties = {\r\n display: 'inline-flex',\r\n }\r\n\r\n const tooltipStyle: CSSProperties = {\r\n position: 'fixed',\r\n top: position.top,\r\n left: position.left,\r\n zIndex: 'var(--brycks-z-tooltip)',\r\n maxWidth: 300,\r\n padding: 'var(--brycks-space-1-5) var(--brycks-space-2-5)',\r\n fontSize: 'var(--brycks-font-size-xs)',\r\n fontWeight: 500,\r\n lineHeight: 1.4,\r\n color: 'var(--brycks-foreground-inverse)',\r\n backgroundColor: 'var(--brycks-background-inverse)',\r\n borderRadius: 'var(--brycks-radius-md)',\r\n boxShadow: 'var(--brycks-shadow-lg)',\r\n pointerEvents: 'none',\r\n animation: prefersReducedMotion ? 'none' : 'brycks-tooltip-in 150ms ease-out',\r\n }\r\n\r\n const arrowStyle: CSSProperties = {\r\n position: 'absolute',\r\n width: 8,\r\n height: 8,\r\n backgroundColor: 'var(--brycks-background-inverse)',\r\n transform: 'rotate(45deg)',\r\n ...(placement === 'top' && { bottom: -4, left: '50%', marginLeft: -4 }),\r\n ...(placement === 'bottom' && { top: -4, left: '50%', marginLeft: -4 }),\r\n ...(placement === 'left' && { right: -4, top: '50%', marginTop: -4 }),\r\n ...(placement === 'right' && { left: -4, top: '50%', marginTop: -4 }),\r\n }\r\n\r\n return (\r\n <>\r\n <div\r\n ref={triggerRef}\r\n style={triggerStyle}\r\n onMouseEnter={showTooltip}\r\n onMouseLeave={hideTooltip}\r\n onFocus={showTooltip}\r\n onBlur={hideTooltip}\r\n aria-describedby={isVisible ? tooltipId : undefined}\r\n >\r\n {children}\r\n </div>\r\n\r\n {isVisible &&\r\n createPortal(\r\n <>\r\n <style>\r\n {`\r\n @keyframes brycks-tooltip-in {\r\n from { opacity: 0; transform: scale(0.95); }\r\n to { opacity: 1; transform: scale(1); }\r\n }\r\n `}\r\n </style>\r\n <div\r\n ref={(node) => {\r\n (tooltipRef as React.MutableRefObject<HTMLDivElement | null>).current = node\r\n if (typeof ref === 'function') ref(node)\r\n else if (ref) (ref as React.MutableRefObject<HTMLDivElement | null>).current = node\r\n }}\r\n id={tooltipId}\r\n role=\"tooltip\"\r\n className={cx('brycks-tooltip', `brycks-tooltip--${placement}`, className)}\r\n style={tooltipStyle}\r\n data-testid={testId}\r\n {...props}\r\n >\r\n {content}\r\n <span style={arrowStyle} />\r\n </div>\r\n </>,\r\n document.body\r\n )}\r\n </>\r\n )\r\n})\r\n\r\nTooltip.displayName = 'Tooltip'\r\n"],"names":["Tooltip","forwardRef","content","placement","delay","isDisabled","className","testId","children","props","ref","isVisible","setIsVisible","useState","position","setPosition","triggerRef","useRef","tooltipRef","timeoutRef","tooltipId","useId","prefersReducedMotion","usePrefersReducedMotion","calculatePosition","useCallback","triggerRect","tooltipRect","gap","top","left","padding","useEffect","showTooltip","hideTooltip","triggerStyle","tooltipStyle","arrowStyle","jsxs","Fragment","jsx","createPortal","node","cx"],"mappings":"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"}
@@ -0,0 +1,128 @@
1
+ import { jsxs as p, Fragment as v, jsx as h } from "react/jsx-runtime";
2
+ import { forwardRef as F, useState as x, useRef as g, useId as H, useCallback as N, useEffect as R } from "react";
3
+ import { createPortal as V } from "react-dom";
4
+ import { cx as $ } from "../../../utils/styles.js";
5
+ import { usePrefersReducedMotion as q } from "../../../hooks/useMediaQuery.js";
6
+ const A = F(function({
7
+ content: T,
8
+ placement: o = "top",
9
+ delay: M = 200,
10
+ isDisabled: E,
11
+ className: L,
12
+ testId: z,
13
+ children: S,
14
+ ...C
15
+ }, c) {
16
+ const [a, m] = x(!1), [b, I] = x({ top: 0, left: 0 }), u = g(null), f = g(null), s = g(null), y = H(), P = q(), n = N(() => {
17
+ if (!u.current || !f.current) return;
18
+ const t = u.current.getBoundingClientRect(), e = f.current.getBoundingClientRect(), l = 8;
19
+ let r = 0, i = 0;
20
+ switch (o) {
21
+ case "top":
22
+ r = t.top - e.height - l, i = t.left + (t.width - e.width) / 2;
23
+ break;
24
+ case "bottom":
25
+ r = t.bottom + l, i = t.left + (t.width - e.width) / 2;
26
+ break;
27
+ case "left":
28
+ r = t.top + (t.height - e.height) / 2, i = t.left - e.width - l;
29
+ break;
30
+ case "right":
31
+ r = t.top + (t.height - e.height) / 2, i = t.right + l;
32
+ break;
33
+ }
34
+ const d = 8;
35
+ i = Math.max(d, Math.min(i, window.innerWidth - e.width - d)), r = Math.max(d, Math.min(r, window.innerHeight - e.height - d)), I({ top: r, left: i });
36
+ }, [o]);
37
+ R(() => (a && (n(), window.addEventListener("scroll", n, !0), window.addEventListener("resize", n)), () => {
38
+ window.removeEventListener("scroll", n, !0), window.removeEventListener("resize", n);
39
+ }), [a, n]);
40
+ const w = () => {
41
+ E || (s.current = setTimeout(() => {
42
+ m(!0);
43
+ }, M));
44
+ }, k = () => {
45
+ s.current && clearTimeout(s.current), m(!1);
46
+ };
47
+ R(() => () => {
48
+ s.current && clearTimeout(s.current);
49
+ }, []);
50
+ const B = {
51
+ display: "inline-flex"
52
+ }, W = {
53
+ position: "fixed",
54
+ top: b.top,
55
+ left: b.left,
56
+ zIndex: "var(--brycks-z-tooltip)",
57
+ maxWidth: 300,
58
+ padding: "var(--brycks-space-1-5) var(--brycks-space-2-5)",
59
+ fontSize: "var(--brycks-font-size-xs)",
60
+ fontWeight: 500,
61
+ lineHeight: 1.4,
62
+ color: "var(--brycks-foreground-inverse)",
63
+ backgroundColor: "var(--brycks-background-inverse)",
64
+ borderRadius: "var(--brycks-radius-md)",
65
+ boxShadow: "var(--brycks-shadow-lg)",
66
+ pointerEvents: "none",
67
+ animation: P ? "none" : "brycks-tooltip-in 150ms ease-out"
68
+ }, j = {
69
+ position: "absolute",
70
+ width: 8,
71
+ height: 8,
72
+ backgroundColor: "var(--brycks-background-inverse)",
73
+ transform: "rotate(45deg)",
74
+ ...o === "top" && { bottom: -4, left: "50%", marginLeft: -4 },
75
+ ...o === "bottom" && { top: -4, left: "50%", marginLeft: -4 },
76
+ ...o === "left" && { right: -4, top: "50%", marginTop: -4 },
77
+ ...o === "right" && { left: -4, top: "50%", marginTop: -4 }
78
+ };
79
+ return /* @__PURE__ */ p(v, { children: [
80
+ /* @__PURE__ */ h(
81
+ "div",
82
+ {
83
+ ref: u,
84
+ style: B,
85
+ onMouseEnter: w,
86
+ onMouseLeave: k,
87
+ onFocus: w,
88
+ onBlur: k,
89
+ "aria-describedby": a ? y : void 0,
90
+ children: S
91
+ }
92
+ ),
93
+ a && V(
94
+ /* @__PURE__ */ p(v, { children: [
95
+ /* @__PURE__ */ h("style", { children: `
96
+ @keyframes brycks-tooltip-in {
97
+ from { opacity: 0; transform: scale(0.95); }
98
+ to { opacity: 1; transform: scale(1); }
99
+ }
100
+ ` }),
101
+ /* @__PURE__ */ p(
102
+ "div",
103
+ {
104
+ ref: (t) => {
105
+ f.current = t, typeof c == "function" ? c(t) : c && (c.current = t);
106
+ },
107
+ id: y,
108
+ role: "tooltip",
109
+ className: $("brycks-tooltip", `brycks-tooltip--${o}`, L),
110
+ style: W,
111
+ "data-testid": z,
112
+ ...C,
113
+ children: [
114
+ T,
115
+ /* @__PURE__ */ h("span", { style: j })
116
+ ]
117
+ }
118
+ )
119
+ ] }),
120
+ document.body
121
+ )
122
+ ] });
123
+ });
124
+ A.displayName = "Tooltip";
125
+ export {
126
+ A as Tooltip
127
+ };
128
+ //# sourceMappingURL=Tooltip.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tooltip.js","sources":["../../../../src/components/feedback/Tooltip/Tooltip.tsx"],"sourcesContent":["/**\r\n * Tooltip Component\r\n *\r\n * Lightweight tooltip for displaying additional information on hover.\r\n * Clean animation with proper positioning.\r\n */\r\n\r\nimport {\r\n forwardRef,\r\n useState,\r\n useRef,\r\n useEffect,\r\n useCallback,\r\n useId,\r\n type CSSProperties,\r\n type ReactNode,\r\n type HTMLAttributes,\r\n} from 'react'\r\nimport { createPortal } from 'react-dom'\r\nimport { cx } from '../../../utils/styles'\r\nimport { usePrefersReducedMotion } from '../../../hooks/useMediaQuery'\r\n\r\nexport type TooltipPlacement = 'top' | 'bottom' | 'left' | 'right'\r\n\r\nexport interface TooltipProps extends Omit<HTMLAttributes<HTMLDivElement>, 'content'> {\r\n /** Tooltip content */\r\n content: ReactNode\r\n /** Placement relative to trigger */\r\n placement?: TooltipPlacement\r\n /** Delay before showing (ms) */\r\n delay?: number\r\n /** Whether tooltip is disabled */\r\n isDisabled?: boolean\r\n /** Custom class name */\r\n className?: string\r\n /** Test ID */\r\n testId?: string\r\n /** Trigger element */\r\n children: ReactNode\r\n}\r\n\r\nexport const Tooltip = forwardRef<HTMLDivElement, TooltipProps>(function Tooltip(\r\n {\r\n content,\r\n placement = 'top',\r\n delay = 200,\r\n isDisabled,\r\n className,\r\n testId,\r\n children,\r\n ...props\r\n },\r\n ref\r\n) {\r\n const [isVisible, setIsVisible] = useState(false)\r\n const [position, setPosition] = useState({ top: 0, left: 0 })\r\n const triggerRef = useRef<HTMLDivElement>(null)\r\n const tooltipRef = useRef<HTMLDivElement>(null)\r\n const timeoutRef = useRef<ReturnType<typeof setTimeout>>(null)\r\n const tooltipId = useId()\r\n const prefersReducedMotion = usePrefersReducedMotion()\r\n\r\n const calculatePosition = useCallback(() => {\r\n if (!triggerRef.current || !tooltipRef.current) return\r\n\r\n const triggerRect = triggerRef.current.getBoundingClientRect()\r\n const tooltipRect = tooltipRef.current.getBoundingClientRect()\r\n const gap = 8\r\n\r\n let top = 0\r\n let left = 0\r\n\r\n switch (placement) {\r\n case 'top':\r\n top = triggerRect.top - tooltipRect.height - gap\r\n left = triggerRect.left + (triggerRect.width - tooltipRect.width) / 2\r\n break\r\n case 'bottom':\r\n top = triggerRect.bottom + gap\r\n left = triggerRect.left + (triggerRect.width - tooltipRect.width) / 2\r\n break\r\n case 'left':\r\n top = triggerRect.top + (triggerRect.height - tooltipRect.height) / 2\r\n left = triggerRect.left - tooltipRect.width - gap\r\n break\r\n case 'right':\r\n top = triggerRect.top + (triggerRect.height - tooltipRect.height) / 2\r\n left = triggerRect.right + gap\r\n break\r\n }\r\n\r\n // Keep tooltip within viewport\r\n const padding = 8\r\n left = Math.max(padding, Math.min(left, window.innerWidth - tooltipRect.width - padding))\r\n top = Math.max(padding, Math.min(top, window.innerHeight - tooltipRect.height - padding))\r\n\r\n setPosition({ top, left })\r\n }, [placement])\r\n\r\n useEffect(() => {\r\n if (isVisible) {\r\n calculatePosition()\r\n window.addEventListener('scroll', calculatePosition, true)\r\n window.addEventListener('resize', calculatePosition)\r\n }\r\n\r\n return () => {\r\n window.removeEventListener('scroll', calculatePosition, true)\r\n window.removeEventListener('resize', calculatePosition)\r\n }\r\n }, [isVisible, calculatePosition])\r\n\r\n const showTooltip = () => {\r\n if (isDisabled) return\r\n timeoutRef.current = setTimeout(() => {\r\n setIsVisible(true)\r\n }, delay)\r\n }\r\n\r\n const hideTooltip = () => {\r\n if (timeoutRef.current) {\r\n clearTimeout(timeoutRef.current)\r\n }\r\n setIsVisible(false)\r\n }\r\n\r\n useEffect(() => {\r\n return () => {\r\n if (timeoutRef.current) {\r\n clearTimeout(timeoutRef.current)\r\n }\r\n }\r\n }, [])\r\n\r\n const triggerStyle: CSSProperties = {\r\n display: 'inline-flex',\r\n }\r\n\r\n const tooltipStyle: CSSProperties = {\r\n position: 'fixed',\r\n top: position.top,\r\n left: position.left,\r\n zIndex: 'var(--brycks-z-tooltip)',\r\n maxWidth: 300,\r\n padding: 'var(--brycks-space-1-5) var(--brycks-space-2-5)',\r\n fontSize: 'var(--brycks-font-size-xs)',\r\n fontWeight: 500,\r\n lineHeight: 1.4,\r\n color: 'var(--brycks-foreground-inverse)',\r\n backgroundColor: 'var(--brycks-background-inverse)',\r\n borderRadius: 'var(--brycks-radius-md)',\r\n boxShadow: 'var(--brycks-shadow-lg)',\r\n pointerEvents: 'none',\r\n animation: prefersReducedMotion ? 'none' : 'brycks-tooltip-in 150ms ease-out',\r\n }\r\n\r\n const arrowStyle: CSSProperties = {\r\n position: 'absolute',\r\n width: 8,\r\n height: 8,\r\n backgroundColor: 'var(--brycks-background-inverse)',\r\n transform: 'rotate(45deg)',\r\n ...(placement === 'top' && { bottom: -4, left: '50%', marginLeft: -4 }),\r\n ...(placement === 'bottom' && { top: -4, left: '50%', marginLeft: -4 }),\r\n ...(placement === 'left' && { right: -4, top: '50%', marginTop: -4 }),\r\n ...(placement === 'right' && { left: -4, top: '50%', marginTop: -4 }),\r\n }\r\n\r\n return (\r\n <>\r\n <div\r\n ref={triggerRef}\r\n style={triggerStyle}\r\n onMouseEnter={showTooltip}\r\n onMouseLeave={hideTooltip}\r\n onFocus={showTooltip}\r\n onBlur={hideTooltip}\r\n aria-describedby={isVisible ? tooltipId : undefined}\r\n >\r\n {children}\r\n </div>\r\n\r\n {isVisible &&\r\n createPortal(\r\n <>\r\n <style>\r\n {`\r\n @keyframes brycks-tooltip-in {\r\n from { opacity: 0; transform: scale(0.95); }\r\n to { opacity: 1; transform: scale(1); }\r\n }\r\n `}\r\n </style>\r\n <div\r\n ref={(node) => {\r\n (tooltipRef as React.MutableRefObject<HTMLDivElement | null>).current = node\r\n if (typeof ref === 'function') ref(node)\r\n else if (ref) (ref as React.MutableRefObject<HTMLDivElement | null>).current = node\r\n }}\r\n id={tooltipId}\r\n role=\"tooltip\"\r\n className={cx('brycks-tooltip', `brycks-tooltip--${placement}`, className)}\r\n style={tooltipStyle}\r\n data-testid={testId}\r\n {...props}\r\n >\r\n {content}\r\n <span style={arrowStyle} />\r\n </div>\r\n </>,\r\n document.body\r\n )}\r\n </>\r\n )\r\n})\r\n\r\nTooltip.displayName = 'Tooltip'\r\n"],"names":["Tooltip","forwardRef","content","placement","delay","isDisabled","className","testId","children","props","ref","isVisible","setIsVisible","useState","position","setPosition","triggerRef","useRef","tooltipRef","timeoutRef","tooltipId","useId","prefersReducedMotion","usePrefersReducedMotion","calculatePosition","useCallback","triggerRect","tooltipRect","gap","top","left","padding","useEffect","showTooltip","hideTooltip","triggerStyle","tooltipStyle","arrowStyle","jsxs","Fragment","jsx","createPortal","node","cx"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./feedback/Modal/Modal.cjs"),e=require("./feedback/Alert/Alert.cjs"),t=require("./feedback/Tooltip/Tooltip.cjs"),r=require("./feedback/Toast/Toast.cjs"),s=require("./feedback/Toast/ToastContext.cjs"),a=require("./feedback/Drawer/Drawer.cjs"),i=require("./feedback/Popover/Popover.cjs"),u=require("./feedback/Progress/Progress.cjs");exports.Modal=o.Modal;exports.Alert=e.Alert;exports.Tooltip=t.Tooltip;exports.Toast=r.Toast;exports.ToastProvider=r.ToastProvider;exports.useToast=s.useToast;exports.Drawer=a.Drawer;exports.Popover=i.Popover;exports.Progress=u.Progress;
2
+ //# sourceMappingURL=feedback.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feedback.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export * from './feedback/index'
2
+ export {}
@@ -0,0 +1,20 @@
1
+ import { Modal as e } from "./feedback/Modal/Modal.js";
2
+ import { Alert as p } from "./feedback/Alert/Alert.js";
3
+ import { Tooltip as m } from "./feedback/Tooltip/Tooltip.js";
4
+ import { Toast as s, ToastProvider as a } from "./feedback/Toast/Toast.js";
5
+ import { useToast as l } from "./feedback/Toast/ToastContext.js";
6
+ import { Drawer as d } from "./feedback/Drawer/Drawer.js";
7
+ import { Popover as v } from "./feedback/Popover/Popover.js";
8
+ import { Progress as u } from "./feedback/Progress/Progress.js";
9
+ export {
10
+ p as Alert,
11
+ d as Drawer,
12
+ e as Modal,
13
+ v as Popover,
14
+ u as Progress,
15
+ s as Toast,
16
+ a as ToastProvider,
17
+ m as Tooltip,
18
+ l as useToast
19
+ };
20
+ //# sourceMappingURL=feedback.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feedback.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),c=require("react"),T=require("../../../utils/styles.cjs"),p=require("../../../design-system/primitives/sizing.cjs"),n=require("../../../design-system/primitives/opacity.cjs"),m=require("../../../design-system/primitives/focus.cjs"),v=require("../../../design-system/primitives/transitions.cjs"),h=require("../../../design-system/primitives/typography.cjs");function D({size:o}){return e.jsx("svg",{width:o,height:o,viewBox:"0 0 12 12",fill:"none",children:e.jsx("path",{d:"M2.5 6L5 8.5L9.5 4",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}function G({size:o}){return e.jsx("svg",{width:o,height:o,viewBox:"0 0 12 12",fill:"none",children:e.jsx("path",{d:"M2.5 6H9.5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})})}const S=c.forwardRef(function({size:i="md",label:a,description:l,isInvalid:u,isIndeterminate:b,className:j,style:w,testId:C,disabled:s,checked:k,onChange:q,...L},M){const[x,f]=c.useState(!1),[H,g]=c.useState(!1),[R,d]=c.useState(!1),t=p.controlSizes[i],y=h.componentFontSize[i],r=k||b,$={display:"inline-flex",alignItems:"flex-start",gap:p.componentGap.lg,cursor:s?"not-allowed":"pointer",opacity:s?n.stateOpacity.disabled:1},I={position:"relative",width:t.box,height:t.box,borderRadius:"var(--brycks-radius-sm)",border:`1.5px solid ${u?"var(--brycks-error-default)":r?"var(--brycks-primary-default)":x?"var(--brycks-border-focus)":"var(--brycks-border-default)"}`,backgroundColor:r?"var(--brycks-primary-default)":H?"var(--brycks-background-subtle)":"var(--brycks-background-app)",transition:v.transition.quick,transform:R?`scale(${n.scale.controlPressed})`:`scale(${n.scale.normal})`,boxShadow:x?m.focusRing.default:m.focusRing.none,display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},F={color:"var(--brycks-primary-foreground)",opacity:r?1:0,transform:r?`scale(${n.scale.normal})`:`scale(${n.scale.hidden})`,transition:v.transition.quick},P={position:"absolute",width:"100%",height:"100%",opacity:0,cursor:s?"not-allowed":"pointer",margin:0},z={display:"flex",flexDirection:"column",gap:p.componentGap.xs,paddingTop:(t.box-y)/2},B={fontSize:y,lineHeight:h.componentLineHeight.snug,color:"var(--brycks-foreground-default)",userSelect:"none"},O={fontSize:y-1,lineHeight:h.componentLineHeight.snug,color:"var(--brycks-foreground-muted)",userSelect:"none"};return e.jsxs("label",{className:T.cx("brycks-checkbox",`brycks-checkbox--${i}`,r&&"brycks-checkbox--checked",u&&"brycks-checkbox--invalid",s&&"brycks-checkbox--disabled",j),style:{...$,...w},"data-testid":C,onMouseEnter:()=>g(!0),onMouseLeave:()=>{g(!1),d(!1)},onMouseDown:()=>d(!0),onMouseUp:()=>d(!1),children:[e.jsxs("span",{style:I,children:[e.jsx("input",{ref:M,type:"checkbox",style:P,checked:k,disabled:s,"aria-invalid":u,onChange:q,onFocus:()=>f(!0),onBlur:()=>f(!1),...L}),e.jsx("span",{style:F,children:b?e.jsx(G,{size:t.icon}):e.jsx(D,{size:t.icon})})]}),(a||l)&&e.jsxs("span",{style:z,children:[a&&e.jsx("span",{style:B,children:a}),l&&e.jsx("span",{style:O,children:l})]})]})});S.displayName="Checkbox";exports.Checkbox=S;
2
+ //# sourceMappingURL=Checkbox.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Checkbox.cjs","sources":["../../../../src/components/form/Checkbox/Checkbox.tsx"],"sourcesContent":["/**\r\n * Checkbox Component\r\n *\r\n * Apple-inspired checkbox with smooth animations and tactile feedback.\r\n *\r\n * @module components/form/Checkbox\r\n */\r\n\r\nimport {\r\n forwardRef,\r\n useState,\r\n type CSSProperties,\r\n type InputHTMLAttributes,\r\n type ReactNode,\r\n} from 'react'\r\nimport {\r\n controlSizes,\r\n componentGap,\r\n componentFontSize,\r\n componentLineHeight,\r\n focusRing,\r\n transition,\r\n stateOpacity,\r\n scale,\r\n} from '../../../design-system'\r\nimport { cx } from '../../../utils/styles'\r\n\r\nexport type CheckboxSize = 'sm' | 'md' | 'lg'\r\n\r\nexport interface CheckboxProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'size' | 'type'> {\r\n /** Checkbox size */\r\n size?: CheckboxSize\r\n /** Label text */\r\n label?: ReactNode\r\n /** Description below label */\r\n description?: ReactNode\r\n /** Error state */\r\n isInvalid?: boolean\r\n /** Indeterminate state */\r\n isIndeterminate?: boolean\r\n /** Custom class name */\r\n className?: string\r\n /** Test ID */\r\n testId?: string\r\n}\r\n\r\n/** Checkmark icon */\r\nfunction CheckIcon({ size }: { size: number }) {\r\n return (\r\n <svg width={size} height={size} viewBox=\"0 0 12 12\" fill=\"none\">\r\n <path\r\n d=\"M2.5 6L5 8.5L9.5 4\"\r\n stroke=\"currentColor\"\r\n strokeWidth=\"2\"\r\n strokeLinecap=\"round\"\r\n strokeLinejoin=\"round\"\r\n />\r\n </svg>\r\n )\r\n}\r\n\r\n/** Indeterminate/minus icon */\r\nfunction MinusIcon({ size }: { size: number }) {\r\n return (\r\n <svg width={size} height={size} viewBox=\"0 0 12 12\" fill=\"none\">\r\n <path\r\n d=\"M2.5 6H9.5\"\r\n stroke=\"currentColor\"\r\n strokeWidth=\"2\"\r\n strokeLinecap=\"round\"\r\n />\r\n </svg>\r\n )\r\n}\r\n\r\nexport const Checkbox = forwardRef<HTMLInputElement, CheckboxProps>(function Checkbox(\r\n {\r\n size = 'md',\r\n label,\r\n description,\r\n isInvalid,\r\n isIndeterminate,\r\n className,\r\n style,\r\n testId,\r\n disabled,\r\n checked,\r\n onChange,\r\n ...props\r\n },\r\n ref\r\n) {\r\n const [isFocused, setIsFocused] = useState(false)\r\n const [isHovered, setIsHovered] = useState(false)\r\n const [isPressed, setIsPressed] = useState(false)\r\n\r\n const config = controlSizes[size]\r\n const fontSize = componentFontSize[size]\r\n\r\n const isCheckedOrIndeterminate = checked || isIndeterminate\r\n\r\n const wrapperStyle: CSSProperties = {\r\n display: 'inline-flex',\r\n alignItems: 'flex-start',\r\n gap: componentGap.lg,\r\n cursor: disabled ? 'not-allowed' : 'pointer',\r\n opacity: disabled ? stateOpacity.disabled : 1,\r\n }\r\n\r\n const boxStyle: CSSProperties = {\r\n position: 'relative',\r\n width: config.box,\r\n height: config.box,\r\n borderRadius: 'var(--brycks-radius-sm)',\r\n border: `1.5px solid ${\r\n isInvalid\r\n ? 'var(--brycks-error-default)'\r\n : isCheckedOrIndeterminate\r\n ? 'var(--brycks-primary-default)'\r\n : isFocused\r\n ? 'var(--brycks-border-focus)'\r\n : 'var(--brycks-border-default)'\r\n }`,\r\n backgroundColor: isCheckedOrIndeterminate\r\n ? 'var(--brycks-primary-default)'\r\n : isHovered\r\n ? 'var(--brycks-background-subtle)'\r\n : 'var(--brycks-background-app)',\r\n transition: transition.quick,\r\n transform: isPressed ? `scale(${scale.controlPressed})` : `scale(${scale.normal})`,\r\n boxShadow: isFocused ? focusRing.default : focusRing.none,\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n flexShrink: 0,\r\n }\r\n\r\n const iconStyle: CSSProperties = {\r\n color: 'var(--brycks-primary-foreground)',\r\n opacity: isCheckedOrIndeterminate ? 1 : 0,\r\n transform: isCheckedOrIndeterminate ? `scale(${scale.normal})` : `scale(${scale.hidden})`,\r\n transition: transition.quick,\r\n }\r\n\r\n const inputStyle: CSSProperties = {\r\n position: 'absolute',\r\n width: '100%',\r\n height: '100%',\r\n opacity: 0,\r\n cursor: disabled ? 'not-allowed' : 'pointer',\r\n margin: 0,\r\n }\r\n\r\n const labelContainerStyle: CSSProperties = {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: componentGap.xs,\r\n paddingTop: (config.box - fontSize) / 2,\r\n }\r\n\r\n const labelTextStyle: CSSProperties = {\r\n fontSize,\r\n lineHeight: componentLineHeight.snug,\r\n color: 'var(--brycks-foreground-default)',\r\n userSelect: 'none',\r\n }\r\n\r\n const descriptionStyle: CSSProperties = {\r\n fontSize: fontSize - 1,\r\n lineHeight: componentLineHeight.snug,\r\n color: 'var(--brycks-foreground-muted)',\r\n userSelect: 'none',\r\n }\r\n\r\n return (\r\n <label\r\n className={cx(\r\n 'brycks-checkbox',\r\n `brycks-checkbox--${size}`,\r\n isCheckedOrIndeterminate && 'brycks-checkbox--checked',\r\n isInvalid && 'brycks-checkbox--invalid',\r\n disabled && 'brycks-checkbox--disabled',\r\n className\r\n )}\r\n style={{ ...wrapperStyle, ...style }}\r\n data-testid={testId}\r\n onMouseEnter={() => setIsHovered(true)}\r\n onMouseLeave={() => {\r\n setIsHovered(false)\r\n setIsPressed(false)\r\n }}\r\n onMouseDown={() => setIsPressed(true)}\r\n onMouseUp={() => setIsPressed(false)}\r\n >\r\n <span style={boxStyle}>\r\n <input\r\n ref={ref}\r\n type=\"checkbox\"\r\n style={inputStyle}\r\n checked={checked}\r\n disabled={disabled}\r\n aria-invalid={isInvalid}\r\n onChange={onChange}\r\n onFocus={() => setIsFocused(true)}\r\n onBlur={() => setIsFocused(false)}\r\n {...props}\r\n />\r\n <span style={iconStyle}>\r\n {isIndeterminate ? <MinusIcon size={config.icon} /> : <CheckIcon size={config.icon} />}\r\n </span>\r\n </span>\r\n\r\n {(label || description) && (\r\n <span style={labelContainerStyle}>\r\n {label && <span style={labelTextStyle}>{label}</span>}\r\n {description && <span style={descriptionStyle}>{description}</span>}\r\n </span>\r\n )}\r\n </label>\r\n )\r\n})\r\n\r\nCheckbox.displayName = 'Checkbox'\r\n"],"names":["CheckIcon","size","jsx","MinusIcon","Checkbox","forwardRef","label","description","isInvalid","isIndeterminate","className","style","testId","disabled","checked","onChange","props","ref","isFocused","setIsFocused","useState","isHovered","setIsHovered","isPressed","setIsPressed","config","controlSizes","fontSize","componentFontSize","isCheckedOrIndeterminate","wrapperStyle","componentGap","stateOpacity","boxStyle","transition","scale","focusRing","iconStyle","inputStyle","labelContainerStyle","labelTextStyle","componentLineHeight","descriptionStyle","jsxs","cx"],"mappings":"0dA+CA,SAASA,EAAU,CAAE,KAAAC,GAA0B,CAC7C,OACEC,EAAAA,IAAC,OAAI,MAAOD,EAAM,OAAQA,EAAM,QAAQ,YAAY,KAAK,OACvD,SAAAC,EAAAA,IAAC,OAAA,CACC,EAAE,qBACF,OAAO,eACP,YAAY,IACZ,cAAc,QACd,eAAe,OAAA,CAAA,EAEnB,CAEJ,CAGA,SAASC,EAAU,CAAE,KAAAF,GAA0B,CAC7C,OACEC,EAAAA,IAAC,OAAI,MAAOD,EAAM,OAAQA,EAAM,QAAQ,YAAY,KAAK,OACvD,SAAAC,EAAAA,IAAC,OAAA,CACC,EAAE,aACF,OAAO,eACP,YAAY,IACZ,cAAc,OAAA,CAAA,EAElB,CAEJ,CAEO,MAAME,EAAWC,EAAAA,WAA4C,SAClE,CACE,KAAAJ,EAAO,KACP,MAAAK,EACA,YAAAC,EACA,UAAAC,EACA,gBAAAC,EACA,UAAAC,EACA,MAAAC,EACA,OAAAC,EACA,SAAAC,EACA,QAAAC,EACA,SAAAC,EACA,GAAGC,CACL,EACAC,EACA,CACA,KAAM,CAACC,EAAWC,CAAY,EAAIC,EAAAA,SAAS,EAAK,EAC1C,CAACC,EAAWC,CAAY,EAAIF,EAAAA,SAAS,EAAK,EAC1C,CAACG,EAAWC,CAAY,EAAIJ,EAAAA,SAAS,EAAK,EAE1CK,EAASC,EAAAA,aAAazB,CAAI,EAC1B0B,EAAWC,EAAAA,kBAAkB3B,CAAI,EAEjC4B,EAA2Bf,GAAWL,EAEtCqB,EAA8B,CAClC,QAAS,cACT,WAAY,aACZ,IAAKC,EAAAA,aAAa,GAClB,OAAQlB,EAAW,cAAgB,UACnC,QAASA,EAAWmB,EAAAA,aAAa,SAAW,CAAA,EAGxCC,EAA0B,CAC9B,SAAU,WACV,MAAOR,EAAO,IACd,OAAQA,EAAO,IACf,aAAc,0BACd,OAAQ,eACNjB,EACI,8BACAqB,EACE,gCACAX,EACE,6BACA,8BACV,GACA,gBAAiBW,EACb,gCACAR,EACE,kCACA,+BACN,WAAYa,EAAAA,WAAW,MACvB,UAAWX,EAAY,SAASY,EAAAA,MAAM,cAAc,IAAM,SAASA,QAAM,MAAM,IAC/E,UAAWjB,EAAYkB,EAAAA,UAAU,QAAUA,EAAAA,UAAU,KACrD,QAAS,OACT,WAAY,SACZ,eAAgB,SAChB,WAAY,CAAA,EAGRC,EAA2B,CAC/B,MAAO,mCACP,QAASR,EAA2B,EAAI,EACxC,UAAWA,EAA2B,SAASM,EAAAA,MAAM,MAAM,IAAM,SAASA,QAAM,MAAM,IACtF,WAAYD,EAAAA,WAAW,KAAA,EAGnBI,EAA4B,CAChC,SAAU,WACV,MAAO,OACP,OAAQ,OACR,QAAS,EACT,OAAQzB,EAAW,cAAgB,UACnC,OAAQ,CAAA,EAGJ0B,EAAqC,CACzC,QAAS,OACT,cAAe,SACf,IAAKR,EAAAA,aAAa,GAClB,YAAaN,EAAO,IAAME,GAAY,CAAA,EAGlCa,EAAgC,CACpC,SAAAb,EACA,WAAYc,EAAAA,oBAAoB,KAChC,MAAO,mCACP,WAAY,MAAA,EAGRC,EAAkC,CACtC,SAAUf,EAAW,EACrB,WAAYc,EAAAA,oBAAoB,KAChC,MAAO,iCACP,WAAY,MAAA,EAGd,OACEE,EAAAA,KAAC,QAAA,CACC,UAAWC,EAAAA,GACT,kBACA,oBAAoB3C,CAAI,GACxB4B,GAA4B,2BAC5BrB,GAAa,2BACbK,GAAY,4BACZH,CAAA,EAEF,MAAO,CAAE,GAAGoB,EAAc,GAAGnB,CAAA,EAC7B,cAAaC,EACb,aAAc,IAAMU,EAAa,EAAI,EACrC,aAAc,IAAM,CAClBA,EAAa,EAAK,EAClBE,EAAa,EAAK,CACpB,EACA,YAAa,IAAMA,EAAa,EAAI,EACpC,UAAW,IAAMA,EAAa,EAAK,EAEnC,SAAA,CAAAmB,EAAAA,KAAC,OAAA,CAAK,MAAOV,EACX,SAAA,CAAA/B,EAAAA,IAAC,QAAA,CACC,IAAAe,EACA,KAAK,WACL,MAAOqB,EACP,QAAAxB,EACA,SAAAD,EACA,eAAcL,EACd,SAAAO,EACA,QAAS,IAAMI,EAAa,EAAI,EAChC,OAAQ,IAAMA,EAAa,EAAK,EAC/B,GAAGH,CAAA,CAAA,QAEL,OAAA,CAAK,MAAOqB,EACV,SAAA5B,QAAmBN,EAAA,CAAU,KAAMsB,EAAO,IAAA,CAAM,EAAKvB,MAACF,EAAA,CAAU,KAAMyB,EAAO,KAAM,CAAA,CACtF,CAAA,EACF,GAEEnB,GAASC,IACToC,EAAAA,KAAC,OAAA,CAAK,MAAOJ,EACV,SAAA,CAAAjC,GAASJ,EAAAA,IAAC,OAAA,CAAK,MAAOsC,EAAiB,SAAAlC,EAAM,EAC7CC,GAAeL,EAAAA,IAAC,OAAA,CAAK,MAAOwC,EAAmB,SAAAnC,CAAA,CAAY,CAAA,CAAA,CAC9D,CAAA,CAAA,CAAA,CAIR,CAAC,EAEDH,EAAS,YAAc"}