Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f67292201f | ||
|
|
5214f34b31 | ||
|
|
68b9ea47a8 | ||
|
|
563a266803 | ||
|
|
2cbc94320d | ||
|
|
d79086bb4c | ||
|
|
a10c762aa6 | ||
|
|
c9c7b538c7 | ||
|
|
42040e4fc9 | ||
|
|
3e343d3264 | ||
|
|
d43b73b566 | ||
|
|
4f4489ee51 | ||
|
|
1ab57851d2 | ||
|
|
5f802ac6eb | ||
|
|
b58a9beef2 | ||
|
|
8fdfeb5e45 | ||
|
|
ca2fc61061 | ||
|
|
bcc20c7458 | ||
|
|
fbe4b0a36c | ||
|
|
eddbeb8896 | ||
|
|
350303256b | ||
|
|
cfefc2d734 | ||
|
|
2932bbea85 | ||
|
|
65e3b209f2 | ||
|
|
cb7e22b0e3 | ||
|
|
6f920afcf7 | ||
|
|
f38c85546f | ||
|
|
204c8996a3 | ||
|
|
a5c41612a0 | ||
|
|
a4c5c57d4a | ||
|
|
a1d9f45f2f | ||
|
|
78d6db5bf0 | ||
|
|
8bd3f7bde1 | ||
|
|
188f763412 | ||
|
|
9376da6c5c | ||
|
|
d5c7f0261e | ||
|
|
9c1d73ffcf | ||
|
|
ab44dce27b | ||
|
|
573115c22e | ||
|
|
83b35f0439 | ||
|
|
2df1b46975 | ||
|
|
9b52bba95d | ||
|
|
a5f1028e67 | ||
|
|
51ccd9fdcb | ||
|
|
1594ff47f5 | ||
|
|
c59de7dbf8 | ||
|
|
032c254d19 | ||
|
|
0fcb8a33aa | ||
|
|
4695ef65d0 | ||
|
|
eff5cb1f3e | ||
|
|
f3b5a9db67 | ||
|
|
5aa91359e1 | ||
|
|
a5455739c6 | ||
|
|
43ffe74a9c | ||
|
|
ca35de2f72 | ||
|
|
1047190d69 | ||
|
|
ba4e2f76da | ||
|
|
33999ad7cb | ||
|
|
68da5175c0 | ||
|
|
0e08ba4ad1 | ||
|
|
0ae24070b0 | ||
|
|
a4f8833547 | ||
|
|
74906cabb2 | ||
|
|
4978c08447 | ||
|
|
b385e5ab4b | ||
|
|
0105e3651c | ||
|
|
8407cd66d1 | ||
|
|
ba2f037f48 | ||
|
|
4e119e13c9 | ||
|
|
eea737625d | ||
|
|
39ea12cf29 | ||
|
|
c5166ac48e | ||
|
|
c5e6bd790d | ||
|
|
b29d248a9b | ||
|
|
396ee208bf | ||
|
|
adb50fa0ee | ||
|
|
5017e13013 | ||
|
|
a6fe626d78 | ||
|
|
8f92fe344a | ||
|
|
19a76c22d1 | ||
|
|
c62204121d | ||
|
|
a4bc18ee3f | ||
|
|
68e53e05bd | ||
|
|
d142d58677 | ||
|
|
56dbb77ee5 | ||
|
|
0dd3cb51fd | ||
|
|
9960a5c958 | ||
|
|
fb4d484d7d | ||
|
|
98067f8c8e | ||
|
|
9dad4716d6 | ||
|
|
2b701f9af0 | ||
|
|
e8b956d4f4 | ||
|
|
f30d5b59ca | ||
|
|
863dac6e6a | ||
|
|
9a4f8f97b9 | ||
|
|
d395ca6cc6 | ||
|
|
15211865fb | ||
|
|
65eb0af191 | ||
|
|
bbdac4e8c6 | ||
|
|
abcfaef1a1 | ||
|
|
2d1b37ab7b | ||
|
|
a18cf2f786 | ||
|
|
e14ed7a637 | ||
|
|
682eb841ff | ||
|
|
b45632d2fd | ||
|
|
877ee14bcc | ||
|
|
7ec5117f54 | ||
|
|
b7cc54a356 | ||
|
|
e1e596cf5f | ||
|
|
0cc631ce2e | ||
|
|
24eaec80bd | ||
|
|
7fc05bc069 | ||
|
|
45da1a28df | ||
|
|
6415c06398 | ||
|
|
2c44882c35 | ||
|
|
2493b8ad4b | ||
|
|
56d0913d4b | ||
|
|
a3ce2aa578 | ||
|
|
446d71063c | ||
|
|
b1aec54e4c | ||
|
|
cb19a31a5f | ||
|
|
0890b1b1b5 | ||
|
|
2191f68883 | ||
|
|
d1941fe002 | ||
|
|
540e5be290 | ||
|
|
7e47057b2e | ||
|
|
86d5a3c4e6 | ||
|
|
6975d6ac48 | ||
|
|
e8ced0a714 | ||
|
|
c5d74dc758 | ||
|
|
4fe2ccaa84 | ||
|
|
d042f40e69 | ||
|
|
58d20967ae | ||
|
|
6858884c83 | ||
|
|
78621207e1 | ||
|
|
d3b4f60848 | ||
|
|
694591ad5c | ||
|
|
e8682ccbf6 | ||
|
|
3973e886f8 | ||
|
|
7e8f1fac8a | ||
|
|
77ddd8688f | ||
|
|
62945205a0 | ||
|
|
adc458d8ff | ||
|
|
b4bb9c50fa | ||
|
|
19526508f2 | ||
|
|
a17efa7299 | ||
|
|
c7bc16608a | ||
|
|
3c9ad509cd | ||
|
|
eea55b22d7 | ||
|
|
7efd1e5d6b | ||
|
|
b264d25b69 | ||
|
|
03f501ca7b | ||
|
|
6598873343 | ||
|
|
a60235abf3 | ||
|
|
b5a8f0a127 | ||
|
|
7d0dfec22c | ||
|
|
51fa99affa | ||
|
|
369aed389c | ||
|
|
10d9c34559 | ||
|
|
8ccf2d1596 | ||
|
|
7ef466078a | ||
|
|
4b2d62ee1f | ||
|
|
05073e7453 | ||
|
|
fa11c232cc | ||
|
|
3038ceeb82 | ||
|
|
d2e38772b9 | ||
|
|
409c0a9e60 | ||
|
|
4b98f0e8de | ||
|
|
264b7ffab9 | ||
|
|
c71224e73e | ||
|
|
3c278ed06c | ||
|
|
d714dc1590 | ||
|
|
d2840885dd | ||
|
|
87247af86b | ||
|
|
159ad02e7a | ||
|
|
ce322c9537 | ||
|
|
13a1ee7479 | ||
|
|
c1f24fb1bb | ||
|
|
4afe251086 | ||
|
|
ac3eb3e660 | ||
|
|
638ec98db5 | ||
|
|
78131c1028 | ||
|
|
5655efa448 | ||
|
|
c008c01bc1 | ||
|
|
7e1af5b80d | ||
|
|
ee4bcf9116 | ||
|
|
1aff364595 | ||
|
|
929ec6a453 | ||
|
|
341497e98d | ||
|
|
c275205bed | ||
|
|
ebb110e6e3 | ||
|
|
ab973076eb | ||
|
|
c78bdda717 | ||
|
|
b7a138118a | ||
|
|
f03e11c877 | ||
|
|
6c5350573d | ||
|
|
521765e312 | ||
|
|
5f362f333f | ||
|
|
6aae68ba04 | ||
|
|
dbaaa54c83 | ||
|
|
e5913cc3ea | ||
|
|
0226a92c07 | ||
|
|
d7db401cb2 | ||
|
|
7e54aa0b0d | ||
|
|
4774b0f5e5 | ||
|
|
6aa38de7c7 | ||
|
|
a973976123 | ||
|
|
03aac0e4ce | ||
|
|
fac368521b | ||
|
|
51b9253734 | ||
|
|
08e6b8164e | ||
|
|
9a8354f783 | ||
|
|
6c0c742676 | ||
|
|
e0ed2a250b | ||
|
|
2f988fcd47 | ||
|
|
ee71117111 | ||
|
|
3e9d5dde54 | ||
|
|
2eed30be8f | ||
|
|
8e49a06dbe | ||
|
|
fb326bbf4e | ||
|
|
52c6687608 | ||
|
|
cfefef6b75 | ||
|
|
e6ba40ac17 | ||
|
|
efbf93f6e2 | ||
|
|
6eb2029c51 | ||
|
|
55bab9454a | ||
|
|
0ca6ee3934 | ||
|
|
0649c66dde | ||
|
|
1b0374a156 | ||
|
|
f9eae4ef82 | ||
|
|
68f360bbf6 | ||
|
|
30f0b436e9 | ||
|
|
80bab6d338 | ||
|
|
2438af4e00 | ||
|
|
fd7797322f | ||
|
|
cd69d0423a | ||
|
|
2fe4956f4d | ||
|
|
1e4a49fafe | ||
|
|
faa29a2946 | ||
|
|
5bf58bbaf8 | ||
|
|
4a42d20b0c | ||
|
|
e676b3dab4 | ||
|
|
d80021b6a3 | ||
|
|
8f3fbc22d4 | ||
|
|
9ddea4805a | ||
|
|
4d029f06e8 | ||
|
|
3bad3324ae | ||
|
|
bfb074eca3 | ||
|
|
b87b3083a3 | ||
|
|
3e8647d626 | ||
|
|
9e5c7cdea5 | ||
|
|
fa21c22fab | ||
|
|
7c54537cb3 | ||
|
|
14653f387b | ||
|
|
40bb07a99b | ||
|
|
7f00f96b0c | ||
|
|
3ca120ca94 | ||
|
|
46351543f1 | ||
|
|
05b8dd563e | ||
|
|
5d0b739cc0 | ||
|
|
8bf5abdf3d | ||
|
|
a0f2481406 | ||
|
|
4fefa629fc | ||
|
|
41e2fffb87 | ||
|
|
7c101716d7 | ||
|
|
53cea00c67 | ||
|
|
512af400d7 | ||
|
|
45b501816a | ||
|
|
9b756544fd | ||
|
|
8af7011eb4 | ||
|
|
f6d74df80b | ||
|
|
6c1929096c | ||
|
|
d902fb10d1 | ||
|
|
270f5ab258 | ||
|
|
c3e52dbf47 | ||
|
|
73df442f40 | ||
|
|
d11ce135a6 | ||
|
|
3bd4038089 | ||
|
|
88b9aa14e8 | ||
|
|
d4bef47804 | ||
|
|
fe4f4463c8 | ||
|
|
cddf127674 | ||
|
|
a46a3e2a93 | ||
|
|
bfc7a2d88b | ||
|
|
ccb20d7994 | ||
|
|
a261628b83 | ||
|
|
e1bbf4bc75 | ||
|
|
bb73bc76a0 | ||
|
|
bb20c5848f | ||
|
|
9da9427488 | ||
|
|
c3ed15f30d | ||
|
|
3238f42039 | ||
|
|
0656ad8cb2 | ||
|
|
5be2cd949b | ||
|
|
4123fde91b | ||
|
|
e55a9326d6 | ||
|
|
6bdadd9f0d | ||
|
|
79cd7f7df5 | ||
|
|
c5de054324 | ||
|
|
7ed4bc5a5c | ||
|
|
103e154076 | ||
|
|
abe4dc7ac1 | ||
|
|
2ab491f12b | ||
|
|
6417d90e1c | ||
|
|
21d409ce36 | ||
|
|
d458bca193 | ||
|
|
4f2f8dea4c | ||
|
|
f744d761c0 | ||
|
|
7ad5e2181d | ||
|
|
a10425e318 | ||
|
|
9c0ab739ea | ||
|
|
0503f5cfc9 | ||
|
|
a441156ff9 | ||
|
|
006b11d508 | ||
|
|
8f0a990e71 | ||
|
|
f0ca6372cd | ||
|
|
0f8aec00f2 | ||
|
|
de86586208 | ||
|
|
ac2d10bc5d | ||
|
|
e825f930fa | ||
|
|
394dfde87b | ||
|
|
e4db23b0a9 | ||
|
|
94ddbbcd2e | ||
|
|
ac27314547 | ||
|
|
7a4b12acf4 | ||
|
|
4e6dea6b36 | ||
|
|
899f89c800 | ||
|
|
b121678281 | ||
|
|
7f87c007c1 | ||
|
|
11726df060 | ||
|
|
2f84cfd354 | ||
|
|
7b60a5f867 | ||
|
|
7d4be37111 | ||
|
|
2f19badc6c | ||
|
|
3b034265c0 | ||
|
|
5fffc230c9 | ||
|
|
5c92b7eb1e | ||
|
|
45da51bea6 | ||
|
|
8d166a3a52 | ||
|
|
401f7d7383 | ||
|
|
c238ebe36e | ||
|
|
a502da6ea4 | ||
|
|
f9255100a1 | ||
|
|
daa78b4171 | ||
|
|
f2c8f21336 | ||
|
|
554476ede9 | ||
|
|
8c358d4ae4 | ||
|
|
937c128c08 | ||
|
|
03cf4cec0e | ||
|
|
554f8aff09 | ||
|
|
d71cfd12c1 | ||
|
|
a5d767515d | ||
|
|
c38fdec5b7 | ||
|
|
ada7a02c21 | ||
|
|
3f3cbe98a4 |
@@ -12,11 +12,11 @@ status-im.chat.models.message-content/actions
|
|||||||
status-im.chat.models.message-content/blank-string
|
status-im.chat.models.message-content/blank-string
|
||||||
status-im.chat.models.message-content/sorted-ranges
|
status-im.chat.models.message-content/sorted-ranges
|
||||||
status-im.ethereum.mnemonic/words->passphrase
|
status-im.ethereum.mnemonic/words->passphrase
|
||||||
status-im.native-module.core/listener
|
native-module.core/listener
|
||||||
status-im.native-module.core/multiaccount-reset
|
native-module.core/multiaccount-reset
|
||||||
status-im.native-module.core/extract-group-membership-signatures
|
native-module.core/extract-group-membership-signatures
|
||||||
status-im.native-module.core/sign-group-membership
|
native-module.core/sign-group-membership
|
||||||
status-im.native-module.core/update-mailservers
|
native-module.core/update-mailservers
|
||||||
status-im.ethereum.abi-spec/bytes-to-hex
|
status-im.ethereum.abi-spec/bytes-to-hex
|
||||||
status-im.android.core/init
|
status-im.android.core/init
|
||||||
status-im.chat.models.message/transport-keys
|
status-im.chat.models.message/transport-keys
|
||||||
|
|||||||
@@ -5,7 +5,6 @@ project-board:
|
|||||||
min-reviewers: 1
|
min-reviewers: 1
|
||||||
tested-pr-label-name: 'Tested - Issues'
|
tested-pr-label-name: 'Tested - Issues'
|
||||||
contributor-column-name: 'CONTRIBUTOR'
|
contributor-column-name: 'CONTRIBUTOR'
|
||||||
to-rebase-column-name: 'TO REBASE'
|
|
||||||
review-column-name: 'REVIEW'
|
review-column-name: 'REVIEW'
|
||||||
test-column-name: 'E2E Tests'
|
test-column-name: 'E2E Tests'
|
||||||
|
|
||||||
|
|||||||
@@ -7,6 +7,7 @@
|
|||||||
|
|
||||||
# Xcode
|
# Xcode
|
||||||
#
|
#
|
||||||
|
/ios/.xcode.env.local
|
||||||
/component-spec
|
/component-spec
|
||||||
result/
|
result/
|
||||||
build/
|
build/
|
||||||
@@ -183,3 +184,9 @@ test/appium/tests/users.py
|
|||||||
|
|
||||||
## component-tests
|
## component-tests
|
||||||
*.log
|
*.log
|
||||||
|
|
||||||
|
## local xcode env introduced in react-native 0.69
|
||||||
|
.xcode.env.local
|
||||||
|
|
||||||
|
## git hooks
|
||||||
|
lefthook.yml
|
||||||
|
|||||||
@@ -218,23 +218,18 @@ release-android: keystore build-android ##@build Build signed Android APK
|
|||||||
|
|
||||||
release-ios: export TARGET := ios
|
release-ios: export TARGET := ios
|
||||||
release-ios: export BUILD_ENV ?= prod
|
release-ios: export BUILD_ENV ?= prod
|
||||||
release-ios: watchman-clean ##@build Build release for iOS release
|
release-ios: watchman-clean ios-clean jsbundle ##@build Build release for iOS release
|
||||||
@git clean -dxf -f target/ios && \
|
xcodebuild \
|
||||||
$(MAKE) jsbundle-ios && \
|
-scheme StatusIm \
|
||||||
xcodebuild -workspace ios/StatusIm.xcworkspace -scheme StatusIm -configuration Release -destination 'generic/platform=iOS' -UseModernBuildSystem=N clean archive
|
-configuration Release \
|
||||||
|
-workspace ios/StatusIm.xcworkspace \
|
||||||
|
-destination 'generic/platform=iOS' \
|
||||||
|
-UseModernBuildSystem=N clean archive
|
||||||
|
|
||||||
jsbundle-android: SHELL := /bin/sh
|
jsbundle: SHELL := /bin/sh
|
||||||
jsbundle-android: export TARGET := android
|
jsbundle: export BUILD_ENV ?= prod
|
||||||
jsbundle-android: export BUILD_ENV ?= prod
|
jsbundle: ##@build Build JavaScript and Clojurescript bundle for iOS and Android
|
||||||
jsbundle-android: ##@jsbundle Compile JavaScript and Clojurescript into app directory
|
nix/scripts/build.sh targets.mobile.jsbundle
|
||||||
# Call nix-build to build the 'targets.mobile.android.jsbundle' attribute and copy the.js files to the project root
|
|
||||||
nix/scripts/build.sh targets.mobile.android.jsbundle && \
|
|
||||||
mv result/*.js ./
|
|
||||||
|
|
||||||
jsbundle-ios: export TARGET := ios
|
|
||||||
jsbundle-ios: export BUILD_ENV ?= prod
|
|
||||||
jsbundle-ios: ##@jsbundle Compile JavaScript and Clojure into index.ios.js
|
|
||||||
yarn shadow-cljs release mobile
|
|
||||||
|
|
||||||
#--------------
|
#--------------
|
||||||
# status-go lib
|
# status-go lib
|
||||||
@@ -273,7 +268,7 @@ run-android: export TARGET := android
|
|||||||
run-android: ##@run Build Android APK and start it on the device
|
run-android: ##@run Build Android APK and start it on the device
|
||||||
npx react-native run-android --appIdSuffix debug
|
npx react-native run-android --appIdSuffix debug
|
||||||
|
|
||||||
SIMULATOR=iPhone 13
|
SIMULATOR=iPhone 11 Pro
|
||||||
run-ios: export TARGET := ios
|
run-ios: export TARGET := ios
|
||||||
run-ios: ##@run Build iOS app and start it in a simulator/device
|
run-ios: ##@run Build iOS app and start it in a simulator/device
|
||||||
ifneq ("$(SIMULATOR)", "")
|
ifneq ("$(SIMULATOR)", "")
|
||||||
@@ -282,6 +277,17 @@ else
|
|||||||
npx react-native run-ios
|
npx react-native run-ios
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
show-ios-devices: export TARGET := ios
|
||||||
|
show-ios-devices: ##@other shows connected ios device and its name
|
||||||
|
xcrun xctrace list devices
|
||||||
|
|
||||||
|
run-ios-device: export TARGET := ios
|
||||||
|
run-ios-device: ##@run iOS app and start it on a connected device by its name
|
||||||
|
ifndef DEVICE_NAME
|
||||||
|
$(error Usage: make run-ios-device DEVICE_NAME=your-device-name)
|
||||||
|
endif
|
||||||
|
react-native run-ios --device "$(DEVICE_NAME)"
|
||||||
|
|
||||||
#--------------
|
#--------------
|
||||||
# Tests
|
# Tests
|
||||||
#--------------
|
#--------------
|
||||||
@@ -354,6 +360,7 @@ component-test: ##@test Run component tests once in NodeJS
|
|||||||
yarn shadow-cljs compile component-test && \
|
yarn shadow-cljs compile component-test && \
|
||||||
jest --config=test/jest/jest.config.js
|
jest --config=test/jest/jest.config.js
|
||||||
|
|
||||||
|
#--------------
|
||||||
# Other
|
# Other
|
||||||
#--------------
|
#--------------
|
||||||
|
|
||||||
@@ -362,6 +369,10 @@ geth-connect: ##@other Connect to Geth on the device
|
|||||||
adb forward tcp:8545 tcp:8545 && \
|
adb forward tcp:8545 tcp:8545 && \
|
||||||
build/bin/geth attach http://localhost:8545
|
build/bin/geth attach http://localhost:8545
|
||||||
|
|
||||||
|
ios-clean: SHELL := /bin/sh
|
||||||
|
ios-clean: ##@prepare Clean iOS build artifacts
|
||||||
|
git clean -dxf -f target/ios
|
||||||
|
|
||||||
android-clean: export TARGET := gradle
|
android-clean: export TARGET := gradle
|
||||||
android-clean: ##@prepare Clean Gradle state
|
android-clean: ##@prepare Clean Gradle state
|
||||||
git clean -dxf -f ./android/app/build; \
|
git clean -dxf -f ./android/app/build; \
|
||||||
|
|||||||
@@ -94,6 +94,10 @@ project.ext.react = [
|
|||||||
enableHermes: !disableHermes,
|
enableHermes: !disableHermes,
|
||||||
/* Disable 'The first definition was here.' warnings */
|
/* Disable 'The first definition was here.' warnings */
|
||||||
hermesFlagsRelease: ["-w"],
|
hermesFlagsRelease: ["-w"],
|
||||||
|
/* FIXME: Workaround for crash caused by missing libhermes-executor-release.so.
|
||||||
|
* https://github.com/facebook/react-native/issues/32928 */
|
||||||
|
deleteDebugFilesForVariant: { false },
|
||||||
|
enableVmCleanup: false,
|
||||||
bundleInPr: true,
|
bundleInPr: true,
|
||||||
inputExcludes: ["android/**", "ios/**", "react-native/**", "src/**", "test/**"]
|
inputExcludes: ["android/**", "ios/**", "react-native/**", "src/**", "test/**"]
|
||||||
]
|
]
|
||||||
@@ -132,6 +136,14 @@ def jscFlavor = 'org.webkit:android-jsc:+'
|
|||||||
*/
|
*/
|
||||||
def enableHermes = project.ext.react.get("enableHermes", false);
|
def enableHermes = project.ext.react.get("enableHermes", false);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Architectures to build native code for.
|
||||||
|
*/
|
||||||
|
def reactNativeArchitectures() {
|
||||||
|
def value = project.getProperties().get("reactNativeArchitectures")
|
||||||
|
return value ? value.split(",") : ["armeabi-v7a", "x86", "x86_64", "arm64-v8a"]
|
||||||
|
}
|
||||||
|
|
||||||
def getCommitHash = { ->
|
def getCommitHash = { ->
|
||||||
if (project.hasProperty("commitHash")) {
|
if (project.hasProperty("commitHash")) {
|
||||||
return project.commitHash
|
return project.commitHash
|
||||||
@@ -161,7 +173,7 @@ def getVersionName = { ->
|
|||||||
}
|
}
|
||||||
/* Necessary because Android Studio uses wrong PWD.
|
/* Necessary because Android Studio uses wrong PWD.
|
||||||
* Is actually absolute directory path of this file. */
|
* Is actually absolute directory path of this file. */
|
||||||
def configDir = project.projectDir.toString()
|
def configDir = project.projectDir.toString()
|
||||||
version = new File(configDir + '/../../VERSION').text
|
version = new File(configDir + '/../../VERSION').text
|
||||||
return version.replaceAll("\\s","")
|
return version.replaceAll("\\s","")
|
||||||
}
|
}
|
||||||
@@ -183,11 +195,13 @@ def getEnvOrConfig = { varName ->
|
|||||||
}
|
}
|
||||||
|
|
||||||
android {
|
android {
|
||||||
|
ndkVersion rootProject.ext.ndkVersion
|
||||||
|
|
||||||
compileSdkVersion rootProject.ext.compileSdkVersion
|
compileSdkVersion rootProject.ext.compileSdkVersion
|
||||||
|
|
||||||
compileOptions {
|
compileOptions {
|
||||||
sourceCompatibility JavaVersion.VERSION_1_8
|
sourceCompatibility JavaVersion.VERSION_11
|
||||||
targetCompatibility JavaVersion.VERSION_1_8
|
targetCompatibility JavaVersion.VERSION_11
|
||||||
}
|
}
|
||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
@@ -205,7 +219,70 @@ android {
|
|||||||
abiFilters getEnvOrConfig('ANDROID_ABI_INCLUDE').split(";")
|
abiFilters getEnvOrConfig('ANDROID_ABI_INCLUDE').split(";")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
buildConfigField "boolean", "IS_NEW_ARCHITECTURE_ENABLED", isNewArchitectureEnabled().toString()
|
||||||
|
|
||||||
|
if (isNewArchitectureEnabled()) {
|
||||||
|
// We configure the NDK build only if you decide to opt-in for the New Architecture.
|
||||||
|
externalNativeBuild {
|
||||||
|
ndkBuild {
|
||||||
|
arguments "APP_PLATFORM=android-21",
|
||||||
|
"APP_STL=c++_shared",
|
||||||
|
"NDK_TOOLCHAIN_VERSION=clang",
|
||||||
|
"GENERATED_SRC_DIR=$buildDir/generated/source",
|
||||||
|
"PROJECT_BUILD_DIR=$buildDir",
|
||||||
|
"REACT_ANDROID_DIR=$rootDir/../node_modules/react-native/ReactAndroid",
|
||||||
|
"REACT_ANDROID_BUILD_DIR=$rootDir/../node_modules/react-native/ReactAndroid/build",
|
||||||
|
"NODE_MODULES_DIR=$rootDir/../node_modules"
|
||||||
|
cFlags "-Wall", "-Werror", "-fexceptions", "-frtti", "-DWITH_INSPECTOR=1"
|
||||||
|
cppFlags "-std=c++17"
|
||||||
|
// Make sure this target name is the same you specify inside the
|
||||||
|
// src/main/jni/Android.mk file for the `LOCAL_MODULE` variable.
|
||||||
|
targets "rndiffapp_appmodules"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (isNewArchitectureEnabled()) {
|
||||||
|
// We configure the NDK build only if you decide to opt-in for the New Architecture.
|
||||||
|
externalNativeBuild {
|
||||||
|
ndkBuild {
|
||||||
|
path "$projectDir/src/main/jni/Android.mk"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
def reactAndroidProjectDir = project(':ReactAndroid').projectDir
|
||||||
|
def packageReactNdkDebugLibs = tasks.register("packageReactNdkDebugLibs", Copy) {
|
||||||
|
dependsOn(":ReactAndroid:packageReactNdkDebugLibsForBuck")
|
||||||
|
from("$reactAndroidProjectDir/src/main/jni/prebuilt/lib")
|
||||||
|
into("$buildDir/react-ndk/exported")
|
||||||
|
}
|
||||||
|
def packageReactNdkReleaseLibs = tasks.register("packageReactNdkReleaseLibs", Copy) {
|
||||||
|
dependsOn(":ReactAndroid:packageReactNdkReleaseLibsForBuck")
|
||||||
|
from("$reactAndroidProjectDir/src/main/jni/prebuilt/lib")
|
||||||
|
into("$buildDir/react-ndk/exported")
|
||||||
|
}
|
||||||
|
afterEvaluate {
|
||||||
|
// If you wish to add a custom TurboModule or component locally,
|
||||||
|
// you should uncomment this line.
|
||||||
|
// preBuild.dependsOn("generateCodegenArtifactsFromSchema")
|
||||||
|
preDebugBuild.dependsOn(packageReactNdkDebugLibs)
|
||||||
|
preReleaseBuild.dependsOn(packageReactNdkReleaseLibs)
|
||||||
|
|
||||||
|
// Due to a bug inside AGP, we have to explicitly set a dependency
|
||||||
|
// between configureNdkBuild* tasks and the preBuild tasks.
|
||||||
|
// This can be removed once this is solved: https://issuetracker.google.com/issues/207403732
|
||||||
|
configureNdkBuildRelease.dependsOn(preReleaseBuild)
|
||||||
|
configureNdkBuildDebug.dependsOn(preDebugBuild)
|
||||||
|
reactNativeArchitectures().each { architecture ->
|
||||||
|
tasks.findByName("configureNdkBuildDebug[${architecture}]")?.configure {
|
||||||
|
dependsOn("preDebugBuild")
|
||||||
|
}
|
||||||
|
tasks.findByName("configureNdkBuildRelease[${architecture}]")?.configure {
|
||||||
|
dependsOn("preReleaseBuild")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* Arbitrary project metadata
|
* Arbitrary project metadata
|
||||||
* https://docs.gradle.org/current/dsl/org.gradle.api.plugins.ExtraPropertiesExtension.html
|
* https://docs.gradle.org/current/dsl/org.gradle.api.plugins.ExtraPropertiesExtension.html
|
||||||
@@ -308,7 +385,7 @@ android {
|
|||||||
dependencies {
|
dependencies {
|
||||||
implementation fileTree(dir: "libs", include: ["*.jar"])
|
implementation fileTree(dir: "libs", include: ["*.jar"])
|
||||||
implementation "com.facebook.react:react-native:+" // From node_modules
|
implementation "com.facebook.react:react-native:+" // From node_modules
|
||||||
|
implementation 'com.facebook.soloader:soloader:0.10.3+'
|
||||||
implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.0.0"
|
implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.0.0"
|
||||||
implementation "androidx.core:core-splashscreen:1.0.0"
|
implementation "androidx.core:core-splashscreen:1.0.0"
|
||||||
|
|
||||||
@@ -324,11 +401,10 @@ dependencies {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (enableHermes) {
|
if (enableHermes) {
|
||||||
def hermesPath = "../../node_modules/hermes-engine/android/";
|
//noinspection GradleDynamicVersion
|
||||||
debugImplementation files(hermesPath + "hermes-debug.aar")
|
implementation("com.facebook.react:hermes-engine:+") { // From node_modules
|
||||||
releaseImplementation files(hermesPath + "hermes-release.aar")
|
exclude group: 'com.facebook.fbjni' }
|
||||||
prImplementation files(hermesPath + "hermes-release.aar")
|
} else {
|
||||||
} else {
|
|
||||||
implementation jscFlavor
|
implementation jscFlavor
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -348,7 +424,23 @@ dependencies {
|
|||||||
implementation 'com.github.status-im:function:0.0.1'
|
implementation 'com.github.status-im:function:0.0.1'
|
||||||
implementation 'com.facebook.fresco:fresco:2.2.0'
|
implementation 'com.facebook.fresco:fresco:2.2.0'
|
||||||
implementation 'com.facebook.fresco:animated-gif:2.2.0'
|
implementation 'com.facebook.fresco:animated-gif:2.2.0'
|
||||||
implementation "com.squareup.okhttp3:okhttp-tls:3.12.12"
|
implementation "com.squareup.okhttp3:okhttp-tls:4.9.2"
|
||||||
|
}
|
||||||
|
|
||||||
|
if (isNewArchitectureEnabled()) {
|
||||||
|
// If new architecture is enabled, we let you build RN from source
|
||||||
|
// Otherwise we fallback to a prebuilt .aar bundled in the NPM package.
|
||||||
|
// This will be applied to all the imported transtitive dependency.
|
||||||
|
configurations.all {
|
||||||
|
resolutionStrategy.dependencySubstitution {
|
||||||
|
substitute(module("com.facebook.react:react-native"))
|
||||||
|
.using(project(":ReactAndroid"))
|
||||||
|
.because("On New Architecture we're building React Native from source")
|
||||||
|
substitute(module("com.facebook.react:hermes-engine"))
|
||||||
|
.using(project(":ReactAndroid:hermes-engine"))
|
||||||
|
.because("On New Architecture we're building Hermes from source")
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
def getLocalNDKDir = { ->
|
def getLocalNDKDir = { ->
|
||||||
@@ -384,3 +476,11 @@ task hemroidBuild(type: Exec) {
|
|||||||
preBuild.dependsOn hemroidBuild
|
preBuild.dependsOn hemroidBuild
|
||||||
|
|
||||||
apply from: file("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesAppBuildGradle(project)
|
apply from: file("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesAppBuildGradle(project)
|
||||||
|
|
||||||
|
def isNewArchitectureEnabled() {
|
||||||
|
// To opt-in for the New Architecture, you can either:
|
||||||
|
// - Set `newArchEnabled` to true inside the `gradle.properties` file
|
||||||
|
// - Invoke gradle with `-newArchEnabled=true`
|
||||||
|
// - Set an environment variable `ORG_GRADLE_PROJECT_newArchEnabled=true`
|
||||||
|
return project.hasProperty("newArchEnabled") && project.newArchEnabled == "true"
|
||||||
|
}
|
||||||
|
|||||||
@@ -7,5 +7,7 @@
|
|||||||
<!-- Remove licensing permission since we don't license our app and it blocks F-Droid submissions. -->
|
<!-- Remove licensing permission since we don't license our app and it blocks F-Droid submissions. -->
|
||||||
<uses-permission tools:node="remove" android:name="com.android.vending.CHECK_LICENSE"/>
|
<uses-permission tools:node="remove" android:name="com.android.vending.CHECK_LICENSE"/>
|
||||||
|
|
||||||
<application tools:targetApi="28" tools:ignore="GoogleAppIndexingWarning" android:usesCleartextTraffic="true" />
|
<application tools:targetApi="28" tools:ignore="GoogleAppIndexingWarning" android:usesCleartextTraffic="true" >
|
||||||
|
<activity android:name="com.facebook.react.devsupport.DevSettingsActivity" android:exported="false" />
|
||||||
|
</application>
|
||||||
</manifest>
|
</manifest>
|
||||||
|
|||||||
@@ -32,7 +32,10 @@
|
|||||||
android:theme="@style/Theme.AppSplash"
|
android:theme="@style/Theme.AppSplash"
|
||||||
android:name=".MainApplication"
|
android:name=".MainApplication"
|
||||||
android:largeHeap="true"
|
android:largeHeap="true"
|
||||||
android:usesCleartextTraffic="true">
|
android:usesCleartextTraffic="true"
|
||||||
|
android:extractNativeLibs="true">
|
||||||
|
<!-- After upgrading Android Gradle Plugin to 4.2.0 and above we must get rid of `extractNativeLibs="true"`
|
||||||
|
and use`useLegacyPackaging` flag in our app's `build.gradle`-->
|
||||||
<meta-data android:name="commitHash" android:value="${commitHash}"/>
|
<meta-data android:name="commitHash" android:value="${commitHash}"/>
|
||||||
<activity
|
<activity
|
||||||
android:name=".MainActivity"
|
android:name=".MainActivity"
|
||||||
@@ -41,7 +44,7 @@
|
|||||||
android:theme="@style/Theme.AppSplash"
|
android:theme="@style/Theme.AppSplash"
|
||||||
android:screenOrientation="portrait"
|
android:screenOrientation="portrait"
|
||||||
android:windowSoftInputMode="adjustResize"
|
android:windowSoftInputMode="adjustResize"
|
||||||
android:configChanges="keyboard|keyboardHidden|orientation|screenSize|uiMode"
|
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|screenSize|smallestScreenSize|uiMode"
|
||||||
android:resizeableActivity="false"
|
android:resizeableActivity="false"
|
||||||
android:launchMode="singleTask">
|
android:launchMode="singleTask">
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
|
|||||||
@@ -29,10 +29,10 @@ import com.facebook.react.bridge.Arguments;
|
|||||||
import com.facebook.react.bridge.WritableMap;
|
import com.facebook.react.bridge.WritableMap;
|
||||||
import com.swmansion.gesturehandler.react.RNGestureHandlerEnabledRootView;
|
import com.swmansion.gesturehandler.react.RNGestureHandlerEnabledRootView;
|
||||||
|
|
||||||
import com.facebook.react.ReactFragmentActivity;
|
|
||||||
import com.reactnativenavigation.NavigationActivity;
|
import com.reactnativenavigation.NavigationActivity;
|
||||||
import com.facebook.react.modules.core.PermissionListener;
|
import com.facebook.react.modules.core.PermissionListener;
|
||||||
import androidx.core.splashscreen.SplashScreen;
|
import androidx.core.splashscreen.SplashScreen;
|
||||||
|
import com.facebook.react.ReactActivity;
|
||||||
|
|
||||||
import java.util.Properties;
|
import java.util.Properties;
|
||||||
import im.status.ethereum.module.StatusThreadPoolExecutor;
|
import im.status.ethereum.module.StatusThreadPoolExecutor;
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
package im.status.ethereum;
|
package im.status.ethereum;
|
||||||
|
|
||||||
import androidx.multidex.MultiDexApplication;
|
import androidx.multidex.MultiDexApplication;
|
||||||
import android.util.Log;
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.webkit.WebView;
|
import android.webkit.WebView;
|
||||||
|
import im.status.ethereum.newarchitecture.MainApplicationReactNativeHost;
|
||||||
import java.lang.reflect.InvocationTargetException;
|
import java.lang.reflect.InvocationTargetException;
|
||||||
import com.facebook.react.PackageList;
|
import com.facebook.react.PackageList;
|
||||||
|
|
||||||
@@ -14,6 +14,7 @@ import com.facebook.react.ReactNativeHost;
|
|||||||
import com.reactnativenavigation.NavigationApplication;
|
import com.reactnativenavigation.NavigationApplication;
|
||||||
import com.reactnativenavigation.react.NavigationReactNativeHost;
|
import com.reactnativenavigation.react.NavigationReactNativeHost;
|
||||||
import com.facebook.react.ReactPackage;
|
import com.facebook.react.ReactPackage;
|
||||||
|
import com.facebook.react.config.ReactFeatureFlags;
|
||||||
import com.facebook.react.ReactInstanceManager;
|
import com.facebook.react.ReactInstanceManager;
|
||||||
import com.facebook.react.modules.network.OkHttpClientProvider;
|
import com.facebook.react.modules.network.OkHttpClientProvider;
|
||||||
import com.reactnativecommunity.blurview.BlurViewPackage;
|
import com.reactnativecommunity.blurview.BlurViewPackage;
|
||||||
@@ -38,6 +39,7 @@ public class MainApplication extends NavigationApplication {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected List<ReactPackage> getPackages() {
|
protected List<ReactPackage> getPackages() {
|
||||||
|
|
||||||
StatusPackage statusPackage = new StatusPackage(RootUtil.isDeviceRooted());
|
StatusPackage statusPackage = new StatusPackage(RootUtil.isDeviceRooted());
|
||||||
|
|
||||||
List<ReactPackage> packages = new PackageList(this).getPackages();
|
List<ReactPackage> packages = new PackageList(this).getPackages();
|
||||||
@@ -60,19 +62,27 @@ public class MainApplication extends NavigationApplication {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
private final ReactNativeHost mNewArchitectureNativeHost = new MainApplicationReactNativeHost(this);
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ReactNativeHost getReactNativeHost() {
|
public ReactNativeHost getReactNativeHost() {
|
||||||
return mReactNativeHost;
|
if (BuildConfig.IS_NEW_ARCHITECTURE_ENABLED) {
|
||||||
|
return mNewArchitectureNativeHost;
|
||||||
|
} else {
|
||||||
|
return mReactNativeHost;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onCreate() {
|
public void onCreate() {
|
||||||
super.onCreate();
|
super.onCreate();
|
||||||
|
// If you opted-in for the New Architecture, we enable the TurboModule system
|
||||||
|
ReactFeatureFlags.useTurboModules = BuildConfig.IS_NEW_ARCHITECTURE_ENABLED;
|
||||||
|
|
||||||
OkHttpClientProvider.setOkHttpClientFactory(new StatusOkHttpClientFactory());
|
OkHttpClientProvider.setOkHttpClientFactory(new StatusOkHttpClientFactory());
|
||||||
|
|
||||||
WebView.setWebContentsDebuggingEnabled(BuildConfig.DEBUG_WEBVIEW == "1");
|
WebView.setWebContentsDebuggingEnabled(BuildConfig.DEBUG_WEBVIEW == "1");
|
||||||
initializeFlipper(this, getReactNativeHost().getReactInstanceManager());
|
//initializeFlipper(this, getReactNativeHost().getReactInstanceManager());
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* Loads Flipper in React Native templates. Call this in the onCreate method with something like
|
* Loads Flipper in React Native templates. Call this in the onCreate method with something like
|
||||||
|
|||||||
@@ -20,25 +20,58 @@ import java.security.cert.X509Certificate;
|
|||||||
import im.status.ethereum.module.StatusPackage;
|
import im.status.ethereum.module.StatusPackage;
|
||||||
|
|
||||||
class StatusOkHttpClientFactory implements OkHttpClientFactory {
|
class StatusOkHttpClientFactory implements OkHttpClientFactory {
|
||||||
public OkHttpClient createNewNetworkModuleClient() {
|
|
||||||
String certPem = StatusPackage.getImageTLSCert();
|
|
||||||
X509Certificate cert;
|
|
||||||
|
|
||||||
|
private static final String TAG = "StatusOkHttpClientFactory";
|
||||||
|
|
||||||
|
public OkHttpClient createNewNetworkModuleClient() {
|
||||||
|
X509Certificate cert = null;
|
||||||
|
HandshakeCertificates clientCertificates;
|
||||||
|
String certPem = "";
|
||||||
|
|
||||||
|
// Get TLS PEM certificate from status-go
|
||||||
try {
|
try {
|
||||||
|
// induce half second sleep because sometimes a cert is not immediately available
|
||||||
|
// TODO : remove sleep if App no longer crashes on Android 10 devices with
|
||||||
|
// java.lang.RuntimeException: Could not invoke WebSocketModule.connect
|
||||||
|
Thread.sleep(500);
|
||||||
|
certPem = StatusPackage.getImageTLSCert();
|
||||||
|
} catch(Exception e) {
|
||||||
|
Log.e(TAG, "Could not getImageTLSCert",e);
|
||||||
|
}
|
||||||
|
// Convert PEM certificate string to X509Certificate object
|
||||||
|
try {
|
||||||
|
// induce half second sleep because sometimes a cert is not immediately available
|
||||||
|
// TODO : remove sleep if App no longer crashes on Android 10 devices
|
||||||
|
// java.lang.RuntimeException: Could not invoke WebSocketModule.connect
|
||||||
|
Thread.sleep(500);
|
||||||
CertificateFactory cf = CertificateFactory.getInstance("X.509");
|
CertificateFactory cf = CertificateFactory.getInstance("X.509");
|
||||||
cert = (X509Certificate) cf.generateCertificate(new ByteArrayInputStream(certPem.getBytes()));
|
cert = (X509Certificate) cf.generateCertificate(new ByteArrayInputStream(certPem.getBytes()));
|
||||||
} catch(Exception e) {
|
} catch(Exception e) {
|
||||||
Log.e("StatusOkHttpClientFactory", "Could not parse certificate");
|
Log.e(TAG, "Could not parse certificate",e);
|
||||||
cert = null;
|
}
|
||||||
|
// Create HandshakeCertificates object with our certificate
|
||||||
|
try {
|
||||||
|
// induce half second sleep because sometimes a cert is not immediately available
|
||||||
|
// TODO : remove sleep if App no longer crashes on Android 10 devices
|
||||||
|
// java.lang.RuntimeException: Could not invoke WebSocketModule.connect
|
||||||
|
Thread.sleep(500);
|
||||||
|
clientCertificates = new HandshakeCertificates.Builder()
|
||||||
|
.addPlatformTrustedCertificates()
|
||||||
|
.addTrustedCertificate(cert)
|
||||||
|
.build();
|
||||||
|
} catch(Exception e) {
|
||||||
|
Log.e(TAG, "Could not build HandshakeCertificates", e);
|
||||||
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
HandshakeCertificates clientCertificates = new HandshakeCertificates.Builder()
|
// Create OkHttpClient with custom SSL socket factory and trust manager
|
||||||
.addPlatformTrustedCertificates()
|
try {
|
||||||
.addTrustedCertificate(cert)
|
return OkHttpClientProvider.createClientBuilder()
|
||||||
.build();
|
.sslSocketFactory(clientCertificates.sslSocketFactory(), clientCertificates.trustManager())
|
||||||
|
.build();
|
||||||
return OkHttpClientProvider.createClientBuilder()
|
} catch(Exception e) {
|
||||||
.sslSocketFactory(clientCertificates.sslSocketFactory(), clientCertificates.trustManager())
|
Log.e(TAG, "Could not create OkHttpClient", e);
|
||||||
.build();
|
return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,103 @@
|
|||||||
|
package im.status.ethereum.newarchitecture;
|
||||||
|
import android.app.Application;
|
||||||
|
import androidx.annotation.NonNull;
|
||||||
|
import com.facebook.react.PackageList;
|
||||||
|
import com.facebook.react.ReactInstanceManager;
|
||||||
|
import com.facebook.react.ReactNativeHost;
|
||||||
|
import com.facebook.react.ReactPackage;
|
||||||
|
import com.facebook.react.ReactPackageTurboModuleManagerDelegate;
|
||||||
|
import com.facebook.react.bridge.JSIModulePackage;
|
||||||
|
import com.facebook.react.bridge.JSIModuleProvider;
|
||||||
|
import com.facebook.react.bridge.JSIModuleSpec;
|
||||||
|
import com.facebook.react.bridge.JSIModuleType;
|
||||||
|
import com.facebook.react.bridge.JavaScriptContextHolder;
|
||||||
|
import com.facebook.react.bridge.ReactApplicationContext;
|
||||||
|
import com.facebook.react.bridge.UIManager;
|
||||||
|
import com.facebook.react.fabric.ComponentFactory;
|
||||||
|
import com.facebook.react.fabric.CoreComponentsRegistry;
|
||||||
|
import com.facebook.react.fabric.FabricJSIModuleProvider;
|
||||||
|
import com.facebook.react.fabric.ReactNativeConfig;
|
||||||
|
import com.facebook.react.uimanager.ViewManagerRegistry;
|
||||||
|
import im.status.ethereum.BuildConfig;
|
||||||
|
import im.status.ethereum.newarchitecture.components.MainComponentsRegistry;
|
||||||
|
import im.status.ethereum.newarchitecture.modules.MainApplicationTurboModuleManagerDelegate;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
/**
|
||||||
|
* A {@link ReactNativeHost} that helps you load everything needed for the New Architecture, both
|
||||||
|
* TurboModule delegates and the Fabric Renderer.
|
||||||
|
*
|
||||||
|
* <p>Please note that this class is used ONLY if you opt-in for the New Architecture (see the
|
||||||
|
* `newArchEnabled` property). Is ignored otherwise.
|
||||||
|
*/
|
||||||
|
public class MainApplicationReactNativeHost extends ReactNativeHost {
|
||||||
|
public MainApplicationReactNativeHost(Application application) {
|
||||||
|
super(application);
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public boolean getUseDeveloperSupport() {
|
||||||
|
return BuildConfig.DEBUG;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
protected List<ReactPackage> getPackages() {
|
||||||
|
List<ReactPackage> packages = new PackageList(this).getPackages();
|
||||||
|
// Packages that cannot be autolinked yet can be added manually here, for example:
|
||||||
|
// packages.add(new MyReactNativePackage());
|
||||||
|
// TurboModules must also be loaded here providing a valid TurboReactPackage implementation:
|
||||||
|
// packages.add(new TurboReactPackage() { ... });
|
||||||
|
// If you have custom Fabric Components, their ViewManagers should also be loaded here
|
||||||
|
// inside a ReactPackage.
|
||||||
|
return packages;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
protected String getJSMainModuleName() {
|
||||||
|
return "index";
|
||||||
|
}
|
||||||
|
@NonNull
|
||||||
|
@Override
|
||||||
|
protected ReactPackageTurboModuleManagerDelegate.Builder
|
||||||
|
getReactPackageTurboModuleManagerDelegateBuilder() {
|
||||||
|
// Here we provide the ReactPackageTurboModuleManagerDelegate Builder. This is necessary
|
||||||
|
// for the new architecture and to use TurboModules correctly.
|
||||||
|
return new MainApplicationTurboModuleManagerDelegate.Builder();
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
protected JSIModulePackage getJSIModulePackage() {
|
||||||
|
return new JSIModulePackage() {
|
||||||
|
@Override
|
||||||
|
public List<JSIModuleSpec> getJSIModules(
|
||||||
|
final ReactApplicationContext reactApplicationContext,
|
||||||
|
final JavaScriptContextHolder jsContext) {
|
||||||
|
final List<JSIModuleSpec> specs = new ArrayList<>();
|
||||||
|
// Here we provide a new JSIModuleSpec that will be responsible of providing the
|
||||||
|
// custom Fabric Components.
|
||||||
|
specs.add(
|
||||||
|
new JSIModuleSpec() {
|
||||||
|
@Override
|
||||||
|
public JSIModuleType getJSIModuleType() {
|
||||||
|
return JSIModuleType.UIManager;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public JSIModuleProvider<UIManager> getJSIModuleProvider() {
|
||||||
|
final ComponentFactory componentFactory = new ComponentFactory();
|
||||||
|
CoreComponentsRegistry.register(componentFactory);
|
||||||
|
// Here we register a Components Registry.
|
||||||
|
// The one that is generated with the template contains no components
|
||||||
|
// and just provides you the one from React Native core.
|
||||||
|
MainComponentsRegistry.register(componentFactory);
|
||||||
|
final ReactInstanceManager reactInstanceManager = getReactInstanceManager();
|
||||||
|
ViewManagerRegistry viewManagerRegistry =
|
||||||
|
new ViewManagerRegistry(
|
||||||
|
reactInstanceManager.getOrCreateViewManagers(reactApplicationContext));
|
||||||
|
return new FabricJSIModuleProvider(
|
||||||
|
reactApplicationContext,
|
||||||
|
componentFactory,
|
||||||
|
ReactNativeConfig.DEFAULT_CONFIG,
|
||||||
|
viewManagerRegistry);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
return specs;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,30 @@
|
|||||||
|
package im.status.ethereum.newarchitecture.components;
|
||||||
|
import com.facebook.jni.HybridData;
|
||||||
|
import com.facebook.proguard.annotations.DoNotStrip;
|
||||||
|
import com.facebook.react.fabric.ComponentFactory;
|
||||||
|
import com.facebook.soloader.SoLoader;
|
||||||
|
/**
|
||||||
|
* Class responsible to load the custom Fabric Components. This class has native methods and needs a
|
||||||
|
* corresponding C++ implementation/header file to work correctly (already placed inside the jni/
|
||||||
|
* folder for you).
|
||||||
|
*
|
||||||
|
* <p>Please note that this class is used ONLY if you opt-in for the New Architecture (see the
|
||||||
|
* `newArchEnabled` property). Is ignored otherwise.
|
||||||
|
*/
|
||||||
|
@DoNotStrip
|
||||||
|
public class MainComponentsRegistry {
|
||||||
|
static {
|
||||||
|
SoLoader.loadLibrary("fabricjni");
|
||||||
|
}
|
||||||
|
@DoNotStrip private final HybridData mHybridData;
|
||||||
|
@DoNotStrip
|
||||||
|
private native HybridData initHybrid(ComponentFactory componentFactory);
|
||||||
|
@DoNotStrip
|
||||||
|
private MainComponentsRegistry(ComponentFactory componentFactory) {
|
||||||
|
mHybridData = initHybrid(componentFactory);
|
||||||
|
}
|
||||||
|
@DoNotStrip
|
||||||
|
public static MainComponentsRegistry register(ComponentFactory componentFactory) {
|
||||||
|
return new MainComponentsRegistry(componentFactory);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,40 @@
|
|||||||
|
package im.status.ethereum.newarchitecture.modules;
|
||||||
|
import com.facebook.jni.HybridData;
|
||||||
|
import com.facebook.react.ReactPackage;
|
||||||
|
import com.facebook.react.ReactPackageTurboModuleManagerDelegate;
|
||||||
|
import com.facebook.react.bridge.ReactApplicationContext;
|
||||||
|
import com.facebook.soloader.SoLoader;
|
||||||
|
import java.util.List;
|
||||||
|
/**
|
||||||
|
* Class responsible to load the TurboModules. This class has native methods and needs a
|
||||||
|
* corresponding C++ implementation/header file to work correctly (already placed inside the jni/
|
||||||
|
* folder for you).
|
||||||
|
*
|
||||||
|
* <p>Please note that this class is used ONLY if you opt-in for the New Architecture (see the
|
||||||
|
* `newArchEnabled` property). Is ignored otherwise.
|
||||||
|
*/
|
||||||
|
public class MainApplicationTurboModuleManagerDelegate
|
||||||
|
extends ReactPackageTurboModuleManagerDelegate {
|
||||||
|
private static volatile boolean sIsSoLibraryLoaded;
|
||||||
|
protected MainApplicationTurboModuleManagerDelegate(
|
||||||
|
ReactApplicationContext reactApplicationContext, List<ReactPackage> packages) {
|
||||||
|
super(reactApplicationContext, packages);
|
||||||
|
}
|
||||||
|
protected native HybridData initHybrid();
|
||||||
|
native boolean canCreateTurboModule(String moduleName);
|
||||||
|
public static class Builder extends ReactPackageTurboModuleManagerDelegate.Builder {
|
||||||
|
protected MainApplicationTurboModuleManagerDelegate build(
|
||||||
|
ReactApplicationContext context, List<ReactPackage> packages) {
|
||||||
|
return new MainApplicationTurboModuleManagerDelegate(context, packages);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
protected synchronized void maybeLoadOtherSoLibraries() {
|
||||||
|
if (!sIsSoLibraryLoaded) {
|
||||||
|
// If you change the name of your application .so file in the Android.mk file,
|
||||||
|
// make sure you update the name here as well.
|
||||||
|
SoLoader.loadLibrary("status-im_appmodules");
|
||||||
|
sIsSoLibraryLoaded = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,39 @@
|
|||||||
|
THIS_DIR := $(call my-dir)
|
||||||
|
include $(REACT_ANDROID_DIR)/Android-prebuilt.mk
|
||||||
|
# If you wish to add a custom TurboModule or Fabric component in your app you
|
||||||
|
# will have to include the following autogenerated makefile.
|
||||||
|
# include $(GENERATED_SRC_DIR)/codegen/jni/Android.mk
|
||||||
|
include $(CLEAR_VARS)
|
||||||
|
LOCAL_PATH := $(THIS_DIR)
|
||||||
|
# You can customize the name of your application .so file here.
|
||||||
|
LOCAL_MODULE := rndiffapp_appmodules
|
||||||
|
LOCAL_C_INCLUDES := $(LOCAL_PATH)
|
||||||
|
LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/*.cpp)
|
||||||
|
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)
|
||||||
|
# If you wish to add a custom TurboModule or Fabric component in your app you
|
||||||
|
# will have to uncomment those lines to include the generated source
|
||||||
|
# files from the codegen (placed in $(GENERATED_SRC_DIR)/codegen/jni)
|
||||||
|
#
|
||||||
|
# LOCAL_C_INCLUDES += $(GENERATED_SRC_DIR)/codegen/jni
|
||||||
|
# LOCAL_SRC_FILES += $(wildcard $(GENERATED_SRC_DIR)/codegen/jni/*.cpp)
|
||||||
|
# LOCAL_EXPORT_C_INCLUDES += $(GENERATED_SRC_DIR)/codegen/jni
|
||||||
|
# Here you should add any native library you wish to depend on.
|
||||||
|
LOCAL_SHARED_LIBRARIES := \
|
||||||
|
libfabricjni \
|
||||||
|
libfbjni \
|
||||||
|
libfolly_runtime \
|
||||||
|
libglog \
|
||||||
|
libjsi \
|
||||||
|
libreact_codegen_rncore \
|
||||||
|
libreact_debug \
|
||||||
|
libreact_nativemodule_core \
|
||||||
|
libreact_render_componentregistry \
|
||||||
|
libreact_render_core \
|
||||||
|
libreact_render_debug \
|
||||||
|
libreact_render_graphics \
|
||||||
|
librrc_view \
|
||||||
|
libruntimeexecutor \
|
||||||
|
libturbomodulejsijni \
|
||||||
|
libyoga
|
||||||
|
LOCAL_CFLAGS := -DLOG_TAG=\"ReactNative\" -fexceptions -frtti -std=c++17 -Wall
|
||||||
|
include $(BUILD_SHARED_LIBRARY)
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
#include "MainApplicationModuleProvider.h"
|
||||||
|
#include <rncore.h>
|
||||||
|
namespace facebook {
|
||||||
|
namespace react {
|
||||||
|
std::shared_ptr<TurboModule> MainApplicationModuleProvider(
|
||||||
|
const std::string moduleName,
|
||||||
|
const JavaTurboModule::InitParams ¶ms) {
|
||||||
|
// Here you can provide your own module provider for TurboModules coming from
|
||||||
|
// either your application or from external libraries. The approach to follow
|
||||||
|
// is similar to the following (for a library called `samplelibrary`:
|
||||||
|
//
|
||||||
|
// auto module = samplelibrary_ModuleProvider(moduleName, params);
|
||||||
|
// if (module != nullptr) {
|
||||||
|
// return module;
|
||||||
|
// }
|
||||||
|
// return rncore_ModuleProvider(moduleName, params);
|
||||||
|
return rncore_ModuleProvider(moduleName, params);
|
||||||
|
}
|
||||||
|
} // namespace react
|
||||||
|
} // namespace facebook
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
#pragma once
|
||||||
|
#include <memory>
|
||||||
|
#include <string>
|
||||||
|
#include <ReactCommon/JavaTurboModule.h>
|
||||||
|
namespace facebook {
|
||||||
|
namespace react {
|
||||||
|
std::shared_ptr<TurboModule> MainApplicationModuleProvider(
|
||||||
|
const std::string moduleName,
|
||||||
|
const JavaTurboModule::InitParams ¶ms);
|
||||||
|
} // namespace react
|
||||||
|
} // namespace facebook
|
||||||
@@ -0,0 +1,38 @@
|
|||||||
|
#include "MainApplicationTurboModuleManagerDelegate.h"
|
||||||
|
#include "MainApplicationModuleProvider.h"
|
||||||
|
namespace facebook {
|
||||||
|
namespace react {
|
||||||
|
jni::local_ref<MainApplicationTurboModuleManagerDelegate::jhybriddata>
|
||||||
|
MainApplicationTurboModuleManagerDelegate::initHybrid(
|
||||||
|
jni::alias_ref<jhybridobject>) {
|
||||||
|
return makeCxxInstance();
|
||||||
|
}
|
||||||
|
void MainApplicationTurboModuleManagerDelegate::registerNatives() {
|
||||||
|
registerHybrid({
|
||||||
|
makeNativeMethod(
|
||||||
|
"initHybrid", MainApplicationTurboModuleManagerDelegate::initHybrid),
|
||||||
|
makeNativeMethod(
|
||||||
|
"canCreateTurboModule",
|
||||||
|
MainApplicationTurboModuleManagerDelegate::canCreateTurboModule),
|
||||||
|
});
|
||||||
|
}
|
||||||
|
std::shared_ptr<TurboModule>
|
||||||
|
MainApplicationTurboModuleManagerDelegate::getTurboModule(
|
||||||
|
const std::string name,
|
||||||
|
const std::shared_ptr<CallInvoker> jsInvoker) {
|
||||||
|
// Not implemented yet: provide pure-C++ NativeModules here.
|
||||||
|
return nullptr;
|
||||||
|
}
|
||||||
|
std::shared_ptr<TurboModule>
|
||||||
|
MainApplicationTurboModuleManagerDelegate::getTurboModule(
|
||||||
|
const std::string name,
|
||||||
|
const JavaTurboModule::InitParams ¶ms) {
|
||||||
|
return MainApplicationModuleProvider(name, params);
|
||||||
|
}
|
||||||
|
bool MainApplicationTurboModuleManagerDelegate::canCreateTurboModule(
|
||||||
|
std::string name) {
|
||||||
|
return getTurboModule(name, nullptr) != nullptr ||
|
||||||
|
getTurboModule(name, {.moduleName = name}) != nullptr;
|
||||||
|
}
|
||||||
|
} // namespace react
|
||||||
|
} // namespace facebook
|
||||||
@@ -0,0 +1,30 @@
|
|||||||
|
#include <memory>
|
||||||
|
#include <string>
|
||||||
|
#include <ReactCommon/TurboModuleManagerDelegate.h>
|
||||||
|
#include <fbjni/fbjni.h>
|
||||||
|
namespace facebook {
|
||||||
|
namespace react {
|
||||||
|
class MainApplicationTurboModuleManagerDelegate
|
||||||
|
: public jni::HybridClass<
|
||||||
|
MainApplicationTurboModuleManagerDelegate,
|
||||||
|
TurboModuleManagerDelegate> {
|
||||||
|
public:
|
||||||
|
// Adapt it to the package you used for your Java class.
|
||||||
|
static constexpr auto kJavaDescriptor =
|
||||||
|
"Lcom/rndiffapp/newarchitecture/modules/MainApplicationTurboModuleManagerDelegate;";
|
||||||
|
static jni::local_ref<jhybriddata> initHybrid(jni::alias_ref<jhybridobject>);
|
||||||
|
static void registerNatives();
|
||||||
|
std::shared_ptr<TurboModule> getTurboModule(
|
||||||
|
const std::string name,
|
||||||
|
const std::shared_ptr<CallInvoker> jsInvoker) override;
|
||||||
|
std::shared_ptr<TurboModule> getTurboModule(
|
||||||
|
const std::string name,
|
||||||
|
const JavaTurboModule::InitParams ¶ms) override;
|
||||||
|
/**
|
||||||
|
* Test-only method. Allows user to verify whether a TurboModule can be
|
||||||
|
* created by instances of this class.
|
||||||
|
*/
|
||||||
|
bool canCreateTurboModule(std::string name);
|
||||||
|
};
|
||||||
|
} // namespace react
|
||||||
|
} // namespace facebook
|
||||||
@@ -0,0 +1,48 @@
|
|||||||
|
#include "MainComponentsRegistry.h"
|
||||||
|
#include <CoreComponentsRegistry.h>
|
||||||
|
#include <fbjni/fbjni.h>
|
||||||
|
#include <react/renderer/componentregistry/ComponentDescriptorProviderRegistry.h>
|
||||||
|
#include <react/renderer/components/rncore/ComponentDescriptors.h>
|
||||||
|
namespace facebook {
|
||||||
|
namespace react {
|
||||||
|
MainComponentsRegistry::MainComponentsRegistry(ComponentFactory *delegate) {}
|
||||||
|
std::shared_ptr<ComponentDescriptorProviderRegistry const>
|
||||||
|
MainComponentsRegistry::sharedProviderRegistry() {
|
||||||
|
auto providerRegistry = CoreComponentsRegistry::sharedProviderRegistry();
|
||||||
|
// Custom Fabric Components go here. You can register custom
|
||||||
|
// components coming from your App or from 3rd party libraries here.
|
||||||
|
//
|
||||||
|
// providerRegistry->add(concreteComponentDescriptorProvider<
|
||||||
|
// AocViewerComponentDescriptor>());
|
||||||
|
return providerRegistry;
|
||||||
|
}
|
||||||
|
jni::local_ref<MainComponentsRegistry::jhybriddata>
|
||||||
|
MainComponentsRegistry::initHybrid(
|
||||||
|
jni::alias_ref<jclass>,
|
||||||
|
ComponentFactory *delegate) {
|
||||||
|
auto instance = makeCxxInstance(delegate);
|
||||||
|
auto buildRegistryFunction =
|
||||||
|
[](EventDispatcher::Weak const &eventDispatcher,
|
||||||
|
ContextContainer::Shared const &contextContainer)
|
||||||
|
-> ComponentDescriptorRegistry::Shared {
|
||||||
|
auto registry = MainComponentsRegistry::sharedProviderRegistry()
|
||||||
|
->createComponentDescriptorRegistry(
|
||||||
|
{eventDispatcher, contextContainer});
|
||||||
|
auto mutableRegistry =
|
||||||
|
std::const_pointer_cast<ComponentDescriptorRegistry>(registry);
|
||||||
|
mutableRegistry->setFallbackComponentDescriptor(
|
||||||
|
std::make_shared<UnimplementedNativeViewComponentDescriptor>(
|
||||||
|
ComponentDescriptorParameters{
|
||||||
|
eventDispatcher, contextContainer, nullptr}));
|
||||||
|
return registry;
|
||||||
|
};
|
||||||
|
delegate->buildRegistryFunction = buildRegistryFunction;
|
||||||
|
return instance;
|
||||||
|
}
|
||||||
|
void MainComponentsRegistry::registerNatives() {
|
||||||
|
registerHybrid({
|
||||||
|
makeNativeMethod("initHybrid", MainComponentsRegistry::initHybrid),
|
||||||
|
});
|
||||||
|
}
|
||||||
|
} // namespace react
|
||||||
|
} // namespace facebook
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
#pragma once
|
||||||
|
#include <ComponentFactory.h>
|
||||||
|
#include <fbjni/fbjni.h>
|
||||||
|
#include <react/renderer/componentregistry/ComponentDescriptorProviderRegistry.h>
|
||||||
|
#include <react/renderer/componentregistry/ComponentDescriptorRegistry.h>
|
||||||
|
namespace facebook {
|
||||||
|
namespace react {
|
||||||
|
class MainComponentsRegistry
|
||||||
|
: public facebook::jni::HybridClass<MainComponentsRegistry> {
|
||||||
|
public:
|
||||||
|
// Adapt it to the package you used for your Java class.
|
||||||
|
constexpr static auto kJavaDescriptor =
|
||||||
|
"Lcom/rndiffapp/newarchitecture/components/MainComponentsRegistry;";
|
||||||
|
static void registerNatives();
|
||||||
|
MainComponentsRegistry(ComponentFactory *delegate);
|
||||||
|
private:
|
||||||
|
static std::shared_ptr<ComponentDescriptorProviderRegistry const>
|
||||||
|
sharedProviderRegistry();
|
||||||
|
static jni::local_ref<jhybriddata> initHybrid(
|
||||||
|
jni::alias_ref<jclass>,
|
||||||
|
ComponentFactory *delegate);
|
||||||
|
};
|
||||||
|
} // namespace react
|
||||||
|
} // namespace facebook
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
#include <fbjni/fbjni.h>
|
||||||
|
#include "MainApplicationTurboModuleManagerDelegate.h"
|
||||||
|
#include "MainComponentsRegistry.h"
|
||||||
|
JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *) {
|
||||||
|
return facebook::jni::initialize(vm, [] {
|
||||||
|
facebook::react::MainApplicationTurboModuleManagerDelegate::
|
||||||
|
registerNatives();
|
||||||
|
facebook::react::MainComponentsRegistry::registerNatives();
|
||||||
|
});
|
||||||
|
}
|
||||||
@@ -1,16 +1,28 @@
|
|||||||
|
import org.apache.tools.ant.taskdefs.condition.Os
|
||||||
// Top-level build file where you can add configuration options common to all sub-projects/modules.
|
// Top-level build file where you can add configuration options common to all sub-projects/modules.
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Project-wide gradle configuration properties for use by all modules
|
* Project-wide gradle configuration properties for use by all modules
|
||||||
*/
|
*/
|
||||||
ext {
|
ext {
|
||||||
RNNKotlinVersion = "1.4.31"
|
RNNKotlinVersion = "1.6.20"
|
||||||
|
RNGH_kotlinVersion = "1.6.20"
|
||||||
buildToolsVersion = project.buildToolsVersion
|
buildToolsVersion = project.buildToolsVersion
|
||||||
minSdkVersion = Integer.valueOf(project.minSdkVersion)
|
minSdkVersion = Integer.valueOf(project.minSdkVersion)
|
||||||
compileSdkVersion = Integer.valueOf(project.compileSdkVersion)
|
compileSdkVersion = Integer.valueOf(project.compileSdkVersion)
|
||||||
targetSdkVersion = Integer.valueOf(project.targetSdkVersion)
|
targetSdkVersion = Integer.valueOf(project.targetSdkVersion)
|
||||||
supportLibVersion = project.supportLibVersion
|
supportLibVersion = project.supportLibVersion
|
||||||
gradlePluginVersion = project.gradlePluginVersion
|
gradlePluginVersion = project.gradlePluginVersion
|
||||||
|
kotlinPluginVersion = project.kotlinPluginVersion
|
||||||
|
|
||||||
|
if (System.properties['os.arch'] == "aarch64") {
|
||||||
|
// For M1 Users we need to use the NDK 24 which added support for aarch64
|
||||||
|
ndkVersion = "24.0.8215888"
|
||||||
|
} else {
|
||||||
|
// Otherwise we default to the side-by-side NDK version from AGP.
|
||||||
|
ndkVersion = "21.4.7075529"
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
buildscript {
|
buildscript {
|
||||||
@@ -20,8 +32,10 @@ buildscript {
|
|||||||
mavenCentral()
|
mavenCentral()
|
||||||
}
|
}
|
||||||
dependencies {
|
dependencies {
|
||||||
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.31"
|
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:${project.ext.kotlinPluginVersion}"
|
||||||
classpath "com.android.tools.build:gradle:${project.ext.gradlePluginVersion}"
|
classpath "com.android.tools.build:gradle:${project.ext.gradlePluginVersion}"
|
||||||
|
classpath("com.facebook.react:react-native-gradle-plugin")
|
||||||
|
classpath("de.undercouch:gradle-download-task:5.0.1")
|
||||||
// WARNING: Do not place your application dependencies here!
|
// WARNING: Do not place your application dependencies here!
|
||||||
// They belong in the individual module build.gradle files.
|
// They belong in the individual module build.gradle files.
|
||||||
}
|
}
|
||||||
@@ -50,6 +64,20 @@ allprojects {
|
|||||||
}
|
}
|
||||||
|
|
||||||
repositories {
|
repositories {
|
||||||
|
exclusiveContent {
|
||||||
|
// We get React Native's Android binaries exclusively through npm,
|
||||||
|
// from a local Maven repo inside node_modules/react-native/.
|
||||||
|
// (The use of exclusiveContent prevents looking elsewhere like Maven Central
|
||||||
|
// and potentially getting a wrong version.)
|
||||||
|
filter {
|
||||||
|
includeGroup "com.facebook.react"
|
||||||
|
}
|
||||||
|
forRepository {
|
||||||
|
maven {
|
||||||
|
url "$rootDir/../node_modules/react-native/android"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
mavenLocal()
|
mavenLocal()
|
||||||
// All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
|
// All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
|
||||||
maven { url("$rootDir/../node_modules/react-native/android") }
|
maven { url("$rootDir/../node_modules/react-native/android") }
|
||||||
@@ -61,6 +89,7 @@ allprojects {
|
|||||||
google()
|
google()
|
||||||
jcenter() // Required for @react-native-community/blur:3.6.1, can be removed after updating to 3.6.1+
|
jcenter() // Required for @react-native-community/blur:3.6.1, can be removed after updating to 3.6.1+
|
||||||
mavenCentral()
|
mavenCentral()
|
||||||
maven { url "https://www.jitpack.io" }
|
// maven { url "https://www.jitpack.io" }
|
||||||
|
maven { url 'https://mvnrepository.com/artifact/com.github.gundy/semver4j'}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -21,14 +21,15 @@
|
|||||||
# $keytool -genkey -v -keystore ./status-keystore.jks -keyalg RSA -keysize 2048 -validity 10000 -alias status
|
# $keytool -genkey -v -keystore ./status-keystore.jks -keyalg RSA -keysize 2048 -validity 10000 -alias status
|
||||||
|
|
||||||
# Version requirements used throughout the Gradle scripts
|
# Version requirements used throughout the Gradle scripts
|
||||||
kotlinVersion=1.3.50
|
kotlinVersion=1.6.20
|
||||||
minSdkVersion=23
|
minSdkVersion=23
|
||||||
compileSdkVersion=31
|
compileSdkVersion=31
|
||||||
targetSdkVersion=31
|
targetSdkVersion=31
|
||||||
buildToolsVersion=31.0.0
|
buildToolsVersion=31.0.0
|
||||||
supportLibVersion=28.0.0
|
supportLibVersion=28.0.0
|
||||||
# This should match version from nix/mobile/android/maven-and-npm-deps/maven/default.nix
|
# This should match version from nix/mobile/android/maven-and-npm-deps/maven/default.nix
|
||||||
gradlePluginVersion=3.5.4
|
gradlePluginVersion=7.2.2
|
||||||
|
kotlinPluginVersion=1.6.20
|
||||||
|
|
||||||
android.useAndroidX=true
|
android.useAndroidX=true
|
||||||
android.enableJetifier=true
|
android.enableJetifier=true
|
||||||
@@ -50,3 +51,12 @@ commitHash=unknown
|
|||||||
|
|
||||||
# Flipper
|
# Flipper
|
||||||
FLIPPER_VERSION=0.54.0
|
FLIPPER_VERSION=0.54.0
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# Use this property to enable support to the new architecture.
|
||||||
|
# This will allow you to use TurboModules and the Fabric render in
|
||||||
|
# your application. You should enable this flag either if you want
|
||||||
|
# to write custom TurboModules/Fabric components OR use libraries that
|
||||||
|
# are providing them.
|
||||||
|
newArchEnabled=false
|
||||||
|
|||||||
@@ -20,3 +20,10 @@ include ':react-native-status-keycard'
|
|||||||
project(':react-native-status-keycard').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-status-keycard/android')
|
project(':react-native-status-keycard').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-status-keycard/android')
|
||||||
include ':react-native-blur'
|
include ':react-native-blur'
|
||||||
project(':react-native-blur').projectDir = new File(rootProject.projectDir, '../node_modules/@react-native-community/blur/android')
|
project(':react-native-blur').projectDir = new File(rootProject.projectDir, '../node_modules/@react-native-community/blur/android')
|
||||||
|
includeBuild('../node_modules/react-native-gradle-plugin')
|
||||||
|
if (settings.hasProperty("newArchEnabled") && settings.newArchEnabled == "true") {
|
||||||
|
include(":ReactAndroid")
|
||||||
|
project(":ReactAndroid").projectDir = file('../node_modules/react-native/ReactAndroid')
|
||||||
|
include(":ReactAndroid:hermes-engine")
|
||||||
|
project(":ReactAndroid:hermes-engine").projectDir = file('../node_modules/react-native/ReactAndroid/hermes-engine')
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
library 'status-jenkins-lib@v1.6.9'
|
library 'status-jenkins-lib@v1.7.9'
|
||||||
|
|
||||||
/* Options section can't access functions in objects. */
|
/* Options section can't access functions in objects. */
|
||||||
def isPRBuild = utils.isPRBuild()
|
def isPRBuild = utils.isPRBuild()
|
||||||
@@ -40,16 +40,12 @@ pipeline {
|
|||||||
BUILD_ENV = 'prod'
|
BUILD_ENV = 'prod'
|
||||||
NIX_CONF_DIR = "${env.WORKSPACE}/nix"
|
NIX_CONF_DIR = "${env.WORKSPACE}/nix"
|
||||||
FASTLANE_DISABLE_COLORS = 1
|
FASTLANE_DISABLE_COLORS = 1
|
||||||
/* coverage report identification */
|
|
||||||
COVERALLS_SERVICE_NAME = "jenkins"
|
|
||||||
COVERALLS_SERVICE_JOB_ID = "${JOB_NAME}#${BUILD_NUMBER}"
|
|
||||||
}
|
}
|
||||||
|
|
||||||
stages {
|
stages {
|
||||||
stage('Prep') {
|
stage('Prep') {
|
||||||
steps {
|
steps {
|
||||||
script {
|
script {
|
||||||
utils.doGitRebasePR()
|
|
||||||
utils.symlinkEnv()
|
utils.symlinkEnv()
|
||||||
println("Build Number: ${utils.genBuildNumber()}")
|
println("Build Number: ${utils.genBuildNumber()}")
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
library 'status-jenkins-lib@v1.6.9'
|
library 'status-jenkins-lib@v1.7.9'
|
||||||
|
|
||||||
pipeline {
|
pipeline {
|
||||||
agent { label 'linux' }
|
agent { label 'linux' }
|
||||||
@@ -19,7 +19,7 @@ pipeline {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* WARNING: Defining parameters here with the ?: trick causes them to remember last value. */
|
/* WARNING: Defining parameters here with the ?: trick causes them to remember last value. */
|
||||||
parameters {
|
parameters {
|
||||||
choice(
|
choice(
|
||||||
name: 'BUILD_TYPE',
|
name: 'BUILD_TYPE',
|
||||||
description: 'Makefile target to build. Optional Parameter.',
|
description: 'Makefile target to build. Optional Parameter.',
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
library 'status-jenkins-lib@v1.6.9'
|
library 'status-jenkins-lib@v1.7.9'
|
||||||
|
|
||||||
/* Options section can't access functions in objects. */
|
/* Options section can't access functions in objects. */
|
||||||
def isPRBuild = utils.isPRBuild()
|
def isPRBuild = utils.isPRBuild()
|
||||||
|
|
||||||
pipeline {
|
pipeline {
|
||||||
agent { label 'macos && arm64 && nix-2.11 && xcode-14.2' }
|
agent { label 'macos && arm64 && nix-2.11 && xcode-14.3' }
|
||||||
|
|
||||||
parameters {
|
parameters {
|
||||||
string(
|
string(
|
||||||
@@ -48,7 +48,6 @@ pipeline {
|
|||||||
stage('Prep') {
|
stage('Prep') {
|
||||||
steps {
|
steps {
|
||||||
script {
|
script {
|
||||||
utils.doGitRebasePR()
|
|
||||||
utils.symlinkEnv()
|
utils.symlinkEnv()
|
||||||
println("Build Number: ${utils.genBuildNumber()}")
|
println("Build Number: ${utils.genBuildNumber()}")
|
||||||
}
|
}
|
||||||
@@ -64,7 +63,9 @@ pipeline {
|
|||||||
script { api = ios.bundle() }
|
script { api = ios.bundle() }
|
||||||
}
|
}
|
||||||
post {
|
post {
|
||||||
failure { archiveArtifacts 'ios/logs/*' }
|
failure {
|
||||||
|
archiveArtifacts 'ios/logs/*'
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
stage('Parallel Upload') {
|
stage('Parallel Upload') {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
library 'status-jenkins-lib@v1.6.9'
|
library 'status-jenkins-lib@v1.7.9'
|
||||||
|
|
||||||
/* Options section can't access functions in objects. */
|
/* Options section can't access functions in objects. */
|
||||||
def isPRBuild = utils.isPRBuild()
|
def isPRBuild = utils.isPRBuild()
|
||||||
@@ -9,7 +9,7 @@ pipeline {
|
|||||||
options {
|
options {
|
||||||
timestamps()
|
timestamps()
|
||||||
/* Prevent Jenkins jobs from running forever */
|
/* Prevent Jenkins jobs from running forever */
|
||||||
timeout(time: 10, unit: 'MINUTES')
|
timeout(time: 15, unit: 'MINUTES')
|
||||||
/* Limit builds retained */
|
/* Limit builds retained */
|
||||||
buildDiscarder(logRotator(
|
buildDiscarder(logRotator(
|
||||||
numToKeepStr: '10',
|
numToKeepStr: '10',
|
||||||
@@ -41,13 +41,6 @@ pipeline {
|
|||||||
}
|
}
|
||||||
|
|
||||||
stages {
|
stages {
|
||||||
stage('Prep') {
|
|
||||||
steps {
|
|
||||||
script {
|
|
||||||
utils.doGitRebasePR()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
stage('Checks') {
|
stage('Checks') {
|
||||||
parallel {
|
parallel {
|
||||||
stage('Lint') {
|
stage('Lint') {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
library 'status-jenkins-lib@v1.6.9'
|
library 'status-jenkins-lib@v1.7.9'
|
||||||
|
|
||||||
pipeline {
|
pipeline {
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
library 'status-jenkins-lib@v1.6.9'
|
library 'status-jenkins-lib@v1.7.9'
|
||||||
|
|
||||||
pipeline {
|
pipeline {
|
||||||
|
|
||||||
@@ -45,6 +45,7 @@ pipeline {
|
|||||||
|
|
||||||
options {
|
options {
|
||||||
disableConcurrentBuilds()
|
disableConcurrentBuilds()
|
||||||
|
timeout(time: 90, unit: 'MINUTES')
|
||||||
}
|
}
|
||||||
|
|
||||||
stages {
|
stages {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
library 'status-jenkins-lib@v1.6.9'
|
library 'status-jenkins-lib@v1.7.9'
|
||||||
|
|
||||||
pipeline {
|
pipeline {
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
library 'status-jenkins-lib@v1.6.9'
|
library 'status-jenkins-lib@v1.7.9'
|
||||||
|
|
||||||
pipeline {
|
pipeline {
|
||||||
agent { label 'macos' }
|
agent { label 'macos' }
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
library 'status-jenkins-lib@v1.6.9'
|
library 'status-jenkins-lib@v1.7.9'
|
||||||
|
|
||||||
pipeline {
|
pipeline {
|
||||||
agent { label params.AGENT_LABEL }
|
agent { label params.AGENT_LABEL }
|
||||||
@@ -61,10 +61,9 @@ pipeline {
|
|||||||
}
|
}
|
||||||
stage('Build android jsbundle') {
|
stage('Build android jsbundle') {
|
||||||
steps { script {
|
steps { script {
|
||||||
/* build/fetch things required to produce a js-bundle for android
|
/* Build/fetch deps required for jsbundle build. */
|
||||||
* (e.g. maven and node repos) */
|
|
||||||
nix.build(
|
nix.build(
|
||||||
attr: 'targets.mobile.android.jsbundle',
|
attr: 'targets.mobile.jsbundle',
|
||||||
sandbox: false,
|
sandbox: false,
|
||||||
pure: false,
|
pure: false,
|
||||||
link: false
|
link: false
|
||||||
@@ -73,7 +72,7 @@ pipeline {
|
|||||||
}
|
}
|
||||||
stage('Build android deps') {
|
stage('Build android deps') {
|
||||||
steps { script {
|
steps { script {
|
||||||
/* build/fetch things required to build jsbundle and android */
|
/* Build/fetch deps required to build android release. */
|
||||||
nix.build(
|
nix.build(
|
||||||
attr: 'targets.mobile.android.release.buildInputs',
|
attr: 'targets.mobile.android.release.buildInputs',
|
||||||
sandbox: false,
|
sandbox: false,
|
||||||
@@ -84,7 +83,7 @@ pipeline {
|
|||||||
}
|
}
|
||||||
stage('Build nix shell deps') {
|
stage('Build nix shell deps') {
|
||||||
steps { script {
|
steps { script {
|
||||||
/* build/fetch things required to instantiate shell.nix for TARGET=all */
|
/* Build/fetch deps required to start default Nix shell. */
|
||||||
nix.build(
|
nix.build(
|
||||||
attr: 'shells.default.buildInputs',
|
attr: 'shells.default.buildInputs',
|
||||||
sandbox: false,
|
sandbox: false,
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
library 'status-jenkins-lib@v1.6.9'
|
library 'status-jenkins-lib@v1.7.9'
|
||||||
|
|
||||||
pipeline {
|
pipeline {
|
||||||
agent { label 'linux' }
|
agent { label 'linux' }
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
library 'status-jenkins-lib@v1.6.9'
|
library 'status-jenkins-lib@v1.7.9'
|
||||||
|
|
||||||
pipeline {
|
pipeline {
|
||||||
agent {
|
agent {
|
||||||
|
|||||||
@@ -16,8 +16,13 @@
|
|||||||
|
|
||||||
[Merging PR process](merging-pr-process.md)
|
[Merging PR process](merging-pr-process.md)
|
||||||
|
|
||||||
|
[PR Review Policy](pr-review-policy.md)
|
||||||
|
|
||||||
[Working on PR together with QA team](pipeline_process.md)
|
[Working on PR together with QA team](pipeline_process.md)
|
||||||
|
|
||||||
|
[Debugging](debugging.md)
|
||||||
|
|
||||||
|
[Patching](patching.md)
|
||||||
|
|
||||||
|
|
||||||
## Testing
|
## Testing
|
||||||
|
|||||||
@@ -91,30 +91,11 @@ These guidelines make db.cljs namespaces the place to go when making changes to
|
|||||||
|
|
||||||
- If manual QA is not needed but all tests don't pass, you can ping @churik or @Serhy to confirm that failed E2E tests are not unrelated.
|
- If manual QA is not needed but all tests don't pass, you can ping @churik or @Serhy to confirm that failed E2E tests are not unrelated.
|
||||||
|
|
||||||
## Enabling debug logs
|
|
||||||
Calls to `log/debug` will not be printed to the console by default. It can be enabled under "Advanced settings" in the app:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
## Translations
|
## Translations
|
||||||
The app relies on system locale to select a language from the [list of supported languages](https://github.com/status-im/status-mobile/blob/bda73867471cf2bb8a68b1cc27c9f94b92d9a58b/src/status_im/i18n_resources.cljs#L9). It falls back to English in cash the system locale is not supported.
|
The app relies on system locale to select a language from the [list of supported languages](https://github.com/status-im/status-mobile/blob/bda73867471cf2bb8a68b1cc27c9f94b92d9a58b/src/status_im/i18n_resources.cljs#L9). It falls back to English in cash the system locale is not supported.
|
||||||
|
|
||||||
We use Lokalise App to manage [translations](https://translate.status.im/). In case you need to add/remove a key to translations, you only need to change `en.json`. Missing keys fallback to `en.json`. The actual translations will be added by Lokalise.
|
We use Lokalise App to manage [translations](https://translate.status.im/). In case you need to add/remove a key to translations, you only need to change `en.json`. Missing keys fallback to `en.json`. The actual translations will be added by Lokalise.
|
||||||
|
|
||||||
## re-frisk
|
|
||||||
re-frisk is a state visualization tool written by our very own Andrey (@flexsurfer). To start re-frisk, execute the following command:
|
|
||||||
```bash
|
|
||||||
$ yarn shadow-cljs run re-frisk-remote.core/start
|
|
||||||
```
|
|
||||||
|
|
||||||
or you can also use make:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
$ make run-re-frisk
|
|
||||||
```
|
|
||||||
|
|
||||||
A server will be started at http://localhost:4567. It might show "not connected" at first. Don't worry and just start using the app. The events and state will populate.
|
|
||||||
|
|
||||||
## Merging approved PRs
|
## Merging approved PRs
|
||||||
|
|
||||||
We don't Github's UI to merge. Instead `./scripts/merge-pr.sh` is used to sign and merge PR to `develop`. You first need to enable [GPG signing on you commits](https://github.com/status-im/status-mobile/blob/develop/STARTING_GUIDE.md#configure-gpg-keys-for-signing-commits).
|
We don't Github's UI to merge. Instead `./scripts/merge-pr.sh` is used to sign and merge PR to `develop`. You first need to enable [GPG signing on you commits](https://github.com/status-im/status-mobile/blob/develop/STARTING_GUIDE.md#configure-gpg-keys-for-signing-commits).
|
||||||
|
|||||||
@@ -23,13 +23,13 @@ setups and runs the test suite once.
|
|||||||
setups and runs the test suite and watches for code changes will then retrigger the test suite.
|
setups and runs the test suite and watches for code changes will then retrigger the test suite.
|
||||||
|
|
||||||
## Writing Tests
|
## Writing Tests
|
||||||
New test files will need their namespace added to either the file "src/quo2/core_spec.cljs" or "src/status_im2/core_spec.cljs. These locations may update overtime but it is dependent on the entrypoint in shadowcljs config discussed below.
|
New test files will need their namespace added to either the file "src/quo2/core_spec.cljs" or "src/status_im2/core_spec.cljs. These locations may update overtime but it is dependent on the entrypoint in shadow-cljs config discussed below.
|
||||||
|
|
||||||
|
|
||||||
### Best practices
|
### Best practices
|
||||||
For the moment we will keep best practices for tests in our other guidelines document:
|
For the moment we will keep best practices for tests in our other guidelines document:
|
||||||
|
|
||||||
To that point these guidelines will follow the conventions of Jest and React Native Testing Library recomendations and Status mobile will just stack their preferences on top.
|
To that point these guidelines will follow the conventions of Jest and React Native Testing Library recommendations and Status mobile will just stack their preferences on top.
|
||||||
|
|
||||||
### Utilities
|
### Utilities
|
||||||
There is a file of utility functions defined in "src/test_helpers/component.cljs" and "src/test_helpers/component.clj". It will be great to use these utilities and to add any common testing tools to these files as it should make writing tests easier and faster.
|
There is a file of utility functions defined in "src/test_helpers/component.cljs" and "src/test_helpers/component.clj". It will be great to use these utilities and to add any common testing tools to these files as it should make writing tests easier and faster.
|
||||||
@@ -52,4 +52,4 @@ It's worth knowing that our tests are compiled to JS and then run in the tempora
|
|||||||
### Jest
|
### Jest
|
||||||
There is also further configuration for Jest in "test/jest". There is a jest config file which has some mostly standard configuration pieces, where the tests live, what environment variables are set etc. This is documented by Jest here: https://jestjs.io/docs/configuration
|
There is also further configuration for Jest in "test/jest". There is a jest config file which has some mostly standard configuration pieces, where the tests live, what environment variables are set etc. This is documented by Jest here: https://jestjs.io/docs/configuration
|
||||||
|
|
||||||
There is also a setup file which is used to set some global and default values. Additionally this file is used to mock some of the react native (among other) dependencies
|
There is also a setup file which is used to set some global and default values. Additionally this file is used to mock some of the react native (among other) dependencies
|
||||||
|
|||||||
@@ -0,0 +1,64 @@
|
|||||||
|
# Debugging
|
||||||
|
|
||||||
|
## Inspecting re-frame with re-frisk
|
||||||
|
`re-frisk` is a state visualization tool written by our very own Andrey (@flexsurfer). With its help you can inspect the current state of app-db, watch event, etc.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
To start `re-frisk`, execute the following command:
|
||||||
|
```bash
|
||||||
|
$ yarn shadow-cljs run re-frisk-remote.core/start
|
||||||
|
```
|
||||||
|
|
||||||
|
or you can also use make:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$ make run-re-frisk
|
||||||
|
```
|
||||||
|
|
||||||
|
A server will be started at http://localhost:4567. It might show "not connected" at first. Don't worry and just start using the app. The events and state will populate.
|
||||||
|
|
||||||
|
More details about re-frisk are on the [project page](https://github.com/flexsurfer/re-frisk).
|
||||||
|
|
||||||
|
## Enabling debug logs
|
||||||
|
Calls to `log/debug` will not be printed to the console by default. It can be enabled under "Advanced settings" in the app:
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
|
||||||
|
## Checking status-go logs
|
||||||
|
While status mobile works it saves logs from `status-go` to `geth.log` file.
|
||||||
|
|
||||||
|
|
||||||
|
### Checking logs from physical device
|
||||||
|
To obtain `geth.log` from physical device you need to shake it and in an opened menu select "Share logs".
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
|
||||||
|
### Checking logs from iOS Simulator
|
||||||
|
When developing with iOS simulator it is more convenient to see the `geth.log` updates in real-time.
|
||||||
|
To do this:
|
||||||
|
- open Activity Monitor
|
||||||
|
- find the "StatusIm" app and doubleclick it
|
||||||
|
- in the opened window select "Open files and ports" and find the full path to `geth.log` (note that it won't appear until you login to Status app)
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
|
||||||
|
## Tips
|
||||||
|
### From @ilmotta:
|
||||||
|
|
||||||
|
Something I find extremely convenient for Android is to use `adb` to tail logs. I don't use macOS so I don't know if the iOS simulator offers a CLI interface with the same capabilities.
|
||||||
|
|
||||||
|
But here's what I use for example:
|
||||||
|
|
||||||
|
```
|
||||||
|
adb shell tail -n 10 -f /storage/emulated/0/Android/data/im.status.ethereum.debug/files/Download/geth.log | grep 'waku.relay'
|
||||||
|
```
|
||||||
|
|
||||||
|
Also to inspect logs in a more flexible manner, instead of the strict output from `make run-metro`, I prefer `adb logcat`. Combined with enabling status-mobile logs in debug by default plus filtering the logs to only what I care during development, I find this helps me inspect the app without running re-frisk because with the debug log level I can already see which events are dispatched (one of the features I like the most from re-frisk).
|
||||||
|
|
||||||
|
```
|
||||||
|
adb logcat | grep 'ReactNativeJS\|StatusModule\|GoLog'
|
||||||
|
```
|
||||||
|
After Width: | Height: | Size: 255 KiB |
|
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 33 KiB |
|
After Width: | Height: | Size: 308 KiB |
|
After Width: | Height: | Size: 16 KiB |
@@ -5,6 +5,7 @@
|
|||||||
3) Address feedback
|
3) Address feedback
|
||||||
4) Make sure builds and tests are green (run `make test` locally, `make lint-fix` to fix any indentation issue and `make lint`)
|
4) Make sure builds and tests are green (run `make test` locally, `make lint-fix` to fix any indentation issue and `make lint`)
|
||||||
5) Once the PR has been reviewed by the dev team you can run e2e tests on it by going to https://github.com/status-im/status-mobile/projects/7 and move the pr under the column E2E tests. This will trigger tests.
|
5) Once the PR has been reviewed by the dev team you can run e2e tests on it by going to https://github.com/status-im/status-mobile/projects/7 and move the pr under the column E2E tests. This will trigger tests.
|
||||||
|
1) Read our [PR Review Policy](pr-review-policy.md) for more details on our approach to PR reviews.
|
||||||
6) Once e2e tests have run, they will report the result on the PR, if it's less than 100%, ask QA to take a look to make sure everything is in order (some might fail for legitimate reasons)
|
6) Once e2e tests have run, they will report the result on the PR, if it's less than 100%, ask QA to take a look to make sure everything is in order (some might fail for legitimate reasons)
|
||||||
7) Ask QA for manual testing if the PR requires it
|
7) Ask QA for manual testing if the PR requires it
|
||||||
8) Once it has been tested successfully, squash everything into one commit. rebase and merge. The commands we use:
|
8) Once it has been tested successfully, squash everything into one commit. rebase and merge. The commands we use:
|
||||||
|
|||||||
@@ -36,6 +36,50 @@ Pay special attention to:
|
|||||||
|
|
||||||
## Dos and don'ts
|
## Dos and don'ts
|
||||||
|
|
||||||
|
### Hiccup
|
||||||
|
|
||||||
|
Never use anonymous inline function in hiccup, this will lead to reinitialization of component on each render of parent component
|
||||||
|
|
||||||
|
```clojure
|
||||||
|
;; bad
|
||||||
|
(defn checkbox-view
|
||||||
|
[{:keys [size]}]
|
||||||
|
[rn/view
|
||||||
|
[(fn [] [rn/view])]])
|
||||||
|
|
||||||
|
;; good
|
||||||
|
(defn comp []
|
||||||
|
[rn/view])
|
||||||
|
|
||||||
|
(defn checkbox-view
|
||||||
|
[{:keys [size]}]
|
||||||
|
[rn/view
|
||||||
|
[comp]])
|
||||||
|
```
|
||||||
|
|
||||||
|
This mistake mostly happens with functional components
|
||||||
|
|
||||||
|
```clojure
|
||||||
|
;; bad
|
||||||
|
(fn []
|
||||||
|
(let [atom (rf/sub [:sub])]
|
||||||
|
(fn []
|
||||||
|
[:f>
|
||||||
|
(fn []
|
||||||
|
[rn/text atom]
|
||||||
|
|
||||||
|
;; good
|
||||||
|
(defn f-comp [atom]
|
||||||
|
[rn/text atom])
|
||||||
|
|
||||||
|
(fn []
|
||||||
|
(let [atom (rf/sub [:sub])]
|
||||||
|
(fn []
|
||||||
|
[:f> f-comp atom])))
|
||||||
|
```
|
||||||
|
|
||||||
|
it's important to name functional components with `f-` prefix
|
||||||
|
|
||||||
### Component styles
|
### Component styles
|
||||||
|
|
||||||
Prefer to define styles in a separate file named `style.cljs`, colocated with
|
Prefer to define styles in a separate file named `style.cljs`, colocated with
|
||||||
@@ -61,6 +105,84 @@ the source file. For a real example, see
|
|||||||
[rn/view (do-something)]])
|
[rn/view (do-something)]])
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Always add styles inside the `:style` key
|
||||||
|
|
||||||
|
Although when compiling ReactNative for mobile some components are able work with
|
||||||
|
their styles in the top-level of the properties map, prefer to add them inside the
|
||||||
|
`:style` key in order to separate styles from properties:
|
||||||
|
|
||||||
|
```clojure
|
||||||
|
;; bad
|
||||||
|
[rn/button {:flex 1
|
||||||
|
:padding-vertical 10
|
||||||
|
:padding-horizontal 20
|
||||||
|
:on-press #(js/alert "Hi!")
|
||||||
|
:title "Button"}]
|
||||||
|
|
||||||
|
;; good
|
||||||
|
[rn/button {:style {:flex 1
|
||||||
|
:padding-vertical 10
|
||||||
|
:padding-horizontal 20}
|
||||||
|
:on-press #(js/alert "Hi!")
|
||||||
|
:title "Button"}]
|
||||||
|
|
||||||
|
;; better
|
||||||
|
;; (define them in a style ns & place them inside `:style` key)
|
||||||
|
[rn/button {:style (style/button)
|
||||||
|
:on-press #(js/alert "Hi!")
|
||||||
|
:title "Button"}
|
||||||
|
]
|
||||||
|
```
|
||||||
|
|
||||||
|
Also its fine to keep one liner styles in view
|
||||||
|
|
||||||
|
```clojure
|
||||||
|
;; ok
|
||||||
|
[rn/view {:style {:flex 1 :padding-top 5}}]
|
||||||
|
```
|
||||||
|
|
||||||
|
### Don't define properties in styles ns
|
||||||
|
|
||||||
|
Properties must be set on view level
|
||||||
|
|
||||||
|
```clojure
|
||||||
|
;; bad
|
||||||
|
{:style {:position :absolute
|
||||||
|
:left 0
|
||||||
|
:right 0
|
||||||
|
:bottom 0}
|
||||||
|
:blur-amount 30
|
||||||
|
:blur-radius 25
|
||||||
|
:blur-type :transparent
|
||||||
|
:overlay-color :transparent}
|
||||||
|
|
||||||
|
;; good
|
||||||
|
{:position :absolute
|
||||||
|
:left 0
|
||||||
|
:right 0
|
||||||
|
:bottom 0}
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
### Apply animated styles in the style file
|
||||||
|
|
||||||
|
|
||||||
|
```clojure
|
||||||
|
;; bad
|
||||||
|
(defn circle
|
||||||
|
[]
|
||||||
|
(let [opacity (reanimated/use-shared-value 1)]
|
||||||
|
[reanimated/view {:style (reanimated/apply-animations-to-style
|
||||||
|
{:opacity opacity}
|
||||||
|
style/circle-container)}]))
|
||||||
|
|
||||||
|
;; good
|
||||||
|
(defn circle
|
||||||
|
[]
|
||||||
|
(let [opacity (reanimated/use-shared-value 1)]
|
||||||
|
[reanimated/view {:style (style/circle-container opacity)}]))
|
||||||
|
```
|
||||||
|
|
||||||
### Don't use percents to define width/height
|
### Don't use percents to define width/height
|
||||||
|
|
||||||
In ReactNative, all layouts use the [flexbox
|
In ReactNative, all layouts use the [flexbox
|
||||||
@@ -243,6 +365,43 @@ dispatch.
|
|||||||
(str "Hello " username)]])
|
(str "Hello " username)]])
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Registering effects
|
||||||
|
|
||||||
|
When registering re-frame effects (`reg-fx`), prefer to expose a data-only
|
||||||
|
interface because that will allow event handlers to stay pure.
|
||||||
|
|
||||||
|
For instance, if an effect needs a `on-success` callback, allow it to receive a
|
||||||
|
*re-frame event vector*. This approach is used by us in the [json-rpc/call
|
||||||
|
effect](src/status_im2/common/json_rpc/events.cljs), but also by third-party
|
||||||
|
effects, such as https://github.com/Day8/re-frame-http-fx. For the complete
|
||||||
|
rationale, see [PR #15936](https://github.com/status-im/status-mobile/pull/15936).
|
||||||
|
|
||||||
|
### Using the effect `:json-rpc/call`
|
||||||
|
|
||||||
|
Prefer the pure version of `:json-rpc/call` (no callbacks).
|
||||||
|
|
||||||
|
```clojure
|
||||||
|
;; not as good
|
||||||
|
(rf/defn accept-contact-request
|
||||||
|
{:events [:activity-center.contact-requests/accept]}
|
||||||
|
[_ contact-id]
|
||||||
|
{:json-rpc/call
|
||||||
|
[{:method "wakuext_acceptContactRequest"
|
||||||
|
:params [{:id contact-id}]
|
||||||
|
:on-success #(rf/dispatch [:sanitize-messages-and-process-response %])
|
||||||
|
:on-error #(rf/dispatch [:activity-center.contact-requests/accept-error contact-id %])}]})
|
||||||
|
|
||||||
|
;; better
|
||||||
|
(rf/defn accept-contact-request
|
||||||
|
{:events [:activity-center.contact-requests/accept]}
|
||||||
|
[_ contact-id]
|
||||||
|
{:json-rpc/call
|
||||||
|
[{:method "wakuext_acceptContactRequest"
|
||||||
|
:params [{:id contact-id}]
|
||||||
|
:on-success [:sanitize-messages-and-process-response]
|
||||||
|
:on-error [:activity-center.contact-requests/accept-error contact-id]}]})
|
||||||
|
```
|
||||||
|
|
||||||
### Registering event handlers
|
### Registering event handlers
|
||||||
|
|
||||||
Events must always be declared with the `utils.fx/defn` macro. Also, don't use
|
Events must always be declared with the `utils.fx/defn` macro. Also, don't use
|
||||||
|
|||||||
@@ -0,0 +1,13 @@
|
|||||||
|
# Patching
|
||||||
|
|
||||||
|
## Libraries
|
||||||
|
If 3rd party library has an issue and fix is not yet released (or we can't switch to a new release), we use forks. Fix should be commited to the fork, tagged and referenced from package.json.
|
||||||
|
|
||||||
|
Example: [`react-native-hole-view`](https://github.com/status-im/react-native-hole-view#refs/tags/v2.1.1-status)
|
||||||
|
|
||||||
|
## React Native
|
||||||
|
When patch need to be applied to React Native itself Status does patching with Nix instead of doing it nodejs-way.
|
||||||
|
|
||||||
|
Patches should be added to [this file](https://github.com/status-im/status-mobile/blob/develop/nix/deps/nodejs-patched/default.nix).
|
||||||
|
|
||||||
|
Example: [patching `react-native/Yoga` to build app with XCode 14.3](https://github.com/status-im/status-mobile/pull/15589)
|
||||||
@@ -0,0 +1,96 @@
|
|||||||
|
## Pull Request Review Policy
|
||||||
|
|
||||||
|
This document details the pull request policy of the Status Mobile repository / team.
|
||||||
|
|
||||||
|
- [Terms](#terms)
|
||||||
|
- [Policy](#policy)
|
||||||
|
- [Overview](#overview)
|
||||||
|
- [Full Policy](#fully-policy)
|
||||||
|
- [Rationale](#rationale)
|
||||||
|
- [Front pressure and Demand control](#front-pressure-and-demand-control)
|
||||||
|
- [Back pressure and Supply control](#back-pressure-and-supply-control)
|
||||||
|
- [Honour System](#honour-system)
|
||||||
|
- [Review Support](#review-support)
|
||||||
|
- [Background](#background)
|
||||||
|
|
||||||
|
### Terms:
|
||||||
|
|
||||||
|
| Term | Definition |
|
||||||
|
|----------------------|---------------------------------------------------------------------------------------------------------------|
|
||||||
|
| **Requester** | The team member submitting a pull request. |
|
||||||
|
| **Reviewer** | A team member asked by a requester to review the requester’s pull request. |
|
||||||
|
| **Review bandwidth** | The number of reviews a team member has self-limited themselves to giving within their defined review period. |
|
||||||
|
| **Review period** | The period of time over which a reviewer’s bandwidth is consumed |
|
||||||
|
|
||||||
|
### Policy:
|
||||||
|
|
||||||
|
#### Overview
|
||||||
|
|
||||||
|
- 🔀 - You are responsible for getting your PR reviewed and approved.
|
||||||
|
- ✅ - You must give a review on a PR if you are asked to do so, unless your review limit has been reached.
|
||||||
|
- ✨ - The honour system underpins this policy, without acting in good faith it will not work.
|
||||||
|
|
||||||
|
#### Fully policy
|
||||||
|
|
||||||
|
1) The requester has the responsibility for getting a PR reviewed and approved.
|
||||||
|
1) The requester has the right and responsibility to pursue code reviews.
|
||||||
|
2) The requester has the right and responsibility to make multiple requests of the same reviewer.
|
||||||
|
3) The requester will select a limited number of reviewers to review any of the requester’s PRs.
|
||||||
|
2) Reviewers are obligated to give a review for all PRs they are requested to review, except when their review bandwidth has been exhausted:
|
||||||
|
1) Reviewers have the right to refuse a requester a review if the reviewer’s review bandwidth has been exhausted.
|
||||||
|
2) Reviewers are expected to manage and track their review bandwidth.
|
||||||
|
3) Reviewers can manage their review bandwidth via any means they feel works best for them. Examples include:
|
||||||
|
1) Using the GitHub busy feature
|
||||||
|
2) Declining a review on the PR
|
||||||
|
3) Declining a review when pursued by a code reviewer
|
||||||
|
4) Proactively declining to review a PR
|
||||||
|
3) All team members will set a review bandwidth that is reasonable.
|
||||||
|
4) All team members acknowledge that giving reviews is a requirement of membership of the team.
|
||||||
|
5) All team members will manage their review bandwidth honestly.
|
||||||
|
1) The right to refuse a PR review is only eligible if a reviewer’s review bandwidth has actually been exhausted.
|
||||||
|
2) Breaching the team’s honour is very bad form. Do not do it (please).
|
||||||
|
6) All team members acknowledge that without acting with honesty this review process will not work and jeopardises their own future ability to receive reviews.
|
||||||
|
|
||||||
|
### Rationale
|
||||||
|
|
||||||
|
#### Front pressure and Demand control
|
||||||
|
|
||||||
|
Foremost in the rationale for the above policy is that giving a PR review is a requirement. If a requester requests
|
||||||
|
a PR review of a team member, the reviewer is now obligated to review the PR within a reasonable timeframe.
|
||||||
|
|
||||||
|
This principle enforces that there is a pressure and demand that PR reviews must be given.
|
||||||
|
|
||||||
|
#### Back pressure and Supply control
|
||||||
|
|
||||||
|
Front pressure alone is not enough to balance the PR review load across the team. Because of this an exception is granted
|
||||||
|
to reviewers that have exhausted their review bandwidth, the exemption permits these reviewers to refuse a PR review.
|
||||||
|
|
||||||
|
This principle gives the reviewer pool back-pressure, relieving the exhausted reviewer and increasing pressure / demand on
|
||||||
|
the other reviewers.
|
||||||
|
|
||||||
|
#### Honour system
|
||||||
|
|
||||||
|
The two principles of demand and supply control are underpinned by an honour system and are useless without honest action.
|
||||||
|
If a team member does not honestly manage their review bandwidth this action seriously damages the collective balance of
|
||||||
|
PR review load. Because of this potential damage a breach of the honour system is considered a deeply shameful act.
|
||||||
|
|
||||||
|
The honour system is the mechanism of control and enforcement, without it the policy would need to be controlled and enforced
|
||||||
|
using less dynamic and forgiving mechanisms. An example is a GitHub review counting tools with quotas and metrics. So just
|
||||||
|
be cool.
|
||||||
|
|
||||||
|
### Review Support
|
||||||
|
|
||||||
|
Sometimes reviewing is time-consuming or generally painful, to help make reviews as simple as possible consider the following suggestions:
|
||||||
|
- Paired reviews: Ask an experienced reviewer to review with you.
|
||||||
|
- If a PR is the product of multiple developers only ask 1 or 2 other developers for their review.
|
||||||
|
|
||||||
|
### Background
|
||||||
|
|
||||||
|
The contents of this policy document is the product of 2 councils of the Status Mobile team, the below documents summarise the topics and outcomes of the councils:
|
||||||
|
|
||||||
|
- [2023-05-15 - Council of Deadwater](https://docs.google.com/document/d/1TtUZCke2OzumjdWGu6TIECHEOUPwvaLrvQ8Re2nEGCo)
|
||||||
|
- [2023-06-13 - Mauve Council of Deadwater](https://docs.google.com/document/d/19hfr8xXrShLk9ROdQfOwb9_vwbTah9nOCqKSLIrgoSI)
|
||||||
|
|
||||||
|
The aims of the council were to allow developers that are relied on heavily for reviews to better balance their time
|
||||||
|
between reviews and other responsibilities. Equally, the council aimed to give other team members better opportunity and
|
||||||
|
understanding that giving PR reviews is a requirement and will help the team generally if more review burden is shared.
|
||||||
@@ -28,11 +28,30 @@ You need to have an emulator like [AVD](https://developer.android.com/studio/run
|
|||||||
|
|
||||||
### iOS
|
### iOS
|
||||||
|
|
||||||
You can specify the simulator type by adding the `SIMULATOR` flag:
|
#### Running on a simulator
|
||||||
|
|
||||||
|
We highly recommend using the `iPhone 11 Pro` simulator as its screen dimensions match with our design.
|
||||||
|
|
||||||
|
If you have Xcode `v12.x` (and above) installed in your system, you need to follow the below steps to add `iPhone 11 Pro` simulator:
|
||||||
|
|
||||||
|
1. Open Xcode
|
||||||
|
2. Menu `>` Window `>` Devices and Simulators
|
||||||
|
3. Tap `+` button on bottom left
|
||||||
|
4. Select **Device Type** as `iPhone 11 Pro`
|
||||||
|
5. Leave the **Simulator Name** empty and tap on **Create**
|
||||||
|
|
||||||
|
##### NOTE ⚠️
|
||||||
|
|
||||||
|
Running `make run-ios` will target `iPhone 11 Pro` by default.
|
||||||
|
|
||||||
|
If you need to run on any other simulator, you can specify the simulator type by adding the `SIMULATOR` flag:
|
||||||
```sh
|
```sh
|
||||||
make run-ios SIMULATOR="iPhone 11 Pro"
|
make run-ios SIMULATOR="iPhone 11 Pro"
|
||||||
```
|
```
|
||||||
Some manual steps are necesary for [developing on a physical iOS Device](#physical-ios-device).
|
|
||||||
|
#### Running on a physical device
|
||||||
|
|
||||||
|
Some manual steps are necessary for [developing on a physical iOS Device](#physical-ios-device).
|
||||||
|
|
||||||
# Build release
|
# Build release
|
||||||
|
|
||||||
|
|||||||
@@ -182,17 +182,6 @@ def build_ios_e2e
|
|||||||
)
|
)
|
||||||
end
|
end
|
||||||
|
|
||||||
def upload_to_diawi(source)
|
|
||||||
diawi(
|
|
||||||
file: source,
|
|
||||||
timeout: 120,
|
|
||||||
check_status_delay: 5,
|
|
||||||
token: ENV['DIAWI_TOKEN']
|
|
||||||
)
|
|
||||||
# save the URL to a file for use in CI
|
|
||||||
File.write('diawi.out', lane_context[SharedValues::UPLOADED_FILE_LINK_TO_DIAWI])
|
|
||||||
end
|
|
||||||
|
|
||||||
platform :ios do
|
platform :ios do
|
||||||
desc '`fastlane ios adhoc` - ad-hoc lane for iOS.'
|
desc '`fastlane ios adhoc` - ad-hoc lane for iOS.'
|
||||||
desc 'This lane is used for PRs, Releases, etc.'
|
desc 'This lane is used for PRs, Releases, etc.'
|
||||||
@@ -256,27 +245,6 @@ platform :ios do
|
|||||||
)
|
)
|
||||||
end
|
end
|
||||||
|
|
||||||
desc '`fastlane ios clean` - remove inactive TestFlight users'
|
|
||||||
lane :clean do
|
|
||||||
clean_testflight_testers(
|
|
||||||
username: ENV['FASTLANE_APPLE_ID'],
|
|
||||||
days_of_inactivity: 30
|
|
||||||
)
|
|
||||||
# In the future we can try using 'oldest_build_allowed'
|
|
||||||
end
|
|
||||||
|
|
||||||
desc '`fastlane ios upload-diawi` - upload .ipa to diawi'
|
|
||||||
desc 'expects to have an .ipa prepared: `status-ios/StatusIm.ipa`'
|
|
||||||
desc 'expects to have a diawi token as DIAWI_TOKEN env variable'
|
|
||||||
desc 'expects to have a github token as GITHUB_TOKEN env variable'
|
|
||||||
desc "will fails if file isn't there"
|
|
||||||
desc '---'
|
|
||||||
desc 'Output: writes `fastlane/diawi.out` file url of the uploded file'
|
|
||||||
lane :upload_diawi do
|
|
||||||
ipa = ENV['DIAWI_IPA'] || 'status-ios/StatusIm.ipa'
|
|
||||||
upload_to_diawi(ipa)
|
|
||||||
end
|
|
||||||
|
|
||||||
desc '`fastlane ios saucelabs` - upload .app to sauce labs'
|
desc '`fastlane ios saucelabs` - upload .app to sauce labs'
|
||||||
desc 'also notifies in a GitHub comments'
|
desc 'also notifies in a GitHub comments'
|
||||||
desc 'expects to have an .apk prepared: `result/app.apk`'
|
desc 'expects to have an .apk prepared: `result/app.apk`'
|
||||||
|
|||||||
@@ -1,7 +1,3 @@
|
|||||||
source 'https://rubygems.org'
|
source 'https://rubygems.org'
|
||||||
|
|
||||||
gem 'fastlane', '>= 2.131.0'
|
gem 'fastlane', '>= 2.131.0'
|
||||||
|
|
||||||
plugins_path = ENV['FASTLANE_PLUGINFILE_PATH'] ||
|
|
||||||
File.join(__dir__, 'Pluginfile')
|
|
||||||
eval_gemfile(plugins_path) if plugins_path
|
|
||||||
|
|||||||
@@ -3,21 +3,21 @@ GEM
|
|||||||
specs:
|
specs:
|
||||||
CFPropertyList (3.0.6)
|
CFPropertyList (3.0.6)
|
||||||
rexml
|
rexml
|
||||||
addressable (2.8.1)
|
addressable (2.8.4)
|
||||||
public_suffix (>= 2.0.2, < 6.0)
|
public_suffix (>= 2.0.2, < 6.0)
|
||||||
artifactory (3.0.15)
|
artifactory (3.0.15)
|
||||||
atomos (0.1.3)
|
atomos (0.1.3)
|
||||||
aws-eventstream (1.2.0)
|
aws-eventstream (1.2.0)
|
||||||
aws-partitions (1.728.0)
|
aws-partitions (1.768.0)
|
||||||
aws-sdk-core (3.170.0)
|
aws-sdk-core (3.173.0)
|
||||||
aws-eventstream (~> 1, >= 1.0.2)
|
aws-eventstream (~> 1, >= 1.0.2)
|
||||||
aws-partitions (~> 1, >= 1.651.0)
|
aws-partitions (~> 1, >= 1.651.0)
|
||||||
aws-sigv4 (~> 1.5)
|
aws-sigv4 (~> 1.5)
|
||||||
jmespath (~> 1, >= 1.6.1)
|
jmespath (~> 1, >= 1.6.1)
|
||||||
aws-sdk-kms (1.63.0)
|
aws-sdk-kms (1.64.0)
|
||||||
aws-sdk-core (~> 3, >= 3.165.0)
|
aws-sdk-core (~> 3, >= 3.165.0)
|
||||||
aws-sigv4 (~> 1.1)
|
aws-sigv4 (~> 1.1)
|
||||||
aws-sdk-s3 (1.119.1)
|
aws-sdk-s3 (1.122.0)
|
||||||
aws-sdk-core (~> 3, >= 3.165.0)
|
aws-sdk-core (~> 3, >= 3.165.0)
|
||||||
aws-sdk-kms (~> 1)
|
aws-sdk-kms (~> 1)
|
||||||
aws-sigv4 (~> 1.4)
|
aws-sigv4 (~> 1.4)
|
||||||
@@ -65,8 +65,8 @@ GEM
|
|||||||
faraday-retry (1.0.3)
|
faraday-retry (1.0.3)
|
||||||
faraday_middleware (1.2.0)
|
faraday_middleware (1.2.0)
|
||||||
faraday (~> 1.0)
|
faraday (~> 1.0)
|
||||||
fastimage (2.2.6)
|
fastimage (2.2.7)
|
||||||
fastlane (2.212.1)
|
fastlane (2.212.2)
|
||||||
CFPropertyList (>= 2.3, < 4.0.0)
|
CFPropertyList (>= 2.3, < 4.0.0)
|
||||||
addressable (>= 2.8, < 3.0.0)
|
addressable (>= 2.8, < 3.0.0)
|
||||||
artifactory (~> 3.0)
|
artifactory (~> 3.0)
|
||||||
@@ -105,11 +105,8 @@ GEM
|
|||||||
xcodeproj (>= 1.13.0, < 2.0.0)
|
xcodeproj (>= 1.13.0, < 2.0.0)
|
||||||
xcpretty (~> 0.3.0)
|
xcpretty (~> 0.3.0)
|
||||||
xcpretty-travis-formatter (>= 0.0.3)
|
xcpretty-travis-formatter (>= 0.0.3)
|
||||||
fastlane-plugin-clean_testflight_testers (0.3.0)
|
|
||||||
fastlane-plugin-diawi (2.1.0)
|
|
||||||
rest-client (>= 2.0.0)
|
|
||||||
gh_inspector (1.1.3)
|
gh_inspector (1.1.3)
|
||||||
google-apis-androidpublisher_v3 (0.36.0)
|
google-apis-androidpublisher_v3 (0.42.0)
|
||||||
google-apis-core (>= 0.11.0, < 2.a)
|
google-apis-core (>= 0.11.0, < 2.a)
|
||||||
google-apis-core (0.11.0)
|
google-apis-core (0.11.0)
|
||||||
addressable (~> 2.5, >= 2.5.1)
|
addressable (~> 2.5, >= 2.5.1)
|
||||||
@@ -140,7 +137,7 @@ GEM
|
|||||||
google-cloud-core (~> 1.6)
|
google-cloud-core (~> 1.6)
|
||||||
googleauth (>= 0.16.2, < 2.a)
|
googleauth (>= 0.16.2, < 2.a)
|
||||||
mini_mime (~> 1.0)
|
mini_mime (~> 1.0)
|
||||||
googleauth (1.3.0)
|
googleauth (1.5.2)
|
||||||
faraday (>= 0.17.3, < 3.a)
|
faraday (>= 0.17.3, < 3.a)
|
||||||
jwt (>= 1.4, < 3.0)
|
jwt (>= 1.4, < 3.0)
|
||||||
memoist (~> 0.16)
|
memoist (~> 0.16)
|
||||||
@@ -148,7 +145,6 @@ GEM
|
|||||||
os (>= 0.9, < 2.0)
|
os (>= 0.9, < 2.0)
|
||||||
signet (>= 0.16, < 2.a)
|
signet (>= 0.16, < 2.a)
|
||||||
highline (2.0.3)
|
highline (2.0.3)
|
||||||
http-accept (1.7.0)
|
|
||||||
http-cookie (1.0.5)
|
http-cookie (1.0.5)
|
||||||
domain_name (~> 0.5)
|
domain_name (~> 0.5)
|
||||||
httpclient (2.8.3)
|
httpclient (2.8.3)
|
||||||
@@ -156,16 +152,12 @@ GEM
|
|||||||
json (2.6.3)
|
json (2.6.3)
|
||||||
jwt (2.7.0)
|
jwt (2.7.0)
|
||||||
memoist (0.16.2)
|
memoist (0.16.2)
|
||||||
mime-types (3.4.1)
|
|
||||||
mime-types-data (~> 3.2015)
|
|
||||||
mime-types-data (3.2023.0218.1)
|
|
||||||
mini_magick (4.12.0)
|
mini_magick (4.12.0)
|
||||||
mini_mime (1.1.2)
|
mini_mime (1.1.2)
|
||||||
multi_json (1.15.0)
|
multi_json (1.15.0)
|
||||||
multipart-post (2.0.0)
|
multipart-post (2.0.0)
|
||||||
nanaimo (0.3.0)
|
nanaimo (0.3.0)
|
||||||
naturally (2.2.1)
|
naturally (2.2.1)
|
||||||
netrc (0.11.0)
|
|
||||||
optparse (0.1.1)
|
optparse (0.1.1)
|
||||||
os (1.1.4)
|
os (1.1.4)
|
||||||
plist (3.7.0)
|
plist (3.7.0)
|
||||||
@@ -175,11 +167,6 @@ GEM
|
|||||||
declarative (< 0.1.0)
|
declarative (< 0.1.0)
|
||||||
trailblazer-option (>= 0.1.1, < 0.2.0)
|
trailblazer-option (>= 0.1.1, < 0.2.0)
|
||||||
uber (< 0.2.0)
|
uber (< 0.2.0)
|
||||||
rest-client (2.1.0)
|
|
||||||
http-accept (>= 1.7.0, < 2.0)
|
|
||||||
http-cookie (>= 1.0.2, < 2.0)
|
|
||||||
mime-types (>= 1.16, < 4.0)
|
|
||||||
netrc (~> 0.8)
|
|
||||||
retriable (3.1.2)
|
retriable (3.1.2)
|
||||||
rexml (3.2.5)
|
rexml (3.2.5)
|
||||||
rouge (2.0.7)
|
rouge (2.0.7)
|
||||||
@@ -226,8 +213,6 @@ PLATFORMS
|
|||||||
|
|
||||||
DEPENDENCIES
|
DEPENDENCIES
|
||||||
fastlane (>= 2.131.0)
|
fastlane (>= 2.131.0)
|
||||||
fastlane-plugin-clean_testflight_testers
|
|
||||||
fastlane-plugin-diawi
|
|
||||||
|
|
||||||
BUNDLED WITH
|
BUNDLED WITH
|
||||||
2.4.6
|
2.3.9
|
||||||
|
|||||||
@@ -1,6 +0,0 @@
|
|||||||
# Autogenerated by fastlane
|
|
||||||
#
|
|
||||||
# Ensure this file is checked in to source control!
|
|
||||||
|
|
||||||
gem 'fastlane-plugin-clean_testflight_testers'
|
|
||||||
gem 'fastlane-plugin-diawi'
|
|
||||||
@@ -24,8 +24,6 @@ let
|
|||||||
|
|
||||||
shellHook = ''
|
shellHook = ''
|
||||||
[ -z "$STATUS_MOBILE_HOME" ] && echo "STATUS_MOBILE_HOME is empty!" && exit 1
|
[ -z "$STATUS_MOBILE_HOME" ] && echo "STATUS_MOBILE_HOME is empty!" && exit 1
|
||||||
|
|
||||||
export FASTLANE_PLUGINFILE_PATH=$STATUS_MOBILE_HOME/fastlane/Pluginfile
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
|
|||||||
@@ -5,10 +5,10 @@
|
|||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "1ypdmpdn20hxp5vwxz3zc04r5xcwqc25qszdlg41h8ghdqbllwmw";
|
sha256 = "15s8van7r2ad3dq6i03l3z4hqnvxcq75a3h72kxvf9an53sqma20";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "2.8.1";
|
version = "2.8.4";
|
||||||
};
|
};
|
||||||
artifactory = {
|
artifactory = {
|
||||||
groups = ["default"];
|
groups = ["default"];
|
||||||
@@ -45,10 +45,10 @@
|
|||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "0q3q19insq5ablmr6ypq033qg1gsar5mdphhp7xg80rd615cnq97";
|
sha256 = "1256rf6zjh3canwr636w7yczbvhh72cpz2fw5ixljbh4fcfkrvlm";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "1.728.0";
|
version = "1.768.0";
|
||||||
};
|
};
|
||||||
aws-sdk-core = {
|
aws-sdk-core = {
|
||||||
dependencies = ["aws-eventstream" "aws-partitions" "aws-sigv4" "jmespath"];
|
dependencies = ["aws-eventstream" "aws-partitions" "aws-sigv4" "jmespath"];
|
||||||
@@ -56,10 +56,10 @@
|
|||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "0zc4zhv2wq7s5p8c9iaplama1lpg2kwldg81j83c8w4xydf1wd2r";
|
sha256 = "10djgbz4k9w3axka8xrhf97h9yh9svi5g5xvncfwnkg6h22w2177";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "3.170.0";
|
version = "3.173.0";
|
||||||
};
|
};
|
||||||
aws-sdk-kms = {
|
aws-sdk-kms = {
|
||||||
dependencies = ["aws-sdk-core" "aws-sigv4"];
|
dependencies = ["aws-sdk-core" "aws-sigv4"];
|
||||||
@@ -67,10 +67,10 @@
|
|||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "0v87zi28dfmrv7bv91yfldccnpd63n295siirbz7wqv1rajn8n02";
|
sha256 = "1bcm0c9f7xy5qj5f0z3gddqslhb2vzrj9smc39pgqyq4jmn5kpj0";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "1.63.0";
|
version = "1.64.0";
|
||||||
};
|
};
|
||||||
aws-sdk-s3 = {
|
aws-sdk-s3 = {
|
||||||
dependencies = ["aws-sdk-core" "aws-sdk-kms" "aws-sigv4"];
|
dependencies = ["aws-sdk-core" "aws-sdk-kms" "aws-sigv4"];
|
||||||
@@ -78,10 +78,10 @@
|
|||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "1rpnlzsl52znhcki13jkwdshgwf51pn26267481f4fa842gr7xgp";
|
sha256 = "01cryf8kfkmlsxb327szcwcagsp7lss5gmk6zxlgap65lv8bc7rx";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "1.119.1";
|
version = "1.122.0";
|
||||||
};
|
};
|
||||||
aws-sigv4 = {
|
aws-sigv4 = {
|
||||||
dependencies = ["aws-eventstream"];
|
dependencies = ["aws-eventstream"];
|
||||||
@@ -357,10 +357,10 @@
|
|||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "0nnggg20za5vamdpkgrxxa32z33d8hf0g2bciswkhqnc6amb3yjr";
|
sha256 = "1pd7pamzhdz2w0fbcvsfn2nyslznvphnwj16zw35g2b28zd2xyzx";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "2.2.6";
|
version = "2.2.7";
|
||||||
};
|
};
|
||||||
fastlane = {
|
fastlane = {
|
||||||
dependencies = ["CFPropertyList" "addressable" "artifactory" "aws-sdk-s3" "babosa" "colored" "commander" "dotenv" "emoji_regex" "excon" "faraday" "faraday-cookie_jar" "faraday_middleware" "fastimage" "gh_inspector" "google-apis-androidpublisher_v3" "google-apis-playcustomapp_v1" "google-cloud-storage" "highline" "json" "jwt" "mini_magick" "multipart-post" "naturally" "optparse" "plist" "rubyzip" "security" "simctl" "terminal-notifier" "terminal-table" "tty-screen" "tty-spinner" "word_wrap" "xcodeproj" "xcpretty" "xcpretty-travis-formatter"];
|
dependencies = ["CFPropertyList" "addressable" "artifactory" "aws-sdk-s3" "babosa" "colored" "commander" "dotenv" "emoji_regex" "excon" "faraday" "faraday-cookie_jar" "faraday_middleware" "fastimage" "gh_inspector" "google-apis-androidpublisher_v3" "google-apis-playcustomapp_v1" "google-cloud-storage" "highline" "json" "jwt" "mini_magick" "multipart-post" "naturally" "optparse" "plist" "rubyzip" "security" "simctl" "terminal-notifier" "terminal-table" "tty-screen" "tty-spinner" "word_wrap" "xcodeproj" "xcpretty" "xcpretty-travis-formatter"];
|
||||||
@@ -368,31 +368,10 @@
|
|||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "0b22m2dkydyv2si55b1jzznzgxf2ycx2aarv1j5p25k861h2gsml";
|
sha256 = "15sa3v3aaslympg9nmadmpxpbzykdiybzxn3navc7mf0iscb3q7s";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "2.212.1";
|
version = "2.212.2";
|
||||||
};
|
|
||||||
fastlane-plugin-clean_testflight_testers = {
|
|
||||||
groups = ["default"];
|
|
||||||
platforms = [];
|
|
||||||
source = {
|
|
||||||
remotes = ["https://rubygems.org"];
|
|
||||||
sha256 = "0qkcjf7xrnki4v94mcgcm3v2f89vq8clwxx1d5ipv0wwm5ri26c9";
|
|
||||||
type = "gem";
|
|
||||||
};
|
|
||||||
version = "0.3.0";
|
|
||||||
};
|
|
||||||
fastlane-plugin-diawi = {
|
|
||||||
dependencies = ["rest-client"];
|
|
||||||
groups = ["default"];
|
|
||||||
platforms = [];
|
|
||||||
source = {
|
|
||||||
remotes = ["https://rubygems.org"];
|
|
||||||
sha256 = "1sjznx9hwlfa7ndv7av870dvl0cvmh68yk381r55ylw4jjvk5mwl";
|
|
||||||
type = "gem";
|
|
||||||
};
|
|
||||||
version = "2.1.0";
|
|
||||||
};
|
};
|
||||||
gh_inspector = {
|
gh_inspector = {
|
||||||
groups = ["default"];
|
groups = ["default"];
|
||||||
@@ -410,10 +389,10 @@
|
|||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "1mbnmn36z1cnsd6ar76p9wvqi0ac6wlpm1p1lqczivain16qma76";
|
sha256 = "0ks2ak4fcvlflhyinykvd88g2ybxwsbc347aww349zhn1mqprbvg";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "0.36.0";
|
version = "0.42.0";
|
||||||
};
|
};
|
||||||
google-apis-core = {
|
google-apis-core = {
|
||||||
dependencies = ["addressable" "googleauth" "httpclient" "mini_mime" "representable" "retriable" "rexml" "webrick"];
|
dependencies = ["addressable" "googleauth" "httpclient" "mini_mime" "representable" "retriable" "rexml" "webrick"];
|
||||||
@@ -508,10 +487,10 @@
|
|||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "1hpwgwhk0lmnknkw8kbdfxn95qqs6aagpq815l5fkw9w6mi77pai";
|
sha256 = "1lj5haarpn7rybbq9s031zcn9ji3rlz5bk64bwa2j34q5s1h5gis";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "1.3.0";
|
version = "1.5.2";
|
||||||
};
|
};
|
||||||
highline = {
|
highline = {
|
||||||
groups = ["default"];
|
groups = ["default"];
|
||||||
@@ -523,16 +502,6 @@
|
|||||||
};
|
};
|
||||||
version = "2.0.3";
|
version = "2.0.3";
|
||||||
};
|
};
|
||||||
http-accept = {
|
|
||||||
groups = ["default"];
|
|
||||||
platforms = [];
|
|
||||||
source = {
|
|
||||||
remotes = ["https://rubygems.org"];
|
|
||||||
sha256 = "09m1facypsdjynfwrcv19xcb1mqg8z6kk31g8r33pfxzh838c9n6";
|
|
||||||
type = "gem";
|
|
||||||
};
|
|
||||||
version = "1.7.0";
|
|
||||||
};
|
|
||||||
http-cookie = {
|
http-cookie = {
|
||||||
dependencies = ["domain_name"];
|
dependencies = ["domain_name"];
|
||||||
groups = ["default"];
|
groups = ["default"];
|
||||||
@@ -594,27 +563,6 @@
|
|||||||
};
|
};
|
||||||
version = "0.16.2";
|
version = "0.16.2";
|
||||||
};
|
};
|
||||||
mime-types = {
|
|
||||||
dependencies = ["mime-types-data"];
|
|
||||||
groups = ["default"];
|
|
||||||
platforms = [];
|
|
||||||
source = {
|
|
||||||
remotes = ["https://rubygems.org"];
|
|
||||||
sha256 = "0ipw892jbksbxxcrlx9g5ljq60qx47pm24ywgfbyjskbcl78pkvb";
|
|
||||||
type = "gem";
|
|
||||||
};
|
|
||||||
version = "3.4.1";
|
|
||||||
};
|
|
||||||
mime-types-data = {
|
|
||||||
groups = ["default"];
|
|
||||||
platforms = [];
|
|
||||||
source = {
|
|
||||||
remotes = ["https://rubygems.org"];
|
|
||||||
sha256 = "1pky3vzaxlgm9gw5wlqwwi7wsw3jrglrfflrppvvnsrlaiz043z9";
|
|
||||||
type = "gem";
|
|
||||||
};
|
|
||||||
version = "3.2023.0218.1";
|
|
||||||
};
|
|
||||||
mini_magick = {
|
mini_magick = {
|
||||||
groups = ["default"];
|
groups = ["default"];
|
||||||
platforms = [];
|
platforms = [];
|
||||||
@@ -675,16 +623,6 @@
|
|||||||
};
|
};
|
||||||
version = "2.2.1";
|
version = "2.2.1";
|
||||||
};
|
};
|
||||||
netrc = {
|
|
||||||
groups = ["default"];
|
|
||||||
platforms = [];
|
|
||||||
source = {
|
|
||||||
remotes = ["https://rubygems.org"];
|
|
||||||
sha256 = "0gzfmcywp1da8nzfqsql2zqi648mfnx6qwkig3cv36n9m0yy676y";
|
|
||||||
type = "gem";
|
|
||||||
};
|
|
||||||
version = "0.11.0";
|
|
||||||
};
|
|
||||||
optparse = {
|
optparse = {
|
||||||
groups = ["default"];
|
groups = ["default"];
|
||||||
platforms = [];
|
platforms = [];
|
||||||
@@ -746,17 +684,6 @@
|
|||||||
};
|
};
|
||||||
version = "3.2.0";
|
version = "3.2.0";
|
||||||
};
|
};
|
||||||
rest-client = {
|
|
||||||
dependencies = ["http-accept" "http-cookie" "mime-types" "netrc"];
|
|
||||||
groups = ["default"];
|
|
||||||
platforms = [];
|
|
||||||
source = {
|
|
||||||
remotes = ["https://rubygems.org"];
|
|
||||||
sha256 = "1qs74yzl58agzx9dgjhcpgmzfn61fqkk33k1js2y5yhlvc5l19im";
|
|
||||||
type = "gem";
|
|
||||||
};
|
|
||||||
version = "2.1.0";
|
|
||||||
};
|
|
||||||
retriable = {
|
retriable = {
|
||||||
groups = ["default"];
|
groups = ["default"];
|
||||||
platforms = [];
|
platforms = [];
|
||||||
|
|||||||
@@ -1,2 +1,2 @@
|
|||||||
import "node-libs-react-native/globals";
|
import "node-libs-react-native/globals";
|
||||||
import "./app/index.js";
|
import "./result/index.js";
|
||||||
|
|||||||
@@ -0,0 +1,12 @@
|
|||||||
|
# This `.xcode.env` file is versioned and is used to source the environment
|
||||||
|
# used when running script phases inside Xcode.
|
||||||
|
# To customize your local environment, you can create an `.xcode.env.local`
|
||||||
|
# file that is not versioned.
|
||||||
|
|
||||||
|
# NODE_BINARY variable contains the PATH to the node executable.
|
||||||
|
#
|
||||||
|
# Customize the NODE_BINARY variable here.
|
||||||
|
# For example, to use nvm with brew, add the following line
|
||||||
|
# . "$(brew --prefix nvm)/nvm.sh" --no-use
|
||||||
|
export NODE_BINARY="${NODE_BINARY:-node}"
|
||||||
|
export NODE_ARGS="${NODE_ARGS:- --max-old-space-size=16384 }"
|
||||||
@@ -1,13 +1,35 @@
|
|||||||
platform :ios, '11.0'
|
|
||||||
|
|
||||||
require_relative '../node_modules/react-native/scripts/react_native_pods'
|
require_relative '../node_modules/react-native/scripts/react_native_pods'
|
||||||
require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'
|
require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'
|
||||||
|
|
||||||
|
platform :ios, '12.4'
|
||||||
|
|
||||||
|
production = ENV["PRODUCTION"] == "1"
|
||||||
|
|
||||||
|
# We need to enable codegen discovery to fix the issue of these files not being generated properly:
|
||||||
|
# ios/build/generated/ios/FBReactNativeSpec/FBReactNativeSpec-generated.mm
|
||||||
|
# ios/build/generated/ios/FBReactNativeSpec/FBReactNativeSpec.h
|
||||||
|
# more details here : https://github.com/status-im/status-mobile/issues/15911
|
||||||
|
# TODO: remove this flag once you upgrade react-native above version 0.70
|
||||||
|
ENV['USE_CODEGEN_DISCOVERY'] = "1"
|
||||||
|
|
||||||
abstract_target 'Status' do
|
abstract_target 'Status' do
|
||||||
# Pods for StatusQuo
|
# Pods for StatusQuo
|
||||||
config = use_native_modules!
|
config = use_native_modules!
|
||||||
|
|
||||||
use_react_native!(:path => config["reactNativePath"])
|
# Flags change depending on the env values.
|
||||||
|
flags = get_default_flags()
|
||||||
|
|
||||||
|
use_react_native!(
|
||||||
|
:path => config[:reactNativePath],
|
||||||
|
# to enable hermes on iOS, change `false` to `true` and then install pods
|
||||||
|
:production => production,
|
||||||
|
:hermes_enabled => flags[:hermes_enabled],
|
||||||
|
:fabric_enabled => flags[:fabric_enabled],
|
||||||
|
:use_codegen_discovery => true,
|
||||||
|
# :flipper_configuration => FlipperConfiguration.enabled,
|
||||||
|
# An absolute path to your application root.
|
||||||
|
:app_path => "#{Pod::Config.instance.installation_root}/.."
|
||||||
|
)
|
||||||
|
|
||||||
pod 'react-native-image-resizer', :path => '../node_modules/react-native-image-resizer'
|
pod 'react-native-image-resizer', :path => '../node_modules/react-native-image-resizer'
|
||||||
pod 'react-native-config', :path => '../node_modules/react-native-config'
|
pod 'react-native-config', :path => '../node_modules/react-native-config'
|
||||||
@@ -35,6 +57,15 @@ abstract_target 'Status' do
|
|||||||
target 'StatusImPR' do
|
target 'StatusImPR' do
|
||||||
end
|
end
|
||||||
|
|
||||||
|
post_install do |installer|
|
||||||
|
# some of libs wouldn't be build for x86_64 otherwise and that is
|
||||||
|
# necessary for ios simulators
|
||||||
|
installer.pods_project.targets.each do |target|
|
||||||
|
target.build_configurations.each do |config|
|
||||||
|
config.build_settings['ONLY_ACTIVE_ARCH'] = 'NO'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
use_native_modules!
|
use_native_modules!
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -1,26 +1,18 @@
|
|||||||
PODS:
|
PODS:
|
||||||
- boost-for-react-native (1.63.0)
|
- boost (1.76.0)
|
||||||
- BVLinearGradient (2.5.6):
|
- BVLinearGradient (2.5.6):
|
||||||
- React
|
- React
|
||||||
- CryptoSwift (1.5.1)
|
- CryptoSwift (1.5.1)
|
||||||
- DoubleConversion (1.1.6)
|
- DoubleConversion (1.1.6)
|
||||||
- FBLazyVector (0.63.5)
|
- FBLazyVector (0.69.10)
|
||||||
- FBReactNativeSpec (0.63.5):
|
- FBReactNativeSpec (0.69.10):
|
||||||
- Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
- RCTRequired (= 0.63.5)
|
- RCTRequired (= 0.69.10)
|
||||||
- RCTTypeSafety (= 0.63.5)
|
- RCTTypeSafety (= 0.69.10)
|
||||||
- React-Core (= 0.63.5)
|
- React-Core (= 0.69.10)
|
||||||
- React-jsi (= 0.63.5)
|
- React-jsi (= 0.69.10)
|
||||||
- ReactCommon/turbomodule/core (= 0.63.5)
|
- ReactCommon/turbomodule/core (= 0.69.10)
|
||||||
- Folly (2020.01.13.00):
|
- fmt (6.2.1)
|
||||||
- boost-for-react-native
|
|
||||||
- DoubleConversion
|
|
||||||
- Folly/Default (= 2020.01.13.00)
|
|
||||||
- glog
|
|
||||||
- Folly/Default (2020.01.13.00):
|
|
||||||
- boost-for-react-native
|
|
||||||
- DoubleConversion
|
|
||||||
- glog
|
|
||||||
- glog (0.3.5)
|
- glog (0.3.5)
|
||||||
- HMSegmentedControl (1.5.6)
|
- HMSegmentedControl (1.5.6)
|
||||||
- Keycard (3.0.6):
|
- Keycard (3.0.6):
|
||||||
@@ -40,185 +32,228 @@ PODS:
|
|||||||
- RNPermissions
|
- RNPermissions
|
||||||
- Permission-Microphone (2.1.5):
|
- Permission-Microphone (2.1.5):
|
||||||
- RNPermissions
|
- RNPermissions
|
||||||
- RCTRequired (0.63.5)
|
- RCT-Folly (2021.06.28.00-v2):
|
||||||
- RCTTypeSafety (0.63.5):
|
- boost
|
||||||
- FBLazyVector (= 0.63.5)
|
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- RCTRequired (= 0.63.5)
|
|
||||||
- React-Core (= 0.63.5)
|
|
||||||
- React (0.63.5):
|
|
||||||
- React-Core (= 0.63.5)
|
|
||||||
- React-Core/DevSupport (= 0.63.5)
|
|
||||||
- React-Core/RCTWebSocket (= 0.63.5)
|
|
||||||
- React-RCTActionSheet (= 0.63.5)
|
|
||||||
- React-RCTAnimation (= 0.63.5)
|
|
||||||
- React-RCTBlob (= 0.63.5)
|
|
||||||
- React-RCTImage (= 0.63.5)
|
|
||||||
- React-RCTLinking (= 0.63.5)
|
|
||||||
- React-RCTNetwork (= 0.63.5)
|
|
||||||
- React-RCTSettings (= 0.63.5)
|
|
||||||
- React-RCTText (= 0.63.5)
|
|
||||||
- React-RCTVibration (= 0.63.5)
|
|
||||||
- React-callinvoker (0.63.5)
|
|
||||||
- React-Core (0.63.5):
|
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
|
||||||
- React-Core/Default (= 0.63.5)
|
|
||||||
- React-cxxreact (= 0.63.5)
|
|
||||||
- React-jsi (= 0.63.5)
|
|
||||||
- React-jsiexecutor (= 0.63.5)
|
|
||||||
- Yoga
|
|
||||||
- React-Core/CoreModulesHeaders (0.63.5):
|
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
|
||||||
- React-Core/Default
|
|
||||||
- React-cxxreact (= 0.63.5)
|
|
||||||
- React-jsi (= 0.63.5)
|
|
||||||
- React-jsiexecutor (= 0.63.5)
|
|
||||||
- Yoga
|
|
||||||
- React-Core/Default (0.63.5):
|
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
|
||||||
- React-cxxreact (= 0.63.5)
|
|
||||||
- React-jsi (= 0.63.5)
|
|
||||||
- React-jsiexecutor (= 0.63.5)
|
|
||||||
- Yoga
|
|
||||||
- React-Core/DevSupport (0.63.5):
|
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
|
||||||
- React-Core/Default (= 0.63.5)
|
|
||||||
- React-Core/RCTWebSocket (= 0.63.5)
|
|
||||||
- React-cxxreact (= 0.63.5)
|
|
||||||
- React-jsi (= 0.63.5)
|
|
||||||
- React-jsiexecutor (= 0.63.5)
|
|
||||||
- React-jsinspector (= 0.63.5)
|
|
||||||
- Yoga
|
|
||||||
- React-Core/RCTActionSheetHeaders (0.63.5):
|
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
|
||||||
- React-Core/Default
|
|
||||||
- React-cxxreact (= 0.63.5)
|
|
||||||
- React-jsi (= 0.63.5)
|
|
||||||
- React-jsiexecutor (= 0.63.5)
|
|
||||||
- Yoga
|
|
||||||
- React-Core/RCTAnimationHeaders (0.63.5):
|
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
|
||||||
- React-Core/Default
|
|
||||||
- React-cxxreact (= 0.63.5)
|
|
||||||
- React-jsi (= 0.63.5)
|
|
||||||
- React-jsiexecutor (= 0.63.5)
|
|
||||||
- Yoga
|
|
||||||
- React-Core/RCTBlobHeaders (0.63.5):
|
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
|
||||||
- React-Core/Default
|
|
||||||
- React-cxxreact (= 0.63.5)
|
|
||||||
- React-jsi (= 0.63.5)
|
|
||||||
- React-jsiexecutor (= 0.63.5)
|
|
||||||
- Yoga
|
|
||||||
- React-Core/RCTImageHeaders (0.63.5):
|
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
|
||||||
- React-Core/Default
|
|
||||||
- React-cxxreact (= 0.63.5)
|
|
||||||
- React-jsi (= 0.63.5)
|
|
||||||
- React-jsiexecutor (= 0.63.5)
|
|
||||||
- Yoga
|
|
||||||
- React-Core/RCTLinkingHeaders (0.63.5):
|
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
|
||||||
- React-Core/Default
|
|
||||||
- React-cxxreact (= 0.63.5)
|
|
||||||
- React-jsi (= 0.63.5)
|
|
||||||
- React-jsiexecutor (= 0.63.5)
|
|
||||||
- Yoga
|
|
||||||
- React-Core/RCTNetworkHeaders (0.63.5):
|
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
|
||||||
- React-Core/Default
|
|
||||||
- React-cxxreact (= 0.63.5)
|
|
||||||
- React-jsi (= 0.63.5)
|
|
||||||
- React-jsiexecutor (= 0.63.5)
|
|
||||||
- Yoga
|
|
||||||
- React-Core/RCTSettingsHeaders (0.63.5):
|
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
|
||||||
- React-Core/Default
|
|
||||||
- React-cxxreact (= 0.63.5)
|
|
||||||
- React-jsi (= 0.63.5)
|
|
||||||
- React-jsiexecutor (= 0.63.5)
|
|
||||||
- Yoga
|
|
||||||
- React-Core/RCTTextHeaders (0.63.5):
|
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
|
||||||
- React-Core/Default
|
|
||||||
- React-cxxreact (= 0.63.5)
|
|
||||||
- React-jsi (= 0.63.5)
|
|
||||||
- React-jsiexecutor (= 0.63.5)
|
|
||||||
- Yoga
|
|
||||||
- React-Core/RCTVibrationHeaders (0.63.5):
|
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
|
||||||
- React-Core/Default
|
|
||||||
- React-cxxreact (= 0.63.5)
|
|
||||||
- React-jsi (= 0.63.5)
|
|
||||||
- React-jsiexecutor (= 0.63.5)
|
|
||||||
- Yoga
|
|
||||||
- React-Core/RCTWebSocket (0.63.5):
|
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
|
||||||
- React-Core/Default (= 0.63.5)
|
|
||||||
- React-cxxreact (= 0.63.5)
|
|
||||||
- React-jsi (= 0.63.5)
|
|
||||||
- React-jsiexecutor (= 0.63.5)
|
|
||||||
- Yoga
|
|
||||||
- React-CoreModules (0.63.5):
|
|
||||||
- FBReactNativeSpec (= 0.63.5)
|
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- RCTTypeSafety (= 0.63.5)
|
|
||||||
- React-Core/CoreModulesHeaders (= 0.63.5)
|
|
||||||
- React-jsi (= 0.63.5)
|
|
||||||
- React-RCTImage (= 0.63.5)
|
|
||||||
- ReactCommon/turbomodule/core (= 0.63.5)
|
|
||||||
- React-cxxreact (0.63.5):
|
|
||||||
- boost-for-react-native (= 1.63.0)
|
|
||||||
- DoubleConversion
|
- DoubleConversion
|
||||||
- Folly (= 2020.01.13.00)
|
- fmt (~> 6.2.1)
|
||||||
- glog
|
- glog
|
||||||
- React-callinvoker (= 0.63.5)
|
- RCT-Folly/Default (= 2021.06.28.00-v2)
|
||||||
- React-jsinspector (= 0.63.5)
|
- RCT-Folly/Default (2021.06.28.00-v2):
|
||||||
- React-jsi (0.63.5):
|
- boost
|
||||||
- boost-for-react-native (= 1.63.0)
|
|
||||||
- DoubleConversion
|
- DoubleConversion
|
||||||
- Folly (= 2020.01.13.00)
|
- fmt (~> 6.2.1)
|
||||||
- glog
|
- glog
|
||||||
- React-jsi/Default (= 0.63.5)
|
- RCTRequired (0.69.10)
|
||||||
- React-jsi/Default (0.63.5):
|
- RCTTypeSafety (0.69.10):
|
||||||
- boost-for-react-native (= 1.63.0)
|
- FBLazyVector (= 0.69.10)
|
||||||
|
- RCTRequired (= 0.69.10)
|
||||||
|
- React-Core (= 0.69.10)
|
||||||
|
- React (0.69.10):
|
||||||
|
- React-Core (= 0.69.10)
|
||||||
|
- React-Core/DevSupport (= 0.69.10)
|
||||||
|
- React-Core/RCTWebSocket (= 0.69.10)
|
||||||
|
- React-RCTActionSheet (= 0.69.10)
|
||||||
|
- React-RCTAnimation (= 0.69.10)
|
||||||
|
- React-RCTBlob (= 0.69.10)
|
||||||
|
- React-RCTImage (= 0.69.10)
|
||||||
|
- React-RCTLinking (= 0.69.10)
|
||||||
|
- React-RCTNetwork (= 0.69.10)
|
||||||
|
- React-RCTSettings (= 0.69.10)
|
||||||
|
- React-RCTText (= 0.69.10)
|
||||||
|
- React-RCTVibration (= 0.69.10)
|
||||||
|
- React-bridging (0.69.10):
|
||||||
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
|
- React-jsi (= 0.69.10)
|
||||||
|
- React-callinvoker (0.69.10)
|
||||||
|
- React-Codegen (0.69.10):
|
||||||
|
- FBReactNativeSpec (= 0.69.10)
|
||||||
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
|
- RCTRequired (= 0.69.10)
|
||||||
|
- RCTTypeSafety (= 0.69.10)
|
||||||
|
- React-Core (= 0.69.10)
|
||||||
|
- React-jsi (= 0.69.10)
|
||||||
|
- React-jsiexecutor (= 0.69.10)
|
||||||
|
- ReactCommon/turbomodule/core (= 0.69.10)
|
||||||
|
- React-Core (0.69.10):
|
||||||
|
- glog
|
||||||
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
|
- React-Core/Default (= 0.69.10)
|
||||||
|
- React-cxxreact (= 0.69.10)
|
||||||
|
- React-jsi (= 0.69.10)
|
||||||
|
- React-jsiexecutor (= 0.69.10)
|
||||||
|
- React-perflogger (= 0.69.10)
|
||||||
|
- Yoga
|
||||||
|
- React-Core/CoreModulesHeaders (0.69.10):
|
||||||
|
- glog
|
||||||
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
|
- React-Core/Default
|
||||||
|
- React-cxxreact (= 0.69.10)
|
||||||
|
- React-jsi (= 0.69.10)
|
||||||
|
- React-jsiexecutor (= 0.69.10)
|
||||||
|
- React-perflogger (= 0.69.10)
|
||||||
|
- Yoga
|
||||||
|
- React-Core/Default (0.69.10):
|
||||||
|
- glog
|
||||||
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
|
- React-cxxreact (= 0.69.10)
|
||||||
|
- React-jsi (= 0.69.10)
|
||||||
|
- React-jsiexecutor (= 0.69.10)
|
||||||
|
- React-perflogger (= 0.69.10)
|
||||||
|
- Yoga
|
||||||
|
- React-Core/DevSupport (0.69.10):
|
||||||
|
- glog
|
||||||
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
|
- React-Core/Default (= 0.69.10)
|
||||||
|
- React-Core/RCTWebSocket (= 0.69.10)
|
||||||
|
- React-cxxreact (= 0.69.10)
|
||||||
|
- React-jsi (= 0.69.10)
|
||||||
|
- React-jsiexecutor (= 0.69.10)
|
||||||
|
- React-jsinspector (= 0.69.10)
|
||||||
|
- React-perflogger (= 0.69.10)
|
||||||
|
- Yoga
|
||||||
|
- React-Core/RCTActionSheetHeaders (0.69.10):
|
||||||
|
- glog
|
||||||
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
|
- React-Core/Default
|
||||||
|
- React-cxxreact (= 0.69.10)
|
||||||
|
- React-jsi (= 0.69.10)
|
||||||
|
- React-jsiexecutor (= 0.69.10)
|
||||||
|
- React-perflogger (= 0.69.10)
|
||||||
|
- Yoga
|
||||||
|
- React-Core/RCTAnimationHeaders (0.69.10):
|
||||||
|
- glog
|
||||||
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
|
- React-Core/Default
|
||||||
|
- React-cxxreact (= 0.69.10)
|
||||||
|
- React-jsi (= 0.69.10)
|
||||||
|
- React-jsiexecutor (= 0.69.10)
|
||||||
|
- React-perflogger (= 0.69.10)
|
||||||
|
- Yoga
|
||||||
|
- React-Core/RCTBlobHeaders (0.69.10):
|
||||||
|
- glog
|
||||||
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
|
- React-Core/Default
|
||||||
|
- React-cxxreact (= 0.69.10)
|
||||||
|
- React-jsi (= 0.69.10)
|
||||||
|
- React-jsiexecutor (= 0.69.10)
|
||||||
|
- React-perflogger (= 0.69.10)
|
||||||
|
- Yoga
|
||||||
|
- React-Core/RCTImageHeaders (0.69.10):
|
||||||
|
- glog
|
||||||
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
|
- React-Core/Default
|
||||||
|
- React-cxxreact (= 0.69.10)
|
||||||
|
- React-jsi (= 0.69.10)
|
||||||
|
- React-jsiexecutor (= 0.69.10)
|
||||||
|
- React-perflogger (= 0.69.10)
|
||||||
|
- Yoga
|
||||||
|
- React-Core/RCTLinkingHeaders (0.69.10):
|
||||||
|
- glog
|
||||||
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
|
- React-Core/Default
|
||||||
|
- React-cxxreact (= 0.69.10)
|
||||||
|
- React-jsi (= 0.69.10)
|
||||||
|
- React-jsiexecutor (= 0.69.10)
|
||||||
|
- React-perflogger (= 0.69.10)
|
||||||
|
- Yoga
|
||||||
|
- React-Core/RCTNetworkHeaders (0.69.10):
|
||||||
|
- glog
|
||||||
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
|
- React-Core/Default
|
||||||
|
- React-cxxreact (= 0.69.10)
|
||||||
|
- React-jsi (= 0.69.10)
|
||||||
|
- React-jsiexecutor (= 0.69.10)
|
||||||
|
- React-perflogger (= 0.69.10)
|
||||||
|
- Yoga
|
||||||
|
- React-Core/RCTSettingsHeaders (0.69.10):
|
||||||
|
- glog
|
||||||
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
|
- React-Core/Default
|
||||||
|
- React-cxxreact (= 0.69.10)
|
||||||
|
- React-jsi (= 0.69.10)
|
||||||
|
- React-jsiexecutor (= 0.69.10)
|
||||||
|
- React-perflogger (= 0.69.10)
|
||||||
|
- Yoga
|
||||||
|
- React-Core/RCTTextHeaders (0.69.10):
|
||||||
|
- glog
|
||||||
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
|
- React-Core/Default
|
||||||
|
- React-cxxreact (= 0.69.10)
|
||||||
|
- React-jsi (= 0.69.10)
|
||||||
|
- React-jsiexecutor (= 0.69.10)
|
||||||
|
- React-perflogger (= 0.69.10)
|
||||||
|
- Yoga
|
||||||
|
- React-Core/RCTVibrationHeaders (0.69.10):
|
||||||
|
- glog
|
||||||
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
|
- React-Core/Default
|
||||||
|
- React-cxxreact (= 0.69.10)
|
||||||
|
- React-jsi (= 0.69.10)
|
||||||
|
- React-jsiexecutor (= 0.69.10)
|
||||||
|
- React-perflogger (= 0.69.10)
|
||||||
|
- Yoga
|
||||||
|
- React-Core/RCTWebSocket (0.69.10):
|
||||||
|
- glog
|
||||||
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
|
- React-Core/Default (= 0.69.10)
|
||||||
|
- React-cxxreact (= 0.69.10)
|
||||||
|
- React-jsi (= 0.69.10)
|
||||||
|
- React-jsiexecutor (= 0.69.10)
|
||||||
|
- React-perflogger (= 0.69.10)
|
||||||
|
- Yoga
|
||||||
|
- React-CoreModules (0.69.10):
|
||||||
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
|
- RCTTypeSafety (= 0.69.10)
|
||||||
|
- React-Codegen (= 0.69.10)
|
||||||
|
- React-Core/CoreModulesHeaders (= 0.69.10)
|
||||||
|
- React-jsi (= 0.69.10)
|
||||||
|
- React-RCTImage (= 0.69.10)
|
||||||
|
- ReactCommon/turbomodule/core (= 0.69.10)
|
||||||
|
- React-cxxreact (0.69.10):
|
||||||
|
- boost (= 1.76.0)
|
||||||
- DoubleConversion
|
- DoubleConversion
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
- glog
|
||||||
- React-jsiexecutor (0.63.5):
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
|
- React-callinvoker (= 0.69.10)
|
||||||
|
- React-jsi (= 0.69.10)
|
||||||
|
- React-jsinspector (= 0.69.10)
|
||||||
|
- React-logger (= 0.69.10)
|
||||||
|
- React-perflogger (= 0.69.10)
|
||||||
|
- React-runtimeexecutor (= 0.69.10)
|
||||||
|
- React-jsi (0.69.10):
|
||||||
|
- boost (= 1.76.0)
|
||||||
- DoubleConversion
|
- DoubleConversion
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
- glog
|
||||||
- React-cxxreact (= 0.63.5)
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
- React-jsi (= 0.63.5)
|
- React-jsi/Default (= 0.69.10)
|
||||||
- React-jsinspector (0.63.5)
|
- React-jsi/Default (0.69.10):
|
||||||
|
- boost (= 1.76.0)
|
||||||
|
- DoubleConversion
|
||||||
|
- glog
|
||||||
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
|
- React-jsiexecutor (0.69.10):
|
||||||
|
- DoubleConversion
|
||||||
|
- glog
|
||||||
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
|
- React-cxxreact (= 0.69.10)
|
||||||
|
- React-jsi (= 0.69.10)
|
||||||
|
- React-perflogger (= 0.69.10)
|
||||||
|
- React-jsinspector (0.69.10)
|
||||||
|
- React-logger (0.69.10):
|
||||||
|
- glog
|
||||||
- react-native-background-timer (2.2.0):
|
- react-native-background-timer (2.2.0):
|
||||||
- React
|
- React
|
||||||
- react-native-blob-util (0.13.18):
|
- react-native-blob-util (0.13.18):
|
||||||
- React-Core
|
- React-Core
|
||||||
- react-native-blur (4.3.0):
|
- react-native-blur (4.3.3):
|
||||||
- React-Core
|
- React-Core
|
||||||
- react-native-camera-kit (8.0.4):
|
- react-native-camera-kit (8.0.4):
|
||||||
- React
|
- React
|
||||||
- react-native-cameraroll (4.0.4):
|
- react-native-cameraroll (4.0.4):
|
||||||
- React-Core
|
- React-Core
|
||||||
- react-native-config (1.4.2):
|
- react-native-config (1.5.0):
|
||||||
- react-native-config/App (= 1.4.2)
|
- react-native-config/App (= 1.5.0)
|
||||||
- react-native-config/App (1.4.2):
|
- react-native-config/App (1.5.0):
|
||||||
- React-Core
|
- React-Core
|
||||||
- react-native-image-resizer (1.2.3):
|
- react-native-image-resizer (1.2.3):
|
||||||
- React
|
- React
|
||||||
@@ -232,8 +267,6 @@ PODS:
|
|||||||
- React-Core
|
- React-Core
|
||||||
- react-native-randombytes (3.6.1):
|
- react-native-randombytes (3.6.1):
|
||||||
- React-Core
|
- React-Core
|
||||||
- react-native-safe-area-context (2.0.0):
|
|
||||||
- React
|
|
||||||
- react-native-shake (3.4.0):
|
- react-native-shake (3.4.0):
|
||||||
- React
|
- React
|
||||||
- react-native-slider (3.0.0):
|
- react-native-slider (3.0.0):
|
||||||
@@ -243,68 +276,76 @@ PODS:
|
|||||||
- react-native-status-keycard (2.5.39):
|
- react-native-status-keycard (2.5.39):
|
||||||
- Keycard
|
- Keycard
|
||||||
- React
|
- React
|
||||||
|
- react-native-transparent-video (0.1.0):
|
||||||
|
- React-Core
|
||||||
- react-native-webview (11.16.0):
|
- react-native-webview (11.16.0):
|
||||||
- React-Core
|
- React-Core
|
||||||
- React-RCTActionSheet (0.63.5):
|
- React-perflogger (0.69.10)
|
||||||
- React-Core/RCTActionSheetHeaders (= 0.63.5)
|
- React-RCTActionSheet (0.69.10):
|
||||||
- React-RCTAnimation (0.63.5):
|
- React-Core/RCTActionSheetHeaders (= 0.69.10)
|
||||||
- FBReactNativeSpec (= 0.63.5)
|
- React-RCTAnimation (0.69.10):
|
||||||
- Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
- RCTTypeSafety (= 0.63.5)
|
- RCTTypeSafety (= 0.69.10)
|
||||||
- React-Core/RCTAnimationHeaders (= 0.63.5)
|
- React-Codegen (= 0.69.10)
|
||||||
- React-jsi (= 0.63.5)
|
- React-Core/RCTAnimationHeaders (= 0.69.10)
|
||||||
- ReactCommon/turbomodule/core (= 0.63.5)
|
- React-jsi (= 0.69.10)
|
||||||
- React-RCTBlob (0.63.5):
|
- ReactCommon/turbomodule/core (= 0.69.10)
|
||||||
- FBReactNativeSpec (= 0.63.5)
|
- React-RCTBlob (0.69.10):
|
||||||
- Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
- React-Core/RCTBlobHeaders (= 0.63.5)
|
- React-Codegen (= 0.69.10)
|
||||||
- React-Core/RCTWebSocket (= 0.63.5)
|
- React-Core/RCTBlobHeaders (= 0.69.10)
|
||||||
- React-jsi (= 0.63.5)
|
- React-Core/RCTWebSocket (= 0.69.10)
|
||||||
- React-RCTNetwork (= 0.63.5)
|
- React-jsi (= 0.69.10)
|
||||||
- ReactCommon/turbomodule/core (= 0.63.5)
|
- React-RCTNetwork (= 0.69.10)
|
||||||
- React-RCTImage (0.63.5):
|
- ReactCommon/turbomodule/core (= 0.69.10)
|
||||||
- FBReactNativeSpec (= 0.63.5)
|
- React-RCTImage (0.69.10):
|
||||||
- Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
- RCTTypeSafety (= 0.63.5)
|
- RCTTypeSafety (= 0.69.10)
|
||||||
- React-Core/RCTImageHeaders (= 0.63.5)
|
- React-Codegen (= 0.69.10)
|
||||||
- React-jsi (= 0.63.5)
|
- React-Core/RCTImageHeaders (= 0.69.10)
|
||||||
- React-RCTNetwork (= 0.63.5)
|
- React-jsi (= 0.69.10)
|
||||||
- ReactCommon/turbomodule/core (= 0.63.5)
|
- React-RCTNetwork (= 0.69.10)
|
||||||
- React-RCTLinking (0.63.5):
|
- ReactCommon/turbomodule/core (= 0.69.10)
|
||||||
- FBReactNativeSpec (= 0.63.5)
|
- React-RCTLinking (0.69.10):
|
||||||
- React-Core/RCTLinkingHeaders (= 0.63.5)
|
- React-Codegen (= 0.69.10)
|
||||||
- React-jsi (= 0.63.5)
|
- React-Core/RCTLinkingHeaders (= 0.69.10)
|
||||||
- ReactCommon/turbomodule/core (= 0.63.5)
|
- React-jsi (= 0.69.10)
|
||||||
- React-RCTNetwork (0.63.5):
|
- ReactCommon/turbomodule/core (= 0.69.10)
|
||||||
- FBReactNativeSpec (= 0.63.5)
|
- React-RCTNetwork (0.69.10):
|
||||||
- Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
- RCTTypeSafety (= 0.63.5)
|
- RCTTypeSafety (= 0.69.10)
|
||||||
- React-Core/RCTNetworkHeaders (= 0.63.5)
|
- React-Codegen (= 0.69.10)
|
||||||
- React-jsi (= 0.63.5)
|
- React-Core/RCTNetworkHeaders (= 0.69.10)
|
||||||
- ReactCommon/turbomodule/core (= 0.63.5)
|
- React-jsi (= 0.69.10)
|
||||||
- React-RCTSettings (0.63.5):
|
- ReactCommon/turbomodule/core (= 0.69.10)
|
||||||
- FBReactNativeSpec (= 0.63.5)
|
- React-RCTSettings (0.69.10):
|
||||||
- Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
- RCTTypeSafety (= 0.63.5)
|
- RCTTypeSafety (= 0.69.10)
|
||||||
- React-Core/RCTSettingsHeaders (= 0.63.5)
|
- React-Codegen (= 0.69.10)
|
||||||
- React-jsi (= 0.63.5)
|
- React-Core/RCTSettingsHeaders (= 0.69.10)
|
||||||
- ReactCommon/turbomodule/core (= 0.63.5)
|
- React-jsi (= 0.69.10)
|
||||||
- React-RCTText (0.63.5):
|
- ReactCommon/turbomodule/core (= 0.69.10)
|
||||||
- React-Core/RCTTextHeaders (= 0.63.5)
|
- React-RCTText (0.69.10):
|
||||||
- React-RCTVibration (0.63.5):
|
- React-Core/RCTTextHeaders (= 0.69.10)
|
||||||
- FBReactNativeSpec (= 0.63.5)
|
- React-RCTVibration (0.69.10):
|
||||||
- Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
- React-Core/RCTVibrationHeaders (= 0.63.5)
|
- React-Codegen (= 0.69.10)
|
||||||
- React-jsi (= 0.63.5)
|
- React-Core/RCTVibrationHeaders (= 0.69.10)
|
||||||
- ReactCommon/turbomodule/core (= 0.63.5)
|
- React-jsi (= 0.69.10)
|
||||||
- ReactCommon/turbomodule/core (0.63.5):
|
- ReactCommon/turbomodule/core (= 0.69.10)
|
||||||
|
- React-runtimeexecutor (0.69.10):
|
||||||
|
- React-jsi (= 0.69.10)
|
||||||
|
- ReactCommon/turbomodule/core (0.69.10):
|
||||||
- DoubleConversion
|
- DoubleConversion
|
||||||
- Folly (= 2020.01.13.00)
|
|
||||||
- glog
|
- glog
|
||||||
- React-callinvoker (= 0.63.5)
|
- RCT-Folly (= 2021.06.28.00-v2)
|
||||||
- React-Core (= 0.63.5)
|
- React-bridging (= 0.69.10)
|
||||||
- React-cxxreact (= 0.63.5)
|
- React-callinvoker (= 0.69.10)
|
||||||
- React-jsi (= 0.63.5)
|
- React-Core (= 0.69.10)
|
||||||
|
- React-cxxreact (= 0.69.10)
|
||||||
|
- React-jsi (= 0.69.10)
|
||||||
|
- React-logger (= 0.69.10)
|
||||||
|
- React-perflogger (= 0.69.10)
|
||||||
- ReactNativeAudioToolkit (2.0.3):
|
- ReactNativeAudioToolkit (2.0.3):
|
||||||
- React
|
- React
|
||||||
- ReactNativeNavigation (7.27.1):
|
- ReactNativeNavigation (7.27.1):
|
||||||
@@ -332,7 +373,7 @@ PODS:
|
|||||||
- SDWebImageWebPCoder (~> 0.8.4)
|
- SDWebImageWebPCoder (~> 0.8.4)
|
||||||
- RNFS (2.16.6):
|
- RNFS (2.16.6):
|
||||||
- React
|
- React
|
||||||
- RNGestureHandler (2.5.0):
|
- RNGestureHandler (2.6.1):
|
||||||
- React-Core
|
- React-Core
|
||||||
- RNHoleView (2.1.1):
|
- RNHoleView (2.1.1):
|
||||||
- React-Core
|
- React-Core
|
||||||
@@ -353,15 +394,14 @@ PODS:
|
|||||||
- React
|
- React
|
||||||
- RNReactNativeHapticFeedback (1.9.0):
|
- RNReactNativeHapticFeedback (1.9.0):
|
||||||
- React
|
- React
|
||||||
- RNReanimated (2.3.3):
|
- RNReanimated (2.11.0):
|
||||||
- DoubleConversion
|
- DoubleConversion
|
||||||
- FBLazyVector
|
- FBLazyVector
|
||||||
- FBReactNativeSpec
|
- FBReactNativeSpec
|
||||||
- Folly
|
|
||||||
- glog
|
- glog
|
||||||
|
- RCT-Folly
|
||||||
- RCTRequired
|
- RCTRequired
|
||||||
- RCTTypeSafety
|
- RCTTypeSafety
|
||||||
- React
|
|
||||||
- React-callinvoker
|
- React-callinvoker
|
||||||
- React-Core
|
- React-Core
|
||||||
- React-Core/DevSupport
|
- React-Core/DevSupport
|
||||||
@@ -383,6 +423,8 @@ PODS:
|
|||||||
- Yoga
|
- Yoga
|
||||||
- RNShare (7.0.1):
|
- RNShare (7.0.1):
|
||||||
- React-Core
|
- React-Core
|
||||||
|
- RNStaticSafeAreaInsets (2.2.0):
|
||||||
|
- React-Core
|
||||||
- RNSVG (9.13.6):
|
- RNSVG (9.13.6):
|
||||||
- React
|
- React
|
||||||
- SDWebImage (5.11.1):
|
- SDWebImage (5.11.1):
|
||||||
@@ -404,27 +446,30 @@ PODS:
|
|||||||
- Yoga (1.14.0)
|
- Yoga (1.14.0)
|
||||||
|
|
||||||
DEPENDENCIES:
|
DEPENDENCIES:
|
||||||
|
- boost (from `../node_modules/react-native/third-party-podspecs/boost.podspec`)
|
||||||
- BVLinearGradient (from `../node_modules/react-native-linear-gradient`)
|
- BVLinearGradient (from `../node_modules/react-native-linear-gradient`)
|
||||||
- DoubleConversion (from `../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`)
|
- DoubleConversion (from `../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`)
|
||||||
- FBLazyVector (from `../node_modules/react-native/Libraries/FBLazyVector`)
|
- FBLazyVector (from `../node_modules/react-native/Libraries/FBLazyVector`)
|
||||||
- FBReactNativeSpec (from `../node_modules/react-native/Libraries/FBReactNativeSpec`)
|
- FBReactNativeSpec (from `../node_modules/react-native/React/FBReactNativeSpec`)
|
||||||
- Folly (from `../node_modules/react-native/third-party-podspecs/Folly.podspec`)
|
|
||||||
- glog (from `../node_modules/react-native/third-party-podspecs/glog.podspec`)
|
- glog (from `../node_modules/react-native/third-party-podspecs/glog.podspec`)
|
||||||
- Keycard (from `https://github.com/status-im/Keycard.swift.git`)
|
- Keycard (from `https://github.com/status-im/Keycard.swift.git`)
|
||||||
- Permission-Camera (from `../node_modules/react-native-permissions/ios/Camera.podspec`)
|
- Permission-Camera (from `../node_modules/react-native-permissions/ios/Camera.podspec`)
|
||||||
- Permission-Microphone (from `../node_modules/react-native-permissions/ios/Microphone.podspec`)
|
- Permission-Microphone (from `../node_modules/react-native-permissions/ios/Microphone.podspec`)
|
||||||
|
- RCT-Folly (from `../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`)
|
||||||
- RCTRequired (from `../node_modules/react-native/Libraries/RCTRequired`)
|
- RCTRequired (from `../node_modules/react-native/Libraries/RCTRequired`)
|
||||||
- RCTTypeSafety (from `../node_modules/react-native/Libraries/TypeSafety`)
|
- RCTTypeSafety (from `../node_modules/react-native/Libraries/TypeSafety`)
|
||||||
- React (from `../node_modules/react-native/`)
|
- React (from `../node_modules/react-native/`)
|
||||||
|
- React-bridging (from `../node_modules/react-native/ReactCommon`)
|
||||||
- React-callinvoker (from `../node_modules/react-native/ReactCommon/callinvoker`)
|
- React-callinvoker (from `../node_modules/react-native/ReactCommon/callinvoker`)
|
||||||
|
- React-Codegen (from `build/generated/ios`)
|
||||||
- React-Core (from `../node_modules/react-native/`)
|
- React-Core (from `../node_modules/react-native/`)
|
||||||
- React-Core/DevSupport (from `../node_modules/react-native/`)
|
|
||||||
- React-Core/RCTWebSocket (from `../node_modules/react-native/`)
|
- React-Core/RCTWebSocket (from `../node_modules/react-native/`)
|
||||||
- React-CoreModules (from `../node_modules/react-native/React/CoreModules`)
|
- React-CoreModules (from `../node_modules/react-native/React/CoreModules`)
|
||||||
- React-cxxreact (from `../node_modules/react-native/ReactCommon/cxxreact`)
|
- React-cxxreact (from `../node_modules/react-native/ReactCommon/cxxreact`)
|
||||||
- React-jsi (from `../node_modules/react-native/ReactCommon/jsi`)
|
- React-jsi (from `../node_modules/react-native/ReactCommon/jsi`)
|
||||||
- React-jsiexecutor (from `../node_modules/react-native/ReactCommon/jsiexecutor`)
|
- React-jsiexecutor (from `../node_modules/react-native/ReactCommon/jsiexecutor`)
|
||||||
- React-jsinspector (from `../node_modules/react-native/ReactCommon/jsinspector`)
|
- React-jsinspector (from `../node_modules/react-native/ReactCommon/jsinspector`)
|
||||||
|
- React-logger (from `../node_modules/react-native/ReactCommon/logger`)
|
||||||
- react-native-background-timer (from `../node_modules/react-native-background-timer`)
|
- react-native-background-timer (from `../node_modules/react-native-background-timer`)
|
||||||
- react-native-blob-util (from `../node_modules/react-native-blob-util`)
|
- react-native-blob-util (from `../node_modules/react-native-blob-util`)
|
||||||
- "react-native-blur (from `../node_modules/@react-native-community/blur`)"
|
- "react-native-blur (from `../node_modules/@react-native-community/blur`)"
|
||||||
@@ -437,12 +482,13 @@ DEPENDENCIES:
|
|||||||
- "react-native-netinfo (from `../node_modules/@react-native-community/netinfo`)"
|
- "react-native-netinfo (from `../node_modules/@react-native-community/netinfo`)"
|
||||||
- react-native-orientation-locker (from `../node_modules/react-native-orientation-locker`)
|
- react-native-orientation-locker (from `../node_modules/react-native-orientation-locker`)
|
||||||
- react-native-randombytes (from `../node_modules/react-native-randombytes`)
|
- react-native-randombytes (from `../node_modules/react-native-randombytes`)
|
||||||
- react-native-safe-area-context (from `../node_modules/react-native-safe-area-context`)
|
|
||||||
- react-native-shake (from `../node_modules/react-native-shake`)
|
- react-native-shake (from `../node_modules/react-native-shake`)
|
||||||
- "react-native-slider (from `../node_modules/@react-native-community/slider`)"
|
- "react-native-slider (from `../node_modules/@react-native-community/slider`)"
|
||||||
- react-native-status (from `../modules/react-native-status`)
|
- react-native-status (from `../modules/react-native-status`)
|
||||||
- react-native-status-keycard (from `../node_modules/react-native-status-keycard`)
|
- react-native-status-keycard (from `../node_modules/react-native-status-keycard`)
|
||||||
|
- react-native-transparent-video (from `../node_modules/react-native-transparent-video`)
|
||||||
- react-native-webview (from `../node_modules/react-native-webview`)
|
- react-native-webview (from `../node_modules/react-native-webview`)
|
||||||
|
- React-perflogger (from `../node_modules/react-native/ReactCommon/reactperflogger`)
|
||||||
- React-RCTActionSheet (from `../node_modules/react-native/Libraries/ActionSheetIOS`)
|
- React-RCTActionSheet (from `../node_modules/react-native/Libraries/ActionSheetIOS`)
|
||||||
- React-RCTAnimation (from `../node_modules/react-native/Libraries/NativeAnimation`)
|
- React-RCTAnimation (from `../node_modules/react-native/Libraries/NativeAnimation`)
|
||||||
- React-RCTBlob (from `../node_modules/react-native/Libraries/Blob`)
|
- React-RCTBlob (from `../node_modules/react-native/Libraries/Blob`)
|
||||||
@@ -452,6 +498,7 @@ DEPENDENCIES:
|
|||||||
- React-RCTSettings (from `../node_modules/react-native/Libraries/Settings`)
|
- React-RCTSettings (from `../node_modules/react-native/Libraries/Settings`)
|
||||||
- React-RCTText (from `../node_modules/react-native/Libraries/Text`)
|
- React-RCTText (from `../node_modules/react-native/Libraries/Text`)
|
||||||
- React-RCTVibration (from `../node_modules/react-native/Libraries/Vibration`)
|
- React-RCTVibration (from `../node_modules/react-native/Libraries/Vibration`)
|
||||||
|
- React-runtimeexecutor (from `../node_modules/react-native/ReactCommon/runtimeexecutor`)
|
||||||
- ReactCommon/turbomodule/core (from `../node_modules/react-native/ReactCommon`)
|
- ReactCommon/turbomodule/core (from `../node_modules/react-native/ReactCommon`)
|
||||||
- "ReactNativeAudioToolkit (from `../node_modules/@react-native-community/audio-toolkit`)"
|
- "ReactNativeAudioToolkit (from `../node_modules/@react-native-community/audio-toolkit`)"
|
||||||
- ReactNativeNavigation (from `../node_modules/react-native-navigation`)
|
- ReactNativeNavigation (from `../node_modules/react-native-navigation`)
|
||||||
@@ -470,6 +517,7 @@ DEPENDENCIES:
|
|||||||
- RNReactNativeHapticFeedback (from `../node_modules/react-native-haptic-feedback`)
|
- RNReactNativeHapticFeedback (from `../node_modules/react-native-haptic-feedback`)
|
||||||
- RNReanimated (from `../node_modules/react-native-reanimated`)
|
- RNReanimated (from `../node_modules/react-native-reanimated`)
|
||||||
- RNShare (from `../node_modules/react-native-share`)
|
- RNShare (from `../node_modules/react-native-share`)
|
||||||
|
- RNStaticSafeAreaInsets (from `../node_modules/react-native-static-safe-area-insets`)
|
||||||
- RNSVG (from `../node_modules/react-native-svg`)
|
- RNSVG (from `../node_modules/react-native-svg`)
|
||||||
- secp256k1 (from `https://github.com/status-im/secp256k1.swift.git`)
|
- secp256k1 (from `https://github.com/status-im/secp256k1.swift.git`)
|
||||||
- SQLCipher (~> 3.0)
|
- SQLCipher (~> 3.0)
|
||||||
@@ -479,8 +527,8 @@ DEPENDENCIES:
|
|||||||
|
|
||||||
SPEC REPOS:
|
SPEC REPOS:
|
||||||
trunk:
|
trunk:
|
||||||
- boost-for-react-native
|
|
||||||
- CryptoSwift
|
- CryptoSwift
|
||||||
|
- fmt
|
||||||
- HMSegmentedControl
|
- HMSegmentedControl
|
||||||
- libwebp
|
- libwebp
|
||||||
- SDWebImage
|
- SDWebImage
|
||||||
@@ -490,6 +538,8 @@ SPEC REPOS:
|
|||||||
- TOCropViewController
|
- TOCropViewController
|
||||||
|
|
||||||
EXTERNAL SOURCES:
|
EXTERNAL SOURCES:
|
||||||
|
boost:
|
||||||
|
:podspec: "../node_modules/react-native/third-party-podspecs/boost.podspec"
|
||||||
BVLinearGradient:
|
BVLinearGradient:
|
||||||
:path: "../node_modules/react-native-linear-gradient"
|
:path: "../node_modules/react-native-linear-gradient"
|
||||||
DoubleConversion:
|
DoubleConversion:
|
||||||
@@ -497,9 +547,7 @@ EXTERNAL SOURCES:
|
|||||||
FBLazyVector:
|
FBLazyVector:
|
||||||
:path: "../node_modules/react-native/Libraries/FBLazyVector"
|
:path: "../node_modules/react-native/Libraries/FBLazyVector"
|
||||||
FBReactNativeSpec:
|
FBReactNativeSpec:
|
||||||
:path: "../node_modules/react-native/Libraries/FBReactNativeSpec"
|
:path: "../node_modules/react-native/React/FBReactNativeSpec"
|
||||||
Folly:
|
|
||||||
:podspec: "../node_modules/react-native/third-party-podspecs/Folly.podspec"
|
|
||||||
glog:
|
glog:
|
||||||
:podspec: "../node_modules/react-native/third-party-podspecs/glog.podspec"
|
:podspec: "../node_modules/react-native/third-party-podspecs/glog.podspec"
|
||||||
Keycard:
|
Keycard:
|
||||||
@@ -508,14 +556,20 @@ EXTERNAL SOURCES:
|
|||||||
:path: "../node_modules/react-native-permissions/ios/Camera.podspec"
|
:path: "../node_modules/react-native-permissions/ios/Camera.podspec"
|
||||||
Permission-Microphone:
|
Permission-Microphone:
|
||||||
:path: "../node_modules/react-native-permissions/ios/Microphone.podspec"
|
:path: "../node_modules/react-native-permissions/ios/Microphone.podspec"
|
||||||
|
RCT-Folly:
|
||||||
|
:podspec: "../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec"
|
||||||
RCTRequired:
|
RCTRequired:
|
||||||
:path: "../node_modules/react-native/Libraries/RCTRequired"
|
:path: "../node_modules/react-native/Libraries/RCTRequired"
|
||||||
RCTTypeSafety:
|
RCTTypeSafety:
|
||||||
:path: "../node_modules/react-native/Libraries/TypeSafety"
|
:path: "../node_modules/react-native/Libraries/TypeSafety"
|
||||||
React:
|
React:
|
||||||
:path: "../node_modules/react-native/"
|
:path: "../node_modules/react-native/"
|
||||||
|
React-bridging:
|
||||||
|
:path: "../node_modules/react-native/ReactCommon"
|
||||||
React-callinvoker:
|
React-callinvoker:
|
||||||
:path: "../node_modules/react-native/ReactCommon/callinvoker"
|
:path: "../node_modules/react-native/ReactCommon/callinvoker"
|
||||||
|
React-Codegen:
|
||||||
|
:path: build/generated/ios
|
||||||
React-Core:
|
React-Core:
|
||||||
:path: "../node_modules/react-native/"
|
:path: "../node_modules/react-native/"
|
||||||
React-CoreModules:
|
React-CoreModules:
|
||||||
@@ -528,6 +582,8 @@ EXTERNAL SOURCES:
|
|||||||
:path: "../node_modules/react-native/ReactCommon/jsiexecutor"
|
:path: "../node_modules/react-native/ReactCommon/jsiexecutor"
|
||||||
React-jsinspector:
|
React-jsinspector:
|
||||||
:path: "../node_modules/react-native/ReactCommon/jsinspector"
|
:path: "../node_modules/react-native/ReactCommon/jsinspector"
|
||||||
|
React-logger:
|
||||||
|
:path: "../node_modules/react-native/ReactCommon/logger"
|
||||||
react-native-background-timer:
|
react-native-background-timer:
|
||||||
:path: "../node_modules/react-native-background-timer"
|
:path: "../node_modules/react-native-background-timer"
|
||||||
react-native-blob-util:
|
react-native-blob-util:
|
||||||
@@ -552,8 +608,6 @@ EXTERNAL SOURCES:
|
|||||||
:path: "../node_modules/react-native-orientation-locker"
|
:path: "../node_modules/react-native-orientation-locker"
|
||||||
react-native-randombytes:
|
react-native-randombytes:
|
||||||
:path: "../node_modules/react-native-randombytes"
|
:path: "../node_modules/react-native-randombytes"
|
||||||
react-native-safe-area-context:
|
|
||||||
:path: "../node_modules/react-native-safe-area-context"
|
|
||||||
react-native-shake:
|
react-native-shake:
|
||||||
:path: "../node_modules/react-native-shake"
|
:path: "../node_modules/react-native-shake"
|
||||||
react-native-slider:
|
react-native-slider:
|
||||||
@@ -562,8 +616,12 @@ EXTERNAL SOURCES:
|
|||||||
:path: "../modules/react-native-status"
|
:path: "../modules/react-native-status"
|
||||||
react-native-status-keycard:
|
react-native-status-keycard:
|
||||||
:path: "../node_modules/react-native-status-keycard"
|
:path: "../node_modules/react-native-status-keycard"
|
||||||
|
react-native-transparent-video:
|
||||||
|
:path: "../node_modules/react-native-transparent-video"
|
||||||
react-native-webview:
|
react-native-webview:
|
||||||
:path: "../node_modules/react-native-webview"
|
:path: "../node_modules/react-native-webview"
|
||||||
|
React-perflogger:
|
||||||
|
:path: "../node_modules/react-native/ReactCommon/reactperflogger"
|
||||||
React-RCTActionSheet:
|
React-RCTActionSheet:
|
||||||
:path: "../node_modules/react-native/Libraries/ActionSheetIOS"
|
:path: "../node_modules/react-native/Libraries/ActionSheetIOS"
|
||||||
React-RCTAnimation:
|
React-RCTAnimation:
|
||||||
@@ -582,6 +640,8 @@ EXTERNAL SOURCES:
|
|||||||
:path: "../node_modules/react-native/Libraries/Text"
|
:path: "../node_modules/react-native/Libraries/Text"
|
||||||
React-RCTVibration:
|
React-RCTVibration:
|
||||||
:path: "../node_modules/react-native/Libraries/Vibration"
|
:path: "../node_modules/react-native/Libraries/Vibration"
|
||||||
|
React-runtimeexecutor:
|
||||||
|
:path: "../node_modules/react-native/ReactCommon/runtimeexecutor"
|
||||||
ReactCommon:
|
ReactCommon:
|
||||||
:path: "../node_modules/react-native/ReactCommon"
|
:path: "../node_modules/react-native/ReactCommon"
|
||||||
ReactNativeAudioToolkit:
|
ReactNativeAudioToolkit:
|
||||||
@@ -618,6 +678,8 @@ EXTERNAL SOURCES:
|
|||||||
:path: "../node_modules/react-native-reanimated"
|
:path: "../node_modules/react-native-reanimated"
|
||||||
RNShare:
|
RNShare:
|
||||||
:path: "../node_modules/react-native-share"
|
:path: "../node_modules/react-native-share"
|
||||||
|
RNStaticSafeAreaInsets:
|
||||||
|
:path: "../node_modules/react-native-static-safe-area-insets"
|
||||||
RNSVG:
|
RNSVG:
|
||||||
:path: "../node_modules/react-native-svg"
|
:path: "../node_modules/react-native-svg"
|
||||||
secp256k1:
|
secp256k1:
|
||||||
@@ -638,57 +700,63 @@ CHECKOUT OPTIONS:
|
|||||||
:submodules: true
|
:submodules: true
|
||||||
|
|
||||||
SPEC CHECKSUMS:
|
SPEC CHECKSUMS:
|
||||||
boost-for-react-native: 39c7adb57c4e60d6c5479dd8623128eb5b3f0f2c
|
boost: a7c83b31436843459a1961bfd74b96033dc77234
|
||||||
BVLinearGradient: e3aad03778a456d77928f594a649e96995f1c872
|
BVLinearGradient: e3aad03778a456d77928f594a649e96995f1c872
|
||||||
CryptoSwift: c4f2debceb38bf44c80659afe009f71e23e4a082
|
CryptoSwift: c4f2debceb38bf44c80659afe009f71e23e4a082
|
||||||
DoubleConversion: cde416483dac037923206447da6e1454df403714
|
DoubleConversion: 5189b271737e1565bdce30deb4a08d647e3f5f54
|
||||||
FBLazyVector: 352a8ca9bbc8e2f097d680747a8c97ecef12d469
|
FBLazyVector: a8af91c2b5a0029d12ff6b32e428863d63c48991
|
||||||
FBReactNativeSpec: 7dfb84f624136a45727c813ed21d130cd3e61beb
|
FBReactNativeSpec: 1b2309b096448a1dc9d0c43999216f8fda809ae8
|
||||||
Folly: b73c3869541e86821df3c387eb0af5f65addfab4
|
fmt: ff9d55029c625d3757ed641535fd4a75fedc7ce9
|
||||||
glog: 6934faae5afbec23475648c8aeb6047ce973af65
|
glog: 3a2d032685329b68abb308254142e4c875b6e40d
|
||||||
HMSegmentedControl: 34c1f54d822d8308e7b24f5d901ec674dfa31352
|
HMSegmentedControl: 34c1f54d822d8308e7b24f5d901ec674dfa31352
|
||||||
Keycard: ac6df4d91525c3c82635ac24d4ddd9a80aca5fc8
|
Keycard: ac6df4d91525c3c82635ac24d4ddd9a80aca5fc8
|
||||||
libwebp: f62cb61d0a484ba548448a4bd52aabf150ff6eef
|
libwebp: f62cb61d0a484ba548448a4bd52aabf150ff6eef
|
||||||
Permission-Camera: afad27bf90337684d4a86f3825112d648c8c4d3b
|
Permission-Camera: afad27bf90337684d4a86f3825112d648c8c4d3b
|
||||||
Permission-Microphone: 0ffabc3fe1c75cfb260525ee3f529383c9f4368c
|
Permission-Microphone: 0ffabc3fe1c75cfb260525ee3f529383c9f4368c
|
||||||
RCTRequired: 5520387431beaa5f32aa8726bf746cd5353119fe
|
RCT-Folly: b9d9fe1fc70114b751c076104e52f3b1b5e5a95a
|
||||||
RCTTypeSafety: bc90d6e287fa427c50ed770922bac30faf0bbfa3
|
RCTRequired: 3581db0757e7ff9be10718a56b3d79b6a6bd3bdf
|
||||||
React: 83a7f231f462b09260a53c5c51005e7659c66890
|
RCTTypeSafety: ce13e630c48340401ebfb28710959913f74b8b36
|
||||||
React-callinvoker: 1c3fdb5562c792212e149637b8a167516bb4b58e
|
React: cca8f2b7cce018f79847ca79847fa367b206e8a1
|
||||||
React-Core: 8baca8644a516e772c77e3923697cfe2b58c1606
|
React-bridging: b893643f09d3964afba6c347e00dd86cf10691e5
|
||||||
React-CoreModules: 200c931e17b332024c2e9d878f67b87c00c2c83b
|
React-callinvoker: 9ac7cba30428eddf7a06d1253f8e7561b5c97334
|
||||||
React-cxxreact: 9096ebaeebf6a1475a14448fa8bfc380c13d7882
|
React-Codegen: 6b4283af3720709c7ac4be18f4b32b07eb53f1d5
|
||||||
React-jsi: 7d908b17758178b076a05a254523f1a4227b53d2
|
React-Core: 550b694774bc778b5c7bf7608fc12a484e01ec05
|
||||||
React-jsiexecutor: e06a32e42affb2bd89e4c8369349b5fcf787710c
|
React-CoreModules: c332d5b416cb3ccf972e7af79d496498a700e073
|
||||||
React-jsinspector: fdbc08866b34ae8e1b788ea1cbd9f9d1ca2aa3d6
|
React-cxxreact: c5c4106bfd2d0cee80b848e33b7ff4e35a721b16
|
||||||
|
React-jsi: 6ff3fb9b9764a499c959e0096c0d384fa2b4beef
|
||||||
|
React-jsiexecutor: 388f1c99404c848141d7ea162f61233d04829ede
|
||||||
|
React-jsinspector: a4463b3411b8b9b37153255ef694a84c77ba3c7f
|
||||||
|
React-logger: 2a0497622cbabc47fb769d97620952df14c1f814
|
||||||
react-native-background-timer: 1f7d560647b40e6a60b01c452ba29c54bf581fc4
|
react-native-background-timer: 1f7d560647b40e6a60b01c452ba29c54bf581fc4
|
||||||
react-native-blob-util: 600972b1782380a5a7d5db61a3817ea32349dae9
|
react-native-blob-util: 600972b1782380a5a7d5db61a3817ea32349dae9
|
||||||
react-native-blur: 50c9feabacbc5f49b61337ebc32192c6be7ec3c3
|
react-native-blur: c6d0a1dc2b4b519f7afe3b14d8151998632b6d18
|
||||||
react-native-camera-kit: 498a6d111a904834e0824e9073cfadef7303235f
|
react-native-camera-kit: 498a6d111a904834e0824e9073cfadef7303235f
|
||||||
react-native-cameraroll: 88f4e62d9ecd0e1f253abe4f685474f2ea14bfa2
|
react-native-cameraroll: 88f4e62d9ecd0e1f253abe4f685474f2ea14bfa2
|
||||||
react-native-config: c98128a72bc2c3a1ca72caec0b021f0fa944aa29
|
react-native-config: 5330c8258265c1e5fdb8c009d2cabd6badd96727
|
||||||
react-native-image-resizer: 2f1577efa3bc762597681f530c8e8d05ce0ceeb3
|
react-native-image-resizer: 2f1577efa3bc762597681f530c8e8d05ce0ceeb3
|
||||||
react-native-lottie-splash-screen: 068688c15dd478301fda00f8d87d7fb7d5b9a93e
|
react-native-lottie-splash-screen: 068688c15dd478301fda00f8d87d7fb7d5b9a93e
|
||||||
react-native-mail: 8fdcd3aef007c33a6877a18eb4cf7447a1d4ce4a
|
react-native-mail: 8fdcd3aef007c33a6877a18eb4cf7447a1d4ce4a
|
||||||
react-native-netinfo: ddaca8bbb9e6e914b1a23787ccb879bc642931c9
|
react-native-netinfo: ddaca8bbb9e6e914b1a23787ccb879bc642931c9
|
||||||
react-native-orientation-locker: 851f6510d8046ea2f14aa169b1e01fcd309a94ba
|
react-native-orientation-locker: 851f6510d8046ea2f14aa169b1e01fcd309a94ba
|
||||||
react-native-randombytes: 421f1c7d48c0af8dbcd471b0324393ebf8fe7846
|
react-native-randombytes: 421f1c7d48c0af8dbcd471b0324393ebf8fe7846
|
||||||
react-native-safe-area-context: 60f654e00b6cc416573f6d5dbfce3839958eb57a
|
|
||||||
react-native-shake: de052eaa3eadc4a326b8ddd7ac80c06e8d84528c
|
react-native-shake: de052eaa3eadc4a326b8ddd7ac80c06e8d84528c
|
||||||
react-native-slider: 12bd76d3d568c9c5500825db54123d44b48e4ad4
|
react-native-slider: 12bd76d3d568c9c5500825db54123d44b48e4ad4
|
||||||
react-native-status: 21f75d492fd311dc111303da38a7a2b23a8a8466
|
react-native-status: 21f75d492fd311dc111303da38a7a2b23a8a8466
|
||||||
react-native-status-keycard: f1c1227b2d5984c10fb44db68e4bfd2937f31e98
|
react-native-status-keycard: f1c1227b2d5984c10fb44db68e4bfd2937f31e98
|
||||||
|
react-native-transparent-video: e484ad11ace8e5f62516e2c5e15efd3cb4df24b0
|
||||||
react-native-webview: 28a8636d97ee641f2ee8f20492d7a6c269c1d703
|
react-native-webview: 28a8636d97ee641f2ee8f20492d7a6c269c1d703
|
||||||
React-RCTActionSheet: e911b99f0d6fa7711ffc2f62d236b12a32771835
|
React-perflogger: bc57c4a953c1ec913b0d984cf4f2b9842a12bde0
|
||||||
React-RCTAnimation: ad8b853170a059faf31d6add34f67d22391bbe01
|
React-RCTActionSheet: 3efa3546119a1050f6c34a461b386dd9e36eaf0b
|
||||||
React-RCTBlob: 134c7270b6672c9c05383b2e0f7f044ba39d7dda
|
React-RCTAnimation: e58fb9f1adf7b38af329881ea2740f43ffeea854
|
||||||
React-RCTImage: c5c74ba8850a193d73aef8efb8fcbb4f9cad7653
|
React-RCTBlob: d2238645553c3ec787324268c0676148d86e6cc4
|
||||||
React-RCTLinking: 12468e952704555c8cb4e3de94c7b5a266811326
|
React-RCTImage: e6d7c9ab978cae99364fcc96b9238fc7740a13da
|
||||||
React-RCTNetwork: e9cfaeb9f3657ae91f895e798734141db6e1af5b
|
React-RCTLinking: 329e88ce217dad464ef34b5d0c40b3ceaac6c9ec
|
||||||
React-RCTSettings: 9a09419bd5e8494f6e146e2c9f5c8e2c6e90ed58
|
React-RCTNetwork: c8967f2382aac31761ddb750fee53fa34cf7a4ee
|
||||||
React-RCTText: 393f059d7ec02c733da57240694201e734f0dc84
|
React-RCTSettings: 8a825b4b5ea58f6713a7c97eea6cc82e9895188b
|
||||||
React-RCTVibration: 3e83f53610d63d3c1fc4db303305e934e73047cc
|
React-RCTText: ffcaac5c66bc065f2ccf79b6fe34585adb9e589b
|
||||||
ReactCommon: b9ff54b6dd22ba4a776eda22d7f83ec27544ca35
|
React-RCTVibration: 0039c986626b78242401931bb23c803935fae9d1
|
||||||
|
React-runtimeexecutor: 5ebf1ddaa706bf2986123f22d2cad905443c2c5f
|
||||||
|
ReactCommon: 65754b8932ea80272714988268bbfb9f303264a5
|
||||||
ReactNativeAudioToolkit: de9610f323e855ac6574be8c99621f3d57c5df06
|
ReactNativeAudioToolkit: de9610f323e855ac6574be8c99621f3d57c5df06
|
||||||
ReactNativeNavigation: 94979dd1572a3f093fc85d4599360530a1bed8c8
|
ReactNativeNavigation: 94979dd1572a3f093fc85d4599360530a1bed8c8
|
||||||
RNCAsyncStorage: b2489b49e38c85e10ed45a888d13a2a4c7b32ea1
|
RNCAsyncStorage: b2489b49e38c85e10ed45a888d13a2a4c7b32ea1
|
||||||
@@ -697,15 +765,16 @@ SPEC CHECKSUMS:
|
|||||||
RNCPushNotificationIOS: c145c6253ea016e5efeff604f2720736b4a596f7
|
RNCPushNotificationIOS: c145c6253ea016e5efeff604f2720736b4a596f7
|
||||||
RNFastImage: 1f2cab428712a4baaf78d6169eaec7f622556dd7
|
RNFastImage: 1f2cab428712a4baaf78d6169eaec7f622556dd7
|
||||||
RNFS: 2bd9eb49dc82fa9676382f0585b992c424cd59df
|
RNFS: 2bd9eb49dc82fa9676382f0585b992c424cd59df
|
||||||
RNGestureHandler: bad495418bcbd3ab47017a38d93d290ebd406f50
|
RNGestureHandler: 28ad20bf02257791f7f137b31beef34b9549f54b
|
||||||
RNHoleView: 07572d21c97fad71fdc47f7248a8513e15a38949
|
RNHoleView: 07572d21c97fad71fdc47f7248a8513e15a38949
|
||||||
RNImageCropPicker: 35a3ceb837446fa11547704709bb22b5fac6d584
|
RNImageCropPicker: 35a3ceb837446fa11547704709bb22b5fac6d584
|
||||||
RNKeychain: 216f37338fcb9e5c3a2530f1e3295f737a690cb1
|
RNKeychain: 216f37338fcb9e5c3a2530f1e3295f737a690cb1
|
||||||
RNLanguages: 962e562af0d34ab1958d89bcfdb64fafc37c513e
|
RNLanguages: 962e562af0d34ab1958d89bcfdb64fafc37c513e
|
||||||
RNPermissions: ad71dd4f767ec254f2cd57592fbee02afee75467
|
RNPermissions: ad71dd4f767ec254f2cd57592fbee02afee75467
|
||||||
RNReactNativeHapticFeedback: 2566b468cc8d0e7bb2f84b23adc0f4614594d071
|
RNReactNativeHapticFeedback: 2566b468cc8d0e7bb2f84b23adc0f4614594d071
|
||||||
RNReanimated: 69eda0e8790a2ee00de2fff03e89361e9bac749a
|
RNReanimated: 06a228c5a245ef7b5b03f0efc29d76ce4db9031c
|
||||||
RNShare: 2dc2fcac3f7321cfd6b60a23ed4bf4d549f86f5f
|
RNShare: 2dc2fcac3f7321cfd6b60a23ed4bf4d549f86f5f
|
||||||
|
RNStaticSafeAreaInsets: 055ddbf5e476321720457cdaeec0ff2ba40ec1b8
|
||||||
RNSVG: 8ba35cbeb385a52fd960fd28db9d7d18b4c2974f
|
RNSVG: 8ba35cbeb385a52fd960fd28db9d7d18b4c2974f
|
||||||
SDWebImage: a7f831e1a65eb5e285e3fb046a23fcfbf08e696d
|
SDWebImage: a7f831e1a65eb5e285e3fb046a23fcfbf08e696d
|
||||||
SDWebImageWebPCoder: 908b83b6adda48effe7667cd2b7f78c897e5111d
|
SDWebImageWebPCoder: 908b83b6adda48effe7667cd2b7f78c897e5111d
|
||||||
@@ -714,8 +783,8 @@ SPEC CHECKSUMS:
|
|||||||
SSZipArchive: fe6a26b2a54d5a0890f2567b5cc6de5caa600aef
|
SSZipArchive: fe6a26b2a54d5a0890f2567b5cc6de5caa600aef
|
||||||
TOCropViewController: edfd4f25713d56905ad1e0b9f5be3fbe0f59c863
|
TOCropViewController: edfd4f25713d56905ad1e0b9f5be3fbe0f59c863
|
||||||
TouchID: ba4c656d849cceabc2e4eef722dea5e55959ecf4
|
TouchID: ba4c656d849cceabc2e4eef722dea5e55959ecf4
|
||||||
Yoga: 0276e9f20976c8568e107cfc1163a8629051adc0
|
Yoga: d24d6184b6b85f742536bd93bd07d69d7b9bb4c1
|
||||||
|
|
||||||
PODFILE CHECKSUM: dd4d6510a5580d20adac6c8a8dad97a0bc7d6508
|
PODFILE CHECKSUM: a7c3cb360cf217ab90667d67deeab588677d540a
|
||||||
|
|
||||||
COCOAPODS: 1.12.0
|
COCOAPODS: 1.12.0
|
||||||
|
|||||||
@@ -8,14 +8,14 @@
|
|||||||
|
|
||||||
/* Begin PBXBuildFile section */
|
/* Begin PBXBuildFile section */
|
||||||
00E356F31AD99517003FC87E /* StatusImTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* StatusImTests.m */; };
|
00E356F31AD99517003FC87E /* StatusImTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* StatusImTests.m */; };
|
||||||
13B07FBC1A68108700A75B9A /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.m */; };
|
13B07FBC1A68108700A75B9A /* AppDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.mm */; };
|
||||||
13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; };
|
13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; };
|
||||||
25DC9C9DC25846BD8D084888 /* libc++.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 8B9A886A2CB448B1ABA0EB62 /* libc++.tbd */; };
|
25DC9C9DC25846BD8D084888 /* libc++.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 8B9A886A2CB448B1ABA0EB62 /* libc++.tbd */; };
|
||||||
3870E1E692E24133A80B07DE /* Inter-SemiBold.otf in Resources */ = {isa = PBXBuildFile; fileRef = 693A62DB37BC4CD5A30E5C96 /* Inter-SemiBold.otf */; };
|
3870E1E692E24133A80B07DE /* Inter-SemiBold.otf in Resources */ = {isa = PBXBuildFile; fileRef = 693A62DB37BC4CD5A30E5C96 /* Inter-SemiBold.otf */; };
|
||||||
393D26E3080B443A998F4A2F /* Inter-Italic.otf in Resources */ = {isa = PBXBuildFile; fileRef = B07176ACDAA1422E8F0A3D6B /* Inter-Italic.otf */; };
|
393D26E3080B443A998F4A2F /* Inter-Italic.otf in Resources */ = {isa = PBXBuildFile; fileRef = B07176ACDAA1422E8F0A3D6B /* Inter-Italic.otf */; };
|
||||||
3A2626CF245C3F2200D5F94B /* Dummy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A2626CE245C3F2200D5F94B /* Dummy.swift */; };
|
3A2626CF245C3F2200D5F94B /* Dummy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A2626CE245C3F2200D5F94B /* Dummy.swift */; };
|
||||||
3A8F8EAA24A4D31600BF206D /* GameKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3A8F8EA924A4D31600BF206D /* GameKit.framework */; };
|
3A8F8EAA24A4D31600BF206D /* GameKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3A8F8EA924A4D31600BF206D /* GameKit.framework */; };
|
||||||
3AAD2ABC24A3A60E0075D594 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.m */; };
|
3AAD2ABC24A3A60E0075D594 /* AppDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.mm */; };
|
||||||
3AAD2ABD24A3A60E0075D594 /* Dummy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A2626CE245C3F2200D5F94B /* Dummy.swift */; };
|
3AAD2ABD24A3A60E0075D594 /* Dummy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A2626CE245C3F2200D5F94B /* Dummy.swift */; };
|
||||||
3AAD2ABE24A3A60E0075D594 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; };
|
3AAD2ABE24A3A60E0075D594 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; };
|
||||||
3AAD2AC024A3A60E0075D594 /* MessageUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B24FC7FE1DE7195F00D694FF /* MessageUI.framework */; };
|
3AAD2AC024A3A60E0075D594 /* MessageUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B24FC7FE1DE7195F00D694FF /* MessageUI.framework */; };
|
||||||
@@ -44,11 +44,12 @@
|
|||||||
715D8133290BE850006F5C88 /* UbuntuMono-Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 715D8131290BE850006F5C88 /* UbuntuMono-Regular.ttf */; };
|
715D8133290BE850006F5C88 /* UbuntuMono-Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 715D8131290BE850006F5C88 /* UbuntuMono-Regular.ttf */; };
|
||||||
74B758FC20D7C00B003343C3 /* launch-image-universal.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 74B758FB20D7C00B003343C3 /* launch-image-universal.storyboard */; };
|
74B758FC20D7C00B003343C3 /* launch-image-universal.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 74B758FB20D7C00B003343C3 /* launch-image-universal.storyboard */; };
|
||||||
8391E8E0E93C41A98AAA6631 /* Inter-SemiBoldItalic.otf in Resources */ = {isa = PBXBuildFile; fileRef = A4F2BBE8D4DD4140A6CCAC39 /* Inter-SemiBoldItalic.otf */; };
|
8391E8E0E93C41A98AAA6631 /* Inter-SemiBoldItalic.otf in Resources */ = {isa = PBXBuildFile; fileRef = A4F2BBE8D4DD4140A6CCAC39 /* Inter-SemiBoldItalic.otf */; };
|
||||||
|
B0E570AEBE2BEB426BF60259 /* libPods-Status-StatusImPR.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 4D059F2E62D7CD9FB1896703 /* libPods-Status-StatusImPR.a */; };
|
||||||
B24FC7FD1DE7195700D694FF /* Social.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B24FC7FC1DE7195700D694FF /* Social.framework */; };
|
B24FC7FD1DE7195700D694FF /* Social.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B24FC7FC1DE7195700D694FF /* Social.framework */; };
|
||||||
B24FC7FF1DE7195F00D694FF /* MessageUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B24FC7FE1DE7195F00D694FF /* MessageUI.framework */; };
|
B24FC7FF1DE7195F00D694FF /* MessageUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B24FC7FE1DE7195F00D694FF /* MessageUI.framework */; };
|
||||||
B2F2D1BC1D9D531B00B7B453 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = B2F2D1BB1D9D531B00B7B453 /* Images.xcassets */; };
|
B2F2D1BC1D9D531B00B7B453 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = B2F2D1BB1D9D531B00B7B453 /* Images.xcassets */; };
|
||||||
|
B73930D752A70EAB45001773 /* libPods-Status-StatusIm.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FBEDE2F94002488EF6B277DA /* libPods-Status-StatusIm.a */; };
|
||||||
BA68A2377A20496EA737000D /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 4E586E1B0E544F64AA9F5BD1 /* libz.tbd */; };
|
BA68A2377A20496EA737000D /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 4E586E1B0E544F64AA9F5BD1 /* libz.tbd */; };
|
||||||
BFF6343F5A1F0F5FFFC8D020 /* libPods-Status-StatusIm-StatusImTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = A4B974811E312E44D5BBE9EC /* libPods-Status-StatusIm-StatusImTests.a */; };
|
|
||||||
C14C5F8D29C0A149005C58A7 /* launch-icon@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = C14C5F8C29C0A149005C58A7 /* launch-icon@3x.png */; };
|
C14C5F8D29C0A149005C58A7 /* launch-icon@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = C14C5F8C29C0A149005C58A7 /* launch-icon@3x.png */; };
|
||||||
C14C5F9129C0AD9C005C58A7 /* launch-icon@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = C14C5F9029C0AD9C005C58A7 /* launch-icon@2x.png */; };
|
C14C5F9129C0AD9C005C58A7 /* launch-icon@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = C14C5F9029C0AD9C005C58A7 /* launch-icon@2x.png */; };
|
||||||
C14C5F9329C0ADB5005C58A7 /* launch-icon.png in Resources */ = {isa = PBXBuildFile; fileRef = C14C5F9229C0ADB5005C58A7 /* launch-icon.png */; };
|
C14C5F9329C0ADB5005C58A7 /* launch-icon.png in Resources */ = {isa = PBXBuildFile; fileRef = C14C5F9229C0ADB5005C58A7 /* launch-icon.png */; };
|
||||||
@@ -59,8 +60,7 @@
|
|||||||
D1786306E0184916B11F4C37 /* Inter-Medium.otf in Resources */ = {isa = PBXBuildFile; fileRef = B2A38FC3D3954DE7B2B171F8 /* Inter-Medium.otf */; };
|
D1786306E0184916B11F4C37 /* Inter-Medium.otf in Resources */ = {isa = PBXBuildFile; fileRef = B2A38FC3D3954DE7B2B171F8 /* Inter-Medium.otf */; };
|
||||||
D84616FB563A48EBB1678699 /* Inter-Bold.otf in Resources */ = {isa = PBXBuildFile; fileRef = CD4A2C27D6D5473184DC1F7E /* Inter-Bold.otf */; };
|
D84616FB563A48EBB1678699 /* Inter-Bold.otf in Resources */ = {isa = PBXBuildFile; fileRef = CD4A2C27D6D5473184DC1F7E /* Inter-Bold.otf */; };
|
||||||
D99C50E5E18942A39C8DDF61 /* Inter-BoldItalic.otf in Resources */ = {isa = PBXBuildFile; fileRef = B321D25F4493470980039457 /* Inter-BoldItalic.otf */; };
|
D99C50E5E18942A39C8DDF61 /* Inter-BoldItalic.otf in Resources */ = {isa = PBXBuildFile; fileRef = B321D25F4493470980039457 /* Inter-BoldItalic.otf */; };
|
||||||
E9C92E7783C7FB91C9616112 /* libPods-Status-StatusImPR.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 57CBBEA420F440D344DD99E5 /* libPods-Status-StatusImPR.a */; };
|
F5EC958C8908294B8536B835 /* libPods-Status-StatusIm-StatusImTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 06FA6B17CC0A7FAFA9DA5364 /* libPods-Status-StatusIm-StatusImTests.a */; };
|
||||||
F51761A0F4D1FAE41A72435A /* libPods-Status-StatusIm.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 928CC6D1D5BCCF9D3BC60D6A /* libPods-Status-StatusIm.a */; };
|
|
||||||
/* End PBXBuildFile section */
|
/* End PBXBuildFile section */
|
||||||
|
|
||||||
/* Begin PBXContainerItemProxy section */
|
/* Begin PBXContainerItemProxy section */
|
||||||
@@ -108,9 +108,12 @@
|
|||||||
00E356EE1AD99517003FC87E /* StatusImTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = StatusImTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
|
00E356EE1AD99517003FC87E /* StatusImTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = StatusImTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
00E356F11AD99517003FC87E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
00E356F11AD99517003FC87E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||||
00E356F21AD99517003FC87E /* StatusImTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = StatusImTests.m; sourceTree = "<group>"; };
|
00E356F21AD99517003FC87E /* StatusImTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = StatusImTests.m; sourceTree = "<group>"; };
|
||||||
|
06FA6B17CC0A7FAFA9DA5364 /* libPods-Status-StatusIm-StatusImTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Status-StatusIm-StatusImTests.a"; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
|
08A713A336BFEE0924821EC9 /* Pods-Status-StatusIm.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Status-StatusIm.release.xcconfig"; path = "Target Support Files/Pods-Status-StatusIm/Pods-Status-StatusIm.release.xcconfig"; sourceTree = "<group>"; };
|
||||||
|
103861DFF36B6063BED2602B /* Pods-Status-StatusImPR.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Status-StatusImPR.release.xcconfig"; path = "Target Support Files/Pods-Status-StatusImPR/Pods-Status-StatusImPR.release.xcconfig"; sourceTree = "<group>"; };
|
||||||
13B07F961A680F5B00A75B9A /* StatusIm.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = StatusIm.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
13B07F961A680F5B00A75B9A /* StatusIm.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = StatusIm.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = StatusIm/AppDelegate.h; sourceTree = "<group>"; };
|
13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = StatusIm/AppDelegate.h; sourceTree = "<group>"; };
|
||||||
13B07FB01A68108700A75B9A /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AppDelegate.m; path = StatusIm/AppDelegate.m; sourceTree = "<group>"; };
|
13B07FB01A68108700A75B9A /* AppDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = AppDelegate.mm; path = StatusIm/AppDelegate.mm; sourceTree = "<group>"; };
|
||||||
13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = StatusIm/Info.plist; sourceTree = "<group>"; };
|
13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = StatusIm/Info.plist; sourceTree = "<group>"; };
|
||||||
13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = StatusIm/main.m; sourceTree = "<group>"; };
|
13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = StatusIm/main.m; sourceTree = "<group>"; };
|
||||||
1426DF592BA248FC81D955CB /* Inter-Regular.otf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "Inter-Regular.otf"; path = "../resources/fonts/Inter-Regular.otf"; sourceTree = "<group>"; };
|
1426DF592BA248FC81D955CB /* Inter-Regular.otf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "Inter-Regular.otf"; path = "../resources/fonts/Inter-Regular.otf"; sourceTree = "<group>"; };
|
||||||
@@ -119,28 +122,23 @@
|
|||||||
3A8F8EA924A4D31600BF206D /* GameKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = GameKit.framework; path = System/Library/Frameworks/GameKit.framework; sourceTree = SDKROOT; };
|
3A8F8EA924A4D31600BF206D /* GameKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = GameKit.framework; path = System/Library/Frameworks/GameKit.framework; sourceTree = SDKROOT; };
|
||||||
3AAD2ADC24A3A60E0075D594 /* Status PR.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Status PR.app"; sourceTree = BUILT_PRODUCTS_DIR; };
|
3AAD2ADC24A3A60E0075D594 /* Status PR.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Status PR.app"; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
3AB1C3AD245C043900098F67 /* StatusIm-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "StatusIm-Bridging-Header.h"; sourceTree = "<group>"; };
|
3AB1C3AD245C043900098F67 /* StatusIm-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "StatusIm-Bridging-Header.h"; sourceTree = "<group>"; };
|
||||||
43341A7CBCE457435677CC51 /* Pods-Status-StatusIm-StatusImTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Status-StatusIm-StatusImTests.debug.xcconfig"; path = "Target Support Files/Pods-Status-StatusIm-StatusImTests/Pods-Status-StatusIm-StatusImTests.debug.xcconfig"; sourceTree = "<group>"; };
|
|
||||||
4C16DE0B1F89508700AA10DB /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; };
|
4C16DE0B1F89508700AA10DB /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; };
|
||||||
|
4D059F2E62D7CD9FB1896703 /* libPods-Status-StatusImPR.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Status-StatusImPR.a"; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
|
4D7FC122A838AC3BFC46D82B /* Pods-Status-StatusImPR.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Status-StatusImPR.debug.xcconfig"; path = "Target Support Files/Pods-Status-StatusImPR/Pods-Status-StatusImPR.debug.xcconfig"; sourceTree = "<group>"; };
|
||||||
4E586E1B0E544F64AA9F5BD1 /* libz.tbd */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libz.tbd; path = usr/lib/libz.tbd; sourceTree = SDKROOT; };
|
4E586E1B0E544F64AA9F5BD1 /* libz.tbd */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libz.tbd; path = usr/lib/libz.tbd; sourceTree = SDKROOT; };
|
||||||
564309A78329EB657677709C /* Pods-Status-StatusIm.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Status-StatusIm.debug.xcconfig"; path = "Target Support Files/Pods-Status-StatusIm/Pods-Status-StatusIm.debug.xcconfig"; sourceTree = "<group>"; };
|
|
||||||
57CBBEA420F440D344DD99E5 /* libPods-Status-StatusImPR.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Status-StatusImPR.a"; sourceTree = BUILT_PRODUCTS_DIR; };
|
|
||||||
5F30F922E4B02AB10F6CB65E /* Pods-Status-StatusIm.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Status-StatusIm.release.xcconfig"; path = "Target Support Files/Pods-Status-StatusIm/Pods-Status-StatusIm.release.xcconfig"; sourceTree = "<group>"; };
|
|
||||||
65F693BD2578002500A45E76 /* CoreNFC.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreNFC.framework; path = System/Library/Frameworks/CoreNFC.framework; sourceTree = SDKROOT; };
|
65F693BD2578002500A45E76 /* CoreNFC.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreNFC.framework; path = System/Library/Frameworks/CoreNFC.framework; sourceTree = SDKROOT; };
|
||||||
65F693BF2578003600A45E76 /* CoreNFC.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreNFC.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.0.sdk/System/iOSSupport/System/Library/Frameworks/CoreNFC.framework; sourceTree = DEVELOPER_DIR; };
|
65F693BF2578003600A45E76 /* CoreNFC.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreNFC.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.0.sdk/System/iOSSupport/System/Library/Frameworks/CoreNFC.framework; sourceTree = DEVELOPER_DIR; };
|
||||||
65F6941725780A4E00A45E76 /* StatusImTests-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "StatusImTests-Bridging-Header.h"; sourceTree = "<group>"; };
|
65F6941725780A4E00A45E76 /* StatusImTests-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "StatusImTests-Bridging-Header.h"; sourceTree = "<group>"; };
|
||||||
65F6941825780A4F00A45E76 /* Bridge.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Bridge.swift; sourceTree = "<group>"; };
|
65F6941825780A4F00A45E76 /* Bridge.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Bridge.swift; sourceTree = "<group>"; };
|
||||||
693A62DB37BC4CD5A30E5C96 /* Inter-SemiBold.otf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "Inter-SemiBold.otf"; path = "../resources/fonts/Inter-SemiBold.otf"; sourceTree = "<group>"; };
|
693A62DB37BC4CD5A30E5C96 /* Inter-SemiBold.otf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "Inter-SemiBold.otf"; path = "../resources/fonts/Inter-SemiBold.otf"; sourceTree = "<group>"; };
|
||||||
70ACC04C7CF0A6C6421A805D /* Pods-Status-StatusIm-StatusImTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Status-StatusIm-StatusImTests.release.xcconfig"; path = "Target Support Files/Pods-Status-StatusIm-StatusImTests/Pods-Status-StatusIm-StatusImTests.release.xcconfig"; sourceTree = "<group>"; };
|
|
||||||
715D8131290BE850006F5C88 /* UbuntuMono-Regular.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = "UbuntuMono-Regular.ttf"; path = "../resources/fonts/UbuntuMono-Regular.ttf"; sourceTree = "<group>"; };
|
715D8131290BE850006F5C88 /* UbuntuMono-Regular.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = "UbuntuMono-Regular.ttf"; path = "../resources/fonts/UbuntuMono-Regular.ttf"; sourceTree = "<group>"; };
|
||||||
74B758FB20D7C00B003343C3 /* launch-image-universal.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = "launch-image-universal.storyboard"; sourceTree = "<group>"; };
|
74B758FB20D7C00B003343C3 /* launch-image-universal.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = "launch-image-universal.storyboard"; sourceTree = "<group>"; };
|
||||||
8B3C115CD813729DE4735219 /* Pods-Status-StatusImPR.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Status-StatusImPR.release.xcconfig"; path = "Target Support Files/Pods-Status-StatusImPR/Pods-Status-StatusImPR.release.xcconfig"; sourceTree = "<group>"; };
|
84C3C20891247EC6BFF93B51 /* Pods-Status-StatusIm-StatusImTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Status-StatusIm-StatusImTests.release.xcconfig"; path = "Target Support Files/Pods-Status-StatusIm-StatusImTests/Pods-Status-StatusIm-StatusImTests.release.xcconfig"; sourceTree = "<group>"; };
|
||||||
|
886398AFEF2B823AC8A4912C /* Pods-Status-StatusIm.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Status-StatusIm.debug.xcconfig"; path = "Target Support Files/Pods-Status-StatusIm/Pods-Status-StatusIm.debug.xcconfig"; sourceTree = "<group>"; };
|
||||||
8B9A886A2CB448B1ABA0EB62 /* libc++.tbd */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = "libc++.tbd"; path = "usr/lib/libc++.tbd"; sourceTree = SDKROOT; };
|
8B9A886A2CB448B1ABA0EB62 /* libc++.tbd */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = "libc++.tbd"; path = "usr/lib/libc++.tbd"; sourceTree = SDKROOT; };
|
||||||
8D3CFDC9666FBD03D1AA059A /* Pods-Status-StatusImPR.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Status-StatusImPR.debug.xcconfig"; path = "Target Support Files/Pods-Status-StatusImPR/Pods-Status-StatusImPR.debug.xcconfig"; sourceTree = "<group>"; };
|
|
||||||
922C4CA61F4D5F8B0033C753 /* StatusIm.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; name = StatusIm.entitlements; path = StatusIm/StatusIm.entitlements; sourceTree = "<group>"; };
|
922C4CA61F4D5F8B0033C753 /* StatusIm.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; name = StatusIm.entitlements; path = StatusIm/StatusIm.entitlements; sourceTree = "<group>"; };
|
||||||
928CC6D1D5BCCF9D3BC60D6A /* libPods-Status-StatusIm.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Status-StatusIm.a"; sourceTree = BUILT_PRODUCTS_DIR; };
|
|
||||||
9C76AF5A418D4D65A4CAD1D9 /* InterStatus-Regular.otf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "InterStatus-Regular.otf"; path = "../resources/fonts/InterStatus-Regular.otf"; sourceTree = "<group>"; };
|
9C76AF5A418D4D65A4CAD1D9 /* InterStatus-Regular.otf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "InterStatus-Regular.otf"; path = "../resources/fonts/InterStatus-Regular.otf"; sourceTree = "<group>"; };
|
||||||
9EC0135C1E06FB1900155B5C /* RCTWKWebView.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTWKWebView.xcodeproj; path = "../node_modules/react-native-wkwebview-reborn/ios/RCTWKWebView.xcodeproj"; sourceTree = "<group>"; };
|
9EC0135C1E06FB1900155B5C /* RCTWKWebView.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTWKWebView.xcodeproj; path = "../node_modules/react-native-wkwebview-reborn/ios/RCTWKWebView.xcodeproj"; sourceTree = "<group>"; };
|
||||||
A4B974811E312E44D5BBE9EC /* libPods-Status-StatusIm-StatusImTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Status-StatusIm-StatusImTests.a"; sourceTree = BUILT_PRODUCTS_DIR; };
|
|
||||||
A4F2BBE8D4DD4140A6CCAC39 /* Inter-SemiBoldItalic.otf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "Inter-SemiBoldItalic.otf"; path = "../resources/fonts/Inter-SemiBoldItalic.otf"; sourceTree = "<group>"; };
|
A4F2BBE8D4DD4140A6CCAC39 /* Inter-SemiBoldItalic.otf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "Inter-SemiBoldItalic.otf"; path = "../resources/fonts/Inter-SemiBoldItalic.otf"; sourceTree = "<group>"; };
|
||||||
B07176ACDAA1422E8F0A3D6B /* Inter-Italic.otf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "Inter-Italic.otf"; path = "../resources/fonts/Inter-Italic.otf"; sourceTree = "<group>"; };
|
B07176ACDAA1422E8F0A3D6B /* Inter-Italic.otf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "Inter-Italic.otf"; path = "../resources/fonts/Inter-Italic.otf"; sourceTree = "<group>"; };
|
||||||
B24FC7FC1DE7195700D694FF /* Social.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Social.framework; path = System/Library/Frameworks/Social.framework; sourceTree = SDKROOT; };
|
B24FC7FC1DE7195700D694FF /* Social.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Social.framework; path = System/Library/Frameworks/Social.framework; sourceTree = SDKROOT; };
|
||||||
@@ -154,6 +152,8 @@
|
|||||||
C6B1215047604CD59A4C74D6 /* Inter-MediumItalic.otf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "Inter-MediumItalic.otf"; path = "../resources/fonts/Inter-MediumItalic.otf"; sourceTree = "<group>"; };
|
C6B1215047604CD59A4C74D6 /* Inter-MediumItalic.otf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "Inter-MediumItalic.otf"; path = "../resources/fonts/Inter-MediumItalic.otf"; sourceTree = "<group>"; };
|
||||||
CD4A2C27D6D5473184DC1F7E /* Inter-Bold.otf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "Inter-Bold.otf"; path = "../resources/fonts/Inter-Bold.otf"; sourceTree = "<group>"; };
|
CD4A2C27D6D5473184DC1F7E /* Inter-Bold.otf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "Inter-Bold.otf"; path = "../resources/fonts/Inter-Bold.otf"; sourceTree = "<group>"; };
|
||||||
CE4E31B21D8695250033ED64 /* Statusgo.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = Statusgo.xcframework; path = "../modules/react-native-status/ios/RCTStatus/Statusgo.xcframework"; sourceTree = "<group>"; };
|
CE4E31B21D8695250033ED64 /* Statusgo.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = Statusgo.xcframework; path = "../modules/react-native-status/ios/RCTStatus/Statusgo.xcframework"; sourceTree = "<group>"; };
|
||||||
|
EBFEABB7D6CC1144D83FBA82 /* Pods-Status-StatusIm-StatusImTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Status-StatusIm-StatusImTests.debug.xcconfig"; path = "Target Support Files/Pods-Status-StatusIm-StatusImTests/Pods-Status-StatusIm-StatusImTests.debug.xcconfig"; sourceTree = "<group>"; };
|
||||||
|
FBEDE2F94002488EF6B277DA /* libPods-Status-StatusIm.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Status-StatusIm.a"; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
/* End PBXFileReference section */
|
/* End PBXFileReference section */
|
||||||
|
|
||||||
/* Begin PBXFrameworksBuildPhase section */
|
/* Begin PBXFrameworksBuildPhase section */
|
||||||
@@ -161,7 +161,7 @@
|
|||||||
isa = PBXFrameworksBuildPhase;
|
isa = PBXFrameworksBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
files = (
|
files = (
|
||||||
BFF6343F5A1F0F5FFFC8D020 /* libPods-Status-StatusIm-StatusImTests.a in Frameworks */,
|
F5EC958C8908294B8536B835 /* libPods-Status-StatusIm-StatusImTests.a in Frameworks */,
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
@@ -174,7 +174,7 @@
|
|||||||
CE4E31B31D8695250033ED64 /* Statusgo.xcframework in Frameworks */,
|
CE4E31B31D8695250033ED64 /* Statusgo.xcframework in Frameworks */,
|
||||||
25DC9C9DC25846BD8D084888 /* libc++.tbd in Frameworks */,
|
25DC9C9DC25846BD8D084888 /* libc++.tbd in Frameworks */,
|
||||||
BA68A2377A20496EA737000D /* libz.tbd in Frameworks */,
|
BA68A2377A20496EA737000D /* libz.tbd in Frameworks */,
|
||||||
F51761A0F4D1FAE41A72435A /* libPods-Status-StatusIm.a in Frameworks */,
|
B73930D752A70EAB45001773 /* libPods-Status-StatusIm.a in Frameworks */,
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
@@ -188,7 +188,7 @@
|
|||||||
3AAD2AC224A3A60E0075D594 /* Statusgo.xcframework in Frameworks */,
|
3AAD2AC224A3A60E0075D594 /* Statusgo.xcframework in Frameworks */,
|
||||||
3AAD2AC524A3A60E0075D594 /* libc++.tbd in Frameworks */,
|
3AAD2AC524A3A60E0075D594 /* libc++.tbd in Frameworks */,
|
||||||
3AAD2AC624A3A60E0075D594 /* libz.tbd in Frameworks */,
|
3AAD2AC624A3A60E0075D594 /* libz.tbd in Frameworks */,
|
||||||
E9C92E7783C7FB91C9616112 /* libPods-Status-StatusImPR.a in Frameworks */,
|
B0E570AEBE2BEB426BF60259 /* libPods-Status-StatusImPR.a in Frameworks */,
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
@@ -222,7 +222,7 @@
|
|||||||
B2F2D1BB1D9D531B00B7B453 /* Images.xcassets */,
|
B2F2D1BB1D9D531B00B7B453 /* Images.xcassets */,
|
||||||
008F07F21AC5B25A0029DE68 /* main.jsbundle */,
|
008F07F21AC5B25A0029DE68 /* main.jsbundle */,
|
||||||
13B07FAF1A68108700A75B9A /* AppDelegate.h */,
|
13B07FAF1A68108700A75B9A /* AppDelegate.h */,
|
||||||
13B07FB01A68108700A75B9A /* AppDelegate.m */,
|
13B07FB01A68108700A75B9A /* AppDelegate.mm */,
|
||||||
13B07FB61A68108700A75B9A /* Info.plist */,
|
13B07FB61A68108700A75B9A /* Info.plist */,
|
||||||
13B07FB71A68108700A75B9A /* main.m */,
|
13B07FB71A68108700A75B9A /* main.m */,
|
||||||
3AB1C3AD245C043900098F67 /* StatusIm-Bridging-Header.h */,
|
3AB1C3AD245C043900098F67 /* StatusIm-Bridging-Header.h */,
|
||||||
@@ -314,9 +314,9 @@
|
|||||||
CE4E31B21D8695250033ED64 /* Statusgo.xcframework */,
|
CE4E31B21D8695250033ED64 /* Statusgo.xcframework */,
|
||||||
8B9A886A2CB448B1ABA0EB62 /* libc++.tbd */,
|
8B9A886A2CB448B1ABA0EB62 /* libc++.tbd */,
|
||||||
4E586E1B0E544F64AA9F5BD1 /* libz.tbd */,
|
4E586E1B0E544F64AA9F5BD1 /* libz.tbd */,
|
||||||
928CC6D1D5BCCF9D3BC60D6A /* libPods-Status-StatusIm.a */,
|
FBEDE2F94002488EF6B277DA /* libPods-Status-StatusIm.a */,
|
||||||
A4B974811E312E44D5BBE9EC /* libPods-Status-StatusIm-StatusImTests.a */,
|
06FA6B17CC0A7FAFA9DA5364 /* libPods-Status-StatusIm-StatusImTests.a */,
|
||||||
57CBBEA420F440D344DD99E5 /* libPods-Status-StatusImPR.a */,
|
4D059F2E62D7CD9FB1896703 /* libPods-Status-StatusImPR.a */,
|
||||||
);
|
);
|
||||||
name = Frameworks;
|
name = Frameworks;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -324,12 +324,12 @@
|
|||||||
D0D5C8D06825D33BA2D2121E /* Pods */ = {
|
D0D5C8D06825D33BA2D2121E /* Pods */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
564309A78329EB657677709C /* Pods-Status-StatusIm.debug.xcconfig */,
|
886398AFEF2B823AC8A4912C /* Pods-Status-StatusIm.debug.xcconfig */,
|
||||||
5F30F922E4B02AB10F6CB65E /* Pods-Status-StatusIm.release.xcconfig */,
|
08A713A336BFEE0924821EC9 /* Pods-Status-StatusIm.release.xcconfig */,
|
||||||
43341A7CBCE457435677CC51 /* Pods-Status-StatusIm-StatusImTests.debug.xcconfig */,
|
EBFEABB7D6CC1144D83FBA82 /* Pods-Status-StatusIm-StatusImTests.debug.xcconfig */,
|
||||||
70ACC04C7CF0A6C6421A805D /* Pods-Status-StatusIm-StatusImTests.release.xcconfig */,
|
84C3C20891247EC6BFF93B51 /* Pods-Status-StatusIm-StatusImTests.release.xcconfig */,
|
||||||
8D3CFDC9666FBD03D1AA059A /* Pods-Status-StatusImPR.debug.xcconfig */,
|
4D7FC122A838AC3BFC46D82B /* Pods-Status-StatusImPR.debug.xcconfig */,
|
||||||
8B3C115CD813729DE4735219 /* Pods-Status-StatusImPR.release.xcconfig */,
|
103861DFF36B6063BED2602B /* Pods-Status-StatusImPR.release.xcconfig */,
|
||||||
);
|
);
|
||||||
path = Pods;
|
path = Pods;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -341,11 +341,11 @@
|
|||||||
isa = PBXNativeTarget;
|
isa = PBXNativeTarget;
|
||||||
buildConfigurationList = 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "StatusImTests" */;
|
buildConfigurationList = 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "StatusImTests" */;
|
||||||
buildPhases = (
|
buildPhases = (
|
||||||
0F876BD5356F61BF142A01A0 /* [CP] Check Pods Manifest.lock */,
|
F083BDB009D93F14ABE9577A /* [CP] Check Pods Manifest.lock */,
|
||||||
00E356EA1AD99517003FC87E /* Sources */,
|
00E356EA1AD99517003FC87E /* Sources */,
|
||||||
00E356EB1AD99517003FC87E /* Frameworks */,
|
00E356EB1AD99517003FC87E /* Frameworks */,
|
||||||
00E356EC1AD99517003FC87E /* Resources */,
|
00E356EC1AD99517003FC87E /* Resources */,
|
||||||
6ECED279DE66BA46FFB5EE0D /* [CP] Copy Pods Resources */,
|
D2C750D3F094DB4514432955 /* [CP] Copy Pods Resources */,
|
||||||
);
|
);
|
||||||
buildRules = (
|
buildRules = (
|
||||||
);
|
);
|
||||||
@@ -361,14 +361,14 @@
|
|||||||
isa = PBXNativeTarget;
|
isa = PBXNativeTarget;
|
||||||
buildConfigurationList = 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "StatusIm" */;
|
buildConfigurationList = 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "StatusIm" */;
|
||||||
buildPhases = (
|
buildPhases = (
|
||||||
119C58BA120E4E4D213DA7CD /* [CP] Check Pods Manifest.lock */,
|
29DFA8D4A1684BDC5257F30D /* [CP] Check Pods Manifest.lock */,
|
||||||
13B07F871A680F5B00A75B9A /* Sources */,
|
13B07F871A680F5B00A75B9A /* Sources */,
|
||||||
13B07F8C1A680F5B00A75B9A /* Frameworks */,
|
13B07F8C1A680F5B00A75B9A /* Frameworks */,
|
||||||
13B07F8E1A680F5B00A75B9A /* Resources */,
|
13B07F8E1A680F5B00A75B9A /* Resources */,
|
||||||
00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */,
|
00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */,
|
||||||
20B6B6891D92C42700CC5C6A /* Embed Frameworks */,
|
20B6B6891D92C42700CC5C6A /* Embed Frameworks */,
|
||||||
E3914A731DF919ED00EBB515 /* Run Script */,
|
E3914A731DF919ED00EBB515 /* Run Script */,
|
||||||
3C1038075AE5E6FB86AC2319 /* [CP] Copy Pods Resources */,
|
81ABD64BC3E76C9EEE7A6C62 /* [CP] Copy Pods Resources */,
|
||||||
);
|
);
|
||||||
buildRules = (
|
buildRules = (
|
||||||
);
|
);
|
||||||
@@ -383,14 +383,14 @@
|
|||||||
isa = PBXNativeTarget;
|
isa = PBXNativeTarget;
|
||||||
buildConfigurationList = 3AAD2AD924A3A60E0075D594 /* Build configuration list for PBXNativeTarget "StatusImPR" */;
|
buildConfigurationList = 3AAD2AD924A3A60E0075D594 /* Build configuration list for PBXNativeTarget "StatusImPR" */;
|
||||||
buildPhases = (
|
buildPhases = (
|
||||||
50F1BA2DC5224CBE6FDD2998 /* [CP] Check Pods Manifest.lock */,
|
B75C010670287761677282A4 /* [CP] Check Pods Manifest.lock */,
|
||||||
3AAD2ABB24A3A60E0075D594 /* Sources */,
|
3AAD2ABB24A3A60E0075D594 /* Sources */,
|
||||||
3AAD2ABF24A3A60E0075D594 /* Frameworks */,
|
3AAD2ABF24A3A60E0075D594 /* Frameworks */,
|
||||||
3AAD2AC924A3A60E0075D594 /* Resources */,
|
3AAD2AC924A3A60E0075D594 /* Resources */,
|
||||||
3AAD2AD524A3A60E0075D594 /* Bundle React Native code and images */,
|
3AAD2AD524A3A60E0075D594 /* Bundle React Native code and images */,
|
||||||
3AAD2AD624A3A60E0075D594 /* Embed Frameworks */,
|
3AAD2AD624A3A60E0075D594 /* Embed Frameworks */,
|
||||||
3AAD2AD724A3A60E0075D594 /* Run Script */,
|
3AAD2AD724A3A60E0075D594 /* Run Script */,
|
||||||
E732E3E1B024946173BF6D3D /* [CP] Copy Pods Resources */,
|
C7E5420D406F9FB4ACC8ECE8 /* [CP] Copy Pods Resources */,
|
||||||
);
|
);
|
||||||
buildRules = (
|
buildRules = (
|
||||||
);
|
);
|
||||||
@@ -417,9 +417,7 @@
|
|||||||
TestTargetID = 13B07F861A680F5B00A75B9A;
|
TestTargetID = 13B07F861A680F5B00A75B9A;
|
||||||
};
|
};
|
||||||
13B07F861A680F5B00A75B9A = {
|
13B07F861A680F5B00A75B9A = {
|
||||||
DevelopmentTeam = 8B5X2M6H2Y;
|
|
||||||
LastSwiftMigration = 1140;
|
LastSwiftMigration = 1140;
|
||||||
ProvisioningStyle = Manual;
|
|
||||||
SystemCapabilities = {
|
SystemCapabilities = {
|
||||||
com.apple.BackgroundModes = {
|
com.apple.BackgroundModes = {
|
||||||
enabled = 1;
|
enabled = 1;
|
||||||
@@ -544,31 +542,9 @@
|
|||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
shellPath = "/usr/bin/env sh";
|
shellPath = "/usr/bin/env sh";
|
||||||
shellScript = "set -o errexit\nexport NODE_BINARY=\"${NODE_BINARY:-node}\"\nexport NODE_ARGS=\" --openssl-legacy-provider --max-old-space-size=16384 \"\n\nbash -x ../node_modules/react-native/scripts/react-native-xcode.sh > ./logs/react-native-xcode.log 2>&1";
|
shellScript = "set -o errexit\nexport NODE_BINARY=\"${NODE_BINARY:-node}\"\nexport NODE_ARGS=\"${NODE_ARGS:- --max-old-space-size=16384 }\"\n\nbash -x ../node_modules/react-native/scripts/react-native-xcode.sh > ./logs/react-native-xcode.log 2>&1";
|
||||||
};
|
};
|
||||||
0F876BD5356F61BF142A01A0 /* [CP] Check Pods Manifest.lock */ = {
|
29DFA8D4A1684BDC5257F30D /* [CP] Check Pods Manifest.lock */ = {
|
||||||
isa = PBXShellScriptBuildPhase;
|
|
||||||
buildActionMask = 2147483647;
|
|
||||||
files = (
|
|
||||||
);
|
|
||||||
inputFileListPaths = (
|
|
||||||
);
|
|
||||||
inputPaths = (
|
|
||||||
"${PODS_PODFILE_DIR_PATH}/Podfile.lock",
|
|
||||||
"${PODS_ROOT}/Manifest.lock",
|
|
||||||
);
|
|
||||||
name = "[CP] Check Pods Manifest.lock";
|
|
||||||
outputFileListPaths = (
|
|
||||||
);
|
|
||||||
outputPaths = (
|
|
||||||
"$(DERIVED_FILE_DIR)/Pods-Status-StatusIm-StatusImTests-checkManifestLockResult.txt",
|
|
||||||
);
|
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
|
||||||
shellPath = "/usr/bin/env sh";
|
|
||||||
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
|
|
||||||
showEnvVarsInLog = 0;
|
|
||||||
};
|
|
||||||
119C58BA120E4E4D213DA7CD /* [CP] Check Pods Manifest.lock */ = {
|
|
||||||
isa = PBXShellScriptBuildPhase;
|
isa = PBXShellScriptBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
files = (
|
files = (
|
||||||
@@ -586,7 +562,7 @@
|
|||||||
"$(DERIVED_FILE_DIR)/Pods-Status-StatusIm-checkManifestLockResult.txt",
|
"$(DERIVED_FILE_DIR)/Pods-Status-StatusIm-checkManifestLockResult.txt",
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
shellPath = "/usr/bin/env sh";
|
shellPath = /bin/sh;
|
||||||
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
|
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
|
||||||
showEnvVarsInLog = 0;
|
showEnvVarsInLog = 0;
|
||||||
};
|
};
|
||||||
@@ -602,7 +578,7 @@
|
|||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
shellPath = "/usr/bin/env sh";
|
shellPath = "/usr/bin/env sh";
|
||||||
shellScript = "set -o errexit\nexport NODE_BINARY=\"${NODE_BINARY:-node}\"\nexport NODE_ARGS=\" --openssl-legacy-provider --max-old-space-size=16384 \"\n\nbash -x ../node_modules/react-native/scripts/react-native-xcode.sh > ./logs/react-native-xcode.log 2>&1";
|
shellScript = "set -o errexit\nexport NODE_BINARY=\"${NODE_BINARY:-node}\"\nexport NODE_ARGS=\"${NODE_ARGS:- --max-old-space-size=16384 }\"\n\nbash -x ../node_modules/react-native/scripts/react-native-xcode.sh > ./logs/react-native-xcode.log 2>&1";
|
||||||
};
|
};
|
||||||
3AAD2AD724A3A60E0075D594 /* Run Script */ = {
|
3AAD2AD724A3A60E0075D594 /* Run Script */ = {
|
||||||
isa = PBXShellScriptBuildPhase;
|
isa = PBXShellScriptBuildPhase;
|
||||||
@@ -618,7 +594,7 @@
|
|||||||
shellPath = "/usr/bin/env sh";
|
shellPath = "/usr/bin/env sh";
|
||||||
shellScript = "\"${PROJECT_DIR}/scripts/set_xcode_version.sh\" > ./logs/set_xcode_version.log 2>&1";
|
shellScript = "\"${PROJECT_DIR}/scripts/set_xcode_version.sh\" > ./logs/set_xcode_version.log 2>&1";
|
||||||
};
|
};
|
||||||
3C1038075AE5E6FB86AC2319 /* [CP] Copy Pods Resources */ = {
|
81ABD64BC3E76C9EEE7A6C62 /* [CP] Copy Pods Resources */ = {
|
||||||
isa = PBXShellScriptBuildPhase;
|
isa = PBXShellScriptBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
files = (
|
files = (
|
||||||
@@ -636,11 +612,11 @@
|
|||||||
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/TOCropViewControllerBundle.bundle",
|
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/TOCropViewControllerBundle.bundle",
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
shellPath = "/usr/bin/env sh";
|
shellPath = /bin/sh;
|
||||||
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Status-StatusIm/Pods-Status-StatusIm-resources.sh\"\n";
|
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Status-StatusIm/Pods-Status-StatusIm-resources.sh\"\n";
|
||||||
showEnvVarsInLog = 0;
|
showEnvVarsInLog = 0;
|
||||||
};
|
};
|
||||||
50F1BA2DC5224CBE6FDD2998 /* [CP] Check Pods Manifest.lock */ = {
|
B75C010670287761677282A4 /* [CP] Check Pods Manifest.lock */ = {
|
||||||
isa = PBXShellScriptBuildPhase;
|
isa = PBXShellScriptBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
files = (
|
files = (
|
||||||
@@ -658,47 +634,11 @@
|
|||||||
"$(DERIVED_FILE_DIR)/Pods-Status-StatusImPR-checkManifestLockResult.txt",
|
"$(DERIVED_FILE_DIR)/Pods-Status-StatusImPR-checkManifestLockResult.txt",
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
shellPath = "/usr/bin/env sh";
|
shellPath = /bin/sh;
|
||||||
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
|
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
|
||||||
showEnvVarsInLog = 0;
|
showEnvVarsInLog = 0;
|
||||||
};
|
};
|
||||||
6ECED279DE66BA46FFB5EE0D /* [CP] Copy Pods Resources */ = {
|
C7E5420D406F9FB4ACC8ECE8 /* [CP] Copy Pods Resources */ = {
|
||||||
isa = PBXShellScriptBuildPhase;
|
|
||||||
buildActionMask = 2147483647;
|
|
||||||
files = (
|
|
||||||
);
|
|
||||||
inputPaths = (
|
|
||||||
"${PODS_ROOT}/Target Support Files/Pods-Status-StatusIm-StatusImTests/Pods-Status-StatusIm-StatusImTests-resources.sh",
|
|
||||||
"${PODS_CONFIGURATION_BUILD_DIR}/RNImageCropPicker/QBImagePicker.bundle",
|
|
||||||
"${PODS_CONFIGURATION_BUILD_DIR}/React-Core/AccessibilityResources.bundle",
|
|
||||||
"${PODS_CONFIGURATION_BUILD_DIR}/TOCropViewController/TOCropViewControllerBundle.bundle",
|
|
||||||
);
|
|
||||||
name = "[CP] Copy Pods Resources";
|
|
||||||
outputPaths = (
|
|
||||||
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/QBImagePicker.bundle",
|
|
||||||
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AccessibilityResources.bundle",
|
|
||||||
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/TOCropViewControllerBundle.bundle",
|
|
||||||
);
|
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
|
||||||
shellPath = "/usr/bin/env sh";
|
|
||||||
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Status-StatusIm-StatusImTests/Pods-Status-StatusIm-StatusImTests-resources.sh\"\n";
|
|
||||||
showEnvVarsInLog = 0;
|
|
||||||
};
|
|
||||||
E3914A731DF919ED00EBB515 /* Run Script */ = {
|
|
||||||
isa = PBXShellScriptBuildPhase;
|
|
||||||
buildActionMask = 8;
|
|
||||||
files = (
|
|
||||||
);
|
|
||||||
inputPaths = (
|
|
||||||
);
|
|
||||||
name = "Run Script";
|
|
||||||
outputPaths = (
|
|
||||||
);
|
|
||||||
runOnlyForDeploymentPostprocessing = 1;
|
|
||||||
shellPath = "/usr/bin/env sh";
|
|
||||||
shellScript = "\"${PROJECT_DIR}/scripts/set_xcode_version.sh\" > ./logs/set_xcode_version.log 2>&1";
|
|
||||||
};
|
|
||||||
E732E3E1B024946173BF6D3D /* [CP] Copy Pods Resources */ = {
|
|
||||||
isa = PBXShellScriptBuildPhase;
|
isa = PBXShellScriptBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
files = (
|
files = (
|
||||||
@@ -716,10 +656,68 @@
|
|||||||
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/TOCropViewControllerBundle.bundle",
|
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/TOCropViewControllerBundle.bundle",
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
shellPath = "/usr/bin/env sh";
|
shellPath = /bin/sh;
|
||||||
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Status-StatusImPR/Pods-Status-StatusImPR-resources.sh\"\n";
|
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Status-StatusImPR/Pods-Status-StatusImPR-resources.sh\"\n";
|
||||||
showEnvVarsInLog = 0;
|
showEnvVarsInLog = 0;
|
||||||
};
|
};
|
||||||
|
D2C750D3F094DB4514432955 /* [CP] Copy Pods Resources */ = {
|
||||||
|
isa = PBXShellScriptBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
);
|
||||||
|
inputPaths = (
|
||||||
|
"${PODS_ROOT}/Target Support Files/Pods-Status-StatusIm-StatusImTests/Pods-Status-StatusIm-StatusImTests-resources.sh",
|
||||||
|
"${PODS_CONFIGURATION_BUILD_DIR}/RNImageCropPicker/QBImagePicker.bundle",
|
||||||
|
"${PODS_CONFIGURATION_BUILD_DIR}/React-Core/AccessibilityResources.bundle",
|
||||||
|
"${PODS_CONFIGURATION_BUILD_DIR}/TOCropViewController/TOCropViewControllerBundle.bundle",
|
||||||
|
);
|
||||||
|
name = "[CP] Copy Pods Resources";
|
||||||
|
outputPaths = (
|
||||||
|
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/QBImagePicker.bundle",
|
||||||
|
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AccessibilityResources.bundle",
|
||||||
|
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/TOCropViewControllerBundle.bundle",
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
shellPath = /bin/sh;
|
||||||
|
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Status-StatusIm-StatusImTests/Pods-Status-StatusIm-StatusImTests-resources.sh\"\n";
|
||||||
|
showEnvVarsInLog = 0;
|
||||||
|
};
|
||||||
|
E3914A731DF919ED00EBB515 /* Run Script */ = {
|
||||||
|
isa = PBXShellScriptBuildPhase;
|
||||||
|
buildActionMask = 8;
|
||||||
|
files = (
|
||||||
|
);
|
||||||
|
inputPaths = (
|
||||||
|
);
|
||||||
|
name = "Run Script";
|
||||||
|
outputPaths = (
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 1;
|
||||||
|
shellPath = "/usr/bin/env sh";
|
||||||
|
shellScript = "\"${PROJECT_DIR}/scripts/set_xcode_version.sh\" > ./logs/set_xcode_version.log 2>&1";
|
||||||
|
};
|
||||||
|
F083BDB009D93F14ABE9577A /* [CP] Check Pods Manifest.lock */ = {
|
||||||
|
isa = PBXShellScriptBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
);
|
||||||
|
inputFileListPaths = (
|
||||||
|
);
|
||||||
|
inputPaths = (
|
||||||
|
"${PODS_PODFILE_DIR_PATH}/Podfile.lock",
|
||||||
|
"${PODS_ROOT}/Manifest.lock",
|
||||||
|
);
|
||||||
|
name = "[CP] Check Pods Manifest.lock";
|
||||||
|
outputFileListPaths = (
|
||||||
|
);
|
||||||
|
outputPaths = (
|
||||||
|
"$(DERIVED_FILE_DIR)/Pods-Status-StatusIm-StatusImTests-checkManifestLockResult.txt",
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
shellPath = /bin/sh;
|
||||||
|
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
|
||||||
|
showEnvVarsInLog = 0;
|
||||||
|
};
|
||||||
/* End PBXShellScriptBuildPhase section */
|
/* End PBXShellScriptBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXSourcesBuildPhase section */
|
/* Begin PBXSourcesBuildPhase section */
|
||||||
@@ -737,7 +735,7 @@
|
|||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
files = (
|
files = (
|
||||||
65F6941925780A4F00A45E76 /* Bridge.swift in Sources */,
|
65F6941925780A4F00A45E76 /* Bridge.swift in Sources */,
|
||||||
13B07FBC1A68108700A75B9A /* AppDelegate.m in Sources */,
|
13B07FBC1A68108700A75B9A /* AppDelegate.mm in Sources */,
|
||||||
3A2626CF245C3F2200D5F94B /* Dummy.swift in Sources */,
|
3A2626CF245C3F2200D5F94B /* Dummy.swift in Sources */,
|
||||||
13B07FC11A68108700A75B9A /* main.m in Sources */,
|
13B07FC11A68108700A75B9A /* main.m in Sources */,
|
||||||
);
|
);
|
||||||
@@ -748,7 +746,7 @@
|
|||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
files = (
|
files = (
|
||||||
65F6941B25780A4F00A45E76 /* Bridge.swift in Sources */,
|
65F6941B25780A4F00A45E76 /* Bridge.swift in Sources */,
|
||||||
3AAD2ABC24A3A60E0075D594 /* AppDelegate.m in Sources */,
|
3AAD2ABC24A3A60E0075D594 /* AppDelegate.mm in Sources */,
|
||||||
3AAD2ABD24A3A60E0075D594 /* Dummy.swift in Sources */,
|
3AAD2ABD24A3A60E0075D594 /* Dummy.swift in Sources */,
|
||||||
3AAD2ABE24A3A60E0075D594 /* main.m in Sources */,
|
3AAD2ABE24A3A60E0075D594 /* main.m in Sources */,
|
||||||
);
|
);
|
||||||
@@ -767,7 +765,7 @@
|
|||||||
/* Begin XCBuildConfiguration section */
|
/* Begin XCBuildConfiguration section */
|
||||||
00E356F61AD99517003FC87E /* Debug */ = {
|
00E356F61AD99517003FC87E /* Debug */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
baseConfigurationReference = 43341A7CBCE457435677CC51 /* Pods-Status-StatusIm-StatusImTests.debug.xcconfig */;
|
baseConfigurationReference = EBFEABB7D6CC1144D83FBA82 /* Pods-Status-StatusIm-StatusImTests.debug.xcconfig */;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
|
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
|
||||||
BUNDLE_ID_SUFFIX = .debug;
|
BUNDLE_ID_SUFFIX = .debug;
|
||||||
@@ -784,7 +782,7 @@
|
|||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
);
|
);
|
||||||
INFOPLIST_FILE = StatusImTests/Info.plist;
|
INFOPLIST_FILE = StatusImTests/Info.plist;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 12.4;
|
||||||
LD_RUNPATH_SEARCH_PATHS = (
|
LD_RUNPATH_SEARCH_PATHS = (
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"@executable_path/Frameworks",
|
"@executable_path/Frameworks",
|
||||||
@@ -804,7 +802,7 @@
|
|||||||
};
|
};
|
||||||
00E356F71AD99517003FC87E /* Release */ = {
|
00E356F71AD99517003FC87E /* Release */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
baseConfigurationReference = 70ACC04C7CF0A6C6421A805D /* Pods-Status-StatusIm-StatusImTests.release.xcconfig */;
|
baseConfigurationReference = 84C3C20891247EC6BFF93B51 /* Pods-Status-StatusIm-StatusImTests.release.xcconfig */;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
|
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
|
||||||
BUNDLE_ID_SUFFIX = "";
|
BUNDLE_ID_SUFFIX = "";
|
||||||
@@ -818,7 +816,7 @@
|
|||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
);
|
);
|
||||||
INFOPLIST_FILE = StatusImTests/Info.plist;
|
INFOPLIST_FILE = StatusImTests/Info.plist;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 12.4;
|
||||||
LD_RUNPATH_SEARCH_PATHS = (
|
LD_RUNPATH_SEARCH_PATHS = (
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"@executable_path/Frameworks",
|
"@executable_path/Frameworks",
|
||||||
@@ -837,21 +835,21 @@
|
|||||||
};
|
};
|
||||||
13B07F941A680F5B00A75B9A /* Debug */ = {
|
13B07F941A680F5B00A75B9A /* Debug */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
baseConfigurationReference = 564309A78329EB657677709C /* Pods-Status-StatusIm.debug.xcconfig */;
|
baseConfigurationReference = 886398AFEF2B823AC8A4912C /* Pods-Status-StatusIm.debug.xcconfig */;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ASSETCATALOG_COMPILER_APPICON_NAME = "AppIcon$(BUNDLE_ID_SUFFIX)";
|
ASSETCATALOG_COMPILER_APPICON_NAME = "AppIcon$(BUNDLE_ID_SUFFIX)";
|
||||||
BUNDLE_ID_SUFFIX = .debug;
|
BUNDLE_ID_SUFFIX = .debug;
|
||||||
|
CLANG_CXX_LANGUAGE_STANDARD = "c++17";
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
CODE_SIGN_ENTITLEMENTS = StatusIm/StatusIm.entitlements;
|
CODE_SIGN_ENTITLEMENTS = StatusIm/StatusIm.entitlements;
|
||||||
CODE_SIGN_IDENTITY = "iPhone Distribution";
|
CODE_SIGN_IDENTITY = "Apple Development";
|
||||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
CODE_SIGN_STYLE = Automatic;
|
||||||
CODE_SIGN_STYLE = Manual;
|
|
||||||
CUSTOM_PRODUCT_NAME = "Status Debug";
|
CUSTOM_PRODUCT_NAME = "Status Debug";
|
||||||
DEAD_CODE_STRIPPING = YES;
|
DEAD_CODE_STRIPPING = YES;
|
||||||
DEVELOPMENT_TEAM = 8B5X2M6H2Y;
|
DEVELOPMENT_TEAM = 8B5X2M6H2Y;
|
||||||
EXCLUDED_ARCHS = "";
|
EXCLUDED_ARCHS = "";
|
||||||
"EXCLUDED_ARCHS[sdk=iphoneos*]" = x86_64;
|
"EXCLUDED_ARCHS[sdk=iphoneos*]" = x86_64;
|
||||||
"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64;
|
"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = "";
|
||||||
FRAMEWORK_SEARCH_PATHS = (
|
FRAMEWORK_SEARCH_PATHS = (
|
||||||
"$(PROJECT_DIR)/../modules/react-native-status/ios/RCTStatus",
|
"$(PROJECT_DIR)/../modules/react-native-status/ios/RCTStatus",
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
@@ -881,7 +879,7 @@
|
|||||||
"$(SRCROOT)/../node_modules/react-native/Libraries/LinkingIOS",
|
"$(SRCROOT)/../node_modules/react-native/Libraries/LinkingIOS",
|
||||||
);
|
);
|
||||||
INFOPLIST_FILE = StatusIm/Info.plist;
|
INFOPLIST_FILE = StatusIm/Info.plist;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 12.4;
|
||||||
LD_RUNPATH_SEARCH_PATHS = (
|
LD_RUNPATH_SEARCH_PATHS = (
|
||||||
/usr/lib/swift,
|
/usr/lib/swift,
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
@@ -891,15 +889,21 @@
|
|||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"$(PROJECT_DIR)",
|
"$(PROJECT_DIR)",
|
||||||
);
|
);
|
||||||
|
OTHER_CPLUSPLUSFLAGS = (
|
||||||
|
"$(OTHER_CFLAGS)",
|
||||||
|
"-DFOLLY_NO_CONFIG",
|
||||||
|
"-DFOLLY_MOBILE=1",
|
||||||
|
"-DFOLLY_USE_LIBCPP=1",
|
||||||
|
);
|
||||||
OTHER_LDFLAGS = (
|
OTHER_LDFLAGS = (
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"-lc++",
|
"-lc++",
|
||||||
"-ObjC",
|
"-ObjC",
|
||||||
);
|
);
|
||||||
|
PRESERVE_DEAD_CODE_INITS_AND_TERMS = YES;
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = im.status.ethereum;
|
PRODUCT_BUNDLE_IDENTIFIER = im.status.ethereum;
|
||||||
PRODUCT_NAME = StatusIm;
|
PRODUCT_NAME = StatusIm;
|
||||||
PROVISIONING_PROFILE = "9da75626-9594-43d9-a827-0f6d43c28f54";
|
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||||
PROVISIONING_PROFILE_SPECIFIER = "match Development im.status.ethereum";
|
|
||||||
SWIFT_OBJC_BRIDGING_HEADER = "StatusIm-Bridging-Header.h";
|
SWIFT_OBJC_BRIDGING_HEADER = "StatusIm-Bridging-Header.h";
|
||||||
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
||||||
SWIFT_VERSION = 5.0;
|
SWIFT_VERSION = 5.0;
|
||||||
@@ -911,10 +915,11 @@
|
|||||||
};
|
};
|
||||||
13B07F951A680F5B00A75B9A /* Release */ = {
|
13B07F951A680F5B00A75B9A /* Release */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
baseConfigurationReference = 5F30F922E4B02AB10F6CB65E /* Pods-Status-StatusIm.release.xcconfig */;
|
baseConfigurationReference = 08A713A336BFEE0924821EC9 /* Pods-Status-StatusIm.release.xcconfig */;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ASSETCATALOG_COMPILER_APPICON_NAME = "AppIcon$(BUNDLE_ID_SUFFIX)";
|
ASSETCATALOG_COMPILER_APPICON_NAME = "AppIcon$(BUNDLE_ID_SUFFIX)";
|
||||||
BUNDLE_ID_SUFFIX = "";
|
BUNDLE_ID_SUFFIX = "";
|
||||||
|
CLANG_CXX_LANGUAGE_STANDARD = "c++17";
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
CODE_SIGN_ENTITLEMENTS = StatusIm/StatusIm.entitlements;
|
CODE_SIGN_ENTITLEMENTS = StatusIm/StatusIm.entitlements;
|
||||||
CODE_SIGN_IDENTITY = "iPhone Developer";
|
CODE_SIGN_IDENTITY = "iPhone Developer";
|
||||||
@@ -924,6 +929,7 @@
|
|||||||
DEAD_CODE_STRIPPING = YES;
|
DEAD_CODE_STRIPPING = YES;
|
||||||
DEVELOPMENT_TEAM = 8B5X2M6H2Y;
|
DEVELOPMENT_TEAM = 8B5X2M6H2Y;
|
||||||
EXCLUDED_ARCHS = "";
|
EXCLUDED_ARCHS = "";
|
||||||
|
"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = "";
|
||||||
FRAMEWORK_SEARCH_PATHS = (
|
FRAMEWORK_SEARCH_PATHS = (
|
||||||
"$(PROJECT_DIR)/../modules/react-native-status/ios/RCTStatus",
|
"$(PROJECT_DIR)/../modules/react-native-status/ios/RCTStatus",
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
@@ -947,7 +953,7 @@
|
|||||||
"$(SRCROOT)/../node_modules/react-native/Libraries/LinkingIOS",
|
"$(SRCROOT)/../node_modules/react-native/Libraries/LinkingIOS",
|
||||||
);
|
);
|
||||||
INFOPLIST_FILE = StatusIm/Info.plist;
|
INFOPLIST_FILE = StatusIm/Info.plist;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 12.4;
|
||||||
LD_RUNPATH_SEARCH_PATHS = (
|
LD_RUNPATH_SEARCH_PATHS = (
|
||||||
/usr/lib/swift,
|
/usr/lib/swift,
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
@@ -957,11 +963,18 @@
|
|||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"$(PROJECT_DIR)",
|
"$(PROJECT_DIR)",
|
||||||
);
|
);
|
||||||
|
OTHER_CPLUSPLUSFLAGS = (
|
||||||
|
"$(OTHER_CFLAGS)",
|
||||||
|
"-DFOLLY_NO_CONFIG",
|
||||||
|
"-DFOLLY_MOBILE=1",
|
||||||
|
"-DFOLLY_USE_LIBCPP=1",
|
||||||
|
);
|
||||||
OTHER_LDFLAGS = (
|
OTHER_LDFLAGS = (
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"-lc++",
|
"-lc++",
|
||||||
"-ObjC",
|
"-ObjC",
|
||||||
);
|
);
|
||||||
|
PRESERVE_DEAD_CODE_INITS_AND_TERMS = YES;
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = im.status.ethereum;
|
PRODUCT_BUNDLE_IDENTIFIER = im.status.ethereum;
|
||||||
PRODUCT_NAME = StatusIm;
|
PRODUCT_NAME = StatusIm;
|
||||||
PROVISIONING_PROFILE = "e2202b12-7a66-4ff7-af3c-a52e35f32dc1";
|
PROVISIONING_PROFILE = "e2202b12-7a66-4ff7-af3c-a52e35f32dc1";
|
||||||
@@ -975,10 +988,11 @@
|
|||||||
};
|
};
|
||||||
3AAD2ADA24A3A60E0075D594 /* Debug */ = {
|
3AAD2ADA24A3A60E0075D594 /* Debug */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
baseConfigurationReference = 8D3CFDC9666FBD03D1AA059A /* Pods-Status-StatusImPR.debug.xcconfig */;
|
baseConfigurationReference = 4D7FC122A838AC3BFC46D82B /* Pods-Status-StatusImPR.debug.xcconfig */;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ASSETCATALOG_COMPILER_APPICON_NAME = "AppIcon$(BUNDLE_ID_SUFFIX)";
|
ASSETCATALOG_COMPILER_APPICON_NAME = "AppIcon$(BUNDLE_ID_SUFFIX)";
|
||||||
BUNDLE_ID_SUFFIX = .debug;
|
BUNDLE_ID_SUFFIX = .debug;
|
||||||
|
CLANG_CXX_LANGUAGE_STANDARD = "c++17";
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
CODE_SIGN_ENTITLEMENTS = StatusImPR/StatusImPR.entitlements;
|
CODE_SIGN_ENTITLEMENTS = StatusImPR/StatusImPR.entitlements;
|
||||||
CODE_SIGN_IDENTITY = "iPhone Distribution";
|
CODE_SIGN_IDENTITY = "iPhone Distribution";
|
||||||
@@ -987,6 +1001,7 @@
|
|||||||
CUSTOM_PRODUCT_NAME = "Status Debug";
|
CUSTOM_PRODUCT_NAME = "Status Debug";
|
||||||
DEAD_CODE_STRIPPING = YES;
|
DEAD_CODE_STRIPPING = YES;
|
||||||
DEVELOPMENT_TEAM = 8B5X2M6H2Y;
|
DEVELOPMENT_TEAM = 8B5X2M6H2Y;
|
||||||
|
"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = "";
|
||||||
FRAMEWORK_SEARCH_PATHS = (
|
FRAMEWORK_SEARCH_PATHS = (
|
||||||
"$(PROJECT_DIR)/../modules/react-native-status/ios/RCTStatus",
|
"$(PROJECT_DIR)/../modules/react-native-status/ios/RCTStatus",
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
@@ -1016,7 +1031,7 @@
|
|||||||
"$(SRCROOT)/../node_modules/react-native/Libraries/LinkingIOS",
|
"$(SRCROOT)/../node_modules/react-native/Libraries/LinkingIOS",
|
||||||
);
|
);
|
||||||
INFOPLIST_FILE = StatusImPR/Info.plist;
|
INFOPLIST_FILE = StatusImPR/Info.plist;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 12.4;
|
||||||
LD_RUNPATH_SEARCH_PATHS = (
|
LD_RUNPATH_SEARCH_PATHS = (
|
||||||
/usr/lib/swift,
|
/usr/lib/swift,
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
@@ -1026,6 +1041,12 @@
|
|||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"$(PROJECT_DIR)",
|
"$(PROJECT_DIR)",
|
||||||
);
|
);
|
||||||
|
OTHER_CPLUSPLUSFLAGS = (
|
||||||
|
"$(OTHER_CFLAGS)",
|
||||||
|
"-DFOLLY_NO_CONFIG",
|
||||||
|
"-DFOLLY_MOBILE=1",
|
||||||
|
"-DFOLLY_USE_LIBCPP=1",
|
||||||
|
);
|
||||||
OTHER_LDFLAGS = (
|
OTHER_LDFLAGS = (
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"-lc++",
|
"-lc++",
|
||||||
@@ -1044,10 +1065,11 @@
|
|||||||
};
|
};
|
||||||
3AAD2ADB24A3A60E0075D594 /* Release */ = {
|
3AAD2ADB24A3A60E0075D594 /* Release */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
baseConfigurationReference = 8B3C115CD813729DE4735219 /* Pods-Status-StatusImPR.release.xcconfig */;
|
baseConfigurationReference = 103861DFF36B6063BED2602B /* Pods-Status-StatusImPR.release.xcconfig */;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ASSETCATALOG_COMPILER_APPICON_NAME = "AppIconPR$(BUNDLE_ID_SUFFIX)";
|
ASSETCATALOG_COMPILER_APPICON_NAME = "AppIconPR$(BUNDLE_ID_SUFFIX)";
|
||||||
BUNDLE_ID_SUFFIX = "";
|
BUNDLE_ID_SUFFIX = "";
|
||||||
|
CLANG_CXX_LANGUAGE_STANDARD = "c++17";
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
CODE_SIGN_ENTITLEMENTS = StatusImPR/StatusImPR.entitlements;
|
CODE_SIGN_ENTITLEMENTS = StatusImPR/StatusImPR.entitlements;
|
||||||
CODE_SIGN_IDENTITY = "iPhone Developer";
|
CODE_SIGN_IDENTITY = "iPhone Developer";
|
||||||
@@ -1056,6 +1078,7 @@
|
|||||||
CUSTOM_PRODUCT_NAME = Status;
|
CUSTOM_PRODUCT_NAME = Status;
|
||||||
DEAD_CODE_STRIPPING = YES;
|
DEAD_CODE_STRIPPING = YES;
|
||||||
DEVELOPMENT_TEAM = 8B5X2M6H2Y;
|
DEVELOPMENT_TEAM = 8B5X2M6H2Y;
|
||||||
|
"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = "";
|
||||||
FRAMEWORK_SEARCH_PATHS = (
|
FRAMEWORK_SEARCH_PATHS = (
|
||||||
"$(PROJECT_DIR)/../modules/react-native-status/ios/RCTStatus",
|
"$(PROJECT_DIR)/../modules/react-native-status/ios/RCTStatus",
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
@@ -1079,7 +1102,7 @@
|
|||||||
"$(SRCROOT)/../node_modules/react-native/Libraries/LinkingIOS",
|
"$(SRCROOT)/../node_modules/react-native/Libraries/LinkingIOS",
|
||||||
);
|
);
|
||||||
INFOPLIST_FILE = StatusImPR/Info.plist;
|
INFOPLIST_FILE = StatusImPR/Info.plist;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 12.4;
|
||||||
LD_RUNPATH_SEARCH_PATHS = (
|
LD_RUNPATH_SEARCH_PATHS = (
|
||||||
/usr/lib/swift,
|
/usr/lib/swift,
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
@@ -1089,6 +1112,12 @@
|
|||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"$(PROJECT_DIR)",
|
"$(PROJECT_DIR)",
|
||||||
);
|
);
|
||||||
|
OTHER_CPLUSPLUSFLAGS = (
|
||||||
|
"$(OTHER_CFLAGS)",
|
||||||
|
"-DFOLLY_NO_CONFIG",
|
||||||
|
"-DFOLLY_MOBILE=1",
|
||||||
|
"-DFOLLY_USE_LIBCPP=1",
|
||||||
|
);
|
||||||
OTHER_LDFLAGS = (
|
OTHER_LDFLAGS = (
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"-lc++",
|
"-lc++",
|
||||||
@@ -1110,7 +1139,7 @@
|
|||||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
|
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
|
||||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||||
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
|
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
|
||||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
CLANG_CXX_LANGUAGE_STANDARD = "c++17";
|
||||||
CLANG_CXX_LIBRARY = "libc++";
|
CLANG_CXX_LIBRARY = "libc++";
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
CLANG_ENABLE_OBJC_ARC = YES;
|
CLANG_ENABLE_OBJC_ARC = YES;
|
||||||
@@ -1143,7 +1172,7 @@
|
|||||||
ENABLE_TESTABILITY = YES;
|
ENABLE_TESTABILITY = YES;
|
||||||
EXCLUDED_ARCHS = "";
|
EXCLUDED_ARCHS = "";
|
||||||
"EXCLUDED_ARCHS[sdk=iphoneos*]" = x86_64;
|
"EXCLUDED_ARCHS[sdk=iphoneos*]" = x86_64;
|
||||||
"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64;
|
"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = "";
|
||||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||||
GCC_DYNAMIC_NO_PIC = NO;
|
GCC_DYNAMIC_NO_PIC = NO;
|
||||||
GCC_NO_COMMON_BLOCKS = YES;
|
GCC_NO_COMMON_BLOCKS = YES;
|
||||||
@@ -1174,13 +1203,20 @@
|
|||||||
"$(SRCROOT)/../node_modules/react-native-image-resizer/ios/RCTImageResizer",
|
"$(SRCROOT)/../node_modules/react-native-image-resizer/ios/RCTImageResizer",
|
||||||
"$(SRCROOT)/../node_modules/react-native-lottie-splash-screen/ios/**",
|
"$(SRCROOT)/../node_modules/react-native-lottie-splash-screen/ios/**",
|
||||||
);
|
);
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 12.4;
|
||||||
LIBRARY_SEARCH_PATHS = (
|
LIBRARY_SEARCH_PATHS = (
|
||||||
"\"$(TOOLCHAIN_DIR)/usr/lib/swift/$(PLATFORM_NAME)\"",
|
"\"$(TOOLCHAIN_DIR)/usr/lib/swift/$(PLATFORM_NAME)\"",
|
||||||
"\"$(inherited)\"",
|
"\"$(inherited)\"",
|
||||||
);
|
);
|
||||||
MTL_ENABLE_DEBUG_INFO = YES;
|
MTL_ENABLE_DEBUG_INFO = YES;
|
||||||
ONLY_ACTIVE_ARCH = NO;
|
ONLY_ACTIVE_ARCH = YES;
|
||||||
|
OTHER_CPLUSPLUSFLAGS = (
|
||||||
|
"$(OTHER_CFLAGS)",
|
||||||
|
"-DFOLLY_NO_CONFIG",
|
||||||
|
"-DFOLLY_MOBILE=1",
|
||||||
|
"-DFOLLY_USE_LIBCPP=1",
|
||||||
|
);
|
||||||
|
PRESERVE_DEAD_CODE_INITS_AND_TERMS = YES;
|
||||||
SDKROOT = iphoneos;
|
SDKROOT = iphoneos;
|
||||||
VALID_ARCHS = arm64;
|
VALID_ARCHS = arm64;
|
||||||
"VALID_ARCHS[sdk=iphonesimulator*]" = x86_64;
|
"VALID_ARCHS[sdk=iphonesimulator*]" = x86_64;
|
||||||
@@ -1193,7 +1229,7 @@
|
|||||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
|
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
|
||||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||||
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
|
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
|
||||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
CLANG_CXX_LANGUAGE_STANDARD = "c++17";
|
||||||
CLANG_CXX_LIBRARY = "libc++";
|
CLANG_CXX_LIBRARY = "libc++";
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
CLANG_ENABLE_OBJC_ARC = YES;
|
CLANG_ENABLE_OBJC_ARC = YES;
|
||||||
@@ -1225,6 +1261,7 @@
|
|||||||
ENABLE_NS_ASSERTIONS = NO;
|
ENABLE_NS_ASSERTIONS = NO;
|
||||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||||
EXCLUDED_ARCHS = "";
|
EXCLUDED_ARCHS = "";
|
||||||
|
"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = "";
|
||||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||||
GCC_NO_COMMON_BLOCKS = YES;
|
GCC_NO_COMMON_BLOCKS = YES;
|
||||||
GCC_PRECOMPILE_PREFIX_HEADER = NO;
|
GCC_PRECOMPILE_PREFIX_HEADER = NO;
|
||||||
@@ -1247,13 +1284,20 @@
|
|||||||
"$(SRCROOT)/../node_modules/react-native-image-resizer/ios/RCTImageResizer",
|
"$(SRCROOT)/../node_modules/react-native-image-resizer/ios/RCTImageResizer",
|
||||||
"$(SRCROOT)/../node_modules/react-native-lottie-splash-screen/ios/**",
|
"$(SRCROOT)/../node_modules/react-native-lottie-splash-screen/ios/**",
|
||||||
);
|
);
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 12.4;
|
||||||
LIBRARY_SEARCH_PATHS = (
|
LIBRARY_SEARCH_PATHS = (
|
||||||
"\"$(TOOLCHAIN_DIR)/usr/lib/swift/$(PLATFORM_NAME)\"",
|
"\"$(TOOLCHAIN_DIR)/usr/lib/swift/$(PLATFORM_NAME)\"",
|
||||||
"\"$(inherited)\"",
|
"\"$(inherited)\"",
|
||||||
);
|
);
|
||||||
MTL_ENABLE_DEBUG_INFO = NO;
|
MTL_ENABLE_DEBUG_INFO = NO;
|
||||||
ONLY_ACTIVE_ARCH = NO;
|
ONLY_ACTIVE_ARCH = NO;
|
||||||
|
OTHER_CPLUSPLUSFLAGS = (
|
||||||
|
"$(OTHER_CFLAGS)",
|
||||||
|
"-DFOLLY_NO_CONFIG",
|
||||||
|
"-DFOLLY_MOBILE=1",
|
||||||
|
"-DFOLLY_USE_LIBCPP=1",
|
||||||
|
);
|
||||||
|
PRESERVE_DEAD_CODE_INITS_AND_TERMS = YES;
|
||||||
SDKROOT = iphoneos;
|
SDKROOT = iphoneos;
|
||||||
VALIDATE_PRODUCT = YES;
|
VALIDATE_PRODUCT = YES;
|
||||||
VALID_ARCHS = arm64;
|
VALID_ARCHS = arm64;
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
#import <ReactNativeNavigation/ReactNativeNavigation.h>
|
#import <ReactNativeNavigation/ReactNativeNavigation.h>
|
||||||
|
|
||||||
#import <asl.h>
|
#import <asl.h>
|
||||||
#import "ReactNativeConfig.h"
|
#import "RNCConfig.h"
|
||||||
#import "React/RCTLog.h"
|
#import "React/RCTLog.h"
|
||||||
#import "RCTBundleURLProvider.h"
|
#import "RCTBundleURLProvider.h"
|
||||||
#import "RNSplashScreen.h"
|
#import "RNSplashScreen.h"
|
||||||
@@ -28,9 +28,32 @@
|
|||||||
#import <SDWebImage/SDWebImageDownloaderOperation.h>
|
#import <SDWebImage/SDWebImageDownloaderOperation.h>
|
||||||
|
|
||||||
#import <Security/Security.h>
|
#import <Security/Security.h>
|
||||||
|
// adding this for v0.68.x
|
||||||
|
#import <React/RCTAppSetupUtils.h>
|
||||||
|
#if RCT_NEW_ARCH_ENABLED
|
||||||
|
#import <React/CoreModulesPlugins.h>
|
||||||
|
#import <React/RCTCxxBridgeDelegate.h>
|
||||||
|
#import <React/RCTFabricSurfaceHostingProxyRootView.h>
|
||||||
|
#import <React/RCTSurfacePresenter.h>
|
||||||
|
#import <React/RCTSurfacePresenterBridgeAdapter.h>
|
||||||
|
#import <ReactCommon/RCTTurboModuleManager.h>
|
||||||
|
#import <react/config/ReactNativeConfig.h>
|
||||||
|
|
||||||
|
static NSString *const kRNConcurrentRoot = @"concurrentRoot";
|
||||||
|
|
||||||
|
@interface AppDelegate () <RCTCxxBridgeDelegate, RCTTurboModuleManagerDelegate> {
|
||||||
|
RCTTurboModuleManager *_turboModuleManager;
|
||||||
|
RCTSurfacePresenterBridgeAdapter *_bridgeAdapter;
|
||||||
|
std::shared_ptr<const facebook::react::ReactNativeConfig> _reactNativeConfig;
|
||||||
|
facebook::react::ContextContainer::Shared _contextContainer;
|
||||||
|
}
|
||||||
|
@end
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//TODO: properly import the framework
|
//TODO: properly import the framework
|
||||||
extern NSString* StatusgoImageServerTLSCert();
|
extern "C" NSString* StatusgoImageServerTLSCert();
|
||||||
|
|
||||||
@interface StatusDownloaderOperation : SDWebImageDownloaderOperation
|
@interface StatusDownloaderOperation : SDWebImageDownloaderOperation
|
||||||
+ (void)URLSession:(NSURLSession *)session task:(NSURLSessionTask *)task didReceiveChallenge:(NSURLAuthenticationChallenge *)challenge completionHandler:(void (^)(NSURLSessionAuthChallengeDisposition disposition, NSURLCredential *credential))completionHandler;
|
+ (void)URLSession:(NSURLSession *)session task:(NSURLSessionTask *)task didReceiveChallenge:(NSURLAuthenticationChallenge *)challenge completionHandler:(void (^)(NSURLSessionAuthChallengeDisposition disposition, NSURLCredential *credential))completionHandler;
|
||||||
@@ -65,6 +88,19 @@ static void InitializeFlipper(UIApplication *application) {
|
|||||||
|
|
||||||
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
|
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
|
||||||
{
|
{
|
||||||
|
RCTAppSetupPrepareApp(application);
|
||||||
|
|
||||||
|
RCTBridge *bridge = [[RCTBridge alloc] initWithDelegate:self launchOptions:launchOptions];
|
||||||
|
[ReactNativeNavigation bootstrapWithBridge:bridge];
|
||||||
|
|
||||||
|
#if RCT_NEW_ARCH_ENABLED
|
||||||
|
_contextContainer = std::make_shared<facebook::react::ContextContainer const>();
|
||||||
|
_reactNativeConfig = std::make_shared<facebook::react::EmptyReactNativeConfig const>();
|
||||||
|
_contextContainer->insert("ReactNativeConfig", _reactNativeConfig);
|
||||||
|
_bridgeAdapter = [[RCTSurfacePresenterBridgeAdapter alloc] initWithBridge:bridge contextContainer:_contextContainer];
|
||||||
|
bridge.surfacePresenter = _bridgeAdapter.surfacePresenter;
|
||||||
|
#endif
|
||||||
|
|
||||||
#if DEBUG
|
#if DEBUG
|
||||||
//InitializeFlipper(application);
|
//InitializeFlipper(application);
|
||||||
#endif
|
#endif
|
||||||
@@ -72,7 +108,7 @@ static void InitializeFlipper(UIApplication *application) {
|
|||||||
NSURL *jsCodeLocation;
|
NSURL *jsCodeLocation;
|
||||||
|
|
||||||
/* Set logging level from React Native */
|
/* Set logging level from React Native */
|
||||||
NSString *logLevel = [ReactNativeConfig envFor:@"LOG_LEVEL"];
|
NSString *logLevel = [RNCConfig envFor:@"LOG_LEVEL"];
|
||||||
if([logLevel isEqualToString:@"error"]){
|
if([logLevel isEqualToString:@"error"]){
|
||||||
RCTSetLogThreshold(RCTLogLevelError);
|
RCTSetLogThreshold(RCTLogLevelError);
|
||||||
}
|
}
|
||||||
@@ -90,8 +126,6 @@ static void InitializeFlipper(UIApplication *application) {
|
|||||||
dictionaryWithObject:[NSNumber numberWithBool:NO] forKey:@"BLANK_PREVIEW"];
|
dictionaryWithObject:[NSNumber numberWithBool:NO] forKey:@"BLANK_PREVIEW"];
|
||||||
[[NSUserDefaults standardUserDefaults] registerDefaults:appDefaults];
|
[[NSUserDefaults standardUserDefaults] registerDefaults:appDefaults];
|
||||||
|
|
||||||
[ReactNativeNavigation bootstrapWithDelegate:self launchOptions:launchOptions];
|
|
||||||
|
|
||||||
[RNSplashScreen show];
|
[RNSplashScreen show];
|
||||||
|
|
||||||
UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter];
|
UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter];
|
||||||
@@ -122,15 +156,66 @@ static void InitializeFlipper(UIApplication *application) {
|
|||||||
return [ReactNativeNavigation extraModulesForBridge:bridge];
|
return [ReactNativeNavigation extraModulesForBridge:bridge];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/// This method controls whether the `concurrentRoot`feature of React18 is turned on or off.
|
||||||
|
///
|
||||||
|
/// @see: https://reactjs.org/blog/2022/03/29/react-v18.html
|
||||||
|
/// @note: This requires to be rendering on Fabric (i.e. on the New Architecture).
|
||||||
|
/// @return: `true` if the `concurrentRoot` feture is enabled. Otherwise, it returns `false`.
|
||||||
|
- (BOOL)concurrentRootEnabled
|
||||||
|
{
|
||||||
|
// Switch this bool to turn on and off the concurrent root
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
- (NSDictionary *)prepareInitialProps
|
||||||
|
{
|
||||||
|
NSMutableDictionary *initProps = [NSMutableDictionary new];
|
||||||
|
#ifdef RCT_NEW_ARCH_ENABLED
|
||||||
|
initProps[kRNConcurrentRoot] = @([self concurrentRootEnabled]);
|
||||||
|
#endif
|
||||||
|
return initProps;
|
||||||
|
}
|
||||||
|
|
||||||
- (NSURL *)sourceURLForBridge:(RCTBridge *)bridge
|
- (NSURL *)sourceURLForBridge:(RCTBridge *)bridge
|
||||||
{
|
{
|
||||||
#if DEBUG
|
#if DEBUG
|
||||||
return [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbackResource:nil];
|
return [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index"];
|
||||||
#else
|
#else
|
||||||
return [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"];
|
return [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"];
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if RCT_NEW_ARCH_ENABLED
|
||||||
|
#pragma mark - RCTCxxBridgeDelegate
|
||||||
|
- (std::unique_ptr<facebook::react::JSExecutorFactory>)jsExecutorFactoryForBridge:(RCTBridge *)bridge
|
||||||
|
{
|
||||||
|
_turboModuleManager = [[RCTTurboModuleManager alloc] initWithBridge:bridge
|
||||||
|
delegate:self
|
||||||
|
jsInvoker:bridge.jsCallInvoker];
|
||||||
|
return RCTAppSetupDefaultJsExecutorFactory(bridge, _turboModuleManager);
|
||||||
|
}
|
||||||
|
#pragma mark RCTTurboModuleManagerDelegate
|
||||||
|
- (Class)getModuleClassFromName:(const char *)name
|
||||||
|
{
|
||||||
|
return RCTCoreModulesClassProvider(name);
|
||||||
|
}
|
||||||
|
- (std::shared_ptr<facebook::react::TurboModule>)getTurboModule:(const std::string &)name
|
||||||
|
jsInvoker:(std::shared_ptr<facebook::react::CallInvoker>)jsInvoker
|
||||||
|
{
|
||||||
|
return nullptr;
|
||||||
|
}
|
||||||
|
- (std::shared_ptr<facebook::react::TurboModule>)getTurboModule:(const std::string &)name
|
||||||
|
initParams:
|
||||||
|
(const facebook::react::ObjCTurboModule::InitParams &)params
|
||||||
|
{
|
||||||
|
return nullptr;
|
||||||
|
}
|
||||||
|
- (id<RCTTurboModule>)getModuleInstanceFromClass:(Class)moduleClass
|
||||||
|
{
|
||||||
|
return RCTAppSetupDefaultModuleFromClass(moduleClass);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
- (void)applicationWillResignActive:(UIApplication *)application {
|
- (void)applicationWillResignActive:(UIApplication *)application {
|
||||||
if ([[NSUserDefaults standardUserDefaults] boolForKey:@"BLANK_PREVIEW"]) {
|
if ([[NSUserDefaults standardUserDefaults] boolForKey:@"BLANK_PREVIEW"]) {
|
||||||
[self.window addSubview:_blankView];
|
[self.window addSubview:_blankView];
|
||||||
@@ -207,7 +292,7 @@ didReceiveNotificationResponse:(UNNotificationResponse *)response
|
|||||||
pemCert = [pemCert stringByReplacingOccurrencesOfString:@"\n-----END CERTIFICATE-----" withString:@""];
|
pemCert = [pemCert stringByReplacingOccurrencesOfString:@"\n-----END CERTIFICATE-----" withString:@""];
|
||||||
NSData *derCert = [[NSData alloc] initWithBase64EncodedString:pemCert options:NSDataBase64DecodingIgnoreUnknownCharacters];
|
NSData *derCert = [[NSData alloc] initWithBase64EncodedString:pemCert options:NSDataBase64DecodingIgnoreUnknownCharacters];
|
||||||
SecCertificateRef certRef = SecCertificateCreateWithData(NULL, (__bridge_retained CFDataRef) derCert);
|
SecCertificateRef certRef = SecCertificateCreateWithData(NULL, (__bridge_retained CFDataRef) derCert);
|
||||||
CFArrayRef certArrayRef = CFArrayCreate(NULL, (void *)&certRef, 1, NULL);
|
CFArrayRef certArrayRef = CFArrayCreate(NULL, (const void **)&(certRef), 1, NULL);
|
||||||
SecTrustSetAnchorCertificates(challenge.protectionSpace.serverTrust, certArrayRef);
|
SecTrustSetAnchorCertificates(challenge.protectionSpace.serverTrust, certArrayRef);
|
||||||
|
|
||||||
SecTrustResultType trustResult;
|
SecTrustResultType trustResult;
|
||||||
@@ -247,4 +332,4 @@ didReceiveNotificationResponse:(UNNotificationResponse *)response
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@end
|
@end
|
||||||
@@ -11,7 +11,8 @@
|
|||||||
|
|
||||||
#import "AppDelegate.h"
|
#import "AppDelegate.h"
|
||||||
|
|
||||||
int main(int argc, char * argv[]) {
|
int main(int argc, char *argv[])
|
||||||
|
{
|
||||||
@autoreleasepool {
|
@autoreleasepool {
|
||||||
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
|
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -22,7 +22,7 @@
|
|||||||
|
|
||||||
@implementation StatusImTests
|
@implementation StatusImTests
|
||||||
|
|
||||||
- (BOOL)findSubviewInView:(UIView *)view matching:(BOOL(^)(UIView *view))test
|
- (BOOL)findSubviewInView:(UIView *)view matching:(BOOL (^)(UIView *view))test
|
||||||
{
|
{
|
||||||
if (test(view)) {
|
if (test(view)) {
|
||||||
return YES;
|
return YES;
|
||||||
@@ -42,10 +42,11 @@
|
|||||||
BOOL foundElement = NO;
|
BOOL foundElement = NO;
|
||||||
|
|
||||||
__block NSString *redboxError = nil;
|
__block NSString *redboxError = nil;
|
||||||
RCTSetLogFunction(^(RCTLogLevel level, RCTLogSource source, NSString *fileName, NSNumber *lineNumber, NSString *message) {
|
RCTSetLogFunction(
|
||||||
if (level >= RCTLogLevelError) {
|
^(RCTLogLevel level, RCTLogSource source, NSString *fileName, NSNumber *lineNumber, NSString *message) {
|
||||||
redboxError = message;
|
if (level >= RCTLogLevelError) {
|
||||||
}
|
redboxError = message;
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
while ([date timeIntervalSinceNow] > 0 && !foundElement && !redboxError) {
|
while ([date timeIntervalSinceNow] > 0 && !foundElement && !redboxError) {
|
||||||
|
|||||||
@@ -149,11 +149,15 @@ class StatusModule extends ReactContextBaseJavaModule implements LifecycleEventL
|
|||||||
this.getReactApplicationContext().getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter.class).emit("gethEvent", params);
|
this.getReactApplicationContext().getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter.class).emit("gethEvent", params);
|
||||||
}
|
}
|
||||||
|
|
||||||
private File getLogsFile() {
|
private File getPublicStorageDirectory() {
|
||||||
final Context context = this.getReactApplicationContext();
|
final Context context = this.getReactApplicationContext();
|
||||||
// Environment.getExternalStoragePublicDirectory doesn't work as expected on Android Q
|
// Environment.getExternalStoragePublicDirectory doesn't work as expected on Android Q
|
||||||
// https://developer.android.com/reference/android/os/Environment#getExternalStoragePublicDirectory(java.lang.String)
|
// https://developer.android.com/reference/android/os/Environment#getExternalStoragePublicDirectory(java.lang.String)
|
||||||
final File pubDirectory = context.getExternalFilesDir(Environment.DIRECTORY_DOWNLOADS);
|
return context.getExternalFilesDir(Environment.DIRECTORY_DOWNLOADS);
|
||||||
|
|
||||||
|
}
|
||||||
|
private File getLogsFile() {
|
||||||
|
final File pubDirectory = this.getPublicStorageDirectory();
|
||||||
final File logFile = new File(pubDirectory, gethLogFileName);
|
final File logFile = new File(pubDirectory, gethLogFileName);
|
||||||
|
|
||||||
return logFile;
|
return logFile;
|
||||||
@@ -323,6 +327,30 @@ class StatusModule extends ReactContextBaseJavaModule implements LifecycleEventL
|
|||||||
callback.invoke(finalConfig);
|
callback.invoke(finalConfig);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ReactMethod
|
||||||
|
public void createAccountAndLogin(final String createAccountRequest) {
|
||||||
|
Log.d(TAG, "createAccountAndLogin");
|
||||||
|
String result = Statusgo.createAccountAndLogin(createAccountRequest);
|
||||||
|
if (result.startsWith("{\"error\":\"\"")) {
|
||||||
|
Log.d(TAG, "createAccountAndLogin success: " + result);
|
||||||
|
Log.d(TAG, "Geth node started");
|
||||||
|
} else {
|
||||||
|
Log.e(TAG, "createAccountAndLogin failed: " + result);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@ReactMethod
|
||||||
|
public void restoreAccountAndLogin(final String restoreAccountRequest) {
|
||||||
|
Log.d(TAG, "restoreAccountAndLogin");
|
||||||
|
String result = Statusgo.restoreAccountAndLogin(restoreAccountRequest);
|
||||||
|
if (result.startsWith("{\"error\":\"\"")) {
|
||||||
|
Log.d(TAG, "restoreAccountAndLogin success: " + result);
|
||||||
|
Log.d(TAG, "Geth node started");
|
||||||
|
} else {
|
||||||
|
Log.e(TAG, "restoreAccountAndLogin failed: " + result);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@ReactMethod
|
@ReactMethod
|
||||||
public void saveAccountAndLogin(final String multiaccountData, final String password, final String settings, final String config, final String accountsData) {
|
public void saveAccountAndLogin(final String multiaccountData, final String password, final String settings, final String config, final String accountsData) {
|
||||||
try {
|
try {
|
||||||
@@ -520,6 +548,8 @@ class StatusModule extends ReactContextBaseJavaModule implements LifecycleEventL
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Log.d(TAG, "[Opening accounts" + rootDir);
|
||||||
|
|
||||||
Runnable r = new Runnable() {
|
Runnable r = new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
@@ -785,9 +815,10 @@ class StatusModule extends ReactContextBaseJavaModule implements LifecycleEventL
|
|||||||
@ReactMethod
|
@ReactMethod
|
||||||
public void getConnectionStringForBootstrappingAnotherDevice(final String configJSON, final Callback callback) throws JSONException {
|
public void getConnectionStringForBootstrappingAnotherDevice(final String configJSON, final Callback callback) throws JSONException {
|
||||||
final JSONObject jsonConfig = new JSONObject(configJSON);
|
final JSONObject jsonConfig = new JSONObject(configJSON);
|
||||||
final String keyUID = jsonConfig.getString("keyUID");
|
final JSONObject senderConfig = jsonConfig.getJSONObject("senderConfig");
|
||||||
|
final String keyUID = senderConfig.getString("keyUID");
|
||||||
final String keyStorePath = this.getKeyStorePath(keyUID);
|
final String keyStorePath = this.getKeyStorePath(keyUID);
|
||||||
jsonConfig.put("keystorePath", keyStorePath);
|
senderConfig.put("keystorePath", keyStorePath);
|
||||||
|
|
||||||
executeRunnableStatusGoMethod(() -> Statusgo.getConnectionStringForBootstrappingAnotherDevice(jsonConfig.toString()), callback);
|
executeRunnableStatusGoMethod(() -> Statusgo.getConnectionStringForBootstrappingAnotherDevice(jsonConfig.toString()), callback);
|
||||||
}
|
}
|
||||||
@@ -795,9 +826,10 @@ class StatusModule extends ReactContextBaseJavaModule implements LifecycleEventL
|
|||||||
@ReactMethod
|
@ReactMethod
|
||||||
public void inputConnectionStringForBootstrapping(final String connectionString, final String configJSON, final Callback callback) throws JSONException {
|
public void inputConnectionStringForBootstrapping(final String connectionString, final String configJSON, final Callback callback) throws JSONException {
|
||||||
final JSONObject jsonConfig = new JSONObject(configJSON);
|
final JSONObject jsonConfig = new JSONObject(configJSON);
|
||||||
|
final JSONObject receiverConfig = jsonConfig.getJSONObject("receiverConfig");
|
||||||
final String keyStorePath = pathCombine(this.getNoBackupDirectory(), "/keystore");
|
final String keyStorePath = pathCombine(this.getNoBackupDirectory(), "/keystore");
|
||||||
jsonConfig.put("keystorePath", keyStorePath);
|
receiverConfig.put("keystorePath", keyStorePath);
|
||||||
jsonConfig.put("rootDataDir", this.getNoBackupDirectory());
|
receiverConfig.getJSONObject("nodeConfig").put("rootDataDir", this.getNoBackupDirectory());
|
||||||
executeRunnableStatusGoMethod(() -> Statusgo.inputConnectionStringForBootstrapping(connectionString, jsonConfig.toString()), callback);
|
executeRunnableStatusGoMethod(() -> Statusgo.inputConnectionStringForBootstrapping(connectionString, jsonConfig.toString()), callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1129,6 +1161,23 @@ class StatusModule extends ReactContextBaseJavaModule implements LifecycleEventL
|
|||||||
executeRunnableStatusGoMethod(() -> Statusgo.deleteImportedKey(address, password, keyStoreDir), callback);
|
executeRunnableStatusGoMethod(() -> Statusgo.deleteImportedKey(address, password, keyStoreDir), callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ReactMethod(isBlockingSynchronousMethod = true)
|
||||||
|
public String keystoreDir() {
|
||||||
|
final String absRootDirPath = this.getNoBackupDirectory();
|
||||||
|
return pathCombine(absRootDirPath, "keystore");
|
||||||
|
}
|
||||||
|
|
||||||
|
@ReactMethod(isBlockingSynchronousMethod = true)
|
||||||
|
public String backupDisabledDataDir() {
|
||||||
|
return this.getNoBackupDirectory();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ReactMethod(isBlockingSynchronousMethod = true)
|
||||||
|
public String logFileDirectory() {
|
||||||
|
return getPublicStorageDirectory().getAbsolutePath();
|
||||||
|
}
|
||||||
|
|
||||||
@ReactMethod(isBlockingSynchronousMethod = true)
|
@ReactMethod(isBlockingSynchronousMethod = true)
|
||||||
public String generateAlias(final String seed) {
|
public String generateAlias(final String seed) {
|
||||||
return Statusgo.generateAlias(seed);
|
return Statusgo.generateAlias(seed);
|
||||||
@@ -1305,11 +1354,12 @@ class StatusModule extends ReactContextBaseJavaModule implements LifecycleEventL
|
|||||||
}
|
}
|
||||||
|
|
||||||
@ReactMethod
|
@ReactMethod
|
||||||
public void convertToKeycardAccount(final String keyUID, final String accountData, final String options, final String password, final String newPassword, final Callback callback) throws JSONException {
|
public void convertToKeycardAccount(final String keyUID, final String accountData, final String options, final String keycardUID, final String password,
|
||||||
|
final String newPassword, final Callback callback) throws JSONException {
|
||||||
final String keyStoreDir = this.getKeyStorePath(keyUID);
|
final String keyStoreDir = this.getKeyStorePath(keyUID);
|
||||||
executeRunnableStatusGoMethod(() -> {
|
executeRunnableStatusGoMethod(() -> {
|
||||||
Statusgo.initKeystore(keyStoreDir);
|
Statusgo.initKeystore(keyStoreDir);
|
||||||
return Statusgo.convertToKeycardAccount(accountData, options, password, newPassword);
|
return Statusgo.convertToKeycardAccount(accountData, options, keycardUID, password, newPassword);
|
||||||
}, callback);
|
}, callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -67,8 +67,8 @@ public class PushNotificationHelper {
|
|||||||
private static final long DEFAULT_VIBRATION = 300L;
|
private static final long DEFAULT_VIBRATION = 300L;
|
||||||
private static final String CHANNEL_ID = "status-im-notifications";
|
private static final String CHANNEL_ID = "status-im-notifications";
|
||||||
public static final String ACTION_DELETE_NOTIFICATION = "im.status.ethereum.module.DELETE_NOTIFICATION";
|
public static final String ACTION_DELETE_NOTIFICATION = "im.status.ethereum.module.DELETE_NOTIFICATION";
|
||||||
public static final String ACTION_TAP_NOTIFICATION = "im.status.ethereum.module.TAP_NOTIFICATION";
|
|
||||||
public static final String ACTION_TAP_STOP = "im.status.ethereum.module.TAP_STOP";
|
public static final String ACTION_TAP_STOP = "im.status.ethereum.module.TAP_STOP";
|
||||||
|
final int flag = Build.VERSION.SDK_INT >= Build.VERSION_CODES.M ? PendingIntent.FLAG_CANCEL_CURRENT | PendingIntent.FLAG_MUTABLE : PendingIntent.FLAG_CANCEL_CURRENT;
|
||||||
|
|
||||||
private NotificationManager notificationManager;
|
private NotificationManager notificationManager;
|
||||||
|
|
||||||
@@ -119,13 +119,8 @@ public class PushNotificationHelper {
|
|||||||
private final BroadcastReceiver notificationActionReceiver = new BroadcastReceiver() {
|
private final BroadcastReceiver notificationActionReceiver = new BroadcastReceiver() {
|
||||||
@Override
|
@Override
|
||||||
public void onReceive(Context context, Intent intent) {
|
public void onReceive(Context context, Intent intent) {
|
||||||
if (intent.getAction() == ACTION_TAP_NOTIFICATION ||
|
if (intent.getAction() == ACTION_DELETE_NOTIFICATION) {
|
||||||
intent.getAction() == ACTION_DELETE_NOTIFICATION) {
|
|
||||||
String deepLink = intent.getExtras().getString("im.status.ethereum.deepLink");
|
|
||||||
String groupId = intent.getExtras().getString("im.status.ethereum.groupId");
|
String groupId = intent.getExtras().getString("im.status.ethereum.groupId");
|
||||||
if (intent.getAction() == ACTION_TAP_NOTIFICATION) {
|
|
||||||
context.startActivity(getOpenAppIntent(deepLink));
|
|
||||||
}
|
|
||||||
if (groupId != null) {
|
if (groupId != null) {
|
||||||
cleanGroup(groupId);
|
cleanGroup(groupId);
|
||||||
}
|
}
|
||||||
@@ -141,7 +136,6 @@ public class PushNotificationHelper {
|
|||||||
private void registerBroadcastReceiver() {
|
private void registerBroadcastReceiver() {
|
||||||
IntentFilter filter = new IntentFilter();
|
IntentFilter filter = new IntentFilter();
|
||||||
filter.addAction(ACTION_DELETE_NOTIFICATION);
|
filter.addAction(ACTION_DELETE_NOTIFICATION);
|
||||||
filter.addAction(ACTION_TAP_NOTIFICATION);
|
|
||||||
filter.addAction(ACTION_TAP_STOP);
|
filter.addAction(ACTION_TAP_STOP);
|
||||||
context.registerReceiver(notificationActionReceiver, filter);
|
context.registerReceiver(notificationActionReceiver, filter);
|
||||||
Log.e(LOG_TAG, "Broadcast Receiver registered");
|
Log.e(LOG_TAG, "Broadcast Receiver registered");
|
||||||
@@ -701,37 +695,31 @@ public class PushNotificationHelper {
|
|||||||
|
|
||||||
private StatusMessage createMessage(Bundle data) {
|
private StatusMessage createMessage(Bundle data) {
|
||||||
Person author = getPerson(data.getBundle("notificationAuthor"));
|
Person author = getPerson(data.getBundle("notificationAuthor"));
|
||||||
return new StatusMessage(data.getString("id"), author, data.getLong("timestamp"), data.getString("message"));
|
long timeStampLongValue = (long) data.getDouble("timestamp");
|
||||||
|
return new StatusMessage(data.getString("id"), author, timeStampLongValue, data.getString("message"));
|
||||||
}
|
}
|
||||||
|
|
||||||
private PendingIntent createGroupOnDismissedIntent(Context context, int notificationId, String groupId, String deepLink) {
|
private PendingIntent createGroupOnDismissedIntent(Context context, int notificationId, String groupId, String deepLink) {
|
||||||
Intent intent = new Intent(ACTION_DELETE_NOTIFICATION);
|
Intent intent = new Intent(ACTION_DELETE_NOTIFICATION);
|
||||||
intent.putExtra("im.status.ethereum.deepLink", deepLink);
|
intent.putExtra("im.status.ethereum.deepLink", deepLink);
|
||||||
intent.putExtra("im.status.ethereum.groupId", groupId);
|
intent.putExtra("im.status.ethereum.groupId", groupId);
|
||||||
return PendingIntent.getBroadcast(context.getApplicationContext(), notificationId, intent,
|
return PendingIntent.getBroadcast(context.getApplicationContext(), notificationId, intent, flag);
|
||||||
PendingIntent.FLAG_CANCEL_CURRENT | PendingIntent.FLAG_MUTABLE);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private PendingIntent createGroupOnTapIntent(Context context, int notificationId, String groupId, String deepLink) {
|
private PendingIntent createGroupOnTapIntent(Context context, int notificationId, String groupId, String deepLink) {
|
||||||
Intent intent = new Intent(ACTION_TAP_NOTIFICATION);
|
Intent intent = getOpenAppIntent(deepLink);
|
||||||
intent.putExtra("im.status.ethereum.deepLink", deepLink);
|
return PendingIntent.getActivity(context.getApplicationContext(), notificationId, intent, flag);
|
||||||
intent.putExtra("im.status.ethereum.groupId", groupId);
|
|
||||||
return PendingIntent.getBroadcast(context.getApplicationContext(), notificationId, intent,
|
|
||||||
PendingIntent.FLAG_CANCEL_CURRENT | PendingIntent.FLAG_MUTABLE);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private PendingIntent createOnTapIntent(Context context, int notificationId, String deepLink) {
|
private PendingIntent createOnTapIntent(Context context, int notificationId, String deepLink) {
|
||||||
Intent intent = new Intent(ACTION_TAP_NOTIFICATION);
|
Intent intent = getOpenAppIntent(deepLink);
|
||||||
intent.putExtra("im.status.ethereum.deepLink", deepLink);
|
return PendingIntent.getActivity(context.getApplicationContext(), notificationId, intent, flag);
|
||||||
return PendingIntent.getBroadcast(context.getApplicationContext(), notificationId, intent,
|
|
||||||
PendingIntent.FLAG_CANCEL_CURRENT | PendingIntent.FLAG_MUTABLE);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private PendingIntent createOnDismissedIntent(Context context, int notificationId, String deepLink) {
|
private PendingIntent createOnDismissedIntent(Context context, int notificationId, String deepLink) {
|
||||||
Intent intent = new Intent(ACTION_DELETE_NOTIFICATION);
|
Intent intent = new Intent(ACTION_DELETE_NOTIFICATION);
|
||||||
intent.putExtra("im.status.ethereum.deepLink", deepLink);
|
intent.putExtra("im.status.ethereum.deepLink", deepLink);
|
||||||
return PendingIntent.getBroadcast(context.getApplicationContext(), notificationId, intent,
|
return PendingIntent.getBroadcast(context.getApplicationContext(), notificationId, intent, flag);
|
||||||
PendingIntent.FLAG_CANCEL_CURRENT | PendingIntent.FLAG_MUTABLE);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void removeStatusMessage(Bundle bundle) {
|
public void removeStatusMessage(Bundle bundle) {
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
#import "RCTStatus.h"
|
#import "RCTStatus.h"
|
||||||
#import "ReactNativeConfig.h"
|
|
||||||
#import "React/RCTBridge.h"
|
#import "React/RCTBridge.h"
|
||||||
#import "React/RCTEventDispatcher.h"
|
#import "React/RCTEventDispatcher.h"
|
||||||
#import "Statusgo.h"
|
#import "Statusgo.h"
|
||||||
@@ -305,16 +304,26 @@ RCT_EXPORT_METHOD(hashMessage:(NSString *)message
|
|||||||
callback(@[result]);
|
callback(@[result]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
RCT_EXPORT_METHOD(localPairingPreflightOutboundCheck:(RCTResponseSenderBlock)callback) {
|
||||||
|
#if DEBUG
|
||||||
|
NSLog(@"LocalPairingPreflightOutboundCheck() method called");
|
||||||
|
#endif
|
||||||
|
NSString *result = StatusgoLocalPairingPreflightOutboundCheck();
|
||||||
|
callback(@[result]);
|
||||||
|
}
|
||||||
|
|
||||||
RCT_EXPORT_METHOD(getConnectionStringForBootstrappingAnotherDevice:(NSString *)configJSON
|
RCT_EXPORT_METHOD(getConnectionStringForBootstrappingAnotherDevice:(NSString *)configJSON
|
||||||
callback:(RCTResponseSenderBlock)callback) {
|
callback:(RCTResponseSenderBlock)callback) {
|
||||||
|
|
||||||
NSData *configData = [configJSON dataUsingEncoding:NSUTF8StringEncoding];
|
NSData *configData = [configJSON dataUsingEncoding:NSUTF8StringEncoding];
|
||||||
NSDictionary *configDict = [NSJSONSerialization JSONObjectWithData:configData options:NSJSONReadingMutableContainers error:nil];
|
NSError *error;
|
||||||
NSString *keyUID = [configDict objectForKey:@"keyUID"];
|
NSMutableDictionary *configDict = [NSJSONSerialization JSONObjectWithData:configData options:NSJSONReadingMutableContainers error:&error];
|
||||||
|
NSMutableDictionary *senderConfig = configDict[@"senderConfig"];
|
||||||
|
NSString *keyUID = senderConfig[@"keyUID"];
|
||||||
NSURL *multiaccountKeystoreDir = [self getKeyStoreDir:keyUID];
|
NSURL *multiaccountKeystoreDir = [self getKeyStoreDir:keyUID];
|
||||||
NSString *keystoreDir = multiaccountKeystoreDir.path;
|
NSString *keystoreDir = multiaccountKeystoreDir.path;
|
||||||
|
|
||||||
[configDict setValue:keystoreDir forKey:@"keystorePath"];
|
[senderConfig setValue:keystoreDir forKey:@"keystorePath"];
|
||||||
NSString *modifiedConfigJSON = [configDict bv_jsonStringWithPrettyPrint:NO];
|
NSString *modifiedConfigJSON = [configDict bv_jsonStringWithPrettyPrint:NO];
|
||||||
|
|
||||||
NSString *result = StatusgoGetConnectionStringForBootstrappingAnotherDevice(modifiedConfigJSON);
|
NSString *result = StatusgoGetConnectionStringForBootstrappingAnotherDevice(modifiedConfigJSON);
|
||||||
@@ -326,17 +335,20 @@ RCT_EXPORT_METHOD(inputConnectionStringForBootstrapping:(NSString *)cs
|
|||||||
callback:(RCTResponseSenderBlock)callback) {
|
callback:(RCTResponseSenderBlock)callback) {
|
||||||
|
|
||||||
NSData *configData = [configJSON dataUsingEncoding:NSUTF8StringEncoding];
|
NSData *configData = [configJSON dataUsingEncoding:NSUTF8StringEncoding];
|
||||||
NSDictionary *configDict = [NSJSONSerialization JSONObjectWithData:configData options:NSJSONReadingMutableContainers error:nil];
|
NSError *error;
|
||||||
|
NSMutableDictionary *configDict = [NSJSONSerialization JSONObjectWithData:configData options:NSJSONReadingMutableContainers error:&error];
|
||||||
|
NSMutableDictionary *receiverConfig = configDict[@"receiverConfig"];
|
||||||
|
NSMutableDictionary *nodeConfig = receiverConfig[@"nodeConfig"];
|
||||||
NSFileManager *fileManager = [NSFileManager defaultManager];
|
NSFileManager *fileManager = [NSFileManager defaultManager];
|
||||||
NSURL *rootUrl =[[fileManager URLsForDirectory:NSLibraryDirectory inDomains:NSUserDomainMask] lastObject];
|
NSURL *rootUrl =[[fileManager URLsForDirectory:NSLibraryDirectory inDomains:NSUserDomainMask] lastObject];
|
||||||
NSURL *rootDataDir = rootUrl.path;
|
|
||||||
NSURL *multiaccountKeystoreDir = [rootUrl URLByAppendingPathComponent:@"keystore"];
|
NSURL *multiaccountKeystoreDir = [rootUrl URLByAppendingPathComponent:@"keystore"];
|
||||||
NSString *keystoreDir = multiaccountKeystoreDir.path;
|
NSString *keystoreDir = multiaccountKeystoreDir.path;
|
||||||
|
NSString *rootDataDir = rootUrl.path;
|
||||||
|
|
||||||
[configDict setValue:keystoreDir forKey:@"keystorePath"];
|
[receiverConfig setValue:keystoreDir forKey:@"keystorePath"];
|
||||||
[configDict setValue:rootDataDir forKey:@"rootDataDir"];
|
[nodeConfig setValue:rootDataDir forKey:@"rootDataDir"];
|
||||||
NSString *modifiedConfigJSON = [configDict bv_jsonStringWithPrettyPrint:NO];
|
NSString *modifiedConfigJSON = [configDict bv_jsonStringWithPrettyPrint:NO];
|
||||||
NSString *result = StatusgoInputConnectionStringForBootstrapping(cs,modifiedConfigJSON);
|
NSString *result = StatusgoInputConnectionStringForBootstrapping(cs, modifiedConfigJSON);
|
||||||
callback(@[result]);
|
callback(@[result]);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -688,6 +700,7 @@ RCT_EXPORT_METHOD(reEncryptDbAndKeystore:(NSString *)keyUID
|
|||||||
RCT_EXPORT_METHOD(convertToKeycardAccount:(NSString *)keyUID
|
RCT_EXPORT_METHOD(convertToKeycardAccount:(NSString *)keyUID
|
||||||
accountData:(NSString *)accountData
|
accountData:(NSString *)accountData
|
||||||
settings:(NSString *)settings
|
settings:(NSString *)settings
|
||||||
|
keycardUID:(NSString *)keycardUID
|
||||||
currentPassword:(NSString *)currentPassword
|
currentPassword:(NSString *)currentPassword
|
||||||
newPassword:(NSString *)newPassword
|
newPassword:(NSString *)newPassword
|
||||||
callback:(RCTResponseSenderBlock)callback) {
|
callback:(RCTResponseSenderBlock)callback) {
|
||||||
@@ -696,7 +709,7 @@ RCT_EXPORT_METHOD(convertToKeycardAccount:(NSString *)keyUID
|
|||||||
#endif
|
#endif
|
||||||
NSURL *multiaccountKeystoreDir = [self getKeyStoreDir:keyUID];
|
NSURL *multiaccountKeystoreDir = [self getKeyStoreDir:keyUID];
|
||||||
StatusgoInitKeystore(multiaccountKeystoreDir.path);
|
StatusgoInitKeystore(multiaccountKeystoreDir.path);
|
||||||
NSString *result = StatusgoConvertToKeycardAccount(accountData, settings, currentPassword, newPassword);
|
NSString *result = StatusgoConvertToKeycardAccount(accountData, settings, keycardUID, currentPassword, newPassword);
|
||||||
callback(@[result]);
|
callback(@[result]);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -857,6 +870,34 @@ RCT_EXPORT_BLOCKING_SYNCHRONOUS_METHOD(generateAlias:(NSString *)publicKey) {
|
|||||||
return StatusgoGenerateAlias(publicKey);
|
return StatusgoGenerateAlias(publicKey);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
RCT_EXPORT_BLOCKING_SYNCHRONOUS_METHOD(keystoreDir) {
|
||||||
|
NSFileManager *fileManager = [NSFileManager defaultManager];
|
||||||
|
NSURL *rootUrl =[[fileManager
|
||||||
|
URLsForDirectory:NSLibraryDirectory inDomains:NSUserDomainMask]
|
||||||
|
lastObject];
|
||||||
|
|
||||||
|
NSURL *commonKeystoreDir = [rootUrl URLByAppendingPathComponent:@"keystore"];
|
||||||
|
|
||||||
|
return commonKeystoreDir.path;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
RCT_EXPORT_BLOCKING_SYNCHRONOUS_METHOD(backupDisabledDataDir) {
|
||||||
|
NSFileManager *fileManager = [NSFileManager defaultManager];
|
||||||
|
NSURL *rootUrl =[[fileManager
|
||||||
|
URLsForDirectory:NSLibraryDirectory inDomains:NSUserDomainMask]
|
||||||
|
lastObject];
|
||||||
|
return rootUrl.path;
|
||||||
|
}
|
||||||
|
|
||||||
|
RCT_EXPORT_BLOCKING_SYNCHRONOUS_METHOD(logFileDirectory) {
|
||||||
|
NSFileManager *fileManager = [NSFileManager defaultManager];
|
||||||
|
NSURL *rootUrl =[[fileManager
|
||||||
|
URLsForDirectory:NSLibraryDirectory inDomains:NSUserDomainMask]
|
||||||
|
lastObject];
|
||||||
|
return rootUrl.path;
|
||||||
|
}
|
||||||
|
|
||||||
RCT_EXPORT_METHOD(generateAliasAsync:(NSString *)publicKey
|
RCT_EXPORT_METHOD(generateAliasAsync:(NSString *)publicKey
|
||||||
callback:(RCTResponseSenderBlock)callback) {
|
callback:(RCTResponseSenderBlock)callback) {
|
||||||
#if DEBUG
|
#if DEBUG
|
||||||
@@ -934,6 +975,20 @@ RCT_EXPORT_METHOD(identiconAsync:(NSString *)publicKey
|
|||||||
callback(@[result]);
|
callback(@[result]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
RCT_EXPORT_METHOD(createAccountAndLogin:(NSString *)request) {
|
||||||
|
#if DEBUG
|
||||||
|
NSLog(@"createAccountAndLogin() method called");
|
||||||
|
#endif
|
||||||
|
StatusgoCreateAccountAndLogin(request);
|
||||||
|
}
|
||||||
|
|
||||||
|
RCT_EXPORT_METHOD(restoreAccountAndLogin:(NSString *)request) {
|
||||||
|
#if DEBUG
|
||||||
|
NSLog(@"restoreAccountAndLogin() method called");
|
||||||
|
#endif
|
||||||
|
StatusgoRestoreAccountAndLogin(request);
|
||||||
|
}
|
||||||
|
|
||||||
RCT_EXPORT_METHOD(generateAliasAndIdenticonAsync:(NSString *)publicKey
|
RCT_EXPORT_METHOD(generateAliasAndIdenticonAsync:(NSString *)publicKey
|
||||||
callback:(RCTResponseSenderBlock)callback) {
|
callback:(RCTResponseSenderBlock)callback) {
|
||||||
#if DEBUG
|
#if DEBUG
|
||||||
|
|||||||
@@ -55,12 +55,12 @@ The [`nix/scripts/shell.sh`](./scripts/shell.sh) script is essentially a wrapper
|
|||||||
|
|
||||||
# Building
|
# Building
|
||||||
|
|
||||||
We will use the `make jsbundle-android` target as an example of a derivation you can build using Nix:
|
We will use the `make jsbundle` target as an example of a derivation you can build using Nix:
|
||||||
|
|
||||||
1. `make jsbundle-android` is called by developer
|
1. `make jsbundle` is called by developer
|
||||||
2. `make` calls `nix/scripts/build.sh targets.mobile.android.jsbundle`
|
2. `make` calls `nix/scripts/build.sh targets.mobile.jsbundle`
|
||||||
3. [`build.sh`](/nix/scripts/build.sh) calls `nix-build --attr targets.mobile.android.jsbundle` with extra arguments
|
3. [`build.sh`](/nix/scripts/build.sh) calls `nix-build --attr targets.mobile.jsbundle` with extra arguments
|
||||||
4. `nix-build` builds the derivation from [`nix/mobile/android/jsbundle/default.nix`](/nix/mobile/android/jsbundle/default.nix)
|
4. `nix-build` builds the derivation from [`nix/mobile/jsbundle/default.nix`](/nix/mobile/jsbundle/default.nix)
|
||||||
|
|
||||||
The same can be done for other targets like `targets.mobile.android.release`.
|
The same can be done for other targets like `targets.mobile.android.release`.
|
||||||
Except in that case extra arguments are required which is why the [`scripts/release-android.sh`](/scripts/release-android.sh) is used in the `make release-android` target.
|
Except in that case extra arguments are required which is why the [`scripts/release-android.sh`](/scripts/release-android.sh) is used in the `make release-android` target.
|
||||||
|
|||||||
@@ -103,45 +103,6 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
|
||||||
"path": "cljsjs/react-dom-server/17.0.1-0/react-dom-server-17.0.1-0",
|
|
||||||
"host": "https://repo.clojars.org",
|
|
||||||
"pom": {
|
|
||||||
"sha1": "ff154f318e1f63061b5bd42d9a38fc8547360cb4",
|
|
||||||
"sha256": "166ynlrph7rx3nql0c85c37vcbcsnwbjamk71hw74rz451pgnncr"
|
|
||||||
},
|
|
||||||
"jar": {
|
|
||||||
"sha1": "d5c53eca9f3884402c76268b82e3828223dcbf90",
|
|
||||||
"sha256": "1530hwqpxzxfjm6dy77whqwjzzx79jpnd9xvnkxy1lnk7l7lj494"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
{
|
|
||||||
"path": "cljsjs/react-dom/17.0.1-0/react-dom-17.0.1-0",
|
|
||||||
"host": "https://repo.clojars.org",
|
|
||||||
"pom": {
|
|
||||||
"sha1": "077d1a0973c23cbbff52dea7365dca4cf9de5ad5",
|
|
||||||
"sha256": "1ccm3l19cgy30hr03n8jgkgzmswdbg520zmg97xk8b16ncn964jn"
|
|
||||||
},
|
|
||||||
"jar": {
|
|
||||||
"sha1": "a98b94cbc84d264ba9892c971cfaf5920c2152f1",
|
|
||||||
"sha256": "0ym20h0h7mw1mxzm1r7smbj65x8nsqj3cszg82mw3aw4a8j32c29"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
{
|
|
||||||
"path": "cljsjs/react/17.0.1-0/react-17.0.1-0",
|
|
||||||
"host": "https://repo.clojars.org",
|
|
||||||
"pom": {
|
|
||||||
"sha1": "d5d3681281585d981375fe7bb29362bfcd0d4449",
|
|
||||||
"sha256": "0rskh6mfq5h0l0wybs68w9v585a6zlnnfgrvsf5k3h51fk2p28da"
|
|
||||||
},
|
|
||||||
"jar": {
|
|
||||||
"sha1": "726da8a9305a865df90d81e9a8d58f87ff0ee8bd",
|
|
||||||
"sha256": "0bfmvw8gk98vdf9azll6041r1jaz1pmb0dyb35cfc8dr3mmr4ag7"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "clout/clout/2.1.2/clout-2.1.2",
|
"path": "clout/clout/2.1.2/clout-2.1.2",
|
||||||
"host": "https://repo.clojars.org",
|
"host": "https://repo.clojars.org",
|
||||||
@@ -1014,15 +975,15 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/clojure/tools.logging/0.4.1/tools.logging-0.4.1",
|
"path": "org/clojure/tools.logging/1.1.0/tools.logging-1.1.0",
|
||||||
"host": "https://repo1.maven.org/maven2",
|
"host": "https://repo1.maven.org/maven2",
|
||||||
"pom": {
|
"pom": {
|
||||||
"sha1": "483bbfc82aee3c005bb1ad36dec77ba5d6c5f95c",
|
"sha1": "44b6bd9ac74cb5e2254e1f0b258d53c1829b865d",
|
||||||
"sha256": "1qhfigr9am90fx527ax6f7z7xahgsd5hzb4pmi40n79nx3jsc9hf"
|
"sha256": "093jy29w5gm9rp9va6qlhb6096jpf5higyk7sgmbwb5nf53qi3qb"
|
||||||
},
|
},
|
||||||
"jar": {
|
"jar": {
|
||||||
"sha1": "991bebc6e3633b85091ae929d62c116a2584aee7",
|
"sha1": "84cb5d00caa9df2ee504d46f6107f4708271f619",
|
||||||
"sha256": "001sx1ddgx0ys0z1qphzpxjf2w35rikrfjc0h5bvvqbw8ra0vvja"
|
"sha256": "0x2zzivn38z179lxkw9wbi9n9qwsf466lrd9y27khdz7wbxhscb5"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -1352,15 +1313,15 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "re-frame/re-frame/0.12.0/re-frame-0.12.0",
|
"path": "re-frame/re-frame/1.3.0/re-frame-1.3.0",
|
||||||
"host": "https://repo.clojars.org",
|
"host": "https://repo.clojars.org",
|
||||||
"pom": {
|
"pom": {
|
||||||
"sha1": "41fd34c15c1cf68eec81435e09d0a79fd8a88276",
|
"sha1": "b1f70463fba018c5464d3fc0843232fe955c1372",
|
||||||
"sha256": "08c3sxi3sdkay3550vb3gbv5czzdh2kyin4mb8cpd2wd5g2c88sq"
|
"sha256": "0yqq1kg1si0akr7kx7w1l4vvkdai20na6h6627ibqkgwzivkc5n5"
|
||||||
},
|
},
|
||||||
"jar": {
|
"jar": {
|
||||||
"sha1": "3ff92169fe7588ad62dad2d6ea3bf0e5d3e2d224",
|
"sha1": "b7135a76432b8141027ba1f4eb6bb15a36acfb7c",
|
||||||
"sha256": "1m5sjskgjx028s1zpa631bp52y9hjn8l1nr8hrwiwdh09i2kpnk2"
|
"sha256": "16wi01z0j4wn04kldwzxvj0pd9dianjyb000nv5611ikhxk1qrps"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -1391,15 +1352,15 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "reagent/reagent/1.0.0/reagent-1.0.0",
|
"path": "reagent/reagent/1.2.0/reagent-1.2.0",
|
||||||
"host": "https://repo.clojars.org",
|
"host": "https://repo.clojars.org",
|
||||||
"pom": {
|
"pom": {
|
||||||
"sha1": "93ad5ccb0101108fb0843a3f2c50da28f8fd8336",
|
"sha1": "d2279922777793edfc0ae9e01d68a832eb5ce52d",
|
||||||
"sha256": "1l4xzgc4wbd8b29mhj5j336cf8w1zccaia0w413zf3bnj6jf5m38"
|
"sha256": "1h1gk4cykidm1jx75dq426lrgf8r7900fcir5jz59zp1ka2a0ywb"
|
||||||
},
|
},
|
||||||
"jar": {
|
"jar": {
|
||||||
"sha1": "a1dd4d40425bb2e1afad0fe72780b43ff394ccfa",
|
"sha1": "1b9a181b5c7ed3557768d2ea0c66f5616aef5e97",
|
||||||
"sha256": "1g607s1ymns85923bvhwrsj0y5czyqqq1jmxx0a58fnsm1b318fa"
|
"sha256": "0scvkzfqjs613z10rngh7427v3pxdqablf0fcl65pbpkzz16wgav"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
@@ -6,9 +6,6 @@ camel-snake-kebab/camel-snake-kebab/0.4.3/camel-snake-kebab-0.4.3.jar
|
|||||||
cider/cider-nrepl/0.25.3/cider-nrepl-0.25.3.jar
|
cider/cider-nrepl/0.25.3/cider-nrepl-0.25.3.jar
|
||||||
cider/piggieback/0.4.1/piggieback-0.4.1.jar
|
cider/piggieback/0.4.1/piggieback-0.4.1.jar
|
||||||
cljs-bean/cljs-bean/1.3.0/cljs-bean-1.3.0.jar
|
cljs-bean/cljs-bean/1.3.0/cljs-bean-1.3.0.jar
|
||||||
cljsjs/react-dom-server/17.0.1-0/react-dom-server-17.0.1-0.jar
|
|
||||||
cljsjs/react-dom/17.0.1-0/react-dom-17.0.1-0.jar
|
|
||||||
cljsjs/react/17.0.1-0/react-17.0.1-0.jar
|
|
||||||
clout/clout/2.1.2/clout-2.1.2.jar
|
clout/clout/2.1.2/clout-2.1.2.jar
|
||||||
com/andrewmcveigh/cljs-time/0.5.2/cljs-time-0.5.2.jar
|
com/andrewmcveigh/cljs-time/0.5.2/cljs-time-0.5.2.jar
|
||||||
com/bhauman/cljs-test-display/0.1.1/cljs-test-display-0.1.1.jar
|
com/bhauman/cljs-test-display/0.1.1/cljs-test-display-0.1.1.jar
|
||||||
@@ -76,7 +73,7 @@ org/clojure/test.check/1.1.0/test.check-1.1.0.jar
|
|||||||
org/clojure/tools.analyzer.jvm/1.1.0/tools.analyzer.jvm-1.1.0.jar
|
org/clojure/tools.analyzer.jvm/1.1.0/tools.analyzer.jvm-1.1.0.jar
|
||||||
org/clojure/tools.analyzer/1.0.0/tools.analyzer-1.0.0.jar
|
org/clojure/tools.analyzer/1.0.0/tools.analyzer-1.0.0.jar
|
||||||
org/clojure/tools.cli/1.0.194/tools.cli-1.0.194.jar
|
org/clojure/tools.cli/1.0.194/tools.cli-1.0.194.jar
|
||||||
org/clojure/tools.logging/0.4.1/tools.logging-0.4.1.jar
|
org/clojure/tools.logging/1.1.0/tools.logging-1.1.0.jar
|
||||||
org/clojure/tools.macro/0.1.5/tools.macro-0.1.5.jar
|
org/clojure/tools.macro/0.1.5/tools.macro-0.1.5.jar
|
||||||
org/clojure/tools.reader/1.3.3/tools.reader-1.3.3.jar
|
org/clojure/tools.reader/1.3.3/tools.reader-1.3.3.jar
|
||||||
org/codehaus/mojo/animal-sniffer-annotations/1.14/animal-sniffer-annotations-1.14.jar
|
org/codehaus/mojo/animal-sniffer-annotations/1.14/animal-sniffer-annotations-1.14.jar
|
||||||
@@ -102,10 +99,10 @@ org/wildfly/common/wildfly-common/1.5.2.Final/wildfly-common-1.5.2.Final.jar
|
|||||||
prismatic/schema/1.1.7/schema-1.1.7.jar
|
prismatic/schema/1.1.7/schema-1.1.7.jar
|
||||||
quoin/quoin/0.1.2/quoin-0.1.2.jar
|
quoin/quoin/0.1.2/quoin-0.1.2.jar
|
||||||
re-com/re-com/2.8.0/re-com-2.8.0.jar
|
re-com/re-com/2.8.0/re-com-2.8.0.jar
|
||||||
re-frame/re-frame/0.12.0/re-frame-0.12.0.jar
|
re-frame/re-frame/1.3.0/re-frame-1.3.0.jar
|
||||||
re-frisk-remote/re-frisk-remote/1.6.0/re-frisk-remote-1.6.0.jar
|
re-frisk-remote/re-frisk-remote/1.6.0/re-frisk-remote-1.6.0.jar
|
||||||
re-frisk/sente/1.15.0/sente-1.15.0.jar
|
re-frisk/sente/1.15.0/sente-1.15.0.jar
|
||||||
reagent/reagent/1.0.0/reagent-1.0.0.jar
|
reagent/reagent/1.2.0/reagent-1.2.0.jar
|
||||||
refactor-nrepl/refactor-nrepl/2.5.0/refactor-nrepl-2.5.0.jar
|
refactor-nrepl/refactor-nrepl/2.5.0/refactor-nrepl-2.5.0.jar
|
||||||
ring-cors/ring-cors/0.1.8/ring-cors-0.1.8.jar
|
ring-cors/ring-cors/0.1.8/ring-cors-0.1.8.jar
|
||||||
ring/ring-codec/1.1.2/ring-codec-1.1.2.jar
|
ring/ring-codec/1.1.2/ring-codec-1.1.2.jar
|
||||||
|
|||||||
@@ -1,48 +1,57 @@
|
|||||||
androidx.activity:activity:1.0.0
|
androidx.activity:activity:1.0.0
|
||||||
androidx.activity:activity:1.2.4
|
androidx.activity:activity:1.2.4
|
||||||
androidx.annotation:annotation-experimental:1.1.0
|
androidx.annotation:annotation-experimental:1.1.0
|
||||||
androidx.annotation:annotation:1.0.0
|
|
||||||
androidx.annotation:annotation:1.1.0
|
androidx.annotation:annotation:1.1.0
|
||||||
androidx.annotation:annotation:1.2.0
|
androidx.annotation:annotation:1.2.0
|
||||||
androidx.annotation:annotation:1.3.0
|
androidx.annotation:annotation:1.3.0
|
||||||
androidx.appcompat:appcompat-resources:1.1.0
|
|
||||||
androidx.appcompat:appcompat-resources:1.2.0
|
androidx.appcompat:appcompat-resources:1.2.0
|
||||||
androidx.appcompat:appcompat-resources:1.3.1
|
androidx.appcompat:appcompat-resources:1.3.1
|
||||||
androidx.appcompat:appcompat:1.0.2
|
androidx.appcompat:appcompat-resources:1.4.1
|
||||||
androidx.appcompat:appcompat:1.1.0
|
|
||||||
androidx.appcompat:appcompat:1.2.0
|
androidx.appcompat:appcompat:1.2.0
|
||||||
androidx.appcompat:appcompat:1.3.1
|
androidx.appcompat:appcompat:1.3.1
|
||||||
|
androidx.appcompat:appcompat:1.4.1
|
||||||
androidx.arch.core:core-common:2.0.0
|
androidx.arch.core:core-common:2.0.0
|
||||||
androidx.arch.core:core-common:2.1.0
|
androidx.arch.core:core-common:2.1.0
|
||||||
androidx.arch.core:core-runtime:2.0.0
|
androidx.arch.core:core-runtime:2.0.0
|
||||||
androidx.arch.core:core-runtime:2.1.0
|
androidx.arch.core:core-runtime:2.1.0
|
||||||
androidx.asynclayoutinflater:asynclayoutinflater:1.0.0
|
androidx.asynclayoutinflater:asynclayoutinflater:1.0.0
|
||||||
|
androidx.autofill:autofill:1.1.0
|
||||||
androidx.cardview:cardview:1.0.0
|
androidx.cardview:cardview:1.0.0
|
||||||
androidx.collection:collection:1.0.0
|
androidx.collection:collection:1.0.0
|
||||||
androidx.collection:collection:1.1.0
|
androidx.collection:collection:1.1.0
|
||||||
|
androidx.concurrent:concurrent-futures:1.0.0
|
||||||
androidx.constraintlayout:constraintlayout-solver:2.0.4
|
androidx.constraintlayout:constraintlayout-solver:2.0.4
|
||||||
androidx.constraintlayout:constraintlayout:2.0.4
|
androidx.constraintlayout:constraintlayout:2.0.4
|
||||||
androidx.coordinatorlayout:coordinatorlayout:1.0.0
|
androidx.coordinatorlayout:coordinatorlayout:1.0.0
|
||||||
androidx.coordinatorlayout:coordinatorlayout:1.1.0
|
androidx.coordinatorlayout:coordinatorlayout:1.1.0
|
||||||
androidx.core:core-ktx:1.6.0
|
androidx.core:core-ktx:1.6.0
|
||||||
androidx.core:core-splashscreen:1.0.0
|
androidx.core:core-splashscreen:1.0.0
|
||||||
androidx.core:core:1.0.1
|
|
||||||
androidx.core:core:1.1.0
|
androidx.core:core:1.1.0
|
||||||
androidx.core:core:1.6.0
|
androidx.core:core:1.6.0
|
||||||
|
androidx.core:core:1.7.0
|
||||||
androidx.cursoradapter:cursoradapter:1.0.0
|
androidx.cursoradapter:cursoradapter:1.0.0
|
||||||
androidx.customview:customview:1.0.0
|
androidx.customview:customview:1.0.0
|
||||||
androidx.databinding:databinding-common:3.2.1
|
androidx.databinding:databinding-common:3.2.1
|
||||||
androidx.databinding:databinding-common:3.3.1
|
androidx.databinding:databinding-common:3.3.1
|
||||||
androidx.databinding:databinding-common:3.5.4
|
androidx.databinding:databinding-common:3.5.4
|
||||||
|
androidx.databinding:databinding-common:4.1.0
|
||||||
|
androidx.databinding:databinding-common:7.2.1
|
||||||
|
androidx.databinding:databinding-common:7.2.2
|
||||||
|
androidx.databinding:databinding-common:7.3.0
|
||||||
androidx.databinding:databinding-compiler-common:3.2.1
|
androidx.databinding:databinding-compiler-common:3.2.1
|
||||||
androidx.databinding:databinding-compiler-common:3.3.1
|
androidx.databinding:databinding-compiler-common:3.3.1
|
||||||
androidx.databinding:databinding-compiler-common:3.5.4
|
androidx.databinding:databinding-compiler-common:3.5.4
|
||||||
|
androidx.databinding:databinding-compiler-common:4.1.0
|
||||||
|
androidx.databinding:databinding-compiler-common:7.2.1
|
||||||
|
androidx.databinding:databinding-compiler-common:7.2.2
|
||||||
|
androidx.databinding:databinding-compiler-common:7.3.0
|
||||||
androidx.documentfile:documentfile:1.0.0
|
androidx.documentfile:documentfile:1.0.0
|
||||||
androidx.drawerlayout:drawerlayout:1.0.0
|
androidx.drawerlayout:drawerlayout:1.0.0
|
||||||
|
androidx.emoji2:emoji2-views-helper:1.0.0
|
||||||
|
androidx.emoji2:emoji2:1.0.0
|
||||||
androidx.exifinterface:exifinterface:1.1.0-beta01
|
androidx.exifinterface:exifinterface:1.1.0-beta01
|
||||||
androidx.exifinterface:exifinterface:1.1.0-rc01
|
androidx.exifinterface:exifinterface:1.1.0-rc01
|
||||||
androidx.exifinterface:exifinterface:1.2.0
|
androidx.exifinterface:exifinterface:1.2.0
|
||||||
androidx.fragment:fragment:1.0.0
|
|
||||||
androidx.fragment:fragment:1.1.0
|
androidx.fragment:fragment:1.1.0
|
||||||
androidx.fragment:fragment:1.3.6
|
androidx.fragment:fragment:1.3.6
|
||||||
androidx.interpolator:interpolator:1.0.0
|
androidx.interpolator:interpolator:1.0.0
|
||||||
@@ -52,14 +61,16 @@ androidx.legacy:legacy-support-v4:1.0.0
|
|||||||
androidx.lifecycle:lifecycle-common:2.0.0
|
androidx.lifecycle:lifecycle-common:2.0.0
|
||||||
androidx.lifecycle:lifecycle-common:2.1.0
|
androidx.lifecycle:lifecycle-common:2.1.0
|
||||||
androidx.lifecycle:lifecycle-common:2.3.1
|
androidx.lifecycle:lifecycle-common:2.3.1
|
||||||
|
androidx.lifecycle:lifecycle-common:2.4.0
|
||||||
androidx.lifecycle:lifecycle-livedata-core:2.0.0
|
androidx.lifecycle:lifecycle-livedata-core:2.0.0
|
||||||
androidx.lifecycle:lifecycle-livedata-core:2.3.1
|
androidx.lifecycle:lifecycle-livedata-core:2.3.1
|
||||||
androidx.lifecycle:lifecycle-livedata:2.0.0
|
androidx.lifecycle:lifecycle-livedata:2.0.0
|
||||||
|
androidx.lifecycle:lifecycle-process:2.4.0
|
||||||
androidx.lifecycle:lifecycle-runtime:2.0.0
|
androidx.lifecycle:lifecycle-runtime:2.0.0
|
||||||
androidx.lifecycle:lifecycle-runtime:2.1.0
|
androidx.lifecycle:lifecycle-runtime:2.1.0
|
||||||
androidx.lifecycle:lifecycle-runtime:2.3.1
|
androidx.lifecycle:lifecycle-runtime:2.3.1
|
||||||
|
androidx.lifecycle:lifecycle-runtime:2.4.0
|
||||||
androidx.lifecycle:lifecycle-viewmodel-savedstate:2.3.1
|
androidx.lifecycle:lifecycle-viewmodel-savedstate:2.3.1
|
||||||
androidx.lifecycle:lifecycle-viewmodel:2.0.0
|
|
||||||
androidx.lifecycle:lifecycle-viewmodel:2.1.0
|
androidx.lifecycle:lifecycle-viewmodel:2.1.0
|
||||||
androidx.lifecycle:lifecycle-viewmodel:2.3.1
|
androidx.lifecycle:lifecycle-viewmodel:2.3.1
|
||||||
androidx.loader:loader:1.0.0
|
androidx.loader:loader:1.0.0
|
||||||
@@ -69,19 +80,19 @@ androidx.multidex:multidex:2.0.1
|
|||||||
androidx.print:print:1.0.0
|
androidx.print:print:1.0.0
|
||||||
androidx.recyclerview:recyclerview:1.0.0
|
androidx.recyclerview:recyclerview:1.0.0
|
||||||
androidx.recyclerview:recyclerview:1.1.0
|
androidx.recyclerview:recyclerview:1.1.0
|
||||||
|
androidx.resourceinspection:resourceinspection-annotation:1.0.0
|
||||||
androidx.savedstate:savedstate:1.0.0
|
androidx.savedstate:savedstate:1.0.0
|
||||||
androidx.savedstate:savedstate:1.1.0
|
androidx.savedstate:savedstate:1.1.0
|
||||||
androidx.slidingpanelayout:slidingpanelayout:1.0.0
|
androidx.slidingpanelayout:slidingpanelayout:1.0.0
|
||||||
|
androidx.startup:startup-runtime:1.0.0
|
||||||
androidx.swiperefreshlayout:swiperefreshlayout:1.0.0
|
androidx.swiperefreshlayout:swiperefreshlayout:1.0.0
|
||||||
androidx.swiperefreshlayout:swiperefreshlayout:1.1.0
|
androidx.swiperefreshlayout:swiperefreshlayout:1.1.0
|
||||||
|
androidx.swiperefreshlayout:swiperefreshlayout:1.1.0-alpha02
|
||||||
androidx.tracing:tracing:1.0.0
|
androidx.tracing:tracing:1.0.0
|
||||||
androidx.transition:transition:1.2.0
|
androidx.transition:transition:1.2.0
|
||||||
androidx.transition:transition:1.2.0-rc01
|
androidx.transition:transition:1.2.0-rc01
|
||||||
androidx.vectordrawable:vectordrawable-animated:1.0.0
|
|
||||||
androidx.vectordrawable:vectordrawable-animated:1.1.0
|
androidx.vectordrawable:vectordrawable-animated:1.1.0
|
||||||
androidx.vectordrawable:vectordrawable:1.0.1
|
|
||||||
androidx.vectordrawable:vectordrawable:1.1.0
|
androidx.vectordrawable:vectordrawable:1.1.0
|
||||||
androidx.versionedparcelable:versionedparcelable:1.0.0
|
|
||||||
androidx.versionedparcelable:versionedparcelable:1.1.0
|
androidx.versionedparcelable:versionedparcelable:1.1.0
|
||||||
androidx.versionedparcelable:versionedparcelable:1.1.1
|
androidx.versionedparcelable:versionedparcelable:1.1.1
|
||||||
androidx.viewpager2:viewpager2:1.0.0
|
androidx.viewpager2:viewpager2:1.0.0
|
||||||
@@ -91,6 +102,7 @@ commons-codec:commons-codec:1.4
|
|||||||
commons-codec:commons-codec:1.6
|
commons-codec:commons-codec:1.6
|
||||||
commons-codec:commons-codec:1.9
|
commons-codec:commons-codec:1.9
|
||||||
commons-codec:commons-codec:1.10
|
commons-codec:commons-codec:1.10
|
||||||
|
commons-codec:commons-codec:1.11
|
||||||
commons-io:commons-io:2.4
|
commons-io:commons-io:2.4
|
||||||
commons-logging:commons-logging:1.1.1
|
commons-logging:commons-logging:1.1.1
|
||||||
commons-logging:commons-logging:1.2
|
commons-logging:commons-logging:1.2
|
||||||
@@ -101,114 +113,166 @@ com.airbnb.android:lottie:3.4.4
|
|||||||
com.android.databinding:baseLibrary:1.0-rc5
|
com.android.databinding:baseLibrary:1.0-rc5
|
||||||
com.android.databinding:baseLibrary:3.0.0
|
com.android.databinding:baseLibrary:3.0.0
|
||||||
com.android.databinding:baseLibrary:3.0.1
|
com.android.databinding:baseLibrary:3.0.1
|
||||||
com.android.databinding:baseLibrary:3.1.4
|
|
||||||
com.android.databinding:baseLibrary:3.2.1
|
com.android.databinding:baseLibrary:3.2.1
|
||||||
com.android.databinding:baseLibrary:3.3.1
|
com.android.databinding:baseLibrary:3.3.1
|
||||||
com.android.databinding:baseLibrary:3.5.4
|
com.android.databinding:baseLibrary:3.5.4
|
||||||
|
com.android.databinding:baseLibrary:4.1.0
|
||||||
|
com.android.databinding:baseLibrary:7.2.1
|
||||||
|
com.android.databinding:baseLibrary:7.2.2
|
||||||
|
com.android.databinding:baseLibrary:7.3.0
|
||||||
com.android.databinding:compilerCommon:1.0-rc5
|
com.android.databinding:compilerCommon:1.0-rc5
|
||||||
com.android.databinding:compilerCommon:3.0.0
|
com.android.databinding:compilerCommon:3.0.0
|
||||||
com.android.databinding:compilerCommon:3.0.1
|
com.android.databinding:compilerCommon:3.0.1
|
||||||
com.android.databinding:compilerCommon:3.1.4
|
|
||||||
com.android.tools.analytics-library:crash:26.2.1
|
com.android.tools.analytics-library:crash:26.2.1
|
||||||
com.android.tools.analytics-library:crash:26.3.1
|
com.android.tools.analytics-library:crash:26.3.1
|
||||||
com.android.tools.analytics-library:crash:26.5.4
|
com.android.tools.analytics-library:crash:26.5.4
|
||||||
|
com.android.tools.analytics-library:crash:27.1.0
|
||||||
|
com.android.tools.analytics-library:crash:30.2.1
|
||||||
|
com.android.tools.analytics-library:crash:30.2.2
|
||||||
|
com.android.tools.analytics-library:crash:30.3.0
|
||||||
com.android.tools.analytics-library:protos:26.0.0
|
com.android.tools.analytics-library:protos:26.0.0
|
||||||
com.android.tools.analytics-library:protos:26.0.1
|
com.android.tools.analytics-library:protos:26.0.1
|
||||||
com.android.tools.analytics-library:protos:26.1.4
|
|
||||||
com.android.tools.analytics-library:protos:26.2.1
|
com.android.tools.analytics-library:protos:26.2.1
|
||||||
com.android.tools.analytics-library:protos:26.3.1
|
com.android.tools.analytics-library:protos:26.3.1
|
||||||
com.android.tools.analytics-library:protos:26.5.4
|
com.android.tools.analytics-library:protos:26.5.4
|
||||||
|
com.android.tools.analytics-library:protos:27.1.0
|
||||||
|
com.android.tools.analytics-library:protos:30.2.1
|
||||||
|
com.android.tools.analytics-library:protos:30.2.2
|
||||||
|
com.android.tools.analytics-library:protos:30.3.0
|
||||||
com.android.tools.analytics-library:shared:26.0.0
|
com.android.tools.analytics-library:shared:26.0.0
|
||||||
com.android.tools.analytics-library:shared:26.0.1
|
com.android.tools.analytics-library:shared:26.0.1
|
||||||
com.android.tools.analytics-library:shared:26.1.4
|
|
||||||
com.android.tools.analytics-library:shared:26.2.1
|
com.android.tools.analytics-library:shared:26.2.1
|
||||||
com.android.tools.analytics-library:shared:26.3.1
|
com.android.tools.analytics-library:shared:26.3.1
|
||||||
com.android.tools.analytics-library:shared:26.5.4
|
com.android.tools.analytics-library:shared:26.5.4
|
||||||
|
com.android.tools.analytics-library:shared:27.1.0
|
||||||
|
com.android.tools.analytics-library:shared:30.2.1
|
||||||
|
com.android.tools.analytics-library:shared:30.2.2
|
||||||
|
com.android.tools.analytics-library:shared:30.3.0
|
||||||
com.android.tools.analytics-library:tracker:26.0.0
|
com.android.tools.analytics-library:tracker:26.0.0
|
||||||
com.android.tools.analytics-library:tracker:26.0.1
|
com.android.tools.analytics-library:tracker:26.0.1
|
||||||
com.android.tools.analytics-library:tracker:26.1.4
|
|
||||||
com.android.tools.analytics-library:tracker:26.2.1
|
com.android.tools.analytics-library:tracker:26.2.1
|
||||||
com.android.tools.analytics-library:tracker:26.3.1
|
com.android.tools.analytics-library:tracker:26.3.1
|
||||||
com.android.tools.analytics-library:tracker:26.5.4
|
com.android.tools.analytics-library:tracker:26.5.4
|
||||||
|
com.android.tools.analytics-library:tracker:27.1.0
|
||||||
|
com.android.tools.analytics-library:tracker:30.2.1
|
||||||
|
com.android.tools.analytics-library:tracker:30.2.2
|
||||||
|
com.android.tools.analytics-library:tracker:30.3.0
|
||||||
com.android.tools.build.jetifier:jetifier-core:1.0.0-alpha10
|
com.android.tools.build.jetifier:jetifier-core:1.0.0-alpha10
|
||||||
com.android.tools.build.jetifier:jetifier-core:1.0.0-beta02
|
com.android.tools.build.jetifier:jetifier-core:1.0.0-beta02
|
||||||
com.android.tools.build.jetifier:jetifier-core:1.0.0-beta04
|
com.android.tools.build.jetifier:jetifier-core:1.0.0-beta04
|
||||||
|
com.android.tools.build.jetifier:jetifier-core:1.0.0-beta09
|
||||||
|
com.android.tools.build.jetifier:jetifier-core:1.0.0-beta10
|
||||||
com.android.tools.build.jetifier:jetifier-processor:1.0.0-alpha10
|
com.android.tools.build.jetifier:jetifier-processor:1.0.0-alpha10
|
||||||
com.android.tools.build.jetifier:jetifier-processor:1.0.0-beta02
|
com.android.tools.build.jetifier:jetifier-processor:1.0.0-beta02
|
||||||
com.android.tools.build.jetifier:jetifier-processor:1.0.0-beta04
|
com.android.tools.build.jetifier:jetifier-processor:1.0.0-beta04
|
||||||
com.android.tools.build:aapt2-proto:0.1.0
|
com.android.tools.build.jetifier:jetifier-processor:1.0.0-beta09
|
||||||
|
com.android.tools.build.jetifier:jetifier-processor:1.0.0-beta10
|
||||||
com.android.tools.build:aapt2-proto:0.3.1
|
com.android.tools.build:aapt2-proto:0.3.1
|
||||||
com.android.tools.build:aapt2-proto:0.4.0
|
com.android.tools.build:aapt2-proto:0.4.0
|
||||||
|
com.android.tools.build:aapt2-proto:4.1.0-6503028
|
||||||
|
com.android.tools.build:aapt2-proto:7.2.1-7984345
|
||||||
|
com.android.tools.build:aapt2-proto:7.2.2-7984345
|
||||||
|
com.android.tools.build:aapt2-proto:7.3.0-8691043
|
||||||
|
com.android.tools.build:aaptcompiler:4.1.0
|
||||||
|
com.android.tools.build:aaptcompiler:7.2.1
|
||||||
|
com.android.tools.build:aaptcompiler:7.2.2
|
||||||
|
com.android.tools.build:aaptcompiler:7.3.0
|
||||||
com.android.tools.build:apksig:3.0.0
|
com.android.tools.build:apksig:3.0.0
|
||||||
com.android.tools.build:apksig:3.0.1
|
com.android.tools.build:apksig:3.0.1
|
||||||
com.android.tools.build:apksig:3.1.4
|
|
||||||
com.android.tools.build:apksig:3.2.1
|
com.android.tools.build:apksig:3.2.1
|
||||||
com.android.tools.build:apksig:3.3.1
|
com.android.tools.build:apksig:3.3.1
|
||||||
com.android.tools.build:apksig:3.5.4
|
com.android.tools.build:apksig:3.5.4
|
||||||
|
com.android.tools.build:apksig:4.1.0
|
||||||
|
com.android.tools.build:apksig:7.2.1
|
||||||
|
com.android.tools.build:apksig:7.2.2
|
||||||
|
com.android.tools.build:apksig:7.3.0
|
||||||
com.android.tools.build:apkzlib:3.2.1
|
com.android.tools.build:apkzlib:3.2.1
|
||||||
com.android.tools.build:apkzlib:3.3.1
|
com.android.tools.build:apkzlib:3.3.1
|
||||||
com.android.tools.build:apkzlib:3.5.4
|
com.android.tools.build:apkzlib:3.5.4
|
||||||
|
com.android.tools.build:apkzlib:4.1.0
|
||||||
|
com.android.tools.build:apkzlib:7.2.1
|
||||||
|
com.android.tools.build:apkzlib:7.2.2
|
||||||
|
com.android.tools.build:apkzlib:7.3.0
|
||||||
com.android.tools.build:builder-model:1.1.3
|
com.android.tools.build:builder-model:1.1.3
|
||||||
com.android.tools.build:builder-model:1.3.1
|
com.android.tools.build:builder-model:1.3.1
|
||||||
com.android.tools.build:builder-model:1.5.0
|
com.android.tools.build:builder-model:1.5.0
|
||||||
com.android.tools.build:builder-model:3.0.0
|
com.android.tools.build:builder-model:3.0.0
|
||||||
com.android.tools.build:builder-model:3.0.1
|
com.android.tools.build:builder-model:3.0.1
|
||||||
com.android.tools.build:builder-model:3.1.4
|
|
||||||
com.android.tools.build:builder-model:3.2.1
|
com.android.tools.build:builder-model:3.2.1
|
||||||
com.android.tools.build:builder-model:3.3.1
|
com.android.tools.build:builder-model:3.3.1
|
||||||
com.android.tools.build:builder-model:3.5.4
|
com.android.tools.build:builder-model:3.5.4
|
||||||
|
com.android.tools.build:builder-model:4.1.0
|
||||||
|
com.android.tools.build:builder-model:7.2.1
|
||||||
|
com.android.tools.build:builder-model:7.2.2
|
||||||
|
com.android.tools.build:builder-model:7.3.0
|
||||||
com.android.tools.build:builder-test-api:1.1.3
|
com.android.tools.build:builder-test-api:1.1.3
|
||||||
com.android.tools.build:builder-test-api:1.3.1
|
com.android.tools.build:builder-test-api:1.3.1
|
||||||
com.android.tools.build:builder-test-api:1.5.0
|
com.android.tools.build:builder-test-api:1.5.0
|
||||||
com.android.tools.build:builder-test-api:3.0.0
|
com.android.tools.build:builder-test-api:3.0.0
|
||||||
com.android.tools.build:builder-test-api:3.0.1
|
com.android.tools.build:builder-test-api:3.0.1
|
||||||
com.android.tools.build:builder-test-api:3.1.4
|
|
||||||
com.android.tools.build:builder-test-api:3.2.1
|
com.android.tools.build:builder-test-api:3.2.1
|
||||||
com.android.tools.build:builder-test-api:3.3.1
|
com.android.tools.build:builder-test-api:3.3.1
|
||||||
com.android.tools.build:builder-test-api:3.5.4
|
com.android.tools.build:builder-test-api:3.5.4
|
||||||
|
com.android.tools.build:builder-test-api:4.1.0
|
||||||
|
com.android.tools.build:builder-test-api:7.2.1
|
||||||
|
com.android.tools.build:builder-test-api:7.2.2
|
||||||
|
com.android.tools.build:builder-test-api:7.3.0
|
||||||
com.android.tools.build:builder:1.1.3
|
com.android.tools.build:builder:1.1.3
|
||||||
com.android.tools.build:builder:1.3.1
|
com.android.tools.build:builder:1.3.1
|
||||||
com.android.tools.build:builder:1.5.0
|
com.android.tools.build:builder:1.5.0
|
||||||
com.android.tools.build:builder:3.0.0
|
com.android.tools.build:builder:3.0.0
|
||||||
com.android.tools.build:builder:3.0.1
|
com.android.tools.build:builder:3.0.1
|
||||||
com.android.tools.build:builder:3.1.4
|
|
||||||
com.android.tools.build:builder:3.2.1
|
com.android.tools.build:builder:3.2.1
|
||||||
com.android.tools.build:builder:3.3.1
|
com.android.tools.build:builder:3.3.1
|
||||||
com.android.tools.build:builder:3.5.4
|
com.android.tools.build:builder:3.5.4
|
||||||
com.android.tools.build:bundletool:0.1.0-alpha01
|
com.android.tools.build:builder:4.1.0
|
||||||
|
com.android.tools.build:builder:7.2.1
|
||||||
|
com.android.tools.build:builder:7.2.2
|
||||||
|
com.android.tools.build:builder:7.3.0
|
||||||
com.android.tools.build:bundletool:0.5.0
|
com.android.tools.build:bundletool:0.5.0
|
||||||
com.android.tools.build:bundletool:0.6.0
|
com.android.tools.build:bundletool:0.6.0
|
||||||
com.android.tools.build:bundletool:0.9.0
|
com.android.tools.build:bundletool:0.9.0
|
||||||
|
com.android.tools.build:bundletool:0.14.0
|
||||||
|
com.android.tools.build:bundletool:1.8.2
|
||||||
|
com.android.tools.build:bundletool:1.9.0
|
||||||
com.android.tools.build:gradle-api:3.0.0
|
com.android.tools.build:gradle-api:3.0.0
|
||||||
com.android.tools.build:gradle-api:3.0.1
|
com.android.tools.build:gradle-api:3.0.1
|
||||||
com.android.tools.build:gradle-api:3.1.4
|
|
||||||
com.android.tools.build:gradle-api:3.2.1
|
com.android.tools.build:gradle-api:3.2.1
|
||||||
com.android.tools.build:gradle-api:3.3.1
|
com.android.tools.build:gradle-api:3.3.1
|
||||||
com.android.tools.build:gradle-api:3.5.4
|
com.android.tools.build:gradle-api:3.5.4
|
||||||
|
com.android.tools.build:gradle-api:4.1.0
|
||||||
|
com.android.tools.build:gradle-api:7.2.1
|
||||||
|
com.android.tools.build:gradle-api:7.2.2
|
||||||
|
com.android.tools.build:gradle-api:7.3.0
|
||||||
com.android.tools.build:gradle-core:1.1.3
|
com.android.tools.build:gradle-core:1.1.3
|
||||||
com.android.tools.build:gradle-core:1.3.1
|
com.android.tools.build:gradle-core:1.3.1
|
||||||
com.android.tools.build:gradle-core:1.5.0
|
com.android.tools.build:gradle-core:1.5.0
|
||||||
com.android.tools.build:gradle-core:3.0.0
|
com.android.tools.build:gradle-core:3.0.0
|
||||||
com.android.tools.build:gradle-core:3.0.1
|
com.android.tools.build:gradle-core:3.0.1
|
||||||
com.android.tools.build:gradle-core:3.1.4
|
|
||||||
com.android.tools.build:gradle:1.1.3
|
com.android.tools.build:gradle:1.1.3
|
||||||
com.android.tools.build:gradle:1.3.1
|
com.android.tools.build:gradle:1.3.1
|
||||||
com.android.tools.build:gradle:1.5.0
|
com.android.tools.build:gradle:1.5.0
|
||||||
com.android.tools.build:gradle:3.0.0
|
com.android.tools.build:gradle:3.0.0
|
||||||
com.android.tools.build:gradle:3.0.1
|
com.android.tools.build:gradle:3.0.1
|
||||||
com.android.tools.build:gradle:3.1.4
|
|
||||||
com.android.tools.build:gradle:3.2.1
|
com.android.tools.build:gradle:3.2.1
|
||||||
com.android.tools.build:gradle:3.3.1
|
com.android.tools.build:gradle:3.3.1
|
||||||
com.android.tools.build:gradle:3.5.4
|
com.android.tools.build:gradle:3.5.4
|
||||||
|
com.android.tools.build:gradle:4.1.0
|
||||||
|
com.android.tools.build:gradle:7.2.1
|
||||||
|
com.android.tools.build:gradle:7.2.2
|
||||||
|
com.android.tools.build:gradle:7.3.0
|
||||||
com.android.tools.build:manifest-merger:24.1.3
|
com.android.tools.build:manifest-merger:24.1.3
|
||||||
com.android.tools.build:manifest-merger:24.3.1
|
com.android.tools.build:manifest-merger:24.3.1
|
||||||
com.android.tools.build:manifest-merger:24.5.0
|
com.android.tools.build:manifest-merger:24.5.0
|
||||||
com.android.tools.build:manifest-merger:26.0.0
|
com.android.tools.build:manifest-merger:26.0.0
|
||||||
com.android.tools.build:manifest-merger:26.0.1
|
com.android.tools.build:manifest-merger:26.0.1
|
||||||
com.android.tools.build:manifest-merger:26.1.4
|
|
||||||
com.android.tools.build:manifest-merger:26.2.1
|
com.android.tools.build:manifest-merger:26.2.1
|
||||||
com.android.tools.build:manifest-merger:26.3.1
|
com.android.tools.build:manifest-merger:26.3.1
|
||||||
com.android.tools.build:manifest-merger:26.5.4
|
com.android.tools.build:manifest-merger:26.5.4
|
||||||
|
com.android.tools.build:manifest-merger:27.1.0
|
||||||
|
com.android.tools.build:manifest-merger:30.2.1
|
||||||
|
com.android.tools.build:manifest-merger:30.2.2
|
||||||
|
com.android.tools.build:manifest-merger:30.3.0
|
||||||
com.android.tools.build:transform-api:1.5.0
|
com.android.tools.build:transform-api:1.5.0
|
||||||
com.android.tools.build:transform-api:2.0.0-deprecated-use-gradle-api
|
com.android.tools.build:transform-api:2.0.0-deprecated-use-gradle-api
|
||||||
com.android.tools.ddms:ddmlib:24.1.3
|
com.android.tools.ddms:ddmlib:24.1.3
|
||||||
@@ -216,18 +280,18 @@ com.android.tools.ddms:ddmlib:24.3.1
|
|||||||
com.android.tools.ddms:ddmlib:24.5.0
|
com.android.tools.ddms:ddmlib:24.5.0
|
||||||
com.android.tools.ddms:ddmlib:26.0.0
|
com.android.tools.ddms:ddmlib:26.0.0
|
||||||
com.android.tools.ddms:ddmlib:26.0.1
|
com.android.tools.ddms:ddmlib:26.0.1
|
||||||
com.android.tools.ddms:ddmlib:26.1.4
|
|
||||||
com.android.tools.ddms:ddmlib:26.2.1
|
com.android.tools.ddms:ddmlib:26.2.1
|
||||||
com.android.tools.ddms:ddmlib:26.3.1
|
com.android.tools.ddms:ddmlib:26.3.1
|
||||||
com.android.tools.ddms:ddmlib:26.5.4
|
com.android.tools.ddms:ddmlib:26.5.4
|
||||||
|
com.android.tools.ddms:ddmlib:27.1.0
|
||||||
|
com.android.tools.ddms:ddmlib:30.2.1
|
||||||
|
com.android.tools.ddms:ddmlib:30.2.2
|
||||||
|
com.android.tools.ddms:ddmlib:30.3.0
|
||||||
com.android.tools.external.com-intellij:intellij-core:26.0.0
|
com.android.tools.external.com-intellij:intellij-core:26.0.0
|
||||||
com.android.tools.external.com-intellij:intellij-core:26.0.1
|
com.android.tools.external.com-intellij:intellij-core:26.0.1
|
||||||
com.android.tools.external.com-intellij:intellij-core:26.5.4
|
|
||||||
com.android.tools.external.com-intellij:kotlin-compiler:26.5.4
|
|
||||||
com.android.tools.external.lombok:lombok-ast:0.2.3
|
com.android.tools.external.lombok:lombok-ast:0.2.3
|
||||||
com.android.tools.external.org-jetbrains:uast:26.0.0
|
com.android.tools.external.org-jetbrains:uast:26.0.0
|
||||||
com.android.tools.external.org-jetbrains:uast:26.0.1
|
com.android.tools.external.org-jetbrains:uast:26.0.1
|
||||||
com.android.tools.external.org-jetbrains:uast:26.5.4
|
|
||||||
com.android.tools.jack:jack-api:0.9.0
|
com.android.tools.jack:jack-api:0.9.0
|
||||||
com.android.tools.jill:jill-api:0.9.0
|
com.android.tools.jill:jill-api:0.9.0
|
||||||
com.android.tools.layoutlib:layoutlib-api:24.1.3
|
com.android.tools.layoutlib:layoutlib-api:24.1.3
|
||||||
@@ -235,121 +299,178 @@ com.android.tools.layoutlib:layoutlib-api:24.3.1
|
|||||||
com.android.tools.layoutlib:layoutlib-api:24.5.0
|
com.android.tools.layoutlib:layoutlib-api:24.5.0
|
||||||
com.android.tools.layoutlib:layoutlib-api:26.0.0
|
com.android.tools.layoutlib:layoutlib-api:26.0.0
|
||||||
com.android.tools.layoutlib:layoutlib-api:26.0.1
|
com.android.tools.layoutlib:layoutlib-api:26.0.1
|
||||||
com.android.tools.layoutlib:layoutlib-api:26.1.4
|
|
||||||
com.android.tools.layoutlib:layoutlib-api:26.2.1
|
com.android.tools.layoutlib:layoutlib-api:26.2.1
|
||||||
com.android.tools.layoutlib:layoutlib-api:26.3.1
|
com.android.tools.layoutlib:layoutlib-api:26.3.1
|
||||||
com.android.tools.layoutlib:layoutlib-api:26.5.4
|
com.android.tools.layoutlib:layoutlib-api:26.5.4
|
||||||
|
com.android.tools.layoutlib:layoutlib-api:27.1.0
|
||||||
|
com.android.tools.layoutlib:layoutlib-api:30.2.1
|
||||||
|
com.android.tools.layoutlib:layoutlib-api:30.2.2
|
||||||
|
com.android.tools.layoutlib:layoutlib-api:30.3.0
|
||||||
com.android.tools.lint:lint-api:24.1.3
|
com.android.tools.lint:lint-api:24.1.3
|
||||||
com.android.tools.lint:lint-api:24.3.1
|
com.android.tools.lint:lint-api:24.3.1
|
||||||
com.android.tools.lint:lint-api:24.5.0
|
com.android.tools.lint:lint-api:24.5.0
|
||||||
com.android.tools.lint:lint-api:26.0.0
|
com.android.tools.lint:lint-api:26.0.0
|
||||||
com.android.tools.lint:lint-api:26.0.1
|
com.android.tools.lint:lint-api:26.0.1
|
||||||
com.android.tools.lint:lint-api:26.5.4
|
|
||||||
com.android.tools.lint:lint-checks:24.1.3
|
com.android.tools.lint:lint-checks:24.1.3
|
||||||
com.android.tools.lint:lint-checks:24.3.1
|
com.android.tools.lint:lint-checks:24.3.1
|
||||||
com.android.tools.lint:lint-checks:24.5.0
|
com.android.tools.lint:lint-checks:24.5.0
|
||||||
com.android.tools.lint:lint-checks:26.0.0
|
com.android.tools.lint:lint-checks:26.0.0
|
||||||
com.android.tools.lint:lint-checks:26.0.1
|
com.android.tools.lint:lint-checks:26.0.1
|
||||||
com.android.tools.lint:lint-checks:26.5.4
|
|
||||||
com.android.tools.lint:lint-gradle-api:26.1.4
|
|
||||||
com.android.tools.lint:lint-gradle-api:26.2.1
|
com.android.tools.lint:lint-gradle-api:26.2.1
|
||||||
com.android.tools.lint:lint-gradle-api:26.3.1
|
com.android.tools.lint:lint-gradle-api:26.3.1
|
||||||
com.android.tools.lint:lint-gradle-api:26.5.4
|
com.android.tools.lint:lint-gradle-api:26.5.4
|
||||||
com.android.tools.lint:lint-gradle:26.5.4
|
com.android.tools.lint:lint-gradle-api:27.1.0
|
||||||
|
com.android.tools.lint:lint-model:27.1.0
|
||||||
|
com.android.tools.lint:lint-model:30.2.1
|
||||||
|
com.android.tools.lint:lint-model:30.2.2
|
||||||
|
com.android.tools.lint:lint-model:30.3.0
|
||||||
|
com.android.tools.lint:lint-typedef-remover:30.2.1
|
||||||
|
com.android.tools.lint:lint-typedef-remover:30.2.2
|
||||||
|
com.android.tools.lint:lint-typedef-remover:30.3.0
|
||||||
com.android.tools.lint:lint:24.1.3
|
com.android.tools.lint:lint:24.1.3
|
||||||
com.android.tools.lint:lint:24.3.1
|
com.android.tools.lint:lint:24.3.1
|
||||||
com.android.tools.lint:lint:24.5.0
|
com.android.tools.lint:lint:24.5.0
|
||||||
com.android.tools.lint:lint:26.0.0
|
com.android.tools.lint:lint:26.0.0
|
||||||
com.android.tools.lint:lint:26.0.1
|
com.android.tools.lint:lint:26.0.1
|
||||||
com.android.tools.lint:lint:26.5.4
|
com.android.tools.utp:android-device-provider-ddmlib-proto:30.2.1
|
||||||
|
com.android.tools.utp:android-device-provider-ddmlib-proto:30.2.2
|
||||||
|
com.android.tools.utp:android-device-provider-ddmlib-proto:30.3.0
|
||||||
|
com.android.tools.utp:android-device-provider-gradle-proto:30.2.1
|
||||||
|
com.android.tools.utp:android-device-provider-gradle-proto:30.2.2
|
||||||
|
com.android.tools.utp:android-device-provider-gradle-proto:30.3.0
|
||||||
|
com.android.tools.utp:android-test-plugin-host-additional-test-output-proto:30.2.1
|
||||||
|
com.android.tools.utp:android-test-plugin-host-additional-test-output-proto:30.2.2
|
||||||
|
com.android.tools.utp:android-test-plugin-host-additional-test-output-proto:30.3.0
|
||||||
|
com.android.tools.utp:android-test-plugin-host-coverage-proto:30.2.1
|
||||||
|
com.android.tools.utp:android-test-plugin-host-coverage-proto:30.2.2
|
||||||
|
com.android.tools.utp:android-test-plugin-host-coverage-proto:30.3.0
|
||||||
|
com.android.tools.utp:android-test-plugin-host-retention-proto:30.2.1
|
||||||
|
com.android.tools.utp:android-test-plugin-host-retention-proto:30.2.2
|
||||||
|
com.android.tools.utp:android-test-plugin-host-retention-proto:30.3.0
|
||||||
|
com.android.tools.utp:android-test-plugin-result-listener-gradle-proto:30.2.1
|
||||||
|
com.android.tools.utp:android-test-plugin-result-listener-gradle-proto:30.2.2
|
||||||
|
com.android.tools.utp:android-test-plugin-result-listener-gradle-proto:30.3.0
|
||||||
com.android.tools:annotations:24.1.3
|
com.android.tools:annotations:24.1.3
|
||||||
com.android.tools:annotations:24.3.1
|
com.android.tools:annotations:24.3.1
|
||||||
com.android.tools:annotations:24.5.0
|
com.android.tools:annotations:24.5.0
|
||||||
com.android.tools:annotations:26.0.0
|
com.android.tools:annotations:26.0.0
|
||||||
com.android.tools:annotations:26.0.1
|
com.android.tools:annotations:26.0.1
|
||||||
com.android.tools:annotations:26.1.4
|
|
||||||
com.android.tools:annotations:26.2.1
|
com.android.tools:annotations:26.2.1
|
||||||
com.android.tools:annotations:26.3.1
|
com.android.tools:annotations:26.3.1
|
||||||
com.android.tools:annotations:26.5.4
|
com.android.tools:annotations:26.5.4
|
||||||
|
com.android.tools:annotations:27.1.0
|
||||||
|
com.android.tools:annotations:30.2.1
|
||||||
|
com.android.tools:annotations:30.2.2
|
||||||
|
com.android.tools:annotations:30.3.0
|
||||||
com.android.tools:common:24.1.3
|
com.android.tools:common:24.1.3
|
||||||
com.android.tools:common:24.3.1
|
com.android.tools:common:24.3.1
|
||||||
com.android.tools:common:24.5.0
|
com.android.tools:common:24.5.0
|
||||||
com.android.tools:common:26.0.0
|
com.android.tools:common:26.0.0
|
||||||
com.android.tools:common:26.0.1
|
com.android.tools:common:26.0.1
|
||||||
com.android.tools:common:26.1.4
|
|
||||||
com.android.tools:common:26.2.1
|
com.android.tools:common:26.2.1
|
||||||
com.android.tools:common:26.3.1
|
com.android.tools:common:26.3.1
|
||||||
com.android.tools:common:26.5.4
|
com.android.tools:common:26.5.4
|
||||||
|
com.android.tools:common:27.1.0
|
||||||
|
com.android.tools:common:30.2.1
|
||||||
|
com.android.tools:common:30.2.2
|
||||||
|
com.android.tools:common:30.3.0
|
||||||
com.android.tools:dvlib:24.1.3
|
com.android.tools:dvlib:24.1.3
|
||||||
com.android.tools:dvlib:24.3.1
|
com.android.tools:dvlib:24.3.1
|
||||||
com.android.tools:dvlib:24.5.0
|
com.android.tools:dvlib:24.5.0
|
||||||
com.android.tools:dvlib:26.0.0
|
com.android.tools:dvlib:26.0.0
|
||||||
com.android.tools:dvlib:26.0.1
|
com.android.tools:dvlib:26.0.1
|
||||||
com.android.tools:dvlib:26.1.4
|
|
||||||
com.android.tools:dvlib:26.2.1
|
com.android.tools:dvlib:26.2.1
|
||||||
com.android.tools:dvlib:26.3.1
|
com.android.tools:dvlib:26.3.1
|
||||||
com.android.tools:dvlib:26.5.4
|
com.android.tools:dvlib:26.5.4
|
||||||
|
com.android.tools:dvlib:27.1.0
|
||||||
|
com.android.tools:dvlib:30.2.1
|
||||||
|
com.android.tools:dvlib:30.2.2
|
||||||
|
com.android.tools:dvlib:30.3.0
|
||||||
com.android.tools:repository:26.0.0
|
com.android.tools:repository:26.0.0
|
||||||
com.android.tools:repository:26.0.1
|
com.android.tools:repository:26.0.1
|
||||||
com.android.tools:repository:26.1.4
|
|
||||||
com.android.tools:repository:26.2.1
|
com.android.tools:repository:26.2.1
|
||||||
com.android.tools:repository:26.3.1
|
com.android.tools:repository:26.3.1
|
||||||
com.android.tools:repository:26.5.4
|
com.android.tools:repository:26.5.4
|
||||||
|
com.android.tools:repository:27.1.0
|
||||||
|
com.android.tools:repository:30.2.1
|
||||||
|
com.android.tools:repository:30.2.2
|
||||||
|
com.android.tools:repository:30.3.0
|
||||||
com.android.tools:sdklib:24.1.3
|
com.android.tools:sdklib:24.1.3
|
||||||
com.android.tools:sdklib:24.3.1
|
com.android.tools:sdklib:24.3.1
|
||||||
com.android.tools:sdklib:24.5.0
|
com.android.tools:sdklib:24.5.0
|
||||||
com.android.tools:sdklib:26.0.0
|
com.android.tools:sdklib:26.0.0
|
||||||
com.android.tools:sdklib:26.0.1
|
com.android.tools:sdklib:26.0.1
|
||||||
com.android.tools:sdklib:26.1.4
|
|
||||||
com.android.tools:sdklib:26.2.1
|
com.android.tools:sdklib:26.2.1
|
||||||
com.android.tools:sdklib:26.3.1
|
com.android.tools:sdklib:26.3.1
|
||||||
com.android.tools:sdklib:26.5.4
|
com.android.tools:sdklib:26.5.4
|
||||||
|
com.android.tools:sdklib:27.1.0
|
||||||
|
com.android.tools:sdklib:30.2.1
|
||||||
|
com.android.tools:sdklib:30.2.2
|
||||||
|
com.android.tools:sdklib:30.3.0
|
||||||
com.android.tools:sdk-common:24.1.3
|
com.android.tools:sdk-common:24.1.3
|
||||||
com.android.tools:sdk-common:24.3.1
|
com.android.tools:sdk-common:24.3.1
|
||||||
com.android.tools:sdk-common:24.5.0
|
com.android.tools:sdk-common:24.5.0
|
||||||
com.android.tools:sdk-common:26.0.0
|
com.android.tools:sdk-common:26.0.0
|
||||||
com.android.tools:sdk-common:26.0.1
|
com.android.tools:sdk-common:26.0.1
|
||||||
com.android.tools:sdk-common:26.1.4
|
|
||||||
com.android.tools:sdk-common:26.2.1
|
com.android.tools:sdk-common:26.2.1
|
||||||
com.android.tools:sdk-common:26.3.1
|
com.android.tools:sdk-common:26.3.1
|
||||||
com.android.tools:sdk-common:26.5.4
|
com.android.tools:sdk-common:26.5.4
|
||||||
|
com.android.tools:sdk-common:27.1.0
|
||||||
|
com.android.tools:sdk-common:30.2.1
|
||||||
|
com.android.tools:sdk-common:30.2.2
|
||||||
|
com.android.tools:sdk-common:30.3.0
|
||||||
|
com.android:signflinger:4.1.0
|
||||||
|
com.android:signflinger:7.2.1
|
||||||
|
com.android:signflinger:7.2.2
|
||||||
|
com.android:signflinger:7.3.0
|
||||||
|
com.android:zipflinger:4.1.0
|
||||||
|
com.android:zipflinger:7.2.1
|
||||||
|
com.android:zipflinger:7.2.2
|
||||||
|
com.android:zipflinger:7.3.0
|
||||||
|
com.diffplug.durian:durian-collect:1.2.0
|
||||||
|
com.diffplug.durian:durian-core:1.2.0
|
||||||
|
com.diffplug.durian:durian-io:1.2.0
|
||||||
|
com.diffplug.spotless:spotless-lib-extra:2.30.0
|
||||||
|
com.diffplug.spotless:spotless-lib:2.30.0
|
||||||
|
com.diffplug.spotless:spotless-plugin-gradle:6.11.0
|
||||||
com.drewnoakes:metadata-extractor:2.9.1
|
com.drewnoakes:metadata-extractor:2.9.1
|
||||||
com.facebook.conceal:conceal:1.1.3
|
com.facebook.conceal:conceal:1.1.3
|
||||||
com.facebook.fbjni:fbjni-java-only:0.0.3
|
com.facebook.fbjni:fbjni-java-only:0.2.2
|
||||||
com.facebook.flipper:flipper-fresco-plugin:0.54.0
|
com.facebook.flipper:flipper-fresco-plugin:0.54.0
|
||||||
com.facebook.flipper:flipper:0.54.0
|
com.facebook.flipper:flipper:0.54.0
|
||||||
com.facebook.fresco:animated-base:2.2.0
|
com.facebook.fresco:animated-base:2.2.0
|
||||||
com.facebook.fresco:animated-drawable:2.2.0
|
com.facebook.fresco:animated-drawable:2.2.0
|
||||||
com.facebook.fresco:animated-gif:2.2.0
|
com.facebook.fresco:animated-gif:2.2.0
|
||||||
com.facebook.fresco:drawee:2.0.0
|
com.facebook.fresco:drawee:2.5.0
|
||||||
com.facebook.fresco:drawee:2.2.0
|
com.facebook.fresco:fbcore:2.5.0
|
||||||
com.facebook.fresco:fbcore:2.0.0
|
|
||||||
com.facebook.fresco:fbcore:2.2.0
|
|
||||||
com.facebook.fresco:flipper:2.2.0
|
com.facebook.fresco:flipper:2.2.0
|
||||||
com.facebook.fresco:fresco:2.0.0
|
com.facebook.fresco:fresco:2.5.0
|
||||||
com.facebook.fresco:fresco:2.2.0
|
com.facebook.fresco:imagepipeline-base:2.5.0
|
||||||
com.facebook.fresco:imagepipeline-base:2.0.0
|
com.facebook.fresco:imagepipeline-native:2.5.0
|
||||||
com.facebook.fresco:imagepipeline-base:2.2.0
|
com.facebook.fresco:imagepipeline-okhttp3:2.5.0
|
||||||
com.facebook.fresco:imagepipeline-native:2.2.0
|
com.facebook.fresco:imagepipeline:2.5.0
|
||||||
com.facebook.fresco:imagepipeline-okhttp3:2.0.0
|
com.facebook.fresco:memory-type-ashmem:2.5.0
|
||||||
com.facebook.fresco:imagepipeline:2.0.0
|
com.facebook.fresco:memory-type-java:2.5.0
|
||||||
com.facebook.fresco:imagepipeline:2.2.0
|
com.facebook.fresco:memory-type-native:2.5.0
|
||||||
com.facebook.fresco:memory-type-ashmem:2.2.0
|
com.facebook.fresco:middleware:2.5.0
|
||||||
com.facebook.fresco:memory-type-java:2.2.0
|
com.facebook.fresco:nativeimagefilters:2.5.0
|
||||||
com.facebook.fresco:memory-type-native:2.2.0
|
com.facebook.fresco:nativeimagetranscoder:2.5.0
|
||||||
com.facebook.fresco:nativeimagefilters:2.0.0
|
com.facebook.fresco:soloader:2.5.0
|
||||||
com.facebook.fresco:nativeimagefilters:2.2.0
|
|
||||||
com.facebook.fresco:nativeimagetranscoder:2.0.0
|
|
||||||
com.facebook.fresco:nativeimagetranscoder:2.2.0
|
|
||||||
com.facebook.fresco:soloader:2.2.0
|
|
||||||
com.facebook.fresco:stetho:2.2.0
|
com.facebook.fresco:stetho:2.2.0
|
||||||
com.facebook.fresco:ui-common:2.2.0
|
com.facebook.fresco:ui-common:2.5.0
|
||||||
com.facebook.infer.annotation:infer-annotation:0.11.2
|
com.facebook.infer.annotation:infer-annotation:0.18.0
|
||||||
com.facebook.soloader:annotation:0.9.0
|
com.facebook.soloader:annotation:0.10.3
|
||||||
com.facebook.soloader:nativeloader:0.9.0
|
com.facebook.soloader:nativeloader:0.10.3
|
||||||
com.facebook.soloader:soloader:0.9.0
|
com.facebook.soloader:soloader:0.10.3
|
||||||
com.facebook.yoga:proguard-annotations:1.14.1
|
com.facebook.yoga:proguard-annotations:1.19.0
|
||||||
com.github.Dimezis:BlurView:version-2.0.2
|
com.fasterxml.jackson.core:jackson-annotations:2.11.1
|
||||||
|
com.fasterxml.jackson.core:jackson-core:2.11.1
|
||||||
|
com.fasterxml.jackson.core:jackson-databind:2.11.1
|
||||||
|
com.fasterxml.jackson.dataformat:jackson-dataformat-xml:2.11.1
|
||||||
|
com.fasterxml.jackson.module:jackson-module-jaxb-annotations:2.11.1
|
||||||
|
com.fasterxml.jackson.module:jackson-module-kotlin:2.11.1
|
||||||
|
com.fasterxml.woodstox:woodstox-core:6.2.1
|
||||||
|
com.github.Dimezis:BlurView:version-2.0.3
|
||||||
com.github.bumptech.glide:annotations:4.12.0
|
com.github.bumptech.glide:annotations:4.12.0
|
||||||
com.github.bumptech.glide:compiler:4.12.0
|
com.github.bumptech.glide:compiler:4.12.0
|
||||||
com.github.bumptech.glide:disklrucache:4.12.0
|
com.github.bumptech.glide:disklrucache:4.12.0
|
||||||
@@ -364,58 +485,132 @@ com.github.status-im:function:0.0.1
|
|||||||
com.github.wix-playground:ahbottomnavigation:3.3.0
|
com.github.wix-playground:ahbottomnavigation:3.3.0
|
||||||
com.github.wix-playground:reflow-animator:1.0.6
|
com.github.wix-playground:reflow-animator:1.0.6
|
||||||
com.github.yalantis:ucrop:2.2.6-native
|
com.github.yalantis:ucrop:2.2.6-native
|
||||||
|
com.googlecode.concurrent-trees:concurrent-trees:2.6.1
|
||||||
|
com.googlecode.javaewah:JavaEWAH:1.1.13
|
||||||
com.googlecode.json-simple:json-simple:1.1
|
com.googlecode.json-simple:json-simple:1.1
|
||||||
com.googlecode.juniversalchardet:juniversalchardet:1.0.3
|
com.googlecode.juniversalchardet:juniversalchardet:1.0.3
|
||||||
com.google.android.material:material:1.2.0-alpha03
|
com.google.android.material:material:1.2.0-alpha03
|
||||||
|
com.google.android:annotations:4.1.1.4
|
||||||
|
com.google.api.grpc:proto-google-common-protos:1.12.0
|
||||||
|
com.google.api.grpc:proto-google-common-protos:2.0.1
|
||||||
|
com.google.auto.value:auto-value-annotations:1.6.2
|
||||||
com.google.auto.value:auto-value:1.5.2
|
com.google.auto.value:auto-value:1.5.2
|
||||||
com.google.code.findbugs:jsr305:1.3.9
|
com.google.code.findbugs:jsr305:1.3.9
|
||||||
com.google.code.findbugs:jsr305:3.0.2
|
com.google.code.findbugs:jsr305:3.0.2
|
||||||
com.google.code.gson:gson:2.2.4
|
com.google.code.gson:gson:2.2.4
|
||||||
com.google.code.gson:gson:2.3
|
com.google.code.gson:gson:2.3
|
||||||
com.google.code.gson:gson:2.7
|
|
||||||
com.google.code.gson:gson:2.8.0
|
com.google.code.gson:gson:2.8.0
|
||||||
com.google.code.gson:gson:2.8.5
|
com.google.code.gson:gson:2.8.5
|
||||||
com.google.code.gson:gson:2.8.6
|
com.google.code.gson:gson:2.8.6
|
||||||
|
com.google.code.gson:gson:2.8.9
|
||||||
|
com.google.crypto.tink:tink:1.3.0-rc2
|
||||||
|
com.google.dagger:dagger:2.28.3
|
||||||
com.google.errorprone:error_prone_annotations:2.0.18
|
com.google.errorprone:error_prone_annotations:2.0.18
|
||||||
com.google.errorprone:error_prone_annotations:2.1.2
|
|
||||||
com.google.errorprone:error_prone_annotations:2.2.0
|
com.google.errorprone:error_prone_annotations:2.2.0
|
||||||
com.google.errorprone:error_prone_annotations:2.3.1
|
com.google.errorprone:error_prone_annotations:2.3.1
|
||||||
|
com.google.errorprone:error_prone_annotations:2.3.2
|
||||||
|
com.google.errorprone:error_prone_annotations:2.3.4
|
||||||
|
com.google.errorprone:error_prone_annotations:2.4.0
|
||||||
|
com.google.errorprone:error_prone_annotations:2.7.1
|
||||||
|
com.google.flatbuffers:flatbuffers-java:1.12.0
|
||||||
com.google.guava:failureaccess:1.0.1
|
com.google.guava:failureaccess:1.0.1
|
||||||
com.google.guava:guava:17.0
|
com.google.guava:guava:17.0
|
||||||
com.google.guava:guava:22.0
|
com.google.guava:guava:22.0
|
||||||
com.google.guava:guava:23.0
|
com.google.guava:guava:23.0
|
||||||
com.google.guava:guava:26.0-jre
|
com.google.guava:guava:26.0-jre
|
||||||
com.google.guava:guava:27.0.1-jre
|
com.google.guava:guava:27.0.1-jre
|
||||||
|
com.google.guava:guava:28.1-jre
|
||||||
|
com.google.guava:guava:29.0-jre
|
||||||
|
com.google.guava:guava:30.1-jre
|
||||||
|
com.google.guava:guava:31.0.1-jre
|
||||||
|
com.google.guava:listenablefuture:1.0
|
||||||
com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava
|
com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava
|
||||||
com.google.j2objc:j2objc-annotations:1.1
|
com.google.j2objc:j2objc-annotations:1.1
|
||||||
|
com.google.j2objc:j2objc-annotations:1.3
|
||||||
com.google.jimfs:jimfs:1.1
|
com.google.jimfs:jimfs:1.1
|
||||||
com.google.protobuf:protobuf-java-util:3.4.0
|
com.google.protobuf:protobuf-java-util:3.4.0
|
||||||
|
com.google.protobuf:protobuf-java-util:3.10.0
|
||||||
|
com.google.protobuf:protobuf-java-util:3.17.2
|
||||||
com.google.protobuf:protobuf-java:3.0.0
|
com.google.protobuf:protobuf-java:3.0.0
|
||||||
com.google.protobuf:protobuf-java:3.4.0
|
com.google.protobuf:protobuf-java:3.4.0
|
||||||
|
com.google.protobuf:protobuf-java:3.10.0
|
||||||
|
com.google.protobuf:protobuf-java:3.17.2
|
||||||
|
com.google.testing.platform:core-proto:0.0.8-alpha07
|
||||||
|
com.google.test.platform:core-proto:0.0.2-dev
|
||||||
com.google.zxing:core:3.3.0
|
com.google.zxing:core:3.3.0
|
||||||
com.intellij:annotations:12.0
|
com.intellij:annotations:12.0
|
||||||
com.parse.bolts:bolts-applinks:1.4.0
|
com.parse.bolts:bolts-applinks:1.4.0
|
||||||
com.parse.bolts:bolts-tasks:1.4.0
|
com.parse.bolts:bolts-tasks:1.4.0
|
||||||
com.squareup.okhttp3:okhttp-tls:3.12.12
|
com.squareup.okhttp3:okhttp-tls:4.9.2
|
||||||
com.squareup.okhttp3:okhttp-urlconnection:3.12.12
|
com.squareup.okhttp3:okhttp-urlconnection:4.9.2
|
||||||
com.squareup.okhttp3:okhttp:3.12.12
|
com.squareup.okhttp3:okhttp:4.9.2
|
||||||
com.squareup.okio:okio:1.15.0
|
com.squareup.okio:okio:2.9.0
|
||||||
com.squareup.okio:okio:1.17.4
|
|
||||||
com.squareup:javapoet:1.8.0
|
com.squareup:javapoet:1.8.0
|
||||||
|
com.squareup:javapoet:1.10.0
|
||||||
|
com.squareup:javapoet:1.13.0
|
||||||
com.squareup:javawriter:2.5.0
|
com.squareup:javawriter:2.5.0
|
||||||
com.sun.activation:javax.activation:1.2.0
|
com.sun.activation:javax.activation:1.2.0
|
||||||
com.sun.istack:istack-commons-runtime:2.21
|
com.sun.istack:istack-commons-runtime:2.21
|
||||||
|
com.sun.istack:istack-commons-runtime:3.0.7
|
||||||
|
com.sun.istack:istack-commons-runtime:3.0.8
|
||||||
com.sun.xml.fastinfoset:FastInfoset:1.2.13
|
com.sun.xml.fastinfoset:FastInfoset:1.2.13
|
||||||
|
com.sun.xml.fastinfoset:FastInfoset:1.2.15
|
||||||
|
com.sun.xml.fastinfoset:FastInfoset:1.2.16
|
||||||
com.tunnelvisionlabs:antlr4-annotations:4.5
|
com.tunnelvisionlabs:antlr4-annotations:4.5
|
||||||
com.tunnelvisionlabs:antlr4-runtime:4.5
|
com.tunnelvisionlabs:antlr4-runtime:4.5
|
||||||
com.tunnelvisionlabs:antlr4:4.5
|
com.tunnelvisionlabs:antlr4:4.5
|
||||||
de.undercouch:gradle-download-task:3.4.3
|
de.undercouch:gradle-download-task:4.1.1
|
||||||
de.undercouch:gradle-download-task:4.0.2
|
de.undercouch:gradle-download-task:5.0.1
|
||||||
|
io.grpc:grpc-api:1.21.1
|
||||||
|
io.grpc:grpc-api:1.39.0
|
||||||
|
io.grpc:grpc-context:1.21.1
|
||||||
|
io.grpc:grpc-context:1.39.0
|
||||||
|
io.grpc:grpc-core:1.21.1
|
||||||
|
io.grpc:grpc-core:1.39.0
|
||||||
|
io.grpc:grpc-netty:1.21.1
|
||||||
|
io.grpc:grpc-netty:1.39.0
|
||||||
|
io.grpc:grpc-protobuf-lite:1.21.1
|
||||||
|
io.grpc:grpc-protobuf-lite:1.39.0
|
||||||
|
io.grpc:grpc-protobuf:1.21.1
|
||||||
|
io.grpc:grpc-protobuf:1.39.0
|
||||||
|
io.grpc:grpc-stub:1.21.1
|
||||||
|
io.grpc:grpc-stub:1.39.0
|
||||||
|
io.netty:netty-buffer:4.1.34.Final
|
||||||
|
io.netty:netty-buffer:4.1.52.Final
|
||||||
|
io.netty:netty-codec-http2:4.1.34.Final
|
||||||
|
io.netty:netty-codec-http2:4.1.52.Final
|
||||||
|
io.netty:netty-codec-http:4.1.34.Final
|
||||||
|
io.netty:netty-codec-http:4.1.52.Final
|
||||||
|
io.netty:netty-codec-socks:4.1.34.Final
|
||||||
|
io.netty:netty-codec-socks:4.1.52.Final
|
||||||
|
io.netty:netty-codec:4.1.34.Final
|
||||||
|
io.netty:netty-codec:4.1.52.Final
|
||||||
|
io.netty:netty-common:4.1.34.Final
|
||||||
|
io.netty:netty-common:4.1.52.Final
|
||||||
|
io.netty:netty-handler-proxy:4.1.34.Final
|
||||||
|
io.netty:netty-handler-proxy:4.1.52.Final
|
||||||
|
io.netty:netty-handler:4.1.34.Final
|
||||||
|
io.netty:netty-handler:4.1.52.Final
|
||||||
|
io.netty:netty-resolver:4.1.34.Final
|
||||||
|
io.netty:netty-resolver:4.1.52.Final
|
||||||
|
io.netty:netty-transport:4.1.34.Final
|
||||||
|
io.netty:netty-transport:4.1.52.Final
|
||||||
|
io.opencensus:opencensus-api:0.21.0
|
||||||
|
io.opencensus:opencensus-contrib-grpc-metrics:0.21.0
|
||||||
|
io.perfmark:perfmark-api:0.23.0
|
||||||
it.unimi.dsi:fastutil:7.2.0
|
it.unimi.dsi:fastutil:7.2.0
|
||||||
|
it.unimi.dsi:fastutil:8.4.0
|
||||||
|
jakarta.activation:jakarta.activation-api:1.2.1
|
||||||
|
jakarta.xml.bind:jakarta.xml.bind-api:2.3.2
|
||||||
|
javax.activation:javax.activation-api:1.2.0
|
||||||
|
javax.annotation:javax.annotation-api:1.3.2
|
||||||
javax.inject:javax.inject:1
|
javax.inject:javax.inject:1
|
||||||
javax.xml.bind:jaxb-api:2.2.12-b140109.1041
|
javax.xml.bind:jaxb-api:2.2.12-b140109.1041
|
||||||
|
javax.xml.bind:jaxb-api:2.3.1
|
||||||
junit:junit:4.12
|
junit:junit:4.12
|
||||||
me.zhanghai.android.materialprogressbar:library:1.4.2
|
me.zhanghai.android.materialprogressbar:library:1.4.2
|
||||||
|
net.java.dev.jna:jna-platform:5.6.0
|
||||||
|
net.java.dev.jna:jna:5.6.0
|
||||||
net.sf.jopt-simple:jopt-simple:4.9
|
net.sf.jopt-simple:jopt-simple:4.9
|
||||||
net.sf.kxml:kxml2:2.3.0
|
net.sf.kxml:kxml2:2.3.0
|
||||||
net.sf.proguard:proguard-base:5.1
|
net.sf.proguard:proguard-base:5.1
|
||||||
@@ -428,134 +623,177 @@ net.sf.proguard:proguard-gradle:5.3.3
|
|||||||
net.sf.proguard:proguard-gradle:6.0.3
|
net.sf.proguard:proguard-gradle:6.0.3
|
||||||
org.abego.treelayout:org.abego.treelayout.core:1.0.1
|
org.abego.treelayout:org.abego.treelayout.core:1.0.1
|
||||||
org.antlr:ST4:4.0.8
|
org.antlr:ST4:4.0.8
|
||||||
org.antlr:antlr4-runtime:4.5.2-1
|
|
||||||
org.antlr:antlr4:4.5.3
|
org.antlr:antlr4:4.5.3
|
||||||
org.antlr:antlr-runtime:3.5.2
|
org.antlr:antlr-runtime:3.5.2
|
||||||
org.antlr:antlr:3.5.2
|
org.antlr:antlr:3.5.2
|
||||||
org.apache.commons:commons-compress:1.8.1
|
org.apache.commons:commons-compress:1.8.1
|
||||||
org.apache.commons:commons-compress:1.12
|
org.apache.commons:commons-compress:1.12
|
||||||
|
org.apache.commons:commons-compress:1.20
|
||||||
org.apache.commons:commons-lang3:3.3.2
|
org.apache.commons:commons-lang3:3.3.2
|
||||||
org.apache.commons:commons-lang3:3.9
|
org.apache.commons:commons-lang3:3.9
|
||||||
org.apache.httpcomponents:httpclient:4.1.1
|
org.apache.httpcomponents:httpclient:4.1.1
|
||||||
org.apache.httpcomponents:httpclient:4.2.6
|
org.apache.httpcomponents:httpclient:4.2.6
|
||||||
org.apache.httpcomponents:httpclient:4.5.2
|
org.apache.httpcomponents:httpclient:4.5.2
|
||||||
org.apache.httpcomponents:httpclient:4.5.3
|
|
||||||
org.apache.httpcomponents:httpclient:4.5.6
|
org.apache.httpcomponents:httpclient:4.5.6
|
||||||
|
org.apache.httpcomponents:httpclient:4.5.9
|
||||||
|
org.apache.httpcomponents:httpclient:4.5.13
|
||||||
org.apache.httpcomponents:httpcore:4.1
|
org.apache.httpcomponents:httpcore:4.1
|
||||||
org.apache.httpcomponents:httpcore:4.2.5
|
org.apache.httpcomponents:httpcore:4.2.5
|
||||||
org.apache.httpcomponents:httpcore:4.4.5
|
org.apache.httpcomponents:httpcore:4.4.5
|
||||||
org.apache.httpcomponents:httpcore:4.4.6
|
|
||||||
org.apache.httpcomponents:httpcore:4.4.10
|
org.apache.httpcomponents:httpcore:4.4.10
|
||||||
|
org.apache.httpcomponents:httpcore:4.4.11
|
||||||
|
org.apache.httpcomponents:httpcore:4.4.13
|
||||||
org.apache.httpcomponents:httpmime:4.1
|
org.apache.httpcomponents:httpmime:4.1
|
||||||
org.apache.httpcomponents:httpmime:4.5.2
|
org.apache.httpcomponents:httpmime:4.5.2
|
||||||
org.apache.httpcomponents:httpmime:4.5.6
|
org.apache.httpcomponents:httpmime:4.5.6
|
||||||
|
org.bitbucket.b_c:jose4j:0.7.0
|
||||||
org.bouncycastle:bcpkix-jdk15on:1.48
|
org.bouncycastle:bcpkix-jdk15on:1.48
|
||||||
org.bouncycastle:bcpkix-jdk15on:1.56
|
org.bouncycastle:bcpkix-jdk15on:1.56
|
||||||
|
org.bouncycastle:bcpkix-jdk15on:1.67
|
||||||
org.bouncycastle:bcprov-jdk15on:1.48
|
org.bouncycastle:bcprov-jdk15on:1.48
|
||||||
org.bouncycastle:bcprov-jdk15on:1.56
|
org.bouncycastle:bcprov-jdk15on:1.56
|
||||||
org.bouncycastle:bcprov-jdk15on:1.60
|
org.bouncycastle:bcprov-jdk15on:1.60
|
||||||
|
org.bouncycastle:bcprov-jdk15on:1.67
|
||||||
org.checkerframework:checker-qual:2.5.2
|
org.checkerframework:checker-qual:2.5.2
|
||||||
org.codehaus.groovy:groovy-all:2.4.15
|
org.checkerframework:checker-qual:2.8.1
|
||||||
|
org.checkerframework:checker-qual:2.11.1
|
||||||
|
org.checkerframework:checker-qual:3.5.0
|
||||||
|
org.checkerframework:checker-qual:3.12.0
|
||||||
|
org.codehaus.groovy:groovy-xml:3.0.10
|
||||||
|
org.codehaus.groovy:groovy:3.0.10
|
||||||
org.codehaus.mojo:animal-sniffer-annotations:1.14
|
org.codehaus.mojo:animal-sniffer-annotations:1.14
|
||||||
org.codehaus.mojo:animal-sniffer-annotations:1.17
|
org.codehaus.mojo:animal-sniffer-annotations:1.17
|
||||||
|
org.codehaus.mojo:animal-sniffer-annotations:1.18
|
||||||
|
org.codehaus.mojo:animal-sniffer-annotations:1.19
|
||||||
|
org.codehaus.woodstox:stax2-api:4.2.1
|
||||||
org.conscrypt:conscrypt-android:2.0.0
|
org.conscrypt:conscrypt-android:2.0.0
|
||||||
org.eclipse.jdt.core.compiler:ecj:4.4
|
org.eclipse.jdt.core.compiler:ecj:4.4
|
||||||
org.eclipse.jdt.core.compiler:ecj:4.4.2
|
org.eclipse.jdt.core.compiler:ecj:4.4.2
|
||||||
org.eclipse.jdt.core.compiler:ecj:4.6.1
|
org.eclipse.jdt.core.compiler:ecj:4.6.1
|
||||||
|
org.eclipse.jgit:org.eclipse.jgit:5.13.1.202206130422-r
|
||||||
org.glassfish.jaxb:jaxb-core:2.2.11
|
org.glassfish.jaxb:jaxb-core:2.2.11
|
||||||
org.glassfish.jaxb:jaxb-runtime:2.2.11
|
org.glassfish.jaxb:jaxb-runtime:2.2.11
|
||||||
|
org.glassfish.jaxb:jaxb-runtime:2.3.1
|
||||||
|
org.glassfish.jaxb:jaxb-runtime:2.3.2
|
||||||
org.glassfish.jaxb:txw2:2.2.11
|
org.glassfish.jaxb:txw2:2.2.11
|
||||||
|
org.glassfish.jaxb:txw2:2.3.1
|
||||||
|
org.glassfish.jaxb:txw2:2.3.2
|
||||||
org.hamcrest:hamcrest-core:1.3
|
org.hamcrest:hamcrest-core:1.3
|
||||||
|
org.jacoco:org.jacoco.agent:0.8.7
|
||||||
|
org.jacoco:org.jacoco.ant:0.8.7
|
||||||
org.jacoco:org.jacoco.core:0.7.4.201502262128
|
org.jacoco:org.jacoco.core:0.7.4.201502262128
|
||||||
|
org.jacoco:org.jacoco.core:0.8.7
|
||||||
org.jacoco:org.jacoco.report:0.7.4.201502262128
|
org.jacoco:org.jacoco.report:0.7.4.201502262128
|
||||||
|
org.jacoco:org.jacoco.report:0.8.7
|
||||||
org.jdom:jdom2:2.0.6
|
org.jdom:jdom2:2.0.6
|
||||||
|
org.jetbrains.dokka:dokka-core:1.4.32
|
||||||
org.jetbrains.intellij.deps:trove4j:1.0.20181211
|
org.jetbrains.intellij.deps:trove4j:1.0.20181211
|
||||||
|
org.jetbrains.intellij.deps:trove4j:1.0.20200330
|
||||||
org.jetbrains.kotlinx:kotlinx-coroutines-android:1.5.2
|
org.jetbrains.kotlinx:kotlinx-coroutines-android:1.5.2
|
||||||
|
org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.4.1
|
||||||
|
org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.5.0
|
||||||
org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.5.2
|
org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.5.2
|
||||||
org.jetbrains.kotlinx:kotlinx-coroutines-core:1.1.1
|
org.jetbrains.kotlinx:kotlinx-coroutines-core:1.4.1
|
||||||
org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.8
|
org.jetbrains.kotlin:kotlin-android-extensions-runtime:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-android-extensions-runtime:1.4.31
|
org.jetbrains.kotlin:kotlin-android-extensions:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-android-extensions:1.3.50
|
org.jetbrains.kotlin:kotlin-annotations-jvm:1.3.72
|
||||||
org.jetbrains.kotlin:kotlin-android-extensions:1.4.31
|
org.jetbrains.kotlin:kotlin-annotation-processing-gradle:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-annotation-processing-gradle:1.3.50
|
org.jetbrains.kotlin:kotlin-build-common:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-annotation-processing-gradle:1.4.31
|
org.jetbrains.kotlin:kotlin-compiler-embeddable:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-build-common:1.3.50
|
org.jetbrains.kotlin:kotlin-compiler-runner:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-build-common:1.4.31
|
org.jetbrains.kotlin:kotlin-daemon-client:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-compiler-embeddable:1.3.50
|
org.jetbrains.kotlin:kotlin-daemon-embeddable:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-compiler-embeddable:1.4.31
|
org.jetbrains.kotlin:kotlin-gradle-plugin-api:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-compiler-runner:1.3.50
|
org.jetbrains.kotlin:kotlin-gradle-plugin-model:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-compiler-runner:1.4.31
|
org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-daemon-client:1.3.50
|
org.jetbrains.kotlin:kotlin-klib-commonizer-api:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-daemon-client:1.4.31
|
org.jetbrains.kotlin:kotlin-klib-commonizer-embeddable:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-daemon-embeddable:1.3.50
|
org.jetbrains.kotlin:kotlin-native-utils:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-daemon-embeddable:1.4.31
|
org.jetbrains.kotlin:kotlin-project-model:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-gradle-plugin-api:1.3.50
|
|
||||||
org.jetbrains.kotlin:kotlin-gradle-plugin-api:1.4.31
|
|
||||||
org.jetbrains.kotlin:kotlin-gradle-plugin-model:1.3.50
|
|
||||||
org.jetbrains.kotlin:kotlin-gradle-plugin-model:1.4.31
|
|
||||||
org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.50
|
|
||||||
org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.31
|
|
||||||
org.jetbrains.kotlin:kotlin-klib-commonizer-embeddable:1.4.31
|
|
||||||
org.jetbrains.kotlin:kotlin-native-utils:1.3.50
|
|
||||||
org.jetbrains.kotlin:kotlin-reflect:1.1.3-2
|
org.jetbrains.kotlin:kotlin-reflect:1.1.3-2
|
||||||
org.jetbrains.kotlin:kotlin-reflect:1.2.0
|
org.jetbrains.kotlin:kotlin-reflect:1.2.0
|
||||||
org.jetbrains.kotlin:kotlin-reflect:1.3.20
|
org.jetbrains.kotlin:kotlin-reflect:1.3.20
|
||||||
org.jetbrains.kotlin:kotlin-reflect:1.3.50
|
org.jetbrains.kotlin:kotlin-reflect:1.3.50
|
||||||
org.jetbrains.kotlin:kotlin-reflect:1.4.31
|
org.jetbrains.kotlin:kotlin-reflect:1.3.72
|
||||||
org.jetbrains.kotlin:kotlin-scripting-common:1.3.50
|
org.jetbrains.kotlin:kotlin-reflect:1.5.31
|
||||||
org.jetbrains.kotlin:kotlin-scripting-common:1.4.31
|
org.jetbrains.kotlin:kotlin-reflect:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-scripting-compiler-embeddable:1.3.50
|
org.jetbrains.kotlin:kotlin-scripting-common:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-scripting-compiler-embeddable:1.4.31
|
org.jetbrains.kotlin:kotlin-scripting-compiler-embeddable:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-scripting-compiler-impl-embeddable:1.3.50
|
org.jetbrains.kotlin:kotlin-scripting-compiler-impl-embeddable:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-scripting-compiler-impl-embeddable:1.4.31
|
org.jetbrains.kotlin:kotlin-scripting-jvm:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-scripting-jvm:1.3.50
|
org.jetbrains.kotlin:kotlin-script-runtime:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-scripting-jvm:1.4.31
|
|
||||||
org.jetbrains.kotlin:kotlin-script-runtime:1.3.50
|
|
||||||
org.jetbrains.kotlin:kotlin-script-runtime:1.4.31
|
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-common:1.2.71
|
org.jetbrains.kotlin:kotlin-stdlib-common:1.2.71
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-common:1.3.20
|
org.jetbrains.kotlin:kotlin-stdlib-common:1.3.20
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-common:1.3.50
|
org.jetbrains.kotlin:kotlin-stdlib-common:1.3.50
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-common:1.4.31
|
org.jetbrains.kotlin:kotlin-stdlib-common:1.3.72
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-common:1.5.10
|
org.jetbrains.kotlin:kotlin-stdlib-common:1.5.31
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-common:1.5.30
|
org.jetbrains.kotlin:kotlin-stdlib-common:1.6.10
|
||||||
|
org.jetbrains.kotlin:kotlin-stdlib-common:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-common:1.6.21
|
org.jetbrains.kotlin:kotlin-stdlib-common:1.6.21
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.2.71
|
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.2.71
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.3.20
|
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.3.20
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.3.50
|
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.3.50
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.4.31
|
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.3.72
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.5.30
|
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.5.31
|
||||||
|
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.6.10
|
||||||
|
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.2.71
|
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.2.71
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.3.20
|
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.3.20
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.3.50
|
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.3.50
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.5.30
|
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.3.72
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-jre7:1.2.0
|
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.5.31
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-jre8:1.2.0
|
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.10
|
||||||
|
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-stdlib:1.1.3-2
|
org.jetbrains.kotlin:kotlin-stdlib:1.1.3-2
|
||||||
org.jetbrains.kotlin:kotlin-stdlib:1.2.0
|
|
||||||
org.jetbrains.kotlin:kotlin-stdlib:1.2.71
|
org.jetbrains.kotlin:kotlin-stdlib:1.2.71
|
||||||
org.jetbrains.kotlin:kotlin-stdlib:1.3.20
|
org.jetbrains.kotlin:kotlin-stdlib:1.3.20
|
||||||
org.jetbrains.kotlin:kotlin-stdlib:1.3.50
|
org.jetbrains.kotlin:kotlin-stdlib:1.3.50
|
||||||
org.jetbrains.kotlin:kotlin-stdlib:1.4.31
|
org.jetbrains.kotlin:kotlin-stdlib:1.3.72
|
||||||
org.jetbrains.kotlin:kotlin-stdlib:1.5.10
|
org.jetbrains.kotlin:kotlin-stdlib:1.5.31
|
||||||
org.jetbrains.kotlin:kotlin-stdlib:1.5.30
|
org.jetbrains.kotlin:kotlin-stdlib:1.6.10
|
||||||
|
org.jetbrains.kotlin:kotlin-stdlib:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-stdlib:1.6.21
|
org.jetbrains.kotlin:kotlin-stdlib:1.6.21
|
||||||
org.jetbrains.kotlin:kotlin-util-io:1.3.50
|
org.jetbrains.kotlin:kotlin-tooling-metadata:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-util-io:1.4.31
|
org.jetbrains.kotlin:kotlin-util-io:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-util-klib:1.4.31
|
org.jetbrains.kotlin:kotlin-util-klib:1.6.20
|
||||||
org.jetbrains.trove4j:trove4j:20160824
|
org.jetbrains.trove4j:trove4j:20160824
|
||||||
org.jetbrains:annotations:13.0
|
org.jetbrains:annotations:13.0
|
||||||
|
org.jetbrains:markdown-jvm:0.2.1
|
||||||
|
org.jetbrains:markdown:0.2.1
|
||||||
|
org.json:json:20180813
|
||||||
|
org.jsoup:jsoup:1.13.1
|
||||||
org.jvnet.staxex:stax-ex:1.7.7
|
org.jvnet.staxex:stax-ex:1.7.7
|
||||||
|
org.jvnet.staxex:stax-ex:1.8
|
||||||
|
org.jvnet.staxex:stax-ex:1.8.1
|
||||||
org.ow2.asm:asm-analysis:5.0.3
|
org.ow2.asm:asm-analysis:5.0.3
|
||||||
org.ow2.asm:asm-analysis:5.1
|
org.ow2.asm:asm-analysis:5.1
|
||||||
org.ow2.asm:asm-analysis:6.0
|
org.ow2.asm:asm-analysis:6.0
|
||||||
|
org.ow2.asm:asm-analysis:7.0
|
||||||
|
org.ow2.asm:asm-analysis:9.1
|
||||||
org.ow2.asm:asm-commons:5.1
|
org.ow2.asm:asm-commons:5.1
|
||||||
org.ow2.asm:asm-commons:6.0
|
org.ow2.asm:asm-commons:6.0
|
||||||
|
org.ow2.asm:asm-commons:7.0
|
||||||
|
org.ow2.asm:asm-commons:9.1
|
||||||
org.ow2.asm:asm-debug-all:5.0.1
|
org.ow2.asm:asm-debug-all:5.0.1
|
||||||
org.ow2.asm:asm-tree:5.0.3
|
org.ow2.asm:asm-tree:5.0.3
|
||||||
org.ow2.asm:asm-tree:5.1
|
org.ow2.asm:asm-tree:5.1
|
||||||
org.ow2.asm:asm-tree:6.0
|
org.ow2.asm:asm-tree:6.0
|
||||||
|
org.ow2.asm:asm-tree:7.0
|
||||||
|
org.ow2.asm:asm-tree:9.1
|
||||||
org.ow2.asm:asm-util:5.1
|
org.ow2.asm:asm-util:5.1
|
||||||
org.ow2.asm:asm-util:6.0
|
org.ow2.asm:asm-util:6.0
|
||||||
|
org.ow2.asm:asm-util:7.0
|
||||||
|
org.ow2.asm:asm-util:9.1
|
||||||
org.ow2.asm:asm:5.0.3
|
org.ow2.asm:asm:5.0.3
|
||||||
org.ow2.asm:asm:5.1
|
org.ow2.asm:asm:5.1
|
||||||
org.ow2.asm:asm:6.0
|
org.ow2.asm:asm:6.0
|
||||||
|
org.ow2.asm:asm:7.0
|
||||||
|
org.ow2.asm:asm:9.1
|
||||||
|
org.slf4j:slf4j-api:1.7.30
|
||||||
|
org.tensorflow:tensorflow-lite-metadata:0.1.0-rc1
|
||||||
|
org.tensorflow:tensorflow-lite-metadata:0.1.0-rc2
|
||||||
|
xerces:xercesImpl:2.12.0
|
||||||
|
xml-apis:xml-apis:1.4.01
|
||||||
|
org.jetbrains.kotlin.jvm:org.jetbrains.kotlin.jvm.gradle.plugin:1.6.10
|
||||||
|
com.android.tools.lint:lint-gradle:30.2.2
|
||||||
|
com.android.tools.build:gradle:7.0.4
|
||||||
|
|||||||
@@ -83,6 +83,10 @@ fi
|
|||||||
# Run each stage in order
|
# Run each stage in order
|
||||||
gen_proj_list
|
gen_proj_list
|
||||||
gen_deps_list
|
gen_deps_list
|
||||||
|
# FIXME: Temporary fix for missing package.
|
||||||
|
echo 'org.jetbrains.kotlin.jvm:org.jetbrains.kotlin.jvm.gradle.plugin:1.6.10' >> "${DEPS_LIST}"
|
||||||
|
echo 'com.android.tools.lint:lint-gradle:30.2.2' >> "${DEPS_LIST}"
|
||||||
|
echo 'com.android.tools.build:gradle:7.0.4' >> "${DEPS_LIST}"
|
||||||
gen_deps_urls
|
gen_deps_urls
|
||||||
gen_deps_json
|
gen_deps_json
|
||||||
|
|
||||||
|
|||||||
@@ -26,20 +26,20 @@ function findPackage(line, regex) {
|
|||||||
# Lines after configuration name list packages
|
# Lines after configuration name list packages
|
||||||
for (getline line; line != ""; getline line) {
|
for (getline line; line != ""; getline line) {
|
||||||
# React Native is provided by node_modules
|
# React Native is provided by node_modules
|
||||||
if (line ~ "com.facebook.react:react-native") { continue }
|
if (line ~ "com.facebook.react:(react-native|hermes-engine)") { continue }
|
||||||
|
|
||||||
# Example: +--- org.jetbrains.kotlin:kotlin-stdlib:1.3.50
|
# Example: +--- org.jetbrains.kotlin:kotlin-stdlib:1.3.50
|
||||||
if (findPackage(line, "--- ([^:]+):([^:]+):([^ ]+)$")) {
|
if (findPackage(line, "--- ([^ :]+):([^ :]+):([^ :]+)$")) {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
# Example: +--- androidx.lifecycle:lifecycle-common:{strictly 2.0.0} -> 2.0.0 (c)
|
# Example: +--- androidx.lifecycle:lifecycle-common:{strictly 2.0.0} -> 2.0.0 (c)
|
||||||
if (findPackage(line, "--- ([^:]+):([^:]+):[^ ]+ -> ([^: ]+) ?(\\([*c]\\))?$")) {
|
if (findPackage(line, "--- ([^ :]+):([^ :]+):[^:]+ -> ([^ :]+) ?(\\([*c]\\))?$")) {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
# Example: +--- com.android.support:appcompat-v7:28.0.0 -> androidx.appcompat:appcompat:1.0.2
|
# Example: +--- com.android.support:appcompat-v7:28.0.0 -> androidx.appcompat:appcompat:1.0.2
|
||||||
if (findPackage(line, "--- [^:]+:[^:]+:[^ ]+ -> ([^:]+):([^:]+):([^ ]+)$")) {
|
if (findPackage(line, "--- [^ :]+:[^ :]+:[^ ]+ -> ([^ :]+):([^ :]+):([^ :]+)$")) {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -30,11 +30,12 @@ react-native-orientation-locker
|
|||||||
react-native-permissions
|
react-native-permissions
|
||||||
react-native-randombytes
|
react-native-randombytes
|
||||||
react-native-reanimated
|
react-native-reanimated
|
||||||
react-native-safe-area-context
|
|
||||||
react-native-shake
|
react-native-shake
|
||||||
react-native-share
|
react-native-share
|
||||||
|
react-native-static-safe-area-insets
|
||||||
react-native-status
|
react-native-status
|
||||||
react-native-status-keycard
|
react-native-status-keycard
|
||||||
react-native-svg
|
react-native-svg
|
||||||
react-native-touch-id
|
react-native-touch-id
|
||||||
|
react-native-transparent-video
|
||||||
react-native-webview
|
react-native-webview
|
||||||
|
|||||||
@@ -14,12 +14,12 @@ declare -a REPOS=(
|
|||||||
"https://jitpack.io"
|
"https://jitpack.io"
|
||||||
)
|
)
|
||||||
|
|
||||||
function nix_fetch() {
|
function nix_prefetch() {
|
||||||
nix-prefetch-url --print-path --type sha256 "${1}" 2>/dev/null
|
nix store prefetch-file --json "${1}" 2>/dev/null
|
||||||
}
|
}
|
||||||
|
|
||||||
function get_nix_path() { echo "${1}" | tail -n1; }
|
function get_nix_path() { echo "${1}" | jq -r .storePath; }
|
||||||
function get_nix_sha() { echo "${1}" | head -n1; }
|
function get_nix_sha() { echo "${1}" | jq -r .hash; }
|
||||||
function get_sha1() { sha1sum "${1}" | cut -d' ' -f1; }
|
function get_sha1() { sha1sum "${1}" | cut -d' ' -f1; }
|
||||||
|
|
||||||
# Assumes REPOS from repos.sh is available
|
# Assumes REPOS from repos.sh is available
|
||||||
@@ -44,9 +44,9 @@ function fetch_and_template_file() {
|
|||||||
local OBJ_URL OBJ_NIX_FETCH_OUT OBJ_NAME OBJ_PATH
|
local OBJ_URL OBJ_NIX_FETCH_OUT OBJ_NAME OBJ_PATH
|
||||||
|
|
||||||
OBJ_URL="${REPO_URL}/${PKG_PATH}/${FILENAME}"
|
OBJ_URL="${REPO_URL}/${PKG_PATH}/${FILENAME}"
|
||||||
if ! OBJ_NIX_FETCH_OUT=$(nix_fetch "${OBJ_URL}"); then
|
if ! OBJ_NIX_FETCH_OUT=$(nix_prefetch "${OBJ_URL}"); then
|
||||||
echo " ! Failed to fetch: ${OBJ_URL}" >&2
|
echo " ! Failed to fetch: ${OBJ_URL}" >&2
|
||||||
exit 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
OBJ_NAME="${FILENAME}"
|
OBJ_NAME="${FILENAME}"
|
||||||
@@ -58,6 +58,10 @@ function fetch_and_template_file() {
|
|||||||
}"
|
}"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function fetch_and_template_file_no_fail() {
|
||||||
|
fetch_and_template_file "${1}" 2>/dev/null || true
|
||||||
|
}
|
||||||
|
|
||||||
if [[ -z "${1}" ]]; then
|
if [[ -z "${1}" ]]; then
|
||||||
echo "Required POM URL argument not given!" >&2
|
echo "Required POM URL argument not given!" >&2
|
||||||
exit 1
|
exit 1
|
||||||
@@ -81,7 +85,7 @@ PKG_PATH="${PKG_URL_NO_EXT#"${REPO_URL}/"}"
|
|||||||
PKG_PATH="$(dirname "${PKG_PATH}")"
|
PKG_PATH="$(dirname "${PKG_PATH}")"
|
||||||
|
|
||||||
# Both JARs and AARs have a POM
|
# Both JARs and AARs have a POM
|
||||||
POM_NIX_FETCH_OUT=$(nix_fetch "${PKG_URL_NO_EXT}.pom")
|
POM_NIX_FETCH_OUT=$(nix_prefetch "${PKG_URL_NO_EXT}.pom")
|
||||||
POM_PATH=$(get_nix_path "${POM_NIX_FETCH_OUT}")
|
POM_PATH=$(get_nix_path "${POM_NIX_FETCH_OUT}")
|
||||||
POM_NAME=$(basename "${PKG_URL_NO_EXT}.pom")
|
POM_NAME=$(basename "${PKG_URL_NO_EXT}.pom")
|
||||||
if [[ -z "${POM_PATH}" ]]; then
|
if [[ -z "${POM_PATH}" ]]; then
|
||||||
@@ -111,7 +115,7 @@ echo -ne "
|
|||||||
}"
|
}"
|
||||||
|
|
||||||
# Some deps are just POMs, in which case there is no JAR to fetch.
|
# Some deps are just POMs, in which case there is no JAR to fetch.
|
||||||
[[ "${OBJ_TYPE}" == "" ]] && fetch_and_template_file "${PKG_NAME}.jar"
|
[[ "${OBJ_TYPE}" == "" ]] && fetch_and_template_file_no_fail "${PKG_NAME}.jar"
|
||||||
[[ "${OBJ_TYPE}" == "jar" ]] && fetch_and_template_file "${PKG_NAME}.jar"
|
[[ "${OBJ_TYPE}" == "jar" ]] && fetch_and_template_file "${PKG_NAME}.jar"
|
||||||
[[ "${OBJ_TYPE}" == "bundle" ]] && fetch_and_template_file "${PKG_NAME}.jar"
|
[[ "${OBJ_TYPE}" == "bundle" ]] && fetch_and_template_file "${PKG_NAME}.jar"
|
||||||
[[ "${OBJ_TYPE}" =~ aar* ]] && fetch_and_template_file "${PKG_NAME}.aar"
|
[[ "${OBJ_TYPE}" =~ aar* ]] && fetch_and_template_file "${PKG_NAME}.aar"
|
||||||
|
|||||||
@@ -12,6 +12,8 @@ stdenv.mkDerivation {
|
|||||||
"patchBuildIdPhase"
|
"patchBuildIdPhase"
|
||||||
"patchHermesPhase"
|
"patchHermesPhase"
|
||||||
"patchJavaPhase"
|
"patchJavaPhase"
|
||||||
|
"patchReactNativePhase"
|
||||||
|
"patchPodPhase"
|
||||||
"installPhase"
|
"installPhase"
|
||||||
];
|
];
|
||||||
|
|
||||||
@@ -66,11 +68,36 @@ stdenv.mkDerivation {
|
|||||||
patchJavaPhase = ''
|
patchJavaPhase = ''
|
||||||
${nodejs}/bin/node ./node_modules/jetifier/bin/jetify
|
${nodejs}/bin/node ./node_modules/jetifier/bin/jetify
|
||||||
'';
|
'';
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
mkdir -p $out
|
mkdir -p $out
|
||||||
cp -R node_modules $out/
|
cp -R node_modules $out/
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
# Fix glog configuration issue in react-native:
|
||||||
|
# https://github.com/facebook/react-native/issues/33966
|
||||||
|
# TODO: remove this patch when we reach react-native 0.71.4
|
||||||
|
patchReactNativePhase = ''
|
||||||
|
substituteInPlace ./node_modules/react-native/scripts/ios-configure-glog.sh --replace \
|
||||||
|
'sed -i' \
|
||||||
|
'sed -i.bak -e'
|
||||||
|
substituteInPlace ./node_modules/react-native/scripts/ios-configure-glog.sh --replace \
|
||||||
|
'src/glog/logging.h.in' \
|
||||||
|
'src/glog/logging.h.in && rm src/glog/logging.h.in.bak'
|
||||||
|
substituteInPlace ./node_modules/react-native/scripts/ios-configure-glog.sh --replace \
|
||||||
|
'src/config.h.in' \
|
||||||
|
'src/config.h.in && rm src/config.h.in.bak'
|
||||||
|
'';
|
||||||
|
|
||||||
|
# Fix pod issue in react-native 0.67.5:
|
||||||
|
# https://stackoverflow.com/questions/71248072/no-member-named-cancelbuttontintcolor-in-jsnativeactionsheetmanagerspecsh
|
||||||
|
# TODO: remove this patch when maybe after 0.68.5
|
||||||
|
patchPodPhase = ''
|
||||||
|
substituteInPlace ./node_modules/react-native/React/CoreModules/RCTActionSheetManager.mm --replace \
|
||||||
|
'[RCTConvert UIColor:options.cancelButtonTintColor() ? @(*options.cancelButtonTintColor()) : nil];' \
|
||||||
|
'[RCTConvert UIColor:options.tintColor() ? @(*options.tintColor()) : nil];'
|
||||||
|
'';
|
||||||
|
|
||||||
# The ELF types are incompatible with the host platform, so let's not even try
|
# The ELF types are incompatible with the host platform, so let's not even try
|
||||||
# TODO: Use Android NDK to strip binaries manually
|
# TODO: Use Android NDK to strip binaries manually
|
||||||
dontPatchELF = true;
|
dontPatchELF = true;
|
||||||
|
|||||||
@@ -1,14 +1,10 @@
|
|||||||
{ pkgs, deps, callPackage, mkShell
|
{ pkgs, deps, callPackage, mkShell
|
||||||
, status-go, androidPkgs, androidShell }:
|
, jsbundle, status-go, androidPkgs, androidShell }:
|
||||||
|
|
||||||
let
|
rec {
|
||||||
# Import a jsbundle compiled out of clojure codebase
|
release = callPackage ./release.nix {
|
||||||
jsbundle = callPackage ./jsbundle { };
|
inherit jsbundle status-go;
|
||||||
|
};
|
||||||
release = callPackage ./release.nix { inherit jsbundle status-go; };
|
|
||||||
in {
|
|
||||||
# TARGETS
|
|
||||||
inherit release jsbundle;
|
|
||||||
|
|
||||||
shell = mkShell {
|
shell = mkShell {
|
||||||
buildInputs = with pkgs; [
|
buildInputs = with pkgs; [
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ in stdenv.mkDerivation rec {
|
|||||||
root = path;
|
root = path;
|
||||||
include = [
|
include = [
|
||||||
"package.json" "yarn.lock" "metro.config.js" "babel.config.js"
|
"package.json" "yarn.lock" "metro.config.js" "babel.config.js"
|
||||||
"resources/.*" "translations/.*" "src/js/.*"
|
"resources/.*" "translations/.*" "src/js/.*" "index.js"
|
||||||
"modules/react-native-status/android.*" "android/.*"
|
"modules/react-native-status/android.*" "android/.*"
|
||||||
envFileName "VERSION" "status-go-version.json" "react-native.config.js"
|
envFileName "VERSION" "status-go-version.json" "react-native.config.js"
|
||||||
];
|
];
|
||||||
@@ -94,8 +94,10 @@ in stdenv.mkDerivation rec {
|
|||||||
# Export all vars from .env file
|
# Export all vars from .env file
|
||||||
export $(cut -d= -f1 .env)
|
export $(cut -d= -f1 .env)
|
||||||
|
|
||||||
# Copy index.js and app/ input files
|
# Symlink React Native entrypoint.
|
||||||
cp -ra --no-preserve=ownership ${builtJsBundle}/* ./
|
cp -Lr ${builtJsBundle} ./result
|
||||||
|
pwd
|
||||||
|
find -L result
|
||||||
|
|
||||||
# Copy android/ directory
|
# Copy android/ directory
|
||||||
mkdir -p ./android/build
|
mkdir -p ./android/build
|
||||||
@@ -132,8 +134,11 @@ in stdenv.mkDerivation rec {
|
|||||||
${adhocEnvVars} ${pkgs.gradle}/bin/gradle \
|
${adhocEnvVars} ${pkgs.gradle}/bin/gradle \
|
||||||
${toString gradleOpts} \
|
${toString gradleOpts} \
|
||||||
--console=plain \
|
--console=plain \
|
||||||
--offline --stacktrace \
|
--offline \
|
||||||
-Dorg.gradle.daemon=false \
|
--no-daemon \
|
||||||
|
--no-scan \
|
||||||
|
--no-watch-fs \
|
||||||
|
--no-build-cache \
|
||||||
-Dmaven.repo.local='${deps.gradle}' \
|
-Dmaven.repo.local='${deps.gradle}' \
|
||||||
-PversionCode=${toString buildNumber} \
|
-PversionCode=${toString buildNumber} \
|
||||||
-PcommitHash=${commitHash} \
|
-PcommitHash=${commitHash} \
|
||||||
@@ -145,7 +150,7 @@ in stdenv.mkDerivation rec {
|
|||||||
checkPhase = ''
|
checkPhase = ''
|
||||||
ls ${apksPath}/*.apk \
|
ls ${apksPath}/*.apk \
|
||||||
| xargs -n1 ${pkgs.unzip}/bin/unzip -qql \
|
| xargs -n1 ${pkgs.unzip}/bin/unzip -qql \
|
||||||
| grep 'assets/index.android.bundle'
|
| grep 'index.android.bundle'
|
||||||
'';
|
'';
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
mkdir -p $out
|
mkdir -p $out
|
||||||
|
|||||||
@@ -3,7 +3,10 @@
|
|||||||
let
|
let
|
||||||
fastlane = callPackage ./fastlane { };
|
fastlane = callPackage ./fastlane { };
|
||||||
|
|
||||||
|
jsbundle = callPackage ./jsbundle { };
|
||||||
|
|
||||||
android = callPackage ./android {
|
android = callPackage ./android {
|
||||||
|
inherit jsbundle;
|
||||||
status-go = status-go.mobile.android;
|
status-go = status-go.mobile.android;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -26,5 +29,5 @@ in {
|
|||||||
};
|
};
|
||||||
|
|
||||||
# TARGETS
|
# TARGETS
|
||||||
inherit android ios fastlane;
|
inherit android ios fastlane jsbundle;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
{ callPackage, lib, mkShell, pkgs
|
{ callPackage, lib, mkShell, pkgs, stdenv
|
||||||
, status-go, fastlane }:
|
, status-go, fastlane }:
|
||||||
|
|
||||||
|
assert lib.assertMsg stdenv.isDarwin
|
||||||
|
"iOS development shell supported only on OSX.";
|
||||||
|
|
||||||
let
|
let
|
||||||
inherit (lib) catAttrs unique;
|
inherit (lib) catAttrs unique;
|
||||||
|
|
||||||
@@ -17,6 +20,7 @@ in {
|
|||||||
buildInputs = with pkgs; [
|
buildInputs = with pkgs; [
|
||||||
xcodeWrapper watchman procps
|
xcodeWrapper watchman procps
|
||||||
flock # used in nix/scripts/node_modules.sh
|
flock # used in nix/scripts/node_modules.sh
|
||||||
|
ios-deploy # used in 'make run-ios-device'
|
||||||
];
|
];
|
||||||
|
|
||||||
# WARNING: Executes shellHook in reverse order.
|
# WARNING: Executes shellHook in reverse order.
|
||||||
|
|||||||
@@ -1,15 +1,15 @@
|
|||||||
{ mkShell, nodejs, deps }:
|
{ mkShell, nodejs, deps }:
|
||||||
|
|
||||||
mkShell {
|
mkShell {
|
||||||
# Check if node modules changed and if so install them.
|
|
||||||
shellHook = ''
|
shellHook = ''
|
||||||
# Fix for ERR_OSSL_EVP_UNSUPPORTED error.
|
# Fix for ERR_OSSL_EVP_UNSUPPORTED error.
|
||||||
export NODE_OPTIONS="--openssl-legacy-provider";
|
export NODE_OPTIONS="--openssl-legacy-provider";
|
||||||
|
# Same fix but for Xcode React Native script.
|
||||||
|
export NODE_ARGS="--openssl-legacy-provider --max-old-space-size=16384";
|
||||||
# Fix Xcode using system Node.js version.
|
# Fix Xcode using system Node.js version.
|
||||||
export NODE_BINARY="${nodejs}/bin/node";
|
export NODE_BINARY="${nodejs}/bin/node";
|
||||||
|
|
||||||
export STATUS_MOBILE_HOME=$(git rev-parse --show-toplevel)
|
# Check if node modules changed and if so install them.
|
||||||
"$STATUS_MOBILE_HOME/nix/scripts/node_modules.sh" ${deps.nodejs-patched}
|
"$STATUS_MOBILE_HOME/nix/scripts/node_modules.sh" ${deps.nodejs-patched}
|
||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,9 +8,9 @@
|
|||||||
{ secretsFile ? "" }:
|
{ secretsFile ? "" }:
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "status-mobile-build-jsbundle-android";
|
name = "status-mobile-jsbundle";
|
||||||
src =
|
src =
|
||||||
let path = ./../../../..;
|
let path = ./../../..;
|
||||||
# We use builtins.path so that we can name the resulting derivation,
|
# We use builtins.path so that we can name the resulting derivation,
|
||||||
# otherwise the name would be taken from the checkout directory,
|
# otherwise the name would be taken from the checkout directory,
|
||||||
# which is outside of our control inherit path;
|
# which is outside of our control inherit path;
|
||||||
@@ -25,7 +25,7 @@ stdenv.mkDerivation {
|
|||||||
ignoreVCS = false;
|
ignoreVCS = false;
|
||||||
include = [
|
include = [
|
||||||
"VERSION" "BUILD_NUMBER" "scripts/version/.*"
|
"VERSION" "BUILD_NUMBER" "scripts/version/.*"
|
||||||
"src/.*" "shadow-cljs.edn" "index.js"
|
"src/.*" "shadow-cljs.edn"
|
||||||
# I want to avoid including the whole .git directory
|
# I want to avoid including the whole .git directory
|
||||||
".git/HEAD" ".git/objects" ".git/refs/heads/.*"
|
".git/HEAD" ".git/objects" ".git/refs/heads/.*"
|
||||||
# shadow-cljs expects these for deps resolution
|
# shadow-cljs expects these for deps resolution
|
||||||
@@ -77,6 +77,6 @@ stdenv.mkDerivation {
|
|||||||
'';
|
'';
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
mkdir -p $out
|
mkdir -p $out
|
||||||
cp -r index.js app $out/
|
cp -r result/* $out/
|
||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
@@ -44,18 +44,30 @@ in {
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# Fix for missing libarclite_macosx.a in Xcode 14.3.
|
||||||
|
# https://github.com/ios-control/ios-deploy/issues/580
|
||||||
|
ios-deploy = super.darwin.ios-deploy.overrideAttrs (old: rec {
|
||||||
|
version = "1.12.2";
|
||||||
|
src = super.fetchFromGitHub {
|
||||||
|
owner = "ios-control";
|
||||||
|
repo = "ios-deploy";
|
||||||
|
rev = version;
|
||||||
|
sha256 = "sha256-TVGC+f+1ow3b93CK3PhIL70le5SZxxb2ug5OkIg8XCA";
|
||||||
|
};
|
||||||
|
});
|
||||||
|
|
||||||
# Package version adjustments
|
# Package version adjustments
|
||||||
gradle = super.gradle_5;
|
gradle = super.gradle_7;
|
||||||
nodejs = super.nodejs-16_x;
|
nodejs = super.nodejs-18_x;
|
||||||
yarn = super.yarn.override { nodejs = super.nodejs-16_x; };
|
yarn = super.yarn.override { nodejs = super.nodejs-18_x; };
|
||||||
openjdk = super.openjdk8_headless;
|
openjdk = super.openjdk11_headless;
|
||||||
xcodeWrapper = callPackage ./pkgs/xcodeenv/compose-xcodewrapper.nix { } {
|
xcodeWrapper = callPackage ./pkgs/xcodeenv/compose-xcodewrapper.nix { } {
|
||||||
version = "13.3";
|
version = "14.0";
|
||||||
allowHigher = true;
|
allowHigher = true;
|
||||||
};
|
};
|
||||||
go = super.go_1_18;
|
go = super.go_1_19;
|
||||||
buildGoPackage = super.buildGo118Package;
|
buildGoPackage = super.buildGo119Package;
|
||||||
buildGoModule = super.buildGo118Module;
|
buildGoModule = super.buildGo119Module;
|
||||||
gomobile = (super.gomobile.overrideAttrs (old: {
|
gomobile = (super.gomobile.overrideAttrs (old: {
|
||||||
patches = self.fetchurl { # https://github.com/golang/mobile/pull/84
|
patches = self.fetchurl { # https://github.com/golang/mobile/pull/84
|
||||||
url = "https://github.com/golang/mobile/commit/f20e966e05b8f7e06bed500fa0da81cf6ebca307.patch";
|
url = "https://github.com/golang/mobile/commit/f20e966e05b8f7e06bed500fa0da81cf6ebca307.patch";
|
||||||
|
|||||||
@@ -11,10 +11,11 @@ let
|
|||||||
# We follow the master branch of official nixpkgs.
|
# We follow the master branch of official nixpkgs.
|
||||||
nixpkgsSrc = fetchFromGitHub {
|
nixpkgsSrc = fetchFromGitHub {
|
||||||
name = "nixpkgs-source";
|
name = "nixpkgs-source";
|
||||||
owner = "status-im"; # FIXME: Fork used to get Cocoapods 1.12.0.
|
# FIXME: Fork used to get Cocoapods 1.12.0 and apksigner macOS build.
|
||||||
|
owner = "status-im";
|
||||||
repo = "nixpkgs";
|
repo = "nixpkgs";
|
||||||
rev = "b9b2ed705edc00003d47625950602136be3e1ed5";
|
rev = "d0c06fa3d3982a91aa01bd63ed84020cbde3d3ab";
|
||||||
sha256 = "sha256-F0qOawdKx7kgiGqwVikYIawL2taJ1XfcgHy0Wn0mho8=";
|
sha256 = "sha256-8blvuUHnuf0hFr/PpBxVohJp5CaGXIXhgJlFN/cv7us=";
|
||||||
# To get the compressed Nix sha256, use:
|
# To get the compressed Nix sha256, use:
|
||||||
# nix-prefetch-url --unpack https://github.com/${ORG}/nixpkgs/archive/${REV}.tar.gz
|
# nix-prefetch-url --unpack https://github.com/${ORG}/nixpkgs/archive/${REV}.tar.gz
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -5,12 +5,12 @@
|
|||||||
{ lib, stdenv, pkgs, fetchurl }:
|
{ lib, stdenv, pkgs, fetchurl }:
|
||||||
|
|
||||||
let
|
let
|
||||||
inherit (lib) getAttr optionals;
|
inherit (lib) getAttr;
|
||||||
inherit (stdenv) isLinux isDarwin;
|
inherit (stdenv) isLinux isDarwin;
|
||||||
|
|
||||||
pname = "aapt2";
|
pname = "aapt2";
|
||||||
# Warning: This must be the same as gradlePluginVersion android/gradle.properties
|
# Warning: This must be the same as gradlePluginVersion android/gradle.properties
|
||||||
version = "3.5.4-6197926";
|
version = "7.2.2-7984345";
|
||||||
|
|
||||||
pkgPath = "com/android/tools/build/aapt2";
|
pkgPath = "com/android/tools/build/aapt2";
|
||||||
repoUrl = "https://dl.google.com/dl/android/maven2";
|
repoUrl = "https://dl.google.com/dl/android/maven2";
|
||||||
@@ -29,20 +29,20 @@ let
|
|||||||
jar = fetchurl {
|
jar = fetchurl {
|
||||||
url = "${repoUrl}/${pkgPath}/${version}/${filenames.jar}";
|
url = "${repoUrl}/${pkgPath}/${version}/${filenames.jar}";
|
||||||
sha256 = getAttr platform {
|
sha256 = getAttr platform {
|
||||||
linux = "0hrlbxdn6bkl6qr9y599mjs0dy72q0352j30vpkza4lbq5b7rj9v";
|
linux = "sha256-BKtK5f7lxp0YdQU4AFGL933vjEAykQ1RiKpDwfc32oI=";
|
||||||
osx = "0hhvxyr0jxci01qqkcrn80h4qs3b43lqxpbss0xvrkd1nwdilmnb";
|
osx = "sha256-OORgWnGQS0GwqZrSg8sFQb4FM23hrYHwmarcYd8EO/0=";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
sha = fetchurl {
|
sha = fetchurl {
|
||||||
url = "${repoUrl}/${pkgPath}/${version}/${filenames.jar}.sha1";
|
url = "${repoUrl}/${pkgPath}/${version}/${filenames.jar}.sha1";
|
||||||
sha256 = getAttr platform {
|
sha256 = getAttr platform {
|
||||||
linux = "0ipmkl911hf17g2pb39jjkwrbb07p0cd1qd10p2fl8d1icxf63sz";
|
linux = "sha256-4F4REWQLj8hdnh1tIwRVgdWJjUBhvvINP56nIscwePA=";
|
||||||
osx = "156jbw4xm43902c0cqrag9l1s3fg6i1irsdz8m8659i9530ywwpx";
|
osx = "sha256-n0jFUphzlFnNacolbXoNmNHs/hXfktVpYRlJ1JW9ukU=";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
pom = fetchurl {
|
pom = fetchurl {
|
||||||
url = "${repoUrl}/${pkgPath}/${version}/${filenames.pom}";
|
url = "${repoUrl}/${pkgPath}/${version}/${filenames.pom}";
|
||||||
sha256 = "00ra1xz4x1sfcf0z6x9in3b1flpyvxjbhpvhacc32r8b58nfvqzp";
|
sha256 = "sha256-XWEn9Zvxv0hgYU2yUSlZ4OiguZy1bz+Gh0wRrm4d9GQ=";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -50,8 +50,8 @@ in stdenv.mkDerivation {
|
|||||||
inherit pname version;
|
inherit pname version;
|
||||||
|
|
||||||
srcs = with urls; [ jar sha pom ];
|
srcs = with urls; [ jar sha pom ];
|
||||||
phases = [ "unpackPhase" ]
|
# patchelf is Linux specific and won't work on Darwin Platform
|
||||||
++ optionals isLinux [ "patchPhase" ]; # OSX binaries don't need patchelf
|
phases = if isDarwin then ["unpackPhase"] else ["unpackPhase" "patchPhase" "installPhase"];
|
||||||
buildInputs = with pkgs; [ zip unzip patchelf ];
|
buildInputs = with pkgs; [ zip unzip patchelf ];
|
||||||
|
|
||||||
unpackPhase = ''
|
unpackPhase = ''
|
||||||
@@ -60,27 +60,23 @@ in stdenv.mkDerivation {
|
|||||||
filename=$(stripHash $src)
|
filename=$(stripHash $src)
|
||||||
cp $src $out/$filename
|
cp $src $out/$filename
|
||||||
done
|
done
|
||||||
|
tmpDir=$(mktemp -d)
|
||||||
|
unzip $out/${filenames.jar} -d $tmpDir
|
||||||
'';
|
'';
|
||||||
|
|
||||||
# On Linux, we need to patch the interpreter in Java packages
|
# On Linux, we need to patch the interpreter in Java packages
|
||||||
# that contain native executables to use Nix's interpreter instead.
|
# that contain native executables to use Nix's interpreter instead.
|
||||||
patchPhase = ''
|
patchPhase = ''
|
||||||
# We need an stdenv with a compiler
|
|
||||||
[[ -n "$NIX_CC" ]] || exit 1
|
|
||||||
|
|
||||||
# Patch executables from maven dependency to use Nix's interpreter
|
# Patch executables from maven dependency to use Nix's interpreter
|
||||||
tmpDir=$(mktemp -d)
|
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" $tmpDir/aapt2
|
||||||
unzip $out/${filenames.jar} -d $tmpDir
|
'';
|
||||||
for exe in `find $tmpDir/ -type f -executable`; do
|
|
||||||
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" $exe
|
|
||||||
done
|
|
||||||
|
|
||||||
# Rebuild the .jar file with patched binaries
|
# Rebuild the .jar file with patched binaries
|
||||||
|
installPhase = ''
|
||||||
pushd $tmpDir > /dev/null
|
pushd $tmpDir > /dev/null
|
||||||
chmod u+w $out/${filenames.jar}
|
chmod u+w $out/${filenames.jar}
|
||||||
zip -fr $out/${filenames.jar}
|
zip -fr $out/${filenames.jar}
|
||||||
chmod $out/${filenames.jar} --reference=$out/${filenames.jar}.sha1
|
chmod $out/${filenames.jar} --reference=$out/${filenames.jar}.sha1
|
||||||
popd > /dev/null
|
popd > /dev/null
|
||||||
rm -rf $tmpDir
|
|
||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,10 +1,8 @@
|
|||||||
{ mkShell, openjdk, androidPkgs }:
|
{ mkShell, androidPkgs }:
|
||||||
|
|
||||||
mkShell {
|
mkShell {
|
||||||
name = "android-sdk-shell";
|
name = "android-sdk-shell";
|
||||||
shellHook = ''
|
shellHook = ''
|
||||||
export JAVA_HOME="${openjdk}"
|
|
||||||
|
|
||||||
export ANDROID_HOME="${androidPkgs.sdk}"
|
export ANDROID_HOME="${androidPkgs.sdk}"
|
||||||
export ANDROID_NDK_ROOT="${androidPkgs.ndk}"
|
export ANDROID_NDK_ROOT="${androidPkgs.ndk}"
|
||||||
export ANDROID_SDK_ROOT="$ANDROID_HOME"
|
export ANDROID_SDK_ROOT="$ANDROID_HOME"
|
||||||
|
|||||||
@@ -8,6 +8,9 @@ assert stdenv.isDarwin;
|
|||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "xcode-wrapper-${version}${if allowHigher then "-plus" else ""}";
|
name = "xcode-wrapper-${version}${if allowHigher then "-plus" else ""}";
|
||||||
|
# Fix 'xcodebuild: Operation not permitted' when 'sandbox=relaxed' is used.
|
||||||
|
# https://github.com/NixOS/nixpkgs/pull/228696
|
||||||
|
__noChroot = stdenv.isDarwin;
|
||||||
buildCommand = ''
|
buildCommand = ''
|
||||||
mkdir -p $out/bin
|
mkdir -p $out/bin
|
||||||
cd $out/bin
|
cd $out/bin
|
||||||
|
|||||||
@@ -12,22 +12,19 @@ let
|
|||||||
# the default shell with most commonly used tools
|
# the default shell with most commonly used tools
|
||||||
default = callPackage ./shell.nix { };
|
default = callPackage ./shell.nix { };
|
||||||
|
|
||||||
# Combines with many other shells
|
|
||||||
nodejs-sh = targets.mobile.ios.nodejs-sh;
|
|
||||||
|
|
||||||
# An attrset for easier merging with default shell
|
# An attrset for easier merging with default shell
|
||||||
shells = {
|
shells = {
|
||||||
inherit default;
|
inherit default;
|
||||||
|
|
||||||
nodejs = nodejs-sh;
|
|
||||||
|
|
||||||
# for calling clojure targets in CI or Makefile
|
# for calling clojure targets in CI or Makefile
|
||||||
clojure = mkShell {
|
clojure = mkShell {
|
||||||
buildInputs = with pkgs; [ clojure flock maven openjdk ];
|
buildInputs = with pkgs; [ clojure flock maven openjdk ];
|
||||||
inputsFrom = [ nodejs-sh ];
|
|
||||||
# CLASSPATH from clojure deps with 'src' appended to find local sources.
|
# CLASSPATH from clojure deps with 'src' appended to find local sources.
|
||||||
shellHook = with pkgs; ''
|
shellHook = with pkgs; ''
|
||||||
export CLASS_PATH="$(find ${deps.clojure} -iname '*.jar' | tr '\n' ':')src"
|
export CLASS_PATH="$(find ${deps.clojure} -iname '*.jar' | tr '\n' ':')src"
|
||||||
|
|
||||||
|
# Check if node modules changed and if so install them.
|
||||||
|
"$STATUS_MOBILE_HOME/nix/scripts/node_modules.sh" ${pkgs.deps.nodejs-patched}
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -42,18 +39,25 @@ let
|
|||||||
# for running gradle by hand
|
# for running gradle by hand
|
||||||
gradle = mkShell {
|
gradle = mkShell {
|
||||||
buildInputs = with pkgs; [ gradle maven goMavenResolver ];
|
buildInputs = with pkgs; [ gradle maven goMavenResolver ];
|
||||||
inputsFrom = [ nodejs-sh ];
|
|
||||||
shellHook = ''
|
shellHook = ''
|
||||||
export STATUS_GO_ANDROID_LIBDIR="DUMMY"
|
export STATUS_GO_ANDROID_LIBDIR="DUMMY"
|
||||||
export STATUS_NIX_MAVEN_REPO="${pkgs.deps.gradle}"
|
export STATUS_NIX_MAVEN_REPO="${pkgs.deps.gradle}"
|
||||||
export ANDROID_SDK_ROOT="${pkgs.androidPkgs.sdk}"
|
export ANDROID_SDK_ROOT="${pkgs.androidPkgs.sdk}"
|
||||||
export ANDROID_NDK_ROOT="${pkgs.androidPkgs.ndk}"
|
export ANDROID_NDK_ROOT="${pkgs.androidPkgs.ndk}"
|
||||||
|
|
||||||
|
export STATUS_MOBILE_HOME=$(git rev-parse --show-toplevel)
|
||||||
|
# WARNING: Unpatched Node.js deps allow Gradle to use remote repos.
|
||||||
|
"$STATUS_MOBILE_HOME/nix/scripts/node_modules.sh" ${pkgs.deps.nodejs}
|
||||||
|
function restore_patched_modules() {
|
||||||
|
"$STATUS_MOBILE_HOME/nix/scripts/node_modules.sh" ${pkgs.deps.nodejs-patched}
|
||||||
|
}
|
||||||
|
trap restore_patched_modules EXIT
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
# for 'scripts/generate-keystore.sh'
|
# for 'scripts/generate-keystore.sh'
|
||||||
keytool = mkShell {
|
keytool = mkShell {
|
||||||
buildInputs = with pkgs; [ openjdk8 apksigner ];
|
buildInputs = with pkgs; [ openjdk11 apksigner ];
|
||||||
};
|
};
|
||||||
|
|
||||||
# for targets needing 'adb', 'apkanalyzer' and other SDK/NDK tools
|
# for targets needing 'adb', 'apkanalyzer' and other SDK/NDK tools
|
||||||
|
|||||||
@@ -41,7 +41,6 @@ in buildGoPackage {
|
|||||||
runHook preBuild
|
runHook preBuild
|
||||||
echo -e "\nBuilding $pname for: ${concatStringsSep "," targets}"
|
echo -e "\nBuilding $pname for: ${concatStringsSep "," targets}"
|
||||||
|
|
||||||
set -x
|
|
||||||
gomobile bind \
|
gomobile bind \
|
||||||
${concatStringsSep " " goBuildFlags} \
|
${concatStringsSep " " goBuildFlags} \
|
||||||
-ldflags="$ldflags" \
|
-ldflags="$ldflags" \
|
||||||
|
|||||||
@@ -12,22 +12,20 @@
|
|||||||
"app:packager": "react-native start --host 0.0.0.0 --port 8081",
|
"app:packager": "react-native start --host 0.0.0.0 --port 8081",
|
||||||
"app:android": "react-native run-android"
|
"app:android": "react-native run-android"
|
||||||
},
|
},
|
||||||
"resolutions": {
|
|
||||||
"react-devtools-core": "^4.26.0"
|
|
||||||
},
|
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/preset-typescript": "^7.17.12",
|
"@babel/preset-typescript": "^7.17.12",
|
||||||
"@react-native-async-storage/async-storage": "^1.17.9",
|
"@react-native-async-storage/async-storage": "^1.17.9",
|
||||||
"@react-native-community/audio-toolkit": "git+https://github.com/tbenr/react-native-audio-toolkit.git#refs/tags/v2.0.3-status-v6",
|
"@react-native-community/audio-toolkit": "git+https://github.com/tbenr/react-native-audio-toolkit.git#refs/tags/v2.0.3-status-v6",
|
||||||
"@react-native-community/blur": "git+https://github.com/status-im/react-native-blur#refs/tags/v4.3.1-status",
|
"@react-native-community/blur": "git+https://github.com/status-im/react-native-blur#refs/tags/v4.3.3-status",
|
||||||
"@react-native-community/cameraroll": "git+https://github.com/status-im/react-native-cameraroll.git#refs/tags/v4.0.4-status.0",
|
"@react-native-community/cameraroll": "git+https://github.com/status-im/react-native-cameraroll.git#refs/tags/v4.0.4-status.0",
|
||||||
"@react-native-community/clipboard": "^1.2.2",
|
"@react-native-community/clipboard": "^1.2.2",
|
||||||
"@react-native-community/hooks": "^2.5.1",
|
"@react-native-community/hooks": "^3.0.0",
|
||||||
"@react-native-community/masked-view": "^0.1.6",
|
"@react-native-community/masked-view": "^0.1.6",
|
||||||
"@react-native-community/netinfo": "^4.4.0",
|
"@react-native-community/netinfo": "^4.4.0",
|
||||||
"@react-native-community/push-notification-ios": "^1.4.1",
|
"@react-native-community/push-notification-ios": "^1.4.1",
|
||||||
"@react-native-community/slider": "^3.0.0",
|
"@react-native-community/slider": "^3.0.0",
|
||||||
"@walletconnect/client": "^2.0.0-beta.23",
|
"@walletconnect/client": "^2.0.0-beta.23",
|
||||||
|
"base-64": "^1.0.0",
|
||||||
"bignumber.js": "git+https://github.com/status-im/bignumber.js.git#refs/tags/v4.0.2-status",
|
"bignumber.js": "git+https://github.com/status-im/bignumber.js.git#refs/tags/v4.0.2-status",
|
||||||
"chance": "^1.1.0",
|
"chance": "^1.1.0",
|
||||||
"create-react-class": "^15.6.2",
|
"create-react-class": "^15.6.2",
|
||||||
@@ -37,21 +35,21 @@
|
|||||||
"i18n-js": "^3.3.0",
|
"i18n-js": "^3.3.0",
|
||||||
"node-libs-react-native": "^1.2.1",
|
"node-libs-react-native": "^1.2.1",
|
||||||
"qrcode": "^1.4.1",
|
"qrcode": "^1.4.1",
|
||||||
"react": "16.13.1",
|
"react": "18.0.0",
|
||||||
"react-dom": "^16.4.2",
|
"react-dom": "^16.4.2",
|
||||||
"react-native": "0.63.5",
|
"react-native": "0.69.10",
|
||||||
"react-native-background-timer": "^2.1.1",
|
"react-native-background-timer": "^2.1.1",
|
||||||
"react-native-blob-util": "^0.13.18",
|
"react-native-blob-util": "^0.13.18",
|
||||||
"react-native-camera-kit": "^8.0.4",
|
"react-native-camera-kit": "^8.0.4",
|
||||||
"react-native-config": "git+https://github.com/status-im/react-native-config.git#refs/tags/v1.4.2-status",
|
"react-native-config": "^1.5.0",
|
||||||
"react-native-dialogs": "^1.0.4",
|
"react-native-dialogs": "^1.0.4",
|
||||||
"react-native-draggable-flatlist": "^3.0.3",
|
"react-native-draggable-flatlist": "^3.0.3",
|
||||||
"react-native-fast-image": "^8.5.11",
|
"react-native-fast-image": "^8.5.11",
|
||||||
"react-native-fetch-polyfill": "^1.1.2",
|
"react-native-fetch-polyfill": "^1.1.2",
|
||||||
"react-native-fs": "^2.14.1",
|
"react-native-fs": "^2.14.1",
|
||||||
"react-native-gesture-handler": "^2.5.0",
|
"react-native-gesture-handler": "2.6.1",
|
||||||
"react-native-haptic-feedback": "^1.9.0",
|
"react-native-haptic-feedback": "^1.9.0",
|
||||||
"react-native-hole-view": "git+https://github.com/status-im/react-native-hole-view.git#refs/tags/v2.1.1-status",
|
"react-native-hole-view": "git+https://github.com/status-im/react-native-hole-view.git#refs/tags/v2.1.3-status",
|
||||||
"react-native-image-crop-picker": "git+https://github.com/status-im/react-native-image-crop-picker.git#refs/tags/v0.36.2-status.0",
|
"react-native-image-crop-picker": "git+https://github.com/status-im/react-native-image-crop-picker.git#refs/tags/v0.36.2-status.0",
|
||||||
"react-native-image-resizer": "^1.2.3",
|
"react-native-image-resizer": "^1.2.3",
|
||||||
"react-native-image-viewing": "git+https://github.com/status-im/react-native-image-viewing.git#refs/tags/v0.2.1.status",
|
"react-native-image-viewing": "git+https://github.com/status-im/react-native-image-viewing.git#refs/tags/v0.2.1.status",
|
||||||
@@ -59,19 +57,20 @@
|
|||||||
"react-native-languages": "^3.0.2",
|
"react-native-languages": "^3.0.2",
|
||||||
"react-native-linear-gradient": "^2.5.6",
|
"react-native-linear-gradient": "^2.5.6",
|
||||||
"react-native-lottie-splash-screen": "^1.0.1",
|
"react-native-lottie-splash-screen": "^1.0.1",
|
||||||
"react-native-mail": "^6.1.1",
|
"react-native-mail": "git+https://github.com/status-im/react-native-mail.git#refs/tags/v6.1.2-status",
|
||||||
"react-native-navigation": "^7.27.1",
|
"react-native-navigation": "^7.27.1",
|
||||||
"react-native-orientation-locker": "^1.5.0",
|
"react-native-orientation-locker": "^1.5.0",
|
||||||
"react-native-permissions": "^2.1.5",
|
"react-native-permissions": "^2.1.5",
|
||||||
"react-native-randombytes": "^3.6.1",
|
"react-native-randombytes": "^3.6.1",
|
||||||
"react-native-reanimated": "2.3.3",
|
"react-native-reanimated": "2.11.0",
|
||||||
"react-native-redash": "^16.0.11",
|
"react-native-redash": "^16.0.11",
|
||||||
"react-native-safe-area-context": "^2.0.0",
|
|
||||||
"react-native-shake": "^3.3.1",
|
"react-native-shake": "^3.3.1",
|
||||||
"react-native-share": "^7.0.1",
|
"react-native-share": "^8.2.2",
|
||||||
|
"react-native-static-safe-area-insets": "^2.2.0",
|
||||||
"react-native-status-keycard": "git+https://github.com/status-im/react-native-status-keycard.git#refs/tags/v2.5.39",
|
"react-native-status-keycard": "git+https://github.com/status-im/react-native-status-keycard.git#refs/tags/v2.5.39",
|
||||||
"react-native-svg": "^9.8.4",
|
"react-native-svg": "^9.8.4",
|
||||||
"react-native-touch-id": "^4.4.1",
|
"react-native-touch-id": "^4.4.1",
|
||||||
|
"react-native-transparent-video": "git+https://github.com/status-im/react-native-transparent-video.git#refs/tags/0.0.9",
|
||||||
"react-native-webview": "git+https://github.com/status-im/react-native-webview.git#refs/tags/v11.16.0-status",
|
"react-native-webview": "git+https://github.com/status-im/react-native-webview.git#refs/tags/v11.16.0-status",
|
||||||
"react-syntax-highlighter": "^15.5.0",
|
"react-syntax-highlighter": "^15.5.0",
|
||||||
"rn-emoji-keyboard": "0.7.0",
|
"rn-emoji-keyboard": "0.7.0",
|
||||||
@@ -91,13 +90,13 @@
|
|||||||
"@types/jest": "^28.1.6",
|
"@types/jest": "^28.1.6",
|
||||||
"concurrently": "^7.6.0",
|
"concurrently": "^7.6.0",
|
||||||
"detox": "^19.9.1",
|
"detox": "^19.9.1",
|
||||||
"jest": "^25.1.0",
|
"jest": "^26.6.3",
|
||||||
"jest-circus": "^26.0.0",
|
"jest-circus": "^26.0.0",
|
||||||
"jest-image-snapshot": "^5.1.0",
|
"jest-image-snapshot": "^5.1.0",
|
||||||
"nodemon": "^2.0.16",
|
"nodemon": "^2.0.16",
|
||||||
"nyc": "^14.1.1",
|
"nyc": "^14.1.1",
|
||||||
"process": "0.11.10",
|
"process": "0.11.10",
|
||||||
"react-test-renderer": "16.13.1",
|
"react-test-renderer": "18.0.0",
|
||||||
"rn-snoopy": "git+https://github.com/status-im/rn-snoopy.git#refs/tags/v2.0.2-status",
|
"rn-snoopy": "git+https://github.com/status-im/rn-snoopy.git#refs/tags/v2.0.2-status",
|
||||||
"shadow-cljs": "2.11.16"
|
"shadow-cljs": "2.11.16"
|
||||||
},
|
},
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 307 B |
|
Before Width: | Height: | Size: 382 B |
|
Before Width: | Height: | Size: 282 B |
|
Before Width: | Height: | Size: 381 B |
|
Before Width: | Height: | Size: 772 B |
|
Before Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 505 B |
|
Before Width: | Height: | Size: 654 B |
|
Before Width: | Height: | Size: 630 B |