react-native-candle 19.0.12-beta → 40.0.6-beta
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +17 -25
- package/android/gradle.properties +5 -0
- package/android/src/main/java/com/margelo/nitro/rncandle/BridgeTypes.kt +189 -2
- package/android/src/main/java/com/margelo/nitro/rncandle/HybridRNCandle.kt +63 -10
- package/ios/Sources/CandleLinkSheetWrapperView.swift +3 -2
- package/ios/Sources/CandleLinkViewModel.swift +2 -1
- package/ios/Sources/RNCandle.swift +86 -9
- package/ios/Sources/Types.swift +199 -5
- package/lib/typescript/commonjs/src/context.d.ts +16 -6
- package/lib/typescript/commonjs/src/provider.d.ts +1 -2
- package/lib/typescript/commonjs/src/specs/RNCandle.nitro.d.ts +76 -6
- package/lib/typescript/commonjs/src/types.d.ts +15 -3
- package/lib/typescript/module/src/context.d.ts +16 -6
- package/lib/typescript/module/src/provider.d.ts +1 -2
- package/lib/typescript/module/src/specs/RNCandle.nitro.d.ts +76 -6
- package/lib/typescript/module/src/types.d.ts +15 -3
- package/nitrogen/generated/android/c++/JAssetAccount.hpp +2 -0
- package/nitrogen/generated/android/c++/JAssetAccountsResponse.hpp +2 -0
- package/nitrogen/generated/android/c++/JCounterparty.hpp +2 -0
- package/nitrogen/generated/android/c++/JCryptoAccount.hpp +3 -0
- package/nitrogen/generated/android/c++/JCryptoAsset.hpp +3 -0
- package/nitrogen/generated/android/c++/JEventAsset.hpp +3 -0
- package/nitrogen/generated/android/c++/JFiatAccount.hpp +2 -0
- package/nitrogen/generated/android/c++/JFiatAsset.hpp +2 -0
- package/nitrogen/generated/android/c++/JFriendRequestAsset.hpp +86 -0
- package/nitrogen/generated/android/c++/JFriendRequestAssetDirection.hpp +58 -0
- package/nitrogen/generated/android/c++/JFriendRequestAssetQuoteRequest.hpp +63 -0
- package/nitrogen/generated/android/c++/JFriendRequestAssetQuoteRequestAction.hpp +64 -0
- package/nitrogen/generated/android/c++/JFriendRequestAssetRef.hpp +66 -0
- package/nitrogen/generated/android/c++/JFunc_void_LinkedAccount.hpp +13 -11
- package/nitrogen/generated/android/c++/JFunc_void_TradeExecutionResult.hpp +11 -0
- package/nitrogen/generated/android/c++/JHostedAuthorizationCallback.hpp +66 -0
- package/nitrogen/generated/android/c++/JHostedAuthorizationRequest.hpp +69 -0
- package/nitrogen/generated/android/c++/JHybridRNCandleSpec.cpp +78 -15
- package/nitrogen/generated/android/c++/JHybridRNCandleSpec.hpp +7 -4
- package/nitrogen/generated/android/c++/JLinkedAccount.hpp +2 -0
- package/nitrogen/generated/android/c++/JLinkedAccountStatusRef.hpp +3 -0
- package/nitrogen/generated/android/c++/JMessageThreadAsset.hpp +99 -0
- package/nitrogen/generated/android/c++/JMessageThreadAssetQuoteRequest.hpp +61 -0
- package/nitrogen/generated/android/c++/JMessageThreadAssetRef.hpp +65 -0
- package/nitrogen/generated/android/c++/JMessageThreadMessage.hpp +78 -0
- package/nitrogen/generated/android/c++/JService.hpp +36 -252
- package/nitrogen/generated/android/c++/JServiceCounterparty.hpp +3 -0
- package/nitrogen/generated/android/c++/JServiceID.hpp +316 -0
- package/nitrogen/generated/android/c++/JStockAccount.hpp +3 -0
- package/nitrogen/generated/android/c++/JStockAsset.hpp +3 -0
- package/nitrogen/generated/android/c++/JTrade.hpp +11 -0
- package/nitrogen/generated/android/c++/JTradeAsset.hpp +22 -1
- package/nitrogen/generated/android/c++/JTradeAssetKind.hpp +6 -0
- package/nitrogen/generated/android/c++/JTradeAssetQuoteRequest.hpp +15 -1
- package/nitrogen/generated/android/c++/JTradeAssetRef.hpp +13 -1
- package/nitrogen/generated/android/c++/JTradeExecutionResult.hpp +11 -0
- package/nitrogen/generated/android/c++/JTradeQuote.hpp +11 -0
- package/nitrogen/generated/android/c++/JTradeQuotesRequest.hpp +6 -0
- package/nitrogen/generated/android/c++/JTradeQuotesResponse.hpp +10 -0
- package/nitrogen/generated/android/c++/JTradeRef.hpp +4 -0
- package/nitrogen/generated/android/c++/JTradesResponse.hpp +10 -0
- package/nitrogen/generated/android/c++/JTransportAccount.hpp +3 -0
- package/nitrogen/generated/android/c++/JTransportAsset.hpp +3 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rncandle/FriendRequestAsset.kt +53 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rncandle/FriendRequestAssetDirection.kt +23 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rncandle/FriendRequestAssetQuoteRequest.kt +41 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rncandle/FriendRequestAssetQuoteRequestAction.kt +25 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rncandle/FriendRequestAssetRef.kt +44 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rncandle/Func_void_LinkedAccount.kt +9 -9
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rncandle/HostedAuthorizationCallback.kt +44 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rncandle/HostedAuthorizationRequest.kt +47 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rncandle/HybridRNCandleSpec.kt +18 -6
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rncandle/MessageThreadAsset.kt +50 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rncandle/MessageThreadAssetQuoteRequest.kt +41 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rncandle/MessageThreadAssetRef.kt +44 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rncandle/MessageThreadMessage.kt +53 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rncandle/Service.kt +32 -83
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rncandle/ServiceID.kt +109 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rncandle/TradeAsset.kt +8 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rncandle/TradeAssetKind.kt +4 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rncandle/TradeAssetQuoteRequest.kt +8 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rncandle/TradeAssetRef.kt +8 -2
- package/nitrogen/generated/ios/ReactNativeCandle-Swift-Cxx-Bridge.cpp +3 -3
- package/nitrogen/generated/ios/ReactNativeCandle-Swift-Cxx-Bridge.hpp +184 -20
- package/nitrogen/generated/ios/ReactNativeCandle-Swift-Cxx-Umbrella.hpp +37 -1
- package/nitrogen/generated/ios/c++/HybridRNCandleSpecSwift.hpp +74 -14
- package/nitrogen/generated/ios/swift/FriendRequestAsset.swift +67 -0
- package/nitrogen/generated/ios/swift/FriendRequestAssetDirection.swift +40 -0
- package/nitrogen/generated/ios/swift/FriendRequestAssetQuoteRequest.swift +34 -0
- package/nitrogen/generated/ios/swift/FriendRequestAssetQuoteRequestAction.swift +48 -0
- package/nitrogen/generated/ios/swift/FriendRequestAssetRef.swift +52 -0
- package/nitrogen/generated/ios/swift/Func_void_LinkedAccount.swift +5 -5
- package/nitrogen/generated/ios/swift/HostedAuthorizationCallback.swift +52 -0
- package/nitrogen/generated/ios/swift/HostedAuthorizationRequest.swift +44 -0
- package/nitrogen/generated/ios/swift/HybridRNCandleSpec.swift +7 -4
- package/nitrogen/generated/ios/swift/HybridRNCandleSpec_cxx.swift +56 -13
- package/nitrogen/generated/ios/swift/MessageThreadAsset.swift +68 -0
- package/nitrogen/generated/ios/swift/MessageThreadAssetQuoteRequest.swift +34 -0
- package/nitrogen/generated/ios/swift/MessageThreadAssetRef.swift +39 -0
- package/nitrogen/generated/ios/swift/MessageThreadMessage.swift +119 -0
- package/nitrogen/generated/ios/swift/Service.swift +44 -334
- package/nitrogen/generated/ios/swift/ServiceID.swift +384 -0
- package/nitrogen/generated/ios/swift/TradeAsset.swift +23 -1
- package/nitrogen/generated/ios/swift/TradeAssetKind.swift +8 -0
- package/nitrogen/generated/ios/swift/TradeAssetQuoteRequest.swift +23 -1
- package/nitrogen/generated/ios/swift/TradeAssetRef.swift +23 -1
- package/nitrogen/generated/shared/c++/CryptoAccount.hpp +1 -1
- package/nitrogen/generated/shared/c++/CryptoAsset.hpp +1 -1
- package/nitrogen/generated/shared/c++/EventAsset.hpp +1 -1
- package/nitrogen/generated/shared/c++/FiatAccount.hpp +1 -1
- package/nitrogen/generated/shared/c++/FiatAsset.hpp +1 -1
- package/nitrogen/generated/shared/c++/FriendRequestAsset.hpp +112 -0
- package/nitrogen/generated/shared/c++/FriendRequestAssetDirection.hpp +76 -0
- package/nitrogen/generated/shared/c++/FriendRequestAssetQuoteRequest.hpp +89 -0
- package/nitrogen/generated/shared/c++/FriendRequestAssetQuoteRequestAction.hpp +84 -0
- package/nitrogen/generated/shared/c++/FriendRequestAssetRef.hpp +92 -0
- package/nitrogen/generated/shared/c++/HostedAuthorizationCallback.hpp +92 -0
- package/nitrogen/generated/shared/c++/HostedAuthorizationRequest.hpp +95 -0
- package/nitrogen/generated/shared/c++/HybridRNCandleSpec.cpp +5 -2
- package/nitrogen/generated/shared/c++/HybridRNCandleSpec.hpp +16 -7
- package/nitrogen/generated/shared/c++/LinkedAccount.hpp +1 -1
- package/nitrogen/generated/shared/c++/LinkedAccountStatusRef.hpp +1 -1
- package/nitrogen/generated/shared/c++/MessageThreadAsset.hpp +106 -0
- package/nitrogen/generated/shared/c++/MessageThreadAssetQuoteRequest.hpp +87 -0
- package/nitrogen/generated/shared/c++/MessageThreadAssetRef.hpp +91 -0
- package/nitrogen/generated/shared/c++/MessageThreadMessage.hpp +104 -0
- package/nitrogen/generated/shared/c++/Service.hpp +60 -346
- package/nitrogen/generated/shared/c++/ServiceCounterparty.hpp +1 -1
- package/nitrogen/generated/shared/c++/ServiceID.hpp +420 -0
- package/nitrogen/generated/shared/c++/StockAccount.hpp +1 -1
- package/nitrogen/generated/shared/c++/StockAsset.hpp +1 -1
- package/nitrogen/generated/shared/c++/TradeAsset.hpp +15 -1
- package/nitrogen/generated/shared/c++/TradeAssetKind.hpp +10 -2
- package/nitrogen/generated/shared/c++/TradeAssetQuoteRequest.hpp +15 -1
- package/nitrogen/generated/shared/c++/TradeAssetRef.hpp +15 -1
- package/nitrogen/generated/shared/c++/TransportAccount.hpp +1 -1
- package/nitrogen/generated/shared/c++/TransportAsset.hpp +1 -1
- package/package.json +1 -1
- package/src/context.ts +21 -5
- package/src/provider.tsx +62 -34
- package/src/specs/RNCandle.nitro.ts +109 -7
- package/src/types.ts +50 -1
|
@@ -38,6 +38,10 @@ namespace margelo::nitro::rncandle { struct StockAssetRef; }
|
|
|
38
38
|
namespace margelo::nitro::rncandle { struct TransportAssetRef; }
|
|
39
39
|
// Forward declaration of `EventAssetRef` to properly resolve imports.
|
|
40
40
|
namespace margelo::nitro::rncandle { struct EventAssetRef; }
|
|
41
|
+
// Forward declaration of `MessageThreadAssetRef` to properly resolve imports.
|
|
42
|
+
namespace margelo::nitro::rncandle { struct MessageThreadAssetRef; }
|
|
43
|
+
// Forward declaration of `FriendRequestAssetRef` to properly resolve imports.
|
|
44
|
+
namespace margelo::nitro::rncandle { struct FriendRequestAssetRef; }
|
|
41
45
|
// Forward declaration of `OtherAssetRef` to properly resolve imports.
|
|
42
46
|
namespace margelo::nitro::rncandle { struct OtherAssetRef; }
|
|
43
47
|
// Forward declaration of `NothingAssetRef` to properly resolve imports.
|
|
@@ -49,6 +53,8 @@ namespace margelo::nitro::rncandle { struct NothingAssetRef; }
|
|
|
49
53
|
#include "StockAssetRef.hpp"
|
|
50
54
|
#include "TransportAssetRef.hpp"
|
|
51
55
|
#include "EventAssetRef.hpp"
|
|
56
|
+
#include "MessageThreadAssetRef.hpp"
|
|
57
|
+
#include "FriendRequestAssetRef.hpp"
|
|
52
58
|
#include "OtherAssetRef.hpp"
|
|
53
59
|
#include "NothingAssetRef.hpp"
|
|
54
60
|
|
|
@@ -64,12 +70,14 @@ namespace margelo::nitro::rncandle {
|
|
|
64
70
|
std::optional<StockAssetRef> stockAssetRef SWIFT_PRIVATE;
|
|
65
71
|
std::optional<TransportAssetRef> transportAssetRef SWIFT_PRIVATE;
|
|
66
72
|
std::optional<EventAssetRef> eventAssetRef SWIFT_PRIVATE;
|
|
73
|
+
std::optional<MessageThreadAssetRef> messageThreadAssetRef SWIFT_PRIVATE;
|
|
74
|
+
std::optional<FriendRequestAssetRef> friendRequestAssetRef SWIFT_PRIVATE;
|
|
67
75
|
std::optional<OtherAssetRef> otherAssetRef SWIFT_PRIVATE;
|
|
68
76
|
std::optional<NothingAssetRef> nothingAssetRef SWIFT_PRIVATE;
|
|
69
77
|
|
|
70
78
|
public:
|
|
71
79
|
TradeAssetRef() = default;
|
|
72
|
-
explicit TradeAssetRef(std::optional<FiatAssetRef> fiatAssetRef, std::optional<CryptoAssetRef> cryptoAssetRef, std::optional<StockAssetRef> stockAssetRef, std::optional<TransportAssetRef> transportAssetRef, std::optional<EventAssetRef> eventAssetRef, std::optional<OtherAssetRef> otherAssetRef, std::optional<NothingAssetRef> nothingAssetRef): fiatAssetRef(fiatAssetRef), cryptoAssetRef(cryptoAssetRef), stockAssetRef(stockAssetRef), transportAssetRef(transportAssetRef), eventAssetRef(eventAssetRef), otherAssetRef(otherAssetRef), nothingAssetRef(nothingAssetRef) {}
|
|
80
|
+
explicit TradeAssetRef(std::optional<FiatAssetRef> fiatAssetRef, std::optional<CryptoAssetRef> cryptoAssetRef, std::optional<StockAssetRef> stockAssetRef, std::optional<TransportAssetRef> transportAssetRef, std::optional<EventAssetRef> eventAssetRef, std::optional<MessageThreadAssetRef> messageThreadAssetRef, std::optional<FriendRequestAssetRef> friendRequestAssetRef, std::optional<OtherAssetRef> otherAssetRef, std::optional<NothingAssetRef> nothingAssetRef): fiatAssetRef(fiatAssetRef), cryptoAssetRef(cryptoAssetRef), stockAssetRef(stockAssetRef), transportAssetRef(transportAssetRef), eventAssetRef(eventAssetRef), messageThreadAssetRef(messageThreadAssetRef), friendRequestAssetRef(friendRequestAssetRef), otherAssetRef(otherAssetRef), nothingAssetRef(nothingAssetRef) {}
|
|
73
81
|
|
|
74
82
|
public:
|
|
75
83
|
friend bool operator==(const TradeAssetRef& lhs, const TradeAssetRef& rhs) = default;
|
|
@@ -90,6 +98,8 @@ namespace margelo::nitro {
|
|
|
90
98
|
JSIConverter<std::optional<margelo::nitro::rncandle::StockAssetRef>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "stockAssetRef"))),
|
|
91
99
|
JSIConverter<std::optional<margelo::nitro::rncandle::TransportAssetRef>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "transportAssetRef"))),
|
|
92
100
|
JSIConverter<std::optional<margelo::nitro::rncandle::EventAssetRef>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "eventAssetRef"))),
|
|
101
|
+
JSIConverter<std::optional<margelo::nitro::rncandle::MessageThreadAssetRef>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "messageThreadAssetRef"))),
|
|
102
|
+
JSIConverter<std::optional<margelo::nitro::rncandle::FriendRequestAssetRef>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "friendRequestAssetRef"))),
|
|
93
103
|
JSIConverter<std::optional<margelo::nitro::rncandle::OtherAssetRef>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "otherAssetRef"))),
|
|
94
104
|
JSIConverter<std::optional<margelo::nitro::rncandle::NothingAssetRef>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "nothingAssetRef")))
|
|
95
105
|
);
|
|
@@ -101,6 +111,8 @@ namespace margelo::nitro {
|
|
|
101
111
|
obj.setProperty(runtime, PropNameIDCache::get(runtime, "stockAssetRef"), JSIConverter<std::optional<margelo::nitro::rncandle::StockAssetRef>>::toJSI(runtime, arg.stockAssetRef));
|
|
102
112
|
obj.setProperty(runtime, PropNameIDCache::get(runtime, "transportAssetRef"), JSIConverter<std::optional<margelo::nitro::rncandle::TransportAssetRef>>::toJSI(runtime, arg.transportAssetRef));
|
|
103
113
|
obj.setProperty(runtime, PropNameIDCache::get(runtime, "eventAssetRef"), JSIConverter<std::optional<margelo::nitro::rncandle::EventAssetRef>>::toJSI(runtime, arg.eventAssetRef));
|
|
114
|
+
obj.setProperty(runtime, PropNameIDCache::get(runtime, "messageThreadAssetRef"), JSIConverter<std::optional<margelo::nitro::rncandle::MessageThreadAssetRef>>::toJSI(runtime, arg.messageThreadAssetRef));
|
|
115
|
+
obj.setProperty(runtime, PropNameIDCache::get(runtime, "friendRequestAssetRef"), JSIConverter<std::optional<margelo::nitro::rncandle::FriendRequestAssetRef>>::toJSI(runtime, arg.friendRequestAssetRef));
|
|
104
116
|
obj.setProperty(runtime, PropNameIDCache::get(runtime, "otherAssetRef"), JSIConverter<std::optional<margelo::nitro::rncandle::OtherAssetRef>>::toJSI(runtime, arg.otherAssetRef));
|
|
105
117
|
obj.setProperty(runtime, PropNameIDCache::get(runtime, "nothingAssetRef"), JSIConverter<std::optional<margelo::nitro::rncandle::NothingAssetRef>>::toJSI(runtime, arg.nothingAssetRef));
|
|
106
118
|
return obj;
|
|
@@ -118,6 +130,8 @@ namespace margelo::nitro {
|
|
|
118
130
|
if (!JSIConverter<std::optional<margelo::nitro::rncandle::StockAssetRef>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "stockAssetRef")))) return false;
|
|
119
131
|
if (!JSIConverter<std::optional<margelo::nitro::rncandle::TransportAssetRef>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "transportAssetRef")))) return false;
|
|
120
132
|
if (!JSIConverter<std::optional<margelo::nitro::rncandle::EventAssetRef>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "eventAssetRef")))) return false;
|
|
133
|
+
if (!JSIConverter<std::optional<margelo::nitro::rncandle::MessageThreadAssetRef>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "messageThreadAssetRef")))) return false;
|
|
134
|
+
if (!JSIConverter<std::optional<margelo::nitro::rncandle::FriendRequestAssetRef>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "friendRequestAssetRef")))) return false;
|
|
121
135
|
if (!JSIConverter<std::optional<margelo::nitro::rncandle::OtherAssetRef>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "otherAssetRef")))) return false;
|
|
122
136
|
if (!JSIConverter<std::optional<margelo::nitro::rncandle::NothingAssetRef>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "nothingAssetRef")))) return false;
|
|
123
137
|
return true;
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
// Forward declaration of `TransportAccountKind` to properly resolve imports.
|
|
32
32
|
namespace margelo::nitro::rncandle { enum class TransportAccountKind; }
|
|
33
33
|
// Forward declaration of `Service` to properly resolve imports.
|
|
34
|
-
namespace margelo::nitro::rncandle {
|
|
34
|
+
namespace margelo::nitro::rncandle { struct Service; }
|
|
35
35
|
|
|
36
36
|
#include <string>
|
|
37
37
|
#include "TransportAccountKind.hpp"
|
|
@@ -33,7 +33,7 @@ namespace margelo::nitro::rncandle { struct Coordinates; }
|
|
|
33
33
|
// Forward declaration of `Address` to properly resolve imports.
|
|
34
34
|
namespace margelo::nitro::rncandle { struct Address; }
|
|
35
35
|
// Forward declaration of `Service` to properly resolve imports.
|
|
36
|
-
namespace margelo::nitro::rncandle {
|
|
36
|
+
namespace margelo::nitro::rncandle { struct Service; }
|
|
37
37
|
|
|
38
38
|
#include <string>
|
|
39
39
|
#include "Coordinates.hpp"
|
package/package.json
CHANGED
package/src/context.ts
CHANGED
|
@@ -9,7 +9,7 @@ import type {
|
|
|
9
9
|
LinkedAccountStatusRef,
|
|
10
10
|
PresentationBackground,
|
|
11
11
|
PresentationStyle,
|
|
12
|
-
|
|
12
|
+
ServiceID,
|
|
13
13
|
Trade,
|
|
14
14
|
TradeRef,
|
|
15
15
|
TradesQuery,
|
|
@@ -17,6 +17,10 @@ import type {
|
|
|
17
17
|
TradeQuotesRequest,
|
|
18
18
|
TradeAssetKind,
|
|
19
19
|
} from './types'
|
|
20
|
+
import type {
|
|
21
|
+
HostedAuthorizationCallback,
|
|
22
|
+
HostedAuthorizationRequest,
|
|
23
|
+
} from './specs/RNCandle.nitro'
|
|
20
24
|
|
|
21
25
|
export type CandleContextValue = {
|
|
22
26
|
presentCandleTradeExecutionSheet: <
|
|
@@ -33,7 +37,7 @@ export type CandleContextValue = {
|
|
|
33
37
|
}) => void
|
|
34
38
|
|
|
35
39
|
presentCandleLinkSheet: (input: {
|
|
36
|
-
services?:
|
|
40
|
+
services?: ServiceID[]
|
|
37
41
|
cornerRadius?: number
|
|
38
42
|
customerName?: string
|
|
39
43
|
showSandbox?: boolean
|
|
@@ -47,8 +51,20 @@ export type CandleContextValue = {
|
|
|
47
51
|
getLinkedAccount: (ref: LinkedAccountRef) => Promise<LinkedAccount>
|
|
48
52
|
unlinkAccount: (ref: LinkedAccountRef) => Promise<void>
|
|
49
53
|
|
|
50
|
-
|
|
51
|
-
|
|
54
|
+
hostedAuthorizationUrl: (input: {
|
|
55
|
+
redirectUri: string
|
|
56
|
+
state: string
|
|
57
|
+
codeChallenge: string
|
|
58
|
+
grantPackagePublicKey: string
|
|
59
|
+
}) => string
|
|
60
|
+
makeHostedAuthorizationRequest: (input: {
|
|
61
|
+
redirectUri: string
|
|
62
|
+
state?: string
|
|
63
|
+
}) => HostedAuthorizationRequest
|
|
64
|
+
parseHostedAuthorizationCallback: (callbackUrl: string) => HostedAuthorizationCallback
|
|
65
|
+
completeHostedAuthorization: (callbackUrl: string) => Promise<void>
|
|
66
|
+
|
|
67
|
+
signOut: () => Promise<void>
|
|
52
68
|
|
|
53
69
|
getAssetAccounts: (query?: AssetAccountsQuery) => Promise<{
|
|
54
70
|
assetAccounts: AssetAccount[]
|
|
@@ -91,7 +107,7 @@ export const useCandle = () => {
|
|
|
91
107
|
const ctx = useContext(CandleContext)
|
|
92
108
|
if (ctx === null) {
|
|
93
109
|
throw new Error(
|
|
94
|
-
"`useCandle` must be used within a <CandleProvider>. Wrap your app's root with <CandleProvider
|
|
110
|
+
"`useCandle` must be used within a <CandleProvider>. Wrap your app's root with <CandleProvider clientID={...}>.",
|
|
95
111
|
)
|
|
96
112
|
}
|
|
97
113
|
return ctx
|
package/src/provider.tsx
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React, { useLayoutEffect, useMemo, useState } from 'react'
|
|
1
|
+
import React, { useLayoutEffect, useMemo, useRef, useState } from 'react'
|
|
2
2
|
import type { CandleContextValue } from './context'
|
|
3
3
|
import { CandleContext } from './context'
|
|
4
4
|
import {
|
|
@@ -12,36 +12,36 @@ import {
|
|
|
12
12
|
toNativeTradeRef,
|
|
13
13
|
} from './types'
|
|
14
14
|
import { NitroModules } from 'react-native-nitro-modules'
|
|
15
|
-
import type { RNCandle } from './specs/RNCandle.nitro'
|
|
15
|
+
import type { LinkedAccount as NativeLinkedAccount, RNCandle } from './specs/RNCandle.nitro'
|
|
16
|
+
|
|
17
|
+
type LinkSheetSuccessCallback = (nativeLinkedAccount: NativeLinkedAccount) => void
|
|
16
18
|
|
|
17
19
|
export const CandleProvider: React.FC<{
|
|
18
20
|
children: React.ReactNode
|
|
19
|
-
|
|
20
|
-
appSecret: string
|
|
21
|
+
clientID: string
|
|
21
22
|
accessGroup?: string
|
|
22
|
-
}> = ({
|
|
23
|
+
}> = ({ clientID, accessGroup, children }) => {
|
|
23
24
|
// NOTE: We only use useState here because useRef does not have a true lazy initializer
|
|
24
25
|
const [nativeCandle] = useState<RNCandle>(() =>
|
|
25
26
|
NitroModules.createHybridObject<RNCandle>('RNCandle'),
|
|
26
27
|
)
|
|
28
|
+
const linkSheetSuccessCallbackRef = useRef<LinkSheetSuccessCallback | undefined>(undefined)
|
|
27
29
|
|
|
28
30
|
useLayoutEffect(() => {
|
|
29
|
-
nativeCandle.initialize(
|
|
30
|
-
}, [
|
|
31
|
+
nativeCandle.initialize(clientID, accessGroup)
|
|
32
|
+
}, [clientID, accessGroup])
|
|
31
33
|
|
|
32
34
|
const value = useMemo(
|
|
33
35
|
(): CandleContextValue => ({
|
|
34
36
|
presentCandleTradeExecutionSheet: ({ tradeQuote, presentationBackground, completion }) => {
|
|
35
|
-
const nativeTradeQuote = toNativeTradeQuote(tradeQuote)
|
|
36
37
|
nativeCandle.candleTradeExecutionSheet(
|
|
37
|
-
|
|
38
|
+
toNativeTradeQuote(tradeQuote),
|
|
38
39
|
presentationBackground ?? 'default',
|
|
39
40
|
(result) => {
|
|
40
41
|
if (completion !== undefined) {
|
|
41
42
|
if (result.trade !== undefined) {
|
|
42
|
-
const trade = fromNativeTradeAndQuote(tradeQuote)(result.trade)
|
|
43
43
|
completion({
|
|
44
|
-
...trade,
|
|
44
|
+
...fromNativeTradeAndQuote(tradeQuote)(result.trade),
|
|
45
45
|
kind: 'success' as const,
|
|
46
46
|
})
|
|
47
47
|
} else if (result.error === undefined) {
|
|
@@ -57,6 +57,7 @@ export const CandleProvider: React.FC<{
|
|
|
57
57
|
|
|
58
58
|
presentCandleLinkSheet: ({
|
|
59
59
|
services,
|
|
60
|
+
showSandbox = false,
|
|
60
61
|
cornerRadius = 24,
|
|
61
62
|
customerName,
|
|
62
63
|
showDynamicLoading = true,
|
|
@@ -64,19 +65,36 @@ export const CandleProvider: React.FC<{
|
|
|
64
65
|
presentationStyle = 'fullScreen',
|
|
65
66
|
onSuccess,
|
|
66
67
|
}) => {
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
68
|
+
const retainedOnSuccess: LinkSheetSuccessCallback = (nativeLinkedAccount) => {
|
|
69
|
+
setTimeout(() => {
|
|
70
|
+
try {
|
|
71
|
+
onSuccess(fromNativeLinkedAccount(nativeLinkedAccount))
|
|
72
|
+
} finally {
|
|
73
|
+
if (linkSheetSuccessCallbackRef.current === retainedOnSuccess) {
|
|
74
|
+
linkSheetSuccessCallbackRef.current = undefined
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}, 0)
|
|
78
|
+
}
|
|
79
|
+
linkSheetSuccessCallbackRef.current = retainedOnSuccess
|
|
80
|
+
try {
|
|
81
|
+
nativeCandle.candleLinkSheet(
|
|
82
|
+
true,
|
|
83
|
+
services,
|
|
84
|
+
showSandbox,
|
|
85
|
+
cornerRadius,
|
|
86
|
+
customerName,
|
|
87
|
+
showDynamicLoading,
|
|
88
|
+
presentationBackground,
|
|
89
|
+
presentationStyle,
|
|
90
|
+
retainedOnSuccess,
|
|
91
|
+
)
|
|
92
|
+
} catch (error) {
|
|
93
|
+
if (linkSheetSuccessCallbackRef.current === retainedOnSuccess) {
|
|
94
|
+
linkSheetSuccessCallbackRef.current = undefined
|
|
95
|
+
}
|
|
96
|
+
throw error
|
|
97
|
+
}
|
|
80
98
|
},
|
|
81
99
|
|
|
82
100
|
getLinkedAccounts: async () => {
|
|
@@ -87,10 +105,22 @@ export const CandleProvider: React.FC<{
|
|
|
87
105
|
const nativeLinkedAccount = await nativeCandle.getLinkedAccount(ref)
|
|
88
106
|
return fromNativeLinkedAccount(nativeLinkedAccount)
|
|
89
107
|
},
|
|
108
|
+
hostedAuthorizationUrl: ({ codeChallenge, grantPackagePublicKey, redirectUri, state }) =>
|
|
109
|
+
nativeCandle.hostedAuthorizationUrl(
|
|
110
|
+
redirectUri,
|
|
111
|
+
state,
|
|
112
|
+
codeChallenge,
|
|
113
|
+
grantPackagePublicKey,
|
|
114
|
+
),
|
|
115
|
+
makeHostedAuthorizationRequest: ({ redirectUri, state }) =>
|
|
116
|
+
nativeCandle.makeHostedAuthorizationRequest(redirectUri, state),
|
|
117
|
+
parseHostedAuthorizationCallback: (callbackUrl) =>
|
|
118
|
+
nativeCandle.parseHostedAuthorizationCallback(callbackUrl),
|
|
119
|
+
completeHostedAuthorization: (callbackUrl) =>
|
|
120
|
+
nativeCandle.completeHostedAuthorization(callbackUrl),
|
|
90
121
|
unlinkAccount: (ref) => nativeCandle.unlinkAccount(ref),
|
|
91
122
|
|
|
92
|
-
|
|
93
|
-
deleteUser: () => nativeCandle.deleteUser(),
|
|
123
|
+
signOut: () => nativeCandle.signOut(),
|
|
94
124
|
|
|
95
125
|
getAssetAccounts: async (query = {}) => {
|
|
96
126
|
const nativeAssetAccountsResponse = await nativeCandle.getAssetAccounts(query)
|
|
@@ -113,19 +143,18 @@ export const CandleProvider: React.FC<{
|
|
|
113
143
|
},
|
|
114
144
|
|
|
115
145
|
getTrade: async (ref) => {
|
|
116
|
-
const
|
|
117
|
-
const nativeTrade = await nativeCandle.getTrade(nativeRef)
|
|
146
|
+
const nativeTrade = await nativeCandle.getTrade(toNativeTradeRef(ref))
|
|
118
147
|
return fromNativeTrade(nativeTrade)
|
|
119
148
|
},
|
|
120
149
|
cancelTrade: async (ref) => {
|
|
121
|
-
const
|
|
122
|
-
const nativeTrade = await nativeCandle.cancelTrade(nativeRef)
|
|
150
|
+
const nativeTrade = await nativeCandle.cancelTrade(toNativeTradeRef(ref))
|
|
123
151
|
return fromNativeTrade(nativeTrade)
|
|
124
152
|
},
|
|
125
153
|
|
|
126
154
|
getTradeQuotes: async (request) => {
|
|
127
|
-
const
|
|
128
|
-
|
|
155
|
+
const nativeTradeQuotesResponse = await nativeCandle.getTradeQuotes(
|
|
156
|
+
toNativeTradeQuoteRequest(request),
|
|
157
|
+
)
|
|
129
158
|
return {
|
|
130
159
|
...nativeTradeQuotesResponse,
|
|
131
160
|
tradeQuotes: nativeTradeQuotesResponse.tradeQuotes.map(
|
|
@@ -135,8 +164,7 @@ export const CandleProvider: React.FC<{
|
|
|
135
164
|
},
|
|
136
165
|
|
|
137
166
|
executeTrade: async (quote) => {
|
|
138
|
-
const
|
|
139
|
-
const nativeTrade = await nativeCandle.executeTrade(nativeQuote)
|
|
167
|
+
const nativeTrade = await nativeCandle.executeTrade(toNativeTradeQuote(quote))
|
|
140
168
|
return fromNativeTradeAndQuote(quote)(nativeTrade)
|
|
141
169
|
},
|
|
142
170
|
}),
|
|
@@ -69,6 +69,19 @@ export type AssetAccount = {
|
|
|
69
69
|
transportAccount?: TransportAccount
|
|
70
70
|
}
|
|
71
71
|
|
|
72
|
+
export type HostedAuthorizationCallback = {
|
|
73
|
+
authorizationCode: string
|
|
74
|
+
state?: string | undefined
|
|
75
|
+
encryptedGrantPackage: string
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
export type HostedAuthorizationRequest = {
|
|
79
|
+
url: string
|
|
80
|
+
state: string
|
|
81
|
+
codeVerifier: string
|
|
82
|
+
grantPackagePublicKey: string
|
|
83
|
+
}
|
|
84
|
+
|
|
72
85
|
type AssetAccountKind = 'fiat' | 'stock' | 'crypto' | 'transport'
|
|
73
86
|
|
|
74
87
|
export type AssetAccountsQuery = {
|
|
@@ -157,6 +170,34 @@ export type EventAsset = {
|
|
|
157
170
|
service: Service
|
|
158
171
|
}
|
|
159
172
|
|
|
173
|
+
export type MessageThreadMessage = {
|
|
174
|
+
serviceMessageID?: string | undefined
|
|
175
|
+
senderProfileURN?: string | undefined
|
|
176
|
+
senderLegalName?: string | undefined
|
|
177
|
+
senderUsername?: string | undefined
|
|
178
|
+
text: string
|
|
179
|
+
dateTime?: string | undefined
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
export type MessageThreadAsset = {
|
|
183
|
+
assetKind: string // "message_thread"
|
|
184
|
+
serviceTradeID?: string | undefined
|
|
185
|
+
messages: MessageThreadMessage[]
|
|
186
|
+
linkedAccountID: string
|
|
187
|
+
service: Service
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
export type FriendRequestAssetDirection = 'received' | 'sent'
|
|
191
|
+
|
|
192
|
+
export type FriendRequestAsset = {
|
|
193
|
+
assetKind: string // "friend_request"
|
|
194
|
+
serviceTradeID?: string | undefined
|
|
195
|
+
direction: FriendRequestAssetDirection
|
|
196
|
+
user: UserCounterparty
|
|
197
|
+
linkedAccountID: string
|
|
198
|
+
service: Service
|
|
199
|
+
}
|
|
200
|
+
|
|
160
201
|
export type OtherAsset = {
|
|
161
202
|
assetKind: string // "other"
|
|
162
203
|
}
|
|
@@ -171,6 +212,8 @@ export type TradeAsset = {
|
|
|
171
212
|
stockAsset?: StockAsset
|
|
172
213
|
transportAsset?: TransportAsset
|
|
173
214
|
eventAsset?: EventAsset
|
|
215
|
+
messageThreadAsset?: MessageThreadAsset
|
|
216
|
+
friendRequestAsset?: FriendRequestAsset
|
|
174
217
|
otherAsset?: OtherAsset
|
|
175
218
|
nothingAsset?: NothingAsset
|
|
176
219
|
}
|
|
@@ -222,6 +265,8 @@ export type TradeAssetKind =
|
|
|
222
265
|
| 'crypto'
|
|
223
266
|
| 'transport'
|
|
224
267
|
| 'event'
|
|
268
|
+
| 'message_thread'
|
|
269
|
+
| 'friend_request'
|
|
225
270
|
| 'other'
|
|
226
271
|
| 'nothing'
|
|
227
272
|
|
|
@@ -276,6 +321,18 @@ export type EventAssetQuoteRequest = {
|
|
|
276
321
|
dateTime?: string | undefined
|
|
277
322
|
}
|
|
278
323
|
|
|
324
|
+
export type MessageThreadAssetQuoteRequest = {
|
|
325
|
+
assetKind: string // "message_thread"
|
|
326
|
+
text: string
|
|
327
|
+
}
|
|
328
|
+
|
|
329
|
+
export type FriendRequestAssetQuoteRequestAction = 'accept' | 'reject' | 'send' | 'withdraw'
|
|
330
|
+
|
|
331
|
+
export type FriendRequestAssetQuoteRequest = {
|
|
332
|
+
assetKind: string // "friend_request"
|
|
333
|
+
action: FriendRequestAssetQuoteRequestAction
|
|
334
|
+
}
|
|
335
|
+
|
|
279
336
|
export type NothingAssetQuoteRequest = {
|
|
280
337
|
assetKind: string // "nothing"
|
|
281
338
|
}
|
|
@@ -290,6 +347,8 @@ export type TradeAssetQuoteRequest = {
|
|
|
290
347
|
stockAssetQuoteRequest?: StockAssetQuoteRequest
|
|
291
348
|
transportAssetQuoteRequest?: TransportAssetQuoteRequest
|
|
292
349
|
eventAssetQuoteRequest?: EventAssetQuoteRequest
|
|
350
|
+
messageThreadAssetQuoteRequest?: MessageThreadAssetQuoteRequest
|
|
351
|
+
friendRequestAssetQuoteRequest?: FriendRequestAssetQuoteRequest
|
|
293
352
|
nothingAssetQuoteRequest?: NothingAssetQuoteRequest
|
|
294
353
|
otherAssetQuoteRequest?: OtherAssetQuoteRequest
|
|
295
354
|
}
|
|
@@ -336,12 +395,13 @@ export type TradeQuote = {
|
|
|
336
395
|
expirationDateTime: string
|
|
337
396
|
}
|
|
338
397
|
|
|
339
|
-
export type
|
|
398
|
+
export type ServiceID =
|
|
340
399
|
| 'robinhood'
|
|
341
400
|
| 'cash_app'
|
|
342
401
|
| 'venmo'
|
|
343
402
|
| 'apple'
|
|
344
403
|
| 'sandbox'
|
|
404
|
+
| 'spotify'
|
|
345
405
|
| 'uber'
|
|
346
406
|
| 'lyft'
|
|
347
407
|
| 'chime'
|
|
@@ -351,6 +411,12 @@ export type Service =
|
|
|
351
411
|
| 'american_express'
|
|
352
412
|
| 'jpmorgan_chase'
|
|
353
413
|
| 'bank_of_america'
|
|
414
|
+
| 'us_bank'
|
|
415
|
+
| 'pnc'
|
|
416
|
+
| 'td_bank_us'
|
|
417
|
+
| 'fidelity'
|
|
418
|
+
| 'adp'
|
|
419
|
+
| 'toyota_financial_services'
|
|
354
420
|
| 'capital_one'
|
|
355
421
|
| 'citibank'
|
|
356
422
|
| 'vanguard'
|
|
@@ -369,7 +435,6 @@ export type Service =
|
|
|
369
435
|
| 'united'
|
|
370
436
|
| 'jetblue'
|
|
371
437
|
| 'southwest'
|
|
372
|
-
| 'hawaiian'
|
|
373
438
|
| 'hotels'
|
|
374
439
|
| 'geico'
|
|
375
440
|
| 'progressive'
|
|
@@ -413,10 +478,20 @@ export type Service =
|
|
|
413
478
|
| 'fox'
|
|
414
479
|
| 'perplexity'
|
|
415
480
|
| 'openai'
|
|
481
|
+
| 'claude'
|
|
416
482
|
| 'polymarket'
|
|
417
483
|
| 'espn'
|
|
418
484
|
| 'youtube'
|
|
419
485
|
| 'netflix'
|
|
486
|
+
| 'hbo_max'
|
|
487
|
+
|
|
488
|
+
export type Service = {
|
|
489
|
+
id: ServiceID
|
|
490
|
+
displayName: string
|
|
491
|
+
logoURL: string
|
|
492
|
+
thumbhash?: string | undefined
|
|
493
|
+
accentColor: string
|
|
494
|
+
}
|
|
420
495
|
|
|
421
496
|
export type PresentationBackground = 'default' | 'blur'
|
|
422
497
|
export type PresentationStyle = 'sheet' | 'fullScreen'
|
|
@@ -492,6 +567,18 @@ export type EventAssetRef = {
|
|
|
492
567
|
linkedAccountID: string
|
|
493
568
|
}
|
|
494
569
|
|
|
570
|
+
export type MessageThreadAssetRef = {
|
|
571
|
+
assetKind: string // "message_thread"
|
|
572
|
+
serviceTradeID: string
|
|
573
|
+
linkedAccountID: string
|
|
574
|
+
}
|
|
575
|
+
|
|
576
|
+
export type FriendRequestAssetRef = {
|
|
577
|
+
assetKind: string // "friend_request"
|
|
578
|
+
serviceTradeID?: string | undefined
|
|
579
|
+
linkedAccountID: string
|
|
580
|
+
}
|
|
581
|
+
|
|
495
582
|
export type OtherAssetRef = {
|
|
496
583
|
assetKind: string // "other"
|
|
497
584
|
}
|
|
@@ -506,6 +593,8 @@ export type TradeAssetRef = {
|
|
|
506
593
|
stockAssetRef?: StockAssetRef
|
|
507
594
|
transportAssetRef?: TransportAssetRef
|
|
508
595
|
eventAssetRef?: EventAssetRef
|
|
596
|
+
messageThreadAssetRef?: MessageThreadAssetRef
|
|
597
|
+
friendRequestAssetRef?: FriendRequestAssetRef
|
|
509
598
|
otherAssetRef?: OtherAssetRef
|
|
510
599
|
nothingAssetRef?: NothingAssetRef
|
|
511
600
|
}
|
|
@@ -548,13 +637,14 @@ export type TradeQuotesResponse = {
|
|
|
548
637
|
export interface RNCandle extends HybridObject<{ ios: 'swift'; android: 'kotlin' }> {
|
|
549
638
|
candleLinkSheet(
|
|
550
639
|
isPresented: boolean,
|
|
551
|
-
services:
|
|
640
|
+
services: ServiceID[] | undefined,
|
|
641
|
+
showSandbox: boolean,
|
|
552
642
|
cornerRadius: number,
|
|
553
643
|
customerName: string | undefined,
|
|
554
644
|
showDynamicLoading: boolean,
|
|
555
645
|
presentationBackground: PresentationBackground,
|
|
556
646
|
presentationStyle: PresentationStyle,
|
|
557
|
-
onSuccess: (
|
|
647
|
+
onSuccess: (linkedAccount: LinkedAccount) => void,
|
|
558
648
|
): void
|
|
559
649
|
candleTradeExecutionSheet(
|
|
560
650
|
tradeQuote: TradeQuote,
|
|
@@ -562,7 +652,7 @@ export interface RNCandle extends HybridObject<{ ios: 'swift'; android: 'kotlin'
|
|
|
562
652
|
completion: (result: TradeExecutionResult) => void,
|
|
563
653
|
): void
|
|
564
654
|
|
|
565
|
-
initialize(
|
|
655
|
+
initialize(clientID: string, accessGroup: string | undefined): void
|
|
566
656
|
|
|
567
657
|
getLinkedAccounts(): Promise<LinkedAccount[]>
|
|
568
658
|
getLinkedAccount(ref: LinkedAccountRef): Promise<LinkedAccount>
|
|
@@ -575,6 +665,18 @@ export interface RNCandle extends HybridObject<{ ios: 'swift'; android: 'kotlin'
|
|
|
575
665
|
getTradeQuotes(request: TradeQuotesRequest): Promise<TradeQuotesResponse>
|
|
576
666
|
executeTrade(quote: TradeQuote): Promise<Trade>
|
|
577
667
|
|
|
578
|
-
|
|
579
|
-
|
|
668
|
+
hostedAuthorizationUrl(
|
|
669
|
+
redirectUri: string,
|
|
670
|
+
state: string,
|
|
671
|
+
codeChallenge: string,
|
|
672
|
+
grantPackagePublicKey: string,
|
|
673
|
+
): string
|
|
674
|
+
makeHostedAuthorizationRequest(
|
|
675
|
+
redirectUri: string,
|
|
676
|
+
state: string | undefined,
|
|
677
|
+
): HostedAuthorizationRequest
|
|
678
|
+
parseHostedAuthorizationCallback(callbackUrl: string): HostedAuthorizationCallback
|
|
679
|
+
completeHostedAuthorization(callbackUrl: string): Promise<void>
|
|
680
|
+
|
|
681
|
+
signOut(): Promise<void>
|
|
580
682
|
}
|
package/src/types.ts
CHANGED
|
@@ -23,9 +23,15 @@ import type {
|
|
|
23
23
|
FiatAsset,
|
|
24
24
|
FiatAssetQuoteRequest,
|
|
25
25
|
FiatAssetRef,
|
|
26
|
+
FriendRequestAsset,
|
|
27
|
+
FriendRequestAssetQuoteRequest,
|
|
28
|
+
FriendRequestAssetRef,
|
|
26
29
|
InactiveLinkedAccountDetails,
|
|
27
30
|
MerchantCounterparty,
|
|
28
31
|
MerchantCounterpartyQuoteRequest,
|
|
32
|
+
MessageThreadAsset,
|
|
33
|
+
MessageThreadAssetQuoteRequest,
|
|
34
|
+
MessageThreadAssetRef,
|
|
29
35
|
NothingAsset,
|
|
30
36
|
NothingAssetQuoteRequest,
|
|
31
37
|
NothingAssetRef,
|
|
@@ -59,6 +65,7 @@ export type {
|
|
|
59
65
|
PresentationBackground,
|
|
60
66
|
PresentationStyle,
|
|
61
67
|
Service,
|
|
68
|
+
ServiceID,
|
|
62
69
|
TradeAssetKind,
|
|
63
70
|
TradeState,
|
|
64
71
|
TradesQuery,
|
|
@@ -66,7 +73,15 @@ export type {
|
|
|
66
73
|
WireDetails,
|
|
67
74
|
} from './specs/RNCandle.nitro'
|
|
68
75
|
|
|
69
|
-
export type TradeQuoteAssetKind =
|
|
76
|
+
export type TradeQuoteAssetKind =
|
|
77
|
+
| 'nothing'
|
|
78
|
+
| 'transport'
|
|
79
|
+
| 'event'
|
|
80
|
+
| 'message_thread'
|
|
81
|
+
| 'friend_request'
|
|
82
|
+
| 'fiat'
|
|
83
|
+
| 'stock'
|
|
84
|
+
| 'crypto'
|
|
70
85
|
|
|
71
86
|
// Discriminated unions
|
|
72
87
|
|
|
@@ -79,6 +94,8 @@ export type TradeAssetQuoteRequest =
|
|
|
79
94
|
| ({ assetKind: 'fiat' } & FiatAssetQuoteRequest)
|
|
80
95
|
| ({ assetKind: 'stock' } & StockAssetQuoteRequest)
|
|
81
96
|
| ({ assetKind: 'crypto' } & CryptoAssetQuoteRequest)
|
|
97
|
+
| ({ assetKind: 'message_thread' } & MessageThreadAssetQuoteRequest)
|
|
98
|
+
| ({ assetKind: 'friend_request' } & FriendRequestAssetQuoteRequest)
|
|
82
99
|
| ({ assetKind: 'other' } & OtherAssetQuoteRequest)
|
|
83
100
|
|
|
84
101
|
export type CounterpartyQuoteRequest =
|
|
@@ -99,6 +116,8 @@ export type TradeAsset =
|
|
|
99
116
|
| ({ assetKind: 'event' } & EventAsset)
|
|
100
117
|
| ({ assetKind: 'fiat' } & FiatAsset)
|
|
101
118
|
| ({ assetKind: 'stock' } & StockAsset)
|
|
119
|
+
| ({ assetKind: 'message_thread' } & MessageThreadAsset)
|
|
120
|
+
| ({ assetKind: 'friend_request' } & FriendRequestAsset)
|
|
102
121
|
| ({ assetKind: 'crypto' } & CryptoAsset)
|
|
103
122
|
|
|
104
123
|
export type Counterparty =
|
|
@@ -131,6 +150,8 @@ export type TradeAssetRef =
|
|
|
131
150
|
| ({ assetKind: 'other' } & OtherAssetRef)
|
|
132
151
|
| ({ assetKind: 'fiat' } & FiatAssetRef)
|
|
133
152
|
| ({ assetKind: 'stock' } & StockAssetRef)
|
|
153
|
+
| ({ assetKind: 'message_thread' } & MessageThreadAssetRef)
|
|
154
|
+
| ({ assetKind: 'friend_request' } & FriendRequestAssetRef)
|
|
134
155
|
| ({ assetKind: 'crypto' } & CryptoAssetRef)
|
|
135
156
|
|
|
136
157
|
export type LinkedAccountDetails =
|
|
@@ -197,6 +218,12 @@ export const toNativeTradeAssetRef = (tradeAssetRef: TradeAssetRef): NativeTrade
|
|
|
197
218
|
case 'event': {
|
|
198
219
|
return { eventAssetRef: tradeAssetRef }
|
|
199
220
|
}
|
|
221
|
+
case 'message_thread': {
|
|
222
|
+
return { messageThreadAssetRef: tradeAssetRef }
|
|
223
|
+
}
|
|
224
|
+
case 'friend_request': {
|
|
225
|
+
return { friendRequestAssetRef: tradeAssetRef }
|
|
226
|
+
}
|
|
200
227
|
case 'other': {
|
|
201
228
|
return { otherAssetRef: tradeAssetRef }
|
|
202
229
|
}
|
|
@@ -223,6 +250,12 @@ export const toNativeTradeAsset = (tradeAsset: TradeAsset): NativeTradeAsset =>
|
|
|
223
250
|
case 'event': {
|
|
224
251
|
return { eventAsset: tradeAsset }
|
|
225
252
|
}
|
|
253
|
+
case 'message_thread': {
|
|
254
|
+
return { messageThreadAsset: tradeAsset }
|
|
255
|
+
}
|
|
256
|
+
case 'friend_request': {
|
|
257
|
+
return { friendRequestAsset: tradeAsset }
|
|
258
|
+
}
|
|
226
259
|
case 'other': {
|
|
227
260
|
return { otherAsset: tradeAsset }
|
|
228
261
|
}
|
|
@@ -265,6 +298,12 @@ export const toNativeTradeAssetQuoteRequest = (
|
|
|
265
298
|
case 'event': {
|
|
266
299
|
return { eventAssetQuoteRequest: tradeAssetQuoteRequest }
|
|
267
300
|
}
|
|
301
|
+
case 'message_thread': {
|
|
302
|
+
return { messageThreadAssetQuoteRequest: tradeAssetQuoteRequest }
|
|
303
|
+
}
|
|
304
|
+
case 'friend_request': {
|
|
305
|
+
return { friendRequestAssetQuoteRequest: tradeAssetQuoteRequest }
|
|
306
|
+
}
|
|
268
307
|
case 'other': {
|
|
269
308
|
return { otherAssetQuoteRequest: tradeAssetQuoteRequest }
|
|
270
309
|
}
|
|
@@ -346,6 +385,16 @@ export const fromNativeTradeAsset = (nativeTradeAsset: NativeTradeAsset): TradeA
|
|
|
346
385
|
...nativeTradeAsset.eventAsset,
|
|
347
386
|
assetKind: 'event',
|
|
348
387
|
}
|
|
388
|
+
} else if (nativeTradeAsset.messageThreadAsset !== undefined) {
|
|
389
|
+
return {
|
|
390
|
+
...nativeTradeAsset.messageThreadAsset,
|
|
391
|
+
assetKind: 'message_thread',
|
|
392
|
+
}
|
|
393
|
+
} else if (nativeTradeAsset.friendRequestAsset !== undefined) {
|
|
394
|
+
return {
|
|
395
|
+
...nativeTradeAsset.friendRequestAsset,
|
|
396
|
+
assetKind: 'friend_request',
|
|
397
|
+
}
|
|
349
398
|
} else if (nativeTradeAsset.otherAsset !== undefined) {
|
|
350
399
|
return { assetKind: 'other' }
|
|
351
400
|
} else if (nativeTradeAsset.nothingAsset !== undefined) {
|