@bitgo/account-lib 2.20.0-rc.28 → 2.20.0-rc.30
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.
- package/CHANGELOG.md +28 -0
- package/dist/browser/bitgo-account-lib.js +2 -0
- package/dist/browser/bitgo-account-lib.js.LICENSE.txt +337 -0
- package/dist/resources/hbar/protobuf/BasicTypes.proto +424 -0
- package/dist/resources/hbar/protobuf/CryptoCreate.proto +47 -0
- package/dist/resources/hbar/protobuf/CryptoTransfer.proto +33 -0
- package/dist/resources/hbar/protobuf/Duration.proto +28 -0
- package/dist/resources/hbar/protobuf/Timestamp.proto +34 -0
- package/dist/resources/hbar/protobuf/Transaction.proto +35 -0
- package/dist/resources/hbar/protobuf/TransactionBody.proto +24 -0
- package/dist/resources/hbar/protobuf/TransactionContents.proto +33 -0
- package/dist/resources/hbar/protobuf/hedera.d.ts +4612 -0
- package/dist/resources/hbar/protobuf/hedera.js +12192 -0
- package/dist/src/coin/algo/assetTransferBuilder.d.ts +42 -0
- package/dist/src/coin/algo/assetTransferBuilder.d.ts.map +1 -0
- package/dist/src/coin/algo/assetTransferBuilder.js +105 -0
- package/dist/src/coin/algo/errors.d.ts +11 -0
- package/dist/src/coin/algo/errors.d.ts.map +1 -0
- package/dist/src/coin/algo/errors.js +27 -0
- package/dist/src/coin/algo/ifaces.d.ts +46 -0
- package/dist/src/coin/algo/ifaces.d.ts.map +1 -0
- package/dist/src/coin/algo/ifaces.js +3 -0
- package/dist/src/coin/algo/index.d.ts +13 -0
- package/dist/src/coin/algo/index.d.ts.map +1 -0
- package/dist/src/coin/algo/index.js +47 -0
- package/dist/src/coin/algo/keyPair.d.ts +25 -0
- package/dist/src/coin/algo/keyPair.d.ts.map +1 -0
- package/dist/src/coin/algo/keyPair.js +77 -0
- package/dist/src/coin/algo/keyRegistrationBuilder.d.ts +104 -0
- package/dist/src/coin/algo/keyRegistrationBuilder.d.ts.map +1 -0
- package/dist/src/coin/algo/keyRegistrationBuilder.js +239 -0
- package/dist/src/coin/algo/seedEncoding.d.ts +25 -0
- package/dist/src/coin/algo/seedEncoding.d.ts.map +1 -0
- package/dist/src/coin/algo/seedEncoding.js +97 -0
- package/dist/src/coin/algo/transaction.d.ts +75 -0
- package/dist/src/coin/algo/transaction.d.ts.map +1 -0
- package/dist/src/coin/algo/transaction.js +251 -0
- package/dist/src/coin/algo/transactionBuilder.d.ts +204 -0
- package/dist/src/coin/algo/transactionBuilder.d.ts.map +1 -0
- package/dist/src/coin/algo/transactionBuilder.js +373 -0
- package/dist/src/coin/algo/transactionBuilderFactory.d.ts +16 -0
- package/dist/src/coin/algo/transactionBuilderFactory.d.ts.map +1 -0
- package/dist/src/coin/algo/transactionBuilderFactory.js +52 -0
- package/dist/src/coin/algo/transferBuilder.d.ts +40 -0
- package/dist/src/coin/algo/transferBuilder.d.ts.map +1 -0
- package/dist/src/coin/algo/transferBuilder.js +89 -0
- package/dist/src/coin/algo/txnSchema.d.ts +7 -0
- package/dist/src/coin/algo/txnSchema.d.ts.map +1 -0
- package/dist/src/coin/algo/txnSchema.js +68 -0
- package/dist/src/coin/algo/utils.d.ts +249 -0
- package/dist/src/coin/algo/utils.d.ts.map +1 -0
- package/dist/src/coin/algo/utils.js +539 -0
- package/dist/src/coin/avaxc/index.d.ts +2 -3
- package/dist/src/coin/avaxc/index.d.ts.map +1 -1
- package/dist/src/coin/avaxc/index.js +5 -6
- package/dist/src/coin/avaxc/transactionBuilder.js +3 -3
- package/dist/src/coin/avaxc/transferBuilder.d.ts +1 -1
- package/dist/src/coin/avaxc/transferBuilder.d.ts.map +1 -1
- package/dist/src/coin/avaxc/transferBuilder.js +3 -3
- package/dist/src/coin/avaxc/utils.d.ts +1 -2
- package/dist/src/coin/avaxc/utils.d.ts.map +1 -1
- package/dist/src/coin/avaxc/utils.js +3 -3
- package/dist/src/coin/celo/index.d.ts +2 -3
- package/dist/src/coin/celo/index.d.ts.map +1 -1
- package/dist/src/coin/celo/index.js +5 -6
- package/dist/src/coin/celo/stakingBuilder.d.ts.map +1 -1
- package/dist/src/coin/celo/stakingBuilder.js +21 -22
- package/dist/src/coin/celo/stakingCall.d.ts +1 -1
- package/dist/src/coin/celo/stakingCall.js +3 -3
- package/dist/src/coin/celo/transaction.d.ts +2 -3
- package/dist/src/coin/celo/transaction.d.ts.map +1 -1
- package/dist/src/coin/celo/transaction.js +3 -3
- package/dist/src/coin/celo/transactionBuilder.d.ts +2 -3
- package/dist/src/coin/celo/transactionBuilder.d.ts.map +1 -1
- package/dist/src/coin/celo/transactionBuilder.js +4 -24
- package/dist/src/coin/celo/transferBuilder.d.ts +1 -1
- package/dist/src/coin/celo/transferBuilder.d.ts.map +1 -1
- package/dist/src/coin/celo/transferBuilder.js +3 -3
- package/dist/src/coin/celo/types.d.ts +1 -2
- package/dist/src/coin/celo/types.d.ts.map +1 -1
- package/dist/src/coin/celo/types.js +5 -5
- package/dist/src/coin/celo/utils.d.ts +1 -1
- package/dist/src/coin/celo/utils.d.ts.map +1 -1
- package/dist/src/coin/celo/utils.js +3 -3
- package/dist/src/coin/cspr/constants.d.ts +19 -0
- package/dist/src/coin/cspr/constants.d.ts.map +1 -0
- package/dist/src/coin/cspr/constants.js +28 -0
- package/dist/src/coin/cspr/delegateBuilder.d.ts +49 -0
- package/dist/src/coin/cspr/delegateBuilder.d.ts.map +1 -0
- package/dist/src/coin/cspr/delegateBuilder.js +111 -0
- package/dist/src/coin/cspr/ifaces.d.ts +69 -0
- package/dist/src/coin/cspr/ifaces.d.ts.map +1 -0
- package/dist/src/coin/cspr/ifaces.js +3 -0
- package/dist/src/coin/cspr/index.d.ts +6 -0
- package/dist/src/coin/cspr/index.d.ts.map +1 -0
- package/dist/src/coin/cspr/index.js +31 -0
- package/dist/src/coin/cspr/keyPair.d.ts +18 -0
- package/dist/src/coin/cspr/keyPair.d.ts.map +1 -0
- package/dist/src/coin/cspr/keyPair.js +75 -0
- package/dist/src/coin/cspr/transaction.d.ts +55 -0
- package/dist/src/coin/cspr/transaction.d.ts.map +1 -0
- package/dist/src/coin/cspr/transaction.js +227 -0
- package/dist/src/coin/cspr/transactionBuilder.d.ts +124 -0
- package/dist/src/coin/cspr/transactionBuilder.d.ts.map +1 -0
- package/dist/src/coin/cspr/transactionBuilder.js +312 -0
- package/dist/src/coin/cspr/transactionBuilderFactory.d.ts +46 -0
- package/dist/src/coin/cspr/transactionBuilderFactory.d.ts.map +1 -0
- package/dist/src/coin/cspr/transactionBuilderFactory.js +98 -0
- package/dist/src/coin/cspr/transferBuilder.d.ts +39 -0
- package/dist/src/coin/cspr/transferBuilder.d.ts.map +1 -0
- package/dist/src/coin/cspr/transferBuilder.js +106 -0
- package/dist/src/coin/cspr/undelegateBuilder.d.ts +49 -0
- package/dist/src/coin/cspr/undelegateBuilder.d.ts.map +1 -0
- package/dist/src/coin/cspr/undelegateBuilder.js +111 -0
- package/dist/src/coin/cspr/utils.d.ts +188 -0
- package/dist/src/coin/cspr/utils.d.ts.map +1 -0
- package/dist/src/coin/cspr/utils.js +477 -0
- package/dist/src/coin/cspr/walletInitializationBuilder.d.ts +27 -0
- package/dist/src/coin/cspr/walletInitializationBuilder.d.ts.map +1 -0
- package/dist/src/coin/cspr/walletInitializationBuilder.js +95 -0
- package/dist/src/coin/etc/index.d.ts +2 -4
- package/dist/src/coin/etc/index.d.ts.map +1 -1
- package/dist/src/coin/etc/index.js +6 -8
- package/dist/src/coin/etc/transactionBuilder.js +3 -3
- package/dist/src/coin/etc/transferBuilder.d.ts +1 -1
- package/dist/src/coin/etc/transferBuilder.d.ts.map +1 -1
- package/dist/src/coin/etc/transferBuilder.js +3 -3
- package/dist/src/coin/etc/utils.d.ts +1 -2
- package/dist/src/coin/etc/utils.d.ts.map +1 -1
- package/dist/src/coin/etc/utils.js +3 -3
- package/dist/src/coin/hbar/coinTransferBuilder.d.ts +46 -0
- package/dist/src/coin/hbar/coinTransferBuilder.d.ts.map +1 -0
- package/dist/src/coin/hbar/coinTransferBuilder.js +143 -0
- package/dist/src/coin/hbar/constants.d.ts +8 -0
- package/dist/src/coin/hbar/constants.d.ts.map +1 -0
- package/dist/src/coin/hbar/constants.js +12 -0
- package/dist/src/coin/hbar/iface.d.ts +6 -0
- package/dist/src/coin/hbar/iface.d.ts.map +1 -1
- package/dist/src/coin/hbar/iface.js +1 -1
- package/dist/src/coin/hbar/ifaces.d.ts +26 -0
- package/dist/src/coin/hbar/ifaces.d.ts.map +1 -0
- package/dist/src/coin/hbar/ifaces.js +3 -0
- package/dist/src/coin/hbar/keyPair.js +2 -2
- package/dist/src/coin/hbar/tokenAssociateBuilder.d.ts +35 -0
- package/dist/src/coin/hbar/tokenAssociateBuilder.d.ts.map +1 -0
- package/dist/src/coin/hbar/tokenAssociateBuilder.js +118 -0
- package/dist/src/coin/hbar/tokenTransferBuilder.d.ts +25 -0
- package/dist/src/coin/hbar/tokenTransferBuilder.d.ts.map +1 -0
- package/dist/src/coin/hbar/tokenTransferBuilder.js +115 -0
- package/dist/src/coin/hbar/transaction.d.ts +8 -1
- package/dist/src/coin/hbar/transaction.d.ts.map +1 -1
- package/dist/src/coin/hbar/transaction.js +46 -10
- package/dist/src/coin/hbar/transactionBuilder.d.ts +2 -3
- package/dist/src/coin/hbar/transactionBuilder.d.ts.map +1 -1
- package/dist/src/coin/hbar/transactionBuilder.js +7 -21
- package/dist/src/coin/hbar/transactionBuilderFactory.d.ts +13 -3
- package/dist/src/coin/hbar/transactionBuilderFactory.d.ts.map +1 -1
- package/dist/src/coin/hbar/transactionBuilderFactory.js +28 -17
- package/dist/src/coin/hbar/transferBuilder.d.ts +6 -26
- package/dist/src/coin/hbar/transferBuilder.d.ts.map +1 -1
- package/dist/src/coin/hbar/transferBuilder.js +13 -72
- package/dist/src/coin/hbar/utils.d.ts +54 -3
- package/dist/src/coin/hbar/utils.d.ts.map +1 -1
- package/dist/src/coin/hbar/utils.js +101 -5
- package/dist/src/coin/hbar/walletInitializationBuilder.d.ts +1 -1
- package/dist/src/coin/hbar/walletInitializationBuilder.d.ts.map +1 -1
- package/dist/src/coin/hbar/walletInitializationBuilder.js +7 -7
- package/dist/src/coin/polygon/index.d.ts +2 -4
- package/dist/src/coin/polygon/index.d.ts.map +1 -1
- package/dist/src/coin/polygon/index.js +6 -8
- package/dist/src/coin/polygon/transferBuilder.d.ts +1 -1
- package/dist/src/coin/polygon/transferBuilder.d.ts.map +1 -1
- package/dist/src/coin/polygon/transferBuilder.js +3 -3
- package/dist/src/coin/polygon/utils.d.ts +1 -2
- package/dist/src/coin/polygon/utils.d.ts.map +1 -1
- package/dist/src/coin/polygon/utils.js +3 -3
- package/dist/src/coin/rbtc/index.d.ts +2 -4
- package/dist/src/coin/rbtc/index.d.ts.map +1 -1
- package/dist/src/coin/rbtc/index.js +6 -8
- package/dist/src/coin/rbtc/transactionBuilder.js +3 -3
- package/dist/src/coin/rbtc/transferBuilder.d.ts +1 -1
- package/dist/src/coin/rbtc/transferBuilder.d.ts.map +1 -1
- package/dist/src/coin/rbtc/transferBuilder.js +3 -3
- package/dist/src/coin/rbtc/utils.d.ts +1 -2
- package/dist/src/coin/rbtc/utils.d.ts.map +1 -1
- package/dist/src/coin/rbtc/utils.js +3 -3
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +2 -2
- package/dist/tsconfig.tsbuildinfo +4718 -2445
- package/package.json +9 -8
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
+
}) : function(o, v) {
|
|
12
|
+
o["default"] = v;
|
|
13
|
+
});
|
|
14
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
+
if (mod && mod.__esModule) return mod;
|
|
16
|
+
var result = {};
|
|
17
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
+
__setModuleDefault(result, mod);
|
|
19
|
+
return result;
|
|
20
|
+
};
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
exports.CoinTransferBuilder = void 0;
|
|
23
|
+
const Long = __importStar(require("long"));
|
|
24
|
+
const sdk_core_1 = require("@bitgo/sdk-core");
|
|
25
|
+
const transferBuilder_1 = require("./transferBuilder");
|
|
26
|
+
const utils_1 = require("./utils");
|
|
27
|
+
const bignumber_js_1 = require("bignumber.js");
|
|
28
|
+
class CoinTransferBuilder extends transferBuilder_1.TransferBuilder {
|
|
29
|
+
constructor(_coinConfig) {
|
|
30
|
+
super(_coinConfig);
|
|
31
|
+
}
|
|
32
|
+
/** @inheritdoc */
|
|
33
|
+
async buildImplementation() {
|
|
34
|
+
this._txBodyData.transfers = this.buildTransferData();
|
|
35
|
+
return await super.buildImplementation();
|
|
36
|
+
}
|
|
37
|
+
buildTransferData() {
|
|
38
|
+
let totalSend = new bignumber_js_1.BigNumber(0);
|
|
39
|
+
const accountAmounts = [
|
|
40
|
+
{
|
|
41
|
+
accountID: utils_1.buildHederaAccountID(this._source.address),
|
|
42
|
+
amount: Long.fromInt(0),
|
|
43
|
+
}, // sender
|
|
44
|
+
];
|
|
45
|
+
// add recipients and update send amount
|
|
46
|
+
this._recipients.map((recipient) => {
|
|
47
|
+
accountAmounts.push({ accountID: utils_1.buildHederaAccountID(recipient.address), amount: Long.fromString(recipient.amount) });
|
|
48
|
+
totalSend = totalSend.plus(recipient.amount);
|
|
49
|
+
});
|
|
50
|
+
accountAmounts[0].amount = Long.fromString(totalSend.toString()).negate(); // update sender send amount
|
|
51
|
+
return {
|
|
52
|
+
accountAmounts: accountAmounts,
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
/** @inheritdoc */
|
|
56
|
+
initBuilder(tx) {
|
|
57
|
+
super.initBuilder(tx);
|
|
58
|
+
const transferData = tx.txBody.cryptoTransfer;
|
|
59
|
+
if (transferData && transferData.transfers && transferData.transfers.accountAmounts) {
|
|
60
|
+
this.initTransfers(transferData.transfers.accountAmounts);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Initialize the transfer specific data, getting the recipient account
|
|
65
|
+
* represented by the element with a positive amount on the transfer element.
|
|
66
|
+
* The negative amount represents the source account, so it's ignored.
|
|
67
|
+
*
|
|
68
|
+
* @param {proto} transfers - Array of objects which contains accountID and transferred amount
|
|
69
|
+
*/
|
|
70
|
+
initTransfers(transfers) {
|
|
71
|
+
transfers.forEach((transferData) => {
|
|
72
|
+
const amount = Long.fromValue(transferData.amount);
|
|
73
|
+
if (amount.isPositive()) {
|
|
74
|
+
this.send({
|
|
75
|
+
address: utils_1.stringifyAccountId(transferData.accountID),
|
|
76
|
+
amount: amount.toString(),
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
// region Transfer fields
|
|
82
|
+
/** TODO: [BG-51282] Deprecate to and amount once wp has been fixed
|
|
83
|
+
Currently work for one recipient by using exatcly one of to + amount or send function
|
|
84
|
+
*/
|
|
85
|
+
/**
|
|
86
|
+
* Set the destination address where the funds will be sent,
|
|
87
|
+
* it may take the format `'<shard>.<realm>.<account>'` or `'<account>'`
|
|
88
|
+
*
|
|
89
|
+
* @param {string} address - The address to transfer funds to
|
|
90
|
+
* @returns {TransferBuilder} - The builder with the new parameter set
|
|
91
|
+
*/
|
|
92
|
+
to(address) {
|
|
93
|
+
if (this._recipients.length > 0) {
|
|
94
|
+
throw new DuplicateMethodError('Invalid method: send already used');
|
|
95
|
+
}
|
|
96
|
+
if (!utils_1.isValidAddress(address)) {
|
|
97
|
+
throw new sdk_core_1.InvalidParameterValueError('Invalid address');
|
|
98
|
+
}
|
|
99
|
+
this._toAddress = address;
|
|
100
|
+
return this;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Set the amount to be transferred
|
|
104
|
+
*
|
|
105
|
+
* @param {string} amount - Amount to transfer in tinyBars (there are 100,000,000 tinyBars in one Hbar)
|
|
106
|
+
* @returns {TransferBuilder} - The builder with the new parameter set
|
|
107
|
+
*/
|
|
108
|
+
amount(amount) {
|
|
109
|
+
if (this._recipients.length > 0) {
|
|
110
|
+
throw new DuplicateMethodError('Invalid method: send already used');
|
|
111
|
+
}
|
|
112
|
+
if (!utils_1.isValidAmount(amount)) {
|
|
113
|
+
throw new sdk_core_1.InvalidParameterValueError('Invalid amount');
|
|
114
|
+
}
|
|
115
|
+
this._amount = amount;
|
|
116
|
+
return this;
|
|
117
|
+
}
|
|
118
|
+
/** @inheritdoc */
|
|
119
|
+
send(recipient) {
|
|
120
|
+
if (this._amount || this._toAddress) {
|
|
121
|
+
throw new DuplicateMethodError('Invalid method: to or amount already used');
|
|
122
|
+
}
|
|
123
|
+
if (recipient.tokenName) {
|
|
124
|
+
throw new sdk_core_1.InvalidParameterValueError('Invalid token name must be empty');
|
|
125
|
+
}
|
|
126
|
+
return super.send(recipient);
|
|
127
|
+
}
|
|
128
|
+
// endregion
|
|
129
|
+
// region Validators
|
|
130
|
+
/** @inheritdoc */
|
|
131
|
+
validateMandatoryFields() {
|
|
132
|
+
// TODO: [BG-51282] Remove once to and amount function is deprecated
|
|
133
|
+
if (this._toAddress && this._amount) {
|
|
134
|
+
this._recipients.push({
|
|
135
|
+
address: this._toAddress,
|
|
136
|
+
amount: this._amount,
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
super.validateMandatoryFields();
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
exports.CoinTransferBuilder = CoinTransferBuilder;
|
|
143
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29pblRyYW5zZmVyQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2luL2hiYXIvY29pblRyYW5zZmVyQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQ0EsMkNBQTZCO0FBRTdCLDhDQUE4RTtBQUU5RSx1REFBb0Q7QUFFcEQsbUNBQWtHO0FBQ2xHLCtDQUF5QztBQU16QyxNQUFhLG1CQUFvQixTQUFRLGlDQUFlO0lBS3RELFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxrQkFBa0I7SUFDUixLQUFLLENBQUMsbUJBQW1CO1FBQ2pDLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3RELE9BQU8sTUFBTSxLQUFLLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUMzQyxDQUFDO0lBRU8saUJBQWlCO1FBQ3ZCLElBQUksU0FBUyxHQUFHLElBQUksd0JBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNqQyxNQUFNLGNBQWMsR0FBMEI7WUFDNUM7Z0JBQ0UsU0FBUyxFQUFFLDRCQUFvQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDO2dCQUNyRCxNQUFNLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7YUFDeEIsRUFBRSxTQUFTO1NBQ2IsQ0FBQztRQUNGLHdDQUF3QztRQUN4QyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFO1lBQ2pDLGNBQWMsQ0FBQyxJQUFJLENBQ2pCLEVBQUUsU0FBUyxFQUFFLDRCQUFvQixDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FD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SUFDbEIsdUJBQXVCO1FBQ3JCLG9FQUFvRTtRQUNwRSxJQUFJLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNuQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztnQkFDcEIsT0FBTyxFQUFFLElBQUksQ0FBQyxVQUFVO2dCQUN4QixNQUFNLEVBQUUsSUFBSSxDQUFDLE9BQU87YUFDckIsQ0FBQyxDQUFDO1NBQ0o7UUFDRCxLQUFLLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0NBRUY7QUFqSUQsa0RBaUlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby9zdGF0aWNzJztcbmltcG9ydCAqIGFzIExvbmcgZnJvbSAnbG9uZyc7XG5pbXBvcnQgKiBhcyBwcm90byBmcm9tICdAaGFzaGdyYXBoL3Byb3RvJztcbmltcG9ydCB7IEV4dGVuZGFibGVFcnJvciwgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3IgfSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuaW1wb3J0IHsgUmVjaXBpZW50IH0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBUcmFuc2ZlckJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zZmVyQnVpbGRlcic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgaXNWYWxpZEFkZHJlc3MsIGlzVmFsaWRBbW91bnQsIHN0cmluZ2lmeUFjY291bnRJZCwgYnVpbGRIZWRlcmFBY2NvdW50SUQgfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IEJpZ051bWJlciB9IGZyb20gJ2JpZ251bWJlci5qcyc7XG5cbmRlY2xhcmUgY2xhc3MgRHVwbGljYXRlTWV0aG9kRXJyb3IgZXh0ZW5kcyBFeHRlbmRhYmxlRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcpO1xufVxuXG5leHBvcnQgY2xhc3MgQ29pblRyYW5zZmVyQnVpbGRlciBleHRlbmRzIFRyYW5zZmVyQnVpbGRlciB7XG4gIC8vIFRPRE86IFtCRy01MTI4Ml0gRGVwcmVjYXRlIG9uY2Ugd3Agd29yayBmb3IgbXVsdGkgcmVjaXBpZW50c1xuICBwcml2YXRlIF90b0FkZHJlc3M6IHN0cmluZztcbiAgcHJpdmF0ZSBfYW1vdW50OiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBhc3luYyBidWlsZEltcGxlbWVudGF0aW9uKCk6IFByb21pc2U8VHJhbnNhY3Rpb24+IHtcbiAgICB0aGlzLl90eEJvZHlEYXRhLnRyYW5zZmVycyA9IHRoaXMuYnVpbGRUcmFuc2ZlckRhdGEoKTtcbiAgICByZXR1cm4gYXdhaXQgc3VwZXIuYnVpbGRJbXBsZW1lbnRhdGlvbigpO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZFRyYW5zZmVyRGF0YSgpOiBwcm90by5JVHJhbnNmZXJMaXN0IHtcbiAgICBsZXQgdG90YWxTZW5kID0gbmV3IEJpZ051bWJlcigwKTtcbiAgICBjb25zdCBhY2NvdW50QW1vdW50czogcHJvdG8uQWNjb3VudEFtb3VudFtdID0gW1xuICAgICAge1xuICAgICAgICBhY2NvdW50SUQ6IGJ1aWxkSGVkZXJhQWNjb3VudElEKHRoaXMuX3NvdXJjZS5hZGRyZXNzKSxcbiAgICAgICAgYW1vdW50OiBMb25nLmZyb21JbnQoMCksXG4gICAgICB9LCAvLyBzZW5kZXJcbiAgICBdO1xuICAgIC8vIGFkZCByZWNpcGllbnRzIGFuZCB1cGRhdGUgc2VuZCBhbW91bnRcbiAgICB0aGlzLl9yZWNpcGllbnRzLm1hcCgocmVjaXBpZW50KSA9PiB7XG4gICAgICBhY2NvdW50QW1vdW50cy5wdXNoKFxuICAgICAgICB7IGFjY291bnRJRDogYnVpbGRIZWRlcmFBY2NvdW50SUQocmVjaXBpZW50LmFkZHJlc3MpLCBhbW91bnQ6IExvbmcuZnJvbVN0cmluZyhyZWNpcGllbnQuYW1vdW50KSB9LCAvLyByZWNpcGllbnRcbiAgICAgICk7XG4gICAgICB0b3RhbFNlbmQgPSB0b3RhbFNlbmQucGx1cyhyZWNpcGllbnQuYW1vdW50KTtcbiAgICB9KTtcbiAgICBhY2NvdW50QW1vdW50c1swXS5hbW91bnQgPSBMb25nLmZyb21TdHJpbmcodG90YWxTZW5kLnRvU3RyaW5nKCkpLm5lZ2F0ZSgpOyAvLyB1cGRhdGUgc2VuZGVyIHNlbmQgYW1vdW50XG5cbiAgICByZXR1cm4ge1xuICAgICAgYWNjb3VudEFtb3VudHM6IGFjY291bnRBbW91bnRzLFxuICAgIH07XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgaW5pdEJ1aWxkZXIodHg6IFRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgc3VwZXIuaW5pdEJ1aWxkZXIodHgpO1xuICAgIGNvbnN0IHRyYW5zZmVyRGF0YSA9IHR4LnR4Qm9keS5jcnlwdG9UcmFuc2ZlcjtcbiAgICBpZiAodHJhbnNmZXJEYXRhICYmIHRyYW5zZmVyRGF0YS50cmFuc2ZlcnMgJiYgdHJhbnNmZXJEYXRhLnRyYW5zZmVycy5hY2NvdW50QW1vdW50cykge1xuICAgICAgdGhpcy5pbml0VHJhbnNmZXJzKHRyYW5zZmVyRGF0YS50cmFuc2ZlcnMuYWNjb3VudEFtb3VudHMpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplIHRoZSB0cmFuc2ZlciBzcGVjaWZpYyBkYXRhLCBnZXR0aW5nIHRoZSByZWNpcGllbnQgYWNjb3VudFxuICAgKiByZXByZXNlbnRlZCBieSB0aGUgZWxlbWVudCB3aXRoIGEgcG9zaXRpdmUgYW1vdW50IG9uIHRoZSB0cmFuc2ZlciBlbGVtZW50LlxuICAgKiBUaGUgbmVnYXRpdmUgYW1vdW50IHJlcHJlc2VudHMgdGhlIHNvdXJjZSBhY2NvdW50LCBzbyBpdCdzIGlnbm9yZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7cHJvdG99IHRyYW5zZmVycyAtIEFycmF5IG9mIG9iamVjdHMgd2hpY2ggY29udGFpbnMgYWNjb3VudElEIGFuZCB0cmFuc2ZlcnJlZCBhbW91bnRcbiAgICovXG4gIHByb3RlY3RlZCBpbml0VHJhbnNmZXJzKHRyYW5zZmVyczogcHJvdG8uSUFjY291bnRBbW91bnRbXSk6IHZvaWQge1xuICAgIHRyYW5zZmVycy5mb3JFYWNoKCh0cmFuc2ZlckRhdGEpID0+IHtcbiAgICAgIGNvbnN0IGFtb3VudCA9IExvbmcuZnJvbVZhbHVlKHRyYW5zZmVyRGF0YS5hbW91bnQhKTtcbiAgICAgIGlmIChhbW91bnQuaXNQb3NpdGl2ZSgpKSB7XG4gICAgICAgIHRoaXMuc2VuZCh7XG4gICAgICAgICAgYWRkcmVzczogc3RyaW5naWZ5QWNjb3VudElkKHRyYW5zZmVyRGF0YS5hY2NvdW50SUQhKSxcbiAgICAgICAgICBhbW91bnQ6IGFtb3VudC50b1N0cmluZygpLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8vIHJlZ2lvbiBUcmFuc2ZlciBmaWVsZHNcbiAgLyoqIFRPRE86IFtCRy01MTI4Ml0gRGVwcmVjYXRlIHRvIGFuZCBhbW91bnQgb25jZSB3cCBoYXMgYmVlbiBmaXhlZFxuICAgICAgQ3VycmVudGx5IHdvcmsgZm9yIG9uZSByZWNpcGllbnQgYnkgdXNpbmcgZXhhdGNseSBvbmUgb2YgdG8gKyBhbW91bnQgb3Igc2VuZCBmdW5jdGlvblxuICAgKi9cbiAgLyoqXG4gICAqIFNldCB0aGUgZGVzdGluYXRpb24gYWRkcmVzcyB3aGVyZSB0aGUgZnVuZHMgd2lsbCBiZSBzZW50LFxuICAgKiBpdCBtYXkgdGFrZSB0aGUgZm9ybWF0IGAnPHNoYXJkPi48cmVhbG0+LjxhY2NvdW50PidgIG9yIGAnPGFjY291bnQ+J2BcbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGFkZHJlc3MgLSBUaGUgYWRkcmVzcyB0byB0cmFuc2ZlciBmdW5kcyB0b1xuICAgKiBAcmV0dXJucyB7VHJhbnNmZXJCdWlsZGVyfSAtIFRoZSBidWlsZGVyIHdpdGggdGhlIG5ldyBwYXJhbWV0ZXIgc2V0XG4gICAqL1xuICB0byhhZGRyZXNzOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAodGhpcy5fcmVjaXBpZW50cy5sZW5ndGggPiAwKSB7XG4gICAgICB0aHJvdyBuZXcgRHVwbGljYXRlTWV0aG9kRXJyb3IoJ0ludmFsaWQgbWV0aG9kOiBzZW5kIGFscmVhZHkgdXNlZCcpO1xuICAgIH1cbiAgICBpZiAoIWlzVmFsaWRBZGRyZXNzKGFkZHJlc3MpKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3IoJ0ludmFsaWQgYWRkcmVzcycpO1xuICAgIH1cbiAgICB0aGlzLl90b0FkZHJlc3MgPSBhZGRyZXNzO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgYW1vdW50IHRvIGJlIHRyYW5zZmVycmVkXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBhbW91bnQgLSBBbW91bnQgdG8gdHJhbnNmZXIgaW4gdGlueUJhcnMgKHRoZXJlIGFyZSAxMDAsMDAwLDAwMCB0aW55QmFycyBpbiBvbmUgSGJhcilcbiAgICogQHJldHVybnMge1RyYW5zZmVyQnVpbGRlcn0gLSBUaGUgYnVpbGRlciB3aXRoIHRoZSBuZXcgcGFyYW1ldGVyIHNldFxuICAgKi9cbiAgYW1vdW50KGFtb3VudDogc3RyaW5nKTogdGhpcyB7XG4gICAgaWYgKHRoaXMuX3JlY2lwaWVudHMubGVuZ3RoID4gMCkge1xuICAgICAgdGhyb3cgbmV3IER1cGxpY2F0ZU1ldGhvZEVycm9yKCdJbnZhbGlkIG1ldGhvZDogc2VuZCBhbHJlYWR5IHVzZWQnKTtcbiAgICB9XG4gICAgaWYgKCFpc1ZhbGlkQW1vdW50KGFtb3VudCkpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvcignSW52YWxpZCBhbW91bnQnKTtcbiAgICB9XG4gICAgdGhpcy5fYW1vdW50ID0gYW1vdW50O1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHNlbmQocmVjaXBpZW50OiBSZWNpcGllbnQpOiB0aGlzIHtcbiAgICBpZiAodGhpcy5fYW1vdW50IHx8IHRoaXMuX3RvQWRkcmVzcykge1xuICAgICAgdGhyb3cgbmV3IER1cGxpY2F0ZU1ldGhvZEVycm9yKCdJbnZhbGlkIG1ldGhvZDogdG8gb3IgYW1vdW50IGFscmVhZHkgdXNlZCcpO1xuICAgIH1cbiAgICBpZiAocmVjaXBpZW50LnRva2VuTmFtZSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRQYXJhbWV0ZXJWYWx1ZUVycm9yKCdJbnZhbGlkIHRva2VuIG5hbWUgbXVzdCBiZSBlbXB0eScpO1xuICAgIH1cbiAgICByZXR1cm4gc3VwZXIuc2VuZChyZWNpcGllbnQpO1xuICB9XG4gIC8vIGVuZHJlZ2lvblxuXG4gIC8vIHJlZ2lvbiBWYWxpZGF0b3JzXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZU1hbmRhdG9yeUZpZWxkcygpOiB2b2lkIHtcbiAgICAvLyBUT0RPOiBbQkctNTEyODJdIFJlbW92ZSBvbmNlIHRvIGFuZCBhbW91bnQgZnVuY3Rpb24gaXMgZGVwcmVjYXRlZFxuICAgIGlmICh0aGlzLl90b0FkZHJlc3MgJiYgdGhpcy5fYW1vdW50KSB7XG4gICAgICB0aGlzLl9yZWNpcGllbnRzLnB1c2goe1xuICAgICAgICBhZGRyZXNzOiB0aGlzLl90b0FkZHJlc3MsXG4gICAgICAgIGFtb3VudDogdGhpcy5fYW1vdW50LFxuICAgICAgfSk7XG4gICAgfVxuICAgIHN1cGVyLnZhbGlkYXRlTWFuZGF0b3J5RmllbGRzKCk7XG4gIH1cbiAgLy8gZW5kcmVnaW9uXG59XG4iXX0=
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare const DEFAULT_SIGNER_NUMBER = 3;
|
|
2
|
+
export declare enum HederaTransactionTypes {
|
|
3
|
+
Transfer = "cryptoTransfer",
|
|
4
|
+
CreateAccount = "cryptoCreateAccount",
|
|
5
|
+
TokenAssociateToAccount = "tokenAssociate",
|
|
6
|
+
TokenDissociateFromAccount = "tokenAssociate"
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/coin/hbar/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB,IAAI,CAAC;AAEvC,oBAAY,sBAAsB;IAChC,QAAQ,mBAAmB;IAC3B,aAAa,wBAAwB;IACrC,uBAAuB,mBAAmB;IAC1C,0BAA0B,mBAAmB;CAC9C"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.HederaTransactionTypes = exports.DEFAULT_SIGNER_NUMBER = void 0;
|
|
4
|
+
exports.DEFAULT_SIGNER_NUMBER = 3;
|
|
5
|
+
var HederaTransactionTypes;
|
|
6
|
+
(function (HederaTransactionTypes) {
|
|
7
|
+
HederaTransactionTypes["Transfer"] = "cryptoTransfer";
|
|
8
|
+
HederaTransactionTypes["CreateAccount"] = "cryptoCreateAccount";
|
|
9
|
+
HederaTransactionTypes["TokenAssociateToAccount"] = "tokenAssociate";
|
|
10
|
+
HederaTransactionTypes["TokenDissociateFromAccount"] = "tokenAssociate";
|
|
11
|
+
})(HederaTransactionTypes = exports.HederaTransactionTypes || (exports.HederaTransactionTypes = {}));
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvaW4vaGJhci9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQWEsUUFBQSxxQkFBcUIsR0FBRyxDQUFDLENBQUM7QUFFdkMsSUFBWSxzQkFLWDtBQUxELFdBQVksc0JBQXNCO0lBQ2hDLHFEQUEyQixDQUFBO0lBQzNCLCtEQUFxQyxDQUFBO0lBQ3JDLG9FQUEwQyxDQUFBO0lBQzFDLHVFQUE2QyxDQUFBO0FBQy9DLENBQUMsRUFMVyxzQkFBc0IsR0FBdEIsOEJBQXNCLEtBQXRCLDhCQUFzQixRQUtqQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBERUZBVUxUX1NJR05FUl9OVU1CRVIgPSAzO1xuXG5leHBvcnQgZW51bSBIZWRlcmFUcmFuc2FjdGlvblR5cGVzIHtcbiAgVHJhbnNmZXIgPSAnY3J5cHRvVHJhbnNmZXInLFxuICBDcmVhdGVBY2NvdW50ID0gJ2NyeXB0b0NyZWF0ZUFjY291bnQnLFxuICBUb2tlbkFzc29jaWF0ZVRvQWNjb3VudCA9ICd0b2tlbkFzc29jaWF0ZScsXG4gIFRva2VuRGlzc29jaWF0ZUZyb21BY2NvdW50ID0gJ3Rva2VuQXNzb2NpYXRlJyxcbn1cbiJdfQ==
|
|
@@ -11,6 +11,7 @@ export interface TxData {
|
|
|
11
11
|
memo?: string;
|
|
12
12
|
to?: string;
|
|
13
13
|
amount?: string;
|
|
14
|
+
tokenName?: string;
|
|
14
15
|
}
|
|
15
16
|
export interface HederaNode {
|
|
16
17
|
nodeId: string;
|
|
@@ -23,4 +24,9 @@ export interface AddressDetails {
|
|
|
23
24
|
address: string;
|
|
24
25
|
memoId?: string;
|
|
25
26
|
}
|
|
27
|
+
export interface Recipient {
|
|
28
|
+
address: string;
|
|
29
|
+
amount: string;
|
|
30
|
+
tokenName?: string;
|
|
31
|
+
}
|
|
26
32
|
//# sourceMappingURL=iface.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../../src/coin/hbar/iface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,CAAC;AAE5B,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../../src/coin/hbar/iface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,CAAC;AAE5B,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29pbi9oYmFyL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBLZXlQYWlyIH0gZnJvbSAnLic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHhEYXRhIHtcbiAgaWQ6IHN0cmluZztcbiAgaGFzaD86IHN0cmluZztcbiAgZnJvbTogc3RyaW5nO1xuICBkYXRhOiBzdHJpbmc7XG4gIGZlZTogbnVtYmVyO1xuICBzdGFydFRpbWU6IHN0cmluZztcbiAgdmFsaWREdXJhdGlvbjogc3RyaW5nO1xuICBub2RlOiBzdHJpbmc7XG4gIG1lbW8/OiBzdHJpbmc7XG4gIHRvPzogc3RyaW5nO1xuICBhbW91bnQ/
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29pbi9oYmFyL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBLZXlQYWlyIH0gZnJvbSAnLic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHhEYXRhIHtcbiAgaWQ6IHN0cmluZztcbiAgaGFzaD86IHN0cmluZztcbiAgZnJvbTogc3RyaW5nO1xuICBkYXRhOiBzdHJpbmc7XG4gIGZlZTogbnVtYmVyO1xuICBzdGFydFRpbWU6IHN0cmluZztcbiAgdmFsaWREdXJhdGlvbjogc3RyaW5nO1xuICBub2RlOiBzdHJpbmc7XG4gIG1lbW8/OiBzdHJpbmc7XG4gIHRvPzogc3RyaW5nO1xuICBhbW91bnQ/OiBzdHJpbmc7XG4gIHRva2VuTmFtZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBIZWRlcmFOb2RlIHtcbiAgbm9kZUlkOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2lnbmF0dXJlRGF0YSB7XG4gIHNpZ25hdHVyZTogc3RyaW5nO1xuICBrZXlQYWlyOiBLZXlQYWlyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFkZHJlc3NEZXRhaWxzIHtcbiAgYWRkcmVzczogc3RyaW5nO1xuICBtZW1vSWQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVjaXBpZW50IHtcbiAgYWRkcmVzczogc3RyaW5nOyAvLyBUaGUgYWRkcmVzcyB0byB0cmFuc2ZlciBmdW5kcyB0b1xuICBhbW91bnQ6IHN0cmluZzsgLy8gQW1vdW50IHRvIHRyYW5zZmVyIGluIHRpbnlCYXJzICh0aGVyZSBhcmUgMTAwLDAwMCwwMDAgdGlueUJhcnMgaW4gb25lIEhiYXIpXG4gIHRva2VuTmFtZT86IHN0cmluZzsgLy8gdG9rZW4gbmFtZSBpZiBpdCdzIGEgdG9rZW4gdHJhbnNmZXJcbn1cbiJdfQ==
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { KeyPair } from '.';
|
|
2
|
+
export interface TxData {
|
|
3
|
+
id: string;
|
|
4
|
+
hash?: string;
|
|
5
|
+
from: string;
|
|
6
|
+
data: string;
|
|
7
|
+
fee: number;
|
|
8
|
+
startTime: string;
|
|
9
|
+
validDuration: string;
|
|
10
|
+
node: string;
|
|
11
|
+
memo?: string;
|
|
12
|
+
to?: string;
|
|
13
|
+
amount?: string;
|
|
14
|
+
}
|
|
15
|
+
export interface HederaNode {
|
|
16
|
+
nodeId: string;
|
|
17
|
+
}
|
|
18
|
+
export interface SignatureData {
|
|
19
|
+
signature: string;
|
|
20
|
+
keyPair: KeyPair;
|
|
21
|
+
}
|
|
22
|
+
export interface AddressDetails {
|
|
23
|
+
address: string;
|
|
24
|
+
memoId?: string;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=ifaces.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ifaces.d.ts","sourceRoot":"","sources":["../../../../src/coin/hbar/ifaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,CAAC;AAE5B,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvaW4vaGJhci9pZmFjZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEtleVBhaXIgfSBmcm9tICcuJztcblxuZXhwb3J0IGludGVyZmFjZSBUeERhdGEge1xuICBpZDogc3RyaW5nO1xuICBoYXNoPzogc3RyaW5nO1xuICBmcm9tOiBzdHJpbmc7XG4gIGRhdGE6IHN0cmluZztcbiAgZmVlOiBudW1iZXI7XG4gIHN0YXJ0VGltZTogc3RyaW5nO1xuICB2YWxpZER1cmF0aW9uOiBzdHJpbmc7XG4gIG5vZGU6IHN0cmluZztcbiAgbWVtbz86IHN0cmluZztcbiAgdG8/OiBzdHJpbmc7XG4gIGFtb3VudD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBIZWRlcmFOb2RlIHtcbiAgbm9kZUlkOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2lnbmF0dXJlRGF0YSB7XG4gIHNpZ25hdHVyZTogc3RyaW5nO1xuICBrZXlQYWlyOiBLZXlQYWlyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFkZHJlc3NEZXRhaWxzIHtcbiAgYWRkcmVzczogc3RyaW5nO1xuICBtZW1vSWQ/OiBzdHJpbmc7XG59XG4iXX0=
|
|
@@ -49,7 +49,7 @@ class KeyPair extends sdk_core_1.Ed25519KeyPair {
|
|
|
49
49
|
}
|
|
50
50
|
/** @inheritdoc */
|
|
51
51
|
recordKeysFromPrivateKeyInProtocolFormat(prv) {
|
|
52
|
-
if (!/^([a-
|
|
52
|
+
if (!/^([a-f\d]{2})+$/i.test(prv)) {
|
|
53
53
|
throw new sdk_core_1.InvalidKey('Invalid private key length. Must be a hex and multiple of 2');
|
|
54
54
|
}
|
|
55
55
|
try {
|
|
@@ -67,4 +67,4 @@ class KeyPair extends sdk_core_1.Ed25519KeyPair {
|
|
|
67
67
|
}
|
|
68
68
|
}
|
|
69
69
|
exports.KeyPair = KeyPair;
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5UGFpci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2luL2hiYXIva2V5UGFpci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx3Q0FBdUQ7QUFDdkQsOENBQXVIO0FBQ3ZILG1DQUF1QztBQUV2QyxNQUFNLGlCQUFpQixHQUFHLDBCQUEwQixDQUFDO0FBQ3JELE1BQU0sa0JBQWtCLEdBQUcsa0NBQWtDLENBQUM7QUFFOUQsTUFBYSxPQUFRLFNBQVEseUJBQWM7SUFDekM7Ozs7T0FJRztJQUNILFlBQVksTUFBdUI7UUFDakMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2hCLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILE9BQU8sQ0FBQyxHQUFHLEdBQUcsS0FBSztRQUNqQixNQUFNLEdBQUcsR0FBRyxlQUFTLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDOUQsTUFBTSxNQUFNLEdBQWdCO1lBQzFCLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUc7U0FDckQsQ0FBQztRQUVGLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUU7WUFDcEIsTUFBTSxHQUFHLEdBQUcsZ0JBQVUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUMvRCxNQUFNLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDO1NBQy9EO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixVQUFVLENBQUMsTUFBc0I7UUFDL0IsTUFBTSxJQUFJLHVCQUFZLENBQUMsK0NBQStDLENBQUMsQ0FBQztJQUMxRSxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLHVDQUF1QyxDQUFDLEdBQVc7UUFDakQsSUFBSTtZQUNGLE1BQU0sU0FBUyxHQUFHLGVBQVMsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDckUsTUFBTSxVQUFVLEdBQUcsb0JBQVksQ0FBQyxpQkFBaUIsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUM5RCxPQUFPLEVBQUUsR0FBRyxFQUFFLFVBQVUsRUFBRSxDQUFDO1NBQzVCO1FBQUMsT0FBTyxDQUFDLEVBQUU7WUFDVixNQUFNLElBQUkscUJBQVUsQ0FBQyxzQkFBc0IsR0FBRyxHQUFHLENBQUMsQ0FBQztTQUNwRDtJQUNILENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsd0NBQXdDLENBQUMsR0FBVztRQUNsRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ2pDLE1BQU0sSUFBSSxxQkFBVSxDQUFDLDZEQUE2RCxDQUFDLENBQUM7U0FDckY7UUFDRCxJQUFJO1lBQ0YsTUFBTSxTQUFTLEdBQUcsZ0JBQVUsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDN0MsTUFBTSxVQUFVLEdBQUcsb0JBQVksQ0FBQyxrQkFBa0IsRUFBRSxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztZQUMxRSxNQUFNLFVBQVUsR0FBRyxvQkFBWSxDQUFDLGlCQUFpQixFQUFFLFNBQVMsQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztZQUNuRixPQUFPO2dCQUNMLEdBQUcsRUFBRSxVQUFVO2dCQUNmLEdBQUcsRUFBRSxVQUFVO2FBQ2hCLENBQUM7U0FDSDtRQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ1YsTUFBTSxJQUFJLHFCQUFVLENBQUMscUJBQXFCLENBQUMsQ0FBQztTQUM3QztJQUNILENBQUM7Q0FDRjtBQTlERCwwQkE4REMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcml2YXRlS2V5LCBQdWJsaWNLZXkgfSBmcm9tICdAaGFzaGdyYXBoL3Nkayc7XG5pbXBvcnQgeyBBZGRyZXNzRm9ybWF0LCBEZWZhdWx0S2V5cywgRWQyNTUxOUtleVBhaXIsIEludmFsaWRLZXksIEtleVBhaXJPcHRpb25zLCBOb3RTdXBwb3J0ZWQgfSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuaW1wb3J0IHsgcmVtb3ZlUHJlZml4IH0gZnJvbSAnLi91dGlscyc7XG5cbmNvbnN0IFBVQkxJQ19LRVlfUFJFRklYID0gJzMwMmEzMDA1MDYwMzJiNjU3MDAzMjEwMCc7XG5jb25zdCBQUklWQVRFX0tFWV9QUkVGSVggPSAnMzAyZTAyMDEwMDMwMDUwNjAzMmI2NTcwMDQyMjA0MjAnO1xuXG5leHBvcnQgY2xhc3MgS2V5UGFpciBleHRlbmRzIEVkMjU1MTlLZXlQYWlyIHtcbiAgLyoqXG4gICAqIFB1YmxpYyBjb25zdHJ1Y3Rvci4gQnkgZGVmYXVsdCwgY3JlYXRlcyBhIGtleSBwYWlyIHdpdGggYSByYW5kb20gbWFzdGVyIHNlZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7IEtleVBhaXJPcHRpb25zIH0gc291cmNlIEVpdGhlciBhIG1hc3RlciBzZWVkLCBhIHByaXZhdGUga2V5LCBvciBhIHB1YmxpYyBrZXlcbiAgICovXG4gIGNvbnN0cnVjdG9yKHNvdXJjZT86IEtleVBhaXJPcHRpb25zKSB7XG4gICAgc3VwZXIoc291cmNlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBIZWRlcmEgZGVmYXVsdCBrZXlzIGZvcm1hdCBpcyBhIHBhaXIgb2YgVWludDhBcnJheSBrZXlzXG4gICAqXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gcmF3IGRlZmluZXMgaWYgdGhlIGtleSBpcyByZXR1cm5lZCBpbiByYXcgb3IgcHJvdG9jb2wgZGVmYXVsdCBmb3JtYXRcbiAgICogQHJldHVybnMgeyBEZWZhdWx0S2V5cyB9IFRoZSBrZXlzIGluIHRoZSBkZWZpbmVkIGZvcm1hdFxuICAgKi9cbiAgZ2V0S2V5cyhyYXcgPSBmYWxzZSk6IERlZmF1bHRLZXlzIHtcbiAgICBjb25zdCBwdWIgPSBQdWJsaWNLZXkuZnJvbVN0cmluZyh0aGlzLmtleVBhaXIucHViKS50b1N0cmluZygpO1xuICAgIGNvbnN0IHJlc3VsdDogRGVmYXVsdEtleXMgPSB7XG4gICAgICBwdWI6IHJhdyA/IHB1Yi5zbGljZShQVUJMSUNfS0VZX1BSRUZJWC5sZW5ndGgpIDogcHViLFxuICAgIH07XG5cbiAgICBpZiAodGhpcy5rZXlQYWlyLnBydikge1xuICAgICAgY29uc3QgcHJ2ID0gUHJpdmF0ZUtleS5mcm9tU3RyaW5nKHRoaXMua2V5UGFpci5wcnYpLnRvU3RyaW5nKCk7XG4gICAgICByZXN1bHQucHJ2ID0gcmF3ID8gcHJ2LnNsaWNlKFBSSVZBVEVfS0VZX1BSRUZJWC5sZW5ndGgpIDogcHJ2O1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldEFkZHJlc3MoZm9ybWF0PzogQWRkcmVzc0Zvcm1hdCk6IHN0cmluZyB7XG4gICAgdGhyb3cgbmV3IE5vdFN1cHBvcnRlZCgnQWRkcmVzcyBkZXJpdmF0aW9uIGlzIG5vdCBzdXBwb3J0ZWQgaW4gSGVkZXJhJyk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcmVjb3JkS2V5c0Zyb21QdWJsaWNLZXlJblByb3RvY29sRm9ybWF0KHB1Yjogc3RyaW5nKTogRGVmYXVsdEtleXMge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBoZWRlcmFQdWIgPSBQdWJsaWNLZXkuZnJvbVN0cmluZyhwdWIudG9Mb3dlckNhc2UoKSkudG9TdHJpbmcoKTtcbiAgICAgIGNvbnN0IGVkMjU1MTlQdWIgPSByZW1vdmVQcmVmaXgoUFVCTElDX0tFWV9QUkVGSVgsIGhlZGVyYVB1Yik7XG4gICAgICByZXR1cm4geyBwdWI6IGVkMjU1MTlQdWIgfTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEtleSgnSW52YWxpZCBwdWJsaWMga2V5OiAnICsgcHViKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcmVjb3JkS2V5c0Zyb21Qcml2YXRlS2V5SW5Qcm90b2NvbEZvcm1hdChwcnY6IHN0cmluZyk6IERlZmF1bHRLZXlzIHtcbiAgICBpZiAoIS9eKFthLWZcXGRdezJ9KSskL2kudGVzdChwcnYpKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEtleSgnSW52YWxpZCBwcml2YXRlIGtleSBsZW5ndGguIE11c3QgYmUgYSBoZXggYW5kIG11bHRpcGxlIG9mIDInKTtcbiAgICB9XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGhlZGVyYVBydiA9IFByaXZhdGVLZXkuZnJvbVN0cmluZyhwcnYpO1xuICAgICAgY29uc3QgZWQyNTUxOVBydiA9IHJlbW92ZVByZWZpeChQUklWQVRFX0tFWV9QUkVGSVgsIGhlZGVyYVBydi50b1N0cmluZygpKTtcbiAgICAgIGNvbnN0IGVkMjU1MTlQdWIgPSByZW1vdmVQcmVmaXgoUFVCTElDX0tFWV9QUkVGSVgsIGhlZGVyYVBydi5wdWJsaWNLZXkudG9TdHJpbmcoKSk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBwcnY6IGVkMjU1MTlQcnYsXG4gICAgICAgIHB1YjogZWQyNTUxOVB1YixcbiAgICAgIH07XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRLZXkoJ0ludmFsaWQgcHJpdmF0ZSBrZXknKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { BaseCoin as CoinConfig } from '@bitgo/statics';
|
|
2
|
+
import { Transaction } from './transaction';
|
|
3
|
+
import { TransactionBuilder } from './transactionBuilder';
|
|
4
|
+
export declare class TokenAssociateBuilder extends TransactionBuilder {
|
|
5
|
+
private readonly _txBodyData;
|
|
6
|
+
private _account;
|
|
7
|
+
private _tokens;
|
|
8
|
+
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
9
|
+
/** @inheritdoc */
|
|
10
|
+
initBuilder(tx: Transaction): void;
|
|
11
|
+
private initTokenAssociation;
|
|
12
|
+
/** @inheritdoc */
|
|
13
|
+
protected buildImplementation(): Promise<Transaction>;
|
|
14
|
+
/** @inheritdoc */
|
|
15
|
+
validateMandatoryFields(): void;
|
|
16
|
+
/**
|
|
17
|
+
* Set account to associate with tokens, defaults to this._source.address value
|
|
18
|
+
*
|
|
19
|
+
* @param {string} accountID - The name of the account to associate to the transaction
|
|
20
|
+
* @returns {TokenAssociateBuilder} - This token association builder
|
|
21
|
+
*/
|
|
22
|
+
account(accountID: string): this;
|
|
23
|
+
/**
|
|
24
|
+
* Add a token to associate to the multisig wallet.
|
|
25
|
+
*
|
|
26
|
+
* @param {string} tokenName - The name of the token to associate to the transaction
|
|
27
|
+
* @returns {TokenAssociateBuilder} - This token association builder
|
|
28
|
+
*/
|
|
29
|
+
tokens(tokenName: string): this;
|
|
30
|
+
private buildTokenData;
|
|
31
|
+
private buildAccountData;
|
|
32
|
+
private validateAccount;
|
|
33
|
+
private validateToken;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=tokenAssociateBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokenAssociateBuilder.d.ts","sourceRoot":"","sources":["../../../../src/coin/hbar/tokenAssociateBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAGxD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAU5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,qBAAa,qBAAsB,SAAQ,kBAAkB;IAC3D,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAsC;IAClE,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,OAAO,CAAgB;gBAEnB,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAM7C,kBAAkB;IAClB,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAQlC,OAAO,CAAC,oBAAoB;IAa5B,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC;IAO3D,kBAAkB;IAClB,uBAAuB,IAAI,IAAI;IAQ/B;;;;;OAKG;IACH,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAMhC;;;;;OAKG;IACH,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAQ/B,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,aAAa;CAStB"}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
+
}) : function(o, v) {
|
|
12
|
+
o["default"] = v;
|
|
13
|
+
});
|
|
14
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
+
if (mod && mod.__esModule) return mod;
|
|
16
|
+
var result = {};
|
|
17
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
+
__setModuleDefault(result, mod);
|
|
19
|
+
return result;
|
|
20
|
+
};
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
exports.TokenAssociateBuilder = void 0;
|
|
23
|
+
const proto = __importStar(require("@hashgraph/proto"));
|
|
24
|
+
const sdk_core_1 = require("@bitgo/sdk-core");
|
|
25
|
+
const utils_1 = require("./utils");
|
|
26
|
+
const transactionBuilder_1 = require("./transactionBuilder");
|
|
27
|
+
class TokenAssociateBuilder extends transactionBuilder_1.TransactionBuilder {
|
|
28
|
+
constructor(_coinConfig) {
|
|
29
|
+
super(_coinConfig);
|
|
30
|
+
this._tokens = [];
|
|
31
|
+
this._txBodyData = new proto.TokenAssociateTransactionBody();
|
|
32
|
+
this._txBody.tokenAssociate = this._txBodyData;
|
|
33
|
+
}
|
|
34
|
+
/** @inheritdoc */
|
|
35
|
+
initBuilder(tx) {
|
|
36
|
+
super.initBuilder(tx);
|
|
37
|
+
const tokenAssociateAccount = tx.txBody.tokenAssociate;
|
|
38
|
+
if (tokenAssociateAccount && tokenAssociateAccount.tokens) {
|
|
39
|
+
this.initTokenAssociation(tokenAssociateAccount);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
initTokenAssociation(tokenAssociateAccount) {
|
|
43
|
+
tokenAssociateAccount.tokens.forEach((tokenId) => {
|
|
44
|
+
const token = utils_1.stringifyTokenId(tokenId);
|
|
45
|
+
this.validateToken(token);
|
|
46
|
+
this._tokens.push(token);
|
|
47
|
+
});
|
|
48
|
+
if (tokenAssociateAccount.account) {
|
|
49
|
+
const accountId = utils_1.stringifyAccountId(tokenAssociateAccount.account);
|
|
50
|
+
this.account(accountId);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
/** @inheritdoc */
|
|
54
|
+
async buildImplementation() {
|
|
55
|
+
this._txBodyData.tokens = this.buildTokenData();
|
|
56
|
+
this._txBodyData.account = this.buildAccountData();
|
|
57
|
+
this.transaction.setTransactionType(sdk_core_1.TransactionType.AssociatedTokenAccountInitialization);
|
|
58
|
+
return await super.buildImplementation();
|
|
59
|
+
}
|
|
60
|
+
/** @inheritdoc */
|
|
61
|
+
validateMandatoryFields() {
|
|
62
|
+
if (!this._tokens || this._tokens.length < 1) {
|
|
63
|
+
throw new sdk_core_1.BuildTransactionError('Invalid transaction: missing tokens to associate');
|
|
64
|
+
}
|
|
65
|
+
super.validateMandatoryFields();
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Set account to associate with tokens, defaults to this._source.address value
|
|
69
|
+
*
|
|
70
|
+
* @param {string} accountID - The name of the account to associate to the transaction
|
|
71
|
+
* @returns {TokenAssociateBuilder} - This token association builder
|
|
72
|
+
*/
|
|
73
|
+
account(accountID) {
|
|
74
|
+
this.validateAccount(accountID);
|
|
75
|
+
this._account = accountID;
|
|
76
|
+
return this;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Add a token to associate to the multisig wallet.
|
|
80
|
+
*
|
|
81
|
+
* @param {string} tokenName - The name of the token to associate to the transaction
|
|
82
|
+
* @returns {TokenAssociateBuilder} - This token association builder
|
|
83
|
+
*/
|
|
84
|
+
tokens(tokenName) {
|
|
85
|
+
const tokenId = utils_1.getHederaTokenIdFromName(tokenName);
|
|
86
|
+
this.validateToken(tokenId);
|
|
87
|
+
this._tokens.push(tokenId);
|
|
88
|
+
return this;
|
|
89
|
+
}
|
|
90
|
+
buildTokenData() {
|
|
91
|
+
return this._tokens.map(utils_1.buildHederaTokenID);
|
|
92
|
+
}
|
|
93
|
+
buildAccountData() {
|
|
94
|
+
let accountId = this._account;
|
|
95
|
+
if (!accountId) {
|
|
96
|
+
accountId = this._source.address;
|
|
97
|
+
}
|
|
98
|
+
return utils_1.buildHederaAccountID(accountId);
|
|
99
|
+
}
|
|
100
|
+
validateAccount(accountID) {
|
|
101
|
+
if (!utils_1.isValidAddress(accountID)) {
|
|
102
|
+
throw new sdk_core_1.BuildTransactionError('Unsupported account address: ' + accountID);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
validateToken(tokenId) {
|
|
106
|
+
if (tokenId === undefined) {
|
|
107
|
+
throw new sdk_core_1.BuildTransactionError('Unsupported token ID: ' + tokenId);
|
|
108
|
+
}
|
|
109
|
+
else if (this._tokens.includes(tokenId)) {
|
|
110
|
+
throw new sdk_core_1.BuildTransactionError('Repeated token ID: ' + tokenId);
|
|
111
|
+
}
|
|
112
|
+
else if (!utils_1.isValidHederaTokenID(tokenId)) {
|
|
113
|
+
throw new sdk_core_1.BuildTransactionError('Invalid token ID: ' + tokenId);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
exports.TokenAssociateBuilder = TokenAssociateBuilder;
|
|
118
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5Bc3NvY2lhdGVCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvaW4vaGJhci90b2tlbkFzc29jaWF0ZUJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNBLHdEQUEwQztBQUMxQyw4Q0FBeUU7QUFFekUsbUNBUWlCO0FBQ2pCLDZEQUEwRDtBQUUxRCxNQUFhLHFCQUFzQixTQUFRLHVDQUFrQjtJQUszRCxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUhiLFlBQU8sR0FBYSxFQUFFLENBQUM7UUFJN0IsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLEtBQUssQ0FBQyw2QkFBNkIsRUFBRSxDQUFDO1FBQzdELElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDakQsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixXQUFXLENBQUMsRUFBZTtRQUN6QixLQUFLLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3RCLE1BQU0scUJBQXFCLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUM7UUFDdkQsSUFBSSxxQkFBcUIsSUFBSSxxQkFBcUIsQ0FBQyxNQUFNLEVBQUU7WUFDekQsSUFBSSxDQUFDLG9CQUFvQixDQUFDLHFCQUE0RCxDQUFDLENBQUM7U0FDekY7SUFDSCxDQUFDO0lBRU8sb0JBQW9CLENBQUMscUJBQTJEO1FBQ3RGLHFCQUFxQixDQUFDLE1BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUF1QixFQUFFLEVBQUU7WUFDaEUsTUFBTSxLQUFLLEdBQUcsd0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDeEMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMxQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENB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aWcgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5pbXBvcnQgKiBhcyBwcm90byBmcm9tICdAaGFzaGdyYXBoL3Byb3RvJztcbmltcG9ydCB7IEJ1aWxkVHJhbnNhY3Rpb25FcnJvciwgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvL3Nkay1jb3JlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQge1xuICBidWlsZEhlZGVyYUFjY291bnRJRCxcbiAgYnVpbGRIZWRlcmFUb2tlbklELFxuICBnZXRIZWRlcmFUb2tlbklkRnJvbU5hbWUsXG4gIGlzVmFsaWRBZGRyZXNzLFxuICBpc1ZhbGlkSGVkZXJhVG9rZW5JRCxcbiAgc3RyaW5naWZ5QWNjb3VudElkLFxuICBzdHJpbmdpZnlUb2tlbklkLFxufSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlciB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyJztcblxuZXhwb3J0IGNsYXNzIFRva2VuQXNzb2NpYXRlQnVpbGRlciBleHRlbmRzIFRyYW5zYWN0aW9uQnVpbGRlciB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3R4Qm9keURhdGE6IHByb3RvLlRva2VuQXNzb2NpYXRlVHJhbnNhY3Rpb25Cb2R5O1xuICBwcml2YXRlIF9hY2NvdW50OiBzdHJpbmc7XG4gIHByaXZhdGUgX3Rva2Vuczogc3RyaW5nW10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gICAgdGhpcy5fdHhCb2R5RGF0YSA9IG5ldyBwcm90by5Ub2tlbkFzc29jaWF0ZVRyYW5zYWN0aW9uQm9keSgpO1xuICAgIHRoaXMuX3R4Qm9keS50b2tlbkFzc29jaWF0ZSA9IHRoaXMuX3R4Qm9keURhdGE7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgaW5pdEJ1aWxkZXIodHg6IFRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgc3VwZXIuaW5pdEJ1aWxkZXIodHgpO1xuICAgIGNvbnN0IHRva2VuQXNzb2NpYXRlQWNjb3VudCA9IHR4LnR4Qm9keS50b2tlbkFzc29jaWF0ZTtcbiAgICBpZiAodG9rZW5Bc3NvY2lhdGVBY2NvdW50ICYmIHRva2VuQXNzb2NpYXRlQWNjb3VudC50b2tlbnMpIHtcbiAgICAgIHRoaXMuaW5pdFRva2VuQXNzb2NpYXRpb24odG9rZW5Bc3NvY2lhdGVBY2NvdW50IGFzIHByb3RvLlRva2VuQXNzb2NpYXRlVHJhbnNhY3Rpb25Cb2R5KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGluaXRUb2tlbkFzc29jaWF0aW9uKHRva2VuQXNzb2NpYXRlQWNjb3VudDogcHJvdG8uSVRva2VuQXNzb2NpYXRlVHJhbnNhY3Rpb25Cb2R5KTogdm9pZCB7XG4gICAgdG9rZW5Bc3NvY2lhdGVBY2NvdW50LnRva2VucyEuZm9yRWFjaCgodG9rZW5JZDogcHJvdG8uSVRva2VuSUQpID0+IHtcbiAgICAgIGNvbnN0IHRva2VuID0gc3RyaW5naWZ5VG9rZW5JZCh0b2tlbklkKTtcbiAgICAgIHRoaXMudmFsaWRhdGVUb2tlbih0b2tlbik7XG4gICAgICB0aGlzLl90b2tlbnMucHVzaCh0b2tlbik7XG4gICAgfSk7XG5cbiAgICBpZiAodG9rZW5Bc3NvY2lhdGVBY2NvdW50LmFjY291bnQpIHtcbiAgICAgIGNvbnN0IGFjY291bnRJZCA9IHN0cmluZ2lmeUFjY291bnRJZCh0b2tlbkFzc29jaWF0ZUFjY291bnQuYWNjb3VudCk7XG4gICAgICB0aGlzLmFjY291bnQoYWNjb3VudElkKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGFzeW5jIGJ1aWxkSW1wbGVtZW50YXRpb24oKTogUHJvbWlzZTxUcmFuc2FjdGlvbj4ge1xuICAgIHRoaXMuX3R4Qm9keURhdGEudG9rZW5zID0gdGhpcy5idWlsZFRva2VuRGF0YSgpO1xuICAgIHRoaXMuX3R4Qm9keURhdGEuYWNjb3VudCA9IHRoaXMuYnVpbGRBY2NvdW50RGF0YSgpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uc2V0VHJhbnNhY3Rpb25UeXBlKFRyYW5zYWN0aW9uVHlwZS5Bc3NvY2lhdGVkVG9rZW5BY2NvdW50SW5pdGlhbGl6YXRpb24pO1xuICAgIHJldHVybiBhd2FpdCBzdXBlci5idWlsZEltcGxlbWVudGF0aW9uKCk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVNYW5kYXRvcnlGaWVsZHMoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl90b2tlbnMgfHwgdGhpcy5fdG9rZW5zLmxlbmd0aCA8IDEpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ0ludmFsaWQgdHJhbnNhY3Rpb246IG1pc3NpbmcgdG9rZW5zIHRvIGFzc29jaWF0ZScpO1xuICAgIH1cblxuICAgIHN1cGVyLnZhbGlkYXRlTWFuZGF0b3J5RmllbGRzKCk7XG4gIH1cblxuICAvKipcbiAgICogU2V0IGFjY291bnQgdG8gYXNzb2NpYXRlIHdpdGggdG9rZW5zLCBkZWZhdWx0cyB0byB0aGlzLl9zb3VyY2UuYWRkcmVzcyB2YWx1ZVxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gYWNjb3VudElEIC0gVGhlIG5hbWUgb2YgdGhlIGFjY291bnQgdG8gYXNzb2NpYXRlIHRvIHRoZSB0cmFuc2FjdGlvblxuICAgKiBAcmV0dXJucyB7VG9rZW5Bc3NvY2lhdGVCdWlsZGVyfSAtIFRoaXMgdG9rZW4gYXNzb2NpYXRpb24gYnVpbGRlclxuICAgKi9cbiAgYWNjb3VudChhY2NvdW50SUQ6IHN0cmluZyk6IHRoaXMge1xuICAgIHRoaXMudmFsaWRhdGVBY2NvdW50KGFjY291bnRJRCk7XG4gICAgdGhpcy5fYWNjb3VudCA9IGFjY291bnRJRDtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYSB0b2tlbiB0byBhc3NvY2lhdGUgdG8gdGhlIG11bHRpc2lnIHdhbGxldC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHRva2VuTmFtZSAtIFRoZSBuYW1lIG9mIHRoZSB0b2tlbiB0byBhc3NvY2lhdGUgdG8gdGhlIHRyYW5zYWN0aW9uXG4gICAqIEByZXR1cm5zIHtUb2tlbkFzc29jaWF0ZUJ1aWxkZXJ9IC0gVGhpcyB0b2tlbiBhc3NvY2lhdGlvbiBidWlsZGVyXG4gICAqL1xuICB0b2tlbnModG9rZW5OYW1lOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBjb25zdCB0b2tlbklkID0gZ2V0SGVkZXJhVG9rZW5JZEZyb21OYW1lKHRva2VuTmFtZSk7XG5cbiAgICB0aGlzLnZhbGlkYXRlVG9rZW4odG9rZW5JZCk7XG4gICAgdGhpcy5fdG9rZW5zLnB1c2godG9rZW5JZCEpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZFRva2VuRGF0YSgpOiBwcm90by5Ub2tlbklEW10ge1xuICAgIHJldHVybiB0aGlzLl90b2tlbnMubWFwKGJ1aWxkSGVkZXJhVG9rZW5JRCk7XG4gIH1cblxuICBwcml2YXRlIGJ1aWxkQWNjb3VudERhdGEoKTogcHJvdG8uQWNjb3VudElEIHtcbiAgICBsZXQgYWNjb3VudElkID0gdGhpcy5fYWNjb3VudDtcbiAgICBpZiAoIWFjY291bnRJZCkge1xuICAgICAgYWNjb3VudElkID0gdGhpcy5fc291cmNlLmFkZHJlc3M7XG4gICAgfVxuXG4gICAgcmV0dXJuIGJ1aWxkSGVkZXJhQWNjb3VudElEKGFjY291bnRJZCk7XG4gIH1cblxuICBwcml2YXRlIHZhbGlkYXRlQWNjb3VudChhY2NvdW50SUQ6IHN0cmluZyk6IHZvaWQge1xuICAgIGlmICghaXNWYWxpZEFkZHJlc3MoYWNjb3VudElEKSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignVW5zdXBwb3J0ZWQgYWNjb3VudCBhZGRyZXNzOiAnICsgYWNjb3VudElEKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHZhbGlkYXRlVG9rZW4odG9rZW5JZDogc3RyaW5nIHwgdW5kZWZpbmVkKTogdm9pZCB7XG4gICAgaWYgKHRva2VuSWQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignVW5zdXBwb3J0ZWQgdG9rZW4gSUQ6ICcgKyB0b2tlbklkKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuX3Rva2Vucy5pbmNsdWRlcyh0b2tlbklkKSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignUmVwZWF0ZWQgdG9rZW4gSUQ6ICcgKyB0b2tlbklkKTtcbiAgICB9IGVsc2UgaWYgKCFpc1ZhbGlkSGVkZXJhVG9rZW5JRCh0b2tlbklkKSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCB0b2tlbiBJRDogJyArIHRva2VuSWQpO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { BaseCoin as CoinConfig } from '@bitgo/statics';
|
|
2
|
+
import * as proto from '@hashgraph/proto';
|
|
3
|
+
import { Recipient } from './iface';
|
|
4
|
+
import { TransferBuilder } from './transferBuilder';
|
|
5
|
+
import { Transaction } from './transaction';
|
|
6
|
+
export declare class TokenTransferBuilder extends TransferBuilder {
|
|
7
|
+
private _tokenName;
|
|
8
|
+
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
9
|
+
/** @inheritdoc */
|
|
10
|
+
protected buildImplementation(): Promise<Transaction>;
|
|
11
|
+
private buildTokenTransferData;
|
|
12
|
+
/** @inheritdoc */
|
|
13
|
+
initBuilder(tx: Transaction): void;
|
|
14
|
+
/**
|
|
15
|
+
* Initialize the transfer specific data, getting the recipient account
|
|
16
|
+
* represented by the element with a positive amount on the transfer element.
|
|
17
|
+
* The negative amount represents the source account so it's ignored.
|
|
18
|
+
*
|
|
19
|
+
* @param {proto.IAccountAmount[]} transfers array of objects which contains accountID and transferred amount
|
|
20
|
+
*/
|
|
21
|
+
protected initTokenTransfers(tokenTransfers: proto.ITokenTransferList[]): void;
|
|
22
|
+
/** @inheritdoc */
|
|
23
|
+
send(recipient: Recipient): this;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=tokenTransferBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokenTransferBuilder.d.ts","sourceRoot":"","sources":["../../../../src/coin/hbar/tokenTransferBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAExD,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAE1C,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAY5C,qBAAa,oBAAqB,SAAQ,eAAe;IACvD,OAAO,CAAC,UAAU,CAAC;gBAEP,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC;IAK3D,OAAO,CAAC,sBAAsB;IA0B9B,kBAAkB;IAClB,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAQlC;;;;;;OAMG;IACH,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,KAAK,CAAC,kBAAkB,EAAE,GAAG,IAAI;IA2B9E,kBAAkB;IAClB,IAAI,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;CAejC"}
|