-
-
Notifications
You must be signed in to change notification settings - Fork 262
/
Copy pathindex.ts
25 lines (19 loc) · 760 Bytes
/
index.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import { NativeModules } from "react-native";
export type VisibilityStatus = "visible" | "hidden" | "transitioning";
export type Config = { fade?: boolean, duration?: number };
const NativeModule: {
hide: (fade: boolean, duration: number) => Promise<true>;
getVisibilityStatus: () => Promise<VisibilityStatus>;
} = NativeModules.RNBootSplash;
const DEFAULT_DURATION = 220;
export function hide(config: Config = {}): Promise<void> {
const { fade = false, duration = DEFAULT_DURATION } = config;
return NativeModule.hide(fade, Math.max(duration, DEFAULT_DURATION)).then(() => {});
}
export function getVisibilityStatus(): Promise<VisibilityStatus> {
return NativeModule.getVisibilityStatus();
}
export default {
hide,
getVisibilityStatus,
};