@bitgo-beta/sdk-coin-tao 1.0.1-alpha.12 → 1.0.1-alpha.121

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 (54) hide show
  1. package/CHANGELOG.md +181 -0
  2. package/dist/src/index.d.ts +1 -0
  3. package/dist/src/index.d.ts.map +1 -1
  4. package/dist/src/index.js +2 -1
  5. package/dist/src/lib/index.d.ts +5 -7
  6. package/dist/src/lib/index.d.ts.map +1 -1
  7. package/dist/src/lib/index.js +22 -47
  8. package/dist/src/lib/stakingBuilder.d.ts +63 -0
  9. package/dist/src/lib/stakingBuilder.d.ts.map +1 -0
  10. package/dist/src/lib/stakingBuilder.js +133 -0
  11. package/dist/src/lib/transactionBuilderFactory.d.ts +11 -5
  12. package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -1
  13. package/dist/src/lib/transactionBuilderFactory.js +50 -8
  14. package/dist/src/lib/transferBuilder.d.ts +2 -4
  15. package/dist/src/lib/transferBuilder.d.ts.map +1 -1
  16. package/dist/src/lib/transferBuilder.js +8 -7
  17. package/dist/src/lib/unstakeBuilder.d.ts +66 -0
  18. package/dist/src/lib/unstakeBuilder.d.ts.map +1 -0
  19. package/dist/src/lib/unstakeBuilder.js +136 -0
  20. package/dist/src/lib/utils.d.ts +4 -254
  21. package/dist/src/lib/utils.d.ts.map +1 -1
  22. package/dist/src/lib/utils.js +7 -459
  23. package/dist/src/register.d.ts.map +1 -1
  24. package/dist/src/register.js +5 -1
  25. package/dist/src/resources/index.d.ts +3 -0
  26. package/dist/src/resources/index.d.ts.map +1 -0
  27. package/dist/src/resources/index.js +19 -0
  28. package/dist/src/resources/mainnet.d.ts +13 -0
  29. package/dist/src/resources/mainnet.d.ts.map +1 -0
  30. package/dist/src/resources/mainnet.js +16 -0
  31. package/dist/src/resources/testnet.d.ts +13 -0
  32. package/dist/src/resources/testnet.d.ts.map +1 -0
  33. package/dist/src/resources/testnet.js +16 -0
  34. package/dist/src/tao.d.ts +19 -6
  35. package/dist/src/tao.d.ts.map +1 -1
  36. package/dist/src/tao.js +43 -81
  37. package/dist/src/taoToken.d.ts +19 -0
  38. package/dist/src/taoToken.d.ts.map +1 -0
  39. package/dist/src/taoToken.js +52 -0
  40. package/package.json +10 -17
  41. package/.gitignore +0 -3
  42. package/.prettierignore +0 -2
  43. package/dist/src/lib/iface.d.ts +0 -337
  44. package/dist/src/lib/iface.d.ts.map +0 -1
  45. package/dist/src/lib/iface.js +0 -128
  46. package/dist/src/lib/keyPair.d.ts +0 -38
  47. package/dist/src/lib/keyPair.d.ts.map +0 -1
  48. package/dist/src/lib/keyPair.js +0 -117
  49. package/dist/src/lib/transaction.d.ts +0 -8
  50. package/dist/src/lib/transaction.d.ts.map +0 -1
  51. package/dist/src/lib/transaction.js +0 -17
  52. package/dist/src/lib/transactionBuilder.d.ts +0 -43
  53. package/dist/src/lib/transactionBuilder.d.ts.map +0 -1
  54. package/dist/src/lib/transactionBuilder.js +0 -78
@@ -1,20 +1,62 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.TransactionBuilderFactory = void 0;
4
7
  const sdk_core_1 = require("@bitgo-beta/sdk-core");
8
+ const txwrapper_polkadot_1 = require("@substrate/txwrapper-polkadot");
9
+ const _1 = require("./");
10
+ const transferBuilder_1 = require("./transferBuilder");
11
+ const utils_1 = __importDefault(require("./utils"));
12
+ const stakingBuilder_1 = require("./stakingBuilder");
13
+ const unstakeBuilder_1 = require("./unstakeBuilder");
5
14
  class TransactionBuilderFactory extends sdk_core_1.BaseTransactionBuilderFactory {
6
- /** @inheritdoc */
7
- from(raw) {
8
- throw new Error('Method not implemented.');
15
+ constructor(_coinConfig) {
16
+ super(_coinConfig);
17
+ this._material = utils_1.default.getMaterial(_coinConfig.network.type);
9
18
  }
10
- /** @inheritdoc */
11
19
  getTransferBuilder() {
12
- throw new Error('Method not implemented.');
20
+ return new transferBuilder_1.TransferBuilder(this._coinConfig).material(this._material);
21
+ }
22
+ getStakingBuilder() {
23
+ return new stakingBuilder_1.StakingBuilder(this._coinConfig).material(this._material);
24
+ }
25
+ getUnstakingBuilder() {
26
+ return new unstakeBuilder_1.UnstakeBuilder(this._coinConfig).material(this._material);
13
27
  }
14
- /** @inheritdoc */
15
28
  getWalletInitializationBuilder() {
16
- throw new Error('Method not implemented.');
29
+ throw new sdk_core_1.NotImplementedError(`walletInitialization for ${this._coinConfig.name} not implemented`);
30
+ }
31
+ from(rawTxn) {
32
+ const builder = this.getBuilder(rawTxn);
33
+ builder.from(rawTxn);
34
+ return builder;
35
+ }
36
+ material(material) {
37
+ this._material = material;
38
+ return this;
39
+ }
40
+ getBuilder(rawTxn) {
41
+ const registry = _1.SingletonRegistry.getInstance(this._material);
42
+ const decodedTxn = (0, txwrapper_polkadot_1.decode)(rawTxn, {
43
+ metadataRpc: this._material.metadata,
44
+ registry: registry,
45
+ });
46
+ const methodName = decodedTxn.method?.name;
47
+ if (methodName === _1.Interface.MethodNames.TransferKeepAlive || methodName === _1.Interface.MethodNames.TransferAll) {
48
+ return this.getTransferBuilder();
49
+ }
50
+ else if (methodName === _1.Interface.MethodNames.AddStake) {
51
+ return this.getStakingBuilder();
52
+ }
53
+ else if (methodName === _1.Interface.MethodNames.RemoveStake) {
54
+ return this.getUnstakingBuilder();
55
+ }
56
+ else {
57
+ throw new sdk_core_1.NotSupported('Transaction cannot be parsed or has an unsupported transaction type');
58
+ }
17
59
  }
18
60
  }
19
61
  exports.TransactionBuilderFactory = TransactionBuilderFactory;
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtREFBcUU7QUFJckUsTUFBYSx5QkFBMEIsU0FBUSx3Q0FBNkI7SUFDMUUsa0JBQWtCO0lBQ2xCLElBQUksQ0FBQyxHQUFXO1FBQ2QsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsa0JBQWtCO1FBQ2hCLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLDhCQUE4QjtRQUM1QixNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDN0MsQ0FBQztDQUNGO0FBZkQsOERBZUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlciB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyJztcbmltcG9ydCB7IFRyYW5zZmVyQnVpbGRlciB9IGZyb20gJy4vdHJhbnNmZXJCdWlsZGVyJztcblxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkgZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSB7XG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBmcm9tKHJhdzogc3RyaW5nKTogVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ01ldGhvZCBub3QgaW1wbGVtZW50ZWQuJyk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZ2V0VHJhbnNmZXJCdWlsZGVyKCk6IFRyYW5zZmVyQnVpbGRlciB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdNZXRob2Qgbm90IGltcGxlbWVudGVkLicpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldFdhbGxldEluaXRpYWxpemF0aW9uQnVpbGRlcigpOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ01ldGhvZCBub3QgaW1wbGVtZW50ZWQuJyk7XG4gIH1cbn1cbiJdfQ==
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxtREFBd0c7QUFFeEcsc0VBQXVEO0FBQ3ZELHlCQUFzRTtBQUN0RSx1REFBb0Q7QUFDcEQsb0RBQTRCO0FBQzVCLHFEQUFrRDtBQUNsRCxxREFBa0Q7QUFFbEQsTUFBYSx5QkFBMEIsU0FBUSx3Q0FBNkI7SUFHMUUsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxlQUFLLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixPQUFPLElBQUksaUNBQWUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsT0FBTyxJQUFJLCtCQUFjLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVELG1CQUFtQjtRQUNqQixPQUFPLElBQUksK0JBQWMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQsOEJBQThCO1FBQzVCLE1BQU0sSUFBSSw4QkFBbUIsQ0FBQyw0QkFBNEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLGtCQUFrQixDQUFDLENBQUM7SUFDckcsQ0FBQztJQUVELElBQUksQ0FBQyxNQUFjO1FBQ2pCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDeEMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNyQixPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRUQsUUFBUSxDQUFDLFFBQTRCO1FBQ25DLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1FBQzFCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVPLFVBQVUsQ0FBQyxNQUFjO1FBQy9CLE1BQU0sUUFBUSxHQUFHLG9CQUFpQixDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDL0QsTUFBTSxVQUFVLEdBQUcsSUFBQSwyQkFBTSxFQUFDLE1BQU0sRUFBRTtZQUNoQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRO1lBQ3BDLFFBQVEsRUFBRSxRQUFRO1NBQ25CLENBQUMsQ0FBQztRQUVILE1BQU0sVUFBVSxHQUFHLFVBQVUsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDO1FBQzNDLElBQUksVUFBVSxLQUFLLFlBQVMsQ0FBQyxXQUFXLENBQUMsaUJBQWlCLElBQUksVUFBVSxLQUFLLFlBQVMsQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDL0csT0FBTyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUNuQyxDQUFDO2FBQU0sSUFBSSxVQUFVLEtBQUssWUFBUyxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN6RCxPQUFPLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ2xDLENBQUM7YUFBTSxJQUFJLFVBQVUsS0FBSyxZQUFTLENBQUMsV0FBVyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQzVELE9BQU8sSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDcEMsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLElBQUksdUJBQVksQ0FBQyxxRUFBcUUsQ0FBQyxDQUFDO1FBQ2hHLENBQUM7SUFDSCxDQUFDO0NBQ0Y7QUFyREQsOERBcURDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZVRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksIE5vdEltcGxlbWVudGVkRXJyb3IsIE5vdFN1cHBvcnRlZCB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7IGRlY29kZSB9IGZyb20gJ0BzdWJzdHJhdGUvdHh3cmFwcGVyLXBvbGthZG90JztcbmltcG9ydCB7IFNpbmdsZXRvblJlZ2lzdHJ5LCBUcmFuc2FjdGlvbkJ1aWxkZXIsIEludGVyZmFjZSB9IGZyb20gJy4vJztcbmltcG9ydCB7IFRyYW5zZmVyQnVpbGRlciB9IGZyb20gJy4vdHJhbnNmZXJCdWlsZGVyJztcbmltcG9ydCB1dGlscyBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IFN0YWtpbmdCdWlsZGVyIH0gZnJvbSAnLi9zdGFraW5nQnVpbGRlcic7XG5pbXBvcnQgeyBVbnN0YWtlQnVpbGRlciB9IGZyb20gJy4vdW5zdGFrZUJ1aWxkZXInO1xuXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IHtcbiAgcHJvdGVjdGVkIF9tYXRlcmlhbDogSW50ZXJmYWNlLk1hdGVyaWFsO1xuXG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgICB0aGlzLl9tYXRlcmlhbCA9IHV0aWxzLmdldE1hdGVyaWFsKF9jb2luQ29uZmlnLm5ldHdvcmsudHlwZSk7XG4gIH1cblxuICBnZXRUcmFuc2ZlckJ1aWxkZXIoKTogVHJhbnNmZXJCdWlsZGVyIHtcbiAgICByZXR1cm4gbmV3IFRyYW5zZmVyQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKS5tYXRlcmlhbCh0aGlzLl9tYXRlcmlhbCk7XG4gIH1cblxuICBnZXRTdGFraW5nQnVpbGRlcigpOiBTdGFraW5nQnVpbGRlciB7XG4gICAgcmV0dXJuIG5ldyBTdGFraW5nQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKS5tYXRlcmlhbCh0aGlzLl9tYXRlcmlhbCk7XG4gIH1cblxuICBnZXRVbnN0YWtpbmdCdWlsZGVyKCk6IFVuc3Rha2VCdWlsZGVyIHtcbiAgICByZXR1cm4gbmV3IFVuc3Rha2VCdWlsZGVyKHRoaXMuX2NvaW5Db25maWcpLm1hdGVyaWFsKHRoaXMuX21hdGVyaWFsKTtcbiAgfVxuXG4gIGdldFdhbGxldEluaXRpYWxpemF0aW9uQnVpbGRlcigpOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcihgd2FsbGV0SW5pdGlhbGl6YXRpb24gZm9yICR7dGhpcy5fY29pbkNvbmZpZy5uYW1lfSBub3QgaW1wbGVtZW50ZWRgKTtcbiAgfVxuXG4gIGZyb20ocmF3VHhuOiBzdHJpbmcpOiBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICAgIGNvbnN0IGJ1aWxkZXIgPSB0aGlzLmdldEJ1aWxkZXIocmF3VHhuKTtcbiAgICBidWlsZGVyLmZyb20ocmF3VHhuKTtcbiAgICByZXR1cm4gYnVpbGRlcjtcbiAgfVxuXG4gIG1hdGVyaWFsKG1hdGVyaWFsOiBJbnRlcmZhY2UuTWF0ZXJpYWwpOiB0aGlzIHtcbiAgICB0aGlzLl9tYXRlcmlhbCA9IG1hdGVyaWFsO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRCdWlsZGVyKHJhd1R4bjogc3RyaW5nKTogVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgICBjb25zdCByZWdpc3RyeSA9IFNpbmdsZXRvblJlZ2lzdHJ5LmdldEluc3RhbmNlKHRoaXMuX21hdGVyaWFsKTtcbiAgICBjb25zdCBkZWNvZGVkVHhuID0gZGVjb2RlKHJhd1R4biwge1xuICAgICAgbWV0YWRhdGFScGM6IHRoaXMuX21hdGVyaWFsLm1ldGFkYXRhLFxuICAgICAgcmVnaXN0cnk6IHJlZ2lzdHJ5LFxuICAgIH0pO1xuXG4gICAgY29uc3QgbWV0aG9kTmFtZSA9IGRlY29kZWRUeG4ubWV0aG9kPy5uYW1lO1xuICAgIGlmIChtZXRob2ROYW1lID09PSBJbnRlcmZhY2UuTWV0aG9kTmFtZXMuVHJhbnNmZXJLZWVwQWxpdmUgfHwgbWV0aG9kTmFtZSA9PT0gSW50ZXJmYWNlLk1ldGhvZE5hbWVzLlRyYW5zZmVyQWxsKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRUcmFuc2ZlckJ1aWxkZXIoKTtcbiAgICB9IGVsc2UgaWYgKG1ldGhvZE5hbWUgPT09IEludGVyZmFjZS5NZXRob2ROYW1lcy5BZGRTdGFrZSkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0U3Rha2luZ0J1aWxkZXIoKTtcbiAgICB9IGVsc2UgaWYgKG1ldGhvZE5hbWUgPT09IEludGVyZmFjZS5NZXRob2ROYW1lcy5SZW1vdmVTdGFrZSkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0VW5zdGFraW5nQnVpbGRlcigpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgTm90U3VwcG9ydGVkKCdUcmFuc2FjdGlvbiBjYW5ub3QgYmUgcGFyc2VkIG9yIGhhcyBhbiB1bnN1cHBvcnRlZCB0cmFuc2FjdGlvbiB0eXBlJyk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -1,8 +1,6 @@
1
- import { TransactionBuilder } from './transactionBuilder';
2
1
  import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
3
- import { TransactionType } from '@bitgo-beta/sdk-core';
4
- export declare class TransferBuilder extends TransactionBuilder {
2
+ import { TransferBuilder as SubstrateTransferBuilder } from '@bitgo-beta/abstract-substrate';
3
+ export declare class TransferBuilder extends SubstrateTransferBuilder {
5
4
  constructor(_coinConfig: Readonly<CoinConfig>);
6
- protected get transactionType(): TransactionType;
7
5
  }
8
6
  //# sourceMappingURL=transferBuilder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transferBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transferBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,qBAAa,eAAgB,SAAQ,kBAAkB;gBACzC,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;CACF"}
1
+ {"version":3,"file":"transferBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transferBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,eAAe,IAAI,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAG7F,qBAAa,eAAgB,SAAQ,wBAAwB;gBAC/C,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;CAI9C"}
@@ -1,15 +1,16 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.TransferBuilder = void 0;
4
- const transactionBuilder_1 = require("./transactionBuilder");
5
- const sdk_core_1 = require("@bitgo-beta/sdk-core");
6
- class TransferBuilder extends transactionBuilder_1.TransactionBuilder {
7
+ const abstract_substrate_1 = require("@bitgo-beta/abstract-substrate");
8
+ const utils_1 = __importDefault(require("./utils"));
9
+ class TransferBuilder extends abstract_substrate_1.TransferBuilder {
7
10
  constructor(_coinConfig) {
8
11
  super(_coinConfig);
9
- }
10
- get transactionType() {
11
- return sdk_core_1.TransactionType.Send;
12
+ this.material(utils_1.default.getMaterial(_coinConfig.network.type));
12
13
  }
13
14
  }
14
15
  exports.TransferBuilder = TransferBuilder;
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXJCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90cmFuc2ZlckJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkRBQTBEO0FBRTFELG1EQUF1RDtBQUV2RCxNQUFhLGVBQWdCLFNBQVEsdUNBQWtCO0lBQ3JELFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxJQUFjLGVBQWU7UUFDM0IsT0FBTywwQkFBZSxDQUFDLElBQUksQ0FBQztJQUM5QixDQUFDO0NBQ0Y7QUFSRCwwQ0FRQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlciB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uVHlwZSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcblxuZXhwb3J0IGNsYXNzIFRyYW5zZmVyQnVpbGRlciBleHRlbmRzIFRyYW5zYWN0aW9uQnVpbGRlciB7XG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXQgdHJhbnNhY3Rpb25UeXBlKCk6IFRyYW5zYWN0aW9uVHlwZSB7XG4gICAgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZS5TZW5kO1xuICB9XG59XG4iXX0=
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXJCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90cmFuc2ZlckJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsdUVBQTZGO0FBQzdGLG9EQUE0QjtBQUU1QixNQUFhLGVBQWdCLFNBQVEsb0NBQXdCO0lBQzNELFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ25CLElBQUksQ0FBQyxRQUFRLENBQUMsZUFBSyxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDN0QsQ0FBQztDQUNGO0FBTEQsMENBS0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBUcmFuc2ZlckJ1aWxkZXIgYXMgU3Vic3RyYXRlVHJhbnNmZXJCdWlsZGVyIH0gZnJvbSAnQGJpdGdvLWJldGEvYWJzdHJhY3Qtc3Vic3RyYXRlJztcbmltcG9ydCB1dGlscyBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGNsYXNzIFRyYW5zZmVyQnVpbGRlciBleHRlbmRzIFN1YnN0cmF0ZVRyYW5zZmVyQnVpbGRlciB7XG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgICB0aGlzLm1hdGVyaWFsKHV0aWxzLmdldE1hdGVyaWFsKF9jb2luQ29uZmlnLm5ldHdvcmsudHlwZSkpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,66 @@
1
+ import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
2
+ import { UnsignedTransaction, DecodedSignedTx, DecodedSigningPayload } from '@substrate/txwrapper-core';
3
+ import { TransactionType, BaseAddress } from '@bitgo-beta/sdk-core';
4
+ import { Transaction, TransactionBuilder } from '@bitgo-beta/abstract-substrate';
5
+ export declare class UnstakeBuilder extends TransactionBuilder {
6
+ protected _amount: string;
7
+ protected _hotkey: string;
8
+ protected _netuid: string;
9
+ constructor(_coinConfig: Readonly<CoinConfig>);
10
+ /**
11
+ * Construct a transaction to unstake
12
+ *
13
+ * @returns {UnsignedTransaction} an unsigned unstake TAO transaction
14
+ *
15
+ * @see https://polkadot.js.org/docs/substrate/extrinsics/#staking
16
+ */
17
+ protected buildTransaction(): UnsignedTransaction;
18
+ /** @inheritdoc */
19
+ protected get transactionType(): TransactionType;
20
+ /**
21
+ * The amount to unstake.
22
+ *
23
+ * @param {string} amount to unstake
24
+ * @returns {UnstakeBuilder} This unstaking builder.
25
+ *
26
+ * @see https://wiki.polkadot.network/docs/learn-nominator#required-minimum-stake
27
+ */
28
+ amount(amount: string): this;
29
+ /**
30
+ * The controller of the staked amount.
31
+ *
32
+ * @param {string} hotkey address of validator
33
+ * @returns {UnstakeBuilder} This unstaking builder.
34
+ *
35
+ * @see https://wiki.polkadot.network/docs/learn-staking#accounts
36
+ */
37
+ hotkey({ address }: BaseAddress): this;
38
+ /**
39
+ * Netuid of the subnet (root network is 0)
40
+ * @param {string} netuid
41
+ * @returns {UnstakeBuilder} This unstaking builder
42
+ */
43
+ netuid(netuid: string): this;
44
+ /** @inheritdoc */
45
+ protected fromImplementation(rawTransaction: string): Transaction;
46
+ /** @inheritdoc */
47
+ validateTransaction(_: Transaction): void;
48
+ /**
49
+ * Helper method to validate whether unstake params have the correct type and format
50
+ * @param {string} amountUnstaked amount to unstake
51
+ * @param {string} hotkey hotkey address of the validator
52
+ * @param {string} netuid netuid of the subnet
53
+ */
54
+ private validateFields;
55
+ /** @inheritdoc */
56
+ validateDecodedTransaction(decodedTxn: DecodedSigningPayload | DecodedSignedTx, rawTransaction: string): void;
57
+ /**
58
+ * Construct a transaction to unstake
59
+ *
60
+ * @param {Interface.RemoveStakeArgs} RemoveStake arguments to be passed to the addStake method
61
+ * @param {Interface.CreateBaseTxInfo} Base txn info required to construct the removeStake txn
62
+ * @returns {UnsignedTransaction} an unsigned unstake TAO transaction
63
+ */
64
+ private removeStake;
65
+ }
66
+ //# sourceMappingURL=unstakeBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unstakeBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/unstakeBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAgB,mBAAmB,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAEtH,OAAO,EAA2B,eAAe,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAC7F,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAqB,MAAM,gCAAgC,CAAC;AAEpG,qBAAa,cAAe,SAAQ,kBAAkB;IACpD,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;gBAEd,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C;;;;;;OAMG;IACH,SAAS,CAAC,gBAAgB,IAAI,mBAAmB;IAYjD,kBAAkB;IAClB,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAM5B;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,OAAO,EAAE,EAAE,WAAW,GAAG,IAAI;IAMtC;;;;OAIG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAK5B,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW;IAajE,kBAAkB;IAClB,mBAAmB,CAAC,CAAC,EAAE,WAAW,GAAG,IAAI;IAKzC;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IActB,kBAAkB;IAClB,0BAA0B,CAAC,UAAU,EAAE,qBAAqB,GAAG,eAAe,EAAE,cAAc,EAAE,MAAM,GAAG,IAAI;IAa7G;;;;;;OAMG;IACH,OAAO,CAAC,WAAW;CAapB"}
@@ -0,0 +1,136 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.UnstakeBuilder = void 0;
7
+ const txwrapper_core_1 = require("@substrate/txwrapper-core");
8
+ const bignumber_js_1 = __importDefault(require("bignumber.js"));
9
+ const sdk_core_1 = require("@bitgo-beta/sdk-core");
10
+ const abstract_substrate_1 = require("@bitgo-beta/abstract-substrate");
11
+ class UnstakeBuilder extends abstract_substrate_1.TransactionBuilder {
12
+ constructor(_coinConfig) {
13
+ super(_coinConfig);
14
+ }
15
+ /**
16
+ * Construct a transaction to unstake
17
+ *
18
+ * @returns {UnsignedTransaction} an unsigned unstake TAO transaction
19
+ *
20
+ * @see https://polkadot.js.org/docs/substrate/extrinsics/#staking
21
+ */
22
+ buildTransaction() {
23
+ const baseTxInfo = this.createBaseTxInfo();
24
+ return this.removeStake({
25
+ amountUnstaked: this._amount,
26
+ hotkey: this._hotkey,
27
+ netuid: this._netuid,
28
+ }, baseTxInfo);
29
+ }
30
+ /** @inheritdoc */
31
+ get transactionType() {
32
+ return sdk_core_1.TransactionType.StakingDeactivate;
33
+ }
34
+ /**
35
+ * The amount to unstake.
36
+ *
37
+ * @param {string} amount to unstake
38
+ * @returns {UnstakeBuilder} This unstaking builder.
39
+ *
40
+ * @see https://wiki.polkadot.network/docs/learn-nominator#required-minimum-stake
41
+ */
42
+ amount(amount) {
43
+ this.validateValue(new bignumber_js_1.default(amount));
44
+ this._amount = amount;
45
+ return this;
46
+ }
47
+ /**
48
+ * The controller of the staked amount.
49
+ *
50
+ * @param {string} hotkey address of validator
51
+ * @returns {UnstakeBuilder} This unstaking builder.
52
+ *
53
+ * @see https://wiki.polkadot.network/docs/learn-staking#accounts
54
+ */
55
+ hotkey({ address }) {
56
+ this.validateAddress({ address });
57
+ this._hotkey = address;
58
+ return this;
59
+ }
60
+ /**
61
+ * Netuid of the subnet (root network is 0)
62
+ * @param {string} netuid
63
+ * @returns {UnstakeBuilder} This unstaking builder
64
+ */
65
+ netuid(netuid) {
66
+ this._netuid = netuid;
67
+ return this;
68
+ }
69
+ /** @inheritdoc */
70
+ fromImplementation(rawTransaction) {
71
+ const tx = super.fromImplementation(rawTransaction);
72
+ if (this._method?.name === abstract_substrate_1.Interface.MethodNames.RemoveStake) {
73
+ const txMethod = this._method.args;
74
+ this.amount(txMethod.amountUnstaked);
75
+ this.hotkey({ address: txMethod.hotkey });
76
+ this.netuid(txMethod.netuid);
77
+ }
78
+ else {
79
+ throw new sdk_core_1.InvalidTransactionError(`Invalid Transaction Type: ${this._method?.name}. Expected addStake`);
80
+ }
81
+ return tx;
82
+ }
83
+ /** @inheritdoc */
84
+ validateTransaction(_) {
85
+ super.validateTransaction(_);
86
+ this.validateFields(this._amount, this._hotkey, this._netuid);
87
+ }
88
+ /**
89
+ * Helper method to validate whether unstake params have the correct type and format
90
+ * @param {string} amountUnstaked amount to unstake
91
+ * @param {string} hotkey hotkey address of the validator
92
+ * @param {string} netuid netuid of the subnet
93
+ */
94
+ validateFields(amountUnstaked, hotkey, netuid) {
95
+ const validationResult = abstract_substrate_1.Schema.UnstakeTransactionSchema.validate({
96
+ amountUnstaked,
97
+ hotkey,
98
+ netuid,
99
+ });
100
+ if (validationResult.error) {
101
+ throw new sdk_core_1.InvalidTransactionError(`UnStake Builder Transaction validation failed: ${validationResult.error.message}`);
102
+ }
103
+ }
104
+ /** @inheritdoc */
105
+ validateDecodedTransaction(decodedTxn, rawTransaction) {
106
+ if (decodedTxn.method?.name === abstract_substrate_1.Interface.MethodNames.RemoveStake) {
107
+ const txMethod = decodedTxn.method.args;
108
+ const amountUnstaked = txMethod.amountUnstaked;
109
+ const hotkey = txMethod.hotkey;
110
+ const netuid = txMethod.netuid;
111
+ const validationResult = abstract_substrate_1.Schema.UnstakeTransactionSchema.validate({ amountUnstaked, hotkey, netuid });
112
+ if (validationResult.error) {
113
+ throw new sdk_core_1.InvalidTransactionError(`Transfer Transaction validation failed: ${validationResult.error.message}`);
114
+ }
115
+ }
116
+ }
117
+ /**
118
+ * Construct a transaction to unstake
119
+ *
120
+ * @param {Interface.RemoveStakeArgs} RemoveStake arguments to be passed to the addStake method
121
+ * @param {Interface.CreateBaseTxInfo} Base txn info required to construct the removeStake txn
122
+ * @returns {UnsignedTransaction} an unsigned unstake TAO transaction
123
+ */
124
+ removeStake(args, info) {
125
+ return (0, txwrapper_core_1.defineMethod)({
126
+ method: {
127
+ args,
128
+ name: 'removeStake',
129
+ pallet: 'subtensorModule',
130
+ },
131
+ ...info.baseTxInfo,
132
+ }, info.options);
133
+ }
134
+ }
135
+ exports.UnstakeBuilder = UnstakeBuilder;
136
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5zdGFrZUJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3Vuc3Rha2VCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUNBLDhEQUFzSDtBQUN0SCxnRUFBcUM7QUFDckMsbURBQTZGO0FBQzdGLHVFQUFvRztBQUVwRyxNQUFhLGNBQWUsU0FBUSx1Q0FBa0I7SUFLcEQsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNPLGdCQUFnQjtRQUN4QixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUMzQyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQ3JCO1lBQ0UsY0FBYyxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQzVCLE1BQU0sRUFBRSxJQUFJLENBQUMsT0FBTztZQUNwQixNQUFNLEVBQUUsSUFBSSxDQUFDLE9BQU87U0FDckIsRUFDRCxVQUFVLENBQ1gsQ0FBQztJQUNKLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsSUFBYyxlQUFlO1FBQzNCLE9BQU8sMEJBQWUsQ0FBQyxpQkFBaUIsQ0FBQztJQUMzQyxDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNILE1BQU0sQ0FBQyxNQUFjO1FBQ25CLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxzQkFBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDMUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7UUFDdEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNILE1BQU0sQ0FBQyxFQUFFLE9BQU8sRUFBZTtRQUM3QixJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUN2QixPQUFPLElBQUksQ0FBQztJ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LGlCQUFpQjthQUMxQjtZQUNELEdBQUcsSUFBSSxDQUFDLFVBQVU7U0FDbkIsRUFDRCxJQUFJLENBQUMsT0FBTyxDQUNiLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUFqSkQsd0NBaUpDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgZGVmaW5lTWV0aG9kLCBVbnNpZ25lZFRyYW5zYWN0aW9uLCBEZWNvZGVkU2lnbmVkVHgsIERlY29kZWRTaWduaW5nUGF5bG9hZCB9IGZyb20gJ0BzdWJzdHJhdGUvdHh3cmFwcGVyLWNvcmUnO1xuaW1wb3J0IEJpZ051bWJlciBmcm9tICdiaWdudW1iZXIuanMnO1xuaW1wb3J0IHsgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IsIFRyYW5zYWN0aW9uVHlwZSwgQmFzZUFkZHJlc3MgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiwgVHJhbnNhY3Rpb25CdWlsZGVyLCBJbnRlcmZhY2UsIFNjaGVtYSB9IGZyb20gJ0BiaXRnby1iZXRhL2Fic3RyYWN0LXN1YnN0cmF0ZSc7XG5cbmV4cG9ydCBjbGFzcyBVbnN0YWtlQnVpbGRlciBleHRlbmRzIFRyYW5zYWN0aW9uQnVpbGRlciB7XG4gIHByb3RlY3RlZCBfYW1vdW50OiBzdHJpbmc7XG4gIHByb3RlY3RlZCBfaG90a2V5OiBzdHJpbmc7XG4gIHByb3RlY3RlZCBfbmV0dWlkOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnN0cnVjdCBhIHRyYW5zYWN0aW9uIHRvIHVuc3Rha2VcbiAgICpcbiAgICogQHJldHVybnMge1Vuc2lnbmVkVHJhbnNhY3Rpb259IGFuIHVuc2lnbmVkIHVuc3Rha2UgVEFPIHRyYW5zYWN0aW9uXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9wb2xrYWRvdC5qcy5vcmcvZG9jcy9zdWJzdHJhdGUvZXh0cmluc2ljcy8jc3Rha2luZ1xuICAgKi9cbiAgcHJvdGVjdGVkIGJ1aWxkVHJhbnNhY3Rpb24oKTogVW5zaWduZWRUcmFuc2FjdGlvbiB7XG4gICAgY29uc3QgYmFzZVR4SW5mbyA9IHRoaXMuY3JlYXRlQmFzZVR4SW5mbygpO1xuICAgIHJldHVybiB0aGlzLnJlbW92ZVN0YWtlKFxuICAgICAge1xuICAgICAgICBhbW91bnRVbnN0YWtlZDogdGhpcy5fYW1vdW50LFxuICAgICAgICBob3RrZXk6IHRoaXMuX2hvdGtleSxcbiAgICAgICAgbmV0dWlkOiB0aGlzLl9uZXR1aWQsXG4gICAgICB9LFxuICAgICAgYmFzZVR4SW5mb1xuICAgICk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLlN0YWtpbmdEZWFjdGl2YXRlO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBhbW91bnQgdG8gdW5zdGFrZS5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGFtb3VudCB0byB1bnN0YWtlXG4gICAqIEByZXR1cm5zIHtVbnN0YWtlQnVpbGRlcn0gVGhpcyB1bnN0YWtpbmcgYnVpbGRlci5cbiAgICpcbiAgICogQHNlZSBodHRwczovL3dpa2kucG9sa2Fkb3QubmV0d29yay9kb2NzL2xlYXJuLW5vbWluYXRvciNyZXF1aXJlZC1taW5pbXVtLXN0YWtlXG4gICAqL1xuICBhbW91bnQoYW1vdW50OiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLnZhbGlkYXRlVmFsdWUobmV3IEJpZ051bWJlcihhbW91bnQpKTtcbiAgICB0aGlzLl9hbW91bnQgPSBhbW91bnQ7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGNvbnRyb2xsZXIgb2YgdGhlIHN0YWtlZCBhbW91bnQuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBob3RrZXkgYWRkcmVzcyBvZiB2YWxpZGF0b3JcbiAgICogQHJldHVybnMge1Vuc3Rha2VCdWlsZGVyfSBUaGlzIHVuc3Rha2luZyBidWlsZGVyLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vd2lraS5wb2xrYWRvdC5uZXR3b3JrL2RvY3MvbGVhcm4tc3Rha2luZyNhY2NvdW50c1xuICAgKi9cbiAgaG90a2V5KHsgYWRkcmVzcyB9OiBCYXNlQWRkcmVzcyk6IHRoaXMge1xuICAgIHRoaXMudmFsaWRhdGVBZGRyZXNzKHsgYWRkcmVzcyB9KTtcbiAgICB0aGlzLl9ob3RrZXkgPSBhZGRyZXNzO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIE5ldHVpZCBvZiB0aGUgc3VibmV0IChyb290IG5ldHdvcmsgaXMgMClcbiAgICogQHBhcmFtIHtzdHJpbmd9IG5ldHVpZFxuICAgKiBAcmV0dXJucyB7VW5zdGFrZUJ1aWxkZXJ9IFRoaXMgdW5zdGFraW5nIGJ1aWxkZXJcbiAgICovXG4gIG5ldHVpZChuZXR1aWQ6IHN0cmluZyk6IHRoaXMge1xuICAgIHRoaXMuX25ldHVpZCA9IG5ldHVpZDtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgZnJvbUltcGxlbWVudGF0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiBUcmFuc2FjdGlvbiB7XG4gICAgY29uc3QgdHggPSBzdXBlci5mcm9tSW1wbGVtZW50YXRpb24ocmF3VHJhbnNhY3Rpb24pO1xuICAgIGlmICh0aGlzLl9tZXRob2Q/Lm5hbWUgPT09IEludGVyZmFjZS5NZXRob2ROYW1lcy5SZW1vdmVTdGFrZSkge1xuICAgICAgY29uc3QgdHhNZXRob2QgPSB0aGlzLl9tZXRob2QuYXJncyBhcyBJbnRlcmZhY2UuUmVtb3ZlU3Rha2VBcmdzO1xuICAgICAgdGhpcy5hbW91bnQodHhNZXRob2QuYW1vdW50VW5zdGFrZWQpO1xuICAgICAgdGhpcy5ob3RrZXkoeyBhZGRyZXNzOiB0eE1ldGhvZC5ob3RrZXkgfSk7XG4gICAgICB0aGlzLm5ldHVpZCh0eE1ldGhvZC5uZXR1aWQpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoYEludmFsaWQgVHJhbnNhY3Rpb24gVHlwZTogJHt0aGlzLl9tZXRob2Q/Lm5hbWV9LiBFeHBlY3RlZCBhZGRTdGFrZWApO1xuICAgIH1cbiAgICByZXR1cm4gdHg7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVUcmFuc2FjdGlvbihfOiBUcmFuc2FjdGlvbik6IHZvaWQge1xuICAgIHN1cGVyLnZhbGlkYXRlVHJhbnNhY3Rpb24oXyk7XG4gICAgdGhpcy52YWxpZGF0ZUZpZWxkcyh0aGlzLl9hbW91bnQsIHRoaXMuX2hvdGtleSwgdGhpcy5fbmV0dWlkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBIZWxwZXIgbWV0aG9kIHRvIHZhbGlkYXRlIHdoZXRoZXIgdW5zdGFrZSBwYXJhbXMgaGF2ZSB0aGUgY29ycmVjdCB0eXBlIGFuZCBmb3JtYXRcbiAgICogQHBhcmFtIHtzdHJpbmd9IGFtb3VudFVuc3Rha2VkIGFtb3VudCB0byB1bnN0YWtlXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBob3RrZXkgaG90a2V5IGFkZHJlc3Mgb2YgdGhlIHZhbGlkYXRvclxuICAgKiBAcGFyYW0ge3N0cmluZ30gbmV0dWlkIG5ldHVpZCBvZiB0aGUgc3VibmV0XG4gICAqL1xuICBwcml2YXRlIHZhbGlkYXRlRmllbGRzKGFtb3VudFVuc3Rha2VkOiBzdHJpbmcsIGhvdGtleTogc3RyaW5nLCBuZXR1aWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IHZhbGlkYXRpb25SZXN1bHQgPSBTY2hlbWEuVW5zdGFrZVRyYW5zYWN0aW9uU2NoZW1hLnZhbGlkYXRlKHtcbiAgICAgIGFtb3VudFVuc3Rha2VkLFxuICAgICAgaG90a2V5LFxuICAgICAgbmV0dWlkLFxuICAgIH0pO1xuXG4gICAgaWYgKHZhbGlkYXRpb25SZXN1bHQuZXJyb3IpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcihcbiAgICAgICAgYFVuU3Rha2UgQnVpbGRlciBUcmFuc2FjdGlvbiB2YWxpZGF0aW9uIGZhaWxlZDogJHt2YWxpZGF0aW9uUmVzdWx0LmVycm9yLm1lc3NhZ2V9YFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVEZWNvZGVkVHJhbnNhY3Rpb24oZGVjb2RlZFR4bjogRGVjb2RlZFNpZ25pbmdQYXlsb2FkIHwgRGVjb2RlZFNpZ25lZFR4LCByYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKGRlY29kZWRUeG4ubWV0aG9kPy5uYW1lID09PSBJbnRlcmZhY2UuTWV0aG9kTmFtZXMuUmVtb3ZlU3Rha2UpIHtcbiAgICAgIGNvbnN0IHR4TWV0aG9kID0gZGVjb2RlZFR4bi5tZXRob2QuYXJncyBhcyB1bmtub3duIGFzIEludGVyZmFjZS5SZW1vdmVTdGFrZUFyZ3M7XG4gICAgICBjb25zdCBhbW91bnRVbnN0YWtlZCA9IHR4TWV0aG9kLmFtb3VudFVuc3Rha2VkO1xuICAgICAgY29uc3QgaG90a2V5ID0gdHhNZXRob2QuaG90a2V5O1xuICAgICAgY29uc3QgbmV0dWlkID0gdHhNZXRob2QubmV0dWlkO1xuICAgICAgY29uc3QgdmFsaWRhdGlvblJlc3VsdCA9IFNjaGVtYS5VbnN0YWtlVHJhbnNhY3Rpb25TY2hlbWEudmFsaWRhdGUoeyBhbW91bnRVbnN0YWtlZCwgaG90a2V5LCBuZXR1aWQgfSk7XG4gICAgICBpZiAodmFsaWRhdGlvblJlc3VsdC5lcnJvcikge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoYFRyYW5zZmVyIFRyYW5zYWN0aW9uIHZhbGlkYXRpb24gZmFpbGVkOiAke3ZhbGlkYXRpb25SZXN1bHQuZXJyb3IubWVzc2FnZX1gKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ29uc3RydWN0IGEgdHJhbnNhY3Rpb24gdG8gdW5zdGFrZVxuICAgKlxuICAgKiBAcGFyYW0ge0ludGVyZmFjZS5SZW1vdmVTdGFrZUFyZ3N9IFJlbW92ZVN0YWtlIGFyZ3VtZW50cyB0byBiZSBwYXNzZWQgdG8gdGhlIGFkZFN0YWtlIG1ldGhvZFxuICAgKiBAcGFyYW0ge0ludGVyZmFjZS5DcmVhdGVCYXNlVHhJbmZvfSBCYXNlIHR4biBpbmZvIHJlcXVpcmVkIHRvIGNvbnN0cnVjdCB0aGUgcmVtb3ZlU3Rha2UgdHhuXG4gICAqIEByZXR1cm5zIHtVbnNpZ25lZFRyYW5zYWN0aW9ufSBhbiB1bnNpZ25lZCB1bnN0YWtlIFRBTyB0cmFuc2FjdGlvblxuICAgKi9cbiAgcHJpdmF0ZSByZW1vdmVTdGFrZShhcmdzOiBJbnRlcmZhY2UuUmVtb3ZlU3Rha2VBcmdzLCBpbmZvOiBJbnRlcmZhY2UuQ3JlYXRlQmFzZVR4SW5mbyk6IFVuc2lnbmVkVHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiBkZWZpbmVNZXRob2QoXG4gICAgICB7XG4gICAgICAgIG1ldGhvZDoge1xuICAgICAgICAgIGFyZ3MsXG4gICAgICAgICAgbmFtZTogJ3JlbW92ZVN0YWtlJyxcbiAgICAgICAgICBwYWxsZXQ6ICdzdWJ0ZW5zb3JNb2R1bGUnLFxuICAgICAgICB9LFxuICAgICAgICAuLi5pbmZvLmJhc2VUeEluZm8sXG4gICAgICB9LFxuICAgICAgaW5mby5vcHRpb25zXG4gICAgKTtcbiAgfVxufVxuIl19
@@ -1,257 +1,7 @@
1
- import { DotAssetTypes, BaseUtils, DotAddressFormat, Seed } from '@bitgo-beta/sdk-core';
2
- import { KeyringPair } from '@polkadot/keyring/types';
3
- import { Args, BaseTxInfo, OptionsWithMeta, UnsignedTransaction } from '@substrate/txwrapper-core';
4
- import { DecodedSignedTx, DecodedSigningPayload, TypeRegistry } from '@substrate/txwrapper-core/lib/types';
5
- import { AddProxyBatchCallArgs, BatchArgs, BatchCallObject, HexString, ProxyArgs, StakeArgs, StakeBatchCallArgs, StakeMoreArgs, StakeMoreCallArgs, TransferAllArgs, TransferArgs, TxMethod, UnstakeBatchCallArgs } from './iface';
6
- import { KeyPair } from '.';
7
- export declare class Utils implements BaseUtils {
8
- /** @inheritdoc */
9
- isValidAddress(address: string): boolean;
10
- /** @inheritdoc */
11
- isValidBlockId(hash: string): boolean;
12
- /** @inheritdoc */
13
- isValidPrivateKey(key: string): boolean;
14
- /** @inheritdoc */
15
- isValidPublicKey(key: string): boolean;
16
- /** @inheritdoc */
17
- isValidSignature(signature: string): boolean;
18
- /**
19
- * Verifies the signature on a given message
20
- *
21
- * @param {string} signedMessage the signed message for the signature
22
- * @param {string} signature the signature to verify
23
- * @param {string} address the address of the signer
24
- * @returns {boolean} whether the signature is valid or not
25
- */
26
- verifySignature(signedMessage: string, signature: string, address: string): boolean;
27
- /** @inheritdoc */
28
- isValidTransactionId(txId: string): boolean;
29
- /**
30
- * decodeSeed decodes a substrate seed
31
- *
32
- * @param {string} seed - the seed to be validated.
33
- * @returns {Seed} - the object Seed
34
- */
35
- decodeSeed(seed: string): Seed;
36
- /**
37
- * Helper function to capitalize the first letter of a string
38
- *
39
- * @param {string} val
40
- * @returns {string}
41
- */
42
- capitalizeFirstLetter(val: string): string;
43
- /**
44
- * Helper function to decode the internal method hex in case of a proxy transaction
45
- *
46
- * @param {string | UnsignedTransaction} tx
47
- * @param { metadataRpc: string; registry: TypeRegistry } options
48
- * @returns {TransferArgs}
49
- */
50
- decodeCallMethod(tx: string | UnsignedTransaction, options: {
51
- metadataRpc: string;
52
- registry: TypeRegistry;
53
- }): TransferArgs;
54
- /**
55
- * keyPairFromSeed generates an object with secretKey and publicKey using the substrate sdk
56
- * @param seed 32 bytes long seed
57
- * @returns KeyPair
58
- */
59
- keyPairFromSeed(seed: Uint8Array): KeyPair;
60
- /**
61
- * Signing function. Implement this on the OFFLINE signing device.
62
- *
63
- * @param {KeyringPair} pair - The signing pair.
64
- * @param {string} signingPayload - Payload to sign.
65
- * @param {UnsignedTransaction} transaction - raw transaction to sign
66
- * @param {Object} options
67
- * @param {HexString} options.metadataRpc - metadata that is needed for substrate to sign
68
- * @param {TypeRegistry} options.registry - metadata that is needed for substrate to sign
69
- */
70
- createSignedTx(pair: KeyringPair, signingPayload: string, transaction: UnsignedTransaction, options: {
71
- metadataRpc: HexString;
72
- registry: TypeRegistry;
73
- }): string;
74
- /**
75
- * Serializes the signed transaction
76
- *
77
- * @param transaction Transaction to serialize
78
- * @param signature Signature of the message
79
- * @param metadataRpc Network metadata
80
- * @param registry Transaction registry
81
- * @returns string Serialized transaction
82
- */
83
- serializeSignedTransaction(transaction: any, signature: any, metadataRpc: `0x${string}`, registry: any): string;
84
- /**
85
- * Decodes the substrate address from the given format
86
- *
87
- * @param {string} address
88
- * @param {number} [ss58Format]
89
- * @returns {string}
90
- */
91
- decodeSubstrateAddress(address: string, ss58Format: number): string;
92
- /**
93
- * Decodes the substrate address from the given format
94
- *
95
- * @param {string} address
96
- * @param {number} [ss58Format]
97
- * @returns {string}
98
- */
99
- encodeSubstrateAddress(address: string, ss58Format?: number): string;
100
- /**
101
- * Retrieves the txHash of a signed txHex
102
- *
103
- * @param txHex signed transaction hex
104
- * @returns {string}
105
- */
106
- getTxHash(txHex: string): string;
107
- isSigningPayload(payload: DecodedSigningPayload | DecodedSignedTx): payload is DecodedSigningPayload;
108
- isProxyTransfer(arg: TxMethod['args']): arg is ProxyArgs;
109
- isTransfer(arg: TxMethod['args']): arg is TransferArgs;
110
- isTransferAll(arg: TxMethod['args']): arg is TransferAllArgs;
111
- /**
112
- * Returns true if arg is of type BatchArgs, false otherwise.
113
- *
114
- * @param arg The object to test.
115
- *
116
- * @return true if arg is of type BatchArgs, false otherwise.
117
- */
118
- isBatch(arg: TxMethod['args']): arg is BatchArgs;
119
- /**
120
- * Returns true if arg is of type BatchArgs and the calls of the batch are staking calls: a stake
121
- * call (bond) followed by an add proxy call (addProxy), false otherwise.
122
- *
123
- * @param arg The object to test.
124
- *
125
- * @return true if arg is of type BatchArgs and the calls of the batch are staking calls: a stake
126
- * call (bond) followed by an add proxy call (addProxy), false otherwise.
127
- */
128
- isStakingBatch(arg: TxMethod['args']): arg is BatchArgs;
129
- /**
130
- * Returns true if arg is of type StakeBatchCallArgs, false otherwise.
131
- *
132
- * @param arg The object to test.
133
- *
134
- * @return true if arg is of type StakeBatchCallArgs, false otherwise.
135
- */
136
- isStakeBatchCallArgs(arg: BatchCallObject['args']): arg is StakeBatchCallArgs;
137
- /**
138
- * Returns true if arg is of type AddProxyBatchCallArgs, false otherwise.
139
- *
140
- * @param arg The object to test.
141
- *
142
- * @return true if arg is of type AddProxyBatchCallArgs, false otherwise.
143
- */
144
- isAddProxyBatchCallArgs(arg: BatchCallObject['args']): arg is AddProxyBatchCallArgs;
145
- /**
146
- * Returns true if arg is of type BatchArgs and the calls of the batch are unstaking calls: a remove
147
- * proxy call (removeProxy), followed by a chill call, and an unstake call (unbond), false otherwise.
148
- *
149
- * @param arg The object to test.
150
- *
151
- * @return true if arg is of type BatchArgs and the calls of the batch are unstaking calls: a remove
152
- * proxy call (removeProxy), followed by a chill call, and an unstake call (unbond), false otherwise.
153
- */
154
- isUnstakingBatch(arg: TxMethod['args']): arg is BatchArgs;
155
- /**
156
- * Returns true if arg is of type AddProxyBatchCallArgs, false otherwise.
157
- *
158
- * @param arg The object to test.
159
- *
160
- * @return true if arg is of type AddProxyBatchCallArgs, false otherwise.
161
- */
162
- isRemoveProxyBatchCallArgs(arg: BatchCallObject['args']): arg is AddProxyBatchCallArgs;
163
- /**
164
- * Returns true if arg is of type UnstakeBatchCallArgs, false otherwise.
165
- *
166
- * @param arg The object to test.
167
- *
168
- * @return true if arg is of type UnstakeBatchCallArgs, false otherwise.
169
- */
170
- isUnstakeBatchCallArgs(arg: BatchCallObject['args']): arg is UnstakeBatchCallArgs;
171
- /**
172
- * Returns true if arg is of type StakeArgs, false otherwise.
173
- *
174
- * @param arg The object to test.
175
- *
176
- * @return true if arg is of type StakeArgs, false otherwise.
177
- */
178
- isBond(arg: TxMethod['args']): arg is StakeArgs;
179
- /**
180
- * Returns true if arg is of type StakeMoreArgs, false otherwise.
181
- *
182
- * @param arg The object to test.
183
- *
184
- * @return true if arg is of type StakeMoreArgs, false otherwise.
185
- */
186
- isBondExtra(arg: TxMethod['args'] | BatchCallObject['args']): arg is StakeMoreArgs;
187
- /**
188
- * Returns true if arg is of type StakeMoreArgs, false otherwise.
189
- *
190
- * @param arg The object to test.
191
- *
192
- * @return true if arg is of type StakeMoreArgs, false otherwise.
193
- */
194
- isBondBatchExtra(arg: BatchCallObject['args']): arg is StakeMoreCallArgs;
195
- /**
196
- * extracts and returns the signature in hex format given a raw signed transaction
197
- *
198
- * @param {string} rawTx signed raw transaction
199
- * @param options registry substrate registry used to retrieve the signature
200
- */
201
- recoverSignatureFromRawTx(rawTx: string, options: {
202
- registry: TypeRegistry;
203
- }): string;
204
- /**
205
- * Decodes the dot address from the given format
206
- *
207
- * @param {string} address
208
- * @param {number} [ss58Format]
209
- * @returns {KeyPair}
210
- */
211
- decodeSubstrateAddressToKeyPair(address: string, ss58Format?: number): KeyPair;
212
- /**
213
- * Checks whether the given input is a hex string with with 0 value
214
- * used to check whether a given transaction is immortal or mortal
215
- * @param hexValue
216
- */
217
- isZeroHex(hexValue: string): boolean;
218
- /**
219
- * Takes an asset name and returns the respective address to format to
220
- * since substrate addresses differ depending on the network
221
- * @param networkCoinName
222
- */
223
- getAddressFormat(networkCoinName: DotAssetTypes): DotAddressFormat;
224
- /**
225
- * Creates a pure proxy extrinsic. Substrate has renamed anonymous proxies to pure proxies, but
226
- * the libraries we are using to build transactions have not been updated, as a stop gap we are
227
- * defining the pure proxy extrinsic here.
228
- *
229
- * @param args Arguments to the createPure extrinsic.
230
- * @param info Common information to all transactions.
231
- * @param options Chain registry and metadata.
232
- */
233
- pureProxy(args: PureProxyArgs, info: BaseTxInfo, options: OptionsWithMeta): UnsignedTransaction;
234
- /**
235
- * Removes '0x' from a given `string` if present.
236
- *
237
- * @param {string} str the string value.
238
- *
239
- * @return {string} a string without a '0x' prefix.
240
- */
241
- stripHexPrefix(str: string): string;
242
- /**
243
- * Returns true if a string starts with '0x', false otherwise.
244
- *
245
- * @param {string} str the string value.
246
- *
247
- * @return {boolean} true if a string starts with '0x', false otherwise.
248
- */
249
- isHexPrefixed(str: string): boolean;
250
- }
251
- interface PureProxyArgs extends Args {
252
- proxyType: string;
253
- delay: number;
254
- index: number;
1
+ import { Utils as SubstrateUtils, Interface } from '@bitgo-beta/abstract-substrate';
2
+ import { NetworkType } from '@bitgo-beta/statics';
3
+ export declare class Utils extends SubstrateUtils {
4
+ getMaterial(networkType: NetworkType): Interface.Material;
255
5
  }
256
6
  declare const utils: Utils;
257
7
  export default utils;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/lib/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,cAAc,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AACpF,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGlD,qBAAa,KAAM,SAAQ,cAAc;IACvC,WAAW,CAAC,WAAW,EAAE,WAAW,GAAG,SAAS,CAAC,QAAQ;CAG1D;AAED,QAAA,MAAM,KAAK,OAAc,CAAC;AAC1B,eAAe,KAAK,CAAC"}