diff --git a/README.md b/README.md index 342833d95..19a79d6ad 100644 --- a/README.md +++ b/README.md @@ -67,6 +67,14 @@ yarn android:build Open the project up in xCode and select the signing profiles that you wish to use. You may need to signup with appstoreconnect and setup the provisioning profile and certificates. [See Apple's documentation for more information](https://developer.apple.com/help/account/). Once the app and profiles are loaded in xCode, create an "archive" of the project by navigating to [Product/Archive]. After it has completed, you can distribute it locally or to the AppStore using the "Organizer" window. +## Archiving for iOS: + +To create an archive to send to the App Store, before opening xCode, install the pod dependecies with the following command: + +``` +NO_FLIPPER=1 npx pod-install +``` + ## Interacting with the Smart Wallet At a high level, the RIF Wallet uses the RIF Relay Server to send transactions on behalf of the user. The user creates a transaction in the app, signs it, and then passes it to the RIF Relay Server to get a cost estimation. That estimation is returned to the user, and the user signs an updated transaction with that cost and passes it to the Relay Server. diff --git a/ios/Podfile b/ios/Podfile index 145766d9e..612a055ef 100644 --- a/ios/Podfile +++ b/ios/Podfile @@ -20,7 +20,7 @@ prepare_react_native_project! # dependencies: { # ...(process.env.NO_FLIPPER ? { 'react-native-flipper': { platforms: { ios: null } } } : {}), # ``` -flipper_config = ENV['NO_FLIPPER'] == "1" ? FlipperConfiguration.disabled : FlipperConfiguration.enabled +flipper_config = ENV['NO_FLIPPER'] == "1" ? FlipperConfiguration.disabled : FlipperConfiguration.enabled(["Debug"]) linkage = ENV['USE_FRAMEWORKS'] if linkage != nil diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 6a81a206c..41afdec1f 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -1,6 +1,5 @@ PODS: - boost (1.83.0) - - CocoaAsyncSocket (7.6.5) - DoubleConversion (1.1.6) - FBLazyVector (0.73.4) - FBReactNativeSpec (0.73.4): @@ -10,62 +9,6 @@ PODS: - React-Core (= 0.73.4) - React-jsi (= 0.73.4) - ReactCommon/turbomodule/core (= 0.73.4) - - Flipper (0.201.0): - - Flipper-Folly (~> 2.6) - - Flipper-Boost-iOSX (1.76.0.1.11) - - Flipper-DoubleConversion (3.2.0.1) - - Flipper-Fmt (7.1.7) - - Flipper-Folly (2.6.10): - - Flipper-Boost-iOSX - - Flipper-DoubleConversion - - Flipper-Fmt (= 7.1.7) - - Flipper-Glog - - libevent (~> 2.1.12) - - OpenSSL-Universal (= 1.1.1100) - - Flipper-Glog (0.5.0.5) - - Flipper-PeerTalk (0.0.4) - - FlipperKit (0.201.0): - - FlipperKit/Core (= 0.201.0) - - FlipperKit/Core (0.201.0): - - Flipper (~> 0.201.0) - - FlipperKit/CppBridge - - FlipperKit/FBCxxFollyDynamicConvert - - FlipperKit/FBDefines - - FlipperKit/FKPortForwarding - - SocketRocket (~> 0.6.0) - - FlipperKit/CppBridge (0.201.0): - - Flipper (~> 0.201.0) - - FlipperKit/FBCxxFollyDynamicConvert (0.201.0): - - Flipper-Folly (~> 2.6) - - FlipperKit/FBDefines (0.201.0) - - FlipperKit/FKPortForwarding (0.201.0): - - CocoaAsyncSocket (~> 7.6) - - Flipper-PeerTalk (~> 0.0.4) - - FlipperKit/FlipperKitHighlightOverlay (0.201.0) - - FlipperKit/FlipperKitLayoutHelpers (0.201.0): - - FlipperKit/Core - - FlipperKit/FlipperKitHighlightOverlay - - FlipperKit/FlipperKitLayoutTextSearchable - - FlipperKit/FlipperKitLayoutIOSDescriptors (0.201.0): - - FlipperKit/Core - - FlipperKit/FlipperKitHighlightOverlay - - FlipperKit/FlipperKitLayoutHelpers - - FlipperKit/FlipperKitLayoutPlugin (0.201.0): - - FlipperKit/Core - - FlipperKit/FlipperKitHighlightOverlay - - FlipperKit/FlipperKitLayoutHelpers - - FlipperKit/FlipperKitLayoutIOSDescriptors - - FlipperKit/FlipperKitLayoutTextSearchable - - FlipperKit/FlipperKitLayoutTextSearchable (0.201.0) - - FlipperKit/FlipperKitNetworkPlugin (0.201.0): - - FlipperKit/Core - - FlipperKit/FlipperKitReactPlugin (0.201.0): - - FlipperKit/Core - - FlipperKit/FlipperKitUserDefaultsPlugin (0.201.0): - - FlipperKit/Core - - FlipperKit/SKIOSNetworkPlugin (0.201.0): - - FlipperKit/Core - - FlipperKit/FlipperKitNetworkPlugin - fmt (6.2.1) - glog (0.3.5) - hermes-engine (0.73.4): @@ -77,7 +20,6 @@ PODS: - MMKV (1.3.3): - MMKVCore (~> 1.3.3) - MMKVCore (1.3.3) - - OpenSSL-Universal (1.1.1100) - RCT-Folly (2022.05.16.00): - boost - DoubleConversion @@ -955,8 +897,6 @@ PODS: - react-native-config/App (= 1.5.1) - react-native-config/App (1.5.1): - React-Core - - react-native-flipper (0.212.0): - - React-Core - react-native-get-random-values (1.9.0): - React-Core - react-native-mmkv (2.12.1): @@ -1179,7 +1119,7 @@ PODS: - React-Core - SocketRocket (0.6.1) - TrustKit (3.0.3) - - VisionCamera (3.9.0): + - VisionCamera (3.9.1): - React - React-callinvoker - React-Core @@ -1193,31 +1133,10 @@ DEPENDENCIES: - DoubleConversion (from `../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`) - FBLazyVector (from `../node_modules/react-native/Libraries/FBLazyVector`) - FBReactNativeSpec (from `../node_modules/react-native/React/FBReactNativeSpec`) - - Flipper (= 0.201.0) - - Flipper-Boost-iOSX (= 1.76.0.1.11) - - Flipper-DoubleConversion (= 3.2.0.1) - - Flipper-Fmt (= 7.1.7) - - Flipper-Folly (= 2.6.10) - - Flipper-Glog (= 0.5.0.5) - - Flipper-PeerTalk (= 0.0.4) - - FlipperKit (= 0.201.0) - - FlipperKit/Core (= 0.201.0) - - FlipperKit/CppBridge (= 0.201.0) - - FlipperKit/FBCxxFollyDynamicConvert (= 0.201.0) - - FlipperKit/FBDefines (= 0.201.0) - - FlipperKit/FKPortForwarding (= 0.201.0) - - FlipperKit/FlipperKitHighlightOverlay (= 0.201.0) - - FlipperKit/FlipperKitLayoutPlugin (= 0.201.0) - - FlipperKit/FlipperKitLayoutTextSearchable (= 0.201.0) - - FlipperKit/FlipperKitNetworkPlugin (= 0.201.0) - - FlipperKit/FlipperKitReactPlugin (= 0.201.0) - - FlipperKit/FlipperKitUserDefaultsPlugin (= 0.201.0) - - FlipperKit/SKIOSNetworkPlugin (= 0.201.0) - glog (from `../node_modules/react-native/third-party-podspecs/glog.podspec`) - hermes-engine (from `../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec`) - jail-monkey (from `../node_modules/jail-monkey`) - libevent (~> 2.1.12) - - OpenSSL-Universal (= 1.1.1100) - RCT-Folly (from `../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`) - RCT-Folly/Fabric (from `../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`) - RCTRequired (from `../node_modules/react-native/Libraries/RCTRequired`) @@ -1226,7 +1145,6 @@ DEPENDENCIES: - React-callinvoker (from `../node_modules/react-native/ReactCommon/callinvoker`) - React-Codegen (from `build/generated/ios`) - React-Core (from `../node_modules/react-native/`) - - React-Core/DevSupport (from `../node_modules/react-native/`) - React-Core/RCTWebSocket (from `../node_modules/react-native/`) - React-CoreModules (from `../node_modules/react-native/React/CoreModules`) - React-cxxreact (from `../node_modules/react-native/ReactCommon/cxxreact`) @@ -1244,7 +1162,6 @@ DEPENDENCIES: - React-Mapbuffer (from `../node_modules/react-native/ReactCommon`) - react-native-background-timer (from `../node_modules/react-native-background-timer`) - react-native-config (from `../node_modules/react-native-config`) - - react-native-flipper (from `../node_modules/react-native-flipper`) - react-native-get-random-values (from `../node_modules/react-native-get-random-values`) - react-native-mmkv (from `../node_modules/react-native-mmkv`) - "react-native-netinfo (from `../node_modules/@react-native-community/netinfo`)" @@ -1288,20 +1205,10 @@ DEPENDENCIES: SPEC REPOS: trunk: - - CocoaAsyncSocket - - Flipper - - Flipper-Boost-iOSX - - Flipper-DoubleConversion - - Flipper-Fmt - - Flipper-Folly - - Flipper-Glog - - Flipper-PeerTalk - - FlipperKit - fmt - libevent - MMKV - MMKVCore - - OpenSSL-Universal - SocketRocket - TrustKit - ZXingObjC @@ -1368,8 +1275,6 @@ EXTERNAL SOURCES: :path: "../node_modules/react-native-background-timer" react-native-config: :path: "../node_modules/react-native-config" - react-native-flipper: - :path: "../node_modules/react-native-flipper" react-native-get-random-values: :path: "../node_modules/react-native-get-random-values" react-native-mmkv: @@ -1453,18 +1358,9 @@ EXTERNAL SOURCES: SPEC CHECKSUMS: boost: d3f49c53809116a5d38da093a8aa78bf551aed09 - CocoaAsyncSocket: 065fd1e645c7abab64f7a6a2007a48038fdc6a99 DoubleConversion: fea03f2699887d960129cc54bba7e52542b6f953 FBLazyVector: 84f6edbe225f38aebd9deaf1540a4160b1f087d7 FBReactNativeSpec: d0086a479be91c44ce4687a962956a352d2dc697 - Flipper: c7a0093234c4bdd456e363f2f19b2e4b27652d44 - Flipper-Boost-iOSX: fd1e2b8cbef7e662a122412d7ac5f5bea715403c - Flipper-DoubleConversion: 2dc99b02f658daf147069aad9dbd29d8feb06d30 - Flipper-Fmt: 60cbdd92fc254826e61d669a5d87ef7015396a9b - Flipper-Folly: 584845625005ff068a6ebf41f857f468decd26b3 - Flipper-Glog: 70c50ce58ddaf67dc35180db05f191692570f446 - Flipper-PeerTalk: 116d8f857dc6ef55c7a5a75ea3ceaafe878aadc9 - FlipperKit: 37525a5d056ef9b93d1578e04bc3ea1de940094f fmt: ff9d55029c625d3757ed641535fd4a75fedc7ce9 glog: c5d68082e772fa1c511173d6b30a9de2c05a69a2 hermes-engine: b2669ce35fc4ac14f523b307aff8896799829fe2 @@ -1472,7 +1368,6 @@ SPEC CHECKSUMS: libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913 MMKV: f902fb6719da13c2ab0965233d8963a59416f911 MMKVCore: d26e4d3edd5cb8588c2569222cbd8be4231374e9 - OpenSSL-Universal: ebc357f1e6bc71fa463ccb2fe676756aff50e88c RCT-Folly: 7169b2b1c44399c76a47b5deaaba715eeeb476c0 RCTRequired: ab7f915c15569f04a49669e573e6e319a53f9faa RCTTypeSafety: 63b97ced7b766865057e7154db0e81ce4ee6cf1e @@ -1496,7 +1391,6 @@ SPEC CHECKSUMS: React-Mapbuffer: 63913773ed7f96b814a2521e13e6d010282096ad react-native-background-timer: 17ea5e06803401a379ebf1f20505b793ac44d0fe react-native-config: 86038147314e2e6d10ea9972022aa171e6b1d4d8 - react-native-flipper: 9c1957af24b76493ba74f46d000a5c1d485e7731 react-native-get-random-values: dee677497c6a740b71e5612e8dbd83e7539ed5bb react-native-mmkv: 124b22209aacdcd172b6ac39071b9647080f0411 react-native-netinfo: fefd4e98d75cbdd6e85fc530f7111a8afdf2b0c5 @@ -1537,10 +1431,10 @@ SPEC CHECKSUMS: RNVectorIcons: 210f910e834e3485af40693ad4615c1ec22fc02b SocketRocket: f32cd54efbe0f095c4d7594881e52619cfe80b17 TrustKit: 7858ea59d0e226b1457b2e9cc8b95d77ab21d471 - VisionCamera: 7a5c87805b13adaaa557132b44879ed1e1e39786 + VisionCamera: 52f98e7628f9deea3e311c3b6d4870bb44445e05 Yoga: 64cd2a583ead952b0315d5135bf39e053ae9be70 ZXingObjC: 8898711ab495761b2dbbdec76d90164a6d7e14c5 -PODFILE CHECKSUM: 3c66251e2fb883f7575e84b4cdde922bccb42c88 +PODFILE CHECKSUM: 293f5bee3070e57534498255c12da91c01941096 COCOAPODS: 1.14.3 diff --git a/ios/rifWallet.xcodeproj/project.pbxproj b/ios/rifWallet.xcodeproj/project.pbxproj index b0a5efbfa..97c2ed030 100644 --- a/ios/rifWallet.xcodeproj/project.pbxproj +++ b/ios/rifWallet.xcodeproj/project.pbxproj @@ -470,6 +470,7 @@ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; CURRENT_PROJECT_VERSION = 1; + DEVELOPMENT_TEAM = 3YDAH8ZR7C; ENABLE_BITCODE = NO; INFOPLIST_FILE = rifWallet/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -477,11 +478,6 @@ "@executable_path/Frameworks", ); MARKETING_VERSION = 0.0.6; - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - "-lc++", - ); PRODUCT_BUNDLE_IDENTIFIER = co.rsk.rifwallet.test; PRODUCT_NAME = rifWallet; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; @@ -497,17 +493,13 @@ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; CURRENT_PROJECT_VERSION = 1; + DEVELOPMENT_TEAM = 3YDAH8ZR7C; INFOPLIST_FILE = rifWallet/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", ); MARKETING_VERSION = 0.0.6; - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - "-lc++", - ); PRODUCT_BUNDLE_IDENTIFIER = co.rsk.rifwallet.test; PRODUCT_NAME = rifWallet; SWIFT_VERSION = 5.0; diff --git a/ios/rifWallet/Info.plist b/ios/rifWallet/Info.plist index b3d68f023..ff107ff17 100644 --- a/ios/rifWallet/Info.plist +++ b/ios/rifWallet/Info.plist @@ -26,7 +26,6 @@ NSAppTransportSecurity - NSAllowsArbitraryLoads NSAllowsLocalNetworking @@ -75,11 +74,14 @@ UISupportedInterfaceOrientations UIInterfaceOrientationPortrait + + UISupportedInterfaceOrientations~ipad + UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight + UIInterfaceOrientationPortrait UIViewControllerBasedStatusBarAppearance - diff --git a/react-native.config.js b/react-native.config.js index ff3967675..741b7a25b 100644 --- a/react-native.config.js +++ b/react-native.config.js @@ -4,4 +4,9 @@ module.exports = { android: {}, }, assets: ['./assets/fonts/'], + dependencies: { + ...(process.env.NO_FLIPPER + ? { 'react-native-flipper': { platforms: { ios: null } } } + : {}), + }, }