@bitpay-labs/bitcore-wallet-service 11.11.0 → 11.11.2

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 (157) hide show
  1. package/Dockerfile +1 -1
  2. package/package.json +5 -5
  3. package/src/config.ts +0 -20
  4. package/src/externalservices/banxa.ts +51 -10
  5. package/src/externalservices/changelly.ts +54 -6
  6. package/src/externalservices/moonpay.ts +85 -19
  7. package/src/externalservices/oneInch.ts +13 -5
  8. package/src/externalservices/ramp.ts +42 -8
  9. package/src/externalservices/sardine.ts +51 -10
  10. package/src/externalservices/simplex.ts +58 -11
  11. package/src/externalservices/thorswap.ts +46 -11
  12. package/src/externalservices/transak.ts +53 -11
  13. package/src/lib/chain/btc/index.ts +3 -2
  14. package/src/lib/chain/eth/index.ts +134 -117
  15. package/src/lib/chain/sol/index.ts +1 -1
  16. package/src/lib/chain/xrp/index.ts +1 -1
  17. package/src/lib/routes/services.ts +0 -12
  18. package/src/lib/routes/wallets.ts +3 -1
  19. package/src/lib/server.ts +136 -91
  20. package/src/lib/storage.ts +90 -20
  21. package/src/types/externalservices.d.ts +0 -1
  22. package/test/chain/eth.test.ts +70 -0
  23. package/test/chain/sol.test.ts +1 -1
  24. package/test/chain/xrp.test.ts +1 -1
  25. package/test/expressapp.test.ts +144 -0
  26. package/test/integration/addressReads.test.ts +503 -0
  27. package/test/integration/bcmonitor.test.ts +44 -0
  28. package/test/integration/externalservices/banxa.test.ts +95 -5
  29. package/test/integration/externalservices/changelly.test.ts +118 -6
  30. package/test/integration/externalservices/coinGecko.test.ts +4 -0
  31. package/test/integration/externalservices/moonpay.test.ts +178 -9
  32. package/test/integration/externalservices/oneInch.test.ts +28 -1
  33. package/test/integration/externalservices/ramp.test.ts +126 -4
  34. package/test/integration/externalservices/sardine.test.ts +95 -5
  35. package/test/integration/externalservices/simplex.test.ts +95 -5
  36. package/test/integration/externalservices/thorswap.test.ts +81 -5
  37. package/test/integration/externalservices/transak.test.ts +98 -6
  38. package/test/integration/helpers.ts +1 -1
  39. package/test/integration/server.test.ts +254 -136
  40. package/test/integration/walletReads.test.ts +488 -0
  41. package/ts_build/package.json +3 -3
  42. package/ts_build/src/config.d.ts.map +1 -1
  43. package/ts_build/src/config.js +0 -4
  44. package/ts_build/src/config.js.map +1 -1
  45. package/ts_build/src/externalservices/banxa.d.ts.map +1 -1
  46. package/ts_build/src/externalservices/banxa.js +51 -10
  47. package/ts_build/src/externalservices/banxa.js.map +1 -1
  48. package/ts_build/src/externalservices/changelly.d.ts.map +1 -1
  49. package/ts_build/src/externalservices/changelly.js +54 -6
  50. package/ts_build/src/externalservices/changelly.js.map +1 -1
  51. package/ts_build/src/externalservices/moonpay.d.ts.map +1 -1
  52. package/ts_build/src/externalservices/moonpay.js +85 -19
  53. package/ts_build/src/externalservices/moonpay.js.map +1 -1
  54. package/ts_build/src/externalservices/oneInch.d.ts.map +1 -1
  55. package/ts_build/src/externalservices/oneInch.js +13 -5
  56. package/ts_build/src/externalservices/oneInch.js.map +1 -1
  57. package/ts_build/src/externalservices/ramp.d.ts.map +1 -1
  58. package/ts_build/src/externalservices/ramp.js +42 -8
  59. package/ts_build/src/externalservices/ramp.js.map +1 -1
  60. package/ts_build/src/externalservices/sardine.d.ts.map +1 -1
  61. package/ts_build/src/externalservices/sardine.js +51 -10
  62. package/ts_build/src/externalservices/sardine.js.map +1 -1
  63. package/ts_build/src/externalservices/simplex.d.ts.map +1 -1
  64. package/ts_build/src/externalservices/simplex.js +55 -11
  65. package/ts_build/src/externalservices/simplex.js.map +1 -1
  66. package/ts_build/src/externalservices/thorswap.d.ts.map +1 -1
  67. package/ts_build/src/externalservices/thorswap.js +45 -11
  68. package/ts_build/src/externalservices/thorswap.js.map +1 -1
  69. package/ts_build/src/externalservices/transak.d.ts.map +1 -1
  70. package/ts_build/src/externalservices/transak.js +53 -11
  71. package/ts_build/src/externalservices/transak.js.map +1 -1
  72. package/ts_build/src/lib/chain/btc/index.d.ts.map +1 -1
  73. package/ts_build/src/lib/chain/btc/index.js +3 -2
  74. package/ts_build/src/lib/chain/btc/index.js.map +1 -1
  75. package/ts_build/src/lib/chain/eth/index.d.ts +8 -1
  76. package/ts_build/src/lib/chain/eth/index.d.ts.map +1 -1
  77. package/ts_build/src/lib/chain/eth/index.js +114 -102
  78. package/ts_build/src/lib/chain/eth/index.js.map +1 -1
  79. package/ts_build/src/lib/chain/sol/index.js +1 -1
  80. package/ts_build/src/lib/chain/sol/index.js.map +1 -1
  81. package/ts_build/src/lib/chain/xrp/index.js +1 -1
  82. package/ts_build/src/lib/chain/xrp/index.js.map +1 -1
  83. package/ts_build/src/lib/routes/services.d.ts.map +1 -1
  84. package/ts_build/src/lib/routes/services.js +0 -10
  85. package/ts_build/src/lib/routes/services.js.map +1 -1
  86. package/ts_build/src/lib/routes/wallets.d.ts.map +1 -1
  87. package/ts_build/src/lib/routes/wallets.js +2 -1
  88. package/ts_build/src/lib/routes/wallets.js.map +1 -1
  89. package/ts_build/src/lib/server.d.ts +1 -3
  90. package/ts_build/src/lib/server.d.ts.map +1 -1
  91. package/ts_build/src/lib/server.js +128 -96
  92. package/ts_build/src/lib/server.js.map +1 -1
  93. package/ts_build/src/lib/storage.d.ts +17 -10
  94. package/ts_build/src/lib/storage.d.ts.map +1 -1
  95. package/ts_build/src/lib/storage.js +73 -20
  96. package/ts_build/src/lib/storage.js.map +1 -1
  97. package/ts_build/test/chain/eth.test.js +59 -0
  98. package/ts_build/test/chain/eth.test.js.map +1 -1
  99. package/ts_build/test/chain/sol.test.js +1 -1
  100. package/ts_build/test/chain/sol.test.js.map +1 -1
  101. package/ts_build/test/chain/xrp.test.js +1 -1
  102. package/ts_build/test/chain/xrp.test.js.map +1 -1
  103. package/ts_build/test/expressapp.test.js +132 -0
  104. package/ts_build/test/expressapp.test.js.map +1 -1
  105. package/ts_build/test/integration/addressReads.test.d.ts +2 -0
  106. package/ts_build/test/integration/addressReads.test.d.ts.map +1 -0
  107. package/ts_build/test/integration/addressReads.test.js +465 -0
  108. package/ts_build/test/integration/addressReads.test.js.map +1 -0
  109. package/ts_build/test/integration/bcmonitor.test.js +40 -0
  110. package/ts_build/test/integration/bcmonitor.test.js.map +1 -1
  111. package/ts_build/test/integration/externalservices/banxa.test.d.ts.map +1 -1
  112. package/ts_build/test/integration/externalservices/banxa.test.js +93 -5
  113. package/ts_build/test/integration/externalservices/banxa.test.js.map +1 -1
  114. package/ts_build/test/integration/externalservices/changelly.test.d.ts.map +1 -1
  115. package/ts_build/test/integration/externalservices/changelly.test.js +111 -6
  116. package/ts_build/test/integration/externalservices/changelly.test.js.map +1 -1
  117. package/ts_build/test/integration/externalservices/coinGecko.test.js +4 -0
  118. package/ts_build/test/integration/externalservices/coinGecko.test.js.map +1 -1
  119. package/ts_build/test/integration/externalservices/moonpay.test.d.ts.map +1 -1
  120. package/ts_build/test/integration/externalservices/moonpay.test.js +169 -9
  121. package/ts_build/test/integration/externalservices/moonpay.test.js.map +1 -1
  122. package/ts_build/test/integration/externalservices/oneInch.test.d.ts.map +1 -1
  123. package/ts_build/test/integration/externalservices/oneInch.test.js +26 -1
  124. package/ts_build/test/integration/externalservices/oneInch.test.js.map +1 -1
  125. package/ts_build/test/integration/externalservices/ramp.test.d.ts.map +1 -1
  126. package/ts_build/test/integration/externalservices/ramp.test.js +115 -4
  127. package/ts_build/test/integration/externalservices/ramp.test.js.map +1 -1
  128. package/ts_build/test/integration/externalservices/sardine.test.d.ts.map +1 -1
  129. package/ts_build/test/integration/externalservices/sardine.test.js +94 -5
  130. package/ts_build/test/integration/externalservices/sardine.test.js.map +1 -1
  131. package/ts_build/test/integration/externalservices/simplex.test.d.ts.map +1 -1
  132. package/ts_build/test/integration/externalservices/simplex.test.js +89 -5
  133. package/ts_build/test/integration/externalservices/simplex.test.js.map +1 -1
  134. package/ts_build/test/integration/externalservices/thorswap.test.d.ts.map +1 -1
  135. package/ts_build/test/integration/externalservices/thorswap.test.js +76 -5
  136. package/ts_build/test/integration/externalservices/thorswap.test.js.map +1 -1
  137. package/ts_build/test/integration/externalservices/transak.test.d.ts.map +1 -1
  138. package/ts_build/test/integration/externalservices/transak.test.js +93 -6
  139. package/ts_build/test/integration/externalservices/transak.test.js.map +1 -1
  140. package/ts_build/test/integration/helpers.js +1 -1
  141. package/ts_build/test/integration/helpers.js.map +1 -1
  142. package/ts_build/test/integration/server.test.js +225 -124
  143. package/ts_build/test/integration/server.test.js.map +1 -1
  144. package/ts_build/test/integration/walletReads.test.d.ts +2 -0
  145. package/ts_build/test/integration/walletReads.test.d.ts.map +1 -0
  146. package/ts_build/test/integration/walletReads.test.js +436 -0
  147. package/ts_build/test/integration/walletReads.test.js.map +1 -0
  148. package/src/externalservices/wyre.ts +0 -131
  149. package/test/integration/externalservices/wyre.test.ts +0 -270
  150. package/ts_build/src/externalservices/wyre.d.ts +0 -7
  151. package/ts_build/src/externalservices/wyre.d.ts.map +0 -1
  152. package/ts_build/src/externalservices/wyre.js +0 -144
  153. package/ts_build/src/externalservices/wyre.js.map +0 -1
  154. package/ts_build/test/integration/externalservices/wyre.test.d.ts +0 -2
  155. package/ts_build/test/integration/externalservices/wyre.test.d.ts.map +0 -1
  156. package/ts_build/test/integration/externalservices/wyre.test.js +0 -281
  157. package/ts_build/test/integration/externalservices/wyre.test.js.map +0 -1
@@ -37,18 +37,22 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  const chai = __importStar(require("chai"));
40
+ const sinon = __importStar(require("sinon"));
40
41
  require("chai/register-should");
41
42
  const util_1 = __importDefault(require("util"));
42
43
  const server_1 = require("../../../src/lib/server");
43
44
  const TestData = __importStar(require("../../testdata"));
44
45
  const helpers_1 = __importDefault(require("../helpers"));
45
46
  const config_1 = __importDefault(require("../../../src/config"));
47
+ const logger_1 = __importDefault(require("../../../src/lib/logger"));
46
48
  const should = chai.should();
47
49
  describe('Simplex integration', () => {
50
+ const sandbox = sinon.createSandbox();
48
51
  let server;
49
52
  let wallet;
50
53
  let fakeRequest;
51
54
  let req;
55
+ let loggerError;
52
56
  before(async () => {
53
57
  await helpers_1.default.before();
54
58
  });
@@ -102,6 +106,11 @@ describe('Simplex integration', () => {
102
106
  clientVersion: 'bwc-2.0.0',
103
107
  walletId: '123',
104
108
  }));
109
+ sandbox.stub(logger_1.default, 'warn');
110
+ loggerError = sandbox.stub(logger_1.default, 'error');
111
+ });
112
+ afterEach(() => {
113
+ sandbox.restore();
105
114
  });
106
115
  after(async () => {
107
116
  await helpers_1.default.after();
@@ -135,7 +144,22 @@ describe('Simplex integration', () => {
135
144
  should.fail('should have thrown');
136
145
  }
137
146
  catch (err) {
138
- err.message.should.equal('Error');
147
+ loggerError.callCount.should.equal(1);
148
+ loggerError.args[0][0].should.contain('Simplex request failed with error (');
149
+ err.message.should.equal('Failed to get Simplex supported currencies');
150
+ }
151
+ });
152
+ it('should return error and not leak the response if body is empty', async () => {
153
+ const fakeRequest2 = {
154
+ get: (_url, opts, cb) => { return cb(null, { statusCode: 200, body: undefined, request: { headers: opts.headers } }); },
155
+ };
156
+ server.externalServices.simplex.request = fakeRequest2;
157
+ try {
158
+ await server.externalServices.simplex.simplexGetCurrencies(req);
159
+ should.fail('should have thrown');
160
+ }
161
+ catch (err) {
162
+ err.message.should.equal('Simplex did not return supported currencies');
139
163
  }
140
164
  });
141
165
  it('should return error if simplex is commented in config', async () => {
@@ -244,7 +268,22 @@ describe('Simplex integration', () => {
244
268
  should.fail('should have thrown');
245
269
  }
246
270
  catch (err) {
247
- err.message.should.equal('Error');
271
+ loggerError.callCount.should.equal(1);
272
+ loggerError.args[0][0].should.contain('Simplex request failed with error (');
273
+ err.message.should.equal('Failed to get Simplex quote');
274
+ }
275
+ });
276
+ it('should return error and not leak the response if body is empty', async () => {
277
+ const fakeRequest2 = {
278
+ post: (_url, opts, cb) => { return cb(null, { statusCode: 200, body: undefined, request: { headers: opts.headers } }); },
279
+ };
280
+ server.externalServices.simplex.request = fakeRequest2;
281
+ try {
282
+ await server.externalServices.simplex.simplexGetQuote(req);
283
+ should.fail('should have thrown');
284
+ }
285
+ catch (err) {
286
+ err.message.should.equal('Simplex did not return a quote');
248
287
  }
249
288
  });
250
289
  it('should return error if simplex is commented in config', async () => {
@@ -293,7 +332,22 @@ describe('Simplex integration', () => {
293
332
  should.fail('should have thrown');
294
333
  }
295
334
  catch (err) {
296
- err.message.should.equal('Error');
335
+ loggerError.callCount.should.equal(1);
336
+ loggerError.args[0][0].should.contain('Simplex request failed with error (');
337
+ err.message.should.equal('Failed to get Simplex sell quote');
338
+ }
339
+ });
340
+ it('should return error and not leak the response if body is empty', async () => {
341
+ const fakeRequest2 = {
342
+ get: (_url, opts, cb) => { return cb(null, { statusCode: 200, body: undefined, request: { headers: opts.headers } }); },
343
+ };
344
+ server.externalServices.simplex.request = fakeRequest2;
345
+ try {
346
+ await server.externalServices.simplex.simplexGetSellQuote(req);
347
+ should.fail('should have thrown');
348
+ }
349
+ catch (err) {
350
+ err.message.should.equal('Simplex did not return a sell quote');
297
351
  }
298
352
  });
299
353
  it('should return error if there is some missing arguments', async () => {
@@ -414,7 +468,22 @@ describe('Simplex integration', () => {
414
468
  should.fail('should have thrown');
415
469
  }
416
470
  catch (err) {
417
- err.message.should.equal('Error');
471
+ loggerError.callCount.should.equal(1);
472
+ loggerError.args[0][0].should.contain('Simplex request failed with error (');
473
+ err.message.should.equal('Failed to get Simplex payment data');
474
+ }
475
+ });
476
+ it('should return error and not leak the response if body is empty', async () => {
477
+ const fakeRequest2 = {
478
+ post: (_url, opts, cb) => { return cb(null, { statusCode: 200, body: undefined, request: { headers: opts.headers } }); },
479
+ };
480
+ server.externalServices.simplex.request = fakeRequest2;
481
+ try {
482
+ await server.externalServices.simplex.simplexPaymentRequest(req);
483
+ should.fail('should have thrown');
484
+ }
485
+ catch (err) {
486
+ err.message.should.equal('Simplex did not return payment data');
418
487
  }
419
488
  });
420
489
  it('should return error if there is some missing arguments', async () => {
@@ -470,7 +539,22 @@ describe('Simplex integration', () => {
470
539
  should.fail('should have thrown');
471
540
  }
472
541
  catch (err) {
473
- err.message.should.equal('Error');
542
+ loggerError.callCount.should.equal(1);
543
+ loggerError.args[0][0].should.contain('Simplex request failed with error (');
544
+ err.message.should.equal('Failed to initiate Simplex sell payment');
545
+ }
546
+ });
547
+ it('should return error and not leak the response if body is empty', async () => {
548
+ const fakeRequest2 = {
549
+ post: (_url, opts, cb) => { return cb(null, { statusCode: 200, body: undefined, request: { headers: opts.headers } }); },
550
+ };
551
+ server.externalServices.simplex.request = fakeRequest2;
552
+ try {
553
+ await server.externalServices.simplex.simplexSellPaymentRequest(req);
554
+ should.fail('should have thrown');
555
+ }
556
+ catch (err) {
557
+ err.message.should.equal('Simplex did not return sell data');
474
558
  }
475
559
  });
476
560
  it('should return error if there is some missing arguments', async () => {
@@ -1 +1 @@
1
- {"version":3,"file":"simplex.test.js","sourceRoot":"","sources":["../../../../test/integration/externalservices/simplex.test.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEb,2CAA6B;AAC7B,gCAA8B;AAC9B,gDAAwB;AACxB,oDAAwD;AACxD,yDAA2C;AAC3C,yDAAiC;AACjC,iEAAyC;AAEzC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;AAE7B,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACnC,IAAI,MAAM,CAAC;IACX,IAAI,MAAM,CAAC;IACX,IAAI,WAAW,CAAC;IAChB,IAAI,GAAG,CAAC;IAER,MAAM,CAAC,KAAK,IAAI,EAAE;QAChB,MAAM,iBAAO,CAAC,MAAM,EAAE,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,UAAU,CAAC,KAAK,IAAI,EAAE;QACpB,gBAAM,CAAC,OAAO,GAAG;YACf,OAAO,EAAE;gBACP,MAAM,EAAE,SAAS;gBACjB,GAAG,EAAE,MAAM;gBACX,OAAO,EAAE,UAAU;gBACnB,aAAa,EAAE,gBAAgB;gBAC/B,YAAY,EAAE,eAAe;gBAC7B,SAAS,EAAE,YAAY;aACxB;YACD,UAAU,EAAE;gBACV,MAAM,EAAE,SAAS;gBACjB,GAAG,EAAE,MAAM;gBACX,OAAO,EAAE,UAAU;gBACnB,aAAa,EAAE,gBAAgB;gBAC/B,YAAY,EAAE,eAAe;gBAC7B,SAAS,EAAE,YAAY;aACxB;YACD,UAAU,EAAE;gBACV,MAAM,EAAE,SAAS;gBACjB,GAAG,EAAE,MAAM;gBACX,OAAO,EAAE,UAAU;gBACnB,aAAa,EAAE,gBAAgB;gBAC/B,YAAY,EAAE,eAAe;gBAC7B,SAAS,EAAE,YAAY;aACxB;YACD,aAAa,EAAE;gBACb,MAAM,EAAE,SAAS;gBACjB,GAAG,EAAE,MAAM;gBACX,OAAO,EAAE,UAAU;gBACnB,aAAa,EAAE,gBAAgB;gBAC/B,YAAY,EAAE,eAAe;gBAC7B,SAAS,EAAE,YAAY;aACxB;SACF,CAAC;QAEF,WAAW,GAAG;YACZ,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,GAAG,OAAO,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;YAClE,IAAI,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,GAAG,OAAO,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;SACpE,CAAC;QAEF,MAAM,iBAAO,CAAC,UAAU,EAAE,CAAC;QAC3B,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,iBAAO,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACvD,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;QAC/C,MAAM,GAAG,GAAG,iBAAO,CAAC,WAAW,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QAErD,CAAC,MAAM,GAAG,MAAM,cAAI,CAAC,SAAS,CAAC,sBAAa,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,sBAAa,EAAE;YAEpF,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;YAChC,OAAO,EAAE,aAAa;YACtB,SAAS,EAAE,GAAG;YACd,aAAa,EAAE,WAAW;YAC1B,QAAQ,EAAE,KAAK;SAChB,CAAC,CAAC,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,KAAK,IAAI,EAAE;QACf,MAAM,iBAAO,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;QACrC,UAAU,CAAC,GAAG,EAAE;YACd,GAAG,GAAG;gBACJ,OAAO,EAAE,EAAE;gBACX,IAAI,EAAE;oBACJ,GAAG,EAAE,SAAS;iBACf;aACF,CAAC;YACF,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,GAAG,WAAW,CAAC;QACxD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;YACjD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;YAC7E,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;YACzD,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACzB,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;YAC7E,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;YACxD,MAAM,YAAY,GAAG;gBACnB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,GAAG,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;aACrE,CAAC;YAEF,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC;YACvD,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;gBAChE,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACpC,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;YACrE,gBAAM,CAAC,OAAO,GAAG,SAAS,CAAC;YAC3B,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;gBAChE,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAChC,UAAU,CAAC,GAAG,EAAE;YACd,GAAG,GAAG;gBACJ,OAAO,EAAE,EAAE;gBACX,IAAI,EAAE;oBACJ,GAAG,EAAE,SAAS;iBACf;gBACD,EAAE,EAAE,SAAS;aACd,CAAC;YACF,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,GAAG,WAAW,CAAC;QACxD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;YACjD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;YACxE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;YACzD,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACzB,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;YACxE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0DAA0D,EAAE,KAAK,IAAI,EAAE;YACxE,IAAI,YAAY,CAAC;YACjB,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,GAAG;gBACxC,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE;oBACvB,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC;oBACzB,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;gBACpC,CAAC;aACF,CAAC;YACF,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACzB,GAAG,CAAC,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC;YACnC,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;YAC3D,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;YAChF,IAAI,YAAY,CAAC;YACjB,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,GAAG;gBACxC,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE;oBACvB,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC;oBACzB,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;gBACpC,CAAC;aACF,CAAC;YACF,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACzB,GAAG,CAAC,IAAI,CAAC,QAAQ,GAAG,qBAAqB,CAAC;YAC1C,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;YAC3D,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;YACtE,IAAI,YAAY,CAAC;YACjB,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,GAAG;gBACxC,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE;oBACvB,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC;oBACzB,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;gBACpC,CAAC;aACF,CAAC;YACF,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACzB,GAAG,CAAC,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC;YACnC,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;YAC3D,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0EAA0E,EAAE,KAAK,IAAI,EAAE;YACxF,IAAI,YAAY,CAAC;YACjB,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,GAAG;gBACxC,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE;oBACvB,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC;oBACzB,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;gBACpC,CAAC;aACF,CAAC;YACF,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,GAAG,cAAc,CAAC;YAChD,GAAG,CAAC,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC;YACnC,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;YAC3D,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mFAAmF,EAAE,KAAK,IAAI,EAAE;YACjG,IAAI,YAAY,CAAC;YACjB,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,GAAG;gBACxC,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE;oBACvB,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC;oBACzB,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;gBACpC,CAAC;aACF,CAAC;YACF,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACzB,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,GAAG,cAAc,CAAC;YAChD,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;YAC3D,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;YACzD,MAAM,YAAY,GAAG;gBACnB,IAAI,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,GAAG,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;aACtE,CAAC;YAEF,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC;YACvD,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;gBAC3D,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACpC,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;YACrE,gBAAM,CAAC,OAAO,GAAG,SAAS,CAAC;YAE3B,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;gBAC3D,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAClB,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;QACpC,UAAU,CAAC,GAAG,EAAE;YACd,GAAG,GAAG;gBACJ,OAAO,EAAE,EAAE;gBACX,IAAI,EAAE;oBACJ,GAAG,EAAE,SAAS;oBACd,WAAW,EAAE,IAAI;oBACjB,aAAa,EAAE,KAAK;oBACpB,WAAW,EAAE,OAAO;oBACpB,cAAc,EAAE,KAAK;oBACrB,iBAAiB,EAAE,MAAM;iBAC1B;aACF,CAAC;YACF,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,GAAG,WAAW,CAAC;QACxD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;YACjD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;YAC5E,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;YACzD,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACzB,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;YAC5E,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;YACxD,MAAM,YAAY,GAAG;gBACnB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,GAAG,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;aACrE,CAAC;YAEF,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC;YACvD,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;gBAC/D,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACpC,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;YACtE,OAAO,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC;YAC5B,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;gBAC/D,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;YACnE,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;YACrE,gBAAM,CAAC,OAAO,GAAG,SAAS,CAAC;YAC3B,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;gBAC/D,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;QACtC,UAAU,CAAC,GAAG,EAAE;YACd,GAAG,GAAG;gBACJ,OAAO,EAAE,EAAE;gBACX,IAAI,EAAE;oBACJ,GAAG,EAAE,YAAY;oBACjB,eAAe,EAAE,EAChB;oBACD,mBAAmB,EAAE;wBACnB,eAAe,EAAE,EAChB;qBACF;iBACF;gBACD,EAAE,EAAE,SAAS;aACd,CAAC;YAEF,WAAW,GAAG;gBACZ,IAAI,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,GAAG,OAAO,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;aAChE,CAAC;YACF,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,GAAG,WAAW,CAAC;QACxD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;YACjD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;YAC9E,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gFAAgF,EAAE,KAAK,IAAI,EAAE;YAC9F,IAAI,YAAY,CAAC;YACjB,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,GAAG;gBACxC,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE;oBACvB,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC;oBACzB,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;gBAChC,CAAC;aACF,CAAC;YACF,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACzB,GAAG,CAAC,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC;YACnC,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;YACjE,YAAY,CAAC,eAAe,CAAC,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAC5E,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;YAChF,IAAI,YAAY,CAAC;YACjB,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,GAAG;gBACxC,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE;oBACvB,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC;oBACzB,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;gBAChC,CAAC;aACF,CAAC;YACF,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACzB,GAAG,CAAC,IAAI,CAAC,QAAQ,GAAG,qBAAqB,CAAC;YAC1C,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;YACjE,YAAY,CAAC,eAAe,CAAC,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAC5E,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;YACtE,IAAI,YAAY,CAAC;YACjB,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,GAAG;gBACxC,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE;oBACvB,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC;oBACzB,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;gBAChC,CAAC;aACF,CAAC;YACF,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACzB,GAAG,CAAC,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC;YACnC,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;YACjE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0EAA0E,EAAE,KAAK,IAAI,EAAE;YACxF,IAAI,YAAY,CAAC;YACjB,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,GAAG;gBACxC,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE;oBACvB,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC;oBACzB,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;gBAChC,CAAC;aACF,CAAC;YACF,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,GAAG,cAAc,CAAC;YAChD,GAAG,CAAC,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC;YACnC,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;YACjE,YAAY,CAAC,eAAe,CAAC,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAC5E,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mFAAmF,EAAE,KAAK,IAAI,EAAE;YACjG,IAAI,YAAY,CAAC;YACjB,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,GAAG;gBACxC,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE;oBACvB,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC;oBACzB,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;gBAChC,CAAC;aACF,CAAC;YACF,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACzB,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,GAAG,cAAc,CAAC;YAChD,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;YACjE,YAAY,CAAC,eAAe,CAAC,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAC5E,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;YACzD,MAAM,YAAY,GAAG;gBACnB,IAAI,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,GAAG,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;aACtE,CAAC;YAEF,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC;YACvD,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;gBACjE,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACpC,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;YACtE,OAAO,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC;YACpC,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;gBACjE,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;YACnE,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;YACrE,gBAAM,CAAC,OAAO,GAAG,SAAS,CAAC;YAE3B,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;gBACjE,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;QAC1C,UAAU,CAAC,GAAG,EAAE;YACd,GAAG,GAAG;gBACJ,OAAO,EAAE,EAAE;gBACX,IAAI,EAAE;oBACJ,GAAG,EAAE,YAAY;oBACjB,WAAW,EAAE,IAAI;oBACjB,WAAW,EAAE,0BAA0B;oBACvC,UAAU,EAAE,yBAAyB;oBACrC,WAAW,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE;iBACxC;gBACD,EAAE,EAAE,SAAS;aACd,CAAC;YAEF,WAAW,GAAG;gBACZ,IAAI,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,GAAG,OAAO,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;aAChE,CAAC;YACF,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,GAAG,WAAW,CAAC;QACxD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;YACjD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,yBAAyB,CAAC,GAAG,CAAC,CAAC;YAClF,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;YACzD,MAAM,YAAY,GAAG;gBACnB,IAAI,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,GAAG,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;aACtE,CAAC;YAEF,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC;YACvD,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,yBAAyB,CAAC,GAAG,CAAC,CAAC;gBACrE,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACpC,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;YACtE,OAAO,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC;YAE3B,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,yBAAyB,CAAC,GAAG,CAAC,CAAC;gBACrE,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;YACnE,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;YACrE,gBAAM,CAAC,OAAO,GAAG,SAAS,CAAC;YAE3B,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,yBAAyB,CAAC,GAAG,CAAC,CAAC;gBACrE,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"simplex.test.js","sourceRoot":"","sources":["../../../../test/integration/externalservices/simplex.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"thorswap.test.d.ts","sourceRoot":"","sources":["../../../../test/integration/externalservices/thorswap.test.ts"],"names":[],"mappings":"AAGA,OAAO,sBAAsB,CAAC"}
1
+ {"version":3,"file":"thorswap.test.d.ts","sourceRoot":"","sources":["../../../../test/integration/externalservices/thorswap.test.ts"],"names":[],"mappings":"AAIA,OAAO,sBAAsB,CAAC"}
@@ -37,18 +37,22 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  const chai = __importStar(require("chai"));
40
+ const sinon = __importStar(require("sinon"));
40
41
  require("chai/register-should");
41
42
  const util_1 = __importDefault(require("util"));
42
43
  const server_1 = require("../../../src/lib/server");
43
44
  const TestData = __importStar(require("../../testdata"));
44
45
  const helpers_1 = __importDefault(require("../helpers"));
45
46
  const config_1 = __importDefault(require("../../../src/config"));
47
+ const logger_1 = __importDefault(require("../../../src/lib/logger"));
46
48
  const should = chai.should();
47
49
  describe('Thorswap integration', () => {
50
+ const sandbox = sinon.createSandbox();
48
51
  let server;
49
52
  let wallet;
50
53
  let fakeRequest;
51
54
  let req;
55
+ let loggerError;
52
56
  before(async () => {
53
57
  await helpers_1.default.before();
54
58
  });
@@ -81,7 +85,7 @@ describe('Thorswap integration', () => {
81
85
  },
82
86
  };
83
87
  fakeRequest = {
84
- get: (_url, _opts, _cb) => { return _cb(null, { data: 'data' }); },
88
+ get: (_url, _opts, _cb) => { return _cb(null, { body: 'data' }); },
85
89
  post: (_url, _opts, _cb) => { return _cb(null, { body: 'data' }); },
86
90
  };
87
91
  await helpers_1.default.beforeEach();
@@ -95,6 +99,11 @@ describe('Thorswap integration', () => {
95
99
  clientVersion: 'bwc-2.0.0',
96
100
  walletId: '123',
97
101
  }));
102
+ sandbox.stub(logger_1.default, 'warn');
103
+ loggerError = sandbox.stub(logger_1.default, 'error');
104
+ });
105
+ afterEach(() => {
106
+ sandbox.restore();
98
107
  });
99
108
  after(async () => {
100
109
  await helpers_1.default.after();
@@ -134,7 +143,22 @@ describe('Thorswap integration', () => {
134
143
  should.fail('should have thrown');
135
144
  }
136
145
  catch (err) {
137
- err.message.should.equal('Error');
146
+ loggerError.callCount.should.equal(1);
147
+ loggerError.args[0][0].should.contain('Thorswap request failed with error (');
148
+ err.message.should.equal('Failed to get Thorswap supported chains');
149
+ }
150
+ });
151
+ it('should return error and not leak the response if body is empty', async () => {
152
+ const fakeRequest2 = {
153
+ get: (_url, opts, cb) => { return cb(null, { statusCode: 200, body: undefined, request: { headers: opts.headers } }); },
154
+ };
155
+ server.externalServices.thorswap.request = fakeRequest2;
156
+ try {
157
+ await server.externalServices.thorswap.thorswapGetSupportedChains(req);
158
+ should.fail('should have thrown');
159
+ }
160
+ catch (err) {
161
+ err.message.should.equal('Thorswap did not return supported chains');
138
162
  }
139
163
  });
140
164
  it('should return error if Thorswap is commented in config', async () => {
@@ -189,7 +213,22 @@ describe('Thorswap integration', () => {
189
213
  should.fail('should have thrown');
190
214
  }
191
215
  catch (err) {
192
- err.message.should.equal('Error');
216
+ loggerError.callCount.should.equal(1);
217
+ loggerError.args[0][0].should.contain('Thorswap request failed with error (');
218
+ err.message.should.equal('Failed to get Thorswap supported currencies');
219
+ }
220
+ });
221
+ it('should return error and not leak the response if body is empty', async () => {
222
+ const fakeRequest2 = {
223
+ get: (_url, opts, cb) => { return cb(null, { statusCode: 200, body: undefined, request: { headers: opts.headers } }); },
224
+ };
225
+ server.externalServices.thorswap.request = fakeRequest2;
226
+ try {
227
+ await server.externalServices.thorswap.thorswapGetCryptoCurrencies(req);
228
+ should.fail('should have thrown');
229
+ }
230
+ catch (err) {
231
+ err.message.should.equal('Thorswap did not return supported currencies');
193
232
  }
194
233
  });
195
234
  it('should return error if Thorswap is commented in config', async () => {
@@ -241,7 +280,23 @@ describe('Thorswap integration', () => {
241
280
  should.fail('should have thrown');
242
281
  }
243
282
  catch (err) {
244
- err.message.should.equal('Error');
283
+ loggerError.callCount.should.equal(1);
284
+ loggerError.args[0][0].should.contain('Thorswap request failed with error (');
285
+ err.message.should.equal('Failed to get Thorswap swap quote');
286
+ }
287
+ });
288
+ it('should return error and not leak the response if body is empty', async () => {
289
+ req.body.sellAmount = '1.123';
290
+ const fakeRequest2 = {
291
+ get: (_url, opts, cb) => { return cb(null, { statusCode: 200, body: undefined, request: { headers: opts.headers } }); },
292
+ };
293
+ server.externalServices.thorswap.request = fakeRequest2;
294
+ try {
295
+ await server.externalServices.thorswap.thorswapGetSwapQuote(req);
296
+ should.fail('should have thrown');
297
+ }
298
+ catch (err) {
299
+ err.message.should.equal('Thorswap did not return a swap quote');
245
300
  }
246
301
  });
247
302
  it('should return error if Thorswap is commented in config', async () => {
@@ -298,7 +353,23 @@ describe('Thorswap integration', () => {
298
353
  should.fail('should have thrown');
299
354
  }
300
355
  catch (err) {
301
- err.message.should.equal('Error');
356
+ loggerError.callCount.should.equal(1);
357
+ loggerError.args[0][0].should.contain('Thorswap request failed with error (');
358
+ err.message.should.equal('Failed to get Thorswap swap transaction');
359
+ }
360
+ });
361
+ it('should return error and not leak the response if body is empty', async () => {
362
+ req.body.txn = 'txn1';
363
+ const fakeRequest2 = {
364
+ post: (_url, opts, cb) => { return cb(null, { statusCode: 200, body: undefined, request: { headers: opts.headers } }); },
365
+ };
366
+ server.externalServices.thorswap.request = fakeRequest2;
367
+ try {
368
+ await server.externalServices.thorswap.thorswapGetSwapTx(req);
369
+ should.fail('should have thrown');
370
+ }
371
+ catch (err) {
372
+ err.message.should.equal('Thorswap did not return a swap transaction');
302
373
  }
303
374
  });
304
375
  it('should return error if Thorswap is commented in config', async () => {
@@ -1 +1 @@
1
- {"version":3,"file":"thorswap.test.js","sourceRoot":"","sources":["../../../../test/integration/externalservices/thorswap.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"thorswap.test.js","sourceRoot":"","sources":["../../../../test/integration/externalservices/thorswap.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"transak.test.d.ts","sourceRoot":"","sources":["../../../../test/integration/externalservices/transak.test.ts"],"names":[],"mappings":"AAGA,OAAO,sBAAsB,CAAC"}
1
+ {"version":3,"file":"transak.test.d.ts","sourceRoot":"","sources":["../../../../test/integration/externalservices/transak.test.ts"],"names":[],"mappings":"AAIA,OAAO,sBAAsB,CAAC"}
@@ -37,18 +37,22 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  const chai = __importStar(require("chai"));
40
+ const sinon = __importStar(require("sinon"));
40
41
  require("chai/register-should");
41
42
  const util_1 = __importDefault(require("util"));
42
43
  const server_1 = require("../../../src/lib/server");
43
44
  const TestData = __importStar(require("../../testdata"));
44
45
  const helpers_1 = __importDefault(require("../helpers"));
45
46
  const config_1 = __importDefault(require("../../../src/config"));
47
+ const logger_1 = __importDefault(require("../../../src/lib/logger"));
46
48
  const should = chai.should();
47
49
  describe('Transak integration', () => {
50
+ const sandbox = sinon.createSandbox();
48
51
  let server;
49
52
  let wallet;
50
53
  let fakeRequest;
51
54
  let req;
55
+ let loggerError;
52
56
  before(async () => {
53
57
  await helpers_1.default.before();
54
58
  });
@@ -94,6 +98,11 @@ describe('Transak integration', () => {
94
98
  clientVersion: 'bwc-2.0.0',
95
99
  walletId: '123',
96
100
  }));
101
+ sandbox.stub(logger_1.default, 'warn');
102
+ loggerError = sandbox.stub(logger_1.default, 'error');
103
+ });
104
+ afterEach(() => {
105
+ sandbox.restore();
97
106
  });
98
107
  after(async () => {
99
108
  await helpers_1.default.after();
@@ -140,7 +149,22 @@ describe('Transak integration', () => {
140
149
  should.fail('should have thrown');
141
150
  }
142
151
  catch (err) {
143
- err.message.should.equal('Error');
152
+ loggerError.callCount.should.equal(1);
153
+ loggerError.args[0][0].should.contain('Transak request failed with error (');
154
+ err.message.should.equal('Failed to get Transak access token');
155
+ }
156
+ });
157
+ it('should return error and not leak the response if body is empty', async () => {
158
+ const fakeRequest2 = {
159
+ post: (_url, opts, cb) => { return cb(null, { statusCode: 200, body: undefined, request: { headers: opts.headers } }); },
160
+ };
161
+ server.externalServices.transak.request = fakeRequest2;
162
+ try {
163
+ await server.externalServices.transak.transakGetAccessToken(req);
164
+ should.fail('should have thrown');
165
+ }
166
+ catch (err) {
167
+ err.message.should.equal('Transak did not return an access token');
144
168
  }
145
169
  });
146
170
  it('should return error if transak is commented in config', async () => {
@@ -183,7 +207,22 @@ describe('Transak integration', () => {
183
207
  should.fail('should have thrown');
184
208
  }
185
209
  catch (err) {
186
- err.message.should.equal('Error');
210
+ loggerError.callCount.should.equal(1);
211
+ loggerError.args[0][0].should.contain('Transak request failed with error (');
212
+ err.message.should.equal('Failed to get Transak supported currencies');
213
+ }
214
+ });
215
+ it('should return error and not leak the response if body is empty', async () => {
216
+ const fakeRequest2 = {
217
+ get: (_url, opts, cb) => { return cb(null, { statusCode: 200, body: undefined, request: { headers: opts.headers } }); },
218
+ };
219
+ server.externalServices.transak.request = fakeRequest2;
220
+ try {
221
+ await server.externalServices.transak.transakGetCryptoCurrencies(req);
222
+ should.fail('should have thrown');
223
+ }
224
+ catch (err) {
225
+ err.message.should.equal('Transak did not return supported currencies');
187
226
  }
188
227
  });
189
228
  it('should return error if transak is commented in config', async () => {
@@ -226,7 +265,22 @@ describe('Transak integration', () => {
226
265
  should.fail('should have thrown');
227
266
  }
228
267
  catch (err) {
229
- err.message.should.equal('Error');
268
+ loggerError.callCount.should.equal(1);
269
+ loggerError.args[0][0].should.contain('Transak request failed with error (');
270
+ err.message.should.equal('Failed to get Transak supported fiat currencies');
271
+ }
272
+ });
273
+ it('should return error and not leak the response if body is empty', async () => {
274
+ const fakeRequest2 = {
275
+ get: (_url, opts, cb) => { return cb(null, { statusCode: 200, body: undefined, request: { headers: opts.headers } }); },
276
+ };
277
+ server.externalServices.transak.request = fakeRequest2;
278
+ try {
279
+ await server.externalServices.transak.transakGetFiatCurrencies(req);
280
+ should.fail('should have thrown');
281
+ }
282
+ catch (err) {
283
+ err.message.should.equal('Transak did not return supported fiat currencies');
230
284
  }
231
285
  });
232
286
  it('should return error if transak is commented in config', async () => {
@@ -273,7 +327,22 @@ describe('Transak integration', () => {
273
327
  should.fail('should have thrown');
274
328
  }
275
329
  catch (err) {
276
- err.message.should.equal('Error');
330
+ loggerError.callCount.should.equal(1);
331
+ loggerError.args[0][0].should.contain('Transak request failed with error (');
332
+ err.message.should.equal('Failed to get Transak quote');
333
+ }
334
+ });
335
+ it('should return error and not leak the response if body is empty', async () => {
336
+ const fakeRequest2 = {
337
+ get: (_url, opts, cb) => { return cb(null, { statusCode: 200, body: undefined, request: { headers: opts.headers } }); },
338
+ };
339
+ server.externalServices.transak.request = fakeRequest2;
340
+ try {
341
+ await server.externalServices.transak.transakGetQuote(req);
342
+ should.fail('should have thrown');
343
+ }
344
+ catch (err) {
345
+ err.message.should.equal('Transak did not return a quote');
277
346
  }
278
347
  });
279
348
  it('should return error if there is some missing arguments', async () => {
@@ -423,7 +492,9 @@ describe('Transak integration', () => {
423
492
  should.fail('should have thrown');
424
493
  }
425
494
  catch (err) {
426
- err.message.should.equal('Error');
495
+ loggerError.callCount.should.equal(1);
496
+ loggerError.args[0][0].should.contain('Transak request failed with error (');
497
+ err.message.should.equal('Failed to get Transak signed payment URL');
427
498
  }
428
499
  });
429
500
  it('should return error if transak is commented in config', async () => {
@@ -468,7 +539,23 @@ describe('Transak integration', () => {
468
539
  should.fail('should have thrown');
469
540
  }
470
541
  catch (err) {
471
- err.message.should.equal('Error');
542
+ loggerError.callCount.should.equal(1);
543
+ loggerError.args[0][0].should.contain('Transak request failed with error (');
544
+ err.message.should.equal('Failed to get Transak order details');
545
+ }
546
+ ;
547
+ });
548
+ it('should return error and not leak the response if body is empty', async () => {
549
+ const fakeRequest2 = {
550
+ get: (_url, opts, cb) => { return cb(null, { statusCode: 200, body: undefined, request: { headers: opts.headers } }); },
551
+ };
552
+ server.externalServices.transak.request = fakeRequest2;
553
+ try {
554
+ await server.externalServices.transak.transakGetOrderDetails(req);
555
+ should.fail('should have thrown');
556
+ }
557
+ catch (err) {
558
+ err.message.should.equal('Transak did not return order details');
472
559
  }
473
560
  ;
474
561
  });