UNPKG

653 BJavaScriptView Raw
1/* @flow */
2
3import { NativeModules, findNodeHandle } from "react-native";
4
5const { RNViewShot } = NativeModules;
6
7export default async function takeSnapshotAsync(
8 view: ?(number | ReactElement<any>),
9 options ?: {
10 width ?: number;
11 height ?: number;
12 format ?: "png" | "jpg" | "jpeg" | "webm";
13 quality ?: number;
14 result ?: "file" | "base64" | "data-uri";
15 }
16): Promise<string> {
17 if (typeof view !== "number") {
18 const node = findNodeHandle(view);
19 if (!node) return Promise.reject(new Error("findNodeHandle failed to resolve view="+String(view)));
20 view = node;
21 }
22
23 return RNViewShot.takeSnapshot(view, options);
24}