UNPKG

react-native-tamara-sdk

Version:

Tamara React Native SDK

62 lines (61 loc) 1.78 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _react = _interopRequireDefault(require("react")); var _reactNative = require("react-native"); var _reactNativeWebview = _interopRequireDefault(require("react-native-webview")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } const TamaraCheckoutURL = _ref => { let { checkoutURL, successURL, failURL, cancelURL, onSuccess, onFail, onCancel } = _ref; const handleLoadStart = syntheticEvent => { // Change the event type const { nativeEvent } = syntheticEvent; if (nativeEvent.url && nativeEvent.url.includes(successURL)) { onSuccess(); } else if (nativeEvent.url && nativeEvent.url.includes(failURL)) { onFail(); } else if (nativeEvent.url && nativeEvent.url.includes(cancelURL)) { onCancel(); } }; const handleLoadError = () => { console.log('Webview load url fail'); }; return /*#__PURE__*/_react.default.createElement(_reactNative.View, { style: styles.container }, /*#__PURE__*/_react.default.createElement(_reactNativeWebview.default, { originWhitelist: ['*'], source: { uri: checkoutURL }, onLoadStart: handleLoadStart, onError: handleLoadError, javaScriptEnabled: true, domStorageEnabled: true, allowsInlineMediaPlayback: true, mediaCapturePermissionGrantType: 'grant', mediaPlaybackRequiresUserAction: false })); }; const styles = _reactNative.StyleSheet.create({ container: { flex: 1, minWidth: '100%', minHeight: 100, backgroundColor: 'gray' } }); var _default = exports.default = TamaraCheckoutURL; //# sourceMappingURL=TamaraCheckoutURL.js.map