@bitgo/sdk-core 35.4.0 → 35.5.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 +12 -0
- package/dist/src/account-lib/baseCoin/errors.d.ts +3 -0
- package/dist/src/account-lib/baseCoin/errors.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/errors.js +8 -2
- package/dist/src/account-lib/baseCoin/index.d.ts +1 -0
- package/dist/src/account-lib/baseCoin/index.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/index.js +2 -1
- package/dist/src/account-lib/baseCoin/messages/baseMessage.d.ts +76 -0
- package/dist/src/account-lib/baseCoin/messages/baseMessage.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/messages/baseMessage.js +120 -0
- package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.d.ts +66 -0
- package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.js +96 -0
- package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts +33 -0
- package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.js +34 -0
- package/dist/src/account-lib/baseCoin/messages/iface.d.ts +156 -0
- package/dist/src/account-lib/baseCoin/messages/iface.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/messages/iface.js +3 -0
- package/dist/src/account-lib/baseCoin/messages/index.d.ts +5 -0
- package/dist/src/account-lib/baseCoin/messages/index.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/messages/index.js +21 -0
- package/dist/src/bitgo/staking/goStakingInterfaces.d.ts +129 -0
- package/dist/src/bitgo/staking/goStakingInterfaces.d.ts.map +1 -0
- package/dist/src/bitgo/staking/goStakingInterfaces.js +3 -0
- package/dist/src/bitgo/staking/goStakingWallet.d.ts +27 -1
- package/dist/src/bitgo/staking/goStakingWallet.d.ts.map +1 -1
- package/dist/src/bitgo/staking/goStakingWallet.js +52 -1
- package/dist/src/bitgo/staking/iGoStakingWallet.d.ts +8 -35
- package/dist/src/bitgo/staking/iGoStakingWallet.d.ts.map +1 -1
- package/dist/src/bitgo/staking/iGoStakingWallet.js +1 -1
- package/dist/src/bitgo/staking/index.d.ts +1 -0
- package/dist/src/bitgo/staking/index.d.ts.map +1 -1
- package/dist/src/bitgo/staking/index.js +2 -1
- package/dist/src/bitgo/utils/index.d.ts +1 -0
- package/dist/src/bitgo/utils/index.d.ts.map +1 -1
- package/dist/src/bitgo/utils/index.js +2 -1
- package/dist/src/bitgo/utils/messageTypes.d.ts +34 -0
- package/dist/src/bitgo/utils/messageTypes.d.ts.map +1 -0
- package/dist/src/bitgo/utils/messageTypes.js +12 -0
- package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.d.ts +2 -0
- package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.d.ts.map +1 -0
- package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.js +204 -0
- package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.d.ts +2 -0
- package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.d.ts.map +1 -0
- package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.js +130 -0
- package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts +2 -0
- package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts.map +1 -0
- package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.js +86 -0
- package/dist/test/unit/account-lib/baseCoin/messages/fixtures.d.ts +36 -0
- package/dist/test/unit/account-lib/baseCoin/messages/fixtures.d.ts.map +1 -0
- package/dist/test/unit/account-lib/baseCoin/messages/fixtures.js +70 -0
- package/dist/test/unit/bitgo/utils/messageTypes.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/messageTypes.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/messageTypes.js +76 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,18 @@
|
|
|
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
|
+
# [35.5.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-core@35.4.1...@bitgo/sdk-core@35.5.0) (2025-07-03)
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
- **account-lib:** register message builder factory ([bc5c71c](https://github.com/BitGo/BitGoJS/commit/bc5c71cd92266ec1011d85f0568bf174c3743bc2))
|
|
11
|
+
- add go staking service endpoints to sdk ([13c4430](https://github.com/BitGo/BitGoJS/commit/13c44306137cf1c5e74f2b9fa6fcc7485b91c88b))
|
|
12
|
+
- **sdk-core:** add message builder and message builder factory ([5741739](https://github.com/BitGo/BitGoJS/commit/57417395029ec064485ac9ee69eb38fb08c592ec))
|
|
13
|
+
|
|
14
|
+
## [35.4.1](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-core@35.4.0...@bitgo/sdk-core@35.4.1) (2025-06-25)
|
|
15
|
+
|
|
16
|
+
**Note:** Version bump only for package @bitgo/sdk-core
|
|
17
|
+
|
|
6
18
|
# [35.4.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-core@35.3.0...@bitgo/sdk-core@35.4.0) (2025-06-24)
|
|
7
19
|
|
|
8
20
|
### Bug Fixes
|
|
@@ -14,6 +14,9 @@ export declare class SigningError extends ExtendableError {
|
|
|
14
14
|
export declare class BuildTransactionError extends ExtendableError {
|
|
15
15
|
constructor(message: string);
|
|
16
16
|
}
|
|
17
|
+
export declare class BuildMessageError extends ExtendableError {
|
|
18
|
+
constructor(message: string);
|
|
19
|
+
}
|
|
17
20
|
export declare class UtilsError extends ExtendableError {
|
|
18
21
|
constructor(message: string);
|
|
19
22
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../src/account-lib/baseCoin/errors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,eAAgB,SAAQ,KAAK;gBAC5B,OAAO,KAAA;CASpB;AAED,qBAAa,qBAAsB,SAAQ,eAAe;gBAC5C,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,YAAa,SAAQ,eAAe;gBACnC,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,qBAAsB,SAAQ,eAAe;gBAC5C,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,UAAW,SAAQ,eAAe;gBACjC,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,sBAAuB,SAAQ,eAAe;gBAC7C,OAAO,EAAE,MAAM;CAG5B;AAED;;GAEG;AACH,qBAAa,0BAA2B,SAAQ,eAAe;gBACjD,OAAO,EAAE,MAAM;CAG5B;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,eAAe;gBAC5C,OAAO,EAAE,MAAM;CAG5B;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,eAAe;gBAC1C,OAAO,EAAE,MAAM;CAG5B;AAED;;GAEG;AACH,qBAAa,YAAa,SAAQ,eAAe;gBACnC,OAAO,EAAE,MAAM;CAG5B;AAED;;GAEG;AACH,qBAAa,UAAW,SAAQ,eAAe;gBACjC,OAAO,EAAE,MAAM;CAG5B;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,eAAe;gBAC5C,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,oBAAqB,SAAQ,eAAe;gBAC3C,OAAO,EAAE,MAAM;CAG5B"}
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../src/account-lib/baseCoin/errors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,eAAgB,SAAQ,KAAK;gBAC5B,OAAO,KAAA;CASpB;AAED,qBAAa,qBAAsB,SAAQ,eAAe;gBAC5C,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,YAAa,SAAQ,eAAe;gBACnC,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,qBAAsB,SAAQ,eAAe;gBAC5C,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,iBAAkB,SAAQ,eAAe;gBACxC,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,UAAW,SAAQ,eAAe;gBACjC,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,sBAAuB,SAAQ,eAAe;gBAC7C,OAAO,EAAE,MAAM;CAG5B;AAED;;GAEG;AACH,qBAAa,0BAA2B,SAAQ,eAAe;gBACjD,OAAO,EAAE,MAAM;CAG5B;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,eAAe;gBAC5C,OAAO,EAAE,MAAM;CAG5B;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,eAAe;gBAC1C,OAAO,EAAE,MAAM;CAG5B;AAED;;GAEG;AACH,qBAAa,YAAa,SAAQ,eAAe;gBACnC,OAAO,EAAE,MAAM;CAG5B;AAED;;GAEG;AACH,qBAAa,UAAW,SAAQ,eAAe;gBACjC,OAAO,EAAE,MAAM;CAG5B;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,eAAe;gBAC5C,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,oBAAqB,SAAQ,eAAe;gBAC3C,OAAO,EAAE,MAAM;CAG5B"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.DuplicateMethodError = exports.UnsupportedTokenError = exports.InvalidKey = exports.NotSupported = exports.NotImplementedError = exports.InvalidSignatureError = exports.InvalidParameterValueError = exports.ExtendTransactionError = exports.UtilsError = exports.BuildTransactionError = exports.SigningError = exports.ParseTransactionError = exports.ExtendableError = void 0;
|
|
3
|
+
exports.DuplicateMethodError = exports.UnsupportedTokenError = exports.InvalidKey = exports.NotSupported = exports.NotImplementedError = exports.InvalidSignatureError = exports.InvalidParameterValueError = exports.ExtendTransactionError = exports.UtilsError = exports.BuildMessageError = exports.BuildTransactionError = exports.SigningError = exports.ParseTransactionError = exports.ExtendableError = void 0;
|
|
4
4
|
/**
|
|
5
5
|
* This base class ensures that our stack trace is captured properly but also that we have classes of errors
|
|
6
6
|
* that can be found in a switch.
|
|
@@ -36,6 +36,12 @@ class BuildTransactionError extends ExtendableError {
|
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
38
|
exports.BuildTransactionError = BuildTransactionError;
|
|
39
|
+
class BuildMessageError extends ExtendableError {
|
|
40
|
+
constructor(message) {
|
|
41
|
+
super(message);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
exports.BuildMessageError = BuildMessageError;
|
|
39
45
|
class UtilsError extends ExtendableError {
|
|
40
46
|
constructor(message) {
|
|
41
47
|
super(message);
|
|
@@ -108,4 +114,4 @@ class DuplicateMethodError extends ExtendableError {
|
|
|
108
114
|
}
|
|
109
115
|
}
|
|
110
116
|
exports.DuplicateMethodError = DuplicateMethodError;
|
|
111
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
117
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FjY291bnQtbGliL2Jhc2VDb2luL2Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7O0dBR0c7QUFDSCxNQUFhLGVBQWdCLFNBQVEsS0FBSztJQUN4QyxZQUFZLE9BQU87UUFDakIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2YsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztRQUNsQyxJQUFJLE9BQU8sS0FBSyxDQUFDLGlCQUFpQixLQUFLLFVBQVUsRUFBRSxDQUFDO1lBQ2xELEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2xELENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDeEMsQ0FBQztJQUNILENBQUM7Q0FDRjtBQVZELDBDQVVDO0FBRUQsTUFBYSxxQkFBc0IsU0FBUSxlQUFlO0lBQ3hELFlBQVksT0FBZTtRQUN6QixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDakIsQ0FBQztDQUNGO0FBSkQsc0RBSUM7QUFFRCxNQUFhLFlBQWEsU0FBUSxlQUFlO0lBQy9DLFlBQVksT0FBZTtRQUN6QixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDakIsQ0FBQztDQUNGO0FBSkQsb0NBSUM7QUFFRCxNQUFhLHFCQUFzQixTQUFRLGVBQWU7SUFDeEQsWUFBWSxPQUFlO1FBQ3pCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqQixDQUFDO0NBQ0Y7QUFKRCxzREFJQztBQUVELE1BQWEsaUJBQWtCLFNBQVEsZUFBZTtJQUNwRCxZQUFZLE9BQWU7UUFDekIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2pCLENBQUM7Q0FDRjtBQUpELDhDQUlDO0FBRUQsTUFBYSxVQUFXLFNBQVEsZUFBZTtJQUM3QyxZQUFZLE9BQWU7UUFDekIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2pCLENBQUM7Q0FDRjtBQUpELGdDQUlDO0FBRUQsTUFBYSxzQkFBdUIsU0FBUSxlQUFlO0lBQ3pELFlBQVksT0FBZTtRQUN6QixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDakIsQ0FBQztDQUNGO0FBSkQsd0RBSUM7QUFFRDs7R0FFRztBQUNILE1BQWEsMEJBQTJCLFNBQVEsZUFBZTtJQUM3RCxZQUFZLE9BQWU7UUFDekIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2pCLENBQUM7Q0FDRjtBQUpELGdFQUlDO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLHFCQUFzQixTQUFRLGVBQWU7SUFDeEQsWUFBWSxPQUFlO1FBQ3pCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqQixDQUFDO0NBQ0Y7QUFKRCxzREFJQztBQUVEOztHQUVHO0FBQ0gsTUFBYSxtQkFBb0IsU0FBUSxlQUFlO0lBQ3RELFlBQVksT0FBZTtRQUN6QixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDakIsQ0FBQztDQUNGO0FBSkQsa0RBSUM7QUFFRDs7R0FFRztBQUNILE1BQWEsWUFBYSxTQUFRLGVBQWU7SUFDL0MsWUFBWSxPQUFlO1FBQ3pCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqQixDQUFDO0NBQ0Y7QUFKRCxvQ0FJQztBQUVEOztHQUVHO0FBQ0gsTUFBYSxVQUFXLFNBQVEsZUFBZTtJQUM3QyxZQUFZLE9BQWU7UUFDekIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2pCLENBQUM7Q0FDRjtBQUpELGdDQUlDO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLHFCQUFzQixTQUFRLGVBQWU7SUFDeEQsWUFBWSxPQUFlO1FBQ3pCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqQixDQUFDO0NBQ0Y7QUFKRCxzREFJQztBQUVELE1BQWEsb0JBQXFCLFNBQVEsZUFBZTtJQUN2RCxZQUFZLE9BQWU7UUFDekIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2pCLENBQUM7Q0FDRjtBQUpELG9EQUlDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBUaGlzIGJhc2UgY2xhc3MgZW5zdXJlcyB0aGF0IG91ciBzdGFjayB0cmFjZSBpcyBjYXB0dXJlZCBwcm9wZXJseSBidXQgYWxzbyB0aGF0IHdlIGhhdmUgY2xhc3NlcyBvZiBlcnJvcnNcbiAqIHRoYXQgY2FuIGJlIGZvdW5kIGluIGEgc3dpdGNoLlxuICovXG5leHBvcnQgY2xhc3MgRXh0ZW5kYWJsZUVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gICAgdGhpcy5uYW1lID0gdGhpcy5jb25zdHJ1Y3Rvci5uYW1lO1xuICAgIGlmICh0eXBlb2YgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsIHRoaXMuY29uc3RydWN0b3IpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnN0YWNrID0gbmV3IEVycm9yKG1lc3NhZ2UpLnN0YWNrO1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgUGFyc2VUcmFuc2FjdGlvbkVycm9yIGV4dGVuZHMgRXh0ZW5kYWJsZUVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFNpZ25pbmdFcnJvciBleHRlbmRzIEV4dGVuZGFibGVFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IgZXh0ZW5kcyBFeHRlbmRhYmxlRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgQnVpbGRNZXNzYWdlRXJyb3IgZXh0ZW5kcyBFeHRlbmRhYmxlRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgVXRpbHNFcnJvciBleHRlbmRzIEV4dGVuZGFibGVFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBFeHRlbmRUcmFuc2FjdGlvbkVycm9yIGV4dGVuZHMgRXh0ZW5kYWJsZUVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gIH1cbn1cblxuLyoqXG4gKiBFcnJvciBmb3IgYW4gaW52YWxpZCB2YWx1ZSBmb3IgYSBjb250cmFjdCBtZXRob2QgcGFyYW1ldGVyXG4gKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvciBleHRlbmRzIEV4dGVuZGFibGVFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICB9XG59XG5cbi8qKlxuICogRXJyb3IgcHJvZHVjZWQgYnkgbm90IHRydXRoeSBzaWduYXR1cmUgdmFsdWVzXG4gKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkU2lnbmF0dXJlRXJyb3IgZXh0ZW5kcyBFeHRlbmRhYmxlRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgfVxufVxuXG4vKipcbiAqIEVycm9yIGZvciBhIG1ldGhvZCB0aGF0IG5lZWRzIHRvIGJlIGltcGxlbWVudGVkXG4gKi9cbmV4cG9ydCBjbGFzcyBOb3RJbXBsZW1lbnRlZEVycm9yIGV4dGVuZHMgRXh0ZW5kYWJsZUVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gIH1cbn1cblxuLyoqXG4gKiBFcnJvciBmb3Igbm90IHN1cHBvcnRlZCBmZWF0dXJlc1xuICovXG5leHBvcnQgY2xhc3MgTm90U3VwcG9ydGVkIGV4dGVuZHMgRXh0ZW5kYWJsZUVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gIH1cbn1cblxuLyoqXG4gKiBFcnJvciBmb3IgaW52YWxpZCBzZWVkLCBwdWJsaWMsIG9yIHByaXZhdGUga2V5c1xuICovXG5leHBvcnQgY2xhc3MgSW52YWxpZEtleSBleHRlbmRzIEV4dGVuZGFibGVFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICB9XG59XG5cbi8qKlxuICogRXJyb3IgZm9yIGludmFsaWQgbWludC90b2tlblxuICovXG5leHBvcnQgY2xhc3MgVW5zdXBwb3J0ZWRUb2tlbkVycm9yIGV4dGVuZHMgRXh0ZW5kYWJsZUVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIER1cGxpY2F0ZU1ldGhvZEVycm9yIGV4dGVuZHMgRXh0ZW5kYWJsZUVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/account-lib/baseCoin/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,aAAa,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAChH,cAAc,4BAA4B,CAAC;AAC3C,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/account-lib/baseCoin/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,aAAa,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAChH,cAAc,4BAA4B,CAAC;AAC3C,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC"}
|
|
@@ -31,4 +31,5 @@ Object.defineProperty(exports, "DotAddressFormat", { enumerable: true, get: func
|
|
|
31
31
|
__exportStar(require("./secp256k1ExtendedKeyPair"), exports);
|
|
32
32
|
__exportStar(require("./errors"), exports);
|
|
33
33
|
__exportStar(require("./iface"), exports);
|
|
34
|
-
|
|
34
|
+
__exportStar(require("./messages"), exports);
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYWNjb3VudC1saWIvYmFzZUNvaW4vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxxREFBb0Q7QUFBM0Msa0hBQUEsZUFBZSxPQUFBO0FBQ3hCLG1FQUFrRTtBQUF6RCxnSUFBQSxzQkFBc0IsT0FBQTtBQUMvQixpRkFBZ0Y7QUFBdkUsOElBQUEsNkJBQTZCLE9BQUE7QUFHdEMsbURBQWtEO0FBQXpDLGdIQUFBLGNBQWMsT0FBQTtBQUN2QiwrQkFBZ0g7QUFBdkcsdUdBQUEsZUFBZSxPQUFBO0FBQUUsNkdBQUEscUJBQXFCLE9BQUE7QUFBRSxxR0FBQSxhQUFhLE9BQUE7QUFBRSx3R0FBQSxnQkFBZ0IsT0FBQTtBQUNoRiw2REFBMkM7QUFDM0MsMkNBQXlCO0FBQ3pCLDBDQUF3QjtBQUN4Qiw2Q0FBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBCYXNlVHJhbnNhY3Rpb24gfSBmcm9tICcuL2Jhc2VUcmFuc2FjdGlvbic7XG5leHBvcnQgeyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi9iYXNlVHJhbnNhY3Rpb25CdWlsZGVyJztcbmV4cG9ydCB7IEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IH0gZnJvbSAnLi9iYXNlVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSc7XG5leHBvcnQgeyBCYXNlVXRpbHMgfSBmcm9tICcuL2Jhc2VVdGlscyc7XG5leHBvcnQgeyBCYXNlS2V5UGFpciB9IGZyb20gJy4vYmFzZUtleVBhaXInO1xuZXhwb3J0IHsgRWQyNTUxOUtleVBhaXIgfSBmcm9tICcuL2VkMjU1MTlLZXlQYWlyJztcbmV4cG9ydCB7IFRyYW5zYWN0aW9uVHlwZSwgU3Rha2luZ09wZXJhdGlvblR5cGVzLCBBZGRyZXNzRm9ybWF0LCBEb3RBZGRyZXNzRm9ybWF0LCBEb3RBc3NldFR5cGVzIH0gZnJvbSAnLi9lbnVtJztcbmV4cG9ydCAqIGZyb20gJy4vc2VjcDI1NmsxRXh0ZW5kZWRLZXlQYWlyJztcbmV4cG9ydCAqIGZyb20gJy4vZXJyb3JzJztcbmV4cG9ydCAqIGZyb20gJy4vaWZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9tZXNzYWdlcyc7XG4iXX0=
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { BaseCoin as CoinConfig } from '@bitgo/statics';
|
|
2
|
+
import { BroadcastableMessage, MessageMetadata, MessageOptions, MessagePayload, MessageStandardType } from '../../../bitgo';
|
|
3
|
+
import { IMessage } from './iface';
|
|
4
|
+
export declare abstract class BaseMessage implements IMessage {
|
|
5
|
+
protected coinConfig: Readonly<CoinConfig>;
|
|
6
|
+
protected type: MessageStandardType;
|
|
7
|
+
protected payload: MessagePayload;
|
|
8
|
+
protected signatures: string[];
|
|
9
|
+
protected signers: string[];
|
|
10
|
+
protected signablePayload?: string | Buffer;
|
|
11
|
+
protected metadata?: MessageMetadata;
|
|
12
|
+
/**
|
|
13
|
+
* Base constructor.
|
|
14
|
+
*
|
|
15
|
+
* @param options Message options containing type, payload, metadata, etc.
|
|
16
|
+
*/
|
|
17
|
+
protected constructor(options: MessageOptions);
|
|
18
|
+
/**
|
|
19
|
+
* Get the message type
|
|
20
|
+
*/
|
|
21
|
+
getType(): MessageStandardType;
|
|
22
|
+
/**
|
|
23
|
+
* Get the message payload
|
|
24
|
+
*/
|
|
25
|
+
getPayload(): MessagePayload;
|
|
26
|
+
/**
|
|
27
|
+
* Get the metadata associated with the message
|
|
28
|
+
*/
|
|
29
|
+
getMetadata(): MessageMetadata | undefined;
|
|
30
|
+
/**
|
|
31
|
+
* Gets all signers addresses or public keys
|
|
32
|
+
*/
|
|
33
|
+
getSigners(): string[];
|
|
34
|
+
/**
|
|
35
|
+
* Adds a signer address or public key
|
|
36
|
+
* @param signer The address or public key of the signer
|
|
37
|
+
*/
|
|
38
|
+
addSigner(signer: string): void;
|
|
39
|
+
/**
|
|
40
|
+
* Sets signers addresses or public keys
|
|
41
|
+
* @param signers Array of addresses or public keys
|
|
42
|
+
*/
|
|
43
|
+
setSigners(signers: string[]): void;
|
|
44
|
+
/**
|
|
45
|
+
* Gets all signatures associated with this message
|
|
46
|
+
*/
|
|
47
|
+
getSignatures(): string[];
|
|
48
|
+
/**
|
|
49
|
+
* Sets signatures for this message
|
|
50
|
+
* @param signatures Array of signatures to set
|
|
51
|
+
*/
|
|
52
|
+
setSignatures(signatures: string[]): void;
|
|
53
|
+
/**
|
|
54
|
+
* Adds a signature to this message
|
|
55
|
+
* @param signature The signature to add
|
|
56
|
+
*/
|
|
57
|
+
addSignature(signature: string): void;
|
|
58
|
+
/**
|
|
59
|
+
* Gets the payload that should be signed
|
|
60
|
+
* Each message standard must implement this method
|
|
61
|
+
*/
|
|
62
|
+
abstract getSignablePayload(): Promise<string | Buffer>;
|
|
63
|
+
/**
|
|
64
|
+
* Converts this message to a broadcastable format
|
|
65
|
+
* Uses internal signatures and signers that were previously set
|
|
66
|
+
* @returns A broadcastable message
|
|
67
|
+
*/
|
|
68
|
+
toBroadcastFormat(): Promise<BroadcastableMessage>;
|
|
69
|
+
/**
|
|
70
|
+
* Serializes the broadcastable message to a string
|
|
71
|
+
* Uses internal signatures and signers that were previously set
|
|
72
|
+
* @returns A JSON string representation of the broadcastable message
|
|
73
|
+
*/
|
|
74
|
+
toBroadcastString(): Promise<string>;
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=baseMessage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"baseMessage.d.ts","sourceRoot":"","sources":["../../../../../src/account-lib/baseCoin/messages/baseMessage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,cAAc,EACd,mBAAmB,EACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,8BAAsB,WAAY,YAAW,QAAQ;IACnD,SAAS,CAAC,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC3C,SAAS,CAAC,IAAI,EAAE,mBAAmB,CAAC;IACpC,SAAS,CAAC,OAAO,EAAE,cAAc,CAAC;IAClC,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,CAAM;IACpC,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,CAAM;IACjC,SAAS,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5C,SAAS,CAAC,QAAQ,CAAC,EAAE,eAAe,CAAC;IAErC;;;;OAIG;IACH,SAAS,aAAa,OAAO,EAAE,cAAc;IAe7C;;OAEG;IACH,OAAO,IAAI,mBAAmB;IAI9B;;OAEG;IACH,UAAU,IAAI,cAAc;IAI5B;;OAEG;IACH,WAAW,IAAI,eAAe,GAAG,SAAS;IAI1C;;OAEG;IACH,UAAU,IAAI,MAAM,EAAE;IAItB;;;OAGG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAM/B;;;OAGG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAInC;;OAEG;IACH,aAAa,IAAI,MAAM,EAAE;IAIzB;;;OAGG;IACH,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI;IAIzC;;;OAGG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAIrC;;;OAGG;IACH,QAAQ,CAAC,kBAAkB,IAAI,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;IAEvD;;;;OAIG;IACG,iBAAiB,IAAI,OAAO,CAAC,oBAAoB,CAAC;IAqBxD;;;;OAIG;IACG,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC;CAI3C"}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BaseMessage = void 0;
|
|
4
|
+
const bitgo_1 = require("../../../bitgo");
|
|
5
|
+
class BaseMessage {
|
|
6
|
+
/**
|
|
7
|
+
* Base constructor.
|
|
8
|
+
*
|
|
9
|
+
* @param options Message options containing type, payload, metadata, etc.
|
|
10
|
+
*/
|
|
11
|
+
constructor(options) {
|
|
12
|
+
this.signatures = [];
|
|
13
|
+
this.signers = [];
|
|
14
|
+
this.coinConfig = options.coinConfig;
|
|
15
|
+
this.type = options.type || bitgo_1.MessageStandardType.UNKNOWN;
|
|
16
|
+
this.payload = options.payload || '';
|
|
17
|
+
this.signablePayload = options.signablePayload;
|
|
18
|
+
this.metadata = options.metadata || {};
|
|
19
|
+
if (options.signatures) {
|
|
20
|
+
this.signatures = [...options.signatures];
|
|
21
|
+
}
|
|
22
|
+
if (options.signers) {
|
|
23
|
+
this.signers = [...options.signers];
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Get the message type
|
|
28
|
+
*/
|
|
29
|
+
getType() {
|
|
30
|
+
return this.type;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Get the message payload
|
|
34
|
+
*/
|
|
35
|
+
getPayload() {
|
|
36
|
+
return this.payload;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Get the metadata associated with the message
|
|
40
|
+
*/
|
|
41
|
+
getMetadata() {
|
|
42
|
+
return this.metadata;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Gets all signers addresses or public keys
|
|
46
|
+
*/
|
|
47
|
+
getSigners() {
|
|
48
|
+
return [...this.signers];
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Adds a signer address or public key
|
|
52
|
+
* @param signer The address or public key of the signer
|
|
53
|
+
*/
|
|
54
|
+
addSigner(signer) {
|
|
55
|
+
if (!this.signers.includes(signer)) {
|
|
56
|
+
this.signers.push(signer);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Sets signers addresses or public keys
|
|
61
|
+
* @param signers Array of addresses or public keys
|
|
62
|
+
*/
|
|
63
|
+
setSigners(signers) {
|
|
64
|
+
this.signers = [...signers];
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Gets all signatures associated with this message
|
|
68
|
+
*/
|
|
69
|
+
getSignatures() {
|
|
70
|
+
return [...this.signatures];
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Sets signatures for this message
|
|
74
|
+
* @param signatures Array of signatures to set
|
|
75
|
+
*/
|
|
76
|
+
setSignatures(signatures) {
|
|
77
|
+
this.signatures = [...signatures];
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Adds a signature to this message
|
|
81
|
+
* @param signature The signature to add
|
|
82
|
+
*/
|
|
83
|
+
addSignature(signature) {
|
|
84
|
+
this.signatures.push(signature);
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Converts this message to a broadcastable format
|
|
88
|
+
* Uses internal signatures and signers that were previously set
|
|
89
|
+
* @returns A broadcastable message
|
|
90
|
+
*/
|
|
91
|
+
async toBroadcastFormat() {
|
|
92
|
+
if (this.signatures.length === 0) {
|
|
93
|
+
throw new Error('No signatures available for broadcast. Call setSignatures or addSignature first.');
|
|
94
|
+
}
|
|
95
|
+
if (this.signers.length === 0) {
|
|
96
|
+
throw new Error('No signers available for broadcast. Call setSigners or addSigner first.');
|
|
97
|
+
}
|
|
98
|
+
return {
|
|
99
|
+
type: this.type,
|
|
100
|
+
payload: this.payload,
|
|
101
|
+
signatures: this.signatures,
|
|
102
|
+
signers: this.signers,
|
|
103
|
+
metadata: {
|
|
104
|
+
...(this.metadata ? JSON.parse(JSON.stringify(this.metadata)) : {}), // deep copy to avoid mutation
|
|
105
|
+
},
|
|
106
|
+
signablePayload: this.signablePayload,
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Serializes the broadcastable message to a string
|
|
111
|
+
* Uses internal signatures and signers that were previously set
|
|
112
|
+
* @returns A JSON string representation of the broadcastable message
|
|
113
|
+
*/
|
|
114
|
+
async toBroadcastString() {
|
|
115
|
+
const broadcastable = await this.toBroadcastFormat();
|
|
116
|
+
return JSON.stringify(broadcastable);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
exports.BaseMessage = BaseMessage;
|
|
120
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZU1lc3NhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYWNjb3VudC1saWIvYmFzZUNvaW4vbWVzc2FnZXMvYmFzZU1lc3NhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsMENBTXdCO0FBR3hCLE1BQXNCLFdBQVc7SUFTL0I7Ozs7T0FJRztJQUNILFlBQXNCLE9BQXVCO1FBVm5DLGVBQVUsR0FBYSxFQUFFLENBQUM7UUFDMUIsWUFBTyxHQUFhLEVBQUUsQ0FBQztRQVUvQixJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUM7UUFDckMsSUFBSSxDQUFDLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxJQUFJLDJCQUFtQixDQUFDLE9BQU8sQ0FBQztRQUN4RCxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxlQUFlLEdBQUcsT0FBTyxDQUFDLGVBQWUsQ0FBQztRQUMvQyxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDO1FBRXZDLElBQUksT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM1QyxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDcEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3RDLENBQUM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxPQUFPO1FBQ0wsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ25CLENBQUM7SUFFRDs7T0FFRztJQUNILFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxVQUFVO1FBQ1IsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxTQUFTLENBQUMsTUFBYztRQUN0QixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUNuQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM1QixDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7T0FHRztJQUNILFVBQVUsQ0FBQyxPQUFpQjtRQUMxQixJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsR0FBRyxPQUFPLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxhQUFhO1FBQ1gsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxhQUFhLENBQUMsVUFBb0I7UUFDaEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLEdBQUcsVUFBVSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVEOzs7T0FHRztJQUNILFlBQVksQ0FBQyxTQUFpQjtRQUM1QixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBUUQ7Ozs7T0FJRztJQUNILEtBQUssQ0FBQyxpQkFBaUI7UUFDckIsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNqQyxNQUFNLElBQUksS0FBSyxDQUFDLGtGQUFrRixDQUFDLENBQUM7UUFDdEcsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDOUIsTUFBTSxJQUFJLEtBQUssQ0FBQyx5RUFBeUUsQ0FBQyxDQUFDO1FBQzdGLENBQUM7UUFFRCxPQUFPO1lBQ0wsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQ3JCLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtZQUMzQixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsUUFBUSxFQUFFO2dCQUNSLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLDhCQUE4QjthQUNwRztZQUNELGVBQWUsRUFBRSxJQUFJLENBQUMsZUFBZTtTQUN0QyxDQUFDO0lBQ0osQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxLQUFLLENBQUMsaUJBQWlCO1FBQ3JCLE1BQU0sYUFBYSxHQUFHLE1BQU0sSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDckQsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7Q0FDRjtBQTNJRCxrQ0EySUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IHtcbiAgQnJvYWRjYXN0YWJsZU1lc3NhZ2UsXG4gIE1lc3NhZ2VNZXRhZGF0YSxcbiAgTWVzc2FnZU9wdGlvbnMsXG4gIE1lc3NhZ2VQYXlsb2FkLFxuICBNZXNzYWdlU3RhbmRhcmRUeXBlLFxufSBmcm9tICcuLi8uLi8uLi9iaXRnbyc7XG5pbXBvcnQgeyBJTWVzc2FnZSB9IGZyb20gJy4vaWZhY2UnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZU1lc3NhZ2UgaW1wbGVtZW50cyBJTWVzc2FnZSB7XG4gIHByb3RlY3RlZCBjb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPjtcbiAgcHJvdGVjdGVkIHR5cGU6IE1lc3NhZ2VTdGFuZGFyZFR5cGU7XG4gIHByb3RlY3RlZCBwYXlsb2FkOiBNZXNzYWdlUGF5bG9hZDtcbiAgcHJvdGVjdGVkIHNpZ25hdHVyZXM6IHN0cmluZ1tdID0gW107XG4gIHByb3RlY3RlZCBzaWduZXJzOiBzdHJpbmdbXSA9IFtdO1xuICBwcm90ZWN0ZWQgc2lnbmFibGVQYXlsb2FkPzogc3RyaW5nIHwgQnVmZmVyO1xuICBwcm90ZWN0ZWQgbWV0YWRhdGE/OiBNZXNzYWdlTWV0YWRhdGE7XG5cbiAgLyoqXG4gICAqIEJhc2UgY29uc3RydWN0b3IuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIE1lc3NhZ2Ugb3B0aW9ucyBjb250YWluaW5nIHR5cGUsIHBheWxvYWQsIG1ldGFkYXRhLCBldGMuXG4gICAqL1xuICBwcm90ZWN0ZWQgY29uc3RydWN0b3Iob3B0aW9uczogTWVzc2FnZU9wdGlvbnMpIHtcbiAgICB0aGlzLmNvaW5Db25maWcgPSBvcHRpb25zLmNvaW5Db25maWc7XG4gICAgdGhpcy50eXBlID0gb3B0aW9ucy50eXBlIHx8IE1lc3NhZ2VTdGFuZGFyZFR5cGUuVU5LTk9XTjtcbiAgICB0aGlzLnBheWxvYWQgPSBvcHRpb25zLnBheWxvYWQgfHwgJyc7XG4gICAgdGhpcy5zaWduYWJsZVBheWxvYWQgPSBvcHRpb25zLnNpZ25hYmxlUGF5bG9hZDtcbiAgICB0aGlzLm1ldGFkYXRhID0gb3B0aW9ucy5tZXRhZGF0YSB8fCB7fTtcblxuICAgIGlmIChvcHRpb25zLnNpZ25hdHVyZXMpIHtcbiAgICAgIHRoaXMuc2lnbmF0dXJlcyA9IFsuLi5vcHRpb25zLnNpZ25hdHVyZXNdO1xuICAgIH1cbiAgICBpZiAob3B0aW9ucy5zaWduZXJzKSB7XG4gICAgICB0aGlzLnNpZ25lcnMgPSBbLi4ub3B0aW9ucy5zaWduZXJzXTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSBtZXNzYWdlIHR5cGVcbiAgICovXG4gIGdldFR5cGUoKTogTWVzc2FnZVN0YW5kYXJkVHlwZSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIG1lc3NhZ2UgcGF5bG9hZFxuICAgKi9cbiAgZ2V0UGF5bG9hZCgpOiBNZXNzYWdlUGF5bG9hZCB7XG4gICAgcmV0dXJuIHRoaXMucGF5bG9hZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIG1ldGFkYXRhIGFzc29jaWF0ZWQgd2l0aCB0aGUgbWVzc2FnZVxuICAgKi9cbiAgZ2V0TWV0YWRhdGEoKTogTWVzc2FnZU1ldGFkYXRhIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5tZXRhZGF0YTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIGFsbCBzaWduZXJzIGFkZHJlc3NlcyBvciBwdWJsaWMga2V5c1xuICAgKi9cbiAgZ2V0U2lnbmVycygpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIFsuLi50aGlzLnNpZ25lcnNdO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBzaWduZXIgYWRkcmVzcyBvciBwdWJsaWMga2V5XG4gICAqIEBwYXJhbSBzaWduZXIgVGhlIGFkZHJlc3Mgb3IgcHVibGljIGtleSBvZiB0aGUgc2lnbmVyXG4gICAqL1xuICBhZGRTaWduZXIoc2lnbmVyOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuc2lnbmVycy5pbmNsdWRlcyhzaWduZXIpKSB7XG4gICAgICB0aGlzLnNpZ25lcnMucHVzaChzaWduZXIpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHNpZ25lcnMgYWRkcmVzc2VzIG9yIHB1YmxpYyBrZXlzXG4gICAqIEBwYXJhbSBzaWduZXJzIEFycmF5IG9mIGFkZHJlc3NlcyBvciBwdWJsaWMga2V5c1xuICAgKi9cbiAgc2V0U2lnbmVycyhzaWduZXJzOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgIHRoaXMuc2lnbmVycyA9IFsuLi5zaWduZXJzXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIGFsbCBzaWduYXR1cmVzIGFzc29jaWF0ZWQgd2l0aCB0aGlzIG1lc3NhZ2VcbiAgICovXG4gIGdldFNpZ25hdHVyZXMoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiBbLi4udGhpcy5zaWduYXR1cmVzXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHNpZ25hdHVyZXMgZm9yIHRoaXMgbWVzc2FnZVxuICAgKiBAcGFyYW0gc2lnbmF0dXJlcyBBcnJheSBvZiBzaWduYXR1cmVzIHRvIHNldFxuICAgKi9cbiAgc2V0U2lnbmF0dXJlcyhzaWduYXR1cmVzOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgIHRoaXMuc2lnbmF0dXJlcyA9IFsuLi5zaWduYXR1cmVzXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgc2lnbmF0dXJlIHRvIHRoaXMgbWVzc2FnZVxuICAgKiBAcGFyYW0gc2lnbmF0dXJlIFRoZSBzaWduYXR1cmUgdG8gYWRkXG4gICAqL1xuICBhZGRTaWduYXR1cmUoc2lnbmF0dXJlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnNpZ25hdHVyZXMucHVzaChzaWduYXR1cmUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHBheWxvYWQgdGhhdCBzaG91bGQgYmUgc2lnbmVkXG4gICAqIEVhY2ggbWVzc2FnZSBzdGFuZGFyZCBtdXN0IGltcGxlbWVudCB0aGlzIG1ldGhvZFxuICAgKi9cbiAgYWJzdHJhY3QgZ2V0U2lnbmFibGVQYXlsb2FkKCk6IFByb21pc2U8c3RyaW5nIHwgQnVmZmVyPjtcblxuICAvKipcbiAgICogQ29udmVydHMgdGhpcyBtZXNzYWdlIHRvIGEgYnJvYWRjYXN0YWJsZSBmb3JtYXRcbiAgICogVXNlcyBpbnRlcm5hbCBzaWduYXR1cmVzIGFuZCBzaWduZXJzIHRoYXQgd2VyZSBwcmV2aW91c2x5IHNldFxuICAgKiBAcmV0dXJucyBBIGJyb2FkY2FzdGFibGUgbWVzc2FnZVxuICAgKi9cbiAgYXN5bmMgdG9Ccm9hZGNhc3RGb3JtYXQoKTogUHJvbWlzZTxCcm9hZGNhc3RhYmxlTWVzc2FnZT4ge1xuICAgIGlmICh0aGlzLnNpZ25hdHVyZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIHNpZ25hdHVyZXMgYXZhaWxhYmxlIGZvciBicm9hZGNhc3QuIENhbGwgc2V0U2lnbmF0dXJlcyBvciBhZGRTaWduYXR1cmUgZmlyc3QuJyk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuc2lnbmVycy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTm8gc2lnbmVycyBhdmFpbGFibGUgZm9yIGJyb2FkY2FzdC4gQ2FsbCBzZXRTaWduZXJzIG9yIGFkZFNpZ25lciBmaXJzdC4nKTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgdHlwZTogdGhpcy50eXBlLFxuICAgICAgcGF5bG9hZDogdGhpcy5wYXlsb2FkLFxuICAgICAgc2lnbmF0dXJlczogdGhpcy5zaWduYXR1cmVzLFxuICAgICAgc2lnbmVyczogdGhpcy5zaWduZXJzLFxuICAgICAgbWV0YWRhdGE6IHtcbiAgICAgICAgLi4uKHRoaXMubWV0YWRhdGEgPyBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHRoaXMubWV0YWRhdGEpKSA6IHt9KSwgLy8gZGVlcCBjb3B5IHRvIGF2b2lkIG11dGF0aW9uXG4gICAgICB9LFxuICAgICAgc2lnbmFibGVQYXlsb2FkOiB0aGlzLnNpZ25hYmxlUGF5bG9hZCxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIFNlcmlhbGl6ZXMgdGhlIGJyb2FkY2FzdGFibGUgbWVzc2FnZSB0byBhIHN0cmluZ1xuICAgKiBVc2VzIGludGVybmFsIHNpZ25hdHVyZXMgYW5kIHNpZ25lcnMgdGhhdCB3ZXJlIHByZXZpb3VzbHkgc2V0XG4gICAqIEByZXR1cm5zIEEgSlNPTiBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIGJyb2FkY2FzdGFibGUgbWVzc2FnZVxuICAgKi9cbiAgYXN5bmMgdG9Ccm9hZGNhc3RTdHJpbmcoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBjb25zdCBicm9hZGNhc3RhYmxlID0gYXdhaXQgdGhpcy50b0Jyb2FkY2FzdEZvcm1hdCgpO1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeShicm9hZGNhc3RhYmxlKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { BroadcastableMessage, MessagePayload, MessageStandardType } from '../../../bitgo';
|
|
2
|
+
import { BaseCoin as CoinConfig } from '@bitgo/statics';
|
|
3
|
+
import { IMessage, IMessageBuilder } from './iface';
|
|
4
|
+
/**
|
|
5
|
+
* Base Message Builder
|
|
6
|
+
*/
|
|
7
|
+
export declare abstract class BaseMessageBuilder implements IMessageBuilder {
|
|
8
|
+
protected coinConfig: Readonly<CoinConfig>;
|
|
9
|
+
protected payload: MessagePayload;
|
|
10
|
+
protected type: MessageStandardType;
|
|
11
|
+
protected signatures: string[];
|
|
12
|
+
protected signers: string[];
|
|
13
|
+
protected metadata?: Record<string, unknown>;
|
|
14
|
+
protected digest?: string;
|
|
15
|
+
/**
|
|
16
|
+
* Base constructor.
|
|
17
|
+
* @param coinConfig BaseCoin from statics library
|
|
18
|
+
* @param messageType The type of message this builder creates, defaults to UNKNOWN
|
|
19
|
+
*/
|
|
20
|
+
protected constructor(coinConfig: Readonly<CoinConfig>, messageType?: MessageStandardType);
|
|
21
|
+
/**
|
|
22
|
+
* Sets the message payload to be used when building the message
|
|
23
|
+
* @param payload The message payload (string, JSON, etc.)
|
|
24
|
+
* @returns The builder instance for chaining
|
|
25
|
+
*/
|
|
26
|
+
setPayload(payload: MessagePayload): IMessageBuilder;
|
|
27
|
+
/**
|
|
28
|
+
* Sets metadata for the message
|
|
29
|
+
* @param metadata Additional metadata for the message
|
|
30
|
+
* @returns The builder instance for chaining
|
|
31
|
+
*/
|
|
32
|
+
setMetadata(metadata: Record<string, unknown>): IMessageBuilder;
|
|
33
|
+
/**
|
|
34
|
+
* Gets the current message payload
|
|
35
|
+
* @returns The current message payload
|
|
36
|
+
*/
|
|
37
|
+
getPayload(): MessagePayload | undefined;
|
|
38
|
+
/**
|
|
39
|
+
* Gets the current metadata
|
|
40
|
+
* @returns The current metadata
|
|
41
|
+
*/
|
|
42
|
+
getMetadata(): Record<string, unknown> | undefined;
|
|
43
|
+
getType(): MessageStandardType;
|
|
44
|
+
setType(value: MessageStandardType): IMessageBuilder;
|
|
45
|
+
getSignatures(): string[];
|
|
46
|
+
setSignatures(value: string[]): IMessageBuilder;
|
|
47
|
+
addSignature(signature: string): IMessageBuilder;
|
|
48
|
+
getSigners(): string[];
|
|
49
|
+
setSigners(value: string[]): IMessageBuilder;
|
|
50
|
+
addSigner(signer: string): IMessageBuilder;
|
|
51
|
+
getDigest(): string | undefined;
|
|
52
|
+
setDigest(value: string): IMessageBuilder;
|
|
53
|
+
/**
|
|
54
|
+
* Builds a message using the previously set payload and metadata
|
|
55
|
+
* This abstract method must be implemented by each specific builder
|
|
56
|
+
* @returns A Promise resolving to the built IMessage
|
|
57
|
+
*/
|
|
58
|
+
abstract build(): Promise<IMessage>;
|
|
59
|
+
/**
|
|
60
|
+
* Parse a broadcastable message back into a message
|
|
61
|
+
* @param broadcastMessage The broadcastable message to parse
|
|
62
|
+
* @returns The parsed message
|
|
63
|
+
*/
|
|
64
|
+
abstract fromBroadcastFormat(broadcastMessage: BroadcastableMessage): Promise<IMessage>;
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=baseMessageBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"baseMessageBuilder.d.ts","sourceRoot":"","sources":["../../../../../src/account-lib/baseCoin/messages/baseMessageBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC3F,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAEpD;;GAEG;AACH,8BAAsB,kBAAmB,YAAW,eAAe;IACjE,SAAS,CAAC,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC3C,SAAS,CAAC,OAAO,EAAE,cAAc,CAAM;IACvC,SAAS,CAAC,IAAI,EAAE,mBAAmB,CAAC;IACpC,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,CAAM;IACpC,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,CAAM;IACjC,SAAS,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAM;IAClD,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;OAIG;IACH,SAAS,aACP,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC,EAChC,WAAW,GAAE,mBAAiD;IAMhE;;;;OAIG;IACI,UAAU,CAAC,OAAO,EAAE,cAAc,GAAG,eAAe;IAK3D;;;;OAIG;IACI,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,eAAe;IAKtE;;;OAGG;IACI,UAAU,IAAI,cAAc,GAAG,SAAS;IAI/C;;;OAGG;IACI,WAAW,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;IAIlD,OAAO,IAAI,mBAAmB;IAI9B,OAAO,CAAC,KAAK,EAAE,mBAAmB,GAAG,eAAe;IAKpD,aAAa,IAAI,MAAM,EAAE;IAIzB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,eAAe;IAK/C,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,eAAe;IAOhD,UAAU,IAAI,MAAM,EAAE;IAItB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,eAAe;IAK5C,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,eAAe;IAO1C,SAAS,IAAI,MAAM,GAAG,SAAS;IAI/B,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe;IAKhD;;;;OAIG;IACH,QAAQ,CAAC,KAAK,IAAI,OAAO,CAAC,QAAQ,CAAC;IAEnC;;;;OAIG;IACH,QAAQ,CAAC,mBAAmB,CAAC,gBAAgB,EAAE,oBAAoB,GAAG,OAAO,CAAC,QAAQ,CAAC;CACxF"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BaseMessageBuilder = void 0;
|
|
4
|
+
const bitgo_1 = require("../../../bitgo");
|
|
5
|
+
/**
|
|
6
|
+
* Base Message Builder
|
|
7
|
+
*/
|
|
8
|
+
class BaseMessageBuilder {
|
|
9
|
+
/**
|
|
10
|
+
* Base constructor.
|
|
11
|
+
* @param coinConfig BaseCoin from statics library
|
|
12
|
+
* @param messageType The type of message this builder creates, defaults to UNKNOWN
|
|
13
|
+
*/
|
|
14
|
+
constructor(coinConfig, messageType = bitgo_1.MessageStandardType.UNKNOWN) {
|
|
15
|
+
this.payload = '';
|
|
16
|
+
this.signatures = [];
|
|
17
|
+
this.signers = [];
|
|
18
|
+
this.metadata = {};
|
|
19
|
+
this.coinConfig = coinConfig;
|
|
20
|
+
this.type = messageType;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Sets the message payload to be used when building the message
|
|
24
|
+
* @param payload The message payload (string, JSON, etc.)
|
|
25
|
+
* @returns The builder instance for chaining
|
|
26
|
+
*/
|
|
27
|
+
setPayload(payload) {
|
|
28
|
+
this.payload = payload;
|
|
29
|
+
return this;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Sets metadata for the message
|
|
33
|
+
* @param metadata Additional metadata for the message
|
|
34
|
+
* @returns The builder instance for chaining
|
|
35
|
+
*/
|
|
36
|
+
setMetadata(metadata) {
|
|
37
|
+
this.metadata = metadata;
|
|
38
|
+
return this;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Gets the current message payload
|
|
42
|
+
* @returns The current message payload
|
|
43
|
+
*/
|
|
44
|
+
getPayload() {
|
|
45
|
+
return this.payload;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Gets the current metadata
|
|
49
|
+
* @returns The current metadata
|
|
50
|
+
*/
|
|
51
|
+
getMetadata() {
|
|
52
|
+
return this.metadata;
|
|
53
|
+
}
|
|
54
|
+
getType() {
|
|
55
|
+
return this.type;
|
|
56
|
+
}
|
|
57
|
+
setType(value) {
|
|
58
|
+
this.type = value;
|
|
59
|
+
return this;
|
|
60
|
+
}
|
|
61
|
+
getSignatures() {
|
|
62
|
+
return this.signatures;
|
|
63
|
+
}
|
|
64
|
+
setSignatures(value) {
|
|
65
|
+
this.signatures = value;
|
|
66
|
+
return this;
|
|
67
|
+
}
|
|
68
|
+
addSignature(signature) {
|
|
69
|
+
if (!this.signatures.includes(signature)) {
|
|
70
|
+
this.signatures.push(signature);
|
|
71
|
+
}
|
|
72
|
+
return this;
|
|
73
|
+
}
|
|
74
|
+
getSigners() {
|
|
75
|
+
return this.signers;
|
|
76
|
+
}
|
|
77
|
+
setSigners(value) {
|
|
78
|
+
this.signers = value;
|
|
79
|
+
return this;
|
|
80
|
+
}
|
|
81
|
+
addSigner(signer) {
|
|
82
|
+
if (!this.signers.includes(signer)) {
|
|
83
|
+
this.signers.push(signer);
|
|
84
|
+
}
|
|
85
|
+
return this;
|
|
86
|
+
}
|
|
87
|
+
getDigest() {
|
|
88
|
+
return this.digest;
|
|
89
|
+
}
|
|
90
|
+
setDigest(value) {
|
|
91
|
+
this.digest = value;
|
|
92
|
+
return this;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
exports.BaseMessageBuilder = BaseMessageBuilder;
|
|
96
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZU1lc3NhZ2VCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FjY291bnQtbGliL2Jhc2VDb2luL21lc3NhZ2VzL2Jhc2VNZXNzYWdlQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwwQ0FBMkY7QUFJM0Y7O0dBRUc7QUFDSCxNQUFzQixrQkFBa0I7SUFTdEM7Ozs7T0FJRztJQUNILFlBQ0UsVUFBZ0MsRUFDaEMsY0FBbUMsMkJBQW1CLENBQUMsT0FBTztRQWR0RCxZQUFPLEdBQW1CLEVBQUUsQ0FBQztRQUU3QixlQUFVLEdBQWEsRUFBRSxDQUFDO1FBQzFCLFlBQU8sR0FBYSxFQUFFLENBQUM7UUFDdkIsYUFBUSxHQUE2QixFQUFFLENBQUM7UUFZaEQsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFDN0IsSUFBSSxDQUFDLElBQUksR0FBRyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxVQUFVLENBQUMsT0FBdUI7UUFDdkMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLFdBQVcsQ0FBQyxRQUFpQztRQUNsRCxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN6QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7O09BR0c7SUFDSSxVQUFVO1FBQ2YsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFFRDs7O09BR0c7SUFDSSxXQUFXO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRU0sT0FBTztRQUNaLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDO0lBRU0sT0FBTyxDQUFDLEtBQTBCO1FBQ3ZDLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLGFBQWE7UUFDbEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxhQUFhLENBQUMsS0FBZTtRQUNsQyxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUN4QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTSxZQUFZLENBQUMsU0FBaUI7UUFDbkMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7WUFDekMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDbEMsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLFVBQVU7UUFDZixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVNLFVBQVUsQ0FBQyxLQUFlO1FBQy9CLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLFNBQVMsQ0FBQyxNQUFjO1FBQzdCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1lBQ25DLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzVCLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTSxTQUFTO1FBQ2QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFFTSxTQUFTLENBQUMsS0FBYTtRQUM1QixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7Q0FlRjtBQXpIRCxnREF5SEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCcm9hZGNhc3RhYmxlTWVzc2FnZSwgTWVzc2FnZVBheWxvYWQsIE1lc3NhZ2VTdGFuZGFyZFR5cGUgfSBmcm9tICcuLi8uLi8uLi9iaXRnbyc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IHsgSU1lc3NhZ2UsIElNZXNzYWdlQnVpbGRlciB9IGZyb20gJy4vaWZhY2UnO1xuXG4vKipcbiAqIEJhc2UgTWVzc2FnZSBCdWlsZGVyXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlTWVzc2FnZUJ1aWxkZXIgaW1wbGVtZW50cyBJTWVzc2FnZUJ1aWxkZXIge1xuICBwcm90ZWN0ZWQgY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz47XG4gIHByb3RlY3RlZCBwYXlsb2FkOiBNZXNzYWdlUGF5bG9hZCA9ICcnO1xuICBwcm90ZWN0ZWQgdHlwZTogTWVzc2FnZVN0YW5kYXJkVHlwZTtcbiAgcHJvdGVjdGVkIHNpZ25hdHVyZXM6IHN0cmluZ1tdID0gW107XG4gIHByb3RlY3RlZCBzaWduZXJzOiBzdHJpbmdbXSA9IFtdO1xuICBwcm90ZWN0ZWQgbWV0YWRhdGE/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IHt9O1xuICBwcm90ZWN0ZWQgZGlnZXN0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBCYXNlIGNvbnN0cnVjdG9yLlxuICAgKiBAcGFyYW0gY29pbkNvbmZpZyBCYXNlQ29pbiBmcm9tIHN0YXRpY3MgbGlicmFyeVxuICAgKiBAcGFyYW0gbWVzc2FnZVR5cGUgVGhlIHR5cGUgb2YgbWVzc2FnZSB0aGlzIGJ1aWxkZXIgY3JlYXRlcywgZGVmYXVsdHMgdG8gVU5LTk9XTlxuICAgKi9cbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKFxuICAgIGNvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+LFxuICAgIG1lc3NhZ2VUeXBlOiBNZXNzYWdlU3RhbmRhcmRUeXBlID0gTWVzc2FnZVN0YW5kYXJkVHlwZS5VTktOT1dOXG4gICkge1xuICAgIHRoaXMuY29pbkNvbmZpZyA9IGNvaW5Db25maWc7XG4gICAgdGhpcy50eXBlID0gbWVzc2FnZVR5cGU7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgbWVzc2FnZSBwYXlsb2FkIHRvIGJlIHVzZWQgd2hlbiBidWlsZGluZyB0aGUgbWVzc2FnZVxuICAgKiBAcGFyYW0gcGF5bG9hZCBUaGUgbWVzc2FnZSBwYXlsb2FkIChzdHJpbmcsIEpTT04sIGV0Yy4pXG4gICAqIEByZXR1cm5zIFRoZSBidWlsZGVyIGluc3RhbmNlIGZvciBjaGFpbmluZ1xuICAgKi9cbiAgcHVibGljIHNldFBheWxvYWQocGF5bG9hZDogTWVzc2FnZVBheWxvYWQpOiBJTWVzc2FnZUJ1aWxkZXIge1xuICAgIHRoaXMucGF5bG9hZCA9IHBheWxvYWQ7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyBtZXRhZGF0YSBmb3IgdGhlIG1lc3NhZ2VcbiAgICogQHBhcmFtIG1ldGFkYXRhIEFkZGl0aW9uYWwgbWV0YWRhdGEgZm9yIHRoZSBtZXNzYWdlXG4gICAqIEByZXR1cm5zIFRoZSBidWlsZGVyIGluc3RhbmNlIGZvciBjaGFpbmluZ1xuICAgKi9cbiAgcHVibGljIHNldE1ldGFkYXRhKG1ldGFkYXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPik6IElNZXNzYWdlQnVpbGRlciB7XG4gICAgdGhpcy5tZXRhZGF0YSA9IG1ldGFkYXRhO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGN1cnJlbnQgbWVzc2FnZSBwYXlsb2FkXG4gICAqIEByZXR1cm5zIFRoZSBjdXJyZW50IG1lc3NhZ2UgcGF5bG9hZFxuICAgKi9cbiAgcHVibGljIGdldFBheWxvYWQoKTogTWVzc2FnZVBheWxvYWQgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLnBheWxvYWQ7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgY3VycmVudCBtZXRhZGF0YVxuICAgKiBAcmV0dXJucyBUaGUgY3VycmVudCBtZXRhZGF0YVxuICAgKi9cbiAgcHVibGljIGdldE1ldGFkYXRhKCk6IFJlY29yZDxzdHJpbmcsIHVua25vd24+IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5tZXRhZGF0YTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRUeXBlKCk6IE1lc3NhZ2VTdGFuZGFyZFR5cGUge1xuICAgIHJldHVybiB0aGlzLnR5cGU7XG4gIH1cblxuICBwdWJsaWMgc2V0VHlwZSh2YWx1ZTogTWVzc2FnZVN0YW5kYXJkVHlwZSk6IElNZXNzYWdlQnVpbGRlciB7XG4gICAgdGhpcy50eXBlID0gdmFsdWU7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgZ2V0U2lnbmF0dXJlcygpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIHRoaXMuc2lnbmF0dXJlcztcbiAgfVxuXG4gIHB1YmxpYyBzZXRTaWduYXR1cmVzKHZhbHVlOiBzdHJpbmdbXSk6IElNZXNzYWdlQnVpbGRlciB7XG4gICAgdGhpcy5zaWduYXR1cmVzID0gdmFsdWU7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgYWRkU2lnbmF0dXJlKHNpZ25hdHVyZTogc3RyaW5nKTogSU1lc3NhZ2VCdWlsZGVyIHtcbiAgICBpZiAoIXRoaXMuc2lnbmF0dXJlcy5pbmNsdWRlcyhzaWduYXR1cmUpKSB7XG4gICAgICB0aGlzLnNpZ25hdHVyZXMucHVzaChzaWduYXR1cmUpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHB1YmxpYyBnZXRTaWduZXJzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gdGhpcy5zaWduZXJzO1xuICB9XG5cbiAgcHVibGljIHNldFNpZ25lcnModmFsdWU6IHN0cmluZ1tdKTogSU1lc3NhZ2VCdWlsZGVyIHtcbiAgICB0aGlzLnNpZ25lcnMgPSB2YWx1ZTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHB1YmxpYyBhZGRTaWduZXIoc2lnbmVyOiBzdHJpbmcpOiBJTWVzc2FnZUJ1aWxkZXIge1xuICAgIGlmICghdGhpcy5zaWduZXJzLmluY2x1ZGVzKHNpZ25lcikpIHtcbiAgICAgIHRoaXMuc2lnbmVycy5wdXNoKHNpZ25lcik7XG4gICAgfVxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHVibGljIGdldERpZ2VzdCgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmRpZ2VzdDtcbiAgfVxuXG4gIHB1YmxpYyBzZXREaWdlc3QodmFsdWU6IHN0cmluZyk6IElNZXNzYWdlQnVpbGRlciB7XG4gICAgdGhpcy5kaWdlc3QgPSB2YWx1ZTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZHMgYSBtZXNzYWdlIHVzaW5nIHRoZSBwcmV2aW91c2x5IHNldCBwYXlsb2FkIGFuZCBtZXRhZGF0YVxuICAgKiBUaGlzIGFic3RyYWN0IG1ldGhvZCBtdXN0IGJlIGltcGxlbWVudGVkIGJ5IGVhY2ggc3BlY2lmaWMgYnVpbGRlclxuICAgKiBAcmV0dXJucyBBIFByb21pc2UgcmVzb2x2aW5nIHRvIHRoZSBidWlsdCBJTWVzc2FnZVxuICAgKi9cbiAgYWJzdHJhY3QgYnVpbGQoKTogUHJvbWlzZTxJTWVzc2FnZT47XG5cbiAgLyoqXG4gICAqIFBhcnNlIGEgYnJvYWRjYXN0YWJsZSBtZXNzYWdlIGJhY2sgaW50byBhIG1lc3NhZ2VcbiAgICogQHBhcmFtIGJyb2FkY2FzdE1lc3NhZ2UgVGhlIGJyb2FkY2FzdGFibGUgbWVzc2FnZSB0byBwYXJzZVxuICAgKiBAcmV0dXJucyBUaGUgcGFyc2VkIG1lc3NhZ2VcbiAgICovXG4gIGFic3RyYWN0IGZyb21Ccm9hZGNhc3RGb3JtYXQoYnJvYWRjYXN0TWVzc2FnZTogQnJvYWRjYXN0YWJsZU1lc3NhZ2UpOiBQcm9taXNlPElNZXNzYWdlPjtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { BaseCoin as CoinConfig } from '@bitgo/statics';
|
|
2
|
+
import { IMessageBuilder, IMessageBuilderFactory } from './iface';
|
|
3
|
+
import { BroadcastableMessage, MessageStandardType } from '../../../bitgo';
|
|
4
|
+
/**
|
|
5
|
+
* Base Message Builder
|
|
6
|
+
*/
|
|
7
|
+
export declare abstract class BaseMessageBuilderFactory implements IMessageBuilderFactory {
|
|
8
|
+
protected coinConfig: Readonly<CoinConfig>;
|
|
9
|
+
/**
|
|
10
|
+
* Base constructor.
|
|
11
|
+
* @param coinConfig BaseCoin from statics library
|
|
12
|
+
*/
|
|
13
|
+
protected constructor(coinConfig: Readonly<CoinConfig>);
|
|
14
|
+
/**
|
|
15
|
+
* Gets a message builder for the specified message type
|
|
16
|
+
* @param type The type of message to build
|
|
17
|
+
* @returns A message builder instance for the specified type
|
|
18
|
+
*/
|
|
19
|
+
abstract getMessageBuilder(type: MessageStandardType): IMessageBuilder;
|
|
20
|
+
/**
|
|
21
|
+
* Gets a message builder from a broadcastable message
|
|
22
|
+
* @param broadcastMessage The broadcastable message
|
|
23
|
+
* @returns A message builder instance for the broadcastable message type
|
|
24
|
+
*/
|
|
25
|
+
fromBroadcastFormat(broadcastMessage: BroadcastableMessage): IMessageBuilder;
|
|
26
|
+
/**
|
|
27
|
+
* Parses a broadcastable message and gets the message builder based on the message type.
|
|
28
|
+
* @param broadcastString The broadcastable message to parse
|
|
29
|
+
* @returns A message builder instance for the parsed broadcastable message type
|
|
30
|
+
*/
|
|
31
|
+
fromBroadcastString(broadcastString: string): IMessageBuilder;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=baseMessageBuilderFactory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"baseMessageBuilderFactory.d.ts","sourceRoot":"","sources":["../../../../../src/account-lib/baseCoin/messages/baseMessageBuilderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAE3E;;GAEG;AACH,8BAAsB,yBAA0B,YAAW,sBAAsB;IAC/E,SAAS,CAAC,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;IAE3C;;;OAGG;IACH,SAAS,aAAa,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC;IAItD;;;;OAIG;aACa,iBAAiB,CAAC,IAAI,EAAE,mBAAmB,GAAG,eAAe;IAE7E;;;;OAIG;IACH,mBAAmB,CAAC,gBAAgB,EAAE,oBAAoB,GAAG,eAAe;IAI5E;;;;OAIG;IACH,mBAAmB,CAAC,eAAe,EAAE,MAAM,GAAG,eAAe;CAI9D"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BaseMessageBuilderFactory = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Base Message Builder
|
|
6
|
+
*/
|
|
7
|
+
class BaseMessageBuilderFactory {
|
|
8
|
+
/**
|
|
9
|
+
* Base constructor.
|
|
10
|
+
* @param coinConfig BaseCoin from statics library
|
|
11
|
+
*/
|
|
12
|
+
constructor(coinConfig) {
|
|
13
|
+
this.coinConfig = coinConfig;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Gets a message builder from a broadcastable message
|
|
17
|
+
* @param broadcastMessage The broadcastable message
|
|
18
|
+
* @returns A message builder instance for the broadcastable message type
|
|
19
|
+
*/
|
|
20
|
+
fromBroadcastFormat(broadcastMessage) {
|
|
21
|
+
return this.getMessageBuilder(broadcastMessage.type);
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Parses a broadcastable message and gets the message builder based on the message type.
|
|
25
|
+
* @param broadcastString The broadcastable message to parse
|
|
26
|
+
* @returns A message builder instance for the parsed broadcastable message type
|
|
27
|
+
*/
|
|
28
|
+
fromBroadcastString(broadcastString) {
|
|
29
|
+
const broadcastMessage = JSON.parse(broadcastString);
|
|
30
|
+
return this.fromBroadcastFormat(broadcastMessage);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
exports.BaseMessageBuilderFactory = BaseMessageBuilderFactory;
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZU1lc3NhZ2VCdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hY2NvdW50LWxpYi9iYXNlQ29pbi9tZXNzYWdlcy9iYXNlTWVzc2FnZUJ1aWxkZXJGYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUlBOztHQUVHO0FBQ0gsTUFBc0IseUJBQXlCO0lBRzdDOzs7T0FHRztJQUNILFlBQXNCLFVBQWdDO1FBQ3BELElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO0lBQy9CLENBQUM7SUFTRDs7OztPQUlHO0lBQ0gsbUJBQW1CLENBQUMsZ0JBQXNDO1FBQ3hELE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsbUJBQW1CLENBQUMsZUFBdUI7UUFDekMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBeUIsQ0FBQztRQUM3RSxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3BELENBQUM7Q0FDRjtBQXBDRCw4REFvQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IHsgSU1lc3NhZ2VCdWlsZGVyLCBJTWVzc2FnZUJ1aWxkZXJGYWN0b3J5IH0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBCcm9hZGNhc3RhYmxlTWVzc2FnZSwgTWVzc2FnZVN0YW5kYXJkVHlwZSB9IGZyb20gJy4uLy4uLy4uL2JpdGdvJztcblxuLyoqXG4gKiBCYXNlIE1lc3NhZ2UgQnVpbGRlclxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZU1lc3NhZ2VCdWlsZGVyRmFjdG9yeSBpbXBsZW1lbnRzIElNZXNzYWdlQnVpbGRlckZhY3Rvcnkge1xuICBwcm90ZWN0ZWQgY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz47XG5cbiAgLyoqXG4gICAqIEJhc2UgY29uc3RydWN0b3IuXG4gICAqIEBwYXJhbSBjb2luQ29uZmlnIEJhc2VDb2luIGZyb20gc3RhdGljcyBsaWJyYXJ5XG4gICAqL1xuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICB0aGlzLmNvaW5Db25maWcgPSBjb2luQ29uZmlnO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgYSBtZXNzYWdlIGJ1aWxkZXIgZm9yIHRoZSBzcGVjaWZpZWQgbWVzc2FnZSB0eXBlXG4gICAqIEBwYXJhbSB0eXBlIFRoZSB0eXBlIG9mIG1lc3NhZ2UgdG8gYnVpbGRcbiAgICogQHJldHVybnMgQSBtZXNzYWdlIGJ1aWxkZXIgaW5zdGFuY2UgZm9yIHRoZSBzcGVjaWZpZWQgdHlwZVxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGdldE1lc3NhZ2VCdWlsZGVyKHR5cGU6IE1lc3NhZ2VTdGFuZGFyZFR5cGUpOiBJTWVzc2FnZUJ1aWxkZXI7XG5cbiAgLyoqXG4gICAqIEdldHMgYSBtZXNzYWdlIGJ1aWxkZXIgZnJvbSBhIGJyb2FkY2FzdGFibGUgbWVzc2FnZVxuICAgKiBAcGFyYW0gYnJvYWRjYXN0TWVzc2FnZSBUaGUgYnJvYWRjYXN0YWJsZSBtZXNzYWdlXG4gICAqIEByZXR1cm5zIEEgbWVzc2FnZSBidWlsZGVyIGluc3RhbmNlIGZvciB0aGUgYnJvYWRjYXN0YWJsZSBtZXNzYWdlIHR5cGVcbiAgICovXG4gIGZyb21Ccm9hZGNhc3RGb3JtYXQoYnJvYWRjYXN0TWVzc2FnZTogQnJvYWRjYXN0YWJsZU1lc3NhZ2UpOiBJTWVzc2FnZUJ1aWxkZXIge1xuICAgIHJldHVybiB0aGlzLmdldE1lc3NhZ2VCdWlsZGVyKGJyb2FkY2FzdE1lc3NhZ2UudHlwZSk7XG4gIH1cblxuICAvKipcbiAgICogUGFyc2VzIGEgYnJvYWRjYXN0YWJsZSBtZXNzYWdlIGFuZCBnZXRzIHRoZSBtZXNzYWdlIGJ1aWxkZXIgYmFzZWQgb24gdGhlIG1lc3NhZ2UgdHlwZS5cbiAgICogQHBhcmFtIGJyb2FkY2FzdFN0cmluZyBUaGUgYnJvYWRjYXN0YWJsZSBtZXNzYWdlIHRvIHBhcnNlXG4gICAqIEByZXR1cm5zIEEgbWVzc2FnZSBidWlsZGVyIGluc3RhbmNlIGZvciB0aGUgcGFyc2VkIGJyb2FkY2FzdGFibGUgbWVzc2FnZSB0eXBlXG4gICAqL1xuICBmcm9tQnJvYWRjYXN0U3RyaW5nKGJyb2FkY2FzdFN0cmluZzogc3RyaW5nKTogSU1lc3NhZ2VCdWlsZGVyIHtcbiAgICBjb25zdCBicm9hZGNhc3RNZXNzYWdlID0gSlNPTi5wYXJzZShicm9hZGNhc3RTdHJpbmcpIGFzIEJyb2FkY2FzdGFibGVNZXNzYWdlO1xuICAgIHJldHVybiB0aGlzLmZyb21Ccm9hZGNhc3RGb3JtYXQoYnJvYWRjYXN0TWVzc2FnZSk7XG4gIH1cbn1cbiJdfQ==
|