@cardano-sdk/cardano-services-client 0.19.13 → 0.19.15

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.
@@ -0,0 +1,45 @@
1
+ import { AsyncReturnType, Cardano, EpochInfo, EraSummary, NetworkInfoMethods, NetworkInfoProvider, SupplySummary, WSMessage, WsProvider } from '@cardano-sdk/core';
2
+ import { Logger } from 'ts-log';
3
+ import { Observable } from 'rxjs';
4
+ export declare type WSHandler = (message: WSMessage) => void;
5
+ export interface WsClientConfiguration {
6
+ heartbeatInterval?: number;
7
+ requestTimeout?: number;
8
+ url: URL;
9
+ }
10
+ export interface WsClientDependencies {
11
+ logger: Logger;
12
+ }
13
+ interface EpochRollover {
14
+ epochInfo: EpochInfo;
15
+ eraSummaries: EraSummary[];
16
+ ledgerTip: Cardano.Tip;
17
+ lovelaceSupply: SupplySummary;
18
+ protocolParameters: Cardano.ProtocolParameters;
19
+ }
20
+ export declare class CardanoWsClient extends WsProvider {
21
+ clientId: string;
22
+ epoch$: Observable<EpochRollover>;
23
+ networkInfo: {
24
+ [m in `${NetworkInfoMethods}$`]: Observable<AsyncReturnType<NetworkInfoProvider[m extends `${infer o}$` ? o : never]>>;
25
+ };
26
+ networkInfoProvider: NetworkInfoProvider;
27
+ private closePromise;
28
+ private closeResolver;
29
+ private epochSubject$;
30
+ private heartbeatInterval;
31
+ private heartbeatTimeout;
32
+ private logger;
33
+ private status;
34
+ private url;
35
+ private ws;
36
+ private networkInfoSubjects;
37
+ constructor(deps: WsClientDependencies, cfg: WsClientConfiguration);
38
+ private createNetworkInfoProviderMethod;
39
+ private connect;
40
+ private heartbeat;
41
+ close(): Promise<void>;
42
+ private request;
43
+ }
44
+ export {};
45
+ //# sourceMappingURL=WebSocket.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WebSocket.d.ts","sourceRoot":"","sources":["../../src/WebSocket.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,eAAe,EACf,OAAO,EACP,SAAS,EACT,UAAU,EACV,kBAAkB,EAClB,mBAAmB,EAInB,aAAa,EACb,SAAS,EACT,UAAU,EAEX,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,UAAU,EAAyD,MAAM,MAAM,CAAC;AAQzF,oBAAY,SAAS,GAAG,CAAC,OAAO,EAAE,SAAS,KAAK,IAAI,CAAC;AAErD,MAAM,WAAW,qBAAqB;IAEpC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAG3B,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,GAAG,EAAE,GAAG,CAAC;CACV;AAED,MAAM,WAAW,oBAAoB;IAEnC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,aAAa;IACrB,SAAS,EAAE,SAAS,CAAC;IACrB,YAAY,EAAE,UAAU,EAAE,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC;IACvB,cAAc,EAAE,aAAa,CAAC;IAC9B,kBAAkB,EAAE,OAAO,CAAC,kBAAkB,CAAC;CAChD;AAMD,qBAAa,eAAgB,SAAQ,UAAU;IAE7C,QAAQ,SAAoB;IAG5B,MAAM,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC;IAGlC,WAAW,EAAE;SACV,CAAC,IAAI,GAAG,kBAAkB,GAAG,GAAG,UAAU,CACzC,eAAe,CAAC,mBAAmB,CAAC,CAAC,SAAS,GAAG,MAAM,CAAC,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAC1E;KACF,CAAC;IAGF,mBAAmB,EAAE,mBAAmB,CAAC;IAEzC,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,aAAa,CAAa;IAClC,OAAO,CAAC,aAAa,CAAyB;IAC9C,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,gBAAgB,CAA6B;IACrD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,GAAG,CAAM;IACjB,OAAO,CAAC,EAAE,CAAY;IAEtB,OAAO,CAAC,mBAAmB,CAIzB;gBAEU,IAAI,EAAE,oBAAoB,EAAE,GAAG,EAAE,qBAAqB;IAmClE,OAAO,CAAC,+BAA+B;IAkBvC,OAAO,CAAC,OAAO;IA8Ef,OAAO,CAAC,SAAS;IAcjB,KAAK;IAaL,OAAO,CAAC,OAAO;CAQhB"}
@@ -0,0 +1,143 @@
1
+ import { ProviderError, ProviderFailure, WsProvider, createSlotEpochInfoCalc } from '@cardano-sdk/core';
2
+ import { ReplaySubject, Subject, filter, firstValueFrom, merge } from 'rxjs';
3
+ import { fromSerializableObject } from '@cardano-sdk/util';
4
+ import WebSocket from 'isomorphic-ws';
5
+ const NOT_CONNECTED_ID = 'not-connected';
6
+ const isEventError = (error) => typeof error === 'object' && !!error && error.error instanceof Error;
7
+ export class CardanoWsClient extends WsProvider {
8
+ constructor(deps, cfg) {
9
+ super();
10
+ this.clientId = NOT_CONNECTED_ID;
11
+ this.status = 'idle';
12
+ this.networkInfoSubjects = {};
13
+ this.epoch$ = this.epochSubject$ = new Subject();
14
+ this.heartbeatInterval = (cfg.heartbeatInterval || 55) * 1000;
15
+ this.logger = deps.logger;
16
+ this.url = cfg.url;
17
+ this.closePromise = new Promise((resolve) => {
18
+ this.closeResolver = resolve;
19
+ });
20
+ this.networkInfoSubjects = {
21
+ eraSummaries$: new ReplaySubject(1),
22
+ genesisParameters$: new ReplaySubject(1),
23
+ ledgerTip$: new ReplaySubject(1),
24
+ lovelaceSupply$: new ReplaySubject(1),
25
+ protocolParameters$: new ReplaySubject(1),
26
+ stake$: new ReplaySubject(1)
27
+ };
28
+ this.networkInfo = this.networkInfoSubjects;
29
+ this.networkInfoProvider = {
30
+ eraSummaries: this.createNetworkInfoProviderMethod('eraSummaries'),
31
+ genesisParameters: this.createNetworkInfoProviderMethod('genesisParameters'),
32
+ healthCheck: () => this.healthCheck(),
33
+ ledgerTip: this.createNetworkInfoProviderMethod('ledgerTip'),
34
+ lovelaceSupply: this.createNetworkInfoProviderMethod('lovelaceSupply'),
35
+ protocolParameters: this.createNetworkInfoProviderMethod('protocolParameters'),
36
+ stake: this.createNetworkInfoProviderMethod('stake')
37
+ };
38
+ this.connect();
39
+ }
40
+ createNetworkInfoProviderMethod(method) {
41
+ return async () => {
42
+ const value = await firstValueFrom(merge(this.health$.pipe(filter(({ ok, reason }) => !ok && reason !== 'starting')), this.networkInfo[`${method}$`]));
43
+ if ('ok' in value && 'reason' in value && value.ok === false)
44
+ throw new ProviderError(ProviderFailure.ConnectionFailure, undefined, value.reason);
45
+ else
46
+ return value;
47
+ };
48
+ }
49
+ connect() {
50
+ if (this.status !== 'stop')
51
+ this.status = 'connecting';
52
+ const ws = (this.ws = new WebSocket(this.url));
53
+ ws.onmessage = (event) => {
54
+ try {
55
+ if (typeof event.data !== 'string')
56
+ throw new Error('Unexpected data from WebSocket ');
57
+ const message = fromSerializableObject(JSON.parse(event.data));
58
+ const { clientId, networkInfo } = message;
59
+ if (clientId)
60
+ this.logger.info(`Connected with clientId ${(this.clientId = clientId)}`);
61
+ if (networkInfo) {
62
+ const { eraSummaries, genesisParameters, ledgerTip, lovelaceSupply, protocolParameters, stake } = networkInfo;
63
+ if (eraSummaries)
64
+ this.networkInfoSubjects.eraSummaries$.next(eraSummaries);
65
+ if (genesisParameters)
66
+ this.networkInfoSubjects.genesisParameters$.next(genesisParameters);
67
+ if (lovelaceSupply)
68
+ this.networkInfoSubjects.lovelaceSupply$.next(lovelaceSupply);
69
+ if (protocolParameters)
70
+ this.networkInfoSubjects.protocolParameters$.next(protocolParameters);
71
+ if (stake)
72
+ this.networkInfoSubjects.stake$.next(stake);
73
+ if (ledgerTip)
74
+ this.networkInfoSubjects.ledgerTip$.next(ledgerTip);
75
+ if (eraSummaries && ledgerTip && lovelaceSupply && protocolParameters && !clientId) {
76
+ const epochInfo = createSlotEpochInfoCalc(eraSummaries)(ledgerTip.slot);
77
+ this.epochSubject$.next({ epochInfo, eraSummaries, ledgerTip, lovelaceSupply, protocolParameters });
78
+ }
79
+ }
80
+ }
81
+ catch (error) {
82
+ this.logger.error(error, 'While parsing message', event.data, this.clientId);
83
+ }
84
+ };
85
+ ws.onclose = () => {
86
+ this.logger.info('WebSocket client connection closed', this.clientId);
87
+ if (this.heartbeatTimeout) {
88
+ clearInterval(this.heartbeatTimeout);
89
+ this.heartbeatTimeout = undefined;
90
+ }
91
+ this.clientId = NOT_CONNECTED_ID;
92
+ if (this.status === 'stop')
93
+ this.closeResolver();
94
+ else {
95
+ this.status = 'idle';
96
+ setTimeout(() => this.connect(), 1000).unref();
97
+ }
98
+ this.emitHealth('closed');
99
+ };
100
+ ws.onerror = (error) => {
101
+ const err = error instanceof Error
102
+ ? error
103
+ : isEventError(error)
104
+ ? error.error
105
+ : new Error(`Unknown error: ${JSON.stringify(error)}`);
106
+ this.logger.error(err, 'Async error from WebSocket client', this.clientId);
107
+ ws.close();
108
+ this.emitHealth(err.message, true);
109
+ };
110
+ ws.onopen = () => {
111
+ if (this.status !== 'stop')
112
+ this.status = 'connected';
113
+ this.heartbeat();
114
+ this.emitHealth();
115
+ };
116
+ }
117
+ heartbeat() {
118
+ if (this.heartbeatTimeout)
119
+ clearInterval(this.heartbeatTimeout);
120
+ this.heartbeatTimeout = setTimeout(() => {
121
+ try {
122
+ this.request({});
123
+ }
124
+ catch (error) {
125
+ this.logger.error(error, 'Error while refreshing heartbeat', this.clientId);
126
+ }
127
+ }, this.heartbeatInterval);
128
+ this.heartbeatTimeout.unref();
129
+ }
130
+ close() {
131
+ this.status = 'stop';
132
+ this.ws.close();
133
+ return this.closePromise;
134
+ }
135
+ request(request) {
136
+ if (this.status !== 'connected')
137
+ return false;
138
+ this.ws.send(JSON.stringify(request));
139
+ this.heartbeat();
140
+ return true;
141
+ }
142
+ }
143
+ //# sourceMappingURL=WebSocket.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WebSocket.js","sourceRoot":"","sources":["../../src/WebSocket.ts"],"names":[],"mappings":"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"}
@@ -8,4 +8,5 @@ export * from './NetworkInfoProvider/index.js';
8
8
  export * from './RewardsProvider/index.js';
9
9
  export * from './HandleProvider/index.js';
10
10
  export * from './version.js';
11
+ export * from './WebSocket.js';
11
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC"}
package/dist/esm/index.js CHANGED
@@ -8,4 +8,5 @@ export * from './NetworkInfoProvider/index.js';
8
8
  export * from './RewardsProvider/index.js';
9
9
  export * from './HandleProvider/index.js';
10
10
  export * from './version.js';
11
+ export * from './WebSocket.js';
11
12
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC"}