UNPKG

@adyen/react-native

Version:

Wraps Adyen Checkout Drop-In and Components for iOS and Android for convenient use with React Native

45 lines (44 loc) 2.31 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.withAdyenIos = void 0; const config_plugins_1 = require("@expo/config-plugins"); const setEntitlements_1 = require("./setEntitlements"); const setImport_1 = require("./setImport"); const setApplicationOpenUrl_1 = require("./setApplicationOpenUrl"); const setApplicationContinueUserActivity_1 = require("./setApplicationContinueUserActivity"); const setImportSwift_1 = require("./setImportSwift"); const setApplicationOpenUrlSwift_1 = require("./setApplicationOpenUrlSwift"); const setApplicationContinueUserActivitySwift_1 = require("./setApplicationContinueUserActivitySwift"); const withAdyenIos = (config, { merchantIdentifier, useFrameworks }) => { config = (0, config_plugins_1.withAppDelegate)(config, (newConfig) => { var appDelegate = newConfig.modResults.contents; if (appDelegate.includes('ADYRedirectComponent') || appDelegate.includes('import Adyen')) { return newConfig; } // Detect if it's Swift or Objective-C const isSwift = appDelegate.includes('import Expo') || appDelegate.includes('import UIKit'); if (isSwift) { appDelegate = (0, setImportSwift_1.setImportSwift)(appDelegate); appDelegate = (0, setApplicationOpenUrlSwift_1.setApplicationOpenUrlSwift)(appDelegate); appDelegate = (0, setApplicationContinueUserActivitySwift_1.setApplicationContinueUserActivitySwift)(appDelegate); } else { appDelegate = (0, setImport_1.setImport)(appDelegate, useFrameworks); appDelegate = (0, setApplicationOpenUrl_1.setApplicationOpenUrl)(appDelegate); appDelegate = (0, setApplicationContinueUserActivity_1.setApplicationContinueUserActivity)(appDelegate); } newConfig.modResults.contents = appDelegate; return newConfig; }); if (merchantIdentifier) { config = (0, config_plugins_1.withEntitlementsPlist)(config, (newConfig) => { const entitlements = newConfig.modResults; newConfig.modResults = (0, setEntitlements_1.setEntitlements)(entitlements, merchantIdentifier); return newConfig; }); } return config; }; exports.withAdyenIos = withAdyenIos;