@bitgo/sdk-coin-sui 5.2.0 → 5.3.0
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 +6 -0
- package/dist/src/lib/iface.d.ts +9 -3
- package/dist/src/lib/iface.d.ts.map +1 -1
- package/dist/src/lib/iface.js +2 -1
- package/dist/src/lib/index.d.ts +2 -0
- package/dist/src/lib/index.d.ts.map +1 -1
- package/dist/src/lib/index.js +6 -2
- package/dist/src/lib/tokenTransferBuilder.d.ts +44 -0
- package/dist/src/lib/tokenTransferBuilder.d.ts.map +1 -0
- package/dist/src/lib/tokenTransferBuilder.js +182 -0
- package/dist/src/lib/tokenTransferTransaction.d.ts +52 -0
- package/dist/src/lib/tokenTransferTransaction.d.ts.map +1 -0
- package/dist/src/lib/tokenTransferTransaction.js +190 -0
- package/dist/src/lib/transaction.d.ts +2 -2
- package/dist/src/lib/transaction.d.ts.map +1 -1
- package/dist/src/lib/transaction.js +4 -1
- package/dist/src/lib/transactionBuilder.d.ts +2 -2
- package/dist/src/lib/transactionBuilder.d.ts.map +1 -1
- package/dist/src/lib/transactionBuilder.js +1 -1
- package/dist/src/lib/transactionBuilderFactory.d.ts +5 -2
- package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -1
- package/dist/src/lib/transactionBuilderFactory.js +6 -1
- package/dist/src/lib/utils.d.ts +2 -2
- package/dist/src/lib/utils.d.ts.map +1 -1
- package/dist/src/lib/utils.js +11 -2
- package/dist/src/suiToken.d.ts +1 -1
- package/dist/src/suiToken.js +2 -2
- package/package.json +7 -7
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,12 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [5.3.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-sui@5.2.0...@bitgo/sdk-coin-sui@5.3.0) (2024-07-24)
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
- **sdk-coin-sui:** add token transfer builder ([7909d47](https://github.com/BitGo/BitGoJS/commit/7909d47b2f30fa764ee19839954554eb2fbd8002))
|
|
11
|
+
|
|
6
12
|
# [5.2.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-sui@5.1.8...@bitgo/sdk-coin-sui@5.2.0) (2024-07-16)
|
|
7
13
|
|
|
8
14
|
### Bug Fixes
|
package/dist/src/lib/iface.d.ts
CHANGED
|
@@ -5,18 +5,20 @@ export declare enum SuiTransactionType {
|
|
|
5
5
|
Transfer = "Transfer",
|
|
6
6
|
AddStake = "AddStake",
|
|
7
7
|
WithdrawStake = "WithdrawStake",
|
|
8
|
-
CustomTx = "CustomTx"
|
|
8
|
+
CustomTx = "CustomTx",
|
|
9
|
+
TokenTransfer = "TokenTransfer"
|
|
9
10
|
}
|
|
10
11
|
export interface TransactionExplanation extends BaseTransactionExplanation {
|
|
11
12
|
type: BitGoTransactionType;
|
|
12
13
|
}
|
|
14
|
+
export declare type SuiProgrammableTransaction = TransferProgrammableTransaction | StakingProgrammableTransaction | UnstakingProgrammableTransaction | CustomProgrammableTransaction | TokenTransferProgrammableTransaction;
|
|
13
15
|
export interface TxData {
|
|
14
16
|
id?: string;
|
|
15
17
|
sender: SuiAddress;
|
|
16
18
|
expiration: TransactionExpiration;
|
|
17
19
|
gasData: GasData;
|
|
18
20
|
kind: {
|
|
19
|
-
ProgrammableTransaction:
|
|
21
|
+
ProgrammableTransaction: SuiProgrammableTransaction;
|
|
20
22
|
};
|
|
21
23
|
}
|
|
22
24
|
export declare type TransferProgrammableTransaction = ProgrammableTransaction | {
|
|
@@ -35,7 +37,11 @@ export declare type CustomProgrammableTransaction = ProgrammableTransaction | {
|
|
|
35
37
|
inputs: CallArg[] | TransactionBlockInput[];
|
|
36
38
|
transactions: TransactionType[];
|
|
37
39
|
};
|
|
38
|
-
export
|
|
40
|
+
export declare type TokenTransferProgrammableTransaction = ProgrammableTransaction | {
|
|
41
|
+
inputs: CallArg[] | TransactionBlockInput[];
|
|
42
|
+
transactions: TransactionType[];
|
|
43
|
+
};
|
|
44
|
+
export interface SuiTransaction<T = SuiProgrammableTransaction> {
|
|
39
45
|
id?: string;
|
|
40
46
|
type: SuiTransactionType;
|
|
41
47
|
sender: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,IAAI,0BAA0B,EACpD,eAAe,IAAI,oBAAoB,EACxC,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,OAAO,EACP,uBAAuB,EACvB,OAAO,EACP,UAAU,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE7E,oBAAY,kBAAkB;IAC5B,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,aAAa,kBAAkB;IAC/B,QAAQ,aAAa;
|
|
1
|
+
{"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,IAAI,0BAA0B,EACpD,eAAe,IAAI,oBAAoB,EACxC,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,OAAO,EACP,uBAAuB,EACvB,OAAO,EACP,UAAU,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE7E,oBAAY,kBAAkB;IAC5B,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,aAAa,kBAAkB;IAC/B,QAAQ,aAAa;IACrB,aAAa,kBAAkB;CAChC;AAED,MAAM,WAAW,sBAAuB,SAAQ,0BAA0B;IACxE,IAAI,EAAE,oBAAoB,CAAC;CAC5B;AAED,oBAAY,0BAA0B,GAClC,+BAA+B,GAC/B,8BAA8B,GAC9B,gCAAgC,GAChC,6BAA6B,GAC7B,oCAAoC,CAAC;AAEzC,MAAM,WAAW,MAAM;IACrB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE,qBAAqB,CAAC;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE;QACJ,uBAAuB,EAAE,0BAA0B,CAAC;KACrD,CAAC;CACH;AAED,oBAAY,+BAA+B,GACvC,uBAAuB,GACvB;IACE,MAAM,EAAE,OAAO,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAC5C,YAAY,EAAE,eAAe,EAAE,CAAC;CACjC,CAAC;AAEN,oBAAY,8BAA8B,GACtC,uBAAuB,GACvB;IACE,MAAM,EAAE,OAAO,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAC5C,YAAY,EAAE,eAAe,EAAE,CAAC;CACjC,CAAC;AAEN,oBAAY,gCAAgC,GACxC,uBAAuB,GACvB;IACE,MAAM,EAAE,OAAO,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAC5C,YAAY,EAAE,eAAe,EAAE,CAAC;CACjC,CAAC;AAEN,oBAAY,6BAA6B,GACrC,uBAAuB,GACvB;IACE,MAAM,EAAE,OAAO,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAC5C,YAAY,EAAE,eAAe,EAAE,CAAC;CACjC,CAAC;AAEN,oBAAY,oCAAoC,GAC5C,uBAAuB,GACvB;IACE,MAAM,EAAE,OAAO,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAC5C,YAAY,EAAE,eAAe,EAAE,CAAC;CACjC,CAAC;AAEN,MAAM,WAAW,cAAc,CAAC,CAAC,GAAG,0BAA0B;IAC5D,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,kBAAkB,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,CAAC,CAAC;IACN,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,UAAU,CAAC;CAC9B;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,YAAY,CAAC;CACzB;AAED;;GAEG;AACH,oBAAY,WAAW;IACrB;;;;OAIG;IACH,eAAe,sBAAsB;IACrC;;;;OAIG;IACH,oBAAoB,2BAA2B;IAC/C;;;;OAIG;IACH,gBAAgB,0BAA0B;IAC1C;;;;OAIG;IACH,cAAc,gCAAgC;CAC/C"}
|
package/dist/src/lib/iface.js
CHANGED
|
@@ -7,6 +7,7 @@ var SuiTransactionType;
|
|
|
7
7
|
SuiTransactionType["AddStake"] = "AddStake";
|
|
8
8
|
SuiTransactionType["WithdrawStake"] = "WithdrawStake";
|
|
9
9
|
SuiTransactionType["CustomTx"] = "CustomTx";
|
|
10
|
+
SuiTransactionType["TokenTransfer"] = "TokenTransfer";
|
|
10
11
|
})(SuiTransactionType = exports.SuiTransactionType || (exports.SuiTransactionType = {}));
|
|
11
12
|
/**
|
|
12
13
|
* Method names for the transaction method. Names change based on the type of transaction e.g 'request_add_delegation_mul_coin' for the staking transaction
|
|
@@ -38,4 +39,4 @@ var MethodNames;
|
|
|
38
39
|
*/
|
|
39
40
|
MethodNames["PublicTransfer"] = "::transfer::public_transfer";
|
|
40
41
|
})(MethodNames = exports.MethodNames || (exports.MethodNames = {}));
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQWNBLElBQVksa0JBTVg7QUFORCxXQUFZLGtCQUFrQjtJQUM1QiwyQ0FBcUIsQ0FBQTtJQUNyQiwyQ0FBcUIsQ0FBQTtJQUNyQixxREFBK0IsQ0FBQTtJQUMvQiwyQ0FBcUIsQ0FBQTtJQUNyQixxREFBK0IsQ0FBQTtBQUNqQyxDQUFDLEVBTlcsa0JBQWtCLEdBQWxCLDBCQUFrQixLQUFsQiwwQkFBa0IsUUFNN0I7QUE0RUQ7O0dBRUc7QUFDSCxJQUFZLFdBeUJYO0FBekJELFdBQVksV0FBVztJQUNyQjs7OztPQUlHO0lBQ0gsb0RBQXFDLENBQUE7SUFDckM7Ozs7T0FJRztJQUNILDhEQUErQyxDQUFBO0lBQy9DOzs7O09BSUc7SUFDSCx5REFBMEMsQ0FBQTtJQUMxQzs7OztPQUlHO0lBQ0gsNkRBQThDLENBQUE7QUFDaEQsQ0FBQyxFQXpCVyxXQUFXLEdBQVgsbUJBQVcsS0FBWCxtQkFBVyxRQXlCdEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIGFzIEJhc2VUcmFuc2FjdGlvbkV4cGxhbmF0aW9uLFxuICBUcmFuc2FjdGlvblR5cGUgYXMgQml0R29UcmFuc2FjdGlvblR5cGUsXG59IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5pbXBvcnQge1xuICBHYXNEYXRhLFxuICBQcm9ncmFtbWFibGVUcmFuc2FjdGlvbixcbiAgQ2FsbEFyZyxcbiAgU3VpQWRkcmVzcyxcbiAgU3VpT2JqZWN0UmVmLFxuICBUcmFuc2FjdGlvbkV4cGlyYXRpb24sXG59IGZyb20gJy4vbXlzdGVubGFiL3R5cGVzJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uVHlwZSwgVHJhbnNhY3Rpb25CbG9ja0lucHV0IH0gZnJvbSAnLi9teXN0ZW5sYWIvYnVpbGRlcic7XG5cbmV4cG9ydCBlbnVtIFN1aVRyYW5zYWN0aW9uVHlwZSB7XG4gIFRyYW5zZmVyID0gJ1RyYW5zZmVyJyxcbiAgQWRkU3Rha2UgPSAnQWRkU3Rha2UnLFxuICBXaXRoZHJhd1N0YWtlID0gJ1dpdGhkcmF3U3Rha2UnLFxuICBDdXN0b21UeCA9ICdDdXN0b21UeCcsXG4gIFRva2VuVHJhbnNmZXIgPSAnVG9rZW5UcmFuc2ZlcicsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIHtcbiAgdHlwZTogQml0R29UcmFuc2FjdGlvblR5cGU7XG59XG5cbmV4cG9ydCB0eXBlIFN1aVByb2dyYW1tYWJsZVRyYW5zYWN0aW9uID1cbiAgfCBUcmFuc2ZlclByb2dyYW1tYWJsZVRyYW5zYWN0aW9uXG4gIHwgU3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uXG4gIHwgVW5zdGFraW5nUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb25cbiAgfCBDdXN0b21Qcm9ncmFtbWFibGVUcmFuc2FjdGlvblxuICB8IFRva2VuVHJhbnNmZXJQcm9ncmFtbWFibGVUcmFuc2FjdGlvbjtcblxuZXhwb3J0IGludGVyZmFjZSBUeERhdGEge1xuICBpZD86IHN0cmluZztcbiAgc2VuZGVyOiBTdWlBZGRyZXNzO1xuICBleHBpcmF0aW9uOiBUcmFuc2FjdGlvbkV4cGlyYXRpb247XG4gIGdhc0RhdGE6IEdhc0RhdGE7XG4gIGtpbmQ6IHtcbiAgICBQcm9ncmFtbWFibGVUcmFuc2FjdGlvbjogU3VpUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb247XG4gIH07XG59XG5cbmV4cG9ydCB0eXBlIFRyYW5zZmVyUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24gPVxuICB8IFByb2dyYW1tYWJsZVRyYW5zYWN0aW9uXG4gIHwge1xuICAgICAgaW5wdXRzOiBDYWxsQXJnW10gfCBUcmFuc2FjdGlvbkJsb2NrSW5wdXRbXTtcbiAgICAgIHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25UeXBlW107XG4gICAgfTtcblxuZXhwb3J0IHR5cGUgU3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uID1cbiAgfCBQcm9ncmFtbWFibGVUcmFuc2FjdGlvblxuICB8IHtcbiAgICAgIGlucHV0czogQ2FsbEFyZ1tdIHwgVHJhbnNhY3Rpb25CbG9ja0lucHV0W107XG4gICAgICB0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uVHlwZVtdO1xuICAgIH07XG5cbmV4cG9ydCB0eXBlIFVuc3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uID1cbiAgfCBQcm9ncmFtbWFibGVUcmFuc2FjdGlvblxuICB8IHtcbiAgICAgIGlucHV0czogQ2FsbEFyZ1tdIHwgVHJhbnNhY3Rpb25CbG9ja0lucHV0W107XG4gICAgICB0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uVHlwZVtdO1xuICAgIH07XG5cbmV4cG9ydCB0eXBlIEN1c3RvbVByb2dyYW1tYWJsZVRyYW5zYWN0aW9uID1cbiAgfCBQcm9ncmFtbWFibGVUcmFuc2FjdGlvblxuICB8IHtcbiAgICAgIGlucHV0czogQ2FsbEFyZ1tdIHwgVHJhbnNhY3Rpb25CbG9ja0lucHV0W107XG4gICAgICB0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uVHlwZVtdO1xuICAgIH07XG5cbmV4cG9ydCB0eXBlIFRva2VuVHJhbnNmZXJQcm9ncmFtbWFibGVUcmFuc2FjdGlvbiA9XG4gIHwgUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb25cbiAgfCB7XG4gICAgICBpbnB1dHM6IENhbGxBcmdbXSB8IFRyYW5zYWN0aW9uQmxvY2tJbnB1dFtdO1xuICAgICAgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvblR5cGVbXTtcbiAgICB9O1xuXG5leHBvcnQgaW50ZXJmYWNlIFN1aVRyYW5zYWN0aW9uPFQgPSBTdWlQcm9ncmFtbWFibGVUcmFuc2FjdGlvbj4ge1xuICBpZD86IHN0cmluZztcbiAgdHlwZTogU3VpVHJhbnNhY3Rpb25UeXBlO1xuICBzZW5kZXI6IHN0cmluZztcbiAgdHg6IFQ7XG4gIGdhc0RhdGE6IEdhc0RhdGE7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVxdWVzdEFkZFN0YWtlIHtcbiAgYW1vdW50OiBudW1iZXI7XG4gIHZhbGlkYXRvckFkZHJlc3M6IFN1aUFkZHJlc3M7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVxdWVzdFdpdGhkcmF3U3Rha2VkU3VpIHtcbiAgYW1vdW50PzogbnVtYmVyO1xuICBzdGFrZWRTdWk6IFN1aU9iamVjdFJlZjtcbn1cblxuLyoqXG4gKiBNZXRob2QgbmFtZXMgZm9yIHRoZSB0cmFuc2FjdGlvbiBtZXRob2QuIE5hbWVzIGNoYW5nZSBiYXNlZCBvbiB0aGUgdHlwZSBvZiB0cmFuc2FjdGlvbiBlLmcgJ3JlcXVlc3RfYWRkX2RlbGVnYXRpb25fbXVsX2NvaW4nIGZvciB0aGUgc3Rha2luZyB0cmFuc2FjdGlvblxuICovXG5leHBvcnQgZW51bSBNZXRob2ROYW1lcyB7XG4gIC8qKlxuICAgKiBBZGQgc3Rha2UgdG8gYSB2YWxpZGF0b3IncyBzdGFraW5nIHBvb2wuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL015c3RlbkxhYnMvc3VpL2Jsb2IvbWFpbi9jcmF0ZXMvc3VpLWZyYW1ld29yay9kb2NzL3N1aV9zeXN0ZW0ubWQjZnVuY3Rpb24tcmVxdWVzdF9hZGRfc3Rha2VcbiAgICovXG4gIFJlcXVlc3RBZGRTdGFrZSA9ICdyZXF1ZXN0X2FkZF9zdGFrZScsXG4gIC8qKlxuICAgKiBXaXRoZHJhdyBzb21lIHBvcnRpb24gb2YgYSBzdGFrZSBmcm9tIGEgdmFsaWRhdG9yJ3Mgc3Rha2luZyBwb29sLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9NeXN0ZW5MYWJzL3N1aS9ibG9iL21haW4vY3JhdGVzL3N1aS1mcmFtZXdvcmsvZG9jcy9zdWlfc3lzdGVtLm1kI2Z1bmN0aW9uLXJlcXVlc3Rfd2l0aGRyYXdfc3Rha2VcbiAgICovXG4gIFJlcXVlc3RXaXRoZHJhd1N0YWtlID0gJ3JlcXVlc3Rfd2l0aGRyYXdfc3Rha2UnLFxuICAvKipcbiAgICogU3BsaXQgU3Rha2VkU3VpIHNlbGYgdG8gdHdvIHBhcnRzLCBvbmUgd2l0aCBwcmluY2lwYWwgc3BsaXRfYW1vdW50LCBhbmQgdGhlIHJlbWFpbmluZyBwcmluY2lwYWwgaXMgbGVmdCBpbiBzZWxmLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9NeXN0ZW5MYWJzL3N1aS9ibG9iL21haW4vY3JhdGVzL3N1aS1mcmFtZXdvcmsvZG9jcy9zdGFraW5nX3Bvb2wubWQjMHgzX3N0YWtpbmdfcG9vbF9zcGxpdFxuICAgKi9cbiAgU3Rha2luZ1Bvb2xTcGxpdCA9ICc6OnN0YWtpbmdfcG9vbDo6c3BsaXQnLFxuICAvKipcbiAgICogVHJhbnNmZXIgb3duZXJzaGlwIG9mIG9iaiB0byByZWNpcGllbnQuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL015c3RlbkxhYnMvc3VpL2Jsb2IvbWFpbi9jcmF0ZXMvc3VpLWZyYW1ld29yay9kb2NzL3RyYW5zZmVyLm1kI2Z1bmN0aW9uLXB1YmxpY190cmFuc2ZlclxuICAgKi9cbiAgUHVibGljVHJhbnNmZXIgPSAnOjp0cmFuc2Zlcjo6cHVibGljX3RyYW5zZmVyJyxcbn1cbiJdfQ==
|
package/dist/src/lib/index.d.ts
CHANGED
|
@@ -11,6 +11,8 @@ export { Transaction } from './transaction';
|
|
|
11
11
|
export { TransferTransaction } from './transferTransaction';
|
|
12
12
|
export { TransactionBuilder } from './transactionBuilder';
|
|
13
13
|
export { TransferBuilder } from './transferBuilder';
|
|
14
|
+
export { TokenTransferTransaction } from './tokenTransferTransaction';
|
|
15
|
+
export { TokenTransferBuilder } from './tokenTransferBuilder';
|
|
14
16
|
export { TransactionBuilderFactory } from './transactionBuilderFactory';
|
|
15
17
|
export { Interface, Utils };
|
|
16
18
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,SAAS,MAAM,SAAS,CAAC;AAErC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,SAAS,MAAM,SAAS,CAAC;AAErC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC"}
|
package/dist/src/lib/index.js
CHANGED
|
@@ -23,7 +23,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.Utils = exports.Interface = exports.TransactionBuilderFactory = exports.TransferBuilder = exports.TransactionBuilder = exports.TransferTransaction = exports.Transaction = exports.CustomTransactionBuilder = exports.CustomTransaction = exports.UnstakingTransaction = exports.UnstakingBuilder = exports.StakingTransaction = exports.StakingBuilder = exports.KeyPair = void 0;
|
|
26
|
+
exports.Utils = exports.Interface = exports.TransactionBuilderFactory = exports.TokenTransferBuilder = exports.TokenTransferTransaction = exports.TransferBuilder = exports.TransactionBuilder = exports.TransferTransaction = exports.Transaction = exports.CustomTransactionBuilder = exports.CustomTransaction = exports.UnstakingTransaction = exports.UnstakingBuilder = exports.StakingTransaction = exports.StakingBuilder = exports.KeyPair = void 0;
|
|
27
27
|
const Utils = __importStar(require("./utils"));
|
|
28
28
|
exports.Utils = Utils;
|
|
29
29
|
const Interface = __importStar(require("./iface"));
|
|
@@ -50,6 +50,10 @@ var transactionBuilder_1 = require("./transactionBuilder");
|
|
|
50
50
|
Object.defineProperty(exports, "TransactionBuilder", { enumerable: true, get: function () { return transactionBuilder_1.TransactionBuilder; } });
|
|
51
51
|
var transferBuilder_1 = require("./transferBuilder");
|
|
52
52
|
Object.defineProperty(exports, "TransferBuilder", { enumerable: true, get: function () { return transferBuilder_1.TransferBuilder; } });
|
|
53
|
+
var tokenTransferTransaction_1 = require("./tokenTransferTransaction");
|
|
54
|
+
Object.defineProperty(exports, "TokenTransferTransaction", { enumerable: true, get: function () { return tokenTransferTransaction_1.TokenTransferTransaction; } });
|
|
55
|
+
var tokenTransferBuilder_1 = require("./tokenTransferBuilder");
|
|
56
|
+
Object.defineProperty(exports, "TokenTransferBuilder", { enumerable: true, get: function () { return tokenTransferBuilder_1.TokenTransferBuilder; } });
|
|
53
57
|
var transactionBuilderFactory_1 = require("./transactionBuilderFactory");
|
|
54
58
|
Object.defineProperty(exports, "TransactionBuilderFactory", { enumerable: true, get: function () { return transactionBuilderFactory_1.TransactionBuilderFactory; } });
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsK0NBQWlDO0FBaUJiLHNCQUFLO0FBaEJ6QixtREFBcUM7QUFnQjVCLDhCQUFTO0FBZGxCLHFDQUFvQztBQUEzQixrR0FBQSxPQUFPLE9BQUE7QUFDaEIsbURBQWtEO0FBQXpDLGdIQUFBLGNBQWMsT0FBQTtBQUN2QiwyREFBMEQ7QUFBakQsd0hBQUEsa0JBQWtCLE9BQUE7QUFDM0IsdURBQXNEO0FBQTdDLG9IQUFBLGdCQUFnQixPQUFBO0FBQ3pCLCtEQUE4RDtBQUFyRCw0SEFBQSxvQkFBb0IsT0FBQTtBQUM3Qix5REFBd0Q7QUFBL0Msc0hBQUEsaUJBQWlCLE9BQUE7QUFDMUIsdUVBQXNFO0FBQTdELG9JQUFBLHdCQUF3QixPQUFBO0FBQ2pDLDZDQUE0QztBQUFuQywwR0FBQSxXQUFXLE9BQUE7QUFDcEIsNkRBQTREO0FBQW5ELDBIQUFBLG1CQUFtQixPQUFBO0FBQzVCLDJEQUEwRDtBQUFqRCx3SEFBQSxrQkFBa0IsT0FBQTtBQUMzQixxREFBb0Q7QUFBM0Msa0hBQUEsZUFBZSxPQUFBO0FBQ3hCLHVFQUFzRTtBQUE3RCxvSUFBQSx3QkFBd0IsT0FBQTtBQUNqQywrREFBOEQ7QUFBckQsNEhBQUEsb0JBQW9CLE9BQUE7QUFDN0IseUVBQXdFO0FBQS9ELHNJQUFBLHlCQUF5QixPQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgVXRpbHMgZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgKiBhcyBJbnRlcmZhY2UgZnJvbSAnLi9pZmFjZSc7XG5cbmV4cG9ydCB7IEtleVBhaXIgfSBmcm9tICcuL2tleVBhaXInO1xuZXhwb3J0IHsgU3Rha2luZ0J1aWxkZXIgfSBmcm9tICcuL3N0YWtpbmdCdWlsZGVyJztcbmV4cG9ydCB7IFN0YWtpbmdUcmFuc2FjdGlvbiB9IGZyb20gJy4vc3Rha2luZ1RyYW5zYWN0aW9uJztcbmV4cG9ydCB7IFVuc3Rha2luZ0J1aWxkZXIgfSBmcm9tICcuL3Vuc3Rha2luZ0J1aWxkZXInO1xuZXhwb3J0IHsgVW5zdGFraW5nVHJhbnNhY3Rpb24gfSBmcm9tICcuL3Vuc3Rha2luZ1RyYW5zYWN0aW9uJztcbmV4cG9ydCB7IEN1c3RvbVRyYW5zYWN0aW9uIH0gZnJvbSAnLi9jdXN0b21UcmFuc2FjdGlvbic7XG5leHBvcnQgeyBDdXN0b21UcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL2N1c3RvbVRyYW5zYWN0aW9uQnVpbGRlcic7XG5leHBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuZXhwb3J0IHsgVHJhbnNmZXJUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNmZXJUcmFuc2FjdGlvbic7XG5leHBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlcic7XG5leHBvcnQgeyBUcmFuc2ZlckJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zZmVyQnVpbGRlcic7XG5leHBvcnQgeyBUb2tlblRyYW5zZmVyVHJhbnNhY3Rpb24gfSBmcm9tICcuL3Rva2VuVHJhbnNmZXJUcmFuc2FjdGlvbic7XG5leHBvcnQgeyBUb2tlblRyYW5zZmVyQnVpbGRlciB9IGZyb20gJy4vdG9rZW5UcmFuc2ZlckJ1aWxkZXInO1xuZXhwb3J0IHsgVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSc7XG5leHBvcnQgeyBJbnRlcmZhY2UsIFV0aWxzIH07XG4iXX0=
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { TransactionType, Recipient, BaseKey } from '@bitgo/sdk-core';
|
|
2
|
+
import { BaseCoin as CoinConfig } from '@bitgo/statics';
|
|
3
|
+
import { SuiTransaction, TokenTransferProgrammableTransaction } from './iface';
|
|
4
|
+
import { Transaction } from './transaction';
|
|
5
|
+
import { TransactionBuilder } from './transactionBuilder';
|
|
6
|
+
import { TokenTransferTransaction } from './tokenTransferTransaction';
|
|
7
|
+
import { SuiObjectRef } from './mystenlab/types';
|
|
8
|
+
export declare class TokenTransferBuilder extends TransactionBuilder<TokenTransferProgrammableTransaction> {
|
|
9
|
+
protected _recipients: Recipient[];
|
|
10
|
+
protected _inputObjects: SuiObjectRef[];
|
|
11
|
+
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
12
|
+
protected get transactionType(): TransactionType;
|
|
13
|
+
/** @inheritdoc */
|
|
14
|
+
validateTransaction(transaction: TokenTransferTransaction): void;
|
|
15
|
+
/** @inheritdoc */
|
|
16
|
+
sign(key: BaseKey): void;
|
|
17
|
+
/** @inheritdoc */
|
|
18
|
+
protected fromImplementation(rawTransaction: string): Transaction<TokenTransferProgrammableTransaction>;
|
|
19
|
+
/** @inheritdoc */
|
|
20
|
+
protected buildImplementation(): Promise<Transaction<TokenTransferProgrammableTransaction>>;
|
|
21
|
+
/** @inheritdoc */
|
|
22
|
+
initBuilder(tx: TokenTransferTransaction): void;
|
|
23
|
+
send(recipients: Recipient[]): this;
|
|
24
|
+
inputObjects(inputObject: SuiObjectRef[]): this;
|
|
25
|
+
/**
|
|
26
|
+
* Validates all fields are defined correctly
|
|
27
|
+
*/
|
|
28
|
+
private validateTransactionFields;
|
|
29
|
+
private validateInputObjects;
|
|
30
|
+
/**
|
|
31
|
+
* Build SuiTransaction
|
|
32
|
+
*
|
|
33
|
+
* @return {SuiTransaction<TokenTransferProgrammableTransaction>}
|
|
34
|
+
* @protected
|
|
35
|
+
*/
|
|
36
|
+
protected buildSuiTransaction(): SuiTransaction<TokenTransferProgrammableTransaction>;
|
|
37
|
+
/**
|
|
38
|
+
* Extracts the objects that were provided as inputs while building the transaction
|
|
39
|
+
* @param txData
|
|
40
|
+
* @returns {SuiObjectRef[]} Objects that are inputs for the transaction
|
|
41
|
+
*/
|
|
42
|
+
private getInputObjectsFromTx;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=tokenTransferBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokenTransferBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/tokenTransferBuilder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,SAAS,EAAyB,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC7F,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAsB,oCAAoC,EAAE,MAAM,SAAS,CAAC;AACnG,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AASjD,qBAAa,oBAAqB,SAAQ,kBAAkB,CAAC,oCAAoC,CAAC;IAChG,SAAS,CAAC,WAAW,EAAE,SAAS,EAAE,CAAC;IACnC,SAAS,CAAC,aAAa,EAAE,YAAY,EAAE,CAAC;gBAC5B,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,kBAAkB;IAClB,mBAAmB,CAAC,WAAW,EAAE,wBAAwB,GAAG,IAAI;IAOhE,kBAAkB;IAClB,IAAI,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAKxB,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW,CAAC,oCAAoC,CAAC;IAQvG,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC,oCAAoC,CAAC,CAAC;IAgBjG,kBAAkB;IAClB,WAAW,CAAC,EAAE,EAAE,wBAAwB,GAAG,IAAI;IAgB/C,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,GAAG,IAAI;IAMnC,YAAY,CAAC,WAAW,EAAE,YAAY,EAAE,GAAG,IAAI;IAM/C;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAYjC,OAAO,CAAC,oBAAoB;IAU5B;;;;;OAKG;IACH,SAAS,CAAC,mBAAmB,IAAI,cAAc,CAAC,oCAAoC,CAAC;IAiCrF;;;;OAIG;IACH,OAAO,CAAC,qBAAqB;CAwB9B"}
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
exports.TokenTransferBuilder = void 0;
|
|
30
|
+
const assert_1 = __importDefault(require("assert"));
|
|
31
|
+
const sdk_core_1 = require("@bitgo/sdk-core");
|
|
32
|
+
const iface_1 = require("./iface");
|
|
33
|
+
const transactionBuilder_1 = require("./transactionBuilder");
|
|
34
|
+
const tokenTransferTransaction_1 = require("./tokenTransferTransaction");
|
|
35
|
+
const utils_1 = __importStar(require("./utils"));
|
|
36
|
+
const builder_1 = require("./mystenlab/builder");
|
|
37
|
+
class TokenTransferBuilder extends transactionBuilder_1.TransactionBuilder {
|
|
38
|
+
constructor(_coinConfig) {
|
|
39
|
+
super(_coinConfig);
|
|
40
|
+
this._transaction = new tokenTransferTransaction_1.TokenTransferTransaction(_coinConfig);
|
|
41
|
+
}
|
|
42
|
+
get transactionType() {
|
|
43
|
+
return sdk_core_1.TransactionType.Send;
|
|
44
|
+
}
|
|
45
|
+
/** @inheritdoc */
|
|
46
|
+
validateTransaction(transaction) {
|
|
47
|
+
if (!transaction.suiTransaction) {
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
this.validateTransactionFields();
|
|
51
|
+
}
|
|
52
|
+
/** @inheritdoc */
|
|
53
|
+
sign(key) {
|
|
54
|
+
this.transaction.setSuiTransaction(this.buildSuiTransaction());
|
|
55
|
+
super.sign(key);
|
|
56
|
+
}
|
|
57
|
+
/** @inheritdoc */
|
|
58
|
+
fromImplementation(rawTransaction) {
|
|
59
|
+
const tx = new tokenTransferTransaction_1.TokenTransferTransaction(this._coinConfig);
|
|
60
|
+
this.validateRawTransaction(rawTransaction);
|
|
61
|
+
tx.fromRawTransaction(rawTransaction);
|
|
62
|
+
this.initBuilder(tx);
|
|
63
|
+
return this.transaction;
|
|
64
|
+
}
|
|
65
|
+
/** @inheritdoc */
|
|
66
|
+
async buildImplementation() {
|
|
67
|
+
this.transaction.setSuiTransaction(this.buildSuiTransaction());
|
|
68
|
+
this.transaction.transactionType(this.transactionType);
|
|
69
|
+
if (this._signer) {
|
|
70
|
+
this.transaction.sign(this._signer);
|
|
71
|
+
}
|
|
72
|
+
this._signatures.forEach((signature) => {
|
|
73
|
+
this.transaction.addSignature(signature.publicKey, signature.signature);
|
|
74
|
+
});
|
|
75
|
+
this.transaction.loadInputsAndOutputs();
|
|
76
|
+
return this.transaction;
|
|
77
|
+
}
|
|
78
|
+
/** @inheritdoc */
|
|
79
|
+
initBuilder(tx) {
|
|
80
|
+
this._transaction = tx;
|
|
81
|
+
if (tx.signature && tx.signature.length > 0) {
|
|
82
|
+
this._signatures = [tx.suiSignature];
|
|
83
|
+
}
|
|
84
|
+
const txData = tx.toJson();
|
|
85
|
+
this.type(iface_1.SuiTransactionType.TokenTransfer);
|
|
86
|
+
this.sender(txData.sender);
|
|
87
|
+
this.gasData(txData.gasData);
|
|
88
|
+
const recipients = utils_1.default.getRecipients(tx.suiTransaction);
|
|
89
|
+
this.send(recipients);
|
|
90
|
+
const inputObjects = this.getInputObjectsFromTx(tx.suiTransaction.tx);
|
|
91
|
+
this.inputObjects(inputObjects);
|
|
92
|
+
}
|
|
93
|
+
send(recipients) {
|
|
94
|
+
this.validateRecipients(recipients);
|
|
95
|
+
this._recipients = recipients;
|
|
96
|
+
return this;
|
|
97
|
+
}
|
|
98
|
+
inputObjects(inputObject) {
|
|
99
|
+
this.validateInputObjects(inputObject);
|
|
100
|
+
this._inputObjects = inputObject;
|
|
101
|
+
return this;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Validates all fields are defined correctly
|
|
105
|
+
*/
|
|
106
|
+
validateTransactionFields() {
|
|
107
|
+
(0, assert_1.default)(this._type, new sdk_core_1.BuildTransactionError('type is required before building'));
|
|
108
|
+
(0, assert_1.default)(this._sender, new sdk_core_1.BuildTransactionError('sender is required before building'));
|
|
109
|
+
(0, assert_1.default)(this._recipients && this._recipients.length > 0, new sdk_core_1.BuildTransactionError('at least one recipient is required before building'));
|
|
110
|
+
(0, assert_1.default)(this._gasData, new sdk_core_1.BuildTransactionError('gasData is required before building'));
|
|
111
|
+
this.validateGasData(this._gasData);
|
|
112
|
+
this.validateInputObjects(this._inputObjects);
|
|
113
|
+
}
|
|
114
|
+
validateInputObjects(inputObjects) {
|
|
115
|
+
(0, assert_1.default)(inputObjects && inputObjects.length > 0, new sdk_core_1.BuildTransactionError('input objects required before building'));
|
|
116
|
+
inputObjects.forEach((inputObject) => {
|
|
117
|
+
this.validateSuiObjectRef(inputObject, 'input object');
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Build SuiTransaction
|
|
122
|
+
*
|
|
123
|
+
* @return {SuiTransaction<TokenTransferProgrammableTransaction>}
|
|
124
|
+
* @protected
|
|
125
|
+
*/
|
|
126
|
+
buildSuiTransaction() {
|
|
127
|
+
this.validateTransactionFields();
|
|
128
|
+
const programmableTxBuilder = new builder_1.TransactionBlock();
|
|
129
|
+
const inputObjects = this._inputObjects.map((object) => programmableTxBuilder.object(builder_1.Inputs.ObjectRef(object)));
|
|
130
|
+
const mergedObject = inputObjects.shift();
|
|
131
|
+
if (inputObjects.length > 0) {
|
|
132
|
+
programmableTxBuilder.mergeCoins(mergedObject, inputObjects);
|
|
133
|
+
}
|
|
134
|
+
this._recipients.forEach((recipient) => {
|
|
135
|
+
const splitObject = programmableTxBuilder.splitCoins(mergedObject, [
|
|
136
|
+
programmableTxBuilder.pure(Number(recipient.amount)),
|
|
137
|
+
]);
|
|
138
|
+
programmableTxBuilder.transferObjects([splitObject], programmableTxBuilder.object(recipient.address));
|
|
139
|
+
});
|
|
140
|
+
const txData = programmableTxBuilder.blockData;
|
|
141
|
+
return {
|
|
142
|
+
type: this._type,
|
|
143
|
+
sender: this._sender,
|
|
144
|
+
tx: {
|
|
145
|
+
inputs: [...txData.inputs],
|
|
146
|
+
transactions: [...txData.transactions],
|
|
147
|
+
},
|
|
148
|
+
gasData: {
|
|
149
|
+
...this._gasData,
|
|
150
|
+
},
|
|
151
|
+
};
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Extracts the objects that were provided as inputs while building the transaction
|
|
155
|
+
* @param txData
|
|
156
|
+
* @returns {SuiObjectRef[]} Objects that are inputs for the transaction
|
|
157
|
+
*/
|
|
158
|
+
getInputObjectsFromTx(tx) {
|
|
159
|
+
const inputs = tx.inputs;
|
|
160
|
+
const transaction = tx.transactions[0];
|
|
161
|
+
let args = [];
|
|
162
|
+
if (transaction.kind === 'MergeCoins') {
|
|
163
|
+
const { destination, sources } = transaction;
|
|
164
|
+
args = [destination, ...sources];
|
|
165
|
+
}
|
|
166
|
+
else if (transaction.kind === 'SplitCoins') {
|
|
167
|
+
args = [transaction.coin];
|
|
168
|
+
}
|
|
169
|
+
const inputObjects = [];
|
|
170
|
+
args.forEach((arg) => {
|
|
171
|
+
if (arg.kind === 'Input') {
|
|
172
|
+
const input = inputs[arg.index];
|
|
173
|
+
if ('Object' in input && (0, utils_1.isImmOrOwnedObj)(input.Object)) {
|
|
174
|
+
inputObjects.push(input.Object.ImmOrOwned);
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
});
|
|
178
|
+
return inputObjects;
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
exports.TokenTransferBuilder = TokenTransferBuilder;
|
|
182
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5UcmFuc2ZlckJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3Rva2VuVHJhbnNmZXJCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsb0RBQTRCO0FBQzVCLDhDQUE2RjtBQUU3RixtQ0FBbUc7QUFFbkcsNkRBQTBEO0FBQzFELHlFQUFzRTtBQUV0RSxpREFBaUQ7QUFDakQsaURBSzZCO0FBRTdCLE1BQWEsb0JBQXFCLFNBQVEsdUNBQXdEO0lBR2hHLFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ25CLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxtREFBd0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRUQsSUFBYyxlQUFlO1FBQzNCLE9BQU8sMEJBQWUsQ0FBQyxJQUFJLENBQUM7SUFDOUIsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixtQkFBbUIsQ0FBQyxXQUFxQztRQUN2RCxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRTtZQUMvQixPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLElBQUksQ0FBQyxHQUFZO1FBQ2YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDO1FBQy9ELEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbEIsQ0FBQztJQUVELGtCQUFrQjtJQUNSLGtCQUFrQixDQUFDLGNBQXNCO1FBQ2pELE1BQU0sRUFBRSxHQUFHLElBQUksbURBQXdCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzFELElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUM1QyxFQUFF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QUFJLFdBQVcsQ0FBQyxJQUFJLEtBQUssWUFBWSxFQUFFO1lBQzVDLElBQUksR0FBRyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUMzQjtRQUVELE1BQU0sWUFBWSxHQUFtQixFQUFFLENBQUM7UUFDeEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ25CLElBQUksR0FBRyxDQUFDLElBQUksS0FBSyxPQUFPLEVBQUU7Z0JBQ3hCLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ2hDLElBQUksUUFBUSxJQUFJLEtBQUssSUFBSSxJQUFBLHVCQUFlLEVBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFO29CQUN0RCxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7aUJBQzVDO2FBQ0Y7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUM7Q0FDRjtBQTlLRCxvREE4S0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblR5cGUsIFJlY2lwaWVudCwgQnVpbGRUcmFuc2FjdGlvbkVycm9yLCBCYXNlS2V5IH0gZnJvbSAnQGJpdGdvL3Nkay1jb3JlJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5pbXBvcnQgeyBTdWlUcmFuc2FjdGlvbiwgU3VpVHJhbnNhY3Rpb25UeXBlLCBUb2tlblRyYW5zZmVyUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24gfSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlcic7XG5pbXBvcnQgeyBUb2tlblRyYW5zZmVyVHJhbnNhY3Rpb24gfSBmcm9tICcuL3Rva2VuVHJhbnNmZXJUcmFuc2FjdGlvbic7XG5pbXBvcnQgeyBTdWlPYmplY3RSZWYgfSBmcm9tICcuL215c3RlbmxhYi90eXBlcyc7XG5pbXBvcnQgdXRpbHMsIHsgaXNJbW1Pck93bmVkT2JqIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQge1xuICBJbnB1dHMsXG4gIFRyYW5zYWN0aW9uVHlwZSBhcyBTdWlUcmFuc2FjdGlvbkJsb2NrVHlwZSxcbiAgVHJhbnNhY3Rpb25CbG9jayBhcyBQcm9ncmFtbWluZ1RyYW5zYWN0aW9uQmxvY2tCdWlsZGVyLFxuICBUcmFuc2FjdGlvbkFyZ3VtZW50LFxufSBmcm9tICcuL215c3RlbmxhYi9idWlsZGVyJztcblxuZXhwb3J0IGNsYXNzIFRva2VuVHJhbnNmZXJCdWlsZGVyIGV4dGVuZHMgVHJhbnNhY3Rpb25CdWlsZGVyPFRva2VuVHJhbnNmZXJQcm9ncmFtbWFibGVUcmFuc2FjdGlvbj4ge1xuICBwcm90ZWN0ZWQgX3JlY2lwaWVudHM6IFJlY2lwaWVudFtdO1xuICBwcm90ZWN0ZWQgX2lucHV0T2JqZWN0czogU3VpT2JqZWN0UmVmW107XG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgICB0aGlzLl90cmFuc2FjdGlvbiA9IG5ldyBUb2tlblRyYW5zZmVyVHJhbnNhY3Rpb24oX2NvaW5Db25maWcpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLlNlbmQ7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVUcmFuc2FjdGlvbih0cmFuc2FjdGlvbjogVG9rZW5UcmFuc2ZlclRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgaWYgKCF0cmFuc2FjdGlvbi5zdWlUcmFuc2FjdGlvbikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnZhbGlkYXRlVHJhbnNhY3Rpb25GaWVsZHMoKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBzaWduKGtleTogQmFzZUtleSk6IHZvaWQge1xuICAgIHRoaXMudHJhbnNhY3Rpb24uc2V0U3VpVHJhbnNhY3Rpb24odGhpcy5idWlsZFN1aVRyYW5zYWN0aW9uKCkpO1xuICAgIHN1cGVyLnNpZ24oa2V5KTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgZnJvbUltcGxlbWVudGF0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiBUcmFuc2FjdGlvbjxUb2tlblRyYW5zZmVyUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24+IHtcbiAgICBjb25zdCB0eCA9IG5ldyBUb2tlblRyYW5zZmVyVHJhbnNhY3Rpb24odGhpcy5fY29pbkNvbmZpZyk7XG4gICAgdGhpcy52YWxpZGF0ZVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uKTtcbiAgICB0eC5mcm9tUmF3VHJhbnNhY3Rpb24ocmF3VHJhbnNhY3Rpb24pO1xuICAgIHRoaXMuaW5pdEJ1aWxkZXIodHgpO1xuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9uO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBhc3luYyBidWlsZEltcGxlbWVudGF0aW9uKCk6IFByb21pc2U8VHJhbnNhY3Rpb248VG9rZW5UcmFuc2ZlclByb2dyYW1tYWJsZVRyYW5zYWN0aW9uPj4ge1xuICAgIHRoaXMudHJhbnNhY3Rpb24uc2V0U3VpVHJhbnNhY3Rpb24odGhpcy5idWlsZFN1aVRyYW5zYWN0aW9uKCkpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24udHJhbnNhY3Rpb25UeXBlKHRoaXMudHJhbnNhY3Rpb25UeXBlKTtcblxuICAgIGlmICh0aGlzLl9zaWduZXIpIHtcbiAgICAgIHRoaXMudHJhbnNhY3Rpb24uc2lnbih0aGlzLl9zaWduZXIpO1xuICAgIH1cblxuICAgIHRoaXMuX3NpZ25hdHVyZXMuZm9yRWFjaCgoc2lnbmF0dXJlKSA9PiB7XG4gICAgICB0aGlzLnRyYW5zYWN0aW9uLmFkZFNpZ25hdHVyZShzaWduYXR1cmUucHVibGljS2V5LCBzaWduYXR1cmUuc2lnbmF0dXJlKTtcbiAgICB9KTtcblxuICAgIHRoaXMudHJhbnNhY3Rpb24ubG9hZElucHV0c0FuZE91dHB1dHMoKTtcbiAgICByZXR1cm4gdGhpcy50cmFuc2FjdGlvbjtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBpbml0QnVpbGRlcih0eDogVG9rZW5UcmFuc2ZlclRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgdGhpcy5fdHJhbnNhY3Rpb24gPSB0eDtcblxuICAgIGlmICh0eC5zaWduYXR1cmUgJiYgdHguc2lnbmF0dXJlLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMuX3NpZ25hdHVyZXMgPSBbdHguc3VpU2lnbmF0dXJlXTtcbiAgICB9XG4gICAgY29uc3QgdHhEYXRhID0gdHgudG9Kc29uKCk7XG4gICAgdGhpcy50eXBlKFN1aVRyYW5zYWN0aW9uVHlwZS5Ub2tlblRyYW5zZmVyKTtcbiAgICB0aGlzLnNlbmRlcih0eERhdGEuc2VuZGVyKTtcbiAgICB0aGlzLmdhc0RhdGEodHhEYXRhLmdhc0RhdGEpO1xuICAgIGNvbnN0IHJlY2lwaWVudHMgPSB1dGlscy5nZXRSZWNpcGllbnRzKHR4LnN1aVRyYW5zYWN0aW9uKTtcbiAgICB0aGlzLnNlbmQocmVjaXBpZW50cyk7XG4gICAgY29uc3QgaW5wdXRPYmplY3RzID0gdGhpcy5nZXRJbnB1dE9iamVjdHNGcm9tVHgodHguc3VpVHJhbnNhY3Rpb24udHgpO1xuICAgIHRoaXMuaW5wdXRPYmplY3RzKGlucHV0T2JqZWN0cyk7XG4gIH1cblxuICBzZW5kKHJlY2lwaWVudHM6IFJlY2lwaWVudFtdKTogdGhpcyB7XG4gICAgdGhpcy52YWxpZGF0ZVJlY2lwaWVudHMocmVjaXBpZW50cyk7XG4gICAgdGhpcy5fcmVjaXBpZW50cyA9IHJlY2lwaWVudHM7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBpbnB1dE9iamVjdHMoaW5wdXRPYmplY3Q6IFN1aU9iamVjdFJlZltdKTogdGhpcyB7XG4gICAgdGhpcy52YWxpZGF0ZUlucHV0T2JqZWN0cyhpbnB1dE9iamVjdCk7XG4gICAgdGhpcy5faW5wdXRPYmplY3RzID0gaW5wdXRPYmplY3Q7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGVzIGFsbCBmaWVsZHMgYXJlIGRlZmluZWQgY29ycmVjdGx5XG4gICAqL1xuICBwcml2YXRlIHZhbGlkYXRlVHJhbnNhY3Rpb25GaWVsZHMoKTogdm9pZCB7XG4gICAgYXNzZXJ0KHRoaXMuX3R5cGUsIG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ3R5cGUgaXMgcmVxdWlyZWQgYmVmb3JlIGJ1aWxkaW5nJykpO1xuICAgIGFzc2VydCh0aGlzLl9zZW5kZXIsIG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ3NlbmRlciBpcyByZXF1aXJlZCBiZWZvcmUgYnVpbGRpbmcnKSk7XG4gICAgYXNzZXJ0KFxuICAgICAgdGhpcy5fcmVjaXBpZW50cyAmJiB0aGlzLl9yZWNpcGllbnRzLmxlbmd0aCA+IDAsXG4gICAgICBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdhdCBsZWFzdCBvbmUgcmVjaXBpZW50IGlzIHJlcXVpcmVkIGJlZm9yZSBidWlsZGluZycpXG4gICAgKTtcbiAgICBhc3NlcnQodGhpcy5fZ2FzRGF0YSwgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignZ2FzRGF0YSBpcyByZXF1aXJlZCBiZWZvcmUgYnVpbGRpbmcnKSk7XG4gICAgdGhpcy52YWxpZGF0ZUdhc0RhdGEodGhpcy5fZ2FzRGF0YSk7XG4gICAgdGhpcy52YWxpZGF0ZUlucHV0T2JqZWN0cyh0aGlzLl9pbnB1dE9iamVjdHMpO1xuICB9XG5cbiAgcHJpdmF0ZSB2YWxpZGF0ZUlucHV0T2JqZWN0cyhpbnB1dE9iamVjdHM6IFN1aU9iamVjdFJlZltdKTogdm9pZCB7XG4gICAgYXNzZXJ0KFxuICAgICAgaW5wdXRPYmplY3RzICYmIGlucHV0T2JqZWN0cy5sZW5ndGggPiAwLFxuICAgICAgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignaW5wdXQgb2JqZWN0cyByZXF1aXJlZCBiZWZvcmUgYnVpbGRpbmcnKVxuICAgICk7XG4gICAgaW5wdXRPYmplY3RzLmZvckVhY2goKGlucHV0T2JqZWN0KSA9PiB7XG4gICAgICB0aGlzLnZhbGlkYXRlU3VpT2JqZWN0UmVmKGlucHV0T2JqZWN0LCAnaW5wdXQgb2JqZWN0Jyk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQnVpbGQgU3VpVHJhbnNhY3Rpb25cbiAgICpcbiAgICogQHJldHVybiB7U3VpVHJhbnNhY3Rpb248VG9rZW5UcmFuc2ZlclByb2dyYW1tYWJsZVRyYW5zYWN0aW9uPn1cbiAgICogQHByb3RlY3RlZFxuICAgKi9cbiAgcHJvdGVjdGVkIGJ1aWxkU3VpVHJhbnNhY3Rpb24oKTogU3VpVHJhbnNhY3Rpb248VG9rZW5UcmFuc2ZlclByb2dyYW1tYWJsZVRyYW5zYWN0aW9uPiB7XG4gICAgdGhpcy52YWxpZGF0ZVRyYW5zYWN0aW9uRmllbGRzKCk7XG5cbiAgICBjb25zdCBwcm9ncmFtbWFibGVUeEJ1aWxkZXIgPSBuZXcgUHJvZ3JhbW1pbmdUcmFuc2FjdGlvbkJsb2NrQnVpbGRlcigpO1xuXG4gICAgY29uc3QgaW5wdXRPYmplY3RzID0gdGhpcy5faW5wdXRPYmplY3RzLm1hcCgob2JqZWN0KSA9PiBwcm9ncmFtbWFibGVUeEJ1aWxkZXIub2JqZWN0KElucHV0cy5PYmplY3RSZWYob2JqZWN0KSkpO1xuICAgIGNvbnN0IG1lcmdlZE9iamVjdCA9IGlucHV0T2JqZWN0cy5zaGlmdCgpIGFzIFRyYW5zYWN0aW9uQXJndW1lbnQ7XG5cbiAgICBpZiAoaW5wdXRPYmplY3RzLmxlbmd0aCA+IDApIHtcbiAgICAgIHByb2dyYW1tYWJsZVR4QnVpbGRlci5tZXJnZUNvaW5zKG1lcmdlZE9iamVjdCwgaW5wdXRPYmplY3RzKTtcbiAgICB9XG5cbiAgICB0aGlzLl9yZWNpcGllbnRzLmZvckVhY2goKHJlY2lwaWVudCkgPT4ge1xuICAgICAgY29uc3Qgc3BsaXRPYmplY3QgPSBwcm9ncmFtbWFibGVUeEJ1aWxkZXIuc3BsaXRDb2lucyhtZXJnZWRPYmplY3QsIFtcbiAgICAgICAgcHJvZ3JhbW1hYmxlVHhCdWlsZGVyLnB1cmUoTnVtYmVyKHJlY2lwaWVudC5hbW91bnQpKSxcbiAgICAgIF0pO1xuICAgICAgcHJvZ3JhbW1hYmxlVHhCdWlsZGVyLnRyYW5zZmVyT2JqZWN0cyhbc3BsaXRPYmplY3RdLCBwcm9ncmFtbWFibGVUeEJ1aWxkZXIub2JqZWN0KHJlY2lwaWVudC5hZGRyZXNzKSk7XG4gICAgfSk7XG5cbiAgICBjb25zdCB0eERhdGEgPSBwcm9ncmFtbWFibGVUeEJ1aWxkZXIuYmxvY2tEYXRhO1xuICAgIHJldHVybiB7XG4gICAgICB0eXBlOiB0aGlzLl90eXBlLFxuICAgICAgc2VuZGVyOiB0aGlzLl9zZW5kZXIsXG4gICAgICB0eDoge1xuICAgICAgICBpbnB1dHM6IFsuLi50eERhdGEuaW5wdXRzXSxcbiAgICAgICAgdHJhbnNhY3Rpb25zOiBbLi4udHhEYXRhLnRyYW5zYWN0aW9uc10sXG4gICAgICB9LFxuICAgICAgZ2FzRGF0YToge1xuICAgICAgICAuLi50aGlzLl9nYXNEYXRhLFxuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEV4dHJhY3RzIHRoZSBvYmplY3RzIHRoYXQgd2VyZSBwcm92aWRlZCBhcyBpbnB1dHMgd2hpbGUgYnVpbGRpbmcgdGhlIHRyYW5zYWN0aW9uXG4gICAqIEBwYXJhbSB0eERhdGFcbiAgICogQHJldHVybnMge1N1aU9iamVjdFJlZltdfSBPYmplY3RzIHRoYXQgYXJlIGlucHV0cyBmb3IgdGhlIHRyYW5zYWN0aW9uXG4gICAqL1xuICBwcml2YXRlIGdldElucHV0T2JqZWN0c0Zyb21UeCh0eDogVG9rZW5UcmFuc2ZlclByb2dyYW1tYWJsZVRyYW5zYWN0aW9uKTogU3VpT2JqZWN0UmVmW10ge1xuICAgIGNvbnN0IGlucHV0cyA9IHR4LmlucHV0cztcbiAgICBjb25zdCB0cmFuc2FjdGlvbiA9IHR4LnRyYW5zYWN0aW9uc1swXSBhcyBTdWlUcmFuc2FjdGlvbkJsb2NrVHlwZTtcblxuICAgIGxldCBhcmdzOiBUcmFuc2FjdGlvbkFyZ3VtZW50W10gPSBbXTtcbiAgICBpZiAodHJhbnNhY3Rpb24ua2luZCA9PT0gJ01lcmdlQ29pbnMnKSB7XG4gICAgICBjb25zdCB7IGRlc3RpbmF0aW9uLCBzb3VyY2VzIH0gPSB0cmFuc2FjdGlvbjtcbiAgICAgIGFyZ3MgPSBbZGVzdGluYXRpb24sIC4uLnNvdXJjZXNdO1xuICAgIH0gZWxzZSBpZiAodHJhbnNhY3Rpb24ua2luZCA9PT0gJ1NwbGl0Q29pbnMnKSB7XG4gICAgICBhcmdzID0gW3RyYW5zYWN0aW9uLmNvaW5dO1xuICAgIH1cblxuICAgIGNvbnN0IGlucHV0T2JqZWN0czogU3VpT2JqZWN0UmVmW10gPSBbXTtcbiAgICBhcmdzLmZvckVhY2goKGFyZykgPT4ge1xuICAgICAgaWYgKGFyZy5raW5kID09PSAnSW5wdXQnKSB7XG4gICAgICAgIGNvbnN0IGlucHV0ID0gaW5wdXRzW2FyZy5pbmRleF07XG4gICAgICAgIGlmICgnT2JqZWN0JyBpbiBpbnB1dCAmJiBpc0ltbU9yT3duZWRPYmooaW5wdXQuT2JqZWN0KSkge1xuICAgICAgICAgIGlucHV0T2JqZWN0cy5wdXNoKGlucHV0Lk9iamVjdC5JbW1Pck93bmVkKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuXG4gICAgcmV0dXJuIGlucHV0T2JqZWN0cztcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { SuiTransaction, TokenTransferProgrammableTransaction, TransactionExplanation, TxData } from './iface';
|
|
3
|
+
import { BaseCoin as CoinConfig } from '@bitgo/statics';
|
|
4
|
+
import { Transaction } from './transaction';
|
|
5
|
+
import { BaseKey, PublicKey as BasePublicKey, Signature, TransactionType } from '@bitgo/sdk-core';
|
|
6
|
+
export declare class TokenTransferTransaction extends Transaction<TokenTransferProgrammableTransaction> {
|
|
7
|
+
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
8
|
+
get suiTransaction(): SuiTransaction<TokenTransferProgrammableTransaction>;
|
|
9
|
+
setSuiTransaction(tx: SuiTransaction<TokenTransferProgrammableTransaction>): void;
|
|
10
|
+
/** @inheritDoc */
|
|
11
|
+
get id(): string;
|
|
12
|
+
addSignature(publicKey: BasePublicKey, signature: Buffer): void;
|
|
13
|
+
get suiSignature(): Signature;
|
|
14
|
+
/** @inheritdoc */
|
|
15
|
+
canSign(key: BaseKey): boolean;
|
|
16
|
+
/** @inheritdoc */
|
|
17
|
+
toBroadcastFormat(): string;
|
|
18
|
+
/** @inheritdoc */
|
|
19
|
+
toJson(): TxData;
|
|
20
|
+
/** @inheritDoc */
|
|
21
|
+
explainTransaction(): TransactionExplanation;
|
|
22
|
+
/**
|
|
23
|
+
* Set the transaction type.
|
|
24
|
+
*
|
|
25
|
+
* @param {TransactionType} transactionType The transaction type to be set.
|
|
26
|
+
*/
|
|
27
|
+
transactionType(transactionType: TransactionType): void;
|
|
28
|
+
/**
|
|
29
|
+
* Load the input and output data on this transaction.
|
|
30
|
+
*/
|
|
31
|
+
loadInputsAndOutputs(): void;
|
|
32
|
+
/**
|
|
33
|
+
* Sets this transaction payload
|
|
34
|
+
*
|
|
35
|
+
* @param {string} rawTransaction
|
|
36
|
+
*/
|
|
37
|
+
fromRawTransaction(rawTransaction: string): void;
|
|
38
|
+
/**
|
|
39
|
+
* Helper function for serialize() to get the correct txData with transaction type
|
|
40
|
+
*
|
|
41
|
+
* @return {TxData}
|
|
42
|
+
*/
|
|
43
|
+
getTxData(): TxData;
|
|
44
|
+
/**
|
|
45
|
+
* Returns a complete explanation for a transfer transaction
|
|
46
|
+
* @param {TxData} json The transaction data in json format
|
|
47
|
+
* @param {TransactionExplanation} explanationResult The transaction explanation to be completed
|
|
48
|
+
* @returns {TransactionExplanation}
|
|
49
|
+
*/
|
|
50
|
+
explainTokenTransferTransaction(json: TxData, explanationResult: TransactionExplanation): TransactionExplanation;
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=tokenTransferTransaction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokenTransferTransaction.d.ts","sourceRoot":"","sources":["../../../src/lib/tokenTransferTransaction.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,oCAAoC,EAAE,sBAAsB,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAC/G,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EACL,OAAO,EACP,SAAS,IAAI,aAAa,EAG1B,SAAS,EAET,eAAe,EAChB,MAAM,iBAAiB,CAAC;AAMzB,qBAAa,wBAAyB,SAAQ,WAAW,CAAC,oCAAoC,CAAC;gBACjF,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,IAAI,cAAc,IAAI,cAAc,CAAC,oCAAoC,CAAC,CAEzE;IAED,iBAAiB,CAAC,EAAE,EAAE,cAAc,CAAC,oCAAoC,CAAC,GAAG,IAAI;IAIjF,kBAAkB;IAClB,IAAI,EAAE,IAAI,MAAM,CAEf;IAED,YAAY,CAAC,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAM/D,IAAI,YAAY,IAAI,SAAS,CAE5B;IAED,kBAAkB;IAClB,OAAO,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO;IAI9B,kBAAkB;IAClB,iBAAiB,IAAI,MAAM;IAO3B,kBAAkB;IAClB,MAAM,IAAI,MAAM;IAehB,kBAAkB;IAClB,kBAAkB,IAAI,sBAAsB;IAwB5C;;;;OAIG;IACH,eAAe,CAAC,eAAe,EAAE,eAAe,GAAG,IAAI;IAIvD;;OAEG;IACH,oBAAoB,IAAI,IAAI;IAqB5B;;;;OAIG;IACH,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAchD;;;;OAIG;IACI,SAAS,IAAI,MAAM;IAyC1B;;;;;OAKG;IACH,+BAA+B,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,EAAE,sBAAsB,GAAG,sBAAsB;CAWjH"}
|