@bitgo/sdk-core 18.0.0 → 20.0.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.
@@ -36,44 +36,24 @@ describe('postWithCodec', function () {
36
36
  body: request._data,
37
37
  };
38
38
  }
39
- function assertRequestContains(request, body, headers) {
39
+ function assertRequestContains(request, body) {
40
40
  assert_1.default.deepStrictEqual(request.body, body);
41
- for (const [key, value] of Object.entries(headers)) {
42
- assert_1.default.deepStrictEqual(request.headers[key], value, `header ${key} does not match`);
43
- }
44
41
  }
45
42
  const codec = t.exact(t.intersection([t.type({ foo: t.string }), t.partial({ bar: t.unknown })]));
46
43
  it('has expected values with value matching codec', function () {
47
- assertRequestContains(getRequest(codec, { foo: 'bar' }), { foo: 'bar' }, {
48
- 'io-ts-codec-encode-error': 'false',
49
- 'io-ts-codec-decode-error': '',
50
- 'io-ts-unknown-properties': '',
51
- });
52
- assertRequestContains(getRequest(codec, { foo: 'bar', bar: null }), { foo: 'bar', bar: null }, {
53
- 'io-ts-codec-encode-error': 'false',
54
- 'io-ts-codec-decode-error': '',
55
- 'io-ts-unknown-properties': '',
56
- });
44
+ assertRequestContains(getRequest(codec, { foo: 'bar' }), { foo: 'bar' });
45
+ assertRequestContains(getRequest(codec, { foo: 'bar', bar: null }), { foo: 'bar', bar: null });
57
46
  });
58
47
  it('has expected values with value not matching codec', function () {
59
48
  // invalid value
60
- assertRequestContains(getRequest(codec, { foo: null }), { foo: null }, {
61
- 'io-ts-codec-encode-error': 'false',
62
- 'io-ts-codec-decode-error': '0.foo',
63
- 'io-ts-unknown-properties': '',
64
- });
49
+ assertRequestContains(getRequest(codec, { foo: null }), { foo: null });
65
50
  // non-exact value
66
- assertRequestContains(getRequest(codec, { foo: 'bar', boo: 1 }), { foo: 'bar' }, {
67
- 'io-ts-codec-encode-error': 'false',
68
- 'io-ts-codec-decode-error': '',
69
- 'io-ts-unknown-properties': 'boo',
70
- });
51
+ assertRequestContains(getRequest(codec, { foo: 'bar', boo: 1 }), { foo: 'bar' });
71
52
  // non-exact value, useEncodedBody=false
72
- assertRequestContains(getRequest(codec, { foo: 'bar', boo: 1 }, { useEncodedBody: false }), { foo: 'bar', boo: 1 }, {
73
- 'io-ts-codec-encode-error': 'false',
74
- 'io-ts-codec-decode-error': '',
75
- 'io-ts-unknown-properties': 'boo',
53
+ assertRequestContains(getRequest(codec, { foo: 'bar', boo: 1 }, { useEncodedBody: false }), {
54
+ foo: 'bar',
55
+ boo: 1,
76
56
  });
77
57
  });
78
58
  });
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9zdFdpdGhDb2RlYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Rlc3QvdW5pdC9iaXRnby91dGlscy9wb3N0V2l0aENvZGVjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG9EQUE0QjtBQUM1Qix5Q0FBMkI7QUFDM0IsMkNBQXNEO0FBRXRELDZFQUEwRTtBQUUxRSxRQUFRLENBQUMsZUFBZSxFQUFFO0lBRXhCLFNBQVMsVUFBVSxDQUNqQixLQUFtQixFQUNuQixJQUFPLEVBQ1AsRUFBRSxjQUFjLEdBQUcsSUFBSSxFQUFFLEdBQUcsRUFBRTtRQUs5QixNQUFNLE9BQU8sR0FBRyw2QkFBYSxDQUFDLGtCQUFLLEVBQUUsRUFBRSxvQkFBb0IsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO1lBQ3hFLGNBQWM7U0FDZixDQU9BLENBQUM7UUFDRixPQUFPO1lBQ0wsT0FBTyxFQUFFLE9BQU8sQ0FBQyxNQUFNO1lBQ3ZCLElBQUksRUFBRSxPQUFPLENBQUMsS0FBSztTQUNwQixDQUFDO0lBQ0osQ0FBQztJQUVELFNBQVMscUJBQXFCLENBQzVCLE9BR0MsRUFDRCxJQUFhLEVBQ2IsT0FBZ0I7UUFFaEIsZ0JBQU0sQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUMzQyxLQUFLLE1BQU0sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNsRCxnQkFBTSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFLEtBQUssRUFBRSxVQUFVLEdBQUcsaUJBQWlCLENBQUMsQ0FBQztTQUNyRjtJQUNILENBQUM7SUFFRCxNQUFNLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFFbEcsRUFBRSxDQUFDLCtDQUErQyxFQUFFO1FBQ2xELHFCQUFxQixDQUNuQixVQUFVLENBQUMsS0FBSyxFQUFFLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQ2pDLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUNkO1lBQ0UsMEJBQTBCLEVBQUUsT0FBTztZQUNuQywwQkFBMEIsRUFBRSxFQUFFO1lBQzlCLDBCQUEwQixFQUFFLEVBQUU7U0FDL0IsQ0FDRixDQUFDO1FBRUYscUJBQXFCLENBQ25CLFVBQVUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUM1QyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxFQUN6QjtZQUNFLDBCQUEwQixFQUFFLE9BQU87WUFDbkMsMEJBQTBCLEVBQUUsRUFBRTtZQUM5QiwwQkFBMEIsRUFBRSxFQUFFO1NBQy9CLENBQ0YsQ0FBQztJQUNKLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLG1EQUFtRCxFQUFFO1FBQ3RELGdCQUFnQjtRQUNoQixxQkFBcUIsQ0FDbkIsVUFBVSxDQUFDLEtBQUssRUFBRSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQVMsQ0FBQyxFQUN2QyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsRUFDYjtZQUNFLDBCQUEwQixFQUFFLE9BQU87WUFDbkMsMEJBQTBCLEVBQUUsT0FBTztZQUNuQywwQkFBMEIsRUFBRSxFQUFFO1NBQy9CLENBQ0YsQ0FBQztRQUVGLGtCQUFrQjtRQUNsQixxQkFBcUIsQ0FDbkIsVUFBVSxDQUFDLEtBQUssRUFBRSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBUyxDQUFDLEVBQ2hELEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUNkO1lBQ0UsMEJBQTBCLEVBQUUsT0FBTztZQUNuQywwQkFBMEIsRUFBRSxFQUFFO1lBQzlCLDBCQUEwQixFQUFFLEtBQUs7U0FDbEMsQ0FDRixDQUFDO1FBRUYsd0NBQXdDO1FBQ3hDLHFCQUFxQixDQUNuQixVQUFVLENBQUMsS0FBSyxFQUFFLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFTLEVBQUUsRUFBRSxjQUFjLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFDM0UsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFDdEI7WUFDRSwwQkFBMEIsRUFBRSxPQUFPO1lBQ25DLDBCQUEwQixFQUFFLEVBQUU7WUFDOUIsMEJBQTBCLEVBQUUsS0FBSztTQUNsQyxDQUNGLENBQUM7SUFDSixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGFzc2VydCBmcm9tICdhc3NlcnQnO1xuaW1wb3J0ICogYXMgdCBmcm9tICdpby10cyc7XG5pbXBvcnQgeyBhZ2VudCwgU3VwZXJBZ2VudFJlcXVlc3QgfSBmcm9tICdzdXBlcmFnZW50JztcblxuaW1wb3J0IHsgcG9zdFdpdGhDb2RlYyB9IGZyb20gJy4uLy4uLy4uLy4uL3NyYy9iaXRnby91dGlscy9wb3N0V2l0aENvZGVjJztcblxuZGVzY3JpYmUoJ3Bvc3RXaXRoQ29kZWMnLCBmdW5jdGlvbiAoKSB7XG4gIHR5cGUgSGVhZGVycyA9IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICBmdW5jdGlvbiBnZXRSZXF1ZXN0PEEgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiwgTyBleHRlbmRzIFJlY29yZDxzdHJpbmcsIHVua25vd24+PihcbiAgICBjb2RlYzogdC5UeXBlPEEsIE8+LFxuICAgIGJvZHk6IEEsXG4gICAgeyB1c2VFbmNvZGVkQm9keSA9IHRydWUgfSA9IHt9XG4gICk6IHtcbiAgICBib2R5OiB1bmtub3duO1xuICAgIGhlYWRlcnM6IEhlYWRlcnM7XG4gIH0ge1xuICAgIGNvbnN0IHJlcXVlc3QgPSBwb3N0V2l0aENvZGVjKGFnZW50KCksICdodHRwOi8vZXhhbXBsZS5jb20nLCBjb2RlYywgYm9keSwge1xuICAgICAgdXNlRW5jb2RlZEJvZHksXG4gICAgfSkgYXMgU3VwZXJBZ2VudFJlcXVlc3QgJiB7XG4gICAgICAvKlxuICAgICAgU29tZSBwcml2YXRlIHByb3BlcnRpZXMuIEEgYml0IHVnbHksIGJ1dCB0aGUgYWx0ZXJuYXRpdmUgaXMgdG8gbWFrZSBhbiBhY3R1YWwgcmVxdWVzdCBhZ2FpbnN0XG4gICAgICBhIG5vY2ssIGFuZCB0ZWFzZSBvdXQgdGhlIGhlYWRlcnMgZnJvbSB0aGVyZS4gTm90IHByZXR0eSBlaXRoZXIuXG4gICAgICAqL1xuICAgICAgX2RhdGE6IHVua25vd247XG4gICAgICBoZWFkZXI6IEhlYWRlcnM7XG4gICAgfTtcbiAgICByZXR1cm4ge1xuICAgICAgaGVhZGVyczogcmVxdWVzdC5oZWFkZXIsXG4gICAgICBib2R5OiByZXF1ZXN0Ll9kYXRhLFxuICAgIH07XG4gIH1cblxuICBmdW5jdGlvbiBhc3NlcnRSZXF1ZXN0Q29udGFpbnMoXG4gICAgcmVxdWVzdDoge1xuICAgICAgYm9keTogdW5rbm93bjtcbiAgICAgIGhlYWRlcnM6IEhlYWRlcnM7XG4gICAgfSxcbiAgICBib2R5OiB1bmtub3duLFxuICAgIGhlYWRlcnM6IEhlYWRlcnNcbiAgKSB7XG4gICAgYXNzZXJ0LmRlZXBTdHJpY3RFcXVhbChyZXF1ZXN0LmJvZHksIGJvZHkpO1xuICAgIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKGhlYWRlcnMpKSB7XG4gICAgICBhc3NlcnQuZGVlcFN0cmljdEVxdWFsKHJlcXVlc3QuaGVhZGVyc1trZXldLCB2YWx1ZSwgYGhlYWRlciAke2tleX0gZG9lcyBub3QgbWF0Y2hgKTtcbiAgICB9XG4gIH1cblxuICBjb25zdCBjb2RlYyA9IHQuZXhhY3QodC5pbnRlcnNlY3Rpb24oW3QudHlwZSh7IGZvbzogdC5zdHJpbmcgfSksIHQucGFydGlhbCh7IGJhcjogdC51bmtub3duIH0pXSkpO1xuXG4gIGl0KCdoYXMgZXhwZWN0ZWQgdmFsdWVzIHdpdGggdmFsdWUgbWF0Y2hpbmcgY29kZWMnLCBmdW5jdGlvbiAoKSB7XG4gICAgYXNzZXJ0UmVxdWVzdENvbnRhaW5zKFxuICAgICAgZ2V0UmVxdWVzdChjb2RlYywgeyBmb286ICdiYXInIH0pLFxuICAgICAgeyBmb286ICdiYXInIH0sXG4gICAgICB7XG4gICAgICAgICdpby10cy1jb2RlYy1lbmNvZGUtZXJyb3InOiAnZmFsc2UnLFxuICAgICAgICAnaW8tdHMtY29kZWMtZGVjb2RlLWVycm9yJzogJycsXG4gICAgICAgICdpby10cy11bmtub3duLXByb3BlcnRpZXMnOiAnJyxcbiAgICAgIH1cbiAgICApO1xuXG4gICAgYXNzZXJ0UmVxdWVzdENvbnRhaW5zKFxuICAgICAgZ2V0UmVxdWVzdChjb2RlYywgeyBmb286ICdiYXInLCBiYXI6IG51bGwgfSksXG4gICAgICB7IGZvbzogJ2JhcicsIGJhcjogbnVsbCB9LFxuICAgICAge1xuICAgICAgICAnaW8tdHMtY29kZWMtZW5jb2RlLWVycm9yJzogJ2ZhbHNlJyxcbiAgICAgICAgJ2lvLXRzLWNvZGVjLWRlY29kZS1lcnJvcic6ICcnLFxuICAgICAgICAnaW8tdHMtdW5rbm93bi1wcm9wZXJ0aWVzJzogJycsXG4gICAgICB9XG4gICAgKTtcbiAgfSk7XG5cbiAgaXQoJ2hhcyBleHBlY3RlZCB2YWx1ZXMgd2l0aCB2YWx1ZSBub3QgbWF0Y2hpbmcgY29kZWMnLCBmdW5jdGlvbiAoKSB7XG4gICAgLy8gaW52YWxpZCB2YWx1ZVxuICAgIGFzc2VydFJlcXVlc3RDb250YWlucyhcbiAgICAgIGdldFJlcXVlc3QoY29kZWMsIHsgZm9vOiBudWxsIH0gYXMgYW55KSxcbiAgICAgIHsgZm9vOiBudWxsIH0sXG4gICAgICB7XG4gICAgICAgICdpby10cy1jb2RlYy1lbmNvZGUtZXJyb3InOiAnZmFsc2UnLFxuICAgICAgICAnaW8tdHMtY29kZWMtZGVjb2RlLWVycm9yJzogJzAuZm9vJyxcbiAgICAgICAgJ2lvLXRzLXVua25vd24tcHJvcGVydGllcyc6ICcnLFxuICAgICAgfVxuICAgICk7XG5cbiAgICAvLyBub24tZXhhY3QgdmFsdWVcbiAgICBhc3NlcnRSZXF1ZXN0Q29udGFpbnMoXG4gICAgICBnZXRSZXF1ZXN0KGNvZGVjLCB7IGZvbzogJ2JhcicsIGJvbzogMSB9IGFzIGFueSksXG4gICAgICB7IGZvbzogJ2JhcicgfSxcbiAgICAgIHtcbiAgICAgICAgJ2lvLXRzLWNvZGVjLWVuY29kZS1lcnJvcic6ICdmYWxzZScsXG4gICAgICAgICdpby10cy1jb2RlYy1kZWNvZGUtZXJyb3InOiAnJyxcbiAgICAgICAgJ2lvLXRzLXVua25vd24tcHJvcGVydGllcyc6ICdib28nLFxuICAgICAgfVxuICAgICk7XG5cbiAgICAvLyBub24tZXhhY3QgdmFsdWUsIHVzZUVuY29kZWRCb2R5PWZhbHNlXG4gICAgYXNzZXJ0UmVxdWVzdENvbnRhaW5zKFxuICAgICAgZ2V0UmVxdWVzdChjb2RlYywgeyBmb286ICdiYXInLCBib286IDEgfSBhcyBhbnksIHsgdXNlRW5jb2RlZEJvZHk6IGZhbHNlIH0pLFxuICAgICAgeyBmb286ICdiYXInLCBib286IDEgfSxcbiAgICAgIHtcbiAgICAgICAgJ2lvLXRzLWNvZGVjLWVuY29kZS1lcnJvcic6ICdmYWxzZScsXG4gICAgICAgICdpby10cy1jb2RlYy1kZWNvZGUtZXJyb3InOiAnJyxcbiAgICAgICAgJ2lvLXRzLXVua25vd24tcHJvcGVydGllcyc6ICdib28nLFxuICAgICAgfVxuICAgICk7XG4gIH0pO1xufSk7XG4iXX0=
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9zdFdpdGhDb2RlYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Rlc3QvdW5pdC9iaXRnby91dGlscy9wb3N0V2l0aENvZGVjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG9EQUE0QjtBQUM1Qix5Q0FBMkI7QUFDM0IsMkNBQXNEO0FBRXRELDZFQUEwRTtBQUUxRSxRQUFRLENBQUMsZUFBZSxFQUFFO0lBRXhCLFNBQVMsVUFBVSxDQUNqQixLQUFtQixFQUNuQixJQUFPLEVBQ1AsRUFBRSxjQUFjLEdBQUcsSUFBSSxFQUFFLEdBQUcsRUFBRTtRQUs5QixNQUFNLE9BQU8sR0FBRyw2QkFBYSxDQUFDLGtCQUFLLEVBQUUsRUFBRSxvQkFBb0IsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO1lBQ3hFLGNBQWM7U0FDZixDQU9BLENBQUM7UUFDRixPQUFPO1lBQ0wsT0FBTyxFQUFFLE9BQU8sQ0FBQyxNQUFNO1lBQ3ZCLElBQUksRUFBRSxPQUFPLENBQUMsS0FBSztTQUNwQixDQUFDO0lBQ0osQ0FBQztJQUVELFNBQVMscUJBQXFCLENBQzVCLE9BR0MsRUFDRCxJQUFhO1FBRWIsZ0JBQU0sQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRWxHLEVBQUUsQ0FBQywrQ0FBK0MsRUFBRTtRQUNsRCxxQkFBcUIsQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUV6RSxxQkFBcUIsQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDakcsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsbURBQW1ELEVBQUU7UUFDdEQsZ0JBQWdCO1FBQ2hCLHFCQUFxQixDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFTLENBQUMsRUFBRSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRTlFLGtCQUFrQjtRQUNsQixxQkFBcUIsQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFTLENBQUMsRUFBRSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBRXhGLHdDQUF3QztRQUN4QyxxQkFBcUIsQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFTLEVBQUUsRUFBRSxjQUFjLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRTtZQUNqRyxHQUFHLEVBQUUsS0FBSztZQUNWLEdBQUcsRUFBRSxDQUFDO1NBQ1AsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCAqIGFzIHQgZnJvbSAnaW8tdHMnO1xuaW1wb3J0IHsgYWdlbnQsIFN1cGVyQWdlbnRSZXF1ZXN0IH0gZnJvbSAnc3VwZXJhZ2VudCc7XG5cbmltcG9ydCB7IHBvc3RXaXRoQ29kZWMgfSBmcm9tICcuLi8uLi8uLi8uLi9zcmMvYml0Z28vdXRpbHMvcG9zdFdpdGhDb2RlYyc7XG5cbmRlc2NyaWJlKCdwb3N0V2l0aENvZGVjJywgZnVuY3Rpb24gKCkge1xuICB0eXBlIEhlYWRlcnMgPSBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgZnVuY3Rpb24gZ2V0UmVxdWVzdDxBIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4sIE8gZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj4oXG4gICAgY29kZWM6IHQuVHlwZTxBLCBPPixcbiAgICBib2R5OiBBLFxuICAgIHsgdXNlRW5jb2RlZEJvZHkgPSB0cnVlIH0gPSB7fVxuICApOiB7XG4gICAgYm9keTogdW5rbm93bjtcbiAgICBoZWFkZXJzOiBIZWFkZXJzO1xuICB9IHtcbiAgICBjb25zdCByZXF1ZXN0ID0gcG9zdFdpdGhDb2RlYyhhZ2VudCgpLCAnaHR0cDovL2V4YW1wbGUuY29tJywgY29kZWMsIGJvZHksIHtcbiAgICAgIHVzZUVuY29kZWRCb2R5LFxuICAgIH0pIGFzIFN1cGVyQWdlbnRSZXF1ZXN0ICYge1xuICAgICAgLypcbiAgICAgIFNvbWUgcHJpdmF0ZSBwcm9wZXJ0aWVzLiBBIGJpdCB1Z2x5LCBidXQgdGhlIGFsdGVybmF0aXZlIGlzIHRvIG1ha2UgYW4gYWN0dWFsIHJlcXVlc3QgYWdhaW5zdFxuICAgICAgYSBub2NrLCBhbmQgdGVhc2Ugb3V0IHRoZSBoZWFkZXJzIGZyb20gdGhlcmUuIE5vdCBwcmV0dHkgZWl0aGVyLlxuICAgICAgKi9cbiAgICAgIF9kYXRhOiB1bmtub3duO1xuICAgICAgaGVhZGVyOiBIZWFkZXJzO1xuICAgIH07XG4gICAgcmV0dXJuIHtcbiAgICAgIGhlYWRlcnM6IHJlcXVlc3QuaGVhZGVyLFxuICAgICAgYm9keTogcmVxdWVzdC5fZGF0YSxcbiAgICB9O1xuICB9XG5cbiAgZnVuY3Rpb24gYXNzZXJ0UmVxdWVzdENvbnRhaW5zKFxuICAgIHJlcXVlc3Q6IHtcbiAgICAgIGJvZHk6IHVua25vd247XG4gICAgICBoZWFkZXJzOiBIZWFkZXJzO1xuICAgIH0sXG4gICAgYm9keTogdW5rbm93blxuICApIHtcbiAgICBhc3NlcnQuZGVlcFN0cmljdEVxdWFsKHJlcXVlc3QuYm9keSwgYm9keSk7XG4gIH1cblxuICBjb25zdCBjb2RlYyA9IHQuZXhhY3QodC5pbnRlcnNlY3Rpb24oW3QudHlwZSh7IGZvbzogdC5zdHJpbmcgfSksIHQucGFydGlhbCh7IGJhcjogdC51bmtub3duIH0pXSkpO1xuXG4gIGl0KCdoYXMgZXhwZWN0ZWQgdmFsdWVzIHdpdGggdmFsdWUgbWF0Y2hpbmcgY29kZWMnLCBmdW5jdGlvbiAoKSB7XG4gICAgYXNzZXJ0UmVxdWVzdENvbnRhaW5zKGdldFJlcXVlc3QoY29kZWMsIHsgZm9vOiAnYmFyJyB9KSwgeyBmb286ICdiYXInIH0pO1xuXG4gICAgYXNzZXJ0UmVxdWVzdENvbnRhaW5zKGdldFJlcXVlc3QoY29kZWMsIHsgZm9vOiAnYmFyJywgYmFyOiBudWxsIH0pLCB7IGZvbzogJ2JhcicsIGJhcjogbnVsbCB9KTtcbiAgfSk7XG5cbiAgaXQoJ2hhcyBleHBlY3RlZCB2YWx1ZXMgd2l0aCB2YWx1ZSBub3QgbWF0Y2hpbmcgY29kZWMnLCBmdW5jdGlvbiAoKSB7XG4gICAgLy8gaW52YWxpZCB2YWx1ZVxuICAgIGFzc2VydFJlcXVlc3RDb250YWlucyhnZXRSZXF1ZXN0KGNvZGVjLCB7IGZvbzogbnVsbCB9IGFzIGFueSksIHsgZm9vOiBudWxsIH0pO1xuXG4gICAgLy8gbm9uLWV4YWN0IHZhbHVlXG4gICAgYXNzZXJ0UmVxdWVzdENvbnRhaW5zKGdldFJlcXVlc3QoY29kZWMsIHsgZm9vOiAnYmFyJywgYm9vOiAxIH0gYXMgYW55KSwgeyBmb286ICdiYXInIH0pO1xuXG4gICAgLy8gbm9uLWV4YWN0IHZhbHVlLCB1c2VFbmNvZGVkQm9keT1mYWxzZVxuICAgIGFzc2VydFJlcXVlc3RDb250YWlucyhnZXRSZXF1ZXN0KGNvZGVjLCB7IGZvbzogJ2JhcicsIGJvbzogMSB9IGFzIGFueSwgeyB1c2VFbmNvZGVkQm9keTogZmFsc2UgfSksIHtcbiAgICAgIGZvbzogJ2JhcicsXG4gICAgICBib286IDEsXG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=