@hero-design/rn 7.10.2 → 7.12.0

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 (103) hide show
  1. package/.turbo/turbo-build.log +8 -8
  2. package/assets/fonts/hero-icons.ttf +0 -0
  3. package/es/index.js +3778 -728
  4. package/global-setup.js +3 -0
  5. package/jest.config.js +1 -0
  6. package/lib/assets/fonts/hero-icons.ttf +0 -0
  7. package/lib/index.js +3779 -726
  8. package/package.json +7 -3
  9. package/rollup.config.js +8 -1
  10. package/src/components/ContentNavigator/__tests__/__snapshots__/index.spec.tsx.snap +2 -0
  11. package/src/components/ContentNavigator/__tests__/index.spec.tsx +19 -2
  12. package/src/components/ContentNavigator/index.tsx +12 -1
  13. package/src/components/FAB/ActionGroup/__tests__/__snapshots__/index.spec.tsx.snap +4 -0
  14. package/src/components/FAB/ActionGroup/index.tsx +16 -5
  15. package/src/components/Icon/HeroIcon/selection.json +1 -1
  16. package/src/components/Icon/IconList.ts +1 -0
  17. package/src/components/PinInput/PinCell.tsx +34 -0
  18. package/src/components/PinInput/StyledPinInput.tsx +88 -0
  19. package/src/components/PinInput/__tests__/PinCell.spec.tsx +48 -0
  20. package/src/components/PinInput/__tests__/StyledPinInput.spec.tsx +22 -0
  21. package/src/components/PinInput/__tests__/__snapshots__/PinCell.spec.tsx.snap +186 -0
  22. package/src/components/PinInput/__tests__/__snapshots__/StyledPinInput.spec.tsx.snap +58 -0
  23. package/src/components/PinInput/__tests__/__snapshots__/index.spec.tsx.snap +1028 -0
  24. package/src/components/PinInput/__tests__/index.spec.tsx +91 -0
  25. package/src/components/PinInput/index.tsx +173 -0
  26. package/src/components/Select/MultiSelect/Option.tsx +1 -1
  27. package/src/components/Select/MultiSelect/OptionList.tsx +48 -26
  28. package/src/components/Select/MultiSelect/__tests__/OptionList.spec.tsx +13 -0
  29. package/src/components/Select/MultiSelect/__tests__/__snapshots__/OptionList.spec.tsx.snap +1062 -556
  30. package/src/components/Select/MultiSelect/__tests__/__snapshots__/index.spec.tsx.snap +983 -889
  31. package/src/components/Select/MultiSelect/index.tsx +59 -31
  32. package/src/components/Select/SingleSelect/OptionList.tsx +45 -26
  33. package/src/components/Select/SingleSelect/__tests__/OptionList.spec.tsx +8 -0
  34. package/src/components/Select/SingleSelect/__tests__/__snapshots__/OptionList.spec.tsx.snap +992 -500
  35. package/src/components/Select/SingleSelect/__tests__/__snapshots__/index.spec.tsx.snap +880 -786
  36. package/src/components/Select/SingleSelect/index.tsx +60 -31
  37. package/src/components/Select/StyledOptionList.tsx +88 -0
  38. package/src/components/Select/StyledSelect.tsx +18 -16
  39. package/src/components/Select/__tests__/StyledSelect.spec.tsx +1 -14
  40. package/src/components/Select/__tests__/__snapshots__/StyledSelect.spec.tsx.snap +0 -13
  41. package/src/components/Select/types.tsx +47 -0
  42. package/src/components/TextInput/__tests__/index.spec.tsx +15 -0
  43. package/src/components/TextInput/index.tsx +20 -16
  44. package/src/components/TimePicker/StyledTimePicker.tsx +8 -0
  45. package/src/components/TimePicker/TimePickerAndroid.tsx +61 -0
  46. package/src/components/TimePicker/TimePickerIOS.tsx +91 -0
  47. package/src/components/TimePicker/__tests__/TimePicker.spec.tsx +34 -0
  48. package/src/components/TimePicker/__tests__/TimePickerAndroid.spec.tsx +39 -0
  49. package/src/components/TimePicker/__tests__/TimePickerIOS.spec.tsx +46 -0
  50. package/src/components/TimePicker/__tests__/__snapshots__/TimePickerAndroid.spec.tsx.snap +200 -0
  51. package/src/components/TimePicker/__tests__/__snapshots__/TimePickerIOS.spec.tsx.snap +513 -0
  52. package/src/components/TimePicker/index.tsx +15 -0
  53. package/src/components/TimePicker/types.ts +50 -0
  54. package/src/components/Typography/Text/StyledText.tsx +1 -1
  55. package/src/components/Typography/Text/__tests__/StyledText.spec.tsx +1 -0
  56. package/src/components/Typography/Text/__tests__/__snapshots__/StyledText.spec.tsx.snap +22 -0
  57. package/src/components/Typography/Text/index.tsx +1 -1
  58. package/src/index.ts +4 -0
  59. package/src/theme/__tests__/__snapshots__/index.spec.ts.snap +44 -0
  60. package/src/theme/components/pinInput.ts +45 -0
  61. package/src/theme/components/select.ts +4 -0
  62. package/src/theme/components/timePicker.ts +11 -0
  63. package/src/theme/components/typography.ts +2 -0
  64. package/src/theme/global/colors.ts +1 -1
  65. package/src/theme/global/space.ts +10 -10
  66. package/src/theme/index.ts +9 -3
  67. package/testUtils/setup.tsx +10 -0
  68. package/types/components/ContentNavigator/index.d.ts +5 -1
  69. package/types/components/Icon/IconList.d.ts +1 -1
  70. package/types/components/Icon/utils.d.ts +1 -1
  71. package/types/components/PinInput/PinCell.d.ts +8 -0
  72. package/types/components/PinInput/StyledPinInput.d.ts +73 -0
  73. package/types/components/PinInput/__tests__/PinCell.spec.d.ts +1 -0
  74. package/types/components/PinInput/__tests__/StyledPinInput.spec.d.ts +1 -0
  75. package/types/components/PinInput/__tests__/index.spec.d.ts +1 -0
  76. package/types/components/PinInput/index.d.ts +48 -0
  77. package/types/components/Select/MultiSelect/OptionList.d.ts +1 -1
  78. package/types/components/Select/MultiSelect/index.d.ts +3 -25
  79. package/types/components/Select/SingleSelect/OptionList.d.ts +1 -1
  80. package/types/components/Select/SingleSelect/index.d.ts +4 -26
  81. package/types/components/Select/StyledOptionList.d.ts +17 -0
  82. package/types/components/Select/StyledSelect.d.ts +7 -7
  83. package/types/components/Select/index.d.ts +1 -1
  84. package/types/components/Select/types.d.ts +44 -0
  85. package/types/components/TimePicker/StyledTimePicker.d.ts +8 -0
  86. package/types/components/TimePicker/TimePickerAndroid.d.ts +3 -0
  87. package/types/components/TimePicker/TimePickerIOS.d.ts +3 -0
  88. package/types/components/TimePicker/__tests__/TimePicker.spec.d.ts +1 -0
  89. package/types/components/TimePicker/__tests__/TimePickerAndroid.spec.d.ts +1 -0
  90. package/types/components/TimePicker/__tests__/TimePickerIOS.spec.d.ts +1 -0
  91. package/types/components/TimePicker/index.d.ts +3 -0
  92. package/types/components/TimePicker/types.d.ts +49 -0
  93. package/types/components/Typography/Text/StyledText.d.ts +1 -1
  94. package/types/components/Typography/Text/index.d.ts +1 -1
  95. package/types/index.d.ts +3 -1
  96. package/types/theme/components/pinInput.d.ts +35 -0
  97. package/types/theme/components/select.d.ts +4 -0
  98. package/types/theme/components/timePicker.d.ts +6 -0
  99. package/types/theme/components/typography.d.ts +2 -0
  100. package/types/theme/index.d.ts +6 -2
  101. package/src/components/Select/types.ts +0 -1
  102. package/src/components/TextInput/__tests__/.log/ti-10343.log +0 -62
  103. package/src/components/TextInput/__tests__/.log/tsserver.log +0 -15584
@@ -0,0 +1,46 @@
1
+ import { fireEvent } from '@testing-library/react-native';
2
+ import React from 'react';
3
+ import { ModalProps } from 'react-native';
4
+
5
+ import renderWithTheme from '../../../testHelpers/renderWithTheme';
6
+ import TimePickerIOS from '../TimePickerIOS';
7
+
8
+ jest.mock('react-native/Libraries/Modal/Modal', () => {
9
+ const Modal = jest.requireActual('react-native/Libraries/Modal/Modal');
10
+ return (props: ModalProps) => <Modal {...props} />;
11
+ });
12
+
13
+ describe('TimePickerIOS', () => {
14
+ it('renders correctly', () => {
15
+ const onChange = jest.fn();
16
+ const { getByText, queryByTestId, toJSON } = renderWithTheme(
17
+ <TimePickerIOS
18
+ value={new Date('December 17, 1995 03:24:00')}
19
+ label="Break time"
20
+ confirmLabel="Confirm"
21
+ onChange={onChange}
22
+ />
23
+ );
24
+
25
+ expect(getByText('Break time')).toBeDefined();
26
+ expect(queryByTestId('text-input').props.value).toBe('03:24 AM');
27
+ expect(queryByTestId('timePickerIOS')).toBeNull();
28
+
29
+ // Open time picker
30
+ fireEvent.press(getByText('Break time'));
31
+ expect(queryByTestId('timePickerIOS')).toBeTruthy();
32
+
33
+ expect(toJSON()).toMatchSnapshot();
34
+
35
+ // Change time
36
+ fireEvent(
37
+ queryByTestId('timePickerIOS'),
38
+ 'onChange',
39
+ null,
40
+ new Date('December 17, 1995 05:30:00')
41
+ );
42
+ fireEvent.press(getByText('Confirm'));
43
+
44
+ expect(onChange).toBeCalledWith(new Date('December 17, 1995 05:30:00'));
45
+ });
46
+ });
@@ -0,0 +1,200 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`TimePickerAndroid renders correctly 1`] = `
4
+ <View
5
+ accessible={true}
6
+ focusable={true}
7
+ onClick={[Function]}
8
+ onResponderGrant={[Function]}
9
+ onResponderMove={[Function]}
10
+ onResponderRelease={[Function]}
11
+ onResponderTerminate={[Function]}
12
+ onResponderTerminationRequest={[Function]}
13
+ onStartShouldSetResponder={[Function]}
14
+ style={
15
+ Object {
16
+ "opacity": 1,
17
+ }
18
+ }
19
+ >
20
+ <View
21
+ pointerEvents="none"
22
+ testID="timePickerInputAndroid"
23
+ >
24
+ <View
25
+ pointerEvents="auto"
26
+ style={
27
+ Array [
28
+ Object {
29
+ "marginVertical": 8,
30
+ "width": "100%",
31
+ },
32
+ undefined,
33
+ ]
34
+ }
35
+ >
36
+ <View
37
+ style={
38
+ Array [
39
+ Object {
40
+ "alignItems": "center",
41
+ "flexDirection": "row",
42
+ "padding": 16,
43
+ },
44
+ undefined,
45
+ ]
46
+ }
47
+ >
48
+ <View
49
+ style={
50
+ Array [
51
+ Object {
52
+ "borderColor": "#292a2b",
53
+ "borderRadius": 8,
54
+ "borderWidth": 1,
55
+ "bottom": 0,
56
+ "left": 0,
57
+ "position": "absolute",
58
+ "right": 0,
59
+ "top": 0,
60
+ },
61
+ undefined,
62
+ ]
63
+ }
64
+ themeVariant="filled"
65
+ />
66
+ <View
67
+ pointerEvents="none"
68
+ style={
69
+ Array [
70
+ Object {
71
+ "backgroundColor": "#ffffff",
72
+ "flexDirection": "row",
73
+ "left": 16,
74
+ "paddingHorizontal": 4,
75
+ "position": "absolute",
76
+ "top": -10,
77
+ "zIndex": 1,
78
+ },
79
+ undefined,
80
+ ]
81
+ }
82
+ >
83
+ <Text
84
+ style={
85
+ Array [
86
+ Object {
87
+ "color": "#292a2b",
88
+ "fontFamily": "BeVietnamPro-Regular",
89
+ "fontSize": 12,
90
+ "letterSpacing": 0.36,
91
+ "lineHeight": 20,
92
+ },
93
+ Array [
94
+ Object {
95
+ "color": "#292a2b",
96
+ },
97
+ undefined,
98
+ ],
99
+ ]
100
+ }
101
+ testID="input-label"
102
+ themeFontSize="small"
103
+ themeFontWeight="regular"
104
+ themeIntent="body"
105
+ themeVariant="filled"
106
+ >
107
+ Break time
108
+ </Text>
109
+ </View>
110
+ <View
111
+ style={
112
+ Array [
113
+ Object {
114
+ "alignItems": "center",
115
+ "alignSelf": "stretch",
116
+ "flexDirection": "row",
117
+ "flexGrow": 2,
118
+ },
119
+ undefined,
120
+ ]
121
+ }
122
+ >
123
+ <TextInput
124
+ accessibilityState={
125
+ Object {
126
+ "disabled": false,
127
+ }
128
+ }
129
+ editable={true}
130
+ onBlur={[Function]}
131
+ onChangeText={[Function]}
132
+ onFocus={[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="03:24 AM"
149
+ />
150
+ </View>
151
+ <HeroIcon
152
+ name="clock-3"
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
168
+ style={
169
+ Array [
170
+ Object {
171
+ "paddingLeft": 16,
172
+ },
173
+ undefined,
174
+ ]
175
+ }
176
+ >
177
+ <View
178
+ style={
179
+ Array [
180
+ Object {
181
+ "flexDirection": "row",
182
+ "justifyContent": "space-between",
183
+ },
184
+ undefined,
185
+ ]
186
+ }
187
+ />
188
+ </View>
189
+ </View>
190
+ </View>
191
+ <Picker
192
+ display="default"
193
+ is24Hour={false}
194
+ mode="time"
195
+ onChange={[Function]}
196
+ testID="timePickerAndroid"
197
+ value={1995-12-17T03:24:00.000Z}
198
+ />
199
+ </View>
200
+ `;