diff --git a/App.ios.js b/App.ios.js index 478b1dba..c3ca9f83 100644 --- a/App.ios.js +++ b/App.ios.js @@ -6,9 +6,17 @@ * @flow */ -import React, { Component } from 'react'; -import { Platform, StyleSheet, Text, View, YellowBox } from 'react-native'; -import { createSwitchNavigator, createStackNavigator, createDrawerNavigator, createAppContainer, createBottomTabNavigator } from 'react-navigation'; +import React from 'react'; +import {ActionSheetProvider} from '@expo/react-native-action-sheet' +import {AsyncStorage, Platform, StyleSheet} from 'react-native'; +import { + createAppContainer, + createBottomTabNavigator, + createDrawerNavigator, + createStackNavigator, + createSwitchNavigator +} from 'react-navigation'; +import OneSignal from 'react-native-onesignal'; import Connect from "./screens/login/Connect"; import SplashScreen from "./screens/splashscreen/SplashScreen"; import HelpMenu from "./screens/help/HelpMenu"; @@ -23,8 +31,6 @@ import ActivateAccount from "./screens/login/ActivateAccount"; import Notifications from "./screens/notifications/Notifications"; import About from "./screens/configurations/About"; import Configurations from "./screens/configurations/Configurations"; - -import History from './screens/history-request/History' import OptionsMenu from "./screens/optionMenu/OptionsMenu"; import Home from "./screens/home/Home"; import HistoryItemDetails from "./screens/history-request/HistoryItemDetails"; @@ -33,235 +39,525 @@ import HistoryRequester from "./screens/history-request/HistoryRequester"; import AddNetwork from "./screens/account/AddNetwork"; import MyHistory from "./screens/history-request/MyHistory"; import Icon from "react-native-vector-icons/FontAwesome5"; -import { Appbar } from 'react-native-paper'; - -import IconWithBadge from "./screens/IconWithBadge" import I18n from "react-native-i18n"; -import Filter from './screens/home/Filter'; -import { createMaterialBottomTabNavigator } from 'react-navigation-material-bottom-tabs'; -import Networks from './screens/home/Networks'; + +import WalletDetail from './screens/wallet/WalletDetail'; +import WalletSelect from './screens/wallet/WalletSelect'; +import {PersistGate} from 'redux-persist/integration/react'; +import {persistor, store} from './redux/store'; +import {Provider} from 'react-redux'; +import WalletDepot from './screens/wallet/WalletDepot'; +import WalletRetrait from './screens/wallet/WalletRetrait'; +import CreateIdentification from './screens/identification/createIdentification'; +import WalletDetailUser from './screens/wallet/WalletDetailUser'; +import WalletOptionSelect from './screens/wallet/WalletOptionSelect'; +import ValidateIdentification from './screens/identification/validateIdentification'; +import CreateIdentificationUser from './screens/identification/CreateIdentificationUser'; +import OperateurOptionSelect from './screens/wallet/OperateurOptionSelect'; +import PaiementFacture from './screens/wallet/PaiementFacture'; +import EnvoieWalletToWalletUser from './screens/wallet/user/EnvoieWalletToWalletUser'; +import EnvoieWalletToCashUser from './screens/wallet/user/EnvoieWalletToCash'; +import LinkCard from './screens/wallet/user/LinkCard'; +import EnvoieWalletToCardUser from './screens/wallet/user/EnvoieWalletToCardUser'; +import EnvoieWalletToBankUser from './screens/wallet/user/EnvoieWalletToBankUser'; +import RetraitWalletVersCashUser from './screens/wallet/user/RetraitWalletVersCashUser'; +import RetraitCarteVersCashUser from './screens/wallet/user/RetraitCarteVersCashUser'; +import RetraitCarteVersWalletUser from './screens/wallet/user/RetraitCarteVersWalletUser'; +import RetraitEnCashAgent from './screens/wallet/agent/RetraitEnCashAgent'; +import RetraitCarteVersCashAgent from './screens/wallet/agent/RetraitCarteVersCashAgent'; +import EnvoieCashVersWalletAgent from './screens/wallet/agent/EnvoieCashVersWalletAgent'; +import EnvoieCashVersAutreWalletAgent from './screens/wallet/agent/EnvoieCashVersAutreWalletAgent'; +import EnvoieCashVersCarteAgent from './screens/wallet/agent/EnvoieCashVersCarteAgent'; +import EnvoiCashVersCashAgent from './screens/wallet/agent/EnvoiCashVersCashAgent'; +import ModifyIdentificationUser from './screens/identification/ModifyIdentificationUser'; +import CreateGroupNanoCredit from './screens/nano-credit/CreateGroupNanoCredit'; +import DemandValidationGroup from './screens/nano-credit/DemandGroupNanoCredit'; +import DemandGroupNanoCreditDetail from './screens/nano-credit/DemandGroupNanoCreditDetail'; +import AdhererGroupNanoCredit from './screens/nano-credit/AdhererGroupNanoCredit'; +import MyNanoCreditGroup from './screens/nano-credit/MyNanoCreditGroup'; +import AskNanoCredit from './screens/nano-credit/AskNanoCredit'; +import RefundNanoCreditUser from './screens/nano-credit/RefundNanoCreditUser'; +import CautionNanoCreditAgent from './screens/nano-credit/CautionNanoCreditAgent'; +import EpargnerArgentUser from './screens/nano-credit/EpargnerArgentUser'; +import CasserEpargneUser from './screens/nano-credit/CasserEpargneUser'; +import {IlinkEmitter} from './utils/events'; +import EnvoieWalletToBankAgent from "./screens/wallet/agent/EnvoieWalletToBankAgent"; +import ReattachAccountUser from "./screens/wallet/user/ReattachAccountUser"; + + const instructions = Platform.select({ - ios: 'Press Cmd+R to reload,\n' + 'Cmd+D or shake for dev menu', - android: - 'Double tap R on your keyboard to reload,\n' + - 'Shake or press menu button for dev menu', + ios: 'Press Cmd+R to reload,\n' + 'Cmd+D or shake for dev menu', + android: + 'Double tap R on your keyboard to reload,\n' + + 'Shake or press menu button for dev menu', }); -type Props = {}; const theme = require("./utils/theme") -class HomeScreen extends Component { - render() { - - return ( - - Welcome to iLink World! - To get started, edit App.js - {instructions} - - ); - } -} const AuthStack = createStackNavigator({ - login: Connect, - helpMenu: HelpMenu, - help: Help, - forgottenpass: ForgottenPassword, - typeaccountcreate: TypeChoiser, - simpleusercreate: createAccount, - step2: CreateUserStep2, - activateaccout: ActivateAccount + login: Connect, + helpMenu: HelpMenu, + help: Help, + forgottenpass: ForgottenPassword, + typeaccountcreate: TypeChoiser, + simpleusercreate: createAccount, + step2: CreateUserStep2, + activateaccout: ActivateAccount }, { - headerMode: 'none' + headerMode: 'none' }) const AppStack = createDrawerNavigator({ - sta: createStackNavigator({ - home: Home, - /* filtre:Filter, - network:Networks,*/ - useraccount: { - screen: UserAccount, - navigationOptions: { - }, - }, - notificationview: Notifications, - configuration: Configurations, - about: About + sta: createStackNavigator({ + home: Home, + /* filtre:Filter, + network:Networks,*/ + useraccount: { + screen: UserAccount, + navigationOptions: {}, + }, + walletSelect: WalletSelect, + createIdentificationUser: CreateIdentificationUser, + modifyIdentificationUser: ModifyIdentificationUser, + notificationview: Notifications, + configuration: Configurations, + about: About, + walletDetailUser: WalletDetailUser, + walletOptionSelect: WalletOptionSelect, + operateurOptionSelect: OperateurOptionSelect, + paiementFacture: PaiementFacture, + envoieWalletToWalletUser: EnvoieWalletToWalletUser, + envoieWalletToCashUser: EnvoieWalletToCashUser, + envoieWalletToCardUser: EnvoieWalletToCardUser, + envoieWalletToBankUser: EnvoieWalletToBankUser, + retraitWalletVersCashUser: RetraitWalletVersCashUser, + retraitCarteVersCashUser: RetraitCarteVersCashUser, + retraitCarteVersWalletUser: RetraitCarteVersWalletUser, + linkCard: LinkCard, + reattachAccountUser: ReattachAccountUser, + epargnerArgentUser: EpargnerArgentUser, + createGroupNanoCredit: CreateGroupNanoCredit, + groupNanoCredit: { + screen: createBottomTabNavigator({ + demandeValidationGroupe: { + screen: DemandValidationGroup, + navigationOptions: { + tabBarLabel: I18n.t('DEMAND_VALIDATION_GROUP_RECEIVE'), + tabBarIcon: ({focused, horizontal, tintColor}) => { + return () + } + } + }, + myNanoCreditGroup: { + screen: MyNanoCreditGroup, + navigationOptions: { + tabBarLabel: I18n.t('MY_GROUP'), + tabBarIcon: ({focused, horizontal, tintColor}) => { + return () + } + } + }, + }, { + headerMode: "none", + header: null, + headerTitle: null, + title: I18n.t('MANAGE_GROUP'), + tabBarOptions: { + labelStyle: { + fontSize: 13, + }, + } + }), + navigationOptions: () => ({ + header: null, + headerMode: 'none', + headerTitle: null, + activeColor: '#f0edf6', + inactiveColor: '#3e2465', + barStyle: {backgroundColor: '#694fad'}, + + drawerLabel: I18n.t('MANAGE_GROUP'), + drawerIcon: ({tintColor}) => ( + ) + }), + }, + demandeValidationGroupe: DemandGroupNanoCreditDetail, + adhererGroupNanoCredit: AdhererGroupNanoCredit, + askNanoCredit: AskNanoCredit, + refundNanoCreditUser: RefundNanoCreditUser, + casserEpargneUser: CasserEpargneUser + + }) +}, { + contentComponent: OptionsMenu, + headerMode: 'none', + contentOptions: {activeTintColor: theme.accent} +}) - }) -}, { contentComponent: OptionsMenu, headerMode: 'none', contentOptions: { activeTintColor: theme.accent } }) const AppAgentStack = createDrawerNavigator({ - sta: createStackNavigator({ - home: Home, - useraccount: UserAccount, - Historique: - { - screen: createBottomTabNavigator({ myDemand: MyHistory }, { + sta: createStackNavigator({ + home: Home, + useraccount: UserAccount, + walletSelect: WalletSelect, + createIdentification: CreateIdentification, + validateIdentification: ValidateIdentification, + Historique: + { + screen: createBottomTabNavigator({myDemand: MyHistory}, { headerMode: "none", header: null, - headerTitle: null, headerTitle: I18n.t('CREDIT_MANAGE'), tabBarOptions: { - labelStyle: { - fontSize: 13, - fontWeight: "bold" - }, + labelStyle: { + fontSize: 13, + fontWeight: "bold" + }, } - }), - navigationOptions: ({ navigation }) => ({ + }), + navigationOptions: () => ({ header: null, headerMode: 'none', headerTitle: null, activeColor: '#f0edf6', inactiveColor: '#3e2465', - barStyle: { backgroundColor: '#694fad' }, - + barStyle: {backgroundColor: '#694fad'}, + /* headerLeft: (), */ drawerLabel: I18n.t('CREDIT_MANAGE'), - drawerIcon: ({ tintColor }) => ( - ) - }), - }, + drawerIcon: ({tintColor}) => ( + ) + }), + }, - historyItemDetails: HistoryItemDetails, - creditrequest: HistoryRequester, - addNetwork: AddNetwork, - updateinformation: UpdateInformations, - notificationview: Notifications, - configuration: Configurations, - about: About - }) + historyItemDetails: HistoryItemDetails, + creditrequest: HistoryRequester, + addNetwork: AddNetwork, + updateinformation: UpdateInformations, + notificationview: Notifications, + configuration: Configurations, + about: About, + walletDetail: WalletDetail, + walletDepot: WalletDepot, + walletRetrait: WalletRetrait, + walletOptionSelect: WalletOptionSelect, + operateurOptionSelect: OperateurOptionSelect, + paiementFacture: PaiementFacture, + retraitEnCashAgent: RetraitEnCashAgent, + retraitCarteVersCashAgent: RetraitCarteVersCashAgent, + envoieCashVersWalletAgent: EnvoieCashVersWalletAgent, + envoieCashVersAutreWalletAgent: EnvoieCashVersAutreWalletAgent, + envoieCashVersCarteAgent: EnvoieCashVersCarteAgent, + envoiCashVersCashAgent: EnvoiCashVersCashAgent, + envoieWalletToBankAgent: EnvoieWalletToBankAgent, + createGroupNanoCredit: CreateGroupNanoCredit, + cautionNanoCreditAgent: CautionNanoCreditAgent, + }) }, { - contentComponent: OptionsMenu, - backBehavior: "none", - lazy: false, - headerMode: 'none', contentOptions: { activeTintColor: theme.accent } -}) + contentComponent: OptionsMenu, + backBehavior: "none", + lazy: false, + headerMode: 'none', contentOptions: {activeTintColor: theme.accent} +}); + const AppAdministratorStack = createDrawerNavigator({ - sta: createStackNavigator({ - home: Home, - useraccount: UserAccount, - Historique: { - screen: createBottomTabNavigator({ + sta: createStackNavigator({ + home: Home, + useraccount: UserAccount, + walletSelect: WalletSelect, + Historique: { + screen: createBottomTabNavigator({ myDemand: MyHistory, OthersDemand: MyHistory - }, { + }, { headerMode: "none", header: null, headerTitle: null, title: I18n.t('CREDIT_MANAGE'), tabBarOptions: { - labelStyle: { - fontSize: 13, - }, + labelStyle: { + fontSize: 13, + }, } - }), - navigationOptions: ({ navigation }) => ({ + }), + navigationOptions: () => ({ header: null, headerMode: 'none', headerTitle: null, activeColor: '#f0edf6', inactiveColor: '#3e2465', - barStyle: { backgroundColor: '#694fad' }, + barStyle: {backgroundColor: '#694fad'}, drawerLabel: I18n.t('CREDIT_MANAGE'), - drawerIcon: ({ tintColor }) => ( - ) - }), - }, - creditrequest: HistoryRequester, - historyItemDetails: HistoryItemDetails, + drawerIcon: ({tintColor}) => ( + ) + }), + }, + creditrequest: HistoryRequester, + historyItemDetails: HistoryItemDetails, - superviseurgroup: SuperViseurGroupeHome, - notificationview: Notifications, - configuration: Configurations, - about: About + superviseurgroup: SuperViseurGroupeHome, + notificationview: Notifications, + configuration: Configurations, + about: About, + walletDetail: WalletDetail, + walletDepot: WalletDepot, + walletRetrait: WalletRetrait + + }) + }, + { + contentComponent: OptionsMenu, + backBehavior: "none", + headerMode: 'none' + }); - }) -}, - { - contentComponent: OptionsMenu, - backBehavior: "none", - headerMode: 'none' - }) const AppSuperAdministrator = createDrawerNavigator({ - sta: createStackNavigator({ - home: Home, - useraccount: UserAccount, - Historique: { - screen: createBottomTabNavigator({ OthersDemand: MyHistory }, { - headerMode: "none", - header: null, - headerTitle: null, - title: I18n.t('CREDIT_MANAGE'), - tabBarOptions: { - labelStyle: { - fontSize: 13, - fontWeight: "bold" - }, - } - }), - navigationOptions: ({ navigation }) => ({ - title: I18n.t('CREDIT_MANAGE'), - headerMode: "none", - header: null, - headerTitle: null, - drawerIcon: ({ tintColor }) => ( - ) - }), - }, - creditrequest: HistoryRequester, - historyItemDetails: HistoryItemDetails, - superviseurgroup: SuperViseurGroupeHome, - notificationview: Notifications, - configuration: Configurations, - about: About + sta: createStackNavigator({ + home: Home, + useraccount: UserAccount, + walletSelect: WalletSelect, + Historique: { + screen: createBottomTabNavigator({OthersDemand: MyHistory}, { + headerMode: "none", + header: null, + headerTitle: null, + title: I18n.t('CREDIT_MANAGE'), + tabBarOptions: { + labelStyle: { + fontSize: 13, + fontWeight: "bold" + }, + } + }), + navigationOptions: () => ({ + title: I18n.t('CREDIT_MANAGE'), + headerMode: "none", + header: null, + headerTitle: null, + drawerIcon: ({tintColor}) => ( + ) + }), + }, + creditrequest: HistoryRequester, + historyItemDetails: HistoryItemDetails, + superviseurgroup: SuperViseurGroupeHome, + notificationview: Notifications, + configuration: Configurations, + about: About, + walletDetail: WalletDetail, + walletDepot: WalletDepot, + walletRetrait: WalletRetrait - }) + }) }, { - contentComponent: OptionsMenu, - backBehavior: "none", - headerMode: 'none' -}) + contentComponent: OptionsMenu, + backBehavior: "none", + headerMode: 'none' +}); + export const AppNavigator = createSwitchNavigator({ - first: { - screen: SplashScreen - }, - App: AppStack, - AgentApp: AppAgentStack, - adminApp: AppAdministratorStack, - supAdminApp: AppSuperAdministrator, - Auth: AuthStack + first: { + screen: SplashScreen + }, + App: AppStack, + AgentApp: AppAgentStack, + adminApp: AppAdministratorStack, + supAdminApp: AppSuperAdministrator, + Auth: AuthStack }, { - initialRouteName: 'first' + initialRouteName: 'first' }); const AppContainer = createAppContainer(AppNavigator); -export default AppContainer; +class App extends React.Component { + + + constructor(props) { + super(props); + console.log("APP PROPS", this.props); + global.appHasLoaded = false; + IlinkEmitter.on("langueChange", this.updateLangue.bind(this)) + //Remove this method to stop OneSignal Debugging +/* OneSignal.setLogLevel(6, 0); + // Replace 'YOUR_ONESIGNAL_APP_ID' with your OneSignal App ID. + OneSignal.init("e8e7251f-713d-4658-9510-86d877fa6a7c", { + kOSSettingsKeyAutoPrompt: false, + kOSSettingsKeyInAppLaunchURL: false, + kOSSettingsKeyInFocusDisplayOption: 2 + }); + OneSignal.inFocusDisplaying(2); // Controls what should happen if a notification is received while the app is open. 2 means that the notification will go directly to the device's notification center. + + // The promptForPushNotifications function code will show the iOS push notification prompt. We recommend removing the following code and instead using an In-App Message to prompt for notification permission (See step below) + OneSignal.promptForPushNotificationsWithUserResponse(myiOSPromptCallback); + + OneSignal.addEventListener('received', this.onReceived); + OneSignal.addEventListener('opened', this.onOpened); + OneSignal.addEventListener('ids', this.onIds);*/ + } + + updateLangue() { + this.forceUpdate() + } + + _getOneSignalIds = () => { + return new Promise(async (resolve, reject) => { + try { + const getElement = await AsyncStorage.getItem('@config:onesignalIds'); + resolve(getElement); + } catch (error) { + reject(error); + } + }); + } + + _saveOneSignalIds = async (ids) => { + try { + await AsyncStorage.setItem('@config:onesignalIds', ids); + } catch (error) { + console.warn(error); + } + } + + + goToScreen = (routeName, params, isReset = true) => { + const {navigator} = this.refs; + if (typeof navigator !== 'undefined') { + console.log("APP HAS LOADED", global.appHasLoaded); + if (global.appHasLoaded) { + + navigator.dispatch({ + type: "Navigation/NAVIGATE", + routeName, + params + }); + /* readUser().then((result) => { + if (result === null || result === undefined) { + console.warn("APP HAS LOADED NOTIFICATION PARAMS", params); + + navigator.dispatch({ + type: "Navigation/NAVIGATE", + routeName: "first", + params: { routeName, params } + }); + } else { + navigator.dispatch({ + type: "Navigation/NAVIGATE", + routeName, + params + }); + } + }); */ + } else { + navigator.dispatch({ + type: "Navigation/NAVIGATE", + routeName: "first", + params: {routeName, params} + }); + } + } + }; + + handleDeepLink = (openResult) => { + const data = openResult.notification.payload.additionalData; + //const dataParse = data.replace("'", "\""); + console.warn("HANDLE DEEP LINK", data); + switch (data.screen) { + case 'historyItemDetails': + console.log("History Item"); + this.goToScreen(data.screen, { + item: data.data + }); + break; + + default: + console.log("Not History Item"); + this.goToScreen(data.screen, { + id: data.data.id + }); + break; + } + + /* if (data && data.id) { + this.goToScreen(data.screen, { + id: data.id, + goToScreen: this.goToScreen + }); + } else { + console.log("notification is invalid data"); + } */ + }; + + componentWillUnmount() { + OneSignal.removeEventListener('received', this.onReceived); + OneSignal.removeEventListener('opened', this.onOpened); + OneSignal.removeEventListener('ids', this.onIds); + } + + onReceived(notification) { + console.log("Notification received: ", notification); + } + + onOpened = (openResult) => { + let data = openResult.notification.payload.additionalData; + this.handleDeepLink(openResult); + console.log('Message: ', openResult.notification.payload.body); + console.log('Data: ', openResult.notification.payload.additionalData); + console.log('isActive: ', openResult.notification.isAppInFocus); + console.log('openResult: ', openResult); + } + + render() { + return ( + + + + + + + + ); + } +} + +function myiOSPromptCallback(permission) { + // do something with permission value +} + +export default App; const styles = StyleSheet.create({ - container: { - flex: 1, - justifyContent: 'center', - alignItems: 'center', - backgroundColor: '#F5FCFF', - }, - welcome: { - fontSize: 20, - textAlign: 'center', - margin: 10, - }, - instructions: { - textAlign: 'center', - color: '#333333', - marginBottom: 5, - }, + container: { + flex: 1, + justifyContent: 'center', + alignItems: 'center', + backgroundColor: '#F5FCFF', + }, + welcome: { + fontSize: 20, + textAlign: 'center', + margin: 10, + }, + instructions: { + textAlign: 'center', + color: '#333333', + marginBottom: 5, + }, }); diff --git a/android/app/build.gradle b/android/app/build.gradle index 47755741..e7bbb1e6 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -182,6 +182,7 @@ android { } dependencies { + implementation project(':lottie-react-native') implementation project(':react-native-onesignal') implementation project(':react-native-maps') implementation fileTree(dir: "libs", include: ["*.jar"]) diff --git a/android/app/src/main/java/com/ilinktest/MainApplication.java b/android/app/src/main/java/com/ilinktest/MainApplication.java index d7749593..871b52fb 100644 --- a/android/app/src/main/java/com/ilinktest/MainApplication.java +++ b/android/app/src/main/java/com/ilinktest/MainApplication.java @@ -5,7 +5,11 @@ import android.content.Context; import com.facebook.react.PackageList; import com.facebook.react.ReactApplication; +<<<<<<< Updated upstream:android/app/src/main/java/com/ilinktest/MainApplication.java import com.geektime.rnonesignalandroid.ReactNativeOneSignalPackage; +======= +import com.airbnb.android.react.lottie.LottiePackage; +>>>>>>> Stashed changes:android/app/src/main/java/com/appli/ilink/MainApplication.java import com.facebook.react.ReactNativeHost; import com.facebook.react.ReactPackage; import com.facebook.soloader.SoLoader; diff --git a/android/settings.gradle b/android/settings.gradle index e4c80c3b..0594d3bd 100644 --- a/android/settings.gradle +++ b/android/settings.gradle @@ -1,4 +1,6 @@ rootProject.name = 'iLink' +include ':lottie-react-native' +project(':lottie-react-native').projectDir = new File(rootProject.projectDir, '../node_modules/lottie-react-native/src/android') include ':react-native-onesignal' project(':react-native-onesignal').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-onesignal/android') include ':react-native-maps' diff --git a/app.json b/app.json index 7e1c8b7f..76c3ac03 100644 --- a/app.json +++ b/app.json @@ -1,4 +1,4 @@ { - "name": "iLinkWorld", + "name": "iLink", "displayName": "iLinkWorld" -} \ No newline at end of file +} diff --git a/ios/Podfile b/ios/Podfile index effa5d6a..2ffaa470 100644 --- a/ios/Podfile +++ b/ios/Podfile @@ -34,9 +34,16 @@ target 'iLink' do pod 'glog', :podspec => '../node_modules/react-native/third-party-podspecs/glog.podspec' pod 'Folly', :podspec => '../node_modules/react-native/third-party-podspecs/Folly.podspec' +pod 'react-native-geolocation', path: '../node_modules/@react-native-community/geolocation' pod 'react-native-maps', :path => '../node_modules/react-native-maps' +<<<<<<< Updated upstream pod 'react-native-onesignal', :path => '../node_modules/react-native-onesignal' +======= + # pod 'lottie-ios', :path => '../node_modules/lottie-ios' + pod 'lottie-react-native', :path => '../node_modules/lottie-react-native' + pod 'lottie-ios', '~> 3.1.3' +>>>>>>> Stashed changes target 'iLinkTests' do inherit! :search_paths diff --git a/ios/Podfile.lock b/ios/Podfile.lock new file mode 100644 index 00000000..8cb3e7f4 --- /dev/null +++ b/ios/Podfile.lock @@ -0,0 +1,477 @@ +PODS: + - boost-for-react-native (1.63.0) + - DoubleConversion (1.1.6) + - FBLazyVector (0.61.5) + - FBReactNativeSpec (0.61.5): + - Folly (= 2018.10.22.00) + - RCTRequired (= 0.61.5) + - RCTTypeSafety (= 0.61.5) + - React-Core (= 0.61.5) + - React-jsi (= 0.61.5) + - ReactCommon/turbomodule/core (= 0.61.5) + - 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 + - GCDWebServer (3.5.4): + - GCDWebServer/Core (= 3.5.4) + - GCDWebServer/Core (3.5.4) + - glog (0.3.5) + - lottie-ios (3.1.9) + - lottie-react-native (3.3.2): + - lottie-ios (~> 3.1.3) + - React + - OneSignal (2.16.1) + - RCTRequired (0.61.5) + - RCTTypeSafety (0.61.5): + - FBLazyVector (= 0.61.5) + - Folly (= 2018.10.22.00) + - RCTRequired (= 0.61.5) + - React-Core (= 0.61.5) + - React (0.61.5): + - React-Core (= 0.61.5) + - React-Core/DevSupport (= 0.61.5) + - React-Core/RCTWebSocket (= 0.61.5) + - React-RCTActionSheet (= 0.61.5) + - React-RCTAnimation (= 0.61.5) + - React-RCTBlob (= 0.61.5) + - React-RCTImage (= 0.61.5) + - React-RCTLinking (= 0.61.5) + - React-RCTNetwork (= 0.61.5) + - React-RCTSettings (= 0.61.5) + - React-RCTText (= 0.61.5) + - React-RCTVibration (= 0.61.5) + - React-Core (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default (= 0.61.5) + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - Yoga + - React-Core/CoreModulesHeaders (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - Yoga + - React-Core/Default (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - Yoga + - React-Core/DevSupport (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default (= 0.61.5) + - React-Core/RCTWebSocket (= 0.61.5) + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - React-jsinspector (= 0.61.5) + - Yoga + - React-Core/RCTActionSheetHeaders (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - Yoga + - React-Core/RCTAnimationHeaders (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - Yoga + - React-Core/RCTBlobHeaders (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - Yoga + - React-Core/RCTImageHeaders (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - Yoga + - React-Core/RCTLinkingHeaders (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - Yoga + - React-Core/RCTNetworkHeaders (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - Yoga + - React-Core/RCTSettingsHeaders (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - Yoga + - React-Core/RCTTextHeaders (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - Yoga + - React-Core/RCTVibrationHeaders (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - Yoga + - React-Core/RCTWebSocket (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default (= 0.61.5) + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - Yoga + - React-CoreModules (0.61.5): + - FBReactNativeSpec (= 0.61.5) + - Folly (= 2018.10.22.00) + - RCTTypeSafety (= 0.61.5) + - React-Core/CoreModulesHeaders (= 0.61.5) + - React-RCTImage (= 0.61.5) + - ReactCommon/turbomodule/core (= 0.61.5) + - React-cxxreact (0.61.5): + - boost-for-react-native (= 1.63.0) + - DoubleConversion + - Folly (= 2018.10.22.00) + - glog + - React-jsinspector (= 0.61.5) + - React-jsi (0.61.5): + - boost-for-react-native (= 1.63.0) + - DoubleConversion + - Folly (= 2018.10.22.00) + - glog + - React-jsi/Default (= 0.61.5) + - React-jsi/Default (0.61.5): + - boost-for-react-native (= 1.63.0) + - DoubleConversion + - Folly (= 2018.10.22.00) + - glog + - React-jsiexecutor (0.61.5): + - DoubleConversion + - Folly (= 2018.10.22.00) + - glog + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsinspector (0.61.5) + - react-native-camera (3.40.0): + - React-Core + - react-native-camera/RCT (= 3.40.0) + - react-native-camera/RN (= 3.40.0) + - react-native-camera/RCT (3.40.0): + - React-Core + - react-native-camera/RN (3.40.0): + - React-Core + - react-native-geolocation (1.4.2): + - React + - react-native-maps (0.26.1): + - React + - react-native-onesignal (3.9.3): + - OneSignal (= 2.16.1) + - React (< 1.0.0, >= 0.13.0) + - react-native-viewpager (3.3.0): + - React + - React-RCTActionSheet (0.61.5): + - React-Core/RCTActionSheetHeaders (= 0.61.5) + - React-RCTAnimation (0.61.5): + - React-Core/RCTAnimationHeaders (= 0.61.5) + - React-RCTBlob (0.61.5): + - React-Core/RCTBlobHeaders (= 0.61.5) + - React-Core/RCTWebSocket (= 0.61.5) + - React-jsi (= 0.61.5) + - React-RCTNetwork (= 0.61.5) + - React-RCTImage (0.61.5): + - React-Core/RCTImageHeaders (= 0.61.5) + - React-RCTNetwork (= 0.61.5) + - React-RCTLinking (0.61.5): + - React-Core/RCTLinkingHeaders (= 0.61.5) + - React-RCTNetwork (0.61.5): + - React-Core/RCTNetworkHeaders (= 0.61.5) + - React-RCTSettings (0.61.5): + - React-Core/RCTSettingsHeaders (= 0.61.5) + - React-RCTText (0.61.5): + - React-Core/RCTTextHeaders (= 0.61.5) + - React-RCTVibration (0.61.5): + - React-Core/RCTVibrationHeaders (= 0.61.5) + - ReactCommon/jscallinvoker (0.61.5): + - DoubleConversion + - Folly (= 2018.10.22.00) + - glog + - React-cxxreact (= 0.61.5) + - ReactCommon/turbomodule/core (0.61.5): + - DoubleConversion + - Folly (= 2018.10.22.00) + - glog + - React-Core (= 0.61.5) + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - ReactCommon/jscallinvoker (= 0.61.5) + - RealmJS (3.6.5): + - GCDWebServer + - React + - RNCAsyncStorage (1.9.0): + - React + - RNDateTimePicker (2.4.0): + - React + - RNDeviceInfo (2.3.2): + - React + - RNGestureHandler (1.6.1): + - React + - RNI18n (2.0.15): + - React + - RNImageCropPicker (0.32.3): + - React-Core + - React-RCTImage + - RNImageCropPicker/QBImagePickerController (= 0.32.3) + - TOCropViewController + - RNImageCropPicker/QBImagePickerController (0.32.3): + - React-Core + - React-RCTImage + - TOCropViewController + - RNReanimated (1.13.2): + - React-Core + - RNScreens (2.3.0): + - React + - RNSVG (9.13.6): + - React + - RNVectorIcons (6.6.0): + - React + - SajjadBlurOverlay (1.0.0): + - React + - TOCropViewController (2.6.0) + - Yoga (1.14.0) + +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`) + - Folly (from `../node_modules/react-native/third-party-podspecs/Folly.podspec`) + - glog (from `../node_modules/react-native/third-party-podspecs/glog.podspec`) + - lottie-ios (~> 3.1.3) + - lottie-react-native (from `../node_modules/lottie-react-native`) + - 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-native-camera (from `../node_modules/react-native-camera`) + - "react-native-geolocation (from `../node_modules/@react-native-community/geolocation`)" + - react-native-maps (from `../node_modules/react-native-maps`) + - react-native-onesignal (from `../node_modules/react-native-onesignal`) + - "react-native-viewpager (from `../node_modules/@react-native-community/viewpager`)" + - 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/jscallinvoker (from `../node_modules/react-native/ReactCommon`) + - ReactCommon/turbomodule/core (from `../node_modules/react-native/ReactCommon`) + - RealmJS (from `../node_modules/realm`) + - "RNCAsyncStorage (from `../node_modules/@react-native-community/async-storage`)" + - "RNDateTimePicker (from `../node_modules/@react-native-community/datetimepicker`)" + - RNDeviceInfo (from `../node_modules/react-native-device-info`) + - RNGestureHandler (from `../node_modules/react-native-gesture-handler`) + - RNI18n (from `../node_modules/react-native-i18n`) + - RNImageCropPicker (from `../node_modules/react-native-image-crop-picker`) + - RNReanimated (from `../node_modules/react-native-reanimated`) + - RNScreens (from `../node_modules/react-native-screens`) + - RNSVG (from `../node_modules/react-native-svg`) + - RNVectorIcons (from `../node_modules/react-native-vector-icons`) + - SajjadBlurOverlay (from `../node_modules/react-native-blur-overlay/ios`) + - Yoga (from `../node_modules/react-native/ReactCommon/yoga`) + +SPEC REPOS: + trunk: + - boost-for-react-native + - GCDWebServer + - lottie-ios + - OneSignal + - TOCropViewController + +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" + lottie-react-native: + :path: "../node_modules/lottie-react-native" + 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-native-camera: + :path: "../node_modules/react-native-camera" + react-native-geolocation: + :path: "../node_modules/@react-native-community/geolocation" + react-native-maps: + :path: "../node_modules/react-native-maps" + react-native-onesignal: + :path: "../node_modules/react-native-onesignal" + react-native-viewpager: + :path: "../node_modules/@react-native-community/viewpager" + 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" + RealmJS: + :path: "../node_modules/realm" + RNCAsyncStorage: + :path: "../node_modules/@react-native-community/async-storage" + RNDateTimePicker: + :path: "../node_modules/@react-native-community/datetimepicker" + RNDeviceInfo: + :path: "../node_modules/react-native-device-info" + RNGestureHandler: + :path: "../node_modules/react-native-gesture-handler" + RNI18n: + :path: "../node_modules/react-native-i18n" + RNImageCropPicker: + :path: "../node_modules/react-native-image-crop-picker" + RNReanimated: + :path: "../node_modules/react-native-reanimated" + RNScreens: + :path: "../node_modules/react-native-screens" + RNSVG: + :path: "../node_modules/react-native-svg" + RNVectorIcons: + :path: "../node_modules/react-native-vector-icons" + SajjadBlurOverlay: + :path: "../node_modules/react-native-blur-overlay/ios" + Yoga: + :path: "../node_modules/react-native/ReactCommon/yoga" + +SPEC CHECKSUMS: + boost-for-react-native: 39c7adb57c4e60d6c5479dd8623128eb5b3f0f2c + DoubleConversion: 5805e889d232975c086db112ece9ed034df7a0b2 + FBLazyVector: aaeaf388755e4f29cd74acbc9e3b8da6d807c37f + FBReactNativeSpec: 118d0d177724c2d67f08a59136eb29ef5943ec75 + Folly: 30e7936e1c45c08d884aa59369ed951a8e68cf51 + GCDWebServer: 2c156a56c8226e2d5c0c3f208a3621ccffbe3ce4 + glog: 1f3da668190260b06b429bb211bfbee5cd790c28 + lottie-ios: 3a3758ef5a008e762faec9c9d50a39842f26d124 + lottie-react-native: 2a1a82bb326ae51331a5520de0cf706733c6db69 + OneSignal: 5f6514ec2b931306eb067acb124afbb2e49970af + RCTRequired: b153add4da6e7dbc44aebf93f3cf4fcae392ddf1 + RCTTypeSafety: 9aa1b91d7f9310fc6eadc3cf95126ffe818af320 + React: b6a59ef847b2b40bb6e0180a97d0ca716969ac78 + React-Core: 688b451f7d616cc1134ac95295b593d1b5158a04 + React-CoreModules: d04f8494c1a328b69ec11db9d1137d667f916dcb + React-cxxreact: d0f7bcafa196ae410e5300736b424455e7fb7ba7 + React-jsi: cb2cd74d7ccf4cffb071a46833613edc79cdf8f7 + React-jsiexecutor: d5525f9ed5f782fdbacb64b9b01a43a9323d2386 + React-jsinspector: fa0ecc501688c3c4c34f28834a76302233e29dc0 + react-native-camera: 35854c4f764a4a6cf61c1c3525888b92f0fe4b31 + react-native-geolocation: a7b94614afbd5fd8350e0233a2025c8228fc8041 + react-native-maps: 6e499eee4eabf422ba8b6f94e993cc768bf35153 + react-native-onesignal: f92b6fae16388422f1b5d73b2c31e7000f481ae8 + react-native-viewpager: a7b438ca32c57b2614ece2a123e7fe116f743131 + React-RCTActionSheet: 600b4d10e3aea0913b5a92256d2719c0cdd26d76 + React-RCTAnimation: 791a87558389c80908ed06cc5dfc5e7920dfa360 + React-RCTBlob: d89293cc0236d9cb0933d85e430b0bbe81ad1d72 + React-RCTImage: 6b8e8df449eb7c814c99a92d6b52de6fe39dea4e + React-RCTLinking: 121bb231c7503cf9094f4d8461b96a130fabf4a5 + React-RCTNetwork: fb353640aafcee84ca8b78957297bd395f065c9a + React-RCTSettings: 8db258ea2a5efee381fcf7a6d5044e2f8b68b640 + React-RCTText: 9ccc88273e9a3aacff5094d2175a605efa854dbe + React-RCTVibration: a49a1f42bf8f5acf1c3e297097517c6b3af377ad + ReactCommon: 198c7c8d3591f975e5431bec1b0b3b581aa1c5dd + RealmJS: b103c28012b1abfe13396ac82e76b4f4d9d47c0d + RNCAsyncStorage: 453cd7c335ec9ba3b877e27d02238956b76f3268 + RNDateTimePicker: c4285bfdd87430f1e575b81a4742b7586a09d53e + RNDeviceInfo: 17e34f6dd902f08d88cbe2c0b7a01be948d43641 + RNGestureHandler: 8f09cd560f8d533eb36da5a6c5a843af9f056b38 + RNI18n: e2f7e76389fcc6e84f2c8733ea89b92502351fd8 + RNImageCropPicker: 54e5ea3d0e298ed51e1441a2fa0a0e7c90ee256d + RNReanimated: e03f7425cb7a38dcf1b644d680d1bfc91c3337ad + RNScreens: 03bf608b92ac0acf323f47d8f5b63a8f829340c8 + RNSVG: 8ba35cbeb385a52fd960fd28db9d7d18b4c2974f + RNVectorIcons: 0bb4def82230be1333ddaeee9fcba45f0b288ed4 + SajjadBlurOverlay: 4366a3417954b7d4a8a70682e0c43959ff76a3cb + TOCropViewController: 3105367e808b7d3d886a74ff59bf4804e7d3ab38 + Yoga: f2a7cd4280bfe2cca5a7aed98ba0eb3d1310f18b + +PODFILE CHECKSUM: 74bfdaaa49d8b2d45ed01b2e94622d7dce1bbe9c + +COCOAPODS: 1.10.0 diff --git a/ios/Pods/Headers/Private/react-native-geolocation/RNCGeolocation.h b/ios/Pods/Headers/Private/react-native-geolocation/RNCGeolocation.h new file mode 120000 index 00000000..ad58bf2d --- /dev/null +++ b/ios/Pods/Headers/Private/react-native-geolocation/RNCGeolocation.h @@ -0,0 +1 @@ +../../../../../node_modules/@react-native-community/geolocation/ios/RNCGeolocation.h \ No newline at end of file diff --git a/ios/Pods/Headers/Public/react-native-geolocation/RNCGeolocation.h b/ios/Pods/Headers/Public/react-native-geolocation/RNCGeolocation.h new file mode 120000 index 00000000..ad58bf2d --- /dev/null +++ b/ios/Pods/Headers/Public/react-native-geolocation/RNCGeolocation.h @@ -0,0 +1 @@ +../../../../../node_modules/@react-native-community/geolocation/ios/RNCGeolocation.h \ No newline at end of file diff --git a/ios/Pods/Local Podspecs/react-native-geolocation.podspec.json b/ios/Pods/Local Podspecs/react-native-geolocation.podspec.json new file mode 100644 index 00000000..f8a51744 --- /dev/null +++ b/ios/Pods/Local Podspecs/react-native-geolocation.podspec.json @@ -0,0 +1,21 @@ +{ + "name": "react-native-geolocation", + "version": "1.4.2", + "summary": "React Native Geolocation Module for iOS and Android", + "license": "MIT", + "authors": "React Native Community", + "homepage": "https://github.com/react-native-community/react-native-geolocation#README.md", + "platforms": { + "ios": "9.0" + }, + "source": { + "git": "https://github.com/react-native-community/react-native-geolocation.git", + "tag": "1.4.2" + }, + "source_files": "ios/**/*.{h,m}", + "dependencies": { + "React": [ + + ] + } +} diff --git a/ios/Pods/Manifest.lock b/ios/Pods/Manifest.lock new file mode 100644 index 00000000..8cb3e7f4 --- /dev/null +++ b/ios/Pods/Manifest.lock @@ -0,0 +1,477 @@ +PODS: + - boost-for-react-native (1.63.0) + - DoubleConversion (1.1.6) + - FBLazyVector (0.61.5) + - FBReactNativeSpec (0.61.5): + - Folly (= 2018.10.22.00) + - RCTRequired (= 0.61.5) + - RCTTypeSafety (= 0.61.5) + - React-Core (= 0.61.5) + - React-jsi (= 0.61.5) + - ReactCommon/turbomodule/core (= 0.61.5) + - 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 + - GCDWebServer (3.5.4): + - GCDWebServer/Core (= 3.5.4) + - GCDWebServer/Core (3.5.4) + - glog (0.3.5) + - lottie-ios (3.1.9) + - lottie-react-native (3.3.2): + - lottie-ios (~> 3.1.3) + - React + - OneSignal (2.16.1) + - RCTRequired (0.61.5) + - RCTTypeSafety (0.61.5): + - FBLazyVector (= 0.61.5) + - Folly (= 2018.10.22.00) + - RCTRequired (= 0.61.5) + - React-Core (= 0.61.5) + - React (0.61.5): + - React-Core (= 0.61.5) + - React-Core/DevSupport (= 0.61.5) + - React-Core/RCTWebSocket (= 0.61.5) + - React-RCTActionSheet (= 0.61.5) + - React-RCTAnimation (= 0.61.5) + - React-RCTBlob (= 0.61.5) + - React-RCTImage (= 0.61.5) + - React-RCTLinking (= 0.61.5) + - React-RCTNetwork (= 0.61.5) + - React-RCTSettings (= 0.61.5) + - React-RCTText (= 0.61.5) + - React-RCTVibration (= 0.61.5) + - React-Core (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default (= 0.61.5) + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - Yoga + - React-Core/CoreModulesHeaders (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - Yoga + - React-Core/Default (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - Yoga + - React-Core/DevSupport (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default (= 0.61.5) + - React-Core/RCTWebSocket (= 0.61.5) + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - React-jsinspector (= 0.61.5) + - Yoga + - React-Core/RCTActionSheetHeaders (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - Yoga + - React-Core/RCTAnimationHeaders (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - Yoga + - React-Core/RCTBlobHeaders (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - Yoga + - React-Core/RCTImageHeaders (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - Yoga + - React-Core/RCTLinkingHeaders (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - Yoga + - React-Core/RCTNetworkHeaders (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - Yoga + - React-Core/RCTSettingsHeaders (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - Yoga + - React-Core/RCTTextHeaders (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - Yoga + - React-Core/RCTVibrationHeaders (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - Yoga + - React-Core/RCTWebSocket (0.61.5): + - Folly (= 2018.10.22.00) + - glog + - React-Core/Default (= 0.61.5) + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsiexecutor (= 0.61.5) + - Yoga + - React-CoreModules (0.61.5): + - FBReactNativeSpec (= 0.61.5) + - Folly (= 2018.10.22.00) + - RCTTypeSafety (= 0.61.5) + - React-Core/CoreModulesHeaders (= 0.61.5) + - React-RCTImage (= 0.61.5) + - ReactCommon/turbomodule/core (= 0.61.5) + - React-cxxreact (0.61.5): + - boost-for-react-native (= 1.63.0) + - DoubleConversion + - Folly (= 2018.10.22.00) + - glog + - React-jsinspector (= 0.61.5) + - React-jsi (0.61.5): + - boost-for-react-native (= 1.63.0) + - DoubleConversion + - Folly (= 2018.10.22.00) + - glog + - React-jsi/Default (= 0.61.5) + - React-jsi/Default (0.61.5): + - boost-for-react-native (= 1.63.0) + - DoubleConversion + - Folly (= 2018.10.22.00) + - glog + - React-jsiexecutor (0.61.5): + - DoubleConversion + - Folly (= 2018.10.22.00) + - glog + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - React-jsinspector (0.61.5) + - react-native-camera (3.40.0): + - React-Core + - react-native-camera/RCT (= 3.40.0) + - react-native-camera/RN (= 3.40.0) + - react-native-camera/RCT (3.40.0): + - React-Core + - react-native-camera/RN (3.40.0): + - React-Core + - react-native-geolocation (1.4.2): + - React + - react-native-maps (0.26.1): + - React + - react-native-onesignal (3.9.3): + - OneSignal (= 2.16.1) + - React (< 1.0.0, >= 0.13.0) + - react-native-viewpager (3.3.0): + - React + - React-RCTActionSheet (0.61.5): + - React-Core/RCTActionSheetHeaders (= 0.61.5) + - React-RCTAnimation (0.61.5): + - React-Core/RCTAnimationHeaders (= 0.61.5) + - React-RCTBlob (0.61.5): + - React-Core/RCTBlobHeaders (= 0.61.5) + - React-Core/RCTWebSocket (= 0.61.5) + - React-jsi (= 0.61.5) + - React-RCTNetwork (= 0.61.5) + - React-RCTImage (0.61.5): + - React-Core/RCTImageHeaders (= 0.61.5) + - React-RCTNetwork (= 0.61.5) + - React-RCTLinking (0.61.5): + - React-Core/RCTLinkingHeaders (= 0.61.5) + - React-RCTNetwork (0.61.5): + - React-Core/RCTNetworkHeaders (= 0.61.5) + - React-RCTSettings (0.61.5): + - React-Core/RCTSettingsHeaders (= 0.61.5) + - React-RCTText (0.61.5): + - React-Core/RCTTextHeaders (= 0.61.5) + - React-RCTVibration (0.61.5): + - React-Core/RCTVibrationHeaders (= 0.61.5) + - ReactCommon/jscallinvoker (0.61.5): + - DoubleConversion + - Folly (= 2018.10.22.00) + - glog + - React-cxxreact (= 0.61.5) + - ReactCommon/turbomodule/core (0.61.5): + - DoubleConversion + - Folly (= 2018.10.22.00) + - glog + - React-Core (= 0.61.5) + - React-cxxreact (= 0.61.5) + - React-jsi (= 0.61.5) + - ReactCommon/jscallinvoker (= 0.61.5) + - RealmJS (3.6.5): + - GCDWebServer + - React + - RNCAsyncStorage (1.9.0): + - React + - RNDateTimePicker (2.4.0): + - React + - RNDeviceInfo (2.3.2): + - React + - RNGestureHandler (1.6.1): + - React + - RNI18n (2.0.15): + - React + - RNImageCropPicker (0.32.3): + - React-Core + - React-RCTImage + - RNImageCropPicker/QBImagePickerController (= 0.32.3) + - TOCropViewController + - RNImageCropPicker/QBImagePickerController (0.32.3): + - React-Core + - React-RCTImage + - TOCropViewController + - RNReanimated (1.13.2): + - React-Core + - RNScreens (2.3.0): + - React + - RNSVG (9.13.6): + - React + - RNVectorIcons (6.6.0): + - React + - SajjadBlurOverlay (1.0.0): + - React + - TOCropViewController (2.6.0) + - Yoga (1.14.0) + +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`) + - Folly (from `../node_modules/react-native/third-party-podspecs/Folly.podspec`) + - glog (from `../node_modules/react-native/third-party-podspecs/glog.podspec`) + - lottie-ios (~> 3.1.3) + - lottie-react-native (from `../node_modules/lottie-react-native`) + - 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-native-camera (from `../node_modules/react-native-camera`) + - "react-native-geolocation (from `../node_modules/@react-native-community/geolocation`)" + - react-native-maps (from `../node_modules/react-native-maps`) + - react-native-onesignal (from `../node_modules/react-native-onesignal`) + - "react-native-viewpager (from `../node_modules/@react-native-community/viewpager`)" + - 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/jscallinvoker (from `../node_modules/react-native/ReactCommon`) + - ReactCommon/turbomodule/core (from `../node_modules/react-native/ReactCommon`) + - RealmJS (from `../node_modules/realm`) + - "RNCAsyncStorage (from `../node_modules/@react-native-community/async-storage`)" + - "RNDateTimePicker (from `../node_modules/@react-native-community/datetimepicker`)" + - RNDeviceInfo (from `../node_modules/react-native-device-info`) + - RNGestureHandler (from `../node_modules/react-native-gesture-handler`) + - RNI18n (from `../node_modules/react-native-i18n`) + - RNImageCropPicker (from `../node_modules/react-native-image-crop-picker`) + - RNReanimated (from `../node_modules/react-native-reanimated`) + - RNScreens (from `../node_modules/react-native-screens`) + - RNSVG (from `../node_modules/react-native-svg`) + - RNVectorIcons (from `../node_modules/react-native-vector-icons`) + - SajjadBlurOverlay (from `../node_modules/react-native-blur-overlay/ios`) + - Yoga (from `../node_modules/react-native/ReactCommon/yoga`) + +SPEC REPOS: + trunk: + - boost-for-react-native + - GCDWebServer + - lottie-ios + - OneSignal + - TOCropViewController + +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" + lottie-react-native: + :path: "../node_modules/lottie-react-native" + 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-native-camera: + :path: "../node_modules/react-native-camera" + react-native-geolocation: + :path: "../node_modules/@react-native-community/geolocation" + react-native-maps: + :path: "../node_modules/react-native-maps" + react-native-onesignal: + :path: "../node_modules/react-native-onesignal" + react-native-viewpager: + :path: "../node_modules/@react-native-community/viewpager" + 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" + RealmJS: + :path: "../node_modules/realm" + RNCAsyncStorage: + :path: "../node_modules/@react-native-community/async-storage" + RNDateTimePicker: + :path: "../node_modules/@react-native-community/datetimepicker" + RNDeviceInfo: + :path: "../node_modules/react-native-device-info" + RNGestureHandler: + :path: "../node_modules/react-native-gesture-handler" + RNI18n: + :path: "../node_modules/react-native-i18n" + RNImageCropPicker: + :path: "../node_modules/react-native-image-crop-picker" + RNReanimated: + :path: "../node_modules/react-native-reanimated" + RNScreens: + :path: "../node_modules/react-native-screens" + RNSVG: + :path: "../node_modules/react-native-svg" + RNVectorIcons: + :path: "../node_modules/react-native-vector-icons" + SajjadBlurOverlay: + :path: "../node_modules/react-native-blur-overlay/ios" + Yoga: + :path: "../node_modules/react-native/ReactCommon/yoga" + +SPEC CHECKSUMS: + boost-for-react-native: 39c7adb57c4e60d6c5479dd8623128eb5b3f0f2c + DoubleConversion: 5805e889d232975c086db112ece9ed034df7a0b2 + FBLazyVector: aaeaf388755e4f29cd74acbc9e3b8da6d807c37f + FBReactNativeSpec: 118d0d177724c2d67f08a59136eb29ef5943ec75 + Folly: 30e7936e1c45c08d884aa59369ed951a8e68cf51 + GCDWebServer: 2c156a56c8226e2d5c0c3f208a3621ccffbe3ce4 + glog: 1f3da668190260b06b429bb211bfbee5cd790c28 + lottie-ios: 3a3758ef5a008e762faec9c9d50a39842f26d124 + lottie-react-native: 2a1a82bb326ae51331a5520de0cf706733c6db69 + OneSignal: 5f6514ec2b931306eb067acb124afbb2e49970af + RCTRequired: b153add4da6e7dbc44aebf93f3cf4fcae392ddf1 + RCTTypeSafety: 9aa1b91d7f9310fc6eadc3cf95126ffe818af320 + React: b6a59ef847b2b40bb6e0180a97d0ca716969ac78 + React-Core: 688b451f7d616cc1134ac95295b593d1b5158a04 + React-CoreModules: d04f8494c1a328b69ec11db9d1137d667f916dcb + React-cxxreact: d0f7bcafa196ae410e5300736b424455e7fb7ba7 + React-jsi: cb2cd74d7ccf4cffb071a46833613edc79cdf8f7 + React-jsiexecutor: d5525f9ed5f782fdbacb64b9b01a43a9323d2386 + React-jsinspector: fa0ecc501688c3c4c34f28834a76302233e29dc0 + react-native-camera: 35854c4f764a4a6cf61c1c3525888b92f0fe4b31 + react-native-geolocation: a7b94614afbd5fd8350e0233a2025c8228fc8041 + react-native-maps: 6e499eee4eabf422ba8b6f94e993cc768bf35153 + react-native-onesignal: f92b6fae16388422f1b5d73b2c31e7000f481ae8 + react-native-viewpager: a7b438ca32c57b2614ece2a123e7fe116f743131 + React-RCTActionSheet: 600b4d10e3aea0913b5a92256d2719c0cdd26d76 + React-RCTAnimation: 791a87558389c80908ed06cc5dfc5e7920dfa360 + React-RCTBlob: d89293cc0236d9cb0933d85e430b0bbe81ad1d72 + React-RCTImage: 6b8e8df449eb7c814c99a92d6b52de6fe39dea4e + React-RCTLinking: 121bb231c7503cf9094f4d8461b96a130fabf4a5 + React-RCTNetwork: fb353640aafcee84ca8b78957297bd395f065c9a + React-RCTSettings: 8db258ea2a5efee381fcf7a6d5044e2f8b68b640 + React-RCTText: 9ccc88273e9a3aacff5094d2175a605efa854dbe + React-RCTVibration: a49a1f42bf8f5acf1c3e297097517c6b3af377ad + ReactCommon: 198c7c8d3591f975e5431bec1b0b3b581aa1c5dd + RealmJS: b103c28012b1abfe13396ac82e76b4f4d9d47c0d + RNCAsyncStorage: 453cd7c335ec9ba3b877e27d02238956b76f3268 + RNDateTimePicker: c4285bfdd87430f1e575b81a4742b7586a09d53e + RNDeviceInfo: 17e34f6dd902f08d88cbe2c0b7a01be948d43641 + RNGestureHandler: 8f09cd560f8d533eb36da5a6c5a843af9f056b38 + RNI18n: e2f7e76389fcc6e84f2c8733ea89b92502351fd8 + RNImageCropPicker: 54e5ea3d0e298ed51e1441a2fa0a0e7c90ee256d + RNReanimated: e03f7425cb7a38dcf1b644d680d1bfc91c3337ad + RNScreens: 03bf608b92ac0acf323f47d8f5b63a8f829340c8 + RNSVG: 8ba35cbeb385a52fd960fd28db9d7d18b4c2974f + RNVectorIcons: 0bb4def82230be1333ddaeee9fcba45f0b288ed4 + SajjadBlurOverlay: 4366a3417954b7d4a8a70682e0c43959ff76a3cb + TOCropViewController: 3105367e808b7d3d886a74ff59bf4804e7d3ab38 + Yoga: f2a7cd4280bfe2cca5a7aed98ba0eb3d1310f18b + +PODFILE CHECKSUM: 74bfdaaa49d8b2d45ed01b2e94622d7dce1bbe9c + +COCOAPODS: 1.10.0 diff --git a/ios/Pods/Pods.xcodeproj/project.pbxproj b/ios/Pods/Pods.xcodeproj/project.pbxproj new file mode 100644 index 00000000..027229b8 --- /dev/null +++ b/ios/Pods/Pods.xcodeproj/project.pbxproj @@ -0,0 +1,14819 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXAggregateTarget section */ + 1BEE828C124E6416179B904A9F66D794 /* React */ = { + isa = PBXAggregateTarget; + buildConfigurationList = F66B4191310240CA8263604EAE67F3E4 /* Build configuration list for PBXAggregateTarget "React" */; + buildPhases = ( + ); + dependencies = ( + 250A0DD415E99CA2B884B28902B26996 /* PBXTargetDependency */, + F0EEF0F26013FD40A98A706BDD7EA3C4 /* PBXTargetDependency */, + 3B1653FEF7BA349F10F3680641A48F07 /* PBXTargetDependency */, + A8A804EB573922D0303EDAB81D3043C3 /* PBXTargetDependency */, + 39E3906AD44C90B2566FD03D62AAFB8A /* PBXTargetDependency */, + A418CE1E10322B95F240AC844889C443 /* PBXTargetDependency */, + 993ADF20A7F7B9ADCFF6B283F240D4A9 /* PBXTargetDependency */, + 9E391D6ADA2D61F5EB28FB8D4C039E43 /* PBXTargetDependency */, + C7376F5772F53698D776DC58BE36FE56 /* PBXTargetDependency */, + 2724B1561A8F3E439DAC855100EBED15 /* PBXTargetDependency */, + ); + name = React; + }; + 210EB05CEC7AD9C148F90F752DE74C48 /* OneSignal */ = { + isa = PBXAggregateTarget; + buildConfigurationList = 09A5A4D585F2B2C7D977A4F1E5213117 /* Build configuration list for PBXAggregateTarget "OneSignal" */; + buildPhases = ( + ); + dependencies = ( + ); + name = OneSignal; + }; + 8CC4EAA817AA86310D1900F1DAB3580F /* FBLazyVector */ = { + isa = PBXAggregateTarget; + buildConfigurationList = 611882B4FC76DDB90E3FE11E69E82A1D /* Build configuration list for PBXAggregateTarget "FBLazyVector" */; + buildPhases = ( + ); + dependencies = ( + ); + name = FBLazyVector; + }; + E7E7CE52C8C68B17224FF8C262D80ABF /* RCTRequired */ = { + isa = PBXAggregateTarget; + buildConfigurationList = 4246E3C6364D2A7270FA7A1B253B12D4 /* Build configuration list for PBXAggregateTarget "RCTRequired" */; + buildPhases = ( + ); + dependencies = ( + ); + name = RCTRequired; + }; + ED2506AE7DE35D654F61254441EA7155 /* boost-for-react-native */ = { + isa = PBXAggregateTarget; + buildConfigurationList = FD6D84E289FBA19BEF205B7B6EACE66A /* Build configuration list for PBXAggregateTarget "boost-for-react-native" */; + buildPhases = ( + ); + dependencies = ( + ); + name = "boost-for-react-native"; + }; +/* End PBXAggregateTarget section */ + +/* Begin PBXBuildFile section */ + 000331071B7002811CC0EF01CFD96051 /* REAStyleNode.h in Headers */ = {isa = PBXBuildFile; fileRef = FFA7005524C474B5F2EF446831081F8E /* REAStyleNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 00069A58650B02A2C515F88F433F81E1 /* AIRMapPolylineManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 1C6101D9D095C3F33D6DE886B0AB0CF0 /* AIRMapPolylineManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 00B84BD69903B45D9441144508250458 /* JSBundleType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BD377210FCCB9285547E9EE90D83172E /* JSBundleType.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 00E03BFD1495F63DCD9C4EC15E9647C2 /* RectNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 07686654082AD93DC196A14398E3FAD9 /* RectNode.swift */; }; + 00E44E2AF65090E9133B19B04C911D52 /* RCTTextView.m in Sources */ = {isa = PBXBuildFile; fileRef = DF120D37EAB799E56004DAA5F5BFD01A /* RCTTextView.m */; }; + 00FCD7D78E16374FFD6B66E0B281B08B /* BundleImageProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 191CE273337761B364D9B413733FEB53 /* BundleImageProvider.swift */; }; + 0121DBEDDB1AA17D2E699AD70C4D9C7B /* cached-powers.cc in Sources */ = {isa = PBXBuildFile; fileRef = 95C92821A280714FE92A93A56A1E8672 /* cached-powers.cc */; settings = {COMPILER_FLAGS = "-Wno-unreachable-code"; }; }; + 012C22E3241018869C5D0B86262BC20A /* PolygonNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9B9A2C0F7A74B8F14BDB372325533AF /* PolygonNode.swift */; }; + 0161DF63262B2BD212211B0075E4EF29 /* RCTActionSheetManager.m in Sources */ = {isa = PBXBuildFile; fileRef = A3982C7F17CB617859CB2B886E1901E8 /* RCTActionSheetManager.m */; }; + 01915C0FD507AC4DC99E311AADF0AC68 /* GCDWebServerStreamedResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = C8AA93ADD3D0BAF343551D05C075CE6B /* GCDWebServerStreamedResponse.m */; }; + 0198BBEDAEE83CB9F39C8B270B33FD9C /* RNSVGSolidColorBrush.m in Sources */ = {isa = PBXBuildFile; fileRef = 477E8E8EE5FA9726A8CF90F91608AEA9 /* RNSVGSolidColorBrush.m */; }; + 01A75BCE4636A7DCF23565521DA2AB7A /* RCTMultiplicationAnimatedNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 706EC88AF966B49FD2374357062CBA52 /* RCTMultiplicationAnimatedNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 024A736BD21972FEC121A497F40C5492 /* RCTVersion.m in Sources */ = {isa = PBXBuildFile; fileRef = 24FD49C2FE9E5CF40593254E6A14D417 /* RCTVersion.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 0278A0076CA97F0435DCD0FB8873AD34 /* NullCompositionLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 76E81A2910CF3CC4663AB4279E036EF8 /* NullCompositionLayer.swift */; }; + 02923C069415F0CD65562905393429E8 /* RCTLog.h in Headers */ = {isa = PBXBuildFile; fileRef = 6FF5B0AD00C735E86BAA53FF5809A594 /* RCTLog.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 02E6BB7BB47856BA6733DFB070C16895 /* REAAllTransitions.h in Headers */ = {isa = PBXBuildFile; fileRef = 3F000582EA57EDDD6ABD5BA1BBE0EAF3 /* REAAllTransitions.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 0328A7D12DC5BA94F74838506CCC4E0F /* RNSVGMask.h in Headers */ = {isa = PBXBuildFile; fileRef = F0390652A3087405164577EEF51479EC /* RNSVGMask.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 03CE982EEBBC6990C319C4A6C9C007F7 /* RCTConvert+UIPageViewControllerTransitionStyle.m in Sources */ = {isa = PBXBuildFile; fileRef = B25A0FDBB0547E10A7972F8020192DD2 /* RCTConvert+UIPageViewControllerTransitionStyle.m */; }; + 03ED2397D295BDEFC83819BBFBBB13BA /* RNGestureHandlerManager.h in Headers */ = {isa = PBXBuildFile; fileRef = C8595193B7FFA489BFED367220D47EF0 /* RNGestureHandlerManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 03FCDA646632FB16A63B53FE2E337BD2 /* symbolize.cc in Sources */ = {isa = PBXBuildFile; fileRef = E0842FD5F2B9FB71D5541CC3963510CB /* symbolize.cc */; settings = {COMPILER_FLAGS = "-Wno-shorten-64-to-32"; }; }; + 0450FE85C4DEEC4505AECA8B73A0B8DE /* RCTJavaScriptLoader.h in Headers */ = {isa = PBXBuildFile; fileRef = AB2C3D40246F6C6D5676D4E115698DC4 /* RCTJavaScriptLoader.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 04732109EF01BC61F9ADF7182428F901 /* React-RCTSettings-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 13FCC776626B411C9D10280D345B3FEF /* React-RCTSettings-dummy.m */; }; + 047ACA06CEC897F74C59BD937FF5DF42 /* RCTSinglelineTextInputView.h in Headers */ = {isa = PBXBuildFile; fileRef = 169EDBEB2871E1DFEA013CA498C9D6D4 /* RCTSinglelineTextInputView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 049AD78AD2E6445D635603F1C70A88C0 /* JSIExecutor.h in Headers */ = {isa = PBXBuildFile; fileRef = 323DC5871F43F65687CDF081F2B76E16 /* JSIExecutor.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 049AD8111B97F46D653BBFB7C570216D /* RNSVGLength.h in Headers */ = {isa = PBXBuildFile; fileRef = FFBCDE436499D87DB7B7D57BAF47AA36 /* RNSVGLength.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 04C87EFCEB86D2C356AAF3C69AFA7F08 /* RCTSourceCode.h in Headers */ = {isa = PBXBuildFile; fileRef = B21B12DEAC1A3EEF00ADAAF1AD5120BE /* RCTSourceCode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 04FFBD76C0A9AB081EBA6E5D14EB5E1F /* LayerImageProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8748DE6AE7A8A2E45CAD0B7C625A45AE /* LayerImageProvider.swift */; }; + 05336DAEF4B0FC2932E00773C4AF00FF /* RCTView.m in Sources */ = {isa = PBXBuildFile; fileRef = 137015BB9FF6F82875A08649421F94AB /* RCTView.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 057861A96FE516548503DE98D2801CE2 /* RNDateTimePickerManager.h in Headers */ = {isa = PBXBuildFile; fileRef = FC58373E729945E046652F745D1FD718 /* RNDateTimePickerManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 05FC9EE588B6934A3060A79A50A4CEE0 /* RNSVGClipPath.m in Sources */ = {isa = PBXBuildFile; fileRef = 347C8BF9569CAF6E292C0B093F26D399 /* RNSVGClipPath.m */; }; + 061FCB70A13E06EAE1BDB03834EE7E64 /* RCTRootView.h in Headers */ = {isa = PBXBuildFile; fileRef = DBBF84BBC34F9893F03FF07C8AC600E3 /* RCTRootView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 067D9292D267AA7CAB1027A40033DF03 /* RCTSafeAreaViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 1FBD936B1589ECFF64B13773254A2084 /* RCTSafeAreaViewManager.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 069DBB2716368F864AC54FB16D791C74 /* RCTTextAttributes.h in Headers */ = {isa = PBXBuildFile; fileRef = 60E6770885A054426AD4666D82C8755A /* RCTTextAttributes.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 0711E1E64D9B95489B13071FAB83E1EB /* RNSVGTextPath.h in Headers */ = {isa = PBXBuildFile; fileRef = 95DB12834C63CB813C969B0CC07B9B74 /* RNSVGTextPath.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 071A934866BB69B2199EBC47F537B5D5 /* RCTRootShadowView.h in Headers */ = {isa = PBXBuildFile; fileRef = 2D5E9ECC168364E3D58E6BB18705FD72 /* RCTRootShadowView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 07237BC6538AB015D24D62C9B290ED88 /* RNSVGSvgViewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 79556F42A611B43D2BF03DCFAF7FB62C /* RNSVGSvgViewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 074A964940CCDA941E28302D8F59876A /* RCTUIManager.h in Headers */ = {isa = PBXBuildFile; fileRef = C1EE4AEEC2C8270869134AA26A2216CF /* RCTUIManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 076D827E60AE0F4B0D9D02915EBEDF40 /* MessageQueueThread.h in Headers */ = {isa = PBXBuildFile; fileRef = E2D87BB320FA21D43D6E1FC934AE8602 /* MessageQueueThread.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 077890674FFB4864EC355AB662C5502A /* RNNativeViewHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 04B39E7C37DEEA604BED0EFA7CBF1BE9 /* RNNativeViewHandler.m */; }; + 079BDF9DF70D6EE92F6071B546CC4DCA /* RCTAlertManager.m in Sources */ = {isa = PBXBuildFile; fileRef = B78968C110DA72E82244231C1C647A0A /* RCTAlertManager.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 07FF52CB948A61178E340F8AB724249B /* RCTLayout.h in Headers */ = {isa = PBXBuildFile; fileRef = DECEFD6FC72D238EF6FBB76AA960FB4D /* RCTLayout.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 08049A6D30CC95AF652F3E19D81B42E8 /* RCTInputAccessoryViewContent.h in Headers */ = {isa = PBXBuildFile; fileRef = DFC0809A9A24895946B8E7423321A9AF /* RCTInputAccessoryViewContent.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 080D954B5EBF8008379A2C5502FB1807 /* RCTParserUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = B906FA2FAA49312F0F7E0E6ADB09F70D /* RCTParserUtils.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 0887E748006A6008A210D5922CF29799 /* AIRMapMarker.m in Sources */ = {isa = PBXBuildFile; fileRef = 7E338539E34FDAA1383ADE04F84483A1 /* AIRMapMarker.m */; }; + 08AA6452D3AA1BD563F8B8541EBCD7EC /* REAParamNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 44FA199887993BF19DFE52C20879A296 /* REAParamNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 090CFBE4406371D791D2FBB837A032B9 /* QBVideoIconView.h in Headers */ = {isa = PBXBuildFile; fileRef = 205D07EDB9A0856EBEC047D246602038 /* QBVideoIconView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 097115445A404676AADF2DA1068D8924 /* Utils.h in Headers */ = {isa = PBXBuildFile; fileRef = 70E7BF838C02C0A2FF48EB19B10BDC89 /* Utils.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 0981837AB3F9AEF056AE5578EC36BBE5 /* RCTSafeAreaView.m in Sources */ = {isa = PBXBuildFile; fileRef = E0A91CADA2435B8C6AC61AEF45EF44A3 /* RCTSafeAreaView.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 09835785CBAE553B6BCD63D08D065E7F /* FloatValueProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = E402A7FDCA4C92CCC0CC1D823D56DDAF /* FloatValueProvider.swift */; }; + 0A04CC7C8ACFBE953C9E5B51FF2C2A0B /* RCTBaseTextInputShadowView.h in Headers */ = {isa = PBXBuildFile; fileRef = E468B90925B127048D26250229969696 /* RCTBaseTextInputShadowView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 0A387C09B0BAB5FE6A61AEE9D25A5DEA /* RCTSurfaceStage.m in Sources */ = {isa = PBXBuildFile; fileRef = ECC6BA4132707B740F28A2F224EFEEF3 /* RCTSurfaceStage.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 0A395EFEEB743089E1FCD5F7C0AC7DE0 /* RCTUIManagerObserverCoordinator.h in Headers */ = {isa = PBXBuildFile; fileRef = F7531675332F461843519F60E78C5AA3 /* RCTUIManagerObserverCoordinator.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 0A50B4FE21E8A78FEF7156ECC07D90F1 /* RCTShadowView+Layout.h in Headers */ = {isa = PBXBuildFile; fileRef = C4A2AD0F6BC89DF4683581520F2DF596 /* RCTShadowView+Layout.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 0A8D27FA17E653DEF8B953AC197BB561 /* RCTComponentData.h in Headers */ = {isa = PBXBuildFile; fileRef = 5D819E0C13CBF2573B035CAD010B0192 /* RCTComponentData.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 0AA17ED672487BEA9247D0360D6F732D /* object_notifier.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9D17F764A52524A3BE521716409A4800 /* object_notifier.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + 0AB6392EFBC2634DD11DF56604E9212C /* RNGestureHandlerRegistry.m in Sources */ = {isa = PBXBuildFile; fileRef = A71C93F96E3F8B126A2B63D17923786B /* RNGestureHandlerRegistry.m */; }; + 0AD68CEE48BD603837FC016D4E8D2D91 /* RCTScrollView.h in Headers */ = {isa = PBXBuildFile; fileRef = DC435887F2A0A576ECF94C49BFA8486A /* RCTScrollView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 0B2AB7A836A0EF1B01745CE562C24317 /* jsilib.h in Headers */ = {isa = PBXBuildFile; fileRef = 64C33B8BCF1452B2A9CF1363C0A924DE /* jsilib.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 0B5C32950459151059F776623B56EFC9 /* GCDWebServerErrorResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = BE927428A642478F54CBB791E0F20206 /* GCDWebServerErrorResponse.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 0B72EB085C83A757C1565DE05396002D /* RNSVGUseManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 446AA8F82AC823BAC4C97A631539B4AC /* RNSVGUseManager.m */; }; + 0B89657667FC8C5C645743CC229B2636 /* ko.lproj in Resources */ = {isa = PBXBuildFile; fileRef = D8DC38554D4D0A8BD7A6E130EA61FC70 /* ko.lproj */; }; + 0BA0315D250F3BD7045FCD10E4DD6611 /* ColorValueProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 49C4FF93669B6B8D7C637184CB73BB14 /* ColorValueProvider.swift */; }; + 0BAD0E4F37E1C84962705C684FF3D98A /* RCTImageDataDecoder.h in Headers */ = {isa = PBXBuildFile; fileRef = F8E0B5C65F8865117C3CC9B7128D9FB0 /* RCTImageDataDecoder.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 0BC1725B1B7919FB2B3CE03B756BAE71 /* RCTMaskedView.m in Sources */ = {isa = PBXBuildFile; fileRef = 543C167EFACE8505A8CD9A122315CC5B /* RCTMaskedView.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 0BD346190BDD1F8961C6EAA4FE0E07BF /* glog-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = CA763E2CC1D800F79C201D6E781F9B61 /* glog-dummy.m */; }; + 0BEEB80B58D941A4024FA1E8F73D6822 /* RCTSurfaceRootShadowView.m in Sources */ = {isa = PBXBuildFile; fileRef = F51F6674E326D1E9CD1E31C711594411 /* RCTSurfaceRootShadowView.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 0BEF54B38CEC10FE4246727EF053C264 /* RCTInputAccessoryViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = D1A453C9ADA80B891B63D853072A7412 /* RCTInputAccessoryViewManager.m */; }; + 0C44EB8E8974010F942E068911E48E3A /* RNSVGTextPath.m in Sources */ = {isa = PBXBuildFile; fileRef = FF595B3F7A59900769E6A40AB26F2F61 /* RNSVGTextPath.m */; }; + 0C5086CCAC180C0B8CBB98ED224527E7 /* RCTGIFImageDecoder.m in Sources */ = {isa = PBXBuildFile; fileRef = EE48833A088C28D4F67F1E84A5F5D98A /* RCTGIFImageDecoder.m */; }; + 0CA154F63C1CFC60183D7E922BDAE1EB /* RCTUIImageViewAnimated.h in Headers */ = {isa = PBXBuildFile; fileRef = 3D2E2B7B045B7C4AA1845771A8776D67 /* RCTUIImageViewAnimated.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 0CD2FD62D3600BC23338139B8E9F0F2C /* RCTActionSheetManager.h in Headers */ = {isa = PBXBuildFile; fileRef = C0EEEF34099B1049223F1BF0653EBD6A /* RCTActionSheetManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 0CF6018F8315C724AA7BEDC5D486A367 /* ru.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 6257AED638D193381FA210B25D71AC0E /* ru.lproj */; }; + 0D74EEDB78D1E394DD4B95828060944F /* React-CoreModules-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 71906625612FE7619B438B05817919C2 /* React-CoreModules-dummy.m */; }; + 0DAADC5B8A985714B4808C746FC2EFC1 /* RNSVGRect.m in Sources */ = {isa = PBXBuildFile; fileRef = 3A5C8C36C38A1242C5E500BB055C26E7 /* RNSVGRect.m */; }; + 0DC83818DF1A21C160E31A6106B38EB3 /* RCTUITextField.h in Headers */ = {isa = PBXBuildFile; fileRef = 47795E50FDB26268311A15A1DFF2EEBC /* RCTUITextField.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 0DC909CFFCF8410F5BD1781466D734E2 /* RNSVGPathParser.h in Headers */ = {isa = PBXBuildFile; fileRef = ECB135AD98CEE611CEC7D7453BC0C694 /* RNSVGPathParser.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 0E0C055E538047CE536F7FDBC742DD8F /* GCDWebServerURLEncodedFormRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 8BBF3CBB504CE8F81960ECCA650D2605 /* GCDWebServerURLEncodedFormRequest.m */; }; + 0E136C725249BEE6925DE65691CB311D /* ca.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 78321038125796A200A279EFFF357917 /* ca.lproj */; }; + 0EB4F974851D1F7C202E3756E63EB9B0 /* RCTShadowView+Layout.m in Sources */ = {isa = PBXBuildFile; fileRef = 97E492FC2B7A1F5A09AFE9B80E97425E /* RCTShadowView+Layout.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 0ED314D24D548E6E53B3C40F5DD4DCA4 /* RNSVGClipPathManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 54C5655DF49FC43E94FDDB06369C662C /* RNSVGClipPathManager.m */; }; + 0F0193C74FF608B29CF21FDFFEAA6B32 /* RCTScrollViewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = F4729515DBC4439BE5AD5831429F2076 /* RCTScrollViewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 0F0F3EC2B06494E67C1E63FABECA95ED /* RCTObjcExecutor.mm in Sources */ = {isa = PBXBuildFile; fileRef = 3B67F72E769297CA45887507876A3015 /* RCTObjcExecutor.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 0F28B38A6ED158C5D5D1CEEF5D62ED0A /* RCTTextAttributes.m in Sources */ = {isa = PBXBuildFile; fileRef = 5CFF9A356B85B352D00278459B8D9CCE /* RCTTextAttributes.m */; }; + 0F90E1CAFC618894190D983ADB17F75E /* react-native-viewpager-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = BBBE4C9FA273586C70D4759021010E97 /* react-native-viewpager-dummy.m */; }; + 0F942783F7DCC9CC27307B24BDFD9252 /* en.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 853C49CD265C5AA5DA2552C088BFD923 /* en.lproj */; }; + 0FC1D8801EEE6E866836816626B0B371 /* NSMutableDictionary+ImageMetadata.h in Headers */ = {isa = PBXBuildFile; fileRef = FBCAA30722C680310F6F34A274DEBD27 /* NSMutableDictionary+ImageMetadata.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 0FF8134675F1D118A41C51EE46492B88 /* LRUAnimationCache.swift in Sources */ = {isa = PBXBuildFile; fileRef = F5D9D2F1B88A2C27BEC49EAA321A63F8 /* LRUAnimationCache.swift */; }; + 0FFA94E9F6C87561F5753AF8EAFB3105 /* RNSVGMaskManager.h in Headers */ = {isa = PBXBuildFile; fileRef = DB7CD2049B6D935CE30CCBDD6A43C3F1 /* RNSVGMaskManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 1003DBFE8C5C34601103B086706E132E /* GCDWebServerRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = 94820FCDCD66A0C33AED86403CB962CD /* GCDWebServerRequest.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 10997330E9ABA807B97FF19B1AE88118 /* RCTPerformanceLogger.m in Sources */ = {isa = PBXBuildFile; fileRef = 6AB7D4191A575C3BD709C1A9DB46EF2D /* RCTPerformanceLogger.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 10AC41934DB04D2D895B69D878A62B76 /* RCTLocalAssetImageLoader.m in Sources */ = {isa = PBXBuildFile; fileRef = 5A225CCAB9B5D0F17F06297F84DBFD18 /* RCTLocalAssetImageLoader.m */; }; + 10BAC344BC91CF819A3F97DCFF09D1BE /* CxxNativeModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 55DDE65271BFAC09970FFB0E23CBB6B9 /* CxxNativeModule.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 11117471A327647051B3C1210DF2FCAD /* log_severity.h in Headers */ = {isa = PBXBuildFile; fileRef = 647C381FBA74C3BE6C654B29F505BAD9 /* log_severity.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 11231378DFABBFD74020590AA4BFDFDF /* RNSScreenStackHeaderConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = 960CD1D347FA64D342D038A9EB001117 /* RNSScreenStackHeaderConfig.m */; }; + 1128213045AF1DD90122188DE7C7F43D /* RNFaceDetectorModuleMLKit.m in Sources */ = {isa = PBXBuildFile; fileRef = 88890B189DF37CBB296B08B06198FF0A /* RNFaceDetectorModuleMLKit.m */; }; + 1167A79FAB34F997F4ED1E0E34145AF0 /* GCDWebServerFileRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D4A7DD313A99C0CFD2C8041F7885F9A /* GCDWebServerFileRequest.m */; }; + 11B94708603F9D3F907C58FE21C39F3F /* fi.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 994A963E0D7661696AA5B67923A56215 /* fi.lproj */; }; + 1200AB1E7B6722694536F7E95DDB60B0 /* RCTScrollContentView.h in Headers */ = {isa = PBXBuildFile; fileRef = 50C720EC05325DF48AE2E4A39BA11549 /* RCTScrollContentView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 126170CBF0301E5B24BB757BD0EB68C3 /* react-native-camera-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 6C6A076C2D6649006270BB54900B9B84 /* react-native-camera-dummy.m */; }; + 126E4ED5F9F0FBC07F3E71E11B01C175 /* RCTSafeAreaViewLocalData.m in Sources */ = {isa = PBXBuildFile; fileRef = CFFE4022583CE979CBE88F9EF7A53714 /* RCTSafeAreaViewLocalData.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 129FD7995315C6C01DD47E15DE87721F /* MethodCall.h in Headers */ = {isa = PBXBuildFile; fileRef = EB409309980C3946B8F2FF7A6E8536C0 /* MethodCall.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 12C514F998B809ADAD23D288CFA458FB /* RNSVGDefsManager.m in Sources */ = {isa = PBXBuildFile; fileRef = CE9DD46C81EF46B852183AF0D39FB17F /* RNSVGDefsManager.m */; }; + 12D3E5811537D6ED6191B50BD67E12B6 /* RCTUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = 7E45E1203B257723AE4AE9E54307ED86 /* RCTUtils.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 13346E9AD1A7FD88778CAC3B267B6DC7 /* AIRMapCallout.m in Sources */ = {isa = PBXBuildFile; fileRef = 68706D4A0C78AACC5676D109B6335143 /* AIRMapCallout.m */; }; + 1354D15C1FC6117BD4A53FF27B047C70 /* RNSVGBezierElement.m in Sources */ = {isa = PBXBuildFile; fileRef = AD1C169B5A1B03414C0B5CD6123716D2 /* RNSVGBezierElement.m */; }; + 1359F278BEA1472D2CDD5BB06FBE9E10 /* StrokeRenderer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 346D484E51A4C1F1C5C17CA14DCD3495 /* StrokeRenderer.swift */; }; + 136B485513912EDEC15F03201C5D3CC6 /* CompoundBezierPath.swift in Sources */ = {isa = PBXBuildFile; fileRef = E06365B96C71BE4DAA287F6646782D03 /* CompoundBezierPath.swift */; }; + 1385DCF5E319B87BA2D7A6E617AC54B1 /* ShapeRenderLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4CE10757D5EAF8FA97E72D1BB8C99BC /* ShapeRenderLayer.swift */; }; + 13BD0933C7349140395E3BA40F6CE4D8 /* RCTInputAccessoryViewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = C308DA183C7CD21A6850F981B2ECC4C7 /* RCTInputAccessoryViewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 13D01A42A7ED25E95535A45E7C2A6474 /* AIRMapOverlayRenderer.m in Sources */ = {isa = PBXBuildFile; fileRef = FD5598ECB28F32444536F0916852780B /* AIRMapOverlayRenderer.m */; }; + 13EC343B20EB84E84AE56C3793EFDA86 /* RCTPerfMonitor.m in Sources */ = {isa = PBXBuildFile; fileRef = 3A64CC61B2E347F7306EB34FA487E4B0 /* RCTPerfMonitor.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 13F8B35CBE3F43B5C744C84565CEE6E3 /* GroupNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB24637CF6CAB92C1AE08368F5461B77 /* GroupNode.swift */; }; + 1420E11EBF35998E6520516FC3B9E45C /* RCTVirtualTextViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 49D41D79C48D7AD6384AED26AFC8836E /* RCTVirtualTextViewManager.m */; }; + 14265433414730CD24FF14874EA9C57D /* RNSVGViewBox.m in Sources */ = {isa = PBXBuildFile; fileRef = ED089C088BDD40333CC6D7AE6A5C89AF /* RNSVGViewBox.m */; }; + 1486156DFCD66204248160D76650E74A /* fast-dtoa.cc in Sources */ = {isa = PBXBuildFile; fileRef = 54DA99180633C4B97108845D3332EF0D /* fast-dtoa.cc */; settings = {COMPILER_FLAGS = "-Wno-unreachable-code"; }; }; + 14B8D878846B23586907D32C7D97B2B5 /* RCTSinglelineTextInputViewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = BC043FF9D0598B50198A39EA41C2E162 /* RCTSinglelineTextInputViewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 14C132073944D3E3B2EBD5D7930F9D2F /* RCTNetworkTask.m in Sources */ = {isa = PBXBuildFile; fileRef = 52B6E83635FB7CD406A454B4D3CCA489 /* RCTNetworkTask.m */; }; + 14C9D00F4CB98702788045B3A381AE03 /* GCDWebServerHTTPStatusCodes.h in Headers */ = {isa = PBXBuildFile; fileRef = BC1FF3106DCABE9CE413C693B9BA1520 /* GCDWebServerHTTPStatusCodes.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 14DAD3AFE4891F611FEB4FE7E90E2097 /* Demangle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B787E0662BF13086B52260D3663D4121 /* Demangle.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -DFOLLY_HAVE_PTHREAD=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 14FDF7279CF0D2D3DB1BCF00AA537D67 /* RCTSegmentedControl.h in Headers */ = {isa = PBXBuildFile; fileRef = AFDF9BE84F508E9BD1BCF12852D8D68A /* RCTSegmentedControl.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 155D671BFE7F4DBC86349342979AC616 /* TOCropToolbar.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A416EE5149AFE4AD63A42AA4505BD18 /* TOCropToolbar.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 15682CB80270FC615E3D1401F03F24A9 /* RCTTypedModuleConstants.mm in Sources */ = {isa = PBXBuildFile; fileRef = EF2C038FAAFABD6FE6339077DDF5CD33 /* RCTTypedModuleConstants.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32"; }; }; + 156F56B3B4F5BA3B5079F7750495D22C /* RNSVGUse.h in Headers */ = {isa = PBXBuildFile; fileRef = BB4E12F71271E9C4C040BA76CC4691CB /* RNSVGUse.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 159DA6FFBF4018B27C53D705F38C4C93 /* base64.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F041CEC0836A9655C3E02C981F08D7D9 /* base64.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + 15B825DBFD2552FFCFFBC2416755655E /* REATransition.h in Headers */ = {isa = PBXBuildFile; fileRef = 42A5D9CA7D1A69CB22B716490023506C /* REATransition.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 15DEA9A0FBC9EDDD53F00E2920FC2CA9 /* RNSVGTSpanManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 0510862F2068AB90B9770E15E2F6D4AE /* RNSVGTSpanManager.m */; }; + 15E375B4C931B7B9B3E2C5A910A5E16E /* REAAlwaysNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C8051C4A82E5F9EBF47A3770257222C /* REAAlwaysNode.m */; }; + 16411A9CB1638331EAEF44E56D42FF54 /* Shape.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50584A9738977F02BAA19FAF1852C173 /* Shape.swift */; }; + 166958E42BEA6DE70BB2A5EE5CFBF45C /* SMCalloutView.h in Headers */ = {isa = PBXBuildFile; fileRef = 55205C3336F08E009307CFABE94124D2 /* SMCalloutView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 1673CC019CC70AED81B28443A2429C3C /* RNSVGGroupManager.m in Sources */ = {isa = PBXBuildFile; fileRef = CB848675B688A36A8878F5781344B6F2 /* RNSVGGroupManager.m */; }; + 168B85864E81B6C5522ADED9658F364F /* RCTUITextField.m in Sources */ = {isa = PBXBuildFile; fileRef = A285E234AE588B3FFAB4E51F75427459 /* RCTUITextField.m */; }; + 1736D508FE61BF5099325C9E723FFF86 /* React-RCTAnimation-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = D5BED0988C81B37AE58174DD0F1CFB34 /* React-RCTAnimation-dummy.m */; }; + 175B26C0EAABD85DA6DECCE4302D7272 /* experiments.h in Headers */ = {isa = PBXBuildFile; fileRef = B4AD0E605D4A5847534F78A5D89EA0B3 /* experiments.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 17AAD15473FFD31C80322EB7A35B0BA1 /* RCTClipboard.m in Sources */ = {isa = PBXBuildFile; fileRef = AB896579CC45DAEEE97FF62B7C4A34CB /* RCTClipboard.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 182EA5492F1CC2015C6BE060F77F936C /* AIRMapUrlTile.m in Sources */ = {isa = PBXBuildFile; fileRef = FDE658A03788A8117ABC97917B668880 /* AIRMapUrlTile.m */; }; + 1857582C04C213B236A62DA613F86A53 /* RNSVGLineManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 24436007543218C03B4F92F2967F0539 /* RNSVGLineManager.m */; }; + 189DD7918B6794E327613D8F8D92C74D /* RCTParserUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = F01D8D99CB283B7DA0E86DCBC92C7D46 /* RCTParserUtils.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 18A07D517FF54DE93E7EF7613F163A45 /* RCTSlider.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DFEDFE014DE1934C27D003F5924802F /* RCTSlider.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 18ACD1A88651210CFEDAF164CF23B8CA /* en.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 0B9CAD7894B97C12F2C1AB36BC90525B /* en.lproj */; }; + 1916E8EAD94F2539B35EAAF202A82D4C /* GCDWebServerFunctions.m in Sources */ = {isa = PBXBuildFile; fileRef = C147E4B6DD38F300313E1E39EC1103FD /* GCDWebServerFunctions.m */; }; + 19700AD761B0B55A1FAFEE5A295F35B7 /* log.h in Headers */ = {isa = PBXBuildFile; fileRef = 3EC517E5BE2DFFDFE8AE4A617845A458 /* log.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 19C097C8B02BAE31D841DB83A6C0626A /* RNSVGPath.h in Headers */ = {isa = PBXBuildFile; fileRef = C2323B1BAD30385192D4D97921A4CAB6 /* RNSVGPath.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 19C3BBF564F8976EB6D91418CE10F903 /* RNGestureHandlerModule.h in Headers */ = {isa = PBXBuildFile; fileRef = DCA3D284011188114D17BD5EFE99AC6D /* RNGestureHandlerModule.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 1A0F296F82EDBC6AFBC4A95F8E0147E9 /* RCTVirtualTextShadowView.h in Headers */ = {isa = PBXBuildFile; fileRef = 2078B3DDC90E5F15CFB05EF4FE84594A /* RCTVirtualTextShadowView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 1A21736B35D16EC4B46F659FC3D5A873 /* AIRMapWMSTile.m in Sources */ = {isa = PBXBuildFile; fileRef = 4D55A6519C43271CF42C22ED8817DF7D /* AIRMapWMSTile.m */; }; + 1A577045D4DBE8D8163C7FF960E520C2 /* GradientStroke.swift in Sources */ = {isa = PBXBuildFile; fileRef = BE3A2DF18940CE2E47F7BA1621354EF3 /* GradientStroke.swift */; }; + 1A6A3AFB5B9E105E9D82037C30EF8E3C /* RCTSurface.h in Headers */ = {isa = PBXBuildFile; fileRef = 650A6C7022A7065CCB196F45C35EC45A /* RCTSurface.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 1A752D5DC828B4A4733FB3658269A066 /* RNSVGPathManager.m in Sources */ = {isa = PBXBuildFile; fileRef = E79FD9B08B2955255DD23ECB74BA5CBE /* RNSVGPathManager.m */; }; + 1AAA75916D3BF8CA7799A694646A9311 /* RNSVGCircle.m in Sources */ = {isa = PBXBuildFile; fileRef = 8056A8F01A18D65968EAFF0ED8A9EC42 /* RNSVGCircle.m */; }; + 1AABD3B8DBE1DD6E28311BC99D640AF2 /* results_notifier.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B13DE48D3ADBED00566B79F9431CFD69 /* results_notifier.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + 1AF17FD06D714443065648EC2942605A /* DeviceUID.h in Headers */ = {isa = PBXBuildFile; fileRef = DCB1F6E8708F8E9C82CD7E18EAC23C6F /* DeviceUID.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 1AF84CB9DB53B4CB022778B1EB000F06 /* GCDWebServerDataResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = EF0BFBC5D46AA9AED1C9E76B128253C6 /* GCDWebServerDataResponse.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 1B570E1C30FF5B8680513ED1BE1DB590 /* RNSVGLinearGradient.h in Headers */ = {isa = PBXBuildFile; fileRef = E11FF1C3AB0FFFB11BDCF1136F614086 /* RNSVGLinearGradient.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 1B5F0131E8E07DE1BB00876951C0353F /* LottieView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0D9D2DFD8FC0B804FEA775619D6BF5B4 /* LottieView.swift */; }; + 1B7A10E9B93D7421B18C216E78DA88CF /* RCTCxxModule.mm in Sources */ = {isa = PBXBuildFile; fileRef = 4442A9BAFB76C9CB739D0B279556805E /* RCTCxxModule.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 1C08B23DD293B5C699B804AE8E549E59 /* RCTRedBox.m in Sources */ = {isa = PBXBuildFile; fileRef = 325333FFEBFDCD2E8C9045BEA77ABE1E /* RCTRedBox.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 1C26515EED65B95C1190B35FDAB7E02B /* UIImage+Resize.m in Sources */ = {isa = PBXBuildFile; fileRef = 70EF3D448847749995CB9ABEE7EB1F7D /* UIImage+Resize.m */; }; + 1C512B7F40583377A8F74DEA5627DC23 /* RCTAnimationUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = 73485C316AF95C3A4CFBC5028A5C9161 /* RCTAnimationUtils.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 1C52C6971F3E1B451FC525BCE69E28AB /* AIRMapCoordinate.h in Headers */ = {isa = PBXBuildFile; fileRef = A73745461D3BAA830ABCB7DB9525640B /* AIRMapCoordinate.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 1C6EFE77514C85321FA21BA844BEE03C /* RCTSinglelineTextInputView.m in Sources */ = {isa = PBXBuildFile; fileRef = 4F1B3069E475A1E12C80ABEB4DD2878B /* RCTSinglelineTextInputView.m */; }; + 1C6F998844FD472C99EF521824A80BB1 /* logging.cc in Sources */ = {isa = PBXBuildFile; fileRef = 8DFDDA5B1E2576F50B76E5D892C73D1F /* logging.cc */; settings = {COMPILER_FLAGS = "-Wno-shorten-64-to-32"; }; }; + 1C743ED2D66F0CC91316EA6D724614B6 /* AnimationKeypathExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 42451D0E40397FA81C31C46B2A2325DD /* AnimationKeypathExtension.swift */; }; + 1C87BCCA6A80464790658CCE117A2354 /* YGLayout.h in Headers */ = {isa = PBXBuildFile; fileRef = DCBFB98B4E7DF1747B643F0A9B008B5A /* YGLayout.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 1CB57BE4B521E8AA6D6F1B10B04C45E1 /* RCTBaseTextViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = E7E628535CF98562C7E58A25978F8A7C /* RCTBaseTextViewManager.m */; }; + 1CD174A94F1373317171697ED2CE4EA1 /* RCTShadowView.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F86DBC845FF508ED1118C7A90DA9731 /* RCTShadowView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 1D66E156B8AD27CCEE5E2D175E50E2B5 /* DoubleConversion-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A9EF876744D8B1BC4F57B68CDD2F29BA /* DoubleConversion-dummy.m */; }; + 1D97DD40C38E909374A661449DB775F2 /* Ellipse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 41CB72A3122A1E30DCC7AFC407F1FCCC /* Ellipse.swift */; }; + 1D9902E50C99AF876845734FFBCBDD00 /* raw_logging.cc in Sources */ = {isa = PBXBuildFile; fileRef = 2929E06F27F8A455AB792F3500755937 /* raw_logging.cc */; settings = {COMPILER_FLAGS = "-Wno-shorten-64-to-32"; }; }; + 1DAB8167D913DC85404D858A4F25EE64 /* RNSVGDefs.m in Sources */ = {isa = PBXBuildFile; fileRef = A32F01ACFFEAF4880AB04C5CD94993BB /* RNSVGDefs.m */; }; + 1DFF5D0A2693063826F926E77CC082FD /* PathNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1C57D8EAA19AAA2C5663514FFBFFBC06 /* PathNode.swift */; }; + 1E1456286C1D93DC2A848A173C6CA46E /* ImageCropPicker.h in Headers */ = {isa = PBXBuildFile; fileRef = 11B4F4AFD4F5FE6CEF8F09868E7DCDC6 /* ImageCropPicker.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 1E585FB937DE6BE7D080ED5626175361 /* de.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 65A94B5CC4FCC790C3DDC2DBDCCB3295 /* de.lproj */; }; + 1E5A64A68F1D4178553588899AA968F3 /* RCTModalHostViewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 1FDE134233B037B8C9DCE74F8F183AF8 /* RCTModalHostViewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 1ED3A3DB18B0D7129F78B640C0F033FD /* RNSScreenContainer.h in Headers */ = {isa = PBXBuildFile; fileRef = 5A405160551CE5809F6A0E91290D4C53 /* RNSScreenContainer.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 1EF0FFBF1C87F2DC66C4800A37E80B5E /* REANodesManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 93DCCC4CB2F1BC707B6DDBA8712CBC6E /* REANodesManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 1F5BE9BBD60F40AEECE1EF476DAE0554 /* RCTPointerEvents.h in Headers */ = {isa = PBXBuildFile; fileRef = A06363BC33142298494941E6AF9F21E6 /* RCTPointerEvents.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 1FA2F8CD459868FE7D6A022B8F7DD2BD /* RCTPerformanceLogger.h in Headers */ = {isa = PBXBuildFile; fileRef = F243D646A3710E702CD9FF1634F78214 /* RCTPerformanceLogger.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 1FC04C1F53BE2B6661F299341EB72A95 /* FBReactNativeSpec-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 32078741A84563F5B590C6DF6301B49A /* FBReactNativeSpec-dummy.m */; }; + 2000FC3766BF33456A529102F2B27B5E /* RNSVGImageManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 1721CAFC0F91924A0DE087058D8540BF /* RNSVGImageManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 20435AF92E7E51EEF1761B4462176979 /* RNI18n-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 9EF2337DC27DA0B6CE8727976736E918 /* RNI18n-dummy.m */; }; + 21226C64D148EECCD9C7D51C73A03A30 /* AnimationSubview.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2EC78ED35A174789D2A2AAEA7832639F /* AnimationSubview.swift */; }; + 21872A5B6DD2D60942FF2E8AD0DB7423 /* Unicode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E9CF34DF15C1269E98F15FFE2C5CEB4E /* Unicode.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -DFOLLY_HAVE_PTHREAD=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 21B5E506B823A690A0146084F5A83061 /* RCTTransformAnimatedNode.h in Headers */ = {isa = PBXBuildFile; fileRef = C34003BF396EE00DEF28153439F9DCA7 /* RCTTransformAnimatedNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 220BA475160F1C500F34821FCF3C9EBE /* RCTStyleAnimatedNode.h in Headers */ = {isa = PBXBuildFile; fileRef = ACF7D2FB6FC7A23A50BC047E859BA12D /* RCTStyleAnimatedNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 221736C02236656C8C9835ED60454D32 /* RCTErrorInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 7B1A79BD87FDEE83776AAA976D424018 /* RCTErrorInfo.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 222D8C687FAACBAD9D6C610D214B13EC /* RNGestureHandler-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A58E9F5A0FA3434A5BE6F1F27540344E /* RNGestureHandler-dummy.m */; }; + 224EA0F93D0EB33A2389C73F1409CF36 /* JSIExecutor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D711518842393EC048B3120CDA9670D4 /* JSIExecutor.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 22596317988A5B90F3CA014710EECEF2 /* RCTDevMenu.m in Sources */ = {isa = PBXBuildFile; fileRef = C9C76FAF221512F01C7228B133AD1FF6 /* RCTDevMenu.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 2294D5E8C3442B95F7FE27F282D38432 /* CxxModule.h in Headers */ = {isa = PBXBuildFile; fileRef = E9CC570673B58E56963AECBFA3301743 /* CxxModule.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 22977C29921D5CE823BD15F261CF6E0E /* Rectangle.swift in Sources */ = {isa = PBXBuildFile; fileRef = FCC6DC33B3F76845587C8DB0138DD506 /* Rectangle.swift */; }; + 22FAB19D0B649E0633917D313C3C9E71 /* RNSVGEllipseManager.h in Headers */ = {isa = PBXBuildFile; fileRef = ABE1788C1EDCD27FE238CA6B88D60DF7 /* RNSVGEllipseManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 234E799C2275A2C45948B43D8FE3C465 /* RCTPackagerClient.m in Sources */ = {isa = PBXBuildFile; fileRef = 62933147C4B3D0BD758E608A1EDDCDA9 /* RCTPackagerClient.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 235313021559BA45F08F67C5E21B3F70 /* Group.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1B024BA994E36CB8E97C290C6732124A /* Group.swift */; }; + 236F89AF13179AA2BADDED61EBAD16A1 /* RNSVGSolidColorBrush.h in Headers */ = {isa = PBXBuildFile; fileRef = F49F2C73E1294715E47A2DC7AD009CB4 /* RNSVGSolidColorBrush.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 2386E2F0574C6F18B95DC390F5643272 /* ShapeLayerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FA06CC28AC81A724A160608A1C0D75E /* ShapeLayerModel.swift */; }; + 23B030E9760009A7B336412B0F97D4B8 /* RCTCameraManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 4FFE18354072714919B90087FFAE4F5A /* RCTCameraManager.m */; }; + 244FE1D78D0B3E67E652E657C015742B /* sk.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 1FF8283BCF67A5415B7EC1FA684AE163 /* sk.lproj */; }; + 2450335F97B29BF5F1C204183191EACA /* RCTAdditionAnimatedNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 995B125A444748E05DBB8A74EC81E1EA /* RCTAdditionAnimatedNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 24AE6AE4AA225667776A83DB617D48A4 /* RCTModuleData.h in Headers */ = {isa = PBXBuildFile; fileRef = 17E83CB6BD68C1D771C702CD7A745390 /* RCTModuleData.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 24B4B211C7A84CB59373913D7F460A45 /* AnyValueProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3E26237F761688764719FDC0A51A7494 /* AnyValueProvider.swift */; }; + 24F82AE9E4107EA534AA0DA39ED6D269 /* RCTRawTextShadowView.m in Sources */ = {isa = PBXBuildFile; fileRef = 52890CA59A1193AFF45B9AABF7471605 /* RCTRawTextShadowView.m */; }; + 252F18CA6FFD94E4D88753FAA4DC2F85 /* JSCExecutorFactory.h in Headers */ = {isa = PBXBuildFile; fileRef = C0E54AD4141F7D46B27981B4D1870991 /* JSCExecutorFactory.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 2560C8D27EF166B471A050096A748203 /* RNSVGPainterBrush.h in Headers */ = {isa = PBXBuildFile; fileRef = 14FCA22B1E0EF5341BE08313A82E91E3 /* RNSVGPainterBrush.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 25C1E7FE2F75F1D4DEC3186BC1E412A6 /* NSDataBigString.h in Headers */ = {isa = PBXBuildFile; fileRef = 526D076208BDAAD49E764C55E3528242 /* NSDataBigString.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 267A50C4F892793B3ABF4C5AD43020BF /* utils.h in Headers */ = {isa = PBXBuildFile; fileRef = F19FE2620B9C5885D269A52521CB8AD3 /* utils.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 26E0E99C24C82DAEDAB19E86A3D30318 /* NSMutableDictionary+ImageMetadata.m in Sources */ = {isa = PBXBuildFile; fileRef = CA524E79A18965BDAE1F967638AFE916 /* NSMutableDictionary+ImageMetadata.m */; }; + 26FF3398836AFEB69EF79BE3FBB65B1E /* RCTWrapperViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = D65ACFDB5970C0A3BAE8B9ACF3CAFB5A /* RCTWrapperViewController.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 2730FE054CC61C90703D708DF8B87F6A /* RNScreens-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 3853C8D86A15C7BB90D68F4232161F9E /* RNScreens-dummy.m */; }; + 2764669012172C9251720EB15BAA7B60 /* RCTWebSocketModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 7C3D61A58A642D736FED867AC2529D15 /* RCTWebSocketModule.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 27A2C403A537C48074A95E2C39430EF7 /* KeypathSearchable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4361419C2126EF9723E2638FDDA9DC93 /* KeypathSearchable.swift */; }; + 27AAF30F59D68196A740649C924D2D1F /* logging.h in Headers */ = {isa = PBXBuildFile; fileRef = 979477B811D2A9A5E419640FEE51DA5C /* logging.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 27DDD9E8BFCA178233B2703632D0D94B /* RCTSourceCode.m in Sources */ = {isa = PBXBuildFile; fileRef = 1303022B072FFAB643A445566CFC19AE /* RCTSourceCode.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 27F9896817B842A1976F93132C446335 /* QBImagePicker.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 1FB9836AF05803D197F20DEC0FE30625 /* QBImagePicker.storyboard */; }; + 280EE153070B79493C3124E9B90C5490 /* RCTPlatform.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5E286A40B066889DDACEA8CA2A30114C /* RCTPlatform.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-nullability-completeness"; }; }; + 290833736C6E3C202785744E03023EBA /* RCTI18nManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 710025FCA7E652157AAB51169A6A3B4B /* RCTI18nManager.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 295153891340AB4FAAFE8A213AA39CEC /* RCTAssert.m in Sources */ = {isa = PBXBuildFile; fileRef = E25B089BF6D2AAC1F85A70FF5EB28443 /* RCTAssert.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 2A2DA4018470C55A0BFFD249E7BCE49E /* JSBundleType.h in Headers */ = {isa = PBXBuildFile; fileRef = FC3AB04AF911E80D6D03D49FC7610C8D /* JSBundleType.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 2A919EFF8EBEA3CFCB5CF6591695FC12 /* REABlockNode.m in Sources */ = {isa = PBXBuildFile; fileRef = BAF39C28AE2E7DBAE26452E926A6EE1B /* REABlockNode.m */; }; + 2AAABF614DA9ACD5F5720CFF1B362CC5 /* TextLayerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6A00FFA25833DF2C75FBD399F10B1BCC /* TextLayerModel.swift */; }; + 2AE3709EE45037EE62F99E43219346CE /* GCDWebServerMultiPartFormRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 34D47BA1B7683546233284FA9AB520F4 /* GCDWebServerMultiPartFormRequest.m */; }; + 2B1BB4DF4BB6D933A491C43D688E169A /* RNSVGSvgView.m in Sources */ = {isa = PBXBuildFile; fileRef = 1366F3AE84DBA1E7AE4FFDC062A7CC87 /* RNSVGSvgView.m */; }; + 2B22715149B5A2130E38992A83FF9F95 /* fa.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 9C151AEB29DC97A66898A872C23CFA01 /* fa.lproj */; }; + 2B24E5E3C82C362FE25DE0263ECC214C /* RCTAppState.h in Headers */ = {isa = PBXBuildFile; fileRef = BC360D590173432BA140F4707D1FAB0A /* RCTAppState.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 2B53182B2CE0F0B61566E9BC38F6857C /* RCTImageShadowView.h in Headers */ = {isa = PBXBuildFile; fileRef = 6D1BFE36CAB063BBAA7D267717D4CA68 /* RCTImageShadowView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 2B657E77CEDDFEE9BB62E093AB20C808 /* RCTRootView.m in Sources */ = {isa = PBXBuildFile; fileRef = A310F91CA59CAAA8BB127DD896BE4CE5 /* RCTRootView.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 2BA69D9D542370C30F15F680DA1AAE7A /* QBImagePickerController.h in Headers */ = {isa = PBXBuildFile; fileRef = 0BB6DC8A06CC9FA1ECD5091C4C8DC4B5 /* QBImagePickerController.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 2BABF6155C2E29D8C513758DE51EC8FD /* RCTModuleMethod.h in Headers */ = {isa = PBXBuildFile; fileRef = 989951EFB40583D99558E186DC624667 /* RCTModuleMethod.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 2C1C676230C55E34089CA2558B5555E1 /* RCTNativeAnimatedNodesManager.m in Sources */ = {isa = PBXBuildFile; fileRef = B919D1DC75E0549E6CF764EFD6CABF4E /* RCTNativeAnimatedNodesManager.m */; }; + 2C341E7F4BAC273465985BD7AAA7B521 /* RNSVGPattern.m in Sources */ = {isa = PBXBuildFile; fileRef = 48A1CD53AA3A3F83C64BB32E5F3081F3 /* RNSVGPattern.m */; }; + 2C4FAC32FFC1EE08FA204408986EEB87 /* YGFloatOptional.h in Headers */ = {isa = PBXBuildFile; fileRef = F0FE00D4A6E154DF649B2A6827594428 /* YGFloatOptional.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 2C7380CFDFEB266435643D939D5D0131 /* RCTScrollContentViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = F809F1B28CDC7EFE2A9E80F722FEBF27 /* RCTScrollContentViewManager.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 2C95272148AFC990D212A54841B88F22 /* KeyframeInterpolator.swift in Sources */ = {isa = PBXBuildFile; fileRef = ACEB3B0027EC72FB888945AEC5A113D1 /* KeyframeInterpolator.swift */; }; + 2CAFBDC46740222D157A22BF86DDF69C /* RCTFrameAnimation.h in Headers */ = {isa = PBXBuildFile; fileRef = D3F6FE7EB8CF89C4512DFDFC29F6B158 /* RCTFrameAnimation.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 2CC62030233DE26F43989B59C702920E /* CxxNativeModule.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 37313A0E08F88C05FAD064840406F19D /* CxxNativeModule.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 2CC9CEE36D5D2B245F6A299041D1166D /* RCTTextShadowView.h in Headers */ = {isa = PBXBuildFile; fileRef = 3B34CC179F01A3F16FD2407C5C66FFA0 /* RCTTextShadowView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 2CE7959C119ABFBC04531C47F7A067F7 /* utilities.cc in Sources */ = {isa = PBXBuildFile; fileRef = 4FED59ED46F5F9A4D35A34040C39E4EC /* utilities.cc */; settings = {COMPILER_FLAGS = "-Wno-shorten-64-to-32"; }; }; + 2CFDFCA927ABD42A2BF04F3A47406AFB /* RCTEventDispatcher.m in Sources */ = {isa = PBXBuildFile; fileRef = AB4DEB23AC4B99AE702F1C92EC5A290A /* RCTEventDispatcher.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 2D0470C470AAAD1D7A36E60B71935057 /* RCTSwitch.h in Headers */ = {isa = PBXBuildFile; fileRef = 869E8FECAFEC27CA773B2B732848580A /* RCTSwitch.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 2D0D1BD5A33A46E5FAB2B2E21DB5C5BE /* RNSVGRadialGradient.h in Headers */ = {isa = PBXBuildFile; fileRef = 8A6AEAD34EA853AA7523DA5D93E40B4B /* RNSVGRadialGradient.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 2D232E58E4FAA86B6A4BC7E7FA2D40A7 /* RCTBackedTextInputDelegateAdapter.h in Headers */ = {isa = PBXBuildFile; fileRef = AA5514FD086C70AA9D9857E11E378E9A /* RCTBackedTextInputDelegateAdapter.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 2D65D828FDCEAC42046C2B9D01F7E10E /* AIRMapUrlTile.h in Headers */ = {isa = PBXBuildFile; fileRef = B08637A4BEC12EA789EBD4533C681D3A /* AIRMapUrlTile.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 2D9EC0CCC719CC65EBACF49A539C67A8 /* RCTBlobManager.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0290C60394E0255570BCAAA91E9EB915 /* RCTBlobManager.mm */; }; + 2DB236D8916D7BACECF324AF5165D4A6 /* QBSlomoIconView.m in Sources */ = {isa = PBXBuildFile; fileRef = 7256C3E430E65AD4CA3CDADBD81F8FC3 /* QBSlomoIconView.m */; }; + 2DDCB30E59BE5A65F041562CE547B4AB /* RCTResizeMode.h in Headers */ = {isa = PBXBuildFile; fileRef = B68F3FC436CAF92FAD20F5175B49935F /* RCTResizeMode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 2E31E0B3EBD402CEFF64891929293A70 /* fixed-dtoa.h in Headers */ = {isa = PBXBuildFile; fileRef = 660BB17F6310FAE3DF38D296DE5CD94B /* fixed-dtoa.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 2E835521EF990DAD3A6A38DABAEED2D1 /* RNSVGTextProperties.h in Headers */ = {isa = PBXBuildFile; fileRef = 4DF130A479D866B624EEE73A4ACCE8EB /* RNSVGTextProperties.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 2E8EB8C962F26B268CA2F20D695516A6 /* SajjadBlurOverlay.m in Sources */ = {isa = PBXBuildFile; fileRef = A0C3289AAC10CDFF80279E575A1854DC /* SajjadBlurOverlay.m */; }; + 2F3FCF3CEFF9ABEFD9E143A8FA89D5ED /* RNSVGCGFCRule.h in Headers */ = {isa = PBXBuildFile; fileRef = 43F391FD8101934C8E1566D1216E56F5 /* RNSVGCGFCRule.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 2F7BEE2B0414D2430FEBDE422D82E716 /* RNSScreenStackHeaderConfig.h in Headers */ = {isa = PBXBuildFile; fileRef = 078B280AD2E377AEE0181A7C7A735EB5 /* RNSScreenStackHeaderConfig.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 2F86ABF72EEEAA31264E4D94D95A3325 /* lottie-ios-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D2CFD9F616C99B66967227D5D2CF8AB /* lottie-ios-dummy.m */; }; + 2FD08D5A8447E9362B8981992B1869E4 /* RNCGeolocation.m in Sources */ = {isa = PBXBuildFile; fileRef = 1C5F366E3AE32407A18C84247B818DAD /* RNCGeolocation.m */; }; + 3097344D94EF300A17ECE7A12BFACCC5 /* RCTUITextField.h in Headers */ = {isa = PBXBuildFile; fileRef = 47795E50FDB26268311A15A1DFF2EEBC /* RCTUITextField.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 30B0B2A9930D2DEA4953794AD6D6D428 /* SingleValueProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1060F6A20DF4B424EB8E5770766DC082 /* SingleValueProvider.swift */; }; + 30B2E2322C0E4B818B06D73976D30668 /* RNSVGCircleManager.h in Headers */ = {isa = PBXBuildFile; fileRef = CDEFE0956EB30340F8CD1C305F247B4A /* RNSVGCircleManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 30F86DFAC80B2E449CB5ADB04A678508 /* signalhandler.cc in Sources */ = {isa = PBXBuildFile; fileRef = D265F8DEC74CFD78F3C12D3F97848D5F /* signalhandler.cc */; settings = {COMPILER_FLAGS = "-Wno-shorten-64-to-32"; }; }; + 311F14114B661ABCC5B4FAB9D3596749 /* RCTKeyboardObserver.m in Sources */ = {isa = PBXBuildFile; fileRef = 71D33767BF1CBD34C5025C5B6ED4970D /* RCTKeyboardObserver.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 3176F191D3F1EF523C4B46019BB95BDE /* RNSVGRectManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 002B1007E334F58425787CB6CCAF3168 /* RNSVGRectManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 318DC31A06296D45DBD8198EF0178664 /* RNRotationHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 8D6D76B575EFDD8CE4AFE61D749F852E /* RNRotationHandler.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 31C66140F15D5CF9DE06106CADF69763 /* RNSVGSvgView.h in Headers */ = {isa = PBXBuildFile; fileRef = D4110E77EE0E2454BC34C6A578361699 /* RNSVGSvgView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 31D038BCCDE4DE99D8674A1D7ECDCA91 /* zh-Hant.lproj in Resources */ = {isa = PBXBuildFile; fileRef = DDCBDDCD3FF5F185D460EDBBE078F838 /* zh-Hant.lproj */; }; + 3207C979A73A9285D1B740889ABFDC3D /* RCTTextSelection.h in Headers */ = {isa = PBXBuildFile; fileRef = 193F00C2271D5C39B449D3EE685FD716 /* RCTTextSelection.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 3241AF86B8AFFDDC36898938071B7743 /* system_configuration.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B6C34B00D25B20BAA8CC2A707E43D10A /* system_configuration.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + 3249EB5C149F43C94F0D927DFE42A9F7 /* REANodesManager.m in Sources */ = {isa = PBXBuildFile; fileRef = A673AC31E5E0DB84B2CD1D88E4E2F6EE /* REANodesManager.m */; }; + 3252EE1D088ABB276839F1117C7B0BBB /* ReactMarker.h in Headers */ = {isa = PBXBuildFile; fileRef = F8F52759CFB3268D4F2AF2210007821F /* ReactMarker.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 32939C053D09F621CCDDC62799FE43AF /* ShapeCompositionLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB0F1CC4FE931457506D95A8F9C8F49F /* ShapeCompositionLayer.swift */; }; + 32F6364B238E1620BBF8C694C0E5935C /* Base.lproj in Resources */ = {isa = PBXBuildFile; fileRef = B85F7CE633ECE8F59588D1E1CEDB8B1B /* Base.lproj */; }; + 33DBA11181CB8DC8575AD5210BC10722 /* RNSVGTextProperties.m in Sources */ = {isa = PBXBuildFile; fileRef = 2129CA751439449074FF8DD945E2B642 /* RNSVGTextProperties.m */; }; + 33E691B59EA9B4254C5995E400FF93C3 /* RCTBackedTextInputDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 799BE66953821B7B47F1A3F98B6F6E69 /* RCTBackedTextInputDelegate.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 341272D65AEABF1805739D1E359792E5 /* RCTDevSettings.mm in Sources */ = {isa = PBXBuildFile; fileRef = B3821B48A8EE772514E31AD4012A2FCC /* RCTDevSettings.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 342705262E1C02F3FBC9A4286CD1621D /* AnimationTextProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AD46B056965C7C49FC0B1D595F92412 /* AnimationTextProvider.swift */; }; + 3427307B0C31A90EFC72DCFBEB1B31BB /* RNSVGRect.h in Headers */ = {isa = PBXBuildFile; fileRef = C39D1C64E2C25DCF27E56267CAC2E11F /* RNSVGRect.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 3452386076FFD8A1E630145EA0F7AC53 /* React-RCTText-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = BB9F8CA21ADEF166C94F0399E3C2CF9C /* React-RCTText-dummy.m */; }; + 34C855B4D2D833A164F66599252142EE /* Compression.m in Sources */ = {isa = PBXBuildFile; fileRef = 05507D88C44AEF586CB7EB8606FE6BBD /* Compression.m */; }; + 3502BBBB12CE0705341EAC0B140D42B5 /* NativeToJsBridge.h in Headers */ = {isa = PBXBuildFile; fileRef = 50D91B98B644180F17E2F0B921107D6A /* NativeToJsBridge.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 350A6F155907A490B7B9DF0AF215C02E /* RecoverableError.h in Headers */ = {isa = PBXBuildFile; fileRef = 7D62A6FE1F4E93AE3B6B8B800E295FD0 /* RecoverableError.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 35265B8DCF3DDB4F37E8F7FA6FF1C0DE /* id.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 193B6D213DAA7920A742701BCC1F1F1D /* id.lproj */; }; + 3574A88A3FC551F4A85DC36B06F4C3BC /* Pods-iLink-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = D61C57DAFD3EBD219894526763B6AA70 /* Pods-iLink-umbrella.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 35CA20AD41B7B2C60FEC1EF6A581169E /* Marker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39E225F7B9A529F6FFF14EAC0735D6CB /* Marker.swift */; }; + 35D465D1FA0F6F556D15B9DE387CE764 /* RCTBridge.h in Headers */ = {isa = PBXBuildFile; fileRef = BC301813DFDC7AE8CF56259F93EF1952 /* RCTBridge.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 35DC9261C035AF7C2F4CE2608A84D9B6 /* RCTNetInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B9E50B753A1F0508FDFB78E0E7E3FF5 /* RCTNetInfo.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 35FB88D44D01153619B42E21B49A3362 /* UIImage+CropRotate.h in Headers */ = {isa = PBXBuildFile; fileRef = 5478DAD9F3C13E4EF7B3DE02B08C2DF2 /* UIImage+CropRotate.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 3610B08782547540B94A57DFA5F9E3C5 /* binding_callback_thread_observer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3FA4089809A19ABBE1BE2FB1661FC379 /* binding_callback_thread_observer.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + 366D066D34B845E64D65F1491E4EB412 /* NSTextStorage+FontScaling.m in Sources */ = {isa = PBXBuildFile; fileRef = 6A21BB17A85343C4DB3885513C7C065D /* NSTextStorage+FontScaling.m */; }; + 36917771655BB82E48EF1D39B53A0652 /* Asset.swift in Sources */ = {isa = PBXBuildFile; fileRef = 994B7B94B1055B5A71371DD206CBEB1A /* Asset.swift */; }; + 36C1238A74D1A7F583E1F4F4DB38F0EF /* GradientFillRenderer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5BCE72ED68916203D67C775A87DA6F01 /* GradientFillRenderer.swift */; }; + 36CFEE9E51FA0117F56C3157033832B6 /* RCTScrollableProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = E6A627ADE5644D1A2B4D6F6E12B7870D /* RCTScrollableProtocol.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 3711F3B9F8FA71A35A90E24533842464 /* READebugNode.m in Sources */ = {isa = PBXBuildFile; fileRef = AAF35C0FF26E6C4AA2952845BF519698 /* READebugNode.m */; }; + 3725B9F8DC4DCBA44307CF695558E5FE /* CompositionLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 737F34B5D8C9828B843A5EBC93448DFE /* CompositionLayer.swift */; }; + 38721602286499968B5521CA654ED26D /* REASetNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 53BFB855737231F7590C3F15371E3C81 /* REASetNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 3885704D9A84909FD9AC5D8C04281A03 /* StarNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = C326C31BF8C0980CD236AB69A74B20DB /* StarNode.swift */; }; + 38932642EF237EA1DC55AB32D7E9160F /* RCTBaseTextViewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = AED994A5EF18C21F617C0C8EA52C5F92 /* RCTBaseTextViewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 39469904CC7C2FA366E317117F492C3B /* RCTActivityIndicatorView.m in Sources */ = {isa = PBXBuildFile; fileRef = A12A01F10689781DD412678C569EFD77 /* RCTActivityIndicatorView.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 396D69BEB58E16A606A6D644CDA5E435 /* RCTAsyncLocalStorage.m in Sources */ = {isa = PBXBuildFile; fileRef = B346FE1A06B0E600CCE464D80C203E69 /* RCTAsyncLocalStorage.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 3A315A51A99A07425D30FEEDBCBB093F /* RCTModalManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 3AB1FEE2C518E9C25D7BE7715A277A01 /* RCTModalManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 3A42536724CA7BC0848AB43F5C183D39 /* NSTextStorage+FontScaling.h in Headers */ = {isa = PBXBuildFile; fileRef = 62458C7A9D0C777C142E0D823CE97E03 /* NSTextStorage+FontScaling.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 3A87B0A1680423F27BB906B8A126700A /* RCTSafeAreaViewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 0834A94C959FEA64893F8A2A0AA72243 /* RCTSafeAreaViewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 3AC0CBF1785896EBE6910025B130958D /* RCTDiffClampAnimatedNode.h in Headers */ = {isa = PBXBuildFile; fileRef = BA001A05F9762489F7D789E6E8F78413 /* RCTDiffClampAnimatedNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 3B23AFDCBDDCBD614182D0E1FD16966D /* RCTImageURLLoader.h in Headers */ = {isa = PBXBuildFile; fileRef = C7C0E7E3493F11A234BCE2C0A351B3FF /* RCTImageURLLoader.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 3B2B0F6BAC69C2632F9DECBAF5DCE963 /* AIRMapManager.m in Sources */ = {isa = PBXBuildFile; fileRef = CE39A10169FF145AA5508694ED3142F9 /* AIRMapManager.m */; }; + 3B3D0D3875F2DCFD736205A10F89499B /* LayerFontProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B098EFD21C7FE4F7311D09F2C306100 /* LayerFontProvider.swift */; }; + 3B59B65FD92D1A2FB6B47C2AE2245B89 /* RNDateTimePicker-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 58E710A75275A5D70E83BFD75A58E611 /* RNDateTimePicker-dummy.m */; }; + 3B9158B5F3D195E767277CDF2093E6E4 /* jsc_init.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C2E2308B5493B41C750331369F9FE5D8 /* jsc_init.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + 3BF6E269C033023B01209B9AC0E0B889 /* RCTInspectorDevServerHelper.h in Headers */ = {isa = PBXBuildFile; fileRef = B8715FF692DFE7EBB9539E8F7DD36E45 /* RCTInspectorDevServerHelper.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 3C83156340908AE021D78025A224F60F /* TOCropViewControllerTransitioning.m in Sources */ = {isa = PBXBuildFile; fileRef = F297E23C4B698BE108E1289ED8B3C3BD /* TOCropViewControllerTransitioning.m */; }; + 3CAB86055993D5223EE1DE519DF4E74A /* RCTTiming.h in Headers */ = {isa = PBXBuildFile; fileRef = C985D82E9B575CF226EB9314E9DC330F /* RCTTiming.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 3CCF9FB978617150329CFFF79B28C969 /* RNGestureHandlerState.h in Headers */ = {isa = PBXBuildFile; fileRef = 46D023E0C2EA3E600A85E761377D18E1 /* RNGestureHandlerState.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 3D18714F2ED099F21323966C491044EA /* RCTNetworkTask.h in Headers */ = {isa = PBXBuildFile; fileRef = 86417141AD45D7224CDA7C666233E0EC /* RCTNetworkTask.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 3D561E4644A87218F172CF1C567BA113 /* RNGestureHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 936D737D30E47074E2706CA71BF79631 /* RNGestureHandler.m */; }; + 3DF4612E32C2D08EBD4F6F4DD8B987C0 /* REAModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 498FF31B1E6C74659361EEE84D4FBCB2 /* REAModule.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 3EB3E421BA36C4832D89F63F387E050D /* RCTAppState.m in Sources */ = {isa = PBXBuildFile; fileRef = 75CB59035009306F655813E57AA315CF /* RCTAppState.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 3F174EA95D135635D59F7209D0872BC0 /* AIRMapCircleManager.h in Headers */ = {isa = PBXBuildFile; fileRef = A099C1320B69A490BE570F137F434068 /* AIRMapCircleManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 3F645D44874C48363F744A267B5A6D43 /* ModuleRegistry.h in Headers */ = {isa = PBXBuildFile; fileRef = 20650AC49E3FFDA52AD78306EACD6CBB /* ModuleRegistry.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 3FA4D94F92CFD9D0315FBD54EEDE9877 /* RCTLayout.m in Sources */ = {isa = PBXBuildFile; fileRef = 30B6E820EC8BED1DF641ACC97A6C59C6 /* RCTLayout.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 3FAA78E7F45F7BAA1325594718AAA891 /* double-conversion.h in Headers */ = {isa = PBXBuildFile; fileRef = 34E9C756FA690DF8C2D5409EF63F8B17 /* double-conversion.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 3FBC3893100947F95B19BA860A026A3F /* RCTSensorOrientationChecker.h in Headers */ = {isa = PBXBuildFile; fileRef = 3E4C4504869CF2A74BF0AF7896B02A26 /* RCTSensorOrientationChecker.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 3FCCDA8C9679A838EC35F2AF3EB2CB20 /* AIRMapCircle.h in Headers */ = {isa = PBXBuildFile; fileRef = B44E9C0A757660B07223BE410F1BF236 /* AIRMapCircle.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 4010C262DE8DC7D0AD5A991026C0384F /* RNSVGRenderableManager.m in Sources */ = {isa = PBXBuildFile; fileRef = A6E69E60E61BC4E786504D5F320938DA /* RNSVGRenderableManager.m */; }; + 4011C739D5DEC3B12487AAE18173FAAD /* RCTInputAccessoryShadowView.h in Headers */ = {isa = PBXBuildFile; fileRef = 23713E88B82CFF58B67D9ED32A448307 /* RCTInputAccessoryShadowView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 40A7039DD5465D3ADEB8C6D176F86BDC /* RCTComponent.h in Headers */ = {isa = PBXBuildFile; fileRef = 897CB74B9C1B99AE2E4E4D1A417E8FD7 /* RCTComponent.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 412512DFE06BF80C29382028C8AD6410 /* bignum.h in Headers */ = {isa = PBXBuildFile; fileRef = FBF2B349D86DD808E02008381C214847 /* bignum.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 419A6A008796D0E673EA463CED5E196D /* RNSVGGlyphContext.h in Headers */ = {isa = PBXBuildFile; fileRef = 8952FB547D8764D53F54627EFECFBA41 /* RNSVGGlyphContext.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 41F4AF06A0B333A7E39FA0EFB9BBC834 /* collection_change_builder.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B4CA1CE4D1CE3C63EFA320868B04D39C /* collection_change_builder.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + 4216248426F061B5E2DFC14038CDB121 /* log.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9BAD81413676A3970DEFA4E0E96E20F8 /* log.cpp */; settings = {COMPILER_FLAGS = "-fno-omit-frame-pointer -fexceptions -Wall -Werror -std=c++1y -fPIC -fno-objc-arc"; }; }; + 422A738590A9BA61094BBB61C6BEE345 /* RCTScrollContentShadowView.m in Sources */ = {isa = PBXBuildFile; fileRef = C444DE167167A8A4F16CD3B9AA38411B /* RCTScrollContentShadowView.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 426A6B61CCCFC58D1398CB5B3872E63C /* RCTImageStoreManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 439EEEB7E435E5A1685CF9A1BEB2DB2F /* RCTImageStoreManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 4290691A1ECD0CD154DBAEAF61CEF82C /* RNSVGContextBrush.h in Headers */ = {isa = PBXBuildFile; fileRef = 9EF72619138C8CB1809439E53822322A /* RNSVGContextBrush.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 429173057737A42EEE777A5DBF17EC15 /* CameraFocusSquare.m in Sources */ = {isa = PBXBuildFile; fileRef = 139B24AA1FF167F9FF9B742F62B97588 /* CameraFocusSquare.m */; }; + 429418614F28EF56F89891D9DD6948FE /* RCTOneSignalExtensionService.h in Headers */ = {isa = PBXBuildFile; fileRef = 82AD6326AE097F223F5F0AB8D2FDD96B /* RCTOneSignalExtensionService.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 42C986E1C1F968A8E8EEC2A8E5AB48DE /* NodePropertyMap.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7AA1A4150EF79DC7760046233D8CCF0 /* NodePropertyMap.swift */; }; + 42FC76FF59833CB67FC4F02D50BF1572 /* RCTSubtractionAnimatedNode.m in Sources */ = {isa = PBXBuildFile; fileRef = F608D43CD70D5099A582EFE04698D543 /* RCTSubtractionAnimatedNode.m */; }; + 430E076148163E5E139CD7C5B585CA61 /* JSIDynamic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8E92E932257A0D65465465F51015F278 /* JSIDynamic.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 4316F75F4633A111AFADE820DCC43910 /* GCDWebServerDataRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = 744173C084A9BE1B01D9462C2E80C922 /* GCDWebServerDataRequest.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 431B6B3850AF41E813C0D17D4F4AF54C /* RNGestureHandlerEvents.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B544EC7D04A528AA8A5CB42BE5AE66D /* RNGestureHandlerEvents.m */; }; + 431CCDC9AF742913020F07CA95CE58C9 /* JSBigString.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 83BE34F43B3A79F6AC62C136666676A4 /* JSBigString.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 43777F3CAB3273E980FBABE81B5122E3 /* RCTAnimatedNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 25B1DCC76C097B3423A165DC29E4F15F /* RCTAnimatedNode.m */; }; + 43A21952A63FFBEF4EB94EA926245585 /* RCTImageCache.h in Headers */ = {isa = PBXBuildFile; fileRef = 03695D10E13C4C5C67C641A735EA74A9 /* RCTImageCache.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 43DF3487A98CEF1B1728E39807218A73 /* PathElement.swift in Sources */ = {isa = PBXBuildFile; fileRef = B50A99A9AF93D435B54B70885EA6F1F2 /* PathElement.swift */; }; + 43F5C20196220068F1660BAE47680B29 /* RCTI18nManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 8E7D5E4B0C2A438A35D3E2D6A486FDB1 /* RCTI18nManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 441807BF25D44D9142F7835CCEF37D5E /* UIImage+Extension.m in Sources */ = {isa = PBXBuildFile; fileRef = C87C59D9BB4054221F29CD49D9A388FC /* UIImage+Extension.m */; }; + 4418ECC62EADE4A34A6E13730757514B /* TextDocument.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3C7A4DCC9E0A7156EF0A7FB4CFE5165D /* TextDocument.swift */; }; + 4423820660D6F2F1249BCD82D4D45E6D /* AIRMapWMSTile.h in Headers */ = {isa = PBXBuildFile; fileRef = 48A06E53D3A275C589D959860DD484D8 /* AIRMapWMSTile.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 4435D7AA2CC2A78C02637BD68B3495F7 /* strtod.cc in Sources */ = {isa = PBXBuildFile; fileRef = F376C2413180D52566C6CA77B89D33ED /* strtod.cc */; settings = {COMPILER_FLAGS = "-Wno-unreachable-code"; }; }; + 4448762F6D25AA2A3A4B88076C2C653C /* AIRMapCoordinate.m in Sources */ = {isa = PBXBuildFile; fileRef = 2F2476FAAC84DB3D08F0E9630EADF7A9 /* AIRMapCoordinate.m */; }; + 44F979ECB8D1C1536E559BEB8FF1585E /* RCTConvert+AirMap.m in Sources */ = {isa = PBXBuildFile; fileRef = 51E6D0871555861D7DD68F0866D5714B /* RCTConvert+AirMap.m */; }; + 4530BCB23D94C745204A91D36F1C6EA1 /* RCTSegmentedControl.m in Sources */ = {isa = PBXBuildFile; fileRef = 9E6B9D878A42EF0A4202909EC90F5E82 /* RCTSegmentedControl.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 45341D1425A67C20197BF6DE6A5E5529 /* platform.mm in Sources */ = {isa = PBXBuildFile; fileRef = 71B3840B5A07655243EB6F42D202C011 /* platform.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + 455FC76ACBBB2502AD97C2DC795B0964 /* RCTProfileTrampoline-i386.S in Sources */ = {isa = PBXBuildFile; fileRef = 6E4E636EB61FF1DE8AE8658194AC98F9 /* RCTProfileTrampoline-i386.S */; }; + 45880CAC93FEC7041DC08C303CC8FD7F /* RCTSurfaceDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 974C02C2BAAD32BCF8698299FE6CB2D0 /* RCTSurfaceDelegate.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 459C01818A558C7E18570425D2488123 /* RCTOneSignal.h in Headers */ = {isa = PBXBuildFile; fileRef = 7D13651181CD3669DEB963ECC6217173 /* RCTOneSignal.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 45AC17B28E4A52BF1C9867DF51771613 /* RNGestureHandlerButton.h in Headers */ = {isa = PBXBuildFile; fileRef = 0543222B3B6C291A2352B74A7A6DFF58 /* RNGestureHandlerButton.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 45CF3DA5C060DE4A356CD4B577706C16 /* RCTTouchEvent.m in Sources */ = {isa = PBXBuildFile; fileRef = EC7C5D64F8094A2137F7CFE929C27BB7 /* RCTTouchEvent.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 45DF3B5F1FE767BFC957491C553FF933 /* KeyedDecodingContainerExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B720061908D4BEB21C59F87BF34A4AE /* KeyedDecodingContainerExtensions.swift */; }; + 46014DFB0AC494D64F2F4EE0E23E1886 /* GradientValueProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0CB867173928E2D7F786DCDAB62240FA /* GradientValueProvider.swift */; }; + 4616C2D8F9670E3314DD3BD7E0012500 /* PointValueProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4CA19C65346D091804005BAAEB361189 /* PointValueProvider.swift */; }; + 462EFC76DDFACB52AE29853A433AD31E /* REAAllTransitions.m in Sources */ = {isa = PBXBuildFile; fileRef = 09CB5047A5859F61E04C3AF2C6D8C840 /* REAAllTransitions.m */; }; + 4679583C040C1A59AE7723C00868960C /* primitive_list_notifier.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DAE20003B51CF3FAB81EFD2B12413ED2 /* primitive_list_notifier.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + 46C39A384912553E754D24B30E0AE75C /* REAOperatorNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 85CFAF09A7A9C7787E237BF50D71F0AE /* REAOperatorNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 46F004413CEB1F46D485937814B976D7 /* RCTConvert+CoreLocation.m in Sources */ = {isa = PBXBuildFile; fileRef = DE3D678B84AEEB1F6746D084D04E7D53 /* RCTConvert+CoreLocation.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 46F03321395E1288E75CC0CC408BBECA /* RNI18n.m in Sources */ = {isa = PBXBuildFile; fileRef = 1EEB627489A4682DD0D23FC58FD21A5D /* RNI18n.m */; }; + 4710853DD7188BCA00B29E6ACCFA1EB8 /* RCTCxxMethod.h in Headers */ = {isa = PBXBuildFile; fileRef = 27E9CB50945F53DACA5EB476868FB090 /* RCTCxxMethod.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 472CC07839089B62D0BB86274E5D5096 /* JSINativeModules.h in Headers */ = {isa = PBXBuildFile; fileRef = 1140E9408718C074ED106EB29D8E2B73 /* JSINativeModules.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 47752231C0ABD96B69AC9D3A97860337 /* RCTImageViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 64FDCB91E651F23569A78DD5D1E6D767 /* RCTImageViewManager.m */; }; + 47B18C9916FC0C343C9938B2BB57897E /* RCTTouchEvent.h in Headers */ = {isa = PBXBuildFile; fileRef = 4CA1B9B0A3ED95CB8EB3D05216B911D4 /* RCTTouchEvent.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 47BB7C63F1E1B1BEF2EC5302C42DB529 /* RCTCxxBridgeDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 7E97F62553A84B08999CB4CD33EEF910 /* RCTCxxBridgeDelegate.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 47FFC90308D02AED00B921516D189AF7 /* RCTRefreshControl.m in Sources */ = {isa = PBXBuildFile; fileRef = 46A1C02C927AF589BB7440EEC10F1A13 /* RCTRefreshControl.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 48035C5E8808CF159464510D86FBF128 /* RCTModuloAnimatedNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CC1122D088B445F35F4319CA38848DB /* RCTModuloAnimatedNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 481BA5FFD26065965AE82B9D1C977443 /* RCTConvert+RNSVG.h in Headers */ = {isa = PBXBuildFile; fileRef = DDB59549A776771032B9E0CA2843BECC /* RCTConvert+RNSVG.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 483FBD16FB4C85CD548C9BDD0B91293E /* RNSVGLinearGradient.m in Sources */ = {isa = PBXBuildFile; fileRef = 785BB18FFFB2E76B227AEF0B066D99F7 /* RNSVGLinearGradient.m */; }; + 4853B1B604033DB46B2ED4CCE06F6A2D /* RNSVGTextPathManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 653E9206FF43C654DDBF37077E4E6DAC /* RNSVGTextPathManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 4860E7A1CDCA5FF05FDA4B92AD7593F6 /* READebugNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 71150CA7F48E01E42E49DC5CA6E9B72F /* READebugNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 4878840EC08EC967430C58B6E4F22839 /* AnimatorNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F976C00DB4A61998FEC68DCA6BA0862 /* AnimatorNode.swift */; }; + 492ED1BC8EDF12FD0C9DC6710C9866FB /* ValueContainer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3891BB50F9467E2A3AEAB98A066D6B72 /* ValueContainer.swift */; }; + 4933A812045AD14892DC4F4AC5EED120 /* RNSVGTSpan.h in Headers */ = {isa = PBXBuildFile; fileRef = 38885F5455D2BF57992E2E59AB4FABBB /* RNSVGTSpan.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 4993486277797EC802FA759871023B03 /* RCTScrollView.m in Sources */ = {isa = PBXBuildFile; fileRef = 85A1FDB566DE781601EF718B73F7B26C /* RCTScrollView.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 4998CAFA27B278037C8EFED86FFD20A1 /* SystraceSection.h in Headers */ = {isa = PBXBuildFile; fileRef = 40CC4DC9B4E34D586733EDB1F19B8E96 /* SystraceSection.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 49BDA453E565706B287358786376F73F /* RCTAnimationUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CBB9360A2E6B1A6704341335475E881 /* RCTAnimationUtils.m */; }; + 4A3ABA68450CE4D22A898332250E44F8 /* RCTNativeAnimatedNodesManager.h in Headers */ = {isa = PBXBuildFile; fileRef = E79D00637AB2C3B4E62EDC815A081392 /* RCTNativeAnimatedNodesManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 4A72E27EFAA0C9BF5C9DCAABC2F48F77 /* RNI18n.h in Headers */ = {isa = PBXBuildFile; fileRef = B5203755E08171951463CE2F772C7D85 /* RNI18n.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 4B22D0BFCA80EFE7E1AD8562C4B6133A /* RCTViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = E797E163C5043B8A7E500D63BDEE531C /* RCTViewManager.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 4B49D0E16B28D135CDCA6A17732353F0 /* decorator.h in Headers */ = {isa = PBXBuildFile; fileRef = 7F1AAC115197697EA406660D31E93911 /* decorator.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 4B81B78AEF09B39CD9ED117304C3C500 /* RCTBridgeDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = DEC81FDDB78DA76319E7B7E90C4CBAE5 /* RCTBridgeDelegate.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 4B9C331F161E29018F159EE864984322 /* REABezierNode.m in Sources */ = {isa = PBXBuildFile; fileRef = B1038DCFE6021D690A8D46126B6A683F /* REABezierNode.m */; }; + 4BA39F5AFCA5E211E9768911C34D429B /* RCTBaseTextInputViewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = C77821C156B9BCA08618C10785BD9B9C /* RCTBaseTextInputViewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 4C2D3BC12F1F3E6E64FD86C4B600C6F2 /* AIRMapCalloutSubviewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = E4CE6AA3C2C39676208A6D89851D1287 /* AIRMapCalloutSubviewManager.m */; }; + 4C71182AEA89AB92CE5997ABC722CDBB /* RCTTextView.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B6B199289818DCB562FE54BEAB208E6 /* RCTTextView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 4CB929E427FE18007FE5916C3564C473 /* bignum-dtoa.h in Headers */ = {isa = PBXBuildFile; fileRef = 575FB55529BC9B6F0D9D20D6CEB96FD8 /* bignum-dtoa.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 4CC7F8212794EC8D6BCD4C3C5BE6EB96 /* RCTTextAttributes.h in Headers */ = {isa = PBXBuildFile; fileRef = 60E6770885A054426AD4666D82C8755A /* RCTTextAttributes.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 4CD3E5D6975449E11EA7818BDBB8AB80 /* QBAssetsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DDBFF987C11E27C2E279C34932F86DC6 /* QBAssetsViewController.m */; }; + 4D103A9387DC8D91C4793A8C1088B775 /* TOCroppedImageAttributes.h in Headers */ = {isa = PBXBuildFile; fileRef = 78456FC43D816C9D11B0E2DCEFF709E4 /* TOCroppedImageAttributes.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 4D8C3EA4A51A037FEEB82861DDCDCAF6 /* RCTTextTransform.h in Headers */ = {isa = PBXBuildFile; fileRef = 37EE198D102E170EDB1773A37BC251D3 /* RCTTextTransform.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 4E09AE8AB8EE4A6DD28892B6EDB6732D /* RCTTurboModuleManager.mm in Sources */ = {isa = PBXBuildFile; fileRef = 3436F4C851E2A6FA4801A30A76CEF812 /* RCTTurboModuleManager.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 4EA3540D5AC4F835297D30198A65439F /* RCTFileReaderModule.m in Sources */ = {isa = PBXBuildFile; fileRef = A7B3F40B15AB21B64BB43D349B475E89 /* RCTFileReaderModule.m */; }; + 4EAC303956D8C220AD690CEAA3F90684 /* diy-fp.h in Headers */ = {isa = PBXBuildFile; fileRef = 6F1DD536EAAB6D919CF59FB17CC6EB35 /* diy-fp.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 4ECE15172D69F12CD1828356C4D872D3 /* RCTCxxConvert.m in Sources */ = {isa = PBXBuildFile; fileRef = 5BD36413BF780117C16695C500F750ED /* RCTCxxConvert.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 4EE81E28366654E64803AE25B3EEBCAC /* FaceDetectorManagerMlkit.m in Sources */ = {isa = PBXBuildFile; fileRef = BAA3738C4EC4172B5AB184FFD12938FF /* FaceDetectorManagerMlkit.m */; }; + 4EF3686454F76E06335367563230EC10 /* JsArgumentHelpers-inl.h in Headers */ = {isa = PBXBuildFile; fileRef = 9E0B79CBAD6CF20D99456332EC9F2F93 /* JsArgumentHelpers-inl.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 4F0F1E929533747DCC277FD83E5C5B7C /* RCTImageView.h in Headers */ = {isa = PBXBuildFile; fileRef = F0CC1812790677B8D0F41C8A40E2FE8D /* RCTImageView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 4FDDE4AAD34AA3F00371636F296819FB /* DeviceUID.m in Sources */ = {isa = PBXBuildFile; fileRef = B8BF9274CA91C7882F2D20B09EEC53B7 /* DeviceUID.m */; }; + 5004AAE2136A647FD767A0E0BDAACC57 /* pl.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 6D335DC3C756371F6E0702960771B263 /* pl.lproj */; }; + 50A907872CE8F918CB227FB5B93D8A42 /* RNSVGCircleManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 17965D0FA86D88F67FAFC5D87C298CBA /* RNSVGCircleManager.m */; }; + 50BFF1999FC222E5F79EAA2259DF8DD3 /* RNSVGLinearGradientManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 8A5E2695E1E5D9782F4BA945A0940575 /* RNSVGLinearGradientManager.m */; }; + 51121C31AB85CCAB4974972FF96E37F5 /* RCTSettingsManager.m in Sources */ = {isa = PBXBuildFile; fileRef = AAB29BF75E741817CC42CBC03DC74FDF /* RCTSettingsManager.m */; }; + 514FBFCC2035E77E2E9083A67D0A66CB /* RCTTrackingAnimatedNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 52FE3545A117AE00A617EE1956EF8D79 /* RCTTrackingAnimatedNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 515CD29629A69AD5A6895E4ECA940060 /* RCTAsyncLocalStorage.h in Headers */ = {isa = PBXBuildFile; fileRef = F2073053C5070AD4D345A1843FC38FF1 /* RCTAsyncLocalStorage.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 515F31B013B56495C52F4E2FD50CD0E5 /* REAModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 2D7DE4EB9109A0E72F16B94222DAAF2D /* REAModule.m */; }; + 5188E35920121C4F023B009EB47B7250 /* RNVectorIcons-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = ED6C774D5D0B0B3197E75B36D00D0C13 /* RNVectorIcons-dummy.m */; }; + 520A17E1B6266101F599142893448BAA /* RNSVGPatternManager.h in Headers */ = {isa = PBXBuildFile; fileRef = A7F4108A85FC538CD4FA005863628DE3 /* RNSVGPatternManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 521EC7A85B2505DE5269201FC7D71F97 /* TextAnimator.swift in Sources */ = {isa = PBXBuildFile; fileRef = EB0CFBE40A9BD82CB3D0637C34A04A90 /* TextAnimator.swift */; }; + 5260FB3F32457CCCADA00F7059813CB1 /* RCTSurfaceView.h in Headers */ = {isa = PBXBuildFile; fileRef = C5E46D631D41D5741A251DCD6C36BCE3 /* RCTSurfaceView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 528E96CB5EA9B0A1D4FBCC45E2E5BA8D /* RCTExceptionsManager.mm in Sources */ = {isa = PBXBuildFile; fileRef = 20DFB40EA0CDBCE7FCFCB4CA6DDB1C5D /* RCTExceptionsManager.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-nullability-completeness"; }; }; + 52BB63AD915BCEAD6F84631D65CA61BD /* ReactCommon-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 317DCCB2266FA4F0D863D2FF87D753D8 /* ReactCommon-dummy.m */; }; + 52D232160F7F72C32741176F7E26AFFE /* AIRMapOverlayManager.m in Sources */ = {isa = PBXBuildFile; fileRef = B29BF938C398FC74D14750062B29260A /* AIRMapOverlayManager.m */; }; + 53254FD696C8B0F69A79BB67ED6B8EC0 /* RNSVGMarker.h in Headers */ = {isa = PBXBuildFile; fileRef = E4C0B09C90F695FA797B5988D1A801E8 /* RNSVGMarker.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 53530B34CFBFF51EF9FD34BDC3CDD9BB /* RNCGeolocation.h in Headers */ = {isa = PBXBuildFile; fileRef = 7A7961293D603CFA0060D00C63388BDD /* RNCGeolocation.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 536AE788D5B9127F0C3DCFD2E22129BD /* RCTSwitchManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 7C67612F061963421FA070CAD4577F62 /* RCTSwitchManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 536D8E16E55292DDD505560612624EC4 /* Instance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A5CCFB3F507FFB1DCA7E4771F2072483 /* Instance.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 53775B359970FB289385C396549256EA /* RNFaceDetectorModuleMLKit.h in Headers */ = {isa = PBXBuildFile; fileRef = FD97D288F5DC75E5CC02C5EB9122424F /* RNFaceDetectorModuleMLKit.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 53D6F8640DCBE66B7C1E1276E313FC79 /* RCTTiming.m in Sources */ = {isa = PBXBuildFile; fileRef = 32C1F0A744440B4C7DA9D5E173CC8FD6 /* RCTTiming.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 53DE50FA20FC2B26AE653FA17F3E29FC /* AIRMap.h in Headers */ = {isa = PBXBuildFile; fileRef = 773EF626A21E5504D15163293B9DDC47 /* AIRMap.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 543E81ACF685DC8C25DB5601D20C897C /* REATransitionAnimation.h in Headers */ = {isa = PBXBuildFile; fileRef = 190FFBD2A30F0DE94689AC4D617D99C6 /* REATransitionAnimation.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 54917B64BC55229C4819E4038B6A5E80 /* RNSVGEllipseManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 65869F9D725B3E057F6DBCA9817F47E5 /* RNSVGEllipseManager.m */; }; + 549524A91DAC6977C4858FA3A81183A9 /* RNSVGPathManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 98B3E863BD4046224FAD7CAA782023B7 /* RNSVGPathManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 549DB43863BF582C2DE7B46ACC079578 /* RCTRedBoxExtraDataViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = 5D8EE209B40051A53ACF824F83122712 /* RCTRedBoxExtraDataViewController.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 54FE1FB9A4D5FA9AB5F5759800B14437 /* RCTInspector.mm in Sources */ = {isa = PBXBuildFile; fileRef = 4D9231069E0049915DEE75A2761A4A73 /* RCTInspector.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 551FAA3D693A1AAF91DDBE1BE0E2AF95 /* RCTBaseTextInputShadowView.m in Sources */ = {isa = PBXBuildFile; fileRef = EAEF3AF694E259B785C9396274961A8F /* RCTBaseTextInputShadowView.m */; }; + 552A8748D9071680D90AC63D6C7661A7 /* CGFloatExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2277E8C255B27AB1F9325D6A9A137C37 /* CGFloatExtensions.swift */; }; + 55483FB0FC151CFBB00DCBFFFB158BBC /* ReactViewPagerManager.h in Headers */ = {isa = PBXBuildFile; fileRef = A0BD07828DFEFB618A3614A1A47B1DEB /* ReactViewPagerManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 55727CCF374660C4D6F8CFE6F7DB7577 /* YGConfig.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 835F564244FF1FA12CFD92F2C1243C9A /* YGConfig.cpp */; settings = {COMPILER_FLAGS = "-fno-omit-frame-pointer -fexceptions -Wall -Werror -std=c++1y -fPIC -fno-objc-arc"; }; }; + 558AE6E61D14E4124B2C773CF1739911 /* JSCExecutorFactory.mm in Sources */ = {isa = PBXBuildFile; fileRef = 72BBD3BF5FBF0A74100107A04314D66D /* JSCExecutorFactory.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 55A9EC30806E256B12F222E623808942 /* RCTLayoutAnimation.h in Headers */ = {isa = PBXBuildFile; fileRef = 491ACEEC084EEBD1AF81B3874F655B22 /* RCTLayoutAnimation.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 55DD5B2D382FB47A723ED5C10591A59D /* RCTModalHostViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = 8D1E8678839AAB5F3779A2A5707A8D91 /* RCTModalHostViewController.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 55FDD3B1073DC6FD56E652DF0A10228B /* RCTInvalidating.h in Headers */ = {isa = PBXBuildFile; fileRef = B95DA33E45FE2167A45BD9FC97CCD116 /* RCTInvalidating.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 560EDFA0BD8051AFAB5B3F14FEB44704 /* RCTView.h in Headers */ = {isa = PBXBuildFile; fileRef = F0A76B5BFAFE837DB66290129F312993 /* RCTView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 5623D1243BDAD5F80DACBA43CE532047 /* REATransformNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 58BAC3BE3C29A9E9E370B8A809161B01 /* REATransformNode.m */; }; + 563676AB6A72D67D6D4AF57F9B3DE13D /* TurboCxxModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EA97A7FED61A10933FDF7CC30189016 /* TurboCxxModule.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 569E2316940A29347B65918DCF0E0E1A /* FaceDetectorManagerMlkit.h in Headers */ = {isa = PBXBuildFile; fileRef = 0547922E63842181200838748964097D /* FaceDetectorManagerMlkit.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 56C15E04D1C61D3B51C7F2FE2C676B4C /* lottie-ios-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CF0AD6932AE049DEFB0E23AA74D4C31 /* lottie-ios-umbrella.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 57295BAD72FA74EBA08110A7C6FE8996 /* RNSVGCircle.h in Headers */ = {isa = PBXBuildFile; fileRef = D69E3770A89636526A178540B298D407 /* RNSVGCircle.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 572A084B13BC23F36DA2E450BC5E2974 /* RCTMultiplicationAnimatedNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 49047AFBEE5C543564467395A9C9D73D /* RCTMultiplicationAnimatedNode.m */; }; + 575F9006EA8BD2D60FCBF7E10E03B4DE /* RNCustomWhiteBalanceSettings.m in Sources */ = {isa = PBXBuildFile; fileRef = 8D44DCC2953242D9594A206AC4BC6727 /* RNCustomWhiteBalanceSettings.m */; }; + 57733D2BF76DB98CC290A213B1D49A78 /* F14Table.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 32D2568633F0C39D4E99317A3FF88403 /* F14Table.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -DFOLLY_HAVE_PTHREAD=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 57C24C091C62167CB7888E87890D539D /* RCTTransformAnimatedNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 2C59EAC665A6B62514B52FB4AF90920F /* RCTTransformAnimatedNode.m */; }; + 57CE32732F7ECC9F3056E0ED85B58E1A /* GradientFillNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9AF1E40BBA68EE62609D6272B3A55B4E /* GradientFillNode.swift */; }; + 57CF68F6934386B71DE440EAA04743B9 /* SpookyHashV2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4D3CB353D061375E87F007ED45F59B4 /* SpookyHashV2.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -DFOLLY_HAVE_PTHREAD=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 580DD45C96727928B6273033BA5E85AD /* FillNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 531196045CF781E2E2A2A7F5A5A2D320 /* FillNode.swift */; }; + 585A988EBCF714CAA74CC9CB570655B4 /* GCDWebServerFileRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = 9C22A9368D9FBE73EFCFC3C0DDA19584 /* GCDWebServerFileRequest.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 586BFD7E8F9910131BF4400BCC51C600 /* RCTRedBoxExtraDataViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = BF86A1D62F5BFFB9AEF707FF6416BB87 /* RCTRedBoxExtraDataViewController.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 58941B0DA08DD89E12754C8082DFE68F /* RCTHTTPRequestHandler.mm in Sources */ = {isa = PBXBuildFile; fileRef = D3902C83014D38634769CBEC19AB362A /* RCTHTTPRequestHandler.mm */; }; + 58B03385E5A5DF0962EC5F49D8959E0B /* TOCropViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = 308492FF3FCAEDED219E8CD731E0EDC1 /* TOCropViewController.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 5970A5D43B729711B38BADB229EB84DB /* RCTNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = C92A797AC907CD1A7128D6472A288F25 /* RCTNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 59B79886707ECBAEF83503AAAC1132BF /* RCTMultilineTextInputView.h in Headers */ = {isa = PBXBuildFile; fileRef = D8DC60D74757EEAF2DA2FE35CE69F706 /* RCTMultilineTextInputView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 5A14052595665649D62EF0FF9E75DE05 /* GCDWebServerURLEncodedFormRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CC423E0053A3393EE41C1A157A63427 /* GCDWebServerURLEncodedFormRequest.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 5A5EB816D7A257E837F836D8D39183CB /* REATransitionAnimation.m in Sources */ = {isa = PBXBuildFile; fileRef = 16625EFEF66B1ECB02DD4EC16CFC6EC3 /* REATransitionAnimation.m */; }; + 5A6D1E375107B57FB17F4A5527E9EC20 /* RCTComponentEvent.m in Sources */ = {isa = PBXBuildFile; fileRef = 91835251E094A46BE214676FFD225268 /* RCTComponentEvent.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 5A741897B7B13B1BA7152F1C1F9C59EC /* RNGestureHandlerButton.m in Sources */ = {isa = PBXBuildFile; fileRef = 7B28A227ED20415CFE40C5EC09E34219 /* RNGestureHandlerButton.m */; }; + 5AB796C2031F4DCD33D3F2D436DBE113 /* RCTBackedTextInputViewProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = 504C63F003605D6B94937D2BB3CFDA45 /* RCTBackedTextInputViewProtocol.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 5B0A0E47969A2F15338F361DBBFD8725 /* RCTSurfaceView+Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 2505D486AF528B184D2F96012E481D4F /* RCTSurfaceView+Internal.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 5B0C45D220BF51864514C8B024E54C31 /* RCTVirtualTextViewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = AF3A7DDA6A07B99ABEC8E2DA1BB45B5A /* RCTVirtualTextViewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 5B17C07022BB8181DA586246F4E32483 /* RNSScreenContainer.m in Sources */ = {isa = PBXBuildFile; fileRef = 6E2AB9BF40B61584FE7BB9574ED19487 /* RNSScreenContainer.m */; }; + 5B47547485ED0A5900C01BCFE5054E0E /* NativeModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 16F121E5F351EECCA7E28A8A34B652C4 /* NativeModule.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 5BFDFA56BCE9CED7AA5AC8AD65F853BD /* CoreModulesPlugins.h in Headers */ = {isa = PBXBuildFile; fileRef = 2777BB067D42069AD491352579907C82 /* CoreModulesPlugins.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 5C33C2A9ACE155F5AF67812966CBBBDF /* REAFunctionNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 4B2873661471166C092946EF318248F4 /* REAFunctionNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 5C85B84636EB8C07820CE3DB85CF68F9 /* RCTInputAccessoryViewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = C308DA183C7CD21A6850F981B2ECC4C7 /* RCTInputAccessoryViewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 5C8716492C4CC14BE263A3AFBC57CC0E /* REATransformNode.h in Headers */ = {isa = PBXBuildFile; fileRef = C1236A13D416C4ADDEC731A5B2AB330D /* REATransformNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 5CC970A5D12C131F692DA4EFBEF969FF /* CompatibleAnimationKeypath.swift in Sources */ = {isa = PBXBuildFile; fileRef = B06337B496ABB632710E01827FC4BA91 /* CompatibleAnimationKeypath.swift */; }; + 5CD6AD56CBCC24B81AE344F5E46EF4BC /* RCTWebSocketExecutor.m in Sources */ = {isa = PBXBuildFile; fileRef = 5A03EB8151BCD91F3F1B6AE51FBD0016 /* RCTWebSocketExecutor.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 5D020A613190518F8C2D3D5734344BEC /* RCTDisplayLink.h in Headers */ = {isa = PBXBuildFile; fileRef = 81B053D2E994EAD58748E522EAB4F1CD /* RCTDisplayLink.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 5D16ED053881D16859E80D19E7654812 /* AnimatedControl.swift in Sources */ = {isa = PBXBuildFile; fileRef = 95B7D2202826F2EFAE763F9CEEF26522 /* AnimatedControl.swift */; }; + 5D4B833DF88EF138F192AF76D3584F8E /* vlog_is_on.cc in Sources */ = {isa = PBXBuildFile; fileRef = 991467A3F17C445A7459236E0FFCC332 /* vlog_is_on.cc */; settings = {COMPILER_FLAGS = "-Wno-shorten-64-to-32"; }; }; + 5D4DECC56507FBE86B1E99810822F910 /* REAEventNode.h in Headers */ = {isa = PBXBuildFile; fileRef = BF93434B8A3E2C9AD337B758C2399DEB /* REAEventNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 5D513A806BF86D720EA3D18FF016DACC /* RCTComponentEvent.h in Headers */ = {isa = PBXBuildFile; fileRef = 378C03FF9E77038427FCEC783FCB3C92 /* RCTComponentEvent.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 5D762EA8C4DD33CEE13470F0C45894CB /* Merge.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1C4465EF58A70C056C79D061B928C1D /* Merge.swift */; }; + 5D783A28D42B69ED3918F66F820C8701 /* double-conversion.cc in Sources */ = {isa = PBXBuildFile; fileRef = F0517E56FF7DF318E7823958BC07879C /* double-conversion.cc */; settings = {COMPILER_FLAGS = "-Wno-unreachable-code"; }; }; + 5D917E2BF612E43303D780C243B0FACE /* RCTJSStackFrame.m in Sources */ = {isa = PBXBuildFile; fileRef = F853E118166FE1D90C85C0C0338CF375 /* RCTJSStackFrame.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 5E259CDDE9591A057363737A85D87E3F /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6E8C8F496918215CA7D4630C8249458E /* event.cpp */; settings = {COMPILER_FLAGS = "-fno-omit-frame-pointer -fexceptions -Wall -Werror -std=c++1y -fPIC -fno-objc-arc"; }; }; + 5E4CCE9CF3464FCFF035F0D0D433E72F /* PassThroughOutputNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = F6BD9A50BFE97C83246C467C43671190 /* PassThroughOutputNode.swift */; }; + 5E88317A976C9108B9B3ACCBD9895659 /* RCTRawTextViewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = AADCE7C64BAA41477E6809F0FB1A7FEC /* RCTRawTextViewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 5EBE0C2AE482FA076F7EF221286F8671 /* RNSensorOrientationChecker.m in Sources */ = {isa = PBXBuildFile; fileRef = A16702D41967CDD647CA030F2E5D3737 /* RNSensorOrientationChecker.m */; }; + 5EE9C2AF94FCC02FD40CE20A07915484 /* RCTSurfaceRootView.mm in Sources */ = {isa = PBXBuildFile; fileRef = F70EA8E0ECA8692F80688DD7B05F7D12 /* RCTSurfaceRootView.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 5EF041DD75E13610D0618BBDF0481D9C /* RNRootViewGestureRecognizer.m in Sources */ = {isa = PBXBuildFile; fileRef = 58B6DDF8649561799C59612A1017402F /* RNRootViewGestureRecognizer.m */; }; + 5EF1D859EDE3F66A4BBB64C1438BBA40 /* RCTAlertManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 7717776B68354B70627CC6738268D702 /* RCTAlertManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 5F2465EFA6D440FD6F5F92CEA993D3B8 /* UIImage+CropRotate.m in Sources */ = {isa = PBXBuildFile; fileRef = 2E96C803AE2147F1CBD7CA1C3A09E6B9 /* UIImage+CropRotate.m */; }; + 5F287415442DB48948319EA47E5F4FB5 /* TOCropScrollView.m in Sources */ = {isa = PBXBuildFile; fileRef = D9ED2BBBEB16BBD2FB4D78F4163B4E6E /* TOCropScrollView.m */; }; + 5FB83EF7A53F61A199E3373D9E693181 /* AIRMapLocalTileManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 9880E5758B9445A53544E3CD08AE1734 /* AIRMapLocalTileManager.m */; }; + 5FBB38BF84F8488A04E82008AE755618 /* RCTReloadCommand.m in Sources */ = {isa = PBXBuildFile; fileRef = 3CA9E26D63F15F6A10A8D8733AF42D20 /* RCTReloadCommand.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 6024659C581CDFD0B8DDC1EF71232583 /* RNSVGSymbol.m in Sources */ = {isa = PBXBuildFile; fileRef = 285F3053319EE896F057DDFE0ECDF145 /* RNSVGSymbol.m */; }; + 605266B8545D0C3087BBC79D2C01F843 /* sync_metadata.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E2AFB73FF2ECCCCF36936F57970828A7 /* sync_metadata.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + 60E01AE9622DC47BD119DC212AB386EC /* RCTSwitch.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DA56D6F1E668767B01C6247B344D205 /* RCTSwitch.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 617F4253D27C29AE61E2325D33B907EF /* RCTPickerManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C316A01F933FEC5C5A0E8E3EFBDC5B9 /* RCTPickerManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 61A7A105C062D2048EBFC2FBF55E1FC1 /* RCTCxxMethod.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1388C41DA8F5C85FE88D57F1B9D4AF4B /* RCTCxxMethod.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 61AC8E509B1535329157942F3B2B6D2A /* React-RCTBlob-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = DA05895390B67BE67BF979AE869AFDF0 /* React-RCTBlob-dummy.m */; }; + 61E5B481F51D5B7917AE7A7D6141B7CA /* InterpolatableExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5110AC7D126D60858DE63A8417B8F43C /* InterpolatableExtensions.swift */; }; + 61F094EE7B91C5247094B7D99725DF6B /* RCTImageSource.h in Headers */ = {isa = PBXBuildFile; fileRef = 3FCF9C3395187854EC3CC7E99CCE6F14 /* RCTImageSource.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 61F527C1B32E2C8DB7B792BF66AA4134 /* TextDetectorManager.h in Headers */ = {isa = PBXBuildFile; fileRef = B1B41495F1C2A08B5A37AFDAB01639AE /* TextDetectorManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 623F126EB12F53223B1C1549850FFEB9 /* REAParamNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 0C20662EC6F9242A5FC5B9AE39DB6F0F /* REAParamNode.m */; }; + 62BF9E9887877E13DFFDF0E32EA9CDE8 /* RNSVGImage.m in Sources */ = {isa = PBXBuildFile; fileRef = BC86AF373FCDDEEF567A95A4FA03FCAB /* RNSVGImage.m */; }; + 62EDCFABFE61734116D2B5C594A98B79 /* RCTDatePicker.h in Headers */ = {isa = PBXBuildFile; fileRef = 73D30F0F36855F1FA2C14326FA54DE73 /* RCTDatePicker.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 63045B14B92242DBDDB03DC830FBB082 /* RCTDevMenu.h in Headers */ = {isa = PBXBuildFile; fileRef = F7810BE43000FD2E40F662368FD56AA6 /* RCTDevMenu.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 632C1FC334789BCB7DA0CD145AFEA111 /* CoreModulesPlugins.mm in Sources */ = {isa = PBXBuildFile; fileRef = 58A29A2023A256185FC7647B5571360C /* CoreModulesPlugins.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-nullability-completeness"; }; }; + 6357DA92555633500DC69BCB972DC30C /* RNSVGBrushType.h in Headers */ = {isa = PBXBuildFile; fileRef = F43F1CC6EE0CD6AFA67661B7720FF22B /* RNSVGBrushType.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 63925D5D72F33BBB0C953956F3137D11 /* RNTapHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C764D730467B0BBFDA93746FCEAA1EE /* RNTapHandler.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 63F53AACFAAC2E301923833EEEB9F735 /* Glyph.swift in Sources */ = {isa = PBXBuildFile; fileRef = 461220437067A67B8216B42615A11787 /* Glyph.swift */; }; + 64205A54D1612CBFD3F5DCA8F10DF92F /* RCTConvertHelpers.mm in Sources */ = {isa = PBXBuildFile; fileRef = 149414FC5E4F3CC68E219ADB128EC4DF /* RCTConvertHelpers.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32"; }; }; + 645A675CE6E59036E76E78157ABBA434 /* GCDWebServerRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = F477981DA65E0F31D8F2063774021510 /* GCDWebServerRequest.m */; }; + 646D6306313A51753B520EE186B91FB9 /* RCTTouchHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 9E765C23B1E1AE37D0451F25FFB7750C /* RCTTouchHandler.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 64A199578411832FAEAB120F05947ED7 /* schema.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E7961F34196F3DAF3A6B971F7346F120 /* schema.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + 653459802284CE6651EC63E4FE53574D /* RNSScreenStack.h in Headers */ = {isa = PBXBuildFile; fileRef = 999F9AB6C58CFB1BF9C92A746603CA4B /* RNSScreenStack.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 654EFF6E917B166C7EF96C6A5975E467 /* REAOperatorNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 9A24155EFDDA56312A1F7CF8B073C3F6 /* REAOperatorNode.m */; }; + 65AB1B7C60D2E77D88E96788682C8E96 /* RCTLocalAssetImageLoader.h in Headers */ = {isa = PBXBuildFile; fileRef = 9F3FAB3480C299293BF6B498691CECDD /* RCTLocalAssetImageLoader.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 65B1DD1C8D79B8EFDFB9910176BB3134 /* RNSVGSymbolManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 9078DEDAB9155F0E31A59C2AFBA4D1F4 /* RNSVGSymbolManager.m */; }; + 65C16B0658D0CB2DC17DBAF274448957 /* RNSVGMarkerPosition.m in Sources */ = {isa = PBXBuildFile; fileRef = 83A71EA8032E2D5C6A8492CDEA22ABA0 /* RNSVGMarkerPosition.m */; }; + 65DE7ADFB8B1669C338A62C450CDD9FC /* RCTVirtualTextViewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = AF3A7DDA6A07B99ABEC8E2DA1BB45B5A /* RCTVirtualTextViewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 662A24967CCC2F64488A95339480C751 /* sync_session.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9E33D09D6B7A77AB773A6D3E21BF89BC /* sync_session.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + 663A181281EE34159643C163C528D27E /* AIRMapLocalTileOverlay.h in Headers */ = {isa = PBXBuildFile; fileRef = 50197EC73434CEB07B13F385AFF16CE6 /* AIRMapLocalTileOverlay.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 666133DCD3FC184F8A449735A22DA8C9 /* event.h in Headers */ = {isa = PBXBuildFile; fileRef = 346CF40E2B831E36B120EDC014A7924D /* event.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 66EDC20575AC9227184DE649A131CD43 /* RCTKeyCommands.m in Sources */ = {isa = PBXBuildFile; fileRef = B6FED2BC83D22BD64469F891524A9875 /* RCTKeyCommands.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 67489B570E839657905E67B9255EDFF3 /* PrecompAsset.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EDD29336582EBF2ED622E6FDFA1C2EB /* PrecompAsset.swift */; }; + 674D41F82BCC18815402C5FE9AC46135 /* NSTextStorage+FontScaling.h in Headers */ = {isa = PBXBuildFile; fileRef = 62458C7A9D0C777C142E0D823CE97E03 /* NSTextStorage+FontScaling.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 67556237BA5413DBE48EC5D5D6A109FA /* RNSVGUse.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B93D853786C41CE3BD8638FC86F0EB8 /* RNSVGUse.m */; }; + 676BE96EA626EE4D9F24B503B3F59F55 /* QBAssetCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 2ED33BDB2B3359131F45F49E5F19D99F /* QBAssetCell.m */; }; + 677DB2404B826625A3199072DF51CE22 /* RCTTextView.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B6B199289818DCB562FE54BEAB208E6 /* RCTTextView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 67BDE1F68DC2CFC83D208744B913E344 /* SajjadBlurOverlay.h in Headers */ = {isa = PBXBuildFile; fileRef = 3D3C3994500629AAF9F5B7E2BA5A58C6 /* SajjadBlurOverlay.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 67C8E9C0181F34241CF5B39C24352D26 /* YGValue.h in Headers */ = {isa = PBXBuildFile; fileRef = E9A9997E1BB76489DBFA47AC064187D2 /* YGValue.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 67C8EC3D05B6A0B51A317802FE928E39 /* RCTURLRequestDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 5A8739C705687DEF976F4D9F33AFCBDA /* RCTURLRequestDelegate.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 67CEC5C5B4B9058408C91F9638782A98 /* AnimatedSwitch.swift in Sources */ = {isa = PBXBuildFile; fileRef = C366F024B39FEB968AFF0D8E73C5697F /* AnimatedSwitch.swift */; }; + 67F27BC02036877D56FD50865796101A /* nl.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 13DF6E45E4A24662D39D2ABE45F6F2DF /* nl.lproj */; }; + 6841396A5B5624C733B80A101D1AEA86 /* RNSVGViewBox.h in Headers */ = {isa = PBXBuildFile; fileRef = DD813D97C57807ACF2E1978B39463227 /* RNSVGViewBox.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 684C475E2410717D6339FC125F8D57DA /* AIRMapPolyline.h in Headers */ = {isa = PBXBuildFile; fileRef = 8868E776977643520BB819BC930DF08C /* AIRMapPolyline.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 68D4E8EBED3B07E284ABCE20F1E3281C /* RNGestureHandlerEvents.h in Headers */ = {isa = PBXBuildFile; fileRef = 50943E759469A4DA556A0A5F5803C5FB /* RNGestureHandlerEvents.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 6921C05DBF3E31CCC82A32C835A4E51A /* RCTSinglelineTextInputViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = AC33286B1F40D9F9BB974349EB356128 /* RCTSinglelineTextInputViewManager.m */; }; + 692DA7FF43521D60A5C60A37A7DB6067 /* RNSVGRadialGradientManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 34E0B2DDF4D5D00C0A6C51A8561A5D42 /* RNSVGRadialGradientManager.m */; }; + 699C625B1E02C49045A4AEBB1BD962EB /* RCTFPSGraph.m in Sources */ = {isa = PBXBuildFile; fileRef = 093F27844DF49E602404A1B537C132EA /* RCTFPSGraph.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 69AF0BA3AB5838DBDBB1551849F53A99 /* RCTScrollContentShadowView.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C6E81BD4CE7D3132D22580E2DA68DFE /* RCTScrollContentShadowView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 69CD0B0729685F739704BC9420C20C0B /* AIRMapPolylineManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 7194ED6F7AE881D0ED9A320FDA2E14BB /* AIRMapPolylineManager.m */; }; + 6A23511D8F830AE8508C43FA770DACDB /* YGNode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BE25F876B3315AB26D2F1265576715 /* YGNode.cpp */; settings = {COMPILER_FLAGS = "-fno-omit-frame-pointer -fexceptions -Wall -Werror -std=c++1y -fPIC -fno-objc-arc"; }; }; + 6A412B0527E1FCAF62B1F5B2ACA4EEB0 /* React-RCTImage-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 07EB356D81A2299BF9A6EE28167CAE77 /* React-RCTImage-dummy.m */; }; + 6A5704F39EDF316E022F79D885ECDA23 /* RNSVGContainer.h in Headers */ = {isa = PBXBuildFile; fileRef = 19ACEEA651BF7A9A195017F68015A0B4 /* RNSVGContainer.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 6A5977B6D712F1ACFA75658B56664AAA /* RNCAsyncStorage.h in Headers */ = {isa = PBXBuildFile; fileRef = B49F35AC4AA266D2FD5FE78F0FDC5839 /* RNCAsyncStorage.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 6A6207E91468EBFFEBEB65C1CDD29852 /* sync_manager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E0CF7AD9D3B4829D2C8395BA01A279F2 /* sync_manager.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + 6A641976667EA6B4BE9C2A48638A1325 /* RNSVGTextManager.h in Headers */ = {isa = PBXBuildFile; fileRef = A46412FA5EC5EC6CA90F8F5D9637B4DD /* RNSVGTextManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 6A65ECC4583BBBDEB9D0C62FC3DA972E /* RCTSurfaceHostingView.h in Headers */ = {isa = PBXBuildFile; fileRef = DEEF66F7DE951666E21144F0A47DB0E0 /* RCTSurfaceHostingView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 6ABD178216D08B57441948546B7E6539 /* RCTRootContentView.h in Headers */ = {isa = PBXBuildFile; fileRef = 3DE280F0E47F0F19B7D93D5E242239DB /* RCTRootContentView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 6ACEAA2F3E616E0CD9707B5E08F2533C /* RCTSpringAnimation.h in Headers */ = {isa = PBXBuildFile; fileRef = AF9EA62BE9D8C4F00378682201A67B18 /* RCTSpringAnimation.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 6B28E38A8ED2A9E9E416B11E43A71C37 /* AIRMapUrlTileManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 71BCA6F1E866D61A8F2CD0C05995D486 /* AIRMapUrlTileManager.m */; }; + 6B342EA59F492722FE8230E84286F0CA /* RNRootViewGestureRecognizer.h in Headers */ = {isa = PBXBuildFile; fileRef = EAFB6F84B30F9B05DF2CE8F9DBE753FD /* RNRootViewGestureRecognizer.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 6B7D61B22D5100BD82A407A8C61799D1 /* TrimPathNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 317D35698B19046915861DFAC6B3A3B9 /* TrimPathNode.swift */; }; + 6BC3C1BD5F4226B6F057BA4E933C841B /* JSExecutor.h in Headers */ = {isa = PBXBuildFile; fileRef = 97F0E880EB319BA43FD57E74E858626D /* JSExecutor.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 6C1444B6370BDE40E9192FB249B2C8A4 /* RCTRawTextViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 2F279CF508C0A70C818415943852D15F /* RCTRawTextViewManager.m */; }; + 6C7E3B79CB3699ABA24D7463DA4FD3B0 /* MathKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 853E27B956A47C34F3E026DF8AE4EA2E /* MathKit.swift */; }; + 6CB65C909A8466AC6A1981A9315804A9 /* YGEnums.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2C157020D4C14F52330CF9012A173270 /* YGEnums.cpp */; settings = {COMPILER_FLAGS = "-fno-omit-frame-pointer -fexceptions -Wall -Werror -std=c++1y -fPIC -fno-objc-arc"; }; }; + 6CC03855E1A45CE23F587F48B156F9DE /* YGStyle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A2E550999B0663B10CFA9211833290ED /* YGStyle.cpp */; settings = {COMPILER_FLAGS = "-fno-omit-frame-pointer -fexceptions -Wall -Werror -std=c++1y -fPIC -fno-objc-arc"; }; }; + 6CCBAF7153B24997C6CD974660C3ABC5 /* RCTGIFImageDecoder.h in Headers */ = {isa = PBXBuildFile; fileRef = 9C195DCF85DEEF72E0FC3B249CAC7D04 /* RCTGIFImageDecoder.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 6D1ADED4F34E054E20573577A06DBBD4 /* RCTDatePickerManager.h in Headers */ = {isa = PBXBuildFile; fileRef = D3D054E6760CF9F7D18FAF5CF21169DD /* RCTDatePickerManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 6D45DE2783D1AE2E9CC5BFD8BF8AB70B /* String.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 31F8E6E8ADE33FD4B2309D15A8FD3868 /* String.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -DFOLLY_HAVE_PTHREAD=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 6DBA63C880743208B00BE484CE5E1CE5 /* RNSVGPattern.h in Headers */ = {isa = PBXBuildFile; fileRef = A88D947BC71F8FC9BBD9B349EA812643 /* RNSVGPattern.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 6DD8E3997183351E85D7404A87200273 /* RCTBridgeMethod.h in Headers */ = {isa = PBXBuildFile; fileRef = 43A065B93A776301EE5A6C3102FD7A2F /* RCTBridgeMethod.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 6DDDAF842E937E289DCA2031352B890E /* TOCropScrollView.h in Headers */ = {isa = PBXBuildFile; fileRef = 3EC9880F8DFF117056E1E65A755117F7 /* TOCropScrollView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 6E09DA5F1B9C0AE2E377506C862F0455 /* RCTFont.h in Headers */ = {isa = PBXBuildFile; fileRef = 498863C98F2FFA153EF5F1279710387E /* RCTFont.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 6E2FB9DFEE876ED26F6ED385F842A08B /* RCTSurfaceRootShadowViewDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 007E258C6DF7E87E03F7AAA368A11891 /* RCTSurfaceRootShadowViewDelegate.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 6E4E430E0FFB68FE24A085E124148242 /* JsArgumentHelpers.h in Headers */ = {isa = PBXBuildFile; fileRef = 29B8548DF2FAAE668A47DDC7DC7FB6BF /* JsArgumentHelpers.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 6E5FDDC033DB7AB946AAC9B1D6B3BDBE /* diy-fp.cc in Sources */ = {isa = PBXBuildFile; fileRef = 7A3FA2BCBF68AA551CB11D6DC749812D /* diy-fp.cc */; settings = {COMPILER_FLAGS = "-Wno-unreachable-code"; }; }; + 6E617080798C083194846FECB9CD4B2A /* RCTManagedPointer.mm in Sources */ = {isa = PBXBuildFile; fileRef = 67ADEB60587D4C023C44CBB1C63BF37D /* RCTManagedPointer.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 6E6D370F4A82C9C6064008784725E97B /* RCTImageCache.m in Sources */ = {isa = PBXBuildFile; fileRef = 8CAADAA2FB37B0EDC8DCBA019823A011 /* RCTImageCache.m */; }; + 6F047EE850659CD10996F1452877CDDF /* BridgeJSCallInvoker.h in Headers */ = {isa = PBXBuildFile; fileRef = 0E24EF8266B3BE078D72FAD30DFF2240 /* BridgeJSCallInvoker.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 6F1001BA40B49905C0F794F038511F89 /* AIRMapCircle.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DECE66EC6AC34CEA9025115711FC6A6 /* AIRMapCircle.m */; }; + 6F266332A5D24451B92A403143B5637C /* CompactValue.h in Headers */ = {isa = PBXBuildFile; fileRef = B64309719437112F5261F30917B4913D /* CompactValue.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 6F2C806EC8E768B8866F052C6AFF532E /* threadsafe.h in Headers */ = {isa = PBXBuildFile; fileRef = 7D3CE2BDC12B2467B74974FD13756591 /* threadsafe.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 6F51D96F8986AB5E320CEF2EEF15E6E5 /* RNGestureHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 323A71C26D51240C103EF9D340CE675A /* RNGestureHandler.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 700426AFB4ACD60D7187459F1C0085BA /* RCTBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = 740BFA3C4BF5489668EA60BEB7F0015E /* RCTBridge.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 706D10A667635D224C4A3E675C0E275A /* RNSVGRectManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 9CB232CAF3D9E0E803EBDAE012F31C6B /* RNSVGRectManager.m */; }; + 708EFCC2CE9EE99E2A830E2F708EC791 /* AIRMapSnapshot.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B7667BB16BCE4E97C4737014B2EB4BA /* AIRMapSnapshot.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 712837EEAED57EC9354401C1DFA20D0F /* Utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5625FE1D66C2F21DF257DFAFBE8BF593 /* Utils.cpp */; settings = {COMPILER_FLAGS = "-fno-omit-frame-pointer -fexceptions -Wall -Werror -std=c++1y -fPIC -fno-objc-arc"; }; }; + 71625B6C8096A27693B5DAD747FC02CF /* RCTDatePicker.m in Sources */ = {isa = PBXBuildFile; fileRef = 3EB024956EF1F191D5A99B6A880522BE /* RCTDatePicker.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 7171D1246244705D55947141ADBE1CAB /* RCTConvert+Text.m in Sources */ = {isa = PBXBuildFile; fileRef = 26DBEADAAACD4D12D8E5D883401E81E8 /* RCTConvert+Text.m */; }; + 71AA7792BA91D58F68ED30347E6E162E /* RCTTurboModule.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7820EF6AE129D8A6E56947A900101DC0 /* RCTTurboModule.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 71CB8C91DE8D91AFA7F3B85FAF2F8A73 /* VectorsExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 02C45EC3B04F5ABFB76837834161ED55 /* VectorsExtensions.swift */; }; + 71E8065E6BCF660A7E17E84E23DFBCE6 /* RCTShadowView+Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 4BE4060AC80BBD206777C8389FACCD1C /* RCTShadowView+Internal.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 725CC683BFB85E057C675DBFC8C57294 /* JSBigString.h in Headers */ = {isa = PBXBuildFile; fileRef = 7966EC2076A87C769C3EEEB42BC2058E /* JSBigString.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 727302CD2F03FF3C7045D0F1173EF5C1 /* RCTInspectorPackagerConnection.h in Headers */ = {isa = PBXBuildFile; fileRef = 3997CE560541DDAF5BD151A10ABD10D4 /* RCTInspectorPackagerConnection.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 7273E470029F2D1437729B26DBC9A04F /* RNVectorIconsManager.h in Headers */ = {isa = PBXBuildFile; fileRef = DB2FF3471161FE8ED77A86B5069D2EA0 /* RNVectorIconsManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 72C52C415F5A46EE60CA8FEAE9B29FB4 /* js_realm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 13BFC7BEF70BC984B50057EC93EB4E91 /* js_realm.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + 72D538F7B52A947B427C98282D5B29D8 /* RNSVGRadialGradient.m in Sources */ = {isa = PBXBuildFile; fileRef = C2ED5230FFDF01F7DA060BC480C809E2 /* RNSVGRadialGradient.m */; }; + 72E3F4A827313437ED3151568540B256 /* RNCameraManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 331AD6887161E4B355549A415DC4EEBB /* RNCameraManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 72E5041C41DF8EEFB1B461B6843ED150 /* GCDWebServerStreamedResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = D2E0D4DA04AD801A78829766862218F9 /* GCDWebServerStreamedResponse.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 72F5180A5EB61194684E9E7BC487362B /* GradientStrokeRenderer.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0ED803C93E7D8D2E8F8DC8DC3418FE9 /* GradientStrokeRenderer.swift */; }; + 7398B2506C005640ADDEEEAF613F92C4 /* MaskContainerLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 44F60D75E0FF996D55B0F22CE77F9EE3 /* MaskContainerLayer.swift */; }; + 73CFDCB30A56E1F6744C9890CD7B2B48 /* GroupInterpolator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2D7DD9C087C1354E420517C5C065AC5B /* GroupInterpolator.swift */; }; + 744F80065F446275EE7B8B5C01EBE0B2 /* RCTWeakProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = 953B7805A5D39D267C36F17E2D06C8EB /* RCTWeakProxy.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 745F3CFC80621B7449CE911AD8047819 /* ShapeTransform.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB61A7DE86EDE8B35473F789ED0F68E7 /* ShapeTransform.swift */; }; + 7484F8518ED2BF296241FD183C2ABD5F /* AnimatedButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F5C303E82C60CF22ECDA6FD5EEEA355 /* AnimatedButton.swift */; }; + 74978E945847A96ABAAD947DD9D072BD /* RCTTextShadowView.m in Sources */ = {isa = PBXBuildFile; fileRef = E5151C34C0EF604A046582A2D267563F /* RCTTextShadowView.m */; }; + 74DF1FCF772747F47B3BD8E24B04529A /* RCTWebSocketModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 48576BF0292342E3BC471147EF3D588D /* RCTWebSocketModule.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 75009382A38188175A5B3B162B25631F /* RCTConvert+Transform.m in Sources */ = {isa = PBXBuildFile; fileRef = 97D297C84892429B6C4D3113C6984DC5 /* RCTConvert+Transform.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 7542ED1CE7DF9CDA0D375075C883C653 /* RNFileSystem.h in Headers */ = {isa = PBXBuildFile; fileRef = B44C4D200CA7DB16992A539CE6E27D08 /* RNFileSystem.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 758110B247ECB13EC801828F2A0C0DB0 /* RCTMaskedViewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = CA07BA12BCBA2B37E40F1E0F10EF4E0C /* RCTMaskedViewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 7590F497075F095E5EA69393BB17A584 /* CurveVertex.swift in Sources */ = {isa = PBXBuildFile; fileRef = 576065606DE1DC3900FDCB04B966C6D1 /* CurveVertex.swift */; }; + 75B30E161C26FD52A2760C9EFC3D3FA7 /* REATransitionValues.h in Headers */ = {isa = PBXBuildFile; fileRef = C6556FD190070CBA3565366216FDD692 /* REATransitionValues.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 7606E3EB656D6C55F6232F98230CCDD7 /* Vectors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2CDEF04641AEE2AB98FC728313CBE563 /* Vectors.swift */; }; + 766279CB8D3AD5BCE14315D276E44EC6 /* RCTConvert+Text.h in Headers */ = {isa = PBXBuildFile; fileRef = 1C9D735D2B3A99051321672481DAA4B2 /* RCTConvert+Text.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 766377CC7FB96161842ABB4B9528D7BB /* RCTModuleData.mm in Sources */ = {isa = PBXBuildFile; fileRef = 79B34DCD3E798060E3FAC707FB02B4C7 /* RCTModuleData.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 766A4636F470A7AF9DEB41343AD31644 /* RCTReloadCommand.h in Headers */ = {isa = PBXBuildFile; fileRef = 481048761DD53310736C4561BBDF94C4 /* RCTReloadCommand.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 76B7C008F00952137EDAF0CE5EDDE60C /* Yoga.h in Headers */ = {isa = PBXBuildFile; fileRef = A1553B8C9829BE1F8B64C7683588CA0D /* Yoga.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 77125E840F4A3E0F185C1589ACAC3FA8 /* RCTImageLoader.mm in Sources */ = {isa = PBXBuildFile; fileRef = E08E41CE4E68E08FAC46BA384C95351A /* RCTImageLoader.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-nullability-completeness"; }; }; + 7713954FD6DA5C2F4525813C30C7F4F0 /* REAValueNode.m in Sources */ = {isa = PBXBuildFile; fileRef = CAB75B892C756B1E41BC2541464846E2 /* REAValueNode.m */; }; + 7737A77E5FA88AA0795D4DCB7E96849D /* Interpolatable.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8D18992CA9A1C92DDC9B2CD69EE84AF /* Interpolatable.swift */; }; + 774ADCDAD6A028E9FB2EF56D2CE7F675 /* SizeValueProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD19A42F9A5D4784F8B8D081039BDEB6 /* SizeValueProvider.swift */; }; + 774DDB16178D55C82830CAF87BCA1B14 /* RCTImageSource.m in Sources */ = {isa = PBXBuildFile; fileRef = 047E4BFFF5826D403EF9E4A2F3176B6C /* RCTImageSource.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 77B36FBC8B7C3FA64158F93743CCDE44 /* RealmJS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 36E5E2214962342800ACC3F2135BB80B /* RealmJS-dummy.m */; }; + 77CA1D1B099D089EF4C9795EC365940A /* RCTWeakProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = 2DC5AE15D8A7AA8F242A66F54E5F02C9 /* RCTWeakProxy.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 77E9916D4C93DFD377A7511AD4AA6D46 /* AIRMapMarker.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EAF25ECC4C97ADBA41C50ACB59EFFBB /* AIRMapMarker.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 77FE7C39E622A9FA27C98B80B135D5CA /* ModuleRegistry.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5FDF031501671A59C7EF319FCA68AAB9 /* ModuleRegistry.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 7803C410C6C87149466251104DE3F3EE /* jsilib-posix.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EF96A2838F05A4DEE186B9590D7506B2 /* jsilib-posix.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 7851762CD157D319BCE0D4ED79695059 /* RCTInterpolationAnimatedNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 29851C4FB70F2F2F4D12901BCFEDA157 /* RCTInterpolationAnimatedNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 788D7D21C29F0908B3AB2641566E5C6C /* RCTBaseTextInputShadowView.h in Headers */ = {isa = PBXBuildFile; fileRef = E468B90925B127048D26250229969696 /* RCTBaseTextInputShadowView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 789DD1A80D4CDACAE762CE1B87C1594D /* RCTTouchHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = C19674798023D7ADB601F31F1C3D9AE6 /* RCTTouchHandler.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 78D75497D8A4D1E7B532209B05BA4E8E /* RNSScreen.h in Headers */ = {isa = PBXBuildFile; fileRef = 054F26ACE0CC13FF125209E274FFA997 /* RNSScreen.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 78E082350F92A2AF5078298218209744 /* YGValue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3357ED357DB398B762C0F992B6A78144 /* YGValue.cpp */; settings = {COMPILER_FLAGS = "-fno-omit-frame-pointer -fexceptions -Wall -Werror -std=c++1y -fPIC -fno-objc-arc"; }; }; + 791272CE84E3ED1805F347296C30FEF8 /* YGEnums.h in Headers */ = {isa = PBXBuildFile; fileRef = C2797371596405ECDD234B6669CE130B /* YGEnums.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 7954E4E69F110D651ECE169B652E7C21 /* bignum.cc in Sources */ = {isa = PBXBuildFile; fileRef = 66A4A900168DF84350DE3936449B4831 /* bignum.cc */; settings = {COMPILER_FLAGS = "-Wno-unreachable-code"; }; }; + 795589432E1D4AC45A258ACF0562C401 /* RNSVGSymbolManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 2FFE466478283824948818FDE34BEE7E /* RNSVGSymbolManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 795E43EEF3DD11FA2AA86A78FA52732B /* RCTModalHostViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 52A768D937338F16358EB8B715C8D254 /* RCTModalHostViewController.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 796D3FBC826F90E59D1341C3482892F8 /* RCTSurfaceView.mm in Sources */ = {isa = PBXBuildFile; fileRef = 4374093515097AA8D4E5FFB5181AF983 /* RCTSurfaceView.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 799439F24289674BA8E2D4C390805265 /* RNSVGEllipse.m in Sources */ = {isa = PBXBuildFile; fileRef = 8A8549DCCA4A2E6DF0814076D2BD4403 /* RNSVGEllipse.m */; }; + 79A6BE5FB742F2BC094FCC29C3CED60D /* ContainerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 11528A71D7A137E87FC72192E74E5A18 /* ContainerView.swift */; }; + 7A06ACB6B5F6A4387C3EC769A8385175 /* ImageAsset.swift in Sources */ = {isa = PBXBuildFile; fileRef = 565BC8F253CCCEFE489405A0FD4B39E5 /* ImageAsset.swift */; }; + 7A230ADFD1A93BD4E35E314A28D84D20 /* AIRMapMarkerManager.h in Headers */ = {isa = PBXBuildFile; fileRef = EA39116D102B95DFC21A0987228A959E /* AIRMapMarkerManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 7A26D45DC2CB40C9C30F1284CE29EDE0 /* RCTDataRequestHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = CD05BF427FDC034F28F5ACA340676843 /* RCTDataRequestHandler.m */; }; + 7A8123BE62EF36DD3F384738875DE69C /* GCDWebServerConnection.m in Sources */ = {isa = PBXBuildFile; fileRef = 2FC43340DD4A3D00A91F54E2C06EE7A4 /* GCDWebServerConnection.m */; }; + 7AEAE77E78849246273E0D289EF7C3C9 /* ShapeContainerLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB79E1EB09A8A6EA2354F2B9366B0214 /* ShapeContainerLayer.swift */; }; + 7B066B6636D7210ED059D5831E9B83F9 /* RNReanimated-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 3E0C7B2F78E1A89F6CFD04636E4C2AE7 /* RNReanimated-dummy.m */; }; + 7B15F5476526905E5E3EBA48DD641389 /* RCTVirtualTextShadowView.m in Sources */ = {isa = PBXBuildFile; fileRef = 329F94BD0B8B8156BF25E5416269DB5E /* RCTVirtualTextShadowView.m */; }; + 7B8D4DD6E122BA1FEA9725CF8A386EC8 /* RCTConvert.m in Sources */ = {isa = PBXBuildFile; fileRef = 2B4E8EAF5CD215565D30A3120D0F4DB2 /* RCTConvert.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 7BA571FEE065F988267066C5A0D1CAFC /* Pods-iLink-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 37DC4413D3F613AB342A80A8ABF575EB /* Pods-iLink-dummy.m */; }; + 7BAF94A22126FD75E9E54E20A112566E /* QBAssetsViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CBEF971B734662512F57BF038AD785D /* QBAssetsViewController.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 7BBB52A23ADB0C9AA1E7BBF2EAC91D21 /* RCTSinglelineTextInputViewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = BC043FF9D0598B50198A39EA41C2E162 /* RCTSinglelineTextInputViewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 7BE5B58835F6C75E73B34A553A618BF2 /* RCTInputAccessoryViewContent.m in Sources */ = {isa = PBXBuildFile; fileRef = AD7A7E7F692C59953E4F2D556748C698 /* RCTInputAccessoryViewContent.m */; }; + 7BF60ABA999410AD652B43A80C854376 /* rpc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6FA615BE5A848690598E817DA94371E1 /* rpc.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + 7C56B800BA3FBB973E6DE897A3604A05 /* AIRWeakMapReference.m in Sources */ = {isa = PBXBuildFile; fileRef = E91BF9E2FD07B1B4FC64DB7A321410E3 /* AIRWeakMapReference.m */; }; + 7CFBF7FA5583C35CF85CB39EB07AEE7C /* thread_safe_reference.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F59A7EEFCBCC98F244966096514F2DBA /* thread_safe_reference.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + 7D03415D808C96B0B573588236FAF82C /* RNSVGBrush.m in Sources */ = {isa = PBXBuildFile; fileRef = BAE6B444A9FE1ADB27C68EAD5C643E1F /* RNSVGBrush.m */; }; + 7D4D54DC908104071A0FC3740CF800B7 /* lottie-react-native-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 673B4475CAC51EA0B22EBC0E13E734F8 /* lottie-react-native-dummy.m */; }; + 7D77A040E1A2B6568509066C37520D80 /* Font.swift in Sources */ = {isa = PBXBuildFile; fileRef = 030D0147B6B4FD55440FAB687EB942DC /* Font.swift */; }; + 7D7D720AA13085F17F5E1350A6D77DBC /* object_schema.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0BD992E676C696C4A5807168C24D99A6 /* object_schema.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + 7DC132029003463D3E9FE3C483C88FEA /* RNDeviceInfo-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 5588769C415DB2F73AA197EA76CB3A3B /* RNDeviceInfo-dummy.m */; }; + 7DEC8C3567BAD3BFD14CC7B54F948349 /* REATransitionManager.m in Sources */ = {isa = PBXBuildFile; fileRef = E419DDAAF6B99F38FAB59FBA4BC6D17C /* REATransitionManager.m */; }; + 7DFBA1D0FB8B754DB3418DA33E9F38BA /* RCTMultilineTextInputViewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 99CE77110E69BF19B5D7317F4DDEBACE /* RCTMultilineTextInputViewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 7E01FDBB646E1748189B62AAEF886B99 /* RCTInputAccessoryViewContent.h in Headers */ = {isa = PBXBuildFile; fileRef = DFC0809A9A24895946B8E7423321A9AF /* RCTInputAccessoryViewContent.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 7E5B2E0FB36C4638F4D31BE8445336B0 /* RNSVGBrush.h in Headers */ = {isa = PBXBuildFile; fileRef = 9F31218DD15F687209AA900CF3942B51 /* RNSVGBrush.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 7E5C77306B0120BC531E6B3011948A5A /* RCTImageLoader.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A0D8B9B0F0AC45354196CBE7523F67F /* RCTImageLoader.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 7E5FB49135BCAF48A58D1D177B465588 /* RCTDivisionAnimatedNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 05ECEAFD44F99129EBE85B4EC141A17D /* RCTDivisionAnimatedNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 7EFC1B712A57CB4AEA122E08BAC84EF0 /* ja.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 1A8304F2E111EAED9DA12E4995BEE945 /* ja.lproj */; }; + 7F5D8153196304DD5DE93AA87C002357 /* RCTStatusBarManager.h in Headers */ = {isa = PBXBuildFile; fileRef = EFF65AE191E9DBA9D82F06A0B9BECF34 /* RCTStatusBarManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 7F655792C63E8271F9DA61D621A1C959 /* RCTEventAnimation.h in Headers */ = {isa = PBXBuildFile; fileRef = 021AE3D22955FE68DC8240C4AA972CEF /* RCTEventAnimation.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 7FB3CBE5BFDA11CB860B075A35EE3BFE /* RNSScreenStack.m in Sources */ = {isa = PBXBuildFile; fileRef = 0D8ABA2FC542F9CDD329C616C38DF8AC /* RNSScreenStack.m */; }; + 7FCFE8E3357E074D73271AD92A374E9A /* external_commit_helper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E64810C093021781585B0D608F1C2B77 /* external_commit_helper.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + 7FE9E4CC3D1B56C2A7F5744DF45B61D4 /* RNSVGClipPath.h in Headers */ = {isa = PBXBuildFile; fileRef = F59F86E65D5808E638DA23309781CCB4 /* RNSVGClipPath.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 7FED26FC6349832C332151DBC2FFE2FC /* UIView+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 31F1128BC681CCEDAED574C4A3BB989F /* UIView+Private.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 801483DE412D4BF3CF95BEF3AC4ABB1E /* RCTFollyConvert.h in Headers */ = {isa = PBXBuildFile; fileRef = 4AF99E4638DBC408CE7391E06909B359 /* RCTFollyConvert.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 8043E157D76A0F858CBC9E13C55A308A /* RCTResizeMode.m in Sources */ = {isa = PBXBuildFile; fileRef = AC8F935888D89DAB7BBE23F04837F50B /* RCTResizeMode.m */; }; + 804784DA805BCF2EA4D7F5E60B7F6F89 /* RCTRawTextShadowView.h in Headers */ = {isa = PBXBuildFile; fileRef = E6F7D7BA7182C88340108185552D0BDC /* RCTRawTextShadowView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 805613846569FBC6B06CD199748D15E2 /* RNNativeViewHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = A8B9A6CDCC5197EFD9488FE27F25ED5D /* RNNativeViewHandler.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 80A8D7F03AF2FE562587749A24546283 /* transact_log_handler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A48477ED40D417B9B631D15E28C83C74 /* transact_log_handler.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + 80CA47F60FE28F2FEA77D0973878D3D8 /* RCTURLRequestHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 0B876F6165B18EC9582BFD56D333E863 /* RCTURLRequestHandler.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 80D071F16D68C3FFC69CFD74C75BC6B6 /* RCTNullability.h in Headers */ = {isa = PBXBuildFile; fileRef = B4CE3195BCB54E89365CB419D3E13349 /* RCTNullability.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 80E76D15F06A95D8E35F1022EFE2FDC4 /* SharedProxyCxxModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 380B454005B16D2E04E86FD10E465334 /* SharedProxyCxxModule.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 81173174EEBCB5FC7D5E995911A21757 /* RCTBundleURLProvider.h in Headers */ = {isa = PBXBuildFile; fileRef = 4E0AB66B7AE30A76758A02A92ACA5580 /* RCTBundleURLProvider.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 813AB2EB5300CAD6D485FB68CBD05804 /* TOCropView.h in Headers */ = {isa = PBXBuildFile; fileRef = DF591E2F6A099FEAF3E493E019C85F91 /* TOCropView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 813D403957E8691EECBD46E12FDFBEDA /* RCTImageUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = D0E5E21082C8136283C3279F482F2CF9 /* RCTImageUtils.m */; }; + 818FB001A109392F636B380EBDAE678F /* react-native-onesignal-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 1BCE5AA8EB52234CB535E56070F0881F /* react-native-onesignal-dummy.m */; }; + 81B32B24055AE41A3081CAE24C875274 /* RCTImageBlurUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = D4737F8FEB624BDD4B148D0992B814D6 /* RCTImageBlurUtils.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 81CC62FFB67259CAEE48C5AD634C173A /* bignum-dtoa.cc in Sources */ = {isa = PBXBuildFile; fileRef = AA1A216C78C25A75CE8F40D0B713DA66 /* bignum-dtoa.cc */; settings = {COMPILER_FLAGS = "-Wno-unreachable-code"; }; }; + 81ED1A0DE9794352BE81C7DDC7E6C081 /* SMCalloutView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8BCCCADF97F9F7EE0FE3F6868274BDC5 /* SMCalloutView.m */; }; + 81F17913F2DC28E8497AB84FEA97B8C3 /* RCTMaskedViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 95036A8702C081B9C72A82D2588AF46E /* RCTMaskedViewManager.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 8210BB0DEB1B9FBBFAA138F807F666CB /* AIRMapMarkerManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 2C9A9D55786D4D84A5A32A6DD5625F0A /* AIRMapMarkerManager.m */; }; + 82EC86610C7F4802E9B0EE5F60959C1B /* RNCamera.m in Sources */ = {isa = PBXBuildFile; fileRef = AAEE66EDB186EF6F64C5266EC24EE491 /* RNCamera.m */; }; + 832007C6E6941549098C124B2737DC19 /* Transform.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4948B166AF162F3A8A4B3AD68DF83313 /* Transform.swift */; }; + 83235BB8F78D24C9D5BE5B3F2A5510E4 /* TurboModuleBinding.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 833EE53DB9559776254213C55830C285 /* TurboModuleBinding.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 832F92E35413ABDCFC5F62EF0229EAB1 /* REASetNode.m in Sources */ = {isa = PBXBuildFile; fileRef = E121A0ADD8B2CDF1E5D691A85AB2CD44 /* REASetNode.m */; }; + 8426BED3645BE73EACE258635078F8A6 /* ItemsExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3C3EA67E7281FF5BF8A811984C2D4617 /* ItemsExtension.swift */; }; + 8432830A911A1292E049A05B2EEAB116 /* TOCropView.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A97DED01EE577E8F13121AC4765C4E2 /* TOCropView.m */; }; + 84795FACB98AA55076469620F6F7D424 /* RNSVGEllipse.h in Headers */ = {isa = PBXBuildFile; fileRef = FC9C5B2255AF060B7FBFD23A52247D88 /* RNSVGEllipse.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 8488F39C3DBC4D86F17AFCDF99131D38 /* REACondNode.m in Sources */ = {isa = PBXBuildFile; fileRef = EA6F220E0E153DEE9052D0B89A769892 /* REACondNode.m */; }; + 84A45643054AF41CF97D4A89FDE66902 /* TOActivityCroppedImageProvider.h in Headers */ = {isa = PBXBuildFile; fileRef = 244DE127DE28D1B8EEDDF50FCEE90A68 /* TOActivityCroppedImageProvider.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 84B08332D1B2EC29C76860733C59F03D /* JSDeltaBundleClient.h in Headers */ = {isa = PBXBuildFile; fileRef = 917E167DDC625A3B5F0FA252B68BF0DF /* JSDeltaBundleClient.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 84B60FD8A424EC6B3AE0672414ABED07 /* RCTBorderStyle.h in Headers */ = {isa = PBXBuildFile; fileRef = 3429FB0665DA4067B4E7790ECA20BB32 /* RCTBorderStyle.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 84C1BE0AD6D920468BF0F64BD8B3639E /* TextDetectorManager.m in Sources */ = {isa = PBXBuildFile; fileRef = FDF0B4882759CBBF2ECCA0023038F2D8 /* TextDetectorManager.m */; }; + 84E105D17D53457E9351F14C1FF4C4EC /* NativeToJsBridge.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F8B65144CE72D1A5A656CB164155E32E /* NativeToJsBridge.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 850FF9DC7CE00FA2A007E9D66E52E32C /* FillI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7CBD5CF31D71C6C5D2938D29CE17AD98 /* FillI.swift */; }; + 8521A683F25C502FE6AF7C540451E995 /* LayerDebugging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6667B74E44F9980007ED62CDE1A92BDC /* LayerDebugging.swift */; }; + 85386B3791E0874835CB13F2DDAB0BC4 /* AIRMapCalloutSubview.h in Headers */ = {isa = PBXBuildFile; fileRef = 207465AF27395BF979A6D2FB41CC0108 /* AIRMapCalloutSubview.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 85393F8B5DCC0074C5080F10912F6F3B /* RCTSafeAreaShadowView.m in Sources */ = {isa = PBXBuildFile; fileRef = 54B9B62E608730A2CBE306FE9CDE2518 /* RCTSafeAreaShadowView.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 853A540B53F035B1662E22D67CF76AEA /* TurboModule.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BF723151A330EF526E035028F00F6202 /* TurboModule.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 85A02E8CC879289C54BE92257E3478ED /* RCTImageStoreManager.m in Sources */ = {isa = PBXBuildFile; fileRef = F3C18D3CD50119CC0AC01C8A7809D608 /* RCTImageStoreManager.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-nullability-completeness"; }; }; + 85D8FF0999ED1A4B628CA0510A963D29 /* RCTSwitchManager.m in Sources */ = {isa = PBXBuildFile; fileRef = E3C40AA0D1942BEF1AE8E0FD924CF9ED /* RCTSwitchManager.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 865599F5D0CC5A2BA4978A1174918AAC /* REACallFuncNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 171DF67C91C4D76C19344F0FD0D19F21 /* REACallFuncNode.m */; }; + 86A8724216D36740EE84EFA4979763B5 /* RCTNativeModule.mm in Sources */ = {isa = PBXBuildFile; fileRef = 33CEC13461320939B3389F95734E77E9 /* RCTNativeModule.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 86E6F34B6474448BD0E1DE815E97B62D /* REAEventNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 386B4545D0EF8B75E665E0B13DB96EC5 /* REAEventNode.m */; }; + 86FD3C1D726D141D8DE6AC7A179046B6 /* BridgeJSCallInvoker.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0BA6E866338D361320D7E854E6215949 /* BridgeJSCallInvoker.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 86FE03AF6E43FAE6ADE17733CD214FD4 /* UIColorExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FF0045600311F98130B1447FD07520F /* UIColorExtension.swift */; }; + 8712480C2EE33616CC9284F45BD56E92 /* CompatibleAnimationView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 555AB1FC7B7F776D8228E11F8010160F /* CompatibleAnimationView.swift */; }; + 87A9149D62F46D9F516046CC62835ABD /* REAValueNode.h in Headers */ = {isa = PBXBuildFile; fileRef = F98A1A5429C0BB468270AEE8B7FFE0F9 /* REAValueNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 87D3B512F6D1C4DC8D19EAA3497968BD /* React-jsinspector-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 6B58E2A464F3DAD8869DEE62AD5CF268 /* React-jsinspector-dummy.m */; }; + 87E936207D955AF5264E58B685F0F55E /* Pods-iLink-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = E3BCF20E81A738D8FB9615885F47BE49 /* Pods-iLink-tvOS-dummy.m */; }; + 88097B715A634307BCCCA237EE98D136 /* RCTInspectorPackagerConnection.m in Sources */ = {isa = PBXBuildFile; fileRef = 9624F086266CB5E7A0ABC577C5AB9447 /* RCTInspectorPackagerConnection.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 886DBAA01E8ED950E2D1798EC6AAB503 /* RCTValueAnimatedNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 6785A6A2B5E500AE24B6000B8B18097E /* RCTValueAnimatedNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 8899329F80B7042826766AB10F9AF75B /* AIRWeakTimerReference.h in Headers */ = {isa = PBXBuildFile; fileRef = 5D82425EB76E407021CE359B8B67EE7E /* AIRWeakTimerReference.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 890C94ED224F1077D7A153B8300ED63C /* RNCameraManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 58E77F07BFEED1E5E3B7098943105766 /* RNCameraManager.m */; }; + 892B0513D7BBF1C240BF7BE35C9BBFAF /* RNSVGRenderable.h in Headers */ = {isa = PBXBuildFile; fileRef = E61AAE22FF9AFE02079FA4A4B2E4DF7B /* RNSVGRenderable.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 8951FD1043999581A1CDD142F194A986 /* TOCropToolbar.m in Sources */ = {isa = PBXBuildFile; fileRef = 133B7808900C93D13A7EB7774B2EFC10 /* TOCropToolbar.m */; }; + 89F47F97CD36FA4F8EA4AD51061BD659 /* RCTDecayAnimation.h in Headers */ = {isa = PBXBuildFile; fileRef = 27934C6A9D8FC9428845873CE3F59D1A /* RCTDecayAnimation.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 8A573CD2513767DE30403D3AFC28313F /* RCTScrollContentView.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D07976F0689C515E1F7FDFA27EE78C6 /* RCTScrollContentView.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 8A791A8485B77F34BE8E38F17527318A /* RCTFollyConvert.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9E51AAAE3544538FF835A83109B5A530 /* RCTFollyConvert.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 8AE1305E2724B85FAE8558FBEAA02E76 /* RNSVGGroupManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 66C2D602D6DDB84D99C4C8F1B146C048 /* RNSVGGroupManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 8B394DCEF1850AE118C2C2C2371EAE3C /* ShapeNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF900E676BF75A64B70B8D144D61EBBA /* ShapeNode.swift */; }; + 8B5FAD758214D6B87734C233D62A071B /* RCTBundleURLProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = C3B98241E7065ED31877575D7B640560 /* RCTBundleURLProvider.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 8B90B2FF0DB0345B5FAC294D97832928 /* RCTEventAnimation.m in Sources */ = {isa = PBXBuildFile; fileRef = BDC2EF16D74838BED8B5B6EA4B2F3AF1 /* RCTEventAnimation.m */; }; + 8BC38BBF41AC8595DC35932341AB624F /* zh-Hans.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 56B4DE27434DC30C81AB4DAABFD1F89A /* zh-Hans.lproj */; }; + 8BCD613C01DC8D0F0C1629D5CBD25CD0 /* RNSVGPainter.h in Headers */ = {isa = PBXBuildFile; fileRef = 9C74BAC02E8F42F13171CB5EBB0A6B4C /* RNSVGPainter.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 8BF34E2C6C23CCD3A9B7AE54E08616F7 /* RCTSurfaceSizeMeasureMode.mm in Sources */ = {isa = PBXBuildFile; fileRef = 109BC27B744665E9D217F62ADC66D1C0 /* RCTSurfaceSizeMeasureMode.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 8C237D0D5F205A1125DF514476172B43 /* list_notifier.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FFD6B7E4AF63FB9B2A211EA7D221CB55 /* list_notifier.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + 8C2D2CE29084FB323E7FF0875458D888 /* GCDWebServerResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 5611342CA971ABAACBC3D69EF55FA184 /* GCDWebServerResponse.m */; }; + 8C4BE58C7E4081FBDCE00BB59CDD45C8 /* RNPinchHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 34C5C27C106306F93F86190484AE3233 /* RNPinchHandler.m */; }; + 8C73A934CC78461BAFBB2E810CE1B7E9 /* REAClockNodes.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CD700CC8B8998EF3FFDE5522CFC7E55 /* REAClockNodes.m */; }; + 8C8A7F28FFD94D6CB7D0F8127AFE2DEB /* AIRWeakMapReference.h in Headers */ = {isa = PBXBuildFile; fileRef = A905AC13DE6E2E381E5FE345BC6E6389 /* AIRWeakMapReference.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 8CAD49B3520224E8361041CB5258A29B /* RCTInputAccessoryView.m in Sources */ = {isa = PBXBuildFile; fileRef = 777E4E8BA27DC30A222D9DC89987909F /* RCTInputAccessoryView.m */; }; + 8CAF937F8255B20EFBB585A9AF9F9E2E /* YGStyle.h in Headers */ = {isa = PBXBuildFile; fileRef = 55371BBADF13052AF9F3FCF822BEDAF1 /* YGStyle.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 8CDE1938CB549B9AF8CE6C08C193E456 /* TurboModuleBinding.h in Headers */ = {isa = PBXBuildFile; fileRef = 36779F46682A5CAE36B4DB8C06165440 /* TurboModuleBinding.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 8D25D63B2953FBE0C4B1CC3682F02959 /* RCTBridge+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 0B59B6976A11C40058D58B1B8E56B25D /* RCTBridge+Private.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 8D35A5BD10075C54D274DBD5A01F04B8 /* RCTFont.mm in Sources */ = {isa = PBXBuildFile; fileRef = 77594105A1B54F3D88111DA3EF451536 /* RCTFont.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 8D67DA7CFE4F8149B979D339B71508AA /* stl_logging.h in Headers */ = {isa = PBXBuildFile; fileRef = 9BA09C69ED5FCBA261D92B6C35DF9217 /* stl_logging.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 8D68774FBDE6495205492A9BFF4F31B8 /* RNSVGPathMeasure.m in Sources */ = {isa = PBXBuildFile; fileRef = 7E8ECF311DD9E830F8D30998490AEF7D /* RNSVGPathMeasure.m */; }; + 8D7099D328BA23A3A701725B4D08A574 /* RCTDeviceInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = BA035756441DF819F5E5FEDD250A918A /* RCTDeviceInfo.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 8E5A014FD670E30AE9E882F928FB81EA /* UIView+React.m in Sources */ = {isa = PBXBuildFile; fileRef = F26B30C94D7FB7F86B39B826FF754F70 /* UIView+React.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 8E778A8AFD7A72EC1E9678DA3B22C024 /* RNDateTimePicker.h in Headers */ = {isa = PBXBuildFile; fileRef = C22CB7E9B12EC73BF182F5505909A8AE /* RNDateTimePicker.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 8E780217C9AE791FDA54CC527981D615 /* RCTConvertHelpers.h in Headers */ = {isa = PBXBuildFile; fileRef = 160649055C6C88892758465CD8ED9E33 /* RCTConvertHelpers.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 8EC6C91A06CCD5A3257688D50EC11B22 /* RNSensorOrientationChecker.h in Headers */ = {isa = PBXBuildFile; fileRef = 436A6780127E2329D386C699FCDFD117 /* RNSensorOrientationChecker.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 8EC9D2790C3725CBD6C1A03024C3E17F /* RCTBackedTextInputDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 799BE66953821B7B47F1A3F98B6F6E69 /* RCTBackedTextInputDelegate.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 8F02369B833FCA08B6D846B3647576D4 /* RCTImageBlurUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C9C88EC3F50EAD3978323E775FE295F /* RCTImageBlurUtils.m */; }; + 8F0677ABF0CD86A559345EC9578D1EC2 /* TOCropViewConstants.h in Headers */ = {isa = PBXBuildFile; fileRef = 16BA33BF94AC01E657555FEEFC1452AC /* TOCropViewConstants.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 8F936C5DC9D12A75C45CB5ACB35FCEFB /* REAJSCallNode.m in Sources */ = {isa = PBXBuildFile; fileRef = A8DED8A166BC67EB39B4517DA8C16E44 /* REAJSCallNode.m */; }; + 8FA10329151EE2E5C2F980F24DD4C88B /* RCTTextSelection.h in Headers */ = {isa = PBXBuildFile; fileRef = 193F00C2271D5C39B449D3EE685FD716 /* RCTTextSelection.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 8FF1CC55293C7189A57AC18B470111F7 /* RNSVGText.h in Headers */ = {isa = PBXBuildFile; fileRef = 0523E4E2CD9F4685C272D2EE98CC5654 /* RNSVGText.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 9004BD3B2B71C20129D136519D9E375D /* QBVideoIconView.m in Sources */ = {isa = PBXBuildFile; fileRef = B22FED44B8A7C6125A344561053B8C8B /* QBVideoIconView.m */; }; + 9038BCDFA4CFFD7FC7D61FB397EB48F8 /* ro.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 0EE21BBBC993BD3DA708B0F040F7CE31 /* ro.lproj */; }; + 90E1538C02B2F44E1B9C1992353A3723 /* REATransition.m in Sources */ = {isa = PBXBuildFile; fileRef = 27849AFEAE651DD522B3155110082A8F /* REATransition.m */; }; + 9102BEAD93DA8FCF217F6E9FE7A5A225 /* AIRMapWMSTileManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 7E760D75233E5E1A98897E2E22DC6332 /* AIRMapWMSTileManager.m */; }; + 91173799F24BDD4D33BAEABFEDA59AA4 /* RNSVGMaskManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 45B8F0FD359BDE2CF9A889EA9F88C040 /* RNSVGMaskManager.m */; }; + 91493AC02C8953D8408872CBB6BA439B /* RNSVGFontData.m in Sources */ = {isa = PBXBuildFile; fileRef = A4BD490F9D34DC995001BB739A9FE59A /* RNSVGFontData.m */; }; + 91A1D7C1E24AF7EF18857A82B0FB133E /* RCTComponentData.m in Sources */ = {isa = PBXBuildFile; fileRef = 30222109552138FDC514022977EC98CB /* RCTComponentData.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 91E3A3FD06CC4A326C0402572E41B2C6 /* AIRMapManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 3435CE09B932A5BE1AF65D4FE5C7BA41 /* AIRMapManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 91E6829A304C3CA030B280767804FE38 /* AnimationViewManagerModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = A95A90A2786E03A4C33366DA73DC7814 /* AnimationViewManagerModule.swift */; }; + 920EF01E956E1D17AC7DBF68433AC4D3 /* GCDWebServerConnection.h in Headers */ = {isa = PBXBuildFile; fileRef = 34A041CB6EE4408C5BB1981F4936F24C /* GCDWebServerConnection.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 921423EFA48A32993AF3FE71A914F76B /* RCTRefreshControlManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 9B18C6D9AD699C96D548EEB1EF5B04FE /* RCTRefreshControlManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 921BFD5A503ABC46B8A39E239033ACFE /* FBReactNativeSpec.h in Headers */ = {isa = PBXBuildFile; fileRef = FEADEB124C9BC1E8A768E05FA68CB1BB /* FBReactNativeSpec.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 923290319C3F0C301063EAF1F3FA91AB /* RNGestureHandlerModule.m in Sources */ = {isa = PBXBuildFile; fileRef = B2B14C565101DDA9453A52F2D681CD73 /* RNGestureHandlerModule.m */; }; + 928EB8BF9913A8BBDBB8B1124BC7CBDF /* RCTI18nUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 5C9366E4CFD03F47FF9A4BD7E81AA91E /* RCTI18nUtil.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 9296976E6067CCC8F6D57DAD1A12B822 /* RCTPropsAnimatedNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 877DA42BD814A2D3AAAC41A7206807E5 /* RCTPropsAnimatedNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 92A8544B73B2FA29B9CFDE72C5FDDBB6 /* strtod.h in Headers */ = {isa = PBXBuildFile; fileRef = FDB08DA22A0C0098DCEEA60EEA3CBEBB /* strtod.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 92B2EE7961EAC52DEF32F6352FD3F72F /* AssetLibrary.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0901ACE7F44E77470508415DDF0D74C /* AssetLibrary.swift */; }; + 92C976C2F47C8FBD7D0CDA961F8B0395 /* RCTShadowView.m in Sources */ = {isa = PBXBuildFile; fileRef = 4B45AA363D060710B4E59DEA210DECAB /* RCTShadowView.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 92DADA13A7A1796EDD240F3EF2EEEEB3 /* RNCustomWhiteBalanceSettings.h in Headers */ = {isa = PBXBuildFile; fileRef = 3414B0959F4A5C91C1A6EB39BB40B125 /* RNCustomWhiteBalanceSettings.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 931EF53BB96D78B9B675DDEA6C5E5F6C /* RCTInputAccessoryShadowView.h in Headers */ = {isa = PBXBuildFile; fileRef = 23713E88B82CFF58B67D9ED32A448307 /* RCTInputAccessoryShadowView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 932D44DBC9472E05CC1D10491B5F2A04 /* RCTAnimationType.h in Headers */ = {isa = PBXBuildFile; fileRef = F2111F185F583904E97FE6A6493045F0 /* RCTAnimationType.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 934A7C7A506AB16403C0BA6FC3562961 /* Repeater.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78E0D082135EE39C1A6DA81DE350993F /* Repeater.swift */; }; + 934C513ABFA8826CB7AEE58E9C2C8918 /* RCTConvert+CoreLocation.h in Headers */ = {isa = PBXBuildFile; fileRef = 5A5314584E423191E13DA4F9A66837E4 /* RCTConvert+CoreLocation.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 935BDEB628EB30F223799A71E64306ED /* RCTProfileTrampoline-arm.S in Sources */ = {isa = PBXBuildFile; fileRef = 11EC3A8C350EEA3C24A10099139F29A9 /* RCTProfileTrampoline-arm.S */; }; + 936F1E3F1D45E84C847004CBC506690B /* RCTErrorCustomizer.h in Headers */ = {isa = PBXBuildFile; fileRef = CF1B1BDD95F2D4A43D7C188646088601 /* RCTErrorCustomizer.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 93DE174E9D4A740A927C3AE294B34CCB /* UIView+React.h in Headers */ = {isa = PBXBuildFile; fileRef = D54687450E9AD391632C0A71A00C7566 /* UIView+React.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 9432CD119107A1812A50DD4F58C7B689 /* RCTAnimatedImage.m in Sources */ = {isa = PBXBuildFile; fileRef = 9B87E959CBFDFF8AA7561A43A3E6BA69 /* RCTAnimatedImage.m */; }; + 9439FA7BC23C9DBC6406B5BEF295508A /* RCTRootShadowView.m in Sources */ = {isa = PBXBuildFile; fileRef = CC8570DEFF6EC626FD32B962BB296FC6 /* RCTRootShadowView.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 943A7CB133EE66EB1E030FB2D48D5284 /* RCTModalManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 58F6B711E855264BB59EF3F661FFCE4A /* RCTModalManager.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 94FA7CFBE186ACBEDA8755A070714410 /* RCTImageUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = 576FB081AAB30D745257E99E80AD2D6B /* RCTImageUtils.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 95096D6E6102AE0D84C7B7769BBF5365 /* AIRMapCalloutManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 05DE1B8F8DBC75DFECDEDACC0B473ED7 /* AIRMapCalloutManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 9552D1312FB67283888213F0A7679AAE /* ColdClass.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EEAEB087DB360E8220231516E343B63E /* ColdClass.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -DFOLLY_HAVE_PTHREAD=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 955E814EBEF92F2FD8604673EE65D640 /* StringExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = E65926243EA5F4EACDE42FA59B887387 /* StringExtensions.swift */; }; + 95A0F88AB8A541BB726C77184356394C /* RNSVGPainterBrush.m in Sources */ = {isa = PBXBuildFile; fileRef = C4D09E92A1B0E746F4ADA34D8F2122B6 /* RNSVGPainterBrush.m */; }; + 95C5B0F5BBDDFB2119327C28FF57D6C2 /* TOCropViewController-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 2C0575A7DD26AE71EC9EC7E6A9A0B8E6 /* TOCropViewController-dummy.m */; }; + 95E22437D5245074F51880D5834EB5B5 /* PreCompLayerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 49AE4A66A6F731C49E1ECBCF3612A110 /* PreCompLayerModel.swift */; }; + 9648696D6AE8B4E82B8D19CD037620C2 /* GradientFill.swift in Sources */ = {isa = PBXBuildFile; fileRef = B10B43CCAE8398D4C325DFAF264A775E /* GradientFill.swift */; }; + 96522B2E802E4245FFA70EEFC2ADAE8B /* RCTDeviceInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 3BA9C52C962BA4255AA67B151550DBA5 /* RCTDeviceInfo.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 967D695AAF4CE4F605C6E63184D8DE36 /* RNSVGClipPathManager.h in Headers */ = {isa = PBXBuildFile; fileRef = C75E39FBCF49BDB3196FA9FACEB0ABD7 /* RNSVGClipPathManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 96F775E6710177DF1FCFAFED764BFEFE /* RNCamera.h in Headers */ = {isa = PBXBuildFile; fileRef = 5DC0DE6FD03A241AD6E29669772E00C9 /* RNCamera.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 974ECB344BCB4C13AAC5991DF4EB14AB /* RCTMultilineTextInputView.m in Sources */ = {isa = PBXBuildFile; fileRef = F635DD432755A9D251A29C83E3EA6A90 /* RCTMultilineTextInputView.m */; }; + 9757EA041F1457A157223CAC8ABE2F0C /* AnimationCacheProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = C925D5E46149A2782FD8DF5999415942 /* AnimationCacheProvider.swift */; }; + 976B3154FB88B4B82F134118510AA518 /* RCTActivityIndicatorView.h in Headers */ = {isa = PBXBuildFile; fileRef = 2E7BFEE37278B96F4A22B5DE2FAF56A4 /* RCTActivityIndicatorView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 9796F53F27559D66FC385362F5719B9C /* AIRMapPolygon.m in Sources */ = {isa = PBXBuildFile; fileRef = 395CF7F9BDF4FE9301B49D3875D13431 /* AIRMapPolygon.m */; }; + 97DCF68E94787AFD3552FE2FDBE977AD /* AnyValueContainer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4D69B51101A0AA616493B82136BC579A /* AnyValueContainer.swift */; }; + 981A5FE57E3F987DD83A287D4DB16DA1 /* Mask.swift in Sources */ = {isa = PBXBuildFile; fileRef = 282D0896D849B2F9498447D92C904290 /* Mask.swift */; }; + 985033FE0EBCF2187E9C7528DBA76B25 /* REAJSCallNode.h in Headers */ = {isa = PBXBuildFile; fileRef = E917F464C79C1657727D5AEAE90B1233 /* REAJSCallNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 986A0A42CBBBAF7FB00CC27AAB59FF4F /* ShapeItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73E4D5D8AB85BB543BA80AF91A4A54E4 /* ShapeItem.swift */; }; + 9888FB7AB2D8DC60243C2957FE6AABBD /* RCTDataRequestHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 08517D271BA44FE29820B605688EFB20 /* RCTDataRequestHandler.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 98FC135B735260B522D037A68E7A4588 /* React-Core-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CBD1DA515C93C165CD022F84B24780B /* React-Core-dummy.m */; }; + 994C4EBB845FCEC0DA3E06E6B538C005 /* RCTVibration.h in Headers */ = {isa = PBXBuildFile; fileRef = 84003D645FE8F64E26D2D0A721FFAF09 /* RCTVibration.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 99911CA928D5A5F448C79EF086D7E6BB /* RCTProfileTrampoline-arm64.S in Sources */ = {isa = PBXBuildFile; fileRef = CE0BB4D68AB741CC9499F46DEE2EA3C6 /* RCTProfileTrampoline-arm64.S */; }; + 999FE4D5347DA95962A1F13ACB4B013F /* RCTJSStackFrame.h in Headers */ = {isa = PBXBuildFile; fileRef = B2531AD96ACBAC16FC3E56A45949C2B6 /* RCTJSStackFrame.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 9A3BD41DF5E352B32B8371E9536C42F6 /* RCTTextTransform.h in Headers */ = {isa = PBXBuildFile; fileRef = 37EE198D102E170EDB1773A37BC251D3 /* RCTTextTransform.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 9A48724301C8934B166BA0C9F193625C /* RCTNetworking.mm in Sources */ = {isa = PBXBuildFile; fileRef = B3595EDD670141B284301D11EFE3D12A /* RCTNetworking.mm */; }; + 9AD63B91F8CA887EBEEC87C715E78F2A /* REAFunctionNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 43C059CDD48E975B96F9EF4406B70170 /* REAFunctionNode.m */; }; + 9AFD69C93548E0C428A2DA8F042D328D /* RNCAsyncStorage-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = ED5C83E6181A007B187B25C92472C442 /* RNCAsyncStorage-dummy.m */; }; + 9B3B6EC1E41143F84D95EC67AB8C3463 /* Star.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1298C0BAB50611BC7B50E60676836F18 /* Star.swift */; }; + 9B3B9B4DCAF9E8668F9711C10F8D29B9 /* YGConfig.h in Headers */ = {isa = PBXBuildFile; fileRef = 8C31AF50E439F09B91CECD6906F04AA1 /* YGConfig.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 9B6C35B31A7A1C1AAC26C1561B411F8F /* RCTTextSelection.m in Sources */ = {isa = PBXBuildFile; fileRef = D0242D376CAAA7048E01DBFEA5AAD7AD /* RCTTextSelection.m */; }; + 9B98C1CDCCABD5193301F47BF74E2892 /* RNSVG-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 4D5D85AEDEAA354642E892FBC692C86E /* RNSVG-dummy.m */; }; + 9B99EE22118D3A8A6D0790965CD8754D /* RCTVirtualTextShadowView.h in Headers */ = {isa = PBXBuildFile; fileRef = 2078B3DDC90E5F15CFB05EF4FE84594A /* RCTVirtualTextShadowView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 9BC1B92BAAAC01061963515690049076 /* RealmAnalytics.mm in Sources */ = {isa = PBXBuildFile; fileRef = F196955D0FA6F2C9AEDA7A2661A61EF9 /* RealmAnalytics.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + 9BDBE7385DB0B6A0A269E930A2C556B9 /* TOCropViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B065EA255C0C0817DCE58B78D96E42B5 /* TOCropViewController.m */; }; + 9C167C24E0769C242C7DF1ECFC4B7846 /* RNSVGRenderableManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 70A0C701CAD12981CDFEE9BF1A431647 /* RNSVGRenderableManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 9C3E75AB9740C1FB007CD470B19AA8FC /* ar.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 9C215BBD797834FE89FA965C2AA370E1 /* ar.lproj */; }; + 9C61049BF73C44820F3E34F230D0DCF4 /* RCTValueAnimatedNode.m in Sources */ = {isa = PBXBuildFile; fileRef = F9401D30E808F2DC9A2FB673BFFAB18D /* RCTValueAnimatedNode.m */; }; + 9C6AA0D0FAE8E02BFD0A7A3672941430 /* RCTInterpolationAnimatedNode.m in Sources */ = {isa = PBXBuildFile; fileRef = E880CD653B9A0FF5FAD5E27B4B0B6298 /* RCTInterpolationAnimatedNode.m */; }; + 9CCB4E32C86B5F29292A363E0F3D1C0B /* QBVideoIndicatorView.m in Sources */ = {isa = PBXBuildFile; fileRef = BE094EB02887207BCE58BF8236CD09A2 /* QBVideoIndicatorView.m */; }; + 9D33463A8E2D9021E20D935B5906D0EB /* RCTScrollViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 11FD90EC41023E7F40A730B84FB23DDF /* RCTScrollViewManager.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 9D81A7E4E01F3FE3FDBF803FD7488F5C /* JSIndexedRAMBundle.h in Headers */ = {isa = PBXBuildFile; fileRef = 474CD3530B055BEC55692F78548E3020 /* JSIndexedRAMBundle.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 9D926F95EF2614073A2BC29D25008CD1 /* RCTTextShadowView.h in Headers */ = {isa = PBXBuildFile; fileRef = 3B34CC179F01A3F16FD2407C5C66FFA0 /* RCTTextShadowView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 9DC0A018251CD1CA6E4EA053219FCB6F /* RCTDatePickerManager.m in Sources */ = {isa = PBXBuildFile; fileRef = A50BB9DFDEDEA71E58BAFA31AB3C22A9 /* RCTDatePickerManager.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 9DD6CDCD209358FF9AEEFBB28B486587 /* RCTUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = 8B15C71A76FB5ED4790ECA1A2F862798 /* RCTUtils.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 9E08B812843A7E8705E704986996DD9B /* RAMBundleRegistry.h in Headers */ = {isa = PBXBuildFile; fileRef = EFB04FC9AA8EBB101ECAC8F795131780 /* RAMBundleRegistry.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 9E131099EF0744EB76C173A42972F885 /* RCTLayoutAnimationGroup.h in Headers */ = {isa = PBXBuildFile; fileRef = AC9BE8E1BEAB1E2BF70FD70639E05E50 /* RCTLayoutAnimationGroup.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 9E1391717ABCC4BC31E5F42189CB1493 /* StrokeNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AC8AD0CD20D22C28F53749FF6B0C0EE /* StrokeNode.swift */; }; + 9E25F13BFB9E09E84B93A1F969B13D26 /* RCTSurfaceStage.h in Headers */ = {isa = PBXBuildFile; fileRef = B521CA9B809E551DFC56EFB3F058429C /* RCTSurfaceStage.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 9E4667F0217BF48EE65158392E6F6F6F /* RCTSurfacePresenterStub.h in Headers */ = {isa = PBXBuildFile; fileRef = 97A431AF27CF89C8CFA874D9936B988A /* RCTSurfacePresenterStub.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 9E5635587146EECA49B2FF3091C04DDB /* RCTUIManagerUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = AF942609E6B18B27CCCD87AB8644C2F2 /* RCTUIManagerUtils.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 9E5B66A168A6F6F3D57FE508085A4376 /* RCTPicker.h in Headers */ = {isa = PBXBuildFile; fileRef = 92877EB86F0808A6C7DDE0F42A9BECBF /* RCTPicker.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 9E66C9776D465D0124FDE14D88DD0D80 /* RCTMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = E0F7A7F11D70FC6AB9B96B22175201B1 /* RCTMacros.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 9EEA27AA9F2251CA79DCC4F0F367EA57 /* json_pointer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4B9B99B1121A87ECBACFA339D646006A /* json_pointer.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -DFOLLY_HAVE_PTHREAD=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + 9F2184CFE79A91A94EE6388318846C3B /* RCTVersion.h in Headers */ = {isa = PBXBuildFile; fileRef = 20AE29F89002DC5F94E57F8C25AE46A7 /* RCTVersion.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 9F4E5B6351800DBBB154A2383924EF44 /* tr.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 4670DA52AB56B4468D2026E34E6248D2 /* tr.lproj */; }; + 9F89C488B0FD059D234A89E696D412DA /* RNSVGTextManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 3AAB3A63CFD18F68903365458E42C018 /* RNSVGTextManager.m */; }; + 9F8C5892511F5298A573799516671140 /* RCTImageView.m in Sources */ = {isa = PBXBuildFile; fileRef = 4D4D966CB0B5DBF5A95CD5B0ACBB2816 /* RCTImageView.m */; }; + 9FAF36A945E2C379E64CB31FA571B978 /* RCTManagedPointer.h in Headers */ = {isa = PBXBuildFile; fileRef = A3F8EFBC4CD3DC5068E712F165F1DCF3 /* RCTManagedPointer.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 9FD1B51ABF004BB38C73915504371949 /* RCTSegmentedControlManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 263DBA186B69EE3D828C86B276E83B44 /* RCTSegmentedControlManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 9FD435B36785D48F7314E51F39007208 /* RCTOneSignalEventEmitter.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C030E675011A8F0E7212401F9A99C96 /* RCTOneSignalEventEmitter.m */; }; + 9FDC68E3583F49DADC1D5D902B470570 /* Yoga-internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 1C010F75D55C114421EC247CFC6996E5 /* Yoga-internal.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 9FF183110115C937DB51213A4DA3772F /* RCTMaskedView.h in Headers */ = {isa = PBXBuildFile; fileRef = 3E5B2DC3B7558590A5D0D0C6597860DF /* RCTMaskedView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + A024865E7F29E9710BE5090ABEFDD7F5 /* RCTMultipartStreamReader.h in Headers */ = {isa = PBXBuildFile; fileRef = 6FDB54E2B2E7DFFA358E0A11CD2931DF /* RCTMultipartStreamReader.h */; settings = {ATTRIBUTES = (Project, ); }; }; + A0426F2F157FFC30BEA1952DF1914233 /* RCTCxxConvert.h in Headers */ = {isa = PBXBuildFile; fileRef = 7A055495913CCF036F8B4B22D49086C2 /* RCTCxxConvert.h */; settings = {ATTRIBUTES = (Project, ); }; }; + A045267693EC6A8CC3C20C9915D363D8 /* RCTMultilineTextInputView.h in Headers */ = {isa = PBXBuildFile; fileRef = D8DC60D74757EEAF2DA2FE35CE69F706 /* RCTMultilineTextInputView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + A0A7DA6ED65E4FE0568C5A0124AC624C /* RCTFrameUpdate.h in Headers */ = {isa = PBXBuildFile; fileRef = 34155521E2D3E67A96AE666085D700E3 /* RCTFrameUpdate.h */; settings = {ATTRIBUTES = (Project, ); }; }; + A104B4F5E0BB3A749A7756144DC5BB36 /* RNSVGNode.m in Sources */ = {isa = PBXBuildFile; fileRef = E41C736103AA19327C5952D1899C019A /* RNSVGNode.m */; }; + A189673CE87F612ED3488113F9DAFE98 /* ieee.h in Headers */ = {isa = PBXBuildFile; fileRef = F016DDB0EDEE8B02A5D2A9B23D744763 /* ieee.h */; settings = {ATTRIBUTES = (Project, ); }; }; + A1D22EA3A340980E9A0FB5FA8ABF7397 /* AIRMapLocalTile.m in Sources */ = {isa = PBXBuildFile; fileRef = 045A27D42D1435E5379B46EE9ADB5F39 /* AIRMapLocalTile.m */; }; + A1D398DB5FA830D3DAD59506FBFA44EB /* keychain_helper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 348CA285F1CD38B21E53882FAF148561 /* keychain_helper.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + A1DB03CEB3C4AE3E9C151975F485EDA8 /* RNForceTouchHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = E13DC4BEC01E20762C48AD4E2E9050B7 /* RNForceTouchHandler.m */; }; + A1FE8BE9FD30378BC5E33769F2B8995F /* RCTSurfaceRootShadowView.h in Headers */ = {isa = PBXBuildFile; fileRef = D26938C4DD0927567F793D4D10D7E769 /* RCTSurfaceRootShadowView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + A24AAD5B7F97BBA288A9F4C22BB5710C /* RCTFileRequestHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 99B838E99765EA9C7850050DF245A4BA /* RCTFileRequestHandler.h */; settings = {ATTRIBUTES = (Project, ); }; }; + A271C90400EB2C9F1039C14A456AFD33 /* RCTBlobCollector.mm in Sources */ = {isa = PBXBuildFile; fileRef = 611BB79A62C1805548CF4B9EBF9B396D /* RCTBlobCollector.mm */; }; + A2788B64CD61F35248DCE0B2BCB16ACA /* RCTCxxUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = E017F8E739E56EE1AD039BCC5E58883D /* RCTCxxUtils.h */; settings = {ATTRIBUTES = (Project, ); }; }; + A2DC6CF4E2EC5409AA37B8F083797CCE /* GCDWebServerFileResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 1411A92D6C277246D4A9C57C92F0F863 /* GCDWebServerFileResponse.m */; }; + A3053B62C9256849B0ACCB21B6AE5D4C /* RCTSurfaceHostingProxyRootView.mm in Sources */ = {isa = PBXBuildFile; fileRef = CD163ACC3DAFA2B21CE65F2C21350020 /* RCTSurfaceHostingProxyRootView.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + A39D06628A4A88BA65E196644015DA7E /* RNSVGNode.h in Headers */ = {isa = PBXBuildFile; fileRef = EE6797E848B43E6F58CB4F0B719BB77E /* RNSVGNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + A3A233826BDB450AC1B0A88DE77F9989 /* RCTEventDispatcher.h in Headers */ = {isa = PBXBuildFile; fileRef = 51A4BB6D0826DB1C5C3F09A53954033F /* RCTEventDispatcher.h */; settings = {ATTRIBUTES = (Project, ); }; }; + A3BEB0FCC675DA02F6B33263DBAC0D38 /* es.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 5F793525BB4973921E4991EA90A46B0B /* es.lproj */; }; + A3EFFB9ED9C32CB5F8EEFA08B5A803BD /* RCTLog.mm in Sources */ = {isa = PBXBuildFile; fileRef = 811846AB54DA780565DAA07FB083EE21 /* RCTLog.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + A3FFFA4259E716DCD5EA57B1F8392C97 /* list.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 664D2E3241F36EF74825F97596BFC24B /* list.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + A403BC5B00D9C00234E1AFF08D6CF313 /* RCTTextViewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 519B4D215722F46CF90B7FC0D6FB0C8C /* RCTTextViewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + A40459D2F5B0EC6C955953BB54BDF79F /* TurboModule.h in Headers */ = {isa = PBXBuildFile; fileRef = FB9B47C1972AA062AE52B78BFF8C0E57 /* TurboModule.h */; settings = {ATTRIBUTES = (Project, ); }; }; + A43666DEFB06643449ADF9E11A562E81 /* RCTCxxUtils.mm in Sources */ = {isa = PBXBuildFile; fileRef = 68C5C39650734974DF7D21E2C3760F7A /* RCTCxxUtils.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + A44E20F7A997762A1A7B797021A852A2 /* RNSVGLine.h in Headers */ = {isa = PBXBuildFile; fileRef = 488C8D5FFF48CDD423E94F8411F026CE /* RNSVGLine.h */; settings = {ATTRIBUTES = (Project, ); }; }; + A450D74956A8669097B8A089222627A4 /* RCTProfile.h in Headers */ = {isa = PBXBuildFile; fileRef = DDC0A34F82C1C937D80AE4A6262D9A58 /* RCTProfile.h */; settings = {ATTRIBUTES = (Project, ); }; }; + A4C304B823327D620F1CBAAAEAE5CB49 /* ScopeGuard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CE980CD3C9B31E945115F2A1B092F928 /* ScopeGuard.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -DFOLLY_HAVE_PTHREAD=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + A4DF975C84D1D1808D2C76F75E2E7FDE /* AnimationPublic.swift in Sources */ = {isa = PBXBuildFile; fileRef = 99394EB1887025095CB3D6B26980FA4A /* AnimationPublic.swift */; }; + A50C3330711B693F57C107974EBEA8C3 /* JSCRuntime.h in Headers */ = {isa = PBXBuildFile; fileRef = 40CB294986FAB2027FDFC66CDE375EA3 /* JSCRuntime.h */; settings = {ATTRIBUTES = (Project, ); }; }; + A5A2FF74BC3E5B9D4BCC04653D2985E7 /* REAPropsNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 051C3565E3E172142562602851207A37 /* REAPropsNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + A5ADF6F6AAAFB83A70BC345E2D66F396 /* RenderNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74119D6B6491F2CB24E52E8CAEFE08FD /* RenderNode.swift */; }; + A6413B3069E16125C812047AAA7D9BDC /* FillRenderer.swift in Sources */ = {isa = PBXBuildFile; fileRef = EB305179167B31870EDDB1ADA4613306 /* FillRenderer.swift */; }; + A6C69420A901AE2B73CAF3A88C3C501C /* sync_user.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 700E1CF0FF28EEA4D256679D2C52D1D3 /* sync_user.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + A6DA28952EC55438601D6A05C4DEEAD2 /* RNSVGLine.m in Sources */ = {isa = PBXBuildFile; fileRef = 8D294DB8AD550AE01235954A0480C082 /* RNSVGLine.m */; }; + A6E5EEE860308A0594167C9797B28DFB /* QBAlbumCell.h in Headers */ = {isa = PBXBuildFile; fileRef = A545A6441D5DDB80E2AA86066739E6D5 /* QBAlbumCell.h */; settings = {ATTRIBUTES = (Project, ); }; }; + A6FFF704928BBA1071BFC10142B95FC9 /* AnimationFontProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = BA76875601EAE59FC95F1335014987AD /* AnimationFontProvider.swift */; }; + A704C47441862802089DB332C0196CE3 /* AIRWeakTimerReference.m in Sources */ = {isa = PBXBuildFile; fileRef = E05BD2824783B98D84FA428E4F4D30ED /* AIRWeakTimerReference.m */; }; + A72C1A9FDBAE6CE2ECBF73D2BDED4240 /* FilepathImageProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C31E658E3322437233A88D10B39E4AF /* FilepathImageProvider.swift */; }; + A768B5129A656B2BAB686A88EEDCA04C /* RCTSafeAreaShadowView.h in Headers */ = {isa = PBXBuildFile; fileRef = 2D1F2C53A5374BC5218418126F42149F /* RCTSafeAreaShadowView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + A7C966A1786A54CD9106F17B11EB4B4D /* RCTErrorInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 5BE734EEFD56585A0895EFC28D756917 /* RCTErrorInfo.h */; settings = {ATTRIBUTES = (Project, ); }; }; + A7F1E248488C5842FFA96C19289566AC /* JSINativeModules.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 84C5007898E442E6369D11180C69C866 /* JSINativeModules.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + A81FBA67C0FD7AF2522355CC59DA5650 /* RCTSafeAreaView.h in Headers */ = {isa = PBXBuildFile; fileRef = 0BD3CACF3E438F9A46D05C81FB52A8F4 /* RCTSafeAreaView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + A8687A28E00EF773BC77C5128BBF99AD /* RCTStatusBarManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 2F40DE8DCC02C18801ACA61C3E74FEE9 /* RCTStatusBarManager.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + A876C9A83B48A4A2F17019590AF6CE30 /* RCTSettingsManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 452EDA3644C6B00B38EA15C0D16E6FAE /* RCTSettingsManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + A87F0117063DFC52869F77DA474CF018 /* RCTOneSignalExtensionService.m in Sources */ = {isa = PBXBuildFile; fileRef = AC053697E5EECCD032F20E385C0F1495 /* RCTOneSignalExtensionService.m */; }; + A888AB9A147D572E01262314CF212A56 /* QBCheckmarkView.h in Headers */ = {isa = PBXBuildFile; fileRef = 729A046BD9A03AD5CCF635ECEFCE14AA /* QBCheckmarkView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + A8C591DCACDF069A6F070F6CB94A411D /* RCTSpringAnimation.m in Sources */ = {isa = PBXBuildFile; fileRef = 4917A772D55F70B7964C13395809088D /* RCTSpringAnimation.m */; }; + A8E563B3F4AF7DEBBBBD6A8388835240 /* Stroke.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0D3C62D9661AAAF59F8100CE5472772C /* Stroke.swift */; }; + A92D136E23914B18BDE9490C618768AF /* RCTDecayAnimation.m in Sources */ = {isa = PBXBuildFile; fileRef = D9B8ABBC2F41C5E652A521B7E152EE5D /* RCTDecayAnimation.m */; }; + A959A48E4855E4A6EC35A04BF9275A16 /* RCTBaseTextInputView.m in Sources */ = {isa = PBXBuildFile; fileRef = C5F8C5FA9631D2D07832052FA14CF585 /* RCTBaseTextInputView.m */; }; + A9711D428FCC607C07B6CE1383B7F0BA /* RCTBorderDrawing.h in Headers */ = {isa = PBXBuildFile; fileRef = D1FB35D55EBEC5E33C85E1601985A3A0 /* RCTBorderDrawing.h */; settings = {ATTRIBUTES = (Project, ); }; }; + A9A3B614F6FAD4D2878E63458CBB7014 /* fr.lproj in Resources */ = {isa = PBXBuildFile; fileRef = AFE9E75D341118DCA9168BE21A41702C /* fr.lproj */; }; + A9A919BC68783A5EB1A04BDEE8E55E00 /* RCTModalHostView.m in Sources */ = {isa = PBXBuildFile; fileRef = ABC977C2A37942FA5C8D6D9B2FC9DE52 /* RCTModalHostView.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + AA2BD24E9A3E879E51C0284943FAABB5 /* RCTAccessibilityManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 1763DFAFB8FF691D63AA0724F975B6EB /* RCTAccessibilityManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + AA622C1140AE18905F3AD5243F16E51A /* RCTCamera.h in Headers */ = {isa = PBXBuildFile; fileRef = 5DD77AEF383CA4469C6DF1D36343FAE9 /* RCTCamera.h */; settings = {ATTRIBUTES = (Project, ); }; }; + AA725C371ED2465746D713B036D28AF2 /* ImageCropPicker.m in Sources */ = {isa = PBXBuildFile; fileRef = 30B8814FC8711D3B24E181C9AF167993 /* ImageCropPicker.m */; }; + AA7A102CBCA7599AA7A68A50F1A0AFF3 /* RCTLinkingManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 090476E65205943F6F766C8008D7E5C0 /* RCTLinkingManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + AAD5747D04F295042B4A16EC090EEB87 /* REAStyleNode.m in Sources */ = {isa = PBXBuildFile; fileRef = C786875A16AA14256F8C1FACBB50A55F /* REAStyleNode.m */; }; + AAE9F66C879DF8C2F382527027A1B852 /* InspectorInterfaces.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 61064E10F2E4AAC0D7F37609428E8636 /* InspectorInterfaces.cpp */; }; + AAF5383F6EDB74329DC0681E8341B9EE /* RCTDevLoadingView.m in Sources */ = {isa = PBXBuildFile; fileRef = 0A11908C5E94F0F72F08DE8A0E0C2419 /* RCTDevLoadingView.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + AB05B7162E7B6240D5C124010B49ECA0 /* RNSVGMarkerManager.m in Sources */ = {isa = PBXBuildFile; fileRef = C0DA7EA1F08AD6F0245451C9B16A3DB8 /* RNSVGMarkerManager.m */; }; + AB18A726571872F0C8239763CC6D920A /* QBAlbumsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = CEE0DB3F014FB63718B4FEC2A65B6287 /* QBAlbumsViewController.m */; }; + AB54DE60C2CF7A43727A127608FD168F /* fa-IR.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 891E698250DF8ADE02D3935D5B702426 /* fa-IR.lproj */; }; + AB828B8E8E41A1D2EDC2523722635DE4 /* RNImageUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = DA3E3F38928CA35BC2374BEAB21BE759 /* RNImageUtils.m */; }; + AB8A7608B11C7F5BA543D7C5EA330137 /* partial_sync.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C967B312861117FD208430C086C448C2 /* partial_sync.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + AC1DF8F1AB6393B40320FCFAF0660595 /* DashPattern.swift in Sources */ = {isa = PBXBuildFile; fileRef = A72AE39973A0D90C2ED69393A02F7681 /* DashPattern.swift */; }; + AC8C22B33F76CB6D7666E536C83984C0 /* RCTRootViewInternal.h in Headers */ = {isa = PBXBuildFile; fileRef = EF0851190D1A8747EFE9F9C974FCB6AE /* RCTRootViewInternal.h */; settings = {ATTRIBUTES = (Project, ); }; }; + AC930DCBDDBF6DA9FA50AE33B3C1B794 /* RCTFPSGraph.h in Headers */ = {isa = PBXBuildFile; fileRef = CC908ECF70335364348851936C187C38 /* RCTFPSGraph.h */; settings = {ATTRIBUTES = (Project, ); }; }; + ACD515567E9E029235615CE730D72690 /* RCTAccessibilityManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 5E0F03068CFBB0137852A4DA585D961F /* RCTAccessibilityManager.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + AD6BA21B2B33D644D826C99AE6549F14 /* RCTInputAccessoryView.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B01716B69443F3AD541B09C78900323 /* RCTInputAccessoryView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + ADC0C8B8766E84744522223BE92625DB /* Format.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0B4B2EA5E748971201EF995B8F59E109 /* Format.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -DFOLLY_HAVE_PTHREAD=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + ADC268348F20A3C8EA37BF2DDDDD01F0 /* REATransitionValues.m in Sources */ = {isa = PBXBuildFile; fileRef = 219AAC6B8BE53800A7967D52496219C1 /* REATransitionValues.m */; }; + ADCA50B2FB704622F9056804BC882071 /* FBReactNativeSpec-generated.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7298EFB5C06E4F5EB067A6DAA2212C6E /* FBReactNativeSpec-generated.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-nullability-completeness"; }; }; + ADF52818051926210B3C839649509727 /* RCTBorderDrawing.m in Sources */ = {isa = PBXBuildFile; fileRef = 7F98C822E339030647685C5C8E6F4D2D /* RCTBorderDrawing.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + AE20A23BDC98DFE5201762613999AF30 /* GCDWebServer-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 669DD6944BE4CFC59BD466338F2003AE /* GCDWebServer-dummy.m */; }; + AEFEE82A438725A23863B53FCF5529D5 /* React-jsiexecutor-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = FC10FDA5887868E51549BB2085C1B015 /* React-jsiexecutor-dummy.m */; }; + AFA289BE593154B0333B599ED511C1E1 /* GCDWebServerPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = A3C2FAA1B916CF7926E4D3116E572A71 /* GCDWebServerPrivate.h */; settings = {ATTRIBUTES = (Project, ); }; }; + AFB7CB828840AAC61C40A74F6F8076F7 /* ReactNativePageView.m in Sources */ = {isa = PBXBuildFile; fileRef = 35F289C6F016B241D5C78632863B9D6E /* ReactNativePageView.m */; }; + AFD4ECD6CAB82158DDBB80E998D7B41F /* RCTVibration.m in Sources */ = {isa = PBXBuildFile; fileRef = 4B77E2A04EA9DCD7B2E08ED0D0F348F7 /* RCTVibration.m */; }; + AFE5A446BAE5432B9084DC260CC3D290 /* QBAssetCell.h in Headers */ = {isa = PBXBuildFile; fileRef = B3134094E6F13EAF417E67EE59D5DB22 /* QBAssetCell.h */; settings = {ATTRIBUTES = (Project, ); }; }; + AFE64EA826564EB542F1507FA1EFFC4A /* RCTBaseTextShadowView.h in Headers */ = {isa = PBXBuildFile; fileRef = 72C0FC03C6C07D68A5ED376DFDB22818 /* RCTBaseTextShadowView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + AFF581F3C4FDEE27AF419E2BD3E8546D /* RCTActivityIndicatorViewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = B58AE90701FC7D5E509DF74DFE2737AF /* RCTActivityIndicatorViewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B03B3C5D7A84FB9F93E8F1A399120586 /* ReactMarker.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EFD4D34DBD4C75DCC17359BBB6B280A9 /* ReactMarker.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + B046FFEE3521657F33CB8DC92B850FAF /* RNSVGPathMeasure.h in Headers */ = {isa = PBXBuildFile; fileRef = 472028112E062A667E47B6733750C70E /* RNSVGPathMeasure.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B0F5832DCA7955F8A9D72D4E9B48EAE5 /* RealmReact.mm in Sources */ = {isa = PBXBuildFile; fileRef = B33746402C9140645285F388C25FE893 /* RealmReact.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + B1000FE12DFF2F182CB5850429E26C37 /* TurboModuleUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = EF0D53316292046FF61B6AFD6BE92AFD /* TurboModuleUtils.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B12E8B1DF5A449E0090C037413D12493 /* RNGestureHandlerRegistry.h in Headers */ = {isa = PBXBuildFile; fileRef = 50A8E6A8B13812D35A6ADFE6AFCF0C67 /* RNGestureHandlerRegistry.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B15360D1B5A40810574EB6D224C3200B /* RCTWebSocketExecutor.h in Headers */ = {isa = PBXBuildFile; fileRef = 46A3B742B06DA2E86009D062FE1DA66F /* RCTWebSocketExecutor.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B1E6D4DCA3643B703EEE494E3350480B /* LRNAnimationViewManagerObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 767FF03826379CAB7439B6815303B21C /* LRNAnimationViewManagerObjC.m */; }; + B20A5DA744C58F612620DB2E21CF7B9E /* InspectorInterfaces.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EDD0F2045255702F8BF873E21C6CEF2 /* InspectorInterfaces.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B21AEBF65DE150C731648873A36F80E2 /* RCTEventEmitter.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C66BF8EEDE380BCDA371A63DFCCB008 /* RCTEventEmitter.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B2503A378FF86C6013ADCEEC07735489 /* AIRMapPolygonManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C843896CD833363548E2E4FFBC3097 /* AIRMapPolygonManager.m */; }; + B2DC4181DB7195CCAB4D6B804154902A /* pl.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 3D3545DA8AF8AE98B4581A647A57DDB1 /* pl.lproj */; }; + B305B568D1E81E4FC03FAA0B5F46C912 /* vi.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 67586DC09D87AF553F5DC16248565CCA /* vi.lproj */; }; + B3333C40BD269812521F8A924C8A616C /* RNSVGGroup.h in Headers */ = {isa = PBXBuildFile; fileRef = 0E6A1C602BA20874C82464DDD8C4089B /* RNSVGGroup.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B3401077BBDE463A91FF7BB8D1E209DB /* RCTCxxModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 6CCD27150B6E947B3F86FF3A6B8D7860 /* RCTCxxModule.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B3434674CAC611A3A5BA80C308AE00AF /* RCTDevSettings.h in Headers */ = {isa = PBXBuildFile; fileRef = 7C35FAB51E7C60BD7AA3D0C548EFF59C /* RCTDevSettings.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B347018447326A229B053590D339B4AF /* RNImageUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = 8646DD72FFF4B4828E42178033060E4C /* RNImageUtils.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B369C4FDC4809E059B6C1BEA7780E388 /* RNSVGContextBrush.m in Sources */ = {isa = PBXBuildFile; fileRef = 51B203790C0B536E63FFEC8EC0A221AC /* RNSVGContextBrush.m */; }; + B36A5B7958D233867097911B46B33C09 /* RCTMultilineTextInputViewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 99CE77110E69BF19B5D7317F4DDEBACE /* RCTMultilineTextInputViewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B3BD678B70D4507DDAE296412970370C /* TOActivityCroppedImageProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = A02AE013BE954855C804E7FFF27F4FD6 /* TOActivityCroppedImageProvider.m */; }; + B3BE8D7DC6AF57EDD4B8DEF8198D1909 /* React-cxxreact-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 38F9EF62938378C2ED2FBC2F6AD6B93F /* React-cxxreact-dummy.m */; }; + B3C49185DFF1A2BF03B5001DA0C9AFE8 /* RCTConvert+REATransition.m in Sources */ = {isa = PBXBuildFile; fileRef = A8675AD55B5CEF0DE78FF98E1E046B55 /* RCTConvert+REATransition.m */; }; + B3D3202489EDDA7326E158B1EF1F4EB2 /* react-native-maps-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 356127E2E247CEE1BBECC09AA00789DD /* react-native-maps-dummy.m */; }; + B3E8A96DA5A265BABF134C73C29A219F /* TextAnimatorNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 228DEB92F27E434CD4C6E4DA4F65E168 /* TextAnimatorNode.swift */; }; + B3FD1183F8A1D4A77708CA5F24CF03B4 /* RCTMultipartDataTask.h in Headers */ = {isa = PBXBuildFile; fileRef = 9CF8D9797C522F8D2943C6AD2B49B19F /* RCTMultipartDataTask.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B4529D8970426495DABF94126F6E481E /* AnimationViewInitializers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 91AE13523BE0397BE894B98BE34384D1 /* AnimationViewInitializers.swift */; }; + B479D79B87CECEA3A64FD843E3715096 /* RCTAnimatedNode.h in Headers */ = {isa = PBXBuildFile; fileRef = C4C467CA8E678BA21EB6FD805EE09EDA /* RCTAnimatedNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B48A6B39A17C81A38FD8A47CF036CB1F /* RNSVGPainter.m in Sources */ = {isa = PBXBuildFile; fileRef = 12ED3842C735B59A94777956559439C7 /* RNSVGPainter.m */; }; + B4A9D0A1A13DA07A7238C8840FF9C35E /* RNSVGMask.m in Sources */ = {isa = PBXBuildFile; fileRef = 7E0B040F78C938C7609D3A37EFBA4DBE /* RNSVGMask.m */; }; + B4AC0F99EC64FE7C7C71E1EE857C981D /* RNSVGRadialGradientManager.h in Headers */ = {isa = PBXBuildFile; fileRef = CB2181E72F68C228D51A8FFF6E7008D1 /* RNSVGRadialGradientManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B5111820E4A7D7F270FBD9675B09A2E6 /* demangle.cc in Sources */ = {isa = PBXBuildFile; fileRef = C4102E395404EDBFE1BC8A6B7A82CD0C /* demangle.cc */; settings = {COMPILER_FLAGS = "-Wno-shorten-64-to-32"; }; }; + B55C844345EED7441638369DFA68F921 /* AIRMapCalloutSubviewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A4A5AEF5BB1F4C39992D646023E3605 /* AIRMapCalloutSubviewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B56C06FFD7CD2DCF1FF408A704E7C165 /* RNSVGBezierElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 2CC0D1C46755440793E4C49A28568E2A /* RNSVGBezierElement.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B59AF5447AAFE7EDF5724B6EB608E9AD /* JSModulesUnbundle.h in Headers */ = {isa = PBXBuildFile; fileRef = 442DEF70E3861DF40A77C76F5ECFB9AF /* JSModulesUnbundle.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B5B701409A3AED999A57A98ECCCECF03 /* RCTCxxBridge.mm in Sources */ = {isa = PBXBuildFile; fileRef = 21F9181AB47F5E724D6ABD4A643641F1 /* RCTCxxBridge.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + B5CE8EA3F835FF2D23F52E3457D2EEFB /* AIRMapPolyline.m in Sources */ = {isa = PBXBuildFile; fileRef = 40E22DF7761512419447109573DCDC7C /* AIRMapPolyline.m */; }; + B5E58D1CE08EEBB487BAA7F99E329378 /* RCTPackagerClient.h in Headers */ = {isa = PBXBuildFile; fileRef = 214D5E22D36B6609192700BAD606614D /* RCTPackagerClient.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B61BB30FFA59526C5511D1D3D18FF373 /* RCTTextViewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 519B4D215722F46CF90B7FC0D6FB0C8C /* RCTTextViewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B63B147DAA05855AA3CD9917AEECDD16 /* AIRMapLocalTile.h in Headers */ = {isa = PBXBuildFile; fileRef = 2077C4AE475DC7C5DFF8B7A6A7B99779 /* AIRMapLocalTile.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B64B10AE8FE8BDC3154826579463E408 /* BarcodeDetectorManagerMlkit.m in Sources */ = {isa = PBXBuildFile; fileRef = E0D37428A076EE544DF62A70B9E9644B /* BarcodeDetectorManagerMlkit.m */; }; + B65959B74E672568844B38C5DE9A8FFF /* AIRMapPolygonManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 00DFAF11C9E8896FE31472633918C212 /* AIRMapPolygonManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B692D8358516FC7584EABAD87893E0A6 /* Instance.h in Headers */ = {isa = PBXBuildFile; fileRef = 77013FFDD7D10A1C58EFA2A192BEC4E7 /* Instance.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B7007DFAF182626ACB04F0D0A95136EE /* pt-BR.lproj in Resources */ = {isa = PBXBuildFile; fileRef = CF4B7538C57D76BB420E0F56BE7F3FC3 /* pt-BR.lproj */; }; + B70D1D1F8694ED0661809E77EE3AAE14 /* GCDWebServerMultiPartFormRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = A3EB9CAE0A57BF389E217CC64660B4C7 /* GCDWebServerMultiPartFormRequest.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B7263CB61476BD1EAEAF36AF1714C564 /* RCTConvert+RNSVG.m in Sources */ = {isa = PBXBuildFile; fileRef = 7CE664330A062DBEF0A6C8163F0E18C8 /* RCTConvert+RNSVG.m */; }; + B735A9AE52398199722A3391226FA941 /* RCTTurboModule.h in Headers */ = {isa = PBXBuildFile; fileRef = FE142790F5B802FBC61B0A8D5A91C88F /* RCTTurboModule.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B75E4531A1C620C508431292C46F01B0 /* React-RCTVibration-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A2948DDEEB16A5E6C7F772FFF6453F30 /* React-RCTVibration-dummy.m */; }; + B77589482CC829D2A516B279AE73EC81 /* AIRMapOverlay.h in Headers */ = {isa = PBXBuildFile; fileRef = 2B4BAB4C0ED94566063E5F0A9D85177C /* AIRMapOverlay.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B77EF92CBAFF7A78884C1D63FFB8010A /* GCDWebServer.h in Headers */ = {isa = PBXBuildFile; fileRef = EA35950E4513A7C2231B351F9CFE150C /* GCDWebServer.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B78105F077E3F29719D6A0D22665068E /* YGLayout.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B14FC72E18B258E04E7635FC57AF8A8B /* YGLayout.cpp */; settings = {COMPILER_FLAGS = "-fno-omit-frame-pointer -fexceptions -Wall -Werror -std=c++1y -fPIC -fno-objc-arc"; }; }; + B792981C30D4BC90279B815F0A23F681 /* AIRMapLocalTileManager.h in Headers */ = {isa = PBXBuildFile; fileRef = BC5557357861AE2D27C9629B6D9075B4 /* AIRMapLocalTileManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B7A172678CE7A39AFFCE921708EB0359 /* REAUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = F6087E3D32B88E643245FC210E5F5DEB /* REAUtils.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B7F73E1E60AAEFF30072E3878C79D660 /* RCTDiffClampAnimatedNode.m in Sources */ = {isa = PBXBuildFile; fileRef = CFBAFC1B1556E504869E6FBF2C82F6A1 /* RCTDiffClampAnimatedNode.m */; }; + B80E9F6CEF5627A0312AAEB00E46E0C3 /* TOCropOverlayView.h in Headers */ = {isa = PBXBuildFile; fileRef = 622D780B90D2B0616B45C93086D98749 /* TOCropOverlayView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B8202169010AAFDBD3CAE02C697655C8 /* RCTPickerManager.m in Sources */ = {isa = PBXBuildFile; fileRef = DACE422030B9C191C3A28B79BA223E42 /* RCTPickerManager.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + B82F9F3C658A428CA93D1BF7B296E0C1 /* JSIDynamic.h in Headers */ = {isa = PBXBuildFile; fileRef = F349B8A8824E8AB6307022DD29F00082 /* JSIDynamic.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B87F1099BAEA85614A508B62C13D381F /* GCDWebServerResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 18631F71E7D25E247F600E96666AC039 /* GCDWebServerResponse.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B8F801031224A0B57A9AC600AE584C0E /* REAConcatNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 4B7048C24D01788A2C650FB69683ED54 /* REAConcatNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B8FBE01C03B0BD8D1CF3D8096C2EDBEC /* REABlockNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 220027A97BB297B7CB50E94DE327D2A4 /* REABlockNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B911BC824C598D596824D47E4D24390D /* JSDeltaBundleClient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ABE3DCD30616189C0CC9FF6A76E510A4 /* JSDeltaBundleClient.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + B99ECD56ACEEFD1DFEFD873F7E9C10C2 /* placeholder.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5CD42AED9B585EAAF64D630194B2AB22 /* placeholder.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + B9A7BF2F9A7BA10679FB551834BFBFAE /* json.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 73706B8F905E51476FFB1E07B7441C84 /* json.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -DFOLLY_HAVE_PTHREAD=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + B9D4C1AA0D160D18DA7EF4EFE2465998 /* QBVideoIndicatorView.h in Headers */ = {isa = PBXBuildFile; fileRef = 1EBD3FD674B47FD3332A87F475EAB71A /* QBVideoIndicatorView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B9F63C3EFC0494148091EACE963FAAA0 /* network_reachability_observer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E15CB2D3371D1039E10A3CBFB5025824 /* network_reachability_observer.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + BA060EE34D400D33C55B8EF60FB3EE5D /* zh-Hans.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 3189ABD75043DE287DAD14A08FAAFCA6 /* zh-Hans.lproj */; }; + BA26D6016CA442A7E4F04E34CFBBF344 /* RNDateTimePickerManager.m in Sources */ = {isa = PBXBuildFile; fileRef = F6E6195BEF9483D9700729A2EB595E89 /* RNDateTimePickerManager.m */; }; + BA32EBBDE51B6703E5D015F2954CB179 /* RCTClipboard.h in Headers */ = {isa = PBXBuildFile; fileRef = 55A37BEB19936B2AC46E3FDBF0FE935C /* RCTClipboard.h */; settings = {ATTRIBUTES = (Project, ); }; }; + BA4A95FB35181A19DEB6898350C81954 /* Demangle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A7FFDE82F7EDFBD3DD268C8B69913062 /* Demangle.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -DFOLLY_HAVE_PTHREAD=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + BA6F974569196C7EF3AD35896901AC5B /* RNSVGDefs.h in Headers */ = {isa = PBXBuildFile; fileRef = B3082631D0525B8C14CBE2970A53F446 /* RNSVGDefs.h */; settings = {ATTRIBUTES = (Project, ); }; }; + BA89BD2A310F9142C8DB73B4B9592164 /* RNDeviceInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = BB4D947C9C26C6693EE7738FB0263049 /* RNDeviceInfo.m */; }; + BB4158233BF459088F29EB3D328187F8 /* RCTModuloAnimatedNode.m in Sources */ = {isa = PBXBuildFile; fileRef = BB70D6C8A07B01114162E018AC907B70 /* RCTModuloAnimatedNode.m */; }; + BB8C0872BB9A444A93196A4C4128345A /* lottie-react-native-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 2DCA38E6948A5AB13EED5D54C7D9B157 /* lottie-react-native-umbrella.h */; settings = {ATTRIBUTES = (Project, ); }; }; + BB90E6A4E393FAA2B2784EEC38CD50A2 /* RCTRootViewDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 1371332780688EE631D20BFA6F2B52DF /* RCTRootViewDelegate.h */; settings = {ATTRIBUTES = (Project, ); }; }; + BBC301431F68B5BDDB66DC37FA3470FF /* NodeProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE4D959CA6036B01B7CF41E3D01D5B40 /* NodeProperty.swift */; }; + BBEE44D97FEB08C3DD74B86DA4920CA9 /* RCTTurboModuleManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 91E33165857DD9575E2C0945639F53C1 /* RCTTurboModuleManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + BC194E12714CEA7F4A1061CB7FB79170 /* React-RCTNetwork-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 204510311091D8ED3419474226B6BC55 /* React-RCTNetwork-dummy.m */; }; + BC2B2A565593B123483527624459A056 /* RNLongPressHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = C00D10BC4E81D51D63BAF5FB241451A5 /* RNLongPressHandler.m */; }; + BC9EC6EC68B63137FDB39A6D5B8FF9E1 /* RCTTrackingAnimatedNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 9F35C74B0EB9D89D2FC1875E6FCCC3CE /* RCTTrackingAnimatedNode.m */; }; + BCA0B38CFB25299E3A9542B9A62595F3 /* RCTRawTextShadowView.h in Headers */ = {isa = PBXBuildFile; fileRef = E6F7D7BA7182C88340108185552D0BDC /* RCTRawTextShadowView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + BCB23973A0414F8F738C836B06D1CB27 /* RCTAutoInsetsProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = C914E3FE99FC1BCD3A037F00097CBD23 /* RCTAutoInsetsProtocol.h */; settings = {ATTRIBUTES = (Project, ); }; }; + BCB6AB6E9F134247AFE99BB796408BF6 /* RNCAsyncStorageDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C9BE9577AD83B0DDAD16AFD5583F7C8 /* RNCAsyncStorageDelegate.h */; settings = {ATTRIBUTES = (Project, ); }; }; + BCC489F2DE6AC985A755992D45A0AFBA /* React-RCTLinking-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D047804CA2A15A7CF1557F67FF1021E /* React-RCTLinking-dummy.m */; }; + BCE4446D186E2876A8CC117E8490E490 /* LongLivedObject.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F0EDA46F7F300683016A3EE9C48DB350 /* LongLivedObject.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + BCFAE5448AF872E1D9D547E5C90BD62C /* RCTProgressViewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 4F4A53FF74590788EE004AA12EFAB13B /* RCTProgressViewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + BD44B37E533783F5267B0BE6D8FE89E3 /* react-native-geolocation-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = CD9ED75EFF35808C586A1CF79D26DDA7 /* react-native-geolocation-dummy.m */; }; + BD82D08CC2D86E9F9637AC1C567F3796 /* RNGestureHandlerManager.m in Sources */ = {isa = PBXBuildFile; fileRef = A3A1E694E2A243CA97B835D52B23F14E /* RNGestureHandlerManager.m */; }; + BD93760D3BD2037B05E8B173CA07EB2C /* RNSVGPatternManager.m in Sources */ = {isa = PBXBuildFile; fileRef = A8E04B551FB541C7BC1181AC941653A4 /* RNSVGPatternManager.m */; }; + BDD44C2900D248C5FA5767BA16EADBD0 /* RNSVGImageManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 83A5C16AB9C0305BF9BB65C7C41AFEA0 /* RNSVGImageManager.m */; }; + BEA8C4409C5BDA778A13DA640542191B /* RCTBaseTextInputViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 929604C1A2EBCB21C462564D8E2B6E35 /* RCTBaseTextInputViewManager.m */; }; + BEC1052E6EC8BDA846B649FFD43F6826 /* cached-powers.h in Headers */ = {isa = PBXBuildFile; fileRef = 3384AA80005E2D3453B77FC4EAA584E8 /* cached-powers.h */; settings = {ATTRIBUTES = (Project, ); }; }; + BED565767D68A270FB52995F87F425AD /* ImageLayerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4811840663C67793CACE5A5E9D5DEA8D /* ImageLayerModel.swift */; }; + BEE88DB4CD0D79D749767D05DC2ECF0C /* GCDWebServerDataRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = C843DA4336C67DBD78DF5E61E35AE17B /* GCDWebServerDataRequest.m */; }; + BF476335242275950FABAFE573443DC5 /* EllipseNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 445961D2CC775D8E3C63BFA731D45E55 /* EllipseNode.swift */; }; + BFC7C4BA2092FA2E0BA65AD9564E9A57 /* TurboModuleUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 40722983C1C27D578C4B6EB9202921AB /* TurboModuleUtils.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + BFCE1C9B38037966DF389C24174136C8 /* JSExecutor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26172EA85216B7BD62FF1AAB34F5ADCF /* JSExecutor.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + C05702DB7845C9A250B693D3A09C4D0F /* weak_realm_notifier.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 46D8F9B9A62AF4E648AE2E67EBCD21C9 /* weak_realm_notifier.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + C067EB9CDC3F1F037AB1C9ADCB170E48 /* SajjadBlurOverlay-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 24DAA171EEAD9EE70B08BEE886075A9A /* SajjadBlurOverlay-dummy.m */; }; + C0A208336DA101C4B178510A2E2B989C /* RCTI18nUtil.h in Headers */ = {isa = PBXBuildFile; fileRef = 8555FAE6571F8FFBA6782E00699BCCBC /* RCTI18nUtil.h */; settings = {ATTRIBUTES = (Project, ); }; }; + C11DA2CF167A7C7518A95D8FA8A0C2A5 /* RCTBlobManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 45CDDDB6E374C0015BCF57C54C0DDE50 /* RCTBlobManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + C147F2CEC6EA6DC56312544EA2B61E25 /* RCTImageViewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = D05215927721B9706712B6BC4A383FE9 /* RCTImageViewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + C1503ED95C91A1F89D250F6BE55F9DCC /* RCTReconnectingWebSocket.h in Headers */ = {isa = PBXBuildFile; fileRef = B9F0F1A87228330476141364B59DDB0C /* RCTReconnectingWebSocket.h */; settings = {ATTRIBUTES = (Project, ); }; }; + C155C31E858F07D225EB0189A290D5B3 /* RCTObjcExecutor.h in Headers */ = {isa = PBXBuildFile; fileRef = 8916A76B106AFBE9CAD06632900579EF /* RCTObjcExecutor.h */; settings = {ATTRIBUTES = (Project, ); }; }; + C16DFC423B8D2D74310ED7EF6CA847AC /* RCTFrameUpdate.m in Sources */ = {isa = PBXBuildFile; fileRef = 4D7F856D61AF959C02BF56C52978AFC3 /* RCTFrameUpdate.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + C19452253247F2A143AF205392354C6C /* RCTSliderManager.h in Headers */ = {isa = PBXBuildFile; fileRef = BDF01303944F30CF7FC31EB4D29A7C7D /* RCTSliderManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + C1951CBE59FDF085F90A9A3DD60DEA23 /* GradientStrokeNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = BCF624EF1393AEE56C862E44CA14CF58 /* GradientStrokeNode.swift */; }; + C1DD829B8295944267C07CEBD35AFBE3 /* TextLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C2B7D861D2C6E5D2EF8964D41042A2A /* TextLayer.swift */; }; + C1E58D6A03F4BDF076768F4A19C456F6 /* RNSVGText.m in Sources */ = {isa = PBXBuildFile; fileRef = 709CC5C4FE2BC2CE8DB81A782936132F /* RNSVGText.m */; }; + C20E07C071690B2E55C60F9A91878141 /* RNSVGDefsManager.h in Headers */ = {isa = PBXBuildFile; fileRef = C7C55CE4026E58C02D2B2F506502C46A /* RNSVGDefsManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + C2215AE2DA4AE46A1AE0DD92FB251672 /* RCTMultilineTextInputViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 0A26F7CDD2C592A3CA7DB437273831C0 /* RCTMultilineTextInputViewManager.m */; }; + C23691E2009781A66823384272135A5D /* RCTSurfacePresenterStub.m in Sources */ = {isa = PBXBuildFile; fileRef = C66C1FC852265CEFACD9E17D8FB1A88A /* RCTSurfacePresenterStub.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + C26CD517BE52D0D92401B08CD1CAFD8D /* RCTJavaScriptLoader.mm in Sources */ = {isa = PBXBuildFile; fileRef = A9C15FD89132C9C01662F379AD59600C /* RCTJavaScriptLoader.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + C2870581B550E2742404E32491AA4A85 /* Folly-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = CBBB3B82EECFA4B04D5E74F51014923B /* Folly-dummy.m */; }; + C28C6A343D453D03BBCC0204B9EA9ACE /* RCTDisplayLink.m in Sources */ = {isa = PBXBuildFile; fileRef = CFAE66823227976ECBC7F06E4B389F94 /* RCTDisplayLink.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + C28CEDF0463267513301B6D94DAD84A0 /* SolidLayerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = E46540416CEABE23F3B0D00F260CCD1D /* SolidLayerModel.swift */; }; + C2A7DC5C0C252B7B7194E6C58166CC51 /* RNSVGUseManager.h in Headers */ = {isa = PBXBuildFile; fileRef = CF10BDD12115F8C432C0D6F9BF52772A /* RNSVGUseManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + C2C3FF0A10C83804CB8525DC58981808 /* RCTRawTextViewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = AADCE7C64BAA41477E6809F0FB1A7FEC /* RCTRawTextViewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + C3A2786EDEC0B8FBB873CB9B57BDCD2D /* AIRMapOverlayRenderer.h in Headers */ = {isa = PBXBuildFile; fileRef = 2C411F556D0C25B4BD29B7BF3C80115A /* AIRMapOverlayRenderer.h */; settings = {ATTRIBUTES = (Project, ); }; }; + C3C9CB83A80D00EB7C94BAAF4F08FE93 /* ja.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 824597724E6E55A70E2A136C0CCD248F /* ja.lproj */; }; + C4118E988426357141BF7BC2C566084E /* hu.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 736D649113F9389422700F740D49A6C9 /* hu.lproj */; }; + C4230009705B3D40508F923AC6AE9681 /* PreCompositionLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2900C9D9CF639535D6BD667CC655E645 /* PreCompositionLayer.swift */; }; + C424718412F12A90585E7491CED519E4 /* RCTSurfaceHostingView.mm in Sources */ = {isa = PBXBuildFile; fileRef = B2213028C54C1C9D1186D4946E34B6FF /* RCTSurfaceHostingView.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + C446CF6C8D803C47B11E274F72919233 /* AnimationImageProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 289A4D3DC5A9F557EF333F0D036751F9 /* AnimationImageProvider.swift */; }; + C47978213EDC31F9925F602A96518800 /* RCTConvert+AirMap.h in Headers */ = {isa = PBXBuildFile; fileRef = CB5A87EFA609083E17A2596AAA3CA0A5 /* RCTConvert+AirMap.h */; settings = {ATTRIBUTES = (Project, ); }; }; + C47D5126E308A0C9F666F31606013E25 /* RCTRefreshControl.h in Headers */ = {isa = PBXBuildFile; fileRef = 2B81AC73FF0A49613037CBCC72DDF030 /* RCTRefreshControl.h */; settings = {ATTRIBUTES = (Project, ); }; }; + C4B18E922F71DC05B3A14E6C7C6DFD86 /* YGMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = 160186E58099704CF76691F19E26773A /* YGMacros.h */; settings = {ATTRIBUTES = (Project, ); }; }; + C4B2FA4F7A1AEC4CFA4FEB49DDBE15F0 /* RNSVGSymbol.h in Headers */ = {isa = PBXBuildFile; fileRef = 937209598CA97AC8B3E546F813746203 /* RNSVGSymbol.h */; settings = {ATTRIBUTES = (Project, ); }; }; + C4E00B552DA4D3408ECF3F4127A03F42 /* RCTCameraManager.h in Headers */ = {isa = PBXBuildFile; fileRef = B4577148E6D8E6314AC68CA3B70EDAEB /* RCTCameraManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + C5185BC6B1C1EC63308D2F3287A9F1CB /* RCTSRWebSocket.m in Sources */ = {isa = PBXBuildFile; fileRef = F690CCE9A100D449DB074095A72D1F80 /* RCTSRWebSocket.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + C55EBC50FA78F945F7DAF97589B19021 /* AnimatorNodeDebugging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3BEDDA76EDF1AB0A45DADE8CE76DAFE9 /* AnimatorNodeDebugging.swift */; }; + C5DB16C5E5158C504AC371333B5A2D59 /* RCTPropsAnimatedNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 11A603046F96373456579EF0B0B5430B /* RCTPropsAnimatedNode.m */; }; + C5E6AE8A5307436D7375A97216F1EA37 /* RCTConvert+REATransition.h in Headers */ = {isa = PBXBuildFile; fileRef = 349A797D236EE403880A7E3B001CA8A7 /* RCTConvert+REATransition.h */; settings = {ATTRIBUTES = (Project, ); }; }; + C5FA43AA1178EA6327E8499AA5AA0E43 /* RCTUIManagerObserverCoordinator.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1AFC2B5811F871029E43A34A7B396177 /* RCTUIManagerObserverCoordinator.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + C60A2BC67F2472D16766D6E9F9FBCA33 /* RCTTypeSafety-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 8EAFCF2BA927CBEBBF9AD655458D8192 /* RCTTypeSafety-dummy.m */; }; + C623B9E0185A59751D678DC304EBF2D6 /* jsi.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 035CA209D55884AEE962D8DA1C524D77 /* jsi.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + C696D835F00894C21BCC9800B2615F61 /* RCTEventEmitter.m in Sources */ = {isa = PBXBuildFile; fileRef = 1EE73CD41034EA9AF11322CA22ADE6B1 /* RCTEventEmitter.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + C6E11F383D9AEA2AE26AC331C44C62C4 /* UIImage+Resize.h in Headers */ = {isa = PBXBuildFile; fileRef = 161F4A80B880B5B05C530E0A09A2B327 /* UIImage+Resize.h */; settings = {ATTRIBUTES = (Project, ); }; }; + C6EF837E7300E31533CCDBF9F14D6756 /* ReactViewPagerManager.m in Sources */ = {isa = PBXBuildFile; fileRef = B597051B22AC9B39D56A2CE220DD9884 /* ReactViewPagerManager.m */; }; + C6F4CD52FD0E4FD56FC988D1603914CA /* RCTBaseTextShadowView.m in Sources */ = {isa = PBXBuildFile; fileRef = 0646A53BC77936B33302AD1671BB6513 /* RCTBaseTextShadowView.m */; }; + C73CD9F4DFA74F6499C401A100C4D9CC /* RCTPicker.m in Sources */ = {isa = PBXBuildFile; fileRef = 9E149FAE88DEF8943271ABB136290EE1 /* RCTPicker.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + C7BF77FA881CBF57E615C2D0A5F7EE31 /* REACondNode.h in Headers */ = {isa = PBXBuildFile; fileRef = AFD45F8B3D3C0269AA572459267D1F27 /* REACondNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + C7C3C7F89F4844F54CF56E81224D3C97 /* object.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4504C02F6885F9A32400DAE21F8C8ECC /* object.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + C82ADBB3185914B64A66F64A41B2A1DA /* RCTAnimationDriver.h in Headers */ = {isa = PBXBuildFile; fileRef = 39F59C6608D23BF6B9BEFF5F883FF644 /* RCTAnimationDriver.h */; settings = {ATTRIBUTES = (Project, ); }; }; + C8578EB10533B1361D816835BFF28569 /* JSCRuntime.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6DB71030186F2C7F1A0C0DF63348A212 /* JSCRuntime.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + C875E07ECE92E62765DB575928350849 /* RCTUIUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = D463DBF17CCD4CAF6363BF4661F5EAC9 /* RCTUIUtils.h */; settings = {ATTRIBUTES = (Project, ); }; }; + C8A061125336EAC361084A7EBD26F260 /* React-jsi-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = E6BE70A7E5DE10BD60061C7C8173D01A /* React-jsi-dummy.m */; }; + C8C11160192EF1F7E14BD1EA8BDEBC94 /* jsi.h in Headers */ = {isa = PBXBuildFile; fileRef = 473766C1AD2BD2C63C4E947CEA6FED0A /* jsi.h */; settings = {ATTRIBUTES = (Project, ); }; }; + C8E2511CB726E7B5986A3AEA22FD67AD /* GCDWebServerFunctions.h in Headers */ = {isa = PBXBuildFile; fileRef = 729F736E4E4227EADFC3FE07B8AB8FF8 /* GCDWebServerFunctions.h */; settings = {ATTRIBUTES = (Project, ); }; }; + C908FAE0A8544FAAE5EB6D635580E31E /* RNSVGPathParser.m in Sources */ = {isa = PBXBuildFile; fileRef = C9962383207D21F2CF0E67B12B2B3639 /* RNSVGPathParser.m */; }; + C96A14845B665B6E403453A625B8FB54 /* de.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 380D6158657840F6C0E4D89C5BFE05B3 /* de.lproj */; }; + C9C48F6BFB818AEAB588D3BA869F1709 /* RNSVGPropHelper.m in Sources */ = {isa = PBXBuildFile; fileRef = D1A77DD59DB1EB34348E396E28EF45F2 /* RNSVGPropHelper.m */; }; + C9D98FED74F51DC4FF7CCDE4BAB100F8 /* Pods-iLink-tvOSTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = F6AEB026EE96E8505E4C53D1220F7027 /* Pods-iLink-tvOSTests-dummy.m */; }; + CA8E48891C4D5E2AB108C1DFCB688396 /* React-RCTActionSheet-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = EEDA1BD360AA71FA05762BABCF449501 /* React-RCTActionSheet-dummy.m */; }; + CA9124D2F2728E7E82081ADF027AF23D /* results.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 72D8FF2E5195EB02FBB3D078A6586980 /* results.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + CAB9F204552C9B88340159C54DF4FC80 /* RCTDevLoadingView.h in Headers */ = {isa = PBXBuildFile; fileRef = 7585C8287C679BC8CA153139099A61C0 /* RCTDevLoadingView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + CABDE3A5C66FA7C398D297913A865F8D /* sync_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E0A890DCDE1AEFAE6C4F72E906958FF8 /* sync_config.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + CACF5194B6123AFD6E116D0623B009F1 /* TextCompositionLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 18F5586FF15AC4AB9D2FD577176DD9CB /* TextCompositionLayer.swift */; }; + CAE23189198E57894E54A51E318FCF33 /* uuid.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 06E34EEC66EDABFA4C144E5099D7C1DB /* uuid.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + CB3D2E4987AEAC3E17C9AA426FE94B6E /* RCTFrameAnimation.m in Sources */ = {isa = PBXBuildFile; fileRef = 959726F7722E5F772CD2A0A44E997329 /* RCTFrameAnimation.m */; }; + CB52A105BF83C44D9458930ECCB1D753 /* sync_file.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 73D5C1B92EBC7EC45CA66C7F1C973329 /* sync_file.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + CB9A435EDD2B4ADBCB4833E0C97C22B3 /* RCTInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = 48D2BFC0CCCC73A21D8E245D8EDF6F38 /* RCTInspector.h */; settings = {ATTRIBUTES = (Project, ); }; }; + CBCFE89918C7EAB8375D737D65864A37 /* RNLongPressHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 6DE0F3A352D635719C79228A666B5705 /* RNLongPressHandler.h */; settings = {ATTRIBUTES = (Project, ); }; }; + CBEF2DAC778B6C399D08984069ECFCB1 /* pt.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 4A65D8B455B933E2F30F0B8B28D71A75 /* pt.lproj */; }; + CBF66A2C39373F508D631D6ABD4F764C /* LayerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5CBBA114F700AFAF654BDBAC00FBC4EC /* LayerModel.swift */; }; + CC101EB3DC6CB7C3863BE137A4E34BA4 /* JSIndexedRAMBundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 55B86FE4183ADD1BA410C22500D82980 /* JSIndexedRAMBundle.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + CC190464D2D49F86BF35F344CBA111BC /* RCTKeyCommands.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C793A3FE44B9B3209B8BE91058BE865 /* RCTKeyCommands.h */; settings = {ATTRIBUTES = (Project, ); }; }; + CC3FFF5F3C3B74F2F8D51D1AF4AC47C8 /* raw_logging.h in Headers */ = {isa = PBXBuildFile; fileRef = 77DEEF8F2C9F9BFD0DF1D006B5AE194F /* raw_logging.h */; settings = {ATTRIBUTES = (Project, ); }; }; + CC594BC52DF8E661B05456BBCCABB351 /* RCTUITextView.h in Headers */ = {isa = PBXBuildFile; fileRef = C498CDECB5315A50BC9177E0BFF04A37 /* RCTUITextView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + CC717DA9952BA9478A02714B7ED33CD3 /* vlog_is_on.h in Headers */ = {isa = PBXBuildFile; fileRef = BABACAF6BA73DA602B9900C26DCAB72F /* vlog_is_on.h */; settings = {ATTRIBUTES = (Project, ); }; }; + CCC41DA03718EA474A8473730F319215 /* RCTConvert.h in Headers */ = {isa = PBXBuildFile; fileRef = 882EA3EB8ACFEE994EB7294C2678119F /* RCTConvert.h */; settings = {ATTRIBUTES = (Project, ); }; }; + CCFBCD123DD5F7E48CC5F41584920FFD /* AIRMapPolylineRenderer.m in Sources */ = {isa = PBXBuildFile; fileRef = A0EB61D3BDFE0B6A38BB088E5D2F7822 /* AIRMapPolylineRenderer.m */; }; + CD04B21C36E9E5975F91D372FC5A0DB1 /* SajjadBlurOverlayManager.m in Sources */ = {isa = PBXBuildFile; fileRef = AA0D81528CC401A3656123FC0D71EE84 /* SajjadBlurOverlayManager.m */; }; + CD19F2C82270D23EB3479F510FBA02FD /* RCTSurfaceRootView.h in Headers */ = {isa = PBXBuildFile; fileRef = F01DE092D544AE4823AE9A27D1110E37 /* RCTSurfaceRootView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + CDC3FAEC1D58F1186D503E1832B768BC /* AIRMapCalloutSubview.m in Sources */ = {isa = PBXBuildFile; fileRef = D8A0643C1D7D0A2882175ECC5A923420 /* AIRMapCalloutSubview.m */; }; + CDDCA48C236BA6D9092B73886D1497CA /* RNGestureHandlerDirection.h in Headers */ = {isa = PBXBuildFile; fileRef = 47D5A4B5FA87B449CFACECE61F7618CB /* RNGestureHandlerDirection.h */; settings = {ATTRIBUTES = (Project, ); }; }; + CE0E0C8F5053DEF6C7935EB374CB0806 /* BezierPath.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2F927708D0D84A3F7203B56F7133CEB6 /* BezierPath.swift */; }; + CE4E6A34191F267C7703347479C4CCDE /* BarcodeDetectorManagerMlkit.h in Headers */ = {isa = PBXBuildFile; fileRef = A39753B8DFCDD6E1196C3DA7102D6CD1 /* BarcodeDetectorManagerMlkit.h */; settings = {ATTRIBUTES = (Project, ); }; }; + CEB90421410CD06763E79D9F462FFEB4 /* RNSVGRenderable.m in Sources */ = {isa = PBXBuildFile; fileRef = 3DB5ED57431936CBED405C41339F6D3D /* RNSVGRenderable.m */; }; + CF076FB57F0EABF2971FD26E8A29CE75 /* GCDWebServer.m in Sources */ = {isa = PBXBuildFile; fileRef = 3D6F1563C86BAAE01655FD6D734E8ADB /* GCDWebServer.m */; }; + CF19015274453911DC762B0B2596A1FF /* AIRMap.m in Sources */ = {isa = PBXBuildFile; fileRef = 8866E759974A689649D4CBF88D1E6B7E /* AIRMap.m */; }; + CF31F826CE3503778831E97A4103CFE1 /* RCTBackedTextInputViewProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = 504C63F003605D6B94937D2BB3CFDA45 /* RCTBackedTextInputViewProtocol.h */; settings = {ATTRIBUTES = (Project, ); }; }; + CF78A2CC53F6039932999661138D3AE9 /* realm_coordinator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BEC13A69FA2BC2EEFB4E6090623EDD2B /* realm_coordinator.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + D002FD4969347C6EF58E26EB494259DE /* AIRMapOverlay.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FFD597AC5DF43F892AB801248AB8A10 /* AIRMapOverlay.m */; }; + D0436E60D6C2DDACADBBBDE556416C60 /* QBImagePickerController.m in Sources */ = {isa = PBXBuildFile; fileRef = 5845F0B5FE913422AA5D9EBDE4F74CD9 /* QBImagePickerController.m */; }; + D044F21BDBA21C81C3C6614DB10864CC /* AIRMapCallout.h in Headers */ = {isa = PBXBuildFile; fileRef = 760E9570B05F13E03833806189DF0606 /* AIRMapCallout.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D04A5C4EF1A00522A8BEF1FE60DB7BDA /* RNSVGLinearGradientManager.h in Headers */ = {isa = PBXBuildFile; fileRef = A5C09DAF41459FA8C22F70F569470496 /* RNSVGLinearGradientManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D064C6B77B43DAED3CF71B49AE8C24E1 /* RNCAsyncStorage.m in Sources */ = {isa = PBXBuildFile; fileRef = CC080FC0BAF19DEEA6CB4CC09FC1D287 /* RNCAsyncStorage.m */; }; + D078B073EAAF1EB4D019E5B2EAE24D56 /* RCTAnimatedImage.h in Headers */ = {isa = PBXBuildFile; fileRef = 444C6AA5B1EFAC44EFEF6C52A480B6D1 /* RCTAnimatedImage.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D0BBAA4A77DA2E5A4AB421B31384C064 /* Color.swift in Sources */ = {isa = PBXBuildFile; fileRef = 130BF0A98B7B733D7AAEFB2AD6C0CC18 /* Color.swift */; }; + D133456C21BC05F579EC2AB050B39E25 /* RCTPackagerConnection.mm in Sources */ = {isa = PBXBuildFile; fileRef = E14F66A415B455755CFBE410E70DBF6A /* RCTPackagerConnection.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + D13BC111FEEBBD6EC154C535832A4447 /* RNCameraUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = E683DB639D3895583D37D06CFCDE622F /* RNCameraUtils.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D159D4E11432836449A732BACDD0E057 /* QBSlomoIconView.h in Headers */ = {isa = PBXBuildFile; fileRef = AB8415797F616A79301CEAB45F23D562 /* QBSlomoIconView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D1DF3B07DF4D3D0FBB301E7D9E67268A /* RCTReconnectingWebSocket.m in Sources */ = {isa = PBXBuildFile; fileRef = 26DF5E1735D48DEDCC90B61850707A1B /* RCTReconnectingWebSocket.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + D1E6A429CB314C188FB6B2F4155DBE10 /* RCTUIManagerUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = 2AB2EC4879A24AD83E5C7C9EB83B66C4 /* RCTUIManagerUtils.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D221A675CE49FDCFC44E01841656D6E1 /* RCTImageLoaderProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = EE54F2B238C157AD12425F4C0ED5FB87 /* RCTImageLoaderProtocol.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D268B569CE5A6934906EEA08B741FE04 /* RCTLayoutAnimation.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D7D611A7BCF764E4F08CF919D63F899 /* RCTLayoutAnimation.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + D26F4634F408274087669A8C5821E621 /* REATransitionManager.h in Headers */ = {isa = PBXBuildFile; fileRef = B4A9FBE5E0B8A8E30A9EC4FB03032500 /* REATransitionManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D2B035BF0D8297AE90DA28CE8442880F /* RNPinchHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 5E6AAF803F2BC1B1A072F39B6656E2F8 /* RNPinchHandler.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D2C0288156214FF6AB21BB681AF9BC83 /* async_open_task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1A27A813750D74FFECE41F6933E3F821 /* async_open_task.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + D2FFAE9C41E61FD642180ABE39DB9172 /* collection_notifier.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F0C8A3071CB2A6215005813417F3252A /* collection_notifier.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + D30607D7089802C8D7C63CB7405707BB /* RNForceTouchHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = A4DBD3E83A1DE3FEA1885964A1DE4225 /* RNForceTouchHandler.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D32B7A08D1E1201371609EC99EDA8082 /* KeyframeGroup.swift in Sources */ = {isa = PBXBuildFile; fileRef = A4629356C1A90BB1312375141FC8352F /* KeyframeGroup.swift */; }; + D330B53FAA41F05742EDE21BCC0E9E4F /* AIRMapOverlayManager.h in Headers */ = {isa = PBXBuildFile; fileRef = C414B7065A0A1197F839BC770797F3BA /* AIRMapOverlayManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D361446652F14003E11D5959006986D8 /* RCTSinglelineTextInputView.h in Headers */ = {isa = PBXBuildFile; fileRef = 169EDBEB2871E1DFEA013CA498C9D6D4 /* RCTSinglelineTextInputView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D398D6BC4858973B987842F72117F7D7 /* GCDWebServerDataResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = A6626BCED414873F499928236F323D1F /* GCDWebServerDataResponse.m */; }; + D3A18DFAA3A19F89748D754D0B66D895 /* jsi-inl.h in Headers */ = {isa = PBXBuildFile; fileRef = 4F733DE7CEA64E779D2AB5344A8D210F /* jsi-inl.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D3CA337E81521E87C04569CAD2A96FFD /* jsilib-windows.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 38367C90EB7F9DF88F6647A98746CD91 /* jsilib-windows.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + D3E0C3799B74F64555BB170F15E0D842 /* RCTNativeModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 5F49F11D16E44A0F6C7DB2163EE994FC /* RCTNativeModule.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D3EE36FD52C27DA3FC46CDC4A1007EE2 /* RNSScreen.m in Sources */ = {isa = PBXBuildFile; fileRef = 0DC6DE70E81E2B7B2DEC0F4170D57F5F /* RNSScreen.m */; }; + D44453FA55CDFFADA654945E1C47BF7F /* UIApplication+RCTOnesignal.m in Sources */ = {isa = PBXBuildFile; fileRef = 17E386FF6ADF84202F590E285C566072 /* UIApplication+RCTOnesignal.m */; }; + D4882C3488D661D92895665F7D75D790 /* InvertedMatteLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 70EDA0C75E78208777AD89E763143135 /* InvertedMatteLayer.swift */; }; + D4E3178C44C2894DC7DB0E181CE8B0D7 /* AIRMapPolylineRenderer.h in Headers */ = {isa = PBXBuildFile; fileRef = F002AFF0C76F49BC958060877EA88922 /* AIRMapPolylineRenderer.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D514142384ACF8A93369F892EEBC9AF0 /* RNDeviceInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 361EBF05F44D35AEAC4461EA9D4D74EE /* RNDeviceInfo.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D5272A63D0667E8273E13A23551D8055 /* RNSVGGlyphContext.m in Sources */ = {isa = PBXBuildFile; fileRef = 77488C1A650D170A8045F3CFF1F3CFF2 /* RNSVGGlyphContext.m */; }; + D530B6B54B25518A6E2830C6D22587FD /* RCTScrollContentViewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 024520CC7CC553E3E3AA3C9C701F27B7 /* RCTScrollContentViewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D55DC9C84AE16F7F4B611A6E6474691B /* es.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 5B9301624E46D65D7578C06A2A71725C /* es.lproj */; }; + D5671401719C6B7B15571EF17C52A362 /* sync_permission.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A2F14CB65F1531949ABE8F487A7AF132 /* sync_permission.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + D5E703C39DFBB4E6295D0630B7D1A003 /* REAPropsNode.m in Sources */ = {isa = PBXBuildFile; fileRef = E375B609457ACB650F4AFCF740F6A0CF /* REAPropsNode.m */; }; + D5F16C0BB22DE3B479F73B115A351FF9 /* TOCroppedImageAttributes.m in Sources */ = {isa = PBXBuildFile; fileRef = 39757C6A78AEA42D99A9E3A1DC50D1D5 /* TOCroppedImageAttributes.m */; }; + D5FE477E781A4FA34879999350751C63 /* Yoga.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 56400AC8824BA0478C63849EF848B834 /* Yoga.cpp */; settings = {COMPILER_FLAGS = "-fno-omit-frame-pointer -fexceptions -Wall -Werror -std=c++1y -fPIC -fno-objc-arc"; }; }; + D606D2E9A3D60258610851FE05B88DA6 /* RNSVGNodeManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 40A38DBA4AA43A6F02C8E0E35BF24E71 /* RNSVGNodeManager.m */; }; + D64EF5E0BBC9749F19EAA91ACA52729E /* LayerTransformNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1979A7AF24A335D29BB1A97E320FD558 /* LayerTransformNode.swift */; }; + D669E700FBE1AF9FDA8B7E73AF725E5C /* RNSVGNodeManager.h in Headers */ = {isa = PBXBuildFile; fileRef = BB2FAA9C9BDE6EF026D50DA0F454A607 /* RNSVGNodeManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D67FA9AB44F255BBC99DE01C1472E719 /* RNFlingHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E803FA67F7D71B0B20BBECB78ACE795 /* RNFlingHandler.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D74DA31CEF79C51DCAB456ED904FDA92 /* REANode.h in Headers */ = {isa = PBXBuildFile; fileRef = DCEF22C8515513669AADFF21B6A6566F /* REANode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D76B493A6A67EF04F62AFE4ED25339FE /* RCTSurfaceSizeMeasureMode.h in Headers */ = {isa = PBXBuildFile; fileRef = 33DE7F093C98D1A9AB1C573FF3F85A54 /* RCTSurfaceSizeMeasureMode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D78D918B10D194FB6DA986DC72292DBF /* Animation.swift in Sources */ = {isa = PBXBuildFile; fileRef = C6F002F460B48A5092183E1E5FDDFF7C /* Animation.swift */; }; + D799FB82308DF92E78A190BA577128C1 /* cs.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 284695DECA75458DC9F0674F2CBB5152 /* cs.lproj */; }; + D84B4456D9193C76DC30443814358BB6 /* YGNodePrint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B1EE3B23EC59828C54A48585CC2D1658 /* YGNodePrint.cpp */; settings = {COMPILER_FLAGS = "-fno-omit-frame-pointer -fexceptions -Wall -Werror -std=c++1y -fPIC -fno-objc-arc"; }; }; + D8B9124A116641613A5AD375400BC041 /* RCTInputAccessoryView.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B01716B69443F3AD541B09C78900323 /* RCTInputAccessoryView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D8DECC073C0E4D0A80BE2721F312321F /* REAConcatNode.m in Sources */ = {isa = PBXBuildFile; fileRef = CDBC89BC9044E9410964BB4D41A9A682 /* REAConcatNode.m */; }; + D8EA2D2663FCF4B2B2C7AC39EDCD203D /* RNPanHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 30488D55995F66E7799CB272A4F9A1F8 /* RNPanHandler.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D95985B3A09109412AB20DFB315145D2 /* LongLivedObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 8C37427685AE9FEB056316077064C475 /* LongLivedObject.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D959AD97B6DF4CB04AD0358306915F25 /* RCTUIImageViewAnimated.m in Sources */ = {isa = PBXBuildFile; fileRef = F4E8900AEC7EBB064EAF3AAF3E70DEEB /* RCTUIImageViewAnimated.m */; }; + D9AF11AD68F5A448381F3F16EA45EC66 /* RCTRefreshControlManager.m in Sources */ = {isa = PBXBuildFile; fileRef = FCC58E2C789E628C139369B53C12A061 /* RCTRefreshControlManager.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + D9D81938A54B0124BA90B7998F309F1F /* DispatchMessageQueueThread.h in Headers */ = {isa = PBXBuildFile; fileRef = 87D0B4D9FBE299629BCA57203803A1B0 /* DispatchMessageQueueThread.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D9E6889BE1390C1ADDD017DF60828CAA /* QBAlbumCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 22F5B4D3EF2FEB7F0DAA922D99C38188 /* QBAlbumCell.m */; }; + DA288CD5E0C0355A9CA34658690B5C47 /* RNFlingHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 8407DE67D728D6140E1422B9FEE49D4A /* RNFlingHandler.m */; }; + DA2ECFAF51C392FCF0ED63EE0866DF75 /* RCTMessageThread.mm in Sources */ = {isa = PBXBuildFile; fileRef = F1484D73E6383C4C0A58949B95EFCE6A /* RCTMessageThread.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + DA617A49FEF901D70D5866081CDE3759 /* RNTapHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 85495AA788D884D183197148FE416E93 /* RNTapHandler.m */; }; + DAA5D42F228D8B9CAD984D3158DC5157 /* RNRotationHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9612F5B53DCEE2752727983931D95F26 /* RNRotationHandler.m */; }; + DACC98C0F40EE51A2A6B0930B705A45A /* AnimationContainer.swift in Sources */ = {isa = PBXBuildFile; fileRef = B060FBD6C532D94DE4E17EDCE4243E2F /* AnimationContainer.swift */; }; + DAE2F71A0E2CADCDFB96EB99F9AA785C /* ImageCompositionLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F022DDDD97CFAECA9879483808F4C2E /* ImageCompositionLayer.swift */; }; + DB0D3C4492679C09ED7D7008EFB8F30B /* RCTBaseTextInputView.h in Headers */ = {isa = PBXBuildFile; fileRef = 8EBD152F4E9301AF6F532A8BE0B2CF35 /* RCTBaseTextInputView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + DB194FBFAE58A42BB2707AE5A1F04BF8 /* GCDWebServerErrorResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = C190AAD1B0BA1D78B87033000B37C443 /* GCDWebServerErrorResponse.m */; }; + DB1B9ABDCBB97BB5B7B3ABBCF83E940C /* PathOutputNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 368D18758B9DC959CED56F1E689C0C2C /* PathOutputNode.swift */; }; + DB9FDF2BB65177B5098AE1B773B5BC56 /* TOCropViewControllerTransitioning.h in Headers */ = {isa = PBXBuildFile; fileRef = 5BDD638591668E011367B1EA21972E6E /* TOCropViewControllerTransitioning.h */; settings = {ATTRIBUTES = (Project, ); }; }; + DBAFD3CD2E9B3BB931BCAC196CCE06E0 /* AnimationContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = A15AB20DE037AE34FA6B9CB5F40B8371 /* AnimationContext.swift */; }; + DC0645C957C0A0C7A3ECDCAA8236AAD0 /* RCTSegmentedControlManager.m in Sources */ = {isa = PBXBuildFile; fileRef = E88DA0EDF291FBB71A78CBFBD976A127 /* RCTSegmentedControlManager.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + DC2E5D6695CA53C1C0FC39FE7F3B8617 /* RNSVGTSpanManager.h in Headers */ = {isa = PBXBuildFile; fileRef = C2B574FC50B75548F510495B80B9E6EB /* RNSVGTSpanManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + DC338EE97C5FB1B46908890408F8F734 /* REAAlwaysNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 850C45F01FA71D06E0020655AB808456 /* REAAlwaysNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + DC3A13E1F76F75DB53ED941952CF6750 /* index_set.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CD86F535C08E0C06154EB0F5AF1FB5FC /* index_set.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + DC8B781D1A5F4D4497A77FD9646165C3 /* RCTFileReaderModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 4F3644EA325AAD4763E3CD93F1EB04C8 /* RCTFileReaderModule.h */; settings = {ATTRIBUTES = (Project, ); }; }; + DC90EC6092565FD256734B2F00362433 /* REACallFuncNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 294E1727E47D41316378205655840ADA /* REACallFuncNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + DCC3D1FE6B849D21B7FB6944E93708C7 /* RCTSurfaceHostingProxyRootView.h in Headers */ = {isa = PBXBuildFile; fileRef = 567D4AED3651B7DF227938F0036C8961 /* RCTSurfaceHostingProxyRootView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + DD1787C23567690137608F6C02298648 /* RNSVGPropHelper.h in Headers */ = {isa = PBXBuildFile; fileRef = CDFC1FE89654AB6A88FCEBC03172F4DE /* RNSVGPropHelper.h */; settings = {ATTRIBUTES = (Project, ); }; }; + DD4A3D30C89E3F3FA35ECD00DB52C2A9 /* RCTPackagerConnection.h in Headers */ = {isa = PBXBuildFile; fileRef = 5E8EBF46AD9C383614492B1EF7D67126 /* RCTPackagerConnection.h */; settings = {ATTRIBUTES = (Project, ); }; }; + DD5BCE4C7FEF778891D17C5CE28041B4 /* RCTSRWebSocket.h in Headers */ = {isa = PBXBuildFile; fileRef = 01A868ADD27794E34BC8E94E1552922B /* RCTSRWebSocket.h */; settings = {ATTRIBUTES = (Project, ); }; }; + DD834EEA56C701A1D4E62C7D04E4AB7D /* RCTSubtractionAnimatedNode.h in Headers */ = {isa = PBXBuildFile; fileRef = C99D92D5F611B0C9C9A3387F953B9B76 /* RCTSubtractionAnimatedNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + DDDC1AF42E3813725B1D2ED0B910EDA6 /* SolidCompositionLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = BBD7C77412D709EE9D77315494356EBD /* SolidCompositionLayer.swift */; }; + DE098735354AB81DB5DB10B051184475 /* RCTViewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 636261F1FF693694CCCCED8CDD8CF01B /* RCTViewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + DE1659316F880DBDF0434505D0017CCE /* RCTWrapperViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = 23CD574DDBADF425CB45A61E18EE00C9 /* RCTWrapperViewController.h */; settings = {ATTRIBUTES = (Project, ); }; }; + DE456ABD0C62606DF50778D52418F6BB /* RCTConvert+Text.h in Headers */ = {isa = PBXBuildFile; fileRef = 1C9D735D2B3A99051321672481DAA4B2 /* RCTConvert+Text.h */; settings = {ATTRIBUTES = (Project, ); }; }; + DE47299E2D048E18334EC7635B5AC522 /* RCTExceptionsManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 3AD259E000F1338CD831F8FBF8D9D702 /* RCTExceptionsManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + DED057BD0B25BC346498BE310798EA3D /* RCTMessageThread.h in Headers */ = {isa = PBXBuildFile; fileRef = FBFAF7E6A054D8C885F2A1820099BB3A /* RCTMessageThread.h */; settings = {ATTRIBUTES = (Project, ); }; }; + DF1E90E212129105AFF025EA39DE8600 /* it.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 240FC5906978BF23A0E568243478D054 /* it.lproj */; }; + DF2F5DEE75F6FF5686FFCDE079080E91 /* RCTConvert+UIPageViewControllerNavigationOrientation.m in Sources */ = {isa = PBXBuildFile; fileRef = E5376DDB2D85FC75CCE5303BF2D3E8CA /* RCTConvert+UIPageViewControllerNavigationOrientation.m */; }; + DF3426F6CCCE24078066ACC94F475A24 /* RCTHTTPRequestHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = E76FBB2A2FA956C922BBB10AD6DD20B7 /* RCTHTTPRequestHandler.h */; settings = {ATTRIBUTES = (Project, ); }; }; + DF579891A8AA8CAAD8786AA09CCBC2AB /* RCTSurface.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0E92D0841562A3204508FC42C13059F5 /* RCTSurface.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + DF604B9B4C69C98BD0D036993BB988F7 /* RNSVGMarkerPosition.h in Headers */ = {isa = PBXBuildFile; fileRef = F0864A0CF9ADBF8AB056BD16781F7D8A /* RNSVGMarkerPosition.h */; settings = {ATTRIBUTES = (Project, ); }; }; + DF734DFF64A35ACB20B98ED45849F470 /* RCTConvert+UIPageViewControllerNavigationOrientation.h in Headers */ = {isa = PBXBuildFile; fileRef = CA289216DC9FD5C70F620E451E66F813 /* RCTConvert+UIPageViewControllerNavigationOrientation.h */; settings = {ATTRIBUTES = (Project, ); }; }; + DFA46F0C3202DB3E919654903047E1A8 /* REAClockNodes.h in Headers */ = {isa = PBXBuildFile; fileRef = 602C103D28B8AC2841B6268801AF55F4 /* REAClockNodes.h */; settings = {ATTRIBUTES = (Project, ); }; }; + E04B8929CBDCF197B759A6841551F027 /* RNSVGPath.m in Sources */ = {isa = PBXBuildFile; fileRef = 2D301EAAD960B125FC803B7CA3C896B8 /* RNSVGPath.m */; }; + E0908D3316D8B4AEC3549157C7CE6A8C /* RCTNetInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = FC9DD2290480ACE14CA81490C1198E5B /* RCTNetInfo.m */; }; + E0BE7BE2BCB8F21C401196303D4F05C2 /* Bridging.h in Headers */ = {isa = PBXBuildFile; fileRef = EBA1ABAEEAA339538F25C1FE3B1E3E02 /* Bridging.h */; settings = {ATTRIBUTES = (Project, ); }; }; + E0F1ABAEE8E0B4162C8AF471A8A5FA3A /* RNFileSystem.m in Sources */ = {isa = PBXBuildFile; fileRef = 73CFF86E66CA6530C533F82C0D9918D4 /* RNFileSystem.m */; }; + E12943651F986783CE3E9789EC07DFEE /* AnimationView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50A02522AD4650CF22415245E6CB64BC /* AnimationView.swift */; }; + E16689689130A68B904300A8943E07D0 /* RCTOneSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = C4C44B4EF4082FF661AA53998D10B029 /* RCTOneSignal.m */; }; + E1676B765B569B2E2660BF4E1D21C882 /* RCTBaseTextInputView.h in Headers */ = {isa = PBXBuildFile; fileRef = 8EBD152F4E9301AF6F532A8BE0B2CF35 /* RCTBaseTextInputView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + E18A04E1AB7CBC06080139DFFFB5AC3C /* GCDWebServerFileResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = A183A72F662CDA25DDB8EB55D14364D3 /* GCDWebServerFileResponse.h */; settings = {ATTRIBUTES = (Project, ); }; }; + E1C0185107923EB18B42D27A2C49ECB9 /* Yoga-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 0167238ECFB7B1D1BF9823A1A485C87D /* Yoga-dummy.m */; }; + E1FE31621342CAB49123532617010DB8 /* RNSVGFontData.h in Headers */ = {isa = PBXBuildFile; fileRef = 447B419F81A90075849E06FE8EE052A7 /* RNSVGFontData.h */; settings = {ATTRIBUTES = (Project, ); }; }; + E234216475CEB3C1FA47FF9F06B2E286 /* TOCropOverlayView.m in Sources */ = {isa = PBXBuildFile; fileRef = 6E310F41375B2CDC6DBCFA7531AC732F /* TOCropOverlayView.m */; }; + E25332B9230144D4831192C8C1525747 /* AnimationKeypath.swift in Sources */ = {isa = PBXBuildFile; fileRef = D230983AD8AD92D207ACEB8BDDB2AAB0 /* AnimationKeypath.swift */; }; + E269F8910E09BF445F9F7B766B3D55F0 /* RCTSafeAreaViewLocalData.h in Headers */ = {isa = PBXBuildFile; fileRef = E920298DB7F4030BBE9C9A24ADF42C8A /* RCTSafeAreaViewLocalData.h */; settings = {ATTRIBUTES = (Project, ); }; }; + E27F464ABBD6BA60FA5B88D07E67C18C /* RNSVGTextPathManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 882783E78BA40C737F83B62D5555EAB5 /* RNSVGTextPathManager.m */; }; + E2D00F8206CA13A6F7A99EBC952B399A /* RCTTypedModuleConstants.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B1A001CE4A127740AE3F45B3BAAB4E6 /* RCTTypedModuleConstants.h */; settings = {ATTRIBUTES = (Project, ); }; }; + E2EC4F6D036FE1726E404B172B975D3D /* fr.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 34EE9B46BA77EDAE3F8128CBFCA7706E /* fr.lproj */; }; + E34A33E6C5C1438B0AEDC19CE7DDECC0 /* RCTBaseTextViewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = AED994A5EF18C21F617C0C8EA52C5F92 /* RCTBaseTextViewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + E3E5B7280ED60437BA221A78A51FA45C /* REANode.m in Sources */ = {isa = PBXBuildFile; fileRef = 14380B8325F2847C6C6CDC58A5D912A5 /* REANode.m */; }; + E4402760EEDC072B5883CC693C065BE1 /* RCTTextViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 694852843B57B697F6ADBDB842AD291B /* RCTTextViewManager.m */; }; + E4C442CA57C9B2DFEA4A467F2073DB32 /* Trim.swift in Sources */ = {isa = PBXBuildFile; fileRef = 257A814B5D064ED222003A40F55C03E8 /* Trim.swift */; }; + E52EEF0839014D2EA233A13143C22B61 /* AIRMapCalloutManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 1AA4B42D3218DD2AB4B8B348CDA0201E /* AIRMapCalloutManager.m */; }; + E53B87D374DCF0672582DDC39EABCE1E /* RCTRootContentView.m in Sources */ = {isa = PBXBuildFile; fileRef = 2BDCEDD40BAD9342F016E20D99471470 /* RCTRootContentView.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + E554303B31E001954F6D0CA1C01F9713 /* RCTBackedTextInputDelegateAdapter.m in Sources */ = {isa = PBXBuildFile; fileRef = A745480BCC05E3D86F8DA9DFBC45936F /* RCTBackedTextInputDelegateAdapter.m */; }; + E567F4E113C2F88E9E47B506A9182094 /* RNSVGImage.h in Headers */ = {isa = PBXBuildFile; fileRef = 01AD93A050E5E2EF9CED36A6280344D3 /* RNSVGImage.h */; settings = {ATTRIBUTES = (Project, ); }; }; + E57F792D9018DD187CD5C28F705648C8 /* RCTImageEditingManager.m in Sources */ = {isa = PBXBuildFile; fileRef = E1C47602A98504A57923B2CB6DC98076 /* RCTImageEditingManager.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-nullability-completeness"; }; }; + E5DDC77DCFE9D5648B96BAE3CEBE9C0E /* RCTTextDecorationLineType.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DC817FD7E7651426D4C48D3916CC7 /* RCTTextDecorationLineType.h */; settings = {ATTRIBUTES = (Project, ); }; }; + E6EF3C50E2B548A471E5DD920DA6E14D /* RCTProfileTrampoline-x86_64.S in Sources */ = {isa = PBXBuildFile; fileRef = 2CEC58EC7C5EE44E62E57EF11B77EA0A /* RCTProfileTrampoline-x86_64.S */; }; + E742453C6BA877B7650821196ADA49BC /* da-DK.lproj in Resources */ = {isa = PBXBuildFile; fileRef = CF87B8E90810D52AA8D929C1CA23A0CC /* da-DK.lproj */; }; + E7491F1A7A1C4A5EC51A0FC3BF128C33 /* RAMBundleRegistry.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 89923F79C73F544563E6D81292AA6C67 /* RAMBundleRegistry.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + E7665DD8D2AEB92EE044D7299F4EB1CD /* RCTSensorOrientationChecker.m in Sources */ = {isa = PBXBuildFile; fileRef = 3AE57868946406E942A1CE4E37C2954F /* RCTSensorOrientationChecker.m */; }; + E78D398DE9276B2D1131268BFDFE182B /* RNPanHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 054AA171BBE1DE3A8486BA1C735E804B /* RNPanHandler.m */; }; + E792909E4A2A1B233B36BAA420ED9F27 /* NSDataBigString.mm in Sources */ = {isa = PBXBuildFile; fileRef = 259805F4A7ACBDA5CDF175A08F053AA4 /* NSDataBigString.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + E7976ED37904C3F3907C4680FF001957 /* JSCallInvoker.h in Headers */ = {isa = PBXBuildFile; fileRef = 2F723DB45990B8D82DCFBFF5ADFD7FED /* JSCallInvoker.h */; settings = {ATTRIBUTES = (Project, ); }; }; + E7C3174563CD0FE2162C8289968A4D0B /* RNSVGLength.m in Sources */ = {isa = PBXBuildFile; fileRef = 218685B97C74C398854F8BBE93E5AD68 /* RNSVGLength.m */; }; + E7DEFED9F626AD23EEE483C9CADFD9DB /* RCTMultipartStreamReader.m in Sources */ = {isa = PBXBuildFile; fileRef = D1BD709A9DB53947C5D1E1CEAF69C24F /* RCTMultipartStreamReader.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + E80D502CE862398FFD461E1ABC20B1B4 /* RCTShadowView+Internal.m in Sources */ = {isa = PBXBuildFile; fileRef = D22EEA5BB9053A81FA6CC9F014E5DAF5 /* RCTShadowView+Internal.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + E8469F0561D7D095AC8A3BE861F6BA90 /* RCTProgressViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = DD52AF38C97B8C4CE7CB242233231931 /* RCTProgressViewManager.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + E84A1C686CF574A665359606463DE64B /* RCTDivisionAnimatedNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CF550C2000E6F41286D2CFC64F661EB /* RCTDivisionAnimatedNode.m */; }; + E85C225AA01D20FC93522E6BF797F0C4 /* GroupOutputNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6C70374053BCCA3F927792FE5DEC8D46 /* GroupOutputNode.swift */; }; + E8BC0E18C224F69A40499819E7123225 /* experiments-inl.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F348AA8D7BF5A580360B23180B7EB76 /* experiments-inl.h */; settings = {ATTRIBUTES = (Project, ); }; }; + E9217266CB2B09F77F2ABE8179C14253 /* RCTPlatform.h in Headers */ = {isa = PBXBuildFile; fileRef = 52369F214F7D3999AAD2FB1D35F2712F /* RCTPlatform.h */; settings = {ATTRIBUTES = (Project, ); }; }; + E953548BA212D0038557EBF302E5FB1A /* fast-dtoa.h in Headers */ = {isa = PBXBuildFile; fileRef = 7BFF2A7F1937AE776B20EE28FD571296 /* fast-dtoa.h */; settings = {ATTRIBUTES = (Project, ); }; }; + E95D6946EAAC0D88A62A9C4EF71E1A8A /* RNImageCropPicker-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = EB79F8010AA4124014EF95A6F1FE4F5B /* RNImageCropPicker-dummy.m */; }; + E9F74CDA80736CBB8AAFDC42E23AD755 /* RCTRedBox.h in Headers */ = {isa = PBXBuildFile; fileRef = 7673B2D115E85C1126E3211044E8FC09 /* RCTRedBox.h */; settings = {ATTRIBUTES = (Project, ); }; }; + EAFE220896DFAEB902CB7265C3316EDB /* SajjjadBlurOverlayManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 3DD32D51C9966D7E4F6CB5379DA91FD9 /* SajjjadBlurOverlayManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + EB168153F94FA3A78CB98DD4D70C4845 /* ColorExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = CF005F54D67115E850253A662978CB37 /* ColorExtension.swift */; }; + EB7B235C58C27965FCDC374401FB1C77 /* experiments.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3D3902E09FEEF4E0FFF21AED7DE77A9E /* experiments.cpp */; settings = {COMPILER_FLAGS = "-fno-omit-frame-pointer -fexceptions -Wall -Werror -std=c++1y -fPIC -fno-objc-arc"; }; }; + EB84DD9705DE4677B8C7D80BCA81CB31 /* LayerTextProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8CE05476EFEEF9140157E292C4F511AE /* LayerTextProvider.swift */; }; + EBB31A81A9245F1AF542525CD137D384 /* RNVectorIconsManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 5A97AACA39AD7DAD2F9CD93A4B909BCC /* RNVectorIconsManager.m */; }; + EBB98C58D2D5B65E374C5DA08045F74C /* dynamic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 38CB2A6363964C86ABC84C3435BD4D3D /* dynamic.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -DFOLLY_HAVE_PTHREAD=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + EBE1F92DFD666E92F3D82FF96DA4603E /* MallocImpl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D8818730D0625E7ED9A934FE75C73514 /* MallocImpl.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -DFOLLY_HAVE_PTHREAD=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + EC03AC64B129ED09841A812ECF193861 /* RCTSliderManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 2B5FBD150C44634A41456D7D1CA55A99 /* RCTSliderManager.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + EC44FEE7AA4D0866F99691AF5CF9D5A6 /* YGNode.h in Headers */ = {isa = PBXBuildFile; fileRef = CDFE0C544B14818EEC7303C7B4D66DA2 /* YGNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + ECE4FC4F76667DED3A085D8440D38BD6 /* RCTLayoutAnimationGroup.m in Sources */ = {isa = PBXBuildFile; fileRef = BF4C20670E8DF945ADA9F662D0E70A64 /* RCTLayoutAnimationGroup.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + ED40726BE95163F73C9FA505E8EAE44D /* AIRMapLocalTileOverlay.m in Sources */ = {isa = PBXBuildFile; fileRef = D4208F3E0AFF17F28B7336799FB8D1FB /* AIRMapLocalTileOverlay.m */; }; + ED59141AE4F0E3CEAD61975EB91F90E0 /* RNSVGLineManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 43544F72E9753F12D99696AC54125FAD /* RNSVGLineManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + ED83B99A83F718997860D49CF590905F /* AIRMapWMSTileManager.h in Headers */ = {isa = PBXBuildFile; fileRef = D9C9A1E675611A46F72EA17CA5F63B6D /* AIRMapWMSTileManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + ED8F4380242039B1D9DA4EE70557D8A0 /* RCTJavaScriptExecutor.h in Headers */ = {isa = PBXBuildFile; fileRef = D2B3AF246F9096C08AEB6824A7E7B50F /* RCTJavaScriptExecutor.h */; settings = {ATTRIBUTES = (Project, ); }; }; + EDDBFED5EF7AECC812FDCEBD9F395D63 /* KeyframeExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60B3749D7C95B858B87ECDCFAE0DAEAC /* KeyframeExtensions.swift */; }; + EE1D082C3D346786B66B83329775FAD0 /* REABezierNode.h in Headers */ = {isa = PBXBuildFile; fileRef = BF131340112C705973475540BCBD0E8B /* REABezierNode.h */; settings = {ATTRIBUTES = (Project, ); }; }; + EE3F2035FE85D6E2C433AF9382844ADA /* ReactNativePageView.h in Headers */ = {isa = PBXBuildFile; fileRef = EC3FE2D4511AB643734751582E105065 /* ReactNativePageView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + EF1CF812E592E446DB1A2FA84A19193E /* RNSVGSvgViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 76348F1D7EF761E34111394E6D54AD34 /* RNSVGSvgViewManager.m */; }; + EF49711A3832EA58FD421487A58E982B /* AnimationTime.swift in Sources */ = {isa = PBXBuildFile; fileRef = B146D24F68263F638F04912E835C010F /* AnimationTime.swift */; }; + EF9B33792CA8272ABC1B1E570607AA0A /* RCTNativeAnimatedModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 3F691D6D9E721CDDFB70E13182BF586D /* RCTNativeAnimatedModule.m */; }; + EFA86D317B8E9D6E0B3B7BC5EE2ACE7C /* RCTAdditionAnimatedNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 163EFE44E527B9D3A2AF8720622DB050 /* RCTAdditionAnimatedNode.m */; }; + EFAA8A89DE36EF8777BCAD126900D5E6 /* RCTInputAccessoryShadowView.m in Sources */ = {isa = PBXBuildFile; fileRef = 1098464FAADD59B4F51D2730FA3385BC /* RCTInputAccessoryShadowView.m */; }; + F05E5CFAE1B52F4737C9D09EA3249FAE /* RCTKeyboardObserver.h in Headers */ = {isa = PBXBuildFile; fileRef = FE2C1D922EA4986D53A6E6A69E1D0230 /* RCTKeyboardObserver.h */; settings = {ATTRIBUTES = (Project, ); }; }; + F0664A004DAF980E54CB0AC82275C45E /* RCTProfile.m in Sources */ = {isa = PBXBuildFile; fileRef = 133FEE3A6D3EF0BA7E1D406B4C0F3662 /* RCTProfile.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + F0C0C5FFABA3A68B512FA47B7A2B5978 /* MethodCall.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 94F054948DE6688ED71EBB5E10772744 /* MethodCall.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + F0E3B10B9C03191EE28048D2B34C5A07 /* AnyNodeProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB9C24B52A066907D224A7C8649FEBCB /* AnyNodeProperty.swift */; }; + F10066FFFCB05691561796C75A21D831 /* fixed-dtoa.cc in Sources */ = {isa = PBXBuildFile; fileRef = 552BB71966B83C37751C3746A98EB403 /* fixed-dtoa.cc */; settings = {COMPILER_FLAGS = "-Wno-unreachable-code"; }; }; + F17DA3C1092B2D14EB5124985E7A500F /* RCTImageShadowView.m in Sources */ = {isa = PBXBuildFile; fileRef = 73B7B1302F2055B7FE4771197F78DB94 /* RCTImageShadowView.m */; }; + F19596920C9AD47E0A8BEBAAC51B3B39 /* CompositionLayersInitializer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 003C835D4E049A87A19B4AD48969AF48 /* CompositionLayersInitializer.swift */; }; + F28FC996E9D7C12E3F41C1B640ABB2A5 /* Compression.h in Headers */ = {isa = PBXBuildFile; fileRef = 8AC88B3783075D3D6F9D3BDE7B427464 /* Compression.h */; settings = {ATTRIBUTES = (Project, ); }; }; + F2905D0C93CAA52A467B88EC0BB62A59 /* RCTBridgeModule.h in Headers */ = {isa = PBXBuildFile; fileRef = E3BA5A5052D60069AA1CBB5B33F21489 /* RCTBridgeModule.h */; settings = {ATTRIBUTES = (Project, ); }; }; + F29EB2F7D5DFF84B2E8269DD077EFDBE /* Pods-iLinkTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = EA37D9997E1D6992DB5C309D59091305 /* Pods-iLinkTests-dummy.m */; }; + F2C2EEBF3B51F8899ABEC42E6C28D414 /* RCTNativeAnimatedModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 1535726DCF31D2AA1A4C710E1FDBDED8 /* RCTNativeAnimatedModule.h */; settings = {ATTRIBUTES = (Project, ); }; }; + F2FBE728572C5C9583E029B4FF80C91B /* RCTBackedTextInputDelegateAdapter.h in Headers */ = {isa = PBXBuildFile; fileRef = AA5514FD086C70AA9D9857E11E378E9A /* RCTBackedTextInputDelegateAdapter.h */; settings = {ATTRIBUTES = (Project, ); }; }; + F365CF05E614D711578FC5B66F16B116 /* RNSVGTSpan.m in Sources */ = {isa = PBXBuildFile; fileRef = A02CF47E0BABAF019F8DAFA655EB4001 /* RNSVGTSpan.m */; }; + F4418EB890BE12C2598AF4E27727FF4E /* Conv.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 107276AED3FD0E58036B1E70D78E8A5D /* Conv.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -DFOLLY_HAVE_PTHREAD=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + F45E1C242BE709DF075D9EC75BB0ACE2 /* RCTUITextView.m in Sources */ = {isa = PBXBuildFile; fileRef = 2EF46290800CD755E81E433B9F3E16B0 /* RCTUITextView.m */; }; + F467229BFF25B653758129525EBEBFAB /* RCTDefines.h in Headers */ = {isa = PBXBuildFile; fileRef = 4F9C7A3BAD8B0BC2E6449C266492FEF2 /* RCTDefines.h */; settings = {ATTRIBUTES = (Project, ); }; }; + F46991DCD5A42EBC7DBF19355D61EB18 /* RCTSlider.h in Headers */ = {isa = PBXBuildFile; fileRef = 964BD6A82CD274D71E6980332AD93CA3 /* RCTSlider.h */; settings = {ATTRIBUTES = (Project, ); }; }; + F475C50484874DB1912411B5ECB45CA1 /* RCTModalHostView.h in Headers */ = {isa = PBXBuildFile; fileRef = 196AE926396AC283315B2AF7BAF4AF7F /* RCTModalHostView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + F47ED464903DEA34E24E450CD8B0F21F /* RCTAssert.h in Headers */ = {isa = PBXBuildFile; fileRef = 4645BD913182CB0A294DCED04A84F423 /* RCTAssert.h */; settings = {ATTRIBUTES = (Project, ); }; }; + F4FE80AB2EA8DD144D7457A12534D90D /* QBAlbumsViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = 560B6B60355FB3913DAEFC6F01729E18 /* QBAlbumsViewController.h */; settings = {ATTRIBUTES = (Project, ); }; }; + F5726B554FBDAEB1A9728B7D0AEB6D63 /* AIRMapUrlTileManager.h in Headers */ = {isa = PBXBuildFile; fileRef = E238817A8E4472E8343824B4ECAB3880 /* AIRMapUrlTileManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + F5815C34EB758160EF33663632913EB1 /* RNCameraUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = 8D68782A97AA38CF9B6D3E2B7F75D47D /* RNCameraUtils.m */; }; + F5C3427D4C1F112DD003583B82F03720 /* Bitfield.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B72A60E1F3388D78FDBAA0F988CF489 /* Bitfield.h */; settings = {ATTRIBUTES = (Project, ); }; }; + F5DA0342E178C580B9BA0805288919A5 /* RCTUITextView.h in Headers */ = {isa = PBXBuildFile; fileRef = C498CDECB5315A50BC9177E0BFF04A37 /* RCTUITextView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + F5F6D388DFABA42ADC98DFE937FC366A /* RCTInspectorDevServerHelper.mm in Sources */ = {isa = PBXBuildFile; fileRef = 348B44DC798A787931D7739187B06164 /* RCTInspectorDevServerHelper.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + F5FF727CEBFCD171FB5C7A22C2DF958E /* Assume.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 46CFD0BF2758FD8B5B98109988FFDFDF /* Assume.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -DFOLLY_HAVE_PTHREAD=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + F602EB9389726E8A543A80665EDB6A0D /* RCTBaseTextShadowView.h in Headers */ = {isa = PBXBuildFile; fileRef = 72C0FC03C6C07D68A5ED376DFDB22818 /* RCTBaseTextShadowView.h */; settings = {ATTRIBUTES = (Project, ); }; }; + F6111E21AFC6648E4CCF23ADF1534A92 /* YGNodePrint.h in Headers */ = {isa = PBXBuildFile; fileRef = 3F04FC67983BCB8B0133D4FDF259F902 /* YGNodePrint.h */; settings = {ATTRIBUTES = (Project, ); }; }; + F629D2119784777989C5996C579D9FEA /* collection_notifications.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5AEC11B7D8BE2BF49CB5201864562B77 /* collection_notifications.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + F6DD2E8558C3AEEFFE13FF6173829609 /* RCTUIUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = 18BBA1197A2DF34B3FC8D26DF7755591 /* RCTUIUtils.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + F7023D0E59F8B127BB09AEDFB624E3AC /* RCTFileRequestHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 622B78651F1679F7CAEDD1BE863DFB36 /* RCTFileRequestHandler.m */; }; + F7BDC969B9549E67A709DAB647D57F9D /* RNSVGUnits.h in Headers */ = {isa = PBXBuildFile; fileRef = 45DB220CA1FB09F4FA1F9DD2AEB340A3 /* RNSVGUnits.h */; settings = {ATTRIBUTES = (Project, ); }; }; + F7F8E08B6ADA4FC657F88F42426CBEF4 /* RCTModuleMethod.mm in Sources */ = {isa = PBXBuildFile; fileRef = E00BF349A07349D98BB57B31FD1592EA /* RCTModuleMethod.mm */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + F83743BF8358D71BA781DE66513B6444 /* AIRMapPolygon.h in Headers */ = {isa = PBXBuildFile; fileRef = 110B6724BE58C54B05F2DD2D4FEB3772 /* AIRMapPolygon.h */; settings = {ATTRIBUTES = (Project, ); }; }; + F8BB9632D2D220AFAB4C952714CF001E /* TurboCxxModule.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 954674C96F0A2FD3F1323A355DEF0E34 /* TurboCxxModule.cpp */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + F8D588C2703F5D210EEECFD71FFC8D0A /* RCTMultipartDataTask.m in Sources */ = {isa = PBXBuildFile; fileRef = AEC4536C673A54BA1964886F881D2AF0 /* RCTMultipartDataTask.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + F8DE12A1757E41AF5E09C878F1FEAB74 /* RCTImageEditingManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 2389E7E0084441B99503584973879F56 /* RCTImageEditingManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + F90176BA829F5FF9E203B2A653503636 /* RCTLinkingManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 048DD0B37371C943B49DBD169699697B /* RCTLinkingManager.m */; }; + F92BF8DD334A13E0BF9127172AB7903F /* shared_realm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 49E12CC2FAC9E129F13B618C9DAA90E5 /* shared_realm.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + F95B02383551CA8A466FFAB124AFE178 /* RNSVGGroup.m in Sources */ = {isa = PBXBuildFile; fileRef = 483A3BD2B103D243C3B5A7FA1C4596DD /* RNSVGGroup.m */; }; + F9712D5B2F12EDB023C41C94AC1867E5 /* RCTBlobCollector.h in Headers */ = {isa = PBXBuildFile; fileRef = 45ADC42A5608B722F30A12FE991AECE6 /* RCTBlobCollector.h */; settings = {ATTRIBUTES = (Project, ); }; }; + FA1DE21FDC2B1F347EB58DF896893A81 /* RNSVGVBMOS.h in Headers */ = {isa = PBXBuildFile; fileRef = 526775C360C9261EBFC425EEE0EE2015 /* RNSVGVBMOS.h */; settings = {ATTRIBUTES = (Project, ); }; }; + FA2A89EB79BCDD16506C364E65E5FC07 /* jsc_value.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2F85DB3BCA6D79890BF94BACDC85B988 /* jsc_value.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + FA3120364BF59C285224970313A10607 /* RCTConvert+Transform.h in Headers */ = {isa = PBXBuildFile; fileRef = 73E4071EE596A46AF46AA27785E00BD6 /* RCTConvert+Transform.h */; settings = {ATTRIBUTES = (Project, ); }; }; + FA8B239D404AC60E2E111F642D0644CC /* RCTOneSignalEventEmitter.h in Headers */ = {isa = PBXBuildFile; fileRef = 5299433FFB7D1A3298297D291DCCDC53 /* RCTOneSignalEventEmitter.h */; settings = {ATTRIBUTES = (Project, ); }; }; + FA9C89225F2FDF603D29EB2B901FA966 /* RCTStyleAnimatedNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 202040057C833899B7387C97B3A1AB21 /* RCTStyleAnimatedNode.m */; }; + FB030E0B40723163A8A5CC37778237DB /* QBCheckmarkView.m in Sources */ = {isa = PBXBuildFile; fileRef = 6D66414981C1C0B3B9555AC1D0FF9F71 /* QBCheckmarkView.m */; }; + FB57AF0CA382F38D591536D65FF08F8E /* RCTConvert+UIPageViewControllerTransitionStyle.h in Headers */ = {isa = PBXBuildFile; fileRef = BCF2DCAD493203C1F4D684B7A5CF9BAC /* RCTConvert+UIPageViewControllerTransitionStyle.h */; settings = {ATTRIBUTES = (Project, ); }; }; + FB6312092E83657A46BDFC918E95DA76 /* ms.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 2822AB6E0A86A0CE312F2F0FD622268A /* ms.lproj */; }; + FBD693849E7BB51C7402A16BF51B981F /* RCTBaseTextInputViewManager.h in Headers */ = {isa = PBXBuildFile; fileRef = C77821C156B9BCA08618C10785BD9B9C /* RCTBaseTextInputViewManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + FBDC7BE8C1503A3071C3D091CA936188 /* object_store.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9A3D01808ACF10C1760FF3C15CD00416 /* object_store.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + FBFE0093DDB3ED3A392B377E9E93342A /* AIRMapCircleManager.m in Sources */ = {isa = PBXBuildFile; fileRef = DE3E28A67F6DDB66103DD5B588F2C718 /* AIRMapCircleManager.m */; }; + FC2E8FB25A54859C01481ED8540CF081 /* RNSVGVectorEffect.h in Headers */ = {isa = PBXBuildFile; fileRef = B3483F4B900D3BC1E80FCA9F8D36BA5D /* RNSVGVectorEffect.h */; settings = {ATTRIBUTES = (Project, ); }; }; + FC4441E9E468C1CD09B31A7237E18623 /* RNSVGMarkerManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 53D98E741ECB98495A273D4401BDBE03 /* RNSVGMarkerManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + FC860918E0749AB204DFF627C64D3B47 /* UIImage+Extension.h in Headers */ = {isa = PBXBuildFile; fileRef = FD9AFB930F448B2F372B8557499F0B38 /* UIImage+Extension.h */; settings = {ATTRIBUTES = (Project, ); }; }; + FCD52B1CE0C34C39BFBF89800E9F4078 /* instrumentation.h in Headers */ = {isa = PBXBuildFile; fileRef = E77DEB601F24379C5CEC66EE3A1C906E /* instrumentation.h */; settings = {ATTRIBUTES = (Project, ); }; }; + FD4D0DD602D22166EE3C70F2DC7FD77C /* RCTCamera.m in Sources */ = {isa = PBXBuildFile; fileRef = DFB0EC4DCE35631FB5239169ED43FB41 /* RCTCamera.m */; }; + FE16727436A95748912C99C98B6492EC /* Keyframe.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1CD58FB27E57B354F2E6FE2FB0F8B520 /* Keyframe.swift */; }; + FE4FB0028DF36126FD4640F4D1B9880F /* RCTUIManager.m in Sources */ = {isa = PBXBuildFile; fileRef = E065EBEC80CA333B0D3A4D980E341B57 /* RCTUIManager.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + FE51DF12544DD60D0132080A5ADDCF5C /* work_queue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FF8FE1D9B7F60A71648548469617A952 /* work_queue.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_ENABLE_SYNC"; }; }; + FE7C9F57D7543ED66FB6277018A8B366 /* RCTActivityIndicatorViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 99E279928C71E2B5089DF84B31383376 /* RCTActivityIndicatorViewManager.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + FEEDE54355C854EB50B1A5FBF7A1132F /* RCTModalHostViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = F69FCAFB04BBC7FC6818A80CFB36E1BA /* RCTModalHostViewManager.m */; settings = {COMPILER_FLAGS = "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32 -Wno-documentation"; }; }; + FF07E12B8A58DA433D84D9A60197B004 /* CameraFocusSquare.h in Headers */ = {isa = PBXBuildFile; fileRef = F66F35D11FB0387EA828F51B51A7C135 /* CameraFocusSquare.h */; settings = {ATTRIBUTES = (Project, ); }; }; + FF4BE5817399602319491EBE094444E0 /* RNDateTimePicker.m in Sources */ = {isa = PBXBuildFile; fileRef = 01A4F4B0C2282DA7750838FAF4F634B1 /* RNDateTimePicker.m */; }; + FFEF593AA8F8A9F15DAAAFD8E270FA2C /* RNSVGMarker.m in Sources */ = {isa = PBXBuildFile; fileRef = DA36CA9A9954E7D464528822C76B6067 /* RNSVGMarker.m */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 02DE2AD632CC789AE4C53D8BA0DB09B7 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 0B967D7F8561D42493EE289EC8D450D1; + remoteInfo = "lottie-ios"; + }; + 04536ADB0FC346310F46F67C4ABEA7A1 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 1BEE828C124E6416179B904A9F66D794; + remoteInfo = React; + }; + 060B7448A2682BF10FC97F03740C79B1 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 11989A5E568B3B69655EE0C13DCDA3F9; + remoteInfo = "React-RCTActionSheet"; + }; + 0616362648A7CB71E8F8669260CBAD1E /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 651511D7DA7F07F9FC9AA40A2E86270D; + remoteInfo = "React-RCTNetwork"; + }; + 09943A248BD149780C22B797D88F7479 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = D20469A9A1E5CFB26045EAEBE3F88E5E; + remoteInfo = RCTTypeSafety; + }; + 0DCA92E3530266BC4E919F2E2352759D /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 37B9DF6C4D55BD05E9174EBA51F8750C; + remoteInfo = "Pods-iLink"; + }; + 11EBBC963AA760C78478362CDF04E848 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 4F265533AAB7C8985856EC78A33164BB; + remoteInfo = "React-RCTImage"; + }; + 12CFDC1A33B230AA6CEE700AA4F9B3EF /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = FF879E718031128A75E7DE54046E6219; + remoteInfo = RNReanimated; + }; + 1499298EA36A4B742F5ABFBC7D45FE67 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 7ACAA9BE580DD31A5CB9D97C45D9492D; + remoteInfo = "React-Core"; + }; + 159AB5CC71007B0C11E225CA7F9EAA01 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 4F265533AAB7C8985856EC78A33164BB; + remoteInfo = "React-RCTImage"; + }; + 1820BAFC2A5BD6050E425C6DD7D32C8B /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 651511D7DA7F07F9FC9AA40A2E86270D; + remoteInfo = "React-RCTNetwork"; + }; + 1B89B1F4274148ABDDB990DDAD073488 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 7ACAA9BE580DD31A5CB9D97C45D9492D; + remoteInfo = "React-Core"; + }; + 219610D999F96EAA808DC224973E27E7 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = D0EFEFB685D97280256C559792236873; + remoteInfo = glog; + }; + 243823EBD0483F6CAB6E7994C7AAD06F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = F3966F664F3CFAEFAB57C40FB54D3788; + remoteInfo = TOCropViewController; + }; + 249B0337B38417B76DBEB431165DE0E9 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = FA877ADC442CB19CF61793D234C8B131; + remoteInfo = "React-jsi"; + }; + 253D900998BD052F437F96B97CD29277 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 210EB05CEC7AD9C148F90F752DE74C48; + remoteInfo = OneSignal; + }; + 256A763C855611BDA5D233575A798343 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 7ACAA9BE580DD31A5CB9D97C45D9492D; + remoteInfo = "React-Core"; + }; + 261CCBB1F89CA645973857C96668A1DA /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 7ACAA9BE580DD31A5CB9D97C45D9492D; + remoteInfo = "React-Core"; + }; + 28A57A057A78D12032916DA8D10144E6 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 4F265533AAB7C8985856EC78A33164BB; + remoteInfo = "React-RCTImage"; + }; + 29BF19A879F51490DED918DE9DBBA599 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 1BEE828C124E6416179B904A9F66D794; + remoteInfo = React; + }; + 2AFA01A8B60A38195D3572A8B41C3C93 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = D0EFEFB685D97280256C559792236873; + remoteInfo = glog; + }; + 2BBE8AF3236895840BC643556EE2F17E /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = C3496D0495E700CF08A90C41EA8FA4BB; + remoteInfo = FBReactNativeSpec; + }; + 2D44CE22229E74446998A2737722C511 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = F7D033C4C128EECAA020990641FA985F; + remoteInfo = "React-jsinspector"; + }; + 2D92B7E520A26C9E238A181EBE44DE0C /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = F3966F664F3CFAEFAB57C40FB54D3788; + remoteInfo = TOCropViewController; + }; + 2F90F1E5C4D69908590DE4C5717C59D8 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 214E42634D1E187D876346D36184B655; + remoteInfo = RNScreens; + }; + 32792FBD42C775745F93BBF40066085D /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = DE32677FA772BFFD0172EB7EE9E4E7E9; + remoteInfo = RNSVG; + }; + 33E7DCF5CD18F7357908FDE23AB84A40 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 7ACAA9BE580DD31A5CB9D97C45D9492D; + remoteInfo = "React-Core"; + }; + 34C872083B9B29BC0EF7ADEB120F7585 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 7ACAA9BE580DD31A5CB9D97C45D9492D; + remoteInfo = "React-Core"; + }; + 3699D257FAA5A38F33A724F1E5817A47 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = FA877ADC442CB19CF61793D234C8B131; + remoteInfo = "React-jsi"; + }; + 3956CDC1B91D5310AE774E88B7EA01DE /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = B6D5DD49633DFF0657B8C3F08EB3ABA9; + remoteInfo = ReactCommon; + }; + 3A5ED20F06E9170DE8FC2F2C5F06699B /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = F7D033C4C128EECAA020990641FA985F; + remoteInfo = "React-jsinspector"; + }; + 3A7B0AA88514D71DE053B8045621ADDB /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = A4F685BE3CAC127BDCE4E0DBBD88D191; + remoteInfo = Folly; + }; + 3C1F61A8132B8DD099DBA900BA5A1036 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = D0EFEFB685D97280256C559792236873; + remoteInfo = glog; + }; + 3ECA02605608B0FE42D3D83C671AC2C5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = C3496D0495E700CF08A90C41EA8FA4BB; + remoteInfo = FBReactNativeSpec; + }; + 4089AB2E4A4709FC523071B1B4D4B024 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 5CB57245CFAA41531DA0E71363484F3B; + remoteInfo = SajjadBlurOverlay; + }; + 40925CCE575759B2952BA753B6C2D29B /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 463F41A7E8B252F8AC5024DA1F4AF6DA; + remoteInfo = "React-cxxreact"; + }; + 40AE5E455A79C5FE816158814A0ACF45 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 6FE9147F8AAA4DE676C190F680F47AE2; + remoteInfo = "React-RCTLinking"; + }; + 4546FFD60025A41FCA592E2E2EF8FE7A /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 7ACAA9BE580DD31A5CB9D97C45D9492D; + remoteInfo = "React-Core"; + }; + 4A3B432E3291422FA99EB9E1022983A2 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = A4F685BE3CAC127BDCE4E0DBBD88D191; + remoteInfo = Folly; + }; + 4A61991E1BD4745430D6607EFF9BCD47 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 53D121F9F9BB0F8AC1C94A12C5A8572F; + remoteInfo = "React-RCTVibration"; + }; + 4AE739B886DF8A39046A75C25D081547 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 7ACAA9BE580DD31A5CB9D97C45D9492D; + remoteInfo = "React-Core"; + }; + 4F929AD5AF224CD92CFA64B192B5DE4F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 8CC4EAA817AA86310D1900F1DAB3580F; + remoteInfo = FBLazyVector; + }; + 5083C4D789EF4D31F7B55C2DD615D684 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 938CCE22F6C4094B3FB6CF1478579E4B; + remoteInfo = "React-RCTAnimation"; + }; + 50D5AB7DA6CC0D8E18193184084D70DA /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 11989A5E568B3B69655EE0C13DCDA3F9; + remoteInfo = "React-RCTActionSheet"; + }; + 51B1A6CD374476DB2AA026968AA60161 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 807428FE76D80865C9F59F3502600E89; + remoteInfo = RNDeviceInfo; + }; + 529F99E27A22BBE92C6ADB0553997C4A /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 680299219D3A48D42A648AF6706275A9; + remoteInfo = "React-RCTSettings"; + }; + 52A3D6CB3329DBF7F4EA26262059BFAD /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 1BEE828C124E6416179B904A9F66D794; + remoteInfo = React; + }; + 52DF1D7A717D588BDB50E5BAE178F2EE /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = FA877ADC442CB19CF61793D234C8B131; + remoteInfo = "React-jsi"; + }; + 52EE9A8765F67AF3DF3D3AF510196D75 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 89F573A6B1292B3B2296B2206BFDC3D7; + remoteInfo = RNCAsyncStorage; + }; + 5325C86098DE6E6713F5CA0E2A5F5AEF /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = FA877ADC442CB19CF61793D234C8B131; + remoteInfo = "React-jsi"; + }; + 5339E8F8BBE499E642F0498E02764D15 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 95D98F901D07557EF7CA38D3F03832C5; + remoteInfo = "React-RCTBlob"; + }; + 548B18953167CA6D8E3AF691F7E8BEF0 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 680299219D3A48D42A648AF6706275A9; + remoteInfo = "React-RCTSettings"; + }; + 5596F90E3C1B78AACB352F46467A14D3 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = B6D5DD49633DFF0657B8C3F08EB3ABA9; + remoteInfo = ReactCommon; + }; + 55A58CDF63DC66952C58486A412B2B36 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = B6D5DD49633DFF0657B8C3F08EB3ABA9; + remoteInfo = ReactCommon; + }; + 5922B9976D0338EA19DCD934AA85DB11 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = D20469A9A1E5CFB26045EAEBE3F88E5E; + remoteInfo = RCTTypeSafety; + }; + 5D160B0A51F4C805396DD327EF68CEF7 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 1BEE828C124E6416179B904A9F66D794; + remoteInfo = React; + }; + 5F031BEB9916DF6B61FCEF2EF0B6316C /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 7ACAA9BE580DD31A5CB9D97C45D9492D; + remoteInfo = "React-Core"; + }; + 60E6BF131DFC3A1079EC34AE121C6404 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 7ACAA9BE580DD31A5CB9D97C45D9492D; + remoteInfo = "React-Core"; + }; + 63CA99D1D749406FF8E840201FDF1E92 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 463F41A7E8B252F8AC5024DA1F4AF6DA; + remoteInfo = "React-cxxreact"; + }; + 65EC53608E58F2F4B9AE26E6FBBC53B7 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = E7E7CE52C8C68B17224FF8C262D80ABF; + remoteInfo = RCTRequired; + }; + 68268ADF01C2E8674015B3039BC73535 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 463F41A7E8B252F8AC5024DA1F4AF6DA; + remoteInfo = "React-cxxreact"; + }; + 68B20FBE79B43D2E8B51F6575C250BD5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 651511D7DA7F07F9FC9AA40A2E86270D; + remoteInfo = "React-RCTNetwork"; + }; + 6B9EC106EC8F7D539F0400A1DD64C627 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = D20469A9A1E5CFB26045EAEBE3F88E5E; + remoteInfo = RCTTypeSafety; + }; + 6C04841EABA7D9AB1A077D8608CF16C8 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = D0EFEFB685D97280256C559792236873; + remoteInfo = glog; + }; + 70AC431DC37B5CD74A2FE57E5A2AA0C8 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = FA877ADC442CB19CF61793D234C8B131; + remoteInfo = "React-jsi"; + }; + 71536967CEFC57358F8D49A7F67DCBC9 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = ED2506AE7DE35D654F61254441EA7155; + remoteInfo = "boost-for-react-native"; + }; + 72797DD8780DD56AD3702FB593E3F36B /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = A4F685BE3CAC127BDCE4E0DBBD88D191; + remoteInfo = Folly; + }; + 781144F119BDEF036581CF94C2E3631D /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 1BEE828C124E6416179B904A9F66D794; + remoteInfo = React; + }; + 7BF09CD9C3FDAEDA1EBF93C2F65A1D82 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 210EB05CEC7AD9C148F90F752DE74C48; + remoteInfo = OneSignal; + }; + 7DED747D72FC05CB57D8CB03312FF9DE /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 2D4D3D5AD93ADCCF3DD45A88009E48D6; + remoteInfo = "TOCropViewController-TOCropViewControllerBundle"; + }; + 7F1E01B27DB18748FE0FB845A1D500E3 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 7ACAA9BE580DD31A5CB9D97C45D9492D; + remoteInfo = "React-Core"; + }; + 7F95060D27595AD7921EBBAB10499CEF /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 1BEE828C124E6416179B904A9F66D794; + remoteInfo = React; + }; + 81495967A38094D942C06BE9AED1B503 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 8CC4EAA817AA86310D1900F1DAB3580F; + remoteInfo = FBLazyVector; + }; + 84A9E91343D2DB19ED342946B699925D /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 0B967D7F8561D42493EE289EC8D450D1; + remoteInfo = "lottie-ios"; + }; + 8740BC52A4D2A8DBF1B5C0612FC1C6D2 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = E7E7CE52C8C68B17224FF8C262D80ABF; + remoteInfo = RCTRequired; + }; + 87CECF7A64F7B9635BC0EDBFFEF1AD5A /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 1BEE828C124E6416179B904A9F66D794; + remoteInfo = React; + }; + 8BCEA2C0DB3C56D087158D8D59665F08 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = DA0709CAAD589C6E7963495210438021; + remoteInfo = "React-jsiexecutor"; + }; + 8C444E1BFE59F35C3B30185DBDC026C5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = ED2506AE7DE35D654F61254441EA7155; + remoteInfo = "boost-for-react-native"; + }; + 8D496847AB6DADD50725A325625D586B /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 7ACAA9BE580DD31A5CB9D97C45D9492D; + remoteInfo = "React-Core"; + }; + 90B6CEE8DE25387A9C96E84D79BD0FAD /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = ADE7D4B70FB12900D442F75D3144441F; + remoteInfo = RealmJS; + }; + 91232AC2802D39EF19B269D76419C76C /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = A4F685BE3CAC127BDCE4E0DBBD88D191; + remoteInfo = Folly; + }; + 9197CCA9DB47BCD372C899E1FA3CD63F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 2AB2EF542954AB1C999E03BFEF8DE806; + remoteInfo = DoubleConversion; + }; + 91E442A21533F5F7D7B3C9B20F87E9DD /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = FA877ADC442CB19CF61793D234C8B131; + remoteInfo = "React-jsi"; + }; + 9264BB35A91254ACA3C15FD17AC0EDEF /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = A4F685BE3CAC127BDCE4E0DBBD88D191; + remoteInfo = Folly; + }; + 93FDD7AEB8DD38364F510D4AB1ABB957 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 2AB2EF542954AB1C999E03BFEF8DE806; + remoteInfo = DoubleConversion; + }; + 952701F7DDC01731EA4416658F3C280A /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 2B25F90D819B9ADF2AF2D8733A890333; + remoteInfo = Yoga; + }; + 96106F89558C22261F855FDA9FE56718 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = A4F685BE3CAC127BDCE4E0DBBD88D191; + remoteInfo = Folly; + }; + 96453826E33A51A96E4CD754238B9FCD /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 2AB2EF542954AB1C999E03BFEF8DE806; + remoteInfo = DoubleConversion; + }; + 99ECF98FA9FCAF8D666E07E658AC6CD7 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = DA0709CAAD589C6E7963495210438021; + remoteInfo = "React-jsiexecutor"; + }; + 9C423F70FB279B7D0EAC646AF13F0AD2 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 7ACAA9BE580DD31A5CB9D97C45D9492D; + remoteInfo = "React-Core"; + }; + 9EDC33CD06997FD575286184A4C95C0F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 1BEE828C124E6416179B904A9F66D794; + remoteInfo = React; + }; + A05C30F29C9A218A5697035F405837DF /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 7ACAA9BE580DD31A5CB9D97C45D9492D; + remoteInfo = "React-Core"; + }; + A15CA5171EB1BAFDB53D048DCFC05D22 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = F1401264B2796C32CF72C6C2CB10D487; + remoteInfo = "react-native-viewpager"; + }; + A3766CDDC53DFFC54655C31B9B93D6DB /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 1BEE828C124E6416179B904A9F66D794; + remoteInfo = React; + }; + A3A6FB003152E5921D82443FCB05159B /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 7ACAA9BE580DD31A5CB9D97C45D9492D; + remoteInfo = "React-Core"; + }; + A6CCAA85497AC33F56FCFD7286A765E8 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = ED2506AE7DE35D654F61254441EA7155; + remoteInfo = "boost-for-react-native"; + }; + AB6EC25F3D921F9038F3DE301C02641E /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 7ACAA9BE580DD31A5CB9D97C45D9492D; + remoteInfo = "React-Core"; + }; + AE8F8C09539D4D32151B9789480DCABE /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = DBD2D83E10F8B7D3F4E0E34E6A9FCFA6; + remoteInfo = "React-RCTText"; + }; + B14E5289E00F0644A447B5FED1A22D8C /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 1BEE828C124E6416179B904A9F66D794; + remoteInfo = React; + }; + B2C184B904252F4D0A34409CC39C8FBB /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 2AB2EF542954AB1C999E03BFEF8DE806; + remoteInfo = DoubleConversion; + }; + B4BF509BD23EA7AD1A7B84988616F4AF /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 6D979AB5FDA2E858850D9903776A30B3; + remoteInfo = "RNImageCropPicker-QBImagePicker"; + }; + B5B01067C468BD7EC8F421B4677137C9 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 1BBA090545F0B723C18EFF83953F301F; + remoteInfo = "react-native-geolocation"; + }; + B80C7C9BA66BCEBC06D5A6257B2FD9CE /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 2B25F90D819B9ADF2AF2D8733A890333; + remoteInfo = Yoga; + }; + B8A9E89C7AB77485BEE90F5857063969 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 95D98F901D07557EF7CA38D3F03832C5; + remoteInfo = "React-RCTBlob"; + }; + B944C3194164FDDA228D743D3F94CB13 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 4F265533AAB7C8985856EC78A33164BB; + remoteInfo = "React-RCTImage"; + }; + BFB031EAC242030F8BBDFFC57D75D78F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 2AB2EF542954AB1C999E03BFEF8DE806; + remoteInfo = DoubleConversion; + }; + C0C2A6413B8548D4D4AA28CCBD282A3C /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = D0EFEFB685D97280256C559792236873; + remoteInfo = glog; + }; + C11DFD256A9E35FBBE146D4BA07A4387 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = AD904F32069787EFB2DFFE05EB82F5BD; + remoteInfo = GCDWebServer; + }; + C15B720F33155138E6B12B2862335389 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 1BEE828C124E6416179B904A9F66D794; + remoteInfo = React; + }; + C2749342093765A7BC5197724C5FC89F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 0D82774D2A533D3FFAE27CAB4A6E9CB2; + remoteInfo = RNImageCropPicker; + }; + C531F82B5DD0A91D6D6541DFC87E9F45 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 2AB2EF542954AB1C999E03BFEF8DE806; + remoteInfo = DoubleConversion; + }; + C60FA8468D574878EFD26FE358E7F2DA /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 7ACAA9BE580DD31A5CB9D97C45D9492D; + remoteInfo = "React-Core"; + }; + C7E9F32EA59910A77052372031ACA0BF /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = C1A1C02FAD3999B6DAC48835EC954521; + remoteInfo = "react-native-maps"; + }; + D030511D660C56AFFA1B849EA4CA7211 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 463F41A7E8B252F8AC5024DA1F4AF6DA; + remoteInfo = "React-cxxreact"; + }; + D44C9B07BE4631DDEE85E83F31B6F1D5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = A4F685BE3CAC127BDCE4E0DBBD88D191; + remoteInfo = Folly; + }; + D5C51F8EF0FCF15B34A8A91FC3D5304C /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = DBD2D83E10F8B7D3F4E0E34E6A9FCFA6; + remoteInfo = "React-RCTText"; + }; + D5E9C27F5981E4B12B852F91EB7C0262 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 1BEE828C124E6416179B904A9F66D794; + remoteInfo = React; + }; + D6AFD9E395D895E28CDB0D1113EA4D8C /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 938CCE22F6C4094B3FB6CF1478579E4B; + remoteInfo = "React-RCTAnimation"; + }; + D9A53FE194FAD67E6E9AF3F6153FFED3 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 730404A8DD175FF6B60B6A43DC6E554B; + remoteInfo = "react-native-camera"; + }; + DD0D6C14CAD34BE5E205023B5BFD12B7 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 96150F524B245896B800F84F369A9A5A; + remoteInfo = RNVectorIcons; + }; + E10DF6F0478BD09C07A8785463495A0B /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = D0A4E77DD13672F3E2E1D9593F999DBA; + remoteInfo = "lottie-react-native"; + }; + E2B617EECA49AB0A8264365CC6CDC439 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = ED3E7F50BBDE8B9088929C3E3DC5FA19; + remoteInfo = "react-native-onesignal"; + }; + E40093CCEA7AC0EBD2BA8970C0640BF2 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = F7D033C4C128EECAA020990641FA985F; + remoteInfo = "React-jsinspector"; + }; + E47E0FB15CB2D5852AAABF8E6547843E /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 6FE9147F8AAA4DE676C190F680F47AE2; + remoteInfo = "React-RCTLinking"; + }; + E5040E14BB348FE8FD7EDD25A51AA7A0 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = ED2506AE7DE35D654F61254441EA7155; + remoteInfo = "boost-for-react-native"; + }; + E5D8C53B7733DB0CEB9D67D87B52164F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = D0EFEFB685D97280256C559792236873; + remoteInfo = glog; + }; + E6B09173D5742DAC20B67E4E747D5E01 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 53D121F9F9BB0F8AC1C94A12C5A8572F; + remoteInfo = "React-RCTVibration"; + }; + E6B0E19AA8F1B605F594996B9E5C60A0 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 7ACAA9BE580DD31A5CB9D97C45D9492D; + remoteInfo = "React-Core"; + }; + E71597FEE01BD2262197F6C16C52733D /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 1BEE828C124E6416179B904A9F66D794; + remoteInfo = React; + }; + E84E1F553A336639F903B8F345B67806 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 1BEE828C124E6416179B904A9F66D794; + remoteInfo = React; + }; + ED885FC911FB6E83546EEB5523A27B2E /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = B9E8F4CA2A4A8599389FEB665A9B96FF; + remoteInfo = RNGestureHandler; + }; + EE3F1062133ADB15A256302551D03924 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = AD904F32069787EFB2DFFE05EB82F5BD; + remoteInfo = GCDWebServer; + }; + EFD258FC5135485ECEEA17485E1669FF /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = A4F685BE3CAC127BDCE4E0DBBD88D191; + remoteInfo = Folly; + }; + F034679020C97CF221A628C95C846B80 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 1BEE828C124E6416179B904A9F66D794; + remoteInfo = React; + }; + F1522703EC655A1CB29578566EDEBF2B /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = E7E7CE52C8C68B17224FF8C262D80ABF; + remoteInfo = RCTRequired; + }; + F171942A310F1BC69D8547EDC828B9A2 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = A4F685BE3CAC127BDCE4E0DBBD88D191; + remoteInfo = Folly; + }; + F3073F50139F16A470FF9EBE6126DBD4 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 1BEE828C124E6416179B904A9F66D794; + remoteInfo = React; + }; + F33EA2BF9E6D0AEF6814318FB0C75ABF /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = D760AF58E12ABBB51F84160FB02B5F39; + remoteInfo = RNDateTimePicker; + }; + F52E188372E633D392624F3D051AE30F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = D0EFEFB685D97280256C559792236873; + remoteInfo = glog; + }; + F9C3FF51DC7E5D858F8B8FD0E62FE949 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 651511D7DA7F07F9FC9AA40A2E86270D; + remoteInfo = "React-RCTNetwork"; + }; + FC0D067C68170AEFF74FEF14919A6ECE /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = D559A7058936768CC7EA852223BBA953; + remoteInfo = "Pods-iLink-tvOS"; + }; + FCA276B638C7FFACFC181693C51C67E3 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 680E6A93D7913762C0337D61579E42E6; + remoteInfo = RNI18n; + }; + FEF477C234C951B563FAAABB991E1E6F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = E16E206437995280D349D4B67695C894; + remoteInfo = "React-CoreModules"; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXFileReference section */ + 002B1007E334F58425787CB6CCAF3168 /* RNSVGRectManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGRectManager.h; sourceTree = ""; }; + 003C835D4E049A87A19B4AD48969AF48 /* CompositionLayersInitializer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompositionLayersInitializer.swift; path = "lottie-swift/src/Private/LayerContainers/Utility/CompositionLayersInitializer.swift"; sourceTree = ""; }; + 007E258C6DF7E87E03F7AAA368A11891 /* RCTSurfaceRootShadowViewDelegate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTSurfaceRootShadowViewDelegate.h; sourceTree = ""; }; + 00DFAF11C9E8896FE31472633918C212 /* AIRMapPolygonManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMapPolygonManager.h; path = lib/ios/AirMaps/AIRMapPolygonManager.h; sourceTree = ""; }; + 0167238ECFB7B1D1BF9823A1A485C87D /* Yoga-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Yoga-dummy.m"; sourceTree = ""; }; + 01A4F4B0C2282DA7750838FAF4F634B1 /* RNDateTimePicker.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNDateTimePicker.m; path = ios/RNDateTimePicker.m; sourceTree = ""; }; + 01A868ADD27794E34BC8E94E1552922B /* RCTSRWebSocket.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTSRWebSocket.h; path = Libraries/WebSocket/RCTSRWebSocket.h; sourceTree = ""; }; + 01AD93A050E5E2EF9CED36A6280344D3 /* RNSVGImage.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGImage.h; sourceTree = ""; }; + 021AE3D22955FE68DC8240C4AA972CEF /* RCTEventAnimation.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTEventAnimation.h; sourceTree = ""; }; + 024520CC7CC553E3E3AA3C9C701F27B7 /* RCTScrollContentViewManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTScrollContentViewManager.h; sourceTree = ""; }; + 0290C60394E0255570BCAAA91E9EB915 /* RCTBlobManager.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTBlobManager.mm; sourceTree = ""; }; + 02C45EC3B04F5ABFB76837834161ED55 /* VectorsExtensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VectorsExtensions.swift; path = "lottie-swift/src/Private/Utility/Primitives/VectorsExtensions.swift"; sourceTree = ""; }; + 030D0147B6B4FD55440FAB687EB942DC /* Font.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Font.swift; path = "lottie-swift/src/Private/Model/Text/Font.swift"; sourceTree = ""; }; + 03247490292940C767696C1D0BCA9F4D /* React-RCTAnimation.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-RCTAnimation.release.xcconfig"; sourceTree = ""; }; + 035CA209D55884AEE962D8DA1C524D77 /* jsi.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = jsi.cpp; sourceTree = ""; }; + 03695D10E13C4C5C67C641A735EA74A9 /* RCTImageCache.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTImageCache.h; path = Libraries/Image/RCTImageCache.h; sourceTree = ""; }; + 045A27D42D1435E5379B46EE9ADB5F39 /* AIRMapLocalTile.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRMapLocalTile.m; path = lib/ios/AirMaps/AIRMapLocalTile.m; sourceTree = ""; }; + 047E4BFFF5826D403EF9E4A2F3176B6C /* RCTImageSource.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTImageSource.m; sourceTree = ""; }; + 048DD0B37371C943B49DBD169699697B /* RCTLinkingManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTLinkingManager.m; sourceTree = ""; }; + 04B39E7C37DEEA604BED0EFA7CBF1BE9 /* RNNativeViewHandler.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNNativeViewHandler.m; sourceTree = ""; }; + 0510862F2068AB90B9770E15E2F6D4AE /* RNSVGTSpanManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGTSpanManager.m; sourceTree = ""; }; + 051C3565E3E172142562602851207A37 /* REAPropsNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = REAPropsNode.h; sourceTree = ""; }; + 05203268CD23FB609236E0995FDC2892 /* Zocial.ttf */ = {isa = PBXFileReference; includeInIndex = 1; name = Zocial.ttf; path = Fonts/Zocial.ttf; sourceTree = ""; }; + 0523E4E2CD9F4685C272D2EE98CC5654 /* RNSVGText.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGText.h; sourceTree = ""; }; + 0543222B3B6C291A2352B74A7A6DFF58 /* RNGestureHandlerButton.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNGestureHandlerButton.h; path = ios/RNGestureHandlerButton.h; sourceTree = ""; }; + 0547922E63842181200838748964097D /* FaceDetectorManagerMlkit.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FaceDetectorManagerMlkit.h; path = ios/RN/FaceDetectorManagerMlkit.h; sourceTree = ""; }; + 054AA171BBE1DE3A8486BA1C735E804B /* RNPanHandler.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNPanHandler.m; sourceTree = ""; }; + 054F26ACE0CC13FF125209E274FFA997 /* RNSScreen.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNSScreen.h; path = ios/RNSScreen.h; sourceTree = ""; }; + 05507D88C44AEF586CB7EB8606FE6BBD /* Compression.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = Compression.m; path = ios/src/Compression.m; sourceTree = ""; }; + 0581213AD8DEECE7D880EE8A03E27CE8 /* RNDeviceInfo.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = RNDeviceInfo.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 05DE1B8F8DBC75DFECDEDACC0B473ED7 /* AIRMapCalloutManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMapCalloutManager.h; path = lib/ios/AirMaps/AIRMapCalloutManager.h; sourceTree = ""; }; + 05ECEAFD44F99129EBE85B4EC141A17D /* RCTDivisionAnimatedNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTDivisionAnimatedNode.h; sourceTree = ""; }; + 0627843B4DA84F62E1C07F0104E0E809 /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; + 0646A53BC77936B33302AD1671BB6513 /* RCTBaseTextShadowView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTBaseTextShadowView.m; sourceTree = ""; }; + 06489499588BFA8FD5E63DD6375CD533 /* libFolly.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libFolly.a; path = libFolly.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 06E34EEC66EDABFA4C144E5099D7C1DB /* uuid.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = uuid.cpp; sourceTree = ""; }; + 06F02220660F7DDEBE7B9D81E51A7E99 /* libPods-iLink-tvOSTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libPods-iLink-tvOSTests.a"; path = "libPods-iLink-tvOSTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 07686654082AD93DC196A14398E3FAD9 /* RectNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RectNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/RectNode.swift"; sourceTree = ""; }; + 078B280AD2E377AEE0181A7C7A735EB5 /* RNSScreenStackHeaderConfig.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNSScreenStackHeaderConfig.h; path = ios/RNSScreenStackHeaderConfig.h; sourceTree = ""; }; + 07EB356D81A2299BF9A6EE28167CAE77 /* React-RCTImage-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "React-RCTImage-dummy.m"; sourceTree = ""; }; + 0834A94C959FEA64893F8A2A0AA72243 /* RCTSafeAreaViewManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTSafeAreaViewManager.h; sourceTree = ""; }; + 08517D271BA44FE29820B605688EFB20 /* RCTDataRequestHandler.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTDataRequestHandler.h; path = Libraries/Network/RCTDataRequestHandler.h; sourceTree = ""; }; + 08553319BE575BBF155575EDA9AA2FE0 /* React-RCTActionSheet-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "React-RCTActionSheet-prefix.pch"; sourceTree = ""; }; + 090476E65205943F6F766C8008D7E5C0 /* RCTLinkingManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTLinkingManager.h; path = Libraries/LinkingIOS/RCTLinkingManager.h; sourceTree = ""; }; + 093F27844DF49E602404A1B537C132EA /* RCTFPSGraph.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTFPSGraph.m; sourceTree = ""; }; + 09528410B9816D23D7A2B7DD61BCBA4F /* Feather.ttf */ = {isa = PBXFileReference; includeInIndex = 1; name = Feather.ttf; path = Fonts/Feather.ttf; sourceTree = ""; }; + 09C6BDE5948349372DB4E21A885D702C /* Folly.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Folly.debug.xcconfig; sourceTree = ""; }; + 09CB5047A5859F61E04C3AF2C6D8C840 /* REAAllTransitions.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = REAAllTransitions.m; sourceTree = ""; }; + 0A11908C5E94F0F72F08DE8A0E0C2419 /* RCTDevLoadingView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTDevLoadingView.m; sourceTree = ""; }; + 0A26F7CDD2C592A3CA7DB437273831C0 /* RCTMultilineTextInputViewManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTMultilineTextInputViewManager.m; sourceTree = ""; }; + 0B4B2EA5E748971201EF995B8F59E109 /* Format.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = Format.cpp; path = folly/Format.cpp; sourceTree = ""; }; + 0B59B6976A11C40058D58B1B8E56B25D /* RCTBridge+Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RCTBridge+Private.h"; sourceTree = ""; }; + 0B780D272405552EB5929F4D01B2BC68 /* LICENSE.md */ = {isa = PBXFileReference; includeInIndex = 1; path = LICENSE.md; sourceTree = ""; }; + 0B876F6165B18EC9582BFD56D333E863 /* RCTURLRequestHandler.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTURLRequestHandler.h; sourceTree = ""; }; + 0B9CAD7894B97C12F2C1AB36BC90525B /* en.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = en.lproj; path = ios/QBImagePicker/QBImagePicker/en.lproj; sourceTree = ""; }; + 0BA6E866338D361320D7E854E6215949 /* BridgeJSCallInvoker.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = BridgeJSCallInvoker.cpp; path = jscallinvoker/ReactCommon/BridgeJSCallInvoker.cpp; sourceTree = ""; }; + 0BB6DC8A06CC9FA1ECD5091C4C8DC4B5 /* QBImagePickerController.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = QBImagePickerController.h; path = ios/QBImagePicker/QBImagePicker/QBImagePickerController.h; sourceTree = ""; }; + 0BD3CACF3E438F9A46D05C81FB52A8F4 /* RCTSafeAreaView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTSafeAreaView.h; sourceTree = ""; }; + 0BD992E676C696C4A5807168C24D99A6 /* object_schema.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = object_schema.cpp; sourceTree = ""; }; + 0C20662EC6F9242A5FC5B9AE39DB6F0F /* REAParamNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = REAParamNode.m; sourceTree = ""; }; + 0C7264A76474A80817CF8116E8ABAF2F /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; path = LICENSE; sourceTree = ""; }; + 0C764D730467B0BBFDA93746FCEAA1EE /* RNTapHandler.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNTapHandler.h; sourceTree = ""; }; + 0CB867173928E2D7F786DCDAB62240FA /* GradientValueProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GradientValueProvider.swift; path = "lottie-swift/src/Public/DynamicProperties/ValueProviders/GradientValueProvider.swift"; sourceTree = ""; }; + 0CBB9360A2E6B1A6704341335475E881 /* RCTAnimationUtils.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTAnimationUtils.m; sourceTree = ""; }; + 0CBD1DA515C93C165CD022F84B24780B /* React-Core-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "React-Core-dummy.m"; sourceTree = ""; }; + 0CC1122D088B445F35F4319CA38848DB /* RCTModuloAnimatedNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTModuloAnimatedNode.h; sourceTree = ""; }; + 0CEDE9F988A667E9E55A853581258D15 /* libRNI18n.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libRNI18n.a; path = libRNI18n.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 0CF550C2000E6F41286D2CFC64F661EB /* RCTDivisionAnimatedNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTDivisionAnimatedNode.m; sourceTree = ""; }; + 0D3C62D9661AAAF59F8100CE5472772C /* Stroke.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Stroke.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Stroke.swift"; sourceTree = ""; }; + 0D8ABA2FC542F9CDD329C616C38DF8AC /* RNSScreenStack.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNSScreenStack.m; path = ios/RNSScreenStack.m; sourceTree = ""; }; + 0D9D2DFD8FC0B804FEA775619D6BF5B4 /* LottieView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LottieView.swift; path = "lottie-swift/src/Public/iOS/LottieView.swift"; sourceTree = ""; }; + 0DC6DE70E81E2B7B2DEC0F4170D57F5F /* RNSScreen.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNSScreen.m; path = ios/RNSScreen.m; sourceTree = ""; }; + 0E24EF8266B3BE078D72FAD30DFF2240 /* BridgeJSCallInvoker.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = BridgeJSCallInvoker.h; path = jscallinvoker/ReactCommon/BridgeJSCallInvoker.h; sourceTree = ""; }; + 0E6A1C602BA20874C82464DDD8C4089B /* RNSVGGroup.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGGroup.h; sourceTree = ""; }; + 0E90BEA1E6B73EE372DBC2D9355CB855 /* RCTTypeSafety.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RCTTypeSafety.debug.xcconfig; sourceTree = ""; }; + 0E92D0841562A3204508FC42C13059F5 /* RCTSurface.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTSurface.mm; sourceTree = ""; }; + 0EE21BBBC993BD3DA708B0F040F7CE31 /* ro.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = ro.lproj; path = "Objective-C/TOCropViewController/Resources/ro.lproj"; sourceTree = ""; }; + 0F022DDDD97CFAECA9879483808F4C2E /* ImageCompositionLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageCompositionLayer.swift; path = "lottie-swift/src/Private/LayerContainers/CompLayers/ImageCompositionLayer.swift"; sourceTree = ""; }; + 0F348AA8D7BF5A580360B23180B7EB76 /* experiments-inl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "experiments-inl.h"; sourceTree = ""; }; + 0F8D5091C801A6ECB9A173DA0E385A29 /* liblottie-react-native.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "liblottie-react-native.a"; path = "liblottie-react-native.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 0F976C00DB4A61998FEC68DCA6BA0862 /* AnimatorNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimatorNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Protocols/AnimatorNode.swift"; sourceTree = ""; }; + 1060F6A20DF4B424EB8E5770766DC082 /* SingleValueProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SingleValueProvider.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/ValueProviders/SingleValueProvider.swift"; sourceTree = ""; }; + 107276AED3FD0E58036B1E70D78E8A5D /* Conv.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = Conv.cpp; path = folly/Conv.cpp; sourceTree = ""; }; + 1098464FAADD59B4F51D2730FA3385BC /* RCTInputAccessoryShadowView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTInputAccessoryShadowView.m; sourceTree = ""; }; + 109B2728F439BD0AB26EF7CD0163FF50 /* React-jsi.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = "React-jsi.podspec"; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 109BC27B744665E9D217F62ADC66D1C0 /* RCTSurfaceSizeMeasureMode.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTSurfaceSizeMeasureMode.mm; sourceTree = ""; }; + 110B6724BE58C54B05F2DD2D4FEB3772 /* AIRMapPolygon.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMapPolygon.h; path = lib/ios/AirMaps/AIRMapPolygon.h; sourceTree = ""; }; + 112AE75C00A2C2EC468BC4BE944635E8 /* RNScreens.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = RNScreens.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 1140E9408718C074ED106EB29D8E2B73 /* JSINativeModules.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = JSINativeModules.h; path = jsireact/JSINativeModules.h; sourceTree = ""; }; + 11528A71D7A137E87FC72192E74E5A18 /* ContainerView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ContainerView.swift; path = src/ios/LottieReactNative/ContainerView.swift; sourceTree = ""; }; + 11A603046F96373456579EF0B0B5430B /* RCTPropsAnimatedNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTPropsAnimatedNode.m; sourceTree = ""; }; + 11B4F4AFD4F5FE6CEF8F09868E7DCDC6 /* ImageCropPicker.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ImageCropPicker.h; path = ios/src/ImageCropPicker.h; sourceTree = ""; }; + 11EC3A8C350EEA3C24A10099139F29A9 /* RCTProfileTrampoline-arm.S */ = {isa = PBXFileReference; includeInIndex = 1; path = "RCTProfileTrampoline-arm.S"; sourceTree = ""; }; + 11F9A14F55C29BBF70BD82D763354523 /* GCDWebServer.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = GCDWebServer.debug.xcconfig; sourceTree = ""; }; + 11FD90EC41023E7F40A730B84FB23DDF /* RCTScrollViewManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTScrollViewManager.m; sourceTree = ""; }; + 1298C0BAB50611BC7B50E60676836F18 /* Star.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Star.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Star.swift"; sourceTree = ""; }; + 12ED3842C735B59A94777956559439C7 /* RNSVGPainter.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGPainter.m; sourceTree = ""; }; + 1303022B072FFAB643A445566CFC19AE /* RCTSourceCode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTSourceCode.m; sourceTree = ""; }; + 130BF0A98B7B733D7AAEFB2AD6C0CC18 /* Color.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Color.swift; path = "lottie-swift/src/Public/Primitives/Color.swift"; sourceTree = ""; }; + 1339A199AD548E37E548B5FF13637C1C /* OneSignal.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = OneSignal.release.xcconfig; sourceTree = ""; }; + 133B7808900C93D13A7EB7774B2EFC10 /* TOCropToolbar.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = TOCropToolbar.m; path = "Objective-C/TOCropViewController/Views/TOCropToolbar.m"; sourceTree = ""; }; + 133FEE3A6D3EF0BA7E1D406B4C0F3662 /* RCTProfile.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTProfile.m; sourceTree = ""; }; + 1366F3AE84DBA1E7AE4FFDC062A7CC87 /* RNSVGSvgView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGSvgView.m; sourceTree = ""; }; + 137015BB9FF6F82875A08649421F94AB /* RCTView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTView.m; sourceTree = ""; }; + 1371332780688EE631D20BFA6F2B52DF /* RCTRootViewDelegate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTRootViewDelegate.h; sourceTree = ""; }; + 1388C41DA8F5C85FE88D57F1B9D4AF4B /* RCTCxxMethod.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTCxxMethod.mm; sourceTree = ""; }; + 139B24AA1FF167F9FF9B742F62B97588 /* CameraFocusSquare.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = CameraFocusSquare.m; path = ios/RCT/CameraFocusSquare.m; sourceTree = ""; }; + 13BFC7BEF70BC984B50057EC93EB4E91 /* js_realm.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = js_realm.cpp; sourceTree = ""; }; + 13DF6E45E4A24662D39D2ABE45F6F2DF /* nl.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = nl.lproj; path = "Objective-C/TOCropViewController/Resources/nl.lproj"; sourceTree = ""; }; + 13FCC776626B411C9D10280D345B3FEF /* React-RCTSettings-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "React-RCTSettings-dummy.m"; sourceTree = ""; }; + 1411A92D6C277246D4A9C57C92F0F863 /* GCDWebServerFileResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerFileResponse.m; path = GCDWebServer/Responses/GCDWebServerFileResponse.m; sourceTree = ""; }; + 14277D093BA6E57B21F3F5C23769F9F9 /* RNSVG.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RNSVG.release.xcconfig; sourceTree = ""; }; + 14380B8325F2847C6C6CDC58A5D912A5 /* REANode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = REANode.m; sourceTree = ""; }; + 149414FC5E4F3CC68E219ADB128EC4DF /* RCTConvertHelpers.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTConvertHelpers.mm; sourceTree = ""; }; + 14FCA22B1E0EF5341BE08313A82E91E3 /* RNSVGPainterBrush.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGPainterBrush.h; sourceTree = ""; }; + 1535726DCF31D2AA1A4C710E1FDBDED8 /* RCTNativeAnimatedModule.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTNativeAnimatedModule.h; path = Libraries/NativeAnimation/RCTNativeAnimatedModule.h; sourceTree = ""; }; + 160186E58099704CF76691F19E26773A /* YGMacros.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = YGMacros.h; path = yoga/YGMacros.h; sourceTree = ""; }; + 160649055C6C88892758465CD8ED9E33 /* RCTConvertHelpers.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTConvertHelpers.h; sourceTree = ""; }; + 161F4A80B880B5B05C530E0A09A2B327 /* UIImage+Resize.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIImage+Resize.h"; path = "ios/src/UIImage+Resize.h"; sourceTree = ""; }; + 163EFE44E527B9D3A2AF8720622DB050 /* RCTAdditionAnimatedNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTAdditionAnimatedNode.m; sourceTree = ""; }; + 16625EFEF66B1ECB02DD4EC16CFC6EC3 /* REATransitionAnimation.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = REATransitionAnimation.m; sourceTree = ""; }; + 16885F16175816068293062A4D2C0960 /* RNI18n.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = RNI18n.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 169EDBEB2871E1DFEA013CA498C9D6D4 /* RCTSinglelineTextInputView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTSinglelineTextInputView.h; sourceTree = ""; }; + 16BA33BF94AC01E657555FEEFC1452AC /* TOCropViewConstants.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = TOCropViewConstants.h; path = "Objective-C/TOCropViewController/Constants/TOCropViewConstants.h"; sourceTree = ""; }; + 16F121E5F351EECCA7E28A8A34B652C4 /* NativeModule.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = NativeModule.h; sourceTree = ""; }; + 171DF67C91C4D76C19344F0FD0D19F21 /* REACallFuncNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = REACallFuncNode.m; sourceTree = ""; }; + 1721CAFC0F91924A0DE087058D8540BF /* RNSVGImageManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGImageManager.h; sourceTree = ""; }; + 1763DFAFB8FF691D63AA0724F975B6EB /* RCTAccessibilityManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTAccessibilityManager.h; sourceTree = ""; }; + 17965D0FA86D88F67FAFC5D87C298CBA /* RNSVGCircleManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGCircleManager.m; sourceTree = ""; }; + 179ADF743A3CE0859D5C1CBE32D6624E /* TOCropViewController.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = TOCropViewController.debug.xcconfig; sourceTree = ""; }; + 17E386FF6ADF84202F590E285C566072 /* UIApplication+RCTOnesignal.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIApplication+RCTOnesignal.m"; path = "ios/RCTOneSignal/UIApplication+RCTOnesignal.m"; sourceTree = ""; }; + 17E83CB6BD68C1D771C702CD7A745390 /* RCTModuleData.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTModuleData.h; sourceTree = ""; }; + 18409BBB0F8527F9FECBC3B67EE04B55 /* RNDeviceInfo.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RNDeviceInfo.debug.xcconfig; sourceTree = ""; }; + 18631F71E7D25E247F600E96666AC039 /* GCDWebServerResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerResponse.h; path = GCDWebServer/Core/GCDWebServerResponse.h; sourceTree = ""; }; + 18A15C674FF5AB2E98B6F8463C91ADFA /* glog.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = glog.debug.xcconfig; sourceTree = ""; }; + 18AB55F56864F5B3412EE62BE6066B7A /* lottie-react-native.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "lottie-react-native.modulemap"; sourceTree = ""; }; + 18BBA1197A2DF34B3FC8D26DF7755591 /* RCTUIUtils.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTUIUtils.m; sourceTree = ""; }; + 18F5586FF15AC4AB9D2FD577176DD9CB /* TextCompositionLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TextCompositionLayer.swift; path = "lottie-swift/src/Private/LayerContainers/CompLayers/TextCompositionLayer.swift"; sourceTree = ""; }; + 190FFBD2A30F0DE94689AC4D617D99C6 /* REATransitionAnimation.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = REATransitionAnimation.h; sourceTree = ""; }; + 191CE273337761B364D9B413733FEB53 /* BundleImageProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BundleImageProvider.swift; path = "lottie-swift/src/Public/iOS/BundleImageProvider.swift"; sourceTree = ""; }; + 193B6D213DAA7920A742701BCC1F1F1D /* id.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = id.lproj; path = "Objective-C/TOCropViewController/Resources/id.lproj"; sourceTree = ""; }; + 193F00C2271D5C39B449D3EE685FD716 /* RCTTextSelection.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTTextSelection.h; sourceTree = ""; }; + 196AE926396AC283315B2AF7BAF4AF7F /* RCTModalHostView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTModalHostView.h; sourceTree = ""; }; + 1979A7AF24A335D29BB1A97E320FD558 /* LayerTransformNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LayerTransformNode.swift; path = "lottie-swift/src/Private/LayerContainers/Utility/LayerTransformNode.swift"; sourceTree = ""; }; + 19ACEEA651BF7A9A195017F68015A0B4 /* RNSVGContainer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNSVGContainer.h; path = ios/RNSVGContainer.h; sourceTree = ""; }; + 19ADE9E5B622F58AFBAF739D2807A2B9 /* RCTTypeSafety.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = RCTTypeSafety.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 1A0D8B9B0F0AC45354196CBE7523F67F /* RCTImageLoader.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTImageLoader.h; path = React/CoreModules/RCTImageLoader.h; sourceTree = ""; }; + 1A27A813750D74FFECE41F6933E3F821 /* async_open_task.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = async_open_task.cpp; sourceTree = ""; }; + 1A416EE5149AFE4AD63A42AA4505BD18 /* TOCropToolbar.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = TOCropToolbar.h; path = "Objective-C/TOCropViewController/Views/TOCropToolbar.h"; sourceTree = ""; }; + 1A4A5AEF5BB1F4C39992D646023E3605 /* AIRMapCalloutSubviewManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMapCalloutSubviewManager.h; path = lib/ios/AirMaps/AIRMapCalloutSubviewManager.h; sourceTree = ""; }; + 1A8304F2E111EAED9DA12E4995BEE945 /* ja.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = ja.lproj; path = ios/QBImagePicker/QBImagePicker/ja.lproj; sourceTree = ""; }; + 1AA4B42D3218DD2AB4B8B348CDA0201E /* AIRMapCalloutManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRMapCalloutManager.m; path = lib/ios/AirMaps/AIRMapCalloutManager.m; sourceTree = ""; }; + 1AFC2B5811F871029E43A34A7B396177 /* RCTUIManagerObserverCoordinator.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTUIManagerObserverCoordinator.mm; sourceTree = ""; }; + 1B024BA994E36CB8E97C290C6732124A /* Group.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Group.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Group.swift"; sourceTree = ""; }; + 1B544EC7D04A528AA8A5CB42BE5AE66D /* RNGestureHandlerEvents.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNGestureHandlerEvents.m; path = ios/RNGestureHandlerEvents.m; sourceTree = ""; }; + 1B91917ACD9BD7E17EAE112C4F11646F /* FBLazyVector.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = FBLazyVector.release.xcconfig; sourceTree = ""; }; + 1B93D853786C41CE3BD8638FC86F0EB8 /* RNSVGUse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGUse.m; sourceTree = ""; }; + 1BCE5AA8EB52234CB535E56070F0881F /* react-native-onesignal-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "react-native-onesignal-dummy.m"; sourceTree = ""; }; + 1C010F75D55C114421EC247CFC6996E5 /* Yoga-internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Yoga-internal.h"; path = "yoga/Yoga-internal.h"; sourceTree = ""; }; + 1C57D8EAA19AAA2C5663514FFBFFBC06 /* PathNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PathNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Protocols/PathNode.swift"; sourceTree = ""; }; + 1C5F366E3AE32407A18C84247B818DAD /* RNCGeolocation.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNCGeolocation.m; path = ios/RNCGeolocation.m; sourceTree = ""; }; + 1C6101D9D095C3F33D6DE886B0AB0CF0 /* AIRMapPolylineManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMapPolylineManager.h; path = lib/ios/AirMaps/AIRMapPolylineManager.h; sourceTree = ""; }; + 1C9D735D2B3A99051321672481DAA4B2 /* RCTConvert+Text.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "RCTConvert+Text.h"; path = "Libraries/Text/RCTConvert+Text.h"; sourceTree = ""; }; + 1CD58FB27E57B354F2E6FE2FB0F8B520 /* Keyframe.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Keyframe.swift; path = "lottie-swift/src/Private/Model/Keyframes/Keyframe.swift"; sourceTree = ""; }; + 1D13846984C17D864A6CEDE12F8E61B6 /* react-native-onesignal.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "react-native-onesignal.debug.xcconfig"; sourceTree = ""; }; + 1D5C453C991C187EF2FDB8346552C2CD /* React-jsinspector.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-jsinspector.debug.xcconfig"; sourceTree = ""; }; + 1D7D611A7BCF764E4F08CF919D63F899 /* RCTLayoutAnimation.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTLayoutAnimation.m; sourceTree = ""; }; + 1EBD3FD674B47FD3332A87F475EAB71A /* QBVideoIndicatorView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = QBVideoIndicatorView.h; path = ios/QBImagePicker/QBImagePicker/QBVideoIndicatorView.h; sourceTree = ""; }; + 1EDD29336582EBF2ED622E6FDFA1C2EB /* PrecompAsset.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PrecompAsset.swift; path = "lottie-swift/src/Private/Model/Assets/PrecompAsset.swift"; sourceTree = ""; }; + 1EE73CD41034EA9AF11322CA22ADE6B1 /* RCTEventEmitter.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTEventEmitter.m; sourceTree = ""; }; + 1EEB627489A4682DD0D23FC58FD21A5D /* RNI18n.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNI18n.m; path = ios/RNI18n.m; sourceTree = ""; }; + 1F86DBC845FF508ED1118C7A90DA9731 /* RCTShadowView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTShadowView.h; sourceTree = ""; }; + 1FB9836AF05803D197F20DEC0FE30625 /* QBImagePicker.storyboard */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file.storyboard; name = QBImagePicker.storyboard; path = ios/QBImagePicker/QBImagePicker/QBImagePicker.storyboard; sourceTree = ""; }; + 1FBD936B1589ECFF64B13773254A2084 /* RCTSafeAreaViewManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTSafeAreaViewManager.m; sourceTree = ""; }; + 1FC692A9E3F7DB40E517332BF35479E9 /* Yoga-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Yoga-prefix.pch"; sourceTree = ""; }; + 1FDE134233B037B8C9DCE74F8F183AF8 /* RCTModalHostViewManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTModalHostViewManager.h; sourceTree = ""; }; + 1FF8283BCF67A5415B7EC1FA684AE163 /* sk.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = sk.lproj; path = "Objective-C/TOCropViewController/Resources/sk.lproj"; sourceTree = ""; }; + 202040057C833899B7387C97B3A1AB21 /* RCTStyleAnimatedNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTStyleAnimatedNode.m; sourceTree = ""; }; + 204510311091D8ED3419474226B6BC55 /* React-RCTNetwork-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "React-RCTNetwork-dummy.m"; sourceTree = ""; }; + 205D07EDB9A0856EBEC047D246602038 /* QBVideoIconView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = QBVideoIconView.h; path = ios/QBImagePicker/QBImagePicker/QBVideoIconView.h; sourceTree = ""; }; + 20650AC49E3FFDA52AD78306EACD6CBB /* ModuleRegistry.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = ModuleRegistry.h; sourceTree = ""; }; + 206A0193A73EC06DA02EE53FFFC6A62D /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; + 207465AF27395BF979A6D2FB41CC0108 /* AIRMapCalloutSubview.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMapCalloutSubview.h; path = lib/ios/AirMaps/AIRMapCalloutSubview.h; sourceTree = ""; }; + 2077C4AE475DC7C5DFF8B7A6A7B99779 /* AIRMapLocalTile.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMapLocalTile.h; path = lib/ios/AirMaps/AIRMapLocalTile.h; sourceTree = ""; }; + 2078B3DDC90E5F15CFB05EF4FE84594A /* RCTVirtualTextShadowView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTVirtualTextShadowView.h; sourceTree = ""; }; + 20AE29F89002DC5F94E57F8C25AE46A7 /* RCTVersion.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTVersion.h; sourceTree = ""; }; + 20DFB40EA0CDBCE7FCFCB4CA6DDB1C5D /* RCTExceptionsManager.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTExceptionsManager.mm; sourceTree = ""; }; + 2129CA751439449074FF8DD945E2B642 /* RNSVGTextProperties.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGTextProperties.m; sourceTree = ""; }; + 214D5E22D36B6609192700BAD606614D /* RCTPackagerClient.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTPackagerClient.h; sourceTree = ""; }; + 218685B97C74C398854F8BBE93E5AD68 /* RNSVGLength.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGLength.m; sourceTree = ""; }; + 2197E28A99C5C598276DA7A66B5B2D90 /* RCTRequired.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = RCTRequired.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 219AAC6B8BE53800A7967D52496219C1 /* REATransitionValues.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = REATransitionValues.m; sourceTree = ""; }; + 21F9181AB47F5E724D6ABD4A643641F1 /* RCTCxxBridge.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTCxxBridge.mm; sourceTree = ""; }; + 220027A97BB297B7CB50E94DE327D2A4 /* REABlockNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = REABlockNode.h; sourceTree = ""; }; + 2277E8C255B27AB1F9325D6A9A137C37 /* CGFloatExtensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CGFloatExtensions.swift; path = "lottie-swift/src/Private/Utility/Extensions/CGFloatExtensions.swift"; sourceTree = ""; }; + 228DEB92F27E434CD4C6E4DA4F65E168 /* TextAnimatorNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TextAnimatorNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/Text/TextAnimatorNode.swift"; sourceTree = ""; }; + 22F5B4D3EF2FEB7F0DAA922D99C38188 /* QBAlbumCell.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = QBAlbumCell.m; path = ios/QBImagePicker/QBImagePicker/QBAlbumCell.m; sourceTree = ""; }; + 23713E88B82CFF58B67D9ED32A448307 /* RCTInputAccessoryShadowView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTInputAccessoryShadowView.h; sourceTree = ""; }; + 2389E7E0084441B99503584973879F56 /* RCTImageEditingManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTImageEditingManager.h; path = React/CoreModules/RCTImageEditingManager.h; sourceTree = ""; }; + 23CD574DDBADF425CB45A61E18EE00C9 /* RCTWrapperViewController.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTWrapperViewController.h; sourceTree = ""; }; + 240FC5906978BF23A0E568243478D054 /* it.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = it.lproj; path = "Objective-C/TOCropViewController/Resources/it.lproj"; sourceTree = ""; }; + 24436007543218C03B4F92F2967F0539 /* RNSVGLineManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGLineManager.m; sourceTree = ""; }; + 244DE127DE28D1B8EEDDF50FCEE90A68 /* TOActivityCroppedImageProvider.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = TOActivityCroppedImageProvider.h; path = "Objective-C/TOCropViewController/Models/TOActivityCroppedImageProvider.h"; sourceTree = ""; }; + 24DAA171EEAD9EE70B08BEE886075A9A /* SajjadBlurOverlay-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "SajjadBlurOverlay-dummy.m"; sourceTree = ""; }; + 24FD49C2FE9E5CF40593254E6A14D417 /* RCTVersion.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTVersion.m; sourceTree = ""; }; + 2505D486AF528B184D2F96012E481D4F /* RCTSurfaceView+Internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RCTSurfaceView+Internal.h"; sourceTree = ""; }; + 2577F299FCB0A19824FE989BE77B8E8F /* libReact-jsinspector.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libReact-jsinspector.a"; path = "libReact-jsinspector.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 257A814B5D064ED222003A40F55C03E8 /* Trim.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Trim.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Trim.swift"; sourceTree = ""; }; + 259805F4A7ACBDA5CDF175A08F053AA4 /* NSDataBigString.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = NSDataBigString.mm; sourceTree = ""; }; + 25B1DCC76C097B3423A165DC29E4F15F /* RCTAnimatedNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTAnimatedNode.m; sourceTree = ""; }; + 26172EA85216B7BD62FF1AAB34F5ADCF /* JSExecutor.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = JSExecutor.cpp; sourceTree = ""; }; + 263DBA186B69EE3D828C86B276E83B44 /* RCTSegmentedControlManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTSegmentedControlManager.h; sourceTree = ""; }; + 269BE773C9482484B70949A40F4EA525 /* libReact-RCTSettings.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libReact-RCTSettings.a"; path = "libReact-RCTSettings.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 26C0691B319A1C9A6AB3E15DE72B4933 /* SajjadBlurOverlay.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = SajjadBlurOverlay.release.xcconfig; sourceTree = ""; }; + 26DBEADAAACD4D12D8E5D883401E81E8 /* RCTConvert+Text.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RCTConvert+Text.m"; sourceTree = ""; }; + 26DF5E1735D48DEDCC90B61850707A1B /* RCTReconnectingWebSocket.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RCTReconnectingWebSocket.m; path = Libraries/WebSocket/RCTReconnectingWebSocket.m; sourceTree = ""; }; + 2777BB067D42069AD491352579907C82 /* CoreModulesPlugins.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = CoreModulesPlugins.h; path = React/CoreModules/CoreModulesPlugins.h; sourceTree = ""; }; + 27849AFEAE651DD522B3155110082A8F /* REATransition.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = REATransition.m; sourceTree = ""; }; + 27934C6A9D8FC9428845873CE3F59D1A /* RCTDecayAnimation.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTDecayAnimation.h; sourceTree = ""; }; + 27BE41525AFC50F13874EB81CC9BC539 /* RNReanimated.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RNReanimated.release.xcconfig; sourceTree = ""; }; + 27D9A695FFCA7CD9180130E228A7DCB9 /* boost-for-react-native.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "boost-for-react-native.debug.xcconfig"; sourceTree = ""; }; + 27E9CB50945F53DACA5EB476868FB090 /* RCTCxxMethod.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTCxxMethod.h; sourceTree = ""; }; + 2822AB6E0A86A0CE312F2F0FD622268A /* ms.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = ms.lproj; path = "Objective-C/TOCropViewController/Resources/ms.lproj"; sourceTree = ""; }; + 282D0896D849B2F9498447D92C904290 /* Mask.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Mask.swift; path = "lottie-swift/src/Private/Model/Objects/Mask.swift"; sourceTree = ""; }; + 283C69074FAF5430D2477C75D47095E6 /* RealmJS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RealmJS.debug.xcconfig; sourceTree = ""; }; + 284695DECA75458DC9F0674F2CBB5152 /* cs.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = cs.lproj; path = "Objective-C/TOCropViewController/Resources/cs.lproj"; sourceTree = ""; }; + 285F3053319EE896F057DDFE0ECDF145 /* RNSVGSymbol.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGSymbol.m; sourceTree = ""; }; + 289A4D3DC5A9F557EF333F0D036751F9 /* AnimationImageProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationImageProvider.swift; path = "lottie-swift/src/Public/ImageProvider/AnimationImageProvider.swift"; sourceTree = ""; }; + 28DECD859633FA4BBE1CADA231BA4614 /* React-RCTSettings.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-RCTSettings.release.xcconfig"; sourceTree = ""; }; + 2900C9D9CF639535D6BD667CC655E645 /* PreCompositionLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PreCompositionLayer.swift; path = "lottie-swift/src/Private/LayerContainers/CompLayers/PreCompositionLayer.swift"; sourceTree = ""; }; + 2901F7B9883BBD38099E8C63311CFBB0 /* GCDWebServer-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "GCDWebServer-prefix.pch"; sourceTree = ""; }; + 2929E06F27F8A455AB792F3500755937 /* raw_logging.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = raw_logging.cc; path = src/raw_logging.cc; sourceTree = ""; }; + 2946D7A6327D81A9D62187131001791D /* React-RCTActionSheet.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = "React-RCTActionSheet.podspec"; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 294E1727E47D41316378205655840ADA /* REACallFuncNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = REACallFuncNode.h; sourceTree = ""; }; + 29851C4FB70F2F2F4D12901BCFEDA157 /* RCTInterpolationAnimatedNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTInterpolationAnimatedNode.h; sourceTree = ""; }; + 29B8548DF2FAAE668A47DDC7DC7FB6BF /* JsArgumentHelpers.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = JsArgumentHelpers.h; sourceTree = ""; }; + 2A98425762A78795D2216B5CB879221B /* React-RCTActionSheet.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-RCTActionSheet.release.xcconfig"; sourceTree = ""; }; + 2AB2EC4879A24AD83E5C7C9EB83B66C4 /* RCTUIManagerUtils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTUIManagerUtils.h; sourceTree = ""; }; + 2B4BAB4C0ED94566063E5F0A9D85177C /* AIRMapOverlay.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMapOverlay.h; path = lib/ios/AirMaps/AIRMapOverlay.h; sourceTree = ""; }; + 2B4E8EAF5CD215565D30A3120D0F4DB2 /* RCTConvert.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTConvert.m; sourceTree = ""; }; + 2B5FBD150C44634A41456D7D1CA55A99 /* RCTSliderManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTSliderManager.m; sourceTree = ""; }; + 2B81AC73FF0A49613037CBCC72DDF030 /* RCTRefreshControl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTRefreshControl.h; sourceTree = ""; }; + 2B9AC241A058D255CBC7D861193BE06A /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; path = LICENSE; sourceTree = ""; }; + 2BDCEDD40BAD9342F016E20D99471470 /* RCTRootContentView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTRootContentView.m; sourceTree = ""; }; + 2C0575A7DD26AE71EC9EC7E6A9A0B8E6 /* TOCropViewController-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "TOCropViewController-dummy.m"; sourceTree = ""; }; + 2C157020D4C14F52330CF9012A173270 /* YGEnums.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = YGEnums.cpp; path = yoga/YGEnums.cpp; sourceTree = ""; }; + 2C411F556D0C25B4BD29B7BF3C80115A /* AIRMapOverlayRenderer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMapOverlayRenderer.h; path = lib/ios/AirMaps/AIRMapOverlayRenderer.h; sourceTree = ""; }; + 2C59EAC665A6B62514B52FB4AF90920F /* RCTTransformAnimatedNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTTransformAnimatedNode.m; sourceTree = ""; }; + 2C9A9D55786D4D84A5A32A6DD5625F0A /* AIRMapMarkerManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRMapMarkerManager.m; path = lib/ios/AirMaps/AIRMapMarkerManager.m; sourceTree = ""; }; + 2CC0D1C46755440793E4C49A28568E2A /* RNSVGBezierElement.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGBezierElement.h; sourceTree = ""; }; + 2CDEF04641AEE2AB98FC728313CBE563 /* Vectors.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Vectors.swift; path = "lottie-swift/src/Public/Primitives/Vectors.swift"; sourceTree = ""; }; + 2CEC58EC7C5EE44E62E57EF11B77EA0A /* RCTProfileTrampoline-x86_64.S */ = {isa = PBXFileReference; includeInIndex = 1; path = "RCTProfileTrampoline-x86_64.S"; sourceTree = ""; }; + 2D1F2C53A5374BC5218418126F42149F /* RCTSafeAreaShadowView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTSafeAreaShadowView.h; sourceTree = ""; }; + 2D301EAAD960B125FC803B7CA3C896B8 /* RNSVGPath.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGPath.m; sourceTree = ""; }; + 2D53DDBD25FDD65F21B4583FABA8365C /* React-CoreModules.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-CoreModules.release.xcconfig"; sourceTree = ""; }; + 2D5E9ECC168364E3D58E6BB18705FD72 /* RCTRootShadowView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTRootShadowView.h; sourceTree = ""; }; + 2D7DD9C087C1354E420517C5C065AC5B /* GroupInterpolator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GroupInterpolator.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/ValueProviders/GroupInterpolator.swift"; sourceTree = ""; }; + 2D7DE4EB9109A0E72F16B94222DAAF2D /* REAModule.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = REAModule.m; path = ios/REAModule.m; sourceTree = ""; }; + 2DC5AE15D8A7AA8F242A66F54E5F02C9 /* RCTWeakProxy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTWeakProxy.m; sourceTree = ""; }; + 2DCA38E6948A5AB13EED5D54C7D9B157 /* lottie-react-native-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "lottie-react-native-umbrella.h"; sourceTree = ""; }; + 2DF0747E8C7419450A63076C6AAC2F4B /* LICENSE.md */ = {isa = PBXFileReference; includeInIndex = 1; path = LICENSE.md; sourceTree = ""; }; + 2E7BFEE37278B96F4A22B5DE2FAF56A4 /* RCTActivityIndicatorView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTActivityIndicatorView.h; sourceTree = ""; }; + 2E96C803AE2147F1CBD7CA1C3A09E6B9 /* UIImage+CropRotate.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIImage+CropRotate.m"; path = "Objective-C/TOCropViewController/Categories/UIImage+CropRotate.m"; sourceTree = ""; }; + 2EC78ED35A174789D2A2AAEA7832639F /* AnimationSubview.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationSubview.swift; path = "lottie-swift/src/Public/iOS/AnimationSubview.swift"; sourceTree = ""; }; + 2ED33BDB2B3359131F45F49E5F19D99F /* QBAssetCell.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = QBAssetCell.m; path = ios/QBImagePicker/QBImagePicker/QBAssetCell.m; sourceTree = ""; }; + 2EF46290800CD755E81E433B9F3E16B0 /* RCTUITextView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTUITextView.m; sourceTree = ""; }; + 2F2476FAAC84DB3D08F0E9630EADF7A9 /* AIRMapCoordinate.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRMapCoordinate.m; path = lib/ios/AirMaps/AIRMapCoordinate.m; sourceTree = ""; }; + 2F279CF508C0A70C818415943852D15F /* RCTRawTextViewManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTRawTextViewManager.m; sourceTree = ""; }; + 2F3014AEE80E89D1596152D4667CD631 /* Pods-iLink-tvOSTests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-iLink-tvOSTests-acknowledgements.markdown"; sourceTree = ""; }; + 2F40DE8DCC02C18801ACA61C3E74FEE9 /* RCTStatusBarManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTStatusBarManager.m; sourceTree = ""; }; + 2F53E5FC0AE7A7F04ADD59FBE3515F7A /* ReactCommon.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = ReactCommon.release.xcconfig; sourceTree = ""; }; + 2F723DB45990B8D82DCFBFF5ADFD7FED /* JSCallInvoker.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = JSCallInvoker.h; path = jscallinvoker/ReactCommon/JSCallInvoker.h; sourceTree = ""; }; + 2F85DB3BCA6D79890BF94BACDC85B988 /* jsc_value.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = jsc_value.cpp; sourceTree = ""; }; + 2F927708D0D84A3F7203B56F7133CEB6 /* BezierPath.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BezierPath.swift; path = "lottie-swift/src/Private/Utility/Primitives/BezierPath.swift"; sourceTree = ""; }; + 2F955107B98F1B5213C3C9F4CAB1EDB5 /* libreact-native-maps.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libreact-native-maps.a"; path = "libreact-native-maps.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 2FC43340DD4A3D00A91F54E2C06EE7A4 /* GCDWebServerConnection.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerConnection.m; path = GCDWebServer/Core/GCDWebServerConnection.m; sourceTree = ""; }; + 2FFC65C4D604A552C6A7AC3618FCDE83 /* react-native-maps.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = "react-native-maps.podspec"; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 2FFE466478283824948818FDE34BEE7E /* RNSVGSymbolManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGSymbolManager.h; sourceTree = ""; }; + 30222109552138FDC514022977EC98CB /* RCTComponentData.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTComponentData.m; sourceTree = ""; }; + 30488D55995F66E7799CB272A4F9A1F8 /* RNPanHandler.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNPanHandler.h; sourceTree = ""; }; + 308492FF3FCAEDED219E8CD731E0EDC1 /* TOCropViewController.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = TOCropViewController.h; path = "Objective-C/TOCropViewController/TOCropViewController.h"; sourceTree = ""; }; + 30B6E820EC8BED1DF641ACC97A6C59C6 /* RCTLayout.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTLayout.m; sourceTree = ""; }; + 30B8814FC8711D3B24E181C9AF167993 /* ImageCropPicker.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = ImageCropPicker.m; path = ios/src/ImageCropPicker.m; sourceTree = ""; }; + 313D7C6F0DCC0985B6EF7B5DC89A7DD2 /* React-jsinspector.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = "React-jsinspector.podspec"; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 3148F275C032FB1C1440719721089191 /* lottie-react-native-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "lottie-react-native-prefix.pch"; sourceTree = ""; }; + 317D35698B19046915861DFAC6B3A3B9 /* TrimPathNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TrimPathNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/ModifierNodes/TrimPathNode.swift"; sourceTree = ""; }; + 317DCCB2266FA4F0D863D2FF87D753D8 /* ReactCommon-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "ReactCommon-dummy.m"; sourceTree = ""; }; + 3189ABD75043DE287DAD14A08FAAFCA6 /* zh-Hans.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = "zh-Hans.lproj"; path = "ios/QBImagePicker/QBImagePicker/zh-Hans.lproj"; sourceTree = ""; }; + 31F1128BC681CCEDAED574C4A3BB989F /* UIView+Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "UIView+Private.h"; sourceTree = ""; }; + 31F8E6E8ADE33FD4B2309D15A8FD3868 /* String.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = String.cpp; path = folly/String.cpp; sourceTree = ""; }; + 32078741A84563F5B590C6DF6301B49A /* FBReactNativeSpec-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "FBReactNativeSpec-dummy.m"; sourceTree = ""; }; + 3231759FB7D910B02B6D90E020247810 /* react-native-camera.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = "react-native-camera.podspec"; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 323A71C26D51240C103EF9D340CE675A /* RNGestureHandler.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNGestureHandler.h; path = ios/RNGestureHandler.h; sourceTree = ""; }; + 323DC5871F43F65687CDF081F2B76E16 /* JSIExecutor.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = JSIExecutor.h; path = jsireact/JSIExecutor.h; sourceTree = ""; }; + 325333FFEBFDCD2E8C9045BEA77ABE1E /* RCTRedBox.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTRedBox.m; sourceTree = ""; }; + 329F94BD0B8B8156BF25E5416269DB5E /* RCTVirtualTextShadowView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTVirtualTextShadowView.m; sourceTree = ""; }; + 32C1F0A744440B4C7DA9D5E173CC8FD6 /* RCTTiming.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTTiming.m; sourceTree = ""; }; + 32D2568633F0C39D4E99317A3FF88403 /* F14Table.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = F14Table.cpp; path = folly/container/detail/F14Table.cpp; sourceTree = ""; }; + 331AD6887161E4B355549A415DC4EEBB /* RNCameraManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNCameraManager.h; path = ios/RN/RNCameraManager.h; sourceTree = ""; }; + 333F8A944B505106BFD23ED6C6B67499 /* Ionicons.ttf */ = {isa = PBXFileReference; includeInIndex = 1; name = Ionicons.ttf; path = Fonts/Ionicons.ttf; sourceTree = ""; }; + 3357ED357DB398B762C0F992B6A78144 /* YGValue.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = YGValue.cpp; path = yoga/YGValue.cpp; sourceTree = ""; }; + 3384AA80005E2D3453B77FC4EAA584E8 /* cached-powers.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "cached-powers.h"; path = "double-conversion/cached-powers.h"; sourceTree = ""; }; + 338817C84971D637244683E9432AF918 /* libSajjadBlurOverlay.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libSajjadBlurOverlay.a; path = libSajjadBlurOverlay.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 33BD824CEDB6D9352AB434EA1F3C4906 /* RNVectorIcons.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = RNVectorIcons.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 33CBA35E56E8FD38B8A4709817CF050A /* React-RCTText.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = "React-RCTText.podspec"; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 33CEC13461320939B3389F95734E77E9 /* RCTNativeModule.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTNativeModule.mm; sourceTree = ""; }; + 33DE7F093C98D1A9AB1C573FF3F85A54 /* RCTSurfaceSizeMeasureMode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTSurfaceSizeMeasureMode.h; sourceTree = ""; }; + 340851F01A23D1959B610F57490EF4A6 /* React-jsi.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-jsi.release.xcconfig"; sourceTree = ""; }; + 3414B0959F4A5C91C1A6EB39BB40B125 /* RNCustomWhiteBalanceSettings.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNCustomWhiteBalanceSettings.h; path = ios/RN/RNCustomWhiteBalanceSettings.h; sourceTree = ""; }; + 34155521E2D3E67A96AE666085D700E3 /* RCTFrameUpdate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTFrameUpdate.h; sourceTree = ""; }; + 3429FB0665DA4067B4E7790ECA20BB32 /* RCTBorderStyle.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTBorderStyle.h; sourceTree = ""; }; + 3435CE09B932A5BE1AF65D4FE5C7BA41 /* AIRMapManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMapManager.h; path = lib/ios/AirMaps/AIRMapManager.h; sourceTree = ""; }; + 3436F4C851E2A6FA4801A30A76CEF812 /* RCTTurboModuleManager.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTTurboModuleManager.mm; sourceTree = ""; }; + 346CF40E2B831E36B120EDC014A7924D /* event.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = event.h; sourceTree = ""; }; + 346D484E51A4C1F1C5C17CA14DCD3495 /* StrokeRenderer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StrokeRenderer.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/Renderables/StrokeRenderer.swift"; sourceTree = ""; }; + 347C8BF9569CAF6E292C0B093F26D399 /* RNSVGClipPath.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGClipPath.m; sourceTree = ""; }; + 348B44DC798A787931D7739187B06164 /* RCTInspectorDevServerHelper.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTInspectorDevServerHelper.mm; sourceTree = ""; }; + 348CA285F1CD38B21E53882FAF148561 /* keychain_helper.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = keychain_helper.cpp; sourceTree = ""; }; + 349A797D236EE403880A7E3B001CA8A7 /* RCTConvert+REATransition.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RCTConvert+REATransition.h"; sourceTree = ""; }; + 34A041CB6EE4408C5BB1981F4936F24C /* GCDWebServerConnection.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerConnection.h; path = GCDWebServer/Core/GCDWebServerConnection.h; sourceTree = ""; }; + 34C5C27C106306F93F86190484AE3233 /* RNPinchHandler.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNPinchHandler.m; sourceTree = ""; }; + 34D47BA1B7683546233284FA9AB520F4 /* GCDWebServerMultiPartFormRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerMultiPartFormRequest.m; path = GCDWebServer/Requests/GCDWebServerMultiPartFormRequest.m; sourceTree = ""; }; + 34E0B2DDF4D5D00C0A6C51A8561A5D42 /* RNSVGRadialGradientManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGRadialGradientManager.m; sourceTree = ""; }; + 34E9C756FA690DF8C2D5409EF63F8B17 /* double-conversion.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "double-conversion.h"; path = "double-conversion/double-conversion.h"; sourceTree = ""; }; + 34EE9B46BA77EDAE3F8128CBFCA7706E /* fr.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = fr.lproj; path = "Objective-C/TOCropViewController/Resources/fr.lproj"; sourceTree = ""; }; + 356127E2E247CEE1BBECC09AA00789DD /* react-native-maps-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "react-native-maps-dummy.m"; sourceTree = ""; }; + 35F289C6F016B241D5C78632863B9D6E /* ReactNativePageView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = ReactNativePageView.m; path = ios/ReactNativePageView.m; sourceTree = ""; }; + 361EBF05F44D35AEAC4461EA9D4D74EE /* RNDeviceInfo.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNDeviceInfo.h; path = ios/RNDeviceInfo/RNDeviceInfo.h; sourceTree = ""; }; + 36779F46682A5CAE36B4DB8C06165440 /* TurboModuleBinding.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = TurboModuleBinding.h; path = turbomodule/core/TurboModuleBinding.h; sourceTree = ""; }; + 368D18758B9DC959CED56F1E689C0C2C /* PathOutputNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PathOutputNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/PathOutputNode.swift"; sourceTree = ""; }; + 36E5E2214962342800ACC3F2135BB80B /* RealmJS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RealmJS-dummy.m"; sourceTree = ""; }; + 37313A0E08F88C05FAD064840406F19D /* CxxNativeModule.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = CxxNativeModule.cpp; sourceTree = ""; }; + 37592FDAD45752511010F4B06AC57355 /* libReact-cxxreact.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libReact-cxxreact.a"; path = "libReact-cxxreact.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 378C03FF9E77038427FCEC783FCB3C92 /* RCTComponentEvent.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTComponentEvent.h; sourceTree = ""; }; + 3791394DC07762B51D548EDD4FD8A643 /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; path = LICENSE; sourceTree = ""; }; + 37DC4413D3F613AB342A80A8ABF575EB /* Pods-iLink-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-iLink-dummy.m"; sourceTree = ""; }; + 37EE198D102E170EDB1773A37BC251D3 /* RCTTextTransform.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTTextTransform.h; path = Libraries/Text/RCTTextTransform.h; sourceTree = ""; }; + 380B454005B16D2E04E86FD10E465334 /* SharedProxyCxxModule.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = SharedProxyCxxModule.h; sourceTree = ""; }; + 380D6158657840F6C0E4D89C5BFE05B3 /* de.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = de.lproj; path = "Objective-C/TOCropViewController/Resources/de.lproj"; sourceTree = ""; }; + 3834FFCD5E1C46D728E8AE020D7FBB33 /* React-cxxreact.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-cxxreact.release.xcconfig"; sourceTree = ""; }; + 38367C90EB7F9DF88F6647A98746CD91 /* jsilib-windows.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = "jsilib-windows.cpp"; sourceTree = ""; }; + 3853C8D86A15C7BB90D68F4232161F9E /* RNScreens-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RNScreens-dummy.m"; sourceTree = ""; }; + 3865CAA0FBB82FBD517F45570208C52F /* React-CoreModules-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "React-CoreModules-prefix.pch"; sourceTree = ""; }; + 386B4545D0EF8B75E665E0B13DB96EC5 /* REAEventNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = REAEventNode.m; sourceTree = ""; }; + 38885F5455D2BF57992E2E59AB4FABBB /* RNSVGTSpan.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGTSpan.h; sourceTree = ""; }; + 3891BB50F9467E2A3AEAB98A066D6B72 /* ValueContainer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ValueContainer.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/ValueContainer.swift"; sourceTree = ""; }; + 38CB2A6363964C86ABC84C3435BD4D3D /* dynamic.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = dynamic.cpp; path = folly/dynamic.cpp; sourceTree = ""; }; + 38F9EF62938378C2ED2FBC2F6AD6B93F /* React-cxxreact-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "React-cxxreact-dummy.m"; sourceTree = ""; }; + 3948AB7C10CF3300C13AC6C89D489D0F /* React-RCTImage.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-RCTImage.debug.xcconfig"; sourceTree = ""; }; + 395CF7F9BDF4FE9301B49D3875D13431 /* AIRMapPolygon.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRMapPolygon.m; path = lib/ios/AirMaps/AIRMapPolygon.m; sourceTree = ""; }; + 39757C6A78AEA42D99A9E3A1DC50D1D5 /* TOCroppedImageAttributes.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = TOCroppedImageAttributes.m; path = "Objective-C/TOCropViewController/Models/TOCroppedImageAttributes.m"; sourceTree = ""; }; + 3997CE560541DDAF5BD151A10ABD10D4 /* RCTInspectorPackagerConnection.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTInspectorPackagerConnection.h; sourceTree = ""; }; + 39E225F7B9A529F6FFF14EAC0735D6CB /* Marker.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Marker.swift; path = "lottie-swift/src/Private/Model/Objects/Marker.swift"; sourceTree = ""; }; + 39F59C6608D23BF6B9BEFF5F883FF644 /* RCTAnimationDriver.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTAnimationDriver.h; sourceTree = ""; }; + 3A5C8C36C38A1242C5E500BB055C26E7 /* RNSVGRect.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGRect.m; sourceTree = ""; }; + 3A64CC61B2E347F7306EB34FA487E4B0 /* RCTPerfMonitor.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTPerfMonitor.m; sourceTree = ""; }; + 3AAB3A63CFD18F68903365458E42C018 /* RNSVGTextManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGTextManager.m; sourceTree = ""; }; + 3AB1FEE2C518E9C25D7BE7715A277A01 /* RCTModalManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTModalManager.h; sourceTree = ""; }; + 3AC8AD0CD20D22C28F53749FF6B0C0EE /* StrokeNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StrokeNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderNodes/StrokeNode.swift"; sourceTree = ""; }; + 3ACA04A638E5E25700027BCD51AC4F2A /* RNImageCropPicker-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RNImageCropPicker-prefix.pch"; sourceTree = ""; }; + 3AD259E000F1338CD831F8FBF8D9D702 /* RCTExceptionsManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTExceptionsManager.h; path = React/CoreModules/RCTExceptionsManager.h; sourceTree = ""; }; + 3AD46B056965C7C49FC0B1D595F92412 /* AnimationTextProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationTextProvider.swift; path = "lottie-swift/src/Public/TextProvider/AnimationTextProvider.swift"; sourceTree = ""; }; + 3AE57868946406E942A1CE4E37C2954F /* RCTSensorOrientationChecker.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RCTSensorOrientationChecker.m; path = ios/RCT/RCTSensorOrientationChecker.m; sourceTree = ""; }; + 3AEA4A114C08533A2C0F8E039A4C5EB9 /* libRNImageCropPicker.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libRNImageCropPicker.a; path = libRNImageCropPicker.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 3B2F202F74A14CB40AFA18A27C79F93C /* FBReactNativeSpec.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = FBReactNativeSpec.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 3B34CC179F01A3F16FD2407C5C66FFA0 /* RCTTextShadowView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTTextShadowView.h; sourceTree = ""; }; + 3B67F72E769297CA45887507876A3015 /* RCTObjcExecutor.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTObjcExecutor.mm; sourceTree = ""; }; + 3B8DB25DB88A3A1175B6FC7CA503AADE /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; path = LICENSE; sourceTree = ""; }; + 3BA4F177DC22A3DCA17E06075EDBC3FA /* RNGestureHandler-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RNGestureHandler-prefix.pch"; sourceTree = ""; }; + 3BA9C52C962BA4255AA67B151550DBA5 /* RCTDeviceInfo.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTDeviceInfo.m; sourceTree = ""; }; + 3BB8890B9CCF58F18A93E3CE88D03CDA /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; + 3BEDDA76EDF1AB0A45DADE8CE76DAFE9 /* AnimatorNodeDebugging.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimatorNodeDebugging.swift; path = "lottie-swift/src/Private/Utility/Debugging/AnimatorNodeDebugging.swift"; sourceTree = ""; }; + 3C030E675011A8F0E7212401F9A99C96 /* RCTOneSignalEventEmitter.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RCTOneSignalEventEmitter.m; path = ios/RCTOneSignal/RCTOneSignalEventEmitter.m; sourceTree = ""; }; + 3C2F60F0D208A7548DC7A3FEFD91B723 /* react-native-viewpager.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "react-native-viewpager.release.xcconfig"; sourceTree = ""; }; + 3C3EA67E7281FF5BF8A811984C2D4617 /* ItemsExtension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ItemsExtension.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Extensions/ItemsExtension.swift"; sourceTree = ""; }; + 3C66BF8EEDE380BCDA371A63DFCCB008 /* RCTEventEmitter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTEventEmitter.h; sourceTree = ""; }; + 3C793A3FE44B9B3209B8BE91058BE865 /* RCTKeyCommands.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTKeyCommands.h; sourceTree = ""; }; + 3C7A4DCC9E0A7156EF0A7FB4CFE5165D /* TextDocument.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TextDocument.swift; path = "lottie-swift/src/Private/Model/Text/TextDocument.swift"; sourceTree = ""; }; + 3C9BE9577AD83B0DDAD16AFD5583F7C8 /* RNCAsyncStorageDelegate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNCAsyncStorageDelegate.h; path = ios/RNCAsyncStorageDelegate.h; sourceTree = ""; }; + 3C9C88EC3F50EAD3978323E775FE295F /* RCTImageBlurUtils.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTImageBlurUtils.m; sourceTree = ""; }; + 3CA7A9404CCDD6BA22C97F8348CE3209 /* libglog.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libglog.a; path = libglog.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 3CA9E26D63F15F6A10A8D8733AF42D20 /* RCTReloadCommand.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTReloadCommand.m; sourceTree = ""; }; + 3D2E2B7B045B7C4AA1845771A8776D67 /* RCTUIImageViewAnimated.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTUIImageViewAnimated.h; path = Libraries/Image/RCTUIImageViewAnimated.h; sourceTree = ""; }; + 3D3545DA8AF8AE98B4581A647A57DDB1 /* pl.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = pl.lproj; path = "Objective-C/TOCropViewController/Resources/pl.lproj"; sourceTree = ""; }; + 3D3902E09FEEF4E0FFF21AED7DE77A9E /* experiments.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = experiments.cpp; sourceTree = ""; }; + 3D3C3994500629AAF9F5B7E2BA5A58C6 /* SajjadBlurOverlay.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = SajjadBlurOverlay.h; sourceTree = ""; }; + 3D6F1563C86BAAE01655FD6D734E8ADB /* GCDWebServer.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServer.m; path = GCDWebServer/Core/GCDWebServer.m; sourceTree = ""; }; + 3DB5ED57431936CBED405C41339F6D3D /* RNSVGRenderable.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNSVGRenderable.m; path = ios/RNSVGRenderable.m; sourceTree = ""; }; + 3DCCC9C42EB3E07CFD81800EC8A2515D /* QBImagePicker.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; name = QBImagePicker.bundle; path = "RNImageCropPicker-QBImagePicker.bundle"; sourceTree = BUILT_PRODUCTS_DIR; }; + 3DD32D51C9966D7E4F6CB5379DA91FD9 /* SajjjadBlurOverlayManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = SajjjadBlurOverlayManager.h; sourceTree = ""; }; + 3DE280F0E47F0F19B7D93D5E242239DB /* RCTRootContentView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTRootContentView.h; sourceTree = ""; }; + 3DF04B6B98C213E476B82F0734952A7F /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; + 3E0C7B2F78E1A89F6CFD04636E4C2AE7 /* RNReanimated-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RNReanimated-dummy.m"; sourceTree = ""; }; + 3E26237F761688764719FDC0A51A7494 /* AnyValueProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnyValueProvider.swift; path = "lottie-swift/src/Public/DynamicProperties/AnyValueProvider.swift"; sourceTree = ""; }; + 3E4C4504869CF2A74BF0AF7896B02A26 /* RCTSensorOrientationChecker.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTSensorOrientationChecker.h; path = ios/RCT/RCTSensorOrientationChecker.h; sourceTree = ""; }; + 3E5B2DC3B7558590A5D0D0C6597860DF /* RCTMaskedView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTMaskedView.h; sourceTree = ""; }; + 3EB024956EF1F191D5A99B6A880522BE /* RCTDatePicker.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTDatePicker.m; sourceTree = ""; }; + 3EC517E5BE2DFFDFE8AE4A617845A458 /* log.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = log.h; path = yoga/log.h; sourceTree = ""; }; + 3EC9880F8DFF117056E1E65A755117F7 /* TOCropScrollView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = TOCropScrollView.h; path = "Objective-C/TOCropViewController/Views/TOCropScrollView.h"; sourceTree = ""; }; + 3F000582EA57EDDD6ABD5BA1BBE0EAF3 /* REAAllTransitions.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = REAAllTransitions.h; sourceTree = ""; }; + 3F04FC67983BCB8B0133D4FDF259F902 /* YGNodePrint.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = YGNodePrint.h; path = yoga/YGNodePrint.h; sourceTree = ""; }; + 3F691D6D9E721CDDFB70E13182BF586D /* RCTNativeAnimatedModule.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTNativeAnimatedModule.m; sourceTree = ""; }; + 3FA4089809A19ABBE1BE2FB1661FC379 /* binding_callback_thread_observer.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = binding_callback_thread_observer.cpp; sourceTree = ""; }; + 3FCF9C3395187854EC3CC7E99CCE6F14 /* RCTImageSource.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTImageSource.h; sourceTree = ""; }; + 40722983C1C27D578C4B6EB9202921AB /* TurboModuleUtils.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = TurboModuleUtils.cpp; path = turbomodule/core/TurboModuleUtils.cpp; sourceTree = ""; }; + 40A38DBA4AA43A6F02C8E0E35BF24E71 /* RNSVGNodeManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGNodeManager.m; sourceTree = ""; }; + 40CB294986FAB2027FDFC66CDE375EA3 /* JSCRuntime.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = JSCRuntime.h; sourceTree = ""; }; + 40CC4DC9B4E34D586733EDB1F19B8E96 /* SystraceSection.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = SystraceSection.h; sourceTree = ""; }; + 40E22DF7761512419447109573DCDC7C /* AIRMapPolyline.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRMapPolyline.m; path = lib/ios/AirMaps/AIRMapPolyline.m; sourceTree = ""; }; + 41BC158D4486D0684FFC2377CBF3E46A /* React-RCTBlob-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "React-RCTBlob-prefix.pch"; sourceTree = ""; }; + 41CB72A3122A1E30DCC7AFC407F1FCCC /* Ellipse.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Ellipse.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Ellipse.swift"; sourceTree = ""; }; + 42451D0E40397FA81C31C46B2A2325DD /* AnimationKeypathExtension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationKeypathExtension.swift; path = "lottie-swift/src/Private/Utility/Extensions/AnimationKeypathExtension.swift"; sourceTree = ""; }; + 42A5D9CA7D1A69CB22B716490023506C /* REATransition.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = REATransition.h; sourceTree = ""; }; + 43544F72E9753F12D99696AC54125FAD /* RNSVGLineManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGLineManager.h; sourceTree = ""; }; + 4361419C2126EF9723E2638FDDA9DC93 /* KeypathSearchable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KeypathSearchable.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/Protocols/KeypathSearchable.swift"; sourceTree = ""; }; + 436A6780127E2329D386C699FCDFD117 /* RNSensorOrientationChecker.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNSensorOrientationChecker.h; path = ios/RN/RNSensorOrientationChecker.h; sourceTree = ""; }; + 4374093515097AA8D4E5FFB5181AF983 /* RCTSurfaceView.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTSurfaceView.mm; sourceTree = ""; }; + 439EEEB7E435E5A1685CF9A1BEB2DB2F /* RCTImageStoreManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTImageStoreManager.h; path = React/CoreModules/RCTImageStoreManager.h; sourceTree = ""; }; + 43A065B93A776301EE5A6C3102FD7A2F /* RCTBridgeMethod.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTBridgeMethod.h; sourceTree = ""; }; + 43C059CDD48E975B96F9EF4406B70170 /* REAFunctionNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = REAFunctionNode.m; sourceTree = ""; }; + 43F391FD8101934C8E1566D1216E56F5 /* RNSVGCGFCRule.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGCGFCRule.h; sourceTree = ""; }; + 442DEF70E3861DF40A77C76F5ECFB9AF /* JSModulesUnbundle.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = JSModulesUnbundle.h; sourceTree = ""; }; + 4442A9BAFB76C9CB739D0B279556805E /* RCTCxxModule.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTCxxModule.mm; sourceTree = ""; }; + 444C6AA5B1EFAC44EFEF6C52A480B6D1 /* RCTAnimatedImage.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTAnimatedImage.h; path = Libraries/Image/RCTAnimatedImage.h; sourceTree = ""; }; + 445961D2CC775D8E3C63BFA731D45E55 /* EllipseNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = EllipseNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/EllipseNode.swift"; sourceTree = ""; }; + 446AA8F82AC823BAC4C97A631539B4AC /* RNSVGUseManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGUseManager.m; sourceTree = ""; }; + 447B419F81A90075849E06FE8EE052A7 /* RNSVGFontData.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGFontData.h; sourceTree = ""; }; + 44F60D75E0FF996D55B0F22CE77F9EE3 /* MaskContainerLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MaskContainerLayer.swift; path = "lottie-swift/src/Private/LayerContainers/CompLayers/MaskContainerLayer.swift"; sourceTree = ""; }; + 44FA199887993BF19DFE52C20879A296 /* REAParamNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = REAParamNode.h; sourceTree = ""; }; + 4504C02F6885F9A32400DAE21F8C8ECC /* object.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = object.cpp; sourceTree = ""; }; + 452EDA3644C6B00B38EA15C0D16E6FAE /* RCTSettingsManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTSettingsManager.h; path = Libraries/Settings/RCTSettingsManager.h; sourceTree = ""; }; + 45ADC42A5608B722F30A12FE991AECE6 /* RCTBlobCollector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTBlobCollector.h; sourceTree = ""; }; + 45B8F0FD359BDE2CF9A889EA9F88C040 /* RNSVGMaskManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGMaskManager.m; sourceTree = ""; }; + 45CDDDB6E374C0015BCF57C54C0DDE50 /* RCTBlobManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTBlobManager.h; path = Libraries/Blob/RCTBlobManager.h; sourceTree = ""; }; + 45DB220CA1FB09F4FA1F9DD2AEB340A3 /* RNSVGUnits.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGUnits.h; sourceTree = ""; }; + 461220437067A67B8216B42615A11787 /* Glyph.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Glyph.swift; path = "lottie-swift/src/Private/Model/Text/Glyph.swift"; sourceTree = ""; }; + 4645BD913182CB0A294DCED04A84F423 /* RCTAssert.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTAssert.h; sourceTree = ""; }; + 4670DA52AB56B4468D2026E34E6248D2 /* tr.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = tr.lproj; path = "Objective-C/TOCropViewController/Resources/tr.lproj"; sourceTree = ""; }; + 467EB07BB1D9636C6348DE0824CE8973 /* libreact-native-geolocation.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libreact-native-geolocation.a"; path = "libreact-native-geolocation.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 46A1C02C927AF589BB7440EEC10F1A13 /* RCTRefreshControl.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTRefreshControl.m; sourceTree = ""; }; + 46A3B742B06DA2E86009D062FE1DA66F /* RCTWebSocketExecutor.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTWebSocketExecutor.h; path = Libraries/WebSocket/RCTWebSocketExecutor.h; sourceTree = ""; }; + 46CFD0BF2758FD8B5B98109988FFDFDF /* Assume.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = Assume.cpp; path = folly/lang/Assume.cpp; sourceTree = ""; }; + 46D023E0C2EA3E600A85E761377D18E1 /* RNGestureHandlerState.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNGestureHandlerState.h; path = ios/RNGestureHandlerState.h; sourceTree = ""; }; + 46D8F9B9A62AF4E648AE2E67EBCD21C9 /* weak_realm_notifier.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = weak_realm_notifier.cpp; sourceTree = ""; }; + 4714918EE4630FAB157B2F064DE8CD4B /* Octicons.ttf */ = {isa = PBXFileReference; includeInIndex = 1; name = Octicons.ttf; path = Fonts/Octicons.ttf; sourceTree = ""; }; + 472028112E062A667E47B6733750C70E /* RNSVGPathMeasure.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGPathMeasure.h; sourceTree = ""; }; + 473766C1AD2BD2C63C4E947CEA6FED0A /* jsi.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = jsi.h; sourceTree = ""; }; + 473931876F1AEFF90AEEED73DA02825D /* React-RCTBlob.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = "React-RCTBlob.podspec"; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 474CD3530B055BEC55692F78548E3020 /* JSIndexedRAMBundle.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = JSIndexedRAMBundle.h; sourceTree = ""; }; + 47795E50FDB26268311A15A1DFF2EEBC /* RCTUITextField.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTUITextField.h; sourceTree = ""; }; + 477E8E8EE5FA9726A8CF90F91608AEA9 /* RNSVGSolidColorBrush.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGSolidColorBrush.m; sourceTree = ""; }; + 47CBEFF5BE4D0F8380F981BB70C384F8 /* RNSVG.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RNSVG.debug.xcconfig; sourceTree = ""; }; + 47D4817F5F3DA8A41E569EA5707AC872 /* ReactCommon.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = ReactCommon.debug.xcconfig; sourceTree = ""; }; + 47D5A4B5FA87B449CFACECE61F7618CB /* RNGestureHandlerDirection.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNGestureHandlerDirection.h; path = ios/RNGestureHandlerDirection.h; sourceTree = ""; }; + 481048761DD53310736C4561BBDF94C4 /* RCTReloadCommand.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTReloadCommand.h; sourceTree = ""; }; + 4811840663C67793CACE5A5E9D5DEA8D /* ImageLayerModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageLayerModel.swift; path = "lottie-swift/src/Private/Model/Layers/ImageLayerModel.swift"; sourceTree = ""; }; + 483A3BD2B103D243C3B5A7FA1C4596DD /* RNSVGGroup.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGGroup.m; sourceTree = ""; }; + 48576BF0292342E3BC471147EF3D588D /* RCTWebSocketModule.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTWebSocketModule.h; path = Libraries/WebSocket/RCTWebSocketModule.h; sourceTree = ""; }; + 488A883E82E6CEC81792A718204AFB9F /* lottie-ios-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "lottie-ios-prefix.pch"; sourceTree = ""; }; + 488C8D5FFF48CDD423E94F8411F026CE /* RNSVGLine.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGLine.h; sourceTree = ""; }; + 48A06E53D3A275C589D959860DD484D8 /* AIRMapWMSTile.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMapWMSTile.h; path = lib/ios/AirMaps/AIRMapWMSTile.h; sourceTree = ""; }; + 48A1CD53AA3A3F83C64BB32E5F3081F3 /* RNSVGPattern.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGPattern.m; sourceTree = ""; }; + 48D2BFC0CCCC73A21D8E245D8EDF6F38 /* RCTInspector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTInspector.h; sourceTree = ""; }; + 49047AFBEE5C543564467395A9C9D73D /* RCTMultiplicationAnimatedNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTMultiplicationAnimatedNode.m; sourceTree = ""; }; + 4917A772D55F70B7964C13395809088D /* RCTSpringAnimation.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTSpringAnimation.m; sourceTree = ""; }; + 491ACEEC084EEBD1AF81B3874F655B22 /* RCTLayoutAnimation.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTLayoutAnimation.h; sourceTree = ""; }; + 4948B166AF162F3A8A4B3AD68DF83313 /* Transform.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Transform.swift; path = "lottie-swift/src/Private/Model/Objects/Transform.swift"; sourceTree = ""; }; + 498863C98F2FFA153EF5F1279710387E /* RCTFont.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTFont.h; sourceTree = ""; }; + 498FF31B1E6C74659361EEE84D4FBCB2 /* REAModule.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = REAModule.h; path = ios/REAModule.h; sourceTree = ""; }; + 49AE4A66A6F731C49E1ECBCF3612A110 /* PreCompLayerModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PreCompLayerModel.swift; path = "lottie-swift/src/Private/Model/Layers/PreCompLayerModel.swift"; sourceTree = ""; }; + 49C4FF93669B6B8D7C637184CB73BB14 /* ColorValueProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ColorValueProvider.swift; path = "lottie-swift/src/Public/DynamicProperties/ValueProviders/ColorValueProvider.swift"; sourceTree = ""; }; + 49D41D79C48D7AD6384AED26AFC8836E /* RCTVirtualTextViewManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTVirtualTextViewManager.m; sourceTree = ""; }; + 49E12CC2FAC9E129F13B618C9DAA90E5 /* shared_realm.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = shared_realm.cpp; sourceTree = ""; }; + 4A65D8B455B933E2F30F0B8B28D71A75 /* pt.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = pt.lproj; path = "Objective-C/TOCropViewController/Resources/pt.lproj"; sourceTree = ""; }; + 4AF99E4638DBC408CE7391E06909B359 /* RCTFollyConvert.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTFollyConvert.h; sourceTree = ""; }; + 4B2873661471166C092946EF318248F4 /* REAFunctionNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = REAFunctionNode.h; sourceTree = ""; }; + 4B45AA363D060710B4E59DEA210DECAB /* RCTShadowView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTShadowView.m; sourceTree = ""; }; + 4B7048C24D01788A2C650FB69683ED54 /* REAConcatNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = REAConcatNode.h; sourceTree = ""; }; + 4B720061908D4BEB21C59F87BF34A4AE /* KeyedDecodingContainerExtensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KeyedDecodingContainerExtensions.swift; path = "lottie-swift/src/Private/Model/Extensions/KeyedDecodingContainerExtensions.swift"; sourceTree = ""; }; + 4B77E2A04EA9DCD7B2E08ED0D0F348F7 /* RCTVibration.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTVibration.m; sourceTree = ""; }; + 4B9B99B1121A87ECBACFA339D646006A /* json_pointer.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = json_pointer.cpp; path = folly/json_pointer.cpp; sourceTree = ""; }; + 4BD37C5D1BA858A86F0358171F23DA14 /* EvilIcons.ttf */ = {isa = PBXFileReference; includeInIndex = 1; name = EvilIcons.ttf; path = Fonts/EvilIcons.ttf; sourceTree = ""; }; + 4BE4060AC80BBD206777C8389FACCD1C /* RCTShadowView+Internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RCTShadowView+Internal.h"; sourceTree = ""; }; + 4C8051C4A82E5F9EBF47A3770257222C /* REAAlwaysNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = REAAlwaysNode.m; sourceTree = ""; }; + 4CA19C65346D091804005BAAEB361189 /* PointValueProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PointValueProvider.swift; path = "lottie-swift/src/Public/DynamicProperties/ValueProviders/PointValueProvider.swift"; sourceTree = ""; }; + 4CA1B9B0A3ED95CB8EB3D05216B911D4 /* RCTTouchEvent.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTTouchEvent.h; sourceTree = ""; }; + 4CD700CC8B8998EF3FFDE5522CFC7E55 /* REAClockNodes.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = REAClockNodes.m; sourceTree = ""; }; + 4CFCA010C0EFE4F3E4F3A2FA03BE7473 /* RNVectorIcons-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RNVectorIcons-prefix.pch"; sourceTree = ""; }; + 4D4D966CB0B5DBF5A95CD5B0ACBB2816 /* RCTImageView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTImageView.m; sourceTree = ""; }; + 4D55A6519C43271CF42C22ED8817DF7D /* AIRMapWMSTile.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRMapWMSTile.m; path = lib/ios/AirMaps/AIRMapWMSTile.m; sourceTree = ""; }; + 4D5D85AEDEAA354642E892FBC692C86E /* RNSVG-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RNSVG-dummy.m"; sourceTree = ""; }; + 4D69B51101A0AA616493B82136BC579A /* AnyValueContainer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnyValueContainer.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/Protocols/AnyValueContainer.swift"; sourceTree = ""; }; + 4D7F856D61AF959C02BF56C52978AFC3 /* RCTFrameUpdate.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTFrameUpdate.m; sourceTree = ""; }; + 4D9231069E0049915DEE75A2761A4A73 /* RCTInspector.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTInspector.mm; sourceTree = ""; }; + 4DF130A479D866B624EEE73A4ACCE8EB /* RNSVGTextProperties.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGTextProperties.h; sourceTree = ""; }; + 4E0AB66B7AE30A76758A02A92ACA5580 /* RCTBundleURLProvider.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTBundleURLProvider.h; sourceTree = ""; }; + 4E78ECAAE5E329C96AB5093B71A84ED6 /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; + 4F1B3069E475A1E12C80ABEB4DD2878B /* RCTSinglelineTextInputView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTSinglelineTextInputView.m; sourceTree = ""; }; + 4F3644EA325AAD4763E3CD93F1EB04C8 /* RCTFileReaderModule.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTFileReaderModule.h; path = Libraries/Blob/RCTFileReaderModule.h; sourceTree = ""; }; + 4F4A53FF74590788EE004AA12EFAB13B /* RCTProgressViewManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTProgressViewManager.h; sourceTree = ""; }; + 4F5C303E82C60CF22ECDA6FD5EEEA355 /* AnimatedButton.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimatedButton.swift; path = "lottie-swift/src/Public/iOS/AnimatedButton.swift"; sourceTree = ""; }; + 4F733DE7CEA64E779D2AB5344A8D210F /* jsi-inl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "jsi-inl.h"; sourceTree = ""; }; + 4F9C7A3BAD8B0BC2E6449C266492FEF2 /* RCTDefines.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTDefines.h; sourceTree = ""; }; + 4FED59ED46F5F9A4D35A34040C39E4EC /* utilities.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = utilities.cc; path = src/utilities.cc; sourceTree = ""; }; + 4FFE18354072714919B90087FFAE4F5A /* RCTCameraManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RCTCameraManager.m; path = ios/RCT/RCTCameraManager.m; sourceTree = ""; }; + 500BF972EE71D4A432E0BE2B2CB1E84A /* React-RCTAnimation.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-RCTAnimation.debug.xcconfig"; sourceTree = ""; }; + 50179AB63ADD3815B9B4566814192F0A /* FBLazyIterator.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FBLazyIterator.h; path = FBLazyVector/FBLazyIterator.h; sourceTree = ""; }; + 50197EC73434CEB07B13F385AFF16CE6 /* AIRMapLocalTileOverlay.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMapLocalTileOverlay.h; path = lib/ios/AirMaps/AIRMapLocalTileOverlay.h; sourceTree = ""; }; + 504C63F003605D6B94937D2BB3CFDA45 /* RCTBackedTextInputViewProtocol.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTBackedTextInputViewProtocol.h; sourceTree = ""; }; + 50584A9738977F02BAA19FAF1852C173 /* Shape.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Shape.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Shape.swift"; sourceTree = ""; }; + 50943E759469A4DA556A0A5F5803C5FB /* RNGestureHandlerEvents.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNGestureHandlerEvents.h; path = ios/RNGestureHandlerEvents.h; sourceTree = ""; }; + 50A02522AD4650CF22415245E6CB64BC /* AnimationView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationView.swift; path = "lottie-swift/src/Public/Animation/AnimationView.swift"; sourceTree = ""; }; + 50A8E6A8B13812D35A6ADFE6AFCF0C67 /* RNGestureHandlerRegistry.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNGestureHandlerRegistry.h; path = ios/RNGestureHandlerRegistry.h; sourceTree = ""; }; + 50B5347C9A6E93B7D4CFC3673BA6FB7E /* libRNScreens.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libRNScreens.a; path = libRNScreens.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 50C720EC05325DF48AE2E4A39BA11549 /* RCTScrollContentView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTScrollContentView.h; sourceTree = ""; }; + 50D91B98B644180F17E2F0B921107D6A /* NativeToJsBridge.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = NativeToJsBridge.h; sourceTree = ""; }; + 5110AC7D126D60858DE63A8417B8F43C /* InterpolatableExtensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InterpolatableExtensions.swift; path = "lottie-swift/src/Private/Utility/Interpolatable/InterpolatableExtensions.swift"; sourceTree = ""; }; + 519B4D215722F46CF90B7FC0D6FB0C8C /* RCTTextViewManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTTextViewManager.h; sourceTree = ""; }; + 51A4BB6D0826DB1C5C3F09A53954033F /* RCTEventDispatcher.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTEventDispatcher.h; sourceTree = ""; }; + 51B203790C0B536E63FFEC8EC0A221AC /* RNSVGContextBrush.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGContextBrush.m; sourceTree = ""; }; + 51BA97E8B5085EFFB47BC9C0B785CEA7 /* liblottie-ios.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "liblottie-ios.a"; path = "liblottie-ios.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 51E6D0871555861D7DD68F0866D5714B /* RCTConvert+AirMap.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "RCTConvert+AirMap.m"; path = "lib/ios/AirMaps/RCTConvert+AirMap.m"; sourceTree = ""; }; + 52369F214F7D3999AAD2FB1D35F2712F /* RCTPlatform.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTPlatform.h; path = React/CoreModules/RCTPlatform.h; sourceTree = ""; }; + 526775C360C9261EBFC425EEE0EE2015 /* RNSVGVBMOS.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGVBMOS.h; sourceTree = ""; }; + 526D076208BDAAD49E764C55E3528242 /* NSDataBigString.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = NSDataBigString.h; sourceTree = ""; }; + 52890CA59A1193AFF45B9AABF7471605 /* RCTRawTextShadowView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTRawTextShadowView.m; sourceTree = ""; }; + 5299433FFB7D1A3298297D291DCCDC53 /* RCTOneSignalEventEmitter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTOneSignalEventEmitter.h; path = ios/RCTOneSignal/RCTOneSignalEventEmitter.h; sourceTree = ""; }; + 52A768D937338F16358EB8B715C8D254 /* RCTModalHostViewController.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTModalHostViewController.m; sourceTree = ""; }; + 52B6E83635FB7CD406A454B4D3CCA489 /* RCTNetworkTask.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTNetworkTask.m; sourceTree = ""; }; + 52FE3545A117AE00A617EE1956EF8D79 /* RCTTrackingAnimatedNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTTrackingAnimatedNode.h; sourceTree = ""; }; + 531196045CF781E2E2A2A7F5A5A2D320 /* FillNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FillNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderNodes/FillNode.swift"; sourceTree = ""; }; + 536CA5AE29E2C4F356EC4433357DBFB5 /* RNCAsyncStorage.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RNCAsyncStorage.release.xcconfig; sourceTree = ""; }; + 53B371F807E072436AC7A392043F3AFB /* React-RCTText.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-RCTText.debug.xcconfig"; sourceTree = ""; }; + 53BFB855737231F7590C3F15371E3C81 /* REASetNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = REASetNode.h; sourceTree = ""; }; + 53D98E741ECB98495A273D4401BDBE03 /* RNSVGMarkerManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGMarkerManager.h; sourceTree = ""; }; + 543C167EFACE8505A8CD9A122315CC5B /* RCTMaskedView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTMaskedView.m; sourceTree = ""; }; + 5478DAD9F3C13E4EF7B3DE02B08C2DF2 /* UIImage+CropRotate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIImage+CropRotate.h"; path = "Objective-C/TOCropViewController/Categories/UIImage+CropRotate.h"; sourceTree = ""; }; + 549995AFCC79C5FA48E9CFD8DE16D7DE /* Pods-iLink-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-iLink-tvOS.release.xcconfig"; sourceTree = ""; }; + 54B9B62E608730A2CBE306FE9CDE2518 /* RCTSafeAreaShadowView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTSafeAreaShadowView.m; sourceTree = ""; }; + 54C5655DF49FC43E94FDDB06369C662C /* RNSVGClipPathManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGClipPathManager.m; sourceTree = ""; }; + 54DA99180633C4B97108845D3332EF0D /* fast-dtoa.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = "fast-dtoa.cc"; path = "double-conversion/fast-dtoa.cc"; sourceTree = ""; }; + 54FD6101FCA315D4162DC0DB2C504028 /* RNDateTimePicker-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RNDateTimePicker-prefix.pch"; sourceTree = ""; }; + 55205C3336F08E009307CFABE94124D2 /* SMCalloutView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = SMCalloutView.h; sourceTree = ""; }; + 552BB71966B83C37751C3746A98EB403 /* fixed-dtoa.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = "fixed-dtoa.cc"; path = "double-conversion/fixed-dtoa.cc"; sourceTree = ""; }; + 55371BBADF13052AF9F3FCF822BEDAF1 /* YGStyle.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = YGStyle.h; path = yoga/YGStyle.h; sourceTree = ""; }; + 555AB1FC7B7F776D8228E11F8010160F /* CompatibleAnimationView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompatibleAnimationView.swift; path = "lottie-swift/src/Public/iOS/Compatibility/CompatibleAnimationView.swift"; sourceTree = ""; }; + 5588769C415DB2F73AA197EA76CB3A3B /* RNDeviceInfo-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RNDeviceInfo-dummy.m"; sourceTree = ""; }; + 55A37BEB19936B2AC46E3FDBF0FE935C /* RCTClipboard.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTClipboard.h; sourceTree = ""; }; + 55B86FE4183ADD1BA410C22500D82980 /* JSIndexedRAMBundle.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = JSIndexedRAMBundle.cpp; sourceTree = ""; }; + 55DDE65271BFAC09970FFB0E23CBB6B9 /* CxxNativeModule.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = CxxNativeModule.h; sourceTree = ""; }; + 560B6B60355FB3913DAEFC6F01729E18 /* QBAlbumsViewController.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = QBAlbumsViewController.h; path = ios/QBImagePicker/QBImagePicker/QBAlbumsViewController.h; sourceTree = ""; }; + 5611342CA971ABAACBC3D69EF55FA184 /* GCDWebServerResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerResponse.m; path = GCDWebServer/Core/GCDWebServerResponse.m; sourceTree = ""; }; + 5625FE1D66C2F21DF257DFAFBE8BF593 /* Utils.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = Utils.cpp; path = yoga/Utils.cpp; sourceTree = ""; }; + 56400AC8824BA0478C63849EF848B834 /* Yoga.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = Yoga.cpp; path = yoga/Yoga.cpp; sourceTree = ""; }; + 565BC8F253CCCEFE489405A0FD4B39E5 /* ImageAsset.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageAsset.swift; path = "lottie-swift/src/Private/Model/Assets/ImageAsset.swift"; sourceTree = ""; }; + 567D4AED3651B7DF227938F0036C8961 /* RCTSurfaceHostingProxyRootView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTSurfaceHostingProxyRootView.h; sourceTree = ""; }; + 56B4DE27434DC30C81AB4DAABFD1F89A /* zh-Hans.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = "zh-Hans.lproj"; path = "Objective-C/TOCropViewController/Resources/zh-Hans.lproj"; sourceTree = ""; }; + 573771340335F63FB74E21B2C00942AA /* Yoga.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = Yoga.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 5737DDB4BC95AD399B3206838AB97095 /* libRNCAsyncStorage.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libRNCAsyncStorage.a; path = libRNCAsyncStorage.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 5754F0D9EC0DA9B93A24818A1753B4D8 /* React-RCTVibration.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-RCTVibration.release.xcconfig"; sourceTree = ""; }; + 575FB55529BC9B6F0D9D20D6CEB96FD8 /* bignum-dtoa.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "bignum-dtoa.h"; path = "double-conversion/bignum-dtoa.h"; sourceTree = ""; }; + 576065606DE1DC3900FDCB04B966C6D1 /* CurveVertex.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CurveVertex.swift; path = "lottie-swift/src/Private/Utility/Primitives/CurveVertex.swift"; sourceTree = ""; }; + 576FB081AAB30D745257E99E80AD2D6B /* RCTImageUtils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTImageUtils.h; path = Libraries/Image/RCTImageUtils.h; sourceTree = ""; }; + 579ED420FD0A86D6A5C678137C0B5C67 /* react-native-maps-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "react-native-maps-prefix.pch"; sourceTree = ""; }; + 5845F0B5FE913422AA5D9EBDE4F74CD9 /* QBImagePickerController.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = QBImagePickerController.m; path = ios/QBImagePicker/QBImagePicker/QBImagePickerController.m; sourceTree = ""; }; + 58A29A2023A256185FC7647B5571360C /* CoreModulesPlugins.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = CoreModulesPlugins.mm; sourceTree = ""; }; + 58B6DDF8649561799C59612A1017402F /* RNRootViewGestureRecognizer.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNRootViewGestureRecognizer.m; path = ios/RNRootViewGestureRecognizer.m; sourceTree = ""; }; + 58BAC3BE3C29A9E9E370B8A809161B01 /* REATransformNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = REATransformNode.m; sourceTree = ""; }; + 58E710A75275A5D70E83BFD75A58E611 /* RNDateTimePicker-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RNDateTimePicker-dummy.m"; sourceTree = ""; }; + 58E77F07BFEED1E5E3B7098943105766 /* RNCameraManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNCameraManager.m; path = ios/RN/RNCameraManager.m; sourceTree = ""; }; + 58F6B711E855264BB59EF3F661FFCE4A /* RCTModalManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTModalManager.m; sourceTree = ""; }; + 5956CB06C6247BF92C067BFD00B19A94 /* React-RCTLinking.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-RCTLinking.debug.xcconfig"; sourceTree = ""; }; + 5A03EB8151BCD91F3F1B6AE51FBD0016 /* RCTWebSocketExecutor.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RCTWebSocketExecutor.m; path = Libraries/WebSocket/RCTWebSocketExecutor.m; sourceTree = ""; }; + 5A225CCAB9B5D0F17F06297F84DBFD18 /* RCTLocalAssetImageLoader.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTLocalAssetImageLoader.m; sourceTree = ""; }; + 5A405160551CE5809F6A0E91290D4C53 /* RNSScreenContainer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNSScreenContainer.h; path = ios/RNSScreenContainer.h; sourceTree = ""; }; + 5A5314584E423191E13DA4F9A66837E4 /* RCTConvert+CoreLocation.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RCTConvert+CoreLocation.h"; sourceTree = ""; }; + 5A6F6BC8440E14EE5F145FD6346E237A /* Pods-iLinkTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-iLinkTests.release.xcconfig"; sourceTree = ""; }; + 5A8739C705687DEF976F4D9F33AFCBDA /* RCTURLRequestDelegate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTURLRequestDelegate.h; sourceTree = ""; }; + 5A97AACA39AD7DAD2F9CD93A4B909BCC /* RNVectorIconsManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNVectorIconsManager.m; path = RNVectorIconsManager/RNVectorIconsManager.m; sourceTree = ""; }; + 5AEC11B7D8BE2BF49CB5201864562B77 /* collection_notifications.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = collection_notifications.cpp; sourceTree = ""; }; + 5B9301624E46D65D7578C06A2A71725C /* es.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = es.lproj; path = ios/QBImagePicker/QBImagePicker/es.lproj; sourceTree = ""; }; + 5BCE72ED68916203D67C775A87DA6F01 /* GradientFillRenderer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GradientFillRenderer.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/Renderables/GradientFillRenderer.swift"; sourceTree = ""; }; + 5BD36413BF780117C16695C500F750ED /* RCTCxxConvert.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTCxxConvert.m; sourceTree = ""; }; + 5BDD638591668E011367B1EA21972E6E /* TOCropViewControllerTransitioning.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = TOCropViewControllerTransitioning.h; path = "Objective-C/TOCropViewController/Models/TOCropViewControllerTransitioning.h"; sourceTree = ""; }; + 5BE734EEFD56585A0895EFC28D756917 /* RCTErrorInfo.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTErrorInfo.h; sourceTree = ""; }; + 5C9366E4CFD03F47FF9A4BD7E81AA91E /* RCTI18nUtil.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTI18nUtil.m; sourceTree = ""; }; + 5CBBA114F700AFAF654BDBAC00FBC4EC /* LayerModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LayerModel.swift; path = "lottie-swift/src/Private/Model/Layers/LayerModel.swift"; sourceTree = ""; }; + 5CBEF971B734662512F57BF038AD785D /* QBAssetsViewController.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = QBAssetsViewController.h; path = ios/QBImagePicker/QBImagePicker/QBAssetsViewController.h; sourceTree = ""; }; + 5CC423E0053A3393EE41C1A157A63427 /* GCDWebServerURLEncodedFormRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerURLEncodedFormRequest.h; path = GCDWebServer/Requests/GCDWebServerURLEncodedFormRequest.h; sourceTree = ""; }; + 5CD42AED9B585EAAF64D630194B2AB22 /* placeholder.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = placeholder.cpp; sourceTree = ""; }; + 5CF0AD6932AE049DEFB0E23AA74D4C31 /* lottie-ios-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "lottie-ios-umbrella.h"; sourceTree = ""; }; + 5CFF9A356B85B352D00278459B8D9CCE /* RCTTextAttributes.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTTextAttributes.m; sourceTree = ""; }; + 5D819E0C13CBF2573B035CAD010B0192 /* RCTComponentData.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTComponentData.h; sourceTree = ""; }; + 5D82425EB76E407021CE359B8B67EE7E /* AIRWeakTimerReference.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRWeakTimerReference.h; path = lib/ios/AirMaps/AIRWeakTimerReference.h; sourceTree = ""; }; + 5D8EE209B40051A53ACF824F83122712 /* RCTRedBoxExtraDataViewController.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTRedBoxExtraDataViewController.h; sourceTree = ""; }; + 5DC0DE6FD03A241AD6E29669772E00C9 /* RNCamera.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNCamera.h; path = ios/RN/RNCamera.h; sourceTree = ""; }; + 5DC1040FBA42A288374ED955C41A1E7B /* OneSignal.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OneSignal.framework; path = iOS_SDK/OneSignalSDK/Framework/OneSignal.framework; sourceTree = ""; }; + 5DD77AEF383CA4469C6DF1D36343FAE9 /* RCTCamera.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTCamera.h; path = ios/RCT/RCTCamera.h; sourceTree = ""; }; + 5E0F03068CFBB0137852A4DA585D961F /* RCTAccessibilityManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTAccessibilityManager.m; sourceTree = ""; }; + 5E286A40B066889DDACEA8CA2A30114C /* RCTPlatform.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTPlatform.mm; sourceTree = ""; }; + 5E6AAF803F2BC1B1A072F39B6656E2F8 /* RNPinchHandler.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNPinchHandler.h; sourceTree = ""; }; + 5E8EBF46AD9C383614492B1EF7D67126 /* RCTPackagerConnection.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTPackagerConnection.h; sourceTree = ""; }; + 5E9FA85E174CC1111C1F0121CA659BF8 /* React-RCTActionSheet.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-RCTActionSheet.debug.xcconfig"; sourceTree = ""; }; + 5F49F11D16E44A0F6C7DB2163EE994FC /* RCTNativeModule.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTNativeModule.h; sourceTree = ""; }; + 5F793525BB4973921E4991EA90A46B0B /* es.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = es.lproj; path = "Objective-C/TOCropViewController/Resources/es.lproj"; sourceTree = ""; }; + 5FDF031501671A59C7EF319FCA68AAB9 /* ModuleRegistry.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = ModuleRegistry.cpp; sourceTree = ""; }; + 5FE6D0C44F9602F006C039AFA50D69A9 /* RNImageCropPicker.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RNImageCropPicker.debug.xcconfig; sourceTree = ""; }; + 5FF0045600311F98130B1447FD07520F /* UIColorExtension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UIColorExtension.swift; path = "lottie-swift/src/Public/iOS/UIColorExtension.swift"; sourceTree = ""; }; + 600EF6ECECA90C2C18BF4FD8DB4AE5AB /* Pods-iLink-tvOSTests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-iLink-tvOSTests-acknowledgements.plist"; sourceTree = ""; }; + 602C103D28B8AC2841B6268801AF55F4 /* REAClockNodes.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = REAClockNodes.h; sourceTree = ""; }; + 603FDBBE46E864B0282989E0F4BF22DB /* React-jsinspector-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "React-jsinspector-prefix.pch"; sourceTree = ""; }; + 60604CA21F4AB12AF49A25D2AF741277 /* RNVectorIcons.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RNVectorIcons.debug.xcconfig; sourceTree = ""; }; + 60B3749D7C95B858B87ECDCFAE0DAEAC /* KeyframeExtensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KeyframeExtensions.swift; path = "lottie-swift/src/Private/Utility/Interpolatable/KeyframeExtensions.swift"; sourceTree = ""; }; + 60E6770885A054426AD4666D82C8755A /* RCTTextAttributes.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTTextAttributes.h; path = Libraries/Text/RCTTextAttributes.h; sourceTree = ""; }; + 61064E10F2E4AAC0D7F37609428E8636 /* InspectorInterfaces.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = InspectorInterfaces.cpp; sourceTree = ""; }; + 611BB79A62C1805548CF4B9EBF9B396D /* RCTBlobCollector.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTBlobCollector.mm; sourceTree = ""; }; + 622B78651F1679F7CAEDD1BE863DFB36 /* RCTFileRequestHandler.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTFileRequestHandler.m; sourceTree = ""; }; + 622D780B90D2B0616B45C93086D98749 /* TOCropOverlayView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = TOCropOverlayView.h; path = "Objective-C/TOCropViewController/Views/TOCropOverlayView.h"; sourceTree = ""; }; + 62458C7A9D0C777C142E0D823CE97E03 /* NSTextStorage+FontScaling.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "NSTextStorage+FontScaling.h"; sourceTree = ""; }; + 6257AED638D193381FA210B25D71AC0E /* ru.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = ru.lproj; path = "Objective-C/TOCropViewController/Resources/ru.lproj"; sourceTree = ""; }; + 6275A10B4B9A37EB85CC301FD94CB1D7 /* RNReanimated-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RNReanimated-prefix.pch"; sourceTree = ""; }; + 62933147C4B3D0BD758E608A1EDDCDA9 /* RCTPackagerClient.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTPackagerClient.m; sourceTree = ""; }; + 635500BD2B73F2F50A72E06A6F5E6960 /* libPods-iLink-tvOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libPods-iLink-tvOS.a"; path = "libPods-iLink-tvOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 636261F1FF693694CCCCED8CDD8CF01B /* RCTViewManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTViewManager.h; sourceTree = ""; }; + 63C843896CD833363548E2E4FFBC3097 /* AIRMapPolygonManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRMapPolygonManager.m; path = lib/ios/AirMaps/AIRMapPolygonManager.m; sourceTree = ""; }; + 64144D61C07CB19BB6FB30AFD0D73ACC /* FontAwesome5_Solid.ttf */ = {isa = PBXFileReference; includeInIndex = 1; name = FontAwesome5_Solid.ttf; path = Fonts/FontAwesome5_Solid.ttf; sourceTree = ""; }; + 647C381FBA74C3BE6C654B29F505BAD9 /* log_severity.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = log_severity.h; path = src/glog/log_severity.h; sourceTree = ""; }; + 64C33B8BCF1452B2A9CF1363C0A924DE /* jsilib.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = jsilib.h; sourceTree = ""; }; + 64E7DDD956AB1E2A092944B6AF63B511 /* RealmJS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RealmJS.release.xcconfig; sourceTree = ""; }; + 64FDCB91E651F23569A78DD5D1E6D767 /* RCTImageViewManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTImageViewManager.m; sourceTree = ""; }; + 650A6C7022A7065CCB196F45C35EC45A /* RCTSurface.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTSurface.h; sourceTree = ""; }; + 653E9206FF43C654DDBF37077E4E6DAC /* RNSVGTextPathManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGTextPathManager.h; sourceTree = ""; }; + 654850F713E88C81441088B8D23B03E3 /* FBLazyVector.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = FBLazyVector.debug.xcconfig; sourceTree = ""; }; + 65869F9D725B3E057F6DBCA9817F47E5 /* RNSVGEllipseManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGEllipseManager.m; sourceTree = ""; }; + 65A94B5CC4FCC790C3DDC2DBDCCB3295 /* de.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = de.lproj; path = ios/QBImagePicker/QBImagePicker/de.lproj; sourceTree = ""; }; + 65D0A19C165FA1126B1360680FE6DB12 /* libYoga.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libYoga.a; path = libYoga.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 660BB17F6310FAE3DF38D296DE5CD94B /* fixed-dtoa.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "fixed-dtoa.h"; path = "double-conversion/fixed-dtoa.h"; sourceTree = ""; }; + 660DD5D7AADE9B4C05EA68A3F884B071 /* React-RCTLinking-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "React-RCTLinking-prefix.pch"; sourceTree = ""; }; + 66105FE56A71FB57AA18EF679C63DF3E /* React-RCTNetwork.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-RCTNetwork.debug.xcconfig"; sourceTree = ""; }; + 664D2E3241F36EF74825F97596BFC24B /* list.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = list.cpp; sourceTree = ""; }; + 6667B74E44F9980007ED62CDE1A92BDC /* LayerDebugging.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LayerDebugging.swift; path = "lottie-swift/src/Private/Utility/Debugging/LayerDebugging.swift"; sourceTree = ""; }; + 669DD6944BE4CFC59BD466338F2003AE /* GCDWebServer-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "GCDWebServer-dummy.m"; sourceTree = ""; }; + 66A4A900168DF84350DE3936449B4831 /* bignum.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = bignum.cc; path = "double-conversion/bignum.cc"; sourceTree = ""; }; + 66C2D602D6DDB84D99C4C8F1B146C048 /* RNSVGGroupManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGGroupManager.h; sourceTree = ""; }; + 673B4475CAC51EA0B22EBC0E13E734F8 /* lottie-react-native-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "lottie-react-native-dummy.m"; sourceTree = ""; }; + 67586DC09D87AF553F5DC16248565CCA /* vi.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = vi.lproj; path = "Objective-C/TOCropViewController/Resources/vi.lproj"; sourceTree = ""; }; + 6771D231F4C8C5976470A369C474B32E /* libReact-CoreModules.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libReact-CoreModules.a"; path = "libReact-CoreModules.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 6785A6A2B5E500AE24B6000B8B18097E /* RCTValueAnimatedNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTValueAnimatedNode.h; sourceTree = ""; }; + 67ADEB60587D4C023C44CBB1C63BF37D /* RCTManagedPointer.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTManagedPointer.mm; sourceTree = ""; }; + 68706D4A0C78AACC5676D109B6335143 /* AIRMapCallout.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRMapCallout.m; path = lib/ios/AirMaps/AIRMapCallout.m; sourceTree = ""; }; + 688712FE524FD7615FFC4E8A3010E879 /* RNScreens-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RNScreens-prefix.pch"; sourceTree = ""; }; + 68C5C39650734974DF7D21E2C3760F7A /* RCTCxxUtils.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTCxxUtils.mm; sourceTree = ""; }; + 68ED5A842E7231320ABDE316490420E1 /* React.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = React.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 694852843B57B697F6ADBDB842AD291B /* RCTTextViewManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTTextViewManager.m; sourceTree = ""; }; + 6A00FFA25833DF2C75FBD399F10B1BCC /* TextLayerModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TextLayerModel.swift; path = "lottie-swift/src/Private/Model/Layers/TextLayerModel.swift"; sourceTree = ""; }; + 6A114333805DE8B6D7915EF12D5DF587 /* RCTTypeSafety.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RCTTypeSafety.release.xcconfig; sourceTree = ""; }; + 6A21BB17A85343C4DB3885513C7C065D /* NSTextStorage+FontScaling.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "NSTextStorage+FontScaling.m"; sourceTree = ""; }; + 6A502F7BECBACF50CF81B68145AFD5C0 /* RealmJS.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = RealmJS.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 6AB7D4191A575C3BD709C1A9DB46EF2D /* RCTPerformanceLogger.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTPerformanceLogger.m; sourceTree = ""; }; + 6B098EFD21C7FE4F7311D09F2C306100 /* LayerFontProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LayerFontProvider.swift; path = "lottie-swift/src/Private/LayerContainers/Utility/LayerFontProvider.swift"; sourceTree = ""; }; + 6B0D3B2441063AF106090C045BB0DDE5 /* SajjadBlurOverlay.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = SajjadBlurOverlay.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 6B1A001CE4A127740AE3F45B3BAAB4E6 /* RCTTypedModuleConstants.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTTypedModuleConstants.h; sourceTree = ""; }; + 6B58E2A464F3DAD8869DEE62AD5CF268 /* React-jsinspector-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "React-jsinspector-dummy.m"; sourceTree = ""; }; + 6B72A60E1F3388D78FDBAA0F988CF489 /* Bitfield.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Bitfield.h; path = yoga/Bitfield.h; sourceTree = ""; }; + 6B9E50B753A1F0508FDFB78E0E7E3FF5 /* RCTNetInfo.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTNetInfo.h; path = Libraries/Network/RCTNetInfo.h; sourceTree = ""; }; + 6C316A01F933FEC5C5A0E8E3EFBDC5B9 /* RCTPickerManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTPickerManager.h; sourceTree = ""; }; + 6C6A076C2D6649006270BB54900B9B84 /* react-native-camera-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "react-native-camera-dummy.m"; sourceTree = ""; }; + 6C6E81BD4CE7D3132D22580E2DA68DFE /* RCTScrollContentShadowView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTScrollContentShadowView.h; sourceTree = ""; }; + 6C70374053BCCA3F927792FE5DEC8D46 /* GroupOutputNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GroupOutputNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/GroupOutputNode.swift"; sourceTree = ""; }; + 6C9790F1A25C1E3828E179A8F0850851 /* libreact-native-camera.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libreact-native-camera.a"; path = "libreact-native-camera.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 6CCD27150B6E947B3F86FF3A6B8D7860 /* RCTCxxModule.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTCxxModule.h; sourceTree = ""; }; + 6D1BFE36CAB063BBAA7D267717D4CA68 /* RCTImageShadowView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTImageShadowView.h; path = Libraries/Image/RCTImageShadowView.h; sourceTree = ""; }; + 6D335DC3C756371F6E0702960771B263 /* pl.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = pl.lproj; path = ios/QBImagePicker/QBImagePicker/pl.lproj; sourceTree = ""; }; + 6D66414981C1C0B3B9555AC1D0FF9F71 /* QBCheckmarkView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = QBCheckmarkView.m; path = ios/QBImagePicker/QBImagePicker/QBCheckmarkView.m; sourceTree = ""; }; + 6D78E97C0F10F1A6278E621D595881D5 /* Yoga.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Yoga.debug.xcconfig; sourceTree = ""; }; + 6DB71030186F2C7F1A0C0DF63348A212 /* JSCRuntime.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = JSCRuntime.cpp; sourceTree = ""; }; + 6DE0F3A352D635719C79228A666B5705 /* RNLongPressHandler.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNLongPressHandler.h; sourceTree = ""; }; + 6E1E723D7E6C58E0459B90E5BECBFA9C /* RNScreens.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RNScreens.debug.xcconfig; sourceTree = ""; }; + 6E2AB9BF40B61584FE7BB9574ED19487 /* RNSScreenContainer.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNSScreenContainer.m; path = ios/RNSScreenContainer.m; sourceTree = ""; }; + 6E310F41375B2CDC6DBCFA7531AC732F /* TOCropOverlayView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = TOCropOverlayView.m; path = "Objective-C/TOCropViewController/Views/TOCropOverlayView.m"; sourceTree = ""; }; + 6E4E636EB61FF1DE8AE8658194AC98F9 /* RCTProfileTrampoline-i386.S */ = {isa = PBXFileReference; includeInIndex = 1; path = "RCTProfileTrampoline-i386.S"; sourceTree = ""; }; + 6E803FA67F7D71B0B20BBECB78ACE795 /* RNFlingHandler.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNFlingHandler.h; sourceTree = ""; }; + 6E8C8F496918215CA7D4630C8249458E /* event.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = event.cpp; sourceTree = ""; }; + 6EA97A7FED61A10933FDF7CC30189016 /* TurboCxxModule.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = TurboCxxModule.h; path = turbomodule/core/TurboCxxModule.h; sourceTree = ""; }; + 6EAF25ECC4C97ADBA41C50ACB59EFFBB /* AIRMapMarker.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMapMarker.h; path = lib/ios/AirMaps/AIRMapMarker.h; sourceTree = ""; }; + 6EDD0F2045255702F8BF873E21C6CEF2 /* InspectorInterfaces.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = InspectorInterfaces.h; sourceTree = ""; }; + 6F1DD536EAAB6D919CF59FB17CC6EB35 /* diy-fp.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "diy-fp.h"; path = "double-conversion/diy-fp.h"; sourceTree = ""; }; + 6FA06CC28AC81A724A160608A1C0D75E /* ShapeLayerModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShapeLayerModel.swift; path = "lottie-swift/src/Private/Model/Layers/ShapeLayerModel.swift"; sourceTree = ""; }; + 6FA615BE5A848690598E817DA94371E1 /* rpc.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = rpc.cpp; sourceTree = ""; }; + 6FDB54E2B2E7DFFA358E0A11CD2931DF /* RCTMultipartStreamReader.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTMultipartStreamReader.h; sourceTree = ""; }; + 6FF5B0AD00C735E86BAA53FF5809A594 /* RCTLog.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTLog.h; sourceTree = ""; }; + 6FFB7B2992BB53405E6B771A5BA1E97D /* libDoubleConversion.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libDoubleConversion.a; path = libDoubleConversion.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 6FFD597AC5DF43F892AB801248AB8A10 /* AIRMapOverlay.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRMapOverlay.m; path = lib/ios/AirMaps/AIRMapOverlay.m; sourceTree = ""; }; + 700E1CF0FF28EEA4D256679D2C52D1D3 /* sync_user.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = sync_user.cpp; sourceTree = ""; }; + 706EC88AF966B49FD2374357062CBA52 /* RCTMultiplicationAnimatedNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTMultiplicationAnimatedNode.h; sourceTree = ""; }; + 709CC5C4FE2BC2CE8DB81A782936132F /* RNSVGText.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGText.m; sourceTree = ""; }; + 70A0C701CAD12981CDFEE9BF1A431647 /* RNSVGRenderableManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGRenderableManager.h; sourceTree = ""; }; + 70E7BF838C02C0A2FF48EB19B10BDC89 /* Utils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Utils.h; path = yoga/Utils.h; sourceTree = ""; }; + 70EDA0C75E78208777AD89E763143135 /* InvertedMatteLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InvertedMatteLayer.swift; path = "lottie-swift/src/Private/LayerContainers/Utility/InvertedMatteLayer.swift"; sourceTree = ""; }; + 70EF3D448847749995CB9ABEE7EB1F7D /* UIImage+Resize.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIImage+Resize.m"; path = "ios/src/UIImage+Resize.m"; sourceTree = ""; }; + 710025FCA7E652157AAB51169A6A3B4B /* RCTI18nManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTI18nManager.m; sourceTree = ""; }; + 7101479F5CD6F5D2501A4885D066358C /* React-RCTNetwork-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "React-RCTNetwork-prefix.pch"; sourceTree = ""; }; + 71150CA7F48E01E42E49DC5CA6E9B72F /* READebugNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = READebugNode.h; sourceTree = ""; }; + 71906625612FE7619B438B05817919C2 /* React-CoreModules-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "React-CoreModules-dummy.m"; sourceTree = ""; }; + 7194ED6F7AE881D0ED9A320FDA2E14BB /* AIRMapPolylineManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRMapPolylineManager.m; path = lib/ios/AirMaps/AIRMapPolylineManager.m; sourceTree = ""; }; + 71B3840B5A07655243EB6F42D202C011 /* platform.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = platform.mm; sourceTree = ""; }; + 71BCA6F1E866D61A8F2CD0C05995D486 /* AIRMapUrlTileManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRMapUrlTileManager.m; path = lib/ios/AirMaps/AIRMapUrlTileManager.m; sourceTree = ""; }; + 71D33767BF1CBD34C5025C5B6ED4970D /* RCTKeyboardObserver.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTKeyboardObserver.m; sourceTree = ""; }; + 71E87574F5B8FBC1231AB4D96B30EDA1 /* DoubleConversion-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "DoubleConversion-prefix.pch"; sourceTree = ""; }; + 71FC3C1B1E5913413B39A0900ADD625A /* lottie-react-native.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "lottie-react-native.release.xcconfig"; sourceTree = ""; }; + 72078927C310B96D92A56714ED3BF9A4 /* RNSVG.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = RNSVG.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 7256C3E430E65AD4CA3CDADBD81F8FC3 /* QBSlomoIconView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = QBSlomoIconView.m; path = ios/QBImagePicker/QBImagePicker/QBSlomoIconView.m; sourceTree = ""; }; + 7298EFB5C06E4F5EB067A6DAA2212C6E /* FBReactNativeSpec-generated.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = "FBReactNativeSpec-generated.mm"; path = "FBReactNativeSpec/FBReactNativeSpec-generated.mm"; sourceTree = ""; }; + 729A046BD9A03AD5CCF635ECEFCE14AA /* QBCheckmarkView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = QBCheckmarkView.h; path = ios/QBImagePicker/QBImagePicker/QBCheckmarkView.h; sourceTree = ""; }; + 729F736E4E4227EADFC3FE07B8AB8FF8 /* GCDWebServerFunctions.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerFunctions.h; path = GCDWebServer/Core/GCDWebServerFunctions.h; sourceTree = ""; }; + 72BBD3BF5FBF0A74100107A04314D66D /* JSCExecutorFactory.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = JSCExecutorFactory.mm; sourceTree = ""; }; + 72C0FC03C6C07D68A5ED376DFDB22818 /* RCTBaseTextShadowView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTBaseTextShadowView.h; sourceTree = ""; }; + 72D8FF2E5195EB02FBB3D078A6586980 /* results.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = results.cpp; sourceTree = ""; }; + 72DE4BF3FB9CE0858E90F96FEF8A53AE /* libRNDateTimePicker.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libRNDateTimePicker.a; path = libRNDateTimePicker.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 73485C316AF95C3A4CFBC5028A5C9161 /* RCTAnimationUtils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTAnimationUtils.h; path = Libraries/NativeAnimation/RCTAnimationUtils.h; sourceTree = ""; }; + 73684E0214C8D43E19324DE2BFA3C0C6 /* SajjadBlurOverlay-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SajjadBlurOverlay-prefix.pch"; sourceTree = ""; }; + 736D649113F9389422700F740D49A6C9 /* hu.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = hu.lproj; path = "Objective-C/TOCropViewController/Resources/hu.lproj"; sourceTree = ""; }; + 73706B8F905E51476FFB1E07B7441C84 /* json.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = json.cpp; path = folly/json.cpp; sourceTree = ""; }; + 737F34B5D8C9828B843A5EBC93448DFE /* CompositionLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompositionLayer.swift; path = "lottie-swift/src/Private/LayerContainers/CompLayers/CompositionLayer.swift"; sourceTree = ""; }; + 73B7B1302F2055B7FE4771197F78DB94 /* RCTImageShadowView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTImageShadowView.m; sourceTree = ""; }; + 73CFF86E66CA6530C533F82C0D9918D4 /* RNFileSystem.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNFileSystem.m; path = ios/RN/RNFileSystem.m; sourceTree = ""; }; + 73D30F0F36855F1FA2C14326FA54DE73 /* RCTDatePicker.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTDatePicker.h; sourceTree = ""; }; + 73D5C1B92EBC7EC45CA66C7F1C973329 /* sync_file.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = sync_file.cpp; sourceTree = ""; }; + 73E4071EE596A46AF46AA27785E00BD6 /* RCTConvert+Transform.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RCTConvert+Transform.h"; sourceTree = ""; }; + 73E4D5D8AB85BB543BA80AF91A4A54E4 /* ShapeItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShapeItem.swift; path = "lottie-swift/src/Private/Model/ShapeItems/ShapeItem.swift"; sourceTree = ""; }; + 73F8A95B79671F501F31EA4F1D04AA8B /* libReact-RCTActionSheet.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libReact-RCTActionSheet.a"; path = "libReact-RCTActionSheet.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 740BFA3C4BF5489668EA60BEB7F0015E /* RCTBridge.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTBridge.m; sourceTree = ""; }; + 74119D6B6491F2CB24E52E8CAEFE08FD /* RenderNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RenderNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Protocols/RenderNode.swift"; sourceTree = ""; }; + 744173C084A9BE1B01D9462C2E80C922 /* GCDWebServerDataRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerDataRequest.h; path = GCDWebServer/Requests/GCDWebServerDataRequest.h; sourceTree = ""; }; + 74517B0BB959C1BBE44F26745988B490 /* React.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = React.release.xcconfig; sourceTree = ""; }; + 750DD61945F119359A05FA682031EBF6 /* react-native-maps.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "react-native-maps.debug.xcconfig"; sourceTree = ""; }; + 7585C8287C679BC8CA153139099A61C0 /* RCTDevLoadingView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTDevLoadingView.h; sourceTree = ""; }; + 7588FD0443F70D8637F85591DF95CFB0 /* ResourceBundle-QBImagePicker-RNImageCropPicker-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "ResourceBundle-QBImagePicker-RNImageCropPicker-Info.plist"; sourceTree = ""; }; + 75CB59035009306F655813E57AA315CF /* RCTAppState.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTAppState.m; sourceTree = ""; }; + 75F121866F310C3FA277BCCAAABD740E /* ResourceBundle-TOCropViewControllerBundle-TOCropViewController-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "ResourceBundle-TOCropViewControllerBundle-TOCropViewController-Info.plist"; sourceTree = ""; }; + 760E2E5EE6FA20ED6590B59190A00FC7 /* RNCAsyncStorage.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = RNCAsyncStorage.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 760E9570B05F13E03833806189DF0606 /* AIRMapCallout.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMapCallout.h; path = lib/ios/AirMaps/AIRMapCallout.h; sourceTree = ""; }; + 76348F1D7EF761E34111394E6D54AD34 /* RNSVGSvgViewManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGSvgViewManager.m; sourceTree = ""; }; + 7673B2D115E85C1126E3211044E8FC09 /* RCTRedBox.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTRedBox.h; sourceTree = ""; }; + 767FF03826379CAB7439B6815303B21C /* LRNAnimationViewManagerObjC.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = LRNAnimationViewManagerObjC.m; path = src/ios/LottieReactNative/LRNAnimationViewManagerObjC.m; sourceTree = ""; }; + 76E81A2910CF3CC4663AB4279E036EF8 /* NullCompositionLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NullCompositionLayer.swift; path = "lottie-swift/src/Private/LayerContainers/CompLayers/NullCompositionLayer.swift"; sourceTree = ""; }; + 77013FFDD7D10A1C58EFA2A192BEC4E7 /* Instance.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = Instance.h; sourceTree = ""; }; + 7717776B68354B70627CC6738268D702 /* RCTAlertManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTAlertManager.h; sourceTree = ""; }; + 773EF626A21E5504D15163293B9DDC47 /* AIRMap.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMap.h; path = lib/ios/AirMaps/AIRMap.h; sourceTree = ""; }; + 77488C1A650D170A8045F3CFF1F3CFF2 /* RNSVGGlyphContext.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGGlyphContext.m; sourceTree = ""; }; + 77594105A1B54F3D88111DA3EF451536 /* RCTFont.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTFont.mm; sourceTree = ""; }; + 777E4E8BA27DC30A222D9DC89987909F /* RCTInputAccessoryView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTInputAccessoryView.m; sourceTree = ""; }; + 77DEEF8F2C9F9BFD0DF1D006B5AE194F /* raw_logging.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = raw_logging.h; path = src/glog/raw_logging.h; sourceTree = ""; }; + 7820EF6AE129D8A6E56947A900101DC0 /* RCTTurboModule.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTTurboModule.mm; sourceTree = ""; }; + 78321038125796A200A279EFFF357917 /* ca.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = ca.lproj; path = "Objective-C/TOCropViewController/Resources/ca.lproj"; sourceTree = ""; }; + 78456FC43D816C9D11B0E2DCEFF709E4 /* TOCroppedImageAttributes.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = TOCroppedImageAttributes.h; path = "Objective-C/TOCropViewController/Models/TOCroppedImageAttributes.h"; sourceTree = ""; }; + 78503560CB6DA333AC20069BC6726A4C /* librealm-parser-ios.a */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = archive.ar; name = "librealm-parser-ios.a"; path = "vendor/realm-ios/librealm-parser-ios.a"; sourceTree = ""; }; + 785BB18FFFB2E76B227AEF0B066D99F7 /* RNSVGLinearGradient.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGLinearGradient.m; sourceTree = ""; }; + 7862C607B7BE0510C2D65193F9B4B4F9 /* libTOCropViewController.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libTOCropViewController.a; path = libTOCropViewController.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 78E0D082135EE39C1A6DA81DE350993F /* Repeater.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Repeater.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Repeater.swift"; sourceTree = ""; }; + 79556F42A611B43D2BF03DCFAF7FB62C /* RNSVGSvgViewManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGSvgViewManager.h; sourceTree = ""; }; + 7966EC2076A87C769C3EEEB42BC2058E /* JSBigString.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = JSBigString.h; sourceTree = ""; }; + 799BE66953821B7B47F1A3F98B6F6E69 /* RCTBackedTextInputDelegate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTBackedTextInputDelegate.h; sourceTree = ""; }; + 79B34DCD3E798060E3FAC707FB02B4C7 /* RCTModuleData.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTModuleData.mm; sourceTree = ""; }; + 7A055495913CCF036F8B4B22D49086C2 /* RCTCxxConvert.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTCxxConvert.h; sourceTree = ""; }; + 7A3F706A3A93F516C6A30854D2780162 /* React-RCTVibration.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = "React-RCTVibration.podspec"; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 7A3FA2BCBF68AA551CB11D6DC749812D /* diy-fp.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = "diy-fp.cc"; path = "double-conversion/diy-fp.cc"; sourceTree = ""; }; + 7A77B97619DE3D94F3AF5B9B10D1341A /* Pods-iLink-tvOSTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-iLink-tvOSTests.debug.xcconfig"; sourceTree = ""; }; + 7A7961293D603CFA0060D00C63388BDD /* RNCGeolocation.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNCGeolocation.h; path = ios/RNCGeolocation.h; sourceTree = ""; }; + 7A97DED01EE577E8F13121AC4765C4E2 /* TOCropView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = TOCropView.m; path = "Objective-C/TOCropViewController/Views/TOCropView.m"; sourceTree = ""; }; + 7AF68DB4F7BCC4737E1F884CDF708396 /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; + 7B1A79BD87FDEE83776AAA976D424018 /* RCTErrorInfo.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTErrorInfo.m; sourceTree = ""; }; + 7B28A227ED20415CFE40C5EC09E34219 /* RNGestureHandlerButton.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNGestureHandlerButton.m; path = ios/RNGestureHandlerButton.m; sourceTree = ""; }; + 7B3DC817FD7E7651426D4C48D3916CC7 /* RCTTextDecorationLineType.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTTextDecorationLineType.h; sourceTree = ""; }; + 7B7667BB16BCE4E97C4737014B2EB4BA /* AIRMapSnapshot.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMapSnapshot.h; path = lib/ios/AirMaps/AIRMapSnapshot.h; sourceTree = ""; }; + 7BA22630E9E815996528155E40B775FF /* React-RCTSettings.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-RCTSettings.debug.xcconfig"; sourceTree = ""; }; + 7BC94ADDD2BE9C6B14901108E4D06F12 /* boost-for-react-native.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "boost-for-react-native.release.xcconfig"; sourceTree = ""; }; + 7BFF2A7F1937AE776B20EE28FD571296 /* fast-dtoa.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "fast-dtoa.h"; path = "double-conversion/fast-dtoa.h"; sourceTree = ""; }; + 7C2B7D861D2C6E5D2EF8964D41042A2A /* TextLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TextLayer.swift; path = "lottie-swift/src/Private/LayerContainers/Utility/TextLayer.swift"; sourceTree = ""; }; + 7C31E658E3322437233A88D10B39E4AF /* FilepathImageProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FilepathImageProvider.swift; path = "lottie-swift/src/Public/iOS/FilepathImageProvider.swift"; sourceTree = ""; }; + 7C35FAB51E7C60BD7AA3D0C548EFF59C /* RCTDevSettings.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTDevSettings.h; sourceTree = ""; }; + 7C3D61A58A642D736FED867AC2529D15 /* RCTWebSocketModule.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RCTWebSocketModule.m; path = Libraries/WebSocket/RCTWebSocketModule.m; sourceTree = ""; }; + 7C539B625A5B05FB54809C8FCA2632D0 /* RCTTypeSafety-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RCTTypeSafety-prefix.pch"; sourceTree = ""; }; + 7C67612F061963421FA070CAD4577F62 /* RCTSwitchManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTSwitchManager.h; sourceTree = ""; }; + 7C908B5C0E43161DF6E78F59FFACD58E /* react-native-viewpager-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "react-native-viewpager-prefix.pch"; sourceTree = ""; }; + 7CBD5CF31D71C6C5D2938D29CE17AD98 /* FillI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FillI.swift; path = "lottie-swift/src/Private/Model/ShapeItems/FillI.swift"; sourceTree = ""; }; + 7CE664330A062DBEF0A6C8163F0E18C8 /* RCTConvert+RNSVG.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RCTConvert+RNSVG.m"; sourceTree = ""; }; + 7D07976F0689C515E1F7FDFA27EE78C6 /* RCTScrollContentView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTScrollContentView.m; sourceTree = ""; }; + 7D13651181CD3669DEB963ECC6217173 /* RCTOneSignal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTOneSignal.h; path = ios/RCTOneSignal/RCTOneSignal.h; sourceTree = ""; }; + 7D2CFD9F616C99B66967227D5D2CF8AB /* lottie-ios-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "lottie-ios-dummy.m"; sourceTree = ""; }; + 7D3BA4BF8CD995CA9FE2B7582091BB8A /* RNReanimated.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = RNReanimated.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 7D3CE2BDC12B2467B74974FD13756591 /* threadsafe.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = threadsafe.h; sourceTree = ""; }; + 7D62A6FE1F4E93AE3B6B8B800E295FD0 /* RecoverableError.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RecoverableError.h; sourceTree = ""; }; + 7DA56D6F1E668767B01C6247B344D205 /* RCTSwitch.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTSwitch.m; sourceTree = ""; }; + 7DC1F9D522F7EC7281031D838802F5D4 /* RNDateTimePicker.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RNDateTimePicker.debug.xcconfig; sourceTree = ""; }; + 7DECE66EC6AC34CEA9025115711FC6A6 /* AIRMapCircle.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRMapCircle.m; path = lib/ios/AirMaps/AIRMapCircle.m; sourceTree = ""; }; + 7E0B040F78C938C7609D3A37EFBA4DBE /* RNSVGMask.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGMask.m; sourceTree = ""; }; + 7E338539E34FDAA1383ADE04F84483A1 /* AIRMapMarker.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRMapMarker.m; path = lib/ios/AirMaps/AIRMapMarker.m; sourceTree = ""; }; + 7E45E1203B257723AE4AE9E54307ED86 /* RCTUtils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTUtils.h; sourceTree = ""; }; + 7E6F625201280840A12BC4ACA05DC89E /* react-native-geolocation.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = "react-native-geolocation.podspec"; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 7E760D75233E5E1A98897E2E22DC6332 /* AIRMapWMSTileManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRMapWMSTileManager.m; path = lib/ios/AirMaps/AIRMapWMSTileManager.m; sourceTree = ""; }; + 7E8ECF311DD9E830F8D30998490AEF7D /* RNSVGPathMeasure.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGPathMeasure.m; sourceTree = ""; }; + 7E97F62553A84B08999CB4CD33EEF910 /* RCTCxxBridgeDelegate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTCxxBridgeDelegate.h; sourceTree = ""; }; + 7EB664D28A200314BAEAED86A4849CA2 /* RCTRequired.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RCTRequired.debug.xcconfig; sourceTree = ""; }; + 7EC8D51F9963269914CB67970F3AF6E8 /* React-Core.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-Core.release.xcconfig"; sourceTree = ""; }; + 7F1AAC115197697EA406660D31E93911 /* decorator.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = decorator.h; sourceTree = ""; }; + 7F98C822E339030647685C5C8E6F4D2D /* RCTBorderDrawing.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTBorderDrawing.m; sourceTree = ""; }; + 7FA983BAB0F89D8D78FC68569899CA57 /* RNImageCropPicker.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RNImageCropPicker.release.xcconfig; sourceTree = ""; }; + 802121F5B756ACBFDD6D08C36246DADD /* libReact-RCTLinking.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libReact-RCTLinking.a"; path = "libReact-RCTLinking.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 8056A8F01A18D65968EAFF0ED8A9EC42 /* RNSVGCircle.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGCircle.m; sourceTree = ""; }; + 807C04EC8D2B70429B8103016805BBF4 /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; + 80BE25F876B3315AB26D2F1265576715 /* YGNode.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = YGNode.cpp; path = yoga/YGNode.cpp; sourceTree = ""; }; + 80F0D6EACF6F6E0E229DC5D851DB2AE4 /* Fontisto.ttf */ = {isa = PBXFileReference; includeInIndex = 1; name = Fontisto.ttf; path = Fonts/Fontisto.ttf; sourceTree = ""; }; + 811846AB54DA780565DAA07FB083EE21 /* RCTLog.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTLog.mm; sourceTree = ""; }; + 81B053D2E994EAD58748E522EAB4F1CD /* RCTDisplayLink.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTDisplayLink.h; sourceTree = ""; }; + 824597724E6E55A70E2A136C0CCD248F /* ja.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = ja.lproj; path = "Objective-C/TOCropViewController/Resources/ja.lproj"; sourceTree = ""; }; + 82AD6326AE097F223F5F0AB8D2FDD96B /* RCTOneSignalExtensionService.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTOneSignalExtensionService.h; path = ios/RCTOneSignal/RCTOneSignalExtensionService.h; sourceTree = ""; }; + 833EE53DB9559776254213C55830C285 /* TurboModuleBinding.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = TurboModuleBinding.cpp; path = turbomodule/core/TurboModuleBinding.cpp; sourceTree = ""; }; + 835F564244FF1FA12CFD92F2C1243C9A /* YGConfig.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = YGConfig.cpp; path = yoga/YGConfig.cpp; sourceTree = ""; }; + 83A5C16AB9C0305BF9BB65C7C41AFEA0 /* RNSVGImageManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGImageManager.m; sourceTree = ""; }; + 83A71EA8032E2D5C6A8492CDEA22ABA0 /* RNSVGMarkerPosition.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGMarkerPosition.m; sourceTree = ""; }; + 83BE34F43B3A79F6AC62C136666676A4 /* JSBigString.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = JSBigString.cpp; sourceTree = ""; }; + 84003D645FE8F64E26D2D0A721FFAF09 /* RCTVibration.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTVibration.h; path = Libraries/Vibration/RCTVibration.h; sourceTree = ""; }; + 8407DE67D728D6140E1422B9FEE49D4A /* RNFlingHandler.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNFlingHandler.m; sourceTree = ""; }; + 841DA965CFC5BDEF90B48E940941CD50 /* FBReactNativeSpec-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "FBReactNativeSpec-prefix.pch"; sourceTree = ""; }; + 8458FA6C5F6FE0FFC5162AEE37212EF9 /* libPods-iLinkTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libPods-iLinkTests.a"; path = "libPods-iLinkTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 848600E22B93B63B286CA9773400C0D7 /* react-native-geolocation-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "react-native-geolocation-prefix.pch"; sourceTree = ""; }; + 84C5007898E442E6369D11180C69C866 /* JSINativeModules.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = JSINativeModules.cpp; path = jsireact/JSINativeModules.cpp; sourceTree = ""; }; + 850C45F01FA71D06E0020655AB808456 /* REAAlwaysNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = REAAlwaysNode.h; sourceTree = ""; }; + 853C49CD265C5AA5DA2552C088BFD923 /* en.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = en.lproj; path = "Objective-C/TOCropViewController/Resources/en.lproj"; sourceTree = ""; }; + 853E27B956A47C34F3E026DF8AE4EA2E /* MathKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MathKit.swift; path = "lottie-swift/src/Private/Utility/Extensions/MathKit.swift"; sourceTree = ""; }; + 85495AA788D884D183197148FE416E93 /* RNTapHandler.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNTapHandler.m; sourceTree = ""; }; + 8555FAE6571F8FFBA6782E00699BCCBC /* RCTI18nUtil.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTI18nUtil.h; sourceTree = ""; }; + 85A1FDB566DE781601EF718B73F7B26C /* RCTScrollView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTScrollView.m; sourceTree = ""; }; + 85CFAF09A7A9C7787E237BF50D71F0AE /* REAOperatorNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = REAOperatorNode.h; sourceTree = ""; }; + 8616ABE40A3061D587026113494C2618 /* react-native-maps.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "react-native-maps.release.xcconfig"; sourceTree = ""; }; + 86417141AD45D7224CDA7C666233E0EC /* RCTNetworkTask.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTNetworkTask.h; path = Libraries/Network/RCTNetworkTask.h; sourceTree = ""; }; + 8646DD72FFF4B4828E42178033060E4C /* RNImageUtils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNImageUtils.h; path = ios/RN/RNImageUtils.h; sourceTree = ""; }; + 869E8FECAFEC27CA773B2B732848580A /* RCTSwitch.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTSwitch.h; sourceTree = ""; }; + 8748DE6AE7A8A2E45CAD0B7C625A45AE /* LayerImageProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LayerImageProvider.swift; path = "lottie-swift/src/Private/LayerContainers/Utility/LayerImageProvider.swift"; sourceTree = ""; }; + 877DA42BD814A2D3AAAC41A7206807E5 /* RCTPropsAnimatedNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTPropsAnimatedNode.h; sourceTree = ""; }; + 87D0B4D9FBE299629BCA57203803A1B0 /* DispatchMessageQueueThread.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = DispatchMessageQueueThread.h; sourceTree = ""; }; + 882783E78BA40C737F83B62D5555EAB5 /* RNSVGTextPathManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGTextPathManager.m; sourceTree = ""; }; + 882EA3EB8ACFEE994EB7294C2678119F /* RCTConvert.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTConvert.h; sourceTree = ""; }; + 8866E759974A689649D4CBF88D1E6B7E /* AIRMap.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRMap.m; path = lib/ios/AirMaps/AIRMap.m; sourceTree = ""; }; + 8868E776977643520BB819BC930DF08C /* AIRMapPolyline.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMapPolyline.h; path = lib/ios/AirMaps/AIRMapPolyline.h; sourceTree = ""; }; + 886C71F3278B4A4205C69CA03F4E02E6 /* React-cxxreact.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-cxxreact.debug.xcconfig"; sourceTree = ""; }; + 8884C1EC5D194E52433AB80608948C55 /* OneSignal.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = OneSignal.debug.xcconfig; sourceTree = ""; }; + 88890B189DF37CBB296B08B06198FF0A /* RNFaceDetectorModuleMLKit.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNFaceDetectorModuleMLKit.m; path = ios/RN/RNFaceDetectorModuleMLKit.m; sourceTree = ""; }; + 88BCD709C53FD816B0738E3EF0E2C627 /* FontAwesome5_Regular.ttf */ = {isa = PBXFileReference; includeInIndex = 1; name = FontAwesome5_Regular.ttf; path = Fonts/FontAwesome5_Regular.ttf; sourceTree = ""; }; + 8916A76B106AFBE9CAD06632900579EF /* RCTObjcExecutor.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTObjcExecutor.h; sourceTree = ""; }; + 891E698250DF8ADE02D3935D5B702426 /* fa-IR.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = "fa-IR.lproj"; path = "Objective-C/TOCropViewController/Resources/fa-IR.lproj"; sourceTree = ""; }; + 8952FB547D8764D53F54627EFECFBA41 /* RNSVGGlyphContext.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGGlyphContext.h; sourceTree = ""; }; + 897CB74B9C1B99AE2E4E4D1A417E8FD7 /* RCTComponent.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTComponent.h; sourceTree = ""; }; + 89923F79C73F544563E6D81292AA6C67 /* RAMBundleRegistry.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = RAMBundleRegistry.cpp; sourceTree = ""; }; + 8998273719FDD789E6F9C7541AFD0B33 /* libRNVectorIcons.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libRNVectorIcons.a; path = libRNVectorIcons.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 8A5E2695E1E5D9782F4BA945A0940575 /* RNSVGLinearGradientManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGLinearGradientManager.m; sourceTree = ""; }; + 8A6AEAD34EA853AA7523DA5D93E40B4B /* RNSVGRadialGradient.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGRadialGradient.h; sourceTree = ""; }; + 8A8549DCCA4A2E6DF0814076D2BD4403 /* RNSVGEllipse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGEllipse.m; sourceTree = ""; }; + 8AC88B3783075D3D6F9D3BDE7B427464 /* Compression.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Compression.h; path = ios/src/Compression.h; sourceTree = ""; }; + 8B01716B69443F3AD541B09C78900323 /* RCTInputAccessoryView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTInputAccessoryView.h; sourceTree = ""; }; + 8B15C71A76FB5ED4790ECA1A2F862798 /* RCTUtils.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTUtils.m; sourceTree = ""; }; + 8B6B199289818DCB562FE54BEAB208E6 /* RCTTextView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTTextView.h; sourceTree = ""; }; + 8BBF3CBB504CE8F81960ECCA650D2605 /* GCDWebServerURLEncodedFormRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerURLEncodedFormRequest.m; path = GCDWebServer/Requests/GCDWebServerURLEncodedFormRequest.m; sourceTree = ""; }; + 8BCCCADF97F9F7EE0FE3F6868274BDC5 /* SMCalloutView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = SMCalloutView.m; sourceTree = ""; }; + 8C2E7BE0AC0A52090A3BAD12BEC17F1E /* lottie-react-native.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = "lottie-react-native.podspec"; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 8C31AF50E439F09B91CECD6906F04AA1 /* YGConfig.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = YGConfig.h; path = yoga/YGConfig.h; sourceTree = ""; }; + 8C37427685AE9FEB056316077064C475 /* LongLivedObject.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = LongLivedObject.h; path = turbomodule/core/LongLivedObject.h; sourceTree = ""; }; + 8CAADAA2FB37B0EDC8DCBA019823A011 /* RCTImageCache.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTImageCache.m; sourceTree = ""; }; + 8CE05476EFEEF9140157E292C4F511AE /* LayerTextProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LayerTextProvider.swift; path = "lottie-swift/src/Private/LayerContainers/Utility/LayerTextProvider.swift"; sourceTree = ""; }; + 8D1E8678839AAB5F3779A2A5707A8D91 /* RCTModalHostViewController.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTModalHostViewController.h; sourceTree = ""; }; + 8D294DB8AD550AE01235954A0480C082 /* RNSVGLine.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGLine.m; sourceTree = ""; }; + 8D44DCC2953242D9594A206AC4BC6727 /* RNCustomWhiteBalanceSettings.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNCustomWhiteBalanceSettings.m; path = ios/RN/RNCustomWhiteBalanceSettings.m; sourceTree = ""; }; + 8D68782A97AA38CF9B6D3E2B7F75D47D /* RNCameraUtils.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNCameraUtils.m; path = ios/RN/RNCameraUtils.m; sourceTree = ""; }; + 8D6D76B575EFDD8CE4AFE61D749F852E /* RNRotationHandler.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNRotationHandler.h; sourceTree = ""; }; + 8D9DEDC93523BF9C133B99AA4BF5F27A /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; + 8DFDDA5B1E2576F50B76E5D892C73D1F /* logging.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = logging.cc; path = src/logging.cc; sourceTree = ""; }; + 8E7D5E4B0C2A438A35D3E2D6A486FDB1 /* RCTI18nManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTI18nManager.h; sourceTree = ""; }; + 8E8AA25FF7D087CC342D47F774985E90 /* RNDateTimePicker.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RNDateTimePicker.release.xcconfig; sourceTree = ""; }; + 8E92E932257A0D65465465F51015F278 /* JSIDynamic.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = JSIDynamic.cpp; sourceTree = ""; }; + 8EAFCF2BA927CBEBBF9AD655458D8192 /* RCTTypeSafety-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RCTTypeSafety-dummy.m"; sourceTree = ""; }; + 8EBD152F4E9301AF6F532A8BE0B2CF35 /* RCTBaseTextInputView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTBaseTextInputView.h; sourceTree = ""; }; + 8EC0BC4D6C274F59CD17A8BD2D6D36D1 /* libRealmJS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libRealmJS.a; path = libRealmJS.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 8F65F9361F2069CF9E9D751272968DE4 /* libRNGestureHandler.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libRNGestureHandler.a; path = libRNGestureHandler.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 9078DEDAB9155F0E31A59C2AFBA4D1F4 /* RNSVGSymbolManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGSymbolManager.m; sourceTree = ""; }; + 90EE8D3C082C157169540FC8F5913DAD /* libRNSVG.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libRNSVG.a; path = libRNSVG.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 917E167DDC625A3B5F0FA252B68BF0DF /* JSDeltaBundleClient.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = JSDeltaBundleClient.h; sourceTree = ""; }; + 91835251E094A46BE214676FFD225268 /* RCTComponentEvent.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTComponentEvent.m; sourceTree = ""; }; + 91AE13523BE0397BE894B98BE34384D1 /* AnimationViewInitializers.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationViewInitializers.swift; path = "lottie-swift/src/Public/Animation/AnimationViewInitializers.swift"; sourceTree = ""; }; + 91CC1649BCD97DE6A8BE4885F4447533 /* React-RCTVibration.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-RCTVibration.debug.xcconfig"; sourceTree = ""; }; + 91E33165857DD9575E2C0945639F53C1 /* RCTTurboModuleManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTTurboModuleManager.h; sourceTree = ""; }; + 91F197791D439BE970E2508B14C32D6E /* React-RCTNetwork.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = "React-RCTNetwork.podspec"; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 92877EB86F0808A6C7DDE0F42A9BECBF /* RCTPicker.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTPicker.h; sourceTree = ""; }; + 929604C1A2EBCB21C462564D8E2B6E35 /* RCTBaseTextInputViewManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTBaseTextInputViewManager.m; sourceTree = ""; }; + 936D737D30E47074E2706CA71BF79631 /* RNGestureHandler.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNGestureHandler.m; path = ios/RNGestureHandler.m; sourceTree = ""; }; + 937209598CA97AC8B3E546F813746203 /* RNSVGSymbol.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGSymbol.h; sourceTree = ""; }; + 93DCCC4CB2F1BC707B6DDBA8712CBC6E /* REANodesManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = REANodesManager.h; path = ios/REANodesManager.h; sourceTree = ""; }; + 94132C725CB3A9BC765F1DE6CD8ED5E2 /* RNSVG-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RNSVG-prefix.pch"; sourceTree = ""; }; + 94820FCDCD66A0C33AED86403CB962CD /* GCDWebServerRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerRequest.h; path = GCDWebServer/Core/GCDWebServerRequest.h; sourceTree = ""; }; + 94F054948DE6688ED71EBB5E10772744 /* MethodCall.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = MethodCall.cpp; sourceTree = ""; }; + 95036A8702C081B9C72A82D2588AF46E /* RCTMaskedViewManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTMaskedViewManager.m; sourceTree = ""; }; + 953B7805A5D39D267C36F17E2D06C8EB /* RCTWeakProxy.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTWeakProxy.h; sourceTree = ""; }; + 954674C96F0A2FD3F1323A355DEF0E34 /* TurboCxxModule.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = TurboCxxModule.cpp; path = turbomodule/core/TurboCxxModule.cpp; sourceTree = ""; }; + 959726F7722E5F772CD2A0A44E997329 /* RCTFrameAnimation.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTFrameAnimation.m; sourceTree = ""; }; + 95B7D2202826F2EFAE763F9CEEF26522 /* AnimatedControl.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimatedControl.swift; path = "lottie-swift/src/Public/iOS/AnimatedControl.swift"; sourceTree = ""; }; + 95C92821A280714FE92A93A56A1E8672 /* cached-powers.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = "cached-powers.cc"; path = "double-conversion/cached-powers.cc"; sourceTree = ""; }; + 95DB12834C63CB813C969B0CC07B9B74 /* RNSVGTextPath.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGTextPath.h; sourceTree = ""; }; + 960CD1D347FA64D342D038A9EB001117 /* RNSScreenStackHeaderConfig.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNSScreenStackHeaderConfig.m; path = ios/RNSScreenStackHeaderConfig.m; sourceTree = ""; }; + 9612F5B53DCEE2752727983931D95F26 /* RNRotationHandler.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNRotationHandler.m; sourceTree = ""; }; + 9624F086266CB5E7A0ABC577C5AB9447 /* RCTInspectorPackagerConnection.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTInspectorPackagerConnection.m; sourceTree = ""; }; + 964BD6A82CD274D71E6980332AD93CA3 /* RCTSlider.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTSlider.h; sourceTree = ""; }; + 974C02C2BAAD32BCF8698299FE6CB2D0 /* RCTSurfaceDelegate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTSurfaceDelegate.h; sourceTree = ""; }; + 979477B811D2A9A5E419640FEE51DA5C /* logging.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = logging.h; path = src/glog/logging.h; sourceTree = ""; }; + 97A431AF27CF89C8CFA874D9936B988A /* RCTSurfacePresenterStub.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTSurfacePresenterStub.h; sourceTree = ""; }; + 97D297C84892429B6C4D3113C6984DC5 /* RCTConvert+Transform.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RCTConvert+Transform.m"; sourceTree = ""; }; + 97E492FC2B7A1F5A09AFE9B80E97425E /* RCTShadowView+Layout.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RCTShadowView+Layout.m"; sourceTree = ""; }; + 97F0E880EB319BA43FD57E74E858626D /* JSExecutor.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = JSExecutor.h; sourceTree = ""; }; + 9880E5758B9445A53544E3CD08AE1734 /* AIRMapLocalTileManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRMapLocalTileManager.m; path = lib/ios/AirMaps/AIRMapLocalTileManager.m; sourceTree = ""; }; + 989951EFB40583D99558E186DC624667 /* RCTModuleMethod.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTModuleMethod.h; sourceTree = ""; }; + 98B3E863BD4046224FAD7CAA782023B7 /* RNSVGPathManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGPathManager.h; sourceTree = ""; }; + 991467A3F17C445A7459236E0FFCC332 /* vlog_is_on.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = vlog_is_on.cc; path = src/vlog_is_on.cc; sourceTree = ""; }; + 992DE309283120988D04BD3653D5C0BB /* TOCropViewController.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = TOCropViewController.release.xcconfig; sourceTree = ""; }; + 99394EB1887025095CB3D6B26980FA4A /* AnimationPublic.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationPublic.swift; path = "lottie-swift/src/Public/Animation/AnimationPublic.swift"; sourceTree = ""; }; + 994A963E0D7661696AA5B67923A56215 /* fi.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = fi.lproj; path = "Objective-C/TOCropViewController/Resources/fi.lproj"; sourceTree = ""; }; + 994B7B94B1055B5A71371DD206CBEB1A /* Asset.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Asset.swift; path = "lottie-swift/src/Private/Model/Assets/Asset.swift"; sourceTree = ""; }; + 995B125A444748E05DBB8A74EC81E1EA /* RCTAdditionAnimatedNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTAdditionAnimatedNode.h; sourceTree = ""; }; + 999F9AB6C58CFB1BF9C92A746603CA4B /* RNSScreenStack.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNSScreenStack.h; path = ios/RNSScreenStack.h; sourceTree = ""; }; + 99B838E99765EA9C7850050DF245A4BA /* RCTFileRequestHandler.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTFileRequestHandler.h; path = Libraries/Network/RCTFileRequestHandler.h; sourceTree = ""; }; + 99C2384BA4BEDDA304E928667F5E77CF /* React-RCTAnimation.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = "React-RCTAnimation.podspec"; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 99CE77110E69BF19B5D7317F4DDEBACE /* RCTMultilineTextInputViewManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTMultilineTextInputViewManager.h; sourceTree = ""; }; + 99E279928C71E2B5089DF84B31383376 /* RCTActivityIndicatorViewManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTActivityIndicatorViewManager.m; sourceTree = ""; }; + 9A24155EFDDA56312A1F7CF8B073C3F6 /* REAOperatorNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = REAOperatorNode.m; sourceTree = ""; }; + 9A3D01808ACF10C1760FF3C15CD00416 /* object_store.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = object_store.cpp; sourceTree = ""; }; + 9A7BA1DE3AA96ECC0990C590C816D865 /* React-Core-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "React-Core-prefix.pch"; sourceTree = ""; }; + 9ADF93722F6C1DA7049306241B1BD83A /* RNI18n-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RNI18n-prefix.pch"; sourceTree = ""; }; + 9AF1E40BBA68EE62609D6272B3A55B4E /* GradientFillNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GradientFillNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderNodes/GradientFillNode.swift"; sourceTree = ""; }; + 9B18C6D9AD699C96D548EEB1EF5B04FE /* RCTRefreshControlManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTRefreshControlManager.h; sourceTree = ""; }; + 9B87E959CBFDFF8AA7561A43A3E6BA69 /* RCTAnimatedImage.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTAnimatedImage.m; sourceTree = ""; }; + 9BA09C69ED5FCBA261D92B6C35DF9217 /* stl_logging.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = stl_logging.h; path = src/glog/stl_logging.h; sourceTree = ""; }; + 9BAD81413676A3970DEFA4E0E96E20F8 /* log.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = log.cpp; path = yoga/log.cpp; sourceTree = ""; }; + 9C151AEB29DC97A66898A872C23CFA01 /* fa.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = fa.lproj; path = "Objective-C/TOCropViewController/Resources/fa.lproj"; sourceTree = ""; }; + 9C195DCF85DEEF72E0FC3B249CAC7D04 /* RCTGIFImageDecoder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTGIFImageDecoder.h; path = Libraries/Image/RCTGIFImageDecoder.h; sourceTree = ""; }; + 9C215BBD797834FE89FA965C2AA370E1 /* ar.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = ar.lproj; path = "Objective-C/TOCropViewController/Resources/ar.lproj"; sourceTree = ""; }; + 9C22A9368D9FBE73EFCFC3C0DDA19584 /* GCDWebServerFileRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerFileRequest.h; path = GCDWebServer/Requests/GCDWebServerFileRequest.h; sourceTree = ""; }; + 9C74BAC02E8F42F13171CB5EBB0A6B4C /* RNSVGPainter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGPainter.h; sourceTree = ""; }; + 9C95D2A1070361A75FC1100C06462C6E /* React-RCTLinking.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-RCTLinking.release.xcconfig"; sourceTree = ""; }; + 9CB232CAF3D9E0E803EBDAE012F31C6B /* RNSVGRectManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGRectManager.m; sourceTree = ""; }; + 9CBBB48B3337A174E52F7DD650D09253 /* RNScreens.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RNScreens.release.xcconfig; sourceTree = ""; }; + 9CF8D9797C522F8D2943C6AD2B49B19F /* RCTMultipartDataTask.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTMultipartDataTask.h; sourceTree = ""; }; + 9D047804CA2A15A7CF1557F67FF1021E /* React-RCTLinking-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "React-RCTLinking-dummy.m"; sourceTree = ""; }; + 9D17F764A52524A3BE521716409A4800 /* object_notifier.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = object_notifier.cpp; sourceTree = ""; }; + 9D4A7DD313A99C0CFD2C8041F7885F9A /* GCDWebServerFileRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerFileRequest.m; path = GCDWebServer/Requests/GCDWebServerFileRequest.m; sourceTree = ""; }; + 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 9DFEDFE014DE1934C27D003F5924802F /* RCTSlider.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTSlider.m; sourceTree = ""; }; + 9DFFEB663B192669E6285C8E1F10C349 /* React-CoreModules.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = "React-CoreModules.podspec"; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 9E0B79CBAD6CF20D99456332EC9F2F93 /* JsArgumentHelpers-inl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "JsArgumentHelpers-inl.h"; sourceTree = ""; }; + 9E149FAE88DEF8943271ABB136290EE1 /* RCTPicker.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTPicker.m; sourceTree = ""; }; + 9E2171FA7CE5047D6C5247BFC25856C2 /* React-RCTText.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-RCTText.release.xcconfig"; sourceTree = ""; }; + 9E33D09D6B7A77AB773A6D3E21BF89BC /* sync_session.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = sync_session.cpp; sourceTree = ""; }; + 9E51AAAE3544538FF835A83109B5A530 /* RCTFollyConvert.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTFollyConvert.mm; sourceTree = ""; }; + 9E6B9D878A42EF0A4202909EC90F5E82 /* RCTSegmentedControl.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTSegmentedControl.m; sourceTree = ""; }; + 9E765C23B1E1AE37D0451F25FFB7750C /* RCTTouchHandler.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTTouchHandler.h; sourceTree = ""; }; + 9EEE24787E5F8DF7549B7492FC1B9CE1 /* React-jsiexecutor.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-jsiexecutor.debug.xcconfig"; sourceTree = ""; }; + 9EF2337DC27DA0B6CE8727976736E918 /* RNI18n-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RNI18n-dummy.m"; sourceTree = ""; }; + 9EF72619138C8CB1809439E53822322A /* RNSVGContextBrush.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGContextBrush.h; sourceTree = ""; }; + 9F2C6467B6C247058C8C69E8A6D791DF /* Pods-iLink-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-iLink-acknowledgements.plist"; sourceTree = ""; }; + 9F31218DD15F687209AA900CF3942B51 /* RNSVGBrush.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGBrush.h; sourceTree = ""; }; + 9F35C74B0EB9D89D2FC1875E6FCCC3CE /* RCTTrackingAnimatedNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTTrackingAnimatedNode.m; sourceTree = ""; }; + 9F36C0AA8E97CB28F5682F8394B1C7EC /* RNI18n.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RNI18n.debug.xcconfig; sourceTree = ""; }; + 9F3FAB3480C299293BF6B498691CECDD /* RCTLocalAssetImageLoader.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTLocalAssetImageLoader.h; path = Libraries/Image/RCTLocalAssetImageLoader.h; sourceTree = ""; }; + A02AE013BE954855C804E7FFF27F4FD6 /* TOActivityCroppedImageProvider.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = TOActivityCroppedImageProvider.m; path = "Objective-C/TOCropViewController/Models/TOActivityCroppedImageProvider.m"; sourceTree = ""; }; + A02CF47E0BABAF019F8DAFA655EB4001 /* RNSVGTSpan.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGTSpan.m; sourceTree = ""; }; + A06363BC33142298494941E6AF9F21E6 /* RCTPointerEvents.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTPointerEvents.h; sourceTree = ""; }; + A07529BB00BA59F60F821A74792F05BF /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; + A099C1320B69A490BE570F137F434068 /* AIRMapCircleManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMapCircleManager.h; path = lib/ios/AirMaps/AIRMapCircleManager.h; sourceTree = ""; }; + A0B6EAB6A77CEDFCC6D7BBA7B6962D99 /* React-cxxreact-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "React-cxxreact-prefix.pch"; sourceTree = ""; }; + A0BD07828DFEFB618A3614A1A47B1DEB /* ReactViewPagerManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ReactViewPagerManager.h; path = ios/ReactViewPagerManager.h; sourceTree = ""; }; + A0C3289AAC10CDFF80279E575A1854DC /* SajjadBlurOverlay.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = SajjadBlurOverlay.m; sourceTree = ""; }; + A0EB61D3BDFE0B6A38BB088E5D2F7822 /* AIRMapPolylineRenderer.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRMapPolylineRenderer.m; path = lib/ios/AirMaps/AIRMapPolylineRenderer.m; sourceTree = ""; }; + A12A01F10689781DD412678C569EFD77 /* RCTActivityIndicatorView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTActivityIndicatorView.m; sourceTree = ""; }; + A14C84308758978400C7B860E67B4CAA /* Pods-iLinkTests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-iLinkTests-acknowledgements.markdown"; sourceTree = ""; }; + A1553B8C9829BE1F8B64C7683588CA0D /* Yoga.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Yoga.h; path = yoga/Yoga.h; sourceTree = ""; }; + A15AB20DE037AE34FA6B9CB5F40B8371 /* AnimationContext.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationContext.swift; path = "lottie-swift/src/Private/Utility/Helpers/AnimationContext.swift"; sourceTree = ""; }; + A16702D41967CDD647CA030F2E5D3737 /* RNSensorOrientationChecker.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNSensorOrientationChecker.m; path = ios/RN/RNSensorOrientationChecker.m; sourceTree = ""; }; + A183A72F662CDA25DDB8EB55D14364D3 /* GCDWebServerFileResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerFileResponse.h; path = GCDWebServer/Responses/GCDWebServerFileResponse.h; sourceTree = ""; }; + A196505E27523E724B2278730FCC5C90 /* Pods-iLinkTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-iLinkTests.debug.xcconfig"; sourceTree = ""; }; + A221912DB5780BB426EEB565E28EBC1E /* FBLazyVector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FBLazyVector.h; path = FBLazyVector/FBLazyVector.h; sourceTree = ""; }; + A285E234AE588B3FFAB4E51F75427459 /* RCTUITextField.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTUITextField.m; sourceTree = ""; }; + A2948DDEEB16A5E6C7F772FFF6453F30 /* React-RCTVibration-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "React-RCTVibration-dummy.m"; sourceTree = ""; }; + A2990CF79726C3FB868AECB2E2E47A18 /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; path = LICENSE; sourceTree = ""; }; + A2D4717A7BCE8B5820BE4A05613B8DFB /* React-RCTSettings-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "React-RCTSettings-prefix.pch"; sourceTree = ""; }; + A2E550999B0663B10CFA9211833290ED /* YGStyle.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = YGStyle.cpp; path = yoga/YGStyle.cpp; sourceTree = ""; }; + A2F14CB65F1531949ABE8F487A7AF132 /* sync_permission.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = sync_permission.cpp; sourceTree = ""; }; + A310F91CA59CAAA8BB127DD896BE4CE5 /* RCTRootView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTRootView.m; sourceTree = ""; }; + A32F01ACFFEAF4880AB04C5CD94993BB /* RNSVGDefs.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGDefs.m; sourceTree = ""; }; + A39753B8DFCDD6E1196C3DA7102D6CD1 /* BarcodeDetectorManagerMlkit.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = BarcodeDetectorManagerMlkit.h; path = ios/RN/BarcodeDetectorManagerMlkit.h; sourceTree = ""; }; + A3982C7F17CB617859CB2B886E1901E8 /* RCTActionSheetManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTActionSheetManager.m; sourceTree = ""; }; + A3A1E694E2A243CA97B835D52B23F14E /* RNGestureHandlerManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNGestureHandlerManager.m; path = ios/RNGestureHandlerManager.m; sourceTree = ""; }; + A3C2FAA1B916CF7926E4D3116E572A71 /* GCDWebServerPrivate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerPrivate.h; path = GCDWebServer/Core/GCDWebServerPrivate.h; sourceTree = ""; }; + A3E652B99E7A5F7E890E7C1C948CA17A /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; + A3EB9CAE0A57BF389E217CC64660B4C7 /* GCDWebServerMultiPartFormRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerMultiPartFormRequest.h; path = GCDWebServer/Requests/GCDWebServerMultiPartFormRequest.h; sourceTree = ""; }; + A3F8EFBC4CD3DC5068E712F165F1DCF3 /* RCTManagedPointer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTManagedPointer.h; sourceTree = ""; }; + A4629356C1A90BB1312375141FC8352F /* KeyframeGroup.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KeyframeGroup.swift; path = "lottie-swift/src/Private/Model/Keyframes/KeyframeGroup.swift"; sourceTree = ""; }; + A46412FA5EC5EC6CA90F8F5D9637B4DD /* RNSVGTextManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGTextManager.h; sourceTree = ""; }; + A48477ED40D417B9B631D15E28C83C74 /* transact_log_handler.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = transact_log_handler.cpp; sourceTree = ""; }; + A4BD490F9D34DC995001BB739A9FE59A /* RNSVGFontData.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGFontData.m; sourceTree = ""; }; + A4DBD3E83A1DE3FEA1885964A1DE4225 /* RNForceTouchHandler.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNForceTouchHandler.h; sourceTree = ""; }; + A50087B90E6D291FABA7B2B3A0EDE3C1 /* react-native-geolocation.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "react-native-geolocation.release.xcconfig"; sourceTree = ""; }; + A50BB9DFDEDEA71E58BAFA31AB3C22A9 /* RCTDatePickerManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTDatePickerManager.m; sourceTree = ""; }; + A51172FF8815A12AB54620B52198A965 /* Pods-iLink.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-iLink.debug.xcconfig"; sourceTree = ""; }; + A545A6441D5DDB80E2AA86066739E6D5 /* QBAlbumCell.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = QBAlbumCell.h; path = ios/QBImagePicker/QBImagePicker/QBAlbumCell.h; sourceTree = ""; }; + A58E9F5A0FA3434A5BE6F1F27540344E /* RNGestureHandler-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RNGestureHandler-dummy.m"; sourceTree = ""; }; + A5C09DAF41459FA8C22F70F569470496 /* RNSVGLinearGradientManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGLinearGradientManager.h; sourceTree = ""; }; + A5CCFB3F507FFB1DCA7E4771F2072483 /* Instance.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = Instance.cpp; sourceTree = ""; }; + A6626BCED414873F499928236F323D1F /* GCDWebServerDataResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerDataResponse.m; path = GCDWebServer/Responses/GCDWebServerDataResponse.m; sourceTree = ""; }; + A673AC31E5E0DB84B2CD1D88E4E2F6EE /* REANodesManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = REANodesManager.m; path = ios/REANodesManager.m; sourceTree = ""; }; + A68E5A9B69A3BA0FD52CAF7A354EC93B /* libReact-RCTNetwork.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libReact-RCTNetwork.a"; path = "libReact-RCTNetwork.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + A69E9D6519745D755D884D0A5714E5DB /* Pods-iLink-tvOSTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-iLink-tvOSTests.release.xcconfig"; sourceTree = ""; }; + A6BEB1329855B004C358181ABEEDF677 /* RNGestureHandler.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = RNGestureHandler.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + A6E69E60E61BC4E786504D5F320938DA /* RNSVGRenderableManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGRenderableManager.m; sourceTree = ""; }; + A71C93F96E3F8B126A2B63D17923786B /* RNGestureHandlerRegistry.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNGestureHandlerRegistry.m; path = ios/RNGestureHandlerRegistry.m; sourceTree = ""; }; + A72AE39973A0D90C2ED69393A02F7681 /* DashPattern.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DashPattern.swift; path = "lottie-swift/src/Private/Model/Objects/DashPattern.swift"; sourceTree = ""; }; + A73745461D3BAA830ABCB7DB9525640B /* AIRMapCoordinate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMapCoordinate.h; path = lib/ios/AirMaps/AIRMapCoordinate.h; sourceTree = ""; }; + A745480BCC05E3D86F8DA9DFBC45936F /* RCTBackedTextInputDelegateAdapter.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTBackedTextInputDelegateAdapter.m; sourceTree = ""; }; + A7466C845EA140BAE35D9E53B1C7EC99 /* DoubleConversion.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = DoubleConversion.debug.xcconfig; sourceTree = ""; }; + A7B3F40B15AB21B64BB43D349B475E89 /* RCTFileReaderModule.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTFileReaderModule.m; sourceTree = ""; }; + A7D72956D176316E6C03FA76BCE20F24 /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; + A7F4108A85FC538CD4FA005863628DE3 /* RNSVGPatternManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGPatternManager.h; sourceTree = ""; }; + A7FFDE82F7EDFBD3DD268C8B69913062 /* Demangle.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = Demangle.cpp; path = folly/detail/Demangle.cpp; sourceTree = ""; }; + A83BE372D6B93D77F36825B1EE4B548D /* react-native-viewpager.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "react-native-viewpager.debug.xcconfig"; sourceTree = ""; }; + A8675AD55B5CEF0DE78FF98E1E046B55 /* RCTConvert+REATransition.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RCTConvert+REATransition.m"; sourceTree = ""; }; + A88D947BC71F8FC9BBD9B349EA812643 /* RNSVGPattern.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGPattern.h; sourceTree = ""; }; + A8A731BE94CAD23F58A7790A23BBCEB8 /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; + A8B9A6CDCC5197EFD9488FE27F25ED5D /* RNNativeViewHandler.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNNativeViewHandler.h; sourceTree = ""; }; + A8DED8A166BC67EB39B4517DA8C16E44 /* REAJSCallNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = REAJSCallNode.m; sourceTree = ""; }; + A8E04B551FB541C7BC1181AC941653A4 /* RNSVGPatternManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGPatternManager.m; sourceTree = ""; }; + A905AC13DE6E2E381E5FE345BC6E6389 /* AIRWeakMapReference.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRWeakMapReference.h; path = lib/ios/AirMaps/AIRWeakMapReference.h; sourceTree = ""; }; + A95A90A2786E03A4C33366DA73DC7814 /* AnimationViewManagerModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationViewManagerModule.swift; path = src/ios/LottieReactNative/AnimationViewManagerModule.swift; sourceTree = ""; }; + A981BBFE18030AF5F63732FE397631B8 /* RNReanimated.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RNReanimated.debug.xcconfig; sourceTree = ""; }; + A9C15FD89132C9C01662F379AD59600C /* RCTJavaScriptLoader.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTJavaScriptLoader.mm; sourceTree = ""; }; + A9EF876744D8B1BC4F57B68CDD2F29BA /* DoubleConversion-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "DoubleConversion-dummy.m"; sourceTree = ""; }; + AA0D81528CC401A3656123FC0D71EE84 /* SajjadBlurOverlayManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = SajjadBlurOverlayManager.m; sourceTree = ""; }; + AA1A216C78C25A75CE8F40D0B713DA66 /* bignum-dtoa.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = "bignum-dtoa.cc"; path = "double-conversion/bignum-dtoa.cc"; sourceTree = ""; }; + AA5514FD086C70AA9D9857E11E378E9A /* RCTBackedTextInputDelegateAdapter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTBackedTextInputDelegateAdapter.h; sourceTree = ""; }; + AAB29BF75E741817CC42CBC03DC74FDF /* RCTSettingsManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTSettingsManager.m; sourceTree = ""; }; + AAC2A01F5F36C0717DCE21E09A24E4E6 /* Folly.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Folly.release.xcconfig; sourceTree = ""; }; + AADCE7C64BAA41477E6809F0FB1A7FEC /* RCTRawTextViewManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTRawTextViewManager.h; sourceTree = ""; }; + AAEE66EDB186EF6F64C5266EC24EE491 /* RNCamera.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNCamera.m; path = ios/RN/RNCamera.m; sourceTree = ""; }; + AAF35C0FF26E6C4AA2952845BF519698 /* READebugNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = READebugNode.m; sourceTree = ""; }; + AAF49A208AFF64641BA96943EE470B84 /* RNCAsyncStorage.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RNCAsyncStorage.debug.xcconfig; sourceTree = ""; }; + AB0F1CC4FE931457506D95A8F9C8F49F /* ShapeCompositionLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShapeCompositionLayer.swift; path = "lottie-swift/src/Private/LayerContainers/CompLayers/ShapeCompositionLayer.swift"; sourceTree = ""; }; + AB276719DCB2FD03FF7420CC81AA28FD /* RNCAsyncStorage-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RNCAsyncStorage-prefix.pch"; sourceTree = ""; }; + AB2C3D40246F6C6D5676D4E115698DC4 /* RCTJavaScriptLoader.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTJavaScriptLoader.h; sourceTree = ""; }; + AB4DEB23AC4B99AE702F1C92EC5A290A /* RCTEventDispatcher.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTEventDispatcher.m; sourceTree = ""; }; + AB558D84572314FA3043CE90F9B452E1 /* React-RCTSettings.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = "React-RCTSettings.podspec"; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + AB8415797F616A79301CEAB45F23D562 /* QBSlomoIconView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = QBSlomoIconView.h; path = ios/QBImagePicker/QBImagePicker/QBSlomoIconView.h; sourceTree = ""; }; + AB896579CC45DAEEE97FF62B7C4A34CB /* RCTClipboard.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTClipboard.m; sourceTree = ""; }; + ABC977C2A37942FA5C8D6D9B2FC9DE52 /* RCTModalHostView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTModalHostView.m; sourceTree = ""; }; + ABE1788C1EDCD27FE238CA6B88D60DF7 /* RNSVGEllipseManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGEllipseManager.h; sourceTree = ""; }; + ABE3DCD30616189C0CC9FF6A76E510A4 /* JSDeltaBundleClient.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = JSDeltaBundleClient.cpp; sourceTree = ""; }; + ABFEEA82A6C346B22843FBE0B0582182 /* libFBReactNativeSpec.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libFBReactNativeSpec.a; path = libFBReactNativeSpec.a; sourceTree = BUILT_PRODUCTS_DIR; }; + AC053697E5EECCD032F20E385C0F1495 /* RCTOneSignalExtensionService.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RCTOneSignalExtensionService.m; path = ios/RCTOneSignal/RCTOneSignalExtensionService.m; sourceTree = ""; }; + AC2606995BC22B4A0253D33EFB45917D /* RNGestureHandler.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RNGestureHandler.debug.xcconfig; sourceTree = ""; }; + AC33286B1F40D9F9BB974349EB356128 /* RCTSinglelineTextInputViewManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTSinglelineTextInputViewManager.m; sourceTree = ""; }; + AC73F538061644419ABD36423A8BCE5E /* AntDesign.ttf */ = {isa = PBXFileReference; includeInIndex = 1; name = AntDesign.ttf; path = Fonts/AntDesign.ttf; sourceTree = ""; }; + AC8F935888D89DAB7BBE23F04837F50B /* RCTResizeMode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTResizeMode.m; sourceTree = ""; }; + AC9BE8E1BEAB1E2BF70FD70639E05E50 /* RCTLayoutAnimationGroup.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTLayoutAnimationGroup.h; sourceTree = ""; }; + ACEB3B0027EC72FB888945AEC5A113D1 /* KeyframeInterpolator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KeyframeInterpolator.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/ValueProviders/KeyframeInterpolator.swift"; sourceTree = ""; }; + ACF7D2FB6FC7A23A50BC047E859BA12D /* RCTStyleAnimatedNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTStyleAnimatedNode.h; sourceTree = ""; }; + AD1C169B5A1B03414C0B5CD6123716D2 /* RNSVGBezierElement.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGBezierElement.m; sourceTree = ""; }; + AD7A7E7F692C59953E4F2D556748C698 /* RCTInputAccessoryViewContent.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTInputAccessoryViewContent.m; sourceTree = ""; }; + AE35E87ACE581B9CEF2DE22B4D7BC740 /* libPods-iLink.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libPods-iLink.a"; path = "libPods-iLink.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + AE4D959CA6036B01B7CF41E3D01D5B40 /* NodeProperty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NodeProperty.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/NodeProperty.swift"; sourceTree = ""; }; + AE92DAAB382F37185FEFA48FCCC4C0E8 /* Pods-iLink-tvOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-iLink-tvOS-acknowledgements.plist"; sourceTree = ""; }; + AEC4536C673A54BA1964886F881D2AF0 /* RCTMultipartDataTask.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTMultipartDataTask.m; sourceTree = ""; }; + AED994A5EF18C21F617C0C8EA52C5F92 /* RCTBaseTextViewManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTBaseTextViewManager.h; sourceTree = ""; }; + AF3A7DDA6A07B99ABEC8E2DA1BB45B5A /* RCTVirtualTextViewManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTVirtualTextViewManager.h; sourceTree = ""; }; + AF900E676BF75A64B70B8D144D61EBBA /* ShapeNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShapeNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/ShapeNode.swift"; sourceTree = ""; }; + AF942609E6B18B27CCCD87AB8644C2F2 /* RCTUIManagerUtils.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTUIManagerUtils.m; sourceTree = ""; }; + AF9EA62BE9D8C4F00378682201A67B18 /* RCTSpringAnimation.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTSpringAnimation.h; sourceTree = ""; }; + AFC7D201C19AAE21DACA70AE7E67DACE /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; path = LICENSE; sourceTree = ""; }; + AFD45F8B3D3C0269AA572459267D1F27 /* REACondNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = REACondNode.h; sourceTree = ""; }; + AFDF9BE84F508E9BD1BCF12852D8D68A /* RCTSegmentedControl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTSegmentedControl.h; sourceTree = ""; }; + AFE9E75D341118DCA9168BE21A41702C /* fr.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = fr.lproj; path = ios/QBImagePicker/QBImagePicker/fr.lproj; sourceTree = ""; }; + B0269C82A5A72158482799457A54C4F1 /* Folly-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Folly-prefix.pch"; sourceTree = ""; }; + B04E9E415AC269CC87EDB2B2E1BDDB99 /* RNI18n.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RNI18n.release.xcconfig; sourceTree = ""; }; + B060FBD6C532D94DE4E17EDCE4243E2F /* AnimationContainer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationContainer.swift; path = "lottie-swift/src/Private/LayerContainers/AnimationContainer.swift"; sourceTree = ""; }; + B06337B496ABB632710E01827FC4BA91 /* CompatibleAnimationKeypath.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompatibleAnimationKeypath.swift; path = "lottie-swift/src/Public/iOS/Compatibility/CompatibleAnimationKeypath.swift"; sourceTree = ""; }; + B065EA255C0C0817DCE58B78D96E42B5 /* TOCropViewController.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = TOCropViewController.m; path = "Objective-C/TOCropViewController/TOCropViewController.m"; sourceTree = ""; }; + B08637A4BEC12EA789EBD4533C681D3A /* AIRMapUrlTile.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMapUrlTile.h; path = lib/ios/AirMaps/AIRMapUrlTile.h; sourceTree = ""; }; + B1038DCFE6021D690A8D46126B6A683F /* REABezierNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = REABezierNode.m; sourceTree = ""; }; + B10B43CCAE8398D4C325DFAF264A775E /* GradientFill.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GradientFill.swift; path = "lottie-swift/src/Private/Model/ShapeItems/GradientFill.swift"; sourceTree = ""; }; + B13DE48D3ADBED00566B79F9431CFD69 /* results_notifier.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = results_notifier.cpp; sourceTree = ""; }; + B146D24F68263F638F04912E835C010F /* AnimationTime.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationTime.swift; path = "lottie-swift/src/Public/Primitives/AnimationTime.swift"; sourceTree = ""; }; + B14FC72E18B258E04E7635FC57AF8A8B /* YGLayout.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = YGLayout.cpp; path = yoga/YGLayout.cpp; sourceTree = ""; }; + B1B41495F1C2A08B5A37AFDAB01639AE /* TextDetectorManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = TextDetectorManager.h; path = ios/RN/TextDetectorManager.h; sourceTree = ""; }; + B1EE3B23EC59828C54A48585CC2D1658 /* YGNodePrint.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = YGNodePrint.cpp; path = yoga/YGNodePrint.cpp; sourceTree = ""; }; + B21B12DEAC1A3EEF00ADAAF1AD5120BE /* RCTSourceCode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTSourceCode.h; sourceTree = ""; }; + B2213028C54C1C9D1186D4946E34B6FF /* RCTSurfaceHostingView.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTSurfaceHostingView.mm; sourceTree = ""; }; + B22FED44B8A7C6125A344561053B8C8B /* QBVideoIconView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = QBVideoIconView.m; path = ios/QBImagePicker/QBImagePicker/QBVideoIconView.m; sourceTree = ""; }; + B2531AD96ACBAC16FC3E56A45949C2B6 /* RCTJSStackFrame.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTJSStackFrame.h; sourceTree = ""; }; + B25A0FDBB0547E10A7972F8020192DD2 /* RCTConvert+UIPageViewControllerTransitionStyle.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "RCTConvert+UIPageViewControllerTransitionStyle.m"; path = "ios/RCTConvert+UIPageViewControllerTransitionStyle.m"; sourceTree = ""; }; + B29BF938C398FC74D14750062B29260A /* AIRMapOverlayManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRMapOverlayManager.m; path = lib/ios/AirMaps/AIRMapOverlayManager.m; sourceTree = ""; }; + B2B14C565101DDA9453A52F2D681CD73 /* RNGestureHandlerModule.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNGestureHandlerModule.m; path = ios/RNGestureHandlerModule.m; sourceTree = ""; }; + B3082631D0525B8C14CBE2970A53F446 /* RNSVGDefs.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGDefs.h; sourceTree = ""; }; + B3134094E6F13EAF417E67EE59D5DB22 /* QBAssetCell.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = QBAssetCell.h; path = ios/QBImagePicker/QBImagePicker/QBAssetCell.h; sourceTree = ""; }; + B33746402C9140645285F388C25FE893 /* RealmReact.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RealmReact.mm; sourceTree = ""; }; + B346FE1A06B0E600CCE464D80C203E69 /* RCTAsyncLocalStorage.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTAsyncLocalStorage.m; sourceTree = ""; }; + B3483F4B900D3BC1E80FCA9F8D36BA5D /* RNSVGVectorEffect.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGVectorEffect.h; sourceTree = ""; }; + B3595EDD670141B284301D11EFE3D12A /* RCTNetworking.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTNetworking.mm; sourceTree = ""; }; + B3821B48A8EE772514E31AD4012A2FCC /* RCTDevSettings.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTDevSettings.mm; sourceTree = ""; }; + B44C4D200CA7DB16992A539CE6E27D08 /* RNFileSystem.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNFileSystem.h; path = ios/RN/RNFileSystem.h; sourceTree = ""; }; + B44E9C0A757660B07223BE410F1BF236 /* AIRMapCircle.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMapCircle.h; path = lib/ios/AirMaps/AIRMapCircle.h; sourceTree = ""; }; + B4577148E6D8E6314AC68CA3B70EDAEB /* RCTCameraManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTCameraManager.h; path = ios/RCT/RCTCameraManager.h; sourceTree = ""; }; + B467A324F951FB002FDF8995880AC103 /* RNImageCropPicker.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = RNImageCropPicker.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + B49F35AC4AA266D2FD5FE78F0FDC5839 /* RNCAsyncStorage.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNCAsyncStorage.h; path = ios/RNCAsyncStorage.h; sourceTree = ""; }; + B4A9FBE5E0B8A8E30A9EC4FB03032500 /* REATransitionManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = REATransitionManager.h; sourceTree = ""; }; + B4AD0E605D4A5847534F78A5D89EA0B3 /* experiments.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = experiments.h; sourceTree = ""; }; + B4CA1CE4D1CE3C63EFA320868B04D39C /* collection_change_builder.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = collection_change_builder.cpp; sourceTree = ""; }; + B4CE3195BCB54E89365CB419D3E13349 /* RCTNullability.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTNullability.h; sourceTree = ""; }; + B4FAC58BBC14C00C93A92D1EEDAB94BD /* Pods-iLink-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-iLink-acknowledgements.markdown"; sourceTree = ""; }; + B50A99A9AF93D435B54B70885EA6F1F2 /* PathElement.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PathElement.swift; path = "lottie-swift/src/Private/Utility/Primitives/PathElement.swift"; sourceTree = ""; }; + B5203755E08171951463CE2F772C7D85 /* RNI18n.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNI18n.h; path = ios/RNI18n.h; sourceTree = ""; }; + B521CA9B809E551DFC56EFB3F058429C /* RCTSurfaceStage.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTSurfaceStage.h; sourceTree = ""; }; + B58AE90701FC7D5E509DF74DFE2737AF /* RCTActivityIndicatorViewManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTActivityIndicatorViewManager.h; sourceTree = ""; }; + B597051B22AC9B39D56A2CE220DD9884 /* ReactViewPagerManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = ReactViewPagerManager.m; path = ios/ReactViewPagerManager.m; sourceTree = ""; }; + B64309719437112F5261F30917B4913D /* CompactValue.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = CompactValue.h; path = yoga/CompactValue.h; sourceTree = ""; }; + B68C1052A3B51DBCF7D960F898AAFA95 /* libGCDWebServer.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libGCDWebServer.a; path = libGCDWebServer.a; sourceTree = BUILT_PRODUCTS_DIR; }; + B68F3FC436CAF92FAD20F5175B49935F /* RCTResizeMode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTResizeMode.h; path = Libraries/Image/RCTResizeMode.h; sourceTree = ""; }; + B6C34B00D25B20BAA8CC2A707E43D10A /* system_configuration.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = system_configuration.cpp; sourceTree = ""; }; + B6D6F95A518F88764824BAAA11B0D1CF /* RNDeviceInfo-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RNDeviceInfo-prefix.pch"; sourceTree = ""; }; + B6FED2BC83D22BD64469F891524A9875 /* RCTKeyCommands.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTKeyCommands.m; sourceTree = ""; }; + B787E0662BF13086B52260D3663D4121 /* Demangle.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = Demangle.cpp; path = folly/Demangle.cpp; sourceTree = ""; }; + B78968C110DA72E82244231C1C647A0A /* RCTAlertManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTAlertManager.m; sourceTree = ""; }; + B7B0643200CC67EA9C5A1327C5A87B62 /* TOCropViewController-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "TOCropViewController-prefix.pch"; sourceTree = ""; }; + B85F7CE633ECE8F59588D1E1CEDB8B1B /* Base.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = Base.lproj; path = "Objective-C/TOCropViewController/Resources/Base.lproj"; sourceTree = ""; }; + B8715FF692DFE7EBB9539E8F7DD36E45 /* RCTInspectorDevServerHelper.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTInspectorDevServerHelper.h; sourceTree = ""; }; + B8BF9274CA91C7882F2D20B09EEC53B7 /* DeviceUID.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = DeviceUID.m; path = ios/RNDeviceInfo/DeviceUID.m; sourceTree = ""; }; + B906FA2FAA49312F0F7E0E6ADB09F70D /* RCTParserUtils.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTParserUtils.m; sourceTree = ""; }; + B919D1DC75E0549E6CF764EFD6CABF4E /* RCTNativeAnimatedNodesManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTNativeAnimatedNodesManager.m; sourceTree = ""; }; + B95DA33E45FE2167A45BD9FC97CCD116 /* RCTInvalidating.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTInvalidating.h; sourceTree = ""; }; + B9B9A2C0F7A74B8F14BDB372325533AF /* PolygonNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PolygonNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/PolygonNode.swift"; sourceTree = ""; }; + B9C7A3D1BA43DCDB017636BE5419448D /* SimpleLineIcons.ttf */ = {isa = PBXFileReference; includeInIndex = 1; name = SimpleLineIcons.ttf; path = Fonts/SimpleLineIcons.ttf; sourceTree = ""; }; + B9EB7FBC0AA72950FF0DEE6F7B623805 /* RealmJS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RealmJS-prefix.pch"; sourceTree = ""; }; + B9F0F1A87228330476141364B59DDB0C /* RCTReconnectingWebSocket.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTReconnectingWebSocket.h; path = Libraries/WebSocket/RCTReconnectingWebSocket.h; sourceTree = ""; }; + BA001A05F9762489F7D789E6E8F78413 /* RCTDiffClampAnimatedNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTDiffClampAnimatedNode.h; sourceTree = ""; }; + BA035756441DF819F5E5FEDD250A918A /* RCTDeviceInfo.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTDeviceInfo.h; sourceTree = ""; }; + BA76875601EAE59FC95F1335014987AD /* AnimationFontProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationFontProvider.swift; path = "lottie-swift/src/Public/FontProvider/AnimationFontProvider.swift"; sourceTree = ""; }; + BAA3738C4EC4172B5AB184FFD12938FF /* FaceDetectorManagerMlkit.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FaceDetectorManagerMlkit.m; path = ios/RN/FaceDetectorManagerMlkit.m; sourceTree = ""; }; + BABACAF6BA73DA602B9900C26DCAB72F /* vlog_is_on.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = vlog_is_on.h; path = src/glog/vlog_is_on.h; sourceTree = ""; }; + BAE6B444A9FE1ADB27C68EAD5C643E1F /* RNSVGBrush.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGBrush.m; sourceTree = ""; }; + BAF39C28AE2E7DBAE26452E926A6EE1B /* REABlockNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = REABlockNode.m; sourceTree = ""; }; + BB2FAA9C9BDE6EF026D50DA0F454A607 /* RNSVGNodeManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGNodeManager.h; sourceTree = ""; }; + BB4D947C9C26C6693EE7738FB0263049 /* RNDeviceInfo.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNDeviceInfo.m; path = ios/RNDeviceInfo/RNDeviceInfo.m; sourceTree = ""; }; + BB4E12F71271E9C4C040BA76CC4691CB /* RNSVGUse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGUse.h; sourceTree = ""; }; + BB70D6C8A07B01114162E018AC907B70 /* RCTModuloAnimatedNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTModuloAnimatedNode.m; sourceTree = ""; }; + BB9F8CA21ADEF166C94F0399E3C2CF9C /* React-RCTText-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "React-RCTText-dummy.m"; sourceTree = ""; }; + BBBE4C9FA273586C70D4759021010E97 /* react-native-viewpager-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "react-native-viewpager-dummy.m"; sourceTree = ""; }; + BBD7C77412D709EE9D77315494356EBD /* SolidCompositionLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SolidCompositionLayer.swift; path = "lottie-swift/src/Private/LayerContainers/CompLayers/SolidCompositionLayer.swift"; sourceTree = ""; }; + BC043FF9D0598B50198A39EA41C2E162 /* RCTSinglelineTextInputViewManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTSinglelineTextInputViewManager.h; sourceTree = ""; }; + BC1FF3106DCABE9CE413C693B9BA1520 /* GCDWebServerHTTPStatusCodes.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerHTTPStatusCodes.h; path = GCDWebServer/Core/GCDWebServerHTTPStatusCodes.h; sourceTree = ""; }; + BC301813DFDC7AE8CF56259F93EF1952 /* RCTBridge.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTBridge.h; sourceTree = ""; }; + BC360D590173432BA140F4707D1FAB0A /* RCTAppState.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTAppState.h; sourceTree = ""; }; + BC5557357861AE2D27C9629B6D9075B4 /* AIRMapLocalTileManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMapLocalTileManager.h; path = lib/ios/AirMaps/AIRMapLocalTileManager.h; sourceTree = ""; }; + BC86AF373FCDDEEF567A95A4FA03FCAB /* RNSVGImage.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGImage.m; sourceTree = ""; }; + BCF2DCAD493203C1F4D684B7A5CF9BAC /* RCTConvert+UIPageViewControllerTransitionStyle.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "RCTConvert+UIPageViewControllerTransitionStyle.h"; path = "ios/RCTConvert+UIPageViewControllerTransitionStyle.h"; sourceTree = ""; }; + BCF624EF1393AEE56C862E44CA14CF58 /* GradientStrokeNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GradientStrokeNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderNodes/GradientStrokeNode.swift"; sourceTree = ""; }; + BD377210FCCB9285547E9EE90D83172E /* JSBundleType.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = JSBundleType.cpp; sourceTree = ""; }; + BD71E2539823621820F84384064C253A /* libReact-Core.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libReact-Core.a"; path = "libReact-Core.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + BDC134C32EEC4BFDA2E7B68118A76435 /* RNDateTimePicker.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = RNDateTimePicker.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + BDC2EF16D74838BED8B5B6EA4B2F3AF1 /* RCTEventAnimation.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTEventAnimation.m; sourceTree = ""; }; + BDF01303944F30CF7FC31EB4D29A7C7D /* RCTSliderManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTSliderManager.h; sourceTree = ""; }; + BE094EB02887207BCE58BF8236CD09A2 /* QBVideoIndicatorView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = QBVideoIndicatorView.m; path = ios/QBImagePicker/QBImagePicker/QBVideoIndicatorView.m; sourceTree = ""; }; + BE23141D796B57FA066441EEE47B301A /* React-jsi.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-jsi.debug.xcconfig"; sourceTree = ""; }; + BE3A2DF18940CE2E47F7BA1621354EF3 /* GradientStroke.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GradientStroke.swift; path = "lottie-swift/src/Private/Model/ShapeItems/GradientStroke.swift"; sourceTree = ""; }; + BE927428A642478F54CBB791E0F20206 /* GCDWebServerErrorResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerErrorResponse.h; path = GCDWebServer/Responses/GCDWebServerErrorResponse.h; sourceTree = ""; }; + BEB008BA868EA1EC65731DC8EF91BE76 /* Yoga.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Yoga.release.xcconfig; sourceTree = ""; }; + BEC13A69FA2BC2EEFB4E6090623EDD2B /* realm_coordinator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = realm_coordinator.cpp; sourceTree = ""; }; + BF131340112C705973475540BCBD0E8B /* REABezierNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = REABezierNode.h; sourceTree = ""; }; + BF4C20670E8DF945ADA9F662D0E70A64 /* RCTLayoutAnimationGroup.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTLayoutAnimationGroup.m; sourceTree = ""; }; + BF723151A330EF526E035028F00F6202 /* TurboModule.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = TurboModule.cpp; path = turbomodule/core/TurboModule.cpp; sourceTree = ""; }; + BF86A1D62F5BFFB9AEF707FF6416BB87 /* RCTRedBoxExtraDataViewController.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTRedBoxExtraDataViewController.m; sourceTree = ""; }; + BF93434B8A3E2C9AD337B758C2399DEB /* REAEventNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = REAEventNode.h; sourceTree = ""; }; + BFFFBE1EC886BA12148BC938CAFDAAFC /* React-RCTText-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "React-RCTText-prefix.pch"; sourceTree = ""; }; + C00D10BC4E81D51D63BAF5FB241451A5 /* RNLongPressHandler.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNLongPressHandler.m; sourceTree = ""; }; + C01E9E4CC755CF5D62B29959835ED5EF /* React-jsi-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "React-jsi-prefix.pch"; sourceTree = ""; }; + C0901ACE7F44E77470508415DDF0D74C /* AssetLibrary.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AssetLibrary.swift; path = "lottie-swift/src/Private/Model/Assets/AssetLibrary.swift"; sourceTree = ""; }; + C0DA7EA1F08AD6F0245451C9B16A3DB8 /* RNSVGMarkerManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGMarkerManager.m; sourceTree = ""; }; + C0E54AD4141F7D46B27981B4D1870991 /* JSCExecutorFactory.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = JSCExecutorFactory.h; sourceTree = ""; }; + C0EEEF34099B1049223F1BF0653EBD6A /* RCTActionSheetManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTActionSheetManager.h; path = Libraries/ActionSheetIOS/RCTActionSheetManager.h; sourceTree = ""; }; + C1236A13D416C4ADDEC731A5B2AB330D /* REATransformNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = REATransformNode.h; sourceTree = ""; }; + C147E4B6DD38F300313E1E39EC1103FD /* GCDWebServerFunctions.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerFunctions.m; path = GCDWebServer/Core/GCDWebServerFunctions.m; sourceTree = ""; }; + C15259AB0B3AB6AEA22B3C6443C2C7B4 /* GCDWebServer.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = GCDWebServer.release.xcconfig; sourceTree = ""; }; + C15BAE039C997CC47C3DA919A6295C76 /* Pods-iLink-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-iLink-resources.sh"; sourceTree = ""; }; + C190AAD1B0BA1D78B87033000B37C443 /* GCDWebServerErrorResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerErrorResponse.m; path = GCDWebServer/Responses/GCDWebServerErrorResponse.m; sourceTree = ""; }; + C19674798023D7ADB601F31F1C3D9AE6 /* RCTTouchHandler.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTTouchHandler.m; sourceTree = ""; }; + C1A919103EAC9813D236486C34FC0A21 /* libReact-RCTVibration.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libReact-RCTVibration.a"; path = "libReact-RCTVibration.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + C1C5FDA912FF9C9818908E64D95A7FA8 /* RNDeviceInfo.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RNDeviceInfo.release.xcconfig; sourceTree = ""; }; + C1EE4AEEC2C8270869134AA26A2216CF /* RCTUIManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTUIManager.h; sourceTree = ""; }; + C22CB7E9B12EC73BF182F5505909A8AE /* RNDateTimePicker.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNDateTimePicker.h; path = ios/RNDateTimePicker.h; sourceTree = ""; }; + C2323B1BAD30385192D4D97921A4CAB6 /* RNSVGPath.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGPath.h; sourceTree = ""; }; + C259F1F9540724FE9491B3F58571BEEC /* react-native-onesignal.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = "react-native-onesignal.podspec"; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + C2797371596405ECDD234B6669CE130B /* YGEnums.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = YGEnums.h; path = yoga/YGEnums.h; sourceTree = ""; }; + C2B574FC50B75548F510495B80B9E6EB /* RNSVGTSpanManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGTSpanManager.h; sourceTree = ""; }; + C2E2308B5493B41C750331369F9FE5D8 /* jsc_init.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = jsc_init.cpp; sourceTree = ""; }; + C2ED5230FFDF01F7DA060BC480C809E2 /* RNSVGRadialGradient.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGRadialGradient.m; sourceTree = ""; }; + C2FA7EB913338D7FFB691DDFD8AC4E74 /* SajjadBlurOverlay.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = SajjadBlurOverlay.debug.xcconfig; sourceTree = ""; }; + C308DA183C7CD21A6850F981B2ECC4C7 /* RCTInputAccessoryViewManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTInputAccessoryViewManager.h; sourceTree = ""; }; + C326C31BF8C0980CD236AB69A74B20DB /* StarNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StarNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/StarNode.swift"; sourceTree = ""; }; + C339B95A9D096486FF40CFF8F59359E0 /* lottie-react-native.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "lottie-react-native.debug.xcconfig"; sourceTree = ""; }; + C34003BF396EE00DEF28153439F9DCA7 /* RCTTransformAnimatedNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTTransformAnimatedNode.h; sourceTree = ""; }; + C35904A080D10CAB8DD39714F0278653 /* React-cxxreact.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = "React-cxxreact.podspec"; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + C366F024B39FEB968AFF0D8E73C5697F /* AnimatedSwitch.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimatedSwitch.swift; path = "lottie-swift/src/Public/iOS/AnimatedSwitch.swift"; sourceTree = ""; }; + C387D543A00500C3A0B2D9FD216DB8A1 /* DoubleConversion.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = DoubleConversion.release.xcconfig; sourceTree = ""; }; + C395DCAC96B35C2DB0262500AE8F7AA1 /* React-RCTBlob.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-RCTBlob.debug.xcconfig"; sourceTree = ""; }; + C39D1C64E2C25DCF27E56267CAC2E11F /* RNSVGRect.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGRect.h; sourceTree = ""; }; + C3B98241E7065ED31877575D7B640560 /* RCTBundleURLProvider.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTBundleURLProvider.m; sourceTree = ""; }; + C4102E395404EDBFE1BC8A6B7A82CD0C /* demangle.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = demangle.cc; path = src/demangle.cc; sourceTree = ""; }; + C414B7065A0A1197F839BC770797F3BA /* AIRMapOverlayManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMapOverlayManager.h; path = lib/ios/AirMaps/AIRMapOverlayManager.h; sourceTree = ""; }; + C444DE167167A8A4F16CD3B9AA38411B /* RCTScrollContentShadowView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTScrollContentShadowView.m; sourceTree = ""; }; + C498CDECB5315A50BC9177E0BFF04A37 /* RCTUITextView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTUITextView.h; sourceTree = ""; }; + C4A2AD0F6BC89DF4683581520F2DF596 /* RCTShadowView+Layout.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RCTShadowView+Layout.h"; sourceTree = ""; }; + C4C44B4EF4082FF661AA53998D10B029 /* RCTOneSignal.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RCTOneSignal.m; path = ios/RCTOneSignal/RCTOneSignal.m; sourceTree = ""; }; + C4C467CA8E678BA21EB6FD805EE09EDA /* RCTAnimatedNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTAnimatedNode.h; sourceTree = ""; }; + C4CE10757D5EAF8FA97E72D1BB8C99BC /* ShapeRenderLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShapeRenderLayer.swift; path = "lottie-swift/src/Private/NodeRenderSystem/RenderLayers/ShapeRenderLayer.swift"; sourceTree = ""; }; + C4D09E92A1B0E746F4ADA34D8F2122B6 /* RNSVGPainterBrush.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGPainterBrush.m; sourceTree = ""; }; + C5E46D631D41D5741A251DCD6C36BCE3 /* RCTSurfaceView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTSurfaceView.h; sourceTree = ""; }; + C5F8C5FA9631D2D07832052FA14CF585 /* RCTBaseTextInputView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTBaseTextInputView.m; sourceTree = ""; }; + C6556FD190070CBA3565366216FDD692 /* REATransitionValues.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = REATransitionValues.h; sourceTree = ""; }; + C66C1FC852265CEFACD9E17D8FB1A88A /* RCTSurfacePresenterStub.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTSurfacePresenterStub.m; sourceTree = ""; }; + C6F002F460B48A5092183E1E5FDDFF7C /* Animation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Animation.swift; path = "lottie-swift/src/Private/Model/Animation.swift"; sourceTree = ""; }; + C748DD3668E9B96CF437C51C769C17E9 /* React-jsinspector.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-jsinspector.release.xcconfig"; sourceTree = ""; }; + C75E39FBCF49BDB3196FA9FACEB0ABD7 /* RNSVGClipPathManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGClipPathManager.h; sourceTree = ""; }; + C777CF2FB1E39A45CBBDB54E8693F471 /* libRNReanimated.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libRNReanimated.a; path = libRNReanimated.a; sourceTree = BUILT_PRODUCTS_DIR; }; + C77821C156B9BCA08618C10785BD9B9C /* RCTBaseTextInputViewManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTBaseTextInputViewManager.h; sourceTree = ""; }; + C786875A16AA14256F8C1FACBB50A55F /* REAStyleNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = REAStyleNode.m; sourceTree = ""; }; + C7A6275E66A84D90C8EA802EC69FDE29 /* FontAwesome5_Brands.ttf */ = {isa = PBXFileReference; includeInIndex = 1; name = FontAwesome5_Brands.ttf; path = Fonts/FontAwesome5_Brands.ttf; sourceTree = ""; }; + C7C0E7E3493F11A234BCE2C0A351B3FF /* RCTImageURLLoader.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTImageURLLoader.h; path = Libraries/Image/RCTImageURLLoader.h; sourceTree = ""; }; + C7C55CE4026E58C02D2B2F506502C46A /* RNSVGDefsManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGDefsManager.h; sourceTree = ""; }; + C7E9C56E7BD159D024263E249C3F5CBC /* React-RCTImage-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "React-RCTImage-prefix.pch"; sourceTree = ""; }; + C81BA097945485F4DA012F45CDCA846C /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; path = LICENSE; sourceTree = ""; }; + C843DA4336C67DBD78DF5E61E35AE17B /* GCDWebServerDataRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerDataRequest.m; path = GCDWebServer/Requests/GCDWebServerDataRequest.m; sourceTree = ""; }; + C8595193B7FFA489BFED367220D47EF0 /* RNGestureHandlerManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNGestureHandlerManager.h; path = ios/RNGestureHandlerManager.h; sourceTree = ""; }; + C87C59D9BB4054221F29CD49D9A388FC /* UIImage+Extension.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIImage+Extension.m"; path = "ios/src/UIImage+Extension.m"; sourceTree = ""; }; + C8AA93ADD3D0BAF343551D05C075CE6B /* GCDWebServerStreamedResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerStreamedResponse.m; path = GCDWebServer/Responses/GCDWebServerStreamedResponse.m; sourceTree = ""; }; + C914E3FE99FC1BCD3A037F00097CBD23 /* RCTAutoInsetsProtocol.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTAutoInsetsProtocol.h; sourceTree = ""; }; + C925D5E46149A2782FD8DF5999415942 /* AnimationCacheProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationCacheProvider.swift; path = "lottie-swift/src/Public/AnimationCache/AnimationCacheProvider.swift"; sourceTree = ""; }; + C92A797AC907CD1A7128D6472A288F25 /* RCTNetworking.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTNetworking.h; path = Libraries/Network/RCTNetworking.h; sourceTree = ""; }; + C967B312861117FD208430C086C448C2 /* partial_sync.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = partial_sync.cpp; sourceTree = ""; }; + C985D82E9B575CF226EB9314E9DC330F /* RCTTiming.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTTiming.h; sourceTree = ""; }; + C9962383207D21F2CF0E67B12B2B3639 /* RNSVGPathParser.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGPathParser.m; sourceTree = ""; }; + C99D92D5F611B0C9C9A3387F953B9B76 /* RCTSubtractionAnimatedNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTSubtractionAnimatedNode.h; sourceTree = ""; }; + C9C76FAF221512F01C7228B133AD1FF6 /* RCTDevMenu.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTDevMenu.m; sourceTree = ""; }; + CA07BA12BCBA2B37E40F1E0F10EF4E0C /* RCTMaskedViewManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTMaskedViewManager.h; sourceTree = ""; }; + CA289216DC9FD5C70F620E451E66F813 /* RCTConvert+UIPageViewControllerNavigationOrientation.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "RCTConvert+UIPageViewControllerNavigationOrientation.h"; path = "ios/RCTConvert+UIPageViewControllerNavigationOrientation.h"; sourceTree = ""; }; + CA524E79A18965BDAE1F967638AFE916 /* NSMutableDictionary+ImageMetadata.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "NSMutableDictionary+ImageMetadata.m"; path = "ios/RCT/NSMutableDictionary+ImageMetadata.m"; sourceTree = ""; }; + CA763E2CC1D800F79C201D6E781F9B61 /* glog-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "glog-dummy.m"; sourceTree = ""; }; + CAB75B892C756B1E41BC2541464846E2 /* REAValueNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = REAValueNode.m; sourceTree = ""; }; + CB2181E72F68C228D51A8FFF6E7008D1 /* RNSVGRadialGradientManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGRadialGradientManager.h; sourceTree = ""; }; + CB5A87EFA609083E17A2596AAA3CA0A5 /* RCTConvert+AirMap.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "RCTConvert+AirMap.h"; path = "lib/ios/AirMaps/RCTConvert+AirMap.h"; sourceTree = ""; }; + CB848675B688A36A8878F5781344B6F2 /* RNSVGGroupManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGGroupManager.m; sourceTree = ""; }; + CB9C24B52A066907D224A7C8649FEBCB /* AnyNodeProperty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnyNodeProperty.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/Protocols/AnyNodeProperty.swift"; sourceTree = ""; }; + CBBB3B82EECFA4B04D5E74F51014923B /* Folly-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Folly-dummy.m"; sourceTree = ""; }; + CC080FC0BAF19DEEA6CB4CC09FC1D287 /* RNCAsyncStorage.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNCAsyncStorage.m; path = ios/RNCAsyncStorage.m; sourceTree = ""; }; + CC8570DEFF6EC626FD32B962BB296FC6 /* RCTRootShadowView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTRootShadowView.m; sourceTree = ""; }; + CC908ECF70335364348851936C187C38 /* RCTFPSGraph.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTFPSGraph.h; sourceTree = ""; }; + CCAC00C01CED90CFF7427F035467D2EA /* FBReactNativeSpec.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = FBReactNativeSpec.release.xcconfig; sourceTree = ""; }; + CD05BF427FDC034F28F5ACA340676843 /* RCTDataRequestHandler.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTDataRequestHandler.m; sourceTree = ""; }; + CD163ACC3DAFA2B21CE65F2C21350020 /* RCTSurfaceHostingProxyRootView.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTSurfaceHostingProxyRootView.mm; sourceTree = ""; }; + CD86F535C08E0C06154EB0F5AF1FB5FC /* index_set.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = index_set.cpp; sourceTree = ""; }; + CD9ED75EFF35808C586A1CF79D26DDA7 /* react-native-geolocation-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "react-native-geolocation-dummy.m"; sourceTree = ""; }; + CDA822342F0DF2D879CFD0C97942E0BE /* ReactCommon-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "ReactCommon-prefix.pch"; sourceTree = ""; }; + CDBC89BC9044E9410964BB4D41A9A682 /* REAConcatNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = REAConcatNode.m; sourceTree = ""; }; + CDEFE0956EB30340F8CD1C305F247B4A /* RNSVGCircleManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGCircleManager.h; sourceTree = ""; }; + CDFC1FE89654AB6A88FCEBC03172F4DE /* RNSVGPropHelper.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGPropHelper.h; sourceTree = ""; }; + CDFE0C544B14818EEC7303C7B4D66DA2 /* YGNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = YGNode.h; path = yoga/YGNode.h; sourceTree = ""; }; + CE0BB4D68AB741CC9499F46DEE2EA3C6 /* RCTProfileTrampoline-arm64.S */ = {isa = PBXFileReference; includeInIndex = 1; path = "RCTProfileTrampoline-arm64.S"; sourceTree = ""; }; + CE39A10169FF145AA5508694ED3142F9 /* AIRMapManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRMapManager.m; path = lib/ios/AirMaps/AIRMapManager.m; sourceTree = ""; }; + CE980CD3C9B31E945115F2A1B092F928 /* ScopeGuard.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ScopeGuard.cpp; path = folly/ScopeGuard.cpp; sourceTree = ""; }; + CE9DD46C81EF46B852183AF0D39FB17F /* RNSVGDefsManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGDefsManager.m; sourceTree = ""; }; + CEE0DB3F014FB63718B4FEC2A65B6287 /* QBAlbumsViewController.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = QBAlbumsViewController.m; path = ios/QBImagePicker/QBImagePicker/QBAlbumsViewController.m; sourceTree = ""; }; + CF005F54D67115E850253A662978CB37 /* ColorExtension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ColorExtension.swift; path = "lottie-swift/src/Private/Utility/Primitives/ColorExtension.swift"; sourceTree = ""; }; + CF10BDD12115F8C432C0D6F9BF52772A /* RNSVGUseManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGUseManager.h; sourceTree = ""; }; + CF1B1BDD95F2D4A43D7C188646088601 /* RCTErrorCustomizer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTErrorCustomizer.h; sourceTree = ""; }; + CF4B7538C57D76BB420E0F56BE7F3FC3 /* pt-BR.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = "pt-BR.lproj"; path = "Objective-C/TOCropViewController/Resources/pt-BR.lproj"; sourceTree = ""; }; + CF87B8E90810D52AA8D929C1CA23A0CC /* da-DK.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = "da-DK.lproj"; path = "Objective-C/TOCropViewController/Resources/da-DK.lproj"; sourceTree = ""; }; + CFAE66823227976ECBC7F06E4B389F94 /* RCTDisplayLink.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTDisplayLink.m; sourceTree = ""; }; + CFBAFC1B1556E504869E6FBF2C82F6A1 /* RCTDiffClampAnimatedNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTDiffClampAnimatedNode.m; sourceTree = ""; }; + CFFE4022583CE979CBE88F9EF7A53714 /* RCTSafeAreaViewLocalData.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTSafeAreaViewLocalData.m; sourceTree = ""; }; + D0242D376CAAA7048E01DBFEA5AAD7AD /* RCTTextSelection.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTTextSelection.m; sourceTree = ""; }; + D05215927721B9706712B6BC4A383FE9 /* RCTImageViewManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTImageViewManager.h; path = Libraries/Image/RCTImageViewManager.h; sourceTree = ""; }; + D0839262997C0DF425C30B51EA2EEB3B /* adding-locales.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = "adding-locales.png"; path = "docs/adding-locales.png"; sourceTree = ""; }; + D0E5E21082C8136283C3279F482F2CF9 /* RCTImageUtils.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTImageUtils.m; sourceTree = ""; }; + D0ED803C93E7D8D2E8F8DC8DC3418FE9 /* GradientStrokeRenderer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GradientStrokeRenderer.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/Renderables/GradientStrokeRenderer.swift"; sourceTree = ""; }; + D1A453C9ADA80B891B63D853072A7412 /* RCTInputAccessoryViewManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTInputAccessoryViewManager.m; sourceTree = ""; }; + D1A77DD59DB1EB34348E396E28EF45F2 /* RNSVGPropHelper.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGPropHelper.m; sourceTree = ""; }; + D1BD709A9DB53947C5D1E1CEAF69C24F /* RCTMultipartStreamReader.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTMultipartStreamReader.m; sourceTree = ""; }; + D1FB35D55EBEC5E33C85E1601985A3A0 /* RCTBorderDrawing.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTBorderDrawing.h; sourceTree = ""; }; + D22EEA5BB9053A81FA6CC9F014E5DAF5 /* RCTShadowView+Internal.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RCTShadowView+Internal.m"; sourceTree = ""; }; + D230983AD8AD92D207ACEB8BDDB2AAB0 /* AnimationKeypath.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationKeypath.swift; path = "lottie-swift/src/Public/DynamicProperties/AnimationKeypath.swift"; sourceTree = ""; }; + D265F8DEC74CFD78F3C12D3F97848D5F /* signalhandler.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = signalhandler.cc; path = src/signalhandler.cc; sourceTree = ""; }; + D26938C4DD0927567F793D4D10D7E769 /* RCTSurfaceRootShadowView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTSurfaceRootShadowView.h; sourceTree = ""; }; + D2B3AF246F9096C08AEB6824A7E7B50F /* RCTJavaScriptExecutor.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTJavaScriptExecutor.h; sourceTree = ""; }; + D2E0D4DA04AD801A78829766862218F9 /* GCDWebServerStreamedResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerStreamedResponse.h; path = GCDWebServer/Responses/GCDWebServerStreamedResponse.h; sourceTree = ""; }; + D3902C83014D38634769CBEC19AB362A /* RCTHTTPRequestHandler.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTHTTPRequestHandler.mm; sourceTree = ""; }; + D3C1A1E0CB4B37C17A2CD769053FB56A /* React-RCTImage.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-RCTImage.release.xcconfig"; sourceTree = ""; }; + D3CD642B9F233A5DB7B7690E3482C53F /* React-CoreModules.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-CoreModules.debug.xcconfig"; sourceTree = ""; }; + D3D054E6760CF9F7D18FAF5CF21169DD /* RCTDatePickerManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTDatePickerManager.h; sourceTree = ""; }; + D3E13105D8C67162D5247DE615633C9D /* FBReactNativeSpec.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = FBReactNativeSpec.debug.xcconfig; sourceTree = ""; }; + D3F6FE7EB8CF89C4512DFDFC29F6B158 /* RCTFrameAnimation.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTFrameAnimation.h; sourceTree = ""; }; + D4110E77EE0E2454BC34C6A578361699 /* RNSVGSvgView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGSvgView.h; sourceTree = ""; }; + D4208F3E0AFF17F28B7336799FB8D1FB /* AIRMapLocalTileOverlay.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRMapLocalTileOverlay.m; path = lib/ios/AirMaps/AIRMapLocalTileOverlay.m; sourceTree = ""; }; + D463DBF17CCD4CAF6363BF4661F5EAC9 /* RCTUIUtils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTUIUtils.h; sourceTree = ""; }; + D4737F8FEB624BDD4B148D0992B814D6 /* RCTImageBlurUtils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTImageBlurUtils.h; path = Libraries/Image/RCTImageBlurUtils.h; sourceTree = ""; }; + D49556D1A45F748A9263810CCA5EB333 /* Pods-iLink-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-iLink-tvOS.debug.xcconfig"; sourceTree = ""; }; + D54687450E9AD391632C0A71A00C7566 /* UIView+React.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "UIView+React.h"; sourceTree = ""; }; + D5BED0988C81B37AE58174DD0F1CFB34 /* React-RCTAnimation-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "React-RCTAnimation-dummy.m"; sourceTree = ""; }; + D5C775614AC76D44CECB6BE08B022F1F /* libReactCommon.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libReactCommon.a; path = libReactCommon.a; sourceTree = BUILT_PRODUCTS_DIR; }; + D61C57DAFD3EBD219894526763B6AA70 /* Pods-iLink-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-iLink-umbrella.h"; sourceTree = ""; }; + D65ACFDB5970C0A3BAE8B9ACF3CAFB5A /* RCTWrapperViewController.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTWrapperViewController.m; sourceTree = ""; }; + D663AADAD892C03C6E94287FE2DE819E /* FBLazyVector.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = FBLazyVector.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + D69E3770A89636526A178540B298D407 /* RNSVGCircle.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGCircle.h; sourceTree = ""; }; + D711518842393EC048B3120CDA9670D4 /* JSIExecutor.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = JSIExecutor.cpp; path = jsireact/JSIExecutor.cpp; sourceTree = ""; }; + D72CC795D548F7C1ACA4C1E78D62C762 /* glog-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "glog-prefix.pch"; sourceTree = ""; }; + D77060B9EAE7E18CEDE5A7068140F7D9 /* librealm-ios.a */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = archive.ar; name = "librealm-ios.a"; path = "vendor/realm-ios/librealm-ios.a"; sourceTree = ""; }; + D7AA1A4150EF79DC7760046233D8CCF0 /* NodePropertyMap.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NodePropertyMap.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/Protocols/NodePropertyMap.swift"; sourceTree = ""; }; + D7ED0D50DDF170F2A79ED54AFB7DFC0F /* react-native-onesignal.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "react-native-onesignal.release.xcconfig"; sourceTree = ""; }; + D8818730D0625E7ED9A934FE75C73514 /* MallocImpl.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = MallocImpl.cpp; path = folly/memory/detail/MallocImpl.cpp; sourceTree = ""; }; + D893FC8D56FFB338E8A2C88F6B18E6A6 /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; path = LICENSE; sourceTree = ""; }; + D8A0643C1D7D0A2882175ECC5A923420 /* AIRMapCalloutSubview.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRMapCalloutSubview.m; path = lib/ios/AirMaps/AIRMapCalloutSubview.m; sourceTree = ""; }; + D8DC38554D4D0A8BD7A6E130EA61FC70 /* ko.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = ko.lproj; path = "Objective-C/TOCropViewController/Resources/ko.lproj"; sourceTree = ""; }; + D8DC60D74757EEAF2DA2FE35CE69F706 /* RCTMultilineTextInputView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTMultilineTextInputView.h; sourceTree = ""; }; + D8E4117E0554A9D0B67EDDF83A5F84A5 /* react-native-geolocation.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "react-native-geolocation.debug.xcconfig"; sourceTree = ""; }; + D9B8ABBC2F41C5E652A521B7E152EE5D /* RCTDecayAnimation.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTDecayAnimation.m; sourceTree = ""; }; + D9C9A1E675611A46F72EA17CA5F63B6D /* AIRMapWMSTileManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMapWMSTileManager.h; path = lib/ios/AirMaps/AIRMapWMSTileManager.h; sourceTree = ""; }; + D9ED2BBBEB16BBD2FB4D78F4163B4E6E /* TOCropScrollView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = TOCropScrollView.m; path = "Objective-C/TOCropViewController/Views/TOCropScrollView.m"; sourceTree = ""; }; + D9F334F2E90E3EE462FC4192AF5C03BD /* libReact-jsi.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libReact-jsi.a"; path = "libReact-jsi.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + DA05895390B67BE67BF979AE869AFDF0 /* React-RCTBlob-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "React-RCTBlob-dummy.m"; sourceTree = ""; }; + DA36CA9A9954E7D464528822C76B6067 /* RNSVGMarker.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGMarker.m; sourceTree = ""; }; + DA3E3F38928CA35BC2374BEAB21BE759 /* RNImageUtils.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNImageUtils.m; path = ios/RN/RNImageUtils.m; sourceTree = ""; }; + DACE422030B9C191C3A28B79BA223E42 /* RCTPickerManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTPickerManager.m; sourceTree = ""; }; + DAE20003B51CF3FAB81EFD2B12413ED2 /* primitive_list_notifier.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = primitive_list_notifier.cpp; sourceTree = ""; }; + DB24637CF6CAB92C1AE08368F5461B77 /* GroupNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GroupNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderContainers/GroupNode.swift"; sourceTree = ""; }; + DB2FF3471161FE8ED77A86B5069D2EA0 /* RNVectorIconsManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNVectorIconsManager.h; path = RNVectorIconsManager/RNVectorIconsManager.h; sourceTree = ""; }; + DB61A7DE86EDE8B35473F789ED0F68E7 /* ShapeTransform.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShapeTransform.swift; path = "lottie-swift/src/Private/Model/ShapeItems/ShapeTransform.swift"; sourceTree = ""; }; + DB79E1EB09A8A6EA2354F2B9366B0214 /* ShapeContainerLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShapeContainerLayer.swift; path = "lottie-swift/src/Private/NodeRenderSystem/RenderLayers/ShapeContainerLayer.swift"; sourceTree = ""; }; + DB7CD2049B6D935CE30CCBDD6A43C3F1 /* RNSVGMaskManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGMaskManager.h; sourceTree = ""; }; + DBBF84BBC34F9893F03FF07C8AC600E3 /* RCTRootView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTRootView.h; sourceTree = ""; }; + DC2C4A624E9227FE3EF9F3FE33799B4D /* react-native-onesignal-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "react-native-onesignal-prefix.pch"; sourceTree = ""; }; + DC435887F2A0A576ECF94C49BFA8486A /* RCTScrollView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTScrollView.h; sourceTree = ""; }; + DCA3D284011188114D17BD5EFE99AC6D /* RNGestureHandlerModule.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNGestureHandlerModule.h; path = ios/RNGestureHandlerModule.h; sourceTree = ""; }; + DCB1F6E8708F8E9C82CD7E18EAC23C6F /* DeviceUID.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = DeviceUID.h; path = ios/RNDeviceInfo/DeviceUID.h; sourceTree = ""; }; + DCBFB98B4E7DF1747B643F0A9B008B5A /* YGLayout.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = YGLayout.h; path = yoga/YGLayout.h; sourceTree = ""; }; + DCDF941298D8BD8059252E2EAB0E05D5 /* React-RCTLinking.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = "React-RCTLinking.podspec"; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + DCEF22C8515513669AADFF21B6A6566F /* REANode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = REANode.h; sourceTree = ""; }; + DD52AF38C97B8C4CE7CB242233231931 /* RCTProgressViewManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTProgressViewManager.m; sourceTree = ""; }; + DD813D97C57807ACF2E1978B39463227 /* RNSVGViewBox.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGViewBox.h; sourceTree = ""; }; + DDB59549A776771032B9E0CA2843BECC /* RCTConvert+RNSVG.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RCTConvert+RNSVG.h"; sourceTree = ""; }; + DDBFF987C11E27C2E279C34932F86DC6 /* QBAssetsViewController.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = QBAssetsViewController.m; path = ios/QBImagePicker/QBImagePicker/QBAssetsViewController.m; sourceTree = ""; }; + DDC0A34F82C1C937D80AE4A6262D9A58 /* RCTProfile.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTProfile.h; sourceTree = ""; }; + DDCBDDCD3FF5F185D460EDBBE078F838 /* zh-Hant.lproj */ = {isa = PBXFileReference; includeInIndex = 1; name = "zh-Hant.lproj"; path = "Objective-C/TOCropViewController/Resources/zh-Hant.lproj"; sourceTree = ""; }; + DE3D678B84AEEB1F6746D084D04E7D53 /* RCTConvert+CoreLocation.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RCTConvert+CoreLocation.m"; sourceTree = ""; }; + DE3E28A67F6DDB66103DD5B588F2C718 /* AIRMapCircleManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRMapCircleManager.m; path = lib/ios/AirMaps/AIRMapCircleManager.m; sourceTree = ""; }; + DEC81FDDB78DA76319E7B7E90C4CBAE5 /* RCTBridgeDelegate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTBridgeDelegate.h; sourceTree = ""; }; + DECEFD6FC72D238EF6FBB76AA960FB4D /* RCTLayout.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTLayout.h; sourceTree = ""; }; + DEEF66F7DE951666E21144F0A47DB0E0 /* RCTSurfaceHostingView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTSurfaceHostingView.h; sourceTree = ""; }; + DF120D37EAB799E56004DAA5F5BFD01A /* RCTTextView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTTextView.m; sourceTree = ""; }; + DF591E2F6A099FEAF3E493E019C85F91 /* TOCropView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = TOCropView.h; path = "Objective-C/TOCropViewController/Views/TOCropView.h"; sourceTree = ""; }; + DFB0EC4DCE35631FB5239169ED43FB41 /* RCTCamera.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RCTCamera.m; path = ios/RCT/RCTCamera.m; sourceTree = ""; }; + DFC0809A9A24895946B8E7423321A9AF /* RCTInputAccessoryViewContent.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTInputAccessoryViewContent.h; sourceTree = ""; }; + DFD5CEFC41B9646AF9E152295231FC93 /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; + E00BF349A07349D98BB57B31FD1592EA /* RCTModuleMethod.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTModuleMethod.mm; sourceTree = ""; }; + E017F8E739E56EE1AD039BCC5E58883D /* RCTCxxUtils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTCxxUtils.h; sourceTree = ""; }; + E05BD2824783B98D84FA428E4F4D30ED /* AIRWeakTimerReference.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRWeakTimerReference.m; path = lib/ios/AirMaps/AIRWeakTimerReference.m; sourceTree = ""; }; + E06365B96C71BE4DAA287F6646782D03 /* CompoundBezierPath.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompoundBezierPath.swift; path = "lottie-swift/src/Private/Utility/Primitives/CompoundBezierPath.swift"; sourceTree = ""; }; + E065EBEC80CA333B0D3A4D980E341B57 /* RCTUIManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTUIManager.m; sourceTree = ""; }; + E0842FD5F2B9FB71D5541CC3963510CB /* symbolize.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = symbolize.cc; path = src/symbolize.cc; sourceTree = ""; }; + E08E41CE4E68E08FAC46BA384C95351A /* RCTImageLoader.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTImageLoader.mm; sourceTree = ""; }; + E0A890DCDE1AEFAE6C4F72E906958FF8 /* sync_config.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = sync_config.cpp; sourceTree = ""; }; + E0A91CADA2435B8C6AC61AEF45EF44A3 /* RCTSafeAreaView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTSafeAreaView.m; sourceTree = ""; }; + E0CF7AD9D3B4829D2C8395BA01A279F2 /* sync_manager.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = sync_manager.cpp; sourceTree = ""; }; + E0D37428A076EE544DF62A70B9E9644B /* BarcodeDetectorManagerMlkit.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = BarcodeDetectorManagerMlkit.m; path = ios/RN/BarcodeDetectorManagerMlkit.m; sourceTree = ""; }; + E0F7A7F11D70FC6AB9B96B22175201B1 /* RCTMacros.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTMacros.h; sourceTree = ""; }; + E0FE6533198104C97DB047DD5CD8AC67 /* libRNDeviceInfo.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libRNDeviceInfo.a; path = libRNDeviceInfo.a; sourceTree = BUILT_PRODUCTS_DIR; }; + E116B26DFABB4085F334E1F8EAD7A516 /* React-RCTBlob.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-RCTBlob.release.xcconfig"; sourceTree = ""; }; + E11FF1C3AB0FFFB11BDCF1136F614086 /* RNSVGLinearGradient.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGLinearGradient.h; sourceTree = ""; }; + E121A0ADD8B2CDF1E5D691A85AB2CD44 /* REASetNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = REASetNode.m; sourceTree = ""; }; + E13DC4BEC01E20762C48AD4E2E9050B7 /* RNForceTouchHandler.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNForceTouchHandler.m; sourceTree = ""; }; + E14F66A415B455755CFBE410E70DBF6A /* RCTPackagerConnection.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTPackagerConnection.mm; sourceTree = ""; }; + E15CB2D3371D1039E10A3CBFB5025824 /* network_reachability_observer.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = network_reachability_observer.cpp; sourceTree = ""; }; + E1C47602A98504A57923B2CB6DC98076 /* RCTImageEditingManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTImageEditingManager.m; sourceTree = ""; }; + E1E2B06E3F29A568A11421F0C28B039A /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; path = LICENSE; sourceTree = ""; }; + E238817A8E4472E8343824B4ECAB3880 /* AIRMapUrlTileManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMapUrlTileManager.h; path = lib/ios/AirMaps/AIRMapUrlTileManager.h; sourceTree = ""; }; + E25B089BF6D2AAC1F85A70FF5EB28443 /* RCTAssert.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTAssert.m; sourceTree = ""; }; + E2AFB73FF2ECCCCF36936F57970828A7 /* sync_metadata.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = sync_metadata.cpp; sourceTree = ""; }; + E2B156C04F53B8688F8EF29CB338ECCD /* react-native-viewpager.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = "react-native-viewpager.podspec"; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + E2D87BB320FA21D43D6E1FC934AE8602 /* MessageQueueThread.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = MessageQueueThread.h; sourceTree = ""; }; + E375B609457ACB650F4AFCF740F6A0CF /* REAPropsNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = REAPropsNode.m; sourceTree = ""; }; + E39BEB58553BC2E5BDD9CD11A3759A86 /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; path = LICENSE; sourceTree = ""; }; + E3BA5A5052D60069AA1CBB5B33F21489 /* RCTBridgeModule.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTBridgeModule.h; sourceTree = ""; }; + E3BCF20E81A738D8FB9615885F47BE49 /* Pods-iLink-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-iLink-tvOS-dummy.m"; sourceTree = ""; }; + E3C40AA0D1942BEF1AE8E0FD924CF9ED /* RCTSwitchManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTSwitchManager.m; sourceTree = ""; }; + E402A7FDCA4C92CCC0CC1D823D56DDAF /* FloatValueProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FloatValueProvider.swift; path = "lottie-swift/src/Public/DynamicProperties/ValueProviders/FloatValueProvider.swift"; sourceTree = ""; }; + E419DDAAF6B99F38FAB59FBA4BC6D17C /* REATransitionManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = REATransitionManager.m; sourceTree = ""; }; + E41C736103AA19327C5952D1899C019A /* RNSVGNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNSVGNode.m; path = ios/RNSVGNode.m; sourceTree = ""; }; + E42CE18CFB6A66E2D5DC6A99B9019AE2 /* lottie-ios.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "lottie-ios.release.xcconfig"; sourceTree = ""; }; + E46540416CEABE23F3B0D00F260CCD1D /* SolidLayerModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SolidLayerModel.swift; path = "lottie-swift/src/Private/Model/Layers/SolidLayerModel.swift"; sourceTree = ""; }; + E468B90925B127048D26250229969696 /* RCTBaseTextInputShadowView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTBaseTextInputShadowView.h; sourceTree = ""; }; + E4C0B09C90F695FA797B5988D1A801E8 /* RNSVGMarker.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGMarker.h; sourceTree = ""; }; + E4CE6AA3C2C39676208A6D89851D1287 /* AIRMapCalloutSubviewManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRMapCalloutSubviewManager.m; path = lib/ios/AirMaps/AIRMapCalloutSubviewManager.m; sourceTree = ""; }; + E4D3CB353D061375E87F007ED45F59B4 /* SpookyHashV2.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = SpookyHashV2.cpp; path = folly/hash/SpookyHashV2.cpp; sourceTree = ""; }; + E5151C34C0EF604A046582A2D267563F /* RCTTextShadowView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTTextShadowView.m; sourceTree = ""; }; + E521D3884D7743C6A3BA43581766A9F1 /* React-RCTNetwork.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-RCTNetwork.release.xcconfig"; sourceTree = ""; }; + E5376DDB2D85FC75CCE5303BF2D3E8CA /* RCTConvert+UIPageViewControllerNavigationOrientation.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "RCTConvert+UIPageViewControllerNavigationOrientation.m"; path = "ios/RCTConvert+UIPageViewControllerNavigationOrientation.m"; sourceTree = ""; }; + E544143791BE1FD475F30B4FB8B83834 /* React-RCTAnimation-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "React-RCTAnimation-prefix.pch"; sourceTree = ""; }; + E5F56F8A3B3CA34FE0FB77FC6CA1B551 /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; + E5F9D2F97C3F55CA9A6540B426B0E644 /* libreact-native-viewpager.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libreact-native-viewpager.a"; path = "libreact-native-viewpager.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + E61AAE22FF9AFE02079FA4A4B2E4DF7B /* RNSVGRenderable.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNSVGRenderable.h; path = ios/RNSVGRenderable.h; sourceTree = ""; }; + E64810C093021781585B0D608F1C2B77 /* external_commit_helper.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = external_commit_helper.cpp; sourceTree = ""; }; + E65926243EA5F4EACDE42FA59B887387 /* StringExtensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StringExtensions.swift; path = "lottie-swift/src/Private/Utility/Extensions/StringExtensions.swift"; sourceTree = ""; }; + E683DB639D3895583D37D06CFCDE622F /* RNCameraUtils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNCameraUtils.h; path = ios/RN/RNCameraUtils.h; sourceTree = ""; }; + E6910AACA2A4A3019742CAC258755655 /* Pods-iLink.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-iLink.release.xcconfig"; sourceTree = ""; }; + E6A16705C69FC7DE11C2469A4A0F8358 /* libReact-RCTText.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libReact-RCTText.a"; path = "libReact-RCTText.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + E6A627ADE5644D1A2B4D6F6E12B7870D /* RCTScrollableProtocol.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTScrollableProtocol.h; sourceTree = ""; }; + E6BE70A7E5DE10BD60061C7C8173D01A /* React-jsi-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "React-jsi-dummy.m"; sourceTree = ""; }; + E6F7D7BA7182C88340108185552D0BDC /* RCTRawTextShadowView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTRawTextShadowView.h; sourceTree = ""; }; + E76FBB2A2FA956C922BBB10AD6DD20B7 /* RCTHTTPRequestHandler.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTHTTPRequestHandler.h; path = Libraries/Network/RCTHTTPRequestHandler.h; sourceTree = ""; }; + E77DEB601F24379C5CEC66EE3A1C906E /* instrumentation.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = instrumentation.h; sourceTree = ""; }; + E7961F34196F3DAF3A6B971F7346F120 /* schema.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = schema.cpp; sourceTree = ""; }; + E797E163C5043B8A7E500D63BDEE531C /* RCTViewManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTViewManager.m; sourceTree = ""; }; + E79D00637AB2C3B4E62EDC815A081392 /* RCTNativeAnimatedNodesManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTNativeAnimatedNodesManager.h; path = Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.h; sourceTree = ""; }; + E79FD9B08B2955255DD23ECB74BA5CBE /* RNSVGPathManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGPathManager.m; sourceTree = ""; }; + E7E628535CF98562C7E58A25978F8A7C /* RCTBaseTextViewManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTBaseTextViewManager.m; sourceTree = ""; }; + E7F8BF957B1377395645A647BB6FC686 /* React-Core.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = "React-Core.podspec"; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + E880CD653B9A0FF5FAD5E27B4B0B6298 /* RCTInterpolationAnimatedNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTInterpolationAnimatedNode.m; sourceTree = ""; }; + E88DA0EDF291FBB71A78CBFBD976A127 /* RCTSegmentedControlManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTSegmentedControlManager.m; sourceTree = ""; }; + E8EBD3506BEC6EBA7A00483A26A9DFC7 /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; + E917F464C79C1657727D5AEAE90B1233 /* REAJSCallNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = REAJSCallNode.h; sourceTree = ""; }; + E91BF9E2FD07B1B4FC64DB7A321410E3 /* AIRWeakMapReference.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRWeakMapReference.m; path = lib/ios/AirMaps/AIRWeakMapReference.m; sourceTree = ""; }; + E920298DB7F4030BBE9C9A24ADF42C8A /* RCTSafeAreaViewLocalData.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTSafeAreaViewLocalData.h; sourceTree = ""; }; + E9A9997E1BB76489DBFA47AC064187D2 /* YGValue.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = YGValue.h; path = yoga/YGValue.h; sourceTree = ""; }; + E9CC570673B58E56963AECBFA3301743 /* CxxModule.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = CxxModule.h; sourceTree = ""; }; + E9CF34DF15C1269E98F15FFE2C5CEB4E /* Unicode.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = Unicode.cpp; path = folly/Unicode.cpp; sourceTree = ""; }; + EA35950E4513A7C2231B351F9CFE150C /* GCDWebServer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServer.h; path = GCDWebServer/Core/GCDWebServer.h; sourceTree = ""; }; + EA37D9997E1D6992DB5C309D59091305 /* Pods-iLinkTests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-iLinkTests-dummy.m"; sourceTree = ""; }; + EA39116D102B95DFC21A0987228A959E /* AIRMapMarkerManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMapMarkerManager.h; path = lib/ios/AirMaps/AIRMapMarkerManager.h; sourceTree = ""; }; + EA6F220E0E153DEE9052D0B89A769892 /* REACondNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = REACondNode.m; sourceTree = ""; }; + EAEF3AF694E259B785C9396274961A8F /* RCTBaseTextInputShadowView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTBaseTextInputShadowView.m; sourceTree = ""; }; + EAFB6F84B30F9B05DF2CE8F9DBE753FD /* RNRootViewGestureRecognizer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNRootViewGestureRecognizer.h; path = ios/RNRootViewGestureRecognizer.h; sourceTree = ""; }; + EB0CFBE40A9BD82CB3D0637C34A04A90 /* TextAnimator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TextAnimator.swift; path = "lottie-swift/src/Private/Model/Text/TextAnimator.swift"; sourceTree = ""; }; + EB305179167B31870EDDB1ADA4613306 /* FillRenderer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FillRenderer.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/Renderables/FillRenderer.swift"; sourceTree = ""; }; + EB409309980C3946B8F2FF7A6E8536C0 /* MethodCall.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = MethodCall.h; sourceTree = ""; }; + EB443AA4618E950E9D17E53658B666BC /* lottie-ios.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "lottie-ios.debug.xcconfig"; sourceTree = ""; }; + EB79F8010AA4124014EF95A6F1FE4F5B /* RNImageCropPicker-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RNImageCropPicker-dummy.m"; sourceTree = ""; }; + EB7ABBF68241E05E7A5BA24A1A311C3F /* RCTRequired.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTRequired.h; path = RCTRequired/RCTRequired.h; sourceTree = ""; }; + EBA1ABAEEAA339538F25C1FE3B1E3E02 /* Bridging.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Bridging.h; path = src/ios/LottieReactNative/Bridging.h; sourceTree = ""; }; + EBD8B4A1B95E01211943124234AA30ED /* React.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = React.debug.xcconfig; sourceTree = ""; }; + EC3FE2D4511AB643734751582E105065 /* ReactNativePageView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ReactNativePageView.h; path = ios/ReactNativePageView.h; sourceTree = ""; }; + EC7C5D64F8094A2137F7CFE929C27BB7 /* RCTTouchEvent.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTTouchEvent.m; sourceTree = ""; }; + ECB135AD98CEE611CEC7D7453BC0C694 /* RNSVGPathParser.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGPathParser.h; sourceTree = ""; }; + ECC6BA4132707B740F28A2F224EFEEF3 /* RCTSurfaceStage.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTSurfaceStage.m; sourceTree = ""; }; + ED089C088BDD40333CC6D7AE6A5C89AF /* RNSVGViewBox.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGViewBox.m; sourceTree = ""; }; + ED5C83E6181A007B187B25C92472C442 /* RNCAsyncStorage-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RNCAsyncStorage-dummy.m"; sourceTree = ""; }; + ED60701CCF623C43171453978A7AE8F5 /* React-jsiexecutor.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = "React-jsiexecutor.podspec"; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + ED6C774D5D0B0B3197E75B36D00D0C13 /* RNVectorIcons-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RNVectorIcons-dummy.m"; sourceTree = ""; }; + EDE726FE7E357E1850CBEA3FBD348B5D /* react-native-camera.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "react-native-camera.debug.xcconfig"; sourceTree = ""; }; + EE48833A088C28D4F67F1E84A5F5D98A /* RCTGIFImageDecoder.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTGIFImageDecoder.m; sourceTree = ""; }; + EE54F2B238C157AD12425F4C0ED5FB87 /* RCTImageLoaderProtocol.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTImageLoaderProtocol.h; path = Libraries/Image/RCTImageLoaderProtocol.h; sourceTree = ""; }; + EE6797E848B43E6F58CB4F0B719BB77E /* RNSVGNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNSVGNode.h; path = ios/RNSVGNode.h; sourceTree = ""; }; + EE76A76F6A9F4B6496B535A781B58E6A /* Foundation.ttf */ = {isa = PBXFileReference; includeInIndex = 1; name = Foundation.ttf; path = Fonts/Foundation.ttf; sourceTree = ""; }; + EEAEB087DB360E8220231516E343B63E /* ColdClass.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ColdClass.cpp; path = folly/lang/ColdClass.cpp; sourceTree = ""; }; + EEDA1BD360AA71FA05762BABCF449501 /* React-RCTActionSheet-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "React-RCTActionSheet-dummy.m"; sourceTree = ""; }; + EEDBF403E8E0B3885E65C2741B536BC5 /* libReact-RCTImage.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libReact-RCTImage.a"; path = "libReact-RCTImage.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + EEE1FFB241BDB298B04B82917991DE31 /* RNGestureHandler.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RNGestureHandler.release.xcconfig; sourceTree = ""; }; + EF0851190D1A8747EFE9F9C974FCB6AE /* RCTRootViewInternal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTRootViewInternal.h; sourceTree = ""; }; + EF0BFBC5D46AA9AED1C9E76B128253C6 /* GCDWebServerDataResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GCDWebServerDataResponse.h; path = GCDWebServer/Responses/GCDWebServerDataResponse.h; sourceTree = ""; }; + EF0D53316292046FF61B6AFD6BE92AFD /* TurboModuleUtils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = TurboModuleUtils.h; path = turbomodule/core/TurboModuleUtils.h; sourceTree = ""; }; + EF2C038FAAFABD6FE6339077DDF5CD33 /* RCTTypedModuleConstants.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTTypedModuleConstants.mm; sourceTree = ""; }; + EF5B7FFC27AA282C74C338F12B284A7D /* React-jsiexecutor-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "React-jsiexecutor-prefix.pch"; sourceTree = ""; }; + EF6310C75F540317D21E61D7B90B2E3E /* RCTRequired.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RCTRequired.release.xcconfig; sourceTree = ""; }; + EF96A2838F05A4DEE186B9590D7506B2 /* jsilib-posix.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = "jsilib-posix.cpp"; sourceTree = ""; }; + EF9D9E07D06963C0E92CF076BD8E29F8 /* React-Core.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-Core.debug.xcconfig"; sourceTree = ""; }; + EFB04FC9AA8EBB101ECAC8F795131780 /* RAMBundleRegistry.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RAMBundleRegistry.h; sourceTree = ""; }; + EFD4D34DBD4C75DCC17359BBB6B280A9 /* ReactMarker.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = ReactMarker.cpp; sourceTree = ""; }; + EFF65AE191E9DBA9D82F06A0B9BECF34 /* RCTStatusBarManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTStatusBarManager.h; sourceTree = ""; }; + F002AFF0C76F49BC958060877EA88922 /* AIRMapPolylineRenderer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AIRMapPolylineRenderer.h; path = lib/ios/AirMaps/AIRMapPolylineRenderer.h; sourceTree = ""; }; + F016DDB0EDEE8B02A5D2A9B23D744763 /* ieee.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ieee.h; path = "double-conversion/ieee.h"; sourceTree = ""; }; + F01D8D99CB283B7DA0E86DCBC92C7D46 /* RCTParserUtils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTParserUtils.h; sourceTree = ""; }; + F01DE092D544AE4823AE9A27D1110E37 /* RCTSurfaceRootView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTSurfaceRootView.h; sourceTree = ""; }; + F021518DC5551CA91B5C48F5A9961C1C /* React-RCTImage.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = "React-RCTImage.podspec"; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + F0390652A3087405164577EEF51479EC /* RNSVGMask.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGMask.h; sourceTree = ""; }; + F041CEC0836A9655C3E02C981F08D7D9 /* base64.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = base64.cpp; sourceTree = ""; }; + F0517E56FF7DF318E7823958BC07879C /* double-conversion.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = "double-conversion.cc"; path = "double-conversion/double-conversion.cc"; sourceTree = ""; }; + F0864A0CF9ADBF8AB056BD16781F7D8A /* RNSVGMarkerPosition.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGMarkerPosition.h; sourceTree = ""; }; + F0A76B5BFAFE837DB66290129F312993 /* RCTView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTView.h; sourceTree = ""; }; + F0C8A3071CB2A6215005813417F3252A /* collection_notifier.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = collection_notifier.cpp; sourceTree = ""; }; + F0CC1812790677B8D0F41C8A40E2FE8D /* RCTImageView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTImageView.h; path = Libraries/Image/RCTImageView.h; sourceTree = ""; }; + F0EDA46F7F300683016A3EE9C48DB350 /* LongLivedObject.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = LongLivedObject.cpp; path = turbomodule/core/LongLivedObject.cpp; sourceTree = ""; }; + F0FE00D4A6E154DF649B2A6827594428 /* YGFloatOptional.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = YGFloatOptional.h; path = yoga/YGFloatOptional.h; sourceTree = ""; }; + F1484D73E6383C4C0A58949B95EFCE6A /* RCTMessageThread.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTMessageThread.mm; sourceTree = ""; }; + F196955D0FA6F2C9AEDA7A2661A61EF9 /* RealmAnalytics.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RealmAnalytics.mm; sourceTree = ""; }; + F19FE2620B9C5885D269A52521CB8AD3 /* utils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = utils.h; path = "double-conversion/utils.h"; sourceTree = ""; }; + F1C4465EF58A70C056C79D061B928C1D /* Merge.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Merge.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Merge.swift"; sourceTree = ""; }; + F2073053C5070AD4D345A1843FC38FF1 /* RCTAsyncLocalStorage.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTAsyncLocalStorage.h; sourceTree = ""; }; + F2111F185F583904E97FE6A6493045F0 /* RCTAnimationType.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTAnimationType.h; sourceTree = ""; }; + F243D646A3710E702CD9FF1634F78214 /* RCTPerformanceLogger.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTPerformanceLogger.h; sourceTree = ""; }; + F26B30C94D7FB7F86B39B826FF754F70 /* UIView+React.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "UIView+React.m"; sourceTree = ""; }; + F297E23C4B698BE108E1289ED8B3C3BD /* TOCropViewControllerTransitioning.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = TOCropViewControllerTransitioning.m; path = "Objective-C/TOCropViewController/Models/TOCropViewControllerTransitioning.m"; sourceTree = ""; }; + F2BA2481F640E0C6376C9E14A5F16D6A /* lottie-ios.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "lottie-ios.modulemap"; sourceTree = ""; }; + F2CCB9AAFC0C84CEC81CC56AFB4539C2 /* React-RCTVibration-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "React-RCTVibration-prefix.pch"; sourceTree = ""; }; + F2E7C88DFCD460A4B46B913ADEB8A641 /* libReact-jsiexecutor.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libReact-jsiexecutor.a"; path = "libReact-jsiexecutor.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + F2FF3D182FC9F7CD13E56DCCBC4797B0 /* glog.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = glog.release.xcconfig; sourceTree = ""; }; + F349B8A8824E8AB6307022DD29F00082 /* JSIDynamic.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = JSIDynamic.h; sourceTree = ""; }; + F376C2413180D52566C6CA77B89D33ED /* strtod.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = strtod.cc; path = "double-conversion/strtod.cc"; sourceTree = ""; }; + F3C18D3CD50119CC0AC01C8A7809D608 /* RCTImageStoreManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTImageStoreManager.m; sourceTree = ""; }; + F4070D8B5FF76C79A83572831CA832C9 /* Pods-iLinkTests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-iLinkTests-acknowledgements.plist"; sourceTree = ""; }; + F43F1CC6EE0CD6AFA67661B7720FF22B /* RNSVGBrushType.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGBrushType.h; sourceTree = ""; }; + F4729515DBC4439BE5AD5831429F2076 /* RCTScrollViewManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTScrollViewManager.h; sourceTree = ""; }; + F477981DA65E0F31D8F2063774021510 /* GCDWebServerRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GCDWebServerRequest.m; path = GCDWebServer/Core/GCDWebServerRequest.m; sourceTree = ""; }; + F49F2C73E1294715E47A2DC7AD009CB4 /* RNSVGSolidColorBrush.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGSolidColorBrush.h; sourceTree = ""; }; + F4E8900AEC7EBB064EAF3AAF3E70DEEB /* RCTUIImageViewAnimated.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTUIImageViewAnimated.m; sourceTree = ""; }; + F51F6674E326D1E9CD1E31C711594411 /* RCTSurfaceRootShadowView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTSurfaceRootShadowView.m; sourceTree = ""; }; + F59A7EEFCBCC98F244966096514F2DBA /* thread_safe_reference.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = thread_safe_reference.cpp; sourceTree = ""; }; + F59F86E65D5808E638DA23309781CCB4 /* RNSVGClipPath.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGClipPath.h; sourceTree = ""; }; + F5D9D2F1B88A2C27BEC49EAA321A63F8 /* LRUAnimationCache.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LRUAnimationCache.swift; path = "lottie-swift/src/Public/AnimationCache/LRUAnimationCache.swift"; sourceTree = ""; }; + F6087E3D32B88E643245FC210E5F5DEB /* REAUtils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = REAUtils.h; path = ios/REAUtils.h; sourceTree = ""; }; + F608D43CD70D5099A582EFE04698D543 /* RCTSubtractionAnimatedNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTSubtractionAnimatedNode.m; sourceTree = ""; }; + F635DD432755A9D251A29C83E3EA6A90 /* RCTMultilineTextInputView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTMultilineTextInputView.m; sourceTree = ""; }; + F66F35D11FB0387EA828F51B51A7C135 /* CameraFocusSquare.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = CameraFocusSquare.h; path = ios/RCT/CameraFocusSquare.h; sourceTree = ""; }; + F690CCE9A100D449DB074095A72D1F80 /* RCTSRWebSocket.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RCTSRWebSocket.m; path = Libraries/WebSocket/RCTSRWebSocket.m; sourceTree = ""; }; + F69FCAFB04BBC7FC6818A80CFB36E1BA /* RCTModalHostViewManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTModalHostViewManager.m; sourceTree = ""; }; + F6AEB026EE96E8505E4C53D1220F7027 /* Pods-iLink-tvOSTests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-iLink-tvOSTests-dummy.m"; sourceTree = ""; }; + F6BD9A50BFE97C83246C467C43671190 /* PassThroughOutputNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PassThroughOutputNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/PassThroughOutputNode.swift"; sourceTree = ""; }; + F6E6195BEF9483D9700729A2EB595E89 /* RNDateTimePickerManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RNDateTimePickerManager.m; path = ios/RNDateTimePickerManager.m; sourceTree = ""; }; + F70EA8E0ECA8692F80688DD7B05F7D12 /* RCTSurfaceRootView.mm */ = {isa = PBXFileReference; includeInIndex = 1; path = RCTSurfaceRootView.mm; sourceTree = ""; }; + F71EBF73F354B475D465FF6DE9A66707 /* libReact-RCTBlob.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libReact-RCTBlob.a"; path = "libReact-RCTBlob.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + F7531675332F461843519F60E78C5AA3 /* RCTUIManagerObserverCoordinator.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTUIManagerObserverCoordinator.h; sourceTree = ""; }; + F7536A367BD42849DC5CDC6244463360 /* MaterialIcons.ttf */ = {isa = PBXFileReference; includeInIndex = 1; name = MaterialIcons.ttf; path = Fonts/MaterialIcons.ttf; sourceTree = ""; }; + F7810BE43000FD2E40F662368FD56AA6 /* RCTDevMenu.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTDevMenu.h; sourceTree = ""; }; + F809F1B28CDC7EFE2A9E80F722FEBF27 /* RCTScrollContentViewManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTScrollContentViewManager.m; sourceTree = ""; }; + F8292BA8683722F757F59A1BBE10A245 /* Pods-iLink.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-iLink.modulemap"; sourceTree = ""; }; + F84CABFC1890E2904B210E2AB103E510 /* FontAwesome.ttf */ = {isa = PBXFileReference; includeInIndex = 1; name = FontAwesome.ttf; path = Fonts/FontAwesome.ttf; sourceTree = ""; }; + F853E118166FE1D90C85C0C0338CF375 /* RCTJSStackFrame.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTJSStackFrame.m; sourceTree = ""; }; + F8864C7106ED8707B68D54E0B25D263D /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; + F8B65144CE72D1A5A656CB164155E32E /* NativeToJsBridge.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = NativeToJsBridge.cpp; sourceTree = ""; }; + F8D18992CA9A1C92DDC9B2CD69EE84AF /* Interpolatable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Interpolatable.swift; path = "lottie-swift/src/Private/Utility/Interpolatable/Interpolatable.swift"; sourceTree = ""; }; + F8E0B5C65F8865117C3CC9B7128D9FB0 /* RCTImageDataDecoder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RCTImageDataDecoder.h; path = Libraries/Image/RCTImageDataDecoder.h; sourceTree = ""; }; + F8F52759CFB3268D4F2AF2210007821F /* ReactMarker.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = ReactMarker.h; sourceTree = ""; }; + F9401D30E808F2DC9A2FB673BFFAB18D /* RCTValueAnimatedNode.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTValueAnimatedNode.m; sourceTree = ""; }; + F958876A082BF810B342435CE3FB5AF6 /* libRCTTypeSafety.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libRCTTypeSafety.a; path = libRCTTypeSafety.a; sourceTree = BUILT_PRODUCTS_DIR; }; + F98A1A5429C0BB468270AEE8B7FFE0F9 /* REAValueNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = REAValueNode.h; sourceTree = ""; }; + F99004A32AD7B4B8E18DFF2A1488BCB2 /* react-native-camera-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "react-native-camera-prefix.pch"; sourceTree = ""; }; + F9B3BB3CCBC0A046A499236E0B0DF13E /* Pods-iLink-tvOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-iLink-tvOS-acknowledgements.markdown"; sourceTree = ""; }; + F9D2B89B1F833A86678F3364DC2CE23C /* MaterialCommunityIcons.ttf */ = {isa = PBXFileReference; includeInIndex = 1; name = MaterialCommunityIcons.ttf; path = Fonts/MaterialCommunityIcons.ttf; sourceTree = ""; }; + F9E5BB5FF7517237264F2A1398A0BF6F /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; path = LICENSE; sourceTree = ""; }; + FA311BDC345AB9232FCFD21DB7777AB9 /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; path = LICENSE; sourceTree = ""; }; + FB97A1E0C30C14051EA93F232E667110 /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; path = LICENSE; sourceTree = ""; }; + FB9B47C1972AA062AE52B78BFF8C0E57 /* TurboModule.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = TurboModule.h; path = turbomodule/core/TurboModule.h; sourceTree = ""; }; + FBCAA30722C680310F6F34A274DEBD27 /* NSMutableDictionary+ImageMetadata.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "NSMutableDictionary+ImageMetadata.h"; path = "ios/RCT/NSMutableDictionary+ImageMetadata.h"; sourceTree = ""; }; + FBF2B349D86DD808E02008381C214847 /* bignum.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = bignum.h; path = "double-conversion/bignum.h"; sourceTree = ""; }; + FBFAF7E6A054D8C885F2A1820099BB3A /* RCTMessageThread.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTMessageThread.h; sourceTree = ""; }; + FC10FDA5887868E51549BB2085C1B015 /* React-jsiexecutor-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "React-jsiexecutor-dummy.m"; sourceTree = ""; }; + FC3AB04AF911E80D6D03D49FC7610C8D /* JSBundleType.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = JSBundleType.h; sourceTree = ""; }; + FC58373E729945E046652F745D1FD718 /* RNDateTimePickerManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNDateTimePickerManager.h; path = ios/RNDateTimePickerManager.h; sourceTree = ""; }; + FC9C5B2255AF060B7FBFD23A52247D88 /* RNSVGEllipse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGEllipse.h; sourceTree = ""; }; + FC9DD2290480ACE14CA81490C1198E5B /* RCTNetInfo.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTNetInfo.m; sourceTree = ""; }; + FCB3DA22B16E2843926B4D3F81BBBF89 /* React-jsiexecutor.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "React-jsiexecutor.release.xcconfig"; sourceTree = ""; }; + FCBDCAC887A24D23057D28D42245E932 /* Entypo.ttf */ = {isa = PBXFileReference; includeInIndex = 1; name = Entypo.ttf; path = Fonts/Entypo.ttf; sourceTree = ""; }; + FCC58E2C789E628C139369B53C12A061 /* RCTRefreshControlManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RCTRefreshControlManager.m; sourceTree = ""; }; + FCC6DC33B3F76845587C8DB0138DD506 /* Rectangle.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Rectangle.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Rectangle.swift"; sourceTree = ""; }; + FD05B573DE80F752C065391EC663F390 /* libreact-native-onesignal.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libreact-native-onesignal.a"; path = "libreact-native-onesignal.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + FD19A42F9A5D4784F8B8D081039BDEB6 /* SizeValueProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SizeValueProvider.swift; path = "lottie-swift/src/Public/DynamicProperties/ValueProviders/SizeValueProvider.swift"; sourceTree = ""; }; + FD5598ECB28F32444536F0916852780B /* AIRMapOverlayRenderer.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRMapOverlayRenderer.m; path = lib/ios/AirMaps/AIRMapOverlayRenderer.m; sourceTree = ""; }; + FD7FC2ADD8CE2AC7EE1CCC4A62351079 /* RNVectorIcons.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RNVectorIcons.release.xcconfig; sourceTree = ""; }; + FD97D288F5DC75E5CC02C5EB9122424F /* RNFaceDetectorModuleMLKit.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RNFaceDetectorModuleMLKit.h; path = ios/RN/RNFaceDetectorModuleMLKit.h; sourceTree = ""; }; + FD9AFB930F448B2F372B8557499F0B38 /* UIImage+Extension.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIImage+Extension.h"; path = "ios/src/UIImage+Extension.h"; sourceTree = ""; }; + FDB08DA22A0C0098DCEEA60EEA3CBEBB /* strtod.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = strtod.h; path = "double-conversion/strtod.h"; sourceTree = ""; }; + FDE658A03788A8117ABC97917B668880 /* AIRMapUrlTile.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AIRMapUrlTile.m; path = lib/ios/AirMaps/AIRMapUrlTile.m; sourceTree = ""; }; + FDF0B4882759CBBF2ECCA0023038F2D8 /* TextDetectorManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = TextDetectorManager.m; path = ios/RN/TextDetectorManager.m; sourceTree = ""; }; + FE142790F5B802FBC61B0A8D5A91C88F /* RCTTurboModule.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTTurboModule.h; sourceTree = ""; }; + FE1E812071397E31AE21DFF368B781B1 /* TOCropViewControllerBundle.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; name = TOCropViewControllerBundle.bundle; path = "TOCropViewController-TOCropViewControllerBundle.bundle"; sourceTree = BUILT_PRODUCTS_DIR; }; + FE2C1D922EA4986D53A6E6A69E1D0230 /* RCTKeyboardObserver.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RCTKeyboardObserver.h; sourceTree = ""; }; + FE45EC81DEC9B73C939CEF62253F7052 /* react-native-camera.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "react-native-camera.release.xcconfig"; sourceTree = ""; }; + FE7B9294FF05AAFD1653E2104E10844A /* libReact-RCTAnimation.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libReact-RCTAnimation.a"; path = "libReact-RCTAnimation.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + FEADEB124C9BC1E8A768E05FA68CB1BB /* FBReactNativeSpec.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FBReactNativeSpec.h; path = FBReactNativeSpec/FBReactNativeSpec.h; sourceTree = ""; }; + FF595B3F7A59900769E6A40AB26F2F61 /* RNSVGTextPath.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = RNSVGTextPath.m; sourceTree = ""; }; + FF8FE1D9B7F60A71648548469617A952 /* work_queue.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = work_queue.cpp; sourceTree = ""; }; + FFA7005524C474B5F2EF446831081F8E /* REAStyleNode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = REAStyleNode.h; sourceTree = ""; }; + FFBCDE436499D87DB7B7D57BAF47AA36 /* RNSVGLength.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = RNSVGLength.h; sourceTree = ""; }; + FFD6B7E4AF63FB9B2A211EA7D221CB55 /* list_notifier.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = list_notifier.cpp; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 0CBF0A3E99E5350489A433EAE3E8B479 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 11BE9041EA06B25CB7D32599D5804366 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 13FBDA7625FF80C80B6FAF4AB4A7751E /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 1C8CF4EF68D7C5AB44ED578B92087A38 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 24C4C0F64A86A7BAB07C97658D65D29A /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 24D06E8E5836F83BD12946CA1F658C7C /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 26EE07FB19292694DBA9B8789F06E8D9 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 281D37FCDA15B6F99004EA4F22E15E86 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 37EF71477C3D82F430B875560CF8D657 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 41CD06BCF413DD68CA636C4A96C975A5 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 45F233C75A7F463B1BE676FA7E22466D /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 47CC87B2D66FBE47AA23093CB31854E6 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 506A948010DA8B2350700FF9C4D35B10 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 518B7A628E641C2395D3FF863EC09DB9 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 54AC48BD4A56373868D9AFFD77162B28 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 55EC07AF11CF30AAFA79376455DF939D /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 577FE3DCE776A27472B95B70E51AE122 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 6886D27842E5B43C9AD50E0CCA7E94C3 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 68E4DC721715B13364B7CFA56B002488 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 6E31AB7F7E3E030BC0F364161E5978D1 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 6F7F8001BB2E53F76CC1AA8B3A4E3AF8 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 71DD96E607D572EB9237B3549B702118 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 7B92559B1643757ACB684EFCE9D683BE /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 7D2B19BFB1242D4939FD69BA9BB8C423 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 83772BBB87FDF265E430E9721DA2E163 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 8ADFB787C8FCF0937771E2A1FA1524CD /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 8AED265CE34141E1EC10E53FEFACA98E /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 90F4D9B968255B767E68478C5B1611AD /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 911AD12339500C95BC8DC138161B25A1 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 92AD154A6CB079E24747D31DA87406DB /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + A140A75D69FBF7E17558CCD7215AFE74 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + ABE86F2D61BE5DCF08F469DE66EAD1B8 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + B3239FE939AB8DB6AF618EE17BFB9B24 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + B5A7F5C6848AEAFCA6CC662EE612FA93 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + B79F9AE8585677DD2C7C5582E5910CF6 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + B957C43085298A49DA950F909D0AC37C /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + B965A28347F079299B1D951BD4A1C2A5 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BB7E0B9C58E990515F1921EFCBDF69BF /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BDD9730A0185DBA14DACF288EC34EB4E /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + C2C847F181BAFA6795645D2F8A9165BC /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + C32EA11DC542EA4E23168778A9A697F1 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + C83D721D80E5CDAA010AF2AC9B295A6C /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + D746C6138CB3D5A0C777A4F8EAE842A2 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DACB44245714C02301FEEEDBCB7610E9 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + E058BA0EFAD74745794F3D9D67B12943 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + F232549D4D047976367281CCE99A76DA /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + F98949E31957E70D3A3B181CA6DBAB6A /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + FCD24A9C1705ADA6B93D919289BE8704 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + FF27611FE10805A383FD9A38DF3898AB /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 003E246C1157DE8FE24C891ACA331FEC /* BaseText */ = { + isa = PBXGroup; + children = ( + 0646A53BC77936B33302AD1671BB6513 /* RCTBaseTextShadowView.m */, + E7E628535CF98562C7E58A25978F8A7C /* RCTBaseTextViewManager.m */, + ); + name = BaseText; + path = BaseText; + sourceTree = ""; + }; + 00DC40D534B37DE9AC12714DA8EB0B39 /* Pod */ = { + isa = PBXGroup; + children = ( + E1E2B06E3F29A568A11421F0C28B039A /* LICENSE */, + 4E78ECAAE5E329C96AB5093B71A84ED6 /* README.md */, + A6BEB1329855B004C358181ABEEDF677 /* RNGestureHandler.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + 0498B7A6849F939EAFEDEC390E1CB8E5 /* Nodes */ = { + isa = PBXGroup; + children = ( + 995B125A444748E05DBB8A74EC81E1EA /* RCTAdditionAnimatedNode.h */, + C4C467CA8E678BA21EB6FD805EE09EDA /* RCTAnimatedNode.h */, + BA001A05F9762489F7D789E6E8F78413 /* RCTDiffClampAnimatedNode.h */, + 05ECEAFD44F99129EBE85B4EC141A17D /* RCTDivisionAnimatedNode.h */, + 29851C4FB70F2F2F4D12901BCFEDA157 /* RCTInterpolationAnimatedNode.h */, + 0CC1122D088B445F35F4319CA38848DB /* RCTModuloAnimatedNode.h */, + 706EC88AF966B49FD2374357062CBA52 /* RCTMultiplicationAnimatedNode.h */, + 877DA42BD814A2D3AAAC41A7206807E5 /* RCTPropsAnimatedNode.h */, + ACF7D2FB6FC7A23A50BC047E859BA12D /* RCTStyleAnimatedNode.h */, + C99D92D5F611B0C9C9A3387F953B9B76 /* RCTSubtractionAnimatedNode.h */, + 52FE3545A117AE00A617EE1956EF8D79 /* RCTTrackingAnimatedNode.h */, + C34003BF396EE00DEF28153439F9DCA7 /* RCTTransformAnimatedNode.h */, + 6785A6A2B5E500AE24B6000B8B18097E /* RCTValueAnimatedNode.h */, + ); + name = Nodes; + path = Libraries/NativeAnimation/Nodes; + sourceTree = ""; + }; + 050296FF3E759CA7707D3E38E386E531 /* Text */ = { + isa = PBXGroup; + children = ( + 6A21BB17A85343C4DB3885513C7C065D /* NSTextStorage+FontScaling.m */, + E5151C34C0EF604A046582A2D267563F /* RCTTextShadowView.m */, + DF120D37EAB799E56004DAA5F5BFD01A /* RCTTextView.m */, + 694852843B57B697F6ADBDB842AD291B /* RCTTextViewManager.m */, + ); + name = Text; + path = Text; + sourceTree = ""; + }; + 06CEDA53C03CF8ACA33735B08076276D /* CxxUtils */ = { + isa = PBXGroup; + children = ( + 4AF99E4638DBC408CE7391E06909B359 /* RCTFollyConvert.h */, + 9E51AAAE3544538FF835A83109B5A530 /* RCTFollyConvert.mm */, + ); + name = CxxUtils; + path = React/CxxUtils; + sourceTree = ""; + }; + 09011F369CB8C39F568BEC2CC5799FF8 /* Support Files */ = { + isa = PBXGroup; + children = ( + 0CBD1DA515C93C165CD022F84B24780B /* React-Core-dummy.m */, + 9A7BA1DE3AA96ECC0990C590C816D865 /* React-Core-prefix.pch */, + EF9D9E07D06963C0E92CF076BD8E29F8 /* React-Core.debug.xcconfig */, + 7EC8D51F9963269914CB67970F3AF6E8 /* React-Core.release.xcconfig */, + ); + name = "Support Files"; + path = "../../ios/Pods/Target Support Files/React-Core"; + sourceTree = ""; + }; + 098A2FC0DDF5B4829A68C47D972F1A32 /* Support Files */ = { + isa = PBXGroup; + children = ( + 38F9EF62938378C2ED2FBC2F6AD6B93F /* React-cxxreact-dummy.m */, + A0B6EAB6A77CEDFCC6D7BBA7B6962D99 /* React-cxxreact-prefix.pch */, + 886C71F3278B4A4205C69CA03F4E02E6 /* React-cxxreact.debug.xcconfig */, + 3834FFCD5E1C46D728E8AE020D7FBB33 /* React-cxxreact.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../../ios/Pods/Target Support Files/React-cxxreact"; + sourceTree = ""; + }; + 0A043B9BA94BEBF82443BF12AD12A968 /* React-RCTNetwork */ = { + isa = PBXGroup; + children = ( + CD05BF427FDC034F28F5ACA340676843 /* RCTDataRequestHandler.m */, + 622B78651F1679F7CAEDD1BE863DFB36 /* RCTFileRequestHandler.m */, + D3902C83014D38634769CBEC19AB362A /* RCTHTTPRequestHandler.mm */, + FC9DD2290480ACE14CA81490C1198E5B /* RCTNetInfo.m */, + B3595EDD670141B284301D11EFE3D12A /* RCTNetworking.mm */, + 52B6E83635FB7CD406A454B4D3CCA489 /* RCTNetworkTask.m */, + 43D59B274A2F060FC700F6677572F285 /* Pod */, + 9158938AF0C6F19A9251668495FC4597 /* Support Files */, + ); + name = "React-RCTNetwork"; + path = "../../node_modules/react-native/Libraries/Network"; + sourceTree = ""; + }; + 0C5315F35FD73157F117516C490773D7 /* Support Files */ = { + isa = PBXGroup; + children = ( + A2948DDEEB16A5E6C7F772FFF6453F30 /* React-RCTVibration-dummy.m */, + F2CCB9AAFC0C84CEC81CC56AFB4539C2 /* React-RCTVibration-prefix.pch */, + 91CC1649BCD97DE6A8BE4885F4447533 /* React-RCTVibration.debug.xcconfig */, + 5754F0D9EC0DA9B93A24818A1753B4D8 /* React-RCTVibration.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../../ios/Pods/Target Support Files/React-RCTVibration"; + sourceTree = ""; + }; + 0DBFC6D65AC860D185F3D68C7ABFD98D /* UIUtils */ = { + isa = PBXGroup; + children = ( + D463DBF17CCD4CAF6363BF4661F5EAC9 /* RCTUIUtils.h */, + 18BBA1197A2DF34B3FC8D26DF7755591 /* RCTUIUtils.m */, + ); + name = UIUtils; + path = React/UIUtils; + sourceTree = ""; + }; + 11990B8B4FEA5F8603CA336DB3CF246C /* Support Files */ = { + isa = PBXGroup; + children = ( + 3E0C7B2F78E1A89F6CFD04636E4C2AE7 /* RNReanimated-dummy.m */, + 6275A10B4B9A37EB85CC301FD94CB1D7 /* RNReanimated-prefix.pch */, + A981BBFE18030AF5F63732FE397631B8 /* RNReanimated.debug.xcconfig */, + 27BE41525AFC50F13874EB81CC9BC539 /* RNReanimated.release.xcconfig */, + ); + name = "Support Files"; + path = "../../ios/Pods/Target Support Files/RNReanimated"; + sourceTree = ""; + }; + 129029D9207F5A5B212B7DC08616F957 /* lottie-ios */ = { + isa = PBXGroup; + children = ( + 4F5C303E82C60CF22ECDA6FD5EEEA355 /* AnimatedButton.swift */, + 95B7D2202826F2EFAE763F9CEEF26522 /* AnimatedControl.swift */, + C366F024B39FEB968AFF0D8E73C5697F /* AnimatedSwitch.swift */, + C6F002F460B48A5092183E1E5FDDFF7C /* Animation.swift */, + C925D5E46149A2782FD8DF5999415942 /* AnimationCacheProvider.swift */, + B060FBD6C532D94DE4E17EDCE4243E2F /* AnimationContainer.swift */, + A15AB20DE037AE34FA6B9CB5F40B8371 /* AnimationContext.swift */, + BA76875601EAE59FC95F1335014987AD /* AnimationFontProvider.swift */, + 289A4D3DC5A9F557EF333F0D036751F9 /* AnimationImageProvider.swift */, + D230983AD8AD92D207ACEB8BDDB2AAB0 /* AnimationKeypath.swift */, + 42451D0E40397FA81C31C46B2A2325DD /* AnimationKeypathExtension.swift */, + 99394EB1887025095CB3D6B26980FA4A /* AnimationPublic.swift */, + 2EC78ED35A174789D2A2AAEA7832639F /* AnimationSubview.swift */, + 3AD46B056965C7C49FC0B1D595F92412 /* AnimationTextProvider.swift */, + B146D24F68263F638F04912E835C010F /* AnimationTime.swift */, + 50A02522AD4650CF22415245E6CB64BC /* AnimationView.swift */, + 91AE13523BE0397BE894B98BE34384D1 /* AnimationViewInitializers.swift */, + 0F976C00DB4A61998FEC68DCA6BA0862 /* AnimatorNode.swift */, + 3BEDDA76EDF1AB0A45DADE8CE76DAFE9 /* AnimatorNodeDebugging.swift */, + CB9C24B52A066907D224A7C8649FEBCB /* AnyNodeProperty.swift */, + 4D69B51101A0AA616493B82136BC579A /* AnyValueContainer.swift */, + 3E26237F761688764719FDC0A51A7494 /* AnyValueProvider.swift */, + 994B7B94B1055B5A71371DD206CBEB1A /* Asset.swift */, + C0901ACE7F44E77470508415DDF0D74C /* AssetLibrary.swift */, + 2F927708D0D84A3F7203B56F7133CEB6 /* BezierPath.swift */, + 191CE273337761B364D9B413733FEB53 /* BundleImageProvider.swift */, + 2277E8C255B27AB1F9325D6A9A137C37 /* CGFloatExtensions.swift */, + 130BF0A98B7B733D7AAEFB2AD6C0CC18 /* Color.swift */, + CF005F54D67115E850253A662978CB37 /* ColorExtension.swift */, + 49C4FF93669B6B8D7C637184CB73BB14 /* ColorValueProvider.swift */, + B06337B496ABB632710E01827FC4BA91 /* CompatibleAnimationKeypath.swift */, + 555AB1FC7B7F776D8228E11F8010160F /* CompatibleAnimationView.swift */, + 737F34B5D8C9828B843A5EBC93448DFE /* CompositionLayer.swift */, + 003C835D4E049A87A19B4AD48969AF48 /* CompositionLayersInitializer.swift */, + E06365B96C71BE4DAA287F6646782D03 /* CompoundBezierPath.swift */, + 576065606DE1DC3900FDCB04B966C6D1 /* CurveVertex.swift */, + A72AE39973A0D90C2ED69393A02F7681 /* DashPattern.swift */, + 41CB72A3122A1E30DCC7AFC407F1FCCC /* Ellipse.swift */, + 445961D2CC775D8E3C63BFA731D45E55 /* EllipseNode.swift */, + 7C31E658E3322437233A88D10B39E4AF /* FilepathImageProvider.swift */, + 7CBD5CF31D71C6C5D2938D29CE17AD98 /* FillI.swift */, + 531196045CF781E2E2A2A7F5A5A2D320 /* FillNode.swift */, + EB305179167B31870EDDB1ADA4613306 /* FillRenderer.swift */, + E402A7FDCA4C92CCC0CC1D823D56DDAF /* FloatValueProvider.swift */, + 030D0147B6B4FD55440FAB687EB942DC /* Font.swift */, + 461220437067A67B8216B42615A11787 /* Glyph.swift */, + B10B43CCAE8398D4C325DFAF264A775E /* GradientFill.swift */, + 9AF1E40BBA68EE62609D6272B3A55B4E /* GradientFillNode.swift */, + 5BCE72ED68916203D67C775A87DA6F01 /* GradientFillRenderer.swift */, + BE3A2DF18940CE2E47F7BA1621354EF3 /* GradientStroke.swift */, + BCF624EF1393AEE56C862E44CA14CF58 /* GradientStrokeNode.swift */, + D0ED803C93E7D8D2E8F8DC8DC3418FE9 /* GradientStrokeRenderer.swift */, + 0CB867173928E2D7F786DCDAB62240FA /* GradientValueProvider.swift */, + 1B024BA994E36CB8E97C290C6732124A /* Group.swift */, + 2D7DD9C087C1354E420517C5C065AC5B /* GroupInterpolator.swift */, + DB24637CF6CAB92C1AE08368F5461B77 /* GroupNode.swift */, + 6C70374053BCCA3F927792FE5DEC8D46 /* GroupOutputNode.swift */, + 565BC8F253CCCEFE489405A0FD4B39E5 /* ImageAsset.swift */, + 0F022DDDD97CFAECA9879483808F4C2E /* ImageCompositionLayer.swift */, + 4811840663C67793CACE5A5E9D5DEA8D /* ImageLayerModel.swift */, + F8D18992CA9A1C92DDC9B2CD69EE84AF /* Interpolatable.swift */, + 5110AC7D126D60858DE63A8417B8F43C /* InterpolatableExtensions.swift */, + 70EDA0C75E78208777AD89E763143135 /* InvertedMatteLayer.swift */, + 3C3EA67E7281FF5BF8A811984C2D4617 /* ItemsExtension.swift */, + 4B720061908D4BEB21C59F87BF34A4AE /* KeyedDecodingContainerExtensions.swift */, + 1CD58FB27E57B354F2E6FE2FB0F8B520 /* Keyframe.swift */, + 60B3749D7C95B858B87ECDCFAE0DAEAC /* KeyframeExtensions.swift */, + A4629356C1A90BB1312375141FC8352F /* KeyframeGroup.swift */, + ACEB3B0027EC72FB888945AEC5A113D1 /* KeyframeInterpolator.swift */, + 4361419C2126EF9723E2638FDDA9DC93 /* KeypathSearchable.swift */, + 6667B74E44F9980007ED62CDE1A92BDC /* LayerDebugging.swift */, + 6B098EFD21C7FE4F7311D09F2C306100 /* LayerFontProvider.swift */, + 8748DE6AE7A8A2E45CAD0B7C625A45AE /* LayerImageProvider.swift */, + 5CBBA114F700AFAF654BDBAC00FBC4EC /* LayerModel.swift */, + 8CE05476EFEEF9140157E292C4F511AE /* LayerTextProvider.swift */, + 1979A7AF24A335D29BB1A97E320FD558 /* LayerTransformNode.swift */, + 0D9D2DFD8FC0B804FEA775619D6BF5B4 /* LottieView.swift */, + F5D9D2F1B88A2C27BEC49EAA321A63F8 /* LRUAnimationCache.swift */, + 39E225F7B9A529F6FFF14EAC0735D6CB /* Marker.swift */, + 282D0896D849B2F9498447D92C904290 /* Mask.swift */, + 44F60D75E0FF996D55B0F22CE77F9EE3 /* MaskContainerLayer.swift */, + 853E27B956A47C34F3E026DF8AE4EA2E /* MathKit.swift */, + F1C4465EF58A70C056C79D061B928C1D /* Merge.swift */, + AE4D959CA6036B01B7CF41E3D01D5B40 /* NodeProperty.swift */, + D7AA1A4150EF79DC7760046233D8CCF0 /* NodePropertyMap.swift */, + 76E81A2910CF3CC4663AB4279E036EF8 /* NullCompositionLayer.swift */, + F6BD9A50BFE97C83246C467C43671190 /* PassThroughOutputNode.swift */, + B50A99A9AF93D435B54B70885EA6F1F2 /* PathElement.swift */, + 1C57D8EAA19AAA2C5663514FFBFFBC06 /* PathNode.swift */, + 368D18758B9DC959CED56F1E689C0C2C /* PathOutputNode.swift */, + 4CA19C65346D091804005BAAEB361189 /* PointValueProvider.swift */, + B9B9A2C0F7A74B8F14BDB372325533AF /* PolygonNode.swift */, + 1EDD29336582EBF2ED622E6FDFA1C2EB /* PrecompAsset.swift */, + 49AE4A66A6F731C49E1ECBCF3612A110 /* PreCompLayerModel.swift */, + 2900C9D9CF639535D6BD667CC655E645 /* PreCompositionLayer.swift */, + FCC6DC33B3F76845587C8DB0138DD506 /* Rectangle.swift */, + 07686654082AD93DC196A14398E3FAD9 /* RectNode.swift */, + 74119D6B6491F2CB24E52E8CAEFE08FD /* RenderNode.swift */, + 78E0D082135EE39C1A6DA81DE350993F /* Repeater.swift */, + 50584A9738977F02BAA19FAF1852C173 /* Shape.swift */, + AB0F1CC4FE931457506D95A8F9C8F49F /* ShapeCompositionLayer.swift */, + DB79E1EB09A8A6EA2354F2B9366B0214 /* ShapeContainerLayer.swift */, + 73E4D5D8AB85BB543BA80AF91A4A54E4 /* ShapeItem.swift */, + 6FA06CC28AC81A724A160608A1C0D75E /* ShapeLayerModel.swift */, + AF900E676BF75A64B70B8D144D61EBBA /* ShapeNode.swift */, + C4CE10757D5EAF8FA97E72D1BB8C99BC /* ShapeRenderLayer.swift */, + DB61A7DE86EDE8B35473F789ED0F68E7 /* ShapeTransform.swift */, + 1060F6A20DF4B424EB8E5770766DC082 /* SingleValueProvider.swift */, + FD19A42F9A5D4784F8B8D081039BDEB6 /* SizeValueProvider.swift */, + BBD7C77412D709EE9D77315494356EBD /* SolidCompositionLayer.swift */, + E46540416CEABE23F3B0D00F260CCD1D /* SolidLayerModel.swift */, + 1298C0BAB50611BC7B50E60676836F18 /* Star.swift */, + C326C31BF8C0980CD236AB69A74B20DB /* StarNode.swift */, + E65926243EA5F4EACDE42FA59B887387 /* StringExtensions.swift */, + 0D3C62D9661AAAF59F8100CE5472772C /* Stroke.swift */, + 3AC8AD0CD20D22C28F53749FF6B0C0EE /* StrokeNode.swift */, + 346D484E51A4C1F1C5C17CA14DCD3495 /* StrokeRenderer.swift */, + EB0CFBE40A9BD82CB3D0637C34A04A90 /* TextAnimator.swift */, + 228DEB92F27E434CD4C6E4DA4F65E168 /* TextAnimatorNode.swift */, + 18F5586FF15AC4AB9D2FD577176DD9CB /* TextCompositionLayer.swift */, + 3C7A4DCC9E0A7156EF0A7FB4CFE5165D /* TextDocument.swift */, + 7C2B7D861D2C6E5D2EF8964D41042A2A /* TextLayer.swift */, + 6A00FFA25833DF2C75FBD399F10B1BCC /* TextLayerModel.swift */, + 4948B166AF162F3A8A4B3AD68DF83313 /* Transform.swift */, + 257A814B5D064ED222003A40F55C03E8 /* Trim.swift */, + 317D35698B19046915861DFAC6B3A3B9 /* TrimPathNode.swift */, + 5FF0045600311F98130B1447FD07520F /* UIColorExtension.swift */, + 3891BB50F9467E2A3AEAB98A066D6B72 /* ValueContainer.swift */, + 2CDEF04641AEE2AB98FC728313CBE563 /* Vectors.swift */, + 02C45EC3B04F5ABFB76837834161ED55 /* VectorsExtensions.swift */, + FAB94AB994DDF994B95A68C2226129F2 /* Support Files */, + ); + name = "lottie-ios"; + path = "lottie-ios"; + sourceTree = ""; + }; + 130DE05B853A54D4420C90CB4D02973C /* Support Files */ = { + isa = PBXGroup; + children = ( + 669DD6944BE4CFC59BD466338F2003AE /* GCDWebServer-dummy.m */, + 2901F7B9883BBD38099E8C63311CFBB0 /* GCDWebServer-prefix.pch */, + 11F9A14F55C29BBF70BD82D763354523 /* GCDWebServer.debug.xcconfig */, + C15259AB0B3AB6AEA22B3C6443C2C7B4 /* GCDWebServer.release.xcconfig */, + ); + name = "Support Files"; + path = "../Target Support Files/GCDWebServer"; + sourceTree = ""; + }; + 1416AFD79E84FC14E68C30F52A3ADB33 /* Pod */ = { + isa = PBXGroup; + children = ( + 109B2728F439BD0AB26EF7CD0163FF50 /* React-jsi.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + 162BF281BEFFF8FD20A21A0D91A4FDBD /* Views */ = { + isa = PBXGroup; + children = ( + 2E7BFEE37278B96F4A22B5DE2FAF56A4 /* RCTActivityIndicatorView.h */, + A12A01F10689781DD412678C569EFD77 /* RCTActivityIndicatorView.m */, + B58AE90701FC7D5E509DF74DFE2737AF /* RCTActivityIndicatorViewManager.h */, + 99E279928C71E2B5089DF84B31383376 /* RCTActivityIndicatorViewManager.m */, + F2111F185F583904E97FE6A6493045F0 /* RCTAnimationType.h */, + C914E3FE99FC1BCD3A037F00097CBD23 /* RCTAutoInsetsProtocol.h */, + D1FB35D55EBEC5E33C85E1601985A3A0 /* RCTBorderDrawing.h */, + 7F98C822E339030647685C5C8E6F4D2D /* RCTBorderDrawing.m */, + 3429FB0665DA4067B4E7790ECA20BB32 /* RCTBorderStyle.h */, + 897CB74B9C1B99AE2E4E4D1A417E8FD7 /* RCTComponent.h */, + 5D819E0C13CBF2573B035CAD010B0192 /* RCTComponentData.h */, + 30222109552138FDC514022977EC98CB /* RCTComponentData.m */, + 5A5314584E423191E13DA4F9A66837E4 /* RCTConvert+CoreLocation.h */, + DE3D678B84AEEB1F6746D084D04E7D53 /* RCTConvert+CoreLocation.m */, + 73E4071EE596A46AF46AA27785E00BD6 /* RCTConvert+Transform.h */, + 97D297C84892429B6C4D3113C6984DC5 /* RCTConvert+Transform.m */, + 73D30F0F36855F1FA2C14326FA54DE73 /* RCTDatePicker.h */, + 3EB024956EF1F191D5A99B6A880522BE /* RCTDatePicker.m */, + D3D054E6760CF9F7D18FAF5CF21169DD /* RCTDatePickerManager.h */, + A50BB9DFDEDEA71E58BAFA31AB3C22A9 /* RCTDatePickerManager.m */, + 498863C98F2FFA153EF5F1279710387E /* RCTFont.h */, + 77594105A1B54F3D88111DA3EF451536 /* RCTFont.mm */, + DECEFD6FC72D238EF6FBB76AA960FB4D /* RCTLayout.h */, + 30B6E820EC8BED1DF641ACC97A6C59C6 /* RCTLayout.m */, + 3E5B2DC3B7558590A5D0D0C6597860DF /* RCTMaskedView.h */, + 543C167EFACE8505A8CD9A122315CC5B /* RCTMaskedView.m */, + CA07BA12BCBA2B37E40F1E0F10EF4E0C /* RCTMaskedViewManager.h */, + 95036A8702C081B9C72A82D2588AF46E /* RCTMaskedViewManager.m */, + 196AE926396AC283315B2AF7BAF4AF7F /* RCTModalHostView.h */, + ABC977C2A37942FA5C8D6D9B2FC9DE52 /* RCTModalHostView.m */, + 8D1E8678839AAB5F3779A2A5707A8D91 /* RCTModalHostViewController.h */, + 52A768D937338F16358EB8B715C8D254 /* RCTModalHostViewController.m */, + 1FDE134233B037B8C9DCE74F8F183AF8 /* RCTModalHostViewManager.h */, + F69FCAFB04BBC7FC6818A80CFB36E1BA /* RCTModalHostViewManager.m */, + 3AB1FEE2C518E9C25D7BE7715A277A01 /* RCTModalManager.h */, + 58F6B711E855264BB59EF3F661FFCE4A /* RCTModalManager.m */, + 92877EB86F0808A6C7DDE0F42A9BECBF /* RCTPicker.h */, + 9E149FAE88DEF8943271ABB136290EE1 /* RCTPicker.m */, + 6C316A01F933FEC5C5A0E8E3EFBDC5B9 /* RCTPickerManager.h */, + DACE422030B9C191C3A28B79BA223E42 /* RCTPickerManager.m */, + A06363BC33142298494941E6AF9F21E6 /* RCTPointerEvents.h */, + 4F4A53FF74590788EE004AA12EFAB13B /* RCTProgressViewManager.h */, + DD52AF38C97B8C4CE7CB242233231931 /* RCTProgressViewManager.m */, + 2B81AC73FF0A49613037CBCC72DDF030 /* RCTRefreshControl.h */, + 46A1C02C927AF589BB7440EEC10F1A13 /* RCTRefreshControl.m */, + 9B18C6D9AD699C96D548EEB1EF5B04FE /* RCTRefreshControlManager.h */, + FCC58E2C789E628C139369B53C12A061 /* RCTRefreshControlManager.m */, + 2D5E9ECC168364E3D58E6BB18705FD72 /* RCTRootShadowView.h */, + CC8570DEFF6EC626FD32B962BB296FC6 /* RCTRootShadowView.m */, + AFDF9BE84F508E9BD1BCF12852D8D68A /* RCTSegmentedControl.h */, + 9E6B9D878A42EF0A4202909EC90F5E82 /* RCTSegmentedControl.m */, + 263DBA186B69EE3D828C86B276E83B44 /* RCTSegmentedControlManager.h */, + E88DA0EDF291FBB71A78CBFBD976A127 /* RCTSegmentedControlManager.m */, + 1F86DBC845FF508ED1118C7A90DA9731 /* RCTShadowView.h */, + 4B45AA363D060710B4E59DEA210DECAB /* RCTShadowView.m */, + 4BE4060AC80BBD206777C8389FACCD1C /* RCTShadowView+Internal.h */, + D22EEA5BB9053A81FA6CC9F014E5DAF5 /* RCTShadowView+Internal.m */, + C4A2AD0F6BC89DF4683581520F2DF596 /* RCTShadowView+Layout.h */, + 97E492FC2B7A1F5A09AFE9B80E97425E /* RCTShadowView+Layout.m */, + 964BD6A82CD274D71E6980332AD93CA3 /* RCTSlider.h */, + 9DFEDFE014DE1934C27D003F5924802F /* RCTSlider.m */, + BDF01303944F30CF7FC31EB4D29A7C7D /* RCTSliderManager.h */, + 2B5FBD150C44634A41456D7D1CA55A99 /* RCTSliderManager.m */, + 869E8FECAFEC27CA773B2B732848580A /* RCTSwitch.h */, + 7DA56D6F1E668767B01C6247B344D205 /* RCTSwitch.m */, + 7C67612F061963421FA070CAD4577F62 /* RCTSwitchManager.h */, + E3C40AA0D1942BEF1AE8E0FD924CF9ED /* RCTSwitchManager.m */, + 7B3DC817FD7E7651426D4C48D3916CC7 /* RCTTextDecorationLineType.h */, + F0A76B5BFAFE837DB66290129F312993 /* RCTView.h */, + 137015BB9FF6F82875A08649421F94AB /* RCTView.m */, + 636261F1FF693694CCCCED8CDD8CF01B /* RCTViewManager.h */, + E797E163C5043B8A7E500D63BDEE531C /* RCTViewManager.m */, + 23CD574DDBADF425CB45A61E18EE00C9 /* RCTWrapperViewController.h */, + D65ACFDB5970C0A3BAE8B9ACF3CAFB5A /* RCTWrapperViewController.m */, + 31F1128BC681CCEDAED574C4A3BB989F /* UIView+Private.h */, + D54687450E9AD391632C0A71A00C7566 /* UIView+React.h */, + F26B30C94D7FB7F86B39B826FF754F70 /* UIView+React.m */, + EAB1EBDBC508E574C7C59B91747963CB /* SafeAreaView */, + 18C6A77B636876CD5BFFC9E8B62C3368 /* ScrollView */, + ); + name = Views; + path = React/Views; + sourceTree = ""; + }; + 16BEE8677393144975638DD800756F81 /* Support Files */ = { + isa = PBXGroup; + children = ( + 58E710A75275A5D70E83BFD75A58E611 /* RNDateTimePicker-dummy.m */, + 54FD6101FCA315D4162DC0DB2C504028 /* RNDateTimePicker-prefix.pch */, + 7DC1F9D522F7EC7281031D838802F5D4 /* RNDateTimePicker.debug.xcconfig */, + 8E8AA25FF7D087CC342D47F774985E90 /* RNDateTimePicker.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../ios/Pods/Target Support Files/RNDateTimePicker"; + sourceTree = ""; + }; + 16E3FA548AB9083279BCAB4467F5F217 /* RealmReact */ = { + isa = PBXGroup; + children = ( + F196955D0FA6F2C9AEDA7A2661A61EF9 /* RealmAnalytics.mm */, + B33746402C9140645285F388C25FE893 /* RealmReact.mm */, + ); + name = RealmReact; + path = RealmReact; + sourceTree = ""; + }; + 17869F202CD26D6A3B25E4707C50EDC9 /* Singleline */ = { + isa = PBXGroup; + children = ( + 4F1B3069E475A1E12C80ABEB4DD2878B /* RCTSinglelineTextInputView.m */, + AC33286B1F40D9F9BB974349EB356128 /* RCTSinglelineTextInputViewManager.m */, + A285E234AE588B3FFAB4E51F75427459 /* RCTUITextField.m */, + ); + name = Singleline; + path = Singleline; + sourceTree = ""; + }; + 1836088CDD994FCDF4743BF2C0AFBE24 /* Surface */ = { + isa = PBXGroup; + children = ( + 650A6C7022A7065CCB196F45C35EC45A /* RCTSurface.h */, + 0E92D0841562A3204508FC42C13059F5 /* RCTSurface.mm */, + 974C02C2BAAD32BCF8698299FE6CB2D0 /* RCTSurfaceDelegate.h */, + D26938C4DD0927567F793D4D10D7E769 /* RCTSurfaceRootShadowView.h */, + F51F6674E326D1E9CD1E31C711594411 /* RCTSurfaceRootShadowView.m */, + 007E258C6DF7E87E03F7AAA368A11891 /* RCTSurfaceRootShadowViewDelegate.h */, + F01DE092D544AE4823AE9A27D1110E37 /* RCTSurfaceRootView.h */, + F70EA8E0ECA8692F80688DD7B05F7D12 /* RCTSurfaceRootView.mm */, + B521CA9B809E551DFC56EFB3F058429C /* RCTSurfaceStage.h */, + ECC6BA4132707B740F28A2F224EFEEF3 /* RCTSurfaceStage.m */, + C5E46D631D41D5741A251DCD6C36BCE3 /* RCTSurfaceView.h */, + 4374093515097AA8D4E5FFB5181AF983 /* RCTSurfaceView.mm */, + 2505D486AF528B184D2F96012E481D4F /* RCTSurfaceView+Internal.h */, + 496744C028C65812A706B9303555E365 /* SurfaceHostingView */, + ); + name = Surface; + path = Surface; + sourceTree = ""; + }; + 18C6A77B636876CD5BFFC9E8B62C3368 /* ScrollView */ = { + isa = PBXGroup; + children = ( + E6A627ADE5644D1A2B4D6F6E12B7870D /* RCTScrollableProtocol.h */, + 6C6E81BD4CE7D3132D22580E2DA68DFE /* RCTScrollContentShadowView.h */, + C444DE167167A8A4F16CD3B9AA38411B /* RCTScrollContentShadowView.m */, + 50C720EC05325DF48AE2E4A39BA11549 /* RCTScrollContentView.h */, + 7D07976F0689C515E1F7FDFA27EE78C6 /* RCTScrollContentView.m */, + 024520CC7CC553E3E3AA3C9C701F27B7 /* RCTScrollContentViewManager.h */, + F809F1B28CDC7EFE2A9E80F722FEBF27 /* RCTScrollContentViewManager.m */, + DC435887F2A0A576ECF94C49BFA8486A /* RCTScrollView.h */, + 85A1FDB566DE781601EF718B73F7B26C /* RCTScrollView.m */, + F4729515DBC4439BE5AD5831429F2076 /* RCTScrollViewManager.h */, + 11FD90EC41023E7F40A730B84FB23DDF /* RCTScrollViewManager.m */, + ); + name = ScrollView; + path = ScrollView; + sourceTree = ""; + }; + 1952339D59809886956713ED8C44662F /* Support Files */ = { + isa = PBXGroup; + children = ( + E6BE70A7E5DE10BD60061C7C8173D01A /* React-jsi-dummy.m */, + C01E9E4CC755CF5D62B29959835ED5EF /* React-jsi-prefix.pch */, + BE23141D796B57FA066441EEE47B301A /* React-jsi.debug.xcconfig */, + 340851F01A23D1959B610F57490EF4A6 /* React-jsi.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../../ios/Pods/Target Support Files/React-jsi"; + sourceTree = ""; + }; + 19DA6BD1CE4C35237ABCBA7F0C4FDB1C /* Support Files */ = { + isa = PBXGroup; + children = ( + A58E9F5A0FA3434A5BE6F1F27540344E /* RNGestureHandler-dummy.m */, + 3BA4F177DC22A3DCA17E06075EDBC3FA /* RNGestureHandler-prefix.pch */, + AC2606995BC22B4A0253D33EFB45917D /* RNGestureHandler.debug.xcconfig */, + EEE1FFB241BDB298B04B82917991DE31 /* RNGestureHandler.release.xcconfig */, + ); + name = "Support Files"; + path = "../../ios/Pods/Target Support Files/RNGestureHandler"; + sourceTree = ""; + }; + 19F1F053B3CDE8110498EDE3520C4132 /* Pod */ = { + isa = PBXGroup; + children = ( + ED60701CCF623C43171453978A7AE8F5 /* React-jsiexecutor.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + 1B0ACF2F2F00D0626EADE7B90AF58812 /* Profiler */ = { + isa = PBXGroup; + children = ( + CC908ECF70335364348851936C187C38 /* RCTFPSGraph.h */, + 093F27844DF49E602404A1B537C132EA /* RCTFPSGraph.m */, + E0F7A7F11D70FC6AB9B96B22175201B1 /* RCTMacros.h */, + 3A64CC61B2E347F7306EB34FA487E4B0 /* RCTPerfMonitor.m */, + DDC0A34F82C1C937D80AE4A6262D9A58 /* RCTProfile.h */, + 133FEE3A6D3EF0BA7E1D406B4C0F3662 /* RCTProfile.m */, + 11EC3A8C350EEA3C24A10099139F29A9 /* RCTProfileTrampoline-arm.S */, + CE0BB4D68AB741CC9499F46DEE2EA3C6 /* RCTProfileTrampoline-arm64.S */, + 6E4E636EB61FF1DE8AE8658194AC98F9 /* RCTProfileTrampoline-i386.S */, + 2CEC58EC7C5EE44E62E57EF11B77EA0A /* RCTProfileTrampoline-x86_64.S */, + ); + name = Profiler; + path = React/Profiler; + sourceTree = ""; + }; + 1B864370488658202C41724D6B18287C /* react-native */ = { + isa = PBXGroup; + children = ( + 7C2C2A115130E1DCEE15E9FED7CE359C /* ios */, + ); + name = "react-native"; + path = "react-native"; + sourceTree = ""; + }; + 1B87F9913CBA43001917D7D69EA71845 /* Handlers */ = { + isa = PBXGroup; + children = ( + 6E803FA67F7D71B0B20BBECB78ACE795 /* RNFlingHandler.h */, + 8407DE67D728D6140E1422B9FEE49D4A /* RNFlingHandler.m */, + A4DBD3E83A1DE3FEA1885964A1DE4225 /* RNForceTouchHandler.h */, + E13DC4BEC01E20762C48AD4E2E9050B7 /* RNForceTouchHandler.m */, + 6DE0F3A352D635719C79228A666B5705 /* RNLongPressHandler.h */, + C00D10BC4E81D51D63BAF5FB241451A5 /* RNLongPressHandler.m */, + A8B9A6CDCC5197EFD9488FE27F25ED5D /* RNNativeViewHandler.h */, + 04B39E7C37DEEA604BED0EFA7CBF1BE9 /* RNNativeViewHandler.m */, + 30488D55995F66E7799CB272A4F9A1F8 /* RNPanHandler.h */, + 054AA171BBE1DE3A8486BA1C735E804B /* RNPanHandler.m */, + 5E6AAF803F2BC1B1A072F39B6656E2F8 /* RNPinchHandler.h */, + 34C5C27C106306F93F86190484AE3233 /* RNPinchHandler.m */, + 8D6D76B575EFDD8CE4AFE61D749F852E /* RNRotationHandler.h */, + 9612F5B53DCEE2752727983931D95F26 /* RNRotationHandler.m */, + 0C764D730467B0BBFDA93746FCEAA1EE /* RNTapHandler.h */, + 85495AA788D884D183197148FE416E93 /* RNTapHandler.m */, + ); + name = Handlers; + path = ios/Handlers; + sourceTree = ""; + }; + 1C77A6B3226B88789D2F9918B512DAC2 /* Pod */ = { + isa = PBXGroup; + children = ( + 2946D7A6327D81A9D62187131001791D /* React-RCTActionSheet.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + 1CD960611C6493C03E8BB6E43E5750BA /* Support Files */ = { + isa = PBXGroup; + children = ( + 71906625612FE7619B438B05817919C2 /* React-CoreModules-dummy.m */, + 3865CAA0FBB82FBD517F45570208C52F /* React-CoreModules-prefix.pch */, + D3CD642B9F233A5DB7B7690E3482C53F /* React-CoreModules.debug.xcconfig */, + 2D53DDBD25FDD65F21B4583FABA8365C /* React-CoreModules.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../../ios/Pods/Target Support Files/React-CoreModules"; + sourceTree = ""; + }; + 1D725C87DB51E2558F66A8FE7F7A638A /* Support Files */ = { + isa = PBXGroup; + children = ( + ED6C774D5D0B0B3197E75B36D00D0C13 /* RNVectorIcons-dummy.m */, + 4CFCA010C0EFE4F3E4F3A2FA03BE7473 /* RNVectorIcons-prefix.pch */, + 60604CA21F4AB12AF49A25D2AF741277 /* RNVectorIcons.debug.xcconfig */, + FD7FC2ADD8CE2AC7EE1CCC4A62351079 /* RNVectorIcons.release.xcconfig */, + ); + name = "Support Files"; + path = "../../ios/Pods/Target Support Files/RNVectorIcons"; + sourceTree = ""; + }; + 21A69FF82B039A6D53EA39DF3B74C26E /* React-RCTLinking */ = { + isa = PBXGroup; + children = ( + 048DD0B37371C943B49DBD169699697B /* RCTLinkingManager.m */, + D9D0A24A387544578E63E7381950C1D4 /* Pod */, + E10D20FB235ABF77D638577C7D04FD9E /* Support Files */, + ); + name = "React-RCTLinking"; + path = "../../node_modules/react-native/Libraries/LinkingIOS"; + sourceTree = ""; + }; + 21AD6A15ABE89FFE5FF384C516E59403 /* RCTWebSocket */ = { + isa = PBXGroup; + children = ( + B9F0F1A87228330476141364B59DDB0C /* RCTReconnectingWebSocket.h */, + 26DF5E1735D48DEDCC90B61850707A1B /* RCTReconnectingWebSocket.m */, + 01A868ADD27794E34BC8E94E1552922B /* RCTSRWebSocket.h */, + F690CCE9A100D449DB074095A72D1F80 /* RCTSRWebSocket.m */, + 46A3B742B06DA2E86009D062FE1DA66F /* RCTWebSocketExecutor.h */, + 5A03EB8151BCD91F3F1B6AE51FBD0016 /* RCTWebSocketExecutor.m */, + 48576BF0292342E3BC471147EF3D588D /* RCTWebSocketModule.h */, + 7C3D61A58A642D736FED867AC2529D15 /* RCTWebSocketModule.m */, + ); + name = RCTWebSocket; + sourceTree = ""; + }; + 225C52D1351335A6C9956860F12FBE7A /* RawText */ = { + isa = PBXGroup; + children = ( + E6F7D7BA7182C88340108185552D0BDC /* RCTRawTextShadowView.h */, + AADCE7C64BAA41477E6809F0FB1A7FEC /* RCTRawTextViewManager.h */, + ); + name = RawText; + path = Libraries/Text/RawText; + sourceTree = ""; + }; + 22C8F878778E90A58BA3C63BD740FBC2 /* Pod */ = { + isa = PBXGroup; + children = ( + 2B9AC241A058D255CBC7D861193BE06A /* LICENSE */, + A7D72956D176316E6C03FA76BCE20F24 /* README.md */, + 0581213AD8DEECE7D880EE8A03E27CE8 /* RNDeviceInfo.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + 2347676D14FD112B050A3EDC75F2805E /* Pod */ = { + isa = PBXGroup; + children = ( + A2990CF79726C3FB868AECB2E2E47A18 /* LICENSE */, + 8C2E7BE0AC0A52090A3BAD12BEC17F1E /* lottie-react-native.podspec */, + 7AF68DB4F7BCC4737E1F884CDF708396 /* README.md */, + ); + name = Pod; + sourceTree = ""; + }; + 2647479ED5842327D730B63350670069 /* RCTBlobHeaders */ = { + isa = PBXGroup; + children = ( + 45CDDDB6E374C0015BCF57C54C0DDE50 /* RCTBlobManager.h */, + 4F3644EA325AAD4763E3CD93F1EB04C8 /* RCTFileReaderModule.h */, + ); + name = RCTBlobHeaders; + sourceTree = ""; + }; + 26AC98E6EC4A8A5B22D76918263BBB16 /* DevSupport */ = { + isa = PBXGroup; + children = ( + 390C8F4832BE7B5C2011214786C0B8F4 /* DevSupport */, + D523115DA6F0D34FAC60A53CB91896B7 /* Inspector */, + ); + name = DevSupport; + sourceTree = ""; + }; + 28C0FCB770D9CBEC8630ED82AE569A25 /* react-native-maps */ = { + isa = PBXGroup; + children = ( + 773EF626A21E5504D15163293B9DDC47 /* AIRMap.h */, + 8866E759974A689649D4CBF88D1E6B7E /* AIRMap.m */, + 760E9570B05F13E03833806189DF0606 /* AIRMapCallout.h */, + 68706D4A0C78AACC5676D109B6335143 /* AIRMapCallout.m */, + 05DE1B8F8DBC75DFECDEDACC0B473ED7 /* AIRMapCalloutManager.h */, + 1AA4B42D3218DD2AB4B8B348CDA0201E /* AIRMapCalloutManager.m */, + 207465AF27395BF979A6D2FB41CC0108 /* AIRMapCalloutSubview.h */, + D8A0643C1D7D0A2882175ECC5A923420 /* AIRMapCalloutSubview.m */, + 1A4A5AEF5BB1F4C39992D646023E3605 /* AIRMapCalloutSubviewManager.h */, + E4CE6AA3C2C39676208A6D89851D1287 /* AIRMapCalloutSubviewManager.m */, + B44E9C0A757660B07223BE410F1BF236 /* AIRMapCircle.h */, + 7DECE66EC6AC34CEA9025115711FC6A6 /* AIRMapCircle.m */, + A099C1320B69A490BE570F137F434068 /* AIRMapCircleManager.h */, + DE3E28A67F6DDB66103DD5B588F2C718 /* AIRMapCircleManager.m */, + A73745461D3BAA830ABCB7DB9525640B /* AIRMapCoordinate.h */, + 2F2476FAAC84DB3D08F0E9630EADF7A9 /* AIRMapCoordinate.m */, + 2077C4AE475DC7C5DFF8B7A6A7B99779 /* AIRMapLocalTile.h */, + 045A27D42D1435E5379B46EE9ADB5F39 /* AIRMapLocalTile.m */, + BC5557357861AE2D27C9629B6D9075B4 /* AIRMapLocalTileManager.h */, + 9880E5758B9445A53544E3CD08AE1734 /* AIRMapLocalTileManager.m */, + 50197EC73434CEB07B13F385AFF16CE6 /* AIRMapLocalTileOverlay.h */, + D4208F3E0AFF17F28B7336799FB8D1FB /* AIRMapLocalTileOverlay.m */, + 3435CE09B932A5BE1AF65D4FE5C7BA41 /* AIRMapManager.h */, + CE39A10169FF145AA5508694ED3142F9 /* AIRMapManager.m */, + 6EAF25ECC4C97ADBA41C50ACB59EFFBB /* AIRMapMarker.h */, + 7E338539E34FDAA1383ADE04F84483A1 /* AIRMapMarker.m */, + EA39116D102B95DFC21A0987228A959E /* AIRMapMarkerManager.h */, + 2C9A9D55786D4D84A5A32A6DD5625F0A /* AIRMapMarkerManager.m */, + 2B4BAB4C0ED94566063E5F0A9D85177C /* AIRMapOverlay.h */, + 6FFD597AC5DF43F892AB801248AB8A10 /* AIRMapOverlay.m */, + C414B7065A0A1197F839BC770797F3BA /* AIRMapOverlayManager.h */, + B29BF938C398FC74D14750062B29260A /* AIRMapOverlayManager.m */, + 2C411F556D0C25B4BD29B7BF3C80115A /* AIRMapOverlayRenderer.h */, + FD5598ECB28F32444536F0916852780B /* AIRMapOverlayRenderer.m */, + 110B6724BE58C54B05F2DD2D4FEB3772 /* AIRMapPolygon.h */, + 395CF7F9BDF4FE9301B49D3875D13431 /* AIRMapPolygon.m */, + 00DFAF11C9E8896FE31472633918C212 /* AIRMapPolygonManager.h */, + 63C843896CD833363548E2E4FFBC3097 /* AIRMapPolygonManager.m */, + 8868E776977643520BB819BC930DF08C /* AIRMapPolyline.h */, + 40E22DF7761512419447109573DCDC7C /* AIRMapPolyline.m */, + 1C6101D9D095C3F33D6DE886B0AB0CF0 /* AIRMapPolylineManager.h */, + 7194ED6F7AE881D0ED9A320FDA2E14BB /* AIRMapPolylineManager.m */, + F002AFF0C76F49BC958060877EA88922 /* AIRMapPolylineRenderer.h */, + A0EB61D3BDFE0B6A38BB088E5D2F7822 /* AIRMapPolylineRenderer.m */, + 7B7667BB16BCE4E97C4737014B2EB4BA /* AIRMapSnapshot.h */, + B08637A4BEC12EA789EBD4533C681D3A /* AIRMapUrlTile.h */, + FDE658A03788A8117ABC97917B668880 /* AIRMapUrlTile.m */, + E238817A8E4472E8343824B4ECAB3880 /* AIRMapUrlTileManager.h */, + 71BCA6F1E866D61A8F2CD0C05995D486 /* AIRMapUrlTileManager.m */, + 48A06E53D3A275C589D959860DD484D8 /* AIRMapWMSTile.h */, + 4D55A6519C43271CF42C22ED8817DF7D /* AIRMapWMSTile.m */, + D9C9A1E675611A46F72EA17CA5F63B6D /* AIRMapWMSTileManager.h */, + 7E760D75233E5E1A98897E2E22DC6332 /* AIRMapWMSTileManager.m */, + A905AC13DE6E2E381E5FE345BC6E6389 /* AIRWeakMapReference.h */, + E91BF9E2FD07B1B4FC64DB7A321410E3 /* AIRWeakMapReference.m */, + 5D82425EB76E407021CE359B8B67EE7E /* AIRWeakTimerReference.h */, + E05BD2824783B98D84FA428E4F4D30ED /* AIRWeakTimerReference.m */, + CB5A87EFA609083E17A2596AAA3CA0A5 /* RCTConvert+AirMap.h */, + 51E6D0871555861D7DD68F0866D5714B /* RCTConvert+AirMap.m */, + 675908783E3E34CE6519FA6B629FF7BE /* Callout */, + 7F4A5DE5C3E696CA1461DE9225DB973D /* Pod */, + 60C1349DE3456593502BEE96AA5B6F2A /* Support Files */, + ); + name = "react-native-maps"; + path = "../../node_modules/react-native-maps"; + sourceTree = ""; + }; + 28D27B77940C55B8DD6AAA51F76623C0 /* Support Files */ = { + isa = PBXGroup; + children = ( + 8884C1EC5D194E52433AB80608948C55 /* OneSignal.debug.xcconfig */, + 1339A199AD548E37E548B5FF13637C1C /* OneSignal.release.xcconfig */, + ); + name = "Support Files"; + path = "../Target Support Files/OneSignal"; + sourceTree = ""; + }; + 293C0BDA235A3DD2BCC58999DFA8E3C2 /* react-native-camera */ = { + isa = PBXGroup; + children = ( + 79D2249EF6FB1466318C0D2AAD76F779 /* Pod */, + 590062BA0459F8DF8646C700BF2C3A26 /* RCT */, + C5C8FE6B5C2C4C0726C2B6B86CEC0FDC /* RN */, + 3DE3F9CD6F22EFA8BAE6124EB5EC5575 /* Support Files */, + ); + name = "react-native-camera"; + path = "../../node_modules/react-native-camera"; + sourceTree = ""; + }; + 2B220D4EF25C13E47378FA4F083D4B3E /* Multiline */ = { + isa = PBXGroup; + children = ( + F635DD432755A9D251A29C83E3EA6A90 /* RCTMultilineTextInputView.m */, + 0A26F7CDD2C592A3CA7DB437273831C0 /* RCTMultilineTextInputViewManager.m */, + 2EF46290800CD755E81E433B9F3E16B0 /* RCTUITextView.m */, + ); + name = Multiline; + path = Multiline; + sourceTree = ""; + }; + 2C89119997F1C2F2A62DDFC8437C1793 /* Support Files */ = { + isa = PBXGroup; + children = ( + FC10FDA5887868E51549BB2085C1B015 /* React-jsiexecutor-dummy.m */, + EF5B7FFC27AA282C74C338F12B284A7D /* React-jsiexecutor-prefix.pch */, + 9EEE24787E5F8DF7549B7492FC1B9CE1 /* React-jsiexecutor.debug.xcconfig */, + FCB3DA22B16E2843926B4D3F81BBBF89 /* React-jsiexecutor.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../../ios/Pods/Target Support Files/React-jsiexecutor"; + sourceTree = ""; + }; + 2D54F94789E4D3F9AB0C0E71177E398E /* Core */ = { + isa = PBXGroup; + children = ( + EA35950E4513A7C2231B351F9CFE150C /* GCDWebServer.h */, + 3D6F1563C86BAAE01655FD6D734E8ADB /* GCDWebServer.m */, + 34A041CB6EE4408C5BB1981F4936F24C /* GCDWebServerConnection.h */, + 2FC43340DD4A3D00A91F54E2C06EE7A4 /* GCDWebServerConnection.m */, + 744173C084A9BE1B01D9462C2E80C922 /* GCDWebServerDataRequest.h */, + C843DA4336C67DBD78DF5E61E35AE17B /* GCDWebServerDataRequest.m */, + EF0BFBC5D46AA9AED1C9E76B128253C6 /* GCDWebServerDataResponse.h */, + A6626BCED414873F499928236F323D1F /* GCDWebServerDataResponse.m */, + BE927428A642478F54CBB791E0F20206 /* GCDWebServerErrorResponse.h */, + C190AAD1B0BA1D78B87033000B37C443 /* GCDWebServerErrorResponse.m */, + 9C22A9368D9FBE73EFCFC3C0DDA19584 /* GCDWebServerFileRequest.h */, + 9D4A7DD313A99C0CFD2C8041F7885F9A /* GCDWebServerFileRequest.m */, + A183A72F662CDA25DDB8EB55D14364D3 /* GCDWebServerFileResponse.h */, + 1411A92D6C277246D4A9C57C92F0F863 /* GCDWebServerFileResponse.m */, + 729F736E4E4227EADFC3FE07B8AB8FF8 /* GCDWebServerFunctions.h */, + C147E4B6DD38F300313E1E39EC1103FD /* GCDWebServerFunctions.m */, + BC1FF3106DCABE9CE413C693B9BA1520 /* GCDWebServerHTTPStatusCodes.h */, + A3EB9CAE0A57BF389E217CC64660B4C7 /* GCDWebServerMultiPartFormRequest.h */, + 34D47BA1B7683546233284FA9AB520F4 /* GCDWebServerMultiPartFormRequest.m */, + A3C2FAA1B916CF7926E4D3116E572A71 /* GCDWebServerPrivate.h */, + 94820FCDCD66A0C33AED86403CB962CD /* GCDWebServerRequest.h */, + F477981DA65E0F31D8F2063774021510 /* GCDWebServerRequest.m */, + 18631F71E7D25E247F600E96666AC039 /* GCDWebServerResponse.h */, + 5611342CA971ABAACBC3D69EF55FA184 /* GCDWebServerResponse.m */, + D2E0D4DA04AD801A78829766862218F9 /* GCDWebServerStreamedResponse.h */, + C8AA93ADD3D0BAF343551D05C075CE6B /* GCDWebServerStreamedResponse.m */, + 5CC423E0053A3393EE41C1A157A63427 /* GCDWebServerURLEncodedFormRequest.h */, + 8BBF3CBB504CE8F81960ECCA650D2605 /* GCDWebServerURLEncodedFormRequest.m */, + ); + name = Core; + sourceTree = ""; + }; + 2F1171A515F823C8D1E3F5548C107227 /* lottie-react-native */ = { + isa = PBXGroup; + children = ( + A95A90A2786E03A4C33366DA73DC7814 /* AnimationViewManagerModule.swift */, + EBA1ABAEEAA339538F25C1FE3B1E3E02 /* Bridging.h */, + 11528A71D7A137E87FC72192E74E5A18 /* ContainerView.swift */, + 767FF03826379CAB7439B6815303B21C /* LRNAnimationViewManagerObjC.m */, + 2347676D14FD112B050A3EDC75F2805E /* Pod */, + 758D4346A50995E502FF34F775CF318D /* Support Files */, + ); + name = "lottie-react-native"; + path = "../../node_modules/lottie-react-native"; + sourceTree = ""; + }; + 2F70E4BFC00A88643D14631614BA95CB /* Support Files */ = { + isa = PBXGroup; + children = ( + 75F121866F310C3FA277BCCAAABD740E /* ResourceBundle-TOCropViewControllerBundle-TOCropViewController-Info.plist */, + 2C0575A7DD26AE71EC9EC7E6A9A0B8E6 /* TOCropViewController-dummy.m */, + B7B0643200CC67EA9C5A1327C5A87B62 /* TOCropViewController-prefix.pch */, + 179ADF743A3CE0859D5C1CBE32D6624E /* TOCropViewController.debug.xcconfig */, + 992DE309283120988D04BD3653D5C0BB /* TOCropViewController.release.xcconfig */, + ); + name = "Support Files"; + path = "../Target Support Files/TOCropViewController"; + sourceTree = ""; + }; + 2FFAB17DEA191E05326D0991DA0D5088 /* Pod */ = { + isa = PBXGroup; + children = ( + C35904A080D10CAB8DD39714F0278653 /* React-cxxreact.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + 31F90C16814E9BBE9264650998C278B4 /* Pod */ = { + isa = PBXGroup; + children = ( + 313D7C6F0DCC0985B6EF7B5DC89A7DD2 /* React-jsinspector.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + 3293D4389DB22F16D433186072211F14 /* RealmJS */ = { + isa = PBXGroup; + children = ( + 62A84CD070CB181887E0722272F39D2F /* Frameworks */, + 3E843B3F9DC9DC9F4F9686DBC6DA8BFB /* Pod */, + 1B864370488658202C41724D6B18287C /* react-native */, + 9795FC9C2B6743CEDF90E4C6AF106F6B /* src */, + 9425C81D875DE39DC7DD338844012F1C /* Support Files */, + 614A502D262ADA12E245492BF82C94E0 /* vendor */, + ); + name = RealmJS; + path = ../../node_modules/realm; + sourceTree = ""; + }; + 3511A75DE5326B7327D8C0F88E65E534 /* RCTRequired */ = { + isa = PBXGroup; + children = ( + EB7ABBF68241E05E7A5BA24A1A311C3F /* RCTRequired.h */, + 751C3B0892075499DCC55852D29593DD /* Pod */, + B4DDD3E1A4A05AB1C20624EA9319EB6E /* Support Files */, + ); + name = RCTRequired; + path = "../../node_modules/react-native/Libraries/RCTRequired"; + sourceTree = ""; + }; + 371CB31F90086A24C5E9AF3882D02245 /* Pods-iLink-tvOS */ = { + isa = PBXGroup; + children = ( + F9B3BB3CCBC0A046A499236E0B0DF13E /* Pods-iLink-tvOS-acknowledgements.markdown */, + AE92DAAB382F37185FEFA48FCCC4C0E8 /* Pods-iLink-tvOS-acknowledgements.plist */, + E3BCF20E81A738D8FB9615885F47BE49 /* Pods-iLink-tvOS-dummy.m */, + D49556D1A45F748A9263810CCA5EB333 /* Pods-iLink-tvOS.debug.xcconfig */, + 549995AFCC79C5FA48E9CFD8DE16D7DE /* Pods-iLink-tvOS.release.xcconfig */, + ); + name = "Pods-iLink-tvOS"; + path = "Target Support Files/Pods-iLink-tvOS"; + sourceTree = ""; + }; + 3791DE2BF85009EFBB91E9E038846DE3 /* src */ = { + isa = PBXGroup; + children = ( + 3FA4089809A19ABBE1BE2FB1661FC379 /* binding_callback_thread_observer.cpp */, + 5AEC11B7D8BE2BF49CB5201864562B77 /* collection_notifications.cpp */, + CD86F535C08E0C06154EB0F5AF1FB5FC /* index_set.cpp */, + 664D2E3241F36EF74825F97596BFC24B /* list.cpp */, + 4504C02F6885F9A32400DAE21F8C8ECC /* object.cpp */, + 0BD992E676C696C4A5807168C24D99A6 /* object_schema.cpp */, + 9A3D01808ACF10C1760FF3C15CD00416 /* object_store.cpp */, + 5CD42AED9B585EAAF64D630194B2AB22 /* placeholder.cpp */, + 72D8FF2E5195EB02FBB3D078A6586980 /* results.cpp */, + E7961F34196F3DAF3A6B971F7346F120 /* schema.cpp */, + 49E12CC2FAC9E129F13B618C9DAA90E5 /* shared_realm.cpp */, + F59A7EEFCBCC98F244966096514F2DBA /* thread_safe_reference.cpp */, + 6479DE056F071A36C0A6E02CE1B43DFD /* impl */, + 3D83BADD3585E8D1E55C413AEF38C7F9 /* sync */, + 902DFD44D22C181355611933E0B2728A /* util */, + ); + name = src; + path = src; + sourceTree = ""; + }; + 390C8F4832BE7B5C2011214786C0B8F4 /* DevSupport */ = { + isa = PBXGroup; + children = ( + 7585C8287C679BC8CA153139099A61C0 /* RCTDevLoadingView.h */, + 0A11908C5E94F0F72F08DE8A0E0C2419 /* RCTDevLoadingView.m */, + F7810BE43000FD2E40F662368FD56AA6 /* RCTDevMenu.h */, + C9C76FAF221512F01C7228B133AD1FF6 /* RCTDevMenu.m */, + B8715FF692DFE7EBB9539E8F7DD36E45 /* RCTInspectorDevServerHelper.h */, + 348B44DC798A787931D7739187B06164 /* RCTInspectorDevServerHelper.mm */, + 214D5E22D36B6609192700BAD606614D /* RCTPackagerClient.h */, + 62933147C4B3D0BD758E608A1EDDCDA9 /* RCTPackagerClient.m */, + 5E8EBF46AD9C383614492B1EF7D67126 /* RCTPackagerConnection.h */, + E14F66A415B455755CFBE410E70DBF6A /* RCTPackagerConnection.mm */, + ); + name = DevSupport; + path = React/DevSupport; + sourceTree = ""; + }; + 3A3245CB38220FD46B83E0C178DBBDB9 /* Support Files */ = { + isa = PBXGroup; + children = ( + BB9F8CA21ADEF166C94F0399E3C2CF9C /* React-RCTText-dummy.m */, + BFFFBE1EC886BA12148BC938CAFDAAFC /* React-RCTText-prefix.pch */, + 53B371F807E072436AC7A392043F3AFB /* React-RCTText.debug.xcconfig */, + 9E2171FA7CE5047D6C5247BFC25856C2 /* React-RCTText.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../../ios/Pods/Target Support Files/React-RCTText"; + sourceTree = ""; + }; + 3B71580F2E84C741F8F0FA0F967FA463 /* Pod */ = { + isa = PBXGroup; + children = ( + 0B780D272405552EB5929F4D01B2BC68 /* LICENSE.md */, + A3E652B99E7A5F7E890E7C1C948CA17A /* README.md */, + BDC134C32EEC4BFDA2E7B68118A76435 /* RNDateTimePicker.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + 3C3F4D294A81E53C1702D11D0A2EEB85 /* RCTAnimationHeaders */ = { + isa = PBXGroup; + children = ( + 73485C316AF95C3A4CFBC5028A5C9161 /* RCTAnimationUtils.h */, + 1535726DCF31D2AA1A4C710E1FDBDED8 /* RCTNativeAnimatedModule.h */, + E79D00637AB2C3B4E62EDC815A081392 /* RCTNativeAnimatedNodesManager.h */, + 8C125C44832D7893EA20670B2BA6E95F /* Drivers */, + 0498B7A6849F939EAFEDEC390E1CB8E5 /* Nodes */, + ); + name = RCTAnimationHeaders; + sourceTree = ""; + }; + 3CB5A9BA3A1EB7B3B426CC15524C7064 /* Utils */ = { + isa = PBXGroup; + children = ( + DDB59549A776771032B9E0CA2843BECC /* RCTConvert+RNSVG.h */, + 7CE664330A062DBEF0A6C8163F0E18C8 /* RCTConvert+RNSVG.m */, + 2CC0D1C46755440793E4C49A28568E2A /* RNSVGBezierElement.h */, + AD1C169B5A1B03414C0B5CD6123716D2 /* RNSVGBezierElement.m */, + 43F391FD8101934C8E1566D1216E56F5 /* RNSVGCGFCRule.h */, + FFBCDE436499D87DB7B7D57BAF47AA36 /* RNSVGLength.h */, + 218685B97C74C398854F8BBE93E5AD68 /* RNSVGLength.m */, + F0864A0CF9ADBF8AB056BD16781F7D8A /* RNSVGMarkerPosition.h */, + 83A71EA8032E2D5C6A8492CDEA22ABA0 /* RNSVGMarkerPosition.m */, + 472028112E062A667E47B6733750C70E /* RNSVGPathMeasure.h */, + 7E8ECF311DD9E830F8D30998490AEF7D /* RNSVGPathMeasure.m */, + ECB135AD98CEE611CEC7D7453BC0C694 /* RNSVGPathParser.h */, + C9962383207D21F2CF0E67B12B2B3639 /* RNSVGPathParser.m */, + 45DB220CA1FB09F4FA1F9DD2AEB340A3 /* RNSVGUnits.h */, + 526775C360C9261EBFC425EEE0EE2015 /* RNSVGVBMOS.h */, + B3483F4B900D3BC1E80FCA9F8D36BA5D /* RNSVGVectorEffect.h */, + DD813D97C57807ACF2E1978B39463227 /* RNSVGViewBox.h */, + ED089C088BDD40333CC6D7AE6A5C89AF /* RNSVGViewBox.m */, + ); + name = Utils; + path = ios/Utils; + sourceTree = ""; + }; + 3D83BADD3585E8D1E55C413AEF38C7F9 /* sync */ = { + isa = PBXGroup; + children = ( + 1A27A813750D74FFECE41F6933E3F821 /* async_open_task.cpp */, + C967B312861117FD208430C086C448C2 /* partial_sync.cpp */, + E0A890DCDE1AEFAE6C4F72E906958FF8 /* sync_config.cpp */, + E0CF7AD9D3B4829D2C8395BA01A279F2 /* sync_manager.cpp */, + A2F14CB65F1531949ABE8F487A7AF132 /* sync_permission.cpp */, + 9E33D09D6B7A77AB773A6D3E21BF89BC /* sync_session.cpp */, + 700E1CF0FF28EEA4D256679D2C52D1D3 /* sync_user.cpp */, + 747AFE46E71FD4C31B854D7AAABFF627 /* impl */, + ); + name = sync; + path = sync; + sourceTree = ""; + }; + 3DE3F9CD6F22EFA8BAE6124EB5EC5575 /* Support Files */ = { + isa = PBXGroup; + children = ( + 6C6A076C2D6649006270BB54900B9B84 /* react-native-camera-dummy.m */, + F99004A32AD7B4B8E18DFF2A1488BCB2 /* react-native-camera-prefix.pch */, + EDE726FE7E357E1850CBEA3FBD348B5D /* react-native-camera.debug.xcconfig */, + FE45EC81DEC9B73C939CEF62253F7052 /* react-native-camera.release.xcconfig */, + ); + name = "Support Files"; + path = "../../ios/Pods/Target Support Files/react-native-camera"; + sourceTree = ""; + }; + 3DF7D500E1AC1E3436F97E7EF5249618 /* React-jsi */ = { + isa = PBXGroup; + children = ( + 6DB71030186F2C7F1A0C0DF63348A212 /* JSCRuntime.cpp */, + 40CB294986FAB2027FDFC66CDE375EA3 /* JSCRuntime.h */, + 9EDAE50192C8FBB8DD6E63F780BB0090 /* jsi */, + 1416AFD79E84FC14E68C30F52A3ADB33 /* Pod */, + 1952339D59809886956713ED8C44662F /* Support Files */, + ); + name = "React-jsi"; + path = "../../node_modules/react-native/ReactCommon/jsi"; + sourceTree = ""; + }; + 3E666A70383C3EC01F4CED764776D44E /* jscallinvoker */ = { + isa = PBXGroup; + children = ( + 0BA6E866338D361320D7E854E6215949 /* BridgeJSCallInvoker.cpp */, + 0E24EF8266B3BE078D72FAD30DFF2240 /* BridgeJSCallInvoker.h */, + 2F723DB45990B8D82DCFBFF5ADFD7FED /* JSCallInvoker.h */, + ); + name = jscallinvoker; + sourceTree = ""; + }; + 3E843B3F9DC9DC9F4F9686DBC6DA8BFB /* Pod */ = { + isa = PBXGroup; + children = ( + 0C7264A76474A80817CF8116E8ABAF2F /* LICENSE */, + 8D9DEDC93523BF9C133B99AA4BF5F27A /* README.md */, + 6A502F7BECBACF50CF81B68145AFD5C0 /* RealmJS.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + 40B268B612A37AFFB6343AC299EEF507 /* FBReactNativeSpec */ = { + isa = PBXGroup; + children = ( + FEADEB124C9BC1E8A768E05FA68CB1BB /* FBReactNativeSpec.h */, + 7298EFB5C06E4F5EB067A6DAA2212C6E /* FBReactNativeSpec-generated.mm */, + A111A978429DCCE7C1FDD642E1A39AB7 /* Pod */, + 594253F44DA3861CB9F58A4876896EEC /* Support Files */, + ); + name = FBReactNativeSpec; + path = "../../node_modules/react-native/Libraries/FBReactNativeSpec"; + sourceTree = ""; + }; + 42433EA27F07FBB3E1EF07934C1571AE /* ViewManagers */ = { + isa = PBXGroup; + children = ( + CDEFE0956EB30340F8CD1C305F247B4A /* RNSVGCircleManager.h */, + 17965D0FA86D88F67FAFC5D87C298CBA /* RNSVGCircleManager.m */, + C75E39FBCF49BDB3196FA9FACEB0ABD7 /* RNSVGClipPathManager.h */, + 54C5655DF49FC43E94FDDB06369C662C /* RNSVGClipPathManager.m */, + C7C55CE4026E58C02D2B2F506502C46A /* RNSVGDefsManager.h */, + CE9DD46C81EF46B852183AF0D39FB17F /* RNSVGDefsManager.m */, + ABE1788C1EDCD27FE238CA6B88D60DF7 /* RNSVGEllipseManager.h */, + 65869F9D725B3E057F6DBCA9817F47E5 /* RNSVGEllipseManager.m */, + 66C2D602D6DDB84D99C4C8F1B146C048 /* RNSVGGroupManager.h */, + CB848675B688A36A8878F5781344B6F2 /* RNSVGGroupManager.m */, + 1721CAFC0F91924A0DE087058D8540BF /* RNSVGImageManager.h */, + 83A5C16AB9C0305BF9BB65C7C41AFEA0 /* RNSVGImageManager.m */, + A5C09DAF41459FA8C22F70F569470496 /* RNSVGLinearGradientManager.h */, + 8A5E2695E1E5D9782F4BA945A0940575 /* RNSVGLinearGradientManager.m */, + 43544F72E9753F12D99696AC54125FAD /* RNSVGLineManager.h */, + 24436007543218C03B4F92F2967F0539 /* RNSVGLineManager.m */, + 53D98E741ECB98495A273D4401BDBE03 /* RNSVGMarkerManager.h */, + C0DA7EA1F08AD6F0245451C9B16A3DB8 /* RNSVGMarkerManager.m */, + DB7CD2049B6D935CE30CCBDD6A43C3F1 /* RNSVGMaskManager.h */, + 45B8F0FD359BDE2CF9A889EA9F88C040 /* RNSVGMaskManager.m */, + BB2FAA9C9BDE6EF026D50DA0F454A607 /* RNSVGNodeManager.h */, + 40A38DBA4AA43A6F02C8E0E35BF24E71 /* RNSVGNodeManager.m */, + 98B3E863BD4046224FAD7CAA782023B7 /* RNSVGPathManager.h */, + E79FD9B08B2955255DD23ECB74BA5CBE /* RNSVGPathManager.m */, + A7F4108A85FC538CD4FA005863628DE3 /* RNSVGPatternManager.h */, + A8E04B551FB541C7BC1181AC941653A4 /* RNSVGPatternManager.m */, + CB2181E72F68C228D51A8FFF6E7008D1 /* RNSVGRadialGradientManager.h */, + 34E0B2DDF4D5D00C0A6C51A8561A5D42 /* RNSVGRadialGradientManager.m */, + 002B1007E334F58425787CB6CCAF3168 /* RNSVGRectManager.h */, + 9CB232CAF3D9E0E803EBDAE012F31C6B /* RNSVGRectManager.m */, + 70A0C701CAD12981CDFEE9BF1A431647 /* RNSVGRenderableManager.h */, + A6E69E60E61BC4E786504D5F320938DA /* RNSVGRenderableManager.m */, + 79556F42A611B43D2BF03DCFAF7FB62C /* RNSVGSvgViewManager.h */, + 76348F1D7EF761E34111394E6D54AD34 /* RNSVGSvgViewManager.m */, + 2FFE466478283824948818FDE34BEE7E /* RNSVGSymbolManager.h */, + 9078DEDAB9155F0E31A59C2AFBA4D1F4 /* RNSVGSymbolManager.m */, + A46412FA5EC5EC6CA90F8F5D9637B4DD /* RNSVGTextManager.h */, + 3AAB3A63CFD18F68903365458E42C018 /* RNSVGTextManager.m */, + 653E9206FF43C654DDBF37077E4E6DAC /* RNSVGTextPathManager.h */, + 882783E78BA40C737F83B62D5555EAB5 /* RNSVGTextPathManager.m */, + C2B574FC50B75548F510495B80B9E6EB /* RNSVGTSpanManager.h */, + 0510862F2068AB90B9770E15E2F6D4AE /* RNSVGTSpanManager.m */, + CF10BDD12115F8C432C0D6F9BF52772A /* RNSVGUseManager.h */, + 446AA8F82AC823BAC4C97A631539B4AC /* RNSVGUseManager.m */, + ); + name = ViewManagers; + path = ios/ViewManagers; + sourceTree = ""; + }; + 4276EF8596462E4AEE9200C7C7447261 /* Support Files */ = { + isa = PBXGroup; + children = ( + A9EF876744D8B1BC4F57B68CDD2F29BA /* DoubleConversion-dummy.m */, + 71E87574F5B8FBC1231AB4D96B30EDA1 /* DoubleConversion-prefix.pch */, + A7466C845EA140BAE35D9E53B1C7EC99 /* DoubleConversion.debug.xcconfig */, + C387D543A00500C3A0B2D9FD216DB8A1 /* DoubleConversion.release.xcconfig */, + ); + name = "Support Files"; + path = "../Target Support Files/DoubleConversion"; + sourceTree = ""; + }; + 43D1ED37DE305E58729AD429ECD182DD /* Pods-iLink */ = { + isa = PBXGroup; + children = ( + F8292BA8683722F757F59A1BBE10A245 /* Pods-iLink.modulemap */, + B4FAC58BBC14C00C93A92D1EEDAB94BD /* Pods-iLink-acknowledgements.markdown */, + 9F2C6467B6C247058C8C69E8A6D791DF /* Pods-iLink-acknowledgements.plist */, + 37DC4413D3F613AB342A80A8ABF575EB /* Pods-iLink-dummy.m */, + C15BAE039C997CC47C3DA919A6295C76 /* Pods-iLink-resources.sh */, + D61C57DAFD3EBD219894526763B6AA70 /* Pods-iLink-umbrella.h */, + A51172FF8815A12AB54620B52198A965 /* Pods-iLink.debug.xcconfig */, + E6910AACA2A4A3019742CAC258755655 /* Pods-iLink.release.xcconfig */, + ); + name = "Pods-iLink"; + path = "Target Support Files/Pods-iLink"; + sourceTree = ""; + }; + 43D59B274A2F060FC700F6677572F285 /* Pod */ = { + isa = PBXGroup; + children = ( + 91F197791D439BE970E2508B14C32D6E /* React-RCTNetwork.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + 4414A3E8E338C0C74C293FFEF0901679 /* core */ = { + isa = PBXGroup; + children = ( + F0EDA46F7F300683016A3EE9C48DB350 /* LongLivedObject.cpp */, + 8C37427685AE9FEB056316077064C475 /* LongLivedObject.h */, + 954674C96F0A2FD3F1323A355DEF0E34 /* TurboCxxModule.cpp */, + 6EA97A7FED61A10933FDF7CC30189016 /* TurboCxxModule.h */, + BF723151A330EF526E035028F00F6202 /* TurboModule.cpp */, + FB9B47C1972AA062AE52B78BFF8C0E57 /* TurboModule.h */, + 833EE53DB9559776254213C55830C285 /* TurboModuleBinding.cpp */, + 36779F46682A5CAE36B4DB8C06165440 /* TurboModuleBinding.h */, + 40722983C1C27D578C4B6EB9202921AB /* TurboModuleUtils.cpp */, + EF0D53316292046FF61B6AFD6BE92AFD /* TurboModuleUtils.h */, + E5EC8A7422AD3B6FCCD7D2F6AD24697F /* platform */, + ); + name = core; + sourceTree = ""; + }; + 48DF568BE14D380D18E180663AB8A0BC /* RNDeviceInfo */ = { + isa = PBXGroup; + children = ( + DCB1F6E8708F8E9C82CD7E18EAC23C6F /* DeviceUID.h */, + B8BF9274CA91C7882F2D20B09EEC53B7 /* DeviceUID.m */, + 361EBF05F44D35AEAC4461EA9D4D74EE /* RNDeviceInfo.h */, + BB4D947C9C26C6693EE7738FB0263049 /* RNDeviceInfo.m */, + 22C8F878778E90A58BA3C63BD740FBC2 /* Pod */, + 86277ED587D66F28AAFEEDF106D3145B /* Support Files */, + ); + name = RNDeviceInfo; + path = "../../node_modules/react-native-device-info"; + sourceTree = ""; + }; + 494A6914491D0C15A8651081F9251837 /* CxxModule */ = { + isa = PBXGroup; + children = ( + 87D0B4D9FBE299629BCA57203803A1B0 /* DispatchMessageQueueThread.h */, + 27E9CB50945F53DACA5EB476868FB090 /* RCTCxxMethod.h */, + 1388C41DA8F5C85FE88D57F1B9D4AF4B /* RCTCxxMethod.mm */, + 6CCD27150B6E947B3F86FF3A6B8D7860 /* RCTCxxModule.h */, + 4442A9BAFB76C9CB739D0B279556805E /* RCTCxxModule.mm */, + E017F8E739E56EE1AD039BCC5E58883D /* RCTCxxUtils.h */, + 68C5C39650734974DF7D21E2C3760F7A /* RCTCxxUtils.mm */, + 5F49F11D16E44A0F6C7DB2163EE994FC /* RCTNativeModule.h */, + 33CEC13461320939B3389F95734E77E9 /* RCTNativeModule.mm */, + ); + name = CxxModule; + path = React/CxxModule; + sourceTree = ""; + }; + 496744C028C65812A706B9303555E365 /* SurfaceHostingView */ = { + isa = PBXGroup; + children = ( + 567D4AED3651B7DF227938F0036C8961 /* RCTSurfaceHostingProxyRootView.h */, + CD163ACC3DAFA2B21CE65F2C21350020 /* RCTSurfaceHostingProxyRootView.mm */, + DEEF66F7DE951666E21144F0A47DB0E0 /* RCTSurfaceHostingView.h */, + B2213028C54C1C9D1186D4946E34B6FF /* RCTSurfaceHostingView.mm */, + 33DE7F093C98D1A9AB1C573FF3F85A54 /* RCTSurfaceSizeMeasureMode.h */, + 109BC27B744665E9D217F62ADC66D1C0 /* RCTSurfaceSizeMeasureMode.mm */, + ); + name = SurfaceHostingView; + path = SurfaceHostingView; + sourceTree = ""; + }; + 4A1F24CC09371BF5CFAB55EE0C9D8297 /* Transitioning */ = { + isa = PBXGroup; + children = ( + 349A797D236EE403880A7E3B001CA8A7 /* RCTConvert+REATransition.h */, + A8675AD55B5CEF0DE78FF98E1E046B55 /* RCTConvert+REATransition.m */, + 3F000582EA57EDDD6ABD5BA1BBE0EAF3 /* REAAllTransitions.h */, + 09CB5047A5859F61E04C3AF2C6D8C840 /* REAAllTransitions.m */, + 42A5D9CA7D1A69CB22B716490023506C /* REATransition.h */, + 27849AFEAE651DD522B3155110082A8F /* REATransition.m */, + 190FFBD2A30F0DE94689AC4D617D99C6 /* REATransitionAnimation.h */, + 16625EFEF66B1ECB02DD4EC16CFC6EC3 /* REATransitionAnimation.m */, + B4A9FBE5E0B8A8E30A9EC4FB03032500 /* REATransitionManager.h */, + E419DDAAF6B99F38FAB59FBA4BC6D17C /* REATransitionManager.m */, + C6556FD190070CBA3565366216FDD692 /* REATransitionValues.h */, + 219AAC6B8BE53800A7967D52496219C1 /* REATransitionValues.m */, + ); + name = Transitioning; + path = ios/Transitioning; + sourceTree = ""; + }; + 4A9CFECA6FB3E8FBCAF722C2C5DDC2D5 /* Multiline */ = { + isa = PBXGroup; + children = ( + D8DC60D74757EEAF2DA2FE35CE69F706 /* RCTMultilineTextInputView.h */, + 99CE77110E69BF19B5D7317F4DDEBACE /* RCTMultilineTextInputViewManager.h */, + C498CDECB5315A50BC9177E0BFF04A37 /* RCTUITextView.h */, + ); + name = Multiline; + path = Multiline; + sourceTree = ""; + }; + 4DDFF3030CD6D14FBA3582980CBEEC9A /* Pod */ = { + isa = PBXGroup; + children = ( + 68ED5A842E7231320ABDE316490420E1 /* React.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + 5030217EB75780F30B7AA653347CA693 /* Support Files */ = { + isa = PBXGroup; + children = ( + 1BCE5AA8EB52234CB535E56070F0881F /* react-native-onesignal-dummy.m */, + DC2C4A624E9227FE3EF9F3FE33799B4D /* react-native-onesignal-prefix.pch */, + 1D13846984C17D864A6CEDE12F8E61B6 /* react-native-onesignal.debug.xcconfig */, + D7ED0D50DDF170F2A79ED54AFB7DFC0F /* react-native-onesignal.release.xcconfig */, + ); + name = "Support Files"; + path = "../../ios/Pods/Target Support Files/react-native-onesignal"; + sourceTree = ""; + }; + 50A4B4F884730D0210F1183EFBF41DD1 /* Pods-iLink-tvOSTests */ = { + isa = PBXGroup; + children = ( + 2F3014AEE80E89D1596152D4667CD631 /* Pods-iLink-tvOSTests-acknowledgements.markdown */, + 600EF6ECECA90C2C18BF4FD8DB4AE5AB /* Pods-iLink-tvOSTests-acknowledgements.plist */, + F6AEB026EE96E8505E4C53D1220F7027 /* Pods-iLink-tvOSTests-dummy.m */, + 7A77B97619DE3D94F3AF5B9B10D1341A /* Pods-iLink-tvOSTests.debug.xcconfig */, + A69E9D6519745D755D884D0A5714E5DB /* Pods-iLink-tvOSTests.release.xcconfig */, + ); + name = "Pods-iLink-tvOSTests"; + path = "Target Support Files/Pods-iLink-tvOSTests"; + sourceTree = ""; + }; + 519FC27C3B6AAE2C8F8624EB18C948D8 /* Pod */ = { + isa = PBXGroup; + children = ( + 3B8DB25DB88A3A1175B6FC7CA503AADE /* LICENSE */, + 3BB8890B9CCF58F18A93E3CE88D03CDA /* README.md */, + 112AE75C00A2C2EC468BC4BE944635E8 /* RNScreens.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + 522A493CAA6CBAF35F323BF6FB2B6413 /* react-native-onesignal */ = { + isa = PBXGroup; + children = ( + 7D13651181CD3669DEB963ECC6217173 /* RCTOneSignal.h */, + C4C44B4EF4082FF661AA53998D10B029 /* RCTOneSignal.m */, + 5299433FFB7D1A3298297D291DCCDC53 /* RCTOneSignalEventEmitter.h */, + 3C030E675011A8F0E7212401F9A99C96 /* RCTOneSignalEventEmitter.m */, + 82AD6326AE097F223F5F0AB8D2FDD96B /* RCTOneSignalExtensionService.h */, + AC053697E5EECCD032F20E385C0F1495 /* RCTOneSignalExtensionService.m */, + 17E386FF6ADF84202F590E285C566072 /* UIApplication+RCTOnesignal.m */, + B5E3F9E547B4B5AB4785E3752D9ACC79 /* Pod */, + 5030217EB75780F30B7AA653347CA693 /* Support Files */, + ); + name = "react-native-onesignal"; + path = "../../node_modules/react-native-onesignal"; + sourceTree = ""; + }; + 590062BA0459F8DF8646C700BF2C3A26 /* RCT */ = { + isa = PBXGroup; + children = ( + F66F35D11FB0387EA828F51B51A7C135 /* CameraFocusSquare.h */, + 139B24AA1FF167F9FF9B742F62B97588 /* CameraFocusSquare.m */, + FBCAA30722C680310F6F34A274DEBD27 /* NSMutableDictionary+ImageMetadata.h */, + CA524E79A18965BDAE1F967638AFE916 /* NSMutableDictionary+ImageMetadata.m */, + 5DD77AEF383CA4469C6DF1D36343FAE9 /* RCTCamera.h */, + DFB0EC4DCE35631FB5239169ED43FB41 /* RCTCamera.m */, + B4577148E6D8E6314AC68CA3B70EDAEB /* RCTCameraManager.h */, + 4FFE18354072714919B90087FFAE4F5A /* RCTCameraManager.m */, + 3E4C4504869CF2A74BF0AF7896B02A26 /* RCTSensorOrientationChecker.h */, + 3AE57868946406E942A1CE4E37C2954F /* RCTSensorOrientationChecker.m */, + ); + name = RCT; + sourceTree = ""; + }; + 594253F44DA3861CB9F58A4876896EEC /* Support Files */ = { + isa = PBXGroup; + children = ( + 32078741A84563F5B590C6DF6301B49A /* FBReactNativeSpec-dummy.m */, + 841DA965CFC5BDEF90B48E940941CD50 /* FBReactNativeSpec-prefix.pch */, + D3E13105D8C67162D5247DE615633C9D /* FBReactNativeSpec.debug.xcconfig */, + CCAC00C01CED90CFF7427F035467D2EA /* FBReactNativeSpec.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../../ios/Pods/Target Support Files/FBReactNativeSpec"; + sourceTree = ""; + }; + 5950C77FBE5D458623780E4E11F0F467 /* Support Files */ = { + isa = PBXGroup; + children = ( + CA763E2CC1D800F79C201D6E781F9B61 /* glog-dummy.m */, + D72CC795D548F7C1ACA4C1E78D62C762 /* glog-prefix.pch */, + 18A15C674FF5AB2E98B6F8463C91ADFA /* glog.debug.xcconfig */, + F2FF3D182FC9F7CD13E56DCCBC4797B0 /* glog.release.xcconfig */, + ); + name = "Support Files"; + path = "../Target Support Files/glog"; + sourceTree = ""; + }; + 5A0589C7E29A8EE2BA17FAC0F18E1CFF /* RNSVG */ = { + isa = PBXGroup; + children = ( + 19ACEEA651BF7A9A195017F68015A0B4 /* RNSVGContainer.h */, + EE6797E848B43E6F58CB4F0B719BB77E /* RNSVGNode.h */, + E41C736103AA19327C5952D1899C019A /* RNSVGNode.m */, + E61AAE22FF9AFE02079FA4A4B2E4DF7B /* RNSVGRenderable.h */, + 3DB5ED57431936CBED405C41339F6D3D /* RNSVGRenderable.m */, + E9CFBC615BBC76B4A781A46FD3F36271 /* Brushes */, + 771A1D3F6EE8414A32AF455B8951C9C1 /* Elements */, + 977264AEE50808062A579C8EC6C4D300 /* Pod */, + 8614D9838DD174AE04BD750CF4614C9F /* Shapes */, + E1A94E12C1DCDFC052A2EE41826D4CAD /* Support Files */, + FEAAA58D17695369577A5ECDEBE206E6 /* Text */, + 3CB5A9BA3A1EB7B3B426CC15524C7064 /* Utils */, + 42433EA27F07FBB3E1EF07934C1571AE /* ViewManagers */, + ); + name = RNSVG; + path = "../../node_modules/react-native-svg"; + sourceTree = ""; + }; + 5D882F7FC3B2C903F7BE4245B83BDD5B /* RCTImageHeaders */ = { + isa = PBXGroup; + children = ( + 444C6AA5B1EFAC44EFEF6C52A480B6D1 /* RCTAnimatedImage.h */, + 9C195DCF85DEEF72E0FC3B249CAC7D04 /* RCTGIFImageDecoder.h */, + D4737F8FEB624BDD4B148D0992B814D6 /* RCTImageBlurUtils.h */, + 03695D10E13C4C5C67C641A735EA74A9 /* RCTImageCache.h */, + F8E0B5C65F8865117C3CC9B7128D9FB0 /* RCTImageDataDecoder.h */, + EE54F2B238C157AD12425F4C0ED5FB87 /* RCTImageLoaderProtocol.h */, + 6D1BFE36CAB063BBAA7D267717D4CA68 /* RCTImageShadowView.h */, + C7C0E7E3493F11A234BCE2C0A351B3FF /* RCTImageURLLoader.h */, + 576FB081AAB30D745257E99E80AD2D6B /* RCTImageUtils.h */, + F0CC1812790677B8D0F41C8A40E2FE8D /* RCTImageView.h */, + D05215927721B9706712B6BC4A383FE9 /* RCTImageViewManager.h */, + 9F3FAB3480C299293BF6B498691CECDD /* RCTLocalAssetImageLoader.h */, + B68F3FC436CAF92FAD20F5175B49935F /* RCTResizeMode.h */, + 3D2E2B7B045B7C4AA1845771A8776D67 /* RCTUIImageViewAnimated.h */, + ); + name = RCTImageHeaders; + sourceTree = ""; + }; + 5E68906DA8BBD83C5CBF40B6CDBC05E1 /* Pod */ = { + isa = PBXGroup; + children = ( + 7A3F706A3A93F516C6A30854D2780162 /* React-RCTVibration.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + 60C1349DE3456593502BEE96AA5B6F2A /* Support Files */ = { + isa = PBXGroup; + children = ( + 356127E2E247CEE1BBECC09AA00789DD /* react-native-maps-dummy.m */, + 579ED420FD0A86D6A5C678137C0B5C67 /* react-native-maps-prefix.pch */, + 750DD61945F119359A05FA682031EBF6 /* react-native-maps.debug.xcconfig */, + 8616ABE40A3061D587026113494C2618 /* react-native-maps.release.xcconfig */, + ); + name = "Support Files"; + path = "../../ios/Pods/Target Support Files/react-native-maps"; + sourceTree = ""; + }; + 614A502D262ADA12E245492BF82C94E0 /* vendor */ = { + isa = PBXGroup; + children = ( + F041CEC0836A9655C3E02C981F08D7D9 /* base64.cpp */, + ); + name = vendor; + path = vendor; + sourceTree = ""; + }; + 62A84CD070CB181887E0722272F39D2F /* Frameworks */ = { + isa = PBXGroup; + children = ( + D77060B9EAE7E18CEDE5A7068140F7D9 /* librealm-ios.a */, + 78503560CB6DA333AC20069BC6726A4C /* librealm-parser-ios.a */, + ); + name = Frameworks; + sourceTree = ""; + }; + 6479DE056F071A36C0A6E02CE1B43DFD /* impl */ = { + isa = PBXGroup; + children = ( + B4CA1CE4D1CE3C63EFA320868B04D39C /* collection_change_builder.cpp */, + F0C8A3071CB2A6215005813417F3252A /* collection_notifier.cpp */, + FFD6B7E4AF63FB9B2A211EA7D221CB55 /* list_notifier.cpp */, + 9D17F764A52524A3BE521716409A4800 /* object_notifier.cpp */, + DAE20003B51CF3FAB81EFD2B12413ED2 /* primitive_list_notifier.cpp */, + BEC13A69FA2BC2EEFB4E6090623EDD2B /* realm_coordinator.cpp */, + B13DE48D3ADBED00566B79F9431CFD69 /* results_notifier.cpp */, + A48477ED40D417B9B631D15E28C83C74 /* transact_log_handler.cpp */, + 46D8F9B9A62AF4E648AE2E67EBCD21C9 /* weak_realm_notifier.cpp */, + 8DC23D78E9F98A0A463C3C4B3BB97406 /* apple */, + ); + name = impl; + path = impl; + sourceTree = ""; + }; + 66DC76772A148BEB2147D5E1BA1473B1 /* Pod */ = { + isa = PBXGroup; + children = ( + 9DFFEB663B192669E6285C8E1F10C349 /* React-CoreModules.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + 671D73ECF8BE13C12E97CF6012A48E77 /* Nodes */ = { + isa = PBXGroup; + children = ( + 850C45F01FA71D06E0020655AB808456 /* REAAlwaysNode.h */, + 4C8051C4A82E5F9EBF47A3770257222C /* REAAlwaysNode.m */, + BF131340112C705973475540BCBD0E8B /* REABezierNode.h */, + B1038DCFE6021D690A8D46126B6A683F /* REABezierNode.m */, + 220027A97BB297B7CB50E94DE327D2A4 /* REABlockNode.h */, + BAF39C28AE2E7DBAE26452E926A6EE1B /* REABlockNode.m */, + 294E1727E47D41316378205655840ADA /* REACallFuncNode.h */, + 171DF67C91C4D76C19344F0FD0D19F21 /* REACallFuncNode.m */, + 602C103D28B8AC2841B6268801AF55F4 /* REAClockNodes.h */, + 4CD700CC8B8998EF3FFDE5522CFC7E55 /* REAClockNodes.m */, + 4B7048C24D01788A2C650FB69683ED54 /* REAConcatNode.h */, + CDBC89BC9044E9410964BB4D41A9A682 /* REAConcatNode.m */, + AFD45F8B3D3C0269AA572459267D1F27 /* REACondNode.h */, + EA6F220E0E153DEE9052D0B89A769892 /* REACondNode.m */, + 71150CA7F48E01E42E49DC5CA6E9B72F /* READebugNode.h */, + AAF35C0FF26E6C4AA2952845BF519698 /* READebugNode.m */, + BF93434B8A3E2C9AD337B758C2399DEB /* REAEventNode.h */, + 386B4545D0EF8B75E665E0B13DB96EC5 /* REAEventNode.m */, + 4B2873661471166C092946EF318248F4 /* REAFunctionNode.h */, + 43C059CDD48E975B96F9EF4406B70170 /* REAFunctionNode.m */, + E917F464C79C1657727D5AEAE90B1233 /* REAJSCallNode.h */, + A8DED8A166BC67EB39B4517DA8C16E44 /* REAJSCallNode.m */, + DCEF22C8515513669AADFF21B6A6566F /* REANode.h */, + 14380B8325F2847C6C6CDC58A5D912A5 /* REANode.m */, + 85CFAF09A7A9C7787E237BF50D71F0AE /* REAOperatorNode.h */, + 9A24155EFDDA56312A1F7CF8B073C3F6 /* REAOperatorNode.m */, + 44FA199887993BF19DFE52C20879A296 /* REAParamNode.h */, + 0C20662EC6F9242A5FC5B9AE39DB6F0F /* REAParamNode.m */, + 051C3565E3E172142562602851207A37 /* REAPropsNode.h */, + E375B609457ACB650F4AFCF740F6A0CF /* REAPropsNode.m */, + 53BFB855737231F7590C3F15371E3C81 /* REASetNode.h */, + E121A0ADD8B2CDF1E5D691A85AB2CD44 /* REASetNode.m */, + FFA7005524C474B5F2EF446831081F8E /* REAStyleNode.h */, + C786875A16AA14256F8C1FACBB50A55F /* REAStyleNode.m */, + C1236A13D416C4ADDEC731A5B2AB330D /* REATransformNode.h */, + 58BAC3BE3C29A9E9E370B8A809161B01 /* REATransformNode.m */, + F98A1A5429C0BB468270AEE8B7FFE0F9 /* REAValueNode.h */, + CAB75B892C756B1E41BC2541464846E2 /* REAValueNode.m */, + ); + name = Nodes; + path = ios/Nodes; + sourceTree = ""; + }; + 675908783E3E34CE6519FA6B629FF7BE /* Callout */ = { + isa = PBXGroup; + children = ( + 55205C3336F08E009307CFABE94124D2 /* SMCalloutView.h */, + 8BCCCADF97F9F7EE0FE3F6868274BDC5 /* SMCalloutView.m */, + ); + name = Callout; + path = lib/ios/AirMaps/Callout; + sourceTree = ""; + }; + 68CBCF11814204EE9D192B97C96C41C9 /* Pod */ = { + isa = PBXGroup; + children = ( + 6B0D3B2441063AF106090C045BB0DDE5 /* SajjadBlurOverlay.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + 69B30A908897783A89695A4BA6178CB0 /* React-RCTAnimation */ = { + isa = PBXGroup; + children = ( + 0CBB9360A2E6B1A6704341335475E881 /* RCTAnimationUtils.m */, + 3F691D6D9E721CDDFB70E13182BF586D /* RCTNativeAnimatedModule.m */, + B919D1DC75E0549E6CF764EFD6CABF4E /* RCTNativeAnimatedNodesManager.m */, + 9F1D206CAC3ADB9065C9F52F6D4BA7A9 /* Drivers */, + E89048C9ACD55DBC74193A2D61D492BA /* Nodes */, + E708F2D9F76B10BCED28DCCCD9904F5C /* Pod */, + E8558AAB18058181EC5E09E801464B57 /* Support Files */, + ); + name = "React-RCTAnimation"; + path = "../../node_modules/react-native/Libraries/NativeAnimation"; + sourceTree = ""; + }; + 6B6B92BCCC79DA7B58A97AEA3A5C3134 /* Pod */ = { + isa = PBXGroup; + children = ( + 33CBA35E56E8FD38B8A4709817CF050A /* React-RCTText.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + 6C68CB3FEBCBA10739B5A10FB4FB2269 /* RCTNetworkHeaders */ = { + isa = PBXGroup; + children = ( + 08517D271BA44FE29820B605688EFB20 /* RCTDataRequestHandler.h */, + 99B838E99765EA9C7850050DF245A4BA /* RCTFileRequestHandler.h */, + E76FBB2A2FA956C922BBB10AD6DD20B7 /* RCTHTTPRequestHandler.h */, + 6B9E50B753A1F0508FDFB78E0E7E3FF5 /* RCTNetInfo.h */, + C92A797AC907CD1A7128D6472A288F25 /* RCTNetworking.h */, + 86417141AD45D7224CDA7C666233E0EC /* RCTNetworkTask.h */, + ); + name = RCTNetworkHeaders; + sourceTree = ""; + }; + 6D1BA69154386317DB07E0ABA9AA6430 /* Pod */ = { + isa = PBXGroup; + children = ( + 19ADE9E5B622F58AFBAF739D2807A2B9 /* RCTTypeSafety.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + 6DEA12A3754E96A27840D6619C6BA9BB /* React-RCTVibration */ = { + isa = PBXGroup; + children = ( + 4B77E2A04EA9DCD7B2E08ED0D0F348F7 /* RCTVibration.m */, + 5E68906DA8BBD83C5CBF40B6CDBC05E1 /* Pod */, + 0C5315F35FD73157F117516C490773D7 /* Support Files */, + ); + name = "React-RCTVibration"; + path = "../../node_modules/react-native/Libraries/Vibration"; + sourceTree = ""; + }; + 6F5D222A48CF0446F1A720807C07C7A4 /* turbomodule */ = { + isa = PBXGroup; + children = ( + 4414A3E8E338C0C74C293FFEF0901679 /* core */, + ); + name = turbomodule; + sourceTree = ""; + }; + 702F19A1765555798938A776CF3084EB /* internal */ = { + isa = PBXGroup; + children = ( + 3D3902E09FEEF4E0FFF21AED7DE77A9E /* experiments.cpp */, + B4AD0E605D4A5847534F78A5D89EA0B3 /* experiments.h */, + 0F348AA8D7BF5A580360B23180B7EB76 /* experiments-inl.h */, + ); + name = internal; + path = yoga/internal; + sourceTree = ""; + }; + 70644A07A46E76A12EA053B5390D16A2 /* TextInput */ = { + isa = PBXGroup; + children = ( + 799BE66953821B7B47F1A3F98B6F6E69 /* RCTBackedTextInputDelegate.h */, + AA5514FD086C70AA9D9857E11E378E9A /* RCTBackedTextInputDelegateAdapter.h */, + 504C63F003605D6B94937D2BB3CFDA45 /* RCTBackedTextInputViewProtocol.h */, + E468B90925B127048D26250229969696 /* RCTBaseTextInputShadowView.h */, + 8EBD152F4E9301AF6F532A8BE0B2CF35 /* RCTBaseTextInputView.h */, + C77821C156B9BCA08618C10785BD9B9C /* RCTBaseTextInputViewManager.h */, + 23713E88B82CFF58B67D9ED32A448307 /* RCTInputAccessoryShadowView.h */, + 8B01716B69443F3AD541B09C78900323 /* RCTInputAccessoryView.h */, + DFC0809A9A24895946B8E7423321A9AF /* RCTInputAccessoryViewContent.h */, + C308DA183C7CD21A6850F981B2ECC4C7 /* RCTInputAccessoryViewManager.h */, + 193F00C2271D5C39B449D3EE685FD716 /* RCTTextSelection.h */, + 4A9CFECA6FB3E8FBCAF722C2C5DDC2D5 /* Multiline */, + DFF8334277F9483F81FC034EC0DDF0D5 /* Singleline */, + ); + name = TextInput; + path = Libraries/Text/TextInput; + sourceTree = ""; + }; + 7450FD8DB93CC6D0B1ADFD1FB9EF76FA /* Pods-iLinkTests */ = { + isa = PBXGroup; + children = ( + A14C84308758978400C7B860E67B4CAA /* Pods-iLinkTests-acknowledgements.markdown */, + F4070D8B5FF76C79A83572831CA832C9 /* Pods-iLinkTests-acknowledgements.plist */, + EA37D9997E1D6992DB5C309D59091305 /* Pods-iLinkTests-dummy.m */, + A196505E27523E724B2278730FCC5C90 /* Pods-iLinkTests.debug.xcconfig */, + 5A6F6BC8440E14EE5F145FD6346E237A /* Pods-iLinkTests.release.xcconfig */, + ); + name = "Pods-iLinkTests"; + path = "Target Support Files/Pods-iLinkTests"; + sourceTree = ""; + }; + 747AFE46E71FD4C31B854D7AAABFF627 /* impl */ = { + isa = PBXGroup; + children = ( + 73D5C1B92EBC7EC45CA66C7F1C973329 /* sync_file.cpp */, + E2AFB73FF2ECCCCF36936F57970828A7 /* sync_metadata.cpp */, + FF8FE1D9B7F60A71648548469617A952 /* work_queue.cpp */, + CF69B5D476C40B0C7097B9FB44D88567 /* apple */, + ); + name = impl; + path = impl; + sourceTree = ""; + }; + 751C3B0892075499DCC55852D29593DD /* Pod */ = { + isa = PBXGroup; + children = ( + 2197E28A99C5C598276DA7A66B5B2D90 /* RCTRequired.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + 758D4346A50995E502FF34F775CF318D /* Support Files */ = { + isa = PBXGroup; + children = ( + 18AB55F56864F5B3412EE62BE6066B7A /* lottie-react-native.modulemap */, + 673B4475CAC51EA0B22EBC0E13E734F8 /* lottie-react-native-dummy.m */, + 3148F275C032FB1C1440719721089191 /* lottie-react-native-prefix.pch */, + 2DCA38E6948A5AB13EED5D54C7D9B157 /* lottie-react-native-umbrella.h */, + C339B95A9D096486FF40CFF8F59359E0 /* lottie-react-native.debug.xcconfig */, + 71FC3C1B1E5913413B39A0900ADD625A /* lottie-react-native.release.xcconfig */, + ); + name = "Support Files"; + path = "../../ios/Pods/Target Support Files/lottie-react-native"; + sourceTree = ""; + }; + 76F6B17F0E802217B08FA82530C9CB21 /* ReactCommon */ = { + isa = PBXGroup; + children = ( + 3E666A70383C3EC01F4CED764776D44E /* jscallinvoker */, + 94609C42254DB90E2E7D9CC1DDBC5CEA /* Support Files */, + 6F5D222A48CF0446F1A720807C07C7A4 /* turbomodule */, + ); + name = ReactCommon; + path = "../../node_modules/react-native/ReactCommon"; + sourceTree = ""; + }; + 771A1D3F6EE8414A32AF455B8951C9C1 /* Elements */ = { + isa = PBXGroup; + children = ( + F59F86E65D5808E638DA23309781CCB4 /* RNSVGClipPath.h */, + 347C8BF9569CAF6E292C0B093F26D399 /* RNSVGClipPath.m */, + B3082631D0525B8C14CBE2970A53F446 /* RNSVGDefs.h */, + A32F01ACFFEAF4880AB04C5CD94993BB /* RNSVGDefs.m */, + 0E6A1C602BA20874C82464DDD8C4089B /* RNSVGGroup.h */, + 483A3BD2B103D243C3B5A7FA1C4596DD /* RNSVGGroup.m */, + 01AD93A050E5E2EF9CED36A6280344D3 /* RNSVGImage.h */, + BC86AF373FCDDEEF567A95A4FA03FCAB /* RNSVGImage.m */, + E11FF1C3AB0FFFB11BDCF1136F614086 /* RNSVGLinearGradient.h */, + 785BB18FFFB2E76B227AEF0B066D99F7 /* RNSVGLinearGradient.m */, + E4C0B09C90F695FA797B5988D1A801E8 /* RNSVGMarker.h */, + DA36CA9A9954E7D464528822C76B6067 /* RNSVGMarker.m */, + F0390652A3087405164577EEF51479EC /* RNSVGMask.h */, + 7E0B040F78C938C7609D3A37EFBA4DBE /* RNSVGMask.m */, + C2323B1BAD30385192D4D97921A4CAB6 /* RNSVGPath.h */, + 2D301EAAD960B125FC803B7CA3C896B8 /* RNSVGPath.m */, + A88D947BC71F8FC9BBD9B349EA812643 /* RNSVGPattern.h */, + 48A1CD53AA3A3F83C64BB32E5F3081F3 /* RNSVGPattern.m */, + 8A6AEAD34EA853AA7523DA5D93E40B4B /* RNSVGRadialGradient.h */, + C2ED5230FFDF01F7DA060BC480C809E2 /* RNSVGRadialGradient.m */, + D4110E77EE0E2454BC34C6A578361699 /* RNSVGSvgView.h */, + 1366F3AE84DBA1E7AE4FFDC062A7CC87 /* RNSVGSvgView.m */, + 937209598CA97AC8B3E546F813746203 /* RNSVGSymbol.h */, + 285F3053319EE896F057DDFE0ECDF145 /* RNSVGSymbol.m */, + BB4E12F71271E9C4C040BA76CC4691CB /* RNSVGUse.h */, + 1B93D853786C41CE3BD8638FC86F0EB8 /* RNSVGUse.m */, + ); + name = Elements; + path = ios/Elements; + sourceTree = ""; + }; + 79D2249EF6FB1466318C0D2AAD76F779 /* Pod */ = { + isa = PBXGroup; + children = ( + C81BA097945485F4DA012F45CDCA846C /* LICENSE */, + 3231759FB7D910B02B6D90E020247810 /* react-native-camera.podspec */, + 0627843B4DA84F62E1C07F0104E0E809 /* README.md */, + ); + name = Pod; + sourceTree = ""; + }; + 79F4644B0F44925A5852755CEB8FB778 /* object-store */ = { + isa = PBXGroup; + children = ( + 3791DE2BF85009EFBB91E9E038846DE3 /* src */, + ); + name = "object-store"; + path = "object-store"; + sourceTree = ""; + }; + 7B2AE9399E1C11A903806E501B5581FF /* boost-for-react-native */ = { + isa = PBXGroup; + children = ( + F172B789935747E435F097238D8916D5 /* Support Files */, + ); + name = "boost-for-react-native"; + path = "boost-for-react-native"; + sourceTree = ""; + }; + 7C2C2A115130E1DCEE15E9FED7CE359C /* ios */ = { + isa = PBXGroup; + children = ( + 16E3FA548AB9083279BCAB4467F5F217 /* RealmReact */, + ); + name = ios; + path = ios; + sourceTree = ""; + }; + 7D0065B5AFB1AA04D6FE9B0CE7A413FA /* SajjadBlurOverlay */ = { + isa = PBXGroup; + children = ( + 3D3C3994500629AAF9F5B7E2BA5A58C6 /* SajjadBlurOverlay.h */, + A0C3289AAC10CDFF80279E575A1854DC /* SajjadBlurOverlay.m */, + AA0D81528CC401A3656123FC0D71EE84 /* SajjadBlurOverlayManager.m */, + 3DD32D51C9966D7E4F6CB5379DA91FD9 /* SajjjadBlurOverlayManager.h */, + 68CBCF11814204EE9D192B97C96C41C9 /* Pod */, + EB66B69C86A7D271401DC01715CD3178 /* Support Files */, + ); + name = SajjadBlurOverlay; + path = "../../node_modules/react-native-blur-overlay/ios"; + sourceTree = ""; + }; + 7D1E38485FFB2FD34040F301AF59412A /* GCDWebServer */ = { + isa = PBXGroup; + children = ( + 2D54F94789E4D3F9AB0C0E71177E398E /* Core */, + 130DE05B853A54D4420C90CB4D02973C /* Support Files */, + ); + name = GCDWebServer; + path = GCDWebServer; + sourceTree = ""; + }; + 7E5EB877C7620C3F4B05DBE10CED0E9F /* Support Files */ = { + isa = PBXGroup; + children = ( + EEDA1BD360AA71FA05762BABCF449501 /* React-RCTActionSheet-dummy.m */, + 08553319BE575BBF155575EDA9AA2FE0 /* React-RCTActionSheet-prefix.pch */, + 5E9FA85E174CC1111C1F0121CA659BF8 /* React-RCTActionSheet.debug.xcconfig */, + 2A98425762A78795D2216B5CB879221B /* React-RCTActionSheet.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../../ios/Pods/Target Support Files/React-RCTActionSheet"; + sourceTree = ""; + }; + 7F1B50C75DB50AB74C04206B962D3D5F /* Pod */ = { + isa = PBXGroup; + children = ( + 7E6F625201280840A12BC4ACA05DC89E /* react-native-geolocation.podspec */, + DFD5CEFC41B9646AF9E152295231FC93 /* README.md */, + ); + name = Pod; + sourceTree = ""; + }; + 7F4A5DE5C3E696CA1461DE9225DB973D /* Pod */ = { + isa = PBXGroup; + children = ( + 2FFC65C4D604A552C6A7AC3618FCDE83 /* react-native-maps.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + 7FE4BCADA273A50953B6DACED7AA66C5 /* Development Pods */ = { + isa = PBXGroup; + children = ( + E4149DBB3C97D725A8F4BE5CCF9C01BF /* FBLazyVector */, + 40B268B612A37AFFB6343AC299EEF507 /* FBReactNativeSpec */, + 2F1171A515F823C8D1E3F5548C107227 /* lottie-react-native */, + 3511A75DE5326B7327D8C0F88E65E534 /* RCTRequired */, + FB4CB4A31F8343CCD6D8C142127F695E /* RCTTypeSafety */, + A30139011D06DB56DF531CEF3BC5ACA4 /* React */, + A9B1C326CEF06EC7C33934BAF67F2E11 /* React-Core */, + 7FF4FCE23DF07D05E656EDFDD507EB5C /* React-CoreModules */, + 92C698A3EF340378ECF6D9D16764CB5D /* React-cxxreact */, + 3DF7D500E1AC1E3436F97E7EF5249618 /* React-jsi */, + E4810778AEEFC006E3BFA973630F0019 /* React-jsiexecutor */, + FDA62C43DA4F32F4140B62DEEF96A4E3 /* React-jsinspector */, + 293C0BDA235A3DD2BCC58999DFA8E3C2 /* react-native-camera */, + D8978BF1514318422A904CF81BB8CEF8 /* react-native-geolocation */, + 28C0FCB770D9CBEC8630ED82AE569A25 /* react-native-maps */, + 522A493CAA6CBAF35F323BF6FB2B6413 /* react-native-onesignal */, + 9BE2E1FB6A3ECA6A8814A73EF37069EF /* react-native-viewpager */, + B24F2AD6DD0C1B98601051B4F2AFED78 /* React-RCTActionSheet */, + 69B30A908897783A89695A4BA6178CB0 /* React-RCTAnimation */, + 8BA3B441CBEFB3BE6A1BBD51E2AB461F /* React-RCTBlob */, + 9857B6C51954A7518423B78FFA01CFD6 /* React-RCTImage */, + 21A69FF82B039A6D53EA39DF3B74C26E /* React-RCTLinking */, + 0A043B9BA94BEBF82443BF12AD12A968 /* React-RCTNetwork */, + DAC61935699D4ED4BCF5C980CD0E4C3E /* React-RCTSettings */, + 8C5F2ABF0F57D21A83647493DC132F37 /* React-RCTText */, + 6DEA12A3754E96A27840D6619C6BA9BB /* React-RCTVibration */, + 76F6B17F0E802217B08FA82530C9CB21 /* ReactCommon */, + 3293D4389DB22F16D433186072211F14 /* RealmJS */, + D6E312BACE79ABA597D3356608BF4EB2 /* RNCAsyncStorage */, + D7DECEA18C5FEB0E379E912325EE271F /* RNDateTimePicker */, + 48DF568BE14D380D18E180663AB8A0BC /* RNDeviceInfo */, + F5804801F7A9ADD9EFCFE2EDD615D545 /* RNGestureHandler */, + E2D641100F95C28FB55DE43A08CEEDA4 /* RNI18n */, + A6A77ECDD6CA0C627FAAC3AD586D9EA4 /* RNImageCropPicker */, + A626DC5ABF765262C8D6538EDEA4BD95 /* RNReanimated */, + CC6A1ECEE35D4A598EC7B295B158B16C /* RNScreens */, + 5A0589C7E29A8EE2BA17FAC0F18E1CFF /* RNSVG */, + F2B3BDDCAE02085A03314D60CD209BC8 /* RNVectorIcons */, + 7D0065B5AFB1AA04D6FE9B0CE7A413FA /* SajjadBlurOverlay */, + AD13BB1E1F25E39906C9C2C0D76AB25D /* Yoga */, + ); + name = "Development Pods"; + sourceTree = ""; + }; + 7FF4FCE23DF07D05E656EDFDD507EB5C /* React-CoreModules */ = { + isa = PBXGroup; + children = ( + 58A29A2023A256185FC7647B5571360C /* CoreModulesPlugins.mm */, + 20DFB40EA0CDBCE7FCFCB4CA6DDB1C5D /* RCTExceptionsManager.mm */, + E1C47602A98504A57923B2CB6DC98076 /* RCTImageEditingManager.m */, + E08E41CE4E68E08FAC46BA384C95351A /* RCTImageLoader.mm */, + F3C18D3CD50119CC0AC01C8A7809D608 /* RCTImageStoreManager.m */, + 5E286A40B066889DDACEA8CA2A30114C /* RCTPlatform.mm */, + 66DC76772A148BEB2147D5E1BA1473B1 /* Pod */, + 1CD960611C6493C03E8BB6E43E5750BA /* Support Files */, + ); + name = "React-CoreModules"; + path = "../../node_modules/react-native/React/CoreModules"; + sourceTree = ""; + }; + 802F04E17108661271015D180BFE29B5 /* Support Files */ = { + isa = PBXGroup; + children = ( + 0167238ECFB7B1D1BF9823A1A485C87D /* Yoga-dummy.m */, + 1FC692A9E3F7DB40E517332BF35479E9 /* Yoga-prefix.pch */, + 6D78E97C0F10F1A6278E621D595881D5 /* Yoga.debug.xcconfig */, + BEB008BA868EA1EC65731DC8EF91BE76 /* Yoga.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../../ios/Pods/Target Support Files/Yoga"; + sourceTree = ""; + }; + 80BDBF9B8C9B4286B9C21DADC5F14485 /* Support Files */ = { + isa = PBXGroup; + children = ( + DA05895390B67BE67BF979AE869AFDF0 /* React-RCTBlob-dummy.m */, + 41BC158D4486D0684FFC2377CBF3E46A /* React-RCTBlob-prefix.pch */, + C395DCAC96B35C2DB0262500AE8F7AA1 /* React-RCTBlob.debug.xcconfig */, + E116B26DFABB4085F334E1F8EAD7A516 /* React-RCTBlob.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../../ios/Pods/Target Support Files/React-RCTBlob"; + sourceTree = ""; + }; + 8554756AD6FB563539E18EAF819C7056 /* event */ = { + isa = PBXGroup; + children = ( + 6E8C8F496918215CA7D4630C8249458E /* event.cpp */, + 346CF40E2B831E36B120EDC014A7924D /* event.h */, + ); + name = event; + path = yoga/event; + sourceTree = ""; + }; + 8614D9838DD174AE04BD750CF4614C9F /* Shapes */ = { + isa = PBXGroup; + children = ( + D69E3770A89636526A178540B298D407 /* RNSVGCircle.h */, + 8056A8F01A18D65968EAFF0ED8A9EC42 /* RNSVGCircle.m */, + FC9C5B2255AF060B7FBFD23A52247D88 /* RNSVGEllipse.h */, + 8A8549DCCA4A2E6DF0814076D2BD4403 /* RNSVGEllipse.m */, + 488C8D5FFF48CDD423E94F8411F026CE /* RNSVGLine.h */, + 8D294DB8AD550AE01235954A0480C082 /* RNSVGLine.m */, + C39D1C64E2C25DCF27E56267CAC2E11F /* RNSVGRect.h */, + 3A5C8C36C38A1242C5E500BB055C26E7 /* RNSVGRect.m */, + ); + name = Shapes; + path = ios/Shapes; + sourceTree = ""; + }; + 86277ED587D66F28AAFEEDF106D3145B /* Support Files */ = { + isa = PBXGroup; + children = ( + 5588769C415DB2F73AA197EA76CB3A3B /* RNDeviceInfo-dummy.m */, + B6D6F95A518F88764824BAAA11B0D1CF /* RNDeviceInfo-prefix.pch */, + 18409BBB0F8527F9FECBC3B67EE04B55 /* RNDeviceInfo.debug.xcconfig */, + C1C5FDA912FF9C9818908E64D95A7FA8 /* RNDeviceInfo.release.xcconfig */, + ); + name = "Support Files"; + path = "../../ios/Pods/Target Support Files/RNDeviceInfo"; + sourceTree = ""; + }; + 86824F30919EB1B935A206475B91BFC5 /* Support Files */ = { + isa = PBXGroup; + children = ( + 13FCC776626B411C9D10280D345B3FEF /* React-RCTSettings-dummy.m */, + A2D4717A7BCE8B5820BE4A05613B8DFB /* React-RCTSettings-prefix.pch */, + 7BA22630E9E815996528155E40B775FF /* React-RCTSettings.debug.xcconfig */, + 28DECD859633FA4BBE1CADA231BA4614 /* React-RCTSettings.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../../ios/Pods/Target Support Files/React-RCTSettings"; + sourceTree = ""; + }; + 8BA3B441CBEFB3BE6A1BBD51E2AB461F /* React-RCTBlob */ = { + isa = PBXGroup; + children = ( + 45ADC42A5608B722F30A12FE991AECE6 /* RCTBlobCollector.h */, + 611BB79A62C1805548CF4B9EBF9B396D /* RCTBlobCollector.mm */, + 0290C60394E0255570BCAAA91E9EB915 /* RCTBlobManager.mm */, + A7B3F40B15AB21B64BB43D349B475E89 /* RCTFileReaderModule.m */, + A9C25C98566450BF81C14395258BEFA3 /* Pod */, + 80BDBF9B8C9B4286B9C21DADC5F14485 /* Support Files */, + ); + name = "React-RCTBlob"; + path = "../../node_modules/react-native/Libraries/Blob"; + sourceTree = ""; + }; + 8C125C44832D7893EA20670B2BA6E95F /* Drivers */ = { + isa = PBXGroup; + children = ( + 39F59C6608D23BF6B9BEFF5F883FF644 /* RCTAnimationDriver.h */, + 27934C6A9D8FC9428845873CE3F59D1A /* RCTDecayAnimation.h */, + 021AE3D22955FE68DC8240C4AA972CEF /* RCTEventAnimation.h */, + D3F6FE7EB8CF89C4512DFDFC29F6B158 /* RCTFrameAnimation.h */, + AF9EA62BE9D8C4F00378682201A67B18 /* RCTSpringAnimation.h */, + ); + name = Drivers; + path = Libraries/NativeAnimation/Drivers; + sourceTree = ""; + }; + 8C5F2ABF0F57D21A83647493DC132F37 /* React-RCTText */ = { + isa = PBXGroup; + children = ( + 26DBEADAAACD4D12D8E5D883401E81E8 /* RCTConvert+Text.m */, + 5CFF9A356B85B352D00278459B8D9CCE /* RCTTextAttributes.m */, + 003E246C1157DE8FE24C891ACA331FEC /* BaseText */, + 6B6B92BCCC79DA7B58A97AEA3A5C3134 /* Pod */, + CE6251191E5B3E9FFBA3413510227858 /* RawText */, + 3A3245CB38220FD46B83E0C178DBBDB9 /* Support Files */, + 050296FF3E759CA7707D3E38E386E531 /* Text */, + BB8E22E709FC0D5593F183867B3586AE /* TextInput */, + D134E2F28099C11D9028F58EB184BAC8 /* VirtualText */, + ); + name = "React-RCTText"; + path = "../../node_modules/react-native/Libraries/Text"; + sourceTree = ""; + }; + 8D437BDC64D21284E9B42ADA811F7BAF /* Support Files */ = { + isa = PBXGroup; + children = ( + 07EB356D81A2299BF9A6EE28167CAE77 /* React-RCTImage-dummy.m */, + C7E9C56E7BD159D024263E249C3F5CBC /* React-RCTImage-prefix.pch */, + 3948AB7C10CF3300C13AC6C89D489D0F /* React-RCTImage.debug.xcconfig */, + D3C1A1E0CB4B37C17A2CD769053FB56A /* React-RCTImage.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../../ios/Pods/Target Support Files/React-RCTImage"; + sourceTree = ""; + }; + 8DC23D78E9F98A0A463C3C4B3BB97406 /* apple */ = { + isa = PBXGroup; + children = ( + E64810C093021781585B0D608F1C2B77 /* external_commit_helper.cpp */, + 348CA285F1CD38B21E53882FAF148561 /* keychain_helper.cpp */, + ); + name = apple; + path = apple; + sourceTree = ""; + }; + 8F5BCDB35FD11ADF8D1E663437AE379C /* Support Files */ = { + isa = PBXGroup; + children = ( + 654850F713E88C81441088B8D23B03E3 /* FBLazyVector.debug.xcconfig */, + 1B91917ACD9BD7E17EAE112C4F11646F /* FBLazyVector.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../../ios/Pods/Target Support Files/FBLazyVector"; + sourceTree = ""; + }; + 902DFD44D22C181355611933E0B2728A /* util */ = { + isa = PBXGroup; + children = ( + 06E34EEC66EDABFA4C144E5099D7C1DB /* uuid.cpp */, + ); + name = util; + path = util; + sourceTree = ""; + }; + 90AA4D88F46A85719738C98BF156E2C1 /* Pod */ = { + isa = PBXGroup; + children = ( + E39BEB58553BC2E5BDD9CD11A3759A86 /* LICENSE */, + E2B156C04F53B8688F8EF29CB338ECCD /* react-native-viewpager.podspec */, + A8A731BE94CAD23F58A7790A23BBCEB8 /* README.md */, + ); + name = Pod; + sourceTree = ""; + }; + 9158938AF0C6F19A9251668495FC4597 /* Support Files */ = { + isa = PBXGroup; + children = ( + 204510311091D8ED3419474226B6BC55 /* React-RCTNetwork-dummy.m */, + 7101479F5CD6F5D2501A4885D066358C /* React-RCTNetwork-prefix.pch */, + 66105FE56A71FB57AA18EF679C63DF3E /* React-RCTNetwork.debug.xcconfig */, + E521D3884D7743C6A3BA43581766A9F1 /* React-RCTNetwork.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../../ios/Pods/Target Support Files/React-RCTNetwork"; + sourceTree = ""; + }; + 91F6D219C087BC951038A1657E5715E9 /* Support Files */ = { + isa = PBXGroup; + children = ( + 8EAFCF2BA927CBEBBF9AD655458D8192 /* RCTTypeSafety-dummy.m */, + 7C539B625A5B05FB54809C8FCA2632D0 /* RCTTypeSafety-prefix.pch */, + 0E90BEA1E6B73EE372DBC2D9355CB855 /* RCTTypeSafety.debug.xcconfig */, + 6A114333805DE8B6D7915EF12D5DF587 /* RCTTypeSafety.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../../ios/Pods/Target Support Files/RCTTypeSafety"; + sourceTree = ""; + }; + 921AC115FE7BA1C9DAE579F5E05F80DF /* Pod */ = { + isa = PBXGroup; + children = ( + 3791394DC07762B51D548EDD4FD8A643 /* LICENSE */, + 807C04EC8D2B70429B8103016805BBF4 /* README.md */, + 33BD824CEDB6D9352AB434EA1F3C4906 /* RNVectorIcons.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + 92C698A3EF340378ECF6D9D16764CB5D /* React-cxxreact */ = { + isa = PBXGroup; + children = ( + E9CC570673B58E56963AECBFA3301743 /* CxxModule.h */, + 37313A0E08F88C05FAD064840406F19D /* CxxNativeModule.cpp */, + 55DDE65271BFAC09970FFB0E23CBB6B9 /* CxxNativeModule.h */, + A5CCFB3F507FFB1DCA7E4771F2072483 /* Instance.cpp */, + 77013FFDD7D10A1C58EFA2A192BEC4E7 /* Instance.h */, + 29B8548DF2FAAE668A47DDC7DC7FB6BF /* JsArgumentHelpers.h */, + 9E0B79CBAD6CF20D99456332EC9F2F93 /* JsArgumentHelpers-inl.h */, + 83BE34F43B3A79F6AC62C136666676A4 /* JSBigString.cpp */, + 7966EC2076A87C769C3EEEB42BC2058E /* JSBigString.h */, + BD377210FCCB9285547E9EE90D83172E /* JSBundleType.cpp */, + FC3AB04AF911E80D6D03D49FC7610C8D /* JSBundleType.h */, + ABE3DCD30616189C0CC9FF6A76E510A4 /* JSDeltaBundleClient.cpp */, + 917E167DDC625A3B5F0FA252B68BF0DF /* JSDeltaBundleClient.h */, + 26172EA85216B7BD62FF1AAB34F5ADCF /* JSExecutor.cpp */, + 97F0E880EB319BA43FD57E74E858626D /* JSExecutor.h */, + 55B86FE4183ADD1BA410C22500D82980 /* JSIndexedRAMBundle.cpp */, + 474CD3530B055BEC55692F78548E3020 /* JSIndexedRAMBundle.h */, + 442DEF70E3861DF40A77C76F5ECFB9AF /* JSModulesUnbundle.h */, + E2D87BB320FA21D43D6E1FC934AE8602 /* MessageQueueThread.h */, + 94F054948DE6688ED71EBB5E10772744 /* MethodCall.cpp */, + EB409309980C3946B8F2FF7A6E8536C0 /* MethodCall.h */, + 5FDF031501671A59C7EF319FCA68AAB9 /* ModuleRegistry.cpp */, + 20650AC49E3FFDA52AD78306EACD6CBB /* ModuleRegistry.h */, + 16F121E5F351EECCA7E28A8A34B652C4 /* NativeModule.h */, + F8B65144CE72D1A5A656CB164155E32E /* NativeToJsBridge.cpp */, + 50D91B98B644180F17E2F0B921107D6A /* NativeToJsBridge.h */, + 89923F79C73F544563E6D81292AA6C67 /* RAMBundleRegistry.cpp */, + EFB04FC9AA8EBB101ECAC8F795131780 /* RAMBundleRegistry.h */, + EFD4D34DBD4C75DCC17359BBB6B280A9 /* ReactMarker.cpp */, + F8F52759CFB3268D4F2AF2210007821F /* ReactMarker.h */, + 7D62A6FE1F4E93AE3B6B8B800E295FD0 /* RecoverableError.h */, + 380B454005B16D2E04E86FD10E465334 /* SharedProxyCxxModule.h */, + 40CC4DC9B4E34D586733EDB1F19B8E96 /* SystraceSection.h */, + 2FFAB17DEA191E05326D0991DA0D5088 /* Pod */, + 098A2FC0DDF5B4829A68C47D972F1A32 /* Support Files */, + ); + name = "React-cxxreact"; + path = "../../node_modules/react-native/ReactCommon/cxxreact"; + sourceTree = ""; + }; + 9425C81D875DE39DC7DD338844012F1C /* Support Files */ = { + isa = PBXGroup; + children = ( + 36E5E2214962342800ACC3F2135BB80B /* RealmJS-dummy.m */, + B9EB7FBC0AA72950FF0DEE6F7B623805 /* RealmJS-prefix.pch */, + 283C69074FAF5430D2477C75D47095E6 /* RealmJS.debug.xcconfig */, + 64E7DDD956AB1E2A092944B6AF63B511 /* RealmJS.release.xcconfig */, + ); + name = "Support Files"; + path = "../../ios/Pods/Target Support Files/RealmJS"; + sourceTree = ""; + }; + 94609C42254DB90E2E7D9CC1DDBC5CEA /* Support Files */ = { + isa = PBXGroup; + children = ( + 317DCCB2266FA4F0D863D2FF87D753D8 /* ReactCommon-dummy.m */, + CDA822342F0DF2D879CFD0C97942E0BE /* ReactCommon-prefix.pch */, + 47D4817F5F3DA8A41E569EA5707AC872 /* ReactCommon.debug.xcconfig */, + 2F53E5FC0AE7A7F04ADD59FBE3515F7A /* ReactCommon.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../ios/Pods/Target Support Files/ReactCommon"; + sourceTree = ""; + }; + 95AB3FCBBE030CDF9209B75EA5DFDC0A /* TOCropViewController */ = { + isa = PBXGroup; + children = ( + 244DE127DE28D1B8EEDDF50FCEE90A68 /* TOActivityCroppedImageProvider.h */, + A02AE013BE954855C804E7FFF27F4FD6 /* TOActivityCroppedImageProvider.m */, + 622D780B90D2B0616B45C93086D98749 /* TOCropOverlayView.h */, + 6E310F41375B2CDC6DBCFA7531AC732F /* TOCropOverlayView.m */, + 78456FC43D816C9D11B0E2DCEFF709E4 /* TOCroppedImageAttributes.h */, + 39757C6A78AEA42D99A9E3A1DC50D1D5 /* TOCroppedImageAttributes.m */, + 3EC9880F8DFF117056E1E65A755117F7 /* TOCropScrollView.h */, + D9ED2BBBEB16BBD2FB4D78F4163B4E6E /* TOCropScrollView.m */, + 1A416EE5149AFE4AD63A42AA4505BD18 /* TOCropToolbar.h */, + 133B7808900C93D13A7EB7774B2EFC10 /* TOCropToolbar.m */, + DF591E2F6A099FEAF3E493E019C85F91 /* TOCropView.h */, + 7A97DED01EE577E8F13121AC4765C4E2 /* TOCropView.m */, + 16BA33BF94AC01E657555FEEFC1452AC /* TOCropViewConstants.h */, + 308492FF3FCAEDED219E8CD731E0EDC1 /* TOCropViewController.h */, + B065EA255C0C0817DCE58B78D96E42B5 /* TOCropViewController.m */, + 5BDD638591668E011367B1EA21972E6E /* TOCropViewControllerTransitioning.h */, + F297E23C4B698BE108E1289ED8B3C3BD /* TOCropViewControllerTransitioning.m */, + 5478DAD9F3C13E4EF7B3DE02B08C2DF2 /* UIImage+CropRotate.h */, + 2E96C803AE2147F1CBD7CA1C3A09E6B9 /* UIImage+CropRotate.m */, + F4294AC68811CBE2FF7338C1182BC797 /* Resources */, + 2F70E4BFC00A88643D14631614BA95CB /* Support Files */, + ); + name = TOCropViewController; + path = TOCropViewController; + sourceTree = ""; + }; + 977264AEE50808062A579C8EC6C4D300 /* Pod */ = { + isa = PBXGroup; + children = ( + D893FC8D56FFB338E8A2C88F6B18E6A6 /* LICENSE */, + F8864C7106ED8707B68D54E0B25D263D /* README.md */, + 72078927C310B96D92A56714ED3BF9A4 /* RNSVG.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + 9795FC9C2B6743CEDF90E4C6AF106F6B /* src */ = { + isa = PBXGroup; + children = ( + 13BFC7BEF70BC984B50057EC93EB4E91 /* js_realm.cpp */, + 6FA615BE5A848690598E817DA94371E1 /* rpc.cpp */, + A2CDEA8ED38C592433B346C829675847 /* ios */, + BE0C9E97F93D2F597D680E7787349478 /* jsc */, + 79F4644B0F44925A5852755CEB8FB778 /* object-store */, + ); + name = src; + path = src; + sourceTree = ""; + }; + 97EB705D00BFD5A896CB02B6757E7BA6 /* Default */ = { + isa = PBXGroup; + children = ( + BBD867FC5DF67F938CCD214B8075D239 /* Base */, + B68E125F54829D53570EC03F60AC724C /* CxxBridge */, + 494A6914491D0C15A8651081F9251837 /* CxxModule */, + 06CEDA53C03CF8ACA33735B08076276D /* CxxUtils */, + C9004A2B05CBF4F5A5A3F223A852714F /* Modules */, + 1B0ACF2F2F00D0626EADE7B90AF58812 /* Profiler */, + 0DBFC6D65AC860D185F3D68C7ABFD98D /* UIUtils */, + 162BF281BEFFF8FD20A21A0D91A4FDBD /* Views */, + ); + name = Default; + sourceTree = ""; + }; + 9857B6C51954A7518423B78FFA01CFD6 /* React-RCTImage */ = { + isa = PBXGroup; + children = ( + 9B87E959CBFDFF8AA7561A43A3E6BA69 /* RCTAnimatedImage.m */, + EE48833A088C28D4F67F1E84A5F5D98A /* RCTGIFImageDecoder.m */, + 3C9C88EC3F50EAD3978323E775FE295F /* RCTImageBlurUtils.m */, + 8CAADAA2FB37B0EDC8DCBA019823A011 /* RCTImageCache.m */, + 73B7B1302F2055B7FE4771197F78DB94 /* RCTImageShadowView.m */, + D0E5E21082C8136283C3279F482F2CF9 /* RCTImageUtils.m */, + 4D4D966CB0B5DBF5A95CD5B0ACBB2816 /* RCTImageView.m */, + 64FDCB91E651F23569A78DD5D1E6D767 /* RCTImageViewManager.m */, + 5A225CCAB9B5D0F17F06297F84DBFD18 /* RCTLocalAssetImageLoader.m */, + AC8F935888D89DAB7BBE23F04837F50B /* RCTResizeMode.m */, + F4E8900AEC7EBB064EAF3AAF3E70DEEB /* RCTUIImageViewAnimated.m */, + A8237E1237C0DA25A46D86722F3707E4 /* Pod */, + 8D437BDC64D21284E9B42ADA811F7BAF /* Support Files */, + ); + name = "React-RCTImage"; + path = "../../node_modules/react-native/Libraries/Image"; + sourceTree = ""; + }; + 9BE2E1FB6A3ECA6A8814A73EF37069EF /* react-native-viewpager */ = { + isa = PBXGroup; + children = ( + CA289216DC9FD5C70F620E451E66F813 /* RCTConvert+UIPageViewControllerNavigationOrientation.h */, + E5376DDB2D85FC75CCE5303BF2D3E8CA /* RCTConvert+UIPageViewControllerNavigationOrientation.m */, + BCF2DCAD493203C1F4D684B7A5CF9BAC /* RCTConvert+UIPageViewControllerTransitionStyle.h */, + B25A0FDBB0547E10A7972F8020192DD2 /* RCTConvert+UIPageViewControllerTransitionStyle.m */, + EC3FE2D4511AB643734751582E105065 /* ReactNativePageView.h */, + 35F289C6F016B241D5C78632863B9D6E /* ReactNativePageView.m */, + A0BD07828DFEFB618A3614A1A47B1DEB /* ReactViewPagerManager.h */, + B597051B22AC9B39D56A2CE220DD9884 /* ReactViewPagerManager.m */, + 90AA4D88F46A85719738C98BF156E2C1 /* Pod */, + B80E1B9EDF3C14ACE28ED8DA16C7F362 /* Support Files */, + ); + name = "react-native-viewpager"; + path = "../../node_modules/@react-native-community/viewpager"; + sourceTree = ""; + }; + 9E6CFFD5C6E0E299192BEFF9A8EE30A1 /* CoreModulesHeaders */ = { + isa = PBXGroup; + children = ( + 2777BB067D42069AD491352579907C82 /* CoreModulesPlugins.h */, + 3AD259E000F1338CD831F8FBF8D9D702 /* RCTExceptionsManager.h */, + 2389E7E0084441B99503584973879F56 /* RCTImageEditingManager.h */, + 1A0D8B9B0F0AC45354196CBE7523F67F /* RCTImageLoader.h */, + 439EEEB7E435E5A1685CF9A1BEB2DB2F /* RCTImageStoreManager.h */, + 52369F214F7D3999AAD2FB1D35F2712F /* RCTPlatform.h */, + ); + name = CoreModulesHeaders; + sourceTree = ""; + }; + 9EDAE50192C8FBB8DD6E63F780BB0090 /* jsi */ = { + isa = PBXGroup; + children = ( + 7F1AAC115197697EA406660D31E93911 /* decorator.h */, + E77DEB601F24379C5CEC66EE3A1C906E /* instrumentation.h */, + 035CA209D55884AEE962D8DA1C524D77 /* jsi.cpp */, + 473766C1AD2BD2C63C4E947CEA6FED0A /* jsi.h */, + 4F733DE7CEA64E779D2AB5344A8D210F /* jsi-inl.h */, + 8E92E932257A0D65465465F51015F278 /* JSIDynamic.cpp */, + F349B8A8824E8AB6307022DD29F00082 /* JSIDynamic.h */, + 64C33B8BCF1452B2A9CF1363C0A924DE /* jsilib.h */, + EF96A2838F05A4DEE186B9590D7506B2 /* jsilib-posix.cpp */, + 38367C90EB7F9DF88F6647A98746CD91 /* jsilib-windows.cpp */, + 7D3CE2BDC12B2467B74974FD13756591 /* threadsafe.h */, + ); + name = jsi; + path = jsi; + sourceTree = ""; + }; + 9F1D206CAC3ADB9065C9F52F6D4BA7A9 /* Drivers */ = { + isa = PBXGroup; + children = ( + D9B8ABBC2F41C5E652A521B7E152EE5D /* RCTDecayAnimation.m */, + BDC2EF16D74838BED8B5B6EA4B2F3AF1 /* RCTEventAnimation.m */, + 959726F7722E5F772CD2A0A44E997329 /* RCTFrameAnimation.m */, + 4917A772D55F70B7964C13395809088D /* RCTSpringAnimation.m */, + ); + name = Drivers; + path = Drivers; + sourceTree = ""; + }; + A111A978429DCCE7C1FDD642E1A39AB7 /* Pod */ = { + isa = PBXGroup; + children = ( + 3B2F202F74A14CB40AFA18A27C79F93C /* FBReactNativeSpec.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + A1366E1E9FA652444082BA6C0D8F0CF1 /* Pod */ = { + isa = PBXGroup; + children = ( + F9E5BB5FF7517237264F2A1398A0BF6F /* LICENSE */, + E8EBD3506BEC6EBA7A00483A26A9DFC7 /* README.md */, + 760E2E5EE6FA20ED6590B59190A00FC7 /* RNCAsyncStorage.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + A16284E2B00F937817CCCB2AEA088471 /* Support Files */ = { + isa = PBXGroup; + children = ( + 3853C8D86A15C7BB90D68F4232161F9E /* RNScreens-dummy.m */, + 688712FE524FD7615FFC4E8A3010E879 /* RNScreens-prefix.pch */, + 6E1E723D7E6C58E0459B90E5BECBFA9C /* RNScreens.debug.xcconfig */, + 9CBBB48B3337A174E52F7DD650D09253 /* RNScreens.release.xcconfig */, + ); + name = "Support Files"; + path = "../../ios/Pods/Target Support Files/RNScreens"; + sourceTree = ""; + }; + A2CDEA8ED38C592433B346C829675847 /* ios */ = { + isa = PBXGroup; + children = ( + 71B3840B5A07655243EB6F42D202C011 /* platform.mm */, + ); + name = ios; + path = ios; + sourceTree = ""; + }; + A30139011D06DB56DF531CEF3BC5ACA4 /* React */ = { + isa = PBXGroup; + children = ( + 4DDFF3030CD6D14FBA3582980CBEEC9A /* Pod */, + D882439F8D475CFD1632BB5A7C3EE08B /* Support Files */, + ); + name = React; + path = "../../node_modules/react-native"; + sourceTree = ""; + }; + A626DC5ABF765262C8D6538EDEA4BD95 /* RNReanimated */ = { + isa = PBXGroup; + children = ( + 498FF31B1E6C74659361EEE84D4FBCB2 /* REAModule.h */, + 2D7DE4EB9109A0E72F16B94222DAAF2D /* REAModule.m */, + 93DCCC4CB2F1BC707B6DDBA8712CBC6E /* REANodesManager.h */, + A673AC31E5E0DB84B2CD1D88E4E2F6EE /* REANodesManager.m */, + F6087E3D32B88E643245FC210E5F5DEB /* REAUtils.h */, + 671D73ECF8BE13C12E97CF6012A48E77 /* Nodes */, + B332AD747F992402C119E7D5397725C5 /* Pod */, + 11990B8B4FEA5F8603CA336DB3CF246C /* Support Files */, + 4A1F24CC09371BF5CFAB55EE0C9D8297 /* Transitioning */, + ); + name = RNReanimated; + path = "../../node_modules/react-native-reanimated"; + sourceTree = ""; + }; + A6A77ECDD6CA0C627FAAC3AD586D9EA4 /* RNImageCropPicker */ = { + isa = PBXGroup; + children = ( + 8AC88B3783075D3D6F9D3BDE7B427464 /* Compression.h */, + 05507D88C44AEF586CB7EB8606FE6BBD /* Compression.m */, + 11B4F4AFD4F5FE6CEF8F09868E7DCDC6 /* ImageCropPicker.h */, + 30B8814FC8711D3B24E181C9AF167993 /* ImageCropPicker.m */, + FD9AFB930F448B2F372B8557499F0B38 /* UIImage+Extension.h */, + C87C59D9BB4054221F29CD49D9A388FC /* UIImage+Extension.m */, + 161F4A80B880B5B05C530E0A09A2B327 /* UIImage+Resize.h */, + 70EF3D448847749995CB9ABEE7EB1F7D /* UIImage+Resize.m */, + E3F5BDC2DDF98AA2BCE41275F0C1E2BF /* Pod */, + DB6685FC6B1290B825AA1315D93E102A /* QBImagePickerController */, + D51A4B7F7AC6953A04036646235C74FE /* Support Files */, + ); + name = RNImageCropPicker; + path = "../../node_modules/react-native-image-crop-picker"; + sourceTree = ""; + }; + A7CE88DF77E075F5E19B921C4FADB2D7 /* Support Files */ = { + isa = PBXGroup; + children = ( + ED5C83E6181A007B187B25C92472C442 /* RNCAsyncStorage-dummy.m */, + AB276719DCB2FD03FF7420CC81AA28FD /* RNCAsyncStorage-prefix.pch */, + AAF49A208AFF64641BA96943EE470B84 /* RNCAsyncStorage.debug.xcconfig */, + 536CA5AE29E2C4F356EC4433357DBFB5 /* RNCAsyncStorage.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../ios/Pods/Target Support Files/RNCAsyncStorage"; + sourceTree = ""; + }; + A8237E1237C0DA25A46D86722F3707E4 /* Pod */ = { + isa = PBXGroup; + children = ( + F021518DC5551CA91B5C48F5A9961C1C /* React-RCTImage.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + A9B1C326CEF06EC7C33934BAF67F2E11 /* React-Core */ = { + isa = PBXGroup; + children = ( + 9E6CFFD5C6E0E299192BEFF9A8EE30A1 /* CoreModulesHeaders */, + 97EB705D00BFD5A896CB02B6757E7BA6 /* Default */, + 26AC98E6EC4A8A5B22D76918263BBB16 /* DevSupport */, + E090399E915D3099C06AAACEBC460BB8 /* Pod */, + AAE13D0B6ECEAC4D916F377121B485E6 /* RCTActionSheetHeaders */, + 3C3F4D294A81E53C1702D11D0A2EEB85 /* RCTAnimationHeaders */, + 2647479ED5842327D730B63350670069 /* RCTBlobHeaders */, + 5D882F7FC3B2C903F7BE4245B83BDD5B /* RCTImageHeaders */, + FB4C2F80A748AE9D8847D8D60534C6A5 /* RCTLinkingHeaders */, + 6C68CB3FEBCBA10739B5A10FB4FB2269 /* RCTNetworkHeaders */, + EEFDFA8600BE307CD3089356FD93E185 /* RCTSettingsHeaders */, + B3F9616F5C6F83F6A4187854FC61438D /* RCTTextHeaders */, + F1472E3E6F3AF69022A5462E68D0A91E /* RCTVibrationHeaders */, + 21AD6A15ABE89FFE5FF384C516E59403 /* RCTWebSocket */, + 09011F369CB8C39F568BEC2CC5799FF8 /* Support Files */, + ); + name = "React-Core"; + path = "../../node_modules/react-native"; + sourceTree = ""; + }; + A9C25C98566450BF81C14395258BEFA3 /* Pod */ = { + isa = PBXGroup; + children = ( + 473931876F1AEFF90AEEED73DA02825D /* React-RCTBlob.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + AAE13D0B6ECEAC4D916F377121B485E6 /* RCTActionSheetHeaders */ = { + isa = PBXGroup; + children = ( + C0EEEF34099B1049223F1BF0653EBD6A /* RCTActionSheetManager.h */, + ); + name = RCTActionSheetHeaders; + sourceTree = ""; + }; + AC9328240DA0E8F237AAF8F5DAC3F133 /* Support Files */ = { + isa = PBXGroup; + children = ( + 6B58E2A464F3DAD8869DEE62AD5CF268 /* React-jsinspector-dummy.m */, + 603FDBBE46E864B0282989E0F4BF22DB /* React-jsinspector-prefix.pch */, + 1D5C453C991C187EF2FDB8346552C2CD /* React-jsinspector.debug.xcconfig */, + C748DD3668E9B96CF437C51C769C17E9 /* React-jsinspector.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../../ios/Pods/Target Support Files/React-jsinspector"; + sourceTree = ""; + }; + AD13BB1E1F25E39906C9C2C0D76AB25D /* Yoga */ = { + isa = PBXGroup; + children = ( + 6B72A60E1F3388D78FDBAA0F988CF489 /* Bitfield.h */, + B64309719437112F5261F30917B4913D /* CompactValue.h */, + 9BAD81413676A3970DEFA4E0E96E20F8 /* log.cpp */, + 3EC517E5BE2DFFDFE8AE4A617845A458 /* log.h */, + 5625FE1D66C2F21DF257DFAFBE8BF593 /* Utils.cpp */, + 70E7BF838C02C0A2FF48EB19B10BDC89 /* Utils.h */, + 835F564244FF1FA12CFD92F2C1243C9A /* YGConfig.cpp */, + 8C31AF50E439F09B91CECD6906F04AA1 /* YGConfig.h */, + 2C157020D4C14F52330CF9012A173270 /* YGEnums.cpp */, + C2797371596405ECDD234B6669CE130B /* YGEnums.h */, + F0FE00D4A6E154DF649B2A6827594428 /* YGFloatOptional.h */, + B14FC72E18B258E04E7635FC57AF8A8B /* YGLayout.cpp */, + DCBFB98B4E7DF1747B643F0A9B008B5A /* YGLayout.h */, + 160186E58099704CF76691F19E26773A /* YGMacros.h */, + 80BE25F876B3315AB26D2F1265576715 /* YGNode.cpp */, + CDFE0C544B14818EEC7303C7B4D66DA2 /* YGNode.h */, + B1EE3B23EC59828C54A48585CC2D1658 /* YGNodePrint.cpp */, + 3F04FC67983BCB8B0133D4FDF259F902 /* YGNodePrint.h */, + A2E550999B0663B10CFA9211833290ED /* YGStyle.cpp */, + 55371BBADF13052AF9F3FCF822BEDAF1 /* YGStyle.h */, + 3357ED357DB398B762C0F992B6A78144 /* YGValue.cpp */, + E9A9997E1BB76489DBFA47AC064187D2 /* YGValue.h */, + 56400AC8824BA0478C63849EF848B834 /* Yoga.cpp */, + A1553B8C9829BE1F8B64C7683588CA0D /* Yoga.h */, + 1C010F75D55C114421EC247CFC6996E5 /* Yoga-internal.h */, + 8554756AD6FB563539E18EAF819C7056 /* event */, + 702F19A1765555798938A776CF3084EB /* internal */, + B060DD2120EAB976F70AE5799BDAA20D /* Pod */, + 802F04E17108661271015D180BFE29B5 /* Support Files */, + ); + name = Yoga; + path = "../../node_modules/react-native/ReactCommon/yoga"; + sourceTree = ""; + }; + B060DD2120EAB976F70AE5799BDAA20D /* Pod */ = { + isa = PBXGroup; + children = ( + 573771340335F63FB74E21B2C00942AA /* Yoga.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + B24F2AD6DD0C1B98601051B4F2AFED78 /* React-RCTActionSheet */ = { + isa = PBXGroup; + children = ( + A3982C7F17CB617859CB2B886E1901E8 /* RCTActionSheetManager.m */, + 1C77A6B3226B88789D2F9918B512DAC2 /* Pod */, + 7E5EB877C7620C3F4B05DBE10CED0E9F /* Support Files */, + ); + name = "React-RCTActionSheet"; + path = "../../node_modules/react-native/Libraries/ActionSheetIOS"; + sourceTree = ""; + }; + B332AD747F992402C119E7D5397725C5 /* Pod */ = { + isa = PBXGroup; + children = ( + FA311BDC345AB9232FCFD21DB7777AB9 /* LICENSE */, + 206A0193A73EC06DA02EE53FFFC6A62D /* README.md */, + 7D3BA4BF8CD995CA9FE2B7582091BB8A /* RNReanimated.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + B3D8158E8D1B2830F780BBE8CDE2F667 /* glog */ = { + isa = PBXGroup; + children = ( + C4102E395404EDBFE1BC8A6B7A82CD0C /* demangle.cc */, + 647C381FBA74C3BE6C654B29F505BAD9 /* log_severity.h */, + 8DFDDA5B1E2576F50B76E5D892C73D1F /* logging.cc */, + 979477B811D2A9A5E419640FEE51DA5C /* logging.h */, + 2929E06F27F8A455AB792F3500755937 /* raw_logging.cc */, + 77DEEF8F2C9F9BFD0DF1D006B5AE194F /* raw_logging.h */, + D265F8DEC74CFD78F3C12D3F97848D5F /* signalhandler.cc */, + 9BA09C69ED5FCBA261D92B6C35DF9217 /* stl_logging.h */, + E0842FD5F2B9FB71D5541CC3963510CB /* symbolize.cc */, + 4FED59ED46F5F9A4D35A34040C39E4EC /* utilities.cc */, + 991467A3F17C445A7459236E0FFCC332 /* vlog_is_on.cc */, + BABACAF6BA73DA602B9900C26DCAB72F /* vlog_is_on.h */, + 5950C77FBE5D458623780E4E11F0F467 /* Support Files */, + ); + name = glog; + path = glog; + sourceTree = ""; + }; + B3F9616F5C6F83F6A4187854FC61438D /* RCTTextHeaders */ = { + isa = PBXGroup; + children = ( + 1C9D735D2B3A99051321672481DAA4B2 /* RCTConvert+Text.h */, + 60E6770885A054426AD4666D82C8755A /* RCTTextAttributes.h */, + 37EE198D102E170EDB1773A37BC251D3 /* RCTTextTransform.h */, + F62F5F5129F01191B824533A38FAB63E /* BaseText */, + 225C52D1351335A6C9956860F12FBE7A /* RawText */, + D0F453B8B93F8A837DEE59674299FCCD /* Text */, + 70644A07A46E76A12EA053B5390D16A2 /* TextInput */, + B64E0AF369146A9089356098FA5A11F0 /* VirtualText */, + ); + name = RCTTextHeaders; + sourceTree = ""; + }; + B4DDD3E1A4A05AB1C20624EA9319EB6E /* Support Files */ = { + isa = PBXGroup; + children = ( + 7EB664D28A200314BAEAED86A4849CA2 /* RCTRequired.debug.xcconfig */, + EF6310C75F540317D21E61D7B90B2E3E /* RCTRequired.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../../ios/Pods/Target Support Files/RCTRequired"; + sourceTree = ""; + }; + B5E3F9E547B4B5AB4785E3752D9ACC79 /* Pod */ = { + isa = PBXGroup; + children = ( + AFC7D201C19AAE21DACA70AE7E67DACE /* LICENSE */, + C259F1F9540724FE9491B3F58571BEEC /* react-native-onesignal.podspec */, + A07529BB00BA59F60F821A74792F05BF /* README.md */, + ); + name = Pod; + sourceTree = ""; + }; + B64E0AF369146A9089356098FA5A11F0 /* VirtualText */ = { + isa = PBXGroup; + children = ( + 2078B3DDC90E5F15CFB05EF4FE84594A /* RCTVirtualTextShadowView.h */, + AF3A7DDA6A07B99ABEC8E2DA1BB45B5A /* RCTVirtualTextViewManager.h */, + ); + name = VirtualText; + path = Libraries/Text/VirtualText; + sourceTree = ""; + }; + B68E125F54829D53570EC03F60AC724C /* CxxBridge */ = { + isa = PBXGroup; + children = ( + C0E54AD4141F7D46B27981B4D1870991 /* JSCExecutorFactory.h */, + 72BBD3BF5FBF0A74100107A04314D66D /* JSCExecutorFactory.mm */, + 526D076208BDAAD49E764C55E3528242 /* NSDataBigString.h */, + 259805F4A7ACBDA5CDF175A08F053AA4 /* NSDataBigString.mm */, + 21F9181AB47F5E724D6ABD4A643641F1 /* RCTCxxBridge.mm */, + 7E97F62553A84B08999CB4CD33EEF910 /* RCTCxxBridgeDelegate.h */, + FBFAF7E6A054D8C885F2A1820099BB3A /* RCTMessageThread.h */, + F1484D73E6383C4C0A58949B95EFCE6A /* RCTMessageThread.mm */, + 8916A76B106AFBE9CAD06632900579EF /* RCTObjcExecutor.h */, + 3B67F72E769297CA45887507876A3015 /* RCTObjcExecutor.mm */, + ); + name = CxxBridge; + path = React/CxxBridge; + sourceTree = ""; + }; + B80E1B9EDF3C14ACE28ED8DA16C7F362 /* Support Files */ = { + isa = PBXGroup; + children = ( + BBBE4C9FA273586C70D4759021010E97 /* react-native-viewpager-dummy.m */, + 7C908B5C0E43161DF6E78F59FFACD58E /* react-native-viewpager-prefix.pch */, + A83BE372D6B93D77F36825B1EE4B548D /* react-native-viewpager.debug.xcconfig */, + 3C2F60F0D208A7548DC7A3FEFD91B723 /* react-native-viewpager.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../ios/Pods/Target Support Files/react-native-viewpager"; + sourceTree = ""; + }; + BA49019C4A4EF44165B12AE5A5E479F5 /* Support Files */ = { + isa = PBXGroup; + children = ( + CD9ED75EFF35808C586A1CF79D26DDA7 /* react-native-geolocation-dummy.m */, + 848600E22B93B63B286CA9773400C0D7 /* react-native-geolocation-prefix.pch */, + D8E4117E0554A9D0B67EDDF83A5F84A5 /* react-native-geolocation.debug.xcconfig */, + A50087B90E6D291FABA7B2B3A0EDE3C1 /* react-native-geolocation.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../ios/Pods/Target Support Files/react-native-geolocation"; + sourceTree = ""; + }; + BA709E61C17C3F2F50C6DBE70B0697A7 /* Support Files */ = { + isa = PBXGroup; + children = ( + CBBB3B82EECFA4B04D5E74F51014923B /* Folly-dummy.m */, + B0269C82A5A72158482799457A54C4F1 /* Folly-prefix.pch */, + 09C6BDE5948349372DB4E21A885D702C /* Folly.debug.xcconfig */, + AAC2A01F5F36C0717DCE21E09A24E4E6 /* Folly.release.xcconfig */, + ); + name = "Support Files"; + path = "../Target Support Files/Folly"; + sourceTree = ""; + }; + BB8E22E709FC0D5593F183867B3586AE /* TextInput */ = { + isa = PBXGroup; + children = ( + A745480BCC05E3D86F8DA9DFBC45936F /* RCTBackedTextInputDelegateAdapter.m */, + EAEF3AF694E259B785C9396274961A8F /* RCTBaseTextInputShadowView.m */, + C5F8C5FA9631D2D07832052FA14CF585 /* RCTBaseTextInputView.m */, + 929604C1A2EBCB21C462564D8E2B6E35 /* RCTBaseTextInputViewManager.m */, + 1098464FAADD59B4F51D2730FA3385BC /* RCTInputAccessoryShadowView.m */, + 777E4E8BA27DC30A222D9DC89987909F /* RCTInputAccessoryView.m */, + AD7A7E7F692C59953E4F2D556748C698 /* RCTInputAccessoryViewContent.m */, + D1A453C9ADA80B891B63D853072A7412 /* RCTInputAccessoryViewManager.m */, + D0242D376CAAA7048E01DBFEA5AAD7AD /* RCTTextSelection.m */, + 2B220D4EF25C13E47378FA4F083D4B3E /* Multiline */, + 17869F202CD26D6A3B25E4707C50EDC9 /* Singleline */, + ); + name = TextInput; + path = TextInput; + sourceTree = ""; + }; + BBD867FC5DF67F938CCD214B8075D239 /* Base */ = { + isa = PBXGroup; + children = ( + 4645BD913182CB0A294DCED04A84F423 /* RCTAssert.h */, + E25B089BF6D2AAC1F85A70FF5EB28443 /* RCTAssert.m */, + BC301813DFDC7AE8CF56259F93EF1952 /* RCTBridge.h */, + 740BFA3C4BF5489668EA60BEB7F0015E /* RCTBridge.m */, + 0B59B6976A11C40058D58B1B8E56B25D /* RCTBridge+Private.h */, + DEC81FDDB78DA76319E7B7E90C4CBAE5 /* RCTBridgeDelegate.h */, + 43A065B93A776301EE5A6C3102FD7A2F /* RCTBridgeMethod.h */, + E3BA5A5052D60069AA1CBB5B33F21489 /* RCTBridgeModule.h */, + 4E0AB66B7AE30A76758A02A92ACA5580 /* RCTBundleURLProvider.h */, + C3B98241E7065ED31877575D7B640560 /* RCTBundleURLProvider.m */, + 378C03FF9E77038427FCEC783FCB3C92 /* RCTComponentEvent.h */, + 91835251E094A46BE214676FFD225268 /* RCTComponentEvent.m */, + 882EA3EB8ACFEE994EB7294C2678119F /* RCTConvert.h */, + 2B4E8EAF5CD215565D30A3120D0F4DB2 /* RCTConvert.m */, + 7A055495913CCF036F8B4B22D49086C2 /* RCTCxxConvert.h */, + 5BD36413BF780117C16695C500F750ED /* RCTCxxConvert.m */, + 4F9C7A3BAD8B0BC2E6449C266492FEF2 /* RCTDefines.h */, + 81B053D2E994EAD58748E522EAB4F1CD /* RCTDisplayLink.h */, + CFAE66823227976ECBC7F06E4B389F94 /* RCTDisplayLink.m */, + CF1B1BDD95F2D4A43D7C188646088601 /* RCTErrorCustomizer.h */, + 5BE734EEFD56585A0895EFC28D756917 /* RCTErrorInfo.h */, + 7B1A79BD87FDEE83776AAA976D424018 /* RCTErrorInfo.m */, + 51A4BB6D0826DB1C5C3F09A53954033F /* RCTEventDispatcher.h */, + AB4DEB23AC4B99AE702F1C92EC5A290A /* RCTEventDispatcher.m */, + 34155521E2D3E67A96AE666085D700E3 /* RCTFrameUpdate.h */, + 4D7F856D61AF959C02BF56C52978AFC3 /* RCTFrameUpdate.m */, + 3FCF9C3395187854EC3CC7E99CCE6F14 /* RCTImageSource.h */, + 047E4BFFF5826D403EF9E4A2F3176B6C /* RCTImageSource.m */, + B95DA33E45FE2167A45BD9FC97CCD116 /* RCTInvalidating.h */, + D2B3AF246F9096C08AEB6824A7E7B50F /* RCTJavaScriptExecutor.h */, + AB2C3D40246F6C6D5676D4E115698DC4 /* RCTJavaScriptLoader.h */, + A9C15FD89132C9C01662F379AD59600C /* RCTJavaScriptLoader.mm */, + B2531AD96ACBAC16FC3E56A45949C2B6 /* RCTJSStackFrame.h */, + F853E118166FE1D90C85C0C0338CF375 /* RCTJSStackFrame.m */, + 3C793A3FE44B9B3209B8BE91058BE865 /* RCTKeyCommands.h */, + B6FED2BC83D22BD64469F891524A9875 /* RCTKeyCommands.m */, + 6FF5B0AD00C735E86BAA53FF5809A594 /* RCTLog.h */, + 811846AB54DA780565DAA07FB083EE21 /* RCTLog.mm */, + A3F8EFBC4CD3DC5068E712F165F1DCF3 /* RCTManagedPointer.h */, + 67ADEB60587D4C023C44CBB1C63BF37D /* RCTManagedPointer.mm */, + 17E83CB6BD68C1D771C702CD7A745390 /* RCTModuleData.h */, + 79B34DCD3E798060E3FAC707FB02B4C7 /* RCTModuleData.mm */, + 989951EFB40583D99558E186DC624667 /* RCTModuleMethod.h */, + E00BF349A07349D98BB57B31FD1592EA /* RCTModuleMethod.mm */, + 9CF8D9797C522F8D2943C6AD2B49B19F /* RCTMultipartDataTask.h */, + AEC4536C673A54BA1964886F881D2AF0 /* RCTMultipartDataTask.m */, + 6FDB54E2B2E7DFFA358E0A11CD2931DF /* RCTMultipartStreamReader.h */, + D1BD709A9DB53947C5D1E1CEAF69C24F /* RCTMultipartStreamReader.m */, + B4CE3195BCB54E89365CB419D3E13349 /* RCTNullability.h */, + F01D8D99CB283B7DA0E86DCBC92C7D46 /* RCTParserUtils.h */, + B906FA2FAA49312F0F7E0E6ADB09F70D /* RCTParserUtils.m */, + F243D646A3710E702CD9FF1634F78214 /* RCTPerformanceLogger.h */, + 6AB7D4191A575C3BD709C1A9DB46EF2D /* RCTPerformanceLogger.m */, + 481048761DD53310736C4561BBDF94C4 /* RCTReloadCommand.h */, + 3CA9E26D63F15F6A10A8D8733AF42D20 /* RCTReloadCommand.m */, + 3DE280F0E47F0F19B7D93D5E242239DB /* RCTRootContentView.h */, + 2BDCEDD40BAD9342F016E20D99471470 /* RCTRootContentView.m */, + DBBF84BBC34F9893F03FF07C8AC600E3 /* RCTRootView.h */, + A310F91CA59CAAA8BB127DD896BE4CE5 /* RCTRootView.m */, + 1371332780688EE631D20BFA6F2B52DF /* RCTRootViewDelegate.h */, + EF0851190D1A8747EFE9F9C974FCB6AE /* RCTRootViewInternal.h */, + 4CA1B9B0A3ED95CB8EB3D05216B911D4 /* RCTTouchEvent.h */, + EC7C5D64F8094A2137F7CFE929C27BB7 /* RCTTouchEvent.m */, + 9E765C23B1E1AE37D0451F25FFB7750C /* RCTTouchHandler.h */, + C19674798023D7ADB601F31F1C3D9AE6 /* RCTTouchHandler.m */, + 5A8739C705687DEF976F4D9F33AFCBDA /* RCTURLRequestDelegate.h */, + 0B876F6165B18EC9582BFD56D333E863 /* RCTURLRequestHandler.h */, + 7E45E1203B257723AE4AE9E54307ED86 /* RCTUtils.h */, + 8B15C71A76FB5ED4790ECA1A2F862798 /* RCTUtils.m */, + 20AE29F89002DC5F94E57F8C25AE46A7 /* RCTVersion.h */, + 24FD49C2FE9E5CF40593254E6A14D417 /* RCTVersion.m */, + 953B7805A5D39D267C36F17E2D06C8EB /* RCTWeakProxy.h */, + 2DC5AE15D8A7AA8F242A66F54E5F02C9 /* RCTWeakProxy.m */, + 1836088CDD994FCDF4743BF2C0AFBE24 /* Surface */, + ); + name = Base; + path = React/Base; + sourceTree = ""; + }; + BE0C9E97F93D2F597D680E7787349478 /* jsc */ = { + isa = PBXGroup; + children = ( + C2E2308B5493B41C750331369F9FE5D8 /* jsc_init.cpp */, + 2F85DB3BCA6D79890BF94BACDC85B988 /* jsc_value.cpp */, + ); + name = jsc; + path = jsc; + sourceTree = ""; + }; + C2668EA9A800FB0135FD497D41CB95F1 /* Support Files */ = { + isa = PBXGroup; + children = ( + 9EF2337DC27DA0B6CE8727976736E918 /* RNI18n-dummy.m */, + 9ADF93722F6C1DA7049306241B1BD83A /* RNI18n-prefix.pch */, + 9F36C0AA8E97CB28F5682F8394B1C7EC /* RNI18n.debug.xcconfig */, + B04E9E415AC269CC87EDB2B2E1BDDB99 /* RNI18n.release.xcconfig */, + ); + name = "Support Files"; + path = "../../ios/Pods/Target Support Files/RNI18n"; + sourceTree = ""; + }; + C3ECACF009A40070D8586419DB876BD2 /* ios */ = { + isa = PBXGroup; + children = ( + FE142790F5B802FBC61B0A8D5A91C88F /* RCTTurboModule.h */, + 7820EF6AE129D8A6E56947A900101DC0 /* RCTTurboModule.mm */, + 91E33165857DD9575E2C0945639F53C1 /* RCTTurboModuleManager.h */, + 3436F4C851E2A6FA4801A30A76CEF812 /* RCTTurboModuleManager.mm */, + ); + name = ios; + path = ios; + sourceTree = ""; + }; + C5C8FE6B5C2C4C0726C2B6B86CEC0FDC /* RN */ = { + isa = PBXGroup; + children = ( + A39753B8DFCDD6E1196C3DA7102D6CD1 /* BarcodeDetectorManagerMlkit.h */, + E0D37428A076EE544DF62A70B9E9644B /* BarcodeDetectorManagerMlkit.m */, + 0547922E63842181200838748964097D /* FaceDetectorManagerMlkit.h */, + BAA3738C4EC4172B5AB184FFD12938FF /* FaceDetectorManagerMlkit.m */, + 5DC0DE6FD03A241AD6E29669772E00C9 /* RNCamera.h */, + AAEE66EDB186EF6F64C5266EC24EE491 /* RNCamera.m */, + 331AD6887161E4B355549A415DC4EEBB /* RNCameraManager.h */, + 58E77F07BFEED1E5E3B7098943105766 /* RNCameraManager.m */, + E683DB639D3895583D37D06CFCDE622F /* RNCameraUtils.h */, + 8D68782A97AA38CF9B6D3E2B7F75D47D /* RNCameraUtils.m */, + 3414B0959F4A5C91C1A6EB39BB40B125 /* RNCustomWhiteBalanceSettings.h */, + 8D44DCC2953242D9594A206AC4BC6727 /* RNCustomWhiteBalanceSettings.m */, + FD97D288F5DC75E5CC02C5EB9122424F /* RNFaceDetectorModuleMLKit.h */, + 88890B189DF37CBB296B08B06198FF0A /* RNFaceDetectorModuleMLKit.m */, + B44C4D200CA7DB16992A539CE6E27D08 /* RNFileSystem.h */, + 73CFF86E66CA6530C533F82C0D9918D4 /* RNFileSystem.m */, + 8646DD72FFF4B4828E42178033060E4C /* RNImageUtils.h */, + DA3E3F38928CA35BC2374BEAB21BE759 /* RNImageUtils.m */, + 436A6780127E2329D386C699FCDFD117 /* RNSensorOrientationChecker.h */, + A16702D41967CDD647CA030F2E5D3737 /* RNSensorOrientationChecker.m */, + B1B41495F1C2A08B5A37AFDAB01639AE /* TextDetectorManager.h */, + FDF0B4882759CBBF2ECCA0023038F2D8 /* TextDetectorManager.m */, + ); + name = RN; + sourceTree = ""; + }; + C9004A2B05CBF4F5A5A3F223A852714F /* Modules */ = { + isa = PBXGroup; + children = ( + 1763DFAFB8FF691D63AA0724F975B6EB /* RCTAccessibilityManager.h */, + 5E0F03068CFBB0137852A4DA585D961F /* RCTAccessibilityManager.m */, + 7717776B68354B70627CC6738268D702 /* RCTAlertManager.h */, + B78968C110DA72E82244231C1C647A0A /* RCTAlertManager.m */, + BC360D590173432BA140F4707D1FAB0A /* RCTAppState.h */, + 75CB59035009306F655813E57AA315CF /* RCTAppState.m */, + F2073053C5070AD4D345A1843FC38FF1 /* RCTAsyncLocalStorage.h */, + B346FE1A06B0E600CCE464D80C203E69 /* RCTAsyncLocalStorage.m */, + 55A37BEB19936B2AC46E3FDBF0FE935C /* RCTClipboard.h */, + AB896579CC45DAEEE97FF62B7C4A34CB /* RCTClipboard.m */, + BA035756441DF819F5E5FEDD250A918A /* RCTDeviceInfo.h */, + 3BA9C52C962BA4255AA67B151550DBA5 /* RCTDeviceInfo.m */, + 7C35FAB51E7C60BD7AA3D0C548EFF59C /* RCTDevSettings.h */, + B3821B48A8EE772514E31AD4012A2FCC /* RCTDevSettings.mm */, + 3C66BF8EEDE380BCDA371A63DFCCB008 /* RCTEventEmitter.h */, + 1EE73CD41034EA9AF11322CA22ADE6B1 /* RCTEventEmitter.m */, + 8E7D5E4B0C2A438A35D3E2D6A486FDB1 /* RCTI18nManager.h */, + 710025FCA7E652157AAB51169A6A3B4B /* RCTI18nManager.m */, + 8555FAE6571F8FFBA6782E00699BCCBC /* RCTI18nUtil.h */, + 5C9366E4CFD03F47FF9A4BD7E81AA91E /* RCTI18nUtil.m */, + FE2C1D922EA4986D53A6E6A69E1D0230 /* RCTKeyboardObserver.h */, + 71D33767BF1CBD34C5025C5B6ED4970D /* RCTKeyboardObserver.m */, + 491ACEEC084EEBD1AF81B3874F655B22 /* RCTLayoutAnimation.h */, + 1D7D611A7BCF764E4F08CF919D63F899 /* RCTLayoutAnimation.m */, + AC9BE8E1BEAB1E2BF70FD70639E05E50 /* RCTLayoutAnimationGroup.h */, + BF4C20670E8DF945ADA9F662D0E70A64 /* RCTLayoutAnimationGroup.m */, + 7673B2D115E85C1126E3211044E8FC09 /* RCTRedBox.h */, + 325333FFEBFDCD2E8C9045BEA77ABE1E /* RCTRedBox.m */, + 5D8EE209B40051A53ACF824F83122712 /* RCTRedBoxExtraDataViewController.h */, + BF86A1D62F5BFFB9AEF707FF6416BB87 /* RCTRedBoxExtraDataViewController.m */, + B21B12DEAC1A3EEF00ADAAF1AD5120BE /* RCTSourceCode.h */, + 1303022B072FFAB643A445566CFC19AE /* RCTSourceCode.m */, + EFF65AE191E9DBA9D82F06A0B9BECF34 /* RCTStatusBarManager.h */, + 2F40DE8DCC02C18801ACA61C3E74FEE9 /* RCTStatusBarManager.m */, + 97A431AF27CF89C8CFA874D9936B988A /* RCTSurfacePresenterStub.h */, + C66C1FC852265CEFACD9E17D8FB1A88A /* RCTSurfacePresenterStub.m */, + C985D82E9B575CF226EB9314E9DC330F /* RCTTiming.h */, + 32C1F0A744440B4C7DA9D5E173CC8FD6 /* RCTTiming.m */, + C1EE4AEEC2C8270869134AA26A2216CF /* RCTUIManager.h */, + E065EBEC80CA333B0D3A4D980E341B57 /* RCTUIManager.m */, + F7531675332F461843519F60E78C5AA3 /* RCTUIManagerObserverCoordinator.h */, + 1AFC2B5811F871029E43A34A7B396177 /* RCTUIManagerObserverCoordinator.mm */, + 2AB2EC4879A24AD83E5C7C9EB83B66C4 /* RCTUIManagerUtils.h */, + AF942609E6B18B27CCCD87AB8644C2F2 /* RCTUIManagerUtils.m */, + ); + name = Modules; + path = React/Modules; + sourceTree = ""; + }; + CC2C0046C19BA6037A64FC91FEA843D7 /* Frameworks */ = { + isa = PBXGroup; + children = ( + 5DC1040FBA42A288374ED955C41A1E7B /* OneSignal.framework */, + ); + name = Frameworks; + sourceTree = ""; + }; + CC6A1ECEE35D4A598EC7B295B158B16C /* RNScreens */ = { + isa = PBXGroup; + children = ( + 054F26ACE0CC13FF125209E274FFA997 /* RNSScreen.h */, + 0DC6DE70E81E2B7B2DEC0F4170D57F5F /* RNSScreen.m */, + 5A405160551CE5809F6A0E91290D4C53 /* RNSScreenContainer.h */, + 6E2AB9BF40B61584FE7BB9574ED19487 /* RNSScreenContainer.m */, + 999F9AB6C58CFB1BF9C92A746603CA4B /* RNSScreenStack.h */, + 0D8ABA2FC542F9CDD329C616C38DF8AC /* RNSScreenStack.m */, + 078B280AD2E377AEE0181A7C7A735EB5 /* RNSScreenStackHeaderConfig.h */, + 960CD1D347FA64D342D038A9EB001117 /* RNSScreenStackHeaderConfig.m */, + 519FC27C3B6AAE2C8F8624EB18C948D8 /* Pod */, + A16284E2B00F937817CCCB2AEA088471 /* Support Files */, + ); + name = RNScreens; + path = "../../node_modules/react-native-screens"; + sourceTree = ""; + }; + CCF5C5B7581C512B02A1449113B947E6 /* Targets Support Files */ = { + isa = PBXGroup; + children = ( + 43D1ED37DE305E58729AD429ECD182DD /* Pods-iLink */, + 371CB31F90086A24C5E9AF3882D02245 /* Pods-iLink-tvOS */, + 50A4B4F884730D0210F1183EFBF41DD1 /* Pods-iLink-tvOSTests */, + 7450FD8DB93CC6D0B1ADFD1FB9EF76FA /* Pods-iLinkTests */, + ); + name = "Targets Support Files"; + sourceTree = ""; + }; + CE6251191E5B3E9FFBA3413510227858 /* RawText */ = { + isa = PBXGroup; + children = ( + 52890CA59A1193AFF45B9AABF7471605 /* RCTRawTextShadowView.m */, + 2F279CF508C0A70C818415943852D15F /* RCTRawTextViewManager.m */, + ); + name = RawText; + path = RawText; + sourceTree = ""; + }; + CEA4E931EDDE328CC1765FFFF49F64AB /* Pod */ = { + isa = PBXGroup; + children = ( + D0839262997C0DF425C30B51EA2EEB3B /* adding-locales.png */, + 2DF0747E8C7419450A63076C6AAC2F4B /* LICENSE.md */, + E5F56F8A3B3CA34FE0FB77FC6CA1B551 /* README.md */, + 16885F16175816068293062A4D2C0960 /* RNI18n.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + CF1408CF629C7361332E53B88F7BD30C = { + isa = PBXGroup; + children = ( + 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */, + 7FE4BCADA273A50953B6DACED7AA66C5 /* Development Pods */, + D89477F20FB1DE18A04690586D7808C4 /* Frameworks */, + F0F4E2E1F95B441665655957F435124C /* Pods */, + D8179304D2CFD46F79E877F5FCF25236 /* Products */, + CCF5C5B7581C512B02A1449113B947E6 /* Targets Support Files */, + ); + sourceTree = ""; + }; + CF69B5D476C40B0C7097B9FB44D88567 /* apple */ = { + isa = PBXGroup; + children = ( + E15CB2D3371D1039E10A3CBFB5025824 /* network_reachability_observer.cpp */, + B6C34B00D25B20BAA8CC2A707E43D10A /* system_configuration.cpp */, + ); + name = apple; + path = apple; + sourceTree = ""; + }; + CFD14BB5A8C14CFAFE89CD4532A83D6C /* DoubleConversion */ = { + isa = PBXGroup; + children = ( + 66A4A900168DF84350DE3936449B4831 /* bignum.cc */, + FBF2B349D86DD808E02008381C214847 /* bignum.h */, + AA1A216C78C25A75CE8F40D0B713DA66 /* bignum-dtoa.cc */, + 575FB55529BC9B6F0D9D20D6CEB96FD8 /* bignum-dtoa.h */, + 95C92821A280714FE92A93A56A1E8672 /* cached-powers.cc */, + 3384AA80005E2D3453B77FC4EAA584E8 /* cached-powers.h */, + 7A3FA2BCBF68AA551CB11D6DC749812D /* diy-fp.cc */, + 6F1DD536EAAB6D919CF59FB17CC6EB35 /* diy-fp.h */, + F0517E56FF7DF318E7823958BC07879C /* double-conversion.cc */, + 34E9C756FA690DF8C2D5409EF63F8B17 /* double-conversion.h */, + 54DA99180633C4B97108845D3332EF0D /* fast-dtoa.cc */, + 7BFF2A7F1937AE776B20EE28FD571296 /* fast-dtoa.h */, + 552BB71966B83C37751C3746A98EB403 /* fixed-dtoa.cc */, + 660BB17F6310FAE3DF38D296DE5CD94B /* fixed-dtoa.h */, + F016DDB0EDEE8B02A5D2A9B23D744763 /* ieee.h */, + F376C2413180D52566C6CA77B89D33ED /* strtod.cc */, + FDB08DA22A0C0098DCEEA60EEA3CBEBB /* strtod.h */, + F19FE2620B9C5885D269A52521CB8AD3 /* utils.h */, + 4276EF8596462E4AEE9200C7C7447261 /* Support Files */, + ); + name = DoubleConversion; + path = DoubleConversion; + sourceTree = ""; + }; + D0F453B8B93F8A837DEE59674299FCCD /* Text */ = { + isa = PBXGroup; + children = ( + 62458C7A9D0C777C142E0D823CE97E03 /* NSTextStorage+FontScaling.h */, + 3B34CC179F01A3F16FD2407C5C66FFA0 /* RCTTextShadowView.h */, + 8B6B199289818DCB562FE54BEAB208E6 /* RCTTextView.h */, + 519B4D215722F46CF90B7FC0D6FB0C8C /* RCTTextViewManager.h */, + ); + name = Text; + path = Libraries/Text/Text; + sourceTree = ""; + }; + D134E2F28099C11D9028F58EB184BAC8 /* VirtualText */ = { + isa = PBXGroup; + children = ( + 329F94BD0B8B8156BF25E5416269DB5E /* RCTVirtualTextShadowView.m */, + 49D41D79C48D7AD6384AED26AFC8836E /* RCTVirtualTextViewManager.m */, + ); + name = VirtualText; + path = VirtualText; + sourceTree = ""; + }; + D51A4B7F7AC6953A04036646235C74FE /* Support Files */ = { + isa = PBXGroup; + children = ( + 7588FD0443F70D8637F85591DF95CFB0 /* ResourceBundle-QBImagePicker-RNImageCropPicker-Info.plist */, + EB79F8010AA4124014EF95A6F1FE4F5B /* RNImageCropPicker-dummy.m */, + 3ACA04A638E5E25700027BCD51AC4F2A /* RNImageCropPicker-prefix.pch */, + 5FE6D0C44F9602F006C039AFA50D69A9 /* RNImageCropPicker.debug.xcconfig */, + 7FA983BAB0F89D8D78FC68569899CA57 /* RNImageCropPicker.release.xcconfig */, + ); + name = "Support Files"; + path = "../../ios/Pods/Target Support Files/RNImageCropPicker"; + sourceTree = ""; + }; + D523115DA6F0D34FAC60A53CB91896B7 /* Inspector */ = { + isa = PBXGroup; + children = ( + 48D2BFC0CCCC73A21D8E245D8EDF6F38 /* RCTInspector.h */, + 4D9231069E0049915DEE75A2761A4A73 /* RCTInspector.mm */, + 3997CE560541DDAF5BD151A10ABD10D4 /* RCTInspectorPackagerConnection.h */, + 9624F086266CB5E7A0ABC577C5AB9447 /* RCTInspectorPackagerConnection.m */, + ); + name = Inspector; + path = React/Inspector; + sourceTree = ""; + }; + D6E312BACE79ABA597D3356608BF4EB2 /* RNCAsyncStorage */ = { + isa = PBXGroup; + children = ( + B49F35AC4AA266D2FD5FE78F0FDC5839 /* RNCAsyncStorage.h */, + CC080FC0BAF19DEEA6CB4CC09FC1D287 /* RNCAsyncStorage.m */, + 3C9BE9577AD83B0DDAD16AFD5583F7C8 /* RNCAsyncStorageDelegate.h */, + A1366E1E9FA652444082BA6C0D8F0CF1 /* Pod */, + A7CE88DF77E075F5E19B921C4FADB2D7 /* Support Files */, + ); + name = RNCAsyncStorage; + path = "../../node_modules/@react-native-community/async-storage"; + sourceTree = ""; + }; + D7DECEA18C5FEB0E379E912325EE271F /* RNDateTimePicker */ = { + isa = PBXGroup; + children = ( + C22CB7E9B12EC73BF182F5505909A8AE /* RNDateTimePicker.h */, + 01A4F4B0C2282DA7750838FAF4F634B1 /* RNDateTimePicker.m */, + FC58373E729945E046652F745D1FD718 /* RNDateTimePickerManager.h */, + F6E6195BEF9483D9700729A2EB595E89 /* RNDateTimePickerManager.m */, + 3B71580F2E84C741F8F0FA0F967FA463 /* Pod */, + 16BEE8677393144975638DD800756F81 /* Support Files */, + ); + name = RNDateTimePicker; + path = "../../node_modules/@react-native-community/datetimepicker"; + sourceTree = ""; + }; + D8179304D2CFD46F79E877F5FCF25236 /* Products */ = { + isa = PBXGroup; + children = ( + 6FFB7B2992BB53405E6B771A5BA1E97D /* libDoubleConversion.a */, + ABFEEA82A6C346B22843FBE0B0582182 /* libFBReactNativeSpec.a */, + 06489499588BFA8FD5E63DD6375CD533 /* libFolly.a */, + B68C1052A3B51DBCF7D960F898AAFA95 /* libGCDWebServer.a */, + 3CA7A9404CCDD6BA22C97F8348CE3209 /* libglog.a */, + 51BA97E8B5085EFFB47BC9C0B785CEA7 /* liblottie-ios.a */, + 0F8D5091C801A6ECB9A173DA0E385A29 /* liblottie-react-native.a */, + AE35E87ACE581B9CEF2DE22B4D7BC740 /* libPods-iLink.a */, + 635500BD2B73F2F50A72E06A6F5E6960 /* libPods-iLink-tvOS.a */, + 06F02220660F7DDEBE7B9D81E51A7E99 /* libPods-iLink-tvOSTests.a */, + 8458FA6C5F6FE0FFC5162AEE37212EF9 /* libPods-iLinkTests.a */, + F958876A082BF810B342435CE3FB5AF6 /* libRCTTypeSafety.a */, + BD71E2539823621820F84384064C253A /* libReact-Core.a */, + 6771D231F4C8C5976470A369C474B32E /* libReact-CoreModules.a */, + 37592FDAD45752511010F4B06AC57355 /* libReact-cxxreact.a */, + D9F334F2E90E3EE462FC4192AF5C03BD /* libReact-jsi.a */, + F2E7C88DFCD460A4B46B913ADEB8A641 /* libReact-jsiexecutor.a */, + 2577F299FCB0A19824FE989BE77B8E8F /* libReact-jsinspector.a */, + 6C9790F1A25C1E3828E179A8F0850851 /* libreact-native-camera.a */, + 467EB07BB1D9636C6348DE0824CE8973 /* libreact-native-geolocation.a */, + 2F955107B98F1B5213C3C9F4CAB1EDB5 /* libreact-native-maps.a */, + FD05B573DE80F752C065391EC663F390 /* libreact-native-onesignal.a */, + E5F9D2F97C3F55CA9A6540B426B0E644 /* libreact-native-viewpager.a */, + 73F8A95B79671F501F31EA4F1D04AA8B /* libReact-RCTActionSheet.a */, + FE7B9294FF05AAFD1653E2104E10844A /* libReact-RCTAnimation.a */, + F71EBF73F354B475D465FF6DE9A66707 /* libReact-RCTBlob.a */, + EEDBF403E8E0B3885E65C2741B536BC5 /* libReact-RCTImage.a */, + 802121F5B756ACBFDD6D08C36246DADD /* libReact-RCTLinking.a */, + A68E5A9B69A3BA0FD52CAF7A354EC93B /* libReact-RCTNetwork.a */, + 269BE773C9482484B70949A40F4EA525 /* libReact-RCTSettings.a */, + E6A16705C69FC7DE11C2469A4A0F8358 /* libReact-RCTText.a */, + C1A919103EAC9813D236486C34FC0A21 /* libReact-RCTVibration.a */, + D5C775614AC76D44CECB6BE08B022F1F /* libReactCommon.a */, + 8EC0BC4D6C274F59CD17A8BD2D6D36D1 /* libRealmJS.a */, + 5737DDB4BC95AD399B3206838AB97095 /* libRNCAsyncStorage.a */, + 72DE4BF3FB9CE0858E90F96FEF8A53AE /* libRNDateTimePicker.a */, + E0FE6533198104C97DB047DD5CD8AC67 /* libRNDeviceInfo.a */, + 8F65F9361F2069CF9E9D751272968DE4 /* libRNGestureHandler.a */, + 0CEDE9F988A667E9E55A853581258D15 /* libRNI18n.a */, + 3AEA4A114C08533A2C0F8E039A4C5EB9 /* libRNImageCropPicker.a */, + C777CF2FB1E39A45CBBDB54E8693F471 /* libRNReanimated.a */, + 50B5347C9A6E93B7D4CFC3673BA6FB7E /* libRNScreens.a */, + 90EE8D3C082C157169540FC8F5913DAD /* libRNSVG.a */, + 8998273719FDD789E6F9C7541AFD0B33 /* libRNVectorIcons.a */, + 338817C84971D637244683E9432AF918 /* libSajjadBlurOverlay.a */, + 7862C607B7BE0510C2D65193F9B4B4F9 /* libTOCropViewController.a */, + 65D0A19C165FA1126B1360680FE6DB12 /* libYoga.a */, + 3DCCC9C42EB3E07CFD81800EC8A2515D /* QBImagePicker.bundle */, + FE1E812071397E31AE21DFF368B781B1 /* TOCropViewControllerBundle.bundle */, + ); + name = Products; + sourceTree = ""; + }; + D882439F8D475CFD1632BB5A7C3EE08B /* Support Files */ = { + isa = PBXGroup; + children = ( + EBD8B4A1B95E01211943124234AA30ED /* React.debug.xcconfig */, + 74517B0BB959C1BBE44F26745988B490 /* React.release.xcconfig */, + ); + name = "Support Files"; + path = "../../ios/Pods/Target Support Files/React"; + sourceTree = ""; + }; + D89477F20FB1DE18A04690586D7808C4 /* Frameworks */ = { + isa = PBXGroup; + children = ( + ); + name = Frameworks; + sourceTree = ""; + }; + D8978BF1514318422A904CF81BB8CEF8 /* react-native-geolocation */ = { + isa = PBXGroup; + children = ( + 7A7961293D603CFA0060D00C63388BDD /* RNCGeolocation.h */, + 1C5F366E3AE32407A18C84247B818DAD /* RNCGeolocation.m */, + 7F1B50C75DB50AB74C04206B962D3D5F /* Pod */, + BA49019C4A4EF44165B12AE5A5E479F5 /* Support Files */, + ); + name = "react-native-geolocation"; + path = "../../node_modules/@react-native-community/geolocation"; + sourceTree = ""; + }; + D9D0A24A387544578E63E7381950C1D4 /* Pod */ = { + isa = PBXGroup; + children = ( + DCDF941298D8BD8059252E2EAB0E05D5 /* React-RCTLinking.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + DAC61935699D4ED4BCF5C980CD0E4C3E /* React-RCTSettings */ = { + isa = PBXGroup; + children = ( + AAB29BF75E741817CC42CBC03DC74FDF /* RCTSettingsManager.m */, + EB3AD3036745735E010F9BE86BD72E47 /* Pod */, + 86824F30919EB1B935A206475B91BFC5 /* Support Files */, + ); + name = "React-RCTSettings"; + path = "../../node_modules/react-native/Libraries/Settings"; + sourceTree = ""; + }; + DB6685FC6B1290B825AA1315D93E102A /* QBImagePickerController */ = { + isa = PBXGroup; + children = ( + 65A94B5CC4FCC790C3DDC2DBDCCB3295 /* de.lproj */, + 0B9CAD7894B97C12F2C1AB36BC90525B /* en.lproj */, + 5B9301624E46D65D7578C06A2A71725C /* es.lproj */, + AFE9E75D341118DCA9168BE21A41702C /* fr.lproj */, + 1A8304F2E111EAED9DA12E4995BEE945 /* ja.lproj */, + 6D335DC3C756371F6E0702960771B263 /* pl.lproj */, + A545A6441D5DDB80E2AA86066739E6D5 /* QBAlbumCell.h */, + 22F5B4D3EF2FEB7F0DAA922D99C38188 /* QBAlbumCell.m */, + 560B6B60355FB3913DAEFC6F01729E18 /* QBAlbumsViewController.h */, + CEE0DB3F014FB63718B4FEC2A65B6287 /* QBAlbumsViewController.m */, + B3134094E6F13EAF417E67EE59D5DB22 /* QBAssetCell.h */, + 2ED33BDB2B3359131F45F49E5F19D99F /* QBAssetCell.m */, + 5CBEF971B734662512F57BF038AD785D /* QBAssetsViewController.h */, + DDBFF987C11E27C2E279C34932F86DC6 /* QBAssetsViewController.m */, + 729A046BD9A03AD5CCF635ECEFCE14AA /* QBCheckmarkView.h */, + 6D66414981C1C0B3B9555AC1D0FF9F71 /* QBCheckmarkView.m */, + 1FB9836AF05803D197F20DEC0FE30625 /* QBImagePicker.storyboard */, + 0BB6DC8A06CC9FA1ECD5091C4C8DC4B5 /* QBImagePickerController.h */, + 5845F0B5FE913422AA5D9EBDE4F74CD9 /* QBImagePickerController.m */, + AB8415797F616A79301CEAB45F23D562 /* QBSlomoIconView.h */, + 7256C3E430E65AD4CA3CDADBD81F8FC3 /* QBSlomoIconView.m */, + 205D07EDB9A0856EBEC047D246602038 /* QBVideoIconView.h */, + B22FED44B8A7C6125A344561053B8C8B /* QBVideoIconView.m */, + 1EBD3FD674B47FD3332A87F475EAB71A /* QBVideoIndicatorView.h */, + BE094EB02887207BCE58BF8236CD09A2 /* QBVideoIndicatorView.m */, + 3189ABD75043DE287DAD14A08FAAFCA6 /* zh-Hans.lproj */, + ); + name = QBImagePickerController; + sourceTree = ""; + }; + DCBBAB877BCB65CD648D89C61FD48662 /* OneSignal */ = { + isa = PBXGroup; + children = ( + CC2C0046C19BA6037A64FC91FEA843D7 /* Frameworks */, + 28D27B77940C55B8DD6AAA51F76623C0 /* Support Files */, + ); + name = OneSignal; + path = OneSignal; + sourceTree = ""; + }; + DEF4F63DAFAAECC43EA34DF7D732D054 /* Folly */ = { + isa = PBXGroup; + children = ( + 46CFD0BF2758FD8B5B98109988FFDFDF /* Assume.cpp */, + EEAEB087DB360E8220231516E343B63E /* ColdClass.cpp */, + 107276AED3FD0E58036B1E70D78E8A5D /* Conv.cpp */, + B787E0662BF13086B52260D3663D4121 /* Demangle.cpp */, + A7FFDE82F7EDFBD3DD268C8B69913062 /* Demangle.cpp */, + 38CB2A6363964C86ABC84C3435BD4D3D /* dynamic.cpp */, + 32D2568633F0C39D4E99317A3FF88403 /* F14Table.cpp */, + 0B4B2EA5E748971201EF995B8F59E109 /* Format.cpp */, + 73706B8F905E51476FFB1E07B7441C84 /* json.cpp */, + 4B9B99B1121A87ECBACFA339D646006A /* json_pointer.cpp */, + D8818730D0625E7ED9A934FE75C73514 /* MallocImpl.cpp */, + CE980CD3C9B31E945115F2A1B092F928 /* ScopeGuard.cpp */, + E4D3CB353D061375E87F007ED45F59B4 /* SpookyHashV2.cpp */, + 31F8E6E8ADE33FD4B2309D15A8FD3868 /* String.cpp */, + E9CF34DF15C1269E98F15FFE2C5CEB4E /* Unicode.cpp */, + BA709E61C17C3F2F50C6DBE70B0697A7 /* Support Files */, + ); + name = Folly; + path = Folly; + sourceTree = ""; + }; + DFF8334277F9483F81FC034EC0DDF0D5 /* Singleline */ = { + isa = PBXGroup; + children = ( + 169EDBEB2871E1DFEA013CA498C9D6D4 /* RCTSinglelineTextInputView.h */, + BC043FF9D0598B50198A39EA41C2E162 /* RCTSinglelineTextInputViewManager.h */, + 47795E50FDB26268311A15A1DFF2EEBC /* RCTUITextField.h */, + ); + name = Singleline; + path = Singleline; + sourceTree = ""; + }; + E090399E915D3099C06AAACEBC460BB8 /* Pod */ = { + isa = PBXGroup; + children = ( + E7F8BF957B1377395645A647BB6FC686 /* React-Core.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + E10D20FB235ABF77D638577C7D04FD9E /* Support Files */ = { + isa = PBXGroup; + children = ( + 9D047804CA2A15A7CF1557F67FF1021E /* React-RCTLinking-dummy.m */, + 660DD5D7AADE9B4C05EA68A3F884B071 /* React-RCTLinking-prefix.pch */, + 5956CB06C6247BF92C067BFD00B19A94 /* React-RCTLinking.debug.xcconfig */, + 9C95D2A1070361A75FC1100C06462C6E /* React-RCTLinking.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../../ios/Pods/Target Support Files/React-RCTLinking"; + sourceTree = ""; + }; + E1A94E12C1DCDFC052A2EE41826D4CAD /* Support Files */ = { + isa = PBXGroup; + children = ( + 4D5D85AEDEAA354642E892FBC692C86E /* RNSVG-dummy.m */, + 94132C725CB3A9BC765F1DE6CD8ED5E2 /* RNSVG-prefix.pch */, + 47CBEFF5BE4D0F8380F981BB70C384F8 /* RNSVG.debug.xcconfig */, + 14277D093BA6E57B21F3F5C23769F9F9 /* RNSVG.release.xcconfig */, + ); + name = "Support Files"; + path = "../../ios/Pods/Target Support Files/RNSVG"; + sourceTree = ""; + }; + E2D641100F95C28FB55DE43A08CEEDA4 /* RNI18n */ = { + isa = PBXGroup; + children = ( + B5203755E08171951463CE2F772C7D85 /* RNI18n.h */, + 1EEB627489A4682DD0D23FC58FD21A5D /* RNI18n.m */, + CEA4E931EDDE328CC1765FFFF49F64AB /* Pod */, + C2668EA9A800FB0135FD497D41CB95F1 /* Support Files */, + ); + name = RNI18n; + path = "../../node_modules/react-native-i18n"; + sourceTree = ""; + }; + E3F5BDC2DDF98AA2BCE41275F0C1E2BF /* Pod */ = { + isa = PBXGroup; + children = ( + FB97A1E0C30C14051EA93F232E667110 /* LICENSE */, + 3DF04B6B98C213E476B82F0734952A7F /* README.md */, + B467A324F951FB002FDF8995880AC103 /* RNImageCropPicker.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + E4149DBB3C97D725A8F4BE5CCF9C01BF /* FBLazyVector */ = { + isa = PBXGroup; + children = ( + 50179AB63ADD3815B9B4566814192F0A /* FBLazyIterator.h */, + A221912DB5780BB426EEB565E28EBC1E /* FBLazyVector.h */, + E62EED67E18C11EA9EA0FF5FFC7D5733 /* Pod */, + 8F5BCDB35FD11ADF8D1E663437AE379C /* Support Files */, + ); + name = FBLazyVector; + path = "../../node_modules/react-native/Libraries/FBLazyVector"; + sourceTree = ""; + }; + E4810778AEEFC006E3BFA973630F0019 /* React-jsiexecutor */ = { + isa = PBXGroup; + children = ( + D711518842393EC048B3120CDA9670D4 /* JSIExecutor.cpp */, + 323DC5871F43F65687CDF081F2B76E16 /* JSIExecutor.h */, + 84C5007898E442E6369D11180C69C866 /* JSINativeModules.cpp */, + 1140E9408718C074ED106EB29D8E2B73 /* JSINativeModules.h */, + 19F1F053B3CDE8110498EDE3520C4132 /* Pod */, + 2C89119997F1C2F2A62DDFC8437C1793 /* Support Files */, + ); + name = "React-jsiexecutor"; + path = "../../node_modules/react-native/ReactCommon/jsiexecutor"; + sourceTree = ""; + }; + E5EC8A7422AD3B6FCCD7D2F6AD24697F /* platform */ = { + isa = PBXGroup; + children = ( + C3ECACF009A40070D8586419DB876BD2 /* ios */, + ); + name = platform; + path = turbomodule/core/platform; + sourceTree = ""; + }; + E62EED67E18C11EA9EA0FF5FFC7D5733 /* Pod */ = { + isa = PBXGroup; + children = ( + D663AADAD892C03C6E94287FE2DE819E /* FBLazyVector.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + E708F2D9F76B10BCED28DCCCD9904F5C /* Pod */ = { + isa = PBXGroup; + children = ( + 99C2384BA4BEDDA304E928667F5E77CF /* React-RCTAnimation.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + E8558AAB18058181EC5E09E801464B57 /* Support Files */ = { + isa = PBXGroup; + children = ( + D5BED0988C81B37AE58174DD0F1CFB34 /* React-RCTAnimation-dummy.m */, + E544143791BE1FD475F30B4FB8B83834 /* React-RCTAnimation-prefix.pch */, + 500BF972EE71D4A432E0BE2B2CB1E84A /* React-RCTAnimation.debug.xcconfig */, + 03247490292940C767696C1D0BCA9F4D /* React-RCTAnimation.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../../ios/Pods/Target Support Files/React-RCTAnimation"; + sourceTree = ""; + }; + E89048C9ACD55DBC74193A2D61D492BA /* Nodes */ = { + isa = PBXGroup; + children = ( + 163EFE44E527B9D3A2AF8720622DB050 /* RCTAdditionAnimatedNode.m */, + 25B1DCC76C097B3423A165DC29E4F15F /* RCTAnimatedNode.m */, + CFBAFC1B1556E504869E6FBF2C82F6A1 /* RCTDiffClampAnimatedNode.m */, + 0CF550C2000E6F41286D2CFC64F661EB /* RCTDivisionAnimatedNode.m */, + E880CD653B9A0FF5FAD5E27B4B0B6298 /* RCTInterpolationAnimatedNode.m */, + BB70D6C8A07B01114162E018AC907B70 /* RCTModuloAnimatedNode.m */, + 49047AFBEE5C543564467395A9C9D73D /* RCTMultiplicationAnimatedNode.m */, + 11A603046F96373456579EF0B0B5430B /* RCTPropsAnimatedNode.m */, + 202040057C833899B7387C97B3A1AB21 /* RCTStyleAnimatedNode.m */, + F608D43CD70D5099A582EFE04698D543 /* RCTSubtractionAnimatedNode.m */, + 9F35C74B0EB9D89D2FC1875E6FCCC3CE /* RCTTrackingAnimatedNode.m */, + 2C59EAC665A6B62514B52FB4AF90920F /* RCTTransformAnimatedNode.m */, + F9401D30E808F2DC9A2FB673BFFAB18D /* RCTValueAnimatedNode.m */, + ); + name = Nodes; + path = Nodes; + sourceTree = ""; + }; + E9CFBC615BBC76B4A781A46FD3F36271 /* Brushes */ = { + isa = PBXGroup; + children = ( + 9F31218DD15F687209AA900CF3942B51 /* RNSVGBrush.h */, + BAE6B444A9FE1ADB27C68EAD5C643E1F /* RNSVGBrush.m */, + F43F1CC6EE0CD6AFA67661B7720FF22B /* RNSVGBrushType.h */, + 9EF72619138C8CB1809439E53822322A /* RNSVGContextBrush.h */, + 51B203790C0B536E63FFEC8EC0A221AC /* RNSVGContextBrush.m */, + 9C74BAC02E8F42F13171CB5EBB0A6B4C /* RNSVGPainter.h */, + 12ED3842C735B59A94777956559439C7 /* RNSVGPainter.m */, + 14FCA22B1E0EF5341BE08313A82E91E3 /* RNSVGPainterBrush.h */, + C4D09E92A1B0E746F4ADA34D8F2122B6 /* RNSVGPainterBrush.m */, + F49F2C73E1294715E47A2DC7AD009CB4 /* RNSVGSolidColorBrush.h */, + 477E8E8EE5FA9726A8CF90F91608AEA9 /* RNSVGSolidColorBrush.m */, + ); + name = Brushes; + path = ios/Brushes; + sourceTree = ""; + }; + EAB1EBDBC508E574C7C59B91747963CB /* SafeAreaView */ = { + isa = PBXGroup; + children = ( + 2D1F2C53A5374BC5218418126F42149F /* RCTSafeAreaShadowView.h */, + 54B9B62E608730A2CBE306FE9CDE2518 /* RCTSafeAreaShadowView.m */, + 0BD3CACF3E438F9A46D05C81FB52A8F4 /* RCTSafeAreaView.h */, + E0A91CADA2435B8C6AC61AEF45EF44A3 /* RCTSafeAreaView.m */, + E920298DB7F4030BBE9C9A24ADF42C8A /* RCTSafeAreaViewLocalData.h */, + CFFE4022583CE979CBE88F9EF7A53714 /* RCTSafeAreaViewLocalData.m */, + 0834A94C959FEA64893F8A2A0AA72243 /* RCTSafeAreaViewManager.h */, + 1FBD936B1589ECFF64B13773254A2084 /* RCTSafeAreaViewManager.m */, + ); + name = SafeAreaView; + path = SafeAreaView; + sourceTree = ""; + }; + EB3AD3036745735E010F9BE86BD72E47 /* Pod */ = { + isa = PBXGroup; + children = ( + AB558D84572314FA3043CE90F9B452E1 /* React-RCTSettings.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + EB66B69C86A7D271401DC01715CD3178 /* Support Files */ = { + isa = PBXGroup; + children = ( + 24DAA171EEAD9EE70B08BEE886075A9A /* SajjadBlurOverlay-dummy.m */, + 73684E0214C8D43E19324DE2BFA3C0C6 /* SajjadBlurOverlay-prefix.pch */, + C2FA7EB913338D7FFB691DDFD8AC4E74 /* SajjadBlurOverlay.debug.xcconfig */, + 26C0691B319A1C9A6AB3E15DE72B4933 /* SajjadBlurOverlay.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../ios/Pods/Target Support Files/SajjadBlurOverlay"; + sourceTree = ""; + }; + EEFDFA8600BE307CD3089356FD93E185 /* RCTSettingsHeaders */ = { + isa = PBXGroup; + children = ( + 452EDA3644C6B00B38EA15C0D16E6FAE /* RCTSettingsManager.h */, + ); + name = RCTSettingsHeaders; + sourceTree = ""; + }; + F0F4E2E1F95B441665655957F435124C /* Pods */ = { + isa = PBXGroup; + children = ( + 7B2AE9399E1C11A903806E501B5581FF /* boost-for-react-native */, + CFD14BB5A8C14CFAFE89CD4532A83D6C /* DoubleConversion */, + DEF4F63DAFAAECC43EA34DF7D732D054 /* Folly */, + 7D1E38485FFB2FD34040F301AF59412A /* GCDWebServer */, + B3D8158E8D1B2830F780BBE8CDE2F667 /* glog */, + 129029D9207F5A5B212B7DC08616F957 /* lottie-ios */, + DCBBAB877BCB65CD648D89C61FD48662 /* OneSignal */, + 95AB3FCBBE030CDF9209B75EA5DFDC0A /* TOCropViewController */, + ); + name = Pods; + sourceTree = ""; + }; + F1472E3E6F3AF69022A5462E68D0A91E /* RCTVibrationHeaders */ = { + isa = PBXGroup; + children = ( + 84003D645FE8F64E26D2D0A721FFAF09 /* RCTVibration.h */, + ); + name = RCTVibrationHeaders; + sourceTree = ""; + }; + F172B789935747E435F097238D8916D5 /* Support Files */ = { + isa = PBXGroup; + children = ( + 27D9A695FFCA7CD9180130E228A7DCB9 /* boost-for-react-native.debug.xcconfig */, + 7BC94ADDD2BE9C6B14901108E4D06F12 /* boost-for-react-native.release.xcconfig */, + ); + name = "Support Files"; + path = "../Target Support Files/boost-for-react-native"; + sourceTree = ""; + }; + F2B3BDDCAE02085A03314D60CD209BC8 /* RNVectorIcons */ = { + isa = PBXGroup; + children = ( + AC73F538061644419ABD36423A8BCE5E /* AntDesign.ttf */, + FCBDCAC887A24D23057D28D42245E932 /* Entypo.ttf */, + 4BD37C5D1BA858A86F0358171F23DA14 /* EvilIcons.ttf */, + 09528410B9816D23D7A2B7DD61BCBA4F /* Feather.ttf */, + F84CABFC1890E2904B210E2AB103E510 /* FontAwesome.ttf */, + C7A6275E66A84D90C8EA802EC69FDE29 /* FontAwesome5_Brands.ttf */, + 88BCD709C53FD816B0738E3EF0E2C627 /* FontAwesome5_Regular.ttf */, + 64144D61C07CB19BB6FB30AFD0D73ACC /* FontAwesome5_Solid.ttf */, + 80F0D6EACF6F6E0E229DC5D851DB2AE4 /* Fontisto.ttf */, + EE76A76F6A9F4B6496B535A781B58E6A /* Foundation.ttf */, + 333F8A944B505106BFD23ED6C6B67499 /* Ionicons.ttf */, + F9D2B89B1F833A86678F3364DC2CE23C /* MaterialCommunityIcons.ttf */, + F7536A367BD42849DC5CDC6244463360 /* MaterialIcons.ttf */, + 4714918EE4630FAB157B2F064DE8CD4B /* Octicons.ttf */, + DB2FF3471161FE8ED77A86B5069D2EA0 /* RNVectorIconsManager.h */, + 5A97AACA39AD7DAD2F9CD93A4B909BCC /* RNVectorIconsManager.m */, + B9C7A3D1BA43DCDB017636BE5419448D /* SimpleLineIcons.ttf */, + 05203268CD23FB609236E0995FDC2892 /* Zocial.ttf */, + 921AC115FE7BA1C9DAE579F5E05F80DF /* Pod */, + 1D725C87DB51E2558F66A8FE7F7A638A /* Support Files */, + ); + name = RNVectorIcons; + path = "../../node_modules/react-native-vector-icons"; + sourceTree = ""; + }; + F4294AC68811CBE2FF7338C1182BC797 /* Resources */ = { + isa = PBXGroup; + children = ( + 9C215BBD797834FE89FA965C2AA370E1 /* ar.lproj */, + B85F7CE633ECE8F59588D1E1CEDB8B1B /* Base.lproj */, + 78321038125796A200A279EFFF357917 /* ca.lproj */, + 284695DECA75458DC9F0674F2CBB5152 /* cs.lproj */, + CF87B8E90810D52AA8D929C1CA23A0CC /* da-DK.lproj */, + 380D6158657840F6C0E4D89C5BFE05B3 /* de.lproj */, + 853C49CD265C5AA5DA2552C088BFD923 /* en.lproj */, + 5F793525BB4973921E4991EA90A46B0B /* es.lproj */, + 9C151AEB29DC97A66898A872C23CFA01 /* fa.lproj */, + 891E698250DF8ADE02D3935D5B702426 /* fa-IR.lproj */, + 994A963E0D7661696AA5B67923A56215 /* fi.lproj */, + 34EE9B46BA77EDAE3F8128CBFCA7706E /* fr.lproj */, + 736D649113F9389422700F740D49A6C9 /* hu.lproj */, + 193B6D213DAA7920A742701BCC1F1F1D /* id.lproj */, + 240FC5906978BF23A0E568243478D054 /* it.lproj */, + 824597724E6E55A70E2A136C0CCD248F /* ja.lproj */, + D8DC38554D4D0A8BD7A6E130EA61FC70 /* ko.lproj */, + 2822AB6E0A86A0CE312F2F0FD622268A /* ms.lproj */, + 13DF6E45E4A24662D39D2ABE45F6F2DF /* nl.lproj */, + 3D3545DA8AF8AE98B4581A647A57DDB1 /* pl.lproj */, + 4A65D8B455B933E2F30F0B8B28D71A75 /* pt.lproj */, + CF4B7538C57D76BB420E0F56BE7F3FC3 /* pt-BR.lproj */, + 0EE21BBBC993BD3DA708B0F040F7CE31 /* ro.lproj */, + 6257AED638D193381FA210B25D71AC0E /* ru.lproj */, + 1FF8283BCF67A5415B7EC1FA684AE163 /* sk.lproj */, + 4670DA52AB56B4468D2026E34E6248D2 /* tr.lproj */, + 67586DC09D87AF553F5DC16248565CCA /* vi.lproj */, + 56B4DE27434DC30C81AB4DAABFD1F89A /* zh-Hans.lproj */, + DDCBDDCD3FF5F185D460EDBBE078F838 /* zh-Hant.lproj */, + ); + name = Resources; + sourceTree = ""; + }; + F5804801F7A9ADD9EFCFE2EDD615D545 /* RNGestureHandler */ = { + isa = PBXGroup; + children = ( + 323A71C26D51240C103EF9D340CE675A /* RNGestureHandler.h */, + 936D737D30E47074E2706CA71BF79631 /* RNGestureHandler.m */, + 0543222B3B6C291A2352B74A7A6DFF58 /* RNGestureHandlerButton.h */, + 7B28A227ED20415CFE40C5EC09E34219 /* RNGestureHandlerButton.m */, + 47D5A4B5FA87B449CFACECE61F7618CB /* RNGestureHandlerDirection.h */, + 50943E759469A4DA556A0A5F5803C5FB /* RNGestureHandlerEvents.h */, + 1B544EC7D04A528AA8A5CB42BE5AE66D /* RNGestureHandlerEvents.m */, + C8595193B7FFA489BFED367220D47EF0 /* RNGestureHandlerManager.h */, + A3A1E694E2A243CA97B835D52B23F14E /* RNGestureHandlerManager.m */, + DCA3D284011188114D17BD5EFE99AC6D /* RNGestureHandlerModule.h */, + B2B14C565101DDA9453A52F2D681CD73 /* RNGestureHandlerModule.m */, + 50A8E6A8B13812D35A6ADFE6AFCF0C67 /* RNGestureHandlerRegistry.h */, + A71C93F96E3F8B126A2B63D17923786B /* RNGestureHandlerRegistry.m */, + 46D023E0C2EA3E600A85E761377D18E1 /* RNGestureHandlerState.h */, + EAFB6F84B30F9B05DF2CE8F9DBE753FD /* RNRootViewGestureRecognizer.h */, + 58B6DDF8649561799C59612A1017402F /* RNRootViewGestureRecognizer.m */, + 1B87F9913CBA43001917D7D69EA71845 /* Handlers */, + 00DC40D534B37DE9AC12714DA8EB0B39 /* Pod */, + 19DA6BD1CE4C35237ABCBA7F0C4FDB1C /* Support Files */, + ); + name = RNGestureHandler; + path = "../../node_modules/react-native-gesture-handler"; + sourceTree = ""; + }; + F62F5F5129F01191B824533A38FAB63E /* BaseText */ = { + isa = PBXGroup; + children = ( + 72C0FC03C6C07D68A5ED376DFDB22818 /* RCTBaseTextShadowView.h */, + AED994A5EF18C21F617C0C8EA52C5F92 /* RCTBaseTextViewManager.h */, + ); + name = BaseText; + path = Libraries/Text/BaseText; + sourceTree = ""; + }; + FAB94AB994DDF994B95A68C2226129F2 /* Support Files */ = { + isa = PBXGroup; + children = ( + F2BA2481F640E0C6376C9E14A5F16D6A /* lottie-ios.modulemap */, + 7D2CFD9F616C99B66967227D5D2CF8AB /* lottie-ios-dummy.m */, + 488A883E82E6CEC81792A718204AFB9F /* lottie-ios-prefix.pch */, + 5CF0AD6932AE049DEFB0E23AA74D4C31 /* lottie-ios-umbrella.h */, + EB443AA4618E950E9D17E53658B666BC /* lottie-ios.debug.xcconfig */, + E42CE18CFB6A66E2D5DC6A99B9019AE2 /* lottie-ios.release.xcconfig */, + ); + name = "Support Files"; + path = "../Target Support Files/lottie-ios"; + sourceTree = ""; + }; + FB4C2F80A748AE9D8847D8D60534C6A5 /* RCTLinkingHeaders */ = { + isa = PBXGroup; + children = ( + 090476E65205943F6F766C8008D7E5C0 /* RCTLinkingManager.h */, + ); + name = RCTLinkingHeaders; + sourceTree = ""; + }; + FB4CB4A31F8343CCD6D8C142127F695E /* RCTTypeSafety */ = { + isa = PBXGroup; + children = ( + 160649055C6C88892758465CD8ED9E33 /* RCTConvertHelpers.h */, + 149414FC5E4F3CC68E219ADB128EC4DF /* RCTConvertHelpers.mm */, + 6B1A001CE4A127740AE3F45B3BAAB4E6 /* RCTTypedModuleConstants.h */, + EF2C038FAAFABD6FE6339077DDF5CD33 /* RCTTypedModuleConstants.mm */, + 6D1BA69154386317DB07E0ABA9AA6430 /* Pod */, + 91F6D219C087BC951038A1657E5715E9 /* Support Files */, + ); + name = RCTTypeSafety; + path = "../../node_modules/react-native/Libraries/TypeSafety"; + sourceTree = ""; + }; + FDA62C43DA4F32F4140B62DEEF96A4E3 /* React-jsinspector */ = { + isa = PBXGroup; + children = ( + 61064E10F2E4AAC0D7F37609428E8636 /* InspectorInterfaces.cpp */, + 6EDD0F2045255702F8BF873E21C6CEF2 /* InspectorInterfaces.h */, + 31F90C16814E9BBE9264650998C278B4 /* Pod */, + AC9328240DA0E8F237AAF8F5DAC3F133 /* Support Files */, + ); + name = "React-jsinspector"; + path = "../../node_modules/react-native/ReactCommon/jsinspector"; + sourceTree = ""; + }; + FEAAA58D17695369577A5ECDEBE206E6 /* Text */ = { + isa = PBXGroup; + children = ( + 447B419F81A90075849E06FE8EE052A7 /* RNSVGFontData.h */, + A4BD490F9D34DC995001BB739A9FE59A /* RNSVGFontData.m */, + 8952FB547D8764D53F54627EFECFBA41 /* RNSVGGlyphContext.h */, + 77488C1A650D170A8045F3CFF1F3CFF2 /* RNSVGGlyphContext.m */, + CDFC1FE89654AB6A88FCEBC03172F4DE /* RNSVGPropHelper.h */, + D1A77DD59DB1EB34348E396E28EF45F2 /* RNSVGPropHelper.m */, + 0523E4E2CD9F4685C272D2EE98CC5654 /* RNSVGText.h */, + 709CC5C4FE2BC2CE8DB81A782936132F /* RNSVGText.m */, + 95DB12834C63CB813C969B0CC07B9B74 /* RNSVGTextPath.h */, + FF595B3F7A59900769E6A40AB26F2F61 /* RNSVGTextPath.m */, + 4DF130A479D866B624EEE73A4ACCE8EB /* RNSVGTextProperties.h */, + 2129CA751439449074FF8DD945E2B642 /* RNSVGTextProperties.m */, + 38885F5455D2BF57992E2E59AB4FABBB /* RNSVGTSpan.h */, + A02CF47E0BABAF019F8DAFA655EB4001 /* RNSVGTSpan.m */, + ); + name = Text; + path = ios/Text; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXHeadersBuildPhase section */ + 081CFC04F9440AD302CFD14C664851FD /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 17570970A8CFB5E72351E9FD3CE6BBE7 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 84A45643054AF41CF97D4A89FDE66902 /* TOActivityCroppedImageProvider.h in Headers */, + B80E9F6CEF5627A0312AAEB00E46E0C3 /* TOCropOverlayView.h in Headers */, + 4D103A9387DC8D91C4793A8C1088B775 /* TOCroppedImageAttributes.h in Headers */, + 6DDDAF842E937E289DCA2031352B890E /* TOCropScrollView.h in Headers */, + 155D671BFE7F4DBC86349342979AC616 /* TOCropToolbar.h in Headers */, + 813AB2EB5300CAD6D485FB68CBD05804 /* TOCropView.h in Headers */, + 8F0677ABF0CD86A559345EC9578D1EC2 /* TOCropViewConstants.h in Headers */, + 58B03385E5A5DF0962EC5F49D8959E0B /* TOCropViewController.h in Headers */, + DB9FDF2BB65177B5098AE1B773B5BC56 /* TOCropViewControllerTransitioning.h in Headers */, + 35FB88D44D01153619B42E21B49A3362 /* UIImage+CropRotate.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 1F518BA4CC62A3D4B7E2E593AEECBD57 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 2421B2BEB31793521AF7BB2ED8723279 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 4CB929E427FE18007FE5916C3564C473 /* bignum-dtoa.h in Headers */, + 412512DFE06BF80C29382028C8AD6410 /* bignum.h in Headers */, + BEC1052E6EC8BDA846B649FFD43F6826 /* cached-powers.h in Headers */, + 4EAC303956D8C220AD690CEAA3F90684 /* diy-fp.h in Headers */, + 3FAA78E7F45F7BAA1325594718AAA891 /* double-conversion.h in Headers */, + E953548BA212D0038557EBF302E5FB1A /* fast-dtoa.h in Headers */, + 2E31E0B3EBD402CEFF64891929293A70 /* fixed-dtoa.h in Headers */, + A189673CE87F612ED3488113F9DAFE98 /* ieee.h in Headers */, + 92A8544B73B2FA29B9CFDE72C5FDDBB6 /* strtod.h in Headers */, + 267A50C4F892793B3ABF4C5AD43020BF /* utils.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 25322A9E03B2AD9C9E539D96658200BB /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 049AD78AD2E6445D635603F1C70A88C0 /* JSIExecutor.h in Headers */, + 472CC07839089B62D0BB86274E5D5096 /* JSINativeModules.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 29394FD944E7E532A4A9758598FDA488 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 6A5977B6D712F1ACFA75658B56664AAA /* RNCAsyncStorage.h in Headers */, + BCB6AB6E9F134247AFE99BB796408BF6 /* RNCAsyncStorageDelegate.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 2BAE30A82EC4464A3469ABBF74FE8990 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 78D75497D8A4D1E7B532209B05BA4E8E /* RNSScreen.h in Headers */, + 1ED3A3DB18B0D7129F78B640C0F033FD /* RNSScreenContainer.h in Headers */, + 653459802284CE6651EC63E4FE53574D /* RNSScreenStack.h in Headers */, + 2F7BEE2B0414D2430FEBDE422D82E716 /* RNSScreenStackHeaderConfig.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 2CB84B9CB3A26CDB468FEEF13D2D334D /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + B20A5DA744C58F612620DB2E21CF7B9E /* InspectorInterfaces.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 30ADC45E75700DC8967F54E043BF057F /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + CE4E6A34191F267C7703347479C4CCDE /* BarcodeDetectorManagerMlkit.h in Headers */, + FF07E12B8A58DA433D84D9A60197B004 /* CameraFocusSquare.h in Headers */, + 569E2316940A29347B65918DCF0E0E1A /* FaceDetectorManagerMlkit.h in Headers */, + 0FC1D8801EEE6E866836816626B0B371 /* NSMutableDictionary+ImageMetadata.h in Headers */, + AA622C1140AE18905F3AD5243F16E51A /* RCTCamera.h in Headers */, + C4E00B552DA4D3408ECF3F4127A03F42 /* RCTCameraManager.h in Headers */, + 3FBC3893100947F95B19BA860A026A3F /* RCTSensorOrientationChecker.h in Headers */, + 96F775E6710177DF1FCFAFED764BFEFE /* RNCamera.h in Headers */, + 72E3F4A827313437ED3151568540B256 /* RNCameraManager.h in Headers */, + D13BC111FEEBBD6EC154C535832A4447 /* RNCameraUtils.h in Headers */, + 92DADA13A7A1796EDD240F3EF2EEEEB3 /* RNCustomWhiteBalanceSettings.h in Headers */, + 53775B359970FB289385C396549256EA /* RNFaceDetectorModuleMLKit.h in Headers */, + 7542ED1CE7DF9CDA0D375075C883C653 /* RNFileSystem.h in Headers */, + B347018447326A229B053590D339B4AF /* RNImageUtils.h in Headers */, + 8EC6C91A06CCD5A3257688D50EC11B22 /* RNSensorOrientationChecker.h in Headers */, + 61F527C1B32E2C8DB7B792BF66AA4134 /* TextDetectorManager.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 3CE7E03B118C6CF074866C6C3EABD0ED /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + F5C3427D4C1F112DD003583B82F03720 /* Bitfield.h in Headers */, + 6F266332A5D24451B92A403143B5637C /* CompactValue.h in Headers */, + 666133DCD3FC184F8A449735A22DA8C9 /* event.h in Headers */, + E8BC0E18C224F69A40499819E7123225 /* experiments-inl.h in Headers */, + 175B26C0EAABD85DA6DECCE4302D7272 /* experiments.h in Headers */, + 19700AD761B0B55A1FAFEE5A295F35B7 /* log.h in Headers */, + 097115445A404676AADF2DA1068D8924 /* Utils.h in Headers */, + 9B3B9B4DCAF9E8668F9711C10F8D29B9 /* YGConfig.h in Headers */, + 791272CE84E3ED1805F347296C30FEF8 /* YGEnums.h in Headers */, + 2C4FAC32FFC1EE08FA204408986EEB87 /* YGFloatOptional.h in Headers */, + 1C87BCCA6A80464790658CCE117A2354 /* YGLayout.h in Headers */, + C4B18E922F71DC05B3A14E6C7C6DFD86 /* YGMacros.h in Headers */, + EC44FEE7AA4D0866F99691AF5CF9D5A6 /* YGNode.h in Headers */, + F6111E21AFC6648E4CCF23ADF1534A92 /* YGNodePrint.h in Headers */, + 8CAF937F8255B20EFBB585A9AF9F9E2E /* YGStyle.h in Headers */, + 67C8E9C0181F34241CF5B39C24352D26 /* YGValue.h in Headers */, + 9FDC68E3583F49DADC1D5D902B470570 /* Yoga-internal.h in Headers */, + 76B7C008F00952137EDAF0CE5EDDE60C /* Yoga.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 3D74FAC0A5A5FC7D8AB36489440E6DCB /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 1AF17FD06D714443065648EC2942605A /* DeviceUID.h in Headers */, + D514142384ACF8A93369F892EEBC9AF0 /* RNDeviceInfo.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 484C0D3AEAF886AFEAFC7B7E99CA3800 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 53DE50FA20FC2B26AE653FA17F3E29FC /* AIRMap.h in Headers */, + D044F21BDBA21C81C3C6614DB10864CC /* AIRMapCallout.h in Headers */, + 95096D6E6102AE0D84C7B7769BBF5365 /* AIRMapCalloutManager.h in Headers */, + 85386B3791E0874835CB13F2DDAB0BC4 /* AIRMapCalloutSubview.h in Headers */, + B55C844345EED7441638369DFA68F921 /* AIRMapCalloutSubviewManager.h in Headers */, + 3FCCDA8C9679A838EC35F2AF3EB2CB20 /* AIRMapCircle.h in Headers */, + 3F174EA95D135635D59F7209D0872BC0 /* AIRMapCircleManager.h in Headers */, + 1C52C6971F3E1B451FC525BCE69E28AB /* AIRMapCoordinate.h in Headers */, + B63B147DAA05855AA3CD9917AEECDD16 /* AIRMapLocalTile.h in Headers */, + B792981C30D4BC90279B815F0A23F681 /* AIRMapLocalTileManager.h in Headers */, + 663A181281EE34159643C163C528D27E /* AIRMapLocalTileOverlay.h in Headers */, + 91E3A3FD06CC4A326C0402572E41B2C6 /* AIRMapManager.h in Headers */, + 77E9916D4C93DFD377A7511AD4AA6D46 /* AIRMapMarker.h in Headers */, + 7A230ADFD1A93BD4E35E314A28D84D20 /* AIRMapMarkerManager.h in Headers */, + B77589482CC829D2A516B279AE73EC81 /* AIRMapOverlay.h in Headers */, + D330B53FAA41F05742EDE21BCC0E9E4F /* AIRMapOverlayManager.h in Headers */, + C3A2786EDEC0B8FBB873CB9B57BDCD2D /* AIRMapOverlayRenderer.h in Headers */, + F83743BF8358D71BA781DE66513B6444 /* AIRMapPolygon.h in Headers */, + B65959B74E672568844B38C5DE9A8FFF /* AIRMapPolygonManager.h in Headers */, + 684C475E2410717D6339FC125F8D57DA /* AIRMapPolyline.h in Headers */, + 00069A58650B02A2C515F88F433F81E1 /* AIRMapPolylineManager.h in Headers */, + D4E3178C44C2894DC7DB0E181CE8B0D7 /* AIRMapPolylineRenderer.h in Headers */, + 708EFCC2CE9EE99E2A830E2F708EC791 /* AIRMapSnapshot.h in Headers */, + 2D65D828FDCEAC42046C2B9D01F7E10E /* AIRMapUrlTile.h in Headers */, + F5726B554FBDAEB1A9728B7D0AEB6D63 /* AIRMapUrlTileManager.h in Headers */, + 4423820660D6F2F1249BCD82D4D45E6D /* AIRMapWMSTile.h in Headers */, + ED83B99A83F718997860D49CF590905F /* AIRMapWMSTileManager.h in Headers */, + 8C8A7F28FFD94D6CB7D0F8127AFE2DEB /* AIRWeakMapReference.h in Headers */, + 8899329F80B7042826766AB10F9AF75B /* AIRWeakTimerReference.h in Headers */, + C47978213EDC31F9925F602A96518800 /* RCTConvert+AirMap.h in Headers */, + 166958E42BEA6DE70BB2A5EE5CFBF45C /* SMCalloutView.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 51C75B8172AAB3157371122BB16B4F4E /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 4B49D0E16B28D135CDCA6A17732353F0 /* decorator.h in Headers */, + FCD52B1CE0C34C39BFBF89800E9F4078 /* instrumentation.h in Headers */, + A50C3330711B693F57C107974EBEA8C3 /* JSCRuntime.h in Headers */, + D3A18DFAA3A19F89748D754D0B66D895 /* jsi-inl.h in Headers */, + C8C11160192EF1F7E14BD1EA8BDEBC94 /* jsi.h in Headers */, + B82F9F3C658A428CA93D1BF7B296E0C1 /* JSIDynamic.h in Headers */, + 0B2AB7A836A0EF1B01745CE562C24317 /* jsilib.h in Headers */, + 6F2C806EC8E768B8866F052C6AFF532E /* threadsafe.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 534B2436DE96B23BCB4CC6DA76DAA031 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 55AECB99E2352374B0E70FB0090F6E3F /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 55D2B717798F7A879FBBCBF6429C1574 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 67BDE1F68DC2CFC83D208744B913E344 /* SajjadBlurOverlay.h in Headers */, + EAFE220896DFAEB902CB7265C3316EDB /* SajjjadBlurOverlayManager.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 57C1D6862A7225B2E22F74C253B3111B /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 4A72E27EFAA0C9BF5C9DCAABC2F48F77 /* RNI18n.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 59C3617EF4628E80D4A9DE69411726E1 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 5BFDFA56BCE9CED7AA5AC8AD65F853BD /* CoreModulesPlugins.h in Headers */, + D9D81938A54B0124BA90B7998F309F1F /* DispatchMessageQueueThread.h in Headers */, + 252F18CA6FFD94E4D88753FAA4DC2F85 /* JSCExecutorFactory.h in Headers */, + 25C1E7FE2F75F1D4DEC3186BC1E412A6 /* NSDataBigString.h in Headers */, + 3A42536724CA7BC0848AB43F5C183D39 /* NSTextStorage+FontScaling.h in Headers */, + AA2BD24E9A3E879E51C0284943FAABB5 /* RCTAccessibilityManager.h in Headers */, + 0CD2FD62D3600BC23338139B8E9F0F2C /* RCTActionSheetManager.h in Headers */, + 976B3154FB88B4B82F134118510AA518 /* RCTActivityIndicatorView.h in Headers */, + AFF581F3C4FDEE27AF419E2BD3E8546D /* RCTActivityIndicatorViewManager.h in Headers */, + 2450335F97B29BF5F1C204183191EACA /* RCTAdditionAnimatedNode.h in Headers */, + 5EF1D859EDE3F66A4BBB64C1438BBA40 /* RCTAlertManager.h in Headers */, + D078B073EAAF1EB4D019E5B2EAE24D56 /* RCTAnimatedImage.h in Headers */, + B479D79B87CECEA3A64FD843E3715096 /* RCTAnimatedNode.h in Headers */, + C82ADBB3185914B64A66F64A41B2A1DA /* RCTAnimationDriver.h in Headers */, + 932D44DBC9472E05CC1D10491B5F2A04 /* RCTAnimationType.h in Headers */, + 1C512B7F40583377A8F74DEA5627DC23 /* RCTAnimationUtils.h in Headers */, + 2B24E5E3C82C362FE25DE0263ECC214C /* RCTAppState.h in Headers */, + F47ED464903DEA34E24E450CD8B0F21F /* RCTAssert.h in Headers */, + 515CD29629A69AD5A6895E4ECA940060 /* RCTAsyncLocalStorage.h in Headers */, + BCB23973A0414F8F738C836B06D1CB27 /* RCTAutoInsetsProtocol.h in Headers */, + 8EC9D2790C3725CBD6C1A03024C3E17F /* RCTBackedTextInputDelegate.h in Headers */, + 2D232E58E4FAA86B6A4BC7E7FA2D40A7 /* RCTBackedTextInputDelegateAdapter.h in Headers */, + CF31F826CE3503778831E97A4103CFE1 /* RCTBackedTextInputViewProtocol.h in Headers */, + 0A04CC7C8ACFBE953C9E5B51FF2C2A0B /* RCTBaseTextInputShadowView.h in Headers */, + E1676B765B569B2E2660BF4E1D21C882 /* RCTBaseTextInputView.h in Headers */, + FBD693849E7BB51C7402A16BF51B981F /* RCTBaseTextInputViewManager.h in Headers */, + AFE64EA826564EB542F1507FA1EFFC4A /* RCTBaseTextShadowView.h in Headers */, + E34A33E6C5C1438B0AEDC19CE7DDECC0 /* RCTBaseTextViewManager.h in Headers */, + C11DA2CF167A7C7518A95D8FA8A0C2A5 /* RCTBlobManager.h in Headers */, + A9711D428FCC607C07B6CE1383B7F0BA /* RCTBorderDrawing.h in Headers */, + 84B60FD8A424EC6B3AE0672414ABED07 /* RCTBorderStyle.h in Headers */, + 8D25D63B2953FBE0C4B1CC3682F02959 /* RCTBridge+Private.h in Headers */, + 35D465D1FA0F6F556D15B9DE387CE764 /* RCTBridge.h in Headers */, + 4B81B78AEF09B39CD9ED117304C3C500 /* RCTBridgeDelegate.h in Headers */, + 6DD8E3997183351E85D7404A87200273 /* RCTBridgeMethod.h in Headers */, + F2905D0C93CAA52A467B88EC0BB62A59 /* RCTBridgeModule.h in Headers */, + 81173174EEBCB5FC7D5E995911A21757 /* RCTBundleURLProvider.h in Headers */, + BA32EBBDE51B6703E5D015F2954CB179 /* RCTClipboard.h in Headers */, + 40A7039DD5465D3ADEB8C6D176F86BDC /* RCTComponent.h in Headers */, + 0A8D27FA17E653DEF8B953AC197BB561 /* RCTComponentData.h in Headers */, + 5D513A806BF86D720EA3D18FF016DACC /* RCTComponentEvent.h in Headers */, + 934C513ABFA8826CB7AEE58E9C2C8918 /* RCTConvert+CoreLocation.h in Headers */, + DE456ABD0C62606DF50778D52418F6BB /* RCTConvert+Text.h in Headers */, + FA3120364BF59C285224970313A10607 /* RCTConvert+Transform.h in Headers */, + CCC41DA03718EA474A8473730F319215 /* RCTConvert.h in Headers */, + 47BB7C63F1E1B1BEF2EC5302C42DB529 /* RCTCxxBridgeDelegate.h in Headers */, + A0426F2F157FFC30BEA1952DF1914233 /* RCTCxxConvert.h in Headers */, + 4710853DD7188BCA00B29E6ACCFA1EB8 /* RCTCxxMethod.h in Headers */, + B3401077BBDE463A91FF7BB8D1E209DB /* RCTCxxModule.h in Headers */, + A2788B64CD61F35248DCE0B2BCB16ACA /* RCTCxxUtils.h in Headers */, + 9888FB7AB2D8DC60243C2957FE6AABBD /* RCTDataRequestHandler.h in Headers */, + 62EDCFABFE61734116D2B5C594A98B79 /* RCTDatePicker.h in Headers */, + 6D1ADED4F34E054E20573577A06DBBD4 /* RCTDatePickerManager.h in Headers */, + 89F47F97CD36FA4F8EA4AD51061BD659 /* RCTDecayAnimation.h in Headers */, + F467229BFF25B653758129525EBEBFAB /* RCTDefines.h in Headers */, + 8D7099D328BA23A3A701725B4D08A574 /* RCTDeviceInfo.h in Headers */, + CAB9F204552C9B88340159C54DF4FC80 /* RCTDevLoadingView.h in Headers */, + 63045B14B92242DBDDB03DC830FBB082 /* RCTDevMenu.h in Headers */, + B3434674CAC611A3A5BA80C308AE00AF /* RCTDevSettings.h in Headers */, + 3AC0CBF1785896EBE6910025B130958D /* RCTDiffClampAnimatedNode.h in Headers */, + 5D020A613190518F8C2D3D5734344BEC /* RCTDisplayLink.h in Headers */, + 7E5FB49135BCAF48A58D1D177B465588 /* RCTDivisionAnimatedNode.h in Headers */, + 936F1E3F1D45E84C847004CBC506690B /* RCTErrorCustomizer.h in Headers */, + A7C966A1786A54CD9106F17B11EB4B4D /* RCTErrorInfo.h in Headers */, + 7F655792C63E8271F9DA61D621A1C959 /* RCTEventAnimation.h in Headers */, + A3A233826BDB450AC1B0A88DE77F9989 /* RCTEventDispatcher.h in Headers */, + B21AEBF65DE150C731648873A36F80E2 /* RCTEventEmitter.h in Headers */, + DE47299E2D048E18334EC7635B5AC522 /* RCTExceptionsManager.h in Headers */, + DC8B781D1A5F4D4497A77FD9646165C3 /* RCTFileReaderModule.h in Headers */, + A24AAD5B7F97BBA288A9F4C22BB5710C /* RCTFileRequestHandler.h in Headers */, + 801483DE412D4BF3CF95BEF3AC4ABB1E /* RCTFollyConvert.h in Headers */, + 6E09DA5F1B9C0AE2E377506C862F0455 /* RCTFont.h in Headers */, + AC930DCBDDBF6DA9FA50AE33B3C1B794 /* RCTFPSGraph.h in Headers */, + 2CAFBDC46740222D157A22BF86DDF69C /* RCTFrameAnimation.h in Headers */, + A0A7DA6ED65E4FE0568C5A0124AC624C /* RCTFrameUpdate.h in Headers */, + 6CCBAF7153B24997C6CD974660C3ABC5 /* RCTGIFImageDecoder.h in Headers */, + DF3426F6CCCE24078066ACC94F475A24 /* RCTHTTPRequestHandler.h in Headers */, + 43F5C20196220068F1660BAE47680B29 /* RCTI18nManager.h in Headers */, + C0A208336DA101C4B178510A2E2B989C /* RCTI18nUtil.h in Headers */, + 81B32B24055AE41A3081CAE24C875274 /* RCTImageBlurUtils.h in Headers */, + 43A21952A63FFBEF4EB94EA926245585 /* RCTImageCache.h in Headers */, + 0BAD0E4F37E1C84962705C684FF3D98A /* RCTImageDataDecoder.h in Headers */, + F8DE12A1757E41AF5E09C878F1FEAB74 /* RCTImageEditingManager.h in Headers */, + 7E5C77306B0120BC531E6B3011948A5A /* RCTImageLoader.h in Headers */, + D221A675CE49FDCFC44E01841656D6E1 /* RCTImageLoaderProtocol.h in Headers */, + 2B53182B2CE0F0B61566E9BC38F6857C /* RCTImageShadowView.h in Headers */, + 61F094EE7B91C5247094B7D99725DF6B /* RCTImageSource.h in Headers */, + 426A6B61CCCFC58D1398CB5B3872E63C /* RCTImageStoreManager.h in Headers */, + 3B23AFDCBDDCBD614182D0E1FD16966D /* RCTImageURLLoader.h in Headers */, + 94FA7CFBE186ACBEDA8755A070714410 /* RCTImageUtils.h in Headers */, + 4F0F1E929533747DCC277FD83E5C5B7C /* RCTImageView.h in Headers */, + C147F2CEC6EA6DC56312544EA2B61E25 /* RCTImageViewManager.h in Headers */, + 4011C739D5DEC3B12487AAE18173FAAD /* RCTInputAccessoryShadowView.h in Headers */, + D8B9124A116641613A5AD375400BC041 /* RCTInputAccessoryView.h in Headers */, + 08049A6D30CC95AF652F3E19D81B42E8 /* RCTInputAccessoryViewContent.h in Headers */, + 13BD0933C7349140395E3BA40F6CE4D8 /* RCTInputAccessoryViewManager.h in Headers */, + CB9A435EDD2B4ADBCB4833E0C97C22B3 /* RCTInspector.h in Headers */, + 3BF6E269C033023B01209B9AC0E0B889 /* RCTInspectorDevServerHelper.h in Headers */, + 727302CD2F03FF3C7045D0F1173EF5C1 /* RCTInspectorPackagerConnection.h in Headers */, + 7851762CD157D319BCE0D4ED79695059 /* RCTInterpolationAnimatedNode.h in Headers */, + 55FDD3B1073DC6FD56E652DF0A10228B /* RCTInvalidating.h in Headers */, + ED8F4380242039B1D9DA4EE70557D8A0 /* RCTJavaScriptExecutor.h in Headers */, + 0450FE85C4DEEC4505AECA8B73A0B8DE /* RCTJavaScriptLoader.h in Headers */, + 999FE4D5347DA95962A1F13ACB4B013F /* RCTJSStackFrame.h in Headers */, + F05E5CFAE1B52F4737C9D09EA3249FAE /* RCTKeyboardObserver.h in Headers */, + CC190464D2D49F86BF35F344CBA111BC /* RCTKeyCommands.h in Headers */, + 07FF52CB948A61178E340F8AB724249B /* RCTLayout.h in Headers */, + 55A9EC30806E256B12F222E623808942 /* RCTLayoutAnimation.h in Headers */, + 9E131099EF0744EB76C173A42972F885 /* RCTLayoutAnimationGroup.h in Headers */, + AA7A102CBCA7599AA7A68A50F1A0AFF3 /* RCTLinkingManager.h in Headers */, + 65AB1B7C60D2E77D88E96788682C8E96 /* RCTLocalAssetImageLoader.h in Headers */, + 02923C069415F0CD65562905393429E8 /* RCTLog.h in Headers */, + 9E66C9776D465D0124FDE14D88DD0D80 /* RCTMacros.h in Headers */, + 9FAF36A945E2C379E64CB31FA571B978 /* RCTManagedPointer.h in Headers */, + 9FF183110115C937DB51213A4DA3772F /* RCTMaskedView.h in Headers */, + 758110B247ECB13EC801828F2A0C0DB0 /* RCTMaskedViewManager.h in Headers */, + DED057BD0B25BC346498BE310798EA3D /* RCTMessageThread.h in Headers */, + F475C50484874DB1912411B5ECB45CA1 /* RCTModalHostView.h in Headers */, + 55DD5B2D382FB47A723ED5C10591A59D /* RCTModalHostViewController.h in Headers */, + 1E5A64A68F1D4178553588899AA968F3 /* RCTModalHostViewManager.h in Headers */, + 3A315A51A99A07425D30FEEDBCBB093F /* RCTModalManager.h in Headers */, + 24AE6AE4AA225667776A83DB617D48A4 /* RCTModuleData.h in Headers */, + 2BABF6155C2E29D8C513758DE51EC8FD /* RCTModuleMethod.h in Headers */, + 48035C5E8808CF159464510D86FBF128 /* RCTModuloAnimatedNode.h in Headers */, + A045267693EC6A8CC3C20C9915D363D8 /* RCTMultilineTextInputView.h in Headers */, + B36A5B7958D233867097911B46B33C09 /* RCTMultilineTextInputViewManager.h in Headers */, + B3FD1183F8A1D4A77708CA5F24CF03B4 /* RCTMultipartDataTask.h in Headers */, + A024865E7F29E9710BE5090ABEFDD7F5 /* RCTMultipartStreamReader.h in Headers */, + 01A75BCE4636A7DCF23565521DA2AB7A /* RCTMultiplicationAnimatedNode.h in Headers */, + F2C2EEBF3B51F8899ABEC42E6C28D414 /* RCTNativeAnimatedModule.h in Headers */, + 4A3ABA68450CE4D22A898332250E44F8 /* RCTNativeAnimatedNodesManager.h in Headers */, + D3E0C3799B74F64555BB170F15E0D842 /* RCTNativeModule.h in Headers */, + 35DC9261C035AF7C2F4CE2608A84D9B6 /* RCTNetInfo.h in Headers */, + 5970A5D43B729711B38BADB229EB84DB /* RCTNetworking.h in Headers */, + 3D18714F2ED099F21323966C491044EA /* RCTNetworkTask.h in Headers */, + 80D071F16D68C3FFC69CFD74C75BC6B6 /* RCTNullability.h in Headers */, + C155C31E858F07D225EB0189A290D5B3 /* RCTObjcExecutor.h in Headers */, + B5E58D1CE08EEBB487BAA7F99E329378 /* RCTPackagerClient.h in Headers */, + DD4A3D30C89E3F3FA35ECD00DB52C2A9 /* RCTPackagerConnection.h in Headers */, + 189DD7918B6794E327613D8F8D92C74D /* RCTParserUtils.h in Headers */, + 1FA2F8CD459868FE7D6A022B8F7DD2BD /* RCTPerformanceLogger.h in Headers */, + 9E5B66A168A6F6F3D57FE508085A4376 /* RCTPicker.h in Headers */, + 617F4253D27C29AE61E2325D33B907EF /* RCTPickerManager.h in Headers */, + E9217266CB2B09F77F2ABE8179C14253 /* RCTPlatform.h in Headers */, + 1F5BE9BBD60F40AEECE1EF476DAE0554 /* RCTPointerEvents.h in Headers */, + A450D74956A8669097B8A089222627A4 /* RCTProfile.h in Headers */, + BCFAE5448AF872E1D9D547E5C90BD62C /* RCTProgressViewManager.h in Headers */, + 9296976E6067CCC8F6D57DAD1A12B822 /* RCTPropsAnimatedNode.h in Headers */, + 804784DA805BCF2EA4D7F5E60B7F6F89 /* RCTRawTextShadowView.h in Headers */, + C2C3FF0A10C83804CB8525DC58981808 /* RCTRawTextViewManager.h in Headers */, + C1503ED95C91A1F89D250F6BE55F9DCC /* RCTReconnectingWebSocket.h in Headers */, + E9F74CDA80736CBB8AAFDC42E23AD755 /* RCTRedBox.h in Headers */, + 549DB43863BF582C2DE7B46ACC079578 /* RCTRedBoxExtraDataViewController.h in Headers */, + C47D5126E308A0C9F666F31606013E25 /* RCTRefreshControl.h in Headers */, + 921423EFA48A32993AF3FE71A914F76B /* RCTRefreshControlManager.h in Headers */, + 766A4636F470A7AF9DEB41343AD31644 /* RCTReloadCommand.h in Headers */, + 2DDCB30E59BE5A65F041562CE547B4AB /* RCTResizeMode.h in Headers */, + 6ABD178216D08B57441948546B7E6539 /* RCTRootContentView.h in Headers */, + 071A934866BB69B2199EBC47F537B5D5 /* RCTRootShadowView.h in Headers */, + 061FCB70A13E06EAE1BDB03834EE7E64 /* RCTRootView.h in Headers */, + BB90E6A4E393FAA2B2784EEC38CD50A2 /* RCTRootViewDelegate.h in Headers */, + AC8C22B33F76CB6D7666E536C83984C0 /* RCTRootViewInternal.h in Headers */, + A768B5129A656B2BAB686A88EEDCA04C /* RCTSafeAreaShadowView.h in Headers */, + A81FBA67C0FD7AF2522355CC59DA5650 /* RCTSafeAreaView.h in Headers */, + E269F8910E09BF445F9F7B766B3D55F0 /* RCTSafeAreaViewLocalData.h in Headers */, + 3A87B0A1680423F27BB906B8A126700A /* RCTSafeAreaViewManager.h in Headers */, + 36CFEE9E51FA0117F56C3157033832B6 /* RCTScrollableProtocol.h in Headers */, + 69AF0BA3AB5838DBDBB1551849F53A99 /* RCTScrollContentShadowView.h in Headers */, + 1200AB1E7B6722694536F7E95DDB60B0 /* RCTScrollContentView.h in Headers */, + D530B6B54B25518A6E2830C6D22587FD /* RCTScrollContentViewManager.h in Headers */, + 0AD68CEE48BD603837FC016D4E8D2D91 /* RCTScrollView.h in Headers */, + 0F0193C74FF608B29CF21FDFFEAA6B32 /* RCTScrollViewManager.h in Headers */, + 14FDF7279CF0D2D3DB1BCF00AA537D67 /* RCTSegmentedControl.h in Headers */, + 9FD1B51ABF004BB38C73915504371949 /* RCTSegmentedControlManager.h in Headers */, + A876C9A83B48A4A2F17019590AF6CE30 /* RCTSettingsManager.h in Headers */, + 71E8065E6BCF660A7E17E84E23DFBCE6 /* RCTShadowView+Internal.h in Headers */, + 0A50B4FE21E8A78FEF7156ECC07D90F1 /* RCTShadowView+Layout.h in Headers */, + 1CD174A94F1373317171697ED2CE4EA1 /* RCTShadowView.h in Headers */, + 047ACA06CEC897F74C59BD937FF5DF42 /* RCTSinglelineTextInputView.h in Headers */, + 7BBB52A23ADB0C9AA1E7BBF2EAC91D21 /* RCTSinglelineTextInputViewManager.h in Headers */, + F46991DCD5A42EBC7DBF19355D61EB18 /* RCTSlider.h in Headers */, + C19452253247F2A143AF205392354C6C /* RCTSliderManager.h in Headers */, + 04C87EFCEB86D2C356AAF3C69AFA7F08 /* RCTSourceCode.h in Headers */, + 6ACEAA2F3E616E0CD9707B5E08F2533C /* RCTSpringAnimation.h in Headers */, + DD5BCE4C7FEF778891D17C5CE28041B4 /* RCTSRWebSocket.h in Headers */, + 7F5D8153196304DD5DE93AA87C002357 /* RCTStatusBarManager.h in Headers */, + 220BA475160F1C500F34821FCF3C9EBE /* RCTStyleAnimatedNode.h in Headers */, + DD834EEA56C701A1D4E62C7D04E4AB7D /* RCTSubtractionAnimatedNode.h in Headers */, + 1A6A3AFB5B9E105E9D82037C30EF8E3C /* RCTSurface.h in Headers */, + 45880CAC93FEC7041DC08C303CC8FD7F /* RCTSurfaceDelegate.h in Headers */, + DCC3D1FE6B849D21B7FB6944E93708C7 /* RCTSurfaceHostingProxyRootView.h in Headers */, + 6A65ECC4583BBBDEB9D0C62FC3DA972E /* RCTSurfaceHostingView.h in Headers */, + 9E4667F0217BF48EE65158392E6F6F6F /* RCTSurfacePresenterStub.h in Headers */, + A1FE8BE9FD30378BC5E33769F2B8995F /* RCTSurfaceRootShadowView.h in Headers */, + 6E2FB9DFEE876ED26F6ED385F842A08B /* RCTSurfaceRootShadowViewDelegate.h in Headers */, + CD19F2C82270D23EB3479F510FBA02FD /* RCTSurfaceRootView.h in Headers */, + D76B493A6A67EF04F62AFE4ED25339FE /* RCTSurfaceSizeMeasureMode.h in Headers */, + 9E25F13BFB9E09E84B93A1F969B13D26 /* RCTSurfaceStage.h in Headers */, + 5B0A0E47969A2F15338F361DBBFD8725 /* RCTSurfaceView+Internal.h in Headers */, + 5260FB3F32457CCCADA00F7059813CB1 /* RCTSurfaceView.h in Headers */, + 2D0470C470AAAD1D7A36E60B71935057 /* RCTSwitch.h in Headers */, + 536AE788D5B9127F0C3DCFD2E22129BD /* RCTSwitchManager.h in Headers */, + 4CC7F8212794EC8D6BCD4C3C5BE6EB96 /* RCTTextAttributes.h in Headers */, + E5DDC77DCFE9D5648B96BAE3CEBE9C0E /* RCTTextDecorationLineType.h in Headers */, + 8FA10329151EE2E5C2F980F24DD4C88B /* RCTTextSelection.h in Headers */, + 2CC9CEE36D5D2B245F6A299041D1166D /* RCTTextShadowView.h in Headers */, + 4D8C3EA4A51A037FEEB82861DDCDCAF6 /* RCTTextTransform.h in Headers */, + 4C71182AEA89AB92CE5997ABC722CDBB /* RCTTextView.h in Headers */, + B61BB30FFA59526C5511D1D3D18FF373 /* RCTTextViewManager.h in Headers */, + 3CAB86055993D5223EE1DE519DF4E74A /* RCTTiming.h in Headers */, + 47B18C9916FC0C343C9938B2BB57897E /* RCTTouchEvent.h in Headers */, + 646D6306313A51753B520EE186B91FB9 /* RCTTouchHandler.h in Headers */, + 514FBFCC2035E77E2E9083A67D0A66CB /* RCTTrackingAnimatedNode.h in Headers */, + 21B5E506B823A690A0146084F5A83061 /* RCTTransformAnimatedNode.h in Headers */, + 0CA154F63C1CFC60183D7E922BDAE1EB /* RCTUIImageViewAnimated.h in Headers */, + 074A964940CCDA941E28302D8F59876A /* RCTUIManager.h in Headers */, + 0A395EFEEB743089E1FCD5F7C0AC7DE0 /* RCTUIManagerObserverCoordinator.h in Headers */, + D1E6A429CB314C188FB6B2F4155DBE10 /* RCTUIManagerUtils.h in Headers */, + 3097344D94EF300A17ECE7A12BFACCC5 /* RCTUITextField.h in Headers */, + CC594BC52DF8E661B05456BBCCABB351 /* RCTUITextView.h in Headers */, + C875E07ECE92E62765DB575928350849 /* RCTUIUtils.h in Headers */, + 67C8EC3D05B6A0B51A317802FE928E39 /* RCTURLRequestDelegate.h in Headers */, + 80CA47F60FE28F2FEA77D0973878D3D8 /* RCTURLRequestHandler.h in Headers */, + 12D3E5811537D6ED6191B50BD67E12B6 /* RCTUtils.h in Headers */, + 886DBAA01E8ED950E2D1798EC6AAB503 /* RCTValueAnimatedNode.h in Headers */, + 9F2184CFE79A91A94EE6388318846C3B /* RCTVersion.h in Headers */, + 994C4EBB845FCEC0DA3E06E6B538C005 /* RCTVibration.h in Headers */, + 560EDFA0BD8051AFAB5B3F14FEB44704 /* RCTView.h in Headers */, + DE098735354AB81DB5DB10B051184475 /* RCTViewManager.h in Headers */, + 9B99EE22118D3A8A6D0790965CD8754D /* RCTVirtualTextShadowView.h in Headers */, + 65DE7ADFB8B1669C338A62C450CDD9FC /* RCTVirtualTextViewManager.h in Headers */, + 744F80065F446275EE7B8B5C01EBE0B2 /* RCTWeakProxy.h in Headers */, + B15360D1B5A40810574EB6D224C3200B /* RCTWebSocketExecutor.h in Headers */, + 74DF1FCF772747F47B3BD8E24B04529A /* RCTWebSocketModule.h in Headers */, + DE1659316F880DBDF0434505D0017CCE /* RCTWrapperViewController.h in Headers */, + 7FED26FC6349832C332151DBC2FFE2FC /* UIView+Private.h in Headers */, + 93DE174E9D4A740A927C3AE294B34CCB /* UIView+React.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 68E18A18C391D87F2960D0ED903AF05C /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 78BA873E4A7FA50983B1CC7F0CE36034 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + B77EF92CBAFF7A78884C1D63FFB8010A /* GCDWebServer.h in Headers */, + 920EF01E956E1D17AC7DBF68433AC4D3 /* GCDWebServerConnection.h in Headers */, + 4316F75F4633A111AFADE820DCC43910 /* GCDWebServerDataRequest.h in Headers */, + 1AF84CB9DB53B4CB022778B1EB000F06 /* GCDWebServerDataResponse.h in Headers */, + 0B5C32950459151059F776623B56EFC9 /* GCDWebServerErrorResponse.h in Headers */, + 585A988EBCF714CAA74CC9CB570655B4 /* GCDWebServerFileRequest.h in Headers */, + E18A04E1AB7CBC06080139DFFFB5AC3C /* GCDWebServerFileResponse.h in Headers */, + C8E2511CB726E7B5986A3AEA22FD67AD /* GCDWebServerFunctions.h in Headers */, + 14C9D00F4CB98702788045B3A381AE03 /* GCDWebServerHTTPStatusCodes.h in Headers */, + B70D1D1F8694ED0661809E77EE3AAE14 /* GCDWebServerMultiPartFormRequest.h in Headers */, + AFA289BE593154B0333B599ED511C1E1 /* GCDWebServerPrivate.h in Headers */, + 1003DBFE8C5C34601103B086706E132E /* GCDWebServerRequest.h in Headers */, + B87F1099BAEA85614A508B62C13D381F /* GCDWebServerResponse.h in Headers */, + 72E5041C41DF8EEFB1B461B6843ED150 /* GCDWebServerStreamedResponse.h in Headers */, + 5A14052595665649D62EF0FF9E75DE05 /* GCDWebServerURLEncodedFormRequest.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 848A3B27EFE9D132C54FB9B7318BBEA2 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 8A2C7028EFCC3A640C1D2B25E89CA146 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 921BFD5A503ABC46B8A39E239033ACFE /* FBReactNativeSpec.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 98388DDDAF3051A2AEC57BA504FB0BF3 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 9C04A373D24DE8062FE21C35461F495A /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 56C15E04D1C61D3B51C7F2FE2C676B4C /* lottie-ios-umbrella.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 9C125D8AA9519FC0BB6215D55CC2CF85 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 8E778A8AFD7A72EC1E9678DA3B22C024 /* RNDateTimePicker.h in Headers */, + 057861A96FE516548503DE98D2801CE2 /* RNDateTimePickerManager.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + A544BBE2DBF44A3FCFB8233D7EB15589 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + A7E2E59BF5E77A3B28217D36B2C29CFA /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + F28FC996E9D7C12E3F41C1B640ABB2A5 /* Compression.h in Headers */, + 1E1456286C1D93DC2A848A173C6CA46E /* ImageCropPicker.h in Headers */, + A6E5EEE860308A0594167C9797B28DFB /* QBAlbumCell.h in Headers */, + F4FE80AB2EA8DD144D7457A12534D90D /* QBAlbumsViewController.h in Headers */, + AFE5A446BAE5432B9084DC260CC3D290 /* QBAssetCell.h in Headers */, + 7BAF94A22126FD75E9E54E20A112566E /* QBAssetsViewController.h in Headers */, + A888AB9A147D572E01262314CF212A56 /* QBCheckmarkView.h in Headers */, + 2BA69D9D542370C30F15F680DA1AAE7A /* QBImagePickerController.h in Headers */, + D159D4E11432836449A732BACDD0E057 /* QBSlomoIconView.h in Headers */, + 090CFBE4406371D791D2FBB837A032B9 /* QBVideoIconView.h in Headers */, + B9D4C1AA0D160D18DA7EF4EFE2465998 /* QBVideoIndicatorView.h in Headers */, + FC860918E0749AB204DFF627C64D3B47 /* UIImage+Extension.h in Headers */, + C6E11F383D9AEA2AE26AC331C44C62C4 /* UIImage+Resize.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + A8E8D60448C78BC2BF0C358AF09BCBD0 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + E0BE7BE2BCB8F21C401196303D4F05C2 /* Bridging.h in Headers */, + BB8C0872BB9A444A93196A4C4128345A /* lottie-react-native-umbrella.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + B4B9534BB3C0AE7C09F991E9515B6521 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + B75D91A3432A5B3383E989CD5627F449 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 3574A88A3FC551F4A85DC36B06F4C3BC /* Pods-iLink-umbrella.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + B8CE3B0B696A2F9A50087289D16E74A6 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 8E780217C9AE791FDA54CC527981D615 /* RCTConvertHelpers.h in Headers */, + E2D00F8206CA13A6F7A99EBC952B399A /* RCTTypedModuleConstants.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + B8F481C7550B2C7EE5754F9CD337FC5B /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 459C01818A558C7E18570425D2488123 /* RCTOneSignal.h in Headers */, + FA8B239D404AC60E2E111F642D0644CC /* RCTOneSignalEventEmitter.h in Headers */, + 429418614F28EF56F89891D9DD6948FE /* RCTOneSignalExtensionService.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BA9D41106C588E1D7368A76ACCA282B8 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 674D41F82BCC18815402C5FE9AC46135 /* NSTextStorage+FontScaling.h in Headers */, + 33E691B59EA9B4254C5995E400FF93C3 /* RCTBackedTextInputDelegate.h in Headers */, + F2FBE728572C5C9583E029B4FF80C91B /* RCTBackedTextInputDelegateAdapter.h in Headers */, + 5AB796C2031F4DCD33D3F2D436DBE113 /* RCTBackedTextInputViewProtocol.h in Headers */, + 788D7D21C29F0908B3AB2641566E5C6C /* RCTBaseTextInputShadowView.h in Headers */, + DB0D3C4492679C09ED7D7008EFB8F30B /* RCTBaseTextInputView.h in Headers */, + 4BA39F5AFCA5E211E9768911C34D429B /* RCTBaseTextInputViewManager.h in Headers */, + F602EB9389726E8A543A80665EDB6A0D /* RCTBaseTextShadowView.h in Headers */, + 38932642EF237EA1DC55AB32D7E9160F /* RCTBaseTextViewManager.h in Headers */, + 766279CB8D3AD5BCE14315D276E44EC6 /* RCTConvert+Text.h in Headers */, + 931EF53BB96D78B9B675DDEA6C5E5F6C /* RCTInputAccessoryShadowView.h in Headers */, + AD6BA21B2B33D644D826C99AE6549F14 /* RCTInputAccessoryView.h in Headers */, + 7E01FDBB646E1748189B62AAEF886B99 /* RCTInputAccessoryViewContent.h in Headers */, + 5C85B84636EB8C07820CE3DB85CF68F9 /* RCTInputAccessoryViewManager.h in Headers */, + 59B79886707ECBAEF83503AAAC1132BF /* RCTMultilineTextInputView.h in Headers */, + 7DFBA1D0FB8B754DB3418DA33E9F38BA /* RCTMultilineTextInputViewManager.h in Headers */, + BCA0B38CFB25299E3A9542B9A62595F3 /* RCTRawTextShadowView.h in Headers */, + 5E88317A976C9108B9B3ACCBD9895659 /* RCTRawTextViewManager.h in Headers */, + D361446652F14003E11D5959006986D8 /* RCTSinglelineTextInputView.h in Headers */, + 14B8D878846B23586907D32C7D97B2B5 /* RCTSinglelineTextInputViewManager.h in Headers */, + 069DBB2716368F864AC54FB16D791C74 /* RCTTextAttributes.h in Headers */, + 3207C979A73A9285D1B740889ABFDC3D /* RCTTextSelection.h in Headers */, + 9D926F95EF2614073A2BC29D25008CD1 /* RCTTextShadowView.h in Headers */, + 9A3BD41DF5E352B32B8371E9536C42F6 /* RCTTextTransform.h in Headers */, + 677DB2404B826625A3199072DF51CE22 /* RCTTextView.h in Headers */, + A403BC5B00D9C00234E1AFF08D6CF313 /* RCTTextViewManager.h in Headers */, + 0DC83818DF1A21C160E31A6106B38EB3 /* RCTUITextField.h in Headers */, + F5DA0342E178C580B9BA0805288919A5 /* RCTUITextView.h in Headers */, + 1A0F296F82EDBC6AFBC4A95F8E0147E9 /* RCTVirtualTextShadowView.h in Headers */, + 5B0C45D220BF51864514C8B024E54C31 /* RCTVirtualTextViewManager.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEB5DB97AD926A6C2F72BA5037DC5223 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 53530B34CFBFF51EF9FD34BDC3CDD9BB /* RNCGeolocation.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + C0C31053BFA98DC291D72F197E1B7941 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + C6FEC479F05E80551F207AC77BBEDB66 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + F9712D5B2F12EDB023C41C94AC1867E5 /* RCTBlobCollector.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + D1BC4E1ECF61005F808D1C1744C267C8 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 2294D5E8C3442B95F7FE27F282D38432 /* CxxModule.h in Headers */, + 10BAC344BC91CF819A3F97DCFF09D1BE /* CxxNativeModule.h in Headers */, + B692D8358516FC7584EABAD87893E0A6 /* Instance.h in Headers */, + 4EF3686454F76E06335367563230EC10 /* JsArgumentHelpers-inl.h in Headers */, + 6E4E430E0FFB68FE24A085E124148242 /* JsArgumentHelpers.h in Headers */, + 725CC683BFB85E057C675DBFC8C57294 /* JSBigString.h in Headers */, + 2A2DA4018470C55A0BFFD249E7BCE49E /* JSBundleType.h in Headers */, + 84B08332D1B2EC29C76860733C59F03D /* JSDeltaBundleClient.h in Headers */, + 6BC3C1BD5F4226B6F057BA4E933C841B /* JSExecutor.h in Headers */, + 9D81A7E4E01F3FE3FDBF803FD7488F5C /* JSIndexedRAMBundle.h in Headers */, + B59AF5447AAFE7EDF5724B6EB608E9AD /* JSModulesUnbundle.h in Headers */, + 076D827E60AE0F4B0D9D02915EBEDF40 /* MessageQueueThread.h in Headers */, + 129FD7995315C6C01DD47E15DE87721F /* MethodCall.h in Headers */, + 3F645D44874C48363F744A267B5A6D43 /* ModuleRegistry.h in Headers */, + 5B47547485ED0A5900C01BCFE5054E0E /* NativeModule.h in Headers */, + 3502BBBB12CE0705341EAC0B140D42B5 /* NativeToJsBridge.h in Headers */, + 9E08B812843A7E8705E704986996DD9B /* RAMBundleRegistry.h in Headers */, + 3252EE1D088ABB276839F1117C7B0BBB /* ReactMarker.h in Headers */, + 350A6F155907A490B7B9DF0AF215C02E /* RecoverableError.h in Headers */, + 80E76D15F06A95D8E35F1022EFE2FDC4 /* SharedProxyCxxModule.h in Headers */, + 4998CAFA27B278037C8EFED86FFD20A1 /* SystraceSection.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + D4042B526436C13B7CB5F028686D4071 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 11117471A327647051B3C1210DF2FCAD /* log_severity.h in Headers */, + 27AAF30F59D68196A740649C924D2D1F /* logging.h in Headers */, + CC3FFF5F3C3B74F2F8D51D1AF4AC47C8 /* raw_logging.h in Headers */, + 8D67DA7CFE4F8149B979D339B71508AA /* stl_logging.h in Headers */, + CC717DA9952BA9478A02714B7ED33CD3 /* vlog_is_on.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + D42625E085A02B1604515DA90A646E38 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 481BA5FFD26065965AE82B9D1C977443 /* RCTConvert+RNSVG.h in Headers */, + B56C06FFD7CD2DCF1FF408A704E7C165 /* RNSVGBezierElement.h in Headers */, + 7E5B2E0FB36C4638F4D31BE8445336B0 /* RNSVGBrush.h in Headers */, + 6357DA92555633500DC69BCB972DC30C /* RNSVGBrushType.h in Headers */, + 2F3FCF3CEFF9ABEFD9E143A8FA89D5ED /* RNSVGCGFCRule.h in Headers */, + 57295BAD72FA74EBA08110A7C6FE8996 /* RNSVGCircle.h in Headers */, + 30B2E2322C0E4B818B06D73976D30668 /* RNSVGCircleManager.h in Headers */, + 7FE9E4CC3D1B56C2A7F5744DF45B61D4 /* RNSVGClipPath.h in Headers */, + 967D695AAF4CE4F605C6E63184D8DE36 /* RNSVGClipPathManager.h in Headers */, + 6A5704F39EDF316E022F79D885ECDA23 /* RNSVGContainer.h in Headers */, + 4290691A1ECD0CD154DBAEAF61CEF82C /* RNSVGContextBrush.h in Headers */, + BA6F974569196C7EF3AD35896901AC5B /* RNSVGDefs.h in Headers */, + C20E07C071690B2E55C60F9A91878141 /* RNSVGDefsManager.h in Headers */, + 84795FACB98AA55076469620F6F7D424 /* RNSVGEllipse.h in Headers */, + 22FAB19D0B649E0633917D313C3C9E71 /* RNSVGEllipseManager.h in Headers */, + E1FE31621342CAB49123532617010DB8 /* RNSVGFontData.h in Headers */, + 419A6A008796D0E673EA463CED5E196D /* RNSVGGlyphContext.h in Headers */, + B3333C40BD269812521F8A924C8A616C /* RNSVGGroup.h in Headers */, + 8AE1305E2724B85FAE8558FBEAA02E76 /* RNSVGGroupManager.h in Headers */, + E567F4E113C2F88E9E47B506A9182094 /* RNSVGImage.h in Headers */, + 2000FC3766BF33456A529102F2B27B5E /* RNSVGImageManager.h in Headers */, + 049AD8111B97F46D653BBFB7C570216D /* RNSVGLength.h in Headers */, + A44E20F7A997762A1A7B797021A852A2 /* RNSVGLine.h in Headers */, + 1B570E1C30FF5B8680513ED1BE1DB590 /* RNSVGLinearGradient.h in Headers */, + D04A5C4EF1A00522A8BEF1FE60DB7BDA /* RNSVGLinearGradientManager.h in Headers */, + ED59141AE4F0E3CEAD61975EB91F90E0 /* RNSVGLineManager.h in Headers */, + 53254FD696C8B0F69A79BB67ED6B8EC0 /* RNSVGMarker.h in Headers */, + FC4441E9E468C1CD09B31A7237E18623 /* RNSVGMarkerManager.h in Headers */, + DF604B9B4C69C98BD0D036993BB988F7 /* RNSVGMarkerPosition.h in Headers */, + 0328A7D12DC5BA94F74838506CCC4E0F /* RNSVGMask.h in Headers */, + 0FFA94E9F6C87561F5753AF8EAFB3105 /* RNSVGMaskManager.h in Headers */, + A39D06628A4A88BA65E196644015DA7E /* RNSVGNode.h in Headers */, + D669E700FBE1AF9FDA8B7E73AF725E5C /* RNSVGNodeManager.h in Headers */, + 8BCD613C01DC8D0F0C1629D5CBD25CD0 /* RNSVGPainter.h in Headers */, + 2560C8D27EF166B471A050096A748203 /* RNSVGPainterBrush.h in Headers */, + 19C097C8B02BAE31D841DB83A6C0626A /* RNSVGPath.h in Headers */, + 549524A91DAC6977C4858FA3A81183A9 /* RNSVGPathManager.h in Headers */, + B046FFEE3521657F33CB8DC92B850FAF /* RNSVGPathMeasure.h in Headers */, + 0DC909CFFCF8410F5BD1781466D734E2 /* RNSVGPathParser.h in Headers */, + 6DBA63C880743208B00BE484CE5E1CE5 /* RNSVGPattern.h in Headers */, + 520A17E1B6266101F599142893448BAA /* RNSVGPatternManager.h in Headers */, + DD1787C23567690137608F6C02298648 /* RNSVGPropHelper.h in Headers */, + 2D0D1BD5A33A46E5FAB2B2E21DB5C5BE /* RNSVGRadialGradient.h in Headers */, + B4AC0F99EC64FE7C7C71E1EE857C981D /* RNSVGRadialGradientManager.h in Headers */, + 3427307B0C31A90EFC72DCFBEB1B31BB /* RNSVGRect.h in Headers */, + 3176F191D3F1EF523C4B46019BB95BDE /* RNSVGRectManager.h in Headers */, + 892B0513D7BBF1C240BF7BE35C9BBFAF /* RNSVGRenderable.h in Headers */, + 9C167C24E0769C242C7DF1ECFC4B7846 /* RNSVGRenderableManager.h in Headers */, + 236F89AF13179AA2BADDED61EBAD16A1 /* RNSVGSolidColorBrush.h in Headers */, + 31C66140F15D5CF9DE06106CADF69763 /* RNSVGSvgView.h in Headers */, + 07237BC6538AB015D24D62C9B290ED88 /* RNSVGSvgViewManager.h in Headers */, + C4B2FA4F7A1AEC4CFA4FEB49DDBE15F0 /* RNSVGSymbol.h in Headers */, + 795589432E1D4AC45A258ACF0562C401 /* RNSVGSymbolManager.h in Headers */, + 8FF1CC55293C7189A57AC18B470111F7 /* RNSVGText.h in Headers */, + 6A641976667EA6B4BE9C2A48638A1325 /* RNSVGTextManager.h in Headers */, + 0711E1E64D9B95489B13071FAB83E1EB /* RNSVGTextPath.h in Headers */, + 4853B1B604033DB46B2ED4CCE06F6A2D /* RNSVGTextPathManager.h in Headers */, + 2E835521EF990DAD3A6A38DABAEED2D1 /* RNSVGTextProperties.h in Headers */, + 4933A812045AD14892DC4F4AC5EED120 /* RNSVGTSpan.h in Headers */, + DC2E5D6695CA53C1C0FC39FE7F3B8617 /* RNSVGTSpanManager.h in Headers */, + F7BDC969B9549E67A709DAB647D57F9D /* RNSVGUnits.h in Headers */, + 156F56B3B4F5BA3B5079F7750495D22C /* RNSVGUse.h in Headers */, + C2A7DC5C0C252B7B7194E6C58166CC51 /* RNSVGUseManager.h in Headers */, + FA1DE21FDC2B1F347EB58DF896893A81 /* RNSVGVBMOS.h in Headers */, + FC2E8FB25A54859C01481ED8540CF081 /* RNSVGVectorEffect.h in Headers */, + 6841396A5B5624C733B80A101D1AEA86 /* RNSVGViewBox.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + E265B278A88D2CFB1CFA3283F7AD423A /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 7273E470029F2D1437729B26DBC9A04F /* RNVectorIconsManager.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + E28D5CC2AA2585391D9B29B31845F899 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + E3CBBBC9D319661416239289B63D2381 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + DF734DFF64A35ACB20B98ED45849F470 /* RCTConvert+UIPageViewControllerNavigationOrientation.h in Headers */, + FB57AF0CA382F38D591536D65FF08F8E /* RCTConvert+UIPageViewControllerTransitionStyle.h in Headers */, + EE3F2035FE85D6E2C433AF9382844ADA /* ReactNativePageView.h in Headers */, + 55483FB0FC151CFBB00DCBFFFB158BBC /* ReactViewPagerManager.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + E5EE78D212028B68E0B17B0E0B8F41A7 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + E6673E8F4B732360468136F7118B6732 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 6F047EE850659CD10996F1452877CDDF /* BridgeJSCallInvoker.h in Headers */, + E7976ED37904C3F3907C4680FF001957 /* JSCallInvoker.h in Headers */, + D95985B3A09109412AB20DFB315145D2 /* LongLivedObject.h in Headers */, + B735A9AE52398199722A3391226FA941 /* RCTTurboModule.h in Headers */, + BBEE44D97FEB08C3DD74B86DA4920CA9 /* RCTTurboModuleManager.h in Headers */, + 563676AB6A72D67D6D4AF57F9B3DE13D /* TurboCxxModule.h in Headers */, + A40459D2F5B0EC6C955953BB54BDF79F /* TurboModule.h in Headers */, + 8CDE1938CB549B9AF8CE6C08C193E456 /* TurboModuleBinding.h in Headers */, + B1000FE12DFF2F182CB5850429E26C37 /* TurboModuleUtils.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + E683CE00B95E49E1FAA922155C742DDA /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + C5E6AE8A5307436D7375A97216F1EA37 /* RCTConvert+REATransition.h in Headers */, + 02E6BB7BB47856BA6733DFB070C16895 /* REAAllTransitions.h in Headers */, + DC338EE97C5FB1B46908890408F8F734 /* REAAlwaysNode.h in Headers */, + EE1D082C3D346786B66B83329775FAD0 /* REABezierNode.h in Headers */, + B8FBE01C03B0BD8D1CF3D8096C2EDBEC /* REABlockNode.h in Headers */, + DC90EC6092565FD256734B2F00362433 /* REACallFuncNode.h in Headers */, + DFA46F0C3202DB3E919654903047E1A8 /* REAClockNodes.h in Headers */, + B8F801031224A0B57A9AC600AE584C0E /* REAConcatNode.h in Headers */, + C7BF77FA881CBF57E615C2D0A5F7EE31 /* REACondNode.h in Headers */, + 4860E7A1CDCA5FF05FDA4B92AD7593F6 /* READebugNode.h in Headers */, + 5D4DECC56507FBE86B1E99810822F910 /* REAEventNode.h in Headers */, + 5C33C2A9ACE155F5AF67812966CBBBDF /* REAFunctionNode.h in Headers */, + 985033FE0EBCF2187E9C7528DBA76B25 /* REAJSCallNode.h in Headers */, + 3DF4612E32C2D08EBD4F6F4DD8B987C0 /* REAModule.h in Headers */, + D74DA31CEF79C51DCAB456ED904FDA92 /* REANode.h in Headers */, + 1EF0FFBF1C87F2DC66C4800A37E80B5E /* REANodesManager.h in Headers */, + 46C39A384912553E754D24B30E0AE75C /* REAOperatorNode.h in Headers */, + 08AA6452D3AA1BD563F8B8541EBCD7EC /* REAParamNode.h in Headers */, + A5A2FF74BC3E5B9D4BCC04653D2985E7 /* REAPropsNode.h in Headers */, + 38721602286499968B5521CA654ED26D /* REASetNode.h in Headers */, + 000331071B7002811CC0EF01CFD96051 /* REAStyleNode.h in Headers */, + 5C8716492C4CC14BE263A3AFBC57CC0E /* REATransformNode.h in Headers */, + 15B825DBFD2552FFCFFBC2416755655E /* REATransition.h in Headers */, + 543E81ACF685DC8C25DB5601D20C897C /* REATransitionAnimation.h in Headers */, + D26F4634F408274087669A8C5821E621 /* REATransitionManager.h in Headers */, + 75B30E161C26FD52A2760C9EFC3D3FA7 /* REATransitionValues.h in Headers */, + B7A172678CE7A39AFFCE921708EB0359 /* REAUtils.h in Headers */, + 87A9149D62F46D9F516046CC62835ABD /* REAValueNode.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + E7C54BC8FD1EAECA33F99000F2CB73F6 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + D67FA9AB44F255BBC99DE01C1472E719 /* RNFlingHandler.h in Headers */, + D30607D7089802C8D7C63CB7405707BB /* RNForceTouchHandler.h in Headers */, + 6F51D96F8986AB5E320CEF2EEF15E6E5 /* RNGestureHandler.h in Headers */, + 45AC17B28E4A52BF1C9867DF51771613 /* RNGestureHandlerButton.h in Headers */, + CDDCA48C236BA6D9092B73886D1497CA /* RNGestureHandlerDirection.h in Headers */, + 68D4E8EBED3B07E284ABCE20F1E3281C /* RNGestureHandlerEvents.h in Headers */, + 03ED2397D295BDEFC83819BBFBBB13BA /* RNGestureHandlerManager.h in Headers */, + 19C3BBF564F8976EB6D91418CE10F903 /* RNGestureHandlerModule.h in Headers */, + B12E8B1DF5A449E0090C037413D12493 /* RNGestureHandlerRegistry.h in Headers */, + 3CCF9FB978617150329CFFF79B28C969 /* RNGestureHandlerState.h in Headers */, + CBCFE89918C7EAB8375D737D65864A37 /* RNLongPressHandler.h in Headers */, + 805613846569FBC6B06CD199748D15E2 /* RNNativeViewHandler.h in Headers */, + D8EA2D2663FCF4B2B2C7AC39EDCD203D /* RNPanHandler.h in Headers */, + D2B035BF0D8297AE90DA28CE8442880F /* RNPinchHandler.h in Headers */, + 6B342EA59F492722FE8230E84286F0CA /* RNRootViewGestureRecognizer.h in Headers */, + 318DC31A06296D45DBD8198EF0178664 /* RNRotationHandler.h in Headers */, + 63925D5D72F33BBB0C953956F3137D11 /* RNTapHandler.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + F15F17C419446B2CA718C457F701BE66 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXHeadersBuildPhase section */ + +/* Begin PBXNativeTarget section */ + 0B967D7F8561D42493EE289EC8D450D1 /* lottie-ios */ = { + isa = PBXNativeTarget; + buildConfigurationList = 1E8FC81AAA31E5F46D84ADB6B651959F /* Build configuration list for PBXNativeTarget "lottie-ios" */; + buildPhases = ( + 9C04A373D24DE8062FE21C35461F495A /* Headers */, + E5066009D6469B4B66FAC07E32D956E4 /* Sources */, + A140A75D69FBF7E17558CCD7215AFE74 /* Frameworks */, + 7AD452E5DE76076A40721FC507880852 /* Copy generated compatibility header */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "lottie-ios"; + productName = "lottie-ios"; + productReference = 51BA97E8B5085EFFB47BC9C0B785CEA7 /* liblottie-ios.a */; + productType = "com.apple.product-type.library.static"; + }; + 0D82774D2A533D3FFAE27CAB4A6E9CB2 /* RNImageCropPicker */ = { + isa = PBXNativeTarget; + buildConfigurationList = B8E044861FC075BB715B51361725E7F7 /* Build configuration list for PBXNativeTarget "RNImageCropPicker" */; + buildPhases = ( + A7E2E59BF5E77A3B28217D36B2C29CFA /* Headers */, + 7C5792431299B71F0EA7E02542F0BFB4 /* Sources */, + B957C43085298A49DA950F909D0AC37C /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 97DDEDFB4D34BD53CAE6F21BC5D12160 /* PBXTargetDependency */, + FC198828BD90CE65CAD0AFD80DAF08E1 /* PBXTargetDependency */, + F6F469520F6DF16BF936DC7F12E5BAD6 /* PBXTargetDependency */, + 403690FA3A1E93D6D62B39BFBFABD3C4 /* PBXTargetDependency */, + ); + name = RNImageCropPicker; + productName = RNImageCropPicker; + productReference = 3AEA4A114C08533A2C0F8E039A4C5EB9 /* libRNImageCropPicker.a */; + productType = "com.apple.product-type.library.static"; + }; + 11989A5E568B3B69655EE0C13DCDA3F9 /* React-RCTActionSheet */ = { + isa = PBXNativeTarget; + buildConfigurationList = BE516C06A30F2850BACACB9FFB99C218 /* Build configuration list for PBXNativeTarget "React-RCTActionSheet" */; + buildPhases = ( + 534B2436DE96B23BCB4CC6DA76DAA031 /* Headers */, + 379FCD62B60A391C09643BA70166D263 /* Sources */, + C2C847F181BAFA6795645D2F8A9165BC /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 591E2B79397EC3DDF6B026FDD9B6096B /* PBXTargetDependency */, + ); + name = "React-RCTActionSheet"; + productName = "React-RCTActionSheet"; + productReference = 73F8A95B79671F501F31EA4F1D04AA8B /* libReact-RCTActionSheet.a */; + productType = "com.apple.product-type.library.static"; + }; + 1BBA090545F0B723C18EFF83953F301F /* react-native-geolocation */ = { + isa = PBXNativeTarget; + buildConfigurationList = D42C301AEFE890A251594B7F81096051 /* Build configuration list for PBXNativeTarget "react-native-geolocation" */; + buildPhases = ( + BEB5DB97AD926A6C2F72BA5037DC5223 /* Headers */, + 53D0AA929788528195250F49DC19CE06 /* Sources */, + B965A28347F079299B1D951BD4A1C2A5 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 0C87B44556F321DE520BBEEC9BD7191B /* PBXTargetDependency */, + ); + name = "react-native-geolocation"; + productName = "react-native-geolocation"; + productReference = 467EB07BB1D9636C6348DE0824CE8973 /* libreact-native-geolocation.a */; + productType = "com.apple.product-type.library.static"; + }; + 214E42634D1E187D876346D36184B655 /* RNScreens */ = { + isa = PBXNativeTarget; + buildConfigurationList = D024F943D0F41D34A844CEE64C1CA7AD /* Build configuration list for PBXNativeTarget "RNScreens" */; + buildPhases = ( + 2BAE30A82EC4464A3469ABBF74FE8990 /* Headers */, + 5AB7759E96E70C9A91FB3422BE09DEB5 /* Sources */, + ABE86F2D61BE5DCF08F469DE66EAD1B8 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 4601BBA5F8E3E7ACC039D214DF7A8D70 /* PBXTargetDependency */, + ); + name = RNScreens; + productName = RNScreens; + productReference = 50B5347C9A6E93B7D4CFC3673BA6FB7E /* libRNScreens.a */; + productType = "com.apple.product-type.library.static"; + }; + 2AB2EF542954AB1C999E03BFEF8DE806 /* DoubleConversion */ = { + isa = PBXNativeTarget; + buildConfigurationList = 0569CCDF3B3B687CF01EE8D4001AA7CC /* Build configuration list for PBXNativeTarget "DoubleConversion" */; + buildPhases = ( + 2421B2BEB31793521AF7BB2ED8723279 /* Headers */, + 00F245FAA16114F4D189FA7D01787401 /* Sources */, + 68E4DC721715B13364B7CFA56B002488 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = DoubleConversion; + productName = DoubleConversion; + productReference = 6FFB7B2992BB53405E6B771A5BA1E97D /* libDoubleConversion.a */; + productType = "com.apple.product-type.library.static"; + }; + 2B25F90D819B9ADF2AF2D8733A890333 /* Yoga */ = { + isa = PBXNativeTarget; + buildConfigurationList = 25CF9429A6274B78CF9BFE9B7BD51E66 /* Build configuration list for PBXNativeTarget "Yoga" */; + buildPhases = ( + 3CE7E03B118C6CF074866C6C3EABD0ED /* Headers */, + 4AC5C9DE179B356DE9F39A297222A56D /* Sources */, + B5A7F5C6848AEAFCA6CC662EE612FA93 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Yoga; + productName = Yoga; + productReference = 65D0A19C165FA1126B1360680FE6DB12 /* libYoga.a */; + productType = "com.apple.product-type.library.static"; + }; + 2D4D3D5AD93ADCCF3DD45A88009E48D6 /* TOCropViewController-TOCropViewControllerBundle */ = { + isa = PBXNativeTarget; + buildConfigurationList = 5EA6F3272FB779C9A419FE16843B4D7F /* Build configuration list for PBXNativeTarget "TOCropViewController-TOCropViewControllerBundle" */; + buildPhases = ( + D424332EE97B46671A622B7046F61CAF /* Sources */, + 37EF71477C3D82F430B875560CF8D657 /* Frameworks */, + 3846A5B4C5F558758EEA2E56D8DAF68B /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "TOCropViewController-TOCropViewControllerBundle"; + productName = "TOCropViewController-TOCropViewControllerBundle"; + productReference = FE1E812071397E31AE21DFF368B781B1 /* TOCropViewControllerBundle.bundle */; + productType = "com.apple.product-type.bundle"; + }; + 37B9DF6C4D55BD05E9174EBA51F8750C /* Pods-iLink */ = { + isa = PBXNativeTarget; + buildConfigurationList = C6CC9F04EA66F9C5ECCAD0E7BD040E1D /* Build configuration list for PBXNativeTarget "Pods-iLink" */; + buildPhases = ( + B75D91A3432A5B3383E989CD5627F449 /* Headers */, + 1032C4E6F76D4093BC94F2F9E3E7861F /* Sources */, + 13FBDA7625FF80C80B6FAF4AB4A7751E /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + E5CB2F1F47E1F1A7A9F655EB492345B8 /* PBXTargetDependency */, + 301FD54DF655694B993D54B23F76A885 /* PBXTargetDependency */, + 6AA565BB8F3444357D6E0BB463AEA501 /* PBXTargetDependency */, + FA231BD17F1CBC7D7843D9DAA62571B9 /* PBXTargetDependency */, + 63045F90CB0D4DDCB6646C93EFCAE2EC /* PBXTargetDependency */, + 53A78AA37073A16C0D9F18A25819F6DC /* PBXTargetDependency */, + FC42E98368E4611DFC70EBCE53BCD0B1 /* PBXTargetDependency */, + DB61494D7851AF1326A91F4853302231 /* PBXTargetDependency */, + 8FBE6F37A397486A5CD3BC004B0E9299 /* PBXTargetDependency */, + F54A92C940E9822144D86C5DBB7E94F0 /* PBXTargetDependency */, + D4C9E8607BF005D474EB1E855AB99481 /* PBXTargetDependency */, + F17E9492019B520B7EAD20DACA6907D1 /* PBXTargetDependency */, + 1F1C02309D3393BCB01ED47B1C61481F /* PBXTargetDependency */, + 68D16632FE4019C2B2993D8E2596E2F6 /* PBXTargetDependency */, + AA784E0920D236B26883664DD15982E2 /* PBXTargetDependency */, + B6D862A5875BED3EC7C808C8F489DD38 /* PBXTargetDependency */, + 23D1B4187EE8D6F5FD76A47B7A075640 /* PBXTargetDependency */, + D3B01339A06548DC08198575B255EF64 /* PBXTargetDependency */, + A8A9010A03840A241CCFE71BF7BC005F /* PBXTargetDependency */, + 64E617415AFEA589E8B7C1664E67F294 /* PBXTargetDependency */, + 50E6D8CA3801610E999175104F40EB39 /* PBXTargetDependency */, + 3100C6E86CABB356CA68E13645168344 /* PBXTargetDependency */, + C72961BDAFB4DF1C2734972B7CB3FF28 /* PBXTargetDependency */, + 901D6A1B65BBEFA08C639274B05AAA73 /* PBXTargetDependency */, + 5E8060798A320463714282B43D95BB2D /* PBXTargetDependency */, + 74071DB5492F158AF9C0053A3F934D1C /* PBXTargetDependency */, + 844F6544F25231F54B2DE57E00729BB1 /* PBXTargetDependency */, + 1AD3CB968B52C314BC2EDD96F48A35DB /* PBXTargetDependency */, + 606B260DD791C5A58C5CA7578D459D36 /* PBXTargetDependency */, + 43CE5FC5C0D676228297011505C4A79D /* PBXTargetDependency */, + 2178825AE267685D25EBE6594250E1E2 /* PBXTargetDependency */, + DEC80109703E8629B9EA3464B88933AB /* PBXTargetDependency */, + 9C8617A5A0A7465E6FC2F9E7E0091058 /* PBXTargetDependency */, + 1A6C0F34C9BC2AB3DB4B396E70147734 /* PBXTargetDependency */, + 919DD2EB923F180919B19851C7799FF9 /* PBXTargetDependency */, + ED696E3ED973DC4724C9A2BE6FA10A35 /* PBXTargetDependency */, + F970282BB683AC2176836A2139451E49 /* PBXTargetDependency */, + 89E690339775C98513E79BF3CBE90975 /* PBXTargetDependency */, + 1E3B56734FACEFACE70D919640E6CEB6 /* PBXTargetDependency */, + 1C59F134C7C72F2E119C9C79664758F3 /* PBXTargetDependency */, + 95FC8ABBBDF3B0BEEB6AEFC8292DEABA /* PBXTargetDependency */, + 05ACEA2509760C28E75D9D99B85F8CB9 /* PBXTargetDependency */, + 9F9D9B86028C8B65EE230D88A1ED5FE7 /* PBXTargetDependency */, + C37434763B59A812C22603A7DDB109FD /* PBXTargetDependency */, + 4F38C77A911396533D1688664EAD432A /* PBXTargetDependency */, + 62979ACA6DC653BB4320669B786F67B3 /* PBXTargetDependency */, + 3E83E53D0CC9C1BAA5CCEB65B6A15A44 /* PBXTargetDependency */, + 6A843504677AFE8C9575A3FDCF7CBDAB /* PBXTargetDependency */, + ); + name = "Pods-iLink"; + productName = "Pods-iLink"; + productReference = AE35E87ACE581B9CEF2DE22B4D7BC740 /* libPods-iLink.a */; + productType = "com.apple.product-type.library.static"; + }; + 463F41A7E8B252F8AC5024DA1F4AF6DA /* React-cxxreact */ = { + isa = PBXNativeTarget; + buildConfigurationList = 8A52733F20B4602083AA214D3752546F /* Build configuration list for PBXNativeTarget "React-cxxreact" */; + buildPhases = ( + D1BC4E1ECF61005F808D1C1744C267C8 /* Headers */, + 36650015300A0A8E4A40CC425CC2ACDE /* Sources */, + DACB44245714C02301FEEEDBCB7610E9 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 94E74AC5783207331E6BF8609D27F94B /* PBXTargetDependency */, + 7615DA5E0080C0394FF1EBBFB44AA14E /* PBXTargetDependency */, + CAECBCEE731AD1DA579F145A805E108D /* PBXTargetDependency */, + 8433F4FFBAE68E0CBBA9DA87CA0EFEEF /* PBXTargetDependency */, + 3044716ADC221A40B2B6C6ADD3A4AA52 /* PBXTargetDependency */, + ); + name = "React-cxxreact"; + productName = "React-cxxreact"; + productReference = 37592FDAD45752511010F4B06AC57355 /* libReact-cxxreact.a */; + productType = "com.apple.product-type.library.static"; + }; + 4F265533AAB7C8985856EC78A33164BB /* React-RCTImage */ = { + isa = PBXNativeTarget; + buildConfigurationList = E404E3E8E818E37A82A8F2FFFB6360FF /* Build configuration list for PBXNativeTarget "React-RCTImage" */; + buildPhases = ( + 848A3B27EFE9D132C54FB9B7318BBEA2 /* Headers */, + C349FA15CBD316AD2B5312B1F0B64CDF /* Sources */, + 11BE9041EA06B25CB7D32599D5804366 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 9DD9DA0621B17F437D1071E510C9CB51 /* PBXTargetDependency */, + 14418CB12FC4109D5A2318A202BC4CB5 /* PBXTargetDependency */, + ); + name = "React-RCTImage"; + productName = "React-RCTImage"; + productReference = EEDBF403E8E0B3885E65C2741B536BC5 /* libReact-RCTImage.a */; + productType = "com.apple.product-type.library.static"; + }; + 53D121F9F9BB0F8AC1C94A12C5A8572F /* React-RCTVibration */ = { + isa = PBXNativeTarget; + buildConfigurationList = D8DE426D7E73F5AD443187FE6599D1B3 /* Build configuration list for PBXNativeTarget "React-RCTVibration" */; + buildPhases = ( + E5EE78D212028B68E0B17B0E0B8F41A7 /* Headers */, + 8F937ACD555A5FA41F9EC92AC7A3B21D /* Sources */, + 8AED265CE34141E1EC10E53FEFACA98E /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 21329B64156CE56B65A20B0C781E8A94 /* PBXTargetDependency */, + ); + name = "React-RCTVibration"; + productName = "React-RCTVibration"; + productReference = C1A919103EAC9813D236486C34FC0A21 /* libReact-RCTVibration.a */; + productType = "com.apple.product-type.library.static"; + }; + 5CB57245CFAA41531DA0E71363484F3B /* SajjadBlurOverlay */ = { + isa = PBXNativeTarget; + buildConfigurationList = 7FD065008E2619841ADD842DE6BAFE3A /* Build configuration list for PBXNativeTarget "SajjadBlurOverlay" */; + buildPhases = ( + 55D2B717798F7A879FBBCBF6429C1574 /* Headers */, + 49706B194B16793BC6A37E8372EBF038 /* Sources */, + 83772BBB87FDF265E430E9721DA2E163 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 4B362D3D038062DEE68E9CD0F497031A /* PBXTargetDependency */, + ); + name = SajjadBlurOverlay; + productName = SajjadBlurOverlay; + productReference = 338817C84971D637244683E9432AF918 /* libSajjadBlurOverlay.a */; + productType = "com.apple.product-type.library.static"; + }; + 651511D7DA7F07F9FC9AA40A2E86270D /* React-RCTNetwork */ = { + isa = PBXNativeTarget; + buildConfigurationList = 8138778F4E5F60EB64FF159FC062CB1E /* Build configuration list for PBXNativeTarget "React-RCTNetwork" */; + buildPhases = ( + 1F518BA4CC62A3D4B7E2E593AEECBD57 /* Headers */, + 7AF6003C30CC708906E878079160A53A /* Sources */, + C83D721D80E5CDAA010AF2AC9B295A6C /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 8AAF2C6A242B5972E1216900E1DCA958 /* PBXTargetDependency */, + ); + name = "React-RCTNetwork"; + productName = "React-RCTNetwork"; + productReference = A68E5A9B69A3BA0FD52CAF7A354EC93B /* libReact-RCTNetwork.a */; + productType = "com.apple.product-type.library.static"; + }; + 680299219D3A48D42A648AF6706275A9 /* React-RCTSettings */ = { + isa = PBXNativeTarget; + buildConfigurationList = 1F3BF54DB6EBEA5E14D9D1F3BF65E58A /* Build configuration list for PBXNativeTarget "React-RCTSettings" */; + buildPhases = ( + 081CFC04F9440AD302CFD14C664851FD /* Headers */, + 74718F4FF5C9A5E90BC8A025F3DA611E /* Sources */, + 0CBF0A3E99E5350489A433EAE3E8B479 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + C8AB260D6B6F364804E3955A35EF252C /* PBXTargetDependency */, + ); + name = "React-RCTSettings"; + productName = "React-RCTSettings"; + productReference = 269BE773C9482484B70949A40F4EA525 /* libReact-RCTSettings.a */; + productType = "com.apple.product-type.library.static"; + }; + 680E6A93D7913762C0337D61579E42E6 /* RNI18n */ = { + isa = PBXNativeTarget; + buildConfigurationList = 50323F408690E1D830628F63DBB65E38 /* Build configuration list for PBXNativeTarget "RNI18n" */; + buildPhases = ( + 57C1D6862A7225B2E22F74C253B3111B /* Headers */, + 6A24F06D5EBC8986C4620E00EB78B173 /* Sources */, + C32EA11DC542EA4E23168778A9A697F1 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 088E435C5EBF4AD9B06256C661D43BFD /* PBXTargetDependency */, + ); + name = RNI18n; + productName = RNI18n; + productReference = 0CEDE9F988A667E9E55A853581258D15 /* libRNI18n.a */; + productType = "com.apple.product-type.library.static"; + }; + 6D979AB5FDA2E858850D9903776A30B3 /* RNImageCropPicker-QBImagePicker */ = { + isa = PBXNativeTarget; + buildConfigurationList = 5FF0B1F48B08B3D28D091B31F49B9687 /* Build configuration list for PBXNativeTarget "RNImageCropPicker-QBImagePicker" */; + buildPhases = ( + AEE6AECF6218E98538055E5655ADC710 /* Sources */, + B3239FE939AB8DB6AF618EE17BFB9B24 /* Frameworks */, + 720C26ED8929DCF514437E008ED63B7A /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "RNImageCropPicker-QBImagePicker"; + productName = "RNImageCropPicker-QBImagePicker"; + productReference = 3DCCC9C42EB3E07CFD81800EC8A2515D /* QBImagePicker.bundle */; + productType = "com.apple.product-type.bundle"; + }; + 6FE9147F8AAA4DE676C190F680F47AE2 /* React-RCTLinking */ = { + isa = PBXNativeTarget; + buildConfigurationList = B4F727B0306688E936B7C9CC2ED16BCD /* Build configuration list for PBXNativeTarget "React-RCTLinking" */; + buildPhases = ( + F15F17C419446B2CA718C457F701BE66 /* Headers */, + 6A7F154C5F77D371B5FCE577349612BB /* Sources */, + 8ADFB787C8FCF0937771E2A1FA1524CD /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 9F9922E40437C35E59DC654A39D1EF55 /* PBXTargetDependency */, + ); + name = "React-RCTLinking"; + productName = "React-RCTLinking"; + productReference = 802121F5B756ACBFDD6D08C36246DADD /* libReact-RCTLinking.a */; + productType = "com.apple.product-type.library.static"; + }; + 730404A8DD175FF6B60B6A43DC6E554B /* react-native-camera */ = { + isa = PBXNativeTarget; + buildConfigurationList = E856E65BE4166C1CE8DA7D461B31E335 /* Build configuration list for PBXNativeTarget "react-native-camera" */; + buildPhases = ( + 30ADC45E75700DC8967F54E043BF057F /* Headers */, + 054EF58798C241EC51E07C6D2D64025C /* Sources */, + 71DD96E607D572EB9237B3549B702118 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 38139667947312ABD7949779C6956EB6 /* PBXTargetDependency */, + ); + name = "react-native-camera"; + productName = "react-native-camera"; + productReference = 6C9790F1A25C1E3828E179A8F0850851 /* libreact-native-camera.a */; + productType = "com.apple.product-type.library.static"; + }; + 7ACAA9BE580DD31A5CB9D97C45D9492D /* React-Core */ = { + isa = PBXNativeTarget; + buildConfigurationList = 3D58581B81DC14CB55F12E49CD8E9ED4 /* Build configuration list for PBXNativeTarget "React-Core" */; + buildPhases = ( + 59C3617EF4628E80D4A9DE69411726E1 /* Headers */, + BA53CF20E8BC3196B2B91A32ADDD841C /* Sources */, + E058BA0EFAD74745794F3D9D67B12943 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 6D11F510B0DE3B28CFC571321249BC97 /* PBXTargetDependency */, + 8F8DFA6279A43AA4FD5F35D06B57FCF1 /* PBXTargetDependency */, + 5DA326322B69E0F622F229F0271D6B30 /* PBXTargetDependency */, + 61D42FF1FA2FA27A649AE9899B8E2855 /* PBXTargetDependency */, + 65059B77BBEAB62AAC88204C16CC635D /* PBXTargetDependency */, + BC655ACCD6EF04C9BE70007053B40DB3 /* PBXTargetDependency */, + 3D30EFAA98C9DECD32CC546B7823E26F /* PBXTargetDependency */, + ); + name = "React-Core"; + productName = "React-Core"; + productReference = BD71E2539823621820F84384064C253A /* libReact-Core.a */; + productType = "com.apple.product-type.library.static"; + }; + 807428FE76D80865C9F59F3502600E89 /* RNDeviceInfo */ = { + isa = PBXNativeTarget; + buildConfigurationList = FA9F1BDB86E30683080FA62F0B96C10C /* Build configuration list for PBXNativeTarget "RNDeviceInfo" */; + buildPhases = ( + 3D74FAC0A5A5FC7D8AB36489440E6DCB /* Headers */, + EF2E2C6342893542A97F1BC2CC728938 /* Sources */, + 92AD154A6CB079E24747D31DA87406DB /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + D9C34899EDF327D38395BA86AA08D89F /* PBXTargetDependency */, + ); + name = RNDeviceInfo; + productName = RNDeviceInfo; + productReference = E0FE6533198104C97DB047DD5CD8AC67 /* libRNDeviceInfo.a */; + productType = "com.apple.product-type.library.static"; + }; + 83817A638154C134C6F45F08822B77E8 /* Pods-iLinkTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 2DE072C1448EF3C350A1935DCC3FB42E /* Build configuration list for PBXNativeTarget "Pods-iLinkTests" */; + buildPhases = ( + 98388DDDAF3051A2AEC57BA504FB0BF3 /* Headers */, + A44BF46EE44EBBFC31B15A3658FA7E51 /* Sources */, + 506A948010DA8B2350700FF9C4D35B10 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 63C2D00DC3F63655E17E89B764EDDF25 /* PBXTargetDependency */, + ); + name = "Pods-iLinkTests"; + productName = "Pods-iLinkTests"; + productReference = 8458FA6C5F6FE0FFC5162AEE37212EF9 /* libPods-iLinkTests.a */; + productType = "com.apple.product-type.library.static"; + }; + 89F573A6B1292B3B2296B2206BFDC3D7 /* RNCAsyncStorage */ = { + isa = PBXNativeTarget; + buildConfigurationList = 3C59786F965CDB9AD0B6E10366D86AAE /* Build configuration list for PBXNativeTarget "RNCAsyncStorage" */; + buildPhases = ( + 29394FD944E7E532A4A9758598FDA488 /* Headers */, + D6B6ECE1C4A354805B60163B7348015C /* Sources */, + FCD24A9C1705ADA6B93D919289BE8704 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + A643D0BF0A38BD6D32957DAEE4528D37 /* PBXTargetDependency */, + ); + name = RNCAsyncStorage; + productName = RNCAsyncStorage; + productReference = 5737DDB4BC95AD399B3206838AB97095 /* libRNCAsyncStorage.a */; + productType = "com.apple.product-type.library.static"; + }; + 938CCE22F6C4094B3FB6CF1478579E4B /* React-RCTAnimation */ = { + isa = PBXNativeTarget; + buildConfigurationList = 50106DCB15C0DABD745DB9CFB583F67B /* Build configuration list for PBXNativeTarget "React-RCTAnimation" */; + buildPhases = ( + B4B9534BB3C0AE7C09F991E9515B6521 /* Headers */, + 2CA9398D3CFD5D9E1155F644612126A4 /* Sources */, + 24C4C0F64A86A7BAB07C97658D65D29A /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 0799BF9785601A7BEAF03A04F1ABFE1B /* PBXTargetDependency */, + ); + name = "React-RCTAnimation"; + productName = "React-RCTAnimation"; + productReference = FE7B9294FF05AAFD1653E2104E10844A /* libReact-RCTAnimation.a */; + productType = "com.apple.product-type.library.static"; + }; + 95D98F901D07557EF7CA38D3F03832C5 /* React-RCTBlob */ = { + isa = PBXNativeTarget; + buildConfigurationList = 33C98D74BEF8B01686CA92D5B7821855 /* Build configuration list for PBXNativeTarget "React-RCTBlob" */; + buildPhases = ( + C6FEC479F05E80551F207AC77BBEDB66 /* Headers */, + 1EDF44037BE778C94EDF889F89F49609 /* Sources */, + 24D06E8E5836F83BD12946CA1F658C7C /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 7203E2410ECF7EC0EFC9138CB1D895D9 /* PBXTargetDependency */, + B20F02095B04CB117584B02889665D0F /* PBXTargetDependency */, + CF421D52E2641129B0CEA2DCF6773836 /* PBXTargetDependency */, + ); + name = "React-RCTBlob"; + productName = "React-RCTBlob"; + productReference = F71EBF73F354B475D465FF6DE9A66707 /* libReact-RCTBlob.a */; + productType = "com.apple.product-type.library.static"; + }; + 96150F524B245896B800F84F369A9A5A /* RNVectorIcons */ = { + isa = PBXNativeTarget; + buildConfigurationList = 756AE01E350DCC118F4680D339628219 /* Build configuration list for PBXNativeTarget "RNVectorIcons" */; + buildPhases = ( + E265B278A88D2CFB1CFA3283F7AD423A /* Headers */, + F8DC0093A51D03EADE066109CFABA5E5 /* Sources */, + BB7E0B9C58E990515F1921EFCBDF69BF /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 385698E25CEBF33682057D7B8501F65C /* PBXTargetDependency */, + ); + name = RNVectorIcons; + productName = RNVectorIcons; + productReference = 8998273719FDD789E6F9C7541AFD0B33 /* libRNVectorIcons.a */; + productType = "com.apple.product-type.library.static"; + }; + A4F685BE3CAC127BDCE4E0DBBD88D191 /* Folly */ = { + isa = PBXNativeTarget; + buildConfigurationList = 40835611B297534D1CDAB478967E6F62 /* Build configuration list for PBXNativeTarget "Folly" */; + buildPhases = ( + C0C31053BFA98DC291D72F197E1B7941 /* Headers */, + AA327C983A55F689D0D97AB809AFBD7E /* Sources */, + 7D2B19BFB1242D4939FD69BA9BB8C423 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 3B88CBFEA5093D296DFAB28F513537A7 /* PBXTargetDependency */, + 7C9BA412B6440C00AAF8C6910A98E5E2 /* PBXTargetDependency */, + 58479B210CDF957CB099E197A95EB807 /* PBXTargetDependency */, + ); + name = Folly; + productName = Folly; + productReference = 06489499588BFA8FD5E63DD6375CD533 /* libFolly.a */; + productType = "com.apple.product-type.library.static"; + }; + AD904F32069787EFB2DFFE05EB82F5BD /* GCDWebServer */ = { + isa = PBXNativeTarget; + buildConfigurationList = 8345940DA35CC18E0ABFDC48CF19D86C /* Build configuration list for PBXNativeTarget "GCDWebServer" */; + buildPhases = ( + 78BA873E4A7FA50983B1CC7F0CE36034 /* Headers */, + DF3739A4DF17FA1E2415FBE37CC21F7B /* Sources */, + 6886D27842E5B43C9AD50E0CCA7E94C3 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = GCDWebServer; + productName = GCDWebServer; + productReference = B68C1052A3B51DBCF7D960F898AAFA95 /* libGCDWebServer.a */; + productType = "com.apple.product-type.library.static"; + }; + ADE7D4B70FB12900D442F75D3144441F /* RealmJS */ = { + isa = PBXNativeTarget; + buildConfigurationList = 084A8D46EB9AE1772BD9B61D952EB1A1 /* Build configuration list for PBXNativeTarget "RealmJS" */; + buildPhases = ( + A544BBE2DBF44A3FCFB8233D7EB15589 /* Headers */, + E5F3F9F5196957E2E72E143BA53F523C /* [CP-User] Download Realm Core & Sync */, + 4D0684890A8E292A6FB50942EA8277C5 /* Sources */, + D746C6138CB3D5A0C777A4F8EAE842A2 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 1700DC3BF931B2ABB12AA097216FF85D /* PBXTargetDependency */, + DA90F8A4D2FAD86DED37B6123A94B246 /* PBXTargetDependency */, + ); + name = RealmJS; + productName = RealmJS; + productReference = 8EC0BC4D6C274F59CD17A8BD2D6D36D1 /* libRealmJS.a */; + productType = "com.apple.product-type.library.static"; + }; + B6D5DD49633DFF0657B8C3F08EB3ABA9 /* ReactCommon */ = { + isa = PBXNativeTarget; + buildConfigurationList = 49554086F813AA8A691B6858C97A35AA /* Build configuration list for PBXNativeTarget "ReactCommon" */; + buildPhases = ( + E6673E8F4B732360468136F7118B6732 /* Headers */, + BEAB54C41F8F6105EB316BFD67DC6A99 /* Sources */, + 55EC07AF11CF30AAFA79376455DF939D /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 1F4ABC256036339AA1D1F706E9FCC871 /* PBXTargetDependency */, + B8DD98A38803E9BA7CCB319BF3193E28 /* PBXTargetDependency */, + 3D932FD925546DB695CAF9CCBCB3108B /* PBXTargetDependency */, + 48238EB23D70ED3D51ABB6096AF58B89 /* PBXTargetDependency */, + 8A89EE978C6EE563D39A3C9884D35D4B /* PBXTargetDependency */, + FA9E3B187CDEE082178A909DCFBF4F3B /* PBXTargetDependency */, + ); + name = ReactCommon; + productName = ReactCommon; + productReference = D5C775614AC76D44CECB6BE08B022F1F /* libReactCommon.a */; + productType = "com.apple.product-type.library.static"; + }; + B9E8F4CA2A4A8599389FEB665A9B96FF /* RNGestureHandler */ = { + isa = PBXNativeTarget; + buildConfigurationList = C71BF0ACAF9820C852857E470FFD817B /* Build configuration list for PBXNativeTarget "RNGestureHandler" */; + buildPhases = ( + E7C54BC8FD1EAECA33F99000F2CB73F6 /* Headers */, + B29F6B4D19279FD6E2ACC1B34B72ABE7 /* Sources */, + 1C8CF4EF68D7C5AB44ED578B92087A38 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 7880B8AC31F1EAD7CA3F425A43969916 /* PBXTargetDependency */, + ); + name = RNGestureHandler; + productName = RNGestureHandler; + productReference = 8F65F9361F2069CF9E9D751272968DE4 /* libRNGestureHandler.a */; + productType = "com.apple.product-type.library.static"; + }; + C1A1C02FAD3999B6DAC48835EC954521 /* react-native-maps */ = { + isa = PBXNativeTarget; + buildConfigurationList = 06159AC4624D1EA0A58B3DCDE7280FE4 /* Build configuration list for PBXNativeTarget "react-native-maps" */; + buildPhases = ( + 484C0D3AEAF886AFEAFC7B7E99CA3800 /* Headers */, + 6F626A2F637D095B85D745C23CE1CBF4 /* Sources */, + 90F4D9B968255B767E68478C5B1611AD /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 33D9824C1E4D0C6FFD1266357B977EDB /* PBXTargetDependency */, + ); + name = "react-native-maps"; + productName = "react-native-maps"; + productReference = 2F955107B98F1B5213C3C9F4CAB1EDB5 /* libreact-native-maps.a */; + productType = "com.apple.product-type.library.static"; + }; + C3496D0495E700CF08A90C41EA8FA4BB /* FBReactNativeSpec */ = { + isa = PBXNativeTarget; + buildConfigurationList = E31EA972DB416DAC8F4A1660426C7DCE /* Build configuration list for PBXNativeTarget "FBReactNativeSpec" */; + buildPhases = ( + 8A2C7028EFCC3A640C1D2B25E89CA146 /* Headers */, + 6168C6825EB06086FA7980C4FE481DB4 /* Sources */, + 45F233C75A7F463B1BE676FA7E22466D /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 41E4DF16D2235D65085776CFF19854D4 /* PBXTargetDependency */, + B8FBA1BA3E6EAF70DE17E4650CAA2AEA /* PBXTargetDependency */, + D686F14286F3197034B4B6217CDD4A07 /* PBXTargetDependency */, + EA2A9CFFA9632B8B0FE80F6A75F97608 /* PBXTargetDependency */, + 07445A8767D81F08C61810B66781586D /* PBXTargetDependency */, + C46B8E57A0D809811A8800A97F18221D /* PBXTargetDependency */, + ); + name = FBReactNativeSpec; + productName = FBReactNativeSpec; + productReference = ABFEEA82A6C346B22843FBE0B0582182 /* libFBReactNativeSpec.a */; + productType = "com.apple.product-type.library.static"; + }; + D0A4E77DD13672F3E2E1D9593F999DBA /* lottie-react-native */ = { + isa = PBXNativeTarget; + buildConfigurationList = 2CE2085BD444380A0B3845856B135575 /* Build configuration list for PBXNativeTarget "lottie-react-native" */; + buildPhases = ( + A8E8D60448C78BC2BF0C358AF09BCBD0 /* Headers */, + 6851EEFF54F222466C1EE3F5BFC68713 /* Sources */, + 54AC48BD4A56373868D9AFFD77162B28 /* Frameworks */, + 9510B290102A5A5566970FF5F1852451 /* Copy generated compatibility header */, + ); + buildRules = ( + ); + dependencies = ( + 179047EE192E29C91BEBAD6AFC9AB773 /* PBXTargetDependency */, + C53BE2C83F37A2088FEE14CBB6D12E0C /* PBXTargetDependency */, + ); + name = "lottie-react-native"; + productName = "lottie-react-native"; + productReference = 0F8D5091C801A6ECB9A173DA0E385A29 /* liblottie-react-native.a */; + productType = "com.apple.product-type.library.static"; + }; + D0EFEFB685D97280256C559792236873 /* glog */ = { + isa = PBXNativeTarget; + buildConfigurationList = 2630FCCE0CF3D0F8129895F34C5C20A5 /* Build configuration list for PBXNativeTarget "glog" */; + buildPhases = ( + D4042B526436C13B7CB5F028686D4071 /* Headers */, + 70554A45BF206DE1F57A37A5CD2758A0 /* Sources */, + B79F9AE8585677DD2C7C5582E5910CF6 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = glog; + productName = glog; + productReference = 3CA7A9404CCDD6BA22C97F8348CE3209 /* libglog.a */; + productType = "com.apple.product-type.library.static"; + }; + D20469A9A1E5CFB26045EAEBE3F88E5E /* RCTTypeSafety */ = { + isa = PBXNativeTarget; + buildConfigurationList = 96F8CF61079507D1E301962AD6B4987F /* Build configuration list for PBXNativeTarget "RCTTypeSafety" */; + buildPhases = ( + B8CE3B0B696A2F9A50087289D16E74A6 /* Headers */, + 53F0AAB0200401FF253DB58644C45CC8 /* Sources */, + BDD9730A0185DBA14DACF288EC34EB4E /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 0D2C2C8D68FAD57F65E14D49CC394160 /* PBXTargetDependency */, + E3D0D10365F3B21B44725EC5155D28B0 /* PBXTargetDependency */, + 163065107D87D4CD0E315A430912C9C5 /* PBXTargetDependency */, + C0107B04A0B3FAEA177F8D924242C47B /* PBXTargetDependency */, + ); + name = RCTTypeSafety; + productName = RCTTypeSafety; + productReference = F958876A082BF810B342435CE3FB5AF6 /* libRCTTypeSafety.a */; + productType = "com.apple.product-type.library.static"; + }; + D559A7058936768CC7EA852223BBA953 /* Pods-iLink-tvOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = 9D45B5B6658DA1D9E528235C878DF9FD /* Build configuration list for PBXNativeTarget "Pods-iLink-tvOS" */; + buildPhases = ( + 68E18A18C391D87F2960D0ED903AF05C /* Headers */, + EF8711CF09DB73F81EC1B64F4927C51B /* Sources */, + F232549D4D047976367281CCE99A76DA /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "Pods-iLink-tvOS"; + productName = "Pods-iLink-tvOS"; + productReference = 635500BD2B73F2F50A72E06A6F5E6960 /* libPods-iLink-tvOS.a */; + productType = "com.apple.product-type.library.static"; + }; + D760AF58E12ABBB51F84160FB02B5F39 /* RNDateTimePicker */ = { + isa = PBXNativeTarget; + buildConfigurationList = DA2CAE114A571A2644458B63C8F865A1 /* Build configuration list for PBXNativeTarget "RNDateTimePicker" */; + buildPhases = ( + 9C125D8AA9519FC0BB6215D55CC2CF85 /* Headers */, + 869D89B0EE364B3D6DABF4DE9B0E4B56 /* Sources */, + 7B92559B1643757ACB684EFCE9D683BE /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 75723E71C392F0F1F61A42F5660C6F8F /* PBXTargetDependency */, + ); + name = RNDateTimePicker; + productName = RNDateTimePicker; + productReference = 72DE4BF3FB9CE0858E90F96FEF8A53AE /* libRNDateTimePicker.a */; + productType = "com.apple.product-type.library.static"; + }; + DA0709CAAD589C6E7963495210438021 /* React-jsiexecutor */ = { + isa = PBXNativeTarget; + buildConfigurationList = D1FB4648E3FC4B715EC3534AAC62215E /* Build configuration list for PBXNativeTarget "React-jsiexecutor" */; + buildPhases = ( + 25322A9E03B2AD9C9E539D96658200BB /* Headers */, + 049C1E42D25AC50EA5B674EC70C1F171 /* Sources */, + F98949E31957E70D3A3B181CA6DBAB6A /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 634263C359C686563A04E9768C51E295 /* PBXTargetDependency */, + 1E033B20D02AAA5F73A6AA840D98888D /* PBXTargetDependency */, + AED0B95B2C7683DBDB6946FC99B5E1C9 /* PBXTargetDependency */, + 86E4843B5F7472370158F921DD10F5CF /* PBXTargetDependency */, + A3E682197CB59A79F323A6E0CC220A19 /* PBXTargetDependency */, + ); + name = "React-jsiexecutor"; + productName = "React-jsiexecutor"; + productReference = F2E7C88DFCD460A4B46B913ADEB8A641 /* libReact-jsiexecutor.a */; + productType = "com.apple.product-type.library.static"; + }; + DBD2D83E10F8B7D3F4E0E34E6A9FCFA6 /* React-RCTText */ = { + isa = PBXNativeTarget; + buildConfigurationList = AE6C8C5152DF601DE26FA629C5A95295 /* Build configuration list for PBXNativeTarget "React-RCTText" */; + buildPhases = ( + BA9D41106C588E1D7368A76ACCA282B8 /* Headers */, + C001390E92B70C788B619E4717A18376 /* Sources */, + FF27611FE10805A383FD9A38DF3898AB /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 6921005F93889ABE30C01D118B6B7BFD /* PBXTargetDependency */, + ); + name = "React-RCTText"; + productName = "React-RCTText"; + productReference = E6A16705C69FC7DE11C2469A4A0F8358 /* libReact-RCTText.a */; + productType = "com.apple.product-type.library.static"; + }; + DE32677FA772BFFD0172EB7EE9E4E7E9 /* RNSVG */ = { + isa = PBXNativeTarget; + buildConfigurationList = BEBDE1CB93EC2F2BA7BFD5E2B30EDBB0 /* Build configuration list for PBXNativeTarget "RNSVG" */; + buildPhases = ( + D42625E085A02B1604515DA90A646E38 /* Headers */, + 5BD1E3CD676E4532BCEEA2571D638AC3 /* Sources */, + 26EE07FB19292694DBA9B8789F06E8D9 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + A819D78ED87FC52E66F8D5CC8ED8AAD2 /* PBXTargetDependency */, + ); + name = RNSVG; + productName = RNSVG; + productReference = 90EE8D3C082C157169540FC8F5913DAD /* libRNSVG.a */; + productType = "com.apple.product-type.library.static"; + }; + E16E206437995280D349D4B67695C894 /* React-CoreModules */ = { + isa = PBXNativeTarget; + buildConfigurationList = 4FE30E95E6BBADA68EC1AD80F445897D /* Build configuration list for PBXNativeTarget "React-CoreModules" */; + buildPhases = ( + 55AECB99E2352374B0E70FB0090F6E3F /* Headers */, + C2B3B4C5A28CA478E46B7BDE8F27BB58 /* Sources */, + 281D37FCDA15B6F99004EA4F22E15E86 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 0AB72F94FDB0DA6D177080613304FE2B /* PBXTargetDependency */, + 652BDF3B97100B34DFF3BA8C4D273CBF /* PBXTargetDependency */, + FBF4B836190E16B6609369AFDB93E145 /* PBXTargetDependency */, + 9FDB29F574ED11EF1058A9FDBEBE364A /* PBXTargetDependency */, + 45BC9E720595BCB42666A107D18A5800 /* PBXTargetDependency */, + 1C34B1B13FC7F88040DC152B72D7E7FF /* PBXTargetDependency */, + ); + name = "React-CoreModules"; + productName = "React-CoreModules"; + productReference = 6771D231F4C8C5976470A369C474B32E /* libReact-CoreModules.a */; + productType = "com.apple.product-type.library.static"; + }; + ED3E7F50BBDE8B9088929C3E3DC5FA19 /* react-native-onesignal */ = { + isa = PBXNativeTarget; + buildConfigurationList = 1A388CE27E2415C2B0611A489F1D8D21 /* Build configuration list for PBXNativeTarget "react-native-onesignal" */; + buildPhases = ( + B8F481C7550B2C7EE5754F9CD337FC5B /* Headers */, + 8589426001230EA724B3BAB9DABCFBD6 /* Sources */, + 41CD06BCF413DD68CA636C4A96C975A5 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 40E0A828AD99411601B5A7FC66D90D09 /* PBXTargetDependency */, + BF7E29D71234E0B76CF367175FA370F6 /* PBXTargetDependency */, + ); + name = "react-native-onesignal"; + productName = "react-native-onesignal"; + productReference = FD05B573DE80F752C065391EC663F390 /* libreact-native-onesignal.a */; + productType = "com.apple.product-type.library.static"; + }; + F1401264B2796C32CF72C6C2CB10D487 /* react-native-viewpager */ = { + isa = PBXNativeTarget; + buildConfigurationList = A2927360D23A81228383945FFED50E70 /* Build configuration list for PBXNativeTarget "react-native-viewpager" */; + buildPhases = ( + E3CBBBC9D319661416239289B63D2381 /* Headers */, + BF761D63B2249F1DD0FD2CA31304C21E /* Sources */, + 911AD12339500C95BC8DC138161B25A1 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 0DC67ACFB5C86E7BD5046F2BF5AF35B6 /* PBXTargetDependency */, + ); + name = "react-native-viewpager"; + productName = "react-native-viewpager"; + productReference = E5F9D2F97C3F55CA9A6540B426B0E644 /* libreact-native-viewpager.a */; + productType = "com.apple.product-type.library.static"; + }; + F3966F664F3CFAEFAB57C40FB54D3788 /* TOCropViewController */ = { + isa = PBXNativeTarget; + buildConfigurationList = 91C6E842CB51DAB298E3371335A0C1A9 /* Build configuration list for PBXNativeTarget "TOCropViewController" */; + buildPhases = ( + 17570970A8CFB5E72351E9FD3CE6BBE7 /* Headers */, + 0F9B3A92AF99788FF1927F72D727E3B3 /* Sources */, + 6F7F8001BB2E53F76CC1AA8B3A4E3AF8 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 5021DF23050C3EEB744155DB812102CB /* PBXTargetDependency */, + ); + name = TOCropViewController; + productName = TOCropViewController; + productReference = 7862C607B7BE0510C2D65193F9B4B4F9 /* libTOCropViewController.a */; + productType = "com.apple.product-type.library.static"; + }; + F7D033C4C128EECAA020990641FA985F /* React-jsinspector */ = { + isa = PBXNativeTarget; + buildConfigurationList = 67B00AB57397D28780609603C7C569FA /* Build configuration list for PBXNativeTarget "React-jsinspector" */; + buildPhases = ( + 2CB84B9CB3A26CDB468FEEF13D2D334D /* Headers */, + 2CEB03AC88B8BADF8174D5043E5508C4 /* Sources */, + 518B7A628E641C2395D3FF863EC09DB9 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "React-jsinspector"; + productName = "React-jsinspector"; + productReference = 2577F299FCB0A19824FE989BE77B8E8F /* libReact-jsinspector.a */; + productType = "com.apple.product-type.library.static"; + }; + F87E0F72889B3DABAA26682E796158C7 /* Pods-iLink-tvOSTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = E2F4A30F6A3F83B759469E0308985549 /* Build configuration list for PBXNativeTarget "Pods-iLink-tvOSTests" */; + buildPhases = ( + E28D5CC2AA2585391D9B29B31845F899 /* Headers */, + E3C91DC46E49FF945D8F77A020227909 /* Sources */, + 47CC87B2D66FBE47AA23093CB31854E6 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 21FCA4FD8AF83E9358F9F1024F931CA4 /* PBXTargetDependency */, + ); + name = "Pods-iLink-tvOSTests"; + productName = "Pods-iLink-tvOSTests"; + productReference = 06F02220660F7DDEBE7B9D81E51A7E99 /* libPods-iLink-tvOSTests.a */; + productType = "com.apple.product-type.library.static"; + }; + FA877ADC442CB19CF61793D234C8B131 /* React-jsi */ = { + isa = PBXNativeTarget; + buildConfigurationList = 260286F8CDC3082292AF1EC5E84D7B1A /* Build configuration list for PBXNativeTarget "React-jsi" */; + buildPhases = ( + 51C75B8172AAB3157371122BB16B4F4E /* Headers */, + 69F62E85533AFE41D4C3A301EBB25E53 /* Sources */, + 577FE3DCE776A27472B95B70E51AE122 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + FA081162D8C1FC50077C88A56F925B93 /* PBXTargetDependency */, + B874CA3FE12FFA448EAC32FE3ABD1A4B /* PBXTargetDependency */, + 9B00692326A18CDB21FBAD666F3C2953 /* PBXTargetDependency */, + E0A204BF723328732848CC3AAD18B387 /* PBXTargetDependency */, + ); + name = "React-jsi"; + productName = "React-jsi"; + productReference = D9F334F2E90E3EE462FC4192AF5C03BD /* libReact-jsi.a */; + productType = "com.apple.product-type.library.static"; + }; + FF879E718031128A75E7DE54046E6219 /* RNReanimated */ = { + isa = PBXNativeTarget; + buildConfigurationList = 5A501EF9B8D46A2DADEEC41315D3EB2B /* Build configuration list for PBXNativeTarget "RNReanimated" */; + buildPhases = ( + E683CE00B95E49E1FAA922155C742DDA /* Headers */, + 8C337B229DAB50A5AB190C899498EC59 /* Sources */, + 6E31AB7F7E3E030BC0F364161E5978D1 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 406351DAC30ECA3118692DEF46C63E08 /* PBXTargetDependency */, + ); + name = RNReanimated; + productName = RNReanimated; + productReference = C777CF2FB1E39A45CBBDB54E8693F471 /* libRNReanimated.a */; + productType = "com.apple.product-type.library.static"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + BFDFE7DC352907FC980B868725387E98 /* Project object */ = { + isa = PBXProject; + attributes = { + LastSwiftUpdateCheck = 1100; + LastUpgradeCheck = 1100; + }; + buildConfigurationList = 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */; + compatibilityVersion = "Xcode 3.2"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = CF1408CF629C7361332E53B88F7BD30C; + productRefGroup = D8179304D2CFD46F79E877F5FCF25236 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + ED2506AE7DE35D654F61254441EA7155 /* boost-for-react-native */, + 2AB2EF542954AB1C999E03BFEF8DE806 /* DoubleConversion */, + 8CC4EAA817AA86310D1900F1DAB3580F /* FBLazyVector */, + C3496D0495E700CF08A90C41EA8FA4BB /* FBReactNativeSpec */, + A4F685BE3CAC127BDCE4E0DBBD88D191 /* Folly */, + AD904F32069787EFB2DFFE05EB82F5BD /* GCDWebServer */, + D0EFEFB685D97280256C559792236873 /* glog */, + 0B967D7F8561D42493EE289EC8D450D1 /* lottie-ios */, + D0A4E77DD13672F3E2E1D9593F999DBA /* lottie-react-native */, + 210EB05CEC7AD9C148F90F752DE74C48 /* OneSignal */, + 37B9DF6C4D55BD05E9174EBA51F8750C /* Pods-iLink */, + D559A7058936768CC7EA852223BBA953 /* Pods-iLink-tvOS */, + F87E0F72889B3DABAA26682E796158C7 /* Pods-iLink-tvOSTests */, + 83817A638154C134C6F45F08822B77E8 /* Pods-iLinkTests */, + E7E7CE52C8C68B17224FF8C262D80ABF /* RCTRequired */, + D20469A9A1E5CFB26045EAEBE3F88E5E /* RCTTypeSafety */, + 1BEE828C124E6416179B904A9F66D794 /* React */, + 7ACAA9BE580DD31A5CB9D97C45D9492D /* React-Core */, + E16E206437995280D349D4B67695C894 /* React-CoreModules */, + 463F41A7E8B252F8AC5024DA1F4AF6DA /* React-cxxreact */, + FA877ADC442CB19CF61793D234C8B131 /* React-jsi */, + DA0709CAAD589C6E7963495210438021 /* React-jsiexecutor */, + F7D033C4C128EECAA020990641FA985F /* React-jsinspector */, + 730404A8DD175FF6B60B6A43DC6E554B /* react-native-camera */, + 1BBA090545F0B723C18EFF83953F301F /* react-native-geolocation */, + C1A1C02FAD3999B6DAC48835EC954521 /* react-native-maps */, + ED3E7F50BBDE8B9088929C3E3DC5FA19 /* react-native-onesignal */, + F1401264B2796C32CF72C6C2CB10D487 /* react-native-viewpager */, + 11989A5E568B3B69655EE0C13DCDA3F9 /* React-RCTActionSheet */, + 938CCE22F6C4094B3FB6CF1478579E4B /* React-RCTAnimation */, + 95D98F901D07557EF7CA38D3F03832C5 /* React-RCTBlob */, + 4F265533AAB7C8985856EC78A33164BB /* React-RCTImage */, + 6FE9147F8AAA4DE676C190F680F47AE2 /* React-RCTLinking */, + 651511D7DA7F07F9FC9AA40A2E86270D /* React-RCTNetwork */, + 680299219D3A48D42A648AF6706275A9 /* React-RCTSettings */, + DBD2D83E10F8B7D3F4E0E34E6A9FCFA6 /* React-RCTText */, + 53D121F9F9BB0F8AC1C94A12C5A8572F /* React-RCTVibration */, + B6D5DD49633DFF0657B8C3F08EB3ABA9 /* ReactCommon */, + ADE7D4B70FB12900D442F75D3144441F /* RealmJS */, + 89F573A6B1292B3B2296B2206BFDC3D7 /* RNCAsyncStorage */, + D760AF58E12ABBB51F84160FB02B5F39 /* RNDateTimePicker */, + 807428FE76D80865C9F59F3502600E89 /* RNDeviceInfo */, + B9E8F4CA2A4A8599389FEB665A9B96FF /* RNGestureHandler */, + 680E6A93D7913762C0337D61579E42E6 /* RNI18n */, + 0D82774D2A533D3FFAE27CAB4A6E9CB2 /* RNImageCropPicker */, + 6D979AB5FDA2E858850D9903776A30B3 /* RNImageCropPicker-QBImagePicker */, + FF879E718031128A75E7DE54046E6219 /* RNReanimated */, + 214E42634D1E187D876346D36184B655 /* RNScreens */, + DE32677FA772BFFD0172EB7EE9E4E7E9 /* RNSVG */, + 96150F524B245896B800F84F369A9A5A /* RNVectorIcons */, + 5CB57245CFAA41531DA0E71363484F3B /* SajjadBlurOverlay */, + F3966F664F3CFAEFAB57C40FB54D3788 /* TOCropViewController */, + 2D4D3D5AD93ADCCF3DD45A88009E48D6 /* TOCropViewController-TOCropViewControllerBundle */, + 2B25F90D819B9ADF2AF2D8733A890333 /* Yoga */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 3846A5B4C5F558758EEA2E56D8DAF68B /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 9C3E75AB9740C1FB007CD470B19AA8FC /* ar.lproj in Resources */, + 32F6364B238E1620BBF8C694C0E5935C /* Base.lproj in Resources */, + 0E136C725249BEE6925DE65691CB311D /* ca.lproj in Resources */, + D799FB82308DF92E78A190BA577128C1 /* cs.lproj in Resources */, + E742453C6BA877B7650821196ADA49BC /* da-DK.lproj in Resources */, + C96A14845B665B6E403453A625B8FB54 /* de.lproj in Resources */, + 0F942783F7DCC9CC27307B24BDFD9252 /* en.lproj in Resources */, + A3BEB0FCC675DA02F6B33263DBAC0D38 /* es.lproj in Resources */, + AB54DE60C2CF7A43727A127608FD168F /* fa-IR.lproj in Resources */, + 2B22715149B5A2130E38992A83FF9F95 /* fa.lproj in Resources */, + 11B94708603F9D3F907C58FE21C39F3F /* fi.lproj in Resources */, + E2EC4F6D036FE1726E404B172B975D3D /* fr.lproj in Resources */, + C4118E988426357141BF7BC2C566084E /* hu.lproj in Resources */, + 35265B8DCF3DDB4F37E8F7FA6FF1C0DE /* id.lproj in Resources */, + DF1E90E212129105AFF025EA39DE8600 /* it.lproj in Resources */, + C3C9CB83A80D00EB7C94BAAF4F08FE93 /* ja.lproj in Resources */, + 0B89657667FC8C5C645743CC229B2636 /* ko.lproj in Resources */, + FB6312092E83657A46BDFC918E95DA76 /* ms.lproj in Resources */, + 67F27BC02036877D56FD50865796101A /* nl.lproj in Resources */, + B2DC4181DB7195CCAB4D6B804154902A /* pl.lproj in Resources */, + B7007DFAF182626ACB04F0D0A95136EE /* pt-BR.lproj in Resources */, + CBEF2DAC778B6C399D08984069ECFCB1 /* pt.lproj in Resources */, + 9038BCDFA4CFFD7FC7D61FB397EB48F8 /* ro.lproj in Resources */, + 0CF6018F8315C724AA7BEDC5D486A367 /* ru.lproj in Resources */, + 244FE1D78D0B3E67E652E657C015742B /* sk.lproj in Resources */, + 9F4E5B6351800DBBB154A2383924EF44 /* tr.lproj in Resources */, + B305B568D1E81E4FC03FAA0B5F46C912 /* vi.lproj in Resources */, + 8BC38BBF41AC8595DC35932341AB624F /* zh-Hans.lproj in Resources */, + 31D038BCCDE4DE99D8674A1D7ECDCA91 /* zh-Hant.lproj in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 720C26ED8929DCF514437E008ED63B7A /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 1E585FB937DE6BE7D080ED5626175361 /* de.lproj in Resources */, + 18ACD1A88651210CFEDAF164CF23B8CA /* en.lproj in Resources */, + D55DC9C84AE16F7F4B611A6E6474691B /* es.lproj in Resources */, + A9A3B614F6FAD4D2878E63458CBB7014 /* fr.lproj in Resources */, + 7EFC1B712A57CB4AEA122E08BAC84EF0 /* ja.lproj in Resources */, + 5004AAE2136A647FD767A0E0BDAACC57 /* pl.lproj in Resources */, + 27F9896817B842A1976F93132C446335 /* QBImagePicker.storyboard in Resources */, + BA060EE34D400D33C55B8EF60FB3EE5D /* zh-Hans.lproj in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 7AD452E5DE76076A40721FC507880852 /* Copy generated compatibility header */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${DERIVED_SOURCES_DIR}/${PRODUCT_MODULE_NAME}-Swift.h", + "${PODS_ROOT}/Headers/Public/Lottie/lottie-ios.modulemap", + "${PODS_ROOT}/Headers/Public/Lottie/lottie-ios-umbrella.h", + ); + name = "Copy generated compatibility header"; + outputFileListPaths = ( + ); + outputPaths = ( + "${BUILT_PRODUCTS_DIR}/${PRODUCT_MODULE_NAME}.modulemap", + "${BUILT_PRODUCTS_DIR}/lottie-ios-umbrella.h", + "${BUILT_PRODUCTS_DIR}/Swift Compatibility Header/${PRODUCT_MODULE_NAME}-Swift.h", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "COMPATIBILITY_HEADER_PATH=\"${BUILT_PRODUCTS_DIR}/Swift Compatibility Header/${PRODUCT_MODULE_NAME}-Swift.h\"\nMODULE_MAP_PATH=\"${BUILT_PRODUCTS_DIR}/${PRODUCT_MODULE_NAME}.modulemap\"\n\nditto \"${DERIVED_SOURCES_DIR}/${PRODUCT_MODULE_NAME}-Swift.h\" \"${COMPATIBILITY_HEADER_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/Lottie/lottie-ios.modulemap\" \"${MODULE_MAP_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/Lottie/lottie-ios-umbrella.h\" \"${BUILT_PRODUCTS_DIR}\"\nprintf \"\\n\\nmodule ${PRODUCT_MODULE_NAME}.Swift {\\n header \\\"${COMPATIBILITY_HEADER_PATH}\\\"\\n requires objc\\n}\\n\" >> \"${MODULE_MAP_PATH}\"\n"; + }; + 9510B290102A5A5566970FF5F1852451 /* Copy generated compatibility header */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${DERIVED_SOURCES_DIR}/${PRODUCT_MODULE_NAME}-Swift.h", + "${PODS_ROOT}/Headers/Public/lottie_react_native/lottie-react-native.modulemap", + "${PODS_ROOT}/Headers/Public/lottie_react_native/lottie-react-native-umbrella.h", + ); + name = "Copy generated compatibility header"; + outputFileListPaths = ( + ); + outputPaths = ( + "${BUILT_PRODUCTS_DIR}/${PRODUCT_MODULE_NAME}.modulemap", + "${BUILT_PRODUCTS_DIR}/lottie-react-native-umbrella.h", + "${BUILT_PRODUCTS_DIR}/Swift Compatibility Header/${PRODUCT_MODULE_NAME}-Swift.h", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "COMPATIBILITY_HEADER_PATH=\"${BUILT_PRODUCTS_DIR}/Swift Compatibility Header/${PRODUCT_MODULE_NAME}-Swift.h\"\nMODULE_MAP_PATH=\"${BUILT_PRODUCTS_DIR}/${PRODUCT_MODULE_NAME}.modulemap\"\n\nditto \"${DERIVED_SOURCES_DIR}/${PRODUCT_MODULE_NAME}-Swift.h\" \"${COMPATIBILITY_HEADER_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/lottie_react_native/lottie-react-native.modulemap\" \"${MODULE_MAP_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/lottie_react_native/lottie-react-native-umbrella.h\" \"${BUILT_PRODUCTS_DIR}\"\nprintf \"\\n\\nmodule ${PRODUCT_MODULE_NAME}.Swift {\\n header \\\"${COMPATIBILITY_HEADER_PATH}\\\"\\n requires objc\\n}\\n\" >> \"${MODULE_MAP_PATH}\"\n"; + }; + E5F3F9F5196957E2E72E143BA53F523C /* [CP-User] Download Realm Core & Sync */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + name = "[CP-User] Download Realm Core & Sync"; + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "echo \"Using Node.js $(node --version)\" && node ${PODS_TARGET_SRCROOT}/scripts/download-realm.js ios --sync"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 00F245FAA16114F4D189FA7D01787401 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 81CC62FFB67259CAEE48C5AD634C173A /* bignum-dtoa.cc in Sources */, + 7954E4E69F110D651ECE169B652E7C21 /* bignum.cc in Sources */, + 0121DBEDDB1AA17D2E699AD70C4D9C7B /* cached-powers.cc in Sources */, + 6E5FDDC033DB7AB946AAC9B1D6B3BDBE /* diy-fp.cc in Sources */, + 5D783A28D42B69ED3918F66F820C8701 /* double-conversion.cc in Sources */, + 1D66E156B8AD27CCEE5E2D175E50E2B5 /* DoubleConversion-dummy.m in Sources */, + 1486156DFCD66204248160D76650E74A /* fast-dtoa.cc in Sources */, + F10066FFFCB05691561796C75A21D831 /* fixed-dtoa.cc in Sources */, + 4435D7AA2CC2A78C02637BD68B3495F7 /* strtod.cc in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 049C1E42D25AC50EA5B674EC70C1F171 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 224EA0F93D0EB33A2389C73F1409CF36 /* JSIExecutor.cpp in Sources */, + A7F1E248488C5842FFA96C19289566AC /* JSINativeModules.cpp in Sources */, + AEFEE82A438725A23863B53FCF5529D5 /* React-jsiexecutor-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 054EF58798C241EC51E07C6D2D64025C /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + B64B10AE8FE8BDC3154826579463E408 /* BarcodeDetectorManagerMlkit.m in Sources */, + 429173057737A42EEE777A5DBF17EC15 /* CameraFocusSquare.m in Sources */, + 4EE81E28366654E64803AE25B3EEBCAC /* FaceDetectorManagerMlkit.m in Sources */, + 26E0E99C24C82DAEDAB19E86A3D30318 /* NSMutableDictionary+ImageMetadata.m in Sources */, + FD4D0DD602D22166EE3C70F2DC7FD77C /* RCTCamera.m in Sources */, + 23B030E9760009A7B336412B0F97D4B8 /* RCTCameraManager.m in Sources */, + E7665DD8D2AEB92EE044D7299F4EB1CD /* RCTSensorOrientationChecker.m in Sources */, + 126170CBF0301E5B24BB757BD0EB68C3 /* react-native-camera-dummy.m in Sources */, + 82EC86610C7F4802E9B0EE5F60959C1B /* RNCamera.m in Sources */, + 890C94ED224F1077D7A153B8300ED63C /* RNCameraManager.m in Sources */, + F5815C34EB758160EF33663632913EB1 /* RNCameraUtils.m in Sources */, + 575F9006EA8BD2D60FCBF7E10E03B4DE /* RNCustomWhiteBalanceSettings.m in Sources */, + 1128213045AF1DD90122188DE7C7F43D /* RNFaceDetectorModuleMLKit.m in Sources */, + E0F1ABAEE8E0B4162C8AF471A8A5FA3A /* RNFileSystem.m in Sources */, + AB828B8E8E41A1D2EDC2523722635DE4 /* RNImageUtils.m in Sources */, + 5EBE0C2AE482FA076F7EF221286F8671 /* RNSensorOrientationChecker.m in Sources */, + 84C1BE0AD6D920468BF0F64BD8B3639E /* TextDetectorManager.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 0F9B3A92AF99788FF1927F72D727E3B3 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + B3BD678B70D4507DDAE296412970370C /* TOActivityCroppedImageProvider.m in Sources */, + E234216475CEB3C1FA47FF9F06B2E286 /* TOCropOverlayView.m in Sources */, + D5F16C0BB22DE3B479F73B115A351FF9 /* TOCroppedImageAttributes.m in Sources */, + 5F287415442DB48948319EA47E5F4FB5 /* TOCropScrollView.m in Sources */, + 8951FD1043999581A1CDD142F194A986 /* TOCropToolbar.m in Sources */, + 8432830A911A1292E049A05B2EEAB116 /* TOCropView.m in Sources */, + 95C5B0F5BBDDFB2119327C28FF57D6C2 /* TOCropViewController-dummy.m in Sources */, + 9BDBE7385DB0B6A0A269E930A2C556B9 /* TOCropViewController.m in Sources */, + 3C83156340908AE021D78025A224F60F /* TOCropViewControllerTransitioning.m in Sources */, + 5F2465EFA6D440FD6F5F92CEA993D3B8 /* UIImage+CropRotate.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 1032C4E6F76D4093BC94F2F9E3E7861F /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 7BA571FEE065F988267066C5A0D1CAFC /* Pods-iLink-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 1EDF44037BE778C94EDF889F89F49609 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + A271C90400EB2C9F1039C14A456AFD33 /* RCTBlobCollector.mm in Sources */, + 2D9EC0CCC719CC65EBACF49A539C67A8 /* RCTBlobManager.mm in Sources */, + 4EA3540D5AC4F835297D30198A65439F /* RCTFileReaderModule.m in Sources */, + 61AC8E509B1535329157942F3B2B6D2A /* React-RCTBlob-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 2CA9398D3CFD5D9E1155F644612126A4 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + EFA86D317B8E9D6E0B3B7BC5EE2ACE7C /* RCTAdditionAnimatedNode.m in Sources */, + 43777F3CAB3273E980FBABE81B5122E3 /* RCTAnimatedNode.m in Sources */, + 49BDA453E565706B287358786376F73F /* RCTAnimationUtils.m in Sources */, + A92D136E23914B18BDE9490C618768AF /* RCTDecayAnimation.m in Sources */, + B7F73E1E60AAEFF30072E3878C79D660 /* RCTDiffClampAnimatedNode.m in Sources */, + E84A1C686CF574A665359606463DE64B /* RCTDivisionAnimatedNode.m in Sources */, + 8B90B2FF0DB0345B5FAC294D97832928 /* RCTEventAnimation.m in Sources */, + CB3D2E4987AEAC3E17C9AA426FE94B6E /* RCTFrameAnimation.m in Sources */, + 9C6AA0D0FAE8E02BFD0A7A3672941430 /* RCTInterpolationAnimatedNode.m in Sources */, + BB4158233BF459088F29EB3D328187F8 /* RCTModuloAnimatedNode.m in Sources */, + 572A084B13BC23F36DA2E450BC5E2974 /* RCTMultiplicationAnimatedNode.m in Sources */, + EF9B33792CA8272ABC1B1E570607AA0A /* RCTNativeAnimatedModule.m in Sources */, + 2C1C676230C55E34089CA2558B5555E1 /* RCTNativeAnimatedNodesManager.m in Sources */, + C5DB16C5E5158C504AC371333B5A2D59 /* RCTPropsAnimatedNode.m in Sources */, + A8C591DCACDF069A6F070F6CB94A411D /* RCTSpringAnimation.m in Sources */, + FA9C89225F2FDF603D29EB2B901FA966 /* RCTStyleAnimatedNode.m in Sources */, + 42FC76FF59833CB67FC4F02D50BF1572 /* RCTSubtractionAnimatedNode.m in Sources */, + BC9EC6EC68B63137FDB39A6D5B8FF9E1 /* RCTTrackingAnimatedNode.m in Sources */, + 57C24C091C62167CB7888E87890D539D /* RCTTransformAnimatedNode.m in Sources */, + 9C61049BF73C44820F3E34F230D0DCF4 /* RCTValueAnimatedNode.m in Sources */, + 1736D508FE61BF5099325C9E723FFF86 /* React-RCTAnimation-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 2CEB03AC88B8BADF8174D5043E5508C4 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + AAE9F66C879DF8C2F382527027A1B852 /* InspectorInterfaces.cpp in Sources */, + 87D3B512F6D1C4DC8D19EAA3497968BD /* React-jsinspector-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 36650015300A0A8E4A40CC425CC2ACDE /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 2CC62030233DE26F43989B59C702920E /* CxxNativeModule.cpp in Sources */, + 536D8E16E55292DDD505560612624EC4 /* Instance.cpp in Sources */, + 431CCDC9AF742913020F07CA95CE58C9 /* JSBigString.cpp in Sources */, + 00B84BD69903B45D9441144508250458 /* JSBundleType.cpp in Sources */, + B911BC824C598D596824D47E4D24390D /* JSDeltaBundleClient.cpp in Sources */, + BFCE1C9B38037966DF389C24174136C8 /* JSExecutor.cpp in Sources */, + CC101EB3DC6CB7C3863BE137A4E34BA4 /* JSIndexedRAMBundle.cpp in Sources */, + F0C0C5FFABA3A68B512FA47B7A2B5978 /* MethodCall.cpp in Sources */, + 77FE7C39E622A9FA27C98B80B135D5CA /* ModuleRegistry.cpp in Sources */, + 84E105D17D53457E9351F14C1FF4C4EC /* NativeToJsBridge.cpp in Sources */, + E7491F1A7A1C4A5EC51A0FC3BF128C33 /* RAMBundleRegistry.cpp in Sources */, + B3BE8D7DC6AF57EDD4B8DEF8198D1909 /* React-cxxreact-dummy.m in Sources */, + B03B3C5D7A84FB9F93E8F1A399120586 /* ReactMarker.cpp in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 379FCD62B60A391C09643BA70166D263 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 0161DF63262B2BD212211B0075E4EF29 /* RCTActionSheetManager.m in Sources */, + CA8E48891C4D5E2AB108C1DFCB688396 /* React-RCTActionSheet-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 49706B194B16793BC6A37E8372EBF038 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + C067EB9CDC3F1F037AB1C9ADCB170E48 /* SajjadBlurOverlay-dummy.m in Sources */, + 2E8EB8C962F26B268CA2F20D695516A6 /* SajjadBlurOverlay.m in Sources */, + CD04B21C36E9E5975F91D372FC5A0DB1 /* SajjadBlurOverlayManager.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 4AC5C9DE179B356DE9F39A297222A56D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 5E259CDDE9591A057363737A85D87E3F /* event.cpp in Sources */, + EB7B235C58C27965FCDC374401FB1C77 /* experiments.cpp in Sources */, + 4216248426F061B5E2DFC14038CDB121 /* log.cpp in Sources */, + 712837EEAED57EC9354401C1DFA20D0F /* Utils.cpp in Sources */, + 55727CCF374660C4D6F8CFE6F7DB7577 /* YGConfig.cpp in Sources */, + 6CB65C909A8466AC6A1981A9315804A9 /* YGEnums.cpp in Sources */, + B78105F077E3F29719D6A0D22665068E /* YGLayout.cpp in Sources */, + 6A23511D8F830AE8508C43FA770DACDB /* YGNode.cpp in Sources */, + D84B4456D9193C76DC30443814358BB6 /* YGNodePrint.cpp in Sources */, + 6CC03855E1A45CE23F587F48B156F9DE /* YGStyle.cpp in Sources */, + 78E082350F92A2AF5078298218209744 /* YGValue.cpp in Sources */, + E1C0185107923EB18B42D27A2C49ECB9 /* Yoga-dummy.m in Sources */, + D5FE477E781A4FA34879999350751C63 /* Yoga.cpp in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 4D0684890A8E292A6FB50942EA8277C5 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + D2C0288156214FF6AB21BB681AF9BC83 /* async_open_task.cpp in Sources */, + 159DA6FFBF4018B27C53D705F38C4C93 /* base64.cpp in Sources */, + 3610B08782547540B94A57DFA5F9E3C5 /* binding_callback_thread_observer.cpp in Sources */, + 41F4AF06A0B333A7E39FA0EFB9BBC834 /* collection_change_builder.cpp in Sources */, + F629D2119784777989C5996C579D9FEA /* collection_notifications.cpp in Sources */, + D2FFAE9C41E61FD642180ABE39DB9172 /* collection_notifier.cpp in Sources */, + 7FCFE8E3357E074D73271AD92A374E9A /* external_commit_helper.cpp in Sources */, + DC3A13E1F76F75DB53ED941952CF6750 /* index_set.cpp in Sources */, + 72C52C415F5A46EE60CA8FEAE9B29FB4 /* js_realm.cpp in Sources */, + 3B9158B5F3D195E767277CDF2093E6E4 /* jsc_init.cpp in Sources */, + FA2A89EB79BCDD16506C364E65E5FC07 /* jsc_value.cpp in Sources */, + A1D398DB5FA830D3DAD59506FBFA44EB /* keychain_helper.cpp in Sources */, + A3FFFA4259E716DCD5EA57B1F8392C97 /* list.cpp in Sources */, + 8C237D0D5F205A1125DF514476172B43 /* list_notifier.cpp in Sources */, + B9F63C3EFC0494148091EACE963FAAA0 /* network_reachability_observer.cpp in Sources */, + C7C3C7F89F4844F54CF56E81224D3C97 /* object.cpp in Sources */, + 0AA17ED672487BEA9247D0360D6F732D /* object_notifier.cpp in Sources */, + 7D7D720AA13085F17F5E1350A6D77DBC /* object_schema.cpp in Sources */, + FBDC7BE8C1503A3071C3D091CA936188 /* object_store.cpp in Sources */, + AB8A7608B11C7F5BA543D7C5EA330137 /* partial_sync.cpp in Sources */, + B99ECD56ACEEFD1DFEFD873F7E9C10C2 /* placeholder.cpp in Sources */, + 45341D1425A67C20197BF6DE6A5E5529 /* platform.mm in Sources */, + 4679583C040C1A59AE7723C00868960C /* primitive_list_notifier.cpp in Sources */, + CF78A2CC53F6039932999661138D3AE9 /* realm_coordinator.cpp in Sources */, + 9BC1B92BAAAC01061963515690049076 /* RealmAnalytics.mm in Sources */, + 77B36FBC8B7C3FA64158F93743CCDE44 /* RealmJS-dummy.m in Sources */, + B0F5832DCA7955F8A9D72D4E9B48EAE5 /* RealmReact.mm in Sources */, + CA9124D2F2728E7E82081ADF027AF23D /* results.cpp in Sources */, + 1AABD3B8DBE1DD6E28311BC99D640AF2 /* results_notifier.cpp in Sources */, + 7BF60ABA999410AD652B43A80C854376 /* rpc.cpp in Sources */, + 64A199578411832FAEAB120F05947ED7 /* schema.cpp in Sources */, + F92BF8DD334A13E0BF9127172AB7903F /* shared_realm.cpp in Sources */, + CABDE3A5C66FA7C398D297913A865F8D /* sync_config.cpp in Sources */, + CB52A105BF83C44D9458930ECCB1D753 /* sync_file.cpp in Sources */, + 6A6207E91468EBFFEBEB65C1CDD29852 /* sync_manager.cpp in Sources */, + 605266B8545D0C3087BBC79D2C01F843 /* sync_metadata.cpp in Sources */, + D5671401719C6B7B15571EF17C52A362 /* sync_permission.cpp in Sources */, + 662A24967CCC2F64488A95339480C751 /* sync_session.cpp in Sources */, + A6C69420A901AE2B73CAF3A88C3C501C /* sync_user.cpp in Sources */, + 3241AF86B8AFFDDC36898938071B7743 /* system_configuration.cpp in Sources */, + 7CFBF7FA5583C35CF85CB39EB07AEE7C /* thread_safe_reference.cpp in Sources */, + 80A8D7F03AF2FE562587749A24546283 /* transact_log_handler.cpp in Sources */, + CAE23189198E57894E54A51E318FCF33 /* uuid.cpp in Sources */, + C05702DB7845C9A250B693D3A09C4D0F /* weak_realm_notifier.cpp in Sources */, + FE51DF12544DD60D0132080A5ADDCF5C /* work_queue.cpp in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 53D0AA929788528195250F49DC19CE06 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BD44B37E533783F5267B0BE6D8FE89E3 /* react-native-geolocation-dummy.m in Sources */, + 2FD08D5A8447E9362B8981992B1869E4 /* RNCGeolocation.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 53F0AAB0200401FF253DB58644C45CC8 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 64205A54D1612CBFD3F5DCA8F10DF92F /* RCTConvertHelpers.mm in Sources */, + 15682CB80270FC615E3D1401F03F24A9 /* RCTTypedModuleConstants.mm in Sources */, + C60A2BC67F2472D16766D6E9F9FBCA33 /* RCTTypeSafety-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 5AB7759E96E70C9A91FB3422BE09DEB5 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 2730FE054CC61C90703D708DF8B87F6A /* RNScreens-dummy.m in Sources */, + D3EE36FD52C27DA3FC46CDC4A1007EE2 /* RNSScreen.m in Sources */, + 5B17C07022BB8181DA586246F4E32483 /* RNSScreenContainer.m in Sources */, + 7FB3CBE5BFDA11CB860B075A35EE3BFE /* RNSScreenStack.m in Sources */, + 11231378DFABBFD74020590AA4BFDFDF /* RNSScreenStackHeaderConfig.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 5BD1E3CD676E4532BCEEA2571D638AC3 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + B7263CB61476BD1EAEAF36AF1714C564 /* RCTConvert+RNSVG.m in Sources */, + 9B98C1CDCCABD5193301F47BF74E2892 /* RNSVG-dummy.m in Sources */, + 1354D15C1FC6117BD4A53FF27B047C70 /* RNSVGBezierElement.m in Sources */, + 7D03415D808C96B0B573588236FAF82C /* RNSVGBrush.m in Sources */, + 1AAA75916D3BF8CA7799A694646A9311 /* RNSVGCircle.m in Sources */, + 50A907872CE8F918CB227FB5B93D8A42 /* RNSVGCircleManager.m in Sources */, + 05FC9EE588B6934A3060A79A50A4CEE0 /* RNSVGClipPath.m in Sources */, + 0ED314D24D548E6E53B3C40F5DD4DCA4 /* RNSVGClipPathManager.m in Sources */, + B369C4FDC4809E059B6C1BEA7780E388 /* RNSVGContextBrush.m in Sources */, + 1DAB8167D913DC85404D858A4F25EE64 /* RNSVGDefs.m in Sources */, + 12C514F998B809ADAD23D288CFA458FB /* RNSVGDefsManager.m in Sources */, + 799439F24289674BA8E2D4C390805265 /* RNSVGEllipse.m in Sources */, + 54917B64BC55229C4819E4038B6A5E80 /* RNSVGEllipseManager.m in Sources */, + 91493AC02C8953D8408872CBB6BA439B /* RNSVGFontData.m in Sources */, + D5272A63D0667E8273E13A23551D8055 /* RNSVGGlyphContext.m in Sources */, + F95B02383551CA8A466FFAB124AFE178 /* RNSVGGroup.m in Sources */, + 1673CC019CC70AED81B28443A2429C3C /* RNSVGGroupManager.m in Sources */, + 62BF9E9887877E13DFFDF0E32EA9CDE8 /* RNSVGImage.m in Sources */, + BDD44C2900D248C5FA5767BA16EADBD0 /* RNSVGImageManager.m in Sources */, + E7C3174563CD0FE2162C8289968A4D0B /* RNSVGLength.m in Sources */, + A6DA28952EC55438601D6A05C4DEEAD2 /* RNSVGLine.m in Sources */, + 483FBD16FB4C85CD548C9BDD0B91293E /* RNSVGLinearGradient.m in Sources */, + 50BFF1999FC222E5F79EAA2259DF8DD3 /* RNSVGLinearGradientManager.m in Sources */, + 1857582C04C213B236A62DA613F86A53 /* RNSVGLineManager.m in Sources */, + FFEF593AA8F8A9F15DAAAFD8E270FA2C /* RNSVGMarker.m in Sources */, + AB05B7162E7B6240D5C124010B49ECA0 /* RNSVGMarkerManager.m in Sources */, + 65C16B0658D0CB2DC17DBAF274448957 /* RNSVGMarkerPosition.m in Sources */, + B4A9D0A1A13DA07A7238C8840FF9C35E /* RNSVGMask.m in Sources */, + 91173799F24BDD4D33BAEABFEDA59AA4 /* RNSVGMaskManager.m in Sources */, + A104B4F5E0BB3A749A7756144DC5BB36 /* RNSVGNode.m in Sources */, + D606D2E9A3D60258610851FE05B88DA6 /* RNSVGNodeManager.m in Sources */, + B48A6B39A17C81A38FD8A47CF036CB1F /* RNSVGPainter.m in Sources */, + 95A0F88AB8A541BB726C77184356394C /* RNSVGPainterBrush.m in Sources */, + E04B8929CBDCF197B759A6841551F027 /* RNSVGPath.m in Sources */, + 1A752D5DC828B4A4733FB3658269A066 /* RNSVGPathManager.m in Sources */, + 8D68774FBDE6495205492A9BFF4F31B8 /* RNSVGPathMeasure.m in Sources */, + C908FAE0A8544FAAE5EB6D635580E31E /* RNSVGPathParser.m in Sources */, + 2C341E7F4BAC273465985BD7AAA7B521 /* RNSVGPattern.m in Sources */, + BD93760D3BD2037B05E8B173CA07EB2C /* RNSVGPatternManager.m in Sources */, + C9C48F6BFB818AEAB588D3BA869F1709 /* RNSVGPropHelper.m in Sources */, + 72D538F7B52A947B427C98282D5B29D8 /* RNSVGRadialGradient.m in Sources */, + 692DA7FF43521D60A5C60A37A7DB6067 /* RNSVGRadialGradientManager.m in Sources */, + 0DAADC5B8A985714B4808C746FC2EFC1 /* RNSVGRect.m in Sources */, + 706D10A667635D224C4A3E675C0E275A /* RNSVGRectManager.m in Sources */, + CEB90421410CD06763E79D9F462FFEB4 /* RNSVGRenderable.m in Sources */, + 4010C262DE8DC7D0AD5A991026C0384F /* RNSVGRenderableManager.m in Sources */, + 0198BBEDAEE83CB9F39C8B270B33FD9C /* RNSVGSolidColorBrush.m in Sources */, + 2B1BB4DF4BB6D933A491C43D688E169A /* RNSVGSvgView.m in Sources */, + EF1CF812E592E446DB1A2FA84A19193E /* RNSVGSvgViewManager.m in Sources */, + 6024659C581CDFD0B8DDC1EF71232583 /* RNSVGSymbol.m in Sources */, + 65B1DD1C8D79B8EFDFB9910176BB3134 /* RNSVGSymbolManager.m in Sources */, + C1E58D6A03F4BDF076768F4A19C456F6 /* RNSVGText.m in Sources */, + 9F89C488B0FD059D234A89E696D412DA /* RNSVGTextManager.m in Sources */, + 0C44EB8E8974010F942E068911E48E3A /* RNSVGTextPath.m in Sources */, + E27F464ABBD6BA60FA5B88D07E67C18C /* RNSVGTextPathManager.m in Sources */, + 33DBA11181CB8DC8575AD5210BC10722 /* RNSVGTextProperties.m in Sources */, + F365CF05E614D711578FC5B66F16B116 /* RNSVGTSpan.m in Sources */, + 15DEA9A0FBC9EDDD53F00E2920FC2CA9 /* RNSVGTSpanManager.m in Sources */, + 67556237BA5413DBE48EC5D5D6A109FA /* RNSVGUse.m in Sources */, + 0B72EB085C83A757C1565DE05396002D /* RNSVGUseManager.m in Sources */, + 14265433414730CD24FF14874EA9C57D /* RNSVGViewBox.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 6168C6825EB06086FA7980C4FE481DB4 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 1FC04C1F53BE2B6661F299341EB72A95 /* FBReactNativeSpec-dummy.m in Sources */, + ADCA50B2FB704622F9056804BC882071 /* FBReactNativeSpec-generated.mm in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 6851EEFF54F222466C1EE3F5BFC68713 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 91E6829A304C3CA030B280767804FE38 /* AnimationViewManagerModule.swift in Sources */, + 79A6BE5FB742F2BC094FCC29C3CED60D /* ContainerView.swift in Sources */, + 7D4D54DC908104071A0FC3740CF800B7 /* lottie-react-native-dummy.m in Sources */, + B1E6D4DCA3643B703EEE494E3350480B /* LRNAnimationViewManagerObjC.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 69F62E85533AFE41D4C3A301EBB25E53 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + C8578EB10533B1361D816835BFF28569 /* JSCRuntime.cpp in Sources */, + C623B9E0185A59751D678DC304EBF2D6 /* jsi.cpp in Sources */, + 430E076148163E5E139CD7C5B585CA61 /* JSIDynamic.cpp in Sources */, + 7803C410C6C87149466251104DE3F3EE /* jsilib-posix.cpp in Sources */, + D3CA337E81521E87C04569CAD2A96FFD /* jsilib-windows.cpp in Sources */, + C8A061125336EAC361084A7EBD26F260 /* React-jsi-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 6A24F06D5EBC8986C4620E00EB78B173 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 20435AF92E7E51EEF1761B4462176979 /* RNI18n-dummy.m in Sources */, + 46F03321395E1288E75CC0CC408BBECA /* RNI18n.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 6A7F154C5F77D371B5FCE577349612BB /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + F90176BA829F5FF9E203B2A653503636 /* RCTLinkingManager.m in Sources */, + BCC489F2DE6AC985A755992D45A0AFBA /* React-RCTLinking-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 6F626A2F637D095B85D745C23CE1CBF4 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + CF19015274453911DC762B0B2596A1FF /* AIRMap.m in Sources */, + 13346E9AD1A7FD88778CAC3B267B6DC7 /* AIRMapCallout.m in Sources */, + E52EEF0839014D2EA233A13143C22B61 /* AIRMapCalloutManager.m in Sources */, + CDC3FAEC1D58F1186D503E1832B768BC /* AIRMapCalloutSubview.m in Sources */, + 4C2D3BC12F1F3E6E64FD86C4B600C6F2 /* AIRMapCalloutSubviewManager.m in Sources */, + 6F1001BA40B49905C0F794F038511F89 /* AIRMapCircle.m in Sources */, + FBFE0093DDB3ED3A392B377E9E93342A /* AIRMapCircleManager.m in Sources */, + 4448762F6D25AA2A3A4B88076C2C653C /* AIRMapCoordinate.m in Sources */, + A1D22EA3A340980E9A0FB5FA8ABF7397 /* AIRMapLocalTile.m in Sources */, + 5FB83EF7A53F61A199E3373D9E693181 /* AIRMapLocalTileManager.m in Sources */, + ED40726BE95163F73C9FA505E8EAE44D /* AIRMapLocalTileOverlay.m in Sources */, + 3B2B0F6BAC69C2632F9DECBAF5DCE963 /* AIRMapManager.m in Sources */, + 0887E748006A6008A210D5922CF29799 /* AIRMapMarker.m in Sources */, + 8210BB0DEB1B9FBBFAA138F807F666CB /* AIRMapMarkerManager.m in Sources */, + D002FD4969347C6EF58E26EB494259DE /* AIRMapOverlay.m in Sources */, + 52D232160F7F72C32741176F7E26AFFE /* AIRMapOverlayManager.m in Sources */, + 13D01A42A7ED25E95535A45E7C2A6474 /* AIRMapOverlayRenderer.m in Sources */, + 9796F53F27559D66FC385362F5719B9C /* AIRMapPolygon.m in Sources */, + B2503A378FF86C6013ADCEEC07735489 /* AIRMapPolygonManager.m in Sources */, + B5CE8EA3F835FF2D23F52E3457D2EEFB /* AIRMapPolyline.m in Sources */, + 69CD0B0729685F739704BC9420C20C0B /* AIRMapPolylineManager.m in Sources */, + CCFBCD123DD5F7E48CC5F41584920FFD /* AIRMapPolylineRenderer.m in Sources */, + 182EA5492F1CC2015C6BE060F77F936C /* AIRMapUrlTile.m in Sources */, + 6B28E38A8ED2A9E9E416B11E43A71C37 /* AIRMapUrlTileManager.m in Sources */, + 1A21736B35D16EC4B46F659FC3D5A873 /* AIRMapWMSTile.m in Sources */, + 9102BEAD93DA8FCF217F6E9FE7A5A225 /* AIRMapWMSTileManager.m in Sources */, + 7C56B800BA3FBB973E6DE897A3604A05 /* AIRWeakMapReference.m in Sources */, + A704C47441862802089DB332C0196CE3 /* AIRWeakTimerReference.m in Sources */, + 44F979ECB8D1C1536E559BEB8FF1585E /* RCTConvert+AirMap.m in Sources */, + B3D3202489EDDA7326E158B1EF1F4EB2 /* react-native-maps-dummy.m in Sources */, + 81ED1A0DE9794352BE81C7DDC7E6C081 /* SMCalloutView.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 70554A45BF206DE1F57A37A5CD2758A0 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + B5111820E4A7D7F270FBD9675B09A2E6 /* demangle.cc in Sources */, + 0BD346190BDD1F8961C6EAA4FE0E07BF /* glog-dummy.m in Sources */, + 1C6F998844FD472C99EF521824A80BB1 /* logging.cc in Sources */, + 1D9902E50C99AF876845734FFBCBDD00 /* raw_logging.cc in Sources */, + 30F86DFAC80B2E449CB5ADB04A678508 /* signalhandler.cc in Sources */, + 03FCDA646632FB16A63B53FE2E337BD2 /* symbolize.cc in Sources */, + 2CE7959C119ABFBC04531C47F7A067F7 /* utilities.cc in Sources */, + 5D4B833DF88EF138F192AF76D3584F8E /* vlog_is_on.cc in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 74718F4FF5C9A5E90BC8A025F3DA611E /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 51121C31AB85CCAB4974972FF96E37F5 /* RCTSettingsManager.m in Sources */, + 04732109EF01BC61F9ADF7182428F901 /* React-RCTSettings-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 7AF6003C30CC708906E878079160A53A /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 7A26D45DC2CB40C9C30F1284CE29EDE0 /* RCTDataRequestHandler.m in Sources */, + F7023D0E59F8B127BB09AEDFB624E3AC /* RCTFileRequestHandler.m in Sources */, + 58941B0DA08DD89E12754C8082DFE68F /* RCTHTTPRequestHandler.mm in Sources */, + E0908D3316D8B4AEC3549157C7CE6A8C /* RCTNetInfo.m in Sources */, + 9A48724301C8934B166BA0C9F193625C /* RCTNetworking.mm in Sources */, + 14C132073944D3E3B2EBD5D7930F9D2F /* RCTNetworkTask.m in Sources */, + BC194E12714CEA7F4A1061CB7FB79170 /* React-RCTNetwork-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 7C5792431299B71F0EA7E02542F0BFB4 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 34C855B4D2D833A164F66599252142EE /* Compression.m in Sources */, + AA725C371ED2465746D713B036D28AF2 /* ImageCropPicker.m in Sources */, + D9E6889BE1390C1ADDD017DF60828CAA /* QBAlbumCell.m in Sources */, + AB18A726571872F0C8239763CC6D920A /* QBAlbumsViewController.m in Sources */, + 676BE96EA626EE4D9F24B503B3F59F55 /* QBAssetCell.m in Sources */, + 4CD3E5D6975449E11EA7818BDBB8AB80 /* QBAssetsViewController.m in Sources */, + FB030E0B40723163A8A5CC37778237DB /* QBCheckmarkView.m in Sources */, + D0436E60D6C2DDACADBBBDE556416C60 /* QBImagePickerController.m in Sources */, + 2DB236D8916D7BACECF324AF5165D4A6 /* QBSlomoIconView.m in Sources */, + 9004BD3B2B71C20129D136519D9E375D /* QBVideoIconView.m in Sources */, + 9CCB4E32C86B5F29292A363E0F3D1C0B /* QBVideoIndicatorView.m in Sources */, + E95D6946EAAC0D88A62A9C4EF71E1A8A /* RNImageCropPicker-dummy.m in Sources */, + 441807BF25D44D9142F7835CCEF37D5E /* UIImage+Extension.m in Sources */, + 1C26515EED65B95C1190B35FDAB7E02B /* UIImage+Resize.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 8589426001230EA724B3BAB9DABCFBD6 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + E16689689130A68B904300A8943E07D0 /* RCTOneSignal.m in Sources */, + 9FD435B36785D48F7314E51F39007208 /* RCTOneSignalEventEmitter.m in Sources */, + A87F0117063DFC52869F77DA474CF018 /* RCTOneSignalExtensionService.m in Sources */, + 818FB001A109392F636B380EBDAE678F /* react-native-onesignal-dummy.m in Sources */, + D44453FA55CDFFADA654945E1C47BF7F /* UIApplication+RCTOnesignal.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 869D89B0EE364B3D6DABF4DE9B0E4B56 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 3B59B65FD92D1A2FB6B47C2AE2245B89 /* RNDateTimePicker-dummy.m in Sources */, + FF4BE5817399602319491EBE094444E0 /* RNDateTimePicker.m in Sources */, + BA26D6016CA442A7E4F04E34CFBBF344 /* RNDateTimePickerManager.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 8C337B229DAB50A5AB190C899498EC59 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + B3C49185DFF1A2BF03B5001DA0C9AFE8 /* RCTConvert+REATransition.m in Sources */, + 462EFC76DDFACB52AE29853A433AD31E /* REAAllTransitions.m in Sources */, + 15E375B4C931B7B9B3E2C5A910A5E16E /* REAAlwaysNode.m in Sources */, + 4B9C331F161E29018F159EE864984322 /* REABezierNode.m in Sources */, + 2A919EFF8EBEA3CFCB5CF6591695FC12 /* REABlockNode.m in Sources */, + 865599F5D0CC5A2BA4978A1174918AAC /* REACallFuncNode.m in Sources */, + 8C73A934CC78461BAFBB2E810CE1B7E9 /* REAClockNodes.m in Sources */, + D8DECC073C0E4D0A80BE2721F312321F /* REAConcatNode.m in Sources */, + 8488F39C3DBC4D86F17AFCDF99131D38 /* REACondNode.m in Sources */, + 3711F3B9F8FA71A35A90E24533842464 /* READebugNode.m in Sources */, + 86E6F34B6474448BD0E1DE815E97B62D /* REAEventNode.m in Sources */, + 9AD63B91F8CA887EBEEC87C715E78F2A /* REAFunctionNode.m in Sources */, + 8F936C5DC9D12A75C45CB5ACB35FCEFB /* REAJSCallNode.m in Sources */, + 515F31B013B56495C52F4E2FD50CD0E5 /* REAModule.m in Sources */, + E3E5B7280ED60437BA221A78A51FA45C /* REANode.m in Sources */, + 3249EB5C149F43C94F0D927DFE42A9F7 /* REANodesManager.m in Sources */, + 654EFF6E917B166C7EF96C6A5975E467 /* REAOperatorNode.m in Sources */, + 623F126EB12F53223B1C1549850FFEB9 /* REAParamNode.m in Sources */, + D5E703C39DFBB4E6295D0630B7D1A003 /* REAPropsNode.m in Sources */, + 832F92E35413ABDCFC5F62EF0229EAB1 /* REASetNode.m in Sources */, + AAD5747D04F295042B4A16EC090EEB87 /* REAStyleNode.m in Sources */, + 5623D1243BDAD5F80DACBA43CE532047 /* REATransformNode.m in Sources */, + 90E1538C02B2F44E1B9C1992353A3723 /* REATransition.m in Sources */, + 5A5EB816D7A257E837F836D8D39183CB /* REATransitionAnimation.m in Sources */, + 7DEC8C3567BAD3BFD14CC7B54F948349 /* REATransitionManager.m in Sources */, + ADC268348F20A3C8EA37BF2DDDDD01F0 /* REATransitionValues.m in Sources */, + 7713954FD6DA5C2F4525813C30C7F4F0 /* REAValueNode.m in Sources */, + 7B066B6636D7210ED059D5831E9B83F9 /* RNReanimated-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 8F937ACD555A5FA41F9EC92AC7A3B21D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + AFD4ECD6CAB82158DDBB80E998D7B41F /* RCTVibration.m in Sources */, + B75E4531A1C620C508431292C46F01B0 /* React-RCTVibration-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + A44BF46EE44EBBFC31B15A3658FA7E51 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + F29EB2F7D5DFF84B2E8269DD077EFDBE /* Pods-iLinkTests-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + AA327C983A55F689D0D97AB809AFBD7E /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + F5FF727CEBFCD171FB5C7A22C2DF958E /* Assume.cpp in Sources */, + 9552D1312FB67283888213F0A7679AAE /* ColdClass.cpp in Sources */, + F4418EB890BE12C2598AF4E27727FF4E /* Conv.cpp in Sources */, + BA4A95FB35181A19DEB6898350C81954 /* Demangle.cpp in Sources */, + 14DAD3AFE4891F611FEB4FE7E90E2097 /* Demangle.cpp in Sources */, + EBB98C58D2D5B65E374C5DA08045F74C /* dynamic.cpp in Sources */, + 57733D2BF76DB98CC290A213B1D49A78 /* F14Table.cpp in Sources */, + C2870581B550E2742404E32491AA4A85 /* Folly-dummy.m in Sources */, + ADC0C8B8766E84744522223BE92625DB /* Format.cpp in Sources */, + B9A7BF2F9A7BA10679FB551834BFBFAE /* json.cpp in Sources */, + 9EEA27AA9F2251CA79DCC4F0F367EA57 /* json_pointer.cpp in Sources */, + EBE1F92DFD666E92F3D82FF96DA4603E /* MallocImpl.cpp in Sources */, + A4C304B823327D620F1CBAAAEAE5CB49 /* ScopeGuard.cpp in Sources */, + 57CF68F6934386B71DE440EAA04743B9 /* SpookyHashV2.cpp in Sources */, + 6D45DE2783D1AE2E9CC5BFD8BF8AB70B /* String.cpp in Sources */, + 21872A5B6DD2D60942FF2E8AD0DB7423 /* Unicode.cpp in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + AEE6AECF6218E98538055E5655ADC710 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + B29F6B4D19279FD6E2ACC1B34B72ABE7 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + DA288CD5E0C0355A9CA34658690B5C47 /* RNFlingHandler.m in Sources */, + A1DB03CEB3C4AE3E9C151975F485EDA8 /* RNForceTouchHandler.m in Sources */, + 222D8C687FAACBAD9D6C610D214B13EC /* RNGestureHandler-dummy.m in Sources */, + 3D561E4644A87218F172CF1C567BA113 /* RNGestureHandler.m in Sources */, + 5A741897B7B13B1BA7152F1C1F9C59EC /* RNGestureHandlerButton.m in Sources */, + 431B6B3850AF41E813C0D17D4F4AF54C /* RNGestureHandlerEvents.m in Sources */, + BD82D08CC2D86E9F9637AC1C567F3796 /* RNGestureHandlerManager.m in Sources */, + 923290319C3F0C301063EAF1F3FA91AB /* RNGestureHandlerModule.m in Sources */, + 0AB6392EFBC2634DD11DF56604E9212C /* RNGestureHandlerRegistry.m in Sources */, + BC2B2A565593B123483527624459A056 /* RNLongPressHandler.m in Sources */, + 077890674FFB4864EC355AB662C5502A /* RNNativeViewHandler.m in Sources */, + E78D398DE9276B2D1131268BFDFE182B /* RNPanHandler.m in Sources */, + 8C4BE58C7E4081FBDCE00BB59CDD45C8 /* RNPinchHandler.m in Sources */, + 5EF041DD75E13610D0618BBDF0481D9C /* RNRootViewGestureRecognizer.m in Sources */, + DAA5D42F228D8B9CAD984D3158DC5157 /* RNRotationHandler.m in Sources */, + DA617A49FEF901D70D5866081CDE3759 /* RNTapHandler.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BA53CF20E8BC3196B2B91A32ADDD841C /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 558AE6E61D14E4124B2C773CF1739911 /* JSCExecutorFactory.mm in Sources */, + E792909E4A2A1B233B36BAA420ED9F27 /* NSDataBigString.mm in Sources */, + ACD515567E9E029235615CE730D72690 /* RCTAccessibilityManager.m in Sources */, + 39469904CC7C2FA366E317117F492C3B /* RCTActivityIndicatorView.m in Sources */, + FE7C9F57D7543ED66FB6277018A8B366 /* RCTActivityIndicatorViewManager.m in Sources */, + 079BDF9DF70D6EE92F6071B546CC4DCA /* RCTAlertManager.m in Sources */, + 3EB3E421BA36C4832D89F63F387E050D /* RCTAppState.m in Sources */, + 295153891340AB4FAAFE8A213AA39CEC /* RCTAssert.m in Sources */, + 396D69BEB58E16A606A6D644CDA5E435 /* RCTAsyncLocalStorage.m in Sources */, + ADF52818051926210B3C839649509727 /* RCTBorderDrawing.m in Sources */, + 700426AFB4ACD60D7187459F1C0085BA /* RCTBridge.m in Sources */, + 8B5FAD758214D6B87734C233D62A071B /* RCTBundleURLProvider.m in Sources */, + 17AAD15473FFD31C80322EB7A35B0BA1 /* RCTClipboard.m in Sources */, + 91A1D7C1E24AF7EF18857A82B0FB133E /* RCTComponentData.m in Sources */, + 5A6D1E375107B57FB17F4A5527E9EC20 /* RCTComponentEvent.m in Sources */, + 46F004413CEB1F46D485937814B976D7 /* RCTConvert+CoreLocation.m in Sources */, + 75009382A38188175A5B3B162B25631F /* RCTConvert+Transform.m in Sources */, + 7B8D4DD6E122BA1FEA9725CF8A386EC8 /* RCTConvert.m in Sources */, + B5B701409A3AED999A57A98ECCCECF03 /* RCTCxxBridge.mm in Sources */, + 4ECE15172D69F12CD1828356C4D872D3 /* RCTCxxConvert.m in Sources */, + 61A7A105C062D2048EBFC2FBF55E1FC1 /* RCTCxxMethod.mm in Sources */, + 1B7A10E9B93D7421B18C216E78DA88CF /* RCTCxxModule.mm in Sources */, + A43666DEFB06643449ADF9E11A562E81 /* RCTCxxUtils.mm in Sources */, + 71625B6C8096A27693B5DAD747FC02CF /* RCTDatePicker.m in Sources */, + 9DC0A018251CD1CA6E4EA053219FCB6F /* RCTDatePickerManager.m in Sources */, + 96522B2E802E4245FFA70EEFC2ADAE8B /* RCTDeviceInfo.m in Sources */, + AAF5383F6EDB74329DC0681E8341B9EE /* RCTDevLoadingView.m in Sources */, + 22596317988A5B90F3CA014710EECEF2 /* RCTDevMenu.m in Sources */, + 341272D65AEABF1805739D1E359792E5 /* RCTDevSettings.mm in Sources */, + C28C6A343D453D03BBCC0204B9EA9ACE /* RCTDisplayLink.m in Sources */, + 221736C02236656C8C9835ED60454D32 /* RCTErrorInfo.m in Sources */, + 2CFDFCA927ABD42A2BF04F3A47406AFB /* RCTEventDispatcher.m in Sources */, + C696D835F00894C21BCC9800B2615F61 /* RCTEventEmitter.m in Sources */, + 8A791A8485B77F34BE8E38F17527318A /* RCTFollyConvert.mm in Sources */, + 8D35A5BD10075C54D274DBD5A01F04B8 /* RCTFont.mm in Sources */, + 699C625B1E02C49045A4AEBB1BD962EB /* RCTFPSGraph.m in Sources */, + C16DFC423B8D2D74310ED7EF6CA847AC /* RCTFrameUpdate.m in Sources */, + 290833736C6E3C202785744E03023EBA /* RCTI18nManager.m in Sources */, + 928EB8BF9913A8BBDBB8B1124BC7CBDF /* RCTI18nUtil.m in Sources */, + 774DDB16178D55C82830CAF87BCA1B14 /* RCTImageSource.m in Sources */, + 54FE1FB9A4D5FA9AB5F5759800B14437 /* RCTInspector.mm in Sources */, + F5F6D388DFABA42ADC98DFE937FC366A /* RCTInspectorDevServerHelper.mm in Sources */, + 88097B715A634307BCCCA237EE98D136 /* RCTInspectorPackagerConnection.m in Sources */, + C26CD517BE52D0D92401B08CD1CAFD8D /* RCTJavaScriptLoader.mm in Sources */, + 5D917E2BF612E43303D780C243B0FACE /* RCTJSStackFrame.m in Sources */, + 311F14114B661ABCC5B4FAB9D3596749 /* RCTKeyboardObserver.m in Sources */, + 66EDC20575AC9227184DE649A131CD43 /* RCTKeyCommands.m in Sources */, + 3FA4D94F92CFD9D0315FBD54EEDE9877 /* RCTLayout.m in Sources */, + D268B569CE5A6934906EEA08B741FE04 /* RCTLayoutAnimation.m in Sources */, + ECE4FC4F76667DED3A085D8440D38BD6 /* RCTLayoutAnimationGroup.m in Sources */, + A3EFFB9ED9C32CB5F8EEFA08B5A803BD /* RCTLog.mm in Sources */, + 6E617080798C083194846FECB9CD4B2A /* RCTManagedPointer.mm in Sources */, + 0BC1725B1B7919FB2B3CE03B756BAE71 /* RCTMaskedView.m in Sources */, + 81F17913F2DC28E8497AB84FEA97B8C3 /* RCTMaskedViewManager.m in Sources */, + DA2ECFAF51C392FCF0ED63EE0866DF75 /* RCTMessageThread.mm in Sources */, + A9A919BC68783A5EB1A04BDEE8E55E00 /* RCTModalHostView.m in Sources */, + 795E43EEF3DD11FA2AA86A78FA52732B /* RCTModalHostViewController.m in Sources */, + FEEDE54355C854EB50B1A5FBF7A1132F /* RCTModalHostViewManager.m in Sources */, + 943A7CB133EE66EB1E030FB2D48D5284 /* RCTModalManager.m in Sources */, + 766377CC7FB96161842ABB4B9528D7BB /* RCTModuleData.mm in Sources */, + F7F8E08B6ADA4FC657F88F42426CBEF4 /* RCTModuleMethod.mm in Sources */, + F8D588C2703F5D210EEECFD71FFC8D0A /* RCTMultipartDataTask.m in Sources */, + E7DEFED9F626AD23EEE483C9CADFD9DB /* RCTMultipartStreamReader.m in Sources */, + 86A8724216D36740EE84EFA4979763B5 /* RCTNativeModule.mm in Sources */, + 0F0F3EC2B06494E67C1E63FABECA95ED /* RCTObjcExecutor.mm in Sources */, + 234E799C2275A2C45948B43D8FE3C465 /* RCTPackagerClient.m in Sources */, + D133456C21BC05F579EC2AB050B39E25 /* RCTPackagerConnection.mm in Sources */, + 080D954B5EBF8008379A2C5502FB1807 /* RCTParserUtils.m in Sources */, + 13EC343B20EB84E84AE56C3793EFDA86 /* RCTPerfMonitor.m in Sources */, + 10997330E9ABA807B97FF19B1AE88118 /* RCTPerformanceLogger.m in Sources */, + C73CD9F4DFA74F6499C401A100C4D9CC /* RCTPicker.m in Sources */, + B8202169010AAFDBD3CAE02C697655C8 /* RCTPickerManager.m in Sources */, + F0664A004DAF980E54CB0AC82275C45E /* RCTProfile.m in Sources */, + 935BDEB628EB30F223799A71E64306ED /* RCTProfileTrampoline-arm.S in Sources */, + 99911CA928D5A5F448C79EF086D7E6BB /* RCTProfileTrampoline-arm64.S in Sources */, + 455FC76ACBBB2502AD97C2DC795B0964 /* RCTProfileTrampoline-i386.S in Sources */, + E6EF3C50E2B548A471E5DD920DA6E14D /* RCTProfileTrampoline-x86_64.S in Sources */, + E8469F0561D7D095AC8A3BE861F6BA90 /* RCTProgressViewManager.m in Sources */, + D1DF3B07DF4D3D0FBB301E7D9E67268A /* RCTReconnectingWebSocket.m in Sources */, + 1C08B23DD293B5C699B804AE8E549E59 /* RCTRedBox.m in Sources */, + 586BFD7E8F9910131BF4400BCC51C600 /* RCTRedBoxExtraDataViewController.m in Sources */, + 47FFC90308D02AED00B921516D189AF7 /* RCTRefreshControl.m in Sources */, + D9AF11AD68F5A448381F3F16EA45EC66 /* RCTRefreshControlManager.m in Sources */, + 5FBB38BF84F8488A04E82008AE755618 /* RCTReloadCommand.m in Sources */, + E53B87D374DCF0672582DDC39EABCE1E /* RCTRootContentView.m in Sources */, + 9439FA7BC23C9DBC6406B5BEF295508A /* RCTRootShadowView.m in Sources */, + 2B657E77CEDDFEE9BB62E093AB20C808 /* RCTRootView.m in Sources */, + 85393F8B5DCC0074C5080F10912F6F3B /* RCTSafeAreaShadowView.m in Sources */, + 0981837AB3F9AEF056AE5578EC36BBE5 /* RCTSafeAreaView.m in Sources */, + 126E4ED5F9F0FBC07F3E71E11B01C175 /* RCTSafeAreaViewLocalData.m in Sources */, + 067D9292D267AA7CAB1027A40033DF03 /* RCTSafeAreaViewManager.m in Sources */, + 422A738590A9BA61094BBB61C6BEE345 /* RCTScrollContentShadowView.m in Sources */, + 8A573CD2513767DE30403D3AFC28313F /* RCTScrollContentView.m in Sources */, + 2C7380CFDFEB266435643D939D5D0131 /* RCTScrollContentViewManager.m in Sources */, + 4993486277797EC802FA759871023B03 /* RCTScrollView.m in Sources */, + 9D33463A8E2D9021E20D935B5906D0EB /* RCTScrollViewManager.m in Sources */, + 4530BCB23D94C745204A91D36F1C6EA1 /* RCTSegmentedControl.m in Sources */, + DC0645C957C0A0C7A3ECDCAA8236AAD0 /* RCTSegmentedControlManager.m in Sources */, + E80D502CE862398FFD461E1ABC20B1B4 /* RCTShadowView+Internal.m in Sources */, + 0EB4F974851D1F7C202E3756E63EB9B0 /* RCTShadowView+Layout.m in Sources */, + 92C976C2F47C8FBD7D0CDA961F8B0395 /* RCTShadowView.m in Sources */, + 18A07D517FF54DE93E7EF7613F163A45 /* RCTSlider.m in Sources */, + EC03AC64B129ED09841A812ECF193861 /* RCTSliderManager.m in Sources */, + 27DDD9E8BFCA178233B2703632D0D94B /* RCTSourceCode.m in Sources */, + C5185BC6B1C1EC63308D2F3287A9F1CB /* RCTSRWebSocket.m in Sources */, + A8687A28E00EF773BC77C5128BBF99AD /* RCTStatusBarManager.m in Sources */, + DF579891A8AA8CAAD8786AA09CCBC2AB /* RCTSurface.mm in Sources */, + A3053B62C9256849B0ACCB21B6AE5D4C /* RCTSurfaceHostingProxyRootView.mm in Sources */, + C424718412F12A90585E7491CED519E4 /* RCTSurfaceHostingView.mm in Sources */, + C23691E2009781A66823384272135A5D /* RCTSurfacePresenterStub.m in Sources */, + 0BEEB80B58D941A4024FA1E8F73D6822 /* RCTSurfaceRootShadowView.m in Sources */, + 5EE9C2AF94FCC02FD40CE20A07915484 /* RCTSurfaceRootView.mm in Sources */, + 8BF34E2C6C23CCD3A9B7AE54E08616F7 /* RCTSurfaceSizeMeasureMode.mm in Sources */, + 0A387C09B0BAB5FE6A61AEE9D25A5DEA /* RCTSurfaceStage.m in Sources */, + 796D3FBC826F90E59D1341C3482892F8 /* RCTSurfaceView.mm in Sources */, + 60E01AE9622DC47BD119DC212AB386EC /* RCTSwitch.m in Sources */, + 85D8FF0999ED1A4B628CA0510A963D29 /* RCTSwitchManager.m in Sources */, + 53D6F8640DCBE66B7C1E1276E313FC79 /* RCTTiming.m in Sources */, + 45CF3DA5C060DE4A356CD4B577706C16 /* RCTTouchEvent.m in Sources */, + 789DD1A80D4CDACAE762CE1B87C1594D /* RCTTouchHandler.m in Sources */, + FE4FB0028DF36126FD4640F4D1B9880F /* RCTUIManager.m in Sources */, + C5FA43AA1178EA6327E8499AA5AA0E43 /* RCTUIManagerObserverCoordinator.mm in Sources */, + 9E5635587146EECA49B2FF3091C04DDB /* RCTUIManagerUtils.m in Sources */, + F6DD2E8558C3AEEFFE13FF6173829609 /* RCTUIUtils.m in Sources */, + 9DD6CDCD209358FF9AEEFBB28B486587 /* RCTUtils.m in Sources */, + 024A736BD21972FEC121A497F40C5492 /* RCTVersion.m in Sources */, + 05336DAEF4B0FC2932E00773C4AF00FF /* RCTView.m in Sources */, + 4B22D0BFCA80EFE7E1AD8562C4B6133A /* RCTViewManager.m in Sources */, + 77CA1D1B099D089EF4C9795EC365940A /* RCTWeakProxy.m in Sources */, + 5CD6AD56CBCC24B81AE344F5E46EF4BC /* RCTWebSocketExecutor.m in Sources */, + 2764669012172C9251720EB15BAA7B60 /* RCTWebSocketModule.m in Sources */, + 26FF3398836AFEB69EF79BE3FBB65B1E /* RCTWrapperViewController.m in Sources */, + 98FC135B735260B522D037A68E7A4588 /* React-Core-dummy.m in Sources */, + 8E5A014FD670E30AE9E882F928FB81EA /* UIView+React.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEAB54C41F8F6105EB316BFD67DC6A99 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 86FD3C1D726D141D8DE6AC7A179046B6 /* BridgeJSCallInvoker.cpp in Sources */, + BCE4446D186E2876A8CC117E8490E490 /* LongLivedObject.cpp in Sources */, + 71AA7792BA91D58F68ED30347E6E162E /* RCTTurboModule.mm in Sources */, + 4E09AE8AB8EE4A6DD28892B6EDB6732D /* RCTTurboModuleManager.mm in Sources */, + 52BB63AD915BCEAD6F84631D65CA61BD /* ReactCommon-dummy.m in Sources */, + F8BB9632D2D220AFAB4C952714CF001E /* TurboCxxModule.cpp in Sources */, + 853A540B53F035B1662E22D67CF76AEA /* TurboModule.cpp in Sources */, + 83235BB8F78D24C9D5BE5B3F2A5510E4 /* TurboModuleBinding.cpp in Sources */, + BFC7C4BA2092FA2E0BA65AD9564E9A57 /* TurboModuleUtils.cpp in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BF761D63B2249F1DD0FD2CA31304C21E /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + DF2F5DEE75F6FF5686FFCDE079080E91 /* RCTConvert+UIPageViewControllerNavigationOrientation.m in Sources */, + 03CE982EEBBC6990C319C4A6C9C007F7 /* RCTConvert+UIPageViewControllerTransitionStyle.m in Sources */, + 0F90E1CAFC618894190D983ADB17F75E /* react-native-viewpager-dummy.m in Sources */, + AFB7CB828840AAC61C40A74F6F8076F7 /* ReactNativePageView.m in Sources */, + C6EF837E7300E31533CCDBF9F14D6756 /* ReactViewPagerManager.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + C001390E92B70C788B619E4717A18376 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 366D066D34B845E64D65F1491E4EB412 /* NSTextStorage+FontScaling.m in Sources */, + E554303B31E001954F6D0CA1C01F9713 /* RCTBackedTextInputDelegateAdapter.m in Sources */, + 551FAA3D693A1AAF91DDBE1BE0E2AF95 /* RCTBaseTextInputShadowView.m in Sources */, + A959A48E4855E4A6EC35A04BF9275A16 /* RCTBaseTextInputView.m in Sources */, + BEA8C4409C5BDA778A13DA640542191B /* RCTBaseTextInputViewManager.m in Sources */, + C6F4CD52FD0E4FD56FC988D1603914CA /* RCTBaseTextShadowView.m in Sources */, + 1CB57BE4B521E8AA6D6F1B10B04C45E1 /* RCTBaseTextViewManager.m in Sources */, + 7171D1246244705D55947141ADBE1CAB /* RCTConvert+Text.m in Sources */, + EFAA8A89DE36EF8777BCAD126900D5E6 /* RCTInputAccessoryShadowView.m in Sources */, + 8CAD49B3520224E8361041CB5258A29B /* RCTInputAccessoryView.m in Sources */, + 7BE5B58835F6C75E73B34A553A618BF2 /* RCTInputAccessoryViewContent.m in Sources */, + 0BEF54B38CEC10FE4246727EF053C264 /* RCTInputAccessoryViewManager.m in Sources */, + 974ECB344BCB4C13AAC5991DF4EB14AB /* RCTMultilineTextInputView.m in Sources */, + C2215AE2DA4AE46A1AE0DD92FB251672 /* RCTMultilineTextInputViewManager.m in Sources */, + 24F82AE9E4107EA534AA0DA39ED6D269 /* RCTRawTextShadowView.m in Sources */, + 6C1444B6370BDE40E9192FB249B2C8A4 /* RCTRawTextViewManager.m in Sources */, + 1C6EFE77514C85321FA21BA844BEE03C /* RCTSinglelineTextInputView.m in Sources */, + 6921C05DBF3E31CCC82A32C835A4E51A /* RCTSinglelineTextInputViewManager.m in Sources */, + 0F28B38A6ED158C5D5D1CEEF5D62ED0A /* RCTTextAttributes.m in Sources */, + 9B6C35B31A7A1C1AAC26C1561B411F8F /* RCTTextSelection.m in Sources */, + 74978E945847A96ABAAD947DD9D072BD /* RCTTextShadowView.m in Sources */, + 00E44E2AF65090E9133B19B04C911D52 /* RCTTextView.m in Sources */, + E4402760EEDC072B5883CC693C065BE1 /* RCTTextViewManager.m in Sources */, + 168B85864E81B6C5522ADED9658F364F /* RCTUITextField.m in Sources */, + F45E1C242BE709DF075D9EC75BB0ACE2 /* RCTUITextView.m in Sources */, + 7B15F5476526905E5E3EBA48DD641389 /* RCTVirtualTextShadowView.m in Sources */, + 1420E11EBF35998E6520516FC3B9E45C /* RCTVirtualTextViewManager.m in Sources */, + 3452386076FFD8A1E630145EA0F7AC53 /* React-RCTText-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + C2B3B4C5A28CA478E46B7BDE8F27BB58 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 632C1FC334789BCB7DA0CD145AFEA111 /* CoreModulesPlugins.mm in Sources */, + 528E96CB5EA9B0A1D4FBCC45E2E5BA8D /* RCTExceptionsManager.mm in Sources */, + E57F792D9018DD187CD5C28F705648C8 /* RCTImageEditingManager.m in Sources */, + 77125E840F4A3E0F185C1589ACAC3FA8 /* RCTImageLoader.mm in Sources */, + 85A02E8CC879289C54BE92257E3478ED /* RCTImageStoreManager.m in Sources */, + 280EE153070B79493C3124E9B90C5490 /* RCTPlatform.mm in Sources */, + 0D74EEDB78D1E394DD4B95828060944F /* React-CoreModules-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + C349FA15CBD316AD2B5312B1F0B64CDF /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 9432CD119107A1812A50DD4F58C7B689 /* RCTAnimatedImage.m in Sources */, + 0C5086CCAC180C0B8CBB98ED224527E7 /* RCTGIFImageDecoder.m in Sources */, + 8F02369B833FCA08B6D846B3647576D4 /* RCTImageBlurUtils.m in Sources */, + 6E6D370F4A82C9C6064008784725E97B /* RCTImageCache.m in Sources */, + F17DA3C1092B2D14EB5124985E7A500F /* RCTImageShadowView.m in Sources */, + 813D403957E8691EECBD46E12FDFBEDA /* RCTImageUtils.m in Sources */, + 9F8C5892511F5298A573799516671140 /* RCTImageView.m in Sources */, + 47752231C0ABD96B69AC9D3A97860337 /* RCTImageViewManager.m in Sources */, + 10AC41934DB04D2D895B69D878A62B76 /* RCTLocalAssetImageLoader.m in Sources */, + 8043E157D76A0F858CBC9E13C55A308A /* RCTResizeMode.m in Sources */, + D959AD97B6DF4CB04AD0358306915F25 /* RCTUIImageViewAnimated.m in Sources */, + 6A412B0527E1FCAF62B1F5B2ACA4EEB0 /* React-RCTImage-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + D424332EE97B46671A622B7046F61CAF /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + D6B6ECE1C4A354805B60163B7348015C /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 9AFD69C93548E0C428A2DA8F042D328D /* RNCAsyncStorage-dummy.m in Sources */, + D064C6B77B43DAED3CF71B49AE8C24E1 /* RNCAsyncStorage.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DF3739A4DF17FA1E2415FBE37CC21F7B /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + AE20A23BDC98DFE5201762613999AF30 /* GCDWebServer-dummy.m in Sources */, + CF076FB57F0EABF2971FD26E8A29CE75 /* GCDWebServer.m in Sources */, + 7A8123BE62EF36DD3F384738875DE69C /* GCDWebServerConnection.m in Sources */, + BEE88DB4CD0D79D749767D05DC2ECF0C /* GCDWebServerDataRequest.m in Sources */, + D398D6BC4858973B987842F72117F7D7 /* GCDWebServerDataResponse.m in Sources */, + DB194FBFAE58A42BB2707AE5A1F04BF8 /* GCDWebServerErrorResponse.m in Sources */, + 1167A79FAB34F997F4ED1E0E34145AF0 /* GCDWebServerFileRequest.m in Sources */, + A2DC6CF4E2EC5409AA37B8F083797CCE /* GCDWebServerFileResponse.m in Sources */, + 1916E8EAD94F2539B35EAAF202A82D4C /* GCDWebServerFunctions.m in Sources */, + 2AE3709EE45037EE62F99E43219346CE /* GCDWebServerMultiPartFormRequest.m in Sources */, + 645A675CE6E59036E76E78157ABBA434 /* GCDWebServerRequest.m in Sources */, + 8C2D2CE29084FB323E7FF0875458D888 /* GCDWebServerResponse.m in Sources */, + 01915C0FD507AC4DC99E311AADF0AC68 /* GCDWebServerStreamedResponse.m in Sources */, + 0E0C055E538047CE536F7FDBC742DD8F /* GCDWebServerURLEncodedFormRequest.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + E3C91DC46E49FF945D8F77A020227909 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + C9D98FED74F51DC4FF7CCDE4BAB100F8 /* Pods-iLink-tvOSTests-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + E5066009D6469B4B66FAC07E32D956E4 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 7484F8518ED2BF296241FD183C2ABD5F /* AnimatedButton.swift in Sources */, + 5D16ED053881D16859E80D19E7654812 /* AnimatedControl.swift in Sources */, + 67CEC5C5B4B9058408C91F9638782A98 /* AnimatedSwitch.swift in Sources */, + D78D918B10D194FB6DA986DC72292DBF /* Animation.swift in Sources */, + 9757EA041F1457A157223CAC8ABE2F0C /* AnimationCacheProvider.swift in Sources */, + DACC98C0F40EE51A2A6B0930B705A45A /* AnimationContainer.swift in Sources */, + DBAFD3CD2E9B3BB931BCAC196CCE06E0 /* AnimationContext.swift in Sources */, + A6FFF704928BBA1071BFC10142B95FC9 /* AnimationFontProvider.swift in Sources */, + C446CF6C8D803C47B11E274F72919233 /* AnimationImageProvider.swift in Sources */, + E25332B9230144D4831192C8C1525747 /* AnimationKeypath.swift in Sources */, + 1C743ED2D66F0CC91316EA6D724614B6 /* AnimationKeypathExtension.swift in Sources */, + A4DF975C84D1D1808D2C76F75E2E7FDE /* AnimationPublic.swift in Sources */, + 21226C64D148EECCD9C7D51C73A03A30 /* AnimationSubview.swift in Sources */, + 342705262E1C02F3FBC9A4286CD1621D /* AnimationTextProvider.swift in Sources */, + EF49711A3832EA58FD421487A58E982B /* AnimationTime.swift in Sources */, + E12943651F986783CE3E9789EC07DFEE /* AnimationView.swift in Sources */, + B4529D8970426495DABF94126F6E481E /* AnimationViewInitializers.swift in Sources */, + 4878840EC08EC967430C58B6E4F22839 /* AnimatorNode.swift in Sources */, + C55EBC50FA78F945F7DAF97589B19021 /* AnimatorNodeDebugging.swift in Sources */, + F0E3B10B9C03191EE28048D2B34C5A07 /* AnyNodeProperty.swift in Sources */, + 97DCF68E94787AFD3552FE2FDBE977AD /* AnyValueContainer.swift in Sources */, + 24B4B211C7A84CB59373913D7F460A45 /* AnyValueProvider.swift in Sources */, + 36917771655BB82E48EF1D39B53A0652 /* Asset.swift in Sources */, + 92B2EE7961EAC52DEF32F6352FD3F72F /* AssetLibrary.swift in Sources */, + CE0E0C8F5053DEF6C7935EB374CB0806 /* BezierPath.swift in Sources */, + 00FCD7D78E16374FFD6B66E0B281B08B /* BundleImageProvider.swift in Sources */, + 552A8748D9071680D90AC63D6C7661A7 /* CGFloatExtensions.swift in Sources */, + D0BBAA4A77DA2E5A4AB421B31384C064 /* Color.swift in Sources */, + EB168153F94FA3A78CB98DD4D70C4845 /* ColorExtension.swift in Sources */, + 0BA0315D250F3BD7045FCD10E4DD6611 /* ColorValueProvider.swift in Sources */, + 5CC970A5D12C131F692DA4EFBEF969FF /* CompatibleAnimationKeypath.swift in Sources */, + 8712480C2EE33616CC9284F45BD56E92 /* CompatibleAnimationView.swift in Sources */, + 3725B9F8DC4DCBA44307CF695558E5FE /* CompositionLayer.swift in Sources */, + F19596920C9AD47E0A8BEBAAC51B3B39 /* CompositionLayersInitializer.swift in Sources */, + 136B485513912EDEC15F03201C5D3CC6 /* CompoundBezierPath.swift in Sources */, + 7590F497075F095E5EA69393BB17A584 /* CurveVertex.swift in Sources */, + AC1DF8F1AB6393B40320FCFAF0660595 /* DashPattern.swift in Sources */, + 1D97DD40C38E909374A661449DB775F2 /* Ellipse.swift in Sources */, + BF476335242275950FABAFE573443DC5 /* EllipseNode.swift in Sources */, + A72C1A9FDBAE6CE2ECBF73D2BDED4240 /* FilepathImageProvider.swift in Sources */, + 850FF9DC7CE00FA2A007E9D66E52E32C /* FillI.swift in Sources */, + 580DD45C96727928B6273033BA5E85AD /* FillNode.swift in Sources */, + A6413B3069E16125C812047AAA7D9BDC /* FillRenderer.swift in Sources */, + 09835785CBAE553B6BCD63D08D065E7F /* FloatValueProvider.swift in Sources */, + 7D77A040E1A2B6568509066C37520D80 /* Font.swift in Sources */, + 63F53AACFAAC2E301923833EEEB9F735 /* Glyph.swift in Sources */, + 9648696D6AE8B4E82B8D19CD037620C2 /* GradientFill.swift in Sources */, + 57CE32732F7ECC9F3056E0ED85B58E1A /* GradientFillNode.swift in Sources */, + 36C1238A74D1A7F583E1F4F4DB38F0EF /* GradientFillRenderer.swift in Sources */, + 1A577045D4DBE8D8163C7FF960E520C2 /* GradientStroke.swift in Sources */, + C1951CBE59FDF085F90A9A3DD60DEA23 /* GradientStrokeNode.swift in Sources */, + 72F5180A5EB61194684E9E7BC487362B /* GradientStrokeRenderer.swift in Sources */, + 46014DFB0AC494D64F2F4EE0E23E1886 /* GradientValueProvider.swift in Sources */, + 235313021559BA45F08F67C5E21B3F70 /* Group.swift in Sources */, + 73CFDCB30A56E1F6744C9890CD7B2B48 /* GroupInterpolator.swift in Sources */, + 13F8B35CBE3F43B5C744C84565CEE6E3 /* GroupNode.swift in Sources */, + E85C225AA01D20FC93522E6BF797F0C4 /* GroupOutputNode.swift in Sources */, + 7A06ACB6B5F6A4387C3EC769A8385175 /* ImageAsset.swift in Sources */, + DAE2F71A0E2CADCDFB96EB99F9AA785C /* ImageCompositionLayer.swift in Sources */, + BED565767D68A270FB52995F87F425AD /* ImageLayerModel.swift in Sources */, + 7737A77E5FA88AA0795D4DCB7E96849D /* Interpolatable.swift in Sources */, + 61E5B481F51D5B7917AE7A7D6141B7CA /* InterpolatableExtensions.swift in Sources */, + D4882C3488D661D92895665F7D75D790 /* InvertedMatteLayer.swift in Sources */, + 8426BED3645BE73EACE258635078F8A6 /* ItemsExtension.swift in Sources */, + 45DF3B5F1FE767BFC957491C553FF933 /* KeyedDecodingContainerExtensions.swift in Sources */, + FE16727436A95748912C99C98B6492EC /* Keyframe.swift in Sources */, + EDDBFED5EF7AECC812FDCEBD9F395D63 /* KeyframeExtensions.swift in Sources */, + D32B7A08D1E1201371609EC99EDA8082 /* KeyframeGroup.swift in Sources */, + 2C95272148AFC990D212A54841B88F22 /* KeyframeInterpolator.swift in Sources */, + 27A2C403A537C48074A95E2C39430EF7 /* KeypathSearchable.swift in Sources */, + 8521A683F25C502FE6AF7C540451E995 /* LayerDebugging.swift in Sources */, + 3B3D0D3875F2DCFD736205A10F89499B /* LayerFontProvider.swift in Sources */, + 04FFBD76C0A9AB081EBA6E5D14EB5E1F /* LayerImageProvider.swift in Sources */, + CBF66A2C39373F508D631D6ABD4F764C /* LayerModel.swift in Sources */, + EB84DD9705DE4677B8C7D80BCA81CB31 /* LayerTextProvider.swift in Sources */, + D64EF5E0BBC9749F19EAA91ACA52729E /* LayerTransformNode.swift in Sources */, + 2F86ABF72EEEAA31264E4D94D95A3325 /* lottie-ios-dummy.m in Sources */, + 1B5F0131E8E07DE1BB00876951C0353F /* LottieView.swift in Sources */, + 0FF8134675F1D118A41C51EE46492B88 /* LRUAnimationCache.swift in Sources */, + 35CA20AD41B7B2C60FEC1EF6A581169E /* Marker.swift in Sources */, + 981A5FE57E3F987DD83A287D4DB16DA1 /* Mask.swift in Sources */, + 7398B2506C005640ADDEEEAF613F92C4 /* MaskContainerLayer.swift in Sources */, + 6C7E3B79CB3699ABA24D7463DA4FD3B0 /* MathKit.swift in Sources */, + 5D762EA8C4DD33CEE13470F0C45894CB /* Merge.swift in Sources */, + BBC301431F68B5BDDB66DC37FA3470FF /* NodeProperty.swift in Sources */, + 42C986E1C1F968A8E8EEC2A8E5AB48DE /* NodePropertyMap.swift in Sources */, + 0278A0076CA97F0435DCD0FB8873AD34 /* NullCompositionLayer.swift in Sources */, + 5E4CCE9CF3464FCFF035F0D0D433E72F /* PassThroughOutputNode.swift in Sources */, + 43DF3487A98CEF1B1728E39807218A73 /* PathElement.swift in Sources */, + 1DFF5D0A2693063826F926E77CC082FD /* PathNode.swift in Sources */, + DB1B9ABDCBB97BB5B7B3ABBCF83E940C /* PathOutputNode.swift in Sources */, + 4616C2D8F9670E3314DD3BD7E0012500 /* PointValueProvider.swift in Sources */, + 012C22E3241018869C5D0B86262BC20A /* PolygonNode.swift in Sources */, + 67489B570E839657905E67B9255EDFF3 /* PrecompAsset.swift in Sources */, + 95E22437D5245074F51880D5834EB5B5 /* PreCompLayerModel.swift in Sources */, + C4230009705B3D40508F923AC6AE9681 /* PreCompositionLayer.swift in Sources */, + 22977C29921D5CE823BD15F261CF6E0E /* Rectangle.swift in Sources */, + 00E03BFD1495F63DCD9C4EC15E9647C2 /* RectNode.swift in Sources */, + A5ADF6F6AAAFB83A70BC345E2D66F396 /* RenderNode.swift in Sources */, + 934A7C7A506AB16403C0BA6FC3562961 /* Repeater.swift in Sources */, + 16411A9CB1638331EAEF44E56D42FF54 /* Shape.swift in Sources */, + 32939C053D09F621CCDDC62799FE43AF /* ShapeCompositionLayer.swift in Sources */, + 7AEAE77E78849246273E0D289EF7C3C9 /* ShapeContainerLayer.swift in Sources */, + 986A0A42CBBBAF7FB00CC27AAB59FF4F /* ShapeItem.swift in Sources */, + 2386E2F0574C6F18B95DC390F5643272 /* ShapeLayerModel.swift in Sources */, + 8B394DCEF1850AE118C2C2C2371EAE3C /* ShapeNode.swift in Sources */, + 1385DCF5E319B87BA2D7A6E617AC54B1 /* ShapeRenderLayer.swift in Sources */, + 745F3CFC80621B7449CE911AD8047819 /* ShapeTransform.swift in Sources */, + 30B0B2A9930D2DEA4953794AD6D6D428 /* SingleValueProvider.swift in Sources */, + 774ADCDAD6A028E9FB2EF56D2CE7F675 /* SizeValueProvider.swift in Sources */, + DDDC1AF42E3813725B1D2ED0B910EDA6 /* SolidCompositionLayer.swift in Sources */, + C28CEDF0463267513301B6D94DAD84A0 /* SolidLayerModel.swift in Sources */, + 9B3B6EC1E41143F84D95EC67AB8C3463 /* Star.swift in Sources */, + 3885704D9A84909FD9AC5D8C04281A03 /* StarNode.swift in Sources */, + 955E814EBEF92F2FD8604673EE65D640 /* StringExtensions.swift in Sources */, + A8E563B3F4AF7DEBBBBD6A8388835240 /* Stroke.swift in Sources */, + 9E1391717ABCC4BC31E5F42189CB1493 /* StrokeNode.swift in Sources */, + 1359F278BEA1472D2CDD5BB06FBE9E10 /* StrokeRenderer.swift in Sources */, + 521EC7A85B2505DE5269201FC7D71F97 /* TextAnimator.swift in Sources */, + B3E8A96DA5A265BABF134C73C29A219F /* TextAnimatorNode.swift in Sources */, + CACF5194B6123AFD6E116D0623B009F1 /* TextCompositionLayer.swift in Sources */, + 4418ECC62EADE4A34A6E13730757514B /* TextDocument.swift in Sources */, + C1DD829B8295944267C07CEBD35AFBE3 /* TextLayer.swift in Sources */, + 2AAABF614DA9ACD5F5720CFF1B362CC5 /* TextLayerModel.swift in Sources */, + 832007C6E6941549098C124B2737DC19 /* Transform.swift in Sources */, + E4C442CA57C9B2DFEA4A467F2073DB32 /* Trim.swift in Sources */, + 6B7D61B22D5100BD82A407A8C61799D1 /* TrimPathNode.swift in Sources */, + 86FE03AF6E43FAE6ADE17733CD214FD4 /* UIColorExtension.swift in Sources */, + 492ED1BC8EDF12FD0C9DC6710C9866FB /* ValueContainer.swift in Sources */, + 7606E3EB656D6C55F6232F98230CCDD7 /* Vectors.swift in Sources */, + 71CB8C91DE8D91AFA7F3B85FAF2F8A73 /* VectorsExtensions.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + EF2E2C6342893542A97F1BC2CC728938 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 4FDDE4AAD34AA3F00371636F296819FB /* DeviceUID.m in Sources */, + 7DC132029003463D3E9FE3C483C88FEA /* RNDeviceInfo-dummy.m in Sources */, + BA89BD2A310F9142C8DB73B4B9592164 /* RNDeviceInfo.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + EF8711CF09DB73F81EC1B64F4927C51B /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 87E936207D955AF5264E58B685F0F55E /* Pods-iLink-tvOS-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + F8DC0093A51D03EADE066109CFABA5E5 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 5188E35920121C4F023B009EB47B7250 /* RNVectorIcons-dummy.m in Sources */, + EBB31A81A9245F1AF542525CD137D384 /* RNVectorIconsManager.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 05ACEA2509760C28E75D9D99B85F8CB9 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "lottie-ios"; + target = 0B967D7F8561D42493EE289EC8D450D1 /* lottie-ios */; + targetProxy = 02DE2AD632CC789AE4C53D8BA0DB09B7 /* PBXContainerItemProxy */; + }; + 07445A8767D81F08C61810B66781586D /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-jsi"; + target = FA877ADC442CB19CF61793D234C8B131 /* React-jsi */; + targetProxy = 70AC431DC37B5CD74A2FE57E5A2AA0C8 /* PBXContainerItemProxy */; + }; + 0799BF9785601A7BEAF03A04F1ABFE1B /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-Core"; + target = 7ACAA9BE580DD31A5CB9D97C45D9492D /* React-Core */; + targetProxy = E6B0E19AA8F1B605F594996B9E5C60A0 /* PBXContainerItemProxy */; + }; + 088E435C5EBF4AD9B06256C661D43BFD /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = React; + target = 1BEE828C124E6416179B904A9F66D794 /* React */; + targetProxy = 5D160B0A51F4C805396DD327EF68CEF7 /* PBXContainerItemProxy */; + }; + 0AB72F94FDB0DA6D177080613304FE2B /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = FBReactNativeSpec; + target = C3496D0495E700CF08A90C41EA8FA4BB /* FBReactNativeSpec */; + targetProxy = 3ECA02605608B0FE42D3D83C671AC2C5 /* PBXContainerItemProxy */; + }; + 0C87B44556F321DE520BBEEC9BD7191B /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = React; + target = 1BEE828C124E6416179B904A9F66D794 /* React */; + targetProxy = E84E1F553A336639F903B8F345B67806 /* PBXContainerItemProxy */; + }; + 0D2C2C8D68FAD57F65E14D49CC394160 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = FBLazyVector; + target = 8CC4EAA817AA86310D1900F1DAB3580F /* FBLazyVector */; + targetProxy = 4F929AD5AF224CD92CFA64B192B5DE4F /* PBXContainerItemProxy */; + }; + 0DC67ACFB5C86E7BD5046F2BF5AF35B6 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = React; + target = 1BEE828C124E6416179B904A9F66D794 /* React */; + targetProxy = D5E9C27F5981E4B12B852F91EB7C0262 /* PBXContainerItemProxy */; + }; + 14418CB12FC4109D5A2318A202BC4CB5 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-RCTNetwork"; + target = 651511D7DA7F07F9FC9AA40A2E86270D /* React-RCTNetwork */; + targetProxy = 68B20FBE79B43D2E8B51F6575C250BD5 /* PBXContainerItemProxy */; + }; + 163065107D87D4CD0E315A430912C9C5 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = RCTRequired; + target = E7E7CE52C8C68B17224FF8C262D80ABF /* RCTRequired */; + targetProxy = 8740BC52A4D2A8DBF1B5C0612FC1C6D2 /* PBXContainerItemProxy */; + }; + 1700DC3BF931B2ABB12AA097216FF85D /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = GCDWebServer; + target = AD904F32069787EFB2DFFE05EB82F5BD /* GCDWebServer */; + targetProxy = C11DFD256A9E35FBBE146D4BA07A4387 /* PBXContainerItemProxy */; + }; + 179047EE192E29C91BEBAD6AFC9AB773 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = React; + target = 1BEE828C124E6416179B904A9F66D794 /* React */; + targetProxy = E71597FEE01BD2262197F6C16C52733D /* PBXContainerItemProxy */; + }; + 1A6C0F34C9BC2AB3DB4B396E70147734 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-jsinspector"; + target = F7D033C4C128EECAA020990641FA985F /* React-jsinspector */; + targetProxy = E40093CCEA7AC0EBD2BA8970C0640BF2 /* PBXContainerItemProxy */; + }; + 1AD3CB968B52C314BC2EDD96F48A35DB /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-RCTSettings"; + target = 680299219D3A48D42A648AF6706275A9 /* React-RCTSettings */; + targetProxy = 529F99E27A22BBE92C6ADB0553997C4A /* PBXContainerItemProxy */; + }; + 1C34B1B13FC7F88040DC152B72D7E7FF /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = ReactCommon; + target = B6D5DD49633DFF0657B8C3F08EB3ABA9 /* ReactCommon */; + targetProxy = 5596F90E3C1B78AACB352F46467A14D3 /* PBXContainerItemProxy */; + }; + 1C59F134C7C72F2E119C9C79664758F3 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "boost-for-react-native"; + target = ED2506AE7DE35D654F61254441EA7155 /* boost-for-react-native */; + targetProxy = 71536967CEFC57358F8D49A7F67DCBC9 /* PBXContainerItemProxy */; + }; + 1E033B20D02AAA5F73A6AA840D98888D /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = Folly; + target = A4F685BE3CAC127BDCE4E0DBBD88D191 /* Folly */; + targetProxy = F171942A310F1BC69D8547EDC828B9A2 /* PBXContainerItemProxy */; + }; + 1E3B56734FACEFACE70D919640E6CEB6 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = Yoga; + target = 2B25F90D819B9ADF2AF2D8733A890333 /* Yoga */; + targetProxy = 952701F7DDC01731EA4416658F3C280A /* PBXContainerItemProxy */; + }; + 1F1C02309D3393BCB01ED47B1C61481F /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = RNI18n; + target = 680E6A93D7913762C0337D61579E42E6 /* RNI18n */; + targetProxy = FCA276B638C7FFACFC181693C51C67E3 /* PBXContainerItemProxy */; + }; + 1F4ABC256036339AA1D1F706E9FCC871 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = DoubleConversion; + target = 2AB2EF542954AB1C999E03BFEF8DE806 /* DoubleConversion */; + targetProxy = 9197CCA9DB47BCD372C899E1FA3CD63F /* PBXContainerItemProxy */; + }; + 21329B64156CE56B65A20B0C781E8A94 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-Core"; + target = 7ACAA9BE580DD31A5CB9D97C45D9492D /* React-Core */; + targetProxy = 34C872083B9B29BC0EF7ADEB120F7585 /* PBXContainerItemProxy */; + }; + 2178825AE267685D25EBE6594250E1E2 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-cxxreact"; + target = 463F41A7E8B252F8AC5024DA1F4AF6DA /* React-cxxreact */; + targetProxy = 63CA99D1D749406FF8E840201FDF1E92 /* PBXContainerItemProxy */; + }; + 21FCA4FD8AF83E9358F9F1024F931CA4 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "Pods-iLink-tvOS"; + target = D559A7058936768CC7EA852223BBA953 /* Pods-iLink-tvOS */; + targetProxy = FC0D067C68170AEFF74FEF14919A6ECE /* PBXContainerItemProxy */; + }; + 23D1B4187EE8D6F5FD76A47B7A075640 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = RNScreens; + target = 214E42634D1E187D876346D36184B655 /* RNScreens */; + targetProxy = 2F90F1E5C4D69908590DE4C5717C59D8 /* PBXContainerItemProxy */; + }; + 250A0DD415E99CA2B884B28902B26996 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-Core"; + target = 7ACAA9BE580DD31A5CB9D97C45D9492D /* React-Core */; + targetProxy = AB6EC25F3D921F9038F3DE301C02641E /* PBXContainerItemProxy */; + }; + 2724B1561A8F3E439DAC855100EBED15 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-RCTVibration"; + target = 53D121F9F9BB0F8AC1C94A12C5A8572F /* React-RCTVibration */; + targetProxy = 4A61991E1BD4745430D6607EFF9BCD47 /* PBXContainerItemProxy */; + }; + 301FD54DF655694B993D54B23F76A885 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = FBLazyVector; + target = 8CC4EAA817AA86310D1900F1DAB3580F /* FBLazyVector */; + targetProxy = 81495967A38094D942C06BE9AED1B503 /* PBXContainerItemProxy */; + }; + 3044716ADC221A40B2B6C6ADD3A4AA52 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = glog; + target = D0EFEFB685D97280256C559792236873 /* glog */; + targetProxy = 6C04841EABA7D9AB1A077D8608CF16C8 /* PBXContainerItemProxy */; + }; + 3100C6E86CABB356CA68E13645168344 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-RCTActionSheet"; + target = 11989A5E568B3B69655EE0C13DCDA3F9 /* React-RCTActionSheet */; + targetProxy = 50D5AB7DA6CC0D8E18193184084D70DA /* PBXContainerItemProxy */; + }; + 33D9824C1E4D0C6FFD1266357B977EDB /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = React; + target = 1BEE828C124E6416179B904A9F66D794 /* React */; + targetProxy = B14E5289E00F0644A447B5FED1A22D8C /* PBXContainerItemProxy */; + }; + 38139667947312ABD7949779C6956EB6 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-Core"; + target = 7ACAA9BE580DD31A5CB9D97C45D9492D /* React-Core */; + targetProxy = 7F1E01B27DB18748FE0FB845A1D500E3 /* PBXContainerItemProxy */; + }; + 385698E25CEBF33682057D7B8501F65C /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = React; + target = 1BEE828C124E6416179B904A9F66D794 /* React */; + targetProxy = 781144F119BDEF036581CF94C2E3631D /* PBXContainerItemProxy */; + }; + 39E3906AD44C90B2566FD03D62AAFB8A /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-RCTImage"; + target = 4F265533AAB7C8985856EC78A33164BB /* React-RCTImage */; + targetProxy = 11EBBC963AA760C78478362CDF04E848 /* PBXContainerItemProxy */; + }; + 3B1653FEF7BA349F10F3680641A48F07 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-RCTAnimation"; + target = 938CCE22F6C4094B3FB6CF1478579E4B /* React-RCTAnimation */; + targetProxy = D6AFD9E395D895E28CDB0D1113EA4D8C /* PBXContainerItemProxy */; + }; + 3B88CBFEA5093D296DFAB28F513537A7 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = DoubleConversion; + target = 2AB2EF542954AB1C999E03BFEF8DE806 /* DoubleConversion */; + targetProxy = C531F82B5DD0A91D6D6541DFC87E9F45 /* PBXContainerItemProxy */; + }; + 3D30EFAA98C9DECD32CC546B7823E26F /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = glog; + target = D0EFEFB685D97280256C559792236873 /* glog */; + targetProxy = C0C2A6413B8548D4D4AA28CCBD282A3C /* PBXContainerItemProxy */; + }; + 3D932FD925546DB695CAF9CCBCB3108B /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-Core"; + target = 7ACAA9BE580DD31A5CB9D97C45D9492D /* React-Core */; + targetProxy = 1499298EA36A4B742F5ABFBC7D45FE67 /* PBXContainerItemProxy */; + }; + 3E83E53D0CC9C1BAA5CCEB65B6A15A44 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "react-native-onesignal"; + target = ED3E7F50BBDE8B9088929C3E3DC5FA19 /* react-native-onesignal */; + targetProxy = E2B617EECA49AB0A8264365CC6CDC439 /* PBXContainerItemProxy */; + }; + 403690FA3A1E93D6D62B39BFBFABD3C4 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = TOCropViewController; + target = F3966F664F3CFAEFAB57C40FB54D3788 /* TOCropViewController */; + targetProxy = 2D92B7E520A26C9E238A181EBE44DE0C /* PBXContainerItemProxy */; + }; + 406351DAC30ECA3118692DEF46C63E08 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-Core"; + target = 7ACAA9BE580DD31A5CB9D97C45D9492D /* React-Core */; + targetProxy = 4AE739B886DF8A39046A75C25D081547 /* PBXContainerItemProxy */; + }; + 40E0A828AD99411601B5A7FC66D90D09 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = OneSignal; + target = 210EB05CEC7AD9C148F90F752DE74C48 /* OneSignal */; + targetProxy = 7BF09CD9C3FDAEDA1EBF93C2F65A1D82 /* PBXContainerItemProxy */; + }; + 41E4DF16D2235D65085776CFF19854D4 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = Folly; + target = A4F685BE3CAC127BDCE4E0DBBD88D191 /* Folly */; + targetProxy = 72797DD8780DD56AD3702FB593E3F36B /* PBXContainerItemProxy */; + }; + 43CE5FC5C0D676228297011505C4A79D /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-RCTVibration"; + target = 53D121F9F9BB0F8AC1C94A12C5A8572F /* React-RCTVibration */; + targetProxy = E6B09173D5742DAC20B67E4E747D5E01 /* PBXContainerItemProxy */; + }; + 45BC9E720595BCB42666A107D18A5800 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-RCTImage"; + target = 4F265533AAB7C8985856EC78A33164BB /* React-RCTImage */; + targetProxy = B944C3194164FDDA228D743D3F94CB13 /* PBXContainerItemProxy */; + }; + 4601BBA5F8E3E7ACC039D214DF7A8D70 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = React; + target = 1BEE828C124E6416179B904A9F66D794 /* React */; + targetProxy = 29BF19A879F51490DED918DE9DBBA599 /* PBXContainerItemProxy */; + }; + 48238EB23D70ED3D51ABB6096AF58B89 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-cxxreact"; + target = 463F41A7E8B252F8AC5024DA1F4AF6DA /* React-cxxreact */; + targetProxy = 68268ADF01C2E8674015B3039BC73535 /* PBXContainerItemProxy */; + }; + 4B362D3D038062DEE68E9CD0F497031A /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = React; + target = 1BEE828C124E6416179B904A9F66D794 /* React */; + targetProxy = 9EDC33CD06997FD575286184A4C95C0F /* PBXContainerItemProxy */; + }; + 4F38C77A911396533D1688664EAD432A /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "react-native-geolocation"; + target = 1BBA090545F0B723C18EFF83953F301F /* react-native-geolocation */; + targetProxy = B5B01067C468BD7EC8F421B4677137C9 /* PBXContainerItemProxy */; + }; + 5021DF23050C3EEB744155DB812102CB /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "TOCropViewController-TOCropViewControllerBundle"; + target = 2D4D3D5AD93ADCCF3DD45A88009E48D6 /* TOCropViewController-TOCropViewControllerBundle */; + targetProxy = 7DED747D72FC05CB57D8CB03312FF9DE /* PBXContainerItemProxy */; + }; + 50E6D8CA3801610E999175104F40EB39 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-CoreModules"; + target = E16E206437995280D349D4B67695C894 /* React-CoreModules */; + targetProxy = FEF477C234C951B563FAAABB991E1E6F /* PBXContainerItemProxy */; + }; + 53A78AA37073A16C0D9F18A25819F6DC /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = OneSignal; + target = 210EB05CEC7AD9C148F90F752DE74C48 /* OneSignal */; + targetProxy = 253D900998BD052F437F96B97CD29277 /* PBXContainerItemProxy */; + }; + 58479B210CDF957CB099E197A95EB807 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = glog; + target = D0EFEFB685D97280256C559792236873 /* glog */; + targetProxy = 3C1F61A8132B8DD099DBA900BA5A1036 /* PBXContainerItemProxy */; + }; + 591E2B79397EC3DDF6B026FDD9B6096B /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-Core"; + target = 7ACAA9BE580DD31A5CB9D97C45D9492D /* React-Core */; + targetProxy = 33E7DCF5CD18F7357908FDE23AB84A40 /* PBXContainerItemProxy */; + }; + 5DA326322B69E0F622F229F0271D6B30 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-jsi"; + target = FA877ADC442CB19CF61793D234C8B131 /* React-jsi */; + targetProxy = 91E442A21533F5F7D7B3C9B20F87E9DD /* PBXContainerItemProxy */; + }; + 5E8060798A320463714282B43D95BB2D /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-RCTImage"; + target = 4F265533AAB7C8985856EC78A33164BB /* React-RCTImage */; + targetProxy = 28A57A057A78D12032916DA8D10144E6 /* PBXContainerItemProxy */; + }; + 606B260DD791C5A58C5CA7578D459D36 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-RCTText"; + target = DBD2D83E10F8B7D3F4E0E34E6A9FCFA6 /* React-RCTText */; + targetProxy = D5C51F8EF0FCF15B34A8A91FC3D5304C /* PBXContainerItemProxy */; + }; + 61D42FF1FA2FA27A649AE9899B8E2855 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-jsiexecutor"; + target = DA0709CAAD589C6E7963495210438021 /* React-jsiexecutor */; + targetProxy = 99ECF98FA9FCAF8D666E07E658AC6CD7 /* PBXContainerItemProxy */; + }; + 62979ACA6DC653BB4320669B786F67B3 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "react-native-maps"; + target = C1A1C02FAD3999B6DAC48835EC954521 /* react-native-maps */; + targetProxy = C7E9F32EA59910A77052372031ACA0BF /* PBXContainerItemProxy */; + }; + 63045F90CB0D4DDCB6646C93EFCAE2EC /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = GCDWebServer; + target = AD904F32069787EFB2DFFE05EB82F5BD /* GCDWebServer */; + targetProxy = EE3F1062133ADB15A256302551D03924 /* PBXContainerItemProxy */; + }; + 634263C359C686563A04E9768C51E295 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = DoubleConversion; + target = 2AB2EF542954AB1C999E03BFEF8DE806 /* DoubleConversion */; + targetProxy = B2C184B904252F4D0A34409CC39C8FBB /* PBXContainerItemProxy */; + }; + 63C2D00DC3F63655E17E89B764EDDF25 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "Pods-iLink"; + target = 37B9DF6C4D55BD05E9174EBA51F8750C /* Pods-iLink */; + targetProxy = 0DCA92E3530266BC4E919F2E2352759D /* PBXContainerItemProxy */; + }; + 64E617415AFEA589E8B7C1664E67F294 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-Core"; + target = 7ACAA9BE580DD31A5CB9D97C45D9492D /* React-Core */; + targetProxy = 8D496847AB6DADD50725A325625D586B /* PBXContainerItemProxy */; + }; + 65059B77BBEAB62AAC88204C16CC635D /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-jsinspector"; + target = F7D033C4C128EECAA020990641FA985F /* React-jsinspector */; + targetProxy = 2D44CE22229E74446998A2737722C511 /* PBXContainerItemProxy */; + }; + 652BDF3B97100B34DFF3BA8C4D273CBF /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = Folly; + target = A4F685BE3CAC127BDCE4E0DBBD88D191 /* Folly */; + targetProxy = 96106F89558C22261F855FDA9FE56718 /* PBXContainerItemProxy */; + }; + 68D16632FE4019C2B2993D8E2596E2F6 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = RNImageCropPicker; + target = 0D82774D2A533D3FFAE27CAB4A6E9CB2 /* RNImageCropPicker */; + targetProxy = C2749342093765A7BC5197724C5FC89F /* PBXContainerItemProxy */; + }; + 6921005F93889ABE30C01D118B6B7BFD /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-Core"; + target = 7ACAA9BE580DD31A5CB9D97C45D9492D /* React-Core */; + targetProxy = A3A6FB003152E5921D82443FCB05159B /* PBXContainerItemProxy */; + }; + 6A843504677AFE8C9575A3FDCF7CBDAB /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "react-native-viewpager"; + target = F1401264B2796C32CF72C6C2CB10D487 /* react-native-viewpager */; + targetProxy = A15CA5171EB1BAFDB53D048DCFC05D22 /* PBXContainerItemProxy */; + }; + 6AA565BB8F3444357D6E0BB463AEA501 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = FBReactNativeSpec; + target = C3496D0495E700CF08A90C41EA8FA4BB /* FBReactNativeSpec */; + targetProxy = 2BBE8AF3236895840BC643556EE2F17E /* PBXContainerItemProxy */; + }; + 6D11F510B0DE3B28CFC571321249BC97 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = Folly; + target = A4F685BE3CAC127BDCE4E0DBBD88D191 /* Folly */; + targetProxy = 9264BB35A91254ACA3C15FD17AC0EDEF /* PBXContainerItemProxy */; + }; + 7203E2410ECF7EC0EFC9138CB1D895D9 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-Core"; + target = 7ACAA9BE580DD31A5CB9D97C45D9492D /* React-Core */; + targetProxy = 5F031BEB9916DF6B61FCEF2EF0B6316C /* PBXContainerItemProxy */; + }; + 74071DB5492F158AF9C0053A3F934D1C /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-RCTLinking"; + target = 6FE9147F8AAA4DE676C190F680F47AE2 /* React-RCTLinking */; + targetProxy = 40AE5E455A79C5FE816158814A0ACF45 /* PBXContainerItemProxy */; + }; + 75723E71C392F0F1F61A42F5660C6F8F /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = React; + target = 1BEE828C124E6416179B904A9F66D794 /* React */; + targetProxy = C15B720F33155138E6B12B2862335389 /* PBXContainerItemProxy */; + }; + 7615DA5E0080C0394FF1EBBFB44AA14E /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = Folly; + target = A4F685BE3CAC127BDCE4E0DBBD88D191 /* Folly */; + targetProxy = D44C9B07BE4631DDEE85E83F31B6F1D5 /* PBXContainerItemProxy */; + }; + 7880B8AC31F1EAD7CA3F425A43969916 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = React; + target = 1BEE828C124E6416179B904A9F66D794 /* React */; + targetProxy = 52A3D6CB3329DBF7F4EA26262059BFAD /* PBXContainerItemProxy */; + }; + 7C9BA412B6440C00AAF8C6910A98E5E2 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "boost-for-react-native"; + target = ED2506AE7DE35D654F61254441EA7155 /* boost-for-react-native */; + targetProxy = 8C444E1BFE59F35C3B30185DBDC026C5 /* PBXContainerItemProxy */; + }; + 8433F4FFBAE68E0CBBA9DA87CA0EFEEF /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "boost-for-react-native"; + target = ED2506AE7DE35D654F61254441EA7155 /* boost-for-react-native */; + targetProxy = A6CCAA85497AC33F56FCFD7286A765E8 /* PBXContainerItemProxy */; + }; + 844F6544F25231F54B2DE57E00729BB1 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-RCTNetwork"; + target = 651511D7DA7F07F9FC9AA40A2E86270D /* React-RCTNetwork */; + targetProxy = F9C3FF51DC7E5D858F8B8FD0E62FE949 /* PBXContainerItemProxy */; + }; + 86E4843B5F7472370158F921DD10F5CF /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-jsi"; + target = FA877ADC442CB19CF61793D234C8B131 /* React-jsi */; + targetProxy = 249B0337B38417B76DBEB431165DE0E9 /* PBXContainerItemProxy */; + }; + 89E690339775C98513E79BF3CBE90975 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = TOCropViewController; + target = F3966F664F3CFAEFAB57C40FB54D3788 /* TOCropViewController */; + targetProxy = 243823EBD0483F6CAB6E7994C7AAD06F /* PBXContainerItemProxy */; + }; + 8A89EE978C6EE563D39A3C9884D35D4B /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-jsi"; + target = FA877ADC442CB19CF61793D234C8B131 /* React-jsi */; + targetProxy = 5325C86098DE6E6713F5CA0E2A5F5AEF /* PBXContainerItemProxy */; + }; + 8AAF2C6A242B5972E1216900E1DCA958 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-Core"; + target = 7ACAA9BE580DD31A5CB9D97C45D9492D /* React-Core */; + targetProxy = 9C423F70FB279B7D0EAC646AF13F0AD2 /* PBXContainerItemProxy */; + }; + 8F8DFA6279A43AA4FD5F35D06B57FCF1 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-cxxreact"; + target = 463F41A7E8B252F8AC5024DA1F4AF6DA /* React-cxxreact */; + targetProxy = 40925CCE575759B2952BA753B6C2D29B /* PBXContainerItemProxy */; + }; + 8FBE6F37A397486A5CD3BC004B0E9299 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = RNCAsyncStorage; + target = 89F573A6B1292B3B2296B2206BFDC3D7 /* RNCAsyncStorage */; + targetProxy = 52EE9A8765F67AF3DF3D3AF510196D75 /* PBXContainerItemProxy */; + }; + 901D6A1B65BBEFA08C639274B05AAA73 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-RCTBlob"; + target = 95D98F901D07557EF7CA38D3F03832C5 /* React-RCTBlob */; + targetProxy = 5339E8F8BBE499E642F0498E02764D15 /* PBXContainerItemProxy */; + }; + 919DD2EB923F180919B19851C7799FF9 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = ReactCommon; + target = B6D5DD49633DFF0657B8C3F08EB3ABA9 /* ReactCommon */; + targetProxy = 3956CDC1B91D5310AE774E88B7EA01DE /* PBXContainerItemProxy */; + }; + 94E74AC5783207331E6BF8609D27F94B /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = DoubleConversion; + target = 2AB2EF542954AB1C999E03BFEF8DE806 /* DoubleConversion */; + targetProxy = BFB031EAC242030F8BBDFFC57D75D78F /* PBXContainerItemProxy */; + }; + 95FC8ABBBDF3B0BEEB6AEFC8292DEABA /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = glog; + target = D0EFEFB685D97280256C559792236873 /* glog */; + targetProxy = E5D8C53B7733DB0CEB9D67D87B52164F /* PBXContainerItemProxy */; + }; + 97DDEDFB4D34BD53CAE6F21BC5D12160 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "RNImageCropPicker-QBImagePicker"; + target = 6D979AB5FDA2E858850D9903776A30B3 /* RNImageCropPicker-QBImagePicker */; + targetProxy = B4BF509BD23EA7AD1A7B84988616F4AF /* PBXContainerItemProxy */; + }; + 993ADF20A7F7B9ADCFF6B283F240D4A9 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-RCTNetwork"; + target = 651511D7DA7F07F9FC9AA40A2E86270D /* React-RCTNetwork */; + targetProxy = 0616362648A7CB71E8F8669260CBAD1E /* PBXContainerItemProxy */; + }; + 9B00692326A18CDB21FBAD666F3C2953 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "boost-for-react-native"; + target = ED2506AE7DE35D654F61254441EA7155 /* boost-for-react-native */; + targetProxy = E5040E14BB348FE8FD7EDD25A51AA7A0 /* PBXContainerItemProxy */; + }; + 9C8617A5A0A7465E6FC2F9E7E0091058 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-jsiexecutor"; + target = DA0709CAAD589C6E7963495210438021 /* React-jsiexecutor */; + targetProxy = 8BCEA2C0DB3C56D087158D8D59665F08 /* PBXContainerItemProxy */; + }; + 9DD9DA0621B17F437D1071E510C9CB51 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-Core"; + target = 7ACAA9BE580DD31A5CB9D97C45D9492D /* React-Core */; + targetProxy = A05C30F29C9A218A5697035F405837DF /* PBXContainerItemProxy */; + }; + 9E391D6ADA2D61F5EB28FB8D4C039E43 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-RCTSettings"; + target = 680299219D3A48D42A648AF6706275A9 /* React-RCTSettings */; + targetProxy = 548B18953167CA6D8E3AF691F7E8BEF0 /* PBXContainerItemProxy */; + }; + 9F9922E40437C35E59DC654A39D1EF55 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-Core"; + target = 7ACAA9BE580DD31A5CB9D97C45D9492D /* React-Core */; + targetProxy = 261CCBB1F89CA645973857C96668A1DA /* PBXContainerItemProxy */; + }; + 9F9D9B86028C8B65EE230D88A1ED5FE7 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "lottie-react-native"; + target = D0A4E77DD13672F3E2E1D9593F999DBA /* lottie-react-native */; + targetProxy = E10DF6F0478BD09C07A8785463495A0B /* PBXContainerItemProxy */; + }; + 9FDB29F574ED11EF1058A9FDBEBE364A /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-Core"; + target = 7ACAA9BE580DD31A5CB9D97C45D9492D /* React-Core */; + targetProxy = 4546FFD60025A41FCA592E2E2EF8FE7A /* PBXContainerItemProxy */; + }; + A3E682197CB59A79F323A6E0CC220A19 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = glog; + target = D0EFEFB685D97280256C559792236873 /* glog */; + targetProxy = F52E188372E633D392624F3D051AE30F /* PBXContainerItemProxy */; + }; + A418CE1E10322B95F240AC844889C443 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-RCTLinking"; + target = 6FE9147F8AAA4DE676C190F680F47AE2 /* React-RCTLinking */; + targetProxy = E47E0FB15CB2D5852AAABF8E6547843E /* PBXContainerItemProxy */; + }; + A643D0BF0A38BD6D32957DAEE4528D37 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = React; + target = 1BEE828C124E6416179B904A9F66D794 /* React */; + targetProxy = A3766CDDC53DFFC54655C31B9B93D6DB /* PBXContainerItemProxy */; + }; + A819D78ED87FC52E66F8D5CC8ED8AAD2 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = React; + target = 1BEE828C124E6416179B904A9F66D794 /* React */; + targetProxy = 87CECF7A64F7B9635BC0EDBFFEF1AD5A /* PBXContainerItemProxy */; + }; + A8A804EB573922D0303EDAB81D3043C3 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-RCTBlob"; + target = 95D98F901D07557EF7CA38D3F03832C5 /* React-RCTBlob */; + targetProxy = B8A9E89C7AB77485BEE90F5857063969 /* PBXContainerItemProxy */; + }; + A8A9010A03840A241CCFE71BF7BC005F /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = React; + target = 1BEE828C124E6416179B904A9F66D794 /* React */; + targetProxy = 7F95060D27595AD7921EBBAB10499CEF /* PBXContainerItemProxy */; + }; + AA784E0920D236B26883664DD15982E2 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = RNReanimated; + target = FF879E718031128A75E7DE54046E6219 /* RNReanimated */; + targetProxy = 12CFDC1A33B230AA6CEE700AA4F9B3EF /* PBXContainerItemProxy */; + }; + AED0B95B2C7683DBDB6946FC99B5E1C9 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-cxxreact"; + target = 463F41A7E8B252F8AC5024DA1F4AF6DA /* React-cxxreact */; + targetProxy = D030511D660C56AFFA1B849EA4CA7211 /* PBXContainerItemProxy */; + }; + B20F02095B04CB117584B02889665D0F /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-RCTNetwork"; + target = 651511D7DA7F07F9FC9AA40A2E86270D /* React-RCTNetwork */; + targetProxy = 1820BAFC2A5BD6050E425C6DD7D32C8B /* PBXContainerItemProxy */; + }; + B6D862A5875BED3EC7C808C8F489DD38 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = RNSVG; + target = DE32677FA772BFFD0172EB7EE9E4E7E9 /* RNSVG */; + targetProxy = 32792FBD42C775745F93BBF40066085D /* PBXContainerItemProxy */; + }; + B874CA3FE12FFA448EAC32FE3ABD1A4B /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = Folly; + target = A4F685BE3CAC127BDCE4E0DBBD88D191 /* Folly */; + targetProxy = 3A7B0AA88514D71DE053B8045621ADDB /* PBXContainerItemProxy */; + }; + B8DD98A38803E9BA7CCB319BF3193E28 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = Folly; + target = A4F685BE3CAC127BDCE4E0DBBD88D191 /* Folly */; + targetProxy = 91232AC2802D39EF19B269D76419C76C /* PBXContainerItemProxy */; + }; + B8FBA1BA3E6EAF70DE17E4650CAA2AEA /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = RCTRequired; + target = E7E7CE52C8C68B17224FF8C262D80ABF /* RCTRequired */; + targetProxy = F1522703EC655A1CB29578566EDEBF2B /* PBXContainerItemProxy */; + }; + BC655ACCD6EF04C9BE70007053B40DB3 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = Yoga; + target = 2B25F90D819B9ADF2AF2D8733A890333 /* Yoga */; + targetProxy = B80C7C9BA66BCEBC06D5A6257B2FD9CE /* PBXContainerItemProxy */; + }; + BF7E29D71234E0B76CF367175FA370F6 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = React; + target = 1BEE828C124E6416179B904A9F66D794 /* React */; + targetProxy = 04536ADB0FC346310F46F67C4ABEA7A1 /* PBXContainerItemProxy */; + }; + C0107B04A0B3FAEA177F8D924242C47B /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-Core"; + target = 7ACAA9BE580DD31A5CB9D97C45D9492D /* React-Core */; + targetProxy = 60E6BF131DFC3A1079EC34AE121C6404 /* PBXContainerItemProxy */; + }; + C37434763B59A812C22603A7DDB109FD /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "react-native-camera"; + target = 730404A8DD175FF6B60B6A43DC6E554B /* react-native-camera */; + targetProxy = D9A53FE194FAD67E6E9AF3F6153FFED3 /* PBXContainerItemProxy */; + }; + C46B8E57A0D809811A8800A97F18221D /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = ReactCommon; + target = B6D5DD49633DFF0657B8C3F08EB3ABA9 /* ReactCommon */; + targetProxy = 55A58CDF63DC66952C58486A412B2B36 /* PBXContainerItemProxy */; + }; + C53BE2C83F37A2088FEE14CBB6D12E0C /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "lottie-ios"; + target = 0B967D7F8561D42493EE289EC8D450D1 /* lottie-ios */; + targetProxy = 84A9E91343D2DB19ED342946B699925D /* PBXContainerItemProxy */; + }; + C72961BDAFB4DF1C2734972B7CB3FF28 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-RCTAnimation"; + target = 938CCE22F6C4094B3FB6CF1478579E4B /* React-RCTAnimation */; + targetProxy = 5083C4D789EF4D31F7B55C2DD615D684 /* PBXContainerItemProxy */; + }; + C7376F5772F53698D776DC58BE36FE56 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-RCTText"; + target = DBD2D83E10F8B7D3F4E0E34E6A9FCFA6 /* React-RCTText */; + targetProxy = AE8F8C09539D4D32151B9789480DCABE /* PBXContainerItemProxy */; + }; + C8AB260D6B6F364804E3955A35EF252C /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-Core"; + target = 7ACAA9BE580DD31A5CB9D97C45D9492D /* React-Core */; + targetProxy = C60FA8468D574878EFD26FE358E7F2DA /* PBXContainerItemProxy */; + }; + CAECBCEE731AD1DA579F145A805E108D /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-jsinspector"; + target = F7D033C4C128EECAA020990641FA985F /* React-jsinspector */; + targetProxy = 3A5ED20F06E9170DE8FC2F2C5F06699B /* PBXContainerItemProxy */; + }; + CF421D52E2641129B0CEA2DCF6773836 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-jsi"; + target = FA877ADC442CB19CF61793D234C8B131 /* React-jsi */; + targetProxy = 3699D257FAA5A38F33A724F1E5817A47 /* PBXContainerItemProxy */; + }; + D3B01339A06548DC08198575B255EF64 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = RNVectorIcons; + target = 96150F524B245896B800F84F369A9A5A /* RNVectorIcons */; + targetProxy = DD0D6C14CAD34BE5E205023B5BFD12B7 /* PBXContainerItemProxy */; + }; + D4C9E8607BF005D474EB1E855AB99481 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = RNDeviceInfo; + target = 807428FE76D80865C9F59F3502600E89 /* RNDeviceInfo */; + targetProxy = 51B1A6CD374476DB2AA026968AA60161 /* PBXContainerItemProxy */; + }; + D686F14286F3197034B4B6217CDD4A07 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = RCTTypeSafety; + target = D20469A9A1E5CFB26045EAEBE3F88E5E /* RCTTypeSafety */; + targetProxy = 5922B9976D0338EA19DCD934AA85DB11 /* PBXContainerItemProxy */; + }; + D9C34899EDF327D38395BA86AA08D89F /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = React; + target = 1BEE828C124E6416179B904A9F66D794 /* React */; + targetProxy = F034679020C97CF221A628C95C846B80 /* PBXContainerItemProxy */; + }; + DA90F8A4D2FAD86DED37B6123A94B246 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = React; + target = 1BEE828C124E6416179B904A9F66D794 /* React */; + targetProxy = F3073F50139F16A470FF9EBE6126DBD4 /* PBXContainerItemProxy */; + }; + DB61494D7851AF1326A91F4853302231 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = RCTTypeSafety; + target = D20469A9A1E5CFB26045EAEBE3F88E5E /* RCTTypeSafety */; + targetProxy = 6B9EC106EC8F7D539F0400A1DD64C627 /* PBXContainerItemProxy */; + }; + DEC80109703E8629B9EA3464B88933AB /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-jsi"; + target = FA877ADC442CB19CF61793D234C8B131 /* React-jsi */; + targetProxy = 52DF1D7A717D588BDB50E5BAE178F2EE /* PBXContainerItemProxy */; + }; + E0A204BF723328732848CC3AAD18B387 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = glog; + target = D0EFEFB685D97280256C559792236873 /* glog */; + targetProxy = 2AFA01A8B60A38195D3572A8B41C3C93 /* PBXContainerItemProxy */; + }; + E3D0D10365F3B21B44725EC5155D28B0 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = Folly; + target = A4F685BE3CAC127BDCE4E0DBBD88D191 /* Folly */; + targetProxy = EFD258FC5135485ECEEA17485E1669FF /* PBXContainerItemProxy */; + }; + E5CB2F1F47E1F1A7A9F655EB492345B8 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = DoubleConversion; + target = 2AB2EF542954AB1C999E03BFEF8DE806 /* DoubleConversion */; + targetProxy = 96453826E33A51A96E4CD754238B9FCD /* PBXContainerItemProxy */; + }; + EA2A9CFFA9632B8B0FE80F6A75F97608 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-Core"; + target = 7ACAA9BE580DD31A5CB9D97C45D9492D /* React-Core */; + targetProxy = 1B89B1F4274148ABDDB990DDAD073488 /* PBXContainerItemProxy */; + }; + ED696E3ED973DC4724C9A2BE6FA10A35 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = RealmJS; + target = ADE7D4B70FB12900D442F75D3144441F /* RealmJS */; + targetProxy = 90B6CEE8DE25387A9C96E84D79BD0FAD /* PBXContainerItemProxy */; + }; + F0EEF0F26013FD40A98A706BDD7EA3C4 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-RCTActionSheet"; + target = 11989A5E568B3B69655EE0C13DCDA3F9 /* React-RCTActionSheet */; + targetProxy = 060B7448A2682BF10FC97F03740C79B1 /* PBXContainerItemProxy */; + }; + F17E9492019B520B7EAD20DACA6907D1 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = RNGestureHandler; + target = B9E8F4CA2A4A8599389FEB665A9B96FF /* RNGestureHandler */; + targetProxy = ED885FC911FB6E83546EEB5523A27B2E /* PBXContainerItemProxy */; + }; + F54A92C940E9822144D86C5DBB7E94F0 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = RNDateTimePicker; + target = D760AF58E12ABBB51F84160FB02B5F39 /* RNDateTimePicker */; + targetProxy = F33EA2BF9E6D0AEF6814318FB0C75ABF /* PBXContainerItemProxy */; + }; + F6F469520F6DF16BF936DC7F12E5BAD6 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-RCTImage"; + target = 4F265533AAB7C8985856EC78A33164BB /* React-RCTImage */; + targetProxy = 159AB5CC71007B0C11E225CA7F9EAA01 /* PBXContainerItemProxy */; + }; + F970282BB683AC2176836A2139451E49 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = SajjadBlurOverlay; + target = 5CB57245CFAA41531DA0E71363484F3B /* SajjadBlurOverlay */; + targetProxy = 4089AB2E4A4709FC523071B1B4D4B024 /* PBXContainerItemProxy */; + }; + FA081162D8C1FC50077C88A56F925B93 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = DoubleConversion; + target = 2AB2EF542954AB1C999E03BFEF8DE806 /* DoubleConversion */; + targetProxy = 93FDD7AEB8DD38364F510D4AB1ABB957 /* PBXContainerItemProxy */; + }; + FA231BD17F1CBC7D7843D9DAA62571B9 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = Folly; + target = A4F685BE3CAC127BDCE4E0DBBD88D191 /* Folly */; + targetProxy = 4A3B432E3291422FA99EB9E1022983A2 /* PBXContainerItemProxy */; + }; + FA9E3B187CDEE082178A909DCFBF4F3B /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = glog; + target = D0EFEFB685D97280256C559792236873 /* glog */; + targetProxy = 219610D999F96EAA808DC224973E27E7 /* PBXContainerItemProxy */; + }; + FBF4B836190E16B6609369AFDB93E145 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = RCTTypeSafety; + target = D20469A9A1E5CFB26045EAEBE3F88E5E /* RCTTypeSafety */; + targetProxy = 09943A248BD149780C22B797D88F7479 /* PBXContainerItemProxy */; + }; + FC198828BD90CE65CAD0AFD80DAF08E1 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "React-Core"; + target = 7ACAA9BE580DD31A5CB9D97C45D9492D /* React-Core */; + targetProxy = 256A763C855611BDA5D233575A798343 /* PBXContainerItemProxy */; + }; + FC42E98368E4611DFC70EBCE53BCD0B1 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = RCTRequired; + target = E7E7CE52C8C68B17224FF8C262D80ABF /* RCTRequired */; + targetProxy = 65EC53608E58F2F4B9AE26E6FBBC53B7 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin XCBuildConfiguration section */ + 00CED71C008B784DC57FD044DBE32070 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = A83BE372D6B93D77F36825B1EE4B548D /* react-native-viewpager.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/react-native-viewpager/react-native-viewpager-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = react_native_viewpager; + PRODUCT_NAME = "react-native-viewpager"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 00F72F929CFB586785BF66894BD61278 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 5FE6D0C44F9602F006C039AFA50D69A9 /* RNImageCropPicker.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/RNImageCropPicker/RNImageCropPicker-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RNImageCropPicker; + PRODUCT_NAME = RNImageCropPicker; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 03972BF56DB6A39122299CCC2477458F /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 27D9A695FFCA7CD9180130E228A7DCB9 /* boost-for-react-native.debug.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 06475A3C7CB4FECABE9E5EC3C575BC60 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = EDE726FE7E357E1850CBEA3FBD348B5D /* react-native-camera.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/react-native-camera/react-native-camera-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = react_native_camera; + PRODUCT_NAME = "react-native-camera"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 066707EF504FC06AEE00481711202ACF /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 283C69074FAF5430D2477C75D47095E6 /* RealmJS.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/RealmJS/RealmJS-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RealmJS; + PRODUCT_NAME = RealmJS; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 09216DEC7F43C010C90645096F387178 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 1D13846984C17D864A6CEDE12F8E61B6 /* react-native-onesignal.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/react-native-onesignal/react-native-onesignal-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = react_native_onesignal; + PRODUCT_NAME = "react-native-onesignal"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 0FA9079395EC36104A16546C209AAD41 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9CBBB48B3337A174E52F7DD650D09253 /* RNScreens.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/RNScreens/RNScreens-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RNScreens; + PRODUCT_NAME = RNScreens; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 135BCE31B15D54A4A93D097DB35A9D2B /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 71FC3C1B1E5913413B39A0900ADD625A /* lottie-react-native.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/lottie-react-native/lottie-react-native-prefix.pch"; + MODULEMAP_FILE = "Headers/Public/lottie_react_native/lottie-react-native.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = lottie_react_native; + PRODUCT_NAME = "lottie-react-native"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 138A336FD88B4AB696CEF9D6045548BA /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = FE45EC81DEC9B73C939CEF62253F7052 /* react-native-camera.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/react-native-camera/react-native-camera-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = react_native_camera; + PRODUCT_NAME = "react-native-camera"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 1677B62C045BF53729681B01FCC21ACB /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = CCAC00C01CED90CFF7427F035467D2EA /* FBReactNativeSpec.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/FBReactNativeSpec/FBReactNativeSpec-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = FBReactNativeSpec; + PRODUCT_NAME = FBReactNativeSpec; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 20813E47A6C7B5BEE52EAD9162A31601 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 3834FFCD5E1C46D728E8AE020D7FBB33 /* React-cxxreact.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-cxxreact/React-cxxreact-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = cxxreact; + PRODUCT_NAME = "React-cxxreact"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 226EC9D8E34EF56C02D63ED764959A22 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = EF9D9E07D06963C0E92CF076BD8E29F8 /* React-Core.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-Core/React-Core-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = React; + PRODUCT_NAME = "React-Core"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 25AD9454612BF454A1E3DC4CD4FA8C6D /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "POD_CONFIGURATION_DEBUG=1", + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; + PRODUCT_NAME = "$(TARGET_NAME)"; + STRIP_INSTALLED_PRODUCT = NO; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + SYMROOT = "${SRCROOT}/../build"; + }; + name = Debug; + }; + 265F14B64F5341741B5FFE2FCABE5277 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 549995AFCC79C5FA48E9CFD8DE16D7DE /* Pods-iLink-tvOS.release.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + MACH_O_TYPE = staticlib; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 2D8ECAE815D326E25F771EAD9012230D /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 47CBEFF5BE4D0F8380F981BB70C384F8 /* RNSVG.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/RNSVG/RNSVG-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RNSVG; + PRODUCT_NAME = RNSVG; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 315B1AD14699FE87519F096F861547CC /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = A981BBFE18030AF5F63732FE397631B8 /* RNReanimated.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/RNReanimated/RNReanimated-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RNReanimated; + PRODUCT_NAME = RNReanimated; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 31862F575AF301291452B48B9EC5EE66 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 09C6BDE5948349372DB4E21A885D702C /* Folly.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/Folly/Folly-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = folly; + PRODUCT_NAME = Folly; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 3278A062E754704377F9387B5672ED0C /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 18409BBB0F8527F9FECBC3B67EE04B55 /* RNDeviceInfo.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/RNDeviceInfo/RNDeviceInfo-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RNDeviceInfo; + PRODUCT_NAME = RNDeviceInfo; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 35B89D2435440410E39EA33EF1FF8BDF /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 0E90BEA1E6B73EE372DBC2D9355CB855 /* RCTTypeSafety.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/RCTTypeSafety/RCTTypeSafety-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RCTTypeSafety; + PRODUCT_NAME = RCTTypeSafety; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 3CE9741FAD073C44D25E3352EEE1F30B /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 6A114333805DE8B6D7915EF12D5DF587 /* RCTTypeSafety.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/RCTTypeSafety/RCTTypeSafety-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RCTTypeSafety; + PRODUCT_NAME = RCTTypeSafety; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 3D0890A97A7EDE498576741E9EC1194C /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = EEE1FFB241BDB298B04B82917991DE31 /* RNGestureHandler.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/RNGestureHandler/RNGestureHandler-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RNGestureHandler; + PRODUCT_NAME = RNGestureHandler; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 453FA41041762F622BF1AC40F0F17C31 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = A51172FF8815A12AB54620B52198A965 /* Pods-iLink.debug.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-iLink/Pods-iLink.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 45E3221D4E3E0D904120218708541AA2 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7DC1F9D522F7EC7281031D838802F5D4 /* RNDateTimePicker.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/RNDateTimePicker/RNDateTimePicker-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RNDateTimePicker; + PRODUCT_NAME = RNDateTimePicker; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 47FCD2EC2D2E10BCA6718FDE268090EF /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = FCB3DA22B16E2843926B4D3F81BBBF89 /* React-jsiexecutor.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-jsiexecutor/React-jsiexecutor-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = jsireact; + PRODUCT_NAME = "React-jsiexecutor"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 495F5F0790371A404D655D14C408D7B4 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = C387D543A00500C3A0B2D9FD216DB8A1 /* DoubleConversion.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/DoubleConversion/DoubleConversion-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = DoubleConversion; + PRODUCT_NAME = DoubleConversion; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 499111DC147F8AAD523555F950C2298C /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = BEB008BA868EA1EC65731DC8EF91BE76 /* Yoga.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/Yoga/Yoga-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = yoga; + PRODUCT_NAME = Yoga; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 4A50705F40D6329DC9DE905F414F909A /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = D3E13105D8C67162D5247DE615633C9D /* FBReactNativeSpec.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/FBReactNativeSpec/FBReactNativeSpec-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = FBReactNativeSpec; + PRODUCT_NAME = FBReactNativeSpec; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 4AF4C70B0FA90BD627911D36A4D14776 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 886C71F3278B4A4205C69CA03F4E02E6 /* React-cxxreact.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-cxxreact/React-cxxreact-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = cxxreact; + PRODUCT_NAME = "React-cxxreact"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 4B4A8F7680DB5313A5F415DC0AA729E0 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7BA22630E9E815996528155E40B775FF /* React-RCTSettings.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-RCTSettings/React-RCTSettings-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RCTSettings; + PRODUCT_NAME = "React-RCTSettings"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 4C676D480B5FF6E849E24E4DFF894C6E /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 47D4817F5F3DA8A41E569EA5707AC872 /* ReactCommon.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/ReactCommon/ReactCommon-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = ReactCommon; + PRODUCT_NAME = ReactCommon; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 4CE34188A9A187191B1A66EEF5F2EDDA /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 1B91917ACD9BD7E17EAE112C4F11646F /* FBLazyVector.release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 4E183DBABF92E377C8297C587DF5FDA0 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = C748DD3668E9B96CF437C51C769C17E9 /* React-jsinspector.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-jsinspector/React-jsinspector-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = jsinspector; + PRODUCT_NAME = "React-jsinspector"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 5710701DBCF44D46892073D35648F76B /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9E2171FA7CE5047D6C5247BFC25856C2 /* React-RCTText.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-RCTText/React-RCTText-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RCTText; + PRODUCT_NAME = "React-RCTText"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 574831E7B0F5D1B1E9573E65AB7DA826 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = AAF49A208AFF64641BA96943EE470B84 /* RNCAsyncStorage.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/RNCAsyncStorage/RNCAsyncStorage-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RNCAsyncStorage; + PRODUCT_NAME = RNCAsyncStorage; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 5F4A64D48121F4770868CE80E5760013 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7EB664D28A200314BAEAED86A4849CA2 /* RCTRequired.debug.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 5FD19A2987ACE318E744A5B9F3D534A2 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = E6910AACA2A4A3019742CAC258755655 /* Pods-iLink.release.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-iLink/Pods-iLink.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 60A4D6E8DAEF7D1895CE72129E4ECC3E /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 18A15C674FF5AB2E98B6F8463C91ADFA /* glog.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/glog/glog-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = glog; + PRODUCT_NAME = glog; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 632C5324CEE06A1B4CBFDDCFD5EAD76A /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7BC94ADDD2BE9C6B14901108E4D06F12 /* boost-for-react-native.release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 67564669417D020EAD965A9E763BEAAF /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 179ADF743A3CE0859D5C1CBE32D6624E /* TOCropViewController.debug.xcconfig */; + buildSettings = { + CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/TOCropViewController"; + IBSC_MODULE = TOCropViewController; + INFOPLIST_FILE = "Target Support Files/TOCropViewController/ResourceBundle-TOCropViewControllerBundle-TOCropViewController-Info.plist"; + PRODUCT_NAME = TOCropViewControllerBundle; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + WRAPPER_EXTENSION = bundle; + }; + name = Debug; + }; + 6AB0BDAB2436BC636282C16EF90B7990 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 91CC1649BCD97DE6A8BE4885F4447533 /* React-RCTVibration.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-RCTVibration/React-RCTVibration-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RCTVibration; + PRODUCT_NAME = "React-RCTVibration"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 6D94350F15036EBC3E3F01D2BFA56A43 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = BE23141D796B57FA066441EEE47B301A /* React-jsi.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-jsi/React-jsi-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = jsi; + PRODUCT_NAME = "React-jsi"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 7118730F38EFC62CA4D408380A5D447C /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = E521D3884D7743C6A3BA43581766A9F1 /* React-RCTNetwork.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-RCTNetwork/React-RCTNetwork-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RCTNetwork; + PRODUCT_NAME = "React-RCTNetwork"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 715D721624D3D0E41F97DD5FE22B4B37 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = EBD8B4A1B95E01211943124234AA30ED /* React.debug.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 74AA2DE97CE1CC790D429DD43B252385 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 179ADF743A3CE0859D5C1CBE32D6624E /* TOCropViewController.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/TOCropViewController/TOCropViewController-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = TOCropViewController; + PRODUCT_NAME = TOCropViewController; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 765041642FAE9AEBA5C14C4F3C747B03 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9C95D2A1070361A75FC1100C06462C6E /* React-RCTLinking.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-RCTLinking/React-RCTLinking-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RCTLinking; + PRODUCT_NAME = "React-RCTLinking"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 773640D7A1547B9EA7BF7A6BBB2D654E /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = C339B95A9D096486FF40CFF8F59359E0 /* lottie-react-native.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/lottie-react-native/lottie-react-native-prefix.pch"; + MODULEMAP_FILE = "Headers/Public/lottie_react_native/lottie-react-native.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = lottie_react_native; + PRODUCT_NAME = "lottie-react-native"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 790F487E56FAB4697A7C915B7C57DD78 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7FA983BAB0F89D8D78FC68569899CA57 /* RNImageCropPicker.release.xcconfig */; + buildSettings = { + CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/RNImageCropPicker"; + IBSC_MODULE = RNImageCropPicker; + INFOPLIST_FILE = "Target Support Files/RNImageCropPicker/ResourceBundle-QBImagePicker-RNImageCropPicker-Info.plist"; + PRODUCT_NAME = QBImagePicker; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + WRAPPER_EXTENSION = bundle; + }; + name = Release; + }; + 7BDA9F095428373BF46085F8CE23CF1C /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 1339A199AD548E37E548B5FF13637C1C /* OneSignal.release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + CLANG_ENABLE_OBJC_WEAK = NO; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 7C7B30D619DC4B45EB60E550A5B36669 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = C1C5FDA912FF9C9818908E64D95A7FA8 /* RNDeviceInfo.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/RNDeviceInfo/RNDeviceInfo-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RNDeviceInfo; + PRODUCT_NAME = RNDeviceInfo; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 7DA3F14B63EA18B86AAE893EB0EBC82B /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 2D53DDBD25FDD65F21B4583FABA8365C /* React-CoreModules.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-CoreModules/React-CoreModules-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = CoreModules; + PRODUCT_NAME = "React-CoreModules"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 81FB4A64D7B16B2F5A1BB46EB78045D3 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = A196505E27523E724B2278730FCC5C90 /* Pods-iLinkTests.debug.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + MACH_O_TYPE = staticlib; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 825B60F89D9634FEB0D86B77755EC5E4 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = C15259AB0B3AB6AEA22B3C6443C2C7B4 /* GCDWebServer.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/GCDWebServer/GCDWebServer-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = GCDWebServer; + PRODUCT_NAME = GCDWebServer; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 88FF38FA0FF0032195CCF8D3036ECF1C /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 750DD61945F119359A05FA682031EBF6 /* react-native-maps.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/react-native-maps/react-native-maps-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = react_native_maps; + PRODUCT_NAME = "react-native-maps"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 8AC7B86CABE1562EB7881B14666A1EAE /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = EF6310C75F540317D21E61D7B90B2E3E /* RCTRequired.release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 8D1BC93A8C52D4BA189CEB5581582602 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = E42CE18CFB6A66E2D5DC6A99B9019AE2 /* lottie-ios.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/lottie-ios/lottie-ios-prefix.pch"; + MODULEMAP_FILE = "Headers/Public/Lottie/lottie-ios.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = Lottie; + PRODUCT_NAME = "lottie-ios"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 8FE69785CC11C2115354AD0FF18818E3 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 654850F713E88C81441088B8D23B03E3 /* FBLazyVector.debug.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 906F11A3E8462581530C69D1F6C31921 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = FD7FC2ADD8CE2AC7EE1CCC4A62351079 /* RNVectorIcons.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/RNVectorIcons/RNVectorIcons-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RNVectorIcons; + PRODUCT_NAME = RNVectorIcons; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 91B37F165B4666CEB21256E9CCD283BE /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 6E1E723D7E6C58E0459B90E5BECBFA9C /* RNScreens.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/RNScreens/RNScreens-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RNScreens; + PRODUCT_NAME = RNScreens; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 930D086A5BC14075884E4FDA3D2B465F /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = F2FF3D182FC9F7CD13E56DCCBC4797B0 /* glog.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/glog/glog-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = glog; + PRODUCT_NAME = glog; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 95E7CD668F3A26B2686B7D51A737D11E /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = D8E4117E0554A9D0B67EDDF83A5F84A5 /* react-native-geolocation.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/react-native-geolocation/react-native-geolocation-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = react_native_geolocation; + PRODUCT_NAME = "react-native-geolocation"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 97288BB2C5A0CCAF0558A3424ECE91CF /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7FA983BAB0F89D8D78FC68569899CA57 /* RNImageCropPicker.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/RNImageCropPicker/RNImageCropPicker-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RNImageCropPicker; + PRODUCT_NAME = RNImageCropPicker; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 9B5F9C1A408157122361937847D81E74 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 500BF972EE71D4A432E0BE2B2CB1E84A /* React-RCTAnimation.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-RCTAnimation/React-RCTAnimation-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RCTAnimation; + PRODUCT_NAME = "React-RCTAnimation"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 9C4D8BD00035E230714A3E444CEE2A6B /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 74517B0BB959C1BBE44F26745988B490 /* React.release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 9D05D5707D50833285A53D810709787F /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 14277D093BA6E57B21F3F5C23769F9F9 /* RNSVG.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/RNSVG/RNSVG-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RNSVG; + PRODUCT_NAME = RNSVG; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + A107634D14D26271177FB78F3C4E74E0 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 8616ABE40A3061D587026113494C2618 /* react-native-maps.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/react-native-maps/react-native-maps-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = react_native_maps; + PRODUCT_NAME = "react-native-maps"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + A5FD71AC4D2FE2C2EF7EBF68BDEA8F3B /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 8E8AA25FF7D087CC342D47F774985E90 /* RNDateTimePicker.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/RNDateTimePicker/RNDateTimePicker-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RNDateTimePicker; + PRODUCT_NAME = RNDateTimePicker; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + A6EFDB510819A99F50A7130DAEA38124 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = D7ED0D50DDF170F2A79ED54AFB7DFC0F /* react-native-onesignal.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/react-native-onesignal/react-native-onesignal-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = react_native_onesignal; + PRODUCT_NAME = "react-native-onesignal"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + A8EC626EB0F1DCD70BA1E2E32D6FBDE9 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 11F9A14F55C29BBF70BD82D763354523 /* GCDWebServer.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/GCDWebServer/GCDWebServer-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = GCDWebServer; + PRODUCT_NAME = GCDWebServer; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + AA965DC7FE8161345B68FF58E3B5BA32 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = AAC2A01F5F36C0717DCE21E09A24E4E6 /* Folly.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/Folly/Folly-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = folly; + PRODUCT_NAME = Folly; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + AC344C4D43AFAC596507B3ACB9FF8E86 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 3C2F60F0D208A7548DC7A3FEFD91B723 /* react-native-viewpager.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/react-native-viewpager/react-native-viewpager-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = react_native_viewpager; + PRODUCT_NAME = "react-native-viewpager"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + AD837D34BD48ACF55A0BD26B0EE0D09D /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = EB443AA4618E950E9D17E53658B666BC /* lottie-ios.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/lottie-ios/lottie-ios-prefix.pch"; + MODULEMAP_FILE = "Headers/Public/Lottie/lottie-ios.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = Lottie; + PRODUCT_NAME = "lottie-ios"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + B4194D5BAEF863739A5F791FA8AB38D9 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = A7466C845EA140BAE35D9E53B1C7EC99 /* DoubleConversion.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/DoubleConversion/DoubleConversion-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = DoubleConversion; + PRODUCT_NAME = DoubleConversion; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + B5C9CDB161BF604D14080102AE0E35A6 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 1D5C453C991C187EF2FDB8346552C2CD /* React-jsinspector.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-jsinspector/React-jsinspector-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = jsinspector; + PRODUCT_NAME = "React-jsinspector"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + B636C2439308C88BB0E43FC23FAC7900 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = E116B26DFABB4085F334E1F8EAD7A516 /* React-RCTBlob.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-RCTBlob/React-RCTBlob-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RCTBlob; + PRODUCT_NAME = "React-RCTBlob"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + B754BB65267A8A781E3DA50BC07701D5 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 60604CA21F4AB12AF49A25D2AF741277 /* RNVectorIcons.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/RNVectorIcons/RNVectorIcons-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RNVectorIcons; + PRODUCT_NAME = RNVectorIcons; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + B76FF0C4D7E1B57AB47B54ECD5079ED5 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 26C0691B319A1C9A6AB3E15DE72B4933 /* SajjadBlurOverlay.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/SajjadBlurOverlay/SajjadBlurOverlay-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = SajjadBlurOverlay; + PRODUCT_NAME = SajjadBlurOverlay; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + BD3B37DEC394580EDB0401C3B0C1153B /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = B04E9E415AC269CC87EDB2B2E1BDDB99 /* RNI18n.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/RNI18n/RNI18n-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RNI18n; + PRODUCT_NAME = RNI18n; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + BEEE8816F744EBE6EEAEF51860C44C75 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 5956CB06C6247BF92C067BFD00B19A94 /* React-RCTLinking.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-RCTLinking/React-RCTLinking-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RCTLinking; + PRODUCT_NAME = "React-RCTLinking"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + C14B799A92A79DE54709D2C5A66AD97A /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 27BE41525AFC50F13874EB81CC9BC539 /* RNReanimated.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/RNReanimated/RNReanimated-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RNReanimated; + PRODUCT_NAME = RNReanimated; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + C1EC86D93D4E663E6DE7B1E705C4C378 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 8884C1EC5D194E52433AB80608948C55 /* OneSignal.debug.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + CLANG_ENABLE_OBJC_WEAK = NO; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + C24EFCC51B8594ABBFD45EE08925064E /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 2A98425762A78795D2216B5CB879221B /* React-RCTActionSheet.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-RCTActionSheet/React-RCTActionSheet-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RCTActionSheet; + PRODUCT_NAME = "React-RCTActionSheet"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + C4083EC10FE827C21C3A64BFFE83D697 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 5A6F6BC8440E14EE5F145FD6346E237A /* Pods-iLinkTests.release.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + MACH_O_TYPE = staticlib; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + C6C7D4C1379C7E711200D05A69478579 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 6D78E97C0F10F1A6278E621D595881D5 /* Yoga.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/Yoga/Yoga-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = yoga; + PRODUCT_NAME = Yoga; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + C9F9438835B6D00B0287FF9929431062 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = A50087B90E6D291FABA7B2B3A0EDE3C1 /* react-native-geolocation.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/react-native-geolocation/react-native-geolocation-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = react_native_geolocation; + PRODUCT_NAME = "react-native-geolocation"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + CA547D2C7E9A8A153DC2B27FBE00B112 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_PREPROCESSOR_DEFINITIONS = ( + "POD_CONFIGURATION_RELEASE=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + PRODUCT_NAME = "$(TARGET_NAME)"; + STRIP_INSTALLED_PRODUCT = NO; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + SWIFT_VERSION = 5.0; + SYMROOT = "${SRCROOT}/../build"; + }; + name = Release; + }; + CAA317B062B40B9FB229696302F5EC9C /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9F36C0AA8E97CB28F5682F8394B1C7EC /* RNI18n.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/RNI18n/RNI18n-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RNI18n; + PRODUCT_NAME = RNI18n; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + CB3F1CE2CC5C9F776A620687DD480727 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = C2FA7EB913338D7FFB691DDFD8AC4E74 /* SajjadBlurOverlay.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/SajjadBlurOverlay/SajjadBlurOverlay-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = SajjadBlurOverlay; + PRODUCT_NAME = SajjadBlurOverlay; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + CC9B9E4C0512C4650AB583783E52F53F /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 992DE309283120988D04BD3653D5C0BB /* TOCropViewController.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/TOCropViewController/TOCropViewController-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = TOCropViewController; + PRODUCT_NAME = TOCropViewController; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + D0451971EC5248C369D6D80D7B8D4881 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = C395DCAC96B35C2DB0262500AE8F7AA1 /* React-RCTBlob.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-RCTBlob/React-RCTBlob-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RCTBlob; + PRODUCT_NAME = "React-RCTBlob"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + D183D1E56C7F823F7266B00B0DEDBF19 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 5754F0D9EC0DA9B93A24818A1753B4D8 /* React-RCTVibration.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-RCTVibration/React-RCTVibration-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RCTVibration; + PRODUCT_NAME = "React-RCTVibration"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + D2DFAD1E9A657893FF9DF3EB06CEA766 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7A77B97619DE3D94F3AF5B9B10D1341A /* Pods-iLink-tvOSTests.debug.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + MACH_O_TYPE = staticlib; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + D83E5F43CF12D56FEC512265DE5BBC15 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 28DECD859633FA4BBE1CADA231BA4614 /* React-RCTSettings.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-RCTSettings/React-RCTSettings-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RCTSettings; + PRODUCT_NAME = "React-RCTSettings"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + DD44A2E8EE4FCC3DF7BA669FC60E0F5B /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = D3C1A1E0CB4B37C17A2CD769053FB56A /* React-RCTImage.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-RCTImage/React-RCTImage-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RCTImage; + PRODUCT_NAME = "React-RCTImage"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + DDDCE2EAC42E3287589FAB89FC7927EA /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 5E9FA85E174CC1111C1F0121CA659BF8 /* React-RCTActionSheet.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-RCTActionSheet/React-RCTActionSheet-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RCTActionSheet; + PRODUCT_NAME = "React-RCTActionSheet"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + DE6583D7BBEAC58966FDC51A1C68DCF4 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = A69E9D6519745D755D884D0A5714E5DB /* Pods-iLink-tvOSTests.release.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + MACH_O_TYPE = staticlib; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + DEAE86A0E4FC2A0616A7B705C3905DEF /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 536CA5AE29E2C4F356EC4433357DBFB5 /* RNCAsyncStorage.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/RNCAsyncStorage/RNCAsyncStorage-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RNCAsyncStorage; + PRODUCT_NAME = RNCAsyncStorage; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + E4C90E0278507E32631C25748975CDF0 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7EC8D51F9963269914CB67970F3AF6E8 /* React-Core.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-Core/React-Core-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = React; + PRODUCT_NAME = "React-Core"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + E62CD5F00D5E5F22D6A9D0F43E5CF7E1 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 5FE6D0C44F9602F006C039AFA50D69A9 /* RNImageCropPicker.debug.xcconfig */; + buildSettings = { + CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/RNImageCropPicker"; + IBSC_MODULE = RNImageCropPicker; + INFOPLIST_FILE = "Target Support Files/RNImageCropPicker/ResourceBundle-QBImagePicker-RNImageCropPicker-Info.plist"; + PRODUCT_NAME = QBImagePicker; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + WRAPPER_EXTENSION = bundle; + }; + name = Debug; + }; + E8DBB5C1E41952087360C158A35AC7FC /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 2F53E5FC0AE7A7F04ADD59FBE3515F7A /* ReactCommon.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/ReactCommon/ReactCommon-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = ReactCommon; + PRODUCT_NAME = ReactCommon; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + EC26C4A3F0585269FA242D0F9AACA280 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9EEE24787E5F8DF7549B7492FC1B9CE1 /* React-jsiexecutor.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-jsiexecutor/React-jsiexecutor-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = jsireact; + PRODUCT_NAME = "React-jsiexecutor"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + EC8A3BBA9C516C8FA5CF90D4EF5C5E1D /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 64E7DDD956AB1E2A092944B6AF63B511 /* RealmJS.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/RealmJS/RealmJS-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RealmJS; + PRODUCT_NAME = RealmJS; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + EFD5B2CC4FF248E2FD7DCA3E70BAE58A /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 03247490292940C767696C1D0BCA9F4D /* React-RCTAnimation.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-RCTAnimation/React-RCTAnimation-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RCTAnimation; + PRODUCT_NAME = "React-RCTAnimation"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + F0FB61D8AEB2DFD54E1C2679FAFC2C48 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 340851F01A23D1959B610F57490EF4A6 /* React-jsi.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-jsi/React-jsi-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = jsi; + PRODUCT_NAME = "React-jsi"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + F14D7DEBE0E730CDE364B258E79223F0 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 3948AB7C10CF3300C13AC6C89D489D0F /* React-RCTImage.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-RCTImage/React-RCTImage-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RCTImage; + PRODUCT_NAME = "React-RCTImage"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + F2CED848254BE9363FD2E8A642080463 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 53B371F807E072436AC7A392043F3AFB /* React-RCTText.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-RCTText/React-RCTText-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RCTText; + PRODUCT_NAME = "React-RCTText"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + F2FEF04DEAB0F115959D3D3B8C7E18B9 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = D49556D1A45F748A9263810CCA5EB333 /* Pods-iLink-tvOS.debug.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + MACH_O_TYPE = staticlib; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + F52DB8156CAB39099D8D222E090ADEE6 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = D3CD642B9F233A5DB7B7690E3482C53F /* React-CoreModules.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-CoreModules/React-CoreModules-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = CoreModules; + PRODUCT_NAME = "React-CoreModules"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + FC26FD14FD0995E6A8E47FE5FF96993D /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = AC2606995BC22B4A0253D33EFB45917D /* RNGestureHandler.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/RNGestureHandler/RNGestureHandler-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RNGestureHandler; + PRODUCT_NAME = RNGestureHandler; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + FF4D6A332362C74281AF1DC5D5AC7B86 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 66105FE56A71FB57AA18EF679C63DF3E /* React-RCTNetwork.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/React-RCTNetwork/React-RCTNetwork-prefix.pch"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = RCTNetwork; + PRODUCT_NAME = "React-RCTNetwork"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + FF70DBE1AECCC9100C30B23946D67B93 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 992DE309283120988D04BD3653D5C0BB /* TOCropViewController.release.xcconfig */; + buildSettings = { + CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/TOCropViewController"; + IBSC_MODULE = TOCropViewController; + INFOPLIST_FILE = "Target Support Files/TOCropViewController/ResourceBundle-TOCropViewControllerBundle-TOCropViewController-Info.plist"; + PRODUCT_NAME = TOCropViewControllerBundle; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + WRAPPER_EXTENSION = bundle; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 0569CCDF3B3B687CF01EE8D4001AA7CC /* Build configuration list for PBXNativeTarget "DoubleConversion" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + B4194D5BAEF863739A5F791FA8AB38D9 /* Debug */, + 495F5F0790371A404D655D14C408D7B4 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 06159AC4624D1EA0A58B3DCDE7280FE4 /* Build configuration list for PBXNativeTarget "react-native-maps" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 88FF38FA0FF0032195CCF8D3036ECF1C /* Debug */, + A107634D14D26271177FB78F3C4E74E0 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 084A8D46EB9AE1772BD9B61D952EB1A1 /* Build configuration list for PBXNativeTarget "RealmJS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 066707EF504FC06AEE00481711202ACF /* Debug */, + EC8A3BBA9C516C8FA5CF90D4EF5C5E1D /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 09A5A4D585F2B2C7D977A4F1E5213117 /* Build configuration list for PBXAggregateTarget "OneSignal" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C1EC86D93D4E663E6DE7B1E705C4C378 /* Debug */, + 7BDA9F095428373BF46085F8CE23CF1C /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 1A388CE27E2415C2B0611A489F1D8D21 /* Build configuration list for PBXNativeTarget "react-native-onesignal" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 09216DEC7F43C010C90645096F387178 /* Debug */, + A6EFDB510819A99F50A7130DAEA38124 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 1E8FC81AAA31E5F46D84ADB6B651959F /* Build configuration list for PBXNativeTarget "lottie-ios" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + AD837D34BD48ACF55A0BD26B0EE0D09D /* Debug */, + 8D1BC93A8C52D4BA189CEB5581582602 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 1F3BF54DB6EBEA5E14D9D1F3BF65E58A /* Build configuration list for PBXNativeTarget "React-RCTSettings" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 4B4A8F7680DB5313A5F415DC0AA729E0 /* Debug */, + D83E5F43CF12D56FEC512265DE5BBC15 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 25CF9429A6274B78CF9BFE9B7BD51E66 /* Build configuration list for PBXNativeTarget "Yoga" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C6C7D4C1379C7E711200D05A69478579 /* Debug */, + 499111DC147F8AAD523555F950C2298C /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 260286F8CDC3082292AF1EC5E84D7B1A /* Build configuration list for PBXNativeTarget "React-jsi" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 6D94350F15036EBC3E3F01D2BFA56A43 /* Debug */, + F0FB61D8AEB2DFD54E1C2679FAFC2C48 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 2630FCCE0CF3D0F8129895F34C5C20A5 /* Build configuration list for PBXNativeTarget "glog" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 60A4D6E8DAEF7D1895CE72129E4ECC3E /* Debug */, + 930D086A5BC14075884E4FDA3D2B465F /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 2CE2085BD444380A0B3845856B135575 /* Build configuration list for PBXNativeTarget "lottie-react-native" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 773640D7A1547B9EA7BF7A6BBB2D654E /* Debug */, + 135BCE31B15D54A4A93D097DB35A9D2B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 2DE072C1448EF3C350A1935DCC3FB42E /* Build configuration list for PBXNativeTarget "Pods-iLinkTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 81FB4A64D7B16B2F5A1BB46EB78045D3 /* Debug */, + C4083EC10FE827C21C3A64BFFE83D697 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 33C98D74BEF8B01686CA92D5B7821855 /* Build configuration list for PBXNativeTarget "React-RCTBlob" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + D0451971EC5248C369D6D80D7B8D4881 /* Debug */, + B636C2439308C88BB0E43FC23FAC7900 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 3C59786F965CDB9AD0B6E10366D86AAE /* Build configuration list for PBXNativeTarget "RNCAsyncStorage" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 574831E7B0F5D1B1E9573E65AB7DA826 /* Debug */, + DEAE86A0E4FC2A0616A7B705C3905DEF /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 3D58581B81DC14CB55F12E49CD8E9ED4 /* Build configuration list for PBXNativeTarget "React-Core" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 226EC9D8E34EF56C02D63ED764959A22 /* Debug */, + E4C90E0278507E32631C25748975CDF0 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 40835611B297534D1CDAB478967E6F62 /* Build configuration list for PBXNativeTarget "Folly" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 31862F575AF301291452B48B9EC5EE66 /* Debug */, + AA965DC7FE8161345B68FF58E3B5BA32 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 4246E3C6364D2A7270FA7A1B253B12D4 /* Build configuration list for PBXAggregateTarget "RCTRequired" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 5F4A64D48121F4770868CE80E5760013 /* Debug */, + 8AC7B86CABE1562EB7881B14666A1EAE /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 25AD9454612BF454A1E3DC4CD4FA8C6D /* Debug */, + CA547D2C7E9A8A153DC2B27FBE00B112 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 49554086F813AA8A691B6858C97A35AA /* Build configuration list for PBXNativeTarget "ReactCommon" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 4C676D480B5FF6E849E24E4DFF894C6E /* Debug */, + E8DBB5C1E41952087360C158A35AC7FC /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 4FE30E95E6BBADA68EC1AD80F445897D /* Build configuration list for PBXNativeTarget "React-CoreModules" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + F52DB8156CAB39099D8D222E090ADEE6 /* Debug */, + 7DA3F14B63EA18B86AAE893EB0EBC82B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 50106DCB15C0DABD745DB9CFB583F67B /* Build configuration list for PBXNativeTarget "React-RCTAnimation" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 9B5F9C1A408157122361937847D81E74 /* Debug */, + EFD5B2CC4FF248E2FD7DCA3E70BAE58A /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 50323F408690E1D830628F63DBB65E38 /* Build configuration list for PBXNativeTarget "RNI18n" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + CAA317B062B40B9FB229696302F5EC9C /* Debug */, + BD3B37DEC394580EDB0401C3B0C1153B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 5A501EF9B8D46A2DADEEC41315D3EB2B /* Build configuration list for PBXNativeTarget "RNReanimated" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 315B1AD14699FE87519F096F861547CC /* Debug */, + C14B799A92A79DE54709D2C5A66AD97A /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 5EA6F3272FB779C9A419FE16843B4D7F /* Build configuration list for PBXNativeTarget "TOCropViewController-TOCropViewControllerBundle" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 67564669417D020EAD965A9E763BEAAF /* Debug */, + FF70DBE1AECCC9100C30B23946D67B93 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 5FF0B1F48B08B3D28D091B31F49B9687 /* Build configuration list for PBXNativeTarget "RNImageCropPicker-QBImagePicker" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + E62CD5F00D5E5F22D6A9D0F43E5CF7E1 /* Debug */, + 790F487E56FAB4697A7C915B7C57DD78 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 611882B4FC76DDB90E3FE11E69E82A1D /* Build configuration list for PBXAggregateTarget "FBLazyVector" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 8FE69785CC11C2115354AD0FF18818E3 /* Debug */, + 4CE34188A9A187191B1A66EEF5F2EDDA /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 67B00AB57397D28780609603C7C569FA /* Build configuration list for PBXNativeTarget "React-jsinspector" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + B5C9CDB161BF604D14080102AE0E35A6 /* Debug */, + 4E183DBABF92E377C8297C587DF5FDA0 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 756AE01E350DCC118F4680D339628219 /* Build configuration list for PBXNativeTarget "RNVectorIcons" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + B754BB65267A8A781E3DA50BC07701D5 /* Debug */, + 906F11A3E8462581530C69D1F6C31921 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 7FD065008E2619841ADD842DE6BAFE3A /* Build configuration list for PBXNativeTarget "SajjadBlurOverlay" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + CB3F1CE2CC5C9F776A620687DD480727 /* Debug */, + B76FF0C4D7E1B57AB47B54ECD5079ED5 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 8138778F4E5F60EB64FF159FC062CB1E /* Build configuration list for PBXNativeTarget "React-RCTNetwork" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + FF4D6A332362C74281AF1DC5D5AC7B86 /* Debug */, + 7118730F38EFC62CA4D408380A5D447C /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 8345940DA35CC18E0ABFDC48CF19D86C /* Build configuration list for PBXNativeTarget "GCDWebServer" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + A8EC626EB0F1DCD70BA1E2E32D6FBDE9 /* Debug */, + 825B60F89D9634FEB0D86B77755EC5E4 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 8A52733F20B4602083AA214D3752546F /* Build configuration list for PBXNativeTarget "React-cxxreact" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 4AF4C70B0FA90BD627911D36A4D14776 /* Debug */, + 20813E47A6C7B5BEE52EAD9162A31601 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 91C6E842CB51DAB298E3371335A0C1A9 /* Build configuration list for PBXNativeTarget "TOCropViewController" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 74AA2DE97CE1CC790D429DD43B252385 /* Debug */, + CC9B9E4C0512C4650AB583783E52F53F /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 96F8CF61079507D1E301962AD6B4987F /* Build configuration list for PBXNativeTarget "RCTTypeSafety" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 35B89D2435440410E39EA33EF1FF8BDF /* Debug */, + 3CE9741FAD073C44D25E3352EEE1F30B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 9D45B5B6658DA1D9E528235C878DF9FD /* Build configuration list for PBXNativeTarget "Pods-iLink-tvOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + F2FEF04DEAB0F115959D3D3B8C7E18B9 /* Debug */, + 265F14B64F5341741B5FFE2FCABE5277 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + A2927360D23A81228383945FFED50E70 /* Build configuration list for PBXNativeTarget "react-native-viewpager" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 00CED71C008B784DC57FD044DBE32070 /* Debug */, + AC344C4D43AFAC596507B3ACB9FF8E86 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + AE6C8C5152DF601DE26FA629C5A95295 /* Build configuration list for PBXNativeTarget "React-RCTText" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + F2CED848254BE9363FD2E8A642080463 /* Debug */, + 5710701DBCF44D46892073D35648F76B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + B4F727B0306688E936B7C9CC2ED16BCD /* Build configuration list for PBXNativeTarget "React-RCTLinking" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + BEEE8816F744EBE6EEAEF51860C44C75 /* Debug */, + 765041642FAE9AEBA5C14C4F3C747B03 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + B8E044861FC075BB715B51361725E7F7 /* Build configuration list for PBXNativeTarget "RNImageCropPicker" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 00F72F929CFB586785BF66894BD61278 /* Debug */, + 97288BB2C5A0CCAF0558A3424ECE91CF /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + BE516C06A30F2850BACACB9FFB99C218 /* Build configuration list for PBXNativeTarget "React-RCTActionSheet" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + DDDCE2EAC42E3287589FAB89FC7927EA /* Debug */, + C24EFCC51B8594ABBFD45EE08925064E /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + BEBDE1CB93EC2F2BA7BFD5E2B30EDBB0 /* Build configuration list for PBXNativeTarget "RNSVG" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 2D8ECAE815D326E25F771EAD9012230D /* Debug */, + 9D05D5707D50833285A53D810709787F /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + C6CC9F04EA66F9C5ECCAD0E7BD040E1D /* Build configuration list for PBXNativeTarget "Pods-iLink" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 453FA41041762F622BF1AC40F0F17C31 /* Debug */, + 5FD19A2987ACE318E744A5B9F3D534A2 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + C71BF0ACAF9820C852857E470FFD817B /* Build configuration list for PBXNativeTarget "RNGestureHandler" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + FC26FD14FD0995E6A8E47FE5FF96993D /* Debug */, + 3D0890A97A7EDE498576741E9EC1194C /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + D024F943D0F41D34A844CEE64C1CA7AD /* Build configuration list for PBXNativeTarget "RNScreens" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 91B37F165B4666CEB21256E9CCD283BE /* Debug */, + 0FA9079395EC36104A16546C209AAD41 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + D1FB4648E3FC4B715EC3534AAC62215E /* Build configuration list for PBXNativeTarget "React-jsiexecutor" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + EC26C4A3F0585269FA242D0F9AACA280 /* Debug */, + 47FCD2EC2D2E10BCA6718FDE268090EF /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + D42C301AEFE890A251594B7F81096051 /* Build configuration list for PBXNativeTarget "react-native-geolocation" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 95E7CD668F3A26B2686B7D51A737D11E /* Debug */, + C9F9438835B6D00B0287FF9929431062 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + D8DE426D7E73F5AD443187FE6599D1B3 /* Build configuration list for PBXNativeTarget "React-RCTVibration" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 6AB0BDAB2436BC636282C16EF90B7990 /* Debug */, + D183D1E56C7F823F7266B00B0DEDBF19 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + DA2CAE114A571A2644458B63C8F865A1 /* Build configuration list for PBXNativeTarget "RNDateTimePicker" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 45E3221D4E3E0D904120218708541AA2 /* Debug */, + A5FD71AC4D2FE2C2EF7EBF68BDEA8F3B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + E2F4A30F6A3F83B759469E0308985549 /* Build configuration list for PBXNativeTarget "Pods-iLink-tvOSTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + D2DFAD1E9A657893FF9DF3EB06CEA766 /* Debug */, + DE6583D7BBEAC58966FDC51A1C68DCF4 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + E31EA972DB416DAC8F4A1660426C7DCE /* Build configuration list for PBXNativeTarget "FBReactNativeSpec" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 4A50705F40D6329DC9DE905F414F909A /* Debug */, + 1677B62C045BF53729681B01FCC21ACB /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + E404E3E8E818E37A82A8F2FFFB6360FF /* Build configuration list for PBXNativeTarget "React-RCTImage" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + F14D7DEBE0E730CDE364B258E79223F0 /* Debug */, + DD44A2E8EE4FCC3DF7BA669FC60E0F5B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + E856E65BE4166C1CE8DA7D461B31E335 /* Build configuration list for PBXNativeTarget "react-native-camera" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 06475A3C7CB4FECABE9E5EC3C575BC60 /* Debug */, + 138A336FD88B4AB696CEF9D6045548BA /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + F66B4191310240CA8263604EAE67F3E4 /* Build configuration list for PBXAggregateTarget "React" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 715D721624D3D0E41F97DD5FE22B4B37 /* Debug */, + 9C4D8BD00035E230714A3E444CEE2A6B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + FA9F1BDB86E30683080FA62F0B96C10C /* Build configuration list for PBXNativeTarget "RNDeviceInfo" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 3278A062E754704377F9387B5672ED0C /* Debug */, + 7C7B30D619DC4B45EB60E550A5B36669 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + FD6D84E289FBA19BEF205B7B6EACE66A /* Build configuration list for PBXAggregateTarget "boost-for-react-native" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 03972BF56DB6A39122299CCC2477458F /* Debug */, + 632C5324CEE06A1B4CBFDDCFD5EAD76A /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = BFDFE7DC352907FC980B868725387E98 /* Project object */; +} diff --git a/ios/Pods/Target Support Files/Pods-iLink-tvOS/Pods-iLink-tvOS.debug.xcconfig b/ios/Pods/Target Support Files/Pods-iLink-tvOS/Pods-iLink-tvOS.debug.xcconfig new file mode 100644 index 00000000..99b0c077 --- /dev/null +++ b/ios/Pods/Target Support Files/Pods-iLink-tvOS/Pods-iLink-tvOS.debug.xcconfig @@ -0,0 +1,9 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DoubleConversion" "${PODS_ROOT}/Headers/Public/FBLazyVector" "${PODS_ROOT}/Headers/Public/FBReactNativeSpec" "${PODS_ROOT}/Headers/Public/GCDWebServer" "${PODS_ROOT}/Headers/Public/RCTRequired" "${PODS_ROOT}/Headers/Public/RCTTypeSafety" "${PODS_ROOT}/Headers/Public/RNCAsyncStorage" "${PODS_ROOT}/Headers/Public/RNDateTimePicker" "${PODS_ROOT}/Headers/Public/RNDeviceInfo" "${PODS_ROOT}/Headers/Public/RNGestureHandler" "${PODS_ROOT}/Headers/Public/RNI18n" "${PODS_ROOT}/Headers/Public/RNImageCropPicker" "${PODS_ROOT}/Headers/Public/RNReanimated" "${PODS_ROOT}/Headers/Public/RNSVG" "${PODS_ROOT}/Headers/Public/RNScreens" "${PODS_ROOT}/Headers/Public/RNVectorIcons" "${PODS_ROOT}/Headers/Public/React-Core" "${PODS_ROOT}/Headers/Public/React-RCTBlob" "${PODS_ROOT}/Headers/Public/React-RCTText" "${PODS_ROOT}/Headers/Public/React-cxxreact" "${PODS_ROOT}/Headers/Public/React-jsi" "${PODS_ROOT}/Headers/Public/React-jsiexecutor" "${PODS_ROOT}/Headers/Public/React-jsinspector" "${PODS_ROOT}/Headers/Public/ReactCommon" "${PODS_ROOT}/Headers/Public/SajjadBlurOverlay" "${PODS_ROOT}/Headers/Public/TOCropViewController" "${PODS_ROOT}/Headers/Public/Yoga" "${PODS_ROOT}/Headers/Public/glog" "${PODS_ROOT}/Headers/Public/lottie-react-native" "${PODS_ROOT}/Headers/Public/react-native-camera" "${PODS_ROOT}/Headers/Public/react-native-geolocation" "${PODS_ROOT}/Headers/Public/react-native-maps" "${PODS_ROOT}/Headers/Public/react-native-onesignal" "${PODS_ROOT}/Headers/Public/react-native-viewpager" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_PODFILE_DIR_PATH = ${SRCROOT}/. +PODS_ROOT = ${SRCROOT}/Pods +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/ios/Pods/Target Support Files/Pods-iLink-tvOS/Pods-iLink-tvOS.release.xcconfig b/ios/Pods/Target Support Files/Pods-iLink-tvOS/Pods-iLink-tvOS.release.xcconfig new file mode 100644 index 00000000..99b0c077 --- /dev/null +++ b/ios/Pods/Target Support Files/Pods-iLink-tvOS/Pods-iLink-tvOS.release.xcconfig @@ -0,0 +1,9 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DoubleConversion" "${PODS_ROOT}/Headers/Public/FBLazyVector" "${PODS_ROOT}/Headers/Public/FBReactNativeSpec" "${PODS_ROOT}/Headers/Public/GCDWebServer" "${PODS_ROOT}/Headers/Public/RCTRequired" "${PODS_ROOT}/Headers/Public/RCTTypeSafety" "${PODS_ROOT}/Headers/Public/RNCAsyncStorage" "${PODS_ROOT}/Headers/Public/RNDateTimePicker" "${PODS_ROOT}/Headers/Public/RNDeviceInfo" "${PODS_ROOT}/Headers/Public/RNGestureHandler" "${PODS_ROOT}/Headers/Public/RNI18n" "${PODS_ROOT}/Headers/Public/RNImageCropPicker" "${PODS_ROOT}/Headers/Public/RNReanimated" "${PODS_ROOT}/Headers/Public/RNSVG" "${PODS_ROOT}/Headers/Public/RNScreens" "${PODS_ROOT}/Headers/Public/RNVectorIcons" "${PODS_ROOT}/Headers/Public/React-Core" "${PODS_ROOT}/Headers/Public/React-RCTBlob" "${PODS_ROOT}/Headers/Public/React-RCTText" "${PODS_ROOT}/Headers/Public/React-cxxreact" "${PODS_ROOT}/Headers/Public/React-jsi" "${PODS_ROOT}/Headers/Public/React-jsiexecutor" "${PODS_ROOT}/Headers/Public/React-jsinspector" "${PODS_ROOT}/Headers/Public/ReactCommon" "${PODS_ROOT}/Headers/Public/SajjadBlurOverlay" "${PODS_ROOT}/Headers/Public/TOCropViewController" "${PODS_ROOT}/Headers/Public/Yoga" "${PODS_ROOT}/Headers/Public/glog" "${PODS_ROOT}/Headers/Public/lottie-react-native" "${PODS_ROOT}/Headers/Public/react-native-camera" "${PODS_ROOT}/Headers/Public/react-native-geolocation" "${PODS_ROOT}/Headers/Public/react-native-maps" "${PODS_ROOT}/Headers/Public/react-native-onesignal" "${PODS_ROOT}/Headers/Public/react-native-viewpager" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_PODFILE_DIR_PATH = ${SRCROOT}/. +PODS_ROOT = ${SRCROOT}/Pods +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/ios/Pods/Target Support Files/Pods-iLink-tvOSTests/Pods-iLink-tvOSTests.debug.xcconfig b/ios/Pods/Target Support Files/Pods-iLink-tvOSTests/Pods-iLink-tvOSTests.debug.xcconfig new file mode 100644 index 00000000..99b0c077 --- /dev/null +++ b/ios/Pods/Target Support Files/Pods-iLink-tvOSTests/Pods-iLink-tvOSTests.debug.xcconfig @@ -0,0 +1,9 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DoubleConversion" "${PODS_ROOT}/Headers/Public/FBLazyVector" "${PODS_ROOT}/Headers/Public/FBReactNativeSpec" "${PODS_ROOT}/Headers/Public/GCDWebServer" "${PODS_ROOT}/Headers/Public/RCTRequired" "${PODS_ROOT}/Headers/Public/RCTTypeSafety" "${PODS_ROOT}/Headers/Public/RNCAsyncStorage" "${PODS_ROOT}/Headers/Public/RNDateTimePicker" "${PODS_ROOT}/Headers/Public/RNDeviceInfo" "${PODS_ROOT}/Headers/Public/RNGestureHandler" "${PODS_ROOT}/Headers/Public/RNI18n" "${PODS_ROOT}/Headers/Public/RNImageCropPicker" "${PODS_ROOT}/Headers/Public/RNReanimated" "${PODS_ROOT}/Headers/Public/RNSVG" "${PODS_ROOT}/Headers/Public/RNScreens" "${PODS_ROOT}/Headers/Public/RNVectorIcons" "${PODS_ROOT}/Headers/Public/React-Core" "${PODS_ROOT}/Headers/Public/React-RCTBlob" "${PODS_ROOT}/Headers/Public/React-RCTText" "${PODS_ROOT}/Headers/Public/React-cxxreact" "${PODS_ROOT}/Headers/Public/React-jsi" "${PODS_ROOT}/Headers/Public/React-jsiexecutor" "${PODS_ROOT}/Headers/Public/React-jsinspector" "${PODS_ROOT}/Headers/Public/ReactCommon" "${PODS_ROOT}/Headers/Public/SajjadBlurOverlay" "${PODS_ROOT}/Headers/Public/TOCropViewController" "${PODS_ROOT}/Headers/Public/Yoga" "${PODS_ROOT}/Headers/Public/glog" "${PODS_ROOT}/Headers/Public/lottie-react-native" "${PODS_ROOT}/Headers/Public/react-native-camera" "${PODS_ROOT}/Headers/Public/react-native-geolocation" "${PODS_ROOT}/Headers/Public/react-native-maps" "${PODS_ROOT}/Headers/Public/react-native-onesignal" "${PODS_ROOT}/Headers/Public/react-native-viewpager" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_PODFILE_DIR_PATH = ${SRCROOT}/. +PODS_ROOT = ${SRCROOT}/Pods +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/ios/Pods/Target Support Files/Pods-iLink-tvOSTests/Pods-iLink-tvOSTests.release.xcconfig b/ios/Pods/Target Support Files/Pods-iLink-tvOSTests/Pods-iLink-tvOSTests.release.xcconfig new file mode 100644 index 00000000..99b0c077 --- /dev/null +++ b/ios/Pods/Target Support Files/Pods-iLink-tvOSTests/Pods-iLink-tvOSTests.release.xcconfig @@ -0,0 +1,9 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DoubleConversion" "${PODS_ROOT}/Headers/Public/FBLazyVector" "${PODS_ROOT}/Headers/Public/FBReactNativeSpec" "${PODS_ROOT}/Headers/Public/GCDWebServer" "${PODS_ROOT}/Headers/Public/RCTRequired" "${PODS_ROOT}/Headers/Public/RCTTypeSafety" "${PODS_ROOT}/Headers/Public/RNCAsyncStorage" "${PODS_ROOT}/Headers/Public/RNDateTimePicker" "${PODS_ROOT}/Headers/Public/RNDeviceInfo" "${PODS_ROOT}/Headers/Public/RNGestureHandler" "${PODS_ROOT}/Headers/Public/RNI18n" "${PODS_ROOT}/Headers/Public/RNImageCropPicker" "${PODS_ROOT}/Headers/Public/RNReanimated" "${PODS_ROOT}/Headers/Public/RNSVG" "${PODS_ROOT}/Headers/Public/RNScreens" "${PODS_ROOT}/Headers/Public/RNVectorIcons" "${PODS_ROOT}/Headers/Public/React-Core" "${PODS_ROOT}/Headers/Public/React-RCTBlob" "${PODS_ROOT}/Headers/Public/React-RCTText" "${PODS_ROOT}/Headers/Public/React-cxxreact" "${PODS_ROOT}/Headers/Public/React-jsi" "${PODS_ROOT}/Headers/Public/React-jsiexecutor" "${PODS_ROOT}/Headers/Public/React-jsinspector" "${PODS_ROOT}/Headers/Public/ReactCommon" "${PODS_ROOT}/Headers/Public/SajjadBlurOverlay" "${PODS_ROOT}/Headers/Public/TOCropViewController" "${PODS_ROOT}/Headers/Public/Yoga" "${PODS_ROOT}/Headers/Public/glog" "${PODS_ROOT}/Headers/Public/lottie-react-native" "${PODS_ROOT}/Headers/Public/react-native-camera" "${PODS_ROOT}/Headers/Public/react-native-geolocation" "${PODS_ROOT}/Headers/Public/react-native-maps" "${PODS_ROOT}/Headers/Public/react-native-onesignal" "${PODS_ROOT}/Headers/Public/react-native-viewpager" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_PODFILE_DIR_PATH = ${SRCROOT}/. +PODS_ROOT = ${SRCROOT}/Pods +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/ios/Pods/Target Support Files/Pods-iLink/Pods-iLink.debug.xcconfig b/ios/Pods/Target Support Files/Pods-iLink/Pods-iLink.debug.xcconfig new file mode 100644 index 00000000..88fe8a9a --- /dev/null +++ b/ios/Pods/Target Support Files/Pods-iLink/Pods-iLink.debug.xcconfig @@ -0,0 +1,16 @@ +ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/OneSignal/iOS_SDK/OneSignalSDK/Framework" +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DoubleConversion" "${PODS_ROOT}/Headers/Public/FBLazyVector" "${PODS_ROOT}/Headers/Public/FBReactNativeSpec" "${PODS_ROOT}/Headers/Public/GCDWebServer" "${PODS_ROOT}/Headers/Public/RCTRequired" "${PODS_ROOT}/Headers/Public/RCTTypeSafety" "${PODS_ROOT}/Headers/Public/RNCAsyncStorage" "${PODS_ROOT}/Headers/Public/RNDateTimePicker" "${PODS_ROOT}/Headers/Public/RNDeviceInfo" "${PODS_ROOT}/Headers/Public/RNGestureHandler" "${PODS_ROOT}/Headers/Public/RNI18n" "${PODS_ROOT}/Headers/Public/RNImageCropPicker" "${PODS_ROOT}/Headers/Public/RNReanimated" "${PODS_ROOT}/Headers/Public/RNSVG" "${PODS_ROOT}/Headers/Public/RNScreens" "${PODS_ROOT}/Headers/Public/RNVectorIcons" "${PODS_ROOT}/Headers/Public/React-Core" "${PODS_ROOT}/Headers/Public/React-RCTBlob" "${PODS_ROOT}/Headers/Public/React-RCTText" "${PODS_ROOT}/Headers/Public/React-cxxreact" "${PODS_ROOT}/Headers/Public/React-jsi" "${PODS_ROOT}/Headers/Public/React-jsiexecutor" "${PODS_ROOT}/Headers/Public/React-jsinspector" "${PODS_ROOT}/Headers/Public/ReactCommon" "${PODS_ROOT}/Headers/Public/SajjadBlurOverlay" "${PODS_ROOT}/Headers/Public/TOCropViewController" "${PODS_ROOT}/Headers/Public/Yoga" "${PODS_ROOT}/Headers/Public/glog" "${PODS_ROOT}/Headers/Public/lottie-react-native" "${PODS_ROOT}/Headers/Public/react-native-camera" "${PODS_ROOT}/Headers/Public/react-native-geolocation" "${PODS_ROOT}/Headers/Public/react-native-maps" "${PODS_ROOT}/Headers/Public/react-native-onesignal" "${PODS_ROOT}/Headers/Public/react-native-viewpager" "$(PODS_ROOT)/Headers/Private/React-Core" +LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/DoubleConversion" "${PODS_CONFIGURATION_BUILD_DIR}/FBReactNativeSpec" "${PODS_CONFIGURATION_BUILD_DIR}/Folly" "${PODS_CONFIGURATION_BUILD_DIR}/GCDWebServer" "${PODS_CONFIGURATION_BUILD_DIR}/RCTTypeSafety" "${PODS_CONFIGURATION_BUILD_DIR}/RNCAsyncStorage" "${PODS_CONFIGURATION_BUILD_DIR}/RNDateTimePicker" "${PODS_CONFIGURATION_BUILD_DIR}/RNDeviceInfo" "${PODS_CONFIGURATION_BUILD_DIR}/RNGestureHandler" "${PODS_CONFIGURATION_BUILD_DIR}/RNI18n" "${PODS_CONFIGURATION_BUILD_DIR}/RNImageCropPicker" "${PODS_CONFIGURATION_BUILD_DIR}/RNReanimated" "${PODS_CONFIGURATION_BUILD_DIR}/RNSVG" "${PODS_CONFIGURATION_BUILD_DIR}/RNScreens" "${PODS_CONFIGURATION_BUILD_DIR}/RNVectorIcons" "${PODS_CONFIGURATION_BUILD_DIR}/React-Core" "${PODS_CONFIGURATION_BUILD_DIR}/React-CoreModules" "${PODS_CONFIGURATION_BUILD_DIR}/React-RCTActionSheet" "${PODS_CONFIGURATION_BUILD_DIR}/React-RCTAnimation" "${PODS_CONFIGURATION_BUILD_DIR}/React-RCTBlob" "${PODS_CONFIGURATION_BUILD_DIR}/React-RCTImage" "${PODS_CONFIGURATION_BUILD_DIR}/React-RCTLinking" "${PODS_CONFIGURATION_BUILD_DIR}/React-RCTNetwork" "${PODS_CONFIGURATION_BUILD_DIR}/React-RCTSettings" "${PODS_CONFIGURATION_BUILD_DIR}/React-RCTText" "${PODS_CONFIGURATION_BUILD_DIR}/React-RCTVibration" "${PODS_CONFIGURATION_BUILD_DIR}/React-cxxreact" "${PODS_CONFIGURATION_BUILD_DIR}/React-jsi" "${PODS_CONFIGURATION_BUILD_DIR}/React-jsiexecutor" "${PODS_CONFIGURATION_BUILD_DIR}/React-jsinspector" "${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon" "${PODS_CONFIGURATION_BUILD_DIR}/RealmJS" "${PODS_CONFIGURATION_BUILD_DIR}/SajjadBlurOverlay" "${PODS_CONFIGURATION_BUILD_DIR}/TOCropViewController" "${PODS_CONFIGURATION_BUILD_DIR}/Yoga" "${PODS_CONFIGURATION_BUILD_DIR}/glog" "${PODS_CONFIGURATION_BUILD_DIR}/lottie-ios" "${PODS_CONFIGURATION_BUILD_DIR}/lottie-react-native" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-camera" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-geolocation" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-maps" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-onesignal" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-viewpager" "${PODS_ROOT}/../../node_modules/realm/vendor/realm-ios" +OTHER_CFLAGS = $(inherited) -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/lottie-ios/Lottie.modulemap" -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/lottie-react-native/lottie_react_native.modulemap" +OTHER_LDFLAGS = $(inherited) -ObjC -l"DoubleConversion" -l"FBReactNativeSpec" -l"Folly" -l"GCDWebServer" -l"RCTTypeSafety" -l"RNCAsyncStorage" -l"RNDateTimePicker" -l"RNDeviceInfo" -l"RNGestureHandler" -l"RNI18n" -l"RNImageCropPicker" -l"RNReanimated" -l"RNSVG" -l"RNScreens" -l"RNVectorIcons" -l"React-Core" -l"React-CoreModules" -l"React-RCTActionSheet" -l"React-RCTAnimation" -l"React-RCTBlob" -l"React-RCTImage" -l"React-RCTLinking" -l"React-RCTNetwork" -l"React-RCTSettings" -l"React-RCTText" -l"React-RCTVibration" -l"React-cxxreact" -l"React-jsi" -l"React-jsiexecutor" -l"React-jsinspector" -l"ReactCommon" -l"RealmJS" -l"SajjadBlurOverlay" -l"TOCropViewController" -l"Yoga" -l"c++" -l"glog" -l"lottie-ios" -l"lottie-react-native" -l"react-native-camera" -l"react-native-geolocation" -l"react-native-maps" -l"react-native-onesignal" -l"react-native-viewpager" -l"realm-ios" -l"realm-parser-ios" -l"stdc++" -l"z" -framework "CFNetwork" -framework "CoreGraphics" -framework "JavaScriptCore" -framework "MobileCoreServices" -framework "OneSignal" -framework "Photos" -framework "QuartzCore" -framework "SystemConfiguration" -framework "UIKit" -framework "UserNotifications" -framework "WebKit" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/lottie-ios/Lottie.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/lottie-react-native/lottie_react_native.modulemap" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_PODFILE_DIR_PATH = ${SRCROOT}/. +PODS_ROOT = ${SRCROOT}/Pods +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +SWIFT_INCLUDE_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/lottie-ios" "${PODS_CONFIGURATION_BUILD_DIR}/lottie-react-native" +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/ios/Pods/Target Support Files/Pods-iLink/Pods-iLink.release.xcconfig b/ios/Pods/Target Support Files/Pods-iLink/Pods-iLink.release.xcconfig new file mode 100644 index 00000000..88fe8a9a --- /dev/null +++ b/ios/Pods/Target Support Files/Pods-iLink/Pods-iLink.release.xcconfig @@ -0,0 +1,16 @@ +ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/OneSignal/iOS_SDK/OneSignalSDK/Framework" +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DoubleConversion" "${PODS_ROOT}/Headers/Public/FBLazyVector" "${PODS_ROOT}/Headers/Public/FBReactNativeSpec" "${PODS_ROOT}/Headers/Public/GCDWebServer" "${PODS_ROOT}/Headers/Public/RCTRequired" "${PODS_ROOT}/Headers/Public/RCTTypeSafety" "${PODS_ROOT}/Headers/Public/RNCAsyncStorage" "${PODS_ROOT}/Headers/Public/RNDateTimePicker" "${PODS_ROOT}/Headers/Public/RNDeviceInfo" "${PODS_ROOT}/Headers/Public/RNGestureHandler" "${PODS_ROOT}/Headers/Public/RNI18n" "${PODS_ROOT}/Headers/Public/RNImageCropPicker" "${PODS_ROOT}/Headers/Public/RNReanimated" "${PODS_ROOT}/Headers/Public/RNSVG" "${PODS_ROOT}/Headers/Public/RNScreens" "${PODS_ROOT}/Headers/Public/RNVectorIcons" "${PODS_ROOT}/Headers/Public/React-Core" "${PODS_ROOT}/Headers/Public/React-RCTBlob" "${PODS_ROOT}/Headers/Public/React-RCTText" "${PODS_ROOT}/Headers/Public/React-cxxreact" "${PODS_ROOT}/Headers/Public/React-jsi" "${PODS_ROOT}/Headers/Public/React-jsiexecutor" "${PODS_ROOT}/Headers/Public/React-jsinspector" "${PODS_ROOT}/Headers/Public/ReactCommon" "${PODS_ROOT}/Headers/Public/SajjadBlurOverlay" "${PODS_ROOT}/Headers/Public/TOCropViewController" "${PODS_ROOT}/Headers/Public/Yoga" "${PODS_ROOT}/Headers/Public/glog" "${PODS_ROOT}/Headers/Public/lottie-react-native" "${PODS_ROOT}/Headers/Public/react-native-camera" "${PODS_ROOT}/Headers/Public/react-native-geolocation" "${PODS_ROOT}/Headers/Public/react-native-maps" "${PODS_ROOT}/Headers/Public/react-native-onesignal" "${PODS_ROOT}/Headers/Public/react-native-viewpager" "$(PODS_ROOT)/Headers/Private/React-Core" +LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/DoubleConversion" "${PODS_CONFIGURATION_BUILD_DIR}/FBReactNativeSpec" "${PODS_CONFIGURATION_BUILD_DIR}/Folly" "${PODS_CONFIGURATION_BUILD_DIR}/GCDWebServer" "${PODS_CONFIGURATION_BUILD_DIR}/RCTTypeSafety" "${PODS_CONFIGURATION_BUILD_DIR}/RNCAsyncStorage" "${PODS_CONFIGURATION_BUILD_DIR}/RNDateTimePicker" "${PODS_CONFIGURATION_BUILD_DIR}/RNDeviceInfo" "${PODS_CONFIGURATION_BUILD_DIR}/RNGestureHandler" "${PODS_CONFIGURATION_BUILD_DIR}/RNI18n" "${PODS_CONFIGURATION_BUILD_DIR}/RNImageCropPicker" "${PODS_CONFIGURATION_BUILD_DIR}/RNReanimated" "${PODS_CONFIGURATION_BUILD_DIR}/RNSVG" "${PODS_CONFIGURATION_BUILD_DIR}/RNScreens" "${PODS_CONFIGURATION_BUILD_DIR}/RNVectorIcons" "${PODS_CONFIGURATION_BUILD_DIR}/React-Core" "${PODS_CONFIGURATION_BUILD_DIR}/React-CoreModules" "${PODS_CONFIGURATION_BUILD_DIR}/React-RCTActionSheet" "${PODS_CONFIGURATION_BUILD_DIR}/React-RCTAnimation" "${PODS_CONFIGURATION_BUILD_DIR}/React-RCTBlob" "${PODS_CONFIGURATION_BUILD_DIR}/React-RCTImage" "${PODS_CONFIGURATION_BUILD_DIR}/React-RCTLinking" "${PODS_CONFIGURATION_BUILD_DIR}/React-RCTNetwork" "${PODS_CONFIGURATION_BUILD_DIR}/React-RCTSettings" "${PODS_CONFIGURATION_BUILD_DIR}/React-RCTText" "${PODS_CONFIGURATION_BUILD_DIR}/React-RCTVibration" "${PODS_CONFIGURATION_BUILD_DIR}/React-cxxreact" "${PODS_CONFIGURATION_BUILD_DIR}/React-jsi" "${PODS_CONFIGURATION_BUILD_DIR}/React-jsiexecutor" "${PODS_CONFIGURATION_BUILD_DIR}/React-jsinspector" "${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon" "${PODS_CONFIGURATION_BUILD_DIR}/RealmJS" "${PODS_CONFIGURATION_BUILD_DIR}/SajjadBlurOverlay" "${PODS_CONFIGURATION_BUILD_DIR}/TOCropViewController" "${PODS_CONFIGURATION_BUILD_DIR}/Yoga" "${PODS_CONFIGURATION_BUILD_DIR}/glog" "${PODS_CONFIGURATION_BUILD_DIR}/lottie-ios" "${PODS_CONFIGURATION_BUILD_DIR}/lottie-react-native" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-camera" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-geolocation" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-maps" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-onesignal" "${PODS_CONFIGURATION_BUILD_DIR}/react-native-viewpager" "${PODS_ROOT}/../../node_modules/realm/vendor/realm-ios" +OTHER_CFLAGS = $(inherited) -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/lottie-ios/Lottie.modulemap" -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/lottie-react-native/lottie_react_native.modulemap" +OTHER_LDFLAGS = $(inherited) -ObjC -l"DoubleConversion" -l"FBReactNativeSpec" -l"Folly" -l"GCDWebServer" -l"RCTTypeSafety" -l"RNCAsyncStorage" -l"RNDateTimePicker" -l"RNDeviceInfo" -l"RNGestureHandler" -l"RNI18n" -l"RNImageCropPicker" -l"RNReanimated" -l"RNSVG" -l"RNScreens" -l"RNVectorIcons" -l"React-Core" -l"React-CoreModules" -l"React-RCTActionSheet" -l"React-RCTAnimation" -l"React-RCTBlob" -l"React-RCTImage" -l"React-RCTLinking" -l"React-RCTNetwork" -l"React-RCTSettings" -l"React-RCTText" -l"React-RCTVibration" -l"React-cxxreact" -l"React-jsi" -l"React-jsiexecutor" -l"React-jsinspector" -l"ReactCommon" -l"RealmJS" -l"SajjadBlurOverlay" -l"TOCropViewController" -l"Yoga" -l"c++" -l"glog" -l"lottie-ios" -l"lottie-react-native" -l"react-native-camera" -l"react-native-geolocation" -l"react-native-maps" -l"react-native-onesignal" -l"react-native-viewpager" -l"realm-ios" -l"realm-parser-ios" -l"stdc++" -l"z" -framework "CFNetwork" -framework "CoreGraphics" -framework "JavaScriptCore" -framework "MobileCoreServices" -framework "OneSignal" -framework "Photos" -framework "QuartzCore" -framework "SystemConfiguration" -framework "UIKit" -framework "UserNotifications" -framework "WebKit" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/lottie-ios/Lottie.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/lottie-react-native/lottie_react_native.modulemap" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_PODFILE_DIR_PATH = ${SRCROOT}/. +PODS_ROOT = ${SRCROOT}/Pods +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +SWIFT_INCLUDE_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/lottie-ios" "${PODS_CONFIGURATION_BUILD_DIR}/lottie-react-native" +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/ios/Pods/Target Support Files/Pods-iLinkTests/Pods-iLinkTests.debug.xcconfig b/ios/Pods/Target Support Files/Pods-iLinkTests/Pods-iLinkTests.debug.xcconfig new file mode 100644 index 00000000..699c66ac --- /dev/null +++ b/ios/Pods/Target Support Files/Pods-iLinkTests/Pods-iLinkTests.debug.xcconfig @@ -0,0 +1,14 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/OneSignal/iOS_SDK/OneSignalSDK/Framework" +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DoubleConversion" "${PODS_ROOT}/Headers/Public/FBLazyVector" "${PODS_ROOT}/Headers/Public/FBReactNativeSpec" "${PODS_ROOT}/Headers/Public/GCDWebServer" "${PODS_ROOT}/Headers/Public/RCTRequired" "${PODS_ROOT}/Headers/Public/RCTTypeSafety" "${PODS_ROOT}/Headers/Public/RNCAsyncStorage" "${PODS_ROOT}/Headers/Public/RNDateTimePicker" "${PODS_ROOT}/Headers/Public/RNDeviceInfo" "${PODS_ROOT}/Headers/Public/RNGestureHandler" "${PODS_ROOT}/Headers/Public/RNI18n" "${PODS_ROOT}/Headers/Public/RNImageCropPicker" "${PODS_ROOT}/Headers/Public/RNReanimated" "${PODS_ROOT}/Headers/Public/RNSVG" "${PODS_ROOT}/Headers/Public/RNScreens" "${PODS_ROOT}/Headers/Public/RNVectorIcons" "${PODS_ROOT}/Headers/Public/React-Core" "${PODS_ROOT}/Headers/Public/React-RCTBlob" "${PODS_ROOT}/Headers/Public/React-RCTText" "${PODS_ROOT}/Headers/Public/React-cxxreact" "${PODS_ROOT}/Headers/Public/React-jsi" "${PODS_ROOT}/Headers/Public/React-jsiexecutor" "${PODS_ROOT}/Headers/Public/React-jsinspector" "${PODS_ROOT}/Headers/Public/ReactCommon" "${PODS_ROOT}/Headers/Public/SajjadBlurOverlay" "${PODS_ROOT}/Headers/Public/TOCropViewController" "${PODS_ROOT}/Headers/Public/Yoga" "${PODS_ROOT}/Headers/Public/glog" "${PODS_ROOT}/Headers/Public/lottie-react-native" "${PODS_ROOT}/Headers/Public/react-native-camera" "${PODS_ROOT}/Headers/Public/react-native-geolocation" "${PODS_ROOT}/Headers/Public/react-native-maps" "${PODS_ROOT}/Headers/Public/react-native-onesignal" "${PODS_ROOT}/Headers/Public/react-native-viewpager" "$(PODS_ROOT)/Headers/Private/React-Core" +OTHER_CFLAGS = $(inherited) -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/lottie-ios/Lottie.modulemap" -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/lottie-react-native/lottie_react_native.modulemap" +OTHER_LDFLAGS = $(inherited) -l"c++" -l"stdc++" -l"z" -framework "CFNetwork" -framework "CoreGraphics" -framework "JavaScriptCore" -framework "MobileCoreServices" -framework "Photos" -framework "QuartzCore" -framework "SystemConfiguration" -framework "UIKit" -framework "UserNotifications" -framework "WebKit" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/lottie-ios/Lottie.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/lottie-react-native/lottie_react_native.modulemap" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_PODFILE_DIR_PATH = ${SRCROOT}/. +PODS_ROOT = ${SRCROOT}/Pods +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +SWIFT_INCLUDE_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/lottie-ios" "${PODS_CONFIGURATION_BUILD_DIR}/lottie-react-native" +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/ios/Pods/Target Support Files/Pods-iLinkTests/Pods-iLinkTests.release.xcconfig b/ios/Pods/Target Support Files/Pods-iLinkTests/Pods-iLinkTests.release.xcconfig new file mode 100644 index 00000000..699c66ac --- /dev/null +++ b/ios/Pods/Target Support Files/Pods-iLinkTests/Pods-iLinkTests.release.xcconfig @@ -0,0 +1,14 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/OneSignal/iOS_SDK/OneSignalSDK/Framework" +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DoubleConversion" "${PODS_ROOT}/Headers/Public/FBLazyVector" "${PODS_ROOT}/Headers/Public/FBReactNativeSpec" "${PODS_ROOT}/Headers/Public/GCDWebServer" "${PODS_ROOT}/Headers/Public/RCTRequired" "${PODS_ROOT}/Headers/Public/RCTTypeSafety" "${PODS_ROOT}/Headers/Public/RNCAsyncStorage" "${PODS_ROOT}/Headers/Public/RNDateTimePicker" "${PODS_ROOT}/Headers/Public/RNDeviceInfo" "${PODS_ROOT}/Headers/Public/RNGestureHandler" "${PODS_ROOT}/Headers/Public/RNI18n" "${PODS_ROOT}/Headers/Public/RNImageCropPicker" "${PODS_ROOT}/Headers/Public/RNReanimated" "${PODS_ROOT}/Headers/Public/RNSVG" "${PODS_ROOT}/Headers/Public/RNScreens" "${PODS_ROOT}/Headers/Public/RNVectorIcons" "${PODS_ROOT}/Headers/Public/React-Core" "${PODS_ROOT}/Headers/Public/React-RCTBlob" "${PODS_ROOT}/Headers/Public/React-RCTText" "${PODS_ROOT}/Headers/Public/React-cxxreact" "${PODS_ROOT}/Headers/Public/React-jsi" "${PODS_ROOT}/Headers/Public/React-jsiexecutor" "${PODS_ROOT}/Headers/Public/React-jsinspector" "${PODS_ROOT}/Headers/Public/ReactCommon" "${PODS_ROOT}/Headers/Public/SajjadBlurOverlay" "${PODS_ROOT}/Headers/Public/TOCropViewController" "${PODS_ROOT}/Headers/Public/Yoga" "${PODS_ROOT}/Headers/Public/glog" "${PODS_ROOT}/Headers/Public/lottie-react-native" "${PODS_ROOT}/Headers/Public/react-native-camera" "${PODS_ROOT}/Headers/Public/react-native-geolocation" "${PODS_ROOT}/Headers/Public/react-native-maps" "${PODS_ROOT}/Headers/Public/react-native-onesignal" "${PODS_ROOT}/Headers/Public/react-native-viewpager" "$(PODS_ROOT)/Headers/Private/React-Core" +OTHER_CFLAGS = $(inherited) -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/lottie-ios/Lottie.modulemap" -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/lottie-react-native/lottie_react_native.modulemap" +OTHER_LDFLAGS = $(inherited) -l"c++" -l"stdc++" -l"z" -framework "CFNetwork" -framework "CoreGraphics" -framework "JavaScriptCore" -framework "MobileCoreServices" -framework "Photos" -framework "QuartzCore" -framework "SystemConfiguration" -framework "UIKit" -framework "UserNotifications" -framework "WebKit" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/lottie-ios/Lottie.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/lottie-react-native/lottie_react_native.modulemap" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_PODFILE_DIR_PATH = ${SRCROOT}/. +PODS_ROOT = ${SRCROOT}/Pods +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +SWIFT_INCLUDE_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/lottie-ios" "${PODS_CONFIGURATION_BUILD_DIR}/lottie-react-native" +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/ios/Pods/Target Support Files/lottie-ios/lottie-ios.debug.xcconfig b/ios/Pods/Target Support Files/lottie-ios/lottie-ios.debug.xcconfig new file mode 100644 index 00000000..6be0d4ca --- /dev/null +++ b/ios/Pods/Target Support Files/lottie-ios/lottie-ios.debug.xcconfig @@ -0,0 +1,12 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/lottie-ios +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -import-underlying-module -Xcc -fmodule-map-file="${SRCROOT}/${MODULEMAP_FILE}" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/../../node_modules/lottie-ios +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/ios/Pods/Target Support Files/lottie-ios/lottie-ios.release.xcconfig b/ios/Pods/Target Support Files/lottie-ios/lottie-ios.release.xcconfig new file mode 100644 index 00000000..1f205ddd --- /dev/null +++ b/ios/Pods/Target Support Files/lottie-ios/lottie-ios.release.xcconfig @@ -0,0 +1,12 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/lottie-ios +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -import-underlying-module -Xcc -fmodule-map-file="${SRCROOT}/${MODULEMAP_FILE}" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/lottie-ios +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/ios/Pods/Target Support Files/react-native-geolocation/react-native-geolocation-dummy.m b/ios/Pods/Target Support Files/react-native-geolocation/react-native-geolocation-dummy.m new file mode 100644 index 00000000..7af4b2db --- /dev/null +++ b/ios/Pods/Target Support Files/react-native-geolocation/react-native-geolocation-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_react_native_geolocation : NSObject +@end +@implementation PodsDummy_react_native_geolocation +@end diff --git a/ios/Pods/Target Support Files/react-native-geolocation/react-native-geolocation-prefix.pch b/ios/Pods/Target Support Files/react-native-geolocation/react-native-geolocation-prefix.pch new file mode 100644 index 00000000..beb2a244 --- /dev/null +++ b/ios/Pods/Target Support Files/react-native-geolocation/react-native-geolocation-prefix.pch @@ -0,0 +1,12 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + diff --git a/ios/Pods/Target Support Files/react-native-geolocation/react-native-geolocation.debug.xcconfig b/ios/Pods/Target Support Files/react-native-geolocation/react-native-geolocation.debug.xcconfig new file mode 100644 index 00000000..2d6e1c27 --- /dev/null +++ b/ios/Pods/Target Support Files/react-native-geolocation/react-native-geolocation.debug.xcconfig @@ -0,0 +1,12 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/react-native-geolocation +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/react-native-geolocation" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DoubleConversion" "${PODS_ROOT}/Headers/Public/React-Core" "${PODS_ROOT}/Headers/Public/React-RCTBlob" "${PODS_ROOT}/Headers/Public/React-RCTText" "${PODS_ROOT}/Headers/Public/React-cxxreact" "${PODS_ROOT}/Headers/Public/React-jsi" "${PODS_ROOT}/Headers/Public/React-jsiexecutor" "${PODS_ROOT}/Headers/Public/React-jsinspector" "${PODS_ROOT}/Headers/Public/Yoga" "${PODS_ROOT}/Headers/Public/glog" "${PODS_ROOT}/Headers/Public/react-native-geolocation" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/../../node_modules/@react-native-community/geolocation +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/ios/Pods/Target Support Files/react-native-geolocation/react-native-geolocation.release.xcconfig b/ios/Pods/Target Support Files/react-native-geolocation/react-native-geolocation.release.xcconfig new file mode 100644 index 00000000..2d6e1c27 --- /dev/null +++ b/ios/Pods/Target Support Files/react-native-geolocation/react-native-geolocation.release.xcconfig @@ -0,0 +1,12 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/react-native-geolocation +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/react-native-geolocation" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DoubleConversion" "${PODS_ROOT}/Headers/Public/React-Core" "${PODS_ROOT}/Headers/Public/React-RCTBlob" "${PODS_ROOT}/Headers/Public/React-RCTText" "${PODS_ROOT}/Headers/Public/React-cxxreact" "${PODS_ROOT}/Headers/Public/React-jsi" "${PODS_ROOT}/Headers/Public/React-jsiexecutor" "${PODS_ROOT}/Headers/Public/React-jsinspector" "${PODS_ROOT}/Headers/Public/Yoga" "${PODS_ROOT}/Headers/Public/glog" "${PODS_ROOT}/Headers/Public/react-native-geolocation" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/../../node_modules/@react-native-community/geolocation +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/ios/Pods/lottie-ios/LICENSE b/ios/Pods/lottie-ios/LICENSE new file mode 100644 index 00000000..55bb1787 --- /dev/null +++ b/ios/Pods/lottie-ios/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + https://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2018 Airbnb, Inc. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + https://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/ios/Pods/lottie-ios/README.md b/ios/Pods/lottie-ios/README.md new file mode 100644 index 00000000..e49f21fb --- /dev/null +++ b/ios/Pods/lottie-ios/README.md @@ -0,0 +1,110 @@ +# Lottie for iOS, macOS (and [Android](https://github.com/airbnb/lottie-android) and [React Native](https://github.com/airbnb/lottie-react-native)) +[![Version](https://img.shields.io/cocoapods/v/lottie-ios.svg?style=flat)](https://cocoapods.org/pods/lottie-ios)[![License](https://img.shields.io/cocoapods/l/lottie-ios.svg?style=flat)](https://cocoapods.org/pods/lottie-ios)[![Platform](https://img.shields.io/cocoapods/p/lottie-ios.svg?style=flat)](https://cocoapods.org/pods/lottie-ios) + +# View documentation, FAQ, help, examples, and more at [airbnb.io/lottie](http://airbnb.io/lottie/) + +Lottie is a mobile library for Android and iOS that natively renders vector based animations and art in realtime with minimal code. + +Lottie loads and renders animations and vectors exported in the bodymovin JSON format. Bodymovin JSON can be created and exported from After Effects with [bodymovin](https://github.com/bodymovin/bodymovin), Sketch with [Lottie Sketch Export](https://github.com/buba447/Lottie-Sketch-Export), and from [Haiku](https://www.haiku.ai). + +For the first time, designers can create **and ship** beautiful animations without an engineer painstakingly recreating it by hand. +Since the animation is backed by JSON they are extremely small in size but can be large in complexity! +Animations can be played, resized, looped, sped up, slowed down, reversed, and even interactively scrubbed. +Lottie can play or loop just a portion of the animation as well, the possibilities are endless! +Animations can even be ***changed at runtime*** in various ways! Change the color, position or any keyframable value! +Lottie also supports native UIViewController Transitions out of the box! + +Here is just a small sampling of the power of Lottie + +![Example1](_Gifs/Examples1.gif) +![Example2](_Gifs/Examples2.gif) + + + +![Example3](_Gifs/Examples3.gif) + +![Abcs](_Gifs/Examples4.gif) + +## Installing Lottie +Lottie supports [CocoaPods](https://cocoapods.org/) and [Carthage](https://github.com/Carthage/Carthage) (Both dynamic and static). Lottie is written in ***Swift 4.2***. +### Github Repo + +You can pull the [Lottie Github Repo](https://github.com/airbnb/lottie-ios/) and include the Lottie.xcodeproj to build a dynamic or static library. + +### CocoaPods +Add the pod to your Podfile: +```ruby +pod 'lottie-ios' +``` + +And then run: +```ruby +pod install +``` +After installing the cocoapod into your project import Lottie with +```swift +import Lottie +``` +### Carthage +Add Lottie to your Cartfile: +``` +github "airbnb/lottie-ios" "master" +``` + +And then run: +``` +carthage update +``` +In your application targets “General” tab under the “Linked Frameworks and Libraries” section, drag and drop lottie-ios.framework from the Carthage/Build/iOS directory that `carthage update` produced. + +### Swift Package Manager +``` swift +// swift-tools-version:5.1 + +import PackageDescription + +let package = Package( + name: "YourTestProject", + platforms: [ + .iOS(.v12), + ], + dependencies: [ + .package(url: "https://github.com/airbnb/lottie-ios.git", from: "3.1.2") + ], + targets: [ + .target(name: "YourTestProject", dependencies: ["Lottie"]) + ] +) +``` +And then import wherever needed: ```import Lottie``` + +#### Adding it to an existent iOS Project via Swift Package Manager + +1. Using Xcode 11 go to File > Swift Packages > Add Package Dependency +2. Paste the project URL: https://github.com/airbnb/lottie-ios +3. Click on next and select the project target +4. Don't forget to set `DEAD_CODE_STRIPPING = NO` in your `Build Settings` (https://bugs.swift.org/plugins/servlet/mobile#issue/SR-11564) + **NOTE: For MacOS you must set the `Branch` field to `lottie/macos-spm` + ![Example](_Gifs/spm-branch.png) + +If you have doubts, please, check the following links: + +[How to use](https://developer.apple.com/videos/play/wwdc2019/408/) + +[Creating Swift Packages](https://developer.apple.com/videos/play/wwdc2019/410/) + +After successfully retrieved the package and added it to your project, just import `Lottie` and you can get the full benefits of it. + +### Objective-C Support + +As of 3.0 Lottie has been completely rewritten in Swift! + +For Objective-C support please use Lottie 2.5.3. Alternatively an Objective-C branch exists and is still active. + +The official objective c branch can be found here: + +[Objective-C Branch](https://github.com/airbnb/lottie-ios/tree/lottie/objectiveC) + +Also check out the documentation regarding it here: + +[iOS Migration](http://airbnb.io/lottie/#/ios-migration) diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/AnimationContainer.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/AnimationContainer.swift new file mode 100644 index 00000000..dfed44c5 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/AnimationContainer.swift @@ -0,0 +1,209 @@ +// +// AnimationContainer.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/24/19. +// + +import Foundation +import QuartzCore + +/** + The base animation container. + + This layer holds a single composition container and allows for animation of + the currentFrame property. + */ +final class AnimationContainer: CALayer { + + /// The animatable Current Frame Property + @NSManaged var currentFrame: CGFloat + + var imageProvider: AnimationImageProvider { + get { + return layerImageProvider.imageProvider + } + set { + layerImageProvider.imageProvider = newValue + } + } + + func reloadImages() { + layerImageProvider.reloadImages() + } + + var renderScale: CGFloat = 1 { + didSet { + animationLayers.forEach({ $0.renderScale = renderScale }) + } + } + + public var respectAnimationFrameRate: Bool = false + + /// Forces the view to update its drawing. + func forceDisplayUpdate() { + animationLayers.forEach( { $0.displayWithFrame(frame: currentFrame, forceUpdates: true) }) + } + + func logHierarchyKeypaths() { + print("Lottie: Logging Animation Keypaths") + animationLayers.forEach({ $0.logKeypaths(for: nil) }) + } + + func setValueProvider(_ valueProvider: AnyValueProvider, keypath: AnimationKeypath) { + for layer in animationLayers { + if let foundProperties = layer.nodeProperties(for: keypath) { + for property in foundProperties { + property.setProvider(provider: valueProvider) + } + layer.displayWithFrame(frame: presentation()?.currentFrame ?? currentFrame, forceUpdates: true) + } + } + } + + func getValue(for keypath: AnimationKeypath, atFrame: CGFloat?) -> Any? { + for layer in animationLayers { + if let foundProperties = layer.nodeProperties(for: keypath), + let first = foundProperties.first { + return first.valueProvider.value(frame: atFrame ?? currentFrame) + } + } + return nil + } + + func layer(for keypath: AnimationKeypath) -> CALayer? { + for layer in animationLayers { + if let foundLayer = layer.layer(for: keypath) { + return foundLayer + } + } + return nil + } + + func animatorNodes(for keypath: AnimationKeypath) -> [AnimatorNode]? { + var results = [AnimatorNode]() + for layer in animationLayers { + if let nodes = layer.animatorNodes(for: keypath) { + results.append(contentsOf: nodes) + } + } + if results.count == 0 { + return nil + } + return results + } + + var textProvider: AnimationTextProvider { + get { return layerTextProvider.textProvider } + set { layerTextProvider.textProvider = newValue } + } + + var fontProvider: AnimationFontProvider { + get { return layerFontProvider.fontProvider } + set { layerFontProvider.fontProvider = newValue } + } + + var animationLayers: ContiguousArray + fileprivate let layerImageProvider: LayerImageProvider + fileprivate let layerTextProvider: LayerTextProvider + fileprivate let layerFontProvider: LayerFontProvider + + init(animation: Animation, imageProvider: AnimationImageProvider, textProvider: AnimationTextProvider, fontProvider: AnimationFontProvider) { + self.layerImageProvider = LayerImageProvider(imageProvider: imageProvider, assets: animation.assetLibrary?.imageAssets) + self.layerTextProvider = LayerTextProvider(textProvider: textProvider) + self.layerFontProvider = LayerFontProvider(fontProvider: fontProvider) + self.animationLayers = [] + super.init() + bounds = animation.bounds + let layers = animation.layers.initializeCompositionLayers(assetLibrary: animation.assetLibrary, layerImageProvider: layerImageProvider, textProvider: textProvider, fontProvider: fontProvider, frameRate: CGFloat(animation.framerate)) + + var imageLayers = [ImageCompositionLayer]() + var textLayers = [TextCompositionLayer]() + + var mattedLayer: CompositionLayer? = nil + + for layer in layers.reversed() { + layer.bounds = bounds + animationLayers.append(layer) + if let imageLayer = layer as? ImageCompositionLayer { + imageLayers.append(imageLayer) + } + if let textLayer = layer as? TextCompositionLayer { + textLayers.append(textLayer) + } + if let matte = mattedLayer { + /// The previous layer requires this layer to be its matte + matte.matteLayer = layer + mattedLayer = nil + continue + } + if let matte = layer.matteType, + (matte == .add || matte == .invert) { + /// We have a layer that requires a matte. + mattedLayer = layer + } + addSublayer(layer) + } + + layerImageProvider.addImageLayers(imageLayers) + layerImageProvider.reloadImages() + layerTextProvider.addTextLayers(textLayers) + layerTextProvider.reloadTexts() + layerFontProvider.addTextLayers(textLayers) + layerFontProvider.reloadTexts() + setNeedsDisplay() + } + + /// For CAAnimation Use + public override init(layer: Any) { + self.animationLayers = [] + self.layerImageProvider = LayerImageProvider(imageProvider: BlankImageProvider(), assets: nil) + self.layerTextProvider = LayerTextProvider(textProvider: DefaultTextProvider()) + self.layerFontProvider = LayerFontProvider(fontProvider: DefaultFontProvider()) + super.init(layer: layer) + + guard let animationLayer = layer as? AnimationContainer else { return } + + currentFrame = animationLayer.currentFrame + + } + + required init?(coder aDecoder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + // MARK: CALayer Animations + + override public class func needsDisplay(forKey key: String) -> Bool { + if key == "currentFrame" { + return true + } + return super.needsDisplay(forKey: key) + } + + override public func action(forKey event: String) -> CAAction? { + if event == "currentFrame" { + let animation = CABasicAnimation(keyPath: event) + animation.timingFunction = CAMediaTimingFunction(name: CAMediaTimingFunctionName.linear) + animation.fromValue = self.presentation()?.currentFrame + return animation + } + return super.action(forKey: event) + } + + public override func display() { + guard Thread.isMainThread else { return } + var newFrame: CGFloat = self.presentation()?.currentFrame ?? self.currentFrame + if respectAnimationFrameRate { + newFrame = floor(newFrame) + } + animationLayers.forEach( { $0.displayWithFrame(frame: newFrame, forceUpdates: false) }) + } + +} + +fileprivate class BlankImageProvider: AnimationImageProvider { + func imageForAsset(asset: ImageAsset) -> CGImage? { + return nil + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/CompLayers/CompositionLayer.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/CompLayers/CompositionLayer.swift new file mode 100644 index 00000000..dd947ec9 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/CompLayers/CompositionLayer.swift @@ -0,0 +1,153 @@ +// +// LayerContainer.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/22/19. +// + +import Foundation +import QuartzCore + +/** + The base class for a child layer of CompositionContainer + */ +class CompositionLayer: CALayer, KeypathSearchable { + + weak var layerDelegate: CompositionLayerDelegate? + + let transformNode: LayerTransformNode + + let contentsLayer: CALayer = CALayer() + + let maskLayer: MaskContainerLayer? + + let matteType: MatteType? + + var renderScale: CGFloat = 1 { + didSet { + self.updateRenderScale() + } + } + + var matteLayer: CompositionLayer? { + didSet { + if let matte = matteLayer { + if let type = matteType, type == .invert { + mask = InvertedMatteLayer(inputMatte: matte) + } else { + mask = matte + } + } else { + mask = nil + } + } + } + + let inFrame: CGFloat + let outFrame: CGFloat + let startFrame: CGFloat + let timeStretch: CGFloat + + init(layer: LayerModel, size: CGSize) { + self.transformNode = LayerTransformNode(transform: layer.transform) + if let masks = layer.masks { + maskLayer = MaskContainerLayer(masks: masks) + } else { + maskLayer = nil + } + self.matteType = layer.matte + self.inFrame = layer.inFrame.cgFloat + self.outFrame = layer.outFrame.cgFloat + self.timeStretch = layer.timeStretch.cgFloat + self.startFrame = layer.startTime.cgFloat + self.keypathName = layer.name + self.childKeypaths = [transformNode.transformProperties] + super.init() + self.anchorPoint = .zero + self.actions = [ + "opacity" : NSNull(), + "transform" : NSNull(), + "bounds" : NSNull(), + "anchorPoint" : NSNull(), + "sublayerTransform" : NSNull() + ] + + contentsLayer.anchorPoint = .zero + contentsLayer.bounds = CGRect(origin: .zero, size: size) + contentsLayer.actions = [ + "opacity" : NSNull(), + "transform" : NSNull(), + "bounds" : NSNull(), + "anchorPoint" : NSNull(), + "sublayerTransform" : NSNull(), + "hidden" : NSNull() + ] + addSublayer(contentsLayer) + + if let maskLayer = maskLayer { + contentsLayer.mask = maskLayer + } + } + + override init(layer: Any) { + /// Used for creating shadow model layers. Read More here: https://developer.apple.com/documentation/quartzcore/calayer/1410842-init + guard let layer = layer as? CompositionLayer else { + fatalError("Wrong Layer Class") + } + self.transformNode = layer.transformNode + self.matteType = layer.matteType + self.inFrame = layer.inFrame + self.outFrame = layer.outFrame + self.timeStretch = layer.timeStretch + self.startFrame = layer.startFrame + self.keypathName = layer.keypathName + self.childKeypaths = [transformNode.transformProperties] + self.maskLayer = nil + super.init(layer: layer) + } + + required init?(coder aDecoder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + final func displayWithFrame(frame: CGFloat, forceUpdates: Bool) { + transformNode.updateTree(frame, forceUpdates: forceUpdates) + let layerVisible = frame.isInRangeOrEqual(inFrame, outFrame) + /// Only update contents if current time is within the layers time bounds. + if layerVisible { + displayContentsWithFrame(frame: frame, forceUpdates: forceUpdates) + maskLayer?.updateWithFrame(frame: frame, forceUpdates: forceUpdates) + } + contentsLayer.transform = transformNode.globalTransform + contentsLayer.opacity = transformNode.opacity + contentsLayer.isHidden = !layerVisible + layerDelegate?.frameUpdated(frame: frame) + } + + func displayContentsWithFrame(frame: CGFloat, forceUpdates: Bool) { + /// To be overridden by subclass + } + + // MARK: Keypath Searchable + + let keypathName: String + + var keypathProperties: [String : AnyNodeProperty] { + return [:] + } + + final var childKeypaths: [KeypathSearchable] + + var keypathLayer: CALayer? { + return contentsLayer + } + + func updateRenderScale() { + self.contentsScale = self.renderScale + } +} + +protocol CompositionLayerDelegate: class { + func frameUpdated(frame: CGFloat) +} + diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/CompLayers/ImageCompositionLayer.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/CompLayers/ImageCompositionLayer.swift new file mode 100644 index 00000000..1f51b6bc --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/CompLayers/ImageCompositionLayer.swift @@ -0,0 +1,47 @@ +// +// ImageCompositionLayer.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/25/19. +// + +import Foundation +import CoreGraphics +import QuartzCore + +final class ImageCompositionLayer: CompositionLayer { + + var image: CGImage? = nil { + didSet { + if let image = image { + contentsLayer.contents = image + } else { + contentsLayer.contents = nil + } + } + } + + let imageReferenceID: String + + init(imageLayer: ImageLayerModel, size: CGSize) { + self.imageReferenceID = imageLayer.referenceID + super.init(layer: imageLayer, size: size) + contentsLayer.masksToBounds = true + contentsLayer.contentsGravity = CALayerContentsGravity.resize + } + + override init(layer: Any) { + /// Used for creating shadow model layers. Read More here: https://developer.apple.com/documentation/quartzcore/calayer/1410842-init + guard let layer = layer as? ImageCompositionLayer else { + fatalError("init(layer:) Wrong Layer Class") + } + self.imageReferenceID = layer.imageReferenceID + self.image = nil + super.init(layer: layer) + } + + required init?(coder aDecoder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/CompLayers/MaskContainerLayer.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/CompLayers/MaskContainerLayer.swift new file mode 100644 index 00000000..753a8dbb --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/CompLayers/MaskContainerLayer.swift @@ -0,0 +1,168 @@ +// +// MaskContainerLayer.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/25/19. +// + +import Foundation +import QuartzCore + +extension MaskMode { + var usableMode: MaskMode { + switch self { + case .add: + return .add + case .subtract: + return .subtract + case .intersect: + return .intersect + case .lighten: + return .add + case .darken: + return .darken + case .difference: + return .intersect + case .none: + return .none + } + } +} + +final class MaskContainerLayer: CALayer { + + init(masks: [Mask]) { + super.init() + anchorPoint = .zero + var containerLayer = CALayer() + var firstObject: Bool = true + for mask in masks { + let maskLayer = MaskLayer(mask: mask) + maskLayers.append(maskLayer) + if mask.mode.usableMode == .none { + continue + } else if mask.mode.usableMode == .add || firstObject { + firstObject = false + containerLayer.addSublayer(maskLayer) + } else { + containerLayer.mask = maskLayer + let newContainer = CALayer() + newContainer.addSublayer(containerLayer) + containerLayer = newContainer + } + } + addSublayer(containerLayer) + } + + override init(layer: Any) { + /// Used for creating shadow model layers. Read More here: https://developer.apple.com/documentation/quartzcore/calayer/1410842-init + guard let layer = layer as? MaskContainerLayer else { + fatalError("init(layer:) Wrong Layer Class") + } + super.init(layer: layer) + } + + fileprivate var maskLayers: [MaskLayer] = [] + + func updateWithFrame(frame: CGFloat, forceUpdates: Bool) { + maskLayers.forEach({ $0.updateWithFrame(frame: frame, forceUpdates: forceUpdates) }) + } + + required init?(coder aDecoder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } +} + +extension CGRect { + static var veryLargeRect: CGRect { + return CGRect(x: -100_000_000, + y: -100_000_000, + width: 200_000_000, + height: 200_000_000) + } +} + +fileprivate class MaskLayer: CALayer { + + let properties: MaskNodeProperties? + + let maskLayer = CAShapeLayer() + + init(mask: Mask) { + self.properties = MaskNodeProperties(mask: mask) + super.init() + addSublayer(maskLayer) + anchorPoint = .zero + maskLayer.fillColor = mask.mode == .add ? CGColor(colorSpace: CGColorSpaceCreateDeviceRGB(), components: [1, 0, 0, 1]) : + CGColor(colorSpace: CGColorSpaceCreateDeviceRGB(), components: [0, 1, 0, 1]) + maskLayer.fillRule = CAShapeLayerFillRule.evenOdd + self.actions = [ + "opacity" : NSNull() + ] + + } + + override init(layer: Any) { + self.properties = nil + super.init(layer: layer) + } + + required init?(coder aDecoder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + func updateWithFrame(frame: CGFloat, forceUpdates: Bool) { + guard let properties = properties else { return } + if properties.opacity.needsUpdate(frame: frame) || forceUpdates { + properties.opacity.update(frame: frame) + self.opacity = Float(properties.opacity.value.cgFloatValue) + } + + if properties.shape.needsUpdate(frame: frame) || forceUpdates { + properties.shape.update(frame: frame) + properties.expansion.update(frame: frame) + + let shapePath = properties.shape.value.cgPath() + var path = shapePath + if properties.mode.usableMode == .subtract && !properties.inverted || + (properties.mode.usableMode == .add && properties.inverted) { + /// Add a bounds rect to invert the mask + let newPath = CGMutablePath() + newPath.addRect(CGRect.veryLargeRect) + newPath.addPath(shapePath) + path = newPath + } + maskLayer.path = path + } + + } +} + +fileprivate class MaskNodeProperties: NodePropertyMap { + + var propertyMap: [String : AnyNodeProperty] + + var properties: [AnyNodeProperty] + + init(mask: Mask) { + self.mode = mask.mode + self.inverted = mask.inverted + self.opacity = NodeProperty(provider: KeyframeInterpolator(keyframes: mask.opacity.keyframes)) + self.shape = NodeProperty(provider: KeyframeInterpolator(keyframes: mask.shape.keyframes)) + self.expansion = NodeProperty(provider: KeyframeInterpolator(keyframes: mask.expansion.keyframes)) + self.propertyMap = [ + "Opacity" : opacity, + "Shape" : shape, + "Expansion" : expansion + ] + self.properties = Array(self.propertyMap.values) + } + + let mode: MaskMode + let inverted: Bool + + let opacity: NodeProperty + let shape: NodeProperty + let expansion: NodeProperty +} + diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/CompLayers/NullCompositionLayer.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/CompLayers/NullCompositionLayer.swift new file mode 100644 index 00000000..054e245e --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/CompLayers/NullCompositionLayer.swift @@ -0,0 +1,28 @@ +// +// NullCompositionLayer.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/25/19. +// + +import Foundation + +final class NullCompositionLayer: CompositionLayer { + + init(layer: LayerModel) { + super.init(layer: layer, size: .zero) + } + + required init?(coder aDecoder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + override init(layer: Any) { + /// Used for creating shadow model layers. Read More here: https://developer.apple.com/documentation/quartzcore/calayer/1410842-init + guard let layer = layer as? NullCompositionLayer else { + fatalError("init(layer:) Wrong Layer Class") + } + super.init(layer: layer) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/CompLayers/PreCompositionLayer.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/CompLayers/PreCompositionLayer.swift new file mode 100644 index 00000000..eb2b29cf --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/CompLayers/PreCompositionLayer.swift @@ -0,0 +1,104 @@ +// +// PreCompositionLayer.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/25/19. +// + +import Foundation +import QuartzCore + +final class PreCompositionLayer: CompositionLayer { + + let frameRate: CGFloat + let remappingNode: NodeProperty? + fileprivate var animationLayers: [CompositionLayer] + + init(precomp: PreCompLayerModel, + asset: PrecompAsset, + layerImageProvider: LayerImageProvider, + textProvider: AnimationTextProvider, + fontProvider: AnimationFontProvider, + assetLibrary: AssetLibrary?, + frameRate: CGFloat) { + self.animationLayers = [] + if let keyframes = precomp.timeRemapping?.keyframes { + self.remappingNode = NodeProperty(provider: KeyframeInterpolator(keyframes: keyframes)) + } else { + self.remappingNode = nil + } + self.frameRate = frameRate + super.init(layer: precomp, size: CGSize(width: precomp.width, height: precomp.height)) + contentsLayer.masksToBounds = true + contentsLayer.bounds = CGRect(origin: .zero, size: CGSize(width: precomp.width, height: precomp.height)) + + let layers = asset.layers.initializeCompositionLayers(assetLibrary: assetLibrary, layerImageProvider: layerImageProvider, textProvider: textProvider, fontProvider: fontProvider, frameRate: frameRate) + + var imageLayers = [ImageCompositionLayer]() + + var mattedLayer: CompositionLayer? = nil + + for layer in layers.reversed() { + layer.bounds = bounds + animationLayers.append(layer) + if let imageLayer = layer as? ImageCompositionLayer { + imageLayers.append(imageLayer) + } + if let matte = mattedLayer { + /// The previous layer requires this layer to be its matte + matte.matteLayer = layer + mattedLayer = nil + continue + } + if let matte = layer.matteType, + (matte == .add || matte == .invert) { + /// We have a layer that requires a matte. + mattedLayer = layer + } + contentsLayer.addSublayer(layer) + } + + self.childKeypaths.append(contentsOf: layers) + + layerImageProvider.addImageLayers(imageLayers) + } + + override init(layer: Any) { + /// Used for creating shadow model layers. Read More here: https://developer.apple.com/documentation/quartzcore/calayer/1410842-init + guard let layer = layer as? PreCompositionLayer else { + fatalError("init(layer:) Wrong Layer Class") + } + self.frameRate = layer.frameRate + self.remappingNode = nil + self.animationLayers = [] + + super.init(layer: layer) + } + + required init?(coder aDecoder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + override func displayContentsWithFrame(frame: CGFloat, forceUpdates: Bool) { + let localFrame: CGFloat + if let remappingNode = remappingNode { + remappingNode.update(frame: frame) + localFrame = remappingNode.value.cgFloatValue * frameRate + } else { + localFrame = (frame - startFrame) / timeStretch + } + animationLayers.forEach( { $0.displayWithFrame(frame: localFrame, forceUpdates: forceUpdates) }) + } + + override var keypathProperties: [String : AnyNodeProperty] { + guard let remappingNode = remappingNode else { + return super.keypathProperties + } + return ["Time Remap" : remappingNode] + } + + override func updateRenderScale() { + super.updateRenderScale() + animationLayers.forEach( { $0.renderScale = renderScale } ) + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/CompLayers/ShapeCompositionLayer.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/CompLayers/ShapeCompositionLayer.swift new file mode 100644 index 00000000..7a4616d8 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/CompLayers/ShapeCompositionLayer.swift @@ -0,0 +1,56 @@ +// +// ShapeLayerContainer.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/22/19. +// + +import Foundation +import CoreGraphics + +/** + A CompositionLayer responsible for initializing and rendering shapes + */ +final class ShapeCompositionLayer: CompositionLayer { + + let rootNode: AnimatorNode? + let renderContainer: ShapeContainerLayer? + + init(shapeLayer: ShapeLayerModel) { + let results = shapeLayer.items.initializeNodeTree() + let renderContainer = ShapeContainerLayer() + self.renderContainer = renderContainer + self.rootNode = results.rootNode + super.init(layer: shapeLayer, size: .zero) + contentsLayer.addSublayer(renderContainer) + for container in results.renderContainers { + renderContainer.insertRenderLayer(container) + } + rootNode?.updateTree(0, forceUpdates: true) + self.childKeypaths.append(contentsOf: results.childrenNodes) + } + + override init(layer: Any) { + guard let layer = layer as? ShapeCompositionLayer else { + fatalError("init(layer:) wrong class.") + } + self.rootNode = nil + self.renderContainer = nil + super.init(layer: layer) + } + + override func displayContentsWithFrame(frame: CGFloat, forceUpdates: Bool) { + rootNode?.updateTree(frame, forceUpdates: forceUpdates) + renderContainer?.markRenderUpdates(forFrame: frame) + } + + required init?(coder aDecoder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + override func updateRenderScale() { + super.updateRenderScale() + renderContainer?.renderScale = renderScale + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/CompLayers/SolidCompositionLayer.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/CompLayers/SolidCompositionLayer.swift new file mode 100644 index 00000000..6568c35d --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/CompLayers/SolidCompositionLayer.swift @@ -0,0 +1,48 @@ +// +// SolidCompositionLayer.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/25/19. +// + +import Foundation +import QuartzCore + +final class SolidCompositionLayer: CompositionLayer { + + let colorProperty: NodeProperty? + let solidShape: CAShapeLayer = CAShapeLayer() + + init(solid: SolidLayerModel) { + let components = solid.colorHex.hexColorComponents() + self.colorProperty = NodeProperty(provider: SingleValueProvider(Color(r: Double(components.red), g: Double(components.green), b: Double(components.blue), a: 1))) + + super.init(layer: solid, size: .zero) + solidShape.path = CGPath(rect: CGRect(x: 0, y: 0, width: solid.width, height: solid.height), transform: nil) + contentsLayer.addSublayer(solidShape) + } + + override init(layer: Any) { + /// Used for creating shadow model layers. Read More here: https://developer.apple.com/documentation/quartzcore/calayer/1410842-init + guard let layer = layer as? SolidCompositionLayer else { + fatalError("init(layer:) Wrong Layer Class") + } + self.colorProperty = layer.colorProperty + super.init(layer: layer) + } + + required init?(coder aDecoder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + override func displayContentsWithFrame(frame: CGFloat, forceUpdates: Bool) { + guard let colorProperty = colorProperty else { return } + colorProperty.update(frame: frame) + solidShape.fillColor = colorProperty.value.cgColorValue + } + + override var keypathProperties: [String : AnyNodeProperty] { + guard let colorProperty = colorProperty else { return super.keypathProperties } + return ["Color" : colorProperty] + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/CompLayers/TextCompositionLayer.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/CompLayers/TextCompositionLayer.swift new file mode 100644 index 00000000..ac299236 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/CompLayers/TextCompositionLayer.swift @@ -0,0 +1,138 @@ +// +// TextCompositionLayer.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/25/19. +// + +import Foundation +import CoreGraphics +import QuartzCore +import CoreText + +/// Needed for NSMutableParagraphStyle... +#if os(OSX) +import AppKit +#else +import UIKit +#endif + +extension TextJustification { + var textAlignment: NSTextAlignment { + switch self { + case .left: + return .left + case .right: + return .right + case .center: + return .center + } + } + + var caTextAlignement: CATextLayerAlignmentMode { + switch self { + case .left: + return .left + case .right: + return .right + case .center: + return .center + } + } +} + +final class TextCompositionLayer: CompositionLayer { + + let rootNode: TextAnimatorNode? + let textDocument: KeyframeInterpolator? + + let textLayer: TextLayer = TextLayer() + var textProvider: AnimationTextProvider + var fontProvider: AnimationFontProvider + + init(textLayer: TextLayerModel, textProvider: AnimationTextProvider, fontProvider: AnimationFontProvider) { + var rootNode: TextAnimatorNode? + for animator in textLayer.animators { + rootNode = TextAnimatorNode(parentNode: rootNode, textAnimator: animator) + } + self.rootNode = rootNode + self.textDocument = KeyframeInterpolator(keyframes: textLayer.text.keyframes) + + self.textProvider = textProvider + self.fontProvider = fontProvider + + super.init(layer: textLayer, size: .zero) + contentsLayer.addSublayer(self.textLayer) + self.textLayer.masksToBounds = false + } + + required init?(coder aDecoder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + override init(layer: Any) { + /// Used for creating shadow model layers. Read More here: https://developer.apple.com/documentation/quartzcore/calayer/1410842-init + guard let layer = layer as? TextCompositionLayer else { + fatalError("init(layer:) Wrong Layer Class") + } + self.rootNode = nil + self.textDocument = nil + + self.textProvider = DefaultTextProvider() + self.fontProvider = DefaultFontProvider() + + super.init(layer: layer) + } + + override func displayContentsWithFrame(frame: CGFloat, forceUpdates: Bool) { + guard let textDocument = textDocument else { return } + + textLayer.contentsScale = self.renderScale + + let documentUpdate = textDocument.hasUpdate(frame: frame) + let animatorUpdate = rootNode?.updateContents(frame, forceLocalUpdate: forceUpdates) ?? false + guard documentUpdate == true || animatorUpdate == true else { return } + + rootNode?.rebuildOutputs(frame: frame) + + // Get Text Attributes + let text = textDocument.value(frame: frame) as! TextDocument + let strokeColor = rootNode?.textOutputNode.strokeColor ?? text.strokeColorData?.cgColorValue + let strokeWidth = rootNode?.textOutputNode.strokeWidth ?? CGFloat(text.strokeWidth ?? 0) + let tracking = (CGFloat(text.fontSize) * (rootNode?.textOutputNode.tracking ?? CGFloat(text.tracking))) / 1000.0 + let matrix = rootNode?.textOutputNode.xform ?? CATransform3DIdentity + let textString = textProvider.textFor(keypathName: self.keypathName, sourceText: text.text) + let ctFont = fontProvider.fontFor(family: text.fontFamily, size: CGFloat(text.fontSize)) + + // Set all of the text layer options + textLayer.text = textString + textLayer.font = ctFont + textLayer.alignment = text.justification.textAlignment + textLayer.lineHeight = CGFloat(text.lineHeight) + textLayer.tracking = tracking + + if let fillColor = rootNode?.textOutputNode.fillColor { + textLayer.fillColor = fillColor + } else if let fillColor = text.fillColorData?.cgColorValue { + textLayer.fillColor = fillColor + } else { + textLayer.fillColor = nil + } + + textLayer.preferredSize = text.textFrameSize?.sizeValue + textLayer.strokeOnTop = text.strokeOverFill ?? false + textLayer.strokeWidth = strokeWidth + textLayer.strokeColor = strokeColor + textLayer.sizeToFit() + + textLayer.opacity = Float(rootNode?.textOutputNode.opacity ?? 1) + textLayer.transform = CATransform3DIdentity + textLayer.position = text.textFramePosition?.pointValue ?? CGPoint.zero + textLayer.transform = matrix + } + + override func updateRenderScale() { + super.updateRenderScale() + textLayer.contentsScale = self.renderScale + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/Utility/CompositionLayersInitializer.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/Utility/CompositionLayersInitializer.swift new file mode 100644 index 00000000..de69bef5 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/Utility/CompositionLayersInitializer.swift @@ -0,0 +1,81 @@ +// +// CompositionLayersInitializer.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/25/19. +// + +import Foundation +import CoreGraphics + +extension Array where Element == LayerModel { + + func initializeCompositionLayers(assetLibrary: AssetLibrary?, + layerImageProvider: LayerImageProvider, + textProvider: AnimationTextProvider, + fontProvider: AnimationFontProvider, + frameRate: CGFloat) -> [CompositionLayer] { + var compositionLayers = [CompositionLayer]() + var layerMap = [Int : CompositionLayer]() + + /// Organize the assets into a dictionary of [ID : ImageAsset] + var childLayers = [LayerModel]() + + for layer in self { + if layer.hidden == true { + let genericLayer = NullCompositionLayer(layer: layer) + compositionLayers.append(genericLayer) + layerMap[layer.index] = genericLayer + } else if let shapeLayer = layer as? ShapeLayerModel { + let shapeContainer = ShapeCompositionLayer(shapeLayer: shapeLayer) + compositionLayers.append(shapeContainer) + layerMap[layer.index] = shapeContainer + } else if let solidLayer = layer as? SolidLayerModel { + let solidContainer = SolidCompositionLayer(solid: solidLayer) + compositionLayers.append(solidContainer) + layerMap[layer.index] = solidContainer + } else if let precompLayer = layer as? PreCompLayerModel, + let assetLibrary = assetLibrary, + let precompAsset = assetLibrary.precompAssets[precompLayer.referenceID] { + let precompContainer = PreCompositionLayer(precomp: precompLayer, + asset: precompAsset, + layerImageProvider: layerImageProvider, + textProvider: textProvider, + fontProvider: fontProvider, + assetLibrary: assetLibrary, + frameRate: frameRate) + compositionLayers.append(precompContainer) + layerMap[layer.index] = precompContainer + } else if let imageLayer = layer as? ImageLayerModel, + let assetLibrary = assetLibrary, + let imageAsset = assetLibrary.imageAssets[imageLayer.referenceID] { + let imageContainer = ImageCompositionLayer(imageLayer: imageLayer, size: CGSize(width: imageAsset.width, height: imageAsset.height)) + compositionLayers.append(imageContainer) + layerMap[layer.index] = imageContainer + } else if let textLayer = layer as? TextLayerModel { + let textContainer = TextCompositionLayer(textLayer: textLayer, textProvider: textProvider, fontProvider: fontProvider) + compositionLayers.append(textContainer) + layerMap[layer.index] = textContainer + } else { + let genericLayer = NullCompositionLayer(layer: layer) + compositionLayers.append(genericLayer) + layerMap[layer.index] = genericLayer + } + if layer.parent != nil { + childLayers.append(layer) + } + } + + /// Now link children with their parents + for layerModel in childLayers { + if let parentID = layerModel.parent { + let childLayer = layerMap[layerModel.index] + let parentLayer = layerMap[parentID] + childLayer?.transformNode.parentNode = parentLayer?.transformNode + } + } + + return compositionLayers + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/Utility/InvertedMatteLayer.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/Utility/InvertedMatteLayer.swift new file mode 100644 index 00000000..17e79210 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/Utility/InvertedMatteLayer.swift @@ -0,0 +1,57 @@ +// +// InvertedMatteLayer.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/28/19. +// + +import Foundation +import QuartzCore + +/** + A layer that inverses the alpha output of its input layer. + + WARNING: This is experimental and probably not very performant. + */ +final class InvertedMatteLayer: CALayer, CompositionLayerDelegate { + + let inputMatte: CompositionLayer? + let wrapperLayer = CALayer() + + init(inputMatte: CompositionLayer) { + self.inputMatte = inputMatte + super.init() + inputMatte.layerDelegate = self + self.anchorPoint = .zero + self.bounds = inputMatte.bounds + self.setNeedsDisplay() + } + + override init(layer: Any) { + guard let layer = layer as? InvertedMatteLayer else { + fatalError("init(layer:) wrong class.") + } + self.inputMatte = nil + super.init(layer: layer) + } + + func frameUpdated(frame: CGFloat) { + self.setNeedsDisplay() + self.displayIfNeeded() + } + + required init?(coder aDecoder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + override func draw(in ctx: CGContext) { + guard let inputMatte = inputMatte else { return } + guard let fillColor = CGColor(colorSpace: CGColorSpaceCreateDeviceRGB(), components: [0, 0, 0, 1]) + else { return } + ctx.setFillColor(fillColor) + ctx.fill(bounds) + ctx.setBlendMode(.destinationOut) + inputMatte.render(in: ctx) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/Utility/LayerFontProvider.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/Utility/LayerFontProvider.swift new file mode 100644 index 00000000..39e73363 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/Utility/LayerFontProvider.swift @@ -0,0 +1,37 @@ +// +// LayerFontProvider.swift +// Lottie +// +// Created by Brandon Withrow on 8/5/20. +// Copyright © 2020 YurtvilleProds. All rights reserved. +// + +import Foundation + +/// Connects a LottieFontProvider to a group of text layers +final class LayerFontProvider { + + var fontProvider: AnimationFontProvider { + didSet { + reloadTexts() + } + } + + fileprivate(set) var textLayers: [TextCompositionLayer] + + init(fontProvider: AnimationFontProvider) { + self.fontProvider = fontProvider + self.textLayers = [] + reloadTexts() + } + + func addTextLayers(_ layers: [TextCompositionLayer]) { + textLayers += layers + } + + func reloadTexts() { + textLayers.forEach { + $0.fontProvider = fontProvider + } + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/Utility/LayerImageProvider.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/Utility/LayerImageProvider.swift new file mode 100644 index 00000000..cb9bdb9a --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/Utility/LayerImageProvider.swift @@ -0,0 +1,49 @@ +// +// LayerImageProvider.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/25/19. +// + +import Foundation + +/// Connects a LottieImageProvider to a group of image layers +final class LayerImageProvider { + + var imageProvider: AnimationImageProvider { + didSet { + reloadImages() + } + } + + fileprivate(set) var imageLayers: [ImageCompositionLayer] + let imageAssets: [String : ImageAsset] + + init(imageProvider: AnimationImageProvider, assets: [String : ImageAsset]?) { + self.imageProvider = imageProvider + self.imageLayers = [ImageCompositionLayer]() + if let assets = assets { + self.imageAssets = assets + } else { + self.imageAssets = [:] + } + reloadImages() + } + + func addImageLayers(_ layers: [ImageCompositionLayer]) { + for layer in layers { + if imageAssets[layer.imageReferenceID] != nil { + /// Found a linking asset in our asset library. Add layer + imageLayers.append(layer) + } + } + } + + func reloadImages() { + for imageLayer in imageLayers { + if let asset = imageAssets[imageLayer.imageReferenceID] { + imageLayer.image = imageProvider.imageForAsset(asset: asset) + } + } + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/Utility/LayerTextProvider.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/Utility/LayerTextProvider.swift new file mode 100644 index 00000000..3435abbc --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/Utility/LayerTextProvider.swift @@ -0,0 +1,36 @@ +// +// LayerTextProvider.swift +// lottie-ios-iOS +// +// Created by Alexandr Goncharov on 07/06/2019. +// + +import Foundation + +/// Connects a LottieTextProvider to a group of text layers +final class LayerTextProvider { + + var textProvider: AnimationTextProvider { + didSet { + reloadTexts() + } + } + + fileprivate(set) var textLayers: [TextCompositionLayer] + + init(textProvider: AnimationTextProvider) { + self.textProvider = textProvider + self.textLayers = [] + reloadTexts() + } + + func addTextLayers(_ layers: [TextCompositionLayer]) { + textLayers += layers + } + + func reloadTexts() { + textLayers.forEach { + $0.textProvider = textProvider + } + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/Utility/LayerTransformNode.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/Utility/LayerTransformNode.swift new file mode 100644 index 00000000..dd952942 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/Utility/LayerTransformNode.swift @@ -0,0 +1,128 @@ +// +// LayerTransformPropertyMap.swift +// lottie-swift +// +// Created by Brandon Withrow on 2/4/19. +// + +import Foundation +import CoreGraphics +import QuartzCore + +final class LayerTransformProperties: NodePropertyMap, KeypathSearchable { + + init(transform: Transform) { + + self.anchor = NodeProperty(provider: KeyframeInterpolator(keyframes: transform.anchorPoint.keyframes)) + self.scale = NodeProperty(provider: KeyframeInterpolator(keyframes: transform.scale.keyframes)) + self.rotation = NodeProperty(provider: KeyframeInterpolator(keyframes: transform.rotation.keyframes)) + self.opacity = NodeProperty(provider: KeyframeInterpolator(keyframes: transform.opacity.keyframes)) + + var propertyMap: [String: AnyNodeProperty] = [ + "Anchor Point" : anchor, + "Scale" : scale, + "Rotation" : rotation, + "Opacity" : opacity + ] + + if let positionKeyframesX = transform.positionX?.keyframes, + let positionKeyframesY = transform.positionY?.keyframes { + let xPosition: NodeProperty = NodeProperty(provider: KeyframeInterpolator(keyframes: positionKeyframesX)) + let yPosition: NodeProperty = NodeProperty(provider: KeyframeInterpolator(keyframes: positionKeyframesY)) + propertyMap["X Position"] = xPosition + propertyMap["Y Position"] = yPosition + self.positionX = xPosition + self.positionY = yPosition + self.position = nil + } else if let positionKeyframes = transform.position?.keyframes { + let position: NodeProperty = NodeProperty(provider: KeyframeInterpolator(keyframes: positionKeyframes)) + propertyMap["Position"] = position + self.position = position + self.positionX = nil + self.positionY = nil + } else { + self.position = nil + self.positionY = nil + self.positionX = nil + } + + self.keypathProperties = propertyMap + self.properties = Array(propertyMap.values) + } + + let keypathProperties: [String : AnyNodeProperty] + var keypathName: String = "Transform" + + var childKeypaths: [KeypathSearchable] { + return [] + } + + let properties: [AnyNodeProperty] + + let anchor: NodeProperty + let scale: NodeProperty + let rotation: NodeProperty + let position: NodeProperty? + let positionX: NodeProperty? + let positionY: NodeProperty? + let opacity: NodeProperty + +} + +class LayerTransformNode: AnimatorNode { + let outputNode: NodeOutput = PassThroughOutputNode(parent: nil) + + init(transform: Transform) { + self.transformProperties = LayerTransformProperties(transform: transform) + } + + let transformProperties: LayerTransformProperties + + // MARK: Animator Node Protocol + + var propertyMap: NodePropertyMap & KeypathSearchable { + return transformProperties + } + + var parentNode: AnimatorNode? + var hasLocalUpdates: Bool = false + var hasUpstreamUpdates: Bool = false + var lastUpdateFrame: CGFloat? = nil + var isEnabled: Bool = true + + func shouldRebuildOutputs(frame: CGFloat) -> Bool { + return hasLocalUpdates || hasUpstreamUpdates + } + + func rebuildOutputs(frame: CGFloat) { + opacity = Float(transformProperties.opacity.value.cgFloatValue) * 0.01 + + let position: CGPoint + if let point = transformProperties.position?.value.pointValue { + position = point + } else if let xPos = transformProperties.positionX?.value.cgFloatValue, + let yPos = transformProperties.positionY?.value.cgFloatValue { + position = CGPoint(x: xPos, y: yPos) + } else { + position = .zero + } + + localTransform = CATransform3D.makeTransform(anchor: transformProperties.anchor.value.pointValue, + position: position, + scale: transformProperties.scale.value.sizeValue, + rotation: transformProperties.rotation.value.cgFloatValue, + skew: nil, + skewAxis: nil) + + if let parentNode = parentNode as? LayerTransformNode { + globalTransform = CATransform3DConcat(localTransform, parentNode.globalTransform) + } else { + globalTransform = localTransform + } + } + + var opacity: Float = 1 + var localTransform: CATransform3D = CATransform3DIdentity + var globalTransform: CATransform3D = CATransform3DIdentity + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/Utility/TextLayer.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/Utility/TextLayer.swift new file mode 100644 index 00000000..3efd49f5 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/LayerContainers/Utility/TextLayer.swift @@ -0,0 +1,304 @@ +// +// TextLayer.swift +// Pods +// +// Created by Brandon Withrow on 8/3/20. +// + +import Foundation +import CoreText +import QuartzCore +import CoreGraphics +/// Needed for NSMutableParagraphStyle... +#if os(OSX) +import AppKit +#else +import UIKit +#endif + +final class TextLayer: CALayer { + + public var text: String? { + didSet { + needsContentUpdate = true + self.setNeedsLayout() + self.setNeedsDisplay() + } + } + + public var font: CTFont? { + didSet { + needsContentUpdate = true + self.setNeedsLayout() + self.setNeedsDisplay() + } + } + + public var alignment: NSTextAlignment = .left { + didSet { + needsContentUpdate = true + self.setNeedsLayout() + self.setNeedsDisplay() + } + } + + public var lineHeight: CGFloat = 0 { + didSet { + needsContentUpdate = true + self.setNeedsLayout() + self.setNeedsDisplay() + } + } + + public var tracking: CGFloat = 0 { + didSet { + needsContentUpdate = true + self.setNeedsLayout() + self.setNeedsDisplay() + } + } + + public var fillColor: CGColor? { + didSet { + needsContentUpdate = true + self.setNeedsLayout() + self.setNeedsDisplay() + } + } + + public var strokeColor: CGColor? { + didSet { + needsContentUpdate = true + self.setNeedsLayout() + self.setNeedsDisplay() + } + } + + public var strokeWidth: CGFloat = 0 { + didSet { + needsContentUpdate = true + self.setNeedsLayout() + self.setNeedsDisplay() + } + } + + public var strokeOnTop: Bool = false { + didSet { + self.setNeedsLayout() + self.setNeedsDisplay() + } + } + + public var preferredSize: CGSize? { + didSet { + needsContentUpdate = true + self.setNeedsLayout() + self.setNeedsDisplay() + } + } + + public func sizeToFit() { + updateTextContent() + bounds = drawingRect + anchorPoint = drawingAnchor + self.setNeedsLayout() + self.setNeedsDisplay() + } + + override func action(forKey event: String) -> CAAction? { + return nil + } + + // Draws Debug colors for the font alignment. + @available(macOS 10.15, iOS 13, watchOS 6, tvOS 13, *) + private func drawDebug(_ ctx: CGContext) { + if let font = font { + let ascent = CTFontGetAscent(font) + let descent = CTFontGetDescent(font) + let capHeight = CTFontGetCapHeight(font) + let leading = CTFontGetLeading(font) + + // Ascent Red + ctx.setFillColor(CGColor(srgbRed: 1, green: 0, blue: 0, alpha: 0.5)) + ctx.fill(CGRect(x:0, y:0, width:drawingRect.width, height:ascent)) + + // Descent Blue + ctx.setFillColor(CGColor(srgbRed: 0, green: 0, blue: 1, alpha: 0.5)) + ctx.fill(CGRect(x:0, y:ascent, width:drawingRect.width, height:descent)) + + // Leading Yellow + ctx.setFillColor(CGColor(srgbRed: 1, green: 1, blue: 0, alpha: 0.5)) + ctx.fill(CGRect(x:0, y:ascent+descent, width:drawingRect.width, height:leading)) + + // Cap height Green + ctx.setFillColor(CGColor(srgbRed: 0, green: 1, blue: 0, alpha: 0.5)) + ctx.fill(CGRect(x:0, y:ascent - capHeight, width:drawingRect.width, height:capHeight)) + + if drawingRect.height - ascent+descent+leading > 0 { + // Remainder + ctx.setFillColor(CGColor(srgbRed: 0, green: 1, blue: 1, alpha: 0.5)) + ctx.fill(CGRect(x:0, y:ascent+descent+leading, width:drawingRect.width, height:drawingRect.height - ascent+descent+leading)) + } + } + } + + override func draw(in ctx: CGContext) { + guard let attributedString = attributedString else { return } + updateTextContent() + guard fillFrameSetter != nil || strokeFrameSetter != nil else { return } + + ctx.textMatrix = .identity + ctx.setAllowsAntialiasing(true) + ctx.setAllowsFontSmoothing(true) + ctx.setAllowsFontSubpixelPositioning(true) + ctx.setAllowsFontSubpixelQuantization(true) + + ctx.setShouldAntialias(true) + ctx.setShouldSmoothFonts(true) + ctx.setShouldSubpixelPositionFonts(true) + ctx.setShouldSubpixelQuantizeFonts(true) + + ctx.translateBy(x: 0, y: drawingRect.height) + ctx.scaleBy(x: 1.0, y: -1.0) + + let drawingPath = CGPath(rect: drawingRect, transform: nil) + + let fillFrame: CTFrame? + if let setter = fillFrameSetter { + fillFrame = CTFramesetterCreateFrame(setter, CFRangeMake(0, attributedString.length), drawingPath, nil) + } else { + fillFrame = nil + } + + let strokeFrame: CTFrame? + if let setter = strokeFrameSetter { + strokeFrame = CTFramesetterCreateFrame(setter, CFRangeMake(0, attributedString.length), drawingPath, nil) + } else { + strokeFrame = nil + } + + + if !strokeOnTop, let strokeFrame = strokeFrame { + CTFrameDraw(strokeFrame, ctx) + } + + if let fillFrame = fillFrame { + CTFrameDraw(fillFrame, ctx) + } + + if strokeOnTop, let strokeFrame = strokeFrame { + CTFrameDraw(strokeFrame, ctx) + } + } + + private var drawingRect: CGRect = .zero + private var drawingAnchor: CGPoint = .zero + private var fillFrameSetter: CTFramesetter? + private var attributedString: NSAttributedString? + private var strokeFrameSetter: CTFramesetter? + private var needsContentUpdate: Bool = false + + private func updateTextContent() { + guard needsContentUpdate else { return } + needsContentUpdate = false + guard let font = font, let text = text, text.count > 0, (fillColor != nil || strokeColor != nil) else { + drawingRect = .zero + drawingAnchor = .zero + attributedString = nil + fillFrameSetter = nil + strokeFrameSetter = nil + return + } + + // Get Font properties + let ascent = CTFontGetAscent(font) + let descent = CTFontGetDescent(font) + let capHeight = CTFontGetCapHeight(font) + let leading = CTFontGetLeading(font) + let minLineHeight = -(ascent + descent + leading) + + // Calculate line spacing + let lineSpacing = max(CGFloat(minLineHeight) + lineHeight, CGFloat(minLineHeight)) + // Build Attributes + let paragraphStyle = NSMutableParagraphStyle() + paragraphStyle.lineSpacing = lineSpacing + paragraphStyle.lineHeightMultiple = 1 + paragraphStyle.maximumLineHeight = ascent+descent+leading + paragraphStyle.alignment = alignment + paragraphStyle.lineBreakMode = NSLineBreakMode.byWordWrapping + var attributes: [NSAttributedString.Key : Any] = [ + NSAttributedString.Key.ligature: 0, + NSAttributedString.Key.font: font, + NSAttributedString.Key.kern: tracking, + NSAttributedString.Key.paragraphStyle: paragraphStyle + ] + + if let fillColor = fillColor { + attributes[NSAttributedString.Key.foregroundColor] = fillColor + } + + let attrString = NSAttributedString(string: text, attributes: attributes) + attributedString = attrString + + if fillColor != nil { + let setter = CTFramesetterCreateWithAttributedString(attrString as CFAttributedString) + fillFrameSetter = setter + } else { + fillFrameSetter = nil + } + + if let strokeColor = strokeColor { + attributes[NSAttributedString.Key.foregroundColor] = nil + attributes[NSAttributedString.Key.strokeWidth] = strokeWidth + attributes[NSAttributedString.Key.strokeColor] = strokeColor + let strokeAttributedString = NSAttributedString(string: text, attributes: attributes) + strokeFrameSetter = CTFramesetterCreateWithAttributedString(strokeAttributedString as CFAttributedString) + } else { + strokeFrameSetter = nil + strokeWidth = 0 + } + + guard let setter = fillFrameSetter ?? strokeFrameSetter else { + return + } + + // Calculate drawing size and anchor offset + let textAnchor: CGPoint + if let preferredSize = preferredSize { + drawingRect = CGRect(origin: .zero, size: preferredSize) + drawingRect.size.height += (ascent - capHeight) + drawingRect.size.height += descent + textAnchor = CGPoint(x: 0, y: (ascent-capHeight)) + } else { + let size = CTFramesetterSuggestFrameSizeWithConstraints( + setter, + CFRange(location: 0, length: attrString.length), + nil, + CGSize(width: CGFloat.greatestFiniteMagnitude, height: CGFloat.greatestFiniteMagnitude), + nil + ) + switch alignment { + case .left: + textAnchor = CGPoint(x: 0, y: ascent) + case .right: + textAnchor = CGPoint(x: size.width, y: ascent) + case .center: + textAnchor = CGPoint(x: size.width * 0.5, y: ascent) + default: + textAnchor = .zero + } + drawingRect = CGRect(x: 0, y: 0, width: ceil(size.width), + height: ceil(size.height)) + } + + // Now Calculate Anchor + drawingAnchor = CGPoint(x: textAnchor.x.remap(fromLow: 0, fromHigh: drawingRect.size.width, toLow: 0, toHigh: 1), + y: textAnchor.y.remap(fromLow: 0, fromHigh: drawingRect.size.height, toLow: 0, toHigh: 1)) + + if fillFrameSetter != nil && strokeFrameSetter != nil { + drawingRect.size.width += strokeWidth + drawingRect.size.height += strokeWidth + } + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Animation.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Animation.swift new file mode 100644 index 00000000..2ba10329 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Animation.swift @@ -0,0 +1,107 @@ +// +// Animation.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/7/19. +// + +import Foundation + +public enum CoordinateSpace: Int, Codable { + case type2d + case type3d +} + +/** + The `Animation` model is the top level model object in Lottie. + + An `Animation` holds all of the animation data backing a Lottie Animation. + Codable, see JSON schema [here](https://github.com/airbnb/lottie-web/tree/master/docs/json). + */ +public final class Animation: Codable { + + /// The version of the JSON Schema. + let version: String + + /// The coordinate space of the composition. + let type: CoordinateSpace + + /// The start time of the composition in frameTime. + public let startFrame: AnimationFrameTime + + /// The end time of the composition in frameTime. + public let endFrame: AnimationFrameTime + + /// The frame rate of the composition. + public let framerate: Double + + /// The height of the composition in points. + let width: Int + + /// The width of the composition in points. + let height: Int + + /// The list of animation layers + let layers: [LayerModel] + + /// The list of glyphs used for text rendering + let glyphs: [Glyph]? + + /// The list of fonts used for text rendering + let fonts: FontList? + + /// Asset Library + let assetLibrary: AssetLibrary? + + /// Markers + let markers: [Marker]? + let markerMap: [String : Marker]? + + /// Return all marker names, in order, or an empty list if none are specified + public var markerNames: [String] { + guard let markers = markers else { return [] } + return markers.map { $0.name } + } + + enum CodingKeys : String, CodingKey { + case version = "v" + case type = "ddd" + case startFrame = "ip" + case endFrame = "op" + case framerate = "fr" + case width = "w" + case height = "h" + case layers = "layers" + case glyphs = "chars" + case fonts = "fonts" + case assetLibrary = "assets" + case markers = "markers" + } + + required public init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: Animation.CodingKeys.self) + self.version = try container.decode(String.self, forKey: .version) + self.type = try container.decodeIfPresent(CoordinateSpace.self, forKey: .type) ?? .type2d + self.startFrame = try container.decode(AnimationFrameTime.self, forKey: .startFrame) + self.endFrame = try container.decode(AnimationFrameTime.self, forKey: .endFrame) + self.framerate = try container.decode(Double.self, forKey: .framerate) + self.width = try container.decode(Int.self, forKey: .width) + self.height = try container.decode(Int.self, forKey: .height) + self.layers = try container.decode([LayerModel].self, ofFamily: LayerType.self, forKey: .layers) + self.glyphs = try container.decodeIfPresent([Glyph].self, forKey: .glyphs) + self.fonts = try container.decodeIfPresent(FontList.self, forKey: .fonts) + self.assetLibrary = try container.decodeIfPresent(AssetLibrary.self, forKey: .assetLibrary) + self.markers = try container.decodeIfPresent([Marker].self, forKey: .markers) + + if let markers = markers { + var markerMap: [String : Marker] = [:] + for marker in markers { + markerMap[marker.name] = marker + } + self.markerMap = markerMap + } else { + self.markerMap = nil + } + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Assets/Asset.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Assets/Asset.swift new file mode 100644 index 00000000..85d47f81 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Assets/Asset.swift @@ -0,0 +1,27 @@ +// +// Asset.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/9/19. +// + +import Foundation + +public class Asset: Codable { + + /// The ID of the asset + public let id: String + + private enum CodingKeys : String, CodingKey { + case id = "id" + } + + required public init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: Asset.CodingKeys.self) + if let id = try? container.decode(String.self, forKey: .id) { + self.id = id + } else { + self.id = String(try container.decode(Int.self, forKey: .id)) + } + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Assets/AssetLibrary.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Assets/AssetLibrary.swift new file mode 100644 index 00000000..d9dbf909 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Assets/AssetLibrary.swift @@ -0,0 +1,48 @@ +// +// AssetLibrary.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/9/19. +// + +import Foundation + +final class AssetLibrary: Codable { + + /// The Assets + let assets: [String : Asset] + + let imageAssets: [String : ImageAsset] + let precompAssets: [String : PrecompAsset] + + required init(from decoder: Decoder) throws { + var container = try decoder.unkeyedContainer() + var containerForKeys = container + + var decodedAssets = [String : Asset]() + + var imageAssets = [String : ImageAsset]() + var precompAssets = [String : PrecompAsset]() + + while !container.isAtEnd { + let keyContainer = try containerForKeys.nestedContainer(keyedBy: PrecompAsset.CodingKeys.self) + if keyContainer.contains(.layers) { + let precompAsset = try container.decode(PrecompAsset.self) + decodedAssets[precompAsset.id] = precompAsset + precompAssets[precompAsset.id] = precompAsset + } else { + let imageAsset = try container.decode(ImageAsset.self) + decodedAssets[imageAsset.id] = imageAsset + imageAssets[imageAsset.id] = imageAsset + } + } + self.assets = decodedAssets + self.precompAssets = precompAssets + self.imageAssets = imageAssets + } + + func encode(to encoder: Encoder) throws { + var container = encoder.unkeyedContainer() + try container.encode(contentsOf: Array(assets.values)) + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Assets/ImageAsset.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Assets/ImageAsset.swift new file mode 100644 index 00000000..aeff1373 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Assets/ImageAsset.swift @@ -0,0 +1,48 @@ +// +// ImageAsset.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/9/19. +// + +import Foundation + +public final class ImageAsset: Asset { + + /// Image name + public let name: String + + /// Image Directory + public let directory: String + + /// Image Size + public let width: Double + + public let height: Double + + enum CodingKeys : String, CodingKey { + case name = "p" + case directory = "u" + case width = "w" + case height = "h" + } + + required init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: ImageAsset.CodingKeys.self) + self.name = try container.decode(String.self, forKey: .name) + self.directory = try container.decode(String.self, forKey: .directory) + self.width = try container.decode(Double.self, forKey: .width) + self.height = try container.decode(Double.self, forKey: .height) + try super.init(from: decoder) + } + + override public func encode(to encoder: Encoder) throws { + try super.encode(to: encoder) + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encode(name, forKey: .name) + try container.encode(directory, forKey: .directory) + try container.encode(width, forKey: .width) + try container.encode(height, forKey: .height) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Assets/PrecompAsset.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Assets/PrecompAsset.swift new file mode 100644 index 00000000..963e0bb1 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Assets/PrecompAsset.swift @@ -0,0 +1,30 @@ +// +// PrecompAsset.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/9/19. +// + +import Foundation + +final class PrecompAsset: Asset { + + /// Layers of the precomp + let layers: [LayerModel] + + enum CodingKeys : String, CodingKey { + case layers = "layers" + } + + required init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: PrecompAsset.CodingKeys.self) + self.layers = try container.decode([LayerModel].self, ofFamily: LayerType.self, forKey: .layers) + try super.init(from: decoder) + } + + override func encode(to encoder: Encoder) throws { + try super.encode(to: encoder) + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encode(layers, forKey: .layers) + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Extensions/KeyedDecodingContainerExtensions.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Extensions/KeyedDecodingContainerExtensions.swift new file mode 100644 index 00000000..29fe104d --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Extensions/KeyedDecodingContainerExtensions.swift @@ -0,0 +1,40 @@ +// From: https://medium.com/@kewindannerfjordremeczki/swift-4-0-decodable-heterogeneous-collections-ecc0e6b468cf + +import Foundation + +/// To support a new class family, create an enum that conforms to this protocol and contains the different types. +protocol ClassFamily: Decodable { + /// The discriminator key. + static var discriminator: Discriminator { get } + + /// Returns the class type of the object corresponding to the value. + func getType() -> AnyObject.Type +} + +/// Discriminator key enum used to retrieve discriminator fields in JSON payloads. +enum Discriminator: String, CodingKey { + case type = "ty" +} + +extension KeyedDecodingContainer { + + /// Decode a heterogeneous list of objects for a given family. + /// - Parameters: + /// - heterogeneousType: The decodable type of the list. + /// - family: The ClassFamily enum for the type family. + /// - key: The CodingKey to look up the list in the current container. + /// - Returns: The resulting list of heterogeneousType elements. + func decode(_ heterogeneousType: [T].Type, ofFamily family: U.Type, forKey key: K) throws -> [T] { + var container = try self.nestedUnkeyedContainer(forKey: key) + var list = [T]() + var tmpContainer = container + while !container.isAtEnd { + let typeContainer = try container.nestedContainer(keyedBy: Discriminator.self) + let family: U = try typeContainer.decode(U.self, forKey: U.discriminator) + if let type = family.getType() as? T.Type { + list.append(try tmpContainer.decode(type)) + } + } + return list + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Keyframes/Keyframe.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Keyframes/Keyframe.swift new file mode 100644 index 00000000..c88065b2 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Keyframes/Keyframe.swift @@ -0,0 +1,128 @@ +// +// Keyframe.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/7/19. +// + +import Foundation +import CoreGraphics + +/** + Keyframe represents a point in time and is the container for datatypes. + Note: This is a parent class and should not be used directly. + */ +final class Keyframe { + + /// The value of the keyframe + let value: T + /// The time in frames of the keyframe. + let time: CGFloat + /// A hold keyframe freezes interpolation until the next keyframe that is not a hold. + let isHold: Bool + /// The in tangent for the time interpolation curve. + let inTangent: Vector2D? + /// The out tangent for the time interpolation curve. + let outTangent: Vector2D? + + /// The spacial in tangent of the vector. + let spatialInTangent: Vector3D? + /// The spacial out tangent of the vector. + let spatialOutTangent: Vector3D? + + /// Initialize a value-only keyframe with no time data. + init(_ value: T, + spatialInTangent: Vector3D? = nil, + spatialOutTangent: Vector3D? = nil) { + self.value = value + self.time = 0 + self.isHold = true + self.inTangent = nil + self.outTangent = nil + self.spatialInTangent = spatialInTangent + self.spatialOutTangent = spatialOutTangent + } + + /// Initialize a keyframe + init(value: T, + time: Double, + isHold: Bool, + inTangent: Vector2D?, + outTangent: Vector2D?, + spatialInTangent: Vector3D? = nil, + spatialOutTangent: Vector3D? = nil) { + self.value = value + self.time = CGFloat(time) + self.isHold = isHold + self.outTangent = outTangent + self.inTangent = inTangent + self.spatialInTangent = spatialInTangent + self.spatialOutTangent = spatialOutTangent + } + +} + +/** + A generic class used to parse and remap keyframe json. + + Keyframe json has a couple of different variations and formats depending on the + type of keyframea and also the version of the JSON. By parsing the raw data + we can reconfigure it into a constant format. + */ +final class KeyframeData: Codable { + + /// The start value of the keyframe + let startValue: T? + /// The End value of the keyframe. Note: Newer versions animation json do not have this field. + let endValue: T? + /// The time in frames of the keyframe. + let time: Double? + /// A hold keyframe freezes interpolation until the next keyframe that is not a hold. + let hold: Int? + + /// The in tangent for the time interpolation curve. + let inTangent: Vector2D? + /// The out tangent for the time interpolation curve. + let outTangent: Vector2D? + + /// The spacial in tangent of the vector. + let spatialInTangent: Vector3D? + /// The spacial out tangent of the vector. + let spatialOutTangent:Vector3D? + + init(startValue: T?, + endValue: T?, + time: Double?, + hold: Int?, + inTangent: Vector2D?, + outTangent: Vector2D?, + spatialInTangent: Vector3D?, + spatialOutTangent: Vector3D?) { + self.startValue = startValue + self.endValue = endValue + self.time = time + self.hold = hold + self.inTangent = inTangent + self.outTangent = outTangent + self.spatialInTangent = spatialInTangent + self.spatialOutTangent = spatialOutTangent + } + + enum CodingKeys : String, CodingKey { + case startValue = "s" + case endValue = "e" + case time = "t" + case hold = "h" + case inTangent = "i" + case outTangent = "o" + case spatialInTangent = "ti" + case spatialOutTangent = "to" + } + + var isHold: Bool { + if let hold = hold { + return hold > 0 + } + return false + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Keyframes/KeyframeGroup.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Keyframes/KeyframeGroup.swift new file mode 100644 index 00000000..f64adc0b --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Keyframes/KeyframeGroup.swift @@ -0,0 +1,108 @@ +// +// KeyframeGroup.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/14/19. +// + +import Foundation + +/** + Used for coding/decoding a group of Keyframes by type. + + Keyframe data is wrapped in a dictionary { "k" : KeyframeData }. + The keyframe data can either be an array of keyframes or, if no animation is present, the raw value. + This helper object is needed to properly decode the json. + */ + +final class KeyframeGroup: Codable where T: Codable, T: Interpolatable { + + let keyframes: ContiguousArray> + + private enum KeyframeWrapperKey: String, CodingKey { + case keyframeData = "k" + } + + init(keyframes: ContiguousArray>) { + self.keyframes = keyframes + } + + init(_ value: T) { + self.keyframes = [Keyframe(value)] + } + + required init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: KeyframeWrapperKey.self) + + if let keyframeData: T = try? container.decode(T.self, forKey: .keyframeData) { + /// Try to decode raw value; No keyframe data. + self.keyframes = [Keyframe(keyframeData)] + } else { + /** + Decode and array of keyframes. + + Body Movin and Lottie deal with keyframes in different ways. + + A keyframe object in Body movin defines a span of time with a START + and an END, from the current keyframe time to the next keyframe time. + + A keyframe object in Lottie defines a singular point in time/space. + This point has an in-tangent and an out-tangent. + + To properly decode this we must iterate through keyframes while holding + reference to the previous keyframe. + */ + + var keyframesContainer = try container.nestedUnkeyedContainer(forKey: .keyframeData) + var keyframes = ContiguousArray>() + var previousKeyframeData: KeyframeData? + while(!keyframesContainer.isAtEnd) { + // Ensure that Time and Value are present. + + let keyframeData = try keyframesContainer.decode(KeyframeData.self) + + guard let value: T = keyframeData.startValue ?? previousKeyframeData?.endValue, + let time = keyframeData.time else { + /// Missing keyframe data. JSON must be corrupt. + throw DecodingError.dataCorruptedError(forKey: KeyframeWrapperKey.keyframeData, in: container, debugDescription: "Missing keyframe data.") + } + + keyframes.append(Keyframe(value: value, + time: time, + isHold: keyframeData.isHold, + inTangent: previousKeyframeData?.inTangent, + outTangent: keyframeData.outTangent, + spatialInTangent: previousKeyframeData?.spatialInTangent, + spatialOutTangent: keyframeData.spatialOutTangent)) + previousKeyframeData = keyframeData + } + self.keyframes = keyframes + } + } + + func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: KeyframeWrapperKey.self) + + if keyframes.count == 1 { + let keyframe = keyframes[0] + try container.encode(keyframe.value, forKey: .keyframeData) + } else { + var keyframeContainer = container.nestedUnkeyedContainer(forKey: .keyframeData) + + for i in 1..(startValue: keyframe.value, + endValue: nextKeyframe.value, + time: Double(keyframe.time), + hold: keyframe.isHold ? 1 : nil, + inTangent: nextKeyframe.inTangent, + outTangent: keyframe.outTangent, + spatialInTangent: nil, + spatialOutTangent: nil) + try keyframeContainer.encode(keyframeData) + } + } + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Layers/ImageLayerModel.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Layers/ImageLayerModel.swift new file mode 100644 index 00000000..69619623 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Layers/ImageLayerModel.swift @@ -0,0 +1,32 @@ +// +// ImageLayer.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/8/19. +// + +import Foundation + +/// A layer that holds an image. +final class ImageLayerModel: LayerModel { + + /// The reference ID of the image. + let referenceID: String + + private enum CodingKeys : String, CodingKey { + case referenceID = "refId" + } + + required init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: ImageLayerModel.CodingKeys.self) + self.referenceID = try container.decode(String.self, forKey: .referenceID) + try super.init(from: decoder) + } + + override func encode(to encoder: Encoder) throws { + try super.encode(to: encoder) + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encode(referenceID, forKey: .referenceID) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Layers/LayerModel.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Layers/LayerModel.swift new file mode 100644 index 00000000..6b2667a0 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Layers/LayerModel.swift @@ -0,0 +1,150 @@ +// +// Layer.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/7/19. +// + +import Foundation + +/// Used for mapping a heterogeneous list to classes for parsing. +extension LayerType: ClassFamily { + static var discriminator: Discriminator = .type + + func getType() -> AnyObject.Type { + switch self { + case .precomp: + return PreCompLayerModel.self + case .solid: + return SolidLayerModel.self + case .image: + return ImageLayerModel.self + case .null: + return LayerModel.self + case .shape: + return ShapeLayerModel.self + case .text: + return TextLayerModel.self + } + } +} + +public enum LayerType: Int, Codable { + case precomp + case solid + case image + case null + case shape + case text + + public init(from decoder: Decoder) throws { + self = try LayerType(rawValue: decoder.singleValueContainer().decode(RawValue.self)) ?? .null + } +} + +public enum MatteType: Int, Codable { + case none + case add + case invert + case unknown +} + +public enum BlendMode: Int, Codable { + case normal + case multiply + case screen + case overlay + case darken + case lighten + case colorDodge + case colorBurn + case hardLight + case softLight + case difference + case exclusion + case hue + case saturation + case color + case luminosity +} + +/** + A base top container for shapes, images, and other view objects. + */ +class LayerModel: Codable { + + /// The readable name of the layer + let name: String + + /// The index of the layer + let index: Int + + /// The type of the layer. + let type: LayerType + + /// The coordinate space + let coordinateSpace: CoordinateSpace + + /// The in time of the layer in frames. + let inFrame: Double + /// The out time of the layer in frames. + let outFrame: Double + + /// The start time of the layer in frames. + let startTime: Double + + /// The transform of the layer + let transform: Transform + + /// The index of the parent layer, if applicable. + let parent: Int? + + /// The blending mode for the layer + let blendMode: BlendMode + + /// An array of masks for the layer. + let masks: [Mask]? + + /// A number that stretches time by a multiplier + let timeStretch: Double + + /// The type of matte if any. + let matte: MatteType? + + let hidden: Bool + + private enum CodingKeys : String, CodingKey { + case name = "nm" + case index = "ind" + case type = "ty" + case coordinateSpace = "ddd" + case inFrame = "ip" + case outFrame = "op" + case startTime = "st" + case transform = "ks" + case parent = "parent" + case blendMode = "bm" + case masks = "masksProperties" + case timeStretch = "sr" + case matte = "tt" + case hidden = "hd" + } + + required init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: LayerModel.CodingKeys.self) + self.name = try container.decodeIfPresent(String.self, forKey: .name) ?? "Layer" + self.index = try container.decode(Int.self, forKey: .index) + self.type = try container.decode(LayerType.self, forKey: .type) + self.coordinateSpace = try container.decodeIfPresent(CoordinateSpace.self, forKey: .coordinateSpace) ?? .type2d + self.inFrame = try container.decode(Double.self, forKey: .inFrame) + self.outFrame = try container.decode(Double.self, forKey: .outFrame) + self.startTime = try container.decode(Double.self, forKey: .startTime) + self.transform = try container.decode(Transform.self, forKey: .transform) + self.parent = try container.decodeIfPresent(Int.self, forKey: .parent) + self.blendMode = try container.decodeIfPresent(BlendMode.self, forKey: .blendMode) ?? .normal + self.masks = try container.decodeIfPresent([Mask].self, forKey: .masks) + self.timeStretch = try container.decodeIfPresent(Double.self, forKey: .timeStretch) ?? 1 + self.matte = try container.decodeIfPresent(MatteType.self, forKey: .matte) + self.hidden = try container.decodeIfPresent(Bool.self, forKey: .hidden) ?? false + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Layers/PreCompLayerModel.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Layers/PreCompLayerModel.swift new file mode 100644 index 00000000..e107ea1b --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Layers/PreCompLayerModel.swift @@ -0,0 +1,50 @@ +// +// PreCompLayer.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/8/19. +// + +import Foundation + +/// A layer that holds another animation composition. +final class PreCompLayerModel: LayerModel { + + /// The reference ID of the precomp. + let referenceID: String + + /// A value that remaps time over time. + let timeRemapping: KeyframeGroup? + + /// Precomp Width + let width: Double + + /// Precomp Height + let height: Double + + private enum CodingKeys : String, CodingKey { + case referenceID = "refId" + case timeRemapping = "tm" + case width = "w" + case height = "h" + } + + required init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: PreCompLayerModel.CodingKeys.self) + self.referenceID = try container.decode(String.self, forKey: .referenceID) + self.timeRemapping = try container.decodeIfPresent(KeyframeGroup.self, forKey: .timeRemapping) + self.width = try container.decode(Double.self, forKey: .width) + self.height = try container.decode(Double.self, forKey: .height) + try super.init(from: decoder) + } + + override func encode(to encoder: Encoder) throws { + try super.encode(to: encoder) + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encode(referenceID, forKey: .referenceID) + try container.encode(timeRemapping, forKey: .timeRemapping) + try container.encode(width, forKey: .width) + try container.encode(height, forKey: .height) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Layers/ShapeLayerModel.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Layers/ShapeLayerModel.swift new file mode 100644 index 00000000..eb6299f8 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Layers/ShapeLayerModel.swift @@ -0,0 +1,32 @@ +// +// ShapeLayer.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/8/19. +// + +import Foundation + +/// A layer that holds vector shape objects. +final class ShapeLayerModel: LayerModel { + + /// A list of shape items. + let items: [ShapeItem] + + private enum CodingKeys : String, CodingKey { + case items = "shapes" + } + + required init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: ShapeLayerModel.CodingKeys.self) + self.items = try container.decode([ShapeItem].self, ofFamily: ShapeType.self, forKey: .items) + try super.init(from: decoder) + } + + override func encode(to encoder: Encoder) throws { + try super.encode(to: encoder) + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encode(self.items, forKey: .items) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Layers/SolidLayerModel.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Layers/SolidLayerModel.swift new file mode 100644 index 00000000..afa00d7e --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Layers/SolidLayerModel.swift @@ -0,0 +1,44 @@ +// +// SolidLayer.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/8/19. +// + +import Foundation + +/// A layer that holds a solid color. +final class SolidLayerModel: LayerModel { + + /// The color of the solid in Hex // Change to value provider. + let colorHex: String + + /// The Width of the color layer + let width: Double + + /// The height of the color layer + let height: Double + + private enum CodingKeys : String, CodingKey { + case colorHex = "sc" + case width = "sw" + case height = "sh" + } + + required init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: SolidLayerModel.CodingKeys.self) + self.colorHex = try container.decode(String.self, forKey: .colorHex) + self.width = try container.decode(Double.self, forKey: .width) + self.height = try container.decode(Double.self, forKey: .height) + try super.init(from: decoder) + } + + override func encode(to encoder: Encoder) throws { + try super.encode(to: encoder) + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encode(colorHex, forKey: .colorHex) + try container.encode(width, forKey: .width) + try container.encode(height, forKey: .height) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Layers/TextLayerModel.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Layers/TextLayerModel.swift new file mode 100644 index 00000000..f08bcef3 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Layers/TextLayerModel.swift @@ -0,0 +1,44 @@ +// +// TextLayer.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/8/19. +// + +import Foundation + +/// A layer that holds text. +final class TextLayerModel: LayerModel { + + /// The text for the layer + let text: KeyframeGroup + + /// Text animators + let animators: [TextAnimator] + + private enum CodingKeys : String, CodingKey { + case textGroup = "t" + } + + private enum TextCodingKeys : String, CodingKey { + case text = "d" + case animators = "a" + } + + required init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: TextLayerModel.CodingKeys.self) + let textContainer = try container.nestedContainer(keyedBy: TextCodingKeys.self, forKey: .textGroup) + self.text = try textContainer.decode(KeyframeGroup.self, forKey: .text) + self.animators = try textContainer.decode([TextAnimator].self, forKey: .animators) + try super.init(from: decoder) + } + + override func encode(to encoder: Encoder) throws { + try super.encode(to: encoder) + var container = encoder.container(keyedBy: CodingKeys.self) + var textContainer = container.nestedContainer(keyedBy: TextCodingKeys.self, forKey: .textGroup) + try textContainer.encode(text, forKey: .text) + try textContainer.encode(animators, forKey: .animators) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Objects/DashPattern.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Objects/DashPattern.swift new file mode 100644 index 00000000..efc75328 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Objects/DashPattern.swift @@ -0,0 +1,24 @@ +// +// DashPattern.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/22/19. +// + +import Foundation + +enum DashElementType: String, Codable { + case offset = "o" + case dash = "d" + case gap = "g" +} + +final class DashElement: Codable { + let type: DashElementType + let value: KeyframeGroup + + enum CodingKeys : String, CodingKey { + case type = "n" + case value = "v" + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Objects/Marker.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Objects/Marker.swift new file mode 100644 index 00000000..9c9512f9 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Objects/Marker.swift @@ -0,0 +1,23 @@ +// +// Marker.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/9/19. +// + +import Foundation + +/// A time marker +final class Marker: Codable { + + /// The Marker Name + let name: String + + /// The Frame time of the marker + let frameTime: AnimationFrameTime + + enum CodingKeys : String, CodingKey { + case name = "cm" + case frameTime = "tm" + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Objects/Mask.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Objects/Mask.swift new file mode 100644 index 00000000..1b7dc499 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Objects/Mask.swift @@ -0,0 +1,48 @@ +// +// Mask.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/8/19. +// + +import Foundation + +enum MaskMode: String, Codable { + case add = "a" + case subtract = "s" + case intersect = "i" + case lighten = "l" + case darken = "d" + case difference = "f" + case none = "n" +} + +final class Mask: Codable { + + let mode: MaskMode + + let opacity: KeyframeGroup + + let shape: KeyframeGroup + + let inverted: Bool + + let expansion: KeyframeGroup + + enum CodingKeys : String, CodingKey { + case mode = "mode" + case opacity = "o" + case inverted = "inv" + case shape = "pt" + case expansion = "x" + } + + required init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: Mask.CodingKeys.self) + self.mode = try container.decodeIfPresent(MaskMode.self, forKey: .mode) ?? .add + self.opacity = try container.decodeIfPresent(KeyframeGroup.self, forKey: .opacity) ?? KeyframeGroup(Vector1D(100)) + self.shape = try container.decode(KeyframeGroup.self, forKey: .shape) + self.inverted = try container.decodeIfPresent(Bool.self, forKey: .inverted) ?? false + self.expansion = try container.decodeIfPresent(KeyframeGroup.self, forKey: .expansion) ?? KeyframeGroup(Vector1D(0)) + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Objects/Transform.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Objects/Transform.swift new file mode 100644 index 00000000..c7e38349 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Objects/Transform.swift @@ -0,0 +1,105 @@ +// +// Transform.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/7/19. +// + +import Foundation + +/// The animatable transform for a layer. Controls position, rotation, scale, and opacity. +final class Transform: Codable { + + /// The anchor point of the transform. + let anchorPoint: KeyframeGroup + + /// The position of the transform. This is nil if the position data was split. + let position: KeyframeGroup? + + /// The positionX of the transform. This is nil if the position property is set. + let positionX: KeyframeGroup? + + /// The positionY of the transform. This is nil if the position property is set. + let positionY: KeyframeGroup? + + /// The scale of the transform + let scale: KeyframeGroup + + /// The rotation of the transform. Note: This is single dimensional rotation. + let rotation: KeyframeGroup + + /// The opacity of the transform. + let opacity: KeyframeGroup + + /// Should always be nil. + let rotationZ: KeyframeGroup? + + enum CodingKeys : String, CodingKey { + case anchorPoint = "a" + case position = "p" + case positionX = "px" + case positionY = "py" + case scale = "s" + case rotation = "r" + case rotationZ = "rz" + case opacity = "o" + } + + enum PositionCodingKeys : String, CodingKey { + case split = "s" + case positionX = "x" + case positionY = "y" + } + + + required init(from decoder: Decoder) throws { + /** + This manual override of decode is required because we want to throw an error + in the case that there is not position data. + */ + let container = try decoder.container(keyedBy: Transform.CodingKeys.self) + + // AnchorPoint + self.anchorPoint = try container.decodeIfPresent(KeyframeGroup.self, forKey: .anchorPoint) ?? KeyframeGroup(Vector3D(x: Double(0), y: 0, z: 0)) + + // Position + if container.contains(.positionX), container.contains(.positionY) { + // Position dimensions are split into two keyframe groups + self.positionX = try container.decode(KeyframeGroup.self, forKey: .positionX) + self.positionY = try container.decode(KeyframeGroup.self, forKey: .positionY) + self.position = nil + } else if let positionKeyframes = try? container.decode(KeyframeGroup.self, forKey: .position) { + // Position dimensions are a single keyframe group. + self.position = positionKeyframes + self.positionX = nil + self.positionY = nil + } else if let positionContainer = try? container.nestedContainer(keyedBy: PositionCodingKeys.self, forKey: .position), + let positionX = try? positionContainer.decode(KeyframeGroup.self, forKey: .positionX), + let positionY = try? positionContainer.decode(KeyframeGroup.self, forKey: .positionY) { + /// Position keyframes are split and nested. + self.positionX = positionX + self.positionY = positionY + self.position = nil + } else { + /// Default value. + self.position = KeyframeGroup(Vector3D(x: Double(0), y: 0, z: 0)) + self.positionX = nil + self.positionY = nil + } + + + // Scale + self.scale = try container.decodeIfPresent(KeyframeGroup.self, forKey: .scale) ?? KeyframeGroup(Vector3D(x: Double(100), y: 100, z: 100)) + + // Rotation + if let rotationZ = try container.decodeIfPresent(KeyframeGroup.self, forKey: .rotationZ) { + self.rotation = rotationZ + } else { + self.rotation = try container.decodeIfPresent(KeyframeGroup.self, forKey: .rotation) ?? KeyframeGroup(Vector1D(0)) + } + self.rotationZ = nil + + // Opacity + self.opacity = try container.decodeIfPresent(KeyframeGroup.self, forKey: .opacity) ?? KeyframeGroup(Vector1D(100)) + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Ellipse.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Ellipse.swift new file mode 100644 index 00000000..5e6b9185 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Ellipse.swift @@ -0,0 +1,50 @@ +// +// EllipseItem.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/8/19. +// + +import Foundation + +enum PathDirection: Int, Codable { + case clockwise = 1 + case userSetClockwise = 2 + case counterClockwise = 3 +} + +/// An item that define an ellipse shape +final class Ellipse: ShapeItem { + + /// The direction of the ellipse. + let direction: PathDirection + + /// The position of the ellipse + let position: KeyframeGroup + + /// The size of the ellipse + let size: KeyframeGroup + + private enum CodingKeys : String, CodingKey { + case direction = "d" + case position = "p" + case size = "s" + } + + required init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: Ellipse.CodingKeys.self) + self.direction = try container.decodeIfPresent(PathDirection.self, forKey: .direction) ?? .clockwise + self.position = try container.decode(KeyframeGroup.self, forKey: .position) + self.size = try container.decode(KeyframeGroup.self, forKey: .size) + try super.init(from: decoder) + } + + override func encode(to encoder: Encoder) throws { + try super.encode(to: encoder) + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encode(direction, forKey: .direction) + try container.encode(position, forKey: .position) + try container.encode(size, forKey: .size) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/FillI.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/FillI.swift new file mode 100644 index 00000000..11aded77 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/FillI.swift @@ -0,0 +1,49 @@ +// +// FillShape.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/8/19. +// + +import Foundation + +enum FillRule: Int, Codable { + case none + case nonZeroWinding + case evenOdd +} + +/// An item that defines a fill render +final class Fill: ShapeItem { + + /// The opacity of the fill + let opacity: KeyframeGroup + + /// The color keyframes for the fill + let color: KeyframeGroup + + let fillRule: FillRule + + private enum CodingKeys : String, CodingKey { + case opacity = "o" + case color = "c" + case fillRule = "r" + } + + required init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: Fill.CodingKeys.self) + self.opacity = try container.decode(KeyframeGroup.self, forKey: .opacity) + self.color = try container.decode(KeyframeGroup.self, forKey: .color) + self.fillRule = try container.decodeIfPresent(FillRule.self, forKey: .fillRule) ?? .nonZeroWinding + try super.init(from: decoder) + } + + override func encode(to encoder: Encoder) throws { + try super.encode(to: encoder) + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encode(opacity, forKey: .opacity) + try container.encode(color, forKey: .color) + try container.encode(fillRule, forKey: .fillRule) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/GradientFill.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/GradientFill.swift new file mode 100644 index 00000000..05627c86 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/GradientFill.swift @@ -0,0 +1,86 @@ +// +// GradientFill.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/8/19. +// + +import Foundation + +enum GradientType: Int, Codable { + case none + case linear + case radial +} + +/// An item that define a gradient fill +final class GradientFill: ShapeItem { + + /// The opacity of the fill + let opacity: KeyframeGroup + + /// The start of the gradient + let startPoint: KeyframeGroup + + /// The end of the gradient + let endPoint: KeyframeGroup + + /// The type of gradient + let gradientType: GradientType + + /// Gradient Highlight Length. Only if type is Radial + let highlightLength: KeyframeGroup? + + /// Highlight Angle. Only if type is Radial + let highlightAngle: KeyframeGroup? + + /// The number of color points in the gradient + let numberOfColors: Int + + /// The Colors of the gradient. + let colors: KeyframeGroup<[Double]> + + private enum CodingKeys : String, CodingKey { + case opacity = "o" + case startPoint = "s" + case endPoint = "e" + case gradientType = "t" + case highlightLength = "h" + case highlightAngle = "a" + case colors = "g" + } + + private enum GradientDataKeys : String, CodingKey { + case numberOfColors = "p" + case colors = "k" + } + + required init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: GradientFill.CodingKeys.self) + self.opacity = try container.decode(KeyframeGroup.self, forKey: .opacity) + self.startPoint = try container.decode(KeyframeGroup.self, forKey: .startPoint) + self.endPoint = try container.decode(KeyframeGroup.self, forKey: .endPoint) + self.gradientType = try container.decode(GradientType.self, forKey: .gradientType) + self.highlightLength = try container.decodeIfPresent(KeyframeGroup.self, forKey: .highlightLength) + self.highlightAngle = try container.decodeIfPresent(KeyframeGroup.self, forKey: .highlightAngle) + let colorsContainer = try container.nestedContainer(keyedBy: GradientDataKeys.self, forKey: .colors) + self.colors = try colorsContainer.decode(KeyframeGroup<[Double]>.self, forKey: .colors) + self.numberOfColors = try colorsContainer.decode(Int.self, forKey: .numberOfColors) + try super.init(from: decoder) + } + + override func encode(to encoder: Encoder) throws { + try super.encode(to: encoder) + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encode(opacity, forKey: .opacity) + try container.encode(startPoint, forKey: .startPoint) + try container.encode(endPoint, forKey: .endPoint) + try container.encode(gradientType, forKey: .gradientType) + try container.encodeIfPresent(highlightLength, forKey: .highlightLength) + try container.encodeIfPresent(highlightAngle, forKey: .highlightAngle) + var colorsContainer = container.nestedContainer(keyedBy: GradientDataKeys.self, forKey: .colors) + try colorsContainer.encode(numberOfColors, forKey: .numberOfColors) + try colorsContainer.encode(colors, forKey: .colors) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/GradientStroke.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/GradientStroke.swift new file mode 100644 index 00000000..163a6128 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/GradientStroke.swift @@ -0,0 +1,125 @@ +// +// GradientStroke.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/8/19. +// + +import Foundation + +enum LineCap: Int, Codable { + case none + case butt + case round + case square +} + +enum LineJoin: Int, Codable { + case none + case miter + case round + case bevel +} + +/// An item that define an ellipse shape +final class GradientStroke: ShapeItem { + + /// The opacity of the fill + let opacity: KeyframeGroup + + /// The start of the gradient + let startPoint: KeyframeGroup + + /// The end of the gradient + let endPoint: KeyframeGroup + + /// The type of gradient + let gradientType: GradientType + + /// Gradient Highlight Length. Only if type is Radial + let highlightLength: KeyframeGroup? + + /// Highlight Angle. Only if type is Radial + let highlightAngle: KeyframeGroup? + + /// The number of color points in the gradient + let numberOfColors: Int + + /// The Colors of the gradient. + let colors: KeyframeGroup<[Double]> + + /// The width of the stroke + let width: KeyframeGroup + + /// Line Cap + let lineCap: LineCap + + /// Line Join + let lineJoin: LineJoin + + /// Miter Limit + let miterLimit: Double + + /// The dash pattern of the stroke + let dashPattern: [DashElement]? + + private enum CodingKeys : String, CodingKey { + case opacity = "o" + case startPoint = "s" + case endPoint = "e" + case gradientType = "t" + case highlightLength = "h" + case highlightAngle = "a" + case colors = "g" + case width = "w" + case lineCap = "lc" + case lineJoin = "lj" + case miterLimit = "ml" + case dashPattern = "d" + } + + private enum GradientDataKeys : String, CodingKey { + case numberOfColors = "p" + case colors = "k" + } + + required init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: GradientStroke.CodingKeys.self) + self.opacity = try container.decode(KeyframeGroup.self, forKey: .opacity) + self.startPoint = try container.decode(KeyframeGroup.self, forKey: .startPoint) + self.endPoint = try container.decode(KeyframeGroup.self, forKey: .endPoint) + self.gradientType = try container.decode(GradientType.self, forKey: .gradientType) + self.highlightLength = try container.decodeIfPresent(KeyframeGroup.self, forKey: .highlightLength) + self.highlightAngle = try container.decodeIfPresent(KeyframeGroup.self, forKey: .highlightAngle) + self.width = try container.decode(KeyframeGroup.self, forKey: .width) + self.lineCap = try container.decodeIfPresent(LineCap.self, forKey: .lineCap) ?? .round + self.lineJoin = try container.decodeIfPresent(LineJoin.self, forKey: .lineJoin) ?? .round + self.miterLimit = try container.decodeIfPresent(Double.self, forKey: .miterLimit) ?? 4 + // TODO Decode Color Objects instead of array. + let colorsContainer = try container.nestedContainer(keyedBy: GradientDataKeys.self, forKey: .colors) + self.colors = try colorsContainer.decode(KeyframeGroup<[Double]>.self, forKey: .colors) + self.numberOfColors = try colorsContainer.decode(Int.self, forKey: .numberOfColors) + self.dashPattern = try container.decodeIfPresent([DashElement].self, forKey: .dashPattern) + try super.init(from: decoder) + } + + override func encode(to encoder: Encoder) throws { + try super.encode(to: encoder) + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encode(opacity, forKey: .opacity) + try container.encode(startPoint, forKey: .startPoint) + try container.encode(endPoint, forKey: .endPoint) + try container.encode(gradientType, forKey: .gradientType) + try container.encodeIfPresent(highlightLength, forKey: .highlightLength) + try container.encodeIfPresent(highlightAngle, forKey: .highlightAngle) + try container.encode(width, forKey: .width) + try container.encode(lineCap, forKey: .lineCap) + try container.encode(lineJoin, forKey: .lineJoin) + try container.encode(miterLimit, forKey: .miterLimit) + var colorsContainer = container.nestedContainer(keyedBy: GradientDataKeys.self, forKey: .colors) + try colorsContainer.encode(numberOfColors, forKey: .numberOfColors) + try colorsContainer.encode(colors, forKey: .colors) + try container.encodeIfPresent(dashPattern, forKey: .dashPattern) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Group.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Group.swift new file mode 100644 index 00000000..c676d04c --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Group.swift @@ -0,0 +1,32 @@ +// +// GroupItem.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/8/19. +// + +import Foundation + +/// An item that define an ellipse shape +final class Group: ShapeItem { + + /// A list of shape items. + let items: [ShapeItem] + + private enum CodingKeys : String, CodingKey { + case items = "it" + } + + required init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: Group.CodingKeys.self) + self.items = try container.decode([ShapeItem].self, ofFamily: ShapeType.self, forKey: .items) + try super.init(from: decoder) + } + + override func encode(to encoder: Encoder) throws { + try super.encode(to: encoder) + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encode(items, forKey: .items) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Merge.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Merge.swift new file mode 100644 index 00000000..3143bb5b --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Merge.swift @@ -0,0 +1,41 @@ +// +// Merge.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/8/19. +// + +import Foundation + +enum MergeMode: Int, Codable { + case none + case merge + case add + case subtract + case intersect + case exclude +} + +/// An item that define an ellipse shape +final class Merge: ShapeItem { + + /// The mode of the merge path + let mode: MergeMode + + private enum CodingKeys : String, CodingKey { + case mode = "mm" + } + + required init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: Merge.CodingKeys.self) + self.mode = try container.decode(MergeMode.self, forKey: .mode) + try super.init(from: decoder) + } + + override func encode(to encoder: Encoder) throws { + try super.encode(to: encoder) + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encode(mode, forKey: .mode) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Rectangle.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Rectangle.swift new file mode 100644 index 00000000..b880e754 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Rectangle.swift @@ -0,0 +1,50 @@ +// +// Rectangle.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/8/19. +// + +import Foundation + +/// An item that define an ellipse shape +final class Rectangle: ShapeItem { + + /// The direction of the rect. + let direction: PathDirection + + /// The position + let position: KeyframeGroup + + /// The size + let size: KeyframeGroup + + /// The Corner radius of the rectangle + let cornerRadius: KeyframeGroup + + private enum CodingKeys : String, CodingKey { + case direction = "d" + case position = "p" + case size = "s" + case cornerRadius = "r" + } + + required init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: Rectangle.CodingKeys.self) + self.direction = try container.decodeIfPresent(PathDirection.self, forKey: .direction) ?? .clockwise + self.position = try container.decode(KeyframeGroup.self, forKey: .position) + self.size = try container.decode(KeyframeGroup.self, forKey: .size) + self.cornerRadius = try container.decode(KeyframeGroup.self, forKey: .cornerRadius) + try super.init(from: decoder) + } + + override func encode(to encoder: Encoder) throws { + try super.encode(to: encoder) + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encode(direction, forKey: .direction) + try container.encode(position, forKey: .position) + try container.encode(size, forKey: .size) + try container.encode(cornerRadius, forKey: .cornerRadius) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Repeater.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Repeater.swift new file mode 100644 index 00000000..e8780f4b --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Repeater.swift @@ -0,0 +1,80 @@ +// +// Repeater.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/8/19. +// + +import Foundation + +/// An item that define an ellipse shape +final class Repeater: ShapeItem { + + /// The number of copies to repeat + let copies: KeyframeGroup + + /// The offset of each copy + let offset: KeyframeGroup + + /// Start Opacity + let startOpacity: KeyframeGroup + + /// End opacity + let endOpacity: KeyframeGroup + + /// The rotation + let rotation: KeyframeGroup + + /// Anchor Point + let anchorPoint: KeyframeGroup + + /// Position + let position: KeyframeGroup + + /// Scale + let scale: KeyframeGroup + + private enum CodingKeys : String, CodingKey { + case copies = "c" + case offset = "o" + case transform = "tr" + } + + private enum TransformKeys : String, CodingKey { + case rotation = "r" + case startOpacity = "so" + case endOpacity = "eo" + case anchorPoint = "a" + case position = "p" + case scale = "s" + } + + required init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: Repeater.CodingKeys.self) + self.copies = try container.decodeIfPresent(KeyframeGroup.self, forKey: .copies) ?? KeyframeGroup(Vector1D(0)) + self.offset = try container.decodeIfPresent(KeyframeGroup.self, forKey: .offset) ?? KeyframeGroup(Vector1D(0)) + let transformContainer = try container.nestedContainer(keyedBy: TransformKeys.self, forKey: .transform) + self.startOpacity = try transformContainer.decodeIfPresent(KeyframeGroup.self, forKey: .startOpacity) ?? KeyframeGroup(Vector1D(100)) + self.endOpacity = try transformContainer.decodeIfPresent(KeyframeGroup.self, forKey: .endOpacity) ?? KeyframeGroup(Vector1D(100)) + self.rotation = try transformContainer.decodeIfPresent(KeyframeGroup.self, forKey: .rotation) ?? KeyframeGroup(Vector1D(0)) + self.position = try transformContainer.decodeIfPresent(KeyframeGroup.self, forKey: .position) ?? KeyframeGroup(Vector3D(x: Double(0), y: 0, z: 0)) + self.anchorPoint = try transformContainer.decodeIfPresent(KeyframeGroup.self, forKey: .anchorPoint) ?? KeyframeGroup(Vector3D(x: Double(0), y: 0, z: 0)) + self.scale = try transformContainer.decodeIfPresent(KeyframeGroup.self, forKey: .scale) ?? KeyframeGroup(Vector3D(x: Double(100), y: 100, z: 100)) + try super.init(from: decoder) + } + + override func encode(to encoder: Encoder) throws { + try super.encode(to: encoder) + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encode(copies, forKey: .copies) + try container.encode(offset, forKey: .offset) + var transformContainer = container.nestedContainer(keyedBy: TransformKeys.self, forKey: .transform) + try transformContainer.encode(startOpacity, forKey: .startOpacity) + try transformContainer.encode(endOpacity, forKey: .endOpacity) + try transformContainer.encode(rotation, forKey: .rotation) + try transformContainer.encode(position, forKey: .position) + try transformContainer.encode(anchorPoint, forKey: .anchorPoint) + try transformContainer.encode(scale, forKey: .scale) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Shape.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Shape.swift new file mode 100644 index 00000000..e2681e65 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Shape.swift @@ -0,0 +1,37 @@ +// +// VectorShape.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/8/19. +// + +import Foundation + +/// An item that define an ellipse shape +final class Shape: ShapeItem { + + /// The Path + let path: KeyframeGroup + + let direction: PathDirection? + + private enum CodingKeys : String, CodingKey { + case path = "ks" + case direction = "d" + } + + required init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: Shape.CodingKeys.self) + self.path = try container.decode(KeyframeGroup.self, forKey: .path) + self.direction = try container.decodeIfPresent(PathDirection.self, forKey: .direction) + try super.init(from: decoder) + } + + override func encode(to encoder: Encoder) throws { + try super.encode(to: encoder) + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encode(path, forKey: .path) + try container.encodeIfPresent(direction, forKey: .direction) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/ShapeItem.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/ShapeItem.swift new file mode 100644 index 00000000..04443619 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/ShapeItem.swift @@ -0,0 +1,95 @@ +// +// ShapeItem.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/8/19. +// + +import Foundation + +/// Used for mapping a heterogeneous list to classes for parsing. +extension ShapeType: ClassFamily { + + static var discriminator: Discriminator = .type + + func getType() -> AnyObject.Type { + switch self { + case .ellipse: + return Ellipse.self + case .fill: + return Fill.self + case .gradientFill: + return GradientFill.self + case .group: + return Group.self + case .gradientStroke: + return GradientStroke.self + case .merge: + return Merge.self + case .rectangle: + return Rectangle.self + case .repeater: + return Repeater.self + case .shape: + return Shape.self + case .star: + return Star.self + case .stroke: + return Stroke.self + case .trim: + return Trim.self + case .transform: + return ShapeTransform.self + default: + return ShapeItem.self + } + } +} + +enum ShapeType: String, Codable { + case ellipse = "el" + case fill = "fl" + case gradientFill = "gf" + case group = "gr" + case gradientStroke = "gs" + case merge = "mm" + case rectangle = "rc" + case repeater = "rp" + case round = "rd" + case shape = "sh" + case star = "sr" + case stroke = "st" + case trim = "tm" + case transform = "tr" + case unknown + + public init(from decoder: Decoder) throws { + self = try ShapeType(rawValue: decoder.singleValueContainer().decode(RawValue.self)) ?? .unknown + } +} + +/// An item belonging to a Shape Layer +class ShapeItem: Codable { + + /// The name of the shape + let name: String + + /// The type of shape + let type: ShapeType + + let hidden: Bool + + private enum CodingKeys : String, CodingKey { + case name = "nm" + case type = "ty" + case hidden = "hd" + } + + required init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: ShapeItem.CodingKeys.self) + self.name = try container.decodeIfPresent(String.self, forKey: .name) ?? "Layer" + self.type = try container.decode(ShapeType.self, forKey: .type) + self.hidden = try container.decodeIfPresent(Bool.self, forKey: .hidden) ?? false + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/ShapeTransform.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/ShapeTransform.swift new file mode 100644 index 00000000..5fba1657 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/ShapeTransform.swift @@ -0,0 +1,68 @@ +// +// TransformItem.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/8/19. +// + +import Foundation + +/// An item that define an ellipse shape +final class ShapeTransform: ShapeItem { + + /// Anchor Point + let anchor: KeyframeGroup + + /// Position + let position: KeyframeGroup + + /// Scale + let scale: KeyframeGroup + + /// Rotation + let rotation: KeyframeGroup + + /// opacity + let opacity: KeyframeGroup + + /// Skew + let skew: KeyframeGroup + + /// Skew Axis + let skewAxis: KeyframeGroup + + private enum CodingKeys : String, CodingKey { + case anchor = "a" + case position = "p" + case scale = "s" + case rotation = "r" + case opacity = "o" + case skew = "sk" + case skewAxis = "sa" + } + + required init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: ShapeTransform.CodingKeys.self) + self.anchor = try container.decodeIfPresent(KeyframeGroup.self, forKey: .anchor) ?? KeyframeGroup(Vector3D(x: Double(0), y: 0, z: 0)) + self.position = try container.decodeIfPresent(KeyframeGroup.self, forKey: .position) ?? KeyframeGroup(Vector3D(x: Double(0), y: 0, z: 0)) + self.scale = try container.decodeIfPresent(KeyframeGroup.self, forKey: .scale) ?? KeyframeGroup(Vector3D(x: Double(100), y: 100, z: 100)) + self.rotation = try container.decodeIfPresent(KeyframeGroup.self, forKey: .rotation) ?? KeyframeGroup(Vector1D(0)) + self.opacity = try container.decodeIfPresent(KeyframeGroup.self, forKey: .opacity) ?? KeyframeGroup(Vector1D(100)) + self.skew = try container.decodeIfPresent(KeyframeGroup.self, forKey: .skew) ?? KeyframeGroup(Vector1D(0)) + self.skewAxis = try container.decodeIfPresent(KeyframeGroup.self, forKey: .skewAxis) ?? KeyframeGroup(Vector1D(0)) + try super.init(from: decoder) + } + + override func encode(to encoder: Encoder) throws { + try super.encode(to: encoder) + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encode(anchor, forKey: .anchor) + try container.encode(position, forKey: .position) + try container.encode(scale, forKey: .scale) + try container.encode(rotation, forKey: .rotation) + try container.encode(opacity, forKey: .opacity) + try container.encode(skew, forKey: .skew) + try container.encode(skewAxis, forKey: .skewAxis) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Star.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Star.swift new file mode 100644 index 00000000..b2804418 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Star.swift @@ -0,0 +1,86 @@ +// +// Star.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/8/19. +// + +import Foundation + +enum StarType: Int, Codable { + case none + case star + case polygon +} + +/// An item that define an ellipse shape +final class Star: ShapeItem { + + /// The direction of the star. + let direction: PathDirection + + /// The position of the star + let position: KeyframeGroup + + /// The outer radius of the star + let outerRadius: KeyframeGroup + + /// The outer roundness of the star + let outerRoundness: KeyframeGroup + + /// The outer radius of the star + let innerRadius: KeyframeGroup? + + /// The outer roundness of the star + let innerRoundness: KeyframeGroup? + + /// The rotation of the star + let rotation: KeyframeGroup + + /// The number of points on the star + let points: KeyframeGroup + + /// The type of star + let starType: StarType + + private enum CodingKeys : String, CodingKey { + case direction = "d" + case position = "p" + case outerRadius = "or" + case outerRoundness = "os" + case innerRadius = "ir" + case innerRoundness = "is" + case rotation = "r" + case points = "pt" + case starType = "sy" + } + + required init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: Star.CodingKeys.self) + self.direction = try container.decodeIfPresent(PathDirection.self, forKey: .direction) ?? .clockwise + self.position = try container.decode(KeyframeGroup.self, forKey: .position) + self.outerRadius = try container.decode(KeyframeGroup.self, forKey: .outerRadius) + self.outerRoundness = try container.decode(KeyframeGroup.self, forKey: .outerRoundness) + self.innerRadius = try container.decodeIfPresent(KeyframeGroup.self, forKey: .innerRadius) + self.innerRoundness = try container.decodeIfPresent(KeyframeGroup.self, forKey: .innerRoundness) + self.rotation = try container.decode(KeyframeGroup.self, forKey: .rotation) + self.points = try container.decode(KeyframeGroup.self, forKey: .points) + self.starType = try container.decode(StarType.self, forKey: .starType) + try super.init(from: decoder) + } + + override func encode(to encoder: Encoder) throws { + try super.encode(to: encoder) + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encode(direction, forKey: .direction) + try container.encode(position, forKey: .position) + try container.encode(outerRadius, forKey: .outerRadius) + try container.encode(outerRoundness, forKey: .outerRoundness) + try container.encode(innerRadius, forKey: .innerRadius) + try container.encode(innerRoundness, forKey: .innerRoundness) + try container.encode(rotation, forKey: .rotation) + try container.encode(points, forKey: .points) + try container.encode(starType, forKey: .starType) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Stroke.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Stroke.swift new file mode 100644 index 00000000..5e043edb --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Stroke.swift @@ -0,0 +1,67 @@ +// +// Stroke.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/8/19. +// + +import Foundation + +/// An item that define an ellipse shape +final class Stroke: ShapeItem { + + /// The opacity of the stroke + let opacity: KeyframeGroup + + /// The Color of the stroke + let color: KeyframeGroup + + /// The width of the stroke + let width: KeyframeGroup + + /// Line Cap + let lineCap: LineCap + + /// Line Join + let lineJoin: LineJoin + + /// Miter Limit + let miterLimit: Double + + /// The dash pattern of the stroke + let dashPattern: [DashElement]? + + private enum CodingKeys : String, CodingKey { + case opacity = "o" + case color = "c" + case width = "w" + case lineCap = "lc" + case lineJoin = "lj" + case miterLimit = "ml" + case dashPattern = "d" + } + + required init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: Stroke.CodingKeys.self) + self.opacity = try container.decode(KeyframeGroup.self, forKey: .opacity) + self.color = try container.decode(KeyframeGroup.self, forKey: .color) + self.width = try container.decode(KeyframeGroup.self, forKey: .width) + self.lineCap = try container.decodeIfPresent(LineCap.self, forKey: .lineCap) ?? .round + self.lineJoin = try container.decodeIfPresent(LineJoin.self, forKey: .lineJoin) ?? .round + self.miterLimit = try container.decodeIfPresent(Double.self, forKey: .miterLimit) ?? 4 + self.dashPattern = try container.decodeIfPresent([DashElement].self, forKey: .dashPattern) + try super.init(from: decoder) + } + + override func encode(to encoder: Encoder) throws { + try super.encode(to: encoder) + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encode(opacity, forKey: .opacity) + try container.encode(color, forKey: .color) + try container.encode(width, forKey: .width) + try container.encode(lineCap, forKey: .lineCap) + try container.encode(lineJoin, forKey: .lineJoin) + try container.encode(miterLimit, forKey: .miterLimit) + try container.encodeIfPresent(dashPattern, forKey: .dashPattern) + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Trim.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Trim.swift new file mode 100644 index 00000000..dba3d67c --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/ShapeItems/Trim.swift @@ -0,0 +1,53 @@ +// +// Trim.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/8/19. +// + +import Foundation + +enum TrimType: Int, Codable { + case simultaneously = 1 + case individually = 2 +} +/// An item that define an ellipse shape +final class Trim: ShapeItem { + + /// The start of the trim + let start: KeyframeGroup + + /// The end of the trim + let end: KeyframeGroup + + /// The offset of the trim + let offset: KeyframeGroup + + let trimType: TrimType + + private enum CodingKeys : String, CodingKey { + case start = "s" + case end = "e" + case offset = "o" + case trimType = "m" + } + + required init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: Trim.CodingKeys.self) + self.start = try container.decode(KeyframeGroup.self, forKey: .start) + self.end = try container.decode(KeyframeGroup.self, forKey: .end) + self.offset = try container.decode(KeyframeGroup.self, forKey: .offset) + self.trimType = try container.decode(TrimType.self, forKey: .trimType) + try super.init(from: decoder) + } + + override func encode(to encoder: Encoder) throws { + try super.encode(to: encoder) + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encode(start, forKey: .start) + try container.encode(end, forKey: .end) + try container.encode(offset, forKey: .offset) + try container.encode(trimType, forKey: .trimType) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Text/Font.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Text/Font.swift new file mode 100644 index 00000000..54d75407 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Text/Font.swift @@ -0,0 +1,35 @@ +// +// Font.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/9/19. +// + +import Foundation + +final class Font: Codable { + + let name: String + let familyName: String + let style: String + let ascent: Double + + private enum CodingKeys: String, CodingKey { + case name = "fName" + case familyName = "fFamily" + case style = "fStyle" + case ascent = "ascent" + } + +} + +/// A list of fonts +final class FontList: Codable { + + let fonts: [Font] + + enum CodingKeys : String, CodingKey { + case fonts = "list" + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Text/Glyph.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Text/Glyph.swift new file mode 100644 index 00000000..755f00a0 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Text/Glyph.swift @@ -0,0 +1,72 @@ +// +// Glyph.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/9/19. +// + +import Foundation + +/// A model that holds a vector character +final class Glyph: Codable { + + /// The character + let character: String + + /// The font size of the character + let fontSize: Double + + /// The font family of the character + let fontFamily: String + + /// The Style of the character + let fontStyle: String + + /// The Width of the character + let width: Double + + /// The Shape Data of the Character + let shapes: [ShapeItem] + + private enum CodingKeys: String, CodingKey { + case character = "ch" + case fontSize = "size" + case fontFamily = "fFamily" + case fontStyle = "style" + case width = "w" + case shapeWrapper = "data" + } + + private enum ShapeKey: String, CodingKey { + case shapes = "shapes" + } + + required init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: Glyph.CodingKeys.self) + self.character = try container.decode(String.self, forKey: .character) + self.fontSize = try container.decode(Double.self, forKey: .fontSize) + self.fontFamily = try container.decode(String.self, forKey: .fontFamily) + self.fontStyle = try container.decode(String.self, forKey: .fontStyle) + self.width = try container.decode(Double.self, forKey: .width) + if container.contains(.shapeWrapper), + let shapeContainer = try? container.nestedContainer(keyedBy: ShapeKey.self, forKey: .shapeWrapper), + shapeContainer.contains(.shapes) { + self.shapes = try shapeContainer.decode([ShapeItem].self, ofFamily: ShapeType.self, forKey: .shapes) + } else { + self.shapes = [] + } + } + + func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + + try container.encode(character, forKey: .character) + try container.encode(fontSize, forKey: .fontSize) + try container.encode(fontFamily, forKey: .fontFamily) + try container.encode(fontStyle, forKey: .fontStyle) + try container.encode(width, forKey: .width) + + var shapeContainer = container.nestedContainer(keyedBy: ShapeKey.self, forKey: .shapeWrapper) + try shapeContainer.encode(shapes, forKey: .shapes) + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Text/TextAnimator.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Text/TextAnimator.swift new file mode 100644 index 00000000..dd93cdf6 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Text/TextAnimator.swift @@ -0,0 +1,99 @@ +// +// TextAnimator.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/9/19. +// + +import Foundation + +final class TextAnimator: Codable { + + let name: String + + /// Anchor + let anchor: KeyframeGroup? + + /// Position + let position: KeyframeGroup? + + /// Scale + let scale: KeyframeGroup? + + /// Skew + let skew: KeyframeGroup? + + /// Skew Axis + let skewAxis: KeyframeGroup? + + /// Rotation + let rotation: KeyframeGroup? + + /// Opacity + let opacity: KeyframeGroup? + + /// Stroke Color + let strokeColor: KeyframeGroup? + + /// Fill Color + let fillColor: KeyframeGroup? + + /// Stroke Width + let strokeWidth: KeyframeGroup? + + /// Tracking + let tracking: KeyframeGroup? + + private enum CodingKeys: String, CodingKey { +// case textSelector = "s" TODO + case textAnimator = "a" + case name = "nm" + } + + private enum TextSelectorKeys: String, CodingKey { + case start = "s" + case end = "e" + case offset = "o" + } + + private enum TextAnimatorKeys: String, CodingKey { + case fillColor = "fc" + case strokeColor = "sc" + case strokeWidth = "sw" + case tracking = "t" + case anchor = "a" + case position = "p" + case scale = "s" + case skew = "sk" + case skewAxis = "sa" + case rotation = "r" + case opacity = "o" + } + + required init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: TextAnimator.CodingKeys.self) + self.name = try container.decodeIfPresent(String.self, forKey: .name) ?? "" + let animatorContainer = try container.nestedContainer(keyedBy: TextAnimatorKeys.self, forKey: .textAnimator) + self.fillColor = try animatorContainer.decodeIfPresent(KeyframeGroup.self, forKey: .fillColor) + self.strokeColor = try animatorContainer.decodeIfPresent(KeyframeGroup.self, forKey: .strokeColor) + self.strokeWidth = try animatorContainer.decodeIfPresent(KeyframeGroup.self, forKey: .strokeWidth) + self.tracking = try animatorContainer.decodeIfPresent(KeyframeGroup.self, forKey: .tracking) + self.anchor = try animatorContainer.decodeIfPresent(KeyframeGroup.self, forKey: .anchor) + self.position = try animatorContainer.decodeIfPresent(KeyframeGroup.self, forKey: .position) + self.scale = try animatorContainer.decodeIfPresent(KeyframeGroup.self, forKey: .scale) + self.skew = try animatorContainer.decodeIfPresent(KeyframeGroup.self, forKey: .skew) + self.skewAxis = try animatorContainer.decodeIfPresent(KeyframeGroup.self, forKey: .skewAxis) + self.rotation = try animatorContainer.decodeIfPresent(KeyframeGroup.self, forKey: .rotation) + self.opacity = try animatorContainer.decodeIfPresent(KeyframeGroup.self, forKey: .opacity) + + } + + func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + var animatorContainer = container.nestedContainer(keyedBy: TextAnimatorKeys.self, forKey: .textAnimator) + try animatorContainer.encodeIfPresent(fillColor, forKey: .fillColor) + try animatorContainer.encodeIfPresent(strokeColor, forKey: .strokeColor) + try animatorContainer.encodeIfPresent(strokeWidth, forKey: .strokeWidth) + try animatorContainer.encodeIfPresent(tracking, forKey: .tracking) + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Text/TextDocument.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Text/TextDocument.swift new file mode 100644 index 00000000..016fd768 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Model/Text/TextDocument.swift @@ -0,0 +1,70 @@ +// +// TextDocument.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/9/19. +// + +import Foundation + +enum TextJustification: Int, Codable { + case left + case right + case center +} + +final class TextDocument: Codable { + + /// The Text + let text: String + + /// The Font size + let fontSize: Double + + /// The Font Family + let fontFamily: String + + /// Justification + let justification: TextJustification + + /// Tracking + let tracking: Int + + /// Line Height + let lineHeight: Double + + /// Baseline + let baseline: Double? + + /// Fill Color data + let fillColorData: Color? + + /// Scroke Color data + let strokeColorData: Color? + + /// Stroke Width + let strokeWidth: Double? + + /// Stroke Over Fill + let strokeOverFill: Bool? + + let textFramePosition: Vector3D? + + let textFrameSize: Vector3D? + + private enum CodingKeys : String, CodingKey { + case text = "t" + case fontSize = "s" + case fontFamily = "f" + case justification = "j" + case tracking = "tr" + case lineHeight = "lh" + case baseline = "ls" + case fillColorData = "fc" + case strokeColorData = "sc" + case strokeWidth = "sw" + case strokeOverFill = "of" + case textFramePosition = "ps" + case textFrameSize = "sz" + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Extensions/ItemsExtension.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Extensions/ItemsExtension.swift new file mode 100644 index 00000000..9220a637 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Extensions/ItemsExtension.swift @@ -0,0 +1,95 @@ +// +// ItemsExtension.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/18/19. +// + +import Foundation + +final class NodeTree { + var rootNode: AnimatorNode? = nil + var transform: ShapeTransform? = nil + var renderContainers: [ShapeContainerLayer] = [] + var paths: [PathOutputNode] = [] + var childrenNodes: [AnimatorNode] = [] +} + +extension Array where Element == ShapeItem { + func initializeNodeTree() -> NodeTree { + + let nodeTree = NodeTree() + + for item in self { + guard item.hidden == false, item.type != .unknown else { continue } + if let fill = item as? Fill { + let node = FillNode(parentNode: nodeTree.rootNode, fill: fill) + nodeTree.rootNode = node + nodeTree.childrenNodes.append(node) + } else if let stroke = item as? Stroke { + let node = StrokeNode(parentNode: nodeTree.rootNode, stroke: stroke) + nodeTree.rootNode = node + nodeTree.childrenNodes.append(node) + } else if let gradientFill = item as? GradientFill { + let node = GradientFillNode(parentNode: nodeTree.rootNode, gradientFill: gradientFill) + nodeTree.rootNode = node + nodeTree.childrenNodes.append(node) + } else if let gradientStroke = item as? GradientStroke { + let node = GradientStrokeNode(parentNode: nodeTree.rootNode, gradientStroke: gradientStroke) + nodeTree.rootNode = node + nodeTree.childrenNodes.append(node) + } else if let ellipse = item as? Ellipse { + let node = EllipseNode(parentNode: nodeTree.rootNode, ellipse: ellipse) + nodeTree.rootNode = node + nodeTree.childrenNodes.append(node) + } else if let rect = item as? Rectangle { + let node = RectangleNode(parentNode: nodeTree.rootNode, rectangle: rect) + nodeTree.rootNode = node + nodeTree.childrenNodes.append(node) + } else if let star = item as? Star { + switch star.starType { + case .none: + continue + case .polygon: + let node = PolygonNode(parentNode: nodeTree.rootNode, star: star) + nodeTree.rootNode = node + nodeTree.childrenNodes.append(node) + case .star: + let node = StarNode(parentNode: nodeTree.rootNode, star: star) + nodeTree.rootNode = node + nodeTree.childrenNodes.append(node) + } + } else if let shape = item as? Shape { + let node = ShapeNode(parentNode: nodeTree.rootNode, shape: shape) + nodeTree.rootNode = node + nodeTree.childrenNodes.append(node) + } else if let trim = item as? Trim { + let node = TrimPathNode(parentNode: nodeTree.rootNode, trim: trim, upstreamPaths: nodeTree.paths) + nodeTree.rootNode = node + nodeTree.childrenNodes.append(node) + } else if let xform = item as? ShapeTransform { + nodeTree.transform = xform + continue + } else if let group = item as? Group { + + let tree = group.items.initializeNodeTree() + let node = GroupNode(name: group.name, parentNode: nodeTree.rootNode, tree: tree) + nodeTree.rootNode = node + nodeTree.childrenNodes.append(node) + /// Now add all child paths to current tree + nodeTree.paths.append(contentsOf: tree.paths) + nodeTree.renderContainers.append(node.container) + } + + if let pathNode = nodeTree.rootNode as? PathNode { + //// Add path container to the node tree + nodeTree.paths.append(pathNode.pathOutput) + } + + if let renderNode = nodeTree.rootNode as? RenderNode { + nodeTree.renderContainers.append(ShapeRenderLayer(renderer: renderNode.renderer)) + } + } + return nodeTree + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/NodeProperty.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/NodeProperty.swift new file mode 100644 index 00000000..5e104815 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/NodeProperty.swift @@ -0,0 +1,47 @@ +// +// NodeProperty.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/30/19. +// + +import Foundation +import CoreGraphics + +/// A node property that holds a reference to a T ValueProvider and a T ValueContainer. +class NodeProperty: AnyNodeProperty { + + var valueType: Any.Type { return T.self } + + var value: T { + return typedContainer.outputValue + } + + var valueContainer: AnyValueContainer { + return typedContainer + } + + var valueProvider: AnyValueProvider + + init(provider: AnyValueProvider) { + self.valueProvider = provider + self.typedContainer = ValueContainer(provider.value(frame: 0) as! T) + self.typedContainer.setNeedsUpdate() + } + + func needsUpdate(frame: CGFloat) -> Bool { + return valueContainer.needsUpdate || valueProvider.hasUpdate(frame: frame) + } + + func setProvider(provider: AnyValueProvider) { + guard provider.valueType == valueType else { return } + self.valueProvider = provider + valueContainer.setNeedsUpdate() + } + + func update(frame: CGFloat) { + typedContainer.setValue(valueProvider.value(frame: frame), forFrame: frame) + } + + fileprivate var typedContainer: ValueContainer +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/Protocols/AnyNodeProperty.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/Protocols/AnyNodeProperty.swift new file mode 100644 index 00000000..7691f39e --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/Protocols/AnyNodeProperty.swift @@ -0,0 +1,44 @@ +// +// AnyNodeProperty.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/30/19. +// + +import Foundation +import CoreGraphics +/// A property of a node. The node property holds a provider and a container +protocol AnyNodeProperty { + + /// Returns true if the property needs to recompute its stored value + func needsUpdate(frame: CGFloat) -> Bool + + /// Updates the property for the frame + func update(frame: CGFloat) + + /// The stored value container for the property + var valueContainer: AnyValueContainer { get } + + /// The value provider for the property + var valueProvider: AnyValueProvider { get } + + /// The Type of the value provider + var valueType: Any.Type { get } + + /// Sets the value provider for the property. + func setProvider(provider: AnyValueProvider) +} + +extension AnyNodeProperty { + + /// Returns the most recently computed value for the keypath, returns nil if property wasn't found + func getValueOfType() -> T? { + return valueContainer.value as? T + } + + /// Returns the most recently computed value for the keypath, returns nil if property wasn't found + func getValue() -> Any? { + return valueContainer.value + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/Protocols/AnyValueContainer.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/Protocols/AnyValueContainer.swift new file mode 100644 index 00000000..c841686e --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/Protocols/AnyValueContainer.swift @@ -0,0 +1,26 @@ +// +// AnyValueContainer.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/30/19. +// + +import Foundation +import CoreGraphics + +/// The container for the value of a property. +protocol AnyValueContainer: class { + + /// The stored value of the container + var value: Any { get } + + /// Notifies the provider that it should update its container + func setNeedsUpdate() + + /// When true the container needs to have its value updated by its provider + var needsUpdate: Bool { get } + + /// The frame time of the last provided update + var lastUpdateFrame: CGFloat { get } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/Protocols/KeypathSearchable.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/Protocols/KeypathSearchable.swift new file mode 100644 index 00000000..a0dbf20f --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/Protocols/KeypathSearchable.swift @@ -0,0 +1,24 @@ +// +// KeypathSettable.swift +// lottie-swift +// +// Created by Brandon Withrow on 2/4/19. +// + +import Foundation +import QuartzCore + +/// Protocol that provides keypath search functionality. Returns all node properties associated with a keypath. +protocol KeypathSearchable { + + /// The name of the Keypath + var keypathName: String { get } + + /// A list of properties belonging to the keypath. + var keypathProperties: [String : AnyNodeProperty] { get } + + /// Children Keypaths + var childKeypaths: [KeypathSearchable] { get } + + var keypathLayer: CALayer? { get } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/Protocols/NodePropertyMap.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/Protocols/NodePropertyMap.swift new file mode 100644 index 00000000..0fdc178a --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/Protocols/NodePropertyMap.swift @@ -0,0 +1,42 @@ +// +// NodePropertyMap.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/21/19. +// + +import Foundation +import QuartzCore + +protocol NodePropertyMap { + var properties: [AnyNodeProperty] { get } +} + +extension NodePropertyMap { + + var childKeypaths: [KeypathSearchable] { + return [] + } + + var keypathLayer: CALayer? { + return nil + } + + /// Checks if the node's local contents need to be rebuilt. + func needsLocalUpdate(frame: CGFloat) -> Bool { + for property in properties { + if property.needsUpdate(frame: frame) { + return true + } + } + return false + } + + /// Rebuilds only the local nodes that have an update for the frame + func updateNodeProperties(frame: CGFloat) { + properties.forEach { (property) in + property.update(frame: frame) + } + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/ValueContainer.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/ValueContainer.swift new file mode 100644 index 00000000..7f13644f --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/ValueContainer.swift @@ -0,0 +1,43 @@ +// +// ValueContainer.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/30/19. +// + +import Foundation +import CoreGraphics + +/// A container for a node value that is Typed to T. +class ValueContainer: AnyValueContainer { + + private(set) var lastUpdateFrame: CGFloat = CGFloat.infinity + + func setValue(_ value: Any, forFrame: CGFloat) { + if let typedValue = value as? T { + needsUpdate = false + lastUpdateFrame = forFrame + outputValue = typedValue + } + } + + func setNeedsUpdate() { + needsUpdate = true + } + + var value: Any { + return outputValue as Any + } + + var outputValue: T { + didSet { + needsUpdate = false + } + } + + init(_ value: T) { + self.outputValue = value + } + + fileprivate(set) var needsUpdate: Bool = true +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/ValueProviders/GroupInterpolator.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/ValueProviders/GroupInterpolator.swift new file mode 100644 index 00000000..9470cd6c --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/ValueProviders/GroupInterpolator.swift @@ -0,0 +1,33 @@ +// +// KeyframeGroupInterpolator.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/22/19. +// + +import Foundation +import CoreGraphics + +/// A value provider that produces an array of values from an array of Keyframe Interpolators +final class GroupInterpolator: AnyValueProvider where ValueType: Interpolatable { + var valueType: Any.Type { + return [ValueType].self + } + + func hasUpdate(frame: CGFloat) -> Bool { + let updated = keyframeInterpolators.first(where: {$0.hasUpdate(frame: frame)}) + return updated != nil + } + + func value(frame: CGFloat) -> Any { + let output = keyframeInterpolators.map({$0.value(frame: frame) as! ValueType}) + return output + } + + /// Initialize with an array of array of keyframes. + init(keyframeGroups: ContiguousArray>>) { + self.keyframeInterpolators = ContiguousArray(keyframeGroups.map({KeyframeInterpolator(keyframes: $0)})) + } + let keyframeInterpolators: ContiguousArray> + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/ValueProviders/KeyframeInterpolator.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/ValueProviders/KeyframeInterpolator.swift new file mode 100644 index 00000000..baf46fef --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/ValueProviders/KeyframeInterpolator.swift @@ -0,0 +1,233 @@ +// +// KeyframeInterpolator.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/15/19. +// + +import Foundation +import CoreGraphics + +/// A value provider that produces a value at Time from a group of keyframes +final class KeyframeInterpolator: AnyValueProvider where ValueType: Interpolatable { + + init(keyframes: ContiguousArray>) { + self.keyframes = keyframes + } + let keyframes: ContiguousArray> + + var valueType: Any.Type { + return ValueType.self + } + + /** + Returns true to trigger a frame update for this interpolator. + + An interpolator will be asked if it needs to update every frame. + If the interpolator needs updating it will be asked to compute its value for + the given frame. + + Cases a keyframe should not be updated: + - If time is in span and leading keyframe is hold + - If time is after the last keyframe. + - If time is before the first keyframe + + Cases for updating a keyframe: + - If time is in the span, and is not a hold + - If time is outside of the span, and there are more keyframes + - If a value delegate is set + - If leading and trailing are both nil. + */ + func hasUpdate(frame: CGFloat) -> Bool { + if lastUpdatedFrame == nil { + return true + } + + if let leading = leadingKeyframe, + trailingKeyframe == nil, + leading.time < frame { + /// Frame is after bounds of keyframes + return false + } + if let trailing = trailingKeyframe, + leadingKeyframe == nil, + frame < trailing.time { + /// Frame is before bounds of keyframes + return false + } + if let leading = leadingKeyframe, + let trailing = trailingKeyframe, + leading.isHold, + leading.time < frame, + frame < trailing.time { + return false + } + return true + } + + fileprivate var lastUpdatedFrame: CGFloat? + + @discardableResult + func value(frame: CGFloat) -> Any { + // First set the keyframe span for the frame. + updateSpanIndices(frame: frame) + lastUpdatedFrame = frame + // If only one keyframe return its value + let progress: CGFloat + let value: ValueType + + if let leading = leadingKeyframe, + let trailing = trailingKeyframe { + /// We have leading and trailing keyframe. + progress = leading.interpolatedProgress(trailing, keyTime: frame) + value = leading.interpolate(trailing, progress: progress) + } else if let leading = leadingKeyframe { + progress = 0 + value = leading.value + } else if let trailing = trailingKeyframe { + progress = 1 + value = trailing.value + } else { + /// Satisfy the compiler. + progress = 0 + value = keyframes[0].value + } + return value + } + + fileprivate var leadingIndex: Int? = nil + fileprivate var trailingIndex: Int? = nil + fileprivate var leadingKeyframe: Keyframe? = nil + fileprivate var trailingKeyframe: Keyframe? = nil + + /// Finds the appropriate Leading and Trailing keyframe index for the given time. + fileprivate func updateSpanIndices(frame: CGFloat) { + guard keyframes.count > 0 else { + leadingIndex = nil + trailingIndex = nil + leadingKeyframe = nil + trailingKeyframe = nil + return + } + + /** + This function searches through the array to find the span of two keyframes + that contain the current time. + + We could use Array.first(where:) but that would search through the entire array + each frame. + Instead we track the last used index and search either forwards or + backwards from there. This reduces the iterations and complexity from + + O(n), where n is the length of the sequence to + O(n), where n is the number of items after or before the last used index. + + */ + + if keyframes.count == 1 { + /// Only one keyframe. Set it as first and move on. + leadingIndex = 0 + trailingIndex = nil + leadingKeyframe = keyframes[0] + trailingKeyframe = nil + return + } + + /// Sets the initial keyframes. This is often only needed for the first check. + if leadingIndex == nil && + trailingIndex == nil { + if frame < keyframes[0].time { + /// Time is before the first keyframe. Set it as the trailing. + trailingIndex = 0 + } else { + /// Time is after the first keyframe. Set the keyframe and the trailing. + leadingIndex = 0 + trailingIndex = 1 + } + } + + if let currentTrailing = trailingIndex, + keyframes[currentTrailing].time <= frame { + /// Time is after the current span. Iterate forward. + var newLeading = currentTrailing + var keyframeFound: Bool = false + while !keyframeFound { + + leadingIndex = newLeading + trailingIndex = keyframes.validIndex(newLeading + 1) + + guard let trailing = trailingIndex else { + /// We have reached the end of our keyframes. Time is after the last keyframe. + keyframeFound = true + continue + } + if frame < keyframes[trailing].time { + /// Keyframe in current span. + keyframeFound = true + continue + } + /// Advance the array. + newLeading = trailing + } + + } else if let currentLeading = leadingIndex, + frame < keyframes[currentLeading].time { + + /// Time is before the current span. Iterate backwards + var newTrailing = currentLeading + + var keyframeFound: Bool = false + while !keyframeFound { + + leadingIndex = keyframes.validIndex(newTrailing - 1) + trailingIndex = newTrailing + + guard let leading = leadingIndex else { + /// We have reached the end of our keyframes. Time is after the last keyframe. + keyframeFound = true + continue + } + if keyframes[leading].time <= frame { + /// Keyframe in current span. + keyframeFound = true + continue + } + /// Step back + newTrailing = leading + } + } + if let keyFrame = leadingIndex { + leadingKeyframe = keyframes[keyFrame] + } else { + leadingKeyframe = nil + } + + if let keyFrame = trailingIndex { + trailingKeyframe = keyframes[keyFrame] + } else { + trailingKeyframe = nil + } + } +} + +fileprivate extension Array { + + func validIndex(_ index: Int) -> Int? { + if 0 <= index, index < endIndex { + return index + } + return nil + } + +} + +fileprivate extension ContiguousArray { + + func validIndex(_ index: Int) -> Int? { + if 0 <= index, index < endIndex { + return index + } + return nil + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/ValueProviders/SingleValueProvider.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/ValueProviders/SingleValueProvider.swift new file mode 100644 index 00000000..ba244023 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/NodeProperties/ValueProviders/SingleValueProvider.swift @@ -0,0 +1,38 @@ +// +// SingleValueProvider.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/30/19. +// + +import Foundation +import QuartzCore + +/// Returns a value for every frame. +final class SingleValueProvider: AnyValueProvider { + + var value: ValueType { + didSet { + hasUpdate = true + } + } + + init(_ value: ValueType) { + self.value = value + } + + var valueType: Any.Type { + return ValueType.self + } + + func hasUpdate(frame: CGFloat) -> Bool { + return hasUpdate + } + + func value(frame: CGFloat) -> Any { + hasUpdate = false + return value + } + + private var hasUpdate: Bool = true +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/ModifierNodes/TrimPathNode.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/ModifierNodes/TrimPathNode.swift new file mode 100644 index 00000000..3a1ab248 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/ModifierNodes/TrimPathNode.swift @@ -0,0 +1,247 @@ +// +// TrimPathNode.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/23/19. +// + +import Foundation +import QuartzCore + +final class TrimPathProperties: NodePropertyMap, KeypathSearchable { + + init(trim: Trim) { + self.keypathName = trim.name + self.start = NodeProperty(provider: KeyframeInterpolator(keyframes: trim.start.keyframes)) + self.end = NodeProperty(provider: KeyframeInterpolator(keyframes: trim.end.keyframes)) + self.offset = NodeProperty(provider: KeyframeInterpolator(keyframes: trim.offset.keyframes)) + self.type = trim.trimType + self.keypathProperties = [ + "Start" : start, + "End" : end, + "Offset" : offset + ] + self.properties = Array(keypathProperties.values) + } + + let keypathProperties: [String : AnyNodeProperty] + let properties: [AnyNodeProperty] + let keypathName: String + + let start: NodeProperty + let end: NodeProperty + let offset: NodeProperty + let type: TrimType +} + +final class TrimPathNode: AnimatorNode { + + let properties: TrimPathProperties + + fileprivate let upstreamPaths: [PathOutputNode] + + init(parentNode: AnimatorNode?, trim: Trim, upstreamPaths: [PathOutputNode]) { + self.outputNode = PassThroughOutputNode(parent: parentNode?.outputNode) + self.parentNode = parentNode + self.properties = TrimPathProperties(trim: trim) + self.upstreamPaths = upstreamPaths + } + + // MARK: Animator Node + var propertyMap: NodePropertyMap & KeypathSearchable { + return properties + } + + let parentNode: AnimatorNode? + let outputNode: NodeOutput + var hasLocalUpdates: Bool = false + var hasUpstreamUpdates: Bool = false + var lastUpdateFrame: CGFloat? = nil + var isEnabled: Bool = true + + func forceUpstreamOutputUpdates() -> Bool { + return hasLocalUpdates || hasUpstreamUpdates + } + + func rebuildOutputs(frame: CGFloat) { + /// Make sure there is a trim. + let startValue = properties.start.value.cgFloatValue * 0.01 + let endValue = properties.end.value.cgFloatValue * 0.01 + let start = min(startValue, endValue) + let end = max(startValue, endValue) + + let offset = properties.offset.value.cgFloatValue.truncatingRemainder(dividingBy: 360) / 360 + + /// No need to trim, it's a full path + if start == 0, end == 1 { + return + } + + /// All paths are empty. + if start == end { + for pathContainer in upstreamPaths { + pathContainer.removePaths(updateFrame: frame) + } + return + } + + if properties.type == .simultaneously { + /// Just trim each path + for pathContainer in upstreamPaths { + let pathObjects = pathContainer.removePaths(updateFrame: frame) + for path in pathObjects { + // We are treating each compount path as an individual path. Its subpaths are treated as a whole. + pathContainer.appendPath(path.trim(fromPosition: start, toPosition: end, offset: offset, trimSimultaneously: false), updateFrame: frame) + } + } + return + } + + /// Individual path trimming. + + /// Brace yourself for the below code. + + /// Normalize lengths with offset. + var startPosition = (start+offset).truncatingRemainder(dividingBy: 1) + var endPosition = (end+offset).truncatingRemainder(dividingBy: 1) + + if startPosition < 0 { + startPosition = 1 + startPosition + } + + if endPosition < 0 { + endPosition = 1 + endPosition + } + if startPosition == 1 { + startPosition = 0 + } + if endPosition == 0 { + endPosition = 1 + } + + + /// First get the total length of all paths. + var totalLength: CGFloat = 0 + upstreamPaths.forEach({ totalLength = totalLength + $0.totalLength }) + + /// Now determine the start and end cut lengths + let startLength = startPosition * totalLength + let endLength = endPosition * totalLength + var pathStart: CGFloat = 0 + + /// Now loop through all path containers + for pathContainer in upstreamPaths { + + let pathEnd = pathStart + pathContainer.totalLength + + if !startLength.isInRange(pathStart, pathEnd) && + endLength.isInRange(pathStart, pathEnd) { + // pathStart|=======E----------------------|pathEnd + // Cut path components, removing after end. + + let pathCutLength = endLength - pathStart + let subpaths = pathContainer.removePaths(updateFrame: frame) + var subpathStart: CGFloat = 0 + for path in subpaths { + let subpathEnd = subpathStart + path.length + if pathCutLength < subpathEnd { + /// This is the subpath that needs to be cut. + let cutLength = pathCutLength - subpathStart + let newPath = path.trim(fromPosition: 0, toPosition: cutLength / path.length, offset: 0, trimSimultaneously: false) + pathContainer.appendPath(newPath, updateFrame: frame) + break + } else { + /// Add to container and move on + pathContainer.appendPath(path, updateFrame: frame) + } + if pathCutLength == subpathEnd { + /// Right on the end. The next subpath is not included. Break. + break + } + subpathStart = subpathEnd + } + + } else if !endLength.isInRange(pathStart, pathEnd) && + startLength.isInRange(pathStart, pathEnd) { + // pathStart|-------S======================|pathEnd + // + + // Cut path components, removing before beginning. + let pathCutLength = startLength - pathStart + // Clear paths from container + let subpaths = pathContainer.removePaths(updateFrame: frame) + var subpathStart: CGFloat = 0 + for path in subpaths { + let subpathEnd = subpathStart + path.length + + if subpathStart < pathCutLength, pathCutLength < subpathEnd { + /// This is the subpath that needs to be cut. + let cutLength = pathCutLength - subpathStart + let newPath = path.trim(fromPosition: cutLength / path.length, toPosition: 1, offset: 0, trimSimultaneously: false) + pathContainer.appendPath(newPath, updateFrame: frame) + } else if pathCutLength <= subpathStart { + pathContainer.appendPath(path, updateFrame: frame) + } + subpathStart = subpathEnd + } + } else if endLength.isInRange(pathStart, pathEnd) && + startLength.isInRange(pathStart, pathEnd) { + // pathStart|-------S============E---------|endLength + // pathStart|=====E----------------S=======|endLength + // trim from path beginning to endLength. + + // Cut path components, removing before beginnings. + let startCutLength = startLength - pathStart + let endCutLength = endLength - pathStart + // Clear paths from container + let subpaths = pathContainer.removePaths(updateFrame: frame) + var subpathStart: CGFloat = 0 + for path in subpaths { + + let subpathEnd = subpathStart + path.length + + if !startCutLength.isInRange(subpathStart, subpathEnd) && + !endCutLength.isInRange(subpathStart, subpathEnd) { + // The whole path is included. Add + // S|==============================|E + pathContainer.appendPath(path, updateFrame: frame) + + } else if startCutLength.isInRange(subpathStart, subpathEnd) && + !endCutLength.isInRange(subpathStart, subpathEnd) { + /// The start of the path needs to be trimmed + // |-------S======================|E + let cutLength = startCutLength - subpathStart + let newPath = path.trim(fromPosition: cutLength / path.length, toPosition: 1, offset: 0, trimSimultaneously: false) + pathContainer.appendPath(newPath, updateFrame: frame) + } else if !startCutLength.isInRange(subpathStart, subpathEnd) && + endCutLength.isInRange(subpathStart, subpathEnd) { + // S|=======E----------------------| + let cutLength = endCutLength - subpathStart + let newPath = path.trim(fromPosition: 0, toPosition: cutLength / path.length, offset: 0, trimSimultaneously: false) + pathContainer.appendPath(newPath, updateFrame: frame) + break + } else if startCutLength.isInRange(subpathStart, subpathEnd) && + endCutLength.isInRange(subpathStart, subpathEnd) { + // |-------S============E---------| + let cutFromLength = startCutLength - subpathStart + let cutToLength = endCutLength - subpathStart + let newPath = path.trim(fromPosition: cutFromLength / path.length, toPosition: cutToLength / path.length, offset: 0, trimSimultaneously: false) + pathContainer.appendPath(newPath, updateFrame: frame) + break + } + + subpathStart = subpathEnd + } + } else if (endLength <= pathStart && pathEnd <= startLength) || + (startLength <= pathStart && endLength <= pathStart) || + (pathEnd <= startLength && pathEnd <= endLength) { + /// The Path needs to be cleared + pathContainer.removePaths(updateFrame: frame) + } + + pathStart = pathEnd + } + + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/GroupOutputNode.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/GroupOutputNode.swift new file mode 100644 index 00000000..2f48762b --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/GroupOutputNode.swift @@ -0,0 +1,70 @@ +// +// TransformNodeOutput.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/30/19. +// + +import Foundation +import CoreGraphics +import QuartzCore + +class GroupOutputNode: NodeOutput { + + init(parent: NodeOutput?, rootNode: NodeOutput?) { + self.parent = parent + self.rootNode = rootNode + } + + let parent: NodeOutput? + let rootNode: NodeOutput? + var isEnabled: Bool = true + + private(set) var outputPath: CGPath? = nil + private(set) var transform: CATransform3D = CATransform3DIdentity + + func setTransform(_ xform: CATransform3D, forFrame: CGFloat) { + transform = xform + outputPath = nil + } + + func hasOutputUpdates(_ forFrame: CGFloat) -> Bool { + guard isEnabled else { + let upstreamUpdates = parent?.hasOutputUpdates(forFrame) ?? false + outputPath = parent?.outputPath + return upstreamUpdates + } + + let upstreamUpdates = parent?.hasOutputUpdates(forFrame) ?? false + if upstreamUpdates { + outputPath = nil + } + let rootUpdates = rootNode?.hasOutputUpdates(forFrame) ?? false + if rootUpdates { + outputPath = nil + } + + var localUpdates: Bool = false + if outputPath == nil { + localUpdates = true + + let newPath = CGMutablePath() + if let parentNode = parent, let parentPath = parentNode.outputPath { + /// First add parent path. + newPath.addPath(parentPath) + } + var xform = CATransform3DGetAffineTransform(transform) + if let rootNode = rootNode, + let rootPath = rootNode.outputPath, + let xformedPath = rootPath.copy(using: &xform) { + /// Now add root path. Note root path is transformed. + newPath.addPath(xformedPath) + } + + outputPath = newPath + } + + return upstreamUpdates || localUpdates + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/PassThroughOutputNode.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/PassThroughOutputNode.swift new file mode 100644 index 00000000..8a911db2 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/PassThroughOutputNode.swift @@ -0,0 +1,43 @@ +// +// PassThroughOutputNode.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/30/19. +// + +import Foundation +import CoreGraphics + +class PassThroughOutputNode: NodeOutput { + + init(parent: NodeOutput?) { + self.parent = parent + } + + let parent: NodeOutput? + + var hasUpdate: Bool = false + var isEnabled: Bool = true + + func hasOutputUpdates(_ forFrame: CGFloat) -> Bool { + /// Changes to this node do not affect downstream nodes. + let parentUpdate = parent?.hasOutputUpdates(forFrame) ?? false + /// Changes to upstream nodes do, however, affect this nodes state. + hasUpdate = hasUpdate || parentUpdate + return parentUpdate + } + + var outputPath: CGPath? { + if let parent = parent { + return parent.outputPath + } + return nil + } + + func hasRenderUpdates(_ forFrame: CGFloat) -> Bool { + /// Return true if there are upstream updates or if this node has updates + let upstreamUpdates = parent?.hasOutputUpdates(forFrame) ?? false + hasUpdate = hasUpdate || upstreamUpdates + return hasUpdate + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/PathOutputNode.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/PathOutputNode.swift new file mode 100644 index 00000000..f71655b3 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/PathOutputNode.swift @@ -0,0 +1,88 @@ +// +// PathNodeOutput.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/30/19. +// + +import Foundation +import CoreGraphics + +/// A node that has an output of a BezierPath +class PathOutputNode: NodeOutput { + + init(parent: NodeOutput?) { + self.parent = parent + } + + let parent: NodeOutput? + + fileprivate(set) var outputPath: CGPath? = nil + + var lastUpdateFrame: CGFloat? = nil + var lastPathBuildFrame: CGFloat? = nil + var isEnabled: Bool = true + + func hasOutputUpdates(_ forFrame: CGFloat) -> Bool { + guard isEnabled else { + let upstreamUpdates = parent?.hasOutputUpdates(forFrame) ?? false + outputPath = parent?.outputPath + return upstreamUpdates + } + + /// Ask if parent was updated + let upstreamUpdates = parent?.hasOutputUpdates(forFrame) ?? false + + /// If parent was updated and the path hasn't been built for this frame, clear the path. + if upstreamUpdates && lastPathBuildFrame != forFrame { + outputPath = nil + } + + if outputPath == nil { + /// If the path is clear, build the new path. + lastPathBuildFrame = forFrame + let newPath = CGMutablePath() + if let parentNode = parent, let parentPath = parentNode.outputPath { + newPath.addPath(parentPath) + } + for path in pathObjects { + for subPath in path.paths { + newPath.addPath(subPath.cgPath()) + } + } + outputPath = newPath + } + + /// Return true if there were upstream updates or if this node was updated. + return upstreamUpdates || (lastUpdateFrame == forFrame) + } + + // MARK: Internal + + fileprivate(set) var totalLength: CGFloat = 0 + fileprivate(set) var pathObjects: [CompoundBezierPath] = [] + + @discardableResult func removePaths(updateFrame: CGFloat?) -> [CompoundBezierPath] { + lastUpdateFrame = updateFrame + let returnPaths = pathObjects + outputPath = nil + totalLength = 0 + pathObjects = [] + return returnPaths + } + + func setPath(_ path: BezierPath, updateFrame: CGFloat) { + lastUpdateFrame = updateFrame + outputPath = nil + totalLength = path.length + pathObjects = [CompoundBezierPath(path: path)] + } + + func appendPath(_ path: CompoundBezierPath, updateFrame: CGFloat) { + lastUpdateFrame = updateFrame + outputPath = nil + totalLength = totalLength + path.length + pathObjects.append(path) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/Renderables/FillRenderer.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/Renderables/FillRenderer.swift new file mode 100644 index 00000000..dc781210 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/Renderables/FillRenderer.swift @@ -0,0 +1,72 @@ +// +// FillRenderer.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/30/19. +// + +import Foundation +import QuartzCore +import CoreGraphics + +extension FillRule { + var cgFillRule: CGPathFillRule { + switch self { + case .evenOdd: + return .evenOdd + default: + return .winding + } + } + + var caFillRule: CAShapeLayerFillRule { + switch self { + case .evenOdd: + return CAShapeLayerFillRule.evenOdd + default: + return CAShapeLayerFillRule.nonZero + } + } +} + +/// A rendered for a Path Fill +final class FillRenderer: PassThroughOutputNode, Renderable { + + let shouldRenderInContext: Bool = false + + func updateShapeLayer(layer: CAShapeLayer) { + layer.fillColor = color + layer.opacity = Float(opacity) + layer.fillRule = fillRule.caFillRule + hasUpdate = false + } + + var color: CGColor? { + didSet { + hasUpdate = true + } + } + + var opacity: CGFloat = 0 { + didSet { + hasUpdate = true + } + } + + var fillRule: FillRule = .none { + didSet { + hasUpdate = true + } + } + + func render(_ inContext: CGContext) { + guard inContext.path != nil && inContext.path!.isEmpty == false else { + return + } + guard let color = color else { return } + hasUpdate = false + inContext.setAlpha(opacity * 0.01) + inContext.setFillColor(color) + inContext.fillPath(using: fillRule.cgFillRule) + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/Renderables/GradientFillRenderer.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/Renderables/GradientFillRenderer.swift new file mode 100644 index 00000000..cd54a286 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/Renderables/GradientFillRenderer.swift @@ -0,0 +1,126 @@ +// +// GradientFillRenderer.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/30/19. +// + +import Foundation +import QuartzCore + +/// A rendered for a Path Fill +final class GradientFillRenderer: PassThroughOutputNode, Renderable { + + var shouldRenderInContext: Bool = true + + func updateShapeLayer(layer: CAShapeLayer) { + // Not applicable + } + + func render(_ inContext: CGContext) { + guard inContext.path != nil && inContext.path!.isEmpty == false else { + return + } + hasUpdate = false + var alphaColors = [CGColor]() + var alphaLocations = [CGFloat]() + + var gradientColors = [CGColor]() + var colorLocations = [CGFloat]() + let colorSpace = CGColorSpaceCreateDeviceRGB() + let maskColorSpace = CGColorSpaceCreateDeviceGray() + for i in 0.. ix, let color = CGColor(colorSpace: colorSpace, components: [colors[ix + 1], colors[ix + 2], colors[ix + 3], 1]) { + gradientColors.append(color) + colorLocations.append(colors[ix]) + } + } + + var drawMask = false + for i in stride(from: (numberOfColors * 4), to: colors.endIndex, by: 2) { + let alpha = colors[i + 1] + if alpha < 1 { + drawMask = true + } + if let color = CGColor(colorSpace: maskColorSpace, components: [alpha, 1]) { + alphaLocations.append(colors[i]) + alphaColors.append(color) + } + } + + inContext.setAlpha(opacity) + inContext.clip() + + /// First draw a mask is necessary. + if drawMask { + guard let maskGradient = CGGradient(colorsSpace: maskColorSpace, + colors: alphaColors as CFArray, + locations: alphaLocations), + let maskContext = CGContext(data: nil, + width: inContext.width, + height: inContext.height, + bitsPerComponent: 8, + bytesPerRow: inContext.width, + space: maskColorSpace, + bitmapInfo: 0) else { return } + let flipVertical = CGAffineTransform(a: 1, b: 0, c: 0, d: -1, tx: 0, ty: CGFloat(maskContext.height)) + maskContext.concatenate(flipVertical) + maskContext.concatenate(inContext.ctm) + if type == .linear { + maskContext.drawLinearGradient(maskGradient, start: start, end: end, options: [.drawsAfterEndLocation, .drawsBeforeStartLocation]) + } else { + maskContext.drawRadialGradient(maskGradient, startCenter: start, startRadius: 0, endCenter: start, endRadius: start.distanceTo(end), options: [.drawsAfterEndLocation, .drawsBeforeStartLocation]) + } + /// Clips the gradient + if let alphaMask = maskContext.makeImage() { + inContext.clip(to: inContext.boundingBoxOfClipPath, mask: alphaMask) + } + } + + /// Now draw the gradient + guard let gradient = CGGradient(colorsSpace: colorSpace, colors: gradientColors as CFArray, locations: colorLocations) else { return } + if type == .linear { + inContext.drawLinearGradient(gradient, start: start, end: end, options: [.drawsAfterEndLocation, .drawsBeforeStartLocation]) + } else { + inContext.drawRadialGradient(gradient, startCenter: start, startRadius: 0, endCenter: start, endRadius: start.distanceTo(end), options: [.drawsAfterEndLocation, .drawsBeforeStartLocation]) + } + } + + var start: CGPoint = .zero { + didSet { + hasUpdate = true + } + } + + var numberOfColors: Int = 0 { + didSet { + hasUpdate = true + } + } + + var colors: [CGFloat] = [] { + didSet { + hasUpdate = true + } + } + + var end: CGPoint = .zero { + didSet { + hasUpdate = true + } + } + + var opacity: CGFloat = 0 { + didSet { + hasUpdate = true + } + } + + var type: GradientType = .none { + didSet { + hasUpdate = true + } + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/Renderables/GradientStrokeRenderer.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/Renderables/GradientStrokeRenderer.swift new file mode 100644 index 00000000..7639fa8a --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/Renderables/GradientStrokeRenderer.swift @@ -0,0 +1,59 @@ +// +// GradientStrokeRenderer.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/30/19. +// + +import Foundation +import QuartzCore + +// MARK: - Renderer + +final class GradientStrokeRenderer: PassThroughOutputNode, Renderable { + + override func hasOutputUpdates(_ forFrame: CGFloat) -> Bool { + let updates = super.hasOutputUpdates(forFrame) + return updates || strokeRender.hasUpdate || gradientRender.hasUpdate + } + + var shouldRenderInContext: Bool = true + + func updateShapeLayer(layer: CAShapeLayer) { + /// Not Applicable + } + + let strokeRender: StrokeRenderer + let gradientRender: GradientFillRenderer + + override init(parent: NodeOutput?) { + self.strokeRender = StrokeRenderer(parent: nil) + self.gradientRender = GradientFillRenderer(parent: nil) + self.strokeRender.color = CGColor(colorSpace: CGColorSpaceCreateDeviceRGB(), components: [1, 1, 1, 1]) + super.init(parent: parent) + } + + func render(_ inContext: CGContext) { + guard inContext.path != nil && inContext.path!.isEmpty == false else { + return + } + + strokeRender.hasUpdate = false + hasUpdate = false + gradientRender.hasUpdate = false + + strokeRender.setupForStroke(inContext) + + inContext.replacePathWithStrokedPath() + + /// Now draw the gradient. + gradientRender.render(inContext) + + } + + func renderBoundsFor(_ boundingBox: CGRect) -> CGRect { + return strokeRender.renderBoundsFor(boundingBox) + } + + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/Renderables/StrokeRenderer.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/Renderables/StrokeRenderer.swift new file mode 100644 index 00000000..e8d0e8f6 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/Renderables/StrokeRenderer.swift @@ -0,0 +1,162 @@ +// +// StrokeRenderer.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/30/19. +// + +import Foundation +import QuartzCore + +extension LineJoin { + var cgLineJoin: CGLineJoin { + switch self { + case .bevel: + return .bevel + case .none: + return .miter + case .miter: + return .miter + case .round: + return .round + } + } + + var caLineJoin: CAShapeLayerLineJoin { + switch self { + case .none: + return CAShapeLayerLineJoin.miter + case .miter: + return CAShapeLayerLineJoin.miter + case .round: + return CAShapeLayerLineJoin.round + case .bevel: + return CAShapeLayerLineJoin.bevel + } + } +} + +extension LineCap { + var cgLineCap: CGLineCap { + switch self { + case .none: + return .butt + case .butt: + return .butt + case .round: + return .round + case .square: + return .square + } + } + + var caLineCap: CAShapeLayerLineCap { + switch self { + case .none: + return CAShapeLayerLineCap.butt + case .butt: + return CAShapeLayerLineCap.butt + case .round: + return CAShapeLayerLineCap.round + case .square: + return CAShapeLayerLineCap.square + } + } +} + +// MARK: - Renderer + +/// A rendered that renders a stroke on a path. +final class StrokeRenderer: PassThroughOutputNode, Renderable { + + var shouldRenderInContext: Bool = false + + var color: CGColor? { + didSet { + hasUpdate = true + } + } + + var opacity: CGFloat = 0 { + didSet { + hasUpdate = true + } + } + + var width: CGFloat = 0 { + didSet { + hasUpdate = true + } + } + + var miterLimit: CGFloat = 0 { + didSet { + hasUpdate = true + } + } + + var lineCap: LineCap = .none { + didSet { + hasUpdate = true + } + } + + var lineJoin: LineJoin = .none { + didSet { + hasUpdate = true + } + } + + var dashPhase: CGFloat? { + didSet { + hasUpdate = true + } + } + + var dashLengths: [CGFloat]? { + didSet { + hasUpdate = true + } + } + + func renderBoundsFor(_ boundingBox: CGRect) -> CGRect { + return boundingBox.insetBy(dx: -width, dy: -width) + } + + func setupForStroke(_ inContext: CGContext) { + inContext.setLineWidth(width) + inContext.setMiterLimit(miterLimit) + inContext.setLineCap(lineCap.cgLineCap) + inContext.setLineJoin(lineJoin.cgLineJoin) + if let dashPhase = dashPhase, let lengths = dashLengths { + inContext.setLineDash(phase: dashPhase, lengths: lengths) + } else { + inContext.setLineDash(phase: 0, lengths: []) + } + } + + func render(_ inContext: CGContext) { + guard inContext.path != nil && inContext.path!.isEmpty == false else { + return + } + guard let color = color else { return } + hasUpdate = false + setupForStroke(inContext) + inContext.setAlpha(opacity) + inContext.setStrokeColor(color) + inContext.strokePath() + } + + func updateShapeLayer(layer: CAShapeLayer) { + layer.strokeColor = color + layer.opacity = Float(opacity) + layer.lineWidth = width + layer.lineJoin = lineJoin.caLineJoin + layer.lineCap = lineCap.caLineCap + layer.lineDashPhase = dashPhase ?? 0 + layer.fillColor = nil + if let dashPattern = dashLengths { + layer.lineDashPattern = dashPattern.map({ NSNumber(value: Double($0)) }) + } + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/EllipseNode.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/EllipseNode.swift new file mode 100644 index 00000000..bc68e44f --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/EllipseNode.swift @@ -0,0 +1,109 @@ +// +// EllipseNode.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/17/19. +// + +import Foundation +import QuartzCore + +final class EllipseNodeProperties: NodePropertyMap, KeypathSearchable { + + var keypathName: String + + init(ellipse: Ellipse) { + self.keypathName = ellipse.name + self.direction = ellipse.direction + self.position = NodeProperty(provider: KeyframeInterpolator(keyframes: ellipse.position.keyframes)) + self.size = NodeProperty(provider: KeyframeInterpolator(keyframes: ellipse.size.keyframes)) + self.keypathProperties = [ + "Position" : position, + "Size" : size + ] + self.properties = Array(keypathProperties.values) + } + + let direction: PathDirection + let position: NodeProperty + let size: NodeProperty + + let keypathProperties: [String : AnyNodeProperty] + let properties: [AnyNodeProperty] +} + +final class EllipseNode: AnimatorNode, PathNode { + + let pathOutput: PathOutputNode + + let properties: EllipseNodeProperties + + init(parentNode: AnimatorNode?, ellipse: Ellipse) { + self.pathOutput = PathOutputNode(parent: parentNode?.outputNode) + self.properties = EllipseNodeProperties(ellipse: ellipse) + self.parentNode = parentNode + } + + // MARK: Animator Node + + var propertyMap: NodePropertyMap & KeypathSearchable { + return properties + } + + let parentNode: AnimatorNode? + var hasLocalUpdates: Bool = false + var hasUpstreamUpdates: Bool = false + var lastUpdateFrame: CGFloat? = nil + var isEnabled: Bool = true { + didSet{ + self.pathOutput.isEnabled = self.isEnabled + } + } + + func rebuildOutputs(frame: CGFloat) { + let ellipseSize = properties.size.value.sizeValue + let center = properties.position.value.pointValue + + // Unfortunately we HAVE to manually build out the ellipse. + // Every Apple method constructs an ellipse from the 3 o-clock position + // After effects constructs from the Noon position. + // After effects does clockwise, but also has a flag for reversed. + + var half = ellipseSize * 0.5 + if properties.direction == .counterClockwise { + half.width = half.width * -1 + } + + + let q1 = CGPoint(x: center.x, y: center.y - half.height) + let q2 = CGPoint(x: center.x + half.width, y: center.y) + let q3 = CGPoint(x: center.x, y: center.y + half.height) + let q4 = CGPoint(x: center.x - half.width, y: center.y) + + let cp = half * EllipseNode.ControlPointConstant + + var path = BezierPath(startPoint: CurveVertex(point: q1, + inTangentRelative: CGPoint(x: -cp.width, y: 0), + outTangentRelative: CGPoint(x: cp.width, y: 0))) + path.addVertex(CurveVertex(point: q2, + inTangentRelative: CGPoint(x: 0, y: -cp.height), + outTangentRelative: CGPoint(x: 0, y: cp.height))) + + path.addVertex(CurveVertex(point: q3, + inTangentRelative: CGPoint(x: cp.width, y: 0), + outTangentRelative: CGPoint(x: -cp.width, y: 0))) + + path.addVertex(CurveVertex(point: q4, + inTangentRelative: CGPoint(x: 0, y: cp.height), + outTangentRelative: CGPoint(x: 0, y: -cp.height))) + + path.addVertex(CurveVertex(point: q1, + inTangentRelative: CGPoint(x: -cp.width, y: 0), + outTangentRelative: CGPoint(x: cp.width, y: 0))) + path.close() + pathOutput.setPath(path, updateFrame: frame) + } + + static let ControlPointConstant: CGFloat = 0.55228 + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/PolygonNode.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/PolygonNode.swift new file mode 100644 index 00000000..b3663e8e --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/PolygonNode.swift @@ -0,0 +1,132 @@ +// +// PolygonNode.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/21/19. +// + +import Foundation +import QuartzCore + +final class PolygonNodeProperties: NodePropertyMap, KeypathSearchable { + + var keypathName: String + + var childKeypaths: [KeypathSearchable] = [] + + init(star: Star) { + self.keypathName = star.name + self.direction = star.direction + self.position = NodeProperty(provider: KeyframeInterpolator(keyframes: star.position.keyframes)) + self.outerRadius = NodeProperty(provider: KeyframeInterpolator(keyframes: star.outerRadius.keyframes)) + self.outerRoundedness = NodeProperty(provider: KeyframeInterpolator(keyframes: star.outerRoundness.keyframes)) + self.rotation = NodeProperty(provider: KeyframeInterpolator(keyframes: star.rotation.keyframes)) + self.points = NodeProperty(provider: KeyframeInterpolator(keyframes: star.points.keyframes)) + self.keypathProperties = [ + "Position" : position, + "Outer Radius" : outerRadius, + "Outer Roundedness" : outerRoundedness, + "Rotation" : rotation, + "Points" : points + ] + self.properties = Array(keypathProperties.values) + } + + let keypathProperties: [String : AnyNodeProperty] + let properties: [AnyNodeProperty] + + let direction: PathDirection + let position: NodeProperty + let outerRadius: NodeProperty + let outerRoundedness: NodeProperty + let rotation: NodeProperty + let points: NodeProperty +} + +final class PolygonNode: AnimatorNode, PathNode { + + let properties: PolygonNodeProperties + + let pathOutput: PathOutputNode + + init(parentNode: AnimatorNode?, star: Star) { + self.pathOutput = PathOutputNode(parent: parentNode?.outputNode) + self.properties = PolygonNodeProperties(star: star) + self.parentNode = parentNode + } + + // MARK: Animator Node + + var propertyMap: NodePropertyMap & KeypathSearchable { + return properties + } + + let parentNode: AnimatorNode? + var hasLocalUpdates: Bool = false + var hasUpstreamUpdates: Bool = false + var lastUpdateFrame: CGFloat? = nil + var isEnabled: Bool = true { + didSet{ + self.pathOutput.isEnabled = self.isEnabled + } + } + + /// Magic number needed for constructing path. + static let PolygonConstant: CGFloat = 0.25 + + func rebuildOutputs(frame: CGFloat) { + let outerRadius = properties.outerRadius.value.cgFloatValue + let outerRoundedness = properties.outerRoundedness.value.cgFloatValue * 0.01 + let numberOfPoints = properties.points.value.cgFloatValue + let rotation = properties.rotation.value.cgFloatValue + let position = properties.position.value.pointValue + + var currentAngle = (rotation - 90).toRadians() + let anglePerPoint = ((2 * CGFloat.pi) / numberOfPoints) + + var point = CGPoint(x: (outerRadius * cos(currentAngle)), + y: (outerRadius * sin(currentAngle))) + var vertices = [CurveVertex(point: point + position, inTangentRelative: .zero, outTangentRelative: .zero)] + + var previousPoint = point + currentAngle += anglePerPoint; + for _ in 0.. + let size: NodeProperty + let cornerRadius: NodeProperty + +} + +final class RectangleNode: AnimatorNode, PathNode { + + let properties: RectNodeProperties + + let pathOutput: PathOutputNode + + init(parentNode: AnimatorNode?, rectangle: Rectangle) { + self.properties = RectNodeProperties(rectangle: rectangle) + self.pathOutput = PathOutputNode(parent: parentNode?.outputNode) + self.parentNode = parentNode + } + + // MARK: Animator Node + + var propertyMap: NodePropertyMap & KeypathSearchable { + return properties + } + + let parentNode: AnimatorNode? + var hasLocalUpdates: Bool = false + var hasUpstreamUpdates: Bool = false + var lastUpdateFrame: CGFloat? = nil + var isEnabled: Bool = true { + didSet{ + self.pathOutput.isEnabled = self.isEnabled + } + } + + func rebuildOutputs(frame: CGFloat) { + + let size = properties.size.value.sizeValue * 0.5 + let radius = min(min(properties.cornerRadius.value.cgFloatValue, size.width) , size.height) + let position = properties.position.value.pointValue + var bezierPath = BezierPath() + let points: [CurveVertex] + + if radius <= 0 { + /// No Corners + points = [ + /// Lead In + CurveVertex(point: CGPoint(x: size.width, y: -size.height), + inTangentRelative: .zero, + outTangentRelative: .zero) + .translated(position), + /// Corner 1 + CurveVertex(point: CGPoint(x: size.width, y: size.height), + inTangentRelative: .zero, + outTangentRelative: .zero) + .translated(position), + /// Corner 2 + CurveVertex(point: CGPoint(x: -size.width, y: size.height), + inTangentRelative: .zero, + outTangentRelative: .zero) + .translated(position), + /// Corner 3 + CurveVertex(point: CGPoint(x: -size.width, y: -size.height), + inTangentRelative: .zero, + outTangentRelative: .zero) + .translated(position), + /// Corner 4 + CurveVertex(point: CGPoint(x: size.width, y: -size.height), + inTangentRelative: .zero, + outTangentRelative: .zero) + .translated(position), + ] + } else { + let controlPoint = radius * EllipseNode.ControlPointConstant + points = [ + /// Lead In + CurveVertex( + CGPoint(x: radius, y: 0), + CGPoint(x: radius, y: 0), + CGPoint(x: radius, y: 0)) + .translated(CGPoint(x: -radius, y: radius)) + .translated(CGPoint(x: size.width, y: -size.height)) + .translated(position), + /// Corner 1 + CurveVertex( + CGPoint(x: radius, y: 0), // In tangent + CGPoint(x: radius, y: 0), // Point + CGPoint(x: radius, y: controlPoint)) + .translated(CGPoint(x: -radius, y: -radius)) + .translated(CGPoint(x: size.width, y: size.height)) + .translated(position), + CurveVertex( + CGPoint(x: controlPoint, y: radius), // In tangent + CGPoint(x: 0, y: radius), // Point + CGPoint(x: 0, y: radius)) // Out Tangent + .translated(CGPoint(x: -radius, y: -radius)) + .translated(CGPoint(x: size.width, y: size.height)) + .translated(position), + /// Corner 2 + CurveVertex( + CGPoint(x: 0, y: radius), // In tangent + CGPoint(x: 0, y: radius), // Point + CGPoint(x: -controlPoint, y: radius))// Out tangent + .translated(CGPoint(x: radius, y: -radius)) + .translated(CGPoint(x: -size.width, y: size.height)) + .translated(position), + CurveVertex( + CGPoint(x: -radius, y: controlPoint), // In tangent + CGPoint(x: -radius, y: 0), // Point + CGPoint(x: -radius, y: 0)) // Out tangent + .translated(CGPoint(x: radius, y: -radius)) + .translated(CGPoint(x: -size.width, y: size.height)) + .translated(position), + /// Corner 3 + CurveVertex( + CGPoint(x: -radius, y: 0), // In tangent + CGPoint(x: -radius, y: 0), // Point + CGPoint(x: -radius, y: -controlPoint)) // Out tangent + .translated(CGPoint(x: radius, y: radius)) + .translated(CGPoint(x: -size.width, y: -size.height)) + .translated(position), + CurveVertex( + CGPoint(x: -controlPoint, y: -radius), // In tangent + CGPoint(x: 0, y: -radius), // Point + CGPoint(x: 0, y: -radius)) // Out tangent + .translated(CGPoint(x: radius, y: radius)) + .translated(CGPoint(x: -size.width, y: -size.height)) + .translated(position), + /// Corner 4 + CurveVertex( + CGPoint(x: 0, y: -radius), // In tangent + CGPoint(x: 0, y: -radius), // Point + CGPoint(x: controlPoint, y: -radius)) // Out tangent + .translated(CGPoint(x: -radius, y: radius)) + .translated(CGPoint(x: size.width, y: -size.height)) + .translated(position), + CurveVertex( + CGPoint(x: radius, y: -controlPoint), // In tangent + CGPoint(x: radius, y: 0), // Point + CGPoint(x: radius, y: 0)) // Out tangent + .translated(CGPoint(x: -radius, y: radius)) + .translated(CGPoint(x: size.width, y: -size.height)) + .translated(position), + ] + } + let reversed = properties.direction == .counterClockwise + let pathPoints = reversed ? points.reversed() : points + for point in pathPoints { + bezierPath.addVertex(reversed ? point.reversed() : point) + } + bezierPath.close() + pathOutput.setPath(bezierPath, updateFrame: frame) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/ShapeNode.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/ShapeNode.swift new file mode 100644 index 00000000..ea9383b1 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/ShapeNode.swift @@ -0,0 +1,61 @@ +// +// PathNode.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/16/19. +// + +import Foundation +import CoreGraphics + +final class ShapeNodeProperties: NodePropertyMap, KeypathSearchable { + + var keypathName: String + + init(shape: Shape) { + self.keypathName = shape.name + self.path = NodeProperty(provider: KeyframeInterpolator(keyframes: shape.path.keyframes)) + self.keypathProperties = [ + "Path" : path + ] + self.properties = Array(keypathProperties.values) + } + + let path: NodeProperty + let keypathProperties: [String : AnyNodeProperty] + let properties: [AnyNodeProperty] + +} + +final class ShapeNode: AnimatorNode, PathNode { + + let properties: ShapeNodeProperties + + let pathOutput: PathOutputNode + + init(parentNode: AnimatorNode?, shape: Shape) { + self.pathOutput = PathOutputNode(parent: parentNode?.outputNode) + self.properties = ShapeNodeProperties(shape: shape) + self.parentNode = parentNode + } + + // MARK: Animator Node + var propertyMap: NodePropertyMap & KeypathSearchable { + return properties + } + + let parentNode: AnimatorNode? + var hasLocalUpdates: Bool = false + var hasUpstreamUpdates: Bool = false + var lastUpdateFrame: CGFloat? = nil + var isEnabled: Bool = true { + didSet{ + self.pathOutput.isEnabled = self.isEnabled + } + } + + func rebuildOutputs(frame: CGFloat) { + pathOutput.setPath(properties.path.value, updateFrame: frame) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/StarNode.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/StarNode.swift new file mode 100644 index 00000000..c3050296 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/StarNode.swift @@ -0,0 +1,183 @@ +// +// StarNode.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/21/19. +// + +import Foundation +import QuartzCore + +final class StarNodeProperties: NodePropertyMap, KeypathSearchable { + + var keypathName: String + + init(star: Star) { + self.keypathName = star.name + self.direction = star.direction + self.position = NodeProperty(provider: KeyframeInterpolator(keyframes: star.position.keyframes)) + self.outerRadius = NodeProperty(provider: KeyframeInterpolator(keyframes: star.outerRadius.keyframes)) + self.outerRoundedness = NodeProperty(provider: KeyframeInterpolator(keyframes: star.outerRoundness.keyframes)) + if let innerRadiusKeyframes = star.innerRadius?.keyframes { + self.innerRadius = NodeProperty(provider: KeyframeInterpolator(keyframes: innerRadiusKeyframes)) + } else { + self.innerRadius = NodeProperty(provider: SingleValueProvider(Vector1D(0))) + } + if let innderRoundedness = star.innerRoundness?.keyframes { + self.innerRoundedness = NodeProperty(provider: KeyframeInterpolator(keyframes: innderRoundedness)) + } else { + self.innerRoundedness = NodeProperty(provider: SingleValueProvider(Vector1D(0))) + } + self.rotation = NodeProperty(provider: KeyframeInterpolator(keyframes: star.rotation.keyframes)) + self.points = NodeProperty(provider: KeyframeInterpolator(keyframes: star.points.keyframes)) + self.keypathProperties = [ + "Position" : position, + "Outer Radius" : outerRadius, + "Outer Roundedness" : outerRoundedness, + "Inner Radius" : innerRadius, + "Inner Roundedness" : innerRoundedness, + "Rotation" : rotation, + "Points" : points + ] + self.properties = Array(keypathProperties.values) + } + + let keypathProperties: [String : AnyNodeProperty] + let properties: [AnyNodeProperty] + + let direction: PathDirection + let position: NodeProperty + let outerRadius: NodeProperty + let outerRoundedness: NodeProperty + let innerRadius: NodeProperty + let innerRoundedness: NodeProperty + let rotation: NodeProperty + let points: NodeProperty +} + +final class StarNode: AnimatorNode, PathNode { + + let properties: StarNodeProperties + + let pathOutput: PathOutputNode + + init(parentNode: AnimatorNode?, star: Star) { + self.pathOutput = PathOutputNode(parent: parentNode?.outputNode) + self.properties = StarNodeProperties(star: star) + self.parentNode = parentNode + } + + // MARK: Animator Node + var propertyMap: NodePropertyMap & KeypathSearchable { + return properties + } + + let parentNode: AnimatorNode? + var hasLocalUpdates: Bool = false + var hasUpstreamUpdates: Bool = false + var lastUpdateFrame: CGFloat? = nil + var isEnabled: Bool = true { + didSet{ + self.pathOutput.isEnabled = self.isEnabled + } + } + + /// Magic number needed for building path data + static let PolystarConstant: CGFloat = 0.47829 + + func rebuildOutputs(frame: CGFloat) { + let outerRadius = properties.outerRadius.value.cgFloatValue + let innerRadius = properties.innerRadius.value.cgFloatValue + let outerRoundedness = properties.outerRoundedness.value.cgFloatValue * 0.01 + let innerRoundedness = properties.innerRoundedness.value.cgFloatValue * 0.01 + let numberOfPoints = properties.points.value.cgFloatValue + let rotation = properties.rotation.value.cgFloatValue + let position = properties.position.value.pointValue + + var currentAngle = (rotation - 90).toRadians() + let anglePerPoint = (2 * CGFloat.pi) / numberOfPoints + let halfAnglePerPoint = anglePerPoint / 2.0 + let partialPointAmount = numberOfPoints - floor(numberOfPoints) + + var point: CGPoint = .zero + + var partialPointRadius: CGFloat = 0 + if partialPointAmount != 0 { + currentAngle += halfAnglePerPoint * (1 - partialPointAmount) + partialPointRadius = innerRadius + partialPointAmount * (outerRadius - innerRadius) + point.x = (partialPointRadius * cos(currentAngle)) + point.y = (partialPointRadius * sin(currentAngle)) + currentAngle += anglePerPoint * partialPointAmount / 2 + } else { + point.x = (outerRadius * cos(currentAngle)) + point.y = (outerRadius * sin(currentAngle)) + currentAngle += halfAnglePerPoint + } + + var vertices = [CurveVertex]() + vertices.append(CurveVertex(point: point + position, inTangentRelative: .zero, outTangentRelative: .zero)) + + var previousPoint = point + var longSegment = false + let numPoints: Int = Int(ceil(numberOfPoints) * 2) + for i in 0.. + let position: NodeProperty + let scale: NodeProperty + let rotation: NodeProperty + let opacity: NodeProperty + let skew: NodeProperty + let skewAxis: NodeProperty + + var caTransform: CATransform3D { + return CATransform3D.makeTransform(anchor: anchor.value.pointValue, + position: position.value.pointValue, + scale: scale.value.sizeValue, + rotation: rotation.value.cgFloatValue, + skew: skew.value.cgFloatValue, + skewAxis: skewAxis.value.cgFloatValue) + } +} + +final class GroupNode: AnimatorNode { + + // MARK: Properties + let groupOutput: GroupOutputNode + + let properties: GroupNodeProperties + + let rootNode: AnimatorNode? + + var container: ShapeContainerLayer = ShapeContainerLayer() + + // MARK: Initializer + init(name: String, parentNode: AnimatorNode?, tree: NodeTree) { + self.parentNode = parentNode + self.keypathName = name + self.rootNode = tree.rootNode + self.properties = GroupNodeProperties(transform: tree.transform) + self.groupOutput = GroupOutputNode(parent: parentNode?.outputNode, rootNode: rootNode?.outputNode) + var childKeypaths: [KeypathSearchable] = tree.childrenNodes + childKeypaths.append(properties) + self.childKeypaths = childKeypaths + + for childContainer in tree.renderContainers { + container.insertRenderLayer(childContainer) + } + } + + // MARK: Keypath Searchable + + let keypathName: String + + let childKeypaths: [KeypathSearchable] + + var keypathLayer: CALayer? { + return container + } + + // MARK: Animator Node Protocol + + var propertyMap: NodePropertyMap & KeypathSearchable { + return properties + } + + var outputNode: NodeOutput { + return groupOutput + } + + let parentNode: AnimatorNode? + var hasLocalUpdates: Bool = false + var hasUpstreamUpdates: Bool = false + var lastUpdateFrame: CGFloat? = nil + var isEnabled: Bool = true { + didSet { + container.isHidden = !isEnabled + } + } + + func performAdditionalLocalUpdates(frame: CGFloat, forceLocalUpdate: Bool) -> Bool { + return rootNode?.updateContents(frame, forceLocalUpdate: forceLocalUpdate) ?? false + } + + func performAdditionalOutputUpdates(_ frame: CGFloat, forceOutputUpdate: Bool) { + rootNode?.updateOutputs(frame, forceOutputUpdate: forceOutputUpdate) + } + + func rebuildOutputs(frame: CGFloat) { + container.opacity = Float(properties.opacity.value.cgFloatValue) * 0.01 + container.transform = properties.caTransform + groupOutput.setTransform(container.transform, forFrame: frame) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderNodes/FillNode.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderNodes/FillNode.swift new file mode 100644 index 00000000..28847bfa --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderNodes/FillNode.swift @@ -0,0 +1,76 @@ +// +// FillNode.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/17/19. +// + +import Foundation +import CoreGraphics + +final class FillNodeProperties: NodePropertyMap, KeypathSearchable { + + var keypathName: String + + init(fill: Fill) { + self.keypathName = fill.name + self.color = NodeProperty(provider: KeyframeInterpolator(keyframes: fill.color.keyframes)) + self.opacity = NodeProperty(provider: KeyframeInterpolator(keyframes: fill.opacity.keyframes)) + self.type = fill.fillRule + self.keypathProperties = [ + "Opacity" : opacity, + "Color" : color + ] + self.properties = Array(keypathProperties.values) + } + + let opacity: NodeProperty + let color: NodeProperty + let type: FillRule + + let keypathProperties: [String : AnyNodeProperty] + let properties: [AnyNodeProperty] + +} + +final class FillNode: AnimatorNode, RenderNode { + + let fillRender: FillRenderer + var renderer: NodeOutput & Renderable { + return fillRender + } + + let fillProperties: FillNodeProperties + + init(parentNode: AnimatorNode?, fill: Fill) { + self.fillRender = FillRenderer(parent: parentNode?.outputNode) + self.fillProperties = FillNodeProperties(fill: fill) + self.parentNode = parentNode + } + + // MARK: Animator Node Protocol + + var propertyMap: NodePropertyMap & KeypathSearchable { + return fillProperties + } + + let parentNode: AnimatorNode? + var hasLocalUpdates: Bool = false + var hasUpstreamUpdates: Bool = false + var lastUpdateFrame: CGFloat? = nil + var isEnabled: Bool = true { + didSet { + fillRender.isEnabled = isEnabled + } + } + + func localUpdatesPermeateDownstream() -> Bool { + return false + } + + func rebuildOutputs(frame: CGFloat) { + fillRender.color = fillProperties.color.value.cgColorValue + fillRender.opacity = fillProperties.opacity.value.cgFloatValue * 0.01 + fillRender.fillRule = fillProperties.type + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderNodes/GradientFillNode.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderNodes/GradientFillNode.swift new file mode 100644 index 00000000..733f235b --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderNodes/GradientFillNode.swift @@ -0,0 +1,90 @@ +// +// GradientFillNode.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/22/19. +// + +import Foundation +import QuartzCore + +final class GradientFillProperties: NodePropertyMap, KeypathSearchable { + + init(gradientfill: GradientFill) { + self.keypathName = gradientfill.name + self.opacity = NodeProperty(provider: KeyframeInterpolator(keyframes: gradientfill.opacity.keyframes)) + self.startPoint = NodeProperty(provider: KeyframeInterpolator(keyframes: gradientfill.startPoint.keyframes)) + self.endPoint = NodeProperty(provider: KeyframeInterpolator(keyframes: gradientfill.endPoint.keyframes)) + self.colors = NodeProperty(provider: KeyframeInterpolator(keyframes: gradientfill.colors.keyframes)) + self.gradientType = gradientfill.gradientType + self.numberOfColors = gradientfill.numberOfColors + self.keypathProperties = [ + "Opacity" : opacity, + "Start Point" : startPoint, + "End Point" : endPoint, + "Colors" : colors + ] + self.properties = Array(keypathProperties.values) + } + + var keypathName: String + + let opacity: NodeProperty + let startPoint: NodeProperty + let endPoint: NodeProperty + let colors: NodeProperty<[Double]> + + let gradientType: GradientType + let numberOfColors: Int + + + let keypathProperties: [String : AnyNodeProperty] + let properties: [AnyNodeProperty] + +} + +final class GradientFillNode: AnimatorNode, RenderNode { + + let fillRender: GradientFillRenderer + + var renderer: NodeOutput & Renderable { + return fillRender + } + + let fillProperties: GradientFillProperties + + init(parentNode: AnimatorNode?, gradientFill: GradientFill) { + self.fillRender = GradientFillRenderer(parent: parentNode?.outputNode) + self.fillProperties = GradientFillProperties(gradientfill: gradientFill) + self.parentNode = parentNode + } + + // MARK: Animator Node Protocol + + var propertyMap: NodePropertyMap & KeypathSearchable { + return fillProperties + } + + let parentNode: AnimatorNode? + var hasLocalUpdates: Bool = false + var hasUpstreamUpdates: Bool = false + var lastUpdateFrame: CGFloat? = nil + var isEnabled: Bool = true { + didSet { + fillRender.isEnabled = isEnabled + } + } + + func localUpdatesPermeateDownstream() -> Bool { + return false + } + + func rebuildOutputs(frame: CGFloat) { + fillRender.start = fillProperties.startPoint.value.pointValue + fillRender.end = fillProperties.endPoint.value.pointValue + fillRender.opacity = fillProperties.opacity.value.cgFloatValue * 0.01 + fillRender.colors = fillProperties.colors.value.map { CGFloat($0) } + fillRender.type = fillProperties.gradientType + fillRender.numberOfColors = fillProperties.numberOfColors + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderNodes/GradientStrokeNode.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderNodes/GradientStrokeNode.swift new file mode 100644 index 00000000..eacc1d21 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderNodes/GradientStrokeNode.swift @@ -0,0 +1,143 @@ +// +// GradientStrokeNode.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/23/19. +// + +import Foundation +import CoreGraphics + +// MARK: - Properties + +final class GradientStrokeProperties: NodePropertyMap, KeypathSearchable { + + var keypathName: String + + init(gradientStroke: GradientStroke) { + self.keypathName = gradientStroke.name + self.opacity = NodeProperty(provider: KeyframeInterpolator(keyframes: gradientStroke.opacity.keyframes)) + self.startPoint = NodeProperty(provider: KeyframeInterpolator(keyframes: gradientStroke.startPoint.keyframes)) + self.endPoint = NodeProperty(provider: KeyframeInterpolator(keyframes: gradientStroke.endPoint.keyframes)) + self.colors = NodeProperty(provider: KeyframeInterpolator(keyframes: gradientStroke.colors.keyframes)) + self.gradientType = gradientStroke.gradientType + self.numberOfColors = gradientStroke.numberOfColors + self.width = NodeProperty(provider: KeyframeInterpolator(keyframes: gradientStroke.width.keyframes)) + self.miterLimit = CGFloat(gradientStroke.miterLimit) + self.lineCap = gradientStroke.lineCap + self.lineJoin = gradientStroke.lineJoin + + if let dashes = gradientStroke.dashPattern { + var dashPatterns = ContiguousArray>>() + var dashPhase = ContiguousArray>() + for dash in dashes { + if dash.type == .offset { + dashPhase = dash.value.keyframes + } else { + dashPatterns.append(dash.value.keyframes) + } + } + self.dashPattern = NodeProperty(provider: GroupInterpolator(keyframeGroups: dashPatterns)) + self.dashPhase = NodeProperty(provider: KeyframeInterpolator(keyframes: dashPhase)) + } else { + self.dashPattern = NodeProperty(provider: SingleValueProvider([Vector1D]())) + self.dashPhase = NodeProperty(provider: SingleValueProvider(Vector1D(0))) + } + self.keypathProperties = [ + "Opacity" : opacity, + "Start Point" : startPoint, + "End Point" : endPoint, + "Colors" : colors, + "Stroke Width" : width, + "Dashes" : dashPattern, + "Dash Phase" : dashPhase + ] + self.properties = Array(keypathProperties.values) + } + + let opacity: NodeProperty + let startPoint: NodeProperty + let endPoint: NodeProperty + let colors: NodeProperty<[Double]> + let width: NodeProperty + + let dashPattern: NodeProperty<[Vector1D]> + let dashPhase: NodeProperty + + let lineCap: LineCap + let lineJoin: LineJoin + let miterLimit: CGFloat + let gradientType: GradientType + let numberOfColors: Int + + + let keypathProperties: [String : AnyNodeProperty] + let properties: [AnyNodeProperty] + +} + +// MARK: - Node + +final class GradientStrokeNode: AnimatorNode, RenderNode { + + let strokeRender: GradientStrokeRenderer + + var renderer: NodeOutput & Renderable { + return strokeRender + } + + let strokeProperties: GradientStrokeProperties + + init(parentNode: AnimatorNode?, gradientStroke: GradientStroke) { + self.strokeRender = GradientStrokeRenderer(parent: parentNode?.outputNode) + self.strokeProperties = GradientStrokeProperties(gradientStroke: gradientStroke) + self.parentNode = parentNode + } + + // MARK: Animator Node Protocol + + var propertyMap: NodePropertyMap & KeypathSearchable { + return strokeProperties + } + + let parentNode: AnimatorNode? + var hasLocalUpdates: Bool = false + var hasUpstreamUpdates: Bool = false + var lastUpdateFrame: CGFloat? = nil + var isEnabled: Bool = true { + didSet { + strokeRender.isEnabled = isEnabled + } + } + + func localUpdatesPermeateDownstream() -> Bool { + return false + } + + func rebuildOutputs(frame: CGFloat) { + /// Update gradient properties + strokeRender.gradientRender.start = strokeProperties.startPoint.value.pointValue + strokeRender.gradientRender.end = strokeProperties.endPoint.value.pointValue + strokeRender.gradientRender.opacity = strokeProperties.opacity.value.cgFloatValue + strokeRender.gradientRender.colors = strokeProperties.colors.value.map { CGFloat($0) } + strokeRender.gradientRender.type = strokeProperties.gradientType + strokeRender.gradientRender.numberOfColors = strokeProperties.numberOfColors + + /// Now update stroke properties + strokeRender.strokeRender.opacity = strokeProperties.opacity.value.cgFloatValue + strokeRender.strokeRender.width = strokeProperties.width.value.cgFloatValue + strokeRender.strokeRender.miterLimit = strokeProperties.miterLimit + strokeRender.strokeRender.lineCap = strokeProperties.lineCap + strokeRender.strokeRender.lineJoin = strokeProperties.lineJoin + + /// Get dash lengths + let dashLengths = strokeProperties.dashPattern.value.map { $0.cgFloatValue } + if dashLengths.count > 0 { + strokeRender.strokeRender.dashPhase = strokeProperties.dashPhase.value.cgFloatValue + strokeRender.strokeRender.dashLengths = dashLengths + } else { + strokeRender.strokeRender.dashLengths = nil + strokeRender.strokeRender.dashPhase = nil + } + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderNodes/StrokeNode.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderNodes/StrokeNode.swift new file mode 100644 index 00000000..21fc39c4 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderNodes/StrokeNode.swift @@ -0,0 +1,127 @@ +// +// StrokeNode.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/22/19. +// + +import Foundation +import QuartzCore +// MARK: - Properties + +final class StrokeNodeProperties: NodePropertyMap, KeypathSearchable { + + init(stroke: Stroke) { + self.keypathName = stroke.name + self.color = NodeProperty(provider: KeyframeInterpolator(keyframes: stroke.color.keyframes)) + self.opacity = NodeProperty(provider: KeyframeInterpolator(keyframes: stroke.opacity.keyframes)) + self.width = NodeProperty(provider: KeyframeInterpolator(keyframes: stroke.width.keyframes)) + self.miterLimit = CGFloat(stroke.miterLimit) + self.lineCap = stroke.lineCap + self.lineJoin = stroke.lineJoin + + if let dashes = stroke.dashPattern { + var dashPatterns = ContiguousArray>>() + var dashPhase = ContiguousArray>() + for dash in dashes { + if dash.type == .offset { + dashPhase = dash.value.keyframes + } else { + dashPatterns.append(dash.value.keyframes) + } + } + self.dashPattern = NodeProperty(provider: GroupInterpolator(keyframeGroups: dashPatterns)) + if dashPhase.count == 0 { + self.dashPhase = NodeProperty(provider: SingleValueProvider(Vector1D(0))) + } else { + self.dashPhase = NodeProperty(provider: KeyframeInterpolator(keyframes: dashPhase)) + } + } else { + self.dashPattern = NodeProperty(provider: SingleValueProvider([Vector1D]())) + self.dashPhase = NodeProperty(provider: SingleValueProvider(Vector1D(0))) + } + self.keypathProperties = [ + "Opacity" : opacity, + "Color" : color, + "Stroke Width" : width, + "Dashes" : dashPattern, + "Dash Phase" : dashPhase + ] + self.properties = Array(keypathProperties.values) + } + + let keypathName: String + let keypathProperties: [String : AnyNodeProperty] + let properties: [AnyNodeProperty] + + let opacity: NodeProperty + let color: NodeProperty + let width: NodeProperty + + let dashPattern: NodeProperty<[Vector1D]> + let dashPhase: NodeProperty + + let lineCap: LineCap + let lineJoin: LineJoin + let miterLimit: CGFloat + +} + +// MARK: - Node + +/// Node that manages stroking a path +final class StrokeNode: AnimatorNode, RenderNode { + + let strokeRender: StrokeRenderer + var renderer: NodeOutput & Renderable { + return strokeRender + } + + let strokeProperties: StrokeNodeProperties + + init(parentNode: AnimatorNode?, stroke: Stroke) { + self.strokeRender = StrokeRenderer(parent: parentNode?.outputNode) + self.strokeProperties = StrokeNodeProperties(stroke: stroke) + self.parentNode = parentNode + } + + // MARK: Animator Node Protocol + + var propertyMap: NodePropertyMap & KeypathSearchable { + return strokeProperties + } + + let parentNode: AnimatorNode? + var hasLocalUpdates: Bool = false + var hasUpstreamUpdates: Bool = false + var lastUpdateFrame: CGFloat? = nil + var isEnabled: Bool = true { + didSet { + strokeRender.isEnabled = isEnabled + } + } + + func localUpdatesPermeateDownstream() -> Bool { + return false + } + + func rebuildOutputs(frame: CGFloat) { + strokeRender.color = strokeProperties.color.value.cgColorValue + strokeRender.opacity = strokeProperties.opacity.value.cgFloatValue * 0.01 + strokeRender.width = strokeProperties.width.value.cgFloatValue + strokeRender.miterLimit = strokeProperties.miterLimit + strokeRender.lineCap = strokeProperties.lineCap + strokeRender.lineJoin = strokeProperties.lineJoin + + /// Get dash lengths + let dashLengths = strokeProperties.dashPattern.value.map { $0.cgFloatValue } + if dashLengths.count > 0 { + strokeRender.dashPhase = strokeProperties.dashPhase.value.cgFloatValue + strokeRender.dashLengths = dashLengths + } else { + strokeRender.dashLengths = nil + strokeRender.dashPhase = nil + } + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/Text/TextAnimatorNode.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/Text/TextAnimatorNode.swift new file mode 100644 index 00000000..600de32e --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Nodes/Text/TextAnimatorNode.swift @@ -0,0 +1,251 @@ +// +// TextAnimatorNode.swift +// lottie-ios-iOS +// +// Created by Brandon Withrow on 2/19/19. +// + +import Foundation +import CoreGraphics +import QuartzCore + +final class TextAnimatorNodeProperties: NodePropertyMap, KeypathSearchable { + + let keypathName: String + + init(textAnimator: TextAnimator) { + self.keypathName = textAnimator.name + var properties = [String : AnyNodeProperty]() + + if let keyframeGroup = textAnimator.anchor { + self.anchor = NodeProperty(provider: KeyframeInterpolator(keyframes: keyframeGroup.keyframes)) + properties["Anchor"] = self.anchor + } else { + self.anchor = nil + } + + if let keyframeGroup = textAnimator.position { + self.position = NodeProperty(provider: KeyframeInterpolator(keyframes: keyframeGroup.keyframes)) + properties["Position"] = self.position + } else { + self.position = nil + } + + if let keyframeGroup = textAnimator.scale { + self.scale = NodeProperty(provider: KeyframeInterpolator(keyframes: keyframeGroup.keyframes)) + properties["Scale"] = self.scale + } else { + self.scale = nil + } + + if let keyframeGroup = textAnimator.skew { + self.skew = NodeProperty(provider: KeyframeInterpolator(keyframes: keyframeGroup.keyframes)) + properties["Skew"] = self.skew + } else { + self.skew = nil + } + + if let keyframeGroup = textAnimator.skewAxis { + self.skewAxis = NodeProperty(provider: KeyframeInterpolator(keyframes: keyframeGroup.keyframes)) + properties["Skew Axis"] = self.skewAxis + } else { + self.skewAxis = nil + } + + if let keyframeGroup = textAnimator.rotation { + self.rotation = NodeProperty(provider: KeyframeInterpolator(keyframes: keyframeGroup.keyframes)) + properties["Rotation"] = self.rotation + } else { + self.rotation = nil + } + + if let keyframeGroup = textAnimator.opacity { + self.opacity = NodeProperty(provider: KeyframeInterpolator(keyframes: keyframeGroup.keyframes)) + properties["Opacity"] = self.opacity + } else { + self.opacity = nil + } + + if let keyframeGroup = textAnimator.strokeColor { + self.strokeColor = NodeProperty(provider: KeyframeInterpolator(keyframes: keyframeGroup.keyframes)) + properties["Stroke Color"] = self.strokeColor + } else { + self.strokeColor = nil + } + + if let keyframeGroup = textAnimator.fillColor { + self.fillColor = NodeProperty(provider: KeyframeInterpolator(keyframes: keyframeGroup.keyframes)) + properties["Fill Color"] = self.fillColor + } else { + self.fillColor = nil + } + + if let keyframeGroup = textAnimator.strokeWidth { + self.strokeWidth = NodeProperty(provider: KeyframeInterpolator(keyframes: keyframeGroup.keyframes)) + properties["Stroke Width"] = self.strokeWidth + } else { + self.strokeWidth = nil + } + + if let keyframeGroup = textAnimator.tracking { + self.tracking = NodeProperty(provider: KeyframeInterpolator(keyframes: keyframeGroup.keyframes)) + properties["Tracking"] = self.tracking + } else { + self.tracking = nil + } + + self.keypathProperties = properties + + self.properties = Array(keypathProperties.values) + } + + let anchor: NodeProperty? + let position: NodeProperty? + let scale: NodeProperty? + let skew: NodeProperty? + let skewAxis: NodeProperty? + let rotation: NodeProperty? + let opacity: NodeProperty? + let strokeColor: NodeProperty? + let fillColor: NodeProperty? + let strokeWidth: NodeProperty? + let tracking: NodeProperty? + + let keypathProperties: [String : AnyNodeProperty] + let properties: [AnyNodeProperty] + + var caTransform: CATransform3D { + return CATransform3D.makeTransform(anchor: anchor?.value.pointValue ?? .zero, + position: position?.value.pointValue ?? .zero, + scale: scale?.value.sizeValue ?? CGSize(width: 100, height: 100), + rotation: rotation?.value.cgFloatValue ?? 0, + skew: skew?.value.cgFloatValue, + skewAxis: skewAxis?.value.cgFloatValue) + } +} + +final class TextOutputNode: NodeOutput { + + var parent: NodeOutput? { + return parentTextNode + } + + var parentTextNode: TextOutputNode? + var isEnabled: Bool = true + + init(parent: TextOutputNode?) { + self.parentTextNode = parent + } + + fileprivate var _xform: CATransform3D? + fileprivate var _opacity: CGFloat? + fileprivate var _strokeColor: CGColor? + fileprivate var _fillColor: CGColor? + fileprivate var _tracking: CGFloat? + fileprivate var _strokeWidth: CGFloat? + + var xform: CATransform3D { + get { + return _xform ?? parentTextNode?.xform ?? CATransform3DIdentity + } + set { + _xform = newValue + } + } + + var opacity: CGFloat { + get { + return _opacity ?? parentTextNode?.opacity ?? 1 + } + set { + _opacity = newValue + } + } + + var strokeColor: CGColor? { + get { + return _strokeColor ?? parentTextNode?.strokeColor + } + set { + _strokeColor = newValue + } + } + + var fillColor: CGColor? { + get { + return _fillColor ?? parentTextNode?.fillColor + } + set { + _fillColor = newValue + } + } + + var tracking: CGFloat { + get { + return _tracking ?? parentTextNode?.tracking ?? 0 + } + set { + _tracking = newValue + } + } + + var strokeWidth: CGFloat { + get { + return _strokeWidth ?? parentTextNode?.strokeWidth ?? 0 + } + set { + _strokeWidth = newValue + } + } + + + func hasOutputUpdates(_ forFrame: CGFloat) -> Bool { + // TODO Fix This + return true + } + + var outputPath: CGPath? + +} + +class TextAnimatorNode: AnimatorNode { + + let textOutputNode: TextOutputNode + + var outputNode: NodeOutput { + return textOutputNode + } + + let textAnimatorProperties: TextAnimatorNodeProperties + + init(parentNode: TextAnimatorNode?, textAnimator: TextAnimator) { + self.textOutputNode = TextOutputNode(parent: parentNode?.textOutputNode) + self.textAnimatorProperties = TextAnimatorNodeProperties(textAnimator: textAnimator) + self.parentNode = parentNode + } + + // MARK: Animator Node Protocol + + var propertyMap: NodePropertyMap & KeypathSearchable { + return textAnimatorProperties + } + + let parentNode: AnimatorNode? + var hasLocalUpdates: Bool = false + var hasUpstreamUpdates: Bool = false + var lastUpdateFrame: CGFloat? = nil + var isEnabled: Bool = true + + func localUpdatesPermeateDownstream() -> Bool { + return true + } + + func rebuildOutputs(frame: CGFloat) { + textOutputNode.xform = textAnimatorProperties.caTransform + textOutputNode.opacity = (textAnimatorProperties.opacity?.value.cgFloatValue ?? 100) * 0.01 + textOutputNode.strokeColor = textAnimatorProperties.strokeColor?.value.cgColorValue + textOutputNode.fillColor = textAnimatorProperties.fillColor?.value.cgColorValue + textOutputNode.tracking = textAnimatorProperties.tracking?.value.cgFloatValue ?? 1 + textOutputNode.strokeWidth = textAnimatorProperties.strokeWidth?.value.cgFloatValue ?? 0 + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Protocols/AnimatorNode.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Protocols/AnimatorNode.swift new file mode 100644 index 00000000..47edc1c4 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Protocols/AnimatorNode.swift @@ -0,0 +1,197 @@ +// +// AnimatorNode.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/15/19. +// + +import Foundation +import QuartzCore + +/** + Defines the basic outputs of an animator node. + + */ +protocol NodeOutput { + + /// The parent node. + var parent: NodeOutput? { get } + + /// Returns true if there are any updates upstream. OutputPath must be built before returning. + func hasOutputUpdates(_ forFrame: CGFloat) -> Bool + + var outputPath: CGPath? { get } + + var isEnabled: Bool { get set } +} + +/** + The Animator Node is the base node in the render system tree. + + It defines a single node that has an output path and option input node. + At animation time the root animation node is asked to update its contents for + the current frame. + The node reaches up its chain of nodes until the first node that does not need + updating is found. Then each node updates its contents down the render pipeline. + Each node adds its local path to its input path and passes it forward. + + An animator node holds a group of interpolators. These interpolators determine + if the node needs an update for the current frame. + + */ +protocol AnimatorNode: class, KeypathSearchable { + + /** + The available properties of the Node. + + These properties are automatically updated each frame. + These properties are also settable and gettable through the dynamic + property system. + + */ + var propertyMap: NodePropertyMap & KeypathSearchable { get } + + /// The upstream input node + var parentNode: AnimatorNode? { get } + + /// The output of the node. + var outputNode: NodeOutput { get } + + /// Update the outputs of the node. Called if local contents were update or if outputsNeedUpdate returns true. + func rebuildOutputs(frame: CGFloat) + + /// Setters for marking current node state. + var isEnabled: Bool { get set } + var hasLocalUpdates: Bool { get set } + var hasUpstreamUpdates: Bool { get set } + var lastUpdateFrame: CGFloat? { get set } + + // MARK: Optional + + /// Marks if updates to this node affect nodes downstream. + func localUpdatesPermeateDownstream() -> Bool + func forceUpstreamOutputUpdates() -> Bool + + /// Called at the end of this nodes update cycle. Always called. Optional. + func performAdditionalLocalUpdates(frame: CGFloat, forceLocalUpdate: Bool) -> Bool + func performAdditionalOutputUpdates(_ frame: CGFloat, forceOutputUpdate: Bool) + + /// The default simply returns `hasLocalUpdates` + func shouldRebuildOutputs(frame: CGFloat) -> Bool +} + +/// Basic Node Logic +extension AnimatorNode { + + func shouldRebuildOutputs(frame: CGFloat) -> Bool { + return hasLocalUpdates + } + + func localUpdatesPermeateDownstream() -> Bool { + /// Optional override + return true + } + + func forceUpstreamOutputUpdates() -> Bool { + /// Optional + return false + } + + func performAdditionalLocalUpdates(frame: CGFloat, forceLocalUpdate: Bool) -> Bool { + /// Optional + return forceLocalUpdate + } + + func performAdditionalOutputUpdates(_ frame: CGFloat, forceOutputUpdate: Bool) { + /// Optional + } + + @discardableResult func updateOutputs(_ frame: CGFloat, forceOutputUpdate: Bool) -> Bool { + guard isEnabled else { + // Disabled node, pass through. + lastUpdateFrame = frame + return parentNode?.updateOutputs(frame, forceOutputUpdate: forceOutputUpdate) ?? false + } + + if forceOutputUpdate == false && lastUpdateFrame != nil && lastUpdateFrame! == frame { + /// This node has already updated for this frame. Go ahead and return the results. + return hasUpstreamUpdates || hasLocalUpdates + } + + /// Ask if this node should force output updates upstream. + let forceUpstreamUpdates = forceOutputUpdate || forceUpstreamOutputUpdates() + + /// Perform upstream output updates. Optionally mark upstream updates if any. + hasUpstreamUpdates = (parentNode?.updateOutputs(frame, forceOutputUpdate: forceUpstreamUpdates) ?? false || hasUpstreamUpdates) + + /// Perform additional local output updates + performAdditionalOutputUpdates(frame, forceOutputUpdate: forceUpstreamUpdates) + + /// If there are local updates, or if updates have been force, rebuild outputs + if forceUpstreamUpdates || shouldRebuildOutputs(frame: frame) { + lastUpdateFrame = frame + rebuildOutputs(frame: frame) + } + return hasUpstreamUpdates || hasLocalUpdates + } + + + /// Rebuilds the content of this node, and upstream nodes if necessary. + @discardableResult func updateContents(_ frame: CGFloat, forceLocalUpdate: Bool) -> Bool { + guard isEnabled else { + // Disabled node, pass through. + return parentNode?.updateContents(frame, forceLocalUpdate: forceLocalUpdate) ?? false + } + + if forceLocalUpdate == false && lastUpdateFrame != nil && lastUpdateFrame! == frame { + /// This node has already updated for this frame. Go ahead and return the results. + return localUpdatesPermeateDownstream() ? hasUpstreamUpdates || hasLocalUpdates : hasUpstreamUpdates + } + + /// Are there local updates? If so mark the node. + hasLocalUpdates = forceLocalUpdate ? forceLocalUpdate : propertyMap.needsLocalUpdate(frame: frame) + + /// Were there upstream updates? If so mark the node + hasUpstreamUpdates = parentNode?.updateContents(frame, forceLocalUpdate: forceLocalUpdate) ?? false + + /// Perform property updates if necessary. + if hasLocalUpdates { + /// Rebuild local properties + propertyMap.updateNodeProperties(frame: frame) + } + + /// Ask the node to perform any other updates it might have. + hasUpstreamUpdates = performAdditionalLocalUpdates(frame: frame, forceLocalUpdate: forceLocalUpdate) || hasUpstreamUpdates + + /// If the node can update nodes downstream, notify them, otherwise pass on any upstream updates downstream. + return localUpdatesPermeateDownstream() ? hasUpstreamUpdates || hasLocalUpdates : hasUpstreamUpdates + } + + func updateTree(_ frame: CGFloat, forceUpdates: Bool = false) { + updateContents(frame, forceLocalUpdate: forceUpdates) + updateOutputs(frame, forceOutputUpdate: forceUpdates) + } + +} + +extension AnimatorNode { + /// Default implementation for Keypath searchable. + /// Forward all calls to the propertyMap. + + var keypathName: String { + return propertyMap.keypathName + } + + var keypathProperties: [String : AnyNodeProperty] { + return propertyMap.keypathProperties + } + + var childKeypaths: [KeypathSearchable] { + return propertyMap.childKeypaths + } + + var keypathLayer: CALayer? { + return nil + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Protocols/PathNode.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Protocols/PathNode.swift new file mode 100644 index 00000000..e7b2bfbb --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Protocols/PathNode.swift @@ -0,0 +1,20 @@ +// +// PathNode.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/17/19. +// + +import Foundation + +protocol PathNode { + var pathOutput: PathOutputNode { get } +} + +extension PathNode where Self: AnimatorNode { + + var outputNode: NodeOutput { + return pathOutput + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Protocols/RenderNode.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Protocols/RenderNode.swift new file mode 100644 index 00000000..4738f140 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/Protocols/RenderNode.swift @@ -0,0 +1,57 @@ +// +// RenderNode.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/17/19. +// + +import Foundation +import CoreGraphics +import QuartzCore + +/// A protocol that defines a node that holds render instructions +protocol RenderNode { + var renderer: Renderable & NodeOutput { get } +} + +/// A protocol that defines anything with render instructions +protocol Renderable { + + /// The last frame in which this node was updated. + var hasUpdate: Bool { get } + + func hasRenderUpdates(_ forFrame: CGFloat) -> Bool + + /** + Determines if the renderer requires a custom context for drawing. + If yes the shape layer will perform a custom drawing pass. + If no the shape layer will be a standard CAShapeLayer + */ + var shouldRenderInContext: Bool { get } + + /// Passes in the CAShapeLayer to update + func updateShapeLayer(layer: CAShapeLayer) + + /// Asks the renderer what the renderable bounds is for the given box. + func renderBoundsFor(_ boundingBox: CGRect) -> CGRect + + /// Renders the shape in a custom context + func render(_ inContext: CGContext) +} + +extension RenderNode where Self: AnimatorNode { + + var outputNode: NodeOutput { + return renderer + } + +} + +extension Renderable { + + func renderBoundsFor(_ boundingBox: CGRect) -> CGRect { + /// Optional + return boundingBox + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/RenderLayers/ShapeContainerLayer.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/RenderLayers/ShapeContainerLayer.swift new file mode 100644 index 00000000..0c3c19be --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/RenderLayers/ShapeContainerLayer.swift @@ -0,0 +1,73 @@ +// +// ShapeContainerLayer.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/30/19. +// + +import Foundation +import QuartzCore + +/** + The base layer that holds Shapes and Shape Renderers + */ +class ShapeContainerLayer: CALayer { + + private(set) var renderLayers: [ShapeContainerLayer] = [] + + override init() { + super.init() + self.actions = [ + "position" : NSNull(), + "bounds" : NSNull(), + "anchorPoint" : NSNull(), + "transform" : NSNull(), + "opacity" : NSNull(), + "hidden" : NSNull(), + ] + } + + required init?(coder aDecoder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + override init(layer: Any) { + guard let layer = layer as? ShapeContainerLayer else { + fatalError("init(layer:) wrong class.") + } + super.init(layer: layer) + } + + var renderScale: CGFloat = 1 { + didSet { + updateRenderScale() + } + } + + func insertRenderLayer(_ layer: ShapeContainerLayer) { + renderLayers.append(layer) + insertSublayer(layer, at: 0) + } + + func markRenderUpdates(forFrame: CGFloat) { + if self.hasRenderUpdate(forFrame: forFrame) { + self.rebuildContents(forFrame: forFrame) + } + guard self.isHidden == false else { return } + renderLayers.forEach { $0.markRenderUpdates(forFrame: forFrame) } + } + + func hasRenderUpdate(forFrame: CGFloat) -> Bool { + return false + } + + func rebuildContents(forFrame: CGFloat) { + /// Override + } + + func updateRenderScale() { + self.contentsScale = self.renderScale + renderLayers.forEach( { $0.renderScale = renderScale } ) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/RenderLayers/ShapeRenderLayer.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/RenderLayers/ShapeRenderLayer.swift new file mode 100644 index 00000000..6760dad2 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/NodeRenderSystem/RenderLayers/ShapeRenderLayer.swift @@ -0,0 +1,95 @@ +// +// RenderLayer.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/18/19. +// + +import Foundation +import QuartzCore + +/** + The layer responsible for rendering shape objects + */ +final class ShapeRenderLayer: ShapeContainerLayer { + + fileprivate(set) var renderer: Renderable & NodeOutput + + let shapeLayer: CAShapeLayer = CAShapeLayer() + + init(renderer: Renderable & NodeOutput) { + self.renderer = renderer + super.init() + self.anchorPoint = .zero + self.actions = [ + "position" : NSNull(), + "bounds" : NSNull(), + "anchorPoint" : NSNull(), + "path" : NSNull(), + "transform" : NSNull(), + "opacity" : NSNull(), + "hidden" : NSNull(), + ] + shapeLayer.actions = [ + "position" : NSNull(), + "bounds" : NSNull(), + "anchorPoint" : NSNull(), + "path" : NSNull(), + "fillColor" : NSNull(), + "strokeColor" : NSNull(), + "lineWidth" : NSNull(), + "miterLimit" : NSNull(), + "lineDashPhase" : NSNull(), + "hidden" : NSNull(), + ] + addSublayer(shapeLayer) + } + + override init(layer: Any) { + guard let layer = layer as? ShapeRenderLayer else { + fatalError("init(layer:) wrong class.") + } + self.renderer = layer.renderer + super.init(layer: layer) + } + + required init?(coder aDecoder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + override func hasRenderUpdate(forFrame: CGFloat) -> Bool { + self.isHidden = !renderer.isEnabled + guard self.isHidden == false else { return false } + return renderer.hasRenderUpdates(forFrame) + } + + override func rebuildContents(forFrame: CGFloat) { + + if renderer.shouldRenderInContext { + if let newPath = renderer.outputPath { + self.bounds = renderer.renderBoundsFor(newPath.boundingBox) + } else { + self.bounds = .zero + } + self.position = bounds.origin + self.setNeedsDisplay() + } else { + shapeLayer.path = renderer.outputPath + renderer.updateShapeLayer(layer: shapeLayer) + } + } + + override func draw(in ctx: CGContext) { + if let path = renderer.outputPath { + if !path.isEmpty { + ctx.addPath(path) + } + } + renderer.render(ctx) + } + + override func updateRenderScale() { + super.updateRenderScale() + shapeLayer.contentsScale = self.renderScale + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Debugging/AnimatorNodeDebugging.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Debugging/AnimatorNodeDebugging.swift new file mode 100644 index 00000000..3421833f --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Debugging/AnimatorNodeDebugging.swift @@ -0,0 +1,25 @@ +// +// AnimatorNodeDebugging.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/18/19. +// + +import Foundation + +extension AnimatorNode { + + func printNodeTree() { + parentNode?.printNodeTree() + print(String(describing: type(of: self))) + + if let group = self as? GroupNode { + print("* |Children") + group.rootNode?.printNodeTree() + print("*") + } else { + print("|") + } + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Debugging/LayerDebugging.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Debugging/LayerDebugging.swift new file mode 100644 index 00000000..c0e20fdb --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Debugging/LayerDebugging.swift @@ -0,0 +1,203 @@ +// +// LayerDebugging.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/24/19. +// + +import Foundation +import QuartzCore + +struct LayerDebugStyle { + let anchorColor: CGColor + let boundsColor: CGColor + let anchorWidth: CGFloat + let boundsWidth: CGFloat +} + +protocol LayerDebugging { + var debugStyle: LayerDebugStyle { get } +} + +protocol CustomLayerDebugging { + func layerForDebugging() -> CALayer +} + +class DebugLayer: CALayer { + init(style: LayerDebugStyle) { + super.init() + zPosition = 1000 + bounds = CGRect(x: 0, y: 0, width: style.anchorWidth, height: style.anchorWidth) + backgroundColor = style.anchorColor + } + + required init?(coder aDecoder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } +} + +public extension CALayer { + + func logLayerTree(withIndent: Int = 0) { + var string = "" + for _ in 0...withIndent { + string = string + " " + } + string = string + "|_" + String(describing: self) + print(string) + if let sublayers = sublayers { + for sublayer in sublayers { + sublayer.logLayerTree(withIndent: withIndent + 1) + } + } + } + +} + +extension CompositionLayer: CustomLayerDebugging { + func layerForDebugging() -> CALayer { + return contentsLayer + } +} + +extension CALayer { + + func setDebuggingState(visible: Bool) { + + var sublayers = self.sublayers + if let cust = self as? CustomLayerDebugging { + sublayers = cust.layerForDebugging().sublayers + } + + if let sublayers = sublayers { + for i in 0.. LayerDebugStyle { + let colorSpace = CGColorSpaceCreateDeviceRGB() + + let anchorColor = CGColor(colorSpace: colorSpace, components: [1, 0, 0, 1])! + let boundsColor = CGColor(colorSpace: colorSpace, components: [1, 1, 0, 1])! + return LayerDebugStyle(anchorColor: anchorColor, + boundsColor: boundsColor, + anchorWidth: 10, + boundsWidth: 2) + } + + static func topLayerStyle() -> LayerDebugStyle { + let colorSpace = CGColorSpaceCreateDeviceRGB() + let anchorColor = CGColor(colorSpace: colorSpace, components: [1, 0.5, 0, 0])! + let boundsColor = CGColor(colorSpace: colorSpace, components: [0, 1, 0, 1])! + + return LayerDebugStyle(anchorColor: anchorColor, + boundsColor: boundsColor, + anchorWidth: 10, + boundsWidth: 2) + } + + static func nullLayerStyle() -> LayerDebugStyle { + let colorSpace = CGColorSpaceCreateDeviceRGB() + let anchorColor = CGColor(colorSpace: colorSpace, components: [0, 0, 1, 0])! + let boundsColor = CGColor(colorSpace: colorSpace, components: [0, 1, 0, 1])! + + return LayerDebugStyle(anchorColor: anchorColor, + boundsColor: boundsColor, + anchorWidth: 10, + boundsWidth: 2) + } + + static func shapeLayerStyle() -> LayerDebugStyle { + let colorSpace = CGColorSpaceCreateDeviceRGB() + let anchorColor = CGColor(colorSpace: colorSpace, components: [0, 1, 0, 0])! + let boundsColor = CGColor(colorSpace: colorSpace, components: [0, 1, 0, 1])! + + return LayerDebugStyle(anchorColor: anchorColor, + boundsColor: boundsColor, + anchorWidth: 10, + boundsWidth: 2) + } + + static func shapeRenderLayerStyle() -> LayerDebugStyle { + let colorSpace = CGColorSpaceCreateDeviceRGB() + let anchorColor = CGColor(colorSpace: colorSpace, components: [0, 1, 1, 0])! + let boundsColor = CGColor(colorSpace: colorSpace, components: [0, 1, 0, 1])! + + return LayerDebugStyle(anchorColor: anchorColor, + boundsColor: boundsColor, + anchorWidth: 10, + boundsWidth: 2) + } +} + +extension Array where Element == LayerModel { + + var parents: [Int] { + var array = [Int]() + for layer in self { + if let parent = layer.parent { + array.append(parent) + } else { + array.append(-1) + } + } + return array + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Extensions/AnimationKeypathExtension.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Extensions/AnimationKeypathExtension.swift new file mode 100644 index 00000000..24c86d37 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Extensions/AnimationKeypathExtension.swift @@ -0,0 +1,256 @@ +// +// KeypathSearchableExtension.swift +// lottie-swift +// +// Created by Brandon Withrow on 2/4/19. +// + +import Foundation +import QuartzCore + +extension KeypathSearchable { + + func animatorNodes(for keyPath: AnimationKeypath) -> [AnimatorNode]? { + // Make sure there is a current key path. + guard let currentKey = keyPath.currentKey else { return nil } + + // Now try popping the keypath for wildcard / child search + guard let nextKeypath = keyPath.popKey(keypathName) else { + // We may be on the final keypath. Check for match. + if let node = self as? AnimatorNode, + currentKey.equalsKeypath(keypathName) { + // This is the final keypath and matches self. Return.s + return [node] + } + /// Nope. Stop Search + return nil + } + + var results: [AnimatorNode] = [] + + if let node = self as? AnimatorNode, + nextKeypath.currentKey == nil { + // Keypath matched self and was the final keypath. + results.append(node) + } + + for childNode in childKeypaths { + // Check if the child has any nodes matching the next keypath. + if let foundNodes = childNode.animatorNodes(for: nextKeypath) { + results.append(contentsOf: foundNodes) + } + + // In this case the current key is fuzzy, and both child and self match the next keyname. Keep digging! + if currentKey.keyPathType == .fuzzyWildcard, + let nextKeypath = keyPath.nextKeypath, + nextKeypath.equalsKeypath(childNode.keypathName), + let foundNodes = childNode.animatorNodes(for: keyPath) { + results.append(contentsOf: foundNodes) + } + } + + guard results.count > 0 else { + return nil + } + + return results + } + + func nodeProperties(for keyPath: AnimationKeypath) -> [AnyNodeProperty]? { + guard let nextKeypath = keyPath.popKey(keypathName) else { + /// Nope. Stop Search + return nil + } + + /// Keypath matches in some way. Continue the search. + var results: [AnyNodeProperty] = [] + + /// Check if we have a property keypath yet + if let propertyKey = nextKeypath.propertyKey, + let property = keypathProperties[propertyKey] { + /// We found a property! + results.append(property) + } + + if nextKeypath.nextKeypath != nil { + /// Now check child keypaths. + for child in childKeypaths { + if let childProperties = child.nodeProperties(for: nextKeypath) { + results.append(contentsOf: childProperties) + } + } + } + + guard results.count > 0 else { + return nil + } + + return results + } + + func layer(for keyPath: AnimationKeypath) -> CALayer? { + if keyPath.nextKeypath == nil, let layerKey = keyPath.currentKey, layerKey.equalsKeypath(keypathName) { + /// We found our layer! + return keypathLayer + } + guard let nextKeypath = keyPath.popKey(keypathName) else { + /// Nope. Stop Search + return nil + } + + if nextKeypath.nextKeypath != nil { + /// Now check child keypaths. + for child in childKeypaths { + if let layer = child.layer(for: keyPath) { + return layer + } + } + } + return nil + } + + func logKeypaths(for keyPath: AnimationKeypath?) { + let newKeypath: AnimationKeypath + if let previousKeypath = keyPath { + newKeypath = previousKeypath.appendingKey(keypathName) + } else { + newKeypath = AnimationKeypath(keys: [keypathName]) + } + print(newKeypath.fullPath) + for key in keypathProperties.keys { + print(newKeypath.appendingKey(key).fullPath) + } + for child in childKeypaths { + child.logKeypaths(for: newKeypath) + } + } +} + +extension AnimationKeypath { + var currentKey: String? { + return keys.first + } + + var nextKeypath: String? { + guard keys.count > 1 else { + return nil + } + return keys[1] + } + + var propertyKey: String? { + if nextKeypath == nil { + /// There are no more keypaths. This is a property key. + return currentKey + } + if keys.count == 2, currentKey?.keyPathType == .fuzzyWildcard { + /// The next keypath is the last and the current is a fuzzy key. + return nextKeypath + } + return nil + } + + // Pops the top keypath from the stack if the keyname matches. + func popKey(_ keyname: String) -> AnimationKeypath? { + guard let currentKey = currentKey, + currentKey.equalsKeypath(keyname), + keys.count > 1 else { + // Current key either doesnt match or we are on the last key. + return nil + } + + // Pop the keypath from the stack and return the new stack. + let newKeys: [String] + + if currentKey.keyPathType == .fuzzyWildcard { + /// Dont remove if current key is a fuzzy wildcard, and if the next keypath doesnt equal keypathname + if let nextKeypath = nextKeypath, + nextKeypath.equalsKeypath(keyname) { + /// Remove next two keypaths. This keypath breaks the wildcard. + var oldKeys = keys + oldKeys.remove(at: 0) + oldKeys.remove(at: 0) + newKeys = oldKeys + } else { + newKeys = keys + } + } else { + var oldKeys = keys + oldKeys.remove(at: 0) + newKeys = oldKeys + } + + return AnimationKeypath(keys: newKeys) + } + + var fullPath: String { + return keys.joined(separator: ".") + } + + func appendingKey(_ key: String) -> AnimationKeypath { + var newKeys = keys + newKeys.append(key) + return AnimationKeypath(keys: newKeys) + } +} + + + +extension String { + var keyPathType: KeyType { + switch self { + case "*": + return .wildcard + case "**": + return .fuzzyWildcard + default: + return .specific + } + } + + func equalsKeypath(_ keyname: String) -> Bool { + if keyPathType == .wildcard || keyPathType == .fuzzyWildcard { + return true + } + if self == keyname { + return true + } + if let index = self.firstIndex(of: "*") { + // Wildcard search. + let prefix = String(self.prefix(upTo: index)) + let suffix = String(self.suffix(from: self.index(after: index))) + + if prefix.count > 0 { + // Match prefix. + if keyname.count < prefix.count { + return false + } + let testPrefix = String(keyname.prefix(upTo: keyname.index(keyname.startIndex, offsetBy: prefix.count))) + if testPrefix != prefix { + // Prefix doesnt match + return false + } + } + if suffix.count > 0 { + // Match suffix. + if keyname.count < suffix.count { + // Suffix doesnt match + return false + } + let index = keyname.index(keyname.endIndex, offsetBy: -suffix.count) + let testSuffix = String(keyname.suffix(from: index)) + if testSuffix != suffix { + return false + } + } + return true + } + return false + } +} + +enum KeyType { + case specific + case wildcard + case fuzzyWildcard +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Extensions/CGFloatExtensions.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Extensions/CGFloatExtensions.swift new file mode 100644 index 00000000..b7c0d9d2 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Extensions/CGFloatExtensions.swift @@ -0,0 +1,149 @@ +// +// CGFloatExtensions.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/14/19. +// + +import Foundation +import QuartzCore + +extension CGFloat { + + func isInRangeOrEqual(_ from: CGFloat, _ to: CGFloat) -> Bool { + return (from <= self && self <= to) + } + + func isInRange(_ from: CGFloat, _ to: CGFloat) -> Bool { + return (from < self && self < to) + } + + var squared: CGFloat { + return self * self + } + + var cubed: CGFloat { + return self * self * self + } + + var cubicRoot: CGFloat { + return CGFloat(pow(Double(self), 1.0 / 3.0)) + } + + fileprivate static func SolveQuadratic(_ a: CGFloat, _ b: CGFloat, _ c: CGFloat) -> CGFloat { + var result = (-b + sqrt(b.squared - 4 * a * c)) / (2 * a); + guard !result.isInRangeOrEqual(0, 1) else { + return result + } + + result = (-b - sqrt(b.squared - 4 * a * c)) / (2 * a); + guard !result.isInRangeOrEqual(0, 1) else { + return result + } + + return -1; + } + + fileprivate static func SolveCubic(_ a: CGFloat, _ b: CGFloat, _ c: CGFloat, _ d: CGFloat) -> CGFloat { + if (a == 0) { + return SolveQuadratic(b, c, d) + } + if (d == 0) { + return 0 + } + let a = a + var b = b + var c = c + var d = d + b /= a + c /= a + d /= a + var q = (3.0 * c - b.squared) / 9.0 + let r = (-27.0 * d + b * (9.0 * c - 2.0 * b.squared)) / 54.0 + let disc = q.cubed + r.squared + let term1 = b / 3.0 + + if (disc > 0) { + var s = r + sqrt(disc) + s = (s < 0) ? -((-s).cubicRoot) : s.cubicRoot + var t = r - sqrt(disc) + t = (t < 0) ? -((-t).cubicRoot) : t.cubicRoot + + let result = -term1 + s + t; + if result.isInRangeOrEqual(0, 1) { + return result + } + } else if (disc == 0) { + let r13 = (r < 0) ? -((-r).cubicRoot) : r.cubicRoot; + + var result = -term1 + 2.0 * r13; + if result.isInRangeOrEqual(0, 1) { + return result + } + + result = -(r13 + term1); + if result.isInRangeOrEqual(0, 1) { + return result + } + + } else { + q = -q; + var dum1 = q * q * q; + dum1 = acos(r / sqrt(dum1)); + let r13 = 2.0 * sqrt(q); + + var result = -term1 + r13 * cos(dum1 / 3.0); + if result.isInRangeOrEqual(0, 1) { + return result + } + result = -term1 + r13 * cos((dum1 + 2.0 * .pi) / 3.0); + if result.isInRangeOrEqual(0, 1) { + return result + } + result = -term1 + r13 * cos((dum1 + 4.0 * .pi) / 3.0); + if result.isInRangeOrEqual(0, 1) { + return result + } + } + + return -1; + } + + func cubicBezierInterpolate(_ P0: CGPoint, _ P1: CGPoint, _ P2: CGPoint, _ P3: CGPoint) -> CGFloat { + var t: CGFloat + if (self == P0.x) { + // Handle corner cases explicitly to prevent rounding errors + t = 0 + } else if (self == P3.x) { + t = 1 + } else { + // Calculate t + let a = -P0.x + 3 * P1.x - 3 * P2.x + P3.x; + let b = 3 * P0.x - 6 * P1.x + 3 * P2.x; + let c = -3 * P0.x + 3 * P1.x; + let d = P0.x - self; + let tTemp = CGFloat.SolveCubic(a, b, c, d); + if (tTemp == -1) { + return -1; + } + t = tTemp + } + + // Calculate y from t + return (1 - t).cubed * P0.y + 3 * t * (1 - t).squared * P1.y + 3 * t.squared * (1 - t) * P2.y + t.cubed * P3.y; + } + + func cubicBezier(_ t: CGFloat, _ c1: CGFloat, _ c2: CGFloat, _ end: CGFloat) -> CGFloat { + let t_ = (1.0 - t) + let tt_ = t_ * t_ + let ttt_ = t_ * t_ * t_ + let tt = t * t + let ttt = t * t * t + + return self * ttt_ + + 3.0 * c1 * tt_ * t + + 3.0 * c2 * t_ * tt + + end * ttt; + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Extensions/MathKit.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Extensions/MathKit.swift new file mode 100644 index 00000000..7a2ad297 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Extensions/MathKit.swift @@ -0,0 +1,539 @@ +// +// MathKit.swift +// UIToolBox +// +// Created by Brandon Withrow on 10/10/18. +// +// From https://github.com/buba447/UIToolBox + +import Foundation +import CoreGraphics + +extension Int { + var cgFloat: CGFloat { + return CGFloat(self) + } +} + +extension Double { + var cgFloat: CGFloat { + return CGFloat(self) + } +} + +extension CGFloat: Interpolatable { + + + /** + Interpolates the receiver to the given number by Amount. + - Parameter toNumber: The number to interpolate to. + - Parameter amount: The amount to interpolate from 0-1 + + ``` + let number = 5 + let interpolated = number.interpolateTo(10, amount: 0.5) + print(interpolated) + // Result: 7.5 + ``` + + 1. The amount can be greater than one and less than zero. The interpolation will not be clipped. + */ + func interpolateTo(_ to: CGFloat, amount: CGFloat) -> CGFloat { + return self + ((to - self) * CGFloat(amount)) + } + + func interpolateTo(_ to: CGFloat, amount: CGFloat, spatialOutTangent: CGPoint?, spatialInTangent: CGPoint?) -> CGFloat { + return interpolateTo(to, amount: amount) + } + + func remap(fromLow: CGFloat, fromHigh: CGFloat, toLow: CGFloat, toHigh: CGFloat) -> CGFloat { + guard (fromHigh - fromLow) != 0 else { + // Would produce NAN + return 0 + } + return toLow + (self - fromLow) * (toHigh - toLow) / (fromHigh - fromLow) + } + + /** + Returns a value that is clamped between the two numbers + + 1. The order of arguments does not matter. + */ + func clamp(_ a: CGFloat, _ b: CGFloat) -> CGFloat { + return CGFloat(Double(self).clamp(Double(a), Double(b))) + } + + /** + Returns the difference between the receiver and the given number. + - Parameter absolute: If *true* (Default) the returned value will always be positive. + */ + func diff(_ a: CGFloat, absolute: Bool = true) -> CGFloat { + return absolute ? abs(a - self) : a - self + } + + func toRadians() -> CGFloat { return self * .pi / 180 } + func toDegrees() -> CGFloat { return self * 180 / .pi } + +} + +extension Double: Interpolatable { + + /** + Interpolates the receiver to the given number by Amount. + - Parameter toNumber: The number to interpolate to. + - Parameter amount: The amount to interpolate from 0-1 + + ``` + let number = 5 + let interpolated = number.interpolateTo(10, amount: 0.5) + print(interpolated) + // Result: 7.5 + ``` + + 1. The amount can be greater than one and less than zero. The interpolation will not be clipped. + */ + func interpolateTo(_ to: Double, amount: CGFloat) -> Double { + return self + ((to - self) * Double(amount)) + } + + func interpolateTo(_ to: Double, amount: CGFloat, spatialOutTangent: CGPoint?, spatialInTangent: CGPoint?) -> Double { + return interpolateTo(to, amount: amount) + } + + func remap(fromLow: Double, fromHigh: Double, toLow: Double, toHigh: Double) -> Double { + return toLow + (self - fromLow) * (toHigh - toLow) / (fromHigh - fromLow) + } + + /** + Returns a value that is clamped between the two numbers + + 1. The order of arguments does not matter. + */ + func clamp(_ a: Double, _ b: Double) -> Double { + let minValue = a <= b ? a : b + let maxValue = a <= b ? b : a + return max(min(self, maxValue), minValue) + } + +} + +extension CGRect { + + /// Initializes a new CGRect with a center point and size. + init(center: CGPoint, size: CGSize) { + self.init(x: center.x - (size.width * 0.5), + y: center.y - (size.height * 0.5), + width: size.width, + height: size.height) + } + + /// Returns the total area of the rect. + var area: CGFloat { + return width * height + } + + + /// The center point of the rect. Settable. + var center: CGPoint { + get { + return CGPoint(x: midX, y: midY) + } + set { + origin = CGPoint(x: newValue.x - (size.width * 0.5), + y: newValue.y - (size.height * 0.5)) + } + } + + /// The top left point of the rect. Settable. + var topLeft: CGPoint { + get { + return CGPoint(x: minX, y: minY) + } + set { + origin = CGPoint(x: newValue.x, + y: newValue.y) + } + } + + /// The bottom left point of the rect. Settable. + var bottomLeft: CGPoint { + get { + return CGPoint(x: minX, y: maxY) + } + set { + origin = CGPoint(x: newValue.x, + y: newValue.y - size.height) + } + } + + /// The top right point of the rect. Settable. + var topRight: CGPoint { + get { + return CGPoint(x: maxX, y: minY) + } + set { + origin = CGPoint(x: newValue.x - size.width, + y: newValue.y) + } + } + + /// The bottom right point of the rect. Settable. + var bottomRight: CGPoint { + get { + return CGPoint(x: maxX, y: maxY) + } + set { + origin = CGPoint(x: newValue.x - size.width, + y: newValue.y - size.height) + } + } + + /** + Interpolates the receiver to the given rect by Amount. + - Parameter to: The rect to interpolate to. + - Parameter amount: The amount to interpolate from 0-1 + + ``` + let rect = CGRect(x:0, y:0, width: 50, height: 50) + let interpolated = rect.interpolateTo(CGRect(x:100, y:100, width: 100, height: 100), amount: 0.5) + print(interpolated) + // Result: (x: 50, y: 50, width: 75, height: 75) + ``` + + 1. The amount can be greater than one and less than zero. The interpolation will not be clipped. + */ + func interpolateTo(_ to: CGRect, amount: CGFloat) -> CGRect { + return CGRect(x: origin.x.interpolateTo(to.origin.x, amount: amount), + y: origin.y.interpolateTo(to.origin.y, amount: amount), + width: width.interpolateTo(to.width, amount: amount), + height: height.interpolateTo(to.height, amount: amount)) + } + +} + +extension CGSize { + + /** + Interpolates the receiver to the given size by Amount. + - Parameter to: The size to interpolate to. + - Parameter amount: The amount to interpolate from 0-1 + + ``` + let size = CGSize(width: 50, height: 50) + let interpolated = rect.interpolateTo(CGSize(width: 100, height: 100), amount: 0.5) + print(interpolated) + // Result: (width: 75, height: 75) + ``` + + 1. The amount can be greater than one and less than zero. The interpolation will not be clipped. + */ + func interpolateTo(_ to: CGSize, amount: CGFloat) -> CGSize { + return CGSize(width: width.interpolateTo(to.width, amount: amount), + height: height.interpolateTo(to.height, amount: amount)) + } + + /// Returns the scale float that will fit the receive inside of the given size. + func scaleThatFits(_ size: CGSize) -> CGFloat { + return CGFloat.minimum(width / size.width, height / size.height) + } + + /// Adds receiver size to give size. + func add(_ size: CGSize) -> CGSize { + return CGSize(width: width + size.width, height: height + size.height) + } + + /// Subtracts given size from receiver size. + func subtract(_ size: CGSize) -> CGSize { + return CGSize(width: width - size.width, height: height - size.height) + } + + /// Multiplies receiver size by the given size. + func multiply(_ size: CGSize) -> CGSize { + return CGSize(width: width * size.width, height: height * size.height) + } + + /// Operator convenience to add sizes with + + static func +(left: CGSize, right: CGSize) -> CGSize { + return left.add(right) + } + + /// Operator convenience to subtract sizes with - + static func -(left: CGSize, right: CGSize) -> CGSize { + return left.subtract(right) + } + + /// Operator convenience to multiply sizes with * + static func *(left: CGSize, right: CGFloat) -> CGSize { + return CGSize(width: left.width * right, height: left.height * right) + } + +} + +/// A struct that defines a line segment with two CGPoints +struct CGLine { + + /// The Start of the line segment. + var start: CGPoint + /// The End of the line segment. + var end: CGPoint + + /// Initializes a line segment with start and end points + init(start: CGPoint, end: CGPoint) { + self.start = start + self.end = end + } + + /// The length of the line segment. + var length: CGFloat { + return end.distanceTo(start) + } + + /// Returns a line segment that is normalized to a length of 1 + func normalize() -> CGLine { + let len = length + guard len > 0 else { + return self + } + let relativeEnd = end - start + let relativeVector = CGPoint(x: relativeEnd.x / len, y: relativeEnd.y / len) + let absoluteVector = relativeVector + start + return CGLine(start: start, end: absoluteVector) + } + + /// Trims a line segment to the given length + func trimmedToLength(_ toLength: CGFloat) -> CGLine { + let len = length + guard len > 0 else { + return self + } + let relativeEnd = end - start + let relativeVector = CGPoint(x: relativeEnd.x / len, y: relativeEnd.y / len) + let sizedVector = CGPoint(x: relativeVector.x * toLength, y: relativeVector.y * toLength) + let absoluteVector = sizedVector + start + return CGLine(start: start, end: absoluteVector) + } + + /// Flips a line vertically and horizontally from the start point. + func flipped() -> CGLine { + let relativeEnd = end - start + let flippedEnd = CGPoint(x: relativeEnd.x * -1, y: relativeEnd.y * -1) + return CGLine(start: start, end: flippedEnd + start) + } + + /// Move the line to the new start point. + func transpose(_ toPoint: CGPoint) -> CGLine { + let diff = toPoint - start + let newEnd = end + diff + return CGLine(start: toPoint, end: newEnd) + } + +} + +infix operator +| +infix operator +- + +extension CGPoint: Interpolatable { + + /// Returns the distance between the receiver and the given point. + func distanceTo(_ a: CGPoint) -> CGFloat { + let xDist = a.x - x + let yDist = a.y - y + return CGFloat(sqrt((xDist * xDist) + (yDist * yDist))) + } + + /// Returns the length between the receiver and *CGPoint.zero* + var vectorLength: CGFloat { + return distanceTo(.zero) + } + + func rounded(decimal: CGFloat) -> CGPoint { + return CGPoint(x: (round(decimal * x) / decimal), y: (round(decimal * y) / decimal)) + } + + /** + Interpolates the receiver to the given Point by Amount. + - Parameter to: The Point to interpolate to. + - Parameter amount: The amount to interpolate from 0-1 + + ``` + let point = CGPoint(width: 50, height: 50) + let interpolated = rect.interpolateTo(CGPoint(width: 100, height: 100), amount: 0.5) + print(interpolated) + // Result: (x: 75, y: 75) + ``` + + 1. The amount can be greater than one and less than zero. The interpolation will not be clipped. + */ + + func interpolate(_ to: CGPoint, amount: CGFloat) -> CGPoint { + return CGPoint(x: x.interpolateTo(to.x, amount: amount), + y: y.interpolateTo(to.y, amount: amount)) + } + + func interpolate(_ to: CGPoint, outTangent: CGPoint, inTangent: CGPoint, amount: CGFloat, maxIterations: Int = 3, samples: Int = 20, accuracy: CGFloat = 1) -> CGPoint { + if amount == 0 { + return self + } + if amount == 1 { + return to + } + + if self.colinear(outTangent, inTangent) == true, + outTangent.colinear(inTangent, to) == true { + return interpolate(to, amount: amount) + } + + let step = 1 / CGFloat(samples) + + var points: [(point: CGPoint, distance: CGFloat)] = [(point: self, distance: 0)] + var totalLength: CGFloat = 0 + + var previousPoint = self + var previousAmount = CGFloat(0) + + var closestPoint: Int = 0 + + while previousAmount < 1 { + + previousAmount = previousAmount + step + + if previousAmount < amount { + closestPoint = closestPoint + 1 + } + + let newPoint = self.pointOnPath(to, outTangent: outTangent, inTangent: inTangent, amount: previousAmount) + let distance = previousPoint.distanceTo(newPoint) + totalLength = totalLength + distance + points.append((point: newPoint, distance: totalLength)) + previousPoint = newPoint + } + + let accurateDistance = amount * totalLength + var point = points[closestPoint] + + var foundPoint: Bool = false + + var pointAmount: CGFloat = CGFloat(closestPoint) * step + var nextPointAmount: CGFloat = pointAmount + step + + var refineIterations = 0 + while foundPoint == false { + refineIterations = refineIterations + 1 + /// First see if the next point is still less than the projected length. + let nextPoint = points[closestPoint + 1] + if nextPoint.distance < accurateDistance { + point = nextPoint + closestPoint = closestPoint + 1 + pointAmount = CGFloat(closestPoint) * step + nextPointAmount = pointAmount + step + if closestPoint == points.count { + foundPoint = true + } + continue + } + if accurateDistance < point.distance { + closestPoint = closestPoint - 1 + if closestPoint < 0 { + foundPoint = true + continue + } + point = points[closestPoint] + pointAmount = CGFloat(closestPoint) * step + nextPointAmount = pointAmount + step + continue + } + + /// Now we are certain the point is the closest point under the distance + let pointDiff = nextPoint.distance - point.distance + let proposedPointAmount = ((accurateDistance - point.distance) / pointDiff).remap(fromLow: 0, fromHigh: 1, toLow: pointAmount, toHigh: nextPointAmount) + + let newPoint = self.pointOnPath(to, outTangent: outTangent, inTangent: inTangent, amount: proposedPointAmount) + let newDistance = point.distance + point.point.distanceTo(newPoint) + pointAmount = proposedPointAmount + point = (point: newPoint, distance: newDistance) + if accurateDistance - newDistance <= accuracy || + newDistance - accurateDistance <= accuracy { + foundPoint = true + } + + if refineIterations == maxIterations { + foundPoint = true + } + } + return point.point + } + + func pointOnPath(_ to: CGPoint, outTangent: CGPoint, inTangent: CGPoint, amount: CGFloat) -> CGPoint { + let a = self.interpolate(outTangent, amount: amount) + let b = outTangent.interpolate(inTangent, amount: amount) + let c = inTangent.interpolate(to, amount: amount) + let d = a.interpolate(b, amount: amount) + let e = b.interpolate(c, amount: amount) + let f = d.interpolate(e, amount: amount) + return f + } + + func colinear(_ a: CGPoint, _ b: CGPoint) -> Bool { + let area = x * (a.y - b.y) + a.x * (b.y - y) + b.x * (y - a.y); + let accuracy: CGFloat = 0.05 + if area < accuracy && area > -accuracy { + return true + } + return false + } + + func interpolateTo(_ to: CGPoint, amount: CGFloat, spatialOutTangent: CGPoint?, spatialInTangent: CGPoint?) -> CGPoint { + guard let outTan = spatialOutTangent, + let inTan = spatialInTangent else { + return interpolate(to, amount: amount) + } + let cp1 = self + outTan + let cp2 = to + inTan + + return interpolate(to, outTangent: cp1, inTangent: cp2, amount: amount) + } + + /// Subtracts the given point from the receiving point. + func subtract(_ point: CGPoint) -> CGPoint { + return CGPoint(x: x - point.x, + y: y - point.y) + } + + /// Adds the given point from the receiving point. + func add(_ point: CGPoint) -> CGPoint { + return CGPoint(x: x + point.x, + y: y + point.y) + } + + var isZero: Bool { + return (x == 0 && y == 0) + } + + /// Operator convenience to divide points with / + static func / (lhs: CGPoint, rhs: CGFloat) -> CGPoint { + return CGPoint(x: lhs.x / CGFloat(rhs), y: lhs.y / CGFloat(rhs)) + } + + /// Operator convenience to multiply points with * + static func * (lhs: CGPoint, rhs: CGFloat) -> CGPoint { + return CGPoint(x: lhs.x * CGFloat(rhs), y: lhs.y * CGFloat(rhs)) + } + + /// Operator convenience to add points with + + static func +(left: CGPoint, right: CGPoint) -> CGPoint { + return left.add(right) + } + + /// Operator convenience to subtract points with - + static func -(left: CGPoint, right: CGPoint) -> CGPoint { + return left.subtract(right) + } + + static func +|(left: CGPoint, right: CGFloat) -> CGPoint { + return CGPoint(x: left.x, y: left.y + right) + } + + static func +-(left: CGPoint, right: CGFloat) -> CGPoint { + return CGPoint(x: left.x + right, y: left.y) + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Extensions/StringExtensions.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Extensions/StringExtensions.swift new file mode 100644 index 00000000..7ff01221 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Extensions/StringExtensions.swift @@ -0,0 +1,32 @@ +// +// StringExtensions.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/25/19. +// + +import Foundation +import CoreGraphics + +extension String { + + func hexColorComponents() -> (red: CGFloat, green: CGFloat, blue: CGFloat) { + + var cString:String = trimmingCharacters(in: .whitespacesAndNewlines).uppercased() + + if (cString.hasPrefix("#")) { + cString.remove(at: cString.startIndex) + } + + if ((cString.count) != 6) { + return (red: 0, green: 0, blue: 0) + } + + var rgbValue:UInt32 = 0 + Scanner(string: cString).scanHexInt32(&rgbValue) + + return (red: CGFloat((rgbValue & 0xFF0000) >> 16) / 255.0, + green: CGFloat((rgbValue & 0x00FF00) >> 8) / 255.0, + blue: CGFloat(rgbValue & 0x0000FF) / 255.0) + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Helpers/AnimationContext.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Helpers/AnimationContext.swift new file mode 100644 index 00000000..41ab6ab6 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Helpers/AnimationContext.swift @@ -0,0 +1,65 @@ +// +// AnimationContext.swift +// lottie-swift +// +// Created by Brandon Withrow on 2/1/19. +// + +import Foundation +import CoreGraphics +import QuartzCore + +/// A completion block for animations. `true` is passed in if the animation completed playing. +public typealias LottieCompletionBlock = (Bool) -> Void + +struct AnimationContext { + + init(playFrom: CGFloat, + playTo: CGFloat, + closure: LottieCompletionBlock?) { + self.playTo = playTo + self.playFrom = playFrom + self.closure = AnimationCompletionDelegate(completionBlock: closure) + } + + var playFrom: CGFloat + var playTo: CGFloat + var closure: AnimationCompletionDelegate + +} + +enum AnimationContextState { + case playing + case cancelled + case complete +} + +class AnimationCompletionDelegate: NSObject, CAAnimationDelegate { + + init(completionBlock: LottieCompletionBlock?) { + self.completionBlock = completionBlock + super.init() + } + + var animationLayer: AnimationContainer? + var animationKey: String? + var ignoreDelegate: Bool = false + var animationState: AnimationContextState = .playing + + let completionBlock: LottieCompletionBlock? + + public func animationDidStop(_ anim: CAAnimation, finished flag: Bool) { + guard ignoreDelegate == false else { return } + animationState = flag ? .complete : .cancelled + if let animationLayer = animationLayer, let key = animationKey { + animationLayer.removeAnimation(forKey: key) + if flag { + animationLayer.currentFrame = (anim as! CABasicAnimation).toValue as! CGFloat + } + } + if let completionBlock = completionBlock { + completionBlock(flag) + } + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Interpolatable/Interpolatable.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Interpolatable/Interpolatable.swift new file mode 100644 index 00000000..061e03c4 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Interpolatable/Interpolatable.swift @@ -0,0 +1,18 @@ +// +// Interpolatable.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/14/19. +// + +import Foundation +import CoreGraphics + +protocol Interpolatable { + + func interpolateTo(_ to: Self, + amount: CGFloat, + spatialOutTangent: CGPoint?, + spatialInTangent: CGPoint?) -> Self + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Interpolatable/InterpolatableExtensions.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Interpolatable/InterpolatableExtensions.swift new file mode 100644 index 00000000..fd5d6e5c --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Interpolatable/InterpolatableExtensions.swift @@ -0,0 +1,170 @@ +// +// InterpolatableExtensions.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/14/19. +// + +import Foundation +import CoreGraphics + +extension Vector1D: Interpolatable { + func interpolateTo(_ to: Vector1D, amount: CGFloat, spatialOutTangent: CGPoint?, spatialInTangent: CGPoint?) -> Vector1D { + return value.interpolateTo(to.value, amount: amount).vectorValue + } +} + +extension Vector2D: Interpolatable { + func interpolateTo(_ to: Vector2D, amount: CGFloat, spatialOutTangent: CGPoint?, spatialInTangent: CGPoint?) -> Vector2D { + return pointValue.interpolateTo(to.pointValue, amount: CGFloat(amount), spatialOutTangent: spatialOutTangent, spatialInTangent: spatialInTangent).vector2dValue + } + +} + +extension Vector3D: Interpolatable { + func interpolateTo(_ to: Vector3D, amount: CGFloat, spatialOutTangent: CGPoint?, spatialInTangent: CGPoint?) -> Vector3D { + if spatialInTangent != nil || spatialOutTangent != nil { + // TODO Support third dimension spatial interpolation + let point = pointValue.interpolateTo(to.pointValue, amount: amount, spatialOutTangent: spatialOutTangent, spatialInTangent: spatialInTangent) + return Vector3D(x: point.x, + y: point.y, + z: CGFloat(z.interpolateTo(to.z, amount: amount))) + } + return Vector3D(x: x.interpolateTo(to.x, amount: amount), + y: y.interpolateTo(to.y, amount: amount), + z: z.interpolateTo(to.z, amount: amount)) + } +} + +extension Color: Interpolatable { + + /// Initialize a new color with Hue Saturation and Value + init(h: Double, s: Double, v: Double, a: Double) { + + let i = floor(h * 6) + let f = h * 6 - i + let p = v * (1 - s); + let q = v * (1 - f * s) + let t = v * (1 - (1 - f) * s) + + switch (i.truncatingRemainder(dividingBy: 6)) { + case 0: + self.r = v + self.g = t + self.b = p + case 1: + self.r = q + self.g = v + self.b = p + case 2: + self.r = p + self.g = v + self.b = t + case 3: + self.r = p + self.g = q + self.b = v + case 4: + self.r = t + self.g = p + self.b = v + case 5: + self.r = v + self.g = p + self.b = q + default: + self.r = 0 + self.g = 0 + self.b = 0 + } + self.a = a + } + + /// Hue Saturation Value of the color. + var hsva: (h: Double, s: Double, v: Double, a: Double) { + let maxValue = max(r, g, b) + let minValue = min(r, g, b) + + var h: Double, s: Double, v: Double = maxValue + + let d = maxValue - minValue + s = maxValue == 0 ? 0 : d / maxValue; + + if (maxValue == minValue) { + h = 0; // achromatic + } else { + switch (maxValue) { + case r: h = (g - b) / d + (g < b ? 6 : 0) + case g: h = (b - r) / d + 2 + case b: h = (r - g) / d + 4 + default: h = maxValue + } + h = h / 6 + } + return (h: h, s: s, v: v, a: a) + } + + init(y: Double, u: Double, v: Double, a: Double) { + // From https://www.fourcc.org/fccyvrgb.php + self.r = y + 1.403 * v + self.g = y - 0.344 * u + self.b = y + 1.770 * u + self.a = a + } + + var yuv: (y: Double, u: Double, v: Double, a: Double) { + /// From https://www.fourcc.org/fccyvrgb.php + let y = 0.299 * r + 0.587 * g + 0.114 * b + let u = -0.14713 * r - 0.28886 * g + 0.436 * b + let v = 0.615 * r - 0.51499 * g - 0.10001 * b + return (y: y, u: u, v: v, a: a) + } + + func interpolateTo(_ to: Color, amount: CGFloat, spatialOutTangent: CGPoint?, spatialInTangent: CGPoint?) -> Color { + return Color(r: r.interpolateTo(to.r, amount: amount), + g: g.interpolateTo(to.g, amount: amount), + b: b.interpolateTo(to.b, amount: amount), + a: a.interpolateTo(to.a, amount: amount)) + } +} + +extension CurveVertex: Interpolatable { + func interpolateTo(_ to: CurveVertex, amount: CGFloat, spatialOutTangent: CGPoint?, spatialInTangent: CGPoint?) -> CurveVertex { + return CurveVertex(point: point.interpolate(to.point, amount: amount), + inTangent: inTangent.interpolate(to.inTangent, amount: amount), + outTangent: outTangent.interpolate(to.outTangent, amount: amount)) + } +} + +extension BezierPath: Interpolatable { + func interpolateTo(_ to: BezierPath, amount: CGFloat, spatialOutTangent: CGPoint?, spatialInTangent: CGPoint?) -> BezierPath { + var newPath = BezierPath() + for i in 0.. TextDocument { + if amount == 1 { + return to + } + return self + } +} + +extension Array: Interpolatable where Element == Double { + func interpolateTo(_ to: Array, amount: CGFloat, spatialOutTangent: CGPoint?, spatialInTangent: CGPoint?) -> Array { + var returnArray = [Double]() + for i in 0.. CGFloat { + let startTime = time + let endTime = to.time + if keyTime <= startTime { + return 0 + } + if endTime <= keyTime { + return 1 + } + + if isHold { + return 0 + } + + let outTanPoint = outTangent?.pointValue ?? .zero + let inTanPoint = to.inTangent?.pointValue ?? CGPoint(x: 1, y: 1) + var progress: CGFloat = keyTime.remap(fromLow: startTime, fromHigh: endTime, toLow: 0, toHigh: 1) + if !outTanPoint.isZero || !inTanPoint.equalTo(CGPoint(x: 1, y: 1)) { + /// Cubic interpolation + progress = progress.cubicBezierInterpolate(.zero, outTanPoint, inTanPoint, CGPoint(x: 1, y: 1)) + } + return progress + } + + /// Interpolates the keyframes' by a progress from 0-1 + func interpolate(_ to: Keyframe, progress: CGFloat) -> T { + return value.interpolateTo(to.value, amount: progress, spatialOutTangent: spatialOutTangent?.pointValue, spatialInTangent: to.spatialInTangent?.pointValue) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Primitives/BezierPath.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Primitives/BezierPath.swift new file mode 100644 index 00000000..a2babfc0 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Primitives/BezierPath.swift @@ -0,0 +1,401 @@ +// +// Shape.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/8/19. +// + +import Foundation +import CoreGraphics + +/// A container that holds instructions for creating a single, unbroken Bezier Path. +struct BezierPath { + + /// The elements of the path + fileprivate(set) var elements: [PathElement] + + /// If the path is closed or not. + fileprivate(set) var closed: Bool + + /// The total length of the path. + fileprivate(set) var length: CGFloat + + /// Initializes a new Bezier Path. + init(startPoint: CurveVertex) { + self.elements = [PathElement(vertex: startPoint)] + self.length = 0 + self.closed = false + } + + init() { + self.elements = [] + self.length = 0 + self.closed = false + } + + mutating func moveToStartPoint(_ vertex: CurveVertex) { + self.elements = [PathElement(vertex: vertex)] + self.length = 0 + } + + mutating func addVertex(_ vertex: CurveVertex) { + guard let previous = elements.last else { + addElement(PathElement(vertex: vertex)) + return + } + addElement(previous.pathElementTo(vertex)) + } + + mutating func addCurve(toPoint: CGPoint, outTangent: CGPoint, inTangent: CGPoint) { + guard let previous = elements.last else { return } + let newVertex = CurveVertex(inTangent, toPoint, toPoint) + updateVertex(CurveVertex(previous.vertex.inTangent, previous.vertex.point, outTangent), atIndex: elements.endIndex - 1, remeasure: false) + addVertex(newVertex) + } + + mutating func addLine(toPoint: CGPoint) { + guard let previous = elements.last else { return } + let newVertex = CurveVertex(point: toPoint, inTangentRelative: .zero, outTangentRelative: .zero) + updateVertex(CurveVertex(previous.vertex.inTangent, previous.vertex.point, previous.vertex.point), atIndex: elements.endIndex - 1, remeasure: false) + addVertex(newVertex) + } + + mutating func close() { + self.closed = true + } + + mutating func addElement(_ pathElement: PathElement) { + elements.append(pathElement) + length = length + pathElement.length + } + + mutating func updateVertex(_ vertex: CurveVertex, atIndex: Int, remeasure: Bool) { + if remeasure { + var newElement: PathElement + if atIndex > 0 { + let previousElement = elements[atIndex-1] + newElement = previousElement.pathElementTo(vertex) + } else { + newElement = PathElement(vertex: vertex) + } + elements[atIndex] = newElement + + if atIndex + 1 < elements.count{ + let nextElement = elements[atIndex + 1] + elements[atIndex + 1] = newElement.pathElementTo(nextElement.vertex) + } + + } else { + let oldElement = elements[atIndex] + elements[atIndex] = oldElement.updateVertex(newVertex: vertex) + } + } + + /** + Trims a path fromLength toLength with an offset. + + Length and offset are defined in the length coordinate space. + If any argument is outside the range of this path, then it will be looped over the path from finish to start. + + Cutting the curve when fromLength is less than toLength + x x x x + ~~~~~~~~~~~~~~~ooooooooooooooooooooooooooooooooooooooooooooooooo------------------- + |Offset |fromLength toLength| | + + Cutting the curve when from Length is greater than toLength + x x x x x + oooooooooooooooooo--------------------~~~~~~~~~~~~~~~~ooooooooooooooooooooooooooooo + | toLength| |Offset |fromLength | + + */ + func trim(fromLength: CGFloat, toLength: CGFloat, offsetLength: CGFloat) -> [BezierPath] { + guard elements.count > 1 else { + return [] + } + + if fromLength == toLength { + return [] + } + + /// Normalize lengths to the curve length. + var start = (fromLength+offsetLength).truncatingRemainder(dividingBy: length) + var end = (toLength+offsetLength).truncatingRemainder(dividingBy: length) + + if start < 0 { + start = length + start + } + + if end < 0 { + end = length + end + } + + if start == length { + start = 0 + } + if end == 0 { + end = length + } + + if start == 0 && end == length || + start == end || + start == length && end == 0 { + /// The trim encompasses the entire path. Return. + return [self] + } + + if start > end { + // Start is greater than end. Two paths are returned. + return trimPathAtLengths(positions: [(start: 0, end: end), (start: start, end: length)]) + } + + return trimPathAtLengths(positions: [(start: start, end: end)]) + } + + // MARK: File Private + + /// Trims a path by a list of positions and returns the sub paths + fileprivate func trimPathAtLengths(positions: [(start: CGFloat, end: CGFloat)]) -> [BezierPath] { + guard positions.count > 0 else { + return [] + } + var remainingPositions = positions + + var trim = remainingPositions.remove(at: 0) + + var paths = [BezierPath]() + + var runningLength: CGFloat = 0 + var finishedTrimming: Bool = false + var pathElements = elements + + var currentPath = BezierPath() + var i: Int = 0 + + while !finishedTrimming { + if pathElements.count <= i { + /// Do this for rounding errors + paths.append(currentPath) + finishedTrimming = true + continue + } + /// Loop through and add elements within start->end range. + /// Get current element + let element = pathElements[i] + + /// Calculate new running length. + let newLength = runningLength + element.length + + if newLength < trim.start { + /// Element is not included in the trim, continue. + runningLength = newLength + i = i + 1 + /// Increment index, we are done with this element. + continue + } + + if newLength == trim.start { + /// Current element IS the start element. + /// For start we want to add a zero length element. + currentPath.moveToStartPoint(element.vertex) + runningLength = newLength + i = i + 1 + /// Increment index, we are done with this element. + continue + } + + if runningLength < trim.start, trim.start < newLength, currentPath.elements.count == 0 { + /// The start of the trim is between this element and the previous, trim. + /// Get previous element. + let previousElement = pathElements[i-1] + /// Trim it + let trimLength = trim.start - runningLength + let trimResults = element.splitElementAtPosition(fromElement: previousElement, atLength: trimLength) + /// Add the right span start. + currentPath.moveToStartPoint(trimResults.rightSpan.start.vertex) + + pathElements[i] = trimResults.rightSpan.end + pathElements[i-1] = trimResults.rightSpan.start + runningLength = runningLength + trimResults.leftSpan.end.length + /// Dont increment index or the current length, the end of this path can be within this span. + continue + } + + if trim.start < newLength, newLength < trim.end { + /// Element lies within the trim span. + currentPath.addElement(element) + runningLength = newLength + i = i + 1 + continue + } + + if newLength == trim.end { + /// Element is the end element. + /// The element could have a new length if it's added right after the start node. + currentPath.addElement(element) + /// We are done with this span. + runningLength = newLength + i = i + 1 + /// Allow the path to be finalized. + /// Fall through to finalize path and move to next position + } + + if runningLength < trim.end, trim.end < newLength { + /// New element must be cut for end. + /// Get previous element. + let previousElement = pathElements[i-1] + /// Trim it + let trimLength = trim.end - runningLength + let trimResults = element.splitElementAtPosition(fromElement: previousElement, atLength: trimLength) + /// Add the left span end. + + currentPath.updateVertex(trimResults.leftSpan.start.vertex, atIndex: currentPath.elements.count - 1, remeasure: false) + currentPath.addElement(trimResults.leftSpan.end) + + pathElements[i] = trimResults.rightSpan.end + pathElements[i-1] = trimResults.rightSpan.start + runningLength = runningLength + trimResults.leftSpan.end.length + /// Dont increment index or the current length, the start of the next path can be within this span. + /// We are done with this span. + /// Allow the path to be finalized. + /// Fall through to finalize path and move to next position + } + + paths.append(currentPath) + currentPath = BezierPath() + if remainingPositions.count > 0 { + trim = remainingPositions.remove(at: 0) + } else { + finishedTrimming = true + } + } + return paths + } + +} + +extension BezierPath: Codable { + + /** + The BezierPath container is encoded and decoded from the JSON format + that defines points for a lottie animation. + + { + "c" = Bool + "i" = [[Double]], + "o" = [[Double]], + "v" = [[Double]] + } + + */ + + enum CodingKeys : String, CodingKey { + case closed = "c" + case inPoints = "i" + case outPoints = "o" + case vertices = "v" + } + + init(from decoder: Decoder) throws { + let container: KeyedDecodingContainer + + if let keyedContainer = try? decoder.container(keyedBy: BezierPath.CodingKeys.self) { + container = keyedContainer + } else { + var unkeyedContainer = try decoder.unkeyedContainer() + container = try unkeyedContainer.nestedContainer(keyedBy: BezierPath.CodingKeys.self) + } + + self.closed = try container.decodeIfPresent(Bool.self, forKey: .closed) ?? true + + var vertexContainer = try container.nestedUnkeyedContainer(forKey: .vertices) + var inPointsContainer = try container.nestedUnkeyedContainer(forKey: .inPoints) + var outPointsContainer = try container.nestedUnkeyedContainer(forKey: .outPoints) + + guard vertexContainer.count == inPointsContainer.count, inPointsContainer.count == outPointsContainer.count else { + /// Will throw an error if vertex, inpoints, and outpoints are not the same length. + /// This error is to be expected. + throw DecodingError.dataCorruptedError(forKey: CodingKeys.vertices, + in: container, + debugDescription: "Vertex data does not match In Tangents and Out Tangents") + } + + guard let count = vertexContainer.count, count > 0 else { + self.length = 0 + self.elements = [] + return + } + + var decodedElements = [PathElement]() + + /// Create first point + let firstVertex = CurveVertex(point: try vertexContainer.decode(CGPoint.self), + inTangentRelative: try inPointsContainer.decode(CGPoint.self), + outTangentRelative: try outPointsContainer.decode(CGPoint.self)) + var previousElement = PathElement(vertex: firstVertex) + decodedElements.append(previousElement) + + var totalLength: CGFloat = 0 + while !vertexContainer.isAtEnd { + /// Get the next vertex data. + let vertex = CurveVertex(point: try vertexContainer.decode(CGPoint.self), + inTangentRelative: try inPointsContainer.decode(CGPoint.self), + outTangentRelative: try outPointsContainer.decode(CGPoint.self)) + let pathElement = previousElement.pathElementTo(vertex) + decodedElements.append(pathElement) + previousElement = pathElement + totalLength = totalLength + pathElement.length + } + if closed { + let closeElement = previousElement.pathElementTo(firstVertex) + decodedElements.append(closeElement) + totalLength = totalLength + closeElement.length + } + self.length = totalLength + self.elements = decodedElements + } + + func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: BezierPath.CodingKeys.self) + try container.encode(closed, forKey: .closed) + + var vertexContainer = container.nestedUnkeyedContainer(forKey: .vertices) + var inPointsContainer = container.nestedUnkeyedContainer(forKey: .inPoints) + var outPointsContainer = container.nestedUnkeyedContainer(forKey: .outPoints) + + /// If closed path, ignore the final element. + let finalIndex = closed ? self.elements.endIndex - 1 : self.elements.endIndex + for i in 0.. CGPath { + let cgPath = CGMutablePath() + + var previousElement: PathElement? + for element in elements { + if let previous = previousElement { + if previous.vertex.outTangentRelative.isZero && element.vertex.inTangentRelative.isZero { + cgPath.addLine(to: element.vertex.point) + } else { + cgPath.addCurve(to: element.vertex.point, control1: previous.vertex.outTangent, control2: element.vertex.inTangent) + } + } else { + cgPath.move(to: element.vertex.point) + } + previousElement = element + } + if self.closed { + cgPath.closeSubpath() + } + return cgPath + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Primitives/ColorExtension.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Primitives/ColorExtension.swift new file mode 100644 index 00000000..309031a2 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Primitives/ColorExtension.swift @@ -0,0 +1,76 @@ +// +// Color.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/14/19. +// + +import Foundation +import CoreGraphics + +extension Color: Codable { + + public init(from decoder: Decoder) throws { + var container = try decoder.unkeyedContainer() + + var r1: Double + if !container.isAtEnd { + r1 = try container.decode(Double.self) + } else { + r1 = 0 + } + + var g1: Double + if !container.isAtEnd { + g1 = try container.decode(Double.self) + } else { + g1 = 0 + } + + var b1: Double + if !container.isAtEnd { + b1 = try container.decode(Double.self) + } else { + b1 = 0 + } + + var a1: Double + if !container.isAtEnd { + a1 = try container.decode(Double.self) + } else { + a1 = 1 + } + if r1 > 1, g1 > 1, b1 > 1, a1 > 1 { + r1 = r1 / 255 + g1 = g1 / 255 + b1 = b1 / 255 + a1 = a1 / 255 + } + self.r = r1 + self.g = g1 + self.b = b1 + self.a = a1 + } + + public func encode(to encoder: Encoder) throws { + var container = encoder.unkeyedContainer() + try container.encode(r) + try container.encode(g) + try container.encode(b) + try container.encode(a) + } + +} + +extension Color { + + static var clearColor: CGColor { + return CGColor(colorSpace: CGColorSpaceCreateDeviceRGB(), components: [0, 0, 0, 0])! + } + + var cgColorValue: CGColor { + // TODO: Fix color spaces + let colorspace = CGColorSpaceCreateDeviceRGB() + return CGColor(colorSpace: colorspace, components: [CGFloat(r), CGFloat(g), CGFloat(b), CGFloat(a)]) ?? Color.clearColor + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Primitives/CompoundBezierPath.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Primitives/CompoundBezierPath.swift new file mode 100644 index 00000000..068a13dd --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Primitives/CompoundBezierPath.swift @@ -0,0 +1,158 @@ +// +// CompoundBezierPath.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/14/19. +// + +import Foundation +import CoreGraphics + +/** + A collection of BezierPath objects that can be trimmed and added. + + */ +struct CompoundBezierPath { + + let paths: [BezierPath] + + let length: CGFloat + + init() { + paths = [] + length = 0 + } + + init(path: BezierPath) { + self.paths = [path] + self.length = path.length + } + + init(paths: [BezierPath], length: CGFloat) { + self.paths = paths + self.length = length + } + + init(paths: [BezierPath]) { + self.paths = paths + var l: CGFloat = 0 + for path in paths { + l = l + path.length + } + self.length = l + } + + func addPath(path: BezierPath) -> CompoundBezierPath { + var newPaths = paths + newPaths.append(path) + return CompoundBezierPath(paths: newPaths, length: length + path.length) + } + + func combine(_ compoundBezier: CompoundBezierPath) -> CompoundBezierPath { + var newPaths = paths + newPaths.append(contentsOf: compoundBezier.paths) + return CompoundBezierPath(paths: newPaths, length: length + compoundBezier.length) + } + + func trim(fromPosition: CGFloat, toPosition: CGFloat, offset: CGFloat, trimSimultaneously: Bool) -> CompoundBezierPath { + if fromPosition == toPosition { + return CompoundBezierPath() + } + + if trimSimultaneously { + /// Trim each path individually. + var newPaths = [BezierPath]() + for path in paths { + newPaths.append(contentsOf: path.trim(fromLength: fromPosition * path.length, + toLength: toPosition * path.length, + offsetLength: offset * path.length)) + } + return CompoundBezierPath(paths: newPaths) + } + + /// Normalize lengths to the curve length. + var startPosition = (fromPosition+offset).truncatingRemainder(dividingBy: 1) + var endPosition = (toPosition+offset).truncatingRemainder(dividingBy: 1) + + if startPosition < 0 { + startPosition = 1 + startPosition + } + + if endPosition < 0 { + endPosition = 1 + endPosition + } + + if startPosition == 1 { + startPosition = 0 + } + if endPosition == 0 { + endPosition = 1 + } + + if startPosition == 0 && endPosition == 1 || + startPosition == endPosition || + startPosition == 1 && endPosition == 0 { + /// The trim encompasses the entire path. Return. + return self + } + + var positions: [(start: CGFloat, end: CGFloat)] + if endPosition < startPosition { + positions = [(start: 0, end: endPosition * length), + (start: startPosition * length, end: length)] + } else { + positions = [(start: startPosition * length, end: endPosition * length)] + } + + var compoundPath = CompoundBezierPath() + var trim = positions.remove(at: 0) + var pathStartPosition: CGFloat = 0 + + var finishedTrimming: Bool = false + var i: Int = 0 + + while !finishedTrimming { + if paths.count <= i { + /// Rounding errors + finishedTrimming = true + continue + } + let path = paths[i] + + let pathEndPosition = pathStartPosition + path.length + + if pathEndPosition < trim.start { + /// Path is not included in the trim, continue. + pathStartPosition = pathEndPosition + i = i + 1 + continue + + } else if trim.start <= pathStartPosition, pathEndPosition <= trim.end { + /// Full Path is inside of trim. Add full path. + compoundPath = compoundPath.addPath(path: path) + } else { + if let trimPath = path.trim(fromLength: trim.start > pathStartPosition ? (trim.start - pathStartPosition) : 0, + toLength: trim.end < pathEndPosition ? (trim.end - pathStartPosition) : path.length, + offsetLength: 0).first { + compoundPath = compoundPath.addPath(path: trimPath) + } + } + + + if trim.end <= pathEndPosition { + /// We are done with the current trim. + /// Advance trim but remain on the same path in case the next trim overlaps it. + if positions.count > 0 { + trim = positions.remove(at: 0) + } else { + finishedTrimming = true + } + } else { + pathStartPosition = pathEndPosition + i = i + 1 + } + } + return compoundPath + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Primitives/CurveVertex.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Primitives/CurveVertex.swift new file mode 100644 index 00000000..d4b5eb18 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Primitives/CurveVertex.swift @@ -0,0 +1,177 @@ +// +// CurveVertex.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/11/19. +// + +import Foundation +import CoreGraphics + +/// A single vertex with an in and out tangent +struct CurveVertex { + + let point: CGPoint + + let inTangent: CGPoint + let outTangent: CGPoint + + /// Initializes a curve point with absolute values + init(_ inTangent: CGPoint, _ point: CGPoint, _ outTangent: CGPoint) { + self.point = point + self.inTangent = inTangent + self.outTangent = outTangent + } + + /// Initializes a curve point with relative values + init(point: CGPoint, inTangentRelative: CGPoint, outTangentRelative: CGPoint) { + self.point = point + self.inTangent = point.add(inTangentRelative) + self.outTangent = point.add(outTangentRelative) + } + + /// Initializes a curve point with absolute values + init(point: CGPoint, inTangent: CGPoint, outTangent: CGPoint) { + self.point = point + self.inTangent = inTangent + self.outTangent = outTangent + } + + var inTangentRelative: CGPoint { + return inTangent.subtract(point) + } + + var outTangentRelative: CGPoint { + return outTangent.subtract(point) + } + + func reversed() -> CurveVertex { + return CurveVertex(point: point, inTangent: outTangent, outTangent: inTangent) + } + + func translated(_ translation: CGPoint) -> CurveVertex { + return CurveVertex(point: point + translation, inTangent: inTangent + translation, outTangent: outTangent + translation) + } + + /** + Trims a path defined by two Vertices at a specific position, from 0 to 1 + + The path can be visualized below. + + F is fromVertex. + V is the vertex of the receiver. + P is the position from 0-1. + O is the outTangent of fromVertex. + F====O=========P=======I====V + + After trimming the curve can be visualized below. + + S is the returned Start vertex. + E is the returned End vertex. + T is the trim point. + TI and TO are the new tangents for the trimPoint + NO and NI are the new tangents for the startPoint and endPoints + S==NO=========TI==T==TO=======NI==E + */ + func splitCurve(toVertex: CurveVertex, position: CGFloat) -> + (start: CurveVertex, trimPoint: CurveVertex, end: CurveVertex) { + + /// If position is less than or equal to 0, trim at start. + if position <= 0 { + return (start: CurveVertex(point: point, inTangentRelative: inTangentRelative, outTangentRelative: .zero), + trimPoint: CurveVertex(point: point, inTangentRelative: .zero, outTangentRelative: outTangentRelative), + end: toVertex) + } + + /// If position is greater than or equal to 1, trim at end. + if position >= 1 { + return (start: self, + trimPoint: CurveVertex(point: toVertex.point, inTangentRelative: toVertex.inTangentRelative, outTangentRelative: .zero), + end: CurveVertex(point: toVertex.point, inTangentRelative: .zero, outTangentRelative: toVertex.outTangentRelative)) + } + + if outTangentRelative.isZero && toVertex.inTangentRelative.isZero { + /// If both tangents are zero, then span to be trimmed is a straight line. + let trimPoint = point.interpolate(toVertex.point, amount: position) + return (start: self, + trimPoint: CurveVertex(point: trimPoint, inTangentRelative: .zero, outTangentRelative: .zero), + end: toVertex) + } + /// Cutting by amount gives incorrect length.... + /// One option is to cut by a stride until it gets close then edge it down. + /// Measuring a percentage of the spans does not equal the same as measuring a percentage of length. + /// This is where the historical trim path bugs come from. + let a = point.interpolate(outTangent, amount: position) + let b = outTangent.interpolate(toVertex.inTangent, amount: position) + let c = toVertex.inTangent.interpolate(toVertex.point, amount: position) + let d = a.interpolate(b, amount: position) + let e = b.interpolate(c, amount: position) + let f = d.interpolate(e, amount: position) + return (start: CurveVertex(point: point, inTangent: inTangent, outTangent: a), + trimPoint: CurveVertex(point: f, inTangent: d, outTangent: e), + end: CurveVertex(point: toVertex.point, inTangent: c, outTangent: toVertex.outTangent)) + } + + /** + Trims a curve of a known length to a specific length and returns the points. + + There is not a performant yet accurate way to cut a curve to a specific length. + This calls splitCurve(toVertex: position:) to split the curve and then measures + the length of the new curve. The function then iterates through the samples, + adjusting the position of the cut for a more precise cut. + Usually a single iteration is enough to get within 0.5 points of the desired + length. + + This function should probably live in PathElement, since it deals with curve + lengths. + */ + func trimCurve(toVertex: CurveVertex, atLength: CGFloat, curveLength: CGFloat, maxSamples: Int, accuracy: CGFloat = 1) -> + (start: CurveVertex, trimPoint: CurveVertex, end: CurveVertex) { + var currentPosition = atLength / curveLength + var results = splitCurve(toVertex: toVertex, position: currentPosition) + + if maxSamples == 0 { + return results + } + + for _ in 1...maxSamples { + let length = results.start.distanceTo(results.trimPoint) + let lengthDiff = atLength - length + /// Check if length is correct. + if lengthDiff < accuracy { + return results + } + let diffPosition = max(min(((currentPosition / length) * lengthDiff), currentPosition * 0.5), currentPosition * -0.5) + currentPosition = diffPosition + currentPosition + results = splitCurve(toVertex: toVertex, position: currentPosition) + } + return results + } + + + /** + The distance from the receiver to the provided vertex. + + For lines (zeroed tangents) the distance between the two points is measured. + For curves the curve is iterated over by sample count and the points are measured. + This is ~99% accurate at a sample count of 30 + */ + func distanceTo(_ toVertex: CurveVertex, sampleCount: Int = 25) -> CGFloat { + + if outTangentRelative.isZero && toVertex.inTangentRelative.isZero { + /// Return a linear distance. + return point.distanceTo(toVertex.point) + } + + var distance: CGFloat = 0 + + var previousPoint = point + for i in 0.. PathElement { + return PathElement(length: vertex.distanceTo(toVertex), vertex: toVertex) + } + + /// Initializes a new path with length of 0 + init(vertex: CurveVertex) { + self.length = 0 + self.vertex = vertex + } + + /// Initializes a new path with length + fileprivate init(length: CGFloat, vertex: CurveVertex) { + self.length = length + self.vertex = vertex + } + + func updateVertex(newVertex: CurveVertex) -> PathElement { + return PathElement(length: length, vertex: newVertex) + } + + /// Splits an element span defined by the receiver and fromElement to a position 0-1 + func splitElementAtPosition(fromElement: PathElement, atLength: CGFloat) -> + (leftSpan: (start: PathElement, end: PathElement), rightSpan: (start: PathElement, end: PathElement)) { + /// Trim the span. Start and trim go into the first, trim and end go into second. + let trimResults = fromElement.vertex.trimCurve(toVertex: vertex, atLength: atLength, curveLength: length, maxSamples: 3) + + /// Create the elements for the break + let spanAStart = PathElement(length: fromElement.length, + vertex: CurveVertex(point: fromElement.vertex.point, + inTangent: fromElement.vertex.inTangent, + outTangent: trimResults.start.outTangent)) + /// Recalculating the length here is a waste as the trimCurve function also accurately calculates this length. + let spanAEnd = spanAStart.pathElementTo(trimResults.trimPoint) + + let spanBStart = PathElement(vertex: trimResults.trimPoint) + let spanBEnd = spanBStart.pathElementTo(trimResults.end) + return (leftSpan: (start: spanAStart, end: spanAEnd), + rightSpan: (start: spanBStart, end: spanBEnd)) + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Primitives/VectorsExtensions.swift b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Primitives/VectorsExtensions.swift new file mode 100644 index 00000000..b8c0a39f --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Private/Utility/Primitives/VectorsExtensions.swift @@ -0,0 +1,218 @@ +// +// Vector.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/7/19. +// + +import Foundation +import CoreGraphics +import QuartzCore + +/** + Single value container. Needed because lottie sometimes wraps a Double in an array. + */ +extension Vector1D: Codable { + + public init(from decoder: Decoder) throws { + /// Try to decode an array of doubles + do { + var container = try decoder.unkeyedContainer() + self.value = try container.decode(Double.self) + } catch { + self.value = try decoder.singleValueContainer().decode(Double.self) + } + } + + public func encode(to encoder: Encoder) throws { + var container = encoder.singleValueContainer() + try container.encode(value) + } + + var cgFloatValue: CGFloat { + return CGFloat(value) + } + +} + +extension Double { + var vectorValue: Vector1D { + return Vector1D(self) + } +} + +/** + Needed for decoding json {x: y:} to a CGPoint + */ +struct Vector2D: Codable { + + var x: Double + var y: Double + + init(x: Double, y: Double) { + self.x = x + self.y = y + } + + private enum CodingKeys : String, CodingKey { + case x = "x" + case y = "y" + } + + init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: Vector2D.CodingKeys.self) + + do { + let xValue: [Double] = try container.decode([Double].self, forKey: .x) + self.x = xValue[0] + } catch { + self.x = try container.decode(Double.self, forKey: .x) + } + + do { + let yValue: [Double] = try container.decode([Double].self, forKey: .y) + self.y = yValue[0] + } catch { + self.y = try container.decode(Double.self, forKey: .y) + } + } + + func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: Vector2D.CodingKeys.self) + try container.encode(x, forKey: .x) + try container.encode(y, forKey: .y) + } + + var pointValue: CGPoint { + return CGPoint(x: x, y: y) + } +} + +extension Vector2D { + +} + +extension CGPoint { + var vector2dValue: Vector2D { + return Vector2D(x: Double(x), y: Double(y)) + } +} + +/** + A three dimensional vector. + These vectors are encoded and decoded from [Double] + */ + +extension Vector3D: Codable { + + init(x: CGFloat, y: CGFloat, z: CGFloat) { + self.x = Double(x) + self.y = Double(y) + self.z = Double(z) + } + + public init(from decoder: Decoder) throws { + var container = try decoder.unkeyedContainer() + + if !container.isAtEnd { + self.x = try container.decode(Double.self) + } else { + self.x = 0 + } + + if !container.isAtEnd { + self.y = try container.decode(Double.self) + } else { + self.y = 0 + } + + if !container.isAtEnd { + self.z = try container.decode(Double.self) + } else { + self.z = 0 + } + } + + public func encode(to encoder: Encoder) throws { + var container = encoder.unkeyedContainer() + try container.encode(x) + try container.encode(y) + try container.encode(z) + } + +} + +public extension Vector3D { + var pointValue: CGPoint { + return CGPoint(x: x, y: y) + } + + var sizeValue: CGSize { + return CGSize(width: x, height: y) + } +} + +extension CGPoint { + var vector3dValue: Vector3D { + return Vector3D(x: x, y: y, z: 0) + } +} + +extension CGSize { + var vector3dValue: Vector3D { + return Vector3D(x: width, y: height, z: 1) + } +} + +extension CATransform3D { + + func rotated(_ degrees: CGFloat) -> CATransform3D { + return CATransform3DRotate(self, degrees.toRadians(), 0, 0, 1) + } + + func translated(_ translation: CGPoint) -> CATransform3D { + return CATransform3DTranslate(self, translation.x, translation.y, 0) + } + + func scaled(_ scale: CGSize) -> CATransform3D { + return CATransform3DScale(self, scale.width, scale.height, 1) + } + + func skewed(skew: CGFloat, skewAxis: CGFloat) -> CATransform3D { + return CATransform3DConcat(CATransform3D.makeSkew(skew: skew, skewAxis: skewAxis), self) + } + + static func makeSkew(skew: CGFloat, skewAxis: CGFloat) -> CATransform3D { + let mCos = cos(skewAxis.toRadians()) + let mSin = sin(skewAxis.toRadians()) + let aTan = tan(skew.toRadians()) + + let transform1 = CATransform3D(m11: mCos, m12: mSin, m13: 0, m14: 0, + m21: -mSin, m22: mCos, m23: 0, m24: 0, + m31: 0, m32: 0, m33: 1, m34: 0, + m41: 0, m42: 0, m43: 0, m44: 1) + + let transform2 = CATransform3D(m11: 1, m12: 0, m13: 0, m14: 0, + m21: aTan, m22: 1, m23: 0, m24: 0, + m31: 0, m32: 0, m33: 1, m34: 0, + m41: 0, m42: 0, m43: 0, m44: 1) + + let transform3 = CATransform3D(m11: mCos, m12: -mSin, m13: 0, m14: 0, + m21: mSin, m22: mCos, m23: 0, m24: 0, + m31: 0, m32: 0, m33: 1, m34: 0, + m41: 0, m42: 0, m43: 0, m44: 1) + return CATransform3DConcat(transform3, CATransform3DConcat(transform2, transform1)) + } + + static func makeTransform(anchor: CGPoint, + position: CGPoint, + scale: CGSize, + rotation: CGFloat, + skew: CGFloat?, + skewAxis: CGFloat?) -> CATransform3D { + if let skew = skew, let skewAxis = skewAxis { + return CATransform3DMakeTranslation(position.x, position.y, 0).rotated(rotation).skewed(skew: -skew, skewAxis: skewAxis).scaled(scale * 0.01).translated(anchor * -1) + } + return CATransform3DMakeTranslation(position.x, position.y, 0).rotated(rotation).scaled(scale * 0.01).translated(anchor * -1) + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/Animation/AnimationPublic.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/Animation/AnimationPublic.swift new file mode 100644 index 00000000..2f0a3c14 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/Animation/AnimationPublic.swift @@ -0,0 +1,196 @@ +// +// AnimationPublic.swift +// lottie-swift +// +// Created by Brandon Withrow on 2/5/19. +// + +import Foundation +import CoreGraphics + +public extension Animation { + + // MARK: Animation (Loading) + + /** + Loads an animation model from a bundle by its name. Returns `nil` if an animation is not found. + + - Parameter name: The name of the json file without the json extension. EG "StarAnimation" + - Parameter bundle: The bundle in which the animation is located. Defaults to `Bundle.main` + - Parameter subdirectory: A subdirectory in the bundle in which the animation is located. Optional. + - Parameter animationCache: A cache for holding loaded animations. Optional. + + - Returns: Deserialized `Animation`. Optional. + */ + static func named(_ name: String, + bundle: Bundle = Bundle.main, + subdirectory: String? = nil, + animationCache: AnimationCacheProvider? = nil) -> Animation? { + /// Create a cache key for the animation. + let cacheKey = bundle.bundlePath + (subdirectory ?? "") + "/" + name + + /// Check cache for animation + if let animationCache = animationCache, + let animation = animationCache.animation(forKey: cacheKey) { + /// If found, return the animation. + return animation + } + /// Make sure the bundle has a file at the path provided. + guard let url = bundle.url(forResource: name, withExtension: "json", subdirectory: subdirectory) else { + return nil + } + + do { + /// Decode animation. + let json = try Data(contentsOf: url) + let animation = try JSONDecoder().decode(Animation.self, from: json) + animationCache?.setAnimation(animation, forKey: cacheKey) + return animation + } catch { + /// Decoding error. + print(error) + return nil + } + } + + /** + Loads an animation from a specific filepath. + - Parameter filepath: The absolute filepath of the animation to load. EG "/User/Me/starAnimation.json" + - Parameter animationCache: A cache for holding loaded animations. Optional. + + - Returns: Deserialized `Animation`. Optional. + */ + static func filepath(_ filepath: String, + animationCache: AnimationCacheProvider? = nil) -> Animation? { + + /// Check cache for animation + if let animationCache = animationCache, + let animation = animationCache.animation(forKey: filepath) { + return animation + } + + do { + /// Decode the animation. + let json = try Data(contentsOf: URL(fileURLWithPath: filepath)) + let animation = try JSONDecoder().decode(Animation.self, from: json) + animationCache?.setAnimation(animation, forKey: filepath) + return animation + } catch { + /// Decoding Error. + return nil + } + } + + /// A closure for an Animation download. The closure is passed `nil` if there was an error. + typealias DownloadClosure = (Animation?) -> Void + + /** + Loads a Lottie animation asynchronously from the URL. + + - Parameter url: The url to load the animation from. + - Parameter closure: A closure to be called when the animation has loaded. + - Parameter animationCache: A cache for holding loaded animations. + + */ + static func loadedFrom(url: URL, + closure: @escaping Animation.DownloadClosure, + animationCache: AnimationCacheProvider?) { + + if let animationCache = animationCache, let animation = animationCache.animation(forKey: url.absoluteString) { + closure(animation) + } else { + let task = URLSession.shared.dataTask(with: url) { (data, response, error) in + guard error == nil, let jsonData = data else { + DispatchQueue.main.async { + closure(nil) + } + return + } + do { + let animation = try JSONDecoder().decode(Animation.self, from: jsonData) + DispatchQueue.main.async { + animationCache?.setAnimation(animation, forKey: url.absoluteString) + closure(animation) + } + } catch { + DispatchQueue.main.async { + closure(nil) + } + } + + } + task.resume() + } + } + + // MARK: Animation (Helpers) + + /** + Markers are a way to describe a point in time by a key name. + + Markers are encoded into animation JSON. By using markers a designer can mark + playback points for a developer to use without having to worry about keeping + track of animation frames. If the animation file is updated, the developer + does not need to update playback code. + + Returns the Progress Time for the marker named. Returns nil if no marker found. + */ + func progressTime(forMarker named: String) -> AnimationProgressTime? { + guard let markers = markerMap, let marker = markers[named] else { + return nil + } + return progressTime(forFrame: marker.frameTime) + } + + /** + Markers are a way to describe a point in time by a key name. + + Markers are encoded into animation JSON. By using markers a designer can mark + playback points for a developer to use without having to worry about keeping + track of animation frames. If the animation file is updated, the developer + does not need to update playback code. + + Returns the Frame Time for the marker named. Returns nil if no marker found. + */ + func frameTime(forMarker named: String) -> AnimationFrameTime? { + guard let markers = markerMap, let marker = markers[named] else { + return nil + } + return marker.frameTime + } + + /// Converts Frame Time (Seconds * Framerate) into Progress Time (0 to 1). + func progressTime(forFrame frameTime: AnimationFrameTime) -> AnimationProgressTime { + return ((frameTime - startFrame) / (endFrame - startFrame)).clamp(0, 1) + } + + /// Converts Progress Time (0 to 1) into Frame Time (Seconds * Framerate) + func frameTime(forProgress progressTime: AnimationProgressTime) -> AnimationFrameTime { + return ((endFrame - startFrame) * progressTime) + startFrame + } + + /// Converts Frame Time (Seconds * Framerate) into Time (Seconds) + func time(forFrame frameTime: AnimationFrameTime) -> TimeInterval { + return Double(frameTime - startFrame) / framerate + } + + /// Converts Time (Seconds) into Frame Time (Seconds * Framerate) + func frameTime(forTime time: TimeInterval) -> AnimationFrameTime { + return CGFloat(time * framerate) + startFrame + } + + /// The duration in seconds of the animation. + var duration: TimeInterval { + return Double(endFrame - startFrame) / framerate + } + + /// The natural bounds in points of the animation. + var bounds: CGRect { + return CGRect(x: 0, y: 0, width: width, height: height) + } + + /// The natural size in points of the animation. + var size: CGSize { + return CGSize(width: width, height: height) + } +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/Animation/AnimationView.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/Animation/AnimationView.swift new file mode 100644 index 00000000..88b2cf58 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/Animation/AnimationView.swift @@ -0,0 +1,1006 @@ +// +// LottieView.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/23/19. +// + +import Foundation +import QuartzCore + +/// Describes the behavior of an AnimationView when the app is moved to the background. +public enum LottieBackgroundBehavior { + /// Stop the animation and reset it to the beginning of its current play time. The completion block is called. + case stop + /// Pause the animation in its current state. The completion block is called. + case pause + /// Pause the animation and restart it when the application moves to the foreground. The completion block is stored and called when the animation completes. + case pauseAndRestore + /// Stops the animation and sets it to the end of its current play time. The completion block is called. + case forceFinish +} + +/// Defines animation loop behavior +public enum LottieLoopMode { + /// Animation is played once then stops. + case playOnce + /// Animation will loop from beginning to end until stopped. + case loop + /// Animation will play forward, then backwards and loop until stopped. + case autoReverse + /// Animation will loop from beginning to end up to defined amount of times. + case `repeat`(Float) + /// Animation will play forward, then backwards a defined amount of times. + case repeatBackwards(Float) +} + +extension LottieLoopMode: Equatable { + public static func == (lhs: LottieLoopMode, rhs: LottieLoopMode) -> Bool { + switch (lhs, rhs) { + case (.repeat(let lhsAmount), .repeat(let rhsAmount)), + (.repeatBackwards(let lhsAmount), .repeatBackwards(let rhsAmount)): + return lhsAmount == rhsAmount + case (.playOnce, .playOnce), + (.loop, .loop), + (.autoReverse, .autoReverse): + return true + default: + return false + } + } +} + +@IBDesignable +final public class AnimationView: LottieView { + + // MARK: - Public Properties + + /** + Sets the animation backing the animation view. Setting this will clear the + view's contents, completion blocks and current state. The new animation will + be loaded up and set to the beginning of its timeline. + */ + public var animation: Animation? { + didSet { + makeAnimationLayer() + } + } + + /// Set animation name from Interface Builder + @IBInspectable var animationName: String? { + didSet { + self.animation = animationName.flatMap { + Animation.named($0, animationCache: nil) + } + } + } + + /** + Describes the behavior of an AnimationView when the app is moved to the background. + + The default is `pause` which pauses the animation when the application moves to + the background. The completion block is called with `false` for completed. + */ + public var backgroundBehavior: LottieBackgroundBehavior = .pause + + /** + Sets the image provider for the animation view. An image provider provides the + animation with its required image data. + + Setting this will cause the animation to reload its image contents. + */ + public var imageProvider: AnimationImageProvider { + didSet { + reloadImages() + } + } + + /** + Sets the text provider for animation view. A text provider provides the + animation with values for text layers + */ + public var textProvider: AnimationTextProvider { + didSet { + animationLayer?.textProvider = textProvider + } + } + + /** + Sets the text provider for animation view. A text provider provides the + animation with values for text layers + */ + public var fontProvider: AnimationFontProvider { + didSet { + animationLayer?.fontProvider = fontProvider + } + } + + /// Returns `true` if the animation is currently playing. + public var isAnimationPlaying: Bool { + return animationLayer?.animation(forKey: activeAnimationName) != nil + } + + /// Returns `true` if the animation will start playing when this view is added to a window. + public var isAnimationQueued: Bool { + return animationContext != nil && waitingToPlayAnimation + } + + /// Sets the loop behavior for `play` calls. Defaults to `playOnce` + public var loopMode: LottieLoopMode = .playOnce { + didSet { + updateInFlightAnimation() + } + } + + /** + When `true` the animation view will rasterize its contents when not animating. + Rasterizing will improve performance of static animations. + + Note: this will not produce crisp results at resolutions above the animations natural resolution. + + Defaults to `false` + */ + public var shouldRasterizeWhenIdle: Bool = false { + didSet { + updateRasterizationState() + } + } + + /** + Sets the current animation time with a Progress Time + + Note: Setting this will stop the current animation, if any. + Note 2: If `animation` is nil, setting this will fallback to 0 + */ + public var currentProgress: AnimationProgressTime { + set { + if let animation = animation { + currentFrame = animation.frameTime(forProgress: newValue) + } else { + currentFrame = 0 + } + } + get { + if let animation = animation { + return animation.progressTime(forFrame: currentFrame) + } else { + return 0 + } + } + } + + /** + Sets the current animation time with a time in seconds. + + Note: Setting this will stop the current animation, if any. + Note 2: If `animation` is nil, setting this will fallback to 0 + */ + public var currentTime: TimeInterval { + set { + if let animation = animation { + currentFrame = animation.frameTime(forTime: newValue) + } else { + currentFrame = 0 + } + } + get { + if let animation = animation { + return animation.time(forFrame: currentFrame) + } else { + return 0 + } + } + } + + /** + Sets the current animation time with a frame in the animations framerate. + + Note: Setting this will stop the current animation, if any. + */ + public var currentFrame: AnimationFrameTime { + set { + removeCurrentAnimation() + updateAnimationFrame(newValue) + } + get { + return animationLayer?.currentFrame ?? 0 + } + } + + /// Returns the current animation frame while an animation is playing. + public var realtimeAnimationFrame: AnimationFrameTime { + return isAnimationPlaying ? animationLayer?.presentation()?.currentFrame ?? currentFrame : currentFrame + } + + /// Returns the current animation frame while an animation is playing. + public var realtimeAnimationProgress: AnimationProgressTime { + if let animation = animation { + return animation.progressTime(forFrame: realtimeAnimationFrame) + } + return 0 + } + + /// Sets the speed of the animation playback. Defaults to 1 + public var animationSpeed: CGFloat = 1 { + didSet { + updateInFlightAnimation() + } + } + + /** + When `true` the animation will play back at the framerate encoded in the + `Animation` model. When `false` the animation will play at the framerate + of the device. + + Defaults to false + */ + public var respectAnimationFrameRate: Bool = false { + didSet { + animationLayer?.respectAnimationFrameRate = respectAnimationFrameRate + } + } + + /** + Controls the cropping of an Animation. Setting this property will crop the animation + to the current views bounds by the viewport frame. The coordinate space is specified + in the animation's coordinate space. + + Animatable. + */ + public var viewportFrame: CGRect? = nil { + didSet { + + /* + This is really ugly, but is needed to trigger a layout pass within an animation block. + Typically this happens automatically, when layout objects are UIView based. + The animation layer is a CALayer which will not implicitly grab the animation + duration of a UIView animation block. + + By setting bounds and then resetting bounds the UIView animation block's + duration and curve are captured and added to the layer. This is used in the + layout block to animate the animationLayer's position and size. + */ + let rect = bounds + self.bounds = CGRect.zero + self.bounds = rect + self.setNeedsLayout() + } + } + + // MARK: - Public Functions + + /** + Plays the animation from its current state to the end. + + - Parameter completion: An optional completion closure to be called when the animation completes playing. + */ + public func play(completion: LottieCompletionBlock? = nil) { + guard let animation = animation else { + return + } + + /// Build a context for the animation. + let context = AnimationContext(playFrom: CGFloat(animation.startFrame), + playTo: CGFloat(animation.endFrame), + closure: completion) + removeCurrentAnimation() + addNewAnimationForContext(context) + } + + /** + Plays the animation from a progress (0-1) to a progress (0-1). + + - Parameter fromProgress: The start progress of the animation. If `nil` the animation will start at the current progress. + - Parameter toProgress: The end progress of the animation. + - Parameter loopMode: The loop behavior of the animation. If `nil` the view's `loopMode` property will be used. + - Parameter completion: An optional completion closure to be called when the animation stops. + */ + public func play(fromProgress: AnimationProgressTime? = nil, + toProgress: AnimationProgressTime, + loopMode: LottieLoopMode? = nil, + completion: LottieCompletionBlock? = nil) { + guard let animation = animation else { + return + } + + removeCurrentAnimation() + if let loopMode = loopMode { + /// Set the loop mode, if one was supplied + self.loopMode = loopMode + } + let context = AnimationContext(playFrom: animation.frameTime(forProgress: fromProgress ?? currentProgress), + playTo: animation.frameTime(forProgress: toProgress), + closure: completion) + addNewAnimationForContext(context) + } + + /** + Plays the animation from a start frame to an end frame in the animation's framerate. + + - Parameter fromFrame: The start frame of the animation. If `nil` the animation will start at the current frame. + - Parameter toFrame: The end frame of the animation. + - Parameter loopMode: The loop behavior of the animation. If `nil` the view's `loopMode` property will be used. + - Parameter completion: An optional completion closure to be called when the animation stops. + */ + public func play(fromFrame: AnimationFrameTime? = nil, + toFrame: AnimationFrameTime, + loopMode: LottieLoopMode? = nil, + completion: LottieCompletionBlock? = nil) { + removeCurrentAnimation() + if let loopMode = loopMode { + /// Set the loop mode, if one was supplied + self.loopMode = loopMode + } + + let context = AnimationContext(playFrom: fromFrame ?? currentProgress, + playTo: toFrame, + closure: completion) + addNewAnimationForContext(context) + } + + /** + Plays the animation from a named marker to another marker. + + Markers are point in time that are encoded into the Animation data and assigned + a name. + + NOTE: If markers are not found the play command will exit. + + - Parameter fromMarker: The start marker for the animation playback. If `nil` the + animation will start at the current progress. + - Parameter toMarker: The end marker for the animation playback. + - Parameter loopMode: The loop behavior of the animation. If `nil` the view's `loopMode` property will be used. + - Parameter completion: An optional completion closure to be called when the animation stops. + */ + public func play(fromMarker: String? = nil, + toMarker: String, + loopMode: LottieLoopMode? = nil, + completion: LottieCompletionBlock? = nil) { + + guard let animation = animation, let markers = animation.markerMap, let to = markers[toMarker] else { + return + } + + removeCurrentAnimation() + if let loopMode = loopMode { + /// Set the loop mode, if one was supplied + self.loopMode = loopMode + } + + let fromTime: CGFloat + if let fromName = fromMarker, let from = markers[fromName] { + fromTime = CGFloat(from.frameTime) + } else { + fromTime = currentFrame + } + + let context = AnimationContext(playFrom: fromTime, + playTo: CGFloat(to.frameTime), + closure: completion) + addNewAnimationForContext(context) + } + + /** + Stops the animation and resets the view to its start frame. + + The completion closure will be called with `false` + */ + public func stop() { + removeCurrentAnimation() + currentFrame = 0 + CATransaction.flush() + } + + /** + Pauses the animation in its current state. + + The completion closure will be called with `false` + */ + public func pause() { + removeCurrentAnimation() + } + + /// Reloads the images supplied to the animation from the `imageProvider` + public func reloadImages() { + animationLayer?.reloadImages() + } + + /// Forces the AnimationView to redraw its contents. + public func forceDisplayUpdate() { + animationLayer?.forceDisplayUpdate() + } + + // MARK: - Public (Dynamic Properties) + + /** + + Sets a ValueProvider for the specified keypath. The value provider will be set + on all properties that match the keypath. + + Nearly all properties of a Lottie animation can be changed at runtime using a + combination of `Animation Keypaths` and `Value Providers`. + Setting a ValueProvider on a keypath will cause the animation to update its + contents and read the new Value Provider. + + A value provider provides a typed value on a frame by frame basis. + + - Parameter valueProvider: The new value provider for the properties. + - Parameter keypath: The keypath used to search for properties. + + Example: + ``` + /// A keypath that finds the color value for all `Fill 1` nodes. + let fillKeypath = AnimationKeypath(keypath: "**.Fill 1.Color") + /// A Color Value provider that returns a reddish color. + let redValueProvider = ColorValueProvider(Color(r: 1, g: 0.2, b: 0.3, a: 1)) + /// Set the provider on the animationView. + animationView.setValueProvider(redValueProvider, keypath: fillKeypath) + ``` + */ + public func setValueProvider(_ valueProvider: AnyValueProvider, keypath: AnimationKeypath) { + animationLayer?.setValueProvider(valueProvider, keypath: keypath) + } + /** + Reads the value of a property specified by the Keypath. + Returns nil if no property is found. + + - Parameter for: The keypath used to search for the property. + - Parameter atFrame: The Frame Time of the value to query. If nil then the current frame is used. + */ + public func getValue(for keypath: AnimationKeypath, atFrame: AnimationFrameTime?) -> Any? { + return animationLayer?.getValue(for: keypath, atFrame: atFrame) + } + + /// Logs all child keypaths. + public func logHierarchyKeypaths() { + animationLayer?.logHierarchyKeypaths() + } + + // MARK: - Public (Add Subview) + + /** + Searches for the nearest child layer to the first Keypath and adds the subview + to that layer. The subview will move and animate with the child layer. + Furthermore the subview will be in the child layers coordinate space. + + Note: if no layer is found for the keypath, then nothing happens. + + - Parameter subview: The subview to add to the found animation layer. + - Parameter keypath: The keypath used to find the animation layer. + + Example: + ``` + /// A keypath that finds `Layer 1` + let layerKeypath = AnimationKeypath(keypath: "Layer 1") + + /// Wrap the custom view in an `AnimationSubview` + let subview = AnimationSubview() + subview.addSubview(customView) + + /// Set the provider on the animationView. + animationView.addSubview(subview, forLayerAt: layerKeypath) + ``` + */ + public func addSubview(_ subview: AnimationSubview, forLayerAt keypath: AnimationKeypath) { + guard let sublayer = animationLayer?.layer(for: keypath) else { + return + } + self.setNeedsLayout() + self.layoutIfNeeded() + self.forceDisplayUpdate() + addSubview(subview) + if let subViewLayer = subview.viewLayer { + sublayer.addSublayer(subViewLayer) + } + } + + /** + Converts a CGRect from the AnimationView's coordinate space into the + coordinate space of the layer found at Keypath. + + If no layer is found, nil is returned + + - Parameter rect: The CGRect to convert. + - Parameter toLayerAt: The keypath used to find the layer. + */ + public func convert(_ rect: CGRect, toLayerAt keypath: AnimationKeypath?) -> CGRect? { + guard let animationLayer = animationLayer else { return nil } + guard let keypath = keypath else { + return viewLayer?.convert(rect, to: animationLayer) + } + guard let sublayer = animationLayer.layer(for: keypath) else { + return nil + } + self.setNeedsLayout() + self.layoutIfNeeded() + self.forceDisplayUpdate() + return animationLayer.convert(rect, to: sublayer) + } + + /** + Converts a CGPoint from the AnimationView's coordinate space into the + coordinate space of the layer found at Keypath. + + If no layer is found, nil is returned + + - Parameter point: The CGPoint to convert. + - Parameter toLayerAt: The keypath used to find the layer. + */ + public func convert(_ point: CGPoint, toLayerAt keypath: AnimationKeypath?) -> CGPoint? { + guard let animationLayer = animationLayer else { return nil } + guard let keypath = keypath else { + return viewLayer?.convert(point, to: animationLayer) + } + guard let sublayer = animationLayer.layer(for: keypath) else { + return nil + } + self.setNeedsLayout() + self.layoutIfNeeded() + self.forceDisplayUpdate() + return animationLayer.convert(point, to: sublayer) + } + + // MARK: - Public (Animation Contents) + + /** + Sets the enabled state of all animator nodes found with the keypath search. + This can be used to interactively enable / disable parts of the animation. + + - Parameter isEnabled: When true the animator nodes affect the rendering tree. When false the node is removed from the tree. + - Parameter keypath: The keypath used to find the node(s). + */ + public func setNodeIsEnabled(isEnabled: Bool, keypath: AnimationKeypath) { + guard let animationLayer = animationLayer else { return } + let nodes = animationLayer.animatorNodes(for: keypath) + if let nodes = nodes { + for node in nodes { + node.isEnabled = isEnabled + } + self.forceDisplayUpdate() + } + } + + // MARK: - Public (Markers) + + /** + Markers are a way to describe a point in time by a key name. + + Markers are encoded into animation JSON. By using markers a designer can mark + playback points for a developer to use without having to worry about keeping + track of animation frames. If the animation file is updated, the developer + does not need to update playback code. + + Returns the Progress Time for the marker named. Returns nil if no marker found. + */ + public func progressTime(forMarker named: String) -> AnimationProgressTime? { + guard let animation = animation else { + return nil + } + return animation.progressTime(forMarker: named) + } + + /** + Markers are a way to describe a point in time by a key name. + + Markers are encoded into animation JSON. By using markers a designer can mark + playback points for a developer to use without having to worry about keeping + track of animation frames. If the animation file is updated, the developer + does not need to update playback code. + + Returns the Frame Time for the marker named. Returns nil if no marker found. + */ + public func frameTime(forMarker named: String) -> AnimationFrameTime? { + guard let animation = animation else { + return nil + } + return animation.frameTime(forMarker: named) + } + + // MARK: - Public (Initializers) + + /// Initializes a LottieView with an animation. + public init( + animation: Animation?, + imageProvider: AnimationImageProvider? = nil, + textProvider: AnimationTextProvider = DefaultTextProvider(), + fontProvider: AnimationFontProvider = DefaultFontProvider()) { + self.animation = animation + self.imageProvider = imageProvider ?? BundleImageProvider(bundle: Bundle.main, searchPath: nil) + self.textProvider = textProvider + self.fontProvider = fontProvider + super.init(frame: .zero) + commonInit() + makeAnimationLayer() + if let animation = animation { + frame = animation.bounds + } + } + + public init() { + self.animation = nil + self.imageProvider = BundleImageProvider(bundle: Bundle.main, searchPath: nil) + self.textProvider = DefaultTextProvider() + self.fontProvider = DefaultFontProvider() + super.init(frame: .zero) + commonInit() + } + + public override init(frame: CGRect) { + self.animation = nil + self.imageProvider = BundleImageProvider(bundle: Bundle.main, searchPath: nil) + self.textProvider = DefaultTextProvider() + self.fontProvider = DefaultFontProvider() + super.init(frame: .zero) + commonInit() + } + + required public init?(coder aDecoder: NSCoder) { + self.imageProvider = BundleImageProvider(bundle: Bundle.main, searchPath: nil) + self.textProvider = DefaultTextProvider() + self.fontProvider = DefaultFontProvider() + super.init(coder: aDecoder) + commonInit() + } + + // MARK: - Public (UIView Overrides) + + override public var intrinsicContentSize: CGSize { + if let animation = animation { + return animation.bounds.size + } + return .zero + } + + override func layoutAnimation() { + guard let animation = animation, let animationLayer = animationLayer else { return } + var position = animation.bounds.center + let xform: CATransform3D + var shouldForceUpdates: Bool = false + + if let viewportFrame = self.viewportFrame { + shouldForceUpdates = self.contentMode == .redraw + + let compAspect = viewportFrame.size.width / viewportFrame.size.height + let viewAspect = bounds.size.width / bounds.size.height + let dominantDimension = compAspect > viewAspect ? bounds.size.width : bounds.size.height + let compDimension = compAspect > viewAspect ? viewportFrame.size.width : viewportFrame.size.height + let scale = dominantDimension / compDimension + + let viewportOffset = animation.bounds.center - viewportFrame.center + xform = CATransform3DTranslate(CATransform3DMakeScale(scale, scale, 1), viewportOffset.x, viewportOffset.y, 0) + position = bounds.center + } else { + switch contentMode { + case .scaleToFill: + position = bounds.center + xform = CATransform3DMakeScale(bounds.size.width / animation.size.width, + bounds.size.height / animation.size.height, + 1); + case .scaleAspectFit: + position = bounds.center + let compAspect = animation.size.width / animation.size.height + let viewAspect = bounds.size.width / bounds.size.height + let dominantDimension = compAspect > viewAspect ? bounds.size.width : bounds.size.height + let compDimension = compAspect > viewAspect ? animation.size.width : animation.size.height + let scale = dominantDimension / compDimension + xform = CATransform3DMakeScale(scale, scale, 1) + case .scaleAspectFill: + position = bounds.center + let compAspect = animation.size.width / animation.size.height + let viewAspect = bounds.size.width / bounds.size.height + let scaleWidth = compAspect < viewAspect + let dominantDimension = scaleWidth ? bounds.size.width : bounds.size.height + let compDimension = scaleWidth ? animation.size.width : animation.size.height + let scale = dominantDimension / compDimension + xform = CATransform3DMakeScale(scale, scale, 1) + case .redraw: + shouldForceUpdates = true + xform = CATransform3DIdentity + case .center: + position = bounds.center + xform = CATransform3DIdentity + case .top: + position.x = bounds.center.x + xform = CATransform3DIdentity + case .bottom: + position.x = bounds.center.x + position.y = bounds.maxY - animation.bounds.midY + xform = CATransform3DIdentity + case .left: + position.y = bounds.center.y + xform = CATransform3DIdentity + case .right: + position.y = bounds.center.y + position.x = bounds.maxX - animation.bounds.midX + xform = CATransform3DIdentity + case .topLeft: + xform = CATransform3DIdentity + case .topRight: + position.x = bounds.maxX - animation.bounds.midX + xform = CATransform3DIdentity + case .bottomLeft: + position.y = bounds.maxY - animation.bounds.midY + xform = CATransform3DIdentity + case .bottomRight: + position.x = bounds.maxX - animation.bounds.midX + position.y = bounds.maxY - animation.bounds.midY + xform = CATransform3DIdentity + + #if os(iOS) || os(tvOS) + @unknown default: + print("unsupported contentMode: \(contentMode.rawValue); please update lottie-ios") + xform = CATransform3DIdentity + #endif + } + } + + /* + UIView Animation does not implicitly set CAAnimation time or timing fuctions. + If layout is changed in an animation we must get the current animation duration + and timing function and then manually create a CAAnimation to match the UIView animation. + If layout is changed without animation, explicitly set animation duration to 0.0 + inside CATransaction to avoid unwanted artifacts. + */ + /// Check if any animation exist on the view's layer, and match it. + if let key = viewLayer?.animationKeys()?.first, let animation = viewLayer?.animation(forKey: key) { + // The layout is happening within an animation block. Grab the animation data. + + let positionKey = "LayoutPositionAnimation" + let transformKey = "LayoutTransformAnimation" + animationLayer.removeAnimation(forKey: positionKey) + animationLayer.removeAnimation(forKey: transformKey) + + let positionAnimation = animation.copy() as? CABasicAnimation ?? CABasicAnimation(keyPath: "position") + positionAnimation.keyPath = "position" + positionAnimation.isAdditive = false + positionAnimation.fromValue = animationLayer.position + positionAnimation.toValue = position + positionAnimation.isRemovedOnCompletion = true + + let xformAnimation = animation.copy() as? CABasicAnimation ?? CABasicAnimation(keyPath: "transform") + xformAnimation.keyPath = "transform" + xformAnimation.isAdditive = false + xformAnimation.fromValue = animationLayer.transform + xformAnimation.toValue = xform + xformAnimation.isRemovedOnCompletion = true + + animationLayer.position = position + animationLayer.transform = xform + #if os(OSX) + animationLayer.anchorPoint = layer?.anchorPoint ?? CGPoint.zero + #else + animationLayer.anchorPoint = layer.anchorPoint + #endif + animationLayer.add(positionAnimation, forKey: positionKey) + animationLayer.add(xformAnimation, forKey: transformKey) + } else { + CATransaction.begin() + CATransaction.setAnimationDuration(0.0) + CATransaction.setAnimationTimingFunction(CAMediaTimingFunction(name: .linear)) + animationLayer.position = position + animationLayer.transform = xform + CATransaction.commit() + } + + if shouldForceUpdates { + animationLayer.forceDisplayUpdate() + } + } + + // MARK: - Private (Properties) + + + var animationLayer: AnimationContainer? = nil + + fileprivate var animationContext: AnimationContext? + static private let animationName: String = "Lottie" + fileprivate var activeAnimationName: String = AnimationView.animationName + fileprivate var animationID: Int = 0 + + // MARK: - Private (Building Animation View) + + fileprivate func makeAnimationLayer() { + + /// Remove current animation if any + removeCurrentAnimation() + + if let oldAnimation = self.animationLayer { + oldAnimation.removeFromSuperlayer() + } + + invalidateIntrinsicContentSize() + + guard let animation = animation else { + return + } + + let animationLayer = AnimationContainer(animation: animation, imageProvider: imageProvider, textProvider: textProvider, fontProvider: fontProvider) + animationLayer.renderScale = self.screenScale + viewLayer?.addSublayer(animationLayer) + self.animationLayer = animationLayer + reloadImages() + animationLayer.setNeedsDisplay() + setNeedsLayout() + currentFrame = CGFloat(animation.startFrame) + } + + func updateRasterizationState() { + if isAnimationPlaying { + animationLayer?.shouldRasterize = false + } else { + animationLayer?.shouldRasterize = shouldRasterizeWhenIdle + } + } + + // MARK: - Private (Animation Playback) + + /// Updates the animation frame. Does not affect any current animations + func updateAnimationFrame(_ newFrame: CGFloat) { + CATransaction.begin() + CATransaction.setCompletionBlock { + self.animationLayer?.forceDisplayUpdate() + } + CATransaction.setDisableActions(true) + animationLayer?.currentFrame = newFrame + CATransaction.commit() + } + + @objc override func animationWillMoveToBackground() { + updateAnimationForBackgroundState() + } + + @objc override func animationWillEnterForeground() { + updateAnimationForForegroundState() + } + + override func animationMovedToWindow() { + /// Don't update any state if the `superview` is `nil` + /// When A viewA owns superViewB, it removes the superViewB from the window. At this point, viewA still owns superViewB and triggers the viewA method: -didmovetowindow + guard superview != nil else { return } + + if window != nil { + updateAnimationForForegroundState() + } else { + updateAnimationForBackgroundState() + } + } + + fileprivate func updateAnimationForBackgroundState() { + if let currentContext = animationContext { + switch backgroundBehavior { + case .stop: + removeCurrentAnimation() + updateAnimationFrame(currentContext.playFrom) + case .pause: + removeCurrentAnimation() + case .pauseAndRestore: + currentContext.closure.ignoreDelegate = true + removeCurrentAnimation() + /// Keep the stale context around for when the app enters the foreground. + self.animationContext = currentContext + case .forceFinish: + removeCurrentAnimation() + updateAnimationFrame(currentContext.playTo) + } + } + } + + fileprivate var waitingToPlayAnimation: Bool = false + fileprivate func updateAnimationForForegroundState() { + if let currentContext = animationContext { + if waitingToPlayAnimation { + waitingToPlayAnimation = false + self.addNewAnimationForContext(currentContext) + } else if backgroundBehavior == .pauseAndRestore { + /// Restore animation from saved state + updateInFlightAnimation() + } + } + } + + /// Stops the current in flight animation and freezes the animation in its current state. + fileprivate func removeCurrentAnimation() { + guard animationContext != nil else { return } + let pauseFrame = realtimeAnimationFrame + animationLayer?.removeAnimation(forKey: activeAnimationName) + updateAnimationFrame(pauseFrame) + self.animationContext = nil + } + + /// Updates an in flight animation. + fileprivate func updateInFlightAnimation() { + guard let animationContext = animationContext else { return } + + guard animationContext.closure.animationState != .complete else { + // Tried to re-add an already completed animation. Cancel. + self.animationContext = nil + return + } + + /// Tell existing context to ignore its closure + animationContext.closure.ignoreDelegate = true + + /// Make a new context, stealing the completion block from the previous. + let newContext = AnimationContext(playFrom: animationContext.playFrom, + playTo: animationContext.playTo, + closure: animationContext.closure.completionBlock) + + /// Remove current animation, and freeze the current frame. + let pauseFrame = realtimeAnimationFrame + animationLayer?.removeAnimation(forKey: activeAnimationName) + animationLayer?.currentFrame = pauseFrame + + addNewAnimationForContext(newContext) + } + + /// Adds animation to animation layer and sets the delegate. If animation layer or animation are nil, exits. + fileprivate func addNewAnimationForContext(_ animationContext: AnimationContext) { + guard let animationlayer = animationLayer, let animation = animation else { + return + } + + self.animationContext = animationContext + + guard self.window != nil else { waitingToPlayAnimation = true; return } + + animationID = animationID + 1 + activeAnimationName = AnimationView.animationName + String(animationID) + + /// At this point there is no animation on animationLayer and its state is set. + + let framerate = animation.framerate + + let playFrom = animationContext.playFrom.clamp(animation.startFrame, animation.endFrame) + let playTo = animationContext.playTo.clamp(animation.startFrame, animation.endFrame) + + let duration = ((max(playFrom, playTo) - min(playFrom, playTo)) / CGFloat(framerate)) + + let playingForward: Bool = + ((animationSpeed > 0 && playFrom < playTo) || + (animationSpeed < 0 && playTo < playFrom)) + + var startFrame = currentFrame.clamp(min(playFrom, playTo), max(playFrom, playTo)) + if startFrame == playTo { + startFrame = playFrom + } + + let timeOffset: TimeInterval = playingForward ? + Double(startFrame - min(playFrom, playTo)) / framerate : + Double(max(playFrom, playTo) - startFrame) / framerate + + let layerAnimation = CABasicAnimation(keyPath: "currentFrame") + layerAnimation.fromValue = playFrom + layerAnimation.toValue = playTo + layerAnimation.speed = Float(animationSpeed) + layerAnimation.duration = TimeInterval(duration) + layerAnimation.fillMode = CAMediaTimingFillMode.both + + switch loopMode { + case .playOnce: + layerAnimation.repeatCount = 1 + case .loop: + layerAnimation.repeatCount = HUGE + case .autoReverse: + layerAnimation.repeatCount = HUGE + layerAnimation.autoreverses = true + case let .repeat(amount): + layerAnimation.repeatCount = amount + case let .repeatBackwards(amount): + layerAnimation.repeatCount = amount + layerAnimation.autoreverses = true + } + + layerAnimation.isRemovedOnCompletion = false + if timeOffset != 0 { + let currentLayerTime = viewLayer?.convertTime(CACurrentMediaTime(), from: nil) ?? 0 + layerAnimation.beginTime = currentLayerTime - (timeOffset * 1 / Double(abs(animationSpeed))) + } + layerAnimation.delegate = animationContext.closure + animationContext.closure.animationLayer = animationlayer + animationContext.closure.animationKey = activeAnimationName + + animationlayer.add(layerAnimation, forKey: activeAnimationName) + updateRasterizationState() + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/Animation/AnimationViewInitializers.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/Animation/AnimationViewInitializers.swift new file mode 100644 index 00000000..5277f3f2 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/Animation/AnimationViewInitializers.swift @@ -0,0 +1,83 @@ +// +// AnimationViewInitializers.swift +// lottie-swift-iOS +// +// Created by Brandon Withrow on 2/6/19. +// + +import Foundation + +public extension AnimationView { + + /** + Loads a Lottie animation from a JSON file in the supplied bundle. + + - Parameter name: The string name of the lottie animation with no file + extension provided. + - Parameter bundle: The bundle in which the animation is located. + Defaults to the Main bundle. + - Parameter imageProvider: An image provider for the animation's image data. + If none is supplied Lottie will search in the supplied bundle for images. + */ + convenience init(name: String, + bundle: Bundle = Bundle.main, + imageProvider: AnimationImageProvider? = nil, + animationCache: AnimationCacheProvider? = LRUAnimationCache.sharedCache) { + let animation = Animation.named(name, bundle: bundle, subdirectory: nil, animationCache: animationCache) + let provider = imageProvider ?? BundleImageProvider(bundle: bundle, searchPath: nil) + self.init(animation: animation, imageProvider: provider) + } + + /** + Loads a Lottie animation from a JSON file in a specific path on disk. + + - Parameter name: The absolute path of the Lottie Animation. + - Parameter imageProvider: An image provider for the animation's image data. + If none is supplied Lottie will search in the supplied filepath for images. + */ + convenience init(filePath: String, + imageProvider: AnimationImageProvider? = nil, + animationCache: AnimationCacheProvider? = LRUAnimationCache.sharedCache) { + let animation = Animation.filepath(filePath, animationCache: animationCache) + let provider = imageProvider ?? FilepathImageProvider(filepath: URL(fileURLWithPath: filePath).deletingLastPathComponent().path) + self.init(animation: animation, imageProvider: provider) + } + + /** + Loads a Lottie animation asynchronously from the URL + + - Parameter url: The url to load the animation from. + - Parameter imageProvider: An image provider for the animation's image data. + If none is supplied Lottie will search in the main bundle for images. + - Parameter closure: A closure to be called when the animation has loaded. + */ + convenience init(url: URL, + imageProvider: AnimationImageProvider? = nil, + closure: @escaping AnimationView.DownloadClosure, + animationCache: AnimationCacheProvider? = LRUAnimationCache.sharedCache) { + + if let animationCache = animationCache, let animation = animationCache.animation(forKey: url.absoluteString) { + self.init(animation: animation, imageProvider: imageProvider) + closure(nil) + } else { + + self.init(animation: nil, imageProvider: imageProvider) + + Animation.loadedFrom(url: url, closure: { (animation) in + if let animation = animation { + self.animation = animation + closure(nil) + } else { + closure(LottieDownloadError.downloadFailed) + } + }, animationCache: animationCache) + } + } + + typealias DownloadClosure = (Error?) -> Void + +} + +enum LottieDownloadError: Error { + case downloadFailed +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/AnimationCache/AnimationCacheProvider.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/AnimationCache/AnimationCacheProvider.swift new file mode 100644 index 00000000..23c4119d --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/AnimationCache/AnimationCacheProvider.swift @@ -0,0 +1,24 @@ +// +// AnimationCacheProvider.swift +// lottie-swift +// +// Created by Brandon Withrow on 2/5/19. +// + +import Foundation +/** + `AnimationCacheProvider` is a protocol that describes an Animation Cache. + Animation Cache is used when loading `Animation` models. Using an Animation Cache + can increase performance when loading an animation multiple times. + + Lottie comes with a prebuilt LRU Animation Cache. + */ +public protocol AnimationCacheProvider { + + func animation(forKey: String) -> Animation? + + func setAnimation(_ animation: Animation, forKey: String) + + func clearCache() + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/AnimationCache/LRUAnimationCache.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/AnimationCache/LRUAnimationCache.swift new file mode 100644 index 00000000..11f729f8 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/AnimationCache/LRUAnimationCache.swift @@ -0,0 +1,57 @@ +// +// LRUAnimationCache.swift +// lottie-swift +// +// Created by Brandon Withrow on 2/5/19. +// + +import Foundation + +/** + An Animation Cache that will store animations up to `cacheSize`. + + Once `cacheSize` is reached, the least recently used animation will be ejected. + The default size of the cache is 100. + */ +public class LRUAnimationCache: AnimationCacheProvider { + + public init() { } + + /// Clears the Cache. + public func clearCache() { + cacheMap.removeAll() + lruList.removeAll() + } + + /// The global shared Cache. + public static let sharedCache = LRUAnimationCache() + + /// The size of the cache. + public var cacheSize: Int = 100 + + public func animation(forKey: String) -> Animation? { + guard let animation = cacheMap[forKey] else { + return nil + } + if let index = lruList.firstIndex(of: forKey) { + lruList.remove(at: index) + lruList.append(forKey) + } + return animation + } + + public func setAnimation(_ animation: Animation, forKey: String) { + cacheMap[forKey] = animation + lruList.append(forKey) + if lruList.count > cacheSize { + let removed = lruList.remove(at: 0) + if removed != forKey { + cacheMap[removed] = nil + } + } + } + + fileprivate var cacheMap: [String : Animation] = [:] + fileprivate var lruList: [String] = [] + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/DynamicProperties/AnimationKeypath.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/DynamicProperties/AnimationKeypath.swift new file mode 100644 index 00000000..e9ece1b4 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/DynamicProperties/AnimationKeypath.swift @@ -0,0 +1,46 @@ +// +// AnimationKeypath.swift +// lottie-swift +// +// Created by Brandon Withrow on 2/4/19. +// + +import Foundation + +/** + `AnimationKeypath` is an object that describes a keypath search for nodes in the + animation JSON. `AnimationKeypath` matches views and properties inside of `AnimationView` + to their backing `Animation` model by name. + + A keypath can be used to set properties on an existing animation, or can be validated + with an existing `Animation`. + + `AnimationKeypath` can describe a specific object, or can use wildcards for fuzzy matching + of objects. Acceptable wildcards are either "*" (star) or "**" (double star). + Single star will search a single depth for the next object. + Double star will search any depth. + + Read More at https://airbnb.io/lottie/#/ios?id=dynamic-animation-properties + + EG: + @"Layer.Shape Group.Stroke 1.Color" + Represents a specific color node on a specific stroke. + + @"**.Stroke 1.Color" + Represents the color node for every Stroke named "Stroke 1" in the animation. + */ +public struct AnimationKeypath { + + /// Creates a keypath from a dot separated string. The string is separated by "." + public init(keypath: String) { + self.keys = keypath.components(separatedBy: ".") + } + + /// Creates a keypath from a list of strings. + public init(keys: [String]) { + self.keys = keys + } + + let keys: [String] + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/DynamicProperties/AnyValueProvider.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/DynamicProperties/AnyValueProvider.swift new file mode 100644 index 00000000..1684cd90 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/DynamicProperties/AnyValueProvider.swift @@ -0,0 +1,29 @@ +// +// AnyValueProvider.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/30/19. +// + +import Foundation +import CoreGraphics + +/** + `AnyValueProvider` is a protocol that return animation data for a property at a + given time. Every fame an `AnimationView` queries all of its properties and asks + if their ValueProvider has an update. If it does the AnimationView will read the + property and update that portion of the animation. + + Value Providers can be used to dynamically set animation properties at run time. + */ +public protocol AnyValueProvider { + + /// The Type of the value provider + var valueType: Any.Type { get } + + /// Asks the provider if it has an update for the given frame. + func hasUpdate(frame: AnimationFrameTime) -> Bool + + /// Asks the provider to update the container with its value for the frame. + func value(frame: AnimationFrameTime) -> Any +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/DynamicProperties/ValueProviders/ColorValueProvider.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/DynamicProperties/ValueProviders/ColorValueProvider.swift new file mode 100644 index 00000000..4d594d2f --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/DynamicProperties/ValueProviders/ColorValueProvider.swift @@ -0,0 +1,66 @@ +// +// ColorValueProvider.swift +// lottie-swift +// +// Created by Brandon Withrow on 2/4/19. +// + +import Foundation +import CoreGraphics + +/// A `ValueProvider` that returns a CGColor Value +public final class ColorValueProvider: AnyValueProvider { + + /// Returns a Color for a CGColor(Frame Time) + public typealias ColorValueBlock = (CGFloat) -> Color + + /// The color value of the provider. + public var color: Color { + didSet { + hasUpdate = true + } + } + + /// Initializes with a block provider + public init(block: @escaping ColorValueBlock) { + self.block = block + self.color = Color(r: 0, g: 0, b: 0, a: 1) + } + + /// Initializes with a single color. + public init(_ color: Color) { + self.color = color + self.block = nil + hasUpdate = true + } + + // MARK: ValueProvider Protocol + + public var valueType: Any.Type { + return Color.self + } + + public func hasUpdate(frame: CGFloat) -> Bool { + if block != nil { + return true + } + return hasUpdate + } + + public func value(frame: CGFloat) -> Any { + hasUpdate = false + let newColor: Color + if let block = block { + newColor = block(frame) + } else { + newColor = color + } + return newColor + } + + // MARK: Private + + private var hasUpdate: Bool = true + + private var block: ColorValueBlock? +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/DynamicProperties/ValueProviders/FloatValueProvider.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/DynamicProperties/ValueProviders/FloatValueProvider.swift new file mode 100644 index 00000000..ecd43e12 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/DynamicProperties/ValueProviders/FloatValueProvider.swift @@ -0,0 +1,66 @@ +// +// DoubleValueProvider.swift +// lottie-swift +// +// Created by Brandon Withrow on 2/4/19. +// + +import Foundation +import CoreGraphics + +/// A `ValueProvider` that returns a CGFloat Value +public final class FloatValueProvider: AnyValueProvider { + + /// Returns a CGFloat for a CGFloat(Frame Time) + public typealias CGFloatValueBlock = (CGFloat) -> CGFloat + + public var float: CGFloat { + didSet { + hasUpdate = true + } + } + + /// Initializes with a block provider + public init(block: @escaping CGFloatValueBlock) { + self.block = block + self.float = 0 + } + + /// Initializes with a single float. + public init(_ float: CGFloat) { + self.float = float + self.block = nil + hasUpdate = true + } + + // MARK: ValueProvider Protocol + + public var valueType: Any.Type { + return Vector1D.self + } + + public func hasUpdate(frame: CGFloat) -> Bool { + if block != nil { + return true + } + return hasUpdate + } + + public func value(frame: CGFloat) -> Any { + hasUpdate = false + let newCGFloat: CGFloat + if let block = block { + newCGFloat = block(frame) + } else { + newCGFloat = float + } + return Vector1D(Double(newCGFloat)) + } + + // MARK: Private + + private var hasUpdate: Bool = true + + private var block: CGFloatValueBlock? +} + diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/DynamicProperties/ValueProviders/GradientValueProvider.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/DynamicProperties/ValueProviders/GradientValueProvider.swift new file mode 100644 index 00000000..d19bfc46 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/DynamicProperties/ValueProviders/GradientValueProvider.swift @@ -0,0 +1,114 @@ +// +// GradientValueProvider.swift +// lottie-swift +// +// Created by Enrique Bermúdez on 10/27/19. +// + +import Foundation +import CoreGraphics + +/// A `ValueProvider` that returns a Gradient Color Value. +public final class GradientValueProvider: AnyValueProvider { + + /// Returns a [Color] for a CGFloat(Frame Time). + public typealias ColorsValueBlock = (CGFloat) -> [Color] + /// Returns a [Double](Color locations) for a CGFloat(Frame Time). + public typealias ColorLocationsBlock = (CGFloat) -> [Double] + + /// The colors values of the provider. + public var colors: [Color] { + didSet { + updateValueArray() + hasUpdate = true + } + } + + /// The color location values of the provider. + public var locations: [Double] { + didSet { + updateValueArray() + hasUpdate = true + } + } + + /// Initializes with a block provider. + public init(block: @escaping ColorsValueBlock, + locations: ColorLocationsBlock? = nil) { + self.block = block + self.locationsBlock = locations + self.colors = [] + self.locations = [] + } + + /// Initializes with an array of colors. + public init(_ colors: [Color], + locations: [Double] = []) { + self.colors = colors + self.locations = locations + updateValueArray() + hasUpdate = true + } + + // MARK: ValueProvider Protocol + + public var valueType: Any.Type { + return [Double].self + } + + public func hasUpdate(frame: CGFloat) -> Bool { + if block != nil || locationsBlock != nil { + return true + } + return hasUpdate + } + + public func value(frame: CGFloat) -> Any { + hasUpdate = false + + if let block = block { + let newColors = block(frame) + let newLocations = locationsBlock?(frame) ?? [] + value = value(from: newColors, locations: newLocations) + } + + return value + } + + // MARK: Private + + private func value(from colors: [Color], locations: [Double]) -> [Double] { + + var colorValues = [Double]() + var alphaValues = [Double]() + var shouldAddAlphaValues = false + + for i in 0.. i ? locations[i] : + (Double(i) / Double(colors.count - 1)) + + colorValues.append(location) + colorValues.append(colors[i].r) + colorValues.append(colors[i].g) + colorValues.append(colors[i].b) + + alphaValues.append(location) + alphaValues.append(colors[i].a) + } + + return colorValues + (shouldAddAlphaValues ? alphaValues : []) + } + + private func updateValueArray() { + value = value(from: colors, locations: locations) + } + + private var hasUpdate: Bool = true + + private var block: ColorsValueBlock? + private var locationsBlock: ColorLocationsBlock? + private var value: [Double] = [] +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/DynamicProperties/ValueProviders/PointValueProvider.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/DynamicProperties/ValueProviders/PointValueProvider.swift new file mode 100644 index 00000000..83579fba --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/DynamicProperties/ValueProviders/PointValueProvider.swift @@ -0,0 +1,64 @@ +// +// PointValueProvider.swift +// lottie-swift +// +// Created by Brandon Withrow on 2/4/19. +// + +import Foundation +import CoreGraphics +/// A `ValueProvider` that returns a CGPoint Value +public final class PointValueProvider: AnyValueProvider { + + /// Returns a CGPoint for a CGFloat(Frame Time) + public typealias PointValueBlock = (CGFloat) -> CGPoint + + public var point: CGPoint { + didSet { + hasUpdate = true + } + } + + /// Initializes with a block provider + public init(block: @escaping PointValueBlock) { + self.block = block + self.point = .zero + } + + /// Initializes with a single point. + public init(_ point: CGPoint) { + self.point = point + self.block = nil + hasUpdate = true + } + + // MARK: ValueProvider Protocol + + public var valueType: Any.Type { + return Vector3D.self + } + + public func hasUpdate(frame: CGFloat) -> Bool { + if block != nil { + return true + } + return hasUpdate + } + + public func value(frame: CGFloat) -> Any { + hasUpdate = false + let newPoint: CGPoint + if let block = block { + newPoint = block(frame) + } else { + newPoint = point + } + return newPoint.vector3dValue + } + + // MARK: Private + + private var hasUpdate: Bool = true + + private var block: PointValueBlock? +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/DynamicProperties/ValueProviders/SizeValueProvider.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/DynamicProperties/ValueProviders/SizeValueProvider.swift new file mode 100644 index 00000000..4e893202 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/DynamicProperties/ValueProviders/SizeValueProvider.swift @@ -0,0 +1,65 @@ +// +// SizeValueProvider.swift +// lottie-swift +// +// Created by Brandon Withrow on 2/4/19. +// + +import Foundation +import CoreGraphics + +/// A `ValueProvider` that returns a CGSize Value +public final class SizeValueProvider: AnyValueProvider { + + /// Returns a CGSize for a CGFloat(Frame Time) + public typealias SizeValueBlock = (CGFloat) -> CGSize + + public var size: CGSize { + didSet { + hasUpdate = true + } + } + + /// Initializes with a block provider + public init(block: @escaping SizeValueBlock) { + self.block = block + self.size = .zero + } + + /// Initializes with a single size. + public init(_ size: CGSize) { + self.size = size + self.block = nil + hasUpdate = true + } + + // MARK: ValueProvider Protocol + + public var valueType: Any.Type { + return Vector3D.self + } + + public func hasUpdate(frame: CGFloat) -> Bool { + if block != nil { + return true + } + return hasUpdate + } + + public func value(frame: CGFloat) -> Any { + hasUpdate = false + let newSize: CGSize + if let block = block { + newSize = block(frame) + } else { + newSize = size + } + return newSize.vector3dValue + } + + // MARK: Private + + private var hasUpdate: Bool = true + + private var block: SizeValueBlock? +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/FontProvider/AnimationFontProvider.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/FontProvider/AnimationFontProvider.swift new file mode 100644 index 00000000..9533ac20 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/FontProvider/AnimationFontProvider.swift @@ -0,0 +1,28 @@ +// +// AnimationFontProvider.swift +// Lottie +// +// Created by Brandon Withrow on 8/5/20. +// Copyright © 2020 YurtvilleProds. All rights reserved. +// + +import Foundation +import CoreGraphics +import CoreText + +/** + Font provider is a protocol that is used to supply fonts to `AnimationView`. + + */ +public protocol AnimationFontProvider { + func fontFor(family: String, size: CGFloat) -> CTFont? +} + +/// Default Font provider. +public final class DefaultFontProvider: AnimationFontProvider { + public func fontFor(family: String, size: CGFloat) -> CTFont? { + return CTFontCreateWithName(family as CFString, size, nil) + } + + public init() {} +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/ImageProvider/AnimationImageProvider.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/ImageProvider/AnimationImageProvider.swift new file mode 100644 index 00000000..78cf5f3e --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/ImageProvider/AnimationImageProvider.swift @@ -0,0 +1,23 @@ +// +// LottieImageProvider.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/25/19. +// + +import Foundation +import CoreGraphics + +/** + Image provider is a protocol that is used to supply images to `AnimationView`. + + Some animations require a reference to an image. The image provider loads and + provides those images to the `AnimationView`. Lottie includes a couple of + prebuilt Image Providers that supply images from a Bundle, or from a FilePath. + + Additionally custom Image Providers can be made to load images from a URL, + or to Cache images. + */ +public protocol AnimationImageProvider { + func imageForAsset(asset: ImageAsset) -> CGImage? +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/Primitives/AnimationTime.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/Primitives/AnimationTime.swift new file mode 100644 index 00000000..b765c50a --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/Primitives/AnimationTime.swift @@ -0,0 +1,15 @@ +// +// AnimationTime.swift +// lottie-swift-iOS +// +// Created by Brandon Withrow on 2/6/19. +// + +import Foundation +import CoreGraphics + +/// Defines animation time in Frames (Seconds * Framerate). +public typealias AnimationFrameTime = CGFloat + +/// Defines animation time by a progress from 0 (beginning of the animation) to 1 (end of the animation) +public typealias AnimationProgressTime = CGFloat diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/Primitives/Color.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/Primitives/Color.swift new file mode 100644 index 00000000..4550f4ce --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/Primitives/Color.swift @@ -0,0 +1,41 @@ +// +// Color.swift +// lottie-swift +// +// Created by Brandon Withrow on 2/4/19. +// + +import Foundation + +public enum ColorFormatDenominator { + case One + case OneHundred + case TwoFiftyFive + + var value: Double { + switch self { + case .One: + return 1.0 + case .OneHundred: + return 100.0 + case .TwoFiftyFive: + return 255.0 + } + } +} + +public struct Color { + + public var r: Double + public var g: Double + public var b: Double + public var a: Double + + public init(r: Double, g: Double, b: Double, a: Double, denominator: ColorFormatDenominator = .One) { + self.r = r / denominator.value + self.g = g / denominator.value + self.b = b / denominator.value + self.a = a / denominator.value + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/Primitives/Vectors.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/Primitives/Vectors.swift new file mode 100644 index 00000000..bdf9381e --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/Primitives/Vectors.swift @@ -0,0 +1,37 @@ +// +// Vectors.swift +// lottie-swift +// +// Created by Brandon Withrow on 2/4/19. +// + +import Foundation + +public struct Vector1D { + + public init(_ value: Double) { + self.value = value + } + + public let value: Double + +} + + +/** + A three dimensional vector. + These vectors are encoded and decoded from [Double] + */ +public struct Vector3D { + + public let x: Double + public let y: Double + public let z: Double + + public init(x: Double, y: Double, z: Double) { + self.x = x + self.y = y + self.z = z + } + +} diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/TextProvider/AnimationTextProvider.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/TextProvider/AnimationTextProvider.swift new file mode 100644 index 00000000..3e4e8d9a --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/TextProvider/AnimationTextProvider.swift @@ -0,0 +1,39 @@ +// +// AnimationImageProvider.swift +// Lottie_iOS +// +// Created by Alexandr Goncharov on 07/06/2019. +// + +import Foundation + +/** + Text provider is a protocol that is used to supply text to `AnimationView`. + */ +public protocol AnimationTextProvider: AnyObject { + func textFor(keypathName: String, sourceText: String) -> String +} + +/// Text provider that simply map values from dictionary +public final class DictionaryTextProvider: AnimationTextProvider { + + public init(_ values: [String: String]) { + self.values = values + } + + let values: [String: String] + + public func textFor(keypathName: String, sourceText: String) -> String { + return values[keypathName] ?? sourceText + } +} + +/// Default text provider. Uses text in the animation file +public final class DefaultTextProvider: AnimationTextProvider { + public func textFor(keypathName: String, sourceText: String) -> String { + return sourceText + } + + public init() {} +} + diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/AnimatedButton.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/AnimatedButton.swift new file mode 100644 index 00000000..51f4c537 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/AnimatedButton.swift @@ -0,0 +1,68 @@ +// +// AnimatedButton.swift +// lottie-swift +// +// Created by Brandon Withrow on 2/4/19. +// + +import Foundation +#if os(iOS) || os(tvOS) || os(watchOS) +import UIKit +/** + An interactive button that plays an animation when pressed. + */ +final public class AnimatedButton: AnimatedControl { + + /// Sets the play range for the given UIControlEvent. + public func setPlayRange(fromProgress: AnimationProgressTime, toProgress: AnimationProgressTime, event: UIControl.Event) { + rangesForEvents[event.rawValue] = (from: fromProgress, to: toProgress) + } + + /// Sets the play range for the given UIControlEvent. + public func setPlayRange(fromMarker fromName: String, toMarker toName: String, event: UIControl.Event) { + if let start = animationView.progressTime(forMarker: fromName), + let end = animationView.progressTime(forMarker: toName) { + rangesForEvents[event.rawValue] = (from: start, to: end) + } + } + + public override init(animation: Animation) { + super.init(animation: animation) + self.accessibilityTraits = UIAccessibilityTraits.button + } + + public override init() { + super.init() + self.accessibilityTraits = UIAccessibilityTraits.button + } + + fileprivate var rangesForEvents: [UInt : (from: CGFloat, to: CGFloat)] = [UIControl.Event.touchUpInside.rawValue : (from: 0, to: 1)] + + required public init?(coder aDecoder: NSCoder) { + super.init(coder: aDecoder) + } + + public override func beginTracking(_ touch: UITouch, with event: UIEvent?) -> Bool { + let _ = super.beginTracking(touch, with: event) + let touchEvent = UIControl.Event.touchDown + if let playrange = rangesForEvents[touchEvent.rawValue] { + animationView.play(fromProgress: playrange.from, toProgress: playrange.to, loopMode: LottieLoopMode.playOnce) + } + return true + } + + public override func endTracking(_ touch: UITouch?, with event: UIEvent?) { + super.endTracking(touch, with: event) + let touchEvent: UIControl.Event + if let touch = touch, bounds.contains(touch.location(in: self)) { + touchEvent = UIControl.Event.touchUpInside + } else { + touchEvent = UIControl.Event.touchUpOutside + } + + if let playrange = rangesForEvents[touchEvent.rawValue] { + animationView.play(fromProgress: playrange.from, toProgress: playrange.to, loopMode: LottieLoopMode.playOnce) + } + } +} +#endif diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/AnimatedControl.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/AnimatedControl.swift new file mode 100644 index 00000000..a815f3a2 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/AnimatedControl.swift @@ -0,0 +1,166 @@ +// +// AnimatedControl.swift +// lottie-swift +// +// Created by Brandon Withrow on 2/4/19. +// + +import Foundation +#if os(iOS) || os(tvOS) || os(watchOS) +import UIKit + +/** + Lottie comes prepacked with a two Animated Controls, `AnimatedSwitch` and + `AnimatedButton`. Both of these controls are built on top of `AnimatedControl` + + `AnimatedControl` is a subclass of `UIControl` that provides an interactive + mechanism for controlling the visual state of an animation in response to + user actions. + + The `AnimatedControl` will show and hide layers depending on the current + `UIControl.State` of the control. + + Users of `AnimationControl` can set a Layer Name for each `UIControl.State`. + When the state is change the `AnimationControl` will change the visibility + of its layers. + + NOTE: Do not initialize directly. This is intended to be subclassed. + */ +open class AnimatedControl: UIControl { + + // MARK: Public + + /// The animation view in which the animation is rendered. + public let animationView: AnimationView + + /// The animation backing the animated control. + public var animation: Animation? { + didSet { + animationView.animation = animation + animationView.bounds = animation?.bounds ?? .zero + setNeedsLayout() + updateForState() + animationDidSet() + } + } + + /// The speed of the animation playback. Defaults to 1 + public var animationSpeed: CGFloat { + set { animationView.animationSpeed = newValue } + get { return animationView.animationSpeed } + } + + /// Sets which Animation Layer should be visible for the given state. + public func setLayer(named: String, forState: UIControl.State) { + stateMap[forState.rawValue] = named + updateForState() + } + + /// Sets a ValueProvider for the specified keypath + public func setValueProvider(_ valueProvider: AnyValueProvider, keypath: AnimationKeypath) { + animationView.setValueProvider(valueProvider, keypath: keypath) + } + + // MARK: Initializers + + public init(animation: Animation) { + self.animationView = AnimationView(animation: animation) + super.init(frame: animation.bounds) + commonInit() + } + + public init() { + self.animationView = AnimationView() + super.init(frame: .zero) + commonInit() + } + + required public init?(coder aDecoder: NSCoder) { + self.animationView = AnimationView() + super.init(coder: aDecoder) + commonInit() + } + + // MARK: UIControl Overrides + + open override var isEnabled: Bool { + didSet { + updateForState() + } + } + + open override var isSelected: Bool { + didSet { + updateForState() + } + } + + open override var isHighlighted: Bool { + didSet { + updateForState() + } + } + + open override func beginTracking(_ touch: UITouch, with event: UIEvent?) -> Bool { + updateForState() + return super.beginTracking(touch, with: event) + } + + open override func continueTracking(_ touch: UITouch, with event: UIEvent?) -> Bool { + updateForState() + return super.continueTracking(touch, with: event) + } + + open override func endTracking(_ touch: UITouch?, with event: UIEvent?) { + updateForState() + return super.endTracking(touch, with: event) + } + + open override func cancelTracking(with event: UIEvent?) { + updateForState() + super.cancelTracking(with: event) + } + + open override var intrinsicContentSize: CGSize { + return animationView.intrinsicContentSize + } + + open func animationDidSet() { + + } + + // MARK: Private + + var stateMap: [UInt : String] = [:] + + fileprivate func commonInit() { + animationView.clipsToBounds = false + clipsToBounds = true + animationView.translatesAutoresizingMaskIntoConstraints = false + animationView.backgroundBehavior = .forceFinish + addSubview(animationView) + animationView.contentMode = .scaleAspectFit + animationView.isUserInteractionEnabled = false + animationView.leadingAnchor.constraint(equalTo: leadingAnchor).isActive = true + animationView.trailingAnchor.constraint(equalTo: trailingAnchor).isActive = true + animationView.topAnchor.constraint(equalTo: topAnchor).isActive = true + animationView.bottomAnchor.constraint(equalTo: bottomAnchor).isActive = true + } + + func updateForState() { + guard let animationLayer = animationView.animationLayer else { return } + if let layerName = stateMap[state.rawValue], + let stateLayer = animationLayer.layer(for: AnimationKeypath(keypath: layerName)) { + for layer in animationLayer.animationLayers { + layer.isHidden = true + } + stateLayer.isHidden = false + } else { + for layer in animationLayer.animationLayers { + layer.isHidden = false + } + } + } + +} +#endif diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/AnimatedSwitch.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/AnimatedSwitch.swift new file mode 100644 index 00000000..4d0e0627 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/AnimatedSwitch.swift @@ -0,0 +1,194 @@ +// +// AnimatedSwitch.swift +// lottie-swift +// +// Created by Brandon Withrow on 2/4/19. +// + +import Foundation +#if os(iOS) || os(tvOS) || os(watchOS) +import UIKit + +/** + An interactive switch with an 'On' and 'Off' state. When the user taps on the + switch the state is toggled and the appropriate animation is played. + + Both the 'On' and 'Off' have an animation play range associated with their state. + */ +final public class AnimatedSwitch: AnimatedControl { + + /// Defines what happens when the user taps the switch while an + /// animation is still in flight + public enum CancelBehavior { + case reverse // default - plays the current animation in reverse + case none // does not update the animation when canceled + } + + /// The current state of the switch. + public var isOn: Bool { + set { + /// This is forwarded to a private variable because the animation needs to be updated without animation when set externally and with animation when set internally. + guard _isOn != newValue else { return } + updateOnState(isOn: newValue, animated: false, shouldFireHaptics: false) + } + get { + return _isOn + } + } + + /// The cancel behavior for the switch. See CancelBehavior for options + public var cancelBehavior: CancelBehavior = .reverse + + /// Set the state of the switch and specify animation and haptics + public func setIsOn(_ isOn: Bool, animated: Bool, shouldFireHaptics: Bool = true) { + guard isOn != _isOn else { return } + updateOnState(isOn: isOn, animated: animated, shouldFireHaptics: shouldFireHaptics) + } + + /// Sets the play range for the given state. When the switch is toggled, the animation range is played. + public func setProgressForState(fromProgress: AnimationProgressTime, + toProgress: AnimationProgressTime, + forOnState: Bool) { + if forOnState { + onStartProgress = fromProgress + onEndProgress = toProgress + } else { + offStartProgress = fromProgress + offEndProgress = toProgress + } + + updateOnState(isOn: _isOn, animated: false, shouldFireHaptics: false) + } + + public override init(animation: Animation) { + /// Generate a haptic generator if available. + #if os(iOS) + if #available(iOS 10.0, *) { + self.hapticGenerator = HapticGenerator() + } else { + self.hapticGenerator = NullHapticGenerator() + } + #else + self.hapticGenerator = NullHapticGenerator() + #endif + super.init(animation: animation) + updateOnState(isOn: _isOn, animated: false, shouldFireHaptics: false) + self.accessibilityTraits = UIAccessibilityTraits.button + } + + public override init() { + /// Generate a haptic generator if available. + #if os(iOS) + if #available(iOS 10.0, *) { + self.hapticGenerator = HapticGenerator() + } else { + self.hapticGenerator = NullHapticGenerator() + } + #else + self.hapticGenerator = NullHapticGenerator() + #endif + super.init() + updateOnState(isOn: _isOn, animated: false, shouldFireHaptics: false) + self.accessibilityTraits = UIAccessibilityTraits.button + } + + required public init?(coder aDecoder: NSCoder) { + /// Generate a haptic generator if available. + #if os(iOS) + if #available(iOS 10.0, *) { + self.hapticGenerator = HapticGenerator() + } else { + self.hapticGenerator = NullHapticGenerator() + } + #else + self.hapticGenerator = NullHapticGenerator() + #endif + super.init(coder: aDecoder) + self.accessibilityTraits = UIAccessibilityTraits.button + } + + fileprivate var onStartProgress: CGFloat = 0 + fileprivate var onEndProgress: CGFloat = 1 + fileprivate var offStartProgress: CGFloat = 1 + fileprivate var offEndProgress: CGFloat = 0 + fileprivate var _isOn: Bool = false + fileprivate var hapticGenerator: ImpactGenerator + + // MARK: Animation State + + func updateOnState(isOn: Bool, animated: Bool, shouldFireHaptics: Bool) { + _isOn = isOn + var startProgress = isOn ? onStartProgress : offStartProgress + var endProgress = isOn ? onEndProgress : offEndProgress + let finalProgress = endProgress + + if cancelBehavior == .reverse { + let realtimeProgress = animationView.realtimeAnimationProgress + + let previousStateStart = isOn ? offStartProgress : onStartProgress + let previousStateEnd = isOn ? offEndProgress : onEndProgress + if realtimeProgress.isInRange(min(previousStateStart, previousStateEnd), + max(previousStateStart, previousStateEnd)) { + /// Animation is currently in the previous time range. Reverse the previous play. + startProgress = previousStateEnd + endProgress = previousStateStart + } + } + + updateAccessibilityLabel() + + guard animated == true else { + animationView.currentProgress = finalProgress + return + } + + if shouldFireHaptics { + self.hapticGenerator.generateImpact() + } + + animationView.play(fromProgress: startProgress, toProgress: endProgress, loopMode: LottieLoopMode.playOnce) { (finished) in + if finished == true { + self.animationView.currentProgress = finalProgress + } + } + } + + public override func endTracking(_ touch: UITouch?, with event: UIEvent?) { + super.endTracking(touch, with: event) + updateOnState(isOn: !_isOn, animated: true, shouldFireHaptics: true) + sendActions(for: .valueChanged) + } + + public override func animationDidSet() { + updateOnState(isOn: _isOn, animated: true, shouldFireHaptics: false) + } + + // MARK: Private + + private func updateAccessibilityLabel() { + accessibilityValue = _isOn ? NSLocalizedString("On", comment: "On") : NSLocalizedString("Off", comment: "Off") + } + +} +#endif + +protocol ImpactGenerator { + func generateImpact() +} + +class NullHapticGenerator: ImpactGenerator { + func generateImpact() { + + } +} + +#if os(iOS) +@available(iOS 10.0, *) +class HapticGenerator: ImpactGenerator { + func generateImpact() { + impact.impactOccurred() + } + + fileprivate let impact = UIImpactFeedbackGenerator(style: .light) +} +#endif diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/AnimationSubview.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/AnimationSubview.swift new file mode 100644 index 00000000..6321041a --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/AnimationSubview.swift @@ -0,0 +1,20 @@ +// +// AnimationSubview.swift +// lottie-swift +// +// Created by Brandon Withrow on 2/4/19. +// + +import Foundation +#if os(iOS) || os(tvOS) || os(watchOS) +import UIKit + +/// A view that can be added to a keypath of an AnimationView +public final class AnimationSubview: UIView { + + var viewLayer: CALayer? { + return layer + } + +} +#endif diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/BundleImageProvider.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/BundleImageProvider.swift new file mode 100644 index 00000000..97ccce47 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/BundleImageProvider.swift @@ -0,0 +1,87 @@ +// +// LottieBundleImageProvider.swift +// lottie-swift +// +// Created by Brandon Withrow on 1/25/19. +// + +import Foundation +import CoreGraphics +#if os(iOS) || os(tvOS) || os(watchOS) +import UIKit + +/** + An `AnimationImageProvider` that provides images by name from a specific bundle. + The BundleImageProvider is initialized with a bundle and an optional searchPath. + */ +public class BundleImageProvider: AnimationImageProvider { + + let bundle: Bundle + let searchPath: String? + + /** + Initializes an image provider with a bundle and an optional subpath. + + Provides images for an animation from a bundle. Additionally the provider can + search a specific subpath for the images. + + - Parameter bundle: The bundle containing images for the provider. + - Parameter searchPath: The subpath is a path within the bundle to search for image assets. + + */ + public init(bundle: Bundle, searchPath: String?) { + self.bundle = bundle + self.searchPath = searchPath + } + + public func imageForAsset(asset: ImageAsset) -> CGImage? { + + if asset.name.hasPrefix("data:"), + let url = URL(string: asset.name), + let data = try? Data(contentsOf: url), + let image = UIImage(data: data) { + return image.cgImage + } + + let imagePath: String? + /// Try to find the image in the bundle. + if let searchPath = searchPath { + /// Search in the provided search path for the image + var directoryPath = URL(fileURLWithPath: searchPath) + directoryPath.appendPathComponent(asset.directory) + + if let path = bundle.path(forResource: asset.name, ofType: nil, inDirectory: directoryPath.path) { + /// First search for the image in the asset provided sub directory. + imagePath = path + } else if let path = bundle.path(forResource: asset.name, ofType: nil, inDirectory: searchPath) { + /// Try finding the image in the search path. + imagePath = path + } else { + imagePath = bundle.path(forResource: asset.name, ofType: nil) + } + } else { + if let path = bundle.path(forResource: asset.name, ofType: nil, inDirectory: asset.directory) { + /// First search for the image in the asset provided sub directory. + imagePath = path + } else { + /// First search for the image in bundle. + imagePath = bundle.path(forResource: asset.name, ofType: nil) + } + } + + if imagePath == nil { + guard let image = UIImage(named: asset.name, in: bundle, compatibleWith: nil) else { + return nil + } + return image.cgImage + } + + guard let foundPath = imagePath, let image = UIImage(contentsOfFile: foundPath) else { + /// No image found. + return nil + } + return image.cgImage + } + +} +#endif diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/Compatibility/CompatibleAnimationKeypath.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/Compatibility/CompatibleAnimationKeypath.swift new file mode 100644 index 00000000..1b63d148 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/Compatibility/CompatibleAnimationKeypath.swift @@ -0,0 +1,29 @@ +// +// CompatibleAnimationKeypath.swift +// Lottie_iOS +// +// Created by Tyler Hedrick on 3/6/19. +// + +import Foundation +#if os(iOS) || os(tvOS) || os(watchOS) + +/// An Objective-C compatible wrapper around Lottie's AnimationKeypath +@objc +public final class CompatibleAnimationKeypath: NSObject { + + /// Creates a keypath from a dot separated string. The string is separated by "." + @objc + public init(keypath: String) { + animationKeypath = AnimationKeypath(keypath: keypath) + } + + /// Creates a keypath from a list of strings. + @objc + public init(keys: [String]) { + animationKeypath = AnimationKeypath(keys: keys) + } + + public let animationKeypath: AnimationKeypath +} +#endif diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/Compatibility/CompatibleAnimationView.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/Compatibility/CompatibleAnimationView.swift new file mode 100644 index 00000000..847eea75 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/Compatibility/CompatibleAnimationView.swift @@ -0,0 +1,314 @@ +// +// CompatibleAnimationView.swift +// Lottie_iOS +// +// Created by Tyler Hedrick on 3/6/19. +// + +import Foundation +#if os(iOS) || os(tvOS) || os(watchOS) +import UIKit + +/// An Objective-C compatible wrapper around Lottie's Animation class. +/// Use in tandem with CompatibleAnimationView when using Lottie in Objective-C +@objc +public final class CompatibleAnimation: NSObject { + + @objc + static func named(_ name: String) -> CompatibleAnimation { + return CompatibleAnimation(name: name) + } + + @objc + public init(name: String, bundle: Bundle = Bundle.main) { + self.name = name + self.bundle = bundle + super.init() + } + + internal var animation: Animation? { + return Animation.named(name, bundle: bundle) + } + + // MARK: Private + + private let name: String + private let bundle: Bundle +} + +/// An Objective-C compatible wrapper around Lottie's AnimationView. +@objc +public final class CompatibleAnimationView: UIView { + + @objc + init(compatibleAnimation: CompatibleAnimation) { + animationView = AnimationView(animation: compatibleAnimation.animation) + self.compatibleAnimation = compatibleAnimation + super.init(frame: .zero) + commonInit() + } + + @objc + public override init(frame: CGRect) { + animationView = AnimationView() + super.init(frame: frame) + commonInit() + } + + required init?(coder aDecoder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + // MARK: Public + + @objc + public var compatibleAnimation: CompatibleAnimation? { + didSet { + animationView.animation = compatibleAnimation?.animation + } + } + + @objc + public var loopAnimationCount: CGFloat = 0 { + didSet { + animationView.loopMode = loopAnimationCount == -1 ? .loop : .repeat(Float(loopAnimationCount)) + } + } + + @objc + public override var contentMode: UIView.ContentMode { + set { animationView.contentMode = newValue } + get { return animationView.contentMode } + } + + @objc + public var shouldRasterizeWhenIdle: Bool { + set { animationView.shouldRasterizeWhenIdle = newValue } + get { return animationView.shouldRasterizeWhenIdle } + } + + @objc + public var currentProgress: CGFloat { + set { animationView.currentProgress = newValue } + get { return animationView.currentProgress } + } + + @objc + public var currentTime: TimeInterval { + set { animationView.currentTime = newValue } + get { return animationView.currentTime } + } + + @objc + public var currentFrame: CGFloat { + set { animationView.currentFrame = newValue } + get { return animationView.currentFrame } + } + + @objc + public var realtimeAnimationFrame: CGFloat { + return animationView.realtimeAnimationFrame + } + + @objc + public var realtimeAnimationProgress: CGFloat { + return animationView.realtimeAnimationProgress + } + + @objc + public var animationSpeed: CGFloat { + set { animationView.animationSpeed = newValue } + get { return animationView.animationSpeed } + } + + @objc + public var respectAnimationFrameRate: Bool { + set { animationView.respectAnimationFrameRate = newValue } + get { return animationView.respectAnimationFrameRate } + } + + @objc + public var isAnimationPlaying: Bool { + return animationView.isAnimationPlaying + } + + @objc + public func play() { + play(completion: nil) + } + + @objc + public func play(completion: ((Bool) -> Void)?) { + animationView.play(completion: completion) + } + + @objc + public func play( + fromProgress: CGFloat, + toProgress: CGFloat, + completion: ((Bool) -> Void)? = nil) + { + animationView.play( + fromProgress: fromProgress, + toProgress: toProgress, + loopMode: nil, + completion: completion) + } + + @objc + public func play( + fromFrame: CGFloat, + toFrame: CGFloat, + completion: ((Bool) -> Void)? = nil) + { + animationView.play( + fromFrame: fromFrame, + toFrame: toFrame, + loopMode: nil, + completion: completion) + } + + @objc + public func play( + fromMarker: String, + toMarker: String, + completion: ((Bool) -> Void)? = nil) + { + animationView.play( + fromMarker: fromMarker, + toMarker: toMarker, + completion: completion) + } + + @objc + public func stop() { + animationView.stop() + } + + @objc + public func pause() { + animationView.pause() + } + + @objc + public func reloadImages() { + animationView.reloadImages() + } + + @objc + public func forceDisplayUpdate() { + animationView.forceDisplayUpdate() + } + + @objc + public func getValue( + for keypath: CompatibleAnimationKeypath, + atFrame: CGFloat) -> Any? + { + return animationView.getValue( + for: keypath.animationKeypath, + atFrame: atFrame) + } + + @objc + public func logHierarchyKeypaths() { + animationView.logHierarchyKeypaths() + } + + @objc + public func setColorValue(_ color: UIColor, forKeypath keypath: CompatibleAnimationKeypath) + { + var red: CGFloat = 0 + var green: CGFloat = 0 + var blue: CGFloat = 0 + var alpha: CGFloat = 0 + // TODO: Fix color spaces + let colorspace = CGColorSpaceCreateDeviceRGB() + + let convertedColor = color.cgColor.converted(to: colorspace, intent: .defaultIntent, options: nil) + + if let components = convertedColor?.components, components.count == 4 { + red = components[0] + green = components[1] + blue = components[2] + alpha = components[3] + } else { + color.getRed(&red, green: &green, blue: &blue, alpha: &alpha) + } + + let valueProvider = ColorValueProvider(Color(r: Double(red), g: Double(green), b: Double(blue), a: Double(alpha))) + animationView.setValueProvider(valueProvider, keypath: keypath.animationKeypath) + } + + @objc + public func getColorValue(for keypath: CompatibleAnimationKeypath, atFrame: CGFloat) -> UIColor? + { + let value = animationView.getValue(for: keypath.animationKeypath, atFrame: atFrame) + guard let colorValue = value as? Color else { + return nil; + } + + return UIColor(red: CGFloat(colorValue.r), green: CGFloat(colorValue.g), blue: CGFloat(colorValue.b), alpha: CGFloat(colorValue.a)) + } + + @objc + public func addSubview( + _ subview: AnimationSubview, + forLayerAt keypath: CompatibleAnimationKeypath) + { + animationView.addSubview( + subview, + forLayerAt: keypath.animationKeypath) + } + + @objc + public func convert( + rect: CGRect, + toLayerAt keypath: CompatibleAnimationKeypath?) + -> CGRect + { + return animationView.convert( + rect, + toLayerAt: keypath?.animationKeypath) ?? .zero + } + + @objc + public func convert( + point: CGPoint, + toLayerAt keypath: CompatibleAnimationKeypath?) + -> CGPoint + { + return animationView.convert( + point, + toLayerAt: keypath?.animationKeypath) ?? .zero + } + + @objc + public func progressTime(forMarker named: String) -> CGFloat { + return animationView.progressTime(forMarker: named) ?? 0 + } + + @objc + public func frameTime(forMarker named: String) -> CGFloat { + return animationView.frameTime(forMarker: named) ?? 0 + } + + // MARK: Private + + private let animationView: AnimationView + + private func commonInit() { + translatesAutoresizingMaskIntoConstraints = false + setUpViews() + } + + private func setUpViews() { + animationView.translatesAutoresizingMaskIntoConstraints = false + addSubview(animationView) + animationView.topAnchor.constraint(equalTo: topAnchor).isActive = true + animationView.trailingAnchor.constraint(equalTo: trailingAnchor).isActive = true + animationView.leadingAnchor.constraint(equalTo: leadingAnchor).isActive = true + animationView.bottomAnchor.constraint(equalTo: bottomAnchor).isActive = true + } +} +#endif diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/FilepathImageProvider.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/FilepathImageProvider.swift new file mode 100644 index 00000000..e782fe8c --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/FilepathImageProvider.swift @@ -0,0 +1,56 @@ +// +// FilepathImageProvider.swift +// lottie-swift +// +// Created by Brandon Withrow on 2/1/19. +// + +import Foundation +#if os(iOS) || os(tvOS) || os(watchOS) +import UIKit + +/** + Provides an image for a lottie animation from a provided Bundle. + */ +public class FilepathImageProvider: AnimationImageProvider { + + let filepath: URL + + /** + Initializes an image provider with a specific filepath. + + - Parameter filepath: The absolute filepath containing the images. + + */ + public init(filepath: String) { + self.filepath = URL(fileURLWithPath: filepath) + } + + public init(filepath: URL) { + self.filepath = filepath + } + + public func imageForAsset(asset: ImageAsset) -> CGImage? { + + if asset.name.hasPrefix("data:"), + let url = URL(string: asset.name), + let data = try? Data(contentsOf: url), + let image = UIImage(data: data) { + return image.cgImage + } + + let directPath = filepath.appendingPathComponent(asset.name).path + if FileManager.default.fileExists(atPath: directPath) { + return UIImage(contentsOfFile: directPath)?.cgImage + } + + let pathWithDirectory = filepath.appendingPathComponent(asset.directory).appendingPathComponent(asset.name).path + if FileManager.default.fileExists(atPath: pathWithDirectory) { + return UIImage(contentsOfFile: pathWithDirectory)?.cgImage + } + + return nil + } + +} +#endif diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/LottieView.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/LottieView.swift new file mode 100644 index 00000000..6c320bff --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/LottieView.swift @@ -0,0 +1,62 @@ +// +// LottieView.swift +// lottie-swift-iOS +// +// Created by Brandon Withrow on 2/6/19. +// + +import Foundation +#if os(iOS) || os(tvOS) || os(watchOS) +import UIKit + +//public typealias LottieView = UIView + +open class LottieView: UIView { + + var viewLayer: CALayer? { + return layer + } + + func layoutAnimation() { + + } + + func animationMovedToWindow() { + + } + + open override func didMoveToWindow() { + super.didMoveToWindow() + animationMovedToWindow() + } + + var screenScale: CGFloat { + return UIScreen.main.scale + } + + func commonInit() { + contentMode = .scaleAspectFit + clipsToBounds = true + NotificationCenter.default.addObserver(self, selector: #selector(animationWillEnterForeground), name: UIApplication.willEnterForegroundNotification, object: nil) + NotificationCenter.default.addObserver(self, selector: #selector(animationWillMoveToBackground), name: UIApplication.didEnterBackgroundNotification, object: nil) + } + + open override var contentMode: UIView.ContentMode { + didSet { + setNeedsLayout() + } + } + + open override func layoutSubviews() { + super.layoutSubviews() + self.layoutAnimation() + } + + @objc func animationWillMoveToBackground() { + } + + @objc func animationWillEnterForeground() { + } + +} +#endif diff --git a/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/UIColorExtension.swift b/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/UIColorExtension.swift new file mode 100644 index 00000000..7c2d9314 --- /dev/null +++ b/ios/Pods/lottie-ios/lottie-swift/src/Public/iOS/UIColorExtension.swift @@ -0,0 +1,21 @@ +// +// UIColorExtension.swift +// lottie-swift +// +// Created by Brandon Withrow on 2/4/19. +// + +import Foundation +#if os(iOS) || os(tvOS) || os(watchOS) +import UIKit + +public extension UIColor { + + var lottieColorValue: Color { + var r: CGFloat = 0, g: CGFloat = 0, b: CGFloat = 0, a: CGFloat = 0 + getRed(&r, green: &g, blue: &b, alpha: &a) + return Color(r: Double(r), g: Double(g), b: Double(b), a: Double(a)) + } + +} +#endif diff --git a/ios/iLink-Bridging-Header.h b/ios/iLink-Bridging-Header.h new file mode 100644 index 00000000..1b2cb5d6 --- /dev/null +++ b/ios/iLink-Bridging-Header.h @@ -0,0 +1,4 @@ +// +// Use this file to import your target's public headers that you would like to expose to Swift. +// + diff --git a/ios/iLink-tvOS-Bridging-Header.h b/ios/iLink-tvOS-Bridging-Header.h new file mode 100644 index 00000000..1b2cb5d6 --- /dev/null +++ b/ios/iLink-tvOS-Bridging-Header.h @@ -0,0 +1,4 @@ +// +// Use this file to import your target's public headers that you would like to expose to Swift. +// + diff --git a/ios/iLink.swift b/ios/iLink.swift new file mode 100644 index 00000000..7ec98b53 --- /dev/null +++ b/ios/iLink.swift @@ -0,0 +1,9 @@ +// +// iLink.swift +// iLink +// +// Created by RETINA on 28/01/2021. +// Copyright © 2021 Facebook. All rights reserved. +// + +import Foundation diff --git a/ios/iLink.xcodeproj/project.pbxproj b/ios/iLink.xcodeproj/project.pbxproj index 5a2bd091..fb6e1ef5 100644 --- a/ios/iLink.xcodeproj/project.pbxproj +++ b/ios/iLink.xcodeproj/project.pbxproj @@ -8,6 +8,8 @@ /* Begin PBXBuildFile section */ 00E356F31AD99517003FC87E /* iLinkTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* iLinkTests.m */; }; + 0950CB7725C369E4002DCE58 /* iLink.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0950CB7625C369E4002DCE58 /* iLink.swift */; }; + 0950CB7825C369E4002DCE58 /* iLink.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0950CB7625C369E4002DCE58 /* iLink.swift */; }; 13B07FBC1A68108700A75B9A /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.m */; }; 13B07FBD1A68108700A75B9A /* LaunchScreen.xib in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB11A68108700A75B9A /* LaunchScreen.xib */; }; 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; }; @@ -16,6 +18,7 @@ 2D02E4BD1E0B4A84006451C7 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; }; 2D02E4BF1E0B4AB3006451C7 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; }; 2DCD954D1E0B4F2C00145EB5 /* iLinkTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* iLinkTests.m */; }; +<<<<<<< Updated upstream 35A1DCD0E722457CAC2F74F5 /* AntDesign.ttf in Resources */ = {isa = PBXBuildFile; fileRef = EDB4BCC9B76C4E56B08818DE /* AntDesign.ttf */; }; BB9A3BED399A4672A94195BB /* Entypo.ttf in Resources */ = {isa = PBXBuildFile; fileRef = FD2A4AB5697A43AFB1847EBF /* Entypo.ttf */; }; A8847CA0C05047F3A9966EC1 /* EvilIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = E7BAE9F689504BF1A272F189 /* EvilIcons.ttf */; }; @@ -32,6 +35,12 @@ 4FD6641294BF4B218C2E3709 /* Octicons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = FC4E2565B33D447DA8A460F6 /* Octicons.ttf */; }; A0D1E447832646B2B3A08253 /* SimpleLineIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 1425F2C9C3304211A7F8D836 /* SimpleLineIcons.ttf */; }; 69A5312C158E470BAF78324D /* Zocial.ttf in Resources */ = {isa = PBXBuildFile; fileRef = A4257895077D46B5A9FF760C /* Zocial.ttf */; }; +======= + 3419C4BC9ABCA0BB36524B26 /* libPods-iLinkTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = C7A3F7DCF0B2C0CE0AFF3A45 /* libPods-iLinkTests.a */; }; + 363EFA41ABF54D53F9C85025 /* libPods-iLink.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 7EFAB9BCB4831318B67ED887 /* libPods-iLink.a */; }; + 4F1C29A838B804360516CAE6 /* libPods-iLink-tvOSTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = A2D1AFEF0D53A82E0516709C /* libPods-iLink-tvOSTests.a */; }; + 8BA34F205B532181A3FB58B8 /* libPods-iLink-tvOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 465F759F796C8ED196764A98 /* libPods-iLink-tvOS.a */; }; +>>>>>>> Stashed changes /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -56,6 +65,13 @@ 00E356EE1AD99517003FC87E /* iLinkTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = iLinkTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 00E356F11AD99517003FC87E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 00E356F21AD99517003FC87E /* iLinkTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = iLinkTests.m; sourceTree = ""; }; +<<<<<<< Updated upstream +======= + 0950CB7425C369E4002DCE58 /* iLink-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "iLink-Bridging-Header.h"; sourceTree = ""; }; + 0950CB7525C369E4002DCE58 /* iLink-tvOS-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "iLink-tvOS-Bridging-Header.h"; sourceTree = ""; }; + 0950CB7625C369E4002DCE58 /* iLink.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = iLink.swift; sourceTree = ""; }; + 0D6D645346C344CABDECB816 /* MaterialIcons.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = MaterialIcons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/MaterialIcons.ttf"; sourceTree = ""; }; +>>>>>>> Stashed changes 13B07F961A680F5B00A75B9A /* iLink.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = iLink.app; sourceTree = BUILT_PRODUCTS_DIR; }; 13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = iLink/AppDelegate.h; sourceTree = ""; }; 13B07FB01A68108700A75B9A /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AppDelegate.m; path = iLink/AppDelegate.m; sourceTree = ""; }; @@ -63,6 +79,7 @@ 13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = iLink/Images.xcassets; sourceTree = ""; }; 13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = iLink/Info.plist; sourceTree = ""; }; 13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = iLink/main.m; sourceTree = ""; }; +<<<<<<< Updated upstream 2D02E47B1E0B4A5D006451C7 /* iLink-tvOS.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "iLink-tvOS.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 2D02E4901E0B4A5D006451C7 /* iLink-tvOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "iLink-tvOSTests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; }; ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; }; @@ -83,6 +100,39 @@ FC4E2565B33D447DA8A460F6 /* Octicons.ttf */ = {isa = PBXFileReference; name = "Octicons.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/Octicons.ttf"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; }; 1425F2C9C3304211A7F8D836 /* SimpleLineIcons.ttf */ = {isa = PBXFileReference; name = "SimpleLineIcons.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/SimpleLineIcons.ttf"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; }; A4257895077D46B5A9FF760C /* Zocial.ttf */ = {isa = PBXFileReference; name = "Zocial.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/Zocial.ttf"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; }; +======= + 1425F2C9C3304211A7F8D836 /* SimpleLineIcons.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = SimpleLineIcons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/SimpleLineIcons.ttf"; sourceTree = ""; }; + 2D02E47B1E0B4A5D006451C7 /* iLink-tvOS.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "iLink-tvOS.app"; sourceTree = BUILT_PRODUCTS_DIR; }; + 2D02E4901E0B4A5D006451C7 /* iLink-tvOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "iLink-tvOSTests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; }; + 41ED19B6E06E40848718CAD7 /* FontAwesome5_Solid.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = FontAwesome5_Solid.ttf; path = "../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Solid.ttf"; sourceTree = ""; }; + 465F759F796C8ED196764A98 /* libPods-iLink-tvOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-iLink-tvOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 4B5902E33F2441A88A70005D /* FontAwesome.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = FontAwesome.ttf; path = "../node_modules/react-native-vector-icons/Fonts/FontAwesome.ttf"; sourceTree = ""; }; + 58438E06EEA04418B8536754 /* Foundation.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = Foundation.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Foundation.ttf"; sourceTree = ""; }; + 5F84724FB9C359C49286A82D /* Pods-iLink-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-iLink-tvOS.debug.xcconfig"; path = "Target Support Files/Pods-iLink-tvOS/Pods-iLink-tvOS.debug.xcconfig"; sourceTree = ""; }; + 6592F1E8A3B142358C51BFAA /* Feather.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = Feather.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Feather.ttf"; sourceTree = ""; }; + 6B5B1ED6C9604BCC914FDB3F /* Pods-iLink.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-iLink.debug.xcconfig"; path = "Target Support Files/Pods-iLink/Pods-iLink.debug.xcconfig"; sourceTree = ""; }; + 727B505113644644B8BB4B0F /* FontAwesome5_Brands.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = FontAwesome5_Brands.ttf; path = "../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Brands.ttf"; sourceTree = ""; }; + 74EFED96839D4FFFB841ACC3 /* Pods-iLink-tvOSTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-iLink-tvOSTests.debug.xcconfig"; path = "Target Support Files/Pods-iLink-tvOSTests/Pods-iLink-tvOSTests.debug.xcconfig"; sourceTree = ""; }; + 7EFAB9BCB4831318B67ED887 /* libPods-iLink.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-iLink.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 9D97681813B855ABD827A228 /* Pods-iLink-tvOSTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-iLink-tvOSTests.release.xcconfig"; path = "Target Support Files/Pods-iLink-tvOSTests/Pods-iLink-tvOSTests.release.xcconfig"; sourceTree = ""; }; + 9E29955EDCC38C3DB16C2DAA /* Pods-iLink.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-iLink.release.xcconfig"; path = "Target Support Files/Pods-iLink/Pods-iLink.release.xcconfig"; sourceTree = ""; }; + A2D1AFEF0D53A82E0516709C /* libPods-iLink-tvOSTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-iLink-tvOSTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + A4257895077D46B5A9FF760C /* Zocial.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = Zocial.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Zocial.ttf"; sourceTree = ""; }; + A92C402A5C780BD588A18B17 /* Pods-iLinkTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-iLinkTests.debug.xcconfig"; path = "Target Support Files/Pods-iLinkTests/Pods-iLinkTests.debug.xcconfig"; sourceTree = ""; }; + C5D02CF4C7FB8081EC5D39A1 /* Pods-iLink-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-iLink-tvOS.release.xcconfig"; path = "Target Support Files/Pods-iLink-tvOS/Pods-iLink-tvOS.release.xcconfig"; sourceTree = ""; }; + C6BBB6BE9FD34D9E97BAE047 /* Fontisto.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = Fontisto.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Fontisto.ttf"; sourceTree = ""; }; + C7A3F7DCF0B2C0CE0AFF3A45 /* libPods-iLinkTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-iLinkTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + CD404A4CBB304396906D30FD /* FontAwesome5_Regular.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = FontAwesome5_Regular.ttf; path = "../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Regular.ttf"; sourceTree = ""; }; + E7BAE9F689504BF1A272F189 /* EvilIcons.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = EvilIcons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/EvilIcons.ttf"; sourceTree = ""; }; + E7F61BC8B3F043DEB001A49B /* Ionicons.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = Ionicons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Ionicons.ttf"; sourceTree = ""; }; + ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; }; + ED2971642150620600B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS12.0.sdk/System/Library/Frameworks/JavaScriptCore.framework; sourceTree = DEVELOPER_DIR; }; + EDB4BCC9B76C4E56B08818DE /* AntDesign.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = AntDesign.ttf; path = "../node_modules/react-native-vector-icons/Fonts/AntDesign.ttf"; sourceTree = ""; }; + F06B49AC4295E7870C57F197 /* Pods-iLinkTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-iLinkTests.release.xcconfig"; path = "Target Support Files/Pods-iLinkTests/Pods-iLinkTests.release.xcconfig"; sourceTree = ""; }; + FC4E2565B33D447DA8A460F6 /* Octicons.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = Octicons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Octicons.ttf"; sourceTree = ""; }; + FD2A4AB5697A43AFB1847EBF /* Entypo.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = Entypo.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Entypo.ttf"; sourceTree = ""; }; + FDCD9BE8BF50443AA7BD469E /* MaterialCommunityIcons.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = MaterialCommunityIcons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf"; sourceTree = ""; }; +>>>>>>> Stashed changes /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -144,6 +194,9 @@ 13B07FB61A68108700A75B9A /* Info.plist */, 13B07FB11A68108700A75B9A /* LaunchScreen.xib */, 13B07FB71A68108700A75B9A /* main.m */, + 0950CB7625C369E4002DCE58 /* iLink.swift */, + 0950CB7425C369E4002DCE58 /* iLink-Bridging-Header.h */, + 0950CB7525C369E4002DCE58 /* iLink-tvOS-Bridging-Header.h */, ); name = iLink; sourceTree = ""; @@ -157,6 +210,47 @@ name = Frameworks; sourceTree = ""; }; +<<<<<<< Updated upstream +======= + 5692DB6C27D4D16CA3EA72F2 /* Pods */ = { + isa = PBXGroup; + children = ( + 6B5B1ED6C9604BCC914FDB3F /* Pods-iLink.debug.xcconfig */, + 9E29955EDCC38C3DB16C2DAA /* Pods-iLink.release.xcconfig */, + 5F84724FB9C359C49286A82D /* Pods-iLink-tvOS.debug.xcconfig */, + C5D02CF4C7FB8081EC5D39A1 /* Pods-iLink-tvOS.release.xcconfig */, + 74EFED96839D4FFFB841ACC3 /* Pods-iLink-tvOSTests.debug.xcconfig */, + 9D97681813B855ABD827A228 /* Pods-iLink-tvOSTests.release.xcconfig */, + A92C402A5C780BD588A18B17 /* Pods-iLinkTests.debug.xcconfig */, + F06B49AC4295E7870C57F197 /* Pods-iLinkTests.release.xcconfig */, + ); + path = Pods; + sourceTree = ""; + }; + 70CCBE06CAA34293B2E5E93C /* Resources */ = { + isa = PBXGroup; + children = ( + EDB4BCC9B76C4E56B08818DE /* AntDesign.ttf */, + FD2A4AB5697A43AFB1847EBF /* Entypo.ttf */, + E7BAE9F689504BF1A272F189 /* EvilIcons.ttf */, + 6592F1E8A3B142358C51BFAA /* Feather.ttf */, + 4B5902E33F2441A88A70005D /* FontAwesome.ttf */, + 727B505113644644B8BB4B0F /* FontAwesome5_Brands.ttf */, + CD404A4CBB304396906D30FD /* FontAwesome5_Regular.ttf */, + 41ED19B6E06E40848718CAD7 /* FontAwesome5_Solid.ttf */, + C6BBB6BE9FD34D9E97BAE047 /* Fontisto.ttf */, + 58438E06EEA04418B8536754 /* Foundation.ttf */, + E7F61BC8B3F043DEB001A49B /* Ionicons.ttf */, + FDCD9BE8BF50443AA7BD469E /* MaterialCommunityIcons.ttf */, + 0D6D645346C344CABDECB816 /* MaterialIcons.ttf */, + FC4E2565B33D447DA8A460F6 /* Octicons.ttf */, + 1425F2C9C3304211A7F8D836 /* SimpleLineIcons.ttf */, + A4257895077D46B5A9FF760C /* Zocial.ttf */, + ); + name = Resources; + sourceTree = ""; + }; +>>>>>>> Stashed changes 832341AE1AAA6A7D00B99B32 /* Libraries */ = { isa = PBXGroup; children = ( @@ -304,8 +398,12 @@ CreatedOnToolsVersion = 6.2; TestTargetID = 13B07F861A680F5B00A75B9A; }; + 13B07F861A680F5B00A75B9A = { + LastSwiftMigration = 1240; + }; 2D02E47A1E0B4A5D006451C7 = { CreatedOnToolsVersion = 8.2.1; + LastSwiftMigration = 1240; ProvisioningStyle = Automatic; }; 2D02E48F1E0B4A5D006451C7 = { @@ -320,6 +418,7 @@ developmentRegion = English; hasScannedForEncodings = 0; knownRegions = ( + English, en, Base, ); @@ -350,22 +449,6 @@ files = ( 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */, 13B07FBD1A68108700A75B9A /* LaunchScreen.xib in Resources */, - 35A1DCD0E722457CAC2F74F5 /* AntDesign.ttf in Resources */, - BB9A3BED399A4672A94195BB /* Entypo.ttf in Resources */, - A8847CA0C05047F3A9966EC1 /* EvilIcons.ttf in Resources */, - 87589B4770BD4A409B0581F0 /* Feather.ttf in Resources */, - 729C14ED6AF948E98E33A929 /* FontAwesome.ttf in Resources */, - 4D66F8D3C07743899281CE8B /* FontAwesome5_Brands.ttf in Resources */, - E9DEAD719CF34486B8C697A8 /* FontAwesome5_Regular.ttf in Resources */, - 4CB883B607B64C9986CABB4A /* FontAwesome5_Solid.ttf in Resources */, - 54B600B0E57B46EB9FD91079 /* Fontisto.ttf in Resources */, - BCC869B783A040D798547B4D /* Foundation.ttf in Resources */, - D9E417C8693D463FA1E052A0 /* Ionicons.ttf in Resources */, - 8467E861973645B490BB34BA /* MaterialCommunityIcons.ttf in Resources */, - 7CBF2A0EEAA14B87947F646B /* MaterialIcons.ttf in Resources */, - 4FD6641294BF4B218C2E3709 /* Octicons.ttf in Resources */, - A0D1E447832646B2B3A08253 /* SimpleLineIcons.ttf in Resources */, - 69A5312C158E470BAF78324D /* Zocial.ttf in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -470,6 +553,7 @@ files = ( 13B07FBC1A68108700A75B9A /* AppDelegate.m in Sources */, 13B07FC11A68108700A75B9A /* main.m in Sources */, + 0950CB7725C369E4002DCE58 /* iLink.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -479,6 +563,7 @@ files = ( 2D02E4BF1E0B4AB3006451C7 /* main.m in Sources */, 2D02E4BC1E0B4A80006451C7 /* AppDelegate.m in Sources */, + 0950CB7825C369E4002DCE58 /* iLink.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -521,6 +606,7 @@ 00E356F61AD99517003FC87E /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; BUNDLE_LOADER = "$(TEST_HOST)"; GCC_PREPROCESSOR_DEFINITIONS = ( "DEBUG=1", @@ -543,6 +629,7 @@ 00E356F71AD99517003FC87E /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; BUNDLE_LOADER = "$(TEST_HOST)"; COPY_PHASE_STRIP = NO; INFOPLIST_FILE = iLinkTests/Info.plist; @@ -563,9 +650,11 @@ isa = XCBuildConfiguration; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; CURRENT_PROJECT_VERSION = 1; DEAD_CODE_STRIPPING = NO; INFOPLIST_FILE = iLink/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; OTHER_LDFLAGS = ( "$(inherited)", @@ -574,6 +663,9 @@ ); PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = iLink; + SWIFT_OBJC_BRIDGING_HEADER = "iLink-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; VERSIONING_SYSTEM = "apple-generic"; }; name = Debug; @@ -582,8 +674,10 @@ isa = XCBuildConfiguration; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; CURRENT_PROJECT_VERSION = 1; INFOPLIST_FILE = iLink/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; OTHER_LDFLAGS = ( "$(inherited)", @@ -592,6 +686,8 @@ ); PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = iLink; + SWIFT_OBJC_BRIDGING_HEADER = "iLink-Bridging-Header.h"; + SWIFT_VERSION = 5.0; VERSIONING_SYSTEM = "apple-generic"; }; name = Release; @@ -602,6 +698,7 @@ ASSETCATALOG_COMPILER_APPICON_NAME = "App Icon & Top Shelf Image"; ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; CLANG_ANALYZER_NONNULL = YES; + CLANG_ENABLE_MODULES = YES; CLANG_WARN_DOCUMENTATION_COMMENTS = YES; CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -618,6 +715,9 @@ PRODUCT_BUNDLE_IDENTIFIER = "com.facebook.REACT.iLink-tvOS"; PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = appletvos; + SWIFT_OBJC_BRIDGING_HEADER = "iLink-tvOS-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = 3; TVOS_DEPLOYMENT_TARGET = 9.2; }; @@ -629,6 +729,7 @@ ASSETCATALOG_COMPILER_APPICON_NAME = "App Icon & Top Shelf Image"; ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; CLANG_ANALYZER_NONNULL = YES; + CLANG_ENABLE_MODULES = YES; CLANG_WARN_DOCUMENTATION_COMMENTS = YES; CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -645,6 +746,8 @@ PRODUCT_BUNDLE_IDENTIFIER = "com.facebook.REACT.iLink-tvOS"; PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = appletvos; + SWIFT_OBJC_BRIDGING_HEADER = "iLink-tvOS-Bridging-Header.h"; + SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = 3; TVOS_DEPLOYMENT_TARGET = 9.2; }; @@ -653,6 +756,7 @@ 2D02E4991E0B4A5E006451C7 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; BUNDLE_LOADER = "$(TEST_HOST)"; CLANG_ANALYZER_NONNULL = YES; CLANG_WARN_DOCUMENTATION_COMMENTS = YES; @@ -679,6 +783,7 @@ 2D02E49A1E0B4A5E006451C7 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; BUNDLE_LOADER = "$(TEST_HOST)"; CLANG_ANALYZER_NONNULL = YES; CLANG_WARN_DOCUMENTATION_COMMENTS = YES; diff --git a/ios/iLink.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/ios/iLink.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 00000000..18d98100 --- /dev/null +++ b/ios/iLink.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/qApp.android.js b/qApp.android.js index 918bb3f5..3d2dad13 100644 --- a/qApp.android.js +++ b/qApp.android.js @@ -8,7 +8,13 @@ import React, {Component} from 'react'; import {Platform, StyleSheet, Text, View} from 'react-native'; -import { createSwitchNavigator, createStackNavigator,createDrawerNavigator, createAppContainer,createBottomTabNavigator } from 'react-navigation'; +import { + createSwitchNavigator, + createStackNavigator, + createDrawerNavigator, + createAppContainer, + createBottomTabNavigator +} from 'react-navigation'; import Connect from "./screens/login/Connect"; import SplashScreen from "./screens/splashscreen/SplashScreen"; import HelpMenu from "./screens/help/HelpMenu"; @@ -33,71 +39,173 @@ import HistoryRequester from "./screens/history-request/HistoryRequester"; import AddNetwork from "./screens/account/AddNetwork"; import MyHistory from "./screens/history-request/MyHistory"; import Icon from "react-native-vector-icons/FontAwesome5"; -import { GoogleAnalyticsTracker } from 'react-native-google-analytics-bridge'; -import { Appbar } from 'react-native-paper'; +import {GoogleAnalyticsTracker} from 'react-native-google-analytics-bridge'; +import {Appbar} from 'react-native-paper'; import IconWithBadge from "./screens/IconWithBadge" import I18n from "react-native-i18n"; import Filter from './screens/home/Filter'; -import { createMaterialBottomTabNavigator } from 'react-navigation-material-bottom-tabs'; +import {createMaterialBottomTabNavigator} from 'react-navigation-material-bottom-tabs'; import Networks from './screens/home/Networks'; + const instructions = Platform.select({ - ios: 'Press Cmd+R to reload,\n' + 'Cmd+D or shake for dev menu', - android: - 'Double tap R on your keyboard to reload,\n' + - 'Shake or press menu button for dev menu', + ios: 'Press Cmd+R to reload,\n' + 'Cmd+D or shake for dev menu', + android: + 'Double tap R on your keyboard to reload,\n' + + 'Shake or press menu button for dev menu', }); type Props = {}; -const theme=require("./utils/theme") -class HomeScreen extends Component { - render() { - return ( - - Welcome to iLink World! - To get started, edit App.js - {instructions} - - ); - } -} -const AuthStack=createStackNavigator({ - login:Connect, - helpMenu:HelpMenu, - help:Help, - forgottenpass:ForgottenPassword, - typeaccountcreate:TypeChoiser, - simpleusercreate:createAccount, - step2:CreateUserStep2, - activateaccout:ActivateAccount +const theme = require("./utils/theme") -},{ +class HomeScreen extends Component { + render() { + return ( + + Welcome to iLink World! + To get started, edit App.js + {instructions} + + ); + } +} + +const AuthStack = createStackNavigator({ + login: Connect, + helpMenu: HelpMenu, + help: Help, + forgottenpass: ForgottenPassword, + typeaccountcreate: TypeChoiser, + simpleusercreate: createAccount, + step2: CreateUserStep2, + activateaccout: ActivateAccount + +}, { headerMode: 'none' }) -const AppStack=createDrawerNavigator({sta:createStackNavigator({ - home:Home, - /* filtre:Filter, - network:Networks,*/ - useraccount:{ - screen:UserAccount, - navigationOptions: { +const AppStack = createDrawerNavigator({ + sta: createStackNavigator({ + home: Home, + /* filtre:Filter, + network:Networks,*/ + useraccount: { + screen: UserAccount, + navigationOptions: {}, }, - }, - notificationview:Notifications, - configuration:Configurations, - about:About + notificationview: Notifications, + configuration: Configurations, + about: About -})},{contentComponent:OptionsMenu,headerMode: 'none',contentOptions:{activeTintColor: theme.accent}}) -const AppAgentStack=createDrawerNavigator({sta:createStackNavigator({ - home:Home, - useraccount:UserAccount, - Historique: - { - screen: createBottomTabNavigator({myDemand: MyHistory}, { + }) +}, {contentComponent: OptionsMenu, headerMode: 'none', contentOptions: {activeTintColor: theme.accent}}) +const AppAgentStack = createDrawerNavigator({ + sta: createStackNavigator({ + home: Home, + useraccount: UserAccount, + Historique: + { + screen: createBottomTabNavigator({myDemand: MyHistory}, { + headerMode: "none", + header: null, + headerTitle: null, + headerTitle: I18n.t('CREDIT_MANAGE'), + tabBarOptions: { + labelStyle: { + fontSize: 13, + fontWeight: "bold" + }, + } + }), + navigationOptions: ({navigation}) => ({ + header: null, + headerMode: 'none', + headerTitle: null, + activeColor: '#f0edf6', + inactiveColor: '#3e2465', + barStyle: {backgroundColor: '#694fad'}, + + drawerLabel: I18n.t('CREDIT_MANAGE'), + drawerIcon: ({tintColor}) => ( + ) + }), + }, + + historyItemDetails: HistoryItemDetails, + creditrequest: HistoryRequester, + addNetwork: AddNetwork, + updateinformation: UpdateInformations, + notificationview: Notifications, + configuration: Configurations, + about: About + }) +}, { + contentComponent: OptionsMenu, + backBehavior: "none", + lazy: false, + headerMode: 'none', contentOptions: {activeTintColor: theme.accent} +}) +const AppAdministratorStack = createDrawerNavigator({ + sta: createStackNavigator({ + home: Home, + useraccount: UserAccount, + Historique: { + screen: createBottomTabNavigator({ + myDemand: MyHistory, OthersDemand: MyHistory + }, { + headerMode: "none", + header: null, + headerTitle: null, + title: I18n.t('CREDIT_MANAGE'), + tabBarOptions: { + labelStyle: { + fontSize: 13, + }, + } + }), + navigationOptions: ({navigation}) => ({ + header: null, + headerMode: 'none', + headerTitle: null, + activeColor: '#f0edf6', + inactiveColor: '#3e2465', + barStyle: {backgroundColor: '#694fad'}, + + drawerLabel: I18n.t('CREDIT_MANAGE'), + drawerIcon: ({tintColor}) => ( + ) + }), + }, + creditrequest: HistoryRequester, + historyItemDetails: HistoryItemDetails, + + superviseurgroup: SuperViseurGroupeHome, + notificationview: Notifications, + configuration: Configurations, + about: About + + }) + }, + { + contentComponent: OptionsMenu, + backBehavior: "none", + headerMode: 'none' + }) +const AppSuperAdministrator = createDrawerNavigator({ + sta: createStackNavigator({ + home: Home, + useraccount: UserAccount, + Historique: { + screen: createBottomTabNavigator({OthersDemand: MyHistory}, { headerMode: "none", - header:null, - headerTitle:null, - headerTitle: I18n.t('CREDIT_MANAGE'), + header: null, + headerTitle: null, + title: I18n.t('CREDIT_MANAGE'), tabBarOptions: { labelStyle: { fontSize: 13, @@ -105,145 +213,62 @@ const AppAgentStack=createDrawerNavigator({sta:createStackNavigator({ }, } }), - navigationOptions: ({ navigation }) => ({ - header:null, - headerMode:'none', - headerTitle:null, - activeColor: '#f0edf6', - inactiveColor: '#3e2465', - barStyle: { backgroundColor: '#694fad' }, - - drawerLabel: I18n.t('CREDIT_MANAGE'), - drawerIcon: ({ tintColor }) => ( + navigationOptions: ({navigation}) => ({ + title: I18n.t('CREDIT_MANAGE'), + headerMode: "none", + header: null, + headerTitle: null, + drawerIcon: ({tintColor}) => ( ) }), }, + creditrequest: HistoryRequester, + historyItemDetails: HistoryItemDetails, + superviseurgroup: SuperViseurGroupeHome, + notificationview: Notifications, + configuration: Configurations, + about: About - historyItemDetails:HistoryItemDetails, - creditrequest:HistoryRequester, - addNetwork:AddNetwork, - updateinformation:UpdateInformations, - notificationview:Notifications, - configuration:Configurations, - about:About -})},{contentComponent:OptionsMenu, - backBehavior:"none", - lazy:false, - headerMode: 'none',contentOptions:{activeTintColor:theme.accent}}) -const AppAdministratorStack=createDrawerNavigator({sta:createStackNavigator({ - home:Home, - useraccount:UserAccount, - Historique:{ - screen:createBottomTabNavigator({ - myDemand:MyHistory,OthersDemand:MyHistory}, { - headerMode:"none", - header:null, - headerTitle:null, - title:I18n.t('CREDIT_MANAGE'), - tabBarOptions: { - labelStyle: { - fontSize: 13, - }, - }}), - navigationOptions: ({ navigation }) => ({ - header:null, - headerMode:'none', - headerTitle:null, - activeColor: '#f0edf6', - inactiveColor: '#3e2465', - barStyle: { backgroundColor: '#694fad' }, - - drawerLabel: I18n.t('CREDIT_MANAGE'), - drawerIcon: ({ tintColor }) => ( - ) - }), + }) +}, { + contentComponent: OptionsMenu, + backBehavior: "none", + headerMode: 'none' +}) +export const AppNavigator = createSwitchNavigator({ + first: { + screen: SplashScreen }, - creditrequest:HistoryRequester, - historyItemDetails:HistoryItemDetails, - - superviseurgroup:SuperViseurGroupeHome, - notificationview:Notifications, - configuration:Configurations, - about:About - -})}, - {contentComponent:OptionsMenu, - backBehavior:"none", - headerMode: 'none'}) -const AppSuperAdministrator=createDrawerNavigator({sta:createStackNavigator({ - home:Home, - useraccount:UserAccount, - Historique:{ - screen:createBottomTabNavigator({OthersDemand:MyHistory}, { - headerMode:"none", - header:null, - headerTitle:null, - title:I18n.t('CREDIT_MANAGE'), - tabBarOptions: { - labelStyle: { - fontSize: 13, - fontWeight:"bold" - }, - }}), - navigationOptions: ({ navigation }) => ({ - title: I18n.t('CREDIT_MANAGE'), - headerMode:"none", - header:null, - headerTitle:null, - drawerIcon: ({ tintColor }) => ( - ) - }), - }, - creditrequest:HistoryRequester, - historyItemDetails:HistoryItemDetails, - superviseurgroup:SuperViseurGroupeHome, - notificationview:Notifications, - configuration:Configurations, - about:About - -})},{contentComponent:OptionsMenu, - backBehavior:"none", - headerMode: 'none'}) -export const AppNavigator =createSwitchNavigator({ - first: { - screen: SplashScreen - }, - App:AppStack, - AgentApp:AppAgentStack, - adminApp:AppAdministratorStack, - supAdminApp:AppSuperAdministrator, - Auth:AuthStack -},{ - initialRouteName: 'first' + App: AppStack, + AgentApp: AppAgentStack, + adminApp: AppAdministratorStack, + supAdminApp: AppSuperAdministrator, + Auth: AuthStack +}, { + initialRouteName: 'first' }); const AppContainer = createAppContainer(AppNavigator); export default AppContainer; const styles = StyleSheet.create({ - container: { - flex: 1, - justifyContent: 'center', - alignItems: 'center', - backgroundColor: '#F5FCFF', - }, - welcome: { - fontSize: 20, - textAlign: 'center', - margin: 10, - }, - instructions: { - textAlign: 'center', - color: '#333333', - marginBottom: 5, - }, + container: { + flex: 1, + justifyContent: 'center', + alignItems: 'center', + backgroundColor: '#F5FCFF', + }, + welcome: { + fontSize: 20, + textAlign: 'center', + margin: 10, + }, + instructions: { + textAlign: 'center', + color: '#333333', + marginBottom: 5, + }, });