@idealyst/components 1.0.82 → 1.0.84

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 (316) hide show
  1. package/CLAUDE.md +199 -232
  2. package/README.md +5 -5
  3. package/package.json +25 -7
  4. package/plugin/README.md +272 -0
  5. package/plugin/test-cases.jsx +112 -0
  6. package/plugin/web-legacy.js +320 -0
  7. package/plugin/web.js +422 -124
  8. package/src/Accordion/Accordion.native.tsx +182 -0
  9. package/src/Accordion/Accordion.styles.tsx +260 -0
  10. package/src/Accordion/Accordion.web.tsx +147 -0
  11. package/src/Accordion/index.native.tsx +3 -0
  12. package/src/Accordion/index.ts +3 -0
  13. package/src/Accordion/index.web.tsx +3 -0
  14. package/src/Accordion/types.ts +23 -0
  15. package/src/ActivityIndicator/ActivityIndicator.native.tsx +17 -12
  16. package/src/ActivityIndicator/ActivityIndicator.styles.tsx +83 -109
  17. package/src/ActivityIndicator/ActivityIndicator.web.tsx +23 -17
  18. package/src/ActivityIndicator/index.ts +5 -2
  19. package/src/ActivityIndicator/index.web.ts +5 -2
  20. package/src/ActivityIndicator/types.ts +15 -10
  21. package/src/Alert/Alert.native.tsx +113 -0
  22. package/src/Alert/Alert.styles.tsx +304 -0
  23. package/src/Alert/Alert.web.tsx +123 -0
  24. package/src/Alert/index.native.ts +5 -0
  25. package/src/Alert/index.ts +5 -0
  26. package/src/Alert/index.web.ts +5 -0
  27. package/src/Alert/types.ts +21 -0
  28. package/src/Avatar/Avatar.native.tsx +8 -6
  29. package/src/Avatar/Avatar.styles.tsx +64 -58
  30. package/src/Avatar/Avatar.web.tsx +13 -8
  31. package/src/Avatar/index.ts +5 -2
  32. package/src/Avatar/index.web.ts +5 -2
  33. package/src/Avatar/types.ts +19 -13
  34. package/src/Badge/Badge.native.tsx +59 -14
  35. package/src/Badge/Badge.styles.tsx +125 -139
  36. package/src/Badge/Badge.web.tsx +72 -16
  37. package/src/Badge/index.ts +5 -2
  38. package/src/Badge/index.web.ts +5 -2
  39. package/src/Badge/types.ts +23 -11
  40. package/src/Breadcrumb/Breadcrumb.native.tsx +225 -0
  41. package/src/Breadcrumb/Breadcrumb.styles.tsx +234 -0
  42. package/src/Breadcrumb/Breadcrumb.web.tsx +268 -0
  43. package/src/Breadcrumb/index.native.ts +5 -0
  44. package/src/Breadcrumb/index.ts +5 -0
  45. package/src/Breadcrumb/index.web.ts +5 -0
  46. package/src/Breadcrumb/types.ts +56 -0
  47. package/src/Button/Button.native.tsx +75 -24
  48. package/src/Button/Button.styles.tsx +248 -205
  49. package/src/Button/Button.web.tsx +82 -25
  50. package/src/Button/index.ts +5 -5
  51. package/src/Button/index.web.ts +5 -3
  52. package/src/Button/types.ts +32 -15
  53. package/src/Card/Card.native.tsx +14 -11
  54. package/src/Card/Card.styles.tsx +146 -220
  55. package/src/Card/Card.web.tsx +20 -21
  56. package/src/Card/index.ts +5 -5
  57. package/src/Card/index.web.ts +5 -3
  58. package/src/Card/types.ts +24 -17
  59. package/src/Checkbox/Checkbox.native.tsx +24 -34
  60. package/src/Checkbox/Checkbox.styles.tsx +223 -275
  61. package/src/Checkbox/Checkbox.web.tsx +30 -37
  62. package/src/Checkbox/index.ts +5 -5
  63. package/src/Checkbox/index.web.ts +5 -3
  64. package/src/Checkbox/types.ts +26 -20
  65. package/src/Chip/Chip.native.tsx +126 -0
  66. package/src/Chip/Chip.styles.tsx +138 -0
  67. package/src/Chip/Chip.web.tsx +154 -0
  68. package/src/Chip/index.native.ts +5 -0
  69. package/src/Chip/index.ts +5 -0
  70. package/src/Chip/index.web.ts +5 -0
  71. package/src/Chip/types.ts +51 -0
  72. package/src/Dialog/Dialog.native.tsx +65 -12
  73. package/src/Dialog/Dialog.styles.tsx +154 -136
  74. package/src/Dialog/Dialog.web.tsx +16 -11
  75. package/src/Dialog/index.ts +5 -2
  76. package/src/Dialog/index.web.ts +5 -2
  77. package/src/Dialog/types.ts +22 -16
  78. package/src/Divider/Divider.native.tsx +19 -14
  79. package/src/Divider/Divider.styles.tsx +273 -595
  80. package/src/Divider/Divider.web.tsx +19 -12
  81. package/src/Divider/index.ts +5 -5
  82. package/src/Divider/index.web.ts +5 -3
  83. package/src/Divider/types.ts +28 -19
  84. package/src/Icon/Icon.native.tsx +17 -24
  85. package/src/Icon/Icon.styles.tsx +64 -48
  86. package/src/Icon/Icon.web.tsx +14 -11
  87. package/src/Icon/IconSvg/IconSvg.native.tsx +42 -0
  88. package/src/Icon/IconSvg/IconSvg.web.tsx +40 -0
  89. package/src/Icon/IconSvg/index.native.ts +1 -0
  90. package/src/Icon/IconSvg/index.ts +1 -0
  91. package/src/Icon/icon-resolver.native.ts +27 -0
  92. package/src/Icon/icon-resolver.ts +70 -0
  93. package/src/Icon/index.ts +5 -5
  94. package/src/Icon/index.web.ts +5 -3
  95. package/src/Icon/types.ts +17 -11
  96. package/src/Image/Image.native.tsx +86 -0
  97. package/src/Image/Image.styles.tsx +57 -0
  98. package/src/Image/Image.web.tsx +92 -0
  99. package/src/Image/index.native.ts +5 -0
  100. package/src/Image/index.ts +5 -0
  101. package/src/Image/types.ts +21 -0
  102. package/src/Input/Input.native.tsx +103 -26
  103. package/src/Input/Input.styles.tsx +240 -177
  104. package/src/Input/Input.web.tsx +141 -38
  105. package/src/Input/index.ts +5 -5
  106. package/src/Input/index.web.ts +5 -3
  107. package/src/Input/types.ts +43 -20
  108. package/src/List/List.native.tsx +56 -0
  109. package/src/List/List.styles.tsx +257 -0
  110. package/src/List/List.web.tsx +43 -0
  111. package/src/List/ListContext.tsx +16 -0
  112. package/src/List/ListItem.native.tsx +111 -0
  113. package/src/List/ListItem.web.tsx +110 -0
  114. package/src/List/ListSection.native.tsx +31 -0
  115. package/src/List/ListSection.web.tsx +33 -0
  116. package/src/List/index.native.tsx +5 -0
  117. package/src/List/index.ts +5 -0
  118. package/src/List/index.web.tsx +5 -0
  119. package/src/List/types.ts +42 -0
  120. package/src/Menu/Menu.native.tsx +150 -0
  121. package/src/Menu/Menu.styles.tsx +185 -0
  122. package/src/Menu/Menu.web.tsx +99 -0
  123. package/src/Menu/MenuItem.native.tsx +66 -0
  124. package/src/Menu/MenuItem.styles.tsx +119 -0
  125. package/src/Menu/MenuItem.web.tsx +67 -0
  126. package/src/Menu/index.native.ts +3 -0
  127. package/src/Menu/index.ts +3 -0
  128. package/src/Menu/index.web.ts +3 -0
  129. package/src/Menu/types.ts +30 -0
  130. package/src/Popover/Popover.native.tsx +102 -32
  131. package/src/Popover/Popover.styles.tsx +100 -67
  132. package/src/Popover/Popover.web.tsx +36 -260
  133. package/src/Popover/index.ts +5 -2
  134. package/src/Popover/index.web.ts +5 -2
  135. package/src/Popover/types.ts +14 -13
  136. package/src/Pressable/Pressable.native.tsx +7 -6
  137. package/src/Pressable/Pressable.web.tsx +8 -6
  138. package/src/Pressable/index.ts +5 -2
  139. package/src/Pressable/index.web.ts +5 -2
  140. package/src/Pressable/types.ts +11 -10
  141. package/src/Progress/Progress.native.tsx +179 -0
  142. package/src/Progress/Progress.styles.tsx +164 -0
  143. package/src/Progress/Progress.web.tsx +144 -0
  144. package/src/Progress/index.native.ts +1 -0
  145. package/src/Progress/index.ts +5 -0
  146. package/src/Progress/index.web.ts +5 -0
  147. package/src/Progress/types.ts +21 -0
  148. package/src/RadioButton/RadioButton.native.tsx +88 -0
  149. package/src/RadioButton/RadioButton.styles.tsx +163 -0
  150. package/src/RadioButton/RadioButton.web.tsx +85 -0
  151. package/src/RadioButton/RadioGroup.native.tsx +43 -0
  152. package/src/RadioButton/RadioGroup.web.tsx +49 -0
  153. package/src/RadioButton/index.native.ts +2 -0
  154. package/src/RadioButton/index.ts +2 -0
  155. package/src/RadioButton/index.web.ts +2 -0
  156. package/src/RadioButton/types.ts +29 -0
  157. package/src/SVGImage/SVGImage.native.tsx +9 -7
  158. package/src/SVGImage/SVGImage.styles.tsx +63 -55
  159. package/src/SVGImage/SVGImage.web.tsx +16 -13
  160. package/src/SVGImage/index.ts +5 -5
  161. package/src/SVGImage/index.web.ts +5 -2
  162. package/src/SVGImage/types.ts +7 -3
  163. package/src/Screen/Screen.native.tsx +43 -17
  164. package/src/Screen/Screen.styles.tsx +58 -54
  165. package/src/Screen/Screen.web.tsx +11 -5
  166. package/src/Screen/index.ts +5 -2
  167. package/src/Screen/index.web.ts +5 -2
  168. package/src/Screen/types.ts +23 -9
  169. package/src/Select/Select.native.tsx +347 -0
  170. package/src/Select/Select.styles.tsx +335 -0
  171. package/src/Select/Select.web.tsx +276 -0
  172. package/src/Select/index.native.ts +2 -0
  173. package/src/Select/index.ts +5 -0
  174. package/src/Select/index.web.ts +5 -0
  175. package/src/Select/types.ts +124 -0
  176. package/src/Skeleton/Skeleton.native.tsx +139 -0
  177. package/src/Skeleton/Skeleton.styles.tsx +59 -0
  178. package/src/Skeleton/Skeleton.web.tsx +112 -0
  179. package/src/Skeleton/index.native.ts +4 -0
  180. package/src/Skeleton/index.ts +5 -0
  181. package/src/Skeleton/index.web.ts +5 -0
  182. package/src/Skeleton/types.ts +75 -0
  183. package/src/Slider/Slider.native.tsx +248 -0
  184. package/src/Slider/Slider.styles.tsx +241 -0
  185. package/src/Slider/Slider.web.tsx +226 -0
  186. package/src/Slider/index.native.ts +3 -0
  187. package/src/Slider/index.ts +5 -0
  188. package/src/Slider/index.web.ts +5 -0
  189. package/src/Slider/types.ts +31 -0
  190. package/src/Switch/Switch.native.tsx +131 -0
  191. package/src/Switch/Switch.styles.tsx +169 -0
  192. package/src/Switch/Switch.web.tsx +121 -0
  193. package/src/Switch/index.native.ts +3 -0
  194. package/src/Switch/index.ts +5 -0
  195. package/src/Switch/index.web.ts +5 -0
  196. package/src/Switch/types.ts +21 -0
  197. package/src/TabBar/TabBar.native.tsx +142 -0
  198. package/src/TabBar/TabBar.styles.tsx +399 -0
  199. package/src/TabBar/TabBar.web.tsx +205 -0
  200. package/src/TabBar/index.native.tsx +3 -0
  201. package/src/TabBar/index.ts +3 -0
  202. package/src/TabBar/index.web.tsx +3 -0
  203. package/src/TabBar/types.ts +26 -0
  204. package/src/Table/Table.native.tsx +122 -0
  205. package/src/Table/Table.styles.tsx +283 -0
  206. package/src/Table/Table.web.tsx +112 -0
  207. package/src/Table/index.native.tsx +3 -0
  208. package/src/Table/index.ts +3 -0
  209. package/src/Table/index.web.tsx +3 -0
  210. package/src/Table/types.ts +28 -0
  211. package/src/Text/Text.native.tsx +12 -11
  212. package/src/Text/Text.styles.tsx +76 -64
  213. package/src/Text/Text.web.tsx +14 -9
  214. package/src/Text/index.ts +5 -5
  215. package/src/Text/index.web.ts +5 -3
  216. package/src/Text/types.ts +20 -13
  217. package/src/TextArea/TextArea.native.tsx +134 -0
  218. package/src/TextArea/TextArea.styles.tsx +175 -0
  219. package/src/TextArea/TextArea.web.tsx +156 -0
  220. package/src/TextArea/index.native.ts +3 -0
  221. package/src/TextArea/index.ts +3 -0
  222. package/src/TextArea/index.web.ts +3 -0
  223. package/src/TextArea/types.ts +30 -0
  224. package/src/Tooltip/Tooltip.native.tsx +165 -0
  225. package/src/Tooltip/Tooltip.styles.tsx +73 -0
  226. package/src/Tooltip/Tooltip.web.tsx +87 -0
  227. package/src/Tooltip/index.native.ts +3 -0
  228. package/src/Tooltip/index.ts +3 -0
  229. package/src/Tooltip/types.ts +18 -0
  230. package/src/Video/Video.native.tsx +105 -0
  231. package/src/Video/Video.styles.tsx +39 -0
  232. package/src/Video/Video.web.tsx +115 -0
  233. package/src/Video/index.native.ts +5 -0
  234. package/src/Video/index.ts +5 -0
  235. package/src/Video/types.ts +29 -0
  236. package/src/View/View.native.tsx +9 -14
  237. package/src/View/View.styles.tsx +101 -93
  238. package/src/View/View.web.tsx +16 -17
  239. package/src/View/index.ts +5 -5
  240. package/src/View/index.web.ts +5 -3
  241. package/src/View/types.ts +29 -21
  242. package/src/examples/AccordionExamples.tsx +126 -0
  243. package/src/examples/AlertExamples.tsx +280 -0
  244. package/src/examples/AvatarExamples.tsx +23 -23
  245. package/src/examples/BadgeExamples.tsx +109 -41
  246. package/src/examples/BreadcrumbExamples.tsx +312 -0
  247. package/src/examples/ButtonExamples.tsx +160 -33
  248. package/src/examples/CardExamples.tsx +40 -40
  249. package/src/examples/CheckboxExamples.tsx +12 -12
  250. package/src/examples/ChipExamples.tsx +197 -0
  251. package/src/examples/DialogExamples.tsx +22 -22
  252. package/src/examples/DividerExamples.tsx +49 -49
  253. package/src/examples/IconExamples.tsx +270 -54
  254. package/src/examples/ImageExamples.tsx +174 -0
  255. package/src/examples/InputExamples.tsx +75 -17
  256. package/src/examples/ListExamples.tsx +288 -0
  257. package/src/examples/MenuExamples.tsx +144 -0
  258. package/src/examples/PopoverExamples.tsx +69 -73
  259. package/src/examples/ProgressExamples.tsx +137 -0
  260. package/src/examples/RadioButtonExamples.tsx +161 -0
  261. package/src/examples/SVGImageExamples.tsx +19 -17
  262. package/src/examples/ScreenExamples.tsx +31 -31
  263. package/src/examples/SelectExamples.tsx +423 -0
  264. package/src/examples/SkeletonExamples.tsx +206 -0
  265. package/src/examples/SliderExamples.tsx +200 -0
  266. package/src/examples/SwitchExamples.tsx +182 -0
  267. package/src/examples/TabBarExamples.tsx +143 -0
  268. package/src/examples/TableExamples.tsx +280 -0
  269. package/src/examples/TextAreaExamples.tsx +173 -0
  270. package/src/examples/TextExamples.tsx +28 -32
  271. package/src/examples/ThemeExtensionExamples.tsx +10 -10
  272. package/src/examples/TooltipExamples.tsx +126 -0
  273. package/src/examples/VideoExamples.tsx +144 -0
  274. package/src/examples/ViewExamples.tsx +64 -56
  275. package/src/examples/index.ts +18 -3
  276. package/src/hooks/useMergeRefs.ts +16 -0
  277. package/src/hooks/useSmartPosition.native.ts +169 -0
  278. package/src/index.native.ts +80 -9
  279. package/src/index.ts +75 -1
  280. package/src/internal/BoundedModalContent.native.tsx +58 -0
  281. package/src/internal/PositionedPortal.tsx +254 -0
  282. package/src/internal/SafeAreaDebugOverlay.native.tsx +173 -0
  283. package/src/unistyles.d.ts +6 -0
  284. package/src/utils/buildSizeVariants.ts +16 -0
  285. package/src/utils/deepMerge.ts +43 -0
  286. package/src/utils/positionUtils.native.ts +280 -0
  287. package/src/utils/styleHelpers.ts +48 -0
  288. package/LLM-ACCESS-GUIDE.md +0 -143
  289. package/src/ActivityIndicator/README.md +0 -132
  290. package/src/Avatar/README.md +0 -139
  291. package/src/Badge/README.md +0 -170
  292. package/src/Button/Button.types.ts +0 -12
  293. package/src/Button/README.md +0 -262
  294. package/src/Card/README.md +0 -258
  295. package/src/Checkbox/README.md +0 -102
  296. package/src/Dialog/README.md +0 -210
  297. package/src/Divider/README.md +0 -108
  298. package/src/Icon/README.md +0 -81
  299. package/src/Input/README.md +0 -100
  300. package/src/SVGImage/README.md +0 -209
  301. package/src/Screen/README.md +0 -86
  302. package/src/Text/README.md +0 -94
  303. package/src/View/README.md +0 -107
  304. package/src/examples/AllExamples.tsx +0 -84
  305. package/src/examples/README.md +0 -136
  306. package/src/examples/ValidationExamples.tsx +0 -95
  307. package/src/examples/extendedTheme.ts +0 -329
  308. package/src/theme/breakpoints.ts +0 -8
  309. package/src/theme/colorResolver.ts +0 -218
  310. package/src/theme/colors.ts +0 -315
  311. package/src/theme/defaultThemes.ts +0 -326
  312. package/src/theme/index.ts +0 -188
  313. package/src/theme/themeBuilder.ts +0 -602
  314. package/src/theme/unistyles.d.ts +0 -6
  315. package/src/theme/variantHelpers.ts +0 -584
  316. package/src/theme/variants.ts +0 -56
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { Screen, View, Button, Text } from '../index';
2
+ import { Screen, View, Button, Text } from '@idealyst/components';
3
3
 
4
4
  export const ButtonExamples = () => {
5
5
  const handlePress = (buttonType: string) => {
@@ -7,32 +7,32 @@ export const ButtonExamples = () => {
7
7
  };
8
8
 
9
9
  return (
10
- <Screen background="primary" padding="lg">
10
+ <Screen background="primary">
11
11
  <View spacing="none">
12
- <Text size="large" weight="bold" align="center">
12
+ <Text size="lg" weight="bold" align="center">
13
13
  Button Examples
14
14
  </Text>
15
15
 
16
16
  {/* Button Variants */}
17
17
  <View spacing="md">
18
- <Text size="medium" weight="semibold">Variants</Text>
18
+ <Text size="md" weight="semibold">Variants</Text>
19
19
  <View style={{ flexDirection: 'row', gap: 12, flexWrap: 'wrap' }}>
20
20
  <Button
21
- variant="contained"
21
+ type="contained"
22
22
  intent="primary"
23
23
  onPress={() => handlePress('contained')}
24
24
  >
25
25
  Contained
26
26
  </Button>
27
27
  <Button
28
- variant="outlined"
28
+ type="outlined"
29
29
  intent="primary"
30
30
  onPress={() => handlePress('outlined')}
31
31
  >
32
32
  Outlined
33
33
  </Button>
34
34
  <Button
35
- variant="text"
35
+ type="text"
36
36
  intent="primary"
37
37
  onPress={() => handlePress('text')}
38
38
  >
@@ -43,29 +43,29 @@ export const ButtonExamples = () => {
43
43
 
44
44
  {/* Button Sizes */}
45
45
  <View spacing="md">
46
- <Text size="medium" weight="semibold">Sizes</Text>
46
+ <Text size="md" weight="semibold">Sizes</Text>
47
47
  <View style={{ flexDirection: 'row', gap: 12, flexWrap: 'wrap', alignItems: 'center' }}>
48
- <Button
49
- size="small"
50
- variant="contained"
48
+ <Button
49
+ size="sm"
50
+ type="contained"
51
51
  intent="primary"
52
- onPress={() => handlePress('small')}
52
+ onPress={() => handlePress('sm')}
53
53
  >
54
54
  Small
55
55
  </Button>
56
- <Button
57
- size="medium"
58
- variant="contained"
56
+ <Button
57
+ size="md"
58
+ type="contained"
59
59
  intent="primary"
60
- onPress={() => handlePress('medium')}
60
+ onPress={() => handlePress('md')}
61
61
  >
62
62
  Medium
63
63
  </Button>
64
- <Button
65
- size="large"
66
- variant="contained"
64
+ <Button
65
+ size="lg"
66
+ type="contained"
67
67
  intent="primary"
68
- onPress={() => handlePress('large')}
68
+ onPress={() => handlePress('lg')}
69
69
  >
70
70
  Large
71
71
  </Button>
@@ -74,39 +74,39 @@ export const ButtonExamples = () => {
74
74
 
75
75
  {/* Button Intents */}
76
76
  <View spacing="md">
77
- <Text size="medium" weight="semibold">Intents</Text>
77
+ <Text size="md" weight="semibold">Intents</Text>
78
78
  <View style={{ flexDirection: 'row', gap: 12, flexWrap: 'wrap' }}>
79
79
  <Button
80
80
  intent="primary"
81
- variant="contained"
81
+ type="contained"
82
82
  onPress={() => handlePress('primary')}
83
83
  >
84
84
  Primary
85
85
  </Button>
86
86
  <Button
87
87
  intent="neutral"
88
- variant="contained"
88
+ type="contained"
89
89
  onPress={() => handlePress('neutral')}
90
90
  >
91
91
  Neutral
92
92
  </Button>
93
93
  <Button
94
94
  intent="success"
95
- variant="contained"
95
+ type="contained"
96
96
  onPress={() => handlePress('success')}
97
97
  >
98
98
  Success
99
99
  </Button>
100
100
  <Button
101
101
  intent="error"
102
- variant="contained"
102
+ type="contained"
103
103
  onPress={() => handlePress('error')}
104
104
  >
105
105
  Error
106
106
  </Button>
107
107
  <Button
108
108
  intent="warning"
109
- variant="contained"
109
+ type="contained"
110
110
  onPress={() => handlePress('warning')}
111
111
  >
112
112
  Warning
@@ -116,26 +116,26 @@ export const ButtonExamples = () => {
116
116
 
117
117
  {/* Disabled States */}
118
118
  <View spacing="md">
119
- <Text size="medium" weight="semibold">Disabled States</Text>
119
+ <Text size="md" weight="semibold">Disabled States</Text>
120
120
  <View style={{ flexDirection: 'row', gap: 12, flexWrap: 'wrap' }}>
121
- <Button
122
- variant="contained"
121
+ <Button
122
+ type="contained"
123
123
  intent="primary"
124
124
  disabled
125
125
  onPress={() => handlePress('disabled-contained')}
126
126
  >
127
127
  Disabled Contained
128
128
  </Button>
129
- <Button
130
- variant="outlined"
129
+ <Button
130
+ type="outlined"
131
131
  intent="primary"
132
132
  disabled
133
133
  onPress={() => handlePress('disabled-outlined')}
134
134
  >
135
135
  Disabled Outlined
136
136
  </Button>
137
- <Button
138
- variant="text"
137
+ <Button
138
+ type="text"
139
139
  intent="primary"
140
140
  disabled
141
141
  onPress={() => handlePress('disabled-text')}
@@ -144,6 +144,133 @@ export const ButtonExamples = () => {
144
144
  </Button>
145
145
  </View>
146
146
  </View>
147
+
148
+ {/* Buttons with Icons */}
149
+ <View spacing="md">
150
+ <Text size="md" weight="semibold">Buttons with Icons</Text>
151
+ <View style={{ flexDirection: 'row', gap: 12, flexWrap: 'wrap' }}>
152
+ <Button
153
+ type="contained"
154
+ intent="primary"
155
+ leftIcon="plus"
156
+ onPress={() => handlePress('icon-left')}
157
+ >
158
+ Add Item
159
+ </Button>
160
+ <Button
161
+ type="contained"
162
+ intent="success"
163
+ rightIcon="check"
164
+ onPress={() => handlePress('icon-right')}
165
+ >
166
+ Save
167
+ </Button>
168
+ <Button
169
+ type="contained"
170
+ intent="error"
171
+ leftIcon="delete"
172
+ rightIcon="alert"
173
+ onPress={() => handlePress('icon-both')}
174
+ >
175
+ Delete
176
+ </Button>
177
+ <Button
178
+ type="outlined"
179
+ intent="primary"
180
+ leftIcon="download"
181
+ onPress={() => handlePress('icon-outlined')}
182
+ >
183
+ Download
184
+ </Button>
185
+ <Button
186
+ type="text"
187
+ intent="primary"
188
+ leftIcon="pencil"
189
+ onPress={() => handlePress('icon-text')}
190
+ >
191
+ Edit
192
+ </Button>
193
+ </View>
194
+ </View>
195
+
196
+ {/* Icon-only Buttons */}
197
+ <View spacing="md">
198
+ <Text size="md" weight="semibold">Icon-only Buttons</Text>
199
+ <View style={{ flexDirection: 'row', gap: 12, flexWrap: 'wrap', alignItems: 'center' }}>
200
+ <Button
201
+ type="contained"
202
+ intent="primary"
203
+ leftIcon="home"
204
+ size="sm"
205
+ onPress={() => handlePress('icon-only-small')}
206
+ />
207
+ <Button
208
+ type="contained"
209
+ intent="primary"
210
+ leftIcon="cog"
211
+ size="md"
212
+ onPress={() => handlePress('icon-only-medium')}
213
+ />
214
+ <Button
215
+ type="contained"
216
+ intent="primary"
217
+ leftIcon="heart"
218
+ size="lg"
219
+ onPress={() => handlePress('icon-only-large')}
220
+ />
221
+ <Button
222
+ type="outlined"
223
+ intent="success"
224
+ leftIcon="check-circle"
225
+ onPress={() => handlePress('icon-only-outlined')}
226
+ />
227
+ <Button
228
+ type="text"
229
+ intent="error"
230
+ leftIcon="close-circle"
231
+ onPress={() => handlePress('icon-only-text')}
232
+ />
233
+ </View>
234
+ </View>
235
+
236
+ {/* Different Intents with Icons */}
237
+ <View spacing="md">
238
+ <Text size="md" weight="semibold">Icons with Different Intents</Text>
239
+ <View style={{ flexDirection: 'row', gap: 12, flexWrap: 'wrap' }}>
240
+ <Button
241
+ type="contained"
242
+ intent="primary"
243
+ leftIcon="information"
244
+ onPress={() => handlePress('info')}
245
+ >
246
+ Info
247
+ </Button>
248
+ <Button
249
+ type="contained"
250
+ intent="success"
251
+ leftIcon="check-circle"
252
+ onPress={() => handlePress('success')}
253
+ >
254
+ Success
255
+ </Button>
256
+ <Button
257
+ type="contained"
258
+ intent="warning"
259
+ leftIcon="alert"
260
+ onPress={() => handlePress('warning')}
261
+ >
262
+ Warning
263
+ </Button>
264
+ <Button
265
+ type="contained"
266
+ intent="error"
267
+ leftIcon="alert-circle"
268
+ onPress={() => handlePress('error')}
269
+ >
270
+ Error
271
+ </Button>
272
+ </View>
273
+ </View>
147
274
  </View>
148
275
  </Screen>
149
276
  );
@@ -9,38 +9,38 @@ export const CardExamples = () => {
9
9
  return (
10
10
  <Screen background="primary" padding="lg">
11
11
  <View spacing="none">
12
- <Text size="large" weight="bold" align="center">
12
+ <Text size="lg" weight="bold" align="center">
13
13
  Card Examples
14
14
  </Text>
15
15
 
16
16
  {/* Card Variants */}
17
17
  <View spacing="md">
18
- <Text size="medium" weight="semibold">Variants</Text>
18
+ <Text size="md" weight="semibold">Variants</Text>
19
19
  <View spacing="sm" style={{ gap: 10 }}>
20
- <Card variant="default" padding="medium">
20
+ <Card type="default" padding="md">
21
21
  <Text>Default Card</Text>
22
- <Text size="small" color="secondary">
22
+ <Text size="sm" color="secondary">
23
23
  This is a default card with standard styling
24
24
  </Text>
25
25
  </Card>
26
26
 
27
- <Card variant="outlined" padding="medium">
27
+ <Card type="outlined" padding="md">
28
28
  <Text>Outlined Card</Text>
29
- <Text size="small" color="secondary">
29
+ <Text size="sm" color="secondary">
30
30
  This is an outlined card with border
31
31
  </Text>
32
32
  </Card>
33
33
 
34
- <Card variant="elevated" padding="medium">
34
+ <Card type="elevated" padding="md">
35
35
  <Text>Elevated Card</Text>
36
- <Text size="small" color="secondary">
36
+ <Text size="sm" color="secondary">
37
37
  This is an elevated card with shadow
38
38
  </Text>
39
39
  </Card>
40
40
 
41
- <Card variant="filled" padding="medium">
41
+ <Card type="filled" padding="md">
42
42
  <Text>Filled Card</Text>
43
- <Text size="small" color="secondary">
43
+ <Text size="sm" color="secondary">
44
44
  This is a filled card with background
45
45
  </Text>
46
46
  </Card>
@@ -49,29 +49,29 @@ export const CardExamples = () => {
49
49
 
50
50
  {/* Card Intents */}
51
51
  <View spacing="md">
52
- <Text size="medium" weight="semibold">Intents</Text>
52
+ <Text size="md" weight="semibold">Intents</Text>
53
53
  <View spacing="sm" style={{ gap: 10 }}>
54
- <Card intent="neutral" padding="medium" variant="outlined">
54
+ <Card intent="neutral" padding="md" type="outlined">
55
55
  <Text>Neutral Card</Text>
56
56
  </Card>
57
57
 
58
- <Card intent="primary" padding="medium" variant="outlined">
58
+ <Card intent="primary" padding="md" type="outlined">
59
59
  <Text>Primary Card</Text>
60
60
  </Card>
61
61
 
62
- <Card intent="success" padding="medium" variant="outlined">
62
+ <Card intent="success" padding="md" type="outlined">
63
63
  <Text>Success Card</Text>
64
64
  </Card>
65
65
 
66
- <Card intent="error" padding="medium" variant="outlined">
66
+ <Card intent="error" padding="md" type="outlined">
67
67
  <Text>Error Card</Text>
68
68
  </Card>
69
69
 
70
- <Card intent="warning" padding="medium" variant="outlined">
70
+ <Card intent="warning" padding="md" type="outlined">
71
71
  <Text>Warning Card</Text>
72
72
  </Card>
73
73
 
74
- <Card intent="info" padding="medium" variant="outlined">
74
+ <Card intent="info" padding="md" type="outlined">
75
75
  <Text>Info Card</Text>
76
76
  </Card>
77
77
  </View>
@@ -79,21 +79,21 @@ export const CardExamples = () => {
79
79
 
80
80
  {/* Card Padding */}
81
81
  <View spacing="md">
82
- <Text size="medium" weight="semibold">Padding</Text>
82
+ <Text size="md" weight="semibold">Padding</Text>
83
83
  <View spacing="sm">
84
- <Card padding="none" variant="outlined">
84
+ <Card padding="none" type="outlined">
85
85
  <Text>No Padding</Text>
86
86
  </Card>
87
87
 
88
- <Card padding="small" variant="outlined">
88
+ <Card padding="sm" type="outlined">
89
89
  <Text>Small Padding</Text>
90
90
  </Card>
91
91
 
92
- <Card padding="medium" variant="outlined">
92
+ <Card padding="md" type="outlined">
93
93
  <Text>Medium Padding</Text>
94
94
  </Card>
95
95
 
96
- <Card padding="large" variant="outlined">
96
+ <Card padding="lg" type="outlined">
97
97
  <Text>Large Padding</Text>
98
98
  </Card>
99
99
  </View>
@@ -101,21 +101,21 @@ export const CardExamples = () => {
101
101
 
102
102
  {/* Card Radius */}
103
103
  <View spacing="md">
104
- <Text size="medium" weight="semibold">Border Radius</Text>
104
+ <Text size="md" weight="semibold">Border Radius</Text>
105
105
  <View spacing="sm">
106
- <Card radius="none" variant="outlined" padding="medium">
106
+ <Card radius="none" type="outlined" padding="md">
107
107
  <Text>No Radius</Text>
108
108
  </Card>
109
109
 
110
- <Card radius="small" variant="outlined" padding="medium">
110
+ <Card radius="sm" type="outlined" padding="md">
111
111
  <Text>Small Radius</Text>
112
112
  </Card>
113
113
 
114
- <Card radius="medium" variant="outlined" padding="medium">
114
+ <Card radius="md" type="outlined" padding="md">
115
115
  <Text>Medium Radius</Text>
116
116
  </Card>
117
117
 
118
- <Card radius="large" variant="outlined" padding="medium">
118
+ <Card radius="lg" type="outlined" padding="md">
119
119
  <Text>Large Radius</Text>
120
120
  </Card>
121
121
  </View>
@@ -123,16 +123,16 @@ export const CardExamples = () => {
123
123
 
124
124
  {/* Clickable Cards */}
125
125
  <View spacing="md">
126
- <Text size="medium" weight="semibold">Interactive Cards</Text>
126
+ <Text size="md" weight="semibold">Interactive Cards</Text>
127
127
  <View spacing="sm">
128
128
  <Card
129
129
  clickable
130
130
  onPress={() => handleCardPress('clickable')}
131
- variant="outlined"
132
- padding="medium"
131
+ type="outlined"
132
+ padding="md"
133
133
  >
134
134
  <Text weight="semibold">Clickable Card</Text>
135
- <Text size="small" color="secondary">
135
+ <Text size="sm" color="secondary">
136
136
  Click me to see interaction
137
137
  </Text>
138
138
  </Card>
@@ -141,11 +141,11 @@ export const CardExamples = () => {
141
141
  clickable
142
142
  disabled
143
143
  onPress={() => handleCardPress('disabled')}
144
- variant="outlined"
145
- padding="medium"
144
+ type="outlined"
145
+ padding="md"
146
146
  >
147
147
  <Text weight="semibold">Disabled Card</Text>
148
- <Text size="small" color="secondary">
148
+ <Text size="sm" color="secondary">
149
149
  This card is disabled
150
150
  </Text>
151
151
  </Card>
@@ -154,17 +154,17 @@ export const CardExamples = () => {
154
154
 
155
155
  {/* Complex Card Layout */}
156
156
  <View spacing="md">
157
- <Text size="medium" weight="semibold">Complex Layout</Text>
158
- <Card variant="elevated" padding="large" radius="medium">
159
- <Text size="large" weight="bold">Product Card</Text>
160
- <Text size="small" color="secondary" style={{ marginVertical: 8 }}>
157
+ <Text size="md" weight="semibold">Complex Layout</Text>
158
+ <Card type="elevated" padding="lg" radius="md">
159
+ <Text size="lg" weight="bold">Product Card</Text>
160
+ <Text size="sm" color="secondary" style={{ marginVertical: 8 }}>
161
161
  This is a more complex card layout with multiple elements
162
162
  </Text>
163
163
  <View style={{ flexDirection: 'row', gap: 8, marginTop: 12 }}>
164
- <Button size="small" variant="contained" intent="primary">
164
+ <Button size="sm" type="contained" intent="primary">
165
165
  Buy Now
166
166
  </Button>
167
- <Button size="small" variant="outlined" intent="neutral">
167
+ <Button size="sm" type="outlined" intent="neutral">
168
168
  Add to Cart
169
169
  </Button>
170
170
  </View>
@@ -11,13 +11,13 @@ export const CheckboxExamples = () => {
11
11
  return (
12
12
  <Screen background="primary" padding="lg">
13
13
  <View spacing="none">
14
- <Text size="large" weight="bold" align="center">
14
+ <Text size="lg" weight="bold" align="center">
15
15
  Checkbox Examples
16
16
  </Text>
17
17
 
18
18
  {/* Basic Checkbox */}
19
19
  <View spacing="md">
20
- <Text size="medium" weight="semibold">Basic Checkbox</Text>
20
+ <Text size="md" weight="semibold">Basic Checkbox</Text>
21
21
  <View spacing="sm" style={{ gap: 10 }}>
22
22
  <Checkbox
23
23
  checked={basicChecked}
@@ -39,22 +39,22 @@ export const CheckboxExamples = () => {
39
39
 
40
40
  {/* Checkbox Sizes */}
41
41
  <View spacing="md">
42
- <Text size="medium" weight="semibold">Sizes</Text>
42
+ <Text size="md" weight="semibold">Sizes</Text>
43
43
  <View spacing="sm" style={{ gap: 10 }}>
44
44
  <Checkbox
45
- size="small"
45
+ size="sm"
46
46
  checked={true}
47
47
  onCheckedChange={() => {}}
48
48
  label="Small checkbox"
49
49
  />
50
50
  <Checkbox
51
- size="medium"
51
+ size="md"
52
52
  checked={true}
53
53
  onCheckedChange={() => {}}
54
54
  label="Medium checkbox"
55
55
  />
56
56
  <Checkbox
57
- size="large"
57
+ size="lg"
58
58
  checked={true}
59
59
  onCheckedChange={() => {}}
60
60
  label="Large checkbox"
@@ -64,7 +64,7 @@ export const CheckboxExamples = () => {
64
64
 
65
65
  {/* Checkbox Intents */}
66
66
  <View spacing="md">
67
- <Text size="medium" weight="semibold">Intents</Text>
67
+ <Text size="md" weight="semibold">Intents</Text>
68
68
  <View spacing="sm" style={{ gap: 10 }}>
69
69
  <Checkbox
70
70
  intent="primary"
@@ -107,7 +107,7 @@ export const CheckboxExamples = () => {
107
107
 
108
108
  {/* Checkbox Variants */}
109
109
  <View spacing="md">
110
- <Text size="medium" weight="semibold">Variants</Text>
110
+ <Text size="md" weight="semibold">Variants</Text>
111
111
  <View spacing="sm" style={{ gap: 10 }}>
112
112
  <Checkbox
113
113
  variant="default"
@@ -126,7 +126,7 @@ export const CheckboxExamples = () => {
126
126
 
127
127
  {/* Checkbox States */}
128
128
  <View spacing="md">
129
- <Text size="medium" weight="semibold">States</Text>
129
+ <Text size="md" weight="semibold">States</Text>
130
130
  <View spacing="sm" style={{ gap: 10 }}>
131
131
  <Checkbox
132
132
  checked={false}
@@ -161,7 +161,7 @@ export const CheckboxExamples = () => {
161
161
 
162
162
  {/* Checkbox with Custom Children */}
163
163
  <View spacing="md">
164
- <Text size="medium" weight="semibold">Custom Content</Text>
164
+ <Text size="md" weight="semibold">Custom Content</Text>
165
165
  <View spacing="sm" style={{ gap: 10 }}>
166
166
  <Checkbox
167
167
  checked={true}
@@ -177,7 +177,7 @@ export const CheckboxExamples = () => {
177
177
  >
178
178
  <View>
179
179
  <Text weight="semibold">Multi-line Label</Text>
180
- <Text size="small" color="secondary">
180
+ <Text size="sm" color="secondary">
181
181
  This checkbox has a more complex label with multiple lines
182
182
  </Text>
183
183
  </View>
@@ -187,7 +187,7 @@ export const CheckboxExamples = () => {
187
187
 
188
188
  {/* Checkbox with Helper Text and Errors */}
189
189
  <View spacing="md">
190
- <Text size="medium" weight="semibold">With Helper Text</Text>
190
+ <Text size="md" weight="semibold">With Helper Text</Text>
191
191
  <View spacing="sm" style={{ gap: 10 }}>
192
192
  <Checkbox
193
193
  checked={true}