@ledgerhq/coin-aptos 2.5.1 → 2.5.2-nightly.1

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 (315) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/.unimportedrc.json +5 -8
  3. package/CHANGELOG.md +18 -0
  4. package/lib/__tests__/bridge/deviceTransactionConfig.test.js +115 -30
  5. package/lib/__tests__/bridge/deviceTransactionConfig.test.js.map +1 -1
  6. package/lib/__tests__/bridge/getFeesForTransaction.test.js +10 -10
  7. package/lib/__tests__/bridge/getFeesForTransaction.test.js.map +1 -1
  8. package/lib/__tests__/bridge/getTransactionStatus.test.js +193 -2
  9. package/lib/__tests__/bridge/getTransactionStatus.test.js.map +1 -1
  10. package/lib/__tests__/bridge/index.test.js +4 -1
  11. package/lib/__tests__/bridge/index.test.js.map +1 -1
  12. package/lib/__tests__/bridge/logic.test.js +9 -9
  13. package/lib/__tests__/bridge/logic.test.js.map +1 -1
  14. package/lib/__tests__/bridge/prepareTransaction.test.js +1 -0
  15. package/lib/__tests__/bridge/prepareTransaction.test.js.map +1 -1
  16. package/lib/__tests__/bridge/serialization.d.ts +2 -0
  17. package/lib/__tests__/bridge/serialization.d.ts.map +1 -0
  18. package/lib/__tests__/bridge/serialization.js +91 -0
  19. package/lib/__tests__/bridge/serialization.js.map +1 -0
  20. package/lib/__tests__/bridge/synchronisation.test.js +763 -23
  21. package/lib/__tests__/bridge/synchronisation.test.js.map +1 -1
  22. package/lib/__tests__/logic/staking.test.d.ts +2 -0
  23. package/lib/__tests__/logic/staking.test.d.ts.map +1 -0
  24. package/lib/__tests__/logic/staking.test.js +202 -0
  25. package/lib/__tests__/logic/staking.test.js.map +1 -0
  26. package/lib/__tests__/network/client.test.js +3 -3
  27. package/lib/__tests__/network/validators.test.d.ts +2 -0
  28. package/lib/__tests__/network/validators.test.d.ts.map +1 -0
  29. package/lib/__tests__/network/validators.test.js +98 -0
  30. package/lib/__tests__/network/validators.test.js.map +1 -0
  31. package/lib/__tests__/utils/IconGenerator.test.d.ts +2 -0
  32. package/lib/__tests__/utils/IconGenerator.test.d.ts.map +1 -0
  33. package/lib/__tests__/utils/IconGenerator.test.js +14 -0
  34. package/lib/__tests__/utils/IconGenerator.test.js.map +1 -0
  35. package/lib/__tests__/utils/index.test.d.ts +2 -0
  36. package/lib/__tests__/utils/index.test.d.ts.map +1 -0
  37. package/lib/__tests__/utils/index.test.js +11 -0
  38. package/lib/__tests__/utils/index.test.js.map +1 -0
  39. package/lib/bridge/bridge.fixture.d.ts.map +1 -1
  40. package/lib/bridge/bridge.fixture.js +12 -0
  41. package/lib/bridge/bridge.fixture.js.map +1 -1
  42. package/lib/bridge/deviceTransactionConfig.d.ts +7 -8
  43. package/lib/bridge/deviceTransactionConfig.d.ts.map +1 -1
  44. package/lib/bridge/deviceTransactionConfig.js +83 -16
  45. package/lib/bridge/deviceTransactionConfig.js.map +1 -1
  46. package/lib/bridge/estimateMaxSpendable.d.ts +4 -4
  47. package/lib/bridge/estimateMaxSpendable.d.ts.map +1 -1
  48. package/lib/bridge/estimateMaxSpendable.js +1 -1
  49. package/lib/bridge/estimateMaxSpendable.js.map +1 -1
  50. package/lib/bridge/getFeesForTransaction.d.ts.map +1 -1
  51. package/lib/bridge/getFeesForTransaction.js +8 -4
  52. package/lib/bridge/getFeesForTransaction.js.map +1 -1
  53. package/lib/bridge/getTransactionStatus.d.ts +2 -3
  54. package/lib/bridge/getTransactionStatus.d.ts.map +1 -1
  55. package/lib/bridge/getTransactionStatus.js +139 -25
  56. package/lib/bridge/getTransactionStatus.js.map +1 -1
  57. package/lib/bridge/index.d.ts +3 -3
  58. package/lib/bridge/index.d.ts.map +1 -1
  59. package/lib/bridge/index.js +9 -2
  60. package/lib/bridge/index.js.map +1 -1
  61. package/lib/bridge/logic.d.ts +3 -3
  62. package/lib/bridge/logic.d.ts.map +1 -1
  63. package/lib/bridge/logic.js +23 -9
  64. package/lib/bridge/logic.js.map +1 -1
  65. package/lib/bridge/prepareTransaction.d.ts +2 -3
  66. package/lib/bridge/prepareTransaction.d.ts.map +1 -1
  67. package/lib/bridge/prepareTransaction.js +46 -10
  68. package/lib/bridge/prepareTransaction.js.map +1 -1
  69. package/lib/bridge/serialization.d.ts +7 -0
  70. package/lib/bridge/serialization.d.ts.map +1 -0
  71. package/lib/bridge/serialization.js +51 -0
  72. package/lib/bridge/serialization.js.map +1 -0
  73. package/lib/bridge/signOperation.d.ts.map +1 -1
  74. package/lib/bridge/signOperation.js +17 -5
  75. package/lib/bridge/signOperation.js.map +1 -1
  76. package/lib/bridge/synchronisation.d.ts +6 -4
  77. package/lib/bridge/synchronisation.d.ts.map +1 -1
  78. package/lib/bridge/synchronisation.js +51 -4
  79. package/lib/bridge/synchronisation.js.map +1 -1
  80. package/lib/constants.d.ts +25 -1
  81. package/lib/constants.d.ts.map +1 -1
  82. package/lib/constants.js +54 -8
  83. package/lib/constants.js.map +1 -1
  84. package/lib/index.d.ts +0 -1
  85. package/lib/index.d.ts.map +1 -1
  86. package/lib/index.js +0 -15
  87. package/lib/index.js.map +1 -1
  88. package/lib/logic/buildTransaction.d.ts.map +1 -1
  89. package/lib/logic/buildTransaction.js +42 -19
  90. package/lib/logic/buildTransaction.js.map +1 -1
  91. package/lib/logic/getCoinAndAmounts.d.ts +2 -0
  92. package/lib/logic/getCoinAndAmounts.d.ts.map +1 -1
  93. package/lib/logic/getCoinAndAmounts.js +65 -38
  94. package/lib/logic/getCoinAndAmounts.js.map +1 -1
  95. package/lib/logic/staking.d.ts +12 -0
  96. package/lib/logic/staking.d.ts.map +1 -0
  97. package/lib/logic/staking.js +81 -0
  98. package/lib/logic/staking.js.map +1 -0
  99. package/lib/logic/transactionsToOperations.js +3 -3
  100. package/lib/logic/transactionsToOperations.js.map +1 -1
  101. package/lib/network/client.d.ts +4 -1
  102. package/lib/network/client.d.ts.map +1 -1
  103. package/lib/network/client.js +32 -1
  104. package/lib/network/client.js.map +1 -1
  105. package/lib/network/graphql/queries.d.ts +2 -0
  106. package/lib/network/graphql/queries.d.ts.map +1 -1
  107. package/lib/network/graphql/queries.js +42 -2
  108. package/lib/network/graphql/queries.js.map +1 -1
  109. package/lib/network/graphql/types.d.ts +57 -6
  110. package/lib/network/graphql/types.d.ts.map +1 -1
  111. package/lib/network/index.d.ts.map +1 -1
  112. package/lib/network/index.js.map +1 -1
  113. package/lib/network/validators.d.ts +3 -0
  114. package/lib/network/validators.d.ts.map +1 -0
  115. package/lib/network/validators.js +42 -0
  116. package/lib/network/validators.js.map +1 -0
  117. package/lib/preload-data.d.ts +7 -0
  118. package/lib/preload-data.d.ts.map +1 -0
  119. package/lib/preload-data.js +42 -0
  120. package/lib/preload-data.js.map +1 -0
  121. package/lib/preload.d.ts +6 -0
  122. package/lib/preload.d.ts.map +1 -0
  123. package/lib/preload.js +21 -0
  124. package/lib/preload.js.map +1 -0
  125. package/lib/test/bridgeDatasetTest.d.ts.map +1 -1
  126. package/lib/test/bridgeDatasetTest.js +1 -0
  127. package/lib/test/bridgeDatasetTest.js.map +1 -1
  128. package/lib/types/index.d.ts +92 -8
  129. package/lib/types/index.d.ts.map +1 -1
  130. package/lib/types/index.js.map +1 -1
  131. package/lib/utils/IconGenerator.d.ts +12 -0
  132. package/lib/utils/IconGenerator.d.ts.map +1 -0
  133. package/lib/utils/IconGenerator.js +138 -0
  134. package/lib/utils/IconGenerator.js.map +1 -0
  135. package/lib/utils/index.d.ts +3 -0
  136. package/lib/utils/index.d.ts.map +1 -0
  137. package/lib/utils/index.js +31 -0
  138. package/lib/utils/index.js.map +1 -0
  139. package/lib-es/__tests__/bridge/deviceTransactionConfig.test.js +113 -8
  140. package/lib-es/__tests__/bridge/deviceTransactionConfig.test.js.map +1 -1
  141. package/lib-es/__tests__/bridge/getFeesForTransaction.test.js +10 -10
  142. package/lib-es/__tests__/bridge/getFeesForTransaction.test.js.map +1 -1
  143. package/lib-es/__tests__/bridge/getTransactionStatus.test.js +194 -3
  144. package/lib-es/__tests__/bridge/getTransactionStatus.test.js.map +1 -1
  145. package/lib-es/__tests__/bridge/index.test.js +4 -1
  146. package/lib-es/__tests__/bridge/index.test.js.map +1 -1
  147. package/lib-es/__tests__/bridge/logic.test.js +10 -10
  148. package/lib-es/__tests__/bridge/logic.test.js.map +1 -1
  149. package/lib-es/__tests__/bridge/prepareTransaction.test.js +1 -0
  150. package/lib-es/__tests__/bridge/prepareTransaction.test.js.map +1 -1
  151. package/lib-es/__tests__/bridge/serialization.d.ts +2 -0
  152. package/lib-es/__tests__/bridge/serialization.d.ts.map +1 -0
  153. package/lib-es/__tests__/bridge/serialization.js +86 -0
  154. package/lib-es/__tests__/bridge/serialization.js.map +1 -0
  155. package/lib-es/__tests__/bridge/synchronisation.test.js +763 -23
  156. package/lib-es/__tests__/bridge/synchronisation.test.js.map +1 -1
  157. package/lib-es/__tests__/logic/staking.test.d.ts +2 -0
  158. package/lib-es/__tests__/logic/staking.test.d.ts.map +1 -0
  159. package/lib-es/__tests__/logic/staking.test.js +197 -0
  160. package/lib-es/__tests__/logic/staking.test.js.map +1 -0
  161. package/lib-es/__tests__/network/client.test.js +3 -3
  162. package/lib-es/__tests__/network/validators.test.d.ts +2 -0
  163. package/lib-es/__tests__/network/validators.test.d.ts.map +1 -0
  164. package/lib-es/__tests__/network/validators.test.js +93 -0
  165. package/lib-es/__tests__/network/validators.test.js.map +1 -0
  166. package/lib-es/__tests__/utils/IconGenerator.test.d.ts +2 -0
  167. package/lib-es/__tests__/utils/IconGenerator.test.d.ts.map +1 -0
  168. package/lib-es/__tests__/utils/IconGenerator.test.js +12 -0
  169. package/lib-es/__tests__/utils/IconGenerator.test.js.map +1 -0
  170. package/lib-es/__tests__/utils/index.test.d.ts +2 -0
  171. package/lib-es/__tests__/utils/index.test.d.ts.map +1 -0
  172. package/lib-es/__tests__/utils/index.test.js +9 -0
  173. package/lib-es/__tests__/utils/index.test.js.map +1 -0
  174. package/lib-es/bridge/bridge.fixture.d.ts.map +1 -1
  175. package/lib-es/bridge/bridge.fixture.js +12 -0
  176. package/lib-es/bridge/bridge.fixture.js.map +1 -1
  177. package/lib-es/bridge/deviceTransactionConfig.d.ts +7 -8
  178. package/lib-es/bridge/deviceTransactionConfig.d.ts.map +1 -1
  179. package/lib-es/bridge/deviceTransactionConfig.js +83 -14
  180. package/lib-es/bridge/deviceTransactionConfig.js.map +1 -1
  181. package/lib-es/bridge/estimateMaxSpendable.d.ts +4 -4
  182. package/lib-es/bridge/estimateMaxSpendable.d.ts.map +1 -1
  183. package/lib-es/bridge/estimateMaxSpendable.js +1 -1
  184. package/lib-es/bridge/estimateMaxSpendable.js.map +1 -1
  185. package/lib-es/bridge/getFeesForTransaction.d.ts.map +1 -1
  186. package/lib-es/bridge/getFeesForTransaction.js +9 -5
  187. package/lib-es/bridge/getFeesForTransaction.js.map +1 -1
  188. package/lib-es/bridge/getTransactionStatus.d.ts +2 -3
  189. package/lib-es/bridge/getTransactionStatus.d.ts.map +1 -1
  190. package/lib-es/bridge/getTransactionStatus.js +140 -26
  191. package/lib-es/bridge/getTransactionStatus.js.map +1 -1
  192. package/lib-es/bridge/index.d.ts +3 -3
  193. package/lib-es/bridge/index.d.ts.map +1 -1
  194. package/lib-es/bridge/index.js +9 -2
  195. package/lib-es/bridge/index.js.map +1 -1
  196. package/lib-es/bridge/logic.d.ts +3 -3
  197. package/lib-es/bridge/logic.d.ts.map +1 -1
  198. package/lib-es/bridge/logic.js +23 -9
  199. package/lib-es/bridge/logic.js.map +1 -1
  200. package/lib-es/bridge/prepareTransaction.d.ts +2 -3
  201. package/lib-es/bridge/prepareTransaction.d.ts.map +1 -1
  202. package/lib-es/bridge/prepareTransaction.js +46 -10
  203. package/lib-es/bridge/prepareTransaction.js.map +1 -1
  204. package/lib-es/bridge/serialization.d.ts +7 -0
  205. package/lib-es/bridge/serialization.d.ts.map +1 -0
  206. package/lib-es/bridge/serialization.js +41 -0
  207. package/lib-es/bridge/serialization.js.map +1 -0
  208. package/lib-es/bridge/signOperation.d.ts.map +1 -1
  209. package/lib-es/bridge/signOperation.js +17 -5
  210. package/lib-es/bridge/signOperation.js.map +1 -1
  211. package/lib-es/bridge/synchronisation.d.ts +6 -4
  212. package/lib-es/bridge/synchronisation.d.ts.map +1 -1
  213. package/lib-es/bridge/synchronisation.js +49 -3
  214. package/lib-es/bridge/synchronisation.js.map +1 -1
  215. package/lib-es/constants.d.ts +25 -1
  216. package/lib-es/constants.d.ts.map +1 -1
  217. package/lib-es/constants.js +53 -7
  218. package/lib-es/constants.js.map +1 -1
  219. package/lib-es/index.d.ts +0 -1
  220. package/lib-es/index.d.ts.map +1 -1
  221. package/lib-es/index.js +0 -1
  222. package/lib-es/index.js.map +1 -1
  223. package/lib-es/logic/buildTransaction.d.ts.map +1 -1
  224. package/lib-es/logic/buildTransaction.js +42 -19
  225. package/lib-es/logic/buildTransaction.js.map +1 -1
  226. package/lib-es/logic/getCoinAndAmounts.d.ts +2 -0
  227. package/lib-es/logic/getCoinAndAmounts.d.ts.map +1 -1
  228. package/lib-es/logic/getCoinAndAmounts.js +66 -39
  229. package/lib-es/logic/getCoinAndAmounts.js.map +1 -1
  230. package/lib-es/logic/staking.d.ts +12 -0
  231. package/lib-es/logic/staking.d.ts.map +1 -0
  232. package/lib-es/logic/staking.js +67 -0
  233. package/lib-es/logic/staking.js.map +1 -0
  234. package/lib-es/logic/transactionsToOperations.js +4 -4
  235. package/lib-es/logic/transactionsToOperations.js.map +1 -1
  236. package/lib-es/network/client.d.ts +4 -1
  237. package/lib-es/network/client.d.ts.map +1 -1
  238. package/lib-es/network/client.js +32 -1
  239. package/lib-es/network/client.js.map +1 -1
  240. package/lib-es/network/graphql/queries.d.ts +2 -0
  241. package/lib-es/network/graphql/queries.d.ts.map +1 -1
  242. package/lib-es/network/graphql/queries.js +41 -1
  243. package/lib-es/network/graphql/queries.js.map +1 -1
  244. package/lib-es/network/graphql/types.d.ts +57 -6
  245. package/lib-es/network/graphql/types.d.ts.map +1 -1
  246. package/lib-es/network/index.d.ts.map +1 -1
  247. package/lib-es/network/index.js.map +1 -1
  248. package/lib-es/network/validators.d.ts +3 -0
  249. package/lib-es/network/validators.d.ts.map +1 -0
  250. package/lib-es/network/validators.js +35 -0
  251. package/lib-es/network/validators.js.map +1 -0
  252. package/lib-es/preload-data.d.ts +7 -0
  253. package/lib-es/preload-data.d.ts.map +1 -0
  254. package/lib-es/preload-data.js +36 -0
  255. package/lib-es/preload-data.js.map +1 -0
  256. package/lib-es/preload.d.ts +6 -0
  257. package/lib-es/preload.d.ts.map +1 -0
  258. package/lib-es/preload.js +16 -0
  259. package/lib-es/preload.js.map +1 -0
  260. package/lib-es/test/bridgeDatasetTest.d.ts.map +1 -1
  261. package/lib-es/test/bridgeDatasetTest.js +1 -0
  262. package/lib-es/test/bridgeDatasetTest.js.map +1 -1
  263. package/lib-es/types/index.d.ts +92 -8
  264. package/lib-es/types/index.d.ts.map +1 -1
  265. package/lib-es/types/index.js.map +1 -1
  266. package/lib-es/utils/IconGenerator.d.ts +12 -0
  267. package/lib-es/utils/IconGenerator.d.ts.map +1 -0
  268. package/lib-es/utils/IconGenerator.js +134 -0
  269. package/lib-es/utils/IconGenerator.js.map +1 -0
  270. package/lib-es/utils/index.d.ts +3 -0
  271. package/lib-es/utils/index.d.ts.map +1 -0
  272. package/lib-es/utils/index.js +13 -0
  273. package/lib-es/utils/index.js.map +1 -0
  274. package/package.json +14 -9
  275. package/src/__tests__/bridge/deviceTransactionConfig.test.ts +120 -8
  276. package/src/__tests__/bridge/getFeesForTransaction.test.ts +10 -10
  277. package/src/__tests__/bridge/getTransactionStatus.test.ts +247 -3
  278. package/src/__tests__/bridge/index.test.ts +5 -1
  279. package/src/__tests__/bridge/logic.test.ts +10 -10
  280. package/src/__tests__/bridge/prepareTransaction.test.ts +4 -4
  281. package/src/__tests__/bridge/serialization.ts +103 -0
  282. package/src/__tests__/bridge/synchronisation.test.ts +798 -32
  283. package/src/__tests__/logic/staking.test.ts +221 -0
  284. package/src/__tests__/network/client.test.ts +3 -3
  285. package/src/__tests__/network/validators.test.ts +105 -0
  286. package/src/__tests__/utils/IconGenerator.test.ts +13 -0
  287. package/src/__tests__/utils/index.test.ts +11 -0
  288. package/src/bridge/bridge.fixture.ts +12 -0
  289. package/src/bridge/deviceTransactionConfig.ts +90 -21
  290. package/src/bridge/estimateMaxSpendable.ts +5 -5
  291. package/src/bridge/getFeesForTransaction.ts +17 -5
  292. package/src/bridge/getTransactionStatus.ts +208 -32
  293. package/src/bridge/index.ts +14 -5
  294. package/src/bridge/logic.ts +28 -12
  295. package/src/bridge/prepareTransaction.ts +72 -24
  296. package/src/bridge/serialization.ts +52 -0
  297. package/src/bridge/signOperation.ts +20 -7
  298. package/src/bridge/synchronisation.ts +69 -12
  299. package/src/constants.ts +64 -2
  300. package/src/index.ts +0 -2
  301. package/src/logic/buildTransaction.ts +49 -24
  302. package/src/logic/getCoinAndAmounts.ts +91 -41
  303. package/src/logic/staking.ts +105 -0
  304. package/src/logic/transactionsToOperations.ts +5 -5
  305. package/src/network/client.ts +44 -4
  306. package/src/network/graphql/queries.ts +46 -1
  307. package/src/network/graphql/types.ts +63 -6
  308. package/src/network/index.ts +1 -0
  309. package/src/network/validators.ts +48 -0
  310. package/src/preload-data.ts +43 -0
  311. package/src/preload.ts +23 -0
  312. package/src/test/bridgeDatasetTest.ts +1 -0
  313. package/src/types/index.ts +106 -8
  314. package/src/utils/IconGenerator.ts +166 -0
  315. package/src/utils/index.ts +16 -0
package/lib/constants.js CHANGED
@@ -3,9 +3,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.DEFAULT_GAS_PRICE = exports.DEFAULT_GAS = exports.TOKEN_TYPE = exports.DIRECTION = exports.APTOS_OBJECT_CORE = exports.APTOS_FUNGIBLE_STORE = exports.APTOS_COIN_CHANGE = exports.APTOS_ASSET_ID = exports.DELEGATION_POOL_TYPES = exports.BATCH_TRANSFER_TYPES = exports.FA_TRANSFER_TYPES = exports.COIN_TRANSFER_TYPES = exports.WRITE_RESOURCE = exports.TX_STATUS = exports.LOAD_LIMIT = exports.ESTIMATE_GAS_MUL = void 0;
6
+ exports.DEFAULT_GAS_PRICE = exports.DEFAULT_GAS = exports.TOKEN_TYPE = exports.APTOS_EXPLORER_ACCOUNT_URL = exports.MIN_AMOUNT_TO_UNSTAKE_IN_OCTAS = exports.MIN_AMOUNT_TO_UNSTAKE = exports.MIN_COINS_ON_SHARES_POOL_IN_OCTAS = exports.MIN_COINS_ON_SHARES_POOL = exports.APTOS_DELEGATION_RESERVE_IN_OCTAS = exports.APTOS_DELEGATION_RESERVE = exports.APTOS_MINIMUM_RESTAKE_IN_OCTAS = exports.APTOS_MINIMUM_RESTAKE = exports.APTOS_PRECISION = exports.STAKING_TX_MODES = exports.SUPPORTED_TOKEN_TYPES = exports.OP_TYPE = exports.APTOS_OBJECT_CORE = exports.APTOS_FUNGIBLE_STORE = exports.APTOS_COIN_CHANGE = exports.APTOS_ASSET_ID = exports.STAKING_EVENTS = exports.WITHDRAW_STAKE_EVENTS = exports.UNLOCK_STAKE_EVENTS = exports.REACTIVATE_STAKE_EVENTS = exports.ADD_STAKE_EVENTS = exports.DELEGATION_POOL_TYPES = exports.BATCH_TRANSFER_TYPES = exports.FA_TRANSFER_TYPES = exports.COIN_TRANSFER_TYPES = exports.APTOS_HARDENED_DERIVATION_PATH = exports.APTOS_NON_HARDENED_DERIVATION_PATH = exports.APTOS_NON_HARDENED_DERIVATION_PATH_REGEX = exports.WRITE_RESOURCE = exports.TX_STATUS = exports.LOAD_LIMIT = exports.ESTIMATE_GAS_MUL_FOR_STAKING = exports.ESTIMATE_GAS_MUL = void 0;
7
7
  const bignumber_js_1 = __importDefault(require("bignumber.js"));
8
- exports.ESTIMATE_GAS_MUL = new bignumber_js_1.default(1.0); // define buffer for gas estimation change here, if needed
8
+ exports.ESTIMATE_GAS_MUL = new bignumber_js_1.default(1.1); // define buffer for gas estimation change here, if needed
9
+ exports.ESTIMATE_GAS_MUL_FOR_STAKING = new bignumber_js_1.default(3); // gas multiplier for staking operations
9
10
  exports.LOAD_LIMIT = 10;
10
11
  var TX_STATUS;
11
12
  (function (TX_STATUS) {
@@ -14,6 +15,9 @@ var TX_STATUS;
14
15
  TX_STATUS["SUCCESS"] = "success";
15
16
  })(TX_STATUS || (exports.TX_STATUS = TX_STATUS = {}));
16
17
  exports.WRITE_RESOURCE = "write_resource";
18
+ exports.APTOS_NON_HARDENED_DERIVATION_PATH_REGEX = /^44'\/637'\/[0-9]+'\/[0-9]+\/[0-9]+$/;
19
+ exports.APTOS_NON_HARDENED_DERIVATION_PATH = "44'/637'/0'/0/0";
20
+ exports.APTOS_HARDENED_DERIVATION_PATH = "44'/637'/0'/0'/0'";
17
21
  exports.COIN_TRANSFER_TYPES = [
18
22
  "0x1::aptos_account::transfer",
19
23
  "0x1::aptos_account::transfer_coins",
@@ -26,18 +30,60 @@ exports.BATCH_TRANSFER_TYPES = [
26
30
  ];
27
31
  exports.DELEGATION_POOL_TYPES = [
28
32
  "0x1::delegation_pool::add_stake",
33
+ "0x1::delegation_pool::reactivate_stake",
34
+ "0x1::delegation_pool::unlock",
29
35
  "0x1::delegation_pool::withdraw",
30
36
  ];
37
+ exports.ADD_STAKE_EVENTS = [
38
+ "0x1::stake::AddStake",
39
+ "0x1::stake::AddStakeEvent",
40
+ "0x1::delegation_pool::AddStake",
41
+ "0x1::delegation_pool::AddStakeEvent",
42
+ ];
43
+ exports.REACTIVATE_STAKE_EVENTS = [
44
+ "0x1::stake::ReactivateStake",
45
+ "0x1::stake::ReactivateStakeEvent",
46
+ "0x1::delegation_pool::ReactivateStake",
47
+ "0x1::delegation_pool::ReactivateStakeEvent",
48
+ ];
49
+ exports.UNLOCK_STAKE_EVENTS = [
50
+ "0x1::stake::UnlockStake",
51
+ "0x1::stake::UnlockStakeEvent",
52
+ "0x1::delegation_pool::UnlockStake",
53
+ "0x1::delegation_pool::UnlockStakeEvent",
54
+ ];
55
+ exports.WITHDRAW_STAKE_EVENTS = [
56
+ "0x1::stake::WithdrawStake",
57
+ "0x1::stake::WithdrawStakeEvent",
58
+ "0x1::delegation_pool::WithdrawStake",
59
+ "0x1::delegation_pool::WithdrawStakeEvent",
60
+ ];
61
+ exports.STAKING_EVENTS = exports.ADD_STAKE_EVENTS.concat(exports.REACTIVATE_STAKE_EVENTS, exports.UNLOCK_STAKE_EVENTS, exports.WITHDRAW_STAKE_EVENTS);
31
62
  exports.APTOS_ASSET_ID = "0x1::aptos_coin::AptosCoin";
32
63
  exports.APTOS_COIN_CHANGE = `0x1::coin::CoinStore<${exports.APTOS_ASSET_ID}>`;
33
64
  exports.APTOS_FUNGIBLE_STORE = "0x1::fungible_asset::FungibleStore";
34
65
  exports.APTOS_OBJECT_CORE = "0x1::object::ObjectCore";
35
- var DIRECTION;
36
- (function (DIRECTION) {
37
- DIRECTION["IN"] = "IN";
38
- DIRECTION["OUT"] = "OUT";
39
- DIRECTION["UNKNOWN"] = "UNKNOWN";
40
- })(DIRECTION || (exports.DIRECTION = DIRECTION = {}));
66
+ var OP_TYPE;
67
+ (function (OP_TYPE) {
68
+ OP_TYPE["IN"] = "IN";
69
+ OP_TYPE["OUT"] = "OUT";
70
+ OP_TYPE["STAKE"] = "STAKE";
71
+ OP_TYPE["UNSTAKE"] = "UNSTAKE";
72
+ OP_TYPE["WITHDRAW"] = "WITHDRAW";
73
+ OP_TYPE["UNKNOWN"] = "UNKNOWN";
74
+ })(OP_TYPE || (exports.OP_TYPE = OP_TYPE = {}));
75
+ exports.SUPPORTED_TOKEN_TYPES = ["coin", "fungible_asset"];
76
+ exports.STAKING_TX_MODES = ["stake", "unstake", "restake", "withdraw"];
77
+ exports.APTOS_PRECISION = 8;
78
+ exports.APTOS_MINIMUM_RESTAKE = (0, bignumber_js_1.default)(1);
79
+ exports.APTOS_MINIMUM_RESTAKE_IN_OCTAS = exports.APTOS_MINIMUM_RESTAKE.shiftedBy(exports.APTOS_PRECISION);
80
+ exports.APTOS_DELEGATION_RESERVE = (0, bignumber_js_1.default)(0.05);
81
+ exports.APTOS_DELEGATION_RESERVE_IN_OCTAS = exports.APTOS_DELEGATION_RESERVE.shiftedBy(exports.APTOS_PRECISION);
82
+ exports.MIN_COINS_ON_SHARES_POOL = (0, bignumber_js_1.default)(11);
83
+ exports.MIN_COINS_ON_SHARES_POOL_IN_OCTAS = exports.MIN_COINS_ON_SHARES_POOL.shiftedBy(exports.APTOS_PRECISION);
84
+ exports.MIN_AMOUNT_TO_UNSTAKE = (0, bignumber_js_1.default)(10);
85
+ exports.MIN_AMOUNT_TO_UNSTAKE_IN_OCTAS = exports.MIN_AMOUNT_TO_UNSTAKE.shiftedBy(exports.APTOS_PRECISION);
86
+ exports.APTOS_EXPLORER_ACCOUNT_URL = "https://explorer.aptoslabs.com/account";
41
87
  var TOKEN_TYPE;
42
88
  (function (TOKEN_TYPE) {
43
89
  TOKEN_TYPE["COIN"] = "coin";
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;;;;AACA,gEAAqC;AAExB,QAAA,gBAAgB,GAAG,IAAI,sBAAS,CAAC,GAAG,CAAC,CAAC,CAAC,0DAA0D;AAEjG,QAAA,UAAU,GAAG,EAAE,CAAC;AAE7B,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,gCAAmB,CAAA;IACnB,0BAAa,CAAA;IACb,gCAAmB,CAAA;AACrB,CAAC,EAJW,SAAS,yBAAT,SAAS,QAIpB;AAEY,QAAA,cAAc,GAAG,gBAAgB,CAAC;AAElC,QAAA,mBAAmB,GAAmB;IACjD,8BAA8B;IAC9B,oCAAoC;IACpC,qBAAqB;CACtB,CAAC;AAEW,QAAA,iBAAiB,GAAmB,CAAC,uCAAuC,CAAC,CAAC;AAE9E,QAAA,oBAAoB,GAAmB;IAClD,oCAAoC;IACpC,0CAA0C;CAC3C,CAAC;AAEW,QAAA,qBAAqB,GAAmB;IACnD,iCAAiC;IACjC,gCAAgC;CACjC,CAAC;AAEW,QAAA,cAAc,GAAiB,4BAA4B,CAAC;AAE5D,QAAA,iBAAiB,GAAiB,wBAAwB,sBAAc,GAAG,CAAC;AAE5E,QAAA,oBAAoB,GAAiB,oCAAoC,CAAC;AAE1E,QAAA,iBAAiB,GAAiB,yBAAyB,CAAC;AAEzE,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,sBAAS,CAAA;IACT,wBAAW,CAAA;IACX,gCAAmB,CAAA;AACrB,CAAC,EAJW,SAAS,yBAAT,SAAS,QAIpB;AAED,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,2BAAa,CAAA;IACb,+CAAiC,CAAA;AACnC,CAAC,EAHW,UAAU,0BAAV,UAAU,QAGrB;AAEY,QAAA,WAAW,GAAG,IAAI,sBAAS,CAAC,GAAG,CAAC,CAAC;AACjC,QAAA,iBAAiB,GAAG,IAAI,sBAAS,CAAC,GAAG,CAAC,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;;;;AACA,gEAAqC;AAExB,QAAA,gBAAgB,GAAG,IAAI,sBAAS,CAAC,GAAG,CAAC,CAAC,CAAC,0DAA0D;AACjG,QAAA,4BAA4B,GAAG,IAAI,sBAAS,CAAC,CAAC,CAAC,CAAC,CAAC,wCAAwC;AAEzF,QAAA,UAAU,GAAG,EAAE,CAAC;AAE7B,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,gCAAmB,CAAA;IACnB,0BAAa,CAAA;IACb,gCAAmB,CAAA;AACrB,CAAC,EAJW,SAAS,yBAAT,SAAS,QAIpB;AAEY,QAAA,cAAc,GAAG,gBAAgB,CAAC;AAElC,QAAA,wCAAwC,GAAG,sCAAsC,CAAC;AAClF,QAAA,kCAAkC,GAAG,iBAAiB,CAAC;AACvD,QAAA,8BAA8B,GAAG,mBAAmB,CAAC;AAErD,QAAA,mBAAmB,GAAmB;IACjD,8BAA8B;IAC9B,oCAAoC;IACpC,qBAAqB;CACtB,CAAC;AAEW,QAAA,iBAAiB,GAAmB,CAAC,uCAAuC,CAAC,CAAC;AAE9E,QAAA,oBAAoB,GAAmB;IAClD,oCAAoC;IACpC,0CAA0C;CAC3C,CAAC;AAEW,QAAA,qBAAqB,GAAmB;IACnD,iCAAiC;IACjC,wCAAwC;IACxC,8BAA8B;IAC9B,gCAAgC;CACjC,CAAC;AAEW,QAAA,gBAAgB,GAAG;IAC9B,sBAAsB;IACtB,2BAA2B;IAC3B,gCAAgC;IAChC,qCAAqC;CACtC,CAAC;AAEW,QAAA,uBAAuB,GAAG;IACrC,6BAA6B;IAC7B,kCAAkC;IAClC,uCAAuC;IACvC,4CAA4C;CAC7C,CAAC;AAEW,QAAA,mBAAmB,GAAG;IACjC,yBAAyB;IACzB,8BAA8B;IAC9B,mCAAmC;IACnC,wCAAwC;CACzC,CAAC;AAEW,QAAA,qBAAqB,GAAG;IACnC,2BAA2B;IAC3B,gCAAgC;IAChC,qCAAqC;IACrC,0CAA0C;CAC3C,CAAC;AAEW,QAAA,cAAc,GAAG,wBAAgB,CAAC,MAAM,CACnD,+BAAuB,EACvB,2BAAmB,EACnB,6BAAqB,CACtB,CAAC;AAEW,QAAA,cAAc,GAAiB,4BAA4B,CAAC;AAE5D,QAAA,iBAAiB,GAAiB,wBAAwB,sBAAc,GAAG,CAAC;AAE5E,QAAA,oBAAoB,GAAiB,oCAAoC,CAAC;AAE1E,QAAA,iBAAiB,GAAiB,yBAAyB,CAAC;AAEzE,IAAY,OAOX;AAPD,WAAY,OAAO;IACjB,oBAAS,CAAA;IACT,sBAAW,CAAA;IACX,0BAAe,CAAA;IACf,8BAAmB,CAAA;IACnB,gCAAqB,CAAA;IACrB,8BAAmB,CAAA;AACrB,CAAC,EAPW,OAAO,uBAAP,OAAO,QAOlB;AAEY,QAAA,qBAAqB,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;AAEnD,QAAA,gBAAgB,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;AAE/D,QAAA,eAAe,GAAG,CAAC,CAAC;AACpB,QAAA,qBAAqB,GAAG,IAAA,sBAAS,EAAC,CAAC,CAAC,CAAC;AACrC,QAAA,8BAA8B,GAAG,6BAAqB,CAAC,SAAS,CAAC,uBAAe,CAAC,CAAC;AAClF,QAAA,wBAAwB,GAAG,IAAA,sBAAS,EAAC,IAAI,CAAC,CAAC;AAC3C,QAAA,iCAAiC,GAC5C,gCAAwB,CAAC,SAAS,CAAC,uBAAe,CAAC,CAAC;AACzC,QAAA,wBAAwB,GAAG,IAAA,sBAAS,EAAC,EAAE,CAAC,CAAC;AACzC,QAAA,iCAAiC,GAC5C,gCAAwB,CAAC,SAAS,CAAC,uBAAe,CAAC,CAAC;AACzC,QAAA,qBAAqB,GAAG,IAAA,sBAAS,EAAC,EAAE,CAAC,CAAC;AACtC,QAAA,8BAA8B,GAAG,6BAAqB,CAAC,SAAS,CAAC,uBAAe,CAAC,CAAC;AAElF,QAAA,0BAA0B,GAAG,wCAAwC,CAAC;AAEnF,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,2BAAa,CAAA;IACb,+CAAiC,CAAA;AACnC,CAAC,EAHW,UAAU,0BAAV,UAAU,QAGrB;AAEY,QAAA,WAAW,GAAG,IAAI,sBAAS,CAAC,GAAG,CAAC,CAAC;AACjC,QAAA,iBAAiB,GAAG,IAAI,sBAAS,CAAC,GAAG,CAAC,CAAC"}
package/lib/index.d.ts CHANGED
@@ -1,3 +1,2 @@
1
- export * from "./types";
2
1
  export { createBridges } from "./bridge/index";
3
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AAExB,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC"}
package/lib/index.js CHANGED
@@ -1,21 +1,6 @@
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
- };
16
2
  Object.defineProperty(exports, "__esModule", { value: true });
17
3
  exports.createBridges = void 0;
18
- __exportStar(require("./types"), exports);
19
4
  var index_1 = require("./bridge/index");
20
5
  Object.defineProperty(exports, "createBridges", { enumerable: true, get: function () { return index_1.createBridges; } });
21
6
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0CAAwB;AAExB,wCAA+C;AAAtC,sGAAA,aAAa,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,wCAA+C;AAAtC,sGAAA,aAAa,OAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"buildTransaction.d.ts","sourceRoot":"","sources":["../../src/logic/buildTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAA0B,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACjF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,EAAkB,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAG5C,QAAA,MAAM,gBAAgB,YACX,OAAO,eACH,WAAW,eACX,QAAQ,oBACH,MAAM,cACZ,UAAU,KACrB,QAAQ,cAAc,CAkBxB,CAAC;AAgCF,eAAO,MAAM,WAAW,UAAW,MAAM,KAAG,OAE3C,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"buildTransaction.d.ts","sourceRoot":"","sources":["../../src/logic/buildTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAA0B,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACjF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,EAAkB,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE5C,QAAA,MAAM,gBAAgB,YACX,OAAO,eACH,WAAW,eACX,QAAQ,oBACH,MAAM,cACZ,UAAU,KACrB,QAAQ,cAAc,CAiBxB,CAAC;AA2DF,eAAO,MAAM,WAAW,UAAW,MAAM,KAAG,OAE3C,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
@@ -9,34 +9,57 @@ const buildTransaction = async (account, transaction, aptosClient, contractAddre
9
9
  const payloadContracAddress = subAccount ? subAccount.token.contractAddress : contractAddress;
10
10
  const payloadTokenType = subAccount?.token?.tokenType ?? tokenType;
11
11
  const txPayload = getPayload({
12
- amount: transaction.amount,
13
- recipient: transaction.recipient,
14
- contractAddress: payloadContracAddress,
12
+ transaction,
15
13
  tokenType: payloadTokenType,
14
+ contractAddress: payloadContracAddress,
16
15
  });
17
16
  const txOptions = (0, normalizeTransactionOptions_1.normalizeTransactionOptions)(transaction.options);
18
17
  const tx = await aptosClient.generateTransaction(account.freshAddress, txPayload, txOptions);
19
18
  return tx;
20
19
  };
21
- const getPayload = (args) => {
22
- if (args.tokenType !== undefined && !(0, exports.isTokenType)(args.tokenType)) {
23
- throw new Error(`Token type ${args.tokenType} not supported`);
24
- }
25
- if (args.tokenType === constants_1.TOKEN_TYPE.FUNGIBLE_ASSET) {
26
- return {
27
- function: "0x1::primary_fungible_store::transfer",
28
- typeArguments: ["0x1::fungible_asset::Metadata"],
29
- functionArguments: [args.contractAddress, args.recipient, args.amount.toString()],
30
- };
31
- }
32
- let address = args.contractAddress ?? "";
33
- if (address === "") {
34
- address = constants_1.APTOS_ASSET_ID;
20
+ const getPayload = ({ transaction, tokenType, contractAddress, }) => {
21
+ const { amount, recipient, mode } = transaction;
22
+ switch (mode) {
23
+ case "stake":
24
+ return {
25
+ function: "0x1::delegation_pool::add_stake",
26
+ typeArguments: [],
27
+ functionArguments: [recipient, amount.toString()],
28
+ };
29
+ case "unstake":
30
+ return {
31
+ function: "0x1::delegation_pool::unlock",
32
+ typeArguments: [],
33
+ functionArguments: [recipient, amount.toString()],
34
+ };
35
+ case "restake":
36
+ return {
37
+ function: "0x1::delegation_pool::reactivate_stake",
38
+ typeArguments: [],
39
+ functionArguments: [recipient, amount.toString()],
40
+ };
41
+ case "withdraw":
42
+ return {
43
+ function: "0x1::delegation_pool::withdraw",
44
+ typeArguments: [],
45
+ functionArguments: [recipient, amount.toString()],
46
+ };
47
+ case "send":
48
+ if (tokenType !== undefined && !(0, exports.isTokenType)(tokenType)) {
49
+ throw new Error(`Token type ${tokenType} not supported`);
50
+ }
51
+ if (tokenType === constants_1.TOKEN_TYPE.FUNGIBLE_ASSET) {
52
+ return {
53
+ function: "0x1::primary_fungible_store::transfer",
54
+ typeArguments: ["0x1::fungible_asset::Metadata"],
55
+ functionArguments: [contractAddress, recipient, amount.toString()],
56
+ };
57
+ }
35
58
  }
36
59
  return {
37
60
  function: "0x1::aptos_account::transfer_coins",
38
- typeArguments: [address],
39
- functionArguments: [args.recipient, args.amount.toString()],
61
+ typeArguments: [contractAddress ?? constants_1.APTOS_ASSET_ID],
62
+ functionArguments: [recipient, amount.toString()],
40
63
  };
41
64
  };
42
65
  const isTokenType = (value) => {
@@ -1 +1 @@
1
- {"version":3,"file":"buildTransaction.js","sourceRoot":"","sources":["../../src/logic/buildTransaction.ts"],"names":[],"mappings":";;;AAEA,kEAA4E;AAC5E,4CAA0D;AAE1D,+EAA4E;AAI5E,MAAM,gBAAgB,GAAG,KAAK,EAC5B,OAAgB,EAChB,WAAwB,EACxB,WAAqB,EACrB,eAAwB,EACxB,SAAsB,EACG,EAAE;IAC3B,MAAM,UAAU,GAAG,IAAA,0BAAkB,EAAC,OAAO,EAAE,WAAW,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;IAE/E,MAAM,qBAAqB,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC;IAC9F,MAAM,gBAAgB,GAAI,UAAU,EAAE,KAAK,EAAE,SAAwB,IAAI,SAAS,CAAC;IAEnF,MAAM,SAAS,GAAG,UAAU,CAAC;QAC3B,MAAM,EAAE,WAAW,CAAC,MAAM;QAC1B,SAAS,EAAE,WAAW,CAAC,SAAS;QAChC,eAAe,EAAE,qBAAqB;QACtC,SAAS,EAAE,gBAAgB;KAC5B,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,IAAA,yDAA2B,EAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAEnE,MAAM,EAAE,GAAG,MAAM,WAAW,CAAC,mBAAmB,CAAC,OAAO,CAAC,YAAY,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IAE7F,OAAO,EAAE,CAAC;AACZ,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,IAKnB,EAA0B,EAAE;IAC3B,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,IAAA,mBAAW,EAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QACjE,MAAM,IAAI,KAAK,CAAC,cAAc,IAAI,CAAC,SAAS,gBAAgB,CAAC,CAAC;IAChE,CAAC;IAED,IAAI,IAAI,CAAC,SAAS,KAAK,sBAAU,CAAC,cAAc,EAAE,CAAC;QACjD,OAAO;YACL,QAAQ,EAAE,uCAAuC;YACjD,aAAa,EAAE,CAAC,+BAA+B,CAAC;YAChD,iBAAiB,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;SAClF,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,GAAG,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC;IACzC,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;QACnB,OAAO,GAAG,0BAAc,CAAC;IAC3B,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,oCAAoC;QAC9C,aAAa,EAAE,CAAC,OAAO,CAAC;QACxB,iBAAiB,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;KAC5D,CAAC;AACJ,CAAC,CAAC;AAEK,MAAM,WAAW,GAAG,CAAC,KAAa,EAAW,EAAE;IACpD,OAAO,MAAM,CAAC,MAAM,CAAC,sBAAU,CAAC,CAAC,QAAQ,CAAC,KAAmB,CAAC,CAAC;AACjE,CAAC,CAAC;AAFW,QAAA,WAAW,eAEtB;AAEF,kBAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"buildTransaction.js","sourceRoot":"","sources":["../../src/logic/buildTransaction.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import BigNumber from "bignumber.js";
2
+ import { OP_TYPE } from "../constants";
2
3
  import { AptosTransaction } from "../types";
3
4
  import { WriteSetChangeWriteResource, Event } from "@aptos-labs/ts-sdk";
4
5
  export declare function compareAddress(addressA: string, addressB: string): boolean;
@@ -9,5 +10,6 @@ export declare function getCoinAndAmounts(tx: AptosTransaction, address: string)
9
10
  coin_id: string | null;
10
11
  amount_in: BigNumber;
11
12
  amount_out: BigNumber;
13
+ type: OP_TYPE;
12
14
  };
13
15
  //# sourceMappingURL=getCoinAndAmounts.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getCoinAndAmounts.d.ts","sourceRoot":"","sources":["../../src/logic/getCoinAndAmounts.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AAErC,OAAO,EAIL,gBAAgB,EACjB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAgB,2BAA2B,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAMtF,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,WAKhE;AAED,wBAAgB,YAAY,CAAC,EAAE,EAAE,gBAAgB,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAc9F;AAYD,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,2BAA2B,EACnC,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,MAAM,GACjB,MAAM,GAAG,IAAI,CAoBf;AAED,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,2BAA2B,EACnC,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,MAAM,GAClB,MAAM,GAAG,IAAI,CAcf;AAED,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,gBAAgB,EACpB,OAAO,EAAE,MAAM,GACd;IAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,SAAS,EAAE,SAAS,CAAC;IAAC,UAAU,EAAE,SAAS,CAAA;CAAE,CA4CzE"}
1
+ {"version":3,"file":"getCoinAndAmounts.d.ts","sourceRoot":"","sources":["../../src/logic/getCoinAndAmounts.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAKL,OAAO,EAKR,MAAM,cAAc,CAAC;AACtB,OAAO,EAIL,gBAAgB,EACjB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAgB,2BAA2B,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAMtF,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,WAKhE;AAED,wBAAgB,YAAY,CAAC,EAAE,EAAE,gBAAgB,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAc9F;AAYD,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,2BAA2B,EACnC,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,MAAM,GACjB,MAAM,GAAG,IAAI,CAoBf;AAED,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,2BAA2B,EACnC,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,MAAM,GAClB,MAAM,GAAG,IAAI,CAcf;AAED,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,gBAAgB,EACpB,OAAO,EAAE,MAAM,GACd;IACD,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,SAAS,CAAC;IACrB,UAAU,EAAE,SAAS,CAAC;IACtB,IAAI,EAAE,OAAO,CAAC;CACf,CA+EA"}
@@ -68,45 +68,72 @@ function getCoinAndAmounts(tx, address) {
68
68
  let coin_id = null;
69
69
  let amount_in = (0, bignumber_js_1.default)(0);
70
70
  let amount_out = (0, bignumber_js_1.default)(0);
71
- // collect all events related to the address and calculate the overall amounts
72
- tx.events.forEach(event => {
73
- switch (event.type) {
74
- case "0x1::coin::WithdrawEvent":
75
- if (compareAddress(event.guid.account_address, address)) {
76
- coin_id = (0, getResourceAddress_1.getResourceAddress)(tx, event, "withdraw_events", getEventCoinAddress);
77
- amount_out = amount_out.plus(event.data.amount);
78
- }
79
- break;
80
- case "0x1::coin::DepositEvent":
81
- if (compareAddress(event.guid.account_address, address)) {
82
- coin_id = (0, getResourceAddress_1.getResourceAddress)(tx, event, "deposit_events", getEventCoinAddress);
83
- amount_in = amount_in.plus(event.data.amount);
84
- }
85
- break;
86
- case "0x1::fungible_asset::Withdraw":
87
- if (checkFAOwner(tx, event, address)) {
88
- coin_id = (0, getResourceAddress_1.getResourceAddress)(tx, event, "withdraw_events", getEventFAAddress);
89
- amount_out = amount_out.plus(event.data.amount);
90
- }
91
- break;
92
- case "0x1::fungible_asset::Deposit":
93
- if (checkFAOwner(tx, event, address)) {
94
- coin_id = (0, getResourceAddress_1.getResourceAddress)(tx, event, "deposit_events", getEventFAAddress);
95
- amount_in = amount_in.plus(event.data.amount);
96
- }
97
- break;
98
- case "0x1::transaction_fee::FeeStatement":
99
- if (tx.sender === address) {
100
- coin_id ??= constants_1.APTOS_ASSET_ID;
101
- if (coin_id === constants_1.APTOS_ASSET_ID) {
102
- const fees = (0, bignumber_js_1.default)(tx.gas_unit_price).times((0, bignumber_js_1.default)(tx.gas_used));
103
- amount_out = amount_out.plus(fees);
104
- }
71
+ let type = constants_1.OP_TYPE.UNKNOWN;
72
+ // Check if it is a staking transaction
73
+ const stakingTx = !!tx.events.find(event => constants_1.STAKING_EVENTS.includes(event.type));
74
+ // Collect all events related to the address and calculate the overall amounts
75
+ if (stakingTx) {
76
+ tx.events.forEach(event => {
77
+ if (constants_1.ADD_STAKE_EVENTS.includes(event.type) && tx.sender === address && amount_out.isZero()) {
78
+ coin_id = constants_1.APTOS_ASSET_ID;
79
+ type = constants_1.OP_TYPE.STAKE;
80
+ amount_out = amount_out.plus(event.data.amount_added || event.data.amount);
81
+ }
82
+ else if (constants_1.REACTIVATE_STAKE_EVENTS.includes(event.type) &&
83
+ tx.sender === address &&
84
+ amount_out.isZero()) {
85
+ coin_id = constants_1.APTOS_ASSET_ID;
86
+ type = constants_1.OP_TYPE.STAKE;
87
+ amount_out = amount_out.plus(event.data.amount_reactivated || event.data.amount);
88
+ }
89
+ else if (constants_1.UNLOCK_STAKE_EVENTS.includes(event.type) &&
90
+ tx.sender === address &&
91
+ amount_in.isZero()) {
92
+ coin_id = constants_1.APTOS_ASSET_ID;
93
+ type = constants_1.OP_TYPE.UNSTAKE;
94
+ amount_in = amount_in.plus(event.data.amount_unlocked || event.data.amount);
95
+ }
96
+ else if (constants_1.WITHDRAW_STAKE_EVENTS.includes(event.type) &&
97
+ tx.sender === address &&
98
+ amount_in.isZero()) {
99
+ coin_id = constants_1.APTOS_ASSET_ID;
100
+ type = constants_1.OP_TYPE.WITHDRAW;
101
+ amount_in = amount_in.plus(event.data.amount_withdrawn || event.data.amount);
102
+ }
103
+ });
104
+ }
105
+ else {
106
+ tx.events.forEach(event => {
107
+ if (event.type === "0x1::coin::WithdrawEvent" &&
108
+ compareAddress(event.guid.account_address, address)) {
109
+ coin_id = (0, getResourceAddress_1.getResourceAddress)(tx, event, "withdraw_events", getEventCoinAddress);
110
+ amount_out = amount_out.plus(event.data.amount);
111
+ }
112
+ else if (event.type === "0x1::coin::DepositEvent" &&
113
+ compareAddress(event.guid.account_address, address)) {
114
+ coin_id = (0, getResourceAddress_1.getResourceAddress)(tx, event, "deposit_events", getEventCoinAddress);
115
+ amount_in = amount_in.plus(event.data.amount);
116
+ }
117
+ else if (event.type === "0x1::fungible_asset::Withdraw" &&
118
+ checkFAOwner(tx, event, address)) {
119
+ coin_id = (0, getResourceAddress_1.getResourceAddress)(tx, event, "withdraw_events", getEventFAAddress);
120
+ amount_out = amount_out.plus(event.data.amount);
121
+ }
122
+ else if (event.type === "0x1::fungible_asset::Deposit" &&
123
+ checkFAOwner(tx, event, address)) {
124
+ coin_id = (0, getResourceAddress_1.getResourceAddress)(tx, event, "deposit_events", getEventFAAddress);
125
+ amount_in = amount_in.plus(event.data.amount);
126
+ }
127
+ else if (event.type === "0x1::transaction_fee::FeeStatement" && tx.sender === address) {
128
+ coin_id ??= constants_1.APTOS_ASSET_ID;
129
+ if (coin_id === constants_1.APTOS_ASSET_ID) {
130
+ const fees = (0, bignumber_js_1.default)(tx.gas_unit_price).times((0, bignumber_js_1.default)(tx.gas_used));
131
+ amount_out = amount_out.plus(fees);
105
132
  }
106
- break;
107
- }
108
- });
109
- return { coin_id, amount_in, amount_out };
133
+ }
134
+ });
135
+ }
136
+ return { coin_id, amount_in, amount_out, type };
110
137
  }
111
138
  exports.getCoinAndAmounts = getCoinAndAmounts;
112
139
  //# sourceMappingURL=getCoinAndAmounts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getCoinAndAmounts.js","sourceRoot":"","sources":["../../src/logic/getCoinAndAmounts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getCoinAndAmounts.js","sourceRoot":"","sources":["../../src/logic/getCoinAndAmounts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import BigNumber from "bignumber.js";
2
+ import { Unit } from "@ledgerhq/types-cryptoassets";
3
+ import { AptosAccount, AptosMappedStakingPosition, AptosStakingPosition, AptosValidator } from "../types";
4
+ export declare const mapStakingPositions: (stakingPositions: AptosStakingPosition[], validators: AptosValidator[], unit: Unit) => AptosMappedStakingPosition[];
5
+ export declare const canStake: (account: AptosAccount) => boolean;
6
+ export declare const canUnstake: (stakingPosition: AptosMappedStakingPosition | AptosStakingPosition) => boolean;
7
+ export declare const canWithdraw: (stakingPosition: AptosMappedStakingPosition | AptosStakingPosition) => boolean;
8
+ export declare const canRestake: (stakingPosition: AptosMappedStakingPosition | AptosStakingPosition) => boolean;
9
+ export declare const getStakingPosition: (account: AptosAccount, validatorAddress: string) => AptosStakingPosition | undefined;
10
+ export declare const getDelegationOpMaxAmount: (account: AptosAccount, validatorAddress: string, mode: string) => BigNumber;
11
+ export declare const formatUnlockTime: (epochSecs: string) => string;
12
+ //# sourceMappingURL=staking.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"staking.d.ts","sourceRoot":"","sources":["../../src/logic/staking.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AAEpD,OAAO,EACL,YAAY,EACZ,0BAA0B,EAC1B,oBAAoB,EACpB,cAAc,EACf,MAAM,UAAU,CAAC;AAIlB,eAAO,MAAM,mBAAmB,qBACZ,oBAAoB,EAAE,cAC5B,cAAc,EAAE,QACtB,IAAI,KACT,0BAA0B,EAmB5B,CAAC;AAEF,eAAO,MAAM,QAAQ,YAAa,YAAY,KAAG,OAEhD,CAAC;AAEF,eAAO,MAAM,UAAU,oBACJ,0BAA0B,GAAG,oBAAoB,KACjE,OAEF,CAAC;AAEF,eAAO,MAAM,WAAW,oBACL,0BAA0B,GAAG,oBAAoB,KACjE,OAEF,CAAC;AAEF,eAAO,MAAM,UAAU,oBACJ,0BAA0B,GAAG,oBAAoB,KACjE,OAEF,CAAC;AAEF,eAAO,MAAM,kBAAkB,YAAa,YAAY,oBAAoB,MAAM,qCAG/E,CAAC;AAEJ,eAAO,MAAM,wBAAwB,YAC1B,YAAY,oBACH,MAAM,QAClB,MAAM,KACX,SAqBF,CAAC;AAEF,eAAO,MAAM,gBAAgB,cAAe,MAAM,KAAG,MAapD,CAAC"}
@@ -0,0 +1,81 @@
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.formatUnlockTime = exports.getDelegationOpMaxAmount = exports.getStakingPosition = exports.canRestake = exports.canWithdraw = exports.canUnstake = exports.canStake = exports.mapStakingPositions = void 0;
7
+ const bignumber_js_1 = __importDefault(require("bignumber.js"));
8
+ const formatCurrencyUnit_1 = require("@ledgerhq/coin-framework/currencies/formatCurrencyUnit");
9
+ const constants_1 = require("../constants");
10
+ const logic_1 = require("../bridge/logic");
11
+ const mapStakingPositions = (stakingPositions, validators, unit) => {
12
+ return stakingPositions.map(sp => {
13
+ const rank = validators.findIndex(v => v.address === sp.validatorId);
14
+ const validator = validators[rank] ?? sp;
15
+ const formatConfig = {
16
+ disableRounding: false,
17
+ alwaysShowSign: false,
18
+ showCode: true,
19
+ };
20
+ return {
21
+ ...sp,
22
+ formattedAmount: (0, formatCurrencyUnit_1.formatCurrencyUnit)(unit, sp.active, formatConfig),
23
+ formattedPending: (0, formatCurrencyUnit_1.formatCurrencyUnit)(unit, sp.pendingInactive, formatConfig),
24
+ formattedAvailable: (0, formatCurrencyUnit_1.formatCurrencyUnit)(unit, sp.inactive, formatConfig),
25
+ rank,
26
+ validator,
27
+ };
28
+ });
29
+ };
30
+ exports.mapStakingPositions = mapStakingPositions;
31
+ const canStake = (account) => {
32
+ return (0, logic_1.getMaxSendBalance)(account) > constants_1.MIN_COINS_ON_SHARES_POOL_IN_OCTAS;
33
+ };
34
+ exports.canStake = canStake;
35
+ const canUnstake = (stakingPosition) => {
36
+ return stakingPosition.active.gt(0);
37
+ };
38
+ exports.canUnstake = canUnstake;
39
+ const canWithdraw = (stakingPosition) => {
40
+ return stakingPosition.inactive.gt(0);
41
+ };
42
+ exports.canWithdraw = canWithdraw;
43
+ const canRestake = (stakingPosition) => {
44
+ return stakingPosition.pendingInactive.gt(0);
45
+ };
46
+ exports.canRestake = canRestake;
47
+ const getStakingPosition = (account, validatorAddress) => (account.aptosResources?.stakingPositions ?? []).find(stakingPosition => stakingPosition.validatorId === validatorAddress);
48
+ exports.getStakingPosition = getStakingPosition;
49
+ const getDelegationOpMaxAmount = (account, validatorAddress, mode) => {
50
+ let maxAmount;
51
+ const stakingPosition = (0, exports.getStakingPosition)(account, validatorAddress);
52
+ switch (mode) {
53
+ case "unstake":
54
+ maxAmount = stakingPosition?.active;
55
+ break;
56
+ case "withdraw":
57
+ maxAmount = stakingPosition?.inactive;
58
+ break;
59
+ case "restake":
60
+ maxAmount = stakingPosition?.pendingInactive;
61
+ }
62
+ if (maxAmount === undefined || maxAmount.lt(0)) {
63
+ return new bignumber_js_1.default(0);
64
+ }
65
+ return maxAmount;
66
+ };
67
+ exports.getDelegationOpMaxAmount = getDelegationOpMaxAmount;
68
+ const formatUnlockTime = (epochSecs) => {
69
+ const unlockTime = parseInt(epochSecs, 10) * 1000; // Convert to ms
70
+ const now = Date.now();
71
+ const diffMs = unlockTime - now;
72
+ if (diffMs <= 0)
73
+ return "Unlocked";
74
+ const totalMinutes = Math.floor(diffMs / (1000 * 60));
75
+ const days = Math.floor(totalMinutes / (60 * 24));
76
+ const hours = Math.floor((totalMinutes % (60 * 24)) / 60);
77
+ const minutes = totalMinutes % 60;
78
+ return `${days}d ${hours}h ${minutes}m`;
79
+ };
80
+ exports.formatUnlockTime = formatUnlockTime;
81
+ //# sourceMappingURL=staking.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"staking.js","sourceRoot":"","sources":["../../src/logic/staking.ts"],"names":[],"mappings":";;;;;;AAAA,gEAAqC;AAErC,+FAA4F;AAO5F,4CAAiE;AACjE,2CAAoD;AAE7C,MAAM,mBAAmB,GAAG,CACjC,gBAAwC,EACxC,UAA4B,EAC5B,IAAU,EACoB,EAAE;IAChC,OAAO,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;QAC/B,MAAM,IAAI,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,EAAE,CAAC,WAAW,CAAC,CAAC;QACrE,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACzC,MAAM,YAAY,GAAG;YACnB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,KAAK;YACrB,QAAQ,EAAE,IAAI;SACf,CAAC;QAEF,OAAO;YACL,GAAG,EAAE;YACL,eAAe,EAAE,IAAA,uCAAkB,EAAC,IAAI,EAAE,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC;YAClE,gBAAgB,EAAE,IAAA,uCAAkB,EAAC,IAAI,EAAE,EAAE,CAAC,eAAe,EAAE,YAAY,CAAC;YAC5E,kBAAkB,EAAE,IAAA,uCAAkB,EAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC;YACvE,IAAI;YACJ,SAAS;SACV,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAvBW,QAAA,mBAAmB,uBAuB9B;AAEK,MAAM,QAAQ,GAAG,CAAC,OAAqB,EAAW,EAAE;IACzD,OAAO,IAAA,yBAAiB,EAAC,OAAO,CAAC,GAAG,6CAAiC,CAAC;AACxE,CAAC,CAAC;AAFW,QAAA,QAAQ,YAEnB;AAEK,MAAM,UAAU,GAAG,CACxB,eAAkE,EACzD,EAAE;IACX,OAAO,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACtC,CAAC,CAAC;AAJW,QAAA,UAAU,cAIrB;AAEK,MAAM,WAAW,GAAG,CACzB,eAAkE,EACzD,EAAE;IACX,OAAO,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACxC,CAAC,CAAC;AAJW,QAAA,WAAW,eAItB;AAEK,MAAM,UAAU,GAAG,CACxB,eAAkE,EACzD,EAAE;IACX,OAAO,eAAe,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC/C,CAAC,CAAC;AAJW,QAAA,UAAU,cAIrB;AAEK,MAAM,kBAAkB,GAAG,CAAC,OAAqB,EAAE,gBAAwB,EAAE,EAAE,CACpF,CAAC,OAAO,CAAC,cAAc,EAAE,gBAAgB,IAAI,EAAE,CAAC,CAAC,IAAI,CACnD,eAAe,CAAC,EAAE,CAAC,eAAe,CAAC,WAAW,KAAK,gBAAgB,CACpE,CAAC;AAHS,QAAA,kBAAkB,sBAG3B;AAEG,MAAM,wBAAwB,GAAG,CACtC,OAAqB,EACrB,gBAAwB,EACxB,IAAY,EACD,EAAE;IACb,IAAI,SAAgC,CAAC;IAErC,MAAM,eAAe,GAAG,IAAA,0BAAkB,EAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;IAEtE,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,SAAS;YACZ,SAAS,GAAG,eAAe,EAAE,MAAM,CAAC;YACpC,MAAM;QACR,KAAK,UAAU;YACb,SAAS,GAAG,eAAe,EAAE,QAAQ,CAAC;YACtC,MAAM;QACR,KAAK,SAAS;YACZ,SAAS,GAAG,eAAe,EAAE,eAAe,CAAC;IACjD,CAAC;IAED,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,OAAO,IAAI,sBAAS,CAAC,CAAC,CAAC,CAAC;IAC1B,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAzBW,QAAA,wBAAwB,4BAyBnC;AAEK,MAAM,gBAAgB,GAAG,CAAC,SAAiB,EAAU,EAAE;IAC5D,MAAM,UAAU,GAAG,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,gBAAgB;IACnE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,MAAM,GAAG,UAAU,GAAG,GAAG,CAAC;IAEhC,IAAI,MAAM,IAAI,CAAC;QAAE,OAAO,UAAU,CAAC;IAEnC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC;IACtD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;IAClD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,YAAY,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAG,YAAY,GAAG,EAAE,CAAC;IAElC,OAAO,GAAG,IAAI,KAAK,KAAK,KAAK,OAAO,GAAG,CAAC;AAC1C,CAAC,CAAC;AAbW,QAAA,gBAAgB,oBAa3B"}
@@ -18,10 +18,10 @@ const convertFunctionPayloadResponseToInputEntryFunctionData = (payload) => ({
18
18
  });
19
19
  exports.convertFunctionPayloadResponseToInputEntryFunctionData = convertFunctionPayloadResponseToInputEntryFunctionData;
20
20
  const detectType = (address, tx, value) => {
21
- let type = (0, getCoinAndAmounts_1.compareAddress)(tx.sender, address) ? constants_1.DIRECTION.OUT : constants_1.DIRECTION.IN;
21
+ let type = (0, getCoinAndAmounts_1.compareAddress)(tx.sender, address) ? constants_1.OP_TYPE.OUT : constants_1.OP_TYPE.IN;
22
22
  if (!value) {
23
23
  // skip transaction that result no Aptos change
24
- type = constants_1.DIRECTION.UNKNOWN;
24
+ type = constants_1.OP_TYPE.UNKNOWN;
25
25
  }
26
26
  return type;
27
27
  };
@@ -68,7 +68,7 @@ function transactionsToOperations(address, txs) {
68
68
  op.value = BigInt(value.isNaN() ? 0 : value.toString());
69
69
  op.senders.push((0, normalizeAddress_1.normalizeAddress)(tx.sender));
70
70
  (0, processRecipients_1.processRecipients)(payload, address, op, function_address);
71
- if (op.type !== constants_1.DIRECTION.UNKNOWN && coin_id !== null) {
71
+ if (op.type !== constants_1.OP_TYPE.UNKNOWN && coin_id !== null) {
72
72
  if (coin_id === constants_1.APTOS_ASSET_ID) {
73
73
  acc.push(op);
74
74
  return acc;
@@ -1 +1 @@
1
- {"version":3,"file":"transactionsToOperations.js","sourceRoot":"","sources":["../../src/logic/transactionsToOperations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transactionsToOperations.js","sourceRoot":"","sources":["../../src/logic/transactionsToOperations.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { ApolloClient } from "@apollo/client";
1
2
  import { type AccountData, Ed25519PublicKey, type GasEstimation, type InputEntryFunctionData, type RawTransaction, type UserTransactionResponse, type AptosSettings } from "@aptos-labs/ts-sdk";
2
3
  import BigNumber from "bignumber.js";
3
4
  import type { AptosBalance, AptosTransaction, TransactionOptions } from "../types";
@@ -6,7 +7,7 @@ import { AptosAsset } from "../types/assets";
6
7
  export declare class AptosAPI {
7
8
  private readonly aptosConfig;
8
9
  private readonly aptosClient;
9
- private readonly apolloClient;
10
+ readonly apolloClient: ApolloClient<object>;
10
11
  constructor(currencyIdOrSettings: AptosSettings | string);
11
12
  getAccount(address: string): Promise<AccountData>;
12
13
  getAccountInfo(address: string, startAt?: string): Promise<{
@@ -24,6 +25,8 @@ export declare class AptosAPI {
24
25
  broadcast(tx: string): Promise<string>;
25
26
  getLastBlock(): Promise<BlockInfo>;
26
27
  estimateFees(transactionIntent: TransactionIntent<AptosAsset>): Promise<FeeEstimation>;
28
+ getNextUnlockTime(stakingPoolAddress: string): Promise<string | undefined>;
29
+ getDelegatorBalanceInPool(poolAddress: string, delegatorAddress: string): Promise<Array<string>>;
27
30
  listOperations(rawAddress: string, pagination: Pagination): Promise<[Operation<AptosAsset>[], string]>;
28
31
  private fetchTransactions;
29
32
  private richItemByVersion;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/network/client.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,WAAW,EAGhB,gBAAgB,EAChB,KAAK,aAAa,EAClB,KAAK,sBAAsB,EAG3B,KAAK,cAAc,EAGnB,KAAK,uBAAuB,EAE5B,KAAK,aAAa,EAInB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,SAAS,MAAM,cAAc,CAAC;AASrC,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAMnF,OAAO,EACL,SAAS,EACT,aAAa,EACb,SAAS,EACT,UAAU,EACV,iBAAiB,EAClB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAa7C,qBAAa,QAAQ;IACnB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAC1C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAQ;IACpC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAuB;gBAExC,oBAAoB,EAAE,aAAa,GAAG,MAAM;IAoBlD,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAIjD,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;;;;;IAahD,gBAAgB,IAAI,OAAO,CAAC,aAAa,CAAC;IAI1C,mBAAmB,CACvB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,sBAAsB,EAC/B,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,cAAc,CAAC;IA6BpB,mBAAmB,CACvB,OAAO,EAAE,gBAAgB,EACzB,EAAE,EAAE,cAAc,EAClB,OAAO;;;;KAIN,GACA,OAAO,CAAC,uBAAuB,EAAE,CAAC;IAQ/B,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IActC,YAAY,IAAI,OAAO,CAAC,SAAS,CAAC;IAUlC,YAAY,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC;IAmDtF,cAAc,CAClB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,UAAU,GACrB,OAAO,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;YAQ/B,iBAAiB;YA8BjB,iBAAiB;YAkBjB,SAAS;YAQT,QAAQ;IAQhB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;CA2BtF"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/network/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAiB,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EACL,KAAK,WAAW,EAGhB,gBAAgB,EAChB,KAAK,aAAa,EAClB,KAAK,sBAAsB,EAI3B,KAAK,cAAc,EAGnB,KAAK,uBAAuB,EAE5B,KAAK,aAAa,EAInB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,SAAS,MAAM,cAAc,CAAC;AASrC,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EAEhB,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAMlB,OAAO,EACL,SAAS,EACT,aAAa,EACb,SAAS,EACT,UAAU,EACV,iBAAiB,EAClB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAa7C,qBAAa,QAAQ;IACnB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAC1C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAQ;IAEpC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;gBAEhC,oBAAoB,EAAE,aAAa,GAAG,MAAM;IAoBlD,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAIjD,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;;;;;IAahD,gBAAgB,IAAI,OAAO,CAAC,aAAa,CAAC;IAI1C,mBAAmB,CACvB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,sBAAsB,EAC/B,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,cAAc,CAAC;IA6BpB,mBAAmB,CACvB,OAAO,EAAE,gBAAgB,EACzB,EAAE,EAAE,cAAc,EAClB,OAAO;;;;KAIN,GACA,OAAO,CAAC,uBAAuB,EAAE,CAAC;IAQ/B,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IActC,YAAY,IAAI,OAAO,CAAC,SAAS,CAAC;IAUlC,YAAY,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC;IAqDtF,iBAAiB,CAAC,kBAAkB,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAa1E,yBAAyB,CAC7B,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAgBnB,cAAc,CAClB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,UAAU,GACrB,OAAO,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;YAQ/B,iBAAiB;YA8BjB,iBAAiB;YAkBjB,SAAS;YAQT,QAAQ;IAQhB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;CA2BtF"}