mirror of
https://github.com/minibits-cash/minibits_wallet.git
synced 2026-10-05 11:18:24 +00:00
iOS build cont...
This commit is contained in:
@@ -95,8 +95,8 @@ android {
|
|||||||
applicationId "com.minibits_wallet"
|
applicationId "com.minibits_wallet"
|
||||||
minSdkVersion rootProject.ext.minSdkVersion
|
minSdkVersion rootProject.ext.minSdkVersion
|
||||||
targetSdkVersion rootProject.ext.targetSdkVersion
|
targetSdkVersion rootProject.ext.targetSdkVersion
|
||||||
versionCode 58028
|
versionCode 58029
|
||||||
versionName "0.2.0"
|
versionName "0.2.1"
|
||||||
}
|
}
|
||||||
|
|
||||||
splits {
|
splits {
|
||||||
|
|||||||
Binary file not shown.
|
After Width: | Height: | Size: 43 KiB |
@@ -0,0 +1,13 @@
|
|||||||
|
{
|
||||||
|
"migIndex": 1,
|
||||||
|
"data": [
|
||||||
|
{
|
||||||
|
"path": "assets/fonts/Gluten-Regular.ttf",
|
||||||
|
"sha1": "96270757924e60e26763e8814aaa2000f470d352"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "assets/icons/nostr.png",
|
||||||
|
"sha1": "c4558cc304ea0d6e908c7f43d8c7026041daaf3e"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -1,30 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
||||||
<plist version="1.0">
|
|
||||||
<dict>
|
|
||||||
<key>API_KEY</key>
|
|
||||||
<string>AIzaSyDSKDNb5MSVhfZmGYQzBaQj49h11m-VXeI</string>
|
|
||||||
<key>GCM_SENDER_ID</key>
|
|
||||||
<string>869445547578</string>
|
|
||||||
<key>PLIST_VERSION</key>
|
|
||||||
<string>1</string>
|
|
||||||
<key>BUNDLE_ID</key>
|
|
||||||
<string>com.ios.minibits-wallet</string>
|
|
||||||
<key>PROJECT_ID</key>
|
|
||||||
<string>minibits-prod</string>
|
|
||||||
<key>STORAGE_BUCKET</key>
|
|
||||||
<string>minibits-prod.firebasestorage.app</string>
|
|
||||||
<key>IS_ADS_ENABLED</key>
|
|
||||||
<false></false>
|
|
||||||
<key>IS_ANALYTICS_ENABLED</key>
|
|
||||||
<false></false>
|
|
||||||
<key>IS_APPINVITE_ENABLED</key>
|
|
||||||
<true></true>
|
|
||||||
<key>IS_GCM_ENABLED</key>
|
|
||||||
<true></true>
|
|
||||||
<key>IS_SIGNIN_ENABLED</key>
|
|
||||||
<true></true>
|
|
||||||
<key>GOOGLE_APP_ID</key>
|
|
||||||
<string>1:869445547578:ios:63fd5c3b7fc113072ae703</string>
|
|
||||||
</dict>
|
|
||||||
</plist>
|
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
{
|
||||||
|
"migIndex": 1,
|
||||||
|
"data": [
|
||||||
|
{
|
||||||
|
"path": "assets/fonts/Gluten-Regular.ttf",
|
||||||
|
"sha1": "96270757924e60e26763e8814aaa2000f470d352"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "assets/icons/nostr.png",
|
||||||
|
"sha1": "c4558cc304ea0d6e908c7f43d8c7026041daaf3e"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -11,7 +11,9 @@
|
|||||||
761780ED2CA45674006654EE /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 761780EC2CA45674006654EE /* AppDelegate.swift */; };
|
761780ED2CA45674006654EE /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 761780EC2CA45674006654EE /* AppDelegate.swift */; };
|
||||||
81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */; };
|
81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */; };
|
||||||
902F38392D92C792005DB998 /* OpenSSL.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 902F38382D92C792005DB998 /* OpenSSL.xcframework */; };
|
902F38392D92C792005DB998 /* OpenSSL.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 902F38382D92C792005DB998 /* OpenSSL.xcframework */; };
|
||||||
90C59D872D9195980061E3E1 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 90C59D862D9195980061E3E1 /* GoogleService-Info.plist */; };
|
9044DC252D95937D00F918A6 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 9044DC242D95937D00F918A6 /* GoogleService-Info.plist */; };
|
||||||
|
A1B9A6F7058C4F12AB677FD4 /* nostr.png in Resources */ = {isa = PBXBuildFile; fileRef = AB8A46AD84194C2583FF9193 /* nostr.png */; };
|
||||||
|
C3AB98FDBCF446F99A4EA648 /* Gluten-Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 6DA8A3418B7A4B348B67B9E7 /* Gluten-Regular.ttf */; };
|
||||||
CD7DC745CFA9F47C2D6FFA1D /* Pods_minibits_wallet.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4ACC08249CA13DFDBBBD7A8B /* Pods_minibits_wallet.framework */; };
|
CD7DC745CFA9F47C2D6FFA1D /* Pods_minibits_wallet.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4ACC08249CA13DFDBBBD7A8B /* Pods_minibits_wallet.framework */; };
|
||||||
D610B97F2318E8AB9D0962D2 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB81A68108700A75B9A /* PrivacyInfo.xcprivacy */; };
|
D610B97F2318E8AB9D0962D2 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB81A68108700A75B9A /* PrivacyInfo.xcprivacy */; };
|
||||||
/* End PBXBuildFile section */
|
/* End PBXBuildFile section */
|
||||||
@@ -24,10 +26,13 @@
|
|||||||
3B4392A12AC88292D35C810B /* Pods-minibits_wallet.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-minibits_wallet.debug.xcconfig"; path = "Target Support Files/Pods-minibits_wallet/Pods-minibits_wallet.debug.xcconfig"; sourceTree = "<group>"; };
|
3B4392A12AC88292D35C810B /* Pods-minibits_wallet.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-minibits_wallet.debug.xcconfig"; path = "Target Support Files/Pods-minibits_wallet/Pods-minibits_wallet.debug.xcconfig"; sourceTree = "<group>"; };
|
||||||
4ACC08249CA13DFDBBBD7A8B /* Pods_minibits_wallet.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_minibits_wallet.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
4ACC08249CA13DFDBBBD7A8B /* Pods_minibits_wallet.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_minibits_wallet.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
5709B34CF0A7D63546082F79 /* Pods-minibits_wallet.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-minibits_wallet.release.xcconfig"; path = "Target Support Files/Pods-minibits_wallet/Pods-minibits_wallet.release.xcconfig"; sourceTree = "<group>"; };
|
5709B34CF0A7D63546082F79 /* Pods-minibits_wallet.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-minibits_wallet.release.xcconfig"; path = "Target Support Files/Pods-minibits_wallet/Pods-minibits_wallet.release.xcconfig"; sourceTree = "<group>"; };
|
||||||
|
6DA8A3418B7A4B348B67B9E7 /* Gluten-Regular.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "Gluten-Regular.ttf"; path = "../assets/fonts/Gluten-Regular.ttf"; sourceTree = "<group>"; };
|
||||||
761780EC2CA45674006654EE /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = AppDelegate.swift; path = minibits_wallet/AppDelegate.swift; sourceTree = "<group>"; };
|
761780EC2CA45674006654EE /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = AppDelegate.swift; path = minibits_wallet/AppDelegate.swift; sourceTree = "<group>"; };
|
||||||
81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = LaunchScreen.storyboard; path = minibits_wallet/LaunchScreen.storyboard; sourceTree = "<group>"; };
|
81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = LaunchScreen.storyboard; path = minibits_wallet/LaunchScreen.storyboard; sourceTree = "<group>"; };
|
||||||
902F38382D92C792005DB998 /* OpenSSL.xcframework */ = {isa = PBXFileReference; expectedSignature = "AppleDeveloperProgram:67RAULRX93:Marcin Krzyzanowski"; lastKnownFileType = wrapper.xcframework; name = OpenSSL.xcframework; path = "Pods/OpenSSL-Universal/OpenSSL.xcframework"; sourceTree = "<group>"; };
|
902F38382D92C792005DB998 /* OpenSSL.xcframework */ = {isa = PBXFileReference; expectedSignature = "AppleDeveloperProgram:67RAULRX93:Marcin Krzyzanowski"; lastKnownFileType = wrapper.xcframework; name = OpenSSL.xcframework; path = "Pods/OpenSSL-Universal/OpenSSL.xcframework"; sourceTree = "<group>"; };
|
||||||
90C59D862D9195980061E3E1 /* GoogleService-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = "<group>"; };
|
9044DC232D9556F600F918A6 /* minibits_wallet.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; name = minibits_wallet.entitlements; path = minibits_wallet/minibits_wallet.entitlements; sourceTree = "<group>"; };
|
||||||
|
9044DC242D95937D00F918A6 /* GoogleService-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = "GoogleService-Info.plist"; path = "minibits_wallet/GoogleService-Info.plist"; sourceTree = "<group>"; };
|
||||||
|
AB8A46AD84194C2583FF9193 /* nostr.png */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = nostr.png; path = ../assets/icons/nostr.png; sourceTree = "<group>"; };
|
||||||
ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; };
|
ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; };
|
||||||
/* End PBXFileReference section */
|
/* End PBXFileReference section */
|
||||||
|
|
||||||
@@ -47,6 +52,7 @@
|
|||||||
13B07FAE1A68108700A75B9A /* minibits_wallet */ = {
|
13B07FAE1A68108700A75B9A /* minibits_wallet */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
9044DC232D9556F600F918A6 /* minibits_wallet.entitlements */,
|
||||||
13B07FB51A68108700A75B9A /* Images.xcassets */,
|
13B07FB51A68108700A75B9A /* Images.xcassets */,
|
||||||
761780EC2CA45674006654EE /* AppDelegate.swift */,
|
761780EC2CA45674006654EE /* AppDelegate.swift */,
|
||||||
13B07FB61A68108700A75B9A /* Info.plist */,
|
13B07FB61A68108700A75B9A /* Info.plist */,
|
||||||
@@ -66,6 +72,15 @@
|
|||||||
name = Frameworks;
|
name = Frameworks;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
};
|
};
|
||||||
|
4B24E47762034A51AEE63594 /* Resources */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
6DA8A3418B7A4B348B67B9E7 /* Gluten-Regular.ttf */,
|
||||||
|
AB8A46AD84194C2583FF9193 /* nostr.png */,
|
||||||
|
);
|
||||||
|
name = Resources;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
832341AE1AAA6A7D00B99B32 /* Libraries */ = {
|
832341AE1AAA6A7D00B99B32 /* Libraries */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
@@ -76,12 +91,13 @@
|
|||||||
83CBB9F61A601CBA00E9B192 = {
|
83CBB9F61A601CBA00E9B192 = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
90C59D862D9195980061E3E1 /* GoogleService-Info.plist */,
|
9044DC242D95937D00F918A6 /* GoogleService-Info.plist */,
|
||||||
13B07FAE1A68108700A75B9A /* minibits_wallet */,
|
13B07FAE1A68108700A75B9A /* minibits_wallet */,
|
||||||
832341AE1AAA6A7D00B99B32 /* Libraries */,
|
832341AE1AAA6A7D00B99B32 /* Libraries */,
|
||||||
83CBBA001A601CBA00E9B192 /* Products */,
|
83CBBA001A601CBA00E9B192 /* Products */,
|
||||||
2D16E6871FA4F8E400B85C8A /* Frameworks */,
|
2D16E6871FA4F8E400B85C8A /* Frameworks */,
|
||||||
BBD78D7AC51CEA395F1C20DB /* Pods */,
|
BBD78D7AC51CEA395F1C20DB /* Pods */,
|
||||||
|
4B24E47762034A51AEE63594 /* Resources */,
|
||||||
);
|
);
|
||||||
indentWidth = 2;
|
indentWidth = 2;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -168,9 +184,11 @@
|
|||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
files = (
|
files = (
|
||||||
81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */,
|
81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */,
|
||||||
90C59D872D9195980061E3E1 /* GoogleService-Info.plist in Resources */,
|
|
||||||
13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */,
|
13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */,
|
||||||
D610B97F2318E8AB9D0962D2 /* PrivacyInfo.xcprivacy in Resources */,
|
D610B97F2318E8AB9D0962D2 /* PrivacyInfo.xcprivacy in Resources */,
|
||||||
|
C3AB98FDBCF446F99A4EA648 /* Gluten-Regular.ttf in Resources */,
|
||||||
|
A1B9A6F7058C4F12AB677FD4 /* nostr.png in Resources */,
|
||||||
|
9044DC252D95937D00F918A6 /* GoogleService-Info.plist in Resources */,
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
@@ -282,6 +300,7 @@
|
|||||||
buildSettings = {
|
buildSettings = {
|
||||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
|
CODE_SIGN_ENTITLEMENTS = minibits_wallet/minibits_wallet.entitlements;
|
||||||
CURRENT_PROJECT_VERSION = 1;
|
CURRENT_PROJECT_VERSION = 1;
|
||||||
DEVELOPMENT_TEAM = GR2ZKMCLAM;
|
DEVELOPMENT_TEAM = GR2ZKMCLAM;
|
||||||
ENABLE_BITCODE = NO;
|
ENABLE_BITCODE = NO;
|
||||||
@@ -297,7 +316,7 @@
|
|||||||
"-ObjC",
|
"-ObjC",
|
||||||
"-lc++",
|
"-lc++",
|
||||||
);
|
);
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = "com.ios.minibits-wallet";
|
PRODUCT_BUNDLE_IDENTIFIER = cash.minibits.wallet;
|
||||||
PRODUCT_NAME = minibits_wallet;
|
PRODUCT_NAME = minibits_wallet;
|
||||||
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
||||||
SWIFT_VERSION = 5.0;
|
SWIFT_VERSION = 5.0;
|
||||||
@@ -311,6 +330,7 @@
|
|||||||
buildSettings = {
|
buildSettings = {
|
||||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
|
CODE_SIGN_ENTITLEMENTS = minibits_wallet/minibits_wallet.entitlements;
|
||||||
CURRENT_PROJECT_VERSION = 1;
|
CURRENT_PROJECT_VERSION = 1;
|
||||||
DEVELOPMENT_TEAM = GR2ZKMCLAM;
|
DEVELOPMENT_TEAM = GR2ZKMCLAM;
|
||||||
INFOPLIST_FILE = minibits_wallet/Info.plist;
|
INFOPLIST_FILE = minibits_wallet/Info.plist;
|
||||||
@@ -325,7 +345,7 @@
|
|||||||
"-ObjC",
|
"-ObjC",
|
||||||
"-lc++",
|
"-lc++",
|
||||||
);
|
);
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = "com.ios.minibits-wallet";
|
PRODUCT_BUNDLE_IDENTIFIER = cash.minibits.wallet;
|
||||||
PRODUCT_NAME = minibits_wallet;
|
PRODUCT_NAME = minibits_wallet;
|
||||||
SWIFT_VERSION = 5.0;
|
SWIFT_VERSION = 5.0;
|
||||||
VERSIONING_SYSTEM = "apple-generic";
|
VERSIONING_SYSTEM = "apple-generic";
|
||||||
@@ -413,10 +433,7 @@
|
|||||||
"-DFOLLY_CFG_NO_COROUTINES=1",
|
"-DFOLLY_CFG_NO_COROUTINES=1",
|
||||||
"-DFOLLY_HAVE_CLOCK_GETTIME=1",
|
"-DFOLLY_HAVE_CLOCK_GETTIME=1",
|
||||||
);
|
);
|
||||||
OTHER_LDFLAGS = (
|
OTHER_LDFLAGS = "$(inherited) ";
|
||||||
"$(inherited)",
|
|
||||||
" ",
|
|
||||||
);
|
|
||||||
REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native";
|
REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native";
|
||||||
SDKROOT = iphoneos;
|
SDKROOT = iphoneos;
|
||||||
SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) DEBUG";
|
SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) DEBUG";
|
||||||
@@ -497,10 +514,7 @@
|
|||||||
"-DFOLLY_CFG_NO_COROUTINES=1",
|
"-DFOLLY_CFG_NO_COROUTINES=1",
|
||||||
"-DFOLLY_HAVE_CLOCK_GETTIME=1",
|
"-DFOLLY_HAVE_CLOCK_GETTIME=1",
|
||||||
);
|
);
|
||||||
OTHER_LDFLAGS = (
|
OTHER_LDFLAGS = "$(inherited) ";
|
||||||
"$(inherited)",
|
|
||||||
" ",
|
|
||||||
);
|
|
||||||
REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native";
|
REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native";
|
||||||
SDKROOT = iphoneos;
|
SDKROOT = iphoneos;
|
||||||
SWIFT_COMPILATION_MODE = wholemodule;
|
SWIFT_COMPILATION_MODE = wholemodule;
|
||||||
|
|||||||
Binary file not shown.
|
After Width: | Height: | Size: 268 KiB |
@@ -1,48 +1,9 @@
|
|||||||
{
|
{
|
||||||
"images" : [
|
"images" : [
|
||||||
{
|
{
|
||||||
"idiom" : "iphone",
|
"filename" : "1024.png",
|
||||||
"scale" : "2x",
|
"idiom" : "universal",
|
||||||
"size" : "20x20"
|
"platform" : "ios",
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "iphone",
|
|
||||||
"scale" : "3x",
|
|
||||||
"size" : "20x20"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "iphone",
|
|
||||||
"scale" : "2x",
|
|
||||||
"size" : "29x29"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "iphone",
|
|
||||||
"scale" : "3x",
|
|
||||||
"size" : "29x29"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "iphone",
|
|
||||||
"scale" : "2x",
|
|
||||||
"size" : "40x40"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "iphone",
|
|
||||||
"scale" : "3x",
|
|
||||||
"size" : "40x40"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "iphone",
|
|
||||||
"scale" : "2x",
|
|
||||||
"size" : "60x60"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "iphone",
|
|
||||||
"scale" : "3x",
|
|
||||||
"size" : "60x60"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "ios-marketing",
|
|
||||||
"scale" : "1x",
|
|
||||||
"size" : "1024x1024"
|
"size" : "1024x1024"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<key>CFBundleDevelopmentRegion</key>
|
<key>CFBundleDevelopmentRegion</key>
|
||||||
<string>en</string>
|
<string>en</string>
|
||||||
<key>CFBundleDisplayName</key>
|
<key>CFBundleDisplayName</key>
|
||||||
<string>minibits_wallet</string>
|
<string>Minibits</string>
|
||||||
<key>CFBundleExecutable</key>
|
<key>CFBundleExecutable</key>
|
||||||
<string>$(EXECUTABLE_NAME)</string>
|
<string>$(EXECUTABLE_NAME)</string>
|
||||||
<key>CFBundleIdentifier</key>
|
<key>CFBundleIdentifier</key>
|
||||||
@@ -26,14 +26,26 @@
|
|||||||
<true/>
|
<true/>
|
||||||
<key>NSAppTransportSecurity</key>
|
<key>NSAppTransportSecurity</key>
|
||||||
<dict>
|
<dict>
|
||||||
<!-- Do not change NSAllowsArbitraryLoads to true, or you will risk app rejection! -->
|
|
||||||
<key>NSAllowsArbitraryLoads</key>
|
<key>NSAllowsArbitraryLoads</key>
|
||||||
<false/>
|
<false/>
|
||||||
<key>NSAllowsLocalNetworking</key>
|
<key>NSAllowsLocalNetworking</key>
|
||||||
<true/>
|
<true/>
|
||||||
</dict>
|
</dict>
|
||||||
|
<key>NSCameraUsageDescription</key>
|
||||||
|
<string>This app requires access to the camera to scan QR codes.</string>
|
||||||
<key>NSLocationWhenInUseUsageDescription</key>
|
<key>NSLocationWhenInUseUsageDescription</key>
|
||||||
<string></string>
|
<string></string>
|
||||||
|
<key>NSUserNotificationUsageDescription</key>
|
||||||
|
<string>This app uses notifications to keep you updated with incoming transactions.</string>
|
||||||
|
<key>UIAppFonts</key>
|
||||||
|
<array>
|
||||||
|
<string>Gluten-Regular.ttf</string>
|
||||||
|
</array>
|
||||||
|
<key>UIBackgroundModes</key>
|
||||||
|
<array>
|
||||||
|
<string>fetch</string>
|
||||||
|
<string>remote-notification</string>
|
||||||
|
</array>
|
||||||
<key>UILaunchStoryboardName</key>
|
<key>UILaunchStoryboardName</key>
|
||||||
<string>LaunchScreen</string>
|
<string>LaunchScreen</string>
|
||||||
<key>UIRequiredDeviceCapabilities</key>
|
<key>UIRequiredDeviceCapabilities</key>
|
||||||
|
|||||||
Binary file not shown.
@@ -0,0 +1,8 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>aps-environment</key>
|
||||||
|
<string>development</string>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
diff --git a/node_modules/react-native/ReactCommon/react/renderer/animations/utils.h b/node_modules/react-native/ReactCommon/react/renderer/animations/utils.h
|
||||||
|
index 41b9be9..7ffc2f4 100644
|
||||||
|
--- a/node_modules/react-native/ReactCommon/react/renderer/animations/utils.h
|
||||||
|
+++ b/node_modules/react-native/ReactCommon/react/renderer/animations/utils.h
|
||||||
|
@@ -105,15 +105,11 @@ static inline bool shouldFirstComeBeforeSecondMutation(
|
||||||
|
// must come first.
|
||||||
|
if (lhs.type == ShadowViewMutation::Type::Remove &&
|
||||||
|
lhs.parentShadowView.tag == rhs.parentShadowView.tag) {
|
||||||
|
- if (lhs.index > rhs.index) {
|
||||||
|
- return true;
|
||||||
|
- } else {
|
||||||
|
- return false;
|
||||||
|
- }
|
||||||
|
+ return lhs.index > rhs.index;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
- return false;
|
||||||
|
+ return &lhs < &rhs;
|
||||||
|
}
|
||||||
|
|
||||||
|
std::pair<Float, Float> calculateAnimationProgress(
|
||||||
+6
-3
@@ -4,8 +4,6 @@ import {
|
|||||||
APP_ENV,
|
APP_ENV,
|
||||||
SENTRY_DSN,
|
SENTRY_DSN,
|
||||||
JS_BUNDLE_VERSION,
|
JS_BUNDLE_VERSION,
|
||||||
CODEPUSH_STAGING_DEPLOYMENT_KEY,
|
|
||||||
CODEPUSH_PRODUCTION_DEPLOYMENT_KEY,
|
|
||||||
ANDROID_VERSION_NAME,
|
ANDROID_VERSION_NAME,
|
||||||
} from '@env'
|
} from '@env'
|
||||||
// import codePush from 'react-native-code-push'
|
// import codePush from 'react-native-code-push'
|
||||||
@@ -26,7 +24,7 @@ import Config from './config'
|
|||||||
import {log} from './services'
|
import {log} from './services'
|
||||||
import {Env} from './utils/envtypes'
|
import {Env} from './utils/envtypes'
|
||||||
import AppError from './utils/AppError'
|
import AppError from './utils/AppError'
|
||||||
import { Image, TextStyle, View } from 'react-native'
|
import { Image, TextStyle, View, Platform, UIManager } from 'react-native'
|
||||||
import { spacing, typography } from './theme'
|
import { spacing, typography } from './theme'
|
||||||
import { displayName } from '../app.json'
|
import { displayName } from '../app.json'
|
||||||
import { Text } from './components/Text'
|
import { Text } from './components/Text'
|
||||||
@@ -52,6 +50,11 @@ if (!__DEV__) {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (Platform.OS === 'android' &&
|
||||||
|
UIManager.setLayoutAnimationEnabledExperimental) {
|
||||||
|
UIManager.setLayoutAnimationEnabledExperimental(true)
|
||||||
|
}
|
||||||
|
|
||||||
function App() {
|
function App() {
|
||||||
|
|
||||||
const {userSettingsStore, relaysStore} = useStores()
|
const {userSettingsStore, relaysStore} = useStores()
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ const maxLines = 50
|
|||||||
export const CollapsibleText = (props: CollapsibleProps) => {
|
export const CollapsibleText = (props: CollapsibleProps) => {
|
||||||
const [collapsed, setCollapsed] = useState(props?.collapsed ?? false)
|
const [collapsed, setCollapsed] = useState(props?.collapsed ?? false)
|
||||||
const toggleCollapse = () => {
|
const toggleCollapse = () => {
|
||||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
LayoutAnimation.easeInEaseOut()
|
||||||
setCollapsed(!collapsed)
|
setCollapsed(!collapsed)
|
||||||
}
|
}
|
||||||
const textDim = useThemeColor('textDim')
|
const textDim = useThemeColor('textDim')
|
||||||
|
|||||||
@@ -7,11 +7,6 @@ import { isObj } from '@cashu/cashu-ts/src/utils'
|
|||||||
import JSONTree from 'react-native-json-tree'
|
import JSONTree from 'react-native-json-tree'
|
||||||
import Clipboard from '@react-native-clipboard/clipboard'
|
import Clipboard from '@react-native-clipboard/clipboard'
|
||||||
|
|
||||||
if (Platform.OS === 'android' &&
|
|
||||||
UIManager.setLayoutAnimationEnabledExperimental) {
|
|
||||||
UIManager.setLayoutAnimationEnabledExperimental(true)
|
|
||||||
}
|
|
||||||
|
|
||||||
type ErrorModalProps = {
|
type ErrorModalProps = {
|
||||||
error: AppError
|
error: AppError
|
||||||
}
|
}
|
||||||
@@ -28,7 +23,7 @@ export const ErrorModal: FC<ErrorModalProps> = function ({ error }) {
|
|||||||
}, [error])
|
}, [error])
|
||||||
|
|
||||||
const toggleParams = () => {
|
const toggleParams = () => {
|
||||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
LayoutAnimation.easeInEaseOut()
|
||||||
setIsParamsVisible(previousState => !previousState)
|
setIsParamsVisible(previousState => !previousState)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -292,19 +292,20 @@ const $separatorBottom: ViewStyle = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const $textStyle: TextStyle = {
|
const $textStyle: TextStyle = {
|
||||||
// alignSelf: 'flex-start',
|
alignSelf: 'flex-start',
|
||||||
paddingVertical: spacing.extraSmall,
|
// paddingVertical: spacing.extraSmall,
|
||||||
// alignSelf: "center",
|
|
||||||
textAlignVertical: 'center',
|
textAlignVertical: 'center',
|
||||||
flexGrow: 1,
|
// borderColor: 'red',
|
||||||
flexShrink: 1,
|
// borderWidth: 1,
|
||||||
}
|
}
|
||||||
|
|
||||||
const $subTextContainer: ViewStyle = {
|
const $subTextContainer: ViewStyle = {
|
||||||
flex: 1,
|
flex: 1,
|
||||||
flexDirection: 'column',
|
flexDirection: 'column',
|
||||||
// borderColor: 'red',
|
justifyContent: 'center',
|
||||||
|
// borderColor: 'green',
|
||||||
// borderWidth: 1,
|
// borderWidth: 1,
|
||||||
|
alignSelf: 'stretch',
|
||||||
}
|
}
|
||||||
|
|
||||||
const $subTextStyle: TextStyle = {
|
const $subTextStyle: TextStyle = {
|
||||||
|
|||||||
@@ -105,6 +105,10 @@ export const MintsStoreModel = types
|
|||||||
}))
|
}))
|
||||||
.actions(self => ({
|
.actions(self => ({
|
||||||
addMint: flow(function* addMint(mintUrl: string) {
|
addMint: flow(function* addMint(mintUrl: string) {
|
||||||
|
if(!mintUrl) {
|
||||||
|
throw new AppError(Err.VALIDATION_ERROR, 'Mint URL is required.')
|
||||||
|
}
|
||||||
|
|
||||||
if(!mintUrl.includes('.onion') && !mintUrl.startsWith('https')) {
|
if(!mintUrl.includes('.onion') && !mintUrl.startsWith('https')) {
|
||||||
throw new AppError(Err.VALIDATION_ERROR, 'Mint URL needs to start with https.')
|
throw new AppError(Err.VALIDATION_ERROR, 'Mint URL needs to start with https.')
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,13 +17,12 @@ import {
|
|||||||
import { debounce } from "lodash"
|
import { debounce } from "lodash"
|
||||||
import * as Sentry from '@sentry/react-native'
|
import * as Sentry from '@sentry/react-native'
|
||||||
import type {RootStore} from '../RootStore'
|
import type {RootStore} from '../RootStore'
|
||||||
import {KeyChain, MinibitsClient, MMKVStorage} from '../../services'
|
import {KeyChain, MMKVStorage} from '../../services'
|
||||||
import {Database} from '../../services'
|
import {Database} from '../../services'
|
||||||
import { log } from '../../services/logService'
|
import { log } from '../../services/logService'
|
||||||
import { rootStoreModelVersion } from '../RootStore'
|
import { rootStoreModelVersion } from '../RootStore'
|
||||||
import AppError, { Err } from '../../utils/AppError'
|
import AppError, { Err } from '../../utils/AppError'
|
||||||
import { LogLevel } from '../../services/log/logTypes'
|
import { LogLevel } from '../../services/log/logTypes'
|
||||||
import { MintStatus } from '../Mint'
|
|
||||||
import { CurrencyCode } from '../../services/wallet/currency'
|
import { CurrencyCode } from '../../services/wallet/currency'
|
||||||
import { ThemeCode } from '../../theme'
|
import { ThemeCode } from '../../theme'
|
||||||
|
|
||||||
@@ -79,14 +78,15 @@ export async function setupRootStore(rootStore: RootStore) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// track changes & save snapshot to the storage not more then once per second
|
// track changes & save snapshot to the storage not more then once per second
|
||||||
const saveSnapshot = debounce((snapshot) => {
|
/* const saveSnapshot = debounce((snapshot) => {
|
||||||
MMKVStorage.save(ROOT_STORAGE_KEY, snapshot)
|
MMKVStorage.save(ROOT_STORAGE_KEY, snapshot)
|
||||||
}, 1000)
|
}, 1000)*/
|
||||||
|
|
||||||
_disposer = onSnapshot(rootStore, snapshot => {
|
_disposer = onSnapshot(rootStore, snapshot => {
|
||||||
// log.trace('[setupRootStore] onSnapshot *** MMKV SHOULD SAVE ***')
|
// log.trace('[setupRootStore] onSnapshot *** MMKV SHOULD SAVE ***')
|
||||||
saveSnapshot(snapshot)
|
// saveSnapshot(snapshot)
|
||||||
// log.trace('[setupRootStore] saved', {walletStore: snapshot.walletStore})
|
// log.trace('[setupRootStore] saved', {walletStore: snapshot.walletStore})
|
||||||
|
MMKVStorage.save(ROOT_STORAGE_KEY, snapshot)
|
||||||
})
|
})
|
||||||
|
|
||||||
// run migrations if needed, needs to be after onSnapshot to be persisted
|
// run migrations if needed, needs to be after onSnapshot to be persisted
|
||||||
|
|||||||
@@ -24,11 +24,6 @@ import { toJS } from 'mobx'
|
|||||||
const defaultPublicNpub = 'npub1kvaln6tm0re4d99q9e4ma788wpvnw0jzkz595cljtfgwhldd75xsj9tkzv'
|
const defaultPublicNpub = 'npub1kvaln6tm0re4d99q9e4ma788wpvnw0jzkz595cljtfgwhldd75xsj9tkzv'
|
||||||
const maxContactsToLoad = 20
|
const maxContactsToLoad = 20
|
||||||
|
|
||||||
if (Platform.OS === 'android' &&
|
|
||||||
UIManager.setLayoutAnimationEnabledExperimental) {
|
|
||||||
UIManager.setLayoutAnimationEnabledExperimental(true)
|
|
||||||
}
|
|
||||||
|
|
||||||
export const PublicContacts = observer(function (props: {
|
export const PublicContacts = observer(function (props: {
|
||||||
paymentOption: ReceiveOption | SendOption | undefined}
|
paymentOption: ReceiveOption | SendOption | undefined}
|
||||||
) {
|
) {
|
||||||
@@ -418,13 +413,13 @@ export const PublicContacts = observer(function (props: {
|
|||||||
|
|
||||||
|
|
||||||
const collapseProfile = function () {
|
const collapseProfile = function () {
|
||||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
LayoutAnimation.easeInEaseOut()
|
||||||
setIsOwnProfileVisible(false)
|
setIsOwnProfileVisible(false)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const expandProfile = function () {
|
const expandProfile = function () {
|
||||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
LayoutAnimation.easeInEaseOut()
|
||||||
setIsOwnProfileVisible(true)
|
setIsOwnProfileVisible(true)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -37,11 +37,6 @@ import { ContactsStoreSnapshot } from '../models/ContactsStore'
|
|||||||
import { CashuMint, MintActiveKeys } from '@cashu/cashu-ts'
|
import { CashuMint, MintActiveKeys } from '@cashu/cashu-ts'
|
||||||
import { StaticScreenProps, useNavigation } from '@react-navigation/native'
|
import { StaticScreenProps, useNavigation } from '@react-navigation/native'
|
||||||
|
|
||||||
|
|
||||||
if (Platform.OS === 'android' && UIManager.setLayoutAnimationEnabledExperimental) {
|
|
||||||
UIManager.setLayoutAnimationEnabledExperimental(true)
|
|
||||||
}
|
|
||||||
|
|
||||||
type Props = StaticScreenProps<undefined>
|
type Props = StaticScreenProps<undefined>
|
||||||
|
|
||||||
export const ImportBackupScreen = observer(function ImportBackupScreen({ route }: Props) {
|
export const ImportBackupScreen = observer(function ImportBackupScreen({ route }: Props) {
|
||||||
@@ -111,7 +106,7 @@ export const ImportBackupScreen = observer(function ImportBackupScreen({ route }
|
|||||||
throw new AppError(Err.VALIDATION_ERROR, translate('backupScreen.missingMnemonicError'))
|
throw new AppError(Err.VALIDATION_ERROR, translate('backupScreen.missingMnemonicError'))
|
||||||
}
|
}
|
||||||
|
|
||||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
LayoutAnimation.easeInEaseOut()
|
||||||
|
|
||||||
if (!validateMnemonic(mnemonic, wordlist)) {
|
if (!validateMnemonic(mnemonic, wordlist)) {
|
||||||
throw new AppError(Err.VALIDATION_ERROR, translate("recoveryInvalidMnemonicError"))
|
throw new AppError(Err.VALIDATION_ERROR, translate("recoveryInvalidMnemonicError"))
|
||||||
@@ -203,7 +198,7 @@ export const ImportBackupScreen = observer(function ImportBackupScreen({ route }
|
|||||||
throw new AppError(Err.VALIDATION_ERROR, 'Missing backup.')
|
throw new AppError(Err.VALIDATION_ERROR, 'Missing backup.')
|
||||||
}
|
}
|
||||||
|
|
||||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
LayoutAnimation.easeInEaseOut()
|
||||||
|
|
||||||
const snapshot = getWalletSnapshot() // throws
|
const snapshot = getWalletSnapshot() // throws
|
||||||
|
|
||||||
|
|||||||
@@ -36,11 +36,6 @@ import { CurrencyCode, formatCurrency } from '../services/wallet/currency'
|
|||||||
import { QRShareModal } from '../components/QRShareModal'
|
import { QRShareModal } from '../components/QRShareModal'
|
||||||
import { StaticScreenProps, useNavigation } from '@react-navigation/native'
|
import { StaticScreenProps, useNavigation } from '@react-navigation/native'
|
||||||
|
|
||||||
|
|
||||||
if (Platform.OS === 'android' && UIManager.setLayoutAnimationEnabledExperimental) {
|
|
||||||
UIManager.setLayoutAnimationEnabledExperimental(true)
|
|
||||||
}
|
|
||||||
|
|
||||||
interface DetailedNutInfo {
|
interface DetailedNutInfo {
|
||||||
methods: Array<SwapMethod>;
|
methods: Array<SwapMethod>;
|
||||||
disabled: boolean;
|
disabled: boolean;
|
||||||
@@ -133,7 +128,7 @@ export const MintInfoScreen = observer(function MintInfoScreen({ route }: Props)
|
|||||||
}, [])
|
}, [])
|
||||||
|
|
||||||
const toggleLocalInfo = () => {
|
const toggleLocalInfo = () => {
|
||||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
LayoutAnimation.easeInEaseOut()
|
||||||
setIsLocalInfoVisible(!isLocalInfoVisible)
|
setIsLocalInfoVisible(!isLocalInfoVisible)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import React, { useEffect, useState } from "react"
|
import React, { useEffect, useState } from "react"
|
||||||
import { FlatList, Keyboard, LayoutAnimation, View, ViewStyle } from "react-native"
|
import { FlatList, Keyboard, LayoutAnimation, Platform, View, ViewStyle } from "react-native"
|
||||||
import { observer } from "mobx-react-lite"
|
import { observer } from "mobx-react-lite"
|
||||||
import { Button, Card} from "../../components"
|
import { Button, Card} from "../../components"
|
||||||
import { spacing } from "../../theme"
|
import { spacing } from "../../theme"
|
||||||
@@ -32,14 +32,18 @@ export const MintBalanceSelector = observer(function (props: {
|
|||||||
const keyboardDidShowListener = Keyboard.addListener(
|
const keyboardDidShowListener = Keyboard.addListener(
|
||||||
'keyboardDidShow',
|
'keyboardDidShow',
|
||||||
() => {
|
() => {
|
||||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
if(Platform.OS === 'android') {
|
||||||
|
LayoutAnimation.easeInEaseOut()
|
||||||
|
}
|
||||||
setIsKeyboardVisible(true);
|
setIsKeyboardVisible(true);
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
const keyboardDidHideListener = Keyboard.addListener(
|
const keyboardDidHideListener = Keyboard.addListener(
|
||||||
'keyboardDidHide',
|
'keyboardDidHide',
|
||||||
() => {
|
() => {
|
||||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
if(Platform.OS === 'android') {
|
||||||
|
LayoutAnimation.easeInEaseOut()
|
||||||
|
}
|
||||||
setIsKeyboardVisible(false);
|
setIsKeyboardVisible(false);
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
@@ -53,13 +57,13 @@ export const MintBalanceSelector = observer(function (props: {
|
|||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if(!props.selectedMintBalance) {
|
if(!props.selectedMintBalance) {
|
||||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
LayoutAnimation.easeInEaseOut()
|
||||||
setAllVisible(true)
|
setAllVisible(true)
|
||||||
}
|
}
|
||||||
}, [])
|
}, [])
|
||||||
|
|
||||||
const toggleAllVisible = function () {
|
const toggleAllVisible = function () {
|
||||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
LayoutAnimation.easeInEaseOut()
|
||||||
setAllVisible(!allVisible)
|
setAllVisible(!allVisible)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -17,11 +17,6 @@ import { translate } from '../i18n'
|
|||||||
import { StaticScreenProps, useNavigation } from '@react-navigation/native'
|
import { StaticScreenProps, useNavigation } from '@react-navigation/native'
|
||||||
|
|
||||||
|
|
||||||
if (Platform.OS === 'android' &&
|
|
||||||
UIManager.setLayoutAnimationEnabledExperimental) {
|
|
||||||
UIManager.setLayoutAnimationEnabledExperimental(true)
|
|
||||||
}
|
|
||||||
|
|
||||||
type Props = StaticScreenProps<{}>
|
type Props = StaticScreenProps<{}>
|
||||||
|
|
||||||
export const OwnKeysScreen = observer(function OwnKeysScreen({ route }: Props) {
|
export const OwnKeysScreen = observer(function OwnKeysScreen({ route }: Props) {
|
||||||
@@ -141,7 +136,7 @@ export const OwnKeysScreen = observer(function OwnKeysScreen({ route }: Props) {
|
|||||||
profile.name = nip05Name as string
|
profile.name = nip05Name as string
|
||||||
}
|
}
|
||||||
|
|
||||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
LayoutAnimation.easeInEaseOut()
|
||||||
|
|
||||||
log.trace('Got valid profile', profile)
|
log.trace('Got valid profile', profile)
|
||||||
setOwnProfile(profile)
|
setOwnProfile(profile)
|
||||||
|
|||||||
@@ -18,10 +18,6 @@ import { WalletProfileRecord } from '../models/WalletProfileStore'
|
|||||||
import { translate } from '../i18n'
|
import { translate } from '../i18n'
|
||||||
import { StackActions, StaticScreenProps, useNavigation } from '@react-navigation/native'
|
import { StackActions, StaticScreenProps, useNavigation } from '@react-navigation/native'
|
||||||
|
|
||||||
if (Platform.OS === 'android' && UIManager.setLayoutAnimationEnabledExperimental) {
|
|
||||||
UIManager.setLayoutAnimationEnabledExperimental(true)
|
|
||||||
}
|
|
||||||
|
|
||||||
type Props = StaticScreenProps<undefined>
|
type Props = StaticScreenProps<undefined>
|
||||||
|
|
||||||
export const RecoverWalletAddressScreen = observer(function RecoverWalletAddressScreen({ route }: Props) {
|
export const RecoverWalletAddressScreen = observer(function RecoverWalletAddressScreen({ route }: Props) {
|
||||||
@@ -52,7 +48,7 @@ export const RecoverWalletAddressScreen = observer(function RecoverWalletAddress
|
|||||||
throw new AppError(Err.VALIDATION_ERROR, translate('backupScreen.missingMnemonicError'))
|
throw new AppError(Err.VALIDATION_ERROR, translate('backupScreen.missingMnemonicError'))
|
||||||
}
|
}
|
||||||
|
|
||||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
LayoutAnimation.easeInEaseOut()
|
||||||
|
|
||||||
if (!validateMnemonic(mnemonic, wordlist)) {
|
if (!validateMnemonic(mnemonic, wordlist)) {
|
||||||
throw new AppError(Err.VALIDATION_ERROR, translate("recoveryInvalidMnemonicError"))
|
throw new AppError(Err.VALIDATION_ERROR, translate("recoveryInvalidMnemonicError"))
|
||||||
|
|||||||
@@ -43,10 +43,6 @@ import { WalletProfileRecord } from '../models/WalletProfileStore'
|
|||||||
import { MnemonicInput } from './Recovery/MnemonicInput'
|
import { MnemonicInput } from './Recovery/MnemonicInput'
|
||||||
import { StaticScreenProps, useNavigation } from '@react-navigation/native'
|
import { StaticScreenProps, useNavigation } from '@react-navigation/native'
|
||||||
|
|
||||||
if (Platform.OS === 'android' && UIManager.setLayoutAnimationEnabledExperimental) {
|
|
||||||
UIManager.setLayoutAnimationEnabledExperimental(true)
|
|
||||||
}
|
|
||||||
|
|
||||||
const RESTORE_INDEX_INTERVAL = 50
|
const RESTORE_INDEX_INTERVAL = 50
|
||||||
|
|
||||||
type Props = StaticScreenProps<undefined>
|
type Props = StaticScreenProps<undefined>
|
||||||
@@ -143,7 +139,7 @@ export const SeedRecoveryScreen = observer(function SeedRecoveryScreen({ route }
|
|||||||
throw new AppError(Err.VALIDATION_ERROR, translate('backupScreen.missingMnemonicError'))
|
throw new AppError(Err.VALIDATION_ERROR, translate('backupScreen.missingMnemonicError'))
|
||||||
}
|
}
|
||||||
|
|
||||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
LayoutAnimation.easeInEaseOut()
|
||||||
|
|
||||||
if (!validateMnemonic(mnemonic, wordlist)) {
|
if (!validateMnemonic(mnemonic, wordlist)) {
|
||||||
throw new AppError(Err.VALIDATION_ERROR, translate("recoveryInvalidMnemonicError"))
|
throw new AppError(Err.VALIDATION_ERROR, translate("recoveryInvalidMnemonicError"))
|
||||||
|
|||||||
@@ -71,11 +71,6 @@ export enum SendOption {
|
|||||||
// DONATION = 'DONATION',
|
// DONATION = 'DONATION',
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Platform.OS === 'android' &&
|
|
||||||
UIManager.setLayoutAnimationEnabledExperimental) {
|
|
||||||
UIManager.setLayoutAnimationEnabledExperimental(true)
|
|
||||||
}
|
|
||||||
|
|
||||||
type Props = StaticScreenProps<{
|
type Props = StaticScreenProps<{
|
||||||
unit: MintUnit,
|
unit: MintUnit,
|
||||||
paymentOption?: SendOption,
|
paymentOption?: SendOption,
|
||||||
@@ -549,7 +544,7 @@ export const SendScreen = observer(function SendScreen({ route }: Props) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
LayoutAnimation.easeInEaseOut()
|
||||||
|
|
||||||
setAmountToSend(`${numbro(amountToSend).format({thousandSeparated: true, mantissa: getCurrency(unitRef.current).mantissa})}`)
|
setAmountToSend(`${numbro(amountToSend).format({thousandSeparated: true, mantissa: getCurrency(unitRef.current).mantissa})}`)
|
||||||
setAvailableMintBalances(availableBalances)
|
setAvailableMintBalances(availableBalances)
|
||||||
@@ -568,7 +563,7 @@ export const SendScreen = observer(function SendScreen({ route }: Props) {
|
|||||||
|
|
||||||
|
|
||||||
const onMemoEndEditing = function () {
|
const onMemoEndEditing = function () {
|
||||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
LayoutAnimation.easeInEaseOut()
|
||||||
|
|
||||||
// Show mint selector
|
// Show mint selector
|
||||||
if (availableMintBalances.length > 0) {
|
if (availableMintBalances.length > 0) {
|
||||||
|
|||||||
@@ -64,13 +64,6 @@ import {TranItem} from './TranDetailScreen'
|
|||||||
import {translate} from '../i18n'
|
import {translate} from '../i18n'
|
||||||
import { TOPUP_TASK } from '../services/wallet/topupTask'
|
import { TOPUP_TASK } from '../services/wallet/topupTask'
|
||||||
|
|
||||||
if (
|
|
||||||
Platform.OS === 'android' &&
|
|
||||||
UIManager.setLayoutAnimationEnabledExperimental
|
|
||||||
) {
|
|
||||||
UIManager.setLayoutAnimationEnabledExperimental(true)
|
|
||||||
}
|
|
||||||
|
|
||||||
type Props = StaticScreenProps<{
|
type Props = StaticScreenProps<{
|
||||||
unit: MintUnit,
|
unit: MintUnit,
|
||||||
paymentOption?: ReceiveOption,
|
paymentOption?: ReceiveOption,
|
||||||
@@ -426,7 +419,7 @@ export const TopupScreen = observer(function TopupScreen({ route }: Props) {
|
|||||||
}
|
}
|
||||||
setIsAmountEndEditing(true)
|
setIsAmountEndEditing(true)
|
||||||
// We do not make memo focus mandatory
|
// We do not make memo focus mandatory
|
||||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
LayoutAnimation.easeInEaseOut()
|
||||||
// Show mint selector
|
// Show mint selector
|
||||||
setIsMintSelectorVisible(true)
|
setIsMintSelectorVisible(true)
|
||||||
} catch (e: any) {
|
} catch (e: any) {
|
||||||
@@ -435,7 +428,7 @@ export const TopupScreen = observer(function TopupScreen({ route }: Props) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const onMemoEndEditing = function () {
|
const onMemoEndEditing = function () {
|
||||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
LayoutAnimation.easeInEaseOut()
|
||||||
|
|
||||||
// Show mint selector
|
// Show mint selector
|
||||||
if (availableMintBalances.length > 0) {
|
if (availableMintBalances.length > 0) {
|
||||||
@@ -679,6 +672,7 @@ export const TopupScreen = observer(function TopupScreen({ route }: Props) {
|
|||||||
editable={
|
editable={
|
||||||
transactionStatus === TransactionStatus.PENDING ? false : true
|
transactionStatus === TransactionStatus.PENDING ? false : true
|
||||||
}
|
}
|
||||||
|
returnKeyType={'done'}
|
||||||
/>
|
/>
|
||||||
<Text
|
<Text
|
||||||
size="sm"
|
size="sm"
|
||||||
|
|||||||
@@ -58,12 +58,6 @@ import { MintListItem } from './Mints/MintListItem'
|
|||||||
import { Token, getDecodedToken } from '@cashu/cashu-ts'
|
import { Token, getDecodedToken } from '@cashu/cashu-ts'
|
||||||
import { RECEIVE_OFFLINE_COMPLETE_TASK, RECEIVE_TASK } from '../services/wallet/receiveTask'
|
import { RECEIVE_OFFLINE_COMPLETE_TASK, RECEIVE_TASK } from '../services/wallet/receiveTask'
|
||||||
import { REVERT_TASK } from '../services/wallet/revertTask'
|
import { REVERT_TASK } from '../services/wallet/revertTask'
|
||||||
import { TranHistoryScreen } from './TranHistoryScreen'
|
|
||||||
import { WalletScreen } from './WalletScreen'
|
|
||||||
|
|
||||||
if (Platform.OS === 'android' && UIManager.setLayoutAnimationEnabledExperimental) {
|
|
||||||
UIManager.setLayoutAnimationEnabledExperimental(true)
|
|
||||||
}
|
|
||||||
|
|
||||||
type ProofsByStatus = {
|
type ProofsByStatus = {
|
||||||
isSpent: Proof[]
|
isSpent: Proof[]
|
||||||
@@ -93,7 +87,7 @@ export const TranDetailScreen = observer(function TranDetailScreen({ route }: Pr
|
|||||||
const [isAuditTrailVisible, setIsAuditTrailVisible] = useState<boolean>(false)
|
const [isAuditTrailVisible, setIsAuditTrailVisible] = useState<boolean>(false)
|
||||||
|
|
||||||
const toggleAuditTrail = () => {
|
const toggleAuditTrail = () => {
|
||||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
LayoutAnimation.easeInEaseOut()
|
||||||
setIsAuditTrailVisible(!isAuditTrailVisible)
|
setIsAuditTrailVisible(!isAuditTrailVisible)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -34,10 +34,6 @@ import { translate } from '../i18n'
|
|||||||
import { maxTransactionsInHistory } from '../models/TransactionsStore'
|
import { maxTransactionsInHistory } from '../models/TransactionsStore'
|
||||||
import { StaticScreenProps, useNavigation } from '@react-navigation/native'
|
import { StaticScreenProps, useNavigation } from '@react-navigation/native'
|
||||||
|
|
||||||
if (Platform.OS === 'android' &&
|
|
||||||
UIManager.setLayoutAnimationEnabledExperimental) {
|
|
||||||
UIManager.setLayoutAnimationEnabledExperimental(true)
|
|
||||||
}
|
|
||||||
// Number of transactions held in TransactionsStore model
|
// Number of transactions held in TransactionsStore model
|
||||||
const limit = maxTransactionsInHistory
|
const limit = maxTransactionsInHistory
|
||||||
|
|
||||||
@@ -181,13 +177,13 @@ export const TranHistoryScreen = observer(function TranHistoryScreen({ route }:
|
|||||||
|
|
||||||
|
|
||||||
const collapseHeader = function () {
|
const collapseHeader = function () {
|
||||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
LayoutAnimation.easeInEaseOut()
|
||||||
setIsHeaderVisible(false)
|
setIsHeaderVisible(false)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const expandHeader = function () {
|
const expandHeader = function () {
|
||||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
LayoutAnimation.easeInEaseOut()
|
||||||
setIsHeaderVisible(true)
|
setIsHeaderVisible(true)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -50,15 +50,6 @@ import useIsInternetReachable from '../utils/useIsInternetReachable'
|
|||||||
import { translate } from '../i18n'
|
import { translate } from '../i18n'
|
||||||
import { MemoInputCard } from '../components/MemoInputCard'
|
import { MemoInputCard } from '../components/MemoInputCard'
|
||||||
import { TRANSFER_TASK } from '../services/wallet/transferTask'
|
import { TRANSFER_TASK } from '../services/wallet/transferTask'
|
||||||
import { LNURLWithdrawParams } from 'js-lnurl'
|
|
||||||
|
|
||||||
|
|
||||||
if (
|
|
||||||
Platform.OS === 'android' &&
|
|
||||||
UIManager.setLayoutAnimationEnabledExperimental
|
|
||||||
) {
|
|
||||||
UIManager.setLayoutAnimationEnabledExperimental(true)
|
|
||||||
}
|
|
||||||
|
|
||||||
type Props = StaticScreenProps<{
|
type Props = StaticScreenProps<{
|
||||||
unit: MintUnit,
|
unit: MintUnit,
|
||||||
|
|||||||
@@ -14,6 +14,7 @@ import {
|
|||||||
Linking,
|
Linking,
|
||||||
LayoutAnimation,
|
LayoutAnimation,
|
||||||
AppStateStatus,
|
AppStateStatus,
|
||||||
|
Platform,
|
||||||
} from 'react-native'
|
} from 'react-native'
|
||||||
// import codePush, { RemotePackage } from 'react-native-code-push'
|
// import codePush, { RemotePackage } from 'react-native-code-push'
|
||||||
import {moderateScale, verticalScale} from '@gocodingnow/rn-size-matters'
|
import {moderateScale, verticalScale} from '@gocodingnow/rn-size-matters'
|
||||||
@@ -47,13 +48,8 @@ import {WalletTask} from '../services'
|
|||||||
import {translate} from '../i18n'
|
import {translate} from '../i18n'
|
||||||
import AppError, { Err } from '../utils/AppError'
|
import AppError, { Err } from '../utils/AppError'
|
||||||
import {
|
import {
|
||||||
APP_ENV,
|
|
||||||
CODEPUSH_STAGING_DEPLOYMENT_KEY,
|
|
||||||
CODEPUSH_PRODUCTION_DEPLOYMENT_KEY,
|
|
||||||
MINIBITS_MINT_URL,
|
MINIBITS_MINT_URL,
|
||||||
ANDROID_VERSION_NAME
|
|
||||||
} from '@env'
|
} from '@env'
|
||||||
import { round } from '../utils/number'
|
|
||||||
import { IncomingParser } from '../services/incomingParser'
|
import { IncomingParser } from '../services/incomingParser'
|
||||||
import useIsInternetReachable from '../utils/useIsInternetReachable'
|
import useIsInternetReachable from '../utils/useIsInternetReachable'
|
||||||
import { CurrencySign } from './Wallet/CurrencySign'
|
import { CurrencySign } from './Wallet/CurrencySign'
|
||||||
@@ -62,7 +58,7 @@ import { CurrencyAmount } from './Wallet/CurrencyAmount'
|
|||||||
import { LeftProfileHeader } from './ContactsScreen'
|
import { LeftProfileHeader } from './ContactsScreen'
|
||||||
import { getUnixTime } from 'date-fns/getUnixTime'
|
import { getUnixTime } from 'date-fns/getUnixTime'
|
||||||
|
|
||||||
const deploymentKey = APP_ENV === Env.PROD ? CODEPUSH_PRODUCTION_DEPLOYMENT_KEY : CODEPUSH_STAGING_DEPLOYMENT_KEY
|
|
||||||
const MINT_CHECK_INTERVAL = 60
|
const MINT_CHECK_INTERVAL = 60
|
||||||
|
|
||||||
type Props = StaticScreenProps<{
|
type Props = StaticScreenProps<{
|
||||||
@@ -913,12 +909,16 @@ const MintsByUnitList = observer(function (props: {
|
|||||||
|
|
||||||
const onSelectedMint = function (mintUrl: string) {
|
const onSelectedMint = function (mintUrl: string) {
|
||||||
if (selectedMintUrl && selectedMintUrl === mintUrl) {
|
if (selectedMintUrl && selectedMintUrl === mintUrl) {
|
||||||
LayoutAnimation.easeInEaseOut()
|
if(Platform.OS === 'android') {
|
||||||
|
LayoutAnimation.easeInEaseOut()
|
||||||
|
}
|
||||||
setSelectedMintUrl(undefined)
|
setSelectedMintUrl(undefined)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
LayoutAnimation.easeInEaseOut()
|
if(Platform.OS === 'android') {
|
||||||
|
LayoutAnimation.easeInEaseOut()
|
||||||
|
}
|
||||||
setSelectedMintUrl(mintUrl)
|
setSelectedMintUrl(mintUrl)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -962,7 +962,7 @@ const MintsByUnitList = observer(function (props: {
|
|||||||
//topSeparator={true}
|
//topSeparator={true}
|
||||||
style={$item}
|
style={$item}
|
||||||
onPress={() => onSelectedMint(mint.mintUrl)}
|
onPress={() => onSelectedMint(mint.mintUrl)}
|
||||||
topSeparator={index !== 0 ?? true}
|
topSeparator={index > 0 ? true : false}
|
||||||
/>
|
/>
|
||||||
{selectedMintUrl === mint.mintUrl && (
|
{selectedMintUrl === mint.mintUrl && (
|
||||||
<View style={{flexDirection: 'row', marginBottom: spacing.small, justifyContent: 'flex-start'}}>
|
<View style={{flexDirection: 'row', marginBottom: spacing.small, justifyContent: 'flex-start'}}>
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import {
|
|||||||
} from '@env'
|
} from '@env'
|
||||||
import { WalletProfile, WalletProfileRecord } from "../models/WalletProfileStore"
|
import { WalletProfile, WalletProfileRecord } from "../models/WalletProfileStore"
|
||||||
import { CurrencyCode } from "./wallet/currency"
|
import { CurrencyCode } from "./wallet/currency"
|
||||||
|
// refresh // refresh
|
||||||
|
|
||||||
type MinibitsRequestArgs = {
|
type MinibitsRequestArgs = {
|
||||||
method: 'POST' | 'PUT' | 'DELETE' | 'GET'
|
method: 'POST' | 'PUT' | 'DELETE' | 'GET'
|
||||||
|
|||||||
@@ -12,9 +12,9 @@ import { neventEncode as nostrNeventEncode, npubEncode, decode as nip19Decode }
|
|||||||
import {SimplePool} from 'nostr-tools/pool'
|
import {SimplePool} from 'nostr-tools/pool'
|
||||||
import { hexToBytes } from '@noble/hashes/utils'
|
import { hexToBytes } from '@noble/hashes/utils'
|
||||||
import { PrivateDirectMessage, Metadata } from 'nostr-tools/kinds'
|
import { PrivateDirectMessage, Metadata } from 'nostr-tools/kinds'
|
||||||
import {
|
/*import {
|
||||||
MINIBITS_RELAY_URL,
|
MINIBITS_RELAY_URL,
|
||||||
} from '@env'
|
} from '@env'*/
|
||||||
import {NostrKeyPair} from './keyChain'
|
import {NostrKeyPair} from './keyChain'
|
||||||
import {log} from './logService'
|
import {log} from './logService'
|
||||||
import AppError, { Err } from '../utils/AppError'
|
import AppError, { Err } from '../utils/AppError'
|
||||||
@@ -22,6 +22,7 @@ import { MinibitsClient } from './minibitsService'
|
|||||||
import { rootStoreInstance } from '../models'
|
import { rootStoreInstance } from '../models'
|
||||||
import { WalletTask } from './walletService'
|
import { WalletTask } from './walletService'
|
||||||
|
|
||||||
|
// refresh
|
||||||
|
|
||||||
export {
|
export {
|
||||||
NostrEvent,
|
NostrEvent,
|
||||||
@@ -49,9 +50,10 @@ export type Nip05VerificationRecord = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// TODO cleanup all this shit, move to RelayStore model
|
// TODO cleanup all this shit, move to RelayStore model
|
||||||
|
// refresh
|
||||||
|
|
||||||
const _defaultPublicRelays: string[] = ['wss://relay.primal.net', 'wss://relay.damus.io']
|
const _defaultPublicRelays: string[] = ['wss://relay.primal.net', 'wss://relay.damus.io']
|
||||||
const _minibitsRelays: string[] = [MINIBITS_RELAY_URL]
|
const _minibitsRelays: string[] = ['wss://relay.minibits.cash']
|
||||||
|
|
||||||
let _pool: any = undefined
|
let _pool: any = undefined
|
||||||
|
|
||||||
|
|||||||
@@ -1,16 +1,14 @@
|
|||||||
declare module '@env' {
|
declare module '@env' {
|
||||||
export const APP_ENV: string
|
export const APP_ENV: string
|
||||||
export const SENTRY_DSN: string
|
export const SENTRY_DSN: string
|
||||||
export const CODEPUSH_PRODUCTION_DEPLOYMENT_KEY: string
|
|
||||||
export const CODEPUSH_STAGING_DEPLOYMENT_KEY: string
|
|
||||||
export const ANDROID_VERSION_NAME: string
|
|
||||||
export const ANDROID_VERSION_CODE: string
|
|
||||||
export const MINIBITS_SERVER_API_KEY: string
|
export const MINIBITS_SERVER_API_KEY: string
|
||||||
export const MINIBITS_SERVER_API_HOST: string
|
export const MINIBITS_SERVER_API_HOST: string
|
||||||
export const MINIBIT_SERVER_NOSTR_PUBKEY: string
|
export const MINIBIT_SERVER_NOSTR_PUBKEY: string
|
||||||
export const MINIBITS_NIP05_DOMAIN: string
|
export const MINIBITS_NIP05_DOMAIN: string
|
||||||
export const MINIBITS_RELAY_URL: string
|
export const MINIBITS_RELAY_URL: string
|
||||||
export const MINIBITS_MINT_URL: string
|
export const MINIBITS_MINT_URL: string
|
||||||
|
export const ANDROID_VERSION_NAME: string
|
||||||
|
export const ANDROID_VERSION_CODE: string
|
||||||
export const JS_BUNDLE_VERSION: string
|
export const JS_BUNDLE_VERSION: string
|
||||||
export const COMMIT: string
|
export const COMMIT: string
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user