react-native-candle 0.1.19 → 0.1.21
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/ReactNativeCandle.podspec +1 -1
- package/ios/Sources/CandleActionViewModel.swift +13 -0
- package/ios/Sources/CandleTradeExecutionSheetWrapper.swift +31 -0
- package/ios/Sources/HostingViewController.swift +7 -0
- package/ios/Sources/RNCandle.swift +300 -84
- package/lib/commonjs/index.js +140 -15
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/index.js +140 -15
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/commonjs/src/index.d.ts +46 -13
- package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/specs/RNCandle.nitro.d.ts +50 -2
- package/lib/typescript/commonjs/src/specs/RNCandle.nitro.d.ts.map +1 -1
- package/lib/typescript/module/src/index.d.ts +46 -13
- package/lib/typescript/module/src/index.d.ts.map +1 -1
- package/lib/typescript/module/src/specs/RNCandle.nitro.d.ts +50 -2
- package/lib/typescript/module/src/specs/RNCandle.nitro.d.ts.map +1 -1
- package/nitrogen/generated/ios/ReactNativeCandle-Swift-Cxx-Bridge.cpp +24 -8
- package/nitrogen/generated/ios/ReactNativeCandle-Swift-Cxx-Bridge.hpp +271 -113
- package/nitrogen/generated/ios/ReactNativeCandle-Swift-Cxx-Umbrella.hpp +30 -3
- package/nitrogen/generated/ios/c++/HybridRNCandleSpecSwift.hpp +106 -57
- package/nitrogen/generated/ios/swift/AssetAccountRef.swift +55 -0
- package/nitrogen/generated/ios/swift/FiatAssetRef.swift +75 -0
- package/nitrogen/generated/ios/swift/Func_void_AssetAccount.swift +44 -0
- package/nitrogen/generated/ios/swift/Func_void_LinkedAccount.swift +5 -5
- package/nitrogen/generated/ios/swift/Func_void_TradeExecutionResult.swift +46 -0
- package/nitrogen/generated/ios/swift/HybridRNCandleSpec.swift +7 -2
- package/nitrogen/generated/ios/swift/HybridRNCandleSpec_cxx.swift +86 -24
- package/nitrogen/generated/ios/swift/LinkedAccountRef.swift +33 -0
- package/nitrogen/generated/ios/swift/MarketTradeAssetRef.swift +55 -0
- package/nitrogen/generated/ios/swift/NothingAssetRef.swift +33 -0
- package/nitrogen/generated/ios/swift/OtherAssetRef.swift +33 -0
- package/nitrogen/generated/ios/swift/TradeAssetRef.swift +176 -0
- package/nitrogen/generated/ios/swift/TradeExecutionResult.swift +82 -0
- package/nitrogen/generated/ios/swift/TradeQuote.swift +13 -2
- package/nitrogen/generated/ios/swift/TradeRef.swift +44 -0
- package/nitrogen/generated/ios/swift/TransportAssetRef.swift +55 -0
- package/nitrogen/generated/shared/c++/AssetAccountRef.hpp +77 -0
- package/nitrogen/generated/shared/c++/FiatAssetRef.hpp +78 -0
- package/nitrogen/generated/shared/c++/HybridRNCandleSpec.cpp +4 -1
- package/nitrogen/generated/shared/c++/HybridRNCandleSpec.hpp +20 -8
- package/nitrogen/generated/shared/c++/{ExecuteTradeRequest.hpp → LinkedAccountRef.hpp} +11 -15
- package/nitrogen/generated/shared/c++/MarketTradeAssetRef.hpp +77 -0
- package/nitrogen/generated/shared/c++/NothingAssetRef.hpp +69 -0
- package/nitrogen/generated/shared/c++/OtherAssetRef.hpp +69 -0
- package/nitrogen/generated/shared/c++/TradeAssetRef.hpp +99 -0
- package/nitrogen/generated/shared/c++/TradeExecutionResult.hpp +76 -0
- package/nitrogen/generated/shared/c++/TradeQuote.hpp +7 -2
- package/nitrogen/generated/shared/c++/TradeRef.hpp +74 -0
- package/nitrogen/generated/shared/c++/TransportAssetRef.hpp +77 -0
- package/package.json +1 -1
- package/src/index.ts +199 -33
- package/src/specs/RNCandle.nitro.ts +64 -2
- package/nitrogen/generated/ios/swift/ExecuteTradeRequest.swift +0 -44
package/lib/commonjs/index.js
CHANGED
|
@@ -11,6 +11,31 @@ class CandleClient {
|
|
|
11
11
|
this.candle = CandleHybridObject;
|
|
12
12
|
this.candle.initialize(appUser);
|
|
13
13
|
}
|
|
14
|
+
presentTradeExecutionSheet(input) {
|
|
15
|
+
const quote = this.convertTradeQuote(input.tradeQuote);
|
|
16
|
+
this.candle.candleTradeExecutionSheet(quote, input.presentationBackground ?? "default", result => {
|
|
17
|
+
if (input.completion === undefined) {
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
if (result.trade !== undefined) {
|
|
21
|
+
input.completion({
|
|
22
|
+
kind: "success",
|
|
23
|
+
...result.trade,
|
|
24
|
+
counterparty: this.convertToCounterparty(result.trade.counterparty),
|
|
25
|
+
lost: this.convertTradeAsset(result.trade.lost),
|
|
26
|
+
gained: this.convertTradeAsset(result.trade.gained)
|
|
27
|
+
});
|
|
28
|
+
} else {
|
|
29
|
+
if (result.error === undefined) {
|
|
30
|
+
throw new Error("Internal Candle Error: corrupted trade execution result.");
|
|
31
|
+
}
|
|
32
|
+
input.completion({
|
|
33
|
+
kind: "failure",
|
|
34
|
+
error: result.error
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
}
|
|
14
39
|
presentCandleLinkSheet({
|
|
15
40
|
services = undefined,
|
|
16
41
|
cornerRadius = 24,
|
|
@@ -46,8 +71,11 @@ class CandleClient {
|
|
|
46
71
|
}
|
|
47
72
|
});
|
|
48
73
|
}
|
|
49
|
-
async
|
|
50
|
-
|
|
74
|
+
async getLinkedAccount(ref) {
|
|
75
|
+
return this.candle.getLinkedAccount(ref);
|
|
76
|
+
}
|
|
77
|
+
async unlinkAccount(path) {
|
|
78
|
+
await this.candle.unlinkAccount(path);
|
|
51
79
|
}
|
|
52
80
|
async deleteUser() {
|
|
53
81
|
await this.candle.deleteUser();
|
|
@@ -55,16 +83,6 @@ class CandleClient {
|
|
|
55
83
|
async getAvailableTools() {
|
|
56
84
|
return this.candle.getAvailableTools();
|
|
57
85
|
}
|
|
58
|
-
async executeTrade(request) {
|
|
59
|
-
const result = await this.candle.executeTrade(request);
|
|
60
|
-
return {
|
|
61
|
-
dateTime: result.dateTime,
|
|
62
|
-
state: result.state,
|
|
63
|
-
counterparty: this.convertToCounterparty(result.counterparty),
|
|
64
|
-
lost: this.convertTradeAsset(result.lost),
|
|
65
|
-
gained: this.convertTradeAsset(result.gained)
|
|
66
|
-
};
|
|
67
|
-
}
|
|
68
86
|
async executeTool(tool) {
|
|
69
87
|
return this.candle.executeTool(tool);
|
|
70
88
|
}
|
|
@@ -72,6 +90,10 @@ class CandleClient {
|
|
|
72
90
|
const accounts = await this.candle.getAssetAccounts(query);
|
|
73
91
|
return accounts.map(account => this.convertToAssetAccount(account));
|
|
74
92
|
}
|
|
93
|
+
async getAssetAccount(ref) {
|
|
94
|
+
const account = await this.candle.getAssetAccount(ref);
|
|
95
|
+
return this.convertToAssetAccount(account);
|
|
96
|
+
}
|
|
75
97
|
async getTrades(query = {}) {
|
|
76
98
|
const trades = await this.candle.getTrades(query);
|
|
77
99
|
return trades.map(({
|
|
@@ -88,6 +110,19 @@ class CandleClient {
|
|
|
88
110
|
gained: this.convertTradeAsset(gained)
|
|
89
111
|
}));
|
|
90
112
|
}
|
|
113
|
+
async getTrade(input) {
|
|
114
|
+
const trade = await this.candle.getTrade({
|
|
115
|
+
lost: this.convertTradeAssetRef(input.lost),
|
|
116
|
+
gained: this.convertTradeAssetRef(input.gained)
|
|
117
|
+
});
|
|
118
|
+
return {
|
|
119
|
+
dateTime: trade.dateTime,
|
|
120
|
+
state: trade.state,
|
|
121
|
+
counterparty: this.convertToCounterparty(trade.counterparty),
|
|
122
|
+
lost: this.convertTradeAsset(trade.lost),
|
|
123
|
+
gained: this.convertTradeAsset(trade.gained)
|
|
124
|
+
};
|
|
125
|
+
}
|
|
91
126
|
async getTradeQuotes(request) {
|
|
92
127
|
let gainedRequest;
|
|
93
128
|
switch (request.gained.assetKind) {
|
|
@@ -120,10 +155,92 @@ class CandleClient {
|
|
|
120
155
|
return quotes.map(quote => {
|
|
121
156
|
return {
|
|
122
157
|
gained: this.convertTradeAsset(quote.gained),
|
|
123
|
-
lost: this.convertTradeAsset(quote.lost)
|
|
158
|
+
lost: this.convertTradeAsset(quote.lost),
|
|
159
|
+
context: quote.context
|
|
124
160
|
};
|
|
125
161
|
});
|
|
126
162
|
}
|
|
163
|
+
convertTradeAssetRef(tradeAssetRef) {
|
|
164
|
+
switch (tradeAssetRef.assetKind) {
|
|
165
|
+
case "fiat":
|
|
166
|
+
return {
|
|
167
|
+
fiatAssetRef: {
|
|
168
|
+
assetKind: "fiat",
|
|
169
|
+
linkedAccountID: tradeAssetRef.linkedAccountID,
|
|
170
|
+
serviceTradeID: tradeAssetRef.serviceTradeID
|
|
171
|
+
}
|
|
172
|
+
};
|
|
173
|
+
case "stock":
|
|
174
|
+
case "crypto":
|
|
175
|
+
return {
|
|
176
|
+
marketTradeAssetRef: {
|
|
177
|
+
assetKind: tradeAssetRef.assetKind,
|
|
178
|
+
linkedAccountID: tradeAssetRef.linkedAccountID,
|
|
179
|
+
serviceTradeID: tradeAssetRef.serviceTradeID
|
|
180
|
+
}
|
|
181
|
+
};
|
|
182
|
+
case "transport":
|
|
183
|
+
return {
|
|
184
|
+
transportAssetRef: {
|
|
185
|
+
assetKind: "transport",
|
|
186
|
+
linkedAccountID: tradeAssetRef.linkedAccountID,
|
|
187
|
+
serviceTradeID: tradeAssetRef.serviceTradeID
|
|
188
|
+
}
|
|
189
|
+
};
|
|
190
|
+
case "other":
|
|
191
|
+
return {
|
|
192
|
+
otherAssetRef: {
|
|
193
|
+
assetKind: "other"
|
|
194
|
+
}
|
|
195
|
+
};
|
|
196
|
+
case "nothing":
|
|
197
|
+
return {
|
|
198
|
+
nothingAssetRef: {
|
|
199
|
+
assetKind: "nothing"
|
|
200
|
+
}
|
|
201
|
+
};
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
toInternalTradeAsset(asset) {
|
|
205
|
+
switch (asset.assetKind) {
|
|
206
|
+
case "fiat":
|
|
207
|
+
return {
|
|
208
|
+
fiatAsset: asset
|
|
209
|
+
};
|
|
210
|
+
case "stock":
|
|
211
|
+
case "crypto":
|
|
212
|
+
return {
|
|
213
|
+
marketTradeAsset: {
|
|
214
|
+
...asset,
|
|
215
|
+
assetKind: asset.assetKind
|
|
216
|
+
}
|
|
217
|
+
};
|
|
218
|
+
case "transport":
|
|
219
|
+
return {
|
|
220
|
+
transportAsset: asset
|
|
221
|
+
};
|
|
222
|
+
case "other":
|
|
223
|
+
return {
|
|
224
|
+
otherAsset: asset
|
|
225
|
+
};
|
|
226
|
+
case "nothing":
|
|
227
|
+
return {
|
|
228
|
+
nothingAsset: asset
|
|
229
|
+
};
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
convertTradeQuote(tradeQuote) {
|
|
233
|
+
const {
|
|
234
|
+
context,
|
|
235
|
+
gained,
|
|
236
|
+
lost
|
|
237
|
+
} = tradeQuote;
|
|
238
|
+
return {
|
|
239
|
+
context,
|
|
240
|
+
gained: this.toInternalTradeAsset(gained),
|
|
241
|
+
lost: this.toInternalTradeAsset(lost)
|
|
242
|
+
};
|
|
243
|
+
}
|
|
127
244
|
convertTradeAsset(tradeAsset) {
|
|
128
245
|
if (tradeAsset.fiatAsset !== undefined) {
|
|
129
246
|
return {
|
|
@@ -131,9 +248,10 @@ class CandleClient {
|
|
|
131
248
|
assetKind: "fiat"
|
|
132
249
|
};
|
|
133
250
|
} else if (tradeAsset.marketTradeAsset !== undefined) {
|
|
251
|
+
this.assertMarketAssetKind(tradeAsset.marketTradeAsset.assetKind);
|
|
134
252
|
return {
|
|
135
253
|
...tradeAsset.marketTradeAsset,
|
|
136
|
-
assetKind: tradeAsset.marketTradeAsset.assetKind
|
|
254
|
+
assetKind: this.assertMarketAssetKind(tradeAsset.marketTradeAsset.assetKind)
|
|
137
255
|
};
|
|
138
256
|
} else if (tradeAsset.transportAsset !== undefined) {
|
|
139
257
|
return {
|
|
@@ -172,6 +290,13 @@ class CandleClient {
|
|
|
172
290
|
throw new Error("Unknown counterparty kind");
|
|
173
291
|
}
|
|
174
292
|
}
|
|
293
|
+
assertMarketAssetKind(kind) {
|
|
294
|
+
if (kind !== "stock" && kind !== "crypto") {
|
|
295
|
+
throw new Error("Internal Candle Error: corrupted market account.");
|
|
296
|
+
} else {
|
|
297
|
+
return kind;
|
|
298
|
+
}
|
|
299
|
+
}
|
|
175
300
|
convertToAssetAccount(account) {
|
|
176
301
|
const {
|
|
177
302
|
legalAccountKind,
|
|
@@ -196,7 +321,7 @@ class CandleClient {
|
|
|
196
321
|
nickname,
|
|
197
322
|
details: {
|
|
198
323
|
...marketAccountDetails,
|
|
199
|
-
assetKind: marketAccountDetails.assetKind
|
|
324
|
+
assetKind: this.assertMarketAssetKind(marketAccountDetails.assetKind)
|
|
200
325
|
}
|
|
201
326
|
};
|
|
202
327
|
} else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNativeNitroModules","require","CandleClient","constructor","appUser","CandleHybridObject","NitroModules","createHybridObject","candle","initialize","
|
|
1
|
+
{"version":3,"names":["_reactNativeNitroModules","require","CandleClient","constructor","appUser","CandleHybridObject","NitroModules","createHybridObject","candle","initialize","presentTradeExecutionSheet","input","quote","convertTradeQuote","tradeQuote","candleTradeExecutionSheet","presentationBackground","result","completion","undefined","trade","kind","counterparty","convertToCounterparty","lost","convertTradeAsset","gained","error","Error","presentCandleLinkSheet","services","cornerRadius","customerName","showDynamicLoading","presentationStyle","onSuccess","candleLinkSheet","getLinkedAccounts","accounts","map","account","details","activeLinkedAccountDetails","state","inactiveLinkedAccountDetails","getLinkedAccount","ref","unlinkAccount","path","deleteUser","getAvailableTools","executeTool","tool","getAssetAccounts","query","convertToAssetAccount","getAssetAccount","getTrades","trades","dateTime","getTrade","convertTradeAssetRef","getTradeQuotes","request","gainedRequest","assetKind","fiatAssetQuoteRequest","marketAssetQuoteRequest","transportAssetQuoteRequest","nothingAssetQuoteRequest","quotes","linkedAccountIDs","context","tradeAssetRef","fiatAssetRef","linkedAccountID","serviceTradeID","marketTradeAssetRef","transportAssetRef","otherAssetRef","nothingAssetRef","toInternalTradeAsset","asset","fiatAsset","marketTradeAsset","transportAsset","otherAsset","nothingAsset","tradeAsset","assertMarketAssetKind","merchantCounterparty","userCounterparty","serviceCounterparty","legalAccountKind","nickname","fiatAccountDetails","marketAccountDetails","exports"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
|
@@ -7,6 +7,31 @@ export class CandleClient {
|
|
|
7
7
|
this.candle = CandleHybridObject;
|
|
8
8
|
this.candle.initialize(appUser);
|
|
9
9
|
}
|
|
10
|
+
presentTradeExecutionSheet(input) {
|
|
11
|
+
const quote = this.convertTradeQuote(input.tradeQuote);
|
|
12
|
+
this.candle.candleTradeExecutionSheet(quote, input.presentationBackground ?? "default", result => {
|
|
13
|
+
if (input.completion === undefined) {
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
if (result.trade !== undefined) {
|
|
17
|
+
input.completion({
|
|
18
|
+
kind: "success",
|
|
19
|
+
...result.trade,
|
|
20
|
+
counterparty: this.convertToCounterparty(result.trade.counterparty),
|
|
21
|
+
lost: this.convertTradeAsset(result.trade.lost),
|
|
22
|
+
gained: this.convertTradeAsset(result.trade.gained)
|
|
23
|
+
});
|
|
24
|
+
} else {
|
|
25
|
+
if (result.error === undefined) {
|
|
26
|
+
throw new Error("Internal Candle Error: corrupted trade execution result.");
|
|
27
|
+
}
|
|
28
|
+
input.completion({
|
|
29
|
+
kind: "failure",
|
|
30
|
+
error: result.error
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
}
|
|
10
35
|
presentCandleLinkSheet({
|
|
11
36
|
services = undefined,
|
|
12
37
|
cornerRadius = 24,
|
|
@@ -42,8 +67,11 @@ export class CandleClient {
|
|
|
42
67
|
}
|
|
43
68
|
});
|
|
44
69
|
}
|
|
45
|
-
async
|
|
46
|
-
|
|
70
|
+
async getLinkedAccount(ref) {
|
|
71
|
+
return this.candle.getLinkedAccount(ref);
|
|
72
|
+
}
|
|
73
|
+
async unlinkAccount(path) {
|
|
74
|
+
await this.candle.unlinkAccount(path);
|
|
47
75
|
}
|
|
48
76
|
async deleteUser() {
|
|
49
77
|
await this.candle.deleteUser();
|
|
@@ -51,16 +79,6 @@ export class CandleClient {
|
|
|
51
79
|
async getAvailableTools() {
|
|
52
80
|
return this.candle.getAvailableTools();
|
|
53
81
|
}
|
|
54
|
-
async executeTrade(request) {
|
|
55
|
-
const result = await this.candle.executeTrade(request);
|
|
56
|
-
return {
|
|
57
|
-
dateTime: result.dateTime,
|
|
58
|
-
state: result.state,
|
|
59
|
-
counterparty: this.convertToCounterparty(result.counterparty),
|
|
60
|
-
lost: this.convertTradeAsset(result.lost),
|
|
61
|
-
gained: this.convertTradeAsset(result.gained)
|
|
62
|
-
};
|
|
63
|
-
}
|
|
64
82
|
async executeTool(tool) {
|
|
65
83
|
return this.candle.executeTool(tool);
|
|
66
84
|
}
|
|
@@ -68,6 +86,10 @@ export class CandleClient {
|
|
|
68
86
|
const accounts = await this.candle.getAssetAccounts(query);
|
|
69
87
|
return accounts.map(account => this.convertToAssetAccount(account));
|
|
70
88
|
}
|
|
89
|
+
async getAssetAccount(ref) {
|
|
90
|
+
const account = await this.candle.getAssetAccount(ref);
|
|
91
|
+
return this.convertToAssetAccount(account);
|
|
92
|
+
}
|
|
71
93
|
async getTrades(query = {}) {
|
|
72
94
|
const trades = await this.candle.getTrades(query);
|
|
73
95
|
return trades.map(({
|
|
@@ -84,6 +106,19 @@ export class CandleClient {
|
|
|
84
106
|
gained: this.convertTradeAsset(gained)
|
|
85
107
|
}));
|
|
86
108
|
}
|
|
109
|
+
async getTrade(input) {
|
|
110
|
+
const trade = await this.candle.getTrade({
|
|
111
|
+
lost: this.convertTradeAssetRef(input.lost),
|
|
112
|
+
gained: this.convertTradeAssetRef(input.gained)
|
|
113
|
+
});
|
|
114
|
+
return {
|
|
115
|
+
dateTime: trade.dateTime,
|
|
116
|
+
state: trade.state,
|
|
117
|
+
counterparty: this.convertToCounterparty(trade.counterparty),
|
|
118
|
+
lost: this.convertTradeAsset(trade.lost),
|
|
119
|
+
gained: this.convertTradeAsset(trade.gained)
|
|
120
|
+
};
|
|
121
|
+
}
|
|
87
122
|
async getTradeQuotes(request) {
|
|
88
123
|
let gainedRequest;
|
|
89
124
|
switch (request.gained.assetKind) {
|
|
@@ -116,10 +151,92 @@ export class CandleClient {
|
|
|
116
151
|
return quotes.map(quote => {
|
|
117
152
|
return {
|
|
118
153
|
gained: this.convertTradeAsset(quote.gained),
|
|
119
|
-
lost: this.convertTradeAsset(quote.lost)
|
|
154
|
+
lost: this.convertTradeAsset(quote.lost),
|
|
155
|
+
context: quote.context
|
|
120
156
|
};
|
|
121
157
|
});
|
|
122
158
|
}
|
|
159
|
+
convertTradeAssetRef(tradeAssetRef) {
|
|
160
|
+
switch (tradeAssetRef.assetKind) {
|
|
161
|
+
case "fiat":
|
|
162
|
+
return {
|
|
163
|
+
fiatAssetRef: {
|
|
164
|
+
assetKind: "fiat",
|
|
165
|
+
linkedAccountID: tradeAssetRef.linkedAccountID,
|
|
166
|
+
serviceTradeID: tradeAssetRef.serviceTradeID
|
|
167
|
+
}
|
|
168
|
+
};
|
|
169
|
+
case "stock":
|
|
170
|
+
case "crypto":
|
|
171
|
+
return {
|
|
172
|
+
marketTradeAssetRef: {
|
|
173
|
+
assetKind: tradeAssetRef.assetKind,
|
|
174
|
+
linkedAccountID: tradeAssetRef.linkedAccountID,
|
|
175
|
+
serviceTradeID: tradeAssetRef.serviceTradeID
|
|
176
|
+
}
|
|
177
|
+
};
|
|
178
|
+
case "transport":
|
|
179
|
+
return {
|
|
180
|
+
transportAssetRef: {
|
|
181
|
+
assetKind: "transport",
|
|
182
|
+
linkedAccountID: tradeAssetRef.linkedAccountID,
|
|
183
|
+
serviceTradeID: tradeAssetRef.serviceTradeID
|
|
184
|
+
}
|
|
185
|
+
};
|
|
186
|
+
case "other":
|
|
187
|
+
return {
|
|
188
|
+
otherAssetRef: {
|
|
189
|
+
assetKind: "other"
|
|
190
|
+
}
|
|
191
|
+
};
|
|
192
|
+
case "nothing":
|
|
193
|
+
return {
|
|
194
|
+
nothingAssetRef: {
|
|
195
|
+
assetKind: "nothing"
|
|
196
|
+
}
|
|
197
|
+
};
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
toInternalTradeAsset(asset) {
|
|
201
|
+
switch (asset.assetKind) {
|
|
202
|
+
case "fiat":
|
|
203
|
+
return {
|
|
204
|
+
fiatAsset: asset
|
|
205
|
+
};
|
|
206
|
+
case "stock":
|
|
207
|
+
case "crypto":
|
|
208
|
+
return {
|
|
209
|
+
marketTradeAsset: {
|
|
210
|
+
...asset,
|
|
211
|
+
assetKind: asset.assetKind
|
|
212
|
+
}
|
|
213
|
+
};
|
|
214
|
+
case "transport":
|
|
215
|
+
return {
|
|
216
|
+
transportAsset: asset
|
|
217
|
+
};
|
|
218
|
+
case "other":
|
|
219
|
+
return {
|
|
220
|
+
otherAsset: asset
|
|
221
|
+
};
|
|
222
|
+
case "nothing":
|
|
223
|
+
return {
|
|
224
|
+
nothingAsset: asset
|
|
225
|
+
};
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
convertTradeQuote(tradeQuote) {
|
|
229
|
+
const {
|
|
230
|
+
context,
|
|
231
|
+
gained,
|
|
232
|
+
lost
|
|
233
|
+
} = tradeQuote;
|
|
234
|
+
return {
|
|
235
|
+
context,
|
|
236
|
+
gained: this.toInternalTradeAsset(gained),
|
|
237
|
+
lost: this.toInternalTradeAsset(lost)
|
|
238
|
+
};
|
|
239
|
+
}
|
|
123
240
|
convertTradeAsset(tradeAsset) {
|
|
124
241
|
if (tradeAsset.fiatAsset !== undefined) {
|
|
125
242
|
return {
|
|
@@ -127,9 +244,10 @@ export class CandleClient {
|
|
|
127
244
|
assetKind: "fiat"
|
|
128
245
|
};
|
|
129
246
|
} else if (tradeAsset.marketTradeAsset !== undefined) {
|
|
247
|
+
this.assertMarketAssetKind(tradeAsset.marketTradeAsset.assetKind);
|
|
130
248
|
return {
|
|
131
249
|
...tradeAsset.marketTradeAsset,
|
|
132
|
-
assetKind: tradeAsset.marketTradeAsset.assetKind
|
|
250
|
+
assetKind: this.assertMarketAssetKind(tradeAsset.marketTradeAsset.assetKind)
|
|
133
251
|
};
|
|
134
252
|
} else if (tradeAsset.transportAsset !== undefined) {
|
|
135
253
|
return {
|
|
@@ -168,6 +286,13 @@ export class CandleClient {
|
|
|
168
286
|
throw new Error("Unknown counterparty kind");
|
|
169
287
|
}
|
|
170
288
|
}
|
|
289
|
+
assertMarketAssetKind(kind) {
|
|
290
|
+
if (kind !== "stock" && kind !== "crypto") {
|
|
291
|
+
throw new Error("Internal Candle Error: corrupted market account.");
|
|
292
|
+
} else {
|
|
293
|
+
return kind;
|
|
294
|
+
}
|
|
295
|
+
}
|
|
171
296
|
convertToAssetAccount(account) {
|
|
172
297
|
const {
|
|
173
298
|
legalAccountKind,
|
|
@@ -192,7 +317,7 @@ export class CandleClient {
|
|
|
192
317
|
nickname,
|
|
193
318
|
details: {
|
|
194
319
|
...marketAccountDetails,
|
|
195
|
-
assetKind: marketAccountDetails.assetKind
|
|
320
|
+
assetKind: this.assertMarketAssetKind(marketAccountDetails.assetKind)
|
|
196
321
|
}
|
|
197
322
|
};
|
|
198
323
|
} else {
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NitroModules","CandleClient","constructor","appUser","CandleHybridObject","createHybridObject","candle","initialize","
|
|
1
|
+
{"version":3,"names":["NitroModules","CandleClient","constructor","appUser","CandleHybridObject","createHybridObject","candle","initialize","presentTradeExecutionSheet","input","quote","convertTradeQuote","tradeQuote","candleTradeExecutionSheet","presentationBackground","result","completion","undefined","trade","kind","counterparty","convertToCounterparty","lost","convertTradeAsset","gained","error","Error","presentCandleLinkSheet","services","cornerRadius","customerName","showDynamicLoading","presentationStyle","onSuccess","candleLinkSheet","getLinkedAccounts","accounts","map","account","details","activeLinkedAccountDetails","state","inactiveLinkedAccountDetails","getLinkedAccount","ref","unlinkAccount","path","deleteUser","getAvailableTools","executeTool","tool","getAssetAccounts","query","convertToAssetAccount","getAssetAccount","getTrades","trades","dateTime","getTrade","convertTradeAssetRef","getTradeQuotes","request","gainedRequest","assetKind","fiatAssetQuoteRequest","marketAssetQuoteRequest","transportAssetQuoteRequest","nothingAssetQuoteRequest","quotes","linkedAccountIDs","context","tradeAssetRef","fiatAssetRef","linkedAccountID","serviceTradeID","marketTradeAssetRef","transportAssetRef","otherAssetRef","nothingAssetRef","toInternalTradeAsset","asset","fiatAsset","marketTradeAsset","transportAsset","otherAsset","nothingAsset","tradeAsset","assertMarketAssetKind","merchantCounterparty","userCounterparty","serviceCounterparty","legalAccountKind","nickname","fiatAccountDetails","marketAccountDetails"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,7 +1,17 @@
|
|
|
1
|
-
import type { AppUser, AssetAccountQuery, FiatAsset, FiatAssetQuoteRequest, LinkedAccount, MarketAssetQuoteRequest, MarketTradeAsset, NothingAsset, NothingAssetQuoteRequest, OtherAsset, PresentationBackground, PresentationStyle, Service, TradeQuery, TransportAsset, TransportAssetQuoteRequest, LegalAccountKind, WireDetails, ACHDetails, TradeState, MerchantCounterparty, UserCounterparty, ServiceCounterparty, ActiveLinkedAccountDetails,
|
|
1
|
+
import type { AppUser, AssetAccountQuery, FiatAsset, FiatAssetQuoteRequest, LinkedAccount, MarketAssetQuoteRequest, MarketTradeAsset, NothingAsset, NothingAssetQuoteRequest, OtherAsset, PresentationBackground, PresentationStyle, Service, TradeQuery as InternalTradeQuery, TransportAsset, TransportAssetQuoteRequest, LegalAccountKind, WireDetails, ACHDetails, TradeState, MerchantCounterparty, UserCounterparty, ServiceCounterparty, ActiveLinkedAccountDetails, AssetAccountRef, LinkedAccountRef, NothingAssetRef, TransportAssetRef, OtherAssetRef, FiatAssetRef, MarketTradeAssetRef } from "./specs/RNCandle.nitro";
|
|
2
2
|
export declare class CandleClient {
|
|
3
3
|
private candle;
|
|
4
4
|
constructor(appUser: AppUser);
|
|
5
|
+
presentTradeExecutionSheet(input: {
|
|
6
|
+
tradeQuote: TradeQuote;
|
|
7
|
+
presentationBackground?: PresentationBackground;
|
|
8
|
+
completion?: (result: ({
|
|
9
|
+
kind: "success";
|
|
10
|
+
} & Trade) | {
|
|
11
|
+
kind: "failure";
|
|
12
|
+
error: string;
|
|
13
|
+
}) => void;
|
|
14
|
+
}): void;
|
|
5
15
|
presentCandleLinkSheet({ services, cornerRadius, customerName, showDynamicLoading, presentationBackground, presentationStyle, onSuccess, }: {
|
|
6
16
|
services?: Service[];
|
|
7
17
|
cornerRadius?: number;
|
|
@@ -21,20 +31,21 @@ export declare class CandleClient {
|
|
|
21
31
|
state: "inactive";
|
|
22
32
|
};
|
|
23
33
|
}))[]>;
|
|
24
|
-
|
|
34
|
+
getLinkedAccount(ref: LinkedAccountRef): Promise<LinkedAccount>;
|
|
35
|
+
unlinkAccount(path: LinkedAccountRef): Promise<void>;
|
|
25
36
|
deleteUser(): Promise<void>;
|
|
26
37
|
getAvailableTools(): Promise<Array<Record<string, any>>>;
|
|
27
|
-
executeTrade(request: ExecuteTradeRequest): Promise<Trade>;
|
|
28
38
|
executeTool(tool: {
|
|
29
39
|
name: string;
|
|
30
40
|
arguments: string;
|
|
31
41
|
}): Promise<string>;
|
|
32
42
|
getAssetAccounts(query?: AssetAccountQuery): Promise<AssetAccount[]>;
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
43
|
+
getAssetAccount(ref: AssetAccountRef): Promise<AssetAccount>;
|
|
44
|
+
getTrades(query?: TradeQuery): Promise<Trade[]>;
|
|
45
|
+
getTrade(input: {
|
|
46
|
+
lost: TradeAssetRef;
|
|
47
|
+
gained: TradeAssetRef;
|
|
48
|
+
}): Promise<Trade>;
|
|
38
49
|
getTradeQuotes(request: {
|
|
39
50
|
linkedAccountIDs?: string;
|
|
40
51
|
gained: ({
|
|
@@ -46,12 +57,13 @@ export declare class CandleClient {
|
|
|
46
57
|
} & FiatAssetQuoteRequest) | ({
|
|
47
58
|
assetKind: "stock" | "crypto";
|
|
48
59
|
} & MarketAssetQuoteRequest);
|
|
49
|
-
}): Promise<
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
60
|
+
}): Promise<TradeQuote[]>;
|
|
61
|
+
private convertTradeAssetRef;
|
|
62
|
+
private toInternalTradeAsset;
|
|
63
|
+
private convertTradeQuote;
|
|
53
64
|
private convertTradeAsset;
|
|
54
65
|
private convertToCounterparty;
|
|
66
|
+
private assertMarketAssetKind;
|
|
55
67
|
private convertToAssetAccount;
|
|
56
68
|
}
|
|
57
69
|
type TradeAsset = ({
|
|
@@ -72,6 +84,16 @@ type Counterparty = ({
|
|
|
72
84
|
} & UserCounterparty) | ({
|
|
73
85
|
kind: "service";
|
|
74
86
|
} & ServiceCounterparty);
|
|
87
|
+
type TradeQuery = {
|
|
88
|
+
gainedAssetKind?: TradeQueryAssetKind;
|
|
89
|
+
lostAssetKind?: TradeQueryAssetKind;
|
|
90
|
+
counterpartyKind?: "merchant" | "user" | "service";
|
|
91
|
+
} & InternalTradeQuery;
|
|
92
|
+
type TradeQuote = {
|
|
93
|
+
gained: TradeAsset;
|
|
94
|
+
lost: TradeAsset;
|
|
95
|
+
context: string;
|
|
96
|
+
};
|
|
75
97
|
type TradeQueryAssetKind = "fiat" | "stock" | "crypto" | "transport" | "other" | "nothing";
|
|
76
98
|
type AssetAccount = {
|
|
77
99
|
legalAccountKind: LegalAccountKind;
|
|
@@ -99,5 +121,16 @@ type Trade = {
|
|
|
99
121
|
lost: TradeAsset;
|
|
100
122
|
gained: TradeAsset;
|
|
101
123
|
};
|
|
102
|
-
|
|
124
|
+
type TradeAssetRef = ({
|
|
125
|
+
assetKind: "transport";
|
|
126
|
+
} & TransportAssetRef) | ({
|
|
127
|
+
assetKind: "nothing";
|
|
128
|
+
} & NothingAssetRef) | ({
|
|
129
|
+
assetKind: "other";
|
|
130
|
+
} & OtherAssetRef) | ({
|
|
131
|
+
assetKind: "fiat";
|
|
132
|
+
} & FiatAssetRef) | ({
|
|
133
|
+
assetKind: "stock" | "crypto";
|
|
134
|
+
} & MarketTradeAssetRef);
|
|
135
|
+
export type { LinkedAccountRef, AssetAccountRef, TradeAssetRef, LinkedAccount, AppUser, Service, TradeState, TradeAsset, Trade, TradeQuery, Counterparty, AssetAccount, TradeQuote, };
|
|
103
136
|
//# sourceMappingURL=index.d.ts.map
|