@airgap/moonbeam 0.13.11-beta.1 → 0.13.11-beta.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 (162) hide show
  1. package/index.d.ts +1 -0
  2. package/index.js +18 -0
  3. package/index.js.map +1 -0
  4. package/package.json +1 -5
  5. package/v0/index.d.ts +6 -0
  6. package/v0/index.js +37 -0
  7. package/v0/index.js.map +1 -0
  8. package/v0/protocol/moonbase/MoonbaseProtocol.d.ts +17 -0
  9. package/v0/protocol/moonbase/MoonbaseProtocol.js +75 -0
  10. package/v0/protocol/moonbase/MoonbaseProtocol.js.map +1 -0
  11. package/v0/protocol/moonbase/MoonbaseProtocolOptions.d.ts +21 -0
  12. package/v0/protocol/moonbase/MoonbaseProtocolOptions.js +80 -0
  13. package/v0/protocol/moonbase/MoonbaseProtocolOptions.js.map +1 -0
  14. package/v0/protocol/moonbeam/MoonbeamProtocol.d.ts +55 -0
  15. package/v0/protocol/moonbeam/MoonbeamProtocol.js +641 -0
  16. package/v0/protocol/moonbeam/MoonbeamProtocol.js.map +1 -0
  17. package/v0/protocol/moonbeam/MoonbeamProtocolOptions.d.ts +32 -0
  18. package/v0/protocol/moonbeam/MoonbeamProtocolOptions.js +104 -0
  19. package/v0/protocol/moonbeam/MoonbeamProtocolOptions.js.map +1 -0
  20. package/v0/protocol/moonbeam/controllers/MoonbeamAccountController.d.ts +28 -0
  21. package/v0/protocol/moonbeam/controllers/MoonbeamAccountController.js +551 -0
  22. package/v0/protocol/moonbeam/controllers/MoonbeamAccountController.js.map +1 -0
  23. package/v0/protocol/moonbeam/controllers/MoonbeamTransactionController.d.ts +9 -0
  24. package/v0/protocol/moonbeam/controllers/MoonbeamTransactionController.js +75 -0
  25. package/v0/protocol/moonbeam/controllers/MoonbeamTransactionController.js.map +1 -0
  26. package/v0/protocol/moonbeam/data/staking/MoonbeamBond.d.ts +13 -0
  27. package/v0/protocol/moonbeam/data/staking/MoonbeamBond.js +43 -0
  28. package/v0/protocol/moonbeam/data/staking/MoonbeamBond.js.map +1 -0
  29. package/v0/protocol/moonbeam/data/staking/MoonbeamCandidateBondLessRequest.d.ts +11 -0
  30. package/v0/protocol/moonbeam/data/staking/MoonbeamCandidateBondLessRequest.js +43 -0
  31. package/v0/protocol/moonbeam/data/staking/MoonbeamCandidateBondLessRequest.js.map +1 -0
  32. package/v0/protocol/moonbeam/data/staking/MoonbeamCandidateMetadata.d.ts +28 -0
  33. package/v0/protocol/moonbeam/data/staking/MoonbeamCandidateMetadata.js +49 -0
  34. package/v0/protocol/moonbeam/data/staking/MoonbeamCandidateMetadata.js.map +1 -0
  35. package/v0/protocol/moonbeam/data/staking/MoonbeamCollatorDetails.d.ts +9 -0
  36. package/v0/protocol/moonbeam/data/staking/MoonbeamCollatorDetails.js +3 -0
  37. package/v0/protocol/moonbeam/data/staking/MoonbeamCollatorDetails.js.map +1 -0
  38. package/v0/protocol/moonbeam/data/staking/MoonbeamDelegationDetails.d.ts +13 -0
  39. package/v0/protocol/moonbeam/data/staking/MoonbeamDelegationDetails.js +3 -0
  40. package/v0/protocol/moonbeam/data/staking/MoonbeamDelegationDetails.js.map +1 -0
  41. package/v0/protocol/moonbeam/data/staking/MoonbeamDelegationScheduledRequests.d.ts +46 -0
  42. package/v0/protocol/moonbeam/data/staking/MoonbeamDelegationScheduledRequests.js +148 -0
  43. package/v0/protocol/moonbeam/data/staking/MoonbeamDelegationScheduledRequests.js.map +1 -0
  44. package/v0/protocol/moonbeam/data/staking/MoonbeamDelegator.d.ts +40 -0
  45. package/v0/protocol/moonbeam/data/staking/MoonbeamDelegator.js +132 -0
  46. package/v0/protocol/moonbeam/data/staking/MoonbeamDelegator.js.map +1 -0
  47. package/v0/protocol/moonbeam/data/staking/MoonbeamDelegatorDetails.d.ts +5 -0
  48. package/v0/protocol/moonbeam/data/staking/MoonbeamDelegatorDetails.js +3 -0
  49. package/v0/protocol/moonbeam/data/staking/MoonbeamDelegatorDetails.js.map +1 -0
  50. package/v0/protocol/moonbeam/data/staking/MoonbeamRoundInfo.d.ts +8 -0
  51. package/v0/protocol/moonbeam/data/staking/MoonbeamRoundInfo.js +22 -0
  52. package/v0/protocol/moonbeam/data/staking/MoonbeamRoundInfo.js.map +1 -0
  53. package/v0/protocol/moonbeam/data/staking/MoonbeamStakingActionType.d.ts +13 -0
  54. package/v0/protocol/moonbeam/data/staking/MoonbeamStakingActionType.js +18 -0
  55. package/v0/protocol/moonbeam/data/staking/MoonbeamStakingActionType.js.map +1 -0
  56. package/v0/protocol/moonbeam/node/MoonbeamNodeClient.d.ts +26 -0
  57. package/v0/protocol/moonbeam/node/MoonbeamNodeClient.js +220 -0
  58. package/v0/protocol/moonbeam/node/MoonbeamNodeClient.js.map +1 -0
  59. package/v0/protocol/moonriver/MoonriverProtocol.d.ts +17 -0
  60. package/v0/protocol/moonriver/MoonriverProtocol.js +75 -0
  61. package/v0/protocol/moonriver/MoonriverProtocol.js.map +1 -0
  62. package/v0/protocol/moonriver/MoonriverProtocolOptions.d.ts +21 -0
  63. package/v0/protocol/moonriver/MoonriverProtocolOptions.js +80 -0
  64. package/v0/protocol/moonriver/MoonriverProtocolOptions.js.map +1 -0
  65. package/v1/block-explorer/SubscanBlockExplorer.d.ts +4 -0
  66. package/v1/block-explorer/SubscanBlockExplorer.js +21 -0
  67. package/v1/block-explorer/SubscanBlockExplorer.js.map +1 -0
  68. package/v1/controller/MoonbeamAccountController.d.ts +22 -0
  69. package/v1/controller/MoonbeamAccountController.js +494 -0
  70. package/v1/controller/MoonbeamAccountController.js.map +1 -0
  71. package/v1/controller/MoonbeamTransactionController.d.ts +5 -0
  72. package/v1/controller/MoonbeamTransactionController.js +28 -0
  73. package/v1/controller/MoonbeamTransactionController.js.map +1 -0
  74. package/v1/data/staking/MoonbeamBond.d.ts +9 -0
  75. package/v1/data/staking/MoonbeamBond.js +41 -0
  76. package/v1/data/staking/MoonbeamBond.js.map +1 -0
  77. package/v1/data/staking/MoonbeamCandidateBondLessRequest.d.ts +9 -0
  78. package/v1/data/staking/MoonbeamCandidateBondLessRequest.js +41 -0
  79. package/v1/data/staking/MoonbeamCandidateBondLessRequest.js.map +1 -0
  80. package/v1/data/staking/MoonbeamCandidateMetadata.d.ts +27 -0
  81. package/v1/data/staking/MoonbeamCandidateMetadata.js +50 -0
  82. package/v1/data/staking/MoonbeamCandidateMetadata.js.map +1 -0
  83. package/v1/data/staking/MoonbeamCollatorDetails.d.ts +9 -0
  84. package/v1/data/staking/MoonbeamCollatorDetails.js +3 -0
  85. package/v1/data/staking/MoonbeamCollatorDetails.js.map +1 -0
  86. package/v1/data/staking/MoonbeamDelegationDetails.d.ts +13 -0
  87. package/v1/data/staking/MoonbeamDelegationDetails.js +3 -0
  88. package/v1/data/staking/MoonbeamDelegationDetails.js.map +1 -0
  89. package/v1/data/staking/MoonbeamDelegationScheduledRequests.d.ts +40 -0
  90. package/v1/data/staking/MoonbeamDelegationScheduledRequests.js +148 -0
  91. package/v1/data/staking/MoonbeamDelegationScheduledRequests.js.map +1 -0
  92. package/v1/data/staking/MoonbeamDelegator.d.ts +35 -0
  93. package/v1/data/staking/MoonbeamDelegator.js +132 -0
  94. package/v1/data/staking/MoonbeamDelegator.js.map +1 -0
  95. package/v1/data/staking/MoonbeamDelegatorDetails.d.ts +5 -0
  96. package/v1/data/staking/MoonbeamDelegatorDetails.js +3 -0
  97. package/v1/data/staking/MoonbeamDelegatorDetails.js.map +1 -0
  98. package/v1/data/staking/MoonbeamRoundInfo.d.ts +9 -0
  99. package/v1/data/staking/MoonbeamRoundInfo.js +21 -0
  100. package/v1/data/staking/MoonbeamRoundInfo.js.map +1 -0
  101. package/v1/data/staking/MoonbeamStakingActionType.d.ts +13 -0
  102. package/v1/data/staking/MoonbeamStakingActionType.js +18 -0
  103. package/v1/data/staking/MoonbeamStakingActionType.js.map +1 -0
  104. package/v1/data/transaction/method/args.d.ts +2 -0
  105. package/v1/data/transaction/method/args.js +475 -0
  106. package/v1/data/transaction/method/args.js.map +1 -0
  107. package/v1/data/transaction/transaction.d.ts +2 -0
  108. package/v1/data/transaction/transaction.js +29 -0
  109. package/v1/data/transaction/transaction.js.map +1 -0
  110. package/v1/index.d.ts +12 -0
  111. package/v1/index.js +16 -0
  112. package/v1/index.js.map +1 -0
  113. package/v1/module/MoonbeamModule.d.ts +17 -0
  114. package/v1/module/MoonbeamModule.js +121 -0
  115. package/v1/module/MoonbeamModule.js.map +1 -0
  116. package/v1/module.d.ts +3 -0
  117. package/v1/module.js +24 -0
  118. package/v1/module.js.map +1 -0
  119. package/v1/node/MoonbeamNodeClient.d.ts +35 -0
  120. package/v1/node/MoonbeamNodeClient.js +269 -0
  121. package/v1/node/MoonbeamNodeClient.js.map +1 -0
  122. package/v1/protocol/MoonbaseProtocol.d.ts +14 -0
  123. package/v1/protocol/MoonbaseProtocol.js +110 -0
  124. package/v1/protocol/MoonbaseProtocol.js.map +1 -0
  125. package/v1/protocol/MoonbeamBaseProtocol.d.ts +28 -0
  126. package/v1/protocol/MoonbeamBaseProtocol.js +432 -0
  127. package/v1/protocol/MoonbeamBaseProtocol.js.map +1 -0
  128. package/v1/protocol/MoonbeamProtocol.d.ts +14 -0
  129. package/v1/protocol/MoonbeamProtocol.js +125 -0
  130. package/v1/protocol/MoonbeamProtocol.js.map +1 -0
  131. package/v1/protocol/MoonriverProtocol.d.ts +14 -0
  132. package/v1/protocol/MoonriverProtocol.js +110 -0
  133. package/v1/protocol/MoonriverProtocol.js.map +1 -0
  134. package/v1/serializer/v3/schemas/converter/transaction-converter.d.ts +7 -0
  135. package/v1/serializer/v3/schemas/converter/transaction-converter.js +21 -0
  136. package/v1/serializer/v3/schemas/converter/transaction-converter.js.map +1 -0
  137. package/v1/serializer/v3/schemas/definitions/transaction-sign-request-moonbeam.d.ts +3 -0
  138. package/v1/serializer/v3/schemas/definitions/transaction-sign-request-moonbeam.js +3 -0
  139. package/v1/serializer/v3/schemas/definitions/transaction-sign-request-moonbeam.js.map +1 -0
  140. package/v1/serializer/v3/schemas/definitions/transaction-sign-response-moonbeam.d.ts +3 -0
  141. package/v1/serializer/v3/schemas/definitions/transaction-sign-response-moonbeam.js +3 -0
  142. package/v1/serializer/v3/schemas/definitions/transaction-sign-response-moonbeam.js.map +1 -0
  143. package/v1/serializer/v3/schemas/generated/transaction-sign-request-moonbeam.json +36 -0
  144. package/v1/serializer/v3/schemas/generated/transaction-sign-response-moonbeam.json +19 -0
  145. package/v1/serializer/v3/serializer-companion.d.ts +14 -0
  146. package/v1/serializer/v3/serializer-companion.js +189 -0
  147. package/v1/serializer/v3/serializer-companion.js.map +1 -0
  148. package/v1/serializer/v3/validators/transaction-validator.d.ts +4 -0
  149. package/v1/serializer/v3/validators/transaction-validator.js +28 -0
  150. package/v1/serializer/v3/validators/transaction-validator.js.map +1 -0
  151. package/v1/serializer/v3/validators/validators.d.ts +4 -0
  152. package/v1/serializer/v3/validators/validators.js +6 -0
  153. package/v1/serializer/v3/validators/validators.js.map +1 -0
  154. package/v1/types/configuration.d.ts +11 -0
  155. package/v1/types/configuration.js +3 -0
  156. package/v1/types/configuration.js.map +1 -0
  157. package/v1/types/crypto.d.ts +2 -0
  158. package/v1/types/crypto.js +3 -0
  159. package/v1/types/crypto.js.map +1 -0
  160. package/v1/types/protocol.d.ts +13 -0
  161. package/v1/types/protocol.js +3 -0
  162. package/v1/types/protocol.js.map +1 -0
@@ -0,0 +1,551 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
+ if (k2 === undefined) k2 = k;
19
+ var desc = Object.getOwnPropertyDescriptor(m, k);
20
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
21
+ desc = { enumerable: true, get: function() { return m[k]; } };
22
+ }
23
+ Object.defineProperty(o, k2, desc);
24
+ }) : (function(o, m, k, k2) {
25
+ if (k2 === undefined) k2 = k;
26
+ o[k2] = m[k];
27
+ }));
28
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
29
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
30
+ }) : function(o, v) {
31
+ o["default"] = v;
32
+ });
33
+ var __importStar = (this && this.__importStar) || function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
41
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
42
+ return new (P || (P = Promise))(function (resolve, reject) {
43
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
44
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
45
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
46
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
47
+ });
48
+ };
49
+ var __generator = (this && this.__generator) || function (thisArg, body) {
50
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
51
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
52
+ function verb(n) { return function (v) { return step([n, v]); }; }
53
+ function step(op) {
54
+ if (f) throw new TypeError("Generator is already executing.");
55
+ while (_) try {
56
+ 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;
57
+ if (y = 0, t) op = [op[0] & 2, t.value];
58
+ switch (op[0]) {
59
+ case 0: case 1: t = op; break;
60
+ case 4: _.label++; return { value: op[1], done: false };
61
+ case 5: _.label++; y = op[1]; op = [0]; continue;
62
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
63
+ default:
64
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
65
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
66
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
67
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
68
+ if (t[2]) _.ops.pop();
69
+ _.trys.pop(); continue;
70
+ }
71
+ op = body.call(thisArg, _);
72
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
73
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
74
+ }
75
+ };
76
+ var __importDefault = (this && this.__importDefault) || function (mod) {
77
+ return (mod && mod.__esModule) ? mod : { "default": mod };
78
+ };
79
+ Object.defineProperty(exports, "__esModule", { value: true });
80
+ exports.MoonbeamAccountController = void 0;
81
+ var bignumber_1 = __importDefault(require("@airgap/coinlib-core/dependencies/src/bignumber.js-9.0.0/bignumber"));
82
+ // @ts-ignore
83
+ var bip39_2_5_0_1 = require("@airgap/coinlib-core/dependencies/src/bip39-2.5.0");
84
+ // @ts-ignore
85
+ var bitcoinJS = __importStar(require("@airgap/coinlib-core/dependencies/src/bitgo-utxo-lib-5d91049fd7a988382df81c8260e244ee56d57aac/src"));
86
+ var errors_1 = require("@airgap/coinlib-core/errors");
87
+ var coinlib_error_1 = require("@airgap/coinlib-core/errors/coinlib-error");
88
+ var array_1 = require("@airgap/coinlib-core/utils/array");
89
+ var SubstrateAccountController_1 = require("@airgap/substrate/v0/protocol/common/SubstrateAccountController");
90
+ var MoonbeamAddress_1 = require("@airgap/substrate/v0/protocol/moonbeam/MoonbeamAddress");
91
+ var MoonbeamCandidateMetadata_1 = require("../data/staking/MoonbeamCandidateMetadata");
92
+ var MoonbeamDelegationScheduledRequests_1 = require("../data/staking/MoonbeamDelegationScheduledRequests");
93
+ var MoonbeamDelegator_1 = require("../data/staking/MoonbeamDelegator");
94
+ var MoonbeamStakingActionType_1 = require("../data/staking/MoonbeamStakingActionType");
95
+ var MoonbeamAccountController = /** @class */ (function (_super) {
96
+ __extends(MoonbeamAccountController, _super);
97
+ function MoonbeamAccountController() {
98
+ return _super !== null && _super.apply(this, arguments) || this;
99
+ }
100
+ MoonbeamAccountController.prototype.createKeyPairFromMnemonic = function (mnemonic, derivationPath, password) {
101
+ return __awaiter(this, void 0, void 0, function () {
102
+ var secret;
103
+ return __generator(this, function (_a) {
104
+ secret = (0, bip39_2_5_0_1.mnemonicToSeed)(mnemonic || '', password);
105
+ return [2 /*return*/, this.createKeyPairFromHexSecret(Buffer.from(secret).toString('hex'), derivationPath)];
106
+ });
107
+ });
108
+ };
109
+ MoonbeamAccountController.prototype.createKeyPairFromHexSecret = function (secret, derivationPath) {
110
+ return __awaiter(this, void 0, void 0, function () {
111
+ var ethereumNode, hdNode;
112
+ return __generator(this, function (_a) {
113
+ ethereumNode = bitcoinJS.HDNode.fromSeedHex(secret, bitcoinJS.networks.bitcoin);
114
+ hdNode = ethereumNode.derivePath(derivationPath);
115
+ return [2 /*return*/, {
116
+ privateKey: hdNode.keyPair.d.toBuffer(32),
117
+ publicKey: hdNode.neutered().getPublicKeyBuffer().toString('hex')
118
+ }];
119
+ });
120
+ });
121
+ };
122
+ MoonbeamAccountController.prototype.createAddressFromPublicKey = function (publicKey) {
123
+ return __awaiter(this, void 0, void 0, function () {
124
+ return __generator(this, function (_a) {
125
+ return [2 /*return*/, MoonbeamAddress_1.MoonbeamAddress.from(publicKey)];
126
+ });
127
+ });
128
+ };
129
+ MoonbeamAccountController.prototype.isDelegating = function (accountId) {
130
+ return __awaiter(this, void 0, void 0, function () {
131
+ var delegatorState;
132
+ return __generator(this, function (_a) {
133
+ switch (_a.label) {
134
+ case 0: return [4 /*yield*/, this.nodeClient.getDelegatorState(MoonbeamAddress_1.MoonbeamAddress.from(accountId))];
135
+ case 1:
136
+ delegatorState = _a.sent();
137
+ return [2 /*return*/, delegatorState ? delegatorState.delegations.elements.length > 0 : false];
138
+ }
139
+ });
140
+ });
141
+ };
142
+ MoonbeamAccountController.prototype.getMinDelegationAmount = function (accountId) {
143
+ return __awaiter(this, void 0, void 0, function () {
144
+ var isDelegating, minAmount, _a;
145
+ return __generator(this, function (_b) {
146
+ switch (_b.label) {
147
+ case 0: return [4 /*yield*/, this.isDelegating(accountId)];
148
+ case 1:
149
+ isDelegating = _b.sent();
150
+ if (!isDelegating) return [3 /*break*/, 3];
151
+ return [4 /*yield*/, this.nodeClient.getMinDelegation()];
152
+ case 2:
153
+ _a = _b.sent();
154
+ return [3 /*break*/, 5];
155
+ case 3: return [4 /*yield*/, this.nodeClient.getMinDelegatorStake()];
156
+ case 4:
157
+ _a = _b.sent();
158
+ _b.label = 5;
159
+ case 5:
160
+ minAmount = _a;
161
+ if (!minAmount) {
162
+ throw new errors_1.OperationFailedError(coinlib_error_1.Domain.SUBSTRATE, 'Could not fetch network constants');
163
+ }
164
+ return [2 /*return*/, minAmount.toFixed()];
165
+ }
166
+ });
167
+ });
168
+ };
169
+ MoonbeamAccountController.prototype.getCurrentCollators = function (accountId) {
170
+ return __awaiter(this, void 0, void 0, function () {
171
+ var delegatorState;
172
+ return __generator(this, function (_a) {
173
+ switch (_a.label) {
174
+ case 0: return [4 /*yield*/, this.nodeClient.getDelegatorState(MoonbeamAddress_1.MoonbeamAddress.from(accountId))];
175
+ case 1:
176
+ delegatorState = _a.sent();
177
+ if (delegatorState) {
178
+ return [2 /*return*/, delegatorState.delegations.elements.map(function (collatorDetails) { return collatorDetails.owner.asAddress(); })];
179
+ }
180
+ return [2 /*return*/, []];
181
+ }
182
+ });
183
+ });
184
+ };
185
+ MoonbeamAccountController.prototype.getDelegatorDetails = function (accountId) {
186
+ var _a, _b;
187
+ return __awaiter(this, void 0, void 0, function () {
188
+ var address, results, balance, delegatorState, totalBond, status;
189
+ var _c;
190
+ return __generator(this, function (_d) {
191
+ switch (_d.label) {
192
+ case 0:
193
+ address = MoonbeamAddress_1.MoonbeamAddress.from(accountId);
194
+ return [4 /*yield*/, Promise.all([this.getBalance(address), this.nodeClient.getDelegatorState(address)])];
195
+ case 1:
196
+ results = _d.sent();
197
+ balance = results[0];
198
+ delegatorState = results[1];
199
+ if (!balance) {
200
+ return [2 /*return*/, Promise.reject('Could not fetch delegator details.')];
201
+ }
202
+ totalBond = (_a = delegatorState === null || delegatorState === void 0 ? void 0 : delegatorState.total.value) !== null && _a !== void 0 ? _a : new bignumber_1.default(0);
203
+ switch (delegatorState === null || delegatorState === void 0 ? void 0 : delegatorState.status.type.value) {
204
+ case MoonbeamDelegator_1.MoonbeamDelegatorStatusRaw.ACTIVE:
205
+ status = 'Active';
206
+ break;
207
+ case MoonbeamDelegator_1.MoonbeamDelegatorStatusRaw.LEAVING:
208
+ status = 'Leaving';
209
+ break;
210
+ }
211
+ _c = {
212
+ address: address.asString(),
213
+ balance: balance.toString(),
214
+ totalBond: totalBond.toString(),
215
+ delegatees: (_b = delegatorState === null || delegatorState === void 0 ? void 0 : delegatorState.delegations.elements.map(function (bond) { return bond.owner.asAddress(); })) !== null && _b !== void 0 ? _b : []
216
+ };
217
+ return [4 /*yield*/, this.getStakingActions(delegatorState)];
218
+ case 2: return [2 /*return*/, (_c.availableActions = _d.sent(),
219
+ _c.status = status,
220
+ _c)];
221
+ }
222
+ });
223
+ });
224
+ };
225
+ MoonbeamAccountController.prototype.getCollatorDetails = function (accountId) {
226
+ return __awaiter(this, void 0, void 0, function () {
227
+ var address, results, candidateInfo, commission, status;
228
+ return __generator(this, function (_a) {
229
+ switch (_a.label) {
230
+ case 0:
231
+ address = MoonbeamAddress_1.MoonbeamAddress.from(accountId);
232
+ return [4 /*yield*/, Promise.all([this.nodeClient.getCandidateInfo(address), this.nodeClient.getCollatorCommission()])];
233
+ case 1:
234
+ results = _a.sent();
235
+ candidateInfo = results[0];
236
+ commission = results[1];
237
+ if (!candidateInfo || !commission) {
238
+ return [2 /*return*/, Promise.reject('Could not fetch collator details.')];
239
+ }
240
+ switch (candidateInfo.status.value) {
241
+ case MoonbeamCandidateMetadata_1.MoonbeamCollatorStatus.ACTIVE:
242
+ status = 'Active';
243
+ break;
244
+ case MoonbeamCandidateMetadata_1.MoonbeamCollatorStatus.IDLE:
245
+ status = 'Idle';
246
+ break;
247
+ case MoonbeamCandidateMetadata_1.MoonbeamCollatorStatus.LEAVING:
248
+ status = 'Leaving';
249
+ }
250
+ return [2 /*return*/, {
251
+ address: address.asString(),
252
+ status: status,
253
+ minEligibleBalance: candidateInfo.lowestTopDelegationAmount.toString(),
254
+ ownStakingBalance: candidateInfo.bond.toString(),
255
+ totalStakingBalance: candidateInfo.totalCounted.toString(),
256
+ commission: commission.dividedBy(1000000000).toString(),
257
+ delegators: candidateInfo.delegationCount.toNumber()
258
+ }];
259
+ }
260
+ });
261
+ });
262
+ };
263
+ MoonbeamAccountController.prototype.getDelegationDetails = function (accountId, collator) {
264
+ var _a, _b, _c, _d, _e;
265
+ return __awaiter(this, void 0, void 0, function () {
266
+ var delegatorAddress, collatorAddress, results, balance, delegatorState, collatorDetails, delegationScheduledRequests, currentRound, bond, totalBond, status, delegatorDetails, changeRequest;
267
+ var _f;
268
+ return __generator(this, function (_g) {
269
+ switch (_g.label) {
270
+ case 0:
271
+ delegatorAddress = MoonbeamAddress_1.MoonbeamAddress.from(accountId);
272
+ collatorAddress = MoonbeamAddress_1.MoonbeamAddress.from(collator);
273
+ return [4 /*yield*/, Promise.all([
274
+ this.getBalance(delegatorAddress),
275
+ this.nodeClient.getDelegatorState(delegatorAddress),
276
+ this.getCollatorDetails(collator),
277
+ this.nodeClient.getDelegationScheduledRequests(collatorAddress),
278
+ this.nodeClient.getRound()
279
+ ])];
280
+ case 1:
281
+ results = _g.sent();
282
+ balance = results[0];
283
+ delegatorState = results[1];
284
+ collatorDetails = results[2];
285
+ delegationScheduledRequests = results[3];
286
+ currentRound = (_a = results[4]) === null || _a === void 0 ? void 0 : _a.current;
287
+ if (!balance || !collatorDetails) {
288
+ return [2 /*return*/, Promise.reject('Could not fetch delegation details.')];
289
+ }
290
+ bond = (_c = (_b = delegatorState === null || delegatorState === void 0 ? void 0 : delegatorState.delegations.elements.find(function (bond) { return bond.owner.compare(collator) === 0; })) === null || _b === void 0 ? void 0 : _b.amount.value) !== null && _c !== void 0 ? _c : new bignumber_1.default(0);
291
+ totalBond = (_d = delegatorState === null || delegatorState === void 0 ? void 0 : delegatorState.total.value) !== null && _d !== void 0 ? _d : new bignumber_1.default(0);
292
+ switch (delegatorState === null || delegatorState === void 0 ? void 0 : delegatorState.status.type.value) {
293
+ case MoonbeamDelegator_1.MoonbeamDelegatorStatusRaw.ACTIVE:
294
+ status = 'Active';
295
+ break;
296
+ case MoonbeamDelegator_1.MoonbeamDelegatorStatusRaw.LEAVING:
297
+ status = (currentRound === null || currentRound === void 0 ? void 0 : currentRound.gte(delegatorState.status.roundIndex)) ? 'ReadyToLeave' : 'Leaving';
298
+ break;
299
+ }
300
+ _f = {
301
+ address: delegatorAddress.asString(),
302
+ balance: balance.toString(),
303
+ totalBond: totalBond.toString(),
304
+ delegatees: (_e = delegatorState === null || delegatorState === void 0 ? void 0 : delegatorState.delegations.elements.map(function (bond) { return bond.owner.asAddress(); })) !== null && _e !== void 0 ? _e : []
305
+ };
306
+ return [4 /*yield*/, this.getStakingActions(delegatorState, collatorDetails, delegationScheduledRequests)];
307
+ case 2:
308
+ delegatorDetails = (_f.availableActions = _g.sent(),
309
+ _f.status = status,
310
+ _f);
311
+ changeRequest = delegationScheduledRequests === null || delegationScheduledRequests === void 0 ? void 0 : delegationScheduledRequests.requests.elements.find(function (request) { return request.delegator.asAddress() === delegatorDetails.address; });
312
+ return [2 /*return*/, {
313
+ delegatorDetails: delegatorDetails,
314
+ collatorDetails: collatorDetails,
315
+ bond: bond.toString(),
316
+ pendingRequest: changeRequest
317
+ ? {
318
+ type: changeRequest.action.type.value === MoonbeamDelegationScheduledRequests_1.MoonbeamDelegationActionRaw.REVOKE ? 'revoke' : 'decrease',
319
+ amount: changeRequest.action.amount.toString(),
320
+ executableIn: currentRound
321
+ ? bignumber_1.default.max(changeRequest.whenExecutable.value.minus(currentRound.value), 0).toNumber()
322
+ : undefined
323
+ }
324
+ : undefined
325
+ }];
326
+ }
327
+ });
328
+ });
329
+ };
330
+ MoonbeamAccountController.prototype.getStakingActions = function (delegator, collator, delegationScheduledRequests) {
331
+ var _a, _b;
332
+ return __awaiter(this, void 0, void 0, function () {
333
+ var actions, scheduledLeaving, _c, scheduledRequests, delegations, maxDelegations, canDelegateToCollator, isDelegatingCollator, currentRound, _d, _e, _f, _g, _h, _j, _k;
334
+ return __generator(this, function (_l) {
335
+ switch (_l.label) {
336
+ case 0:
337
+ actions = [];
338
+ if (!delegator) return [3 /*break*/, 2];
339
+ return [4 /*yield*/, this.getScheduledLeaving(delegator)];
340
+ case 1:
341
+ _c = _l.sent();
342
+ return [3 /*break*/, 3];
343
+ case 2:
344
+ _c = undefined;
345
+ _l.label = 3;
346
+ case 3:
347
+ scheduledLeaving = _c;
348
+ scheduledRequests = delegationScheduledRequests
349
+ ? delegator && collator
350
+ ? delegationScheduledRequests.requests.elements.filter(function (value) { return value.delegator.asAddress() === delegator.id.asAddress(); })
351
+ : []
352
+ : undefined;
353
+ delegations = (_a = delegator === null || delegator === void 0 ? void 0 : delegator.delegations.elements) !== null && _a !== void 0 ? _a : [];
354
+ return [4 /*yield*/, this.nodeClient.getMaxDelegationsPerDelegator()];
355
+ case 4:
356
+ maxDelegations = _l.sent();
357
+ canDelegateToCollator = (maxDelegations === null || maxDelegations === void 0 ? void 0 : maxDelegations.gt(delegations.length)) && collator && !delegations.some(function (bond) { return bond.owner.compare(collator.address) === 0; });
358
+ isDelegatingCollator = !!collator && delegations.some(function (bond) { return bond.owner.compare(collator.address) === 0; });
359
+ if (!(scheduledLeaving || scheduledRequests)) return [3 /*break*/, 6];
360
+ return [4 /*yield*/, this.nodeClient.getRound()];
361
+ case 5:
362
+ _d = (_b = (_l.sent())) === null || _b === void 0 ? void 0 : _b.current.value;
363
+ return [3 /*break*/, 7];
364
+ case 6:
365
+ _d = undefined;
366
+ _l.label = 7;
367
+ case 7:
368
+ currentRound = _d;
369
+ if (canDelegateToCollator && !scheduledLeaving && (scheduledRequests === null || scheduledRequests === void 0 ? void 0 : scheduledRequests.length) === 0) {
370
+ actions.push.apply(actions, this.getUndelegatedActions());
371
+ }
372
+ if (delegations.length > 0 && !scheduledLeaving && (scheduledRequests === null || scheduledRequests === void 0 ? void 0 : scheduledRequests.length) === 0) {
373
+ actions.push.apply(actions, this.getDelegatedActions(isDelegatingCollator));
374
+ }
375
+ if (!(scheduledLeaving && currentRound)) return [3 /*break*/, 9];
376
+ _f = (_e = actions.push).apply;
377
+ _g = [actions];
378
+ return [4 /*yield*/, this.getLeavingActions(currentRound, scheduledLeaving)];
379
+ case 8:
380
+ _f.apply(_e, _g.concat([(_l.sent())]));
381
+ _l.label = 9;
382
+ case 9:
383
+ if (!(scheduledRequests && scheduledRequests.length > 0 && currentRound)) return [3 /*break*/, 11];
384
+ _j = (_h = actions.push).apply;
385
+ _k = [actions];
386
+ return [4 /*yield*/, this.getRequestActions(currentRound, scheduledRequests)];
387
+ case 10:
388
+ _j.apply(_h, _k.concat([(_l.sent())]));
389
+ _l.label = 11;
390
+ case 11: return [2 /*return*/, actions];
391
+ }
392
+ });
393
+ });
394
+ };
395
+ MoonbeamAccountController.prototype.getScheduledLeaving = function (delegator) {
396
+ return __awaiter(this, void 0, void 0, function () {
397
+ var allDelegationScheduledRequests;
398
+ var _this = this;
399
+ return __generator(this, function (_a) {
400
+ switch (_a.label) {
401
+ case 0:
402
+ if (delegator.status instanceof MoonbeamDelegator_1.MoonbeamDelegatorStatusLeaving) {
403
+ return [2 /*return*/, delegator.status.roundIndex.value];
404
+ }
405
+ return [4 /*yield*/, Promise.all(delegator.delegations.elements.map(function (bond) {
406
+ var collator = MoonbeamAddress_1.MoonbeamAddress.from(bond.owner.address);
407
+ return _this.nodeClient.getDelegationScheduledRequests(collator);
408
+ }))];
409
+ case 1:
410
+ allDelegationScheduledRequests = _a.sent();
411
+ return [2 /*return*/, allDelegationScheduledRequests.reduce(function (acc, requests) {
412
+ var _a;
413
+ if (acc === undefined) {
414
+ return undefined;
415
+ }
416
+ var whenExecutable = (_a = requests === null || requests === void 0 ? void 0 : requests.requests.elements.find(function (request) {
417
+ request.delegator.asAddress() === delegator.id.asAddress() && request.action.type.value === MoonbeamDelegationScheduledRequests_1.MoonbeamDelegationActionRaw.REVOKE;
418
+ })) === null || _a === void 0 ? void 0 : _a.whenExecutable.value;
419
+ if (whenExecutable === undefined) {
420
+ return undefined;
421
+ }
422
+ if (acc.eq(whenExecutable) || acc.eq(-1)) {
423
+ return whenExecutable;
424
+ }
425
+ else {
426
+ return undefined;
427
+ }
428
+ }, new bignumber_1.default(-1))];
429
+ }
430
+ });
431
+ });
432
+ };
433
+ MoonbeamAccountController.prototype.getUndelegatedActions = function () {
434
+ return [
435
+ {
436
+ type: MoonbeamStakingActionType_1.MoonbeamStakingActionType.DELEGATE,
437
+ args: ['candidate', 'amount']
438
+ }
439
+ ];
440
+ };
441
+ MoonbeamAccountController.prototype.getDelegatedActions = function (isDelegatingCollator) {
442
+ var actions = [];
443
+ actions.push({
444
+ type: MoonbeamStakingActionType_1.MoonbeamStakingActionType.SCHEDULE_UNDELEGATE_ALL
445
+ });
446
+ if (isDelegatingCollator) {
447
+ actions.push({
448
+ type: MoonbeamStakingActionType_1.MoonbeamStakingActionType.BOND_MORE,
449
+ args: ['candidate', 'more']
450
+ }, {
451
+ type: MoonbeamStakingActionType_1.MoonbeamStakingActionType.SCHEDULE_BOND_LESS,
452
+ args: ['candidate', 'less']
453
+ }, {
454
+ type: MoonbeamStakingActionType_1.MoonbeamStakingActionType.SCHEDULE_UNDELEGATE,
455
+ args: ['collator']
456
+ });
457
+ }
458
+ return actions;
459
+ };
460
+ MoonbeamAccountController.prototype.getLeavingActions = function (currentRound, scheduledLeaving) {
461
+ return __awaiter(this, void 0, void 0, function () {
462
+ return __generator(this, function (_a) {
463
+ if (currentRound.gte(scheduledLeaving)) {
464
+ return [2 /*return*/, [
465
+ {
466
+ type: MoonbeamStakingActionType_1.MoonbeamStakingActionType.EXECUTE_UNDELEGATE_ALL
467
+ }
468
+ ]];
469
+ }
470
+ else {
471
+ return [2 /*return*/, [
472
+ {
473
+ type: MoonbeamStakingActionType_1.MoonbeamStakingActionType.CANCEL_UNDELEGATE_ALL
474
+ }
475
+ ]];
476
+ }
477
+ return [2 /*return*/];
478
+ });
479
+ });
480
+ };
481
+ MoonbeamAccountController.prototype.getRequestActions = function (currentRound, scheduledRequests) {
482
+ return __awaiter(this, void 0, void 0, function () {
483
+ var actions;
484
+ var _this = this;
485
+ return __generator(this, function (_a) {
486
+ switch (_a.label) {
487
+ case 0: return [4 /*yield*/, Promise.all(scheduledRequests.map(function (request) {
488
+ if (request.action.type.value === MoonbeamDelegationScheduledRequests_1.MoonbeamDelegationActionRaw.REVOKE) {
489
+ return _this.getRevokeRequestActions(currentRound, request);
490
+ }
491
+ if (request.action.type.value === MoonbeamDelegationScheduledRequests_1.MoonbeamDelegationActionRaw.DECREASE) {
492
+ return _this.getDecreaseRequestActions(currentRound, request);
493
+ }
494
+ return [];
495
+ }))];
496
+ case 1:
497
+ actions = _a.sent();
498
+ return [2 /*return*/, (0, array_1.flattenArray)(actions)];
499
+ }
500
+ });
501
+ });
502
+ };
503
+ MoonbeamAccountController.prototype.getRevokeRequestActions = function (currentRound, scheduledRequest) {
504
+ return __awaiter(this, void 0, void 0, function () {
505
+ return __generator(this, function (_a) {
506
+ if (currentRound.gte(scheduledRequest.whenExecutable.value)) {
507
+ return [2 /*return*/, [
508
+ {
509
+ type: MoonbeamStakingActionType_1.MoonbeamStakingActionType.EXECUTE_UNDELEGATE,
510
+ args: ['candidate']
511
+ }
512
+ ]];
513
+ }
514
+ else {
515
+ return [2 /*return*/, [
516
+ {
517
+ type: MoonbeamStakingActionType_1.MoonbeamStakingActionType.CANCEL_UNDELEGATE,
518
+ args: ['candidate']
519
+ }
520
+ ]];
521
+ }
522
+ return [2 /*return*/];
523
+ });
524
+ });
525
+ };
526
+ MoonbeamAccountController.prototype.getDecreaseRequestActions = function (currentRound, scheduledRequest) {
527
+ return __awaiter(this, void 0, void 0, function () {
528
+ return __generator(this, function (_a) {
529
+ if (currentRound.gte(scheduledRequest.whenExecutable.value)) {
530
+ return [2 /*return*/, [
531
+ {
532
+ type: MoonbeamStakingActionType_1.MoonbeamStakingActionType.EXECUTE_BOND_LESS,
533
+ args: ['candidate']
534
+ }
535
+ ]];
536
+ }
537
+ else {
538
+ return [2 /*return*/, [
539
+ {
540
+ type: MoonbeamStakingActionType_1.MoonbeamStakingActionType.CANCEL_BOND_LESS
541
+ }
542
+ ]];
543
+ }
544
+ return [2 /*return*/];
545
+ });
546
+ });
547
+ };
548
+ return MoonbeamAccountController;
549
+ }(SubstrateAccountController_1.SubstrateAccountController));
550
+ exports.MoonbeamAccountController = MoonbeamAccountController;
551
+ //# sourceMappingURL=MoonbeamAccountController.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MoonbeamAccountController.js","sourceRoot":"","sources":["../../../../../src/v0/protocol/moonbeam/controllers/MoonbeamAccountController.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /// <reference types="node" />
2
+ import { SubstrateSignatureType } from '@airgap/substrate/v0/protocol/common/data/transaction/SubstrateSignature';
3
+ import { SubstrateTransaction } from '@airgap/substrate/v0/protocol/common/data/transaction/SubstrateTransaction';
4
+ import { SubstrateTransactionController } from '@airgap/substrate/v0/protocol/common/SubstrateTransactionController';
5
+ import { SubstrateNetwork } from '@airgap/substrate/v0/protocol/SubstrateNetwork';
6
+ export declare class MoonbeamTransactionController extends SubstrateTransactionController<SubstrateNetwork.MOONBEAM> {
7
+ getDefaultSignatureType(): SubstrateSignatureType;
8
+ signTransaction(privateKey: Buffer, transaction: SubstrateTransaction<SubstrateNetwork.MOONBEAM>, payload: string): Promise<SubstrateTransaction<SubstrateNetwork.MOONBEAM>>;
9
+ }