@bitgo-beta/sdk-coin-vet 1.0.1-beta.9 → 1.0.1-beta.90
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 +36 -0
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +2 -1
- package/dist/src/lib/constants.d.ts +3 -1
- package/dist/src/lib/constants.d.ts.map +1 -1
- package/dist/src/lib/constants.js +5 -3
- package/dist/src/lib/iface.d.ts +12 -0
- package/dist/src/lib/iface.d.ts.map +1 -0
- package/dist/src/lib/iface.js +3 -0
- package/dist/src/lib/index.d.ts +7 -1
- package/dist/src/lib/index.d.ts.map +1 -1
- package/dist/src/lib/index.js +14 -2
- package/dist/src/lib/keyPair.d.ts +26 -0
- package/dist/src/lib/keyPair.d.ts.map +1 -0
- package/dist/src/lib/keyPair.js +65 -0
- package/dist/src/lib/transaction/transaction.d.ts +119 -0
- package/dist/src/lib/transaction/transaction.d.ts.map +1 -0
- package/dist/src/lib/transaction/transaction.js +444 -0
- package/dist/src/lib/transactionBuilder/transactionBuilder.d.ts +54 -0
- package/dist/src/lib/transactionBuilder/transactionBuilder.d.ts.map +1 -0
- package/dist/src/lib/transactionBuilder/transactionBuilder.js +153 -0
- package/dist/src/lib/transactionBuilder/transferBuilder.d.ts +10 -0
- package/dist/src/lib/transactionBuilder/transferBuilder.d.ts.map +1 -0
- package/dist/src/lib/transactionBuilder/transferBuilder.js +45 -0
- package/dist/src/lib/transactionBuilderFactory.d.ts +25 -0
- package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -0
- package/dist/src/lib/transactionBuilderFactory.js +59 -0
- package/dist/src/lib/types.d.ts +8 -0
- package/dist/src/lib/types.d.ts.map +1 -0
- package/dist/src/lib/types.js +3 -0
- package/dist/src/lib/utils.d.ts +5 -1
- package/dist/src/lib/utils.d.ts.map +1 -1
- package/dist/src/lib/utils.js +47 -6
- package/dist/src/register.d.ts.map +1 -1
- package/dist/src/register.js +5 -1
- package/dist/src/vet.d.ts +9 -4
- package/dist/src/vet.d.ts.map +1 -1
- package/dist/src/vet.js +140 -10
- package/dist/src/vetToken.d.ts +19 -0
- package/dist/src/vetToken.d.ts.map +1 -0
- package/dist/src/vetToken.js +52 -0
- package/package.json +15 -7
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,42 @@
|
|
|
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
|
+
# [1.6.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@1.5.0...@bitgo/sdk-coin-vet@1.6.0) (2025-06-24)
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
- add vechain token standard support ([f81cf23](https://github.com/BitGo/BitGoJS/commit/f81cf230afe4636ac87a2d94821b49947605d1ff))
|
|
11
|
+
|
|
12
|
+
# [1.5.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@1.4.0...@bitgo/sdk-coin-vet@1.5.0) (2025-06-18)
|
|
13
|
+
|
|
14
|
+
### Features
|
|
15
|
+
|
|
16
|
+
- **sdk-coin-vet:** implement isValidBlockId for vet ([2a7e6e7](https://github.com/BitGo/BitGoJS/commit/2a7e6e78b3972ef8d3858c9b2d9a83e713ae4437))
|
|
17
|
+
|
|
18
|
+
# [1.4.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@1.3.0...@bitgo/sdk-coin-vet@1.4.0) (2025-06-10)
|
|
19
|
+
|
|
20
|
+
### Features
|
|
21
|
+
|
|
22
|
+
- **sdk-coin-vet:** add transaction builder logic for vechain ([96c089f](https://github.com/BitGo/BitGoJS/commit/96c089fcbd2401c921d2bc9a43ef7bc112c80e8b))
|
|
23
|
+
|
|
24
|
+
# [1.3.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@1.2.0...@bitgo/sdk-coin-vet@1.3.0) (2025-06-05)
|
|
25
|
+
|
|
26
|
+
### Features
|
|
27
|
+
|
|
28
|
+
- **root:** support node 22 ([c4ad6af](https://github.com/BitGo/BitGoJS/commit/c4ad6af2e8896221417c303f0f6b84652b493216))
|
|
29
|
+
- **sdk-coin-vet:** add vechain keyPair ([3231af0](https://github.com/BitGo/BitGoJS/commit/3231af0679051bb6034a90f811707713075033ba))
|
|
30
|
+
- **sdk-coin-vet:** address and wallet creation ([7964875](https://github.com/BitGo/BitGoJS/commit/79648755454faac413c82761ca287aac721eb0e5))
|
|
31
|
+
|
|
32
|
+
# [1.2.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@1.1.1...@bitgo/sdk-coin-vet@1.2.0) (2025-06-02)
|
|
33
|
+
|
|
34
|
+
### Features
|
|
35
|
+
|
|
36
|
+
- rename audit function naming and signature ([1a885ab](https://github.com/BitGo/BitGoJS/commit/1a885ab60d30ca8595e284a728f2ab9d3c09994e))
|
|
37
|
+
|
|
38
|
+
## [1.1.1](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@1.1.0...@bitgo/sdk-coin-vet@1.1.1) (2025-05-28)
|
|
39
|
+
|
|
40
|
+
**Note:** Version bump only for package @bitgo/sdk-coin-vet
|
|
41
|
+
|
|
6
42
|
# 1.1.0 (2025-05-22)
|
|
7
43
|
|
|
8
44
|
### Features
|
package/dist/src/index.d.ts
CHANGED
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC"}
|
package/dist/src/index.js
CHANGED
|
@@ -18,4 +18,5 @@ __exportStar(require("./lib"), exports);
|
|
|
18
18
|
__exportStar(require("./vet"), exports);
|
|
19
19
|
__exportStar(require("./tvet"), exports);
|
|
20
20
|
__exportStar(require("./register"), exports);
|
|
21
|
-
|
|
21
|
+
__exportStar(require("./vetToken"), exports);
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHdDQUFzQjtBQUN0Qix3Q0FBc0I7QUFDdEIseUNBQXVCO0FBQ3ZCLDZDQUEyQjtBQUMzQiw2Q0FBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYic7XG5leHBvcnQgKiBmcm9tICcuL3ZldCc7XG5leHBvcnQgKiBmcm9tICcuL3R2ZXQnO1xuZXhwb3J0ICogZnJvbSAnLi9yZWdpc3Rlcic7XG5leHBvcnQgKiBmcm9tICcuL3ZldFRva2VuJztcbiJdfQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAC5C,eAAO,MAAM,kBAAkB,KAAK,CAAC;AACrC,eAAO,MAAM,mBAAmB,KAAK,CAAC"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
exports.
|
|
5
|
-
|
|
3
|
+
exports.VET_BLOCK_ID_LENGTH = exports.VET_ADDRESS_LENGTH = exports.VET_TRANSACTION_ID_LENGTH = void 0;
|
|
4
|
+
exports.VET_TRANSACTION_ID_LENGTH = 64;
|
|
5
|
+
exports.VET_ADDRESS_LENGTH = 40;
|
|
6
|
+
exports.VET_BLOCK_ID_LENGTH = 64;
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQWEsUUFBQSx5QkFBeUIsR0FBRyxFQUFFLENBQUM7QUFDL0IsUUFBQSxrQkFBa0IsR0FBRyxFQUFFLENBQUM7QUFDeEIsUUFBQSxtQkFBbUIsR0FBRyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgVkVUX1RSQU5TQUNUSU9OX0lEX0xFTkdUSCA9IDY0O1xuZXhwb3J0IGNvbnN0IFZFVF9BRERSRVNTX0xFTkdUSCA9IDQwO1xuZXhwb3J0IGNvbnN0IFZFVF9CTE9DS19JRF9MRU5HVEggPSA2NDtcbiJdfQ==
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { TransactionExplanation as BaseTransactionExplanation, TransactionType as BitGoTransactionType } from '@bitgo-beta/sdk-core';
|
|
2
|
+
/**
|
|
3
|
+
* The transaction data returned from the toJson() function of a transaction
|
|
4
|
+
*/
|
|
5
|
+
export interface TxData {
|
|
6
|
+
id: string;
|
|
7
|
+
}
|
|
8
|
+
export interface VetTransactionExplanation extends BaseTransactionExplanation {
|
|
9
|
+
sender?: string;
|
|
10
|
+
type?: BitGoTransactionType;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=iface.d.ts.map
|
|
@@ -0,0 +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,sBAAsB,CAAC;AAE9B;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,yBAA0B,SAAQ,0BAA0B;IAC3E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,oBAAoB,CAAC;CAC7B"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIGFzIEJhc2VUcmFuc2FjdGlvbkV4cGxhbmF0aW9uLFxuICBUcmFuc2FjdGlvblR5cGUgYXMgQml0R29UcmFuc2FjdGlvblR5cGUsXG59IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcblxuLyoqXG4gKiBUaGUgdHJhbnNhY3Rpb24gZGF0YSByZXR1cm5lZCBmcm9tIHRoZSB0b0pzb24oKSBmdW5jdGlvbiBvZiBhIHRyYW5zYWN0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHhEYXRhIHtcbiAgaWQ6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBWZXRUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uRXhwbGFuYXRpb24ge1xuICBzZW5kZXI/OiBzdHJpbmc7XG4gIHR5cGU/OiBCaXRHb1RyYW5zYWN0aW9uVHlwZTtcbn1cbiJdfQ==
|
package/dist/src/lib/index.d.ts
CHANGED
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
import * as Constants from './constants';
|
|
2
2
|
import * as Utils from './utils';
|
|
3
|
-
|
|
3
|
+
import * as Interface from './iface';
|
|
4
|
+
export { KeyPair } from './keyPair';
|
|
5
|
+
export { Transaction } from './transaction/transaction';
|
|
6
|
+
export { TransactionBuilder } from './transactionBuilder/transactionBuilder';
|
|
7
|
+
export { TransferBuilder } from './transactionBuilder/transferBuilder';
|
|
8
|
+
export { TransactionBuilderFactory } from './transactionBuilderFactory';
|
|
9
|
+
export { Constants, Utils, Interface };
|
|
4
10
|
//# 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,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,SAAS,MAAM,SAAS,CAAC;AAErC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AACvE,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC"}
|
package/dist/src/lib/index.js
CHANGED
|
@@ -33,9 +33,21 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.Utils = exports.Constants = void 0;
|
|
36
|
+
exports.Interface = exports.Utils = exports.Constants = exports.TransactionBuilderFactory = exports.TransferBuilder = exports.TransactionBuilder = exports.Transaction = exports.KeyPair = void 0;
|
|
37
37
|
const Constants = __importStar(require("./constants"));
|
|
38
38
|
exports.Constants = Constants;
|
|
39
39
|
const Utils = __importStar(require("./utils"));
|
|
40
40
|
exports.Utils = Utils;
|
|
41
|
-
|
|
41
|
+
const Interface = __importStar(require("./iface"));
|
|
42
|
+
exports.Interface = Interface;
|
|
43
|
+
var keyPair_1 = require("./keyPair");
|
|
44
|
+
Object.defineProperty(exports, "KeyPair", { enumerable: true, get: function () { return keyPair_1.KeyPair; } });
|
|
45
|
+
var transaction_1 = require("./transaction/transaction");
|
|
46
|
+
Object.defineProperty(exports, "Transaction", { enumerable: true, get: function () { return transaction_1.Transaction; } });
|
|
47
|
+
var transactionBuilder_1 = require("./transactionBuilder/transactionBuilder");
|
|
48
|
+
Object.defineProperty(exports, "TransactionBuilder", { enumerable: true, get: function () { return transactionBuilder_1.TransactionBuilder; } });
|
|
49
|
+
var transferBuilder_1 = require("./transactionBuilder/transferBuilder");
|
|
50
|
+
Object.defineProperty(exports, "TransferBuilder", { enumerable: true, get: function () { return transferBuilder_1.TransferBuilder; } });
|
|
51
|
+
var transactionBuilderFactory_1 = require("./transactionBuilderFactory");
|
|
52
|
+
Object.defineProperty(exports, "TransactionBuilderFactory", { enumerable: true, get: function () { return transactionBuilderFactory_1.TransactionBuilderFactory; } });
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHVEQUF5QztBQVNoQyw4QkFBUztBQVJsQiwrQ0FBaUM7QUFRYixzQkFBSztBQVB6QixtREFBcUM7QUFPViw4QkFBUztBQUxwQyxxQ0FBb0M7QUFBM0Isa0dBQUEsT0FBTyxPQUFBO0FBQ2hCLHlEQUF3RDtBQUEvQywwR0FBQSxXQUFXLE9BQUE7QUFDcEIsOEVBQTZFO0FBQXBFLHdIQUFBLGtCQUFrQixPQUFBO0FBQzNCLHdFQUF1RTtBQUE5RCxrSEFBQSxlQUFlLE9BQUE7QUFDeEIseUVBQXdFO0FBQS9ELHNJQUFBLHlCQUF5QixPQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgQ29uc3RhbnRzIGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCAqIGFzIFV0aWxzIGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0ICogYXMgSW50ZXJmYWNlIGZyb20gJy4vaWZhY2UnO1xuXG5leHBvcnQgeyBLZXlQYWlyIH0gZnJvbSAnLi9rZXlQYWlyJztcbmV4cG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbi90cmFuc2FjdGlvbic7XG5leHBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlci90cmFuc2FjdGlvbkJ1aWxkZXInO1xuZXhwb3J0IHsgVHJhbnNmZXJCdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXIvdHJhbnNmZXJCdWlsZGVyJztcbmV4cG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnknO1xuZXhwb3J0IHsgQ29uc3RhbnRzLCBVdGlscywgSW50ZXJmYWNlIH07XG4iXX0=
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { DefaultKeys, KeyPairOptions, Secp256k1ExtendedKeyPair } from '@bitgo-beta/sdk-core';
|
|
2
|
+
/**
|
|
3
|
+
* Ethereum keys and address management.
|
|
4
|
+
*/
|
|
5
|
+
export declare class KeyPair extends Secp256k1ExtendedKeyPair {
|
|
6
|
+
/**
|
|
7
|
+
* Public constructor. By default, creates a key pair with a random master seed.
|
|
8
|
+
*
|
|
9
|
+
* @param { KeyPairOptions } source Either a master seed, a private key (extended or raw), or a public key
|
|
10
|
+
* (extended, compressed, or uncompressed)
|
|
11
|
+
*/
|
|
12
|
+
constructor(source?: KeyPairOptions);
|
|
13
|
+
/**
|
|
14
|
+
* Ethereum default keys format is raw private and uncompressed public key
|
|
15
|
+
*
|
|
16
|
+
* @returns { DefaultKeys } The keys in the protocol default key format
|
|
17
|
+
*/
|
|
18
|
+
getKeys(): DefaultKeys;
|
|
19
|
+
/**
|
|
20
|
+
* Get an Ethereum public address
|
|
21
|
+
*
|
|
22
|
+
* @returns {string} The address derived from the public key
|
|
23
|
+
*/
|
|
24
|
+
getAddress(): string;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=keyPair.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keyPair.d.ts","sourceRoot":"","sources":["../../../src/lib/keyPair.ts"],"names":[],"mappings":"AACA,OAAO,EACL,WAAW,EAIX,cAAc,EACd,wBAAwB,EACzB,MAAM,sBAAsB,CAAC;AAM9B;;GAEG;AACH,qBAAa,OAAQ,SAAQ,wBAAwB;IACnD;;;;;OAKG;gBACS,MAAM,CAAC,EAAE,cAAc;IAoBnC;;;;OAIG;IACH,OAAO,IAAI,WAAW;IAStB;;;;OAIG;IACH,UAAU,IAAI,MAAM;CAIrB"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.KeyPair = void 0;
|
|
4
|
+
const ethereumjs_util_1 = require("ethereumjs-util");
|
|
5
|
+
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
6
|
+
const crypto_1 = require("crypto");
|
|
7
|
+
const secp256k1_1 = require("@bitgo-beta/secp256k1");
|
|
8
|
+
const DEFAULT_SEED_SIZE_BYTES = 64;
|
|
9
|
+
/**
|
|
10
|
+
* Ethereum keys and address management.
|
|
11
|
+
*/
|
|
12
|
+
class KeyPair extends sdk_core_1.Secp256k1ExtendedKeyPair {
|
|
13
|
+
/**
|
|
14
|
+
* Public constructor. By default, creates a key pair with a random master seed.
|
|
15
|
+
*
|
|
16
|
+
* @param { KeyPairOptions } source Either a master seed, a private key (extended or raw), or a public key
|
|
17
|
+
* (extended, compressed, or uncompressed)
|
|
18
|
+
*/
|
|
19
|
+
constructor(source) {
|
|
20
|
+
super(source);
|
|
21
|
+
if (!source) {
|
|
22
|
+
const seed = (0, crypto_1.randomBytes)(DEFAULT_SEED_SIZE_BYTES);
|
|
23
|
+
this.hdNode = secp256k1_1.bip32.fromSeed(seed);
|
|
24
|
+
}
|
|
25
|
+
else if ((0, sdk_core_1.isSeed)(source)) {
|
|
26
|
+
this.hdNode = secp256k1_1.bip32.fromSeed(source.seed);
|
|
27
|
+
}
|
|
28
|
+
else if ((0, sdk_core_1.isPrivateKey)(source)) {
|
|
29
|
+
this.recordKeysFromPrivateKey(source.prv);
|
|
30
|
+
}
|
|
31
|
+
else if ((0, sdk_core_1.isPublicKey)(source)) {
|
|
32
|
+
this.recordKeysFromPublicKey(source.pub);
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
throw new Error('Invalid key pair options');
|
|
36
|
+
}
|
|
37
|
+
if (this.hdNode) {
|
|
38
|
+
this.keyPair = sdk_core_1.Secp256k1ExtendedKeyPair.toKeyPair(this.hdNode);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Ethereum default keys format is raw private and uncompressed public key
|
|
43
|
+
*
|
|
44
|
+
* @returns { DefaultKeys } The keys in the protocol default key format
|
|
45
|
+
*/
|
|
46
|
+
getKeys() {
|
|
47
|
+
return {
|
|
48
|
+
pub: this.getPublicKey({ compressed: this.hdNode !== undefined })
|
|
49
|
+
.toString('hex')
|
|
50
|
+
.toUpperCase(),
|
|
51
|
+
prv: this.getPrivateKey()?.toString('hex').toUpperCase(),
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Get an Ethereum public address
|
|
56
|
+
*
|
|
57
|
+
* @returns {string} The address derived from the public key
|
|
58
|
+
*/
|
|
59
|
+
getAddress() {
|
|
60
|
+
const publicKey = Buffer.from(this.getKeys().pub, 'hex'); // first two characters identify a public key
|
|
61
|
+
return (0, ethereumjs_util_1.addHexPrefix)((0, ethereumjs_util_1.pubToAddress)(publicKey, true).toString('hex'));
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
exports.KeyPair = KeyPair;
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5UGFpci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIva2V5UGFpci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxREFBNkQ7QUFDN0QsbURBTzhCO0FBQzlCLG1DQUFxQztBQUNyQyxxREFBOEM7QUFFOUMsTUFBTSx1QkFBdUIsR0FBRyxFQUFFLENBQUM7QUFFbkM7O0dBRUc7QUFDSCxNQUFhLE9BQVEsU0FBUSxtQ0FBd0I7SUFDbkQ7Ozs7O09BS0c7SUFDSCxZQUFZLE1BQXVCO1FBQ2pDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNkLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNaLE1BQU0sSUFBSSxHQUFHLElBQUEsb0JBQVcsRUFBQyx1QkFBdUIsQ0FBQyxDQUFDO1lBQ2xELElBQUksQ0FBQyxNQUFNLEdBQUcsaUJBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDckMsQ0FBQzthQUFNLElBQUksSUFBQSxpQkFBTSxFQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDMUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxpQkFBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUMsQ0FBQzthQUFNLElBQUksSUFBQSx1QkFBWSxFQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDaEMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM1QyxDQUFDO2FBQU0sSUFBSSxJQUFBLHNCQUFXLEVBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUMvQixJQUFJLENBQUMsdUJBQXVCLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzNDLENBQUM7YUFBTSxDQUFDO1lBQ04sTUFBTSxJQUFJLEtBQUssQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1FBQzlDLENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNoQixJQUFJLENBQUMsT0FBTyxHQUFHLG1DQUF3QixDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDakUsQ0FBQztJQUNILENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsT0FBTztRQUNMLE9BQU87WUFDTCxHQUFHLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsTUFBTSxLQUFLLFNBQVMsRUFBRSxDQUFDO2lCQUM5RCxRQUFRLENBQUMsS0FBSyxDQUFDO2lCQUNmLFdBQVcsRUFBRTtZQUNoQixHQUFHLEVBQUUsSUFBSSxDQUFDLGFBQWEsRUFBRSxFQUFFLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxXQUFXLEVBQUU7U0FDekQsQ0FBQztJQUNKLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsVUFBVTtRQUNSLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLDZDQUE2QztRQUN2RyxPQUFPLElBQUEsOEJBQVksRUFBQyxJQUFBLDhCQUFZLEVBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7Q0FDRjtBQWxERCwwQkFrREMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhZGRIZXhQcmVmaXgsIHB1YlRvQWRkcmVzcyB9IGZyb20gJ2V0aGVyZXVtanMtdXRpbCc7XG5pbXBvcnQge1xuICBEZWZhdWx0S2V5cyxcbiAgaXNQcml2YXRlS2V5LFxuICBpc1B1YmxpY0tleSxcbiAgaXNTZWVkLFxuICBLZXlQYWlyT3B0aW9ucyxcbiAgU2VjcDI1NmsxRXh0ZW5kZWRLZXlQYWlyLFxufSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyByYW5kb21CeXRlcyB9IGZyb20gJ2NyeXB0byc7XG5pbXBvcnQgeyBiaXAzMiB9IGZyb20gJ0BiaXRnby1iZXRhL3NlY3AyNTZrMSc7XG5cbmNvbnN0IERFRkFVTFRfU0VFRF9TSVpFX0JZVEVTID0gNjQ7XG5cbi8qKlxuICogRXRoZXJldW0ga2V5cyBhbmQgYWRkcmVzcyBtYW5hZ2VtZW50LlxuICovXG5leHBvcnQgY2xhc3MgS2V5UGFpciBleHRlbmRzIFNlY3AyNTZrMUV4dGVuZGVkS2V5UGFpciB7XG4gIC8qKlxuICAgKiBQdWJsaWMgY29uc3RydWN0b3IuIEJ5IGRlZmF1bHQsIGNyZWF0ZXMgYSBrZXkgcGFpciB3aXRoIGEgcmFuZG9tIG1hc3RlciBzZWVkLlxuICAgKlxuICAgKiBAcGFyYW0geyBLZXlQYWlyT3B0aW9ucyB9IHNvdXJjZSBFaXRoZXIgYSBtYXN0ZXIgc2VlZCwgYSBwcml2YXRlIGtleSAoZXh0ZW5kZWQgb3IgcmF3KSwgb3IgYSBwdWJsaWMga2V5XG4gICAqICAgICAoZXh0ZW5kZWQsIGNvbXByZXNzZWQsIG9yIHVuY29tcHJlc3NlZClcbiAgICovXG4gIGNvbnN0cnVjdG9yKHNvdXJjZT86IEtleVBhaXJPcHRpb25zKSB7XG4gICAgc3VwZXIoc291cmNlKTtcbiAgICBpZiAoIXNvdXJjZSkge1xuICAgICAgY29uc3Qgc2VlZCA9IHJhbmRvbUJ5dGVzKERFRkFVTFRfU0VFRF9TSVpFX0JZVEVTKTtcbiAgICAgIHRoaXMuaGROb2RlID0gYmlwMzIuZnJvbVNlZWQoc2VlZCk7XG4gICAgfSBlbHNlIGlmIChpc1NlZWQoc291cmNlKSkge1xuICAgICAgdGhpcy5oZE5vZGUgPSBiaXAzMi5mcm9tU2VlZChzb3VyY2Uuc2VlZCk7XG4gICAgfSBlbHNlIGlmIChpc1ByaXZhdGVLZXkoc291cmNlKSkge1xuICAgICAgdGhpcy5yZWNvcmRLZXlzRnJvbVByaXZhdGVLZXkoc291cmNlLnBydik7XG4gICAgfSBlbHNlIGlmIChpc1B1YmxpY0tleShzb3VyY2UpKSB7XG4gICAgICB0aGlzLnJlY29yZEtleXNGcm9tUHVibGljS2V5KHNvdXJjZS5wdWIpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQga2V5IHBhaXIgb3B0aW9ucycpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmhkTm9kZSkge1xuICAgICAgdGhpcy5rZXlQYWlyID0gU2VjcDI1NmsxRXh0ZW5kZWRLZXlQYWlyLnRvS2V5UGFpcih0aGlzLmhkTm9kZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEV0aGVyZXVtIGRlZmF1bHQga2V5cyBmb3JtYXQgaXMgcmF3IHByaXZhdGUgYW5kIHVuY29tcHJlc3NlZCBwdWJsaWMga2V5XG4gICAqXG4gICAqIEByZXR1cm5zIHsgRGVmYXVsdEtleXMgfSBUaGUga2V5cyBpbiB0aGUgcHJvdG9jb2wgZGVmYXVsdCBrZXkgZm9ybWF0XG4gICAqL1xuICBnZXRLZXlzKCk6IERlZmF1bHRLZXlzIHtcbiAgICByZXR1cm4ge1xuICAgICAgcHViOiB0aGlzLmdldFB1YmxpY0tleSh7IGNvbXByZXNzZWQ6IHRoaXMuaGROb2RlICE9PSB1bmRlZmluZWQgfSlcbiAgICAgICAgLnRvU3RyaW5nKCdoZXgnKVxuICAgICAgICAudG9VcHBlckNhc2UoKSxcbiAgICAgIHBydjogdGhpcy5nZXRQcml2YXRlS2V5KCk/LnRvU3RyaW5nKCdoZXgnKS50b1VwcGVyQ2FzZSgpLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogR2V0IGFuIEV0aGVyZXVtIHB1YmxpYyBhZGRyZXNzXG4gICAqXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9IFRoZSBhZGRyZXNzIGRlcml2ZWQgZnJvbSB0aGUgcHVibGljIGtleVxuICAgKi9cbiAgZ2V0QWRkcmVzcygpOiBzdHJpbmcge1xuICAgIGNvbnN0IHB1YmxpY0tleSA9IEJ1ZmZlci5mcm9tKHRoaXMuZ2V0S2V5cygpLnB1YiwgJ2hleCcpOyAvLyBmaXJzdCB0d28gY2hhcmFjdGVycyBpZGVudGlmeSBhIHB1YmxpYyBrZXlcbiAgICByZXR1cm4gYWRkSGV4UHJlZml4KHB1YlRvQWRkcmVzcyhwdWJsaWNLZXksIHRydWUpLnRvU3RyaW5nKCdoZXgnKSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import { BaseTransaction, TransactionType, TransactionRecipient, PublicKey } from '@bitgo-beta/sdk-core';
|
|
2
|
+
import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
|
|
3
|
+
import { TransactionClause, Transaction as VetTransaction } from '@vechain/sdk-core';
|
|
4
|
+
import { VetTransactionExplanation } from '../iface';
|
|
5
|
+
export interface VetTransactionData {
|
|
6
|
+
id: string;
|
|
7
|
+
chainTag: number;
|
|
8
|
+
blockRef: string;
|
|
9
|
+
expiration: number;
|
|
10
|
+
gasPriceCoef: number;
|
|
11
|
+
gas: number;
|
|
12
|
+
dependsOn: string | null;
|
|
13
|
+
nonce: number;
|
|
14
|
+
sender: string;
|
|
15
|
+
feePayer: string;
|
|
16
|
+
recipients: TransactionRecipient[];
|
|
17
|
+
}
|
|
18
|
+
export declare class Transaction extends BaseTransaction {
|
|
19
|
+
protected _rawTransaction: VetTransaction;
|
|
20
|
+
protected _type: TransactionType;
|
|
21
|
+
protected _recipients: TransactionRecipient[];
|
|
22
|
+
private _chainTag;
|
|
23
|
+
private _blockRef;
|
|
24
|
+
private _expiration;
|
|
25
|
+
private _clauses;
|
|
26
|
+
private _gasPriceCoef;
|
|
27
|
+
private _gas;
|
|
28
|
+
private _dependsOn;
|
|
29
|
+
private _nonce;
|
|
30
|
+
private _sender;
|
|
31
|
+
private _senderSignature;
|
|
32
|
+
private _feePayerAddress;
|
|
33
|
+
private _feePayerSignature;
|
|
34
|
+
private _feePayerPubKey;
|
|
35
|
+
static EMPTY_PUBLIC_KEY: Buffer<ArrayBuffer>;
|
|
36
|
+
static EMPTY_SIGNATURE: Buffer<ArrayBuffer>;
|
|
37
|
+
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
38
|
+
get id(): string;
|
|
39
|
+
get rawTransaction(): VetTransaction;
|
|
40
|
+
set rawTransaction(rawTx: VetTransaction);
|
|
41
|
+
get type(): TransactionType;
|
|
42
|
+
set type(type: TransactionType);
|
|
43
|
+
get sender(): string;
|
|
44
|
+
set sender(address: string);
|
|
45
|
+
get senderSignature(): Uint8Array | undefined;
|
|
46
|
+
set senderSignature(sig: Buffer);
|
|
47
|
+
get feePayerAddress(): string;
|
|
48
|
+
set feePayerAddress(address: string);
|
|
49
|
+
get feePayerSignature(): Uint8Array;
|
|
50
|
+
set feePayerSignature(sig: Buffer);
|
|
51
|
+
get chainTag(): number;
|
|
52
|
+
set chainTag(tag: number);
|
|
53
|
+
get blockRef(): string;
|
|
54
|
+
set blockRef(ref: string);
|
|
55
|
+
get expiration(): number;
|
|
56
|
+
set expiration(exp: number);
|
|
57
|
+
get recipients(): TransactionRecipient[];
|
|
58
|
+
set recipients(recipients: TransactionRecipient[]);
|
|
59
|
+
get clauses(): TransactionClause[];
|
|
60
|
+
set clauses(clauses: TransactionClause[]);
|
|
61
|
+
get gasPriceCoef(): number;
|
|
62
|
+
set gasPriceCoef(coef: number);
|
|
63
|
+
get gas(): number;
|
|
64
|
+
set gas(g: number);
|
|
65
|
+
get dependsOn(): string | null;
|
|
66
|
+
set dependsOn(dep: string | null);
|
|
67
|
+
get nonce(): number;
|
|
68
|
+
set nonce(n: number);
|
|
69
|
+
get feePayerPubKey(): PublicKey;
|
|
70
|
+
set feePayerPubKey(pubKey: PublicKey);
|
|
71
|
+
/**
|
|
72
|
+
* Get all signatures associated with this transaction
|
|
73
|
+
* Required by BaseTransaction
|
|
74
|
+
*/
|
|
75
|
+
get signature(): string[];
|
|
76
|
+
/**
|
|
77
|
+
* Set signatures for this transaction
|
|
78
|
+
* Required by BaseTransaction
|
|
79
|
+
* Note: This is mainly for compatibility with the base class.
|
|
80
|
+
* Prefer using senderSignature and feePayerSignature directly.
|
|
81
|
+
*/
|
|
82
|
+
set signature(sigs: string[]);
|
|
83
|
+
/** @inheritdoc */
|
|
84
|
+
canSign(): boolean;
|
|
85
|
+
/**
|
|
86
|
+
* Check if this is a fee delegated transaction
|
|
87
|
+
*/
|
|
88
|
+
isFeeDelegated(): boolean;
|
|
89
|
+
addRecipients(clauses: TransactionClause[]): void;
|
|
90
|
+
buildClauses(): void;
|
|
91
|
+
/**
|
|
92
|
+
* Populates the transaction object with data from a deserialized VeChain transaction
|
|
93
|
+
* @param signedTx - The deserialized VeChain transaction containing body, signatures, and other transaction data
|
|
94
|
+
* @throws {InvalidTransactionError} When the transaction is invalid or missing required data
|
|
95
|
+
*/
|
|
96
|
+
fromDeserializedSignedTransaction(signedTx: VetTransaction): void;
|
|
97
|
+
addSenderSignature(signature: Buffer): void;
|
|
98
|
+
getFeePayerPubKey(): string;
|
|
99
|
+
addFeePayerSignature(publicKey: PublicKey, signature: Buffer): void;
|
|
100
|
+
build(): Promise<void>;
|
|
101
|
+
/**
|
|
102
|
+
* Sets the transaction ID from the raw transaction if it is signed
|
|
103
|
+
* @private
|
|
104
|
+
*/
|
|
105
|
+
private generateTxnId;
|
|
106
|
+
protected buildRawTransaction(): Promise<void>;
|
|
107
|
+
loadInputsAndOutputs(): void;
|
|
108
|
+
fromRawTransaction(rawTransaction: string): void;
|
|
109
|
+
/** @inheritdoc */
|
|
110
|
+
toJson(): VetTransactionData;
|
|
111
|
+
getFee(): string;
|
|
112
|
+
get signablePayload(): Buffer;
|
|
113
|
+
/** @inheritdoc */
|
|
114
|
+
toBroadcastFormat(): string;
|
|
115
|
+
serialize(): string;
|
|
116
|
+
static deserializeTransaction(rawTx: string): VetTransaction;
|
|
117
|
+
explainTransaction(): VetTransactionExplanation;
|
|
118
|
+
}
|
|
119
|
+
//# sourceMappingURL=transaction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../../src/lib/transaction/transaction.ts"],"names":[],"mappings":"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"}
|