@hyperlane-xyz/utils 5.6.1 → 5.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 (83) hide show
  1. package/dist/addresses.d.ts +2 -0
  2. package/dist/addresses.d.ts.map +1 -1
  3. package/dist/addresses.js +7 -0
  4. package/dist/addresses.js.map +1 -1
  5. package/dist/addresses.test.js +11 -1
  6. package/dist/addresses.test.js.map +1 -1
  7. package/dist/arrays.test.d.ts +2 -0
  8. package/dist/arrays.test.d.ts.map +1 -0
  9. package/dist/arrays.test.js +45 -0
  10. package/dist/arrays.test.js.map +1 -0
  11. package/dist/async.test.d.ts +2 -0
  12. package/dist/async.test.d.ts.map +1 -0
  13. package/dist/async.test.js +124 -0
  14. package/dist/async.test.js.map +1 -0
  15. package/dist/base58.test.d.ts +2 -0
  16. package/dist/base58.test.d.ts.map +1 -0
  17. package/dist/base58.test.js +31 -0
  18. package/dist/base58.test.js.map +1 -0
  19. package/dist/base64.test.d.ts +2 -0
  20. package/dist/base64.test.d.ts.map +1 -0
  21. package/dist/base64.test.js +54 -0
  22. package/dist/base64.test.js.map +1 -0
  23. package/dist/checkpoints.d.ts +2 -1
  24. package/dist/checkpoints.d.ts.map +1 -1
  25. package/dist/checkpoints.js +1 -1
  26. package/dist/checkpoints.js.map +1 -1
  27. package/dist/checkpoints.test.d.ts +2 -0
  28. package/dist/checkpoints.test.d.ts.map +1 -0
  29. package/dist/checkpoints.test.js +105 -0
  30. package/dist/checkpoints.test.js.map +1 -0
  31. package/dist/env.test.d.ts +2 -0
  32. package/dist/env.test.d.ts.map +1 -0
  33. package/dist/env.test.js +16 -0
  34. package/dist/env.test.js.map +1 -0
  35. package/dist/ids.test.d.ts +2 -0
  36. package/dist/ids.test.d.ts.map +1 -0
  37. package/dist/ids.test.js +39 -0
  38. package/dist/ids.test.js.map +1 -0
  39. package/dist/index.d.ts +3 -3
  40. package/dist/index.d.ts.map +1 -1
  41. package/dist/index.js +3 -3
  42. package/dist/index.js.map +1 -1
  43. package/dist/logging.test.d.ts +2 -0
  44. package/dist/logging.test.d.ts.map +1 -0
  45. package/dist/logging.test.js +35 -0
  46. package/dist/logging.test.js.map +1 -0
  47. package/dist/math.js +1 -1
  48. package/dist/math.js.map +1 -1
  49. package/dist/math.test.d.ts +2 -0
  50. package/dist/math.test.d.ts.map +1 -0
  51. package/dist/math.test.js +45 -0
  52. package/dist/math.test.js.map +1 -0
  53. package/dist/objects.d.ts +1 -1
  54. package/dist/objects.d.ts.map +1 -1
  55. package/dist/objects.js +4 -2
  56. package/dist/objects.js.map +1 -1
  57. package/dist/objects.test.js +102 -1
  58. package/dist/objects.test.js.map +1 -1
  59. package/dist/sets.d.ts +1 -0
  60. package/dist/sets.d.ts.map +1 -1
  61. package/dist/sets.js +9 -0
  62. package/dist/sets.js.map +1 -1
  63. package/dist/sets.test.d.ts +2 -0
  64. package/dist/sets.test.d.ts.map +1 -0
  65. package/dist/sets.test.js +35 -0
  66. package/dist/sets.test.js.map +1 -0
  67. package/dist/strings.test.d.ts +2 -0
  68. package/dist/strings.test.d.ts.map +1 -0
  69. package/dist/strings.test.js +42 -0
  70. package/dist/strings.test.js.map +1 -0
  71. package/dist/typeof.test.d.ts +2 -0
  72. package/dist/typeof.test.d.ts.map +1 -0
  73. package/dist/typeof.test.js +34 -0
  74. package/dist/typeof.test.js.map +1 -0
  75. package/dist/validation.test.d.ts +2 -0
  76. package/dist/validation.test.d.ts.map +1 -0
  77. package/dist/validation.test.js +11 -0
  78. package/dist/validation.test.js.map +1 -0
  79. package/dist/yaml.test.d.ts +2 -0
  80. package/dist/yaml.test.d.ts.map +1 -0
  81. package/dist/yaml.test.js +29 -0
  82. package/dist/yaml.test.js.map +1 -0
  83. package/package.json +4 -1
@@ -1,3 +1,4 @@
1
+ /// <reference types="node" resolution-mode="require"/>
1
2
  import { Address, HexString, ProtocolType } from './types.js';
2
3
  export declare function isAddressEvm(address: Address): boolean;
3
4
  export declare function isAddressSealevel(address: Address): boolean;
@@ -32,6 +33,7 @@ export declare function addressToBytes(address: Address, protocol?: ProtocolType
32
33
  export declare function addressToByteHexString(address: string, protocol?: ProtocolType): string;
33
34
  export declare function addressToBytes32(address: Address, protocol?: ProtocolType): string;
34
35
  export declare function bytesToBytes32(bytes: Uint8Array): string;
36
+ export declare function padBytesToLength(bytes: Uint8Array, length: number): Buffer;
35
37
  export declare function bytesToAddressEvm(bytes: Uint8Array): Address;
36
38
  export declare function bytesToAddressSol(bytes: Uint8Array): Address;
37
39
  export declare function bytesToAddressCosmos(bytes: Uint8Array, prefix: string): Address;
@@ -1 +1 @@
1
- {"version":3,"file":"addresses.d.ts","sourceRoot":"","sources":["../src/addresses.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"addresses.d.ts","sourceRoot":"","sources":["../src/addresses.ts"],"names":[],"mappings":"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"}
package/dist/addresses.js CHANGED
@@ -248,6 +248,13 @@ export function bytesToBytes32(bytes) {
248
248
  // This 0x-prefixes the hex string
249
249
  return ethersUtils.hexZeroPad(ensure0x(Buffer.from(bytes).toString('hex')), 32);
250
250
  }
251
+ // Pad bytes to a certain length, padding with 0s at the start
252
+ export function padBytesToLength(bytes, length) {
253
+ if (bytes.length > length) {
254
+ throw new Error(`bytes must be ${length} bytes or less`);
255
+ }
256
+ return Buffer.concat([Buffer.alloc(length - bytes.length), bytes]);
257
+ }
251
258
  export function bytesToAddressEvm(bytes) {
252
259
  return bytes32ToAddress(Buffer.from(bytes).toString('hex'));
253
260
  }
@@ -1 +1 @@
1
- {"version":3,"file":"addresses.js","sourceRoot":"","sources":["../src/addresses.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"addresses.js","sourceRoot":"","sources":["../src/addresses.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { expect } from 'chai';
2
- import { addressToBytes, bytesToProtocolAddress, isZeroishAddress, } from './addresses.js';
2
+ import { addressToBytes, bytesToProtocolAddress, isZeroishAddress, padBytesToLength, } from './addresses.js';
3
3
  import { ProtocolType } from './types.js';
4
4
  const ETH_ZERO_ADDR = '0x0000000000000000000000000000000000000000';
5
5
  const ETH_NON_ZERO_ADDR = '0x0000000000000000000000000000000000000001';
@@ -32,6 +32,16 @@ describe('Address utilities', () => {
32
32
  expect(() => addressToBytes(SOL_ZERO_ADDR)).to.throw(Error);
33
33
  });
34
34
  });
35
+ describe('padBytesToLength', () => {
36
+ it('Pads bytes to a given length', () => {
37
+ const bytes = Buffer.from([1, 2, 3]);
38
+ expect(padBytesToLength(bytes, 5).equals(Buffer.from([0, 0, 1, 2, 3])));
39
+ });
40
+ it('Rejects bytes that exceed the target length', () => {
41
+ const bytes = Buffer.from([1, 2, 3]);
42
+ expect(() => padBytesToLength(bytes, 2)).to.throw(Error);
43
+ });
44
+ });
35
45
  describe('bytesToProtocolAddress', () => {
36
46
  it('Converts bytes to address', () => {
37
47
  expect(bytesToProtocolAddress(addressToBytes(ETH_NON_ZERO_ADDR), ProtocolType.Ethereum)).to.equal(ETH_NON_ZERO_ADDR);
@@ -1 +1 @@
1
- {"version":3,"file":"addresses.test.js","sourceRoot":"","sources":["../src/addresses.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"addresses.test.js","sourceRoot":"","sources":["../src/addresses.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=arrays.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arrays.test.d.ts","sourceRoot":"","sources":["../src/arrays.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,45 @@
1
+ import { expect } from 'chai';
2
+ import { chunk, exclude, randomElement } from './arrays.js';
3
+ describe('Arrays utilities', () => {
4
+ describe('chunk', () => {
5
+ it('should split an array into chunks of the specified size', () => {
6
+ const result = chunk([1, 2, 3, 4, 5], 2);
7
+ expect(result).to.deep.equal([[1, 2], [3, 4], [5]]);
8
+ });
9
+ it('should return an empty array when input is empty', () => {
10
+ const result = chunk([], 2);
11
+ expect(result).to.deep.equal([]);
12
+ });
13
+ it('should handle chunk size larger than array length', () => {
14
+ const result = chunk([1, 2], 5);
15
+ expect(result).to.deep.equal([[1, 2]]);
16
+ });
17
+ });
18
+ describe('exclude', () => {
19
+ it('should exclude the specified item from the list', () => {
20
+ const result = exclude(2, [1, 2, 3, 2]);
21
+ expect(result).to.deep.equal([1, 3]);
22
+ });
23
+ it('should return the same list if item is not found', () => {
24
+ const result = exclude(4, [1, 2, 3]);
25
+ expect(result).to.deep.equal([1, 2, 3]);
26
+ });
27
+ it('should return an empty list if all items are excluded', () => {
28
+ const result = exclude(1, [1, 1, 1]);
29
+ expect(result).to.deep.equal([]);
30
+ });
31
+ });
32
+ describe('randomElement', () => {
33
+ beforeEach(() => { });
34
+ it('should return a random element from the list', () => {
35
+ const list = [10, 20, 30];
36
+ const result = randomElement(list);
37
+ expect(result).to.be.oneOf(list);
38
+ });
39
+ it('should handle an empty list gracefully', () => {
40
+ const result = randomElement([]);
41
+ expect(result).to.be.undefined;
42
+ });
43
+ });
44
+ });
45
+ //# sourceMappingURL=arrays.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arrays.test.js","sourceRoot":"","sources":["../src/arrays.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=async.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"async.test.d.ts","sourceRoot":"","sources":["../src/async.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,124 @@
1
+ import { expect } from 'chai';
2
+ import { concurrentMap, fetchWithTimeout, pollAsync, raceWithContext, retryAsync, runWithTimeout, sleep, timeout, } from './async.js';
3
+ describe('Async Utilities', () => {
4
+ describe('sleep', () => {
5
+ it('should resolve after sleep duration', async () => {
6
+ const start = Date.now();
7
+ await sleep(100);
8
+ const duration = Date.now() - start;
9
+ expect(duration).to.be.at.least(100);
10
+ expect(duration).to.be.lessThan(200);
11
+ });
12
+ });
13
+ describe('timeout', () => {
14
+ it('should timeout a promise', async () => {
15
+ const promise = new Promise((resolve) => setTimeout(resolve, 200));
16
+ try {
17
+ await timeout(promise, 100);
18
+ throw new Error('Expected timeout error');
19
+ }
20
+ catch (error) {
21
+ expect(error.message).to.equal('Timeout reached');
22
+ }
23
+ });
24
+ });
25
+ describe('runWithTimeout', () => {
26
+ it('should run a callback with a timeout', async () => {
27
+ const result = await runWithTimeout(100, async () => {
28
+ await sleep(50);
29
+ return 'success';
30
+ });
31
+ expect(result).to.equal('success');
32
+ });
33
+ });
34
+ describe('fetchWithTimeout', () => {
35
+ it('should fetch with timeout', async () => {
36
+ // Mock fetch for testing
37
+ global.fetch = async () => {
38
+ await sleep(50);
39
+ return new Response('ok');
40
+ };
41
+ const response = await fetchWithTimeout('https://example.com', {}, 100);
42
+ expect(await response.text()).to.equal('ok');
43
+ });
44
+ });
45
+ describe('retryAsync', () => {
46
+ it('should retry async function with exponential backoff', async () => {
47
+ let attempt = 0;
48
+ const runner = async () => {
49
+ attempt++;
50
+ if (attempt < 3)
51
+ throw new Error('fail');
52
+ return 'success';
53
+ };
54
+ const result = await retryAsync(runner, 5, 10);
55
+ expect(result).to.equal('success');
56
+ });
57
+ });
58
+ describe('pollAsync', () => {
59
+ it('should poll async function until success', async () => {
60
+ let attempt = 0;
61
+ const runner = async () => {
62
+ attempt++;
63
+ if (attempt < 3)
64
+ throw new Error('fail');
65
+ return 'success';
66
+ };
67
+ const result = await pollAsync(runner, 10, 5);
68
+ expect(result).to.equal('success');
69
+ });
70
+ it('should fail after reaching max retries', async () => {
71
+ let attempt = 0;
72
+ const runner = async () => {
73
+ attempt++;
74
+ throw new Error('fail');
75
+ };
76
+ try {
77
+ await pollAsync(runner, 10, 3); // Set maxAttempts to 3
78
+ throw new Error('Expected pollAsync to throw an error');
79
+ }
80
+ catch (error) {
81
+ expect(attempt).to.equal(3); // Ensure it attempted 3 times
82
+ expect(error.message).to.equal('fail');
83
+ }
84
+ });
85
+ });
86
+ describe('raceWithContext', () => {
87
+ it('should race with context', async () => {
88
+ const promises = [
89
+ sleep(50).then(() => 'first'),
90
+ sleep(100).then(() => 'second'),
91
+ ];
92
+ const result = await raceWithContext(promises);
93
+ expect(result.resolved).to.equal('first');
94
+ expect(result.index).to.equal(0);
95
+ });
96
+ });
97
+ describe('concurrentMap', () => {
98
+ it('should map concurrently with correct results', async () => {
99
+ const xs = [1, 2, 3, 4, 5, 6];
100
+ const mapFn = async (val) => {
101
+ await new Promise((resolve) => setTimeout(resolve, 50)); // Simulate async work
102
+ return val * 2;
103
+ };
104
+ const result = await concurrentMap(2, xs, mapFn);
105
+ expect(result).to.deep.equal([2, 4, 6, 8, 10, 12]);
106
+ });
107
+ it('should respect concurrency limit', async () => {
108
+ const xs = [1, 2, 3, 4, 5, 6];
109
+ const concurrency = 2;
110
+ let activeTasks = 0;
111
+ let maxActiveTasks = 0;
112
+ const mapFn = async (val) => {
113
+ activeTasks++;
114
+ maxActiveTasks = Math.max(maxActiveTasks, activeTasks);
115
+ await new Promise((resolve) => setTimeout(resolve, 50)); // Simulate async work
116
+ activeTasks--;
117
+ return val * 2;
118
+ };
119
+ await concurrentMap(concurrency, xs, mapFn);
120
+ expect(maxActiveTasks).to.equal(concurrency);
121
+ });
122
+ });
123
+ });
124
+ //# sourceMappingURL=async.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"async.test.js","sourceRoot":"","sources":["../src/async.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=base58.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base58.test.d.ts","sourceRoot":"","sources":["../src/base58.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,31 @@
1
+ import { expect } from 'chai';
2
+ import { utils } from 'ethers';
3
+ import { base58ToBuffer, bufferToBase58, hexOrBase58ToHex } from './base58.js';
4
+ describe('Base58 Utilities', () => {
5
+ describe('base58ToBuffer', () => {
6
+ it('should convert a base58 string to a buffer', () => {
7
+ const base58String = '3mJr7AoUXx2Wqd';
8
+ const expectedBuffer = Buffer.from(utils.base58.decode(base58String));
9
+ expect(base58ToBuffer(base58String)).to.deep.equal(expectedBuffer);
10
+ });
11
+ });
12
+ describe('bufferToBase58', () => {
13
+ it('should convert a buffer to a base58 string', () => {
14
+ const buffer = Buffer.from([1, 2, 3, 4]);
15
+ const expectedBase58String = utils.base58.encode(buffer);
16
+ expect(bufferToBase58(buffer)).to.equal(expectedBase58String);
17
+ });
18
+ });
19
+ describe('hexOrBase58ToHex', () => {
20
+ it('should return the hex string as is if it starts with 0x', () => {
21
+ const hexString = '0x1234abcd';
22
+ expect(hexOrBase58ToHex(hexString)).to.equal(hexString);
23
+ });
24
+ it('should convert a base58 string to a hex string', () => {
25
+ const base58String = '3mJr7AoUXx2Wqd';
26
+ const expectedHexString = utils.hexlify(Buffer.from(utils.base58.decode(base58String)));
27
+ expect(hexOrBase58ToHex(base58String)).to.equal(expectedHexString);
28
+ });
29
+ });
30
+ });
31
+ //# sourceMappingURL=base58.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base58.test.js","sourceRoot":"","sources":["../src/base58.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAE/B,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/E,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;YACpD,MAAM,YAAY,GAAG,gBAAgB,CAAC;YACtC,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;YACtE,MAAM,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;YACpD,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACzC,MAAM,oBAAoB,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACzD,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAChE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAChC,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;YACjE,MAAM,SAAS,GAAG,YAAY,CAAC;YAC/B,MAAM,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC1D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;YACxD,MAAM,YAAY,GAAG,gBAAgB,CAAC;YACtC,MAAM,iBAAiB,GAAG,KAAK,CAAC,OAAO,CACrC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAC/C,CAAC;YACF,MAAM,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=base64.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base64.test.d.ts","sourceRoot":"","sources":["../src/base64.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,54 @@
1
+ import { expect } from 'chai';
2
+ import Sinon from 'sinon';
3
+ import { fromBase64, toBase64 } from './base64.js';
4
+ import { rootLogger } from './logging.js';
5
+ describe('Base64 Utility Functions', () => {
6
+ let loggerStub;
7
+ beforeEach(() => {
8
+ loggerStub = Sinon.stub(rootLogger, 'error');
9
+ });
10
+ afterEach(() => {
11
+ loggerStub.restore();
12
+ });
13
+ describe('toBase64', () => {
14
+ it('should encode a valid object to a base64 string', () => {
15
+ const data = { key: 'value' };
16
+ const result = toBase64(data);
17
+ expect(result).to.be.a('string');
18
+ expect(result).to.equal(btoa(JSON.stringify(data)));
19
+ });
20
+ it('should return undefined for null or undefined input', () => {
21
+ expect(toBase64(null)).to.be.undefined;
22
+ expect(toBase64(undefined)).to.be.undefined;
23
+ });
24
+ it('should log an error for invalid input', () => {
25
+ toBase64(null);
26
+ expect(loggerStub.calledOnce).to.be.true;
27
+ expect(loggerStub.calledWith('Unable to serialize + encode data to base64', null)).to.be.true;
28
+ });
29
+ });
30
+ describe('fromBase64', () => {
31
+ it('should decode a valid base64 string to an object', () => {
32
+ const data = { key: 'value' };
33
+ const base64String = btoa(JSON.stringify(data));
34
+ const result = fromBase64(base64String);
35
+ expect(result).to.deep.equal(data);
36
+ });
37
+ it('should return undefined for null or undefined input', () => {
38
+ expect(fromBase64(null)).to.be.undefined;
39
+ expect(fromBase64(undefined)).to.be.undefined;
40
+ });
41
+ it('should handle array input and decode the first element', () => {
42
+ const data = { key: 'value' };
43
+ const base64String = btoa(JSON.stringify(data));
44
+ const result = fromBase64([base64String, 'anotherString']);
45
+ expect(result).to.deep.equal(data);
46
+ });
47
+ it('should log an error for invalid base64 input', () => {
48
+ fromBase64('invalidBase64');
49
+ expect(loggerStub.calledOnce).to.be.true;
50
+ expect(loggerStub.calledWith('Unable to decode + deserialize data from base64', 'invalidBase64')).to.be.true;
51
+ });
52
+ });
53
+ });
54
+ //# sourceMappingURL=base64.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base64.test.js","sourceRoot":"","sources":["../src/base64.test.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import { Checkpoint, S3Checkpoint, S3CheckpointWithId } from './types.js';
1
+ import { Checkpoint, S3Checkpoint, S3CheckpointWithId, SignatureLike } from './types.js';
2
+ export declare function isValidSignature(signature: any): signature is SignatureLike;
2
3
  export declare function isS3Checkpoint(obj: any): obj is S3Checkpoint;
3
4
  export declare function isS3CheckpointWithId(obj: any): obj is S3CheckpointWithId;
4
5
  export declare function isCheckpoint(obj: any): obj is Checkpoint;
@@ -1 +1 @@
1
- {"version":3,"file":"checkpoints.d.ts","sourceRoot":"","sources":["../src/checkpoints.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,UAAU,EACV,YAAY,EACZ,kBAAkB,EAEnB,MAAM,YAAY,CAAC;AAUpB,wBAAgB,cAAc,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,YAAY,CAE5D;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,kBAAkB,CAMxE;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,UAAU,CAMxD"}
1
+ {"version":3,"file":"checkpoints.d.ts","sourceRoot":"","sources":["../src/checkpoints.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,UAAU,EACV,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACd,MAAM,YAAY,CAAC;AAEpB,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,GAAG,GAAG,SAAS,IAAI,aAAa,CAM3E;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,YAAY,CAE5D;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,kBAAkB,CAMxE;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,UAAU,CAMxD"}
@@ -1,5 +1,5 @@
1
1
  import { utils } from 'ethers';
2
- function isValidSignature(signature) {
2
+ export function isValidSignature(signature) {
3
3
  return typeof signature === 'string'
4
4
  ? utils.isHexString(signature)
5
5
  : utils.isHexString(signature.r) &&
@@ -1 +1 @@
1
- {"version":3,"file":"checkpoints.js","sourceRoot":"","sources":["../src/checkpoints.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAS/B,SAAS,gBAAgB,CAAC,SAAc;IACtC,OAAO,OAAO,SAAS,KAAK,QAAQ;QAClC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC;QAC9B,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC;YAC5B,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC;YAC9B,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,GAAQ;IACrC,OAAO,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACpE,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,GAAQ;IAC3C,OAAO,CACL,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC;QAC/B,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC;QAClC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CACxC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,GAAQ;IACnC,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAChD,MAAM,YAAY,GAAG,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACrD,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;IACvE,MAAM,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAC/D,OAAO,YAAY,IAAI,WAAW,IAAI,cAAc,IAAI,aAAa,CAAC;AACxE,CAAC"}
1
+ {"version":3,"file":"checkpoints.js","sourceRoot":"","sources":["../src/checkpoints.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAS/B,MAAM,UAAU,gBAAgB,CAAC,SAAc;IAC7C,OAAO,OAAO,SAAS,KAAK,QAAQ;QAClC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC;QAC9B,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC;YAC5B,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC;YAC9B,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,GAAQ;IACrC,OAAO,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACpE,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,GAAQ;IAC3C,OAAO,CACL,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC;QAC/B,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC;QAClC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CACxC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,GAAQ;IACnC,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAChD,MAAM,YAAY,GAAG,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACrD,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;IACvE,MAAM,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAC/D,OAAO,YAAY,IAAI,WAAW,IAAI,cAAc,IAAI,aAAa,CAAC;AACxE,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=checkpoints.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkpoints.test.d.ts","sourceRoot":"","sources":["../src/checkpoints.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,105 @@
1
+ import { expect } from 'chai';
2
+ import { isCheckpoint, isS3Checkpoint, isS3CheckpointWithId, isValidSignature, } from './checkpoints.js';
3
+ describe('Checkpoints', () => {
4
+ describe('isValidSignature', () => {
5
+ it('should return true for valid string signature', () => {
6
+ const signature = '0x' + 'a'.repeat(130); // Example of a valid hex string
7
+ expect(isValidSignature(signature)).to.be.true;
8
+ });
9
+ it('should return true for valid object signature', () => {
10
+ const signature = {
11
+ r: '0x' + 'a'.repeat(64),
12
+ s: '0x' + 'b'.repeat(64),
13
+ v: 27,
14
+ };
15
+ expect(isValidSignature(signature)).to.be.true;
16
+ });
17
+ it('should return false for invalid signature', () => {
18
+ const signature = {
19
+ r: '0x' + 'a'.repeat(64),
20
+ s: '0x' + 'b'.repeat(64),
21
+ v: 'invalid',
22
+ };
23
+ expect(isValidSignature(signature)).to.be.false;
24
+ });
25
+ });
26
+ describe('isCheckpoint', () => {
27
+ it('should return true for valid checkpoint', () => {
28
+ const checkpoint = {
29
+ root: '0x' + 'a'.repeat(64),
30
+ index: 1,
31
+ merkle_tree_hook_address: '0x' + 'b'.repeat(40),
32
+ mailbox_domain: 123,
33
+ };
34
+ expect(isCheckpoint(checkpoint)).to.be.true;
35
+ });
36
+ it('should return false for invalid checkpoint', () => {
37
+ const checkpoint = {
38
+ root: 'invalid',
39
+ index: 'invalid',
40
+ merkle_tree_hook_address: 'invalid',
41
+ mailbox_domain: 'invalid',
42
+ };
43
+ expect(isCheckpoint(checkpoint)).to.be.false;
44
+ });
45
+ });
46
+ describe('isS3Checkpoint', () => {
47
+ it('should return true for valid S3Checkpoint', () => {
48
+ const s3Checkpoint = {
49
+ signature: '0x' + 'a'.repeat(130),
50
+ value: {
51
+ root: '0x' + 'a'.repeat(64),
52
+ index: 1,
53
+ merkle_tree_hook_address: '0x' + 'b'.repeat(40),
54
+ mailbox_domain: 123,
55
+ },
56
+ };
57
+ expect(isS3Checkpoint(s3Checkpoint)).to.be.true;
58
+ });
59
+ it('should return false for invalid S3Checkpoint', () => {
60
+ const s3Checkpoint = {
61
+ signature: 'invalid',
62
+ value: {
63
+ root: 'invalid',
64
+ index: 'invalid',
65
+ merkle_tree_hook_address: 'invalid',
66
+ mailbox_domain: 'invalid',
67
+ },
68
+ };
69
+ expect(isS3Checkpoint(s3Checkpoint)).to.be.false;
70
+ });
71
+ });
72
+ describe('isS3CheckpointWithId', () => {
73
+ it('should return true for valid S3CheckpointWithId', () => {
74
+ const s3CheckpointWithId = {
75
+ signature: '0x' + 'a'.repeat(130),
76
+ value: {
77
+ checkpoint: {
78
+ root: '0x' + 'a'.repeat(64),
79
+ index: 1,
80
+ merkle_tree_hook_address: '0x' + 'b'.repeat(40),
81
+ mailbox_domain: 123,
82
+ },
83
+ message_id: '0x' + 'c'.repeat(64),
84
+ },
85
+ };
86
+ expect(isS3CheckpointWithId(s3CheckpointWithId)).to.be.true;
87
+ });
88
+ it('should return false for invalid S3CheckpointWithId', () => {
89
+ const s3CheckpointWithId = {
90
+ signature: 'invalid',
91
+ value: {
92
+ checkpoint: {
93
+ root: 'invalid',
94
+ index: 'invalid',
95
+ merkle_tree_hook_address: 'invalid',
96
+ mailbox_domain: 'invalid',
97
+ },
98
+ message_id: 'invalid',
99
+ },
100
+ };
101
+ expect(isS3CheckpointWithId(s3CheckpointWithId)).to.be.false;
102
+ });
103
+ });
104
+ });
105
+ //# sourceMappingURL=checkpoints.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkpoints.test.js","sourceRoot":"","sources":["../src/checkpoints.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=env.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env.test.d.ts","sourceRoot":"","sources":["../src/env.test.ts"],"names":[],"mappings":""}