@bsv/wallet-toolbox 1.3.25 → 1.3.26

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 (45) hide show
  1. package/mobile/out/src/sdk/WalletServices.interfaces.d.ts +100 -0
  2. package/mobile/out/src/sdk/WalletServices.interfaces.d.ts.map +1 -1
  3. package/mobile/out/src/services/ServiceCollection.d.ts +28 -18
  4. package/mobile/out/src/services/ServiceCollection.d.ts.map +1 -1
  5. package/mobile/out/src/services/ServiceCollection.js +90 -38
  6. package/mobile/out/src/services/ServiceCollection.js.map +1 -1
  7. package/mobile/out/src/services/Services.d.ts +2 -9
  8. package/mobile/out/src/services/Services.d.ts.map +1 -1
  9. package/mobile/out/src/services/Services.js +12 -9
  10. package/mobile/out/src/services/Services.js.map +1 -1
  11. package/mobile/out/src/storage/StorageProvider.d.ts +6 -1
  12. package/mobile/out/src/storage/StorageProvider.d.ts.map +1 -1
  13. package/mobile/out/src/storage/StorageProvider.js.map +1 -1
  14. package/mobile/package-lock.json +6 -6
  15. package/mobile/package.json +2 -2
  16. package/out/src/sdk/WalletServices.interfaces.d.ts +100 -0
  17. package/out/src/sdk/WalletServices.interfaces.d.ts.map +1 -1
  18. package/out/src/services/ServiceCollection.d.ts +28 -18
  19. package/out/src/services/ServiceCollection.d.ts.map +1 -1
  20. package/out/src/services/ServiceCollection.js +90 -38
  21. package/out/src/services/ServiceCollection.js.map +1 -1
  22. package/out/src/services/Services.d.ts +2 -9
  23. package/out/src/services/Services.d.ts.map +1 -1
  24. package/out/src/services/Services.js +12 -9
  25. package/out/src/services/Services.js.map +1 -1
  26. package/out/src/storage/StorageKnex.d.ts +2 -2
  27. package/out/src/storage/StorageKnex.d.ts.map +1 -1
  28. package/out/src/storage/StorageKnex.js +5 -0
  29. package/out/src/storage/StorageKnex.js.map +1 -1
  30. package/out/src/storage/StorageProvider.d.ts +6 -1
  31. package/out/src/storage/StorageProvider.d.ts.map +1 -1
  32. package/out/src/storage/StorageProvider.js.map +1 -1
  33. package/out/src/storage/schema/entities/__tests/ProvenTxTests.test.js +11 -1
  34. package/out/src/storage/schema/entities/__tests/ProvenTxTests.test.js.map +1 -1
  35. package/out/test/Wallet/local/localWallet.man.test.js +3 -1
  36. package/out/test/Wallet/local/localWallet.man.test.js.map +1 -1
  37. package/out/tsconfig.all.tsbuildinfo +1 -1
  38. package/package.json +2 -2
  39. package/src/sdk/WalletServices.interfaces.ts +103 -0
  40. package/src/services/ServiceCollection.ts +114 -54
  41. package/src/services/Services.ts +15 -11
  42. package/src/storage/StorageKnex.ts +10 -3
  43. package/src/storage/StorageProvider.ts +7 -1
  44. package/src/storage/schema/entities/__tests/ProvenTxTests.test.ts +12 -1
  45. package/test/Wallet/local/localWallet.man.test.ts +3 -2
@@ -147,6 +147,11 @@ export interface WalletServices {
147
147
  * @param txid
148
148
  */
149
149
  getBeefForTxid(txid: string): Promise<Beef>;
150
+ /**
151
+ * @param reset if true, ends current interval and starts a new one.
152
+ * @returns a history of service calls made to the configured services.
153
+ */
154
+ getServicesCallHistory(reset?: boolean): ServicesCallHistory;
150
155
  }
151
156
  export type ScriptHashFormat = 'hashLE' | 'hashBE' | 'script';
152
157
  export type GetUtxoStatusOutputFormat = 'hashLE' | 'hashBE' | 'script';
@@ -429,4 +434,99 @@ export type GetRawTxService = (txid: string, chain: Chain) => Promise<GetRawTxRe
429
434
  export type PostTxsService = (beef: Beef, txids: string[], services: WalletServices) => Promise<PostTxsResult>;
430
435
  export type PostBeefService = (beef: Beef, txids: string[]) => Promise<PostBeefResult>;
431
436
  export type UpdateFiatExchangeRateService = (targetCurrencies: string[], options: WalletServicesOptions) => Promise<FiatExchangeRates>;
437
+ /**
438
+ * Type for the service call history returned by Services.getServicesCallHistory.
439
+ */
440
+ export type ServicesCallHistory = {
441
+ version: number;
442
+ getMerklePath: ServiceCallHistory;
443
+ getRawTx: ServiceCallHistory;
444
+ postBeef: ServiceCallHistory;
445
+ getUtxoStatus: ServiceCallHistory;
446
+ getStatusForTxids: ServiceCallHistory;
447
+ getScriptHashHistory: ServiceCallHistory;
448
+ updateFiatExchangeRates: ServiceCallHistory;
449
+ };
450
+ /**
451
+ * Minimum data tracked for each service call.
452
+ */
453
+ export interface ServiceCall {
454
+ /**
455
+ * string value must be Date's toISOString format.
456
+ */
457
+ when: Date | string;
458
+ msecs: number;
459
+ /**
460
+ * true iff service provider successfully processed the request
461
+ * false iff service provider failed to process the request which includes thrown errors.
462
+ */
463
+ success: boolean;
464
+ /**
465
+ * Simple text summary of result. e.g. `not a valid utxo` or `valid utxo`
466
+ */
467
+ result?: string;
468
+ /**
469
+ * Error code and message iff success is false and a exception was thrown.
470
+ */
471
+ error?: {
472
+ message: string;
473
+ code: string;
474
+ };
475
+ }
476
+ /**
477
+ * Counts of service calls over a time interval.
478
+ */
479
+ export interface ServiceCallHistoryCounts {
480
+ /**
481
+ * count of calls returning success true.
482
+ */
483
+ success: number;
484
+ /**
485
+ * count of calls returning success false.
486
+ */
487
+ failure: number;
488
+ /**
489
+ * of failures (success false), count of calls with valid error code and message.
490
+ */
491
+ error: number;
492
+ /**
493
+ * Counts are of calls over interval `since` to `until`.
494
+ * string value must be Date's toISOString format.
495
+ */
496
+ since: Date | string;
497
+ /**
498
+ * Counts are of calls over interval `since` to `until`.
499
+ * string value must be Date's toISOString format.
500
+ */
501
+ until: Date | string;
502
+ }
503
+ /**
504
+ * History of service calls for a single service, single provider.
505
+ */
506
+ export interface ProviderCallHistory {
507
+ providerName: string;
508
+ serviceName: string;
509
+ /**
510
+ * Most recent service calls.
511
+ * Array length is limited by Services configuration.
512
+ */
513
+ calls: ServiceCall[];
514
+ /**
515
+ * Counts since creation of Services instance.
516
+ */
517
+ totalCounts: ServiceCallHistoryCounts;
518
+ /**
519
+ * Entry [0] is always the current interval being extended by new calls.
520
+ * when `getServiceCallHistory` with `reset` true is called, a new interval with zero counts is added to the start of array.
521
+ * Array length is limited by Services configuration.
522
+ */
523
+ resetCounts: ServiceCallHistoryCounts[];
524
+ }
525
+ /**
526
+ * History of service calls for a single service, all providers.
527
+ */
528
+ export interface ServiceCallHistory {
529
+ serviceName: string;
530
+ historyByProvider: Record<string, ProviderCallHistory>;
531
+ }
432
532
  //# sourceMappingURL=WalletServices.interfaces.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WalletServices.interfaces.d.ts","sourceRoot":"","sources":["../../../../src/sdk/WalletServices.interfaces.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WalletServices.interfaces.d.ts","sourceRoot":"","sources":["../../../../src/sdk/WalletServices.interfaces.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,18 @@
1
1
  import { WalletError } from "../sdk/WalletError";
2
+ import { ProviderCallHistory, ServiceCallHistory } from "../sdk/WalletServices.interfaces";
2
3
  export declare class ServiceCollection<T> {
3
- since: Date;
4
+ serviceName: string;
4
5
  services: {
5
6
  name: string;
6
7
  service: T;
7
8
  }[];
8
9
  _index: number;
9
- _callHistory: Record<string, ServiceCallHistory>;
10
- constructor(services?: {
10
+ /**
11
+ * Start of currentCounts interval. Initially instance construction time.
12
+ */
13
+ readonly since: Date;
14
+ _historyByProvider: Record<string, ProviderCallHistory>;
15
+ constructor(serviceName: string, services?: {
11
16
  name: string;
12
17
  service: T;
13
18
  }[]);
@@ -26,37 +31,42 @@ export declare class ServiceCollection<T> {
26
31
  reset(): void;
27
32
  next(): number;
28
33
  clone(): ServiceCollection<T>;
29
- _addServiceCall(name: string, call: ServiceCall): ServiceCallHistory;
34
+ _addServiceCall(providerName: string, call: ServiceCall): ProviderCallHistory;
35
+ getDuration(since: Date | string): number;
30
36
  addServiceCallSuccess(stc: ServiceToCall<T>, result?: string): void;
31
37
  addServiceCallFailure(stc: ServiceToCall<T>, result?: string): void;
32
38
  addServiceCallError(stc: ServiceToCall<T>, error: WalletError): void;
33
39
  /**
34
40
  * @returns A copy of current service call history
35
41
  */
36
- getServiceCallHistory(reset?: boolean): Record<string, ServiceCallHistory>;
42
+ getServiceCallHistory(reset?: boolean): ServiceCallHistory;
37
43
  }
38
44
  export interface ServiceCall {
39
- name: string;
40
- when: Date;
41
- durationMsecs: number;
45
+ /**
46
+ * string value must be Date's toISOString format.
47
+ */
48
+ when: Date | string;
49
+ msecs: number;
50
+ /**
51
+ * true iff service provider successfully processed the request
52
+ * false iff service provider failed to process the request which includes thrown errors.
53
+ */
42
54
  success: boolean;
55
+ /**
56
+ * Simple text summary of result. e.g. `not a valid utxo` or `valid utxo`
57
+ */
43
58
  result?: string;
59
+ /**
60
+ * Error code and message iff success is false and a exception was thrown.
61
+ */
44
62
  error?: {
45
63
  message: string;
46
64
  code: string;
47
65
  };
48
66
  }
49
- export interface ServiceCallHistory {
50
- name: string;
51
- calls: ServiceCall[];
52
- count: number;
53
- countSuccess: number;
54
- countFailure: number;
55
- countError: number;
56
- since: Date;
57
- }
58
67
  export interface ServiceToCall<T> {
59
- name: string;
68
+ providerName: string;
69
+ serviceName: string;
60
70
  service: T;
61
71
  call: ServiceCall;
62
72
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ServiceCollection.d.ts","sourceRoot":"","sources":["../../../../src/services/ServiceCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,qBAAa,iBAAiB,CAAC,CAAC;IAC9B,KAAK,EAAE,IAAI,CAAA;IACX,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,CAAC,CAAA;KAAE,EAAE,CAAA;IACxC,MAAM,EAAE,MAAM,CAAA;IAEd,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAK;gBAEzC,QAAQ,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,CAAC,CAAA;KAAE,EAAE;IAMrD,GAAG,CAAC,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,CAAC,CAAA;KAAE,GAAG,iBAAiB,CAAC,CAAC,CAAC;IAK1D,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI1B,IAAI,IAAI,WAEP;IAED,IAAI,OAAO,MAEV;IAED,IAAI,aAAa,IAAI,aAAa,CAAC,CAAC,CAAC,CAMpC;IAED,IAAI,iBAAiB,IAAI,aAAa,CAAC,CAAC,CAAC,EAAE,CAO1C;IAED,IAAI,WAAW,QAEd;IAED,IAAI,KAAK,WAER;IACD,IAAI,KAAK,WAER;IAED,KAAK;IAIL,IAAI,IAAI,MAAM;IAKd,KAAK,IAAI,iBAAiB,CAAC,CAAC,CAAC;IAI7B,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,kBAAkB;IAYpE,qBAAqB,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IASnE,qBAAqB,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IASnE,mBAAmB,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI;IASpE;;OAEG;IACH,qBAAqB,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC;CA8B3E;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,IAAI,CAAA;IACV,aAAa,EAAE,MAAM,CAAA;IACrB,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAA;CAC1C;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,WAAW,EAAE,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,IAAI,CAAA;CACZ;AAED,MAAM,WAAW,aAAa,CAAC,CAAC;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,CAAC,CAAA;IACV,IAAI,EAAE,WAAW,CAAA;CAClB"}
1
+ {"version":3,"file":"ServiceCollection.d.ts","sourceRoot":"","sources":["../../../../src/services/ServiceCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAK3F,qBAAa,iBAAiB,CAAC,CAAC;IAUX,WAAW,EAAE,MAAM;IATtC,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,CAAC,CAAA;KAAE,EAAE,CAAA;IACxC,MAAM,EAAE,MAAM,CAAA;IAEd;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAA;IACpB,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAK;gBAEzC,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,CAAC,CAAA;KAAE,EAAE;IAMjF,GAAG,CAAC,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,CAAC,CAAA;KAAE,GAAG,iBAAiB,CAAC,CAAC,CAAC;IAK1D,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI1B,IAAI,IAAI,WAEP;IAED,IAAI,OAAO,MAEV;IAED,IAAI,aAAa,IAAI,aAAa,CAAC,CAAC,CAAC,CAMpC;IAED,IAAI,iBAAiB,IAAI,aAAa,CAAC,CAAC,CAAC,EAAE,CAO1C;IAED,IAAI,WAAW,QAEd;IAED,IAAI,KAAK,WAER;IACD,IAAI,KAAK,WAER;IAED,KAAK;IAIL,IAAI,IAAI,MAAM;IAKd,KAAK,IAAI,iBAAiB,CAAC,CAAC,CAAC;IAI7B,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,mBAAmB;IAoB7E,WAAW,CAAC,KAAK,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM;IAMzC,qBAAqB,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAWnE,qBAAqB,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAWnE,mBAAmB,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI;IAapE;;OAEG;IACH,qBAAqB,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,kBAAkB;CA0D3D;AAED,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,IAAI,EAAE,IAAI,GAAG,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb;;;OAGG;IACH,OAAO,EAAE,OAAO,CAAA;IAChB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IACf;;OAEG;IACH,KAAK,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAA;CAC1C;AAED,MAAM,WAAW,aAAa,CAAC,CAAC;IAC9B,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,CAAC,CAAA;IACV,IAAI,EAAE,WAAW,CAAA;CAClB"}
@@ -1,9 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ServiceCollection = void 0;
4
+ const MAX_RESET_COUNTS = 32;
5
+ const MAX_CALL_HISTORY = 32;
4
6
  class ServiceCollection {
5
- constructor(services) {
6
- this._callHistory = {};
7
+ constructor(serviceName, services) {
8
+ this.serviceName = serviceName;
9
+ this._historyByProvider = {};
7
10
  this.services = services || [];
8
11
  this._index = 0;
9
12
  this.since = new Date();
@@ -25,8 +28,8 @@ class ServiceCollection {
25
28
  const i = this._index;
26
29
  const name = this.services[i].name;
27
30
  const service = this.services[i].service;
28
- const call = { name, when: new Date(), durationMsecs: 0, success: false, result: undefined, error: undefined };
29
- return { name, service, call };
31
+ const call = { name, when: new Date(), msecs: 0, success: false, result: undefined, error: undefined };
32
+ return { serviceName: this.serviceName, providerName: name, service, call };
30
33
  }
31
34
  get allServicesToCall() {
32
35
  const all = [];
@@ -53,75 +56,124 @@ class ServiceCollection {
53
56
  return this._index;
54
57
  }
55
58
  clone() {
56
- return new ServiceCollection([...this.services]);
59
+ return new ServiceCollection(this.serviceName, [...this.services]);
57
60
  }
58
- _addServiceCall(name, call) {
59
- let h = this._callHistory[name];
61
+ _addServiceCall(providerName, call) {
62
+ const now = new Date();
63
+ let h = this._historyByProvider[providerName];
60
64
  if (!h) {
61
- h = { name, calls: [], count: 0, countError: 0, countFailure: 0, countSuccess: 0, since: this.since };
62
- this._callHistory[name] = h;
65
+ h = {
66
+ serviceName: this.serviceName,
67
+ providerName: providerName,
68
+ calls: [],
69
+ totalCounts: { success: 0, failure: 0, error: 0, since: this.since, until: now },
70
+ resetCounts: [{ success: 0, failure: 0, error: 0, since: this.since, until: now }]
71
+ };
72
+ this._historyByProvider[providerName] = h;
63
73
  }
64
- h.calls.push(call);
65
- h.count++;
66
- h.calls = h.calls.slice(-32);
74
+ h.calls.unshift(call);
75
+ h.calls = h.calls.slice(0, MAX_CALL_HISTORY);
76
+ h.totalCounts.until = now;
77
+ h.resetCounts[0].until = now;
67
78
  return h;
68
79
  }
80
+ getDuration(since) {
81
+ const now = new Date();
82
+ if (typeof since === 'string')
83
+ since = new Date(since);
84
+ return now.getTime() - since.getTime();
85
+ }
69
86
  addServiceCallSuccess(stc, result) {
70
87
  const call = stc.call;
71
88
  call.success = true;
72
89
  call.result = result;
73
90
  call.error = undefined;
74
- call.durationMsecs = new Date().getTime() - call.when.getTime();
75
- this._addServiceCall(this.name, call).countSuccess++;
91
+ call.msecs = this.getDuration(call.when);
92
+ const h = this._addServiceCall(stc.providerName, call);
93
+ h.totalCounts.success++;
94
+ h.resetCounts[0].success++;
76
95
  }
77
96
  addServiceCallFailure(stc, result) {
78
97
  const call = stc.call;
79
98
  call.success = false;
80
99
  call.result = result;
81
100
  call.error = undefined;
82
- call.durationMsecs = new Date().getTime() - call.when.getTime();
83
- this._addServiceCall(this.name, call).countFailure++;
101
+ call.msecs = this.getDuration(call.when);
102
+ const h = this._addServiceCall(this.name, call);
103
+ h.totalCounts.failure++;
104
+ h.resetCounts[0].failure++;
84
105
  }
85
106
  addServiceCallError(stc, error) {
86
107
  const call = stc.call;
87
108
  call.success = false;
88
109
  call.result = undefined;
89
110
  call.error = error;
90
- call.durationMsecs = new Date().getTime() - call.when.getTime();
91
- this._addServiceCall(this.name, call).countError++;
111
+ call.msecs = this.getDuration(call.when);
112
+ const h = this._addServiceCall(this.name, call);
113
+ h.totalCounts.failure++;
114
+ h.totalCounts.error++;
115
+ h.resetCounts[0].failure++;
116
+ h.resetCounts[0].error++;
92
117
  }
93
118
  /**
94
119
  * @returns A copy of current service call history
95
120
  */
96
121
  getServiceCallHistory(reset) {
97
- const histories = {};
98
- for (const name of Object.keys(this._callHistory)) {
99
- const h = this._callHistory[name];
100
- histories[name] = {
101
- name: h.name,
102
- count: h.count,
103
- countError: h.countError,
104
- countFailure: h.countFailure,
105
- countSuccess: h.countSuccess,
106
- since: h.since,
122
+ const now = new Date();
123
+ const history = { serviceName: this.serviceName, historyByProvider: {} };
124
+ for (const name of Object.keys(this._historyByProvider)) {
125
+ const h = this._historyByProvider[name];
126
+ const c = {
127
+ serviceName: h.serviceName,
128
+ providerName: h.providerName,
107
129
  calls: h.calls.map(c => ({
108
- name: c.name,
109
- when: c.when,
110
- durationMsecs: c.durationMsecs,
130
+ when: dateToString(c.when),
131
+ msecs: c.msecs,
111
132
  success: c.success,
112
133
  result: c.result,
113
134
  error: c.error ? { message: c.error.message, code: c.error.code } : undefined
114
- }))
135
+ })),
136
+ totalCounts: {
137
+ success: h.totalCounts.success,
138
+ failure: h.totalCounts.failure,
139
+ error: h.totalCounts.error,
140
+ since: dateToString(h.totalCounts.since),
141
+ until: dateToString(h.totalCounts.until)
142
+ },
143
+ resetCounts: []
115
144
  };
145
+ for (let i = 0; i < h.resetCounts.length; i++) {
146
+ const r = h.resetCounts[i];
147
+ c.resetCounts.push({
148
+ success: r.success,
149
+ failure: r.failure,
150
+ error: r.error,
151
+ since: dateToString(r.since),
152
+ until: dateToString(r.until)
153
+ });
154
+ }
155
+ history.historyByProvider[name] = c;
116
156
  if (reset) {
117
- h.count = 0;
118
- h.countError = 0;
119
- h.countFailure = 0;
120
- h.countSuccess = 0;
121
- h.since = new Date();
157
+ // Make sure intervals are continuous.
158
+ h.resetCounts[0].until = now;
159
+ // insert a new resetCounts interval
160
+ h.resetCounts.unshift({
161
+ success: 0,
162
+ failure: 0,
163
+ error: 0,
164
+ // start of new interval
165
+ since: now,
166
+ // end of new interval, gets bumped with each new call added
167
+ until: now
168
+ });
169
+ // limit history to most recent intervals
170
+ h.resetCounts = h.resetCounts.slice(0, MAX_CALL_HISTORY);
122
171
  }
123
172
  }
124
- return histories;
173
+ return history;
174
+ function dateToString(d) {
175
+ return typeof d === 'string' ? d : d.toISOString();
176
+ }
125
177
  }
126
178
  }
127
179
  exports.ServiceCollection = ServiceCollection;
@@ -1 +1 @@
1
- {"version":3,"file":"ServiceCollection.js","sourceRoot":"","sources":["../../../../src/services/ServiceCollection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ServiceCollection.js","sourceRoot":"","sources":["../../../../src/services/ServiceCollection.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ import { ServiceCollection } from './ServiceCollection';
4
4
  import { WhatsOnChain } from './providers/WhatsOnChain';
5
5
  import { ARC } from './providers/ARC';
6
6
  import { Bitails } from './providers/Bitails';
7
+ import { ServicesCallHistory } from '../sdk/WalletServices.interfaces';
7
8
  export declare class Services implements sdk.WalletServices {
8
9
  static createDefaultOptions(chain: sdk.Chain): sdk.WalletServicesOptions;
9
10
  options: sdk.WalletServicesOptions;
@@ -20,15 +21,7 @@ export declare class Services implements sdk.WalletServices {
20
21
  updateFiatExchangeRateServices: ServiceCollection<sdk.UpdateFiatExchangeRateService>;
21
22
  chain: sdk.Chain;
22
23
  constructor(optionsOrChain: sdk.Chain | sdk.WalletServicesOptions);
23
- getServicesCallHistory(reset?: boolean): {
24
- version: number;
25
- getMerklePath: Record<string, import("./ServiceCollection").ServiceCallHistory>;
26
- getRawTx: Record<string, import("./ServiceCollection").ServiceCallHistory>;
27
- postBeef: Record<string, import("./ServiceCollection").ServiceCallHistory>;
28
- getUtxoStatus: Record<string, import("./ServiceCollection").ServiceCallHistory>;
29
- getStatusForTxids: Record<string, import("./ServiceCollection").ServiceCallHistory>;
30
- getScriptHashHistory: Record<string, import("./ServiceCollection").ServiceCallHistory>;
31
- };
24
+ getServicesCallHistory(reset?: boolean): ServicesCallHistory;
32
25
  getChainTracker(): Promise<ChainTracker>;
33
26
  getBsvExchangeRate(): Promise<number>;
34
27
  getFiatExchangeRate(currency: 'USD' | 'GBP' | 'EUR', base?: 'USD' | 'GBP' | 'EUR'): Promise<number>;
@@ -1 +1 @@
1
- {"version":3,"file":"Services.d.ts","sourceRoot":"","sources":["../../../../src/services/Services.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,IAAI,cAAc,EAAE,IAAI,EAAE,YAAY,EAAS,MAAM,UAAU,CAAA;AACnF,OAAO,EAAqC,GAAG,EAAc,WAAW,EAAQ,MAAM,iBAAiB,CAAA;AACvG,OAAO,EAAe,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAGpE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAEvD,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAA;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAG7C,qBAAa,QAAS,YAAW,GAAG,CAAC,cAAc;IACjD,MAAM,CAAC,oBAAoB,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,qBAAqB;IAIxE,OAAO,EAAE,GAAG,CAAC,qBAAqB,CAAA;IAClC,YAAY,EAAE,YAAY,CAAA;IAC1B,OAAO,EAAE,GAAG,CAAA;IACZ,cAAc,CAAC,EAAE,GAAG,CAAA;IACpB,OAAO,EAAE,OAAO,CAAA;IAEhB,qBAAqB,EAAE,iBAAiB,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAA;IAClE,gBAAgB,EAAE,iBAAiB,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;IACxD,gBAAgB,EAAE,iBAAiB,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;IACxD,qBAAqB,EAAE,iBAAiB,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAA;IAClE,yBAAyB,EAAE,iBAAiB,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAA;IAC1E,4BAA4B,EAAE,iBAAiB,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAA;IAChF,8BAA8B,EAAE,iBAAiB,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAA;IAEpF,KAAK,EAAE,GAAG,CAAC,KAAK,CAAA;gBAEJ,cAAc,EAAE,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,qBAAqB;IAqDjE,sBAAsB,CAAC,KAAK,CAAC,EAAE,OAAO;;;;;;;;;IAYhC,eAAe,IAAI,OAAO,CAAC,YAAY,CAAC;IAMxC,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IAQrC,mBAAmB,CAAC,QAAQ,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,EAAE,IAAI,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;IAWzG,IAAI,cAAc,WAEjB;IACD,IAAI,cAAc,WAEjB;IACD,IAAI,qBAAqB,WAExB;IACD,IAAI,iBAAiB,WAEpB;IAEK,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC;IAmCjG;;;OAGG;IACH,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAKlC,MAAM,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC;IAY7C,aAAa,CACjB,MAAM,EAAE,MAAM,EACd,YAAY,CAAC,EAAE,GAAG,CAAC,yBAAyB,EAC5C,QAAQ,CAAC,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,OAAO,GAChB,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;IAsC7B,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC;IAiCpG;;;;;OAKG;IACG,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;IAqBpE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;IA2CtE,0BAA0B,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAenE,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IASrD,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC;IAO5B,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;IAUpD,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;IAwCtF,gBAAgB,WAAwB;IAElC,uBAAuB,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,iBAAiB,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;IAyC5G,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,cAAc,GAAG,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAiCnF,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAIlD;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,GAAG,CAAC,yBAAyB,GAAG,MAAM,CAmBvG;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,GAAG,CAAC,eAAe,GAAG,MAAM,EAAE,CAU7E"}
1
+ {"version":3,"file":"Services.d.ts","sourceRoot":"","sources":["../../../../src/services/Services.ts"],"names":[],"mappings":"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"}
@@ -28,13 +28,13 @@ class Services {
28
28
  }
29
29
  this.bitails = new Bitails_1.Bitails(this.chain);
30
30
  //prettier-ignore
31
- this.getMerklePathServices = new ServiceCollection_1.ServiceCollection()
31
+ this.getMerklePathServices = new ServiceCollection_1.ServiceCollection('getMerklePath')
32
32
  .add({ name: 'WhatsOnChain', service: this.whatsonchain.getMerklePath.bind(this.whatsonchain) })
33
33
  .add({ name: 'Bitails', service: this.bitails.getMerklePath.bind(this.bitails) });
34
34
  //prettier-ignore
35
- this.getRawTxServices = new ServiceCollection_1.ServiceCollection()
35
+ this.getRawTxServices = new ServiceCollection_1.ServiceCollection('getRawTx')
36
36
  .add({ name: 'WhatsOnChain', service: this.whatsonchain.getRawTxResult.bind(this.whatsonchain) });
37
- this.postBeefServices = new ServiceCollection_1.ServiceCollection();
37
+ this.postBeefServices = new ServiceCollection_1.ServiceCollection('postBeef');
38
38
  if (this.arcGorillaPool) {
39
39
  //prettier-ignore
40
40
  this.postBeefServices.add({ name: 'GorillaPool', service: this.arcGorillaPool.postBeef.bind(this.arcGorillaPool) });
@@ -45,28 +45,29 @@ class Services {
45
45
  .add({ name: 'WhatsOnChain', service: this.whatsonchain.postBeef.bind(this.whatsonchain) })
46
46
  .add({ name: 'Bitails', service: this.bitails.postBeef.bind(this.bitails) });
47
47
  //prettier-ignore
48
- this.getUtxoStatusServices = new ServiceCollection_1.ServiceCollection()
48
+ this.getUtxoStatusServices = new ServiceCollection_1.ServiceCollection('getUtxoStatus')
49
49
  .add({ name: 'WhatsOnChain', service: this.whatsonchain.getUtxoStatus.bind(this.whatsonchain) });
50
50
  //prettier-ignore
51
- this.getStatusForTxidsServices = new ServiceCollection_1.ServiceCollection()
51
+ this.getStatusForTxidsServices = new ServiceCollection_1.ServiceCollection('getStatusForTxids')
52
52
  .add({ name: 'WhatsOnChain', service: this.whatsonchain.getStatusForTxids.bind(this.whatsonchain) });
53
53
  //prettier-ignore
54
- this.getScriptHashHistoryServices = new ServiceCollection_1.ServiceCollection()
54
+ this.getScriptHashHistoryServices = new ServiceCollection_1.ServiceCollection('getScriptHashHistory')
55
55
  .add({ name: 'WhatsOnChain', service: this.whatsonchain.getScriptHashHistory.bind(this.whatsonchain) });
56
56
  //prettier-ignore
57
- this.updateFiatExchangeRateServices = new ServiceCollection_1.ServiceCollection()
57
+ this.updateFiatExchangeRateServices = new ServiceCollection_1.ServiceCollection('updateFiatExchangeRate')
58
58
  .add({ name: 'ChaintracksService', service: echangeRates_1.updateChaintracksFiatExchangeRates })
59
59
  .add({ name: 'exchangeratesapi', service: echangeRates_1.updateExchangeratesapi });
60
60
  }
61
61
  getServicesCallHistory(reset) {
62
62
  return {
63
- version: 1,
63
+ version: 2,
64
64
  getMerklePath: this.getMerklePathServices.getServiceCallHistory(reset),
65
65
  getRawTx: this.getRawTxServices.getServiceCallHistory(reset),
66
66
  postBeef: this.postBeefServices.getServiceCallHistory(reset),
67
67
  getUtxoStatus: this.getUtxoStatusServices.getServiceCallHistory(reset),
68
68
  getStatusForTxids: this.getStatusForTxidsServices.getServiceCallHistory(reset),
69
- getScriptHashHistory: this.getScriptHashHistoryServices.getServiceCallHistory(reset)
69
+ getScriptHashHistory: this.getScriptHashHistoryServices.getServiceCallHistory(reset),
70
+ updateFiatExchangeRates: this.updateFiatExchangeRateServices.getServiceCallHistory(reset)
70
71
  };
71
72
  }
72
73
  async getChainTracker() {
@@ -270,6 +271,8 @@ class Services {
270
271
  }
271
272
  if (r.error)
272
273
  services.addServiceCallError(stc, r.error);
274
+ else if (!r.rawTx)
275
+ services.addServiceCallSuccess(stc, `not found`);
273
276
  else
274
277
  services.addServiceCallFailure(stc);
275
278
  if (r.error && !r0.error && !r0.rawTx)