@bitgo/account-lib 2.20.0-rc.33 → 2.20.0-rc.36

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 (102) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/dist/src/coin/polygon/transactionBuilder.d.ts +2 -2
  3. package/dist/src/coin/polygon/transactionBuilder.d.ts.map +1 -1
  4. package/dist/src/coin/polygon/transactionBuilder.js +3 -3
  5. package/dist/src/index.d.ts +2 -2
  6. package/dist/src/index.d.ts.map +1 -1
  7. package/dist/src/index.js +3 -3
  8. package/dist/tsconfig.tsbuildinfo +16628 -21871
  9. package/package.json +20 -26
  10. package/dist/src/coin/dot/addressInitializationBuilder.d.ts +0 -79
  11. package/dist/src/coin/dot/addressInitializationBuilder.d.ts.map +0 -1
  12. package/dist/src/coin/dot/addressInitializationBuilder.js +0 -182
  13. package/dist/src/coin/dot/batchTransactionBuilder.d.ts +0 -47
  14. package/dist/src/coin/dot/batchTransactionBuilder.d.ts.map +0 -1
  15. package/dist/src/coin/dot/batchTransactionBuilder.js +0 -122
  16. package/dist/src/coin/dot/claimBuilder.d.ts +0 -58
  17. package/dist/src/coin/dot/claimBuilder.d.ts.map +0 -1
  18. package/dist/src/coin/dot/claimBuilder.js +0 -119
  19. package/dist/src/coin/dot/errors.d.ts +0 -8
  20. package/dist/src/coin/dot/errors.d.ts.map +0 -1
  21. package/dist/src/coin/dot/errors.js +0 -19
  22. package/dist/src/coin/dot/iface.d.ts +0 -194
  23. package/dist/src/coin/dot/iface.d.ts.map +0 -1
  24. package/dist/src/coin/dot/iface.js +0 -39
  25. package/dist/src/coin/dot/index.d.ts +0 -17
  26. package/dist/src/coin/dot/index.d.ts.map +0 -1
  27. package/dist/src/coin/dot/index.js +0 -53
  28. package/dist/src/coin/dot/keyPair.d.ts +0 -31
  29. package/dist/src/coin/dot/keyPair.d.ts.map +0 -1
  30. package/dist/src/coin/dot/keyPair.js +0 -70
  31. package/dist/src/coin/dot/singletonRegistry.d.ts +0 -7
  32. package/dist/src/coin/dot/singletonRegistry.d.ts.map +0 -1
  33. package/dist/src/coin/dot/singletonRegistry.js +0 -20
  34. package/dist/src/coin/dot/stakingBuilder.d.ts +0 -58
  35. package/dist/src/coin/dot/stakingBuilder.d.ts.map +0 -1
  36. package/dist/src/coin/dot/stakingBuilder.js +0 -139
  37. package/dist/src/coin/dot/transaction.d.ts +0 -65
  38. package/dist/src/coin/dot/transaction.d.ts.map +0 -1
  39. package/dist/src/coin/dot/transaction.js +0 -396
  40. package/dist/src/coin/dot/transactionBuilder.d.ts +0 -131
  41. package/dist/src/coin/dot/transactionBuilder.d.ts.map +0 -1
  42. package/dist/src/coin/dot/transactionBuilder.js +0 -332
  43. package/dist/src/coin/dot/transactionBuilderFactory.d.ts +0 -26
  44. package/dist/src/coin/dot/transactionBuilderFactory.d.ts.map +0 -1
  45. package/dist/src/coin/dot/transactionBuilderFactory.js +0 -93
  46. package/dist/src/coin/dot/transferBuilder.d.ts +0 -71
  47. package/dist/src/coin/dot/transferBuilder.d.ts.map +0 -1
  48. package/dist/src/coin/dot/transferBuilder.js +0 -177
  49. package/dist/src/coin/dot/txnSchema.d.ts +0 -14
  50. package/dist/src/coin/dot/txnSchema.d.ts.map +0 -1
  51. package/dist/src/coin/dot/txnSchema.js +0 -104
  52. package/dist/src/coin/dot/unnominateBuilder.d.ts +0 -24
  53. package/dist/src/coin/dot/unnominateBuilder.d.ts.map +0 -1
  54. package/dist/src/coin/dot/unnominateBuilder.js +0 -50
  55. package/dist/src/coin/dot/unstakeBuilder.d.ts +0 -38
  56. package/dist/src/coin/dot/unstakeBuilder.d.ts.map +0 -1
  57. package/dist/src/coin/dot/unstakeBuilder.js +0 -89
  58. package/dist/src/coin/dot/utils.d.ts +0 -145
  59. package/dist/src/coin/dot/utils.d.ts.map +0 -1
  60. package/dist/src/coin/dot/utils.js +0 -283
  61. package/dist/src/coin/dot/withdrawUnstakedBuilder.d.ts +0 -38
  62. package/dist/src/coin/dot/withdrawUnstakedBuilder.d.ts.map +0 -1
  63. package/dist/src/coin/dot/withdrawUnstakedBuilder.js +0 -90
  64. package/dist/src/coin/hbar/coinTransferBuilder.d.ts +0 -46
  65. package/dist/src/coin/hbar/coinTransferBuilder.d.ts.map +0 -1
  66. package/dist/src/coin/hbar/coinTransferBuilder.js +0 -143
  67. package/dist/src/coin/hbar/constants.d.ts +0 -8
  68. package/dist/src/coin/hbar/constants.d.ts.map +0 -1
  69. package/dist/src/coin/hbar/constants.js +0 -12
  70. package/dist/src/coin/hbar/iface.d.ts +0 -49
  71. package/dist/src/coin/hbar/iface.d.ts.map +0 -1
  72. package/dist/src/coin/hbar/iface.js +0 -3
  73. package/dist/src/coin/hbar/index.d.ts +0 -9
  74. package/dist/src/coin/hbar/index.d.ts.map +0 -1
  75. package/dist/src/coin/hbar/index.js +0 -37
  76. package/dist/src/coin/hbar/keyPair.d.ts +0 -23
  77. package/dist/src/coin/hbar/keyPair.d.ts.map +0 -1
  78. package/dist/src/coin/hbar/keyPair.js +0 -70
  79. package/dist/src/coin/hbar/tokenAssociateBuilder.d.ts +0 -38
  80. package/dist/src/coin/hbar/tokenAssociateBuilder.d.ts.map +0 -1
  81. package/dist/src/coin/hbar/tokenAssociateBuilder.js +0 -126
  82. package/dist/src/coin/hbar/tokenTransferBuilder.d.ts +0 -25
  83. package/dist/src/coin/hbar/tokenTransferBuilder.d.ts.map +0 -1
  84. package/dist/src/coin/hbar/tokenTransferBuilder.js +0 -115
  85. package/dist/src/coin/hbar/transaction.d.ts +0 -106
  86. package/dist/src/coin/hbar/transaction.d.ts.map +0 -1
  87. package/dist/src/coin/hbar/transaction.js +0 -318
  88. package/dist/src/coin/hbar/transactionBuilder.d.ts +0 -111
  89. package/dist/src/coin/hbar/transactionBuilder.d.ts.map +0 -1
  90. package/dist/src/coin/hbar/transactionBuilder.js +0 -270
  91. package/dist/src/coin/hbar/transactionBuilderFactory.d.ts +0 -47
  92. package/dist/src/coin/hbar/transactionBuilderFactory.d.ts.map +0 -1
  93. package/dist/src/coin/hbar/transactionBuilderFactory.js +0 -88
  94. package/dist/src/coin/hbar/transferBuilder.d.ts +0 -24
  95. package/dist/src/coin/hbar/transferBuilder.d.ts.map +0 -1
  96. package/dist/src/coin/hbar/transferBuilder.js +0 -74
  97. package/dist/src/coin/hbar/utils.d.ts +0 -193
  98. package/dist/src/coin/hbar/utils.d.ts.map +0 -1
  99. package/dist/src/coin/hbar/utils.js +0 -410
  100. package/dist/src/coin/hbar/walletInitializationBuilder.d.ts +0 -28
  101. package/dist/src/coin/hbar/walletInitializationBuilder.d.ts.map +0 -1
  102. package/dist/src/coin/hbar/walletInitializationBuilder.js +0 -110
@@ -1,20 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SingletonRegistry = void 0;
4
- const txwrapper_polkadot_1 = require("@substrate/txwrapper-polkadot");
5
- class SingletonRegistry {
6
- static getInstance(material) {
7
- if (material !== SingletonRegistry.material) {
8
- SingletonRegistry.material = material;
9
- SingletonRegistry.instance = txwrapper_polkadot_1.getRegistry({
10
- chainName: material.chainName,
11
- specName: material.specName,
12
- specVersion: material.specVersion,
13
- metadataRpc: material.metadata,
14
- });
15
- }
16
- return SingletonRegistry.instance;
17
- }
18
- }
19
- exports.SingletonRegistry = SingletonRegistry;
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2luZ2xldG9uUmVnaXN0cnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29pbi9kb3Qvc2luZ2xldG9uUmVnaXN0cnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0Esc0VBQTREO0FBSTVELE1BQWEsaUJBQWlCO0lBSTVCLE1BQU0sQ0FBQyxXQUFXLENBQUMsUUFBUTtRQUN6QixJQUFJLFFBQVEsS0FBSyxpQkFBaUIsQ0FBQyxRQUFRLEVBQUU7WUFDM0MsaUJBQWlCLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztZQUN0QyxpQkFBaUIsQ0FBQyxRQUFRLEdBQUcsZ0NBQVcsQ0FBQztnQkFDdkMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxTQUFTO2dCQUM3QixRQUFRLEVBQUUsUUFBUSxDQUFDLFFBQWdDO2dCQUNuRCxXQUFXLEVBQUUsUUFBUSxDQUFDLFdBQVc7Z0JBQ2pDLFdBQVcsRUFBRSxRQUFRLENBQUMsUUFBeUI7YUFDaEQsQ0FBQyxDQUFDO1NBQ0o7UUFDRCxPQUFPLGlCQUFpQixDQUFDLFFBQVEsQ0FBQztJQUNwQyxDQUFDO0NBQ0Y7QUFoQkQsOENBZ0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHlwZVJlZ2lzdHJ5IH0gZnJvbSAnQHN1YnN0cmF0ZS90eHdyYXBwZXItY29yZS9saWIvdHlwZXMnO1xuaW1wb3J0IHsgZ2V0UmVnaXN0cnkgfSBmcm9tICdAc3Vic3RyYXRlL3R4d3JhcHBlci1wb2xrYWRvdCc7XG5pbXBvcnQgeyBQb2xrYWRvdFNwZWNOYW1lVHlwZSB9IGZyb20gJ0BiaXRnby9zdGF0aWNzJztcbmltcG9ydCB7IE1hdGVyaWFsIH0gZnJvbSAnLi9pZmFjZSc7XG5cbmV4cG9ydCBjbGFzcyBTaW5nbGV0b25SZWdpc3RyeSB7XG4gIHByaXZhdGUgc3RhdGljIGluc3RhbmNlOiBUeXBlUmVnaXN0cnk7XG4gIHByaXZhdGUgc3RhdGljIG1hdGVyaWFsOiBNYXRlcmlhbDtcblxuICBzdGF0aWMgZ2V0SW5zdGFuY2UobWF0ZXJpYWwpOiBUeXBlUmVnaXN0cnkge1xuICAgIGlmIChtYXRlcmlhbCAhPT0gU2luZ2xldG9uUmVnaXN0cnkubWF0ZXJpYWwpIHtcbiAgICAgIFNpbmdsZXRvblJlZ2lzdHJ5Lm1hdGVyaWFsID0gbWF0ZXJpYWw7XG4gICAgICBTaW5nbGV0b25SZWdpc3RyeS5pbnN0YW5jZSA9IGdldFJlZ2lzdHJ5KHtcbiAgICAgICAgY2hhaW5OYW1lOiBtYXRlcmlhbC5jaGFpbk5hbWUsXG4gICAgICAgIHNwZWNOYW1lOiBtYXRlcmlhbC5zcGVjTmFtZSBhcyBQb2xrYWRvdFNwZWNOYW1lVHlwZSxcbiAgICAgICAgc3BlY1ZlcnNpb246IG1hdGVyaWFsLnNwZWNWZXJzaW9uLFxuICAgICAgICBtZXRhZGF0YVJwYzogbWF0ZXJpYWwubWV0YWRhdGEgYXMgYDB4JHtzdHJpbmd9YCxcbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gU2luZ2xldG9uUmVnaXN0cnkuaW5zdGFuY2U7XG4gIH1cbn1cbiJdfQ==
@@ -1,58 +0,0 @@
1
- import { BaseCoin as CoinConfig } from '@bitgo/statics';
2
- import { DecodedSignedTx, DecodedSigningPayload, UnsignedTransaction } from '@substrate/txwrapper-core';
3
- import { BaseAddress, TransactionType } from '@bitgo/sdk-core';
4
- import { StakeArgsPayee } from './iface';
5
- import { Transaction } from './transaction';
6
- import { TransactionBuilder } from './transactionBuilder';
7
- export declare class StakingBuilder extends TransactionBuilder {
8
- protected _amount: string;
9
- protected _controller: string;
10
- protected _payee: StakeArgsPayee;
11
- constructor(_coinConfig: Readonly<CoinConfig>);
12
- /**
13
- * Take the origin account as a stash and lock up value of its balance.
14
- * Controller will be the account that controls it.
15
- *
16
- * @returns {UnsignedTransaction} an unsigned Dot transaction
17
- *
18
- * @see https://polkadot.js.org/docs/substrate/extrinsics/#staking
19
- */
20
- protected buildTransaction(): UnsignedTransaction;
21
- protected get transactionType(): TransactionType;
22
- /**
23
- * The amount to stake.
24
- *
25
- * @param {string} amount
26
- * @returns {StakeBuilder} This staking builder.
27
- *
28
- * @see https://wiki.polkadot.network/docs/learn-nominator#required-minimum-stake
29
- */
30
- amount(amount: string): this;
31
- /**
32
- * The controller of the staked amount.
33
- *
34
- * @param {string} controller
35
- * @returns {StakeBuilder} This staking builder.
36
- *
37
- * @see https://wiki.polkadot.network/docs/learn-staking#accounts
38
- */
39
- owner(controller: BaseAddress): this;
40
- /**
41
- * The rewards destination of the staked amount.
42
- * Can be set to another accounts address.
43
- *
44
- * @param {string} payee
45
- * @returns {StakeBuilder} This staking builder.
46
- *
47
- * @see https://wiki.polkadot.network/docs/learn-staking#4-rewards-mechanism
48
- */
49
- payee(payee: StakeArgsPayee): this;
50
- /** @inheritdoc */
51
- validateDecodedTransaction(decodedTxn: DecodedSigningPayload | DecodedSignedTx): void;
52
- /** @inheritdoc */
53
- protected fromImplementation(rawTransaction: string): Transaction;
54
- /** @inheritdoc */
55
- validateTransaction(_: Transaction): void;
56
- private validateFields;
57
- }
58
- //# sourceMappingURL=stakingBuilder.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stakingBuilder.d.ts","sourceRoot":"","sources":["../../../../src/coin/dot/stakingBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAIxG,OAAO,EAAE,WAAW,EAA0C,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvG,OAAO,EAA0B,cAAc,EAAqB,MAAM,SAAS,CAAC;AACpF,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;IAC1B,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC;IAC9B,SAAS,CAAC,MAAM,EAAE,cAAc,CAAC;gBAErB,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C;;;;;;;OAOG;IACH,SAAS,CAAC,gBAAgB,IAAI,mBAAmB;IAajD,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAM5B;;;;;;;OAOG;IACH,KAAK,CAAC,UAAU,EAAE,WAAW,GAAG,IAAI;IAMpC;;;;;;;;OAQG;IACH,KAAK,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;IAUlC,kBAAkB;IAClB,0BAA0B,CAAC,UAAU,EAAE,qBAAqB,GAAG,eAAe,GAAG,IAAI;IAarF,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW;IA8BjE,kBAAkB;IAClB,mBAAmB,CAAC,CAAC,EAAE,WAAW,GAAG,IAAI;IAKzC,OAAO,CAAC,cAAc;CAavB"}
@@ -1,139 +0,0 @@
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.StakingBuilder = void 0;
7
- const txwrapper_polkadot_1 = require("@substrate/txwrapper-polkadot");
8
- const bignumber_js_1 = __importDefault(require("bignumber.js"));
9
- const utils_1 = __importDefault(require("./utils"));
10
- const sdk_core_1 = require("@bitgo/sdk-core");
11
- const iface_1 = require("./iface");
12
- const transactionBuilder_1 = require("./transactionBuilder");
13
- const txnSchema_1 = require("./txnSchema");
14
- class StakingBuilder extends transactionBuilder_1.TransactionBuilder {
15
- constructor(_coinConfig) {
16
- super(_coinConfig);
17
- }
18
- /**
19
- * Take the origin account as a stash and lock up value of its balance.
20
- * Controller will be the account that controls it.
21
- *
22
- * @returns {UnsignedTransaction} an unsigned Dot transaction
23
- *
24
- * @see https://polkadot.js.org/docs/substrate/extrinsics/#staking
25
- */
26
- buildTransaction() {
27
- const baseTxInfo = this.createBaseTxInfo();
28
- return txwrapper_polkadot_1.methods.staking.bond({
29
- value: this._amount,
30
- controller: this._controller,
31
- payee: this._payee,
32
- }, baseTxInfo.baseTxInfo, baseTxInfo.options);
33
- }
34
- get transactionType() {
35
- return sdk_core_1.TransactionType.StakingActivate;
36
- }
37
- /**
38
- * The amount to stake.
39
- *
40
- * @param {string} amount
41
- * @returns {StakeBuilder} This staking builder.
42
- *
43
- * @see https://wiki.polkadot.network/docs/learn-nominator#required-minimum-stake
44
- */
45
- amount(amount) {
46
- this.validateValue(new bignumber_js_1.default(amount));
47
- this._amount = amount;
48
- return this;
49
- }
50
- /**
51
- * The controller of the staked amount.
52
- *
53
- * @param {string} controller
54
- * @returns {StakeBuilder} This staking builder.
55
- *
56
- * @see https://wiki.polkadot.network/docs/learn-staking#accounts
57
- */
58
- owner(controller) {
59
- this.validateAddress(controller);
60
- this._controller = controller.address;
61
- return this;
62
- }
63
- /**
64
- * The rewards destination of the staked amount.
65
- * Can be set to another accounts address.
66
- *
67
- * @param {string} payee
68
- * @returns {StakeBuilder} This staking builder.
69
- *
70
- * @see https://wiki.polkadot.network/docs/learn-staking#4-rewards-mechanism
71
- */
72
- payee(payee) {
73
- if (typeof payee !== 'string') {
74
- this.validateAddress({ address: payee.Account });
75
- this._payee = { Account: payee.Account };
76
- }
77
- else {
78
- this._payee = payee;
79
- }
80
- return this;
81
- }
82
- /** @inheritdoc */
83
- validateDecodedTransaction(decodedTxn) {
84
- var _a;
85
- if (((_a = decodedTxn.method) === null || _a === void 0 ? void 0 : _a.name) === iface_1.MethodNames.Bond) {
86
- const txMethod = decodedTxn.method.args;
87
- const value = txMethod.value;
88
- const controller = txMethod.controller.id;
89
- const payee = txMethod.payee;
90
- const validationResult = txnSchema_1.StakeTransactionSchema.validate({ value, controller, payee });
91
- if (validationResult.error) {
92
- throw new sdk_core_1.InvalidTransactionError(`Transaction validation failed: ${validationResult.error.message}`);
93
- }
94
- }
95
- }
96
- /** @inheritdoc */
97
- fromImplementation(rawTransaction) {
98
- var _a, _b;
99
- const tx = super.fromImplementation(rawTransaction);
100
- if (((_a = this._method) === null || _a === void 0 ? void 0 : _a.name) === iface_1.MethodNames.Bond) {
101
- const txMethod = this._method.args;
102
- this.amount(txMethod.value);
103
- this.owner({
104
- address: utils_1.default.decodeDotAddress(txMethod.controller.id, utils_1.default.getAddressFormat(this._coinConfig.name)),
105
- });
106
- const payee = txMethod.payee;
107
- if (payee.account) {
108
- this.payee({
109
- Account: utils_1.default.decodeDotAddress(payee.account, utils_1.default.getAddressFormat(this._coinConfig.name)),
110
- });
111
- }
112
- else {
113
- const payeeType = utils_1.default.capitalizeFirstLetter(Object.keys(payee)[0]);
114
- this.payee(payeeType);
115
- }
116
- }
117
- else {
118
- throw new sdk_core_1.InvalidTransactionError(`Invalid Transaction Type: ${(_b = this._method) === null || _b === void 0 ? void 0 : _b.name}. Expected bond`);
119
- }
120
- return tx;
121
- }
122
- /** @inheritdoc */
123
- validateTransaction(_) {
124
- super.validateTransaction(_);
125
- this.validateFields(this._amount, this._controller, this._payee);
126
- }
127
- validateFields(value, controller, payee) {
128
- const validationResult = txnSchema_1.StakeTransactionSchema.validate({
129
- value,
130
- controller,
131
- payee,
132
- });
133
- if (validationResult.error) {
134
- throw new sdk_core_1.InvalidTransactionError(`Stake Builder Transaction validation failed: ${validationResult.error.message}`);
135
- }
136
- }
137
- }
138
- exports.StakingBuilder = StakingBuilder;
139
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Rha2luZ0J1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29pbi9kb3Qvc3Rha2luZ0J1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBRUEsc0VBQXdEO0FBQ3hELGdFQUFxQztBQUNyQyxvREFBNEI7QUFDNUIsOENBQXVHO0FBQ3ZHLG1DQUFvRjtBQUVwRiw2REFBMEQ7QUFDMUQsMkNBQXFEO0FBRXJELE1BQWEsY0FBZSxTQUFRLHVDQUFrQjtJQUtwRCxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNPLGdCQUFnQjtRQUN4QixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUMzQyxPQUFPLDRCQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FDekI7WUFDRSxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDbkIsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXO1lBQzVCLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTTtTQUNuQixFQUNELFVBQVUsQ0FBQyxVQUFVLEVBQ3JCLFVBQVUsQ0FBQyxPQUFPLENBQ25CLENBQUM7SUFDSixDQUFDO0lBRUQsSUFBYyxlQUFlO1FBQzNCLE9BQU8sMEJBQWUsQ0FBQyxlQUFlLENBQUM7SUFDekMsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSCxNQUFNLENBQUMsTUFBYztRQUNuQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksc0JBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO1FBQ3RCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSCxLQUFLLENBQUMsVUFBdUI7UUFDM0IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQztR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QUFDLENBQUM7U0FDckc7UUFDRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsbUJBQW1CLENBQUMsQ0FBYztRQUNoQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFTyxjQUFjLENBQUMsS0FBYSxFQUFFLFVBQWtCLEVBQUUsS0FBcUI7UUFDN0UsTUFBTSxnQkFBZ0IsR0FBRyxrQ0FBc0IsQ0FBQyxRQUFRLENBQUM7WUFDdkQsS0FBSztZQUNMLFVBQVU7WUFDVixLQUFLO1NBQ04sQ0FBQyxDQUFDO1FBRUgsSUFBSSxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUU7WUFDMUIsTUFBTSxJQUFJLGtDQUF1QixDQUMvQixnREFBZ0QsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUNqRixDQUFDO1NBQ0g7SUFDSCxDQUFDO0NBQ0Y7QUFqSkQsd0NBaUpDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby9zdGF0aWNzJztcbmltcG9ydCB7IERlY29kZWRTaWduZWRUeCwgRGVjb2RlZFNpZ25pbmdQYXlsb2FkLCBVbnNpZ25lZFRyYW5zYWN0aW9uIH0gZnJvbSAnQHN1YnN0cmF0ZS90eHdyYXBwZXItY29yZSc7XG5pbXBvcnQgeyBtZXRob2RzIH0gZnJvbSAnQHN1YnN0cmF0ZS90eHdyYXBwZXItcG9sa2Fkb3QnO1xuaW1wb3J0IEJpZ051bWJlciBmcm9tICdiaWdudW1iZXIuanMnO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgQmFzZUFkZHJlc3MsIERvdEFzc2V0VHlwZXMsIEludmFsaWRUcmFuc2FjdGlvbkVycm9yLCBUcmFuc2FjdGlvblR5cGUgfSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuaW1wb3J0IHsgTWV0aG9kTmFtZXMsIFN0YWtlQXJncywgU3Rha2VBcmdzUGF5ZWUsIFN0YWtlQXJnc1BheWVlUmF3IH0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXInO1xuaW1wb3J0IHsgU3Rha2VUcmFuc2FjdGlvblNjaGVtYSB9IGZyb20gJy4vdHhuU2NoZW1hJztcblxuZXhwb3J0IGNsYXNzIFN0YWtpbmdCdWlsZGVyIGV4dGVuZHMgVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgcHJvdGVjdGVkIF9hbW91bnQ6IHN0cmluZztcbiAgcHJvdGVjdGVkIF9jb250cm9sbGVyOiBzdHJpbmc7XG4gIHByb3RlY3RlZCBfcGF5ZWU6IFN0YWtlQXJnc1BheWVlO1xuXG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUYWtlIHRoZSBvcmlnaW4gYWNjb3VudCBhcyBhIHN0YXNoIGFuZCBsb2NrIHVwIHZhbHVlIG9mIGl0cyBiYWxhbmNlLlxuICAgKiBDb250cm9sbGVyIHdpbGwgYmUgdGhlIGFjY291bnQgdGhhdCBjb250cm9scyBpdC5cbiAgICpcbiAgICogQHJldHVybnMge1Vuc2lnbmVkVHJhbnNhY3Rpb259IGFuIHVuc2lnbmVkIERvdCB0cmFuc2FjdGlvblxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vcG9sa2Fkb3QuanMub3JnL2RvY3Mvc3Vic3RyYXRlL2V4dHJpbnNpY3MvI3N0YWtpbmdcbiAgICovXG4gIHByb3RlY3RlZCBidWlsZFRyYW5zYWN0aW9uKCk6IFVuc2lnbmVkVHJhbnNhY3Rpb24ge1xuICAgIGNvbnN0IGJhc2VUeEluZm8gPSB0aGlzLmNyZWF0ZUJhc2VUeEluZm8oKTtcbiAgICByZXR1cm4gbWV0aG9kcy5zdGFraW5nLmJvbmQoXG4gICAgICB7XG4gICAgICAgIHZhbHVlOiB0aGlzLl9hbW91bnQsXG4gICAgICAgIGNvbnRyb2xsZXI6IHRoaXMuX2NvbnRyb2xsZXIsXG4gICAgICAgIHBheWVlOiB0aGlzLl9wYXllZSxcbiAgICAgIH0sXG4gICAgICBiYXNlVHhJbmZvLmJhc2VUeEluZm8sXG4gICAgICBiYXNlVHhJbmZvLm9wdGlvbnMsXG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXQgdHJhbnNhY3Rpb25UeXBlKCk6IFRyYW5zYWN0aW9uVHlwZSB7XG4gICAgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nQWN0aXZhdGU7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGFtb3VudCB0byBzdGFrZS5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGFtb3VudFxuICAgKiBAcmV0dXJucyB7U3Rha2VCdWlsZGVyfSBUaGlzIHN0YWtpbmcgYnVpbGRlci5cbiAgICpcbiAgICogQHNlZSBodHRwczovL3dpa2kucG9sa2Fkb3QubmV0d29yay9kb2NzL2xlYXJuLW5vbWluYXRvciNyZXF1aXJlZC1taW5pbXVtLXN0YWtlXG4gICAqL1xuICBhbW91bnQoYW1vdW50OiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLnZhbGlkYXRlVmFsdWUobmV3IEJpZ051bWJlcihhbW91bnQpKTtcbiAgICB0aGlzLl9hbW91bnQgPSBhbW91bnQ7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGNvbnRyb2xsZXIgb2YgdGhlIHN0YWtlZCBhbW91bnQuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBjb250cm9sbGVyXG4gICAqIEByZXR1cm5zIHtTdGFrZUJ1aWxkZXJ9IFRoaXMgc3Rha2luZyBidWlsZGVyLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vd2lraS5wb2xrYWRvdC5uZXR3b3JrL2RvY3MvbGVhcm4tc3Rha2luZyNhY2NvdW50c1xuICAgKi9cbiAgb3duZXIoY29udHJvbGxlcjogQmFzZUFkZHJlc3MpOiB0aGlzIHtcbiAgICB0aGlzLnZhbGlkYXRlQWRkcmVzcyhjb250cm9sbGVyKTtcbiAgICB0aGlzLl9jb250cm9sbGVyID0gY29udHJvbGxlci5hZGRyZXNzO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSByZXdhcmRzIGRlc3RpbmF0aW9uIG9mIHRoZSBzdGFrZWQgYW1vdW50LlxuICAgKiBDYW4gYmUgc2V0IHRvIGFub3RoZXIgYWNjb3VudHMgYWRkcmVzcy5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHBheWVlXG4gICAqIEByZXR1cm5zIHtTdGFrZUJ1aWxkZXJ9IFRoaXMgc3Rha2luZyBidWlsZGVyLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vd2lraS5wb2xrYWRvdC5uZXR3b3JrL2RvY3MvbGVhcm4tc3Rha2luZyM0LXJld2FyZHMtbWVjaGFuaXNtXG4gICAqL1xuICBwYXllZShwYXllZTogU3Rha2VBcmdzUGF5ZWUpOiB0aGlzIHtcbiAgICBpZiAodHlwZW9mIHBheWVlICE9PSAnc3RyaW5nJykge1xuICAgICAgdGhpcy52YWxpZGF0ZUFkZHJlc3MoeyBhZGRyZXNzOiBwYXllZS5BY2NvdW50IH0pO1xuICAgICAgdGhpcy5fcGF5ZWUgPSB7IEFjY291bnQ6IHBheWVlLkFjY291bnQgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fcGF5ZWUgPSBwYXllZTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVEZWNvZGVkVHJhbnNhY3Rpb24oZGVjb2RlZFR4bjogRGVjb2RlZFNpZ25pbmdQYXlsb2FkIHwgRGVjb2RlZFNpZ25lZFR4KTogdm9pZCB7XG4gICAgaWYgKGRlY29kZWRUeG4ubWV0aG9kPy5uYW1lID09PSBNZXRob2ROYW1lcy5Cb25kKSB7XG4gICAgICBjb25zdCB0eE1ldGhvZCA9IGRlY29kZWRUeG4ubWV0aG9kLmFyZ3MgYXMgdW5rbm93biBhcyBTdGFrZUFyZ3M7XG4gICAgICBjb25zdCB2YWx1ZSA9IHR4TWV0aG9kLnZhbHVlO1xuICAgICAgY29uc3QgY29udHJvbGxlciA9IHR4TWV0aG9kLmNvbnRyb2xsZXIuaWQ7XG4gICAgICBjb25zdCBwYXllZSA9IHR4TWV0aG9kLnBheWVlO1xuICAgICAgY29uc3QgdmFsaWRhdGlvblJlc3VsdCA9IFN0YWtlVHJhbnNhY3Rpb25TY2hlbWEudmFsaWRhdGUoeyB2YWx1ZSwgY29udHJvbGxlciwgcGF5ZWUgfSk7XG4gICAgICBpZiAodmFsaWRhdGlvblJlc3VsdC5lcnJvcikge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoYFRyYW5zYWN0aW9uIHZhbGlkYXRpb24gZmFpbGVkOiAke3ZhbGlkYXRpb25SZXN1bHQuZXJyb3IubWVzc2FnZX1gKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGZyb21JbXBsZW1lbnRhdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogVHJhbnNhY3Rpb24ge1xuICAgIGNvbnN0IHR4ID0gc3VwZXIuZnJvbUltcGxlbWVudGF0aW9uKHJhd1RyYW5zYWN0aW9uKTtcbiAgICBpZiAodGhpcy5fbWV0aG9kPy5uYW1lID09PSBNZXRob2ROYW1lcy5Cb25kKSB7XG4gICAgICBjb25zdCB0eE1ldGhvZCA9IHRoaXMuX21ldGhvZC5hcmdzIGFzIFN0YWtlQXJncztcbiAgICAgIHRoaXMuYW1vdW50KHR4TWV0aG9kLnZhbHVlKTtcbiAgICAgIHRoaXMub3duZXIoe1xuICAgICAgICBhZGRyZXNzOiB1dGlscy5kZWNvZGVEb3RBZGRyZXNzKFxuICAgICAgICAgIHR4TWV0aG9kLmNvbnRyb2xsZXIuaWQsXG4gICAgICAgICAgdXRpbHMuZ2V0QWRkcmVzc0Zvcm1hdCh0aGlzLl9jb2luQ29uZmlnLm5hbWUgYXMgRG90QXNzZXRUeXBlcyksXG4gICAgICAgICksXG4gICAgICB9KTtcblxuICAgICAgY29uc3QgcGF5ZWUgPSB0eE1ldGhvZC5wYXllZSBhcyBTdGFrZUFyZ3NQYXllZVJhdztcbiAgICAgIGlmIChwYXllZS5hY2NvdW50KSB7XG4gICAgICAgIHRoaXMucGF5ZWUoe1xuICAgICAgICAgIEFjY291bnQ6IHV0aWxzLmRlY29kZURvdEFkZHJlc3MoXG4gICAgICAgICAgICBwYXllZS5hY2NvdW50LFxuICAgICAgICAgICAgdXRpbHMuZ2V0QWRkcmVzc0Zvcm1hdCh0aGlzLl9jb2luQ29uZmlnLm5hbWUgYXMgRG90QXNzZXRUeXBlcyksXG4gICAgICAgICAgKSxcbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBwYXllZVR5cGUgPSB1dGlscy5jYXBpdGFsaXplRmlyc3RMZXR0ZXIoT2JqZWN0LmtleXMocGF5ZWUpWzBdKSBhcyBTdGFrZUFyZ3NQYXllZTtcbiAgICAgICAgdGhpcy5wYXllZShwYXllZVR5cGUpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoYEludmFsaWQgVHJhbnNhY3Rpb24gVHlwZTogJHt0aGlzLl9tZXRob2Q/Lm5hbWV9LiBFeHBlY3RlZCBib25kYCk7XG4gICAgfVxuICAgIHJldHVybiB0eDtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVRyYW5zYWN0aW9uKF86IFRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgc3VwZXIudmFsaWRhdGVUcmFuc2FjdGlvbihfKTtcbiAgICB0aGlzLnZhbGlkYXRlRmllbGRzKHRoaXMuX2Ftb3VudCwgdGhpcy5fY29udHJvbGxlciwgdGhpcy5fcGF5ZWUpO1xuICB9XG5cbiAgcHJpdmF0ZSB2YWxpZGF0ZUZpZWxkcyh2YWx1ZTogc3RyaW5nLCBjb250cm9sbGVyOiBzdHJpbmcsIHBheWVlOiBTdGFrZUFyZ3NQYXllZSk6IHZvaWQge1xuICAgIGNvbnN0IHZhbGlkYXRpb25SZXN1bHQgPSBTdGFrZVRyYW5zYWN0aW9uU2NoZW1hLnZhbGlkYXRlKHtcbiAgICAgIHZhbHVlLFxuICAgICAgY29udHJvbGxlcixcbiAgICAgIHBheWVlLFxuICAgIH0pO1xuXG4gICAgaWYgKHZhbGlkYXRpb25SZXN1bHQuZXJyb3IpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcihcbiAgICAgICAgYFN0YWtlIEJ1aWxkZXIgVHJhbnNhY3Rpb24gdmFsaWRhdGlvbiBmYWlsZWQ6ICR7dmFsaWRhdGlvblJlc3VsdC5lcnJvci5tZXNzYWdlfWAsXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -1,65 +0,0 @@
1
- /// <reference types="node" />
2
- import { BaseCoin as CoinConfig } from '@bitgo/statics';
3
- import { BaseKey, BaseTransaction, TransactionType } from '@bitgo/sdk-core';
4
- import { UnsignedTransaction } from '@substrate/txwrapper-core';
5
- import { TypeRegistry } from '@substrate/txwrapper-core/lib/types';
6
- import { KeyPair } from './keyPair';
7
- import { TransactionExplanation, TxData } from './iface';
8
- export declare class Transaction extends BaseTransaction {
9
- protected _dotTransaction: UnsignedTransaction;
10
- private _signedTransaction?;
11
- private _registry;
12
- private _chainName;
13
- private _sender;
14
- constructor(coinConfig: Readonly<CoinConfig>);
15
- /** @inheritdoc */
16
- canSign({ key }: BaseKey): boolean;
17
- /**
18
- * Sign a polkadot transaction and update the transaction hex
19
- *
20
- * @param {KeyPair} keyPair - ed signature
21
- */
22
- sign(keyPair: KeyPair): void;
23
- /**
24
- * Adds the signature to the DOT Transaction
25
- * @param {string} signature
26
- */
27
- addSignature(signature: string): void;
28
- registry(registry: TypeRegistry): void;
29
- chainName(chainName: string): void;
30
- sender(sender: string): void;
31
- /** @inheritdoc */
32
- toBroadcastFormat(): string;
33
- transactionSize(): number;
34
- /** @inheritdoc */
35
- toJson(): TxData;
36
- explainTransferTransaction(json: TxData, explanationResult: TransactionExplanation): TransactionExplanation;
37
- explainStakingActivateTransaction(json: TxData, explanationResult: TransactionExplanation): TransactionExplanation;
38
- explainAddressInitializationTransaction(json: TxData, explanationResult: TransactionExplanation): TransactionExplanation;
39
- explainStakingUnlockTransaction(json: TxData, explanationResult: TransactionExplanation): TransactionExplanation;
40
- /** @inheritdoc */
41
- explainTransaction(): TransactionExplanation;
42
- /**
43
- * Load the input and output data on this transaction.
44
- */
45
- loadInputsAndOutputs(): void;
46
- /**
47
- * Constructs a signed payload using construct.signTx
48
- * This method will be called during the build step if a TSS signature
49
- * is added and will set the signTransaction which is the txHex that will be broadcasted
50
- * As well as add the signature used to sign to the signature array in hex format
51
- *
52
- * @param {Buffer} signature The signature to be added to a dot transaction
53
- */
54
- constructSignedPayload(signature: Buffer): void;
55
- setTransaction(tx: UnsignedTransaction): void;
56
- /** @inheritdoc **/
57
- get signablePayload(): Buffer;
58
- /**
59
- * Set the transaction type.
60
- *
61
- * @param {TransactionType} transactionType The transaction type to be set.
62
- */
63
- transactionType(transactionType: TransactionType): void;
64
- }
65
- //# sourceMappingURL=transaction.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../../src/coin/dot/transaction.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EACL,OAAO,EACP,eAAe,EAMf,eAAe,EAChB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAEnE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EASL,sBAAsB,EACtB,MAAM,EAGP,MAAM,SAAS,CAAC;AAIjB,qBAAa,WAAY,SAAQ,eAAe;IAC9C,SAAS,CAAC,eAAe,EAAE,mBAAmB,CAAC;IAC/C,OAAO,CAAC,kBAAkB,CAAC,CAAS;IACpC,OAAO,CAAC,SAAS,CAAe;IAChC,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,OAAO,CAAS;gBAEZ,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI5C,kBAAkB;IAClB,OAAO,CAAC,EAAE,GAAG,EAAE,EAAE,OAAO,GAAG,OAAO;IAMlC;;;;OAIG;IACH,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IA0B5B;;;OAGG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IASrC,QAAQ,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI;IAItC,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAIlC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI5B,kBAAkB;IAClB,iBAAiB,IAAI,MAAM;IAa3B,eAAe,IAAI,MAAM;IAIzB,kBAAkB;IAClB,MAAM,IAAI,MAAM;IAkHhB,0BAA0B,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,EAAE,sBAAsB,GAAG,sBAAsB;IAe3G,iCAAiC,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,EAAE,sBAAsB,GAAG,sBAAsB;IAelH,uCAAuC,CACrC,IAAI,EAAE,MAAM,EACZ,iBAAiB,EAAE,sBAAsB,GACxC,sBAAsB;IAUzB,+BAA+B,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,EAAE,sBAAsB,GAAG,sBAAsB;IAYhH,kBAAkB;IAClB,kBAAkB,IAAI,sBAAsB;IAgC5C;;OAEG;IACH,oBAAoB,IAAI,IAAI;IAyD5B;;;;;;;OAOG;IACH,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAgB/C,cAAc,CAAC,EAAE,EAAE,mBAAmB,GAAG,IAAI;IAI7C,mBAAmB;IACnB,IAAI,eAAe,IAAI,MAAM,CAK5B;IAED;;;;OAIG;IACH,eAAe,CAAC,eAAe,EAAE,eAAe,GAAG,IAAI;CAGxD"}