react-native-exp-fig 0.1.1 → 0.1.2

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 (96) hide show
  1. package/package.json +4 -4
  2. package/src/common/constants/index.ts +5 -0
  3. package/src/common/icons-svg/arrow-drop-down/index.tsx +28 -28
  4. package/src/common/icons-svg/arrow-left/index.tsx +32 -32
  5. package/src/common/icons-svg/bluetooth/index.tsx +37 -37
  6. package/src/common/icons-svg/bluetooth-connected/index.tsx +41 -41
  7. package/src/common/icons-svg/calendar/index.tsx +40 -40
  8. package/src/common/icons-svg/call-bell/index.tsx +29 -29
  9. package/src/common/icons-svg/camera-plus/index.tsx +40 -40
  10. package/src/common/icons-svg/chart-bar/index.tsx +29 -0
  11. package/src/common/icons-svg/check-box-fill/index.tsx +30 -30
  12. package/src/common/icons-svg/check-box-outline/index.tsx +30 -30
  13. package/src/common/icons-svg/check-circle/index.tsx +27 -27
  14. package/src/common/icons-svg/closed/index.tsx +34 -34
  15. package/src/common/icons-svg/constants/index.ts +46 -43
  16. package/src/common/icons-svg/credit-card/index.tsx +32 -32
  17. package/src/common/icons-svg/currency/index.tsx +39 -39
  18. package/src/common/icons-svg/currency-circle-dollar/index.tsx +29 -0
  19. package/src/common/icons-svg/eye/index.tsx +31 -31
  20. package/src/common/icons-svg/eye-slash/index.tsx +31 -31
  21. package/src/common/icons-svg/file-text/index.tsx +39 -39
  22. package/src/common/icons-svg/gas-pump/index.tsx +39 -39
  23. package/src/common/icons-svg/gauge/index.tsx +39 -39
  24. package/src/common/icons-svg/gear/index.tsx +39 -39
  25. package/src/common/icons-svg/index.tsx +167 -149
  26. package/src/common/icons-svg/interface.d.ts +18 -18
  27. package/src/common/icons-svg/list/index.tsx +58 -58
  28. package/src/common/icons-svg/moon-stars/index.tsx +29 -29
  29. package/src/common/icons-svg/note-pincel/index.tsx +40 -40
  30. package/src/common/icons-svg/package/index.tsx +29 -0
  31. package/src/common/icons-svg/package-check/index.tsx +45 -45
  32. package/src/common/icons-svg/shopping-cart/index.tsx +39 -39
  33. package/src/common/icons-svg/steering-wheel/index.tsx +49 -49
  34. package/src/common/icons-svg/steering-wheel-fill/index.tsx +36 -36
  35. package/src/common/icons-svg/timer/index.tsx +39 -39
  36. package/src/common/icons-svg/trophy/index.tsx +29 -29
  37. package/src/common/icons-svg/truck/index.tsx +39 -39
  38. package/src/common/icons-svg/truck-trailer/index.tsx +36 -0
  39. package/src/common/icons-svg/wifi-high/index.tsx +43 -43
  40. package/src/common/icons-svg/wifi-x/index.tsx +50 -50
  41. package/src/components/box/index.tsx +47 -47
  42. package/src/components/box/interface.d.ts +31 -31
  43. package/src/components/box/styles.ts +21 -21
  44. package/src/components/button/index.tsx +61 -61
  45. package/src/components/button/interface.d.ts +40 -40
  46. package/src/components/button/styles.ts +34 -34
  47. package/src/components/capture-photo/index.tsx +125 -125
  48. package/src/components/capture-photo/interface.d.ts +44 -44
  49. package/src/components/capture-photo/styles.ts +24 -24
  50. package/src/components/card-hours/index.tsx +118 -118
  51. package/src/components/card-hours/interface.d.ts +37 -37
  52. package/src/components/card-scheduled-journey/index.tsx +138 -138
  53. package/src/components/card-scheduled-journey/interface.ts +42 -42
  54. package/src/components/card-scheduled-journey/styles.ts +26 -26
  55. package/src/components/header-profile/index.tsx +128 -128
  56. package/src/components/header-profile/interface.d.ts +52 -52
  57. package/src/components/input/index.tsx +176 -180
  58. package/src/components/input/interface.d.ts +55 -55
  59. package/src/components/input/styles.ts +23 -23
  60. package/src/components/menu-item/index.tsx +78 -0
  61. package/src/components/menu-item/interface.d.ts +19 -0
  62. package/src/components/menu-item/styles.ts +0 -0
  63. package/src/components/scheduled-journey-indicators/index.tsx +99 -99
  64. package/src/components/scheduled-journey-indicators/interface.d.ts +18 -18
  65. package/src/components/selects/select-option/index.tsx +104 -104
  66. package/src/components/selects/select-option/interface.d.ts +18 -18
  67. package/src/components/selects/select-option/styles.ts +75 -75
  68. package/src/components/step-indicator/helpers/get-icon-by-status.tsx +20 -20
  69. package/src/components/step-indicator/index.tsx +164 -164
  70. package/src/components/step-indicator/interface.d.ts +34 -34
  71. package/src/components/step-indicator/styles.ts +67 -67
  72. package/src/components/typography/index.tsx +67 -67
  73. package/src/components/typography/interface.d.ts +102 -102
  74. package/src/components/typography/styles.ts +34 -34
  75. package/src/components/user-profile/index.tsx +216 -0
  76. package/src/components/user-profile/interface.d.ts +22 -0
  77. package/src/{index.ts → index.tsx} +2 -0
  78. package/src/stories/box/box.stories.tsx +106 -106
  79. package/src/stories/button/button.stories.tsx +143 -143
  80. package/src/stories/capture-photo/capture-photo.stories.tsx +170 -170
  81. package/src/stories/card-hours/card-hours.stories.tsx +102 -102
  82. package/src/stories/card-scheduled-journey/card-scheduled-journey.stories.tsx +101 -101
  83. package/src/stories/header-profile/header-profile.stories.tsx +84 -84
  84. package/src/stories/input/input.stories.tsx +286 -286
  85. package/src/stories/menu-item/menu-item.stories.tsx +76 -0
  86. package/src/stories/scheduled-journey-indicators/sheduled-journey-indicators.stories.tsx +74 -74
  87. package/src/stories/select-option/select-option.stories.tsx +46 -46
  88. package/src/stories/step-indicator/step-indicator.stories.tsx +116 -116
  89. package/src/stories/typography/typography.stories.tsx +146 -146
  90. package/src/stories/user-profile/user-profile.stories.tsx +56 -0
  91. package/src/styles/global/interface.d.ts +131 -131
  92. package/src/styles/global/styles.ts +63 -63
  93. package/src/styles/global/theme-provider.tsx +10 -10
  94. package/src/styles/theme/theme.ts +158 -156
  95. package/src/utils/format-data/index.ts +14 -14
  96. package/src/utils/mutiply/index.ts +3 -3
@@ -1,102 +1,102 @@
1
- /**
2
- * IMPORTS
3
- */
4
- import { TextProps } from "react-native";
5
-
6
- import { theme } from "../../styles/theme/theme";
7
-
8
- interface ITextInterface extends TextProps {
9
- /**
10
- * Propiedade texto que serar renderizado pro usuário final
11
- */
12
- text: string;
13
-
14
- /**
15
- * A propriedade CSS color define o valor da cor de primeiro plano do texto e das decorações de texto de um elemento e define o valor currentcolor. currentcolor pode ser usado como um valor indireto em outras propriedades e é o padrão para outras propriedades de cores, como border-color.
16
- */
17
- color?: string;
18
-
19
- /**
20
- * Propiedade size define o tamanho e a orientação da caixa que é usada para representar uma página. Na maioria das vezes, esse tamanho corresponde ao tamanho alvo da página impressa, se aplicável.
21
- */
22
- size?: number;
23
-
24
- align?: "center" | "left" | "right";
25
- lineHeight?: number;
26
- letterSpacing?: keyof typeof theme.letterSpacing;
27
-
28
- /**
29
- * A propriedade text-decoration do CSS é usada para definir a formatação de underline, overline, line-through ou blink. As decorações underline e overline são posicionadas abaixo e acima do texto (respectivamente), e line-through cortando-o.
30
- */
31
- textDecoration?: "line-through" | "underline" | "none";
32
-
33
- /**
34
- * A propriedade CSS font-weight define o peso (ou negrito) da fonte. Os pesos disponíveis dependem da família de fontes definida atualmente.
35
- */
36
- fontWeight?: "100" | "300" | "400" | "500" | "600" | "700";
37
-
38
- // fontFamily?: keyof typeof theme.fonts;
39
- fontFamily?: string | undefined;
40
-
41
- /**
42
- * A propriedade margin do CSS define a área de margem nos quatro lados do elemento. É uma abreviação que define todas as margens individuais de uma só vez: margin-top, margin-right (en-US), margin-bottom, e margin-left (en-US).
43
- */
44
- margin?: number;
45
-
46
- /**
47
- * A propriedade CSS define a área de margem no lado esquerdo de um elemento. Um valor positivo o coloca mais distante de seus vizinhos, enquanto um valor negativo o coloca mais próximo.margin-left
48
- */
49
- marginLeft?: number;
50
-
51
- /**
52
- * A propriedade CSS define a área de margem no lado direito de um elemento. Um valor positivo o coloca mais distante de seus vizinhos, enquanto um valor negativo o coloca mais próximo.margin-right
53
- */
54
- marginRight?: number;
55
-
56
- /**
57
- * A propriedade CSS margin-top de um elemento indica o espaço acima do elemento. Valores negativos são aceitos.
58
- */
59
- marginTop?: number;
60
-
61
- /**
62
- * A propriedade CSS margin-bottom define a margin area na parte inferior de um elemento. Um valor positivo coloca o valor mais longe de outros elementos vizinhos, enquanto um valor negativo, aproxima.
63
- */
64
- marginBottom?: number;
65
-
66
- /**
67
- * A propriedade padding define uma a distância entre o conteúdo de um elemento e suas bordas. É um atalho que evita definir uma distância para cada lado separadamente (padding-top, padding-right, padding-bottom, padding-left).
68
- */
69
- padding?: number;
70
-
71
- /**
72
- * A propriedade CSS padding-left é um elemento que define o espaço de preenchimento obrigatório no lado esquerdo de um elemento. padding area é o espaço entre o conteúdo do elemento e a borda. Um valor negativo não é permitido.
73
- */
74
- paddingLeft?: number;
75
-
76
- /**
77
- * A propriedade CSS define a largura da área de preenchimento à direita de um elemento.padding-right
78
- */
79
- paddingRight?: number;
80
-
81
- /**
82
- * A propriedade CSS define a altura da área de preenchimento na parte superior de um elemento.padding-top
83
- */
84
- paddingTop?: number;
85
-
86
- /**
87
- * A propriedade CSS define a altura da área de preenchimento na parte inferior de um elemento.padding-bottom
88
- */
89
- paddingBottom?: number;
90
-
91
- /**
92
- * Define o número máximo de linhas que o texto pode ocupar. Se o texto for maior que esse limite, ele será truncado. numberOfLines
93
- *
94
- * Define onde a elipse (...) será adicionada quando o texto for cortado devido ao numberOfLines.
95
- */
96
- numberOfLines?: number;
97
- ellipsizeMode?: "head" | "middle" | "tail" | "clip";
98
- }
99
- /**
100
- * EXPORTS
101
- */
102
- export { ITextInterface };
1
+ /**
2
+ * IMPORTS
3
+ */
4
+ import { TextProps } from "react-native";
5
+
6
+ import { theme } from "../../styles/theme/theme";
7
+
8
+ interface ITextInterface extends TextProps {
9
+ /**
10
+ * Propiedade texto que serar renderizado pro usuário final
11
+ */
12
+ text: string;
13
+
14
+ /**
15
+ * A propriedade CSS color define o valor da cor de primeiro plano do texto e das decorações de texto de um elemento e define o valor currentcolor. currentcolor pode ser usado como um valor indireto em outras propriedades e é o padrão para outras propriedades de cores, como border-color.
16
+ */
17
+ color?: string;
18
+
19
+ /**
20
+ * Propiedade size define o tamanho e a orientação da caixa que é usada para representar uma página. Na maioria das vezes, esse tamanho corresponde ao tamanho alvo da página impressa, se aplicável.
21
+ */
22
+ size?: number;
23
+
24
+ align?: "center" | "left" | "right";
25
+ lineHeight?: number;
26
+ letterSpacing?: keyof typeof theme.letterSpacing;
27
+
28
+ /**
29
+ * A propriedade text-decoration do CSS é usada para definir a formatação de underline, overline, line-through ou blink. As decorações underline e overline são posicionadas abaixo e acima do texto (respectivamente), e line-through cortando-o.
30
+ */
31
+ textDecoration?: "line-through" | "underline" | "none";
32
+
33
+ /**
34
+ * A propriedade CSS font-weight define o peso (ou negrito) da fonte. Os pesos disponíveis dependem da família de fontes definida atualmente.
35
+ */
36
+ fontWeight?: "100" | "300" | "400" | "500" | "600" | "700";
37
+
38
+ // fontFamily?: keyof typeof theme.fonts;
39
+ fontFamily?: string | undefined;
40
+
41
+ /**
42
+ * A propriedade margin do CSS define a área de margem nos quatro lados do elemento. É uma abreviação que define todas as margens individuais de uma só vez: margin-top, margin-right (en-US), margin-bottom, e margin-left (en-US).
43
+ */
44
+ margin?: number;
45
+
46
+ /**
47
+ * A propriedade CSS define a área de margem no lado esquerdo de um elemento. Um valor positivo o coloca mais distante de seus vizinhos, enquanto um valor negativo o coloca mais próximo.margin-left
48
+ */
49
+ marginLeft?: number;
50
+
51
+ /**
52
+ * A propriedade CSS define a área de margem no lado direito de um elemento. Um valor positivo o coloca mais distante de seus vizinhos, enquanto um valor negativo o coloca mais próximo.margin-right
53
+ */
54
+ marginRight?: number;
55
+
56
+ /**
57
+ * A propriedade CSS margin-top de um elemento indica o espaço acima do elemento. Valores negativos são aceitos.
58
+ */
59
+ marginTop?: number;
60
+
61
+ /**
62
+ * A propriedade CSS margin-bottom define a margin area na parte inferior de um elemento. Um valor positivo coloca o valor mais longe de outros elementos vizinhos, enquanto um valor negativo, aproxima.
63
+ */
64
+ marginBottom?: number;
65
+
66
+ /**
67
+ * A propriedade padding define uma a distância entre o conteúdo de um elemento e suas bordas. É um atalho que evita definir uma distância para cada lado separadamente (padding-top, padding-right, padding-bottom, padding-left).
68
+ */
69
+ padding?: number;
70
+
71
+ /**
72
+ * A propriedade CSS padding-left é um elemento que define o espaço de preenchimento obrigatório no lado esquerdo de um elemento. padding area é o espaço entre o conteúdo do elemento e a borda. Um valor negativo não é permitido.
73
+ */
74
+ paddingLeft?: number;
75
+
76
+ /**
77
+ * A propriedade CSS define a largura da área de preenchimento à direita de um elemento.padding-right
78
+ */
79
+ paddingRight?: number;
80
+
81
+ /**
82
+ * A propriedade CSS define a altura da área de preenchimento na parte superior de um elemento.padding-top
83
+ */
84
+ paddingTop?: number;
85
+
86
+ /**
87
+ * A propriedade CSS define a altura da área de preenchimento na parte inferior de um elemento.padding-bottom
88
+ */
89
+ paddingBottom?: number;
90
+
91
+ /**
92
+ * Define o número máximo de linhas que o texto pode ocupar. Se o texto for maior que esse limite, ele será truncado. numberOfLines
93
+ *
94
+ * Define onde a elipse (...) será adicionada quando o texto for cortado devido ao numberOfLines.
95
+ */
96
+ numberOfLines?: number;
97
+ ellipsizeMode?: "head" | "middle" | "tail" | "clip";
98
+ }
99
+ /**
100
+ * EXPORTS
101
+ */
102
+ export { ITextInterface };
@@ -1,34 +1,34 @@
1
- /**
2
- * IMPORTS
3
- */
4
-
5
- import { StyleSheet } from "react-native";
6
- import { ITextInterface } from "./interface";
7
-
8
- const styles = (props: ITextInterface) =>
9
- StyleSheet.create({
10
- text: {
11
- textAlign: props?.align,
12
- fontSize: props?.size ?? 20,
13
- fontWeight: props?.fontWeight,
14
- fontFamily: props.fontFamily ?? "Inter-Medium",
15
- color: props?.color,
16
- lineHeight: props?.lineHeight,
17
- letterSpacing: 0.5,
18
- margin: props?.margin,
19
- marginLeft: props?.marginLeft ?? 0,
20
- marginRight: props?.marginRight ?? 0,
21
- marginTop: props?.marginTop ?? 0,
22
- marginBottom: props?.marginBottom ?? 0,
23
- padding: props?.padding ?? 0,
24
- paddingLeft: props?.paddingLeft ?? 0,
25
- paddingRight: props?.paddingRight ?? 0,
26
- paddingTop: props?.paddingTop ?? 0,
27
- paddingBottom: props?.paddingBottom ?? 0,
28
- },
29
- });
30
-
31
- /**
32
- * EXPORTS
33
- */
34
- export { styles };
1
+ /**
2
+ * IMPORTS
3
+ */
4
+
5
+ import { StyleSheet } from "react-native";
6
+ import { ITextInterface } from "./interface";
7
+
8
+ const styles = (props: ITextInterface) =>
9
+ StyleSheet.create({
10
+ text: {
11
+ textAlign: props?.align,
12
+ fontSize: props?.size ?? 20,
13
+ fontWeight: props?.fontWeight,
14
+ fontFamily: props.fontFamily ?? "Inter-Medium",
15
+ color: props?.color,
16
+ lineHeight: props?.lineHeight,
17
+ letterSpacing: 0.5,
18
+ margin: props?.margin,
19
+ marginLeft: props?.marginLeft ?? 0,
20
+ marginRight: props?.marginRight ?? 0,
21
+ marginTop: props?.marginTop ?? 0,
22
+ marginBottom: props?.marginBottom ?? 0,
23
+ padding: props?.padding ?? 0,
24
+ paddingLeft: props?.paddingLeft ?? 0,
25
+ paddingRight: props?.paddingRight ?? 0,
26
+ paddingTop: props?.paddingTop ?? 0,
27
+ paddingBottom: props?.paddingBottom ?? 0,
28
+ },
29
+ });
30
+
31
+ /**
32
+ * EXPORTS
33
+ */
34
+ export { styles };
@@ -0,0 +1,216 @@
1
+ /**
2
+ * IMPORTS
3
+ */
4
+ import React from "react";
5
+ import { Image, TouchableOpacity } from "react-native";
6
+
7
+ // components
8
+ import { Box } from "../box";
9
+ import { Typography } from "../typography";
10
+
11
+ // comons / constants
12
+ import { IMAGES } from "../../common/constants";
13
+
14
+ // typings
15
+ import { IUserProfile } from "./interface";
16
+
17
+ // styles
18
+ import { theme } from "../../styles/theme/theme";
19
+
20
+ /**
21
+ *
22
+ * Componente Header para a interação do usuário com ui.
23
+ */
24
+ const UserProfile: React.FC<IUserProfile> = ({
25
+ nome,
26
+ avatar,
27
+ cpf,
28
+ placa_cavalo,
29
+ bluetoothIsConnected,
30
+ app_version,
31
+ color,
32
+ width,
33
+ height,
34
+ handleProfileView,
35
+ testID,
36
+ }: IUserProfile) => {
37
+ return (
38
+ <Box
39
+ testID={testID}
40
+ width={width ?? "100%"}
41
+ height={height ?? 260}
42
+ backgroundColor={theme.colors.blue[500]}
43
+ marginStyle={{ marginBottom: 16 }}
44
+ paddingStyle={{ paddingLeft: 16, paddingRight: 16 }}
45
+ >
46
+ <Box
47
+ width={"100%"}
48
+ flexStyle={{ flexDirection: "row", alignItems: "center", justifyContent: "center" }}
49
+ paddingStyle={{ paddingTop: 28 }}
50
+ >
51
+ <TouchableOpacity
52
+ activeOpacity={0.7}
53
+ style={{
54
+ width: 100,
55
+ height: 80,
56
+ borderRadius: 50,
57
+ alignItems: "center",
58
+ justifyContent: "center",
59
+ }}
60
+ onPress={handleProfileView}
61
+ >
62
+ <Image
63
+ testID="user-profile-avatar"
64
+ source={{
65
+ uri: avatar || IMAGES.IMAGE_ANONIMA,
66
+ }}
67
+ style={{
68
+ width: 120,
69
+ height: 120,
70
+ borderRadius: 60,
71
+ borderWidth: 2,
72
+ borderColor: theme.colors.green[400],
73
+ }}
74
+ />
75
+ </TouchableOpacity>
76
+ </Box>
77
+
78
+ <Box
79
+ width={"100%"}
80
+ height={70}
81
+ flexStyle={{ flexDirection: "column", alignItems: "center", justifyContent: "center" }}
82
+ marginStyle={{ marginTop: 36 }}
83
+ >
84
+ <Box
85
+ width={"100%"}
86
+ height={30}
87
+ flexStyle={{
88
+ flexDirection: "row",
89
+ alignItems: "center",
90
+ justifyContent: "flex-start",
91
+ textAlign: "center",
92
+ }}
93
+ >
94
+ <Typography
95
+ text={"Olá, "}
96
+ color={color?.colorText ?? theme.colors.neutral[25]}
97
+ size={theme.fontSizes.md}
98
+ fontFamily={theme.fonts.inter_regular_400}
99
+ lineHeight={theme.fontSizes["2xl"] ?? 24}
100
+ letterSpacing={"regular"}
101
+ />
102
+
103
+ <Typography
104
+ text={nome}
105
+ color={color?.colorText ?? theme.colors.neutral[25]}
106
+ size={theme.fontSizes.sm}
107
+ fontFamily="inter_medium_500"
108
+ lineHeight={theme.fontSizes["2xl"] ?? 24}
109
+ letterSpacing={"regular"}
110
+ />
111
+ </Box>
112
+ <Box
113
+ width={"100%"}
114
+ height={30}
115
+ flexStyle={{
116
+ flexDirection: "row",
117
+ alignItems: "center",
118
+ justifyContent: "flex-start",
119
+ textAlign: "center",
120
+ }}
121
+ >
122
+ <Typography
123
+ text={"CPF: "}
124
+ color={color?.colorText ?? theme.colors.neutral[25]}
125
+ size={theme.fontSizes.md}
126
+ fontFamily={theme.fonts.inter_regular_400}
127
+ lineHeight={theme.fontSizes["2xl"] ?? 24}
128
+ letterSpacing={"regular"}
129
+ />
130
+
131
+ <Typography
132
+ text={cpf}
133
+ color={color?.colorText ?? theme.colors.neutral[25]}
134
+ size={theme.fontSizes.sm}
135
+ fontFamily={theme.fonts.inter_medium_500}
136
+ lineHeight={theme.fontSizes["2xl"] ?? 24}
137
+ letterSpacing={"regular"}
138
+ />
139
+ </Box>
140
+ <Box
141
+ width={"100%"}
142
+ height={30}
143
+ flexStyle={{
144
+ flexDirection: "row",
145
+ alignItems: "center",
146
+ justifyContent: "flex-start",
147
+ textAlign: "center",
148
+ }}
149
+ >
150
+ <Typography
151
+ text={"CONECTADO: "}
152
+ color={color?.colorText ?? theme.colors.neutral[25]}
153
+ size={theme.fontSizes.xs}
154
+ fontFamily={theme.fonts.inter_medium_500}
155
+ lineHeight={theme.fontSizes["2xl"] ?? 24}
156
+ letterSpacing={"regular"}
157
+ />
158
+
159
+ <Typography
160
+ text={bluetoothIsConnected ? placa_cavalo : ""}
161
+ color={theme.colors.green[400]}
162
+ size={theme.fontSizes.xs}
163
+ fontFamily={theme.fonts.inter_bold_700}
164
+ lineHeight={theme.fontSizes["2xl"] ?? 24}
165
+ letterSpacing={"regular"}
166
+ />
167
+ </Box>
168
+ </Box>
169
+
170
+ <Box
171
+ width={"100%"}
172
+ height={30}
173
+ flexStyle={{
174
+ flexDirection: "row",
175
+ alignItems: "flex-end",
176
+ justifyContent: "flex-end",
177
+ }}
178
+ marginStyle={{ marginTop: 16 }}
179
+ >
180
+ <Box
181
+ width={"100%"}
182
+ height={30}
183
+ flexStyle={{
184
+ flexDirection: "row",
185
+ alignItems: "center",
186
+ justifyContent: "flex-end",
187
+ textAlign: "center",
188
+ }}
189
+ >
190
+ <Typography
191
+ text={"Versão: "}
192
+ color={color?.colorText ?? theme.colors.neutral[25]}
193
+ size={theme.fontSizes.md}
194
+ fontFamily={theme.fonts.inter_regular_400}
195
+ lineHeight={15}
196
+ letterSpacing={"regular"}
197
+ />
198
+
199
+ <Typography
200
+ text={app_version}
201
+ color={color?.colorText ?? theme.colors.neutral[25]}
202
+ size={theme.fontSizes.xs}
203
+ fontFamily={theme.fonts.inter_light_300}
204
+ lineHeight={theme.fontSizes["2xl"] ?? 24}
205
+ letterSpacing={"regular"}
206
+ />
207
+ </Box>
208
+ </Box>
209
+ </Box>
210
+ );
211
+ };
212
+
213
+ /**
214
+ * EXPORTS
215
+ */
216
+ export { UserProfile };
@@ -0,0 +1,22 @@
1
+ /**
2
+ * IMPORTS
3
+ */
4
+ import { ViewProps } from "react-native";
5
+
6
+ // typing
7
+ import { IGlobalCss } from "../../styles/global/interface";
8
+
9
+ interface IUserProfile extends ViewProps, IGlobalCss {
10
+ nome: string;
11
+ avatar: string;
12
+ cpf: string;
13
+ placa_cavalo: string;
14
+ bluetoothIsConnected: boolean;
15
+ app_version: string;
16
+ handleProfileView: () => void;
17
+ }
18
+
19
+ /**
20
+ * EXPORTS
21
+ */
22
+ export { IUserProfile };
@@ -14,6 +14,8 @@ export { SelectOption } from "./components/selects/select-option";
14
14
  export { Header } from "./components/header-profile";
15
15
  export { ScheduledJourneyIndicators } from "./components/scheduled-journey-indicators";
16
16
  export { CardScheduledJourney } from "./components/card-scheduled-journey";
17
+ export { UserProfile } from "./components/user-profile";
18
+ export { MenuItem } from "./components/menu-item";
17
19
 
18
20
  // Utilities
19
21
  export { multiply } from "./utils/mutiply";