mirror of
https://github.com/minibits-cash/minibits_wallet.git
synced 2026-08-11 08:59:18 +00:00
iOS build cont...
This commit is contained in:
@@ -95,8 +95,8 @@ android {
|
||||
applicationId "com.minibits_wallet"
|
||||
minSdkVersion rootProject.ext.minSdkVersion
|
||||
targetSdkVersion rootProject.ext.targetSdkVersion
|
||||
versionCode 58028
|
||||
versionName "0.2.0"
|
||||
versionCode 58029
|
||||
versionName "0.2.1"
|
||||
}
|
||||
|
||||
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 */; };
|
||||
81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */; };
|
||||
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 */; };
|
||||
D610B97F2318E8AB9D0962D2 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB81A68108700A75B9A /* PrivacyInfo.xcprivacy */; };
|
||||
/* 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>"; };
|
||||
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>"; };
|
||||
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>"; };
|
||||
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>"; };
|
||||
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; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
@@ -47,6 +52,7 @@
|
||||
13B07FAE1A68108700A75B9A /* minibits_wallet */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
9044DC232D9556F600F918A6 /* minibits_wallet.entitlements */,
|
||||
13B07FB51A68108700A75B9A /* Images.xcassets */,
|
||||
761780EC2CA45674006654EE /* AppDelegate.swift */,
|
||||
13B07FB61A68108700A75B9A /* Info.plist */,
|
||||
@@ -66,6 +72,15 @@
|
||||
name = Frameworks;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
4B24E47762034A51AEE63594 /* Resources */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
6DA8A3418B7A4B348B67B9E7 /* Gluten-Regular.ttf */,
|
||||
AB8A46AD84194C2583FF9193 /* nostr.png */,
|
||||
);
|
||||
name = Resources;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
832341AE1AAA6A7D00B99B32 /* Libraries */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@@ -76,12 +91,13 @@
|
||||
83CBB9F61A601CBA00E9B192 = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
90C59D862D9195980061E3E1 /* GoogleService-Info.plist */,
|
||||
9044DC242D95937D00F918A6 /* GoogleService-Info.plist */,
|
||||
13B07FAE1A68108700A75B9A /* minibits_wallet */,
|
||||
832341AE1AAA6A7D00B99B32 /* Libraries */,
|
||||
83CBBA001A601CBA00E9B192 /* Products */,
|
||||
2D16E6871FA4F8E400B85C8A /* Frameworks */,
|
||||
BBD78D7AC51CEA395F1C20DB /* Pods */,
|
||||
4B24E47762034A51AEE63594 /* Resources */,
|
||||
);
|
||||
indentWidth = 2;
|
||||
sourceTree = "<group>";
|
||||
@@ -168,9 +184,11 @@
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */,
|
||||
90C59D872D9195980061E3E1 /* GoogleService-Info.plist in Resources */,
|
||||
13B07FBF1A68108700A75B9A /* Images.xcassets 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;
|
||||
};
|
||||
@@ -282,6 +300,7 @@
|
||||
buildSettings = {
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CODE_SIGN_ENTITLEMENTS = minibits_wallet/minibits_wallet.entitlements;
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEVELOPMENT_TEAM = GR2ZKMCLAM;
|
||||
ENABLE_BITCODE = NO;
|
||||
@@ -297,7 +316,7 @@
|
||||
"-ObjC",
|
||||
"-lc++",
|
||||
);
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "com.ios.minibits-wallet";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = cash.minibits.wallet;
|
||||
PRODUCT_NAME = minibits_wallet;
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
||||
SWIFT_VERSION = 5.0;
|
||||
@@ -311,6 +330,7 @@
|
||||
buildSettings = {
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CODE_SIGN_ENTITLEMENTS = minibits_wallet/minibits_wallet.entitlements;
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEVELOPMENT_TEAM = GR2ZKMCLAM;
|
||||
INFOPLIST_FILE = minibits_wallet/Info.plist;
|
||||
@@ -325,7 +345,7 @@
|
||||
"-ObjC",
|
||||
"-lc++",
|
||||
);
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "com.ios.minibits-wallet";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = cash.minibits.wallet;
|
||||
PRODUCT_NAME = minibits_wallet;
|
||||
SWIFT_VERSION = 5.0;
|
||||
VERSIONING_SYSTEM = "apple-generic";
|
||||
@@ -413,10 +433,7 @@
|
||||
"-DFOLLY_CFG_NO_COROUTINES=1",
|
||||
"-DFOLLY_HAVE_CLOCK_GETTIME=1",
|
||||
);
|
||||
OTHER_LDFLAGS = (
|
||||
"$(inherited)",
|
||||
" ",
|
||||
);
|
||||
OTHER_LDFLAGS = "$(inherited) ";
|
||||
REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native";
|
||||
SDKROOT = iphoneos;
|
||||
SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) DEBUG";
|
||||
@@ -497,10 +514,7 @@
|
||||
"-DFOLLY_CFG_NO_COROUTINES=1",
|
||||
"-DFOLLY_HAVE_CLOCK_GETTIME=1",
|
||||
);
|
||||
OTHER_LDFLAGS = (
|
||||
"$(inherited)",
|
||||
" ",
|
||||
);
|
||||
OTHER_LDFLAGS = "$(inherited) ";
|
||||
REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native";
|
||||
SDKROOT = iphoneos;
|
||||
SWIFT_COMPILATION_MODE = wholemodule;
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 268 KiB |
@@ -1,48 +1,9 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "iphone",
|
||||
"scale" : "2x",
|
||||
"size" : "20x20"
|
||||
},
|
||||
{
|
||||
"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",
|
||||
"filename" : "1024.png",
|
||||
"idiom" : "universal",
|
||||
"platform" : "ios",
|
||||
"size" : "1024x1024"
|
||||
}
|
||||
],
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>en</string>
|
||||
<key>CFBundleDisplayName</key>
|
||||
<string>minibits_wallet</string>
|
||||
<string>Minibits</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>$(EXECUTABLE_NAME)</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
@@ -26,14 +26,26 @@
|
||||
<true/>
|
||||
<key>NSAppTransportSecurity</key>
|
||||
<dict>
|
||||
<!-- Do not change NSAllowsArbitraryLoads to true, or you will risk app rejection! -->
|
||||
<key>NSAllowsArbitraryLoads</key>
|
||||
<false/>
|
||||
<key>NSAllowsLocalNetworking</key>
|
||||
<true/>
|
||||
</dict>
|
||||
<key>NSCameraUsageDescription</key>
|
||||
<string>This app requires access to the camera to scan QR codes.</string>
|
||||
<key>NSLocationWhenInUseUsageDescription</key>
|
||||
<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>
|
||||
<string>LaunchScreen</string>
|
||||
<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,
|
||||
SENTRY_DSN,
|
||||
JS_BUNDLE_VERSION,
|
||||
CODEPUSH_STAGING_DEPLOYMENT_KEY,
|
||||
CODEPUSH_PRODUCTION_DEPLOYMENT_KEY,
|
||||
ANDROID_VERSION_NAME,
|
||||
} from '@env'
|
||||
// import codePush from 'react-native-code-push'
|
||||
@@ -26,7 +24,7 @@ import Config from './config'
|
||||
import {log} from './services'
|
||||
import {Env} from './utils/envtypes'
|
||||
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 { displayName } from '../app.json'
|
||||
import { Text } from './components/Text'
|
||||
@@ -52,6 +50,11 @@ if (!__DEV__) {
|
||||
})
|
||||
}
|
||||
|
||||
if (Platform.OS === 'android' &&
|
||||
UIManager.setLayoutAnimationEnabledExperimental) {
|
||||
UIManager.setLayoutAnimationEnabledExperimental(true)
|
||||
}
|
||||
|
||||
function App() {
|
||||
|
||||
const {userSettingsStore, relaysStore} = useStores()
|
||||
|
||||
@@ -19,7 +19,7 @@ const maxLines = 50
|
||||
export const CollapsibleText = (props: CollapsibleProps) => {
|
||||
const [collapsed, setCollapsed] = useState(props?.collapsed ?? false)
|
||||
const toggleCollapse = () => {
|
||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
||||
LayoutAnimation.easeInEaseOut()
|
||||
setCollapsed(!collapsed)
|
||||
}
|
||||
const textDim = useThemeColor('textDim')
|
||||
|
||||
@@ -7,11 +7,6 @@ import { isObj } from '@cashu/cashu-ts/src/utils'
|
||||
import JSONTree from 'react-native-json-tree'
|
||||
import Clipboard from '@react-native-clipboard/clipboard'
|
||||
|
||||
if (Platform.OS === 'android' &&
|
||||
UIManager.setLayoutAnimationEnabledExperimental) {
|
||||
UIManager.setLayoutAnimationEnabledExperimental(true)
|
||||
}
|
||||
|
||||
type ErrorModalProps = {
|
||||
error: AppError
|
||||
}
|
||||
@@ -28,7 +23,7 @@ export const ErrorModal: FC<ErrorModalProps> = function ({ error }) {
|
||||
}, [error])
|
||||
|
||||
const toggleParams = () => {
|
||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
||||
LayoutAnimation.easeInEaseOut()
|
||||
setIsParamsVisible(previousState => !previousState)
|
||||
}
|
||||
|
||||
|
||||
@@ -292,19 +292,20 @@ const $separatorBottom: ViewStyle = {
|
||||
}
|
||||
|
||||
const $textStyle: TextStyle = {
|
||||
// alignSelf: 'flex-start',
|
||||
paddingVertical: spacing.extraSmall,
|
||||
// alignSelf: "center",
|
||||
alignSelf: 'flex-start',
|
||||
// paddingVertical: spacing.extraSmall,
|
||||
textAlignVertical: 'center',
|
||||
flexGrow: 1,
|
||||
flexShrink: 1,
|
||||
// borderColor: 'red',
|
||||
// borderWidth: 1,
|
||||
}
|
||||
|
||||
const $subTextContainer: ViewStyle = {
|
||||
flex: 1,
|
||||
flexDirection: 'column',
|
||||
// borderColor: 'red',
|
||||
flex: 1,
|
||||
flexDirection: 'column',
|
||||
justifyContent: 'center',
|
||||
// borderColor: 'green',
|
||||
// borderWidth: 1,
|
||||
alignSelf: 'stretch',
|
||||
}
|
||||
|
||||
const $subTextStyle: TextStyle = {
|
||||
@@ -315,7 +316,7 @@ const $subTextStyle: TextStyle = {
|
||||
|
||||
const $touchableStyle: ViewStyle = {
|
||||
flexDirection: "row",
|
||||
alignItems: "flex-start",
|
||||
alignItems: "flex-start",
|
||||
}
|
||||
|
||||
const $componentContainer: ViewStyle = {
|
||||
|
||||
@@ -105,6 +105,10 @@ export const MintsStoreModel = types
|
||||
}))
|
||||
.actions(self => ({
|
||||
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')) {
|
||||
throw new AppError(Err.VALIDATION_ERROR, 'Mint URL needs to start with https.')
|
||||
}
|
||||
|
||||
@@ -17,13 +17,12 @@ import {
|
||||
import { debounce } from "lodash"
|
||||
import * as Sentry from '@sentry/react-native'
|
||||
import type {RootStore} from '../RootStore'
|
||||
import {KeyChain, MinibitsClient, MMKVStorage} from '../../services'
|
||||
import {KeyChain, MMKVStorage} from '../../services'
|
||||
import {Database} from '../../services'
|
||||
import { log } from '../../services/logService'
|
||||
import { rootStoreModelVersion } from '../RootStore'
|
||||
import AppError, { Err } from '../../utils/AppError'
|
||||
import { LogLevel } from '../../services/log/logTypes'
|
||||
import { MintStatus } from '../Mint'
|
||||
import { CurrencyCode } from '../../services/wallet/currency'
|
||||
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
|
||||
const saveSnapshot = debounce((snapshot) => {
|
||||
/* const saveSnapshot = debounce((snapshot) => {
|
||||
MMKVStorage.save(ROOT_STORAGE_KEY, snapshot)
|
||||
}, 1000)
|
||||
}, 1000)*/
|
||||
|
||||
_disposer = onSnapshot(rootStore, snapshot => {
|
||||
// log.trace('[setupRootStore] onSnapshot *** MMKV SHOULD SAVE ***')
|
||||
saveSnapshot(snapshot)
|
||||
// log.trace('[setupRootStore] saved', {walletStore: snapshot.walletStore})
|
||||
// saveSnapshot(snapshot)
|
||||
// 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
|
||||
|
||||
@@ -24,11 +24,6 @@ import { toJS } from 'mobx'
|
||||
const defaultPublicNpub = 'npub1kvaln6tm0re4d99q9e4ma788wpvnw0jzkz595cljtfgwhldd75xsj9tkzv'
|
||||
const maxContactsToLoad = 20
|
||||
|
||||
if (Platform.OS === 'android' &&
|
||||
UIManager.setLayoutAnimationEnabledExperimental) {
|
||||
UIManager.setLayoutAnimationEnabledExperimental(true)
|
||||
}
|
||||
|
||||
export const PublicContacts = observer(function (props: {
|
||||
paymentOption: ReceiveOption | SendOption | undefined}
|
||||
) {
|
||||
@@ -418,13 +413,13 @@ export const PublicContacts = observer(function (props: {
|
||||
|
||||
|
||||
const collapseProfile = function () {
|
||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
||||
LayoutAnimation.easeInEaseOut()
|
||||
setIsOwnProfileVisible(false)
|
||||
|
||||
}
|
||||
|
||||
const expandProfile = function () {
|
||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
||||
LayoutAnimation.easeInEaseOut()
|
||||
setIsOwnProfileVisible(true)
|
||||
}
|
||||
|
||||
|
||||
@@ -37,11 +37,6 @@ import { ContactsStoreSnapshot } from '../models/ContactsStore'
|
||||
import { CashuMint, MintActiveKeys } from '@cashu/cashu-ts'
|
||||
import { StaticScreenProps, useNavigation } from '@react-navigation/native'
|
||||
|
||||
|
||||
if (Platform.OS === 'android' && UIManager.setLayoutAnimationEnabledExperimental) {
|
||||
UIManager.setLayoutAnimationEnabledExperimental(true)
|
||||
}
|
||||
|
||||
type Props = StaticScreenProps<undefined>
|
||||
|
||||
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'))
|
||||
}
|
||||
|
||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
||||
LayoutAnimation.easeInEaseOut()
|
||||
|
||||
if (!validateMnemonic(mnemonic, wordlist)) {
|
||||
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.')
|
||||
}
|
||||
|
||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
||||
LayoutAnimation.easeInEaseOut()
|
||||
|
||||
const snapshot = getWalletSnapshot() // throws
|
||||
|
||||
|
||||
@@ -36,11 +36,6 @@ import { CurrencyCode, formatCurrency } from '../services/wallet/currency'
|
||||
import { QRShareModal } from '../components/QRShareModal'
|
||||
import { StaticScreenProps, useNavigation } from '@react-navigation/native'
|
||||
|
||||
|
||||
if (Platform.OS === 'android' && UIManager.setLayoutAnimationEnabledExperimental) {
|
||||
UIManager.setLayoutAnimationEnabledExperimental(true)
|
||||
}
|
||||
|
||||
interface DetailedNutInfo {
|
||||
methods: Array<SwapMethod>;
|
||||
disabled: boolean;
|
||||
@@ -133,7 +128,7 @@ export const MintInfoScreen = observer(function MintInfoScreen({ route }: Props)
|
||||
}, [])
|
||||
|
||||
const toggleLocalInfo = () => {
|
||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
||||
LayoutAnimation.easeInEaseOut()
|
||||
setIsLocalInfoVisible(!isLocalInfoVisible)
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
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 { Button, Card} from "../../components"
|
||||
import { spacing } from "../../theme"
|
||||
@@ -32,14 +32,18 @@ export const MintBalanceSelector = observer(function (props: {
|
||||
const keyboardDidShowListener = Keyboard.addListener(
|
||||
'keyboardDidShow',
|
||||
() => {
|
||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
||||
if(Platform.OS === 'android') {
|
||||
LayoutAnimation.easeInEaseOut()
|
||||
}
|
||||
setIsKeyboardVisible(true);
|
||||
}
|
||||
);
|
||||
const keyboardDidHideListener = Keyboard.addListener(
|
||||
'keyboardDidHide',
|
||||
() => {
|
||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
||||
if(Platform.OS === 'android') {
|
||||
LayoutAnimation.easeInEaseOut()
|
||||
}
|
||||
setIsKeyboardVisible(false);
|
||||
}
|
||||
);
|
||||
@@ -53,13 +57,13 @@ export const MintBalanceSelector = observer(function (props: {
|
||||
|
||||
useEffect(() => {
|
||||
if(!props.selectedMintBalance) {
|
||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
||||
LayoutAnimation.easeInEaseOut()
|
||||
setAllVisible(true)
|
||||
}
|
||||
}, [])
|
||||
|
||||
const toggleAllVisible = function () {
|
||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
||||
LayoutAnimation.easeInEaseOut()
|
||||
setAllVisible(!allVisible)
|
||||
}
|
||||
|
||||
|
||||
@@ -17,11 +17,6 @@ import { translate } from '../i18n'
|
||||
import { StaticScreenProps, useNavigation } from '@react-navigation/native'
|
||||
|
||||
|
||||
if (Platform.OS === 'android' &&
|
||||
UIManager.setLayoutAnimationEnabledExperimental) {
|
||||
UIManager.setLayoutAnimationEnabledExperimental(true)
|
||||
}
|
||||
|
||||
type Props = StaticScreenProps<{}>
|
||||
|
||||
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
|
||||
}
|
||||
|
||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
||||
LayoutAnimation.easeInEaseOut()
|
||||
|
||||
log.trace('Got valid profile', profile)
|
||||
setOwnProfile(profile)
|
||||
|
||||
@@ -18,10 +18,6 @@ import { WalletProfileRecord } from '../models/WalletProfileStore'
|
||||
import { translate } from '../i18n'
|
||||
import { StackActions, StaticScreenProps, useNavigation } from '@react-navigation/native'
|
||||
|
||||
if (Platform.OS === 'android' && UIManager.setLayoutAnimationEnabledExperimental) {
|
||||
UIManager.setLayoutAnimationEnabledExperimental(true)
|
||||
}
|
||||
|
||||
type Props = StaticScreenProps<undefined>
|
||||
|
||||
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'))
|
||||
}
|
||||
|
||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
||||
LayoutAnimation.easeInEaseOut()
|
||||
|
||||
if (!validateMnemonic(mnemonic, wordlist)) {
|
||||
throw new AppError(Err.VALIDATION_ERROR, translate("recoveryInvalidMnemonicError"))
|
||||
|
||||
@@ -43,10 +43,6 @@ import { WalletProfileRecord } from '../models/WalletProfileStore'
|
||||
import { MnemonicInput } from './Recovery/MnemonicInput'
|
||||
import { StaticScreenProps, useNavigation } from '@react-navigation/native'
|
||||
|
||||
if (Platform.OS === 'android' && UIManager.setLayoutAnimationEnabledExperimental) {
|
||||
UIManager.setLayoutAnimationEnabledExperimental(true)
|
||||
}
|
||||
|
||||
const RESTORE_INDEX_INTERVAL = 50
|
||||
|
||||
type Props = StaticScreenProps<undefined>
|
||||
@@ -143,7 +139,7 @@ export const SeedRecoveryScreen = observer(function SeedRecoveryScreen({ route }
|
||||
throw new AppError(Err.VALIDATION_ERROR, translate('backupScreen.missingMnemonicError'))
|
||||
}
|
||||
|
||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
||||
LayoutAnimation.easeInEaseOut()
|
||||
|
||||
if (!validateMnemonic(mnemonic, wordlist)) {
|
||||
throw new AppError(Err.VALIDATION_ERROR, translate("recoveryInvalidMnemonicError"))
|
||||
|
||||
@@ -71,11 +71,6 @@ export enum SendOption {
|
||||
// DONATION = 'DONATION',
|
||||
}
|
||||
|
||||
if (Platform.OS === 'android' &&
|
||||
UIManager.setLayoutAnimationEnabledExperimental) {
|
||||
UIManager.setLayoutAnimationEnabledExperimental(true)
|
||||
}
|
||||
|
||||
type Props = StaticScreenProps<{
|
||||
unit: MintUnit,
|
||||
paymentOption?: SendOption,
|
||||
@@ -549,7 +544,7 @@ export const SendScreen = observer(function SendScreen({ route }: Props) {
|
||||
return
|
||||
}
|
||||
|
||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
||||
LayoutAnimation.easeInEaseOut()
|
||||
|
||||
setAmountToSend(`${numbro(amountToSend).format({thousandSeparated: true, mantissa: getCurrency(unitRef.current).mantissa})}`)
|
||||
setAvailableMintBalances(availableBalances)
|
||||
@@ -568,7 +563,7 @@ export const SendScreen = observer(function SendScreen({ route }: Props) {
|
||||
|
||||
|
||||
const onMemoEndEditing = function () {
|
||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
||||
LayoutAnimation.easeInEaseOut()
|
||||
|
||||
// Show mint selector
|
||||
if (availableMintBalances.length > 0) {
|
||||
|
||||
@@ -64,13 +64,6 @@ import {TranItem} from './TranDetailScreen'
|
||||
import {translate} from '../i18n'
|
||||
import { TOPUP_TASK } from '../services/wallet/topupTask'
|
||||
|
||||
if (
|
||||
Platform.OS === 'android' &&
|
||||
UIManager.setLayoutAnimationEnabledExperimental
|
||||
) {
|
||||
UIManager.setLayoutAnimationEnabledExperimental(true)
|
||||
}
|
||||
|
||||
type Props = StaticScreenProps<{
|
||||
unit: MintUnit,
|
||||
paymentOption?: ReceiveOption,
|
||||
@@ -426,7 +419,7 @@ export const TopupScreen = observer(function TopupScreen({ route }: Props) {
|
||||
}
|
||||
setIsAmountEndEditing(true)
|
||||
// We do not make memo focus mandatory
|
||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
||||
LayoutAnimation.easeInEaseOut()
|
||||
// Show mint selector
|
||||
setIsMintSelectorVisible(true)
|
||||
} catch (e: any) {
|
||||
@@ -435,7 +428,7 @@ export const TopupScreen = observer(function TopupScreen({ route }: Props) {
|
||||
}
|
||||
|
||||
const onMemoEndEditing = function () {
|
||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
||||
LayoutAnimation.easeInEaseOut()
|
||||
|
||||
// Show mint selector
|
||||
if (availableMintBalances.length > 0) {
|
||||
@@ -679,6 +672,7 @@ export const TopupScreen = observer(function TopupScreen({ route }: Props) {
|
||||
editable={
|
||||
transactionStatus === TransactionStatus.PENDING ? false : true
|
||||
}
|
||||
returnKeyType={'done'}
|
||||
/>
|
||||
<Text
|
||||
size="sm"
|
||||
|
||||
@@ -58,12 +58,6 @@ import { MintListItem } from './Mints/MintListItem'
|
||||
import { Token, getDecodedToken } from '@cashu/cashu-ts'
|
||||
import { RECEIVE_OFFLINE_COMPLETE_TASK, RECEIVE_TASK } from '../services/wallet/receiveTask'
|
||||
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 = {
|
||||
isSpent: Proof[]
|
||||
@@ -93,7 +87,7 @@ export const TranDetailScreen = observer(function TranDetailScreen({ route }: Pr
|
||||
const [isAuditTrailVisible, setIsAuditTrailVisible] = useState<boolean>(false)
|
||||
|
||||
const toggleAuditTrail = () => {
|
||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
||||
LayoutAnimation.easeInEaseOut()
|
||||
setIsAuditTrailVisible(!isAuditTrailVisible)
|
||||
}
|
||||
|
||||
|
||||
@@ -34,10 +34,6 @@ import { translate } from '../i18n'
|
||||
import { maxTransactionsInHistory } from '../models/TransactionsStore'
|
||||
import { StaticScreenProps, useNavigation } from '@react-navigation/native'
|
||||
|
||||
if (Platform.OS === 'android' &&
|
||||
UIManager.setLayoutAnimationEnabledExperimental) {
|
||||
UIManager.setLayoutAnimationEnabledExperimental(true)
|
||||
}
|
||||
// Number of transactions held in TransactionsStore model
|
||||
const limit = maxTransactionsInHistory
|
||||
|
||||
@@ -181,13 +177,13 @@ export const TranHistoryScreen = observer(function TranHistoryScreen({ route }:
|
||||
|
||||
|
||||
const collapseHeader = function () {
|
||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
||||
LayoutAnimation.easeInEaseOut()
|
||||
setIsHeaderVisible(false)
|
||||
|
||||
}
|
||||
|
||||
const expandHeader = function () {
|
||||
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut)
|
||||
LayoutAnimation.easeInEaseOut()
|
||||
setIsHeaderVisible(true)
|
||||
}
|
||||
|
||||
|
||||
@@ -50,15 +50,6 @@ import useIsInternetReachable from '../utils/useIsInternetReachable'
|
||||
import { translate } from '../i18n'
|
||||
import { MemoInputCard } from '../components/MemoInputCard'
|
||||
import { TRANSFER_TASK } from '../services/wallet/transferTask'
|
||||
import { LNURLWithdrawParams } from 'js-lnurl'
|
||||
|
||||
|
||||
if (
|
||||
Platform.OS === 'android' &&
|
||||
UIManager.setLayoutAnimationEnabledExperimental
|
||||
) {
|
||||
UIManager.setLayoutAnimationEnabledExperimental(true)
|
||||
}
|
||||
|
||||
type Props = StaticScreenProps<{
|
||||
unit: MintUnit,
|
||||
|
||||
@@ -13,7 +13,8 @@ import {
|
||||
Pressable,
|
||||
Linking,
|
||||
LayoutAnimation,
|
||||
AppStateStatus,
|
||||
AppStateStatus,
|
||||
Platform,
|
||||
} from 'react-native'
|
||||
// import codePush, { RemotePackage } from 'react-native-code-push'
|
||||
import {moderateScale, verticalScale} from '@gocodingnow/rn-size-matters'
|
||||
@@ -46,14 +47,9 @@ import {TransactionListItem} from './Transactions/TransactionListItem'
|
||||
import {WalletTask} from '../services'
|
||||
import {translate} from '../i18n'
|
||||
import AppError, { Err } from '../utils/AppError'
|
||||
import {
|
||||
APP_ENV,
|
||||
CODEPUSH_STAGING_DEPLOYMENT_KEY,
|
||||
CODEPUSH_PRODUCTION_DEPLOYMENT_KEY,
|
||||
MINIBITS_MINT_URL,
|
||||
ANDROID_VERSION_NAME
|
||||
import {
|
||||
MINIBITS_MINT_URL,
|
||||
} from '@env'
|
||||
import { round } from '../utils/number'
|
||||
import { IncomingParser } from '../services/incomingParser'
|
||||
import useIsInternetReachable from '../utils/useIsInternetReachable'
|
||||
import { CurrencySign } from './Wallet/CurrencySign'
|
||||
@@ -62,7 +58,7 @@ import { CurrencyAmount } from './Wallet/CurrencyAmount'
|
||||
import { LeftProfileHeader } from './ContactsScreen'
|
||||
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
|
||||
|
||||
type Props = StaticScreenProps<{
|
||||
@@ -913,12 +909,16 @@ const MintsByUnitList = observer(function (props: {
|
||||
|
||||
const onSelectedMint = function (mintUrl: string) {
|
||||
if (selectedMintUrl && selectedMintUrl === mintUrl) {
|
||||
LayoutAnimation.easeInEaseOut()
|
||||
if(Platform.OS === 'android') {
|
||||
LayoutAnimation.easeInEaseOut()
|
||||
}
|
||||
setSelectedMintUrl(undefined)
|
||||
return
|
||||
}
|
||||
|
||||
LayoutAnimation.easeInEaseOut()
|
||||
if(Platform.OS === 'android') {
|
||||
LayoutAnimation.easeInEaseOut()
|
||||
}
|
||||
setSelectedMintUrl(mintUrl)
|
||||
}
|
||||
|
||||
@@ -962,7 +962,7 @@ const MintsByUnitList = observer(function (props: {
|
||||
//topSeparator={true}
|
||||
style={$item}
|
||||
onPress={() => onSelectedMint(mint.mintUrl)}
|
||||
topSeparator={index !== 0 ?? true}
|
||||
topSeparator={index > 0 ? true : false}
|
||||
/>
|
||||
{selectedMintUrl === mint.mintUrl && (
|
||||
<View style={{flexDirection: 'row', marginBottom: spacing.small, justifyContent: 'flex-start'}}>
|
||||
|
||||
@@ -7,7 +7,7 @@ import {
|
||||
} from '@env'
|
||||
import { WalletProfile, WalletProfileRecord } from "../models/WalletProfileStore"
|
||||
import { CurrencyCode } from "./wallet/currency"
|
||||
|
||||
// refresh // refresh
|
||||
|
||||
type MinibitsRequestArgs = {
|
||||
method: 'POST' | 'PUT' | 'DELETE' | 'GET'
|
||||
@@ -292,8 +292,8 @@ const fetchApi = async (url: string, options: MinibitsRequestOptions, timeout =
|
||||
if (!response) {
|
||||
controller.abort()
|
||||
throw new AppError(Err.NETWORK_TIMEOUT, 'Timeout: API takes too long to respond.', {caller: 'fetchApi', url})
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
const responseJson = await response.json()
|
||||
|
||||
if(responseJson && responseJson.error) {
|
||||
|
||||
@@ -12,9 +12,9 @@ import { neventEncode as nostrNeventEncode, npubEncode, decode as nip19Decode }
|
||||
import {SimplePool} from 'nostr-tools/pool'
|
||||
import { hexToBytes } from '@noble/hashes/utils'
|
||||
import { PrivateDirectMessage, Metadata } from 'nostr-tools/kinds'
|
||||
import {
|
||||
/*import {
|
||||
MINIBITS_RELAY_URL,
|
||||
} from '@env'
|
||||
} from '@env'*/
|
||||
import {NostrKeyPair} from './keyChain'
|
||||
import {log} from './logService'
|
||||
import AppError, { Err } from '../utils/AppError'
|
||||
@@ -22,6 +22,7 @@ import { MinibitsClient } from './minibitsService'
|
||||
import { rootStoreInstance } from '../models'
|
||||
import { WalletTask } from './walletService'
|
||||
|
||||
// refresh
|
||||
|
||||
export {
|
||||
NostrEvent,
|
||||
@@ -49,9 +50,10 @@ export type Nip05VerificationRecord = {
|
||||
}
|
||||
|
||||
// TODO cleanup all this shit, move to RelayStore model
|
||||
// refresh
|
||||
|
||||
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
|
||||
|
||||
|
||||
@@ -1,16 +1,14 @@
|
||||
declare module '@env' {
|
||||
export const APP_ENV: 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 SENTRY_DSN: string
|
||||
export const MINIBITS_SERVER_API_KEY: string
|
||||
export const MINIBITS_SERVER_API_HOST: string
|
||||
export const MINIBIT_SERVER_NOSTR_PUBKEY: string
|
||||
export const MINIBITS_NIP05_DOMAIN: string
|
||||
export const MINIBITS_RELAY_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 COMMIT: string
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user