diff --git a/docs/platform-parts/container/container-integration.md b/docs/platform-parts/container/container-integration.md index dfa65df7d..52be05d30 100644 --- a/docs/platform-parts/container/container-integration.md +++ b/docs/platform-parts/container/container-integration.md @@ -172,14 +172,14 @@ It is possible to change these defaults, using the `androidConfig` object of `co "containerGenerator": { "androidConfig": { "jsEngine": "jsc", - "jscVersion": "245459", + "jscVersion": "^245459.0.0", "jscVariant": "android-jsc" } } } ``` -`jscVersion` is the version of the JavaScriptCore engine while `jscVariant` is the variant (`android-jsc` or `android-jsc-intl`). +`jscVersion` is the version (fixed or range) of the JavaScriptCore engine while `jscVariant` is the variant (`android-jsc` or `android-jsc-intl`). _Hermes_ diff --git a/docs/platform-parts/manifest/native-modules.md b/docs/platform-parts/manifest/native-modules.md index 68342c910..95c8206ac 100644 --- a/docs/platform-parts/manifest/native-modules.md +++ b/docs/platform-parts/manifest/native-modules.md @@ -118,7 +118,8 @@ This example shows how to replace the string `"RCTBridgeModule.h"` with `= 0.61.0** + +- `podFile` + +Path to a Podfile to use for the Container, relative to the directory containing the plugin config.json file.\ +Can only be set in 'react-native' plugin configuration. + + +- `podspec` + +Path to a podspec file to use for the plugin, relative to the directory containing the plugin config.json file.\ +Can be used in case a native module doesn't have yet an available podspec file or if the podspec file of the native module needs to be different than the one shipped with it. + +- `extraPods` + +Array of extra pod statements that will be injected in the Container Podfile. + +- `requiresManualLinking` + +Boolean flag that indicates whether this plugin requires manual linking.\ +If defined and set to `true`, all plugin directives will be processed. +If not defined (default) or set to false, only `podFile`, `podspec` and `extraPods` directives will be processed.\n +This should only be set to `true` in very rare cases, for plugins that do not support auto linking. diff --git a/ern-api-impl-gen/src/ApiImpl.ts b/ern-api-impl-gen/src/ApiImpl.ts index b5dfc3265..ca101f514 100644 --- a/ern-api-impl-gen/src/ApiImpl.ts +++ b/ern-api-impl-gen/src/ApiImpl.ts @@ -197,6 +197,7 @@ function ernifyPackageJson( }, ], }, + requiresManualLinking: true, }, } } diff --git a/ern-container-gen-android/src/AndroidGenerator.ts b/ern-container-gen-android/src/AndroidGenerator.ts index d9ddc73a8..0d0676f10 100644 --- a/ern-container-gen-android/src/AndroidGenerator.ts +++ b/ern-container-gen-android/src/AndroidGenerator.ts @@ -363,20 +363,24 @@ export default class AndroidGenerator implements ContainerGenerator { this.getJavaScriptEngine(config) === JavaScriptEngine.JSC ? await kax .task('Injecting JavaScript engine [JavaScriptCore]') - .run(this.injectJavaScriptCoreEngine(config)) + .run( + this.injectJavaScriptCoreEngine(config, reactNativePlugin.version) + ) : await kax .task('Injecting JavaScript engine [Hermes]') - .run(this.injectHermesEngine(config)) + .run(this.injectHermesEngine(config, reactNativePlugin.version)) } } public async postBundle( config: ContainerGeneratorConfig, - bundle: BundlingResult + bundle: BundlingResult, + reactNativeVersion: string ) { if (this.getJavaScriptEngine(config) === JavaScriptEngine.HERMES) { const hermesVersion = - config.androidConfig.hermesVersion || android.DEFAULT_HERMES_VERSION + config.androidConfig.hermesVersion || + android.getDefaultHermesVersion(reactNativeVersion) const hermesCli = await kax .task(`Installing hermes-engine@${hermesVersion}`) .run(HermesCli.fromVersion(hermesVersion)) @@ -421,10 +425,19 @@ export default class AndroidGenerator implements ContainerGenerator { * Container. This way, the JSC engine is shipped within the Container and * applications won't crash at runtime when trying to load this library. */ - public async injectJavaScriptCoreEngine(config: ContainerGeneratorConfig) { - const jscVersion = + public async injectJavaScriptCoreEngine( + config: ContainerGeneratorConfig, + reactNativeVersion: string + ) { + let jscVersion = (config.androidConfig && config.androidConfig.jscVersion) || - android.DEFAULT_JSC_VERSION + android.getDefaultJSCVersion(reactNativeVersion) + if (/^\d+$/.test(jscVersion)) { + // For backward compatibility, to avoid breaking clients + // that are already providing a version through config that + // only specifies major excluding minor/patch + jscVersion = `${jscVersion}.0.0` + } const jscVariant = (config.androidConfig && config.androidConfig.jscVariant) || android.DEFAULT_JSC_VARIANT @@ -432,13 +445,14 @@ export default class AndroidGenerator implements ContainerGenerator { try { shell.pushd(workingDir) await yarn.init() - await yarn.add(PackagePath.fromString(`jsc-android@${jscVersion}.0.0`)) + await yarn.add(PackagePath.fromString(`jsc-android@${jscVersion}`)) + const versionMajor = semver.major(semver.coerce(jscVersion)!.version) const jscVersionPath = path.resolve( - `./node_modules/jsc-android/dist/org/webkit/${jscVariant}/r${jscVersion}` + `./node_modules/jsc-android/dist/org/webkit/${jscVariant}/r${versionMajor}` ) const jscAARPath = path.join( jscVersionPath, - `${jscVariant}-r${jscVersion}.aar` + `${jscVariant}-r${versionMajor}.aar` ) return new Promise((resolve, reject) => { const unzipper = new DecompressZip(jscAARPath) @@ -464,10 +478,13 @@ export default class AndroidGenerator implements ContainerGenerator { * Inject hermes engine into the Container * Done in a similar way as injectJavaScriptCoreEngine method */ - public async injectHermesEngine(config: ContainerGeneratorConfig) { + public async injectHermesEngine( + config: ContainerGeneratorConfig, + reactNativeVersion: string + ) { const hermesVersion = (config.androidConfig && config.androidConfig.hermesVersion) || - android.DEFAULT_HERMES_VERSION + android.getDefaultHermesVersion(reactNativeVersion) const workingDir = createTmpDir() try { shell.pushd(workingDir) @@ -559,6 +576,7 @@ export default class AndroidGenerator implements ContainerGenerator { plugins: PackagePath[], outDir: string ): Promise { + const rnVersion = plugins.find(p => p.name === 'react-native')?.version! for (const plugin of plugins) { if (plugin.name === 'react-native') { continue diff --git a/ern-container-gen-ios/package.json b/ern-container-gen-ios/package.json index 2b7846598..d25a12901 100644 --- a/ern-container-gen-ios/package.json +++ b/ern-container-gen-ios/package.json @@ -41,6 +41,7 @@ "fs-extra": "^8.1.0", "fs-readdir-recursive": "^1.1.0", "lodash": "^4.17.14", + "semver": "^5.5.0", "xcode-ern": "^1.0.12" }, "devDependencies": { diff --git a/ern-container-gen-ios/src/IosGenerator.ts b/ern-container-gen-ios/src/IosGenerator.ts index 4ac87650e..8980e7104 100644 --- a/ern-container-gen-ios/src/IosGenerator.ts +++ b/ern-container-gen-ios/src/IosGenerator.ts @@ -1,4 +1,5 @@ import { + childProcess, manifest, iosUtil, injectReactNativeVersionKeysInObject, @@ -9,6 +10,9 @@ import { NativePlatform, kax, PluginConfig, + readPackageJson, + writePackageJson, + yarn, } from 'ern-core' import { ContainerGenerator, @@ -25,6 +29,7 @@ import xcode from 'xcode-ern' import _ from 'lodash' import readDir from 'fs-readdir-recursive' import { Composite } from 'ern-composite-gen' +import semver from 'semver' const ROOT_DIR = process.cwd() const PATH_TO_HULL_DIR = path.join(__dirname, 'hull') @@ -134,6 +139,130 @@ export default class IosGenerator implements ContainerGenerator { ) fs.writeFileSync(projectPath, iosProject.writeSync()) + + if (semver.gte(reactNativePlugin.version!, '0.61.0')) { + // + // Add all native dependencies to package.json dependencies so that + // !use_native_modules can detect them to add their pod to the Podfile + const dependencies = await config.composite.getNativeDependencies({}) + const resDependencies = [ + ...dependencies.thirdPartyInManifest, + ...dependencies.thirdPartyNotInManifest, + ] + const addDependencies: any = {} + resDependencies.forEach(p => { + addDependencies[p.name!] = p.version + }) + + // + // Create package.json in container directory root + // so that native modules pods can be resolved + // by use_native_modules! RN ruby script + const pjsonObj = { + dependencies: addDependencies, + name: 'container', + } + await writePackageJson(config.outDir, pjsonObj) + + // + // Copy all native dependencies from composite node_modules + // to container node_modules so that pods can be found local + // to the container directory + const containerNodeModulesPath = path.join(config.outDir, 'node_modules') + shell.mkdir('-p', containerNodeModulesPath) + resDependencies.forEach(p => { + shell.cp('-rf', p.basePath!, containerNodeModulesPath) + }) + // Add @react-native-community/cli-platform-ios because + // it contains the scripts needed for native modules pods linking + // look in composite to match proper version + const compositeNodeModulesPath = path.join( + config.composite.path, + 'node_modules' + ) + const cliPlatformIosPkg = '@react-native-community/cli-platform-ios' + const cliPlatformIosPkgVersion = ( + await readPackageJson( + path.join(compositeNodeModulesPath, cliPlatformIosPkg) + ) + ).version + shell.pushd(config.outDir) + try { + await yarn.add( + PackagePath.fromString( + `${cliPlatformIosPkg}@${cliPlatformIosPkgVersion}` + ) + ) + } finally { + shell.popd() + } + + // + // Run pod install + shell.pushd(config.outDir) + try { + await kax + .task('Running pod install') + .run(childProcess.spawnp('pod', ['install'])) + } finally { + shell.popd() + } + + // + // Clean node_modules by only keeping the directories that are + // needed for proper container build. + shell.pushd(config.outDir) + try { + // + // Look in the Pods pbxproj for any references to some files + // kepts in some node_module subdirectory (basically react-native + // as well as all native modules) + const f = fs.readFileSync('Pods/Pods.xcodeproj/project.pbxproj', { + encoding: 'utf8', + }) + + // + // Build an array of these directories + const re = RegExp('"../node_modules/([^"]+)"', 'g') + const matches = [] + let match = re.exec(f) + while (match !== null) { + matches.push(match[1]) + match = re.exec(f) + } + const res = matches + .map(r => r.split('/')) + .filter(x => x[0] !== 'react-native') + .map(x => x.join('/')) + .concat('react-native') + + // + // Copy all retained directories from 'node_modules' + // to a new directory 'node_modules_light' + const nodeModulesLightDir = 'node_modules_light' + const nodeModulesDir = 'node_modules' + shell.mkdir('-p', nodeModulesLightDir) + for (const b of res) { + shell.mkdir('-p', path.join(nodeModulesLightDir, b)) + shell.cp( + '-Rf', + path.join(nodeModulesDir, b, '{.*,*}'), + path.join(nodeModulesLightDir, b) + ) + } + // + // Replace the huge 'node_modules' directory with the skimmed one + shell.rm('-rf', nodeModulesDir) + shell.mv(nodeModulesLightDir, nodeModulesDir) + // + // Finally get rid of all android directories to further reduce + // overall 'node_modules' directory size, as they are not needed + // for iOS container builds. + shell.rm('-rf', path.join(nodeModulesDir, '**/android')) + } finally { + shell.popd() + } + } } // Code to keep backward compatibility diff --git a/ern-container-gen-ios/src/hull/Config/ElectrodeContainer-Debug.xcconfig b/ern-container-gen-ios/src/hull/Config/ElectrodeContainer-Debug.xcconfig index 6a743e5e0..f7fb947f9 100644 --- a/ern-container-gen-ios/src/hull/Config/ElectrodeContainer-Debug.xcconfig +++ b/ern-container-gen-ios/src/hull/Config/ElectrodeContainer-Debug.xcconfig @@ -5,6 +5,15 @@ // https://github.com/dempseyatgithub/BuildSettingExtractor // +{{#RN_VERSION_GTE_61}} +#include "Pods/Target Support Files/Pods-ElectrodeContainer/Pods-ElectrodeContainer.debug.xcconfig" +{{/RN_VERSION_GTE_61}} + +{{#RN_VERSION_LT_61}} +HEADER_SEARCH_PATHS = +OTHER_LDFLAGS = -ObjC -lc++ -lz +{{/RN_VERSION_LT_61}} + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES = YES CLANG_ENABLE_MODULES = YES @@ -15,12 +24,10 @@ DYLIB_COMPATIBILITY_VERSION = 1 DYLIB_CURRENT_VERSION = 1 DYLIB_INSTALL_NAME_BASE = @rpath FRAMEWORK_SEARCH_PATHS = $(inherited) $(SRCROOT)/ElectrodeContainer/Frameworks -HEADER_SEARCH_PATHS = INFOPLIST_FILE = ElectrodeContainer/Info.plist INSTALL_PATH = $(LOCAL_LIBRARY_DIR)/Frameworks IPHONEOS_DEPLOYMENT_TARGET = 10.0 LD_RUNPATH_SEARCH_PATHS = $(inherited) @executable_path/Frameworks @loader_path/Frameworks -OTHER_LDFLAGS = -ObjC -lc++ -lz PRODUCT_BUNDLE_IDENTIFIER = com.walmartlabs.ern.ElectrodeContainer PRODUCT_NAME = $(TARGET_NAME) SKIP_INSTALL = YES diff --git a/ern-container-gen-ios/src/hull/Config/ElectrodeContainer-QADeployment.xcconfig b/ern-container-gen-ios/src/hull/Config/ElectrodeContainer-QADeployment.xcconfig index cbb0a36df..9fb9d6e21 100644 --- a/ern-container-gen-ios/src/hull/Config/ElectrodeContainer-QADeployment.xcconfig +++ b/ern-container-gen-ios/src/hull/Config/ElectrodeContainer-QADeployment.xcconfig @@ -5,6 +5,15 @@ // https://github.com/dempseyatgithub/BuildSettingExtractor // +{{#RN_VERSION_GTE_61}} +#include "Pods/Target Support Files/Pods-ElectrodeContainer/Pods-ElectrodeContainer.qadeployment.xcconfig" +{{/RN_VERSION_GTE_61}} + +{{#RN_VERSION_LT_61}} +HEADER_SEARCH_PATHS = +OTHER_LDFLAGS = -ObjC -lc++ -lz +{{/RN_VERSION_LT_61}} + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES = YES CLANG_ENABLE_MODULES = YES @@ -17,12 +26,10 @@ DYLIB_INSTALL_NAME_BASE = @rpath ENABLE_ON_DEMAND_RESOURCES = NO ENABLE_TESTABILITY = YES FRAMEWORK_SEARCH_PATHS = $(inherited) $(SRCROOT)/ElectrodeContainer/Frameworks -HEADER_SEARCH_PATHS = INFOPLIST_FILE = ElectrodeContainer/Info.plist INSTALL_PATH = $(LOCAL_LIBRARY_DIR)/Frameworks LD_RUNPATH_SEARCH_PATHS = $(inherited) @executable_path/Frameworks @loader_path/Frameworks ONLY_ACTIVE_ARCH = NO -OTHER_LDFLAGS = -ObjC -lc++ -lz PRODUCT_BUNDLE_IDENTIFIER = com.walmartlabs.ern.ElectrodeContainer PRODUCT_NAME = $(TARGET_NAME) SKIP_INSTALL = YES diff --git a/ern-container-gen-ios/src/hull/Config/ElectrodeContainer-Release.xcconfig b/ern-container-gen-ios/src/hull/Config/ElectrodeContainer-Release.xcconfig index dc3d5c4f5..353bbb168 100644 --- a/ern-container-gen-ios/src/hull/Config/ElectrodeContainer-Release.xcconfig +++ b/ern-container-gen-ios/src/hull/Config/ElectrodeContainer-Release.xcconfig @@ -5,6 +5,15 @@ // https://github.com/dempseyatgithub/BuildSettingExtractor // +{{#RN_VERSION_GTE_61}} +#include "Pods/Target Support Files/Pods-ElectrodeContainer/Pods-ElectrodeContainer.release.xcconfig" +{{/RN_VERSION_GTE_61}} + +{{#RN_VERSION_LT_61}} +HEADER_SEARCH_PATHS = +OTHER_LDFLAGS = -ObjC -lc++ -lz +{{/RN_VERSION_LT_61}} + CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES = YES CODE_SIGN_IDENTITY = DEFINES_MODULE = YES @@ -12,12 +21,10 @@ DYLIB_COMPATIBILITY_VERSION = 1 DYLIB_CURRENT_VERSION = 1 DYLIB_INSTALL_NAME_BASE = @rpath FRAMEWORK_SEARCH_PATHS = $(inherited) $(SRCROOT)/ElectrodeContainer/Frameworks -HEADER_SEARCH_PATHS = INFOPLIST_FILE = ElectrodeContainer/Info.plist INSTALL_PATH = $(LOCAL_LIBRARY_DIR)/Frameworks IPHONEOS_DEPLOYMENT_TARGET = 10.0 LD_RUNPATH_SEARCH_PATHS = $(inherited) @executable_path/Frameworks @loader_path/Frameworks -OTHER_LDFLAGS = -ObjC -lc++ -lz PRODUCT_BUNDLE_IDENTIFIER = com.walmartlabs.ern.ElectrodeContainer PRODUCT_NAME = $(TARGET_NAME) SKIP_INSTALL = YES diff --git a/ern-container-gen-ios/src/hull/Config/Project-Debug.xcconfig b/ern-container-gen-ios/src/hull/Config/Project-Debug.xcconfig index f7e555612..b1f2a2ab4 100644 --- a/ern-container-gen-ios/src/hull/Config/Project-Debug.xcconfig +++ b/ern-container-gen-ios/src/hull/Config/Project-Debug.xcconfig @@ -32,7 +32,7 @@ CLANG_WARN_UNREACHABLE_CODE = YES CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Developer COPY_PHASE_STRIP = NO CURRENT_PROJECT_VERSION = 1 -DEBUG_INFORMATION_FORMAT = dwarf +DEBUG_INFORMATION_FORMAT = dwarf-with-dsym ENABLE_STRICT_OBJC_MSGSEND = YES ENABLE_TESTABILITY = YES GCC_C_LANGUAGE_STANDARD = gnu99 diff --git a/ern-container-gen-ios/src/hull/ElectrodeContainer.xcodeproj/xcshareddata/xcschemes/ECDevice.xcscheme b/ern-container-gen-ios/src/hull/ElectrodeContainer.xcodeproj/xcshareddata/xcschemes/ECDevice.xcscheme index 84db79645..7a90adbdf 100644 --- a/ern-container-gen-ios/src/hull/ElectrodeContainer.xcodeproj/xcshareddata/xcschemes/ECDevice.xcscheme +++ b/ern-container-gen-ios/src/hull/ElectrodeContainer.xcodeproj/xcshareddata/xcschemes/ECDevice.xcscheme @@ -4,7 +4,7 @@ version = "1.3"> + buildImplicitDependencies = "YES"> + buildImplicitDependencies = "YES"> Promise export async function generateContainer( @@ -78,7 +79,7 @@ export async function generateContainer( ) if (postBundle) { - await postBundle(config, bundlingResult) + await postBundle(config, bundlingResult, reactNativePlugin?.version!) } const compositeMiniApps = await config.composite.getMiniApps() diff --git a/ern-core/src/Manifest.ts b/ern-core/src/Manifest.ts index 829a810cb..131629553 100644 --- a/ern-core/src/Manifest.ts +++ b/ern-core/src/Manifest.ts @@ -11,16 +11,21 @@ import { isDependencyApi, isDependencyApiImpl } from './utils' import config from './config' import log from './log' import { NativePlatform } from './NativePlatform' +import semver from 'semver' export type PluginConfig = T extends 'android' ? AndroidPluginConfig : IosPluginConfig +/** + * Represent the plugin structure as seen in the manifest + * i.e the config.json structure + */ export interface ManifestPluginConfig { - android?: AndroidPluginConfig - ios?: IosPluginConfig + android?: PluginConfig<'android'> + ios?: PluginConfig<'ios'> origin?: PluginOrigin - path: string + path?: string } /** @@ -176,6 +181,36 @@ export interface IosPluginConfig extends CommonPluginConfig { * Array of public headers to add to the container */ containerPublicHeader?: string[] + /** + * Path to a Podfile to use for the Container, relative to + * the directory containing the plugin config.json file + * Used for RN >= 0.61.0 only + * Can only be set for 'react-native' plugin configuration + */ + podfile?: string + /** + * Path to a podspec file to use for the plugin, relative to + * the directory containing the plugin config.json file + * Used for RN >= 0.61.0 only + * Can be used in case a native module doesn't have yet an + * available podspec file or if the podspec file of the native + * module needs to be different than the one shipped within + * the native module + */ + podspec?: string + /** + * Array of extra pod statements that will be injected in + * Container Podfile + */ + extraPods?: string[] + /** + * Indicates whether this plugin requires manual linking + * If that's the case, all plugin directives will be processed + * independently of the react native version used + * Otherwise, only `podfile`, `podspec` and `extraPods` directives + * will be processed + */ + requiresManualLinking?: boolean } /** @@ -311,8 +346,14 @@ export interface PluginApplyPatchDirective { patch: string /** * Relative path (from container out directory) from which to run git apply + * Mutually exclusive with inNodeModules */ root: string + /** + * If true, root will be set to root location of the plugin in node nodules + * Mutually exclusive with root + */ + inNodeModules?: boolean } /** @@ -653,7 +694,9 @@ export class Manifest { // Add default value (convention) for Android subsection for missing fields if (platform === 'android' && result.android) { - result.android.root = result.android.root ?? 'android' + const res = result.android + + res.root = res.root ?? 'android' const matchedFiles = shell .find(pluginConfigPath) @@ -662,7 +705,7 @@ export class Manifest { }) if (matchedFiles && matchedFiles.length === 1) { const pluginHookClass = path.basename(matchedFiles[0], '.java') - result.android.pluginHook = { + res.pluginHook = { configurable: false, name: pluginHookClass, } @@ -671,13 +714,15 @@ export class Manifest { .readFileSync(matchedFiles[0], 'utf-8') .includes('public static class Config') ) { - result.android.pluginHook.configurable = true + res.pluginHook.configurable = true } } - result.android.path = pluginConfigPath - return result.android + res.path = pluginConfigPath + return res } else if (platform === 'ios' && result.ios) { - result.ios.root = result.ios.root ?? 'ios' + const res = result.ios + + res.root = res.root ?? 'ios' const matchedHeaderFiles = shell .find(pluginConfigPath) @@ -697,13 +742,13 @@ export class Manifest { matchedSourceFiles.length === 1 ) { const pluginHookClass = path.basename(matchedHeaderFiles[0], '.h') - result.ios.pluginHook = { + res.pluginHook = { configurable: true, name: pluginHookClass, } } - result.ios.path = pluginConfigPath - return result.ios + res.path = pluginConfigPath + return res } } @@ -818,6 +863,7 @@ export class Manifest { }, ], }, + requiresManualLinking: true, root: 'ios', } } @@ -850,6 +896,7 @@ export class Manifest { }, ], }, + requiresManualLinking: true, root: 'ios', } } diff --git a/ern-core/src/android.ts b/ern-core/src/android.ts index ba08a8e62..b2047fa6c 100644 --- a/ern-core/src/android.ts +++ b/ern-core/src/android.ts @@ -7,6 +7,7 @@ import log from './log' import { execp, spawnp } from './childProcess' import os from 'os' import kax from './kax' +import semver from 'semver' // ============================================================================== // Default value for android build config @@ -18,9 +19,7 @@ export const DEFAULT_ANDROIDX_LIFECYCLE_EXTENSIONS_VERSION = '2.1.0' export const DEFAULT_BUILD_TOOLS_VERSION = '28.0.3' export const DEFAULT_COMPILE_SDK_VERSION = '28' export const DEFAULT_GRADLE_DISTRIBUTION_VERSION = '5.4.1' -export const DEFAULT_HERMES_VERSION = '0.2.1' export const DEFAULT_JSC_VARIANT = 'android-jsc' -export const DEFAULT_JSC_VERSION = '245459' export const DEFAULT_MIN_SDK_VERSION = '19' export const DEFAULT_SUPPORT_LIBRARY_VERSION = '28.0.0' export const DEFAULT_TARGET_SDK_VERSION = '28' @@ -406,3 +405,41 @@ export function androidEmulatorPath(): string { } return 'emulator' } + +/** + * Returns the default Hermes engine (hermes-engine) package version used by a given React Native version. + * Only works for versions of RN >= 0.60.0 as hermes-engine package was introduced in this version. + */ +export function getDefaultHermesVersion( + reactNativeVersion: string +): string | never { + if (semver.gte(reactNativeVersion, '0.62.0')) { + return '~0.4.0' + } else if (semver.gte(reactNativeVersion, '0.60.0')) { + return '^0.2.1' + } else { + throw new Error( + 'This function can only be called for versions of React Native >= 0.60.0' + ) + } +} + +/** + * Returns the default JavaScriptCore engine version used + * by a given React Native version. + * Only works for versions of RN >= 0.60.0 as dynamic jsc-android + * package was introduced in this version. + */ +export function getDefaultJSCVersion( + reactNativeVersion: string +): string | never { + if (semver.gte(reactNativeVersion, '0.61.0')) { + return '^245459.0.0' + } else if (semver.gte(reactNativeVersion, '0.60.0')) { + return '245459.0.0' + } else { + throw new Error( + 'This function can only be called for versions of React Native >= 0.60.0' + ) + } +} diff --git a/ern-core/src/injectReactNativeVersionKeysInObject.ts b/ern-core/src/injectReactNativeVersionKeysInObject.ts index 8d34d87da..dd85778a3 100644 --- a/ern-core/src/injectReactNativeVersionKeysInObject.ts +++ b/ern-core/src/injectReactNativeVersionKeysInObject.ts @@ -9,9 +9,11 @@ export function injectReactNativeVersionKeysInObject( RN_VERSION_GTE_54: semver.gte(reactNativeVersion, '0.54.0'), RN_VERSION_GTE_59: semver.gte(reactNativeVersion, '0.59.0'), RN_VERSION_GTE_60_1: semver.gte(reactNativeVersion, '0.60.1'), + RN_VERSION_GTE_61: semver.gte(reactNativeVersion, '0.61.0'), RN_VERSION_LT_54: semver.lt(reactNativeVersion, '0.54.0'), RN_VERSION_LT_58: semver.lt(reactNativeVersion, '0.58.0-rc.2'), RN_VERSION_LT_59: semver.lt(reactNativeVersion, '0.59.0'), + RN_VERSION_LT_61: semver.lt(reactNativeVersion, '0.61.0'), reactNativeVersion, }) } diff --git a/ern-core/src/iosUtil.ts b/ern-core/src/iosUtil.ts index dac76d0a5..f2bdf4ba5 100644 --- a/ern-core/src/iosUtil.ts +++ b/ern-core/src/iosUtil.ts @@ -5,7 +5,7 @@ import shell from './shell' import { manifest, PluginConfig } from './Manifest' import handleCopyDirective from './handleCopyDirective' import log from './log' -import { isDependencyJsApiImpl } from './utils' +import { isDependencyJsApiImpl, extractJsApiImplementations } from './utils' import path from 'path' import xcode from 'xcode-ern' import fs from 'fs-extra' @@ -40,14 +40,22 @@ export async function fillProjectHull( if (mustacheView) { log.debug(`iOS: reading template files to be rendered for plugins`) - const files = readDir(pathSpec.outputDir) + const a = path.join(pathSpec.outputDir, 'ElectrodeContainer') + const b = path.join(pathSpec.outputDir, 'config') + const files = [ + ...readDir(a).map(x => path.join(a, x)), + ...readDir(b).map(x => path.join(b, x)), + ] for (const file of files) { - if (file.endsWith('.h') || file.endsWith('.m')) { - const pathToOutputFile = path.join(pathSpec.outputDir, file) + if ( + file.endsWith('.h') || + file.endsWith('.m') || + file.endsWith('.xcconfig') + ) { await mustacheUtils.mustacheRenderToOutputFileUsingTemplateFile( - pathToOutputFile, + file, mustacheView, - pathToOutputFile + file ) } } @@ -67,6 +75,10 @@ export async function fillProjectHull( const injectPluginsTaskMsg = 'Injecting Native Dependencies' const injectPluginsKaxTask = kax.task(injectPluginsTaskMsg) + const rnVersion = plugins.find(p => p.name === 'react-native')?.version! + const additionalPods = [] + const destPodfilePath = path.join(pathSpec.outputDir, 'Podfile') + for (const plugin of plugins) { const pluginSourcePath = composite ? plugin.basePath @@ -109,6 +121,7 @@ export async function fillProjectHull( projectName: projectSpec.projectName, }) ) + pluginConfig!.requiresManualLinking = true } } @@ -117,251 +130,295 @@ export async function fillProjectHull( const { applyPatch, copy, + extraPods, + pbxproj, + podfile, + podspec, replaceInFile, + requiresManualLinking, setBuildSettings, - pbxproj, } = pluginConfig! - if (copy) { - for (const c of copy) { - if (switchToOldDirectoryStructure(pluginSourcePath, c.source)) { - log.debug( - `Handling copy directive: Falling back to old directory structure for API(Backward compatibility)` - ) - c.source = path.normalize('IOS/IOS/Classes/SwaggersAPIs') + if (requiresManualLinking) { + if (copy) { + for (const c of copy) { + if (switchToOldDirectoryStructure(pluginSourcePath, c.source)) { + log.debug( + `Handling copy directive: Falling back to old directory structure for API(Backward compatibility)` + ) + c.source = path.normalize('IOS/IOS/Classes/SwaggersAPIs') + } } + handleCopyDirective(pluginSourcePath, pathSpec.outputDir, copy) } - handleCopyDirective(pluginSourcePath, pathSpec.outputDir, copy) - } - if (replaceInFile) { - for (const r of replaceInFile) { - const pathToFile = path.join(pathSpec.outputDir, r.path) - const fileContent = await fs.readFile(pathToFile, 'utf8') - const patchedFileContent = fileContent.replace( - RegExp(r.string, 'g'), - r.replaceWith - ) - await fs.writeFile(pathToFile, patchedFileContent, { - encoding: 'utf8', - }) + if (replaceInFile) { + for (const r of replaceInFile) { + const pathToFile = path.join(pathSpec.outputDir, r.path) + const fileContent = await fs.readFile(pathToFile, 'utf8') + const patchedFileContent = fileContent.replace( + RegExp(r.string, 'g'), + r.replaceWith + ) + await fs.writeFile(pathToFile, patchedFileContent, { + encoding: 'utf8', + }) + } } - } - if (setBuildSettings) { - for (const s of setBuildSettings) { - const pathToPbxProj = path.join(pathSpec.outputDir, s.path) - // Add any missing section in the target pbxproj - // This is necessary for proper parsing and modification of - // the pbxproj with the xcode-ern library - xcode.pbxProjFileUtils().addMissingSectionsToPbxProj(pathToPbxProj) - const iosProj = await getIosProject(projectPath) - const buildSettings = - s.buildSettings instanceof Array - ? s.buildSettings - : [s.buildSettings] - for (const buildSettingsEntry of buildSettings) { - for (const buildType of buildSettingsEntry.configurations) { - for (const key of Object.keys(buildSettingsEntry.settings)) { - iosProj.updateBuildProperty( - key, - buildSettingsEntry.settings[key], - buildType - ) + if (setBuildSettings) { + for (const s of setBuildSettings) { + const pathToPbxProj = path.join(pathSpec.outputDir, s.path) + // Add any missing section in the target pbxproj + // This is necessary for proper parsing and modification of + // the pbxproj with the xcode-ern library + xcode.pbxProjFileUtils().addMissingSectionsToPbxProj(pathToPbxProj) + const iosProj = await getIosProject(projectPath) + const buildSettings = + s.buildSettings instanceof Array + ? s.buildSettings + : [s.buildSettings] + for (const buildSettingsEntry of buildSettings) { + for (const buildType of buildSettingsEntry.configurations) { + for (const key of Object.keys(buildSettingsEntry.settings)) { + iosProj.updateBuildProperty( + key, + buildSettingsEntry.settings[key], + buildType + ) + } } } + fs.writeFileSync(pathToPbxProj, iosProj.writeSync()) } - fs.writeFileSync(pathToPbxProj, iosProj.writeSync()) } - } - if (applyPatch) { - const { patch, root } = applyPatch - if (!patch) { - throw new Error('Missing "patch" property in "applyPatch" object') - } - if (!root) { - throw new Error('Missing "root" property in "applyPatch" object') + if (applyPatch) { + const { patch, root, inNodeModules } = applyPatch + if (!patch) { + throw new Error('Missing "patch" property in "applyPatch" object') + } + if (!root && !inNodeModules) { + throw new Error( + 'If "inNodeModules" is not set, "root" property must be set in "applyPatch" object' + ) + } + const [patchFile, rootDir] = [ + path.join(pluginConfig!.path!, patch), + inNodeModules + ? pluginSourcePath + : path.join(pathSpec.outputDir, root), + ] + await gitApply({ patchFile, rootDir }) } - const [patchFile, rootDir] = [ - path.join(pluginConfig!.path!, patch), - path.join(pathSpec.outputDir, root), - ] - await gitApply({ patchFile, rootDir }) - } - if (pbxproj) { - const { - addEmbeddedFramework, - addFile, - addFramework, - addFrameworkReference, - addFrameworkSearchPath, - addHeader, - addHeaderSearchPath, - addProject, - addSource, - addStaticLibrary, - } = pbxproj - - if (addSource) { - for (const source of addSource) { - // Multiple source files - if (source.from) { - if ( - switchToOldDirectoryStructure(pluginSourcePath, source.from) - ) { - log.debug( - `Source Copy: Falling back to old directory structure for API(Backward compatibility)` + if (pbxproj) { + const { + addEmbeddedFramework, + addFile, + addFramework, + addFrameworkReference, + addFrameworkSearchPath, + addHeader, + addHeaderSearchPath, + addProject, + addSource, + addStaticLibrary, + } = pbxproj + + if (addSource) { + for (const source of addSource) { + // Multiple source files + if (source.from) { + if ( + switchToOldDirectoryStructure(pluginSourcePath, source.from) + ) { + log.debug( + `Source Copy: Falling back to old directory structure for API(Backward compatibility)` + ) + source.from = path.normalize( + 'IOS/IOS/Classes/SwaggersAPIs/*.swift' + ) + } + const relativeSourcePath = path.dirname(source.from) + const pathToSourceFiles = path.join( + pluginSourcePath, + relativeSourcePath ) - source.from = path.normalize( - 'IOS/IOS/Classes/SwaggersAPIs/*.swift' + const fileNames = _.filter( + await fs.readdir(pathToSourceFiles), + f => f.endsWith(path.extname(source.from!)) ) - } - const relativeSourcePath = path.dirname(source.from) - const pathToSourceFiles = path.join( - pluginSourcePath, - relativeSourcePath - ) - const fileNames = _.filter( - await fs.readdir(pathToSourceFiles), - f => f.endsWith(path.extname(source.from!)) - ) - for (const fileName of fileNames) { - const fileNamePath = path.join(source.path, fileName) + for (const fileName of fileNames) { + const fileNamePath = path.join(source.path, fileName) + iosProject.addSourceFile( + fileNamePath, + null, + iosProject.findPBXGroupKey({ name: source.group }) + ) + } + } else { + // Single source file iosProject.addSourceFile( - fileNamePath, + source.path, null, iosProject.findPBXGroupKey({ name: source.group }) ) } - } else { - // Single source file - iosProject.addSourceFile( - source.path, - null, - iosProject.findPBXGroupKey({ name: source.group }) - ) } } - } - if (addHeader) { - for (const header of addHeader) { - // Multiple header files - if (header.from) { - if ( - switchToOldDirectoryStructure(pluginSourcePath, header.from) - ) { - log.debug( - `Header Copy: Falling back to old directory structure for API(Backward compatibility)` + if (addHeader) { + for (const header of addHeader) { + // Multiple header files + if (header.from) { + if ( + switchToOldDirectoryStructure(pluginSourcePath, header.from) + ) { + log.debug( + `Header Copy: Falling back to old directory structure for API(Backward compatibility)` + ) + header.from = path.normalize( + 'IOS/IOS/Classes/SwaggersAPIs/*.swift' + ) + } + const relativeHeaderPath = path.dirname(header.from) + const pathToHeaderFiles = path.join( + pluginSourcePath, + relativeHeaderPath ) - header.from = path.normalize( - 'IOS/IOS/Classes/SwaggersAPIs/*.swift' + const fileNames = _.filter( + await fs.readdir(pathToHeaderFiles), + f => f.endsWith(path.extname(header.from!)) ) - } - const relativeHeaderPath = path.dirname(header.from) - const pathToHeaderFiles = path.join( - pluginSourcePath, - relativeHeaderPath - ) - const fileNames = _.filter( - await fs.readdir(pathToHeaderFiles), - f => f.endsWith(path.extname(header.from!)) - ) - for (const fileName of fileNames) { - const fileNamePath = path.join(header.path, fileName) + for (const fileName of fileNames) { + const fileNamePath = path.join(header.path, fileName) + iosProject.addHeaderFile( + fileNamePath, + { public: header.public }, + iosProject.findPBXGroupKey({ name: header.group }) + ) + } + } else { + const headerPath = header.path iosProject.addHeaderFile( - fileNamePath, + headerPath, { public: header.public }, iosProject.findPBXGroupKey({ name: header.group }) ) } - } else { - const headerPath = header.path - iosProject.addHeaderFile( - headerPath, - { public: header.public }, - iosProject.findPBXGroupKey({ name: header.group }) + } + } + + if (addFile) { + for (const file of addFile) { + iosProject.addFile( + file.path, + iosProject.findPBXGroupKey({ name: file.group }) ) + // Add target dep in any case for now, will rework later + iosProject.addTargetDependency(target, [ + `"${path.basename(file.path)}"`, + ]) } } - } - if (addFile) { - for (const file of addFile) { - iosProject.addFile( - file.path, - iosProject.findPBXGroupKey({ name: file.group }) - ) - // Add target dep in any case for now, will rework later - iosProject.addTargetDependency(target, [ - `"${path.basename(file.path)}"`, - ]) + if (addFramework) { + for (const framework of addFramework) { + iosProject.addFramework(framework, { + customFramework: true, + }) + } } - } - if (addFramework) { - for (const framework of addFramework) { - iosProject.addFramework(framework, { - customFramework: true, - }) + if (addProject) { + for (const project of addProject) { + const projectAbsolutePath = path.join( + librariesPath, + project.path, + 'project.pbxproj' + ) + const options = { + addAsTargetDependency: project.addAsTargetDependency, + frameworks: project.frameworks, + projectAbsolutePath, + staticLibs: project.staticLibs, + } + iosProject.addProject( + project.path, + project.group, + target, + options + ) + } } - } - if (addProject) { - for (const project of addProject) { - const projectAbsolutePath = path.join( - librariesPath, - project.path, - 'project.pbxproj' - ) - const options = { - addAsTargetDependency: project.addAsTargetDependency, - frameworks: project.frameworks, - projectAbsolutePath, - staticLibs: project.staticLibs, + if (addStaticLibrary) { + for (const lib of addStaticLibrary) { + iosProject.addStaticLibrary(lib) } - iosProject.addProject(project.path, project.group, target, options) } - } - if (addStaticLibrary) { - for (const lib of addStaticLibrary) { - iosProject.addStaticLibrary(lib) + if (addHeaderSearchPath) { + for (const p of addHeaderSearchPath) { + iosProject.addToHeaderSearchPaths(p) + } } - } - if (addHeaderSearchPath) { - for (const p of addHeaderSearchPath) { - iosProject.addToHeaderSearchPaths(p) + if (addFrameworkReference) { + for (const frameworkReference of addFrameworkReference) { + iosProject.addFramework(frameworkReference, { + customFramework: true, + }) + } } - } - if (addFrameworkReference) { - for (const frameworkReference of addFrameworkReference) { - iosProject.addFramework(frameworkReference, { - customFramework: true, - }) + if (addEmbeddedFramework) { + for (const framework of addEmbeddedFramework) { + iosProject.addFramework(framework, { + customFramework: true, + embed: true, + }) + } } - } - if (addEmbeddedFramework) { - for (const framework of addEmbeddedFramework) { - iosProject.addFramework(framework, { - customFramework: true, - embed: true, - }) + if (addFrameworkSearchPath) { + for (const p of addFrameworkSearchPath) { + iosProject.addToFrameworkSearchPaths(p) + } } } + } - if (addFrameworkSearchPath) { - for (const p of addFrameworkSearchPath) { - iosProject.addToFrameworkSearchPaths(p) - } + if (podfile) { + if (plugin.name !== 'react-native') { + throw new Error( + `ios.podfile directive can only be used for react-native configuration` + ) } + const sourcePodfilePath = path.join(pluginConfig!.path!, podfile) + shell.cp(sourcePodfilePath, destPodfilePath) + } + + if (podspec) { + const sourcePodspecPath = path.join(pluginConfig!.path!, podspec) + const destPodspecPath = path.join(pathSpec.outputDir, podspec) + shell.cp(sourcePodspecPath, destPodspecPath) + } + + if (extraPods) { + additionalPods.push(...extraPods) } } + + await mustacheUtils.mustacheRenderToOutputFileUsingTemplateFile( + destPodfilePath, + { + extraPods: additionalPods.reduce((acc, cur) => `${acc}\n ${cur}`, ''), + }, + destPodfilePath + ) + injectPluginsKaxTask.succeed(injectPluginsTaskMsg) log.debug(`[=== Completed framework generation ===]`) diff --git a/ern-orchestrator/src/buildIosRunner.ts b/ern-orchestrator/src/buildIosRunner.ts index 7238d64ad..58bd9acd8 100644 --- a/ern-orchestrator/src/buildIosRunner.ts +++ b/ern-orchestrator/src/buildIosRunner.ts @@ -1,11 +1,20 @@ import { log } from 'ern-core' import { spawn } from 'child_process' +import fs from 'fs-extra' +import path from 'path' export async function buildIosRunner(pathToIosRunner: string, udid: string) { return new Promise((resolve, reject) => { + const extraBuildOptions = fs.existsSync( + path.join(pathToIosRunner, 'ErnRunner.xcworkspace') + ) + ? [`-workspace`, `ErnRunner.xcworkspace`] + : [] + const xcodebuildProc = spawn( 'xcodebuild', [ + ...extraBuildOptions, `-scheme`, 'ErnRunner', 'build', diff --git a/ern-orchestrator/src/codepush.ts b/ern-orchestrator/src/codepush.ts index 2ba283365..768884715 100644 --- a/ern-orchestrator/src/codepush.ts +++ b/ern-orchestrator/src/codepush.ts @@ -307,6 +307,11 @@ export async function performCodePushOtaUpdate( throw new Error('react-native-code-push plugin is not in native app !') } + const reactNative = _.find(plugins, p => p.name === 'react-native') + if (!codePushPlugin) { + throw new Error('react-native is not in native app !') + } + const tmpWorkingDir = createTmpDir() const miniAppsNativeDependenciesVersionAligned = await compatibility.areCompatible( @@ -433,7 +438,8 @@ export async function performCodePushOtaUpdate( const isHermesEnabled = conf?.androidConfig?.jsEngine === 'hermes' if (isHermesEnabled) { const hermesVersion = - conf.androidConfig.hermesVersion ?? android.DEFAULT_HERMES_VERSION + conf.androidConfig.hermesVersion ?? + android.getDefaultHermesVersion(reactNative?.version!) const hermesCli = await kax .task(`Installing hermes-engine@${hermesVersion}`) .run(HermesCli.fromVersion(hermesVersion)) diff --git a/ern-runner-gen-ios/package.json b/ern-runner-gen-ios/package.json index 9f9481fcd..7480b9225 100644 --- a/ern-runner-gen-ios/package.json +++ b/ern-runner-gen-ios/package.json @@ -39,6 +39,7 @@ "dependencies": { "ern-core": "1000.0.0", "ern-runner-gen": "1000.0.0", + "fs-extra": "^8.1.0", "fs-readdir-recursive": "^1.1.0", "mustache": "^2.3.1" }, diff --git a/ern-runner-gen-ios/src/IosRunnerGenerator.ts b/ern-runner-gen-ios/src/IosRunnerGenerator.ts index fe26abf65..1953299f3 100644 --- a/ern-runner-gen-ios/src/IosRunnerGenerator.ts +++ b/ern-runner-gen-ios/src/IosRunnerGenerator.ts @@ -6,6 +6,7 @@ import { injectReactNativeVersionKeysInObject, } from 'ern-core' import path from 'path' +import fs from 'fs-extra' const defaultReactNativePackagerHost = 'localhost' const defaultReactNativePackagerPort = '8081' @@ -21,16 +22,26 @@ export default class IosRunerGenerator implements RunnerGenerator { const mustacheView = this.createMustacheView({ config }) shell.cp('-R', path.join(runnerHullPath, '*'), config.outDir) + const filesToMustache = [ - path.join(config.outDir, 'ErnRunner/RunnerConfig.m'), - path.join(config.outDir, 'ErnRunner.xcodeproj/project.pbxproj'), + 'ErnRunner/RunnerConfig.m', + 'ErnRunner.xcodeproj/project.pbxproj', ] + if ((mustacheView as any).RN_VERSION_LT_61) { + // Delete ErnRunner.xcworkspace directory as it is only needed for RN61+ + shell.rm('-rf', path.join(config.outDir, 'ErnRunner.xcworkspace')) + } else { + // Otherwise keep it and include the xcworkspacedata file for mustache + // processing as it contains some mustache template placeholders + filesToMustache.push('ErnRunner.xcworkspace/contents.xcworkspacedata') + } + for (const file of filesToMustache) { await mustacheUtils.mustacheRenderToOutputFileUsingTemplateFile( - file, + path.join(config.outDir, file), mustacheView, - file + path.join(config.outDir, file) ) } } @@ -53,6 +64,18 @@ export default class IosRunerGenerator implements RunnerGenerator { mustacheView, pathToRunnerConfig ) + if ((mustacheView as any).RN_VERSION_GTE_61) { + // If using a version of react native >= 0.61.0 and if the xcworkspace + // is not present in runner, let's copy it + const xcworkspacePath = path.join(config.outDir, 'ErnRunner.xcworkspace') + if (!fs.pathExistsSync(xcworkspacePath)) { + shell.cp( + '-rf', + path.join(runnerHullPath, 'ErnRunner.xcworkspace'), + config.outDir + ) + } + } } public createMustacheView({ config }: { config: RunnerGeneratorConfig }) { diff --git a/ern-runner-gen-ios/src/hull/ErnRunner.xcworkspace/contents.xcworkspacedata b/ern-runner-gen-ios/src/hull/ErnRunner.xcworkspace/contents.xcworkspacedata new file mode 100644 index 000000000..19f1a5de3 --- /dev/null +++ b/ern-runner-gen-ios/src/hull/ErnRunner.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,13 @@ + + + + + + + + + diff --git a/system-tests/fixtures/android-container/container-metadata.json b/system-tests/fixtures/android-container/container-metadata.json index 8150960f3..2703011ab 100644 --- a/system-tests/fixtures/android-container/container-metadata.json +++ b/system-tests/fixtures/android-container/container-metadata.json @@ -2,11 +2,11 @@ "ernVersion": "1000.0.0", "jsApiImpls": [], "miniApps": [ - "moviedetailsminiapp@0.0.30", - "movielistminiapp@0.0.34" + "moviedetailsminiapp@0.0.32", + "movielistminiapp@0.0.36" ], "nativeDeps": [ - "react-native@0.60.5", + "react-native@0.62.2", "react-native-electrode-bridge@1.5.24", "react-native-ernmovie-api@0.0.11", "react-native-ernnavigation-api@0.0.5" diff --git a/system-tests/fixtures/android-container/lib/build.gradle b/system-tests/fixtures/android-container/lib/build.gradle index 65f86d36f..e8a455128 100644 --- a/system-tests/fixtures/android-container/lib/build.gradle +++ b/system-tests/fixtures/android-container/lib/build.gradle @@ -38,6 +38,6 @@ android { } dependencies { - implementation 'com.walmartlabs.ern:react-native:0.60.5' + implementation 'com.walmartlabs.ern:react-native:0.62.2' implementation 'com.android.support:appcompat-v7:28.0.0' } diff --git a/system-tests/fixtures/api-impl-js/ern-movie-api-impl/package.json b/system-tests/fixtures/api-impl-js/ern-movie-api-impl/package.json index 3150fa30a..79f55a457 100644 --- a/system-tests/fixtures/api-impl-js/ern-movie-api-impl/package.json +++ b/system-tests/fixtures/api-impl-js/ern-movie-api-impl/package.json @@ -4,7 +4,7 @@ "main": "index.js", "license": "MIT", "devDependencies": { - "react-native": "0.60.6" + "react-native": "0.62.2" }, "dependencies": { "react-native-ernmovie-api": "0.0.11" diff --git a/system-tests/fixtures/api-impl-native/ern-movie-api-impl/android/lib/build.gradle b/system-tests/fixtures/api-impl-native/ern-movie-api-impl/android/lib/build.gradle index 9d223ec87..451fe7515 100644 --- a/system-tests/fixtures/api-impl-native/ern-movie-api-impl/android/lib/build.gradle +++ b/system-tests/fixtures/api-impl-native/ern-movie-api-impl/android/lib/build.gradle @@ -30,7 +30,7 @@ dependencies { implementation 'androidx.appcompat:appcompat:1.1.0' implementation 'androidx.lifecycle:lifecycle-extensions:2.1.0' - implementation 'com.walmartlabs.ern:react-native:0.60.6' + implementation 'com.walmartlabs.ern:react-native:0.62.2' androidTestImplementation('com.android.support.test.espresso:espresso-core:2.2.2', { exclude group: 'com.android.support', module: 'support-annotations' diff --git a/system-tests/fixtures/api-impl-native/ern-movie-api-impl/ios/ElectrodeApiImpl.xcodeproj/project.pbxproj b/system-tests/fixtures/api-impl-native/ern-movie-api-impl/ios/ElectrodeApiImpl.xcodeproj/project.pbxproj index 7f3f44727..3f930f578 100644 --- a/system-tests/fixtures/api-impl-native/ern-movie-api-impl/ios/ElectrodeApiImpl.xcodeproj/project.pbxproj +++ b/system-tests/fixtures/api-impl-native/ern-movie-api-impl/ios/ElectrodeApiImpl.xcodeproj/project.pbxproj @@ -17,75 +17,62 @@ 6E28F6D823DBB722004A51CB /* ElectrodePluginConfig.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E28F6D723DBB722004A51CB /* ElectrodePluginConfig.h */; }; 968333D71E54E3470031C565 /* ElectrodeBridgeDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 968333D51E54E3470031C565 /* ElectrodeBridgeDelegate.h */; settings = {ATTRIBUTES = (Public, ); }; }; 968333D81E54E3470031C565 /* ElectrodeBridgeDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 968333D61E54E3470031C565 /* ElectrodeBridgeDelegate.m */; }; - 90E9944B697C40B19F5DC12C /* BirthYear.swift in Sources */ = {isa = PBXBuildFile; fileRef = 479E94795AF5485A83FA590D /* BirthYear.swift */; }; - 2DFC94DC51164A869BC6A451 /* Movie.swift in Sources */ = {isa = PBXBuildFile; fileRef = F302585E58D74D7881F1AC1F /* Movie.swift */; }; - 1306DA81C3DC46D38EF87C17 /* MoviesAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1581640D22924DAB9E7692F6 /* MoviesAPI.swift */; }; - 0242ED679E6E44E3A9A8DD6E /* MoviesRequests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 38BE88D436894CCF87927D1B /* MoviesRequests.swift */; }; - FCE2DC027D8C40479A0D17AC /* Person.swift in Sources */ = {isa = PBXBuildFile; fileRef = A2575DDE806E4066A84CC01A /* Person.swift */; }; - 2EF9ADD0DA7C467880E5100F /* Synopsis.swift in Sources */ = {isa = PBXBuildFile; fileRef = 75F3DF98C7084B159DC969C2 /* Synopsis.swift */; }; - D1ADEB40FFD4479AA3DEDC0E /* BirthYear.swift in Headers */ = {isa = PBXBuildFile; fileRef = 479E94795AF5485A83FA590D /* BirthYear.swift */; settings = {ATTRIBUTES = (Public, ); }; }; - 84A977C446ED4C4DA8724427 /* Movie.swift in Headers */ = {isa = PBXBuildFile; fileRef = F302585E58D74D7881F1AC1F /* Movie.swift */; settings = {ATTRIBUTES = (Public, ); }; }; - 24F6302D0DE64E3791BD9F19 /* MoviesAPI.swift in Headers */ = {isa = PBXBuildFile; fileRef = 1581640D22924DAB9E7692F6 /* MoviesAPI.swift */; settings = {ATTRIBUTES = (Public, ); }; }; - DD39FC1D1D3F436583588BE3 /* MoviesRequests.swift in Headers */ = {isa = PBXBuildFile; fileRef = 38BE88D436894CCF87927D1B /* MoviesRequests.swift */; settings = {ATTRIBUTES = (Public, ); }; }; - F5055B3671B04175912E3AE0 /* Person.swift in Headers */ = {isa = PBXBuildFile; fileRef = A2575DDE806E4066A84CC01A /* Person.swift */; settings = {ATTRIBUTES = (Public, ); }; }; - AC9220D0497240B591ED78A8 /* Synopsis.swift in Headers */ = {isa = PBXBuildFile; fileRef = 75F3DF98C7084B159DC969C2 /* Synopsis.swift */; settings = {ATTRIBUTES = (Public, ); }; }; - 0D0EDFB7E07E417298201505 /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1B35249349EB421181829255 /* libReact.a */; }; - 976081A8511442F7A544D5BB /* libRCTActionSheet.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B074DBB8E0BC4A06B168BB82 /* libRCTActionSheet.a */; }; - 12BD05E15A594FAA9C17CF70 /* libRCTImage.a in Frameworks */ = {isa = PBXBuildFile; fileRef = A150DC2C6E1C4E818FBB29B0 /* libRCTImage.a */; }; - B8F33F9F10DC4E4B8E0C1F7A /* libRCTAnimation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1E6F1ADBF2E44E65B7FAB509 /* libRCTAnimation.a */; }; - BD5B04F491D5407C8BE9278C /* libRCTText.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 0A510A0666C84B2FB0E92256 /* libRCTText.a */; }; - B02BC367304F410FA9AD22A8 /* libRCTWebSocket.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3785239C11DA44C4948998CA /* libRCTWebSocket.a */; }; - AF2A5E803187471783783378 /* libRCTLinking.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 25DB8AA621AF4E0FB34B33C4 /* libRCTLinking.a */; }; - 4F876CB81EC544969715A2F6 /* libRCTNetwork.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3392A9765A324DCFAE6B8C19 /* libRCTNetwork.a */; }; - 0FE0F4D4C6354150B4C1C177 /* libRCTSettings.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 0197D2AB4F6B44FCB994B84C /* libRCTSettings.a */; }; - 068854DA243F4E50B668C9F1 /* libRCTVibration.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FA6552913474420EB240EA23 /* libRCTVibration.a */; }; - 243F74AA052A47C08836EFEA /* libRCTCameraRoll.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2D6AAE4784F24EF088AF4038 /* libRCTCameraRoll.a */; }; - 1C86FDC2EA9D4C73829BCDD4 /* libART.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 92E03E5F99D04F30B3560A7E /* libART.a */; }; - 8D3BBC040E82427AA638D04B /* JavaScriptCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 235585221FE844E19BBCFCA5 /* JavaScriptCore.framework */; }; - AF4408696279401BAB28E24A /* ElectrodeObject.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDA4AB5F06984F158F353F95 /* ElectrodeObject.swift */; }; - 6420A7A803864C88ACEFB21E /* Bridgeable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 434781CEE81A4BAE91003419 /* Bridgeable.swift */; }; - D5F3A07D502E4E76A24FFC2A /* ElectrodeRequestHandlerProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1639F2179BB44BDB96033800 /* ElectrodeRequestHandlerProcessor.swift */; }; - EFC4F7468D0646DEAEEC8662 /* ElectrodeRequestProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = E6BBD0CE31174C0BAC2E6FD0 /* ElectrodeRequestProcessor.swift */; }; - 14DFCCAD2085437E921FF8B5 /* ElectrodeUtilities.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3E6C378534B148A4BB7D36F3 /* ElectrodeUtilities.swift */; }; - E3B9E59C8529415BB739434E /* EventListenerProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2481589CE41149C8BE9070D6 /* EventListenerProcessor.swift */; }; - 1052D39FF87C49C7931946CC /* EventProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA90BD78E43C4CD2BFB7F29C /* EventProcessor.swift */; }; - F8AC88850C97480C87498B3F /* Processor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 95257142C6E347B187C94F9B /* Processor.swift */; }; - 93442A00247247EAAD46D1C2 /* None.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3D8892C615BA42C9BEE154A5 /* None.swift */; }; - B2EE92D064E44B8ABE88F7CB /* ElectrodeBridgeEvent.m in Sources */ = {isa = PBXBuildFile; fileRef = 9A150487703D444B85B9F069 /* ElectrodeBridgeEvent.m */; }; - 35138EAABBAB44BBAA1A9367 /* ElectrodeBridgeFailureMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = EE652A422D6947EA87246A80 /* ElectrodeBridgeFailureMessage.m */; }; - D6DBE2B0A6C949179ACE6520 /* ElectrodeBridgeHolder.m in Sources */ = {isa = PBXBuildFile; fileRef = E5641C9A29074B788B161831 /* ElectrodeBridgeHolder.m */; }; - CEF2B9274376423587736A47 /* ElectrodeBridgeMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = B022410458B342D6B8E4DDB3 /* ElectrodeBridgeMessage.m */; }; - 4199AFA3913C4F78B29C66F2 /* ElectrodeBridgeProtocols.m in Sources */ = {isa = PBXBuildFile; fileRef = 3910B09A94394EF09B45F772 /* ElectrodeBridgeProtocols.m */; }; - 0942FCFDDE2D47B6BFCF6AE6 /* ElectrodeBridgeRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = B57AAD3EEF9641BC89DF37D5 /* ElectrodeBridgeRequest.m */; }; - C1D48FE36E444B5ABA50B2FE /* ElectrodeBridgeResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 5E14C0F3AA944D1C84C50555 /* ElectrodeBridgeResponse.m */; }; - AE9814F0019A4A27A57935E5 /* ElectrodeBridgeTransaction.m in Sources */ = {isa = PBXBuildFile; fileRef = 35744D7850064A82A6CA928A /* ElectrodeBridgeTransaction.m */; }; - 64E31F820F314759A673EB48 /* ElectrodeBridgeTransceiver.m in Sources */ = {isa = PBXBuildFile; fileRef = 5265ABB517BB4ED8917848E4 /* ElectrodeBridgeTransceiver.m */; }; - 0EB28BF6B15340EEB1C0D388 /* ElectrodeEventDispatcher.m in Sources */ = {isa = PBXBuildFile; fileRef = AF046DCFAAAA4AFE92B9675B /* ElectrodeEventDispatcher.m */; }; - 36D4802889D14402AF748D54 /* ElectrodeEventRegistrar.m in Sources */ = {isa = PBXBuildFile; fileRef = 067A507DAC7D467284AC6CD6 /* ElectrodeEventRegistrar.m */; }; - A69FB9E3C8A8406F9A9A2566 /* ElectrodeRequestDispatcher.m in Sources */ = {isa = PBXBuildFile; fileRef = D44FC2F068574B0183D448A4 /* ElectrodeRequestDispatcher.m */; }; - 89BAAD3B1BD24AF599F181C2 /* ElectrodeRequestRegistrar.m in Sources */ = {isa = PBXBuildFile; fileRef = 7CD3880B11E548749CD2AC18 /* ElectrodeRequestRegistrar.m */; }; - 91F73716344B4AFD8C0BB0DC /* ElectrodeLogger.m in Sources */ = {isa = PBXBuildFile; fileRef = FB492722F52B4A9DB326DB48 /* ElectrodeLogger.m */; }; - F93DD0F0988243C28BACD4B1 /* ElectrodeBridgeEvent.h in Headers */ = {isa = PBXBuildFile; fileRef = 08C384E64ABA478B92E978C8 /* ElectrodeBridgeEvent.h */; settings = {ATTRIBUTES = (Public, ); }; }; - C966ED6AB4C249FD84C4FB66 /* ElectrodeBridgeFailureMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = D4A5AAEE88AA485194492074 /* ElectrodeBridgeFailureMessage.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 734A55E0084F48FA85621E20 /* ElectrodeBridgeHolder.h in Headers */ = {isa = PBXBuildFile; fileRef = 3053AFAA54F44410A3398616 /* ElectrodeBridgeHolder.h */; settings = {ATTRIBUTES = (Public, ); }; }; - F1EF361B743E4A69879529CD /* ElectrodeBridgeMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = 260CC219A5A84BEC9A8BFB58 /* ElectrodeBridgeMessage.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 81ED7ED7D33C49AAB401D402 /* ElectrodeBridgeProtocols.h in Headers */ = {isa = PBXBuildFile; fileRef = 18E67634242446DA9E80E4D6 /* ElectrodeBridgeProtocols.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 2A560FF0A00F40F9A963481D /* ElectrodeBridgeRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = 5A87D0E634EE4B439EE54097 /* ElectrodeBridgeRequest.h */; settings = {ATTRIBUTES = (Public, ); }; }; - C6852F21BA984F0B9C0A5613 /* ElectrodeBridgeTransaction.h in Headers */ = {isa = PBXBuildFile; fileRef = 21BA2FC33700460C8FE4AAB1 /* ElectrodeBridgeTransaction.h */; }; - 601B8972F19C4550AF7C3848 /* ElectrodeBridgeTransceiver.h in Headers */ = {isa = PBXBuildFile; fileRef = 8675B6AE2BE14BA886E62FEF /* ElectrodeBridgeTransceiver.h */; }; - 31087F372F3D4B6A89246C40 /* ElectrodeBridgeTransceiver_Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 87398FDE548744B88ED38B4E /* ElectrodeBridgeTransceiver_Internal.h */; }; - E664CC0BB4D84765B34AACF5 /* ElectrodeEventDispatcher.h in Headers */ = {isa = PBXBuildFile; fileRef = 3576653D68AD4BFC8B26535E /* ElectrodeEventDispatcher.h */; }; - D46EAADD23B74FCC9447A244 /* ElectrodeEventRegistrar.h in Headers */ = {isa = PBXBuildFile; fileRef = 560525506E8C4A09BE8ED41D /* ElectrodeEventRegistrar.h */; }; - F109DC0C68FA4C358DA5E91C /* ElectrodeRequestDispatcher.h in Headers */ = {isa = PBXBuildFile; fileRef = 7DFD1E5E04404197BBFF50D3 /* ElectrodeRequestDispatcher.h */; }; - 550131319AD6407480E047FD /* ElectrodeRequestRegistrar.h in Headers */ = {isa = PBXBuildFile; fileRef = E4ABEC1264CE42EAA081E801 /* ElectrodeRequestRegistrar.h */; }; - 7530A52CA73C4830B1BF7534 /* ElectrodeReactNativeBridge.h in Headers */ = {isa = PBXBuildFile; fileRef = E3132DD7E2834123B1F0FC65 /* ElectrodeReactNativeBridge.h */; }; - 403B2F48F5FD458BB3E8B90A /* ElectrodeBridgeResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = DA15255C0F574F90A343FBD0 /* ElectrodeBridgeResponse.h */; }; - 1AD4FCAA13A044B389DFF499 /* ElectrodeLogger.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D4C25C77DC43AC8428209B /* ElectrodeLogger.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 8E21061F08B241549821753E /* RequestHandlerConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8508AB1619724A679C8E2CA4 /* RequestHandlerConfig.swift */; }; - 914A9385338B4157A3A0F03F /* RequestHandlerProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 10428135039E49889B0C8A3D /* RequestHandlerProvider.swift */; }; - 43B1ABF577514D429DB766C7 /* MoviesApiController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3E43388A6D2B4DAE813C51D0 /* MoviesApiController.swift */; }; - 620DCB65B3FE4572BA2D1A97 /* MoviesApiRequestHandlerDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0412FD7A7F7445BB94EED00C /* MoviesApiRequestHandlerDelegate.swift */; }; - 5D319E5FB703435A86113F10 /* MoviesApiRequestHandlerProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF5EDE3F102D43F1BB783B36 /* MoviesApiRequestHandlerProvider.swift */; }; + C9C37813D51C46E291387536 /* BirthYear.swift in Sources */ = {isa = PBXBuildFile; fileRef = 944D6905DEF9432EAFBE1088 /* BirthYear.swift */; }; + 14C58B9B1A8C4488BC273A5E /* Movie.swift in Sources */ = {isa = PBXBuildFile; fileRef = 069AF07F4C15426EBB208CDF /* Movie.swift */; }; + 55A29F6A001F4B58A0C4757C /* MoviesAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 45135B3E1CD44EDEA26030DF /* MoviesAPI.swift */; }; + 8EE0D4C862384129842F7466 /* MoviesRequests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 862FC49ADEB44AA9A9B31580 /* MoviesRequests.swift */; }; + 34A6F25A359A4160BBDD343E /* Person.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8D893BB9492468AB36CD1D8 /* Person.swift */; }; + 1931414A2C834C9B92AD3FDD /* Synopsis.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6DF2B28E04CE4B3A8F4F1E2D /* Synopsis.swift */; }; + 79559C8426FB483486385852 /* BirthYear.swift in Headers */ = {isa = PBXBuildFile; fileRef = 944D6905DEF9432EAFBE1088 /* BirthYear.swift */; settings = {ATTRIBUTES = (Public, ); }; }; + 0A4F857366794B6CAC0A5045 /* Movie.swift in Headers */ = {isa = PBXBuildFile; fileRef = 069AF07F4C15426EBB208CDF /* Movie.swift */; settings = {ATTRIBUTES = (Public, ); }; }; + 0B6D21C1FAFA4E2AA9C6FC81 /* MoviesAPI.swift in Headers */ = {isa = PBXBuildFile; fileRef = 45135B3E1CD44EDEA26030DF /* MoviesAPI.swift */; settings = {ATTRIBUTES = (Public, ); }; }; + DFF86D3FF31640C5A6E751FC /* MoviesRequests.swift in Headers */ = {isa = PBXBuildFile; fileRef = 862FC49ADEB44AA9A9B31580 /* MoviesRequests.swift */; settings = {ATTRIBUTES = (Public, ); }; }; + 51C45DC018AE4368AD76CF5C /* Person.swift in Headers */ = {isa = PBXBuildFile; fileRef = F8D893BB9492468AB36CD1D8 /* Person.swift */; settings = {ATTRIBUTES = (Public, ); }; }; + DE7232F881A24F0B9E904FB3 /* Synopsis.swift in Headers */ = {isa = PBXBuildFile; fileRef = 6DF2B28E04CE4B3A8F4F1E2D /* Synopsis.swift */; settings = {ATTRIBUTES = (Public, ); }; }; + 3EC30CA024524CE89DB6ADF6 /* ElectrodeObject.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2AC4EA46C87F423AAEF9D87C /* ElectrodeObject.swift */; }; + C463EF30D1254B7BB9F08F58 /* Bridgeable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 25B10A65F4DC4FA9A38DA921 /* Bridgeable.swift */; }; + 2FCFA5ED108B40F19C87F54F /* ElectrodeRequestHandlerProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FCB049E1D0D47F3A6B7DC53 /* ElectrodeRequestHandlerProcessor.swift */; }; + E4E05656DD1E489D9E2F1AEC /* ElectrodeRequestProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = F6694C73DC0A4163AE8DDCEA /* ElectrodeRequestProcessor.swift */; }; + 8EB4D4F981AF4357A55EA13F /* ElectrodeUtilities.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E4BCB3D87934E9081B3B316 /* ElectrodeUtilities.swift */; }; + 3C7868455B5944D387C214B3 /* EventListenerProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 12233E8AC51444C1A04274E9 /* EventListenerProcessor.swift */; }; + C047C551BD414EE9BFA494D2 /* EventProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 24CD88FE1DD84D19A0F2BFBE /* EventProcessor.swift */; }; + 12340244CD6A4C8B83A7B1B2 /* Processor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0D4A97FA5EAF428E872D7E27 /* Processor.swift */; }; + 0677D8FBCB5D4A2F98A47DE3 /* None.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9F07B574484648A788716AD0 /* None.swift */; }; + B58A381CB69D4220990626A9 /* ElectrodeBridgeEvent.m in Sources */ = {isa = PBXBuildFile; fileRef = 89A263966AF24AEAB2FF260D /* ElectrodeBridgeEvent.m */; }; + 42051AEF7D8C45C6AC91E68E /* ElectrodeBridgeFailureMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 055237AD2AB1450384535E55 /* ElectrodeBridgeFailureMessage.m */; }; + 86DE46D32F274A3CBDAD6B3C /* ElectrodeBridgeHolder.m in Sources */ = {isa = PBXBuildFile; fileRef = D6E9A77255764B81AE95077F /* ElectrodeBridgeHolder.m */; }; + 932007DEA27C4638ACF692C4 /* ElectrodeBridgeMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = CF8BE07D79F2414095F53F58 /* ElectrodeBridgeMessage.m */; }; + 4ED7989E60194CFE8A7E9F2A /* ElectrodeBridgeProtocols.m in Sources */ = {isa = PBXBuildFile; fileRef = B91C98F31AC745DDB840C97E /* ElectrodeBridgeProtocols.m */; }; + 728996E5968747E9B7F8640D /* ElectrodeBridgeRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 75CFB55F14EF4752B7D09EF0 /* ElectrodeBridgeRequest.m */; }; + C4EB2E9AFC014F37AB177E33 /* ElectrodeBridgeResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = E6B220974EDA4B75AE3A3E5D /* ElectrodeBridgeResponse.m */; }; + 56DC7BA949CD449984F3F475 /* ElectrodeBridgeTransaction.m in Sources */ = {isa = PBXBuildFile; fileRef = B44D5C4D16BA40FF9F982E25 /* ElectrodeBridgeTransaction.m */; }; + 86BD7CA7DBC54CDFABFA395E /* ElectrodeBridgeTransceiver.m in Sources */ = {isa = PBXBuildFile; fileRef = 93D192E97813445C8B4133DE /* ElectrodeBridgeTransceiver.m */; }; + FA80C94ABC6249ADAB400E7D /* ElectrodeEventDispatcher.m in Sources */ = {isa = PBXBuildFile; fileRef = 95E64C599C8B4F269A522122 /* ElectrodeEventDispatcher.m */; }; + 2C613F3FCC7141CF86F92305 /* ElectrodeEventRegistrar.m in Sources */ = {isa = PBXBuildFile; fileRef = 3795AA9A399F4A88A85D48F8 /* ElectrodeEventRegistrar.m */; }; + 3CC83C6431874200A54900E2 /* ElectrodeRequestDispatcher.m in Sources */ = {isa = PBXBuildFile; fileRef = 6DCFECC8BBD241E99B2827B9 /* ElectrodeRequestDispatcher.m */; }; + F12428464157447EA5D50786 /* ElectrodeRequestRegistrar.m in Sources */ = {isa = PBXBuildFile; fileRef = 1BDD1E26C67D44A0B7C26F85 /* ElectrodeRequestRegistrar.m */; }; + 304D767959ED4AD29D7ECECD /* ElectrodeLogger.m in Sources */ = {isa = PBXBuildFile; fileRef = 3FB0FB7FF2F849B99BC33518 /* ElectrodeLogger.m */; }; + 672863DE64894C8793DBBD5F /* ElectrodeBridgeEvent.h in Headers */ = {isa = PBXBuildFile; fileRef = 78826B59C26E455D81DE4595 /* ElectrodeBridgeEvent.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9A2DA379EC724A29BB7351D5 /* ElectrodeBridgeFailureMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = CC283E8BDF7E4C78B3D316D1 /* ElectrodeBridgeFailureMessage.h */; settings = {ATTRIBUTES = (Public, ); }; }; + D3D0B6878CF140EF8CA66F02 /* ElectrodeBridgeHolder.h in Headers */ = {isa = PBXBuildFile; fileRef = D652654C7F034E9B9F5AC06D /* ElectrodeBridgeHolder.h */; settings = {ATTRIBUTES = (Public, ); }; }; + D3B9721CEFF04B3F8D4075DA /* ElectrodeBridgeMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = EA71ADF5317A4ACAA451A351 /* ElectrodeBridgeMessage.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E961295F6E7C4C3EB1615769 /* ElectrodeBridgeProtocols.h in Headers */ = {isa = PBXBuildFile; fileRef = 0A3ACCEA969445E997E55D3E /* ElectrodeBridgeProtocols.h */; settings = {ATTRIBUTES = (Public, ); }; }; + CCFDB20441374BFBABD0F3FF /* ElectrodeBridgeRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = 3AEB2F0C95F0440586937CEB /* ElectrodeBridgeRequest.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 4D303C391DAF41FB936771BE /* ElectrodeBridgeTransaction.h in Headers */ = {isa = PBXBuildFile; fileRef = 2773572D6674480CAFBC0F7E /* ElectrodeBridgeTransaction.h */; }; + CBB2E1D53E3C42FBA31B22DC /* ElectrodeBridgeTransceiver.h in Headers */ = {isa = PBXBuildFile; fileRef = 1FB3876EFD1643BF815BC302 /* ElectrodeBridgeTransceiver.h */; }; + 71CD1A66CD634E6385C5E16E /* ElectrodeBridgeTransceiver_Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 7AA8D95C6B394CD3A8F2E24A /* ElectrodeBridgeTransceiver_Internal.h */; }; + 1DFFD7343E4C4776A1518273 /* ElectrodeEventDispatcher.h in Headers */ = {isa = PBXBuildFile; fileRef = 57E9742441E84E3FB15AC584 /* ElectrodeEventDispatcher.h */; }; + 51D41F2CFD2E4E97BDB1320A /* ElectrodeEventRegistrar.h in Headers */ = {isa = PBXBuildFile; fileRef = 07C12AD4CA0848A2B9B58D0D /* ElectrodeEventRegistrar.h */; }; + 67FECE8BAE434DEBB2EA9295 /* ElectrodeRequestDispatcher.h in Headers */ = {isa = PBXBuildFile; fileRef = 073AD54F5C1647F2B1237102 /* ElectrodeRequestDispatcher.h */; }; + 155B8D04A35C4E9EAB0569FA /* ElectrodeRequestRegistrar.h in Headers */ = {isa = PBXBuildFile; fileRef = 27F10B7BBDEE42078F80E1D9 /* ElectrodeRequestRegistrar.h */; }; + 51F2CD2677CB49239ED9AE20 /* ElectrodeReactNativeBridge.h in Headers */ = {isa = PBXBuildFile; fileRef = DF61757D5A7948A58D85003E /* ElectrodeReactNativeBridge.h */; }; + 91303628F2204C4DBC97934D /* ElectrodeBridgeResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = D1B081FFFC11400E80100528 /* ElectrodeBridgeResponse.h */; }; + 1B366A0FB34C4D3B8F2618A6 /* ElectrodeLogger.h in Headers */ = {isa = PBXBuildFile; fileRef = 98A4557110BA44DD8328C3F8 /* ElectrodeLogger.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 122DD6F5C3F64573A93CA985 /* RequestHandlerConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E14C767679F459285020E8E /* RequestHandlerConfig.swift */; }; + 6F01E405988E40D694965937 /* RequestHandlerProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = E687FA8C89A44A678492C721 /* RequestHandlerProvider.swift */; }; + B75928BE9DD44B38B481CED0 /* MoviesApiController.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF1AF8051B4743218D8C77C4 /* MoviesApiController.swift */; }; + 51F8D8A4B89F424CA0268C3C /* MoviesApiRequestHandlerDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = E8753B21C5414EEBB3E6188C /* MoviesApiRequestHandlerDelegate.swift */; }; + 4BB7099203464A6E870A4F3F /* MoviesApiRequestHandlerProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82C0FFA93D804697A59CC289 /* MoviesApiRequestHandlerProvider.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -96,174 +83,6 @@ remoteGlobalIDString = 485009E21E2FF23B009B6610; remoteInfo = ElectrodeApiImpl; }; - 40C38CC6289A44BB99E68FDA /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = E40D7EA4F9B644B293489EB1 /* React.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = 0D0EDFB7E07E417298201505; - remoteInfo = React; - }; - 5A679227D32447BC9B59FD36 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = E40D7EA4F9B644B293489EB1 /* React.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 83CBBA2E1A601D0E00E9B192; - remoteInfo = React; - }; - D0A9F9DD05B34159A7801FB0 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = B41A4B7C9509432981753D25 /* RCTActionSheet.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = 976081A8511442F7A544D5BB; - remoteInfo = RCTActionSheet; - }; - 567002DE40B84A23A3675061 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = B41A4B7C9509432981753D25 /* RCTActionSheet.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 134814201AA4EA6300B7C361; - remoteInfo = RCTActionSheet; - }; - 5E1841DED83E4222976DA81D /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = E1EF13976B704422991F12CC /* RCTImage.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = 12BD05E15A594FAA9C17CF70; - remoteInfo = RCTImage; - }; - 7E3BCC932D4E472F8D0D74D0 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = E1EF13976B704422991F12CC /* RCTImage.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 58B5115D1A9E6B3D00147676; - remoteInfo = RCTImage; - }; - 907B608A92CD4582BC40D028 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = A9626891585341E8B39C05C6 /* RCTAnimation.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = B8F33F9F10DC4E4B8E0C1F7A; - remoteInfo = RCTAnimation; - }; - AF032593E75D4357B1DA2038 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = A9626891585341E8B39C05C6 /* RCTAnimation.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 134814201AA4EA6300B7C361; - remoteInfo = RCTAnimation; - }; - 6166C77FECBD4B26B99401BB /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 85D211C1769B4A6CAD5F59D6 /* RCTText.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = BD5B04F491D5407C8BE9278C; - remoteInfo = RCTText; - }; - D4DE265FA1D6498EAD92FD03 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 85D211C1769B4A6CAD5F59D6 /* RCTText.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 58B5119B1A9E6C1200147676; - remoteInfo = RCTText; - }; - 29413E16CFF9460EBEF4B096 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 7B68D0BEBF9C468DB226ABF4 /* RCTWebSocket.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = B02BC367304F410FA9AD22A8; - remoteInfo = RCTWebSocket; - }; - 55D4D6B7F2AF43C895173006 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 7B68D0BEBF9C468DB226ABF4 /* RCTWebSocket.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 3C86DF461ADF2C930047B81A; - remoteInfo = RCTWebSocket; - }; - D35775F1AD024F498218F64A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 229E63151EE74BBFAF43F56C /* RCTLinking.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = AF2A5E803187471783783378; - remoteInfo = RCTLinking; - }; - 556E6DBEEE4248808496E096 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 229E63151EE74BBFAF43F56C /* RCTLinking.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 134814201AA4EA6300B7C361; - remoteInfo = RCTLinking; - }; - 5000B154381C4717805CBFC9 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 430B354B658143D8A1B36F86 /* RCTNetwork.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = 4F876CB81EC544969715A2F6; - remoteInfo = RCTNetwork; - }; - B57A3C6C83ED4AE78997189D /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 430B354B658143D8A1B36F86 /* RCTNetwork.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 58B511DB1A9E6C8500147676; - remoteInfo = RCTNetwork; - }; - F985AE62DB404059A5B4EB61 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = BEAB005730BD4742A91B8635 /* RCTSettings.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = 0FE0F4D4C6354150B4C1C177; - remoteInfo = RCTSettings; - }; - 2DBF3B484FDE4427AB792C93 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = BEAB005730BD4742A91B8635 /* RCTSettings.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 134814201AA4EA6300B7C361; - remoteInfo = RCTSettings; - }; - DC57CFB28CA540D78FDE1921 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 5D569B125E98407C8F3227D0 /* RCTVibration.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = 068854DA243F4E50B668C9F1; - remoteInfo = RCTVibration; - }; - FCE3BEA61B5B40C899A97E25 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 5D569B125E98407C8F3227D0 /* RCTVibration.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 832C81801AAF6DEF007FA2F7; - remoteInfo = RCTVibration; - }; - 609A439DADDE4003B0576B61 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 175EC1F5DD304A7B96EE873E /* RCTCameraRoll.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = 243F74AA052A47C08836EFEA; - remoteInfo = RCTCameraRoll; - }; - 5934063E51414E8DB9F89280 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 175EC1F5DD304A7B96EE873E /* RCTCameraRoll.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 58B5115D1A9E6B3D00147676; - remoteInfo = RCTCameraRoll; - }; - 1C3FC9CD3FAD4523B58368DD /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 8BB62441BF1A47B59528A758 /* ART.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = 1C86FDC2EA9D4C73829BCDD4; - remoteInfo = ART; - }; - 76D72B9ABB5C4F9BBBE58411 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 8BB62441BF1A47B59528A758 /* ART.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 0CF68AC11AF0540F00FF9E5C; - remoteInfo = ART; - }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ @@ -281,81 +100,56 @@ 6E28F6D723DBB722004A51CB /* ElectrodePluginConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ElectrodePluginConfig.h; sourceTree = ""; }; 968333D51E54E3470031C565 /* ElectrodeBridgeDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ElectrodeBridgeDelegate.h; sourceTree = ""; }; 968333D61E54E3470031C565 /* ElectrodeBridgeDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ElectrodeBridgeDelegate.m; sourceTree = ""; }; - 479E94795AF5485A83FA590D /* BirthYear.swift */ = {isa = PBXFileReference; name = "BirthYear.swift"; path = "APIs/BirthYear.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; fileRef = 479E94795AF5485A83FA590D; basename = BirthYear.swift; target = undefined; uuid = D1ADEB40FFD4479AA3DEDC0E; settings = {ATTRIBUTES = (Public, ); }; }; - F302585E58D74D7881F1AC1F /* Movie.swift */ = {isa = PBXFileReference; name = "Movie.swift"; path = "APIs/Movie.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; fileRef = F302585E58D74D7881F1AC1F; basename = Movie.swift; target = undefined; uuid = 84A977C446ED4C4DA8724427; settings = {ATTRIBUTES = (Public, ); }; }; - 1581640D22924DAB9E7692F6 /* MoviesAPI.swift */ = {isa = PBXFileReference; name = "MoviesAPI.swift"; path = "APIs/MoviesAPI.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; fileRef = 1581640D22924DAB9E7692F6; basename = MoviesAPI.swift; target = undefined; uuid = 24F6302D0DE64E3791BD9F19; settings = {ATTRIBUTES = (Public, ); }; }; - 38BE88D436894CCF87927D1B /* MoviesRequests.swift */ = {isa = PBXFileReference; name = "MoviesRequests.swift"; path = "APIs/MoviesRequests.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; fileRef = 38BE88D436894CCF87927D1B; basename = MoviesRequests.swift; target = undefined; uuid = DD39FC1D1D3F436583588BE3; settings = {ATTRIBUTES = (Public, ); }; }; - A2575DDE806E4066A84CC01A /* Person.swift */ = {isa = PBXFileReference; name = "Person.swift"; path = "APIs/Person.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; fileRef = A2575DDE806E4066A84CC01A; basename = Person.swift; target = undefined; uuid = F5055B3671B04175912E3AE0; settings = {ATTRIBUTES = (Public, ); }; }; - 75F3DF98C7084B159DC969C2 /* Synopsis.swift */ = {isa = PBXFileReference; name = "Synopsis.swift"; path = "APIs/Synopsis.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; fileRef = 75F3DF98C7084B159DC969C2; basename = Synopsis.swift; target = undefined; uuid = AC9220D0497240B591ED78A8; settings = {ATTRIBUTES = (Public, ); }; }; - E40D7EA4F9B644B293489EB1 /* React.xcodeproj */ = {isa = PBXFileReference; name = "React.xcodeproj"; path = "ReactNative/React/React.xcodeproj"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; }; - 1B35249349EB421181829255 /* libReact.a */ = {isa = PBXFileReference; name = "libReact.a"; path = "libReact.a"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; }; - B41A4B7C9509432981753D25 /* RCTActionSheet.xcodeproj */ = {isa = PBXFileReference; name = "RCTActionSheet.xcodeproj"; path = "ReactNative/ActionSheetIOS/RCTActionSheet.xcodeproj"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; }; - B074DBB8E0BC4A06B168BB82 /* libRCTActionSheet.a */ = {isa = PBXFileReference; name = "libRCTActionSheet.a"; path = "libRCTActionSheet.a"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; }; - E1EF13976B704422991F12CC /* RCTImage.xcodeproj */ = {isa = PBXFileReference; name = "RCTImage.xcodeproj"; path = "ReactNative/Image/RCTImage.xcodeproj"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; }; - A150DC2C6E1C4E818FBB29B0 /* libRCTImage.a */ = {isa = PBXFileReference; name = "libRCTImage.a"; path = "libRCTImage.a"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; }; - A9626891585341E8B39C05C6 /* RCTAnimation.xcodeproj */ = {isa = PBXFileReference; name = "RCTAnimation.xcodeproj"; path = "ReactNative/NativeAnimation/RCTAnimation.xcodeproj"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; }; - 1E6F1ADBF2E44E65B7FAB509 /* libRCTAnimation.a */ = {isa = PBXFileReference; name = "libRCTAnimation.a"; path = "libRCTAnimation.a"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; }; - 85D211C1769B4A6CAD5F59D6 /* RCTText.xcodeproj */ = {isa = PBXFileReference; name = "RCTText.xcodeproj"; path = "ReactNative/Text/RCTText.xcodeproj"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; }; - 0A510A0666C84B2FB0E92256 /* libRCTText.a */ = {isa = PBXFileReference; name = "libRCTText.a"; path = "libRCTText.a"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; }; - 7B68D0BEBF9C468DB226ABF4 /* RCTWebSocket.xcodeproj */ = {isa = PBXFileReference; name = "RCTWebSocket.xcodeproj"; path = "ReactNative/WebSocket/RCTWebSocket.xcodeproj"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; }; - 3785239C11DA44C4948998CA /* libRCTWebSocket.a */ = {isa = PBXFileReference; name = "libRCTWebSocket.a"; path = "libRCTWebSocket.a"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; }; - 229E63151EE74BBFAF43F56C /* RCTLinking.xcodeproj */ = {isa = PBXFileReference; name = "RCTLinking.xcodeproj"; path = "ReactNative/LinkingIOS/RCTLinking.xcodeproj"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; }; - 25DB8AA621AF4E0FB34B33C4 /* libRCTLinking.a */ = {isa = PBXFileReference; name = "libRCTLinking.a"; path = "libRCTLinking.a"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; }; - 430B354B658143D8A1B36F86 /* RCTNetwork.xcodeproj */ = {isa = PBXFileReference; name = "RCTNetwork.xcodeproj"; path = "ReactNative/Network/RCTNetwork.xcodeproj"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; }; - 3392A9765A324DCFAE6B8C19 /* libRCTNetwork.a */ = {isa = PBXFileReference; name = "libRCTNetwork.a"; path = "libRCTNetwork.a"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; }; - BEAB005730BD4742A91B8635 /* RCTSettings.xcodeproj */ = {isa = PBXFileReference; name = "RCTSettings.xcodeproj"; path = "ReactNative/Settings/RCTSettings.xcodeproj"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; }; - 0197D2AB4F6B44FCB994B84C /* libRCTSettings.a */ = {isa = PBXFileReference; name = "libRCTSettings.a"; path = "libRCTSettings.a"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; }; - 5D569B125E98407C8F3227D0 /* RCTVibration.xcodeproj */ = {isa = PBXFileReference; name = "RCTVibration.xcodeproj"; path = "ReactNative/Vibration/RCTVibration.xcodeproj"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; }; - FA6552913474420EB240EA23 /* libRCTVibration.a */ = {isa = PBXFileReference; name = "libRCTVibration.a"; path = "libRCTVibration.a"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; }; - 175EC1F5DD304A7B96EE873E /* RCTCameraRoll.xcodeproj */ = {isa = PBXFileReference; name = "RCTCameraRoll.xcodeproj"; path = "ReactNative/CameraRoll/RCTCameraRoll.xcodeproj"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; }; - 2D6AAE4784F24EF088AF4038 /* libRCTCameraRoll.a */ = {isa = PBXFileReference; name = "libRCTCameraRoll.a"; path = "libRCTCameraRoll.a"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; }; - 8BB62441BF1A47B59528A758 /* ART.xcodeproj */ = {isa = PBXFileReference; name = "ART.xcodeproj"; path = "ReactNative/ART/ART.xcodeproj"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; }; - 92E03E5F99D04F30B3560A7E /* libART.a */ = {isa = PBXFileReference; name = "libART.a"; path = "libART.a"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; }; - 235585221FE844E19BBCFCA5 /* JavaScriptCore.framework */ = {isa = PBXFileReference; name = "JavaScriptCore.framework"; path = "/System/Library/Frameworks/JavaScriptCore.framework"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.framework; explicitFileType = undefined; includeInIndex = 0; }; - DDA4AB5F06984F158F353F95 /* ElectrodeObject.swift */ = {isa = PBXFileReference; name = "ElectrodeObject.swift"; path = "ElectrodeReactNativeBridge/ElectrodeObject.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; - 434781CEE81A4BAE91003419 /* Bridgeable.swift */ = {isa = PBXFileReference; name = "Bridgeable.swift"; path = "ElectrodeReactNativeBridge/Bridgeable.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; - 1639F2179BB44BDB96033800 /* ElectrodeRequestHandlerProcessor.swift */ = {isa = PBXFileReference; name = "ElectrodeRequestHandlerProcessor.swift"; path = "ElectrodeReactNativeBridge/ElectrodeRequestHandlerProcessor.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; - E6BBD0CE31174C0BAC2E6FD0 /* ElectrodeRequestProcessor.swift */ = {isa = PBXFileReference; name = "ElectrodeRequestProcessor.swift"; path = "ElectrodeReactNativeBridge/ElectrodeRequestProcessor.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; - 3E6C378534B148A4BB7D36F3 /* ElectrodeUtilities.swift */ = {isa = PBXFileReference; name = "ElectrodeUtilities.swift"; path = "ElectrodeReactNativeBridge/ElectrodeUtilities.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; - 2481589CE41149C8BE9070D6 /* EventListenerProcessor.swift */ = {isa = PBXFileReference; name = "EventListenerProcessor.swift"; path = "ElectrodeReactNativeBridge/EventListenerProcessor.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; - DA90BD78E43C4CD2BFB7F29C /* EventProcessor.swift */ = {isa = PBXFileReference; name = "EventProcessor.swift"; path = "ElectrodeReactNativeBridge/EventProcessor.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; - 95257142C6E347B187C94F9B /* Processor.swift */ = {isa = PBXFileReference; name = "Processor.swift"; path = "ElectrodeReactNativeBridge/Processor.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; - 3D8892C615BA42C9BEE154A5 /* None.swift */ = {isa = PBXFileReference; name = "None.swift"; path = "ElectrodeReactNativeBridge/None.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; - 9A150487703D444B85B9F069 /* ElectrodeBridgeEvent.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeEvent.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeEvent.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - EE652A422D6947EA87246A80 /* ElectrodeBridgeFailureMessage.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeFailureMessage.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeFailureMessage.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - E5641C9A29074B788B161831 /* ElectrodeBridgeHolder.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeHolder.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeHolder.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - B022410458B342D6B8E4DDB3 /* ElectrodeBridgeMessage.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeMessage.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeMessage.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - 3910B09A94394EF09B45F772 /* ElectrodeBridgeProtocols.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeProtocols.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeProtocols.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - B57AAD3EEF9641BC89DF37D5 /* ElectrodeBridgeRequest.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeRequest.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeRequest.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - 5E14C0F3AA944D1C84C50555 /* ElectrodeBridgeResponse.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeResponse.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeResponse.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - 35744D7850064A82A6CA928A /* ElectrodeBridgeTransaction.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeTransaction.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeTransaction.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - 5265ABB517BB4ED8917848E4 /* ElectrodeBridgeTransceiver.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeTransceiver.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeTransceiver.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - AF046DCFAAAA4AFE92B9675B /* ElectrodeEventDispatcher.m */ = {isa = PBXFileReference; name = "ElectrodeEventDispatcher.m"; path = "ElectrodeReactNativeBridge/ElectrodeEventDispatcher.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - 067A507DAC7D467284AC6CD6 /* ElectrodeEventRegistrar.m */ = {isa = PBXFileReference; name = "ElectrodeEventRegistrar.m"; path = "ElectrodeReactNativeBridge/ElectrodeEventRegistrar.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - D44FC2F068574B0183D448A4 /* ElectrodeRequestDispatcher.m */ = {isa = PBXFileReference; name = "ElectrodeRequestDispatcher.m"; path = "ElectrodeReactNativeBridge/ElectrodeRequestDispatcher.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - 7CD3880B11E548749CD2AC18 /* ElectrodeRequestRegistrar.m */ = {isa = PBXFileReference; name = "ElectrodeRequestRegistrar.m"; path = "ElectrodeReactNativeBridge/ElectrodeRequestRegistrar.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - FB492722F52B4A9DB326DB48 /* ElectrodeLogger.m */ = {isa = PBXFileReference; name = "ElectrodeLogger.m"; path = "ElectrodeReactNativeBridge/ElectrodeLogger.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - 08C384E64ABA478B92E978C8 /* ElectrodeBridgeEvent.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeEvent.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeEvent.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - D4A5AAEE88AA485194492074 /* ElectrodeBridgeFailureMessage.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeFailureMessage.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeFailureMessage.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - 3053AFAA54F44410A3398616 /* ElectrodeBridgeHolder.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeHolder.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeHolder.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - 260CC219A5A84BEC9A8BFB58 /* ElectrodeBridgeMessage.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeMessage.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeMessage.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - 18E67634242446DA9E80E4D6 /* ElectrodeBridgeProtocols.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeProtocols.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeProtocols.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - 5A87D0E634EE4B439EE54097 /* ElectrodeBridgeRequest.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeRequest.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeRequest.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - 21BA2FC33700460C8FE4AAB1 /* ElectrodeBridgeTransaction.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeTransaction.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeTransaction.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - 8675B6AE2BE14BA886E62FEF /* ElectrodeBridgeTransceiver.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeTransceiver.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeTransceiver.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - 87398FDE548744B88ED38B4E /* ElectrodeBridgeTransceiver_Internal.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeTransceiver_Internal.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeTransceiver_Internal.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - 3576653D68AD4BFC8B26535E /* ElectrodeEventDispatcher.h */ = {isa = PBXFileReference; name = "ElectrodeEventDispatcher.h"; path = "ElectrodeReactNativeBridge/ElectrodeEventDispatcher.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - 560525506E8C4A09BE8ED41D /* ElectrodeEventRegistrar.h */ = {isa = PBXFileReference; name = "ElectrodeEventRegistrar.h"; path = "ElectrodeReactNativeBridge/ElectrodeEventRegistrar.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - 7DFD1E5E04404197BBFF50D3 /* ElectrodeRequestDispatcher.h */ = {isa = PBXFileReference; name = "ElectrodeRequestDispatcher.h"; path = "ElectrodeReactNativeBridge/ElectrodeRequestDispatcher.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - E4ABEC1264CE42EAA081E801 /* ElectrodeRequestRegistrar.h */ = {isa = PBXFileReference; name = "ElectrodeRequestRegistrar.h"; path = "ElectrodeReactNativeBridge/ElectrodeRequestRegistrar.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - E3132DD7E2834123B1F0FC65 /* ElectrodeReactNativeBridge.h */ = {isa = PBXFileReference; name = "ElectrodeReactNativeBridge.h"; path = "ElectrodeReactNativeBridge/ElectrodeReactNativeBridge.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - DA15255C0F574F90A343FBD0 /* ElectrodeBridgeResponse.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeResponse.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeResponse.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - A7D4C25C77DC43AC8428209B /* ElectrodeLogger.h */ = {isa = PBXFileReference; name = "ElectrodeLogger.h"; path = "ElectrodeReactNativeBridge/ElectrodeLogger.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - 8508AB1619724A679C8E2CA4 /* RequestHandlerConfig.swift */ = {isa = PBXFileReference; name = "RequestHandlerConfig.swift"; path = "APIImpls/RequestHandlerConfig.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; - 10428135039E49889B0C8A3D /* RequestHandlerProvider.swift */ = {isa = PBXFileReference; name = "RequestHandlerProvider.swift"; path = "APIImpls/RequestHandlerProvider.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; - 3E43388A6D2B4DAE813C51D0 /* MoviesApiController.swift */ = {isa = PBXFileReference; name = "MoviesApiController.swift"; path = "APIImpls/MoviesApiController.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; - 0412FD7A7F7445BB94EED00C /* MoviesApiRequestHandlerDelegate.swift */ = {isa = PBXFileReference; name = "MoviesApiRequestHandlerDelegate.swift"; path = "APIImpls/MoviesApiRequestHandlerDelegate.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; - AF5EDE3F102D43F1BB783B36 /* MoviesApiRequestHandlerProvider.swift */ = {isa = PBXFileReference; name = "MoviesApiRequestHandlerProvider.swift"; path = "APIImpls/MoviesApiRequestHandlerProvider.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; + 944D6905DEF9432EAFBE1088 /* BirthYear.swift */ = {isa = PBXFileReference; name = "BirthYear.swift"; path = "APIs/BirthYear.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; fileRef = 944D6905DEF9432EAFBE1088; basename = BirthYear.swift; target = undefined; uuid = 79559C8426FB483486385852; settings = {ATTRIBUTES = (Public, ); }; }; + 069AF07F4C15426EBB208CDF /* Movie.swift */ = {isa = PBXFileReference; name = "Movie.swift"; path = "APIs/Movie.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; fileRef = 069AF07F4C15426EBB208CDF; basename = Movie.swift; target = undefined; uuid = 0A4F857366794B6CAC0A5045; settings = {ATTRIBUTES = (Public, ); }; }; + 45135B3E1CD44EDEA26030DF /* MoviesAPI.swift */ = {isa = PBXFileReference; name = "MoviesAPI.swift"; path = "APIs/MoviesAPI.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; fileRef = 45135B3E1CD44EDEA26030DF; basename = MoviesAPI.swift; target = undefined; uuid = 0B6D21C1FAFA4E2AA9C6FC81; settings = {ATTRIBUTES = (Public, ); }; }; + 862FC49ADEB44AA9A9B31580 /* MoviesRequests.swift */ = {isa = PBXFileReference; name = "MoviesRequests.swift"; path = "APIs/MoviesRequests.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; fileRef = 862FC49ADEB44AA9A9B31580; basename = MoviesRequests.swift; target = undefined; uuid = DFF86D3FF31640C5A6E751FC; settings = {ATTRIBUTES = (Public, ); }; }; + F8D893BB9492468AB36CD1D8 /* Person.swift */ = {isa = PBXFileReference; name = "Person.swift"; path = "APIs/Person.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; fileRef = F8D893BB9492468AB36CD1D8; basename = Person.swift; target = undefined; uuid = 51C45DC018AE4368AD76CF5C; settings = {ATTRIBUTES = (Public, ); }; }; + 6DF2B28E04CE4B3A8F4F1E2D /* Synopsis.swift */ = {isa = PBXFileReference; name = "Synopsis.swift"; path = "APIs/Synopsis.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; fileRef = 6DF2B28E04CE4B3A8F4F1E2D; basename = Synopsis.swift; target = undefined; uuid = DE7232F881A24F0B9E904FB3; settings = {ATTRIBUTES = (Public, ); }; }; + 2AC4EA46C87F423AAEF9D87C /* ElectrodeObject.swift */ = {isa = PBXFileReference; name = "ElectrodeObject.swift"; path = "ElectrodeReactNativeBridge/ElectrodeObject.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; + 25B10A65F4DC4FA9A38DA921 /* Bridgeable.swift */ = {isa = PBXFileReference; name = "Bridgeable.swift"; path = "ElectrodeReactNativeBridge/Bridgeable.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; + 6FCB049E1D0D47F3A6B7DC53 /* ElectrodeRequestHandlerProcessor.swift */ = {isa = PBXFileReference; name = "ElectrodeRequestHandlerProcessor.swift"; path = "ElectrodeReactNativeBridge/ElectrodeRequestHandlerProcessor.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; + F6694C73DC0A4163AE8DDCEA /* ElectrodeRequestProcessor.swift */ = {isa = PBXFileReference; name = "ElectrodeRequestProcessor.swift"; path = "ElectrodeReactNativeBridge/ElectrodeRequestProcessor.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; + 6E4BCB3D87934E9081B3B316 /* ElectrodeUtilities.swift */ = {isa = PBXFileReference; name = "ElectrodeUtilities.swift"; path = "ElectrodeReactNativeBridge/ElectrodeUtilities.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; + 12233E8AC51444C1A04274E9 /* EventListenerProcessor.swift */ = {isa = PBXFileReference; name = "EventListenerProcessor.swift"; path = "ElectrodeReactNativeBridge/EventListenerProcessor.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; + 24CD88FE1DD84D19A0F2BFBE /* EventProcessor.swift */ = {isa = PBXFileReference; name = "EventProcessor.swift"; path = "ElectrodeReactNativeBridge/EventProcessor.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; + 0D4A97FA5EAF428E872D7E27 /* Processor.swift */ = {isa = PBXFileReference; name = "Processor.swift"; path = "ElectrodeReactNativeBridge/Processor.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; + 9F07B574484648A788716AD0 /* None.swift */ = {isa = PBXFileReference; name = "None.swift"; path = "ElectrodeReactNativeBridge/None.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; + 89A263966AF24AEAB2FF260D /* ElectrodeBridgeEvent.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeEvent.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeEvent.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; + 055237AD2AB1450384535E55 /* ElectrodeBridgeFailureMessage.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeFailureMessage.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeFailureMessage.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; + D6E9A77255764B81AE95077F /* ElectrodeBridgeHolder.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeHolder.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeHolder.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; + CF8BE07D79F2414095F53F58 /* ElectrodeBridgeMessage.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeMessage.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeMessage.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; + B91C98F31AC745DDB840C97E /* ElectrodeBridgeProtocols.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeProtocols.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeProtocols.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; + 75CFB55F14EF4752B7D09EF0 /* ElectrodeBridgeRequest.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeRequest.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeRequest.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; + E6B220974EDA4B75AE3A3E5D /* ElectrodeBridgeResponse.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeResponse.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeResponse.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; + B44D5C4D16BA40FF9F982E25 /* ElectrodeBridgeTransaction.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeTransaction.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeTransaction.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; + 93D192E97813445C8B4133DE /* ElectrodeBridgeTransceiver.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeTransceiver.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeTransceiver.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; + 95E64C599C8B4F269A522122 /* ElectrodeEventDispatcher.m */ = {isa = PBXFileReference; name = "ElectrodeEventDispatcher.m"; path = "ElectrodeReactNativeBridge/ElectrodeEventDispatcher.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; + 3795AA9A399F4A88A85D48F8 /* ElectrodeEventRegistrar.m */ = {isa = PBXFileReference; name = "ElectrodeEventRegistrar.m"; path = "ElectrodeReactNativeBridge/ElectrodeEventRegistrar.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; + 6DCFECC8BBD241E99B2827B9 /* ElectrodeRequestDispatcher.m */ = {isa = PBXFileReference; name = "ElectrodeRequestDispatcher.m"; path = "ElectrodeReactNativeBridge/ElectrodeRequestDispatcher.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; + 1BDD1E26C67D44A0B7C26F85 /* ElectrodeRequestRegistrar.m */ = {isa = PBXFileReference; name = "ElectrodeRequestRegistrar.m"; path = "ElectrodeReactNativeBridge/ElectrodeRequestRegistrar.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; + 3FB0FB7FF2F849B99BC33518 /* ElectrodeLogger.m */ = {isa = PBXFileReference; name = "ElectrodeLogger.m"; path = "ElectrodeReactNativeBridge/ElectrodeLogger.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; + 78826B59C26E455D81DE4595 /* ElectrodeBridgeEvent.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeEvent.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeEvent.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; + CC283E8BDF7E4C78B3D316D1 /* ElectrodeBridgeFailureMessage.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeFailureMessage.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeFailureMessage.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; + D652654C7F034E9B9F5AC06D /* ElectrodeBridgeHolder.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeHolder.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeHolder.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; + EA71ADF5317A4ACAA451A351 /* ElectrodeBridgeMessage.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeMessage.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeMessage.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; + 0A3ACCEA969445E997E55D3E /* ElectrodeBridgeProtocols.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeProtocols.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeProtocols.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; + 3AEB2F0C95F0440586937CEB /* ElectrodeBridgeRequest.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeRequest.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeRequest.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; + 2773572D6674480CAFBC0F7E /* ElectrodeBridgeTransaction.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeTransaction.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeTransaction.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; + 1FB3876EFD1643BF815BC302 /* ElectrodeBridgeTransceiver.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeTransceiver.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeTransceiver.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; + 7AA8D95C6B394CD3A8F2E24A /* ElectrodeBridgeTransceiver_Internal.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeTransceiver_Internal.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeTransceiver_Internal.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; + 57E9742441E84E3FB15AC584 /* ElectrodeEventDispatcher.h */ = {isa = PBXFileReference; name = "ElectrodeEventDispatcher.h"; path = "ElectrodeReactNativeBridge/ElectrodeEventDispatcher.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; + 07C12AD4CA0848A2B9B58D0D /* ElectrodeEventRegistrar.h */ = {isa = PBXFileReference; name = "ElectrodeEventRegistrar.h"; path = "ElectrodeReactNativeBridge/ElectrodeEventRegistrar.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; + 073AD54F5C1647F2B1237102 /* ElectrodeRequestDispatcher.h */ = {isa = PBXFileReference; name = "ElectrodeRequestDispatcher.h"; path = "ElectrodeReactNativeBridge/ElectrodeRequestDispatcher.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; + 27F10B7BBDEE42078F80E1D9 /* ElectrodeRequestRegistrar.h */ = {isa = PBXFileReference; name = "ElectrodeRequestRegistrar.h"; path = "ElectrodeReactNativeBridge/ElectrodeRequestRegistrar.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; + DF61757D5A7948A58D85003E /* ElectrodeReactNativeBridge.h */ = {isa = PBXFileReference; name = "ElectrodeReactNativeBridge.h"; path = "ElectrodeReactNativeBridge/ElectrodeReactNativeBridge.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; + D1B081FFFC11400E80100528 /* ElectrodeBridgeResponse.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeResponse.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeResponse.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; + 98A4557110BA44DD8328C3F8 /* ElectrodeLogger.h */ = {isa = PBXFileReference; name = "ElectrodeLogger.h"; path = "ElectrodeReactNativeBridge/ElectrodeLogger.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; + 5E14C767679F459285020E8E /* RequestHandlerConfig.swift */ = {isa = PBXFileReference; name = "RequestHandlerConfig.swift"; path = "APIImpls/RequestHandlerConfig.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; + E687FA8C89A44A678492C721 /* RequestHandlerProvider.swift */ = {isa = PBXFileReference; name = "RequestHandlerProvider.swift"; path = "APIImpls/RequestHandlerProvider.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; + AF1AF8051B4743218D8C77C4 /* MoviesApiController.swift */ = {isa = PBXFileReference; name = "MoviesApiController.swift"; path = "APIImpls/MoviesApiController.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; + E8753B21C5414EEBB3E6188C /* MoviesApiRequestHandlerDelegate.swift */ = {isa = PBXFileReference; name = "MoviesApiRequestHandlerDelegate.swift"; path = "APIImpls/MoviesApiRequestHandlerDelegate.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; + 82C0FFA93D804697A59CC289 /* MoviesApiRequestHandlerProvider.swift */ = {isa = PBXFileReference; name = "MoviesApiRequestHandlerProvider.swift"; path = "APIImpls/MoviesApiRequestHandlerProvider.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -363,19 +157,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 0D0EDFB7E07E417298201505 /* libReact.a in Frameworks */, - 976081A8511442F7A544D5BB /* libRCTActionSheet.a in Frameworks */, - 12BD05E15A594FAA9C17CF70 /* libRCTImage.a in Frameworks */, - B8F33F9F10DC4E4B8E0C1F7A /* libRCTAnimation.a in Frameworks */, - BD5B04F491D5407C8BE9278C /* libRCTText.a in Frameworks */, - B02BC367304F410FA9AD22A8 /* libRCTWebSocket.a in Frameworks */, - AF2A5E803187471783783378 /* libRCTLinking.a in Frameworks */, - 4F876CB81EC544969715A2F6 /* libRCTNetwork.a in Frameworks */, - 0FE0F4D4C6354150B4C1C177 /* libRCTSettings.a in Frameworks */, - 068854DA243F4E50B668C9F1 /* libRCTVibration.a in Frameworks */, - 243F74AA052A47C08836EFEA /* libRCTCameraRoll.a in Frameworks */, - 1C86FDC2EA9D4C73829BCDD4 /* libART.a in Frameworks */, - 8D3BBC040E82427AA638D04B /* JavaScriptCore.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -393,18 +174,6 @@ 226325CE1E80594F00CD0B10 /* ReactNative */ = { isa = PBXGroup; children = ( - E40D7EA4F9B644B293489EB1 /* React.xcodeproj */, - B41A4B7C9509432981753D25 /* RCTActionSheet.xcodeproj */, - E1EF13976B704422991F12CC /* RCTImage.xcodeproj */, - A9626891585341E8B39C05C6 /* RCTAnimation.xcodeproj */, - 85D211C1769B4A6CAD5F59D6 /* RCTText.xcodeproj */, - 7B68D0BEBF9C468DB226ABF4 /* RCTWebSocket.xcodeproj */, - 229E63151EE74BBFAF43F56C /* RCTLinking.xcodeproj */, - 430B354B658143D8A1B36F86 /* RCTNetwork.xcodeproj */, - BEAB005730BD4742A91B8635 /* RCTSettings.xcodeproj */, - 5D569B125E98407C8F3227D0 /* RCTVibration.xcodeproj */, - 175EC1F5DD304A7B96EE873E /* RCTCameraRoll.xcodeproj */, - 8BB62441BF1A47B59528A758 /* ART.xcodeproj */, ); name = ReactNative; sourceTree = ""; @@ -412,12 +181,12 @@ 22C096A91EA0893F00E1486A /* APIs */ = { isa = PBXGroup; children = ( - 479E94795AF5485A83FA590D /* BirthYear.swift */, - F302585E58D74D7881F1AC1F /* Movie.swift */, - 1581640D22924DAB9E7692F6 /* MoviesAPI.swift */, - 38BE88D436894CCF87927D1B /* MoviesRequests.swift */, - A2575DDE806E4066A84CC01A /* Person.swift */, - 75F3DF98C7084B159DC969C2 /* Synopsis.swift */, + 944D6905DEF9432EAFBE1088 /* BirthYear.swift */, + 069AF07F4C15426EBB208CDF /* Movie.swift */, + 45135B3E1CD44EDEA26030DF /* MoviesAPI.swift */, + 862FC49ADEB44AA9A9B31580 /* MoviesRequests.swift */, + F8D893BB9492468AB36CD1D8 /* Person.swift */, + 6DF2B28E04CE4B3A8F4F1E2D /* Synopsis.swift */, ); name = APIs; sourceTree = ""; @@ -425,45 +194,45 @@ 22FD4D1E1E96ECBB00FC81DB /* ElectrodeReactNativeBridge */ = { isa = PBXGroup; children = ( - DDA4AB5F06984F158F353F95 /* ElectrodeObject.swift */, - 434781CEE81A4BAE91003419 /* Bridgeable.swift */, - 1639F2179BB44BDB96033800 /* ElectrodeRequestHandlerProcessor.swift */, - E6BBD0CE31174C0BAC2E6FD0 /* ElectrodeRequestProcessor.swift */, - 3E6C378534B148A4BB7D36F3 /* ElectrodeUtilities.swift */, - 2481589CE41149C8BE9070D6 /* EventListenerProcessor.swift */, - DA90BD78E43C4CD2BFB7F29C /* EventProcessor.swift */, - 95257142C6E347B187C94F9B /* Processor.swift */, - 3D8892C615BA42C9BEE154A5 /* None.swift */, - 9A150487703D444B85B9F069 /* ElectrodeBridgeEvent.m */, - EE652A422D6947EA87246A80 /* ElectrodeBridgeFailureMessage.m */, - E5641C9A29074B788B161831 /* ElectrodeBridgeHolder.m */, - B022410458B342D6B8E4DDB3 /* ElectrodeBridgeMessage.m */, - 3910B09A94394EF09B45F772 /* ElectrodeBridgeProtocols.m */, - B57AAD3EEF9641BC89DF37D5 /* ElectrodeBridgeRequest.m */, - 5E14C0F3AA944D1C84C50555 /* ElectrodeBridgeResponse.m */, - 35744D7850064A82A6CA928A /* ElectrodeBridgeTransaction.m */, - 5265ABB517BB4ED8917848E4 /* ElectrodeBridgeTransceiver.m */, - AF046DCFAAAA4AFE92B9675B /* ElectrodeEventDispatcher.m */, - 067A507DAC7D467284AC6CD6 /* ElectrodeEventRegistrar.m */, - D44FC2F068574B0183D448A4 /* ElectrodeRequestDispatcher.m */, - 7CD3880B11E548749CD2AC18 /* ElectrodeRequestRegistrar.m */, - FB492722F52B4A9DB326DB48 /* ElectrodeLogger.m */, - 08C384E64ABA478B92E978C8 /* ElectrodeBridgeEvent.h */, - D4A5AAEE88AA485194492074 /* ElectrodeBridgeFailureMessage.h */, - 3053AFAA54F44410A3398616 /* ElectrodeBridgeHolder.h */, - 260CC219A5A84BEC9A8BFB58 /* ElectrodeBridgeMessage.h */, - 18E67634242446DA9E80E4D6 /* ElectrodeBridgeProtocols.h */, - 5A87D0E634EE4B439EE54097 /* ElectrodeBridgeRequest.h */, - 21BA2FC33700460C8FE4AAB1 /* ElectrodeBridgeTransaction.h */, - 8675B6AE2BE14BA886E62FEF /* ElectrodeBridgeTransceiver.h */, - 87398FDE548744B88ED38B4E /* ElectrodeBridgeTransceiver_Internal.h */, - 3576653D68AD4BFC8B26535E /* ElectrodeEventDispatcher.h */, - 560525506E8C4A09BE8ED41D /* ElectrodeEventRegistrar.h */, - 7DFD1E5E04404197BBFF50D3 /* ElectrodeRequestDispatcher.h */, - E4ABEC1264CE42EAA081E801 /* ElectrodeRequestRegistrar.h */, - E3132DD7E2834123B1F0FC65 /* ElectrodeReactNativeBridge.h */, - DA15255C0F574F90A343FBD0 /* ElectrodeBridgeResponse.h */, - A7D4C25C77DC43AC8428209B /* ElectrodeLogger.h */, + 2AC4EA46C87F423AAEF9D87C /* ElectrodeObject.swift */, + 25B10A65F4DC4FA9A38DA921 /* Bridgeable.swift */, + 6FCB049E1D0D47F3A6B7DC53 /* ElectrodeRequestHandlerProcessor.swift */, + F6694C73DC0A4163AE8DDCEA /* ElectrodeRequestProcessor.swift */, + 6E4BCB3D87934E9081B3B316 /* ElectrodeUtilities.swift */, + 12233E8AC51444C1A04274E9 /* EventListenerProcessor.swift */, + 24CD88FE1DD84D19A0F2BFBE /* EventProcessor.swift */, + 0D4A97FA5EAF428E872D7E27 /* Processor.swift */, + 9F07B574484648A788716AD0 /* None.swift */, + 89A263966AF24AEAB2FF260D /* ElectrodeBridgeEvent.m */, + 055237AD2AB1450384535E55 /* ElectrodeBridgeFailureMessage.m */, + D6E9A77255764B81AE95077F /* ElectrodeBridgeHolder.m */, + CF8BE07D79F2414095F53F58 /* ElectrodeBridgeMessage.m */, + B91C98F31AC745DDB840C97E /* ElectrodeBridgeProtocols.m */, + 75CFB55F14EF4752B7D09EF0 /* ElectrodeBridgeRequest.m */, + E6B220974EDA4B75AE3A3E5D /* ElectrodeBridgeResponse.m */, + B44D5C4D16BA40FF9F982E25 /* ElectrodeBridgeTransaction.m */, + 93D192E97813445C8B4133DE /* ElectrodeBridgeTransceiver.m */, + 95E64C599C8B4F269A522122 /* ElectrodeEventDispatcher.m */, + 3795AA9A399F4A88A85D48F8 /* ElectrodeEventRegistrar.m */, + 6DCFECC8BBD241E99B2827B9 /* ElectrodeRequestDispatcher.m */, + 1BDD1E26C67D44A0B7C26F85 /* ElectrodeRequestRegistrar.m */, + 3FB0FB7FF2F849B99BC33518 /* ElectrodeLogger.m */, + 78826B59C26E455D81DE4595 /* ElectrodeBridgeEvent.h */, + CC283E8BDF7E4C78B3D316D1 /* ElectrodeBridgeFailureMessage.h */, + D652654C7F034E9B9F5AC06D /* ElectrodeBridgeHolder.h */, + EA71ADF5317A4ACAA451A351 /* ElectrodeBridgeMessage.h */, + 0A3ACCEA969445E997E55D3E /* ElectrodeBridgeProtocols.h */, + 3AEB2F0C95F0440586937CEB /* ElectrodeBridgeRequest.h */, + 2773572D6674480CAFBC0F7E /* ElectrodeBridgeTransaction.h */, + 1FB3876EFD1643BF815BC302 /* ElectrodeBridgeTransceiver.h */, + 7AA8D95C6B394CD3A8F2E24A /* ElectrodeBridgeTransceiver_Internal.h */, + 57E9742441E84E3FB15AC584 /* ElectrodeEventDispatcher.h */, + 07C12AD4CA0848A2B9B58D0D /* ElectrodeEventRegistrar.h */, + 073AD54F5C1647F2B1237102 /* ElectrodeRequestDispatcher.h */, + 27F10B7BBDEE42078F80E1D9 /* ElectrodeRequestRegistrar.h */, + DF61757D5A7948A58D85003E /* ElectrodeReactNativeBridge.h */, + D1B081FFFC11400E80100528 /* ElectrodeBridgeResponse.h */, + 98A4557110BA44DD8328C3F8 /* ElectrodeLogger.h */, ); name = ElectrodeReactNativeBridge; sourceTree = ""; @@ -530,7 +299,6 @@ 48500AA71E2FFA14009B6610 /* Frameworks */ = { isa = PBXGroup; children = ( - 235585221FE844E19BBCFCA5 /* JavaScriptCore.framework */, ); name = Frameworks; sourceTree = ""; @@ -538,11 +306,11 @@ 7F1C6B771FAD343A00F68360 /* APIImpls */ = { isa = PBXGroup; children = ( - 8508AB1619724A679C8E2CA4 /* RequestHandlerConfig.swift */, - 10428135039E49889B0C8A3D /* RequestHandlerProvider.swift */, - 3E43388A6D2B4DAE813C51D0 /* MoviesApiController.swift */, - 0412FD7A7F7445BB94EED00C /* MoviesApiRequestHandlerDelegate.swift */, - AF5EDE3F102D43F1BB783B36 /* MoviesApiRequestHandlerProvider.swift */, + 5E14C767679F459285020E8E /* RequestHandlerConfig.swift */, + E687FA8C89A44A678492C721 /* RequestHandlerProvider.swift */, + AF1AF8051B4743218D8C77C4 /* MoviesApiController.swift */, + E8753B21C5414EEBB3E6188C /* MoviesApiRequestHandlerDelegate.swift */, + 82C0FFA93D804697A59CC289 /* MoviesApiRequestHandlerProvider.swift */, ); name = APIImpls; sourceTree = ""; @@ -554,114 +322,6 @@ path = MiniApp; sourceTree = ""; }; - 88567EEFAD994FFBBE12D9A5 /* Products */ = { - isa = PBXGroup; - children = ( - 1B35249349EB421181829255 /* libReact.a */, - ); - name = Products; - path = undefined; - sourceTree = ""; - }; - F8DE6857791944D49C341D3D /* Products */ = { - isa = PBXGroup; - children = ( - B074DBB8E0BC4A06B168BB82 /* libRCTActionSheet.a */, - ); - name = Products; - path = undefined; - sourceTree = ""; - }; - E7D19F36E6FA4A69BA15D167 /* Products */ = { - isa = PBXGroup; - children = ( - A150DC2C6E1C4E818FBB29B0 /* libRCTImage.a */, - ); - name = Products; - path = undefined; - sourceTree = ""; - }; - 1893C30BFE654E699DC43A78 /* Products */ = { - isa = PBXGroup; - children = ( - 1E6F1ADBF2E44E65B7FAB509 /* libRCTAnimation.a */, - ); - name = Products; - path = undefined; - sourceTree = ""; - }; - 0AA2E40738814AD98A9156A8 /* Products */ = { - isa = PBXGroup; - children = ( - 0A510A0666C84B2FB0E92256 /* libRCTText.a */, - ); - name = Products; - path = undefined; - sourceTree = ""; - }; - 335D21533A7D4137955CD9ED /* Products */ = { - isa = PBXGroup; - children = ( - 3785239C11DA44C4948998CA /* libRCTWebSocket.a */, - ); - name = Products; - path = undefined; - sourceTree = ""; - }; - 176E970801424752B628C23B /* Products */ = { - isa = PBXGroup; - children = ( - 25DB8AA621AF4E0FB34B33C4 /* libRCTLinking.a */, - ); - name = Products; - path = undefined; - sourceTree = ""; - }; - 4A8CE518859C4FC2B3F8DFF3 /* Products */ = { - isa = PBXGroup; - children = ( - 3392A9765A324DCFAE6B8C19 /* libRCTNetwork.a */, - ); - name = Products; - path = undefined; - sourceTree = ""; - }; - 918E28163D1E4C95B0D3E3A5 /* Products */ = { - isa = PBXGroup; - children = ( - 0197D2AB4F6B44FCB994B84C /* libRCTSettings.a */, - ); - name = Products; - path = undefined; - sourceTree = ""; - }; - B6E875CB8FCD4739AE9C7246 /* Products */ = { - isa = PBXGroup; - children = ( - FA6552913474420EB240EA23 /* libRCTVibration.a */, - ); - name = Products; - path = undefined; - sourceTree = ""; - }; - BF2888B88CA74949AD2A91FF /* Products */ = { - isa = PBXGroup; - children = ( - 2D6AAE4784F24EF088AF4038 /* libRCTCameraRoll.a */, - ); - name = Products; - path = undefined; - sourceTree = ""; - }; - 3C46B51B293E48F6B62C14DC /* Products */ = { - isa = PBXGroup; - children = ( - 92E03E5F99D04F30B3560A7E /* libART.a */, - ); - name = Products; - path = undefined; - sourceTree = ""; - }; /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ @@ -674,28 +334,28 @@ 968333D71E54E3470031C565 /* ElectrodeBridgeDelegate.h in Headers */, 30F8CDEE1E67946E00413247 /* ElectrodeReactNative_Internal.h in Headers */, 48500A981E2FF55B009B6610 /* ElectrodeReactNative.h in Headers */, - D1ADEB40FFD4479AA3DEDC0E /* BirthYear.swift in Headers */, - 84A977C446ED4C4DA8724427 /* Movie.swift in Headers */, - 24F6302D0DE64E3791BD9F19 /* MoviesAPI.swift in Headers */, - DD39FC1D1D3F436583588BE3 /* MoviesRequests.swift in Headers */, - F5055B3671B04175912E3AE0 /* Person.swift in Headers */, - AC9220D0497240B591ED78A8 /* Synopsis.swift in Headers */, - F93DD0F0988243C28BACD4B1 /* ElectrodeBridgeEvent.h in Headers */, - C966ED6AB4C249FD84C4FB66 /* ElectrodeBridgeFailureMessage.h in Headers */, - 734A55E0084F48FA85621E20 /* ElectrodeBridgeHolder.h in Headers */, - F1EF361B743E4A69879529CD /* ElectrodeBridgeMessage.h in Headers */, - 81ED7ED7D33C49AAB401D402 /* ElectrodeBridgeProtocols.h in Headers */, - 2A560FF0A00F40F9A963481D /* ElectrodeBridgeRequest.h in Headers */, - C6852F21BA984F0B9C0A5613 /* ElectrodeBridgeTransaction.h in Headers */, - 601B8972F19C4550AF7C3848 /* ElectrodeBridgeTransceiver.h in Headers */, - 31087F372F3D4B6A89246C40 /* ElectrodeBridgeTransceiver_Internal.h in Headers */, - E664CC0BB4D84765B34AACF5 /* ElectrodeEventDispatcher.h in Headers */, - D46EAADD23B74FCC9447A244 /* ElectrodeEventRegistrar.h in Headers */, - F109DC0C68FA4C358DA5E91C /* ElectrodeRequestDispatcher.h in Headers */, - 550131319AD6407480E047FD /* ElectrodeRequestRegistrar.h in Headers */, - 7530A52CA73C4830B1BF7534 /* ElectrodeReactNativeBridge.h in Headers */, - 403B2F48F5FD458BB3E8B90A /* ElectrodeBridgeResponse.h in Headers */, - 1AD4FCAA13A044B389DFF499 /* ElectrodeLogger.h in Headers */, + 79559C8426FB483486385852 /* BirthYear.swift in Headers */, + 0A4F857366794B6CAC0A5045 /* Movie.swift in Headers */, + 0B6D21C1FAFA4E2AA9C6FC81 /* MoviesAPI.swift in Headers */, + DFF86D3FF31640C5A6E751FC /* MoviesRequests.swift in Headers */, + 51C45DC018AE4368AD76CF5C /* Person.swift in Headers */, + DE7232F881A24F0B9E904FB3 /* Synopsis.swift in Headers */, + 672863DE64894C8793DBBD5F /* ElectrodeBridgeEvent.h in Headers */, + 9A2DA379EC724A29BB7351D5 /* ElectrodeBridgeFailureMessage.h in Headers */, + D3D0B6878CF140EF8CA66F02 /* ElectrodeBridgeHolder.h in Headers */, + D3B9721CEFF04B3F8D4075DA /* ElectrodeBridgeMessage.h in Headers */, + E961295F6E7C4C3EB1615769 /* ElectrodeBridgeProtocols.h in Headers */, + CCFDB20441374BFBABD0F3FF /* ElectrodeBridgeRequest.h in Headers */, + 4D303C391DAF41FB936771BE /* ElectrodeBridgeTransaction.h in Headers */, + CBB2E1D53E3C42FBA31B22DC /* ElectrodeBridgeTransceiver.h in Headers */, + 71CD1A66CD634E6385C5E16E /* ElectrodeBridgeTransceiver_Internal.h in Headers */, + 1DFFD7343E4C4776A1518273 /* ElectrodeEventDispatcher.h in Headers */, + 51D41F2CFD2E4E97BDB1320A /* ElectrodeEventRegistrar.h in Headers */, + 67FECE8BAE434DEBB2EA9295 /* ElectrodeRequestDispatcher.h in Headers */, + 155B8D04A35C4E9EAB0569FA /* ElectrodeRequestRegistrar.h in Headers */, + 51F2CD2677CB49239ED9AE20 /* ElectrodeReactNativeBridge.h in Headers */, + 91303628F2204C4DBC97934D /* ElectrodeBridgeResponse.h in Headers */, + 1B366A0FB34C4D3B8F2618A6 /* ElectrodeLogger.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -714,18 +374,6 @@ buildRules = ( ); dependencies = ( - 5A5EBB25C98047039D25DD2A /* PBXTargetDependency */, - DE292F5B90294207AABE69AD /* PBXTargetDependency */, - 3F7C7CE0E4BA4228B7BCF85B /* PBXTargetDependency */, - ED88F84E57A74CA99670C27D /* PBXTargetDependency */, - 773DECE2A91C4CD89990818C /* PBXTargetDependency */, - 717204A2337A48CDBC335E27 /* PBXTargetDependency */, - 95B4077FF9A64F0A8BCD7D8D /* PBXTargetDependency */, - 31E2BD99865E4120BD32F156 /* PBXTargetDependency */, - 7AE5E3DB327D4F67A7C0D495 /* PBXTargetDependency */, - 0E7CE239BFB2474981A1195A /* PBXTargetDependency */, - 5017C21F1E144118A82C7B46 /* PBXTargetDependency */, - 752B014A78F54E6DB0B32665 /* PBXTargetDependency */, ); name = ElectrodeApiImpl; productName = ElectrodeApiImpl; @@ -786,144 +434,10 @@ 485009E21E2FF23B009B6610 /* ElectrodeApiImpl */, 485009EB1E2FF23C009B6610 /* ElectrodeApiImplTests */, ); - projectReferences = ( - { - ProjectRef = E40D7EA4F9B644B293489EB1 /* React.xcodeproj */; - ProductGroup = 88567EEFAD994FFBBE12D9A5 /* Products */; - }, - { - ProjectRef = B41A4B7C9509432981753D25 /* RCTActionSheet.xcodeproj */; - ProductGroup = F8DE6857791944D49C341D3D /* Products */; - }, - { - ProjectRef = E1EF13976B704422991F12CC /* RCTImage.xcodeproj */; - ProductGroup = E7D19F36E6FA4A69BA15D167 /* Products */; - }, - { - ProjectRef = A9626891585341E8B39C05C6 /* RCTAnimation.xcodeproj */; - ProductGroup = 1893C30BFE654E699DC43A78 /* Products */; - }, - { - ProjectRef = 85D211C1769B4A6CAD5F59D6 /* RCTText.xcodeproj */; - ProductGroup = 0AA2E40738814AD98A9156A8 /* Products */; - }, - { - ProjectRef = 7B68D0BEBF9C468DB226ABF4 /* RCTWebSocket.xcodeproj */; - ProductGroup = 335D21533A7D4137955CD9ED /* Products */; - }, - { - ProjectRef = 229E63151EE74BBFAF43F56C /* RCTLinking.xcodeproj */; - ProductGroup = 176E970801424752B628C23B /* Products */; - }, - { - ProjectRef = 430B354B658143D8A1B36F86 /* RCTNetwork.xcodeproj */; - ProductGroup = 4A8CE518859C4FC2B3F8DFF3 /* Products */; - }, - { - ProjectRef = BEAB005730BD4742A91B8635 /* RCTSettings.xcodeproj */; - ProductGroup = 918E28163D1E4C95B0D3E3A5 /* Products */; - }, - { - ProjectRef = 5D569B125E98407C8F3227D0 /* RCTVibration.xcodeproj */; - ProductGroup = B6E875CB8FCD4739AE9C7246 /* Products */; - }, - { - ProjectRef = 175EC1F5DD304A7B96EE873E /* RCTCameraRoll.xcodeproj */; - ProductGroup = BF2888B88CA74949AD2A91FF /* Products */; - }, - { - ProjectRef = 8BB62441BF1A47B59528A758 /* ART.xcodeproj */; - ProductGroup = 3C46B51B293E48F6B62C14DC /* Products */; - }, - ); }; /* End PBXProject section */ /* Begin PBXReferenceProxy section */ - 1B35249349EB421181829255 /* libReact.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libReact.a; - remoteRef = 5A679227D32447BC9B59FD36 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - B074DBB8E0BC4A06B168BB82 /* libRCTActionSheet.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTActionSheet.a; - remoteRef = 567002DE40B84A23A3675061 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - A150DC2C6E1C4E818FBB29B0 /* libRCTImage.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTImage.a; - remoteRef = 7E3BCC932D4E472F8D0D74D0 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 1E6F1ADBF2E44E65B7FAB509 /* libRCTAnimation.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTAnimation.a; - remoteRef = AF032593E75D4357B1DA2038 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 0A510A0666C84B2FB0E92256 /* libRCTText.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTText.a; - remoteRef = D4DE265FA1D6498EAD92FD03 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 3785239C11DA44C4948998CA /* libRCTWebSocket.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTWebSocket.a; - remoteRef = 55D4D6B7F2AF43C895173006 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 25DB8AA621AF4E0FB34B33C4 /* libRCTLinking.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTLinking.a; - remoteRef = 556E6DBEEE4248808496E096 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 3392A9765A324DCFAE6B8C19 /* libRCTNetwork.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTNetwork.a; - remoteRef = B57A3C6C83ED4AE78997189D /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 0197D2AB4F6B44FCB994B84C /* libRCTSettings.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTSettings.a; - remoteRef = 2DBF3B484FDE4427AB792C93 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - FA6552913474420EB240EA23 /* libRCTVibration.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTVibration.a; - remoteRef = FCE3BEA61B5B40C899A97E25 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 2D6AAE4784F24EF088AF4038 /* libRCTCameraRoll.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTCameraRoll.a; - remoteRef = 5934063E51414E8DB9F89280 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 92E03E5F99D04F30B3560A7E /* libART.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libART.a; - remoteRef = 76D72B9ABB5C4F9BBBE58411 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; /* End PBXReferenceProxy section */ /* Begin PBXResourcesBuildPhase section */ @@ -950,40 +464,40 @@ files = ( 48500A991E2FF55B009B6610 /* ElectrodeReactNative.m in Sources */, 968333D81E54E3470031C565 /* ElectrodeBridgeDelegate.m in Sources */, - 90E9944B697C40B19F5DC12C /* BirthYear.swift in Sources */, - 2DFC94DC51164A869BC6A451 /* Movie.swift in Sources */, - 1306DA81C3DC46D38EF87C17 /* MoviesAPI.swift in Sources */, - 0242ED679E6E44E3A9A8DD6E /* MoviesRequests.swift in Sources */, - FCE2DC027D8C40479A0D17AC /* Person.swift in Sources */, - 2EF9ADD0DA7C467880E5100F /* Synopsis.swift in Sources */, - AF4408696279401BAB28E24A /* ElectrodeObject.swift in Sources */, - 6420A7A803864C88ACEFB21E /* Bridgeable.swift in Sources */, - D5F3A07D502E4E76A24FFC2A /* ElectrodeRequestHandlerProcessor.swift in Sources */, - EFC4F7468D0646DEAEEC8662 /* ElectrodeRequestProcessor.swift in Sources */, - 14DFCCAD2085437E921FF8B5 /* ElectrodeUtilities.swift in Sources */, - E3B9E59C8529415BB739434E /* EventListenerProcessor.swift in Sources */, - 1052D39FF87C49C7931946CC /* EventProcessor.swift in Sources */, - F8AC88850C97480C87498B3F /* Processor.swift in Sources */, - 93442A00247247EAAD46D1C2 /* None.swift in Sources */, - B2EE92D064E44B8ABE88F7CB /* ElectrodeBridgeEvent.m in Sources */, - 35138EAABBAB44BBAA1A9367 /* ElectrodeBridgeFailureMessage.m in Sources */, - D6DBE2B0A6C949179ACE6520 /* ElectrodeBridgeHolder.m in Sources */, - CEF2B9274376423587736A47 /* ElectrodeBridgeMessage.m in Sources */, - 4199AFA3913C4F78B29C66F2 /* ElectrodeBridgeProtocols.m in Sources */, - 0942FCFDDE2D47B6BFCF6AE6 /* ElectrodeBridgeRequest.m in Sources */, - C1D48FE36E444B5ABA50B2FE /* ElectrodeBridgeResponse.m in Sources */, - AE9814F0019A4A27A57935E5 /* ElectrodeBridgeTransaction.m in Sources */, - 64E31F820F314759A673EB48 /* ElectrodeBridgeTransceiver.m in Sources */, - 0EB28BF6B15340EEB1C0D388 /* ElectrodeEventDispatcher.m in Sources */, - 36D4802889D14402AF748D54 /* ElectrodeEventRegistrar.m in Sources */, - A69FB9E3C8A8406F9A9A2566 /* ElectrodeRequestDispatcher.m in Sources */, - 89BAAD3B1BD24AF599F181C2 /* ElectrodeRequestRegistrar.m in Sources */, - 91F73716344B4AFD8C0BB0DC /* ElectrodeLogger.m in Sources */, - 8E21061F08B241549821753E /* RequestHandlerConfig.swift in Sources */, - 914A9385338B4157A3A0F03F /* RequestHandlerProvider.swift in Sources */, - 43B1ABF577514D429DB766C7 /* MoviesApiController.swift in Sources */, - 620DCB65B3FE4572BA2D1A97 /* MoviesApiRequestHandlerDelegate.swift in Sources */, - 5D319E5FB703435A86113F10 /* MoviesApiRequestHandlerProvider.swift in Sources */, + C9C37813D51C46E291387536 /* BirthYear.swift in Sources */, + 14C58B9B1A8C4488BC273A5E /* Movie.swift in Sources */, + 55A29F6A001F4B58A0C4757C /* MoviesAPI.swift in Sources */, + 8EE0D4C862384129842F7466 /* MoviesRequests.swift in Sources */, + 34A6F25A359A4160BBDD343E /* Person.swift in Sources */, + 1931414A2C834C9B92AD3FDD /* Synopsis.swift in Sources */, + 3EC30CA024524CE89DB6ADF6 /* ElectrodeObject.swift in Sources */, + C463EF30D1254B7BB9F08F58 /* Bridgeable.swift in Sources */, + 2FCFA5ED108B40F19C87F54F /* ElectrodeRequestHandlerProcessor.swift in Sources */, + E4E05656DD1E489D9E2F1AEC /* ElectrodeRequestProcessor.swift in Sources */, + 8EB4D4F981AF4357A55EA13F /* ElectrodeUtilities.swift in Sources */, + 3C7868455B5944D387C214B3 /* EventListenerProcessor.swift in Sources */, + C047C551BD414EE9BFA494D2 /* EventProcessor.swift in Sources */, + 12340244CD6A4C8B83A7B1B2 /* Processor.swift in Sources */, + 0677D8FBCB5D4A2F98A47DE3 /* None.swift in Sources */, + B58A381CB69D4220990626A9 /* ElectrodeBridgeEvent.m in Sources */, + 42051AEF7D8C45C6AC91E68E /* ElectrodeBridgeFailureMessage.m in Sources */, + 86DE46D32F274A3CBDAD6B3C /* ElectrodeBridgeHolder.m in Sources */, + 932007DEA27C4638ACF692C4 /* ElectrodeBridgeMessage.m in Sources */, + 4ED7989E60194CFE8A7E9F2A /* ElectrodeBridgeProtocols.m in Sources */, + 728996E5968747E9B7F8640D /* ElectrodeBridgeRequest.m in Sources */, + C4EB2E9AFC014F37AB177E33 /* ElectrodeBridgeResponse.m in Sources */, + 56DC7BA949CD449984F3F475 /* ElectrodeBridgeTransaction.m in Sources */, + 86BD7CA7DBC54CDFABFA395E /* ElectrodeBridgeTransceiver.m in Sources */, + FA80C94ABC6249ADAB400E7D /* ElectrodeEventDispatcher.m in Sources */, + 2C613F3FCC7141CF86F92305 /* ElectrodeEventRegistrar.m in Sources */, + 3CC83C6431874200A54900E2 /* ElectrodeRequestDispatcher.m in Sources */, + F12428464157447EA5D50786 /* ElectrodeRequestRegistrar.m in Sources */, + 304D767959ED4AD29D7ECECD /* ElectrodeLogger.m in Sources */, + 122DD6F5C3F64573A93CA985 /* RequestHandlerConfig.swift in Sources */, + 6F01E405988E40D694965937 /* RequestHandlerProvider.swift in Sources */, + B75928BE9DD44B38B481CED0 /* MoviesApiController.swift in Sources */, + 51F8D8A4B89F424CA0268C3C /* MoviesApiRequestHandlerDelegate.swift in Sources */, + 4BB7099203464A6E870A4F3F /* MoviesApiRequestHandlerProvider.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1005,66 +519,6 @@ target = 485009E21E2FF23B009B6610 /* ElectrodeApiImpl */; targetProxy = 485009EE1E2FF23C009B6610 /* PBXContainerItemProxy */; }; - 5A5EBB25C98047039D25DD2A /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = React; - targetProxy = 40C38CC6289A44BB99E68FDA /* PBXContainerItemProxy */; - }; - DE292F5B90294207AABE69AD /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = RCTActionSheet; - targetProxy = D0A9F9DD05B34159A7801FB0 /* PBXContainerItemProxy */; - }; - 3F7C7CE0E4BA4228B7BCF85B /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = RCTImage; - targetProxy = 5E1841DED83E4222976DA81D /* PBXContainerItemProxy */; - }; - ED88F84E57A74CA99670C27D /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = RCTAnimation; - targetProxy = 907B608A92CD4582BC40D028 /* PBXContainerItemProxy */; - }; - 773DECE2A91C4CD89990818C /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = RCTText; - targetProxy = 6166C77FECBD4B26B99401BB /* PBXContainerItemProxy */; - }; - 717204A2337A48CDBC335E27 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = RCTWebSocket; - targetProxy = 29413E16CFF9460EBEF4B096 /* PBXContainerItemProxy */; - }; - 95B4077FF9A64F0A8BCD7D8D /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = RCTLinking; - targetProxy = D35775F1AD024F498218F64A /* PBXContainerItemProxy */; - }; - 31E2BD99865E4120BD32F156 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = RCTNetwork; - targetProxy = 5000B154381C4717805CBFC9 /* PBXContainerItemProxy */; - }; - 7AE5E3DB327D4F67A7C0D495 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = RCTSettings; - targetProxy = F985AE62DB404059A5B4EB61 /* PBXContainerItemProxy */; - }; - 0E7CE239BFB2474981A1195A /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = RCTVibration; - targetProxy = DC57CFB28CA540D78FDE1921 /* PBXContainerItemProxy */; - }; - 5017C21F1E144118A82C7B46 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = RCTCameraRoll; - targetProxy = 609A439DADDE4003B0576B61 /* PBXContainerItemProxy */; - }; - 752B014A78F54E6DB0B32665 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = ART; - targetProxy = 1C3FC9CD3FAD4523B58368DD /* PBXContainerItemProxy */; - }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ diff --git a/system-tests/fixtures/api-impl-native/ern-movie-api-impl/ios/Podfile b/system-tests/fixtures/api-impl-native/ern-movie-api-impl/ios/Podfile new file mode 100644 index 000000000..7fb64ab6c --- /dev/null +++ b/system-tests/fixtures/api-impl-native/ern-movie-api-impl/ios/Podfile @@ -0,0 +1,69 @@ +platform :ios, '9.0' +require_relative './node_modules/@react-native-community/cli-platform-ios/native_modules' + +def add_flipper_pods! + version = '~> 0.33.1' + pod 'FlipperKit', version, :configuration => 'Debug' + pod 'FlipperKit/FlipperKitLayoutPlugin', version, :configuration => 'Debug' + pod 'FlipperKit/SKIOSNetworkPlugin', version, :configuration => 'Debug' + pod 'FlipperKit/FlipperKitUserDefaultsPlugin', version, :configuration => 'Debug' + pod 'FlipperKit/FlipperKitReactPlugin', version, :configuration => 'Debug' +end + +# Post Install processing for Flipper +def flipper_post_install(installer) + installer.pods_project.targets.each do |target| + if target.name == 'YogaKit' + target.build_configurations.each do |config| + config.build_settings['SWIFT_VERSION'] = '4.1' + end + end + end +end + +target 'ElectrodeContainer' do + # Pods for ElectrodeContainer + pod 'FBLazyVector', :path => "node_modules/react-native/Libraries/FBLazyVector" + pod 'FBReactNativeSpec', :path => "node_modules/react-native/Libraries/FBReactNativeSpec" + pod 'RCTRequired', :path => "node_modules/react-native/Libraries/RCTRequired" + pod 'RCTTypeSafety', :path => "node_modules/react-native/Libraries/TypeSafety" + pod 'React', :path => 'node_modules/react-native/' + pod 'React-Core', :path => 'node_modules/react-native/' + pod 'React-CoreModules', :path => 'node_modules/react-native/React/CoreModules' + pod 'React-Core/DevSupport', :path => 'node_modules/react-native/' + pod 'React-RCTActionSheet', :path => 'node_modules/react-native/Libraries/ActionSheetIOS' + pod 'React-RCTAnimation', :path => 'node_modules/react-native/Libraries/NativeAnimation' + pod 'React-RCTBlob', :path => 'node_modules/react-native/Libraries/Blob' + pod 'React-RCTImage', :path => 'node_modules/react-native/Libraries/Image' + pod 'React-RCTLinking', :path => 'node_modules/react-native/Libraries/LinkingIOS' + pod 'React-RCTNetwork', :path => 'node_modules/react-native/Libraries/Network' + pod 'React-RCTSettings', :path => 'node_modules/react-native/Libraries/Settings' + pod 'React-RCTText', :path => 'node_modules/react-native/Libraries/Text' + pod 'React-RCTVibration', :path => 'node_modules/react-native/Libraries/Vibration' + pod 'React-Core/RCTWebSocket', :path => 'node_modules/react-native/' + + pod 'React-cxxreact', :path => 'node_modules/react-native/ReactCommon/cxxreact' + pod 'React-jsi', :path => 'node_modules/react-native/ReactCommon/jsi' + pod 'React-jsiexecutor', :path => 'node_modules/react-native/ReactCommon/jsiexecutor' + pod 'React-jsinspector', :path => 'node_modules/react-native/ReactCommon/jsinspector' + pod 'ReactCommon/callinvoker', :path => "node_modules/react-native/ReactCommon" + pod 'ReactCommon/turbomodule/core', :path => "node_modules/react-native/ReactCommon" + pod 'Yoga', :path => 'node_modules/react-native/ReactCommon/yoga', :modular_headers => true + + pod 'DoubleConversion', :podspec => 'node_modules/react-native/third-party-podspecs/DoubleConversion.podspec' + pod 'glog', :podspec => 'node_modules/react-native/third-party-podspecs/glog.podspec' + pod 'Folly', :podspec => 'node_modules/react-native/third-party-podspecs/Folly.podspec' + + + + use_native_modules! + + # Enables Flipper. + # + # Note that if you have use_frameworks! enabled, Flipper will not work and + # you should disable these next few lines. + add_flipper_pods! + post_install do |installer| + flipper_post_install(installer) + end +end diff --git a/system-tests/fixtures/api-impl-native/ern-movie-api-impl/package.json b/system-tests/fixtures/api-impl-native/ern-movie-api-impl/package.json index 0e1d86ea3..e7f672429 100644 --- a/system-tests/fixtures/api-impl-native/ern-movie-api-impl/package.json +++ b/system-tests/fixtures/api-impl-native/ern-movie-api-impl/package.json @@ -4,7 +4,7 @@ "main": "index.js", "license": "MIT", "devDependencies": { - "react-native": "0.60.6" + "react-native": "0.62.2" }, "dependencies": { "react-native-ernmovie-api": "0.0.11" @@ -37,7 +37,8 @@ "path": "APIImpls" } ] - } + }, + "requiresManualLinking": true } } }, diff --git a/system-tests/fixtures/constants.js b/system-tests/fixtures/constants.js index 3fa01322d..dcd822f84 100644 --- a/system-tests/fixtures/constants.js +++ b/system-tests/fixtures/constants.js @@ -17,9 +17,9 @@ const baseConstants = { systemTestNativeApplicationVersion1: '1.0.0', systemTestNativeApplicationVersion2: '2.0.0', movieListMiniAppPgkName: 'movielistminiapp', - movieListMiniAppPkgVersion: '0.0.34', + movieListMiniAppPkgVersion: '0.0.36', movieDetailsMiniAppPkgName: 'moviedetailsminiapp', - movieDetailsMiniAppPkgVersion: '0.0.30', + movieDetailsMiniAppPkgVersion: '0.0.32', movieApiImplJsPkgName: 'react-native-ernmovie-api-impl-js', movieApiImplJsPkgVersion: '0.0.2', movieApiImplNativePkgName: 'react-native-ernmovie-api-impl', diff --git a/system-tests/fixtures/ios-container/Config/ElectrodeContainer-Debug.xcconfig b/system-tests/fixtures/ios-container/Config/ElectrodeContainer-Debug.xcconfig index 6a743e5e0..085b39e6c 100644 --- a/system-tests/fixtures/ios-container/Config/ElectrodeContainer-Debug.xcconfig +++ b/system-tests/fixtures/ios-container/Config/ElectrodeContainer-Debug.xcconfig @@ -5,6 +5,9 @@ // https://github.com/dempseyatgithub/BuildSettingExtractor // +#include "Pods/Target Support Files/Pods-ElectrodeContainer/Pods-ElectrodeContainer.debug.xcconfig" + + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES = YES CLANG_ENABLE_MODULES = YES @@ -15,12 +18,10 @@ DYLIB_COMPATIBILITY_VERSION = 1 DYLIB_CURRENT_VERSION = 1 DYLIB_INSTALL_NAME_BASE = @rpath FRAMEWORK_SEARCH_PATHS = $(inherited) $(SRCROOT)/ElectrodeContainer/Frameworks -HEADER_SEARCH_PATHS = INFOPLIST_FILE = ElectrodeContainer/Info.plist INSTALL_PATH = $(LOCAL_LIBRARY_DIR)/Frameworks IPHONEOS_DEPLOYMENT_TARGET = 10.0 LD_RUNPATH_SEARCH_PATHS = $(inherited) @executable_path/Frameworks @loader_path/Frameworks -OTHER_LDFLAGS = -ObjC -lc++ -lz PRODUCT_BUNDLE_IDENTIFIER = com.walmartlabs.ern.ElectrodeContainer PRODUCT_NAME = $(TARGET_NAME) SKIP_INSTALL = YES diff --git a/system-tests/fixtures/ios-container/Config/ElectrodeContainer-QADeployment.xcconfig b/system-tests/fixtures/ios-container/Config/ElectrodeContainer-QADeployment.xcconfig index cbb0a36df..8192faed2 100644 --- a/system-tests/fixtures/ios-container/Config/ElectrodeContainer-QADeployment.xcconfig +++ b/system-tests/fixtures/ios-container/Config/ElectrodeContainer-QADeployment.xcconfig @@ -5,6 +5,9 @@ // https://github.com/dempseyatgithub/BuildSettingExtractor // +#include "Pods/Target Support Files/Pods-ElectrodeContainer/Pods-ElectrodeContainer.qadeployment.xcconfig" + + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES = YES CLANG_ENABLE_MODULES = YES @@ -17,12 +20,10 @@ DYLIB_INSTALL_NAME_BASE = @rpath ENABLE_ON_DEMAND_RESOURCES = NO ENABLE_TESTABILITY = YES FRAMEWORK_SEARCH_PATHS = $(inherited) $(SRCROOT)/ElectrodeContainer/Frameworks -HEADER_SEARCH_PATHS = INFOPLIST_FILE = ElectrodeContainer/Info.plist INSTALL_PATH = $(LOCAL_LIBRARY_DIR)/Frameworks LD_RUNPATH_SEARCH_PATHS = $(inherited) @executable_path/Frameworks @loader_path/Frameworks ONLY_ACTIVE_ARCH = NO -OTHER_LDFLAGS = -ObjC -lc++ -lz PRODUCT_BUNDLE_IDENTIFIER = com.walmartlabs.ern.ElectrodeContainer PRODUCT_NAME = $(TARGET_NAME) SKIP_INSTALL = YES diff --git a/system-tests/fixtures/ios-container/Config/ElectrodeContainer-Release.xcconfig b/system-tests/fixtures/ios-container/Config/ElectrodeContainer-Release.xcconfig index dc3d5c4f5..98c9fcbc9 100644 --- a/system-tests/fixtures/ios-container/Config/ElectrodeContainer-Release.xcconfig +++ b/system-tests/fixtures/ios-container/Config/ElectrodeContainer-Release.xcconfig @@ -5,6 +5,9 @@ // https://github.com/dempseyatgithub/BuildSettingExtractor // +#include "Pods/Target Support Files/Pods-ElectrodeContainer/Pods-ElectrodeContainer.release.xcconfig" + + CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES = YES CODE_SIGN_IDENTITY = DEFINES_MODULE = YES @@ -12,12 +15,10 @@ DYLIB_COMPATIBILITY_VERSION = 1 DYLIB_CURRENT_VERSION = 1 DYLIB_INSTALL_NAME_BASE = @rpath FRAMEWORK_SEARCH_PATHS = $(inherited) $(SRCROOT)/ElectrodeContainer/Frameworks -HEADER_SEARCH_PATHS = INFOPLIST_FILE = ElectrodeContainer/Info.plist INSTALL_PATH = $(LOCAL_LIBRARY_DIR)/Frameworks IPHONEOS_DEPLOYMENT_TARGET = 10.0 LD_RUNPATH_SEARCH_PATHS = $(inherited) @executable_path/Frameworks @loader_path/Frameworks -OTHER_LDFLAGS = -ObjC -lc++ -lz PRODUCT_BUNDLE_IDENTIFIER = com.walmartlabs.ern.ElectrodeContainer PRODUCT_NAME = $(TARGET_NAME) SKIP_INSTALL = YES diff --git a/system-tests/fixtures/ios-container/Config/Project-Debug.xcconfig b/system-tests/fixtures/ios-container/Config/Project-Debug.xcconfig index f7e555612..b1f2a2ab4 100644 --- a/system-tests/fixtures/ios-container/Config/Project-Debug.xcconfig +++ b/system-tests/fixtures/ios-container/Config/Project-Debug.xcconfig @@ -32,7 +32,7 @@ CLANG_WARN_UNREACHABLE_CODE = YES CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Developer COPY_PHASE_STRIP = NO CURRENT_PROJECT_VERSION = 1 -DEBUG_INFORMATION_FORMAT = dwarf +DEBUG_INFORMATION_FORMAT = dwarf-with-dsym ENABLE_STRICT_OBJC_MSGSEND = YES ENABLE_TESTABILITY = YES GCC_C_LANGUAGE_STANDARD = gnu99 diff --git a/system-tests/fixtures/ios-container/ElectrodeContainer.xcodeproj/project.pbxproj b/system-tests/fixtures/ios-container/ElectrodeContainer.xcodeproj/project.pbxproj index 15ca25725..c9a066641 100644 --- a/system-tests/fixtures/ios-container/ElectrodeContainer.xcodeproj/project.pbxproj +++ b/system-tests/fixtures/ios-container/ElectrodeContainer.xcodeproj/project.pbxproj @@ -6,92 +6,80 @@ objectVersion = 46; objects = { /* Begin PBXBuildFile section */ + 01906DAEA4FA4A71B5255740 /* ElectrodeBridgeProtocols.m in Sources */ = {isa = PBXBuildFile; fileRef = 32B9445C74F6424699CAEF4B /* ElectrodeBridgeProtocols.m */; }; + 01DE1360702441B089C6B69B /* ElectrodeEventRegistrar.m in Sources */ = {isa = PBXBuildFile; fileRef = 245F0F6680CE4ACCA98EF7A9 /* ElectrodeEventRegistrar.m */; }; + 03D48009E09F466880EA2072 /* ElectrodeBridgeMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = 5E3705B892644A11A1F69223 /* ElectrodeBridgeMessage.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 096B0440E6614D538988C83E /* ElectrodeBridgeFailureMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 0C9F9C92A17E412581F0D56A /* ElectrodeBridgeFailureMessage.m */; }; + 0F12F1BBC58B4096833BC29A /* ElectrodeBridgeRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = 88FE7758B4A0409F88A4B097 /* ElectrodeBridgeRequest.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 12BC2E6ED1C34BC38F348BA1 /* ElectrodeEventDispatcher.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C1C69FAEBD24373B47DA44C /* ElectrodeEventDispatcher.h */; }; + 1EC5730FDB8C427D826D04ED /* ElectrodeRequestDispatcher.h in Headers */ = {isa = PBXBuildFile; fileRef = 197557E5503B4FEB9F511ED1 /* ElectrodeRequestDispatcher.h */; }; 223A89461E89CDC70092741E /* MiniApp.jsbundle in Resources */ = {isa = PBXBuildFile; fileRef = 223A89451E89CDC70092741E /* MiniApp.jsbundle */; }; 22BF1FEB1E8DAAF800E7F500 /* assets in Resources */ = {isa = PBXBuildFile; fileRef = 22BF1FEA1E8DAAF800E7F500 /* assets */; }; + 271B915933F54B06A274DB9F /* ElectrodeEventDispatcher.m in Sources */ = {isa = PBXBuildFile; fileRef = AAFBDC3A8B234DAFBCA67F24 /* ElectrodeEventDispatcher.m */; }; + 29F943CE2E3841B981914368 /* ElectrodeRequestHandlerProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5AE763729FC34F21B549F7EB /* ElectrodeRequestHandlerProcessor.swift */; }; 301CB9021F33F3450048C58B /* NSBundle+frameworkBundle.m in Sources */ = {isa = PBXBuildFile; fileRef = 301CB9001F33F3450048C58B /* NSBundle+frameworkBundle.m */; }; 301CB9031F33F3450048C58B /* NSBundle+frameworkBundle.h in Headers */ = {isa = PBXBuildFile; fileRef = 301CB9011F33F3450048C58B /* NSBundle+frameworkBundle.h */; }; 304000E82098E1F000BF751C /* ElectrodePluginConfig.h in Headers */ = {isa = PBXBuildFile; fileRef = 304000E72098E1F000BF751C /* ElectrodePluginConfig.h */; settings = {ATTRIBUTES = (Public, ); }; }; 30F8CDEE1E67946E00413247 /* ElectrodeReactNative_Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 30F8CDED1E67946E00413247 /* ElectrodeReactNative_Internal.h */; }; + 3284822A72E6439AB83E6FDE /* ElectrodeBridgeEvent.m in Sources */ = {isa = PBXBuildFile; fileRef = 6BDD80B00B5248749F26FA54 /* ElectrodeBridgeEvent.m */; }; + 35E06CE672934ACE9944A0AB /* Processor.swift in Sources */ = {isa = PBXBuildFile; fileRef = BD9CEF6A5526453B89F073CD /* Processor.swift */; }; + 377415090F1C4481A748CC63 /* NavigateData.swift in Headers */ = {isa = PBXBuildFile; fileRef = 0CF6BAC9C399403687C44C2E /* NavigateData.swift */; settings = {ATTRIBUTES = (Public, ); }; }; + 3B04C695BEFE4AF6B4DC5BBA /* ElectrodeUtilities.swift in Sources */ = {isa = PBXBuildFile; fileRef = 979A4DC3B20A4ED3870D5A6B /* ElectrodeUtilities.swift */; }; + 444CE9EC64A342FBADC657AA /* ElectrodeRequestProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1CB34DE240CA4EB384455CCF /* ElectrodeRequestProcessor.swift */; }; + 47DAB8B7964848AD9D6DEE14 /* NavigationAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 354F5BA8E28748699BB4448B /* NavigationAPI.swift */; }; 485009ED1E2FF23C009B6610 /* ElectrodeContainer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 485009E31E2FF23B009B6610 /* ElectrodeContainer.framework */; }; 485009F41E2FF23C009B6610 /* ElectrodeContainer.h in Headers */ = {isa = PBXBuildFile; fileRef = 485009E61E2FF23B009B6610 /* ElectrodeContainer.h */; settings = {ATTRIBUTES = (Public, ); }; }; 48500A981E2FF55B009B6610 /* ElectrodeReactNative.h in Headers */ = {isa = PBXBuildFile; fileRef = 48500A961E2FF55B009B6610 /* ElectrodeReactNative.h */; settings = {ATTRIBUTES = (Public, ); }; }; 48500A991E2FF55B009B6610 /* ElectrodeReactNative.m in Sources */ = {isa = PBXBuildFile; fileRef = 48500A971E2FF55B009B6610 /* ElectrodeReactNative.m */; }; + 4BF2B2C1AAA7410C8D80CE5F /* MoviesRequests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FC726E222D5482EA525131D /* MoviesRequests.swift */; }; + 4FD7D2F4D3114D81BB1C01A0 /* ElectrodeObject.swift in Sources */ = {isa = PBXBuildFile; fileRef = 25330FE15865466D80771EF2 /* ElectrodeObject.swift */; }; + 506C713C6483411BBBEAA121 /* ElectrodeBridgeResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 0808E25422844634AF3A79CE /* ElectrodeBridgeResponse.m */; }; + 50FA50BD45E84596908008B9 /* ElectrodeLogger.m in Sources */ = {isa = PBXBuildFile; fileRef = 5B284BFE694E4FB1BB82AE99 /* ElectrodeLogger.m */; }; + 580FB4F6CD49469AAE1D7F6F /* ElectrodeBridgeEvent.h in Headers */ = {isa = PBXBuildFile; fileRef = 18948178B97549C8873225C3 /* ElectrodeBridgeEvent.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 5ACBADF766234F968FD71DB6 /* ElectrodeRequestRegistrar.m in Sources */ = {isa = PBXBuildFile; fileRef = 681DABD9DA4C482787D4F9C4 /* ElectrodeRequestRegistrar.m */; }; + 5FE7BACA53914598952E588E /* NavigationAPI.swift in Headers */ = {isa = PBXBuildFile; fileRef = 354F5BA8E28748699BB4448B /* NavigationAPI.swift */; settings = {ATTRIBUTES = (Public, ); }; }; + 622EFF67A2AE4DA6B39AAA5D /* BirthYear.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1AF949A0EDF34E148E8719B5 /* BirthYear.swift */; }; + 64D18FF86DCF4EEAA5D080E5 /* NavigationRequests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9B29D93ED74C4B7585A20891 /* NavigationRequests.swift */; }; + 6ACD7D1BACC148079FA2D28C /* ElectrodeBridgeHolder.h in Headers */ = {isa = PBXBuildFile; fileRef = 7856A0501FB94926A7C27C13 /* ElectrodeBridgeHolder.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 6FDED851EF3343358E50C952 /* ElectrodeLogger.h in Headers */ = {isa = PBXBuildFile; fileRef = 168D3CF97D044D2688D7B112 /* ElectrodeLogger.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 7765EE4BD98448F6A6E30B21 /* ElectrodeBridgeResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = A5CBCDDB46D94C00BFFAC7EB /* ElectrodeBridgeResponse.h */; }; + 7A2C12408B89476996105B27 /* Synopsis.swift in Headers */ = {isa = PBXBuildFile; fileRef = A5F4E7F49A1D4DBC943D7C23 /* Synopsis.swift */; settings = {ATTRIBUTES = (Public, ); }; }; + 7DDC271F5FF745EDA378AA84 /* BirthYear.swift in Headers */ = {isa = PBXBuildFile; fileRef = 1AF949A0EDF34E148E8719B5 /* BirthYear.swift */; settings = {ATTRIBUTES = (Public, ); }; }; + 826D76725E61454F9CD4A6A6 /* ElectrodeBridgeTransceiver_Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 8AE679C7D74D4CEEBD3637DD /* ElectrodeBridgeTransceiver_Internal.h */; }; + 87F4551A6A6D49A29EC54771 /* Person.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7077B909325A452AB2319728 /* Person.swift */; }; + 87F4755DA0589C7A6D506E60 /* libPods-ElectrodeContainer.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 630482CCD67B829695380E82 /* libPods-ElectrodeContainer.a */; }; + 93626E75C6EF439F9B0533D0 /* Bridgeable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8396928250284A54A3422F4D /* Bridgeable.swift */; }; + 95C5D308DE06429885B7C870 /* ElectrodeReactNativeBridge.h in Headers */ = {isa = PBXBuildFile; fileRef = 28C91A3D3D8F448C818F12B2 /* ElectrodeReactNativeBridge.h */; }; 968333D71E54E3470031C565 /* ElectrodeBridgeDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 968333D51E54E3470031C565 /* ElectrodeBridgeDelegate.h */; }; 968333D81E54E3470031C565 /* ElectrodeBridgeDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 968333D61E54E3470031C565 /* ElectrodeBridgeDelegate.m */; }; - DA42DF60233C1B0500046338 /* ERNDevSettingsViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = DA42DF5C233C1B0500046338 /* ERNDevSettingsViewController.h */; }; + 99202FE1E634455B994323FF /* ElectrodeBridgeHolder.m in Sources */ = {isa = PBXBuildFile; fileRef = 85C170A0724C47C6838951A4 /* ElectrodeBridgeHolder.m */; }; + A1A058A8420F4009AD1EC036 /* Movie.swift in Headers */ = {isa = PBXBuildFile; fileRef = E8AC6C40C4FF4195ACFCBA0B /* Movie.swift */; settings = {ATTRIBUTES = (Public, ); }; }; + A3EAF65D2E1B4BA5B828B392 /* ElectrodeBridgeTransaction.h in Headers */ = {isa = PBXBuildFile; fileRef = 5AC3A956EC79403A95AB7910 /* ElectrodeBridgeTransaction.h */; }; + A67A380E457044C49A6A6FF4 /* ElectrodeBridgeProtocols.h in Headers */ = {isa = PBXBuildFile; fileRef = EC7E76A787024BA1BCCE7A20 /* ElectrodeBridgeProtocols.h */; settings = {ATTRIBUTES = (Public, ); }; }; + AA60DD08157048D7BE225BF7 /* MoviesAPI.swift in Headers */ = {isa = PBXBuildFile; fileRef = 3D88153E16FE457989638F39 /* MoviesAPI.swift */; settings = {ATTRIBUTES = (Public, ); }; }; + AB54837F5CAD4330AD58BEC7 /* ElectrodeRequestDispatcher.m in Sources */ = {isa = PBXBuildFile; fileRef = 619E71C4CE2D4B7D91B6A21F /* ElectrodeRequestDispatcher.m */; }; + ACD5BCB172FD49B29265BA6E /* NavigateData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0CF6BAC9C399403687C44C2E /* NavigateData.swift */; }; + AFF155168A9641EC8588FCDC /* Synopsis.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5F4E7F49A1D4DBC943D7C23 /* Synopsis.swift */; }; + B079722EB3EF45D6B93899B5 /* ElectrodeBridgeFailureMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = CBBF97282517407E9443B894 /* ElectrodeBridgeFailureMessage.h */; settings = {ATTRIBUTES = (Public, ); }; }; + B8F43C2316824B79A92E32CC /* MoviesAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3D88153E16FE457989638F39 /* MoviesAPI.swift */; }; + BCDAF487DDB34D5E8D944A3C /* Movie.swift in Sources */ = {isa = PBXBuildFile; fileRef = E8AC6C40C4FF4195ACFCBA0B /* Movie.swift */; }; + BD2DE1C9B95242A889990185 /* None.swift in Sources */ = {isa = PBXBuildFile; fileRef = 024EB9DA0D9C44CCA3D2423C /* None.swift */; }; + D2D311C3067D4EABAD3F7AA8 /* EventProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = C387FAAD3C344484A06CB501 /* EventProcessor.swift */; }; + D82DFBAF92B24D7D8FA2CBCB /* ElectrodeBridgeMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = C324BAAB417642A8A9564677 /* ElectrodeBridgeMessage.m */; }; + DA42DF5D233C1B0500046338 /* ElectrodeBundle.m in Sources */ = {isa = PBXBuildFile; fileRef = DA42DF59233C1B0500046338 /* ElectrodeBundle.m */; }; DA42DF5E233C1B0500046338 /* ERNDevSettingsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DA42DF5A233C1B0500046338 /* ERNDevSettingsViewController.m */; }; DA42DF5F233C1B0500046338 /* ElectrodeBundle.h in Headers */ = {isa = PBXBuildFile; fileRef = DA42DF5B233C1B0500046338 /* ElectrodeBundle.h */; }; - DA42DF5D233C1B0500046338 /* ElectrodeBundle.m in Sources */ = {isa = PBXBuildFile; fileRef = DA42DF59233C1B0500046338 /* ElectrodeBundle.m */; }; - 4F4A27C4782142EBBF6415E7 /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5ED3A951750B428BB8E6CA89 /* libReact.a */; }; - 3519BD7DC4F34C369DD6B600 /* libRCTActionSheet.a in Frameworks */ = {isa = PBXBuildFile; fileRef = C126D15D1E2E409CA863AB1E /* libRCTActionSheet.a */; }; - FD0C4F5D22E3491F848F551E /* libRCTImage.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 98DCB8603FCF4513A1E7EA92 /* libRCTImage.a */; }; - 55F211A88799423A9A1C9370 /* libRCTAnimation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 25E005C6E21E409F9CE36253 /* libRCTAnimation.a */; }; - F081F7619FDE41F68FB129E6 /* libRCTText.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2F7ED4D7F0CD4806ADABEB46 /* libRCTText.a */; }; - 15FA33EDCC084C8BA696D730 /* libRCTWebSocket.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 47C8477872D644E980ABFD6F /* libRCTWebSocket.a */; }; - 185CFC9438064B7BB6ABD1DD /* libRCTLinking.a in Frameworks */ = {isa = PBXBuildFile; fileRef = C198140C8F37459D9C7510A3 /* libRCTLinking.a */; }; - D0C969D3F60447399FC0E952 /* libRCTNetwork.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 54F8A0713F3B4FC2B0DA46DC /* libRCTNetwork.a */; }; - 8CD222FC3617482C924DC7C7 /* libRCTSettings.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEFA433831D44E2E82B41EEC /* libRCTSettings.a */; }; - A0BD1711F843410BAF6B440F /* libRCTVibration.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 16EA5718B773465B9638D8B2 /* libRCTVibration.a */; }; - B80A6FDD51F14473951D1356 /* libRCTCameraRoll.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6A190D54092B4F7A88E61255 /* libRCTCameraRoll.a */; }; - DB3C3E0E940A418D8EF8050A /* libART.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3695C861612D4A3C85D781F0 /* libART.a */; }; - F397BD68D6E4480AAC53DA0E /* JavaScriptCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AED5B5B7E65643D2A57465D6 /* JavaScriptCore.framework */; }; - 55480D1EA9AA49A0908F0623 /* ElectrodeObject.swift in Sources */ = {isa = PBXBuildFile; fileRef = 08FFD0DAF22248D884C37AAD /* ElectrodeObject.swift */; }; - 6336877753C44676ADEA0499 /* Bridgeable.swift in Sources */ = {isa = PBXBuildFile; fileRef = E4EAF02D2B714D43BB65BC77 /* Bridgeable.swift */; }; - 058296A8A09744BCB277A9B7 /* ElectrodeRequestHandlerProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E4C56715CFA40638B3715C3 /* ElectrodeRequestHandlerProcessor.swift */; }; - F0F288BD19DD420A93B56FDF /* ElectrodeRequestProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = CDA382E8E808474494142F5B /* ElectrodeRequestProcessor.swift */; }; - FC6175CD31384082AFCE7B97 /* ElectrodeUtilities.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAA433774AC54C209E835624 /* ElectrodeUtilities.swift */; }; - 8A5DC47CBE8745038BDE2FAC /* EventListenerProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = DC55805A1EC445D297645640 /* EventListenerProcessor.swift */; }; - 9862E3BEEC214467ACAE5057 /* EventProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = B4AD40B6EC9D41FB8E799E19 /* EventProcessor.swift */; }; - 6BA9B7F7175D4B179D7435C7 /* Processor.swift in Sources */ = {isa = PBXBuildFile; fileRef = B537297982B4480FAF9C912A /* Processor.swift */; }; - 3795AEA3D56046C18C4F4803 /* None.swift in Sources */ = {isa = PBXBuildFile; fileRef = 237A7FF2B4DF443B83389690 /* None.swift */; }; - F8649007267C4515AB56405B /* ElectrodeBridgeEvent.m in Sources */ = {isa = PBXBuildFile; fileRef = 473ECB8B572748EC9FEF42DF /* ElectrodeBridgeEvent.m */; }; - 129AE8465771446892C5E5FD /* ElectrodeBridgeFailureMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 9A1D30B08C504A9B81CDA022 /* ElectrodeBridgeFailureMessage.m */; }; - AEB8169737B94AA3BD679864 /* ElectrodeBridgeHolder.m in Sources */ = {isa = PBXBuildFile; fileRef = D5C7D0FAF6C449DDB8CDA453 /* ElectrodeBridgeHolder.m */; }; - 67892904BCD744F981B926E2 /* ElectrodeBridgeMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 5524D222CDDA43CC955A5D1C /* ElectrodeBridgeMessage.m */; }; - 213203F6324E4147917AC720 /* ElectrodeBridgeProtocols.m in Sources */ = {isa = PBXBuildFile; fileRef = 7E6F66A5FBB249DDBC970351 /* ElectrodeBridgeProtocols.m */; }; - 350CF3BF4C7C4F80B7D1D0F5 /* ElectrodeBridgeRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = DF53EAEB4BAD4CF48FFD7DCD /* ElectrodeBridgeRequest.m */; }; - CC968438DEB44E39B2AAC3B0 /* ElectrodeBridgeResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 5F64F0B668C046F5A44B5309 /* ElectrodeBridgeResponse.m */; }; - F926A036605E42298B1A0B2A /* ElectrodeBridgeTransaction.m in Sources */ = {isa = PBXBuildFile; fileRef = 88B003207E33479884EF4643 /* ElectrodeBridgeTransaction.m */; }; - 84D513409C934CB5B4C48C38 /* ElectrodeBridgeTransceiver.m in Sources */ = {isa = PBXBuildFile; fileRef = 55C40EA69C5D4500A1188CF5 /* ElectrodeBridgeTransceiver.m */; }; - E0136AB02D304B7D83D16F04 /* ElectrodeEventDispatcher.m in Sources */ = {isa = PBXBuildFile; fileRef = 44EAAD76553E4AC6AD70DA9E /* ElectrodeEventDispatcher.m */; }; - 1D4EFDECAE71403AB573D8ED /* ElectrodeEventRegistrar.m in Sources */ = {isa = PBXBuildFile; fileRef = CDC3F387E29049C09355C259 /* ElectrodeEventRegistrar.m */; }; - 45358DE55A0440ADA9243F78 /* ElectrodeRequestDispatcher.m in Sources */ = {isa = PBXBuildFile; fileRef = 257C8ED76F6C4D8196C1677F /* ElectrodeRequestDispatcher.m */; }; - 9633CE288B6F4C54AEFE21C0 /* ElectrodeRequestRegistrar.m in Sources */ = {isa = PBXBuildFile; fileRef = D64391D6C05349388BB9241D /* ElectrodeRequestRegistrar.m */; }; - DF93F0924CEC4A4490807F65 /* ElectrodeLogger.m in Sources */ = {isa = PBXBuildFile; fileRef = EE6EB56E3E36406A9CE5E93E /* ElectrodeLogger.m */; }; - 81BA246BB7264706A169F154 /* ElectrodeBridgeEvent.h in Headers */ = {isa = PBXBuildFile; fileRef = 556BF10EA57A4029B2F7BC20 /* ElectrodeBridgeEvent.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 9B662834E71D4E3383C7BD51 /* ElectrodeBridgeFailureMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = 8A013AE5513944A7A4530F26 /* ElectrodeBridgeFailureMessage.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 800ED26306044BD09E6D888B /* ElectrodeBridgeHolder.h in Headers */ = {isa = PBXBuildFile; fileRef = C0A036D0996C4BEDBD495702 /* ElectrodeBridgeHolder.h */; settings = {ATTRIBUTES = (Public, ); }; }; - D06D681493974109BFEC8A85 /* ElectrodeBridgeMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = D41EED3E7EC148EDB72B19DF /* ElectrodeBridgeMessage.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 8B033E129F564A9398723C04 /* ElectrodeBridgeProtocols.h in Headers */ = {isa = PBXBuildFile; fileRef = 987222A2A9414B2CA76166ED /* ElectrodeBridgeProtocols.h */; settings = {ATTRIBUTES = (Public, ); }; }; - C13DF40906BA45C596F4CE19 /* ElectrodeBridgeRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = FA031A7F08184BD0BD145BDF /* ElectrodeBridgeRequest.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 35687CD480FB46569567AB0D /* ElectrodeBridgeTransaction.h in Headers */ = {isa = PBXBuildFile; fileRef = B5F5B248CCC0468283815273 /* ElectrodeBridgeTransaction.h */; }; - 86340A71C57A4222B24BD144 /* ElectrodeBridgeTransceiver.h in Headers */ = {isa = PBXBuildFile; fileRef = A53E0B7218704A50A0FA440F /* ElectrodeBridgeTransceiver.h */; }; - 9D57A33173844B089F78DCF9 /* ElectrodeBridgeTransceiver_Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 67D6F6C8918940DA9B039A31 /* ElectrodeBridgeTransceiver_Internal.h */; }; - A6586C46060244C19109FA7D /* ElectrodeEventDispatcher.h in Headers */ = {isa = PBXBuildFile; fileRef = 03C77DA717FE4EA5826229AD /* ElectrodeEventDispatcher.h */; }; - BC8F83D358904703998B19AF /* ElectrodeEventRegistrar.h in Headers */ = {isa = PBXBuildFile; fileRef = 96374FC7C0CA4737B92C7618 /* ElectrodeEventRegistrar.h */; }; - 6B465E763E1F4F389DE81D6F /* ElectrodeRequestDispatcher.h in Headers */ = {isa = PBXBuildFile; fileRef = A942868D372C426A82FEF6A9 /* ElectrodeRequestDispatcher.h */; }; - 2D5B969C6A634D49AD9AEBE5 /* ElectrodeRequestRegistrar.h in Headers */ = {isa = PBXBuildFile; fileRef = 25A315AEFA9D4B298DB2859F /* ElectrodeRequestRegistrar.h */; }; - E3C1F54A2D8B413A98E5E16B /* ElectrodeReactNativeBridge.h in Headers */ = {isa = PBXBuildFile; fileRef = 05BB5029E0164304B2CBEEA5 /* ElectrodeReactNativeBridge.h */; }; - A2DD9767E0AD4D9D9D2617EC /* ElectrodeBridgeResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 7D80C33A9A98451B85A45161 /* ElectrodeBridgeResponse.h */; }; - 0ABF90BA7CBE483A9A4C329B /* ElectrodeLogger.h in Headers */ = {isa = PBXBuildFile; fileRef = 33DBEDD4CF9A43839CA5026B /* ElectrodeLogger.h */; settings = {ATTRIBUTES = (Public, ); }; }; - CF1EA7452A5B4B7AB2A1DE5D /* BirthYear.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4818EFB7B2BB43339CA5D69D /* BirthYear.swift */; }; - C68B1A8A247B45ECAA6E5C16 /* Movie.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1D15C390706A4386AEB41F87 /* Movie.swift */; }; - 864C12DA53D3497483B02797 /* MoviesAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 80B2BA1DEA064B2D9C7ADB33 /* MoviesAPI.swift */; }; - 7B77E29BDE6843CF8F8ACCC5 /* MoviesRequests.swift in Sources */ = {isa = PBXBuildFile; fileRef = D6A6F3E522D747F2B03CD2EF /* MoviesRequests.swift */; }; - F42E9688AA164ED2A1C88EDC /* Person.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04A40296F8F24C7F9FF50CC0 /* Person.swift */; }; - E7D4C0E2643A4A389AD695CC /* Synopsis.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0BC6AF23F1DF4912A2B30DCF /* Synopsis.swift */; }; - 0BF96A3C96804CF28076B0B5 /* BirthYear.swift in Headers */ = {isa = PBXBuildFile; fileRef = 4818EFB7B2BB43339CA5D69D /* BirthYear.swift */; settings = {ATTRIBUTES = (Public, ); }; }; - 6F99AFE190F44852ACAFF9B5 /* Movie.swift in Headers */ = {isa = PBXBuildFile; fileRef = 1D15C390706A4386AEB41F87 /* Movie.swift */; settings = {ATTRIBUTES = (Public, ); }; }; - 3197CD8ED33149DCB3C3B706 /* MoviesAPI.swift in Headers */ = {isa = PBXBuildFile; fileRef = 80B2BA1DEA064B2D9C7ADB33 /* MoviesAPI.swift */; settings = {ATTRIBUTES = (Public, ); }; }; - CFD278BCF3C241EF982EEEAD /* MoviesRequests.swift in Headers */ = {isa = PBXBuildFile; fileRef = D6A6F3E522D747F2B03CD2EF /* MoviesRequests.swift */; settings = {ATTRIBUTES = (Public, ); }; }; - 867E7DCD7F374452BEC7AEC1 /* Person.swift in Headers */ = {isa = PBXBuildFile; fileRef = 04A40296F8F24C7F9FF50CC0 /* Person.swift */; settings = {ATTRIBUTES = (Public, ); }; }; - A3C2BCC6458B4C16A0344CB5 /* Synopsis.swift in Headers */ = {isa = PBXBuildFile; fileRef = 0BC6AF23F1DF4912A2B30DCF /* Synopsis.swift */; settings = {ATTRIBUTES = (Public, ); }; }; - 078AAC10DF8C4441899E09F5 /* NavigateData.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5148CC5312146B3A5DA4E52 /* NavigateData.swift */; }; - 63F509BE4C3A4C999C8E35D3 /* NavigationAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 646DC46C961343ACBC6D9584 /* NavigationAPI.swift */; }; - 7369653E7F724BD2B2B60D5E /* NavigationRequests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB98690950684B44A592F42E /* NavigationRequests.swift */; }; - 381098FF0E2E44BB8DE8C6EC /* NavigateData.swift in Headers */ = {isa = PBXBuildFile; fileRef = D5148CC5312146B3A5DA4E52 /* NavigateData.swift */; settings = {ATTRIBUTES = (Public, ); }; }; - 00D3C31A8A164150BF4989D4 /* NavigationAPI.swift in Headers */ = {isa = PBXBuildFile; fileRef = 646DC46C961343ACBC6D9584 /* NavigationAPI.swift */; settings = {ATTRIBUTES = (Public, ); }; }; - AE0BC3701DD544969AFF0133 /* NavigationRequests.swift in Headers */ = {isa = PBXBuildFile; fileRef = DB98690950684B44A592F42E /* NavigationRequests.swift */; settings = {ATTRIBUTES = (Public, ); }; }; + DA42DF60233C1B0500046338 /* ERNDevSettingsViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = DA42DF5C233C1B0500046338 /* ERNDevSettingsViewController.h */; }; + DB49ED5F1C2545C49AADDA68 /* ElectrodeBridgeTransceiver.m in Sources */ = {isa = PBXBuildFile; fileRef = 52F46D58977B485394815675 /* ElectrodeBridgeTransceiver.m */; }; + DB792616A556442F80189703 /* ElectrodeRequestRegistrar.h in Headers */ = {isa = PBXBuildFile; fileRef = 27972EF3BD6E4767AE53F12C /* ElectrodeRequestRegistrar.h */; }; + E0434C0664BE4AF6813929EE /* ElectrodeBridgeTransaction.m in Sources */ = {isa = PBXBuildFile; fileRef = A6FFDDFBDF48428AA8E4F676 /* ElectrodeBridgeTransaction.m */; }; + E0BEDF1000384A57B8B3C9FE /* Person.swift in Headers */ = {isa = PBXBuildFile; fileRef = 7077B909325A452AB2319728 /* Person.swift */; settings = {ATTRIBUTES = (Public, ); }; }; + E4B30B8E616B4CB7B01ED52E /* NavigationRequests.swift in Headers */ = {isa = PBXBuildFile; fileRef = 9B29D93ED74C4B7585A20891 /* NavigationRequests.swift */; settings = {ATTRIBUTES = (Public, ); }; }; + ECBD3532BF0E4612B9F18088 /* ElectrodeEventRegistrar.h in Headers */ = {isa = PBXBuildFile; fileRef = 120E9428C9074030A01072ED /* ElectrodeEventRegistrar.h */; }; + ED973832974F4934B7CE4AFD /* ElectrodeBridgeTransceiver.h in Headers */ = {isa = PBXBuildFile; fileRef = BF74EE155FD246BC87CD5342 /* ElectrodeBridgeTransceiver.h */; }; + EF3F9B00499E4FC1B7793B83 /* EventListenerProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = E5E4619D2D184FFA876D4D94 /* EventListenerProcessor.swift */; }; + F50681ADB84F4D4EB3FA4A4A /* MoviesRequests.swift in Headers */ = {isa = PBXBuildFile; fileRef = 9FC726E222D5482EA525131D /* MoviesRequests.swift */; settings = {ATTRIBUTES = (Public, ); }; }; + F6215521361C4300A4F13BFB /* ElectrodeBridgeRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = A251F258DF5B4C1C95F56580 /* ElectrodeBridgeRequest.m */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -102,174 +90,6 @@ remoteGlobalIDString = 485009E21E2FF23B009B6610; remoteInfo = ElectrodeContainer; }; - C0524C43A8A4438FAC484CC6 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 06DD4D0CC95B4DD0A973FFE2 /* React.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = 4F4A27C4782142EBBF6415E7; - remoteInfo = React; - }; - C45C865F91704DC3A8CE2EA7 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 06DD4D0CC95B4DD0A973FFE2 /* React.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 83CBBA2E1A601D0E00E9B192; - remoteInfo = React; - }; - E7188FFD7E9646A388ECA83E /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 32B49CCAC0AA41A392F4CEF9 /* RCTActionSheet.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = 3519BD7DC4F34C369DD6B600; - remoteInfo = RCTActionSheet; - }; - 985593CF6722449F9F47B570 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 32B49CCAC0AA41A392F4CEF9 /* RCTActionSheet.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 134814201AA4EA6300B7C361; - remoteInfo = RCTActionSheet; - }; - 8CBD7796E4FB47278A7CD0D7 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = F0CEA5244D23472FBB053881 /* RCTImage.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = FD0C4F5D22E3491F848F551E; - remoteInfo = RCTImage; - }; - 9097137E0E404758A5557D87 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = F0CEA5244D23472FBB053881 /* RCTImage.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 58B5115D1A9E6B3D00147676; - remoteInfo = RCTImage; - }; - 15C2F2AE281E4BB5AB1FF3B8 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = AEBC48FB4E2843618DC0B44A /* RCTAnimation.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = 55F211A88799423A9A1C9370; - remoteInfo = RCTAnimation; - }; - D21A7AAFF79F4B26B5FD60F8 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = AEBC48FB4E2843618DC0B44A /* RCTAnimation.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 134814201AA4EA6300B7C361; - remoteInfo = RCTAnimation; - }; - AAC58102D9404E90BB9C4824 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 6F813A4DBEA74ECB9E36F1FD /* RCTText.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = F081F7619FDE41F68FB129E6; - remoteInfo = RCTText; - }; - 6041AFC99D59418DA0401335 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 6F813A4DBEA74ECB9E36F1FD /* RCTText.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 58B5119B1A9E6C1200147676; - remoteInfo = RCTText; - }; - 27F0C9182D2744209981F42B /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = F2EB131A9CA947E195E75631 /* RCTWebSocket.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = 15FA33EDCC084C8BA696D730; - remoteInfo = RCTWebSocket; - }; - A53EDF0E1E4141CC88112466 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = F2EB131A9CA947E195E75631 /* RCTWebSocket.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 3C86DF461ADF2C930047B81A; - remoteInfo = RCTWebSocket; - }; - B0555665473B4CC2AA1A0731 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = AF5C40C5EC974064B107A305 /* RCTLinking.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = 185CFC9438064B7BB6ABD1DD; - remoteInfo = RCTLinking; - }; - 2D4DD2051AC8487DA2449EAC /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = AF5C40C5EC974064B107A305 /* RCTLinking.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 134814201AA4EA6300B7C361; - remoteInfo = RCTLinking; - }; - 95E5E001876244E7B151714C /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = CAC45CD88B4144D8A512D336 /* RCTNetwork.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = D0C969D3F60447399FC0E952; - remoteInfo = RCTNetwork; - }; - 1A3485814EEE424397115255 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = CAC45CD88B4144D8A512D336 /* RCTNetwork.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 58B511DB1A9E6C8500147676; - remoteInfo = RCTNetwork; - }; - 91445E09421F4882923D597B /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 76FC781521AB4E0CB0D8E857 /* RCTSettings.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = 8CD222FC3617482C924DC7C7; - remoteInfo = RCTSettings; - }; - 212EE93438534196A5E832B2 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 76FC781521AB4E0CB0D8E857 /* RCTSettings.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 134814201AA4EA6300B7C361; - remoteInfo = RCTSettings; - }; - F0B4A10C868344BCAD806452 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 97C62BBE942C4D0294E46807 /* RCTVibration.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = A0BD1711F843410BAF6B440F; - remoteInfo = RCTVibration; - }; - 49C88CE530B74B68B02AEAC6 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 97C62BBE942C4D0294E46807 /* RCTVibration.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 832C81801AAF6DEF007FA2F7; - remoteInfo = RCTVibration; - }; - 4BEA96C911DE4D3F9E4EDCB5 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = CF320D58E65E48DEA8A1FED8 /* RCTCameraRoll.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = B80A6FDD51F14473951D1356; - remoteInfo = RCTCameraRoll; - }; - 68B59822BA504F9AAD7A3C68 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = CF320D58E65E48DEA8A1FED8 /* RCTCameraRoll.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 58B5115D1A9E6B3D00147676; - remoteInfo = RCTCameraRoll; - }; - EA57E677EAC5407A8492974A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 9FBB36A3959A4F6989B8E9EC /* ART.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = DB3C3E0E940A418D8EF8050A; - remoteInfo = ART; - }; - B3F7D905D2E14E409DB7F103 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 9FBB36A3959A4F6989B8E9EC /* ART.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 0CF68AC11AF0540F00FF9E5C; - remoteInfo = ART; - }; /* End PBXContainerItemProxy section */ /* Begin PBXCopyFilesBuildPhase section */ @@ -286,107 +106,86 @@ /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ + 024EB9DA0D9C44CCA3D2423C /* None.swift */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = None.swift; path = ElectrodeReactNativeBridge/None.swift; sourceTree = ""; }; + 0808E25422844634AF3A79CE /* ElectrodeBridgeResponse.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = ElectrodeBridgeResponse.m; path = ElectrodeReactNativeBridge/ElectrodeBridgeResponse.m; sourceTree = ""; }; + 0C1C69FAEBD24373B47DA44C /* ElectrodeEventDispatcher.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = ElectrodeEventDispatcher.h; path = ElectrodeReactNativeBridge/ElectrodeEventDispatcher.h; sourceTree = ""; }; + 0C9F9C92A17E412581F0D56A /* ElectrodeBridgeFailureMessage.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = ElectrodeBridgeFailureMessage.m; path = ElectrodeReactNativeBridge/ElectrodeBridgeFailureMessage.m; sourceTree = ""; }; + 0CF6BAC9C399403687C44C2E /* NavigateData.swift */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = NavigateData.swift; path = APIs/NavigateData.swift; sourceTree = ""; }; + 120E9428C9074030A01072ED /* ElectrodeEventRegistrar.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = ElectrodeEventRegistrar.h; path = ElectrodeReactNativeBridge/ElectrodeEventRegistrar.h; sourceTree = ""; }; + 168D3CF97D044D2688D7B112 /* ElectrodeLogger.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = ElectrodeLogger.h; path = ElectrodeReactNativeBridge/ElectrodeLogger.h; sourceTree = ""; }; + 18948178B97549C8873225C3 /* ElectrodeBridgeEvent.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = ElectrodeBridgeEvent.h; path = ElectrodeReactNativeBridge/ElectrodeBridgeEvent.h; sourceTree = ""; }; + 197557E5503B4FEB9F511ED1 /* ElectrodeRequestDispatcher.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = ElectrodeRequestDispatcher.h; path = ElectrodeReactNativeBridge/ElectrodeRequestDispatcher.h; sourceTree = ""; }; + 1AF949A0EDF34E148E8719B5 /* BirthYear.swift */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = BirthYear.swift; path = APIs/BirthYear.swift; sourceTree = ""; }; + 1CB34DE240CA4EB384455CCF /* ElectrodeRequestProcessor.swift */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = ElectrodeRequestProcessor.swift; path = ElectrodeReactNativeBridge/ElectrodeRequestProcessor.swift; sourceTree = ""; }; 223A89451E89CDC70092741E /* MiniApp.jsbundle */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = MiniApp.jsbundle; sourceTree = ""; }; 2265A4A11EB26943007D6C3D /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 22BF1FEA1E8DAAF800E7F500 /* assets */ = {isa = PBXFileReference; lastKnownFileType = folder; path = assets; sourceTree = ""; }; + 22CB683D20C9C46A0031A349 /* Project-QADeployment.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "Project-QADeployment.xcconfig"; sourceTree = ""; }; + 22CB683E20C9C46A0031A349 /* Project-Release.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "Project-Release.xcconfig"; sourceTree = ""; }; + 22CB684020C9C46A0031A349 /* ElectrodeContainer-QADeployment.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "ElectrodeContainer-QADeployment.xcconfig"; sourceTree = ""; }; + 22CB684120C9C46A0031A349 /* ElectrodeContainer-Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "ElectrodeContainer-Debug.xcconfig"; sourceTree = ""; }; + 22CB684220C9C46A0031A349 /* ElectrodeContainer-Release.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "ElectrodeContainer-Release.xcconfig"; sourceTree = ""; }; + 22CB684420C9C46A0031A349 /* ElectrodeContainerTests-Release.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "ElectrodeContainerTests-Release.xcconfig"; sourceTree = ""; }; + 22CB684620C9C46A0031A349 /* ElectrodeContainerTests-QADeployment.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "ElectrodeContainerTests-QADeployment.xcconfig"; sourceTree = ""; }; + 22CB684720C9C46A0031A349 /* Project-Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "Project-Debug.xcconfig"; sourceTree = ""; }; + 22CB684820C9C46B0031A349 /* ElectrodeContainerTests-Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "ElectrodeContainerTests-Debug.xcconfig"; sourceTree = ""; }; + 245F0F6680CE4ACCA98EF7A9 /* ElectrodeEventRegistrar.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = ElectrodeEventRegistrar.m; path = ElectrodeReactNativeBridge/ElectrodeEventRegistrar.m; sourceTree = ""; }; + 25330FE15865466D80771EF2 /* ElectrodeObject.swift */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = ElectrodeObject.swift; path = ElectrodeReactNativeBridge/ElectrodeObject.swift; sourceTree = ""; }; + 27972EF3BD6E4767AE53F12C /* ElectrodeRequestRegistrar.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = ElectrodeRequestRegistrar.h; path = ElectrodeReactNativeBridge/ElectrodeRequestRegistrar.h; sourceTree = ""; }; + 28C91A3D3D8F448C818F12B2 /* ElectrodeReactNativeBridge.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = ElectrodeReactNativeBridge.h; path = ElectrodeReactNativeBridge/ElectrodeReactNativeBridge.h; sourceTree = ""; }; + 2D35AB33C824A1A8A3FCB538 /* Pods-ElectrodeContainer.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ElectrodeContainer.release.xcconfig"; path = "Target Support Files/Pods-ElectrodeContainer/Pods-ElectrodeContainer.release.xcconfig"; sourceTree = ""; }; 301CB9001F33F3450048C58B /* NSBundle+frameworkBundle.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSBundle+frameworkBundle.m"; sourceTree = ""; }; 301CB9011F33F3450048C58B /* NSBundle+frameworkBundle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSBundle+frameworkBundle.h"; sourceTree = ""; }; 304000E72098E1F000BF751C /* ElectrodePluginConfig.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ElectrodePluginConfig.h; sourceTree = ""; }; 30F8CDED1E67946E00413247 /* ElectrodeReactNative_Internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ElectrodeReactNative_Internal.h; sourceTree = ""; }; + 32B9445C74F6424699CAEF4B /* ElectrodeBridgeProtocols.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = ElectrodeBridgeProtocols.m; path = ElectrodeReactNativeBridge/ElectrodeBridgeProtocols.m; sourceTree = ""; }; + 354F5BA8E28748699BB4448B /* NavigationAPI.swift */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = NavigationAPI.swift; path = APIs/NavigationAPI.swift; sourceTree = ""; }; + 3D88153E16FE457989638F39 /* MoviesAPI.swift */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = MoviesAPI.swift; path = APIs/MoviesAPI.swift; sourceTree = ""; }; 485009E31E2FF23B009B6610 /* ElectrodeContainer.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = ElectrodeContainer.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 485009E61E2FF23B009B6610 /* ElectrodeContainer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ElectrodeContainer.h; sourceTree = ""; }; 485009EC1E2FF23C009B6610 /* ElectrodeContainerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = ElectrodeContainerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 485009F31E2FF23C009B6610 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 48500A961E2FF55B009B6610 /* ElectrodeReactNative.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ElectrodeReactNative.h; sourceTree = ""; }; 48500A971E2FF55B009B6610 /* ElectrodeReactNative.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ElectrodeReactNative.m; sourceTree = ""; wrapsLines = 0; }; + 52F46D58977B485394815675 /* ElectrodeBridgeTransceiver.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = ElectrodeBridgeTransceiver.m; path = ElectrodeReactNativeBridge/ElectrodeBridgeTransceiver.m; sourceTree = ""; }; + 5AC3A956EC79403A95AB7910 /* ElectrodeBridgeTransaction.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = ElectrodeBridgeTransaction.h; path = ElectrodeReactNativeBridge/ElectrodeBridgeTransaction.h; sourceTree = ""; }; + 5AE763729FC34F21B549F7EB /* ElectrodeRequestHandlerProcessor.swift */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = ElectrodeRequestHandlerProcessor.swift; path = ElectrodeReactNativeBridge/ElectrodeRequestHandlerProcessor.swift; sourceTree = ""; }; + 5B284BFE694E4FB1BB82AE99 /* ElectrodeLogger.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = ElectrodeLogger.m; path = ElectrodeReactNativeBridge/ElectrodeLogger.m; sourceTree = ""; }; + 5E3705B892644A11A1F69223 /* ElectrodeBridgeMessage.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = ElectrodeBridgeMessage.h; path = ElectrodeReactNativeBridge/ElectrodeBridgeMessage.h; sourceTree = ""; }; + 5F5E4BA02D7724C410BD90CD /* Pods-ElectrodeContainer.qadeployment.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ElectrodeContainer.qadeployment.xcconfig"; path = "Target Support Files/Pods-ElectrodeContainer/Pods-ElectrodeContainer.qadeployment.xcconfig"; sourceTree = ""; }; + 619E71C4CE2D4B7D91B6A21F /* ElectrodeRequestDispatcher.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = ElectrodeRequestDispatcher.m; path = ElectrodeReactNativeBridge/ElectrodeRequestDispatcher.m; sourceTree = ""; }; + 630482CCD67B829695380E82 /* libPods-ElectrodeContainer.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ElectrodeContainer.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 681DABD9DA4C482787D4F9C4 /* ElectrodeRequestRegistrar.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = ElectrodeRequestRegistrar.m; path = ElectrodeReactNativeBridge/ElectrodeRequestRegistrar.m; sourceTree = ""; }; + 6BDD80B00B5248749F26FA54 /* ElectrodeBridgeEvent.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = ElectrodeBridgeEvent.m; path = ElectrodeReactNativeBridge/ElectrodeBridgeEvent.m; sourceTree = ""; }; + 7077B909325A452AB2319728 /* Person.swift */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = Person.swift; path = APIs/Person.swift; sourceTree = ""; }; + 7856A0501FB94926A7C27C13 /* ElectrodeBridgeHolder.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = ElectrodeBridgeHolder.h; path = ElectrodeReactNativeBridge/ElectrodeBridgeHolder.h; sourceTree = ""; }; + 8396928250284A54A3422F4D /* Bridgeable.swift */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = Bridgeable.swift; path = ElectrodeReactNativeBridge/Bridgeable.swift; sourceTree = ""; }; + 85C170A0724C47C6838951A4 /* ElectrodeBridgeHolder.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = ElectrodeBridgeHolder.m; path = ElectrodeReactNativeBridge/ElectrodeBridgeHolder.m; sourceTree = ""; }; + 88FE7758B4A0409F88A4B097 /* ElectrodeBridgeRequest.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = ElectrodeBridgeRequest.h; path = ElectrodeReactNativeBridge/ElectrodeBridgeRequest.h; sourceTree = ""; }; + 8AE679C7D74D4CEEBD3637DD /* ElectrodeBridgeTransceiver_Internal.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = ElectrodeBridgeTransceiver_Internal.h; path = ElectrodeReactNativeBridge/ElectrodeBridgeTransceiver_Internal.h; sourceTree = ""; }; 968333D51E54E3470031C565 /* ElectrodeBridgeDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ElectrodeBridgeDelegate.h; sourceTree = ""; }; 968333D61E54E3470031C565 /* ElectrodeBridgeDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ElectrodeBridgeDelegate.m; sourceTree = ""; }; - 22CB683D20C9C46A0031A349 /* Project-QADeployment.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "Project-QADeployment.xcconfig"; sourceTree = ""; }; - 22CB683E20C9C46A0031A349 /* Project-Release.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "Project-Release.xcconfig"; sourceTree = ""; }; - 22CB684020C9C46A0031A349 /* ElectrodeContainer-QADeployment.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "ElectrodeContainer-QADeployment.xcconfig"; sourceTree = ""; }; - 22CB684120C9C46A0031A349 /* ElectrodeContainer-Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "ElectrodeContainer-Debug.xcconfig"; sourceTree = ""; }; - 22CB684220C9C46A0031A349 /* ElectrodeContainer-Release.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "ElectrodeContainer-Release.xcconfig"; sourceTree = ""; }; - 22CB684420C9C46A0031A349 /* ElectrodeContainerTests-Release.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "ElectrodeContainerTests-Release.xcconfig"; sourceTree = ""; }; - 22CB684620C9C46A0031A349 /* ElectrodeContainerTests-QADeployment.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "ElectrodeContainerTests-QADeployment.xcconfig"; sourceTree = ""; }; - 22CB684720C9C46A0031A349 /* Project-Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "Project-Debug.xcconfig"; sourceTree = ""; }; - 22CB684820C9C46B0031A349 /* ElectrodeContainerTests-Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "ElectrodeContainerTests-Debug.xcconfig"; sourceTree = ""; }; - DA42DF5C233C1B0500046338 /* ERNDevSettingsViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ERNDevSettingsViewController.h; sourceTree = ""; }; + 979A4DC3B20A4ED3870D5A6B /* ElectrodeUtilities.swift */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = ElectrodeUtilities.swift; path = ElectrodeReactNativeBridge/ElectrodeUtilities.swift; sourceTree = ""; }; + 9B29D93ED74C4B7585A20891 /* NavigationRequests.swift */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = NavigationRequests.swift; path = APIs/NavigationRequests.swift; sourceTree = ""; }; + 9FC726E222D5482EA525131D /* MoviesRequests.swift */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = MoviesRequests.swift; path = APIs/MoviesRequests.swift; sourceTree = ""; }; + A251F258DF5B4C1C95F56580 /* ElectrodeBridgeRequest.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = ElectrodeBridgeRequest.m; path = ElectrodeReactNativeBridge/ElectrodeBridgeRequest.m; sourceTree = ""; }; + A5CBCDDB46D94C00BFFAC7EB /* ElectrodeBridgeResponse.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = ElectrodeBridgeResponse.h; path = ElectrodeReactNativeBridge/ElectrodeBridgeResponse.h; sourceTree = ""; }; + A5F4E7F49A1D4DBC943D7C23 /* Synopsis.swift */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = Synopsis.swift; path = APIs/Synopsis.swift; sourceTree = ""; }; + A6FFDDFBDF48428AA8E4F676 /* ElectrodeBridgeTransaction.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = ElectrodeBridgeTransaction.m; path = ElectrodeReactNativeBridge/ElectrodeBridgeTransaction.m; sourceTree = ""; }; + AAFBDC3A8B234DAFBCA67F24 /* ElectrodeEventDispatcher.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = ElectrodeEventDispatcher.m; path = ElectrodeReactNativeBridge/ElectrodeEventDispatcher.m; sourceTree = ""; }; + BD9CEF6A5526453B89F073CD /* Processor.swift */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = Processor.swift; path = ElectrodeReactNativeBridge/Processor.swift; sourceTree = ""; }; + BF74EE155FD246BC87CD5342 /* ElectrodeBridgeTransceiver.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = ElectrodeBridgeTransceiver.h; path = ElectrodeReactNativeBridge/ElectrodeBridgeTransceiver.h; sourceTree = ""; }; + C324BAAB417642A8A9564677 /* ElectrodeBridgeMessage.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = ElectrodeBridgeMessage.m; path = ElectrodeReactNativeBridge/ElectrodeBridgeMessage.m; sourceTree = ""; }; + C387FAAD3C344484A06CB501 /* EventProcessor.swift */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = EventProcessor.swift; path = ElectrodeReactNativeBridge/EventProcessor.swift; sourceTree = ""; }; + C6E01413FEB41C8ACAFF3A92 /* Pods-ElectrodeContainer.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ElectrodeContainer.debug.xcconfig"; path = "Target Support Files/Pods-ElectrodeContainer/Pods-ElectrodeContainer.debug.xcconfig"; sourceTree = ""; }; + CBBF97282517407E9443B894 /* ElectrodeBridgeFailureMessage.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = ElectrodeBridgeFailureMessage.h; path = ElectrodeReactNativeBridge/ElectrodeBridgeFailureMessage.h; sourceTree = ""; }; + DA42DF59233C1B0500046338 /* ElectrodeBundle.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ElectrodeBundle.m; sourceTree = ""; }; DA42DF5A233C1B0500046338 /* ERNDevSettingsViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ERNDevSettingsViewController.m; sourceTree = ""; }; DA42DF5B233C1B0500046338 /* ElectrodeBundle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ElectrodeBundle.h; sourceTree = ""; }; - DA42DF59233C1B0500046338 /* ElectrodeBundle.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ElectrodeBundle.m; sourceTree = ""; }; - 06DD4D0CC95B4DD0A973FFE2 /* React.xcodeproj */ = {isa = PBXFileReference; name = "React.xcodeproj"; path = "ReactNative/React/React.xcodeproj"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; }; - 5ED3A951750B428BB8E6CA89 /* libReact.a */ = {isa = PBXFileReference; name = "libReact.a"; path = "libReact.a"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; }; - 32B49CCAC0AA41A392F4CEF9 /* RCTActionSheet.xcodeproj */ = {isa = PBXFileReference; name = "RCTActionSheet.xcodeproj"; path = "ReactNative/ActionSheetIOS/RCTActionSheet.xcodeproj"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; }; - C126D15D1E2E409CA863AB1E /* libRCTActionSheet.a */ = {isa = PBXFileReference; name = "libRCTActionSheet.a"; path = "libRCTActionSheet.a"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; }; - F0CEA5244D23472FBB053881 /* RCTImage.xcodeproj */ = {isa = PBXFileReference; name = "RCTImage.xcodeproj"; path = "ReactNative/Image/RCTImage.xcodeproj"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; }; - 98DCB8603FCF4513A1E7EA92 /* libRCTImage.a */ = {isa = PBXFileReference; name = "libRCTImage.a"; path = "libRCTImage.a"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; }; - AEBC48FB4E2843618DC0B44A /* RCTAnimation.xcodeproj */ = {isa = PBXFileReference; name = "RCTAnimation.xcodeproj"; path = "ReactNative/NativeAnimation/RCTAnimation.xcodeproj"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; }; - 25E005C6E21E409F9CE36253 /* libRCTAnimation.a */ = {isa = PBXFileReference; name = "libRCTAnimation.a"; path = "libRCTAnimation.a"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; }; - 6F813A4DBEA74ECB9E36F1FD /* RCTText.xcodeproj */ = {isa = PBXFileReference; name = "RCTText.xcodeproj"; path = "ReactNative/Text/RCTText.xcodeproj"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; }; - 2F7ED4D7F0CD4806ADABEB46 /* libRCTText.a */ = {isa = PBXFileReference; name = "libRCTText.a"; path = "libRCTText.a"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; }; - F2EB131A9CA947E195E75631 /* RCTWebSocket.xcodeproj */ = {isa = PBXFileReference; name = "RCTWebSocket.xcodeproj"; path = "ReactNative/WebSocket/RCTWebSocket.xcodeproj"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; }; - 47C8477872D644E980ABFD6F /* libRCTWebSocket.a */ = {isa = PBXFileReference; name = "libRCTWebSocket.a"; path = "libRCTWebSocket.a"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; }; - AF5C40C5EC974064B107A305 /* RCTLinking.xcodeproj */ = {isa = PBXFileReference; name = "RCTLinking.xcodeproj"; path = "ReactNative/LinkingIOS/RCTLinking.xcodeproj"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; }; - C198140C8F37459D9C7510A3 /* libRCTLinking.a */ = {isa = PBXFileReference; name = "libRCTLinking.a"; path = "libRCTLinking.a"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; }; - CAC45CD88B4144D8A512D336 /* RCTNetwork.xcodeproj */ = {isa = PBXFileReference; name = "RCTNetwork.xcodeproj"; path = "ReactNative/Network/RCTNetwork.xcodeproj"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; }; - 54F8A0713F3B4FC2B0DA46DC /* libRCTNetwork.a */ = {isa = PBXFileReference; name = "libRCTNetwork.a"; path = "libRCTNetwork.a"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; }; - 76FC781521AB4E0CB0D8E857 /* RCTSettings.xcodeproj */ = {isa = PBXFileReference; name = "RCTSettings.xcodeproj"; path = "ReactNative/Settings/RCTSettings.xcodeproj"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; }; - BEFA433831D44E2E82B41EEC /* libRCTSettings.a */ = {isa = PBXFileReference; name = "libRCTSettings.a"; path = "libRCTSettings.a"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; }; - 97C62BBE942C4D0294E46807 /* RCTVibration.xcodeproj */ = {isa = PBXFileReference; name = "RCTVibration.xcodeproj"; path = "ReactNative/Vibration/RCTVibration.xcodeproj"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; }; - 16EA5718B773465B9638D8B2 /* libRCTVibration.a */ = {isa = PBXFileReference; name = "libRCTVibration.a"; path = "libRCTVibration.a"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; }; - CF320D58E65E48DEA8A1FED8 /* RCTCameraRoll.xcodeproj */ = {isa = PBXFileReference; name = "RCTCameraRoll.xcodeproj"; path = "ReactNative/CameraRoll/RCTCameraRoll.xcodeproj"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; }; - 6A190D54092B4F7A88E61255 /* libRCTCameraRoll.a */ = {isa = PBXFileReference; name = "libRCTCameraRoll.a"; path = "libRCTCameraRoll.a"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; }; - 9FBB36A3959A4F6989B8E9EC /* ART.xcodeproj */ = {isa = PBXFileReference; name = "ART.xcodeproj"; path = "ReactNative/ART/ART.xcodeproj"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; }; - 3695C861612D4A3C85D781F0 /* libART.a */ = {isa = PBXFileReference; name = "libART.a"; path = "libART.a"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; }; - AED5B5B7E65643D2A57465D6 /* JavaScriptCore.framework */ = {isa = PBXFileReference; name = "JavaScriptCore.framework"; path = "/System/Library/Frameworks/JavaScriptCore.framework"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.framework; explicitFileType = undefined; includeInIndex = 0; }; - 08FFD0DAF22248D884C37AAD /* ElectrodeObject.swift */ = {isa = PBXFileReference; name = "ElectrodeObject.swift"; path = "ElectrodeReactNativeBridge/ElectrodeObject.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; - E4EAF02D2B714D43BB65BC77 /* Bridgeable.swift */ = {isa = PBXFileReference; name = "Bridgeable.swift"; path = "ElectrodeReactNativeBridge/Bridgeable.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; - 6E4C56715CFA40638B3715C3 /* ElectrodeRequestHandlerProcessor.swift */ = {isa = PBXFileReference; name = "ElectrodeRequestHandlerProcessor.swift"; path = "ElectrodeReactNativeBridge/ElectrodeRequestHandlerProcessor.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; - CDA382E8E808474494142F5B /* ElectrodeRequestProcessor.swift */ = {isa = PBXFileReference; name = "ElectrodeRequestProcessor.swift"; path = "ElectrodeReactNativeBridge/ElectrodeRequestProcessor.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; - EAA433774AC54C209E835624 /* ElectrodeUtilities.swift */ = {isa = PBXFileReference; name = "ElectrodeUtilities.swift"; path = "ElectrodeReactNativeBridge/ElectrodeUtilities.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; - DC55805A1EC445D297645640 /* EventListenerProcessor.swift */ = {isa = PBXFileReference; name = "EventListenerProcessor.swift"; path = "ElectrodeReactNativeBridge/EventListenerProcessor.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; - B4AD40B6EC9D41FB8E799E19 /* EventProcessor.swift */ = {isa = PBXFileReference; name = "EventProcessor.swift"; path = "ElectrodeReactNativeBridge/EventProcessor.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; - B537297982B4480FAF9C912A /* Processor.swift */ = {isa = PBXFileReference; name = "Processor.swift"; path = "ElectrodeReactNativeBridge/Processor.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; - 237A7FF2B4DF443B83389690 /* None.swift */ = {isa = PBXFileReference; name = "None.swift"; path = "ElectrodeReactNativeBridge/None.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; }; - 473ECB8B572748EC9FEF42DF /* ElectrodeBridgeEvent.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeEvent.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeEvent.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - 9A1D30B08C504A9B81CDA022 /* ElectrodeBridgeFailureMessage.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeFailureMessage.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeFailureMessage.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - D5C7D0FAF6C449DDB8CDA453 /* ElectrodeBridgeHolder.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeHolder.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeHolder.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - 5524D222CDDA43CC955A5D1C /* ElectrodeBridgeMessage.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeMessage.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeMessage.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - 7E6F66A5FBB249DDBC970351 /* ElectrodeBridgeProtocols.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeProtocols.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeProtocols.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - DF53EAEB4BAD4CF48FFD7DCD /* ElectrodeBridgeRequest.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeRequest.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeRequest.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - 5F64F0B668C046F5A44B5309 /* ElectrodeBridgeResponse.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeResponse.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeResponse.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - 88B003207E33479884EF4643 /* ElectrodeBridgeTransaction.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeTransaction.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeTransaction.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - 55C40EA69C5D4500A1188CF5 /* ElectrodeBridgeTransceiver.m */ = {isa = PBXFileReference; name = "ElectrodeBridgeTransceiver.m"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeTransceiver.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - 44EAAD76553E4AC6AD70DA9E /* ElectrodeEventDispatcher.m */ = {isa = PBXFileReference; name = "ElectrodeEventDispatcher.m"; path = "ElectrodeReactNativeBridge/ElectrodeEventDispatcher.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - CDC3F387E29049C09355C259 /* ElectrodeEventRegistrar.m */ = {isa = PBXFileReference; name = "ElectrodeEventRegistrar.m"; path = "ElectrodeReactNativeBridge/ElectrodeEventRegistrar.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - 257C8ED76F6C4D8196C1677F /* ElectrodeRequestDispatcher.m */ = {isa = PBXFileReference; name = "ElectrodeRequestDispatcher.m"; path = "ElectrodeReactNativeBridge/ElectrodeRequestDispatcher.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - D64391D6C05349388BB9241D /* ElectrodeRequestRegistrar.m */ = {isa = PBXFileReference; name = "ElectrodeRequestRegistrar.m"; path = "ElectrodeReactNativeBridge/ElectrodeRequestRegistrar.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - EE6EB56E3E36406A9CE5E93E /* ElectrodeLogger.m */ = {isa = PBXFileReference; name = "ElectrodeLogger.m"; path = "ElectrodeReactNativeBridge/ElectrodeLogger.m"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; - 556BF10EA57A4029B2F7BC20 /* ElectrodeBridgeEvent.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeEvent.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeEvent.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - 8A013AE5513944A7A4530F26 /* ElectrodeBridgeFailureMessage.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeFailureMessage.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeFailureMessage.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - C0A036D0996C4BEDBD495702 /* ElectrodeBridgeHolder.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeHolder.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeHolder.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - D41EED3E7EC148EDB72B19DF /* ElectrodeBridgeMessage.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeMessage.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeMessage.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - 987222A2A9414B2CA76166ED /* ElectrodeBridgeProtocols.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeProtocols.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeProtocols.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - FA031A7F08184BD0BD145BDF /* ElectrodeBridgeRequest.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeRequest.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeRequest.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - B5F5B248CCC0468283815273 /* ElectrodeBridgeTransaction.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeTransaction.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeTransaction.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - A53E0B7218704A50A0FA440F /* ElectrodeBridgeTransceiver.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeTransceiver.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeTransceiver.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - 67D6F6C8918940DA9B039A31 /* ElectrodeBridgeTransceiver_Internal.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeTransceiver_Internal.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeTransceiver_Internal.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - 03C77DA717FE4EA5826229AD /* ElectrodeEventDispatcher.h */ = {isa = PBXFileReference; name = "ElectrodeEventDispatcher.h"; path = "ElectrodeReactNativeBridge/ElectrodeEventDispatcher.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - 96374FC7C0CA4737B92C7618 /* ElectrodeEventRegistrar.h */ = {isa = PBXFileReference; name = "ElectrodeEventRegistrar.h"; path = "ElectrodeReactNativeBridge/ElectrodeEventRegistrar.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - A942868D372C426A82FEF6A9 /* ElectrodeRequestDispatcher.h */ = {isa = PBXFileReference; name = "ElectrodeRequestDispatcher.h"; path = "ElectrodeReactNativeBridge/ElectrodeRequestDispatcher.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - 25A315AEFA9D4B298DB2859F /* ElectrodeRequestRegistrar.h */ = {isa = PBXFileReference; name = "ElectrodeRequestRegistrar.h"; path = "ElectrodeReactNativeBridge/ElectrodeRequestRegistrar.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - 05BB5029E0164304B2CBEEA5 /* ElectrodeReactNativeBridge.h */ = {isa = PBXFileReference; name = "ElectrodeReactNativeBridge.h"; path = "ElectrodeReactNativeBridge/ElectrodeReactNativeBridge.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - 7D80C33A9A98451B85A45161 /* ElectrodeBridgeResponse.h */ = {isa = PBXFileReference; name = "ElectrodeBridgeResponse.h"; path = "ElectrodeReactNativeBridge/ElectrodeBridgeResponse.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - 33DBEDD4CF9A43839CA5026B /* ElectrodeLogger.h */ = {isa = PBXFileReference; name = "ElectrodeLogger.h"; path = "ElectrodeReactNativeBridge/ElectrodeLogger.h"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; - 4818EFB7B2BB43339CA5D69D /* BirthYear.swift */ = {isa = PBXFileReference; name = "BirthYear.swift"; path = "APIs/BirthYear.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; fileRef = 4818EFB7B2BB43339CA5D69D; basename = BirthYear.swift; target = undefined; uuid = 0BF96A3C96804CF28076B0B5; settings = {ATTRIBUTES = (Public, ); }; }; - 1D15C390706A4386AEB41F87 /* Movie.swift */ = {isa = PBXFileReference; name = "Movie.swift"; path = "APIs/Movie.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; fileRef = 1D15C390706A4386AEB41F87; basename = Movie.swift; target = undefined; uuid = 6F99AFE190F44852ACAFF9B5; settings = {ATTRIBUTES = (Public, ); }; }; - 80B2BA1DEA064B2D9C7ADB33 /* MoviesAPI.swift */ = {isa = PBXFileReference; name = "MoviesAPI.swift"; path = "APIs/MoviesAPI.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; fileRef = 80B2BA1DEA064B2D9C7ADB33; basename = MoviesAPI.swift; target = undefined; uuid = 3197CD8ED33149DCB3C3B706; settings = {ATTRIBUTES = (Public, ); }; }; - D6A6F3E522D747F2B03CD2EF /* MoviesRequests.swift */ = {isa = PBXFileReference; name = "MoviesRequests.swift"; path = "APIs/MoviesRequests.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; fileRef = D6A6F3E522D747F2B03CD2EF; basename = MoviesRequests.swift; target = undefined; uuid = CFD278BCF3C241EF982EEEAD; settings = {ATTRIBUTES = (Public, ); }; }; - 04A40296F8F24C7F9FF50CC0 /* Person.swift */ = {isa = PBXFileReference; name = "Person.swift"; path = "APIs/Person.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; fileRef = 04A40296F8F24C7F9FF50CC0; basename = Person.swift; target = undefined; uuid = 867E7DCD7F374452BEC7AEC1; settings = {ATTRIBUTES = (Public, ); }; }; - 0BC6AF23F1DF4912A2B30DCF /* Synopsis.swift */ = {isa = PBXFileReference; name = "Synopsis.swift"; path = "APIs/Synopsis.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; fileRef = 0BC6AF23F1DF4912A2B30DCF; basename = Synopsis.swift; target = undefined; uuid = A3C2BCC6458B4C16A0344CB5; settings = {ATTRIBUTES = (Public, ); }; }; - D5148CC5312146B3A5DA4E52 /* NavigateData.swift */ = {isa = PBXFileReference; name = "NavigateData.swift"; path = "APIs/NavigateData.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; fileRef = D5148CC5312146B3A5DA4E52; basename = NavigateData.swift; target = undefined; uuid = 381098FF0E2E44BB8DE8C6EC; settings = {ATTRIBUTES = (Public, ); }; }; - 646DC46C961343ACBC6D9584 /* NavigationAPI.swift */ = {isa = PBXFileReference; name = "NavigationAPI.swift"; path = "APIs/NavigationAPI.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; fileRef = 646DC46C961343ACBC6D9584; basename = NavigationAPI.swift; target = undefined; uuid = 00D3C31A8A164150BF4989D4; settings = {ATTRIBUTES = (Public, ); }; }; - DB98690950684B44A592F42E /* NavigationRequests.swift */ = {isa = PBXFileReference; name = "NavigationRequests.swift"; path = "APIs/NavigationRequests.swift"; sourceTree = ""; fileEncoding = 4; lastKnownFileType = sourcecode.swift; explicitFileType = undefined; includeInIndex = 0; fileRef = DB98690950684B44A592F42E; basename = NavigationRequests.swift; target = undefined; uuid = AE0BC3701DD544969AFF0133; settings = {ATTRIBUTES = (Public, ); }; }; + DA42DF5C233C1B0500046338 /* ERNDevSettingsViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ERNDevSettingsViewController.h; sourceTree = ""; }; + E5E4619D2D184FFA876D4D94 /* EventListenerProcessor.swift */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = EventListenerProcessor.swift; path = ElectrodeReactNativeBridge/EventListenerProcessor.swift; sourceTree = ""; }; + E8AC6C40C4FF4195ACFCBA0B /* Movie.swift */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = Movie.swift; path = APIs/Movie.swift; sourceTree = ""; }; + EC7E76A787024BA1BCCE7A20 /* ElectrodeBridgeProtocols.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = ElectrodeBridgeProtocols.h; path = ElectrodeReactNativeBridge/ElectrodeBridgeProtocols.h; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -394,19 +193,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 4F4A27C4782142EBBF6415E7 /* libReact.a in Frameworks */, - 3519BD7DC4F34C369DD6B600 /* libRCTActionSheet.a in Frameworks */, - FD0C4F5D22E3491F848F551E /* libRCTImage.a in Frameworks */, - 55F211A88799423A9A1C9370 /* libRCTAnimation.a in Frameworks */, - F081F7619FDE41F68FB129E6 /* libRCTText.a in Frameworks */, - 15FA33EDCC084C8BA696D730 /* libRCTWebSocket.a in Frameworks */, - 185CFC9438064B7BB6ABD1DD /* libRCTLinking.a in Frameworks */, - D0C969D3F60447399FC0E952 /* libRCTNetwork.a in Frameworks */, - 8CD222FC3617482C924DC7C7 /* libRCTSettings.a in Frameworks */, - A0BD1711F843410BAF6B440F /* libRCTVibration.a in Frameworks */, - B80A6FDD51F14473951D1356 /* libRCTCameraRoll.a in Frameworks */, - DB3C3E0E940A418D8EF8050A /* libART.a in Frameworks */, - F397BD68D6E4480AAC53DA0E /* JavaScriptCore.framework in Frameworks */, + 87F4755DA0589C7A6D506E60 /* libPods-ElectrodeContainer.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -421,37 +208,20 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 22CB67F120C9C44C0031A349 /* Config */ = { + 11DC32FD6D15A25780DC74E8 /* Pods */ = { isa = PBXGroup; children = ( - 22CB684120C9C46A0031A349 /* ElectrodeContainer-Debug.xcconfig */, - 22CB684020C9C46A0031A349 /* ElectrodeContainer-QADeployment.xcconfig */, - 22CB684220C9C46A0031A349 /* ElectrodeContainer-Release.xcconfig */, - 22CB684820C9C46B0031A349 /* ElectrodeContainerTests-Debug.xcconfig */, - 22CB684620C9C46A0031A349 /* ElectrodeContainerTests-QADeployment.xcconfig */, - 22CB684420C9C46A0031A349 /* ElectrodeContainerTests-Release.xcconfig */, - 22CB684720C9C46A0031A349 /* Project-Debug.xcconfig */, - 22CB683D20C9C46A0031A349 /* Project-QADeployment.xcconfig */, - 22CB683E20C9C46A0031A349 /* Project-Release.xcconfig */, + C6E01413FEB41C8ACAFF3A92 /* Pods-ElectrodeContainer.debug.xcconfig */, + 5F5E4BA02D7724C410BD90CD /* Pods-ElectrodeContainer.qadeployment.xcconfig */, + 2D35AB33C824A1A8A3FCB538 /* Pods-ElectrodeContainer.release.xcconfig */, ); - path = Config; + name = Pods; + path = Pods; sourceTree = ""; }; 226325CE1E80594F00CD0B10 /* ReactNative */ = { isa = PBXGroup; children = ( - 06DD4D0CC95B4DD0A973FFE2 /* React.xcodeproj */, - 32B49CCAC0AA41A392F4CEF9 /* RCTActionSheet.xcodeproj */, - F0CEA5244D23472FBB053881 /* RCTImage.xcodeproj */, - AEBC48FB4E2843618DC0B44A /* RCTAnimation.xcodeproj */, - 6F813A4DBEA74ECB9E36F1FD /* RCTText.xcodeproj */, - F2EB131A9CA947E195E75631 /* RCTWebSocket.xcodeproj */, - AF5C40C5EC974064B107A305 /* RCTLinking.xcodeproj */, - CAC45CD88B4144D8A512D336 /* RCTNetwork.xcodeproj */, - 76FC781521AB4E0CB0D8E857 /* RCTSettings.xcodeproj */, - 97C62BBE942C4D0294E46807 /* RCTVibration.xcodeproj */, - CF320D58E65E48DEA8A1FED8 /* RCTCameraRoll.xcodeproj */, - 9FBB36A3959A4F6989B8E9EC /* ART.xcodeproj */, ); name = ReactNative; sourceTree = ""; @@ -459,61 +229,77 @@ 22C096A91EA0893F00E1486A /* APIs */ = { isa = PBXGroup; children = ( - 4818EFB7B2BB43339CA5D69D /* BirthYear.swift */, - 1D15C390706A4386AEB41F87 /* Movie.swift */, - 80B2BA1DEA064B2D9C7ADB33 /* MoviesAPI.swift */, - D6A6F3E522D747F2B03CD2EF /* MoviesRequests.swift */, - 04A40296F8F24C7F9FF50CC0 /* Person.swift */, - 0BC6AF23F1DF4912A2B30DCF /* Synopsis.swift */, - D5148CC5312146B3A5DA4E52 /* NavigateData.swift */, - 646DC46C961343ACBC6D9584 /* NavigationAPI.swift */, - DB98690950684B44A592F42E /* NavigationRequests.swift */, + 1AF949A0EDF34E148E8719B5 /* BirthYear.swift */, + E8AC6C40C4FF4195ACFCBA0B /* Movie.swift */, + 3D88153E16FE457989638F39 /* MoviesAPI.swift */, + 9FC726E222D5482EA525131D /* MoviesRequests.swift */, + 7077B909325A452AB2319728 /* Person.swift */, + A5F4E7F49A1D4DBC943D7C23 /* Synopsis.swift */, + 0CF6BAC9C399403687C44C2E /* NavigateData.swift */, + 354F5BA8E28748699BB4448B /* NavigationAPI.swift */, + 9B29D93ED74C4B7585A20891 /* NavigationRequests.swift */, ); name = APIs; sourceTree = ""; }; + 22CB67F120C9C44C0031A349 /* Config */ = { + isa = PBXGroup; + children = ( + 22CB684120C9C46A0031A349 /* ElectrodeContainer-Debug.xcconfig */, + 22CB684020C9C46A0031A349 /* ElectrodeContainer-QADeployment.xcconfig */, + 22CB684220C9C46A0031A349 /* ElectrodeContainer-Release.xcconfig */, + 22CB684820C9C46B0031A349 /* ElectrodeContainerTests-Debug.xcconfig */, + 22CB684620C9C46A0031A349 /* ElectrodeContainerTests-QADeployment.xcconfig */, + 22CB684420C9C46A0031A349 /* ElectrodeContainerTests-Release.xcconfig */, + 22CB684720C9C46A0031A349 /* Project-Debug.xcconfig */, + 22CB683D20C9C46A0031A349 /* Project-QADeployment.xcconfig */, + 22CB683E20C9C46A0031A349 /* Project-Release.xcconfig */, + ); + path = Config; + sourceTree = ""; + }; 22FD4D1E1E96ECBB00FC81DB /* ElectrodeReactNativeBridge */ = { isa = PBXGroup; children = ( - 08FFD0DAF22248D884C37AAD /* ElectrodeObject.swift */, - E4EAF02D2B714D43BB65BC77 /* Bridgeable.swift */, - 6E4C56715CFA40638B3715C3 /* ElectrodeRequestHandlerProcessor.swift */, - CDA382E8E808474494142F5B /* ElectrodeRequestProcessor.swift */, - EAA433774AC54C209E835624 /* ElectrodeUtilities.swift */, - DC55805A1EC445D297645640 /* EventListenerProcessor.swift */, - B4AD40B6EC9D41FB8E799E19 /* EventProcessor.swift */, - B537297982B4480FAF9C912A /* Processor.swift */, - 237A7FF2B4DF443B83389690 /* None.swift */, - 473ECB8B572748EC9FEF42DF /* ElectrodeBridgeEvent.m */, - 9A1D30B08C504A9B81CDA022 /* ElectrodeBridgeFailureMessage.m */, - D5C7D0FAF6C449DDB8CDA453 /* ElectrodeBridgeHolder.m */, - 5524D222CDDA43CC955A5D1C /* ElectrodeBridgeMessage.m */, - 7E6F66A5FBB249DDBC970351 /* ElectrodeBridgeProtocols.m */, - DF53EAEB4BAD4CF48FFD7DCD /* ElectrodeBridgeRequest.m */, - 5F64F0B668C046F5A44B5309 /* ElectrodeBridgeResponse.m */, - 88B003207E33479884EF4643 /* ElectrodeBridgeTransaction.m */, - 55C40EA69C5D4500A1188CF5 /* ElectrodeBridgeTransceiver.m */, - 44EAAD76553E4AC6AD70DA9E /* ElectrodeEventDispatcher.m */, - CDC3F387E29049C09355C259 /* ElectrodeEventRegistrar.m */, - 257C8ED76F6C4D8196C1677F /* ElectrodeRequestDispatcher.m */, - D64391D6C05349388BB9241D /* ElectrodeRequestRegistrar.m */, - EE6EB56E3E36406A9CE5E93E /* ElectrodeLogger.m */, - 556BF10EA57A4029B2F7BC20 /* ElectrodeBridgeEvent.h */, - 8A013AE5513944A7A4530F26 /* ElectrodeBridgeFailureMessage.h */, - C0A036D0996C4BEDBD495702 /* ElectrodeBridgeHolder.h */, - D41EED3E7EC148EDB72B19DF /* ElectrodeBridgeMessage.h */, - 987222A2A9414B2CA76166ED /* ElectrodeBridgeProtocols.h */, - FA031A7F08184BD0BD145BDF /* ElectrodeBridgeRequest.h */, - B5F5B248CCC0468283815273 /* ElectrodeBridgeTransaction.h */, - A53E0B7218704A50A0FA440F /* ElectrodeBridgeTransceiver.h */, - 67D6F6C8918940DA9B039A31 /* ElectrodeBridgeTransceiver_Internal.h */, - 03C77DA717FE4EA5826229AD /* ElectrodeEventDispatcher.h */, - 96374FC7C0CA4737B92C7618 /* ElectrodeEventRegistrar.h */, - A942868D372C426A82FEF6A9 /* ElectrodeRequestDispatcher.h */, - 25A315AEFA9D4B298DB2859F /* ElectrodeRequestRegistrar.h */, - 05BB5029E0164304B2CBEEA5 /* ElectrodeReactNativeBridge.h */, - 7D80C33A9A98451B85A45161 /* ElectrodeBridgeResponse.h */, - 33DBEDD4CF9A43839CA5026B /* ElectrodeLogger.h */, + 25330FE15865466D80771EF2 /* ElectrodeObject.swift */, + 8396928250284A54A3422F4D /* Bridgeable.swift */, + 5AE763729FC34F21B549F7EB /* ElectrodeRequestHandlerProcessor.swift */, + 1CB34DE240CA4EB384455CCF /* ElectrodeRequestProcessor.swift */, + 979A4DC3B20A4ED3870D5A6B /* ElectrodeUtilities.swift */, + E5E4619D2D184FFA876D4D94 /* EventListenerProcessor.swift */, + C387FAAD3C344484A06CB501 /* EventProcessor.swift */, + BD9CEF6A5526453B89F073CD /* Processor.swift */, + 024EB9DA0D9C44CCA3D2423C /* None.swift */, + 6BDD80B00B5248749F26FA54 /* ElectrodeBridgeEvent.m */, + 0C9F9C92A17E412581F0D56A /* ElectrodeBridgeFailureMessage.m */, + 85C170A0724C47C6838951A4 /* ElectrodeBridgeHolder.m */, + C324BAAB417642A8A9564677 /* ElectrodeBridgeMessage.m */, + 32B9445C74F6424699CAEF4B /* ElectrodeBridgeProtocols.m */, + A251F258DF5B4C1C95F56580 /* ElectrodeBridgeRequest.m */, + 0808E25422844634AF3A79CE /* ElectrodeBridgeResponse.m */, + A6FFDDFBDF48428AA8E4F676 /* ElectrodeBridgeTransaction.m */, + 52F46D58977B485394815675 /* ElectrodeBridgeTransceiver.m */, + AAFBDC3A8B234DAFBCA67F24 /* ElectrodeEventDispatcher.m */, + 245F0F6680CE4ACCA98EF7A9 /* ElectrodeEventRegistrar.m */, + 619E71C4CE2D4B7D91B6A21F /* ElectrodeRequestDispatcher.m */, + 681DABD9DA4C482787D4F9C4 /* ElectrodeRequestRegistrar.m */, + 5B284BFE694E4FB1BB82AE99 /* ElectrodeLogger.m */, + 18948178B97549C8873225C3 /* ElectrodeBridgeEvent.h */, + CBBF97282517407E9443B894 /* ElectrodeBridgeFailureMessage.h */, + 7856A0501FB94926A7C27C13 /* ElectrodeBridgeHolder.h */, + 5E3705B892644A11A1F69223 /* ElectrodeBridgeMessage.h */, + EC7E76A787024BA1BCCE7A20 /* ElectrodeBridgeProtocols.h */, + 88FE7758B4A0409F88A4B097 /* ElectrodeBridgeRequest.h */, + 5AC3A956EC79403A95AB7910 /* ElectrodeBridgeTransaction.h */, + BF74EE155FD246BC87CD5342 /* ElectrodeBridgeTransceiver.h */, + 8AE679C7D74D4CEEBD3637DD /* ElectrodeBridgeTransceiver_Internal.h */, + 0C1C69FAEBD24373B47DA44C /* ElectrodeEventDispatcher.h */, + 120E9428C9074030A01072ED /* ElectrodeEventRegistrar.h */, + 197557E5503B4FEB9F511ED1 /* ElectrodeRequestDispatcher.h */, + 27972EF3BD6E4767AE53F12C /* ElectrodeRequestRegistrar.h */, + 28C91A3D3D8F448C818F12B2 /* ElectrodeReactNativeBridge.h */, + A5CBCDDB46D94C00BFFAC7EB /* ElectrodeBridgeResponse.h */, + 168D3CF97D044D2688D7B112 /* ElectrodeLogger.h */, ); name = ElectrodeReactNativeBridge; sourceTree = ""; @@ -534,6 +320,7 @@ 485009E41E2FF23B009B6610 /* Products */, 485009FD1E2FF25D009B6610 /* Libraries */, 48500AA71E2FFA14009B6610 /* Frameworks */, + 11DC32FD6D15A25780DC74E8 /* Pods */, ); sourceTree = ""; }; @@ -565,8 +352,8 @@ 301CB9001F33F3450048C58B /* NSBundle+frameworkBundle.m */, 304000E72098E1F000BF751C /* ElectrodePluginConfig.h */, ); - path = ElectrodeContainer; name = ElectrodeContainer; + path = ElectrodeContainer; sourceTree = ""; }; 485009F01E2FF23C009B6610 /* ElectrodeContainerTests */ = { @@ -590,7 +377,7 @@ 48500AA71E2FFA14009B6610 /* Frameworks */ = { isa = PBXGroup; children = ( - AED5B5B7E65643D2A57465D6 /* JavaScriptCore.framework */, + 630482CCD67B829695380E82 /* libPods-ElectrodeContainer.a */, ); name = Frameworks; path = ElectrodeContainer/Frameworks; @@ -623,114 +410,6 @@ path = DevAssist; sourceTree = ""; }; - 3E92DC0FC01049B0B5B30226 /* Products */ = { - isa = PBXGroup; - children = ( - 5ED3A951750B428BB8E6CA89 /* libReact.a */, - ); - name = Products; - path = undefined; - sourceTree = ""; - }; - BFB64F3EADFA4AA2A1749DFE /* Products */ = { - isa = PBXGroup; - children = ( - C126D15D1E2E409CA863AB1E /* libRCTActionSheet.a */, - ); - name = Products; - path = undefined; - sourceTree = ""; - }; - D63033AABE0048B3A322E097 /* Products */ = { - isa = PBXGroup; - children = ( - 98DCB8603FCF4513A1E7EA92 /* libRCTImage.a */, - ); - name = Products; - path = undefined; - sourceTree = ""; - }; - 601ECD02C8614535A8149FF1 /* Products */ = { - isa = PBXGroup; - children = ( - 25E005C6E21E409F9CE36253 /* libRCTAnimation.a */, - ); - name = Products; - path = undefined; - sourceTree = ""; - }; - 0545126E5CAB4BC8A34A7F0E /* Products */ = { - isa = PBXGroup; - children = ( - 2F7ED4D7F0CD4806ADABEB46 /* libRCTText.a */, - ); - name = Products; - path = undefined; - sourceTree = ""; - }; - 5F0420A859F749778F0A66FC /* Products */ = { - isa = PBXGroup; - children = ( - 47C8477872D644E980ABFD6F /* libRCTWebSocket.a */, - ); - name = Products; - path = undefined; - sourceTree = ""; - }; - 5457FC68236B46BCBE7459C5 /* Products */ = { - isa = PBXGroup; - children = ( - C198140C8F37459D9C7510A3 /* libRCTLinking.a */, - ); - name = Products; - path = undefined; - sourceTree = ""; - }; - F64495A106194CD490370A14 /* Products */ = { - isa = PBXGroup; - children = ( - 54F8A0713F3B4FC2B0DA46DC /* libRCTNetwork.a */, - ); - name = Products; - path = undefined; - sourceTree = ""; - }; - 84BAAAC3D92D459998F4C1EB /* Products */ = { - isa = PBXGroup; - children = ( - BEFA433831D44E2E82B41EEC /* libRCTSettings.a */, - ); - name = Products; - path = undefined; - sourceTree = ""; - }; - BD12826E3E91406DB8675995 /* Products */ = { - isa = PBXGroup; - children = ( - 16EA5718B773465B9638D8B2 /* libRCTVibration.a */, - ); - name = Products; - path = undefined; - sourceTree = ""; - }; - AA33B86C25424C29B74E5350 /* Products */ = { - isa = PBXGroup; - children = ( - 6A190D54092B4F7A88E61255 /* libRCTCameraRoll.a */, - ); - name = Products; - path = undefined; - sourceTree = ""; - }; - B0241390320640CD9F3E04A9 /* Products */ = { - isa = PBXGroup; - children = ( - 3695C861612D4A3C85D781F0 /* libART.a */, - ); - name = Products; - path = undefined; - sourceTree = ""; - }; /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ @@ -746,31 +425,31 @@ 48500A981E2FF55B009B6610 /* ElectrodeReactNative.h in Headers */, DA42DF60233C1B0500046338 /* ERNDevSettingsViewController.h in Headers */, DA42DF5F233C1B0500046338 /* ElectrodeBundle.h in Headers */, - 81BA246BB7264706A169F154 /* ElectrodeBridgeEvent.h in Headers */, - 9B662834E71D4E3383C7BD51 /* ElectrodeBridgeFailureMessage.h in Headers */, - 800ED26306044BD09E6D888B /* ElectrodeBridgeHolder.h in Headers */, - D06D681493974109BFEC8A85 /* ElectrodeBridgeMessage.h in Headers */, - 8B033E129F564A9398723C04 /* ElectrodeBridgeProtocols.h in Headers */, - C13DF40906BA45C596F4CE19 /* ElectrodeBridgeRequest.h in Headers */, - 35687CD480FB46569567AB0D /* ElectrodeBridgeTransaction.h in Headers */, - 86340A71C57A4222B24BD144 /* ElectrodeBridgeTransceiver.h in Headers */, - 9D57A33173844B089F78DCF9 /* ElectrodeBridgeTransceiver_Internal.h in Headers */, - A6586C46060244C19109FA7D /* ElectrodeEventDispatcher.h in Headers */, - BC8F83D358904703998B19AF /* ElectrodeEventRegistrar.h in Headers */, - 6B465E763E1F4F389DE81D6F /* ElectrodeRequestDispatcher.h in Headers */, - 2D5B969C6A634D49AD9AEBE5 /* ElectrodeRequestRegistrar.h in Headers */, - E3C1F54A2D8B413A98E5E16B /* ElectrodeReactNativeBridge.h in Headers */, - A2DD9767E0AD4D9D9D2617EC /* ElectrodeBridgeResponse.h in Headers */, - 0ABF90BA7CBE483A9A4C329B /* ElectrodeLogger.h in Headers */, - 0BF96A3C96804CF28076B0B5 /* BirthYear.swift in Headers */, - 6F99AFE190F44852ACAFF9B5 /* Movie.swift in Headers */, - 3197CD8ED33149DCB3C3B706 /* MoviesAPI.swift in Headers */, - CFD278BCF3C241EF982EEEAD /* MoviesRequests.swift in Headers */, - 867E7DCD7F374452BEC7AEC1 /* Person.swift in Headers */, - A3C2BCC6458B4C16A0344CB5 /* Synopsis.swift in Headers */, - 381098FF0E2E44BB8DE8C6EC /* NavigateData.swift in Headers */, - 00D3C31A8A164150BF4989D4 /* NavigationAPI.swift in Headers */, - AE0BC3701DD544969AFF0133 /* NavigationRequests.swift in Headers */, + 580FB4F6CD49469AAE1D7F6F /* ElectrodeBridgeEvent.h in Headers */, + B079722EB3EF45D6B93899B5 /* ElectrodeBridgeFailureMessage.h in Headers */, + 6ACD7D1BACC148079FA2D28C /* ElectrodeBridgeHolder.h in Headers */, + 03D48009E09F466880EA2072 /* ElectrodeBridgeMessage.h in Headers */, + A67A380E457044C49A6A6FF4 /* ElectrodeBridgeProtocols.h in Headers */, + 0F12F1BBC58B4096833BC29A /* ElectrodeBridgeRequest.h in Headers */, + A3EAF65D2E1B4BA5B828B392 /* ElectrodeBridgeTransaction.h in Headers */, + ED973832974F4934B7CE4AFD /* ElectrodeBridgeTransceiver.h in Headers */, + 826D76725E61454F9CD4A6A6 /* ElectrodeBridgeTransceiver_Internal.h in Headers */, + 12BC2E6ED1C34BC38F348BA1 /* ElectrodeEventDispatcher.h in Headers */, + ECBD3532BF0E4612B9F18088 /* ElectrodeEventRegistrar.h in Headers */, + 1EC5730FDB8C427D826D04ED /* ElectrodeRequestDispatcher.h in Headers */, + DB792616A556442F80189703 /* ElectrodeRequestRegistrar.h in Headers */, + 95C5D308DE06429885B7C870 /* ElectrodeReactNativeBridge.h in Headers */, + 7765EE4BD98448F6A6E30B21 /* ElectrodeBridgeResponse.h in Headers */, + 6FDED851EF3343358E50C952 /* ElectrodeLogger.h in Headers */, + 7DDC271F5FF745EDA378AA84 /* BirthYear.swift in Headers */, + A1A058A8420F4009AD1EC036 /* Movie.swift in Headers */, + AA60DD08157048D7BE225BF7 /* MoviesAPI.swift in Headers */, + F50681ADB84F4D4EB3FA4A4A /* MoviesRequests.swift in Headers */, + E0BEDF1000384A57B8B3C9FE /* Person.swift in Headers */, + 7A2C12408B89476996105B27 /* Synopsis.swift in Headers */, + 377415090F1C4481A748CC63 /* NavigateData.swift in Headers */, + 5FE7BACA53914598952E588E /* NavigationAPI.swift in Headers */, + E4B30B8E616B4CB7B01ED52E /* NavigationRequests.swift in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -781,6 +460,7 @@ isa = PBXNativeTarget; buildConfigurationList = 485009F71E2FF23C009B6610 /* Build configuration list for PBXNativeTarget "ElectrodeContainer" */; buildPhases = ( + F671779AC94E01E1AE010876 /* [CP] Check Pods Manifest.lock */, 485009DE1E2FF23B009B6610 /* Sources */, 485009DF1E2FF23B009B6610 /* Frameworks */, 485009E01E2FF23B009B6610 /* Headers */, @@ -790,18 +470,6 @@ buildRules = ( ); dependencies = ( - D32357C9BAB84786B0E54C8C /* PBXTargetDependency */, - AA47AE9A1B2C48EEB58C44D2 /* PBXTargetDependency */, - 27E3ECE2A8864D72BBDE4F3B /* PBXTargetDependency */, - AD73F3B70A414F2B99C08CE2 /* PBXTargetDependency */, - CB8291379DF243719FD9895C /* PBXTargetDependency */, - 7EB7C64C55F54791BDB8BF66 /* PBXTargetDependency */, - F26787E0600349E8A453B870 /* PBXTargetDependency */, - 44F118F864954A069AAEF59B /* PBXTargetDependency */, - 12779A71D7D7479FA2A04E47 /* PBXTargetDependency */, - D00C88CCF9864BAD9517B0E2 /* PBXTargetDependency */, - 33B8A5E41E4E4BF5866995BC /* PBXTargetDependency */, - 17DCF9FC83B64EC3A418A6CC /* PBXTargetDependency */, ); name = ElectrodeContainer; productName = ElectrodeContainer; @@ -861,146 +529,9 @@ 485009E21E2FF23B009B6610 /* ElectrodeContainer */, 485009EB1E2FF23C009B6610 /* ElectrodeContainerTests */, ); - projectReferences = ( - { - ProjectRef = 06DD4D0CC95B4DD0A973FFE2 /* React.xcodeproj */; - ProductGroup = 3E92DC0FC01049B0B5B30226 /* Products */; - }, - { - ProjectRef = 32B49CCAC0AA41A392F4CEF9 /* RCTActionSheet.xcodeproj */; - ProductGroup = BFB64F3EADFA4AA2A1749DFE /* Products */; - }, - { - ProjectRef = F0CEA5244D23472FBB053881 /* RCTImage.xcodeproj */; - ProductGroup = D63033AABE0048B3A322E097 /* Products */; - }, - { - ProjectRef = AEBC48FB4E2843618DC0B44A /* RCTAnimation.xcodeproj */; - ProductGroup = 601ECD02C8614535A8149FF1 /* Products */; - }, - { - ProjectRef = 6F813A4DBEA74ECB9E36F1FD /* RCTText.xcodeproj */; - ProductGroup = 0545126E5CAB4BC8A34A7F0E /* Products */; - }, - { - ProjectRef = F2EB131A9CA947E195E75631 /* RCTWebSocket.xcodeproj */; - ProductGroup = 5F0420A859F749778F0A66FC /* Products */; - }, - { - ProjectRef = AF5C40C5EC974064B107A305 /* RCTLinking.xcodeproj */; - ProductGroup = 5457FC68236B46BCBE7459C5 /* Products */; - }, - { - ProjectRef = CAC45CD88B4144D8A512D336 /* RCTNetwork.xcodeproj */; - ProductGroup = F64495A106194CD490370A14 /* Products */; - }, - { - ProjectRef = 76FC781521AB4E0CB0D8E857 /* RCTSettings.xcodeproj */; - ProductGroup = 84BAAAC3D92D459998F4C1EB /* Products */; - }, - { - ProjectRef = 97C62BBE942C4D0294E46807 /* RCTVibration.xcodeproj */; - ProductGroup = BD12826E3E91406DB8675995 /* Products */; - }, - { - ProjectRef = CF320D58E65E48DEA8A1FED8 /* RCTCameraRoll.xcodeproj */; - ProductGroup = AA33B86C25424C29B74E5350 /* Products */; - }, - { - ProjectRef = 9FBB36A3959A4F6989B8E9EC /* ART.xcodeproj */; - ProductGroup = B0241390320640CD9F3E04A9 /* Products */; - }, - ); }; /* End PBXProject section */ -/* Begin PBXReferenceProxy section */ - 5ED3A951750B428BB8E6CA89 /* libReact.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libReact.a; - remoteRef = C45C865F91704DC3A8CE2EA7 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - C126D15D1E2E409CA863AB1E /* libRCTActionSheet.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTActionSheet.a; - remoteRef = 985593CF6722449F9F47B570 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 98DCB8603FCF4513A1E7EA92 /* libRCTImage.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTImage.a; - remoteRef = 9097137E0E404758A5557D87 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 25E005C6E21E409F9CE36253 /* libRCTAnimation.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTAnimation.a; - remoteRef = D21A7AAFF79F4B26B5FD60F8 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 2F7ED4D7F0CD4806ADABEB46 /* libRCTText.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTText.a; - remoteRef = 6041AFC99D59418DA0401335 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 47C8477872D644E980ABFD6F /* libRCTWebSocket.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTWebSocket.a; - remoteRef = A53EDF0E1E4141CC88112466 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - C198140C8F37459D9C7510A3 /* libRCTLinking.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTLinking.a; - remoteRef = 2D4DD2051AC8487DA2449EAC /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 54F8A0713F3B4FC2B0DA46DC /* libRCTNetwork.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTNetwork.a; - remoteRef = 1A3485814EEE424397115255 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - BEFA433831D44E2E82B41EEC /* libRCTSettings.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTSettings.a; - remoteRef = 212EE93438534196A5E832B2 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 16EA5718B773465B9638D8B2 /* libRCTVibration.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTVibration.a; - remoteRef = 49C88CE530B74B68B02AEAC6 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 6A190D54092B4F7A88E61255 /* libRCTCameraRoll.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTCameraRoll.a; - remoteRef = 68B59822BA504F9AAD7A3C68 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 3695C861612D4A3C85D781F0 /* libART.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libART.a; - remoteRef = B3F7D905D2E14E409DB7F103 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; -/* End PBXReferenceProxy section */ - /* Begin PBXResourcesBuildPhase section */ 485009E11E2FF23B009B6610 /* Resources */ = { isa = PBXResourcesBuildPhase; @@ -1020,6 +551,31 @@ }; /* End PBXResourcesBuildPhase section */ +/* Begin PBXShellScriptBuildPhase section */ + F671779AC94E01E1AE010876 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-ElectrodeContainer-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; +/* End PBXShellScriptBuildPhase section */ + /* Begin PBXSourcesBuildPhase section */ 485009DE1E2FF23B009B6610 /* Sources */ = { isa = PBXSourcesBuildPhase; @@ -1030,38 +586,38 @@ 968333D81E54E3470031C565 /* ElectrodeBridgeDelegate.m in Sources */, DA42DF5E233C1B0500046338 /* ERNDevSettingsViewController.m in Sources */, DA42DF5D233C1B0500046338 /* ElectrodeBundle.m in Sources */, - 55480D1EA9AA49A0908F0623 /* ElectrodeObject.swift in Sources */, - 6336877753C44676ADEA0499 /* Bridgeable.swift in Sources */, - 058296A8A09744BCB277A9B7 /* ElectrodeRequestHandlerProcessor.swift in Sources */, - F0F288BD19DD420A93B56FDF /* ElectrodeRequestProcessor.swift in Sources */, - FC6175CD31384082AFCE7B97 /* ElectrodeUtilities.swift in Sources */, - 8A5DC47CBE8745038BDE2FAC /* EventListenerProcessor.swift in Sources */, - 9862E3BEEC214467ACAE5057 /* EventProcessor.swift in Sources */, - 6BA9B7F7175D4B179D7435C7 /* Processor.swift in Sources */, - 3795AEA3D56046C18C4F4803 /* None.swift in Sources */, - F8649007267C4515AB56405B /* ElectrodeBridgeEvent.m in Sources */, - 129AE8465771446892C5E5FD /* ElectrodeBridgeFailureMessage.m in Sources */, - AEB8169737B94AA3BD679864 /* ElectrodeBridgeHolder.m in Sources */, - 67892904BCD744F981B926E2 /* ElectrodeBridgeMessage.m in Sources */, - 213203F6324E4147917AC720 /* ElectrodeBridgeProtocols.m in Sources */, - 350CF3BF4C7C4F80B7D1D0F5 /* ElectrodeBridgeRequest.m in Sources */, - CC968438DEB44E39B2AAC3B0 /* ElectrodeBridgeResponse.m in Sources */, - F926A036605E42298B1A0B2A /* ElectrodeBridgeTransaction.m in Sources */, - 84D513409C934CB5B4C48C38 /* ElectrodeBridgeTransceiver.m in Sources */, - E0136AB02D304B7D83D16F04 /* ElectrodeEventDispatcher.m in Sources */, - 1D4EFDECAE71403AB573D8ED /* ElectrodeEventRegistrar.m in Sources */, - 45358DE55A0440ADA9243F78 /* ElectrodeRequestDispatcher.m in Sources */, - 9633CE288B6F4C54AEFE21C0 /* ElectrodeRequestRegistrar.m in Sources */, - DF93F0924CEC4A4490807F65 /* ElectrodeLogger.m in Sources */, - CF1EA7452A5B4B7AB2A1DE5D /* BirthYear.swift in Sources */, - C68B1A8A247B45ECAA6E5C16 /* Movie.swift in Sources */, - 864C12DA53D3497483B02797 /* MoviesAPI.swift in Sources */, - 7B77E29BDE6843CF8F8ACCC5 /* MoviesRequests.swift in Sources */, - F42E9688AA164ED2A1C88EDC /* Person.swift in Sources */, - E7D4C0E2643A4A389AD695CC /* Synopsis.swift in Sources */, - 078AAC10DF8C4441899E09F5 /* NavigateData.swift in Sources */, - 63F509BE4C3A4C999C8E35D3 /* NavigationAPI.swift in Sources */, - 7369653E7F724BD2B2B60D5E /* NavigationRequests.swift in Sources */, + 4FD7D2F4D3114D81BB1C01A0 /* ElectrodeObject.swift in Sources */, + 93626E75C6EF439F9B0533D0 /* Bridgeable.swift in Sources */, + 29F943CE2E3841B981914368 /* ElectrodeRequestHandlerProcessor.swift in Sources */, + 444CE9EC64A342FBADC657AA /* ElectrodeRequestProcessor.swift in Sources */, + 3B04C695BEFE4AF6B4DC5BBA /* ElectrodeUtilities.swift in Sources */, + EF3F9B00499E4FC1B7793B83 /* EventListenerProcessor.swift in Sources */, + D2D311C3067D4EABAD3F7AA8 /* EventProcessor.swift in Sources */, + 35E06CE672934ACE9944A0AB /* Processor.swift in Sources */, + BD2DE1C9B95242A889990185 /* None.swift in Sources */, + 3284822A72E6439AB83E6FDE /* ElectrodeBridgeEvent.m in Sources */, + 096B0440E6614D538988C83E /* ElectrodeBridgeFailureMessage.m in Sources */, + 99202FE1E634455B994323FF /* ElectrodeBridgeHolder.m in Sources */, + D82DFBAF92B24D7D8FA2CBCB /* ElectrodeBridgeMessage.m in Sources */, + 01906DAEA4FA4A71B5255740 /* ElectrodeBridgeProtocols.m in Sources */, + F6215521361C4300A4F13BFB /* ElectrodeBridgeRequest.m in Sources */, + 506C713C6483411BBBEAA121 /* ElectrodeBridgeResponse.m in Sources */, + E0434C0664BE4AF6813929EE /* ElectrodeBridgeTransaction.m in Sources */, + DB49ED5F1C2545C49AADDA68 /* ElectrodeBridgeTransceiver.m in Sources */, + 271B915933F54B06A274DB9F /* ElectrodeEventDispatcher.m in Sources */, + 01DE1360702441B089C6B69B /* ElectrodeEventRegistrar.m in Sources */, + AB54837F5CAD4330AD58BEC7 /* ElectrodeRequestDispatcher.m in Sources */, + 5ACBADF766234F968FD71DB6 /* ElectrodeRequestRegistrar.m in Sources */, + 50FA50BD45E84596908008B9 /* ElectrodeLogger.m in Sources */, + 622EFF67A2AE4DA6B39AAA5D /* BirthYear.swift in Sources */, + BCDAF487DDB34D5E8D944A3C /* Movie.swift in Sources */, + B8F43C2316824B79A92E32CC /* MoviesAPI.swift in Sources */, + 4BF2B2C1AAA7410C8D80CE5F /* MoviesRequests.swift in Sources */, + 87F4551A6A6D49A29EC54771 /* Person.swift in Sources */, + AFF155168A9641EC8588FCDC /* Synopsis.swift in Sources */, + ACD5BCB172FD49B29265BA6E /* NavigateData.swift in Sources */, + 47DAB8B7964848AD9D6DEE14 /* NavigationAPI.swift in Sources */, + 64D18FF86DCF4EEAA5D080E5 /* NavigationRequests.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1080,66 +636,6 @@ target = 485009E21E2FF23B009B6610 /* ElectrodeContainer */; targetProxy = 485009EE1E2FF23C009B6610 /* PBXContainerItemProxy */; }; - D32357C9BAB84786B0E54C8C /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = React; - targetProxy = C0524C43A8A4438FAC484CC6 /* PBXContainerItemProxy */; - }; - AA47AE9A1B2C48EEB58C44D2 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = RCTActionSheet; - targetProxy = E7188FFD7E9646A388ECA83E /* PBXContainerItemProxy */; - }; - 27E3ECE2A8864D72BBDE4F3B /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = RCTImage; - targetProxy = 8CBD7796E4FB47278A7CD0D7 /* PBXContainerItemProxy */; - }; - AD73F3B70A414F2B99C08CE2 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = RCTAnimation; - targetProxy = 15C2F2AE281E4BB5AB1FF3B8 /* PBXContainerItemProxy */; - }; - CB8291379DF243719FD9895C /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = RCTText; - targetProxy = AAC58102D9404E90BB9C4824 /* PBXContainerItemProxy */; - }; - 7EB7C64C55F54791BDB8BF66 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = RCTWebSocket; - targetProxy = 27F0C9182D2744209981F42B /* PBXContainerItemProxy */; - }; - F26787E0600349E8A453B870 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = RCTLinking; - targetProxy = B0555665473B4CC2AA1A0731 /* PBXContainerItemProxy */; - }; - 44F118F864954A069AAEF59B /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = RCTNetwork; - targetProxy = 95E5E001876244E7B151714C /* PBXContainerItemProxy */; - }; - 12779A71D7D7479FA2A04E47 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = RCTSettings; - targetProxy = 91445E09421F4882923D597B /* PBXContainerItemProxy */; - }; - D00C88CCF9864BAD9517B0E2 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = RCTVibration; - targetProxy = F0B4A10C868344BCAD806452 /* PBXContainerItemProxy */; - }; - 33B8A5E41E4E4BF5866995BC /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = RCTCameraRoll; - targetProxy = 4BEA96C911DE4D3F9E4EDCB5 /* PBXContainerItemProxy */; - }; - 17DCF9FC83B64EC3A418A6CC /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = ART; - targetProxy = EA57E677EAC5407A8492974A /* PBXContainerItemProxy */; - }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ diff --git a/system-tests/fixtures/ios-container/ElectrodeContainer.xcodeproj/xcshareddata/xcschemes/ECDevice.xcscheme b/system-tests/fixtures/ios-container/ElectrodeContainer.xcodeproj/xcshareddata/xcschemes/ECDevice.xcscheme index 84db79645..7a90adbdf 100644 --- a/system-tests/fixtures/ios-container/ElectrodeContainer.xcodeproj/xcshareddata/xcschemes/ECDevice.xcscheme +++ b/system-tests/fixtures/ios-container/ElectrodeContainer.xcodeproj/xcshareddata/xcschemes/ECDevice.xcscheme @@ -4,7 +4,7 @@ version = "1.3"> + buildImplicitDependencies = "YES"> + buildImplicitDependencies = "YES"> + + + + + + diff --git a/system-tests/fixtures/ios-container/Podfile b/system-tests/fixtures/ios-container/Podfile new file mode 100644 index 000000000..7fb64ab6c --- /dev/null +++ b/system-tests/fixtures/ios-container/Podfile @@ -0,0 +1,69 @@ +platform :ios, '9.0' +require_relative './node_modules/@react-native-community/cli-platform-ios/native_modules' + +def add_flipper_pods! + version = '~> 0.33.1' + pod 'FlipperKit', version, :configuration => 'Debug' + pod 'FlipperKit/FlipperKitLayoutPlugin', version, :configuration => 'Debug' + pod 'FlipperKit/SKIOSNetworkPlugin', version, :configuration => 'Debug' + pod 'FlipperKit/FlipperKitUserDefaultsPlugin', version, :configuration => 'Debug' + pod 'FlipperKit/FlipperKitReactPlugin', version, :configuration => 'Debug' +end + +# Post Install processing for Flipper +def flipper_post_install(installer) + installer.pods_project.targets.each do |target| + if target.name == 'YogaKit' + target.build_configurations.each do |config| + config.build_settings['SWIFT_VERSION'] = '4.1' + end + end + end +end + +target 'ElectrodeContainer' do + # Pods for ElectrodeContainer + pod 'FBLazyVector', :path => "node_modules/react-native/Libraries/FBLazyVector" + pod 'FBReactNativeSpec', :path => "node_modules/react-native/Libraries/FBReactNativeSpec" + pod 'RCTRequired', :path => "node_modules/react-native/Libraries/RCTRequired" + pod 'RCTTypeSafety', :path => "node_modules/react-native/Libraries/TypeSafety" + pod 'React', :path => 'node_modules/react-native/' + pod 'React-Core', :path => 'node_modules/react-native/' + pod 'React-CoreModules', :path => 'node_modules/react-native/React/CoreModules' + pod 'React-Core/DevSupport', :path => 'node_modules/react-native/' + pod 'React-RCTActionSheet', :path => 'node_modules/react-native/Libraries/ActionSheetIOS' + pod 'React-RCTAnimation', :path => 'node_modules/react-native/Libraries/NativeAnimation' + pod 'React-RCTBlob', :path => 'node_modules/react-native/Libraries/Blob' + pod 'React-RCTImage', :path => 'node_modules/react-native/Libraries/Image' + pod 'React-RCTLinking', :path => 'node_modules/react-native/Libraries/LinkingIOS' + pod 'React-RCTNetwork', :path => 'node_modules/react-native/Libraries/Network' + pod 'React-RCTSettings', :path => 'node_modules/react-native/Libraries/Settings' + pod 'React-RCTText', :path => 'node_modules/react-native/Libraries/Text' + pod 'React-RCTVibration', :path => 'node_modules/react-native/Libraries/Vibration' + pod 'React-Core/RCTWebSocket', :path => 'node_modules/react-native/' + + pod 'React-cxxreact', :path => 'node_modules/react-native/ReactCommon/cxxreact' + pod 'React-jsi', :path => 'node_modules/react-native/ReactCommon/jsi' + pod 'React-jsiexecutor', :path => 'node_modules/react-native/ReactCommon/jsiexecutor' + pod 'React-jsinspector', :path => 'node_modules/react-native/ReactCommon/jsinspector' + pod 'ReactCommon/callinvoker', :path => "node_modules/react-native/ReactCommon" + pod 'ReactCommon/turbomodule/core', :path => "node_modules/react-native/ReactCommon" + pod 'Yoga', :path => 'node_modules/react-native/ReactCommon/yoga', :modular_headers => true + + pod 'DoubleConversion', :podspec => 'node_modules/react-native/third-party-podspecs/DoubleConversion.podspec' + pod 'glog', :podspec => 'node_modules/react-native/third-party-podspecs/glog.podspec' + pod 'Folly', :podspec => 'node_modules/react-native/third-party-podspecs/Folly.podspec' + + + + use_native_modules! + + # Enables Flipper. + # + # Note that if you have use_frameworks! enabled, Flipper will not work and + # you should disable these next few lines. + add_flipper_pods! + post_install do |installer| + flipper_post_install(installer) + end +end diff --git a/system-tests/fixtures/ios-container/Podfile.lock b/system-tests/fixtures/ios-container/Podfile.lock new file mode 100644 index 000000000..97c2612cd --- /dev/null +++ b/system-tests/fixtures/ios-container/Podfile.lock @@ -0,0 +1,442 @@ +PODS: + - boost-for-react-native (1.63.0) + - CocoaAsyncSocket (7.6.4) + - CocoaLibEvent (1.0.0) + - DoubleConversion (1.1.6) + - FBLazyVector (0.62.2) + - FBReactNativeSpec (0.62.2): + - Folly (= 2018.10.22.00) + - RCTRequired (= 0.62.2) + - RCTTypeSafety (= 0.62.2) + - React-Core (= 0.62.2) + - React-jsi (= 0.62.2) + - ReactCommon/turbomodule/core (= 0.62.2) + - Flipper (0.33.1): + - Flipper-Folly (~> 2.1) + - Flipper-RSocket (~> 1.0) + - Flipper-DoubleConversion (1.1.7) + - Flipper-Folly (2.1.1): + - boost-for-react-native + - CocoaLibEvent (~> 1.0) + - Flipper-DoubleConversion + - Flipper-Glog + - OpenSSL-Universal (= 1.0.2.19) + - Flipper-Glog (0.3.6) + - Flipper-PeerTalk (0.0.4) + - Flipper-RSocket (1.0.0): + - Flipper-Folly (~> 2.0) + - FlipperKit (0.33.1): + - FlipperKit/Core (= 0.33.1) + - FlipperKit/Core (0.33.1): + - Flipper (~> 0.33.1) + - FlipperKit/CppBridge + - FlipperKit/FBCxxFollyDynamicConvert + - FlipperKit/FBDefines + - FlipperKit/FKPortForwarding + - FlipperKit/CppBridge (0.33.1): + - Flipper (~> 0.33.1) + - FlipperKit/FBCxxFollyDynamicConvert (0.33.1): + - Flipper-Folly (~> 2.1) + - FlipperKit/FBDefines (0.33.1) + - FlipperKit/FKPortForwarding (0.33.1): + - CocoaAsyncSocket (~> 7.6) + - Flipper-PeerTalk (~> 0.0.4) + - FlipperKit/FlipperKitHighlightOverlay (0.33.1) + - FlipperKit/FlipperKitLayoutPlugin (0.33.1): + - FlipperKit/Core + - FlipperKit/FlipperKitHighlightOverlay + - FlipperKit/FlipperKitLayoutTextSearchable + - YogaKit (~> 1.18) + - FlipperKit/FlipperKitLayoutTextSearchable (0.33.1) + - FlipperKit/FlipperKitNetworkPlugin (0.33.1): + - FlipperKit/Core + - FlipperKit/FlipperKitReactPlugin (0.33.1): + - FlipperKit/Core + - FlipperKit/FlipperKitUserDefaultsPlugin (0.33.1): + - FlipperKit/Core + - FlipperKit/SKIOSNetworkPlugin (0.33.1): + - FlipperKit/Core + - FlipperKit/FlipperKitNetworkPlugin + - Folly (2018.10.22.00): + - boost-for-react-native + - DoubleConversion + - Folly/Default (= 2018.10.22.00) + - glog + - Folly/Default (2018.10.22.00): + - boost-for-react-native + - DoubleConversion + - glog + - glog (0.3.5) + - OpenSSL-Universal (1.0.2.19): + - OpenSSL-Universal/Static (= 1.0.2.19) + - OpenSSL-Universal/Static (1.0.2.19) + - RCTRequired (0.62.2) + - RCTTypeSafety (0.62.2): + - FBLazyVector (= 0.62.2) + - Folly (= 2018.10.22.00) + - RCTRequired (= 0.62.2) + - React-Core (= 0.62.2) + - React (0.62.2): + - React-Core (= 0.62.2) + - React-Core/DevSupport (= 0.62.2) + - React-Core/RCTWebSocket (= 0.62.2) + - React-RCTActionSheet (= 0.62.2) + - React-RCTAnimation (= 0.62.2) + - React-RCTBlob (= 0.62.2) + - React-RCTImage (= 0.62.2) + - React-RCTLinking (= 0.62.2) + - React-RCTNetwork (= 0.62.2) + - React-RCTSettings (= 0.62.2) + - React-RCTText (= 0.62.2) + - React-RCTVibration (= 0.62.2) + - React-Core (0.62.2): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default (= 0.62.2) + - React-cxxreact (= 0.62.2) + - React-jsi (= 0.62.2) + - React-jsiexecutor (= 0.62.2) + - Yoga + - React-Core/CoreModulesHeaders (0.62.2): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.62.2) + - React-jsi (= 0.62.2) + - React-jsiexecutor (= 0.62.2) + - Yoga + - React-Core/Default (0.62.2): + - Folly (= 2018.10.22.00) + - glog + - React-cxxreact (= 0.62.2) + - React-jsi (= 0.62.2) + - React-jsiexecutor (= 0.62.2) + - Yoga + - React-Core/DevSupport (0.62.2): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default (= 0.62.2) + - React-Core/RCTWebSocket (= 0.62.2) + - React-cxxreact (= 0.62.2) + - React-jsi (= 0.62.2) + - React-jsiexecutor (= 0.62.2) + - React-jsinspector (= 0.62.2) + - Yoga + - React-Core/RCTActionSheetHeaders (0.62.2): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.62.2) + - React-jsi (= 0.62.2) + - React-jsiexecutor (= 0.62.2) + - Yoga + - React-Core/RCTAnimationHeaders (0.62.2): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.62.2) + - React-jsi (= 0.62.2) + - React-jsiexecutor (= 0.62.2) + - Yoga + - React-Core/RCTBlobHeaders (0.62.2): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.62.2) + - React-jsi (= 0.62.2) + - React-jsiexecutor (= 0.62.2) + - Yoga + - React-Core/RCTImageHeaders (0.62.2): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.62.2) + - React-jsi (= 0.62.2) + - React-jsiexecutor (= 0.62.2) + - Yoga + - React-Core/RCTLinkingHeaders (0.62.2): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.62.2) + - React-jsi (= 0.62.2) + - React-jsiexecutor (= 0.62.2) + - Yoga + - React-Core/RCTNetworkHeaders (0.62.2): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.62.2) + - React-jsi (= 0.62.2) + - React-jsiexecutor (= 0.62.2) + - Yoga + - React-Core/RCTSettingsHeaders (0.62.2): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.62.2) + - React-jsi (= 0.62.2) + - React-jsiexecutor (= 0.62.2) + - Yoga + - React-Core/RCTTextHeaders (0.62.2): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.62.2) + - React-jsi (= 0.62.2) + - React-jsiexecutor (= 0.62.2) + - Yoga + - React-Core/RCTVibrationHeaders (0.62.2): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.62.2) + - React-jsi (= 0.62.2) + - React-jsiexecutor (= 0.62.2) + - Yoga + - React-Core/RCTWebSocket (0.62.2): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default (= 0.62.2) + - React-cxxreact (= 0.62.2) + - React-jsi (= 0.62.2) + - React-jsiexecutor (= 0.62.2) + - Yoga + - React-CoreModules (0.62.2): + - FBReactNativeSpec (= 0.62.2) + - Folly (= 2018.10.22.00) + - RCTTypeSafety (= 0.62.2) + - React-Core/CoreModulesHeaders (= 0.62.2) + - React-RCTImage (= 0.62.2) + - ReactCommon/turbomodule/core (= 0.62.2) + - React-cxxreact (0.62.2): + - boost-for-react-native (= 1.63.0) + - DoubleConversion + - Folly (= 2018.10.22.00) + - glog + - React-jsinspector (= 0.62.2) + - React-jsi (0.62.2): + - boost-for-react-native (= 1.63.0) + - DoubleConversion + - Folly (= 2018.10.22.00) + - glog + - React-jsi/Default (= 0.62.2) + - React-jsi/Default (0.62.2): + - boost-for-react-native (= 1.63.0) + - DoubleConversion + - Folly (= 2018.10.22.00) + - glog + - React-jsiexecutor (0.62.2): + - DoubleConversion + - Folly (= 2018.10.22.00) + - glog + - React-cxxreact (= 0.62.2) + - React-jsi (= 0.62.2) + - React-jsinspector (0.62.2) + - React-RCTActionSheet (0.62.2): + - React-Core/RCTActionSheetHeaders (= 0.62.2) + - React-RCTAnimation (0.62.2): + - FBReactNativeSpec (= 0.62.2) + - Folly (= 2018.10.22.00) + - RCTTypeSafety (= 0.62.2) + - React-Core/RCTAnimationHeaders (= 0.62.2) + - ReactCommon/turbomodule/core (= 0.62.2) + - React-RCTBlob (0.62.2): + - FBReactNativeSpec (= 0.62.2) + - Folly (= 2018.10.22.00) + - React-Core/RCTBlobHeaders (= 0.62.2) + - React-Core/RCTWebSocket (= 0.62.2) + - React-jsi (= 0.62.2) + - React-RCTNetwork (= 0.62.2) + - ReactCommon/turbomodule/core (= 0.62.2) + - React-RCTImage (0.62.2): + - FBReactNativeSpec (= 0.62.2) + - Folly (= 2018.10.22.00) + - RCTTypeSafety (= 0.62.2) + - React-Core/RCTImageHeaders (= 0.62.2) + - React-RCTNetwork (= 0.62.2) + - ReactCommon/turbomodule/core (= 0.62.2) + - React-RCTLinking (0.62.2): + - FBReactNativeSpec (= 0.62.2) + - React-Core/RCTLinkingHeaders (= 0.62.2) + - ReactCommon/turbomodule/core (= 0.62.2) + - React-RCTNetwork (0.62.2): + - FBReactNativeSpec (= 0.62.2) + - Folly (= 2018.10.22.00) + - RCTTypeSafety (= 0.62.2) + - React-Core/RCTNetworkHeaders (= 0.62.2) + - ReactCommon/turbomodule/core (= 0.62.2) + - React-RCTSettings (0.62.2): + - FBReactNativeSpec (= 0.62.2) + - Folly (= 2018.10.22.00) + - RCTTypeSafety (= 0.62.2) + - React-Core/RCTSettingsHeaders (= 0.62.2) + - ReactCommon/turbomodule/core (= 0.62.2) + - React-RCTText (0.62.2): + - React-Core/RCTTextHeaders (= 0.62.2) + - React-RCTVibration (0.62.2): + - FBReactNativeSpec (= 0.62.2) + - Folly (= 2018.10.22.00) + - React-Core/RCTVibrationHeaders (= 0.62.2) + - ReactCommon/turbomodule/core (= 0.62.2) + - ReactCommon/callinvoker (0.62.2): + - DoubleConversion + - Folly (= 2018.10.22.00) + - glog + - React-cxxreact (= 0.62.2) + - ReactCommon/turbomodule/core (0.62.2): + - DoubleConversion + - Folly (= 2018.10.22.00) + - glog + - React-Core (= 0.62.2) + - React-cxxreact (= 0.62.2) + - React-jsi (= 0.62.2) + - ReactCommon/callinvoker (= 0.62.2) + - Yoga (1.14.0) + - YogaKit (1.18.1): + - Yoga (~> 1.14) + +DEPENDENCIES: + - DoubleConversion (from `node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`) + - FBLazyVector (from `node_modules/react-native/Libraries/FBLazyVector`) + - FBReactNativeSpec (from `node_modules/react-native/Libraries/FBReactNativeSpec`) + - FlipperKit (~> 0.33.1) + - FlipperKit/FlipperKitLayoutPlugin (~> 0.33.1) + - FlipperKit/FlipperKitReactPlugin (~> 0.33.1) + - FlipperKit/FlipperKitUserDefaultsPlugin (~> 0.33.1) + - FlipperKit/SKIOSNetworkPlugin (~> 0.33.1) + - Folly (from `node_modules/react-native/third-party-podspecs/Folly.podspec`) + - glog (from `node_modules/react-native/third-party-podspecs/glog.podspec`) + - RCTRequired (from `node_modules/react-native/Libraries/RCTRequired`) + - RCTTypeSafety (from `node_modules/react-native/Libraries/TypeSafety`) + - React (from `node_modules/react-native/`) + - React-Core (from `node_modules/react-native/`) + - React-Core/DevSupport (from `node_modules/react-native/`) + - React-Core/RCTWebSocket (from `node_modules/react-native/`) + - React-CoreModules (from `node_modules/react-native/React/CoreModules`) + - React-cxxreact (from `node_modules/react-native/ReactCommon/cxxreact`) + - React-jsi (from `node_modules/react-native/ReactCommon/jsi`) + - React-jsiexecutor (from `node_modules/react-native/ReactCommon/jsiexecutor`) + - React-jsinspector (from `node_modules/react-native/ReactCommon/jsinspector`) + - React-RCTActionSheet (from `node_modules/react-native/Libraries/ActionSheetIOS`) + - React-RCTAnimation (from `node_modules/react-native/Libraries/NativeAnimation`) + - React-RCTBlob (from `node_modules/react-native/Libraries/Blob`) + - React-RCTImage (from `node_modules/react-native/Libraries/Image`) + - React-RCTLinking (from `node_modules/react-native/Libraries/LinkingIOS`) + - React-RCTNetwork (from `node_modules/react-native/Libraries/Network`) + - React-RCTSettings (from `node_modules/react-native/Libraries/Settings`) + - React-RCTText (from `node_modules/react-native/Libraries/Text`) + - React-RCTVibration (from `node_modules/react-native/Libraries/Vibration`) + - ReactCommon/callinvoker (from `node_modules/react-native/ReactCommon`) + - ReactCommon/turbomodule/core (from `node_modules/react-native/ReactCommon`) + - Yoga (from `node_modules/react-native/ReactCommon/yoga`) + +SPEC REPOS: + https://github.com/cocoapods/specs.git: + - boost-for-react-native + - CocoaAsyncSocket + - CocoaLibEvent + - Flipper + - Flipper-DoubleConversion + - Flipper-Folly + - Flipper-Glog + - Flipper-PeerTalk + - Flipper-RSocket + - FlipperKit + - OpenSSL-Universal + - YogaKit + +EXTERNAL SOURCES: + DoubleConversion: + :podspec: node_modules/react-native/third-party-podspecs/DoubleConversion.podspec + FBLazyVector: + :path: node_modules/react-native/Libraries/FBLazyVector + FBReactNativeSpec: + :path: node_modules/react-native/Libraries/FBReactNativeSpec + Folly: + :podspec: node_modules/react-native/third-party-podspecs/Folly.podspec + glog: + :podspec: node_modules/react-native/third-party-podspecs/glog.podspec + RCTRequired: + :path: node_modules/react-native/Libraries/RCTRequired + RCTTypeSafety: + :path: node_modules/react-native/Libraries/TypeSafety + React: + :path: node_modules/react-native/ + React-Core: + :path: node_modules/react-native/ + React-CoreModules: + :path: node_modules/react-native/React/CoreModules + React-cxxreact: + :path: node_modules/react-native/ReactCommon/cxxreact + React-jsi: + :path: node_modules/react-native/ReactCommon/jsi + React-jsiexecutor: + :path: node_modules/react-native/ReactCommon/jsiexecutor + React-jsinspector: + :path: node_modules/react-native/ReactCommon/jsinspector + React-RCTActionSheet: + :path: node_modules/react-native/Libraries/ActionSheetIOS + React-RCTAnimation: + :path: node_modules/react-native/Libraries/NativeAnimation + React-RCTBlob: + :path: node_modules/react-native/Libraries/Blob + React-RCTImage: + :path: node_modules/react-native/Libraries/Image + React-RCTLinking: + :path: node_modules/react-native/Libraries/LinkingIOS + React-RCTNetwork: + :path: node_modules/react-native/Libraries/Network + React-RCTSettings: + :path: node_modules/react-native/Libraries/Settings + React-RCTText: + :path: node_modules/react-native/Libraries/Text + React-RCTVibration: + :path: node_modules/react-native/Libraries/Vibration + ReactCommon: + :path: node_modules/react-native/ReactCommon + Yoga: + :path: node_modules/react-native/ReactCommon/yoga + +SPEC CHECKSUMS: + boost-for-react-native: 39c7adb57c4e60d6c5479dd8623128eb5b3f0f2c + CocoaAsyncSocket: 694058e7c0ed05a9e217d1b3c7ded962f4180845 + CocoaLibEvent: 2fab71b8bd46dd33ddb959f7928ec5909f838e3f + DoubleConversion: 5805e889d232975c086db112ece9ed034df7a0b2 + FBLazyVector: 4aab18c93cd9546e4bfed752b4084585eca8b245 + FBReactNativeSpec: 5465d51ccfeecb7faa12f9ae0024f2044ce4044e + Flipper: 6c1f484f9a88d30ab3e272800d53688439e50f69 + Flipper-DoubleConversion: 38631e41ef4f9b12861c67d17cb5518d06badc41 + Flipper-Folly: 2de3d03e0acc7064d5e4ed9f730e2f217486f162 + Flipper-Glog: 1dfd6abf1e922806c52ceb8701a3599a79a200a6 + Flipper-PeerTalk: 116d8f857dc6ef55c7a5a75ea3ceaafe878aadc9 + Flipper-RSocket: 1260a31c05c238eabfa9bb8a64e3983049048371 + FlipperKit: 6dc9b8f4ef60d9e5ded7f0264db299c91f18832e + Folly: 30e7936e1c45c08d884aa59369ed951a8e68cf51 + glog: 1f3da668190260b06b429bb211bfbee5cd790c28 + OpenSSL-Universal: 8b48cc0d10c1b2923617dfe5c178aa9ed2689355 + RCTRequired: cec6a34b3ac8a9915c37e7e4ad3aa74726ce4035 + RCTTypeSafety: 93006131180074cffa227a1075802c89a49dd4ce + React: 29a8b1a02bd764fb7644ef04019270849b9a7ac3 + React-Core: b12bffb3f567fdf99510acb716ef1abd426e0e05 + React-CoreModules: 4a9b87bbe669d6c3173c0132c3328e3b000783d0 + React-cxxreact: e65f9c2ba0ac5be946f53548c1aaaee5873a8103 + React-jsi: b6dc94a6a12ff98e8877287a0b7620d365201161 + React-jsiexecutor: 1540d1c01bb493ae3124ed83351b1b6a155db7da + React-jsinspector: 512e560d0e985d0e8c479a54a4e5c147a9c83493 + React-RCTActionSheet: f41ea8a811aac770e0cc6e0ad6b270c644ea8b7c + React-RCTAnimation: 49ab98b1c1ff4445148b72a3d61554138565bad0 + React-RCTBlob: a332773f0ebc413a0ce85942a55b064471587a71 + React-RCTImage: e70be9b9c74fe4e42d0005f42cace7981c994ac3 + React-RCTLinking: c1b9739a88d56ecbec23b7f63650e44672ab2ad2 + React-RCTNetwork: 73138b6f45e5a2768ad93f3d57873c2a18d14b44 + React-RCTSettings: 6e3738a87e21b39a8cb08d627e68c44acf1e325a + React-RCTText: fae545b10cfdb3d247c36c56f61a94cfd6dba41d + React-RCTVibration: 4356114dbcba4ce66991096e51a66e61eda51256 + ReactCommon: ed4e11d27609d571e7eee8b65548efc191116eb3 + Yoga: 3ebccbdd559724312790e7742142d062476b698e + YogaKit: f782866e155069a2cca2517aafea43200b01fd5a + +PODFILE CHECKSUM: 882c59bec810b83b2a1d77782024f8ea7160612d + +COCOAPODS: 1.7.3 diff --git a/system-tests/fixtures/ios-container/container-metadata.json b/system-tests/fixtures/ios-container/container-metadata.json index c5ee12aec..358c687d9 100644 --- a/system-tests/fixtures/ios-container/container-metadata.json +++ b/system-tests/fixtures/ios-container/container-metadata.json @@ -2,11 +2,11 @@ "ernVersion": "1000.0.0", "jsApiImpls": [], "miniApps": [ - "moviedetailsminiapp@0.0.30", - "movielistminiapp@0.0.34" + "moviedetailsminiapp@0.0.32", + "movielistminiapp@0.0.36" ], "nativeDeps": [ - "react-native@0.60.5", + "react-native@0.62.2", "react-native-electrode-bridge@1.5.24", "react-native-ernmovie-api@0.0.11", "react-native-ernnavigation-api@0.0.5" diff --git a/system-tests/fixtures/ios-container/package.json b/system-tests/fixtures/ios-container/package.json new file mode 100644 index 000000000..b52d25962 --- /dev/null +++ b/system-tests/fixtures/ios-container/package.json @@ -0,0 +1,8 @@ +{ + "dependencies": { + "@react-native-community/cli-platform-ios": "4.8.0", + "react-native": "0.62.2", + "react-native-electrode-bridge": "1.5.24" + }, + "name": "container" +} diff --git a/system-tests/src/tests/create-container-ios-fixture.js b/system-tests/src/tests/create-container-ios-fixture.js index 0d8ad8758..d02a56960 100644 --- a/system-tests/src/tests/create-container-ios-fixture.js +++ b/system-tests/src/tests/create-container-ios-fixture.js @@ -8,7 +8,12 @@ const miniapps = [ `${f.movieDetailsMiniAppPkgName}@${f.movieDetailsMiniAppPkgVersion}`, ] -const excludeFilter = ['project.pbxproj', 'ElectrodeContainer/Libraries/**'] +const excludeFilter = [ + 'project.pbxproj', + 'ElectrodeContainer/Libraries/**', + 'node_modules/**', + 'Pods/**', +] .map(s => `**/${s}`) .join(',') diff --git a/yarn.lock b/yarn.lock index cfb1a6751..6bc8806b3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6052,6 +6052,11 @@ mkdirp@0.5.1, mkdirp@0.5.x, mkdirp@0.x.x, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~ dependencies: minimist "0.0.8" +mkdirp@~1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + mkpath@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/mkpath/-/mkpath-0.1.0.tgz#7554a6f8d871834cc97b5462b122c4c124d6de91"