@bitgo/abstract-eth 24.5.4 → 24.6.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 (39) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/dist/src/lib/index.d.ts +1 -0
  3. package/dist/src/lib/index.d.ts.map +1 -1
  4. package/dist/src/lib/index.js +2 -1
  5. package/dist/src/lib/messages/eip191/eip191Message.d.ts +12 -0
  6. package/dist/src/lib/messages/eip191/eip191Message.d.ts.map +1 -0
  7. package/dist/src/lib/messages/eip191/eip191Message.js +27 -0
  8. package/dist/src/lib/messages/eip191/eip191MessageBuilder.d.ts +25 -0
  9. package/dist/src/lib/messages/eip191/eip191MessageBuilder.d.ts.map +1 -0
  10. package/dist/src/lib/messages/eip191/eip191MessageBuilder.js +68 -0
  11. package/dist/src/lib/messages/eip191/index.d.ts +3 -0
  12. package/dist/src/lib/messages/eip191/index.d.ts.map +1 -0
  13. package/dist/src/lib/messages/eip191/index.js +19 -0
  14. package/dist/src/lib/messages/index.d.ts +3 -0
  15. package/dist/src/lib/messages/index.d.ts.map +1 -0
  16. package/dist/src/lib/messages/index.js +19 -0
  17. package/dist/src/lib/messages/messageBuilderFactory.d.ts +7 -0
  18. package/dist/src/lib/messages/messageBuilderFactory.d.ts.map +1 -0
  19. package/dist/src/lib/messages/messageBuilderFactory.js +20 -0
  20. package/dist/test/unit/index.d.ts +1 -0
  21. package/dist/test/unit/index.d.ts.map +1 -1
  22. package/dist/test/unit/index.js +2 -1
  23. package/dist/test/unit/messages/eip191/eip191Message.d.ts +2 -0
  24. package/dist/test/unit/messages/eip191/eip191Message.d.ts.map +1 -0
  25. package/dist/test/unit/messages/eip191/eip191Message.js +148 -0
  26. package/dist/test/unit/messages/eip191/eip191MessageBuilder.d.ts +2 -0
  27. package/dist/test/unit/messages/eip191/eip191MessageBuilder.d.ts.map +1 -0
  28. package/dist/test/unit/messages/eip191/eip191MessageBuilder.js +95 -0
  29. package/dist/test/unit/messages/fixtures.d.ts +19 -0
  30. package/dist/test/unit/messages/fixtures.d.ts.map +1 -0
  31. package/dist/test/unit/messages/fixtures.js +25 -0
  32. package/dist/test/unit/messages/index.d.ts +4 -0
  33. package/dist/test/unit/messages/index.d.ts.map +1 -0
  34. package/dist/test/unit/messages/index.js +20 -0
  35. package/dist/test/unit/messages/messageBuilderFactory.d.ts +2 -0
  36. package/dist/test/unit/messages/messageBuilderFactory.d.ts.map +1 -0
  37. package/dist/test/unit/messages/messageBuilderFactory.js +44 -0
  38. package/dist/tsconfig.tsbuildinfo +1 -1
  39. package/package.json +7 -7
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ require("should");
7
+ const sinon_1 = __importDefault(require("sinon"));
8
+ const sdk_core_1 = require("@bitgo/sdk-core");
9
+ const fixtures_1 = require("../fixtures");
10
+ const src_1 = require("../../../../src");
11
+ describe('EIP191 Message Builder', () => {
12
+ const sandbox = sinon_1.default.createSandbox();
13
+ afterEach(() => {
14
+ sandbox.restore();
15
+ });
16
+ describe('constructor', () => {
17
+ it('should initialize with the correct message type', () => {
18
+ const builder = new src_1.Eip191MessageBuilder(fixtures_1.fixtures.coin);
19
+ // Test the builder's private property indirectly through build()
20
+ builder.should.be.instanceof(src_1.Eip191MessageBuilder);
21
+ });
22
+ });
23
+ describe('build method', () => {
24
+ it('should build a valid EIP191 message', async () => {
25
+ const builder = new src_1.Eip191MessageBuilder(fixtures_1.fixtures.coin);
26
+ builder.setPayload(fixtures_1.fixtures.messages.validMessage).setMetadata({ customData: 'test data' });
27
+ const message = await builder.build();
28
+ message.should.be.instanceof(src_1.EIP191Message);
29
+ message.getType().should.equal(sdk_core_1.MessageStandardType.EIP191);
30
+ message.getPayload().should.equal(fixtures_1.fixtures.messages.validMessage);
31
+ message.getMetadata().should.have.property('customData', 'test data');
32
+ message.getMetadata().should.have.property('encoding', 'utf8');
33
+ });
34
+ it('should throw an error when building without setting payload', async () => {
35
+ const builder = new src_1.Eip191MessageBuilder(fixtures_1.fixtures.coin);
36
+ await builder.build().should.be.rejectedWith('Message payload must be set before building the message');
37
+ });
38
+ it('should include signers when building a message', async () => {
39
+ const builder = new src_1.Eip191MessageBuilder(fixtures_1.fixtures.coin);
40
+ builder.setPayload(fixtures_1.fixtures.messages.validMessage);
41
+ builder.addSigner(fixtures_1.fixtures.eip191.signer);
42
+ const message = await builder.build();
43
+ message.getSigners().should.containEql(fixtures_1.fixtures.eip191.signer);
44
+ });
45
+ it('should include signatures when building a message', async () => {
46
+ const builder = new src_1.Eip191MessageBuilder(fixtures_1.fixtures.coin);
47
+ builder.setPayload(fixtures_1.fixtures.messages.validMessage);
48
+ builder.addSignature(fixtures_1.fixtures.eip191.signature);
49
+ const message = await builder.build();
50
+ message.getSignatures().should.containEql(fixtures_1.fixtures.eip191.signature);
51
+ });
52
+ it('should override metadata.encoding with utf8', async () => {
53
+ const builder = new src_1.Eip191MessageBuilder(fixtures_1.fixtures.coin);
54
+ builder.setPayload(fixtures_1.fixtures.messages.validMessage);
55
+ builder.setMetadata({ encoding: 'hex', customData: 'test data' });
56
+ const message = await builder.build();
57
+ message.getMetadata().should.have.property('encoding', 'utf8');
58
+ message.getMetadata().should.have.property('customData', 'test data');
59
+ });
60
+ });
61
+ describe('fromBroadcastFormat method', () => {
62
+ it('should reconstruct a message from broadcast format', async () => {
63
+ const builder = new src_1.Eip191MessageBuilder(fixtures_1.fixtures.coin);
64
+ const broadcastMessage = {
65
+ type: sdk_core_1.MessageStandardType.EIP191,
66
+ payload: fixtures_1.fixtures.messages.validMessage,
67
+ signatures: [fixtures_1.fixtures.eip191.signature],
68
+ signers: [fixtures_1.fixtures.eip191.signer],
69
+ metadata: fixtures_1.fixtures.eip191.metadata,
70
+ };
71
+ const message = await builder.fromBroadcastFormat(broadcastMessage);
72
+ message.should.be.instanceof(src_1.EIP191Message);
73
+ message.getType().should.equal(sdk_core_1.MessageStandardType.EIP191);
74
+ message.getPayload().should.equal(fixtures_1.fixtures.messages.validMessage);
75
+ message.getSignatures().should.containEql(fixtures_1.fixtures.eip191.signature);
76
+ message.getSigners().should.containEql(fixtures_1.fixtures.eip191.signer);
77
+ message.getMetadata().should.have.property('encoding', 'utf8');
78
+ message.getMetadata().should.have.property('customData', 'test data');
79
+ });
80
+ it('should throw an error for incorrect message type', async () => {
81
+ const builder = new src_1.Eip191MessageBuilder(fixtures_1.fixtures.coin);
82
+ const broadcastMessage = {
83
+ type: sdk_core_1.MessageStandardType.UNKNOWN,
84
+ payload: fixtures_1.fixtures.messages.validMessage,
85
+ signatures: [fixtures_1.fixtures.eip191.signature],
86
+ signers: [fixtures_1.fixtures.eip191.signer],
87
+ metadata: {},
88
+ };
89
+ await builder
90
+ .fromBroadcastFormat(broadcastMessage)
91
+ .should.be.rejectedWith(`Invalid message type, expected ${sdk_core_1.MessageStandardType.EIP191}`);
92
+ });
93
+ });
94
+ });
95
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWlwMTkxTWVzc2FnZUJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi90ZXN0L3VuaXQvbWVzc2FnZXMvZWlwMTkxL2VpcDE5MU1lc3NhZ2VCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0JBQWdCO0FBQ2hCLGtEQUEwQjtBQUMxQiw4Q0FBc0Q7QUFDdEQsMENBQXVDO0FBQ3ZDLHlDQUFzRTtBQUV0RSxRQUFRLENBQUMsd0JBQXdCLEVBQUUsR0FBRyxFQUFFO0lBQ3RDLE1BQU0sT0FBTyxHQUFHLGVBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUV0QyxTQUFTLENBQUMsR0FBRyxFQUFFO1FBQ2IsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3BCLENBQUMsQ0FBQyxDQUFDO0lBRUgsUUFBUSxDQUFDLGFBQWEsRUFBRSxHQUFHLEVBQUU7UUFDM0IsRUFBRSxDQUFDLGlEQUFpRCxFQUFFLEdBQUcsRUFBRTtZQUN6RCxNQUFNLE9BQU8sR0FBRyxJQUFJLDBCQUFvQixDQUFDLG1CQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDeEQsaUVBQWlFO1lBQ2pFLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQywwQkFBb0IsQ0FBQyxDQUFDO1FBQ3JELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7SUFFSCxRQUFRLENBQUMsY0FBYyxFQUFFLEdBQUcsRUFBRTtRQUM1QixFQUFFLENBQUMscUNBQXFDLEVBQUUsS0FBSyxJQUFJLEVBQUU7WUFDbkQsTUFBTSxPQUFPLEdBQUcsSUFBSSwwQkFBb0IsQ0FBQyxtQkFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRXhELE9BQU8sQ0FBQyxVQUFVLENBQUMsbUJBQVEsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsV0FBVyxDQUFDLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7WUFF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dCBzaW5vbiBmcm9tICdzaW5vbic7XG5pbXBvcnQgeyBNZXNzYWdlU3RhbmRhcmRUeXBlIH0gZnJvbSAnQGJpdGdvL3Nkay1jb3JlJztcbmltcG9ydCB7IGZpeHR1cmVzIH0gZnJvbSAnLi4vZml4dHVyZXMnO1xuaW1wb3J0IHsgRUlQMTkxTWVzc2FnZSwgRWlwMTkxTWVzc2FnZUJ1aWxkZXIgfSBmcm9tICcuLi8uLi8uLi8uLi9zcmMnO1xuXG5kZXNjcmliZSgnRUlQMTkxIE1lc3NhZ2UgQnVpbGRlcicsICgpID0+IHtcbiAgY29uc3Qgc2FuZGJveCA9IHNpbm9uLmNyZWF0ZVNhbmRib3goKTtcblxuICBhZnRlckVhY2goKCkgPT4ge1xuICAgIHNhbmRib3gucmVzdG9yZSgpO1xuICB9KTtcblxuICBkZXNjcmliZSgnY29uc3RydWN0b3InLCAoKSA9PiB7XG4gICAgaXQoJ3Nob3VsZCBpbml0aWFsaXplIHdpdGggdGhlIGNvcnJlY3QgbWVzc2FnZSB0eXBlJywgKCkgPT4ge1xuICAgICAgY29uc3QgYnVpbGRlciA9IG5ldyBFaXAxOTFNZXNzYWdlQnVpbGRlcihmaXh0dXJlcy5jb2luKTtcbiAgICAgIC8vIFRlc3QgdGhlIGJ1aWxkZXIncyBwcml2YXRlIHByb3BlcnR5IGluZGlyZWN0bHkgdGhyb3VnaCBidWlsZCgpXG4gICAgICBidWlsZGVyLnNob3VsZC5iZS5pbnN0YW5jZW9mKEVpcDE5MU1lc3NhZ2VCdWlsZGVyKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ2J1aWxkIG1ldGhvZCcsICgpID0+IHtcbiAgICBpdCgnc2hvdWxkIGJ1aWxkIGEgdmFsaWQgRUlQMTkxIG1lc3NhZ2UnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBidWlsZGVyID0gbmV3IEVpcDE5MU1lc3NhZ2VCdWlsZGVyKGZpeHR1cmVzLmNvaW4pO1xuXG4gICAgICBidWlsZGVyLnNldFBheWxvYWQoZml4dHVyZXMubWVzc2FnZXMudmFsaWRNZXNzYWdlKS5zZXRNZXRhZGF0YSh7IGN1c3RvbURhdGE6ICd0ZXN0IGRhdGEnIH0pO1xuXG4gICAgICBjb25zdCBtZXNzYWdlID0gYXdhaXQgYnVpbGRlci5idWlsZCgpO1xuXG4gICAgICBtZXNzYWdlLnNob3VsZC5iZS5pbnN0YW5jZW9mKEVJUDE5MU1lc3NhZ2UpO1xuICAgICAgbWVzc2FnZS5nZXRUeXBlKCkuc2hvdWxkLmVxdWFsKE1lc3NhZ2VTdGFuZGFyZFR5cGUuRUlQMTkxKTtcbiAgICAgIG1lc3NhZ2UuZ2V0UGF5bG9hZCgpLnNob3VsZC5lcXVhbChmaXh0dXJlcy5tZXNzYWdlcy52YWxpZE1lc3NhZ2UpO1xuICAgICAgbWVzc2FnZS5nZXRNZXRhZGF0YSgpIS5zaG91bGQuaGF2ZS5wcm9wZXJ0eSgnY3VzdG9tRGF0YScsICd0ZXN0IGRhdGEnKTtcbiAgICAgIG1lc3NhZ2UuZ2V0TWV0YWRhdGEoKSEuc2hvdWxkLmhhdmUucHJvcGVydHkoJ2VuY29kaW5nJywgJ3V0ZjgnKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgdGhyb3cgYW4gZXJyb3Igd2hlbiBidWlsZGluZyB3aXRob3V0IHNldHRpbmcgcGF5bG9hZCcsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGJ1aWxkZXIgPSBuZXcgRWlwMTkxTWVzc2FnZUJ1aWxkZXIoZml4dHVyZXMuY29pbik7XG5cbiAgICAgIGF3YWl0IGJ1aWxkZXIuYnVpbGQoKS5zaG91bGQuYmUucmVqZWN0ZWRXaXRoKCdNZXNzYWdlIHBheWxvYWQgbXVzdCBiZSBzZXQgYmVmb3JlIGJ1aWxkaW5nIHRoZSBtZXNzYWdlJyk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIGluY2x1ZGUgc2lnbmVycyB3aGVuIGJ1aWxkaW5nIGEgbWVzc2FnZScsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGJ1aWxkZXIgPSBuZXcgRWlwMTkxTWVzc2FnZUJ1aWxkZXIoZml4dHVyZXMuY29pbik7XG5cbiAgICAgIGJ1aWxkZXIuc2V0UGF5bG9hZChmaXh0dXJlcy5tZXNzYWdlcy52YWxpZE1lc3NhZ2UpO1xuICAgICAgYnVpbGRlci5hZGRTaWduZXIoZml4dHVyZXMuZWlwMTkxLnNpZ25lcik7XG5cbiAgICAgIGNvbnN0IG1lc3NhZ2UgPSBhd2FpdCBidWlsZGVyLmJ1aWxkKCk7XG5cbiAgICAgIG1lc3NhZ2UuZ2V0U2lnbmVycygpLnNob3VsZC5jb250YWluRXFsKGZpeHR1cmVzLmVpcDE5MS5zaWduZXIpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCBpbmNsdWRlIHNpZ25hdHVyZXMgd2hlbiBidWlsZGluZyBhIG1lc3NhZ2UnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBidWlsZGVyID0gbmV3IEVpcDE5MU1lc3NhZ2VCdWlsZGVyKGZpeHR1cmVzLmNvaW4pO1xuXG4gICAgICBidWlsZGVyLnNldFBheWxvYWQoZml4dHVyZXMubWVzc2FnZXMudmFsaWRNZXNzYWdlKTtcbiAgICAgIGJ1aWxkZXIuYWRkU2lnbmF0dXJlKGZpeHR1cmVzLmVpcDE5MS5zaWduYXR1cmUpO1xuXG4gICAgICBjb25zdCBtZXNzYWdlID0gYXdhaXQgYnVpbGRlci5idWlsZCgpO1xuXG4gICAgICBtZXNzYWdlLmdldFNpZ25hdHVyZXMoKS5zaG91bGQuY29udGFpbkVxbChmaXh0dXJlcy5laXAxOTEuc2lnbmF0dXJlKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgb3ZlcnJpZGUgbWV0YWRhdGEuZW5jb2Rpbmcgd2l0aCB1dGY4JywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgYnVpbGRlciA9IG5ldyBFaXAxOTFNZXNzYWdlQnVpbGRlcihmaXh0dXJlcy5jb2luKTtcblxuICAgICAgYnVpbGRlci5zZXRQYXlsb2FkKGZpeHR1cmVzLm1lc3NhZ2VzLnZhbGlkTWVzc2FnZSk7XG4gICAgICBidWlsZGVyLnNldE1ldGFkYXRhKHsgZW5jb2Rpbmc6ICdoZXgnLCBjdXN0b21EYXRhOiAndGVzdCBkYXRhJyB9KTtcblxuICAgICAgY29uc3QgbWVzc2FnZSA9IGF3YWl0IGJ1aWxkZXIuYnVpbGQoKTtcblxuICAgICAgbWVzc2FnZS5nZXRNZXRhZGF0YSgpIS5zaG91bGQuaGF2ZS5wcm9wZXJ0eSgnZW5jb2RpbmcnLCAndXRmOCcpO1xuICAgICAgbWVzc2FnZS5nZXRNZXRhZGF0YSgpIS5zaG91bGQuaGF2ZS5wcm9wZXJ0eSgnY3VzdG9tRGF0YScsICd0ZXN0IGRhdGEnKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ2Zyb21Ccm9hZGNhc3RGb3JtYXQgbWV0aG9kJywgKCkgPT4ge1xuICAgIGl0KCdzaG91bGQgcmVjb25zdHJ1Y3QgYSBtZXNzYWdlIGZyb20gYnJvYWRjYXN0IGZvcm1hdCcsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGJ1aWxkZXIgPSBuZXcgRWlwMTkxTWVzc2FnZUJ1aWxkZXIoZml4dHVyZXMuY29pbik7XG5cbiAgICAgIGNvbnN0IGJyb2FkY2FzdE1lc3NhZ2UgPSB7XG4gICAgICAgIHR5cGU6IE1lc3NhZ2VTdGFuZGFyZFR5cGUuRUlQMTkxLFxuICAgICAgICBwYXlsb2FkOiBmaXh0dXJlcy5tZXNzYWdlcy52YWxpZE1lc3NhZ2UsXG4gICAgICAgIHNpZ25hdHVyZXM6IFtmaXh0dXJlcy5laXAxOTEuc2lnbmF0dXJlXSxcbiAgICAgICAgc2lnbmVyczogW2ZpeHR1cmVzLmVpcDE5MS5zaWduZXJdLFxuICAgICAgICBtZXRhZGF0YTogZml4dHVyZXMuZWlwMTkxLm1ldGFkYXRhLFxuICAgICAgfTtcblxuICAgICAgY29uc3QgbWVzc2FnZSA9IGF3YWl0IGJ1aWxkZXIuZnJvbUJyb2FkY2FzdEZvcm1hdChicm9hZGNhc3RNZXNzYWdlKTtcblxuICAgICAgbWVzc2FnZS5zaG91bGQuYmUuaW5zdGFuY2VvZihFSVAxOTFNZXNzYWdlKTtcbiAgICAgIG1lc3NhZ2UuZ2V0VHlwZSgpLnNob3VsZC5lcXVhbChNZXNzYWdlU3RhbmRhcmRUeXBlLkVJUDE5MSk7XG4gICAgICBtZXNzYWdlLmdldFBheWxvYWQoKS5zaG91bGQuZXF1YWwoZml4dHVyZXMubWVzc2FnZXMudmFsaWRNZXNzYWdlKTtcbiAgICAgIG1lc3NhZ2UuZ2V0U2lnbmF0dXJlcygpLnNob3VsZC5jb250YWluRXFsKGZpeHR1cmVzLmVpcDE5MS5zaWduYXR1cmUpO1xuICAgICAgbWVzc2FnZS5nZXRTaWduZXJzKCkuc2hvdWxkLmNvbnRhaW5FcWwoZml4dHVyZXMuZWlwMTkxLnNpZ25lcik7XG4gICAgICBtZXNzYWdlLmdldE1ldGFkYXRhKCkhLnNob3VsZC5oYXZlLnByb3BlcnR5KCdlbmNvZGluZycsICd1dGY4Jyk7XG4gICAgICBtZXNzYWdlLmdldE1ldGFkYXRhKCkhLnNob3VsZC5oYXZlLnByb3BlcnR5KCdjdXN0b21EYXRhJywgJ3Rlc3QgZGF0YScpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCB0aHJvdyBhbiBlcnJvciBmb3IgaW5jb3JyZWN0IG1lc3NhZ2UgdHlwZScsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGJ1aWxkZXIgPSBuZXcgRWlwMTkxTWVzc2FnZUJ1aWxkZXIoZml4dHVyZXMuY29pbik7XG5cbiAgICAgIGNvbnN0IGJyb2FkY2FzdE1lc3NhZ2UgPSB7XG4gICAgICAgIHR5cGU6IE1lc3NhZ2VTdGFuZGFyZFR5cGUuVU5LTk9XTixcbiAgICAgICAgcGF5bG9hZDogZml4dHVyZXMubWVzc2FnZXMudmFsaWRNZXNzYWdlLFxuICAgICAgICBzaWduYXR1cmVzOiBbZml4dHVyZXMuZWlwMTkxLnNpZ25hdHVyZV0sXG4gICAgICAgIHNpZ25lcnM6IFtmaXh0dXJlcy5laXAxOTEuc2lnbmVyXSxcbiAgICAgICAgbWV0YWRhdGE6IHt9LFxuICAgICAgfTtcblxuICAgICAgYXdhaXQgYnVpbGRlclxuICAgICAgICAuZnJvbUJyb2FkY2FzdEZvcm1hdChicm9hZGNhc3RNZXNzYWdlKVxuICAgICAgICAuc2hvdWxkLmJlLnJlamVjdGVkV2l0aChgSW52YWxpZCBtZXNzYWdlIHR5cGUsIGV4cGVjdGVkICR7TWVzc2FnZVN0YW5kYXJkVHlwZS5FSVAxOTF9YCk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=
@@ -0,0 +1,19 @@
1
+ export declare const fixtures: {
2
+ coin: Readonly<import("@bitgo/statics").BaseCoin>;
3
+ messages: {
4
+ validMessage: string;
5
+ emptyMessage: string;
6
+ specialCharsMessage: string;
7
+ longMessage: string;
8
+ };
9
+ eip191: {
10
+ validSignablePayload: string;
11
+ signature: string;
12
+ signer: string;
13
+ metadata: {
14
+ encoding: string;
15
+ customData: string;
16
+ };
17
+ };
18
+ };
19
+ //# sourceMappingURL=fixtures.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../../../test/unit/messages/fixtures.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;CAoBpB,CAAC"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.fixtures = void 0;
4
+ const statics_1 = require("@bitgo/statics");
5
+ // Test fixtures for EIP-191 message tests
6
+ exports.fixtures = {
7
+ coin: statics_1.coins.get('teth'),
8
+ messages: {
9
+ validMessage: 'Hello, world!',
10
+ emptyMessage: '',
11
+ specialCharsMessage: '!@#$%^&*()',
12
+ longMessage: 'This is a very long message that contains multiple lines and special characters. ' +
13
+ 'It is designed to test the EIP-191 message format with a more complex payload.',
14
+ },
15
+ eip191: {
16
+ validSignablePayload: '0x19457468657265756d205369676e6564204d6573736167653a0d48656c6c6f2c20776f726c6421',
17
+ signature: '0x5d99b6f7f6d1f73d1a26497f2b1c89b24c0993913f86e9a2d02cd69887d9c94f3c880358579d811b21dd1b7fd9bb01c1d81d10e69f0384e675c32b39643be8921b',
18
+ signer: '0x7E5F4552091A69125d5DfCb7b8C2659029395Bdf',
19
+ metadata: {
20
+ encoding: 'utf8',
21
+ customData: 'test data',
22
+ },
23
+ },
24
+ };
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml4dHVyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90ZXN0L3VuaXQvbWVzc2FnZXMvZml4dHVyZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNENBQXVDO0FBRXZDLDBDQUEwQztBQUM3QixRQUFBLFFBQVEsR0FBRztJQUN0QixJQUFJLEVBQUUsZUFBSyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUM7SUFDdkIsUUFBUSxFQUFFO1FBQ1IsWUFBWSxFQUFFLGVBQWU7UUFDN0IsWUFBWSxFQUFFLEVBQUU7UUFDaEIsbUJBQW1CLEVBQUUsWUFBWTtRQUNqQyxXQUFXLEVBQ1QsbUZBQW1GO1lBQ25GLGdGQUFnRjtLQUNuRjtJQUNELE1BQU0sRUFBRTtRQUNOLG9CQUFvQixFQUFFLGtGQUFrRjtRQUN4RyxTQUFTLEVBQ1Asc0lBQXNJO1FBQ3hJLE1BQU0sRUFBRSw0Q0FBNEM7UUFDcEQsUUFBUSxFQUFFO1lBQ1IsUUFBUSxFQUFFLE1BQU07WUFDaEIsVUFBVSxFQUFFLFdBQVc7U0FDeEI7S0FDRjtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb2lucyB9IGZyb20gJ0BiaXRnby9zdGF0aWNzJztcblxuLy8gVGVzdCBmaXh0dXJlcyBmb3IgRUlQLTE5MSBtZXNzYWdlIHRlc3RzXG5leHBvcnQgY29uc3QgZml4dHVyZXMgPSB7XG4gIGNvaW46IGNvaW5zLmdldCgndGV0aCcpLFxuICBtZXNzYWdlczoge1xuICAgIHZhbGlkTWVzc2FnZTogJ0hlbGxvLCB3b3JsZCEnLFxuICAgIGVtcHR5TWVzc2FnZTogJycsXG4gICAgc3BlY2lhbENoYXJzTWVzc2FnZTogJyFAIyQlXiYqKCknLFxuICAgIGxvbmdNZXNzYWdlOlxuICAgICAgJ1RoaXMgaXMgYSB2ZXJ5IGxvbmcgbWVzc2FnZSB0aGF0IGNvbnRhaW5zIG11bHRpcGxlIGxpbmVzIGFuZCBzcGVjaWFsIGNoYXJhY3RlcnMuICcgK1xuICAgICAgJ0l0IGlzIGRlc2lnbmVkIHRvIHRlc3QgdGhlIEVJUC0xOTEgbWVzc2FnZSBmb3JtYXQgd2l0aCBhIG1vcmUgY29tcGxleCBwYXlsb2FkLicsXG4gIH0sXG4gIGVpcDE5MToge1xuICAgIHZhbGlkU2lnbmFibGVQYXlsb2FkOiAnMHgxOTQ1NzQ2ODY1NzI2NTc1NmQyMDUzNjk2NzZlNjU2NDIwNGQ2NTczNzM2MTY3NjUzYTBkNDg2NTZjNmM2ZjJjMjA3NzZmNzI2YzY0MjEnLFxuICAgIHNpZ25hdHVyZTpcbiAgICAgICcweDVkOTliNmY3ZjZkMWY3M2QxYTI2NDk3ZjJiMWM4OWIyNGMwOTkzOTEzZjg2ZTlhMmQwMmNkNjk4ODdkOWM5NGYzYzg4MDM1ODU3OWQ4MTFiMjFkZDFiN2ZkOWJiMDFjMWQ4MWQxMGU2OWYwMzg0ZTY3NWMzMmIzOTY0M2JlODkyMWInLFxuICAgIHNpZ25lcjogJzB4N0U1RjQ1NTIwOTFBNjkxMjVkNURmQ2I3YjhDMjY1OTAyOTM5NUJkZicsXG4gICAgbWV0YWRhdGE6IHtcbiAgICAgIGVuY29kaW5nOiAndXRmOCcsXG4gICAgICBjdXN0b21EYXRhOiAndGVzdCBkYXRhJyxcbiAgICB9LFxuICB9LFxufTtcbiJdfQ==
@@ -0,0 +1,4 @@
1
+ export * from './eip191/eip191Message';
2
+ export * from './eip191/eip191MessageBuilder';
3
+ export * from './messageBuilderFactory';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../test/unit/messages/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./eip191/eip191Message"), exports);
18
+ __exportStar(require("./eip191/eip191MessageBuilder"), exports);
19
+ __exportStar(require("./messageBuilderFactory"), exports);
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90ZXN0L3VuaXQvbWVzc2FnZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHlEQUF1QztBQUN2QyxnRUFBOEM7QUFDOUMsMERBQXdDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9laXAxOTEvZWlwMTkxTWVzc2FnZSc7XG5leHBvcnQgKiBmcm9tICcuL2VpcDE5MS9laXAxOTFNZXNzYWdlQnVpbGRlcic7XG5leHBvcnQgKiBmcm9tICcuL21lc3NhZ2VCdWlsZGVyRmFjdG9yeSc7XG4iXX0=
@@ -0,0 +1,2 @@
1
+ import 'should';
2
+ //# sourceMappingURL=messageBuilderFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messageBuilderFactory.d.ts","sourceRoot":"","sources":["../../../../test/unit/messages/messageBuilderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,CAAC"}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ require("should");
7
+ const sinon_1 = __importDefault(require("sinon"));
8
+ const sdk_core_1 = require("@bitgo/sdk-core");
9
+ const fixtures_1 = require("./fixtures");
10
+ const src_1 = require("../../../src");
11
+ describe('Message Builder Factory', () => {
12
+ const sandbox = sinon_1.default.createSandbox();
13
+ afterEach(() => {
14
+ sandbox.restore();
15
+ });
16
+ describe('getMessageBuilder', () => {
17
+ it('should return the correct builder for EIP191 message type', () => {
18
+ const factory = new src_1.MessageBuilderFactory(fixtures_1.fixtures.coin);
19
+ const builder = factory.getMessageBuilder(sdk_core_1.MessageStandardType.EIP191);
20
+ builder.should.be.instanceof(src_1.Eip191MessageBuilder);
21
+ });
22
+ it('should throw an error for unsupported message types', () => {
23
+ const factory = new src_1.MessageBuilderFactory(fixtures_1.fixtures.coin);
24
+ // Test with an invalid/unsupported message type
25
+ const unsupportedType = 'UNSUPPORTED_TYPE';
26
+ (() => factory.getMessageBuilder(unsupportedType)).should.throw(/Invalid message standard/);
27
+ });
28
+ it('should throw for unknown message standard', () => {
29
+ const factory = new src_1.MessageBuilderFactory(fixtures_1.fixtures.coin);
30
+ (() => factory.getMessageBuilder(sdk_core_1.MessageStandardType.UNKNOWN)).should.throw(`Invalid message standard ${sdk_core_1.MessageStandardType.UNKNOWN}`);
31
+ });
32
+ });
33
+ describe('Integration with builder', () => {
34
+ it('should create a builder that can build a valid message', async () => {
35
+ const factory = new src_1.MessageBuilderFactory(fixtures_1.fixtures.coin);
36
+ const builder = factory.getMessageBuilder(sdk_core_1.MessageStandardType.EIP191);
37
+ builder.setPayload(fixtures_1.fixtures.messages.validMessage);
38
+ const message = await builder.build();
39
+ message.getType().should.equal(sdk_core_1.MessageStandardType.EIP191);
40
+ message.getPayload().should.equal(fixtures_1.fixtures.messages.validMessage);
41
+ });
42
+ });
43
+ });
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZUJ1aWxkZXJGYWN0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdGVzdC91bml0L21lc3NhZ2VzL21lc3NhZ2VCdWlsZGVyRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGtCQUFnQjtBQUNoQixrREFBMEI7QUFDMUIsOENBQXNEO0FBQ3RELHlDQUFzQztBQUN0QyxzQ0FBMkU7QUFFM0UsUUFBUSxDQUFDLHlCQUF5QixFQUFFLEdBQUcsRUFBRTtJQUN2QyxNQUFNLE9BQU8sR0FBRyxlQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7SUFFdEMsU0FBUyxDQUFDLEdBQUcsRUFBRTtRQUNiLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNwQixDQUFDLENBQUMsQ0FBQztJQUVILFFBQVEsQ0FBQyxtQkFBbUIsRUFBRSxHQUFHLEVBQUU7UUFDakMsRUFBRSxDQUFDLDJEQUEyRCxFQUFFLEdBQUcsRUFBRTtZQUNuRSxNQUFNLE9BQU8sR0FBRyxJQUFJLDJCQUFxQixDQUFDLG1CQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7WUFFekQsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLGlCQUFpQixDQUFDLDhCQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBRXRFLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQywwQkFBb0IsQ0FBQyxDQUFDO1FBQ3JELENBQUMsQ0FBQyxDQUFDO1FBRUgsRUFBRSxDQUFDLHFEQUFxRCxFQUFFLEdBQUcsRUFBRTtZQUM3RCxNQUFNLE9BQU8sR0FBRyxJQUFJLDJCQUFxQixDQUFDLG1CQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7WUFFekQsZ0RBQWdEO1lBQ2hELE1BQU0sZUFBZSxHQUFHLGtCQUF5QyxDQUFDO1lBRWxFLENBQUMsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1FBQzlGLENBQUMsQ0FBQyxDQUFDO1FBRUgsRUFBRSxDQUFDLDJDQUEyQyxFQUFFLEdBQUcsRUFBRTtZQUNuRCxNQUFNLE9BQU8sR0FBRyxJQUFJLDJCQUFxQixDQUFDLG1CQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7WUFFekQsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsOEJBQW1CLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUN6RSw0QkFBNEIsOEJBQW1CLENBQUMsT0FBTyxFQUFFLENBQzFELENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0lBRUgsUUFBUSxDQUFDLDBCQUEwQixFQUFFLEdBQUcsRUFBRTtRQUN4QyxFQUFFLENBQUMsd0RBQXdELEVBQUUsS0FBSyxJQUFJLEVBQUU7WUFDdEUsTUFBTSxPQUFPLEdBQUcsSUFBSSwyQkFBcUIsQ0FBQyxtQkFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRXpELE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyw4QkFBbUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUN0RSxPQUFPLENBQUMsVUFBVSxDQUFDLG1CQUFRLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBRW5ELE1BQU0sT0FBTyxHQUFHLE1BQU0sT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBRXRDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLDhCQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzNELE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLG1CQUFRLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3BFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAnc2hvdWxkJztcbmltcG9ydCBzaW5vbiBmcm9tICdzaW5vbic7XG5pbXBvcnQgeyBNZXNzYWdlU3RhbmRhcmRUeXBlIH0gZnJvbSAnQGJpdGdvL3Nkay1jb3JlJztcbmltcG9ydCB7IGZpeHR1cmVzIH0gZnJvbSAnLi9maXh0dXJlcyc7XG5pbXBvcnQgeyBFaXAxOTFNZXNzYWdlQnVpbGRlciwgTWVzc2FnZUJ1aWxkZXJGYWN0b3J5IH0gZnJvbSAnLi4vLi4vLi4vc3JjJztcblxuZGVzY3JpYmUoJ01lc3NhZ2UgQnVpbGRlciBGYWN0b3J5JywgKCkgPT4ge1xuICBjb25zdCBzYW5kYm94ID0gc2lub24uY3JlYXRlU2FuZGJveCgpO1xuXG4gIGFmdGVyRWFjaCgoKSA9PiB7XG4gICAgc2FuZGJveC5yZXN0b3JlKCk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdnZXRNZXNzYWdlQnVpbGRlcicsICgpID0+IHtcbiAgICBpdCgnc2hvdWxkIHJldHVybiB0aGUgY29ycmVjdCBidWlsZGVyIGZvciBFSVAxOTEgbWVzc2FnZSB0eXBlJywgKCkgPT4ge1xuICAgICAgY29uc3QgZmFjdG9yeSA9IG5ldyBNZXNzYWdlQnVpbGRlckZhY3RvcnkoZml4dHVyZXMuY29pbik7XG5cbiAgICAgIGNvbnN0IGJ1aWxkZXIgPSBmYWN0b3J5LmdldE1lc3NhZ2VCdWlsZGVyKE1lc3NhZ2VTdGFuZGFyZFR5cGUuRUlQMTkxKTtcblxuICAgICAgYnVpbGRlci5zaG91bGQuYmUuaW5zdGFuY2VvZihFaXAxOTFNZXNzYWdlQnVpbGRlcik7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIHRocm93IGFuIGVycm9yIGZvciB1bnN1cHBvcnRlZCBtZXNzYWdlIHR5cGVzJywgKCkgPT4ge1xuICAgICAgY29uc3QgZmFjdG9yeSA9IG5ldyBNZXNzYWdlQnVpbGRlckZhY3RvcnkoZml4dHVyZXMuY29pbik7XG5cbiAgICAgIC8vIFRlc3Qgd2l0aCBhbiBpbnZhbGlkL3Vuc3VwcG9ydGVkIG1lc3NhZ2UgdHlwZVxuICAgICAgY29uc3QgdW5zdXBwb3J0ZWRUeXBlID0gJ1VOU1VQUE9SVEVEX1RZUEUnIGFzIE1lc3NhZ2VTdGFuZGFyZFR5cGU7XG5cbiAgICAgICgoKSA9PiBmYWN0b3J5LmdldE1lc3NhZ2VCdWlsZGVyKHVuc3VwcG9ydGVkVHlwZSkpLnNob3VsZC50aHJvdygvSW52YWxpZCBtZXNzYWdlIHN0YW5kYXJkLyk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIHRocm93IGZvciB1bmtub3duIG1lc3NhZ2Ugc3RhbmRhcmQnLCAoKSA9PiB7XG4gICAgICBjb25zdCBmYWN0b3J5ID0gbmV3IE1lc3NhZ2VCdWlsZGVyRmFjdG9yeShmaXh0dXJlcy5jb2luKTtcblxuICAgICAgKCgpID0+IGZhY3RvcnkuZ2V0TWVzc2FnZUJ1aWxkZXIoTWVzc2FnZVN0YW5kYXJkVHlwZS5VTktOT1dOKSkuc2hvdWxkLnRocm93KFxuICAgICAgICBgSW52YWxpZCBtZXNzYWdlIHN0YW5kYXJkICR7TWVzc2FnZVN0YW5kYXJkVHlwZS5VTktOT1dOfWBcbiAgICAgICk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdJbnRlZ3JhdGlvbiB3aXRoIGJ1aWxkZXInLCAoKSA9PiB7XG4gICAgaXQoJ3Nob3VsZCBjcmVhdGUgYSBidWlsZGVyIHRoYXQgY2FuIGJ1aWxkIGEgdmFsaWQgbWVzc2FnZScsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGZhY3RvcnkgPSBuZXcgTWVzc2FnZUJ1aWxkZXJGYWN0b3J5KGZpeHR1cmVzLmNvaW4pO1xuXG4gICAgICBjb25zdCBidWlsZGVyID0gZmFjdG9yeS5nZXRNZXNzYWdlQnVpbGRlcihNZXNzYWdlU3RhbmRhcmRUeXBlLkVJUDE5MSk7XG4gICAgICBidWlsZGVyLnNldFBheWxvYWQoZml4dHVyZXMubWVzc2FnZXMudmFsaWRNZXNzYWdlKTtcblxuICAgICAgY29uc3QgbWVzc2FnZSA9IGF3YWl0IGJ1aWxkZXIuYnVpbGQoKTtcblxuICAgICAgbWVzc2FnZS5nZXRUeXBlKCkuc2hvdWxkLmVxdWFsKE1lc3NhZ2VTdGFuZGFyZFR5cGUuRUlQMTkxKTtcbiAgICAgIG1lc3NhZ2UuZ2V0UGF5bG9hZCgpLnNob3VsZC5lcXVhbChmaXh0dXJlcy5tZXNzYWdlcy52YWxpZE1lc3NhZ2UpO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl19