@fadyshawky/react-native-magic 1.0.4 → 1.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,14 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file.
4
4
 
5
+ ## [1.0.5] - 2024-12-23
6
+
7
+ ### Fixed
8
+ - Resolved Android build configuration issues
9
+ - Fixed package dependencies setup and initialization
10
+ - Optimized Gradle build settings for Android
11
+ - Fixed iOS permissions configuration
12
+
5
13
  ## [1.0.4] - 2024-12-22
6
14
 
7
15
  ### Fixed
package/README.md CHANGED
@@ -249,11 +249,9 @@ This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md
249
249
 
250
250
  ## Support
251
251
 
252
- If you find this template helpful, consider buying me a coffee! ☕️
252
+ If you find this template helpful, consider buying me a beer! 🍺
253
253
 
254
- <a href="https://www.buymeacoffee.com/fadytshawke" target="_blank">
255
- <img src="https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png" alt="Buy Me A Coffee" height="60px" width="217px">
256
- </a>
254
+ <a href="https://www.buymeacoffee.com/fadytshawke"><img src="https://img.buymeacoffee.com/button-api/?text=Buy me a beer&emoji=🍺&slug=fadytshawke&button_colour=FFDD00&font_colour=000000&font_family=Cookie&outline_colour=000000&coffee_colour=ffffff" /></a>
257
255
 
258
256
  ## Author
259
257
 
@@ -0,0 +1 @@
1
+
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fadyshawky/react-native-magic",
3
- "version": "1.0.4",
3
+ "version": "1.0.5",
4
4
  "description": "react native template with ready components, hooks, react navigation, redux, typescript, etc.",
5
5
  "keywords": [
6
6
  "react-native-magic",
@@ -65,8 +65,6 @@
65
65
  "react-native-orientation-locker": "^1.7.0",
66
66
  "react-native-pager-view": "^6.6.1",
67
67
  "react-native-permissions": "^5.2.1",
68
- "react-native-reanimated": "^3.16.6",
69
- "react-native-reanimated-carousel": "^3.5.1",
70
68
  "react-native-safe-area-context": "^5.0.0",
71
69
  "react-native-screens": "^4.4.0",
72
70
  "react-native-sfsymbols": "^1.2.2",
@@ -1,5 +1,8 @@
1
+ # Don't forget to add the .env.development file to the .gitignore file
2
+ ENV=development
1
3
  API_BASE_URL=https://dev-api.example.com
2
4
  API_KEY=dev_key
3
5
  ANDROID_APP_ID=com.reactnativemagic.development
4
6
  ANDROID_VERSION_CODE=1
5
7
  ANDROID_VERSION_NAME=1.0.0
8
+ PROJECT_NAME=YOURAPPNAME
@@ -1,5 +1,8 @@
1
+ # Don't forget to add the .env.production file to the .gitignore file
2
+ ENV=production
1
3
  API_BASE_URL=https://api.example.com
2
4
  API_KEY=production_key
3
5
  ANDROID_APP_ID=com.reactnativemagic
4
6
  ANDROID_VERSION_CODE=1
5
- ANDROID_VERSION_NAME=1.0.0
7
+ ANDROID_VERSION_NAME=1.0.0
8
+ PROJECT_NAME=YOURAPPNAME
@@ -1,5 +1,8 @@
1
+ # Don't forget to add the .env.staging file to the .gitignore file
2
+ ENV=staging
1
3
  API_BASE_URL=https://staging-api.example.com
2
4
  API_KEY=staging_key
3
5
  ANDROID_APP_ID=com.reactnativemagic.staging
4
6
  ANDROID_VERSION_CODE=1
5
- ANDROID_VERSION_NAME=1.0.0
7
+ ANDROID_VERSION_NAME=1.0.0
8
+ PROJECT_NAME=YOURAPPNAME
package/template/App.tsx CHANGED
@@ -4,11 +4,6 @@
4
4
  *
5
5
  * @format
6
6
  */
7
- import '@fontsource/poppins/300.css'; // Light
8
- import '@fontsource/poppins/400.css'; // Regular
9
- import '@fontsource/poppins/500.css'; // Medium
10
- import '@fontsource/poppins/600.css'; // SemiBold
11
- import '@fontsource/poppins/700.css'; // Bold
12
7
  import React from 'react';
13
8
  import {LogBox, SafeAreaView, StatusBar} from 'react-native';
14
9
  import {SheetProvider} from 'react-native-actions-sheet';
@@ -3,12 +3,25 @@ apply plugin: "org.jetbrains.kotlin.android"
3
3
  apply plugin: "com.facebook.react"
4
4
 
5
5
  project.ext.envConfigFiles = [
6
- debug: ".env.debug",
7
- release: ".env.production",
8
- // Add other env files as needed
6
+ production: ".env.production",
7
+ staging: ".env.staging",
8
+ development: ".env.development"
9
+ ]
10
+ apply from: project(":react-native-config").projectDir.getPath() + "/dotenv.gradle"
11
+ project.ext.react = [
12
+ root: "../../",
13
+ bundleAssetName: "index.android.bundle",
14
+ entryFile: "index.js",
15
+ cliPath: "node_modules/haul/bin/cli.js",
16
+ devDisabledInAppDev: true,
17
+ devDisabledInAppTest: true,
18
+ devDisabledInRelease: true,
19
+ bundleInAppDev: true,
20
+ bundleInAppTest: true,
21
+ bundleInRelease: true,
22
+ enableHermes: true,
23
+ enableVmCleanup: false,
9
24
  ]
10
-
11
- apply from: project(':react-native-config').projectDir.getPath() + "/dotenv.gradle"
12
25
 
13
26
  /**
14
27
  * This is the configuration block to customize your React Native Android app.
@@ -83,16 +96,47 @@ def jscFlavor = 'org.webkit:android-jsc:+'
83
96
  android {
84
97
  ndkVersion rootProject.ext.ndkVersion
85
98
  buildToolsVersion rootProject.ext.buildToolsVersion
86
- compileSdk rootProject.ext.compileSdkVersion
99
+ compileSdkVersion rootProject.ext.compileSdkVersion
100
+
101
+ flavorDimensions "default"
102
+ productFlavors {
103
+ production {
104
+ minSdkVersion rootProject.ext.minSdkVersion
105
+ applicationId project.env.get("APP_ID")
106
+ targetSdkVersion rootProject.ext.targetSdkVersion
107
+ }
108
+ staging {
109
+ minSdkVersion rootProject.ext.minSdkVersion
110
+ applicationId project.env.get("APP_ID")
111
+ targetSdkVersion rootProject.ext.targetSdkVersion
112
+ }
113
+ development {
114
+ minSdkVersion rootProject.ext.minSdkVersion
115
+ applicationId project.env.get("APP_ID")
116
+ targetSdkVersion rootProject.ext.targetSdkVersion
117
+ }
118
+ }
87
119
 
88
120
  namespace "com.reactnativemagic"
89
121
  defaultConfig {
90
122
  applicationId project.env.get("ANDROID_APP_ID")
91
123
  minSdkVersion rootProject.ext.minSdkVersion
124
+ multiDexEnabled true
92
125
  targetSdkVersion rootProject.ext.targetSdkVersion
93
126
  versionCode project.env.get("ANDROID_VERSION_CODE").toInteger()
94
127
  versionName project.env.get("ANDROID_VERSION_NAME")
95
128
  resValue "string", "build_config_package", project.env.get("ANDROID_APP_ID")
129
+
130
+ ndk {
131
+ abiFilters "armeabi-v7a", "arm64-v8a", "x86", "x86_64"
132
+ }
133
+
134
+ externalNativeBuild {
135
+ cmake {
136
+ version "3.22.1" // Use the version you see in SDK Manager
137
+ cppFlags ""
138
+ }
139
+ }
96
140
  }
97
141
  signingConfigs {
98
142
  debug {
@@ -114,6 +158,27 @@ android {
114
158
  proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
115
159
  }
116
160
  }
161
+
162
+ applicationVariants.all { variant ->
163
+ variant.outputs.all { output ->
164
+
165
+ // For each separate APK per architecture, set a unique version code as described here:
166
+ // http://tools.android.com/tech-docs/new-build-system/user-guide/apk-splits
167
+
168
+
169
+ def projectName = project.env.get("PROJECT_NAME")
170
+ def SEP = "_"
171
+
172
+ def newApkName = projectName + SEP + project.env.get("ENV") + SEP + project.env.get("ANDROID_VERSION_NAME") + SEP + project.env.get("ANDROID_VERSION_CODE") + ".apk"
173
+
174
+
175
+ println "Naming File ... " + newApkName
176
+
177
+ outputFileName = new File(newApkName)
178
+ output.outputFileName = outputFileName
179
+
180
+ }
181
+ }
117
182
  }
118
183
 
119
184
  dependencies {
@@ -1,6 +1,8 @@
1
1
  <manifest xmlns:android="http://schemas.android.com/apk/res/android">
2
2
 
3
3
  <uses-permission android:name="android.permission.INTERNET" />
4
+ <uses-permission android:name="android.permission.CAMERA" />
5
+ <uses-permission android:name="android.permission.RECORD_AUDIO" />
4
6
 
5
7
  <application
6
8
  android:name=".MainApplication"
@@ -21,7 +21,6 @@ org.gradle.jvmargs=-Xmx2048m -XX:MaxMetaspaceSize=512m
21
21
  # Android operating system, and which are packaged with your app's APK
22
22
  # https://developer.android.com/topic/libraries/support-library/androidx-rn
23
23
  android.useAndroidX=true
24
-
25
24
  # Use this property to specify which architecture you want to build.
26
25
  # You can also override it from the CLI using
27
26
  # ./gradlew <task> -PreactNativeArchitectures=x86_64
@@ -1,3 +1,4 @@
1
1
  module.exports = {
2
2
  presets: ['module:@react-native/babel-preset'],
3
+ plugins: ['react-native-reanimated/plugin'],
3
4
  };
package/template/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @format
3
3
  */
4
-
4
+ import 'react-native-gesture-handler';
5
5
  import {AppRegistry} from 'react-native';
6
6
  import App from './App';
7
7
  import {name as appName} from './app.json';
@@ -1,13 +1,44 @@
1
- # Resolve react_native_pods.rb with node to allow for hoisting
2
- require Pod::Executable.execute_command('node', ['-p',
3
- 'require.resolve(
4
- "react-native/scripts/react_native_pods.rb",
5
- {paths: [process.argv[1]]},
6
- )', __dir__]).strip
1
+
2
+ def node_require(script)
3
+ # Resolve script with node to allow for hoisting
4
+ require Pod::Executable.execute_command('node', ['-p',
5
+ "require.resolve(
6
+ '#{script}',
7
+ {paths: [process.argv[1]]},
8
+ )", __dir__]).strip
9
+ end
10
+
11
+ # Use it to require both react-native's and this package's scripts:
12
+ node_require('react-native/scripts/react_native_pods.rb')
13
+ node_require('react-native-permissions/scripts/setup.rb')
7
14
 
8
15
  platform :ios, min_ios_version_supported
9
16
  prepare_react_native_project!
10
17
 
18
+ # ⬇️ uncomment the permissions you need
19
+ setup_permissions([
20
+ # 'AppTrackingTransparency',
21
+ # 'Bluetooth',
22
+ # 'Calendars',
23
+ # 'CalendarsWriteOnly',
24
+ 'Camera',
25
+ # 'Contacts',
26
+ # 'FaceID',
27
+ # 'LocationAccuracy',
28
+ # 'LocationAlways',
29
+ # 'LocationWhenInUse',
30
+ # 'MediaLibrary',
31
+ # 'Microphone',
32
+ # 'Motion',
33
+ # 'Notifications',
34
+ # 'PhotoLibrary',
35
+ # 'PhotoLibraryAddOnly',
36
+ # 'Reminders',
37
+ # 'Siri',
38
+ # 'SpeechRecognition',
39
+ # 'StoreKit',
40
+ ])
41
+
11
42
  linkage = ENV['USE_FRAMEWORKS']
12
43
  if linkage != nil
13
44
  Pod::UI.puts "Configuring Pod with #{linkage}ally linked Frameworks".green
@@ -2424,7 +2424,7 @@ SPEC CHECKSUMS:
2424
2424
  RNFlashList: 2af1645548006fe5e4586c8c3d7e84f060a5478f
2425
2425
  RNGestureHandler: 0e5ae8d72ef4afb855e98dcdbe60f27d938abe13
2426
2426
  RNImageCropPicker: 8e39c01f205e00d739c31e682f068aac315587bf
2427
- RNPermissions: 39a675044df2cacca9216aa2141959e13faea625
2427
+ RNPermissions: a2215c93e4377ee4605de0fdfa68ebba153fd5a4
2428
2428
  RNReanimated: 56fffbede49b5bddb327616096e822f342978794
2429
2429
  RNScreens: d022507f2b6d76c73335e9e35aedcf7bb2f791b0
2430
2430
  RNShare: 05e577d8a74e5647a5cf753cd5e038623676392b
@@ -2436,6 +2436,6 @@ SPEC CHECKSUMS:
2436
2436
  VisionCamera: 598ab83c6bf4d65f5c32ec54361eed866505d388
2437
2437
  Yoga: fcc198acd4a55599b3468cfb6ebc526baff5f06e
2438
2438
 
2439
- PODFILE CHECKSUM: 820db672bab33b85da1c176ce60a11cdbabd6c2d
2439
+ PODFILE CHECKSUM: 03afa8c8b30bf768dd3ad3a051da20bf46eb45ed
2440
2440
 
2441
2441
  COCOAPODS: 1.15.2
@@ -32,6 +32,10 @@
32
32
  <key>NSAllowsLocalNetworking</key>
33
33
  <true/>
34
34
  </dict>
35
+ <key>NSCameraUsageDescription</key>
36
+ <string>$(PRODUCT_NAME) needs access to your Camera.</string>
37
+ <key>NSMicrophoneUsageDescription</key>
38
+ <string>$(PRODUCT_NAME) needs access to your Microphone.</string>
35
39
  <key>NSLocationWhenInUseUsageDescription</key>
36
40
  <string></string>
37
41
  <key>UILaunchStoryboardName</key>
@@ -11,15 +11,15 @@
11
11
  13B07FBC1A68108700A75B9A /* AppDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.mm */; };
12
12
  13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; };
13
13
  13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; };
14
- 44CEDDADA0FFEFA1C02AD162 /* libPods-reactnativemagic.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 72FCDE6D8263C5D62A717153 /* libPods-reactnativemagic.a */; };
15
14
  52BF1DA92D160E8100046137 /* AppDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.mm */; };
16
15
  52BF1DAA2D160E8100046137 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; };
17
16
  52BF1DAE2D160E8100046137 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */; };
18
17
  52BF1DAF2D160E8100046137 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; };
19
18
  52BF1DB02D160E8100046137 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB81A68108700A75B9A /* PrivacyInfo.xcprivacy */; };
19
+ 77D16B02A575BB6A60CE8704 /* libPods-reactnativemagic.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 93FAE7E83CECE25ADEF8D6BE /* libPods-reactnativemagic.a */; };
20
20
  81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */; };
21
21
  910638E3E666DD629C55D964 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB81A68108700A75B9A /* PrivacyInfo.xcprivacy */; };
22
- F5460503102D1B15F9526BEA /* libPods-reactnativemagic-reactnativemagicTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 7E0F08C4FA8BBC7D24AE0AD6 /* libPods-reactnativemagic-reactnativemagicTests.a */; };
22
+ E388856903F4421DBD82E0F1 /* libPods-reactnativemagic-reactnativemagicTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FCEF4990B6E3214444BBD14A /* libPods-reactnativemagic-reactnativemagicTests.a */; };
23
23
  /* End PBXBuildFile section */
24
24
 
25
25
  /* Begin PBXContainerItemProxy section */
@@ -36,7 +36,6 @@
36
36
  00E356EE1AD99517003FC87E /* reactnativemagicTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = reactnativemagicTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
37
37
  00E356F11AD99517003FC87E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
38
38
  00E356F21AD99517003FC87E /* reactnativemagicTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = reactnativemagicTests.m; sourceTree = "<group>"; };
39
- 123D2B186506039FFA026D6C /* Pods-reactnativemagic-reactnativemagicTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-reactnativemagic-reactnativemagicTests.release.xcconfig"; path = "Target Support Files/Pods-reactnativemagic-reactnativemagicTests/Pods-reactnativemagic-reactnativemagicTests.release.xcconfig"; sourceTree = "<group>"; };
40
39
  13B07F961A680F5B00A75B9A /* reactnativemagic.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = reactnativemagic.app; sourceTree = BUILT_PRODUCTS_DIR; };
41
40
  13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = reactnativemagic/AppDelegate.h; sourceTree = "<group>"; };
42
41
  13B07FB01A68108700A75B9A /* AppDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = AppDelegate.mm; path = reactnativemagic/AppDelegate.mm; sourceTree = "<group>"; };
@@ -44,15 +43,16 @@
44
43
  13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = reactnativemagic/Info.plist; sourceTree = "<group>"; };
45
44
  13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = reactnativemagic/main.m; sourceTree = "<group>"; };
46
45
  13B07FB81A68108700A75B9A /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = PrivacyInfo.xcprivacy; path = reactnativemagic/PrivacyInfo.xcprivacy; sourceTree = "<group>"; };
47
- 2FC2A41A7C9CECF77A6F86E9 /* Pods-reactnativemagic.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-reactnativemagic.release.xcconfig"; path = "Target Support Files/Pods-reactnativemagic/Pods-reactnativemagic.release.xcconfig"; sourceTree = "<group>"; };
46
+ 465754F1499D1884290F3C3F /* Pods-reactnativemagic-reactnativemagicTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-reactnativemagic-reactnativemagicTests.debug.xcconfig"; path = "Target Support Files/Pods-reactnativemagic-reactnativemagicTests/Pods-reactnativemagic-reactnativemagicTests.debug.xcconfig"; sourceTree = "<group>"; };
48
47
  52BF1DB72D160E8100046137 /* reactnativemagic-Development.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "reactnativemagic-Development.app"; sourceTree = BUILT_PRODUCTS_DIR; };
49
48
  52BF1DB82D160E8100046137 /* reactnativemagic copy-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = "reactnativemagic copy-Info.plist"; path = "/Users/fady/Dev/template/ReactNativeMagic/template/ios/reactnativemagic copy-Info.plist"; sourceTree = "<absolute>"; };
50
- 56A7F0350C455B9C5A7234F8 /* Pods-reactnativemagic-reactnativemagicTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-reactnativemagic-reactnativemagicTests.debug.xcconfig"; path = "Target Support Files/Pods-reactnativemagic-reactnativemagicTests/Pods-reactnativemagic-reactnativemagicTests.debug.xcconfig"; sourceTree = "<group>"; };
51
- 72FCDE6D8263C5D62A717153 /* libPods-reactnativemagic.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-reactnativemagic.a"; sourceTree = BUILT_PRODUCTS_DIR; };
52
- 7E0F08C4FA8BBC7D24AE0AD6 /* libPods-reactnativemagic-reactnativemagicTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-reactnativemagic-reactnativemagicTests.a"; sourceTree = BUILT_PRODUCTS_DIR; };
49
+ 704B3B865C81C25269E97AE9 /* Pods-reactnativemagic.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-reactnativemagic.debug.xcconfig"; path = "Target Support Files/Pods-reactnativemagic/Pods-reactnativemagic.debug.xcconfig"; sourceTree = "<group>"; };
53
50
  81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = LaunchScreen.storyboard; path = reactnativemagic/LaunchScreen.storyboard; sourceTree = "<group>"; };
51
+ 8E6E7224800FB3999B451268 /* Pods-reactnativemagic.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-reactnativemagic.release.xcconfig"; path = "Target Support Files/Pods-reactnativemagic/Pods-reactnativemagic.release.xcconfig"; sourceTree = "<group>"; };
52
+ 93FAE7E83CECE25ADEF8D6BE /* libPods-reactnativemagic.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-reactnativemagic.a"; sourceTree = BUILT_PRODUCTS_DIR; };
53
+ A76280FB51D3CE1B55E47DD9 /* Pods-reactnativemagic-reactnativemagicTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-reactnativemagic-reactnativemagicTests.release.xcconfig"; path = "Target Support Files/Pods-reactnativemagic-reactnativemagicTests/Pods-reactnativemagic-reactnativemagicTests.release.xcconfig"; sourceTree = "<group>"; };
54
54
  ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; };
55
- F4E5443D5B5729DC581A3C5D /* Pods-reactnativemagic.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-reactnativemagic.debug.xcconfig"; path = "Target Support Files/Pods-reactnativemagic/Pods-reactnativemagic.debug.xcconfig"; sourceTree = "<group>"; };
55
+ FCEF4990B6E3214444BBD14A /* libPods-reactnativemagic-reactnativemagicTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-reactnativemagic-reactnativemagicTests.a"; sourceTree = BUILT_PRODUCTS_DIR; };
56
56
  /* End PBXFileReference section */
57
57
 
58
58
  /* Begin PBXFrameworksBuildPhase section */
@@ -60,7 +60,7 @@
60
60
  isa = PBXFrameworksBuildPhase;
61
61
  buildActionMask = 2147483647;
62
62
  files = (
63
- F5460503102D1B15F9526BEA /* libPods-reactnativemagic-reactnativemagicTests.a in Frameworks */,
63
+ E388856903F4421DBD82E0F1 /* libPods-reactnativemagic-reactnativemagicTests.a in Frameworks */,
64
64
  );
65
65
  runOnlyForDeploymentPostprocessing = 0;
66
66
  };
@@ -68,7 +68,7 @@
68
68
  isa = PBXFrameworksBuildPhase;
69
69
  buildActionMask = 2147483647;
70
70
  files = (
71
- 44CEDDADA0FFEFA1C02AD162 /* libPods-reactnativemagic.a in Frameworks */,
71
+ 77D16B02A575BB6A60CE8704 /* libPods-reactnativemagic.a in Frameworks */,
72
72
  );
73
73
  runOnlyForDeploymentPostprocessing = 0;
74
74
  };
@@ -117,8 +117,8 @@
117
117
  isa = PBXGroup;
118
118
  children = (
119
119
  ED297162215061F000B7C4FE /* JavaScriptCore.framework */,
120
- 72FCDE6D8263C5D62A717153 /* libPods-reactnativemagic.a */,
121
- 7E0F08C4FA8BBC7D24AE0AD6 /* libPods-reactnativemagic-reactnativemagicTests.a */,
120
+ 93FAE7E83CECE25ADEF8D6BE /* libPods-reactnativemagic.a */,
121
+ FCEF4990B6E3214444BBD14A /* libPods-reactnativemagic-reactnativemagicTests.a */,
122
122
  );
123
123
  name = Frameworks;
124
124
  sourceTree = "<group>";
@@ -159,10 +159,10 @@
159
159
  BBD78D7AC51CEA395F1C20DB /* Pods */ = {
160
160
  isa = PBXGroup;
161
161
  children = (
162
- F4E5443D5B5729DC581A3C5D /* Pods-reactnativemagic.debug.xcconfig */,
163
- 2FC2A41A7C9CECF77A6F86E9 /* Pods-reactnativemagic.release.xcconfig */,
164
- 56A7F0350C455B9C5A7234F8 /* Pods-reactnativemagic-reactnativemagicTests.debug.xcconfig */,
165
- 123D2B186506039FFA026D6C /* Pods-reactnativemagic-reactnativemagicTests.release.xcconfig */,
162
+ 704B3B865C81C25269E97AE9 /* Pods-reactnativemagic.debug.xcconfig */,
163
+ 8E6E7224800FB3999B451268 /* Pods-reactnativemagic.release.xcconfig */,
164
+ 465754F1499D1884290F3C3F /* Pods-reactnativemagic-reactnativemagicTests.debug.xcconfig */,
165
+ A76280FB51D3CE1B55E47DD9 /* Pods-reactnativemagic-reactnativemagicTests.release.xcconfig */,
166
166
  );
167
167
  path = Pods;
168
168
  sourceTree = "<group>";
@@ -174,12 +174,12 @@
174
174
  isa = PBXNativeTarget;
175
175
  buildConfigurationList = 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "reactnativemagicTests" */;
176
176
  buildPhases = (
177
- EED047F6BD1AA157DA019A41 /* [CP] Check Pods Manifest.lock */,
177
+ 9280AC1AD30334278122A6BE /* [CP] Check Pods Manifest.lock */,
178
178
  00E356EA1AD99517003FC87E /* Sources */,
179
179
  00E356EB1AD99517003FC87E /* Frameworks */,
180
180
  00E356EC1AD99517003FC87E /* Resources */,
181
- 6885AAAF4A337A2C83681DB7 /* [CP] Embed Pods Frameworks */,
182
- 2EF2E59BD6FE2C5EBC2BB493 /* [CP] Copy Pods Resources */,
181
+ A980D2E5A3C346157E5020A9 /* [CP] Embed Pods Frameworks */,
182
+ C130977123E4EDA0DC4DCAC1 /* [CP] Copy Pods Resources */,
183
183
  );
184
184
  buildRules = (
185
185
  );
@@ -195,13 +195,13 @@
195
195
  isa = PBXNativeTarget;
196
196
  buildConfigurationList = 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "reactnativemagic" */;
197
197
  buildPhases = (
198
- C72E6C65FAFBA98366933A78 /* [CP] Check Pods Manifest.lock */,
198
+ 93218D9147EB08B1CDC0B329 /* [CP] Check Pods Manifest.lock */,
199
199
  13B07F871A680F5B00A75B9A /* Sources */,
200
200
  13B07F8C1A680F5B00A75B9A /* Frameworks */,
201
201
  13B07F8E1A680F5B00A75B9A /* Resources */,
202
202
  00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */,
203
- EAE36A1A92A8C5319B9244BA /* [CP] Embed Pods Frameworks */,
204
- B397E35E78379B2686A7DC44 /* [CP] Copy Pods Resources */,
203
+ C9BDCEA7C1A8090D8F420D7A /* [CP] Embed Pods Frameworks */,
204
+ C3B4B1699B3C5FC05FEDA60D /* [CP] Copy Pods Resources */,
205
205
  );
206
206
  buildRules = (
207
207
  );
@@ -314,132 +314,132 @@
314
314
  shellPath = /bin/sh;
315
315
  shellScript = "set -e\n\nWITH_ENVIRONMENT=\"$REACT_NATIVE_PATH/scripts/xcode/with-environment.sh\"\nREACT_NATIVE_XCODE=\"$REACT_NATIVE_PATH/scripts/react-native-xcode.sh\"\n\n/bin/sh -c \"$WITH_ENVIRONMENT $REACT_NATIVE_XCODE\"\n";
316
316
  };
317
- 2EF2E59BD6FE2C5EBC2BB493 /* [CP] Copy Pods Resources */ = {
317
+ 52BF1DB12D160E8100046137 /* Bundle React Native code and images */ = {
318
318
  isa = PBXShellScriptBuildPhase;
319
319
  buildActionMask = 2147483647;
320
320
  files = (
321
321
  );
322
- inputFileListPaths = (
323
- "${PODS_ROOT}/Target Support Files/Pods-reactnativemagic-reactnativemagicTests/Pods-reactnativemagic-reactnativemagicTests-resources-${CONFIGURATION}-input-files.xcfilelist",
322
+ inputPaths = (
323
+ "$(SRCROOT)/.xcode.env.local",
324
+ "$(SRCROOT)/.xcode.env",
324
325
  );
325
- name = "[CP] Copy Pods Resources";
326
- outputFileListPaths = (
327
- "${PODS_ROOT}/Target Support Files/Pods-reactnativemagic-reactnativemagicTests/Pods-reactnativemagic-reactnativemagicTests-resources-${CONFIGURATION}-output-files.xcfilelist",
326
+ name = "Bundle React Native code and images";
327
+ outputPaths = (
328
328
  );
329
329
  runOnlyForDeploymentPostprocessing = 0;
330
330
  shellPath = /bin/sh;
331
- shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-reactnativemagic-reactnativemagicTests/Pods-reactnativemagic-reactnativemagicTests-resources.sh\"\n";
332
- showEnvVarsInLog = 0;
331
+ shellScript = "set -e\n\nWITH_ENVIRONMENT=\"$REACT_NATIVE_PATH/scripts/xcode/with-environment.sh\"\nREACT_NATIVE_XCODE=\"$REACT_NATIVE_PATH/scripts/react-native-xcode.sh\"\n\n/bin/sh -c \"$WITH_ENVIRONMENT $REACT_NATIVE_XCODE\"\n";
333
332
  };
334
- 52BF1DB12D160E8100046137 /* Bundle React Native code and images */ = {
333
+ 9280AC1AD30334278122A6BE /* [CP] Check Pods Manifest.lock */ = {
335
334
  isa = PBXShellScriptBuildPhase;
336
335
  buildActionMask = 2147483647;
337
336
  files = (
338
337
  );
338
+ inputFileListPaths = (
339
+ );
339
340
  inputPaths = (
340
- "$(SRCROOT)/.xcode.env.local",
341
- "$(SRCROOT)/.xcode.env",
341
+ "${PODS_PODFILE_DIR_PATH}/Podfile.lock",
342
+ "${PODS_ROOT}/Manifest.lock",
343
+ );
344
+ name = "[CP] Check Pods Manifest.lock";
345
+ outputFileListPaths = (
342
346
  );
343
- name = "Bundle React Native code and images";
344
347
  outputPaths = (
348
+ "$(DERIVED_FILE_DIR)/Pods-reactnativemagic-reactnativemagicTests-checkManifestLockResult.txt",
345
349
  );
346
350
  runOnlyForDeploymentPostprocessing = 0;
347
351
  shellPath = /bin/sh;
348
- shellScript = "set -e\n\nWITH_ENVIRONMENT=\"$REACT_NATIVE_PATH/scripts/xcode/with-environment.sh\"\nREACT_NATIVE_XCODE=\"$REACT_NATIVE_PATH/scripts/react-native-xcode.sh\"\n\n/bin/sh -c \"$WITH_ENVIRONMENT $REACT_NATIVE_XCODE\"\n";
352
+ shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
353
+ showEnvVarsInLog = 0;
349
354
  };
350
- 6885AAAF4A337A2C83681DB7 /* [CP] Embed Pods Frameworks */ = {
355
+ 93218D9147EB08B1CDC0B329 /* [CP] Check Pods Manifest.lock */ = {
351
356
  isa = PBXShellScriptBuildPhase;
352
357
  buildActionMask = 2147483647;
353
358
  files = (
354
359
  );
355
360
  inputFileListPaths = (
356
- "${PODS_ROOT}/Target Support Files/Pods-reactnativemagic-reactnativemagicTests/Pods-reactnativemagic-reactnativemagicTests-frameworks-${CONFIGURATION}-input-files.xcfilelist",
357
361
  );
358
- name = "[CP] Embed Pods Frameworks";
362
+ inputPaths = (
363
+ "${PODS_PODFILE_DIR_PATH}/Podfile.lock",
364
+ "${PODS_ROOT}/Manifest.lock",
365
+ );
366
+ name = "[CP] Check Pods Manifest.lock";
359
367
  outputFileListPaths = (
360
- "${PODS_ROOT}/Target Support Files/Pods-reactnativemagic-reactnativemagicTests/Pods-reactnativemagic-reactnativemagicTests-frameworks-${CONFIGURATION}-output-files.xcfilelist",
368
+ );
369
+ outputPaths = (
370
+ "$(DERIVED_FILE_DIR)/Pods-reactnativemagic-checkManifestLockResult.txt",
361
371
  );
362
372
  runOnlyForDeploymentPostprocessing = 0;
363
373
  shellPath = /bin/sh;
364
- shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-reactnativemagic-reactnativemagicTests/Pods-reactnativemagic-reactnativemagicTests-frameworks.sh\"\n";
374
+ shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
365
375
  showEnvVarsInLog = 0;
366
376
  };
367
- B397E35E78379B2686A7DC44 /* [CP] Copy Pods Resources */ = {
377
+ A980D2E5A3C346157E5020A9 /* [CP] Embed Pods Frameworks */ = {
368
378
  isa = PBXShellScriptBuildPhase;
369
379
  buildActionMask = 2147483647;
370
380
  files = (
371
381
  );
372
382
  inputFileListPaths = (
373
- "${PODS_ROOT}/Target Support Files/Pods-reactnativemagic/Pods-reactnativemagic-resources-${CONFIGURATION}-input-files.xcfilelist",
383
+ "${PODS_ROOT}/Target Support Files/Pods-reactnativemagic-reactnativemagicTests/Pods-reactnativemagic-reactnativemagicTests-frameworks-${CONFIGURATION}-input-files.xcfilelist",
374
384
  );
375
- name = "[CP] Copy Pods Resources";
385
+ name = "[CP] Embed Pods Frameworks";
376
386
  outputFileListPaths = (
377
- "${PODS_ROOT}/Target Support Files/Pods-reactnativemagic/Pods-reactnativemagic-resources-${CONFIGURATION}-output-files.xcfilelist",
387
+ "${PODS_ROOT}/Target Support Files/Pods-reactnativemagic-reactnativemagicTests/Pods-reactnativemagic-reactnativemagicTests-frameworks-${CONFIGURATION}-output-files.xcfilelist",
378
388
  );
379
389
  runOnlyForDeploymentPostprocessing = 0;
380
390
  shellPath = /bin/sh;
381
- shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-reactnativemagic/Pods-reactnativemagic-resources.sh\"\n";
391
+ shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-reactnativemagic-reactnativemagicTests/Pods-reactnativemagic-reactnativemagicTests-frameworks.sh\"\n";
382
392
  showEnvVarsInLog = 0;
383
393
  };
384
- C72E6C65FAFBA98366933A78 /* [CP] Check Pods Manifest.lock */ = {
394
+ C130977123E4EDA0DC4DCAC1 /* [CP] Copy Pods Resources */ = {
385
395
  isa = PBXShellScriptBuildPhase;
386
396
  buildActionMask = 2147483647;
387
397
  files = (
388
398
  );
389
399
  inputFileListPaths = (
400
+ "${PODS_ROOT}/Target Support Files/Pods-reactnativemagic-reactnativemagicTests/Pods-reactnativemagic-reactnativemagicTests-resources-${CONFIGURATION}-input-files.xcfilelist",
390
401
  );
391
- inputPaths = (
392
- "${PODS_PODFILE_DIR_PATH}/Podfile.lock",
393
- "${PODS_ROOT}/Manifest.lock",
394
- );
395
- name = "[CP] Check Pods Manifest.lock";
402
+ name = "[CP] Copy Pods Resources";
396
403
  outputFileListPaths = (
397
- );
398
- outputPaths = (
399
- "$(DERIVED_FILE_DIR)/Pods-reactnativemagic-checkManifestLockResult.txt",
404
+ "${PODS_ROOT}/Target Support Files/Pods-reactnativemagic-reactnativemagicTests/Pods-reactnativemagic-reactnativemagicTests-resources-${CONFIGURATION}-output-files.xcfilelist",
400
405
  );
401
406
  runOnlyForDeploymentPostprocessing = 0;
402
407
  shellPath = /bin/sh;
403
- shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
408
+ shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-reactnativemagic-reactnativemagicTests/Pods-reactnativemagic-reactnativemagicTests-resources.sh\"\n";
404
409
  showEnvVarsInLog = 0;
405
410
  };
406
- EAE36A1A92A8C5319B9244BA /* [CP] Embed Pods Frameworks */ = {
411
+ C3B4B1699B3C5FC05FEDA60D /* [CP] Copy Pods Resources */ = {
407
412
  isa = PBXShellScriptBuildPhase;
408
413
  buildActionMask = 2147483647;
409
414
  files = (
410
415
  );
411
416
  inputFileListPaths = (
412
- "${PODS_ROOT}/Target Support Files/Pods-reactnativemagic/Pods-reactnativemagic-frameworks-${CONFIGURATION}-input-files.xcfilelist",
417
+ "${PODS_ROOT}/Target Support Files/Pods-reactnativemagic/Pods-reactnativemagic-resources-${CONFIGURATION}-input-files.xcfilelist",
413
418
  );
414
- name = "[CP] Embed Pods Frameworks";
419
+ name = "[CP] Copy Pods Resources";
415
420
  outputFileListPaths = (
416
- "${PODS_ROOT}/Target Support Files/Pods-reactnativemagic/Pods-reactnativemagic-frameworks-${CONFIGURATION}-output-files.xcfilelist",
421
+ "${PODS_ROOT}/Target Support Files/Pods-reactnativemagic/Pods-reactnativemagic-resources-${CONFIGURATION}-output-files.xcfilelist",
417
422
  );
418
423
  runOnlyForDeploymentPostprocessing = 0;
419
424
  shellPath = /bin/sh;
420
- shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-reactnativemagic/Pods-reactnativemagic-frameworks.sh\"\n";
425
+ shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-reactnativemagic/Pods-reactnativemagic-resources.sh\"\n";
421
426
  showEnvVarsInLog = 0;
422
427
  };
423
- EED047F6BD1AA157DA019A41 /* [CP] Check Pods Manifest.lock */ = {
428
+ C9BDCEA7C1A8090D8F420D7A /* [CP] Embed Pods Frameworks */ = {
424
429
  isa = PBXShellScriptBuildPhase;
425
430
  buildActionMask = 2147483647;
426
431
  files = (
427
432
  );
428
433
  inputFileListPaths = (
434
+ "${PODS_ROOT}/Target Support Files/Pods-reactnativemagic/Pods-reactnativemagic-frameworks-${CONFIGURATION}-input-files.xcfilelist",
429
435
  );
430
- inputPaths = (
431
- "${PODS_PODFILE_DIR_PATH}/Podfile.lock",
432
- "${PODS_ROOT}/Manifest.lock",
433
- );
434
- name = "[CP] Check Pods Manifest.lock";
436
+ name = "[CP] Embed Pods Frameworks";
435
437
  outputFileListPaths = (
436
- );
437
- outputPaths = (
438
- "$(DERIVED_FILE_DIR)/Pods-reactnativemagic-reactnativemagicTests-checkManifestLockResult.txt",
438
+ "${PODS_ROOT}/Target Support Files/Pods-reactnativemagic/Pods-reactnativemagic-frameworks-${CONFIGURATION}-output-files.xcfilelist",
439
439
  );
440
440
  runOnlyForDeploymentPostprocessing = 0;
441
441
  shellPath = /bin/sh;
442
- shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
442
+ shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-reactnativemagic/Pods-reactnativemagic-frameworks.sh\"\n";
443
443
  showEnvVarsInLog = 0;
444
444
  };
445
445
  /* End PBXShellScriptBuildPhase section */
@@ -484,7 +484,7 @@
484
484
  /* Begin XCBuildConfiguration section */
485
485
  00E356F61AD99517003FC87E /* Debug */ = {
486
486
  isa = XCBuildConfiguration;
487
- baseConfigurationReference = 56A7F0350C455B9C5A7234F8 /* Pods-reactnativemagic-reactnativemagicTests.debug.xcconfig */;
487
+ baseConfigurationReference = 465754F1499D1884290F3C3F /* Pods-reactnativemagic-reactnativemagicTests.debug.xcconfig */;
488
488
  buildSettings = {
489
489
  BUNDLE_LOADER = "$(TEST_HOST)";
490
490
  GCC_PREPROCESSOR_DEFINITIONS = (
@@ -511,7 +511,7 @@
511
511
  };
512
512
  00E356F71AD99517003FC87E /* Release */ = {
513
513
  isa = XCBuildConfiguration;
514
- baseConfigurationReference = 123D2B186506039FFA026D6C /* Pods-reactnativemagic-reactnativemagicTests.release.xcconfig */;
514
+ baseConfigurationReference = A76280FB51D3CE1B55E47DD9 /* Pods-reactnativemagic-reactnativemagicTests.release.xcconfig */;
515
515
  buildSettings = {
516
516
  BUNDLE_LOADER = "$(TEST_HOST)";
517
517
  COPY_PHASE_STRIP = NO;
@@ -535,7 +535,7 @@
535
535
  };
536
536
  13B07F941A680F5B00A75B9A /* Debug */ = {
537
537
  isa = XCBuildConfiguration;
538
- baseConfigurationReference = F4E5443D5B5729DC581A3C5D /* Pods-reactnativemagic.debug.xcconfig */;
538
+ baseConfigurationReference = 704B3B865C81C25269E97AE9 /* Pods-reactnativemagic.debug.xcconfig */;
539
539
  buildSettings = {
540
540
  ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
541
541
  CLANG_ENABLE_MODULES = YES;
@@ -566,7 +566,7 @@
566
566
  };
567
567
  13B07F951A680F5B00A75B9A /* Release */ = {
568
568
  isa = XCBuildConfiguration;
569
- baseConfigurationReference = 2FC2A41A7C9CECF77A6F86E9 /* Pods-reactnativemagic.release.xcconfig */;
569
+ baseConfigurationReference = 8E6E7224800FB3999B451268 /* Pods-reactnativemagic.release.xcconfig */;
570
570
  buildSettings = {
571
571
  ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
572
572
  CLANG_ENABLE_MODULES = YES;
@@ -1,5 +1,7 @@
1
+ ENV=development
1
2
  API_BASE_URL=https:/$()/dev-api.example.com
2
3
  API_KEY=dev_key
3
4
  ANDROID_APP_ID=com.reactnativemagic.development
4
5
  ANDROID_VERSION_CODE=1
5
6
  ANDROID_VERSION_NAME=1.0.0
7
+ PROJECT_NAME=YOURAPPNAME
@@ -1,4 +1,7 @@
1
1
  const {getDefaultConfig, mergeConfig} = require('@react-native/metro-config');
2
+ const {
3
+ wrapWithReanimatedMetroConfig,
4
+ } = require('react-native-reanimated/metro-config');
2
5
 
3
6
  /**
4
7
  * Metro configuration
@@ -8,4 +11,6 @@ const {getDefaultConfig, mergeConfig} = require('@react-native/metro-config');
8
11
  */
9
12
  const config = {};
10
13
 
11
- module.exports = mergeConfig(getDefaultConfig(__dirname), config);
14
+ module.exports = wrapWithReanimatedMetroConfig(
15
+ mergeConfig(getDefaultConfig(__dirname), config),
16
+ );
@@ -16,6 +16,7 @@
16
16
  "@react-native-community/slider": "^4.5.5",
17
17
  "@react-navigation/bottom-tabs": "^7.2.0",
18
18
  "@react-navigation/drawer": "^7.1.1",
19
+ "@react-navigation/elements": "^2.2.5",
19
20
  "@react-navigation/material-top-tabs": "^7.1.0",
20
21
  "@react-navigation/native": "^7.0.14",
21
22
  "@react-navigation/native-stack": "^7.2.0",
@@ -7873,9 +7874,9 @@
7873
7874
  }
7874
7875
  },
7875
7876
  "node_modules/fastq": {
7876
- "version": "1.17.1",
7877
- "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz",
7878
- "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==",
7877
+ "version": "1.18.0",
7878
+ "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.18.0.tgz",
7879
+ "integrity": "sha512-QKHXPW0hD8g4UET03SdOdunzSouc9N4AuHdsX8XNcTsuz+yYFILVNIX4l9yHABMhiEI9Db0JTTIpu0wB+Y1QQw==",
7879
7880
  "dev": true,
7880
7881
  "license": "ISC",
7881
7882
  "dependencies": {
@@ -4,12 +4,12 @@
4
4
  "private": true,
5
5
  "scripts": {
6
6
  "android": "react-native run-android",
7
- "android:staging": "react-native run-android --variant=stagingdebug",
8
- "android:staging-release": "react-native run-android --variant=stagingrelease",
9
- "android:dev": "react-native run-android --variant=developmentdebug",
10
- "android:dev-release": "react-native run-android --variant=developmentrelease",
11
- "android:prod": "react-native run-android --variant=productiondebug",
12
- "android:prod-release": "react-native run-android --variant=productionrelease",
7
+ "android:staging": "react-native run-android --variant=stagingDebug",
8
+ "android:staging-release": "react-native run-android --variant=stagingRelease",
9
+ "android:dev": "ENVFILE=.env.development react-native run-android --variant=developmentDebug",
10
+ "android:dev-release": "ENVFILE=.env.development react-native run-android --variant=developmentRelease",
11
+ "android:prod": "ENVFILE=.env.production react-native run-android --variant=productionDebug",
12
+ "android:prod-release": "ENVFILE=.env.production react-native run-android --variant=productionRelease",
13
13
  "ios": "react-native run-ios",
14
14
  "lint": "eslint .",
15
15
  "start": "react-native start",
@@ -27,6 +27,7 @@
27
27
  "@react-native-community/slider": "^4.5.5",
28
28
  "@react-navigation/bottom-tabs": "^7.2.0",
29
29
  "@react-navigation/drawer": "^7.1.1",
30
+ "@react-navigation/elements": "^2.2.5",
30
31
  "@react-navigation/material-top-tabs": "^7.1.0",
31
32
  "@react-navigation/native": "^7.0.14",
32
33
  "@react-navigation/native-stack": "^7.2.0",
@@ -1,7 +1,6 @@
1
1
  import React from 'react';
2
2
  import {ImageBackground, StyleSheet, ViewStyle} from 'react-native';
3
3
  import {CommonStyles} from '../../core/theme/commonStyles';
4
- import {ImageResources} from '../ImageResources.g';
5
4
 
6
5
  interface BackgroundType {
7
6
  children: React.ReactNode;
@@ -1,13 +1,12 @@
1
1
  import React, {FC, memo, useCallback} from 'react';
2
+ import {ImageStyle, ImageURISource, ViewStyle} from 'react-native';
2
3
  import ImagePicker, {
3
4
  Image as CropperImage,
4
5
  Options,
5
6
  } from 'react-native-image-crop-picker';
6
- import {ImageStyle, ImageURISource, ViewStyle} from 'react-native';
7
- import {ImageResources} from '../ImageResources.g';
8
- import {PhotoTakingButton} from './PhotoTakingButton';
9
- import {localization} from '../localization/localization';
10
7
  import {showActionSheet} from '../helpers/dialogsHelpers';
8
+ import {localization} from '../localization/localization';
9
+ import {PhotoTakingButton} from './PhotoTakingButton';
11
10
 
12
11
  interface IProps {
13
12
  onImagePicked: (image: CropperImage) => void;
@@ -27,7 +26,7 @@ export const ImageCropPickerButton: FC<IProps> = memo(
27
26
  onImagePicked,
28
27
  onRemoveImage,
29
28
  image,
30
- icon = ImageResources.camera,
29
+ icon,
31
30
  style,
32
31
  iconStyle,
33
32
  imageStyle,
@@ -1,16 +1,11 @@
1
1
  import React from 'react';
2
2
  import {Image, View} from 'react-native';
3
3
  import {CommonStyles} from '../../core/theme/commonStyles';
4
- import {ImageResources} from '../ImageResources.g';
5
4
 
6
5
  export const LoadingComponent = () => {
7
6
  return (
8
7
  <View style={CommonStyles.flexCenter}>
9
- <Image
10
- resizeMode='cover'
11
- style={{flex: 1}}
12
- source={ImageResources.splash}
13
- />
8
+ <Image resizeMode="cover" style={{flex: 1}} source={0} />
14
9
  </View>
15
10
  );
16
11
  };
@@ -19,9 +19,6 @@ export const userLogin = createAsyncThunk(
19
19
  data,
20
20
  });
21
21
 
22
- if (response.data?.user?.roleName !== 'Parent') {
23
- return rejectWithValue('Not Authorized');
24
- }
25
22
  return handleFetchJsonResponse(response);
26
23
  } catch (e: any) {
27
24
  return rejectWithValue(e?.response);
@@ -1,7 +1 @@
1
- export const Fonts = {
2
- light: 'Poppins-Light',
3
- regular: 'Poppins-Regular',
4
- medium: 'Poppins-Medium',
5
- semiBold: 'Poppins-SemiBold',
6
- bold: 'Poppins-Bold',
7
- };
1
+ export const Fonts = {};
@@ -1,10 +1,8 @@
1
+ import {NativeStackNavigationProp} from '@react-navigation/native-stack';
1
2
  import React from 'react';
2
- import {View, Text, TouchableOpacity, Image, StyleSheet} from 'react-native';
3
- import {CommonStyles, screenWidth} from '../core/theme/commonStyles';
4
- import {BottomTabHeaderProps} from '@react-navigation/bottom-tabs';
5
- import {ImageResources} from '../common/ImageResources.g';
3
+ import {Image, StyleSheet, Text, TouchableOpacity, View} from 'react-native';
6
4
  import {CommonSizes} from '../core/theme/commonSizes';
7
- import {NativeStackNavigationProp} from '@react-navigation/native-stack';
5
+ import {CommonStyles, screenWidth} from '../core/theme/commonStyles';
8
6
  import {RootStackParamList} from './types';
9
7
 
10
8
  export function Header({title}: {title: string}) {
@@ -5,7 +5,6 @@ import {
5
5
  NativeStackNavigationProp,
6
6
  } from '@react-navigation/native-stack';
7
7
  import React from 'react';
8
- import {ImageResources} from '../common/ImageResources.g';
9
8
  import {localization} from '../common/localization/localization';
10
9
  import {Main} from '../screens/main/Main';
11
10
  import {Profile} from '../screens/profile/Profile';
@@ -1,4 +1,3 @@
1
- import {useNavigation} from '@react-navigation/native';
2
1
  import {toLower} from 'lodash';
3
2
  import React, {useRef, useState} from 'react';
4
3
  import {
@@ -78,11 +77,6 @@ export function Login(): JSX.Element {
78
77
  label={localization.login.Password}
79
78
  placeholder={localization.login.EnterPassword}
80
79
  />
81
- <PrimaryButton
82
- label={localization.login.forgetPassword}
83
- type={ButtonType.borderless}
84
- style={{alignSelf: 'flex-end'}}
85
- />
86
80
  <PrimaryButton
87
81
  isLoading={loading}
88
82
  onPress={loginUser}
@@ -0,0 +1,8 @@
1
+ declare module 'react-native-config' {
2
+ export interface NativeConfig {
3
+ API_BASE_URL: string;
4
+ [key: string]: string;
5
+ }
6
+ const Config: NativeConfig;
7
+ export default Config;
8
+ }