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.
Files changed (54) hide show
  1. package/ReactNativeCandle.podspec +1 -1
  2. package/ios/Sources/CandleActionViewModel.swift +13 -0
  3. package/ios/Sources/CandleTradeExecutionSheetWrapper.swift +31 -0
  4. package/ios/Sources/HostingViewController.swift +7 -0
  5. package/ios/Sources/RNCandle.swift +300 -84
  6. package/lib/commonjs/index.js +140 -15
  7. package/lib/commonjs/index.js.map +1 -1
  8. package/lib/module/index.js +140 -15
  9. package/lib/module/index.js.map +1 -1
  10. package/lib/typescript/commonjs/src/index.d.ts +46 -13
  11. package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
  12. package/lib/typescript/commonjs/src/specs/RNCandle.nitro.d.ts +50 -2
  13. package/lib/typescript/commonjs/src/specs/RNCandle.nitro.d.ts.map +1 -1
  14. package/lib/typescript/module/src/index.d.ts +46 -13
  15. package/lib/typescript/module/src/index.d.ts.map +1 -1
  16. package/lib/typescript/module/src/specs/RNCandle.nitro.d.ts +50 -2
  17. package/lib/typescript/module/src/specs/RNCandle.nitro.d.ts.map +1 -1
  18. package/nitrogen/generated/ios/ReactNativeCandle-Swift-Cxx-Bridge.cpp +24 -8
  19. package/nitrogen/generated/ios/ReactNativeCandle-Swift-Cxx-Bridge.hpp +271 -113
  20. package/nitrogen/generated/ios/ReactNativeCandle-Swift-Cxx-Umbrella.hpp +30 -3
  21. package/nitrogen/generated/ios/c++/HybridRNCandleSpecSwift.hpp +106 -57
  22. package/nitrogen/generated/ios/swift/AssetAccountRef.swift +55 -0
  23. package/nitrogen/generated/ios/swift/FiatAssetRef.swift +75 -0
  24. package/nitrogen/generated/ios/swift/Func_void_AssetAccount.swift +44 -0
  25. package/nitrogen/generated/ios/swift/Func_void_LinkedAccount.swift +5 -5
  26. package/nitrogen/generated/ios/swift/Func_void_TradeExecutionResult.swift +46 -0
  27. package/nitrogen/generated/ios/swift/HybridRNCandleSpec.swift +7 -2
  28. package/nitrogen/generated/ios/swift/HybridRNCandleSpec_cxx.swift +86 -24
  29. package/nitrogen/generated/ios/swift/LinkedAccountRef.swift +33 -0
  30. package/nitrogen/generated/ios/swift/MarketTradeAssetRef.swift +55 -0
  31. package/nitrogen/generated/ios/swift/NothingAssetRef.swift +33 -0
  32. package/nitrogen/generated/ios/swift/OtherAssetRef.swift +33 -0
  33. package/nitrogen/generated/ios/swift/TradeAssetRef.swift +176 -0
  34. package/nitrogen/generated/ios/swift/TradeExecutionResult.swift +82 -0
  35. package/nitrogen/generated/ios/swift/TradeQuote.swift +13 -2
  36. package/nitrogen/generated/ios/swift/TradeRef.swift +44 -0
  37. package/nitrogen/generated/ios/swift/TransportAssetRef.swift +55 -0
  38. package/nitrogen/generated/shared/c++/AssetAccountRef.hpp +77 -0
  39. package/nitrogen/generated/shared/c++/FiatAssetRef.hpp +78 -0
  40. package/nitrogen/generated/shared/c++/HybridRNCandleSpec.cpp +4 -1
  41. package/nitrogen/generated/shared/c++/HybridRNCandleSpec.hpp +20 -8
  42. package/nitrogen/generated/shared/c++/{ExecuteTradeRequest.hpp → LinkedAccountRef.hpp} +11 -15
  43. package/nitrogen/generated/shared/c++/MarketTradeAssetRef.hpp +77 -0
  44. package/nitrogen/generated/shared/c++/NothingAssetRef.hpp +69 -0
  45. package/nitrogen/generated/shared/c++/OtherAssetRef.hpp +69 -0
  46. package/nitrogen/generated/shared/c++/TradeAssetRef.hpp +99 -0
  47. package/nitrogen/generated/shared/c++/TradeExecutionResult.hpp +76 -0
  48. package/nitrogen/generated/shared/c++/TradeQuote.hpp +7 -2
  49. package/nitrogen/generated/shared/c++/TradeRef.hpp +74 -0
  50. package/nitrogen/generated/shared/c++/TransportAssetRef.hpp +77 -0
  51. package/package.json +1 -1
  52. package/src/index.ts +199 -33
  53. package/src/specs/RNCandle.nitro.ts +64 -2
  54. package/nitrogen/generated/ios/swift/ExecuteTradeRequest.swift +0 -44
@@ -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 unlinkAccount(linkedAccountID) {
50
- await this.candle.unlinkAccount(linkedAccountID);
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","presentCandleLinkSheet","services","undefined","cornerRadius","customerName","showDynamicLoading","presentationBackground","presentationStyle","onSuccess","candleLinkSheet","getLinkedAccounts","accounts","map","account","details","activeLinkedAccountDetails","state","inactiveLinkedAccountDetails","Error","unlinkAccount","linkedAccountID","deleteUser","getAvailableTools","executeTrade","request","result","dateTime","counterparty","convertToCounterparty","lost","convertTradeAsset","gained","executeTool","tool","getAssetAccounts","query","convertToAssetAccount","getTrades","trades","getTradeQuotes","gainedRequest","assetKind","fiatAssetQuoteRequest","marketAssetQuoteRequest","transportAssetQuoteRequest","nothingAssetQuoteRequest","quotes","linkedAccountIDs","quote","tradeAsset","fiatAsset","marketTradeAsset","transportAsset","otherAsset","nothingAsset","merchantCounterparty","kind","userCounterparty","serviceCounterparty","legalAccountKind","nickname","fiatAccountDetails","marketAccountDetails","exports"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
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":[]}
@@ -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 unlinkAccount(linkedAccountID) {
46
- await this.candle.unlinkAccount(linkedAccountID);
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 {
@@ -1 +1 @@
1
- {"version":3,"names":["NitroModules","CandleClient","constructor","appUser","CandleHybridObject","createHybridObject","candle","initialize","presentCandleLinkSheet","services","undefined","cornerRadius","customerName","showDynamicLoading","presentationBackground","presentationStyle","onSuccess","candleLinkSheet","getLinkedAccounts","accounts","map","account","details","activeLinkedAccountDetails","state","inactiveLinkedAccountDetails","Error","unlinkAccount","linkedAccountID","deleteUser","getAvailableTools","executeTrade","request","result","dateTime","counterparty","convertToCounterparty","lost","convertTradeAsset","gained","executeTool","tool","getAssetAccounts","query","convertToAssetAccount","getTrades","trades","getTradeQuotes","gainedRequest","assetKind","fiatAssetQuoteRequest","marketAssetQuoteRequest","transportAssetQuoteRequest","nothingAssetQuoteRequest","quotes","linkedAccountIDs","quote","tradeAsset","fiatAsset","marketTradeAsset","transportAsset","otherAsset","nothingAsset","merchantCounterparty","kind","userCounterparty","serviceCounterparty","legalAccountKind","nickname","fiatAccountDetails","marketAccountDetails"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
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, ExecuteTradeRequest } from "./specs/RNCandle.nitro";
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
- unlinkAccount(linkedAccountID: string): Promise<void>;
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
- getTrades(query?: {
34
- gainedAssetKind?: TradeQueryAssetKind;
35
- lostAssetKind?: TradeQueryAssetKind;
36
- counterpartyKind?: "merchant" | "user" | "service";
37
- } & TradeQuery): Promise<Trade[]>;
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
- gained: TradeAsset;
51
- lost: TradeAsset;
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
- export type { LinkedAccount, AppUser, Service, TradeState, TradeAsset, Trade };
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