diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml index 1f87892b9..eb29ae547 100644 --- a/docker/docker-compose.yml +++ b/docker/docker-compose.yml @@ -122,7 +122,7 @@ services: ldk-backup-server: container_name: ldk-backup-server - image: synonymsoft/ldk-backup-server:latest + image: synonymsoft/ldk-backup-server:0.0.146 expose: - '3003' ports: diff --git a/e2e/boost.e2e.js b/e2e/boost.e2e.js index 463a1bbe6..3fe5a424e 100644 --- a/e2e/boost.e2e.js +++ b/e2e/boost.e2e.js @@ -52,6 +52,15 @@ d('Boost', () => { return; } + // switch off RBF mode + await element(by.id('Settings')).tap(); + if (!__DEV__) { + await element(by.id('DevOptions')).multiTap(5); // enable dev mode + } + await element(by.id('DevSettings')).tap(); + await element(by.id('RBF')).tap(); + await launchAndWait(); + // fund the wallet await element(by.id('Receive')).tap(); let { label: wAddress } = await element(by.id('QRCode')).getAttributes(); @@ -76,11 +85,10 @@ d('Boost', () => { await sleep(500); // wait for keyboard to hide await element(by.id('AddressContinue')).tap(); await element(by.id('N1').withAncestor(by.id('SendAmountNumberPad'))).tap(); - for (let i = 0; i < 4; i++) { - await element( - by.id('N0').withAncestor(by.id('SendAmountNumberPad')), - ).tap(); - } + await element(by.id('N0').withAncestor(by.id('SendAmountNumberPad'))).tap(); + await element( + by.id('N000').withAncestor(by.id('SendAmountNumberPad')), + ).tap(); await expect(element(by.text('10 000'))).toBeVisible(); await element(by.id('ContinueAmount')).tap(); await element(by.id('GRAB')).swipe('right', 'slow', 0.95, 0.5, 0.5); // Swipe to confirm @@ -164,15 +172,6 @@ d('Boost', () => { return; } - // switch to RBF mode - await element(by.id('Settings')).tap(); - if (!__DEV__) { - await element(by.id('DevOptions')).multiTap(5); // enable dev mode - } - await element(by.id('DevSettings')).tap(); - await element(by.id('RBF')).tap(); - await launchAndWait(); - // fund the wallet await element(by.id('Receive')).tap(); let { label: wAddress } = await element(by.id('QRCode')).getAttributes(); @@ -197,11 +196,10 @@ d('Boost', () => { await sleep(500); // wait for keyboard to hide await element(by.id('AddressContinue')).tap(); await element(by.id('N1').withAncestor(by.id('SendAmountNumberPad'))).tap(); - for (let i = 0; i < 4; i++) { - await element( - by.id('N0').withAncestor(by.id('SendAmountNumberPad')), - ).tap(); - } + await element(by.id('N0').withAncestor(by.id('SendAmountNumberPad'))).tap(); + await element( + by.id('N000').withAncestor(by.id('SendAmountNumberPad')), + ).tap(); await expect(element(by.text('10 000'))).toBeVisible(); await element(by.id('ContinueAmount')).tap(); await element(by.id('GRAB')).swipe('right', 'slow', 0.95, 0.5, 0.5); // Swipe to confirm diff --git a/e2e/lightning.e2e.js b/e2e/lightning.e2e.js index ce978bd05..8e6fdf854 100644 --- a/e2e/lightning.e2e.js +++ b/e2e/lightning.e2e.js @@ -92,9 +92,11 @@ d('Lightning', () => { ).getAttributes(); await element(by.id('NavigationBack')).atIndex(0).tap(); await sleep(100); + await element(by.id('NavigationBack')).atIndex(0).tap(); + await element(by.id('DevSettings')).tap(); + await element(by.id('LDKDebug')).tap(); // connect to LND - await element(by.id('Channels')).tap(); await element(by.id('AddPeerInput')).replaceText( `${lndNodeID}@127.0.0.1:9735`, ); @@ -145,12 +147,15 @@ d('Lightning', () => { await sleep(500); await element(by.id('NavigationBack')).atIndex(0).tap(); await sleep(100); + await element(by.id('NavigationBack')).atIndex(0).tap(); + await element(by.id('AdvancedSettings')).atIndex(0).tap(); await element(by.id('Channels')).tap(); await element(by.id('Channel')).atIndex(0).tap(); await expect( element(by.id('MoneyText').withAncestor(by.id('TotalSize'))), ).toHaveText('100 000'); await element(by.id('ChannelScrollView')).scrollTo('bottom', NaN, 0.1); + await expect(element(by.id('IsUsableYes'))).toBeVisible(); await element(by.id('NavigationClose')).atIndex(0).tap(); await sleep(500); @@ -409,6 +414,7 @@ d('Lightning', () => { await element(by.id('Channels')).tap(); await element(by.id('Channel')).atIndex(0).tap(); await element(by.id('ChannelScrollView')).scrollTo('bottom', NaN, 0.1); + await expect(element(by.id('IsUsableYes'))).toBeVisible(); // close channel await element(by.id('CloseConnection')).tap(); diff --git a/e2e/settings.e2e.js b/e2e/settings.e2e.js index 1f0782e17..0a0536e56 100644 --- a/e2e/settings.e2e.js +++ b/e2e/settings.e2e.js @@ -407,8 +407,8 @@ d('Settings', () => { if (!__DEV__) { await element(by.id('DevOptions')).multiTap(5); // enable dev mode } - await element(by.id('AdvancedSettings')).tap(); - await element(by.id('Channels')).tap(); + await element(by.id('DevSettings')).tap(); + await element(by.id('LDKDebug')).tap(); await element(by.id('CopyNodeId')).tap(); await element(by.id('RefreshLDK')).tap(); await element(by.id('RestartLDK')).tap(); @@ -417,7 +417,8 @@ d('Settings', () => { .toBeVisible() .withTimeout(5000); await element(by.id('NavigationBack')).atIndex(0).tap(); - + await element(by.id('NavigationBack')).atIndex(0).tap(); + await element(by.id('AdvancedSettings')).tap(); await element(by.id('LightningNodeInfo')).tap(); // TODO: this fails too often on CI // await waitFor(element(by.id('LDKNodeID'))) @@ -640,7 +641,6 @@ d('Settings', () => { } await element(by.id('TriggerRenderError')).tap(); - await expect(element(by.id('ErrorClose'))).toBeVisible(); await expect(element(by.id('ErrorReport'))).toBeVisible(); markComplete('settings-dev'); diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 2165e9ae0..3bfce81c1 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -1028,7 +1028,7 @@ PODS: - ReactCommon/turbomodule/bridging - ReactCommon/turbomodule/core - Yoga - - react-native-ldk (0.0.150): + - react-native-ldk (0.0.152): - React - react-native-mmkv (2.12.2): - DoubleConversion @@ -1365,8 +1365,6 @@ PODS: - React-Core - RNDeviceInfo (11.1.0): - React-Core - - RNExitApp (2.0.0): - - React-Core - RNFS (2.20.0): - React-Core - RNGestureHandler (2.15.0): @@ -1565,7 +1563,6 @@ DEPENDENCIES: - ReactNativeCameraKit (from `../node_modules/react-native-camera-kit`) - "RNCClipboard (from `../node_modules/@react-native-clipboard/clipboard`)" - RNDeviceInfo (from `../node_modules/react-native-device-info`) - - RNExitApp (from `../node_modules/react-native-exit-app`) - RNFS (from `../node_modules/react-native-fs`) - RNGestureHandler (from `../node_modules/react-native-gesture-handler`) - "RNKeychain (from `../node_modules/@synonymdev/react-native-keychain`)" @@ -1738,8 +1735,6 @@ EXTERNAL SOURCES: :path: "../node_modules/@react-native-clipboard/clipboard" RNDeviceInfo: :path: "../node_modules/react-native-device-info" - RNExitApp: - :path: "../node_modules/react-native-exit-app" RNFS: :path: "../node_modules/react-native-fs" RNGestureHandler: @@ -1814,7 +1809,7 @@ SPEC CHECKSUMS: react-native-biometrics: 352e5a794bfffc46a0c86725ea7dc62deb085bdc react-native-blur: a2acf22fd7bd13621df5e0b1c130b81adea7009c react-native-image-picker: c3afe5472ef870d98a4b28415fc0b928161ee5f7 - react-native-ldk: 2b19de9eb94dcfd46f3f2a7191502292b75a5d7a + react-native-ldk: 1d25080cfadac349eab355725da66de140fbc7a8 react-native-mmkv: 8c9a677e64a1ac89b0c6cf240feea528318b3074 react-native-netinfo: bdb108d340cdb41875c9ced535977cac6d2ff321 react-native-quick-base64: a74c4b2607b9de016877a8edb776b6ac59785809 @@ -1850,7 +1845,6 @@ SPEC CHECKSUMS: ReactNativeCameraKit: 71343efc1256720184ce980f164c7eedb78d5c16 RNCClipboard: 0a720adef5ec193aa0e3de24c3977222c7e52a37 RNDeviceInfo: b899ce37a403a4dea52b7cb85e16e49c04a5b88e - RNExitApp: 00036cabe7bacbb413d276d5520bf74ba39afa6a RNFS: 4ac0f0ea233904cb798630b3c077808c06931688 RNGestureHandler: 9b113eb9b7a4cbe66e1dbf4d9914281863ee0703 RNKeychain: 35f92386e7f8548e3e60e7441121afbe8c62d8e4 diff --git a/ios/bitkit.xcodeproj/project.pbxproj b/ios/bitkit.xcodeproj/project.pbxproj index bb14d3cef..bc7f8b426 100644 --- a/ios/bitkit.xcodeproj/project.pbxproj +++ b/ios/bitkit.xcodeproj/project.pbxproj @@ -8,6 +8,7 @@ /* Begin PBXBuildFile section */ 00E356F31AD99517003FC87E /* bitkitTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* bitkitTests.m */; }; + 124B0F9DDF6319E7A2B43B63 /* libPods-bitkit-bitkitTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3E62DF1EACA6341AC3274733 /* libPods-bitkit-bitkitTests.a */; }; 13B07FBC1A68108700A75B9A /* AppDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.mm */; }; 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; }; 13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; }; @@ -15,11 +16,10 @@ 57072143CA0F49089AE64F61 /* InterTight-ExtraBold.ttf in Resources */ = {isa = PBXBuildFile; fileRef = A223BA795CEB4CB2B344FBAF /* InterTight-ExtraBold.ttf */; }; 6980B602E6DC4429841BE5EE /* InterTight-Medium.ttf in Resources */ = {isa = PBXBuildFile; fileRef = D67AECF5F543462F90EC89AD /* InterTight-Medium.ttf */; }; 81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */; }; + 85B0E80EE757966B8D4672F7 /* libPods-bitkit.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F387923D0972B668CCE11B46 /* libPods-bitkit.a */; }; 8BD8301E3A1B44DDA3C8A10D /* Damion-Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = DEC74C5375A34FFCAEBA0781 /* Damion-Regular.ttf */; }; 925570EA7B1D43CC8AD07B91 /* InterTight-Bold.ttf in Resources */ = {isa = PBXBuildFile; fileRef = CA37793F82F144678099A00D /* InterTight-Bold.ttf */; }; 9952E811473D46FB9003A56D /* InterTight-SemiBold.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 50A8DA09F2974D05A3C58E87 /* InterTight-SemiBold.ttf */; }; - A2ECE3678D8C0BFA2DFF0A68 /* libPods-bitkit.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 23137CA26C19D39992BB7413 /* libPods-bitkit.a */; }; - B3A6759C423C8CF0F0BFF2F5 /* libPods-bitkit-bitkitTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FC383E6439EA4873C68244C4 /* libPods-bitkit-bitkitTests.a */; }; B3BE07A9843E4B7DA375B877 /* InterTight-Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 79DFAC55B0D745DE815EC2E0 /* InterTight-Regular.ttf */; }; E2F35FC226645CE623C61C03 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = 919FE2A2B4A7605C9F606896 /* PrivacyInfo.xcprivacy */; }; /* End PBXBuildFile section */ @@ -38,7 +38,6 @@ 00E356EE1AD99517003FC87E /* bitkitTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = bitkitTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 00E356F11AD99517003FC87E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 00E356F21AD99517003FC87E /* bitkitTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = bitkitTests.m; sourceTree = ""; }; - 05E937B40552E367A3B5B9EB /* Pods-bitkit-bitkitTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-bitkit-bitkitTests.debug.xcconfig"; path = "Target Support Files/Pods-bitkit-bitkitTests/Pods-bitkit-bitkitTests.debug.xcconfig"; sourceTree = ""; }; 13B07F961A680F5B00A75B9A /* bitkit.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = bitkit.app; sourceTree = BUILT_PRODUCTS_DIR; }; 13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = bitkit/AppDelegate.h; sourceTree = ""; }; 13B07FB01A68108700A75B9A /* AppDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = AppDelegate.mm; path = bitkit/AppDelegate.mm; sourceTree = ""; }; @@ -46,21 +45,22 @@ 13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = bitkit/Info.plist; sourceTree = ""; }; 13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = bitkit/main.m; sourceTree = ""; }; 13B07FB81A68108700A75B9A /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = PrivacyInfo.xcprivacy; path = bitkit/PrivacyInfo.xcprivacy; sourceTree = ""; }; - 23137CA26C19D39992BB7413 /* libPods-bitkit.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-bitkit.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 25219B5606FB907D158A4444 /* Pods-bitkit-bitkitTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-bitkit-bitkitTests.release.xcconfig"; path = "Target Support Files/Pods-bitkit-bitkitTests/Pods-bitkit-bitkitTests.release.xcconfig"; sourceTree = ""; }; 3815D562618543E7A9BC191E /* InterTight-Black.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "InterTight-Black.ttf"; path = "../src/assets/fonts/InterTight-Black.ttf"; sourceTree = ""; }; - 3B9A6C20A7874631A4ADC607 /* Pods-bitkit-bitkitTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-bitkit-bitkitTests.release.xcconfig"; path = "Target Support Files/Pods-bitkit-bitkitTests/Pods-bitkit-bitkitTests.release.xcconfig"; sourceTree = ""; }; + 3B63A2DDCD9A4BC13D8C7C78 /* Pods-bitkit-bitkitTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-bitkit-bitkitTests.debug.xcconfig"; path = "Target Support Files/Pods-bitkit-bitkitTests/Pods-bitkit-bitkitTests.debug.xcconfig"; sourceTree = ""; }; + 3E62DF1EACA6341AC3274733 /* libPods-bitkit-bitkitTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-bitkit-bitkitTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 50A8DA09F2974D05A3C58E87 /* InterTight-SemiBold.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "InterTight-SemiBold.ttf"; path = "../src/assets/fonts/InterTight-SemiBold.ttf"; sourceTree = ""; }; 79DFAC55B0D745DE815EC2E0 /* InterTight-Regular.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "InterTight-Regular.ttf"; path = "../src/assets/fonts/InterTight-Regular.ttf"; sourceTree = ""; }; 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = LaunchScreen.storyboard; path = bitkit/LaunchScreen.storyboard; sourceTree = ""; }; - 87D1E3D644A0F2DFD2E9F357 /* Pods-bitkit.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-bitkit.release.xcconfig"; path = "Target Support Files/Pods-bitkit/Pods-bitkit.release.xcconfig"; sourceTree = ""; }; 919FE2A2B4A7605C9F606896 /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xml; name = PrivacyInfo.xcprivacy; path = bitkit/PrivacyInfo.xcprivacy; sourceTree = ""; }; + 9C3806FEE36A597CF881ABF5 /* Pods-bitkit.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-bitkit.release.xcconfig"; path = "Target Support Files/Pods-bitkit/Pods-bitkit.release.xcconfig"; sourceTree = ""; }; A223BA795CEB4CB2B344FBAF /* InterTight-ExtraBold.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "InterTight-ExtraBold.ttf"; path = "../src/assets/fonts/InterTight-ExtraBold.ttf"; sourceTree = ""; }; - AC10B20661F2D38D40AE19E9 /* Pods-bitkit.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-bitkit.debug.xcconfig"; path = "Target Support Files/Pods-bitkit/Pods-bitkit.debug.xcconfig"; sourceTree = ""; }; CA37793F82F144678099A00D /* InterTight-Bold.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "InterTight-Bold.ttf"; path = "../src/assets/fonts/InterTight-Bold.ttf"; sourceTree = ""; }; D67AECF5F543462F90EC89AD /* InterTight-Medium.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "InterTight-Medium.ttf"; path = "../src/assets/fonts/InterTight-Medium.ttf"; sourceTree = ""; }; DEC74C5375A34FFCAEBA0781 /* Damion-Regular.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "Damion-Regular.ttf"; path = "../src/assets/fonts/Damion-Regular.ttf"; sourceTree = ""; }; + E2B4827AFFBF565147F51613 /* Pods-bitkit.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-bitkit.debug.xcconfig"; path = "Target Support Files/Pods-bitkit/Pods-bitkit.debug.xcconfig"; sourceTree = ""; }; ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; }; - FC383E6439EA4873C68244C4 /* libPods-bitkit-bitkitTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-bitkit-bitkitTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + F387923D0972B668CCE11B46 /* libPods-bitkit.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-bitkit.a"; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -68,7 +68,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - B3A6759C423C8CF0F0BFF2F5 /* libPods-bitkit-bitkitTests.a in Frameworks */, + 124B0F9DDF6319E7A2B43B63 /* libPods-bitkit-bitkitTests.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -76,7 +76,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - A2ECE3678D8C0BFA2DFF0A68 /* libPods-bitkit.a in Frameworks */, + 85B0E80EE757966B8D4672F7 /* libPods-bitkit.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -119,8 +119,8 @@ isa = PBXGroup; children = ( ED297162215061F000B7C4FE /* JavaScriptCore.framework */, - 23137CA26C19D39992BB7413 /* libPods-bitkit.a */, - FC383E6439EA4873C68244C4 /* libPods-bitkit-bitkitTests.a */, + F387923D0972B668CCE11B46 /* libPods-bitkit.a */, + 3E62DF1EACA6341AC3274733 /* libPods-bitkit-bitkitTests.a */, ); name = Frameworks; sourceTree = ""; @@ -183,10 +183,10 @@ BBD78D7AC51CEA395F1C20DB /* Pods */ = { isa = PBXGroup; children = ( - AC10B20661F2D38D40AE19E9 /* Pods-bitkit.debug.xcconfig */, - 87D1E3D644A0F2DFD2E9F357 /* Pods-bitkit.release.xcconfig */, - 05E937B40552E367A3B5B9EB /* Pods-bitkit-bitkitTests.debug.xcconfig */, - 3B9A6C20A7874631A4ADC607 /* Pods-bitkit-bitkitTests.release.xcconfig */, + E2B4827AFFBF565147F51613 /* Pods-bitkit.debug.xcconfig */, + 9C3806FEE36A597CF881ABF5 /* Pods-bitkit.release.xcconfig */, + 3B63A2DDCD9A4BC13D8C7C78 /* Pods-bitkit-bitkitTests.debug.xcconfig */, + 25219B5606FB907D158A4444 /* Pods-bitkit-bitkitTests.release.xcconfig */, ); path = Pods; sourceTree = ""; @@ -198,12 +198,12 @@ isa = PBXNativeTarget; buildConfigurationList = 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "bitkitTests" */; buildPhases = ( - 89752D4F81DB48BD943AA3D3 /* [CP] Check Pods Manifest.lock */, + 63A2B0D1433274FD5C105FCE /* [CP] Check Pods Manifest.lock */, 00E356EA1AD99517003FC87E /* Sources */, 00E356EB1AD99517003FC87E /* Frameworks */, 00E356EC1AD99517003FC87E /* Resources */, - DE803CBF219BB8CA927A7A77 /* [CP] Embed Pods Frameworks */, - E10313BAF94930358C10F740 /* [CP] Copy Pods Resources */, + 4BD74F613A88E196BA251ED6 /* [CP] Embed Pods Frameworks */, + 0BAC1EB73F07D919FF626823 /* [CP] Copy Pods Resources */, ); buildRules = ( ); @@ -219,13 +219,13 @@ isa = PBXNativeTarget; buildConfigurationList = 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "bitkit" */; buildPhases = ( - BCCD6AE4FEE2546499FC091C /* [CP] Check Pods Manifest.lock */, + ACC2357292E3721C62513819 /* [CP] Check Pods Manifest.lock */, 13B07F871A680F5B00A75B9A /* Sources */, 13B07F8C1A680F5B00A75B9A /* Frameworks */, 13B07F8E1A680F5B00A75B9A /* Resources */, 00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */, - 89218F8619AF1AE9AF9FDA67 /* [CP] Embed Pods Frameworks */, - 44650B695A2DA274ACB31F2E /* [CP] Copy Pods Resources */, + C2A0B633861DD92ABB0F7903 /* [CP] Embed Pods Frameworks */, + 3133EC31E0DF08FC6B58847F /* [CP] Copy Pods Resources */, ); buildRules = ( ); @@ -316,7 +316,24 @@ shellPath = /bin/sh; shellScript = "set -e\n\nWITH_ENVIRONMENT=\"$REACT_NATIVE_PATH/scripts/xcode/with-environment.sh\"\nREACT_NATIVE_XCODE=\"$REACT_NATIVE_PATH/scripts/react-native-xcode.sh\"\n\n/bin/sh -c \"$WITH_ENVIRONMENT $REACT_NATIVE_XCODE\"\n"; }; - 44650B695A2DA274ACB31F2E /* [CP] Copy Pods Resources */ = { + 0BAC1EB73F07D919FF626823 /* [CP] Copy Pods Resources */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-bitkit-bitkitTests/Pods-bitkit-bitkitTests-resources-${CONFIGURATION}-input-files.xcfilelist", + ); + name = "[CP] Copy Pods Resources"; + outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-bitkit-bitkitTests/Pods-bitkit-bitkitTests-resources-${CONFIGURATION}-output-files.xcfilelist", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-bitkit-bitkitTests/Pods-bitkit-bitkitTests-resources.sh\"\n"; + showEnvVarsInLog = 0; + }; + 3133EC31E0DF08FC6B58847F /* [CP] Copy Pods Resources */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -333,24 +350,24 @@ shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-bitkit/Pods-bitkit-resources.sh\"\n"; showEnvVarsInLog = 0; }; - 89218F8619AF1AE9AF9FDA67 /* [CP] Embed Pods Frameworks */ = { + 4BD74F613A88E196BA251ED6 /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-bitkit/Pods-bitkit-frameworks-${CONFIGURATION}-input-files.xcfilelist", + "${PODS_ROOT}/Target Support Files/Pods-bitkit-bitkitTests/Pods-bitkit-bitkitTests-frameworks-${CONFIGURATION}-input-files.xcfilelist", ); name = "[CP] Embed Pods Frameworks"; outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-bitkit/Pods-bitkit-frameworks-${CONFIGURATION}-output-files.xcfilelist", + "${PODS_ROOT}/Target Support Files/Pods-bitkit-bitkitTests/Pods-bitkit-bitkitTests-frameworks-${CONFIGURATION}-output-files.xcfilelist", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-bitkit/Pods-bitkit-frameworks.sh\"\n"; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-bitkit-bitkitTests/Pods-bitkit-bitkitTests-frameworks.sh\"\n"; showEnvVarsInLog = 0; }; - 89752D4F81DB48BD943AA3D3 /* [CP] Check Pods Manifest.lock */ = { + 63A2B0D1433274FD5C105FCE /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -372,7 +389,7 @@ 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; }; - BCCD6AE4FEE2546499FC091C /* [CP] Check Pods Manifest.lock */ = { + ACC2357292E3721C62513819 /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -394,38 +411,21 @@ 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; }; - DE803CBF219BB8CA927A7A77 /* [CP] Embed Pods Frameworks */ = { + C2A0B633861DD92ABB0F7903 /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-bitkit-bitkitTests/Pods-bitkit-bitkitTests-frameworks-${CONFIGURATION}-input-files.xcfilelist", + "${PODS_ROOT}/Target Support Files/Pods-bitkit/Pods-bitkit-frameworks-${CONFIGURATION}-input-files.xcfilelist", ); name = "[CP] Embed Pods Frameworks"; outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-bitkit-bitkitTests/Pods-bitkit-bitkitTests-frameworks-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-bitkit-bitkitTests/Pods-bitkit-bitkitTests-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; - E10313BAF94930358C10F740 /* [CP] Copy Pods Resources */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-bitkit-bitkitTests/Pods-bitkit-bitkitTests-resources-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Copy Pods Resources"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-bitkit-bitkitTests/Pods-bitkit-bitkitTests-resources-${CONFIGURATION}-output-files.xcfilelist", + "${PODS_ROOT}/Target Support Files/Pods-bitkit/Pods-bitkit-frameworks-${CONFIGURATION}-output-files.xcfilelist", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-bitkit-bitkitTests/Pods-bitkit-bitkitTests-resources.sh\"\n"; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-bitkit/Pods-bitkit-frameworks.sh\"\n"; showEnvVarsInLog = 0; }; /* End PBXShellScriptBuildPhase section */ @@ -461,7 +461,7 @@ /* Begin XCBuildConfiguration section */ 00E356F61AD99517003FC87E /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 05E937B40552E367A3B5B9EB /* Pods-bitkit-bitkitTests.debug.xcconfig */; + baseConfigurationReference = 3B63A2DDCD9A4BC13D8C7C78 /* Pods-bitkit-bitkitTests.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; BUNDLE_LOADER = "$(TEST_HOST)"; @@ -489,7 +489,7 @@ }; 00E356F71AD99517003FC87E /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 3B9A6C20A7874631A4ADC607 /* Pods-bitkit-bitkitTests.release.xcconfig */; + baseConfigurationReference = 25219B5606FB907D158A4444 /* Pods-bitkit-bitkitTests.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; BUNDLE_LOADER = "$(TEST_HOST)"; @@ -514,12 +514,12 @@ }; 13B07F941A680F5B00A75B9A /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = AC10B20661F2D38D40AE19E9 /* Pods-bitkit.debug.xcconfig */; + baseConfigurationReference = E2B4827AFFBF565147F51613 /* Pods-bitkit.debug.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIconOrange; ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS = YES; CLANG_ENABLE_MODULES = YES; - CURRENT_PROJECT_VERSION = 134; + CURRENT_PROJECT_VERSION = 130; DEVELOPMENT_TEAM = KYH47R284B; ENABLE_BITCODE = NO; INFOPLIST_FILE = bitkit/Info.plist; @@ -530,7 +530,7 @@ "$(inherited)", "@executable_path/Frameworks", ); - MARKETING_VERSION = 1.0.4; + MARKETING_VERSION = 1.0.3; OTHER_LDFLAGS = ( "$(inherited)", "-ObjC", @@ -546,12 +546,12 @@ }; 13B07F951A680F5B00A75B9A /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 87D1E3D644A0F2DFD2E9F357 /* Pods-bitkit.release.xcconfig */; + baseConfigurationReference = 9C3806FEE36A597CF881ABF5 /* Pods-bitkit.release.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIconOrange; ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS = YES; CLANG_ENABLE_MODULES = YES; - CURRENT_PROJECT_VERSION = 134; + CURRENT_PROJECT_VERSION = 130; DEVELOPMENT_TEAM = KYH47R284B; ENABLE_BITCODE = NO; INFOPLIST_FILE = bitkit/Info.plist; @@ -562,7 +562,7 @@ "$(inherited)", "@executable_path/Frameworks", ); - MARKETING_VERSION = 1.0.4; + MARKETING_VERSION = 1.0.3; OTHER_LDFLAGS = ( "$(inherited)", "-ObjC", diff --git a/package.json b/package.json index 9b7c488c1..d023285b6 100644 --- a/package.json +++ b/package.json @@ -51,7 +51,7 @@ "@synonymdev/feeds": "3.0.0", "@synonymdev/ledger": "0.0.5", "@synonymdev/react-native-keychain": "8.2.2", - "@synonymdev/react-native-ldk": "0.0.150", + "@synonymdev/react-native-ldk": "0.0.152", "@synonymdev/react-native-lnurl": "0.0.10", "@synonymdev/result": "0.0.2", "@synonymdev/slashtags-keychain": "1.0.0", @@ -91,7 +91,6 @@ "react-native-device-info": "11.1.0", "react-native-dotenv": "3.4.11", "react-native-draggable-flatlist": "4.0.1", - "react-native-exit-app": "2.0.0", "react-native-fetch-api": "3.0.0", "react-native-fs": "2.20.0", "react-native-gesture-handler": "2.15.0", diff --git a/src/navigation/settings/SettingsNavigator.tsx b/src/navigation/settings/SettingsNavigator.tsx index b42e01b74..0656f0810 100644 --- a/src/navigation/settings/SettingsNavigator.tsx +++ b/src/navigation/settings/SettingsNavigator.tsx @@ -15,6 +15,7 @@ import CoinSelectPreference from '../../screens/Settings/CoinSelectPreference'; import PaymentPreference from '../../screens/Settings/PaymentPreference'; import AddressTypePreference from '../../screens/Settings/AddressTypePreference'; import DevSettings from '../../screens/Settings/DevSettings'; +import LdkDebug from '../../screens/Settings/DevSettings/LdkDebug'; import AddressViewer from '../../screens/Settings/AddressViewer'; import LightningNodeInfo from '../../screens/Settings/Lightning/LightningNodeInfo'; import UnitSettings from '../../screens/Settings/Unit'; @@ -91,6 +92,7 @@ export type SettingsStackParamList = { PaymentPreference: undefined; AddressTypePreference: undefined; DevSettings: undefined; + LdkDebug: undefined; ExportToPhone: undefined; ResetAndRestore: undefined; BitcoinNetworkSelection: undefined; @@ -160,6 +162,7 @@ const SettingsNavigator = (): ReactElement => { component={AddressTypePreference} /> + diff --git a/src/screens/AppError.tsx b/src/screens/AppError.tsx index 2d17131f7..1c5cbff5a 100644 --- a/src/screens/AppError.tsx +++ b/src/screens/AppError.tsx @@ -8,7 +8,6 @@ import { Image, Platform, } from 'react-native'; -import RNExitApp from 'react-native-exit-app'; import { SafeAreaProvider } from 'react-native-safe-area-context'; import SafeAreaInset from '../components/SafeAreaInset'; @@ -20,10 +19,6 @@ const imageSrc = require('../assets/illustrations/cross.png'); type ReactError = Error & ErrorInfo; const AppError = ({ error }: { error: ReactError }): ReactElement => { - const onClose = (): void => { - RNExitApp.exitApp(); - }; - const onSend = async (): Promise => { const message = `Error: ${error.message} \nComponent Stack: ${error.componentStack} @@ -62,13 +57,6 @@ const AppError = ({ error }: { error: ReactError }): ReactElement => { - - Close Bitkit - { - RNExitApp.exitApp(); - }; - return ( @@ -141,15 +136,6 @@ const Recovery = ({ onPress={onWipeApp} /> - - -