UNPKG

react-native-unit-components

Version:

Unit React Native components

52 lines (51 loc) 2.28 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.injectEventToContinue = exports.handleRequestDownload = exports.getInfoParams = void 0; var _axios = _interopRequireDefault(require("axios")); var _reactNative = require("react-native"); var _AppInfo = _interopRequireDefault(require("../utils/AppInfo")); var _UnitComponentsSdkManager = require("../unitComponentsSdkManager/UnitComponentsSdkManager"); var _RNShareFile = _interopRequireDefault(require("../nativeModulesHelpers/RNShareFile/RNShareFile")); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } const getInfoParams = async () => { const appVersion = await _AppInfo.default.getVersion(); const appBuildNumber = await _AppInfo.default.getBuildNumber(); const appIdentifier = await _AppInfo.default.getAppIdentifier(); const infoParams = {}; infoParams['sdkVersion'] = _UnitComponentsSdkManager.UnitComponentsSDK.getSdkVersion(); infoParams['sdkPlatform'] = 'React Native'; infoParams['os'] = _reactNative.Platform.OS == 'android' ? 'Android' : 'iOS'; infoParams['hostedAppVersion'] = appVersion; infoParams['hostedAppBuildNumber'] = appBuildNumber; infoParams['hostedAppIdentifier'] = appIdentifier; return infoParams; }; exports.getInfoParams = getInfoParams; const handleRequestDownload = async (details, onReadyToShare) => { if (details.fileType === 'application/pdf') { const res = await _axios.default.get(details.url, { headers: { 'Authorization': `Bearer ${details.accessToken}` }, responseEncoding: 'base64', responseType: 'arraybuffer' }); const base64Data = res.request._response; onReadyToShare(); if (_reactNative.Platform.OS === 'ios') { _reactNative.Share.share({ url: `data:application/pdf;base64,${base64Data}` }); } else { _RNShareFile.default.share(base64Data, details.fileName); } } }; exports.handleRequestDownload = handleRequestDownload; const injectEventToContinue = (currentWeb, eventToContinueEvent) => { currentWeb?.injectJavaScript(`dispatchEventToContinue('${JSON.stringify(eventToContinueEvent)}')`); }; exports.injectEventToContinue = injectEventToContinue; //# sourceMappingURL=WebComponent.utils.js.map