@bitgo/account-lib 2.17.2-2.17.2-rc.0.0 → 2.17.2-rc.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 (98) hide show
  1. package/dist/browser/bitgo-account-lib.min.js +1 -1
  2. package/dist/browser/bitgo-account-lib.min.js.LICENSE.txt +132 -0
  3. package/dist/package.json +10 -3
  4. package/dist/resources/dot/index.ts +2 -0
  5. package/dist/resources/dot/mainnet.ts +2 -0
  6. package/dist/resources/dot/westend.ts +2 -0
  7. package/dist/resources/trx/protobuf/tron.js~account-lib_master +31380 -0
  8. package/dist/src/coin/algo/keyExclusionBuilder.d.ts +9 -0
  9. package/dist/src/coin/algo/keyExclusionBuilder.d.ts.map +1 -0
  10. package/dist/src/coin/algo/keyExclusionBuilder.js +83 -0
  11. package/dist/src/coin/baseCoin/baseTransactionBuilder.d.ts.map +1 -1
  12. package/dist/src/coin/baseCoin/baseTransactionBuilder.js +1 -1
  13. package/dist/src/coin/cspr/utils.js +2 -2
  14. package/dist/src/coin/dot/errors.d.ts +8 -0
  15. package/dist/src/coin/dot/errors.d.ts.map +1 -0
  16. package/dist/src/coin/dot/errors.js +40 -0
  17. package/dist/src/coin/dot/iface.d.ts +154 -0
  18. package/dist/src/coin/dot/iface.d.ts.map +1 -0
  19. package/dist/src/coin/dot/iface.js +15 -0
  20. package/dist/src/coin/dot/index.d.ts +5 -0
  21. package/dist/src/coin/dot/index.d.ts.map +1 -1
  22. package/dist/src/coin/dot/index.js +12 -2
  23. package/dist/src/coin/dot/keyPair.d.ts +15 -2
  24. package/dist/src/coin/dot/keyPair.d.ts.map +1 -1
  25. package/dist/src/coin/dot/keyPair.js +41 -6
  26. package/dist/src/coin/dot/stakingBuilder.d.ts +59 -0
  27. package/dist/src/coin/dot/stakingBuilder.d.ts.map +1 -0
  28. package/dist/src/coin/dot/stakingBuilder.js +162 -0
  29. package/dist/src/coin/dot/transaction.d.ts +31 -3
  30. package/dist/src/coin/dot/transaction.d.ts.map +1 -1
  31. package/dist/src/coin/dot/transaction.js +269 -7
  32. package/dist/src/coin/dot/transactionBuilder.d.ts +102 -9
  33. package/dist/src/coin/dot/transactionBuilder.d.ts.map +1 -1
  34. package/dist/src/coin/dot/transactionBuilder.js +309 -15
  35. package/dist/src/coin/dot/transactionBuilderFactory.d.ts +13 -16
  36. package/dist/src/coin/dot/transactionBuilderFactory.d.ts.map +1 -1
  37. package/dist/src/coin/dot/transactionBuilderFactory.js +60 -25
  38. package/dist/src/coin/dot/transferBuilder.d.ts +62 -4
  39. package/dist/src/coin/dot/transferBuilder.d.ts.map +1 -1
  40. package/dist/src/coin/dot/transferBuilder.js +161 -44
  41. package/dist/src/coin/dot/txnSchema.d.ts +10 -0
  42. package/dist/src/coin/dot/txnSchema.d.ts.map +1 -0
  43. package/dist/src/coin/dot/txnSchema.js +84 -0
  44. package/dist/src/coin/dot/unstakeBuilder.d.ts +38 -0
  45. package/dist/src/coin/dot/unstakeBuilder.d.ts.map +1 -0
  46. package/dist/src/coin/dot/unstakeBuilder.js +116 -0
  47. package/dist/src/coin/dot/utils.d.ts +69 -0
  48. package/dist/src/coin/dot/utils.d.ts.map +1 -1
  49. package/dist/src/coin/dot/utils.js +144 -4
  50. package/dist/src/coin/dot/walletInitializationBuilder.d.ts +51 -5
  51. package/dist/src/coin/dot/walletInitializationBuilder.d.ts.map +1 -1
  52. package/dist/src/coin/dot/walletInitializationBuilder.js +112 -44
  53. package/dist/src/coin/sol/constants.d.ts +24 -0
  54. package/dist/src/coin/sol/constants.d.ts.map +1 -0
  55. package/dist/src/coin/sol/constants.js +35 -0
  56. package/dist/src/coin/sol/iface.d.ts +47 -0
  57. package/dist/src/coin/sol/iface.d.ts.map +1 -0
  58. package/dist/src/coin/sol/iface.js +3 -0
  59. package/dist/src/coin/sol/index.d.ts +5 -0
  60. package/dist/src/coin/sol/index.d.ts.map +1 -0
  61. package/dist/src/coin/sol/index.js +29 -0
  62. package/dist/src/coin/sol/instructionParamsFactory.d.ts +12 -0
  63. package/dist/src/coin/sol/instructionParamsFactory.d.ts.map +1 -0
  64. package/dist/src/coin/sol/instructionParamsFactory.js +99 -0
  65. package/dist/src/coin/sol/keyPair.d.ts +45 -0
  66. package/dist/src/coin/sol/keyPair.d.ts.map +1 -0
  67. package/dist/src/coin/sol/keyPair.js +128 -0
  68. package/dist/src/coin/sol/solInstructionFactory.d.ts +10 -0
  69. package/dist/src/coin/sol/solInstructionFactory.d.ts.map +1 -0
  70. package/dist/src/coin/sol/solInstructionFactory.js +102 -0
  71. package/dist/src/coin/sol/transaction.d.ts +48 -0
  72. package/dist/src/coin/sol/transaction.d.ts.map +1 -0
  73. package/dist/src/coin/sol/transaction.js +254 -0
  74. package/dist/src/coin/sol/transactionBuilder.d.ts +96 -0
  75. package/dist/src/coin/sol/transactionBuilder.d.ts.map +1 -0
  76. package/dist/src/coin/sol/transactionBuilder.js +316 -0
  77. package/dist/src/coin/sol/transactionBuilderFactory.d.ts +34 -0
  78. package/dist/src/coin/sol/transactionBuilderFactory.d.ts.map +1 -0
  79. package/dist/src/coin/sol/transactionBuilderFactory.js +86 -0
  80. package/dist/src/coin/sol/transferBuilder.d.ts +26 -0
  81. package/dist/src/coin/sol/transferBuilder.d.ts.map +1 -0
  82. package/dist/src/coin/sol/transferBuilder.js +140 -0
  83. package/dist/src/coin/sol/utils.d.ts +104 -0
  84. package/dist/src/coin/sol/utils.d.ts.map +1 -0
  85. package/dist/src/coin/sol/utils.js +244 -0
  86. package/dist/src/coin/sol/walletInitializationBuilder.d.ts +26 -0
  87. package/dist/src/coin/sol/walletInitializationBuilder.d.ts.map +1 -0
  88. package/dist/src/coin/sol/walletInitializationBuilder.js +141 -0
  89. package/dist/src/index.d.ts +4 -0
  90. package/dist/src/index.d.ts.map +1 -1
  91. package/dist/src/index.js +10 -2
  92. package/dist/src/utils/crypto.d.ts +8 -0
  93. package/dist/src/utils/crypto.d.ts.map +1 -1
  94. package/dist/src/utils/crypto.js +13 -2
  95. package/package.json +10 -3
  96. package/resources/dot/index.ts +2 -0
  97. package/resources/dot/mainnet.ts +2 -0
  98. package/resources/dot/westend.ts +2 -0
@@ -18,39 +18,74 @@ Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.TransactionBuilderFactory = void 0;
19
19
  var baseCoin_1 = require("../baseCoin");
20
20
  var errors_1 = require("../baseCoin/errors");
21
+ var txwrapper_polkadot_1 = require("@substrate/txwrapper-polkadot");
21
22
  var transferBuilder_1 = require("./transferBuilder");
22
23
  var walletInitializationBuilder_1 = require("./walletInitializationBuilder");
24
+ var stakingBuilder_1 = require("./stakingBuilder");
25
+ var iface_1 = require("./iface");
26
+ var _1 = require(".");
23
27
  var TransactionBuilderFactory = /** @class */ (function (_super) {
24
28
  __extends(TransactionBuilderFactory, _super);
25
29
  function TransactionBuilderFactory(_coinConfig) {
26
- return _super.call(this, _coinConfig) || this;
30
+ var _this = _super.call(this, _coinConfig) || this;
31
+ _this.staticsConfig();
32
+ return _this;
27
33
  }
28
- /** @inheritdoc */
29
- TransactionBuilderFactory.prototype.from = function (raw) {
30
- throw new errors_1.NotImplementedError('from not implemented');
31
- };
32
- /** @inheritdoc */
33
- TransactionBuilderFactory.prototype.getWalletInitializationBuilder = function (tx) {
34
- return TransactionBuilderFactory.initializeBuilder(tx, new walletInitializationBuilder_1.WalletInitializationBuilder(this._coinConfig));
35
- };
36
- /** @inheritdoc */
37
- TransactionBuilderFactory.prototype.getTransferBuilder = function (tx) {
38
- return TransactionBuilderFactory.initializeBuilder(tx, new transferBuilder_1.TransferBuilder(this._coinConfig));
39
- };
40
- /**
41
- * Initialize the builder with the given transaction
42
- *
43
- * @param {Transaction | undefined} tx - the transaction used to initialize the builder
44
- * @param {TransactionBuilder} builder - the builder to be initialized
45
- * @returns {TransactionBuilder} the builder initialized
46
- */
47
- TransactionBuilderFactory.initializeBuilder = function (tx, builder) {
48
- if (tx) {
49
- builder.initBuilder(tx);
50
- }
34
+ TransactionBuilderFactory.prototype.getTransferBuilder = function () {
35
+ return new transferBuilder_1.TransferBuilder(this._coinConfig);
36
+ };
37
+ TransactionBuilderFactory.prototype.getStakingBuilder = function () {
38
+ return new stakingBuilder_1.StakingBuilder(this._coinConfig);
39
+ };
40
+ TransactionBuilderFactory.prototype.getWalletInitializationBuilder = function () {
41
+ return new walletInitializationBuilder_1.WalletInitializationBuilder(this._coinConfig);
42
+ };
43
+ TransactionBuilderFactory.prototype.getUnstakeBuilder = function () {
44
+ return new _1.UnstakeBuilder(this._coinConfig);
45
+ };
46
+ TransactionBuilderFactory.prototype.from = function (rawTxn) {
47
+ var builder = this.getBuilder(rawTxn);
48
+ builder.from(rawTxn);
51
49
  return builder;
52
50
  };
51
+ TransactionBuilderFactory.prototype.staticsConfig = function () {
52
+ var networkConfig = this._coinConfig.network;
53
+ var specName = networkConfig.specName, specVersion = networkConfig.specVersion, chainName = networkConfig.chainName, metadataRpc = networkConfig.metadataRpc;
54
+ this._metadataRpc = metadataRpc;
55
+ this._registry = txwrapper_polkadot_1.getRegistry({
56
+ chainName: chainName,
57
+ specName: specName,
58
+ specVersion: specVersion,
59
+ metadataRpc: metadataRpc,
60
+ });
61
+ };
62
+ TransactionBuilderFactory.prototype.getBuilder = function (rawTxn) {
63
+ var _a;
64
+ if (!this._registry || !this._metadataRpc) {
65
+ throw new errors_1.BuildTransactionError('Please set the network before parsing the transaction');
66
+ }
67
+ var decodedTxn = txwrapper_polkadot_1.decode(rawTxn, {
68
+ metadataRpc: this._metadataRpc,
69
+ registry: this._registry,
70
+ });
71
+ var methodName = (_a = decodedTxn.method) === null || _a === void 0 ? void 0 : _a.name;
72
+ if (methodName === iface_1.MethodNames.TransferKeepAlive || methodName === iface_1.MethodNames.Proxy) {
73
+ return this.getTransferBuilder();
74
+ }
75
+ else if (methodName === iface_1.MethodNames.Bond) {
76
+ return this.getStakingBuilder();
77
+ }
78
+ else if (methodName === iface_1.MethodNames.AddProxy) {
79
+ return this.getWalletInitializationBuilder();
80
+ }
81
+ else if (methodName === iface_1.MethodNames.Unbond) {
82
+ return this.getUnstakeBuilder();
83
+ }
84
+ else {
85
+ throw new errors_1.NotSupported('Transaction cannot be parsed or has an unsupported transaction type');
86
+ }
87
+ };
53
88
  return TransactionBuilderFactory;
54
89
  }(baseCoin_1.BaseTransactionBuilderFactory));
55
90
  exports.TransactionBuilderFactory = TransactionBuilderFactory;
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2luL2RvdC90cmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNBLHdDQUE0RDtBQUM1RCw2Q0FBeUQ7QUFDekQscURBQW9EO0FBQ3BELDZFQUE0RTtBQUk1RTtJQUErQyw2Q0FBNkI7SUFDMUUsbUNBQVksV0FBaUM7ZUFDM0Msa0JBQU0sV0FBVyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsd0NBQUksR0FBSixVQUFLLEdBQXdCO1FBQzNCLE1BQU0sSUFBSSw0QkFBbUIsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsa0VBQThCLEdBQTlCLFVBQStCLEVBQWdCO1FBQzdDLE9BQU8seUJBQXlCLENBQUMsaUJBQWlCLENBQUMsRUFBRSxFQUFFLElBQUkseURBQTJCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDNUcsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixzREFBa0IsR0FBbEIsVUFBbUIsRUFBZ0I7UUFDakMsT0FBTyx5QkFBeUIsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLEVBQUUsSUFBSSxpQ0FBZSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQ2hHLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDWSwyQ0FBaUIsR0FBaEMsVUFBK0QsRUFBMkIsRUFBRSxPQUFVO1FBQ3BHLElBQUksRUFBRSxFQUFFO1lBQ04sT0FBTyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUN6QjtRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFDSCxnQ0FBQztBQUFELENBQUMsQUFqQ0QsQ0FBK0Msd0NBQTZCLEdBaUMzRTtBQWpDWSw4REFBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IHsgQmFzZVRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkgfSBmcm9tICcuLi9iYXNlQ29pbic7XG5pbXBvcnQgeyBOb3RJbXBsZW1lbnRlZEVycm9yIH0gZnJvbSAnLi4vYmFzZUNvaW4vZXJyb3JzJztcbmltcG9ydCB7IFRyYW5zZmVyQnVpbGRlciB9IGZyb20gJy4vdHJhbnNmZXJCdWlsZGVyJztcbmltcG9ydCB7IFdhbGxldEluaXRpYWxpemF0aW9uQnVpbGRlciB9IGZyb20gJy4vd2FsbGV0SW5pdGlhbGl6YXRpb25CdWlsZGVyJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlciB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uQnVpbGRlckZhY3Rvcnkge1xuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZnJvbShyYXc6IFVpbnQ4QXJyYXkgfCBzdHJpbmcpOiBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICAgIHRocm93IG5ldyBOb3RJbXBsZW1lbnRlZEVycm9yKCdmcm9tIG5vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldFdhbGxldEluaXRpYWxpemF0aW9uQnVpbGRlcih0eD86IFRyYW5zYWN0aW9uKTogV2FsbGV0SW5pdGlhbGl6YXRpb25CdWlsZGVyIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS5pbml0aWFsaXplQnVpbGRlcih0eCwgbmV3IFdhbGxldEluaXRpYWxpemF0aW9uQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKSk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZ2V0VHJhbnNmZXJCdWlsZGVyKHR4PzogVHJhbnNhY3Rpb24pOiBUcmFuc2ZlckJ1aWxkZXIge1xuICAgIHJldHVybiBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LmluaXRpYWxpemVCdWlsZGVyKHR4LCBuZXcgVHJhbnNmZXJCdWlsZGVyKHRoaXMuX2NvaW5Db25maWcpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplIHRoZSBidWlsZGVyIHdpdGggdGhlIGdpdmVuIHRyYW5zYWN0aW9uXG4gICAqXG4gICAqIEBwYXJhbSB7VHJhbnNhY3Rpb24gfCB1bmRlZmluZWR9IHR4IC0gdGhlIHRyYW5zYWN0aW9uIHVzZWQgdG8gaW5pdGlhbGl6ZSB0aGUgYnVpbGRlclxuICAgKiBAcGFyYW0ge1RyYW5zYWN0aW9uQnVpbGRlcn0gYnVpbGRlciAtIHRoZSBidWlsZGVyIHRvIGJlIGluaXRpYWxpemVkXG4gICAqIEByZXR1cm5zIHtUcmFuc2FjdGlvbkJ1aWxkZXJ9IHRoZSBidWlsZGVyIGluaXRpYWxpemVkXG4gICAqL1xuICBwcml2YXRlIHN0YXRpYyBpbml0aWFsaXplQnVpbGRlcjxUIGV4dGVuZHMgVHJhbnNhY3Rpb25CdWlsZGVyPih0eDogVHJhbnNhY3Rpb24gfCB1bmRlZmluZWQsIGJ1aWxkZXI6IFQpOiBUIHtcbiAgICBpZiAodHgpIHtcbiAgICAgIGJ1aWxkZXIuaW5pdEJ1aWxkZXIodHgpO1xuICAgIH1cbiAgICByZXR1cm4gYnVpbGRlcjtcbiAgfVxufVxuIl19
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2luL2RvdC90cmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNBLHdDQUE0RDtBQUM1RCw2Q0FBeUU7QUFDekUsb0VBQW9FO0FBR3BFLHFEQUFvRDtBQUNwRCw2RUFBNEU7QUFDNUUsbURBQWtEO0FBQ2xELGlDQUFzQztBQUN0QyxzQkFBbUM7QUFFbkM7SUFBK0MsNkNBQTZCO0lBSTFFLG1DQUFZLFdBQWlDO1FBQTdDLFlBQ0Usa0JBQU0sV0FBVyxDQUFDLFNBRW5CO1FBREMsS0FBSSxDQUFDLGFBQWEsRUFBRSxDQUFDOztJQUN2QixDQUFDO0lBRUQsc0RBQWtCLEdBQWxCO1FBQ0UsT0FBTyxJQUFJLGlDQUFlLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxxREFBaUIsR0FBakI7UUFDRSxPQUFPLElBQUksK0JBQWMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVELGtFQUE4QixHQUE5QjtRQUNFLE9BQU8sSUFBSSx5REFBMkIsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVELHFEQUFpQixHQUFqQjtRQUNFLE9BQU8sSUFBSSxpQkFBYyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRUQsd0NBQUksR0FBSixVQUFLLE1BQWM7UUFDakIsSUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN4QyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3JCLE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFUyxpREFBYSxHQUF2QjtRQUNFLElBQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBcUIsQ0FBQztRQUNyRCxJQUFBLFFBQVEsR0FBMEMsYUFBYSxTQUF2RCxFQUFFLFdBQVcsR0FBNkIsYUFBYSxZQUExQyxFQUFFLFNBQVMsR0FBa0IsYUFBYSxVQUEvQixFQUFFLFdBQVcsR0FBSyxhQUFhLFlBQWxCLENBQW1CO1FBQ3hFLElBQUksQ0FBQyxZQUFZLEdBQUcsV0FBVyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxTQUFTLEdBQUcsZ0NBQVcsQ0FBQztZQUMzQixTQUFTLEVBQUUsU0FBUztZQUNwQixRQUFRLEVBQUUsUUFBUTtZQUNsQixXQUFXLEVBQUUsV0FBVztZQUN4QixXQUFXLEVBQUUsV0FBVztTQUN6QixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sOENBQVUsR0FBbEIsVUFBbUIsTUFBYzs7UUFDL0IsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3pDLE1BQU0sSUFBSSw4QkFBcUIsQ0FBQyx1REFBdUQsQ0FBQyxDQUFDO1NBQzFGO1FBQ0QsSUFBTSxVQUFVLEdBQUcsMkJBQU0sQ0FBQyxNQUFNLEVBQUU7WUFDaEMsV0FBVyxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQzlCLFFBQVEsRUFBRSxJQUFJLENBQUMsU0FBUztTQUN6QixDQUFDLENBQUM7UUFDSCxJQUFNLFVBQVUsR0FBRyxNQUFBLFVBQVUsQ0FBQyxNQUFNLDBDQUFFLElBQUksQ0FBQztRQUMzQyxJQUFJLFVBQVUsS0FBSyxtQkFBVyxDQUFDLGlCQUFpQixJQUFJLFVBQVUsS0FBSyxtQkFBVyxDQUFDLEtBQUssRUFBRTtZQUNwRixPQUFPLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1NBQ2xDO2FBQU0sSUFBSSxVQUFVLEtBQUssbUJBQVcsQ0FBQyxJQUFJLEVBQUU7WUFDMUMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztTQUNqQzthQUFNLElBQUksVUFBVSxLQUFLLG1CQUFXLENBQUMsUUFBUSxFQUFFO1lBQzlDLE9BQU8sSUFBSSxDQUFDLDhCQUE4QixFQUFFLENBQUM7U0FDOUM7YUFBTSxJQUFJLFVBQVUsS0FBSyxtQkFBVyxDQUFDLE1BQU0sRUFBRTtZQUM1QyxPQUFPLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1NBQ2pDO2FBQU07WUFDTCxNQUFNLElBQUkscUJBQVksQ0FBQyxxRUFBcUUsQ0FBQyxDQUFDO1NBQy9GO0lBQ0gsQ0FBQztJQUNILGdDQUFDO0FBQUQsQ0FBQyxBQWhFRCxDQUErQyx3Q0FBNkIsR0FnRTNFO0FBaEVZLDhEQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcsIERvdE5ldHdvcmsgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5pbXBvcnQgeyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSB9IGZyb20gJy4uL2Jhc2VDb2luJztcbmltcG9ydCB7IEJ1aWxkVHJhbnNhY3Rpb25FcnJvciwgTm90U3VwcG9ydGVkIH0gZnJvbSAnLi4vYmFzZUNvaW4vZXJyb3JzJztcbmltcG9ydCB7IGRlY29kZSwgZ2V0UmVnaXN0cnkgfSBmcm9tICdAc3Vic3RyYXRlL3R4d3JhcHBlci1wb2xrYWRvdCc7XG5pbXBvcnQgeyBUeXBlUmVnaXN0cnkgfSBmcm9tICdAc3Vic3RyYXRlL3R4d3JhcHBlci1jb3JlL2xpYi90eXBlcyc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlcic7XG5pbXBvcnQgeyBUcmFuc2ZlckJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zZmVyQnVpbGRlcic7XG5pbXBvcnQgeyBXYWxsZXRJbml0aWFsaXphdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3dhbGxldEluaXRpYWxpemF0aW9uQnVpbGRlcic7XG5pbXBvcnQgeyBTdGFraW5nQnVpbGRlciB9IGZyb20gJy4vc3Rha2luZ0J1aWxkZXInO1xuaW1wb3J0IHsgTWV0aG9kTmFtZXMgfSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB7IFVuc3Rha2VCdWlsZGVyIH0gZnJvbSAnLic7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uQnVpbGRlckZhY3Rvcnkge1xuICBwcm90ZWN0ZWQgX21ldGFkYXRhUnBjOiBzdHJpbmc7XG4gIHByb3RlY3RlZCBfcmVnaXN0cnk6IFR5cGVSZWdpc3RyeTtcblxuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gICAgdGhpcy5zdGF0aWNzQ29uZmlnKCk7XG4gIH1cblxuICBnZXRUcmFuc2ZlckJ1aWxkZXIoKTogVHJhbnNmZXJCdWlsZGVyIHtcbiAgICByZXR1cm4gbmV3IFRyYW5zZmVyQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIGdldFN0YWtpbmdCdWlsZGVyKCk6IFN0YWtpbmdCdWlsZGVyIHtcbiAgICByZXR1cm4gbmV3IFN0YWtpbmdCdWlsZGVyKHRoaXMuX2NvaW5Db25maWcpO1xuICB9XG5cbiAgZ2V0V2FsbGV0SW5pdGlhbGl6YXRpb25CdWlsZGVyKCk6IFdhbGxldEluaXRpYWxpemF0aW9uQnVpbGRlciB7XG4gICAgcmV0dXJuIG5ldyBXYWxsZXRJbml0aWFsaXphdGlvbkJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZyk7XG4gIH1cblxuICBnZXRVbnN0YWtlQnVpbGRlcigpOiBVbnN0YWtlQnVpbGRlciB7XG4gICAgcmV0dXJuIG5ldyBVbnN0YWtlQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIGZyb20ocmF3VHhuOiBzdHJpbmcpOiBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICAgIGNvbnN0IGJ1aWxkZXIgPSB0aGlzLmdldEJ1aWxkZXIocmF3VHhuKTtcbiAgICBidWlsZGVyLmZyb20ocmF3VHhuKTtcbiAgICByZXR1cm4gYnVpbGRlcjtcbiAgfVxuXG4gIHByb3RlY3RlZCBzdGF0aWNzQ29uZmlnKCk6IHZvaWQge1xuICAgIGNvbnN0IG5ldHdvcmtDb25maWcgPSB0aGlzLl9jb2luQ29uZmlnLm5ldHdvcmsgYXMgRG90TmV0d29yaztcbiAgICBjb25zdCB7IHNwZWNOYW1lLCBzcGVjVmVyc2lvbiwgY2hhaW5OYW1lLCBtZXRhZGF0YVJwYyB9ID0gbmV0d29ya0NvbmZpZztcbiAgICB0aGlzLl9tZXRhZGF0YVJwYyA9IG1ldGFkYXRhUnBjO1xuICAgIHRoaXMuX3JlZ2lzdHJ5ID0gZ2V0UmVnaXN0cnkoe1xuICAgICAgY2hhaW5OYW1lOiBjaGFpbk5hbWUsXG4gICAgICBzcGVjTmFtZTogc3BlY05hbWUsXG4gICAgICBzcGVjVmVyc2lvbjogc3BlY1ZlcnNpb24sXG4gICAgICBtZXRhZGF0YVJwYzogbWV0YWRhdGFScGMsXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldEJ1aWxkZXIocmF3VHhuOiBzdHJpbmcpOiBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICAgIGlmICghdGhpcy5fcmVnaXN0cnkgfHwgIXRoaXMuX21ldGFkYXRhUnBjKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdQbGVhc2Ugc2V0IHRoZSBuZXR3b3JrIGJlZm9yZSBwYXJzaW5nIHRoZSB0cmFuc2FjdGlvbicpO1xuICAgIH1cbiAgICBjb25zdCBkZWNvZGVkVHhuID0gZGVjb2RlKHJhd1R4biwge1xuICAgICAgbWV0YWRhdGFScGM6IHRoaXMuX21ldGFkYXRhUnBjLFxuICAgICAgcmVnaXN0cnk6IHRoaXMuX3JlZ2lzdHJ5LFxuICAgIH0pO1xuICAgIGNvbnN0IG1ldGhvZE5hbWUgPSBkZWNvZGVkVHhuLm1ldGhvZD8ubmFtZTtcbiAgICBpZiAobWV0aG9kTmFtZSA9PT0gTWV0aG9kTmFtZXMuVHJhbnNmZXJLZWVwQWxpdmUgfHwgbWV0aG9kTmFtZSA9PT0gTWV0aG9kTmFtZXMuUHJveHkpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldFRyYW5zZmVyQnVpbGRlcigpO1xuICAgIH0gZWxzZSBpZiAobWV0aG9kTmFtZSA9PT0gTWV0aG9kTmFtZXMuQm9uZCkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0U3Rha2luZ0J1aWxkZXIoKTtcbiAgICB9IGVsc2UgaWYgKG1ldGhvZE5hbWUgPT09IE1ldGhvZE5hbWVzLkFkZFByb3h5KSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRXYWxsZXRJbml0aWFsaXphdGlvbkJ1aWxkZXIoKTtcbiAgICB9IGVsc2UgaWYgKG1ldGhvZE5hbWUgPT09IE1ldGhvZE5hbWVzLlVuYm9uZCkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0VW5zdGFrZUJ1aWxkZXIoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IE5vdFN1cHBvcnRlZCgnVHJhbnNhY3Rpb24gY2Fubm90IGJlIHBhcnNlZCBvciBoYXMgYW4gdW5zdXBwb3J0ZWQgdHJhbnNhY3Rpb24gdHlwZScpO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -1,14 +1,72 @@
1
1
  import { BaseCoin as CoinConfig } from '@bitgo/statics';
2
- import { BaseKey } from '../baseCoin/iface';
3
2
  import { TransactionBuilder } from './transactionBuilder';
4
3
  import { Transaction } from './transaction';
4
+ import { UnsignedTransaction } from '@substrate/txwrapper-core';
5
+ import { TransactionType } from '../baseCoin';
6
+ import { proxyType } from './iface';
7
+ import { BaseAddress } from '../baseCoin/iface';
5
8
  export declare class TransferBuilder extends TransactionBuilder {
9
+ protected _amount: string;
10
+ protected _to: string;
11
+ protected _owner: string;
12
+ protected _forceProxyType: proxyType;
6
13
  constructor(_coinConfig: Readonly<CoinConfig>);
14
+ /**
15
+ *
16
+ * Dispatch the given call from an account that the sender is authorised for through add_proxy.
17
+ *
18
+ * @returns {UnsignedTransaction} an unsigned Dot transaction
19
+ *
20
+ * @see https://polkadot.js.org/docs/substrate/extrinsics/#proxy
21
+ */
22
+ protected buildTransaction(): UnsignedTransaction;
23
+ protected get transactionType(): TransactionType;
24
+ /**
25
+ *
26
+ * The amount for transfer transaction.
27
+ *
28
+ * @param {string} amount
29
+ * @returns {TransferBuilder} This transfer builder.
30
+ *
31
+ * @see https://wiki.polkadot.network/docs/build-protocol-info
32
+ */
33
+ amount(amount: string): this;
34
+ /**
35
+ *
36
+ * The destination address for transfer transaction.
37
+ *
38
+ * @param {string} dest
39
+ * @returns {TransferBuilder} This transfer builder.
40
+ *
41
+ * @see https://wiki.polkadot.network/docs/build-protocol-info
42
+ */
43
+ to({ address }: BaseAddress): this;
44
+ /**
45
+ *
46
+ * The real address of the original tx
47
+ *
48
+ * @param {BaseAddress} real
49
+ * @returns {TransferBuilder} This builder.
50
+ *
51
+ * @see https://wiki.polkadot.network/docs/learn-proxies#why-use-a-proxy
52
+ */
53
+ owner(owner: BaseAddress): this;
54
+ /**
55
+ *
56
+ * The proxy type to execute
57
+ *
58
+ * @param {proxyType} forceProxyType
59
+ * @returns {TransferBuilder} This builder.
60
+ *
61
+ * @see https://wiki.polkadot.network/docs/learn-proxies#proxy-types
62
+ */
63
+ forceProxyType(forceProxyType: proxyType): this;
7
64
  /** @inheritdoc */
8
- protected buildImplementation(): Promise<Transaction>;
65
+ validateRawTransaction(rawTransaction: string): void;
9
66
  /** @inheritdoc */
10
- protected fromImplementation(rawTransaction: any): Transaction;
67
+ protected fromImplementation(rawTransaction: string): Transaction;
11
68
  /** @inheritdoc */
12
- protected signImplementation(key: BaseKey): Transaction;
69
+ validateTransaction(_: Transaction): void;
70
+ private validateFields;
13
71
  }
14
72
  //# sourceMappingURL=transferBuilder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transferBuilder.d.ts","sourceRoot":"","sources":["../../../../src/coin/dot/transferBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,qBAAa,eAAgB,SAAQ,kBAAkB;gBACzC,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC;IAI3D,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,GAAG,GAAG,WAAW;IAI9D,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,WAAW;CAGxD"}
1
+ {"version":3,"file":"transferBuilder.d.ts","sourceRoot":"","sources":["../../../../src/coin/dot/transferBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAIxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAA0B,SAAS,EAAgB,MAAM,SAAS,CAAC;AAG1E,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,qBAAa,eAAgB,SAAQ,kBAAkB;IACrD,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,eAAe,EAAE,SAAS,CAAC;gBAEzB,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C;;;;;;;OAOG;IACH,SAAS,CAAC,gBAAgB,IAAI,mBAAmB;IAwBjD,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED;;;;;;;;OAQG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAM5B;;;;;;;;OAQG;IACH,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,WAAW,GAAG,IAAI;IAMlC;;;;;;;;OAQG;IACH,KAAK,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAM/B;;;;;;;;OAQG;IACH,cAAc,CAAC,cAAc,EAAE,SAAS,GAAG,IAAI;IAK/C,kBAAkB;IAClB,sBAAsB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IA+BpD,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW;IA6BjE,kBAAkB;IAClB,mBAAmB,CAAC,CAAC,EAAE,WAAW,GAAG,IAAI;IAKzC,OAAO,CAAC,cAAc;CAWvB"}
@@ -14,68 +14,185 @@ var __extends = (this && this.__extends) || (function () {
14
14
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
15
  };
16
16
  })();
17
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
18
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
19
- return new (P || (P = Promise))(function (resolve, reject) {
20
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
21
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
22
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
23
- step((generator = generator.apply(thisArg, _arguments || [])).next());
24
- });
25
- };
26
- var __generator = (this && this.__generator) || function (thisArg, body) {
27
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
28
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
29
- function verb(n) { return function (v) { return step([n, v]); }; }
30
- function step(op) {
31
- if (f) throw new TypeError("Generator is already executing.");
32
- while (_) try {
33
- 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;
34
- if (y = 0, t) op = [op[0] & 2, t.value];
35
- switch (op[0]) {
36
- case 0: case 1: t = op; break;
37
- case 4: _.label++; return { value: op[1], done: false };
38
- case 5: _.label++; y = op[1]; op = [0]; continue;
39
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
40
- default:
41
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
42
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
43
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
44
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
45
- if (t[2]) _.ops.pop();
46
- _.trys.pop(); continue;
47
- }
48
- op = body.call(thisArg, _);
49
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
50
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
51
- }
17
+ var __importDefault = (this && this.__importDefault) || function (mod) {
18
+ return (mod && mod.__esModule) ? mod : { "default": mod };
52
19
  };
53
20
  Object.defineProperty(exports, "__esModule", { value: true });
54
21
  exports.TransferBuilder = void 0;
22
+ var txwrapper_polkadot_1 = require("@substrate/txwrapper-polkadot");
23
+ var bignumber_js_1 = __importDefault(require("bignumber.js"));
55
24
  var errors_1 = require("../baseCoin/errors");
56
25
  var transactionBuilder_1 = require("./transactionBuilder");
26
+ var baseCoin_1 = require("../baseCoin");
27
+ var iface_1 = require("./iface");
28
+ var txnSchema_1 = require("./txnSchema");
29
+ var utils_1 = __importDefault(require("./utils"));
57
30
  var TransferBuilder = /** @class */ (function (_super) {
58
31
  __extends(TransferBuilder, _super);
59
32
  function TransferBuilder(_coinConfig) {
60
33
  return _super.call(this, _coinConfig) || this;
61
34
  }
35
+ /**
36
+ *
37
+ * Dispatch the given call from an account that the sender is authorised for through add_proxy.
38
+ *
39
+ * @returns {UnsignedTransaction} an unsigned Dot transaction
40
+ *
41
+ * @see https://polkadot.js.org/docs/substrate/extrinsics/#proxy
42
+ */
43
+ TransferBuilder.prototype.buildTransaction = function () {
44
+ var baseTxInfo = this.createBaseTxInfo();
45
+ var transferTx = txwrapper_polkadot_1.methods.balances.transferKeepAlive({
46
+ value: this._amount,
47
+ dest: this._to,
48
+ }, baseTxInfo.baseTxInfo, baseTxInfo.options);
49
+ if (!this._owner) {
50
+ return transferTx;
51
+ }
52
+ return txwrapper_polkadot_1.methods.proxy.proxy({
53
+ real: this._owner,
54
+ forceProxyType: this._forceProxyType,
55
+ call: transferTx.method,
56
+ }, baseTxInfo.baseTxInfo, baseTxInfo.options);
57
+ };
58
+ Object.defineProperty(TransferBuilder.prototype, "transactionType", {
59
+ get: function () {
60
+ return baseCoin_1.TransactionType.Send;
61
+ },
62
+ enumerable: false,
63
+ configurable: true
64
+ });
65
+ /**
66
+ *
67
+ * The amount for transfer transaction.
68
+ *
69
+ * @param {string} amount
70
+ * @returns {TransferBuilder} This transfer builder.
71
+ *
72
+ * @see https://wiki.polkadot.network/docs/build-protocol-info
73
+ */
74
+ TransferBuilder.prototype.amount = function (amount) {
75
+ this.validateValue(new bignumber_js_1.default(amount));
76
+ this._amount = amount;
77
+ return this;
78
+ };
79
+ /**
80
+ *
81
+ * The destination address for transfer transaction.
82
+ *
83
+ * @param {string} dest
84
+ * @returns {TransferBuilder} This transfer builder.
85
+ *
86
+ * @see https://wiki.polkadot.network/docs/build-protocol-info
87
+ */
88
+ TransferBuilder.prototype.to = function (_a) {
89
+ var address = _a.address;
90
+ this.validateAddress({ address: address });
91
+ this._to = address;
92
+ return this;
93
+ };
94
+ /**
95
+ *
96
+ * The real address of the original tx
97
+ *
98
+ * @param {BaseAddress} real
99
+ * @returns {TransferBuilder} This builder.
100
+ *
101
+ * @see https://wiki.polkadot.network/docs/learn-proxies#why-use-a-proxy
102
+ */
103
+ TransferBuilder.prototype.owner = function (owner) {
104
+ this.validateAddress({ address: owner.address });
105
+ this._owner = owner.address;
106
+ return this;
107
+ };
108
+ /**
109
+ *
110
+ * The proxy type to execute
111
+ *
112
+ * @param {proxyType} forceProxyType
113
+ * @returns {TransferBuilder} This builder.
114
+ *
115
+ * @see https://wiki.polkadot.network/docs/learn-proxies#proxy-types
116
+ */
117
+ TransferBuilder.prototype.forceProxyType = function (forceProxyType) {
118
+ this._forceProxyType = forceProxyType;
119
+ return this;
120
+ };
62
121
  /** @inheritdoc */
63
- TransferBuilder.prototype.buildImplementation = function () {
64
- return __awaiter(this, void 0, void 0, function () {
65
- return __generator(this, function (_a) {
66
- throw new errors_1.NotImplementedError('method not implemented');
67
- });
122
+ TransferBuilder.prototype.validateRawTransaction = function (rawTransaction) {
123
+ var _a, _b;
124
+ _super.prototype.validateRawTransaction.call(this, rawTransaction);
125
+ var decodedTxn = txwrapper_polkadot_1.decode(rawTransaction, {
126
+ metadataRpc: this._metadataRpc,
127
+ registry: this._registry,
68
128
  });
129
+ if (((_a = decodedTxn.method) === null || _a === void 0 ? void 0 : _a.name) === iface_1.MethodNames.TransferKeepAlive) {
130
+ var txMethod = decodedTxn.method.args;
131
+ var amount = "" + txMethod.value;
132
+ var to = txMethod.dest.id;
133
+ var validationResult = txnSchema_1.TransferTransactionSchema.validate({ amount: amount, to: to });
134
+ if (validationResult.error) {
135
+ throw new errors_1.InvalidTransactionError("Transfer Transaction validation failed: " + validationResult.error.message);
136
+ }
137
+ }
138
+ else if (((_b = decodedTxn.method) === null || _b === void 0 ? void 0 : _b.name) === iface_1.MethodNames.Proxy) {
139
+ var txMethod = decodedTxn.method.args;
140
+ var real = txMethod.real;
141
+ var forceProxyType = txMethod.forceProxyType;
142
+ var decodedCall = utils_1.default.decodeCallMethod(rawTransaction, {
143
+ registry: this._registry,
144
+ metadataRpc: this._metadataRpc,
145
+ });
146
+ var amount = "" + decodedCall.value;
147
+ var to = decodedCall.dest.id;
148
+ var validationResult = txnSchema_1.ProxyTransactionSchema.validate({ real: real, forceProxyType: forceProxyType, amount: amount, to: to });
149
+ if (validationResult.error) {
150
+ throw new errors_1.InvalidTransactionError("Proxy Transaction validation failed: " + validationResult.error.message);
151
+ }
152
+ }
69
153
  };
70
154
  /** @inheritdoc */
71
155
  TransferBuilder.prototype.fromImplementation = function (rawTransaction) {
72
- throw new errors_1.NotImplementedError('method not implemented');
156
+ var _a, _b, _c, _d;
157
+ var tx = _super.prototype.fromImplementation.call(this, rawTransaction);
158
+ if (((_a = this._method) === null || _a === void 0 ? void 0 : _a.name) === iface_1.MethodNames.TransferKeepAlive) {
159
+ var txMethod = this._method.args;
160
+ this.amount(txMethod.value);
161
+ this.to({ address: utils_1.default.decodeDotAddress(txMethod.dest.id) });
162
+ }
163
+ else if (((_b = this._method) === null || _b === void 0 ? void 0 : _b.name) === iface_1.MethodNames.Proxy) {
164
+ var txMethod = this._method.args;
165
+ this.owner({ address: utils_1.default.decodeDotAddress(txMethod.real) });
166
+ this.forceProxyType(txMethod.forceProxyType);
167
+ var decodedCall = utils_1.default.decodeCallMethod(rawTransaction, {
168
+ registry: this._registry,
169
+ metadataRpc: this._metadataRpc,
170
+ });
171
+ if (!decodedCall.value || !decodedCall.dest) {
172
+ throw new errors_1.InvalidTransactionError("Invalid Proxy Transaction Method: " + ((_c = this._method) === null || _c === void 0 ? void 0 : _c.name) + ". Expected transferKeepAlive");
173
+ }
174
+ this.amount("" + decodedCall.value);
175
+ this.to({ address: utils_1.default.decodeDotAddress(decodedCall.dest.id) });
176
+ }
177
+ else {
178
+ throw new errors_1.InvalidTransactionError("Invalid Transaction Type: " + ((_d = this._method) === null || _d === void 0 ? void 0 : _d.name) + ". Expected a transferKeepAlive or a proxy transferKeepAlive transaction");
179
+ }
180
+ return tx;
73
181
  };
74
182
  /** @inheritdoc */
75
- TransferBuilder.prototype.signImplementation = function (key) {
76
- throw new errors_1.NotImplementedError('method not implemented');
183
+ TransferBuilder.prototype.validateTransaction = function (_) {
184
+ _super.prototype.validateTransaction.call(this, _);
185
+ this.validateFields(this._to, this._amount, this._owner, this._forceProxyType);
186
+ };
187
+ TransferBuilder.prototype.validateFields = function (to, amount, real, forceProxyType) {
188
+ var validationResult = forceProxyType
189
+ ? txnSchema_1.ProxyTransactionSchema.validate({ to: to, amount: amount, real: real, forceProxyType: forceProxyType })
190
+ : txnSchema_1.TransferTransactionSchema.validate({ amount: amount, to: to });
191
+ if (validationResult.error) {
192
+ throw new errors_1.InvalidTransactionError("Proxy/TransferKeepAlive Transaction validation failed: " + validationResult.error.message);
193
+ }
77
194
  };
78
195
  return TransferBuilder;
79
196
  }(transactionBuilder_1.TransactionBuilder));
80
197
  exports.TransferBuilder = TransferBuilder;
81
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXJCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvaW4vZG90L3RyYW5zZmVyQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFQSw2Q0FBeUQ7QUFDekQsMkRBQTBEO0FBRzFEO0lBQXFDLG1DQUFrQjtJQUNyRCx5QkFBWSxXQUFpQztlQUMzQyxrQkFBTSxXQUFXLENBQUM7SUFDcEIsQ0FBQztJQUVELGtCQUFrQjtJQUNGLDZDQUFtQixHQUFuQzs7O2dCQUNFLE1BQU0sSUFBSSw0QkFBbUIsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDOzs7S0FDekQ7SUFFRCxrQkFBa0I7SUFDUiw0Q0FBa0IsR0FBNUIsVUFBNkIsY0FBbUI7UUFDOUMsTUFBTSxJQUFJLDRCQUFtQixDQUFDLHdCQUF3QixDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVELGtCQUFrQjtJQUNSLDRDQUFrQixHQUE1QixVQUE2QixHQUFZO1FBQ3ZDLE1BQU0sSUFBSSw0QkFBbUIsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFDSCxzQkFBQztBQUFELENBQUMsQUFuQkQsQ0FBcUMsdUNBQWtCLEdBbUJ0RDtBQW5CWSwwQ0FBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5pbXBvcnQgeyBCYXNlS2V5IH0gZnJvbSAnLi4vYmFzZUNvaW4vaWZhY2UnO1xuaW1wb3J0IHsgTm90SW1wbGVtZW50ZWRFcnJvciB9IGZyb20gJy4uL2Jhc2VDb2luL2Vycm9ycyc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlcic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuXG5leHBvcnQgY2xhc3MgVHJhbnNmZXJCdWlsZGVyIGV4dGVuZHMgVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBhc3luYyBidWlsZEltcGxlbWVudGF0aW9uKCk6IFByb21pc2U8VHJhbnNhY3Rpb24+IHtcbiAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcignbWV0aG9kIG5vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBmcm9tSW1wbGVtZW50YXRpb24ocmF3VHJhbnNhY3Rpb246IGFueSk6IFRyYW5zYWN0aW9uIHtcbiAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcignbWV0aG9kIG5vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBzaWduSW1wbGVtZW50YXRpb24oa2V5OiBCYXNlS2V5KTogVHJhbnNhY3Rpb24ge1xuICAgIHRocm93IG5ldyBOb3RJbXBsZW1lbnRlZEVycm9yKCdtZXRob2Qgbm90IGltcGxlbWVudGVkJyk7XG4gIH1cbn1cbiJdfQ==
198
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXJCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvaW4vZG90L3RyYW5zZmVyQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSxvRUFBZ0U7QUFDaEUsOERBQXFDO0FBQ3JDLDZDQUE2RDtBQUM3RCwyREFBMEQ7QUFHMUQsd0NBQThDO0FBQzlDLGlDQUEwRTtBQUMxRSx5Q0FBZ0Y7QUFDaEYsa0RBQTRCO0FBRzVCO0lBQXFDLG1DQUFrQjtJQU1yRCx5QkFBWSxXQUFpQztlQUMzQyxrQkFBTSxXQUFXLENBQUM7SUFDcEIsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDTywwQ0FBZ0IsR0FBMUI7UUFDRSxJQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUMzQyxJQUFNLFVBQVUsR0FBRyw0QkFBTyxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FDbkQ7WUFDRSxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDbkIsSUFBSSxFQUFFLElBQUksQ0FBQyxHQUFHO1NBQ2YsRUFDRCxVQUFVLENBQUMsVUFBVSxFQUNyQixVQUFVLENBQUMsT0FBTyxDQUNuQixDQUFDO1FBQ0YsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDaEIsT0FBTyxVQUFVLENBQUM7U0FDbkI7UUFDRCxPQUFPLDRCQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FDeEI7WUFDRSxJQUFJLEVBQUUsSUFBSSxDQUFDLE1BQU07WUFDakIsY0FBYyxFQUFFLElBQUksQ0FBQyxlQUFlO1lBQ3BDLElBQUksRUFBRSxVQUFVLENBQUMsTUFBTTtTQUN4QixFQUNELFVBQVUsQ0FBQyxVQUFVLEVBQ3JCLFVBQVUsQ0FBQyxPQUFPLENBQ25CLENBQUM7SUFDSixDQUFDO0lBRUQsc0JBQWMsNENBQWU7YUFBN0I7WUFDRSxPQUFPLDBCQUFlLENBQUMsSUFBSSxD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SSxNQUFBLEVBQUUsY0FBYyxnQkFBQSxFQUFFLENBQUM7WUFDdkUsQ0FBQyxDQUFDLHFDQUF5QixDQUFDLFFBQVEsQ0FBQyxFQUFFLE1BQU0sUUFBQSxFQUFFLEVBQUUsSUFBQSxFQUFFLENBQUMsQ0FBQztRQUV2RCxJQUFJLGdCQUFnQixDQUFDLEtBQUssRUFBRTtZQUMxQixNQUFNLElBQUksZ0NBQXVCLENBQy9CLDREQUEwRCxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsT0FBUyxDQUMzRixDQUFDO1NBQ0g7SUFDSCxDQUFDO0lBQ0gsc0JBQUM7QUFBRCxDQUFDLEFBeExELENBQXFDLHVDQUFrQixHQXdMdEQ7QUF4TFksMENBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IHsgZGVjb2RlLCBtZXRob2RzIH0gZnJvbSAnQHN1YnN0cmF0ZS90eHdyYXBwZXItcG9sa2Fkb3QnO1xuaW1wb3J0IEJpZ051bWJlciBmcm9tICdiaWdudW1iZXIuanMnO1xuaW1wb3J0IHsgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IgfSBmcm9tICcuLi9iYXNlQ29pbi9lcnJvcnMnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXInO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9uJztcbmltcG9ydCB7IFVuc2lnbmVkVHJhbnNhY3Rpb24gfSBmcm9tICdAc3Vic3RyYXRlL3R4d3JhcHBlci1jb3JlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uVHlwZSB9IGZyb20gJy4uL2Jhc2VDb2luJztcbmltcG9ydCB7IE1ldGhvZE5hbWVzLCBQcm94eUFyZ3MsIHByb3h5VHlwZSwgVHJhbnNmZXJBcmdzIH0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBQcm94eVRyYW5zYWN0aW9uU2NoZW1hLCBUcmFuc2ZlclRyYW5zYWN0aW9uU2NoZW1hIH0gZnJvbSAnLi90eG5TY2hlbWEnO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgQmFzZUFkZHJlc3MgfSBmcm9tICcuLi9iYXNlQ29pbi9pZmFjZSc7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2ZlckJ1aWxkZXIgZXh0ZW5kcyBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICBwcm90ZWN0ZWQgX2Ftb3VudDogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX3RvOiBzdHJpbmc7XG4gIHByb3RlY3RlZCBfb3duZXI6IHN0cmluZztcbiAgcHJvdGVjdGVkIF9mb3JjZVByb3h5VHlwZTogcHJveHlUeXBlO1xuXG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIC8qKlxuICAgKlxuICAgKiBEaXNwYXRjaCB0aGUgZ2l2ZW4gY2FsbCBmcm9tIGFuIGFjY291bnQgdGhhdCB0aGUgc2VuZGVyIGlzIGF1dGhvcmlzZWQgZm9yIHRocm91Z2ggYWRkX3Byb3h5LlxuICAgKlxuICAgKiBAcmV0dXJucyB7VW5zaWduZWRUcmFuc2FjdGlvbn0gYW4gdW5zaWduZWQgRG90IHRyYW5zYWN0aW9uXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9wb2xrYWRvdC5qcy5vcmcvZG9jcy9zdWJzdHJhdGUvZXh0cmluc2ljcy8jcHJveHlcbiAgICovXG4gIHByb3RlY3RlZCBidWlsZFRyYW5zYWN0aW9uKCk6IFVuc2lnbmVkVHJhbnNhY3Rpb24ge1xuICAgIGNvbnN0IGJhc2VUeEluZm8gPSB0aGlzLmNyZWF0ZUJhc2VUeEluZm8oKTtcbiAgICBjb25zdCB0cmFuc2ZlclR4ID0gbWV0aG9kcy5iYWxhbmNlcy50cmFuc2ZlcktlZXBBbGl2ZShcbiAgICAgIHtcbiAgICAgICAgdmFsdWU6IHRoaXMuX2Ftb3VudCxcbiAgICAgICAgZGVzdDogdGhpcy5fdG8sXG4gICAgICB9LFxuICAgICAgYmFzZVR4SW5mby5iYXNlVHhJbmZvLFxuICAgICAgYmFzZVR4SW5mby5vcHRpb25zLFxuICAgICk7XG4gICAgaWYgKCF0aGlzLl9vd25lcikge1xuICAgICAgcmV0dXJuIHRyYW5zZmVyVHg7XG4gICAgfVxuICAgIHJldHVybiBtZXRob2RzLnByb3h5LnByb3h5KFxuICAgICAge1xuICAgICAgICByZWFsOiB0aGlzLl9vd25lcixcbiAgICAgICAgZm9yY2VQcm94eVR5cGU6IHRoaXMuX2ZvcmNlUHJveHlUeXBlLFxuICAgICAgICBjYWxsOiB0cmFuc2ZlclR4Lm1ldGhvZCxcbiAgICAgIH0sXG4gICAgICBiYXNlVHhJbmZvLmJhc2VUeEluZm8sXG4gICAgICBiYXNlVHhJbmZvLm9wdGlvbnMsXG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXQgdHJhbnNhY3Rpb25UeXBlKCk6IFRyYW5zYWN0aW9uVHlwZSB7XG4gICAgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZS5TZW5kO1xuICB9XG5cbiAgLyoqXG4gICAqXG4gICAqIFRoZSBhbW91bnQgZm9yIHRyYW5zZmVyIHRyYW5zYWN0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gYW1vdW50XG4gICAqIEByZXR1cm5zIHtUcmFuc2ZlckJ1aWxkZXJ9IFRoaXMgdHJhbnNmZXIgYnVpbGRlci5cbiAgICpcbiAgICogQHNlZSBodHRwczovL3dpa2kucG9sa2Fkb3QubmV0d29yay9kb2NzL2J1aWxkLXByb3RvY29sLWluZm9cbiAgICovXG4gIGFtb3VudChhbW91bnQ6IHN0cmluZyk6IHRoaXMge1xuICAgIHRoaXMudmFsaWRhdGVWYWx1ZShuZXcgQmlnTnVtYmVyKGFtb3VudCkpO1xuICAgIHRoaXMuX2Ftb3VudCA9IGFtb3VudDtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKlxuICAgKiBUaGUgZGVzdGluYXRpb24gYWRkcmVzcyBmb3IgdHJhbnNmZXIgdHJhbnNhY3Rpb24uXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBkZXN0XG4gICAqIEByZXR1cm5zIHtUcmFuc2ZlckJ1aWxkZXJ9IFRoaXMgdHJhbnNmZXIgYnVpbGRlci5cbiAgICpcbiAgICogQHNlZSBodHRwczovL3dpa2kucG9sa2Fkb3QubmV0d29yay9kb2NzL2J1aWxkLXByb3RvY29sLWluZm9cbiAgICovXG4gIHRvKHsgYWRkcmVzcyB9OiBCYXNlQWRkcmVzcyk6IHRoaXMge1xuICAgIHRoaXMudmFsaWRhdGVBZGRyZXNzKHsgYWRkcmVzcyB9KTtcbiAgICB0aGlzLl90byA9IGFkZHJlc3M7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogVGhlIHJlYWwgYWRkcmVzcyBvZiB0aGUgb3JpZ2luYWwgdHhcbiAgICpcbiAgICogQHBhcmFtIHtCYXNlQWRkcmVzc30gcmVhbFxuICAgKiBAcmV0dXJucyB7VHJhbnNmZXJCdWlsZGVyfSBUaGlzIGJ1aWxkZXIuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly93aWtpLnBvbGthZG90Lm5ldHdvcmsvZG9jcy9sZWFybi1wcm94aWVzI3doeS11c2UtYS1wcm94eVxuICAgKi9cbiAgb3duZXIob3duZXI6IEJhc2VBZGRyZXNzKTogdGhpcyB7XG4gICAgdGhpcy52YWxpZGF0ZUFkZHJlc3MoeyBhZGRyZXNzOiBvd25lci5hZGRyZXNzIH0pO1xuICAgIHRoaXMuX293bmVyID0gb3duZXIuYWRkcmVzcztcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKlxuICAgKiBUaGUgcHJveHkgdHlwZSB0byBleGVjdXRlXG4gICAqXG4gICAqIEBwYXJhbSB7cHJveHlUeXBlfSBmb3JjZVByb3h5VHlwZVxuICAgKiBAcmV0dXJucyB7VHJhbnNmZXJCdWlsZGVyfSBUaGlzIGJ1aWxkZXIuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly93aWtpLnBvbGthZG90Lm5ldHdvcmsvZG9jcy9sZWFybi1wcm94aWVzI3Byb3h5LXR5cGVzXG4gICAqL1xuICBmb3JjZVByb3h5VHlwZShmb3JjZVByb3h5VHlwZTogcHJveHlUeXBlKTogdGhpcyB7XG4gICAgdGhpcy5fZm9yY2VQcm94eVR5cGUgPSBmb3JjZVByb3h5VHlwZTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBzdXBlci52YWxpZGF0ZVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uKTtcbiAgICBjb25zdCBkZWNvZGVkVHhuID0gZGVjb2RlKHJhd1RyYW5zYWN0aW9uLCB7XG4gICAgICBtZXRhZGF0YVJwYzogdGhpcy5fbWV0YWRhdGFScGMsXG4gICAgICByZWdpc3RyeTogdGhpcy5fcmVnaXN0cnksXG4gICAgfSk7XG4gICAgaWYgKGRlY29kZWRUeG4ubWV0aG9kPy5uYW1lID09PSBNZXRob2ROYW1lcy5UcmFuc2ZlcktlZXBBbGl2ZSkge1xuICAgICAgY29uc3QgdHhNZXRob2QgPSBkZWNvZGVkVHhuLm1ldGhvZC5hcmdzIGFzIHVua25vd24gYXMgVHJhbnNmZXJBcmdzO1xuICAgICAgY29uc3QgYW1vdW50ID0gYCR7dHhNZXRob2QudmFsdWV9YDtcbiAgICAgIGNvbnN0IHRvID0gdHhNZXRob2QuZGVzdC5pZDtcbiAgICAgIGNvbnN0IHZhbGlkYXRpb25SZXN1bHQgPSBUcmFuc2ZlclRyYW5zYWN0aW9uU2NoZW1hLnZhbGlkYXRlKHsgYW1vdW50LCB0byB9KTtcbiAgICAgIGlmICh2YWxpZGF0aW9uUmVzdWx0LmVycm9yKSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcihgVHJhbnNmZXIgVHJhbnNhY3Rpb24gdmFsaWRhdGlvbiBmYWlsZWQ6ICR7dmFsaWRhdGlvblJlc3VsdC5lcnJvci5tZXNzYWdlfWApO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoZGVjb2RlZFR4bi5tZXRob2Q/Lm5hbWUgPT09IE1ldGhvZE5hbWVzLlByb3h5KSB7XG4gICAgICBjb25zdCB0eE1ldGhvZCA9IGRlY29kZWRUeG4ubWV0aG9kLmFyZ3MgYXMgdW5rbm93biBhcyBQcm94eUFyZ3M7XG4gICAgICBjb25zdCByZWFsID0gdHhNZXRob2QucmVhbDtcbiAgICAgIGNvbnN0IGZvcmNlUHJveHlUeXBlID0gdHhNZXRob2QuZm9yY2VQcm94eVR5cGU7XG4gICAgICBjb25zdCBkZWNvZGVkQ2FsbCA9IHV0aWxzLmRlY29kZUNhbGxNZXRob2QocmF3VHJhbnNhY3Rpb24sIHtcbiAgICAgICAgcmVnaXN0cnk6IHRoaXMuX3JlZ2lzdHJ5LFxuICAgICAgICBtZXRhZGF0YVJwYzogdGhpcy5fbWV0YWRhdGFScGMsXG4gICAgICB9KTtcbiAgICAgIGNvbnN0IGFtb3VudCA9IGAke2RlY29kZWRDYWxsLnZhbHVlfWA7XG4gICAgICBjb25zdCB0byA9IGRlY29kZWRDYWxsLmRlc3QuaWQ7XG4gICAgICBjb25zdCB2YWxpZGF0aW9uUmVzdWx0ID0gUHJveHlUcmFuc2FjdGlvblNjaGVtYS52YWxpZGF0ZSh7IHJlYWwsIGZvcmNlUHJveHlUeXBlLCBhbW91bnQsIHRvIH0pO1xuICAgICAgaWYgKHZhbGlkYXRpb25SZXN1bHQuZXJyb3IpIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKGBQcm94eSBUcmFuc2FjdGlvbiB2YWxpZGF0aW9uIGZhaWxlZDogJHt2YWxpZGF0aW9uUmVzdWx0LmVycm9yLm1lc3NhZ2V9YCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBmcm9tSW1wbGVtZW50YXRpb24ocmF3VHJhbnNhY3Rpb246IHN0cmluZyk6IFRyYW5zYWN0aW9uIHtcbiAgICBjb25zdCB0eCA9IHN1cGVyLmZyb21JbXBsZW1lbnRhdGlvbihyYXdUcmFuc2FjdGlvbik7XG4gICAgaWYgKHRoaXMuX21ldGhvZD8ubmFtZSA9PT0gTWV0aG9kTmFtZXMuVHJhbnNmZXJLZWVwQWxpdmUpIHtcbiAgICAgIGNvbnN0IHR4TWV0aG9kID0gdGhpcy5fbWV0aG9kLmFyZ3MgYXMgVHJhbnNmZXJBcmdzO1xuICAgICAgdGhpcy5hbW91bnQodHhNZXRob2QudmFsdWUpO1xuICAgICAgdGhpcy50byh7IGFkZHJlc3M6IHV0aWxzLmRlY29kZURvdEFkZHJlc3ModHhNZXRob2QuZGVzdC5pZCkgfSk7XG4gICAgfSBlbHNlIGlmICh0aGlzLl9tZXRob2Q/Lm5hbWUgPT09IE1ldGhvZE5hbWVzLlByb3h5KSB7XG4gICAgICBjb25zdCB0eE1ldGhvZCA9IHRoaXMuX21ldGhvZC5hcmdzIGFzIFByb3h5QXJncztcbiAgICAgIHRoaXMub3duZXIoeyBhZGRyZXNzOiB1dGlscy5kZWNvZGVEb3RBZGRyZXNzKHR4TWV0aG9kLnJlYWwpIH0pO1xuICAgICAgdGhpcy5mb3JjZVByb3h5VHlwZSh0eE1ldGhvZC5mb3JjZVByb3h5VHlwZSk7XG4gICAgICBjb25zdCBkZWNvZGVkQ2FsbCA9IHV0aWxzLmRlY29kZUNhbGxNZXRob2QocmF3VHJhbnNhY3Rpb24sIHtcbiAgICAgICAgcmVnaXN0cnk6IHRoaXMuX3JlZ2lzdHJ5LFxuICAgICAgICBtZXRhZGF0YVJwYzogdGhpcy5fbWV0YWRhdGFScGMsXG4gICAgICB9KTtcbiAgICAgIGlmICghZGVjb2RlZENhbGwudmFsdWUgfHwgIWRlY29kZWRDYWxsLmRlc3QpIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKFxuICAgICAgICAgIGBJbnZhbGlkIFByb3h5IFRyYW5zYWN0aW9uIE1ldGhvZDogJHt0aGlzLl9tZXRob2Q/Lm5hbWV9LiBFeHBlY3RlZCB0cmFuc2ZlcktlZXBBbGl2ZWAsXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICB0aGlzLmFtb3VudChgJHtkZWNvZGVkQ2FsbC52YWx1ZX1gKTtcbiAgICAgIHRoaXMudG8oeyBhZGRyZXNzOiB1dGlscy5kZWNvZGVEb3RBZGRyZXNzKGRlY29kZWRDYWxsLmRlc3QuaWQpIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoXG4gICAgICAgIGBJbnZhbGlkIFRyYW5zYWN0aW9uIFR5cGU6ICR7dGhpcy5fbWV0aG9kPy5uYW1lfS4gRXhwZWN0ZWQgYSB0cmFuc2ZlcktlZXBBbGl2ZSBvciBhIHByb3h5IHRyYW5zZmVyS2VlcEFsaXZlIHRyYW5zYWN0aW9uYCxcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiB0eDtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVRyYW5zYWN0aW9uKF86IFRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgc3VwZXIudmFsaWRhdGVUcmFuc2FjdGlvbihfKTtcbiAgICB0aGlzLnZhbGlkYXRlRmllbGRzKHRoaXMuX3RvLCB0aGlzLl9hbW91bnQsIHRoaXMuX293bmVyLCB0aGlzLl9mb3JjZVByb3h5VHlwZSk7XG4gIH1cblxuICBwcml2YXRlIHZhbGlkYXRlRmllbGRzKHRvOiBzdHJpbmcsIGFtb3VudDogc3RyaW5nLCByZWFsPzogc3RyaW5nLCBmb3JjZVByb3h5VHlwZT86IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IHZhbGlkYXRpb25SZXN1bHQgPSBmb3JjZVByb3h5VHlwZVxuICAgICAgPyBQcm94eVRyYW5zYWN0aW9uU2NoZW1hLnZhbGlkYXRlKHsgdG8sIGFtb3VudCwgcmVhbCwgZm9yY2VQcm94eVR5cGUgfSlcbiAgICAgIDogVHJhbnNmZXJUcmFuc2FjdGlvblNjaGVtYS52YWxpZGF0ZSh7IGFtb3VudCwgdG8gfSk7XG5cbiAgICBpZiAodmFsaWRhdGlvblJlc3VsdC5lcnJvcikge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKFxuICAgICAgICBgUHJveHkvVHJhbnNmZXJLZWVwQWxpdmUgVHJhbnNhY3Rpb24gdmFsaWRhdGlvbiBmYWlsZWQ6ICR7dmFsaWRhdGlvblJlc3VsdC5lcnJvci5tZXNzYWdlfWAsXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -0,0 +1,10 @@
1
+ import joi from 'joi';
2
+ export declare const BaseTransactionSchema: joi.ObjectSchema<any>;
3
+ export declare const SigningPayloadTransactionSchema: joi.ObjectSchema<any>;
4
+ export declare const SignedTransactionSchema: joi.ObjectSchema<any>;
5
+ export declare const TransferTransactionSchema: joi.ObjectSchema<any>;
6
+ export declare const StakeTransactionSchema: joi.ObjectSchema<any>;
7
+ export declare const WalletInitializationSchema: joi.ObjectSchema<any>;
8
+ export declare const ProxyTransactionSchema: joi.ObjectSchema<any>;
9
+ export declare const UnstakeTransactionSchema: joi.ObjectSchema<any>;
10
+ //# sourceMappingURL=txnSchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"txnSchema.d.ts","sourceRoot":"","sources":["../../../../src/coin/dot/txnSchema.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAC;AAetB,eAAO,MAAM,qBAAqB,uBAahC,CAAC;AAEH,eAAO,MAAM,+BAA+B,uBAK1C,CAAC;AAEH,eAAO,MAAM,uBAAuB,uBAKlC,CAAC;AAEH,eAAO,MAAM,yBAAyB,uBAGpC,CAAC;AAEH,eAAO,MAAM,sBAAsB,uBAejC,CAAC;AAEH,eAAO,MAAM,0BAA0B,uBAOrC,CAAC;AAEH,eAAO,MAAM,sBAAsB,uBAQjC,CAAC;AAEH,eAAO,MAAM,wBAAwB,uBAEnC,CAAC"}
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ var _a, _b;
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.UnstakeTransactionSchema = exports.ProxyTransactionSchema = exports.WalletInitializationSchema = exports.StakeTransactionSchema = exports.TransferTransactionSchema = exports.SignedTransactionSchema = exports.SigningPayloadTransactionSchema = exports.BaseTransactionSchema = void 0;
8
+ var joi_1 = __importDefault(require("joi"));
9
+ var utils_1 = __importDefault(require("./utils"));
10
+ var addressSchema = joi_1.default.string().custom(function (addr) { return utils_1.default.isValidAddress(addr); });
11
+ var proxyTypes = [
12
+ 'Any',
13
+ 'NonTransfer',
14
+ 'Governance',
15
+ 'Staking',
16
+ 'UnusedSudoBalances',
17
+ 'IdentityJudgement',
18
+ 'CancelProxy',
19
+ ];
20
+ exports.BaseTransactionSchema = joi_1.default.object({
21
+ sender: addressSchema.required(),
22
+ blockNumber: joi_1.default.number().required(),
23
+ blockHash: joi_1.default.string().required(),
24
+ genesisHash: joi_1.default.string().required(),
25
+ metadataRpc: joi_1.default.string().required(),
26
+ specVersion: joi_1.default.number().required(),
27
+ specName: joi_1.default.string().valid('kusama', 'polkadot', 'westend', 'statemint', 'statemine').required(),
28
+ transactionVersion: joi_1.default.number().required(),
29
+ chainName: joi_1.default.string().required(),
30
+ eraPeriod: joi_1.default.number().required(),
31
+ nonce: joi_1.default.number().required(),
32
+ tip: joi_1.default.number().optional(),
33
+ });
34
+ exports.SigningPayloadTransactionSchema = joi_1.default.object({
35
+ eraPeriod: joi_1.default.number().optional(),
36
+ blockHash: joi_1.default.string().required(),
37
+ nonce: joi_1.default.number().required(),
38
+ tip: joi_1.default.number().optional(),
39
+ });
40
+ exports.SignedTransactionSchema = joi_1.default.object({
41
+ sender: addressSchema.required(),
42
+ nonce: joi_1.default.number().required(),
43
+ eraPeriod: joi_1.default.number().optional(),
44
+ tip: joi_1.default.number().optional(),
45
+ });
46
+ exports.TransferTransactionSchema = joi_1.default.object({
47
+ amount: joi_1.default.string().required(),
48
+ to: addressSchema.required(),
49
+ });
50
+ exports.StakeTransactionSchema = joi_1.default.object({
51
+ value: joi_1.default.string().required(),
52
+ controller: addressSchema.required(),
53
+ payee: [
54
+ joi_1.default.string(),
55
+ joi_1.default.object({
56
+ account: joi_1.default.string().optional(),
57
+ controller: joi_1.default.equal(null).optional(),
58
+ staked: joi_1.default.equal(null).optional(),
59
+ stash: joi_1.default.equal(null).optional(),
60
+ }),
61
+ joi_1.default.object({
62
+ Account: joi_1.default.string().required(),
63
+ }),
64
+ ],
65
+ });
66
+ exports.WalletInitializationSchema = joi_1.default.object({
67
+ proxyType: (_a = joi_1.default
68
+ .string())
69
+ .valid.apply(_a, proxyTypes).required(),
70
+ delegate: addressSchema.required(),
71
+ delay: joi_1.default.string().required(),
72
+ });
73
+ exports.ProxyTransactionSchema = joi_1.default.object({
74
+ real: addressSchema.required(),
75
+ forceProxyType: (_b = joi_1.default
76
+ .string())
77
+ .valid.apply(_b, proxyTypes).required(),
78
+ amount: joi_1.default.string().required(),
79
+ to: addressSchema.required(),
80
+ });
81
+ exports.UnstakeTransactionSchema = joi_1.default.object({
82
+ value: joi_1.default.string().required(),
83
+ });
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHhuU2NoZW1hLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvaW4vZG90L3R4blNjaGVtYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsNENBQXNCO0FBQ3RCLGtEQUE0QjtBQUU1QixJQUFNLGFBQWEsR0FBRyxhQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsTUFBTSxDQUFDLFVBQUMsSUFBSSxJQUFLLE9BQUEsZUFBSyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBMUIsQ0FBMEIsQ0FBQyxDQUFDO0FBRWhGLElBQU0sVUFBVSxHQUFHO0lBQ2pCLEtBQUs7SUFDTCxhQUFhO0lBQ2IsWUFBWTtJQUNaLFNBQVM7SUFDVCxvQkFBb0I7SUFDcEIsbUJBQW1CO0lBQ25CLGFBQWE7Q0FDZCxDQUFDO0FBRVcsUUFBQSxxQkFBcUIsR0FBRyxhQUFHLENBQUMsTUFBTSxDQUFDO0lBQzlDLE1BQU0sRUFBRSxhQUFhLENBQUMsUUFBUSxFQUFFO0lBQ2hDLFdBQVcsRUFBRSxhQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ3BDLFNBQVMsRUFBRSxhQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ2xDLFdBQVcsRUFBRSxhQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ3BDLFdBQVcsRUFBRSxhQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ3BDLFdBQVcsRUFBRSxhQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ3BDLFFBQVEsRUFBRSxhQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxXQUFXLENBQUMsQ0FBQyxRQUFRLEVBQUU7SUFDbEcsa0JBQWtCLEVBQUUsYUFBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUMz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QixRQUFRLEVBQUU7SUFDYixNQUFNLEVBQUUsYUFBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUMvQixFQUFFLEVBQUUsYUFBYSxDQUFDLFFBQVEsRUFBRTtDQUM3QixDQUFDLENBQUM7QUFFVSxRQUFBLHdCQUF3QixHQUFHLGFBQUcsQ0FBQyxNQUFNLENBQUM7SUFDakQsS0FBSyxFQUFFLGFBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7Q0FDL0IsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGpvaSBmcm9tICdqb2knO1xuaW1wb3J0IFV0aWxzIGZyb20gJy4vdXRpbHMnO1xuXG5jb25zdCBhZGRyZXNzU2NoZW1hID0gam9pLnN0cmluZygpLmN1c3RvbSgoYWRkcikgPT4gVXRpbHMuaXNWYWxpZEFkZHJlc3MoYWRkcikpO1xuXG5jb25zdCBwcm94eVR5cGVzID0gW1xuICAnQW55JyxcbiAgJ05vblRyYW5zZmVyJyxcbiAgJ0dvdmVybmFuY2UnLFxuICAnU3Rha2luZycsXG4gICdVbnVzZWRTdWRvQmFsYW5jZXMnLFxuICAnSWRlbnRpdHlKdWRnZW1lbnQnLFxuICAnQ2FuY2VsUHJveHknLFxuXTtcblxuZXhwb3J0IGNvbnN0IEJhc2VUcmFuc2FjdGlvblNjaGVtYSA9IGpvaS5vYmplY3Qoe1xuICBzZW5kZXI6IGFkZHJlc3NTY2hlbWEucmVxdWlyZWQoKSxcbiAgYmxvY2tOdW1iZXI6IGpvaS5udW1iZXIoKS5yZXF1aXJlZCgpLFxuICBibG9ja0hhc2g6IGpvaS5zdHJpbmcoKS5yZXF1aXJlZCgpLFxuICBnZW5lc2lzSGFzaDogam9pLnN0cmluZygpLnJlcXVpcmVkKCksXG4gIG1ldGFkYXRhUnBjOiBqb2kuc3RyaW5nKCkucmVxdWlyZWQoKSxcbiAgc3BlY1ZlcnNpb246IGpvaS5udW1iZXIoKS5yZXF1aXJlZCgpLFxuICBzcGVjTmFtZTogam9pLnN0cmluZygpLnZhbGlkKCdrdXNhbWEnLCAncG9sa2Fkb3QnLCAnd2VzdGVuZCcsICdzdGF0ZW1pbnQnLCAnc3RhdGVtaW5lJykucmVxdWlyZWQoKSxcbiAgdHJhbnNhY3Rpb25WZXJzaW9uOiBqb2kubnVtYmVyKCkucmVxdWlyZWQoKSxcbiAgY2hhaW5OYW1lOiBqb2kuc3RyaW5nKCkucmVxdWlyZWQoKSxcbiAgZXJhUGVyaW9kOiBqb2kubnVtYmVyKCkucmVxdWlyZWQoKSxcbiAgbm9uY2U6IGpvaS5udW1iZXIoKS5yZXF1aXJlZCgpLFxuICB0aXA6IGpvaS5udW1iZXIoKS5vcHRpb25hbCgpLFxufSk7XG5cbmV4cG9ydCBjb25zdCBTaWduaW5nUGF5bG9hZFRyYW5zYWN0aW9uU2NoZW1hID0gam9pLm9iamVjdCh7XG4gIGVyYVBlcmlvZDogam9pLm51bWJlcigpLm9wdGlvbmFsKCksXG4gIGJsb2NrSGFzaDogam9pLnN0cmluZygpLnJlcXVpcmVkKCksXG4gIG5vbmNlOiBqb2kubnVtYmVyKCkucmVxdWlyZWQoKSxcbiAgdGlwOiBqb2kubnVtYmVyKCkub3B0aW9uYWwoKSxcbn0pO1xuXG5leHBvcnQgY29uc3QgU2lnbmVkVHJhbnNhY3Rpb25TY2hlbWEgPSBqb2kub2JqZWN0KHtcbiAgc2VuZGVyOiBhZGRyZXNzU2NoZW1hLnJlcXVpcmVkKCksXG4gIG5vbmNlOiBqb2kubnVtYmVyKCkucmVxdWlyZWQoKSxcbiAgZXJhUGVyaW9kOiBqb2kubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgdGlwOiBqb2kubnVtYmVyKCkub3B0aW9uYWwoKSxcbn0pO1xuXG5leHBvcnQgY29uc3QgVHJhbnNmZXJUcmFuc2FjdGlvblNjaGVtYSA9IGpvaS5vYmplY3Qoe1xuICBhbW91bnQ6IGpvaS5zdHJpbmcoKS5yZXF1aXJlZCgpLFxuICB0bzogYWRkcmVzc1NjaGVtYS5yZXF1aXJlZCgpLFxufSk7XG5cbmV4cG9ydCBjb25zdCBTdGFrZVRyYW5zYWN0aW9uU2NoZW1hID0gam9pLm9iamVjdCh7XG4gIHZhbHVlOiBqb2kuc3RyaW5nKCkucmVxdWlyZWQoKSxcbiAgY29udHJvbGxlcjogYWRkcmVzc1NjaGVtYS5yZXF1aXJlZCgpLFxuICBwYXllZTogW1xuICAgIGpvaS5zdHJpbmcoKSxcbiAgICBqb2kub2JqZWN0KHtcbiAgICAgIGFjY291bnQ6IGpvaS5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICAgICAgY29udHJvbGxlcjogam9pLmVxdWFsKG51bGwpLm9wdGlvbmFsKCksXG4gICAgICBzdGFrZWQ6IGpvaS5lcXVhbChudWxsKS5vcHRpb25hbCgpLFxuICAgICAgc3Rhc2g6IGpvaS5lcXVhbChudWxsKS5vcHRpb25hbCgpLFxuICAgIH0pLFxuICAgIGpvaS5vYmplY3Qoe1xuICAgICAgQWNjb3VudDogam9pLnN0cmluZygpLnJlcXVpcmVkKCksXG4gICAgfSksXG4gIF0sXG59KTtcblxuZXhwb3J0IGNvbnN0IFdhbGxldEluaXRpYWxpemF0aW9uU2NoZW1hID0gam9pLm9iamVjdCh7XG4gIHByb3h5VHlwZTogam9pXG4gICAgLnN0cmluZygpXG4gICAgLnZhbGlkKC4uLnByb3h5VHlwZXMpXG4gICAgLnJlcXVpcmVkKCksXG4gIGRlbGVnYXRlOiBhZGRyZXNzU2NoZW1hLnJlcXVpcmVkKCksXG4gIGRlbGF5OiBqb2kuc3RyaW5nKCkucmVxdWlyZWQoKSxcbn0pO1xuXG5leHBvcnQgY29uc3QgUHJveHlUcmFuc2FjdGlvblNjaGVtYSA9IGpvaS5vYmplY3Qoe1xuICByZWFsOiBhZGRyZXNzU2NoZW1hLnJlcXVpcmVkKCksXG4gIGZvcmNlUHJveHlUeXBlOiBqb2lcbiAgICAuc3RyaW5nKClcbiAgICAudmFsaWQoLi4ucHJveHlUeXBlcylcbiAgICAucmVxdWlyZWQoKSxcbiAgYW1vdW50OiBqb2kuc3RyaW5nKCkucmVxdWlyZWQoKSxcbiAgdG86IGFkZHJlc3NTY2hlbWEucmVxdWlyZWQoKSxcbn0pO1xuXG5leHBvcnQgY29uc3QgVW5zdGFrZVRyYW5zYWN0aW9uU2NoZW1hID0gam9pLm9iamVjdCh7XG4gIHZhbHVlOiBqb2kuc3RyaW5nKCkucmVxdWlyZWQoKSxcbn0pO1xuIl19
@@ -0,0 +1,38 @@
1
+ import { BaseCoin as CoinConfig } from '@bitgo/statics';
2
+ import { UnsignedTransaction } from '@substrate/txwrapper-core';
3
+ import { TransactionType } from '../baseCoin';
4
+ import { Transaction } from './transaction';
5
+ import { TransactionBuilder } from './transactionBuilder';
6
+ export declare class UnstakeBuilder extends TransactionBuilder {
7
+ protected _amount: string;
8
+ constructor(_coinConfig: Readonly<CoinConfig>);
9
+ /**
10
+ *
11
+ * Take the origin account as a stash and lock up value of its balance.
12
+ * Controller will be the account that controls it.
13
+ *
14
+ * @returns {UnsignedTransaction} an unsigned Dot transaction
15
+ *
16
+ * @see https://polkadot.js.org/docs/substrate/extrinsics/#staking
17
+ */
18
+ protected buildTransaction(): UnsignedTransaction;
19
+ protected get transactionType(): TransactionType;
20
+ /**
21
+ *
22
+ * The amount to stake.
23
+ *
24
+ * @param {string} amount
25
+ * @returns {StakeBuilder} This transfer builder.
26
+ *
27
+ * @see https://wiki.polkadot.network/docs/learn-nominator#required-minimum-stake
28
+ */
29
+ amount(amount: string): this;
30
+ /** @inheritdoc */
31
+ validateRawTransaction(rawTransaction: string): void;
32
+ /** @inheritdoc */
33
+ protected fromImplementation(rawTransaction: string): Transaction;
34
+ /** @inheritdoc */
35
+ validateTransaction(_: Transaction): void;
36
+ private validateFields;
37
+ }
38
+ //# sourceMappingURL=unstakeBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unstakeBuilder.d.ts","sourceRoot":"","sources":["../../../../src/coin/dot/unstakeBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAGhE,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAG9C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,qBAAa,cAAe,SAAQ,kBAAkB;IACpD,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;gBAEd,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C;;;;;;;;OAQG;IACH,SAAS,CAAC,gBAAgB,IAAI,mBAAmB;IAWjD,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED;;;;;;;;OAQG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAM5B,kBAAkB;IAClB,sBAAsB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAgBpD,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW;IAWjE,kBAAkB;IAClB,mBAAmB,CAAC,CAAC,EAAE,WAAW,GAAG,IAAI;IAKzC,OAAO,CAAC,cAAc;CAWvB"}