etendo-ui-library 1.0.77 → 1.0.78
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.
- package/components/button/Button.stories.tsx +7 -17
- package/components/button/Button.styles.tsx +12 -48
- package/components/button/Button.tsx +79 -12
- package/components/button/Button.types.tsx +3 -14
- package/components/button/__snapshots__/Button.test.tsx.snap +15 -13
- package/components/tab/Tab.tsx +29 -6
- package/components/tab/__snapshots__/Tab.test.tsx.snap +85 -60
- package/package.json +1 -1
- package/styles/colors.ts +5 -0
|
@@ -6,6 +6,7 @@ import {View} from 'react-native';
|
|
|
6
6
|
import {styles} from './Button.styles';
|
|
7
7
|
import addMarginContainer from '../../helpers/addMargin';
|
|
8
8
|
import {CheckIcon} from '../../assets/images/icons/CheckIcon';
|
|
9
|
+
import {WHITE} from '../../styles/colors';
|
|
9
10
|
|
|
10
11
|
const meta: Meta = {
|
|
11
12
|
title: 'Etendo/Button',
|
|
@@ -28,7 +29,7 @@ const Template1: Story<ButtonProps> = args => (
|
|
|
28
29
|
onPress={() => {}}
|
|
29
30
|
image={
|
|
30
31
|
<CheckIcon
|
|
31
|
-
fill={
|
|
32
|
+
fill={WHITE}
|
|
32
33
|
style={{
|
|
33
34
|
marginRight: 10,
|
|
34
35
|
width: 12,
|
|
@@ -38,9 +39,7 @@ const Template1: Story<ButtonProps> = args => (
|
|
|
38
39
|
}
|
|
39
40
|
text={'Primary'}
|
|
40
41
|
typeStyle={'primary'}
|
|
41
|
-
|
|
42
|
-
width={150}
|
|
43
|
-
height={50}
|
|
42
|
+
width={'full'}
|
|
44
43
|
/>
|
|
45
44
|
</View>
|
|
46
45
|
<View style={styles.storiesButtonContainer}>
|
|
@@ -57,9 +56,7 @@ const Template1: Story<ButtonProps> = args => (
|
|
|
57
56
|
}
|
|
58
57
|
text={'Secondary'}
|
|
59
58
|
typeStyle={'secondary'}
|
|
60
|
-
|
|
61
|
-
width={150}
|
|
62
|
-
height={50}
|
|
59
|
+
width={'full'}
|
|
63
60
|
/>
|
|
64
61
|
</View>
|
|
65
62
|
<View style={styles.storiesButtonContainer}>
|
|
@@ -76,9 +73,7 @@ const Template1: Story<ButtonProps> = args => (
|
|
|
76
73
|
}
|
|
77
74
|
text={'Terciary'}
|
|
78
75
|
typeStyle={'terciary'}
|
|
79
|
-
|
|
80
|
-
width={150}
|
|
81
|
-
height={50}
|
|
76
|
+
width={'full'}
|
|
82
77
|
/>
|
|
83
78
|
</View>
|
|
84
79
|
<View style={styles.storiesButtonContainer}>
|
|
@@ -95,9 +90,7 @@ const Template1: Story<ButtonProps> = args => (
|
|
|
95
90
|
}
|
|
96
91
|
text={'White'}
|
|
97
92
|
typeStyle={'white'}
|
|
98
|
-
|
|
99
|
-
width={150}
|
|
100
|
-
height={50}
|
|
93
|
+
width={'full'}
|
|
101
94
|
/>
|
|
102
95
|
</View>
|
|
103
96
|
<View style={styles.storiesButtonContainer}>
|
|
@@ -114,9 +107,7 @@ const Template1: Story<ButtonProps> = args => (
|
|
|
114
107
|
}
|
|
115
108
|
text={'WhiteBorder'}
|
|
116
109
|
typeStyle={'whiteBorder'}
|
|
117
|
-
|
|
118
|
-
width={150}
|
|
119
|
-
height={50}
|
|
110
|
+
width={'full'}
|
|
120
111
|
/>
|
|
121
112
|
</View>
|
|
122
113
|
</View>
|
|
@@ -129,7 +120,6 @@ ButtonDefault.args = {
|
|
|
129
120
|
text: 'Button',
|
|
130
121
|
typeStyle: 'primary',
|
|
131
122
|
disabled: false,
|
|
132
|
-
typeSize: 'medium',
|
|
133
123
|
width: 150,
|
|
134
124
|
height: 50,
|
|
135
125
|
};
|
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
YELLOW,
|
|
9
9
|
YELLOW_30,
|
|
10
10
|
} from '../../styles/colors';
|
|
11
|
-
import {
|
|
11
|
+
import {buttonStyleVariant} from './Button.types';
|
|
12
12
|
|
|
13
13
|
export const ButtonStyleVariant: buttonStyleVariant = {
|
|
14
14
|
primary: {
|
|
@@ -17,14 +17,13 @@ export const ButtonStyleVariant: buttonStyleVariant = {
|
|
|
17
17
|
borderRadius: 5,
|
|
18
18
|
flexDirection: 'row',
|
|
19
19
|
justifyContent: 'center',
|
|
20
|
-
width: '100%',
|
|
21
20
|
height: '100%',
|
|
22
21
|
alignItems: 'center',
|
|
22
|
+
padding: 24,
|
|
23
23
|
},
|
|
24
24
|
text: {
|
|
25
25
|
color: WHITE,
|
|
26
26
|
fontWeight: '600',
|
|
27
|
-
fontSize: 16,
|
|
28
27
|
},
|
|
29
28
|
containerDisabled: {
|
|
30
29
|
backgroundColor: GREY_BLUE_50,
|
|
@@ -37,9 +36,7 @@ export const ButtonStyleVariant: buttonStyleVariant = {
|
|
|
37
36
|
color: WHITE,
|
|
38
37
|
fontWeight: 'bold',
|
|
39
38
|
},
|
|
40
|
-
imageColor:
|
|
41
|
-
tintColor: WHITE,
|
|
42
|
-
},
|
|
39
|
+
imageColor: WHITE,
|
|
43
40
|
},
|
|
44
41
|
secondary: {
|
|
45
42
|
container: {
|
|
@@ -48,6 +45,7 @@ export const ButtonStyleVariant: buttonStyleVariant = {
|
|
|
48
45
|
flexDirection: 'row',
|
|
49
46
|
alignItems: 'center',
|
|
50
47
|
justifyContent: 'center',
|
|
48
|
+
padding: 24,
|
|
51
49
|
},
|
|
52
50
|
text: {
|
|
53
51
|
color: BLUE,
|
|
@@ -64,9 +62,7 @@ export const ButtonStyleVariant: buttonStyleVariant = {
|
|
|
64
62
|
color: GREY_BLUE_50,
|
|
65
63
|
fontWeight: 'bold',
|
|
66
64
|
},
|
|
67
|
-
imageColor:
|
|
68
|
-
tintColor: BLUE,
|
|
69
|
-
},
|
|
65
|
+
imageColor: BLUE,
|
|
70
66
|
},
|
|
71
67
|
terciary: {
|
|
72
68
|
container: {
|
|
@@ -75,6 +71,7 @@ export const ButtonStyleVariant: buttonStyleVariant = {
|
|
|
75
71
|
flexDirection: 'row',
|
|
76
72
|
justifyContent: 'center',
|
|
77
73
|
alignItems: 'center',
|
|
74
|
+
padding: 24,
|
|
78
75
|
},
|
|
79
76
|
text: {
|
|
80
77
|
color: BLUE,
|
|
@@ -91,9 +88,7 @@ export const ButtonStyleVariant: buttonStyleVariant = {
|
|
|
91
88
|
color: GREY_BLUE_50,
|
|
92
89
|
fontWeight: 'bold',
|
|
93
90
|
},
|
|
94
|
-
imageColor:
|
|
95
|
-
tintColor: BLUE,
|
|
96
|
-
},
|
|
91
|
+
imageColor: BLUE,
|
|
97
92
|
},
|
|
98
93
|
whiteBorder: {
|
|
99
94
|
container: {
|
|
@@ -104,6 +99,7 @@ export const ButtonStyleVariant: buttonStyleVariant = {
|
|
|
104
99
|
borderColor: BLUE,
|
|
105
100
|
justifyContent: 'center',
|
|
106
101
|
alignItems: 'center',
|
|
102
|
+
padding: 24,
|
|
107
103
|
},
|
|
108
104
|
text: {
|
|
109
105
|
color: BLUE,
|
|
@@ -122,9 +118,7 @@ export const ButtonStyleVariant: buttonStyleVariant = {
|
|
|
122
118
|
color: GREY_BLUE_50,
|
|
123
119
|
fontWeight: 'bold',
|
|
124
120
|
},
|
|
125
|
-
imageColor:
|
|
126
|
-
tintColor: BLUE,
|
|
127
|
-
},
|
|
121
|
+
imageColor: BLUE,
|
|
128
122
|
},
|
|
129
123
|
white: {
|
|
130
124
|
container: {
|
|
@@ -133,6 +127,7 @@ export const ButtonStyleVariant: buttonStyleVariant = {
|
|
|
133
127
|
flexDirection: 'row',
|
|
134
128
|
justifyContent: 'center',
|
|
135
129
|
alignItems: 'center',
|
|
130
|
+
padding: 24,
|
|
136
131
|
},
|
|
137
132
|
text: {
|
|
138
133
|
color: BLUE,
|
|
@@ -149,39 +144,7 @@ export const ButtonStyleVariant: buttonStyleVariant = {
|
|
|
149
144
|
color: GREY_BLUE_50,
|
|
150
145
|
fontWeight: 'bold',
|
|
151
146
|
},
|
|
152
|
-
imageColor:
|
|
153
|
-
tintColor: BLUE,
|
|
154
|
-
},
|
|
155
|
-
},
|
|
156
|
-
};
|
|
157
|
-
|
|
158
|
-
export const ButtonSizeVariant: buttonSizeVariant = {
|
|
159
|
-
small: {
|
|
160
|
-
containerSize: {
|
|
161
|
-
paddingVertical: 4,
|
|
162
|
-
paddingHorizontal: 8,
|
|
163
|
-
},
|
|
164
|
-
buttonSize: {
|
|
165
|
-
fontSize: 14,
|
|
166
|
-
},
|
|
167
|
-
},
|
|
168
|
-
medium: {
|
|
169
|
-
containerSize: {
|
|
170
|
-
paddingVertical: 10,
|
|
171
|
-
paddingHorizontal: 12,
|
|
172
|
-
},
|
|
173
|
-
buttonSize: {
|
|
174
|
-
fontSize: 18,
|
|
175
|
-
},
|
|
176
|
-
},
|
|
177
|
-
large: {
|
|
178
|
-
containerSize: {
|
|
179
|
-
paddingVertical: 14,
|
|
180
|
-
paddingHorizontal: 18,
|
|
181
|
-
},
|
|
182
|
-
buttonSize: {
|
|
183
|
-
fontSize: 20,
|
|
184
|
-
},
|
|
147
|
+
imageColor: BLUE,
|
|
185
148
|
},
|
|
186
149
|
};
|
|
187
150
|
|
|
@@ -192,6 +155,7 @@ export const styles = StyleSheet.create({
|
|
|
192
155
|
alignItems: 'flex-start',
|
|
193
156
|
flex: 1,
|
|
194
157
|
width: '100%',
|
|
158
|
+
|
|
195
159
|
justifyContent: 'space-between',
|
|
196
160
|
},
|
|
197
161
|
storiesButtonContainer: {
|
|
@@ -1,7 +1,15 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
|
|
1
|
+
import React, {useState} from 'react';
|
|
2
|
+
import {Pressable, Text, View} from 'react-native';
|
|
3
|
+
import {
|
|
4
|
+
BLUE,
|
|
5
|
+
BLUE_80,
|
|
6
|
+
LIGHT_PURPLE_60,
|
|
7
|
+
PURPLE,
|
|
8
|
+
WHITE,
|
|
9
|
+
YELLOW_50,
|
|
10
|
+
} from '../../styles/colors';
|
|
11
|
+
import {ButtonStyleVariant} from './Button.styles';
|
|
12
|
+
import {ButtonProps, ButtonStyleType} from './Button.types';
|
|
5
13
|
|
|
6
14
|
const Button = ({
|
|
7
15
|
text,
|
|
@@ -9,33 +17,92 @@ const Button = ({
|
|
|
9
17
|
typeStyle,
|
|
10
18
|
image,
|
|
11
19
|
disabled,
|
|
12
|
-
width,
|
|
20
|
+
width = 'auto',
|
|
13
21
|
height,
|
|
14
22
|
}: ButtonProps) => {
|
|
23
|
+
const [isHovered, setIsHovered] = useState(false);
|
|
24
|
+
|
|
25
|
+
const getHoveredBackgroundColor = (backgroundColor: ButtonStyleType) => {
|
|
26
|
+
switch (backgroundColor) {
|
|
27
|
+
case 'primary':
|
|
28
|
+
return BLUE_80;
|
|
29
|
+
case 'secondary':
|
|
30
|
+
return YELLOW_50;
|
|
31
|
+
case 'terciary':
|
|
32
|
+
return LIGHT_PURPLE_60;
|
|
33
|
+
case 'whiteBorder':
|
|
34
|
+
return BLUE;
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
const getHoveredTextColorAndViewColor = (typeStyle: ButtonStyleType) => {
|
|
38
|
+
switch (typeStyle) {
|
|
39
|
+
case 'white':
|
|
40
|
+
return PURPLE;
|
|
41
|
+
case 'whiteBorder':
|
|
42
|
+
return WHITE;
|
|
43
|
+
case 'primary':
|
|
44
|
+
return WHITE;
|
|
45
|
+
default:
|
|
46
|
+
return BLUE;
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
|
|
15
50
|
const stateStyleContainer = () => {
|
|
16
51
|
if (disabled) {
|
|
17
52
|
return ButtonStyleVariant[typeStyle].containerDisabled;
|
|
18
53
|
}
|
|
54
|
+
if (isHovered) {
|
|
55
|
+
const hoveredBackgroundColor = getHoveredBackgroundColor(typeStyle);
|
|
56
|
+
return {
|
|
57
|
+
...ButtonStyleVariant[typeStyle].container,
|
|
58
|
+
backgroundColor: hoveredBackgroundColor,
|
|
59
|
+
width: width === 'full' ? '100%' : width,
|
|
60
|
+
};
|
|
61
|
+
}
|
|
19
62
|
return ButtonStyleVariant[typeStyle].container;
|
|
20
63
|
};
|
|
64
|
+
const handleHoverIn = () => {
|
|
65
|
+
setIsHovered(true);
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
const handleHoverOut = () => {
|
|
69
|
+
setIsHovered(false);
|
|
70
|
+
};
|
|
21
71
|
|
|
22
72
|
const stateStyleText = () => {
|
|
23
73
|
if (disabled) {
|
|
24
74
|
return ButtonStyleVariant[typeStyle].textDisabled;
|
|
25
75
|
}
|
|
76
|
+
if (isHovered) {
|
|
77
|
+
const hoveredTextColor = getHoveredTextColorAndViewColor(typeStyle);
|
|
78
|
+
if (hoveredTextColor) {
|
|
79
|
+
return {
|
|
80
|
+
...ButtonStyleVariant[typeStyle].text,
|
|
81
|
+
color: hoveredTextColor,
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
}
|
|
26
85
|
return ButtonStyleVariant[typeStyle].text;
|
|
27
86
|
};
|
|
28
87
|
|
|
88
|
+
const newImage =
|
|
89
|
+
image &&
|
|
90
|
+
React.cloneElement(image, {
|
|
91
|
+
fill: isHovered
|
|
92
|
+
? getHoveredTextColorAndViewColor(typeStyle)
|
|
93
|
+
: ButtonStyleVariant[typeStyle].imageColor,
|
|
94
|
+
});
|
|
95
|
+
|
|
29
96
|
return (
|
|
30
|
-
<
|
|
31
|
-
|
|
97
|
+
<Pressable
|
|
98
|
+
onHoverIn={handleHoverIn}
|
|
99
|
+
onHoverOut={handleHoverOut}
|
|
100
|
+
style={[stateStyleContainer(), {height: height, width: width}]}
|
|
32
101
|
onPress={onPress}
|
|
33
102
|
>
|
|
34
|
-
<View>{image &&
|
|
35
|
-
<Text style={[stateStyleText()
|
|
36
|
-
|
|
37
|
-
</Text>
|
|
38
|
-
</TouchableOpacity>
|
|
103
|
+
<View>{image && newImage}</View>
|
|
104
|
+
<Text style={[stateStyleText()]}>{text}</Text>
|
|
105
|
+
</Pressable>
|
|
39
106
|
);
|
|
40
107
|
};
|
|
41
108
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {ColorValue, TextStyle, ViewStyle} from 'react-native';
|
|
2
2
|
|
|
3
3
|
export type ButtonStyleType =
|
|
4
4
|
| 'primary'
|
|
@@ -7,8 +7,6 @@ export type ButtonStyleType =
|
|
|
7
7
|
| 'whiteBorder'
|
|
8
8
|
| 'white';
|
|
9
9
|
|
|
10
|
-
export type ButtonSizeType = 'small' | 'medium' | 'large';
|
|
11
|
-
|
|
12
10
|
export type buttonStyleVariant = Record<
|
|
13
11
|
ButtonStyleType,
|
|
14
12
|
{
|
|
@@ -16,15 +14,7 @@ export type buttonStyleVariant = Record<
|
|
|
16
14
|
text: TextStyle;
|
|
17
15
|
containerDisabled: ViewStyle;
|
|
18
16
|
textDisabled: TextStyle;
|
|
19
|
-
imageColor:
|
|
20
|
-
}
|
|
21
|
-
>;
|
|
22
|
-
|
|
23
|
-
export type buttonSizeVariant = Record<
|
|
24
|
-
ButtonSizeType,
|
|
25
|
-
{
|
|
26
|
-
buttonSize: TextStyle;
|
|
27
|
-
containerSize: ViewStyle;
|
|
17
|
+
imageColor: ColorValue;
|
|
28
18
|
}
|
|
29
19
|
>;
|
|
30
20
|
|
|
@@ -34,7 +24,6 @@ export interface ButtonProps {
|
|
|
34
24
|
typeStyle: ButtonStyleType;
|
|
35
25
|
image?: React.ReactNode;
|
|
36
26
|
disabled?: boolean;
|
|
37
|
-
|
|
38
|
-
width?: number | string;
|
|
27
|
+
width?: number | string | 'full';
|
|
39
28
|
height?: number | string;
|
|
40
29
|
}
|
|
@@ -5,7 +5,9 @@ exports[`Running Test for Input Check Button disabled 1`] = `
|
|
|
5
5
|
accessible={true}
|
|
6
6
|
collapsable={false}
|
|
7
7
|
focusable={true}
|
|
8
|
+
onBlur={[Function]}
|
|
8
9
|
onClick={[Function]}
|
|
10
|
+
onFocus={[Function]}
|
|
9
11
|
onResponderGrant={[Function]}
|
|
10
12
|
onResponderMove={[Function]}
|
|
11
13
|
onResponderRelease={[Function]}
|
|
@@ -13,16 +15,19 @@ exports[`Running Test for Input Check Button disabled 1`] = `
|
|
|
13
15
|
onResponderTerminationRequest={[Function]}
|
|
14
16
|
onStartShouldSetResponder={[Function]}
|
|
15
17
|
style={
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
18
|
+
Array [
|
|
19
|
+
Object {
|
|
20
|
+
"alignItems": "center",
|
|
21
|
+
"backgroundColor": "#D3D6E1",
|
|
22
|
+
"borderRadius": 5,
|
|
23
|
+
"flexDirection": "row",
|
|
24
|
+
"justifyContent": "center",
|
|
25
|
+
},
|
|
26
|
+
Object {
|
|
27
|
+
"height": undefined,
|
|
28
|
+
"width": "auto",
|
|
29
|
+
},
|
|
30
|
+
]
|
|
26
31
|
}
|
|
27
32
|
>
|
|
28
33
|
<View>
|
|
@@ -90,9 +95,6 @@ exports[`Running Test for Input Check Button disabled 1`] = `
|
|
|
90
95
|
"color": "#FFFFFF",
|
|
91
96
|
"fontWeight": "bold",
|
|
92
97
|
},
|
|
93
|
-
Object {
|
|
94
|
-
"fontSize": 18,
|
|
95
|
-
},
|
|
96
98
|
]
|
|
97
99
|
}
|
|
98
100
|
>
|
package/components/tab/Tab.tsx
CHANGED
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
// Imports
|
|
2
|
-
import React from 'react';
|
|
3
|
-
import {View, Text, StyleSheet,
|
|
4
|
-
import {
|
|
2
|
+
import React, {useState} from 'react';
|
|
3
|
+
import {View, Text, StyleSheet, Pressable} from 'react-native';
|
|
4
|
+
import {
|
|
5
|
+
BLUE,
|
|
6
|
+
GREY_BLUE_30,
|
|
7
|
+
GREY_BLUE_50,
|
|
8
|
+
WHITE,
|
|
9
|
+
YELLOW,
|
|
10
|
+
} from '../../styles/colors';
|
|
5
11
|
import {TabProps} from './Tab.types';
|
|
6
12
|
|
|
7
13
|
const Tab = ({
|
|
@@ -12,21 +18,38 @@ const Tab = ({
|
|
|
12
18
|
fontFamily,
|
|
13
19
|
fontWeight,
|
|
14
20
|
}: TabProps) => {
|
|
21
|
+
const [hoveredTab, setHoveredTab] = useState<number | null>(null);
|
|
22
|
+
|
|
23
|
+
const handleHoverIn = (index: number) => {
|
|
24
|
+
setHoveredTab(index);
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
const handleHoverOut = () => {
|
|
28
|
+
setHoveredTab(null);
|
|
29
|
+
};
|
|
30
|
+
|
|
15
31
|
return (
|
|
16
32
|
<View style={styles.container}>
|
|
17
33
|
{tabInformation.map((tabItem: any, index: number) => (
|
|
18
|
-
<
|
|
34
|
+
<Pressable
|
|
19
35
|
key={index}
|
|
20
36
|
style={[
|
|
21
37
|
styles.tab,
|
|
22
38
|
{
|
|
23
39
|
flex: 1 / tabInformation.length,
|
|
24
|
-
backgroundColor:
|
|
40
|
+
backgroundColor:
|
|
41
|
+
index === selectedTab
|
|
42
|
+
? BLUE
|
|
43
|
+
: index === hoveredTab
|
|
44
|
+
? GREY_BLUE_30
|
|
45
|
+
: GREY_BLUE_50,
|
|
25
46
|
height: height,
|
|
26
47
|
borderTopColor: index === selectedTab ? YELLOW : 'transparent',
|
|
27
48
|
},
|
|
28
49
|
]}
|
|
29
50
|
onPress={() => (setSelectedTab ? setSelectedTab(index) : {})}
|
|
51
|
+
onHoverIn={() => handleHoverIn(index)}
|
|
52
|
+
onHoverOut={handleHoverOut}
|
|
30
53
|
>
|
|
31
54
|
<Text
|
|
32
55
|
style={{
|
|
@@ -37,7 +60,7 @@ const Tab = ({
|
|
|
37
60
|
>
|
|
38
61
|
{tabItem.name}
|
|
39
62
|
</Text>
|
|
40
|
-
</
|
|
63
|
+
</Pressable>
|
|
41
64
|
))}
|
|
42
65
|
</View>
|
|
43
66
|
);
|
|
@@ -13,7 +13,9 @@ exports[`Running Test for Tab Check Tab Disabled 1`] = `
|
|
|
13
13
|
accessible={true}
|
|
14
14
|
collapsable={false}
|
|
15
15
|
focusable={true}
|
|
16
|
+
onBlur={[Function]}
|
|
16
17
|
onClick={[Function]}
|
|
18
|
+
onFocus={[Function]}
|
|
17
19
|
onResponderGrant={[Function]}
|
|
18
20
|
onResponderMove={[Function]}
|
|
19
21
|
onResponderRelease={[Function]}
|
|
@@ -21,18 +23,21 @@ exports[`Running Test for Tab Check Tab Disabled 1`] = `
|
|
|
21
23
|
onResponderTerminationRequest={[Function]}
|
|
22
24
|
onStartShouldSetResponder={[Function]}
|
|
23
25
|
style={
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
26
|
+
Array [
|
|
27
|
+
Object {
|
|
28
|
+
"alignItems": "center",
|
|
29
|
+
"borderBottomColor": "#202452",
|
|
30
|
+
"borderBottomWidth": 3,
|
|
31
|
+
"borderTopWidth": 4,
|
|
32
|
+
"justifyContent": "center",
|
|
33
|
+
},
|
|
34
|
+
Object {
|
|
35
|
+
"backgroundColor": "#D3D6E1",
|
|
36
|
+
"borderTopColor": "transparent",
|
|
37
|
+
"flex": 0.2,
|
|
38
|
+
"height": 40,
|
|
39
|
+
},
|
|
40
|
+
]
|
|
36
41
|
}
|
|
37
42
|
>
|
|
38
43
|
<Text
|
|
@@ -51,7 +56,9 @@ exports[`Running Test for Tab Check Tab Disabled 1`] = `
|
|
|
51
56
|
accessible={true}
|
|
52
57
|
collapsable={false}
|
|
53
58
|
focusable={true}
|
|
59
|
+
onBlur={[Function]}
|
|
54
60
|
onClick={[Function]}
|
|
61
|
+
onFocus={[Function]}
|
|
55
62
|
onResponderGrant={[Function]}
|
|
56
63
|
onResponderMove={[Function]}
|
|
57
64
|
onResponderRelease={[Function]}
|
|
@@ -59,18 +66,21 @@ exports[`Running Test for Tab Check Tab Disabled 1`] = `
|
|
|
59
66
|
onResponderTerminationRequest={[Function]}
|
|
60
67
|
onStartShouldSetResponder={[Function]}
|
|
61
68
|
style={
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
69
|
+
Array [
|
|
70
|
+
Object {
|
|
71
|
+
"alignItems": "center",
|
|
72
|
+
"borderBottomColor": "#202452",
|
|
73
|
+
"borderBottomWidth": 3,
|
|
74
|
+
"borderTopWidth": 4,
|
|
75
|
+
"justifyContent": "center",
|
|
76
|
+
},
|
|
77
|
+
Object {
|
|
78
|
+
"backgroundColor": "#202452",
|
|
79
|
+
"borderTopColor": "#FAD614",
|
|
80
|
+
"flex": 0.2,
|
|
81
|
+
"height": 40,
|
|
82
|
+
},
|
|
83
|
+
]
|
|
74
84
|
}
|
|
75
85
|
>
|
|
76
86
|
<Text
|
|
@@ -89,7 +99,9 @@ exports[`Running Test for Tab Check Tab Disabled 1`] = `
|
|
|
89
99
|
accessible={true}
|
|
90
100
|
collapsable={false}
|
|
91
101
|
focusable={true}
|
|
102
|
+
onBlur={[Function]}
|
|
92
103
|
onClick={[Function]}
|
|
104
|
+
onFocus={[Function]}
|
|
93
105
|
onResponderGrant={[Function]}
|
|
94
106
|
onResponderMove={[Function]}
|
|
95
107
|
onResponderRelease={[Function]}
|
|
@@ -97,18 +109,21 @@ exports[`Running Test for Tab Check Tab Disabled 1`] = `
|
|
|
97
109
|
onResponderTerminationRequest={[Function]}
|
|
98
110
|
onStartShouldSetResponder={[Function]}
|
|
99
111
|
style={
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
+
Array [
|
|
113
|
+
Object {
|
|
114
|
+
"alignItems": "center",
|
|
115
|
+
"borderBottomColor": "#202452",
|
|
116
|
+
"borderBottomWidth": 3,
|
|
117
|
+
"borderTopWidth": 4,
|
|
118
|
+
"justifyContent": "center",
|
|
119
|
+
},
|
|
120
|
+
Object {
|
|
121
|
+
"backgroundColor": "#D3D6E1",
|
|
122
|
+
"borderTopColor": "transparent",
|
|
123
|
+
"flex": 0.2,
|
|
124
|
+
"height": 40,
|
|
125
|
+
},
|
|
126
|
+
]
|
|
112
127
|
}
|
|
113
128
|
>
|
|
114
129
|
<Text
|
|
@@ -127,7 +142,9 @@ exports[`Running Test for Tab Check Tab Disabled 1`] = `
|
|
|
127
142
|
accessible={true}
|
|
128
143
|
collapsable={false}
|
|
129
144
|
focusable={true}
|
|
145
|
+
onBlur={[Function]}
|
|
130
146
|
onClick={[Function]}
|
|
147
|
+
onFocus={[Function]}
|
|
131
148
|
onResponderGrant={[Function]}
|
|
132
149
|
onResponderMove={[Function]}
|
|
133
150
|
onResponderRelease={[Function]}
|
|
@@ -135,18 +152,21 @@ exports[`Running Test for Tab Check Tab Disabled 1`] = `
|
|
|
135
152
|
onResponderTerminationRequest={[Function]}
|
|
136
153
|
onStartShouldSetResponder={[Function]}
|
|
137
154
|
style={
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
155
|
+
Array [
|
|
156
|
+
Object {
|
|
157
|
+
"alignItems": "center",
|
|
158
|
+
"borderBottomColor": "#202452",
|
|
159
|
+
"borderBottomWidth": 3,
|
|
160
|
+
"borderTopWidth": 4,
|
|
161
|
+
"justifyContent": "center",
|
|
162
|
+
},
|
|
163
|
+
Object {
|
|
164
|
+
"backgroundColor": "#D3D6E1",
|
|
165
|
+
"borderTopColor": "transparent",
|
|
166
|
+
"flex": 0.2,
|
|
167
|
+
"height": 40,
|
|
168
|
+
},
|
|
169
|
+
]
|
|
150
170
|
}
|
|
151
171
|
>
|
|
152
172
|
<Text
|
|
@@ -165,7 +185,9 @@ exports[`Running Test for Tab Check Tab Disabled 1`] = `
|
|
|
165
185
|
accessible={true}
|
|
166
186
|
collapsable={false}
|
|
167
187
|
focusable={true}
|
|
188
|
+
onBlur={[Function]}
|
|
168
189
|
onClick={[Function]}
|
|
190
|
+
onFocus={[Function]}
|
|
169
191
|
onResponderGrant={[Function]}
|
|
170
192
|
onResponderMove={[Function]}
|
|
171
193
|
onResponderRelease={[Function]}
|
|
@@ -173,18 +195,21 @@ exports[`Running Test for Tab Check Tab Disabled 1`] = `
|
|
|
173
195
|
onResponderTerminationRequest={[Function]}
|
|
174
196
|
onStartShouldSetResponder={[Function]}
|
|
175
197
|
style={
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
198
|
+
Array [
|
|
199
|
+
Object {
|
|
200
|
+
"alignItems": "center",
|
|
201
|
+
"borderBottomColor": "#202452",
|
|
202
|
+
"borderBottomWidth": 3,
|
|
203
|
+
"borderTopWidth": 4,
|
|
204
|
+
"justifyContent": "center",
|
|
205
|
+
},
|
|
206
|
+
Object {
|
|
207
|
+
"backgroundColor": "#D3D6E1",
|
|
208
|
+
"borderTopColor": "transparent",
|
|
209
|
+
"flex": 0.2,
|
|
210
|
+
"height": 40,
|
|
211
|
+
},
|
|
212
|
+
]
|
|
188
213
|
}
|
|
189
214
|
>
|
|
190
215
|
<Text
|
package/package.json
CHANGED
package/styles/colors.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
export const BLUE = '#202452';
|
|
2
|
+
export const BLUE_80 = '#303775';
|
|
2
3
|
|
|
3
4
|
export const YELLOW = '#FAD614';
|
|
5
|
+
export const YELLOW_50 = '#FFEB7A';
|
|
4
6
|
export const YELLOW_30 = '#FEF7D0';
|
|
5
7
|
|
|
6
8
|
export const GREY_BLUE = '#808695';
|
|
@@ -10,6 +12,9 @@ export const GREY_BLUE_10 = '#F2F5F9';
|
|
|
10
12
|
|
|
11
13
|
export const PURPLE = '#7182FF';
|
|
12
14
|
export const PURPLE_60 = '#564BC7';
|
|
15
|
+
export const LIGHT_PURPLE_60 = '#EBECFA';
|
|
16
|
+
|
|
17
|
+
|
|
13
18
|
export const PURPLE_50 = '#DDDFF6';
|
|
14
19
|
export const PURPLE_10 = '#F5F5FC';
|
|
15
20
|
|