@cardano-sdk/cardano-services-client 0.9.2 → 0.9.4

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,23 @@
1
+ import { Cardano, HandleProvider, HandleResolution, HealthCheckResponse, NetworkInfoProvider, ResolveHandlesArgs } from '@cardano-sdk/core';
2
+ import { IHandle } from '@koralabs/handles-public-api-interfaces';
3
+ import { AxiosAdapter } from 'axios';
4
+ export interface KoraLabsHandleProviderDeps {
5
+ serverUrl: string;
6
+ networkInfoProvider: NetworkInfoProvider;
7
+ adapter?: AxiosAdapter;
8
+ policyId: Cardano.PolicyId;
9
+ }
10
+ export declare const toHandleResolution: ({ apiResponse, tip, policyId }: {
11
+ apiResponse: IHandle;
12
+ tip: Cardano.Tip;
13
+ policyId: Cardano.PolicyId;
14
+ }) => HandleResolution;
15
+ export declare class KoraLabsHandleProvider implements HandleProvider {
16
+ private axiosClient;
17
+ private networkInfoProvider;
18
+ policyId: Cardano.PolicyId;
19
+ constructor({ serverUrl, networkInfoProvider, adapter, policyId }: KoraLabsHandleProviderDeps);
20
+ resolveHandles(args: ResolveHandlesArgs): Promise<Array<HandleResolution | null>>;
21
+ healthCheck(): Promise<HealthCheckResponse>;
22
+ }
23
+ //# sourceMappingURL=KoraLabsHandleProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KoraLabsHandleProvider.d.ts","sourceRoot":"","sources":["../../../src/HandleProvider/KoraLabsHandleProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EAGnB,kBAAkB,EACnB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,OAAO,EAAE,MAAM,yCAAyC,CAAC;AAClE,OAAc,EAAE,YAAY,EAAiB,MAAM,OAAO,CAAC;AAU3D,MAAM,WAAW,0BAA0B;IACzC,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC;CAC5B;AAED,eAAO,MAAM,kBAAkB;iBAKhB,OAAO;SACf,QAAQ,GAAG;cACN,QAAQ,QAAQ;MACxB,gBAWF,CAAC;AAOH,qBAAa,sBAAuB,YAAW,cAAc;IAC3D,OAAO,CAAC,WAAW,CAAgB;IACnC,OAAO,CAAC,mBAAmB,CAAsB;IACjD,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC;gBAEf,EAAE,SAAS,EAAE,mBAAmB,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,0BAA0B;IASvF,cAAc,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;IAuBjF,WAAW,IAAI,OAAO,CAAC,mBAAmB,CAAC;CAQlD"}
@@ -0,0 +1,59 @@
1
+ import { Cardano, ProviderError, ProviderFailure } from '@cardano-sdk/core';
2
+ import axios from 'axios';
3
+ const paths = {
4
+ handles: '/handles',
5
+ healthCheck: '/health'
6
+ };
7
+ export const toHandleResolution = ({ apiResponse, tip, policyId }) => ({
8
+ handle: apiResponse.name,
9
+ hasDatum: apiResponse.hasDatum,
10
+ policyId,
11
+ resolvedAddresses: {
12
+ cardano: Cardano.PaymentAddress(apiResponse.resolved_addresses.ada)
13
+ },
14
+ resolvedAt: {
15
+ hash: tip.hash,
16
+ slot: tip.slot
17
+ }
18
+ });
19
+ export class KoraLabsHandleProvider {
20
+ constructor({ serverUrl, networkInfoProvider, adapter, policyId }) {
21
+ this.networkInfoProvider = networkInfoProvider;
22
+ this.axiosClient = axios.create({
23
+ adapter,
24
+ baseURL: serverUrl
25
+ });
26
+ this.policyId = policyId;
27
+ }
28
+ async resolveHandles(args) {
29
+ try {
30
+ const tip = await this.networkInfoProvider.ledgerTip();
31
+ const results = await Promise.all(args.handles.map((handle) => this.axiosClient.get(`${paths.handles}/${handle}`)));
32
+ return results.map(({ data: apiResponse }) => toHandleResolution({ apiResponse, policyId: this.policyId, tip }));
33
+ }
34
+ catch (error) {
35
+ if (axios.isAxiosError(error)) {
36
+ if (error.request) {
37
+ throw new ProviderError(ProviderFailure.ConnectionFailure, error, error.code);
38
+ }
39
+ if (error.response?.status === 404) {
40
+ return [null];
41
+ }
42
+ throw new ProviderError(ProviderFailure.Unhealthy, error, `Failed to resolve handles due to: ${error.message}`);
43
+ }
44
+ if (error instanceof ProviderError)
45
+ throw error;
46
+ throw new ProviderError(ProviderFailure.Unknown, error, 'Failed to resolve handles');
47
+ }
48
+ }
49
+ async healthCheck() {
50
+ try {
51
+ await this.axiosClient.get(`${paths.healthCheck}`);
52
+ return { ok: true };
53
+ }
54
+ catch {
55
+ return { ok: false };
56
+ }
57
+ }
58
+ }
59
+ //# sourceMappingURL=KoraLabsHandleProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KoraLabsHandleProvider.js","sourceRoot":"","sources":["../../../src/HandleProvider/KoraLabsHandleProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EAKP,aAAa,EACb,eAAe,EAEhB,MAAM,mBAAmB,CAAC;AAI3B,OAAO,KAAsC,MAAM,OAAO,CAAC;AAK3D,MAAM,KAAK,GAAG;IACZ,OAAO,EAAE,UAAU;IACnB,WAAW,EAAE,SAAS;CACvB,CAAC;AASF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EACjC,WAAW,EACX,GAAG,EACH,QAAQ,EAKT,EAAoB,EAAE,CAAC,CAAC;IACvB,MAAM,EAAE,WAAW,CAAC,IAAI;IACxB,QAAQ,EAAE,WAAW,CAAC,QAAQ;IAC9B,QAAQ;IACR,iBAAiB,EAAE;QACjB,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,WAAW,CAAC,kBAAkB,CAAC,GAAG,CAAC;KACpE;IACD,UAAU,EAAE;QACV,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,IAAI,EAAE,GAAG,CAAC,IAAI;KACf;CACF,CAAC,CAAC;AAOH,MAAM,OAAO,sBAAsB;IAKjC,YAAY,EAAE,SAAS,EAAE,mBAAmB,EAAE,OAAO,EAAE,QAAQ,EAA8B;QAC3F,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;QAC/C,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC;YAC9B,OAAO;YACP,OAAO,EAAE,SAAS;SACnB,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,IAAwB;QAC3C,IAAI;YACF,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,CAAC;YACvD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAU,GAAG,KAAK,CAAC,OAAO,IAAI,MAAM,EAAE,CAAC,CAAC,CAC1F,CAAC;YACF,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,kBAAkB,CAAC,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;SAClH;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE;gBAC7B,IAAI,KAAK,CAAC,OAAO,EAAE;oBACjB,MAAM,IAAI,aAAa,CAAC,eAAe,CAAC,iBAAiB,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;iBAC/E;gBAED,IAAI,KAAK,CAAC,QAAQ,EAAE,MAAM,KAAK,GAAG,EAAE;oBAClC,OAAO,CAAC,IAAI,CAAC,CAAC;iBACf;gBAED,MAAM,IAAI,aAAa,CAAC,eAAe,CAAC,SAAS,EAAE,KAAK,EAAE,qCAAqC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;aACjH;YACD,IAAI,KAAK,YAAY,aAAa;gBAAE,MAAM,KAAK,CAAC;YAChD,MAAM,IAAI,aAAa,CAAC,eAAe,CAAC,OAAO,EAAE,KAAK,EAAE,2BAA2B,CAAC,CAAC;SACtF;IACH,CAAC;IACD,KAAK,CAAC,WAAW;QACf,IAAI;YACF,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;YACnD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;SACrB;QAAC,MAAM;YACN,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC;SACtB;IACH,CAAC;CACF"}
@@ -0,0 +1,2 @@
1
+ export * from './KoraLabsHandleProvider';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/HandleProvider/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './KoraLabsHandleProvider';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/HandleProvider/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC"}
@@ -6,4 +6,5 @@ export * from './UtxoProvider';
6
6
  export * from './ChainHistoryProvider';
7
7
  export * from './NetworkInfoProvider';
8
8
  export * from './RewardsProvider';
9
+ export * from './HandleProvider';
9
10
  //# 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"}
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"}
package/dist/esm/index.js CHANGED
@@ -6,4 +6,5 @@ export * from './UtxoProvider';
6
6
  export * from './ChainHistoryProvider';
7
7
  export * from './NetworkInfoProvider';
8
8
  export * from './RewardsProvider';
9
+ export * from './HandleProvider';
9
10
  //# 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"}
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"}