@holper/react-native-holper-storybook 0.7.0 → 0.7.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.
- package/README.md +1 -1
- package/package.json +5 -1
- package/.expo/README.md +0 -8
- package/.nvmrc +0 -1
- package/.prettierignore +0 -5
- package/.storybook/index.jsx +0 -11
- package/.storybook/main.js +0 -8
- package/.storybook/preview.jsx +0 -51
- package/.storybook/storybook.requires.js +0 -43
- package/.yarn/releases/yarn-4.5.0.cjs +0 -925
- package/.yarnrc.yml +0 -3
- package/App.jsx +0 -29
- package/app.config.js +0 -77
- package/assets/adaptive-icon.png +0 -0
- package/assets/favicon.png +0 -0
- package/assets/fonts/Poppins-Bold.ttf +0 -0
- package/assets/fonts/Poppins-Regular.ttf +0 -0
- package/assets/fonts/Poppins-SemiBold.ttf +0 -0
- package/assets/icon.png +0 -0
- package/assets/splash.png +0 -0
- package/babel.config.js +0 -7
- package/build.sh +0 -11
- package/components/Button/index.tsx +0 -66
- package/components/Button/style.ts +0 -111
- package/components/Card/index.tsx +0 -33
- package/components/Card/style.ts +0 -34
- package/components/ConfirmationModal/index.tsx +0 -104
- package/components/ConfirmationModal/style.tsx +0 -53
- package/components/Container/index.tsx +0 -33
- package/components/Container/style.ts +0 -13
- package/components/CustomChatView/index.tsx +0 -65
- package/components/CustomChatView/style.ts +0 -10
- package/components/DeckSwiper/index.tsx +0 -90
- package/components/DeckSwiper/style.ts +0 -59
- package/components/DonutCountdown/index.tsx +0 -86
- package/components/DonutCountdown/style.ts +0 -8
- package/components/FloatingContainer/index.tsx +0 -35
- package/components/FloatingContainer/style.ts +0 -25
- package/components/Footer/index.tsx +0 -35
- package/components/Footer/style.ts +0 -40
- package/components/Header/index.tsx +0 -21
- package/components/Header/style.ts +0 -34
- package/components/ImagePicker/index.tsx +0 -18
- package/components/ImageResponsive/index.tsx +0 -24
- package/components/ImageResponsive/style.ts +0 -9
- package/components/ImageViewer/index.tsx +0 -36
- package/components/ImageViewer/style.ts +0 -38
- package/components/Input/index.tsx +0 -62
- package/components/Input/style.ts +0 -91
- package/components/InputPin/index.tsx +0 -21
- package/components/InputPin/style.ts +0 -22
- package/components/MenuItem/index.tsx +0 -25
- package/components/MenuItem/style.ts +0 -44
- package/components/NavigationTitle/index.tsx +0 -53
- package/components/NavigationTitle/style.ts +0 -49
- package/components/Notification/index.tsx +0 -44
- package/components/Notification/style.ts +0 -50
- package/components/PreventDoubleClick/index.tsx +0 -28
- package/components/Select/index.tsx +0 -51
- package/components/Select/style.ts +0 -64
- package/components/SwipeablePanel/index.tsx +0 -208
- package/components/SwipeablePanel/style.ts +0 -81
- package/components/Switch/index.tsx +0 -30
- package/components/TakePicture/confirmPictureModal.tsx +0 -37
- package/components/TakePicture/index.tsx +0 -148
- package/components/TakePicture/style.ts +0 -95
- package/components/Text/index.tsx +0 -33
- package/components/Text/style.ts +0 -101
- package/components/Textarea/index.tsx +0 -26
- package/components/Textarea/style.ts +0 -38
- package/components/TimeOutButton/index.tsx +0 -67
- package/components/TimeOutButton/style.ts +0 -42
- package/components/Toast/index.tsx +0 -34
- package/components/Toast/style.ts +0 -12
- package/components/UploadDocument/index.tsx +0 -179
- package/components/UploadDocument/style.ts +0 -57
- package/components/VirtualKeyboard/index.tsx +0 -75
- package/components/VirtualKeyboard/style.ts +0 -25
- package/components/index.ts +0 -29
- package/configs/constants.ts +0 -273
- package/configs/types.ts +0 -326
- package/eas.json +0 -27
- package/eslint.config.mjs +0 -205
- package/hooks/index.ts +0 -2
- package/hooks/useDebounce.tsx +0 -24
- package/hooks/useLoadFonts.tsx +0 -13
- package/metro.config.js +0 -11
- package/prettier.config.mjs +0 -23
- package/stories/Button.stories.tsx +0 -181
- package/stories/Card.stories.tsx +0 -22
- package/stories/Colors.stories.tsx +0 -57
- package/stories/ConfirmationModal.stories.tsx +0 -142
- package/stories/Container.stories.tsx +0 -105
- package/stories/DeckSwiper.stories.tsx +0 -43
- package/stories/DonutCountdown.stories.tsx +0 -134
- package/stories/FloatingContainer.stories.tsx +0 -139
- package/stories/Footer.stories.tsx +0 -65
- package/stories/Header.stories.tsx +0 -37
- package/stories/ImagePicker.stories.tsx +0 -14
- package/stories/ImageResponsive.stories.tsx +0 -18
- package/stories/ImageViewer.stories.tsx +0 -24
- package/stories/Input.stories.tsx +0 -119
- package/stories/InputPin.stories.tsx +0 -40
- package/stories/Menu.stories.tsx +0 -53
- package/stories/MenuItem.stories.tsx +0 -30
- package/stories/NavigationTitle.stories.tsx +0 -51
- package/stories/Notification.stories.tsx +0 -58
- package/stories/Select.stories.tsx +0 -270
- package/stories/SwipeablePanel.stories.tsx +0 -360
- package/stories/Switch.stories.tsx +0 -36
- package/stories/TakePicture.stories.tsx +0 -59
- package/stories/Text.stories.tsx +0 -61
- package/stories/Textarea.stories.tsx +0 -48
- package/stories/TimeOutButton.stories.tsx +0 -55
- package/stories/Toast.stories.tsx +0 -37
- package/stories/UploadDocument.stories.tsx +0 -179
- package/stories/VirtualKeyboard.stories.tsx +0 -14
- package/tsconfig.json +0 -21
- package/utilities/ScrollView.tsx +0 -19
- package/utilities/index.ts +0 -2
- package/utilities/utils.ts +0 -29
|
@@ -1,360 +0,0 @@
|
|
|
1
|
-
import { View } from 'react-native';
|
|
2
|
-
|
|
3
|
-
import { Button, ImageResponsive, NavigationTitle, SwipeablePanel, Text } from '../components';
|
|
4
|
-
import { Colors } from '../configs/constants';
|
|
5
|
-
|
|
6
|
-
export default {
|
|
7
|
-
title: 'Swipeable Panel',
|
|
8
|
-
component: SwipeablePanel,
|
|
9
|
-
};
|
|
10
|
-
|
|
11
|
-
export const Default = {
|
|
12
|
-
render: () => (
|
|
13
|
-
<>
|
|
14
|
-
<NavigationTitle onPress={() => {}} title="Title text" />
|
|
15
|
-
<SwipeablePanel offset={180}>
|
|
16
|
-
<>
|
|
17
|
-
<Text align="center" size="large">
|
|
18
|
-
Title
|
|
19
|
-
</Text>
|
|
20
|
-
<View style={{ flexDirection: 'row', alignItems: 'center', marginVertical: 25 }}>
|
|
21
|
-
<ImageResponsive
|
|
22
|
-
source={require('../assets/icon.png')}
|
|
23
|
-
style={{ height: 110, width: 110, borderColor: Colors.lightblue }}
|
|
24
|
-
avatar
|
|
25
|
-
/>
|
|
26
|
-
<View style={{ height: 100, justifyContent: 'space-around', marginLeft: 10 }}>
|
|
27
|
-
<Text size="large" weight="semiBold">
|
|
28
|
-
Name
|
|
29
|
-
</Text>
|
|
30
|
-
<Text>Other useful info</Text>
|
|
31
|
-
<Text>More info</Text>
|
|
32
|
-
</View>
|
|
33
|
-
</View>
|
|
34
|
-
<Button style={{ alignSelf: 'center', marginBottom: 20 }}>
|
|
35
|
-
<Text color="white">Button text</Text>
|
|
36
|
-
</Button>
|
|
37
|
-
<Text align="center">Footer text</Text>
|
|
38
|
-
</>
|
|
39
|
-
</SwipeablePanel>
|
|
40
|
-
</>
|
|
41
|
-
),
|
|
42
|
-
};
|
|
43
|
-
|
|
44
|
-
export const CloseButton = {
|
|
45
|
-
render: () => (
|
|
46
|
-
<>
|
|
47
|
-
<NavigationTitle onPress={() => {}} title="Title text" />
|
|
48
|
-
<SwipeablePanel offset={180} closeButton onClose={() => {}}>
|
|
49
|
-
<>
|
|
50
|
-
<Text align="center" size="large">
|
|
51
|
-
Title
|
|
52
|
-
</Text>
|
|
53
|
-
<View style={{ flexDirection: 'row', alignItems: 'center', marginVertical: 25 }}>
|
|
54
|
-
<ImageResponsive
|
|
55
|
-
source={require('../assets/icon.png')}
|
|
56
|
-
style={{ height: 110, width: 110, borderColor: Colors.lightblue }}
|
|
57
|
-
avatar
|
|
58
|
-
/>
|
|
59
|
-
<View style={{ height: 100, justifyContent: 'space-around', marginLeft: 10 }}>
|
|
60
|
-
<Text size="large" weight="semiBold">
|
|
61
|
-
Name
|
|
62
|
-
</Text>
|
|
63
|
-
<Text>Other useful info</Text>
|
|
64
|
-
<Text>More info</Text>
|
|
65
|
-
</View>
|
|
66
|
-
</View>
|
|
67
|
-
<Button style={{ alignSelf: 'center', marginBottom: 20 }}>
|
|
68
|
-
<Text color="white">Button text</Text>
|
|
69
|
-
</Button>
|
|
70
|
-
<Text align="center">Footer text</Text>
|
|
71
|
-
</>
|
|
72
|
-
</SwipeablePanel>
|
|
73
|
-
</>
|
|
74
|
-
),
|
|
75
|
-
};
|
|
76
|
-
|
|
77
|
-
export const AutoClose = {
|
|
78
|
-
render: () => (
|
|
79
|
-
<>
|
|
80
|
-
<NavigationTitle onPress={() => {}} title="Title text" />
|
|
81
|
-
<SwipeablePanel offset={180} closeAfterSeconds={15} onClose={() => {}}>
|
|
82
|
-
<>
|
|
83
|
-
<Text align="center" size="large">
|
|
84
|
-
Title
|
|
85
|
-
</Text>
|
|
86
|
-
<View style={{ flexDirection: 'row', alignItems: 'center', marginVertical: 25 }}>
|
|
87
|
-
<ImageResponsive
|
|
88
|
-
source={require('../assets/icon.png')}
|
|
89
|
-
style={{ height: 110, width: 110, borderColor: Colors.lightblue }}
|
|
90
|
-
avatar
|
|
91
|
-
/>
|
|
92
|
-
<View style={{ height: 100, justifyContent: 'space-around', marginLeft: 10 }}>
|
|
93
|
-
<Text size="large" weight="semiBold">
|
|
94
|
-
Name
|
|
95
|
-
</Text>
|
|
96
|
-
<Text>Other useful info</Text>
|
|
97
|
-
<Text>More info</Text>
|
|
98
|
-
</View>
|
|
99
|
-
</View>
|
|
100
|
-
<Button style={{ alignSelf: 'center', marginBottom: 20 }}>
|
|
101
|
-
<Text color="white">Button text</Text>
|
|
102
|
-
</Button>
|
|
103
|
-
<Text align="center">Footer text</Text>
|
|
104
|
-
</>
|
|
105
|
-
</SwipeablePanel>
|
|
106
|
-
</>
|
|
107
|
-
),
|
|
108
|
-
};
|
|
109
|
-
|
|
110
|
-
export const AutoCloseAndClose = {
|
|
111
|
-
render: () => (
|
|
112
|
-
<>
|
|
113
|
-
<NavigationTitle onPress={() => {}} title="Title text" />
|
|
114
|
-
<SwipeablePanel offset={180} closeAfterSeconds={15} onClose={() => {}} closeButton>
|
|
115
|
-
<>
|
|
116
|
-
<Text align="center" size="large">
|
|
117
|
-
Title
|
|
118
|
-
</Text>
|
|
119
|
-
<View style={{ flexDirection: 'row', alignItems: 'center', marginVertical: 25 }}>
|
|
120
|
-
<ImageResponsive
|
|
121
|
-
source={require('../assets/icon.png')}
|
|
122
|
-
style={{ height: 110, width: 110, borderColor: Colors.lightblue }}
|
|
123
|
-
avatar
|
|
124
|
-
/>
|
|
125
|
-
<View style={{ height: 100, justifyContent: 'space-around', marginLeft: 10 }}>
|
|
126
|
-
<Text size="large" weight="semiBold">
|
|
127
|
-
Name
|
|
128
|
-
</Text>
|
|
129
|
-
<Text>Other useful info</Text>
|
|
130
|
-
<Text>More info</Text>
|
|
131
|
-
</View>
|
|
132
|
-
</View>
|
|
133
|
-
<Button style={{ alignSelf: 'center', marginBottom: 20 }}>
|
|
134
|
-
<Text color="white">Button text</Text>
|
|
135
|
-
</Button>
|
|
136
|
-
<Text align="center">Footer text</Text>
|
|
137
|
-
</>
|
|
138
|
-
</SwipeablePanel>
|
|
139
|
-
</>
|
|
140
|
-
),
|
|
141
|
-
};
|
|
142
|
-
|
|
143
|
-
export const AutoMaximize = {
|
|
144
|
-
render: () => (
|
|
145
|
-
<>
|
|
146
|
-
<NavigationTitle onPress={() => {}} title="Title text" />
|
|
147
|
-
<SwipeablePanel offset={180} autoMaximize>
|
|
148
|
-
<>
|
|
149
|
-
<Text align="center" size="large">
|
|
150
|
-
Title
|
|
151
|
-
</Text>
|
|
152
|
-
<View style={{ flexDirection: 'row', alignItems: 'center', marginVertical: 25 }}>
|
|
153
|
-
<ImageResponsive
|
|
154
|
-
source={require('../assets/icon.png')}
|
|
155
|
-
style={{ height: 110, width: 110, borderColor: Colors.lightblue }}
|
|
156
|
-
avatar
|
|
157
|
-
/>
|
|
158
|
-
<View style={{ height: 100, justifyContent: 'space-around', marginLeft: 10 }}>
|
|
159
|
-
<Text size="large" weight="semiBold">
|
|
160
|
-
Name
|
|
161
|
-
</Text>
|
|
162
|
-
<Text>Other useful info</Text>
|
|
163
|
-
<Text>More info</Text>
|
|
164
|
-
</View>
|
|
165
|
-
</View>
|
|
166
|
-
<Button style={{ alignSelf: 'center', marginBottom: 20 }}>
|
|
167
|
-
<Text color="white">Button text</Text>
|
|
168
|
-
</Button>
|
|
169
|
-
<Text align="center">Footer text</Text>
|
|
170
|
-
</>
|
|
171
|
-
</SwipeablePanel>
|
|
172
|
-
</>
|
|
173
|
-
),
|
|
174
|
-
};
|
|
175
|
-
|
|
176
|
-
export const WithSurroundElements = {
|
|
177
|
-
render: () => (
|
|
178
|
-
<>
|
|
179
|
-
<NavigationTitle title="Title text" />
|
|
180
|
-
<SwipeablePanel offset={250}>
|
|
181
|
-
<Text>
|
|
182
|
-
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse vel egestas sem. Lorem ipsum dolor sit
|
|
183
|
-
amet, consectetur adipiscing elit. Etiam id ornare ex. Aliquam pharetra eleifend felis eu ultricies. Proin non
|
|
184
|
-
tristique turpis. Nulla et metus molestie, convallis augue nec, faucibus mi. In vitae gravida dui, vel
|
|
185
|
-
hendrerit elit. Donec nec tempor purus. Donec tempus libero vitae cursus laoreet. Sed metus arcu, accumsan
|
|
186
|
-
dapibus molestie a, iaculis sed ipsum. Cras ante quam, rhoncus eu euismod nec, bibendum at mauris.
|
|
187
|
-
{'\n'}
|
|
188
|
-
{'\n'}
|
|
189
|
-
Etiam aliquet leo sit amet mi iaculis molestie ac non lacus. Nam vitae nisl aliquam, vulputate magna sit amet,
|
|
190
|
-
ullamcorper mauris. Praesent vulputate eros eget ligula cursus, vel condimentum justo ultricies. Nunc rutrum
|
|
191
|
-
sodales sapien, at mattis enim pretium non. Vivamus lobortis libero vulputate, tempor risus quis, vestibulum
|
|
192
|
-
odio. Cras sodales placerat varius. Quisque felis lacus, auctor ac pharetra sit amet, blandit at arcu. In hac
|
|
193
|
-
habitasse platea dictumst. Ut faucibus, massa id lacinia tincidunt, justo justo pellentesque nisi, eget
|
|
194
|
-
aliquam mauris ex vel dolor. Quisque vel lectus ante. Suspendisse efficitur leo eu urna imperdiet placerat.
|
|
195
|
-
Duis vel neque sed lacus convallis aliquet. Cras vehicula purus ut tellus eleifend tempor. In est erat,
|
|
196
|
-
sollicitudin volutpat hendrerit ut, tempor a eros. Pellentesque vehicula tempor lorem consectetur varius.
|
|
197
|
-
{'\n'}
|
|
198
|
-
{'\n'}
|
|
199
|
-
Sed mauris massa, lacinia nec turpis quis, vulputate hendrerit eros. Interdum et malesuada fames ac ante ipsum
|
|
200
|
-
primis in faucibus. Nullam fringilla orci nec dui semper gravida. Ut fermentum, tellus sit amet blandit
|
|
201
|
-
suscipit, mi mauris porta est, ut efficitur velit sem vulputate sapien. Donec nisi leo, ornare ac aliquet sed,
|
|
202
|
-
tincidunt sit amet ex. Sed metus nulla, vehicula a pretium eget, lacinia at dui. Nulla at felis vel arcu
|
|
203
|
-
sagittis pretium. Nulla non dapibus arcu. Vestibulum non erat eget velit lacinia mattis. Praesent pretium
|
|
204
|
-
facilisis placerat. Suspendisse vel sem bibendum, congue sapien in, consequat ipsum. Suspendisse ac arcu
|
|
205
|
-
convallis, elementum leo et, posuere orci. Aenean sagittis dictum pellentesque.
|
|
206
|
-
{'\n'}
|
|
207
|
-
{'\n'}
|
|
208
|
-
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse vel egestas sem. Lorem ipsum dolor sit
|
|
209
|
-
amet, consectetur adipiscing elit. Etiam id ornare ex. Aliquam pharetra eleifend felis eu ultricies. Proin non
|
|
210
|
-
tristique turpis. Nulla et metus molestie, convallis augue nec, faucibus mi. In vitae gravida dui, vel
|
|
211
|
-
hendrerit elit. Donec nec tempor purus. Donec tempus libero vitae cursus laoreet. Sed metus arcu, accumsan
|
|
212
|
-
dapibus molestie a, iaculis sed ipsum. Cras ante quam, rhoncus eu euismod nec, bibendum at mauris.
|
|
213
|
-
{'\n'}
|
|
214
|
-
{'\n'}
|
|
215
|
-
Etiam aliquet leo sit amet mi iaculis molestie ac non lacus. Nam vitae nisl aliquam, vulputate magna sit amet,
|
|
216
|
-
ullamcorper mauris. Praesent vulputate eros eget ligula cursus, vel condimentum justo ultricies. Nunc rutrum
|
|
217
|
-
sodales sapien, at mattis enim pretium non. Vivamus lobortis libero vulputate, tempor risus quis, vestibulum
|
|
218
|
-
odio. Cras sodales placerat varius. Quisque felis lacus, auctor ac pharetra sit amet, blandit at arcu. In hac
|
|
219
|
-
habitasse platea dictumst. Ut faucibus, massa id lacinia tincidunt, justo justo pellentesque nisi, eget
|
|
220
|
-
aliquam mauris ex vel dolor. Quisque vel lectus ante. Suspendisse efficitur leo eu urna imperdiet placerat.
|
|
221
|
-
Duis vel neque sed lacus convallis aliquet. Cras vehicula purus ut tellus eleifend tempor. In est erat,
|
|
222
|
-
sollicitudin volutpat hendrerit ut, tempor a eros. Pellentesque vehicula tempor lorem consectetur varius.
|
|
223
|
-
{'\n'}
|
|
224
|
-
{'\n'}
|
|
225
|
-
Sed mauris massa, lacinia nec turpis quis, vulputate hendrerit eros. Interdum et malesuada fames ac ante ipsum
|
|
226
|
-
primis in faucibus. Nullam fringilla orci nec dui semper gravida. Ut fermentum, tellus sit amet blandit
|
|
227
|
-
suscipit, mi mauris porta est, ut efficitur velit sem vulputate sapien. Donec nisi leo, ornare ac aliquet sed,
|
|
228
|
-
tincidunt sit amet ex. Sed metus nulla, vehicula a pretium eget, lacinia at dui. Nulla at felis vel arcu
|
|
229
|
-
sagittis pretium. Nulla non dapibus arcu. Vestibulum non erat eget velit lacinia mattis. Praesent pretium
|
|
230
|
-
facilisis placerat. Suspendisse vel sem bibendum, congue sapien in, consequat ipsum. Suspendisse ac arcu
|
|
231
|
-
convallis, elementum leo et, posuere orci. Aenean sagittis dictum pellentesque.
|
|
232
|
-
</Text>
|
|
233
|
-
</SwipeablePanel>
|
|
234
|
-
|
|
235
|
-
<View style={{ justifyContent: 'center', alignItems: 'center', backgroundColor: Colors.white }}>
|
|
236
|
-
<Button>
|
|
237
|
-
<Text color="white">Button</Text>
|
|
238
|
-
</Button>
|
|
239
|
-
</View>
|
|
240
|
-
</>
|
|
241
|
-
),
|
|
242
|
-
};
|
|
243
|
-
|
|
244
|
-
export const Maximized = {
|
|
245
|
-
render: () => (
|
|
246
|
-
<SwipeablePanel maximized offset={130}>
|
|
247
|
-
<Text>
|
|
248
|
-
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse vel egestas sem. Lorem ipsum dolor sit
|
|
249
|
-
amet, consectetur adipiscing elit. Etiam id ornare ex. Aliquam pharetra eleifend felis eu ultricies. Proin non
|
|
250
|
-
tristique turpis. Nulla et metus molestie, convallis augue nec, faucibus mi. In vitae gravida dui, vel hendrerit
|
|
251
|
-
elit. Donec nec tempor purus. Donec tempus libero vitae cursus laoreet. Sed metus arcu, accumsan dapibus
|
|
252
|
-
molestie a, iaculis sed ipsum. Cras ante quam, rhoncus eu euismod nec, bibendum at mauris.
|
|
253
|
-
{'\n'}
|
|
254
|
-
{'\n'}
|
|
255
|
-
Etiam aliquet leo sit amet mi iaculis molestie ac non lacus. Nam vitae nisl aliquam, vulputate magna sit amet,
|
|
256
|
-
ullamcorper mauris. Praesent vulputate eros eget ligula cursus, vel condimentum justo ultricies. Nunc rutrum
|
|
257
|
-
sodales sapien, at mattis enim pretium non. Vivamus lobortis libero vulputate, tempor risus quis, vestibulum
|
|
258
|
-
odio. Cras sodales placerat varius. Quisque felis lacus, auctor ac pharetra sit amet, blandit at arcu. In hac
|
|
259
|
-
habitasse platea dictumst. Ut faucibus, massa id lacinia tincidunt, justo justo pellentesque nisi, eget aliquam
|
|
260
|
-
mauris ex vel dolor. Quisque vel lectus ante. Suspendisse efficitur leo eu urna imperdiet placerat. Duis vel
|
|
261
|
-
neque sed lacus convallis aliquet. Cras vehicula purus ut tellus eleifend tempor. In est erat, sollicitudin
|
|
262
|
-
volutpat hendrerit ut, tempor a eros. Pellentesque vehicula tempor lorem consectetur varius.
|
|
263
|
-
{'\n'}
|
|
264
|
-
{'\n'}
|
|
265
|
-
Sed mauris massa, lacinia nec turpis quis, vulputate hendrerit eros. Interdum et malesuada fames ac ante ipsum
|
|
266
|
-
primis in faucibus. Nullam fringilla orci nec dui semper gravida. Ut fermentum, tellus sit amet blandit
|
|
267
|
-
suscipit, mi mauris porta est, ut efficitur velit sem vulputate sapien. Donec nisi leo, ornare ac aliquet sed,
|
|
268
|
-
tincidunt sit amet ex. Sed metus nulla, vehicula a pretium eget, lacinia at dui. Nulla at felis vel arcu
|
|
269
|
-
sagittis pretium. Nulla non dapibus arcu. Vestibulum non erat eget velit lacinia mattis. Praesent pretium
|
|
270
|
-
facilisis placerat. Suspendisse vel sem bibendum, congue sapien in, consequat ipsum. Suspendisse ac arcu
|
|
271
|
-
convallis, elementum leo et, posuere orci. Aenean sagittis dictum pellentesque.
|
|
272
|
-
{'\n'}
|
|
273
|
-
{'\n'}
|
|
274
|
-
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse vel egestas sem. Lorem ipsum dolor sit
|
|
275
|
-
amet, consectetur adipiscing elit. Etiam id ornare ex. Aliquam pharetra eleifend felis eu ultricies. Proin non
|
|
276
|
-
tristique turpis. Nulla et metus molestie, convallis augue nec, faucibus mi. In vitae gravida dui, vel hendrerit
|
|
277
|
-
elit. Donec nec tempor purus. Donec tempus libero vitae cursus laoreet. Sed metus arcu, accumsan dapibus
|
|
278
|
-
molestie a, iaculis sed ipsum. Cras ante quam, rhoncus eu euismod nec, bibendum at mauris.
|
|
279
|
-
{'\n'}
|
|
280
|
-
{'\n'}
|
|
281
|
-
Etiam aliquet leo sit amet mi iaculis molestie ac non lacus. Nam vitae nisl aliquam, vulputate magna sit amet,
|
|
282
|
-
ullamcorper mauris. Praesent vulputate eros eget ligula cursus, vel condimentum justo ultricies. Nunc rutrum
|
|
283
|
-
sodales sapien, at mattis enim pretium non. Vivamus lobortis libero vulputate, tempor risus quis, vestibulum
|
|
284
|
-
odio. Cras sodales placerat varius. Quisque felis lacus, auctor ac pharetra sit amet, blandit at arcu. In hac
|
|
285
|
-
habitasse platea dictumst. Ut faucibus, massa id lacinia tincidunt, justo justo pellentesque nisi, eget aliquam
|
|
286
|
-
mauris ex vel dolor. Quisque vel lectus ante. Suspendisse efficitur leo eu urna imperdiet placerat. Duis vel
|
|
287
|
-
neque sed lacus convallis aliquet. Cras vehicula purus ut tellus eleifend tempor. In est erat, sollicitudin
|
|
288
|
-
volutpat hendrerit ut, tempor a eros. Pellentesque vehicula tempor lorem consectetur varius.
|
|
289
|
-
{'\n'}
|
|
290
|
-
{'\n'}
|
|
291
|
-
Sed mauris massa, lacinia nec turpis quis, vulputate hendrerit eros. Interdum et malesuada fames ac ante ipsum
|
|
292
|
-
primis in faucibus. Nullam fringilla orci nec dui semper gravida. Ut fermentum, tellus sit amet blandit
|
|
293
|
-
suscipit, mi mauris porta est, ut efficitur velit sem vulputate sapien. Donec nisi leo, ornare ac aliquet sed,
|
|
294
|
-
tincidunt sit amet ex. Sed metus nulla, vehicula a pretium eget, lacinia at dui. Nulla at felis vel arcu
|
|
295
|
-
sagittis pretium. Nulla non dapibus arcu. Vestibulum non erat eget velit lacinia mattis. Praesent pretium
|
|
296
|
-
facilisis placerat. Suspendisse vel sem bibendum, congue sapien in, consequat ipsum. Suspendisse ac arcu
|
|
297
|
-
convallis, elementum leo et, posuere orci. Aenean sagittis dictum pellentesque.
|
|
298
|
-
</Text>
|
|
299
|
-
</SwipeablePanel>
|
|
300
|
-
),
|
|
301
|
-
};
|
|
302
|
-
|
|
303
|
-
export const LockPanel = {
|
|
304
|
-
render: () => (
|
|
305
|
-
<SwipeablePanel lockPanel offset={130}>
|
|
306
|
-
<Text>
|
|
307
|
-
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse vel egestas sem. Lorem ipsum dolor sit
|
|
308
|
-
amet, consectetur adipiscing elit. Etiam id ornare ex. Aliquam pharetra eleifend felis eu ultricies. Proin non
|
|
309
|
-
tristique turpis. Nulla et metus molestie, convallis augue nec, faucibus mi. In vitae gravida dui, vel hendrerit
|
|
310
|
-
elit. Donec nec tempor purus. Donec tempus libero vitae cursus laoreet. Sed metus arcu, accumsan dapibus
|
|
311
|
-
molestie a, iaculis sed ipsum. Cras ante quam, rhoncus eu euismod nec, bibendum at mauris.
|
|
312
|
-
{'\n'}
|
|
313
|
-
{'\n'}
|
|
314
|
-
Etiam aliquet leo sit amet mi iaculis molestie ac non lacus. Nam vitae nisl aliquam, vulputate magna sit amet,
|
|
315
|
-
ullamcorper mauris. Praesent vulputate eros eget ligula cursus, vel condimentum justo ultricies. Nunc rutrum
|
|
316
|
-
sodales sapien, at mattis enim pretium non. Vivamus lobortis libero vulputate, tempor risus quis, vestibulum
|
|
317
|
-
odio. Cras sodales placerat varius. Quisque felis lacus, auctor ac pharetra sit amet, blandit at arcu. In hac
|
|
318
|
-
habitasse platea dictumst. Ut faucibus, massa id lacinia tincidunt, justo justo pellentesque nisi, eget aliquam
|
|
319
|
-
mauris ex vel dolor. Quisque vel lectus ante. Suspendisse efficitur leo eu urna imperdiet placerat. Duis vel
|
|
320
|
-
neque sed lacus convallis aliquet. Cras vehicula purus ut tellus eleifend tempor. In est erat, sollicitudin
|
|
321
|
-
volutpat hendrerit ut, tempor a eros. Pellentesque vehicula tempor lorem consectetur varius.
|
|
322
|
-
{'\n'}
|
|
323
|
-
{'\n'}
|
|
324
|
-
Sed mauris massa, lacinia nec turpis quis, vulputate hendrerit eros. Interdum et malesuada fames ac ante ipsum
|
|
325
|
-
primis in faucibus. Nullam fringilla orci nec dui semper gravida. Ut fermentum, tellus sit amet blandit
|
|
326
|
-
suscipit, mi mauris porta est, ut efficitur velit sem vulputate sapien. Donec nisi leo, ornare ac aliquet sed,
|
|
327
|
-
tincidunt sit amet ex. Sed metus nulla, vehicula a pretium eget, lacinia at dui. Nulla at felis vel arcu
|
|
328
|
-
sagittis pretium. Nulla non dapibus arcu. Vestibulum non erat eget velit lacinia mattis. Praesent pretium
|
|
329
|
-
facilisis placerat. Suspendisse vel sem bibendum, congue sapien in, consequat ipsum. Suspendisse ac arcu
|
|
330
|
-
convallis, elementum leo et, posuere orci. Aenean sagittis dictum pellentesque.
|
|
331
|
-
{'\n'}
|
|
332
|
-
{'\n'}
|
|
333
|
-
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse vel egestas sem. Lorem ipsum dolor sit
|
|
334
|
-
amet, consectetur adipiscing elit. Etiam id ornare ex. Aliquam pharetra eleifend felis eu ultricies. Proin non
|
|
335
|
-
tristique turpis. Nulla et metus molestie, convallis augue nec, faucibus mi. In vitae gravida dui, vel hendrerit
|
|
336
|
-
elit. Donec nec tempor purus. Donec tempus libero vitae cursus laoreet. Sed metus arcu, accumsan dapibus
|
|
337
|
-
molestie a, iaculis sed ipsum. Cras ante quam, rhoncus eu euismod nec, bibendum at mauris.
|
|
338
|
-
{'\n'}
|
|
339
|
-
{'\n'}
|
|
340
|
-
Etiam aliquet leo sit amet mi iaculis molestie ac non lacus. Nam vitae nisl aliquam, vulputate magna sit amet,
|
|
341
|
-
ullamcorper mauris. Praesent vulputate eros eget ligula cursus, vel condimentum justo ultricies. Nunc rutrum
|
|
342
|
-
sodales sapien, at mattis enim pretium non. Vivamus lobortis libero vulputate, tempor risus quis, vestibulum
|
|
343
|
-
odio. Cras sodales placerat varius. Quisque felis lacus, auctor ac pharetra sit amet, blandit at arcu. In hac
|
|
344
|
-
habitasse platea dictumst. Ut faucibus, massa id lacinia tincidunt, justo justo pellentesque nisi, eget aliquam
|
|
345
|
-
mauris ex vel dolor. Quisque vel lectus ante. Suspendisse efficitur leo eu urna imperdiet placerat. Duis vel
|
|
346
|
-
neque sed lacus convallis aliquet. Cras vehicula purus ut tellus eleifend tempor. In est erat, sollicitudin
|
|
347
|
-
volutpat hendrerit ut, tempor a eros. Pellentesque vehicula tempor lorem consectetur varius.
|
|
348
|
-
{'\n'}
|
|
349
|
-
{'\n'}
|
|
350
|
-
Sed mauris massa, lacinia nec turpis quis, vulputate hendrerit eros. Interdum et malesuada fames ac ante ipsum
|
|
351
|
-
primis in faucibus. Nullam fringilla orci nec dui semper gravida. Ut fermentum, tellus sit amet blandit
|
|
352
|
-
suscipit, mi mauris porta est, ut efficitur velit sem vulputate sapien. Donec nisi leo, ornare ac aliquet sed,
|
|
353
|
-
tincidunt sit amet ex. Sed metus nulla, vehicula a pretium eget, lacinia at dui. Nulla at felis vel arcu
|
|
354
|
-
sagittis pretium. Nulla non dapibus arcu. Vestibulum non erat eget velit lacinia mattis. Praesent pretium
|
|
355
|
-
facilisis placerat. Suspendisse vel sem bibendum, congue sapien in, consequat ipsum. Suspendisse ac arcu
|
|
356
|
-
convallis, elementum leo et, posuere orci. Aenean sagittis dictum pellentesque.
|
|
357
|
-
</Text>
|
|
358
|
-
</SwipeablePanel>
|
|
359
|
-
),
|
|
360
|
-
};
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { View } from 'react-native';
|
|
2
|
-
|
|
3
|
-
import { Switch } from '../components';
|
|
4
|
-
|
|
5
|
-
export default {
|
|
6
|
-
title: 'Switch',
|
|
7
|
-
component: Switch,
|
|
8
|
-
};
|
|
9
|
-
|
|
10
|
-
export const Size = {
|
|
11
|
-
render: () => (
|
|
12
|
-
<>
|
|
13
|
-
<Switch value onValueChange={() => {}} />
|
|
14
|
-
<View style={{ marginVertical: 30 }} />
|
|
15
|
-
<Switch value={false} onValueChange={() => {}} />
|
|
16
|
-
<View style={{ marginVertical: 30 }} />
|
|
17
|
-
<Switch value onValueChange={() => {}} size="small" />
|
|
18
|
-
<View style={{ marginVertical: 30 }} />
|
|
19
|
-
<Switch value={false} onValueChange={() => {}} size="small" />
|
|
20
|
-
</>
|
|
21
|
-
),
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
export const Disabled = {
|
|
25
|
-
render: () => (
|
|
26
|
-
<>
|
|
27
|
-
<Switch value onValueChange={() => {}} disabled />
|
|
28
|
-
<View style={{ marginVertical: 30 }} />
|
|
29
|
-
<Switch value={false} onValueChange={() => {}} disabled />
|
|
30
|
-
<View style={{ marginVertical: 30 }} />
|
|
31
|
-
<Switch value onValueChange={() => {}} size="small" disabled />
|
|
32
|
-
<View style={{ marginVertical: 30 }} />
|
|
33
|
-
<Switch value={false} onValueChange={() => {}} size="small" disabled />
|
|
34
|
-
</>
|
|
35
|
-
),
|
|
36
|
-
};
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { useState } from 'react';
|
|
2
|
-
|
|
3
|
-
import { Button, TakePicture, Text } from '../components';
|
|
4
|
-
|
|
5
|
-
export default {
|
|
6
|
-
title: 'Take Picture',
|
|
7
|
-
component: TakePicture,
|
|
8
|
-
};
|
|
9
|
-
|
|
10
|
-
const DefaultComponent = () => {
|
|
11
|
-
const [takePicture, setTakePicture] = useState<boolean>(false);
|
|
12
|
-
return (
|
|
13
|
-
<>
|
|
14
|
-
<Button onPress={() => setTakePicture(true)}>
|
|
15
|
-
<Text color="white">Take picture</Text>
|
|
16
|
-
</Button>
|
|
17
|
-
|
|
18
|
-
<TakePicture
|
|
19
|
-
visible={takePicture}
|
|
20
|
-
onClose={() => setTakePicture(false)}
|
|
21
|
-
cameraErrorMessage="No access to the camera"
|
|
22
|
-
requestPermissionsMessage="Grant access to the camera"
|
|
23
|
-
processingPictureMessage="Processing"
|
|
24
|
-
repeatPictureText="Repeat"
|
|
25
|
-
usePictureText="Use"
|
|
26
|
-
/>
|
|
27
|
-
</>
|
|
28
|
-
);
|
|
29
|
-
};
|
|
30
|
-
|
|
31
|
-
const AvatarComponent = () => {
|
|
32
|
-
const [takePicture, setTakePicture] = useState<boolean>(false);
|
|
33
|
-
return (
|
|
34
|
-
<>
|
|
35
|
-
<Button onPress={() => setTakePicture(true)}>
|
|
36
|
-
<Text color="white">Take avatar picture</Text>
|
|
37
|
-
</Button>
|
|
38
|
-
|
|
39
|
-
<TakePicture
|
|
40
|
-
visible={takePicture}
|
|
41
|
-
onClose={() => setTakePicture(false)}
|
|
42
|
-
cameraErrorMessage="No access to the camera"
|
|
43
|
-
requestPermissionsMessage="Grant access to the camera"
|
|
44
|
-
processingPictureMessage="Processing"
|
|
45
|
-
repeatPictureText="Repeat"
|
|
46
|
-
usePictureText="Use"
|
|
47
|
-
avatar
|
|
48
|
-
/>
|
|
49
|
-
</>
|
|
50
|
-
);
|
|
51
|
-
};
|
|
52
|
-
|
|
53
|
-
export const Default = {
|
|
54
|
-
render: DefaultComponent,
|
|
55
|
-
};
|
|
56
|
-
|
|
57
|
-
export const Avatar = {
|
|
58
|
-
render: AvatarComponent,
|
|
59
|
-
};
|
package/stories/Text.stories.tsx
DELETED
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import { Text } from '../components';
|
|
2
|
-
|
|
3
|
-
export default {
|
|
4
|
-
title: 'Text',
|
|
5
|
-
component: Text,
|
|
6
|
-
};
|
|
7
|
-
|
|
8
|
-
export const Size = {
|
|
9
|
-
render: () => (
|
|
10
|
-
<>
|
|
11
|
-
<Text size="huge">This is the huge text size</Text>
|
|
12
|
-
<Text size="extra-large">This is the extra large text size</Text>
|
|
13
|
-
<Text size="large">This is the large text size</Text>
|
|
14
|
-
<Text>This is the medium text size (default)</Text>
|
|
15
|
-
<Text size="small">This is the small text size</Text>
|
|
16
|
-
<Text size="tiny">This is the tiny text size</Text>
|
|
17
|
-
</>
|
|
18
|
-
),
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
export const Color = {
|
|
22
|
-
render: () => (
|
|
23
|
-
<>
|
|
24
|
-
<Text>This is the dark text color (default)</Text>
|
|
25
|
-
<Text color="light">This is the light text color</Text>
|
|
26
|
-
<Text color="lighter">This is the light text color</Text>
|
|
27
|
-
<Text color="white">This is the white text color</Text>
|
|
28
|
-
<Text color="midgreen">This is the mid green text color</Text>
|
|
29
|
-
<Text color="green">This is the green text color</Text>
|
|
30
|
-
<Text color="brightviolet">This is the Bright Violet text color</Text>
|
|
31
|
-
<Text color="violet">This is the Violet text color</Text>
|
|
32
|
-
<Text color="red">This is the Red text color</Text>
|
|
33
|
-
<Text color="brightblue">This is the Blue text color</Text>
|
|
34
|
-
<Text color="electricblue">This is the Electric Blue text color</Text>
|
|
35
|
-
<Text color="yellow">This is the Yellow text color</Text>
|
|
36
|
-
<Text color="darkyellow">This is the Dark Yellow text color</Text>
|
|
37
|
-
<Text color="lightgold">This is the Light Gold text color</Text>
|
|
38
|
-
<Text color="gold">This is the Gold text color</Text>
|
|
39
|
-
</>
|
|
40
|
-
),
|
|
41
|
-
};
|
|
42
|
-
|
|
43
|
-
export const Weight = {
|
|
44
|
-
render: () => (
|
|
45
|
-
<>
|
|
46
|
-
<Text>This is the default (regular) text weight</Text>
|
|
47
|
-
<Text weight="semiBold">This is the semiBold text weight</Text>
|
|
48
|
-
<Text weight="bold">This is the bold text weight</Text>
|
|
49
|
-
</>
|
|
50
|
-
),
|
|
51
|
-
};
|
|
52
|
-
|
|
53
|
-
export const Variant = {
|
|
54
|
-
render: () => (
|
|
55
|
-
<>
|
|
56
|
-
<Text>This is the default variant</Text>
|
|
57
|
-
<Text variant="uppercase">This is the uppercase variant</Text>
|
|
58
|
-
<Text variant="lowercase">This is the lowercase variant</Text>
|
|
59
|
-
</>
|
|
60
|
-
),
|
|
61
|
-
};
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { Dimensions, View } from 'react-native';
|
|
2
|
-
|
|
3
|
-
import { Textarea } from '../components';
|
|
4
|
-
|
|
5
|
-
const { width } = Dimensions.get('window');
|
|
6
|
-
|
|
7
|
-
export default {
|
|
8
|
-
title: 'Textarea',
|
|
9
|
-
component: Textarea,
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
export const Variant = {
|
|
13
|
-
render: () => (
|
|
14
|
-
<>
|
|
15
|
-
<Textarea placeholder="Placeholder" onChange={() => {}} />
|
|
16
|
-
<Textarea placeholder="Placeholder" onChange={() => {}} variant="completed" />
|
|
17
|
-
<Textarea placeholder="Placeholder" onChange={() => {}} variant="error" />
|
|
18
|
-
</>
|
|
19
|
-
),
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
export const Disabled = {
|
|
23
|
-
render: () => (
|
|
24
|
-
<>
|
|
25
|
-
<Textarea placeholder="Placeholder" onChange={() => {}} disabled />
|
|
26
|
-
<Textarea placeholder="Placeholder" onChange={() => {}} variant="completed" disabled />
|
|
27
|
-
<Textarea placeholder="Placeholder" onChange={() => {}} variant="error" disabled />
|
|
28
|
-
</>
|
|
29
|
-
),
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
export const FitToContainer = {
|
|
33
|
-
render: () => (
|
|
34
|
-
<>
|
|
35
|
-
<View style={{ width }}>
|
|
36
|
-
<Textarea placeholder="Placeholder" onChange={() => {}} fitToContainer />
|
|
37
|
-
</View>
|
|
38
|
-
|
|
39
|
-
<View style={{ width: width - 100 }}>
|
|
40
|
-
<Textarea placeholder="Placeholder" onChange={() => {}} variant="completed" fitToContainer />
|
|
41
|
-
</View>
|
|
42
|
-
|
|
43
|
-
<View style={{ width: width - 180 }}>
|
|
44
|
-
<Textarea placeholder="Placeholder" onChange={() => {}} variant="error" fitToContainer />
|
|
45
|
-
</View>
|
|
46
|
-
</>
|
|
47
|
-
),
|
|
48
|
-
};
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import { useRef } from 'react';
|
|
2
|
-
import { View } from 'react-native';
|
|
3
|
-
|
|
4
|
-
import { Button, Text, TimeOutButton } from '../components';
|
|
5
|
-
|
|
6
|
-
export default {
|
|
7
|
-
title: 'TimeOutButton',
|
|
8
|
-
component: TimeOutButton,
|
|
9
|
-
};
|
|
10
|
-
|
|
11
|
-
export const Default = {
|
|
12
|
-
render: () => (
|
|
13
|
-
<TimeOutButton time={3000} onPress={() => {}}>
|
|
14
|
-
<Text color="white">Button text</Text>
|
|
15
|
-
</TimeOutButton>
|
|
16
|
-
),
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
export const Warning = {
|
|
20
|
-
render: () => (
|
|
21
|
-
<TimeOutButton warning time={3000} onPress={() => {}}>
|
|
22
|
-
<Text color="white">Button text</Text>
|
|
23
|
-
</TimeOutButton>
|
|
24
|
-
),
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
const StopTimeComponent = () => {
|
|
28
|
-
// Replace 'any' with the actual type if available, e.g. React.RefObject<TimeOutButtonHandle>
|
|
29
|
-
const timeOutRef = useRef<any>(null);
|
|
30
|
-
|
|
31
|
-
return (
|
|
32
|
-
<>
|
|
33
|
-
<TimeOutButton time={3000} onPress={() => {}} ref={timeOutRef}>
|
|
34
|
-
<Text color="white">Button text</Text>
|
|
35
|
-
</TimeOutButton>
|
|
36
|
-
|
|
37
|
-
<View style={{ marginVertical: 50 }} />
|
|
38
|
-
|
|
39
|
-
<Button
|
|
40
|
-
variant="inverted"
|
|
41
|
-
onPress={() => {
|
|
42
|
-
if (timeOutRef.current) {
|
|
43
|
-
timeOutRef.current.onStop();
|
|
44
|
-
}
|
|
45
|
-
}}
|
|
46
|
-
>
|
|
47
|
-
<Text color="white">Stop time</Text>
|
|
48
|
-
</Button>
|
|
49
|
-
</>
|
|
50
|
-
);
|
|
51
|
-
};
|
|
52
|
-
|
|
53
|
-
export const StopTime = {
|
|
54
|
-
render: StopTimeComponent,
|
|
55
|
-
};
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { Button, sendMessage, Text, Toast } from '../components';
|
|
2
|
-
|
|
3
|
-
export default {
|
|
4
|
-
title: 'Toast',
|
|
5
|
-
component: Toast,
|
|
6
|
-
};
|
|
7
|
-
|
|
8
|
-
export const Variant = {
|
|
9
|
-
render: () => (
|
|
10
|
-
<>
|
|
11
|
-
<Button
|
|
12
|
-
onPress={() =>
|
|
13
|
-
sendMessage({
|
|
14
|
-
variant: 'success',
|
|
15
|
-
message: 'Success message text',
|
|
16
|
-
description: 'Success message description',
|
|
17
|
-
})
|
|
18
|
-
}
|
|
19
|
-
>
|
|
20
|
-
<Text color="white">Success message text</Text>
|
|
21
|
-
</Button>
|
|
22
|
-
<Button
|
|
23
|
-
variant="error"
|
|
24
|
-
onPress={() =>
|
|
25
|
-
sendMessage({
|
|
26
|
-
variant: 'error',
|
|
27
|
-
message: 'Error message text',
|
|
28
|
-
description: 'Error message description',
|
|
29
|
-
})
|
|
30
|
-
}
|
|
31
|
-
>
|
|
32
|
-
<Text color="white">Error message text</Text>
|
|
33
|
-
</Button>
|
|
34
|
-
<Toast />
|
|
35
|
-
</>
|
|
36
|
-
),
|
|
37
|
-
};
|