@kivid/native-components 1.0.0-alpha.6 → 1.0.0-alpha.8

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 (183) hide show
  1. package/dist/commonjs/components/Avatar/index.js +5 -4
  2. package/dist/commonjs/components/Avatar/index.js.map +1 -1
  3. package/dist/commonjs/components/ChatBubble/assets/class-variants.js +6 -6
  4. package/dist/commonjs/components/ChatBubble/assets/class-variants.js.map +1 -1
  5. package/dist/commonjs/components/ChatBubble/components/ChatBubbleSeal/index.js +5 -5
  6. package/dist/commonjs/components/ChatBubble/components/ChatBubbleSeal/index.js.map +1 -1
  7. package/dist/commonjs/components/ChatBubble/components/ChatBubbleText/index.js +4 -4
  8. package/dist/commonjs/components/ChatBubble/components/ChatBubbleText/index.js.map +1 -1
  9. package/dist/commonjs/components/ChatBubble/{context.js → contexts/ChatBubbleContext/index.js} +1 -1
  10. package/dist/commonjs/components/ChatBubble/contexts/ChatBubbleContext/index.js.map +1 -0
  11. package/dist/commonjs/components/ChatBubble/contexts/ChatBubbleContext/types.js +6 -0
  12. package/dist/commonjs/components/ChatBubble/contexts/ChatBubbleContext/types.js.map +1 -0
  13. package/dist/commonjs/components/ChatBubble/contexts/index.js +17 -0
  14. package/dist/commonjs/components/ChatBubble/contexts/index.js.map +1 -0
  15. package/dist/commonjs/components/ChatBubble/index.js +10 -9
  16. package/dist/commonjs/components/ChatBubble/index.js.map +1 -1
  17. package/dist/commonjs/components/IconButton/assets/class-variants.js +82 -0
  18. package/dist/commonjs/components/IconButton/assets/class-variants.js.map +1 -0
  19. package/dist/commonjs/components/IconButton/assets/design-system-showcase.js +119 -0
  20. package/dist/commonjs/components/IconButton/assets/design-system-showcase.js.map +1 -0
  21. package/dist/commonjs/components/IconButton/enums.js +33 -0
  22. package/dist/commonjs/components/IconButton/enums.js.map +1 -0
  23. package/dist/commonjs/components/IconButton/index.js +108 -0
  24. package/dist/commonjs/components/IconButton/index.js.map +1 -0
  25. package/dist/commonjs/components/IconButton/types.js +6 -0
  26. package/dist/commonjs/components/IconButton/types.js.map +1 -0
  27. package/dist/commonjs/components/ListButton/assets/class-variants.js +2 -10
  28. package/dist/commonjs/components/ListButton/assets/class-variants.js.map +1 -1
  29. package/dist/commonjs/components/ListButton/assets/design-system-showcase.js +424 -0
  30. package/dist/commonjs/components/ListButton/assets/design-system-showcase.js.map +1 -0
  31. package/dist/commonjs/components/ListButton/enums/index.js +0 -11
  32. package/dist/commonjs/components/ListButton/enums/index.js.map +1 -1
  33. package/dist/commonjs/components/ListButton/index.js +41 -36
  34. package/dist/commonjs/components/ListButton/index.js.map +1 -1
  35. package/dist/commonjs/components/OtpInput/assets/class-variant.js +1 -1
  36. package/dist/commonjs/components/OtpInput/assets/class-variant.js.map +1 -1
  37. package/dist/commonjs/components/OtpInput/components/InformationStatus/index.js +13 -11
  38. package/dist/commonjs/components/OtpInput/components/InformationStatus/index.js.map +1 -1
  39. package/dist/commonjs/components/OtpInput/enums/index.js +7 -8
  40. package/dist/commonjs/components/OtpInput/enums/index.js.map +1 -1
  41. package/dist/commonjs/components/OtpInput/index.js +66 -101
  42. package/dist/commonjs/components/OtpInput/index.js.map +1 -1
  43. package/dist/commonjs/components/PasswordInput/index.js +42 -0
  44. package/dist/commonjs/components/PasswordInput/index.js.map +1 -0
  45. package/dist/commonjs/components/PasswordInput/types.js +6 -0
  46. package/dist/commonjs/components/PasswordInput/types.js.map +1 -0
  47. package/dist/commonjs/components/TextInput/index.js +14 -3
  48. package/dist/commonjs/components/TextInput/index.js.map +1 -1
  49. package/dist/commonjs/components/Tooltip/index.js +44 -5
  50. package/dist/commonjs/components/Tooltip/index.js.map +1 -1
  51. package/dist/commonjs/components/index.js +33 -0
  52. package/dist/commonjs/components/index.js.map +1 -1
  53. package/dist/commonjs/iconography/Icons/index.js +1 -1
  54. package/dist/commonjs/iconography/Icons/index.js.map +1 -1
  55. package/dist/module/components/Avatar/index.js +5 -4
  56. package/dist/module/components/Avatar/index.js.map +1 -1
  57. package/dist/module/components/ChatBubble/assets/class-variants.js +6 -6
  58. package/dist/module/components/ChatBubble/assets/class-variants.js.map +1 -1
  59. package/dist/module/components/ChatBubble/components/ChatBubbleSeal/index.js +4 -4
  60. package/dist/module/components/ChatBubble/components/ChatBubbleSeal/index.js.map +1 -1
  61. package/dist/module/components/ChatBubble/components/ChatBubbleText/index.js +5 -4
  62. package/dist/module/components/ChatBubble/components/ChatBubbleText/index.js.map +1 -1
  63. package/dist/module/components/ChatBubble/{context.js → contexts/ChatBubbleContext/index.js} +1 -1
  64. package/dist/module/components/ChatBubble/contexts/ChatBubbleContext/index.js.map +1 -0
  65. package/dist/module/components/ChatBubble/contexts/ChatBubbleContext/types.js +4 -0
  66. package/dist/module/components/ChatBubble/contexts/ChatBubbleContext/types.js.map +1 -0
  67. package/dist/module/components/ChatBubble/contexts/index.js +4 -0
  68. package/dist/module/components/ChatBubble/contexts/index.js.map +1 -0
  69. package/dist/module/components/ChatBubble/index.js +9 -8
  70. package/dist/module/components/ChatBubble/index.js.map +1 -1
  71. package/dist/module/components/IconButton/assets/class-variants.js +79 -0
  72. package/dist/module/components/IconButton/assets/class-variants.js.map +1 -0
  73. package/dist/module/components/IconButton/assets/design-system-showcase.js +115 -0
  74. package/dist/module/components/IconButton/assets/design-system-showcase.js.map +1 -0
  75. package/dist/module/components/IconButton/enums.js +29 -0
  76. package/dist/module/components/IconButton/enums.js.map +1 -0
  77. package/dist/module/components/IconButton/index.js +103 -0
  78. package/dist/module/components/IconButton/index.js.map +1 -0
  79. package/dist/module/components/IconButton/types.js +4 -0
  80. package/dist/module/components/IconButton/types.js.map +1 -0
  81. package/dist/module/components/ListButton/assets/class-variants.js +2 -10
  82. package/dist/module/components/ListButton/assets/class-variants.js.map +1 -1
  83. package/dist/module/components/ListButton/assets/design-system-showcase.js +420 -0
  84. package/dist/module/components/ListButton/assets/design-system-showcase.js.map +1 -0
  85. package/dist/module/components/ListButton/enums/index.js +0 -1
  86. package/dist/module/components/ListButton/enums/index.js.map +1 -1
  87. package/dist/module/components/ListButton/index.js +44 -39
  88. package/dist/module/components/ListButton/index.js.map +1 -1
  89. package/dist/module/components/OtpInput/assets/class-variant.js +1 -1
  90. package/dist/module/components/OtpInput/assets/class-variant.js.map +1 -1
  91. package/dist/module/components/OtpInput/components/InformationStatus/index.js +15 -13
  92. package/dist/module/components/OtpInput/components/InformationStatus/index.js.map +1 -1
  93. package/dist/module/components/OtpInput/enums/index.js +6 -7
  94. package/dist/module/components/OtpInput/enums/index.js.map +1 -1
  95. package/dist/module/components/OtpInput/index.js +66 -101
  96. package/dist/module/components/OtpInput/index.js.map +1 -1
  97. package/dist/module/components/PasswordInput/index.js +37 -0
  98. package/dist/module/components/PasswordInput/index.js.map +1 -0
  99. package/dist/module/components/PasswordInput/types.js +4 -0
  100. package/dist/module/components/PasswordInput/types.js.map +1 -0
  101. package/dist/module/components/TextInput/index.js +14 -3
  102. package/dist/module/components/TextInput/index.js.map +1 -1
  103. package/dist/module/components/Tooltip/index.js +45 -6
  104. package/dist/module/components/Tooltip/index.js.map +1 -1
  105. package/dist/module/components/index.js +3 -0
  106. package/dist/module/components/index.js.map +1 -1
  107. package/dist/module/iconography/Icons/index.js +2 -2
  108. package/dist/module/iconography/Icons/index.js.map +1 -1
  109. package/dist/typescript/components/Avatar/types.d.ts +1 -0
  110. package/dist/typescript/components/ChatBubble/assets/class-variants.d.ts +1 -1
  111. package/dist/typescript/components/ChatBubble/components/ChatBubbleSeal/types.d.ts +1 -1
  112. package/dist/typescript/components/ChatBubble/components/ChatBubbleText/types.d.ts +1 -1
  113. package/dist/typescript/components/ChatBubble/contexts/ChatBubbleContext/index.d.ts +3 -0
  114. package/dist/typescript/components/ChatBubble/contexts/ChatBubbleContext/types.d.ts +6 -0
  115. package/dist/typescript/components/ChatBubble/contexts/index.d.ts +1 -0
  116. package/dist/typescript/components/ChatBubble/types.d.ts +2 -2
  117. package/dist/typescript/components/IconButton/assets/class-variants.d.ts +8 -0
  118. package/dist/typescript/components/IconButton/assets/design-system-showcase.d.ts +17 -0
  119. package/dist/typescript/components/IconButton/enums.d.ts +22 -0
  120. package/dist/typescript/components/IconButton/index.d.ts +2 -0
  121. package/dist/typescript/components/IconButton/types.d.ts +15 -0
  122. package/dist/typescript/components/ListButton/assets/class-variants.d.ts +1 -4
  123. package/dist/typescript/components/ListButton/assets/design-system-showcase.d.ts +14 -0
  124. package/dist/typescript/components/ListButton/enums/index.d.ts +0 -1
  125. package/dist/typescript/components/ListButton/types.d.ts +7 -5
  126. package/dist/typescript/components/OtpInput/components/InformationStatus/types.d.ts +2 -2
  127. package/dist/typescript/components/OtpInput/enums/index.d.ts +2 -3
  128. package/dist/typescript/components/OtpInput/index.d.ts +1 -1
  129. package/dist/typescript/components/OtpInput/types.d.ts +4 -4
  130. package/dist/typescript/components/PasswordInput/index.d.ts +2 -0
  131. package/dist/typescript/components/PasswordInput/types.d.ts +3 -0
  132. package/dist/typescript/components/TextInput/index.d.ts +1 -1
  133. package/dist/typescript/components/TextInput/types.d.ts +3 -0
  134. package/dist/typescript/components/Tooltip/components/Content/types.d.ts +1 -0
  135. package/dist/typescript/components/Tooltip/types.d.ts +2 -1
  136. package/dist/typescript/components/index.d.ts +6 -0
  137. package/package.json +5 -5
  138. package/src/components/Avatar/index.tsx +4 -4
  139. package/src/components/Avatar/types.ts +1 -0
  140. package/src/components/ChatBubble/assets/class-variants.ts +6 -6
  141. package/src/components/ChatBubble/components/ChatBubbleSeal/index.tsx +5 -4
  142. package/src/components/ChatBubble/components/ChatBubbleSeal/types.ts +1 -1
  143. package/src/components/ChatBubble/components/ChatBubbleText/index.tsx +4 -3
  144. package/src/components/ChatBubble/components/ChatBubbleText/types.ts +1 -1
  145. package/src/components/ChatBubble/{context.tsx → contexts/ChatBubbleContext/index.tsx} +1 -10
  146. package/src/components/ChatBubble/contexts/ChatBubbleContext/types.ts +11 -0
  147. package/src/components/ChatBubble/contexts/index.ts +1 -0
  148. package/src/components/ChatBubble/index.tsx +12 -10
  149. package/src/components/ChatBubble/types.ts +2 -3
  150. package/src/components/IconButton/assets/class-variants.ts +126 -0
  151. package/src/components/IconButton/assets/design-system-showcase.ts +246 -0
  152. package/src/components/IconButton/enums.ts +26 -0
  153. package/src/components/IconButton/index.tsx +124 -0
  154. package/src/components/IconButton/types.ts +22 -0
  155. package/src/components/ListButton/assets/class-variants.ts +2 -11
  156. package/src/components/ListButton/assets/design-system-showcase.ts +502 -0
  157. package/src/components/ListButton/enums/index.ts +0 -1
  158. package/src/components/ListButton/index.tsx +44 -41
  159. package/src/components/ListButton/types.ts +7 -5
  160. package/src/components/OtpInput/assets/class-variant.ts +1 -1
  161. package/src/components/OtpInput/components/InformationStatus/index.tsx +15 -14
  162. package/src/components/OtpInput/components/InformationStatus/types.ts +2 -2
  163. package/src/components/OtpInput/enums/index.ts +1 -2
  164. package/src/components/OtpInput/index.tsx +77 -136
  165. package/src/components/OtpInput/types.ts +4 -4
  166. package/src/components/PasswordInput/index.tsx +37 -0
  167. package/src/components/PasswordInput/types.ts +4 -0
  168. package/src/components/TextInput/index.tsx +17 -3
  169. package/src/components/TextInput/types.ts +3 -0
  170. package/src/components/Tooltip/components/Content/types.ts +1 -0
  171. package/src/components/Tooltip/index.tsx +57 -5
  172. package/src/components/Tooltip/types.ts +2 -1
  173. package/src/components/index.ts +8 -0
  174. package/src/iconography/Icons/index.tsx +2 -3
  175. package/dist/commonjs/components/ChatBubble/context.js.map +0 -1
  176. package/dist/commonjs/components/ListButton/enums/icon-color.js +0 -18
  177. package/dist/commonjs/components/ListButton/enums/icon-color.js.map +0 -1
  178. package/dist/module/components/ChatBubble/context.js.map +0 -1
  179. package/dist/module/components/ListButton/enums/icon-color.js +0 -14
  180. package/dist/module/components/ListButton/enums/icon-color.js.map +0 -1
  181. package/dist/typescript/components/ChatBubble/context.d.ts +0 -8
  182. package/dist/typescript/components/ListButton/enums/icon-color.d.ts +0 -10
  183. package/src/components/ListButton/enums/icon-color.ts +0 -10
@@ -0,0 +1,502 @@
1
+ import { ListButtonVariantEnum } from "../enums";
2
+ import { SizeEnum, CornersEnum } from "../../../enums";
3
+
4
+ interface ListButtonShowcaseProps {
5
+ variant: ListButtonVariantEnum;
6
+ size: SizeEnum.SMALL | SizeEnum.MEDIUM | SizeEnum.LARGE;
7
+ corners: CornersEnum.SMALL | CornersEnum.MEDIUM;
8
+ children: string;
9
+ iconColor: string;
10
+ disabled?: boolean;
11
+ iconLeft?: boolean;
12
+ iconRight?: boolean;
13
+ }
14
+
15
+ export const listButtonShowcaseVariants: Record<
16
+ string,
17
+ ListButtonShowcaseProps[]
18
+ > = {
19
+ grape: [
20
+ {
21
+ variant: ListButtonVariantEnum.GRAPE,
22
+ size: SizeEnum.SMALL,
23
+ corners: CornersEnum.SMALL,
24
+ children: "Label Text",
25
+ iconColor: "#FAFCFC",
26
+ },
27
+ {
28
+ variant: ListButtonVariantEnum.GRAPE,
29
+ size: SizeEnum.SMALL,
30
+ corners: CornersEnum.MEDIUM,
31
+ children: "Label Text",
32
+ iconColor: "#FAFCFC",
33
+ },
34
+ {
35
+ variant: ListButtonVariantEnum.GRAPE,
36
+ size: SizeEnum.MEDIUM,
37
+ corners: CornersEnum.SMALL,
38
+ children: "Label Text",
39
+ iconColor: "#FAFCFC",
40
+ },
41
+ {
42
+ variant: ListButtonVariantEnum.GRAPE,
43
+ size: SizeEnum.MEDIUM,
44
+ corners: CornersEnum.MEDIUM,
45
+ children: "Label Text",
46
+ iconColor: "#FAFCFC",
47
+ },
48
+ {
49
+ variant: ListButtonVariantEnum.GRAPE,
50
+ size: SizeEnum.LARGE,
51
+ corners: CornersEnum.SMALL,
52
+ children: "Label Text",
53
+ iconColor: "#FAFCFC",
54
+ },
55
+ {
56
+ variant: ListButtonVariantEnum.GRAPE,
57
+ size: SizeEnum.LARGE,
58
+ corners: CornersEnum.MEDIUM,
59
+ children: "Label Text",
60
+ iconColor: "#FAFCFC",
61
+ },
62
+ {
63
+ variant: ListButtonVariantEnum.GRAPE,
64
+ size: SizeEnum.MEDIUM,
65
+ corners: CornersEnum.MEDIUM,
66
+ children: "Label Text",
67
+ iconColor: "#FAFCFC",
68
+ disabled: true,
69
+ },
70
+ {
71
+ variant: ListButtonVariantEnum.GRAPE,
72
+ size: SizeEnum.SMALL,
73
+ corners: CornersEnum.MEDIUM,
74
+ children: "Label Text",
75
+ iconColor: "#FAFCFC",
76
+ iconLeft: true,
77
+ },
78
+ {
79
+ variant: ListButtonVariantEnum.GRAPE,
80
+ size: SizeEnum.SMALL,
81
+ corners: CornersEnum.MEDIUM,
82
+ children: "Label Text",
83
+ iconColor: "#FAFCFC",
84
+ iconLeft: true,
85
+ iconRight: true,
86
+ },
87
+ ],
88
+ java: [
89
+ {
90
+ variant: ListButtonVariantEnum.JAVA,
91
+ size: SizeEnum.SMALL,
92
+ corners: CornersEnum.SMALL,
93
+ children: "Label Text",
94
+ iconColor: "#FAFCFC",
95
+ },
96
+ {
97
+ variant: ListButtonVariantEnum.JAVA,
98
+ size: SizeEnum.SMALL,
99
+ corners: CornersEnum.MEDIUM,
100
+ children: "Label Text",
101
+ iconColor: "#FAFCFC",
102
+ },
103
+ {
104
+ variant: ListButtonVariantEnum.JAVA,
105
+ size: SizeEnum.MEDIUM,
106
+ corners: CornersEnum.SMALL,
107
+ children: "Label Text",
108
+ iconColor: "#FAFCFC",
109
+ },
110
+ {
111
+ variant: ListButtonVariantEnum.JAVA,
112
+ size: SizeEnum.MEDIUM,
113
+ corners: CornersEnum.MEDIUM,
114
+ children: "Label Text",
115
+ iconColor: "#FAFCFC",
116
+ },
117
+ {
118
+ variant: ListButtonVariantEnum.JAVA,
119
+ size: SizeEnum.LARGE,
120
+ corners: CornersEnum.SMALL,
121
+ children: "Label Text",
122
+ iconColor: "#FAFCFC",
123
+ },
124
+ {
125
+ variant: ListButtonVariantEnum.JAVA,
126
+ size: SizeEnum.LARGE,
127
+ corners: CornersEnum.MEDIUM,
128
+ children: "Label Text",
129
+ iconColor: "#FAFCFC",
130
+ },
131
+ {
132
+ variant: ListButtonVariantEnum.JAVA,
133
+ size: SizeEnum.MEDIUM,
134
+ corners: CornersEnum.MEDIUM,
135
+ children: "Label Text",
136
+ iconColor: "#FAFCFC",
137
+ disabled: true,
138
+ },
139
+ {
140
+ variant: ListButtonVariantEnum.JAVA,
141
+ size: SizeEnum.SMALL,
142
+ corners: CornersEnum.MEDIUM,
143
+ children: "Label Text",
144
+ iconColor: "#FAFCFC",
145
+ iconLeft: true,
146
+ },
147
+ {
148
+ variant: ListButtonVariantEnum.JAVA,
149
+ size: SizeEnum.SMALL,
150
+ corners: CornersEnum.MEDIUM,
151
+ children: "Label Text",
152
+ iconColor: "#FAFCFC",
153
+ iconLeft: true,
154
+ iconRight: true,
155
+ },
156
+ ],
157
+ pear: [
158
+ {
159
+ variant: ListButtonVariantEnum.PEAR,
160
+ size: SizeEnum.SMALL,
161
+ corners: CornersEnum.SMALL,
162
+ children: "Label Text",
163
+ iconColor: "#FAFCFC",
164
+ },
165
+ {
166
+ variant: ListButtonVariantEnum.PEAR,
167
+ size: SizeEnum.SMALL,
168
+ corners: CornersEnum.MEDIUM,
169
+ children: "Label Text",
170
+ iconColor: "#FAFCFC",
171
+ },
172
+ {
173
+ variant: ListButtonVariantEnum.PEAR,
174
+ size: SizeEnum.MEDIUM,
175
+ corners: CornersEnum.SMALL,
176
+ children: "Label Text",
177
+ iconColor: "#FAFCFC",
178
+ },
179
+ {
180
+ variant: ListButtonVariantEnum.PEAR,
181
+ size: SizeEnum.MEDIUM,
182
+ corners: CornersEnum.MEDIUM,
183
+ children: "Label Text",
184
+ iconColor: "#FAFCFC",
185
+ },
186
+ {
187
+ variant: ListButtonVariantEnum.PEAR,
188
+ size: SizeEnum.LARGE,
189
+ corners: CornersEnum.SMALL,
190
+ children: "Label Text",
191
+ iconColor: "#FAFCFC",
192
+ },
193
+ {
194
+ variant: ListButtonVariantEnum.PEAR,
195
+ size: SizeEnum.LARGE,
196
+ corners: CornersEnum.MEDIUM,
197
+ children: "Label Text",
198
+ iconColor: "#FAFCFC",
199
+ },
200
+ {
201
+ variant: ListButtonVariantEnum.PEAR,
202
+ size: SizeEnum.MEDIUM,
203
+ corners: CornersEnum.MEDIUM,
204
+ children: "Label Text",
205
+ iconColor: "#FAFCFC",
206
+ disabled: true,
207
+ },
208
+ {
209
+ variant: ListButtonVariantEnum.PEAR,
210
+ size: SizeEnum.SMALL,
211
+ corners: CornersEnum.MEDIUM,
212
+ children: "Label Text",
213
+ iconColor: "#FAFCFC",
214
+ iconLeft: true,
215
+ },
216
+ {
217
+ variant: ListButtonVariantEnum.PEAR,
218
+ size: SizeEnum.SMALL,
219
+ corners: CornersEnum.MEDIUM,
220
+ children: "Label Text",
221
+ iconColor: "#FAFCFC",
222
+ iconLeft: true,
223
+ iconRight: true,
224
+ },
225
+ ],
226
+ tangerine: [
227
+ {
228
+ variant: ListButtonVariantEnum.TANGERINE,
229
+ size: SizeEnum.SMALL,
230
+ corners: CornersEnum.SMALL,
231
+ children: "Label Text",
232
+ iconColor: "#FAFCFC",
233
+ },
234
+ {
235
+ variant: ListButtonVariantEnum.TANGERINE,
236
+ size: SizeEnum.SMALL,
237
+ corners: CornersEnum.MEDIUM,
238
+ children: "Label Text",
239
+ iconColor: "#FAFCFC",
240
+ },
241
+ {
242
+ variant: ListButtonVariantEnum.TANGERINE,
243
+ size: SizeEnum.MEDIUM,
244
+ corners: CornersEnum.SMALL,
245
+ children: "Label Text",
246
+ iconColor: "#FAFCFC",
247
+ },
248
+ {
249
+ variant: ListButtonVariantEnum.TANGERINE,
250
+ size: SizeEnum.MEDIUM,
251
+ corners: CornersEnum.MEDIUM,
252
+ children: "Label Text",
253
+ iconColor: "#FAFCFC",
254
+ },
255
+ {
256
+ variant: ListButtonVariantEnum.TANGERINE,
257
+ size: SizeEnum.LARGE,
258
+ corners: CornersEnum.SMALL,
259
+ children: "Label Text",
260
+ iconColor: "#FAFCFC",
261
+ },
262
+ {
263
+ variant: ListButtonVariantEnum.TANGERINE,
264
+ size: SizeEnum.LARGE,
265
+ corners: CornersEnum.MEDIUM,
266
+ children: "Label Text",
267
+ iconColor: "#FAFCFC",
268
+ },
269
+ {
270
+ variant: ListButtonVariantEnum.TANGERINE,
271
+ size: SizeEnum.MEDIUM,
272
+ corners: CornersEnum.MEDIUM,
273
+ children: "Label Text",
274
+ iconColor: "#FAFCFC",
275
+ disabled: true,
276
+ },
277
+ {
278
+ variant: ListButtonVariantEnum.TANGERINE,
279
+ size: SizeEnum.SMALL,
280
+ corners: CornersEnum.MEDIUM,
281
+ children: "Label Text",
282
+ iconColor: "#FAFCFC",
283
+ iconLeft: true,
284
+ },
285
+ {
286
+ variant: ListButtonVariantEnum.TANGERINE,
287
+ size: SizeEnum.SMALL,
288
+ corners: CornersEnum.MEDIUM,
289
+ children: "Label Text",
290
+ iconColor: "#FAFCFC",
291
+ iconLeft: true,
292
+ iconRight: true,
293
+ },
294
+ ],
295
+ blackberry: [
296
+ {
297
+ variant: ListButtonVariantEnum.BLACKBERRY,
298
+ size: SizeEnum.SMALL,
299
+ corners: CornersEnum.SMALL,
300
+ children: "Label Text",
301
+ iconColor: "#FAFCFC",
302
+ },
303
+ {
304
+ variant: ListButtonVariantEnum.BLACKBERRY,
305
+ size: SizeEnum.SMALL,
306
+ corners: CornersEnum.MEDIUM,
307
+ children: "Label Text",
308
+ iconColor: "#FAFCFC",
309
+ },
310
+ {
311
+ variant: ListButtonVariantEnum.BLACKBERRY,
312
+ size: SizeEnum.MEDIUM,
313
+ corners: CornersEnum.SMALL,
314
+ children: "Label Text",
315
+ iconColor: "#FAFCFC",
316
+ },
317
+ {
318
+ variant: ListButtonVariantEnum.BLACKBERRY,
319
+ size: SizeEnum.MEDIUM,
320
+ corners: CornersEnum.MEDIUM,
321
+ children: "Label Text",
322
+ iconColor: "#FAFCFC",
323
+ },
324
+ {
325
+ variant: ListButtonVariantEnum.BLACKBERRY,
326
+ size: SizeEnum.LARGE,
327
+ corners: CornersEnum.SMALL,
328
+ children: "Label Text",
329
+ iconColor: "#FAFCFC",
330
+ },
331
+ {
332
+ variant: ListButtonVariantEnum.BLACKBERRY,
333
+ size: SizeEnum.LARGE,
334
+ corners: CornersEnum.MEDIUM,
335
+ children: "Label Text",
336
+ iconColor: "#FAFCFC",
337
+ },
338
+ {
339
+ variant: ListButtonVariantEnum.BLACKBERRY,
340
+ size: SizeEnum.MEDIUM,
341
+ corners: CornersEnum.MEDIUM,
342
+ children: "Label Text",
343
+ iconColor: "#FAFCFC",
344
+ disabled: true,
345
+ },
346
+ {
347
+ variant: ListButtonVariantEnum.BLACKBERRY,
348
+ size: SizeEnum.SMALL,
349
+ corners: CornersEnum.MEDIUM,
350
+ children: "Label Text",
351
+ iconColor: "#FAFCFC",
352
+ iconLeft: true,
353
+ },
354
+ {
355
+ variant: ListButtonVariantEnum.BLACKBERRY,
356
+ size: SizeEnum.SMALL,
357
+ corners: CornersEnum.MEDIUM,
358
+ children: "Label Text",
359
+ iconColor: "#FAFCFC",
360
+ iconLeft: true,
361
+ iconRight: true,
362
+ },
363
+ ],
364
+ chia: [
365
+ {
366
+ variant: ListButtonVariantEnum.CHIA,
367
+ size: SizeEnum.SMALL,
368
+ corners: CornersEnum.SMALL,
369
+ children: "Label Text",
370
+ iconColor: "#FAFCFC",
371
+ },
372
+ {
373
+ variant: ListButtonVariantEnum.CHIA,
374
+ size: SizeEnum.SMALL,
375
+ corners: CornersEnum.MEDIUM,
376
+ children: "Label Text",
377
+ iconColor: "#FAFCFC",
378
+ },
379
+ {
380
+ variant: ListButtonVariantEnum.CHIA,
381
+ size: SizeEnum.MEDIUM,
382
+ corners: CornersEnum.SMALL,
383
+ children: "Label Text",
384
+ iconColor: "#FAFCFC",
385
+ },
386
+ {
387
+ variant: ListButtonVariantEnum.CHIA,
388
+ size: SizeEnum.MEDIUM,
389
+ corners: CornersEnum.MEDIUM,
390
+ children: "Label Text",
391
+ iconColor: "#FAFCFC",
392
+ },
393
+ {
394
+ variant: ListButtonVariantEnum.CHIA,
395
+ size: SizeEnum.LARGE,
396
+ corners: CornersEnum.SMALL,
397
+ children: "Label Text",
398
+ iconColor: "#FAFCFC",
399
+ },
400
+ {
401
+ variant: ListButtonVariantEnum.CHIA,
402
+ size: SizeEnum.LARGE,
403
+ corners: CornersEnum.MEDIUM,
404
+ children: "Label Text",
405
+ iconColor: "#FAFCFC",
406
+ },
407
+ {
408
+ variant: ListButtonVariantEnum.CHIA,
409
+ size: SizeEnum.MEDIUM,
410
+ corners: CornersEnum.MEDIUM,
411
+ children: "Label Text",
412
+ iconColor: "#FAFCFC",
413
+ disabled: true,
414
+ },
415
+ {
416
+ variant: ListButtonVariantEnum.CHIA,
417
+ size: SizeEnum.SMALL,
418
+ corners: CornersEnum.MEDIUM,
419
+ children: "Label Text",
420
+ iconColor: "#FAFCFC",
421
+ iconLeft: true,
422
+ },
423
+ {
424
+ variant: ListButtonVariantEnum.CHIA,
425
+ size: SizeEnum.SMALL,
426
+ corners: CornersEnum.MEDIUM,
427
+ children: "Label Text",
428
+ iconColor: "#FAFCFC",
429
+ iconLeft: true,
430
+ iconRight: true,
431
+ },
432
+ ],
433
+ outline: [
434
+ {
435
+ variant: ListButtonVariantEnum.OUTLINE,
436
+ size: SizeEnum.SMALL,
437
+ corners: CornersEnum.SMALL,
438
+ children: "Label Text",
439
+ iconColor: "#393E3E",
440
+ },
441
+ {
442
+ variant: ListButtonVariantEnum.OUTLINE,
443
+ size: SizeEnum.SMALL,
444
+ corners: CornersEnum.MEDIUM,
445
+ children: "Label Text",
446
+ iconColor: "#393E3E",
447
+ },
448
+ {
449
+ variant: ListButtonVariantEnum.OUTLINE,
450
+ size: SizeEnum.MEDIUM,
451
+ corners: CornersEnum.SMALL,
452
+ children: "Label Text",
453
+ iconColor: "#393E3E",
454
+ },
455
+ {
456
+ variant: ListButtonVariantEnum.OUTLINE,
457
+ size: SizeEnum.MEDIUM,
458
+ corners: CornersEnum.MEDIUM,
459
+ children: "Label Text",
460
+ iconColor: "#393E3E",
461
+ },
462
+ {
463
+ variant: ListButtonVariantEnum.OUTLINE,
464
+ size: SizeEnum.LARGE,
465
+ corners: CornersEnum.SMALL,
466
+ children: "Label Text",
467
+ iconColor: "#393E3E",
468
+ },
469
+ {
470
+ variant: ListButtonVariantEnum.OUTLINE,
471
+ size: SizeEnum.LARGE,
472
+ corners: CornersEnum.MEDIUM,
473
+ children: "Label Text",
474
+ iconColor: "#393E3E",
475
+ },
476
+ {
477
+ variant: ListButtonVariantEnum.OUTLINE,
478
+ size: SizeEnum.MEDIUM,
479
+ corners: CornersEnum.MEDIUM,
480
+ children: "Label Text",
481
+ iconColor: "#393E3E",
482
+ disabled: true,
483
+ },
484
+ {
485
+ variant: ListButtonVariantEnum.OUTLINE,
486
+ size: SizeEnum.SMALL,
487
+ corners: CornersEnum.MEDIUM,
488
+ children: "Label Text",
489
+ iconColor: "#393E3E",
490
+ iconLeft: true,
491
+ },
492
+ {
493
+ variant: ListButtonVariantEnum.OUTLINE,
494
+ size: SizeEnum.SMALL,
495
+ corners: CornersEnum.MEDIUM,
496
+ children: "Label Text",
497
+ iconColor: "#393E3E",
498
+ iconLeft: true,
499
+ iconRight: true,
500
+ },
501
+ ],
502
+ };
@@ -1,2 +1 @@
1
1
  export * from "./variant";
2
- export * from "./icon-color";
@@ -1,29 +1,27 @@
1
1
  import { Animated, GestureResponderEvent, Pressable, View } from "react-native";
2
2
  import { Typography } from "../Typography";
3
- import { ListButtonIconColorEnum, ListButtonVariantEnum } from "./enums";
3
+ import { ListButtonVariantEnum } from "./enums";
4
4
  import { SizeEnum, CornersEnum } from "../../enums";
5
5
  import type { ListButtonProps } from "./types";
6
- import { ChatbubbleEllipses, ChevronRight } from "@kivid/icons/native";
7
- import {
8
- buttonVariants,
9
- iconButtonVariants,
10
- textVariants,
11
- } from "./assets/class-variants";
6
+ import { ChevronRight } from "@kivid/icons/native";
7
+ import { buttonVariants, textVariants } from "./assets/class-variants";
12
8
  import { merge } from "@kivid/tailwind-preset";
13
9
  import { useRef } from "react";
14
10
 
15
11
  export function ListButton(props: ListButtonProps) {
16
12
  const {
17
- icon,
18
- iconColor = ListButtonIconColorEnum.GHOST,
13
+ iconLeft,
14
+ iconRight,
19
15
  children,
20
- showChevronIcon = true,
21
16
  variant = ListButtonVariantEnum.GRAPE,
22
17
  size = SizeEnum.SMALL,
23
18
  corners = CornersEnum.SMALL,
24
19
  disabled = false,
25
20
  className,
21
+ iconLeftContainerClassName,
22
+ iconRightContainerClassName,
26
23
  accessibilityLabel,
24
+ numberOfLines = 1,
27
25
  onPressIn,
28
26
  onPressOut,
29
27
  ...rest
@@ -43,17 +41,6 @@ export function ListButton(props: ListButtonProps) {
43
41
 
44
42
  const animatedValue = useRef(new Animated.Value(1)).current;
45
43
 
46
- const mappedIconColor = {
47
- [ListButtonIconColorEnum.GHOST]: "#FAFCFC",
48
- [ListButtonIconColorEnum.GRAPE]: "#7A50D9",
49
- [ListButtonIconColorEnum.JAVA]: "#43C1E0",
50
- [ListButtonIconColorEnum.PITAYA]: "#E64595",
51
- [ListButtonIconColorEnum.PEAR]: "#3DCC78",
52
- [ListButtonIconColorEnum.TANGERINE]: "#FF8B59",
53
- [ListButtonIconColorEnum.BLACKBERRY]: "#E65245",
54
- [ListButtonIconColorEnum.CHIA]: "#393E3E",
55
- }[iconColor];
56
-
57
44
  const handlePressIn = (event: GestureResponderEvent) => {
58
45
  Animated.timing(animatedValue, {
59
46
  toValue: 0.7,
@@ -74,50 +61,66 @@ export function ListButton(props: ListButtonProps) {
74
61
  onPressOut?.(event);
75
62
  };
76
63
 
64
+ function renderLeftIcon() {
65
+ if (iconLeft) {
66
+ return <View className="mr-400">{iconLeft}</View>;
67
+ }
68
+
69
+ return null;
70
+ }
71
+
72
+ function renderRightIcon() {
73
+ if (iconRight) {
74
+ return <View className="ml-400">{iconRight}</View>;
75
+ }
76
+
77
+ return (
78
+ <View className="ml-400">
79
+ <ChevronRight color={chevronIconColor} />
80
+ </View>
81
+ );
82
+ }
83
+
77
84
  return (
78
85
  <Animated.View
79
86
  style={{
80
87
  opacity: animatedValue,
81
88
  }}
89
+ className={merge(
90
+ buttonVariants({
91
+ variant,
92
+ size,
93
+ corners,
94
+ }),
95
+ className
96
+ )}
82
97
  >
83
98
  <Pressable
84
- className={merge(
85
- buttonVariants({
86
- variant,
87
- size,
88
- corners,
89
- }),
90
- className
91
- )}
92
99
  disabled={disabled}
93
100
  accessibilityRole="button"
94
- accessibilityLabel={accessibilityLabel}
101
+ accessibilityLabel={accessibilityLabel ?? (typeof children === "string" ? children : undefined)}
95
102
  accessibilityState={{
96
103
  disabled: disabled,
97
104
  }}
98
105
  onPressIn={handlePressIn}
99
106
  onPressOut={handlePressOut}
107
+ className="flex-row"
100
108
  {...rest}
101
109
  >
102
- <View className={iconButtonVariants({ showChevronIcon })}>
103
- <View className="mr-400 flex items-center">
104
- {icon ?? <ChatbubbleEllipses size={24} color={mappedIconColor} />}
105
- </View>
106
-
110
+ <View className="flex flex-row items-center flex-1">
111
+ {renderLeftIcon()}
107
112
  <Typography
113
+ ellipsizeMode="tail"
108
114
  variant={typographyVariant}
109
115
  weight="700"
110
- className={merge(textStyle, "truncate mr-700")}
116
+ className={merge(textStyle, "truncate flex-1 ")}
117
+ numberOfLines={numberOfLines}
111
118
  >
112
119
  {children}
113
120
  </Typography>
114
121
  </View>
115
122
 
116
- {showChevronIcon && (
117
- <View className="flex items-center">
118
- <ChevronRight color={chevronIconColor} />
119
- </View>
120
- )}
123
+ {renderRightIcon()}
121
124
  </Pressable>
122
125
  </Animated.View>
123
126
  );
@@ -1,20 +1,22 @@
1
1
  import type { VariantProps } from "class-variance-authority";
2
2
  import type { buttonVariants } from "./assets/class-variants";
3
- import type { ListButtonIconColorEnum, ListButtonVariantEnum } from "./enums";
3
+ import type { ListButtonVariantEnum } from "./enums";
4
4
  import { PressableProps } from "react-native";
5
5
  import { SizeEnum, CornersEnum } from "../../enums";
6
6
 
7
7
  export interface ListButtonProps
8
8
  extends PressableProps,
9
9
  VariantProps<typeof buttonVariants> {
10
- icon?: React.ReactNode;
11
- iconColor?: ListButtonIconColorEnum;
10
+ iconLeft?: React.ReactNode;
11
+ iconRight?: React.ReactNode;
12
+ iconLeftContainerClassName?: React.ReactNode;
13
+ iconRightContainerClassName?: React.ReactNode;
12
14
  children: React.ReactNode;
13
- showChevronIcon?: boolean;
14
15
  variant?: ListButtonVariantEnum;
15
16
  size?: SizeEnum.SMALL | SizeEnum.MEDIUM | SizeEnum.LARGE;
16
17
  corners?: CornersEnum.SMALL | CornersEnum.MEDIUM;
17
18
  className?: string;
18
19
  disabled?: boolean;
19
- accessibilityLabel: string;
20
+ accessibilityLabel?: string;
21
+ numberOfLines?: number;
20
22
  }
@@ -1,7 +1,7 @@
1
1
  import { cva } from "class-variance-authority";
2
2
 
3
3
  export const inputVariants = cva(
4
- "h-1000 flex-1 text-center text-3 font-bold leading-600 border-100 bg-chia-100 placeholder-chia-400",
4
+ "h-1000 flex-1 text-center text-3 font-bold leading-1300 border-100 bg-chia-100 placeholder-chia-400",
5
5
  {
6
6
  variants: {
7
7
  rounded: {