@cdx-ui/components 0.0.1-beta.9 → 0.0.1-beta.90

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 (981) hide show
  1. package/README.md +32 -20
  2. package/lib/commonjs/animation/hooks/index.js +17 -0
  3. package/lib/commonjs/animation/hooks/index.js.map +1 -0
  4. package/lib/commonjs/animation/hooks/useCombinedAnimationDisabledState.js +50 -0
  5. package/lib/commonjs/animation/hooks/useCombinedAnimationDisabledState.js.map +1 -0
  6. package/lib/commonjs/animation/index.js +39 -0
  7. package/lib/commonjs/animation/index.js.map +1 -0
  8. package/lib/commonjs/animation/types.js +6 -0
  9. package/lib/commonjs/animation/types.js.map +1 -0
  10. package/lib/commonjs/animation/utils.js +223 -0
  11. package/lib/commonjs/animation/utils.js.map +1 -0
  12. package/lib/commonjs/components/Alert/index.js +263 -0
  13. package/lib/commonjs/components/Alert/index.js.map +1 -0
  14. package/lib/commonjs/components/Alert/styles.js +87 -0
  15. package/lib/commonjs/components/Alert/styles.js.map +1 -0
  16. package/lib/commonjs/components/AlertDialog/index.js +17 -14
  17. package/lib/commonjs/components/AlertDialog/index.js.map +1 -1
  18. package/lib/commonjs/components/Avatar/index.js +126 -26
  19. package/lib/commonjs/components/Avatar/index.js.map +1 -1
  20. package/lib/commonjs/components/Avatar/styles.js +36 -29
  21. package/lib/commonjs/components/Avatar/styles.js.map +1 -1
  22. package/lib/commonjs/components/BottomSheet/index.js +80 -27
  23. package/lib/commonjs/components/BottomSheet/index.js.map +1 -1
  24. package/lib/commonjs/components/BottomSheet/styles.js +5 -42
  25. package/lib/commonjs/components/BottomSheet/styles.js.map +1 -1
  26. package/lib/commonjs/components/Button/index.js +143 -29
  27. package/lib/commonjs/components/Button/index.js.map +1 -1
  28. package/lib/commonjs/components/Button/styles.js +94 -29
  29. package/lib/commonjs/components/Button/styles.js.map +1 -1
  30. package/lib/commonjs/components/CLAUDE.md +194 -0
  31. package/lib/commonjs/components/Card/index.js +62 -16
  32. package/lib/commonjs/components/Card/index.js.map +1 -1
  33. package/lib/commonjs/components/Card/styles.js +27 -4
  34. package/lib/commonjs/components/Card/styles.js.map +1 -1
  35. package/lib/commonjs/components/Checkbox/index.js +71 -48
  36. package/lib/commonjs/components/Checkbox/index.js.map +1 -1
  37. package/lib/commonjs/components/Checkbox/styles.js +41 -47
  38. package/lib/commonjs/components/Checkbox/styles.js.map +1 -1
  39. package/lib/commonjs/components/Chip/index.js +94 -17
  40. package/lib/commonjs/components/Chip/index.js.map +1 -1
  41. package/lib/commonjs/components/Chip/styles.js +178 -21
  42. package/lib/commonjs/components/Chip/styles.js.map +1 -1
  43. package/lib/commonjs/components/CurrencyInput/index.js +157 -0
  44. package/lib/commonjs/components/CurrencyInput/index.js.map +1 -0
  45. package/lib/commonjs/components/CurrencyInput/styles.js +31 -0
  46. package/lib/commonjs/components/CurrencyInput/styles.js.map +1 -0
  47. package/lib/commonjs/components/Dialog/index.js +140 -65
  48. package/lib/commonjs/components/Dialog/index.js.map +1 -1
  49. package/lib/commonjs/components/Dialog/styles.js +60 -14
  50. package/lib/commonjs/components/Dialog/styles.js.map +1 -1
  51. package/lib/commonjs/components/Divider/index.js +98 -0
  52. package/lib/commonjs/components/Divider/index.js.map +1 -0
  53. package/lib/commonjs/components/Divider/styles.js +75 -0
  54. package/lib/commonjs/components/Divider/styles.js.map +1 -0
  55. package/lib/commonjs/components/Field/index.js +77 -27
  56. package/lib/commonjs/components/Field/index.js.map +1 -1
  57. package/lib/commonjs/components/Field/styles.js +4 -4
  58. package/lib/commonjs/components/Field/styles.js.map +1 -1
  59. package/lib/commonjs/components/Form/index.js +5 -12
  60. package/lib/commonjs/components/Form/index.js.map +1 -1
  61. package/lib/commonjs/components/Heading/styles.js +1 -1
  62. package/lib/commonjs/components/Heading/styles.js.map +1 -1
  63. package/lib/commonjs/components/Icon/index.js +12 -5
  64. package/lib/commonjs/components/Icon/index.js.map +1 -1
  65. package/lib/commonjs/components/IconButton/index.js +11 -34
  66. package/lib/commonjs/components/IconButton/index.js.map +1 -1
  67. package/lib/commonjs/components/IconButton/styles.js +135 -10
  68. package/lib/commonjs/components/IconButton/styles.js.map +1 -1
  69. package/lib/commonjs/components/Input/index.js +50 -20
  70. package/lib/commonjs/components/Input/index.js.map +1 -1
  71. package/lib/commonjs/components/Input/styles.js +18 -6
  72. package/lib/commonjs/components/Input/styles.js.map +1 -1
  73. package/lib/commonjs/components/Link/index.js +35 -9
  74. package/lib/commonjs/components/Link/index.js.map +1 -1
  75. package/lib/commonjs/components/Link/styles.js +56 -6
  76. package/lib/commonjs/components/Link/styles.js.map +1 -1
  77. package/lib/commonjs/components/ListItem/index.js +132 -79
  78. package/lib/commonjs/components/ListItem/index.js.map +1 -1
  79. package/lib/commonjs/components/ListItem/styles.js +29 -57
  80. package/lib/commonjs/components/ListItem/styles.js.map +1 -1
  81. package/lib/commonjs/components/OtpInput/index.js +94 -28
  82. package/lib/commonjs/components/OtpInput/index.js.map +1 -1
  83. package/lib/commonjs/components/ProgressBar/index.js +8 -13
  84. package/lib/commonjs/components/ProgressBar/index.js.map +1 -1
  85. package/lib/commonjs/components/ProgressSegmented/index.js +24 -10
  86. package/lib/commonjs/components/ProgressSegmented/index.js.map +1 -1
  87. package/lib/commonjs/components/QuickActionButton/index.js +133 -0
  88. package/lib/commonjs/components/QuickActionButton/index.js.map +1 -0
  89. package/lib/commonjs/components/QuickActionButton/styles.js +17 -0
  90. package/lib/commonjs/components/QuickActionButton/styles.js.map +1 -0
  91. package/lib/commonjs/components/Radio/index.js +165 -0
  92. package/lib/commonjs/components/Radio/index.js.map +1 -0
  93. package/lib/commonjs/components/Radio/styles.js +31 -0
  94. package/lib/commonjs/components/Radio/styles.js.map +1 -0
  95. package/lib/commonjs/components/ScopedTheme/index.js +24 -0
  96. package/lib/commonjs/components/ScopedTheme/index.js.map +1 -0
  97. package/lib/commonjs/components/Select/index.js +111 -39
  98. package/lib/commonjs/components/Select/index.js.map +1 -1
  99. package/lib/commonjs/components/Select/styles.js +23 -20
  100. package/lib/commonjs/components/Select/styles.js.map +1 -1
  101. package/lib/commonjs/components/Skeleton/index.js +37 -0
  102. package/lib/commonjs/components/Skeleton/index.js.map +1 -0
  103. package/lib/commonjs/components/Skeleton/styles.js +9 -0
  104. package/lib/commonjs/components/Skeleton/styles.js.map +1 -0
  105. package/lib/commonjs/components/Switch/BaseSwitch.js +23 -13
  106. package/lib/commonjs/components/Switch/BaseSwitch.js.map +1 -1
  107. package/lib/commonjs/components/Switch/BaseSwitch.web.js +25 -21
  108. package/lib/commonjs/components/Switch/BaseSwitch.web.js.map +1 -1
  109. package/lib/commonjs/components/Switch/index.js +34 -3
  110. package/lib/commonjs/components/Switch/index.js.map +1 -1
  111. package/lib/commonjs/components/Text/styles.js +2 -2
  112. package/lib/commonjs/components/Text/styles.js.map +1 -1
  113. package/lib/commonjs/components/Tile/index.js +324 -0
  114. package/lib/commonjs/components/Tile/index.js.map +1 -0
  115. package/lib/commonjs/components/Tile/styles.js +52 -0
  116. package/lib/commonjs/components/Tile/styles.js.map +1 -0
  117. package/lib/commonjs/components/Toast/animation.js +329 -0
  118. package/lib/commonjs/components/Toast/animation.js.map +1 -0
  119. package/lib/commonjs/components/Toast/hooks.js +66 -0
  120. package/lib/commonjs/components/Toast/hooks.js.map +1 -0
  121. package/lib/commonjs/components/Toast/index.js +493 -0
  122. package/lib/commonjs/components/Toast/index.js.map +1 -0
  123. package/lib/commonjs/components/Toast/styles.js +141 -0
  124. package/lib/commonjs/components/Toast/styles.js.map +1 -0
  125. package/lib/commonjs/components/Toast/types.js +6 -0
  126. package/lib/commonjs/components/Toast/types.js.map +1 -0
  127. package/lib/commonjs/components/VirtualizedList/index.js.map +1 -1
  128. package/lib/commonjs/components/index.js +108 -0
  129. package/lib/commonjs/components/index.js.map +1 -1
  130. package/lib/commonjs/figma/Alert.Button.figma.js +31 -0
  131. package/lib/commonjs/figma/Alert.Button.figma.js.map +1 -0
  132. package/lib/commonjs/figma/Alert.Close.figma.js +24 -0
  133. package/lib/commonjs/figma/Alert.Close.figma.js.map +1 -0
  134. package/lib/commonjs/figma/Alert.Description.figma.js +20 -0
  135. package/lib/commonjs/figma/Alert.Description.figma.js.map +1 -0
  136. package/lib/commonjs/figma/Alert.Title.figma.js +20 -0
  137. package/lib/commonjs/figma/Alert.Title.figma.js.map +1 -0
  138. package/lib/commonjs/figma/Alert.figma.js +42 -0
  139. package/lib/commonjs/figma/Alert.figma.js.map +1 -0
  140. package/lib/commonjs/figma/AlertDialog.Description.figma.js +20 -0
  141. package/lib/commonjs/figma/AlertDialog.Description.figma.js.map +1 -0
  142. package/lib/commonjs/figma/AlertDialog.Footer.figma.js +41 -0
  143. package/lib/commonjs/figma/AlertDialog.Footer.figma.js.map +1 -0
  144. package/lib/commonjs/figma/AlertDialog.Header.figma.js +28 -0
  145. package/lib/commonjs/figma/AlertDialog.Header.figma.js.map +1 -0
  146. package/lib/commonjs/figma/AlertDialog.Text.figma.js +20 -0
  147. package/lib/commonjs/figma/AlertDialog.Text.figma.js.map +1 -0
  148. package/lib/commonjs/figma/AlertDialog.Title.figma.js +27 -0
  149. package/lib/commonjs/figma/AlertDialog.Title.figma.js.map +1 -0
  150. package/lib/commonjs/figma/AlertDialog.figma.js +43 -0
  151. package/lib/commonjs/figma/AlertDialog.figma.js.map +1 -0
  152. package/lib/commonjs/figma/Avatar.figma.js +57 -0
  153. package/lib/commonjs/figma/Avatar.figma.js.map +1 -0
  154. package/lib/commonjs/figma/Button.figma.js +66 -0
  155. package/lib/commonjs/figma/Button.figma.js.map +1 -0
  156. package/lib/commonjs/figma/CLAUDE.md +30 -0
  157. package/lib/commonjs/figma/Card.Header.figma.js +28 -0
  158. package/lib/commonjs/figma/Card.Header.figma.js.map +1 -0
  159. package/lib/commonjs/figma/Card.figma.js +42 -0
  160. package/lib/commonjs/figma/Card.figma.js.map +1 -0
  161. package/lib/commonjs/figma/Checkbox.figma.js +55 -0
  162. package/lib/commonjs/figma/Checkbox.figma.js.map +1 -0
  163. package/lib/commonjs/figma/Chip.figma.js +68 -0
  164. package/lib/commonjs/figma/Chip.figma.js.map +1 -0
  165. package/lib/commonjs/figma/Dialog.Description.figma.js +20 -0
  166. package/lib/commonjs/figma/Dialog.Description.figma.js.map +1 -0
  167. package/lib/commonjs/figma/Dialog.Footer.figma.js +30 -0
  168. package/lib/commonjs/figma/Dialog.Footer.figma.js.map +1 -0
  169. package/lib/commonjs/figma/Dialog.Header.figma.js +29 -0
  170. package/lib/commonjs/figma/Dialog.Header.figma.js.map +1 -0
  171. package/lib/commonjs/figma/Dialog.Text.figma.js +20 -0
  172. package/lib/commonjs/figma/Dialog.Text.figma.js.map +1 -0
  173. package/lib/commonjs/figma/Dialog.Title.figma.js +27 -0
  174. package/lib/commonjs/figma/Dialog.Title.figma.js.map +1 -0
  175. package/lib/commonjs/figma/Dialog.figma.js +51 -0
  176. package/lib/commonjs/figma/Dialog.figma.js.map +1 -0
  177. package/lib/commonjs/figma/Divider.figma.js +32 -0
  178. package/lib/commonjs/figma/Divider.figma.js.map +1 -0
  179. package/lib/commonjs/figma/Field.Input.figma.js +57 -0
  180. package/lib/commonjs/figma/Field.Input.figma.js.map +1 -0
  181. package/lib/commonjs/figma/Field.Select.figma.js +57 -0
  182. package/lib/commonjs/figma/Field.Select.figma.js.map +1 -0
  183. package/lib/commonjs/figma/Heading.figma.js +30 -0
  184. package/lib/commonjs/figma/Heading.figma.js.map +1 -0
  185. package/lib/commonjs/figma/Icon.figma.js +20 -0
  186. package/lib/commonjs/figma/Icon.figma.js.map +1 -0
  187. package/lib/commonjs/figma/IconButton.figma.js +47 -0
  188. package/lib/commonjs/figma/IconButton.figma.js.map +1 -0
  189. package/lib/commonjs/figma/Input.figma.js +52 -0
  190. package/lib/commonjs/figma/Input.figma.js.map +1 -0
  191. package/lib/commonjs/figma/Link.figma.js +30 -0
  192. package/lib/commonjs/figma/Link.figma.js.map +1 -0
  193. package/lib/commonjs/figma/ListItem.Description.figma.js +23 -0
  194. package/lib/commonjs/figma/ListItem.Description.figma.js.map +1 -0
  195. package/lib/commonjs/figma/ListItem.LeadingSlot.figma.js +24 -0
  196. package/lib/commonjs/figma/ListItem.LeadingSlot.figma.js.map +1 -0
  197. package/lib/commonjs/figma/ListItem.Meta.figma.js +23 -0
  198. package/lib/commonjs/figma/ListItem.Meta.figma.js.map +1 -0
  199. package/lib/commonjs/figma/ListItem.SectionHeader.figma.js +24 -0
  200. package/lib/commonjs/figma/ListItem.SectionHeader.figma.js.map +1 -0
  201. package/lib/commonjs/figma/ListItem.Title.figma.js +23 -0
  202. package/lib/commonjs/figma/ListItem.Title.figma.js.map +1 -0
  203. package/lib/commonjs/figma/ListItem.TrailingSlot.figma.js +24 -0
  204. package/lib/commonjs/figma/ListItem.TrailingSlot.figma.js.map +1 -0
  205. package/lib/commonjs/figma/ListItem.figma.js +50 -0
  206. package/lib/commonjs/figma/ListItem.figma.js.map +1 -0
  207. package/lib/commonjs/figma/ProgressSegmented.figma.js +39 -0
  208. package/lib/commonjs/figma/ProgressSegmented.figma.js.map +1 -0
  209. package/lib/commonjs/figma/QuickActionButton.figma.js +38 -0
  210. package/lib/commonjs/figma/QuickActionButton.figma.js.map +1 -0
  211. package/lib/commonjs/figma/Radio.figma.js +40 -0
  212. package/lib/commonjs/figma/Radio.figma.js.map +1 -0
  213. package/lib/commonjs/figma/Select.figma.js +53 -0
  214. package/lib/commonjs/figma/Select.figma.js.map +1 -0
  215. package/lib/commonjs/figma/Text.figma.js +32 -0
  216. package/lib/commonjs/figma/Text.figma.js.map +1 -0
  217. package/lib/commonjs/figma/icons.figma.batch.js +27 -0
  218. package/lib/commonjs/figma/icons.figma.batch.js.map +1 -0
  219. package/lib/commonjs/figma/icons.figma.batch.json +17705 -0
  220. package/lib/commonjs/globals.d.js +2 -0
  221. package/lib/commonjs/globals.d.js.map +1 -0
  222. package/lib/commonjs/hooks/index.js +19 -0
  223. package/lib/commonjs/hooks/index.js.map +1 -0
  224. package/lib/commonjs/hooks/useForgeBottomTabScreenOptions.js +246 -0
  225. package/lib/commonjs/hooks/useForgeBottomTabScreenOptions.js.map +1 -0
  226. package/lib/commonjs/index.js +39 -0
  227. package/lib/commonjs/index.js.map +1 -1
  228. package/lib/commonjs/metro/withCdxMetroConfig.js +7 -18
  229. package/lib/commonjs/metro/withCdxMetroConfig.js.map +1 -1
  230. package/lib/commonjs/metro/withForgeMetroConfig.js +24 -0
  231. package/lib/commonjs/metro/withForgeMetroConfig.js.map +1 -0
  232. package/lib/commonjs/navigation/forgeTabIcon.js +43 -0
  233. package/lib/commonjs/navigation/forgeTabIcon.js.map +1 -0
  234. package/lib/commonjs/navigation/forgeTabIcon.native.js +35 -0
  235. package/lib/commonjs/navigation/forgeTabIcon.native.js.map +1 -0
  236. package/lib/commonjs/navigation/index.js +13 -0
  237. package/lib/commonjs/navigation/index.js.map +1 -0
  238. package/lib/commonjs/navigation/types.js +38 -0
  239. package/lib/commonjs/navigation/types.js.map +1 -0
  240. package/lib/commonjs/providers/animation-settings/index.js +31 -0
  241. package/lib/commonjs/providers/animation-settings/index.js.map +1 -0
  242. package/lib/commonjs/providers/animation-settings/provider.js +59 -0
  243. package/lib/commonjs/providers/animation-settings/provider.js.map +1 -0
  244. package/lib/commonjs/providers/animation-settings/types.js +6 -0
  245. package/lib/commonjs/providers/animation-settings/types.js.map +1 -0
  246. package/lib/commonjs/providers/forge-design/index.js +29 -0
  247. package/lib/commonjs/providers/forge-design/index.js.map +1 -0
  248. package/lib/commonjs/providers/forge-design/provider.js +71 -0
  249. package/lib/commonjs/providers/forge-design/provider.js.map +1 -0
  250. package/lib/commonjs/providers/forge-design/types.js +6 -0
  251. package/lib/commonjs/providers/forge-design/types.js.map +1 -0
  252. package/lib/commonjs/providers/text-component/index.js +28 -0
  253. package/lib/commonjs/providers/text-component/index.js.map +1 -0
  254. package/lib/commonjs/providers/text-component/provider.js +11 -0
  255. package/lib/commonjs/providers/text-component/provider.js.map +1 -0
  256. package/lib/commonjs/providers/text-component/types.js +6 -0
  257. package/lib/commonjs/providers/text-component/types.js.map +1 -0
  258. package/lib/commonjs/providers/toast/index.js +33 -0
  259. package/lib/commonjs/providers/toast/index.js.map +1 -0
  260. package/lib/commonjs/providers/toast/insets-container.js +166 -0
  261. package/lib/commonjs/providers/toast/insets-container.js.map +1 -0
  262. package/lib/commonjs/providers/toast/lifecycle.context.js +36 -0
  263. package/lib/commonjs/providers/toast/lifecycle.context.js.map +1 -0
  264. package/lib/commonjs/providers/toast/provider.js +508 -0
  265. package/lib/commonjs/providers/toast/provider.js.map +1 -0
  266. package/lib/commonjs/providers/toast/reducer.js +46 -0
  267. package/lib/commonjs/providers/toast/reducer.js.map +1 -0
  268. package/lib/commonjs/providers/toast/toast-config.context.js +29 -0
  269. package/lib/commonjs/providers/toast/toast-config.context.js.map +1 -0
  270. package/lib/commonjs/providers/toast/toast-item-renderer.js +43 -0
  271. package/lib/commonjs/providers/toast/toast-item-renderer.js.map +1 -0
  272. package/lib/commonjs/providers/toast/types.js +6 -0
  273. package/lib/commonjs/providers/toast/types.js.map +1 -0
  274. package/lib/commonjs/styles/primitives.js +43 -6
  275. package/lib/commonjs/styles/primitives.js.map +1 -1
  276. package/lib/commonjs/styles.css +0 -5
  277. package/lib/commonjs/utils/positionToDataIcon.js +41 -0
  278. package/lib/commonjs/utils/positionToDataIcon.js.map +1 -0
  279. package/lib/module/animation/hooks/index.js +4 -0
  280. package/lib/module/animation/hooks/index.js.map +1 -0
  281. package/lib/module/animation/hooks/useCombinedAnimationDisabledState.js +47 -0
  282. package/lib/module/animation/hooks/useCombinedAnimationDisabledState.js.map +1 -0
  283. package/lib/module/animation/index.js +6 -0
  284. package/lib/module/animation/index.js.map +1 -0
  285. package/lib/module/animation/types.js +4 -0
  286. package/lib/module/animation/types.js.map +1 -0
  287. package/lib/module/animation/utils.js +212 -0
  288. package/lib/module/animation/utils.js.map +1 -0
  289. package/lib/module/components/Alert/index.js +259 -0
  290. package/lib/module/components/Alert/index.js.map +1 -0
  291. package/lib/module/components/Alert/styles.js +84 -0
  292. package/lib/module/components/Alert/styles.js.map +1 -0
  293. package/lib/module/components/AlertDialog/index.js +18 -15
  294. package/lib/module/components/AlertDialog/index.js.map +1 -1
  295. package/lib/module/components/Avatar/index.js +129 -29
  296. package/lib/module/components/Avatar/index.js.map +1 -1
  297. package/lib/module/components/Avatar/styles.js +36 -29
  298. package/lib/module/components/Avatar/styles.js.map +1 -1
  299. package/lib/module/components/BottomSheet/index.js +85 -32
  300. package/lib/module/components/BottomSheet/index.js.map +1 -1
  301. package/lib/module/components/BottomSheet/styles.js +4 -42
  302. package/lib/module/components/BottomSheet/styles.js.map +1 -1
  303. package/lib/module/components/Button/index.js +146 -33
  304. package/lib/module/components/Button/index.js.map +1 -1
  305. package/lib/module/components/Button/styles.js +93 -28
  306. package/lib/module/components/Button/styles.js.map +1 -1
  307. package/lib/module/components/CLAUDE.md +194 -0
  308. package/lib/module/components/Card/index.js +64 -17
  309. package/lib/module/components/Card/index.js.map +1 -1
  310. package/lib/module/components/Card/styles.js +27 -4
  311. package/lib/module/components/Card/styles.js.map +1 -1
  312. package/lib/module/components/Checkbox/index.js +75 -52
  313. package/lib/module/components/Checkbox/index.js.map +1 -1
  314. package/lib/module/components/Checkbox/styles.js +43 -48
  315. package/lib/module/components/Checkbox/styles.js.map +1 -1
  316. package/lib/module/components/Chip/index.js +98 -21
  317. package/lib/module/components/Chip/index.js.map +1 -1
  318. package/lib/module/components/Chip/styles.js +177 -20
  319. package/lib/module/components/Chip/styles.js.map +1 -1
  320. package/lib/module/components/CurrencyInput/index.js +154 -0
  321. package/lib/module/components/CurrencyInput/index.js.map +1 -0
  322. package/lib/module/components/CurrencyInput/styles.js +27 -0
  323. package/lib/module/components/CurrencyInput/styles.js.map +1 -0
  324. package/lib/module/components/Dialog/index.js +147 -72
  325. package/lib/module/components/Dialog/index.js.map +1 -1
  326. package/lib/module/components/Dialog/styles.js +60 -14
  327. package/lib/module/components/Dialog/styles.js.map +1 -1
  328. package/lib/module/components/Divider/index.js +94 -0
  329. package/lib/module/components/Divider/index.js.map +1 -0
  330. package/lib/module/components/Divider/styles.js +71 -0
  331. package/lib/module/components/Divider/styles.js.map +1 -0
  332. package/lib/module/components/Field/index.js +81 -32
  333. package/lib/module/components/Field/index.js.map +1 -1
  334. package/lib/module/components/Field/styles.js +4 -4
  335. package/lib/module/components/Field/styles.js.map +1 -1
  336. package/lib/module/components/Form/index.js +7 -14
  337. package/lib/module/components/Form/index.js.map +1 -1
  338. package/lib/module/components/Heading/styles.js +1 -1
  339. package/lib/module/components/Heading/styles.js.map +1 -1
  340. package/lib/module/components/Icon/index.js +12 -5
  341. package/lib/module/components/Icon/index.js.map +1 -1
  342. package/lib/module/components/IconButton/index.js +12 -35
  343. package/lib/module/components/IconButton/index.js.map +1 -1
  344. package/lib/module/components/IconButton/styles.js +135 -10
  345. package/lib/module/components/IconButton/styles.js.map +1 -1
  346. package/lib/module/components/Input/index.js +53 -23
  347. package/lib/module/components/Input/index.js.map +1 -1
  348. package/lib/module/components/Input/styles.js +18 -6
  349. package/lib/module/components/Input/styles.js.map +1 -1
  350. package/lib/module/components/Link/index.js +38 -11
  351. package/lib/module/components/Link/index.js.map +1 -1
  352. package/lib/module/components/Link/styles.js +55 -6
  353. package/lib/module/components/Link/styles.js.map +1 -1
  354. package/lib/module/components/ListItem/index.js +137 -84
  355. package/lib/module/components/ListItem/index.js.map +1 -1
  356. package/lib/module/components/ListItem/styles.js +30 -58
  357. package/lib/module/components/ListItem/styles.js.map +1 -1
  358. package/lib/module/components/OtpInput/index.js +94 -28
  359. package/lib/module/components/OtpInput/index.js.map +1 -1
  360. package/lib/module/components/ProgressBar/index.js +9 -14
  361. package/lib/module/components/ProgressBar/index.js.map +1 -1
  362. package/lib/module/components/ProgressSegmented/index.js +25 -11
  363. package/lib/module/components/ProgressSegmented/index.js.map +1 -1
  364. package/lib/module/components/QuickActionButton/index.js +129 -0
  365. package/lib/module/components/QuickActionButton/index.js.map +1 -0
  366. package/lib/module/components/QuickActionButton/styles.js +13 -0
  367. package/lib/module/components/QuickActionButton/styles.js.map +1 -0
  368. package/lib/module/components/Radio/index.js +161 -0
  369. package/lib/module/components/Radio/index.js.map +1 -0
  370. package/lib/module/components/Radio/styles.js +27 -0
  371. package/lib/module/components/Radio/styles.js.map +1 -0
  372. package/lib/module/components/ScopedTheme/index.js +19 -0
  373. package/lib/module/components/ScopedTheme/index.js.map +1 -0
  374. package/lib/module/components/Select/index.js +117 -45
  375. package/lib/module/components/Select/index.js.map +1 -1
  376. package/lib/module/components/Select/styles.js +24 -21
  377. package/lib/module/components/Select/styles.js.map +1 -1
  378. package/lib/module/components/Skeleton/index.js +32 -0
  379. package/lib/module/components/Skeleton/index.js.map +1 -0
  380. package/lib/module/components/Skeleton/styles.js +5 -0
  381. package/lib/module/components/Skeleton/styles.js.map +1 -0
  382. package/lib/module/components/Switch/BaseSwitch.js +24 -14
  383. package/lib/module/components/Switch/BaseSwitch.js.map +1 -1
  384. package/lib/module/components/Switch/BaseSwitch.web.js +26 -22
  385. package/lib/module/components/Switch/BaseSwitch.web.js.map +1 -1
  386. package/lib/module/components/Switch/index.js +35 -4
  387. package/lib/module/components/Switch/index.js.map +1 -1
  388. package/lib/module/components/Text/styles.js +2 -2
  389. package/lib/module/components/Text/styles.js.map +1 -1
  390. package/lib/module/components/Tile/index.js +315 -0
  391. package/lib/module/components/Tile/index.js.map +1 -0
  392. package/lib/module/components/Tile/styles.js +48 -0
  393. package/lib/module/components/Tile/styles.js.map +1 -0
  394. package/lib/module/components/Toast/animation.js +324 -0
  395. package/lib/module/components/Toast/animation.js.map +1 -0
  396. package/lib/module/components/Toast/hooks.js +61 -0
  397. package/lib/module/components/Toast/hooks.js.map +1 -0
  398. package/lib/module/components/Toast/index.js +487 -0
  399. package/lib/module/components/Toast/index.js.map +1 -0
  400. package/lib/module/components/Toast/styles.js +138 -0
  401. package/lib/module/components/Toast/styles.js.map +1 -0
  402. package/lib/module/components/Toast/types.js +4 -0
  403. package/lib/module/components/Toast/types.js.map +1 -0
  404. package/lib/module/components/VirtualizedList/index.js.map +1 -1
  405. package/lib/module/components/index.js +9 -0
  406. package/lib/module/components/index.js.map +1 -1
  407. package/lib/module/figma/Alert.Button.figma.js +25 -0
  408. package/lib/module/figma/Alert.Button.figma.js.map +1 -0
  409. package/lib/module/figma/Alert.Close.figma.js +18 -0
  410. package/lib/module/figma/Alert.Close.figma.js.map +1 -0
  411. package/lib/module/figma/Alert.Description.figma.js +14 -0
  412. package/lib/module/figma/Alert.Description.figma.js.map +1 -0
  413. package/lib/module/figma/Alert.Title.figma.js +14 -0
  414. package/lib/module/figma/Alert.Title.figma.js.map +1 -0
  415. package/lib/module/figma/Alert.figma.js +36 -0
  416. package/lib/module/figma/Alert.figma.js.map +1 -0
  417. package/lib/module/figma/AlertDialog.Description.figma.js +14 -0
  418. package/lib/module/figma/AlertDialog.Description.figma.js.map +1 -0
  419. package/lib/module/figma/AlertDialog.Footer.figma.js +35 -0
  420. package/lib/module/figma/AlertDialog.Footer.figma.js.map +1 -0
  421. package/lib/module/figma/AlertDialog.Header.figma.js +22 -0
  422. package/lib/module/figma/AlertDialog.Header.figma.js.map +1 -0
  423. package/lib/module/figma/AlertDialog.Text.figma.js +14 -0
  424. package/lib/module/figma/AlertDialog.Text.figma.js.map +1 -0
  425. package/lib/module/figma/AlertDialog.Title.figma.js +21 -0
  426. package/lib/module/figma/AlertDialog.Title.figma.js.map +1 -0
  427. package/lib/module/figma/AlertDialog.figma.js +37 -0
  428. package/lib/module/figma/AlertDialog.figma.js.map +1 -0
  429. package/lib/module/figma/Avatar.figma.js +51 -0
  430. package/lib/module/figma/Avatar.figma.js.map +1 -0
  431. package/lib/module/figma/Button.figma.js +60 -0
  432. package/lib/module/figma/Button.figma.js.map +1 -0
  433. package/lib/module/figma/CLAUDE.md +30 -0
  434. package/lib/module/figma/Card.Header.figma.js +22 -0
  435. package/lib/module/figma/Card.Header.figma.js.map +1 -0
  436. package/lib/module/figma/Card.figma.js +36 -0
  437. package/lib/module/figma/Card.figma.js.map +1 -0
  438. package/lib/module/figma/Checkbox.figma.js +49 -0
  439. package/lib/module/figma/Checkbox.figma.js.map +1 -0
  440. package/lib/module/figma/Chip.figma.js +62 -0
  441. package/lib/module/figma/Chip.figma.js.map +1 -0
  442. package/lib/module/figma/Dialog.Description.figma.js +14 -0
  443. package/lib/module/figma/Dialog.Description.figma.js.map +1 -0
  444. package/lib/module/figma/Dialog.Footer.figma.js +24 -0
  445. package/lib/module/figma/Dialog.Footer.figma.js.map +1 -0
  446. package/lib/module/figma/Dialog.Header.figma.js +23 -0
  447. package/lib/module/figma/Dialog.Header.figma.js.map +1 -0
  448. package/lib/module/figma/Dialog.Text.figma.js +14 -0
  449. package/lib/module/figma/Dialog.Text.figma.js.map +1 -0
  450. package/lib/module/figma/Dialog.Title.figma.js +21 -0
  451. package/lib/module/figma/Dialog.Title.figma.js.map +1 -0
  452. package/lib/module/figma/Dialog.figma.js +45 -0
  453. package/lib/module/figma/Dialog.figma.js.map +1 -0
  454. package/lib/module/figma/Divider.figma.js +26 -0
  455. package/lib/module/figma/Divider.figma.js.map +1 -0
  456. package/lib/module/figma/Field.Input.figma.js +51 -0
  457. package/lib/module/figma/Field.Input.figma.js.map +1 -0
  458. package/lib/module/figma/Field.Select.figma.js +51 -0
  459. package/lib/module/figma/Field.Select.figma.js.map +1 -0
  460. package/lib/module/figma/Heading.figma.js +24 -0
  461. package/lib/module/figma/Heading.figma.js.map +1 -0
  462. package/lib/module/figma/Icon.figma.js +14 -0
  463. package/lib/module/figma/Icon.figma.js.map +1 -0
  464. package/lib/module/figma/IconButton.figma.js +41 -0
  465. package/lib/module/figma/IconButton.figma.js.map +1 -0
  466. package/lib/module/figma/Input.figma.js +46 -0
  467. package/lib/module/figma/Input.figma.js.map +1 -0
  468. package/lib/module/figma/Link.figma.js +24 -0
  469. package/lib/module/figma/Link.figma.js.map +1 -0
  470. package/lib/module/figma/ListItem.Description.figma.js +17 -0
  471. package/lib/module/figma/ListItem.Description.figma.js.map +1 -0
  472. package/lib/module/figma/ListItem.LeadingSlot.figma.js +18 -0
  473. package/lib/module/figma/ListItem.LeadingSlot.figma.js.map +1 -0
  474. package/lib/module/figma/ListItem.Meta.figma.js +17 -0
  475. package/lib/module/figma/ListItem.Meta.figma.js.map +1 -0
  476. package/lib/module/figma/ListItem.SectionHeader.figma.js +18 -0
  477. package/lib/module/figma/ListItem.SectionHeader.figma.js.map +1 -0
  478. package/lib/module/figma/ListItem.Title.figma.js +17 -0
  479. package/lib/module/figma/ListItem.Title.figma.js.map +1 -0
  480. package/lib/module/figma/ListItem.TrailingSlot.figma.js +18 -0
  481. package/lib/module/figma/ListItem.TrailingSlot.figma.js.map +1 -0
  482. package/lib/module/figma/ListItem.figma.js +44 -0
  483. package/lib/module/figma/ListItem.figma.js.map +1 -0
  484. package/lib/module/figma/ProgressSegmented.figma.js +33 -0
  485. package/lib/module/figma/ProgressSegmented.figma.js.map +1 -0
  486. package/lib/module/figma/QuickActionButton.figma.js +32 -0
  487. package/lib/module/figma/QuickActionButton.figma.js.map +1 -0
  488. package/lib/module/figma/Radio.figma.js +34 -0
  489. package/lib/module/figma/Radio.figma.js.map +1 -0
  490. package/lib/module/figma/Select.figma.js +47 -0
  491. package/lib/module/figma/Select.figma.js.map +1 -0
  492. package/lib/module/figma/Text.figma.js +26 -0
  493. package/lib/module/figma/Text.figma.js.map +1 -0
  494. package/lib/module/figma/icons.figma.batch.js +22 -0
  495. package/lib/module/figma/icons.figma.batch.js.map +1 -0
  496. package/lib/module/figma/icons.figma.batch.json +17705 -0
  497. package/lib/module/globals.d.js +2 -0
  498. package/lib/module/globals.d.js.map +1 -0
  499. package/lib/module/hooks/index.js +4 -0
  500. package/lib/module/hooks/index.js.map +1 -0
  501. package/lib/module/hooks/useForgeBottomTabScreenOptions.js +242 -0
  502. package/lib/module/hooks/useForgeBottomTabScreenOptions.js.map +1 -0
  503. package/lib/module/index.js +3 -0
  504. package/lib/module/index.js.map +1 -1
  505. package/lib/module/metro/withCdxMetroConfig.js +3 -17
  506. package/lib/module/metro/withCdxMetroConfig.js.map +1 -1
  507. package/lib/module/metro/withForgeMetroConfig.js +20 -0
  508. package/lib/module/metro/withForgeMetroConfig.js.map +1 -0
  509. package/lib/module/navigation/forgeTabIcon.js +39 -0
  510. package/lib/module/navigation/forgeTabIcon.js.map +1 -0
  511. package/lib/module/navigation/forgeTabIcon.native.js +31 -0
  512. package/lib/module/navigation/forgeTabIcon.native.js.map +1 -0
  513. package/lib/module/navigation/index.js +4 -0
  514. package/lib/module/navigation/index.js.map +1 -0
  515. package/lib/module/navigation/types.js +36 -0
  516. package/lib/module/navigation/types.js.map +1 -0
  517. package/lib/module/providers/animation-settings/index.js +4 -0
  518. package/lib/module/providers/animation-settings/index.js.map +1 -0
  519. package/lib/module/providers/animation-settings/provider.js +52 -0
  520. package/lib/module/providers/animation-settings/provider.js.map +1 -0
  521. package/lib/module/providers/animation-settings/types.js +4 -0
  522. package/lib/module/providers/animation-settings/types.js.map +1 -0
  523. package/lib/module/providers/forge-design/index.js +5 -0
  524. package/lib/module/providers/forge-design/index.js.map +1 -0
  525. package/lib/module/providers/forge-design/provider.js +66 -0
  526. package/lib/module/providers/forge-design/provider.js.map +1 -0
  527. package/lib/module/providers/forge-design/types.js +4 -0
  528. package/lib/module/providers/forge-design/types.js.map +1 -0
  529. package/lib/module/providers/text-component/index.js +5 -0
  530. package/lib/module/providers/text-component/index.js.map +1 -0
  531. package/lib/module/providers/text-component/provider.js +6 -0
  532. package/lib/module/providers/text-component/provider.js.map +1 -0
  533. package/lib/module/providers/text-component/types.js +4 -0
  534. package/lib/module/providers/text-component/types.js.map +1 -0
  535. package/lib/module/providers/toast/index.js +6 -0
  536. package/lib/module/providers/toast/index.js.map +1 -0
  537. package/lib/module/providers/toast/insets-container.js +162 -0
  538. package/lib/module/providers/toast/insets-container.js.map +1 -0
  539. package/lib/module/providers/toast/lifecycle.context.js +32 -0
  540. package/lib/module/providers/toast/lifecycle.context.js.map +1 -0
  541. package/lib/module/providers/toast/provider.js +503 -0
  542. package/lib/module/providers/toast/provider.js.map +1 -0
  543. package/lib/module/providers/toast/reducer.js +42 -0
  544. package/lib/module/providers/toast/reducer.js.map +1 -0
  545. package/lib/module/providers/toast/toast-config.context.js +25 -0
  546. package/lib/module/providers/toast/toast-config.context.js.map +1 -0
  547. package/lib/module/providers/toast/toast-item-renderer.js +39 -0
  548. package/lib/module/providers/toast/toast-item-renderer.js.map +1 -0
  549. package/lib/module/providers/toast/types.js +4 -0
  550. package/lib/module/providers/toast/types.js.map +1 -0
  551. package/lib/module/styles/primitives.js +43 -6
  552. package/lib/module/styles/primitives.js.map +1 -1
  553. package/lib/module/styles.css +0 -5
  554. package/lib/module/utils/positionToDataIcon.js +38 -0
  555. package/lib/module/utils/positionToDataIcon.js.map +1 -0
  556. package/lib/typescript/animation/hooks/index.d.ts +2 -0
  557. package/lib/typescript/animation/hooks/index.d.ts.map +1 -0
  558. package/lib/typescript/animation/hooks/useCombinedAnimationDisabledState.d.ts +22 -0
  559. package/lib/typescript/animation/hooks/useCombinedAnimationDisabledState.d.ts.map +1 -0
  560. package/lib/typescript/animation/index.d.ts +4 -0
  561. package/lib/typescript/animation/index.d.ts.map +1 -0
  562. package/lib/typescript/animation/types.d.ts +105 -0
  563. package/lib/typescript/animation/types.d.ts.map +1 -0
  564. package/lib/typescript/animation/utils.d.ts +120 -0
  565. package/lib/typescript/animation/utils.d.ts.map +1 -0
  566. package/lib/typescript/components/Alert/index.d.ts +67 -0
  567. package/lib/typescript/components/Alert/index.d.ts.map +1 -0
  568. package/lib/typescript/components/Alert/styles.d.ts +19 -0
  569. package/lib/typescript/components/Alert/styles.d.ts.map +1 -0
  570. package/lib/typescript/components/AlertDialog/index.d.ts +3 -2
  571. package/lib/typescript/components/AlertDialog/index.d.ts.map +1 -1
  572. package/lib/typescript/components/Avatar/index.d.ts +6 -2
  573. package/lib/typescript/components/Avatar/index.d.ts.map +1 -1
  574. package/lib/typescript/components/Avatar/styles.d.ts +4 -4
  575. package/lib/typescript/components/Avatar/styles.d.ts.map +1 -1
  576. package/lib/typescript/components/BottomSheet/index.d.ts.map +1 -1
  577. package/lib/typescript/components/BottomSheet/styles.d.ts +0 -5
  578. package/lib/typescript/components/BottomSheet/styles.d.ts.map +1 -1
  579. package/lib/typescript/components/Button/index.d.ts +44 -9
  580. package/lib/typescript/components/Button/index.d.ts.map +1 -1
  581. package/lib/typescript/components/Button/styles.d.ts +10 -7
  582. package/lib/typescript/components/Button/styles.d.ts.map +1 -1
  583. package/lib/typescript/components/Card/index.d.ts +8 -3
  584. package/lib/typescript/components/Card/index.d.ts.map +1 -1
  585. package/lib/typescript/components/Card/styles.d.ts +13 -3
  586. package/lib/typescript/components/Card/styles.d.ts.map +1 -1
  587. package/lib/typescript/components/Checkbox/index.d.ts +4 -3
  588. package/lib/typescript/components/Checkbox/index.d.ts.map +1 -1
  589. package/lib/typescript/components/Checkbox/styles.d.ts +4 -14
  590. package/lib/typescript/components/Checkbox/styles.d.ts.map +1 -1
  591. package/lib/typescript/components/Chip/index.d.ts +31 -8
  592. package/lib/typescript/components/Chip/index.d.ts.map +1 -1
  593. package/lib/typescript/components/Chip/styles.d.ts +12 -4
  594. package/lib/typescript/components/Chip/styles.d.ts.map +1 -1
  595. package/lib/typescript/components/CurrencyInput/index.d.ts +15 -0
  596. package/lib/typescript/components/CurrencyInput/index.d.ts.map +1 -0
  597. package/lib/typescript/components/CurrencyInput/styles.d.ts +9 -0
  598. package/lib/typescript/components/CurrencyInput/styles.d.ts.map +1 -0
  599. package/lib/typescript/components/Dialog/index.d.ts +25 -13
  600. package/lib/typescript/components/Dialog/index.d.ts.map +1 -1
  601. package/lib/typescript/components/Dialog/styles.d.ts +16 -5
  602. package/lib/typescript/components/Dialog/styles.d.ts.map +1 -1
  603. package/lib/typescript/components/Divider/index.d.ts +21 -0
  604. package/lib/typescript/components/Divider/index.d.ts.map +1 -0
  605. package/lib/typescript/components/Divider/styles.d.ts +12 -0
  606. package/lib/typescript/components/Divider/styles.d.ts.map +1 -0
  607. package/lib/typescript/components/Field/index.d.ts +14 -7
  608. package/lib/typescript/components/Field/index.d.ts.map +1 -1
  609. package/lib/typescript/components/Field/styles.d.ts.map +1 -1
  610. package/lib/typescript/components/Form/index.d.ts +4 -4
  611. package/lib/typescript/components/Form/index.d.ts.map +1 -1
  612. package/lib/typescript/components/Heading/styles.d.ts +1 -1
  613. package/lib/typescript/components/Icon/index.d.ts +5 -5
  614. package/lib/typescript/components/Icon/index.d.ts.map +1 -1
  615. package/lib/typescript/components/IconButton/index.d.ts +3 -3
  616. package/lib/typescript/components/IconButton/index.d.ts.map +1 -1
  617. package/lib/typescript/components/IconButton/styles.d.ts +6 -2
  618. package/lib/typescript/components/IconButton/styles.d.ts.map +1 -1
  619. package/lib/typescript/components/Input/index.d.ts +11 -3
  620. package/lib/typescript/components/Input/index.d.ts.map +1 -1
  621. package/lib/typescript/components/Input/styles.d.ts.map +1 -1
  622. package/lib/typescript/components/Link/index.d.ts +4 -2
  623. package/lib/typescript/components/Link/index.d.ts.map +1 -1
  624. package/lib/typescript/components/Link/styles.d.ts +9 -2
  625. package/lib/typescript/components/Link/styles.d.ts.map +1 -1
  626. package/lib/typescript/components/ListItem/index.d.ts +28 -6
  627. package/lib/typescript/components/ListItem/index.d.ts.map +1 -1
  628. package/lib/typescript/components/ListItem/styles.d.ts +3 -10
  629. package/lib/typescript/components/ListItem/styles.d.ts.map +1 -1
  630. package/lib/typescript/components/OtpInput/index.d.ts +1 -1
  631. package/lib/typescript/components/OtpInput/index.d.ts.map +1 -1
  632. package/lib/typescript/components/ProgressBar/index.d.ts +4 -4
  633. package/lib/typescript/components/ProgressBar/index.d.ts.map +1 -1
  634. package/lib/typescript/components/ProgressSegmented/index.d.ts +14 -3
  635. package/lib/typescript/components/ProgressSegmented/index.d.ts.map +1 -1
  636. package/lib/typescript/components/QuickActionButton/index.d.ts +41 -0
  637. package/lib/typescript/components/QuickActionButton/index.d.ts.map +1 -0
  638. package/lib/typescript/components/QuickActionButton/styles.d.ts +7 -0
  639. package/lib/typescript/components/QuickActionButton/styles.d.ts.map +1 -0
  640. package/lib/typescript/components/Radio/index.d.ts +44 -0
  641. package/lib/typescript/components/Radio/index.d.ts.map +1 -0
  642. package/lib/typescript/components/Radio/styles.d.ts +8 -0
  643. package/lib/typescript/components/Radio/styles.d.ts.map +1 -0
  644. package/lib/typescript/components/ScopedTheme/index.d.ts +16 -0
  645. package/lib/typescript/components/ScopedTheme/index.d.ts.map +1 -0
  646. package/lib/typescript/components/Select/index.d.ts +35 -2
  647. package/lib/typescript/components/Select/index.d.ts.map +1 -1
  648. package/lib/typescript/components/Select/styles.d.ts.map +1 -1
  649. package/lib/typescript/components/Skeleton/index.d.ts +9 -0
  650. package/lib/typescript/components/Skeleton/index.d.ts.map +1 -0
  651. package/lib/typescript/components/Skeleton/styles.d.ts +4 -0
  652. package/lib/typescript/components/Skeleton/styles.d.ts.map +1 -0
  653. package/lib/typescript/components/Stack/styles.d.ts +2 -2
  654. package/lib/typescript/components/Switch/BaseSwitch.d.ts +12 -5
  655. package/lib/typescript/components/Switch/BaseSwitch.d.ts.map +1 -1
  656. package/lib/typescript/components/Switch/BaseSwitch.web.d.ts +11 -5
  657. package/lib/typescript/components/Switch/BaseSwitch.web.d.ts.map +1 -1
  658. package/lib/typescript/components/Switch/index.d.ts +5 -1
  659. package/lib/typescript/components/Switch/index.d.ts.map +1 -1
  660. package/lib/typescript/components/Text/styles.d.ts +1 -1
  661. package/lib/typescript/components/Tile/index.d.ts +76 -0
  662. package/lib/typescript/components/Tile/index.d.ts.map +1 -0
  663. package/lib/typescript/components/Tile/styles.d.ts +18 -0
  664. package/lib/typescript/components/Tile/styles.d.ts.map +1 -0
  665. package/lib/typescript/components/Toast/animation.d.ts +21 -0
  666. package/lib/typescript/components/Toast/animation.d.ts.map +1 -0
  667. package/lib/typescript/components/Toast/hooks.d.ts +17 -0
  668. package/lib/typescript/components/Toast/hooks.d.ts.map +1 -0
  669. package/lib/typescript/components/Toast/index.d.ts +28 -0
  670. package/lib/typescript/components/Toast/index.d.ts.map +1 -0
  671. package/lib/typescript/components/Toast/styles.d.ts +73 -0
  672. package/lib/typescript/components/Toast/styles.d.ts.map +1 -0
  673. package/lib/typescript/components/Toast/types.d.ts +303 -0
  674. package/lib/typescript/components/Toast/types.d.ts.map +1 -0
  675. package/lib/typescript/components/VirtualizedList/index.d.ts +2 -1
  676. package/lib/typescript/components/VirtualizedList/index.d.ts.map +1 -1
  677. package/lib/typescript/components/index.d.ts +9 -0
  678. package/lib/typescript/components/index.d.ts.map +1 -1
  679. package/lib/typescript/figma/Alert.Button.figma.d.ts +11 -0
  680. package/lib/typescript/figma/Alert.Button.figma.d.ts.map +1 -0
  681. package/lib/typescript/figma/Alert.Close.figma.d.ts +11 -0
  682. package/lib/typescript/figma/Alert.Close.figma.d.ts.map +1 -0
  683. package/lib/typescript/figma/Alert.Description.figma.d.ts +8 -0
  684. package/lib/typescript/figma/Alert.Description.figma.d.ts.map +1 -0
  685. package/lib/typescript/figma/Alert.Title.figma.d.ts +8 -0
  686. package/lib/typescript/figma/Alert.Title.figma.d.ts.map +1 -0
  687. package/lib/typescript/figma/Alert.figma.d.ts +8 -0
  688. package/lib/typescript/figma/Alert.figma.d.ts.map +1 -0
  689. package/lib/typescript/figma/AlertDialog.Description.figma.d.ts +8 -0
  690. package/lib/typescript/figma/AlertDialog.Description.figma.d.ts.map +1 -0
  691. package/lib/typescript/figma/AlertDialog.Footer.figma.d.ts +8 -0
  692. package/lib/typescript/figma/AlertDialog.Footer.figma.d.ts.map +1 -0
  693. package/lib/typescript/figma/AlertDialog.Header.figma.d.ts +8 -0
  694. package/lib/typescript/figma/AlertDialog.Header.figma.d.ts.map +1 -0
  695. package/lib/typescript/figma/AlertDialog.Text.figma.d.ts +8 -0
  696. package/lib/typescript/figma/AlertDialog.Text.figma.d.ts.map +1 -0
  697. package/lib/typescript/figma/AlertDialog.Title.figma.d.ts +8 -0
  698. package/lib/typescript/figma/AlertDialog.Title.figma.d.ts.map +1 -0
  699. package/lib/typescript/figma/AlertDialog.figma.d.ts +8 -0
  700. package/lib/typescript/figma/AlertDialog.figma.d.ts.map +1 -0
  701. package/lib/typescript/figma/Avatar.figma.d.ts +11 -0
  702. package/lib/typescript/figma/Avatar.figma.d.ts.map +1 -0
  703. package/lib/typescript/figma/Button.figma.d.ts +8 -0
  704. package/lib/typescript/figma/Button.figma.d.ts.map +1 -0
  705. package/lib/typescript/figma/Card.Header.figma.d.ts +8 -0
  706. package/lib/typescript/figma/Card.Header.figma.d.ts.map +1 -0
  707. package/lib/typescript/figma/Card.figma.d.ts +8 -0
  708. package/lib/typescript/figma/Card.figma.d.ts.map +1 -0
  709. package/lib/typescript/figma/Checkbox.figma.d.ts +8 -0
  710. package/lib/typescript/figma/Checkbox.figma.d.ts.map +1 -0
  711. package/lib/typescript/figma/Chip.figma.d.ts +8 -0
  712. package/lib/typescript/figma/Chip.figma.d.ts.map +1 -0
  713. package/lib/typescript/figma/Dialog.Description.figma.d.ts +8 -0
  714. package/lib/typescript/figma/Dialog.Description.figma.d.ts.map +1 -0
  715. package/lib/typescript/figma/Dialog.Footer.figma.d.ts +8 -0
  716. package/lib/typescript/figma/Dialog.Footer.figma.d.ts.map +1 -0
  717. package/lib/typescript/figma/Dialog.Header.figma.d.ts +8 -0
  718. package/lib/typescript/figma/Dialog.Header.figma.d.ts.map +1 -0
  719. package/lib/typescript/figma/Dialog.Text.figma.d.ts +8 -0
  720. package/lib/typescript/figma/Dialog.Text.figma.d.ts.map +1 -0
  721. package/lib/typescript/figma/Dialog.Title.figma.d.ts +8 -0
  722. package/lib/typescript/figma/Dialog.Title.figma.d.ts.map +1 -0
  723. package/lib/typescript/figma/Dialog.figma.d.ts +8 -0
  724. package/lib/typescript/figma/Dialog.figma.d.ts.map +1 -0
  725. package/lib/typescript/figma/Divider.figma.d.ts +8 -0
  726. package/lib/typescript/figma/Divider.figma.d.ts.map +1 -0
  727. package/lib/typescript/figma/Field.Input.figma.d.ts +8 -0
  728. package/lib/typescript/figma/Field.Input.figma.d.ts.map +1 -0
  729. package/lib/typescript/figma/Field.Select.figma.d.ts +8 -0
  730. package/lib/typescript/figma/Field.Select.figma.d.ts.map +1 -0
  731. package/lib/typescript/figma/Heading.figma.d.ts +8 -0
  732. package/lib/typescript/figma/Heading.figma.d.ts.map +1 -0
  733. package/lib/typescript/figma/Icon.figma.d.ts +8 -0
  734. package/lib/typescript/figma/Icon.figma.d.ts.map +1 -0
  735. package/lib/typescript/figma/IconButton.figma.d.ts +8 -0
  736. package/lib/typescript/figma/IconButton.figma.d.ts.map +1 -0
  737. package/lib/typescript/figma/Input.figma.d.ts +8 -0
  738. package/lib/typescript/figma/Input.figma.d.ts.map +1 -0
  739. package/lib/typescript/figma/Link.figma.d.ts +8 -0
  740. package/lib/typescript/figma/Link.figma.d.ts.map +1 -0
  741. package/lib/typescript/figma/ListItem.Description.figma.d.ts +11 -0
  742. package/lib/typescript/figma/ListItem.Description.figma.d.ts.map +1 -0
  743. package/lib/typescript/figma/ListItem.LeadingSlot.figma.d.ts +8 -0
  744. package/lib/typescript/figma/ListItem.LeadingSlot.figma.d.ts.map +1 -0
  745. package/lib/typescript/figma/ListItem.Meta.figma.d.ts +11 -0
  746. package/lib/typescript/figma/ListItem.Meta.figma.d.ts.map +1 -0
  747. package/lib/typescript/figma/ListItem.SectionHeader.figma.d.ts +8 -0
  748. package/lib/typescript/figma/ListItem.SectionHeader.figma.d.ts.map +1 -0
  749. package/lib/typescript/figma/ListItem.Title.figma.d.ts +11 -0
  750. package/lib/typescript/figma/ListItem.Title.figma.d.ts.map +1 -0
  751. package/lib/typescript/figma/ListItem.TrailingSlot.figma.d.ts +8 -0
  752. package/lib/typescript/figma/ListItem.TrailingSlot.figma.d.ts.map +1 -0
  753. package/lib/typescript/figma/ListItem.figma.d.ts +8 -0
  754. package/lib/typescript/figma/ListItem.figma.d.ts.map +1 -0
  755. package/lib/typescript/figma/ProgressSegmented.figma.d.ts +8 -0
  756. package/lib/typescript/figma/ProgressSegmented.figma.d.ts.map +1 -0
  757. package/lib/typescript/figma/QuickActionButton.figma.d.ts +8 -0
  758. package/lib/typescript/figma/QuickActionButton.figma.d.ts.map +1 -0
  759. package/lib/typescript/figma/Radio.figma.d.ts +8 -0
  760. package/lib/typescript/figma/Radio.figma.d.ts.map +1 -0
  761. package/lib/typescript/figma/Select.figma.d.ts +8 -0
  762. package/lib/typescript/figma/Select.figma.d.ts.map +1 -0
  763. package/lib/typescript/figma/Text.figma.d.ts +11 -0
  764. package/lib/typescript/figma/Text.figma.d.ts.map +1 -0
  765. package/lib/typescript/figma/icons.figma.batch.d.ts +14 -0
  766. package/lib/typescript/figma/icons.figma.batch.d.ts.map +1 -0
  767. package/lib/typescript/hooks/index.d.ts +2 -0
  768. package/lib/typescript/hooks/index.d.ts.map +1 -0
  769. package/lib/typescript/hooks/useForgeBottomTabScreenOptions.d.ts +137 -0
  770. package/lib/typescript/hooks/useForgeBottomTabScreenOptions.d.ts.map +1 -0
  771. package/lib/typescript/index.d.ts +4 -0
  772. package/lib/typescript/index.d.ts.map +1 -1
  773. package/lib/typescript/metro/withCdxMetroConfig.d.ts +4 -18
  774. package/lib/typescript/metro/withCdxMetroConfig.d.ts.map +1 -1
  775. package/lib/typescript/metro/withForgeMetroConfig.d.ts +19 -0
  776. package/lib/typescript/metro/withForgeMetroConfig.d.ts.map +1 -0
  777. package/lib/typescript/navigation/forgeTabIcon.d.ts +27 -0
  778. package/lib/typescript/navigation/forgeTabIcon.d.ts.map +1 -0
  779. package/lib/typescript/navigation/forgeTabIcon.native.d.ts +15 -0
  780. package/lib/typescript/navigation/forgeTabIcon.native.d.ts.map +1 -0
  781. package/lib/typescript/navigation/index.d.ts +4 -0
  782. package/lib/typescript/navigation/index.d.ts.map +1 -0
  783. package/lib/typescript/navigation/types.d.ts +37 -0
  784. package/lib/typescript/navigation/types.d.ts.map +1 -0
  785. package/lib/typescript/providers/animation-settings/index.d.ts +3 -0
  786. package/lib/typescript/providers/animation-settings/index.d.ts.map +1 -0
  787. package/lib/typescript/providers/animation-settings/provider.d.ts +28 -0
  788. package/lib/typescript/providers/animation-settings/provider.d.ts.map +1 -0
  789. package/lib/typescript/providers/animation-settings/types.d.ts +35 -0
  790. package/lib/typescript/providers/animation-settings/types.d.ts.map +1 -0
  791. package/lib/typescript/providers/forge-design/index.d.ts +3 -0
  792. package/lib/typescript/providers/forge-design/index.d.ts.map +1 -0
  793. package/lib/typescript/providers/forge-design/provider.d.ts +24 -0
  794. package/lib/typescript/providers/forge-design/provider.d.ts.map +1 -0
  795. package/lib/typescript/providers/forge-design/types.d.ts +82 -0
  796. package/lib/typescript/providers/forge-design/types.d.ts.map +1 -0
  797. package/lib/typescript/providers/text-component/index.d.ts +3 -0
  798. package/lib/typescript/providers/text-component/index.d.ts.map +1 -0
  799. package/lib/typescript/providers/text-component/provider.d.ts +7 -0
  800. package/lib/typescript/providers/text-component/provider.d.ts.map +1 -0
  801. package/lib/typescript/providers/text-component/types.d.ts +51 -0
  802. package/lib/typescript/providers/text-component/types.d.ts.map +1 -0
  803. package/lib/typescript/providers/toast/index.d.ts +5 -0
  804. package/lib/typescript/providers/toast/index.d.ts.map +1 -0
  805. package/lib/typescript/providers/toast/insets-container.d.ts +72 -0
  806. package/lib/typescript/providers/toast/insets-container.d.ts.map +1 -0
  807. package/lib/typescript/providers/toast/lifecycle.context.d.ts +32 -0
  808. package/lib/typescript/providers/toast/lifecycle.context.d.ts.map +1 -0
  809. package/lib/typescript/providers/toast/provider.d.ts +32 -0
  810. package/lib/typescript/providers/toast/provider.d.ts.map +1 -0
  811. package/lib/typescript/providers/toast/reducer.d.ts +14 -0
  812. package/lib/typescript/providers/toast/reducer.d.ts.map +1 -0
  813. package/lib/typescript/providers/toast/toast-config.context.d.ts +20 -0
  814. package/lib/typescript/providers/toast/toast-config.context.d.ts.map +1 -0
  815. package/lib/typescript/providers/toast/toast-item-renderer.d.ts +7 -0
  816. package/lib/typescript/providers/toast/toast-item-renderer.d.ts.map +1 -0
  817. package/lib/typescript/providers/toast/types.d.ts +422 -0
  818. package/lib/typescript/providers/toast/types.d.ts.map +1 -0
  819. package/lib/typescript/styles/primitives.d.ts +38 -0
  820. package/lib/typescript/styles/primitives.d.ts.map +1 -1
  821. package/lib/typescript/utils/positionToDataIcon.d.ts +29 -0
  822. package/lib/typescript/utils/positionToDataIcon.d.ts.map +1 -0
  823. package/package.json +12 -11
  824. package/src/animation/hooks/index.ts +1 -0
  825. package/src/animation/hooks/useCombinedAnimationDisabledState.ts +46 -0
  826. package/src/animation/index.ts +3 -0
  827. package/src/animation/types.ts +128 -0
  828. package/src/animation/utils.ts +249 -0
  829. package/src/components/Alert/index.tsx +318 -0
  830. package/src/components/Alert/styles.ts +88 -0
  831. package/src/components/AlertDialog/index.tsx +21 -20
  832. package/src/components/Avatar/index.tsx +135 -45
  833. package/src/components/Avatar/styles.ts +49 -34
  834. package/src/components/BottomSheet/index.tsx +109 -46
  835. package/src/components/BottomSheet/styles.ts +6 -50
  836. package/src/components/Button/index.tsx +248 -47
  837. package/src/components/Button/styles.ts +78 -37
  838. package/src/components/CLAUDE.md +194 -0
  839. package/src/components/Card/index.tsx +84 -29
  840. package/src/components/Card/styles.ts +42 -15
  841. package/src/components/Checkbox/index.tsx +101 -51
  842. package/src/components/Checkbox/styles.ts +84 -86
  843. package/src/components/Chip/index.tsx +136 -32
  844. package/src/components/Chip/styles.ts +220 -18
  845. package/src/components/CurrencyInput/index.tsx +192 -0
  846. package/src/components/CurrencyInput/styles.ts +44 -0
  847. package/src/components/Dialog/index.tsx +199 -93
  848. package/src/components/Dialog/styles.ts +72 -30
  849. package/src/components/Divider/index.tsx +94 -0
  850. package/src/components/Divider/styles.ts +86 -0
  851. package/src/components/Field/index.tsx +121 -50
  852. package/src/components/Field/styles.ts +5 -4
  853. package/src/components/Form/index.tsx +18 -14
  854. package/src/components/Heading/styles.ts +1 -1
  855. package/src/components/Icon/index.tsx +14 -8
  856. package/src/components/IconButton/index.tsx +13 -36
  857. package/src/components/IconButton/styles.ts +136 -10
  858. package/src/components/Input/index.tsx +75 -32
  859. package/src/components/Input/styles.ts +32 -12
  860. package/src/components/Link/index.tsx +57 -18
  861. package/src/components/Link/styles.ts +49 -9
  862. package/src/components/ListItem/index.tsx +157 -87
  863. package/src/components/ListItem/styles.ts +50 -81
  864. package/src/components/OtpInput/index.tsx +126 -43
  865. package/src/components/ProgressBar/index.tsx +11 -16
  866. package/src/components/ProgressSegmented/index.tsx +45 -14
  867. package/src/components/QuickActionButton/index.tsx +161 -0
  868. package/src/components/QuickActionButton/styles.ts +42 -0
  869. package/src/components/Radio/index.tsx +214 -0
  870. package/src/components/Radio/styles.ts +59 -0
  871. package/src/components/ScopedTheme/index.tsx +17 -0
  872. package/src/components/Select/index.tsx +175 -55
  873. package/src/components/Select/styles.ts +59 -51
  874. package/src/components/Skeleton/index.tsx +42 -0
  875. package/src/components/Skeleton/styles.ts +5 -0
  876. package/src/components/Switch/BaseSwitch.tsx +38 -16
  877. package/src/components/Switch/BaseSwitch.web.tsx +28 -35
  878. package/src/components/Switch/index.tsx +51 -4
  879. package/src/components/Text/styles.ts +2 -2
  880. package/src/components/Tile/index.tsx +347 -0
  881. package/src/components/Tile/styles.ts +82 -0
  882. package/src/components/Toast/animation.ts +387 -0
  883. package/src/components/Toast/hooks.ts +92 -0
  884. package/src/components/Toast/index.tsx +520 -0
  885. package/src/components/Toast/styles.ts +186 -0
  886. package/src/components/Toast/types.ts +332 -0
  887. package/src/components/VirtualizedList/index.tsx +11 -1
  888. package/src/components/index.ts +9 -0
  889. package/src/globals.d.ts +1 -0
  890. package/src/hooks/index.ts +5 -0
  891. package/src/hooks/useForgeBottomTabScreenOptions.ts +245 -0
  892. package/src/index.ts +4 -0
  893. package/src/metro/withCdxMetroConfig.ts +4 -29
  894. package/src/metro/withForgeMetroConfig.ts +29 -0
  895. package/src/navigation/forgeTabIcon.native.ts +36 -0
  896. package/src/navigation/forgeTabIcon.ts +33 -0
  897. package/src/navigation/index.ts +3 -0
  898. package/src/navigation/types.ts +54 -0
  899. package/src/providers/animation-settings/index.ts +11 -0
  900. package/src/providers/animation-settings/provider.tsx +54 -0
  901. package/src/providers/animation-settings/types.ts +37 -0
  902. package/src/providers/forge-design/index.ts +2 -0
  903. package/src/providers/forge-design/provider.tsx +61 -0
  904. package/src/providers/forge-design/types.ts +84 -0
  905. package/src/providers/text-component/index.ts +2 -0
  906. package/src/providers/text-component/provider.tsx +7 -0
  907. package/src/providers/text-component/types.ts +52 -0
  908. package/src/providers/toast/index.ts +4 -0
  909. package/src/providers/toast/insets-container.tsx +232 -0
  910. package/src/providers/toast/lifecycle.context.tsx +37 -0
  911. package/src/providers/toast/provider.tsx +572 -0
  912. package/src/providers/toast/reducer.ts +40 -0
  913. package/src/providers/toast/toast-config.context.ts +25 -0
  914. package/src/providers/toast/toast-item-renderer.tsx +40 -0
  915. package/src/providers/toast/types.ts +431 -0
  916. package/src/styles/primitives.ts +43 -6
  917. package/src/styles.css +0 -5
  918. package/src/utils/positionToDataIcon.ts +34 -0
  919. package/lib/commonjs/components/Field/FieldLabel.js +0 -33
  920. package/lib/commonjs/components/Field/FieldLabel.js.map +0 -1
  921. package/lib/commonjs/components/Field/FieldLabel.web.js +0 -25
  922. package/lib/commonjs/components/Field/FieldLabel.web.js.map +0 -1
  923. package/lib/commonjs/components/Form/FormRoot.js +0 -25
  924. package/lib/commonjs/components/Form/FormRoot.js.map +0 -1
  925. package/lib/commonjs/components/Form/FormRoot.web.js +0 -17
  926. package/lib/commonjs/components/Form/FormRoot.web.js.map +0 -1
  927. package/lib/commonjs/components/Input/BaseInput.android.js +0 -20
  928. package/lib/commonjs/components/Input/BaseInput.android.js.map +0 -1
  929. package/lib/commonjs/components/Input/BaseInput.js +0 -13
  930. package/lib/commonjs/components/Input/BaseInput.js.map +0 -1
  931. package/lib/commonjs/components/Input/BaseInput.web.js +0 -50
  932. package/lib/commonjs/components/Input/BaseInput.web.js.map +0 -1
  933. package/lib/commonjs/components/Select/SelectTriggerHost.js +0 -10
  934. package/lib/commonjs/components/Select/SelectTriggerHost.js.map +0 -1
  935. package/lib/commonjs/components/Select/SelectTriggerHost.web.js +0 -121
  936. package/lib/commonjs/components/Select/SelectTriggerHost.web.js.map +0 -1
  937. package/lib/module/components/Field/FieldLabel.js +0 -29
  938. package/lib/module/components/Field/FieldLabel.js.map +0 -1
  939. package/lib/module/components/Field/FieldLabel.web.js +0 -20
  940. package/lib/module/components/Field/FieldLabel.web.js.map +0 -1
  941. package/lib/module/components/Form/FormRoot.js +0 -21
  942. package/lib/module/components/Form/FormRoot.js.map +0 -1
  943. package/lib/module/components/Form/FormRoot.web.js +0 -12
  944. package/lib/module/components/Form/FormRoot.web.js.map +0 -1
  945. package/lib/module/components/Input/BaseInput.android.js +0 -16
  946. package/lib/module/components/Input/BaseInput.android.js.map +0 -1
  947. package/lib/module/components/Input/BaseInput.js +0 -4
  948. package/lib/module/components/Input/BaseInput.js.map +0 -1
  949. package/lib/module/components/Input/BaseInput.web.js +0 -45
  950. package/lib/module/components/Input/BaseInput.web.js.map +0 -1
  951. package/lib/module/components/Select/SelectTriggerHost.js +0 -7
  952. package/lib/module/components/Select/SelectTriggerHost.js.map +0 -1
  953. package/lib/module/components/Select/SelectTriggerHost.web.js +0 -116
  954. package/lib/module/components/Select/SelectTriggerHost.web.js.map +0 -1
  955. package/lib/typescript/components/Field/FieldLabel.d.ts +0 -18
  956. package/lib/typescript/components/Field/FieldLabel.d.ts.map +0 -1
  957. package/lib/typescript/components/Field/FieldLabel.web.d.ts +0 -16
  958. package/lib/typescript/components/Field/FieldLabel.web.d.ts.map +0 -1
  959. package/lib/typescript/components/Form/FormRoot.d.ts +0 -14
  960. package/lib/typescript/components/Form/FormRoot.d.ts.map +0 -1
  961. package/lib/typescript/components/Form/FormRoot.web.d.ts +0 -10
  962. package/lib/typescript/components/Form/FormRoot.web.d.ts.map +0 -1
  963. package/lib/typescript/components/Input/BaseInput.android.d.ts +0 -3
  964. package/lib/typescript/components/Input/BaseInput.android.d.ts.map +0 -1
  965. package/lib/typescript/components/Input/BaseInput.d.ts +0 -2
  966. package/lib/typescript/components/Input/BaseInput.d.ts.map +0 -1
  967. package/lib/typescript/components/Input/BaseInput.web.d.ts +0 -3
  968. package/lib/typescript/components/Input/BaseInput.web.d.ts.map +0 -1
  969. package/lib/typescript/components/Select/SelectTriggerHost.d.ts +0 -3
  970. package/lib/typescript/components/Select/SelectTriggerHost.d.ts.map +0 -1
  971. package/lib/typescript/components/Select/SelectTriggerHost.web.d.ts +0 -17
  972. package/lib/typescript/components/Select/SelectTriggerHost.web.d.ts.map +0 -1
  973. package/src/components/Field/FieldLabel.tsx +0 -33
  974. package/src/components/Field/FieldLabel.web.tsx +0 -25
  975. package/src/components/Form/FormRoot.tsx +0 -20
  976. package/src/components/Form/FormRoot.web.tsx +0 -12
  977. package/src/components/Input/BaseInput.android.tsx +0 -13
  978. package/src/components/Input/BaseInput.tsx +0 -1
  979. package/src/components/Input/BaseInput.web.tsx +0 -41
  980. package/src/components/Select/SelectTriggerHost.tsx +0 -4
  981. package/src/components/Select/SelectTriggerHost.web.tsx +0 -163
@@ -0,0 +1,128 @@
1
+ import type {
2
+ BaseAnimationBuilder,
3
+ EntryOrExitLayoutType,
4
+ LayoutAnimationFunction,
5
+ WithSpringConfig,
6
+ WithTimingConfig,
7
+ } from 'react-native-reanimated';
8
+
9
+ /**
10
+ * Universal animation prop type
11
+ * - `true` or `undefined`: Use default animations
12
+ * - `false` or `"disabled"`: Disable all animations
13
+ * - `object`: Custom animation configuration
14
+ * - Can include `state?: 'disabled' | boolean | undefined` to disable animations while customizing properties
15
+ */
16
+ export type Animation<TConfig extends Record<string, any> = Record<string, any>> =
17
+ | boolean
18
+ | 'disabled'
19
+ | (TConfig & { state?: 'disabled' | boolean });
20
+
21
+ export type AnimationDisabled = 'disabled' | false;
22
+
23
+ /**
24
+ * Root-level animation prop type with cascading control
25
+ * - `true` or `undefined`: Use default animations
26
+ * - `false` or `"disabled"`: Disable only root animations (children can still animate)
27
+ * - `"disable-all"`: Disable all animations including children (cascades down)
28
+ * - `object`: Custom animation configuration
29
+ * - Can include `state?: 'disabled' | 'disable-all' | boolean` to disable animations while customizing properties
30
+ */
31
+ export type AnimationRoot<TConfig extends Record<string, any> = Record<string, any>> =
32
+ | boolean
33
+ | 'disabled'
34
+ | 'disable-all'
35
+ | (TConfig & { state?: 'disabled' | 'disable-all' | boolean });
36
+
37
+ export type AnimationRootDisableAll = Extract<AnimationRoot, 'disable-all'>;
38
+
39
+ /**
40
+ * Animation value that can be a custom config
41
+ * Used for granular animation control within a component
42
+ */
43
+ export type AnimationValue<TConfig extends Record<string, any> = Record<string, any>> = TConfig;
44
+
45
+ export type LayoutTransition =
46
+ | BaseAnimationBuilder
47
+ | LayoutAnimationFunction
48
+ | typeof BaseAnimationBuilder
49
+ | undefined;
50
+
51
+ /**
52
+ * Spring animation configuration
53
+ */
54
+ export interface SpringAnimationConfig {
55
+ type: 'spring';
56
+ config?: WithSpringConfig;
57
+ }
58
+
59
+ /**
60
+ * Timing animation configuration
61
+ */
62
+ export interface TimingAnimationConfig {
63
+ type: 'timing';
64
+ config?: WithTimingConfig;
65
+ }
66
+
67
+ /**
68
+ * Animation configuration for popup overlay components (Dialog, Select, BottomSheet, Popover, etc.)
69
+ * Supports both progress-based opacity animation and entering/exiting animations
70
+ */
71
+ export type PopupOverlayAnimation = Animation<{
72
+ /**
73
+ * Opacity animation configuration (progress-based)
74
+ * Takes effect for bottom-sheet/dialog presentation
75
+ * @default [0, 1, 0] - opacity values for [idle, open, close] states
76
+ */
77
+ opacity?: AnimationValue<{
78
+ /**
79
+ * Opacity values [idle, open, close]
80
+ * @default [0, 1, 0]
81
+ */
82
+ value?: [number, number, number];
83
+ }>;
84
+ /**
85
+ * Takes effect for popover presentation
86
+ * @default FadeIn with duration 200ms
87
+ */
88
+ entering?: EntryOrExitLayoutType;
89
+ /**
90
+ * Takes effect for popover presentation
91
+ * @default FadeOut with duration 150ms
92
+ */
93
+ exiting?: EntryOrExitLayoutType;
94
+ }>;
95
+
96
+ /**
97
+ * Animation configuration for popup dialog content components (Dialog, Select dialog presentation)
98
+ * Supports opacity and scale animations
99
+ */
100
+ export type PopupDialogContentAnimation = Animation<{
101
+ /**
102
+ * Custom Keyframe animation for entering transition
103
+ * @default Keyframe with scale, and opacity (200ms)
104
+ */
105
+ entering?: EntryOrExitLayoutType;
106
+ /**
107
+ * Custom Keyframe animation for exiting transition
108
+ * @default Keyframe mirroring entering animation (150ms)
109
+ */
110
+ exiting?: EntryOrExitLayoutType;
111
+ }>;
112
+
113
+ /**
114
+ * Animation configuration for popup popover content components (Popover, Select popover presentation)
115
+ * Supports custom Keyframe animations for entering and exiting transitions
116
+ */
117
+ export type PopupPopoverContentAnimation = Animation<{
118
+ /**
119
+ * Custom Keyframe animation for entering transition
120
+ * @default Keyframe with translateY/translateX, scale, and opacity (200ms)
121
+ */
122
+ entering?: EntryOrExitLayoutType;
123
+ /**
124
+ * Custom Keyframe animation for exiting transition
125
+ * @default Keyframe mirroring entering animation (150ms)
126
+ */
127
+ exiting?: EntryOrExitLayoutType;
128
+ }>;
@@ -0,0 +1,249 @@
1
+ import type { Animation, AnimationRoot, AnimationValue } from './types';
2
+
3
+ /**
4
+ * Check if the entire animation is disabled
5
+ * @param animation - Animation configuration
6
+ * @returns true if animation is disabled
7
+ */
8
+ export function isAnimationDisabled<TConfig extends Record<string, any>>(
9
+ animation: Animation<TConfig> | AnimationRoot<TConfig> | undefined,
10
+ ): boolean {
11
+ // Check top-level disabled values
12
+ if (animation === false || animation === 'disabled') {
13
+ return true;
14
+ }
15
+
16
+ // Check state property in config objects
17
+ if (typeof animation === 'object' && animation !== null && 'state' in animation) {
18
+ const state = animation.state;
19
+ return state === false || state === 'disabled';
20
+ }
21
+
22
+ return false;
23
+ }
24
+
25
+ /**
26
+ * Check if root animation should cascade disable to all children
27
+ * @param animation - Root animation configuration
28
+ * @returns true if all animations should be disabled (including children)
29
+ */
30
+ export function shouldDisableAll<TConfig extends Record<string, any>>(
31
+ animation: AnimationRoot<TConfig> | undefined,
32
+ ): boolean {
33
+ // Check top-level disable-all value
34
+ if (animation === 'disable-all') {
35
+ return true;
36
+ }
37
+
38
+ // Check state property in config objects
39
+ if (typeof animation === 'object' && animation !== null && 'state' in animation) {
40
+ const state = animation.state;
41
+ return state === 'disable-all';
42
+ }
43
+
44
+ return false;
45
+ }
46
+
47
+ /**
48
+ * Get animation state including config and disabled status
49
+ * @param animation - Animation configuration
50
+ * @returns Object with animationConfig and isAnimationDisabled
51
+ */
52
+ export function getAnimationState<TConfig extends Record<string, any>>(
53
+ animation: Animation<TConfig> | undefined,
54
+ ): {
55
+ animationConfig: TConfig | undefined;
56
+ isAnimationDisabled: boolean;
57
+ } {
58
+ const isDisabled = isAnimationDisabled(animation);
59
+ // Always extract config when it's an object, regardless of disabled state
60
+ // This allows users to customize colors/properties even when animations are disabled
61
+ const config =
62
+ typeof animation === 'object' && animation !== null ? (animation as TConfig) : undefined;
63
+
64
+ return {
65
+ animationConfig: config,
66
+ isAnimationDisabled: isDisabled,
67
+ };
68
+ }
69
+
70
+ /**
71
+ * Get root animation state including config, disabled status, and cascade flag
72
+ * @param animation - Root animation configuration
73
+ * @returns Object with animationConfig, isAnimationDisabled, and isAllAnimationsDisabled
74
+ */
75
+ export function getRootAnimationState<TConfig extends Record<string, any>>(
76
+ animation: AnimationRoot<TConfig> | undefined,
77
+ ): {
78
+ animationConfig: TConfig | undefined;
79
+ isAnimationDisabled: boolean;
80
+ isAllAnimationsDisabled: boolean;
81
+ } {
82
+ const shouldCascade = shouldDisableAll(animation);
83
+ const isDisabled = isAnimationDisabled(animation) || shouldCascade;
84
+ // Always extract config when it's an object, regardless of disabled state
85
+ // This allows users to customize colors/properties even when animations are disabled
86
+ const config =
87
+ typeof animation === 'object' && animation !== null ? (animation as TConfig) : undefined;
88
+
89
+ return {
90
+ animationConfig: config,
91
+ isAnimationDisabled: isDisabled,
92
+ isAllAnimationsDisabled: shouldCascade,
93
+ };
94
+ }
95
+
96
+ /**
97
+ * Get animation value property or return default
98
+ * Extracts a property from the animation value config object
99
+ *
100
+ * @param options - Object containing animationValue, property, and defaultValue
101
+ * @param options.animationValue - The animation value configuration
102
+ * @param options.property - Property name to extract
103
+ * @param options.defaultValue - Default value if property is not found
104
+ * @returns The property value or default (never undefined)
105
+ *
106
+ * @example
107
+ * const scaleValue = getAnimationValueProperty({
108
+ * animationValue: animation?.scale,
109
+ * property: 'value',
110
+ * defaultValue: 0.95
111
+ * });
112
+ */
113
+ export function getAnimationValueProperty<
114
+ TConfig extends Record<string, any>,
115
+ K extends keyof TConfig,
116
+ D extends NonNullable<TConfig[K]>,
117
+ >(options: {
118
+ animationValue: AnimationValue<TConfig> | undefined;
119
+ property: K;
120
+ defaultValue: D;
121
+ }): D {
122
+ // If animation value is undefined, return default
123
+ if (options.animationValue === undefined) {
124
+ return options.defaultValue;
125
+ }
126
+
127
+ // Return the property value if it exists, otherwise return default
128
+ return options.animationValue[options.property] ?? options.defaultValue;
129
+ }
130
+
131
+ /**
132
+ * Get animation value merged config or return default
133
+ * Merges the animation value config with defaults, useful when you need multiple properties
134
+ *
135
+ * @param options - Object containing animationValue, property, and defaultValue
136
+ * @param options.animationValue - The animation value configuration
137
+ * @param options.property - Property name to extract from the config
138
+ * @param options.defaultValue - Default configuration object
139
+ * @returns The merged config object or default
140
+ *
141
+ * @example
142
+ * const scaleConfig = getAnimationValueMergedConfig({
143
+ * animationValue: animation?.scale,
144
+ * property: 'timingConfig',
145
+ * defaultValue: { duration: 150 }
146
+ * });
147
+ */
148
+ export function getAnimationValueMergedConfig<
149
+ TConfig extends Record<string, any>,
150
+ K extends keyof TConfig,
151
+ >(options: {
152
+ animationValue: AnimationValue<TConfig> | undefined;
153
+ property: K;
154
+ defaultValue: TConfig[K];
155
+ }): TConfig[K] {
156
+ // If animation value is undefined, return default
157
+ if (options.animationValue === undefined) {
158
+ return options.defaultValue;
159
+ }
160
+
161
+ const value = options.animationValue[options.property];
162
+
163
+ // If the specific property value is undefined or not an object, return default
164
+ if (value === undefined || typeof value !== 'object') {
165
+ return options.defaultValue;
166
+ }
167
+
168
+ // Merge with defaults to ensure all properties exist
169
+ return { ...options.defaultValue, ...value };
170
+ }
171
+
172
+ /**
173
+ * Determine if animations should be disabled based on disabled flags
174
+ * Priority: isAllAnimationsDisabled > isAnimationDisabled
175
+ *
176
+ * @param options - Object containing isAnimationDisabled and isAllAnimationsDisabled
177
+ * @param options.isAnimationDisabled - Whether animation is explicitly disabled
178
+ * @param options.isAllAnimationsDisabled - Whether all animations should be disabled (cascading from root/global)
179
+ * @returns true if animations should be disabled, false otherwise
180
+ *
181
+ * @example
182
+ * const isDisabled = getIsAnimationDisabledValue({
183
+ * isAnimationDisabled: false,
184
+ * isAllAnimationsDisabled: true
185
+ * });
186
+ * // Returns: true (all animations disabled takes priority)
187
+ */
188
+ export function getIsAnimationDisabledValue(options: {
189
+ isAnimationDisabled: boolean;
190
+ isAllAnimationsDisabled: boolean | undefined;
191
+ }): boolean {
192
+ const { isAnimationDisabled: isDisabled, isAllAnimationsDisabled } = options;
193
+
194
+ // First priority: if all animations are disabled, return true
195
+ if (isAllAnimationsDisabled === true) {
196
+ return true;
197
+ }
198
+
199
+ // Second priority: if this animation is disabled, return true
200
+ if (isDisabled) {
201
+ return true;
202
+ }
203
+
204
+ // Default: animations are enabled
205
+ return false;
206
+ }
207
+
208
+ /**
209
+ * Combine global, parent, and own animation disabled states
210
+ * Priority: Global > Parent > Own (global wins if enabled)
211
+ *
212
+ * @param options - Object containing globalIsAllAnimationsDisabled, parentIsAllAnimationsDisabled, and ownIsAllAnimationsDisabled
213
+ * @param options.globalIsAllAnimationsDisabled - Whether global provider has disable-all (from GlobalAnimationSettingsProvider)
214
+ * @param options.parentIsAllAnimationsDisabled - Whether parent context has disable-all (from AnimationSettingsContext)
215
+ * @param options.ownIsAllAnimationsDisabled - Whether own animation prop has disable-all
216
+ * @returns Combined isAllAnimationsDisabled value (global || parent || own)
217
+ *
218
+ * @example
219
+ * const combined = getCombinedAnimationDisabledState({
220
+ * globalIsAllAnimationsDisabled: true,
221
+ * parentIsAllAnimationsDisabled: false,
222
+ * ownIsAllAnimationsDisabled: false
223
+ * });
224
+ * // Returns: true (global wins)
225
+ */
226
+ export function getCombinedAnimationDisabledState(options: {
227
+ globalIsAllAnimationsDisabled?: boolean;
228
+ parentIsAllAnimationsDisabled: boolean | undefined;
229
+ ownIsAllAnimationsDisabled: boolean;
230
+ }): boolean {
231
+ const {
232
+ globalIsAllAnimationsDisabled,
233
+ parentIsAllAnimationsDisabled,
234
+ ownIsAllAnimationsDisabled,
235
+ } = options;
236
+
237
+ // Global always wins if it has disable-all
238
+ if (globalIsAllAnimationsDisabled === true) {
239
+ return true;
240
+ }
241
+
242
+ // Parent wins if it has disable-all
243
+ if (parentIsAllAnimationsDisabled === true) {
244
+ return true;
245
+ }
246
+
247
+ // Otherwise use own value
248
+ return ownIsAllAnimationsDisabled;
249
+ }
@@ -0,0 +1,318 @@
1
+ import React, { forwardRef, useMemo, type ReactNode } from 'react';
2
+ import { Text, View, type TextProps, type ViewProps } from 'react-native';
3
+ import { Slot, dataAttributes, mergeDataAttributes } from '@cdx-ui/primitives';
4
+ import type { ForgeIcon } from '@cdx-ui/icons';
5
+ import { CheckCircle, EmergencyHome, Info, Warning } from '@cdx-ui/icons';
6
+ import { cn, ParentContext, useParentContext, useStyleContext } from '@cdx-ui/utils';
7
+ import { Icon, type IconProps } from '../Icon';
8
+ import {
9
+ alertActionsVariants,
10
+ alertBodyVariants,
11
+ alertDescriptionVariants,
12
+ alertIconVariants,
13
+ alertRootVariants,
14
+ alertTextVariants,
15
+ alertTitleVariants,
16
+ type AlertSeverity,
17
+ type AlertVariantProps,
18
+ } from './styles';
19
+
20
+ // =============================================================================
21
+ // CONTEXT
22
+ // =============================================================================
23
+
24
+ const SCOPE = 'ALERT';
25
+
26
+ interface AlertContextValue {
27
+ severity: AlertSeverity;
28
+ }
29
+
30
+ const useAlertStyleContext = (): AlertContextValue => {
31
+ const ctx = useStyleContext(SCOPE) as { severity?: AlertSeverity };
32
+ return { severity: ctx?.severity ?? 'info' };
33
+ };
34
+
35
+ // Severity → default icon mapping
36
+ const SEVERITY_ICONS: Record<AlertSeverity, ForgeIcon> = {
37
+ danger: EmergencyHome,
38
+ warning: Warning,
39
+ success: CheckCircle,
40
+ info: Info,
41
+ };
42
+
43
+ // =============================================================================
44
+ // ROOT
45
+ // =============================================================================
46
+
47
+ export interface AlertProps extends ViewProps, AlertVariantProps {
48
+ /**
49
+ * Replace the root element with the consumer's child element via `Slot`.
50
+ * When `true`, children are rendered as-is (no automatic icon/text/actions
51
+ * layout splitting). Severity context is still provided so sub-components
52
+ * receive the correct styles.
53
+ */
54
+ asChild?: boolean;
55
+ /** Severity level that controls background colour, icon, and live-region urgency. */
56
+ severity?: AlertSeverity;
57
+ className?: string;
58
+ /**
59
+ * Sub-components (`Alert.Icon`, `Alert.Title`, `Alert.Description`,
60
+ * `Alert.Actions`) must be rendered as **direct** children — wrapping them
61
+ * in HOCs or `memo()` will break the automatic layout splitting.
62
+ */
63
+ children?: ReactNode;
64
+ }
65
+
66
+ const AlertRoot = forwardRef<View, AlertProps>(
67
+ ({ asChild, severity = 'info', className, style, children, ...props }, ref) => {
68
+ const isAssertive = severity === 'danger' || severity === 'warning';
69
+ const parent = useParentContext();
70
+ const ctx = useMemo(() => ({ ...parent, [SCOPE]: { severity } }), [parent, severity]);
71
+
72
+ const rootClassName = cn(alertRootVariants({ severity }), className);
73
+ const role = isAssertive ? 'alert' : 'status';
74
+ const liveRegion = isAssertive ? 'assertive' : 'polite';
75
+ const dataProps = mergeDataAttributes(props, dataAttributes({ slot: 'alert' }));
76
+
77
+ if (asChild) {
78
+ return (
79
+ <ParentContext.Provider value={ctx}>
80
+ <Slot
81
+ ref={ref}
82
+ className={rootClassName}
83
+ style={style}
84
+ role={role}
85
+ accessibilityLiveRegion={liveRegion}
86
+ {...props}
87
+ {...dataProps}
88
+ >
89
+ {children}
90
+ </Slot>
91
+ </ParentContext.Provider>
92
+ );
93
+ }
94
+
95
+ // Split children into three regions:
96
+ // 1. Alert.Icon — rendered at inline-start (left)
97
+ // 2. Alert.Actions — rendered at inline-end (right), beside the text
98
+ // 3. Everything else (Title, Description) — text column, flex-1
99
+ //
100
+ // Layout: [Icon] [flex-1 flex-row: [text flex-1] [Actions]]
101
+ const childArray = React.Children.toArray(children);
102
+ const iconChild = childArray.find(
103
+ (child) =>
104
+ React.isValidElement(child) && (child as React.ReactElement).type === AlertIconComponent,
105
+ );
106
+ const actionsChild = childArray.find(
107
+ (child) => React.isValidElement(child) && (child as React.ReactElement).type === AlertActions,
108
+ );
109
+ const textChildren = childArray.filter(
110
+ (child) =>
111
+ !React.isValidElement(child) ||
112
+ ((child as React.ReactElement).type !== AlertIconComponent &&
113
+ (child as React.ReactElement).type !== AlertActions),
114
+ );
115
+ const hasBody = textChildren.length > 0 || !!actionsChild;
116
+
117
+ return (
118
+ <ParentContext.Provider value={ctx}>
119
+ <View
120
+ ref={ref}
121
+ className={rootClassName}
122
+ style={style}
123
+ role={role}
124
+ accessibilityLiveRegion={liveRegion}
125
+ {...props}
126
+ {...dataProps}
127
+ >
128
+ {iconChild}
129
+ {hasBody ? (
130
+ <View className={alertBodyVariants()}>
131
+ {textChildren.length > 0 ? (
132
+ <View className={alertTextVariants()}>{textChildren}</View>
133
+ ) : null}
134
+ {actionsChild}
135
+ </View>
136
+ ) : null}
137
+ </View>
138
+ </ParentContext.Provider>
139
+ );
140
+ },
141
+ );
142
+
143
+ AlertRoot.displayName = 'Alert';
144
+
145
+ // =============================================================================
146
+ // ICON
147
+ // =============================================================================
148
+
149
+ export interface AlertIconProps extends Omit<IconProps, 'as'> {
150
+ asChild?: boolean;
151
+ /**
152
+ * Override the auto-rendered severity icon. Omit to use the default icon for
153
+ * the current severity (EmergencyHome, Warning, CheckCircle, or Info).
154
+ * Not required when `asChild` is set.
155
+ */
156
+ as?: ForgeIcon;
157
+ }
158
+
159
+ const AlertIconComponent = forwardRef<View, AlertIconProps>(
160
+ ({ asChild, as: asOverride, className, style, ...props }, ref) => {
161
+ const { severity } = useAlertStyleContext();
162
+ const computedClassName = cn(alertIconVariants({ severity }), className);
163
+
164
+ if (asChild) {
165
+ return (
166
+ <Slot
167
+ ref={ref}
168
+ className={computedClassName}
169
+ style={style}
170
+ {...props}
171
+ {...mergeDataAttributes(props, dataAttributes({ slot: 'alert-icon' }))}
172
+ />
173
+ );
174
+ }
175
+
176
+ return (
177
+ <Icon
178
+ as={asOverride ?? SEVERITY_ICONS[severity]}
179
+ className={computedClassName}
180
+ style={style}
181
+ {...props}
182
+ {...mergeDataAttributes(props, dataAttributes({ slot: 'alert-icon' }))}
183
+ />
184
+ );
185
+ },
186
+ );
187
+
188
+ AlertIconComponent.displayName = 'Alert.Icon';
189
+
190
+ // =============================================================================
191
+ // TITLE
192
+ // =============================================================================
193
+
194
+ export interface AlertTitleProps extends TextProps {
195
+ asChild?: boolean;
196
+ className?: string;
197
+ children?: ReactNode;
198
+ }
199
+
200
+ const AlertTitle = forwardRef<Text, AlertTitleProps>(
201
+ ({ asChild, className, style, children, ...props }, ref) => {
202
+ const { severity } = useAlertStyleContext();
203
+ const computedClassName = cn(alertTitleVariants({ severity }), className);
204
+ const Comp = asChild ? Slot : Text;
205
+
206
+ return (
207
+ <Comp
208
+ ref={ref}
209
+ className={computedClassName}
210
+ style={style}
211
+ {...props}
212
+ {...mergeDataAttributes(props, dataAttributes({ slot: 'alert-title' }))}
213
+ >
214
+ {children}
215
+ </Comp>
216
+ );
217
+ },
218
+ );
219
+
220
+ AlertTitle.displayName = 'Alert.Title';
221
+
222
+ // =============================================================================
223
+ // DESCRIPTION
224
+ // =============================================================================
225
+
226
+ export interface AlertDescriptionProps extends TextProps {
227
+ asChild?: boolean;
228
+ className?: string;
229
+ children?: ReactNode;
230
+ }
231
+
232
+ const AlertDescription = forwardRef<Text, AlertDescriptionProps>(
233
+ ({ asChild, className, style, children, ...props }, ref) => {
234
+ const { severity } = useAlertStyleContext();
235
+ const computedClassName = cn(alertDescriptionVariants({ severity }), className);
236
+ const Comp = asChild ? Slot : Text;
237
+
238
+ return (
239
+ <Comp
240
+ ref={ref}
241
+ className={computedClassName}
242
+ style={style}
243
+ {...props}
244
+ {...mergeDataAttributes(props, dataAttributes({ slot: 'alert-description' }))}
245
+ >
246
+ {children}
247
+ </Comp>
248
+ );
249
+ },
250
+ );
251
+
252
+ AlertDescription.displayName = 'Alert.Description';
253
+
254
+ // =============================================================================
255
+ // ACTIONS
256
+ // =============================================================================
257
+
258
+ export interface AlertActionsProps extends ViewProps {
259
+ /**
260
+ * Replace the wrapper element with the consumer's child via `Slot`.
261
+ * **Note:** when `true`, automatic `color={severity}` injection on
262
+ * direct `Button`/`IconButton` children is bypassed — the consumer
263
+ * must set `color` explicitly.
264
+ */
265
+ asChild?: boolean;
266
+ className?: string;
267
+ children?: ReactNode;
268
+ }
269
+
270
+ const AlertActions = forwardRef<View, AlertActionsProps>(
271
+ ({ asChild, className, style, children, ...props }, ref) => {
272
+ const { severity } = useAlertStyleContext();
273
+ const computedClassName = cn(alertActionsVariants(), className);
274
+ const Comp = asChild ? Slot : View;
275
+
276
+ // Auto-inject color={severity} on direct Button / IconButton children unless
277
+ // the consumer already provides a color prop.
278
+ const injectedChildren = React.Children.map(children, (child) => {
279
+ if (!React.isValidElement<{ color?: unknown }>(child)) return child;
280
+ if ('color' in child.props) return child;
281
+ return React.cloneElement(child, { color: severity });
282
+ });
283
+
284
+ return (
285
+ <Comp
286
+ ref={ref}
287
+ className={computedClassName}
288
+ style={style}
289
+ {...props}
290
+ {...mergeDataAttributes(props, dataAttributes({ slot: 'alert-actions' }))}
291
+ >
292
+ {asChild ? children : injectedChildren}
293
+ </Comp>
294
+ );
295
+ },
296
+ );
297
+
298
+ AlertActions.displayName = 'Alert.Actions';
299
+
300
+ // =============================================================================
301
+ // COMPOUND EXPORT
302
+ // =============================================================================
303
+
304
+ type AlertCompoundComponent = typeof AlertRoot & {
305
+ Icon: typeof AlertIconComponent;
306
+ Title: typeof AlertTitle;
307
+ Description: typeof AlertDescription;
308
+ Actions: typeof AlertActions;
309
+ };
310
+
311
+ export const Alert = Object.assign(AlertRoot, {
312
+ Icon: AlertIconComponent,
313
+ Title: AlertTitle,
314
+ Description: AlertDescription,
315
+ Actions: AlertActions,
316
+ }) as AlertCompoundComponent;
317
+
318
+ export type { AlertVariantProps, AlertSeverity };