@cdx-ui/components 0.0.1-alpha.4 → 0.0.1-alpha.41

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 (437) hide show
  1. package/README.md +54 -3
  2. package/lib/commonjs/components/AlertDialog/index.js +117 -0
  3. package/lib/commonjs/components/AlertDialog/index.js.map +1 -0
  4. package/lib/commonjs/components/Avatar/index.js +156 -0
  5. package/lib/commonjs/components/Avatar/index.js.map +1 -0
  6. package/lib/commonjs/components/Avatar/styles.js +80 -0
  7. package/lib/commonjs/components/Avatar/styles.js.map +1 -0
  8. package/lib/commonjs/components/BottomSheet/index.js +248 -0
  9. package/lib/commonjs/components/BottomSheet/index.js.map +1 -0
  10. package/lib/commonjs/components/BottomSheet/styles.js +61 -0
  11. package/lib/commonjs/components/BottomSheet/styles.js.map +1 -0
  12. package/lib/commonjs/components/Box/Box.js +1 -0
  13. package/lib/commonjs/components/Box/Box.js.map +1 -1
  14. package/lib/commonjs/components/Button/index.js +20 -9
  15. package/lib/commonjs/components/Button/index.js.map +1 -1
  16. package/lib/commonjs/components/Button/styles.js +181 -162
  17. package/lib/commonjs/components/Button/styles.js.map +1 -1
  18. package/lib/commonjs/components/Card/index.js +104 -0
  19. package/lib/commonjs/components/Card/index.js.map +1 -0
  20. package/lib/commonjs/components/Card/styles.js +28 -0
  21. package/lib/commonjs/components/Card/styles.js.map +1 -0
  22. package/lib/commonjs/components/Checkbox/index.js +180 -0
  23. package/lib/commonjs/components/Checkbox/index.js.map +1 -0
  24. package/lib/commonjs/components/Checkbox/styles.js +68 -0
  25. package/lib/commonjs/components/Checkbox/styles.js.map +1 -0
  26. package/lib/commonjs/components/Chip/index.js +103 -0
  27. package/lib/commonjs/components/Chip/index.js.map +1 -0
  28. package/lib/commonjs/components/Chip/styles.js +52 -0
  29. package/lib/commonjs/components/Chip/styles.js.map +1 -0
  30. package/lib/commonjs/components/Dialog/index.js +275 -0
  31. package/lib/commonjs/components/Dialog/index.js.map +1 -0
  32. package/lib/commonjs/components/Dialog/styles.js +63 -0
  33. package/lib/commonjs/components/Dialog/styles.js.map +1 -0
  34. package/lib/commonjs/components/Field/FieldLabel.js +33 -0
  35. package/lib/commonjs/components/Field/FieldLabel.js.map +1 -0
  36. package/lib/commonjs/components/Field/FieldLabel.web.js +22 -0
  37. package/lib/commonjs/components/Field/FieldLabel.web.js.map +1 -0
  38. package/lib/commonjs/components/Field/index.js +158 -0
  39. package/lib/commonjs/components/Field/index.js.map +1 -0
  40. package/lib/commonjs/components/Field/styles.js +16 -0
  41. package/lib/commonjs/components/Field/styles.js.map +1 -0
  42. package/lib/commonjs/components/Form/FormRoot.js +25 -0
  43. package/lib/commonjs/components/Form/FormRoot.js.map +1 -0
  44. package/lib/commonjs/components/Form/FormRoot.web.js +17 -0
  45. package/lib/commonjs/components/Form/FormRoot.web.js.map +1 -0
  46. package/lib/commonjs/components/Form/index.js +48 -0
  47. package/lib/commonjs/components/Form/index.js.map +1 -0
  48. package/lib/commonjs/components/Form/styles.js +9 -0
  49. package/lib/commonjs/components/Form/styles.js.map +1 -0
  50. package/lib/commonjs/components/Heading/index.js +35 -0
  51. package/lib/commonjs/components/Heading/index.js.map +1 -0
  52. package/lib/commonjs/components/Heading/styles.js +23 -0
  53. package/lib/commonjs/components/Heading/styles.js.map +1 -0
  54. package/lib/commonjs/components/Icon/index.js +61 -0
  55. package/lib/commonjs/components/Icon/index.js.map +1 -0
  56. package/lib/commonjs/components/IconButton/index.js +75 -0
  57. package/lib/commonjs/components/IconButton/index.js.map +1 -0
  58. package/lib/commonjs/components/IconButton/styles.js +44 -0
  59. package/lib/commonjs/components/IconButton/styles.js.map +1 -0
  60. package/lib/commonjs/components/Image/Image.js +69 -0
  61. package/lib/commonjs/components/Image/Image.js.map +1 -0
  62. package/lib/commonjs/components/Image/index.js +13 -0
  63. package/lib/commonjs/components/Image/index.js.map +1 -0
  64. package/lib/commonjs/components/Input/BaseInput.android.js +20 -0
  65. package/lib/commonjs/components/Input/BaseInput.android.js.map +1 -0
  66. package/lib/commonjs/components/Input/index.js +10 -16
  67. package/lib/commonjs/components/Input/index.js.map +1 -1
  68. package/lib/commonjs/components/Input/styles.js +17 -30
  69. package/lib/commonjs/components/Input/styles.js.map +1 -1
  70. package/lib/commonjs/components/Link/index.js +94 -0
  71. package/lib/commonjs/components/Link/index.js.map +1 -0
  72. package/lib/commonjs/components/Link/styles.js +14 -0
  73. package/lib/commonjs/components/Link/styles.js.map +1 -0
  74. package/lib/commonjs/components/OtpInput/index.js +83 -0
  75. package/lib/commonjs/components/OtpInput/index.js.map +1 -0
  76. package/lib/commonjs/components/OtpInput/styles.js +48 -0
  77. package/lib/commonjs/components/OtpInput/styles.js.map +1 -0
  78. package/lib/commonjs/components/ProgressBar/index.js +45 -0
  79. package/lib/commonjs/components/ProgressBar/index.js.map +1 -0
  80. package/lib/commonjs/components/ProgressBar/styles.js +10 -0
  81. package/lib/commonjs/components/ProgressBar/styles.js.map +1 -0
  82. package/lib/commonjs/components/ProgressSegmented/index.js +62 -0
  83. package/lib/commonjs/components/ProgressSegmented/index.js.map +1 -0
  84. package/lib/commonjs/components/ProgressSegmented/styles.js +21 -0
  85. package/lib/commonjs/components/ProgressSegmented/styles.js.map +1 -0
  86. package/lib/commonjs/components/Select/SelectTriggerHost.js +10 -0
  87. package/lib/commonjs/components/Select/SelectTriggerHost.js.map +1 -0
  88. package/lib/commonjs/components/Select/SelectTriggerHost.web.js +98 -0
  89. package/lib/commonjs/components/Select/SelectTriggerHost.web.js.map +1 -0
  90. package/lib/commonjs/components/Select/index.js +13 -13
  91. package/lib/commonjs/components/Select/index.js.map +1 -1
  92. package/lib/commonjs/components/Select/styles.js +29 -53
  93. package/lib/commonjs/components/Select/styles.js.map +1 -1
  94. package/lib/commonjs/components/Stack/HStack.js +8 -21
  95. package/lib/commonjs/components/Stack/HStack.js.map +1 -1
  96. package/lib/commonjs/components/Stack/VStack.js +8 -21
  97. package/lib/commonjs/components/Stack/VStack.js.map +1 -1
  98. package/lib/commonjs/components/Stack/styles.js +44 -0
  99. package/lib/commonjs/components/Stack/styles.js.map +1 -0
  100. package/lib/commonjs/components/Switch/BaseSwitch.js +46 -0
  101. package/lib/commonjs/components/Switch/BaseSwitch.js.map +1 -0
  102. package/lib/commonjs/components/Switch/BaseSwitch.web.js +56 -0
  103. package/lib/commonjs/components/Switch/BaseSwitch.web.js.map +1 -0
  104. package/lib/commonjs/components/Switch/index.js +13 -0
  105. package/lib/commonjs/components/Switch/index.js.map +1 -0
  106. package/lib/commonjs/components/Switch/styles.js +128 -0
  107. package/lib/commonjs/components/Switch/styles.js.map +1 -0
  108. package/lib/commonjs/components/Text/index.js +18 -9
  109. package/lib/commonjs/components/Text/index.js.map +1 -1
  110. package/lib/commonjs/components/Text/styles.js +23 -0
  111. package/lib/commonjs/components/Text/styles.js.map +1 -0
  112. package/lib/commonjs/components/VirtualizedList/index.js +19 -0
  113. package/lib/commonjs/components/VirtualizedList/index.js.map +1 -0
  114. package/lib/commonjs/components/index.js +228 -0
  115. package/lib/commonjs/components/index.js.map +1 -1
  116. package/lib/commonjs/index.js +40 -0
  117. package/lib/commonjs/index.js.map +1 -1
  118. package/lib/commonjs/metro/withCdxMetroConfig.js +24 -0
  119. package/lib/commonjs/metro/withCdxMetroConfig.js.map +1 -0
  120. package/lib/commonjs/styles/index.js +17 -0
  121. package/lib/commonjs/styles/index.js.map +1 -0
  122. package/lib/commonjs/styles/primitives.js +123 -0
  123. package/lib/commonjs/styles/primitives.js.map +1 -0
  124. package/lib/module/components/AlertDialog/index.js +112 -0
  125. package/lib/module/components/AlertDialog/index.js.map +1 -0
  126. package/lib/module/components/Avatar/index.js +152 -0
  127. package/lib/module/components/Avatar/index.js.map +1 -0
  128. package/lib/module/components/Avatar/styles.js +77 -0
  129. package/lib/module/components/Avatar/styles.js.map +1 -0
  130. package/lib/module/components/BottomSheet/index.js +242 -0
  131. package/lib/module/components/BottomSheet/index.js.map +1 -0
  132. package/lib/module/components/BottomSheet/styles.js +58 -0
  133. package/lib/module/components/BottomSheet/styles.js.map +1 -0
  134. package/lib/module/components/Box/Box.js +1 -0
  135. package/lib/module/components/Box/Box.js.map +1 -1
  136. package/lib/module/components/Button/index.js +21 -10
  137. package/lib/module/components/Button/index.js.map +1 -1
  138. package/lib/module/components/Button/styles.js +180 -161
  139. package/lib/module/components/Button/styles.js.map +1 -1
  140. package/lib/module/components/Card/index.js +100 -0
  141. package/lib/module/components/Card/index.js.map +1 -0
  142. package/lib/module/components/Card/styles.js +25 -0
  143. package/lib/module/components/Card/styles.js.map +1 -0
  144. package/lib/module/components/Checkbox/index.js +176 -0
  145. package/lib/module/components/Checkbox/index.js.map +1 -0
  146. package/lib/module/components/Checkbox/styles.js +64 -0
  147. package/lib/module/components/Checkbox/styles.js.map +1 -0
  148. package/lib/module/components/Chip/index.js +99 -0
  149. package/lib/module/components/Chip/index.js.map +1 -0
  150. package/lib/module/components/Chip/styles.js +48 -0
  151. package/lib/module/components/Chip/styles.js.map +1 -0
  152. package/lib/module/components/Dialog/index.js +267 -0
  153. package/lib/module/components/Dialog/index.js.map +1 -0
  154. package/lib/module/components/Dialog/styles.js +60 -0
  155. package/lib/module/components/Dialog/styles.js.map +1 -0
  156. package/lib/module/components/Field/FieldLabel.js +29 -0
  157. package/lib/module/components/Field/FieldLabel.js.map +1 -0
  158. package/lib/module/components/Field/FieldLabel.web.js +17 -0
  159. package/lib/module/components/Field/FieldLabel.web.js.map +1 -0
  160. package/lib/module/components/Field/index.js +155 -0
  161. package/lib/module/components/Field/index.js.map +1 -0
  162. package/lib/module/components/Field/styles.js +12 -0
  163. package/lib/module/components/Field/styles.js.map +1 -0
  164. package/lib/module/components/Form/FormRoot.js +21 -0
  165. package/lib/module/components/Form/FormRoot.js.map +1 -0
  166. package/lib/module/components/Form/FormRoot.web.js +12 -0
  167. package/lib/module/components/Form/FormRoot.web.js.map +1 -0
  168. package/lib/module/components/Form/index.js +44 -0
  169. package/lib/module/components/Form/index.js.map +1 -0
  170. package/lib/module/components/Form/styles.js +5 -0
  171. package/lib/module/components/Form/styles.js.map +1 -0
  172. package/lib/module/components/Heading/index.js +31 -0
  173. package/lib/module/components/Heading/index.js.map +1 -0
  174. package/lib/module/components/Heading/styles.js +19 -0
  175. package/lib/module/components/Heading/styles.js.map +1 -0
  176. package/lib/module/components/Icon/index.js +57 -0
  177. package/lib/module/components/Icon/index.js.map +1 -0
  178. package/lib/module/components/IconButton/index.js +71 -0
  179. package/lib/module/components/IconButton/index.js.map +1 -0
  180. package/lib/module/components/IconButton/styles.js +40 -0
  181. package/lib/module/components/IconButton/styles.js.map +1 -0
  182. package/lib/module/components/Image/Image.js +67 -0
  183. package/lib/module/components/Image/Image.js.map +1 -0
  184. package/lib/module/components/Image/index.js +4 -0
  185. package/lib/module/components/Image/index.js.map +1 -0
  186. package/lib/module/components/Input/BaseInput.android.js +16 -0
  187. package/lib/module/components/Input/BaseInput.android.js.map +1 -0
  188. package/lib/module/components/Input/index.js +10 -16
  189. package/lib/module/components/Input/index.js.map +1 -1
  190. package/lib/module/components/Input/styles.js +17 -30
  191. package/lib/module/components/Input/styles.js.map +1 -1
  192. package/lib/module/components/Link/index.js +85 -0
  193. package/lib/module/components/Link/index.js.map +1 -0
  194. package/lib/module/components/Link/styles.js +11 -0
  195. package/lib/module/components/Link/styles.js.map +1 -0
  196. package/lib/module/components/OtpInput/index.js +79 -0
  197. package/lib/module/components/OtpInput/index.js.map +1 -0
  198. package/lib/module/components/OtpInput/styles.js +44 -0
  199. package/lib/module/components/OtpInput/styles.js.map +1 -0
  200. package/lib/module/components/ProgressBar/index.js +41 -0
  201. package/lib/module/components/ProgressBar/index.js.map +1 -0
  202. package/lib/module/components/ProgressBar/styles.js +6 -0
  203. package/lib/module/components/ProgressBar/styles.js.map +1 -0
  204. package/lib/module/components/ProgressSegmented/index.js +58 -0
  205. package/lib/module/components/ProgressSegmented/index.js.map +1 -0
  206. package/lib/module/components/ProgressSegmented/styles.js +17 -0
  207. package/lib/module/components/ProgressSegmented/styles.js.map +1 -0
  208. package/lib/module/components/Select/SelectTriggerHost.js +7 -0
  209. package/lib/module/components/Select/SelectTriggerHost.js.map +1 -0
  210. package/lib/module/components/Select/SelectTriggerHost.web.js +93 -0
  211. package/lib/module/components/Select/SelectTriggerHost.web.js.map +1 -0
  212. package/lib/module/components/Select/index.js +14 -14
  213. package/lib/module/components/Select/index.js.map +1 -1
  214. package/lib/module/components/Select/styles.js +29 -53
  215. package/lib/module/components/Select/styles.js.map +1 -1
  216. package/lib/module/components/Stack/HStack.js +8 -21
  217. package/lib/module/components/Stack/HStack.js.map +1 -1
  218. package/lib/module/components/Stack/VStack.js +8 -21
  219. package/lib/module/components/Stack/VStack.js.map +1 -1
  220. package/lib/module/components/Stack/styles.js +40 -0
  221. package/lib/module/components/Stack/styles.js.map +1 -0
  222. package/lib/module/components/Switch/BaseSwitch.js +42 -0
  223. package/lib/module/components/Switch/BaseSwitch.js.map +1 -0
  224. package/lib/module/components/Switch/BaseSwitch.web.js +52 -0
  225. package/lib/module/components/Switch/BaseSwitch.web.js.map +1 -0
  226. package/lib/module/components/Switch/index.js +9 -0
  227. package/lib/module/components/Switch/index.js.map +1 -0
  228. package/lib/module/components/Switch/styles.js +125 -0
  229. package/lib/module/components/Switch/styles.js.map +1 -0
  230. package/lib/module/components/Text/index.js +19 -1
  231. package/lib/module/components/Text/index.js.map +1 -1
  232. package/lib/module/components/Text/styles.js +19 -0
  233. package/lib/module/components/Text/styles.js.map +1 -0
  234. package/lib/module/components/VirtualizedList/index.js +15 -0
  235. package/lib/module/components/VirtualizedList/index.js.map +1 -0
  236. package/lib/module/components/index.js +19 -0
  237. package/lib/module/components/index.js.map +1 -1
  238. package/lib/module/index.js +3 -0
  239. package/lib/module/index.js.map +1 -1
  240. package/lib/module/metro/withCdxMetroConfig.js +20 -0
  241. package/lib/module/metro/withCdxMetroConfig.js.map +1 -0
  242. package/lib/module/styles/index.js +4 -0
  243. package/lib/module/styles/index.js.map +1 -0
  244. package/lib/module/styles/primitives.js +119 -0
  245. package/lib/module/styles/primitives.js.map +1 -0
  246. package/lib/typescript/components/AlertDialog/index.d.ts +30 -0
  247. package/lib/typescript/components/AlertDialog/index.d.ts.map +1 -0
  248. package/lib/typescript/components/Avatar/index.d.ts +40 -0
  249. package/lib/typescript/components/Avatar/index.d.ts.map +1 -0
  250. package/lib/typescript/components/Avatar/styles.d.ts +16 -0
  251. package/lib/typescript/components/Avatar/styles.d.ts.map +1 -0
  252. package/lib/typescript/components/BottomSheet/index.d.ts +61 -0
  253. package/lib/typescript/components/BottomSheet/index.d.ts.map +1 -0
  254. package/lib/typescript/components/BottomSheet/styles.d.ts +16 -0
  255. package/lib/typescript/components/BottomSheet/styles.d.ts.map +1 -0
  256. package/lib/typescript/components/Box/Box.d.ts +1 -0
  257. package/lib/typescript/components/Box/Box.d.ts.map +1 -1
  258. package/lib/typescript/components/Button/index.d.ts +6 -3
  259. package/lib/typescript/components/Button/index.d.ts.map +1 -1
  260. package/lib/typescript/components/Button/styles.d.ts +11 -8
  261. package/lib/typescript/components/Button/styles.d.ts.map +1 -1
  262. package/lib/typescript/components/Card/index.d.ts +30 -0
  263. package/lib/typescript/components/Card/index.d.ts.map +1 -0
  264. package/lib/typescript/components/Card/styles.d.ts +6 -0
  265. package/lib/typescript/components/Card/styles.d.ts.map +1 -0
  266. package/lib/typescript/components/Checkbox/index.d.ts +46 -0
  267. package/lib/typescript/components/Checkbox/index.d.ts.map +1 -0
  268. package/lib/typescript/components/Checkbox/styles.d.ts +18 -0
  269. package/lib/typescript/components/Checkbox/styles.d.ts.map +1 -0
  270. package/lib/typescript/components/Chip/index.d.ts +27 -0
  271. package/lib/typescript/components/Chip/index.d.ts.map +1 -0
  272. package/lib/typescript/components/Chip/styles.d.ts +12 -0
  273. package/lib/typescript/components/Chip/styles.d.ts.map +1 -0
  274. package/lib/typescript/components/Dialog/index.d.ts +61 -0
  275. package/lib/typescript/components/Dialog/index.d.ts.map +1 -0
  276. package/lib/typescript/components/Dialog/styles.d.ts +14 -0
  277. package/lib/typescript/components/Dialog/styles.d.ts.map +1 -0
  278. package/lib/typescript/components/Field/FieldLabel.d.ts +18 -0
  279. package/lib/typescript/components/Field/FieldLabel.d.ts.map +1 -0
  280. package/lib/typescript/components/Field/FieldLabel.web.d.ts +16 -0
  281. package/lib/typescript/components/Field/FieldLabel.web.d.ts.map +1 -0
  282. package/lib/typescript/components/Field/index.d.ts +26 -0
  283. package/lib/typescript/components/Field/index.d.ts.map +1 -0
  284. package/lib/typescript/components/Field/styles.d.ts +16 -0
  285. package/lib/typescript/components/Field/styles.d.ts.map +1 -0
  286. package/lib/typescript/components/Form/FormRoot.d.ts +14 -0
  287. package/lib/typescript/components/Form/FormRoot.d.ts.map +1 -0
  288. package/lib/typescript/components/Form/FormRoot.web.d.ts +10 -0
  289. package/lib/typescript/components/Form/FormRoot.web.d.ts.map +1 -0
  290. package/lib/typescript/components/Form/index.d.ts +7 -0
  291. package/lib/typescript/components/Form/index.d.ts.map +1 -0
  292. package/lib/typescript/components/Form/styles.d.ts +2 -0
  293. package/lib/typescript/components/Form/styles.d.ts.map +1 -0
  294. package/lib/typescript/components/Heading/index.d.ts +10 -0
  295. package/lib/typescript/components/Heading/index.d.ts.map +1 -0
  296. package/lib/typescript/components/Heading/styles.d.ts +6 -0
  297. package/lib/typescript/components/Heading/styles.d.ts.map +1 -0
  298. package/lib/typescript/components/Icon/index.d.ts +27 -0
  299. package/lib/typescript/components/Icon/index.d.ts.map +1 -0
  300. package/lib/typescript/components/IconButton/index.d.ts +15 -0
  301. package/lib/typescript/components/IconButton/index.d.ts.map +1 -0
  302. package/lib/typescript/components/IconButton/styles.d.ts +11 -0
  303. package/lib/typescript/components/IconButton/styles.d.ts.map +1 -0
  304. package/lib/typescript/components/Image/Image.d.ts +47 -0
  305. package/lib/typescript/components/Image/Image.d.ts.map +1 -0
  306. package/lib/typescript/components/Image/index.d.ts +2 -0
  307. package/lib/typescript/components/Image/index.d.ts.map +1 -0
  308. package/lib/typescript/components/Input/BaseInput.android.d.ts +3 -0
  309. package/lib/typescript/components/Input/BaseInput.android.d.ts.map +1 -0
  310. package/lib/typescript/components/Input/index.d.ts +7 -5
  311. package/lib/typescript/components/Input/index.d.ts.map +1 -1
  312. package/lib/typescript/components/Input/styles.d.ts +5 -7
  313. package/lib/typescript/components/Input/styles.d.ts.map +1 -1
  314. package/lib/typescript/components/Link/index.d.ts +26 -0
  315. package/lib/typescript/components/Link/index.d.ts.map +1 -0
  316. package/lib/typescript/components/Link/styles.d.ts +6 -0
  317. package/lib/typescript/components/Link/styles.d.ts.map +1 -0
  318. package/lib/typescript/components/OtpInput/index.d.ts +11 -0
  319. package/lib/typescript/components/OtpInput/index.d.ts.map +1 -0
  320. package/lib/typescript/components/OtpInput/styles.d.ts +14 -0
  321. package/lib/typescript/components/OtpInput/styles.d.ts.map +1 -0
  322. package/lib/typescript/components/ProgressBar/index.d.ts +17 -0
  323. package/lib/typescript/components/ProgressBar/index.d.ts.map +1 -0
  324. package/lib/typescript/components/ProgressBar/styles.d.ts +5 -0
  325. package/lib/typescript/components/ProgressBar/styles.d.ts.map +1 -0
  326. package/lib/typescript/components/ProgressSegmented/index.d.ts +15 -0
  327. package/lib/typescript/components/ProgressSegmented/index.d.ts.map +1 -0
  328. package/lib/typescript/components/ProgressSegmented/styles.d.ts +8 -0
  329. package/lib/typescript/components/ProgressSegmented/styles.d.ts.map +1 -0
  330. package/lib/typescript/components/Select/SelectTriggerHost.d.ts +3 -0
  331. package/lib/typescript/components/Select/SelectTriggerHost.d.ts.map +1 -0
  332. package/lib/typescript/components/Select/SelectTriggerHost.web.d.ts +13 -0
  333. package/lib/typescript/components/Select/SelectTriggerHost.web.d.ts.map +1 -0
  334. package/lib/typescript/components/Select/index.d.ts +7 -4
  335. package/lib/typescript/components/Select/index.d.ts.map +1 -1
  336. package/lib/typescript/components/Select/styles.d.ts +6 -8
  337. package/lib/typescript/components/Select/styles.d.ts.map +1 -1
  338. package/lib/typescript/components/Stack/HStack.d.ts +1 -12
  339. package/lib/typescript/components/Stack/HStack.d.ts.map +1 -1
  340. package/lib/typescript/components/Stack/VStack.d.ts +1 -12
  341. package/lib/typescript/components/Stack/VStack.d.ts.map +1 -1
  342. package/lib/typescript/components/Stack/styles.d.ts +23 -0
  343. package/lib/typescript/components/Stack/styles.d.ts.map +1 -0
  344. package/lib/typescript/components/Switch/BaseSwitch.d.ts +9 -0
  345. package/lib/typescript/components/Switch/BaseSwitch.d.ts.map +1 -0
  346. package/lib/typescript/components/Switch/BaseSwitch.web.d.ts +15 -0
  347. package/lib/typescript/components/Switch/BaseSwitch.web.d.ts.map +1 -0
  348. package/lib/typescript/components/Switch/index.d.ts +7 -0
  349. package/lib/typescript/components/Switch/index.d.ts.map +1 -0
  350. package/lib/typescript/components/Switch/styles.d.ts +26 -0
  351. package/lib/typescript/components/Switch/styles.d.ts.map +1 -0
  352. package/lib/typescript/components/Text/index.d.ts +9 -1
  353. package/lib/typescript/components/Text/index.d.ts.map +1 -1
  354. package/lib/typescript/components/Text/styles.d.ts +6 -0
  355. package/lib/typescript/components/Text/styles.d.ts.map +1 -0
  356. package/lib/typescript/components/VirtualizedList/index.d.ts +8 -0
  357. package/lib/typescript/components/VirtualizedList/index.d.ts.map +1 -0
  358. package/lib/typescript/components/index.d.ts +19 -0
  359. package/lib/typescript/components/index.d.ts.map +1 -1
  360. package/lib/typescript/index.d.ts +3 -0
  361. package/lib/typescript/index.d.ts.map +1 -1
  362. package/lib/typescript/metro/withCdxMetroConfig.d.ts +19 -0
  363. package/lib/typescript/metro/withCdxMetroConfig.d.ts.map +1 -0
  364. package/lib/typescript/styles/index.d.ts +2 -0
  365. package/lib/typescript/styles/index.d.ts.map +1 -0
  366. package/lib/typescript/styles/primitives.d.ts +85 -0
  367. package/lib/typescript/styles/primitives.d.ts.map +1 -0
  368. package/package.json +21 -10
  369. package/src/components/AlertDialog/index.tsx +124 -0
  370. package/src/components/Avatar/index.tsx +172 -0
  371. package/src/components/Avatar/styles.ts +83 -0
  372. package/src/components/BottomSheet/index.tsx +316 -0
  373. package/src/components/BottomSheet/styles.ts +79 -0
  374. package/src/components/Box/Box.tsx +1 -0
  375. package/src/components/Button/index.tsx +14 -9
  376. package/src/components/Button/styles.ts +159 -204
  377. package/src/components/Card/index.tsx +115 -0
  378. package/src/components/Card/styles.ts +41 -0
  379. package/src/components/Checkbox/index.tsx +207 -0
  380. package/src/components/Checkbox/styles.ts +103 -0
  381. package/src/components/Chip/index.tsx +91 -0
  382. package/src/components/Chip/styles.ts +52 -0
  383. package/src/components/Dialog/index.tsx +304 -0
  384. package/src/components/Dialog/styles.ts +88 -0
  385. package/src/components/Field/FieldLabel.tsx +33 -0
  386. package/src/components/Field/FieldLabel.web.tsx +25 -0
  387. package/src/components/Field/index.tsx +171 -0
  388. package/src/components/Field/styles.ts +32 -0
  389. package/src/components/Form/FormRoot.tsx +20 -0
  390. package/src/components/Form/FormRoot.web.tsx +12 -0
  391. package/src/components/Form/index.tsx +38 -0
  392. package/src/components/Form/styles.ts +3 -0
  393. package/src/components/Heading/index.tsx +36 -0
  394. package/src/components/Heading/styles.tsx +25 -0
  395. package/src/components/Icon/index.tsx +54 -0
  396. package/src/components/IconButton/index.tsx +92 -0
  397. package/src/components/IconButton/styles.ts +59 -0
  398. package/src/components/Image/Image.tsx +77 -0
  399. package/src/components/Image/index.ts +1 -0
  400. package/src/components/Input/BaseInput.android.tsx +13 -0
  401. package/src/components/Input/index.tsx +9 -22
  402. package/src/components/Input/styles.ts +36 -40
  403. package/src/components/Link/index.tsx +83 -0
  404. package/src/components/Link/styles.ts +21 -0
  405. package/src/components/OtpInput/index.tsx +79 -0
  406. package/src/components/OtpInput/styles.ts +45 -0
  407. package/src/components/ProgressBar/index.tsx +53 -0
  408. package/src/components/ProgressBar/styles.ts +9 -0
  409. package/src/components/ProgressSegmented/index.tsx +81 -0
  410. package/src/components/ProgressSegmented/styles.ts +20 -0
  411. package/src/components/Select/SelectTriggerHost.tsx +4 -0
  412. package/src/components/Select/SelectTriggerHost.web.tsx +136 -0
  413. package/src/components/Select/index.tsx +14 -14
  414. package/src/components/Select/styles.ts +68 -75
  415. package/src/components/Stack/HStack.tsx +8 -19
  416. package/src/components/Stack/VStack.tsx +8 -23
  417. package/src/components/Stack/styles.ts +42 -0
  418. package/src/components/Switch/BaseSwitch.tsx +38 -0
  419. package/src/components/Switch/BaseSwitch.web.tsx +69 -0
  420. package/src/components/Switch/index.tsx +11 -0
  421. package/src/components/Switch/styles.ts +120 -0
  422. package/src/components/Text/index.tsx +16 -0
  423. package/src/components/Text/styles.tsx +25 -0
  424. package/src/components/VirtualizedList/index.tsx +19 -0
  425. package/src/components/index.ts +19 -0
  426. package/src/index.ts +3 -0
  427. package/src/metro/withCdxMetroConfig.ts +29 -0
  428. package/src/styles/index.ts +1 -0
  429. package/src/styles/primitives.ts +107 -0
  430. package/lib/commonjs/components/Text/Text.js +0 -30
  431. package/lib/commonjs/components/Text/Text.js.map +0 -1
  432. package/lib/module/components/Text/Text.js +0 -26
  433. package/lib/module/components/Text/Text.js.map +0 -1
  434. package/lib/typescript/components/Text/Text.d.ts +0 -11
  435. package/lib/typescript/components/Text/Text.d.ts.map +0 -1
  436. package/src/components/Text/Text.tsx +0 -58
  437. package/src/components/Text/index.ts +0 -1
@@ -11,10 +11,12 @@ import {
11
11
  } from 'react-native';
12
12
  import { createButton, type IButtonProps } from '@cdx-ui/primitives';
13
13
  import { cn, useStyleContext, withStyleContext } from '@cdx-ui/utils';
14
+ import { Icon, IconProps } from '../Icon';
14
15
  import {
15
16
  type ButtonGroupVariantProps,
16
17
  type ButtonVariantProps,
17
18
  buttonGroupVariants,
19
+ buttonIconVariants,
18
20
  buttonRootVariants,
19
21
  buttonSpinnerVariants,
20
22
  buttonTextVariants,
@@ -46,9 +48,9 @@ export interface ButtonProps extends PressableProps, IButtonProps, ButtonVariant
46
48
  const ButtonRoot = forwardRef<View, ButtonProps>(
47
49
  (
48
50
  {
49
- variant = 'solid',
50
- color = 'primary',
51
- size = 'md',
51
+ variant = 'strong',
52
+ color = 'action',
53
+ size = 'default',
52
54
  fullWidth = false,
53
55
  className,
54
56
  children,
@@ -103,6 +105,7 @@ const ButtonLabel = forwardRef<Text, ButtonTextProps>(
103
105
 
104
106
  ButtonLabel.displayName = 'Button.Label';
105
107
 
108
+ // TODO: Use ButtonGroupVariantProps
106
109
  export interface ButtonGroupProps extends Omit<ViewProps, 'children'> {
107
110
  className?: string;
108
111
  children: ReactElement | ReactElement[];
@@ -135,13 +138,15 @@ const ButtonGroup = forwardRef<View, ButtonGroupProps>(
135
138
 
136
139
  ButtonGroup.displayName = 'Button.Group';
137
140
 
138
- export interface ButtonIconProps extends ViewProps {
139
- className?: string;
140
- }
141
+ export interface ButtonIconProps extends Omit<IconProps, 'children'> {}
141
142
 
142
- const ButtonIcon = forwardRef<View, ButtonIconProps>(({ className, style, ...props }, ref) => {
143
- return <ButtonPrimitive.Icon ref={ref} className={className} style={style} {...props} />;
144
- });
143
+ const ButtonIcon = ({ className, style, as, ...props }: ButtonIconProps) => {
144
+ const { size } = useButtonStyleContext();
145
+
146
+ const computedClassName = cn(buttonIconVariants({ size }), className);
147
+
148
+ return <Icon as={as} className={computedClassName} style={style} {...props} />;
149
+ };
145
150
 
146
151
  ButtonIcon.displayName = 'Button.Icon';
147
152
 
@@ -1,43 +1,36 @@
1
1
  import { Platform } from 'react-native';
2
2
  import { cva, type VariantProps } from 'class-variance-authority';
3
+ import { DISABLED_CURSOR, TRANSITION_COLORS } from '../../styles/primitives';
3
4
 
4
- // TODO: Split into 2 files
5
- // TODO: Create cva wrapper
5
+ // TODO: Validate that `dark:` syntax works with Uniwind `ScopedTheme`
6
6
 
7
7
  export const buttonRootVariants = cva(
8
8
  [
9
9
  'flex-row items-center justify-center',
10
- 'rounded-md',
11
- 'transition-colors duration-150', // TODO: Transition not working on mobile
12
- 'data-[disabled=true]:opacity-60 data-[disabled=true]:cursor-not-allowed data-[disabled=true]:pointer-events-none',
13
- 'data-[focus-visible=true]:ring-2 data-[focus-visible=true]:ring-ring data-[focus-visible=true]:ring-offset-2 data-[focus-visible=true]:ring-offset-bg',
10
+ 'rounded-[var(--border-radius-button)]',
11
+ 'web:outline-none web:focus:outline-none web:focus-visible:outline-none',
12
+ TRANSITION_COLORS,
13
+ 'data-[disabled=true]:opacity-[--opacity-disabled]',
14
+ DISABLED_CURSOR,
15
+ 'web:data-[focus-visible=true]:ring-2 web:data-[focus-visible=true]:ring-[--color-stroke-focus] web:data-[focus-visible=true]:ring-offset-2',
14
16
  ],
15
17
  {
16
18
  variants: {
17
19
  variant: {
18
- solid: [],
19
- subtle: [],
20
- outline: [
21
- 'bg-transparent border border-border',
22
- 'data-[hover=true]:bg-surface',
23
- 'data-[active=true]:bg-surface-raised',
24
- ],
25
- ghost: [
26
- 'bg-transparent',
27
- 'data-[hover=true]:bg-surface',
28
- 'data-[active=true]:bg-surface-raised',
29
- ],
20
+ strong: ['border-b-1 border-black/75'], // TODO: Replace with token
21
+ outline: ['bg-transparent', 'border border-stroke-primary'],
22
+ ghost: ['bg-transparent'],
30
23
  },
31
24
  color: {
32
- primary: [],
33
- secondary: [],
34
- success: [],
25
+ action: [],
35
26
  danger: [],
27
+ warning: [],
28
+ success: [],
29
+ info: [],
36
30
  },
37
31
  size: {
38
- sm: 'h-8 px-3 gap-1.5',
39
- md: 'h-10 px-4 gap-2',
40
- lg: 'h-12 px-6 gap-2.5',
32
+ default: 'h-10 px-4 gap-2',
33
+ small: 'h-8 px-3 gap-1.5',
41
34
  },
42
35
  fullWidth: {
43
36
  true: 'w-full',
@@ -45,157 +38,148 @@ export const buttonRootVariants = cva(
45
38
  },
46
39
  },
47
40
  compoundVariants: [
41
+ // ── strong × color (filled surface) ──────────────────────────────
48
42
  {
49
- variant: 'solid',
50
- color: 'primary',
51
- className: [
52
- 'bg-blue-500',
53
- Platform.select({
54
- default: 'data-[active=true]:bg-blue-700',
55
- web: 'data-[hover=true]:bg-blue-600 data-[active=true]:data-[hover=true]:bg-blue-700',
56
- }),
57
- ],
58
- },
59
- {
60
- variant: 'solid',
61
- color: 'secondary',
43
+ variant: 'strong',
44
+ color: 'action',
62
45
  className: [
63
- 'bg-amber-500',
46
+ 'bg-surface-action-strong',
64
47
  Platform.select({
65
- default: 'data-[active=true]:bg-amber-700',
66
- web: 'data-[hover=true]:bg-amber-600 data-[active=true]:data-[hover=true]:bg-amber-700',
48
+ default: 'data-[active=true]:bg-surface-action-strong-active',
49
+ web: 'data-[hover=true]:bg-surface-action-strong-hover data-[active=true]:data-[hover=true]:bg-surface-action-strong-active',
67
50
  }),
68
51
  ],
69
52
  },
70
53
  {
71
- variant: 'solid',
72
- color: 'success',
54
+ variant: 'strong',
55
+ color: 'danger',
73
56
  className: [
74
- 'bg-green-500',
57
+ 'bg-surface-danger-strong',
75
58
  Platform.select({
76
- default: 'data-[active=true]:bg-green-700',
77
- web: 'data-[hover=true]:bg-green-600 data-[active=true]:data-[hover=true]:bg-green-700',
59
+ default: 'data-[active=true]:bg-surface-danger-strong-active',
60
+ web: 'data-[hover=true]:bg-surface-danger-strong-hover data-[active=true]:data-[hover=true]:bg-surface-danger-strong-active',
78
61
  }),
79
62
  ],
80
63
  },
81
64
  {
82
- variant: 'solid',
83
- color: 'danger',
65
+ variant: 'strong',
66
+ color: 'warning',
84
67
  className: [
85
- 'bg-red-500',
68
+ 'bg-surface-warning-strong',
86
69
  Platform.select({
87
- default: 'data-[active=true]:bg-red-700',
88
- web: 'data-[hover=true]:bg-red-600 data-[active=true]:data-[hover=true]:bg-red-700',
70
+ default: 'data-[active=true]:bg-amber-600',
71
+ web: 'data-[hover=true]:bg-amber-500 data-[active=true]:data-[hover=true]:bg-amber-600',
89
72
  }),
90
73
  ],
91
74
  },
92
75
  {
93
- variant: 'subtle',
94
- color: 'primary',
76
+ variant: 'strong',
77
+ color: 'success',
95
78
  className: [
96
- 'bg-blue-100',
79
+ 'bg-surface-success-strong',
97
80
  Platform.select({
98
- default: 'data-[active=true]:bg-blue-200',
99
- web: 'data-[hover=true]:bg-blue-200 data-[active=true]:data-[hover=true]:bg-blue-300',
81
+ default: 'data-[active=true]:bg-green-800',
82
+ web: 'data-[hover=true]:bg-green-700 data-[active=true]:data-[hover=true]:bg-green-800',
100
83
  }),
101
84
  ],
102
85
  },
103
86
  {
104
- variant: 'subtle',
105
- color: 'secondary',
87
+ variant: 'strong',
88
+ color: 'info',
106
89
  className: [
107
- 'bg-amber-200',
90
+ 'bg-surface-info-strong',
108
91
  Platform.select({
109
- default: 'data-[active=true]:bg-amber-300',
110
- web: 'data-[hover=true]:bg-amber-300 data-[active=true]:data-[hover=true]:bg-amber-400',
92
+ default: 'data-[active=true]:bg-sky-700',
93
+ web: 'data-[hover=true]:bg-sky-600 data-[active=true]:data-[hover=true]:bg-sky-700',
111
94
  }),
112
95
  ],
113
96
  },
97
+
98
+ // ── outline × color (border + hover/active surface) ─────────────
114
99
  {
115
- variant: 'subtle',
116
- color: 'success',
100
+ variant: 'outline',
101
+ color: 'action',
117
102
  className: [
118
- 'bg-green-200',
103
+ 'border-stroke-action',
119
104
  Platform.select({
120
- default: 'data-[active=true]:bg-green-300',
121
- web: 'data-[hover=true]:bg-green-300 data-[active=true]:data-[hover=true]:bg-green-400',
105
+ default: 'data-[active=true]:bg-surface-action-subtle-active',
106
+ web: 'data-[hover=true]:bg-surface-action-tint-hover data-[active=true]:data-[hover=true]:bg-surface-action-subtle-active',
122
107
  }),
123
108
  ],
124
109
  },
125
110
  {
126
- variant: 'subtle',
111
+ variant: 'outline',
127
112
  color: 'danger',
128
113
  className: [
129
- 'bg-red-200',
114
+ 'border-stroke-danger',
130
115
  Platform.select({
131
- default: 'data-[active=true]:bg-red-300',
132
- web: 'data-[hover=true]:bg-red-300 data-[active=true]:data-[hover=true]:bg-red-400',
116
+ default: 'data-[active=true]:bg-surface-danger-subtle-active',
117
+ web: 'data-[hover=true]:bg-surface-danger-tint-hover data-[active=true]:data-[hover=true]:bg-surface-danger-subtle-active',
133
118
  }),
134
119
  ],
135
120
  },
136
121
  {
137
122
  variant: 'outline',
138
- color: 'primary',
123
+ color: 'warning',
139
124
  className: [
140
- 'border-blue-500',
125
+ 'border-stroke-warning',
141
126
  Platform.select({
142
- default: 'data-[active=true]:border-blue-700 data-[active=true]:bg-blue-100',
143
- web: 'data-[hover=true]:border-blue-600 data-[hover=true]:bg-blue-100 data-[active=true]:data-[hover=true]:border-blue-700 data-[active=true]:data-[hover=true]:bg-blue-200',
127
+ default: 'data-[active=true]:bg-surface-warning-subtle',
128
+ web: 'data-[hover=true]:bg-surface-warning-tint data-[active=true]:data-[hover=true]:bg-surface-warning-subtle',
144
129
  }),
145
130
  ],
146
131
  },
147
132
  {
148
133
  variant: 'outline',
149
- color: 'secondary',
134
+ color: 'success',
150
135
  className: [
151
- 'border-amber-500',
136
+ 'border-stroke-success',
152
137
  Platform.select({
153
- default: 'data-[active=true]:border-amber-700 data-[active=true]:bg-amber-50',
154
- web: 'data-[hover=true]:border-amber-600 data-[hover=true]:bg-amber-50 data-[active=true]:data-[hover=true]:border-amber-700 data-[active=true]:data-[hover=true]:bg-amber-100',
138
+ default: 'data-[active=true]:bg-surface-success-subtle',
139
+ web: 'data-[hover=true]:bg-surface-success-tint data-[active=true]:data-[hover=true]:bg-surface-success-subtle',
155
140
  }),
156
141
  ],
157
142
  },
158
143
  {
159
144
  variant: 'outline',
160
- color: 'success',
145
+ color: 'info',
161
146
  className: [
162
- 'border-green-500',
147
+ 'border-stroke-info',
163
148
  Platform.select({
164
- default: 'data-[active=true]:border-green-700 data-[active=true]:bg-green-100',
165
- web: 'data-[hover=true]:border-green-600 data-[hover=true]:bg-green-100 data-[active=true]:data-[hover=true]:border-green-700 data-[active=true]:data-[hover=true]:bg-green-200',
149
+ default: 'data-[active=true]:bg-surface-info-subtle',
150
+ web: 'data-[hover=true]:bg-surface-info-tint data-[active=true]:data-[hover=true]:bg-surface-info-subtle',
166
151
  }),
167
152
  ],
168
153
  },
154
+
155
+ // ── ghost × color (hover/active surface fills) ──────────────────
169
156
  {
170
- variant: 'outline',
171
- color: 'danger',
157
+ variant: 'ghost',
158
+ color: 'action',
172
159
  className: [
173
- 'border-red-500',
174
160
  Platform.select({
175
- default: 'data-[active=true]:border-red-700 data-[active=true]:bg-red-100',
176
- web: 'data-[hover=true]:border-red-600 data-[hover=true]:bg-red-100 data-[active=true]:data-[hover=true]:border-red-700 data-[active=true]:data-[hover=true]:bg-red-200',
161
+ default: 'data-[active=true]:bg-surface-action-subtle-active',
162
+ web: 'data-[hover=true]:bg-surface-action-tint-hover data-[active=true]:data-[hover=true]:bg-surface-action-subtle-active',
177
163
  }),
178
164
  ],
179
165
  },
180
166
  {
181
167
  variant: 'ghost',
182
- color: 'primary',
168
+ color: 'danger',
183
169
  className: [
184
- 'bg-transparent',
185
170
  Platform.select({
186
- default: 'data-[active=true]:bg-blue-100',
187
- web: 'data-[hover=true]:bg-blue-50 data-[active=true]:data-[hover=true]:bg-blue-100',
171
+ default: 'data-[active=true]:bg-surface-danger-subtle-active',
172
+ web: 'data-[hover=true]:bg-surface-danger-tint-hover data-[active=true]:data-[hover=true]:bg-surface-danger-subtle-active',
188
173
  }),
189
174
  ],
190
175
  },
191
176
  {
192
177
  variant: 'ghost',
193
- color: 'secondary',
178
+ color: 'warning',
194
179
  className: [
195
- 'bg-transparent',
196
180
  Platform.select({
197
- default: 'data-[active=true]:bg-amber-100',
198
- web: 'data-[hover=true]:bg-amber-50 data-[active=true]:data-[hover=true]:bg-amber-100',
181
+ default: 'data-[active=true]:bg-surface-warning-subtle',
182
+ web: 'data-[hover=true]:bg-surface-warning-tint data-[active=true]:data-[hover=true]:bg-surface-warning-subtle',
199
183
  }),
200
184
  ],
201
185
  },
@@ -203,29 +187,27 @@ export const buttonRootVariants = cva(
203
187
  variant: 'ghost',
204
188
  color: 'success',
205
189
  className: [
206
- 'bg-transparent',
207
190
  Platform.select({
208
- default: 'data-[active=true]:bg-green-100',
209
- web: 'data-[hover=true]:bg-green-50 data-[active=true]:data-[hover=true]:bg-green-100',
191
+ default: 'data-[active=true]:bg-surface-success-subtle',
192
+ web: 'data-[hover=true]:bg-surface-success-tint data-[active=true]:data-[hover=true]:bg-surface-success-subtle',
210
193
  }),
211
194
  ],
212
195
  },
213
196
  {
214
197
  variant: 'ghost',
215
- color: 'danger',
198
+ color: 'info',
216
199
  className: [
217
- 'bg-transparent',
218
200
  Platform.select({
219
- default: 'data-[active=true]:bg-red-100',
220
- web: 'data-[hover=true]:bg-red-50 data-[active=true]:data-[hover=true]:bg-red-100',
201
+ default: 'data-[active=true]:bg-surface-info-subtle',
202
+ web: 'data-[hover=true]:bg-surface-info-tint data-[active=true]:data-[hover=true]:bg-surface-info-subtle',
221
203
  }),
222
204
  ],
223
205
  },
224
206
  ],
225
207
  defaultVariants: {
226
- variant: 'solid',
227
- color: 'primary',
228
- size: 'md',
208
+ variant: 'strong',
209
+ color: 'action',
210
+ size: 'default',
229
211
  fullWidth: false,
230
212
  },
231
213
  },
@@ -234,156 +216,117 @@ export const buttonRootVariants = cva(
234
216
  export const buttonTextVariants = cva(['font-medium', 'text-center'], {
235
217
  variants: {
236
218
  variant: {
237
- solid: 'text-white',
238
- subtle: [],
219
+ strong: [],
239
220
  outline: [],
240
221
  ghost: [],
241
222
  },
242
223
  color: {
243
- primary: [],
244
- secondary: [],
245
- success: [],
224
+ action: [],
246
225
  danger: [],
226
+ warning: [],
227
+ success: [],
228
+ info: [],
247
229
  },
248
230
  size: {
249
- sm: 'text-sm',
250
- md: 'text-base',
251
- lg: 'text-lg',
231
+ default: 'text-base',
232
+ small: 'text-sm',
252
233
  },
253
234
  },
254
235
  compoundVariants: [
255
- {
256
- variant: 'subtle',
257
- color: 'primary',
258
- className: 'text-blue-950',
259
- },
260
- {
261
- variant: 'subtle',
262
- color: 'secondary',
263
- className: 'text-amber-950',
264
- },
265
- {
266
- variant: 'subtle',
267
- color: 'success',
268
- className: 'text-green-950',
269
- },
270
- {
271
- variant: 'subtle',
272
- color: 'danger',
273
- className: 'text-red-950',
274
- },
275
- {
276
- variant: ['outline', 'ghost'],
277
- color: 'primary',
278
- className: [
279
- 'text-blue-500',
280
- Platform.select({
281
- default: 'data-[active=true]:text-blue-700',
282
- web: 'data-[hover=true]:text-blue-600 data-[active=true]:data-[hover=true]:text-blue-700',
283
- }),
284
- ],
285
- },
286
- {
287
- variant: ['outline', 'ghost'],
288
- color: 'secondary',
289
- className: [
290
- 'text-amber-600',
291
- Platform.select({
292
- default: 'data-[active=true]:text-amber-800',
293
- web: 'data-[hover=true]:text-amber-700 data-[active=true]:data-[hover=true]:text-amber-800',
294
- }),
295
- ],
296
- },
297
- {
298
- variant: ['outline', 'ghost'],
299
- color: 'success',
300
- className: [
301
- 'text-green-600',
302
- Platform.select({
303
- default: 'data-[active=true]:text-green-800',
304
- web: 'data-[hover=true]:text-green-700 data-[active=true]:data-[hover=true]:text-green-800',
305
- }),
306
- ],
307
- },
308
- {
309
- variant: ['outline', 'ghost'],
310
- color: 'danger',
311
- className: [
312
- 'text-red-500',
313
- Platform.select({
314
- default: 'data-[active=true]:text-red-700',
315
- web: 'data-[hover=true]:text-red-600 data-[active=true]:data-[hover=true]:text-red-700',
316
- }),
317
- ],
318
- },
236
+ // ── strong × color (filled foreground text) ──────────────────────
237
+ { variant: 'strong', color: 'action', className: 'text-content-action-on-strong' },
238
+ { variant: 'strong', color: 'danger', className: 'text-content-danger-on-strong' },
239
+ { variant: 'strong', color: 'warning', className: 'text-content-warning-on-strong' },
240
+ { variant: 'strong', color: 'success', className: 'text-content-success-on-strong' },
241
+ { variant: 'strong', color: 'info', className: 'text-content-info-on-strong' },
242
+
243
+ // ── outline/ghost × color (transparent foreground text) ──────────
244
+ { variant: ['outline', 'ghost'], color: 'action', className: 'text-content-action' },
245
+ { variant: ['outline', 'ghost'], color: 'danger', className: 'text-content-danger' },
246
+ { variant: ['outline', 'ghost'], color: 'warning', className: 'text-content-warning' },
247
+ { variant: ['outline', 'ghost'], color: 'success', className: 'text-content-success' },
248
+ { variant: ['outline', 'ghost'], color: 'info', className: 'text-content-info' },
319
249
  ],
320
250
  defaultVariants: {
321
- variant: 'solid',
322
- color: 'primary',
323
- size: 'md',
251
+ variant: 'strong',
252
+ color: 'action',
253
+ size: 'default',
324
254
  },
325
255
  });
326
256
 
327
257
  export const buttonSpinnerVariants = cva([], {
328
258
  variants: {
329
259
  variant: {
330
- solid: 'accent-white',
331
- subtle: [],
260
+ strong: [],
332
261
  outline: [],
333
262
  ghost: [],
334
263
  },
335
264
  color: {
336
- primary: [],
337
- secondary: [],
338
- success: [],
265
+ action: [],
339
266
  danger: [],
267
+ warning: [],
268
+ success: [],
269
+ info: [],
340
270
  },
341
271
  },
342
272
  compoundVariants: [
273
+ // ── strong × color ───────────────────────────────────────────────
343
274
  {
344
- variant: 'subtle',
345
- color: 'primary',
346
- className: 'accent-blue-950',
275
+ variant: 'strong',
276
+ color: 'action',
277
+ className: 'accent-[var(--color-content-action-on-strong)]',
347
278
  },
348
279
  {
349
- variant: 'subtle',
350
- color: 'secondary',
351
- className: 'accent-amber-950',
280
+ variant: 'strong',
281
+ color: 'danger',
282
+ className: 'accent-[var(--color-content-danger-on-strong)]',
283
+ },
284
+ {
285
+ variant: 'strong',
286
+ color: 'warning',
287
+ className: 'accent-[var(--color-content-warning-on-strong)]',
352
288
  },
353
289
  {
354
- variant: 'subtle',
290
+ variant: 'strong',
355
291
  color: 'success',
356
- className: 'accent-green-950',
292
+ className: 'accent-[var(--color-content-success-on-strong)]',
357
293
  },
358
294
  {
359
- variant: 'subtle',
360
- color: 'danger',
361
- className: 'accent-red-950',
295
+ variant: 'strong',
296
+ color: 'info',
297
+ className: 'accent-[var(--color-content-info-on-strong)]',
362
298
  },
299
+
300
+ // ── outline/ghost × color ────────────────────────────────────────
363
301
  {
364
302
  variant: ['outline', 'ghost'],
365
- color: 'primary',
366
- className: 'accent-blue-500',
303
+ color: 'action',
304
+ className: 'accent-[var(--color-content-action)]',
305
+ },
306
+ {
307
+ variant: ['outline', 'ghost'],
308
+ color: 'danger',
309
+ className: 'accent-[var(--color-content-danger)]',
367
310
  },
368
311
  {
369
312
  variant: ['outline', 'ghost'],
370
- color: 'secondary',
371
- className: 'accent-amber-600',
313
+ color: 'warning',
314
+ className: 'accent-[var(--color-content-warning)]',
372
315
  },
373
316
  {
374
317
  variant: ['outline', 'ghost'],
375
318
  color: 'success',
376
- className: 'accent-green-600',
319
+ className: 'accent-[var(--color-content-success)]',
377
320
  },
378
321
  {
379
322
  variant: ['outline', 'ghost'],
380
- color: 'danger',
381
- className: 'accent-red-500',
323
+ color: 'info',
324
+ className: 'accent-[var(--color-content-info)]',
382
325
  },
383
326
  ],
384
327
  defaultVariants: {
385
- variant: 'solid',
386
- color: 'primary',
328
+ variant: 'strong',
329
+ color: 'action',
387
330
  },
388
331
  });
389
332
 
@@ -406,5 +349,17 @@ export const buttonGroupVariants = cva([], {
406
349
  },
407
350
  });
408
351
 
352
+ export const buttonIconVariants = cva([], {
353
+ variants: {
354
+ size: {
355
+ default: 'size-5',
356
+ small: 'size-4',
357
+ },
358
+ },
359
+ defaultVariants: {
360
+ size: 'default',
361
+ },
362
+ });
363
+
409
364
  export type ButtonVariantProps = VariantProps<typeof buttonRootVariants>;
410
365
  export type ButtonGroupVariantProps = VariantProps<typeof buttonGroupVariants>;