@sudobility/indexer_client 0.0.69 → 0.0.71

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.
@@ -1,4 +1,4 @@
1
- import type { AppConfig } from '@sudobility/types';
1
+ import type { AppConfig, NetworkClient } from '@sudobility/types';
2
2
  interface IndexerIndexerLeaderboardResponse {
3
3
  success: boolean;
4
4
  leaderboard?: any[];
@@ -11,11 +11,12 @@ interface IndexerPublicStatsResponse {
11
11
  }
12
12
  declare class IndexerService {
13
13
  private static instance;
14
+ private static instanceNetworkClient;
14
15
  private indexerClient;
15
16
  private cache;
16
17
  private readonly CACHE_TTL;
17
- constructor(config: AppConfig);
18
- static getInstance(config: AppConfig): IndexerService;
18
+ constructor(config: AppConfig, networkClient: NetworkClient);
19
+ static getInstance(config: AppConfig, networkClient: NetworkClient): IndexerService;
19
20
  private getCacheKey;
20
21
  private getCache;
21
22
  private setCache;
@@ -1 +1 @@
1
- {"version":3,"file":"indexer-service.d.ts","sourceRoot":"","sources":["../../src/business/indexer-service.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAOnD,UAAU,iCAAiC;IACzC,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,GAAG,EAAE,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,0BAA0B;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAKD,cAAM,cAAc;IAClB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAiB;IACxC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,KAAK,CAAqD;IAClE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAiB;gBAE/B,MAAM,EAAE,SAAS;WAYf,WAAW,CAAC,MAAM,EAAE,SAAS,GAAG,cAAc;IAW5D,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,QAAQ;IAShB,OAAO,CAAC,QAAQ;IAcH,cAAc,CACzB,KAAK,GAAE,MAAW,GACjB,OAAO,CAAC,iCAAiC,CAAC;IAwBhC,cAAc,IAAI,OAAO,CAAC,0BAA0B,CAAC;IAwB3D,UAAU,IAAI,IAAI;CAa1B;AAED,OAAO,EAAE,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"indexer-service.d.ts","sourceRoot":"","sources":["../../src/business/indexer-service.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAOlE,UAAU,iCAAiC;IACzC,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,GAAG,EAAE,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,0BAA0B;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAKD,cAAM,cAAc;IAClB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAiB;IACxC,OAAO,CAAC,MAAM,CAAC,qBAAqB,CAAgB;IACpD,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,KAAK,CAAqD;IAClE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAiB;gBAE/B,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa;WAW7C,WAAW,CACvB,MAAM,EAAE,SAAS,EACjB,aAAa,EAAE,aAAa,GAC3B,cAAc;IAejB,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,QAAQ;IAShB,OAAO,CAAC,QAAQ;IAcH,cAAc,CACzB,KAAK,GAAE,MAAW,GACjB,OAAO,CAAC,iCAAiC,CAAC;IAwBhC,cAAc,IAAI,OAAO,CAAC,0BAA0B,CAAC;IAwB3D,UAAU,IAAI,IAAI;CAa1B;AAED,OAAO,EAAE,cAAc,EAAE,CAAC"}
@@ -1,18 +1,18 @@
1
1
  import { IndexerClient } from '../network/IndexerClient';
2
- import { FetchNetworkClient } from '../network/FetchNetworkClient';
3
2
  class IndexerService {
4
- constructor(config) {
3
+ constructor(config, networkClient) {
5
4
  this.cache = new Map();
6
5
  this.CACHE_TTL = 5 * 60 * 1000;
7
6
  if (!config.indexerBackendUrl) {
8
7
  throw new Error('indexerBackendUrl is required in AppConfig');
9
8
  }
10
- const fetchClient = new FetchNetworkClient();
11
- this.indexerClient = new IndexerClient(config.indexerBackendUrl, fetchClient, config.devMode || false);
9
+ this.indexerClient = new IndexerClient(config.indexerBackendUrl, networkClient, config.devMode || false);
12
10
  }
13
- static getInstance(config) {
14
- if (!IndexerService.instance) {
15
- IndexerService.instance = new IndexerService(config);
11
+ static getInstance(config, networkClient) {
12
+ if (!IndexerService.instance ||
13
+ IndexerService.instanceNetworkClient !== networkClient) {
14
+ IndexerService.instance = new IndexerService(config, networkClient);
15
+ IndexerService.instanceNetworkClient = networkClient;
16
16
  }
17
17
  return IndexerService.instance;
18
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"indexer-service.js","sourceRoot":"","sources":["../../src/business/indexer-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"indexer-service.js","sourceRoot":"","sources":["../../src/business/indexer-service.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
1
  export { IndexerClient } from './IndexerClient';
2
- export { FetchNetworkClient } from './FetchNetworkClient';
3
2
  export type { ReferralCodeData, ReferralCodeResponse, ReferredWallet, ReferralStatsData, ReferralStatsResponse, } from './IndexerClient';
4
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/network/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,YAAY,EACV,gBAAgB,EAChB,oBAAoB,EACpB,cAAc,EACd,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/network/index.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,YAAY,EACV,gBAAgB,EAChB,oBAAoB,EACpB,cAAc,EACd,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,iBAAiB,CAAC"}
@@ -1,3 +1,2 @@
1
1
  export { IndexerClient } from './IndexerClient';
2
- export { FetchNetworkClient } from './FetchNetworkClient';
3
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/network/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/network/index.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC"}
@@ -1,11 +1,11 @@
1
- import type { AppConfig } from '@sudobility/types';
1
+ import type { AppConfig, NetworkClient } from '@sudobility/types';
2
2
  import { IndexerAdminHelper } from './indexer-admin';
3
3
  import { IndexerGraphQLHelper } from './indexer-graphql';
4
4
  import { IndexerWebhookHelper } from './indexer-webhooks';
5
- export declare const createIndexerAdmin: (config: AppConfig) => IndexerAdminHelper;
6
- export declare const createIndexerGraphQL: (config: AppConfig) => IndexerGraphQLHelper;
7
- export declare const createIndexerWebhook: (config: AppConfig) => IndexerWebhookHelper;
8
- export declare const createIndexerHelpers: (config: AppConfig) => {
5
+ export declare const createIndexerAdmin: (config: AppConfig, networkClient: NetworkClient) => IndexerAdminHelper;
6
+ export declare const createIndexerGraphQL: (config: AppConfig, networkClient: NetworkClient) => IndexerGraphQLHelper;
7
+ export declare const createIndexerWebhook: (config: AppConfig, networkClient: NetworkClient) => IndexerWebhookHelper;
8
+ export declare const createIndexerHelpers: (config: AppConfig, networkClient: NetworkClient) => {
9
9
  admin: IndexerAdminHelper;
10
10
  graphql: IndexerGraphQLHelper;
11
11
  webhook: IndexerWebhookHelper;
@@ -1 +1 @@
1
- {"version":3,"file":"indexer-factory.d.ts","sourceRoot":"","sources":["../../src/utils/indexer-factory.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,OAAO,EAA4B,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC/E,OAAO,EAEL,oBAAoB,EACrB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAEL,oBAAoB,EACrB,MAAM,oBAAoB,CAAC;AAkB5B,eAAO,MAAM,kBAAkB,GAAI,QAAQ,SAAS,KAAG,kBAMtD,CAAC;AAkBF,eAAO,MAAM,oBAAoB,GAC/B,QAAQ,SAAS,KAChB,oBAMF,CAAC;AAsBF,eAAO,MAAM,oBAAoB,GAC/B,QAAQ,SAAS,KAChB,oBAMF,CAAC;AAoBF,eAAO,MAAM,oBAAoB,GAAI,QAAQ,SAAS;;;;CAMrD,CAAC"}
1
+ {"version":3,"file":"indexer-factory.d.ts","sourceRoot":"","sources":["../../src/utils/indexer-factory.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAA4B,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC/E,OAAO,EAEL,oBAAoB,EACrB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAEL,oBAAoB,EACrB,MAAM,oBAAoB,CAAC;AAqB5B,eAAO,MAAM,kBAAkB,GAC7B,QAAQ,SAAS,EACjB,eAAe,aAAa,KAC3B,kBAKF,CAAC;AAqBF,eAAO,MAAM,oBAAoB,GAC/B,QAAQ,SAAS,EACjB,eAAe,aAAa,KAC3B,oBAKF,CAAC;AAyBF,eAAO,MAAM,oBAAoB,GAC/B,QAAQ,SAAS,EACjB,eAAe,aAAa,KAC3B,oBAKF,CAAC;AAuBF,eAAO,MAAM,oBAAoB,GAC/B,QAAQ,SAAS,EACjB,eAAe,aAAa;;;;CAO7B,CAAC"}
@@ -1,33 +1,29 @@
1
- import { FetchNetworkClient } from '../network/FetchNetworkClient';
2
1
  import { createIndexerAdminHelper } from './indexer-admin';
3
2
  import { createIndexerGraphQLHelper, } from './indexer-graphql';
4
3
  import { createIndexerWebhookHelper, } from './indexer-webhooks';
5
- export const createIndexerAdmin = (config) => {
4
+ export const createIndexerAdmin = (config, networkClient) => {
6
5
  if (!config.indexerBackendUrl) {
7
6
  throw new Error('indexerBackendUrl is required in AppConfig');
8
7
  }
9
- const fetchClient = new FetchNetworkClient();
10
- return createIndexerAdminHelper(config.indexerBackendUrl, fetchClient);
8
+ return createIndexerAdminHelper(config.indexerBackendUrl, networkClient);
11
9
  };
12
- export const createIndexerGraphQL = (config) => {
10
+ export const createIndexerGraphQL = (config, networkClient) => {
13
11
  if (!config.indexerBackendUrl) {
14
12
  throw new Error('indexerBackendUrl is required in AppConfig');
15
13
  }
16
- const fetchClient = new FetchNetworkClient();
17
- return createIndexerGraphQLHelper(config.indexerBackendUrl, fetchClient);
14
+ return createIndexerGraphQLHelper(config.indexerBackendUrl, networkClient);
18
15
  };
19
- export const createIndexerWebhook = (config) => {
16
+ export const createIndexerWebhook = (config, networkClient) => {
20
17
  if (!config.indexerBackendUrl) {
21
18
  throw new Error('indexerBackendUrl is required in AppConfig');
22
19
  }
23
- const fetchClient = new FetchNetworkClient();
24
- return createIndexerWebhookHelper(config.indexerBackendUrl, fetchClient);
20
+ return createIndexerWebhookHelper(config.indexerBackendUrl, networkClient);
25
21
  };
26
- export const createIndexerHelpers = (config) => {
22
+ export const createIndexerHelpers = (config, networkClient) => {
27
23
  return {
28
- admin: createIndexerAdmin(config),
29
- graphql: createIndexerGraphQL(config),
30
- webhook: createIndexerWebhook(config),
24
+ admin: createIndexerAdmin(config, networkClient),
25
+ graphql: createIndexerGraphQL(config, networkClient),
26
+ webhook: createIndexerWebhook(config, networkClient),
31
27
  };
32
28
  };
33
29
  //# sourceMappingURL=indexer-factory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"indexer-factory.js","sourceRoot":"","sources":["../../src/utils/indexer-factory.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,wBAAwB,EAAsB,MAAM,iBAAiB,CAAC;AAC/E,OAAO,EACL,0BAA0B,GAE3B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,0BAA0B,GAE3B,MAAM,oBAAoB,CAAC;AAkB5B,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,MAAiB,EAAsB,EAAE;IAC1E,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChE,CAAC;IACD,MAAM,WAAW,GAAG,IAAI,kBAAkB,EAAE,CAAC;IAC7C,OAAO,wBAAwB,CAAC,MAAM,CAAC,iBAAiB,EAAE,WAAW,CAAC,CAAC;AACzE,CAAC,CAAC;AAkBF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,MAAiB,EACK,EAAE;IACxB,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChE,CAAC;IACD,MAAM,WAAW,GAAG,IAAI,kBAAkB,EAAE,CAAC;IAC7C,OAAO,0BAA0B,CAAC,MAAM,CAAC,iBAAiB,EAAE,WAAW,CAAC,CAAC;AAC3E,CAAC,CAAC;AAsBF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,MAAiB,EACK,EAAE;IACxB,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChE,CAAC;IACD,MAAM,WAAW,GAAG,IAAI,kBAAkB,EAAE,CAAC;IAC7C,OAAO,0BAA0B,CAAC,MAAM,CAAC,iBAAiB,EAAE,WAAW,CAAC,CAAC;AAC3E,CAAC,CAAC;AAoBF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,MAAiB,EAAE,EAAE;IACxD,OAAO;QACL,KAAK,EAAE,kBAAkB,CAAC,MAAM,CAAC;QACjC,OAAO,EAAE,oBAAoB,CAAC,MAAM,CAAC;QACrC,OAAO,EAAE,oBAAoB,CAAC,MAAM,CAAC;KACtC,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"indexer-factory.js","sourceRoot":"","sources":["../../src/utils/indexer-factory.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,wBAAwB,EAAsB,MAAM,iBAAiB,CAAC;AAC/E,OAAO,EACL,0BAA0B,GAE3B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,0BAA0B,GAE3B,MAAM,oBAAoB,CAAC;AAqB5B,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,MAAiB,EACjB,aAA4B,EACR,EAAE;IACtB,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,wBAAwB,CAAC,MAAM,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC;AAC3E,CAAC,CAAC;AAqBF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,MAAiB,EACjB,aAA4B,EACN,EAAE;IACxB,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,0BAA0B,CAAC,MAAM,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC;AAC7E,CAAC,CAAC;AAyBF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,MAAiB,EACjB,aAA4B,EACN,EAAE;IACxB,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,0BAA0B,CAAC,MAAM,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC;AAC7E,CAAC,CAAC;AAuBF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,MAAiB,EACjB,aAA4B,EAC5B,EAAE;IACF,OAAO;QACL,KAAK,EAAE,kBAAkB,CAAC,MAAM,EAAE,aAAa,CAAC;QAChD,OAAO,EAAE,oBAAoB,CAAC,MAAM,EAAE,aAAa,CAAC;QACpD,OAAO,EAAE,oBAAoB,CAAC,MAAM,EAAE,aAAa,CAAC;KACrD,CAAC;AACJ,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sudobility/indexer_client",
3
- "version": "0.0.69",
3
+ "version": "0.0.71",
4
4
  "description": "React and React Native compatible client library for blockchain mail indexer API with TypeScript support",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -41,15 +41,16 @@
41
41
  "author": "John Huang",
42
42
  "license": "MIT",
43
43
  "peerDependencies": {
44
- "@sudobility/di": "^1.4.17",
45
- "@sudobility/types": "^1.9.12",
44
+ "@sudobility/di": "^1.4.30",
45
+ "@sudobility/types": "^1.9.31",
46
46
  "@tanstack/react-query": "^5.90.5",
47
47
  "react": "^19.2.0"
48
48
  },
49
49
  "devDependencies": {
50
- "@sudobility/di": "^1.4.30",
50
+ "@sudobility/di": "^1.5.3",
51
51
  "@sudobility/types": "^1.9.31",
52
52
  "@tanstack/react-query": "^5.90.5",
53
+ "@testing-library/dom": "^10.4.1",
53
54
  "@testing-library/react": "^16.3.0",
54
55
  "@types/node": "^24.9.1",
55
56
  "@types/react": "^19.2.2",
@@ -75,6 +76,6 @@
75
76
  "url": "https://github.com/johnqh/mail_box_indexer_client.git"
76
77
  },
77
78
  "dependencies": {
78
- "@sudobility/configs": "^0.0.41"
79
+ "@sudobility/configs": "^0.0.42"
79
80
  }
80
81
  }
@@ -1,17 +0,0 @@
1
- import type { NetworkClient, NetworkResponse, Optional } from '@sudobility/types';
2
- export declare class FetchNetworkClient implements NetworkClient {
3
- private readonly timeout;
4
- constructor(timeout?: number);
5
- request<T = unknown>(url: string, options?: Optional<{
6
- method?: Optional<'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH'>;
7
- headers?: Optional<Record<string, string>>;
8
- body?: Optional<string | FormData | Blob>;
9
- signal?: Optional<AbortSignal>;
10
- timeout?: Optional<number>;
11
- }>): Promise<NetworkResponse<T>>;
12
- get<T = unknown>(url: string, options?: Optional<Omit<Parameters<NetworkClient['request']>[1], 'method' | 'body'>>): Promise<NetworkResponse<T>>;
13
- post<T = unknown>(url: string, body?: Optional<unknown>, options?: Optional<Omit<Parameters<NetworkClient['request']>[1], 'method'>>): Promise<NetworkResponse<T>>;
14
- put<T = unknown>(url: string, body?: Optional<unknown>, options?: Optional<Omit<Parameters<NetworkClient['request']>[1], 'method'>>): Promise<NetworkResponse<T>>;
15
- delete<T = unknown>(url: string, options?: Optional<Omit<Parameters<NetworkClient['request']>[1], 'method' | 'body'>>): Promise<NetworkResponse<T>>;
16
- }
17
- //# sourceMappingURL=FetchNetworkClient.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FetchNetworkClient.d.ts","sourceRoot":"","sources":["../../src/network/FetchNetworkClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,eAAe,EACf,QAAQ,EACT,MAAM,mBAAmB,CAAC;AAM3B,qBAAa,kBAAmB,YAAW,aAAa;IACtD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAErB,OAAO,GAAE,MAAc;IAI7B,OAAO,CAAC,CAAC,GAAG,OAAO,EACvB,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,QAAQ,CAAC;QACjB,MAAM,CAAC,EAAE,QAAQ,CAAC,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,CAAC,CAAC;QAC/D,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QAC3C,IAAI,CAAC,EAAE,QAAQ,CAAC,MAAM,GAAG,QAAQ,GAAG,IAAI,CAAC,CAAC;QAC1C,MAAM,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC/B,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;KAC5B,CAAC,GACD,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAsDxB,GAAG,CAAC,CAAC,GAAG,OAAO,EACnB,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,QAAQ,CAChB,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC,CACjE,GACA,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAIxB,IAAI,CAAC,CAAC,GAAG,OAAO,EACpB,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,EACxB,OAAO,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,GAC1E,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAkBxB,GAAG,CAAC,CAAC,GAAG,OAAO,EACnB,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,EACxB,OAAO,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,GAC1E,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAkBxB,MAAM,CAAC,CAAC,GAAG,OAAO,EACtB,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,QAAQ,CAChB,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC,CACjE,GACA,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;CAG/B"}
@@ -1,83 +0,0 @@
1
- export class FetchNetworkClient {
2
- constructor(timeout = 30000) {
3
- this.timeout = timeout;
4
- }
5
- async request(url, options) {
6
- const controller = new AbortController();
7
- const timeoutId = setTimeout(() => controller.abort(), options?.timeout || this.timeout);
8
- try {
9
- const fetchOptions = {
10
- method: options?.method || 'GET',
11
- headers: options?.headers || {},
12
- signal: options?.signal || controller.signal,
13
- };
14
- if (options?.body !== null && options?.body !== undefined) {
15
- fetchOptions.body = options.body;
16
- }
17
- const response = await fetch(url, fetchOptions);
18
- clearTimeout(timeoutId);
19
- const text = await response.text();
20
- let data;
21
- try {
22
- data = JSON.parse(text);
23
- }
24
- catch {
25
- data = text;
26
- }
27
- const headers = {};
28
- response.headers.forEach((value, key) => {
29
- headers[key] = value;
30
- });
31
- return {
32
- ok: response.ok,
33
- status: response.status,
34
- statusText: response.statusText,
35
- data,
36
- headers,
37
- success: response.ok,
38
- timestamp: new Date().toISOString(),
39
- };
40
- }
41
- catch (error) {
42
- clearTimeout(timeoutId);
43
- throw new Error(`Network request failed: ${error instanceof Error ? error.message : 'Unknown error'}`);
44
- }
45
- }
46
- async get(url, options) {
47
- return this.request(url, { ...options, method: 'GET' });
48
- }
49
- async post(url, body, options) {
50
- const bodyString = body ? JSON.stringify(body) : undefined;
51
- const baseHeaders = {
52
- 'Content-Type': 'application/json',
53
- };
54
- const headers = options && 'headers' in options && options.headers
55
- ? { ...baseHeaders, ...options.headers }
56
- : baseHeaders;
57
- return this.request(url, {
58
- ...options,
59
- method: 'POST',
60
- body: bodyString,
61
- headers,
62
- });
63
- }
64
- async put(url, body, options) {
65
- const bodyString = body ? JSON.stringify(body) : undefined;
66
- const baseHeaders = {
67
- 'Content-Type': 'application/json',
68
- };
69
- const headers = options && 'headers' in options && options.headers
70
- ? { ...baseHeaders, ...options.headers }
71
- : baseHeaders;
72
- return this.request(url, {
73
- ...options,
74
- method: 'PUT',
75
- body: bodyString,
76
- headers,
77
- });
78
- }
79
- async delete(url, options) {
80
- return this.request(url, { ...options, method: 'DELETE' });
81
- }
82
- }
83
- //# sourceMappingURL=FetchNetworkClient.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FetchNetworkClient.js","sourceRoot":"","sources":["../../src/network/FetchNetworkClient.ts"],"names":[],"mappings":"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"}