@hero-design/rn 8.42.4 → 8.43.1

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 (202) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/CHANGELOG.md +20 -0
  3. package/assets/fonts/hero-icons-mobile.ttf +0 -0
  4. package/es/index.js +2174 -1988
  5. package/jest-setup.ts +2 -0
  6. package/lib/assets/fonts/hero-icons-mobile.ttf +0 -0
  7. package/lib/index.js +2173 -1986
  8. package/package.json +20 -20
  9. package/src/components/Accordion/__tests__/__snapshots__/AccordionItem.spec.tsx.snap +68 -0
  10. package/src/components/Accordion/__tests__/__snapshots__/index.spec.tsx.snap +102 -0
  11. package/src/components/Alert/__tests__/__snapshots__/index.spec.tsx.snap +85 -0
  12. package/src/components/Attachment/__tests__/__snapshots__/index.spec.tsx.snap +34 -0
  13. package/src/components/Avatar/AvatarStack/__tests__/__snapshots__/StyledAvatarStack.spec.tsx.snap +12 -0
  14. package/src/components/Avatar/AvatarStack/__tests__/__snapshots__/index.spec.tsx.snap +108 -0
  15. package/src/components/Avatar/__tests__/__snapshots__/StyledAvatar.spec.tsx.snap +17 -0
  16. package/src/components/Avatar/__tests__/__snapshots__/index.spec.tsx.snap +36 -0
  17. package/src/components/BottomNavigation/__tests__/__snapshots__/index.spec.tsx.snap +36 -0
  18. package/src/components/BottomSheet/__tests__/__snapshots__/index.spec.tsx.snap +247 -211
  19. package/src/components/BottomSheet/index.tsx +1 -1
  20. package/src/components/Button/LoadingIndicator/StyledLoadingIndicator.tsx +6 -10
  21. package/src/components/Button/LoadingIndicator/__tests__/__snapshots__/StyledLoadingIndicator.spec.tsx.snap +0 -20
  22. package/src/components/Button/LoadingIndicator/__tests__/__snapshots__/index.spec.tsx.snap +0 -70
  23. package/src/components/Button/StyledButton.tsx +4 -0
  24. package/src/components/Button/UtilityButton/__tests__/__snapshots__/index.spec.tsx.snap +34 -0
  25. package/src/components/Button/__tests__/__snapshots__/Button.spec.tsx.snap +144 -42
  26. package/src/components/Button/__tests__/__snapshots__/IconButton.spec.tsx.snap +17 -0
  27. package/src/components/Button/__tests__/__snapshots__/StyledButton.spec.tsx.snap +90 -0
  28. package/src/components/Calendar/__tests__/__snapshots__/CalendarRowItem.spec.tsx.snap +85 -0
  29. package/src/components/Carousel/CardCarousel.tsx +10 -7
  30. package/src/components/Carousel/__tests__/__snapshots__/CardCarousel.spec.tsx.snap +4 -0
  31. package/src/components/Carousel/__tests__/__snapshots__/index.spec.tsx.snap +39 -0
  32. package/src/components/Carousel/__tests__/index.spec.tsx +8 -10
  33. package/src/components/Checkbox/__tests__/__snapshots__/StyledCheckbox.spec.tsx.snap +68 -0
  34. package/src/components/Checkbox/__tests__/__snapshots__/index.spec.tsx.snap +72 -0
  35. package/src/components/Chip/StyledChip.tsx +121 -0
  36. package/src/components/Chip/__tests__/__snapshots__/index.spec.tsx.snap +1147 -0
  37. package/src/components/Chip/__tests__/index.spec.tsx +136 -0
  38. package/src/components/Chip/index.tsx +82 -0
  39. package/src/components/Collapse/index.tsx +1 -1
  40. package/src/components/ContentNavigator/__tests__/__snapshots__/index.spec.tsx.snap +72 -0
  41. package/src/components/DatePicker/__tests__/__snapshots__/DatePicker.spec.tsx.snap +48 -0
  42. package/src/components/DatePicker/__tests__/__snapshots__/DatePickerAndroid.spec.tsx.snap +12 -0
  43. package/src/components/DatePicker/__tests__/__snapshots__/DatePickerCalendar.spec.tsx.snap +12 -0
  44. package/src/components/DatePicker/__tests__/__snapshots__/DatePickerIOS.spec.tsx.snap +470 -399
  45. package/src/components/Drawer/__tests__/__snapshots__/index.spec.tsx.snap +51 -0
  46. package/src/components/Error/__tests__/index.spec.tsx +9 -6
  47. package/src/components/FAB/ActionGroup/__tests__/__snapshots__/index.spec.tsx.snap +81 -0
  48. package/src/components/FAB/__tests__/__snapshots__/StyledFAB.spec.tsx.snap +16 -0
  49. package/src/components/FAB/__tests__/__snapshots__/index.spec.tsx.snap +24 -0
  50. package/src/components/Icon/HeroIcon/glyphMap.json +1 -1
  51. package/src/components/Icon/IconList.ts +1 -0
  52. package/src/components/List/__tests__/__snapshots__/BasicListItem.spec.tsx.snap +16 -0
  53. package/src/components/List/__tests__/__snapshots__/ListItem.spec.tsx.snap +60 -0
  54. package/src/components/List/__tests__/__snapshots__/StyledBasicListItem.spec.tsx.snap +32 -0
  55. package/src/components/List/__tests__/__snapshots__/StyledListItem.spec.tsx.snap +32 -0
  56. package/src/components/Radio/__tests__/__snapshots__/Radio.spec.tsx.snap +16 -0
  57. package/src/components/Radio/__tests__/__snapshots__/RadioGroup.spec.tsx.snap +24 -0
  58. package/src/components/Rate/__tests__/__snapshots__/index.spec.tsx.snap +180 -0
  59. package/src/components/RichTextEditor/__tests__/RichTextEditor.spec.tsx +8 -10
  60. package/src/components/RichTextEditor/__tests__/__snapshots__/EditorToolbar.spec.tsx.snap +119 -0
  61. package/src/components/RichTextEditor/__tests__/__snapshots__/MentionList.spec.tsx.snap +1 -0
  62. package/src/components/RichTextEditor/__tests__/__snapshots__/RichTextEditor.spec.tsx.snap +18 -0
  63. package/src/components/Select/MultiSelect/__tests__/__snapshots__/Option.spec.tsx.snap +8 -0
  64. package/src/components/Select/MultiSelect/__tests__/__snapshots__/OptionList.spec.tsx.snap +124 -0
  65. package/src/components/Select/MultiSelect/__tests__/__snapshots__/index.spec.tsx.snap +804 -455
  66. package/src/components/Select/MultiSelect/__tests__/index.spec.tsx +7 -10
  67. package/src/components/Select/SingleSelect/__tests__/__snapshots__/Option.spec.tsx.snap +8 -0
  68. package/src/components/Select/SingleSelect/__tests__/__snapshots__/OptionList.spec.tsx.snap +124 -0
  69. package/src/components/Select/SingleSelect/__tests__/__snapshots__/index.spec.tsx.snap +790 -532
  70. package/src/components/Success/__tests__/index.spec.tsx +9 -6
  71. package/src/components/Swipeable/__tests__/__snapshots__/SwipeableAction.spec.tsx.snap +51 -0
  72. package/src/components/Swipeable/index.tsx +3 -3
  73. package/src/components/Switch/SelectorSwitch/__tests__/__snapshots__/index.spec.tsx.snap +9 -0
  74. package/src/components/Switch/__tests__/__snapshots__/index.spec.tsx.snap +8 -0
  75. package/src/components/Tabs/__tests__/SceneView.spec.tsx +19 -23
  76. package/src/components/Tabs/__tests__/__snapshots__/ScrollableTabs.spec.tsx.snap +171 -0
  77. package/src/components/Tabs/__tests__/__snapshots__/ScrollableTabsHeader.spec.tsx.snap +40 -0
  78. package/src/components/Tabs/__tests__/__snapshots__/index.spec.tsx.snap +159 -0
  79. package/src/components/TimePicker/__tests__/__snapshots__/TimePickerAndroid.spec.tsx.snap +24 -0
  80. package/src/components/TimePicker/__tests__/__snapshots__/TimePickerIOS.spec.tsx.snap +482 -399
  81. package/src/components/Toast/__tests__/__snapshots__/Toast.spec.tsx.snap +102 -0
  82. package/src/components/Toolbar/__tests__/__snapshots__/ToolbarGroup.spec.tsx.snap +72 -0
  83. package/src/components/Toolbar/__tests__/__snapshots__/ToolbarItem.spec.tsx.snap +96 -0
  84. package/src/index.ts +2 -0
  85. package/src/testHelpers/renderWithTheme.tsx +1 -7
  86. package/src/theme/__tests__/__snapshots__/index.spec.ts.snap +38 -1
  87. package/src/theme/components/button.ts +0 -1
  88. package/src/theme/components/chip.ts +47 -0
  89. package/src/theme/getTheme.ts +3 -0
  90. package/tsconfig.json +4 -1
  91. package/types/components/Accordion/AccordionItem.d.ts +2 -1
  92. package/types/components/Accordion/index.d.ts +1 -1
  93. package/types/components/Attachment/index.d.ts +2 -1
  94. package/types/components/Avatar/Avatar.d.ts +2 -1
  95. package/types/components/Avatar/AvatarStack/index.d.ts +2 -2
  96. package/types/components/Avatar/index.d.ts +3 -2
  97. package/types/components/Badge/StyledBadge.d.ts +0 -4
  98. package/types/components/BottomSheet/Footer.d.ts +2 -1
  99. package/types/components/BottomSheet/Header.d.ts +2 -1
  100. package/types/components/BottomSheet/ScrollView.d.ts +1 -0
  101. package/types/components/BottomSheet/StyledBottomSheet.d.ts +0 -4
  102. package/types/components/Box/index.d.ts +2 -1
  103. package/types/components/Button/IconButton.d.ts +2 -1
  104. package/types/components/Button/LoadingIndicator/StyledLoadingIndicator.d.ts +3 -3
  105. package/types/components/Button/LoadingIndicator/index.d.ts +2 -1
  106. package/types/components/Button/UtilityButton/index.d.ts +2 -1
  107. package/types/components/Calendar/CalendarRowItem.d.ts +2 -1
  108. package/types/components/Calendar/StyledCalendar.d.ts +1 -1
  109. package/types/components/Calendar/index.d.ts +2 -1
  110. package/types/components/Carousel/CardCarousel.d.ts +1 -1
  111. package/types/components/Carousel/CarouselItem.d.ts +2 -1
  112. package/types/components/Carousel/index.d.ts +2 -2
  113. package/types/components/Checkbox/index.d.ts +2 -1
  114. package/types/components/Chip/StyledChip.d.ts +31 -0
  115. package/types/components/Chip/index.d.ts +27 -0
  116. package/types/components/Collapse/StyledCollapse.d.ts +0 -2
  117. package/types/components/Collapse/index.d.ts +2 -1
  118. package/types/components/ContentNavigator/index.d.ts +2 -1
  119. package/types/components/DatePicker/DatePickerAndroid.d.ts +2 -1
  120. package/types/components/DatePicker/DatePickerCalendar.d.ts +2 -1
  121. package/types/components/DatePicker/DatePickerIOS.d.ts +2 -1
  122. package/types/components/DatePicker/index.d.ts +2 -1
  123. package/types/components/Divider/index.d.ts +2 -1
  124. package/types/components/Drawer/StyledDrawer.d.ts +0 -6
  125. package/types/components/Error/StyledError.d.ts +0 -4
  126. package/types/components/FAB/ActionGroup/ActionItem.d.ts +2 -1
  127. package/types/components/FAB/ActionGroup/StyledActionGroup.d.ts +0 -4
  128. package/types/components/FAB/AnimatedFABIcon.d.ts +2 -1
  129. package/types/components/HeroDesignProvider/index.d.ts +2 -1
  130. package/types/components/Icon/AnimatedIcon.d.ts +2 -1
  131. package/types/components/Icon/IconList.d.ts +1 -1
  132. package/types/components/Icon/index.d.ts +3 -2
  133. package/types/components/Icon/utils.d.ts +1 -1
  134. package/types/components/Image/index.d.ts +1 -0
  135. package/types/components/Modal/index.d.ts +2 -2
  136. package/types/components/PageControl/StyledPageControl.d.ts +0 -2
  137. package/types/components/PageControl/index.d.ts +2 -1
  138. package/types/components/PinInput/PinCell.d.ts +2 -1
  139. package/types/components/Portal/PortalHost.d.ts +1 -1
  140. package/types/components/Portal/PortalProvider.d.ts +1 -1
  141. package/types/components/Portal/index.d.ts +2 -2
  142. package/types/components/Progress/ProgressBar.d.ts +1 -0
  143. package/types/components/Progress/StyledProgressBar.d.ts +0 -2
  144. package/types/components/Progress/index.d.ts +1 -0
  145. package/types/components/Rate/StyledRate.d.ts +0 -2
  146. package/types/components/Rate/index.d.ts +2 -1
  147. package/types/components/RefreshControl/index.d.ts +2 -1
  148. package/types/components/RichTextEditor/EditorToolbar.d.ts +2 -1
  149. package/types/components/RichTextEditor/MentionList.d.ts +2 -1
  150. package/types/components/RichTextEditor/index.d.ts +2 -2
  151. package/types/components/Select/BaseOptionList.d.ts +1 -1
  152. package/types/components/Select/Footer.d.ts +2 -1
  153. package/types/components/Select/MultiSelect/Option.d.ts +2 -1
  154. package/types/components/Select/MultiSelect/OptionList.d.ts +2 -1
  155. package/types/components/Select/MultiSelect/index.d.ts +1 -1
  156. package/types/components/Select/SingleSelect/Option.d.ts +2 -1
  157. package/types/components/Select/SingleSelect/OptionList.d.ts +1 -1
  158. package/types/components/Select/SingleSelect/StyledSingleSelect.d.ts +2 -1
  159. package/types/components/Select/SingleSelect/index.d.ts +1 -1
  160. package/types/components/Select/helpers.d.ts +1 -2
  161. package/types/components/Select/index.d.ts +2 -1
  162. package/types/components/Skeleton/index.d.ts +2 -1
  163. package/types/components/Slider/index.d.ts +2 -1
  164. package/types/components/Spinner/AnimatedSpinner.d.ts +2 -1
  165. package/types/components/Success/StyledSuccess.d.ts +0 -2
  166. package/types/components/Swipeable/SwipeableAction.d.ts +2 -2
  167. package/types/components/Swipeable/index.d.ts +3 -3
  168. package/types/components/Switch/SelectorSwitch/Option.d.ts +2 -1
  169. package/types/components/Switch/SelectorSwitch/StyledSelectorSwitch.d.ts +0 -6
  170. package/types/components/Switch/StyledSwitch.d.ts +0 -2
  171. package/types/components/Tabs/ActiveTabIndicator.d.ts +2 -1
  172. package/types/components/Tabs/SceneView.d.ts +1 -1
  173. package/types/components/Tabs/ScrollableTabs.d.ts +2 -1
  174. package/types/components/Tabs/ScrollableTabsHeader.d.ts +2 -1
  175. package/types/components/Tabs/StyledScrollableTabs.d.ts +0 -4
  176. package/types/components/Tabs/StyledTabs.d.ts +0 -4
  177. package/types/components/Tabs/TabWithBadge.d.ts +2 -2
  178. package/types/components/Tabs/index.d.ts +2 -1
  179. package/types/components/TextInput/StyledTextInput.d.ts +1 -1
  180. package/types/components/TextInput/index.d.ts +1 -1
  181. package/types/components/TimePicker/TimePickerAndroid.d.ts +2 -1
  182. package/types/components/TimePicker/TimePickerIOS.d.ts +2 -1
  183. package/types/components/TimePicker/index.d.ts +2 -1
  184. package/types/components/Toast/StyledToast.d.ts +0 -2
  185. package/types/components/Toast/Toast.d.ts +1 -0
  186. package/types/components/Toast/ToastProvider.d.ts +2 -1
  187. package/types/components/Toast/index.d.ts +1 -1
  188. package/types/components/Toolbar/ToolbarGroup.d.ts +2 -1
  189. package/types/components/Toolbar/ToolbarItem.d.ts +2 -1
  190. package/types/components/Toolbar/index.d.ts +3 -2
  191. package/types/components/Typography/Body/index.d.ts +2 -1
  192. package/types/components/Typography/Caption/index.d.ts +2 -1
  193. package/types/components/Typography/Label/index.d.ts +2 -1
  194. package/types/components/Typography/Text/index.d.ts +2 -1
  195. package/types/components/Typography/Title/index.d.ts +2 -1
  196. package/types/index.d.ts +2 -1
  197. package/types/testHelpers/renderWithTheme.d.ts +1 -0
  198. package/types/theme/ThemeSwitcher.d.ts +2 -2
  199. package/types/theme/components/button.d.ts +0 -1
  200. package/types/theme/components/chip.d.ts +40 -0
  201. package/types/theme/getTheme.d.ts +2 -0
  202. package/.turbo/turbo-publish:npm.log +0 -0
@@ -70,6 +70,23 @@ exports[`StyledCheckbox renders correctly when disabled is true and readonly is
70
70
 
71
71
  exports[`StyledWrapper renders correctly when disabled is false, readonly is false 1`] = `
72
72
  <View
73
+ accessibilityState={
74
+ {
75
+ "busy": undefined,
76
+ "checked": undefined,
77
+ "disabled": undefined,
78
+ "expanded": undefined,
79
+ "selected": undefined,
80
+ }
81
+ }
82
+ accessibilityValue={
83
+ {
84
+ "max": undefined,
85
+ "min": undefined,
86
+ "now": undefined,
87
+ "text": undefined,
88
+ }
89
+ }
73
90
  accessible={true}
74
91
  collapsable={false}
75
92
  focusable={false}
@@ -95,6 +112,23 @@ exports[`StyledWrapper renders correctly when disabled is false, readonly is fal
95
112
 
96
113
  exports[`StyledWrapper renders correctly when disabled is false, readonly is true 1`] = `
97
114
  <View
115
+ accessibilityState={
116
+ {
117
+ "busy": undefined,
118
+ "checked": undefined,
119
+ "disabled": undefined,
120
+ "expanded": undefined,
121
+ "selected": undefined,
122
+ }
123
+ }
124
+ accessibilityValue={
125
+ {
126
+ "max": undefined,
127
+ "min": undefined,
128
+ "now": undefined,
129
+ "text": undefined,
130
+ }
131
+ }
98
132
  accessible={true}
99
133
  collapsable={false}
100
134
  focusable={false}
@@ -120,6 +154,23 @@ exports[`StyledWrapper renders correctly when disabled is false, readonly is tru
120
154
 
121
155
  exports[`StyledWrapper renders correctly when disabled is true, readonly is false 1`] = `
122
156
  <View
157
+ accessibilityState={
158
+ {
159
+ "busy": undefined,
160
+ "checked": undefined,
161
+ "disabled": undefined,
162
+ "expanded": undefined,
163
+ "selected": undefined,
164
+ }
165
+ }
166
+ accessibilityValue={
167
+ {
168
+ "max": undefined,
169
+ "min": undefined,
170
+ "now": undefined,
171
+ "text": undefined,
172
+ }
173
+ }
123
174
  accessible={true}
124
175
  collapsable={false}
125
176
  focusable={false}
@@ -145,6 +196,23 @@ exports[`StyledWrapper renders correctly when disabled is true, readonly is fals
145
196
 
146
197
  exports[`StyledWrapper renders correctly when disabled is true, readonly is true 1`] = `
147
198
  <View
199
+ accessibilityState={
200
+ {
201
+ "busy": undefined,
202
+ "checked": undefined,
203
+ "disabled": undefined,
204
+ "expanded": undefined,
205
+ "selected": undefined,
206
+ }
207
+ }
208
+ accessibilityValue={
209
+ {
210
+ "max": undefined,
211
+ "min": undefined,
212
+ "now": undefined,
213
+ "text": undefined,
214
+ }
215
+ }
148
216
  accessible={true}
149
217
  collapsable={false}
150
218
  focusable={false}
@@ -4,7 +4,19 @@ exports[`Checkbox renders correctly when checked is false and there is no descri
4
4
  <View
5
5
  accessibilityState={
6
6
  {
7
+ "busy": undefined,
8
+ "checked": undefined,
7
9
  "disabled": false,
10
+ "expanded": undefined,
11
+ "selected": undefined,
12
+ }
13
+ }
14
+ accessibilityValue={
15
+ {
16
+ "max": undefined,
17
+ "min": undefined,
18
+ "now": undefined,
19
+ "text": undefined,
8
20
  }
9
21
  }
10
22
  accessible={true}
@@ -62,7 +74,19 @@ exports[`Checkbox renders correctly when checked is true and there is no descrip
62
74
  <View
63
75
  accessibilityState={
64
76
  {
77
+ "busy": undefined,
78
+ "checked": undefined,
65
79
  "disabled": false,
80
+ "expanded": undefined,
81
+ "selected": undefined,
82
+ }
83
+ }
84
+ accessibilityValue={
85
+ {
86
+ "max": undefined,
87
+ "min": undefined,
88
+ "now": undefined,
89
+ "text": undefined,
66
90
  }
67
91
  }
68
92
  accessible={true}
@@ -142,7 +166,19 @@ exports[`Checkbox renders correctly when disabled is false and readonly is false
142
166
  <View
143
167
  accessibilityState={
144
168
  {
169
+ "busy": undefined,
170
+ "checked": undefined,
145
171
  "disabled": false,
172
+ "expanded": undefined,
173
+ "selected": undefined,
174
+ }
175
+ }
176
+ accessibilityValue={
177
+ {
178
+ "max": undefined,
179
+ "min": undefined,
180
+ "now": undefined,
181
+ "text": undefined,
146
182
  }
147
183
  }
148
184
  accessible={true}
@@ -226,7 +262,19 @@ exports[`Checkbox renders correctly when disabled is false and readonly is true
226
262
  <View
227
263
  accessibilityState={
228
264
  {
265
+ "busy": undefined,
266
+ "checked": undefined,
229
267
  "disabled": true,
268
+ "expanded": undefined,
269
+ "selected": undefined,
270
+ }
271
+ }
272
+ accessibilityValue={
273
+ {
274
+ "max": undefined,
275
+ "min": undefined,
276
+ "now": undefined,
277
+ "text": undefined,
230
278
  }
231
279
  }
232
280
  accessible={true}
@@ -310,7 +358,19 @@ exports[`Checkbox renders correctly when disabled is true and readonly is false
310
358
  <View
311
359
  accessibilityState={
312
360
  {
361
+ "busy": undefined,
362
+ "checked": undefined,
313
363
  "disabled": true,
364
+ "expanded": undefined,
365
+ "selected": undefined,
366
+ }
367
+ }
368
+ accessibilityValue={
369
+ {
370
+ "max": undefined,
371
+ "min": undefined,
372
+ "now": undefined,
373
+ "text": undefined,
314
374
  }
315
375
  }
316
376
  accessible={true}
@@ -394,7 +454,19 @@ exports[`Checkbox renders correctly when disabled is true and readonly is true 1
394
454
  <View
395
455
  accessibilityState={
396
456
  {
457
+ "busy": undefined,
458
+ "checked": undefined,
397
459
  "disabled": true,
460
+ "expanded": undefined,
461
+ "selected": undefined,
462
+ }
463
+ }
464
+ accessibilityValue={
465
+ {
466
+ "max": undefined,
467
+ "min": undefined,
468
+ "now": undefined,
469
+ "text": undefined,
398
470
  }
399
471
  }
400
472
  accessible={true}
@@ -0,0 +1,121 @@
1
+ import styled from '@emotion/native';
2
+ import { TouchableOpacity } from 'react-native';
3
+ import Box from '../Box';
4
+ import Icon from '../Icon';
5
+ import Typography from '../Typography';
6
+
7
+ type StyledChipWrapperProps = {
8
+ themeVariant?: 'outlined' | 'filled';
9
+ themeSelected?: boolean;
10
+ };
11
+
12
+ const StyledChipWrapper = styled(TouchableOpacity)<StyledChipWrapperProps>(
13
+ ({ themeVariant, themeSelected, theme }) => {
14
+ const getShadowStyles = () => {
15
+ switch (themeVariant) {
16
+ case 'filled':
17
+ return {
18
+ ...theme.__hd__.chip.shadows.filledWrapper,
19
+ };
20
+ case 'outlined':
21
+ return undefined;
22
+ }
23
+ };
24
+
25
+ const getBorderStyles = () => {
26
+ const commonStyle = {
27
+ borderWidth: theme.__hd__.chip.sizes.wrapperBorder,
28
+ };
29
+
30
+ if (themeSelected) {
31
+ return {
32
+ ...commonStyle,
33
+ borderColor: theme.__hd__.chip.colors.wrapperSelectedBorder,
34
+ };
35
+ }
36
+
37
+ switch (themeVariant) {
38
+ case 'outlined': {
39
+ return {
40
+ ...commonStyle,
41
+ borderColor: theme.__hd__.chip.colors.wrapperBorder,
42
+ };
43
+ }
44
+ case 'filled': {
45
+ return {
46
+ ...commonStyle,
47
+ borderColor: theme.__hd__.chip.colors.wrapperSelectedBorder,
48
+ };
49
+ }
50
+ }
51
+ };
52
+
53
+ const getBackgroundStyles = () => {
54
+ if (themeSelected) {
55
+ switch (themeVariant) {
56
+ case 'outlined': {
57
+ return {
58
+ backgroundColor: theme.__hd__.chip.colors.primaryBackground,
59
+ };
60
+ }
61
+ case 'filled':
62
+ return {
63
+ backgroundColor: theme.__hd__.chip.colors.secondaryBackground,
64
+ };
65
+ }
66
+ } else {
67
+ switch (themeVariant) {
68
+ case 'outlined': {
69
+ return {
70
+ backgroundColor: theme.__hd__.chip.colors.outlinedBackground,
71
+ };
72
+ }
73
+ case 'filled':
74
+ return {
75
+ backgroundColor: theme.__hd__.chip.colors.filledBackground,
76
+ };
77
+ }
78
+ }
79
+ };
80
+
81
+ return {
82
+ alignSelf: 'flex-start',
83
+ flexDirection: 'row',
84
+ alignItems: 'center',
85
+ justifyContent: 'center',
86
+ borderRadius: theme.__hd__.chip.radii.wrapper,
87
+ paddingVertical: theme.__hd__.chip.space.wrapperVerticalPadding,
88
+ paddingHorizontal: theme.__hd__.chip.space.wrapperHorizontalPadding,
89
+ borderWidth: theme.__hd__.chip.sizes.wrapperBorder,
90
+ ...getShadowStyles(),
91
+ ...getBorderStyles(),
92
+ ...getBackgroundStyles(),
93
+ };
94
+ }
95
+ );
96
+
97
+ const StyledIconWrapper = styled(Box)(({ theme }) => ({
98
+ marginRight: theme.__hd__.chip.space.iconWrapperMarginRight,
99
+ }));
100
+
101
+ const StyledLabel = styled(Typography.Body)<{
102
+ themeSelected?: boolean;
103
+ themeVariant?: 'outlined' | 'filled';
104
+ }>(({ themeSelected, themeVariant, theme }) => ({
105
+ color:
106
+ themeSelected && themeVariant === 'outlined'
107
+ ? theme.__hd__.chip.colors.selectedPrimaryText
108
+ : undefined,
109
+ }));
110
+
111
+ const StyledIcon = styled(Icon)<{
112
+ themeSelected?: boolean;
113
+ themeVariant?: 'outlined' | 'filled';
114
+ }>(({ themeSelected, themeVariant, theme }) => ({
115
+ color:
116
+ themeSelected && themeVariant === 'outlined'
117
+ ? theme.__hd__.chip.colors.selectedPrimaryText
118
+ : undefined,
119
+ }));
120
+
121
+ export { StyledChipWrapper, StyledIcon, StyledIconWrapper, StyledLabel };