@ledgerhq/coin-aptos 2.0.0-nightly.5 → 2.0.0

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 (272) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/.unimportedrc.json +18 -6
  3. package/CHANGELOG.md +152 -34
  4. package/jest.config.js +2 -1
  5. package/jest.integ.config.js +8 -0
  6. package/lib/__tests__/api/index.integ.test.d.ts +2 -0
  7. package/lib/__tests__/api/index.integ.test.d.ts.map +1 -0
  8. package/lib/__tests__/api/index.integ.test.js +52 -0
  9. package/lib/__tests__/api/index.integ.test.js.map +1 -0
  10. package/lib/__tests__/api/index.test.js +48 -404
  11. package/lib/__tests__/api/index.test.js.map +1 -1
  12. package/lib/__tests__/bridge/broadcast.test.js +5 -5
  13. package/lib/__tests__/bridge/broadcast.test.js.map +1 -1
  14. package/lib/__tests__/bridge/buildTransaction.test.js +60 -5
  15. package/lib/__tests__/bridge/buildTransaction.test.js.map +1 -1
  16. package/lib/__tests__/bridge/createTransaction.test.js +1 -1
  17. package/lib/__tests__/bridge/createTransaction.test.js.map +1 -1
  18. package/lib/__tests__/bridge/getFeesForTransaction.test.js +115 -14
  19. package/lib/__tests__/bridge/getFeesForTransaction.test.js.map +1 -1
  20. package/lib/__tests__/bridge/getTransactionStatus.test.js +175 -37
  21. package/lib/__tests__/bridge/getTransactionStatus.test.js.map +1 -1
  22. package/lib/__tests__/bridge/logic.test.js +889 -115
  23. package/lib/__tests__/bridge/logic.test.js.map +1 -1
  24. package/lib/__tests__/bridge/prepareTransaction.test.js +3 -3
  25. package/lib/__tests__/bridge/prepareTransaction.test.js.map +1 -1
  26. package/lib/__tests__/bridge/signOperation.test.js +131 -4
  27. package/lib/__tests__/bridge/signOperation.test.js.map +1 -1
  28. package/lib/__tests__/bridge/synchronisation.test.js +1215 -68
  29. package/lib/__tests__/bridge/synchronisation.test.js.map +1 -1
  30. package/lib/__tests__/network/client.test.d.ts +2 -0
  31. package/lib/__tests__/network/client.test.d.ts.map +1 -0
  32. package/lib/__tests__/network/client.test.js +520 -0
  33. package/lib/__tests__/network/client.test.js.map +1 -0
  34. package/lib/api/index.d.ts +4 -30
  35. package/lib/api/index.d.ts.map +1 -1
  36. package/lib/api/index.js +24 -170
  37. package/lib/api/index.js.map +1 -1
  38. package/lib/bridge/bridge.fixture.d.ts +2 -0
  39. package/lib/bridge/bridge.fixture.d.ts.map +1 -1
  40. package/lib/bridge/bridge.fixture.js +85 -13
  41. package/lib/bridge/bridge.fixture.js.map +1 -1
  42. package/lib/bridge/broadcast.d.ts +3 -2
  43. package/lib/bridge/broadcast.d.ts.map +1 -1
  44. package/lib/bridge/broadcast.js +4 -3
  45. package/lib/bridge/broadcast.js.map +1 -1
  46. package/lib/bridge/buildTransaction.d.ts +1 -1
  47. package/lib/bridge/buildTransaction.d.ts.map +1 -1
  48. package/lib/bridge/buildTransaction.js +29 -3
  49. package/lib/bridge/buildTransaction.js.map +1 -1
  50. package/lib/bridge/createTransaction.js +3 -3
  51. package/lib/bridge/createTransaction.js.map +1 -1
  52. package/lib/bridge/estimateMaxSpendable.d.ts.map +1 -1
  53. package/lib/bridge/estimateMaxSpendable.js +6 -5
  54. package/lib/bridge/estimateMaxSpendable.js.map +1 -1
  55. package/lib/bridge/getFeesForTransaction.d.ts +1 -1
  56. package/lib/bridge/getFeesForTransaction.d.ts.map +1 -1
  57. package/lib/bridge/getFeesForTransaction.js +19 -13
  58. package/lib/bridge/getFeesForTransaction.js.map +1 -1
  59. package/lib/bridge/getTransactionStatus.d.ts.map +1 -1
  60. package/lib/bridge/getTransactionStatus.js +28 -14
  61. package/lib/bridge/getTransactionStatus.js.map +1 -1
  62. package/lib/bridge/index.d.ts +1 -1
  63. package/lib/bridge/index.d.ts.map +1 -1
  64. package/lib/bridge/logic.d.ts +13 -11
  65. package/lib/bridge/logic.d.ts.map +1 -1
  66. package/lib/bridge/logic.js +152 -57
  67. package/lib/bridge/logic.js.map +1 -1
  68. package/lib/bridge/prepareTransaction.d.ts.map +1 -1
  69. package/lib/bridge/prepareTransaction.js +5 -4
  70. package/lib/bridge/prepareTransaction.js.map +1 -1
  71. package/lib/bridge/signOperation.d.ts.map +1 -1
  72. package/lib/bridge/signOperation.js +20 -6
  73. package/lib/bridge/signOperation.js.map +1 -1
  74. package/lib/bridge/synchronisation.d.ts +15 -0
  75. package/lib/bridge/synchronisation.d.ts.map +1 -1
  76. package/lib/bridge/synchronisation.js +129 -6
  77. package/lib/bridge/synchronisation.js.map +1 -1
  78. package/lib/config.d.ts +13 -0
  79. package/lib/config.d.ts.map +1 -0
  80. package/lib/config.js +9 -0
  81. package/lib/config.js.map +1 -0
  82. package/lib/constants.d.ts +9 -1
  83. package/lib/constants.d.ts.map +1 -1
  84. package/lib/constants.js +13 -2
  85. package/lib/constants.js.map +1 -1
  86. package/lib/network/client.d.ts +36 -0
  87. package/lib/network/client.d.ts.map +1 -0
  88. package/lib/network/client.js +247 -0
  89. package/lib/network/client.js.map +1 -0
  90. package/lib/network/graphql/queries.d.ts.map +1 -0
  91. package/lib/{api → network}/graphql/queries.js +6 -6
  92. package/lib/network/graphql/queries.js.map +1 -0
  93. package/lib/{api → network}/graphql/types.d.ts +9 -9
  94. package/lib/network/graphql/types.d.ts.map +1 -0
  95. package/lib/{api → network}/graphql/types.js.map +1 -1
  96. package/lib/network/index.d.ts +2 -1
  97. package/lib/network/index.d.ts.map +1 -1
  98. package/lib/network/index.js +15 -0
  99. package/lib/network/index.js.map +1 -1
  100. package/lib/test/bot-specs.d.ts.map +1 -1
  101. package/lib/test/bot-specs.js +40 -1
  102. package/lib/test/bot-specs.js.map +1 -1
  103. package/lib/test/bridgeDatasetTest.d.ts.map +1 -1
  104. package/lib/test/bridgeDatasetTest.js +44 -62
  105. package/lib/test/bridgeDatasetTest.js.map +1 -1
  106. package/lib/test/speculos-deviceActions.d.ts +1 -0
  107. package/lib/test/speculos-deviceActions.d.ts.map +1 -1
  108. package/lib/test/speculos-deviceActions.js +37 -5
  109. package/lib/test/speculos-deviceActions.js.map +1 -1
  110. package/lib/types/assets.d.ts +12 -0
  111. package/lib/types/assets.d.ts.map +1 -0
  112. package/lib/types/assets.js +3 -0
  113. package/lib/types/assets.js.map +1 -0
  114. package/lib/types/index.d.ts +18 -7
  115. package/lib/types/index.d.ts.map +1 -1
  116. package/lib-es/__tests__/api/index.integ.test.d.ts +2 -0
  117. package/lib-es/__tests__/api/index.integ.test.d.ts.map +1 -0
  118. package/lib-es/__tests__/api/index.integ.test.js +50 -0
  119. package/lib-es/__tests__/api/index.integ.test.js.map +1 -0
  120. package/lib-es/__tests__/api/index.test.js +52 -408
  121. package/lib-es/__tests__/api/index.test.js.map +1 -1
  122. package/lib-es/__tests__/bridge/broadcast.test.js +2 -2
  123. package/lib-es/__tests__/bridge/broadcast.test.js.map +1 -1
  124. package/lib-es/__tests__/bridge/buildTransaction.test.js +60 -5
  125. package/lib-es/__tests__/bridge/buildTransaction.test.js.map +1 -1
  126. package/lib-es/__tests__/bridge/createTransaction.test.js +1 -1
  127. package/lib-es/__tests__/bridge/createTransaction.test.js.map +1 -1
  128. package/lib-es/__tests__/bridge/getFeesForTransaction.test.js +112 -11
  129. package/lib-es/__tests__/bridge/getFeesForTransaction.test.js.map +1 -1
  130. package/lib-es/__tests__/bridge/getTransactionStatus.test.js +177 -39
  131. package/lib-es/__tests__/bridge/getTransactionStatus.test.js.map +1 -1
  132. package/lib-es/__tests__/bridge/logic.test.js +891 -117
  133. package/lib-es/__tests__/bridge/logic.test.js.map +1 -1
  134. package/lib-es/__tests__/bridge/prepareTransaction.test.js +2 -2
  135. package/lib-es/__tests__/bridge/prepareTransaction.test.js.map +1 -1
  136. package/lib-es/__tests__/bridge/signOperation.test.js +131 -4
  137. package/lib-es/__tests__/bridge/signOperation.test.js.map +1 -1
  138. package/lib-es/__tests__/bridge/synchronisation.test.js +1213 -69
  139. package/lib-es/__tests__/bridge/synchronisation.test.js.map +1 -1
  140. package/lib-es/__tests__/network/client.test.d.ts +2 -0
  141. package/lib-es/__tests__/network/client.test.d.ts.map +1 -0
  142. package/lib-es/__tests__/network/client.test.js +515 -0
  143. package/lib-es/__tests__/network/client.test.js.map +1 -0
  144. package/lib-es/api/index.d.ts +4 -30
  145. package/lib-es/api/index.d.ts.map +1 -1
  146. package/lib-es/api/index.js +22 -168
  147. package/lib-es/api/index.js.map +1 -1
  148. package/lib-es/bridge/bridge.fixture.d.ts +2 -0
  149. package/lib-es/bridge/bridge.fixture.d.ts.map +1 -1
  150. package/lib-es/bridge/bridge.fixture.js +82 -12
  151. package/lib-es/bridge/bridge.fixture.js.map +1 -1
  152. package/lib-es/bridge/broadcast.d.ts +3 -2
  153. package/lib-es/bridge/broadcast.d.ts.map +1 -1
  154. package/lib-es/bridge/broadcast.js +4 -3
  155. package/lib-es/bridge/broadcast.js.map +1 -1
  156. package/lib-es/bridge/buildTransaction.d.ts +1 -1
  157. package/lib-es/bridge/buildTransaction.d.ts.map +1 -1
  158. package/lib-es/bridge/buildTransaction.js +30 -4
  159. package/lib-es/bridge/buildTransaction.js.map +1 -1
  160. package/lib-es/bridge/createTransaction.js +1 -1
  161. package/lib-es/bridge/createTransaction.js.map +1 -1
  162. package/lib-es/bridge/estimateMaxSpendable.d.ts.map +1 -1
  163. package/lib-es/bridge/estimateMaxSpendable.js +4 -3
  164. package/lib-es/bridge/estimateMaxSpendable.js.map +1 -1
  165. package/lib-es/bridge/getFeesForTransaction.d.ts +1 -1
  166. package/lib-es/bridge/getFeesForTransaction.d.ts.map +1 -1
  167. package/lib-es/bridge/getFeesForTransaction.js +14 -8
  168. package/lib-es/bridge/getFeesForTransaction.js.map +1 -1
  169. package/lib-es/bridge/getTransactionStatus.d.ts.map +1 -1
  170. package/lib-es/bridge/getTransactionStatus.js +28 -14
  171. package/lib-es/bridge/getTransactionStatus.js.map +1 -1
  172. package/lib-es/bridge/index.d.ts +1 -1
  173. package/lib-es/bridge/index.d.ts.map +1 -1
  174. package/lib-es/bridge/logic.d.ts +13 -11
  175. package/lib-es/bridge/logic.d.ts.map +1 -1
  176. package/lib-es/bridge/logic.js +146 -55
  177. package/lib-es/bridge/logic.js.map +1 -1
  178. package/lib-es/bridge/prepareTransaction.d.ts.map +1 -1
  179. package/lib-es/bridge/prepareTransaction.js +5 -4
  180. package/lib-es/bridge/prepareTransaction.js.map +1 -1
  181. package/lib-es/bridge/signOperation.d.ts.map +1 -1
  182. package/lib-es/bridge/signOperation.js +18 -4
  183. package/lib-es/bridge/signOperation.js.map +1 -1
  184. package/lib-es/bridge/synchronisation.d.ts +15 -0
  185. package/lib-es/bridge/synchronisation.d.ts.map +1 -1
  186. package/lib-es/bridge/synchronisation.js +124 -4
  187. package/lib-es/bridge/synchronisation.js.map +1 -1
  188. package/lib-es/config.d.ts +13 -0
  189. package/lib-es/config.d.ts.map +1 -0
  190. package/lib-es/config.js +4 -0
  191. package/lib-es/config.js.map +1 -0
  192. package/lib-es/constants.d.ts +9 -1
  193. package/lib-es/constants.d.ts.map +1 -1
  194. package/lib-es/constants.js +9 -1
  195. package/lib-es/constants.js.map +1 -1
  196. package/lib-es/network/client.d.ts +36 -0
  197. package/lib-es/network/client.d.ts.map +1 -0
  198. package/lib-es/network/client.js +240 -0
  199. package/lib-es/network/client.js.map +1 -0
  200. package/lib-es/network/graphql/queries.d.ts.map +1 -0
  201. package/lib-es/{api → network}/graphql/queries.js +6 -6
  202. package/lib-es/network/graphql/queries.js.map +1 -0
  203. package/lib-es/{api → network}/graphql/types.d.ts +9 -9
  204. package/lib-es/network/graphql/types.d.ts.map +1 -0
  205. package/lib-es/{api → network}/graphql/types.js.map +1 -1
  206. package/lib-es/network/index.d.ts +2 -1
  207. package/lib-es/network/index.d.ts.map +1 -1
  208. package/lib-es/network/index.js +1 -0
  209. package/lib-es/network/index.js.map +1 -1
  210. package/lib-es/test/bot-specs.d.ts.map +1 -1
  211. package/lib-es/test/bot-specs.js +41 -2
  212. package/lib-es/test/bot-specs.js.map +1 -1
  213. package/lib-es/test/bridgeDatasetTest.d.ts.map +1 -1
  214. package/lib-es/test/bridgeDatasetTest.js +44 -59
  215. package/lib-es/test/bridgeDatasetTest.js.map +1 -1
  216. package/lib-es/test/speculos-deviceActions.d.ts +1 -0
  217. package/lib-es/test/speculos-deviceActions.d.ts.map +1 -1
  218. package/lib-es/test/speculos-deviceActions.js +36 -4
  219. package/lib-es/test/speculos-deviceActions.js.map +1 -1
  220. package/lib-es/types/assets.d.ts +12 -0
  221. package/lib-es/types/assets.d.ts.map +1 -0
  222. package/lib-es/types/assets.js +2 -0
  223. package/lib-es/types/assets.js.map +1 -0
  224. package/lib-es/types/index.d.ts +18 -7
  225. package/lib-es/types/index.d.ts.map +1 -1
  226. package/package.json +12 -9
  227. package/src/__tests__/api/index.integ.test.ts +58 -0
  228. package/src/__tests__/api/index.test.ts +60 -477
  229. package/src/__tests__/bridge/broadcast.test.ts +2 -2
  230. package/src/__tests__/bridge/buildTransaction.test.ts +87 -5
  231. package/src/__tests__/bridge/createTransaction.test.ts +1 -1
  232. package/src/__tests__/bridge/getFeesForTransaction.test.ts +146 -11
  233. package/src/__tests__/bridge/getTransactionStatus.test.ts +217 -38
  234. package/src/__tests__/bridge/logic.test.ts +922 -118
  235. package/src/__tests__/bridge/prepareTransaction.test.ts +2 -2
  236. package/src/__tests__/bridge/signOperation.test.ts +147 -5
  237. package/src/__tests__/bridge/synchronisation.test.ts +1265 -71
  238. package/src/__tests__/network/client.test.ts +618 -0
  239. package/src/api/index.ts +31 -223
  240. package/src/bridge/bridge.fixture.ts +91 -12
  241. package/src/bridge/broadcast.ts +7 -7
  242. package/src/bridge/buildTransaction.ts +40 -7
  243. package/src/bridge/createTransaction.ts +1 -1
  244. package/src/bridge/estimateMaxSpendable.ts +4 -3
  245. package/src/bridge/getFeesForTransaction.ts +16 -10
  246. package/src/bridge/getTransactionStatus.ts +35 -13
  247. package/src/bridge/index.ts +1 -1
  248. package/src/bridge/logic.ts +202 -67
  249. package/src/bridge/prepareTransaction.ts +7 -4
  250. package/src/bridge/signOperation.ts +20 -4
  251. package/src/bridge/synchronisation.ts +171 -4
  252. package/src/config.ts +19 -0
  253. package/src/constants.ts +17 -1
  254. package/src/network/client.ts +315 -0
  255. package/src/{api → network}/graphql/queries.ts +6 -6
  256. package/src/{api → network}/graphql/types.ts +9 -9
  257. package/src/network/index.ts +2 -1
  258. package/src/test/bot-specs.ts +63 -3
  259. package/src/test/bridgeDatasetTest.ts +46 -59
  260. package/src/test/speculos-deviceActions.ts +40 -4
  261. package/src/types/assets.ts +15 -0
  262. package/src/types/index.ts +15 -1
  263. package/lib/api/graphql/queries.d.ts.map +0 -1
  264. package/lib/api/graphql/queries.js.map +0 -1
  265. package/lib/api/graphql/types.d.ts.map +0 -1
  266. package/lib-es/api/graphql/queries.d.ts.map +0 -1
  267. package/lib-es/api/graphql/queries.js.map +0 -1
  268. package/lib-es/api/graphql/types.d.ts.map +0 -1
  269. /package/lib/{api → network}/graphql/queries.d.ts +0 -0
  270. /package/lib/{api → network}/graphql/types.js +0 -0
  271. /package/lib-es/{api → network}/graphql/queries.d.ts +0 -0
  272. /package/lib-es/{api → network}/graphql/types.js +0 -0
@@ -0,0 +1,247 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.AptosAPI = void 0;
7
+ const client_1 = require("@apollo/client");
8
+ const ts_sdk_1 = require("@aptos-labs/ts-sdk");
9
+ const live_env_1 = require("@ledgerhq/live-env");
10
+ const live_network_1 = __importDefault(require("@ledgerhq/live-network"));
11
+ const bignumber_js_1 = __importDefault(require("bignumber.js"));
12
+ const isUndefined_1 = __importDefault(require("lodash/isUndefined"));
13
+ const constants_1 = require("../constants");
14
+ const logic_1 = require("../bridge/logic");
15
+ const queries_1 = require("./graphql/queries");
16
+ const logs_1 = require("@ledgerhq/logs");
17
+ const getApiEndpoint = (currencyId) => (0, logic_1.isTestnet)(currencyId) ? (0, live_env_1.getEnv)("APTOS_TESTNET_API_ENDPOINT") : (0, live_env_1.getEnv)("APTOS_API_ENDPOINT");
18
+ const getIndexerEndpoint = (currencyId) => (0, logic_1.isTestnet)(currencyId)
19
+ ? (0, live_env_1.getEnv)("APTOS_TESTNET_INDEXER_ENDPOINT")
20
+ : (0, live_env_1.getEnv)("APTOS_INDEXER_ENDPOINT");
21
+ class AptosAPI {
22
+ aptosConfig;
23
+ aptosClient;
24
+ apolloClient;
25
+ constructor(currencyIdOrSettings) {
26
+ if (typeof currencyIdOrSettings === "string") {
27
+ this.aptosConfig = new ts_sdk_1.AptosConfig({
28
+ fullnode: getApiEndpoint(currencyIdOrSettings),
29
+ indexer: getIndexerEndpoint(currencyIdOrSettings),
30
+ });
31
+ }
32
+ else {
33
+ this.aptosConfig = new ts_sdk_1.AptosConfig(currencyIdOrSettings);
34
+ }
35
+ this.aptosClient = new ts_sdk_1.Aptos(this.aptosConfig);
36
+ this.apolloClient = new client_1.ApolloClient({
37
+ uri: this.aptosConfig.indexer ?? "",
38
+ cache: new client_1.InMemoryCache(),
39
+ headers: {
40
+ "x-client": "ledger-live",
41
+ },
42
+ });
43
+ }
44
+ async getAccount(address) {
45
+ return this.aptosClient.getAccountInfo({ accountAddress: address });
46
+ }
47
+ async getAccountInfo(address, startAt) {
48
+ const [balance, transactions, blockHeight] = await Promise.all([
49
+ this.getCoinBalance(address, constants_1.APTOS_ASSET_ID),
50
+ this.fetchTransactions(address, startAt),
51
+ this.getHeight(),
52
+ ]);
53
+ return {
54
+ balance,
55
+ transactions,
56
+ blockHeight,
57
+ };
58
+ }
59
+ async estimateGasPrice() {
60
+ return this.aptosClient.getGasPriceEstimation();
61
+ }
62
+ async generateTransaction(address, payload, options) {
63
+ const opts = {};
64
+ if (!(0, isUndefined_1.default)(options.maxGasAmount)) {
65
+ opts.maxGasAmount = Number(options.maxGasAmount);
66
+ }
67
+ if (!(0, isUndefined_1.default)(options.gasUnitPrice)) {
68
+ opts.gasUnitPrice = Number(options.gasUnitPrice);
69
+ }
70
+ try {
71
+ const { ledger_timestamp } = await this.aptosClient.getLedgerInfo();
72
+ opts.expireTimestamp = Number(Math.ceil(+ledger_timestamp / 1_000_000 + 2 * 60)); // in milliseconds
73
+ }
74
+ catch {
75
+ // skip
76
+ }
77
+ return this.aptosClient.transaction.build
78
+ .simple({
79
+ sender: address,
80
+ data: payload,
81
+ options: opts,
82
+ })
83
+ .then(t => t.rawTransaction)
84
+ .catch(error => {
85
+ throw error;
86
+ });
87
+ }
88
+ async simulateTransaction(address, tx, options = {
89
+ estimateGasUnitPrice: true,
90
+ estimateMaxGasAmount: true,
91
+ estimatePrioritizedGasUnitPrice: false,
92
+ }) {
93
+ return this.aptosClient.transaction.simulate.simple({
94
+ signerPublicKey: address,
95
+ transaction: { rawTransaction: tx },
96
+ options,
97
+ });
98
+ }
99
+ async broadcast(signature) {
100
+ const txBytes = Uint8Array.from(Buffer.from(signature, "hex"));
101
+ const pendingTx = await (0, ts_sdk_1.post)({
102
+ contentType: ts_sdk_1.MimeType.BCS_SIGNED_TRANSACTION,
103
+ aptosConfig: this.aptosClient.config,
104
+ body: txBytes,
105
+ path: "transactions",
106
+ type: ts_sdk_1.AptosApiType.FULLNODE,
107
+ originMethod: "",
108
+ });
109
+ return pendingTx.data.hash;
110
+ }
111
+ async getBalance(address, token) {
112
+ if (token.tokenType === "coin") {
113
+ return await this.getCoinBalance(address, token.contractAddress);
114
+ }
115
+ else {
116
+ return await this.getFABalance(address, token.contractAddress);
117
+ }
118
+ }
119
+ async getLastBlock() {
120
+ const { block_height } = await this.aptosClient.getLedgerInfo();
121
+ const block = await this.aptosClient.getBlockByHeight({ blockHeight: Number(block_height) });
122
+ return {
123
+ height: Number(block.block_height),
124
+ hash: block.block_hash,
125
+ time: new Date(Number(block.block_timestamp)),
126
+ };
127
+ }
128
+ async getCoinBalance(address, contract_address) {
129
+ try {
130
+ const [balanceStr] = await this.aptosClient.view({
131
+ payload: {
132
+ function: "0x1::coin::balance",
133
+ typeArguments: [contract_address],
134
+ functionArguments: [address],
135
+ },
136
+ });
137
+ const balance = parseInt(balanceStr, 10);
138
+ return new bignumber_js_1.default(balance);
139
+ }
140
+ catch (error) {
141
+ (0, logs_1.log)("error", "getCoinBalance", {
142
+ error,
143
+ });
144
+ return new bignumber_js_1.default(0);
145
+ }
146
+ }
147
+ async getFABalance(address, contract_address) {
148
+ try {
149
+ const [balanceStr] = await this.aptosClient.view({
150
+ payload: {
151
+ function: "0x1::primary_fungible_store::balance",
152
+ typeArguments: ["0x1::object::ObjectCore"],
153
+ functionArguments: [address, contract_address],
154
+ },
155
+ });
156
+ const balance = parseInt(balanceStr, 10);
157
+ return new bignumber_js_1.default(balance);
158
+ }
159
+ catch (error) {
160
+ (0, logs_1.log)("error", "getFABalance", {
161
+ error,
162
+ });
163
+ return new bignumber_js_1.default(0);
164
+ }
165
+ }
166
+ async estimateFees(transactionIntent) {
167
+ const publicKeyEd = new ts_sdk_1.Ed25519PublicKey(transactionIntent.sender.xpub);
168
+ const fn = "0x1::aptos_account::transfer_coins";
169
+ const txPayload = {
170
+ function: fn,
171
+ typeArguments: [constants_1.APTOS_ASSET_ID],
172
+ functionArguments: [transactionIntent.recipient, transactionIntent.amount],
173
+ };
174
+ const txOptions = {
175
+ maxGasAmount: constants_1.DEFAULT_GAS.toString(),
176
+ gasUnitPrice: constants_1.DEFAULT_GAS_PRICE.toString(),
177
+ };
178
+ const tx = await this.generateTransaction(transactionIntent.sender.freshAddress, txPayload, txOptions);
179
+ const simulation = await this.simulateTransaction(publicKeyEd, tx);
180
+ const completedTx = simulation[0];
181
+ const gasLimit = new bignumber_js_1.default(completedTx.gas_used).multipliedBy(constants_1.ESTIMATE_GAS_MUL);
182
+ const gasPrice = new bignumber_js_1.default(completedTx.gas_unit_price);
183
+ const expectedGas = gasPrice.multipliedBy(gasLimit);
184
+ return {
185
+ value: BigInt(expectedGas.toString()),
186
+ parameters: {
187
+ gasLimit: BigInt(gasLimit.toString()),
188
+ gasPrice: BigInt(gasPrice.toString()),
189
+ },
190
+ };
191
+ }
192
+ async fetchTransactions(address, gt) {
193
+ if (!address) {
194
+ return [];
195
+ }
196
+ let query = queries_1.GetAccountTransactionsData;
197
+ if (gt) {
198
+ query = queries_1.GetAccountTransactionsDataGt;
199
+ }
200
+ const queryResponse = await this.apolloClient.query({
201
+ query,
202
+ variables: {
203
+ address,
204
+ limit: 1000,
205
+ gt,
206
+ },
207
+ fetchPolicy: "network-only",
208
+ });
209
+ return Promise.all(queryResponse.data.account_transactions.map(({ transaction_version }) => {
210
+ return this.richItemByVersion(transaction_version);
211
+ }));
212
+ }
213
+ async richItemByVersion(version) {
214
+ try {
215
+ const tx = await this.aptosClient.getTransactionByVersion({
216
+ ledgerVersion: version,
217
+ });
218
+ const block = await this.getBlock(version);
219
+ return {
220
+ ...tx,
221
+ block,
222
+ };
223
+ }
224
+ catch (error) {
225
+ (0, logs_1.log)("error", "richItemByVersion", {
226
+ error,
227
+ });
228
+ return null;
229
+ }
230
+ }
231
+ async getHeight() {
232
+ const { data } = await (0, live_network_1.default)({
233
+ method: "GET",
234
+ url: this.aptosConfig.fullnode ?? "",
235
+ });
236
+ return parseInt(data.block_height);
237
+ }
238
+ async getBlock(version) {
239
+ const block = await this.aptosClient.getBlockByVersion({ ledgerVersion: version });
240
+ return {
241
+ height: parseInt(block.block_height),
242
+ hash: block.block_hash,
243
+ };
244
+ }
245
+ }
246
+ exports.AptosAPI = AptosAPI;
247
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/network/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queries.d.ts","sourceRoot":"","sources":["../../../src/network/graphql/queries.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,6BAA6B,uCAczC,CAAC;AACF,eAAO,MAAM,0BAA0B,uCAWtC,CAAC;AACF,eAAO,MAAM,4BAA4B,uCAWxC,CAAC;AACF,eAAO,MAAM,4BAA4B,uCAWxC,CAAC"}
@@ -20,8 +20,8 @@ exports.GetDelegatedStakingActivities = (0, client_1.gql) `
20
20
  `;
21
21
  exports.GetAccountTransactionsData = (0, client_1.gql) `
22
22
  query GetAccountTransactionsData($address: String, $limit: Int) {
23
- address_version_from_move_resources(
24
- where: { address: { _eq: $address } }
23
+ account_transactions(
24
+ where: { account_address: { _eq: $address } }
25
25
  order_by: { transaction_version: desc }
26
26
  limit: $limit
27
27
  ) {
@@ -32,8 +32,8 @@ exports.GetAccountTransactionsData = (0, client_1.gql) `
32
32
  `;
33
33
  exports.GetAccountTransactionsDataGt = (0, client_1.gql) `
34
34
  query GetAccountTransactionsDataGt($address: String, $limit: Int, $gt: bigint) {
35
- address_version_from_move_resources(
36
- where: { address: { _eq: $address }, transaction_version: { _gt: $gt } }
35
+ account_transactions(
36
+ where: { account_address: { _eq: $address }, transaction_version: { _gt: $gt } }
37
37
  order_by: { transaction_version: desc }
38
38
  limit: $limit
39
39
  ) {
@@ -44,8 +44,8 @@ exports.GetAccountTransactionsDataGt = (0, client_1.gql) `
44
44
  `;
45
45
  exports.GetAccountTransactionsDataLt = (0, client_1.gql) `
46
46
  query GetAccountTransactionsDataLt($address: String, $limit: Int, $lt: bigint) {
47
- address_version_from_move_resources(
48
- where: { address: { _eq: $address }, transaction_version: { _lt: $lt } }
47
+ account_transactions(
48
+ where: { account_address: { _eq: $address }, transaction_version: { _lt: $lt } }
49
49
  order_by: { transaction_version: desc }
50
50
  limit: $limit
51
51
  ) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queries.js","sourceRoot":"","sources":["../../../src/network/graphql/queries.ts"],"names":[],"mappings":";;;AAAA,qDAAqD;AACrD,2CAAqC;AAExB,QAAA,6BAA6B,GAAG,IAAA,YAAG,EAAA;;;;;;;;;;;;;;CAc/C,CAAC;AACW,QAAA,0BAA0B,GAAG,IAAA,YAAG,EAAA;;;;;;;;;;;CAW5C,CAAC;AACW,QAAA,4BAA4B,GAAG,IAAA,YAAG,EAAA;;;;;;;;;;;CAW9C,CAAC;AACW,QAAA,4BAA4B,GAAG,IAAA,YAAG,EAAA;;;;;;;;;;;CAW9C,CAAC"}
@@ -24,9 +24,9 @@ export type GetAccountTransactionsDataQueryVariables = Exact<{
24
24
  }>;
25
25
  export type GetAccountTransactionsDataQuery = {
26
26
  __typename?: "query_root";
27
- address_version_from_move_resources: Array<{
28
- __typename: "address_version_from_move_resources";
29
- transaction_version?: any | null;
27
+ account_transactions: Array<{
28
+ __typename?: "account_transactions";
29
+ transaction_version: number;
30
30
  }>;
31
31
  };
32
32
  export type GetAccountTransactionsDataGtQueryVariables = Exact<{
@@ -36,9 +36,9 @@ export type GetAccountTransactionsDataGtQueryVariables = Exact<{
36
36
  }>;
37
37
  export type GetAccountTransactionsDataGtQuery = {
38
38
  __typename?: "query_root";
39
- address_version_from_move_resources: Array<{
40
- __typename: "address_version_from_move_resources";
41
- transaction_version?: any | null;
39
+ account_transactions: Array<{
40
+ __typename?: "account_transactions";
41
+ transaction_version: number;
42
42
  }>;
43
43
  };
44
44
  export type GetAccountTransactionsDataLtQueryVariables = Exact<{
@@ -48,9 +48,9 @@ export type GetAccountTransactionsDataLtQueryVariables = Exact<{
48
48
  }>;
49
49
  export type GetAccountTransactionsDataLtQuery = {
50
50
  __typename?: "query_root";
51
- address_version_from_move_resources: Array<{
52
- __typename: "address_version_from_move_resources";
53
- transaction_version?: any | null;
51
+ account_transactions: Array<{
52
+ __typename?: "account_transactions";
53
+ transaction_version: number;
54
54
  }>;
55
55
  };
56
56
  export type DelegatedStakingActivity = {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/network/graphql/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AAChC,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;AACrC,MAAM,MAAM,KAAK,CAAC,CAAC,SAAS;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAE,CAAC;AACnF,qEAAqE;AACrE,MAAM,MAAM,OAAO,GAAG;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,GAAG,CAAC;IACZ,KAAK,EAAE,GAAG,CAAC;IACX,OAAO,EAAE,GAAG,CAAC;IACb,SAAS,EAAE,GAAG,CAAC;IACf,WAAW,EAAE,GAAG,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,wCAAwC,GAAG,KAAK,CAAC;IAC3D,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxC,KAAK,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;CACpC,CAAC,CAAC;AAEH,MAAM,MAAM,+BAA+B,GAAG;IAC5C,UAAU,CAAC,EAAE,YAAY,CAAC;IAC1B,oBAAoB,EAAE,KAAK,CAAC;QAC1B,UAAU,CAAC,EAAE,sBAAsB,CAAC;QACpC,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC,CAAC;CACJ,CAAC;AAEF,MAAM,MAAM,0CAA0C,GAAG,KAAK,CAAC;IAC7D,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxC,KAAK,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IACnC,EAAE,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;CACpC,CAAC,CAAC;AAEH,MAAM,MAAM,iCAAiC,GAAG;IAC9C,UAAU,CAAC,EAAE,YAAY,CAAC;IAC1B,oBAAoB,EAAE,KAAK,CAAC;QAC1B,UAAU,CAAC,EAAE,sBAAsB,CAAC;QACpC,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC,CAAC;CACJ,CAAC;AAEF,MAAM,MAAM,0CAA0C,GAAG,KAAK,CAAC;IAC7D,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxC,KAAK,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IACnC,EAAE,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;CACpC,CAAC,CAAC;AAEH,MAAM,MAAM,iCAAiC,GAAG;IAC9C,UAAU,CAAC,EAAE,YAAY,CAAC;IAC1B,oBAAoB,EAAE,KAAK,CAAC;QAC1B,UAAU,CAAC,EAAE,sBAAsB,CAAC;QACpC,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC,CAAC;CACJ,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,kCAAkC,GAAG;IAC/C,4BAA4B,EAAE,KAAK,CAAC,wBAAwB,CAAC,CAAC;CAC/D,CAAC;AAEF,MAAM,MAAM,qCAAqC,GAAG,MAAM,CAAC,MAAM,EAAE,wBAAwB,EAAE,CAAC,CAAC;AAE/F,MAAM,MAAM,eAAe,GAAG;IAC5B,gBAAgB,EAAE,MAAM,CAAC;IACzB,yBAAyB,EAAE,MAAM,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,0BAA0B,EAAE,OAAO,CAAC;IACpC,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/api/graphql/types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/network/graphql/types.ts"],"names":[],"mappings":""}
@@ -1,6 +1,7 @@
1
1
  import { RawTransaction } from "@aptos-labs/ts-sdk";
2
- import { SignerContext } from "@ledgerhq/coin-framework/lib/signer";
2
+ import { SignerContext } from "@ledgerhq/coin-framework/signer";
3
3
  import { Account } from "@ledgerhq/types-live";
4
4
  import { AptosSigner } from "../types";
5
+ export * from "./client";
5
6
  export declare function signTransaction(signerContext: SignerContext<AptosSigner>, account: Account, deviceId: string, rawTxn: RawTransaction): Promise<Uint8Array>;
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/network/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAQL,cAAc,EAEf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAGvC,wBAAsB,eAAe,CACnC,aAAa,EAAE,aAAa,CAAC,WAAW,CAAC,EACzC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,UAAU,CAAC,CAgCrB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/network/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAQL,cAAc,EAEf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,cAAc,UAAU,CAAC;AAEzB,wBAAsB,eAAe,CACnC,aAAa,EAAE,aAAa,CAAC,WAAW,CAAC,EACzC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,UAAU,CAAC,CAgCrB"}
@@ -1,8 +1,23 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
2
16
  Object.defineProperty(exports, "__esModule", { value: true });
3
17
  exports.signTransaction = void 0;
4
18
  const ts_sdk_1 = require("@aptos-labs/ts-sdk");
5
19
  const sha3_1 = require("@noble/hashes/sha3");
20
+ __exportStar(require("./client"), exports);
6
21
  async function signTransaction(signerContext, account, deviceId, rawTxn) {
7
22
  const { freshAddressPath: derivationPath } = account;
8
23
  if (!account.xpub) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/network/index.ts"],"names":[],"mappings":";;;AAAA,+CAU4B;AAI5B,6CAA0D;AAEnD,KAAK,UAAU,eAAe,CACnC,aAAyC,EACzC,OAAgB,EAChB,QAAgB,EAChB,MAAsB;IAEtB,MAAM,EAAE,gBAAgB,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC;IAErD,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAClB,MAAM,KAAK,CAAC,wCAAwC,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,uBAAc,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;IAChF,MAAM,IAAI,GAAG,eAAQ,CAAC,MAAM,EAAE,CAAC;IAC/B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IACvC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAEpB,MAAM,cAAc,GAAG,IAAA,6CAAoC,EAAC;QAC1D,cAAc,EAAE,MAAM;KACF,CAAC,CAAC;IAExB,MAAM,QAAQ,GAAG,MAAM,aAAa,CAClC,QAAQ,EACR,KAAK,EAAC,MAAM,EAAC,EAAE,CAAC,MAAM,MAAM,CAAC,eAAe,CAAC,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAC1F,CAAC;IAEF,MAAM,SAAS,GAAG,YAAG,CAAC,aAAa,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IACxE,MAAM,SAAS,GAAG,IAAI,yBAAgB,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,CAAC;IACjE,MAAM,aAAa,GAAG,IAAI,oCAA2B,CACnD,IAAI,yBAAgB,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAC/C,SAAS,CACV,CAAC;IAEF,OAAO,IAAA,kCAAyB,EAAC;QAC/B,WAAW,EAAE,EAAE,cAAc,EAAE,MAAM,EAAuB;QAC5D,mBAAmB,EAAE,aAAa;KACnC,CAAC,CAAC;AACL,CAAC;AArCD,0CAqCC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/network/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,+CAU4B;AAI5B,6CAA0D;AAC1D,2CAAyB;AAElB,KAAK,UAAU,eAAe,CACnC,aAAyC,EACzC,OAAgB,EAChB,QAAgB,EAChB,MAAsB;IAEtB,MAAM,EAAE,gBAAgB,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC;IAErD,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAClB,MAAM,KAAK,CAAC,wCAAwC,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,uBAAc,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;IAChF,MAAM,IAAI,GAAG,eAAQ,CAAC,MAAM,EAAE,CAAC;IAC/B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IACvC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAEpB,MAAM,cAAc,GAAG,IAAA,6CAAoC,EAAC;QAC1D,cAAc,EAAE,MAAM;KACF,CAAC,CAAC;IAExB,MAAM,QAAQ,GAAG,MAAM,aAAa,CAClC,QAAQ,EACR,KAAK,EAAC,MAAM,EAAC,EAAE,CAAC,MAAM,MAAM,CAAC,eAAe,CAAC,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAC1F,CAAC;IAEF,MAAM,SAAS,GAAG,YAAG,CAAC,aAAa,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IACxE,MAAM,SAAS,GAAG,IAAI,yBAAgB,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,CAAC;IACjE,MAAM,aAAa,GAAG,IAAI,oCAA2B,CACnD,IAAI,yBAAgB,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAC/C,SAAS,CACV,CAAC;IAEF,OAAO,IAAA,kCAAyB,EAAC;QAC/B,WAAW,EAAE,EAAE,cAAc,EAAE,MAAM,EAAuB;QAC5D,mBAAmB,EAAE,aAAa;KACnC,CAAC,CAAC;AACL,CAAC;AArCD,0CAqCC"}
@@ -1 +1 @@
1
- {"version":3,"file":"bot-specs.d.ts","sourceRoot":"","sources":["../../src/test/bot-specs.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAG5C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oCAAoC,CAAC;;;;AAkFlE,wBAEE"}
1
+ {"version":3,"file":"bot-specs.d.ts","sourceRoot":"","sources":["../../src/test/bot-specs.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAG5C,OAAO,KAAK,EAAE,OAAO,EAAwB,MAAM,oCAAoC,CAAC;;;;AA8IxF,wBAEE"}
@@ -20,7 +20,7 @@ const aptosSpecs = {
20
20
  appName: "Aptos",
21
21
  },
22
22
  genericDeviceAction: speculos_deviceActions_1.acceptTransaction,
23
- testTimeout: 6 * 60 * 1000,
23
+ testTimeout: 2 * 60 * 1000,
24
24
  minViableAmount: MIN_SAFE,
25
25
  transactionCheck: ({ maxSpendable }) => {
26
26
  (0, invariant_1.default)(maxSpendable.gt(MIN_SAFE), "balance is too low");
@@ -75,8 +75,47 @@ const aptosSpecs = {
75
75
  (0, specs_1.botTest)("account spendable balance is zero", () => (0, expect_1.default)(account.spendableBalance.toString()).toBe("0"));
76
76
  },
77
77
  },
78
+ {
79
+ name: "Send ~50% of token amount",
80
+ feature: "tokens",
81
+ maxRun: 1,
82
+ deviceAction: speculos_deviceActions_1.acceptTokenTransaction,
83
+ transaction: ({ account, bridge, siblings, maxSpendable }) => {
84
+ (0, invariant_1.default)(maxSpendable.gt(MIN_SAFE), "Balance is too low");
85
+ const senderTokenAcc = findTokenSubAccountWithBalance(account);
86
+ (0, invariant_1.default)(senderTokenAcc, "Sender token account with available balance not found");
87
+ const sibling = (0, specs_1.pickSiblings)(siblings, maxAccount);
88
+ const recipientTokenAcc = findTokenSubAccountWithBalance(sibling);
89
+ (0, invariant_1.default)(recipientTokenAcc, "Receiver token account with available balance not found");
90
+ const amount = senderTokenAcc.spendableBalance.div(2).integerValue();
91
+ const recipient = sibling.freshAddress;
92
+ const transaction = bridge.createTransaction(account);
93
+ const subAccountId = senderTokenAcc.id;
94
+ return {
95
+ transaction,
96
+ updates: [{ subAccountId }, { recipient }, { amount }],
97
+ };
98
+ },
99
+ test: input => {
100
+ expectTokenAccountCorrectBalanceChange(input);
101
+ },
102
+ },
78
103
  ],
79
104
  };
105
+ function findTokenSubAccountWithBalance(account) {
106
+ return account.subAccounts?.find(acc => acc.type === "TokenAccount" && acc.balance.gt(0));
107
+ }
108
+ function expectTokenAccountCorrectBalanceChange({ account, accountBeforeTransaction, status, transaction, }) {
109
+ const tokenAccId = transaction.subAccountId;
110
+ if (!tokenAccId)
111
+ throw new Error("Wrong subAccountId");
112
+ const tokenAccAfterTx = account.subAccounts?.find(acc => acc.id === tokenAccId);
113
+ const tokenAccBeforeTx = accountBeforeTransaction.subAccounts?.find(acc => acc.id === tokenAccId);
114
+ if (!tokenAccAfterTx || !tokenAccBeforeTx) {
115
+ throw new Error("Token sub accounts not found!");
116
+ }
117
+ (0, specs_1.botTest)("Token balance decreased with operation", () => (0, expect_1.default)(tokenAccAfterTx.balance.toString()).toBe(tokenAccBeforeTx.balance.minus(status.amount).toString()));
118
+ }
80
119
  exports.default = {
81
120
  aptosSpecs,
82
121
  };
@@ -1 +1 @@
1
- {"version":3,"file":"bot-specs.js","sourceRoot":"","sources":["../../src/test/bot-specs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bot-specs.js","sourceRoot":"","sources":["../../src/test/bot-specs.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"bridgeDatasetTest.d.ts","sourceRoot":"","sources":["../../src/test/bridgeDatasetTest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGnE,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAwGvC,eAAO,MAAM,OAAO,EAAE,WAAW,CAAC,WAAW,CAK5C,CAAC"}
1
+ {"version":3,"file":"bridgeDatasetTest.d.ts","sourceRoot":"","sources":["../../src/test/bridgeDatasetTest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AA6FvC,eAAO,MAAM,OAAO,EAAE,WAAW,CAAC,WAAW,CAK5C,CAAC"}
@@ -1,11 +1,6 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.dataset = void 0;
7
- const bignumber_js_1 = __importDefault(require("bignumber.js"));
8
- const transaction_1 = require("../bridge/transaction");
9
4
  const aptos = {
10
5
  scanAccounts: [
11
6
  {
@@ -24,86 +19,73 @@ const aptos = {
24
19
  ],
25
20
  accounts: [
26
21
  {
22
+ FIXME_tests: ["balance is sum of ops"],
27
23
  raw: {
28
- id: "js:2:aptos:d1a8c6a1cdd52dd40c7ea61ee4571fb51fcae440a594c1eca18636928f1d3956:",
24
+ id: "js:2:aptos:d1a8c6a1cdd52dd40c7ea61ee4571fb51fcae440a594c1eca18636928f1d3956:aptos",
29
25
  seedIdentifier: "d6816f4f22f867b56cf9304b776f452a16d107835d73ee8a33c4ced210300583",
30
26
  used: true,
31
- derivationMode: "",
27
+ derivationMode: "aptos",
32
28
  index: 0,
33
29
  freshAddress: "0x445fa0013887abd1a0c14acdec6e48090e0ad3fed3e08202aac15ca14f3be26b",
34
30
  freshAddressPath: "44'/637'/0'/0'/0'",
35
- blockHeight: 286066372,
31
+ blockHeight: 302459501,
36
32
  creationDate: "2024-12-18T12:26:31.070Z",
37
- operationsCount: 5,
33
+ operationsCount: 6,
38
34
  operations: [],
39
35
  pendingOperations: [],
40
36
  currencyId: "aptos",
41
- lastSyncDate: "2025-02-04T14:00:46.693Z",
42
- balance: "30100",
43
- spendableBalance: "30100",
37
+ lastSyncDate: "2025-03-12T10:42:53.570Z",
38
+ balance: "19949100",
39
+ spendableBalance: "19949100",
44
40
  balanceHistoryCache: {
45
41
  HOUR: {
46
42
  balances: [
47
- 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100,
48
- 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100,
49
- 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100,
50
- 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100,
51
- 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100,
52
- 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100,
53
- 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100,
54
- 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100,
55
- 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100,
56
- 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100,
57
- 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100,
58
- 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100,
59
- 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100,
60
- 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100,
61
- 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100,
62
- 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100,
63
- 30100,
43
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
44
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
45
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
46
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
47
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
48
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
49
+ 0, 19949100, 19949100, 19949100, 19949100, 19949100, 19949100, 19949100, 19949100,
50
+ 19949100, 19949100, 19949100, 19949100, 19949100, 19949100, 19949100, 19949100,
51
+ 19949100, 19949100,
64
52
  ],
65
- latestDate: 1738677600000,
53
+ latestDate: 1741773600000,
66
54
  },
67
55
  DAY: {
68
56
  balances: [
69
- 0, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100,
70
- 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100,
71
- 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100,
72
- 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100, 30100,
57
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
58
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
59
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
60
+ 19949100,
73
61
  ],
74
- latestDate: 1738627200000,
75
- },
76
- WEEK: {
77
- balances: [0, 30100, 30100, 30100, 30100, 30100, 30100, 30100],
78
- latestDate: 1738454400000,
62
+ latestDate: 1741737600000,
79
63
  },
64
+ WEEK: { balances: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], latestDate: 1741478400000 },
80
65
  },
81
66
  xpub: "d1a8c6a1cdd52dd40c7ea61ee4571fb51fcae440a594c1eca18636928f1d3956",
67
+ subAccounts: [
68
+ {
69
+ type: "TokenAccountRaw",
70
+ id: "js:2:aptos:d1a8c6a1cdd52dd40c7ea61ee4571fb51fcae440a594c1eca18636928f1d3956:aptos+aptos%2Fcoin%2Fdstapt~!underscore!~0xd11107bdf0d6d7040c6c0bfbdecb6545191fdf13e8d8d259952f53e1713f61b5%3A%3Astaked~!underscore!~coin%3A%3Astakedaptos",
71
+ parentId: "js:2:aptos:d1a8c6a1cdd52dd40c7ea61ee4571fb51fcae440a594c1eca18636928f1d3956:aptos",
72
+ tokenId: "aptos/coin/dstapt_0xd11107bdf0d6d7040c6c0bfbdecb6545191fdf13e8d8d259952f53e1713f61b5::staked_coin::stakedaptos",
73
+ balance: "30000000",
74
+ spendableBalance: "30000000",
75
+ balanceHistoryCache: {
76
+ HOUR: { latestDate: null, balances: [] },
77
+ DAY: { latestDate: null, balances: [] },
78
+ WEEK: { latestDate: null, balances: [] },
79
+ },
80
+ creationDate: "2025-03-12T10:42:53.570Z",
81
+ operationsCount: 2,
82
+ operations: [],
83
+ pendingOperations: [],
84
+ swapHistory: [],
85
+ },
86
+ ],
82
87
  swapHistory: [],
83
88
  },
84
- transactions: [
85
- {
86
- name: "NO_NAME",
87
- transaction: (0, transaction_1.fromTransactionRaw)({
88
- amount: "1000",
89
- recipient: "0xd20fa44192f94ba086ab16bfdf57e43ff118ada69b4c66fa9b9a9223cbc068c1",
90
- useAllAmount: false,
91
- subAccountId: null,
92
- family: "aptos",
93
- mode: "send",
94
- fees: "900",
95
- options: '{"maxGasAmount":"9","gasUnitPrice":"100"}',
96
- errors: "{}",
97
- }),
98
- expectedStatus: () =>
99
- // you can use account and transaction for smart logic. drop the =>fn otherwise
100
- ({
101
- errors: {},
102
- warnings: {},
103
- amount: (0, bignumber_js_1.default)("1000"),
104
- }),
105
- },
106
- ],
107
89
  },
108
90
  ],
109
91
  };