@hoddy-ui/core 1.0.88 → 1.0.90
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/next/components/AdaptiveStatusBarNext.tsx +38 -0
- package/next/dist/index.d.mts +550 -0
- package/next/dist/index.d.ts +550 -0
- package/next/dist/index.js +2143 -0
- package/next/dist/index.js.map +1 -0
- package/next/dist/index.mjs +2110 -0
- package/next/dist/index.mjs.map +1 -0
- package/next/index.ts +33 -0
- package/next/package.json +51 -0
- package/next/tsup.config.ts +11 -0
- package/package.json +6 -6
- package/src/Components/Button.tsx +94 -81
- package/src/Components/Locator.tsx +3 -8
- package/src/Components/OTPInput.tsx +45 -26
- package/src/Components/Popup.tsx +13 -6
- package/src/Components/TextField.tsx +27 -28
- package/src/Components/Typography.tsx +60 -48
- package/src/config/KeyManager.ts +7 -6
- package/src/config/index.ts +4 -2
- package/src/types.ts +4 -1
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { useFocusEffect } from "expo-router";
|
|
2
|
+
import React, { useState } from "react";
|
|
3
|
+
import { Platform, StatusBar } from "react-native";
|
|
4
|
+
import { useColors, useTheme } from "../../src/hooks";
|
|
5
|
+
|
|
6
|
+
const AdaptiveStatusBar = ({ translucent = false }) => {
|
|
7
|
+
const [focused, setFocused] = useState(false);
|
|
8
|
+
const colors = useColors();
|
|
9
|
+
const theme = useTheme();
|
|
10
|
+
useFocusEffect(
|
|
11
|
+
React.useCallback(() => {
|
|
12
|
+
// setFocused(true);
|
|
13
|
+
StatusBar.setBarStyle(
|
|
14
|
+
theme === "dark" ? "light-content" : "dark-content"
|
|
15
|
+
);
|
|
16
|
+
if (Platform.OS === "android") {
|
|
17
|
+
StatusBar.setBackgroundColor(
|
|
18
|
+
colors.white[1] + (translucent ? "0" : "")
|
|
19
|
+
);
|
|
20
|
+
StatusBar.setTranslucent(true);
|
|
21
|
+
}
|
|
22
|
+
// return () => setFocused(false);
|
|
23
|
+
}, [theme])
|
|
24
|
+
);
|
|
25
|
+
|
|
26
|
+
React.useEffect(() => {
|
|
27
|
+
// setFocused(true);
|
|
28
|
+
StatusBar.setBarStyle(theme === "dark" ? "light-content" : "dark-content");
|
|
29
|
+
if (Platform.OS === "android") {
|
|
30
|
+
StatusBar.setBackgroundColor(colors.white[1] + (translucent ? "0" : ""));
|
|
31
|
+
StatusBar.setTranslucent(true);
|
|
32
|
+
}
|
|
33
|
+
// return () => setFocused(false);
|
|
34
|
+
}, [theme]);
|
|
35
|
+
return <></>;
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
export default AdaptiveStatusBar;
|
|
@@ -0,0 +1,550 @@
|
|
|
1
|
+
import React, { ReactNode, FC } from 'react';
|
|
2
|
+
import { ViewStyle, TextStyle, NativeSyntheticEvent, NativeScrollEvent, TextInputProps, TextProps } from 'react-native';
|
|
3
|
+
|
|
4
|
+
type ThemeTypes = "dark" | "light";
|
|
5
|
+
type ThemeModes = "dark" | "light" | "default";
|
|
6
|
+
type colorTypes = "primary" | "secondary" | "light" | "dark" | "info" | "warning" | "error" | "success" | "blue" | "textSecondary";
|
|
7
|
+
type extraColorTypes = {
|
|
8
|
+
dark?: {
|
|
9
|
+
[key: string]: {
|
|
10
|
+
main?: string;
|
|
11
|
+
light?: string;
|
|
12
|
+
dark?: string;
|
|
13
|
+
text?: string;
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
light?: {
|
|
17
|
+
[key: string]: {
|
|
18
|
+
main?: string;
|
|
19
|
+
light?: string;
|
|
20
|
+
dark?: string;
|
|
21
|
+
text?: string;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
};
|
|
25
|
+
interface ThemeState {
|
|
26
|
+
value: ThemeTypes;
|
|
27
|
+
mode: ThemeModes;
|
|
28
|
+
}
|
|
29
|
+
interface ThemeContext {
|
|
30
|
+
themeState: ThemeState;
|
|
31
|
+
themeDispatch?: any;
|
|
32
|
+
}
|
|
33
|
+
interface ThemeProviderProps {
|
|
34
|
+
children: ReactNode;
|
|
35
|
+
}
|
|
36
|
+
interface AlertXProps {
|
|
37
|
+
type: "info" | "warning" | "success" | "error";
|
|
38
|
+
variant?: "contained" | "outlined";
|
|
39
|
+
title?: string;
|
|
40
|
+
gutterBottom?: number;
|
|
41
|
+
body: string;
|
|
42
|
+
style?: ViewStyle;
|
|
43
|
+
}
|
|
44
|
+
interface AvatarProps {
|
|
45
|
+
color?: colorTypes;
|
|
46
|
+
label?: string;
|
|
47
|
+
variant?: "outlined" | "contained";
|
|
48
|
+
source?: any;
|
|
49
|
+
size?: number;
|
|
50
|
+
style?: ViewStyle;
|
|
51
|
+
}
|
|
52
|
+
interface ButtonProps {
|
|
53
|
+
color?: colorTypes;
|
|
54
|
+
variant?: "text" | "outlined" | "contained";
|
|
55
|
+
gutterBottom?: number;
|
|
56
|
+
elevation?: number;
|
|
57
|
+
onPress?: () => void;
|
|
58
|
+
disabled?: boolean;
|
|
59
|
+
title?: string;
|
|
60
|
+
loading?: boolean;
|
|
61
|
+
size?: "large" | "normal" | "small";
|
|
62
|
+
rounded?: boolean;
|
|
63
|
+
style?: ViewStyle;
|
|
64
|
+
fullWidth?: boolean;
|
|
65
|
+
translucent?: "dark" | undefined;
|
|
66
|
+
start?: ReactNode;
|
|
67
|
+
end?: ReactNode;
|
|
68
|
+
}
|
|
69
|
+
interface CheckboxProps {
|
|
70
|
+
color?: colorTypes;
|
|
71
|
+
label?: ReactNode;
|
|
72
|
+
size?: number;
|
|
73
|
+
checked?: boolean;
|
|
74
|
+
style?: ViewStyle;
|
|
75
|
+
onChange?: () => void;
|
|
76
|
+
}
|
|
77
|
+
interface FlashMessageProps {
|
|
78
|
+
message: string;
|
|
79
|
+
title?: string;
|
|
80
|
+
actions?: Array<{
|
|
81
|
+
title: string;
|
|
82
|
+
onPress?: () => void;
|
|
83
|
+
}>;
|
|
84
|
+
duration?: number;
|
|
85
|
+
type?: "success" | "warning" | "error";
|
|
86
|
+
}
|
|
87
|
+
interface LinkButtonProps {
|
|
88
|
+
title: string;
|
|
89
|
+
style?: TextStyle & ViewStyle;
|
|
90
|
+
color?: colorTypes;
|
|
91
|
+
fontSize?: number;
|
|
92
|
+
fontWeight?: string;
|
|
93
|
+
disabled?: boolean;
|
|
94
|
+
onPress?: () => void;
|
|
95
|
+
}
|
|
96
|
+
interface IconButtonProps {
|
|
97
|
+
style?: TextStyle;
|
|
98
|
+
color?: colorTypes;
|
|
99
|
+
fontSize?: number;
|
|
100
|
+
disabled?: boolean;
|
|
101
|
+
onPress?: () => void;
|
|
102
|
+
icon: any;
|
|
103
|
+
elevation?: number;
|
|
104
|
+
bg?: boolean;
|
|
105
|
+
size?: number;
|
|
106
|
+
containerStyles?: ViewStyle;
|
|
107
|
+
iconType?: "material" | "ion";
|
|
108
|
+
}
|
|
109
|
+
type locatorLocation = {
|
|
110
|
+
description: string;
|
|
111
|
+
longitude: number;
|
|
112
|
+
latitude: number;
|
|
113
|
+
};
|
|
114
|
+
type LocatorInputProps = {
|
|
115
|
+
onBlur?: () => void;
|
|
116
|
+
onFocus?: () => void;
|
|
117
|
+
clear?: () => void;
|
|
118
|
+
locateMe?: () => void;
|
|
119
|
+
value?: string;
|
|
120
|
+
onChangeText: (text: string) => void;
|
|
121
|
+
};
|
|
122
|
+
interface LocatorProps {
|
|
123
|
+
variant?: "contained" | "outlined";
|
|
124
|
+
onLocationSelected: (location: locatorLocation | null, formatted_address?: string) => void;
|
|
125
|
+
label?: string;
|
|
126
|
+
error?: string;
|
|
127
|
+
float?: boolean;
|
|
128
|
+
location?: locatorLocation | null;
|
|
129
|
+
gutterBottom?: number;
|
|
130
|
+
helperText?: string;
|
|
131
|
+
renderInput?: (props: LocatorInputProps) => ReactNode;
|
|
132
|
+
country?: string;
|
|
133
|
+
}
|
|
134
|
+
interface FormWrapperProps {
|
|
135
|
+
children: ReactNode;
|
|
136
|
+
behavior?: "position" | "height" | "padding";
|
|
137
|
+
contentContainerStyle?: ViewStyle;
|
|
138
|
+
mode?: "scroll" | "static";
|
|
139
|
+
keyboardVerticalOffset?: number;
|
|
140
|
+
style?: ViewStyle;
|
|
141
|
+
onScroll?: (event: NativeSyntheticEvent<NativeScrollEvent>) => void;
|
|
142
|
+
}
|
|
143
|
+
interface GridItemProps {
|
|
144
|
+
children: ReactNode;
|
|
145
|
+
col?: number;
|
|
146
|
+
alignItems?: "center" | "flex-start" | "flex-end";
|
|
147
|
+
spacing?: number;
|
|
148
|
+
style?: ViewStyle;
|
|
149
|
+
}
|
|
150
|
+
interface GridProps {
|
|
151
|
+
children: ReactNode;
|
|
152
|
+
spacing?: number;
|
|
153
|
+
style?: ViewStyle;
|
|
154
|
+
}
|
|
155
|
+
interface PopupProps {
|
|
156
|
+
title?: string;
|
|
157
|
+
keyboardVerticalOffset?: number;
|
|
158
|
+
sheet?: number | boolean;
|
|
159
|
+
bare?: boolean;
|
|
160
|
+
children: ReactNode;
|
|
161
|
+
open: boolean;
|
|
162
|
+
onClose?: () => void;
|
|
163
|
+
}
|
|
164
|
+
interface SpinnerProps {
|
|
165
|
+
label?: string;
|
|
166
|
+
size?: "large" | "small";
|
|
167
|
+
color?: colorTypes;
|
|
168
|
+
fullscreen?: boolean;
|
|
169
|
+
style?: ViewStyle;
|
|
170
|
+
}
|
|
171
|
+
interface TextFieldProps extends TextInputProps {
|
|
172
|
+
label?: string;
|
|
173
|
+
variant?: "outlined" | "text" | "contained";
|
|
174
|
+
color?: colorTypes;
|
|
175
|
+
size?: "small" | "normal" | "large";
|
|
176
|
+
type?: "email" | "tel" | "password" | "text" | "number" | "search";
|
|
177
|
+
helperText?: string;
|
|
178
|
+
value: any;
|
|
179
|
+
start?: ReactNode;
|
|
180
|
+
rounded?: boolean;
|
|
181
|
+
error?: string | string[];
|
|
182
|
+
disabled?: boolean;
|
|
183
|
+
style?: ViewStyle;
|
|
184
|
+
inputStyles?: any;
|
|
185
|
+
gutterBottom?: number;
|
|
186
|
+
end?: ReactNode;
|
|
187
|
+
options?: {
|
|
188
|
+
start?: ReactNode;
|
|
189
|
+
secondary?: string;
|
|
190
|
+
value: string | number;
|
|
191
|
+
label: string;
|
|
192
|
+
}[];
|
|
193
|
+
onFocus?: () => void;
|
|
194
|
+
onBlur?: () => void;
|
|
195
|
+
}
|
|
196
|
+
interface TypographyProps extends TextProps {
|
|
197
|
+
children: ReactNode;
|
|
198
|
+
color?: colorTypes | (string & {});
|
|
199
|
+
style?: TextStyle | ViewStyle;
|
|
200
|
+
textCase?: "capitalize" | "uppercase" | "lowercase" | null;
|
|
201
|
+
variant?: "caption" | "body1" | "body2" | "h6" | "h5" | "h4" | "h3" | "h2" | "h1";
|
|
202
|
+
align?: "center" | "left" | "right";
|
|
203
|
+
gutterBottom?: number;
|
|
204
|
+
numberOfLines?: number;
|
|
205
|
+
adjustsFontSizeToFit?: boolean;
|
|
206
|
+
fontFamily?: string;
|
|
207
|
+
fontWeight?: 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900;
|
|
208
|
+
}
|
|
209
|
+
interface SafeAreaViewProps {
|
|
210
|
+
children: ReactNode;
|
|
211
|
+
style?: ViewStyle;
|
|
212
|
+
}
|
|
213
|
+
interface SelectMenuProps {
|
|
214
|
+
open: boolean;
|
|
215
|
+
onClose: () => void;
|
|
216
|
+
value: any;
|
|
217
|
+
options: {
|
|
218
|
+
secondary?: string;
|
|
219
|
+
value: any;
|
|
220
|
+
label: string;
|
|
221
|
+
}[];
|
|
222
|
+
onChange: (value: string) => void;
|
|
223
|
+
disableAutoClose?: boolean;
|
|
224
|
+
label?: string;
|
|
225
|
+
secondary?: string;
|
|
226
|
+
helperText?: string;
|
|
227
|
+
}
|
|
228
|
+
interface OTPInputProps {
|
|
229
|
+
length?: number;
|
|
230
|
+
onChange: (value: string) => void;
|
|
231
|
+
value: string;
|
|
232
|
+
variant?: "outlined" | "text" | "contained";
|
|
233
|
+
spacing?: number;
|
|
234
|
+
size?: number;
|
|
235
|
+
}
|
|
236
|
+
interface RatingStarsProps {
|
|
237
|
+
rating: number;
|
|
238
|
+
size: number;
|
|
239
|
+
}
|
|
240
|
+
interface RatingInputProps {
|
|
241
|
+
rating?: number;
|
|
242
|
+
noReview?: boolean;
|
|
243
|
+
size?: number;
|
|
244
|
+
onSubmit?: (data: {
|
|
245
|
+
rating: number;
|
|
246
|
+
review: string;
|
|
247
|
+
}) => Promise<void>;
|
|
248
|
+
}
|
|
249
|
+
interface DividerProps {
|
|
250
|
+
color?: colorTypes;
|
|
251
|
+
gutterBottom?: number;
|
|
252
|
+
style?: ViewStyle;
|
|
253
|
+
height?: number;
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
type configProps = {
|
|
257
|
+
googleMapApiKey?: string;
|
|
258
|
+
colors?: extraColorTypes;
|
|
259
|
+
fontFamily?: string;
|
|
260
|
+
};
|
|
261
|
+
declare function initialize(config: configProps): void;
|
|
262
|
+
|
|
263
|
+
declare const AdaptiveStatusBar: ({ translucent }: {
|
|
264
|
+
translucent?: boolean | undefined;
|
|
265
|
+
}) => React.JSX.Element;
|
|
266
|
+
|
|
267
|
+
declare const AlertX: React.FC<AlertXProps>;
|
|
268
|
+
|
|
269
|
+
declare const Avatar: React.FC<AvatarProps>;
|
|
270
|
+
|
|
271
|
+
declare const LinkButton: React.FC<LinkButtonProps>;
|
|
272
|
+
declare const IconButton: React.FC<IconButtonProps>;
|
|
273
|
+
declare const Button: React.FC<ButtonProps>;
|
|
274
|
+
|
|
275
|
+
declare const CheckBox: FC<CheckboxProps>;
|
|
276
|
+
|
|
277
|
+
declare let showFlashMessage: (msg: FlashMessageProps) => void;
|
|
278
|
+
|
|
279
|
+
declare const FormWrapper: React.FC<FormWrapperProps>;
|
|
280
|
+
|
|
281
|
+
declare const RatingStars: FC<RatingStarsProps>;
|
|
282
|
+
declare const RatingInput: FC<RatingInputProps>;
|
|
283
|
+
|
|
284
|
+
declare const GridItem: React.FC<GridItemProps>;
|
|
285
|
+
declare const Grid: React.FC<GridProps>;
|
|
286
|
+
|
|
287
|
+
declare const getPredictionsFromCoords: (coords: any) => Promise<{
|
|
288
|
+
description: any;
|
|
289
|
+
id: any;
|
|
290
|
+
latLng: {
|
|
291
|
+
lst: any;
|
|
292
|
+
lng: any;
|
|
293
|
+
};
|
|
294
|
+
}[]>;
|
|
295
|
+
declare const Locator: React.FC<LocatorProps>;
|
|
296
|
+
|
|
297
|
+
declare const Popup: React.FC<PopupProps>;
|
|
298
|
+
|
|
299
|
+
declare const SafeAreaView: React.FC<SafeAreaViewProps>;
|
|
300
|
+
|
|
301
|
+
declare const Divider: FC<DividerProps>;
|
|
302
|
+
|
|
303
|
+
declare const SelectMenu: React.FC<SelectMenuProps>;
|
|
304
|
+
|
|
305
|
+
declare const Spinner: React.FC<SpinnerProps>;
|
|
306
|
+
|
|
307
|
+
declare const TextField: React.FC<TextFieldProps>;
|
|
308
|
+
declare const TextField2: React.FC<TextFieldProps>;
|
|
309
|
+
|
|
310
|
+
declare const Typography: React.FC<TypographyProps>;
|
|
311
|
+
|
|
312
|
+
declare const OTPInput: FC<OTPInputProps>;
|
|
313
|
+
|
|
314
|
+
declare const useColors: () => {
|
|
315
|
+
white: {
|
|
316
|
+
1: string;
|
|
317
|
+
2: string;
|
|
318
|
+
3: string;
|
|
319
|
+
4: string;
|
|
320
|
+
5: string;
|
|
321
|
+
};
|
|
322
|
+
black: {
|
|
323
|
+
1: string;
|
|
324
|
+
2: string;
|
|
325
|
+
3: string;
|
|
326
|
+
4: string;
|
|
327
|
+
5: string;
|
|
328
|
+
};
|
|
329
|
+
primary: {
|
|
330
|
+
main: string;
|
|
331
|
+
light: string;
|
|
332
|
+
dark: string;
|
|
333
|
+
text: string;
|
|
334
|
+
};
|
|
335
|
+
secondary: {
|
|
336
|
+
main: string;
|
|
337
|
+
light: string;
|
|
338
|
+
dark: string;
|
|
339
|
+
text: string;
|
|
340
|
+
};
|
|
341
|
+
light: {
|
|
342
|
+
main: string;
|
|
343
|
+
light: string;
|
|
344
|
+
dark: string;
|
|
345
|
+
text: string;
|
|
346
|
+
};
|
|
347
|
+
dark: {
|
|
348
|
+
main: string;
|
|
349
|
+
light: string;
|
|
350
|
+
dark: string;
|
|
351
|
+
text: string;
|
|
352
|
+
};
|
|
353
|
+
textSecondary: {
|
|
354
|
+
main: string;
|
|
355
|
+
light: string;
|
|
356
|
+
dark: string;
|
|
357
|
+
text: string;
|
|
358
|
+
};
|
|
359
|
+
blue: {
|
|
360
|
+
main: string;
|
|
361
|
+
light: string;
|
|
362
|
+
dark: string;
|
|
363
|
+
text: string;
|
|
364
|
+
};
|
|
365
|
+
info: {
|
|
366
|
+
main: string;
|
|
367
|
+
light: string;
|
|
368
|
+
dark: string;
|
|
369
|
+
text: string;
|
|
370
|
+
};
|
|
371
|
+
success: {
|
|
372
|
+
main: string;
|
|
373
|
+
light: string;
|
|
374
|
+
dark: string;
|
|
375
|
+
text: string;
|
|
376
|
+
};
|
|
377
|
+
warning: {
|
|
378
|
+
main: string;
|
|
379
|
+
light: string;
|
|
380
|
+
dark: string;
|
|
381
|
+
text: string;
|
|
382
|
+
};
|
|
383
|
+
error: {
|
|
384
|
+
main: string;
|
|
385
|
+
light: string;
|
|
386
|
+
dark: string;
|
|
387
|
+
text: string;
|
|
388
|
+
};
|
|
389
|
+
} | {
|
|
390
|
+
white: {
|
|
391
|
+
1: string;
|
|
392
|
+
2: string;
|
|
393
|
+
3: string;
|
|
394
|
+
4: string;
|
|
395
|
+
5: string;
|
|
396
|
+
};
|
|
397
|
+
black: {
|
|
398
|
+
1: string;
|
|
399
|
+
2: string;
|
|
400
|
+
3: string;
|
|
401
|
+
4: string;
|
|
402
|
+
5: string;
|
|
403
|
+
};
|
|
404
|
+
primary: {
|
|
405
|
+
main: string;
|
|
406
|
+
light: string;
|
|
407
|
+
dark: string;
|
|
408
|
+
text: string;
|
|
409
|
+
};
|
|
410
|
+
secondary: {
|
|
411
|
+
main: string;
|
|
412
|
+
light: string;
|
|
413
|
+
dark: string;
|
|
414
|
+
text: string;
|
|
415
|
+
};
|
|
416
|
+
light: {
|
|
417
|
+
main: string;
|
|
418
|
+
light: string;
|
|
419
|
+
dark: string;
|
|
420
|
+
text: string;
|
|
421
|
+
};
|
|
422
|
+
dark: {
|
|
423
|
+
main: string;
|
|
424
|
+
light: string;
|
|
425
|
+
dark: string;
|
|
426
|
+
text: string;
|
|
427
|
+
};
|
|
428
|
+
textSecondary: {
|
|
429
|
+
main: string;
|
|
430
|
+
light: string;
|
|
431
|
+
dark: string;
|
|
432
|
+
text: string;
|
|
433
|
+
};
|
|
434
|
+
blue: {
|
|
435
|
+
main: string;
|
|
436
|
+
light: string;
|
|
437
|
+
dark: string;
|
|
438
|
+
text: string;
|
|
439
|
+
};
|
|
440
|
+
info: {
|
|
441
|
+
main: string;
|
|
442
|
+
light: string;
|
|
443
|
+
dark: string;
|
|
444
|
+
text: string;
|
|
445
|
+
};
|
|
446
|
+
success: {
|
|
447
|
+
main: string;
|
|
448
|
+
light: string;
|
|
449
|
+
dark: string;
|
|
450
|
+
text: string;
|
|
451
|
+
};
|
|
452
|
+
warning: {
|
|
453
|
+
main: string;
|
|
454
|
+
light: string;
|
|
455
|
+
dark: string;
|
|
456
|
+
text: string;
|
|
457
|
+
};
|
|
458
|
+
error: {
|
|
459
|
+
main: string;
|
|
460
|
+
light: string;
|
|
461
|
+
dark: string;
|
|
462
|
+
text: string;
|
|
463
|
+
};
|
|
464
|
+
} | {
|
|
465
|
+
white: {
|
|
466
|
+
1: string;
|
|
467
|
+
2: string;
|
|
468
|
+
3: string;
|
|
469
|
+
4: string;
|
|
470
|
+
5: string;
|
|
471
|
+
};
|
|
472
|
+
black: {
|
|
473
|
+
1: string;
|
|
474
|
+
2: string;
|
|
475
|
+
3: string;
|
|
476
|
+
4: string;
|
|
477
|
+
5: string;
|
|
478
|
+
};
|
|
479
|
+
primary: {
|
|
480
|
+
main: string;
|
|
481
|
+
light: string;
|
|
482
|
+
dark: string;
|
|
483
|
+
text: string;
|
|
484
|
+
};
|
|
485
|
+
secondary: {
|
|
486
|
+
main: string;
|
|
487
|
+
light: string;
|
|
488
|
+
dark: string;
|
|
489
|
+
text: string;
|
|
490
|
+
};
|
|
491
|
+
light: {
|
|
492
|
+
main: string;
|
|
493
|
+
light: string;
|
|
494
|
+
dark: string;
|
|
495
|
+
text: string;
|
|
496
|
+
};
|
|
497
|
+
dark: {
|
|
498
|
+
main: string;
|
|
499
|
+
light: string;
|
|
500
|
+
dark: string;
|
|
501
|
+
text: string;
|
|
502
|
+
};
|
|
503
|
+
textSecondary: {
|
|
504
|
+
main: string;
|
|
505
|
+
light: string;
|
|
506
|
+
dark: string;
|
|
507
|
+
text: string;
|
|
508
|
+
};
|
|
509
|
+
blue: {
|
|
510
|
+
main: string;
|
|
511
|
+
light: string;
|
|
512
|
+
dark: string;
|
|
513
|
+
text: string;
|
|
514
|
+
};
|
|
515
|
+
info: {
|
|
516
|
+
main: string;
|
|
517
|
+
light: string;
|
|
518
|
+
dark: string;
|
|
519
|
+
text: string;
|
|
520
|
+
};
|
|
521
|
+
success: {
|
|
522
|
+
main: string;
|
|
523
|
+
light: string;
|
|
524
|
+
dark: string;
|
|
525
|
+
text: string;
|
|
526
|
+
};
|
|
527
|
+
warning: {
|
|
528
|
+
main: string;
|
|
529
|
+
light: string;
|
|
530
|
+
dark: string;
|
|
531
|
+
text: string;
|
|
532
|
+
};
|
|
533
|
+
error: {
|
|
534
|
+
main: string;
|
|
535
|
+
light: string;
|
|
536
|
+
dark: string;
|
|
537
|
+
text: string;
|
|
538
|
+
};
|
|
539
|
+
};
|
|
540
|
+
declare const useTheme: () => ThemeTypes;
|
|
541
|
+
declare const useNavScreenOptions: (type: "stack" | "tab" | "drawer") => any;
|
|
542
|
+
|
|
543
|
+
declare const UIThemeContext: React.Context<ThemeContext>;
|
|
544
|
+
declare const UIThemeProvider: ({ children }: ThemeProviderProps) => React.JSX.Element;
|
|
545
|
+
|
|
546
|
+
declare const HoddyUI: {
|
|
547
|
+
initialize: typeof initialize;
|
|
548
|
+
};
|
|
549
|
+
|
|
550
|
+
export { AdaptiveStatusBar, AlertX, Avatar, Button, CheckBox, Divider, FormWrapper, Grid, GridItem, IconButton, LinkButton, Locator, OTPInput, Popup, RatingInput, RatingStars, SafeAreaView, SelectMenu, Spinner, TextField, TextField2, Typography, UIThemeContext, UIThemeProvider, HoddyUI as default, getPredictionsFromCoords, showFlashMessage, useColors, useNavScreenOptions, useTheme };
|