UNPKG

expo-shopify-performance

Version:

Config plugin to setup @shopify/react-native-performance on prebuild

36 lines (35 loc) 1.47 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const constants_1 = require("./constants"); const config_plugins_1 = require("@expo/config-plugins"); const generateCode_1 = require("@expo/config-plugins/build/utils/generateCode"); /** * Expo config plugin for iOS Shopify Performance integration * @param config - Expo config * @returns Modified config with Shopify Performance native initialization */ const withShopifyPerformanceIOS = (config) => { return (0, config_plugins_1.withAppDelegate)(config, (config) => { const { modResults } = config; // Add import statement modResults.contents = (0, generateCode_1.mergeContents)({ tag: 'shopify-performance-import', src: modResults.contents, newSrc: constants_1.IOS.IMPORT_STATEMENT, anchor: /#import "AppDelegate.h"/, offset: 1, // Insert after the matched line comment: '//' }).contents; // Add initialization method call modResults.contents = (0, generateCode_1.mergeContents)({ tag: 'shopify-performance-init', src: modResults.contents, newSrc: constants_1.IOS.INIT_METHOD_CALL, anchor: constants_1.IOS.LAUNCH_METHOD_REGEX, offset: 2, // Insert after the opening bracket comment: '//' }).contents; return config; }); }; exports.default = withShopifyPerformanceIOS;