UNPKG

react-native-dom-expo

Version:

A patch library to make Expo work with react-native-dom

41 lines (37 loc) 906 B
import { RCTModule } from 'react-native-dom'; export default class WebBrowser extends RCTModule { static moduleName = 'ExponentWebBrowser'; $$openBrowserAsync(url) { return new Promise((resolve, reject) => { try { this.win = window.open(url); this.win.onunload = () => { if (this.win) { this.win = null; resolve({ type: 'cancel' }); } else { resolve({ type: 'dismiss' }); } }; } catch (e) { reject(e); } }); } $$dismissBrowser() { return new Promise((resolve, reject) => { try { if (this.win) { const { win } = this; this.win = null; win.close(); resolve({ type: 'dismiss' }); } else { throw new Error('already dismissed'); } } catch (e) { reject(e); } }); } }