@hero-design/rn 7.9.0 → 7.10.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 (252) hide show
  1. package/.turbo/turbo-build.log +8 -8
  2. package/assets/fonts/hero-icons.ttf +0 -0
  3. package/es/index.js +731 -252
  4. package/lib/assets/fonts/hero-icons.ttf +0 -0
  5. package/lib/index.js +730 -251
  6. package/package.json +2 -2
  7. package/src/components/Button/Button.tsx +10 -2
  8. package/src/components/Button/LoadingIndicator/StyledLoadingIndicator.tsx +7 -1
  9. package/src/components/Button/LoadingIndicator/__tests__/StyledLoadingIndicator.spec.tsx +3 -0
  10. package/src/components/Button/LoadingIndicator/__tests__/__snapshots__/StyledLoadingIndicator.spec.tsx.snap +60 -0
  11. package/src/components/Button/LoadingIndicator/__tests__/__snapshots__/index.spec.tsx.snap +363 -0
  12. package/src/components/Button/LoadingIndicator/__tests__/index.spec.tsx +3 -0
  13. package/src/components/Button/LoadingIndicator/index.tsx +4 -1
  14. package/src/components/Button/StyledButton.tsx +57 -1
  15. package/src/components/Button/UtilityButton/__tests__/__snapshots__/index.spec.tsx.snap +167 -0
  16. package/src/components/Button/UtilityButton/__tests__/index.spec.tsx +55 -0
  17. package/src/components/Button/UtilityButton/index.tsx +53 -0
  18. package/src/components/Button/UtilityButton/styled.tsx +25 -0
  19. package/src/components/Button/__tests__/Button.spec.tsx +3 -0
  20. package/src/components/Button/__tests__/StyledButton.spec.tsx +18 -0
  21. package/src/components/Button/__tests__/__snapshots__/StyledButton.spec.tsx.snap +468 -0
  22. package/src/components/Button/index.tsx +3 -0
  23. package/src/components/Icon/HeroIcon/selection.json +1 -1
  24. package/src/components/Icon/IconList.ts +2 -0
  25. package/src/components/Select/MultiSelect/__tests__/__snapshots__/index.spec.tsx.snap +248 -94
  26. package/src/components/Select/SingleSelect/__tests__/__snapshots__/index.spec.tsx.snap +248 -94
  27. package/src/components/TextInput/StyledTextInput.tsx +133 -11
  28. package/src/components/TextInput/__tests__/StyledTextInput.spec.tsx +143 -7
  29. package/src/components/TextInput/__tests__/__snapshots__/StyledTextInput.spec.tsx.snap +922 -15
  30. package/src/components/TextInput/__tests__/__snapshots__/index.spec.tsx.snap +2078 -0
  31. package/src/components/TextInput/__tests__/index.spec.tsx +302 -11
  32. package/src/components/TextInput/index.tsx +232 -28
  33. package/src/theme/__tests__/__snapshots__/index.spec.ts.snap +69 -3
  34. package/src/theme/components/button.ts +6 -0
  35. package/src/theme/components/textInput.ts +62 -3
  36. package/src/theme/global/colors.ts +1 -0
  37. package/src/types.ts +8 -1
  38. package/types/components/Alert/StyledAlert.d.ts +0 -0
  39. package/types/components/Alert/__tests__/index.spec.d.ts +0 -0
  40. package/types/components/Alert/index.d.ts +0 -0
  41. package/types/components/Avatar/StyledAvatar.d.ts +0 -0
  42. package/types/components/Avatar/__tests__/StyledAvatar.spec.d.ts +0 -0
  43. package/types/components/Avatar/__tests__/index.spec.d.ts +0 -0
  44. package/types/components/Avatar/index.d.ts +0 -0
  45. package/types/components/Badge/Status.d.ts +0 -0
  46. package/types/components/Badge/StyledBadge.d.ts +0 -0
  47. package/types/components/Badge/__tests__/Badge.spec.d.ts +0 -0
  48. package/types/components/Badge/__tests__/Status.spec.d.ts +0 -0
  49. package/types/components/Badge/index.d.ts +0 -0
  50. package/types/components/BottomNavigation/StyledBottomNavigation.d.ts +0 -0
  51. package/types/components/BottomNavigation/__tests__/index.spec.d.ts +0 -0
  52. package/types/components/BottomNavigation/index.d.ts +0 -0
  53. package/types/components/BottomSheet/Footer.d.ts +0 -0
  54. package/types/components/BottomSheet/Header.d.ts +0 -0
  55. package/types/components/BottomSheet/StyledBottomSheet.d.ts +0 -0
  56. package/types/components/BottomSheet/__tests__/index.spec.d.ts +0 -0
  57. package/types/components/BottomSheet/index.d.ts +0 -0
  58. package/types/components/Button/Button.d.ts +2 -2
  59. package/types/components/Button/IconButton.d.ts +0 -0
  60. package/types/components/Button/LoadingIndicator/StyledLoadingIndicator.d.ts +1 -1
  61. package/types/components/Button/LoadingIndicator/__tests__/StyledLoadingIndicator.spec.d.ts +0 -0
  62. package/types/components/Button/LoadingIndicator/__tests__/index.spec.d.ts +0 -0
  63. package/types/components/Button/LoadingIndicator/index.d.ts +1 -1
  64. package/types/components/Button/StyledButton.d.ts +1 -1
  65. package/types/components/Button/UtilityButton/__tests__/index.spec.d.ts +1 -0
  66. package/types/components/Button/UtilityButton/index.d.ts +23 -0
  67. package/types/components/Button/UtilityButton/styled.d.ts +17 -0
  68. package/types/components/Button/__tests__/Button.spec.d.ts +0 -0
  69. package/types/components/Button/__tests__/IconButton.spec.d.ts +0 -0
  70. package/types/components/Button/__tests__/StyledButton.spec.d.ts +0 -0
  71. package/types/components/Button/index.d.ts +2 -0
  72. package/types/components/Card/DataCard/StyledDataCard.d.ts +0 -0
  73. package/types/components/Card/DataCard/__tests__/StyledDataCard.spec.d.ts +0 -0
  74. package/types/components/Card/DataCard/__tests__/index.spec.d.ts +0 -0
  75. package/types/components/Card/DataCard/index.d.ts +0 -0
  76. package/types/components/Card/StyledCard.d.ts +0 -0
  77. package/types/components/Card/__tests__/StyledCard.spec.d.ts +0 -0
  78. package/types/components/Card/__tests__/index.spec.d.ts +0 -0
  79. package/types/components/Card/index.d.ts +0 -0
  80. package/types/components/Checkbox/StyledCheckbox.d.ts +0 -0
  81. package/types/components/Checkbox/__tests__/StyledCheckbox.spec.d.ts +0 -0
  82. package/types/components/Checkbox/__tests__/index.spec.d.ts +0 -0
  83. package/types/components/Checkbox/index.d.ts +0 -0
  84. package/types/components/Collapse/StyledCollapse.d.ts +0 -0
  85. package/types/components/Collapse/__tests__/StyledCollapse.spec.d.ts +0 -0
  86. package/types/components/Collapse/__tests__/index.spec.d.ts +0 -0
  87. package/types/components/Collapse/index.d.ts +0 -0
  88. package/types/components/ContentNavigator/StyledContentNavigator.d.ts +0 -0
  89. package/types/components/ContentNavigator/__tests__/StyledContentNavigator.spec.d.ts +0 -0
  90. package/types/components/ContentNavigator/__tests__/index.spec.d.ts +0 -0
  91. package/types/components/ContentNavigator/index.d.ts +0 -0
  92. package/types/components/Divider/StyledDivider.d.ts +0 -0
  93. package/types/components/Divider/__tests__/StyledDivider.spec.d.ts +0 -0
  94. package/types/components/Divider/index.d.ts +0 -0
  95. package/types/components/Drawer/StyledDrawer.d.ts +0 -0
  96. package/types/components/Drawer/__tests__/index.spec.d.ts +0 -0
  97. package/types/components/Drawer/index.d.ts +0 -0
  98. package/types/components/FAB/ActionGroup/ActionItem.d.ts +0 -0
  99. package/types/components/FAB/ActionGroup/StyledActionGroup.d.ts +0 -0
  100. package/types/components/FAB/ActionGroup/StyledActionItem.d.ts +0 -0
  101. package/types/components/FAB/ActionGroup/__tests__/index.spec.d.ts +0 -0
  102. package/types/components/FAB/ActionGroup/index.d.ts +0 -0
  103. package/types/components/FAB/AnimatedFABIcon.d.ts +0 -0
  104. package/types/components/FAB/FAB.d.ts +0 -0
  105. package/types/components/FAB/StyledFAB.d.ts +0 -0
  106. package/types/components/FAB/__tests__/AnimatedFABIcon.spec.d.ts +0 -0
  107. package/types/components/FAB/__tests__/StyledFAB.spec.d.ts +0 -0
  108. package/types/components/FAB/__tests__/index.spec.d.ts +0 -0
  109. package/types/components/FAB/index.d.ts +0 -0
  110. package/types/components/Icon/HeroIcon/index.d.ts +0 -0
  111. package/types/components/Icon/IconList.d.ts +1 -1
  112. package/types/components/Icon/__tests__/index.spec.d.ts +0 -0
  113. package/types/components/Icon/index.d.ts +0 -0
  114. package/types/components/Icon/utils.d.ts +1 -1
  115. package/types/components/List/BasicListItem.d.ts +0 -0
  116. package/types/components/List/ListItem.d.ts +0 -0
  117. package/types/components/List/StyledBasicListItem.d.ts +0 -0
  118. package/types/components/List/StyledListItem.d.ts +0 -0
  119. package/types/components/List/__tests__/BasicListItem.spec.d.ts +0 -0
  120. package/types/components/List/__tests__/ListItem.spec.d.ts +0 -0
  121. package/types/components/List/__tests__/StyledBasicListItem.spec.d.ts +0 -0
  122. package/types/components/List/__tests__/StyledListItem.spec.d.ts +0 -0
  123. package/types/components/List/index.d.ts +0 -0
  124. package/types/components/Progress/ProgressBar.d.ts +0 -0
  125. package/types/components/Progress/ProgressCircle.d.ts +0 -0
  126. package/types/components/Progress/StyledProgressBar.d.ts +0 -0
  127. package/types/components/Progress/StyledProgressCircle.d.ts +0 -0
  128. package/types/components/Progress/__tests__/index.spec.d.ts +0 -0
  129. package/types/components/Progress/index.d.ts +0 -0
  130. package/types/components/Progress/types.d.ts +0 -0
  131. package/types/components/Radio/Radio.d.ts +0 -0
  132. package/types/components/Radio/RadioGroup.d.ts +0 -0
  133. package/types/components/Radio/StyledRadio.d.ts +0 -0
  134. package/types/components/Radio/__tests__/Radio.spec.d.ts +0 -0
  135. package/types/components/Radio/__tests__/RadioGroup.spec.d.ts +0 -0
  136. package/types/components/Radio/__tests__/StyledRadio.spec.d.ts +0 -0
  137. package/types/components/Radio/index.d.ts +0 -0
  138. package/types/components/Radio/types.d.ts +0 -0
  139. package/types/components/SectionHeading/StyledHeading.d.ts +0 -0
  140. package/types/components/SectionHeading/__tests__/StyledHeading.spec.d.ts +0 -0
  141. package/types/components/SectionHeading/__tests__/index.spec.d.ts +0 -0
  142. package/types/components/SectionHeading/index.d.ts +0 -0
  143. package/types/components/Select/Footer.d.ts +0 -0
  144. package/types/components/Select/MultiSelect/Option.d.ts +0 -0
  145. package/types/components/Select/MultiSelect/OptionList.d.ts +0 -0
  146. package/types/components/Select/MultiSelect/__tests__/Option.spec.d.ts +0 -0
  147. package/types/components/Select/MultiSelect/__tests__/OptionList.spec.d.ts +0 -0
  148. package/types/components/Select/MultiSelect/__tests__/index.spec.d.ts +0 -0
  149. package/types/components/Select/MultiSelect/index.d.ts +0 -0
  150. package/types/components/Select/SingleSelect/Option.d.ts +0 -0
  151. package/types/components/Select/SingleSelect/OptionList.d.ts +0 -0
  152. package/types/components/Select/SingleSelect/__tests__/Option.spec.d.ts +0 -0
  153. package/types/components/Select/SingleSelect/__tests__/OptionList.spec.d.ts +0 -0
  154. package/types/components/Select/SingleSelect/__tests__/index.spec.d.ts +0 -0
  155. package/types/components/Select/SingleSelect/index.d.ts +0 -0
  156. package/types/components/Select/StyledSelect.d.ts +0 -0
  157. package/types/components/Select/__tests__/StyledSelect.spec.d.ts +0 -0
  158. package/types/components/Select/helpers.d.ts +0 -0
  159. package/types/components/Select/index.d.ts +0 -0
  160. package/types/components/Select/types.d.ts +0 -0
  161. package/types/components/Spinner/AnimatedSpinner.d.ts +0 -0
  162. package/types/components/Spinner/StyledSpinner.d.ts +0 -0
  163. package/types/components/Spinner/__tests__/AnimatedSpinner.spec.d.ts +0 -0
  164. package/types/components/Spinner/__tests__/StyledSpinner.spec.d.ts +0 -0
  165. package/types/components/Spinner/__tests__/index.spec.d.ts +0 -0
  166. package/types/components/Spinner/index.d.ts +0 -0
  167. package/types/components/Switch/StyledSwitch.d.ts +0 -0
  168. package/types/components/Switch/__tests__/StyledHeading.spec.d.ts +0 -0
  169. package/types/components/Switch/__tests__/index.spec.d.ts +0 -0
  170. package/types/components/Switch/index.d.ts +0 -0
  171. package/types/components/Tabs/ActiveTabIndicator.d.ts +0 -0
  172. package/types/components/Tabs/ScrollableTabs.d.ts +0 -0
  173. package/types/components/Tabs/StyledScrollableTabs.d.ts +0 -0
  174. package/types/components/Tabs/StyledTabs.d.ts +0 -0
  175. package/types/components/Tabs/__tests__/ScrollableTabs.spec.d.ts +0 -0
  176. package/types/components/Tabs/__tests__/index.spec.d.ts +0 -0
  177. package/types/components/Tabs/index.d.ts +0 -0
  178. package/types/components/Tabs/utils.d.ts +0 -0
  179. package/types/components/Tag/StyledTag.d.ts +0 -0
  180. package/types/components/Tag/__tests__/Tag.spec.d.ts +0 -0
  181. package/types/components/Tag/index.d.ts +0 -0
  182. package/types/components/TextInput/StyledTextInput.d.ts +82 -3
  183. package/types/components/TextInput/__tests__/StyledTextInput.spec.d.ts +0 -0
  184. package/types/components/TextInput/__tests__/index.spec.d.ts +0 -0
  185. package/types/components/TextInput/index.d.ts +33 -5
  186. package/types/components/Toast/StyledToast.d.ts +0 -0
  187. package/types/components/Toast/Toast.d.ts +0 -0
  188. package/types/components/Toast/ToastContainer.d.ts +0 -0
  189. package/types/components/Toast/ToastContext.d.ts +0 -0
  190. package/types/components/Toast/ToastProvider.d.ts +0 -0
  191. package/types/components/Toast/__tests__/Toast.spec.d.ts +0 -0
  192. package/types/components/Toast/__tests__/ToastContainer.spec.d.ts +0 -0
  193. package/types/components/Toast/index.d.ts +0 -0
  194. package/types/components/Toast/types.d.ts +0 -0
  195. package/types/components/Toolbar/StyledToolbar.d.ts +0 -0
  196. package/types/components/Toolbar/ToolbarGroup.d.ts +0 -0
  197. package/types/components/Toolbar/ToolbarItem.d.ts +0 -0
  198. package/types/components/Toolbar/__tests__/ToolbarGroup.spec.d.ts +0 -0
  199. package/types/components/Toolbar/__tests__/ToolbarItem.spec.d.ts +0 -0
  200. package/types/components/Toolbar/index.d.ts +0 -0
  201. package/types/components/Typography/Text/StyledText.d.ts +0 -0
  202. package/types/components/Typography/Text/__tests__/StyledText.spec.d.ts +0 -0
  203. package/types/components/Typography/Text/__tests__/index.spec.d.ts +0 -0
  204. package/types/components/Typography/Text/index.d.ts +0 -0
  205. package/types/components/Typography/index.d.ts +0 -0
  206. package/types/index.d.ts +0 -0
  207. package/types/testHelpers/renderWithTheme.d.ts +0 -0
  208. package/types/theme/__tests__/index.spec.d.ts +0 -0
  209. package/types/theme/components/alert.d.ts +0 -0
  210. package/types/theme/components/avatar.d.ts +0 -0
  211. package/types/theme/components/badge.d.ts +0 -0
  212. package/types/theme/components/bottomNavigation.d.ts +0 -0
  213. package/types/theme/components/bottomSheet.d.ts +0 -0
  214. package/types/theme/components/button.d.ts +6 -0
  215. package/types/theme/components/card.d.ts +0 -0
  216. package/types/theme/components/checkbox.d.ts +0 -0
  217. package/types/theme/components/contentNavigator.d.ts +0 -0
  218. package/types/theme/components/divider.d.ts +0 -0
  219. package/types/theme/components/drawer.d.ts +0 -0
  220. package/types/theme/components/fab.d.ts +0 -0
  221. package/types/theme/components/icon.d.ts +0 -0
  222. package/types/theme/components/list.d.ts +0 -0
  223. package/types/theme/components/progress.d.ts +0 -0
  224. package/types/theme/components/radio.d.ts +0 -0
  225. package/types/theme/components/sectionHeading.d.ts +0 -0
  226. package/types/theme/components/select.d.ts +0 -0
  227. package/types/theme/components/spinner.d.ts +0 -0
  228. package/types/theme/components/switch.d.ts +0 -0
  229. package/types/theme/components/tabs.d.ts +0 -0
  230. package/types/theme/components/tag.d.ts +0 -0
  231. package/types/theme/components/textInput.d.ts +61 -2
  232. package/types/theme/components/toast.d.ts +0 -0
  233. package/types/theme/components/toolbar.d.ts +0 -0
  234. package/types/theme/components/typography.d.ts +0 -0
  235. package/types/theme/global/borders.d.ts +0 -0
  236. package/types/theme/global/colors.d.ts +1 -0
  237. package/types/theme/global/index.d.ts +1 -0
  238. package/types/theme/global/scale.d.ts +0 -0
  239. package/types/theme/global/space.d.ts +0 -0
  240. package/types/theme/global/typography.d.ts +0 -0
  241. package/types/theme/index.d.ts +0 -0
  242. package/types/types.d.ts +2 -1
  243. package/types/utils/__tests__/scale.spec.d.ts +0 -0
  244. package/types/utils/helpers.d.ts +0 -0
  245. package/types/utils/hooks.d.ts +0 -0
  246. package/types/utils/scale.d.ts +0 -0
  247. package/.expo/README.md +0 -15
  248. package/.expo/packager-info.json +0 -10
  249. package/.expo/prebuild/cached-packages.json +0 -4
  250. package/.expo/settings.json +0 -10
  251. package/.expo/xcodebuild-error.log +0 -2
  252. package/.expo/xcodebuild.log +0 -11199
@@ -20,34 +20,54 @@ exports[`rendering renders correctly when bottom sheet is NOT visible 1`] = `
20
20
  }
21
21
  >
22
22
  <View
23
+ pointerEvents="auto"
23
24
  style={
24
25
  Array [
25
26
  Object {
26
- "alignItems": "center",
27
- "borderRadius": 8,
28
- "borderWidth": 1,
29
- "flexDirection": "row",
30
- "padding": 16,
31
- "position": "relative",
27
+ "marginVertical": 8,
32
28
  "width": "100%",
33
29
  },
34
30
  undefined,
35
31
  ]
36
32
  }
37
33
  >
38
- <Text
34
+ <View
39
35
  style={
40
36
  Array [
41
37
  Object {
42
- "color": "#292a2b",
43
- "fontFamily": "BeVietnamPro-Regular",
44
- "fontSize": 12,
45
- "letterSpacing": 0.36,
46
- "lineHeight": 20,
38
+ "alignItems": "center",
39
+ "flexDirection": "row",
40
+ "padding": 16,
47
41
  },
42
+ undefined,
43
+ ]
44
+ }
45
+ >
46
+ <View
47
+ style={
48
+ Array [
49
+ Object {
50
+ "borderColor": "#8b8d92",
51
+ "borderRadius": 8,
52
+ "borderWidth": 1,
53
+ "bottom": 0,
54
+ "left": 0,
55
+ "position": "absolute",
56
+ "right": 0,
57
+ "top": 0,
58
+ },
59
+ undefined,
60
+ ]
61
+ }
62
+ themeVariant="readonly"
63
+ />
64
+ <View
65
+ pointerEvents="none"
66
+ style={
48
67
  Array [
49
68
  Object {
50
69
  "backgroundColor": "#ffffff",
70
+ "flexDirection": "row",
51
71
  "left": 16,
52
72
  "paddingHorizontal": 4,
53
73
  "position": "absolute",
@@ -55,49 +75,106 @@ exports[`rendering renders correctly when bottom sheet is NOT visible 1`] = `
55
75
  "zIndex": 1,
56
76
  },
57
77
  undefined,
58
- ],
59
- ]
60
- }
61
- testID="input-label"
62
- themeFontSize="small"
63
- themeFontWeight="regular"
64
- themeIntent="body"
65
- >
66
- Allow notifications
67
- </Text>
68
- <TextInput
69
- editable={false}
70
- multiline={true}
71
- onPressIn={[Function]}
78
+ ]
79
+ }
80
+ >
81
+ <Text
82
+ style={
83
+ Array [
84
+ Object {
85
+ "color": "#292a2b",
86
+ "fontFamily": "BeVietnamPro-Regular",
87
+ "fontSize": 12,
88
+ "letterSpacing": 0.36,
89
+ "lineHeight": 20,
90
+ },
91
+ Array [
92
+ Object {
93
+ "color": "#8b8d92",
94
+ },
95
+ undefined,
96
+ ],
97
+ ]
98
+ }
99
+ testID="input-label"
100
+ themeFontSize="small"
101
+ themeFontWeight="regular"
102
+ themeIntent="body"
103
+ themeVariant="readonly"
104
+ >
105
+ Allow notifications
106
+ </Text>
107
+ </View>
108
+ <View
109
+ style={
110
+ Array [
111
+ Object {
112
+ "alignItems": "center",
113
+ "alignSelf": "stretch",
114
+ "flexDirection": "row",
115
+ "flexGrow": 2,
116
+ },
117
+ undefined,
118
+ ]
119
+ }
120
+ >
121
+ <TextInput
122
+ accessibilityState={
123
+ Object {
124
+ "disabled": false,
125
+ }
126
+ }
127
+ editable={false}
128
+ multiline={true}
129
+ onBlur={[Function]}
130
+ onChangeText={[Function]}
131
+ onFocus={[Function]}
132
+ onPressIn={[Function]}
133
+ style={
134
+ Array [
135
+ Object {
136
+ "alignSelf": "stretch",
137
+ "flexGrow": 2,
138
+ "fontSize": 14,
139
+ "marginHorizontal": 8,
140
+ "textAlignVertical": "center",
141
+ },
142
+ Object {
143
+ "color": "#292a2b",
144
+ },
145
+ ]
146
+ }
147
+ testID="text-input"
148
+ value="Monday"
149
+ />
150
+ </View>
151
+ <HeroIcon
152
+ name="arrow-down"
153
+ style={
154
+ Array [
155
+ Object {
156
+ "color": "#292a2b",
157
+ "fontSize": 16,
158
+ },
159
+ undefined,
160
+ ]
161
+ }
162
+ testID="input-suffix"
163
+ themeIntent="text"
164
+ themeSize="xsmall"
165
+ />
166
+ </View>
167
+ <View
72
168
  style={
73
169
  Array [
74
170
  Object {
75
171
  "flex": 1,
76
- "fontSize": 16,
77
- "marginHorizontal": 8,
78
- },
79
- Object {
80
- "color": "#292a2b",
81
- },
82
- ]
83
- }
84
- testID="text-input"
85
- value="Monday"
86
- />
87
- <HeroIcon
88
- name="arrow-down"
89
- style={
90
- Array [
91
- Object {
92
- "color": "#292a2b",
93
- "fontSize": 16,
172
+ "flexDirection": "row",
173
+ "justifyContent": "space-between",
94
174
  },
95
175
  undefined,
96
176
  ]
97
177
  }
98
- testID="input-suffix"
99
- themeIntent="text"
100
- themeSize="xsmall"
101
178
  />
102
179
  </View>
103
180
  <Modal
@@ -743,34 +820,54 @@ exports[`rendering renders correctly when bottom sheet is visible 1`] = `
743
820
  }
744
821
  >
745
822
  <View
823
+ pointerEvents="auto"
746
824
  style={
747
825
  Array [
748
826
  Object {
749
- "alignItems": "center",
750
- "borderRadius": 8,
751
- "borderWidth": 1,
752
- "flexDirection": "row",
753
- "padding": 16,
754
- "position": "relative",
827
+ "marginVertical": 8,
755
828
  "width": "100%",
756
829
  },
757
830
  undefined,
758
831
  ]
759
832
  }
760
833
  >
761
- <Text
834
+ <View
762
835
  style={
763
836
  Array [
764
837
  Object {
765
- "color": "#292a2b",
766
- "fontFamily": "BeVietnamPro-Regular",
767
- "fontSize": 12,
768
- "letterSpacing": 0.36,
769
- "lineHeight": 20,
838
+ "alignItems": "center",
839
+ "flexDirection": "row",
840
+ "padding": 16,
770
841
  },
842
+ undefined,
843
+ ]
844
+ }
845
+ >
846
+ <View
847
+ style={
848
+ Array [
849
+ Object {
850
+ "borderColor": "#8b8d92",
851
+ "borderRadius": 8,
852
+ "borderWidth": 1,
853
+ "bottom": 0,
854
+ "left": 0,
855
+ "position": "absolute",
856
+ "right": 0,
857
+ "top": 0,
858
+ },
859
+ undefined,
860
+ ]
861
+ }
862
+ themeVariant="readonly"
863
+ />
864
+ <View
865
+ pointerEvents="none"
866
+ style={
771
867
  Array [
772
868
  Object {
773
869
  "backgroundColor": "#ffffff",
870
+ "flexDirection": "row",
774
871
  "left": 16,
775
872
  "paddingHorizontal": 4,
776
873
  "position": "absolute",
@@ -778,49 +875,106 @@ exports[`rendering renders correctly when bottom sheet is visible 1`] = `
778
875
  "zIndex": 1,
779
876
  },
780
877
  undefined,
781
- ],
782
- ]
783
- }
784
- testID="input-label"
785
- themeFontSize="small"
786
- themeFontWeight="regular"
787
- themeIntent="body"
788
- >
789
- Allow notifications
790
- </Text>
791
- <TextInput
792
- editable={false}
793
- multiline={true}
794
- onPressIn={[Function]}
878
+ ]
879
+ }
880
+ >
881
+ <Text
882
+ style={
883
+ Array [
884
+ Object {
885
+ "color": "#292a2b",
886
+ "fontFamily": "BeVietnamPro-Regular",
887
+ "fontSize": 12,
888
+ "letterSpacing": 0.36,
889
+ "lineHeight": 20,
890
+ },
891
+ Array [
892
+ Object {
893
+ "color": "#8b8d92",
894
+ },
895
+ undefined,
896
+ ],
897
+ ]
898
+ }
899
+ testID="input-label"
900
+ themeFontSize="small"
901
+ themeFontWeight="regular"
902
+ themeIntent="body"
903
+ themeVariant="readonly"
904
+ >
905
+ Allow notifications
906
+ </Text>
907
+ </View>
908
+ <View
909
+ style={
910
+ Array [
911
+ Object {
912
+ "alignItems": "center",
913
+ "alignSelf": "stretch",
914
+ "flexDirection": "row",
915
+ "flexGrow": 2,
916
+ },
917
+ undefined,
918
+ ]
919
+ }
920
+ >
921
+ <TextInput
922
+ accessibilityState={
923
+ Object {
924
+ "disabled": false,
925
+ }
926
+ }
927
+ editable={false}
928
+ multiline={true}
929
+ onBlur={[Function]}
930
+ onChangeText={[Function]}
931
+ onFocus={[Function]}
932
+ onPressIn={[Function]}
933
+ style={
934
+ Array [
935
+ Object {
936
+ "alignSelf": "stretch",
937
+ "flexGrow": 2,
938
+ "fontSize": 14,
939
+ "marginHorizontal": 8,
940
+ "textAlignVertical": "center",
941
+ },
942
+ Object {
943
+ "color": "#292a2b",
944
+ },
945
+ ]
946
+ }
947
+ testID="text-input"
948
+ value="Monday"
949
+ />
950
+ </View>
951
+ <HeroIcon
952
+ name="arrow-down"
953
+ style={
954
+ Array [
955
+ Object {
956
+ "color": "#292a2b",
957
+ "fontSize": 16,
958
+ },
959
+ undefined,
960
+ ]
961
+ }
962
+ testID="input-suffix"
963
+ themeIntent="text"
964
+ themeSize="xsmall"
965
+ />
966
+ </View>
967
+ <View
795
968
  style={
796
969
  Array [
797
970
  Object {
798
971
  "flex": 1,
799
- "fontSize": 16,
800
- "marginHorizontal": 8,
801
- },
802
- Object {
803
- "color": "#292a2b",
804
- },
805
- ]
806
- }
807
- testID="text-input"
808
- value="Monday"
809
- />
810
- <HeroIcon
811
- name="arrow-down"
812
- style={
813
- Array [
814
- Object {
815
- "color": "#292a2b",
816
- "fontSize": 16,
972
+ "flexDirection": "row",
973
+ "justifyContent": "space-between",
817
974
  },
818
975
  undefined,
819
976
  ]
820
977
  }
821
- testID="input-suffix"
822
- themeIntent="text"
823
- themeSize="xsmall"
824
978
  />
825
979
  </View>
826
980
  <Modal
@@ -1,30 +1,152 @@
1
- import { TextInput, View } from 'react-native';
1
+ import { TextInput, View, StyleSheet } from 'react-native';
2
2
  import styled from '@emotion/native';
3
3
  import Typography from '../Typography';
4
4
 
5
- const Container = styled(View)(({ theme }) => ({
6
- position: 'relative',
5
+ export type Variant =
6
+ | 'default'
7
+ | 'filled'
8
+ | 'focused'
9
+ | 'disabled'
10
+ | 'readonly'
11
+ | 'error';
12
+
13
+ const StyledContainer = styled(View)(({ theme }) => ({
7
14
  width: '100%',
8
- borderWidth: theme.__hd__.textInput.borderWidths.container,
9
- borderRadius: theme.__hd__.textInput.radii.container,
10
- padding: theme.__hd__.textInput.space.containerPadding,
11
- flexDirection: 'row',
12
- alignItems: 'center',
15
+ marginVertical: theme.__hd__.textInput.space.containerMarginVertical,
13
16
  }));
14
17
 
15
- const Label = styled(Typography.Text)(({ theme }) => ({
18
+ const StyledLabelContainer = styled(View)(({ theme }) => ({
16
19
  position: 'absolute',
20
+ flexDirection: 'row',
17
21
  left: theme.__hd__.textInput.space.labelLeft,
18
22
  top: theme.__hd__.textInput.space.labelTop,
19
23
  backgroundColor: theme.__hd__.textInput.colors.labelBackground,
20
24
  zIndex: 1,
21
25
  paddingHorizontal: theme.__hd__.textInput.space.labelHorizontalPadding,
22
26
  }));
27
+ const StyledLabel = styled(Typography.Text)<{
28
+ themeVariant: Variant;
29
+ }>(({ theme, themeVariant }) => ({
30
+ color: theme.__hd__.textInput.colors.labels[themeVariant],
31
+ }));
23
32
 
24
- const StyledTextInput = styled(TextInput)(({ theme }) => ({
33
+ const StyledAsteriskLabel = styled(Typography.Text)<{
34
+ themeVariant: Variant;
35
+ }>(({ theme, themeVariant }) => ({
36
+ color: theme.__hd__.textInput.colors.asterisks[themeVariant],
37
+ }));
38
+
39
+ const StyledLabelContainerInsideTextInput = styled(View)((): any => ({
40
+ flexDirection: 'row',
41
+ zIndex: 9999,
42
+ alignItems: 'center',
43
+ ...StyleSheet.absoluteFillObject,
44
+ }));
45
+
46
+ const StyledLabelInsideTextInput = styled(Typography.Text)<{
47
+ themeVariant: Variant;
48
+ }>(({ theme, themeVariant }) => ({
49
+ textAlignVertical: 'center',
50
+ alignContent: 'center',
51
+ fontSize: theme.__hd__.textInput.fontSizes.labelInsideTextInput,
52
+ alignItems: 'center',
53
+ color: theme.__hd__.textInput.colors.labelsInsideTextInput[themeVariant],
54
+ }));
55
+
56
+ const StyledAsteriskLabelInsideTextInput = styled(Typography.Text)<{
57
+ themeVariant: Variant;
58
+ }>(({ theme, themeVariant }) => ({
59
+ color: theme.__hd__.textInput.colors.asterisks[themeVariant],
60
+ fontSize: theme.__hd__.textInput.fontSizes.asteriskLabel,
61
+ }));
62
+ const StyledErrorContainer = styled(View)(({ theme }) => ({
63
+ marginLeft: theme.__hd__.textInput.space.errorContainerMarginLeft,
64
+ marginRight: theme.__hd__.textInput.space.errorContainerMarginRight,
65
+ flexDirection: 'row',
66
+ alignItems: 'center',
67
+ flex: 1,
68
+ flexGrow: 4,
69
+ }));
70
+
71
+ const StyledError = styled(Typography.Text)(({ theme }) => ({
72
+ color: theme.__hd__.textInput.colors.error,
73
+ fontSize: theme.__hd__.textInput.fontSizes.error,
74
+ marginLeft: theme.__hd__.textInput.space.errorMarginLeft,
75
+ }));
76
+
77
+ const StyledMaxLengthMessage = styled(Typography.Text)<{
78
+ themeVariant: Variant;
79
+ }>(({ theme, themeVariant }) => ({
80
+ color: theme.__hd__.textInput.colors.maxLengthLabels[themeVariant],
81
+ fontSize: theme.__hd__.textInput.fontSizes.maxLength,
82
+ marginRight: theme.__hd__.textInput.space.maxLengthLabelMarginLeft,
83
+ alignSelf: 'flex-end',
25
84
  flex: 1,
85
+ flexGrow: 1,
86
+ textAlign: 'right',
87
+ }));
88
+
89
+ const StyledHelperText = styled(Typography.Text)(({ theme }) => ({
90
+ fontSize: theme.__hd__.textInput.fontSizes.error,
91
+ marginLeft: theme.__hd__.textInput.space.errorMarginLeft,
92
+ }));
93
+
94
+ const StyledTextInput = styled(TextInput)(({ theme }) => ({
95
+ textAlignVertical: 'center',
26
96
  fontSize: theme.__hd__.textInput.fontSizes.text,
97
+ alignSelf: 'stretch',
98
+ flexGrow: 2,
27
99
  marginHorizontal: theme.__hd__.textInput.space.inputHorizontalMargin,
28
100
  }));
29
101
 
30
- export { Container, Label, StyledTextInput };
102
+ const StyledBorderBackDrop = styled(View)<{
103
+ themeVariant: Variant;
104
+ }>(({ theme, themeVariant }) => ({
105
+ ...StyleSheet.absoluteFillObject,
106
+ borderWidth:
107
+ themeVariant === 'focused'
108
+ ? theme.__hd__.textInput.borderWidths.container.focused
109
+ : theme.__hd__.textInput.borderWidths.container.normal,
110
+ borderRadius: theme.__hd__.textInput.radii.container,
111
+ borderColor:
112
+ theme.__hd__.textInput.colors.borders[themeVariant] ??
113
+ theme.__hd__.textInput.colors.borders.default,
114
+ }));
115
+
116
+ const StyledTextInputContainer = styled(View)(({ theme }) => ({
117
+ flexDirection: 'row',
118
+ alignItems: 'center',
119
+ padding: theme.__hd__.textInput.space.containerPadding,
120
+ }));
121
+
122
+ const StyledTextInputAndLabelContainer = styled(View)(() => ({
123
+ flexDirection: 'row',
124
+ alignItems: 'center',
125
+ alignSelf: 'stretch',
126
+ flexGrow: 2,
127
+ }));
128
+
129
+ const StyledErrorAndHelpTextContainer = styled(View)(() => ({
130
+ flex: 1,
131
+ flexDirection: 'row',
132
+ justifyContent: 'space-between',
133
+ }));
134
+
135
+ export {
136
+ StyledTextInputContainer,
137
+ StyledLabel,
138
+ StyledLabelContainer,
139
+ StyledAsteriskLabel,
140
+ StyledAsteriskLabelInsideTextInput,
141
+ StyledTextInput,
142
+ StyledError,
143
+ StyledMaxLengthMessage,
144
+ StyledLabelInsideTextInput,
145
+ StyledContainer,
146
+ StyledErrorContainer,
147
+ StyledHelperText,
148
+ StyledTextInputAndLabelContainer,
149
+ StyledLabelContainerInsideTextInput,
150
+ StyledErrorAndHelpTextContainer,
151
+ StyledBorderBackDrop,
152
+ };