@bitgo/sdk-core 35.5.0 → 35.7.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.
Files changed (59) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/src/account-lib/baseCoin/iface.d.ts +8 -0
  3. package/dist/src/account-lib/baseCoin/iface.d.ts.map +1 -1
  4. package/dist/src/account-lib/baseCoin/iface.js +23 -1
  5. package/dist/src/account-lib/baseCoin/messages/baseMessage.d.ts +16 -4
  6. package/dist/src/account-lib/baseCoin/messages/baseMessage.d.ts.map +1 -1
  7. package/dist/src/account-lib/baseCoin/messages/baseMessage.js +45 -11
  8. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.d.ts +9 -8
  9. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.d.ts.map +1 -1
  10. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.js +52 -4
  11. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts +2 -2
  12. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts.map +1 -1
  13. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.js +16 -5
  14. package/dist/src/account-lib/baseCoin/messages/iface.d.ts +13 -5
  15. package/dist/src/account-lib/baseCoin/messages/iface.d.ts.map +1 -1
  16. package/dist/src/account-lib/baseCoin/messages/iface.js +1 -1
  17. package/dist/src/account-lib/baseCoin/messages/index.d.ts +1 -0
  18. package/dist/src/account-lib/baseCoin/messages/index.d.ts.map +1 -1
  19. package/dist/src/account-lib/baseCoin/messages/index.js +2 -1
  20. package/dist/src/account-lib/baseCoin/messages/simple/index.d.ts +3 -0
  21. package/dist/src/account-lib/baseCoin/messages/simple/index.d.ts.map +1 -0
  22. package/dist/src/account-lib/baseCoin/messages/simple/index.js +19 -0
  23. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessage.d.ts +13 -0
  24. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessage.d.ts.map +1 -0
  25. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessage.js +28 -0
  26. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessageBuilder.d.ts +21 -0
  27. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessageBuilder.d.ts.map +1 -0
  28. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessageBuilder.js +28 -0
  29. package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts +3 -1
  30. package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts.map +1 -1
  31. package/dist/src/bitgo/baseCoin/iBaseCoin.js +1 -1
  32. package/dist/src/bitgo/environments.d.ts.map +1 -1
  33. package/dist/src/bitgo/environments.js +29 -1
  34. package/dist/src/bitgo/utils/messageTypes.d.ts +8 -5
  35. package/dist/src/bitgo/utils/messageTypes.d.ts.map +1 -1
  36. package/dist/src/bitgo/utils/messageTypes.js +3 -1
  37. package/dist/src/bitgo/utils/mpcUtils.d.ts.map +1 -1
  38. package/dist/src/bitgo/utils/mpcUtils.js +9 -2
  39. package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts +16 -2
  40. package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts.map +1 -1
  41. package/dist/src/bitgo/utils/tss/baseTSSUtils.js +48 -2
  42. package/dist/src/bitgo/utils/tss/baseTypes.d.ts +4 -0
  43. package/dist/src/bitgo/utils/tss/baseTypes.d.ts.map +1 -1
  44. package/dist/src/bitgo/utils/tss/baseTypes.js +1 -1
  45. package/dist/src/bitgo/wallet/iWallet.d.ts +2 -1
  46. package/dist/src/bitgo/wallet/iWallet.d.ts.map +1 -1
  47. package/dist/src/bitgo/wallet/iWallet.js +1 -1
  48. package/dist/src/bitgo/wallet/wallet.d.ts +7 -0
  49. package/dist/src/bitgo/wallet/wallet.d.ts.map +1 -1
  50. package/dist/src/bitgo/wallet/wallet.js +58 -11
  51. package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.js +50 -47
  52. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.js +61 -17
  53. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.js +23 -4
  54. package/dist/test/unit/account-lib/baseCoin/messages/fixtures.d.ts +13 -3
  55. package/dist/test/unit/account-lib/baseCoin/messages/fixtures.d.ts.map +1 -1
  56. package/dist/test/unit/account-lib/baseCoin/messages/fixtures.js +17 -18
  57. package/dist/test/unit/bitgo/utils/messageTypes.js +41 -53
  58. package/dist/tsconfig.tsbuildinfo +1 -1
  59. package/package.json +5 -5
package/CHANGELOG.md CHANGED
@@ -3,6 +3,25 @@
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.7.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-core@35.6.0...@bitgo/sdk-core@35.7.0) (2025-07-15)
7
+
8
+ ### Features
9
+
10
+ - **account-lib:** return hex broadcastable message string ([757d9f4](https://github.com/BitGo/BitGoJS/commit/757d9f4f4a17b58055153f900f09294faad52634))
11
+ - **statics:** add hypeevm chain config ([64ebb46](https://github.com/BitGo/BitGoJS/commit/64ebb464a6ce1155779243599265d89ebf72c27e))
12
+ - **statics:** add Sonic chain configs ([b6a27e0](https://github.com/BitGo/BitGoJS/commit/b6a27e033acb3268d4560bb0d2a0038ce326aff8))
13
+
14
+ # [35.6.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-core@35.5.0...@bitgo/sdk-core@35.6.0) (2025-07-10)
15
+
16
+ ### Features
17
+
18
+ - **account-lib:** verify encoded message ([71a7dd6](https://github.com/BitGo/BitGoJS/commit/71a7dd6cf56010c94364483b7c83221d9a26688e))
19
+ - **sdk-coin-ada:** add CIP-8 message builder ([50c53ec](https://github.com/BitGo/BitGoJS/commit/50c53ecc998815ad25a0b08f27a167a9d2d8d948))
20
+ - **sdk-core:** add simple message builder for sol ([d5af5c8](https://github.com/BitGo/BitGoJS/commit/d5af5c8d45f88feb01387b45f9b1e2cfeb70a2e8))
21
+ - **sdk-core:** create message sign request ([2152ad4](https://github.com/BitGo/BitGoJS/commit/2152ad4bb03851f0a14a1523219dc8052c773750))
22
+ - **statics:** add creditcoin chain config ([104014d](https://github.com/BitGo/BitGoJS/commit/104014d70bfabb3962172af98501a85410c16f9c))
23
+ - **statics:** add pharos chain config ([9dd76f9](https://github.com/BitGo/BitGoJS/commit/9dd76f9d7e7328d1999131b270efafa092720005))
24
+
6
25
  # [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
26
 
8
27
  ### Features
@@ -29,6 +29,14 @@ export type Signature = {
29
29
  publicKey: PublicKey;
30
30
  signature: Buffer;
31
31
  };
32
+ export type SerializedSignature = {
33
+ publicKey: string;
34
+ signature: string;
35
+ };
36
+ export declare function serializeSignature(signature: Signature): SerializedSignature;
37
+ export declare function serializeSignatures(signatures: Signature[]): SerializedSignature[];
38
+ export declare function deserializeSignature(serialized: SerializedSignature): Signature;
39
+ export declare function deserializeSignatures(serialized?: SerializedSignature[]): Signature[];
32
40
  export type KeyPairOptions = Seed | PrivateKey | PublicKey;
33
41
  export type BaseBuilder = BaseTransactionBuilder | BaseTransactionBuilderFactory;
34
42
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../../src/account-lib/baseCoin/iface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../../src/account-lib/baseCoin/iface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAEhF,MAAM,WAAW,OAAO;IACtB,GAAG,EAAE,GAAG,CAAC;CACV;AAED;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG;IACtB,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,IAAI,GAAG;IACjB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG;IACtB,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,SAAS,GAAG,mBAAmB,CAK5E;AAED,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,SAAS,EAAE,GAAG,mBAAmB,EAAE,CAElF;AAED,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,mBAAmB,GAAG,SAAS,CAK/E;AAED,wBAAgB,qBAAqB,CAAC,UAAU,CAAC,EAAE,mBAAmB,EAAE,GAAG,SAAS,EAAE,CAErF;AAED,MAAM,MAAM,cAAc,GAAG,IAAI,GAAG,UAAU,GAAG,SAAS,CAAC;AAE3D,MAAM,MAAM,WAAW,GAAG,sBAAsB,GAAG,6BAA6B,CAAC;AAEjF;;GAEG;AACH,wBAAgB,MAAM,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,IAAI,IAAI,CAE7D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,IAAI,UAAU,CAEzE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,IAAI,SAAS,CAEvE;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG;IACrB,GAAG,CAAC,EAAE,UAAU,CAAC;IACjB,GAAG,EAAE,UAAU,CAAC;CACjB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,KAAM,SAAQ,WAAW;IACxC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,OAAO;IACtB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,oBAAoB,EAAE,CAAC;IAChC,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,oBAAoB,EAAE,CAAC;IACtC,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,MAAM,sBAAsB,GAAG,uBAAuB,CAAC,cAAc,CAAC,CAAC;AAC7E;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,IAAI,CAAC,EAAE,UAAU,GAAG,KAAK,GAAG,KAAK,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAC;IACnD,IAAI,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,KAAK,CAAC;CAC/B,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,WAAW,cAAc;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,aAAa,GAAG,WAAW,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,OAAO,GAAG,aAAa,GAAG,SAAS,CAAC;IAC1C,OAAO,EAAE,OAAO,GAAG,YAAY,GAAG,SAAS,CAAC;IAC5C,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;CACxB"}
@@ -1,8 +1,30 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.serializeSignature = serializeSignature;
4
+ exports.serializeSignatures = serializeSignatures;
5
+ exports.deserializeSignature = deserializeSignature;
6
+ exports.deserializeSignatures = deserializeSignatures;
3
7
  exports.isSeed = isSeed;
4
8
  exports.isPrivateKey = isPrivateKey;
5
9
  exports.isPublicKey = isPublicKey;
10
+ function serializeSignature(signature) {
11
+ return {
12
+ publicKey: signature.publicKey.pub,
13
+ signature: signature.signature.toString('base64'),
14
+ };
15
+ }
16
+ function serializeSignatures(signatures) {
17
+ return signatures.map(serializeSignature);
18
+ }
19
+ function deserializeSignature(serialized) {
20
+ return {
21
+ publicKey: { pub: serialized.publicKey },
22
+ signature: Buffer.from(serialized.signature, 'base64'),
23
+ };
24
+ }
25
+ function deserializeSignatures(serialized) {
26
+ return serialized?.map(deserializeSignature) || [];
27
+ }
6
28
  /**
7
29
  * @param source
8
30
  */
@@ -21,4 +43,4 @@ function isPrivateKey(source) {
21
43
  function isPublicKey(source) {
22
44
  return source.pub !== undefined;
23
45
  }
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYWNjb3VudC1saWIvYmFzZUNvaW4vaWZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUE0Q0Esd0JBRUM7QUFLRCxvQ0FFQztBQUtELGtDQUVDO0FBbkJEOztHQUVHO0FBQ0gsU0FBZ0IsTUFBTSxDQUFDLE1BQXNCO0lBQzNDLE9BQVEsTUFBZSxDQUFDLElBQUksS0FBSyxTQUFTLENBQUM7QUFDN0MsQ0FBQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsWUFBWSxDQUFDLE1BQXNCO0lBQ2pELE9BQVEsTUFBcUIsQ0FBQyxHQUFHLEtBQUssU0FBUyxDQUFDO0FBQ2xELENBQUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLFdBQVcsQ0FBQyxNQUFzQjtJQUNoRCxPQUFRLE1BQW9CLENBQUMsR0FBRyxLQUFLLFNBQVMsQ0FBQztBQUNqRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVRyYW5zYWN0aW9uRXhwbGFuYXRpb24gfSBmcm9tICcuLi8uLi9iaXRnbyc7XG5pbXBvcnQgeyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi9iYXNlVHJhbnNhY3Rpb25CdWlsZGVyJztcbmltcG9ydCB7IEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IH0gZnJvbSAnLi9iYXNlVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQmFzZUtleSB7XG4gIGtleTogYW55O1xufVxuXG4vKipcbiAqIEEgcHJpdmF0ZSBrZXkgaW4gZXh0ZW5kZWQgb3IgcmF3IGZvcm1hdFxuICovXG5leHBvcnQgdHlwZSBQcml2YXRlS2V5ID0ge1xuICBwcnY6IHN0cmluZztcbn07XG5cbi8qKlxuICogQSBwdWJsaWMga2V5IGluIGV4dGVuZGVkLCBjb21wcmVzc2VkLCBvciB1bmNvbXByZXNzZWQgZm9ybWF0XG4gKi9cbmV4cG9ydCB0eXBlIFB1YmxpY0tleSA9IHtcbiAgcHViOiBzdHJpbmc7XG59O1xuXG4vKipcbiAqIEEgc2VlZCB0byBjcmVhdGUga2V5IHBhaXJzLiBNdXN0IGJlIGJldHdlZW4gMTYgYW5kIDY0IEJ5dGVzIGxvbmdcbiAqL1xuZXhwb3J0IHR5cGUgU2VlZCA9IHtcbiAgc2VlZDogQnVmZmVyO1xufTtcblxuLyoqXG4gKiBSZXByZXNlbnRhdGlvbiBvZiBhIFNpZ25hdHVyZSB0byBiZSBhZGRlZCB0byBhIFRyYW5zYWN0aW9uLlxuICovXG5leHBvcnQgdHlwZSBTaWduYXR1cmUgPSB7XG4gIHB1YmxpY0tleTogUHVibGljS2V5O1xuICBzaWduYXR1cmU6IEJ1ZmZlcjtcbn07XG5cbmV4cG9ydCB0eXBlIEtleVBhaXJPcHRpb25zID0gU2VlZCB8IFByaXZhdGVLZXkgfCBQdWJsaWNLZXk7XG5cbmV4cG9ydCB0eXBlIEJhc2VCdWlsZGVyID0gQmFzZVRyYW5zYWN0aW9uQnVpbGRlciB8IEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5O1xuXG4vKipcbiAqIEBwYXJhbSBzb3VyY2VcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzU2VlZChzb3VyY2U6IEtleVBhaXJPcHRpb25zKTogc291cmNlIGlzIFNlZWQge1xuICByZXR1cm4gKHNvdXJjZSBhcyBTZWVkKS5zZWVkICE9PSB1bmRlZmluZWQ7XG59XG5cbi8qKlxuICogQHBhcmFtIHNvdXJjZVxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNQcml2YXRlS2V5KHNvdXJjZTogS2V5UGFpck9wdGlvbnMpOiBzb3VyY2UgaXMgUHJpdmF0ZUtleSB7XG4gIHJldHVybiAoc291cmNlIGFzIFByaXZhdGVLZXkpLnBydiAhPT0gdW5kZWZpbmVkO1xufVxuXG4vKipcbiAqIEBwYXJhbSBzb3VyY2VcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzUHVibGljS2V5KHNvdXJjZTogS2V5UGFpck9wdGlvbnMpOiBzb3VyY2UgaXMgUHVibGljS2V5IHtcbiAgcmV0dXJuIChzb3VyY2UgYXMgUHVibGljS2V5KS5wdWIgIT09IHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBLZXkgcGFpciBpbiB0aGUgcHJvdG9jb2wgZGVmYXVsdCBmb3JtYXQuXG4gKi9cbmV4cG9ydCB0eXBlIERlZmF1bHRLZXlzID0ge1xuICBwcnY/OiBzdHJpbmc7XG4gIHB1Yjogc3RyaW5nO1xufTtcblxuLyoqXG4gKiBLZXkgcGFpciBpbiBVaW50OEFycmF5IGZvcm1hdC5cbiAqL1xuZXhwb3J0IHR5cGUgQnl0ZUtleXMgPSB7XG4gIHBydj86IFVpbnQ4QXJyYXk7XG4gIHB1YjogVWludDhBcnJheTtcbn07XG5cbi8qKlxuICogS2V5IHBhaXIgaW4gZXh0ZW5kZWQgZm9ybWF0LiBVc2VkIGZvciBjb2lucyBzdXBwb3J0aW5nIHNlY3AyNTZrMSBlbGxpcHRpYyBjdXJ2ZS5cbiAqL1xuZXhwb3J0IHR5cGUgRXh0ZW5kZWRLZXlzID0ge1xuICB4cHJ2Pzogc3RyaW5nO1xuICB4cHViOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIEJhc2VBZGRyZXNzIHtcbiAgYWRkcmVzczogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEVudHJ5IGV4dGVuZHMgQmFzZUFkZHJlc3Mge1xuICBjb2luPzogc3RyaW5nO1xuICB2YWx1ZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJhc2VGZWUge1xuICBmZWU6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUcmFuc2FjdGlvblJlY2lwaWVudCB7XG4gIGFkZHJlc3M6IHN0cmluZztcbiAgYW1vdW50OiBzdHJpbmcgfCBudW1iZXI7XG4gIG1lbW8/OiBzdHJpbmc7XG4gIHRva2VuTmFtZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUcmFuc2FjdGlvbkZlZSB7XG4gIGZlZTogc3RyaW5nO1xuICBmZWVSYXRlPzogbnVtYmVyO1xuICBzaXplPzogbnVtYmVyO1xuICB0eXBlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zYWN0aW9uT3V0cHV0cyB7XG4gIG91dHB1dHM6IFRyYW5zYWN0aW9uUmVjaXBpZW50W107XG4gIG91dHB1dEFtb3VudDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zYWN0aW9uQ2hhbmdlcyB7XG4gIGNoYW5nZU91dHB1dHM6IFRyYW5zYWN0aW9uUmVjaXBpZW50W107XG4gIGNoYW5nZUFtb3VudDogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uID0gSVRyYW5zYWN0aW9uRXhwbGFuYXRpb248VHJhbnNhY3Rpb25GZWU+O1xuLyoqXG4gKiBGZWUgb3B0aW9ucy5cbiAqL1xuZXhwb3J0IHR5cGUgRmVlT3B0aW9ucyA9IHtcbiAgYW1vdW50OiBudW1iZXIgfCBzdHJpbmc7XG4gIHVuaXQ/OiAnYmFzZVVuaXQnIHwgJ2NwdScgfCAncmFtJztcbiAgZm9ybXVsYT86ICdmaXhlZCcgfCAnZmVlUmF0ZScgfCAncGVyS0InIHwgJ2N1c3RvbSc7XG4gIHR5cGU/OiAnYmFzZScgfCAnbWF4JyB8ICd0aXAnO1xufTtcblxuLyoqXG4gKiBUaGUgdmFsaWRpdHkgd2luZG93IHNpZ25hbHMgd2hlbiBhIHRyYW5zYWN0aW9uIGNhbiBiZSBpbmNsdWRlZCBpbiB0aGUgbmV0d29yay5cbiAqICBWYWxpZGl0eVdpbmRvdyBpbmZvcm1hdGlvbiBpcyBzdG9yZWQgYXMgcGFydCBvZiB0aGUgdHJhbnNhY3Rpb24gZGF0YSBpbiB0aGUgaW5kZXhlciBhbmQgd2FsbGV0IHBsYXRmb3JtLCB1bmxlc3MgaXQgaXMgYWJzb2x1dGVseSBuZWNlc3NhcnkuXG4gKiBmaXJzdFZhbGlkOiB0aGUgYWJzb2x1dGUgYmxvY2svdGltZSBhZnRlciB3aGljaCB0aGUgdHJhbnNhY3Rpb24gaXMgdmFsaWRcbiAqIGxhc3RWYWxpZDogdGhlIGFic29sdXRlIGJsb2NrL3RpbWUgYmVmb3JlIHdoaWNoIHRoZSB0cmFuc2FjdGlvbiBpcyB2YWxpZFxuICogbWluRHVyYXRpb246IG1pbmltdW0gZHVyYXRpb24gYSB0cmFuc2FjdGlvbiBmb3IgdGhpcyBjb2luIGlzIHZhbGlkXG4gKiBtYXhEdXJhdGlvbjogbWF4aW11bSBkdXJhdGlvbiBhIHRyYW5zYWN0aW9uIGZvciB0aGlzIGNvaW4gaXMgdmFsaWRcbiAqIG1pbkR1cmF0aW9uIGFuZCBtYXhEdXJhdGlvbiBhcmUgZGVmaW5lZCBwZXIgYmxvY2tjaGFpbiwgd2hlcmVhcyBmaXJzdFZhbGlkIGFuZCBsYXN0VmFsaWQgYXJlIGRlZmluZWQgcGVyIHRyYW5zYWN0aW9uXG4gKiB1bml0OiB2YWxpZGl0eSB3aW5kb3cgd2lsbCBiZSBtZWFzdXJlIGluIGJsb2NraGVpZ2ggb3IgdGltZXN0YW1wXG4gKiBUT0RPOiB2YWxpZGl0eVdpbmRvdyBjb25zdHJhaW50IG1ldGhvZHMgd2lsbCBiZSB0YWtlbiBvbjogaHR0cHM6Ly9iaXRnb2luYy5hdGxhc3NpYW4ubmV0L2Jyb3dzZS9TVExYLTEwODAwXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVmFsaWRpdHlXaW5kb3cge1xuICBmaXJzdFZhbGlkPzogbnVtYmVyO1xuICBsYXN0VmFsaWQ/OiBudW1iZXI7XG4gIG1pbkR1cmF0aW9uPzogbnVtYmVyO1xuICBtYXhEdXJhdGlvbj86IG51bWJlcjtcbiAgdW5pdD86ICdibG9ja2hlaWdodCcgfCAndGltZXN0YW1wJztcbn1cblxuLyoqXG4gKiBTZXF1ZW5jZSBJZHMgYXJlIHVzZWQgdG8gZGlmZmVyZW50aWF0ZSBwYXltZW50cyBjb21pbmcgZnJvbSB0aGUgc2FtZSBhY2NvdW50IGFuZCB0byBwcmV2ZW50IGFjY2lkZW50YWwgZG91YmxlIHNwZW5kcyBhbmQgcmVwbGF5IGF0dGFja3MuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VxdWVuY2VJZCB7XG4gIG5hbWU6ICdOb25jZScgfCAnU2VxdWVuY2UgSWQnIHwgJ0NvdW50ZXInO1xuICBrZXl3b3JkOiAnbm9uY2UnIHwgJ3NlcXVlbmNlSWQnIHwgJ2NvdW50ZXInO1xuICB2YWx1ZTogc3RyaW5nIHwgbnVtYmVyO1xufVxuIl19
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYWNjb3VudC1saWIvYmFzZUNvaW4vaWZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUEwQ0EsZ0RBS0M7QUFFRCxrREFFQztBQUVELG9EQUtDO0FBRUQsc0RBRUM7QUFTRCx3QkFFQztBQUtELG9DQUVDO0FBS0Qsa0NBRUM7QUE3Q0QsU0FBZ0Isa0JBQWtCLENBQUMsU0FBb0I7SUFDckQsT0FBTztRQUNMLFNBQVMsRUFBRSxTQUFTLENBQUMsU0FBUyxDQUFDLEdBQUc7UUFDbEMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQztLQUNsRCxDQUFDO0FBQ0osQ0FBQztBQUVELFNBQWdCLG1CQUFtQixDQUFDLFVBQXVCO0lBQ3pELE9BQU8sVUFBVSxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0FBQzVDLENBQUM7QUFFRCxTQUFnQixvQkFBb0IsQ0FBQyxVQUErQjtJQUNsRSxPQUFPO1FBQ0wsU0FBUyxFQUFFLEVBQUUsR0FBRyxFQUFFLFVBQVUsQ0FBQyxTQUFTLEVBQUU7UUFDeEMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUM7S0FDdkQsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFnQixxQkFBcUIsQ0FBQyxVQUFrQztJQUN0RSxPQUFPLFVBQVUsRUFBRSxHQUFHLENBQUMsb0JBQW9CLENBQUMsSUFBSSxFQUFFLENBQUM7QUFDckQsQ0FBQztBQU1EOztHQUVHO0FBQ0gsU0FBZ0IsTUFBTSxDQUFDLE1BQXNCO0lBQzNDLE9BQVEsTUFBZSxDQUFDLElBQUksS0FBSyxTQUFTLENBQUM7QUFDN0MsQ0FBQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsWUFBWSxDQUFDLE1BQXNCO0lBQ2pELE9BQVEsTUFBcUIsQ0FBQyxHQUFHLEtBQUssU0FBUyxDQUFDO0FBQ2xELENBQUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLFdBQVcsQ0FBQyxNQUFzQjtJQUNoRCxPQUFRLE1BQW9CLENBQUMsR0FBRyxLQUFLLFNBQVMsQ0FBQztBQUNqRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVRyYW5zYWN0aW9uRXhwbGFuYXRpb24gfSBmcm9tICcuLi8uLi9iaXRnbyc7XG5pbXBvcnQgeyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi9iYXNlVHJhbnNhY3Rpb25CdWlsZGVyJztcbmltcG9ydCB7IEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IH0gZnJvbSAnLi9iYXNlVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQmFzZUtleSB7XG4gIGtleTogYW55O1xufVxuXG4vKipcbiAqIEEgcHJpdmF0ZSBrZXkgaW4gZXh0ZW5kZWQgb3IgcmF3IGZvcm1hdFxuICovXG5leHBvcnQgdHlwZSBQcml2YXRlS2V5ID0ge1xuICBwcnY6IHN0cmluZztcbn07XG5cbi8qKlxuICogQSBwdWJsaWMga2V5IGluIGV4dGVuZGVkLCBjb21wcmVzc2VkLCBvciB1bmNvbXByZXNzZWQgZm9ybWF0XG4gKi9cbmV4cG9ydCB0eXBlIFB1YmxpY0tleSA9IHtcbiAgcHViOiBzdHJpbmc7XG59O1xuXG4vKipcbiAqIEEgc2VlZCB0byBjcmVhdGUga2V5IHBhaXJzLiBNdXN0IGJlIGJldHdlZW4gMTYgYW5kIDY0IEJ5dGVzIGxvbmdcbiAqL1xuZXhwb3J0IHR5cGUgU2VlZCA9IHtcbiAgc2VlZDogQnVmZmVyO1xufTtcblxuLyoqXG4gKiBSZXByZXNlbnRhdGlvbiBvZiBhIFNpZ25hdHVyZSB0byBiZSBhZGRlZCB0byBhIFRyYW5zYWN0aW9uLlxuICovXG5leHBvcnQgdHlwZSBTaWduYXR1cmUgPSB7XG4gIHB1YmxpY0tleTogUHVibGljS2V5O1xuICBzaWduYXR1cmU6IEJ1ZmZlcjtcbn07XG5cbmV4cG9ydCB0eXBlIFNlcmlhbGl6ZWRTaWduYXR1cmUgPSB7XG4gIHB1YmxpY0tleTogc3RyaW5nO1xuICBzaWduYXR1cmU6IHN0cmluZztcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXJpYWxpemVTaWduYXR1cmUoc2lnbmF0dXJlOiBTaWduYXR1cmUpOiBTZXJpYWxpemVkU2lnbmF0dXJlIHtcbiAgcmV0dXJuIHtcbiAgICBwdWJsaWNLZXk6IHNpZ25hdHVyZS5wdWJsaWNLZXkucHViLFxuICAgIHNpZ25hdHVyZTogc2lnbmF0dXJlLnNpZ25hdHVyZS50b1N0cmluZygnYmFzZTY0JyksXG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXJpYWxpemVTaWduYXR1cmVzKHNpZ25hdHVyZXM6IFNpZ25hdHVyZVtdKTogU2VyaWFsaXplZFNpZ25hdHVyZVtdIHtcbiAgcmV0dXJuIHNpZ25hdHVyZXMubWFwKHNlcmlhbGl6ZVNpZ25hdHVyZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkZXNlcmlhbGl6ZVNpZ25hdHVyZShzZXJpYWxpemVkOiBTZXJpYWxpemVkU2lnbmF0dXJlKTogU2lnbmF0dXJlIHtcbiAgcmV0dXJuIHtcbiAgICBwdWJsaWNLZXk6IHsgcHViOiBzZXJpYWxpemVkLnB1YmxpY0tleSB9LFxuICAgIHNpZ25hdHVyZTogQnVmZmVyLmZyb20oc2VyaWFsaXplZC5zaWduYXR1cmUsICdiYXNlNjQnKSxcbiAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRlc2VyaWFsaXplU2lnbmF0dXJlcyhzZXJpYWxpemVkPzogU2VyaWFsaXplZFNpZ25hdHVyZVtdKTogU2lnbmF0dXJlW10ge1xuICByZXR1cm4gc2VyaWFsaXplZD8ubWFwKGRlc2VyaWFsaXplU2lnbmF0dXJlKSB8fCBbXTtcbn1cblxuZXhwb3J0IHR5cGUgS2V5UGFpck9wdGlvbnMgPSBTZWVkIHwgUHJpdmF0ZUtleSB8IFB1YmxpY0tleTtcblxuZXhwb3J0IHR5cGUgQmFzZUJ1aWxkZXIgPSBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyIHwgQmFzZVRyYW5zYWN0aW9uQnVpbGRlckZhY3Rvcnk7XG5cbi8qKlxuICogQHBhcmFtIHNvdXJjZVxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNTZWVkKHNvdXJjZTogS2V5UGFpck9wdGlvbnMpOiBzb3VyY2UgaXMgU2VlZCB7XG4gIHJldHVybiAoc291cmNlIGFzIFNlZWQpLnNlZWQgIT09IHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBAcGFyYW0gc291cmNlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1ByaXZhdGVLZXkoc291cmNlOiBLZXlQYWlyT3B0aW9ucyk6IHNvdXJjZSBpcyBQcml2YXRlS2V5IHtcbiAgcmV0dXJuIChzb3VyY2UgYXMgUHJpdmF0ZUtleSkucHJ2ICE9PSB1bmRlZmluZWQ7XG59XG5cbi8qKlxuICogQHBhcmFtIHNvdXJjZVxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNQdWJsaWNLZXkoc291cmNlOiBLZXlQYWlyT3B0aW9ucyk6IHNvdXJjZSBpcyBQdWJsaWNLZXkge1xuICByZXR1cm4gKHNvdXJjZSBhcyBQdWJsaWNLZXkpLnB1YiAhPT0gdW5kZWZpbmVkO1xufVxuXG4vKipcbiAqIEtleSBwYWlyIGluIHRoZSBwcm90b2NvbCBkZWZhdWx0IGZvcm1hdC5cbiAqL1xuZXhwb3J0IHR5cGUgRGVmYXVsdEtleXMgPSB7XG4gIHBydj86IHN0cmluZztcbiAgcHViOiBzdHJpbmc7XG59O1xuXG4vKipcbiAqIEtleSBwYWlyIGluIFVpbnQ4QXJyYXkgZm9ybWF0LlxuICovXG5leHBvcnQgdHlwZSBCeXRlS2V5cyA9IHtcbiAgcHJ2PzogVWludDhBcnJheTtcbiAgcHViOiBVaW50OEFycmF5O1xufTtcblxuLyoqXG4gKiBLZXkgcGFpciBpbiBleHRlbmRlZCBmb3JtYXQuIFVzZWQgZm9yIGNvaW5zIHN1cHBvcnRpbmcgc2VjcDI1NmsxIGVsbGlwdGljIGN1cnZlLlxuICovXG5leHBvcnQgdHlwZSBFeHRlbmRlZEtleXMgPSB7XG4gIHhwcnY/OiBzdHJpbmc7XG4gIHhwdWI6IHN0cmluZztcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgQmFzZUFkZHJlc3Mge1xuICBhZGRyZXNzOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRW50cnkgZXh0ZW5kcyBCYXNlQWRkcmVzcyB7XG4gIGNvaW4/OiBzdHJpbmc7XG4gIHZhbHVlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQmFzZUZlZSB7XG4gIGZlZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zYWN0aW9uUmVjaXBpZW50IHtcbiAgYWRkcmVzczogc3RyaW5nO1xuICBhbW91bnQ6IHN0cmluZyB8IG51bWJlcjtcbiAgbWVtbz86IHN0cmluZztcbiAgdG9rZW5OYW1lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zYWN0aW9uRmVlIHtcbiAgZmVlOiBzdHJpbmc7XG4gIGZlZVJhdGU/OiBudW1iZXI7XG4gIHNpemU/OiBudW1iZXI7XG4gIHR5cGU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNhY3Rpb25PdXRwdXRzIHtcbiAgb3V0cHV0czogVHJhbnNhY3Rpb25SZWNpcGllbnRbXTtcbiAgb3V0cHV0QW1vdW50OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNhY3Rpb25DaGFuZ2VzIHtcbiAgY2hhbmdlT3V0cHV0czogVHJhbnNhY3Rpb25SZWNpcGllbnRbXTtcbiAgY2hhbmdlQW1vdW50OiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIFRyYW5zYWN0aW9uRXhwbGFuYXRpb24gPSBJVHJhbnNhY3Rpb25FeHBsYW5hdGlvbjxUcmFuc2FjdGlvbkZlZT47XG4vKipcbiAqIEZlZSBvcHRpb25zLlxuICovXG5leHBvcnQgdHlwZSBGZWVPcHRpb25zID0ge1xuICBhbW91bnQ6IG51bWJlciB8IHN0cmluZztcbiAgdW5pdD86ICdiYXNlVW5pdCcgfCAnY3B1JyB8ICdyYW0nO1xuICBmb3JtdWxhPzogJ2ZpeGVkJyB8ICdmZWVSYXRlJyB8ICdwZXJLQicgfCAnY3VzdG9tJztcbiAgdHlwZT86ICdiYXNlJyB8ICdtYXgnIHwgJ3RpcCc7XG59O1xuXG4vKipcbiAqIFRoZSB2YWxpZGl0eSB3aW5kb3cgc2lnbmFscyB3aGVuIGEgdHJhbnNhY3Rpb24gY2FuIGJlIGluY2x1ZGVkIGluIHRoZSBuZXR3b3JrLlxuICogIFZhbGlkaXR5V2luZG93IGluZm9ybWF0aW9uIGlzIHN0b3JlZCBhcyBwYXJ0IG9mIHRoZSB0cmFuc2FjdGlvbiBkYXRhIGluIHRoZSBpbmRleGVyIGFuZCB3YWxsZXQgcGxhdGZvcm0sIHVubGVzcyBpdCBpcyBhYnNvbHV0ZWx5IG5lY2Vzc2FyeS5cbiAqIGZpcnN0VmFsaWQ6IHRoZSBhYnNvbHV0ZSBibG9jay90aW1lIGFmdGVyIHdoaWNoIHRoZSB0cmFuc2FjdGlvbiBpcyB2YWxpZFxuICogbGFzdFZhbGlkOiB0aGUgYWJzb2x1dGUgYmxvY2svdGltZSBiZWZvcmUgd2hpY2ggdGhlIHRyYW5zYWN0aW9uIGlzIHZhbGlkXG4gKiBtaW5EdXJhdGlvbjogbWluaW11bSBkdXJhdGlvbiBhIHRyYW5zYWN0aW9uIGZvciB0aGlzIGNvaW4gaXMgdmFsaWRcbiAqIG1heER1cmF0aW9uOiBtYXhpbXVtIGR1cmF0aW9uIGEgdHJhbnNhY3Rpb24gZm9yIHRoaXMgY29pbiBpcyB2YWxpZFxuICogbWluRHVyYXRpb24gYW5kIG1heER1cmF0aW9uIGFyZSBkZWZpbmVkIHBlciBibG9ja2NoYWluLCB3aGVyZWFzIGZpcnN0VmFsaWQgYW5kIGxhc3RWYWxpZCBhcmUgZGVmaW5lZCBwZXIgdHJhbnNhY3Rpb25cbiAqIHVuaXQ6IHZhbGlkaXR5IHdpbmRvdyB3aWxsIGJlIG1lYXN1cmUgaW4gYmxvY2toZWlnaCBvciB0aW1lc3RhbXBcbiAqIFRPRE86IHZhbGlkaXR5V2luZG93IGNvbnN0cmFpbnQgbWV0aG9kcyB3aWxsIGJlIHRha2VuIG9uOiBodHRwczovL2JpdGdvaW5jLmF0bGFzc2lhbi5uZXQvYnJvd3NlL1NUTFgtMTA4MDBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBWYWxpZGl0eVdpbmRvdyB7XG4gIGZpcnN0VmFsaWQ/OiBudW1iZXI7XG4gIGxhc3RWYWxpZD86IG51bWJlcjtcbiAgbWluRHVyYXRpb24/OiBudW1iZXI7XG4gIG1heER1cmF0aW9uPzogbnVtYmVyO1xuICB1bml0PzogJ2Jsb2NraGVpZ2h0JyB8ICd0aW1lc3RhbXAnO1xufVxuXG4vKipcbiAqIFNlcXVlbmNlIElkcyBhcmUgdXNlZCB0byBkaWZmZXJlbnRpYXRlIHBheW1lbnRzIGNvbWluZyBmcm9tIHRoZSBzYW1lIGFjY291bnQgYW5kIHRvIHByZXZlbnQgYWNjaWRlbnRhbCBkb3VibGUgc3BlbmRzIGFuZCByZXBsYXkgYXR0YWNrcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXF1ZW5jZUlkIHtcbiAgbmFtZTogJ05vbmNlJyB8ICdTZXF1ZW5jZSBJZCcgfCAnQ291bnRlcic7XG4gIGtleXdvcmQ6ICdub25jZScgfCAnc2VxdWVuY2VJZCcgfCAnY291bnRlcic7XG4gIHZhbHVlOiBzdHJpbmcgfCBudW1iZXI7XG59XG4iXX0=
@@ -1,11 +1,12 @@
1
1
  import { BaseCoin as CoinConfig } from '@bitgo/statics';
2
2
  import { BroadcastableMessage, MessageMetadata, MessageOptions, MessagePayload, MessageStandardType } from '../../../bitgo';
3
3
  import { IMessage } from './iface';
4
+ import { Signature } from '../iface';
4
5
  export declare abstract class BaseMessage implements IMessage {
5
6
  protected coinConfig: Readonly<CoinConfig>;
6
7
  protected type: MessageStandardType;
7
8
  protected payload: MessagePayload;
8
- protected signatures: string[];
9
+ protected signatures: Signature[];
9
10
  protected signers: string[];
10
11
  protected signablePayload?: string | Buffer;
11
12
  protected metadata?: MessageMetadata;
@@ -44,22 +45,26 @@ export declare abstract class BaseMessage implements IMessage {
44
45
  /**
45
46
  * Gets all signatures associated with this message
46
47
  */
47
- getSignatures(): string[];
48
+ getSignatures(): Signature[];
48
49
  /**
49
50
  * Sets signatures for this message
50
51
  * @param signatures Array of signatures to set
51
52
  */
52
- setSignatures(signatures: string[]): void;
53
+ setSignatures(signatures: Signature[]): void;
53
54
  /**
54
55
  * Adds a signature to this message
55
56
  * @param signature The signature to add
56
57
  */
57
- addSignature(signature: string): void;
58
+ addSignature(signature: Signature): void;
58
59
  /**
59
60
  * Gets the payload that should be signed
60
61
  * Each message standard must implement this method
61
62
  */
62
63
  abstract getSignablePayload(): Promise<string | Buffer>;
64
+ /**
65
+ * Gets the signatures in a format suitable for broadcasting
66
+ */
67
+ getBroadcastableSignatures(): Signature[];
63
68
  /**
64
69
  * Converts this message to a broadcastable format
65
70
  * Uses internal signatures and signers that were previously set
@@ -72,5 +77,12 @@ export declare abstract class BaseMessage implements IMessage {
72
77
  * @returns A JSON string representation of the broadcastable message
73
78
  */
74
79
  toBroadcastString(): Promise<string>;
80
+ /**
81
+ * Verifies if the provided encoded message matches the signable payload
82
+ * @param messageEncodedHex The encoded message in hex format
83
+ * @param metadata Optional metadata for additional verification context
84
+ * @returns True if the encoded message matches the signable payload, false otherwise
85
+ */
86
+ verifyEncodedPayload(messageEncodedHex: string, metadata?: Record<string, unknown>): Promise<boolean>;
75
87
  }
76
88
  //# sourceMappingURL=baseMessage.d.ts.map
@@ -1 +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"}
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;AACnC,OAAO,EAAuB,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1D,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,SAAS,EAAE,CAAM;IACvC,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;IAmB7C;;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,SAAS,EAAE;IAI5B;;;OAGG;IACH,aAAa,CAAC,UAAU,EAAE,SAAS,EAAE,GAAG,IAAI;IAI5C;;;OAGG;IACH,YAAY,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAIxC;;;OAGG;IACH,QAAQ,CAAC,kBAAkB,IAAI,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;IAEvD;;OAEG;IACH,0BAA0B,IAAI,SAAS,EAAE;IAIzC;;;;OAIG;IACG,iBAAiB,IAAI,OAAO,CAAC,oBAAoB,CAAC;IAwBxD;;;;OAIG;IACG,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC;IAM1C;;;;;OAKG;IACG,oBAAoB,CAAC,iBAAiB,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;CAU5G"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BaseMessage = void 0;
4
4
  const bitgo_1 = require("../../../bitgo");
5
+ const iface_1 = require("../iface");
5
6
  class BaseMessage {
6
7
  /**
7
8
  * Base constructor.
@@ -12,12 +13,16 @@ class BaseMessage {
12
13
  this.signatures = [];
13
14
  this.signers = [];
14
15
  this.coinConfig = options.coinConfig;
16
+ this.payload = options.payload;
15
17
  this.type = options.type || bitgo_1.MessageStandardType.UNKNOWN;
16
- this.payload = options.payload || '';
17
18
  this.signablePayload = options.signablePayload;
18
19
  this.metadata = options.metadata || {};
19
20
  if (options.signatures) {
20
- this.signatures = [...options.signatures];
21
+ // Deep copy each Signature object, including the Buffer
22
+ this.signatures = options.signatures.map((sig) => ({
23
+ publicKey: { ...sig.publicKey },
24
+ signature: Buffer.from(sig.signature),
25
+ }));
21
26
  }
22
27
  if (options.signers) {
23
28
  this.signers = [...options.signers];
@@ -83,27 +88,38 @@ class BaseMessage {
83
88
  addSignature(signature) {
84
89
  this.signatures.push(signature);
85
90
  }
91
+ /**
92
+ * Gets the signatures in a format suitable for broadcasting
93
+ */
94
+ getBroadcastableSignatures() {
95
+ return this.signatures;
96
+ }
86
97
  /**
87
98
  * Converts this message to a broadcastable format
88
99
  * Uses internal signatures and signers that were previously set
89
100
  * @returns A broadcastable message
90
101
  */
91
102
  async toBroadcastFormat() {
92
- if (this.signatures.length === 0) {
93
- throw new Error('No signatures available for broadcast. Call setSignatures or addSignature first.');
103
+ if (!this.payload) {
104
+ throw new Error('Message payload must be set before converting to broadcast format');
94
105
  }
95
- if (this.signers.length === 0) {
96
- throw new Error('No signers available for broadcast. Call setSigners or addSigner first.');
106
+ const signablePayload = await this.getSignablePayload();
107
+ let serializedSignablePayload;
108
+ if (Buffer.isBuffer(signablePayload)) {
109
+ serializedSignablePayload = signablePayload.toString('base64');
110
+ }
111
+ else {
112
+ serializedSignablePayload = Buffer.from(String(signablePayload)).toString('base64');
97
113
  }
98
114
  return {
99
115
  type: this.type,
100
116
  payload: this.payload,
101
- signatures: this.signatures,
102
- signers: this.signers,
117
+ serializedSignatures: (0, iface_1.serializeSignatures)(this.getBroadcastableSignatures()),
118
+ signers: [...this.signers],
103
119
  metadata: {
104
120
  ...(this.metadata ? JSON.parse(JSON.stringify(this.metadata)) : {}), // deep copy to avoid mutation
105
121
  },
106
- signablePayload: this.signablePayload,
122
+ signablePayload: serializedSignablePayload,
107
123
  };
108
124
  }
109
125
  /**
@@ -113,8 +129,26 @@ class BaseMessage {
113
129
  */
114
130
  async toBroadcastString() {
115
131
  const broadcastable = await this.toBroadcastFormat();
116
- return JSON.stringify(broadcastable);
132
+ const broadcastableStr = JSON.stringify(broadcastable);
133
+ return Buffer.from(broadcastableStr).toString('hex');
134
+ }
135
+ /**
136
+ * Verifies if the provided encoded message matches the signable payload
137
+ * @param messageEncodedHex The encoded message in hex format
138
+ * @param metadata Optional metadata for additional verification context
139
+ * @returns True if the encoded message matches the signable payload, false otherwise
140
+ */
141
+ async verifyEncodedPayload(messageEncodedHex, metadata) {
142
+ const signablePayload = await this.getSignablePayload();
143
+ let signablePayloadHex;
144
+ if (Buffer.isBuffer(signablePayload)) {
145
+ signablePayloadHex = signablePayload.toString('hex');
146
+ }
147
+ else {
148
+ signablePayloadHex = signablePayload;
149
+ }
150
+ return signablePayloadHex === messageEncodedHex;
117
151
  }
118
152
  }
119
153
  exports.BaseMessage = BaseMessage;
120
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZU1lc3NhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYWNjb3VudC1saWIvYmFzZUNvaW4vbWVzc2FnZXMvYmFzZU1lc3NhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsMENBTXdCO0FBR3hCLE1BQXNCLFdBQVc7SUFTL0I7Ozs7T0FJRztJQUNILFlBQXNCLE9BQXVCO1FBVm5DLGVBQVUsR0FBYSxFQUFFLENBQUM7UUFDMUIsWUFBTyxHQUFhLEVBQUUsQ0FBQztRQVUvQixJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUM7UUFDckMsSUFBSSxDQUFDLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxJQUFJLDJCQUFtQixDQUFDLE9BQU8sQ0FBQztRQUN4RCxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxlQUFlLEdBQUcsT0FBTyxDQUFDLGVBQWUsQ0FBQztRQUMvQyxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDO1FBRXZDLElBQUksT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM1QyxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDcEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3RDLENBQUM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxPQUFPO1FBQ0wsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ25CLENBQUM7SUFFRDs7T0FFRztJQUNILFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxVQUFVO1FBQ1IsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxTQUFTLENBQUMsTUFBYztRQUN0QixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUNuQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM1QixDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7T0FHRztJQUNILFVBQVUsQ0FBQyxPQUFpQjtRQUMxQixJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsR0FBRyxPQUFPLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxhQUFhO1FBQ1gsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxhQUFhLENBQUMsVUFBb0I7UUFDaEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLEdBQUcsVUFBVSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVEOzs7T0FHRztJQUNILFlBQVksQ0FBQyxTQUFpQjtRQUM1QixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBUUQ7Ozs7T0FJRztJQUNILEtBQUssQ0FBQyxpQkFBaUI7UUFDckIsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNqQyxNQUFNLElBQUksS0FBSyxDQUFDLGtGQUFrRixDQUFDLENBQUM7UUFDdEcsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDOUIsTUFBTSxJQUFJLEtBQUssQ0FBQyx5RUFBeUUsQ0FBQyxDQUFDO1FBQzdGLENBQUM7UUFFRCxPQUFPO1lBQ0wsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQ3JCLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtZQUMzQixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsUUFBUSxFQUFFO2dCQUNSLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLDhCQUE4QjthQUNwRztZQUNELGVBQWUsRUFBRSxJQUFJLENBQUMsZUFBZTtTQUN0QyxDQUFDO0lBQ0osQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxLQUFLLENBQUMsaUJBQWlCO1FBQ3JCLE1BQU0sYUFBYSxHQUFHLE1BQU0sSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDckQsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7Q0FDRjtBQTNJRCxrQ0EySUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IHtcbiAgQnJvYWRjYXN0YWJsZU1lc3NhZ2UsXG4gIE1lc3NhZ2VNZXRhZGF0YSxcbiAgTWVzc2FnZU9wdGlvbnMsXG4gIE1lc3NhZ2VQYXlsb2FkLFxuICBNZXNzYWdlU3RhbmRhcmRUeXBlLFxufSBmcm9tICcuLi8uLi8uLi9iaXRnbyc7XG5pbXBvcnQgeyBJTWVzc2FnZSB9IGZyb20gJy4vaWZhY2UnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZU1lc3NhZ2UgaW1wbGVtZW50cyBJTWVzc2FnZSB7XG4gIHByb3RlY3RlZCBjb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPjtcbiAgcHJvdGVjdGVkIHR5cGU6IE1lc3NhZ2VTdGFuZGFyZFR5cGU7XG4gIHByb3RlY3RlZCBwYXlsb2FkOiBNZXNzYWdlUGF5bG9hZDtcbiAgcHJvdGVjdGVkIHNpZ25hdHVyZXM6IHN0cmluZ1tdID0gW107XG4gIHByb3RlY3RlZCBzaWduZXJzOiBzdHJpbmdbXSA9IFtdO1xuICBwcm90ZWN0ZWQgc2lnbmFibGVQYXlsb2FkPzogc3RyaW5nIHwgQnVmZmVyO1xuICBwcm90ZWN0ZWQgbWV0YWRhdGE/OiBNZXNzYWdlTWV0YWRhdGE7XG5cbiAgLyoqXG4gICAqIEJhc2UgY29uc3RydWN0b3IuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIE1lc3NhZ2Ugb3B0aW9ucyBjb250YWluaW5nIHR5cGUsIHBheWxvYWQsIG1ldGFkYXRhLCBldGMuXG4gICAqL1xuICBwcm90ZWN0ZWQgY29uc3RydWN0b3Iob3B0aW9uczogTWVzc2FnZU9wdGlvbnMpIHtcbiAgICB0aGlzLmNvaW5Db25maWcgPSBvcHRpb25zLmNvaW5Db25maWc7XG4gICAgdGhpcy50eXBlID0gb3B0aW9ucy50eXBlIHx8IE1lc3NhZ2VTdGFuZGFyZFR5cGUuVU5LTk9XTjtcbiAgICB0aGlzLnBheWxvYWQgPSBvcHRpb25zLnBheWxvYWQgfHwgJyc7XG4gICAgdGhpcy5zaWduYWJsZVBheWxvYWQgPSBvcHRpb25zLnNpZ25hYmxlUGF5bG9hZDtcbiAgICB0aGlzLm1ldGFkYXRhID0gb3B0aW9ucy5tZXRhZGF0YSB8fCB7fTtcblxuICAgIGlmIChvcHRpb25zLnNpZ25hdHVyZXMpIHtcbiAgICAgIHRoaXMuc2lnbmF0dXJlcyA9IFsuLi5vcHRpb25zLnNpZ25hdHVyZXNdO1xuICAgIH1cbiAgICBpZiAob3B0aW9ucy5zaWduZXJzKSB7XG4gICAgICB0aGlzLnNpZ25lcnMgPSBbLi4ub3B0aW9ucy5zaWduZXJzXTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSBtZXNzYWdlIHR5cGVcbiAgICovXG4gIGdldFR5cGUoKTogTWVzc2FnZVN0YW5kYXJkVHlwZSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIG1lc3NhZ2UgcGF5bG9hZFxuICAgKi9cbiAgZ2V0UGF5bG9hZCgpOiBNZXNzYWdlUGF5bG9hZCB7XG4gICAgcmV0dXJuIHRoaXMucGF5bG9hZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIG1ldGFkYXRhIGFzc29jaWF0ZWQgd2l0aCB0aGUgbWVzc2FnZVxuICAgKi9cbiAgZ2V0TWV0YWRhdGEoKTogTWVzc2FnZU1ldGFkYXRhIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5tZXRhZGF0YTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIGFsbCBzaWduZXJzIGFkZHJlc3NlcyBvciBwdWJsaWMga2V5c1xuICAgKi9cbiAgZ2V0U2lnbmVycygpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIFsuLi50aGlzLnNpZ25lcnNdO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBzaWduZXIgYWRkcmVzcyBvciBwdWJsaWMga2V5XG4gICAqIEBwYXJhbSBzaWduZXIgVGhlIGFkZHJlc3Mgb3IgcHVibGljIGtleSBvZiB0aGUgc2lnbmVyXG4gICAqL1xuICBhZGRTaWduZXIoc2lnbmVyOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuc2lnbmVycy5pbmNsdWRlcyhzaWduZXIpKSB7XG4gICAgICB0aGlzLnNpZ25lcnMucHVzaChzaWduZXIpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHNpZ25lcnMgYWRkcmVzc2VzIG9yIHB1YmxpYyBrZXlzXG4gICAqIEBwYXJhbSBzaWduZXJzIEFycmF5IG9mIGFkZHJlc3NlcyBvciBwdWJsaWMga2V5c1xuICAgKi9cbiAgc2V0U2lnbmVycyhzaWduZXJzOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgIHRoaXMuc2lnbmVycyA9IFsuLi5zaWduZXJzXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIGFsbCBzaWduYXR1cmVzIGFzc29jaWF0ZWQgd2l0aCB0aGlzIG1lc3NhZ2VcbiAgICovXG4gIGdldFNpZ25hdHVyZXMoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiBbLi4udGhpcy5zaWduYXR1cmVzXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHNpZ25hdHVyZXMgZm9yIHRoaXMgbWVzc2FnZVxuICAgKiBAcGFyYW0gc2lnbmF0dXJlcyBBcnJheSBvZiBzaWduYXR1cmVzIHRvIHNldFxuICAgKi9cbiAgc2V0U2lnbmF0dXJlcyhzaWduYXR1cmVzOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgIHRoaXMuc2lnbmF0dXJlcyA9IFsuLi5zaWduYXR1cmVzXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgc2lnbmF0dXJlIHRvIHRoaXMgbWVzc2FnZVxuICAgKiBAcGFyYW0gc2lnbmF0dXJlIFRoZSBzaWduYXR1cmUgdG8gYWRkXG4gICAqL1xuICBhZGRTaWduYXR1cmUoc2lnbmF0dXJlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnNpZ25hdHVyZXMucHVzaChzaWduYXR1cmUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHBheWxvYWQgdGhhdCBzaG91bGQgYmUgc2lnbmVkXG4gICAqIEVhY2ggbWVzc2FnZSBzdGFuZGFyZCBtdXN0IGltcGxlbWVudCB0aGlzIG1ldGhvZFxuICAgKi9cbiAgYWJzdHJhY3QgZ2V0U2lnbmFibGVQYXlsb2FkKCk6IFByb21pc2U8c3RyaW5nIHwgQnVmZmVyPjtcblxuICAvKipcbiAgICogQ29udmVydHMgdGhpcyBtZXNzYWdlIHRvIGEgYnJvYWRjYXN0YWJsZSBmb3JtYXRcbiAgICogVXNlcyBpbnRlcm5hbCBzaWduYXR1cmVzIGFuZCBzaWduZXJzIHRoYXQgd2VyZSBwcmV2aW91c2x5IHNldFxuICAgKiBAcmV0dXJucyBBIGJyb2FkY2FzdGFibGUgbWVzc2FnZVxuICAgKi9cbiAgYXN5bmMgdG9Ccm9hZGNhc3RGb3JtYXQoKTogUHJvbWlzZTxCcm9hZGNhc3RhYmxlTWVzc2FnZT4ge1xuICAgIGlmICh0aGlzLnNpZ25hdHVyZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIHNpZ25hdHVyZXMgYXZhaWxhYmxlIGZvciBicm9hZGNhc3QuIENhbGwgc2V0U2lnbmF0dXJlcyBvciBhZGRTaWduYXR1cmUgZmlyc3QuJyk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuc2lnbmVycy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTm8gc2lnbmVycyBhdmFpbGFibGUgZm9yIGJyb2FkY2FzdC4gQ2FsbCBzZXRTaWduZXJzIG9yIGFkZFNpZ25lciBmaXJzdC4nKTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgdHlwZTogdGhpcy50eXBlLFxuICAgICAgcGF5bG9hZDogdGhpcy5wYXlsb2FkLFxuICAgICAgc2lnbmF0dXJlczogdGhpcy5zaWduYXR1cmVzLFxuICAgICAgc2lnbmVyczogdGhpcy5zaWduZXJzLFxuICAgICAgbWV0YWRhdGE6IHtcbiAgICAgICAgLi4uKHRoaXMubWV0YWRhdGEgPyBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHRoaXMubWV0YWRhdGEpKSA6IHt9KSwgLy8gZGVlcCBjb3B5IHRvIGF2b2lkIG11dGF0aW9uXG4gICAgICB9LFxuICAgICAgc2lnbmFibGVQYXlsb2FkOiB0aGlzLnNpZ25hYmxlUGF5bG9hZCxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIFNlcmlhbGl6ZXMgdGhlIGJyb2FkY2FzdGFibGUgbWVzc2FnZSB0byBhIHN0cmluZ1xuICAgKiBVc2VzIGludGVybmFsIHNpZ25hdHVyZXMgYW5kIHNpZ25lcnMgdGhhdCB3ZXJlIHByZXZpb3VzbHkgc2V0XG4gICAqIEByZXR1cm5zIEEgSlNPTiBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIGJyb2FkY2FzdGFibGUgbWVzc2FnZVxuICAgKi9cbiAgYXN5bmMgdG9Ccm9hZGNhc3RTdHJpbmcoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBjb25zdCBicm9hZGNhc3RhYmxlID0gYXdhaXQgdGhpcy50b0Jyb2FkY2FzdEZvcm1hdCgpO1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeShicm9hZGNhc3RhYmxlKTtcbiAgfVxufVxuIl19
154
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZU1lc3NhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYWNjb3VudC1saWIvYmFzZUNvaW4vbWVzc2FnZXMvYmFzZU1lc3NhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsMENBTXdCO0FBRXhCLG9DQUEwRDtBQUUxRCxNQUFzQixXQUFXO0lBUy9COzs7O09BSUc7SUFDSCxZQUFzQixPQUF1QjtRQVZuQyxlQUFVLEdBQWdCLEVBQUUsQ0FBQztRQUM3QixZQUFPLEdBQWEsRUFBRSxDQUFDO1FBVS9CLElBQUksQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQztRQUNyQyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUM7UUFDL0IsSUFBSSxDQUFDLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxJQUFJLDJCQUFtQixDQUFDLE9BQU8sQ0FBQztRQUN4RCxJQUFJLENBQUMsZUFBZSxHQUFHLE9BQU8sQ0FBQyxlQUFlLENBQUM7UUFDL0MsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUMsUUFBUSxJQUFJLEVBQUUsQ0FBQztRQUV2QyxJQUFJLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN2Qix3REFBd0Q7WUFDeEQsSUFBSSxDQUFDLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDakQsU0FBUyxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUMsU0FBUyxFQUFFO2dCQUMvQixTQUFTLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDO2FBQ3RDLENBQUMsQ0FBQyxDQUFDO1FBQ04sQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxPQUFP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QUFDO1FBQ3JELE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN2RCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsS0FBSyxDQUFDLG9CQUFvQixDQUFDLGlCQUF5QixFQUFFLFFBQWtDO1FBQ3RGLE1BQU0sZUFBZSxHQUFHLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFDeEQsSUFBSSxrQkFBMEIsQ0FBQztRQUMvQixJQUFJLE1BQU0sQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQztZQUNyQyxrQkFBa0IsR0FBRyxlQUFlLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3ZELENBQUM7YUFBTSxDQUFDO1lBQ04sa0JBQWtCLEdBQUcsZUFBZSxDQUFDO1FBQ3ZDLENBQUM7UUFDRCxPQUFPLGtCQUFrQixLQUFLLGlCQUFpQixDQUFDO0lBQ2xELENBQUM7Q0FDRjtBQTNLRCxrQ0EyS0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IHtcbiAgQnJvYWRjYXN0YWJsZU1lc3NhZ2UsXG4gIE1lc3NhZ2VNZXRhZGF0YSxcbiAgTWVzc2FnZU9wdGlvbnMsXG4gIE1lc3NhZ2VQYXlsb2FkLFxuICBNZXNzYWdlU3RhbmRhcmRUeXBlLFxufSBmcm9tICcuLi8uLi8uLi9iaXRnbyc7XG5pbXBvcnQgeyBJTWVzc2FnZSB9IGZyb20gJy4vaWZhY2UnO1xuaW1wb3J0IHsgc2VyaWFsaXplU2lnbmF0dXJlcywgU2lnbmF0dXJlIH0gZnJvbSAnLi4vaWZhY2UnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZU1lc3NhZ2UgaW1wbGVtZW50cyBJTWVzc2FnZSB7XG4gIHByb3RlY3RlZCBjb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPjtcbiAgcHJvdGVjdGVkIHR5cGU6IE1lc3NhZ2VTdGFuZGFyZFR5cGU7XG4gIHByb3RlY3RlZCBwYXlsb2FkOiBNZXNzYWdlUGF5bG9hZDtcbiAgcHJvdGVjdGVkIHNpZ25hdHVyZXM6IFNpZ25hdHVyZVtdID0gW107XG4gIHByb3RlY3RlZCBzaWduZXJzOiBzdHJpbmdbXSA9IFtdO1xuICBwcm90ZWN0ZWQgc2lnbmFibGVQYXlsb2FkPzogc3RyaW5nIHwgQnVmZmVyO1xuICBwcm90ZWN0ZWQgbWV0YWRhdGE/OiBNZXNzYWdlTWV0YWRhdGE7XG5cbiAgLyoqXG4gICAqIEJhc2UgY29uc3RydWN0b3IuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIE1lc3NhZ2Ugb3B0aW9ucyBjb250YWluaW5nIHR5cGUsIHBheWxvYWQsIG1ldGFkYXRhLCBldGMuXG4gICAqL1xuICBwcm90ZWN0ZWQgY29uc3RydWN0b3Iob3B0aW9uczogTWVzc2FnZU9wdGlvbnMpIHtcbiAgICB0aGlzLmNvaW5Db25maWcgPSBvcHRpb25zLmNvaW5Db25maWc7XG4gICAgdGhpcy5wYXlsb2FkID0gb3B0aW9ucy5wYXlsb2FkO1xuICAgIHRoaXMudHlwZSA9IG9wdGlvbnMudHlwZSB8fCBNZXNzYWdlU3RhbmRhcmRUeXBlLlVOS05PV047XG4gICAgdGhpcy5zaWduYWJsZVBheWxvYWQgPSBvcHRpb25zLnNpZ25hYmxlUGF5bG9hZDtcbiAgICB0aGlzLm1ldGFkYXRhID0gb3B0aW9ucy5tZXRhZGF0YSB8fCB7fTtcblxuICAgIGlmIChvcHRpb25zLnNpZ25hdHVyZXMpIHtcbiAgICAgIC8vIERlZXAgY29weSBlYWNoIFNpZ25hdHVyZSBvYmplY3QsIGluY2x1ZGluZyB0aGUgQnVmZmVyXG4gICAgICB0aGlzLnNpZ25hdHVyZXMgPSBvcHRpb25zLnNpZ25hdHVyZXMubWFwKChzaWcpID0+ICh7XG4gICAgICAgIHB1YmxpY0tleTogeyAuLi5zaWcucHVibGljS2V5IH0sXG4gICAgICAgIHNpZ25hdHVyZTogQnVmZmVyLmZyb20oc2lnLnNpZ25hdHVyZSksXG4gICAgICB9KSk7XG4gICAgfVxuICAgIGlmIChvcHRpb25zLnNpZ25lcnMpIHtcbiAgICAgIHRoaXMuc2lnbmVycyA9IFsuLi5vcHRpb25zLnNpZ25lcnNdO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIG1lc3NhZ2UgdHlwZVxuICAgKi9cbiAgZ2V0VHlwZSgpOiBNZXNzYWdlU3RhbmRhcmRUeXBlIHtcbiAgICByZXR1cm4gdGhpcy50eXBlO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgbWVzc2FnZSBwYXlsb2FkXG4gICAqL1xuICBnZXRQYXlsb2FkKCk6IE1lc3NhZ2VQYXlsb2FkIHtcbiAgICByZXR1cm4gdGhpcy5wYXlsb2FkO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgbWV0YWRhdGEgYXNzb2NpYXRlZCB3aXRoIHRoZSBtZXNzYWdlXG4gICAqL1xuICBnZXRNZXRhZGF0YSgpOiBNZXNzYWdlTWV0YWRhdGEgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLm1ldGFkYXRhO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgYWxsIHNpZ25lcnMgYWRkcmVzc2VzIG9yIHB1YmxpYyBrZXlzXG4gICAqL1xuICBnZXRTaWduZXJzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gWy4uLnRoaXMuc2lnbmVyc107XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBhIHNpZ25lciBhZGRyZXNzIG9yIHB1YmxpYyBrZXlcbiAgICogQHBhcmFtIHNpZ25lciBUaGUgYWRkcmVzcyBvciBwdWJsaWMga2V5IG9mIHRoZSBzaWduZXJcbiAgICovXG4gIGFkZFNpZ25lcihzaWduZXI6IHN0cmluZyk6IHZvaWQge1xuICAgIGlmICghdGhpcy5zaWduZXJzLmluY2x1ZGVzKHNpZ25lcikpIHtcbiAgICAgIHRoaXMuc2lnbmVycy5wdXNoKHNpZ25lcik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgc2lnbmVycyBhZGRyZXNzZXMgb3IgcHVibGljIGtleXNcbiAgICogQHBhcmFtIHNpZ25lcnMgQXJyYXkgb2YgYWRkcmVzc2VzIG9yIHB1YmxpYyBrZXlzXG4gICAqL1xuICBzZXRTaWduZXJzKHNpZ25lcnM6IHN0cmluZ1tdKTogdm9pZCB7XG4gICAgdGhpcy5zaWduZXJzID0gWy4uLnNpZ25lcnNdO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgYWxsIHNpZ25hdHVyZXMgYXNzb2NpYXRlZCB3aXRoIHRoaXMgbWVzc2FnZVxuICAgKi9cbiAgZ2V0U2lnbmF0dXJlcygpOiBTaWduYXR1cmVbXSB7XG4gICAgcmV0dXJuIFsuLi50aGlzLnNpZ25hdHVyZXNdO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgc2lnbmF0dXJlcyBmb3IgdGhpcyBtZXNzYWdlXG4gICAqIEBwYXJhbSBzaWduYXR1cmVzIEFycmF5IG9mIHNpZ25hdHVyZXMgdG8gc2V0XG4gICAqL1xuICBzZXRTaWduYXR1cmVzKHNpZ25hdHVyZXM6IFNpZ25hdHVyZVtdKTogdm9pZCB7XG4gICAgdGhpcy5zaWduYXR1cmVzID0gWy4uLnNpZ25hdHVyZXNdO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBzaWduYXR1cmUgdG8gdGhpcyBtZXNzYWdlXG4gICAqIEBwYXJhbSBzaWduYXR1cmUgVGhlIHNpZ25hdHVyZSB0byBhZGRcbiAgICovXG4gIGFkZFNpZ25hdHVyZShzaWduYXR1cmU6IFNpZ25hdHVyZSk6IHZvaWQge1xuICAgIHRoaXMuc2lnbmF0dXJlcy5wdXNoKHNpZ25hdHVyZSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgcGF5bG9hZCB0aGF0IHNob3VsZCBiZSBzaWduZWRcbiAgICogRWFjaCBtZXNzYWdlIHN0YW5kYXJkIG11c3QgaW1wbGVtZW50IHRoaXMgbWV0aG9kXG4gICAqL1xuICBhYnN0cmFjdCBnZXRTaWduYWJsZVBheWxvYWQoKTogUHJvbWlzZTxzdHJpbmcgfCBCdWZmZXI+O1xuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBzaWduYXR1cmVzIGluIGEgZm9ybWF0IHN1aXRhYmxlIGZvciBicm9hZGNhc3RpbmdcbiAgICovXG4gIGdldEJyb2FkY2FzdGFibGVTaWduYXR1cmVzKCk6IFNpZ25hdHVyZVtdIHtcbiAgICByZXR1cm4gdGhpcy5zaWduYXR1cmVzO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIHRoaXMgbWVzc2FnZSB0byBhIGJyb2FkY2FzdGFibGUgZm9ybWF0XG4gICAqIFVzZXMgaW50ZXJuYWwgc2lnbmF0dXJlcyBhbmQgc2lnbmVycyB0aGF0IHdlcmUgcHJldmlvdXNseSBzZXRcbiAgICogQHJldHVybnMgQSBicm9hZGNhc3RhYmxlIG1lc3NhZ2VcbiAgICovXG4gIGFzeW5jIHRvQnJvYWRjYXN0Rm9ybWF0KCk6IFByb21pc2U8QnJvYWRjYXN0YWJsZU1lc3NhZ2U+IHtcbiAgICBpZiAoIXRoaXMucGF5bG9hZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNZXNzYWdlIHBheWxvYWQgbXVzdCBiZSBzZXQgYmVmb3JlIGNvbnZlcnRpbmcgdG8gYnJvYWRjYXN0IGZvcm1hdCcpO1xuICAgIH1cbiAgICBjb25zdCBzaWduYWJsZVBheWxvYWQgPSBhd2FpdCB0aGlzLmdldFNpZ25hYmxlUGF5bG9hZCgpO1xuICAgIGxldCBzZXJpYWxpemVkU2lnbmFibGVQYXlsb2FkOiBzdHJpbmc7XG4gICAgaWYgKEJ1ZmZlci5pc0J1ZmZlcihzaWduYWJsZVBheWxvYWQpKSB7XG4gICAgICBzZXJpYWxpemVkU2lnbmFibGVQYXlsb2FkID0gc2lnbmFibGVQYXlsb2FkLnRvU3RyaW5nKCdiYXNlNjQnKTtcbiAgICB9IGVsc2Uge1xuICAgICAgc2VyaWFsaXplZFNpZ25hYmxlUGF5bG9hZCA9IEJ1ZmZlci5mcm9tKFN0cmluZyhzaWduYWJsZVBheWxvYWQpKS50b1N0cmluZygnYmFzZTY0Jyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIHR5cGU6IHRoaXMudHlwZSxcbiAgICAgIHBheWxvYWQ6IHRoaXMucGF5bG9hZCxcbiAgICAgIHNlcmlhbGl6ZWRTaWduYXR1cmVzOiBzZXJpYWxpemVTaWduYXR1cmVzKHRoaXMuZ2V0QnJvYWRjYXN0YWJsZVNpZ25hdHVyZXMoKSksXG4gICAgICBzaWduZXJzOiBbLi4udGhpcy5zaWduZXJzXSxcbiAgICAgIG1ldGFkYXRhOiB7XG4gICAgICAgIC4uLih0aGlzLm1ldGFkYXRhID8gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeSh0aGlzLm1ldGFkYXRhKSkgOiB7fSksIC8vIGRlZXAgY29weSB0byBhdm9pZCBtdXRhdGlvblxuICAgICAgfSxcbiAgICAgIHNpZ25hYmxlUGF5bG9hZDogc2VyaWFsaXplZFNpZ25hYmxlUGF5bG9hZCxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIFNlcmlhbGl6ZXMgdGhlIGJyb2FkY2FzdGFibGUgbWVzc2FnZSB0byBhIHN0cmluZ1xuICAgKiBVc2VzIGludGVybmFsIHNpZ25hdHVyZXMgYW5kIHNpZ25lcnMgdGhhdCB3ZXJlIHByZXZpb3VzbHkgc2V0XG4gICAqIEByZXR1cm5zIEEgSlNPTiBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIGJyb2FkY2FzdGFibGUgbWVzc2FnZVxuICAgKi9cbiAgYXN5bmMgdG9Ccm9hZGNhc3RTdHJpbmcoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBjb25zdCBicm9hZGNhc3RhYmxlID0gYXdhaXQgdGhpcy50b0Jyb2FkY2FzdEZvcm1hdCgpO1xuICAgIGNvbnN0IGJyb2FkY2FzdGFibGVTdHIgPSBKU09OLnN0cmluZ2lmeShicm9hZGNhc3RhYmxlKTtcbiAgICByZXR1cm4gQnVmZmVyLmZyb20oYnJvYWRjYXN0YWJsZVN0cikudG9TdHJpbmcoJ2hleCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIFZlcmlmaWVzIGlmIHRoZSBwcm92aWRlZCBlbmNvZGVkIG1lc3NhZ2UgbWF0Y2hlcyB0aGUgc2lnbmFibGUgcGF5bG9hZFxuICAgKiBAcGFyYW0gbWVzc2FnZUVuY29kZWRIZXggVGhlIGVuY29kZWQgbWVzc2FnZSBpbiBoZXggZm9ybWF0XG4gICAqIEBwYXJhbSBtZXRhZGF0YSBPcHRpb25hbCBtZXRhZGF0YSBmb3IgYWRkaXRpb25hbCB2ZXJpZmljYXRpb24gY29udGV4dFxuICAgKiBAcmV0dXJucyBUcnVlIGlmIHRoZSBlbmNvZGVkIG1lc3NhZ2UgbWF0Y2hlcyB0aGUgc2lnbmFibGUgcGF5bG9hZCwgZmFsc2Ugb3RoZXJ3aXNlXG4gICAqL1xuICBhc3luYyB2ZXJpZnlFbmNvZGVkUGF5bG9hZChtZXNzYWdlRW5jb2RlZEhleDogc3RyaW5nLCBtZXRhZGF0YT86IFJlY29yZDxzdHJpbmcsIHVua25vd24+KTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3Qgc2lnbmFibGVQYXlsb2FkID0gYXdhaXQgdGhpcy5nZXRTaWduYWJsZVBheWxvYWQoKTtcbiAgICBsZXQgc2lnbmFibGVQYXlsb2FkSGV4OiBzdHJpbmc7XG4gICAgaWYgKEJ1ZmZlci5pc0J1ZmZlcihzaWduYWJsZVBheWxvYWQpKSB7XG4gICAgICBzaWduYWJsZVBheWxvYWRIZXggPSBzaWduYWJsZVBheWxvYWQudG9TdHJpbmcoJ2hleCcpO1xuICAgIH0gZWxzZSB7XG4gICAgICBzaWduYWJsZVBheWxvYWRIZXggPSBzaWduYWJsZVBheWxvYWQ7XG4gICAgfVxuICAgIHJldHVybiBzaWduYWJsZVBheWxvYWRIZXggPT09IG1lc3NhZ2VFbmNvZGVkSGV4O1xuICB9XG59XG4iXX0=
@@ -1,6 +1,7 @@
1
- import { BroadcastableMessage, MessagePayload, MessageStandardType } from '../../../bitgo';
1
+ import { BroadcastableMessage, MessageOptions, MessagePayload, MessageStandardType } from '../../../bitgo';
2
2
  import { BaseCoin as CoinConfig } from '@bitgo/statics';
3
3
  import { IMessage, IMessageBuilder } from './iface';
4
+ import { Signature } from '../iface';
4
5
  /**
5
6
  * Base Message Builder
6
7
  */
@@ -8,7 +9,7 @@ export declare abstract class BaseMessageBuilder implements IMessageBuilder {
8
9
  protected coinConfig: Readonly<CoinConfig>;
9
10
  protected payload: MessagePayload;
10
11
  protected type: MessageStandardType;
11
- protected signatures: string[];
12
+ protected signatures: Signature[];
12
13
  protected signers: string[];
13
14
  protected metadata?: Record<string, unknown>;
14
15
  protected digest?: string;
@@ -42,9 +43,9 @@ export declare abstract class BaseMessageBuilder implements IMessageBuilder {
42
43
  getMetadata(): Record<string, unknown> | undefined;
43
44
  getType(): MessageStandardType;
44
45
  setType(value: MessageStandardType): IMessageBuilder;
45
- getSignatures(): string[];
46
- setSignatures(value: string[]): IMessageBuilder;
47
- addSignature(signature: string): IMessageBuilder;
46
+ getSignatures(): Signature[];
47
+ setSignatures(signatures: Signature[]): IMessageBuilder;
48
+ addSignature(signature: Signature): IMessageBuilder;
48
49
  getSigners(): string[];
49
50
  setSigners(value: string[]): IMessageBuilder;
50
51
  addSigner(signer: string): IMessageBuilder;
@@ -52,15 +53,15 @@ export declare abstract class BaseMessageBuilder implements IMessageBuilder {
52
53
  setDigest(value: string): IMessageBuilder;
53
54
  /**
54
55
  * Builds a message using the previously set payload and metadata
55
- * This abstract method must be implemented by each specific builder
56
56
  * @returns A Promise resolving to the built IMessage
57
57
  */
58
- abstract build(): Promise<IMessage>;
58
+ build(): Promise<IMessage>;
59
+ protected abstract buildMessage(options: MessageOptions): Promise<IMessage>;
59
60
  /**
60
61
  * Parse a broadcastable message back into a message
61
62
  * @param broadcastMessage The broadcastable message to parse
62
63
  * @returns The parsed message
63
64
  */
64
- abstract fromBroadcastFormat(broadcastMessage: BroadcastableMessage): Promise<IMessage>;
65
+ fromBroadcastFormat(broadcastMessage: BroadcastableMessage): Promise<IMessage>;
65
66
  }
66
67
  //# sourceMappingURL=baseMessageBuilder.d.ts.map
@@ -1 +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"}
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,cAAc,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC3G,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AACpD,OAAO,EAAyB,SAAS,EAAE,MAAM,UAAU,CAAC;AAE5D;;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,SAAS,EAAE,CAAM;IACvC,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,SAAS,EAAE;IAI5B,aAAa,CAAC,UAAU,EAAE,SAAS,EAAE,GAAG,eAAe;IAKvD,YAAY,CAAC,SAAS,EAAE,SAAS,GAAG,eAAe;IAWnD,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;;;OAGG;IACU,KAAK,IAAI,OAAO,CAAC,QAAQ,CAAC;IAwBvC,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC;IAE3E;;;;OAIG;IACU,mBAAmB,CAAC,gBAAgB,EAAE,oBAAoB,GAAG,OAAO,CAAC,QAAQ,CAAC;CAc5F"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BaseMessageBuilder = void 0;
4
4
  const bitgo_1 = require("../../../bitgo");
5
+ const iface_1 = require("../iface");
5
6
  /**
6
7
  * Base Message Builder
7
8
  */
@@ -61,12 +62,12 @@ class BaseMessageBuilder {
61
62
  getSignatures() {
62
63
  return this.signatures;
63
64
  }
64
- setSignatures(value) {
65
- this.signatures = value;
65
+ setSignatures(signatures) {
66
+ this.signatures = signatures;
66
67
  return this;
67
68
  }
68
69
  addSignature(signature) {
69
- if (!this.signatures.includes(signature)) {
70
+ if (!this.signatures.some((sig) => sig.publicKey.pub === signature.publicKey.pub && sig.signature.equals(signature.signature))) {
70
71
  this.signatures.push(signature);
71
72
  }
72
73
  return this;
@@ -91,6 +92,53 @@ class BaseMessageBuilder {
91
92
  this.digest = value;
92
93
  return this;
93
94
  }
95
+ /**
96
+ * Builds a message using the previously set payload and metadata
97
+ * @returns A Promise resolving to the built IMessage
98
+ */
99
+ async build() {
100
+ try {
101
+ if (!this.payload) {
102
+ throw new Error('Message payload must be set before building the message');
103
+ }
104
+ return this.buildMessage({
105
+ coinConfig: this.coinConfig,
106
+ payload: this.payload,
107
+ type: this.type,
108
+ signatures: this.signatures,
109
+ signers: this.signers,
110
+ metadata: {
111
+ ...this.metadata,
112
+ encoding: 'utf8',
113
+ },
114
+ });
115
+ }
116
+ catch (err) {
117
+ if (err instanceof Error) {
118
+ throw err;
119
+ }
120
+ throw new Error(`Failed to build message of type ${this.type}`);
121
+ }
122
+ }
123
+ /**
124
+ * Parse a broadcastable message back into a message
125
+ * @param broadcastMessage The broadcastable message to parse
126
+ * @returns The parsed message
127
+ */
128
+ async fromBroadcastFormat(broadcastMessage) {
129
+ const { type, payload, serializedSignatures, signers, metadata } = broadcastMessage;
130
+ if (type !== this.type) {
131
+ throw new Error(`Invalid message type, expected ${this.type}`);
132
+ }
133
+ this.payload = payload;
134
+ this.signatures = (0, iface_1.deserializeSignatures)(serializedSignatures);
135
+ this.signers = signers || [];
136
+ this.metadata = {
137
+ ...metadata,
138
+ encoding: 'utf8',
139
+ };
140
+ return this.build();
141
+ }
94
142
  }
95
143
  exports.BaseMessageBuilder = BaseMessageBuilder;
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZU1lc3NhZ2VCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FjY291bnQtbGliL2Jhc2VDb2luL21lc3NhZ2VzL2Jhc2VNZXNzYWdlQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwwQ0FBMkY7QUFJM0Y7O0dBRUc7QUFDSCxNQUFzQixrQkFBa0I7SUFTdEM7Ozs7T0FJRztJQUNILFlBQ0UsVUFBZ0MsRUFDaEMsY0FBbUMsMkJBQW1CLENBQUMsT0FBTztRQWR0RCxZQUFPLEdBQW1CLEVBQUUsQ0FBQztRQUU3QixlQUFVLEdBQWEsRUFBRSxDQUFDO1FBQzFCLFlBQU8sR0FBYSxFQUFFLENBQUM7UUFDdkIsYUFBUSxHQUE2QixFQUFFLENBQUM7UUFZaEQsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFDN0IsSUFBSSxDQUFDLElBQUksR0FBRyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxVQUFVLENBQUMsT0FBdUI7UUFDdkMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLFdBQVcsQ0FBQyxRQUFpQztRQUNsRCxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN6QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7O09BR0c7SUFDSSxVQUFVO1FBQ2YsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFFRDs7O09BR0c7SUFDSSxXQUFXO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRU0sT0FBTztRQUNaLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDO0lBRU0sT0FBTyxDQUFDLEtBQTBCO1FBQ3ZDLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLGFBQWE7UUFDbEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxhQUFhLENBQUMsS0FBZTtRQUNsQyxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUN4QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTSxZQUFZLENBQUMsU0FBaUI7UUFDbkMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7WUFDekMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDbEMsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLFVBQVU7UUFDZixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVNLFVBQVUsQ0FBQyxLQUFlO1FBQy9CLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLFNBQVMsQ0FBQyxNQUFjO1FBQzdCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1lBQ25DLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzVCLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTSxTQUFTO1FBQ2QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFFTSxTQUFTLENBQUMsS0FBYTtRQUM1QixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7Q0FlRjtBQXpIRCxnREF5SEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCcm9hZGNhc3RhYmxlTWVzc2FnZSwgTWVzc2FnZVBheWxvYWQsIE1lc3NhZ2VTdGFuZGFyZFR5cGUgfSBmcm9tICcuLi8uLi8uLi9iaXRnbyc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IHsgSU1lc3NhZ2UsIElNZXNzYWdlQnVpbGRlciB9IGZyb20gJy4vaWZhY2UnO1xuXG4vKipcbiAqIEJhc2UgTWVzc2FnZSBCdWlsZGVyXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlTWVzc2FnZUJ1aWxkZXIgaW1wbGVtZW50cyBJTWVzc2FnZUJ1aWxkZXIge1xuICBwcm90ZWN0ZWQgY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz47XG4gIHByb3RlY3RlZCBwYXlsb2FkOiBNZXNzYWdlUGF5bG9hZCA9ICcnO1xuICBwcm90ZWN0ZWQgdHlwZTogTWVzc2FnZVN0YW5kYXJkVHlwZTtcbiAgcHJvdGVjdGVkIHNpZ25hdHVyZXM6IHN0cmluZ1tdID0gW107XG4gIHByb3RlY3RlZCBzaWduZXJzOiBzdHJpbmdbXSA9IFtdO1xuICBwcm90ZWN0ZWQgbWV0YWRhdGE/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IHt9O1xuICBwcm90ZWN0ZWQgZGlnZXN0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBCYXNlIGNvbnN0cnVjdG9yLlxuICAgKiBAcGFyYW0gY29pbkNvbmZpZyBCYXNlQ29pbiBmcm9tIHN0YXRpY3MgbGlicmFyeVxuICAgKiBAcGFyYW0gbWVzc2FnZVR5cGUgVGhlIHR5cGUgb2YgbWVzc2FnZSB0aGlzIGJ1aWxkZXIgY3JlYXRlcywgZGVmYXVsdHMgdG8gVU5LTk9XTlxuICAgKi9cbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKFxuICAgIGNvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+LFxuICAgIG1lc3NhZ2VUeXBlOiBNZXNzYWdlU3RhbmRhcmRUeXBlID0gTWVzc2FnZVN0YW5kYXJkVHlwZS5VTktOT1dOXG4gICkge1xuICAgIHRoaXMuY29pbkNvbmZpZyA9IGNvaW5Db25maWc7XG4gICAgdGhpcy50eXBlID0gbWVzc2FnZVR5cGU7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgbWVzc2FnZSBwYXlsb2FkIHRvIGJlIHVzZWQgd2hlbiBidWlsZGluZyB0aGUgbWVzc2FnZVxuICAgKiBAcGFyYW0gcGF5bG9hZCBUaGUgbWVzc2FnZSBwYXlsb2FkIChzdHJpbmcsIEpTT04sIGV0Yy4pXG4gICAqIEByZXR1cm5zIFRoZSBidWlsZGVyIGluc3RhbmNlIGZvciBjaGFpbmluZ1xuICAgKi9cbiAgcHVibGljIHNldFBheWxvYWQocGF5bG9hZDogTWVzc2FnZVBheWxvYWQpOiBJTWVzc2FnZUJ1aWxkZXIge1xuICAgIHRoaXMucGF5bG9hZCA9IHBheWxvYWQ7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyBtZXRhZGF0YSBmb3IgdGhlIG1lc3NhZ2VcbiAgICogQHBhcmFtIG1ldGFkYXRhIEFkZGl0aW9uYWwgbWV0YWRhdGEgZm9yIHRoZSBtZXNzYWdlXG4gICAqIEByZXR1cm5zIFRoZSBidWlsZGVyIGluc3RhbmNlIGZvciBjaGFpbmluZ1xuICAgKi9cbiAgcHVibGljIHNldE1ldGFkYXRhKG1ldGFkYXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPik6IElNZXNzYWdlQnVpbGRlciB7XG4gICAgdGhpcy5tZXRhZGF0YSA9IG1ldGFkYXRhO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGN1cnJlbnQgbWVzc2FnZSBwYXlsb2FkXG4gICAqIEByZXR1cm5zIFRoZSBjdXJyZW50IG1lc3NhZ2UgcGF5bG9hZFxuICAgKi9cbiAgcHVibGljIGdldFBheWxvYWQoKTogTWVzc2FnZVBheWxvYWQgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLnBheWxvYWQ7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgY3VycmVudCBtZXRhZGF0YVxuICAgKiBAcmV0dXJucyBUaGUgY3VycmVudCBtZXRhZGF0YVxuICAgKi9cbiAgcHVibGljIGdldE1ldGFkYXRhKCk6IFJlY29yZDxzdHJpbmcsIHVua25vd24+IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5tZXRhZGF0YTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRUeXBlKCk6IE1lc3NhZ2VTdGFuZGFyZFR5cGUge1xuICAgIHJldHVybiB0aGlzLnR5cGU7XG4gIH1cblxuICBwdWJsaWMgc2V0VHlwZSh2YWx1ZTogTWVzc2FnZVN0YW5kYXJkVHlwZSk6IElNZXNzYWdlQnVpbGRlciB7XG4gICAgdGhpcy50eXBlID0gdmFsdWU7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgZ2V0U2lnbmF0dXJlcygpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIHRoaXMuc2lnbmF0dXJlcztcbiAgfVxuXG4gIHB1YmxpYyBzZXRTaWduYXR1cmVzKHZhbHVlOiBzdHJpbmdbXSk6IElNZXNzYWdlQnVpbGRlciB7XG4gICAgdGhpcy5zaWduYXR1cmVzID0gdmFsdWU7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgYWRkU2lnbmF0dXJlKHNpZ25hdHVyZTogc3RyaW5nKTogSU1lc3NhZ2VCdWlsZGVyIHtcbiAgICBpZiAoIXRoaXMuc2lnbmF0dXJlcy5pbmNsdWRlcyhzaWduYXR1cmUpKSB7XG4gICAgICB0aGlzLnNpZ25hdHVyZXMucHVzaChzaWduYXR1cmUpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHB1YmxpYyBnZXRTaWduZXJzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gdGhpcy5zaWduZXJzO1xuICB9XG5cbiAgcHVibGljIHNldFNpZ25lcnModmFsdWU6IHN0cmluZ1tdKTogSU1lc3NhZ2VCdWlsZGVyIHtcbiAgICB0aGlzLnNpZ25lcnMgPSB2YWx1ZTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHB1YmxpYyBhZGRTaWduZXIoc2lnbmVyOiBzdHJpbmcpOiBJTWVzc2FnZUJ1aWxkZXIge1xuICAgIGlmICghdGhpcy5zaWduZXJzLmluY2x1ZGVzKHNpZ25lcikpIHtcbiAgICAgIHRoaXMuc2lnbmVycy5wdXNoKHNpZ25lcik7XG4gICAgfVxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHVibGljIGdldERpZ2VzdCgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmRpZ2VzdDtcbiAgfVxuXG4gIHB1YmxpYyBzZXREaWdlc3QodmFsdWU6IHN0cmluZyk6IElNZXNzYWdlQnVpbGRlciB7XG4gICAgdGhpcy5kaWdlc3QgPSB2YWx1ZTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZHMgYSBtZXNzYWdlIHVzaW5nIHRoZSBwcmV2aW91c2x5IHNldCBwYXlsb2FkIGFuZCBtZXRhZGF0YVxuICAgKiBUaGlzIGFic3RyYWN0IG1ldGhvZCBtdXN0IGJlIGltcGxlbWVudGVkIGJ5IGVhY2ggc3BlY2lmaWMgYnVpbGRlclxuICAgKiBAcmV0dXJucyBBIFByb21pc2UgcmVzb2x2aW5nIHRvIHRoZSBidWlsdCBJTWVzc2FnZVxuICAgKi9cbiAgYWJzdHJhY3QgYnVpbGQoKTogUHJvbWlzZTxJTWVzc2FnZT47XG5cbiAgLyoqXG4gICAqIFBhcnNlIGEgYnJvYWRjYXN0YWJsZSBtZXNzYWdlIGJhY2sgaW50byBhIG1lc3NhZ2VcbiAgICogQHBhcmFtIGJyb2FkY2FzdE1lc3NhZ2UgVGhlIGJyb2FkY2FzdGFibGUgbWVzc2FnZSB0byBwYXJzZVxuICAgKiBAcmV0dXJucyBUaGUgcGFyc2VkIG1lc3NhZ2VcbiAgICovXG4gIGFic3RyYWN0IGZyb21Ccm9hZGNhc3RGb3JtYXQoYnJvYWRjYXN0TWVzc2FnZTogQnJvYWRjYXN0YWJsZU1lc3NhZ2UpOiBQcm9taXNlPElNZXNzYWdlPjtcbn1cbiJdfQ==
144
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZU1lc3NhZ2VCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FjY291bnQtbGliL2Jhc2VDb2luL21lc3NhZ2VzL2Jhc2VNZXNzYWdlQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwwQ0FBMkc7QUFHM0csb0NBQTREO0FBRTVEOztHQUVHO0FBQ0gsTUFBc0Isa0JBQWtCO0lBU3RDOzs7O09BSUc7SUFDSCxZQUNFLFVBQWdDLEVBQ2hDLGNBQW1DLDJCQUFtQixDQUFDLE9BQU87UUFkdEQsWUFBTyxHQUFtQixFQUFFLENBQUM7UUFFN0IsZUFBVSxHQUFnQixFQUFFLENBQUM7UUFDN0IsWUFBTyxHQUFhLEVBQUUsQ0FBQztRQUN2QixhQUFRLEdBQTZCLEVBQUUsQ0FBQztRQVloRCxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztRQUM3QixJQUFJLENBQUMsSUFBSSxHQUFHLFdBQVcsQ0FBQztJQUMxQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLFVBQVUsQ0FBQyxPQUF1QjtRQUN2QyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUN2QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksV0FBVyxDQUFDLFFBQWlDO1FBQ2xELElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFVBQVU7UUFDZixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFdBQVc7UUFDaEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFFTSxPQUFPO1FBQ1osT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ25CLENBQUM7SUFFTSxPQUFPLENBQUMsS0FBMEI7UUFDdkMsSUFBSSxDQUFDLElBQUksR0FB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QUM7UUFDRCxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUN2QixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUEsNkJBQXFCLEVBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLFFBQVEsR0FBRztZQUNkLEdBQUcsUUFBUTtZQUNYLFFBQVEsRUFBRSxNQUFNO1NBQ2pCLENBQUM7UUFDRixPQUFPLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN0QixDQUFDO0NBQ0Y7QUFqS0QsZ0RBaUtDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQnJvYWRjYXN0YWJsZU1lc3NhZ2UsIE1lc3NhZ2VPcHRpb25zLCBNZXNzYWdlUGF5bG9hZCwgTWVzc2FnZVN0YW5kYXJkVHlwZSB9IGZyb20gJy4uLy4uLy4uL2JpdGdvJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5pbXBvcnQgeyBJTWVzc2FnZSwgSU1lc3NhZ2VCdWlsZGVyIH0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBkZXNlcmlhbGl6ZVNpZ25hdHVyZXMsIFNpZ25hdHVyZSB9IGZyb20gJy4uL2lmYWNlJztcblxuLyoqXG4gKiBCYXNlIE1lc3NhZ2UgQnVpbGRlclxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZU1lc3NhZ2VCdWlsZGVyIGltcGxlbWVudHMgSU1lc3NhZ2VCdWlsZGVyIHtcbiAgcHJvdGVjdGVkIGNvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+O1xuICBwcm90ZWN0ZWQgcGF5bG9hZDogTWVzc2FnZVBheWxvYWQgPSAnJztcbiAgcHJvdGVjdGVkIHR5cGU6IE1lc3NhZ2VTdGFuZGFyZFR5cGU7XG4gIHByb3RlY3RlZCBzaWduYXR1cmVzOiBTaWduYXR1cmVbXSA9IFtdO1xuICBwcm90ZWN0ZWQgc2lnbmVyczogc3RyaW5nW10gPSBbXTtcbiAgcHJvdGVjdGVkIG1ldGFkYXRhPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSB7fTtcbiAgcHJvdGVjdGVkIGRpZ2VzdD86IHN0cmluZztcblxuICAvKipcbiAgICogQmFzZSBjb25zdHJ1Y3Rvci5cbiAgICogQHBhcmFtIGNvaW5Db25maWcgQmFzZUNvaW4gZnJvbSBzdGF0aWNzIGxpYnJhcnlcbiAgICogQHBhcmFtIG1lc3NhZ2VUeXBlIFRoZSB0eXBlIG9mIG1lc3NhZ2UgdGhpcyBidWlsZGVyIGNyZWF0ZXMsIGRlZmF1bHRzIHRvIFVOS05PV05cbiAgICovXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihcbiAgICBjb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPixcbiAgICBtZXNzYWdlVHlwZTogTWVzc2FnZVN0YW5kYXJkVHlwZSA9IE1lc3NhZ2VTdGFuZGFyZFR5cGUuVU5LTk9XTlxuICApIHtcbiAgICB0aGlzLmNvaW5Db25maWcgPSBjb2luQ29uZmlnO1xuICAgIHRoaXMudHlwZSA9IG1lc3NhZ2VUeXBlO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIG1lc3NhZ2UgcGF5bG9hZCB0byBiZSB1c2VkIHdoZW4gYnVpbGRpbmcgdGhlIG1lc3NhZ2VcbiAgICogQHBhcmFtIHBheWxvYWQgVGhlIG1lc3NhZ2UgcGF5bG9hZCAoc3RyaW5nLCBKU09OLCBldGMuKVxuICAgKiBAcmV0dXJucyBUaGUgYnVpbGRlciBpbnN0YW5jZSBmb3IgY2hhaW5pbmdcbiAgICovXG4gIHB1YmxpYyBzZXRQYXlsb2FkKHBheWxvYWQ6IE1lc3NhZ2VQYXlsb2FkKTogSU1lc3NhZ2VCdWlsZGVyIHtcbiAgICB0aGlzLnBheWxvYWQgPSBwYXlsb2FkO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgbWV0YWRhdGEgZm9yIHRoZSBtZXNzYWdlXG4gICAqIEBwYXJhbSBtZXRhZGF0YSBBZGRpdGlvbmFsIG1ldGFkYXRhIGZvciB0aGUgbWVzc2FnZVxuICAgKiBAcmV0dXJucyBUaGUgYnVpbGRlciBpbnN0YW5jZSBmb3IgY2hhaW5pbmdcbiAgICovXG4gIHB1YmxpYyBzZXRNZXRhZGF0YShtZXRhZGF0YTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4pOiBJTWVzc2FnZUJ1aWxkZXIge1xuICAgIHRoaXMubWV0YWRhdGEgPSBtZXRhZGF0YTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBjdXJyZW50IG1lc3NhZ2UgcGF5bG9hZFxuICAgKiBAcmV0dXJucyBUaGUgY3VycmVudCBtZXNzYWdlIHBheWxvYWRcbiAgICovXG4gIHB1YmxpYyBnZXRQYXlsb2FkKCk6IE1lc3NhZ2VQYXlsb2FkIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5wYXlsb2FkO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGN1cnJlbnQgbWV0YWRhdGFcbiAgICogQHJldHVybnMgVGhlIGN1cnJlbnQgbWV0YWRhdGFcbiAgICovXG4gIHB1YmxpYyBnZXRNZXRhZGF0YSgpOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMubWV0YWRhdGE7XG4gIH1cblxuICBwdWJsaWMgZ2V0VHlwZSgpOiBNZXNzYWdlU3RhbmRhcmRUeXBlIHtcbiAgICByZXR1cm4gdGhpcy50eXBlO1xuICB9XG5cbiAgcHVibGljIHNldFR5cGUodmFsdWU6IE1lc3NhZ2VTdGFuZGFyZFR5cGUpOiBJTWVzc2FnZUJ1aWxkZXIge1xuICAgIHRoaXMudHlwZSA9IHZhbHVlO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHVibGljIGdldFNpZ25hdHVyZXMoKTogU2lnbmF0dXJlW10ge1xuICAgIHJldHVybiB0aGlzLnNpZ25hdHVyZXM7XG4gIH1cblxuICBwdWJsaWMgc2V0U2lnbmF0dXJlcyhzaWduYXR1cmVzOiBTaWduYXR1cmVbXSk6IElNZXNzYWdlQnVpbGRlciB7XG4gICAgdGhpcy5zaWduYXR1cmVzID0gc2lnbmF0dXJlcztcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHB1YmxpYyBhZGRTaWduYXR1cmUoc2lnbmF0dXJlOiBTaWduYXR1cmUpOiBJTWVzc2FnZUJ1aWxkZXIge1xuICAgIGlmIChcbiAgICAgICF0aGlzLnNpZ25hdHVyZXMuc29tZShcbiAgICAgICAgKHNpZykgPT4gc2lnLnB1YmxpY0tleS5wdWIgPT09IHNpZ25hdHVyZS5wdWJsaWNLZXkucHViICYmIHNpZy5zaWduYXR1cmUuZXF1YWxzKHNpZ25hdHVyZS5zaWduYXR1cmUpXG4gICAgICApXG4gICAgKSB7XG4gICAgICB0aGlzLnNpZ25hdHVyZXMucHVzaChzaWduYXR1cmUpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHB1YmxpYyBnZXRTaWduZXJzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gdGhpcy5zaWduZXJzO1xuICB9XG5cbiAgcHVibGljIHNldFNpZ25lcnModmFsdWU6IHN0cmluZ1tdKTogSU1lc3NhZ2VCdWlsZGVyIHtcbiAgICB0aGlzLnNpZ25lcnMgPSB2YWx1ZTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHB1YmxpYyBhZGRTaWduZXIoc2lnbmVyOiBzdHJpbmcpOiBJTWVzc2FnZUJ1aWxkZXIge1xuICAgIGlmICghdGhpcy5zaWduZXJzLmluY2x1ZGVzKHNpZ25lcikpIHtcbiAgICAgIHRoaXMuc2lnbmVycy5wdXNoKHNpZ25lcik7XG4gICAgfVxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHVibGljIGdldERpZ2VzdCgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmRpZ2VzdDtcbiAgfVxuXG4gIHB1YmxpYyBzZXREaWdlc3QodmFsdWU6IHN0cmluZyk6IElNZXNzYWdlQnVpbGRlciB7XG4gICAgdGhpcy5kaWdlc3QgPSB2YWx1ZTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZHMgYSBtZXNzYWdlIHVzaW5nIHRoZSBwcmV2aW91c2x5IHNldCBwYXlsb2FkIGFuZCBtZXRhZGF0YVxuICAgKiBAcmV0dXJucyBBIFByb21pc2UgcmVzb2x2aW5nIHRvIHRoZSBidWlsdCBJTWVzc2FnZVxuICAgKi9cbiAgcHVibGljIGFzeW5jIGJ1aWxkKCk6IFByb21pc2U8SU1lc3NhZ2U+IHtcbiAgICB0cnkge1xuICAgICAgaWYgKCF0aGlzLnBheWxvYWQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdNZXNzYWdlIHBheWxvYWQgbXVzdCBiZSBzZXQgYmVmb3JlIGJ1aWxkaW5nIHRoZSBtZXNzYWdlJyk7XG4gICAgICB9XG4gICAgICByZXR1cm4gdGhpcy5idWlsZE1lc3NhZ2Uoe1xuICAgICAgICBjb2luQ29uZmlnOiB0aGlzLmNvaW5Db25maWcsXG4gICAgICAgIHBheWxvYWQ6IHRoaXMucGF5bG9hZCxcbiAgICAgICAgdHlwZTogdGhpcy50eXBlLFxuICAgICAgICBzaWduYXR1cmVzOiB0aGlzLnNpZ25hdHVyZXMsXG4gICAgICAgIHNpZ25lcnM6IHRoaXMuc2lnbmVycyxcbiAgICAgICAgbWV0YWRhdGE6IHtcbiAgICAgICAgICAuLi50aGlzLm1ldGFkYXRhLFxuICAgICAgICAgIGVuY29kaW5nOiAndXRmOCcsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGlmIChlcnIgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgICB0aHJvdyBlcnI7XG4gICAgICB9XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEZhaWxlZCB0byBidWlsZCBtZXNzYWdlIG9mIHR5cGUgJHt0aGlzLnR5cGV9YCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGJ1aWxkTWVzc2FnZShvcHRpb25zOiBNZXNzYWdlT3B0aW9ucyk6IFByb21pc2U8SU1lc3NhZ2U+O1xuXG4gIC8qKlxuICAgKiBQYXJzZSBhIGJyb2FkY2FzdGFibGUgbWVzc2FnZSBiYWNrIGludG8gYSBtZXNzYWdlXG4gICAqIEBwYXJhbSBicm9hZGNhc3RNZXNzYWdlIFRoZSBicm9hZGNhc3RhYmxlIG1lc3NhZ2UgdG8gcGFyc2VcbiAgICogQHJldHVybnMgVGhlIHBhcnNlZCBtZXNzYWdlXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZnJvbUJyb2FkY2FzdEZvcm1hdChicm9hZGNhc3RNZXNzYWdlOiBCcm9hZGNhc3RhYmxlTWVzc2FnZSk6IFByb21pc2U8SU1lc3NhZ2U+IHtcbiAgICBjb25zdCB7IHR5cGUsIHBheWxvYWQsIHNlcmlhbGl6ZWRTaWduYXR1cmVzLCBzaWduZXJzLCBtZXRhZGF0YSB9ID0gYnJvYWRjYXN0TWVzc2FnZTtcbiAgICBpZiAodHlwZSAhPT0gdGhpcy50eXBlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgbWVzc2FnZSB0eXBlLCBleHBlY3RlZCAke3RoaXMudHlwZX1gKTtcbiAgICB9XG4gICAgdGhpcy5wYXlsb2FkID0gcGF5bG9hZDtcbiAgICB0aGlzLnNpZ25hdHVyZXMgPSBkZXNlcmlhbGl6ZVNpZ25hdHVyZXMoc2VyaWFsaXplZFNpZ25hdHVyZXMpO1xuICAgIHRoaXMuc2lnbmVycyA9IHNpZ25lcnMgfHwgW107XG4gICAgdGhpcy5tZXRhZGF0YSA9IHtcbiAgICAgIC4uLm1ldGFkYXRhLFxuICAgICAgZW5jb2Rpbmc6ICd1dGY4JyxcbiAgICB9O1xuICAgIHJldHVybiB0aGlzLmJ1aWxkKCk7XG4gIH1cbn1cbiJdfQ==
@@ -25,9 +25,9 @@ export declare abstract class BaseMessageBuilderFactory implements IMessageBuild
25
25
  fromBroadcastFormat(broadcastMessage: BroadcastableMessage): IMessageBuilder;
26
26
  /**
27
27
  * Parses a broadcastable message and gets the message builder based on the message type.
28
- * @param broadcastString The broadcastable message to parse
28
+ * @param broadcastHex The broadcastable message to parse
29
29
  * @returns A message builder instance for the parsed broadcastable message type
30
30
  */
31
- fromBroadcastString(broadcastString: string): IMessageBuilder;
31
+ fromBroadcastString(broadcastHex: string): IMessageBuilder;
32
32
  }
33
33
  //# sourceMappingURL=baseMessageBuilderFactory.d.ts.map
@@ -1 +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"}
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;AAG3E;;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;IAa5E;;;;OAIG;IACH,mBAAmB,CAAC,YAAY,EAAE,MAAM,GAAG,eAAe;CAK3D"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BaseMessageBuilderFactory = void 0;
4
+ const iface_1 = require("../iface");
4
5
  /**
5
6
  * Base Message Builder
6
7
  */
@@ -18,17 +19,27 @@ class BaseMessageBuilderFactory {
18
19
  * @returns A message builder instance for the broadcastable message type
19
20
  */
20
21
  fromBroadcastFormat(broadcastMessage) {
21
- return this.getMessageBuilder(broadcastMessage.type);
22
+ const builder = this.getMessageBuilder(broadcastMessage.type);
23
+ builder.setPayload(broadcastMessage.payload);
24
+ builder.setMetadata(broadcastMessage.metadata || {});
25
+ if (broadcastMessage.signers) {
26
+ builder.setSigners(broadcastMessage.signers);
27
+ }
28
+ if (broadcastMessage.serializedSignatures) {
29
+ builder.setSignatures((0, iface_1.deserializeSignatures)(broadcastMessage.serializedSignatures));
30
+ }
31
+ return builder;
22
32
  }
23
33
  /**
24
34
  * Parses a broadcastable message and gets the message builder based on the message type.
25
- * @param broadcastString The broadcastable message to parse
35
+ * @param broadcastHex The broadcastable message to parse
26
36
  * @returns A message builder instance for the parsed broadcastable message type
27
37
  */
28
- fromBroadcastString(broadcastString) {
29
- const broadcastMessage = JSON.parse(broadcastString);
38
+ fromBroadcastString(broadcastHex) {
39
+ const broadcastStr = Buffer.from(broadcastHex).toString();
40
+ const broadcastMessage = JSON.parse(broadcastStr);
30
41
  return this.fromBroadcastFormat(broadcastMessage);
31
42
  }
32
43
  }
33
44
  exports.BaseMessageBuilderFactory = BaseMessageBuilderFactory;
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZU1lc3NhZ2VCdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hY2NvdW50LWxpYi9iYXNlQ29pbi9tZXNzYWdlcy9iYXNlTWVzc2FnZUJ1aWxkZXJGYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUlBOztHQUVHO0FBQ0gsTUFBc0IseUJBQXlCO0lBRzdDOzs7T0FHRztJQUNILFlBQXNCLFVBQWdDO1FBQ3BELElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO0lBQy9CLENBQUM7SUFTRDs7OztPQUlHO0lBQ0gsbUJBQW1CLENBQUMsZ0JBQXNDO1FBQ3hELE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsbUJBQW1CLENBQUMsZUFBdUI7UUFDekMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBeUIsQ0FBQztRQUM3RSxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3BELENBQUM7Q0FDRjtBQXBDRCw4REFvQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IHsgSU1lc3NhZ2VCdWlsZGVyLCBJTWVzc2FnZUJ1aWxkZXJGYWN0b3J5IH0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBCcm9hZGNhc3RhYmxlTWVzc2FnZSwgTWVzc2FnZVN0YW5kYXJkVHlwZSB9IGZyb20gJy4uLy4uLy4uL2JpdGdvJztcblxuLyoqXG4gKiBCYXNlIE1lc3NhZ2UgQnVpbGRlclxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZU1lc3NhZ2VCdWlsZGVyRmFjdG9yeSBpbXBsZW1lbnRzIElNZXNzYWdlQnVpbGRlckZhY3Rvcnkge1xuICBwcm90ZWN0ZWQgY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz47XG5cbiAgLyoqXG4gICAqIEJhc2UgY29uc3RydWN0b3IuXG4gICAqIEBwYXJhbSBjb2luQ29uZmlnIEJhc2VDb2luIGZyb20gc3RhdGljcyBsaWJyYXJ5XG4gICAqL1xuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICB0aGlzLmNvaW5Db25maWcgPSBjb2luQ29uZmlnO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgYSBtZXNzYWdlIGJ1aWxkZXIgZm9yIHRoZSBzcGVjaWZpZWQgbWVzc2FnZSB0eXBlXG4gICAqIEBwYXJhbSB0eXBlIFRoZSB0eXBlIG9mIG1lc3NhZ2UgdG8gYnVpbGRcbiAgICogQHJldHVybnMgQSBtZXNzYWdlIGJ1aWxkZXIgaW5zdGFuY2UgZm9yIHRoZSBzcGVjaWZpZWQgdHlwZVxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGdldE1lc3NhZ2VCdWlsZGVyKHR5cGU6IE1lc3NhZ2VTdGFuZGFyZFR5cGUpOiBJTWVzc2FnZUJ1aWxkZXI7XG5cbiAgLyoqXG4gICAqIEdldHMgYSBtZXNzYWdlIGJ1aWxkZXIgZnJvbSBhIGJyb2FkY2FzdGFibGUgbWVzc2FnZVxuICAgKiBAcGFyYW0gYnJvYWRjYXN0TWVzc2FnZSBUaGUgYnJvYWRjYXN0YWJsZSBtZXNzYWdlXG4gICAqIEByZXR1cm5zIEEgbWVzc2FnZSBidWlsZGVyIGluc3RhbmNlIGZvciB0aGUgYnJvYWRjYXN0YWJsZSBtZXNzYWdlIHR5cGVcbiAgICovXG4gIGZyb21Ccm9hZGNhc3RGb3JtYXQoYnJvYWRjYXN0TWVzc2FnZTogQnJvYWRjYXN0YWJsZU1lc3NhZ2UpOiBJTWVzc2FnZUJ1aWxkZXIge1xuICAgIHJldHVybiB0aGlzLmdldE1lc3NhZ2VCdWlsZGVyKGJyb2FkY2FzdE1lc3NhZ2UudHlwZSk7XG4gIH1cblxuICAvKipcbiAgICogUGFyc2VzIGEgYnJvYWRjYXN0YWJsZSBtZXNzYWdlIGFuZCBnZXRzIHRoZSBtZXNzYWdlIGJ1aWxkZXIgYmFzZWQgb24gdGhlIG1lc3NhZ2UgdHlwZS5cbiAgICogQHBhcmFtIGJyb2FkY2FzdFN0cmluZyBUaGUgYnJvYWRjYXN0YWJsZSBtZXNzYWdlIHRvIHBhcnNlXG4gICAqIEByZXR1cm5zIEEgbWVzc2FnZSBidWlsZGVyIGluc3RhbmNlIGZvciB0aGUgcGFyc2VkIGJyb2FkY2FzdGFibGUgbWVzc2FnZSB0eXBlXG4gICAqL1xuICBmcm9tQnJvYWRjYXN0U3RyaW5nKGJyb2FkY2FzdFN0cmluZzogc3RyaW5nKTogSU1lc3NhZ2VCdWlsZGVyIHtcbiAgICBjb25zdCBicm9hZGNhc3RNZXNzYWdlID0gSlNPTi5wYXJzZShicm9hZGNhc3RTdHJpbmcpIGFzIEJyb2FkY2FzdGFibGVNZXNzYWdlO1xuICAgIHJldHVybiB0aGlzLmZyb21Ccm9hZGNhc3RGb3JtYXQoYnJvYWRjYXN0TWVzc2FnZSk7XG4gIH1cbn1cbiJdfQ==
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZU1lc3NhZ2VCdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hY2NvdW50LWxpYi9iYXNlQ29pbi9tZXNzYWdlcy9iYXNlTWVzc2FnZUJ1aWxkZXJGYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUdBLG9DQUFpRDtBQUVqRDs7R0FFRztBQUNILE1BQXNCLHlCQUF5QjtJQUc3Qzs7O09BR0c7SUFDSCxZQUFzQixVQUFnQztRQUNwRCxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztJQUMvQixDQUFDO0lBU0Q7Ozs7T0FJRztJQUNILG1CQUFtQixDQUFDLGdCQUFzQztRQUN4RCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDOUQsT0FBTyxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM3QyxPQUFPLENBQUMsV0FBVyxDQUFDLGdCQUFnQixDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUNyRCxJQUFJLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQzdCLE9BQU8sQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0MsQ0FBQztRQUNELElBQUksZ0JBQWdCLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztZQUMxQyxPQUFPLENBQUMsYUFBYSxDQUFDLElBQUEsNkJBQXFCLEVBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDO1FBQ3RGLENBQUM7UUFDRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILG1CQUFtQixDQUFDLFlBQW9CO1FBQ3RDLE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDMUQsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBeUIsQ0FBQztRQUMxRSxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3BELENBQUM7Q0FDRjtBQTlDRCw4REE4Q0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IHsgSU1lc3NhZ2VCdWlsZGVyLCBJTWVzc2FnZUJ1aWxkZXJGYWN0b3J5IH0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBCcm9hZGNhc3RhYmxlTWVzc2FnZSwgTWVzc2FnZVN0YW5kYXJkVHlwZSB9IGZyb20gJy4uLy4uLy4uL2JpdGdvJztcbmltcG9ydCB7IGRlc2VyaWFsaXplU2lnbmF0dXJlcyB9IGZyb20gJy4uL2lmYWNlJztcblxuLyoqXG4gKiBCYXNlIE1lc3NhZ2UgQnVpbGRlclxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZU1lc3NhZ2VCdWlsZGVyRmFjdG9yeSBpbXBsZW1lbnRzIElNZXNzYWdlQnVpbGRlckZhY3Rvcnkge1xuICBwcm90ZWN0ZWQgY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz47XG5cbiAgLyoqXG4gICAqIEJhc2UgY29uc3RydWN0b3IuXG4gICAqIEBwYXJhbSBjb2luQ29uZmlnIEJhc2VDb2luIGZyb20gc3RhdGljcyBsaWJyYXJ5XG4gICAqL1xuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICB0aGlzLmNvaW5Db25maWcgPSBjb2luQ29uZmlnO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgYSBtZXNzYWdlIGJ1aWxkZXIgZm9yIHRoZSBzcGVjaWZpZWQgbWVzc2FnZSB0eXBlXG4gICAqIEBwYXJhbSB0eXBlIFRoZSB0eXBlIG9mIG1lc3NhZ2UgdG8gYnVpbGRcbiAgICogQHJldHVybnMgQSBtZXNzYWdlIGJ1aWxkZXIgaW5zdGFuY2UgZm9yIHRoZSBzcGVjaWZpZWQgdHlwZVxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGdldE1lc3NhZ2VCdWlsZGVyKHR5cGU6IE1lc3NhZ2VTdGFuZGFyZFR5cGUpOiBJTWVzc2FnZUJ1aWxkZXI7XG5cbiAgLyoqXG4gICAqIEdldHMgYSBtZXNzYWdlIGJ1aWxkZXIgZnJvbSBhIGJyb2FkY2FzdGFibGUgbWVzc2FnZVxuICAgKiBAcGFyYW0gYnJvYWRjYXN0TWVzc2FnZSBUaGUgYnJvYWRjYXN0YWJsZSBtZXNzYWdlXG4gICAqIEByZXR1cm5zIEEgbWVzc2FnZSBidWlsZGVyIGluc3RhbmNlIGZvciB0aGUgYnJvYWRjYXN0YWJsZSBtZXNzYWdlIHR5cGVcbiAgICovXG4gIGZyb21Ccm9hZGNhc3RGb3JtYXQoYnJvYWRjYXN0TWVzc2FnZTogQnJvYWRjYXN0YWJsZU1lc3NhZ2UpOiBJTWVzc2FnZUJ1aWxkZXIge1xuICAgIGNvbnN0IGJ1aWxkZXIgPSB0aGlzLmdldE1lc3NhZ2VCdWlsZGVyKGJyb2FkY2FzdE1lc3NhZ2UudHlwZSk7XG4gICAgYnVpbGRlci5zZXRQYXlsb2FkKGJyb2FkY2FzdE1lc3NhZ2UucGF5bG9hZCk7XG4gICAgYnVpbGRlci5zZXRNZXRhZGF0YShicm9hZGNhc3RNZXNzYWdlLm1ldGFkYXRhIHx8IHt9KTtcbiAgICBpZiAoYnJvYWRjYXN0TWVzc2FnZS5zaWduZXJzKSB7XG4gICAgICBidWlsZGVyLnNldFNpZ25lcnMoYnJvYWRjYXN0TWVzc2FnZS5zaWduZXJzKTtcbiAgICB9XG4gICAgaWYgKGJyb2FkY2FzdE1lc3NhZ2Uuc2VyaWFsaXplZFNpZ25hdHVyZXMpIHtcbiAgICAgIGJ1aWxkZXIuc2V0U2lnbmF0dXJlcyhkZXNlcmlhbGl6ZVNpZ25hdHVyZXMoYnJvYWRjYXN0TWVzc2FnZS5zZXJpYWxpemVkU2lnbmF0dXJlcykpO1xuICAgIH1cbiAgICByZXR1cm4gYnVpbGRlcjtcbiAgfVxuXG4gIC8qKlxuICAgKiBQYXJzZXMgYSBicm9hZGNhc3RhYmxlIG1lc3NhZ2UgYW5kIGdldHMgdGhlIG1lc3NhZ2UgYnVpbGRlciBiYXNlZCBvbiB0aGUgbWVzc2FnZSB0eXBlLlxuICAgKiBAcGFyYW0gYnJvYWRjYXN0SGV4IFRoZSBicm9hZGNhc3RhYmxlIG1lc3NhZ2UgdG8gcGFyc2VcbiAgICogQHJldHVybnMgQSBtZXNzYWdlIGJ1aWxkZXIgaW5zdGFuY2UgZm9yIHRoZSBwYXJzZWQgYnJvYWRjYXN0YWJsZSBtZXNzYWdlIHR5cGVcbiAgICovXG4gIGZyb21Ccm9hZGNhc3RTdHJpbmcoYnJvYWRjYXN0SGV4OiBzdHJpbmcpOiBJTWVzc2FnZUJ1aWxkZXIge1xuICAgIGNvbnN0IGJyb2FkY2FzdFN0ciA9IEJ1ZmZlci5mcm9tKGJyb2FkY2FzdEhleCkudG9TdHJpbmcoKTtcbiAgICBjb25zdCBicm9hZGNhc3RNZXNzYWdlID0gSlNPTi5wYXJzZShicm9hZGNhc3RTdHIpIGFzIEJyb2FkY2FzdGFibGVNZXNzYWdlO1xuICAgIHJldHVybiB0aGlzLmZyb21Ccm9hZGNhc3RGb3JtYXQoYnJvYWRjYXN0TWVzc2FnZSk7XG4gIH1cbn1cbiJdfQ==