@bitgo-beta/sdk-coin-tao 1.0.1-alpha.20 → 1.0.1-alpha.200

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 (96) hide show
  1. package/dist/src/index.d.ts +1 -0
  2. package/dist/src/index.d.ts.map +1 -1
  3. package/dist/src/index.js +2 -1
  4. package/dist/src/lib/constants.d.ts +11 -0
  5. package/dist/src/lib/constants.d.ts.map +1 -0
  6. package/dist/src/lib/constants.js +14 -0
  7. package/dist/src/lib/iface.d.ts +16 -0
  8. package/dist/src/lib/iface.d.ts.map +1 -0
  9. package/dist/src/lib/iface.js +3 -0
  10. package/dist/src/lib/index.d.ts +6 -0
  11. package/dist/src/lib/index.d.ts.map +1 -1
  12. package/dist/src/lib/index.js +14 -2
  13. package/dist/src/lib/moveStakeBuilder.d.ts +84 -0
  14. package/dist/src/lib/moveStakeBuilder.d.ts.map +1 -0
  15. package/dist/src/lib/moveStakeBuilder.js +182 -0
  16. package/dist/src/lib/moveStakeTransaction.d.ts +10 -0
  17. package/dist/src/lib/moveStakeTransaction.d.ts.map +1 -0
  18. package/dist/src/lib/moveStakeTransaction.js +68 -0
  19. package/dist/src/lib/stakingBuilder.d.ts +63 -0
  20. package/dist/src/lib/stakingBuilder.d.ts.map +1 -0
  21. package/dist/src/lib/stakingBuilder.js +133 -0
  22. package/dist/src/lib/tokenTransferBuilder.d.ts +79 -0
  23. package/dist/src/lib/tokenTransferBuilder.d.ts.map +1 -0
  24. package/dist/src/lib/tokenTransferBuilder.js +165 -0
  25. package/dist/src/lib/tokenTransferTransaction.d.ts +8 -0
  26. package/dist/src/lib/tokenTransferTransaction.d.ts.map +1 -0
  27. package/dist/src/lib/tokenTransferTransaction.js +57 -0
  28. package/dist/src/lib/transactionBuilderFactory.d.ts +7 -0
  29. package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -1
  30. package/dist/src/lib/transactionBuilderFactory.js +30 -2
  31. package/dist/src/lib/unstakeBuilder.d.ts +66 -0
  32. package/dist/src/lib/unstakeBuilder.d.ts.map +1 -0
  33. package/dist/src/lib/unstakeBuilder.js +136 -0
  34. package/dist/src/lib/utils.d.ts +3 -2
  35. package/dist/src/lib/utils.d.ts.map +1 -1
  36. package/dist/src/lib/utils.js +13 -1
  37. package/dist/src/register.d.ts.map +1 -1
  38. package/dist/src/register.js +5 -1
  39. package/dist/src/resources/testnet.js +2 -2
  40. package/dist/src/tao.d.ts +15 -0
  41. package/dist/src/tao.d.ts.map +1 -1
  42. package/dist/src/tao.js +41 -1
  43. package/dist/src/taoToken.d.ts +19 -0
  44. package/dist/src/taoToken.d.ts.map +1 -0
  45. package/dist/src/taoToken.js +52 -0
  46. package/dist/test/integration/index.d.ts +1 -0
  47. package/dist/test/integration/index.d.ts.map +1 -0
  48. package/dist/test/integration/index.js +1 -0
  49. package/dist/test/resources/index.d.ts +150 -0
  50. package/dist/test/resources/index.d.ts.map +1 -0
  51. package/dist/test/resources/index.js +166 -0
  52. package/dist/test/resources/materialData.json +8 -0
  53. package/dist/test/resources/materialDataModified.json +8 -0
  54. package/dist/test/resources/testnet.d.ts +2 -0
  55. package/dist/test/resources/testnet.d.ts.map +1 -0
  56. package/dist/test/resources/testnet.js +5 -0
  57. package/dist/test/unit/fixtures.d.ts +31 -0
  58. package/dist/test/unit/fixtures.d.ts.map +1 -0
  59. package/dist/test/unit/fixtures.js +107 -0
  60. package/dist/test/unit/tao.d.ts +2 -0
  61. package/dist/test/unit/tao.d.ts.map +1 -0
  62. package/dist/test/unit/tao.js +487 -0
  63. package/dist/test/unit/transactionBuilder/base.d.ts +8 -0
  64. package/dist/test/unit/transactionBuilder/base.d.ts.map +1 -0
  65. package/dist/test/unit/transactionBuilder/base.js +238 -0
  66. package/dist/test/unit/transactionBuilder/moveStakeBuilder.d.ts +2 -0
  67. package/dist/test/unit/transactionBuilder/moveStakeBuilder.d.ts.map +1 -0
  68. package/dist/test/unit/transactionBuilder/moveStakeBuilder.js +472 -0
  69. package/dist/test/unit/transactionBuilder/singeltonRegistry.d.ts +2 -0
  70. package/dist/test/unit/transactionBuilder/singeltonRegistry.d.ts.map +1 -0
  71. package/dist/test/unit/transactionBuilder/singeltonRegistry.js +59 -0
  72. package/dist/test/unit/transactionBuilder/stakingBuilder.d.ts +2 -0
  73. package/dist/test/unit/transactionBuilder/stakingBuilder.d.ts.map +1 -0
  74. package/dist/test/unit/transactionBuilder/stakingBuilder.js +112 -0
  75. package/dist/test/unit/transactionBuilder/tokenTransferBuilder.d.ts +2 -0
  76. package/dist/test/unit/transactionBuilder/tokenTransferBuilder.d.ts.map +1 -0
  77. package/dist/test/unit/transactionBuilder/tokenTransferBuilder.js +93 -0
  78. package/dist/test/unit/transactionBuilder/transactionBuilderFactory.d.ts +2 -0
  79. package/dist/test/unit/transactionBuilder/transactionBuilderFactory.d.ts.map +1 -0
  80. package/dist/test/unit/transactionBuilder/transactionBuilderFactory.js +75 -0
  81. package/dist/test/unit/transactionBuilder/transferBuilder.d.ts +2 -0
  82. package/dist/test/unit/transactionBuilder/transferBuilder.d.ts.map +1 -0
  83. package/dist/test/unit/transactionBuilder/transferBuilder.js +309 -0
  84. package/dist/test/unit/transactionBuilder/unstakeBuilder.d.ts +2 -0
  85. package/dist/test/unit/transactionBuilder/unstakeBuilder.d.ts.map +1 -0
  86. package/dist/test/unit/transactionBuilder/unstakeBuilder.js +112 -0
  87. package/dist/test/unit/util.d.ts +2 -0
  88. package/dist/test/unit/util.d.ts.map +1 -0
  89. package/dist/test/unit/util.js +29 -0
  90. package/dist/tsconfig.tsbuildinfo +1 -0
  91. package/package.json +15 -10
  92. package/.eslintignore +0 -4
  93. package/.gitignore +0 -3
  94. package/.mocharc.yml +0 -8
  95. package/.prettierignore +0 -2
  96. package/CHANGELOG.md +0 -47
@@ -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,7 +1,8 @@
1
- import { Utils as SubstrateUtils, Interface } from '@bitgo-beta/abstract-substrate';
2
- import { NetworkType } from '@bitgo-beta/statics';
1
+ import { Interface, Utils as SubstrateUtils } from '@bitgo-beta/abstract-substrate';
2
+ import { BaseCoin as CoinConfig, NetworkType } from '@bitgo-beta/statics';
3
3
  export declare class Utils extends SubstrateUtils {
4
4
  getMaterial(networkType: NetworkType): Interface.Material;
5
+ getTaoTokenBySubnetId(subnetId: string | number): Readonly<CoinConfig>;
5
6
  }
6
7
  declare const utils: Utils;
7
8
  export default utils;
@@ -1 +1 @@
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"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,IAAI,cAAc,EAAE,MAAM,gCAAgC,CAAC;AACpF,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAS,WAAW,EAAW,MAAM,qBAAqB,CAAC;AAI1F,qBAAa,KAAM,SAAQ,cAAc;IACvC,WAAW,CAAC,WAAW,EAAE,WAAW,GAAG,SAAS,CAAC,QAAQ;IAIzD,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC,UAAU,CAAC;CASvE;AAED,QAAA,MAAM,KAAK,OAAc,CAAC;AAC1B,eAAe,KAAK,CAAC"}
@@ -1,15 +1,27 @@
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.Utils = void 0;
4
7
  const abstract_substrate_1 = require("@bitgo-beta/abstract-substrate");
5
8
  const statics_1 = require("@bitgo-beta/statics");
9
+ const assert_1 = __importDefault(require("assert"));
6
10
  const resources_1 = require("../resources");
7
11
  class Utils extends abstract_substrate_1.Utils {
8
12
  getMaterial(networkType) {
9
13
  return (networkType === statics_1.NetworkType.MAINNET ? resources_1.mainnetMaterial : resources_1.testnetMaterial);
10
14
  }
15
+ getTaoTokenBySubnetId(subnetId) {
16
+ const tokens = statics_1.coins
17
+ .filter((coin) => coin instanceof statics_1.TaoCoin && coin.subnetId === String(subnetId))
18
+ .map((coin) => coin);
19
+ (0, assert_1.default)(tokens.length > 0, `No Tao token found for subnetId: ${subnetId}`);
20
+ (0, assert_1.default)(tokens.length === 1, `Multiple Tao tokens found for subnetId: ${subnetId}`);
21
+ return tokens[0];
22
+ }
11
23
  }
12
24
  exports.Utils = Utils;
13
25
  const utils = new Utils();
14
26
  exports.default = utils;
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHVFQUFvRjtBQUNwRixpREFBa0Q7QUFDbEQsNENBQWdFO0FBRWhFLE1BQWEsS0FBTSxTQUFRLDBCQUFjO0lBQ3ZDLFdBQVcsQ0FBQyxXQUF3QjtRQUNsQyxPQUFPLENBQUMsV0FBVyxLQUFLLHFCQUFXLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQywyQkFBZSxDQUFDLENBQUMsQ0FBQywyQkFBZSxDQUFrQyxDQUFDO0lBQ3BILENBQUM7Q0FDRjtBQUpELHNCQUlDO0FBRUQsTUFBTSxLQUFLLEdBQUcsSUFBSSxLQUFLLEVBQUUsQ0FBQztBQUMxQixrQkFBZSxLQUFLLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVdGlscyBhcyBTdWJzdHJhdGVVdGlscywgSW50ZXJmYWNlIH0gZnJvbSAnQGJpdGdvLWJldGEvYWJzdHJhY3Qtc3Vic3RyYXRlJztcbmltcG9ydCB7IE5ldHdvcmtUeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBtYWlubmV0TWF0ZXJpYWwsIHRlc3RuZXRNYXRlcmlhbCB9IGZyb20gJy4uL3Jlc291cmNlcyc7XG5cbmV4cG9ydCBjbGFzcyBVdGlscyBleHRlbmRzIFN1YnN0cmF0ZVV0aWxzIHtcbiAgZ2V0TWF0ZXJpYWwobmV0d29ya1R5cGU6IE5ldHdvcmtUeXBlKTogSW50ZXJmYWNlLk1hdGVyaWFsIHtcbiAgICByZXR1cm4gKG5ldHdvcmtUeXBlID09PSBOZXR3b3JrVHlwZS5NQUlOTkVUID8gbWFpbm5ldE1hdGVyaWFsIDogdGVzdG5ldE1hdGVyaWFsKSBhcyB1bmtub3duIGFzIEludGVyZmFjZS5NYXRlcmlhbDtcbiAgfVxufVxuXG5jb25zdCB1dGlscyA9IG5ldyBVdGlscygpO1xuZXhwb3J0IGRlZmF1bHQgdXRpbHM7XG4iXX0=
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLHVFQUFvRjtBQUNwRixpREFBMEY7QUFDMUYsb0RBQTRCO0FBQzVCLDRDQUFnRTtBQUVoRSxNQUFhLEtBQU0sU0FBUSwwQkFBYztJQUN2QyxXQUFXLENBQUMsV0FBd0I7UUFDbEMsT0FBTyxDQUFDLFdBQVcsS0FBSyxxQkFBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsMkJBQWUsQ0FBQyxDQUFDLENBQUMsMkJBQWUsQ0FBa0MsQ0FBQztJQUNwSCxDQUFDO0lBRUQscUJBQXFCLENBQUMsUUFBeUI7UUFDN0MsTUFBTSxNQUFNLEdBQUcsZUFBSzthQUNqQixNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksWUFBWSxpQkFBTyxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQy9FLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFdkIsSUFBQSxnQkFBTSxFQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLG9DQUFvQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQzFFLElBQUEsZ0JBQU0sRUFBQyxNQUFNLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSwyQ0FBMkMsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUNuRixPQUFPLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNuQixDQUFDO0NBQ0Y7QUFkRCxzQkFjQztBQUVELE1BQU0sS0FBSyxHQUFHLElBQUksS0FBSyxFQUFFLENBQUM7QUFDMUIsa0JBQWUsS0FBSyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW50ZXJmYWNlLCBVdGlscyBhcyBTdWJzdHJhdGVVdGlscyB9IGZyb20gJ0BiaXRnby1iZXRhL2Fic3RyYWN0LXN1YnN0cmF0ZSc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnLCBjb2lucywgTmV0d29ya1R5cGUsIFRhb0NvaW4gfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IG1haW5uZXRNYXRlcmlhbCwgdGVzdG5ldE1hdGVyaWFsIH0gZnJvbSAnLi4vcmVzb3VyY2VzJztcblxuZXhwb3J0IGNsYXNzIFV0aWxzIGV4dGVuZHMgU3Vic3RyYXRlVXRpbHMge1xuICBnZXRNYXRlcmlhbChuZXR3b3JrVHlwZTogTmV0d29ya1R5cGUpOiBJbnRlcmZhY2UuTWF0ZXJpYWwge1xuICAgIHJldHVybiAobmV0d29ya1R5cGUgPT09IE5ldHdvcmtUeXBlLk1BSU5ORVQgPyBtYWlubmV0TWF0ZXJpYWwgOiB0ZXN0bmV0TWF0ZXJpYWwpIGFzIHVua25vd24gYXMgSW50ZXJmYWNlLk1hdGVyaWFsO1xuICB9XG5cbiAgZ2V0VGFvVG9rZW5CeVN1Ym5ldElkKHN1Ym5ldElkOiBzdHJpbmcgfCBudW1iZXIpOiBSZWFkb25seTxDb2luQ29uZmlnPiB7XG4gICAgY29uc3QgdG9rZW5zID0gY29pbnNcbiAgICAgIC5maWx0ZXIoKGNvaW4pID0+IGNvaW4gaW5zdGFuY2VvZiBUYW9Db2luICYmIGNvaW4uc3VibmV0SWQgPT09IFN0cmluZyhzdWJuZXRJZCkpXG4gICAgICAubWFwKChjb2luKSA9PiBjb2luKTtcblxuICAgIGFzc2VydCh0b2tlbnMubGVuZ3RoID4gMCwgYE5vIFRhbyB0b2tlbiBmb3VuZCBmb3Igc3VibmV0SWQ6ICR7c3VibmV0SWR9YCk7XG4gICAgYXNzZXJ0KHRva2Vucy5sZW5ndGggPT09IDEsIGBNdWx0aXBsZSBUYW8gdG9rZW5zIGZvdW5kIGZvciBzdWJuZXRJZDogJHtzdWJuZXRJZH1gKTtcbiAgICByZXR1cm4gdG9rZW5zWzBdO1xuICB9XG59XG5cbmNvbnN0IHV0aWxzID0gbmV3IFV0aWxzKCk7XG5leHBvcnQgZGVmYXVsdCB1dGlscztcbiJdfQ==
@@ -1 +1 @@
1
- {"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../src/register.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAIjD,eAAO,MAAM,QAAQ,QAAS,SAAS,KAAG,IAGzC,CAAC"}
1
+ {"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../src/register.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAKjD,eAAO,MAAM,QAAQ,QAAS,SAAS,KAAG,IAMzC,CAAC"}
@@ -3,9 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.register = void 0;
4
4
  const tao_1 = require("./tao");
5
5
  const ttao_1 = require("./ttao");
6
+ const taoToken_1 = require("./taoToken");
6
7
  const register = (sdk) => {
7
8
  sdk.register('tao', tao_1.Tao.createInstance);
8
9
  sdk.register('ttao', ttao_1.Ttao.createInstance);
10
+ taoToken_1.TaoToken.createTokenConstructors().forEach(({ name, coinConstructor }) => {
11
+ sdk.register(name, coinConstructor);
12
+ });
9
13
  };
10
14
  exports.register = register;
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcmVnaXN0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsK0JBQTRCO0FBQzVCLGlDQUE4QjtBQUV2QixNQUFNLFFBQVEsR0FBRyxDQUFDLEdBQWMsRUFBUSxFQUFFO0lBQy9DLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLFNBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUN4QyxHQUFHLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxXQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7QUFDNUMsQ0FBQyxDQUFDO0FBSFcsUUFBQSxRQUFRLFlBR25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQml0R29CYXNlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgVGFvIH0gZnJvbSAnLi90YW8nO1xuaW1wb3J0IHsgVHRhbyB9IGZyb20gJy4vdHRhbyc7XG5cbmV4cG9ydCBjb25zdCByZWdpc3RlciA9IChzZGs6IEJpdEdvQmFzZSk6IHZvaWQgPT4ge1xuICBzZGsucmVnaXN0ZXIoJ3RhbycsIFRhby5jcmVhdGVJbnN0YW5jZSk7XG4gIHNkay5yZWdpc3RlcigndHRhbycsIFR0YW8uY3JlYXRlSW5zdGFuY2UpO1xufTtcbiJdfQ==
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcmVnaXN0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsK0JBQTRCO0FBQzVCLGlDQUE4QjtBQUM5Qix5Q0FBc0M7QUFFL0IsTUFBTSxRQUFRLEdBQUcsQ0FBQyxHQUFjLEVBQVEsRUFBRTtJQUMvQyxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxTQUFHLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDeEMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsV0FBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQzFDLG1CQUFRLENBQUMsdUJBQXVCLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsRUFBRSxFQUFFO1FBQ3ZFLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLGVBQWUsQ0FBQyxDQUFDO0lBQ3RDLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBTlcsUUFBQSxRQUFRLFlBTW5CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQml0R29CYXNlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgVGFvIH0gZnJvbSAnLi90YW8nO1xuaW1wb3J0IHsgVHRhbyB9IGZyb20gJy4vdHRhbyc7XG5pbXBvcnQgeyBUYW9Ub2tlbiB9IGZyb20gJy4vdGFvVG9rZW4nO1xuXG5leHBvcnQgY29uc3QgcmVnaXN0ZXIgPSAoc2RrOiBCaXRHb0Jhc2UpOiB2b2lkID0+IHtcbiAgc2RrLnJlZ2lzdGVyKCd0YW8nLCBUYW8uY3JlYXRlSW5zdGFuY2UpO1xuICBzZGsucmVnaXN0ZXIoJ3R0YW8nLCBUdGFvLmNyZWF0ZUluc3RhbmNlKTtcbiAgVGFvVG9rZW4uY3JlYXRlVG9rZW5Db25zdHJ1Y3RvcnMoKS5mb3JFYWNoKCh7IG5hbWUsIGNvaW5Db25zdHJ1Y3RvciB9KSA9PiB7XG4gICAgc2RrLnJlZ2lzdGVyKG5hbWUsIGNvaW5Db25zdHJ1Y3Rvcik7XG4gIH0pO1xufTtcbiJdfQ==