react-native-candle 0.1.17 → 0.1.19

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 (107) hide show
  1. package/ReactNativeCandle.podspec +1 -1
  2. package/ios/Sources/CandleLinkSheetWrapperView.swift +2 -167
  3. package/ios/Sources/RNCandle.swift +642 -53
  4. package/lib/commonjs/index.js +167 -1
  5. package/lib/commonjs/index.js.map +1 -1
  6. package/lib/module/index.js +167 -1
  7. package/lib/module/index.js.map +1 -1
  8. package/lib/typescript/commonjs/src/index.d.ts +81 -3
  9. package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
  10. package/lib/typescript/commonjs/src/specs/RNCandle.nitro.d.ts +201 -9
  11. package/lib/typescript/commonjs/src/specs/RNCandle.nitro.d.ts.map +1 -1
  12. package/lib/typescript/module/src/index.d.ts +81 -3
  13. package/lib/typescript/module/src/index.d.ts.map +1 -1
  14. package/lib/typescript/module/src/specs/RNCandle.nitro.d.ts +201 -9
  15. package/lib/typescript/module/src/specs/RNCandle.nitro.d.ts.map +1 -1
  16. package/nitrogen/generated/ios/ReactNativeCandle-Swift-Cxx-Bridge.cpp +36 -4
  17. package/nitrogen/generated/ios/ReactNativeCandle-Swift-Cxx-Bridge.hpp +528 -35
  18. package/nitrogen/generated/ios/ReactNativeCandle-Swift-Cxx-Umbrella.hpp +111 -6
  19. package/nitrogen/generated/ios/c++/HybridRNCandleSpecSwift.hpp +125 -12
  20. package/nitrogen/generated/ios/swift/ACHAccountKind.swift +38 -0
  21. package/nitrogen/generated/ios/swift/ACHDetails.swift +55 -0
  22. package/nitrogen/generated/ios/swift/{Details.swift → ActiveLinkedAccountDetails.swift} +55 -22
  23. package/nitrogen/generated/ios/swift/Address.swift +33 -0
  24. package/nitrogen/generated/ios/swift/AssetAccount.swift +55 -0
  25. package/nitrogen/generated/ios/swift/AssetAccountDetails.swift +83 -0
  26. package/nitrogen/generated/ios/swift/AssetAccountKind.swift +42 -0
  27. package/nitrogen/generated/ios/swift/AssetAccountQuery.swift +76 -0
  28. package/nitrogen/generated/ios/swift/Coordinates.swift +44 -0
  29. package/nitrogen/generated/ios/swift/Counterparty.swift +115 -0
  30. package/nitrogen/generated/ios/swift/ExecuteTradeRequest.swift +44 -0
  31. package/nitrogen/generated/ios/swift/FiatAccountDetails.swift +165 -0
  32. package/nitrogen/generated/ios/swift/FiatAsset.swift +123 -0
  33. package/nitrogen/generated/ios/swift/FiatAssetQuoteRequest.swift +119 -0
  34. package/nitrogen/generated/ios/swift/Func_void_Trade.swift +44 -0
  35. package/nitrogen/generated/ios/swift/Func_void_std__vector_AssetAccount_.swift +46 -0
  36. package/nitrogen/generated/ios/swift/Func_void_std__vector_TradeQuote_.swift +46 -0
  37. package/nitrogen/generated/ios/swift/Func_void_std__vector_Trade_.swift +45 -0
  38. package/nitrogen/generated/ios/swift/HybridRNCandleSpec.swift +4 -3
  39. package/nitrogen/generated/ios/swift/HybridRNCandleSpec_cxx.swift +79 -40
  40. package/nitrogen/generated/ios/swift/InactiveLinkedAccountDetails.swift +33 -0
  41. package/nitrogen/generated/ios/swift/LegalAccountKind.swift +46 -0
  42. package/nitrogen/generated/ios/swift/LinkedAccount.swift +16 -34
  43. package/nitrogen/generated/ios/swift/LinkedAccountDetails.swift +87 -0
  44. package/nitrogen/generated/ios/swift/MarketAccountDetails.swift +69 -0
  45. package/nitrogen/generated/ios/swift/MarketAssetQuoteRequest.swift +151 -0
  46. package/nitrogen/generated/ios/swift/MarketTradeAsset.swift +150 -0
  47. package/nitrogen/generated/ios/swift/MerchantCounterparty.swift +86 -0
  48. package/nitrogen/generated/ios/swift/MerchantLocation.swift +55 -0
  49. package/nitrogen/generated/ios/swift/NothingAsset.swift +33 -0
  50. package/nitrogen/generated/ios/swift/NothingAssetQuoteRequest.swift +33 -0
  51. package/nitrogen/generated/ios/swift/OtherAsset.swift +33 -0
  52. package/nitrogen/generated/ios/swift/ServiceCounterparty.swift +44 -0
  53. package/nitrogen/generated/ios/swift/Trade.swift +80 -0
  54. package/nitrogen/generated/ios/swift/TradeAsset.swift +175 -0
  55. package/nitrogen/generated/ios/swift/TradeAssetQuoteRequest.swift +148 -0
  56. package/nitrogen/generated/ios/swift/TradeQuery.swift +175 -0
  57. package/nitrogen/generated/ios/swift/TradeQuote.swift +44 -0
  58. package/nitrogen/generated/ios/swift/TradeQuoteRequest.swift +63 -0
  59. package/nitrogen/generated/ios/swift/TradeState.swift +42 -0
  60. package/nitrogen/generated/ios/swift/TransportAsset.swift +174 -0
  61. package/nitrogen/generated/ios/swift/TransportAssetQuoteRequest.swift +212 -0
  62. package/nitrogen/generated/ios/swift/UserCounterparty.swift +66 -0
  63. package/nitrogen/generated/ios/swift/WireDetails.swift +44 -0
  64. package/nitrogen/generated/shared/c++/{State.hpp → ACHAccountKind.hpp} +17 -17
  65. package/nitrogen/generated/shared/c++/ACHDetails.hpp +79 -0
  66. package/nitrogen/generated/shared/c++/{Details.hpp → ActiveLinkedAccountDetails.hpp} +25 -23
  67. package/nitrogen/generated/shared/c++/Address.hpp +69 -0
  68. package/nitrogen/generated/shared/c++/AssetAccount.hpp +82 -0
  69. package/nitrogen/generated/shared/c++/AssetAccountDetails.hpp +78 -0
  70. package/nitrogen/generated/shared/c++/AssetAccountKind.hpp +82 -0
  71. package/nitrogen/generated/shared/c++/AssetAccountQuery.hpp +76 -0
  72. package/nitrogen/generated/shared/c++/Coordinates.hpp +73 -0
  73. package/nitrogen/generated/shared/c++/Counterparty.hpp +85 -0
  74. package/nitrogen/generated/shared/c++/ExecuteTradeRequest.hpp +73 -0
  75. package/nitrogen/generated/shared/c++/FiatAccountDetails.hpp +106 -0
  76. package/nitrogen/generated/shared/c++/FiatAsset.hpp +96 -0
  77. package/nitrogen/generated/shared/c++/FiatAssetQuoteRequest.hpp +82 -0
  78. package/nitrogen/generated/shared/c++/HybridRNCandleSpec.cpp +1 -0
  79. package/nitrogen/generated/shared/c++/HybridRNCandleSpec.hpp +25 -3
  80. package/nitrogen/generated/shared/c++/InactiveLinkedAccountDetails.hpp +69 -0
  81. package/nitrogen/generated/shared/c++/LegalAccountKind.hpp +86 -0
  82. package/nitrogen/generated/shared/c++/LinkedAccount.hpp +13 -14
  83. package/nitrogen/generated/shared/c++/LinkedAccountDetails.hpp +78 -0
  84. package/nitrogen/generated/shared/c++/MarketAccountDetails.hpp +83 -0
  85. package/nitrogen/generated/shared/c++/MarketAssetQuoteRequest.hpp +86 -0
  86. package/nitrogen/generated/shared/c++/MarketTradeAsset.hpp +111 -0
  87. package/nitrogen/generated/shared/c++/MerchantCounterparty.hpp +84 -0
  88. package/nitrogen/generated/shared/c++/MerchantLocation.hpp +77 -0
  89. package/nitrogen/generated/shared/c++/NothingAsset.hpp +69 -0
  90. package/nitrogen/generated/shared/c++/NothingAssetQuoteRequest.hpp +69 -0
  91. package/nitrogen/generated/shared/c++/OtherAsset.hpp +69 -0
  92. package/nitrogen/generated/shared/c++/ServiceCounterparty.hpp +75 -0
  93. package/nitrogen/generated/shared/c++/Trade.hpp +93 -0
  94. package/nitrogen/generated/shared/c++/TradeAsset.hpp +99 -0
  95. package/nitrogen/generated/shared/c++/TradeAssetQuoteRequest.hpp +92 -0
  96. package/nitrogen/generated/shared/c++/TradeQuery.hpp +86 -0
  97. package/nitrogen/generated/shared/c++/TradeQuote.hpp +74 -0
  98. package/nitrogen/generated/shared/c++/TradeQuoteRequest.hpp +76 -0
  99. package/nitrogen/generated/shared/c++/TradeState.hpp +82 -0
  100. package/nitrogen/generated/shared/c++/TransportAsset.hpp +125 -0
  101. package/nitrogen/generated/shared/c++/TransportAssetQuoteRequest.hpp +99 -0
  102. package/nitrogen/generated/shared/c++/UserCounterparty.hpp +81 -0
  103. package/nitrogen/generated/shared/c++/WireDetails.hpp +73 -0
  104. package/package.json +1 -1
  105. package/src/index.ts +271 -3
  106. package/src/specs/RNCandle.nitro.ts +242 -10
  107. package/nitrogen/generated/ios/swift/State.swift +0 -38
@@ -23,7 +23,28 @@ class CandleClient {
23
23
  this.candle.candleLinkSheet(true, services, cornerRadius, customerName, showDynamicLoading, presentationBackground, presentationStyle, onSuccess);
24
24
  }
25
25
  async getLinkedAccounts() {
26
- return this.candle.getLinkedAccounts();
26
+ const accounts = await this.candle.getLinkedAccounts();
27
+ return accounts.map(account => {
28
+ if (account.details.activeLinkedAccountDetails !== undefined) {
29
+ return {
30
+ ...account,
31
+ details: {
32
+ ...account.details.activeLinkedAccountDetails,
33
+ state: "active"
34
+ }
35
+ };
36
+ } else if (account.details.inactiveLinkedAccountDetails !== undefined) {
37
+ return {
38
+ ...account,
39
+ details: {
40
+ ...account.details.inactiveLinkedAccountDetails,
41
+ state: "inactive"
42
+ }
43
+ };
44
+ } else {
45
+ throw new Error("Internal Candle Error: corrupted linked account.");
46
+ }
47
+ });
27
48
  }
28
49
  async unlinkAccount(linkedAccountID) {
29
50
  await this.candle.unlinkAccount(linkedAccountID);
@@ -34,9 +55,154 @@ class CandleClient {
34
55
  async getAvailableTools() {
35
56
  return this.candle.getAvailableTools();
36
57
  }
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
+ }
37
68
  async executeTool(tool) {
38
69
  return this.candle.executeTool(tool);
39
70
  }
71
+ async getAssetAccounts(query = {}) {
72
+ const accounts = await this.candle.getAssetAccounts(query);
73
+ return accounts.map(account => this.convertToAssetAccount(account));
74
+ }
75
+ async getTrades(query = {}) {
76
+ const trades = await this.candle.getTrades(query);
77
+ return trades.map(({
78
+ dateTime,
79
+ counterparty,
80
+ gained,
81
+ lost,
82
+ state
83
+ }) => ({
84
+ dateTime,
85
+ state,
86
+ counterparty: this.convertToCounterparty(counterparty),
87
+ lost: this.convertTradeAsset(lost),
88
+ gained: this.convertTradeAsset(gained)
89
+ }));
90
+ }
91
+ async getTradeQuotes(request) {
92
+ let gainedRequest;
93
+ switch (request.gained.assetKind) {
94
+ case "fiat":
95
+ gainedRequest = {
96
+ fiatAssetQuoteRequest: request.gained
97
+ };
98
+ break;
99
+ case "stock":
100
+ case "crypto":
101
+ gainedRequest = {
102
+ marketAssetQuoteRequest: request.gained
103
+ };
104
+ break;
105
+ case "transport":
106
+ gainedRequest = {
107
+ transportAssetQuoteRequest: request.gained
108
+ };
109
+ break;
110
+ case "nothing":
111
+ gainedRequest = {
112
+ nothingAssetQuoteRequest: request.gained
113
+ };
114
+ break;
115
+ }
116
+ const quotes = await this.candle.getTradeQuotes({
117
+ linkedAccountIDs: request.linkedAccountIDs,
118
+ gained: gainedRequest
119
+ });
120
+ return quotes.map(quote => {
121
+ return {
122
+ gained: this.convertTradeAsset(quote.gained),
123
+ lost: this.convertTradeAsset(quote.lost)
124
+ };
125
+ });
126
+ }
127
+ convertTradeAsset(tradeAsset) {
128
+ if (tradeAsset.fiatAsset !== undefined) {
129
+ return {
130
+ ...tradeAsset.fiatAsset,
131
+ assetKind: "fiat"
132
+ };
133
+ } else if (tradeAsset.marketTradeAsset !== undefined) {
134
+ return {
135
+ ...tradeAsset.marketTradeAsset,
136
+ assetKind: tradeAsset.marketTradeAsset.assetKind
137
+ };
138
+ } else if (tradeAsset.transportAsset !== undefined) {
139
+ return {
140
+ ...tradeAsset.transportAsset,
141
+ assetKind: "transport"
142
+ };
143
+ } else if (tradeAsset.otherAsset !== undefined) {
144
+ return {
145
+ assetKind: "other"
146
+ };
147
+ } else if (tradeAsset.nothingAsset !== undefined) {
148
+ return {
149
+ assetKind: "nothing"
150
+ };
151
+ } else {
152
+ throw new Error("Internal Candle Error: corrupted trade asset.");
153
+ }
154
+ }
155
+ convertToCounterparty(counterparty) {
156
+ if (counterparty.merchantCounterparty !== undefined) {
157
+ return {
158
+ ...counterparty.merchantCounterparty,
159
+ kind: "merchant"
160
+ };
161
+ } else if (counterparty.userCounterparty !== undefined) {
162
+ return {
163
+ ...counterparty.userCounterparty,
164
+ kind: "user"
165
+ };
166
+ } else if (counterparty.serviceCounterparty !== undefined) {
167
+ return {
168
+ ...counterparty.serviceCounterparty,
169
+ kind: "service"
170
+ };
171
+ } else {
172
+ throw new Error("Unknown counterparty kind");
173
+ }
174
+ }
175
+ convertToAssetAccount(account) {
176
+ const {
177
+ legalAccountKind,
178
+ nickname
179
+ } = account;
180
+ const {
181
+ fiatAccountDetails,
182
+ marketAccountDetails
183
+ } = account.details;
184
+ if (fiatAccountDetails !== undefined) {
185
+ return {
186
+ legalAccountKind,
187
+ nickname,
188
+ details: {
189
+ ...fiatAccountDetails,
190
+ assetKind: "fiat"
191
+ }
192
+ };
193
+ } else if (marketAccountDetails !== undefined) {
194
+ return {
195
+ legalAccountKind,
196
+ nickname,
197
+ details: {
198
+ ...marketAccountDetails,
199
+ assetKind: marketAccountDetails.assetKind
200
+ }
201
+ };
202
+ } else {
203
+ throw new Error("Internal Candle Error: corrupted asset account.");
204
+ }
205
+ }
40
206
  }
41
207
  exports.CandleClient = CandleClient;
42
208
  //# sourceMappingURL=index.js.map
@@ -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","unlinkAccount","linkedAccountID","deleteUser","getAvailableTools","executeTool","tool","exports"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;;;;;AAAA,IAAAA,wBAAA,GAAAC,OAAA;AAUO,MAAMC,YAAY,CAAC;EAGxBC,WAAWA,CAACC,OAAgB,EAAE;IAC5B,MAAMC,kBAAkB,GACtBC,qCAAY,CAACC,kBAAkB,CAAW,UAAU,CAAC;IACvD,IAAI,CAACC,MAAM,GAAGH,kBAAkB;IAChC,IAAI,CAACG,MAAM,CAACC,UAAU,CAACL,OAAO,CAAC;EACjC;EAEOM,sBAAsBA,CAAC;IAC5BC,QAAQ,GAAGC,SAAS;IACpBC,YAAY,GAAG,EAAE;IACjBC,YAAY;IACZC,kBAAkB,GAAG,IAAI;IACzBC,sBAAsB,GAAG,SAAS;IAClCC,iBAAiB,GAAG,YAAY;IAChCC;EAUF,CAAC,EAAQ;IACP,IAAI,CAACV,MAAM,CAACW,eAAe,CACzB,IAAI,EACJR,QAAQ,EACRE,YAAY,EACZC,YAAY,EACZC,kBAAkB,EAClBC,sBAAsB,EACtBC,iBAAiB,EACjBC,SACF,CAAC;EACH;EAEA,MAAaE,iBAAiBA,CAAA,EAA6B;IACzD,OAAO,IAAI,CAACZ,MAAM,CAACY,iBAAiB,CAAC,CAAC;EACxC;EAEA,MAAaC,aAAaA,CAACC,eAAuB,EAAiB;IACjE,MAAM,IAAI,CAACd,MAAM,CAACa,aAAa,CAACC,eAAe,CAAC;EAClD;EAEA,MAAaC,UAAUA,CAAA,EAAkB;IACvC,MAAM,IAAI,CAACf,MAAM,CAACe,UAAU,CAAC,CAAC;EAChC;EAEA,MAAaC,iBAAiBA,CAAA,EAAwC;IACpE,OAAO,IAAI,CAAChB,MAAM,CAACgB,iBAAiB,CAAC,CAAC;EACxC;EAEA,MAAaC,WAAWA,CAACC,IAGxB,EAAmB;IAClB,OAAO,IAAI,CAAClB,MAAM,CAACiB,WAAW,CAACC,IAAI,CAAC;EACtC;AACF;AAACC,OAAA,CAAAzB,YAAA,GAAAA,YAAA","ignoreList":[]}
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":[]}
@@ -19,7 +19,28 @@ export class CandleClient {
19
19
  this.candle.candleLinkSheet(true, services, cornerRadius, customerName, showDynamicLoading, presentationBackground, presentationStyle, onSuccess);
20
20
  }
21
21
  async getLinkedAccounts() {
22
- return this.candle.getLinkedAccounts();
22
+ const accounts = await this.candle.getLinkedAccounts();
23
+ return accounts.map(account => {
24
+ if (account.details.activeLinkedAccountDetails !== undefined) {
25
+ return {
26
+ ...account,
27
+ details: {
28
+ ...account.details.activeLinkedAccountDetails,
29
+ state: "active"
30
+ }
31
+ };
32
+ } else if (account.details.inactiveLinkedAccountDetails !== undefined) {
33
+ return {
34
+ ...account,
35
+ details: {
36
+ ...account.details.inactiveLinkedAccountDetails,
37
+ state: "inactive"
38
+ }
39
+ };
40
+ } else {
41
+ throw new Error("Internal Candle Error: corrupted linked account.");
42
+ }
43
+ });
23
44
  }
24
45
  async unlinkAccount(linkedAccountID) {
25
46
  await this.candle.unlinkAccount(linkedAccountID);
@@ -30,8 +51,153 @@ export class CandleClient {
30
51
  async getAvailableTools() {
31
52
  return this.candle.getAvailableTools();
32
53
  }
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
+ }
33
64
  async executeTool(tool) {
34
65
  return this.candle.executeTool(tool);
35
66
  }
67
+ async getAssetAccounts(query = {}) {
68
+ const accounts = await this.candle.getAssetAccounts(query);
69
+ return accounts.map(account => this.convertToAssetAccount(account));
70
+ }
71
+ async getTrades(query = {}) {
72
+ const trades = await this.candle.getTrades(query);
73
+ return trades.map(({
74
+ dateTime,
75
+ counterparty,
76
+ gained,
77
+ lost,
78
+ state
79
+ }) => ({
80
+ dateTime,
81
+ state,
82
+ counterparty: this.convertToCounterparty(counterparty),
83
+ lost: this.convertTradeAsset(lost),
84
+ gained: this.convertTradeAsset(gained)
85
+ }));
86
+ }
87
+ async getTradeQuotes(request) {
88
+ let gainedRequest;
89
+ switch (request.gained.assetKind) {
90
+ case "fiat":
91
+ gainedRequest = {
92
+ fiatAssetQuoteRequest: request.gained
93
+ };
94
+ break;
95
+ case "stock":
96
+ case "crypto":
97
+ gainedRequest = {
98
+ marketAssetQuoteRequest: request.gained
99
+ };
100
+ break;
101
+ case "transport":
102
+ gainedRequest = {
103
+ transportAssetQuoteRequest: request.gained
104
+ };
105
+ break;
106
+ case "nothing":
107
+ gainedRequest = {
108
+ nothingAssetQuoteRequest: request.gained
109
+ };
110
+ break;
111
+ }
112
+ const quotes = await this.candle.getTradeQuotes({
113
+ linkedAccountIDs: request.linkedAccountIDs,
114
+ gained: gainedRequest
115
+ });
116
+ return quotes.map(quote => {
117
+ return {
118
+ gained: this.convertTradeAsset(quote.gained),
119
+ lost: this.convertTradeAsset(quote.lost)
120
+ };
121
+ });
122
+ }
123
+ convertTradeAsset(tradeAsset) {
124
+ if (tradeAsset.fiatAsset !== undefined) {
125
+ return {
126
+ ...tradeAsset.fiatAsset,
127
+ assetKind: "fiat"
128
+ };
129
+ } else if (tradeAsset.marketTradeAsset !== undefined) {
130
+ return {
131
+ ...tradeAsset.marketTradeAsset,
132
+ assetKind: tradeAsset.marketTradeAsset.assetKind
133
+ };
134
+ } else if (tradeAsset.transportAsset !== undefined) {
135
+ return {
136
+ ...tradeAsset.transportAsset,
137
+ assetKind: "transport"
138
+ };
139
+ } else if (tradeAsset.otherAsset !== undefined) {
140
+ return {
141
+ assetKind: "other"
142
+ };
143
+ } else if (tradeAsset.nothingAsset !== undefined) {
144
+ return {
145
+ assetKind: "nothing"
146
+ };
147
+ } else {
148
+ throw new Error("Internal Candle Error: corrupted trade asset.");
149
+ }
150
+ }
151
+ convertToCounterparty(counterparty) {
152
+ if (counterparty.merchantCounterparty !== undefined) {
153
+ return {
154
+ ...counterparty.merchantCounterparty,
155
+ kind: "merchant"
156
+ };
157
+ } else if (counterparty.userCounterparty !== undefined) {
158
+ return {
159
+ ...counterparty.userCounterparty,
160
+ kind: "user"
161
+ };
162
+ } else if (counterparty.serviceCounterparty !== undefined) {
163
+ return {
164
+ ...counterparty.serviceCounterparty,
165
+ kind: "service"
166
+ };
167
+ } else {
168
+ throw new Error("Unknown counterparty kind");
169
+ }
170
+ }
171
+ convertToAssetAccount(account) {
172
+ const {
173
+ legalAccountKind,
174
+ nickname
175
+ } = account;
176
+ const {
177
+ fiatAccountDetails,
178
+ marketAccountDetails
179
+ } = account.details;
180
+ if (fiatAccountDetails !== undefined) {
181
+ return {
182
+ legalAccountKind,
183
+ nickname,
184
+ details: {
185
+ ...fiatAccountDetails,
186
+ assetKind: "fiat"
187
+ }
188
+ };
189
+ } else if (marketAccountDetails !== undefined) {
190
+ return {
191
+ legalAccountKind,
192
+ nickname,
193
+ details: {
194
+ ...marketAccountDetails,
195
+ assetKind: marketAccountDetails.assetKind
196
+ }
197
+ };
198
+ } else {
199
+ throw new Error("Internal Candle Error: corrupted asset account.");
200
+ }
201
+ }
36
202
  }
37
203
  //# sourceMappingURL=index.js.map
@@ -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","unlinkAccount","linkedAccountID","deleteUser","getAvailableTools","executeTool","tool"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA,SAASA,YAAY,QAAQ,4BAA4B;AAUzD,OAAO,MAAMC,YAAY,CAAC;EAGxBC,WAAWA,CAACC,OAAgB,EAAE;IAC5B,MAAMC,kBAAkB,GACtBJ,YAAY,CAACK,kBAAkB,CAAW,UAAU,CAAC;IACvD,IAAI,CAACC,MAAM,GAAGF,kBAAkB;IAChC,IAAI,CAACE,MAAM,CAACC,UAAU,CAACJ,OAAO,CAAC;EACjC;EAEOK,sBAAsBA,CAAC;IAC5BC,QAAQ,GAAGC,SAAS;IACpBC,YAAY,GAAG,EAAE;IACjBC,YAAY;IACZC,kBAAkB,GAAG,IAAI;IACzBC,sBAAsB,GAAG,SAAS;IAClCC,iBAAiB,GAAG,YAAY;IAChCC;EAUF,CAAC,EAAQ;IACP,IAAI,CAACV,MAAM,CAACW,eAAe,CACzB,IAAI,EACJR,QAAQ,EACRE,YAAY,EACZC,YAAY,EACZC,kBAAkB,EAClBC,sBAAsB,EACtBC,iBAAiB,EACjBC,SACF,CAAC;EACH;EAEA,MAAaE,iBAAiBA,CAAA,EAA6B;IACzD,OAAO,IAAI,CAACZ,MAAM,CAACY,iBAAiB,CAAC,CAAC;EACxC;EAEA,MAAaC,aAAaA,CAACC,eAAuB,EAAiB;IACjE,MAAM,IAAI,CAACd,MAAM,CAACa,aAAa,CAACC,eAAe,CAAC;EAClD;EAEA,MAAaC,UAAUA,CAAA,EAAkB;IACvC,MAAM,IAAI,CAACf,MAAM,CAACe,UAAU,CAAC,CAAC;EAChC;EAEA,MAAaC,iBAAiBA,CAAA,EAAwC;IACpE,OAAO,IAAI,CAAChB,MAAM,CAACgB,iBAAiB,CAAC,CAAC;EACxC;EAEA,MAAaC,WAAWA,CAACC,IAGxB,EAAmB;IAClB,OAAO,IAAI,CAAClB,MAAM,CAACiB,WAAW,CAACC,IAAI,CAAC;EACtC;AACF","ignoreList":[]}
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,4 +1,4 @@
1
- import type { AppUser, LinkedAccount, PresentationBackground, PresentationStyle, Service } from "./specs/RNCandle.nitro";
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";
2
2
  export declare class CandleClient {
3
3
  private candle;
4
4
  constructor(appUser: AppUser);
@@ -12,14 +12,92 @@ export declare class CandleClient {
12
12
  presentationStyle?: PresentationStyle;
13
13
  onSuccess: (account: LinkedAccount) => void;
14
14
  }): void;
15
- getLinkedAccounts(): Promise<LinkedAccount[]>;
15
+ getLinkedAccounts(): Promise<((LinkedAccount & {
16
+ details: {
17
+ state: "active";
18
+ } & ActiveLinkedAccountDetails;
19
+ }) | (LinkedAccount & {
20
+ details: {
21
+ state: "inactive";
22
+ };
23
+ }))[]>;
16
24
  unlinkAccount(linkedAccountID: string): Promise<void>;
17
25
  deleteUser(): Promise<void>;
18
26
  getAvailableTools(): Promise<Array<Record<string, any>>>;
27
+ executeTrade(request: ExecuteTradeRequest): Promise<Trade>;
19
28
  executeTool(tool: {
20
29
  name: string;
21
30
  arguments: string;
22
31
  }): Promise<string>;
32
+ getAssetAccounts(query?: AssetAccountQuery): Promise<AssetAccount[]>;
33
+ getTrades(query?: {
34
+ gainedAssetKind?: TradeQueryAssetKind;
35
+ lostAssetKind?: TradeQueryAssetKind;
36
+ counterpartyKind?: "merchant" | "user" | "service";
37
+ } & TradeQuery): Promise<Trade[]>;
38
+ getTradeQuotes(request: {
39
+ linkedAccountIDs?: string;
40
+ gained: ({
41
+ assetKind: "nothing";
42
+ } & NothingAssetQuoteRequest) | ({
43
+ assetKind: "transport";
44
+ } & TransportAssetQuoteRequest) | ({
45
+ assetKind: "fiat";
46
+ } & FiatAssetQuoteRequest) | ({
47
+ assetKind: "stock" | "crypto";
48
+ } & MarketAssetQuoteRequest);
49
+ }): Promise<{
50
+ gained: TradeAsset;
51
+ lost: TradeAsset;
52
+ }[]>;
53
+ private convertTradeAsset;
54
+ private convertToCounterparty;
55
+ private convertToAssetAccount;
23
56
  }
24
- export type { LinkedAccount, AppUser };
57
+ type TradeAsset = ({
58
+ assetKind: "nothing";
59
+ } & NothingAsset) | ({
60
+ assetKind: "other";
61
+ } & OtherAsset) | ({
62
+ assetKind: "transport";
63
+ } & TransportAsset) | ({
64
+ assetKind: "fiat";
65
+ } & FiatAsset) | ({
66
+ assetKind: "stock" | "crypto";
67
+ } & MarketTradeAsset);
68
+ type Counterparty = ({
69
+ kind: "merchant";
70
+ } & MerchantCounterparty) | ({
71
+ kind: "user";
72
+ } & UserCounterparty) | ({
73
+ kind: "service";
74
+ } & ServiceCounterparty);
75
+ type TradeQueryAssetKind = "fiat" | "stock" | "crypto" | "transport" | "other" | "nothing";
76
+ type AssetAccount = {
77
+ legalAccountKind: LegalAccountKind;
78
+ nickname: string;
79
+ details: {
80
+ assetKind: "fiat";
81
+ serviceAccountID: string;
82
+ currencyCode: string;
83
+ balance?: number;
84
+ linkedAccountID: string;
85
+ service: Service;
86
+ ach?: ACHDetails;
87
+ wire?: WireDetails;
88
+ } | {
89
+ assetKind: "stock" | "crypto";
90
+ serviceAccountID: string;
91
+ linkedAccountID: string;
92
+ service: Service;
93
+ };
94
+ };
95
+ type Trade = {
96
+ dateTime: string;
97
+ state: TradeState;
98
+ counterparty: Counterparty;
99
+ lost: TradeAsset;
100
+ gained: TradeAsset;
101
+ };
102
+ export type { LinkedAccount, AppUser, Service, TradeState, TradeAsset, Trade };
25
103
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,OAAO,EACP,aAAa,EACb,sBAAsB,EACtB,iBAAiB,EAEjB,OAAO,EACR,MAAM,wBAAwB,CAAC;AAEhC,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAW;gBAEb,OAAO,EAAE,OAAO;IAOrB,sBAAsB,CAAC,EAC5B,QAAoB,EACpB,YAAiB,EACjB,YAAY,EACZ,kBAAyB,EACzB,sBAAkC,EAClC,iBAAgC,EAChC,SAAS,GACV,EAAE;QACD,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,kBAAkB,CAAC,EAAE,OAAO,CAAC;QAC7B,sBAAsB,CAAC,EAAE,sBAAsB,CAAC;QAChD,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;QACtC,SAAS,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAC;KAC7C,GAAG,IAAI;IAaK,iBAAiB,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;IAI7C,aAAa,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrD,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,iBAAiB,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;IAIxD,WAAW,CAAC,IAAI,EAAE;QAC7B,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;KACnB,GAAG,OAAO,CAAC,MAAM,CAAC;CAGpB;AAED,YAAY,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"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"}