@hero-design/rn 8.23.0 → 8.24.0-alpha.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 (300) hide show
  1. package/.turbo/turbo-build.log +9 -9
  2. package/.turbo/turbo-build:types.log +2 -0
  3. package/.turbo/turbo-lint.log +146 -0
  4. package/.turbo/turbo-publish:npm.log +9 -0
  5. package/.turbo/turbo-test.log +451 -0
  6. package/.turbo/turbo-type-check.log +1 -0
  7. package/es/index.js +289 -101
  8. package/lib/index.js +289 -101
  9. package/package.json +1 -1
  10. package/src/components/DatePicker/__tests__/__snapshots__/DatePicker.spec.tsx.snap +21 -9
  11. package/src/components/DatePicker/__tests__/__snapshots__/DatePickerAndroid.spec.tsx.snap +7 -3
  12. package/src/components/DatePicker/__tests__/__snapshots__/DatePickerCalendar.spec.tsx.snap +7 -3
  13. package/src/components/DatePicker/__tests__/__snapshots__/DatePickerIOS.spec.tsx.snap +7 -3
  14. package/src/components/RichTextEditor/RichTextEditor.tsx +10 -7
  15. package/src/components/RichTextEditor/__tests__/__snapshots__/RichTextEditor.spec.tsx.snap +10 -8
  16. package/src/components/Select/MultiSelect/__tests__/__snapshots__/index.spec.tsx.snap +37 -16
  17. package/src/components/Select/SingleSelect/__tests__/__snapshots__/index.spec.tsx.snap +37 -16
  18. package/src/components/Tabs/ScrollableTabs.tsx +10 -149
  19. package/src/components/Tabs/ScrollableTabsHeader.tsx +214 -0
  20. package/src/components/Tabs/ScrollableTabsV2/SceneView.tsx +61 -0
  21. package/src/components/Tabs/ScrollableTabsV2/ScrollableTabsV2.tsx +120 -0
  22. package/src/components/Tabs/ScrollableTabsV2/__tests__/SceneView.spec.tsx +76 -0
  23. package/src/components/Tabs/ScrollableTabsV2/__tests__/ScrollableTabsV2.spec.tsx +166 -0
  24. package/src/components/Tabs/ScrollableTabsV2/__tests__/__snapshots__/SceneView.spec.tsx.snap +161 -0
  25. package/src/components/Tabs/ScrollableTabsV2/__tests__/__snapshots__/ScrollableTabsV2.spec.tsx.snap +2497 -0
  26. package/src/components/Tabs/ScrollableTabsV2/index.tsx +5 -0
  27. package/src/components/Tabs/__tests__/ScrollableTabsHeader.spec.tsx +80 -0
  28. package/src/components/Tabs/__tests__/__snapshots__/ScrollableTabsHeader.spec.tsx.snap +587 -0
  29. package/src/components/Tabs/index.tsx +2 -0
  30. package/src/components/TextInput/StyledTextInput.tsx +40 -29
  31. package/src/components/TextInput/__tests__/StyledTextInput.spec.tsx +48 -57
  32. package/src/components/TextInput/__tests__/__snapshots__/StyledTextInput.spec.tsx.snap +84 -58
  33. package/src/components/TextInput/__tests__/__snapshots__/index.spec.tsx.snap +326 -74
  34. package/src/components/TextInput/__tests__/index.spec.tsx +16 -4
  35. package/src/components/TextInput/index.tsx +25 -15
  36. package/src/components/TimePicker/__tests__/__snapshots__/TimePickerAndroid.spec.tsx.snap +14 -6
  37. package/src/components/TimePicker/__tests__/__snapshots__/TimePickerIOS.spec.tsx.snap +14 -6
  38. package/src/theme/__tests__/__snapshots__/index.spec.ts.snap +8 -3
  39. package/src/theme/components/textInput.ts +10 -4
  40. package/testUtils/setup.tsx +6 -0
  41. package/types/components/Accordion/AccordionItem.d.ts +0 -0
  42. package/types/components/Accordion/StyledAccordion.d.ts +0 -0
  43. package/types/components/Accordion/index.d.ts +0 -0
  44. package/types/components/Alert/StyledAlert.d.ts +0 -0
  45. package/types/components/Alert/index.d.ts +0 -0
  46. package/types/components/Attachment/StyledAttachment.d.ts +0 -0
  47. package/types/components/Attachment/index.d.ts +0 -0
  48. package/types/components/Avatar/Avatar.d.ts +0 -0
  49. package/types/components/Avatar/AvatarStack/StyledAvatarStack.d.ts +0 -0
  50. package/types/components/Avatar/AvatarStack/index.d.ts +0 -0
  51. package/types/components/Avatar/AvatarStack/utils.d.ts +0 -0
  52. package/types/components/Avatar/StyledAvatar.d.ts +0 -0
  53. package/types/components/Avatar/index.d.ts +0 -0
  54. package/types/components/Badge/Status.d.ts +0 -0
  55. package/types/components/Badge/StyledBadge.d.ts +0 -0
  56. package/types/components/Badge/index.d.ts +0 -0
  57. package/types/components/BottomNavigation/StyledBottomNavigation.d.ts +0 -0
  58. package/types/components/BottomNavigation/index.d.ts +0 -0
  59. package/types/components/BottomSheet/BottomSheetContext.d.ts +0 -0
  60. package/types/components/BottomSheet/Footer.d.ts +0 -0
  61. package/types/components/BottomSheet/Header.d.ts +0 -0
  62. package/types/components/BottomSheet/ScrollView.d.ts +0 -0
  63. package/types/components/BottomSheet/StyledBottomSheet.d.ts +0 -0
  64. package/types/components/BottomSheet/index.d.ts +0 -0
  65. package/types/components/Box/StyledBox.d.ts +0 -0
  66. package/types/components/Box/config.d.ts +0 -0
  67. package/types/components/Box/index.d.ts +0 -0
  68. package/types/components/Box/types.d.ts +0 -0
  69. package/types/components/Button/Button.d.ts +0 -0
  70. package/types/components/Button/IconButton.d.ts +0 -0
  71. package/types/components/Button/LoadingIndicator/StyledLoadingIndicator.d.ts +0 -0
  72. package/types/components/Button/LoadingIndicator/index.d.ts +0 -0
  73. package/types/components/Button/StyledButton.d.ts +0 -0
  74. package/types/components/Button/UtilityButton/StyledUtilityButton.d.ts +0 -0
  75. package/types/components/Button/UtilityButton/index.d.ts +0 -0
  76. package/types/components/Button/index.d.ts +0 -0
  77. package/types/components/Calendar/CalendarRowItem.d.ts +0 -0
  78. package/types/components/Calendar/StyledCalendar.d.ts +0 -0
  79. package/types/components/Calendar/helpers.d.ts +0 -0
  80. package/types/components/Calendar/index.d.ts +0 -0
  81. package/types/components/Card/DataCard/StyledDataCard.d.ts +0 -0
  82. package/types/components/Card/DataCard/index.d.ts +0 -0
  83. package/types/components/Card/StyledCard.d.ts +0 -0
  84. package/types/components/Card/index.d.ts +0 -0
  85. package/types/components/Carousel/CardCarousel.d.ts +0 -0
  86. package/types/components/Carousel/CarouselItem.d.ts +0 -0
  87. package/types/components/Carousel/StyledCardCarousel.d.ts +0 -0
  88. package/types/components/Carousel/StyledCarousel.d.ts +0 -0
  89. package/types/components/Carousel/contants.d.ts +0 -0
  90. package/types/components/Carousel/index.d.ts +0 -0
  91. package/types/components/Carousel/types.d.ts +0 -0
  92. package/types/components/Checkbox/StyledCheckbox.d.ts +0 -0
  93. package/types/components/Checkbox/index.d.ts +0 -0
  94. package/types/components/Collapse/StyledCollapse.d.ts +0 -0
  95. package/types/components/Collapse/index.d.ts +0 -0
  96. package/types/components/ContentNavigator/StyledContentNavigator.d.ts +0 -0
  97. package/types/components/ContentNavigator/index.d.ts +0 -0
  98. package/types/components/DatePicker/DatePickerAndroid.d.ts +0 -0
  99. package/types/components/DatePicker/DatePickerCalendar.d.ts +0 -0
  100. package/types/components/DatePicker/DatePickerIOS.d.ts +0 -0
  101. package/types/components/DatePicker/StyledDatePicker.d.ts +0 -0
  102. package/types/components/DatePicker/index.d.ts +0 -0
  103. package/types/components/DatePicker/types.d.ts +0 -0
  104. package/types/components/Divider/StyledDivider.d.ts +0 -0
  105. package/types/components/Divider/index.d.ts +0 -0
  106. package/types/components/Drawer/DragableDrawer/helpers.d.ts +0 -0
  107. package/types/components/Drawer/DragableDrawer/index.d.ts +0 -0
  108. package/types/components/Drawer/StyledDrawer.d.ts +0 -0
  109. package/types/components/Drawer/index.d.ts +0 -0
  110. package/types/components/Empty/StyledEmpty.d.ts +0 -0
  111. package/types/components/Empty/index.d.ts +0 -0
  112. package/types/components/Error/StyledError.d.ts +0 -0
  113. package/types/components/Error/index.d.ts +0 -0
  114. package/types/components/FAB/ActionGroup/ActionItem.d.ts +0 -0
  115. package/types/components/FAB/ActionGroup/StyledActionGroup.d.ts +0 -0
  116. package/types/components/FAB/ActionGroup/StyledActionItem.d.ts +0 -0
  117. package/types/components/FAB/ActionGroup/index.d.ts +0 -0
  118. package/types/components/FAB/AnimatedFABIcon.d.ts +0 -0
  119. package/types/components/FAB/FAB.d.ts +0 -0
  120. package/types/components/FAB/StyledFAB.d.ts +0 -0
  121. package/types/components/FAB/index.d.ts +0 -0
  122. package/types/components/Icon/AnimatedIcon.d.ts +0 -0
  123. package/types/components/Icon/HeroIcon/index.d.ts +0 -0
  124. package/types/components/Icon/IconList.d.ts +0 -0
  125. package/types/components/Icon/index.d.ts +0 -0
  126. package/types/components/Icon/utils.d.ts +0 -0
  127. package/types/components/Image/index.d.ts +0 -0
  128. package/types/components/List/BasicListItem.d.ts +0 -0
  129. package/types/components/List/ListItem.d.ts +0 -0
  130. package/types/components/List/StyledBasicListItem.d.ts +0 -0
  131. package/types/components/List/StyledListItem.d.ts +0 -0
  132. package/types/components/List/index.d.ts +0 -0
  133. package/types/components/PageControl/StyledPageControl.d.ts +0 -0
  134. package/types/components/PageControl/index.d.ts +0 -0
  135. package/types/components/PinInput/PinCell.d.ts +0 -0
  136. package/types/components/PinInput/StyledPinInput.d.ts +0 -0
  137. package/types/components/PinInput/index.d.ts +0 -0
  138. package/types/components/Progress/ProgressBar.d.ts +0 -0
  139. package/types/components/Progress/ProgressCircle.d.ts +0 -0
  140. package/types/components/Progress/StyledProgressBar.d.ts +0 -0
  141. package/types/components/Progress/StyledProgressCircle.d.ts +0 -0
  142. package/types/components/Progress/__tests__/index.spec.d.ts +0 -0
  143. package/types/components/Progress/constants.d.ts +0 -0
  144. package/types/components/Progress/index.d.ts +0 -0
  145. package/types/components/Progress/types.d.ts +0 -0
  146. package/types/components/Radio/Radio.d.ts +0 -0
  147. package/types/components/Radio/RadioGroup.d.ts +0 -0
  148. package/types/components/Radio/StyledRadio.d.ts +0 -0
  149. package/types/components/Radio/index.d.ts +0 -0
  150. package/types/components/Radio/types.d.ts +0 -0
  151. package/types/components/RefreshControl/index.d.ts +0 -0
  152. package/types/components/RichTextEditor/EditorEvent.d.ts +0 -0
  153. package/types/components/RichTextEditor/EditorToolbar.d.ts +0 -0
  154. package/types/components/RichTextEditor/MentionList.d.ts +0 -0
  155. package/types/components/RichTextEditor/RichTextEditor.d.ts +0 -0
  156. package/types/components/RichTextEditor/StyledRichTextEditor.d.ts +0 -0
  157. package/types/components/RichTextEditor/StyledToolbar.d.ts +0 -0
  158. package/types/components/RichTextEditor/__mocks__/heroEditorApp.d.ts +0 -0
  159. package/types/components/RichTextEditor/constants.d.ts +0 -0
  160. package/types/components/RichTextEditor/heroEditorApp.d.ts +0 -0
  161. package/types/components/RichTextEditor/index.d.ts +0 -0
  162. package/types/components/RichTextEditor/types.d.ts +0 -0
  163. package/types/components/RichTextEditor/utils/events.d.ts +0 -0
  164. package/types/components/RichTextEditor/utils/rnWebView.d.ts +0 -0
  165. package/types/components/SectionHeading/StyledHeading.d.ts +0 -0
  166. package/types/components/SectionHeading/index.d.ts +0 -0
  167. package/types/components/Select/BaseOptionList.d.ts +0 -0
  168. package/types/components/Select/Footer.d.ts +0 -0
  169. package/types/components/Select/MultiSelect/Option.d.ts +0 -0
  170. package/types/components/Select/MultiSelect/OptionList.d.ts +0 -0
  171. package/types/components/Select/MultiSelect/index.d.ts +0 -0
  172. package/types/components/Select/SingleSelect/Option.d.ts +0 -0
  173. package/types/components/Select/SingleSelect/OptionList.d.ts +0 -0
  174. package/types/components/Select/SingleSelect/StyledSingleSelect.d.ts +0 -0
  175. package/types/components/Select/SingleSelect/index.d.ts +0 -0
  176. package/types/components/Select/StyledSelect.d.ts +0 -0
  177. package/types/components/Select/helpers.d.ts +0 -0
  178. package/types/components/Select/index.d.ts +0 -0
  179. package/types/components/Select/types.d.ts +0 -0
  180. package/types/components/Skeleton/StyledSkeleton.d.ts +0 -0
  181. package/types/components/Skeleton/index.d.ts +0 -0
  182. package/types/components/Slider/index.d.ts +0 -0
  183. package/types/components/Spinner/AnimatedSpinner.d.ts +0 -0
  184. package/types/components/Spinner/StyledSpinner.d.ts +0 -0
  185. package/types/components/Spinner/index.d.ts +0 -0
  186. package/types/components/Success/StyledSuccess.d.ts +0 -0
  187. package/types/components/Success/index.d.ts +0 -0
  188. package/types/components/Swipeable/StyledSwipeable.d.ts +0 -0
  189. package/types/components/Swipeable/SwipeableAction.d.ts +0 -0
  190. package/types/components/Swipeable/index.d.ts +0 -0
  191. package/types/components/Switch/SelectorSwitch/Option.d.ts +0 -0
  192. package/types/components/Switch/SelectorSwitch/StyledSelectorSwitch.d.ts +0 -0
  193. package/types/components/Switch/SelectorSwitch/index.d.ts +0 -0
  194. package/types/components/Switch/StyledSwitch.d.ts +0 -0
  195. package/types/components/Switch/index.d.ts +0 -0
  196. package/types/components/Tabs/ActiveTabIndicator.d.ts +0 -0
  197. package/types/components/Tabs/SceneView.d.ts +9 -0
  198. package/types/components/Tabs/ScrollableTabs.d.ts +0 -0
  199. package/types/components/Tabs/ScrollableTabsHeader.d.ts +35 -0
  200. package/types/components/Tabs/ScrollableTabsV2/SceneView.d.ts +10 -0
  201. package/types/components/Tabs/ScrollableTabsV2/ScrollableTabsV2.d.ts +9 -0
  202. package/types/components/Tabs/ScrollableTabsV2/index.d.ts +4 -0
  203. package/types/components/Tabs/StyledScrollableTabs.d.ts +0 -0
  204. package/types/components/Tabs/StyledTabs.d.ts +0 -0
  205. package/types/components/Tabs/TabWithBadge.d.ts +0 -0
  206. package/types/components/Tabs/index.d.ts +3 -0
  207. package/types/components/Tabs/utils.d.ts +0 -0
  208. package/types/components/Tag/StyledTag.d.ts +0 -0
  209. package/types/components/Tag/index.d.ts +0 -0
  210. package/types/components/TextInput/StyledTextInput.d.ts +12 -7
  211. package/types/components/TextInput/index.d.ts +8 -4
  212. package/types/components/TimePicker/StyledTimePicker.d.ts +0 -0
  213. package/types/components/TimePicker/TimePickerAndroid.d.ts +0 -0
  214. package/types/components/TimePicker/TimePickerIOS.d.ts +0 -0
  215. package/types/components/TimePicker/index.d.ts +0 -0
  216. package/types/components/TimePicker/types.d.ts +0 -0
  217. package/types/components/Toast/StyledToast.d.ts +0 -0
  218. package/types/components/Toast/Toast.d.ts +0 -0
  219. package/types/components/Toast/ToastContainer.d.ts +0 -0
  220. package/types/components/Toast/ToastContext.d.ts +0 -0
  221. package/types/components/Toast/ToastProvider.d.ts +0 -0
  222. package/types/components/Toast/index.d.ts +0 -0
  223. package/types/components/Toast/types.d.ts +0 -0
  224. package/types/components/Toolbar/StyledToolbar.d.ts +0 -0
  225. package/types/components/Toolbar/ToolbarGroup.d.ts +0 -0
  226. package/types/components/Toolbar/ToolbarItem.d.ts +0 -0
  227. package/types/components/Toolbar/index.d.ts +0 -0
  228. package/types/components/Typography/Text/StyledText.d.ts +0 -0
  229. package/types/components/Typography/Text/index.d.ts +0 -0
  230. package/types/components/Typography/index.d.ts +0 -0
  231. package/types/index.d.ts +0 -0
  232. package/types/testHelpers/renderWithTheme.d.ts +0 -0
  233. package/types/theme/ThemeProvider.d.ts +0 -0
  234. package/types/theme/ThemeSwitcher.d.ts +0 -0
  235. package/types/theme/components/accordion.d.ts +0 -0
  236. package/types/theme/components/alert.d.ts +0 -0
  237. package/types/theme/components/attachment.d.ts +0 -0
  238. package/types/theme/components/avatar.d.ts +0 -0
  239. package/types/theme/components/badge.d.ts +0 -0
  240. package/types/theme/components/bottomNavigation.d.ts +0 -0
  241. package/types/theme/components/bottomSheet.d.ts +0 -0
  242. package/types/theme/components/button.d.ts +0 -0
  243. package/types/theme/components/calendar.d.ts +0 -0
  244. package/types/theme/components/card.d.ts +0 -0
  245. package/types/theme/components/cardCarousel.d.ts +0 -0
  246. package/types/theme/components/carousel.d.ts +0 -0
  247. package/types/theme/components/checkbox.d.ts +0 -0
  248. package/types/theme/components/contentNavigator.d.ts +0 -0
  249. package/types/theme/components/datePicker.d.ts +0 -0
  250. package/types/theme/components/divider.d.ts +0 -0
  251. package/types/theme/components/drawer.d.ts +0 -0
  252. package/types/theme/components/empty.d.ts +0 -0
  253. package/types/theme/components/error.d.ts +0 -0
  254. package/types/theme/components/fab.d.ts +0 -0
  255. package/types/theme/components/icon.d.ts +0 -0
  256. package/types/theme/components/image.d.ts +0 -0
  257. package/types/theme/components/list.d.ts +0 -0
  258. package/types/theme/components/pageControl.d.ts +0 -0
  259. package/types/theme/components/pinInput.d.ts +0 -0
  260. package/types/theme/components/progress.d.ts +0 -0
  261. package/types/theme/components/radio.d.ts +0 -0
  262. package/types/theme/components/refreshControl.d.ts +0 -0
  263. package/types/theme/components/richTextEditor.d.ts +0 -0
  264. package/types/theme/components/sectionHeading.d.ts +0 -0
  265. package/types/theme/components/select.d.ts +0 -0
  266. package/types/theme/components/skeleton.d.ts +0 -0
  267. package/types/theme/components/slider.d.ts +0 -0
  268. package/types/theme/components/spinner.d.ts +0 -0
  269. package/types/theme/components/success.d.ts +0 -0
  270. package/types/theme/components/swipeable.d.ts +0 -0
  271. package/types/theme/components/switch.d.ts +0 -0
  272. package/types/theme/components/tabs.d.ts +0 -0
  273. package/types/theme/components/tag.d.ts +0 -0
  274. package/types/theme/components/textInput.d.ts +5 -0
  275. package/types/theme/components/timePicker.d.ts +0 -0
  276. package/types/theme/components/toast.d.ts +0 -0
  277. package/types/theme/components/toolbar.d.ts +0 -0
  278. package/types/theme/components/typography.d.ts +0 -0
  279. package/types/theme/getTheme.d.ts +0 -0
  280. package/types/theme/global/borders.d.ts +0 -0
  281. package/types/theme/global/colors/eBens.d.ts +0 -0
  282. package/types/theme/global/colors/global.d.ts +0 -0
  283. package/types/theme/global/colors/globalDark.d.ts +0 -0
  284. package/types/theme/global/colors/jobs.d.ts +0 -0
  285. package/types/theme/global/colors/swag.d.ts +0 -0
  286. package/types/theme/global/colors/swagDark.d.ts +0 -0
  287. package/types/theme/global/colors/types.d.ts +0 -0
  288. package/types/theme/global/colors/wallet.d.ts +0 -0
  289. package/types/theme/global/colors/work.d.ts +0 -0
  290. package/types/theme/global/index.d.ts +0 -0
  291. package/types/theme/global/scale.d.ts +0 -0
  292. package/types/theme/global/sizes.d.ts +0 -0
  293. package/types/theme/global/space.d.ts +0 -0
  294. package/types/theme/global/typography.d.ts +0 -0
  295. package/types/theme/index.d.ts +0 -0
  296. package/types/types.d.ts +0 -0
  297. package/types/utils/functions.d.ts +0 -0
  298. package/types/utils/helpers.d.ts +0 -0
  299. package/types/utils/hooks.d.ts +0 -0
  300. package/types/utils/scale.d.ts +0 -0
@@ -2,7 +2,8 @@ import { TextInput, View, StyleSheet } from 'react-native';
2
2
  import styled from '@emotion/native';
3
3
  import Typography from '../Typography';
4
4
 
5
- export type Variant = 'default' | 'filled' | 'disabled' | 'readonly' | 'error';
5
+ export type State = 'default' | 'filled' | 'disabled' | 'readonly' | 'error';
6
+ type Variant = 'text' | 'textarea';
6
7
 
7
8
  const StyledContainer = styled(View)(({ theme }) => ({
8
9
  width: '100%',
@@ -19,39 +20,41 @@ const StyledLabelContainer = styled(View)(({ theme }) => ({
19
20
  paddingHorizontal: theme.__hd__.textInput.space.labelHorizontalPadding,
20
21
  }));
21
22
  const StyledLabel = styled(Typography.Text)<{
22
- themeVariant: Variant;
23
- }>(({ theme, themeVariant }) => ({
24
- color: theme.__hd__.textInput.colors.labels[themeVariant],
23
+ themeState: State;
24
+ }>(({ theme, themeState }) => ({
25
+ color: theme.__hd__.textInput.colors.labels[themeState],
25
26
  }));
26
27
 
27
28
  const StyledAsteriskLabel = styled(Typography.Text)<{
28
- themeVariant: Variant;
29
- }>(({ theme, themeVariant }) => ({
30
- color: theme.__hd__.textInput.colors.asterisks[themeVariant],
29
+ themeState: State;
30
+ }>(({ theme, themeState }) => ({
31
+ color: theme.__hd__.textInput.colors.asterisks[themeState],
31
32
  }));
32
33
 
33
- const StyledLabelContainerInsideTextInput = styled(View)((): any => ({
34
+ const StyledLabelContainerInsideTextInput = styled(View)<{
35
+ themeVariant: Variant;
36
+ }>(({ themeVariant }) => ({
34
37
  flexDirection: 'row',
35
38
  zIndex: 9999,
36
- alignItems: 'center',
39
+ alignItems: themeVariant === 'text' ? 'center' : 'flex-start',
37
40
  ...StyleSheet.absoluteFillObject,
38
41
  }));
39
42
 
40
43
  const StyledLabelInsideTextInput = styled(Typography.Text)<{
41
- themeVariant: Variant;
42
- }>(({ theme, themeVariant }) => ({
44
+ themeState: State;
45
+ }>(({ theme, themeState }) => ({
43
46
  textAlignVertical: 'center',
44
47
  alignContent: 'center',
45
48
  fontSize: theme.__hd__.textInput.fontSizes.labelInsideTextInput,
46
49
  alignItems: 'center',
47
- color: theme.__hd__.textInput.colors.labelsInsideTextInput[themeVariant],
50
+ color: theme.__hd__.textInput.colors.labelsInsideTextInput[themeState],
48
51
  marginTop: theme.__hd__.textInput.space.labelInsideTextInputMarginTop,
49
52
  }));
50
53
 
51
54
  const StyledAsteriskLabelInsideTextInput = styled(Typography.Text)<{
52
- themeVariant: Variant;
53
- }>(({ theme, themeVariant }) => ({
54
- color: theme.__hd__.textInput.colors.asterisks[themeVariant],
55
+ themeState: State;
56
+ }>(({ theme, themeState }) => ({
57
+ color: theme.__hd__.textInput.colors.asterisks[themeState],
55
58
  fontSize: theme.__hd__.textInput.fontSizes.asteriskLabel,
56
59
  }));
57
60
 
@@ -70,9 +73,9 @@ const StyledError = styled(Typography.Text)(({ theme }) => ({
70
73
  }));
71
74
 
72
75
  const StyledMaxLengthMessage = styled(Typography.Text)<{
73
- themeVariant: Variant;
74
- }>(({ theme, themeVariant }) => ({
75
- color: theme.__hd__.textInput.colors.maxLengthLabels[themeVariant],
76
+ themeState: State;
77
+ }>(({ theme, themeState }) => ({
78
+ color: theme.__hd__.textInput.colors.maxLengthLabels[themeState],
76
79
  fontSize: theme.__hd__.textInput.fontSizes.maxLength,
77
80
  marginRight: theme.__hd__.textInput.space.maxLengthLabelMarginLeft,
78
81
  alignSelf: 'flex-end',
@@ -85,26 +88,34 @@ const StyledHelperText = styled(Typography.Text)(({ theme }) => ({
85
88
  fontSize: theme.__hd__.textInput.fontSizes.error,
86
89
  }));
87
90
 
88
- const StyledTextInput = styled(TextInput)(({ theme }) => ({
89
- textAlignVertical: 'center',
90
- fontSize: theme.__hd__.textInput.fontSizes.text,
91
- alignSelf: 'stretch',
92
- flexGrow: 2,
93
- marginHorizontal: theme.__hd__.textInput.space.inputHorizontalMargin,
94
- paddingVertical: 0,
95
- }));
91
+ const StyledTextInput = styled(TextInput)<{ themeVariant: Variant }>(
92
+ ({ theme, themeVariant }) => ({
93
+ textAlignVertical: themeVariant === 'text' ? 'center' : 'top',
94
+ fontSize: theme.__hd__.textInput.fontSizes.text,
95
+ alignSelf: 'stretch',
96
+ flexGrow: 2,
97
+ marginHorizontal: theme.__hd__.textInput.space.inputHorizontalMargin,
98
+ paddingVertical: 0,
99
+ maxHeight: theme.__hd__.textInput.sizes.textInputMaxHeight,
100
+ height:
101
+ themeVariant === 'text'
102
+ ? undefined
103
+ : theme.__hd__.textInput.sizes.textareaHeight,
104
+ fontFamily: theme.__hd__.textInput.fonts.text,
105
+ })
106
+ );
96
107
 
97
108
  const StyledBorderBackDrop = styled(View)<{
98
- themeVariant: Variant;
109
+ themeState: State;
99
110
  themeFocused: boolean;
100
- }>(({ theme, themeFocused, themeVariant }) => ({
111
+ }>(({ theme, themeFocused, themeState }) => ({
101
112
  ...StyleSheet.absoluteFillObject,
102
113
  borderWidth: themeFocused
103
114
  ? theme.__hd__.textInput.borderWidths.container.focused
104
115
  : theme.__hd__.textInput.borderWidths.container.normal,
105
116
  borderRadius: theme.__hd__.textInput.radii.container,
106
117
  borderColor:
107
- theme.__hd__.textInput.colors.borders[themeVariant] ??
118
+ theme.__hd__.textInput.colors.borders[themeState] ??
108
119
  theme.__hd__.textInput.colors.borders.default,
109
120
  }));
110
121
 
@@ -15,15 +15,15 @@ import {
15
15
 
16
16
  describe('Label', () => {
17
17
  it.each`
18
- themeVariant
18
+ themeState
19
19
  ${'default'}
20
20
  ${'filled'}
21
21
  ${'error'}
22
22
  ${'disabled'}
23
23
  ${'readonly'}
24
- `('renders correctly with themeVariant $themeVariant', ({ themeVariant }) => {
24
+ `('renders correctly with themeState $themeState', ({ themeState }) => {
25
25
  const { toJSON } = renderWithTheme(
26
- <StyledLabel themeVariant={themeVariant}>Label</StyledLabel>
26
+ <StyledLabel themeState={themeState}>Label</StyledLabel>
27
27
  );
28
28
 
29
29
  expect(toJSON()).toMatchSnapshot();
@@ -31,24 +31,21 @@ describe('Label', () => {
31
31
  });
32
32
  describe('LabelInsideTextInput', () => {
33
33
  it.each`
34
- themeVariant
34
+ themeState
35
35
  ${'default'}
36
36
  ${'filled'}
37
37
  ${'error'}
38
38
  ${'disabled'}
39
39
  ${'readonly'}
40
- `(
41
- 'renders correctly with themeVariant $themeVariant',
42
- ({ themeVariant }): void => {
43
- const { toJSON } = renderWithTheme(
44
- <StyledLabelInsideTextInput themeVariant={themeVariant}>
45
- Label
46
- </StyledLabelInsideTextInput>
47
- );
48
-
49
- expect(toJSON()).toMatchSnapshot();
50
- }
51
- );
40
+ `('renders correctly with themeState $themeState', ({ themeState }): void => {
41
+ const { toJSON } = renderWithTheme(
42
+ <StyledLabelInsideTextInput themeState={themeState}>
43
+ Label
44
+ </StyledLabelInsideTextInput>
45
+ );
46
+
47
+ expect(toJSON()).toMatchSnapshot();
48
+ });
52
49
  });
53
50
 
54
51
  describe('LabelContainer', () => {
@@ -61,22 +58,19 @@ describe('LabelContainer', () => {
61
58
 
62
59
  describe('StyledAsteriskLabel', () => {
63
60
  it.each`
64
- themeVariant
61
+ themeState
65
62
  ${'default'}
66
63
  ${'filled'}
67
64
  ${'error'}
68
65
  ${'disabled'}
69
66
  ${'readonly'}
70
- `(
71
- 'renders correctly with themeVariant $themeVariant',
72
- ({ themeVariant }): void => {
73
- const { toJSON } = renderWithTheme(
74
- <StyledAsteriskLabel themeVariant={themeVariant}>*</StyledAsteriskLabel>
75
- );
76
-
77
- expect(toJSON()).toMatchSnapshot();
78
- }
79
- );
67
+ `('renders correctly with themeState $themeState', ({ themeState }): void => {
68
+ const { toJSON } = renderWithTheme(
69
+ <StyledAsteriskLabel themeState={themeState}>*</StyledAsteriskLabel>
70
+ );
71
+
72
+ expect(toJSON()).toMatchSnapshot();
73
+ });
80
74
  });
81
75
 
82
76
  describe('StyledErrorMessageContainer', () => {
@@ -99,24 +93,21 @@ describe('StyledErrorMessage', () => {
99
93
 
100
94
  describe('StyledMaxLengthMessage', () => {
101
95
  it.each`
102
- themeVariant
96
+ themeState
103
97
  ${'default'}
104
98
  ${'filled'}
105
99
  ${'error'}
106
100
  ${'disabled'}
107
101
  ${'readonly'}
108
- `(
109
- 'renders correctly with themeVariant $themeVariant',
110
- ({ themeVariant }): void => {
111
- const { toJSON } = renderWithTheme(
112
- <StyledMaxLengthMessage themeVariant={themeVariant}>
113
- 100/255
114
- </StyledMaxLengthMessage>
115
- );
116
-
117
- expect(toJSON()).toMatchSnapshot();
118
- }
119
- );
102
+ `('renders correctly with themeState $themeState', ({ themeState }): void => {
103
+ const { toJSON } = renderWithTheme(
104
+ <StyledMaxLengthMessage themeState={themeState}>
105
+ 100/255
106
+ </StyledMaxLengthMessage>
107
+ );
108
+
109
+ expect(toJSON()).toMatchSnapshot();
110
+ });
120
111
  });
121
112
 
122
113
  describe('StyledHelperText', () => {
@@ -131,29 +122,23 @@ describe('StyledHelperText', () => {
131
122
 
132
123
  describe('StyledBorderBackDrop', () => {
133
124
  it.each`
134
- themeVariant
125
+ themeState
135
126
  ${'default'}
136
127
  ${'filled'}
137
128
  ${'error'}
138
129
  ${'disabled'}
139
130
  ${'readonly'}
140
- `(
141
- 'renders correctly with themeVariant $themeVariant',
142
- ({ themeVariant }): void => {
143
- const { toJSON } = renderWithTheme(
144
- <StyledBorderBackDrop
145
- themeVariant={themeVariant}
146
- themeFocused={false}
147
- />
148
- );
149
-
150
- expect(toJSON()).toMatchSnapshot();
151
- }
152
- );
131
+ `('renders correctly with themeState $themeState', ({ themeState }): void => {
132
+ const { toJSON } = renderWithTheme(
133
+ <StyledBorderBackDrop themeState={themeState} themeFocused={false} />
134
+ );
135
+
136
+ expect(toJSON()).toMatchSnapshot();
137
+ });
153
138
 
154
139
  it('renders correctly when focused', (): void => {
155
140
  const { toJSON } = renderWithTheme(
156
- <StyledBorderBackDrop themeVariant="error" themeFocused />
141
+ <StyledBorderBackDrop themeState="error" themeFocused />
157
142
  );
158
143
 
159
144
  expect(toJSON()).toMatchSnapshot();
@@ -161,8 +146,14 @@ describe('StyledBorderBackDrop', () => {
161
146
  });
162
147
 
163
148
  describe('StyledTextInput', () => {
164
- it('renders correctly', () => {
165
- const { toJSON } = renderWithTheme(<StyledTextInput />);
149
+ it.each`
150
+ themeVariant
151
+ ${'text'}
152
+ ${'textarea'}
153
+ `('renders correctly with $themeState state', ({ themeVariant }) => {
154
+ const { toJSON } = renderWithTheme(
155
+ <StyledTextInput themeVariant={themeVariant} />
156
+ );
166
157
 
167
158
  expect(toJSON()).toMatchSnapshot();
168
159
  });