├── .bundle
└── config
├── .env.example
├── .eslintrc.js
├── .gitattributes
├── .gitignore
├── .prettierrc.js
├── .ruby-version
├── .watchmanconfig
├── App.tsx
├── Gemfile
├── Gemfile.lock
├── README.md
├── __tests__
└── App.test.tsx
├── android
├── app
│ ├── build.gradle
│ ├── debug.keystore
│ ├── proguard-rules.pro
│ └── src
│ │ ├── debug
│ │ └── AndroidManifest.xml
│ │ └── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ └── io
│ │ │ └── beplus
│ │ │ └── bootstrap
│ │ │ └── mobile
│ │ │ ├── MainActivity.kt
│ │ │ └── MainApplication.kt
│ │ └── res
│ │ ├── app-icon_512x512.png
│ │ ├── drawable
│ │ └── rn_edit_text_material.xml
│ │ ├── mipmap-anydpi-v26
│ │ └── ic_launcher.xml
│ │ ├── mipmap-hdpi
│ │ ├── ic_launcher.png
│ │ ├── ic_launcher_background.png
│ │ ├── ic_launcher_foreground.png
│ │ ├── ic_launcher_monochrome.png
│ │ ├── ic_launcher_round.png
│ │ └── ic_launcher_squircle.png
│ │ ├── mipmap-mdpi
│ │ ├── ic_launcher.png
│ │ ├── ic_launcher_background.png
│ │ ├── ic_launcher_foreground.png
│ │ ├── ic_launcher_monochrome.png
│ │ ├── ic_launcher_round.png
│ │ └── ic_launcher_squircle.png
│ │ ├── mipmap-xhdpi
│ │ ├── ic_launcher.png
│ │ ├── ic_launcher_background.png
│ │ ├── ic_launcher_foreground.png
│ │ ├── ic_launcher_monochrome.png
│ │ ├── ic_launcher_round.png
│ │ └── ic_launcher_squircle.png
│ │ ├── mipmap-xxhdpi
│ │ ├── ic_launcher.png
│ │ ├── ic_launcher_background.png
│ │ ├── ic_launcher_foreground.png
│ │ ├── ic_launcher_monochrome.png
│ │ ├── ic_launcher_round.png
│ │ └── ic_launcher_squircle.png
│ │ ├── mipmap-xxxhdpi
│ │ ├── ic_launcher.png
│ │ ├── ic_launcher_background.png
│ │ ├── ic_launcher_foreground.png
│ │ ├── ic_launcher_monochrome.png
│ │ ├── ic_launcher_round.png
│ │ └── ic_launcher_squircle.png
│ │ └── values
│ │ ├── ic_launcher_background.xml
│ │ ├── strings.xml
│ │ └── styles.xml
├── build.gradle
├── fastlane
│ └── Fastfile
├── gradle.properties
├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
└── settings.gradle
├── app.json
├── babel.config.js
├── index.js
├── ios
├── .xcode.env
├── Config.xcconfig
├── Podfile
├── Podfile.lock
├── beplus.xcodeproj
│ ├── project.pbxproj
│ └── xcshareddata
│ │ └── xcschemes
│ │ ├── beplus.debug.xcscheme
│ │ ├── beplus.dev.xcscheme
│ │ ├── beplus.stage.xcscheme
│ │ └── beplus.xcscheme
├── beplus.xcworkspace
│ ├── contents.xcworkspacedata
│ └── xcshareddata
│ │ └── IDEWorkspaceChecks.plist
├── beplus
│ ├── AppDelegate.h
│ ├── AppDelegate.mm
│ ├── Images.xcassets
│ │ ├── AppIcon.appiconset
│ │ │ ├── Contents.json
│ │ │ └── app-icon_1024x1024.png
│ │ ├── Contents.json
│ │ └── LaunchScreen.imageset
│ │ │ ├── Contents.json
│ │ │ └── logo_1000x1000.png
│ ├── Info.plist
│ ├── LaunchScreen.storyboard
│ ├── PrivacyInfo.xcprivacy
│ ├── beplus.entitlements
│ └── main.m
├── beplusTests
│ ├── Info.plist
│ └── beplusTests.m
└── fastlane
│ ├── .gitignore
│ ├── Fastfile
│ ├── Matchfile
│ └── devices.samples.zip
├── jest.config.js
├── metro.config.js
├── package.json
├── pnpm-lock.yaml
└── tsconfig.json
/.bundle/config:
--------------------------------------------------------------------------------
1 | BUNDLE_PATH: "vendor/bundle"
2 | BUNDLE_FORCE_RUBY_PLATFORM: 1
3 |
--------------------------------------------------------------------------------
/.env.example:
--------------------------------------------------------------------------------
1 | BE_APP_NAME=Bootstrap
2 | BE_APP_ANDROID_NAMESPACE=io.beplus.bootstrap.mobile
3 | BE_APP_APPLICATION_ID=io.beplus.bootstrap.mobile
4 | BE_APP_BUNDLE_ID=io.beplus.bootstrap.mobile
5 | BE_APPLE_DEVELOPER_TEAM_ID=
6 | BE_APP_VERSION="1.0.0"
7 | BE_APP_BUILD_NUMBER="1"
8 |
9 | ## Test variables
10 |
11 | # BE_VAR_IN_JS="value-js"
12 | # BE_VAR_IN_JAVA="value-java"
13 | # BE_VAR_IN_GRADLE="value-gradle"
14 | # BE_VAR_IN_MANIFEST="value-manifest"
15 | # BE_VAR_IN_OBJC="value-objc"
16 | # BE_VAR_IN_PLIST="value-plist"
17 |
--------------------------------------------------------------------------------
/.eslintrc.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | root: true,
3 | extends: '@react-native',
4 | };
5 |
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Don't allow people to merge changes to these generated files, because the result
2 | # may be invalid. You need to run "rush update" again.
3 | pnpm-lock.yaml merge=text
4 | shrinkwrap.yaml merge=binary
5 | npm-shrinkwrap.json merge=binary
6 | yarn.lock merge=binary
7 |
8 | # Rush's JSON config files use JavaScript-style code comments. The rule below prevents pedantic
9 | # syntax highlighters such as GitHub's from highlighting these comments as errors. Your text editor
10 | # may also require a special configuration to allow comments in JSON.
11 | #
12 | # For more information, see this issue: https://github.com/microsoft/rushstack/issues/1088
13 | #
14 | *.json linguist-language=JSON-with-Comments
15 |
16 | # iOS
17 | *.pbxproj -text
18 |
19 | # Windows script files
20 | *.bat text eol=crlf
21 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | *.log
3 | npm-debug.log*
4 | yarn-debug.log*
5 | yarn-error.log*
6 |
7 | # Runtime data
8 | *.pid
9 | *.seed
10 | *.pid.lock
11 |
12 | # Directory for instrumented libs generated by jscoverage/JSCover
13 | lib-cov
14 |
15 | # Coverage directory used by tools like istanbul
16 | coverage
17 |
18 | # nyc test coverage
19 | .nyc_output
20 |
21 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
22 | .grunt
23 |
24 | # Bower dependency directory (https://bower.io/)
25 | bower_components
26 |
27 | # node-waf configuration
28 | .lock-wscript
29 |
30 | # Compiled binary addons (https://nodejs.org/api/addons.html)
31 | build/Release
32 |
33 | # Dependency directories
34 | node_modules/
35 | jspm_packages/
36 |
37 | # Optional npm cache directory
38 | .npm
39 |
40 | # Optional eslint cache
41 | .eslintcache
42 |
43 | # Optional REPL history
44 | .node_repl_history
45 |
46 | # Output of 'npm pack'
47 | *.tgz
48 |
49 | # Yarn Integrity file
50 | .yarn-integrity
51 |
52 | # dotenv environment variables file
53 | .env
54 |
55 | # next.js build output
56 | .next
57 |
58 | # OS X temporary files (in case you don't have it global .gitignore)
59 | .DS_Store
60 |
61 | # Heft
62 | .heft
63 |
64 | # build artifacts
65 | build_output
66 |
67 | # yarn
68 | .yarn/*
69 | !.yarn/cache
70 | !.yarn/patches
71 | !.yarn/plugins
72 | !.yarn/releases
73 | !.yarn/sdks
74 | !.yarn/versions
75 |
76 | # Xcode
77 | #
78 | build/
79 | *.pbxuser
80 | !default.pbxuser
81 | *.mode1v3
82 | !default.mode1v3
83 | *.mode2v3
84 | !default.mode2v3
85 | *.perspectivev3
86 | !default.perspectivev3
87 | xcuserdata
88 | *.xccheckout
89 | *.moved-aside
90 | DerivedData
91 | *.hmap
92 | *.ipa
93 | *.xcuserstate
94 | **/.xcode.env.local
95 |
96 | # Android/IntelliJ
97 | #
98 | build/
99 | .idea
100 | .gradle
101 | local.properties
102 | *.iml
103 | *.hprof
104 | .cxx/
105 | *.keystore
106 | !debug.keystore
107 |
108 | # fastlane
109 | #
110 | # It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the
111 | # screenshots whenever they are needed.
112 | # For more information about the recommended setup visit:
113 | # https://docs.fastlane.tools/best-practices/source-control/
114 |
115 | **/fastlane/report.xml
116 | **/fastlane/Preview.html
117 | **/fastlane/screenshots
118 | **/fastlane/test_output
119 |
120 | # Bundle artifact
121 | *.jsbundle
122 |
123 | # Ruby / CocoaPods
124 | **/Pods/
125 | /vendor/bundle/
126 |
127 | # Temporary files created by Metro to check the health of the file watcher
128 | .metro-health-check*
129 |
130 | # testing
131 | /coverage
132 |
133 | # react-native-config codegen
134 | ios/tmp.xcconfig
135 |
136 | # beplus
137 | android/app/upload.keystore
138 | ios/*.dSYM.zip
139 | ios/tmp.xcconfig
140 |
--------------------------------------------------------------------------------
/.prettierrc.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | arrowParens: 'avoid',
3 | bracketSameLine: true,
4 | bracketSpacing: false,
5 | singleQuote: true,
6 | trailingComma: 'all',
7 | };
8 |
--------------------------------------------------------------------------------
/.ruby-version:
--------------------------------------------------------------------------------
1 | 3.3.0
2 |
--------------------------------------------------------------------------------
/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
2 |
--------------------------------------------------------------------------------
/App.tsx:
--------------------------------------------------------------------------------
1 | /**
2 | * Sample React Native App
3 | * https://github.com/facebook/react-native
4 | *
5 | * @format
6 | */
7 |
8 | import React from 'react';
9 | import type {PropsWithChildren} from 'react';
10 | import {
11 | SafeAreaView,
12 | ScrollView,
13 | StatusBar,
14 | StyleSheet,
15 | Text,
16 | useColorScheme,
17 | View,
18 | } from 'react-native';
19 |
20 | import {
21 | Colors,
22 | DebugInstructions,
23 | Header,
24 | LearnMoreLinks,
25 | ReloadInstructions,
26 | } from 'react-native/Libraries/NewAppScreen';
27 |
28 | // import Config from 'react-native-config';
29 |
30 | type SectionProps = PropsWithChildren<{
31 | title: string;
32 | }>;
33 |
34 | function Section({children, title}: SectionProps): React.JSX.Element {
35 | const isDarkMode = useColorScheme() === 'dark';
36 | return (
37 |
38 |
45 | {title}
46 |
47 |
54 | {children}
55 |
56 |
57 | );
58 | }
59 |
60 | function App(): React.JSX.Element {
61 | const isDarkMode = useColorScheme() === 'dark';
62 |
63 | const backgroundStyle = {
64 | backgroundColor: isDarkMode ? Colors.darker : Colors.lighter,
65 | };
66 |
67 | // console.log("RNConfig_JS: ", Config?.BE_VAR_IN_JS);
68 |
69 | return (
70 |
71 |
75 |
78 |
79 |
83 |
84 | Edit App.tsx to change this
85 | screen and then come back to see your edits.
86 |
87 |
90 |
93 |
94 | Read the docs to discover what to do next:
95 |
96 |
97 |
98 |
99 |
100 | );
101 | }
102 |
103 | const styles = StyleSheet.create({
104 | sectionContainer: {
105 | marginTop: 32,
106 | paddingHorizontal: 24,
107 | },
108 | sectionTitle: {
109 | fontSize: 24,
110 | fontWeight: '600',
111 | },
112 | sectionDescription: {
113 | marginTop: 8,
114 | fontSize: 18,
115 | fontWeight: '400',
116 | },
117 | highlight: {
118 | fontWeight: '700',
119 | },
120 | });
121 |
122 | export default App;
123 |
--------------------------------------------------------------------------------
/Gemfile:
--------------------------------------------------------------------------------
1 | source 'https://rubygems.org'
2 |
3 | # You may use http://rbenv.org/ or https://rvm.io/ to install and use this version
4 | ruby File.read(File.join(__dir__, '.ruby-version')).strip
5 |
6 | gem 'ffi', '1.15.5' # @todo This is locked to the latest version before 1.16.0 which is unable to compile (Sept 24 2023)
7 | gem 'mutex_m' # mutex_m was loaded from the standard library, but will no longer be part of the default gems since Ruby 3.4.0. Add mutex_m to your Gemfile or gemspec. Also contact author of activesupport-7.0.8 to add mutex_m into its gemspec.
8 | gem 'bigdecimal' # bigdecimal was loaded from the standard library, but will no longer be part of the default gems since Ruby 3.4.0. Add bigdecimal to your Gemfile or gemspec. Also contact author of activesupport-7.0.8 to add bigdecimal into its gemspec.
9 | gem 'activesupport', '7.0.8' # @todo This is locked to the latest version before 7.1.0 which has an error (Oct 05 2023)
10 |
11 | gem 'cocoapods', '1.14.3' # @todo '~> 1.15' when resolved: https://github.com/facebook/react-native/issues/42698
12 | gem 'fastlane'
13 |
--------------------------------------------------------------------------------
/Gemfile.lock:
--------------------------------------------------------------------------------
1 | GEM
2 | remote: https://rubygems.org/
3 | specs:
4 | CFPropertyList (3.0.7)
5 | base64
6 | nkf
7 | rexml
8 | activesupport (7.0.8)
9 | concurrent-ruby (~> 1.0, >= 1.0.2)
10 | i18n (>= 1.6, < 2)
11 | minitest (>= 5.1)
12 | tzinfo (~> 2.0)
13 | addressable (2.8.7)
14 | public_suffix (>= 2.0.2, < 7.0)
15 | algoliasearch (1.27.5)
16 | httpclient (~> 2.8, >= 2.8.3)
17 | json (>= 1.5.1)
18 | artifactory (3.0.17)
19 | atomos (0.1.3)
20 | aws-eventstream (1.3.0)
21 | aws-partitions (1.961.0)
22 | aws-sdk-core (3.201.3)
23 | aws-eventstream (~> 1, >= 1.3.0)
24 | aws-partitions (~> 1, >= 1.651.0)
25 | aws-sigv4 (~> 1.8)
26 | jmespath (~> 1, >= 1.6.1)
27 | aws-sdk-kms (1.88.0)
28 | aws-sdk-core (~> 3, >= 3.201.0)
29 | aws-sigv4 (~> 1.5)
30 | aws-sdk-s3 (1.157.0)
31 | aws-sdk-core (~> 3, >= 3.201.0)
32 | aws-sdk-kms (~> 1)
33 | aws-sigv4 (~> 1.5)
34 | aws-sigv4 (1.9.1)
35 | aws-eventstream (~> 1, >= 1.0.2)
36 | babosa (1.0.4)
37 | base64 (0.2.0)
38 | bigdecimal (3.1.8)
39 | claide (1.1.0)
40 | cocoapods (1.14.3)
41 | addressable (~> 2.8)
42 | claide (>= 1.0.2, < 2.0)
43 | cocoapods-core (= 1.14.3)
44 | cocoapods-deintegrate (>= 1.0.3, < 2.0)
45 | cocoapods-downloader (>= 2.1, < 3.0)
46 | cocoapods-plugins (>= 1.0.0, < 2.0)
47 | cocoapods-search (>= 1.0.0, < 2.0)
48 | cocoapods-trunk (>= 1.6.0, < 2.0)
49 | cocoapods-try (>= 1.1.0, < 2.0)
50 | colored2 (~> 3.1)
51 | escape (~> 0.0.4)
52 | fourflusher (>= 2.3.0, < 3.0)
53 | gh_inspector (~> 1.0)
54 | molinillo (~> 0.8.0)
55 | nap (~> 1.0)
56 | ruby-macho (>= 2.3.0, < 3.0)
57 | xcodeproj (>= 1.23.0, < 2.0)
58 | cocoapods-core (1.14.3)
59 | activesupport (>= 5.0, < 8)
60 | addressable (~> 2.8)
61 | algoliasearch (~> 1.0)
62 | concurrent-ruby (~> 1.1)
63 | fuzzy_match (~> 2.0.4)
64 | nap (~> 1.0)
65 | netrc (~> 0.11)
66 | public_suffix (~> 4.0)
67 | typhoeus (~> 1.0)
68 | cocoapods-deintegrate (1.0.5)
69 | cocoapods-downloader (2.1)
70 | cocoapods-plugins (1.0.0)
71 | nap
72 | cocoapods-search (1.0.1)
73 | cocoapods-trunk (1.6.0)
74 | nap (>= 0.8, < 2.0)
75 | netrc (~> 0.11)
76 | cocoapods-try (1.2.0)
77 | colored (1.2)
78 | colored2 (3.1.2)
79 | commander (4.6.0)
80 | highline (~> 2.0.0)
81 | concurrent-ruby (1.3.3)
82 | declarative (0.0.20)
83 | digest-crc (0.6.5)
84 | rake (>= 12.0.0, < 14.0.0)
85 | domain_name (0.6.20240107)
86 | dotenv (2.8.1)
87 | emoji_regex (3.2.3)
88 | escape (0.0.4)
89 | ethon (0.16.0)
90 | ffi (>= 1.15.0)
91 | excon (0.111.0)
92 | faraday (1.10.3)
93 | faraday-em_http (~> 1.0)
94 | faraday-em_synchrony (~> 1.0)
95 | faraday-excon (~> 1.1)
96 | faraday-httpclient (~> 1.0)
97 | faraday-multipart (~> 1.0)
98 | faraday-net_http (~> 1.0)
99 | faraday-net_http_persistent (~> 1.0)
100 | faraday-patron (~> 1.0)
101 | faraday-rack (~> 1.0)
102 | faraday-retry (~> 1.0)
103 | ruby2_keywords (>= 0.0.4)
104 | faraday-cookie_jar (0.0.7)
105 | faraday (>= 0.8.0)
106 | http-cookie (~> 1.0.0)
107 | faraday-em_http (1.0.0)
108 | faraday-em_synchrony (1.0.0)
109 | faraday-excon (1.1.0)
110 | faraday-httpclient (1.0.1)
111 | faraday-multipart (1.0.4)
112 | multipart-post (~> 2)
113 | faraday-net_http (1.0.2)
114 | faraday-net_http_persistent (1.2.0)
115 | faraday-patron (1.0.0)
116 | faraday-rack (1.0.0)
117 | faraday-retry (1.0.3)
118 | faraday_middleware (1.2.0)
119 | faraday (~> 1.0)
120 | fastimage (2.3.1)
121 | fastlane (2.222.0)
122 | CFPropertyList (>= 2.3, < 4.0.0)
123 | addressable (>= 2.8, < 3.0.0)
124 | artifactory (~> 3.0)
125 | aws-sdk-s3 (~> 1.0)
126 | babosa (>= 1.0.3, < 2.0.0)
127 | bundler (>= 1.12.0, < 3.0.0)
128 | colored (~> 1.2)
129 | commander (~> 4.6)
130 | dotenv (>= 2.1.1, < 3.0.0)
131 | emoji_regex (>= 0.1, < 4.0)
132 | excon (>= 0.71.0, < 1.0.0)
133 | faraday (~> 1.0)
134 | faraday-cookie_jar (~> 0.0.6)
135 | faraday_middleware (~> 1.0)
136 | fastimage (>= 2.1.0, < 3.0.0)
137 | gh_inspector (>= 1.1.2, < 2.0.0)
138 | google-apis-androidpublisher_v3 (~> 0.3)
139 | google-apis-playcustomapp_v1 (~> 0.1)
140 | google-cloud-env (>= 1.6.0, < 2.0.0)
141 | google-cloud-storage (~> 1.31)
142 | highline (~> 2.0)
143 | http-cookie (~> 1.0.5)
144 | json (< 3.0.0)
145 | jwt (>= 2.1.0, < 3)
146 | mini_magick (>= 4.9.4, < 5.0.0)
147 | multipart-post (>= 2.0.0, < 3.0.0)
148 | naturally (~> 2.2)
149 | optparse (>= 0.1.1, < 1.0.0)
150 | plist (>= 3.1.0, < 4.0.0)
151 | rubyzip (>= 2.0.0, < 3.0.0)
152 | security (= 0.1.5)
153 | simctl (~> 1.6.3)
154 | terminal-notifier (>= 2.0.0, < 3.0.0)
155 | terminal-table (~> 3)
156 | tty-screen (>= 0.6.3, < 1.0.0)
157 | tty-spinner (>= 0.8.0, < 1.0.0)
158 | word_wrap (~> 1.0.0)
159 | xcodeproj (>= 1.13.0, < 2.0.0)
160 | xcpretty (~> 0.3.0)
161 | xcpretty-travis-formatter (>= 0.0.3, < 2.0.0)
162 | ffi (1.15.5)
163 | fourflusher (2.3.1)
164 | fuzzy_match (2.0.4)
165 | gh_inspector (1.1.3)
166 | google-apis-androidpublisher_v3 (0.54.0)
167 | google-apis-core (>= 0.11.0, < 2.a)
168 | google-apis-core (0.11.3)
169 | addressable (~> 2.5, >= 2.5.1)
170 | googleauth (>= 0.16.2, < 2.a)
171 | httpclient (>= 2.8.1, < 3.a)
172 | mini_mime (~> 1.0)
173 | representable (~> 3.0)
174 | retriable (>= 2.0, < 4.a)
175 | rexml
176 | google-apis-iamcredentials_v1 (0.17.0)
177 | google-apis-core (>= 0.11.0, < 2.a)
178 | google-apis-playcustomapp_v1 (0.13.0)
179 | google-apis-core (>= 0.11.0, < 2.a)
180 | google-apis-storage_v1 (0.31.0)
181 | google-apis-core (>= 0.11.0, < 2.a)
182 | google-cloud-core (1.7.0)
183 | google-cloud-env (>= 1.0, < 3.a)
184 | google-cloud-errors (~> 1.0)
185 | google-cloud-env (1.6.0)
186 | faraday (>= 0.17.3, < 3.0)
187 | google-cloud-errors (1.4.0)
188 | google-cloud-storage (1.47.0)
189 | addressable (~> 2.8)
190 | digest-crc (~> 0.4)
191 | google-apis-iamcredentials_v1 (~> 0.1)
192 | google-apis-storage_v1 (~> 0.31.0)
193 | google-cloud-core (~> 1.6)
194 | googleauth (>= 0.16.2, < 2.a)
195 | mini_mime (~> 1.0)
196 | googleauth (1.8.1)
197 | faraday (>= 0.17.3, < 3.a)
198 | jwt (>= 1.4, < 3.0)
199 | multi_json (~> 1.11)
200 | os (>= 0.9, < 2.0)
201 | signet (>= 0.16, < 2.a)
202 | highline (2.0.3)
203 | http-cookie (1.0.6)
204 | domain_name (~> 0.5)
205 | httpclient (2.8.3)
206 | i18n (1.14.5)
207 | concurrent-ruby (~> 1.0)
208 | jmespath (1.6.2)
209 | json (2.7.2)
210 | jwt (2.8.2)
211 | base64
212 | mini_magick (4.13.2)
213 | mini_mime (1.1.5)
214 | minitest (5.24.1)
215 | molinillo (0.8.0)
216 | multi_json (1.15.0)
217 | multipart-post (2.4.1)
218 | mutex_m (0.2.0)
219 | nanaimo (0.3.0)
220 | nap (1.1.0)
221 | naturally (2.2.1)
222 | netrc (0.11.0)
223 | nkf (0.2.0)
224 | optparse (0.5.0)
225 | os (1.1.4)
226 | plist (3.7.1)
227 | public_suffix (4.0.7)
228 | rake (13.2.1)
229 | representable (3.2.0)
230 | declarative (< 0.1.0)
231 | trailblazer-option (>= 0.1.1, < 0.2.0)
232 | uber (< 0.2.0)
233 | retriable (3.1.2)
234 | rexml (3.2.9)
235 | strscan
236 | rouge (2.0.7)
237 | ruby-macho (2.5.1)
238 | ruby2_keywords (0.0.5)
239 | rubyzip (2.3.2)
240 | security (0.1.5)
241 | signet (0.19.0)
242 | addressable (~> 2.8)
243 | faraday (>= 0.17.5, < 3.a)
244 | jwt (>= 1.5, < 3.0)
245 | multi_json (~> 1.10)
246 | simctl (1.6.10)
247 | CFPropertyList
248 | naturally
249 | strscan (3.1.0)
250 | terminal-notifier (2.0.0)
251 | terminal-table (3.0.2)
252 | unicode-display_width (>= 1.1.1, < 3)
253 | trailblazer-option (0.1.2)
254 | tty-cursor (0.7.1)
255 | tty-screen (0.8.2)
256 | tty-spinner (0.9.3)
257 | tty-cursor (~> 0.7)
258 | typhoeus (1.4.1)
259 | ethon (>= 0.9.0)
260 | tzinfo (2.0.6)
261 | concurrent-ruby (~> 1.0)
262 | uber (0.1.0)
263 | unicode-display_width (2.5.0)
264 | word_wrap (1.0.0)
265 | xcodeproj (1.24.0)
266 | CFPropertyList (>= 2.3.3, < 4.0)
267 | atomos (~> 0.1.3)
268 | claide (>= 1.0.2, < 2.0)
269 | colored2 (~> 3.1)
270 | nanaimo (~> 0.3.0)
271 | rexml (~> 3.2.4)
272 | xcpretty (0.3.0)
273 | rouge (~> 2.0.7)
274 | xcpretty-travis-formatter (1.0.1)
275 | xcpretty (~> 0.2, >= 0.0.7)
276 |
277 | PLATFORMS
278 | ruby
279 |
280 | DEPENDENCIES
281 | activesupport (= 7.0.8)
282 | bigdecimal
283 | cocoapods (= 1.14.3)
284 | fastlane
285 | ffi (= 1.15.5)
286 | mutex_m
287 |
288 | RUBY VERSION
289 | ruby 3.3.0p0
290 |
291 | BUNDLED WITH
292 | 2.5.3
293 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # beplus Bootstrap Mobile
2 |
3 | **Deploy Your React Native Mobile Apps to AppStores within minutes**.
4 |
5 | [beplus Bootstrap Mobile](https://be.plus/bootstrap/mobile) optimizes your workflow, making React Native mobile app(s) deployment faster, smoother, and more reliable.
6 |
7 |
8 | ## What is this repository?
9 | This is a **Free version** of [beplus Bootstrap Mobile](https://be.plus/bootstrap/mobile#get) containing:
10 | - Latest [React Native](https://reactnative.dev/) CLI Template (actually `v0.74.4`),
11 | - [Refined](https://docs.be.plus/playbooks/mobile/basics/refinement) to be easily reusable according to the **free [beplus Mobile Playbook](https://docs.be.plus/training/playbooks/mobile)**:
12 | - configurable from the environment,
13 | - `dev`, `stage`, `prod` support,
14 | - With a basic [Fastlane](https://fastlane.tools/) Integration for both iOS & Android to automate:
15 | - app creation in Apple Developer and Apple App Store Connect,
16 | - iOS Code Signing,
17 | - deployment to Apple App Store and Google Play.
18 |
19 | **You can have your app deployed from nothing into both Apple App Store and Google Play within 15 minutes just by setting a few Environment Variables**.
20 |
21 | Also, having everything configurable allows you to use the same Template without any significant changes across multiple projects, which will allow you to stay up-to-date with this template down the line.
22 |
23 |
24 | # How To Use It?
25 |
26 | Checkout the [**Free Speedrun**]((https://docs.be.plus/bootstrap/mobile/speedrun)) to see how to run & use this Template:
27 | - [https://docs.be.plus/bootstrap/mobile/speedrun](https://docs.be.plus/bootstrap/mobile/speedrun)
28 |
29 |
30 | … and if you want more, make sure to check out **[beplus Bootstrap Mobile All-Access](https://be.plus/bootstrap/mobile)**.
31 |
32 |
33 | ## beplus Mobile Playbook
34 |
35 | Check out the **free [beplus Mobile Playbook](https://docs.be.plus/training/playbooks/mobile)** if you want to:
36 | - [Run this project fast](https://docs.be.plus/bootstrap/mobile/speedrun),
37 | - [Use Fastlane to create your apps in AppStore(s) and manage your Code Signing](https://docs.be.plus//playbooks/mobile/fastlane/overview),
38 | - Learn how to set up automated Mobile CI/CD:
39 | - with [Bitrise](https://docs.be.plus/training/playbooks/mobile/cicd/bitrise),
40 | - with [Codemagic](https://docs.be.plus/training/playbooks/mobile/cicd/codemagic),
41 | - with [GitHub Actions](https://docs.be.plus/training/playbooks/mobile/cicd/github-actions).
42 |
43 |
44 | ## beplus Bootstrap Mobile All-Access
45 |
46 | The ultimate tool to deliver your React Native App into AppStore(s) in minutes.
47 |
48 | Check the video about [**How It Works**](https://be.plus/bootstrap/mobile#how-it-works) on the official [be.plus Web](https://be.plus/bootstrap/mobile#how-it-works) or [YouTube](https://youtu.be/a0eBRkR8_IU).
49 |
50 | **With [beplus Bootstrap Mobile All-Access](https://be.plus/bootstrap/mobile#get), you can**:
51 | - fully automate the whole Mobile CI/CD Workflow creation,
52 | - easily manage iOS & Android Signing, across multiple Teams, with a single Tool,
53 | - effortlessly manage and keep your Configuration on a single place you actually own → your AWS Account and easily reuse it anywhere
54 | - easily switch between multiple Mobile CI/CD providers just by changing the configuration,
55 | - and much more.
56 |
57 | **One-Time Investment, Unlimited Usage, Lifetime Access, Free Updates**.
58 |
59 | https://be.plus/bootstrap/mobile
60 |
--------------------------------------------------------------------------------
/__tests__/App.test.tsx:
--------------------------------------------------------------------------------
1 | /**
2 | * @format
3 | */
4 |
5 | import 'react-native';
6 | import React from 'react';
7 | import App from '../App';
8 |
9 | // Note: import explicitly to use the types shipped with jest.
10 | import {it} from '@jest/globals';
11 |
12 | // Note: test renderer must be required after react-native.
13 | import renderer from 'react-test-renderer';
14 |
15 | it('renders correctly', () => {
16 | renderer.create();
17 | });
18 |
--------------------------------------------------------------------------------
/android/app/build.gradle:
--------------------------------------------------------------------------------
1 | apply plugin: "com.android.application"
2 | apply plugin: "org.jetbrains.kotlin.android"
3 | apply plugin: "com.facebook.react"
4 |
5 | apply from: project(':react-native-config').projectDir.getPath() + "/dotenv.gradle"
6 |
7 | /**
8 | * This is the configuration block to customize your React Native Android app.
9 | * By default you don't need to apply any configuration, just uncomment the lines you need.
10 | */
11 | react {
12 | /* Folders */
13 | // The root of your project, i.e. where "package.json" lives. Default is '..'
14 | // root = file("../")
15 | // The folder where the react-native NPM package is. Default is ../node_modules/react-native
16 | // reactNativeDir = file("../node_modules/react-native")
17 | // The folder where the react-native Codegen package is. Default is ../node_modules/@react-native/codegen
18 | // codegenDir = file("../node_modules/@react-native/codegen")
19 | // The cli.js file which is the React Native CLI entrypoint. Default is ../node_modules/react-native/cli.js
20 | // cliFile = file("../node_modules/react-native/cli.js")
21 |
22 | /* Variants */
23 | // The list of variants to that are debuggable. For those we're going to
24 | // skip the bundling of the JS bundle and the assets. By default is just 'debug'.
25 | // If you add flavors like lite, prod, etc. you'll have to list your debuggableVariants.
26 | // debuggableVariants = ["liteDebug", "prodDebug"]
27 |
28 | /* Bundling */
29 | // A list containing the node command and its flags. Default is just 'node'.
30 | // nodeExecutableAndArgs = ["node"]
31 | //
32 | // The command to run when bundling. By default is 'bundle'
33 | // bundleCommand = "ram-bundle"
34 | //
35 | // The path to the CLI configuration file. Default is empty.
36 | // bundleConfig = file(../rn-cli.config.js)
37 | //
38 | // The name of the generated asset file containing your JS bundle
39 | // bundleAssetName = "MyApplication.android.bundle"
40 | //
41 | // The entry file for bundle generation. Default is 'index.android.js' or 'index.js'
42 | // entryFile = file("../js/MyApplication.android.js")
43 | //
44 | // A list of extra flags to pass to the 'bundle' commands.
45 | // See https://github.com/react-native-community/cli/blob/main/docs/commands.md#bundle
46 | // extraPackagerArgs = []
47 |
48 | /* Hermes Commands */
49 | // The hermes compiler command to run. By default it is 'hermesc'
50 | // hermesCommand = "$rootDir/my-custom-hermesc/bin/hermesc"
51 | //
52 | // The list of flags to pass to the Hermes compiler. By default is "-O", "-output-source-map"
53 | // hermesFlags = ["-O", "-output-source-map"]
54 | }
55 |
56 | /**
57 | * Set this to true to Run Proguard on Release builds to minify the Java bytecode.
58 | */
59 | def enableProguardInReleaseBuilds = false
60 |
61 | /**
62 | * The preferred build flavor of JavaScriptCore (JSC)
63 | *
64 | * For example, to use the international variant, you can use:
65 | * `def jscFlavor = 'org.webkit:android-jsc-intl:+'`
66 | *
67 | * The international variant includes ICU i18n library and necessary data
68 | * allowing to use e.g. `Date.toLocaleString` and `String.localeCompare` that
69 | * give correct results when using with locales other than en-US. Note that
70 | * this variant is about 6MiB larger per architecture than default.
71 | */
72 | def jscFlavor = 'org.webkit:android-jsc:+'
73 |
74 | android {
75 | ndkVersion rootProject.ext.ndkVersion
76 | buildToolsVersion rootProject.ext.buildToolsVersion
77 | compileSdk rootProject.ext.compileSdkVersion
78 |
79 | namespace 'io.beplus.bootstrap.mobile'
80 |
81 | defaultConfig {
82 | applicationId System.env.get("BE_APP_APPLICATION_ID") ? System.env.get("BE_APP_APPLICATION_ID").toString() : project.env.get("BE_APP_APPLICATION_ID").toString()
83 | minSdkVersion rootProject.ext.minSdkVersion
84 | targetSdkVersion rootProject.ext.targetSdkVersion
85 |
86 | versionName System.env.get("BE_APP_VERSION") ? System.env.get("BE_APP_VERSION") : project.env.get("BE_APP_VERSION") ? project.env.get("BE_APP_VERSION").toString() : "1.0.0"
87 | versionCode System.env.get("BE_APP_BUILD_NUMBER") ? System.env.get("BE_APP_BUILD_NUMBER").toInteger() : project.env.get("BE_APP_BUILD_NUMBER") ? project.env.get("BE_APP_BUILD_NUMBER").toInteger() : 1
88 |
89 | // should correspond to the "package" in Main.kt
90 | resValue "string", "build_config_package", System.env.get("BE_APP_ANDROID_NAMESPACE") ? System.env.get("BE_APP_ANDROID_NAMESPACE").toString() : project.env.get("BE_APP_ANDROID_NAMESPACE").toString()
91 |
92 | // https://developer.android.com/build/shrink-code#unused-alt-resources
93 | resConfigs "en"
94 | }
95 | signingConfigs {
96 | debug {
97 | storeFile file('debug.keystore')
98 | storePassword 'android'
99 | keyAlias 'androiddebugkey'
100 | keyPassword 'android'
101 | }
102 | release {
103 | storeFile file(System.env.get("BE_GOOGLE_PLAY_UPLOAD_KEY_STORE_FILE_PATH") ? System.env.get("BE_GOOGLE_PLAY_UPLOAD_KEY_STORE_FILE_PATH").toString() : "upload.keystore")
104 | storePassword System.env.get("BE_GOOGLE_PLAY_UPLOAD_KEY_STORE_PASSWORD").toString()
105 | keyAlias System.env.get("BE_GOOGLE_PLAY_UPLOAD_KEY_ALIAS").toString()
106 | keyPassword System.env.get("BE_GOOGLE_PLAY_UPLOAD_KEY_PASSWORD").toString()
107 | }
108 | }
109 | buildTypes {
110 | debug {
111 | applicationIdSuffix ".debug"
112 | signingConfig signingConfigs.debug
113 | }
114 | releaseDev {
115 | applicationIdSuffix ".dev"
116 | signingConfig signingConfigs.release
117 | minifyEnabled enableProguardInReleaseBuilds
118 | proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
119 | matchingFallbacks = ['release']
120 | }
121 | releaseStage {
122 | applicationIdSuffix ".stage"
123 | signingConfig signingConfigs.release
124 | minifyEnabled enableProguardInReleaseBuilds
125 | proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
126 | matchingFallbacks = ['release']
127 | }
128 | release {
129 | signingConfig signingConfigs.release
130 | minifyEnabled enableProguardInReleaseBuilds
131 | proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
132 | }
133 | }
134 | }
135 |
136 | dependencies {
137 | // The version of react-native is set by the React Native Gradle Plugin
138 | implementation("com.facebook.react:react-android")
139 |
140 | if (hermesEnabled.toBoolean()) {
141 | implementation("com.facebook.react:hermes-android")
142 | } else {
143 | implementation jscFlavor
144 | }
145 | }
146 |
147 | apply from: file("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesAppBuildGradle(project)
148 |
--------------------------------------------------------------------------------
/android/app/debug.keystore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/debug.keystore
--------------------------------------------------------------------------------
/android/app/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # By default, the flags in this file are appended to flags specified
3 | # in /usr/local/Cellar/android-sdk/24.3.3/tools/proguard/proguard-android.txt
4 | # You can edit the include path and order by changing the proguardFiles
5 | # directive in build.gradle.
6 | #
7 | # For more details, see
8 | # http://developer.android.com/guide/developing/tools/proguard.html
9 |
10 | # Add any project specific keep options here:
11 | -keep class io.beplus**.BuildConfig { *; }
12 | -keepresources string/build_config_package
13 |
--------------------------------------------------------------------------------
/android/app/src/debug/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
9 |
10 |
--------------------------------------------------------------------------------
/android/app/src/main/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
12 |
13 |
19 |
20 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
--------------------------------------------------------------------------------
/android/app/src/main/java/io/beplus/bootstrap/mobile/MainActivity.kt:
--------------------------------------------------------------------------------
1 | package io.beplus.bootstrap.mobile
2 |
3 | import com.facebook.react.ReactActivity
4 | import com.facebook.react.ReactActivityDelegate
5 | import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint.fabricEnabled
6 | import com.facebook.react.defaults.DefaultReactActivityDelegate
7 |
8 | import android.content.pm.ApplicationInfo
9 | import android.content.pm.PackageManager
10 | import android.os.Bundle
11 | import android.util.Log
12 |
13 | class MainActivity : ReactActivity() {
14 |
15 | /**
16 | * Returns the name of the main component registered from JavaScript. This is used to schedule
17 | * rendering of the component.
18 | */
19 | override fun getMainComponentName(): String = "beplus"
20 |
21 | /**
22 | * Returns the instance of the [ReactActivityDelegate]. We use [DefaultReactActivityDelegate]
23 | * which allows you to enable New Architecture with a single boolean flags [fabricEnabled]
24 | */
25 | override fun createReactActivityDelegate(): ReactActivityDelegate =
26 | DefaultReactActivityDelegate(this, mainComponentName, fabricEnabled)
27 |
28 | /**
29 | * react-native-config
30 | */
31 | override fun onCreate(savedInstanceState: Bundle?) {
32 | super.onCreate(savedInstanceState)
33 |
34 | // val varInJava: String = BuildConfig.BE_VAR_IN_JAVA
35 | // Log.i("RNConfig_Java: ", varInJava)
36 |
37 | // try {
38 | // val app = packageManager.getApplicationInfo(packageName, PackageManager.GET_META_DATA)
39 | // Log.i("RNConfig_Manifest: ", ""+app.metaData.getString("varInManifest"))
40 | // } catch (e: PackageManager.NameNotFoundException) {
41 | // e.printStackTrace()
42 | // }
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/android/app/src/main/java/io/beplus/bootstrap/mobile/MainApplication.kt:
--------------------------------------------------------------------------------
1 | package io.beplus.bootstrap.mobile
2 |
3 | import android.app.Application
4 | import com.facebook.react.PackageList
5 | import com.facebook.react.ReactApplication
6 | import com.facebook.react.ReactHost
7 | import com.facebook.react.ReactNativeHost
8 | import com.facebook.react.ReactPackage
9 | import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint.load
10 | import com.facebook.react.defaults.DefaultReactHost.getDefaultReactHost
11 | import com.facebook.react.defaults.DefaultReactNativeHost
12 | import com.facebook.soloader.SoLoader
13 |
14 | class MainApplication : Application(), ReactApplication {
15 |
16 | override val reactNativeHost: ReactNativeHost =
17 | object : DefaultReactNativeHost(this) {
18 | override fun getPackages(): List {
19 | // Packages that cannot be autolinked yet can be added manually here, for example:
20 | // packages.add(new MyReactNativePackage());
21 | return PackageList(this).packages
22 | }
23 |
24 | override fun getJSMainModuleName(): String = "index"
25 |
26 | override fun getUseDeveloperSupport(): Boolean = BuildConfig.DEBUG
27 |
28 | override val isNewArchEnabled: Boolean = BuildConfig.IS_NEW_ARCHITECTURE_ENABLED
29 | override val isHermesEnabled: Boolean = BuildConfig.IS_HERMES_ENABLED
30 | }
31 |
32 | override val reactHost: ReactHost
33 | get() = getDefaultReactHost(applicationContext, reactNativeHost)
34 |
35 | override fun onCreate() {
36 | super.onCreate()
37 | SoLoader.init(this, false)
38 | if (BuildConfig.IS_NEW_ARCHITECTURE_ENABLED) {
39 | // If you opted-in for the New Architecture, we load the native entry point for this app.
40 | load()
41 | }
42 | }
43 |
44 | }
45 |
--------------------------------------------------------------------------------
/android/app/src/main/res/app-icon_512x512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/app-icon_512x512.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable/rn_edit_text_material.xml:
--------------------------------------------------------------------------------
1 |
2 |
16 |
21 |
22 |
23 |
32 |
33 |
34 |
35 |
36 |
37 |
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-hdpi/ic_launcher_background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-hdpi/ic_launcher_background.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-hdpi/ic_launcher_monochrome.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-hdpi/ic_launcher_monochrome.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-hdpi/ic_launcher_squircle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-hdpi/ic_launcher_squircle.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-mdpi/ic_launcher_background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-mdpi/ic_launcher_background.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-mdpi/ic_launcher_monochrome.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-mdpi/ic_launcher_monochrome.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-mdpi/ic_launcher_squircle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-mdpi/ic_launcher_squircle.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xhdpi/ic_launcher_background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-xhdpi/ic_launcher_background.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xhdpi/ic_launcher_monochrome.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-xhdpi/ic_launcher_monochrome.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xhdpi/ic_launcher_squircle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-xhdpi/ic_launcher_squircle.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_background.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_monochrome.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_monochrome.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_squircle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_squircle.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_background.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_monochrome.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_monochrome.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_squircle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_squircle.png
--------------------------------------------------------------------------------
/android/app/src/main/res/values/ic_launcher_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | #eab305
4 |
5 |
--------------------------------------------------------------------------------
/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | @string/BE_APP_NAME
3 |
4 |
--------------------------------------------------------------------------------
/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/android/build.gradle:
--------------------------------------------------------------------------------
1 | buildscript {
2 | ext {
3 | buildToolsVersion = "34.0.0"
4 | minSdkVersion = 23
5 | compileSdkVersion = 34
6 | targetSdkVersion = 34
7 | ndkVersion = "26.1.10909125"
8 | kotlinVersion = "1.9.22"
9 | }
10 | repositories {
11 | google()
12 | mavenCentral()
13 | }
14 | dependencies {
15 | classpath("com.android.tools.build:gradle")
16 | classpath("com.facebook.react:react-native-gradle-plugin")
17 | classpath("org.jetbrains.kotlin:kotlin-gradle-plugin")
18 | }
19 | }
20 |
21 | // apply plugin: "com.facebook.react.rootproject"
22 |
--------------------------------------------------------------------------------
/android/fastlane/Fastfile:
--------------------------------------------------------------------------------
1 | # https://docs.fastlane.tools/
2 |
3 | skip_docs
4 |
5 | envs = [
6 | { name: "dev", id_suffix: ".dev", build_type: "ReleaseDev" },
7 | { name: "stage", id_suffix: ".stage", build_type: "ReleaseStage" },
8 | { name: "prod", id_suffix: "", build_type: "Release" }
9 | ]
10 |
11 | # deploy
12 | lane :deploy do |options|
13 | selected_env = envs.select { |env| env[:name] == options[:env] }.first
14 |
15 | gradle(
16 | task: "bundle",
17 | build_type: selected_env[:build_type]
18 | )
19 |
20 | upload_to_play_store(
21 | package_name: "#{ENV["BE_APP_APPLICATION_ID"]}#{selected_env[:id_suffix]}",
22 | track: "internal", # @todo
23 | release_status: "draft", # @todo
24 | # json_key: ENV["BE_GOOGLE_PLAY_JSON_KEY_FILE_PATH"],
25 | json_key_data: ENV["BE_GOOGLE_PLAY_JSON_KEY_CONTENT"],
26 | skip_upload_apk: true
27 | )
28 | end
29 |
--------------------------------------------------------------------------------
/android/gradle.properties:
--------------------------------------------------------------------------------
1 | # Project-wide Gradle settings.
2 |
3 | # IDE (e.g. Android Studio) users:
4 | # Gradle settings configured through the IDE *will override*
5 | # any settings specified in this file.
6 |
7 | # For more details on how to configure your build environment visit
8 | # http://www.gradle.org/docs/current/userguide/build_environment.html
9 |
10 | # Specifies the JVM arguments used for the daemon process.
11 | # The setting is particularly useful for tweaking memory settings.
12 | # Default value: -Xmx512m -XX:MaxMetaspaceSize=256m
13 | org.gradle.jvmargs=-Xmx2048m -XX:MaxMetaspaceSize=512m
14 |
15 | # When configured, Gradle will run in incubating parallel mode.
16 | # This option should only be used with decoupled projects. More details, visit
17 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
18 | # org.gradle.parallel=true
19 |
20 | # AndroidX package structure to make it clearer which packages are bundled with the
21 | # Android operating system, and which are packaged with your app's APK
22 | # https://developer.android.com/topic/libraries/support-library/androidx-rn
23 | android.useAndroidX=true
24 | # Automatically convert third-party libraries to use AndroidX
25 | android.enableJetifier=true
26 |
27 | # Use this property to specify which architecture you want to build.
28 | # You can also override it from the CLI using
29 | # ./gradlew -PreactNativeArchitectures=x86_64
30 | reactNativeArchitectures=armeabi-v7a,arm64-v8a,x86,x86_64
31 |
32 | # Use this property to enable support to the new architecture.
33 | # This will allow you to use TurboModules and the Fabric render in
34 | # your application. You should enable this flag either if you want
35 | # to write custom TurboModules/Fabric components OR use libraries that
36 | # are providing them.
37 | newArchEnabled=false
38 |
39 | # Use this property to enable or disable the Hermes JS engine.
40 | # If set to false, you will be using JSC instead.
41 | hermesEnabled=true
42 |
--------------------------------------------------------------------------------
/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionBase=GRADLE_USER_HOME
2 | distributionPath=wrapper/dists
3 | distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-all.zip
4 | networkTimeout=10000
5 | validateDistributionUrl=true
6 | zipStoreBase=GRADLE_USER_HOME
7 | zipStorePath=wrapper/dists
8 |
--------------------------------------------------------------------------------
/android/gradlew:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | #
4 | # Copyright © 2015-2021 the original authors.
5 | #
6 | # Licensed under the Apache License, Version 2.0 (the "License");
7 | # you may not use this file except in compliance with the License.
8 | # You may obtain a copy of the License at
9 | #
10 | # https://www.apache.org/licenses/LICENSE-2.0
11 | #
12 | # Unless required by applicable law or agreed to in writing, software
13 | # distributed under the License is distributed on an "AS IS" BASIS,
14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 | # See the License for the specific language governing permissions and
16 | # limitations under the License.
17 | #
18 |
19 | ##############################################################################
20 | #
21 | # Gradle start up script for POSIX generated by Gradle.
22 | #
23 | # Important for running:
24 | #
25 | # (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is
26 | # noncompliant, but you have some other compliant shell such as ksh or
27 | # bash, then to run this script, type that shell name before the whole
28 | # command line, like:
29 | #
30 | # ksh Gradle
31 | #
32 | # Busybox and similar reduced shells will NOT work, because this script
33 | # requires all of these POSIX shell features:
34 | # * functions;
35 | # * expansions «$var», «${var}», «${var:-default}», «${var+SET}»,
36 | # «${var#prefix}», «${var%suffix}», and «$( cmd )»;
37 | # * compound commands having a testable exit status, especially «case»;
38 | # * various built-in commands including «command», «set», and «ulimit».
39 | #
40 | # Important for patching:
41 | #
42 | # (2) This script targets any POSIX shell, so it avoids extensions provided
43 | # by Bash, Ksh, etc; in particular arrays are avoided.
44 | #
45 | # The "traditional" practice of packing multiple parameters into a
46 | # space-separated string is a well documented source of bugs and security
47 | # problems, so this is (mostly) avoided, by progressively accumulating
48 | # options in "$@", and eventually passing that to Java.
49 | #
50 | # Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS,
51 | # and GRADLE_OPTS) rely on word-splitting, this is performed explicitly;
52 | # see the in-line comments for details.
53 | #
54 | # There are tweaks for specific operating systems such as AIX, CygWin,
55 | # Darwin, MinGW, and NonStop.
56 | #
57 | # (3) This script is generated from the Groovy template
58 | # https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
59 | # within the Gradle project.
60 | #
61 | # You can find Gradle at https://github.com/gradle/gradle/.
62 | #
63 | ##############################################################################
64 |
65 | # Attempt to set APP_HOME
66 |
67 | # Resolve links: $0 may be a link
68 | app_path=$0
69 |
70 | # Need this for daisy-chained symlinks.
71 | while
72 | APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path
73 | [ -h "$app_path" ]
74 | do
75 | ls=$( ls -ld "$app_path" )
76 | link=${ls#*' -> '}
77 | case $link in #(
78 | /*) app_path=$link ;; #(
79 | *) app_path=$APP_HOME$link ;;
80 | esac
81 | done
82 |
83 | # This is normally unused
84 | # shellcheck disable=SC2034
85 | APP_BASE_NAME=${0##*/}
86 | # Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
87 | APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit
88 |
89 | # Use the maximum available, or set MAX_FD != -1 to use that value.
90 | MAX_FD=maximum
91 |
92 | warn () {
93 | echo "$*"
94 | } >&2
95 |
96 | die () {
97 | echo
98 | echo "$*"
99 | echo
100 | exit 1
101 | } >&2
102 |
103 | # OS specific support (must be 'true' or 'false').
104 | cygwin=false
105 | msys=false
106 | darwin=false
107 | nonstop=false
108 | case "$( uname )" in #(
109 | CYGWIN* ) cygwin=true ;; #(
110 | Darwin* ) darwin=true ;; #(
111 | MSYS* | MINGW* ) msys=true ;; #(
112 | NONSTOP* ) nonstop=true ;;
113 | esac
114 |
115 | CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
116 |
117 |
118 | # Determine the Java command to use to start the JVM.
119 | if [ -n "$JAVA_HOME" ] ; then
120 | if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
121 | # IBM's JDK on AIX uses strange locations for the executables
122 | JAVACMD=$JAVA_HOME/jre/sh/java
123 | else
124 | JAVACMD=$JAVA_HOME/bin/java
125 | fi
126 | if [ ! -x "$JAVACMD" ] ; then
127 | die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
128 |
129 | Please set the JAVA_HOME variable in your environment to match the
130 | location of your Java installation."
131 | fi
132 | else
133 | JAVACMD=java
134 | if ! command -v java >/dev/null 2>&1
135 | then
136 | die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
137 |
138 | Please set the JAVA_HOME variable in your environment to match the
139 | location of your Java installation."
140 | fi
141 | fi
142 |
143 | # Increase the maximum file descriptors if we can.
144 | if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
145 | case $MAX_FD in #(
146 | max*)
147 | # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
148 | # shellcheck disable=SC2039,SC3045
149 | MAX_FD=$( ulimit -H -n ) ||
150 | warn "Could not query maximum file descriptor limit"
151 | esac
152 | case $MAX_FD in #(
153 | '' | soft) :;; #(
154 | *)
155 | # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
156 | # shellcheck disable=SC2039,SC3045
157 | ulimit -n "$MAX_FD" ||
158 | warn "Could not set maximum file descriptor limit to $MAX_FD"
159 | esac
160 | fi
161 |
162 | # Collect all arguments for the java command, stacking in reverse order:
163 | # * args from the command line
164 | # * the main class name
165 | # * -classpath
166 | # * -D...appname settings
167 | # * --module-path (only if needed)
168 | # * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables.
169 |
170 | # For Cygwin or MSYS, switch paths to Windows format before running java
171 | if "$cygwin" || "$msys" ; then
172 | APP_HOME=$( cygpath --path --mixed "$APP_HOME" )
173 | CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" )
174 |
175 | JAVACMD=$( cygpath --unix "$JAVACMD" )
176 |
177 | # Now convert the arguments - kludge to limit ourselves to /bin/sh
178 | for arg do
179 | if
180 | case $arg in #(
181 | -*) false ;; # don't mess with options #(
182 | /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath
183 | [ -e "$t" ] ;; #(
184 | *) false ;;
185 | esac
186 | then
187 | arg=$( cygpath --path --ignore --mixed "$arg" )
188 | fi
189 | # Roll the args list around exactly as many times as the number of
190 | # args, so each arg winds up back in the position where it started, but
191 | # possibly modified.
192 | #
193 | # NB: a `for` loop captures its iteration list before it begins, so
194 | # changing the positional parameters here affects neither the number of
195 | # iterations, nor the values presented in `arg`.
196 | shift # remove old arg
197 | set -- "$@" "$arg" # push replacement arg
198 | done
199 | fi
200 |
201 |
202 | # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
203 | DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
204 |
205 | # Collect all arguments for the java command:
206 | # * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
207 | # and any embedded shellness will be escaped.
208 | # * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
209 | # treated as '${Hostname}' itself on the command line.
210 |
211 | set -- \
212 | "-Dorg.gradle.appname=$APP_BASE_NAME" \
213 | -classpath "$CLASSPATH" \
214 | org.gradle.wrapper.GradleWrapperMain \
215 | "$@"
216 |
217 | # Stop when "xargs" is not available.
218 | if ! command -v xargs >/dev/null 2>&1
219 | then
220 | die "xargs is not available"
221 | fi
222 |
223 | # Use "xargs" to parse quoted args.
224 | #
225 | # With -n1 it outputs one arg per line, with the quotes and backslashes removed.
226 | #
227 | # In Bash we could simply go:
228 | #
229 | # readarray ARGS < <( xargs -n1 <<<"$var" ) &&
230 | # set -- "${ARGS[@]}" "$@"
231 | #
232 | # but POSIX shell has neither arrays nor command substitution, so instead we
233 | # post-process each arg (as a line of input to sed) to backslash-escape any
234 | # character that might be a shell metacharacter, then use eval to reverse
235 | # that process (while maintaining the separation between arguments), and wrap
236 | # the whole thing up as a single "set" statement.
237 | #
238 | # This will of course break if any of these variables contains a newline or
239 | # an unmatched quote.
240 | #
241 |
242 | eval "set -- $(
243 | printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" |
244 | xargs -n1 |
245 | sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' |
246 | tr '\n' ' '
247 | )" '"$@"'
248 |
249 | exec "$JAVACMD" "$@"
250 |
--------------------------------------------------------------------------------
/android/gradlew.bat:
--------------------------------------------------------------------------------
1 | @rem
2 | @rem Copyright 2015 the original author or authors.
3 | @rem
4 | @rem Licensed under the Apache License, Version 2.0 (the "License");
5 | @rem you may not use this file except in compliance with the License.
6 | @rem You may obtain a copy of the License at
7 | @rem
8 | @rem https://www.apache.org/licenses/LICENSE-2.0
9 | @rem
10 | @rem Unless required by applicable law or agreed to in writing, software
11 | @rem distributed under the License is distributed on an "AS IS" BASIS,
12 | @rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | @rem See the License for the specific language governing permissions and
14 | @rem limitations under the License.
15 | @rem
16 |
17 | @if "%DEBUG%"=="" @echo off
18 | @rem ##########################################################################
19 | @rem
20 | @rem Gradle startup script for Windows
21 | @rem
22 | @rem ##########################################################################
23 |
24 | @rem Set local scope for the variables with windows NT shell
25 | if "%OS%"=="Windows_NT" setlocal
26 |
27 | set DIRNAME=%~dp0
28 | if "%DIRNAME%"=="" set DIRNAME=.
29 | @rem This is normally unused
30 | set APP_BASE_NAME=%~n0
31 | set APP_HOME=%DIRNAME%
32 |
33 | @rem Resolve any "." and ".." in APP_HOME to make it shorter.
34 | for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
35 |
36 | @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
37 | set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
38 |
39 | @rem Find java.exe
40 | if defined JAVA_HOME goto findJavaFromJavaHome
41 |
42 | set JAVA_EXE=java.exe
43 | %JAVA_EXE% -version >NUL 2>&1
44 | if %ERRORLEVEL% equ 0 goto execute
45 |
46 | echo. 1>&2
47 | echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2
48 | echo. 1>&2
49 | echo Please set the JAVA_HOME variable in your environment to match the 1>&2
50 | echo location of your Java installation. 1>&2
51 |
52 | goto fail
53 |
54 | :findJavaFromJavaHome
55 | set JAVA_HOME=%JAVA_HOME:"=%
56 | set JAVA_EXE=%JAVA_HOME%/bin/java.exe
57 |
58 | if exist "%JAVA_EXE%" goto execute
59 |
60 | echo. 1>&2
61 | echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2
62 | echo. 1>&2
63 | echo Please set the JAVA_HOME variable in your environment to match the 1>&2
64 | echo location of your Java installation. 1>&2
65 |
66 | goto fail
67 |
68 | :execute
69 | @rem Setup the command line
70 |
71 | set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
72 |
73 |
74 | @rem Execute Gradle
75 | "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
76 |
77 | :end
78 | @rem End local scope for the variables with windows NT shell
79 | if %ERRORLEVEL% equ 0 goto mainEnd
80 |
81 | :fail
82 | rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
83 | rem the _cmd.exe /c_ return code!
84 | set EXIT_CODE=%ERRORLEVEL%
85 | if %EXIT_CODE% equ 0 set EXIT_CODE=1
86 | if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE%
87 | exit /b %EXIT_CODE%
88 |
89 | :mainEnd
90 | if "%OS%"=="Windows_NT" endlocal
91 |
92 | :omega
93 |
--------------------------------------------------------------------------------
/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'beplus'
2 | apply from: file("../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesSettingsGradle(settings)
3 | include ':app'
4 | includeBuild('../node_modules/@react-native/gradle-plugin')
5 |
--------------------------------------------------------------------------------
/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "beplus",
3 | "displayName": "beplus"
4 | }
5 |
--------------------------------------------------------------------------------
/babel.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | presets: ['module:@react-native/babel-preset'],
3 | };
4 |
--------------------------------------------------------------------------------
/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @format
3 | */
4 |
5 | import {AppRegistry} from 'react-native';
6 | import App from './App';
7 | import {name as appName} from './app.json';
8 |
9 | AppRegistry.registerComponent(appName, () => App);
10 |
--------------------------------------------------------------------------------
/ios/.xcode.env:
--------------------------------------------------------------------------------
1 | # This `.xcode.env` file is versioned and is used to source the environment
2 | # used when running script phases inside Xcode.
3 | # To customize your local environment, you can create an `.xcode.env.local`
4 | # file that is not versioned.
5 |
6 | # NODE_BINARY variable contains the PATH to the node executable.
7 | #
8 | # Customize the NODE_BINARY variable here.
9 | # For example, to use nvm with brew, add the following line
10 | # . "$(brew --prefix nvm)/nvm.sh" --no-use
11 | export NODE_BINARY=$(command -v node)
12 |
--------------------------------------------------------------------------------
/ios/Config.xcconfig:
--------------------------------------------------------------------------------
1 | //
2 | // Config.xcconfig
3 | //
4 |
5 | // Configuration settings file format documentation can be found at:
6 | // https://help.apple.com/xcode/#/dev745c5c974
7 |
8 | #include? "tmp.xcconfig"
9 |
--------------------------------------------------------------------------------
/ios/Podfile:
--------------------------------------------------------------------------------
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
7 |
8 | platform :ios, min_ios_version_supported
9 | prepare_react_native_project!
10 |
11 | linkage = ENV['USE_FRAMEWORKS']
12 | if linkage != nil
13 | Pod::UI.puts "Configuring Pod with #{linkage}ally linked Frameworks".green
14 | use_frameworks! :linkage => linkage.to_sym
15 | end
16 |
17 | target 'beplus' do
18 | config = use_native_modules!
19 |
20 | use_react_native!(
21 | :path => config[:reactNativePath],
22 | # An absolute path to your application root.
23 | :app_path => "#{Pod::Config.instance.installation_root}/.."
24 | )
25 |
26 | target 'beplusTests' do
27 | inherit! :complete
28 | # Pods for testing
29 | end
30 |
31 | post_install do |installer|
32 | # https://github.com/facebook/react-native/blob/main/packages/react-native/scripts/react_native_pods.rb#L197-L202
33 | react_native_post_install(
34 | installer,
35 | config[:reactNativePath],
36 | :mac_catalyst_enabled => false,
37 | # :ccache_enabled => true
38 | )
39 | end
40 | end
41 |
--------------------------------------------------------------------------------
/ios/Podfile.lock:
--------------------------------------------------------------------------------
1 | PODS:
2 | - boost (1.83.0)
3 | - DoubleConversion (1.1.6)
4 | - FBLazyVector (0.74.4)
5 | - fmt (9.1.0)
6 | - glog (0.3.5)
7 | - hermes-engine (0.74.3):
8 | - hermes-engine/Pre-built (= 0.74.3)
9 | - hermes-engine/Pre-built (0.74.3)
10 | - RCT-Folly (2024.01.01.00):
11 | - boost
12 | - DoubleConversion
13 | - fmt (= 9.1.0)
14 | - glog
15 | - RCT-Folly/Default (= 2024.01.01.00)
16 | - RCT-Folly/Default (2024.01.01.00):
17 | - boost
18 | - DoubleConversion
19 | - fmt (= 9.1.0)
20 | - glog
21 | - RCT-Folly/Fabric (2024.01.01.00):
22 | - boost
23 | - DoubleConversion
24 | - fmt (= 9.1.0)
25 | - glog
26 | - RCTDeprecation (0.74.4)
27 | - RCTRequired (0.74.4)
28 | - RCTTypeSafety (0.74.4):
29 | - FBLazyVector (= 0.74.4)
30 | - RCTRequired (= 0.74.4)
31 | - React-Core (= 0.74.4)
32 | - React (0.74.4):
33 | - React-Core (= 0.74.4)
34 | - React-Core/DevSupport (= 0.74.4)
35 | - React-Core/RCTWebSocket (= 0.74.4)
36 | - React-RCTActionSheet (= 0.74.4)
37 | - React-RCTAnimation (= 0.74.4)
38 | - React-RCTBlob (= 0.74.4)
39 | - React-RCTImage (= 0.74.4)
40 | - React-RCTLinking (= 0.74.4)
41 | - React-RCTNetwork (= 0.74.4)
42 | - React-RCTSettings (= 0.74.4)
43 | - React-RCTText (= 0.74.4)
44 | - React-RCTVibration (= 0.74.4)
45 | - React-callinvoker (0.74.4)
46 | - React-Codegen (0.74.4):
47 | - DoubleConversion
48 | - glog
49 | - hermes-engine
50 | - RCT-Folly
51 | - RCTRequired
52 | - RCTTypeSafety
53 | - React-Core
54 | - React-debug
55 | - React-Fabric
56 | - React-FabricImage
57 | - React-featureflags
58 | - React-graphics
59 | - React-jsi
60 | - React-jsiexecutor
61 | - React-NativeModulesApple
62 | - React-rendererdebug
63 | - React-utils
64 | - ReactCommon/turbomodule/bridging
65 | - ReactCommon/turbomodule/core
66 | - React-Core (0.74.4):
67 | - glog
68 | - hermes-engine
69 | - RCT-Folly (= 2024.01.01.00)
70 | - RCTDeprecation
71 | - React-Core/Default (= 0.74.4)
72 | - React-cxxreact
73 | - React-featureflags
74 | - React-hermes
75 | - React-jsi
76 | - React-jsiexecutor
77 | - React-jsinspector
78 | - React-perflogger
79 | - React-runtimescheduler
80 | - React-utils
81 | - SocketRocket (= 0.7.0)
82 | - Yoga
83 | - React-Core/CoreModulesHeaders (0.74.4):
84 | - glog
85 | - hermes-engine
86 | - RCT-Folly (= 2024.01.01.00)
87 | - RCTDeprecation
88 | - React-Core/Default
89 | - React-cxxreact
90 | - React-featureflags
91 | - React-hermes
92 | - React-jsi
93 | - React-jsiexecutor
94 | - React-jsinspector
95 | - React-perflogger
96 | - React-runtimescheduler
97 | - React-utils
98 | - SocketRocket (= 0.7.0)
99 | - Yoga
100 | - React-Core/Default (0.74.4):
101 | - glog
102 | - hermes-engine
103 | - RCT-Folly (= 2024.01.01.00)
104 | - RCTDeprecation
105 | - React-cxxreact
106 | - React-featureflags
107 | - React-hermes
108 | - React-jsi
109 | - React-jsiexecutor
110 | - React-jsinspector
111 | - React-perflogger
112 | - React-runtimescheduler
113 | - React-utils
114 | - SocketRocket (= 0.7.0)
115 | - Yoga
116 | - React-Core/DevSupport (0.74.4):
117 | - glog
118 | - hermes-engine
119 | - RCT-Folly (= 2024.01.01.00)
120 | - RCTDeprecation
121 | - React-Core/Default (= 0.74.4)
122 | - React-Core/RCTWebSocket (= 0.74.4)
123 | - React-cxxreact
124 | - React-featureflags
125 | - React-hermes
126 | - React-jsi
127 | - React-jsiexecutor
128 | - React-jsinspector
129 | - React-perflogger
130 | - React-runtimescheduler
131 | - React-utils
132 | - SocketRocket (= 0.7.0)
133 | - Yoga
134 | - React-Core/RCTActionSheetHeaders (0.74.4):
135 | - glog
136 | - hermes-engine
137 | - RCT-Folly (= 2024.01.01.00)
138 | - RCTDeprecation
139 | - React-Core/Default
140 | - React-cxxreact
141 | - React-featureflags
142 | - React-hermes
143 | - React-jsi
144 | - React-jsiexecutor
145 | - React-jsinspector
146 | - React-perflogger
147 | - React-runtimescheduler
148 | - React-utils
149 | - SocketRocket (= 0.7.0)
150 | - Yoga
151 | - React-Core/RCTAnimationHeaders (0.74.4):
152 | - glog
153 | - hermes-engine
154 | - RCT-Folly (= 2024.01.01.00)
155 | - RCTDeprecation
156 | - React-Core/Default
157 | - React-cxxreact
158 | - React-featureflags
159 | - React-hermes
160 | - React-jsi
161 | - React-jsiexecutor
162 | - React-jsinspector
163 | - React-perflogger
164 | - React-runtimescheduler
165 | - React-utils
166 | - SocketRocket (= 0.7.0)
167 | - Yoga
168 | - React-Core/RCTBlobHeaders (0.74.4):
169 | - glog
170 | - hermes-engine
171 | - RCT-Folly (= 2024.01.01.00)
172 | - RCTDeprecation
173 | - React-Core/Default
174 | - React-cxxreact
175 | - React-featureflags
176 | - React-hermes
177 | - React-jsi
178 | - React-jsiexecutor
179 | - React-jsinspector
180 | - React-perflogger
181 | - React-runtimescheduler
182 | - React-utils
183 | - SocketRocket (= 0.7.0)
184 | - Yoga
185 | - React-Core/RCTImageHeaders (0.74.4):
186 | - glog
187 | - hermes-engine
188 | - RCT-Folly (= 2024.01.01.00)
189 | - RCTDeprecation
190 | - React-Core/Default
191 | - React-cxxreact
192 | - React-featureflags
193 | - React-hermes
194 | - React-jsi
195 | - React-jsiexecutor
196 | - React-jsinspector
197 | - React-perflogger
198 | - React-runtimescheduler
199 | - React-utils
200 | - SocketRocket (= 0.7.0)
201 | - Yoga
202 | - React-Core/RCTLinkingHeaders (0.74.4):
203 | - glog
204 | - hermes-engine
205 | - RCT-Folly (= 2024.01.01.00)
206 | - RCTDeprecation
207 | - React-Core/Default
208 | - React-cxxreact
209 | - React-featureflags
210 | - React-hermes
211 | - React-jsi
212 | - React-jsiexecutor
213 | - React-jsinspector
214 | - React-perflogger
215 | - React-runtimescheduler
216 | - React-utils
217 | - SocketRocket (= 0.7.0)
218 | - Yoga
219 | - React-Core/RCTNetworkHeaders (0.74.4):
220 | - glog
221 | - hermes-engine
222 | - RCT-Folly (= 2024.01.01.00)
223 | - RCTDeprecation
224 | - React-Core/Default
225 | - React-cxxreact
226 | - React-featureflags
227 | - React-hermes
228 | - React-jsi
229 | - React-jsiexecutor
230 | - React-jsinspector
231 | - React-perflogger
232 | - React-runtimescheduler
233 | - React-utils
234 | - SocketRocket (= 0.7.0)
235 | - Yoga
236 | - React-Core/RCTSettingsHeaders (0.74.4):
237 | - glog
238 | - hermes-engine
239 | - RCT-Folly (= 2024.01.01.00)
240 | - RCTDeprecation
241 | - React-Core/Default
242 | - React-cxxreact
243 | - React-featureflags
244 | - React-hermes
245 | - React-jsi
246 | - React-jsiexecutor
247 | - React-jsinspector
248 | - React-perflogger
249 | - React-runtimescheduler
250 | - React-utils
251 | - SocketRocket (= 0.7.0)
252 | - Yoga
253 | - React-Core/RCTTextHeaders (0.74.4):
254 | - glog
255 | - hermes-engine
256 | - RCT-Folly (= 2024.01.01.00)
257 | - RCTDeprecation
258 | - React-Core/Default
259 | - React-cxxreact
260 | - React-featureflags
261 | - React-hermes
262 | - React-jsi
263 | - React-jsiexecutor
264 | - React-jsinspector
265 | - React-perflogger
266 | - React-runtimescheduler
267 | - React-utils
268 | - SocketRocket (= 0.7.0)
269 | - Yoga
270 | - React-Core/RCTVibrationHeaders (0.74.4):
271 | - glog
272 | - hermes-engine
273 | - RCT-Folly (= 2024.01.01.00)
274 | - RCTDeprecation
275 | - React-Core/Default
276 | - React-cxxreact
277 | - React-featureflags
278 | - React-hermes
279 | - React-jsi
280 | - React-jsiexecutor
281 | - React-jsinspector
282 | - React-perflogger
283 | - React-runtimescheduler
284 | - React-utils
285 | - SocketRocket (= 0.7.0)
286 | - Yoga
287 | - React-Core/RCTWebSocket (0.74.4):
288 | - glog
289 | - hermes-engine
290 | - RCT-Folly (= 2024.01.01.00)
291 | - RCTDeprecation
292 | - React-Core/Default (= 0.74.4)
293 | - React-cxxreact
294 | - React-featureflags
295 | - React-hermes
296 | - React-jsi
297 | - React-jsiexecutor
298 | - React-jsinspector
299 | - React-perflogger
300 | - React-runtimescheduler
301 | - React-utils
302 | - SocketRocket (= 0.7.0)
303 | - Yoga
304 | - React-CoreModules (0.74.4):
305 | - DoubleConversion
306 | - fmt (= 9.1.0)
307 | - RCT-Folly (= 2024.01.01.00)
308 | - RCTTypeSafety (= 0.74.4)
309 | - React-Codegen
310 | - React-Core/CoreModulesHeaders (= 0.74.4)
311 | - React-jsi (= 0.74.4)
312 | - React-jsinspector
313 | - React-NativeModulesApple
314 | - React-RCTBlob
315 | - React-RCTImage (= 0.74.4)
316 | - ReactCommon
317 | - SocketRocket (= 0.7.0)
318 | - React-cxxreact (0.74.4):
319 | - boost (= 1.83.0)
320 | - DoubleConversion
321 | - fmt (= 9.1.0)
322 | - glog
323 | - hermes-engine
324 | - RCT-Folly (= 2024.01.01.00)
325 | - React-callinvoker (= 0.74.4)
326 | - React-debug (= 0.74.4)
327 | - React-jsi (= 0.74.4)
328 | - React-jsinspector
329 | - React-logger (= 0.74.4)
330 | - React-perflogger (= 0.74.4)
331 | - React-runtimeexecutor (= 0.74.4)
332 | - React-debug (0.74.4)
333 | - React-Fabric (0.74.4):
334 | - DoubleConversion
335 | - fmt (= 9.1.0)
336 | - glog
337 | - hermes-engine
338 | - RCT-Folly/Fabric (= 2024.01.01.00)
339 | - RCTRequired
340 | - RCTTypeSafety
341 | - React-Core
342 | - React-cxxreact
343 | - React-debug
344 | - React-Fabric/animations (= 0.74.4)
345 | - React-Fabric/attributedstring (= 0.74.4)
346 | - React-Fabric/componentregistry (= 0.74.4)
347 | - React-Fabric/componentregistrynative (= 0.74.4)
348 | - React-Fabric/components (= 0.74.4)
349 | - React-Fabric/core (= 0.74.4)
350 | - React-Fabric/imagemanager (= 0.74.4)
351 | - React-Fabric/leakchecker (= 0.74.4)
352 | - React-Fabric/mounting (= 0.74.4)
353 | - React-Fabric/scheduler (= 0.74.4)
354 | - React-Fabric/telemetry (= 0.74.4)
355 | - React-Fabric/templateprocessor (= 0.74.4)
356 | - React-Fabric/textlayoutmanager (= 0.74.4)
357 | - React-Fabric/uimanager (= 0.74.4)
358 | - React-graphics
359 | - React-jsi
360 | - React-jsiexecutor
361 | - React-logger
362 | - React-rendererdebug
363 | - React-runtimescheduler
364 | - React-utils
365 | - ReactCommon/turbomodule/core
366 | - React-Fabric/animations (0.74.4):
367 | - DoubleConversion
368 | - fmt (= 9.1.0)
369 | - glog
370 | - hermes-engine
371 | - RCT-Folly/Fabric (= 2024.01.01.00)
372 | - RCTRequired
373 | - RCTTypeSafety
374 | - React-Core
375 | - React-cxxreact
376 | - React-debug
377 | - React-graphics
378 | - React-jsi
379 | - React-jsiexecutor
380 | - React-logger
381 | - React-rendererdebug
382 | - React-runtimescheduler
383 | - React-utils
384 | - ReactCommon/turbomodule/core
385 | - React-Fabric/attributedstring (0.74.4):
386 | - DoubleConversion
387 | - fmt (= 9.1.0)
388 | - glog
389 | - hermes-engine
390 | - RCT-Folly/Fabric (= 2024.01.01.00)
391 | - RCTRequired
392 | - RCTTypeSafety
393 | - React-Core
394 | - React-cxxreact
395 | - React-debug
396 | - React-graphics
397 | - React-jsi
398 | - React-jsiexecutor
399 | - React-logger
400 | - React-rendererdebug
401 | - React-runtimescheduler
402 | - React-utils
403 | - ReactCommon/turbomodule/core
404 | - React-Fabric/componentregistry (0.74.4):
405 | - DoubleConversion
406 | - fmt (= 9.1.0)
407 | - glog
408 | - hermes-engine
409 | - RCT-Folly/Fabric (= 2024.01.01.00)
410 | - RCTRequired
411 | - RCTTypeSafety
412 | - React-Core
413 | - React-cxxreact
414 | - React-debug
415 | - React-graphics
416 | - React-jsi
417 | - React-jsiexecutor
418 | - React-logger
419 | - React-rendererdebug
420 | - React-runtimescheduler
421 | - React-utils
422 | - ReactCommon/turbomodule/core
423 | - React-Fabric/componentregistrynative (0.74.4):
424 | - DoubleConversion
425 | - fmt (= 9.1.0)
426 | - glog
427 | - hermes-engine
428 | - RCT-Folly/Fabric (= 2024.01.01.00)
429 | - RCTRequired
430 | - RCTTypeSafety
431 | - React-Core
432 | - React-cxxreact
433 | - React-debug
434 | - React-graphics
435 | - React-jsi
436 | - React-jsiexecutor
437 | - React-logger
438 | - React-rendererdebug
439 | - React-runtimescheduler
440 | - React-utils
441 | - ReactCommon/turbomodule/core
442 | - React-Fabric/components (0.74.4):
443 | - DoubleConversion
444 | - fmt (= 9.1.0)
445 | - glog
446 | - hermes-engine
447 | - RCT-Folly/Fabric (= 2024.01.01.00)
448 | - RCTRequired
449 | - RCTTypeSafety
450 | - React-Core
451 | - React-cxxreact
452 | - React-debug
453 | - React-Fabric/components/inputaccessory (= 0.74.4)
454 | - React-Fabric/components/legacyviewmanagerinterop (= 0.74.4)
455 | - React-Fabric/components/modal (= 0.74.4)
456 | - React-Fabric/components/rncore (= 0.74.4)
457 | - React-Fabric/components/root (= 0.74.4)
458 | - React-Fabric/components/safeareaview (= 0.74.4)
459 | - React-Fabric/components/scrollview (= 0.74.4)
460 | - React-Fabric/components/text (= 0.74.4)
461 | - React-Fabric/components/textinput (= 0.74.4)
462 | - React-Fabric/components/unimplementedview (= 0.74.4)
463 | - React-Fabric/components/view (= 0.74.4)
464 | - React-graphics
465 | - React-jsi
466 | - React-jsiexecutor
467 | - React-logger
468 | - React-rendererdebug
469 | - React-runtimescheduler
470 | - React-utils
471 | - ReactCommon/turbomodule/core
472 | - React-Fabric/components/inputaccessory (0.74.4):
473 | - DoubleConversion
474 | - fmt (= 9.1.0)
475 | - glog
476 | - hermes-engine
477 | - RCT-Folly/Fabric (= 2024.01.01.00)
478 | - RCTRequired
479 | - RCTTypeSafety
480 | - React-Core
481 | - React-cxxreact
482 | - React-debug
483 | - React-graphics
484 | - React-jsi
485 | - React-jsiexecutor
486 | - React-logger
487 | - React-rendererdebug
488 | - React-runtimescheduler
489 | - React-utils
490 | - ReactCommon/turbomodule/core
491 | - React-Fabric/components/legacyviewmanagerinterop (0.74.4):
492 | - DoubleConversion
493 | - fmt (= 9.1.0)
494 | - glog
495 | - hermes-engine
496 | - RCT-Folly/Fabric (= 2024.01.01.00)
497 | - RCTRequired
498 | - RCTTypeSafety
499 | - React-Core
500 | - React-cxxreact
501 | - React-debug
502 | - React-graphics
503 | - React-jsi
504 | - React-jsiexecutor
505 | - React-logger
506 | - React-rendererdebug
507 | - React-runtimescheduler
508 | - React-utils
509 | - ReactCommon/turbomodule/core
510 | - React-Fabric/components/modal (0.74.4):
511 | - DoubleConversion
512 | - fmt (= 9.1.0)
513 | - glog
514 | - hermes-engine
515 | - RCT-Folly/Fabric (= 2024.01.01.00)
516 | - RCTRequired
517 | - RCTTypeSafety
518 | - React-Core
519 | - React-cxxreact
520 | - React-debug
521 | - React-graphics
522 | - React-jsi
523 | - React-jsiexecutor
524 | - React-logger
525 | - React-rendererdebug
526 | - React-runtimescheduler
527 | - React-utils
528 | - ReactCommon/turbomodule/core
529 | - React-Fabric/components/rncore (0.74.4):
530 | - DoubleConversion
531 | - fmt (= 9.1.0)
532 | - glog
533 | - hermes-engine
534 | - RCT-Folly/Fabric (= 2024.01.01.00)
535 | - RCTRequired
536 | - RCTTypeSafety
537 | - React-Core
538 | - React-cxxreact
539 | - React-debug
540 | - React-graphics
541 | - React-jsi
542 | - React-jsiexecutor
543 | - React-logger
544 | - React-rendererdebug
545 | - React-runtimescheduler
546 | - React-utils
547 | - ReactCommon/turbomodule/core
548 | - React-Fabric/components/root (0.74.4):
549 | - DoubleConversion
550 | - fmt (= 9.1.0)
551 | - glog
552 | - hermes-engine
553 | - RCT-Folly/Fabric (= 2024.01.01.00)
554 | - RCTRequired
555 | - RCTTypeSafety
556 | - React-Core
557 | - React-cxxreact
558 | - React-debug
559 | - React-graphics
560 | - React-jsi
561 | - React-jsiexecutor
562 | - React-logger
563 | - React-rendererdebug
564 | - React-runtimescheduler
565 | - React-utils
566 | - ReactCommon/turbomodule/core
567 | - React-Fabric/components/safeareaview (0.74.4):
568 | - DoubleConversion
569 | - fmt (= 9.1.0)
570 | - glog
571 | - hermes-engine
572 | - RCT-Folly/Fabric (= 2024.01.01.00)
573 | - RCTRequired
574 | - RCTTypeSafety
575 | - React-Core
576 | - React-cxxreact
577 | - React-debug
578 | - React-graphics
579 | - React-jsi
580 | - React-jsiexecutor
581 | - React-logger
582 | - React-rendererdebug
583 | - React-runtimescheduler
584 | - React-utils
585 | - ReactCommon/turbomodule/core
586 | - React-Fabric/components/scrollview (0.74.4):
587 | - DoubleConversion
588 | - fmt (= 9.1.0)
589 | - glog
590 | - hermes-engine
591 | - RCT-Folly/Fabric (= 2024.01.01.00)
592 | - RCTRequired
593 | - RCTTypeSafety
594 | - React-Core
595 | - React-cxxreact
596 | - React-debug
597 | - React-graphics
598 | - React-jsi
599 | - React-jsiexecutor
600 | - React-logger
601 | - React-rendererdebug
602 | - React-runtimescheduler
603 | - React-utils
604 | - ReactCommon/turbomodule/core
605 | - React-Fabric/components/text (0.74.4):
606 | - DoubleConversion
607 | - fmt (= 9.1.0)
608 | - glog
609 | - hermes-engine
610 | - RCT-Folly/Fabric (= 2024.01.01.00)
611 | - RCTRequired
612 | - RCTTypeSafety
613 | - React-Core
614 | - React-cxxreact
615 | - React-debug
616 | - React-graphics
617 | - React-jsi
618 | - React-jsiexecutor
619 | - React-logger
620 | - React-rendererdebug
621 | - React-runtimescheduler
622 | - React-utils
623 | - ReactCommon/turbomodule/core
624 | - React-Fabric/components/textinput (0.74.4):
625 | - DoubleConversion
626 | - fmt (= 9.1.0)
627 | - glog
628 | - hermes-engine
629 | - RCT-Folly/Fabric (= 2024.01.01.00)
630 | - RCTRequired
631 | - RCTTypeSafety
632 | - React-Core
633 | - React-cxxreact
634 | - React-debug
635 | - React-graphics
636 | - React-jsi
637 | - React-jsiexecutor
638 | - React-logger
639 | - React-rendererdebug
640 | - React-runtimescheduler
641 | - React-utils
642 | - ReactCommon/turbomodule/core
643 | - React-Fabric/components/unimplementedview (0.74.4):
644 | - DoubleConversion
645 | - fmt (= 9.1.0)
646 | - glog
647 | - hermes-engine
648 | - RCT-Folly/Fabric (= 2024.01.01.00)
649 | - RCTRequired
650 | - RCTTypeSafety
651 | - React-Core
652 | - React-cxxreact
653 | - React-debug
654 | - React-graphics
655 | - React-jsi
656 | - React-jsiexecutor
657 | - React-logger
658 | - React-rendererdebug
659 | - React-runtimescheduler
660 | - React-utils
661 | - ReactCommon/turbomodule/core
662 | - React-Fabric/components/view (0.74.4):
663 | - DoubleConversion
664 | - fmt (= 9.1.0)
665 | - glog
666 | - hermes-engine
667 | - RCT-Folly/Fabric (= 2024.01.01.00)
668 | - RCTRequired
669 | - RCTTypeSafety
670 | - React-Core
671 | - React-cxxreact
672 | - React-debug
673 | - React-graphics
674 | - React-jsi
675 | - React-jsiexecutor
676 | - React-logger
677 | - React-rendererdebug
678 | - React-runtimescheduler
679 | - React-utils
680 | - ReactCommon/turbomodule/core
681 | - Yoga
682 | - React-Fabric/core (0.74.4):
683 | - DoubleConversion
684 | - fmt (= 9.1.0)
685 | - glog
686 | - hermes-engine
687 | - RCT-Folly/Fabric (= 2024.01.01.00)
688 | - RCTRequired
689 | - RCTTypeSafety
690 | - React-Core
691 | - React-cxxreact
692 | - React-debug
693 | - React-graphics
694 | - React-jsi
695 | - React-jsiexecutor
696 | - React-logger
697 | - React-rendererdebug
698 | - React-runtimescheduler
699 | - React-utils
700 | - ReactCommon/turbomodule/core
701 | - React-Fabric/imagemanager (0.74.4):
702 | - DoubleConversion
703 | - fmt (= 9.1.0)
704 | - glog
705 | - hermes-engine
706 | - RCT-Folly/Fabric (= 2024.01.01.00)
707 | - RCTRequired
708 | - RCTTypeSafety
709 | - React-Core
710 | - React-cxxreact
711 | - React-debug
712 | - React-graphics
713 | - React-jsi
714 | - React-jsiexecutor
715 | - React-logger
716 | - React-rendererdebug
717 | - React-runtimescheduler
718 | - React-utils
719 | - ReactCommon/turbomodule/core
720 | - React-Fabric/leakchecker (0.74.4):
721 | - DoubleConversion
722 | - fmt (= 9.1.0)
723 | - glog
724 | - hermes-engine
725 | - RCT-Folly/Fabric (= 2024.01.01.00)
726 | - RCTRequired
727 | - RCTTypeSafety
728 | - React-Core
729 | - React-cxxreact
730 | - React-debug
731 | - React-graphics
732 | - React-jsi
733 | - React-jsiexecutor
734 | - React-logger
735 | - React-rendererdebug
736 | - React-runtimescheduler
737 | - React-utils
738 | - ReactCommon/turbomodule/core
739 | - React-Fabric/mounting (0.74.4):
740 | - DoubleConversion
741 | - fmt (= 9.1.0)
742 | - glog
743 | - hermes-engine
744 | - RCT-Folly/Fabric (= 2024.01.01.00)
745 | - RCTRequired
746 | - RCTTypeSafety
747 | - React-Core
748 | - React-cxxreact
749 | - React-debug
750 | - React-graphics
751 | - React-jsi
752 | - React-jsiexecutor
753 | - React-logger
754 | - React-rendererdebug
755 | - React-runtimescheduler
756 | - React-utils
757 | - ReactCommon/turbomodule/core
758 | - React-Fabric/scheduler (0.74.4):
759 | - DoubleConversion
760 | - fmt (= 9.1.0)
761 | - glog
762 | - hermes-engine
763 | - RCT-Folly/Fabric (= 2024.01.01.00)
764 | - RCTRequired
765 | - RCTTypeSafety
766 | - React-Core
767 | - React-cxxreact
768 | - React-debug
769 | - React-graphics
770 | - React-jsi
771 | - React-jsiexecutor
772 | - React-logger
773 | - React-rendererdebug
774 | - React-runtimescheduler
775 | - React-utils
776 | - ReactCommon/turbomodule/core
777 | - React-Fabric/telemetry (0.74.4):
778 | - DoubleConversion
779 | - fmt (= 9.1.0)
780 | - glog
781 | - hermes-engine
782 | - RCT-Folly/Fabric (= 2024.01.01.00)
783 | - RCTRequired
784 | - RCTTypeSafety
785 | - React-Core
786 | - React-cxxreact
787 | - React-debug
788 | - React-graphics
789 | - React-jsi
790 | - React-jsiexecutor
791 | - React-logger
792 | - React-rendererdebug
793 | - React-runtimescheduler
794 | - React-utils
795 | - ReactCommon/turbomodule/core
796 | - React-Fabric/templateprocessor (0.74.4):
797 | - DoubleConversion
798 | - fmt (= 9.1.0)
799 | - glog
800 | - hermes-engine
801 | - RCT-Folly/Fabric (= 2024.01.01.00)
802 | - RCTRequired
803 | - RCTTypeSafety
804 | - React-Core
805 | - React-cxxreact
806 | - React-debug
807 | - React-graphics
808 | - React-jsi
809 | - React-jsiexecutor
810 | - React-logger
811 | - React-rendererdebug
812 | - React-runtimescheduler
813 | - React-utils
814 | - ReactCommon/turbomodule/core
815 | - React-Fabric/textlayoutmanager (0.74.4):
816 | - DoubleConversion
817 | - fmt (= 9.1.0)
818 | - glog
819 | - hermes-engine
820 | - RCT-Folly/Fabric (= 2024.01.01.00)
821 | - RCTRequired
822 | - RCTTypeSafety
823 | - React-Core
824 | - React-cxxreact
825 | - React-debug
826 | - React-Fabric/uimanager
827 | - React-graphics
828 | - React-jsi
829 | - React-jsiexecutor
830 | - React-logger
831 | - React-rendererdebug
832 | - React-runtimescheduler
833 | - React-utils
834 | - ReactCommon/turbomodule/core
835 | - React-Fabric/uimanager (0.74.4):
836 | - DoubleConversion
837 | - fmt (= 9.1.0)
838 | - glog
839 | - hermes-engine
840 | - RCT-Folly/Fabric (= 2024.01.01.00)
841 | - RCTRequired
842 | - RCTTypeSafety
843 | - React-Core
844 | - React-cxxreact
845 | - React-debug
846 | - React-graphics
847 | - React-jsi
848 | - React-jsiexecutor
849 | - React-logger
850 | - React-rendererdebug
851 | - React-runtimescheduler
852 | - React-utils
853 | - ReactCommon/turbomodule/core
854 | - React-FabricImage (0.74.4):
855 | - DoubleConversion
856 | - fmt (= 9.1.0)
857 | - glog
858 | - hermes-engine
859 | - RCT-Folly/Fabric (= 2024.01.01.00)
860 | - RCTRequired (= 0.74.4)
861 | - RCTTypeSafety (= 0.74.4)
862 | - React-Fabric
863 | - React-graphics
864 | - React-ImageManager
865 | - React-jsi
866 | - React-jsiexecutor (= 0.74.4)
867 | - React-logger
868 | - React-rendererdebug
869 | - React-utils
870 | - ReactCommon
871 | - Yoga
872 | - React-featureflags (0.74.4)
873 | - React-graphics (0.74.4):
874 | - DoubleConversion
875 | - fmt (= 9.1.0)
876 | - glog
877 | - RCT-Folly/Fabric (= 2024.01.01.00)
878 | - React-Core/Default (= 0.74.4)
879 | - React-utils
880 | - React-hermes (0.74.4):
881 | - DoubleConversion
882 | - fmt (= 9.1.0)
883 | - glog
884 | - hermes-engine
885 | - RCT-Folly (= 2024.01.01.00)
886 | - React-cxxreact (= 0.74.4)
887 | - React-jsi
888 | - React-jsiexecutor (= 0.74.4)
889 | - React-jsinspector
890 | - React-perflogger (= 0.74.4)
891 | - React-runtimeexecutor
892 | - React-ImageManager (0.74.4):
893 | - glog
894 | - RCT-Folly/Fabric
895 | - React-Core/Default
896 | - React-debug
897 | - React-Fabric
898 | - React-graphics
899 | - React-rendererdebug
900 | - React-utils
901 | - React-jserrorhandler (0.74.4):
902 | - RCT-Folly/Fabric (= 2024.01.01.00)
903 | - React-debug
904 | - React-jsi
905 | - React-Mapbuffer
906 | - React-jsi (0.74.4):
907 | - boost (= 1.83.0)
908 | - DoubleConversion
909 | - fmt (= 9.1.0)
910 | - glog
911 | - hermes-engine
912 | - RCT-Folly (= 2024.01.01.00)
913 | - React-jsiexecutor (0.74.4):
914 | - DoubleConversion
915 | - fmt (= 9.1.0)
916 | - glog
917 | - hermes-engine
918 | - RCT-Folly (= 2024.01.01.00)
919 | - React-cxxreact (= 0.74.4)
920 | - React-jsi (= 0.74.4)
921 | - React-jsinspector
922 | - React-perflogger (= 0.74.4)
923 | - React-jsinspector (0.74.4):
924 | - DoubleConversion
925 | - glog
926 | - hermes-engine
927 | - RCT-Folly (= 2024.01.01.00)
928 | - React-featureflags
929 | - React-jsi
930 | - React-runtimeexecutor (= 0.74.4)
931 | - React-jsitracing (0.74.4):
932 | - React-jsi
933 | - React-logger (0.74.4):
934 | - glog
935 | - React-Mapbuffer (0.74.4):
936 | - glog
937 | - React-debug
938 | - react-native-config (1.5.3):
939 | - react-native-config/App (= 1.5.3)
940 | - react-native-config/App (1.5.3):
941 | - React-Core
942 | - React-nativeconfig (0.74.4)
943 | - React-NativeModulesApple (0.74.4):
944 | - glog
945 | - hermes-engine
946 | - React-callinvoker
947 | - React-Core
948 | - React-cxxreact
949 | - React-jsi
950 | - React-jsinspector
951 | - React-runtimeexecutor
952 | - ReactCommon/turbomodule/bridging
953 | - ReactCommon/turbomodule/core
954 | - React-perflogger (0.74.4)
955 | - React-RCTActionSheet (0.74.4):
956 | - React-Core/RCTActionSheetHeaders (= 0.74.4)
957 | - React-RCTAnimation (0.74.4):
958 | - RCT-Folly (= 2024.01.01.00)
959 | - RCTTypeSafety
960 | - React-Codegen
961 | - React-Core/RCTAnimationHeaders
962 | - React-jsi
963 | - React-NativeModulesApple
964 | - ReactCommon
965 | - React-RCTAppDelegate (0.74.4):
966 | - RCT-Folly (= 2024.01.01.00)
967 | - RCTRequired
968 | - RCTTypeSafety
969 | - React-Codegen
970 | - React-Core
971 | - React-CoreModules
972 | - React-debug
973 | - React-Fabric
974 | - React-featureflags
975 | - React-graphics
976 | - React-hermes
977 | - React-nativeconfig
978 | - React-NativeModulesApple
979 | - React-RCTFabric
980 | - React-RCTImage
981 | - React-RCTNetwork
982 | - React-rendererdebug
983 | - React-RuntimeApple
984 | - React-RuntimeCore
985 | - React-RuntimeHermes
986 | - React-runtimescheduler
987 | - React-utils
988 | - ReactCommon
989 | - React-RCTBlob (0.74.4):
990 | - DoubleConversion
991 | - fmt (= 9.1.0)
992 | - hermes-engine
993 | - RCT-Folly (= 2024.01.01.00)
994 | - React-Codegen
995 | - React-Core/RCTBlobHeaders
996 | - React-Core/RCTWebSocket
997 | - React-jsi
998 | - React-jsinspector
999 | - React-NativeModulesApple
1000 | - React-RCTNetwork
1001 | - ReactCommon
1002 | - React-RCTFabric (0.74.4):
1003 | - glog
1004 | - hermes-engine
1005 | - RCT-Folly/Fabric (= 2024.01.01.00)
1006 | - React-Core
1007 | - React-debug
1008 | - React-Fabric
1009 | - React-FabricImage
1010 | - React-featureflags
1011 | - React-graphics
1012 | - React-ImageManager
1013 | - React-jsi
1014 | - React-jsinspector
1015 | - React-nativeconfig
1016 | - React-RCTImage
1017 | - React-RCTText
1018 | - React-rendererdebug
1019 | - React-runtimescheduler
1020 | - React-utils
1021 | - Yoga
1022 | - React-RCTImage (0.74.4):
1023 | - RCT-Folly (= 2024.01.01.00)
1024 | - RCTTypeSafety
1025 | - React-Codegen
1026 | - React-Core/RCTImageHeaders
1027 | - React-jsi
1028 | - React-NativeModulesApple
1029 | - React-RCTNetwork
1030 | - ReactCommon
1031 | - React-RCTLinking (0.74.4):
1032 | - React-Codegen
1033 | - React-Core/RCTLinkingHeaders (= 0.74.4)
1034 | - React-jsi (= 0.74.4)
1035 | - React-NativeModulesApple
1036 | - ReactCommon
1037 | - ReactCommon/turbomodule/core (= 0.74.4)
1038 | - React-RCTNetwork (0.74.4):
1039 | - RCT-Folly (= 2024.01.01.00)
1040 | - RCTTypeSafety
1041 | - React-Codegen
1042 | - React-Core/RCTNetworkHeaders
1043 | - React-jsi
1044 | - React-NativeModulesApple
1045 | - ReactCommon
1046 | - React-RCTSettings (0.74.4):
1047 | - RCT-Folly (= 2024.01.01.00)
1048 | - RCTTypeSafety
1049 | - React-Codegen
1050 | - React-Core/RCTSettingsHeaders
1051 | - React-jsi
1052 | - React-NativeModulesApple
1053 | - ReactCommon
1054 | - React-RCTText (0.74.4):
1055 | - React-Core/RCTTextHeaders (= 0.74.4)
1056 | - Yoga
1057 | - React-RCTVibration (0.74.4):
1058 | - RCT-Folly (= 2024.01.01.00)
1059 | - React-Codegen
1060 | - React-Core/RCTVibrationHeaders
1061 | - React-jsi
1062 | - React-NativeModulesApple
1063 | - ReactCommon
1064 | - React-rendererdebug (0.74.4):
1065 | - DoubleConversion
1066 | - fmt (= 9.1.0)
1067 | - RCT-Folly (= 2024.01.01.00)
1068 | - React-debug
1069 | - React-rncore (0.74.4)
1070 | - React-RuntimeApple (0.74.4):
1071 | - hermes-engine
1072 | - RCT-Folly/Fabric (= 2024.01.01.00)
1073 | - React-callinvoker
1074 | - React-Core/Default
1075 | - React-CoreModules
1076 | - React-cxxreact
1077 | - React-jserrorhandler
1078 | - React-jsi
1079 | - React-jsiexecutor
1080 | - React-jsinspector
1081 | - React-Mapbuffer
1082 | - React-NativeModulesApple
1083 | - React-RCTFabric
1084 | - React-RuntimeCore
1085 | - React-runtimeexecutor
1086 | - React-RuntimeHermes
1087 | - React-utils
1088 | - React-RuntimeCore (0.74.4):
1089 | - glog
1090 | - hermes-engine
1091 | - RCT-Folly/Fabric (= 2024.01.01.00)
1092 | - React-cxxreact
1093 | - React-featureflags
1094 | - React-jserrorhandler
1095 | - React-jsi
1096 | - React-jsiexecutor
1097 | - React-jsinspector
1098 | - React-runtimeexecutor
1099 | - React-runtimescheduler
1100 | - React-utils
1101 | - React-runtimeexecutor (0.74.4):
1102 | - React-jsi (= 0.74.4)
1103 | - React-RuntimeHermes (0.74.4):
1104 | - hermes-engine
1105 | - RCT-Folly/Fabric (= 2024.01.01.00)
1106 | - React-featureflags
1107 | - React-hermes
1108 | - React-jsi
1109 | - React-jsinspector
1110 | - React-jsitracing
1111 | - React-nativeconfig
1112 | - React-RuntimeCore
1113 | - React-utils
1114 | - React-runtimescheduler (0.74.4):
1115 | - glog
1116 | - hermes-engine
1117 | - RCT-Folly (= 2024.01.01.00)
1118 | - React-callinvoker
1119 | - React-cxxreact
1120 | - React-debug
1121 | - React-featureflags
1122 | - React-jsi
1123 | - React-rendererdebug
1124 | - React-runtimeexecutor
1125 | - React-utils
1126 | - React-utils (0.74.4):
1127 | - glog
1128 | - hermes-engine
1129 | - RCT-Folly (= 2024.01.01.00)
1130 | - React-debug
1131 | - React-jsi (= 0.74.4)
1132 | - ReactCommon (0.74.4):
1133 | - ReactCommon/turbomodule (= 0.74.4)
1134 | - ReactCommon/turbomodule (0.74.4):
1135 | - DoubleConversion
1136 | - fmt (= 9.1.0)
1137 | - glog
1138 | - hermes-engine
1139 | - RCT-Folly (= 2024.01.01.00)
1140 | - React-callinvoker (= 0.74.4)
1141 | - React-cxxreact (= 0.74.4)
1142 | - React-jsi (= 0.74.4)
1143 | - React-logger (= 0.74.4)
1144 | - React-perflogger (= 0.74.4)
1145 | - ReactCommon/turbomodule/bridging (= 0.74.4)
1146 | - ReactCommon/turbomodule/core (= 0.74.4)
1147 | - ReactCommon/turbomodule/bridging (0.74.4):
1148 | - DoubleConversion
1149 | - fmt (= 9.1.0)
1150 | - glog
1151 | - hermes-engine
1152 | - RCT-Folly (= 2024.01.01.00)
1153 | - React-callinvoker (= 0.74.4)
1154 | - React-cxxreact (= 0.74.4)
1155 | - React-jsi (= 0.74.4)
1156 | - React-logger (= 0.74.4)
1157 | - React-perflogger (= 0.74.4)
1158 | - ReactCommon/turbomodule/core (0.74.4):
1159 | - DoubleConversion
1160 | - fmt (= 9.1.0)
1161 | - glog
1162 | - hermes-engine
1163 | - RCT-Folly (= 2024.01.01.00)
1164 | - React-callinvoker (= 0.74.4)
1165 | - React-cxxreact (= 0.74.4)
1166 | - React-debug (= 0.74.4)
1167 | - React-jsi (= 0.74.4)
1168 | - React-logger (= 0.74.4)
1169 | - React-perflogger (= 0.74.4)
1170 | - React-utils (= 0.74.4)
1171 | - SocketRocket (0.7.0)
1172 | - Yoga (0.0.0)
1173 |
1174 | DEPENDENCIES:
1175 | - boost (from `../node_modules/react-native/third-party-podspecs/boost.podspec`)
1176 | - DoubleConversion (from `../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`)
1177 | - FBLazyVector (from `../node_modules/react-native/Libraries/FBLazyVector`)
1178 | - fmt (from `../node_modules/react-native/third-party-podspecs/fmt.podspec`)
1179 | - glog (from `../node_modules/react-native/third-party-podspecs/glog.podspec`)
1180 | - hermes-engine (from `../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec`)
1181 | - RCT-Folly (from `../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`)
1182 | - RCT-Folly/Fabric (from `../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`)
1183 | - RCTDeprecation (from `../node_modules/react-native/ReactApple/Libraries/RCTFoundation/RCTDeprecation`)
1184 | - RCTRequired (from `../node_modules/react-native/Libraries/Required`)
1185 | - RCTTypeSafety (from `../node_modules/react-native/Libraries/TypeSafety`)
1186 | - React (from `../node_modules/react-native/`)
1187 | - React-callinvoker (from `../node_modules/react-native/ReactCommon/callinvoker`)
1188 | - React-Codegen (from `build/generated/ios`)
1189 | - React-Core (from `../node_modules/react-native/`)
1190 | - React-Core/RCTWebSocket (from `../node_modules/react-native/`)
1191 | - React-CoreModules (from `../node_modules/react-native/React/CoreModules`)
1192 | - React-cxxreact (from `../node_modules/react-native/ReactCommon/cxxreact`)
1193 | - React-debug (from `../node_modules/react-native/ReactCommon/react/debug`)
1194 | - React-Fabric (from `../node_modules/react-native/ReactCommon`)
1195 | - React-FabricImage (from `../node_modules/react-native/ReactCommon`)
1196 | - React-featureflags (from `../node_modules/react-native/ReactCommon/react/featureflags`)
1197 | - React-graphics (from `../node_modules/react-native/ReactCommon/react/renderer/graphics`)
1198 | - React-hermes (from `../node_modules/react-native/ReactCommon/hermes`)
1199 | - React-ImageManager (from `../node_modules/react-native/ReactCommon/react/renderer/imagemanager/platform/ios`)
1200 | - React-jserrorhandler (from `../node_modules/react-native/ReactCommon/jserrorhandler`)
1201 | - React-jsi (from `../node_modules/react-native/ReactCommon/jsi`)
1202 | - React-jsiexecutor (from `../node_modules/react-native/ReactCommon/jsiexecutor`)
1203 | - React-jsinspector (from `../node_modules/react-native/ReactCommon/jsinspector-modern`)
1204 | - React-jsitracing (from `../node_modules/react-native/ReactCommon/hermes/executor/`)
1205 | - React-logger (from `../node_modules/react-native/ReactCommon/logger`)
1206 | - React-Mapbuffer (from `../node_modules/react-native/ReactCommon`)
1207 | - react-native-config (from `../node_modules/react-native-config`)
1208 | - React-nativeconfig (from `../node_modules/react-native/ReactCommon`)
1209 | - React-NativeModulesApple (from `../node_modules/react-native/ReactCommon/react/nativemodule/core/platform/ios`)
1210 | - React-perflogger (from `../node_modules/react-native/ReactCommon/reactperflogger`)
1211 | - React-RCTActionSheet (from `../node_modules/react-native/Libraries/ActionSheetIOS`)
1212 | - React-RCTAnimation (from `../node_modules/react-native/Libraries/NativeAnimation`)
1213 | - React-RCTAppDelegate (from `../node_modules/react-native/Libraries/AppDelegate`)
1214 | - React-RCTBlob (from `../node_modules/react-native/Libraries/Blob`)
1215 | - React-RCTFabric (from `../node_modules/react-native/React`)
1216 | - React-RCTImage (from `../node_modules/react-native/Libraries/Image`)
1217 | - React-RCTLinking (from `../node_modules/react-native/Libraries/LinkingIOS`)
1218 | - React-RCTNetwork (from `../node_modules/react-native/Libraries/Network`)
1219 | - React-RCTSettings (from `../node_modules/react-native/Libraries/Settings`)
1220 | - React-RCTText (from `../node_modules/react-native/Libraries/Text`)
1221 | - React-RCTVibration (from `../node_modules/react-native/Libraries/Vibration`)
1222 | - React-rendererdebug (from `../node_modules/react-native/ReactCommon/react/renderer/debug`)
1223 | - React-rncore (from `../node_modules/react-native/ReactCommon`)
1224 | - React-RuntimeApple (from `../node_modules/react-native/ReactCommon/react/runtime/platform/ios`)
1225 | - React-RuntimeCore (from `../node_modules/react-native/ReactCommon/react/runtime`)
1226 | - React-runtimeexecutor (from `../node_modules/react-native/ReactCommon/runtimeexecutor`)
1227 | - React-RuntimeHermes (from `../node_modules/react-native/ReactCommon/react/runtime`)
1228 | - React-runtimescheduler (from `../node_modules/react-native/ReactCommon/react/renderer/runtimescheduler`)
1229 | - React-utils (from `../node_modules/react-native/ReactCommon/react/utils`)
1230 | - ReactCommon/turbomodule/core (from `../node_modules/react-native/ReactCommon`)
1231 | - Yoga (from `../node_modules/react-native/ReactCommon/yoga`)
1232 |
1233 | SPEC REPOS:
1234 | trunk:
1235 | - SocketRocket
1236 |
1237 | EXTERNAL SOURCES:
1238 | boost:
1239 | :podspec: "../node_modules/react-native/third-party-podspecs/boost.podspec"
1240 | DoubleConversion:
1241 | :podspec: "../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec"
1242 | FBLazyVector:
1243 | :path: "../node_modules/react-native/Libraries/FBLazyVector"
1244 | fmt:
1245 | :podspec: "../node_modules/react-native/third-party-podspecs/fmt.podspec"
1246 | glog:
1247 | :podspec: "../node_modules/react-native/third-party-podspecs/glog.podspec"
1248 | hermes-engine:
1249 | :podspec: "../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec"
1250 | :tag: hermes-2024-06-28-RNv0.74.3-7bda0c267e76d11b68a585f84cfdd65000babf85
1251 | RCT-Folly:
1252 | :podspec: "../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec"
1253 | RCTDeprecation:
1254 | :path: "../node_modules/react-native/ReactApple/Libraries/RCTFoundation/RCTDeprecation"
1255 | RCTRequired:
1256 | :path: "../node_modules/react-native/Libraries/Required"
1257 | RCTTypeSafety:
1258 | :path: "../node_modules/react-native/Libraries/TypeSafety"
1259 | React:
1260 | :path: "../node_modules/react-native/"
1261 | React-callinvoker:
1262 | :path: "../node_modules/react-native/ReactCommon/callinvoker"
1263 | React-Codegen:
1264 | :path: build/generated/ios
1265 | React-Core:
1266 | :path: "../node_modules/react-native/"
1267 | React-CoreModules:
1268 | :path: "../node_modules/react-native/React/CoreModules"
1269 | React-cxxreact:
1270 | :path: "../node_modules/react-native/ReactCommon/cxxreact"
1271 | React-debug:
1272 | :path: "../node_modules/react-native/ReactCommon/react/debug"
1273 | React-Fabric:
1274 | :path: "../node_modules/react-native/ReactCommon"
1275 | React-FabricImage:
1276 | :path: "../node_modules/react-native/ReactCommon"
1277 | React-featureflags:
1278 | :path: "../node_modules/react-native/ReactCommon/react/featureflags"
1279 | React-graphics:
1280 | :path: "../node_modules/react-native/ReactCommon/react/renderer/graphics"
1281 | React-hermes:
1282 | :path: "../node_modules/react-native/ReactCommon/hermes"
1283 | React-ImageManager:
1284 | :path: "../node_modules/react-native/ReactCommon/react/renderer/imagemanager/platform/ios"
1285 | React-jserrorhandler:
1286 | :path: "../node_modules/react-native/ReactCommon/jserrorhandler"
1287 | React-jsi:
1288 | :path: "../node_modules/react-native/ReactCommon/jsi"
1289 | React-jsiexecutor:
1290 | :path: "../node_modules/react-native/ReactCommon/jsiexecutor"
1291 | React-jsinspector:
1292 | :path: "../node_modules/react-native/ReactCommon/jsinspector-modern"
1293 | React-jsitracing:
1294 | :path: "../node_modules/react-native/ReactCommon/hermes/executor/"
1295 | React-logger:
1296 | :path: "../node_modules/react-native/ReactCommon/logger"
1297 | React-Mapbuffer:
1298 | :path: "../node_modules/react-native/ReactCommon"
1299 | react-native-config:
1300 | :path: "../node_modules/react-native-config"
1301 | React-nativeconfig:
1302 | :path: "../node_modules/react-native/ReactCommon"
1303 | React-NativeModulesApple:
1304 | :path: "../node_modules/react-native/ReactCommon/react/nativemodule/core/platform/ios"
1305 | React-perflogger:
1306 | :path: "../node_modules/react-native/ReactCommon/reactperflogger"
1307 | React-RCTActionSheet:
1308 | :path: "../node_modules/react-native/Libraries/ActionSheetIOS"
1309 | React-RCTAnimation:
1310 | :path: "../node_modules/react-native/Libraries/NativeAnimation"
1311 | React-RCTAppDelegate:
1312 | :path: "../node_modules/react-native/Libraries/AppDelegate"
1313 | React-RCTBlob:
1314 | :path: "../node_modules/react-native/Libraries/Blob"
1315 | React-RCTFabric:
1316 | :path: "../node_modules/react-native/React"
1317 | React-RCTImage:
1318 | :path: "../node_modules/react-native/Libraries/Image"
1319 | React-RCTLinking:
1320 | :path: "../node_modules/react-native/Libraries/LinkingIOS"
1321 | React-RCTNetwork:
1322 | :path: "../node_modules/react-native/Libraries/Network"
1323 | React-RCTSettings:
1324 | :path: "../node_modules/react-native/Libraries/Settings"
1325 | React-RCTText:
1326 | :path: "../node_modules/react-native/Libraries/Text"
1327 | React-RCTVibration:
1328 | :path: "../node_modules/react-native/Libraries/Vibration"
1329 | React-rendererdebug:
1330 | :path: "../node_modules/react-native/ReactCommon/react/renderer/debug"
1331 | React-rncore:
1332 | :path: "../node_modules/react-native/ReactCommon"
1333 | React-RuntimeApple:
1334 | :path: "../node_modules/react-native/ReactCommon/react/runtime/platform/ios"
1335 | React-RuntimeCore:
1336 | :path: "../node_modules/react-native/ReactCommon/react/runtime"
1337 | React-runtimeexecutor:
1338 | :path: "../node_modules/react-native/ReactCommon/runtimeexecutor"
1339 | React-RuntimeHermes:
1340 | :path: "../node_modules/react-native/ReactCommon/react/runtime"
1341 | React-runtimescheduler:
1342 | :path: "../node_modules/react-native/ReactCommon/react/renderer/runtimescheduler"
1343 | React-utils:
1344 | :path: "../node_modules/react-native/ReactCommon/react/utils"
1345 | ReactCommon:
1346 | :path: "../node_modules/react-native/ReactCommon"
1347 | Yoga:
1348 | :path: "../node_modules/react-native/ReactCommon/yoga"
1349 |
1350 | SPEC CHECKSUMS:
1351 | boost: d3f49c53809116a5d38da093a8aa78bf551aed09
1352 | DoubleConversion: 76ab83afb40bddeeee456813d9c04f67f78771b5
1353 | FBLazyVector: 4c674c2d53de79c145d6a723910543d7b57ed74c
1354 | fmt: 4c2741a687cc09f0634a2e2c72a838b99f1ff120
1355 | glog: fdfdfe5479092de0c4bdbebedd9056951f092c4f
1356 | hermes-engine: 1f547997900dd0752dc0cc0ae6dd16173c49e09b
1357 | RCT-Folly: 02617c592a293bd6d418e0a88ff4ee1f88329b47
1358 | RCTDeprecation: d83da85890d5bb18efd2809a733865c1c5c11487
1359 | RCTRequired: e109419eacfb10fbb79a3ecb57ebcad198593d8a
1360 | RCTTypeSafety: 9d0307c2738867b9850f096914a15294124b2439
1361 | React: 40ad59420ae403a6d2d49f2787f0bfaabaed4fdf
1362 | React-callinvoker: a5fb605689272d6f5640738311aa510d3f59869f
1363 | React-Codegen: 3267a426718c8a0a979d0cd0495ba793cfdba7ca
1364 | React-Core: b1eeb2b94117f6ef5b4b0ed38f2f8d482ce915ce
1365 | React-CoreModules: e60a158a4e1b109ccdd781fb649f36691eb954d7
1366 | React-cxxreact: 3749b5548f8b66a304729e159dfaf3cfd7196c3a
1367 | React-debug: 8e15e6d6456f9b8521958deb40157eeeaac2914d
1368 | React-Fabric: 52cf1f94d5c6b05fe6057ba07796a633daf93735
1369 | React-FabricImage: 6e0f28a6ec040be4b5bd1a6e5eeda7263639a24c
1370 | React-featureflags: 81279a0d43736e9867cf0b736c868257af04c827
1371 | React-graphics: 37c161d8e634526897f12837f3e62a2895dede95
1372 | React-hermes: 3cfa4668970c810db0f6b43bd5c32f5927fd0500
1373 | React-ImageManager: 276987aeb4008fe8abe10bfc53d7160c96c31052
1374 | React-jserrorhandler: 0cdb976ee0e2ed4b93f501491e84954f80bf5f34
1375 | React-jsi: 18011ef308cc43e2fb21a1de0b61eabd9f899887
1376 | React-jsiexecutor: 156298b2ddebed0f6bcc526edd3deb4d240437bc
1377 | React-jsinspector: ed6c5a768dea8e344f07242bd9946b666b78228e
1378 | React-jsitracing: 4e9c99e73a6269b27b0d4cbab277dd90df3e5ac0
1379 | React-logger: fbfb50e2a2b1b46ee087f0a52739fadecc5e81a4
1380 | React-Mapbuffer: d39610dff659d8cf1fea485abae08bbf6f9c8279
1381 | react-native-config: 8f7283449bbb048902f4e764affbbf24504454af
1382 | React-nativeconfig: 2be4363c2c4ac2b42419577774e83e4e4fd2af9f
1383 | React-NativeModulesApple: 453ada38f826a508e48872c7a7877c431af48bba
1384 | React-perflogger: 9745f800ab4d12ec4325bde7bd090eafb87c5570
1385 | React-RCTActionSheet: 4225e883c5feaffc072c86128cc42cb070097010
1386 | React-RCTAnimation: 6b318e7e475ea574abf6a65e58e4989dd19d9ec4
1387 | React-RCTAppDelegate: 00d29b205df54386bc4e9c8929c500ed00ee1d57
1388 | React-RCTBlob: cf152386cc829be9323b2845fd9ec25122a986c3
1389 | React-RCTFabric: 071b326a331bd1ccb59e5886c0cd38e414ec9c9f
1390 | React-RCTImage: d3d5e0f0740fbd53705f7e9acc067bafe395026c
1391 | React-RCTLinking: 3ed7d222d3534287b408855b9d378d6576b7661b
1392 | React-RCTNetwork: 33a6bb615c1f7678538298aed9f27ecd69d512f3
1393 | React-RCTSettings: bbadd0bedde8fc5f4ef337534b1368d61e104e76
1394 | React-RCTText: 1a41cd4ce814366745b6107e6f15eb0ada7ff240
1395 | React-RCTVibration: 8275c91f707e03ead0a010e9fbeda53a645335ca
1396 | React-rendererdebug: 6ba24e1d975c89a6e92440be4f246ba8bed432c6
1397 | React-rncore: 65fe0264f5c93ccb65bd6cae6201c80d34e625c0
1398 | React-RuntimeApple: 93e7c4c6a0be2eb3ce8dc31fdddea5708cd2ad2b
1399 | React-RuntimeCore: 1a2f2dfcba853d01c083db2b7d96f32f9768a677
1400 | React-runtimeexecutor: 6abf418f2d0038fb3fef15444d9c691db198771c
1401 | React-RuntimeHermes: fb6f76a5cd4212a0af4789794d4a9f5147e2f1aa
1402 | React-runtimescheduler: 3f312d33f475467a59864e0c5ab8708461387d1c
1403 | React-utils: e8b0eac797c81c574b24f6515fec4015599b643c
1404 | ReactCommon: eebffb37a90138c6db6eb8b2d952e7e5c6bc083c
1405 | SocketRocket: abac6f5de4d4d62d24e11868d7a2f427e0ef940d
1406 | Yoga: 0efb3e1bd40ba59b009f01badea863281101de78
1407 |
1408 | PODFILE CHECKSUM: 9fe6a76965586f8d4fa168c802a07117b321e052
1409 |
1410 | COCOAPODS: 1.14.3
1411 |
--------------------------------------------------------------------------------
/ios/beplus.xcodeproj/project.pbxproj:
--------------------------------------------------------------------------------
1 | // !$*UTF8*$!
2 | {
3 | archiveVersion = 1;
4 | classes = {
5 | };
6 | objectVersion = 54;
7 | objects = {
8 |
9 | /* Begin PBXBuildFile section */
10 | 00E356F31AD99517003FC87E /* beplusTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* beplusTests.m */; };
11 | 0C80B921A6F3F58F76C31292 /* libPods-beplus.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5DCACB8F33CDC322A6C60F78 /* libPods-beplus.a */; };
12 | 13B07FBC1A68108700A75B9A /* AppDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.mm */; };
13 | 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; };
14 | 13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; };
15 | 7699B88040F8A987B510C191 /* libPods-beplus-beplusTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 19F6CBCC0A4E27FBF8BF4A61 /* libPods-beplus-beplusTests.a */; };
16 | 81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */; };
17 | B36DFDA02BF5EB6E00168E7F /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = B36DFD9F2BF5EB6E00168E7F /* PrivacyInfo.xcprivacy */; };
18 | /* End PBXBuildFile section */
19 |
20 | /* Begin PBXContainerItemProxy section */
21 | 00E356F41AD99517003FC87E /* PBXContainerItemProxy */ = {
22 | isa = PBXContainerItemProxy;
23 | containerPortal = 83CBB9F71A601CBA00E9B192 /* Project object */;
24 | proxyType = 1;
25 | remoteGlobalIDString = 13B07F861A680F5B00A75B9A;
26 | remoteInfo = beplus;
27 | };
28 | /* End PBXContainerItemProxy section */
29 |
30 | /* Begin PBXFileReference section */
31 | 00E356EE1AD99517003FC87E /* beplusTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = beplusTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
32 | 00E356F11AD99517003FC87E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
33 | 00E356F21AD99517003FC87E /* beplusTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = beplusTests.m; sourceTree = ""; };
34 | 117C9F05B24DF3C0AC0658B9 /* Pods-beplus.releasedev.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-beplus.releasedev.xcconfig"; path = "Target Support Files/Pods-beplus/Pods-beplus.releasedev.xcconfig"; sourceTree = ""; };
35 | 13B07F961A680F5B00A75B9A /* beplus.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = beplus.app; sourceTree = BUILT_PRODUCTS_DIR; };
36 | 13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = beplus/AppDelegate.h; sourceTree = ""; };
37 | 13B07FB01A68108700A75B9A /* AppDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = AppDelegate.mm; path = beplus/AppDelegate.mm; sourceTree = ""; };
38 | 13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = beplus/Images.xcassets; sourceTree = ""; };
39 | 13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = beplus/Info.plist; sourceTree = ""; };
40 | 13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = beplus/main.m; sourceTree = ""; };
41 | 17D86F6E4CF012A4B508CBA6 /* Pods-beplus-beplusTests.releasedev.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-beplus-beplusTests.releasedev.xcconfig"; path = "Target Support Files/Pods-beplus-beplusTests/Pods-beplus-beplusTests.releasedev.xcconfig"; sourceTree = ""; };
42 | 19F6CBCC0A4E27FBF8BF4A61 /* libPods-beplus-beplusTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-beplus-beplusTests.a"; sourceTree = BUILT_PRODUCTS_DIR; };
43 | 3B4392A12AC88292D35C810B /* Pods-beplus.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-beplus.debug.xcconfig"; path = "Target Support Files/Pods-beplus/Pods-beplus.debug.xcconfig"; sourceTree = ""; };
44 | 5709B34CF0A7D63546082F79 /* Pods-beplus.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-beplus.release.xcconfig"; path = "Target Support Files/Pods-beplus/Pods-beplus.release.xcconfig"; sourceTree = ""; };
45 | 5B7EB9410499542E8C5724F5 /* Pods-beplus-beplusTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-beplus-beplusTests.debug.xcconfig"; path = "Target Support Files/Pods-beplus-beplusTests/Pods-beplus-beplusTests.debug.xcconfig"; sourceTree = ""; };
46 | 5DCACB8F33CDC322A6C60F78 /* libPods-beplus.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-beplus.a"; sourceTree = BUILT_PRODUCTS_DIR; };
47 | 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = LaunchScreen.storyboard; path = beplus/LaunchScreen.storyboard; sourceTree = ""; };
48 | 89C6BE57DB24E9ADA2F236DE /* Pods-beplus-beplusTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-beplus-beplusTests.release.xcconfig"; path = "Target Support Files/Pods-beplus-beplusTests/Pods-beplus-beplusTests.release.xcconfig"; sourceTree = ""; };
49 | A91975CC2B35F6F700736A51 /* Config.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Config.xcconfig; sourceTree = ""; };
50 | A9B25B472B336D94009EF9F4 /* beplus.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; name = beplus.entitlements; path = beplus/beplus.entitlements; sourceTree = ""; };
51 | B1AF6F7326E3257C29CCDEE7 /* Pods-beplus.releasestage.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-beplus.releasestage.xcconfig"; path = "Target Support Files/Pods-beplus/Pods-beplus.releasestage.xcconfig"; sourceTree = ""; };
52 | B36DFD9F2BF5EB6E00168E7F /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; name = PrivacyInfo.xcprivacy; path = beplus/PrivacyInfo.xcprivacy; sourceTree = ""; };
53 | ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; };
54 | F33DB53C4A6E10CFD558B783 /* Pods-beplus-beplusTests.releasestage.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-beplus-beplusTests.releasestage.xcconfig"; path = "Target Support Files/Pods-beplus-beplusTests/Pods-beplus-beplusTests.releasestage.xcconfig"; sourceTree = ""; };
55 | /* End PBXFileReference section */
56 |
57 | /* Begin PBXFrameworksBuildPhase section */
58 | 00E356EB1AD99517003FC87E /* Frameworks */ = {
59 | isa = PBXFrameworksBuildPhase;
60 | buildActionMask = 2147483647;
61 | files = (
62 | 7699B88040F8A987B510C191 /* libPods-beplus-beplusTests.a in Frameworks */,
63 | );
64 | runOnlyForDeploymentPostprocessing = 0;
65 | };
66 | 13B07F8C1A680F5B00A75B9A /* Frameworks */ = {
67 | isa = PBXFrameworksBuildPhase;
68 | buildActionMask = 2147483647;
69 | files = (
70 | 0C80B921A6F3F58F76C31292 /* libPods-beplus.a in Frameworks */,
71 | );
72 | runOnlyForDeploymentPostprocessing = 0;
73 | };
74 | /* End PBXFrameworksBuildPhase section */
75 |
76 | /* Begin PBXGroup section */
77 | 00E356EF1AD99517003FC87E /* beplusTests */ = {
78 | isa = PBXGroup;
79 | children = (
80 | 00E356F21AD99517003FC87E /* beplusTests.m */,
81 | 00E356F01AD99517003FC87E /* Supporting Files */,
82 | );
83 | path = beplusTests;
84 | sourceTree = "";
85 | };
86 | 00E356F01AD99517003FC87E /* Supporting Files */ = {
87 | isa = PBXGroup;
88 | children = (
89 | 00E356F11AD99517003FC87E /* Info.plist */,
90 | );
91 | name = "Supporting Files";
92 | sourceTree = "";
93 | };
94 | 13B07FAE1A68108700A75B9A /* beplus */ = {
95 | isa = PBXGroup;
96 | children = (
97 | 13B07FB71A68108700A75B9A /* main.m */,
98 | A9B25B472B336D94009EF9F4 /* beplus.entitlements */,
99 | 13B07FB61A68108700A75B9A /* Info.plist */,
100 | 13B07FAF1A68108700A75B9A /* AppDelegate.h */,
101 | 13B07FB01A68108700A75B9A /* AppDelegate.mm */,
102 | 13B07FB51A68108700A75B9A /* Images.xcassets */,
103 | 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */,
104 | B36DFD9F2BF5EB6E00168E7F /* PrivacyInfo.xcprivacy */,
105 | );
106 | name = beplus;
107 | sourceTree = "";
108 | };
109 | 2D16E6871FA4F8E400B85C8A /* Frameworks */ = {
110 | isa = PBXGroup;
111 | children = (
112 | ED297162215061F000B7C4FE /* JavaScriptCore.framework */,
113 | 5DCACB8F33CDC322A6C60F78 /* libPods-beplus.a */,
114 | 19F6CBCC0A4E27FBF8BF4A61 /* libPods-beplus-beplusTests.a */,
115 | );
116 | name = Frameworks;
117 | sourceTree = "";
118 | };
119 | 832341AE1AAA6A7D00B99B32 /* Libraries */ = {
120 | isa = PBXGroup;
121 | children = (
122 | );
123 | name = Libraries;
124 | sourceTree = "";
125 | };
126 | 83CBB9F61A601CBA00E9B192 = {
127 | isa = PBXGroup;
128 | children = (
129 | A91975CC2B35F6F700736A51 /* Config.xcconfig */,
130 | 13B07FAE1A68108700A75B9A /* beplus */,
131 | 832341AE1AAA6A7D00B99B32 /* Libraries */,
132 | 00E356EF1AD99517003FC87E /* beplusTests */,
133 | 83CBBA001A601CBA00E9B192 /* Products */,
134 | 2D16E6871FA4F8E400B85C8A /* Frameworks */,
135 | BBD78D7AC51CEA395F1C20DB /* Pods */,
136 | );
137 | indentWidth = 2;
138 | sourceTree = "";
139 | tabWidth = 2;
140 | usesTabs = 0;
141 | };
142 | 83CBBA001A601CBA00E9B192 /* Products */ = {
143 | isa = PBXGroup;
144 | children = (
145 | 13B07F961A680F5B00A75B9A /* beplus.app */,
146 | 00E356EE1AD99517003FC87E /* beplusTests.xctest */,
147 | );
148 | name = Products;
149 | sourceTree = "";
150 | };
151 | BBD78D7AC51CEA395F1C20DB /* Pods */ = {
152 | isa = PBXGroup;
153 | children = (
154 | 3B4392A12AC88292D35C810B /* Pods-beplus.debug.xcconfig */,
155 | 5709B34CF0A7D63546082F79 /* Pods-beplus.release.xcconfig */,
156 | 5B7EB9410499542E8C5724F5 /* Pods-beplus-beplusTests.debug.xcconfig */,
157 | 89C6BE57DB24E9ADA2F236DE /* Pods-beplus-beplusTests.release.xcconfig */,
158 | 117C9F05B24DF3C0AC0658B9 /* Pods-beplus.releasedev.xcconfig */,
159 | B1AF6F7326E3257C29CCDEE7 /* Pods-beplus.releasestage.xcconfig */,
160 | 17D86F6E4CF012A4B508CBA6 /* Pods-beplus-beplusTests.releasedev.xcconfig */,
161 | F33DB53C4A6E10CFD558B783 /* Pods-beplus-beplusTests.releasestage.xcconfig */,
162 | );
163 | path = Pods;
164 | sourceTree = "";
165 | };
166 | /* End PBXGroup section */
167 |
168 | /* Begin PBXNativeTarget section */
169 | 00E356ED1AD99517003FC87E /* beplusTests */ = {
170 | isa = PBXNativeTarget;
171 | buildConfigurationList = 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "beplusTests" */;
172 | buildPhases = (
173 | A55EABD7B0C7F3A422A6CC61 /* [CP] Check Pods Manifest.lock */,
174 | 00E356EA1AD99517003FC87E /* Sources */,
175 | 00E356EB1AD99517003FC87E /* Frameworks */,
176 | 00E356EC1AD99517003FC87E /* Resources */,
177 | C59DA0FBD6956966B86A3779 /* [CP] Embed Pods Frameworks */,
178 | F6A41C54EA430FDDC6A6ED99 /* [CP] Copy Pods Resources */,
179 | );
180 | buildRules = (
181 | );
182 | dependencies = (
183 | 00E356F51AD99517003FC87E /* PBXTargetDependency */,
184 | );
185 | name = beplusTests;
186 | productName = beplusTests;
187 | productReference = 00E356EE1AD99517003FC87E /* beplusTests.xctest */;
188 | productType = "com.apple.product-type.bundle.unit-test";
189 | };
190 | 13B07F861A680F5B00A75B9A /* beplus */ = {
191 | isa = PBXNativeTarget;
192 | buildConfigurationList = 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "beplus" */;
193 | buildPhases = (
194 | C38B50BA6285516D6DCD4F65 /* [CP] Check Pods Manifest.lock */,
195 | 13B07F871A680F5B00A75B9A /* Sources */,
196 | 13B07F8C1A680F5B00A75B9A /* Frameworks */,
197 | 13B07F8E1A680F5B00A75B9A /* Resources */,
198 | 00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */,
199 | 00EEFC60759A1932668264C0 /* [CP] Embed Pods Frameworks */,
200 | E235C05ADACE081382539298 /* [CP] Copy Pods Resources */,
201 | );
202 | buildRules = (
203 | );
204 | dependencies = (
205 | );
206 | name = beplus;
207 | productName = beplus;
208 | productReference = 13B07F961A680F5B00A75B9A /* beplus.app */;
209 | productType = "com.apple.product-type.application";
210 | };
211 | /* End PBXNativeTarget section */
212 |
213 | /* Begin PBXProject section */
214 | 83CBB9F71A601CBA00E9B192 /* Project object */ = {
215 | isa = PBXProject;
216 | attributes = {
217 | LastUpgradeCheck = 1210;
218 | TargetAttributes = {
219 | 00E356ED1AD99517003FC87E = {
220 | CreatedOnToolsVersion = 6.2;
221 | TestTargetID = 13B07F861A680F5B00A75B9A;
222 | };
223 | 13B07F861A680F5B00A75B9A = {
224 | LastSwiftMigration = 1120;
225 | };
226 | };
227 | };
228 | buildConfigurationList = 83CBB9FA1A601CBA00E9B192 /* Build configuration list for PBXProject "beplus" */;
229 | compatibilityVersion = "Xcode 12.0";
230 | developmentRegion = en;
231 | hasScannedForEncodings = 0;
232 | knownRegions = (
233 | en,
234 | Base,
235 | );
236 | mainGroup = 83CBB9F61A601CBA00E9B192;
237 | productRefGroup = 83CBBA001A601CBA00E9B192 /* Products */;
238 | projectDirPath = "";
239 | projectRoot = "";
240 | targets = (
241 | 13B07F861A680F5B00A75B9A /* beplus */,
242 | 00E356ED1AD99517003FC87E /* beplusTests */,
243 | );
244 | };
245 | /* End PBXProject section */
246 |
247 | /* Begin PBXResourcesBuildPhase section */
248 | 00E356EC1AD99517003FC87E /* Resources */ = {
249 | isa = PBXResourcesBuildPhase;
250 | buildActionMask = 2147483647;
251 | files = (
252 | );
253 | runOnlyForDeploymentPostprocessing = 0;
254 | };
255 | 13B07F8E1A680F5B00A75B9A /* Resources */ = {
256 | isa = PBXResourcesBuildPhase;
257 | buildActionMask = 2147483647;
258 | files = (
259 | B36DFDA02BF5EB6E00168E7F /* PrivacyInfo.xcprivacy in Resources */,
260 | 81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */,
261 | 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */,
262 | );
263 | runOnlyForDeploymentPostprocessing = 0;
264 | };
265 | /* End PBXResourcesBuildPhase section */
266 |
267 | /* Begin PBXShellScriptBuildPhase section */
268 | 00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */ = {
269 | isa = PBXShellScriptBuildPhase;
270 | buildActionMask = 2147483647;
271 | files = (
272 | );
273 | inputPaths = (
274 | "$(SRCROOT)/.xcode.env.local",
275 | "$(SRCROOT)/.xcode.env",
276 | );
277 | name = "Bundle React Native code and images";
278 | outputPaths = (
279 | );
280 | runOnlyForDeploymentPostprocessing = 0;
281 | shellPath = /bin/sh;
282 | 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";
283 | };
284 | 00EEFC60759A1932668264C0 /* [CP] Embed Pods Frameworks */ = {
285 | isa = PBXShellScriptBuildPhase;
286 | buildActionMask = 2147483647;
287 | files = (
288 | );
289 | inputFileListPaths = (
290 | "${PODS_ROOT}/Target Support Files/Pods-beplus/Pods-beplus-frameworks-${CONFIGURATION}-input-files.xcfilelist",
291 | );
292 | name = "[CP] Embed Pods Frameworks";
293 | outputFileListPaths = (
294 | "${PODS_ROOT}/Target Support Files/Pods-beplus/Pods-beplus-frameworks-${CONFIGURATION}-output-files.xcfilelist",
295 | );
296 | runOnlyForDeploymentPostprocessing = 0;
297 | shellPath = /bin/sh;
298 | shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-beplus/Pods-beplus-frameworks.sh\"\n";
299 | showEnvVarsInLog = 0;
300 | };
301 | A55EABD7B0C7F3A422A6CC61 /* [CP] Check Pods Manifest.lock */ = {
302 | isa = PBXShellScriptBuildPhase;
303 | buildActionMask = 2147483647;
304 | files = (
305 | );
306 | inputFileListPaths = (
307 | );
308 | inputPaths = (
309 | "${PODS_PODFILE_DIR_PATH}/Podfile.lock",
310 | "${PODS_ROOT}/Manifest.lock",
311 | );
312 | name = "[CP] Check Pods Manifest.lock";
313 | outputFileListPaths = (
314 | );
315 | outputPaths = (
316 | "$(DERIVED_FILE_DIR)/Pods-beplus-beplusTests-checkManifestLockResult.txt",
317 | );
318 | runOnlyForDeploymentPostprocessing = 0;
319 | shellPath = /bin/sh;
320 | 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";
321 | showEnvVarsInLog = 0;
322 | };
323 | C38B50BA6285516D6DCD4F65 /* [CP] Check Pods Manifest.lock */ = {
324 | isa = PBXShellScriptBuildPhase;
325 | buildActionMask = 2147483647;
326 | files = (
327 | );
328 | inputFileListPaths = (
329 | );
330 | inputPaths = (
331 | "${PODS_PODFILE_DIR_PATH}/Podfile.lock",
332 | "${PODS_ROOT}/Manifest.lock",
333 | );
334 | name = "[CP] Check Pods Manifest.lock";
335 | outputFileListPaths = (
336 | );
337 | outputPaths = (
338 | "$(DERIVED_FILE_DIR)/Pods-beplus-checkManifestLockResult.txt",
339 | );
340 | runOnlyForDeploymentPostprocessing = 0;
341 | shellPath = /bin/sh;
342 | 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";
343 | showEnvVarsInLog = 0;
344 | };
345 | C59DA0FBD6956966B86A3779 /* [CP] Embed Pods Frameworks */ = {
346 | isa = PBXShellScriptBuildPhase;
347 | buildActionMask = 2147483647;
348 | files = (
349 | );
350 | inputFileListPaths = (
351 | "${PODS_ROOT}/Target Support Files/Pods-beplus-beplusTests/Pods-beplus-beplusTests-frameworks-${CONFIGURATION}-input-files.xcfilelist",
352 | );
353 | name = "[CP] Embed Pods Frameworks";
354 | outputFileListPaths = (
355 | "${PODS_ROOT}/Target Support Files/Pods-beplus-beplusTests/Pods-beplus-beplusTests-frameworks-${CONFIGURATION}-output-files.xcfilelist",
356 | );
357 | runOnlyForDeploymentPostprocessing = 0;
358 | shellPath = /bin/sh;
359 | shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-beplus-beplusTests/Pods-beplus-beplusTests-frameworks.sh\"\n";
360 | showEnvVarsInLog = 0;
361 | };
362 | E235C05ADACE081382539298 /* [CP] Copy Pods Resources */ = {
363 | isa = PBXShellScriptBuildPhase;
364 | buildActionMask = 2147483647;
365 | files = (
366 | );
367 | inputFileListPaths = (
368 | "${PODS_ROOT}/Target Support Files/Pods-beplus/Pods-beplus-resources-${CONFIGURATION}-input-files.xcfilelist",
369 | );
370 | name = "[CP] Copy Pods Resources";
371 | outputFileListPaths = (
372 | "${PODS_ROOT}/Target Support Files/Pods-beplus/Pods-beplus-resources-${CONFIGURATION}-output-files.xcfilelist",
373 | );
374 | runOnlyForDeploymentPostprocessing = 0;
375 | shellPath = /bin/sh;
376 | shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-beplus/Pods-beplus-resources.sh\"\n";
377 | showEnvVarsInLog = 0;
378 | };
379 | F6A41C54EA430FDDC6A6ED99 /* [CP] Copy Pods Resources */ = {
380 | isa = PBXShellScriptBuildPhase;
381 | buildActionMask = 2147483647;
382 | files = (
383 | );
384 | inputFileListPaths = (
385 | "${PODS_ROOT}/Target Support Files/Pods-beplus-beplusTests/Pods-beplus-beplusTests-resources-${CONFIGURATION}-input-files.xcfilelist",
386 | );
387 | name = "[CP] Copy Pods Resources";
388 | outputFileListPaths = (
389 | "${PODS_ROOT}/Target Support Files/Pods-beplus-beplusTests/Pods-beplus-beplusTests-resources-${CONFIGURATION}-output-files.xcfilelist",
390 | );
391 | runOnlyForDeploymentPostprocessing = 0;
392 | shellPath = /bin/sh;
393 | shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-beplus-beplusTests/Pods-beplus-beplusTests-resources.sh\"\n";
394 | showEnvVarsInLog = 0;
395 | };
396 | /* End PBXShellScriptBuildPhase section */
397 |
398 | /* Begin PBXSourcesBuildPhase section */
399 | 00E356EA1AD99517003FC87E /* Sources */ = {
400 | isa = PBXSourcesBuildPhase;
401 | buildActionMask = 2147483647;
402 | files = (
403 | 00E356F31AD99517003FC87E /* beplusTests.m in Sources */,
404 | );
405 | runOnlyForDeploymentPostprocessing = 0;
406 | };
407 | 13B07F871A680F5B00A75B9A /* Sources */ = {
408 | isa = PBXSourcesBuildPhase;
409 | buildActionMask = 2147483647;
410 | files = (
411 | 13B07FBC1A68108700A75B9A /* AppDelegate.mm in Sources */,
412 | 13B07FC11A68108700A75B9A /* main.m in Sources */,
413 | );
414 | runOnlyForDeploymentPostprocessing = 0;
415 | };
416 | /* End PBXSourcesBuildPhase section */
417 |
418 | /* Begin PBXTargetDependency section */
419 | 00E356F51AD99517003FC87E /* PBXTargetDependency */ = {
420 | isa = PBXTargetDependency;
421 | target = 13B07F861A680F5B00A75B9A /* beplus */;
422 | targetProxy = 00E356F41AD99517003FC87E /* PBXContainerItemProxy */;
423 | };
424 | /* End PBXTargetDependency section */
425 |
426 | /* Begin XCBuildConfiguration section */
427 | 00E356F61AD99517003FC87E /* Debug */ = {
428 | isa = XCBuildConfiguration;
429 | baseConfigurationReference = 5B7EB9410499542E8C5724F5 /* Pods-beplus-beplusTests.debug.xcconfig */;
430 | buildSettings = {
431 | BUNDLE_LOADER = "$(TEST_HOST)";
432 | GCC_PREPROCESSOR_DEFINITIONS = (
433 | "DEBUG=1",
434 | "$(inherited)",
435 | );
436 | INFOPLIST_FILE = beplusTests/Info.plist;
437 | IPHONEOS_DEPLOYMENT_TARGET = 15.0;
438 | LD_RUNPATH_SEARCH_PATHS = (
439 | "$(inherited)",
440 | "@executable_path/Frameworks",
441 | "@loader_path/Frameworks",
442 | );
443 | OTHER_LDFLAGS = (
444 | "-ObjC",
445 | "-lc++",
446 | "$(inherited)",
447 | );
448 | PRODUCT_BUNDLE_IDENTIFIER = "$(BE_APP_BUNDLE_ID)$(PRODUCT_BUNDLE_IDENTIFIER_SUFFIX)";
449 | PRODUCT_BUNDLE_IDENTIFIER_SUFFIX = .debug;
450 | PRODUCT_NAME = "$(TARGET_NAME)";
451 | TEST_HOST = "$(BUILT_PRODUCTS_DIR)/beplus.app/beplus";
452 | };
453 | name = Debug;
454 | };
455 | 00E356F71AD99517003FC87E /* ReleaseDev */ = {
456 | isa = XCBuildConfiguration;
457 | baseConfigurationReference = 17D86F6E4CF012A4B508CBA6 /* Pods-beplus-beplusTests.releasedev.xcconfig */;
458 | buildSettings = {
459 | BUNDLE_LOADER = "$(TEST_HOST)";
460 | COPY_PHASE_STRIP = NO;
461 | INFOPLIST_FILE = beplusTests/Info.plist;
462 | IPHONEOS_DEPLOYMENT_TARGET = 15.0;
463 | LD_RUNPATH_SEARCH_PATHS = (
464 | "$(inherited)",
465 | "@executable_path/Frameworks",
466 | "@loader_path/Frameworks",
467 | );
468 | OTHER_LDFLAGS = (
469 | "-ObjC",
470 | "-lc++",
471 | "$(inherited)",
472 | );
473 | PRODUCT_BUNDLE_IDENTIFIER = "$(BE_APP_BUNDLE_ID)$(PRODUCT_BUNDLE_IDENTIFIER_SUFFIX)";
474 | PRODUCT_BUNDLE_IDENTIFIER_SUFFIX = .dev;
475 | PRODUCT_NAME = "$(TARGET_NAME)";
476 | TEST_HOST = "$(BUILT_PRODUCTS_DIR)/beplus.app/beplus";
477 | };
478 | name = ReleaseDev;
479 | };
480 | 13B07F941A680F5B00A75B9A /* Debug */ = {
481 | isa = XCBuildConfiguration;
482 | baseConfigurationReference = 3B4392A12AC88292D35C810B /* Pods-beplus.debug.xcconfig */;
483 | buildSettings = {
484 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
485 | CLANG_ENABLE_MODULES = YES;
486 | CODE_SIGN_ENTITLEMENTS = beplus/beplus.entitlements;
487 | CODE_SIGN_STYLE = Manual;
488 | CURRENT_PROJECT_VERSION = "$(BE_APP_BUILD_NUMBER)";
489 | DEVELOPMENT_TEAM = "$(BE_APPLE_DEVELOPER_TEAM_ID)";
490 | ENABLE_BITCODE = NO;
491 | INFOPLIST_FILE = beplus/Info.plist;
492 | INFOPLIST_KEY_CFBundleDisplayName = "$(BE_APP_NAME)";
493 | INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.developer-tools";
494 | LD_RUNPATH_SEARCH_PATHS = (
495 | "$(inherited)",
496 | "@executable_path/Frameworks",
497 | );
498 | MARKETING_VERSION = "$(BE_APP_VERSION)";
499 | OTHER_LDFLAGS = (
500 | "$(inherited)",
501 | "-ObjC",
502 | "-lc++",
503 | );
504 | PRODUCT_BUNDLE_IDENTIFIER = "$(BE_APP_BUNDLE_ID)$(PRODUCT_BUNDLE_IDENTIFIER_SUFFIX)";
505 | PRODUCT_BUNDLE_IDENTIFIER_SUFFIX = .debug;
506 | PRODUCT_NAME = beplus;
507 | PROVISIONING_PROFILE_SPECIFIER = "match Development $(PRODUCT_BUNDLE_IDENTIFIER)";
508 | SWIFT_OPTIMIZATION_LEVEL = "-Onone";
509 | SWIFT_VERSION = 5.0;
510 | VERSIONING_SYSTEM = "apple-generic";
511 | };
512 | name = Debug;
513 | };
514 | 13B07F951A680F5B00A75B9A /* ReleaseDev */ = {
515 | isa = XCBuildConfiguration;
516 | baseConfigurationReference = 117C9F05B24DF3C0AC0658B9 /* Pods-beplus.releasedev.xcconfig */;
517 | buildSettings = {
518 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
519 | CLANG_ENABLE_MODULES = YES;
520 | CODE_SIGN_ENTITLEMENTS = beplus/beplus.entitlements;
521 | CODE_SIGN_IDENTITY = "Apple Distribution";
522 | CODE_SIGN_STYLE = Manual;
523 | CURRENT_PROJECT_VERSION = "$(BE_APP_BUILD_NUMBER)";
524 | DEVELOPMENT_TEAM = "$(BE_APPLE_DEVELOPER_TEAM_ID)";
525 | INFOPLIST_FILE = beplus/Info.plist;
526 | INFOPLIST_KEY_CFBundleDisplayName = "$(BE_APP_NAME)";
527 | INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.developer-tools";
528 | LD_RUNPATH_SEARCH_PATHS = (
529 | "$(inherited)",
530 | "@executable_path/Frameworks",
531 | );
532 | MARKETING_VERSION = "$(BE_APP_VERSION)";
533 | OTHER_LDFLAGS = (
534 | "$(inherited)",
535 | "-ObjC",
536 | "-lc++",
537 | );
538 | PRODUCT_BUNDLE_IDENTIFIER = "$(BE_APP_BUNDLE_ID)$(PRODUCT_BUNDLE_IDENTIFIER_SUFFIX)";
539 | PRODUCT_BUNDLE_IDENTIFIER_SUFFIX = .dev;
540 | PRODUCT_NAME = beplus;
541 | PROVISIONING_PROFILE_SPECIFIER = "match AppStore $(PRODUCT_BUNDLE_IDENTIFIER)";
542 | SWIFT_VERSION = 5.0;
543 | VERSIONING_SYSTEM = "apple-generic";
544 | };
545 | name = ReleaseDev;
546 | };
547 | 83CBBA201A601CBA00E9B192 /* Debug */ = {
548 | isa = XCBuildConfiguration;
549 | baseConfigurationReference = A91975CC2B35F6F700736A51 /* Config.xcconfig */;
550 | buildSettings = {
551 | ALWAYS_SEARCH_USER_PATHS = NO;
552 | CC = "";
553 | CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
554 | CLANG_CXX_LANGUAGE_STANDARD = "c++20";
555 | CLANG_CXX_LIBRARY = "libc++";
556 | CLANG_ENABLE_MODULES = YES;
557 | CLANG_ENABLE_OBJC_ARC = YES;
558 | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
559 | CLANG_WARN_BOOL_CONVERSION = YES;
560 | CLANG_WARN_COMMA = YES;
561 | CLANG_WARN_CONSTANT_CONVERSION = YES;
562 | CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
563 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
564 | CLANG_WARN_EMPTY_BODY = YES;
565 | CLANG_WARN_ENUM_CONVERSION = YES;
566 | CLANG_WARN_INFINITE_RECURSION = YES;
567 | CLANG_WARN_INT_CONVERSION = YES;
568 | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
569 | CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
570 | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
571 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
572 | CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
573 | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
574 | CLANG_WARN_STRICT_PROTOTYPES = YES;
575 | CLANG_WARN_SUSPICIOUS_MOVE = YES;
576 | CLANG_WARN_UNREACHABLE_CODE = YES;
577 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
578 | CODE_SIGN_IDENTITY = "Apple Developer";
579 | COPY_PHASE_STRIP = NO;
580 | CXX = "";
581 | ENABLE_STRICT_OBJC_MSGSEND = YES;
582 | ENABLE_TESTABILITY = YES;
583 | "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = i386;
584 | GCC_C_LANGUAGE_STANDARD = gnu99;
585 | GCC_DYNAMIC_NO_PIC = NO;
586 | GCC_NO_COMMON_BLOCKS = YES;
587 | GCC_OPTIMIZATION_LEVEL = 0;
588 | GCC_PREPROCESSOR_DEFINITIONS = (
589 | "DEBUG=1",
590 | "$(inherited)",
591 | );
592 | GCC_SYMBOLS_PRIVATE_EXTERN = NO;
593 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
594 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
595 | GCC_WARN_UNDECLARED_SELECTOR = YES;
596 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
597 | GCC_WARN_UNUSED_FUNCTION = YES;
598 | GCC_WARN_UNUSED_VARIABLE = YES;
599 | IPHONEOS_DEPLOYMENT_TARGET = 15.0;
600 | LD = "";
601 | LDPLUSPLUS = "";
602 | LD_RUNPATH_SEARCH_PATHS = (
603 | /usr/lib/swift,
604 | "$(inherited)",
605 | );
606 | LIBRARY_SEARCH_PATHS = (
607 | "\"$(SDKROOT)/usr/lib/swift\"",
608 | "\"$(TOOLCHAIN_DIR)/usr/lib/swift/$(PLATFORM_NAME)\"",
609 | "\"$(inherited)\"",
610 | );
611 | MTL_ENABLE_DEBUG_INFO = YES;
612 | ONLY_ACTIVE_ARCH = YES;
613 | OTHER_CFLAGS = "$(inherited)";
614 | OTHER_CPLUSPLUSFLAGS = (
615 | "$(OTHER_CFLAGS)",
616 | "-DFOLLY_NO_CONFIG",
617 | "-DFOLLY_MOBILE=1",
618 | "-DFOLLY_USE_LIBCPP=1",
619 | "-DFOLLY_CFG_NO_COROUTINES=1",
620 | "-DFOLLY_HAVE_CLOCK_GETTIME=1",
621 | );
622 | OTHER_LDFLAGS = "$(inherited)";
623 | REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native";
624 | SDKROOT = iphoneos;
625 | USE_HERMES = true;
626 | };
627 | name = Debug;
628 | };
629 | 83CBBA211A601CBA00E9B192 /* ReleaseDev */ = {
630 | isa = XCBuildConfiguration;
631 | baseConfigurationReference = A91975CC2B35F6F700736A51 /* Config.xcconfig */;
632 | buildSettings = {
633 | ALWAYS_SEARCH_USER_PATHS = NO;
634 | CC = "";
635 | CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
636 | CLANG_CXX_LANGUAGE_STANDARD = "c++20";
637 | CLANG_CXX_LIBRARY = "libc++";
638 | CLANG_ENABLE_MODULES = YES;
639 | CLANG_ENABLE_OBJC_ARC = YES;
640 | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
641 | CLANG_WARN_BOOL_CONVERSION = YES;
642 | CLANG_WARN_COMMA = YES;
643 | CLANG_WARN_CONSTANT_CONVERSION = YES;
644 | CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
645 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
646 | CLANG_WARN_EMPTY_BODY = YES;
647 | CLANG_WARN_ENUM_CONVERSION = YES;
648 | CLANG_WARN_INFINITE_RECURSION = YES;
649 | CLANG_WARN_INT_CONVERSION = YES;
650 | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
651 | CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
652 | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
653 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
654 | CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
655 | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
656 | CLANG_WARN_STRICT_PROTOTYPES = YES;
657 | CLANG_WARN_SUSPICIOUS_MOVE = YES;
658 | CLANG_WARN_UNREACHABLE_CODE = YES;
659 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
660 | CODE_SIGN_IDENTITY = "Apple Developer";
661 | COPY_PHASE_STRIP = YES;
662 | CXX = "";
663 | ENABLE_NS_ASSERTIONS = NO;
664 | ENABLE_STRICT_OBJC_MSGSEND = YES;
665 | "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = i386;
666 | GCC_C_LANGUAGE_STANDARD = gnu99;
667 | GCC_NO_COMMON_BLOCKS = YES;
668 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
669 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
670 | GCC_WARN_UNDECLARED_SELECTOR = YES;
671 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
672 | GCC_WARN_UNUSED_FUNCTION = YES;
673 | GCC_WARN_UNUSED_VARIABLE = YES;
674 | IPHONEOS_DEPLOYMENT_TARGET = 15.0;
675 | LD = "";
676 | LDPLUSPLUS = "";
677 | LD_RUNPATH_SEARCH_PATHS = (
678 | /usr/lib/swift,
679 | "$(inherited)",
680 | );
681 | LIBRARY_SEARCH_PATHS = (
682 | "\"$(SDKROOT)/usr/lib/swift\"",
683 | "\"$(TOOLCHAIN_DIR)/usr/lib/swift/$(PLATFORM_NAME)\"",
684 | "\"$(inherited)\"",
685 | );
686 | MTL_ENABLE_DEBUG_INFO = NO;
687 | OTHER_CFLAGS = "$(inherited)";
688 | OTHER_CPLUSPLUSFLAGS = (
689 | "$(OTHER_CFLAGS)",
690 | "-DFOLLY_NO_CONFIG",
691 | "-DFOLLY_MOBILE=1",
692 | "-DFOLLY_USE_LIBCPP=1",
693 | "-DFOLLY_CFG_NO_COROUTINES=1",
694 | "-DFOLLY_HAVE_CLOCK_GETTIME=1",
695 | );
696 | OTHER_LDFLAGS = "$(inherited)";
697 | REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native";
698 | SDKROOT = iphoneos;
699 | USE_HERMES = true;
700 | VALIDATE_PRODUCT = YES;
701 | };
702 | name = ReleaseDev;
703 | };
704 | A904A5812B336B3000CC1788 /* Release */ = {
705 | isa = XCBuildConfiguration;
706 | baseConfigurationReference = A91975CC2B35F6F700736A51 /* Config.xcconfig */;
707 | buildSettings = {
708 | ALWAYS_SEARCH_USER_PATHS = NO;
709 | CC = "";
710 | CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
711 | CLANG_CXX_LANGUAGE_STANDARD = "c++20";
712 | CLANG_CXX_LIBRARY = "libc++";
713 | CLANG_ENABLE_MODULES = YES;
714 | CLANG_ENABLE_OBJC_ARC = YES;
715 | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
716 | CLANG_WARN_BOOL_CONVERSION = YES;
717 | CLANG_WARN_COMMA = YES;
718 | CLANG_WARN_CONSTANT_CONVERSION = YES;
719 | CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
720 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
721 | CLANG_WARN_EMPTY_BODY = YES;
722 | CLANG_WARN_ENUM_CONVERSION = YES;
723 | CLANG_WARN_INFINITE_RECURSION = YES;
724 | CLANG_WARN_INT_CONVERSION = YES;
725 | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
726 | CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
727 | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
728 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
729 | CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
730 | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
731 | CLANG_WARN_STRICT_PROTOTYPES = YES;
732 | CLANG_WARN_SUSPICIOUS_MOVE = YES;
733 | CLANG_WARN_UNREACHABLE_CODE = YES;
734 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
735 | CODE_SIGN_IDENTITY = "Apple Developer";
736 | COPY_PHASE_STRIP = YES;
737 | CXX = "";
738 | ENABLE_NS_ASSERTIONS = NO;
739 | ENABLE_STRICT_OBJC_MSGSEND = YES;
740 | "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = i386;
741 | GCC_C_LANGUAGE_STANDARD = gnu99;
742 | GCC_NO_COMMON_BLOCKS = YES;
743 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
744 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
745 | GCC_WARN_UNDECLARED_SELECTOR = YES;
746 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
747 | GCC_WARN_UNUSED_FUNCTION = YES;
748 | GCC_WARN_UNUSED_VARIABLE = YES;
749 | IPHONEOS_DEPLOYMENT_TARGET = 15.0;
750 | LD = "";
751 | LDPLUSPLUS = "";
752 | LD_RUNPATH_SEARCH_PATHS = (
753 | /usr/lib/swift,
754 | "$(inherited)",
755 | );
756 | LIBRARY_SEARCH_PATHS = (
757 | "\"$(SDKROOT)/usr/lib/swift\"",
758 | "\"$(TOOLCHAIN_DIR)/usr/lib/swift/$(PLATFORM_NAME)\"",
759 | "\"$(inherited)\"",
760 | );
761 | MTL_ENABLE_DEBUG_INFO = NO;
762 | OTHER_CFLAGS = "$(inherited)";
763 | OTHER_CPLUSPLUSFLAGS = (
764 | "$(OTHER_CFLAGS)",
765 | "-DFOLLY_NO_CONFIG",
766 | "-DFOLLY_MOBILE=1",
767 | "-DFOLLY_USE_LIBCPP=1",
768 | "-DFOLLY_CFG_NO_COROUTINES=1",
769 | "-DFOLLY_HAVE_CLOCK_GETTIME=1",
770 | );
771 | OTHER_LDFLAGS = "$(inherited)";
772 | REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native";
773 | SDKROOT = iphoneos;
774 | USE_HERMES = true;
775 | VALIDATE_PRODUCT = YES;
776 | };
777 | name = Release;
778 | };
779 | A904A5822B336B3000CC1788 /* Release */ = {
780 | isa = XCBuildConfiguration;
781 | baseConfigurationReference = 5709B34CF0A7D63546082F79 /* Pods-beplus.release.xcconfig */;
782 | buildSettings = {
783 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
784 | CLANG_ENABLE_MODULES = YES;
785 | CODE_SIGN_ENTITLEMENTS = beplus/beplus.entitlements;
786 | CODE_SIGN_IDENTITY = "Apple Distribution";
787 | CODE_SIGN_STYLE = Manual;
788 | CURRENT_PROJECT_VERSION = "$(BE_APP_BUILD_NUMBER)";
789 | DEVELOPMENT_TEAM = "$(BE_APPLE_DEVELOPER_TEAM_ID)";
790 | INFOPLIST_FILE = beplus/Info.plist;
791 | INFOPLIST_KEY_CFBundleDisplayName = "$(BE_APP_NAME)";
792 | INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.developer-tools";
793 | LD_RUNPATH_SEARCH_PATHS = (
794 | "$(inherited)",
795 | "@executable_path/Frameworks",
796 | );
797 | MARKETING_VERSION = "$(BE_APP_VERSION)";
798 | OTHER_LDFLAGS = (
799 | "$(inherited)",
800 | "-ObjC",
801 | "-lc++",
802 | );
803 | PRODUCT_BUNDLE_IDENTIFIER = "$(BE_APP_BUNDLE_ID)$(PRODUCT_BUNDLE_IDENTIFIER_SUFFIX)";
804 | PRODUCT_BUNDLE_IDENTIFIER_SUFFIX = "";
805 | PRODUCT_NAME = beplus;
806 | PROVISIONING_PROFILE_SPECIFIER = "match AppStore $(PRODUCT_BUNDLE_IDENTIFIER)";
807 | SWIFT_VERSION = 5.0;
808 | VERSIONING_SYSTEM = "apple-generic";
809 | };
810 | name = Release;
811 | };
812 | A904A5832B336B3000CC1788 /* Release */ = {
813 | isa = XCBuildConfiguration;
814 | baseConfigurationReference = 89C6BE57DB24E9ADA2F236DE /* Pods-beplus-beplusTests.release.xcconfig */;
815 | buildSettings = {
816 | BUNDLE_LOADER = "$(TEST_HOST)";
817 | COPY_PHASE_STRIP = NO;
818 | INFOPLIST_FILE = beplusTests/Info.plist;
819 | IPHONEOS_DEPLOYMENT_TARGET = 15.0;
820 | LD_RUNPATH_SEARCH_PATHS = (
821 | "$(inherited)",
822 | "@executable_path/Frameworks",
823 | "@loader_path/Frameworks",
824 | );
825 | OTHER_LDFLAGS = (
826 | "-ObjC",
827 | "-lc++",
828 | "$(inherited)",
829 | );
830 | PRODUCT_BUNDLE_IDENTIFIER = "$(BE_APP_BUNDLE_ID)$(PRODUCT_BUNDLE_IDENTIFIER_SUFFIX)";
831 | PRODUCT_BUNDLE_IDENTIFIER_SUFFIX = "";
832 | PRODUCT_NAME = "$(TARGET_NAME)";
833 | TEST_HOST = "$(BUILT_PRODUCTS_DIR)/beplus.app/beplus";
834 | };
835 | name = Release;
836 | };
837 | A904A5842B336B4500CC1788 /* ReleaseStage */ = {
838 | isa = XCBuildConfiguration;
839 | baseConfigurationReference = A91975CC2B35F6F700736A51 /* Config.xcconfig */;
840 | buildSettings = {
841 | ALWAYS_SEARCH_USER_PATHS = NO;
842 | CC = "";
843 | CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
844 | CLANG_CXX_LANGUAGE_STANDARD = "c++20";
845 | CLANG_CXX_LIBRARY = "libc++";
846 | CLANG_ENABLE_MODULES = YES;
847 | CLANG_ENABLE_OBJC_ARC = YES;
848 | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
849 | CLANG_WARN_BOOL_CONVERSION = YES;
850 | CLANG_WARN_COMMA = YES;
851 | CLANG_WARN_CONSTANT_CONVERSION = YES;
852 | CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
853 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
854 | CLANG_WARN_EMPTY_BODY = YES;
855 | CLANG_WARN_ENUM_CONVERSION = YES;
856 | CLANG_WARN_INFINITE_RECURSION = YES;
857 | CLANG_WARN_INT_CONVERSION = YES;
858 | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
859 | CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
860 | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
861 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
862 | CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
863 | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
864 | CLANG_WARN_STRICT_PROTOTYPES = YES;
865 | CLANG_WARN_SUSPICIOUS_MOVE = YES;
866 | CLANG_WARN_UNREACHABLE_CODE = YES;
867 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
868 | CODE_SIGN_IDENTITY = "Apple Developer";
869 | COPY_PHASE_STRIP = YES;
870 | CXX = "";
871 | ENABLE_NS_ASSERTIONS = NO;
872 | ENABLE_STRICT_OBJC_MSGSEND = YES;
873 | "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = i386;
874 | GCC_C_LANGUAGE_STANDARD = gnu99;
875 | GCC_NO_COMMON_BLOCKS = YES;
876 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
877 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
878 | GCC_WARN_UNDECLARED_SELECTOR = YES;
879 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
880 | GCC_WARN_UNUSED_FUNCTION = YES;
881 | GCC_WARN_UNUSED_VARIABLE = YES;
882 | IPHONEOS_DEPLOYMENT_TARGET = 15.0;
883 | LD = "";
884 | LDPLUSPLUS = "";
885 | LD_RUNPATH_SEARCH_PATHS = (
886 | /usr/lib/swift,
887 | "$(inherited)",
888 | );
889 | LIBRARY_SEARCH_PATHS = (
890 | "\"$(SDKROOT)/usr/lib/swift\"",
891 | "\"$(TOOLCHAIN_DIR)/usr/lib/swift/$(PLATFORM_NAME)\"",
892 | "\"$(inherited)\"",
893 | );
894 | MTL_ENABLE_DEBUG_INFO = NO;
895 | OTHER_CFLAGS = "$(inherited)";
896 | OTHER_CPLUSPLUSFLAGS = (
897 | "$(OTHER_CFLAGS)",
898 | "-DFOLLY_NO_CONFIG",
899 | "-DFOLLY_MOBILE=1",
900 | "-DFOLLY_USE_LIBCPP=1",
901 | "-DFOLLY_CFG_NO_COROUTINES=1",
902 | "-DFOLLY_HAVE_CLOCK_GETTIME=1",
903 | );
904 | OTHER_LDFLAGS = "$(inherited)";
905 | REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native";
906 | SDKROOT = iphoneos;
907 | USE_HERMES = true;
908 | VALIDATE_PRODUCT = YES;
909 | };
910 | name = ReleaseStage;
911 | };
912 | A904A5852B336B4500CC1788 /* ReleaseStage */ = {
913 | isa = XCBuildConfiguration;
914 | baseConfigurationReference = B1AF6F7326E3257C29CCDEE7 /* Pods-beplus.releasestage.xcconfig */;
915 | buildSettings = {
916 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
917 | CLANG_ENABLE_MODULES = YES;
918 | CODE_SIGN_ENTITLEMENTS = beplus/beplus.entitlements;
919 | CODE_SIGN_IDENTITY = "Apple Distribution";
920 | CODE_SIGN_STYLE = Manual;
921 | CURRENT_PROJECT_VERSION = "$(BE_APP_BUILD_NUMBER)";
922 | DEVELOPMENT_TEAM = "$(BE_APPLE_DEVELOPER_TEAM_ID)";
923 | INFOPLIST_FILE = beplus/Info.plist;
924 | INFOPLIST_KEY_CFBundleDisplayName = "$(BE_APP_NAME)";
925 | INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.developer-tools";
926 | LD_RUNPATH_SEARCH_PATHS = (
927 | "$(inherited)",
928 | "@executable_path/Frameworks",
929 | );
930 | MARKETING_VERSION = "$(BE_APP_VERSION)";
931 | OTHER_LDFLAGS = (
932 | "$(inherited)",
933 | "-ObjC",
934 | "-lc++",
935 | );
936 | PRODUCT_BUNDLE_IDENTIFIER = "$(BE_APP_BUNDLE_ID)$(PRODUCT_BUNDLE_IDENTIFIER_SUFFIX)";
937 | PRODUCT_BUNDLE_IDENTIFIER_SUFFIX = .stage;
938 | PRODUCT_NAME = beplus;
939 | PROVISIONING_PROFILE_SPECIFIER = "match AppStore $(PRODUCT_BUNDLE_IDENTIFIER)";
940 | SWIFT_VERSION = 5.0;
941 | VERSIONING_SYSTEM = "apple-generic";
942 | };
943 | name = ReleaseStage;
944 | };
945 | A904A5862B336B4500CC1788 /* ReleaseStage */ = {
946 | isa = XCBuildConfiguration;
947 | baseConfigurationReference = F33DB53C4A6E10CFD558B783 /* Pods-beplus-beplusTests.releasestage.xcconfig */;
948 | buildSettings = {
949 | BUNDLE_LOADER = "$(TEST_HOST)";
950 | COPY_PHASE_STRIP = NO;
951 | INFOPLIST_FILE = beplusTests/Info.plist;
952 | IPHONEOS_DEPLOYMENT_TARGET = 15.0;
953 | LD_RUNPATH_SEARCH_PATHS = (
954 | "$(inherited)",
955 | "@executable_path/Frameworks",
956 | "@loader_path/Frameworks",
957 | );
958 | OTHER_LDFLAGS = (
959 | "-ObjC",
960 | "-lc++",
961 | "$(inherited)",
962 | );
963 | PRODUCT_BUNDLE_IDENTIFIER = "$(BE_APP_BUNDLE_ID)$(PRODUCT_BUNDLE_IDENTIFIER_SUFFIX)";
964 | PRODUCT_BUNDLE_IDENTIFIER_SUFFIX = .stage;
965 | PRODUCT_NAME = "$(TARGET_NAME)";
966 | TEST_HOST = "$(BUILT_PRODUCTS_DIR)/beplus.app/beplus";
967 | };
968 | name = ReleaseStage;
969 | };
970 | /* End XCBuildConfiguration section */
971 |
972 | /* Begin XCConfigurationList section */
973 | 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "beplusTests" */ = {
974 | isa = XCConfigurationList;
975 | buildConfigurations = (
976 | 00E356F61AD99517003FC87E /* Debug */,
977 | 00E356F71AD99517003FC87E /* ReleaseDev */,
978 | A904A5862B336B4500CC1788 /* ReleaseStage */,
979 | A904A5832B336B3000CC1788 /* Release */,
980 | );
981 | defaultConfigurationIsVisible = 0;
982 | defaultConfigurationName = Release;
983 | };
984 | 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "beplus" */ = {
985 | isa = XCConfigurationList;
986 | buildConfigurations = (
987 | 13B07F941A680F5B00A75B9A /* Debug */,
988 | 13B07F951A680F5B00A75B9A /* ReleaseDev */,
989 | A904A5852B336B4500CC1788 /* ReleaseStage */,
990 | A904A5822B336B3000CC1788 /* Release */,
991 | );
992 | defaultConfigurationIsVisible = 0;
993 | defaultConfigurationName = Release;
994 | };
995 | 83CBB9FA1A601CBA00E9B192 /* Build configuration list for PBXProject "beplus" */ = {
996 | isa = XCConfigurationList;
997 | buildConfigurations = (
998 | 83CBBA201A601CBA00E9B192 /* Debug */,
999 | 83CBBA211A601CBA00E9B192 /* ReleaseDev */,
1000 | A904A5842B336B4500CC1788 /* ReleaseStage */,
1001 | A904A5812B336B3000CC1788 /* Release */,
1002 | );
1003 | defaultConfigurationIsVisible = 0;
1004 | defaultConfigurationName = Release;
1005 | };
1006 | /* End XCConfigurationList section */
1007 | };
1008 | rootObject = 83CBB9F71A601CBA00E9B192 /* Project object */;
1009 | }
1010 |
--------------------------------------------------------------------------------
/ios/beplus.xcodeproj/xcshareddata/xcschemes/beplus.debug.xcscheme:
--------------------------------------------------------------------------------
1 |
2 |
5 |
8 |
9 |
11 |
14 |
15 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
33 |
39 |
40 |
41 |
42 |
43 |
48 |
49 |
51 |
57 |
58 |
59 |
60 |
61 |
71 |
73 |
79 |
80 |
81 |
82 |
88 |
90 |
96 |
97 |
98 |
99 |
101 |
102 |
105 |
106 |
107 |
--------------------------------------------------------------------------------
/ios/beplus.xcodeproj/xcshareddata/xcschemes/beplus.dev.xcscheme:
--------------------------------------------------------------------------------
1 |
2 |
5 |
8 |
9 |
11 |
14 |
15 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
33 |
39 |
40 |
41 |
42 |
43 |
48 |
49 |
51 |
57 |
58 |
59 |
60 |
61 |
71 |
73 |
79 |
80 |
81 |
82 |
88 |
90 |
96 |
97 |
98 |
99 |
101 |
102 |
105 |
106 |
107 |
--------------------------------------------------------------------------------
/ios/beplus.xcodeproj/xcshareddata/xcschemes/beplus.stage.xcscheme:
--------------------------------------------------------------------------------
1 |
2 |
5 |
8 |
9 |
11 |
14 |
15 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
33 |
39 |
40 |
41 |
42 |
43 |
48 |
49 |
51 |
57 |
58 |
59 |
60 |
61 |
71 |
73 |
79 |
80 |
81 |
82 |
88 |
90 |
96 |
97 |
98 |
99 |
101 |
102 |
105 |
106 |
107 |
--------------------------------------------------------------------------------
/ios/beplus.xcodeproj/xcshareddata/xcschemes/beplus.xcscheme:
--------------------------------------------------------------------------------
1 |
2 |
5 |
8 |
9 |
11 |
14 |
15 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
33 |
39 |
40 |
41 |
42 |
43 |
48 |
49 |
51 |
57 |
58 |
59 |
60 |
61 |
71 |
73 |
79 |
80 |
81 |
82 |
88 |
90 |
96 |
97 |
98 |
99 |
101 |
102 |
105 |
106 |
107 |
--------------------------------------------------------------------------------
/ios/beplus.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/ios/beplus.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ios/beplus/AppDelegate.h:
--------------------------------------------------------------------------------
1 | #import
2 | #import
3 |
4 | @interface AppDelegate : RCTAppDelegate
5 |
6 | @end
7 |
--------------------------------------------------------------------------------
/ios/beplus/AppDelegate.mm:
--------------------------------------------------------------------------------
1 | #import "AppDelegate.h"
2 |
3 | #import
4 |
5 | #import "RNCConfig.h"
6 |
7 | @implementation AppDelegate
8 |
9 | - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
10 | {
11 | self.moduleName = @"beplus";
12 | // You can add your custom initial props in the dictionary below.
13 | // They will be passed down to the ViewController used by React Native.
14 | self.initialProps = @{};
15 |
16 | // NSString *varInObjC = [RNCConfig envFor:@"BE_VAR_IN_OBJC"];
17 | // NSLog(@"RNConfig_ObjC: %@", varInObjC);
18 |
19 | // NSString *varInPlist = [mainBundle objectForInfoDictionaryKey:@"VarInPlist"];
20 | // NSLog(@"RNConfig_Plist: %@", varInPlist);
21 |
22 | NSBundle* mainBundle = [NSBundle mainBundle];
23 |
24 | return [super application:application didFinishLaunchingWithOptions:launchOptions];
25 | }
26 |
27 | - (NSURL *)sourceURLForBridge:(RCTBridge *)bridge
28 | {
29 | return [self bundleURL];
30 | }
31 |
32 | - (NSURL *)bundleURL
33 | {
34 | #if DEBUG
35 | return [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index"];
36 | #else
37 | return [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"];
38 | #endif
39 | }
40 |
41 | @end
42 |
--------------------------------------------------------------------------------
/ios/beplus/Images.xcassets/AppIcon.appiconset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "app-icon_1024x1024.png",
5 | "idiom" : "universal",
6 | "platform" : "ios",
7 | "size" : "1024x1024"
8 | }
9 | ],
10 | "info" : {
11 | "author" : "xcode",
12 | "version" : 1
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/ios/beplus/Images.xcassets/AppIcon.appiconset/app-icon_1024x1024.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/ios/beplus/Images.xcassets/AppIcon.appiconset/app-icon_1024x1024.png
--------------------------------------------------------------------------------
/ios/beplus/Images.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "author" : "xcode",
4 | "version" : 1
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/ios/beplus/Images.xcassets/LaunchScreen.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "logo_1000x1000.png",
5 | "idiom" : "iphone",
6 | "scale" : "1x"
7 | },
8 | {
9 | "filename" : "logo_1000x1000.png",
10 | "idiom" : "iphone",
11 | "scale" : "2x"
12 | },
13 | {
14 | "filename" : "logo_1000x1000.png",
15 | "idiom" : "iphone",
16 | "scale" : "3x"
17 | }
18 | ],
19 | "info" : {
20 | "author" : "xcode",
21 | "version" : 1
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/ios/beplus/Images.xcassets/LaunchScreen.imageset/logo_1000x1000.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/ios/beplus/Images.xcassets/LaunchScreen.imageset/logo_1000x1000.png
--------------------------------------------------------------------------------
/ios/beplus/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | BGTaskSchedulerPermittedIdentifiers
6 |
7 | $(PRODUCT_BUNDLE_IDENTIFIER)
8 |
9 | CFBundleDevelopmentRegion
10 | en
11 | CFBundleDisplayName
12 | $(BE_APP_NAME)
13 | CFBundleExecutable
14 | $(EXECUTABLE_NAME)
15 | CFBundleIdentifier
16 | $(PRODUCT_BUNDLE_IDENTIFIER)
17 | CFBundleInfoDictionaryVersion
18 | 6.0
19 | CFBundleName
20 | $(PRODUCT_NAME)
21 | CFBundlePackageType
22 | APPL
23 | CFBundleShortVersionString
24 | $(BE_APP_VERSION)
25 | CFBundleSignature
26 | ????
27 | CFBundleVersion
28 | $(BE_APP_BUILD_NUMBER)
29 | ITSAppUsesNonExemptEncryption
30 |
31 | LSRequiresIPhoneOS
32 |
33 | NSAppTransportSecurity
34 |
35 | NSAllowsArbitraryLoads
36 |
37 | NSAllowsLocalNetworking
38 |
39 |
40 | NSLocationAlwaysAndWhenInUseUsageDescription
41 | Allow $(PRODUCT_NAME) to use your location
42 | NSLocationAlwaysUsageDescription
43 | Allow $(PRODUCT_NAME) to use your location
44 | NSLocationWhenInUseUsageDescription
45 | Allow $(PRODUCT_NAME) to use your location
46 | UIBackgroundModes
47 |
48 | fetch
49 | location
50 | processing
51 | remote-notification
52 |
53 | UILaunchStoryboardName
54 | LaunchScreen.storyboard
55 | UIRequiredDeviceCapabilities
56 |
57 | arm64
58 |
59 | UISupportedInterfaceOrientations
60 |
61 | UIInterfaceOrientationPortrait
62 | UIInterfaceOrientationLandscapeLeft
63 | UIInterfaceOrientationLandscapeRight
64 |
65 | UIViewControllerBasedStatusBarAppearance
66 |
67 | VarInPlist
68 | $(BE_VAR_IN_PLIST)
69 |
70 |
71 |
--------------------------------------------------------------------------------
/ios/beplus/LaunchScreen.storyboard:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
--------------------------------------------------------------------------------
/ios/beplus/PrivacyInfo.xcprivacy:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | NSPrivacyAccessedAPITypes
6 |
7 |
8 | NSPrivacyAccessedAPIType
9 | NSPrivacyAccessedAPICategoryFileTimestamp
10 | NSPrivacyAccessedAPITypeReasons
11 |
12 | C617.1
13 |
14 |
15 |
16 | NSPrivacyAccessedAPIType
17 | NSPrivacyAccessedAPICategoryUserDefaults
18 | NSPrivacyAccessedAPITypeReasons
19 |
20 | CA92.1
21 |
22 |
23 |
24 | NSPrivacyAccessedAPIType
25 | NSPrivacyAccessedAPICategorySystemBootTime
26 | NSPrivacyAccessedAPITypeReasons
27 |
28 | 35F9.1
29 |
30 |
31 |
32 | NSPrivacyCollectedDataTypes
33 |
34 | NSPrivacyTracking
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/ios/beplus/beplus.entitlements:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/ios/beplus/main.m:
--------------------------------------------------------------------------------
1 | #import
2 |
3 | #import "AppDelegate.h"
4 |
5 | int main(int argc, char *argv[])
6 | {
7 | @autoreleasepool {
8 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/ios/beplusTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | $(BE_APP_VERSION)
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | $(BE_APP_BUILD_NUMBER)
23 |
24 |
25 |
--------------------------------------------------------------------------------
/ios/beplusTests/beplusTests.m:
--------------------------------------------------------------------------------
1 | #import
2 | #import
3 |
4 | #import
5 | #import
6 |
7 | #define TIMEOUT_SECONDS 600
8 | #define TEXT_TO_LOOK_FOR @"Welcome to React"
9 |
10 | @interface beplusTests : XCTestCase
11 |
12 | @end
13 |
14 | @implementation beplusTests
15 |
16 | - (BOOL)findSubviewInView:(UIView *)view matching:(BOOL (^)(UIView *view))test
17 | {
18 | if (test(view)) {
19 | return YES;
20 | }
21 | for (UIView *subview in [view subviews]) {
22 | if ([self findSubviewInView:subview matching:test]) {
23 | return YES;
24 | }
25 | }
26 | return NO;
27 | }
28 |
29 | - (void)testRendersWelcomeScreen
30 | {
31 | UIViewController *vc = [[[RCTSharedApplication() delegate] window] rootViewController];
32 | NSDate *date = [NSDate dateWithTimeIntervalSinceNow:TIMEOUT_SECONDS];
33 | BOOL foundElement = NO;
34 |
35 | __block NSString *redboxError = nil;
36 | #ifdef DEBUG
37 | RCTSetLogFunction(
38 | ^(RCTLogLevel level, RCTLogSource source, NSString *fileName, NSNumber *lineNumber, NSString *message) {
39 | if (level >= RCTLogLevelError) {
40 | redboxError = message;
41 | }
42 | });
43 | #endif
44 |
45 | while ([date timeIntervalSinceNow] > 0 && !foundElement && !redboxError) {
46 | [[NSRunLoop mainRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate dateWithTimeIntervalSinceNow:0.1]];
47 | [[NSRunLoop mainRunLoop] runMode:NSRunLoopCommonModes beforeDate:[NSDate dateWithTimeIntervalSinceNow:0.1]];
48 |
49 | foundElement = [self findSubviewInView:vc.view
50 | matching:^BOOL(UIView *view) {
51 | if ([view.accessibilityLabel isEqualToString:TEXT_TO_LOOK_FOR]) {
52 | return YES;
53 | }
54 | return NO;
55 | }];
56 | }
57 |
58 | #ifdef DEBUG
59 | RCTSetLogFunction(RCTDefaultLogFunction);
60 | #endif
61 |
62 | XCTAssertNil(redboxError, @"RedBox error: %@", redboxError);
63 | XCTAssertTrue(foundElement, @"Couldn't find element with text '%@' in %d seconds", TEXT_TO_LOOK_FOR, TIMEOUT_SECONDS);
64 | }
65 |
66 | @end
67 |
--------------------------------------------------------------------------------
/ios/fastlane/.gitignore:
--------------------------------------------------------------------------------
1 | devices.txt
2 | devices.deviceids
3 |
--------------------------------------------------------------------------------
/ios/fastlane/Fastfile:
--------------------------------------------------------------------------------
1 | # https://docs.fastlane.tools/
2 |
3 | skip_docs
4 |
5 | envs = [
6 | { name: "dev", id_suffix: ".dev", configuration: "ReleaseDev" },
7 | { name: "stage", id_suffix: ".stage", configuration: "ReleaseStage" },
8 | { name: "prod", id_suffix: "", configuration: "Release" }
9 | ]
10 |
11 | lane :apps do |options|
12 | enable_services = {
13 | # associated_domains: "on",
14 | # push_notification: "on",
15 | # ...
16 | }
17 |
18 | # debug
19 | produce(
20 | username: ENV["BE_FASTLANE_USERNAME"],
21 | app_identifier: "#{ENV["BE_APP_BUNDLE_ID"]}.debug",
22 | app_name: "#{ENV["BE_APP_NAME"]}-debug",
23 | language: "en-US",
24 | # Necessary when in multiple teams.
25 | team_id: ENV["BE_APPLE_DEVELOPER_TEAM_ID"],
26 | team_name: ENV["BE_APPLE_DEVELOPER_TEAM_NAME"],
27 | skip_itc: true,
28 | # Services
29 | enable_services: enable_services
30 | )
31 |
32 | if options[:env].to_s.strip.empty?
33 | envs.each { |env|
34 | produce(
35 | username: ENV["BE_FASTLANE_USERNAME"],
36 | app_identifier: "#{ENV["BE_APP_BUNDLE_ID"]}#{env[:id_suffix]}",
37 | app_name: "#{ENV["BE_APP_NAME"]}-#{env[:name]}",
38 | language: "en-US",
39 | # Necessary when in multiple teams.
40 | team_id: ENV["BE_APPLE_DEVELOPER_TEAM_ID"],
41 | team_name: ENV["BE_APPLE_DEVELOPER_TEAM_NAME"],
42 | # https://appstoreconnect.apple.com/WebObjects/iTunesConnect.woa/ra/user/detail
43 | itc_team_id: ENV["BE_APPSTORE_CONNECT_TEAM_ID"],
44 | itc_team_name: ENV["BE_APPSTORE_CONNECT_TEAM_NAME"],
45 | # Services
46 | enable_services: enable_services
47 | )
48 | }
49 | elsif
50 | specific_env = envs.select { |env| env[:name] == options[:env] }.first
51 | produce(
52 | username: ENV["BE_FASTLANE_USERNAME"],
53 | app_identifier: "#{ENV["BE_APP_BUNDLE_ID"]}#{specific_env[:id_suffix]}",
54 | app_name: "#{ENV["BE_APP_NAME"]}-#{specific_env[:name]}",
55 | language: "en-US",
56 | # Necessary when in multiple teams.
57 | team_id: ENV["BE_APPLE_DEVELOPER_TEAM_ID"],
58 | team_name: ENV["BE_APPLE_DEVELOPER_TEAM_NAME"],
59 | # https://appstoreconnect.apple.com/WebObjects/iTunesConnect.woa/ra/user/detail
60 | itc_team_id: ENV["BE_APPSTORE_CONNECT_TEAM_ID"],
61 | itc_team_name: ENV["BE_APPSTORE_CONNECT_TEAM_NAME"],
62 | # Services
63 | enable_services: enable_services
64 | )
65 | end
66 | end
67 |
68 | # This `signing_sync` lane runs before the `deploy` to READ & install certificates & provisioning profiles
69 | lane :signing_sync do |options|
70 | api_key = app_store_connect_api_key(
71 | key_id: ENV["BE_APPSTORE_CONNECT_KEY_ID"],
72 | issuer_id: ENV["BE_APPSTORE_CONNECT_KEY_ISSUER_ID"],
73 | # key_filepath: ENV["BE_APPSTORE_CONNECT_KEY_FILE_PATH"],
74 | key_content: ENV["BE_APPSTORE_CONNECT_KEY_CONTENT"],
75 | duration: 1200, # max
76 | in_house: false
77 | )
78 |
79 | readonly = options[:readonly] != false
80 | force = options[:force] == true
81 |
82 | # register_devices(
83 | # api_key: api_key,
84 | # devices_file: ENV["BE_APPLE_DEVELOPER_DEVICES_FILE_PATH"],
85 | # team_id: ENV["BE_APPLE_DEVELOPER_TEAM_ID"],
86 | # team_name: ENV["BE_APPLE_DEVELOPER_TEAM_NAME"],
87 | # )
88 |
89 | # debug
90 | match(
91 | api_key: api_key,
92 | type: "development",
93 | readonly: readonly,
94 | force: force,
95 | app_identifier: [
96 | "#{ENV["BE_APP_BUNDLE_ID"]}.debug"
97 | ],
98 | # Necessary when in multiple teams.
99 | team_id: ENV["BE_APPLE_DEVELOPER_TEAM_ID"],
100 | team_name: ENV["BE_APPLE_DEVELOPER_TEAM_NAME"],
101 | )
102 |
103 | if options[:env].to_s.strip.empty?
104 | # dev, stage, prod
105 | match(
106 | api_key: api_key,
107 | type: "appstore",
108 | readonly: readonly,
109 | force: force,
110 | app_identifier: envs.map { |env| "#{ENV["BE_APP_BUNDLE_ID"]}#{env[:id_suffix]}" },
111 | # Necessary when in multiple teams.
112 | team_id: ENV["BE_APPLE_DEVELOPER_TEAM_ID"],
113 | team_name: ENV["BE_APPLE_DEVELOPER_TEAM_NAME"],
114 | )
115 | elsif
116 | specific_env = envs.select { |env| env[:name] == options[:env] }.first
117 | match(
118 | api_key: api_key,
119 | type: "appstore",
120 | readonly: readonly,
121 | force: force,
122 | app_identifier: "#{ENV["BE_APP_BUNDLE_ID"]}#{specific_env[:id_suffix]}",
123 | # Necessary when in multiple teams.
124 | team_id: ENV["BE_APPLE_DEVELOPER_TEAM_ID"],
125 | team_name: ENV["BE_APPLE_DEVELOPER_TEAM_NAME"],
126 | )
127 | end
128 | end
129 |
130 | lane :nuke do
131 | api_key = app_store_connect_api_key(
132 | key_id: ENV["BE_APPSTORE_CONNECT_KEY_ID"],
133 | issuer_id: ENV["BE_APPSTORE_CONNECT_KEY_ISSUER_ID"],
134 | # key_filepath: ENV["BE_APPSTORE_CONNECT_KEY_FILE_PATH"],
135 | key_content: ENV["BE_APPSTORE_CONNECT_KEY_CONTENT"],
136 | duration: 1200, # max
137 | in_house: false
138 | )
139 |
140 | match_nuke(
141 | type: "development",
142 | api_key: api_key,
143 | # Necessary when in multiple teams.
144 | team_id: ENV["BE_APPLE_DEVELOPER_TEAM_ID"],
145 | team_name: ENV["BE_APPLE_DEVELOPER_TEAM_NAME"],
146 | )
147 |
148 | match_nuke(
149 | type: "appstore",
150 | api_key: api_key,
151 | # Necessary when in multiple teams.
152 | team_id: ENV["BE_APPLE_DEVELOPER_TEAM_ID"],
153 | team_name: ENV["BE_APPLE_DEVELOPER_TEAM_NAME"],
154 | )
155 | end
156 |
157 | # deploy
158 | lane :deploy do |options|
159 | api_key = app_store_connect_api_key(
160 | key_id: ENV["BE_APPSTORE_CONNECT_KEY_ID"],
161 | issuer_id: ENV["BE_APPSTORE_CONNECT_KEY_ISSUER_ID"],
162 | # key_filepath: ENV["BE_APPSTORE_CONNECT_KEY_FILE_PATH"],
163 | key_content: ENV["BE_APPSTORE_CONNECT_KEY_CONTENT"],
164 | duration: 1200, # max
165 | in_house: false
166 | )
167 |
168 | setup_ci
169 |
170 | selected_env = envs.select { |env| env[:name] == options[:env] }.first
171 |
172 | sync_code_signing(
173 | api_key: api_key,
174 | type: "appstore",
175 | readonly: true,
176 | app_identifier: [
177 | "#{ENV["BE_APP_BUNDLE_ID"]}#{selected_env[:id_suffix]}"
178 | ],
179 | # Necessary when in multiple teams.
180 | team_id: ENV["BE_APPLE_DEVELOPER_TEAM_ID"],
181 | team_name: ENV["BE_APPLE_DEVELOPER_TEAM_NAME"],
182 | )
183 |
184 | build_app(
185 | workspace: "beplus.xcworkspace",
186 | scheme: "beplus#{selected_env[:id_suffix]}",
187 | configuration: selected_env[:configuration],
188 | output_name: "beplus-#{selected_env[:name]}.ipa"
189 | )
190 |
191 | upload_to_testflight(
192 | api_key: api_key,
193 | app_identifier: "#{ENV["BE_APP_BUNDLE_ID"]}#{selected_env[:id_suffix]}",
194 | apple_id: ENV["BE_APP_APPLE_ID"],
195 | team_id: ENV["BE_APPSTORE_CONNECT_TEAM_ID"], # itc_team_id
196 | team_name: ENV["BE_APPSTORE_CONNECT_TEAM_NAME"], # itc_team_name
197 | dev_portal_team_id: ENV["BE_APPLE_DEVELOPER_TEAM_ID"], # team_id
198 | skip_waiting_for_build_processing: true,
199 | submit_beta_review: false
200 | )
201 | end
202 |
--------------------------------------------------------------------------------
/ios/fastlane/Matchfile:
--------------------------------------------------------------------------------
1 | # https://docs.fastlane.tools/actions/match
2 |
3 | storage_mode(ENV["BE_FASTLANE_MATCH_STORAGE"]) # "s3" or "git"
4 |
5 | if ENV["BE_FASTLANE_MATCH_STORAGE"] == "s3"
6 | s3_bucket(ENV["BE_FASTLANE_MATCH_STORAGE_S3_BUCKET_NAME"])
7 | s3_object_prefix("#{ENV["BE_APPLE_DEVELOPER_TEAM_ID"]}/".downcase)
8 |
9 | if ENV["BE_FASTLANE_MATCH_STORAGE_S3_AWS_REGION"]
10 | s3_region(ENV["BE_FASTLANE_MATCH_STORAGE_S3_AWS_REGION"])
11 | end
12 | if ENV["BE_FASTLANE_MATCH_STORAGE_S3_AWS_ACCESS_KEY_ID"]
13 | s3_access_key(ENV["BE_FASTLANE_MATCH_STORAGE_S3_AWS_ACCESS_KEY_ID"])
14 | end
15 | if ENV["BE_FASTLANE_MATCH_STORAGE_S3_AWS_SECRET_ACCESS_KEY"]
16 | s3_secret_access_key(ENV["BE_FASTLANE_MATCH_STORAGE_S3_AWS_SECRET_ACCESS_KEY"])
17 | end
18 | elsif ENV["BE_FASTLANE_MATCH_STORAGE"] == "git"
19 | git_url(ENV["BE_FASTLANE_MATCH_STORAGE_GIT_URL"])
20 | git_branch("#{ENV["BE_APPLE_DEVELOPER_TEAM_ID"]}".downcase)
21 | if (ENV["BE_FASTLANE_MATCH_STORAGE_GIT_SSH_KEY_PRIVATE_CONTENT"])
22 | git_private_key(ENV["BE_FASTLANE_MATCH_STORAGE_GIT_SSH_KEY_PRIVATE_CONTENT"])
23 | end
24 | else
25 | raise "BE_FASTLANE_MATCH_STORAGE is not set or not supported. Allowed values are: 's3' or 'git'"
26 | end
27 |
--------------------------------------------------------------------------------
/ios/fastlane/devices.samples.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/beplus-bootstrap/mobile/ecfa9218a0a88ef06803cc15212a7b6a386d1e8f/ios/fastlane/devices.samples.zip
--------------------------------------------------------------------------------
/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | preset: 'react-native',
3 | };
4 |
--------------------------------------------------------------------------------
/metro.config.js:
--------------------------------------------------------------------------------
1 | const path = require('path');
2 |
3 | const {getDefaultConfig, mergeConfig} = require('@react-native/metro-config');
4 |
5 | const pnpmNodeModules = path.resolve(__dirname, "node_modules");
6 |
7 | /**
8 | * Metro configuration
9 | * https://reactnative.dev/docs/metro
10 | *
11 | * @type {import('metro-config').MetroConfig}
12 | */
13 | const config = {
14 | watchFolders: [
15 | pnpmNodeModules,
16 | ],
17 | };
18 |
19 | module.exports = mergeConfig(getDefaultConfig(__dirname), config);
20 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@beplus-bootstrap/mobile",
3 | "version": "1.0.0",
4 | "buildNumber": "1",
5 | "private": true,
6 | "scripts": {
7 | "android": "react-native run-android",
8 | "ios": "react-native run-ios",
9 | "lint": "eslint .",
10 | "start": "react-native start",
11 | "test": "jest"
12 | },
13 | "dependencies": {
14 | "react": "18.3.1",
15 | "react-native": "0.74.4",
16 | "react-native-config": "1.5.3"
17 | },
18 | "devDependencies": {
19 | "@babel/core": "7.25.2",
20 | "@babel/preset-env": "7.25.3",
21 | "@babel/runtime": "7.25.0",
22 | "@react-native-community/cli": "14.0.0",
23 | "@react-native-community/cli-platform-android": "14.0.0",
24 | "@react-native-community/cli-platform-ios": "14.0.0",
25 | "@react-native/babel-preset": "0.74.86",
26 | "@react-native/eslint-config": "0.74.86",
27 | "@react-native/gradle-plugin": "0.74.86",
28 | "@react-native/metro-config": "0.74.86",
29 | "@react-native/typescript-config": "0.74.86",
30 | "@types/react": "18.3.3",
31 | "@types/react-test-renderer": "18.3.0",
32 | "babel-jest": "29.7.0",
33 | "eslint": "8.57.0",
34 | "jest": "29.7.0",
35 | "prettier": "3.3.3",
36 | "react-test-renderer": "18.3.1",
37 | "typescript": "5.5.4"
38 | },
39 | "engines": {
40 | "node": ">=18"
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "@react-native/typescript-config/tsconfig.json"
3 | }
4 |
--------------------------------------------------------------------------------