@ledgerhq/coin-polkadot 0.0.2

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 (181) hide show
  1. package/.eslintrc.js +57 -0
  2. package/.turbo/turbo-build.log +4 -0
  3. package/CHANGELOG.md +12 -0
  4. package/jest.config.js +10 -0
  5. package/lib/account.d.ts +15 -0
  6. package/lib/account.d.ts.map +1 -0
  7. package/lib/account.js +133 -0
  8. package/lib/account.js.map +1 -0
  9. package/lib/address.d.ts +7 -0
  10. package/lib/address.d.ts.map +1 -0
  11. package/lib/address.js +28 -0
  12. package/lib/address.js.map +1 -0
  13. package/lib/api/bisontrails.d.ts +11 -0
  14. package/lib/api/bisontrails.d.ts.map +1 -0
  15. package/lib/api/bisontrails.js +351 -0
  16. package/lib/api/bisontrails.js.map +1 -0
  17. package/lib/api/common.d.ts +12 -0
  18. package/lib/api/common.d.ts.map +1 -0
  19. package/lib/api/common.js +41 -0
  20. package/lib/api/common.js.map +1 -0
  21. package/lib/api/index.d.ts +3 -0
  22. package/lib/api/index.d.ts.map +1 -0
  23. package/lib/api/index.js +53 -0
  24. package/lib/api/index.js.map +1 -0
  25. package/lib/api/sidecar.d.ts +193 -0
  26. package/lib/api/sidecar.d.ts.map +1 -0
  27. package/lib/api/sidecar.js +844 -0
  28. package/lib/api/sidecar.js.map +1 -0
  29. package/lib/api/sidecar.types.d.ts +163 -0
  30. package/lib/api/sidecar.types.d.ts.map +1 -0
  31. package/lib/api/sidecar.types.js +3 -0
  32. package/lib/api/sidecar.types.js.map +1 -0
  33. package/lib/api/subscan.d.ts +6 -0
  34. package/lib/api/subscan.d.ts.map +1 -0
  35. package/lib/api/subscan.js +375 -0
  36. package/lib/api/subscan.js.map +1 -0
  37. package/lib/api/websocket.d.ts +92 -0
  38. package/lib/api/websocket.d.ts.map +1 -0
  39. package/lib/api/websocket.js +759 -0
  40. package/lib/api/websocket.js.map +1 -0
  41. package/lib/bridge/js.d.ts +6 -0
  42. package/lib/bridge/js.d.ts.map +1 -0
  43. package/lib/bridge/js.js +120 -0
  44. package/lib/bridge/js.js.map +1 -0
  45. package/lib/bridge.integration.test.d.ts +4 -0
  46. package/lib/bridge.integration.test.d.ts.map +1 -0
  47. package/lib/bridge.integration.test.js +795 -0
  48. package/lib/bridge.integration.test.js.map +1 -0
  49. package/lib/cache.d.ts +65 -0
  50. package/lib/cache.d.ts.map +1 -0
  51. package/lib/cache.js +182 -0
  52. package/lib/cache.js.map +1 -0
  53. package/lib/cli-transaction.d.ts +44 -0
  54. package/lib/cli-transaction.d.ts.map +1 -0
  55. package/lib/cli-transaction.js +148 -0
  56. package/lib/cli-transaction.js.map +1 -0
  57. package/lib/deviceTransactionConfig.d.ts +16 -0
  58. package/lib/deviceTransactionConfig.d.ts.map +1 -0
  59. package/lib/deviceTransactionConfig.js +171 -0
  60. package/lib/deviceTransactionConfig.js.map +1 -0
  61. package/lib/errors.d.ts +37 -0
  62. package/lib/errors.d.ts.map +1 -0
  63. package/lib/errors.js +17 -0
  64. package/lib/errors.js.map +1 -0
  65. package/lib/hw-getAddress.d.ts +4 -0
  66. package/lib/hw-getAddress.d.ts.map +1 -0
  67. package/lib/hw-getAddress.js +64 -0
  68. package/lib/hw-getAddress.js.map +1 -0
  69. package/lib/js-buildTransaction.d.ts +25 -0
  70. package/lib/js-buildTransaction.d.ts.map +1 -0
  71. package/lib/js-buildTransaction.js +265 -0
  72. package/lib/js-buildTransaction.js.map +1 -0
  73. package/lib/js-createTransaction.d.ts +9 -0
  74. package/lib/js-createTransaction.d.ts.map +1 -0
  75. package/lib/js-createTransaction.js +22 -0
  76. package/lib/js-createTransaction.js.map +1 -0
  77. package/lib/js-estimateMaxSpendable.d.ts +15 -0
  78. package/lib/js-estimateMaxSpendable.d.ts.map +1 -0
  79. package/lib/js-estimateMaxSpendable.js +89 -0
  80. package/lib/js-estimateMaxSpendable.js.map +1 -0
  81. package/lib/js-getFeesForTransaction.d.ts +14 -0
  82. package/lib/js-getFeesForTransaction.d.ts.map +1 -0
  83. package/lib/js-getFeesForTransaction.js +94 -0
  84. package/lib/js-getFeesForTransaction.js.map +1 -0
  85. package/lib/js-getTransactionStatus.d.ts +18 -0
  86. package/lib/js-getTransactionStatus.d.ts.map +1 -0
  87. package/lib/js-getTransactionStatus.js +316 -0
  88. package/lib/js-getTransactionStatus.js.map +1 -0
  89. package/lib/js-prepareTransaction.d.ts +9 -0
  90. package/lib/js-prepareTransaction.d.ts.map +1 -0
  91. package/lib/js-prepareTransaction.js +83 -0
  92. package/lib/js-prepareTransaction.js.map +1 -0
  93. package/lib/js-signOperation.d.ts +27 -0
  94. package/lib/js-signOperation.d.ts.map +1 -0
  95. package/lib/js-signOperation.js +235 -0
  96. package/lib/js-signOperation.js.map +1 -0
  97. package/lib/js-synchronisation.d.ts +3 -0
  98. package/lib/js-synchronisation.d.ts.map +1 -0
  99. package/lib/js-synchronisation.js +104 -0
  100. package/lib/js-synchronisation.js.map +1 -0
  101. package/lib/logic.d.ts +107 -0
  102. package/lib/logic.d.ts.map +1 -0
  103. package/lib/logic.js +242 -0
  104. package/lib/logic.js.map +1 -0
  105. package/lib/platformAdapter.d.ts +11 -0
  106. package/lib/platformAdapter.d.ts.map +1 -0
  107. package/lib/platformAdapter.js +25 -0
  108. package/lib/platformAdapter.js.map +1 -0
  109. package/lib/platformAdapter.test.d.ts +2 -0
  110. package/lib/platformAdapter.test.d.ts.map +1 -0
  111. package/lib/platformAdapter.test.js +51 -0
  112. package/lib/platformAdapter.test.js.map +1 -0
  113. package/lib/polkadot-crypto.d.ts +2 -0
  114. package/lib/polkadot-crypto.d.ts.map +1 -0
  115. package/lib/polkadot-crypto.js +14 -0
  116. package/lib/polkadot-crypto.js.map +1 -0
  117. package/lib/preload.d.ts +14 -0
  118. package/lib/preload.d.ts.map +1 -0
  119. package/lib/preload.js +173 -0
  120. package/lib/preload.js.map +1 -0
  121. package/lib/serialization.d.ts +4 -0
  122. package/lib/serialization.d.ts.map +1 -0
  123. package/lib/serialization.js +51 -0
  124. package/lib/serialization.js.map +1 -0
  125. package/lib/specs.d.ts +7 -0
  126. package/lib/specs.d.ts.map +1 -0
  127. package/lib/specs.js +274 -0
  128. package/lib/specs.js.map +1 -0
  129. package/lib/speculos-deviceActions.d.ts +4 -0
  130. package/lib/speculos-deviceActions.d.ts.map +1 -0
  131. package/lib/speculos-deviceActions.js +85 -0
  132. package/lib/speculos-deviceActions.js.map +1 -0
  133. package/lib/transaction.d.ts +15 -0
  134. package/lib/transaction.d.ts.map +1 -0
  135. package/lib/transaction.js +51 -0
  136. package/lib/transaction.js.map +1 -0
  137. package/lib/types.d.ts +96 -0
  138. package/lib/types.d.ts.map +1 -0
  139. package/lib/types.js +3 -0
  140. package/lib/types.js.map +1 -0
  141. package/lib/validators.d.ts +3 -0
  142. package/lib/validators.d.ts.map +1 -0
  143. package/lib/validators.js +7 -0
  144. package/lib/validators.js.map +1 -0
  145. package/package.json +95 -0
  146. package/src/account.ts +170 -0
  147. package/src/address.ts +28 -0
  148. package/src/api/bisontrails.ts +343 -0
  149. package/src/api/common.ts +52 -0
  150. package/src/api/index.ts +38 -0
  151. package/src/api/sidecar.ts +735 -0
  152. package/src/api/sidecar.types.ts +162 -0
  153. package/src/api/subscan.ts +362 -0
  154. package/src/api/websocket.ts +535 -0
  155. package/src/bridge/js.ts +81 -0
  156. package/src/bridge.integration.test.ts +764 -0
  157. package/src/cache.ts +202 -0
  158. package/src/cli-transaction.ts +184 -0
  159. package/src/deviceTransactionConfig.ts +209 -0
  160. package/src/errors.ts +39 -0
  161. package/src/hw-getAddress.ts +14 -0
  162. package/src/js-buildTransaction.ts +206 -0
  163. package/src/js-createTransaction.ts +22 -0
  164. package/src/js-estimateMaxSpendable.ts +37 -0
  165. package/src/js-getFeesForTransaction.ts +41 -0
  166. package/src/js-getTransactionStatus.ts +350 -0
  167. package/src/js-prepareTransaction.ts +27 -0
  168. package/src/js-signOperation.ts +232 -0
  169. package/src/js-synchronisation.ts +57 -0
  170. package/src/logic.ts +266 -0
  171. package/src/platformAdapter.test.ts +61 -0
  172. package/src/platformAdapter.ts +29 -0
  173. package/src/polkadot-crypto.ts +10 -0
  174. package/src/preload.ts +148 -0
  175. package/src/serialization.ts +48 -0
  176. package/src/specs.ts +305 -0
  177. package/src/speculos-deviceActions.ts +84 -0
  178. package/src/transaction.ts +64 -0
  179. package/src/types.ts +118 -0
  180. package/src/validators.ts +2 -0
  181. package/tsconfig.json +21 -0
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ exports.__esModule = true;
3
+ var bignumber_js_1 = require("bignumber.js");
4
+ /**
5
+ * Create an empty transaction
6
+ *
7
+ * @returns {Transaction}
8
+ */
9
+ var createTransaction = function () { return ({
10
+ family: "polkadot",
11
+ mode: "send",
12
+ amount: new bignumber_js_1.BigNumber(0),
13
+ recipient: "",
14
+ useAllAmount: false,
15
+ fees: null,
16
+ validators: [],
17
+ era: null,
18
+ rewardDestination: null,
19
+ numSlashingSpans: Number(0)
20
+ }); };
21
+ exports["default"] = createTransaction;
22
+ //# sourceMappingURL=js-createTransaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"js-createTransaction.js","sourceRoot":"","sources":["../src/js-createTransaction.ts"],"names":[],"mappings":";;AAAA,6CAAyC;AAGzC;;;;GAIG;AACH,IAAM,iBAAiB,GAAG,cAAmB,OAAA,CAAC;IAC5C,MAAM,EAAE,UAAU;IAClB,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,IAAI,wBAAS,CAAC,CAAC,CAAC;IACxB,SAAS,EAAE,EAAE;IACb,YAAY,EAAE,KAAK;IACnB,IAAI,EAAE,IAAI;IACV,UAAU,EAAE,EAAE;IACd,GAAG,EAAE,IAAI;IACT,iBAAiB,EAAE,IAAI;IACvB,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC;CAC5B,CAAC,EAX2C,CAW3C,CAAC;AAEH,qBAAe,iBAAiB,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { BigNumber } from "bignumber.js";
2
+ import type { AccountLike, Account } from "@ledgerhq/types-live";
3
+ import type { Transaction } from "./types";
4
+ /**
5
+ * Returns the maximum possible amount for transaction
6
+ *
7
+ * @param {Object} param - the account, parentAccount and transaction
8
+ */
9
+ declare const estimateMaxSpendable: ({ account, parentAccount, transaction, }: {
10
+ account: AccountLike;
11
+ parentAccount: Account | null | undefined;
12
+ transaction: Transaction | null | undefined;
13
+ }) => Promise<BigNumber>;
14
+ export default estimateMaxSpendable;
15
+ //# sourceMappingURL=js-estimateMaxSpendable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"js-estimateMaxSpendable.d.ts","sourceRoot":"","sources":["../src/js-estimateMaxSpendable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEjE,OAAO,KAAK,EAAmB,WAAW,EAAE,MAAM,SAAS,CAAC;AAM5D;;;;GAIG;AACH,QAAA,MAAM,oBAAoB;aAKf,WAAW;mBACL,OAAO,GAAG,IAAI,GAAG,SAAS;iBAC5B,WAAW,GAAG,IAAI,GAAG,SAAS;MACzC,QAAQ,SAAS,CAYpB,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
+ return new (P || (P = Promise))(function (resolve, reject) {
16
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
20
+ });
21
+ };
22
+ var __generator = (this && this.__generator) || function (thisArg, body) {
23
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
24
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
+ function verb(n) { return function (v) { return step([n, v]); }; }
26
+ function step(op) {
27
+ if (f) throw new TypeError("Generator is already executing.");
28
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
29
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30
+ if (y = 0, t) op = [op[0] & 2, t.value];
31
+ switch (op[0]) {
32
+ case 0: case 1: t = op; break;
33
+ case 4: _.label++; return { value: op[1], done: false };
34
+ case 5: _.label++; y = op[1]; op = [0]; continue;
35
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
+ default:
37
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
+ if (t[2]) _.ops.pop();
42
+ _.trys.pop(); continue;
43
+ }
44
+ op = body.call(thisArg, _);
45
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
+ }
48
+ };
49
+ var __importDefault = (this && this.__importDefault) || function (mod) {
50
+ return (mod && mod.__esModule) ? mod : { "default": mod };
51
+ };
52
+ exports.__esModule = true;
53
+ var index_1 = require("@ledgerhq/coin-framework/account/index");
54
+ var logic_1 = require("./logic");
55
+ var js_getFeesForTransaction_1 = __importDefault(require("./js-getFeesForTransaction"));
56
+ var js_createTransaction_1 = __importDefault(require("./js-createTransaction"));
57
+ var polkadot_crypto_1 = require("./polkadot-crypto");
58
+ /**
59
+ * Returns the maximum possible amount for transaction
60
+ *
61
+ * @param {Object} param - the account, parentAccount and transaction
62
+ */
63
+ var estimateMaxSpendable = function (_a) {
64
+ var account = _a.account, parentAccount = _a.parentAccount, transaction = _a.transaction;
65
+ return __awaiter(void 0, void 0, void 0, function () {
66
+ var a, t, fees;
67
+ return __generator(this, function (_b) {
68
+ switch (_b.label) {
69
+ case 0: return [4 /*yield*/, (0, polkadot_crypto_1.loadPolkadotCrypto)()];
70
+ case 1:
71
+ _b.sent();
72
+ a = (0, index_1.getMainAccount)(account, parentAccount);
73
+ t = __assign(__assign(__assign({}, (0, js_createTransaction_1["default"])()), transaction), { useAllAmount: true });
74
+ return [4 /*yield*/, (0, js_getFeesForTransaction_1["default"])({
75
+ a: a,
76
+ t: t
77
+ })];
78
+ case 2:
79
+ fees = _b.sent();
80
+ return [2 /*return*/, (0, logic_1.calculateAmount)({
81
+ a: a,
82
+ t: __assign(__assign({}, t), { fees: fees })
83
+ })];
84
+ }
85
+ });
86
+ });
87
+ };
88
+ exports["default"] = estimateMaxSpendable;
89
+ //# sourceMappingURL=js-estimateMaxSpendable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"js-estimateMaxSpendable.js","sourceRoot":"","sources":["../src/js-estimateMaxSpendable.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,gEAAwE;AAExE,iCAA0C;AAC1C,wFAA0D;AAC1D,gFAAuD;AACvD,qDAAuD;AAEvD;;;;GAIG;AACH,IAAM,oBAAoB,GAAG,UAAO,EAQnC;QAPC,OAAO,aAAA,EACP,aAAa,mBAAA,EACb,WAAW,iBAAA;;;;;wBAMX,qBAAM,IAAA,oCAAkB,GAAE,EAAA;;oBAA1B,SAA0B,CAAC;oBACrB,CAAC,GAAG,IAAA,sBAAc,EAAC,OAAO,EAAE,aAAa,CAAoB,CAAC;oBAC9D,CAAC,kCAAQ,IAAA,iCAAiB,GAAE,GAAK,WAAW,KAAE,YAAY,EAAE,IAAI,GAAE,CAAC;oBAC5D,qBAAM,IAAA,qCAAgB,EAAC;4BAClC,CAAC,GAAA;4BACD,CAAC,GAAA;yBACF,CAAC,EAAA;;oBAHI,IAAI,GAAG,SAGX;oBACF,sBAAO,IAAA,uBAAe,EAAC;4BACrB,CAAC,GAAA;4BACD,CAAC,wBAAO,CAAC,KAAE,IAAI,MAAA,GAAE;yBAClB,CAAC,EAAC;;;;CACJ,CAAC;AAEF,qBAAe,oBAAoB,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { BigNumber } from "bignumber.js";
2
+ import type { PolkadotAccount, Transaction } from "./types";
3
+ /**
4
+ * Fetch the transaction fees for a transaction
5
+ *
6
+ * @param {Account} a
7
+ * @param {Transaction} t
8
+ */
9
+ declare const getEstimatedFees: ({ a, t, }: {
10
+ a: PolkadotAccount;
11
+ t: Transaction;
12
+ }) => Promise<BigNumber>;
13
+ export default getEstimatedFees;
14
+ //# sourceMappingURL=js-getFeesForTransaction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"js-getFeesForTransaction.d.ts","sourceRoot":"","sources":["../src/js-getFeesForTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAM5D;;;;;GAKG;AACH,QAAA,MAAM,gBAAgB;OAIjB,eAAe;OACf,WAAW;MACZ,QAAQ,SAAS,CAkBpB,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
+ return new (P || (P = Promise))(function (resolve, reject) {
16
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
20
+ });
21
+ };
22
+ var __generator = (this && this.__generator) || function (thisArg, body) {
23
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
24
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
+ function verb(n) { return function (v) { return step([n, v]); }; }
26
+ function step(op) {
27
+ if (f) throw new TypeError("Generator is already executing.");
28
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
29
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30
+ if (y = 0, t) op = [op[0] & 2, t.value];
31
+ switch (op[0]) {
32
+ case 0: case 1: t = op; break;
33
+ case 4: _.label++; return { value: op[1], done: false };
34
+ case 5: _.label++; y = op[1]; op = [0]; continue;
35
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
+ default:
37
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
+ if (t[2]) _.ops.pop();
42
+ _.trys.pop(); continue;
43
+ }
44
+ op = body.call(thisArg, _);
45
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
+ }
48
+ };
49
+ exports.__esModule = true;
50
+ var bignumber_js_1 = require("bignumber.js");
51
+ var cryptoassets_1 = require("@ledgerhq/cryptoassets");
52
+ var cache_1 = require("./cache");
53
+ var logic_1 = require("./logic");
54
+ var js_buildTransaction_1 = require("./js-buildTransaction");
55
+ var js_signOperation_1 = require("./js-signOperation");
56
+ /**
57
+ * Fetch the transaction fees for a transaction
58
+ *
59
+ * @param {Account} a
60
+ * @param {Transaction} t
61
+ */
62
+ var getEstimatedFees = function (_a) {
63
+ var a = _a.a, t = _a.t;
64
+ return __awaiter(void 0, void 0, void 0, function () {
65
+ var transaction, _b, unsigned, registry, fakeSignedTx, payment;
66
+ return __generator(this, function (_c) {
67
+ switch (_c.label) {
68
+ case 0:
69
+ transaction = __assign(__assign({}, t), { recipient: (0, cryptoassets_1.getAbandonSeedAddress)(a.currency.id),
70
+ // Always use a fake recipient to estimate fees
71
+ amount: (0, logic_1.calculateAmount)({
72
+ a: a,
73
+ t: __assign(__assign({}, t), { fees: new bignumber_js_1.BigNumber(0) })
74
+ }) });
75
+ return [4 /*yield*/, (0, js_buildTransaction_1.buildTransaction)(a, transaction)];
76
+ case 1:
77
+ _b = _c.sent(), unsigned = _b.unsigned, registry = _b.registry;
78
+ return [4 /*yield*/, (0, js_signOperation_1.fakeSignExtrinsic)(unsigned, registry)];
79
+ case 2:
80
+ fakeSignedTx = _c.sent();
81
+ return [4 /*yield*/, (0, cache_1.getPaymentInfo)({
82
+ a: a,
83
+ t: transaction,
84
+ signedTx: fakeSignedTx
85
+ })];
86
+ case 3:
87
+ payment = _c.sent();
88
+ return [2 /*return*/, new bignumber_js_1.BigNumber(payment.partialFee)];
89
+ }
90
+ });
91
+ });
92
+ };
93
+ exports["default"] = getEstimatedFees;
94
+ //# sourceMappingURL=js-getFeesForTransaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"js-getFeesForTransaction.js","sourceRoot":"","sources":["../src/js-getFeesForTransaction.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAAyC;AACzC,uDAA+D;AAE/D,iCAAyC;AACzC,iCAA0C;AAC1C,6DAAyD;AACzD,uDAAuD;AAEvD;;;;;GAKG;AACH,IAAM,gBAAgB,GAAG,UAAO,EAM/B;QALC,CAAC,OAAA,EACD,CAAC,OAAA;;;;;;oBAKK,WAAW,yBACZ,CAAC,KACJ,SAAS,EAAE,IAAA,oCAAqB,EAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;wBAC/C,+CAA+C;wBAC/C,MAAM,EAAE,IAAA,uBAAe,EAAC;4BACtB,CAAC,GAAA;4BACD,CAAC,wBAAO,CAAC,KAAE,IAAI,EAAE,IAAI,wBAAS,CAAC,CAAC,CAAC,GAAE;yBACpC,CAAC,GACH,CAAC;oBAC6B,qBAAM,IAAA,sCAAgB,EAAC,CAAC,EAAE,WAAW,CAAC,EAAA;;oBAA/D,KAAyB,SAAsC,EAA7D,QAAQ,cAAA,EAAE,QAAQ,cAAA;oBACL,qBAAM,IAAA,oCAAiB,EAAC,QAAQ,EAAE,QAAQ,CAAC,EAAA;;oBAA1D,YAAY,GAAG,SAA2C;oBAChD,qBAAM,IAAA,sBAAc,EAAC;4BACnC,CAAC,GAAA;4BACD,CAAC,EAAE,WAAW;4BACd,QAAQ,EAAE,YAAY;yBACvB,CAAC,EAAA;;oBAJI,OAAO,GAAG,SAId;oBACF,sBAAO,IAAI,wBAAS,CAAC,OAAO,CAAC,UAAU,CAAC,EAAC;;;;CAC1C,CAAC;AAEF,qBAAe,gBAAgB,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { BigNumber } from "bignumber.js";
2
+ import type { PolkadotAccount, Transaction } from "./types";
3
+ declare const getTransactionStatus: (a: PolkadotAccount, t: Transaction) => Promise<import("@ledgerhq/types-live").TransactionStatusCommon | {
4
+ errors: {
5
+ staking?: Error | undefined;
6
+ amount?: Error | undefined;
7
+ recipient?: Error | undefined;
8
+ unbondings?: Error | undefined;
9
+ };
10
+ warnings: {
11
+ amount?: Error | undefined;
12
+ };
13
+ estimatedFees: BigNumber;
14
+ amount: BigNumber;
15
+ totalSpent: BigNumber;
16
+ }>;
17
+ export default getTransactionStatus;
18
+ //# sourceMappingURL=js-getTransactionStatus.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"js-getTransactionStatus.d.ts","sourceRoot":"","sources":["../src/js-getTransactionStatus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAWzC,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAqB,MAAM,SAAS,CAAC;AAgI/E,QAAA,MAAM,oBAAoB,MAAa,eAAe,KAAK,WAAW;;;;;;;;;;;;;EAgNrE,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
@@ -0,0 +1,316 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ exports.__esModule = true;
39
+ var bignumber_js_1 = require("bignumber.js");
40
+ var errors_1 = require("@ledgerhq/errors");
41
+ var index_1 = require("@ledgerhq/coin-framework/currencies/index");
42
+ var errors_2 = require("./errors");
43
+ var api_1 = require("./api");
44
+ var logic_1 = require("./logic");
45
+ var address_1 = require("./address");
46
+ var preload_1 = require("./preload");
47
+ var cache_1 = require("./cache");
48
+ var polkadot_crypto_1 = require("./polkadot-crypto");
49
+ // Should try to refacto
50
+ var getSendTransactionStatus = function (a, t) { return __awaiter(void 0, void 0, void 0, function () {
51
+ var errors, warnings, estimatedFees, amount, totalSpent, minimumBalanceExistential, leftover, _a;
52
+ var _b;
53
+ return __generator(this, function (_c) {
54
+ switch (_c.label) {
55
+ case 0:
56
+ errors = {};
57
+ warnings = {};
58
+ if (!t.fees) {
59
+ errors.fees = new errors_1.FeeNotLoaded();
60
+ }
61
+ if (!t.recipient) {
62
+ errors.recipient = new errors_1.RecipientRequired("");
63
+ }
64
+ else if (a.freshAddress === t.recipient) {
65
+ errors.recipient = new errors_1.InvalidAddressBecauseDestinationIsAlsoSource();
66
+ }
67
+ else if (!(0, address_1.isValidAddress)(t.recipient)) {
68
+ errors.recipient = new errors_1.InvalidAddress("", {
69
+ currencyName: a.currency.name
70
+ });
71
+ }
72
+ estimatedFees = t.fees || new bignumber_js_1.BigNumber(0);
73
+ amount = (0, logic_1.calculateAmount)({
74
+ a: a,
75
+ t: t
76
+ });
77
+ totalSpent = amount.plus(estimatedFees);
78
+ if (amount.lte(0) && !t.useAllAmount) {
79
+ errors.amount = new errors_1.AmountRequired();
80
+ }
81
+ minimumBalanceExistential = (0, logic_1.getMinimumBalance)(a);
82
+ leftover = a.spendableBalance.minus(totalSpent);
83
+ if (minimumBalanceExistential.gt(0) &&
84
+ leftover.lt(minimumBalanceExistential) &&
85
+ leftover.gt(0)) {
86
+ errors.amount = new errors_2.PolkadotDoMaxSendInstead("", {
87
+ minimumBalance: (0, index_1.formatCurrencyUnit)(a.currency.units[0], logic_1.EXISTENTIAL_DEPOSIT, { showCode: true })
88
+ });
89
+ }
90
+ else if (!errors.amount &&
91
+ !t.useAllAmount &&
92
+ a.spendableBalance.lte(logic_1.EXISTENTIAL_DEPOSIT.plus(logic_1.EXISTENTIAL_DEPOSIT_RECOMMENDED_MARGIN))) {
93
+ errors.amount = new errors_1.NotEnoughBalance();
94
+ }
95
+ else if (totalSpent.gt(a.spendableBalance)) {
96
+ errors.amount = new errors_1.NotEnoughBalance();
97
+ }
98
+ if (!errors.amount &&
99
+ ((_b = a.polkadotResources) === null || _b === void 0 ? void 0 : _b.lockedBalance.gt(0)) &&
100
+ (t.useAllAmount ||
101
+ a.spendableBalance.minus(totalSpent).lt(logic_1.FEES_SAFETY_BUFFER))) {
102
+ warnings.amount = new errors_2.PolkadotAllFundsWarning();
103
+ }
104
+ _a = !errors.recipient &&
105
+ amount.lt(logic_1.EXISTENTIAL_DEPOSIT);
106
+ if (!_a) return [3 /*break*/, 2];
107
+ return [4 /*yield*/, (0, cache_1.isNewAccount)(t.recipient)];
108
+ case 1:
109
+ _a = (_c.sent());
110
+ _c.label = 2;
111
+ case 2:
112
+ if (_a) {
113
+ errors.amount = new errors_1.NotEnoughBalanceBecauseDestinationNotCreated("", {
114
+ minimalAmount: (0, index_1.formatCurrencyUnit)(a.currency.units[0], logic_1.EXISTENTIAL_DEPOSIT, {
115
+ showCode: true
116
+ })
117
+ });
118
+ }
119
+ return [2 /*return*/, Promise.resolve({
120
+ errors: errors,
121
+ warnings: warnings,
122
+ estimatedFees: estimatedFees,
123
+ amount: amount.lt(0) ? new bignumber_js_1.BigNumber(0) : amount,
124
+ totalSpent: totalSpent,
125
+ family: t.family
126
+ })];
127
+ }
128
+ });
129
+ }); };
130
+ var getTransactionStatus = function (a, t) { return __awaiter(void 0, void 0, void 0, function () {
131
+ var errors, warnings, preloaded, staking, validators, minimumBondBalance, _a, _b, amount, unlockingBalance, unlockedBalance, currentBonded, minimumAmountToBond, _c, notValidators, notValidators, estimatedFees, totalSpent;
132
+ var _d, _e, _f, _g, _h, _j;
133
+ return __generator(this, function (_k) {
134
+ switch (_k.label) {
135
+ case 0: return [4 /*yield*/, (0, polkadot_crypto_1.loadPolkadotCrypto)()];
136
+ case 1:
137
+ _k.sent();
138
+ errors = {};
139
+ warnings = {};
140
+ preloaded = (0, preload_1.getCurrentPolkadotPreloadData)();
141
+ staking = preloaded.staking, validators = preloaded.validators;
142
+ minimumBondBalance = new bignumber_js_1.BigNumber(preloaded.minimumBondBalance);
143
+ if (!(t.mode === "send")) return [3 /*break*/, 3];
144
+ return [4 /*yield*/, getSendTransactionStatus(a, t)];
145
+ case 2: return [2 /*return*/, _k.sent()];
146
+ case 3:
147
+ _a = (staking && !staking.electionClosed);
148
+ if (_a) return [3 /*break*/, 6];
149
+ _b = !staking;
150
+ if (!_b) return [3 /*break*/, 5];
151
+ return [4 /*yield*/, !(0, cache_1.isElectionClosed)()];
152
+ case 4:
153
+ _b = (_k.sent());
154
+ _k.label = 5;
155
+ case 5:
156
+ _a = (_b); // Fallback
157
+ _k.label = 6;
158
+ case 6:
159
+ if (_a) {
160
+ errors.staking = new errors_2.PolkadotElectionClosed();
161
+ }
162
+ amount = (0, logic_1.calculateAmount)({
163
+ a: a,
164
+ t: t
165
+ });
166
+ unlockingBalance = ((_d = a.polkadotResources) === null || _d === void 0 ? void 0 : _d.unlockingBalance) || new bignumber_js_1.BigNumber(0);
167
+ unlockedBalance = ((_e = a.polkadotResources) === null || _e === void 0 ? void 0 : _e.unlockedBalance) || new bignumber_js_1.BigNumber(0);
168
+ currentBonded = ((_f = a.polkadotResources) === null || _f === void 0 ? void 0 : _f.lockedBalance.minus(unlockingBalance)) ||
169
+ new bignumber_js_1.BigNumber(0);
170
+ minimumAmountToBond = (0, logic_1.getMinimumAmountToBond)(a, minimumBondBalance);
171
+ _c = t.mode;
172
+ switch (_c) {
173
+ case "bond": return [3 /*break*/, 7];
174
+ case "unbond": return [3 /*break*/, 12];
175
+ case "rebond": return [3 /*break*/, 13];
176
+ case "withdrawUnbonded": return [3 /*break*/, 14];
177
+ case "nominate": return [3 /*break*/, 15];
178
+ case "chill": return [3 /*break*/, 21];
179
+ case "setController": return [3 /*break*/, 22];
180
+ }
181
+ return [3 /*break*/, 23];
182
+ case 7:
183
+ if (amount.lt(minimumAmountToBond)) {
184
+ errors.amount = new errors_2.PolkadotBondMinimumAmount("", {
185
+ minimumBondAmount: (0, index_1.formatCurrencyUnit)(a.currency.units[0], minimumAmountToBond, { showCode: true })
186
+ });
187
+ }
188
+ if (!(0, logic_1.isFirstBond)(a)) return [3 /*break*/, 11];
189
+ if (!!t.recipient) return [3 /*break*/, 8];
190
+ errors.recipient = new errors_1.RecipientRequired("");
191
+ return [3 /*break*/, 11];
192
+ case 8:
193
+ if (!!(0, address_1.isValidAddress)(t.recipient)) return [3 /*break*/, 9];
194
+ errors.recipient = new errors_1.InvalidAddress("", {
195
+ currencyName: a.currency.name
196
+ });
197
+ return [3 /*break*/, 11];
198
+ case 9: return [4 /*yield*/, (0, cache_1.isControllerAddress)(t.recipient)];
199
+ case 10:
200
+ if (_k.sent()) {
201
+ errors.recipient = new errors_2.PolkadotUnauthorizedOperation("Recipient is already a controller");
202
+ }
203
+ _k.label = 11;
204
+ case 11: return [3 /*break*/, 23];
205
+ case 12:
206
+ if (!(0, logic_1.isController)(a) || !(0, logic_1.hasLockedBalance)(a)) {
207
+ errors.staking = new errors_2.PolkadotUnauthorizedOperation();
208
+ }
209
+ if ((0, logic_1.hasMaxUnlockings)(a)) {
210
+ errors.unbondings = new errors_2.PolkadotMaxUnbonding();
211
+ }
212
+ if (amount.lte(0)) {
213
+ errors.amount = new errors_1.AmountRequired();
214
+ }
215
+ else if (amount.gt(currentBonded.minus(minimumBondBalance)) &&
216
+ amount.lt(currentBonded)) {
217
+ warnings.amount = new errors_2.PolkadotBondMinimumAmountWarning("", {
218
+ minimumBondBalance: (0, index_1.formatCurrencyUnit)(a.currency.units[0], minimumBondBalance, { showCode: true })
219
+ });
220
+ }
221
+ else if (amount.gt(currentBonded)) {
222
+ errors.amount = new errors_1.NotEnoughBalance();
223
+ }
224
+ return [3 /*break*/, 23];
225
+ case 13:
226
+ if (!(0, logic_1.isController)(a)) {
227
+ errors.staking = new errors_2.PolkadotUnauthorizedOperation();
228
+ }
229
+ if (amount.lte(0)) {
230
+ errors.amount = new errors_1.AmountRequired();
231
+ }
232
+ else if (amount.gt(unlockingBalance)) {
233
+ errors.amount = new errors_1.NotEnoughBalance();
234
+ }
235
+ else if (amount.lt(minimumAmountToBond)) {
236
+ warnings.amount = new errors_2.PolkadotBondMinimumAmountWarning("", {
237
+ minimumBondBalance: (0, index_1.formatCurrencyUnit)(a.currency.units[0], minimumBondBalance, { showCode: true })
238
+ });
239
+ }
240
+ return [3 /*break*/, 23];
241
+ case 14:
242
+ if (!(0, logic_1.isController)(a)) {
243
+ errors.staking = new errors_2.PolkadotUnauthorizedOperation();
244
+ }
245
+ if (unlockedBalance.lte(0)) {
246
+ errors.amount = new errors_2.PolkadotNoUnlockedBalance();
247
+ }
248
+ return [3 /*break*/, 23];
249
+ case 15:
250
+ if (!!(0, logic_1.isController)(a)) return [3 /*break*/, 16];
251
+ errors.staking = new errors_2.PolkadotUnauthorizedOperation();
252
+ return [3 /*break*/, 20];
253
+ case 16:
254
+ if (!(!t.validators || ((_g = t.validators) === null || _g === void 0 ? void 0 : _g.length) === 0)) return [3 /*break*/, 17];
255
+ errors.staking = new errors_2.PolkadotValidatorsRequired();
256
+ return [3 /*break*/, 20];
257
+ case 17:
258
+ if (!(validators && validators.length)) return [3 /*break*/, 18];
259
+ notValidators = (_h = t.validators) === null || _h === void 0 ? void 0 : _h.filter(function (address) { return !validators.find(function (v) { return v.address === address; }); });
260
+ if (notValidators && notValidators.length) {
261
+ errors.staking = new errors_2.PolkadotNotValidator(undefined, {
262
+ validators: notValidators
263
+ });
264
+ }
265
+ return [3 /*break*/, 20];
266
+ case 18: return [4 /*yield*/, (0, api_1.verifyValidatorAddresses)(t.validators || [])];
267
+ case 19:
268
+ notValidators = _k.sent();
269
+ if (notValidators.length) {
270
+ errors.staking = new errors_2.PolkadotNotValidator(undefined, {
271
+ validators: notValidators
272
+ });
273
+ return [3 /*break*/, 23];
274
+ }
275
+ _k.label = 20;
276
+ case 20: return [3 /*break*/, 23];
277
+ case 21:
278
+ if (!(0, logic_1.isController)(a)) {
279
+ errors.staking = new errors_2.PolkadotUnauthorizedOperation();
280
+ }
281
+ else if (!((_j = a.polkadotResources) === null || _j === void 0 ? void 0 : _j.nominations)) {
282
+ errors.staking = new errors_2.PolkadotNoNominations();
283
+ }
284
+ return [3 /*break*/, 23];
285
+ case 22:
286
+ if (!(0, logic_1.isStash)(a)) {
287
+ errors.staking = new errors_2.PolkadotUnauthorizedOperation();
288
+ }
289
+ return [3 /*break*/, 23];
290
+ case 23:
291
+ estimatedFees = t.fees || new bignumber_js_1.BigNumber(0);
292
+ totalSpent = t.mode === "bond" ? amount.plus(estimatedFees) : estimatedFees;
293
+ if (t.mode === "bond" || t.mode === "unbond" || t.mode === "rebond") {
294
+ if (amount.lte(0)) {
295
+ errors.amount = new errors_1.AmountRequired();
296
+ }
297
+ }
298
+ if (t.mode === "bond" &&
299
+ a.spendableBalance.minus(totalSpent).lt(logic_1.FEES_SAFETY_BUFFER)) {
300
+ errors.amount = new errors_1.NotEnoughBalance();
301
+ }
302
+ if (totalSpent.gt(a.spendableBalance)) {
303
+ errors.amount = new errors_1.NotEnoughBalance();
304
+ }
305
+ return [2 /*return*/, Promise.resolve({
306
+ errors: errors,
307
+ warnings: warnings,
308
+ estimatedFees: estimatedFees,
309
+ amount: amount.lt(0) ? new bignumber_js_1.BigNumber(0) : amount,
310
+ totalSpent: totalSpent
311
+ })];
312
+ }
313
+ });
314
+ }); };
315
+ exports["default"] = getTransactionStatus;
316
+ //# sourceMappingURL=js-getTransactionStatus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"js-getTransactionStatus.js","sourceRoot":"","sources":["../src/js-getTransactionStatus.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { PolkadotAccount, Transaction } from "./types";
2
+ /**
3
+ * Calculate fees for the current transaction
4
+ * @param {PolkadotAccount} a
5
+ * @param {Transaction} t
6
+ */
7
+ declare const prepareTransaction: (a: PolkadotAccount, t: Transaction) => Promise<Transaction>;
8
+ export default prepareTransaction;
9
+ //# sourceMappingURL=js-prepareTransaction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"js-prepareTransaction.d.ts","sourceRoot":"","sources":["../src/js-prepareTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAM5D;;;;GAIG;AACH,QAAA,MAAM,kBAAkB,MAAa,eAAe,KAAK,WAAW,yBAanE,CAAC;AAEF,eAAe,kBAAkB,CAAC"}