@explorins/pers-sdk 1.3.4 → 1.3.6
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.
- package/README.md +107 -339
- package/dist/business/index.d.ts +9 -9
- package/dist/campaign/index.d.ts +19 -19
- package/dist/chunks/{pers-sdk-Ct_uUMJl.cjs → pers-sdk-DiwCwBiC.cjs} +279 -4
- package/dist/chunks/pers-sdk-DiwCwBiC.cjs.map +1 -0
- package/dist/chunks/{pers-sdk-tKHGQr5x.js → pers-sdk-Rc8YKyNc.js} +279 -5
- package/dist/chunks/pers-sdk-Rc8YKyNc.js.map +1 -0
- package/dist/core/index.d.ts +1 -0
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core.cjs +2 -1
- package/dist/core.cjs.map +1 -1
- package/dist/core.js +1 -1
- package/dist/donation/index.d.ts +1 -1
- package/dist/index.cjs +3 -6
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +3 -6
- package/dist/index.js.map +1 -1
- package/dist/package.json +148 -147
- package/dist/payment/index.d.ts +6 -6
- package/dist/redemption/index.d.ts +10 -10
- package/dist/tenant/index.d.ts +4 -4
- package/dist/transaction/index.d.ts +4 -4
- package/dist/web3/application/web3-application.service.d.ts +3 -3
- package/dist/web3/application/web3-application.service.d.ts.map +1 -1
- package/dist/web3/domain/models/index.d.ts.map +1 -1
- package/dist/web3/domain/services/contract-domain.service.d.ts +2 -4
- package/dist/web3/domain/services/contract-domain.service.d.ts.map +1 -1
- package/dist/web3/domain/services/token-domain.service.d.ts +5 -5
- package/dist/web3/domain/services/token-domain.service.d.ts.map +1 -1
- package/dist/web3/index.d.ts +5 -5
- package/dist/web3/index.d.ts.map +1 -1
- package/dist/web3/infrastructure/api/web3-api.d.ts +4 -4
- package/dist/web3/infrastructure/api/web3-api.d.ts.map +1 -1
- package/dist/web3-chain/index.d.ts +3 -5
- package/dist/web3-chain/index.d.ts.map +1 -1
- package/dist/web3-chain/services/ethers-provider.service.d.ts +11 -0
- package/dist/web3-chain/services/ethers-provider.service.d.ts.map +1 -0
- package/dist/web3-chain/services/getWeb3FCD.service.d.ts +1 -1
- package/dist/web3-chain/services/getWeb3FCD.service.d.ts.map +1 -1
- package/dist/web3-chain/services/web3-chain-service.d.ts +7 -7
- package/dist/web3-chain/services/web3-chain-service.d.ts.map +1 -1
- package/dist/web3-chain/services/web3-provider.service.d.ts +1 -0
- package/dist/web3-chain/services/web3-provider.service.d.ts.map +1 -0
- package/dist/web3-chain.cjs +108 -231
- package/dist/web3-chain.cjs.map +1 -1
- package/dist/web3-chain.js +106 -228
- package/dist/web3-chain.js.map +1 -1
- package/dist/web3.cjs +19 -27
- package/dist/web3.cjs.map +1 -1
- package/dist/web3.js +17 -25
- package/dist/web3.js.map +1 -1
- package/package.json +148 -147
- package/dist/chunks/pers-sdk-Ct_uUMJl.cjs.map +0 -1
- package/dist/chunks/pers-sdk-tKHGQr5x.js.map +0 -1
- package/dist/web3-chain/services/provider.service.d.ts +0 -13
- package/dist/web3-chain/services/provider.service.d.ts.map +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ChainData } from "@explorins/web3-ts";
|
|
2
|
-
import { JsonRpcProvider } from 'ethers
|
|
2
|
+
import { JsonRpcProvider } from '@explorins/web3-ts/ethers';
|
|
3
3
|
export declare const getWeb3ProviderFromChainData: (chainData: ChainData, timeout?: number, customUserAgentName?: string, tokenRefresher?: () => Promise<string>) => {
|
|
4
4
|
web3Provider: null;
|
|
5
5
|
ethersProvider: JsonRpcProvider;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getWeb3FCD.service.d.ts","sourceRoot":"","sources":["../../../src/web3-chain/services/getWeb3FCD.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,eAAe,
|
|
1
|
+
{"version":3,"file":"getWeb3FCD.service.d.ts","sourceRoot":"","sources":["../../../src/web3-chain/services/getWeb3FCD.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAgB,MAAM,2BAA2B,CAAC;AAG1E,eAAO,MAAM,4BAA4B,GACvC,WAAW,SAAS,EACpB,gBAAe,EACf,4BAAwB,EACxB,iBAAiB,MAAM,OAAO,CAAC,MAAM,CAAC;;;;CA2CvC,CAAC;AAGF,eAAO,MAAM,wBAAwB,GACnC,WAAW,SAAS,EACpB,gBAAe,EACf,4BAAwB,EACxB,iBAAiB,MAAM,OAAO,CAAC,MAAM,CAAC,EACtC;;;;CAAiE;;;;EAuClE,CAAC"}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import { Web3ChainApi } from '../api/web3-chain-api';
|
|
2
2
|
import { ChainData } from '../models';
|
|
3
|
-
import
|
|
4
|
-
import { Web3ProviderService } from './provider.service';
|
|
3
|
+
import { JsonRpcProvider } from '@explorins/web3-ts/ethers';
|
|
5
4
|
export declare class Web3ChainService {
|
|
6
5
|
private web3ChainApi;
|
|
7
|
-
private providerService;
|
|
8
6
|
private web3InstanceCache;
|
|
9
|
-
|
|
10
|
-
|
|
7
|
+
private providerCache;
|
|
8
|
+
private ethersProviderService;
|
|
9
|
+
constructor(web3ChainApi: Web3ChainApi);
|
|
10
|
+
getEthersProviderByChainId(chainId: number): Promise<JsonRpcProvider>;
|
|
11
|
+
private createProviderInstance;
|
|
11
12
|
getChainDataWithCache(chainId: number): Promise<ChainData>;
|
|
12
13
|
private checkIsTokenExpired;
|
|
13
|
-
private createWeb3Instance;
|
|
14
14
|
private isAuthError;
|
|
15
|
-
getChainDataById
|
|
15
|
+
private getChainDataById;
|
|
16
16
|
}
|
|
17
17
|
//# sourceMappingURL=web3-chain-service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web3-chain-service.d.ts","sourceRoot":"","sources":["../../../src/web3-chain/services/web3-chain-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAuB,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"web3-chain-service.d.ts","sourceRoot":"","sources":["../../../src/web3-chain/services/web3-chain-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAuB,MAAM,WAAW,CAAC;AAI3D,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE5D,qBAAa,gBAAgB;IAUzB,OAAO,CAAC,YAAY;IARtB,OAAO,CAAC,iBAAiB,CAA0C;IAEnE,OAAO,CAAC,aAAa,CAA0B;IAG/C,OAAO,CAAC,qBAAqB,CAAsD;gBAGzE,YAAY,EAAE,YAAY;IAG9B,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;YA4C7D,sBAAsB;IAgBvB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAkBvE,OAAO,CAAC,mBAAmB;IAW3B,OAAO,CAAC,WAAW;YAUL,gBAAgB;CAmF/B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=web3-provider.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"web3-provider.service.d.ts","sourceRoot":"","sources":["../../../src/web3-chain/services/web3-provider.service.ts"],"names":[],"mappings":""}
|
package/dist/web3-chain.cjs
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var jwt_function = require('./chunks/jwt.function-BYiyl-z_.cjs');
|
|
4
|
-
var
|
|
5
|
-
var providers = require('ethers/providers');
|
|
6
|
-
var utils = require('ethers/utils');
|
|
4
|
+
var ethers = require('@explorins/web3-ts/ethers');
|
|
7
5
|
var persShared = require('@explorins/pers-shared');
|
|
8
6
|
require('jwt-decode');
|
|
9
7
|
|
|
@@ -27,7 +25,7 @@ class Web3ChainApi {
|
|
|
27
25
|
*/
|
|
28
26
|
async getChainData(chainId) {
|
|
29
27
|
try {
|
|
30
|
-
console.log('
|
|
28
|
+
console.log('[Web3ChainApi] Fetching chain data for chainId:', chainId);
|
|
31
29
|
const response = await this.apiClient.get(`${this.basePath}/${chainId}`);
|
|
32
30
|
if (!response) {
|
|
33
31
|
throw new Error(`No chain data received for chainId: ${chainId}`);
|
|
@@ -35,7 +33,7 @@ class Web3ChainApi {
|
|
|
35
33
|
return response;
|
|
36
34
|
}
|
|
37
35
|
catch (error) {
|
|
38
|
-
console.error('
|
|
36
|
+
console.error('[Web3ChainApi] Failed to get chain data:', {
|
|
39
37
|
chainId,
|
|
40
38
|
error: error instanceof Error ? error.message : String(error)
|
|
41
39
|
});
|
|
@@ -44,111 +42,12 @@ class Web3ChainApi {
|
|
|
44
42
|
}
|
|
45
43
|
}
|
|
46
44
|
|
|
47
|
-
class Web3ChainService {
|
|
48
|
-
constructor(web3ChainApi, providerService) {
|
|
49
|
-
this.web3ChainApi = web3ChainApi;
|
|
50
|
-
this.providerService = providerService;
|
|
51
|
-
this.web3InstanceCache = new Map();
|
|
52
|
-
}
|
|
53
|
-
async getWeb3ByChainId(chainId) {
|
|
54
|
-
const cached = this.web3InstanceCache.get(chainId);
|
|
55
|
-
// ✅ SMART CACHE: Check if cache is valid based on token expiration
|
|
56
|
-
if (cached && !this.checkIsTokenExpired(cached.chainData.authHeader)) {
|
|
57
|
-
// Using cached Web3 instance
|
|
58
|
-
return cached.web3Instance;
|
|
59
|
-
}
|
|
60
|
-
// ✅ CREATE WITH ERROR RECOVERY: Handle auth errors gracefully
|
|
61
|
-
try {
|
|
62
|
-
// Creating new Web3 instance
|
|
63
|
-
const { web3, chainData } = await this.createWeb3Instance(chainId);
|
|
64
|
-
// ✅ CACHE NEW INSTANCE
|
|
65
|
-
this.web3InstanceCache.set(chainId, {
|
|
66
|
-
web3Instance: web3,
|
|
67
|
-
chainData: chainData,
|
|
68
|
-
createdAt: Date.now(),
|
|
69
|
-
chainId
|
|
70
|
-
});
|
|
71
|
-
return web3;
|
|
72
|
-
}
|
|
73
|
-
catch (error) {
|
|
74
|
-
// ✅ AUTH ERROR RECOVERY: Clear cache and retry once
|
|
75
|
-
if (this.isAuthError(error)) {
|
|
76
|
-
// Auth error detected, clearing cache and retrying
|
|
77
|
-
this.web3InstanceCache.delete(chainId);
|
|
78
|
-
// Retry once with fresh instance
|
|
79
|
-
const { web3, chainData } = await this.createWeb3Instance(chainId);
|
|
80
|
-
this.web3InstanceCache.set(chainId, {
|
|
81
|
-
web3Instance: web3,
|
|
82
|
-
chainData: chainData,
|
|
83
|
-
createdAt: Date.now(),
|
|
84
|
-
chainId
|
|
85
|
-
});
|
|
86
|
-
return web3;
|
|
87
|
-
}
|
|
88
|
-
throw error;
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
async getChainDataWithCache(chainId) {
|
|
92
|
-
const cached = this.web3InstanceCache.get(chainId);
|
|
93
|
-
//const now = Date.now();
|
|
94
|
-
if (cached && !this.checkIsTokenExpired(cached.chainData.authHeader)) {
|
|
95
|
-
// Using cached ChainData
|
|
96
|
-
return cached.chainData;
|
|
97
|
-
}
|
|
98
|
-
// If not cached, fetch fresh data
|
|
99
|
-
const chainData = await this.getChainDataById(chainId);
|
|
100
|
-
if (!chainData) {
|
|
101
|
-
throw new Error(`Chain data not found for chainId: ${chainId}`);
|
|
102
|
-
}
|
|
103
|
-
return chainData;
|
|
104
|
-
}
|
|
105
|
-
checkIsTokenExpired(authHeader) {
|
|
106
|
-
// ✅ NULL CHECK: Handle undefined case
|
|
107
|
-
if (!authHeader) {
|
|
108
|
-
return false; // No token means no expiration (public chains)
|
|
109
|
-
}
|
|
110
|
-
// ✅ FUNCTION CALL: Use imported function, not method
|
|
111
|
-
return jwt_function.isTokenExpired(authHeader);
|
|
112
|
-
}
|
|
113
|
-
async createWeb3Instance(chainId) {
|
|
114
|
-
const chainData = await this.getChainDataById(chainId);
|
|
115
|
-
if (!chainData) {
|
|
116
|
-
throw new Error(`Chain data not found for chainId: ${chainId}`);
|
|
117
|
-
}
|
|
118
|
-
// ✅ CRITICAL CHECK: Ensure authHeader is present for private chains
|
|
119
|
-
if (chainData.chainType === 'PRIVATE' && !chainData.authHeader) {
|
|
120
|
-
console.error('❌ [Web3ChainService] CRITICAL: Private chain missing authHeader!');
|
|
121
|
-
throw new Error(`Private chain ${chainId} missing authentication header`);
|
|
122
|
-
}
|
|
123
|
-
const web3 = await this.providerService.getWeb3(chainId, chainData.chainType || 'PUBLIC', chainData);
|
|
124
|
-
return { web3, chainData };
|
|
125
|
-
}
|
|
126
|
-
// ✅ HELPER: Type-safe error checking
|
|
127
|
-
isAuthError(error) {
|
|
128
|
-
const message = error instanceof Error ? error.message.toLowerCase() : String(error).toLowerCase();
|
|
129
|
-
return (message.includes('unauthorized') ||
|
|
130
|
-
message.includes('401') ||
|
|
131
|
-
message.includes('token expired') ||
|
|
132
|
-
message.includes('invalid token'));
|
|
133
|
-
}
|
|
134
|
-
async getChainDataById(chainId) {
|
|
135
|
-
try {
|
|
136
|
-
return await this.web3ChainApi.getChainData(chainId);
|
|
137
|
-
}
|
|
138
|
-
catch (error) {
|
|
139
|
-
console.error('❌ [SDK Web3ChainService] Error getting chain data for chainId:', chainId, error);
|
|
140
|
-
return null;
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
|
|
145
45
|
// ✅ REVERT: Función síncrona como el código comentado que funciona
|
|
146
46
|
const getWeb3ProviderFromChainData = (chainData, timeout = 15000, customUserAgentName = '', tokenRefresher) => {
|
|
147
|
-
console.log(`🔧 [getWeb3FCD] Creating provider for chain ${chainData.chainId || 'unknown'}`);
|
|
148
47
|
let ethersProvider;
|
|
149
48
|
if (chainData.authHeader) {
|
|
150
49
|
// ✅ AUTHENTICATED: For private chains
|
|
151
|
-
const fetchRequest = new
|
|
50
|
+
const fetchRequest = new ethers.FetchRequest(chainData.rpcUrl);
|
|
152
51
|
fetchRequest.timeout = timeout;
|
|
153
52
|
// ✅ IMPROVED AUTH HEADER: Better handling
|
|
154
53
|
const authValue = chainData.authHeader.startsWith('Bearer ')
|
|
@@ -160,7 +59,7 @@ const getWeb3ProviderFromChainData = (chainData, timeout = 15000, customUserAgen
|
|
|
160
59
|
if (customUserAgentName) {
|
|
161
60
|
fetchRequest.setHeader('User-Agent', customUserAgentName);
|
|
162
61
|
}
|
|
163
|
-
ethersProvider = new
|
|
62
|
+
ethersProvider = new ethers.JsonRpcProvider(fetchRequest, undefined, {
|
|
164
63
|
staticNetwork: false,
|
|
165
64
|
polling: false,
|
|
166
65
|
batchMaxCount: 1, // ✅ DISABLE BATCHING: Better for private chains
|
|
@@ -168,7 +67,7 @@ const getWeb3ProviderFromChainData = (chainData, timeout = 15000, customUserAgen
|
|
|
168
67
|
}
|
|
169
68
|
else {
|
|
170
69
|
// ✅ PUBLIC: For public chains
|
|
171
|
-
ethersProvider = new
|
|
70
|
+
ethersProvider = new ethers.JsonRpcProvider(chainData.rpcUrl, undefined, {
|
|
172
71
|
staticNetwork: false,
|
|
173
72
|
polling: false,
|
|
174
73
|
});
|
|
@@ -249,64 +148,18 @@ function isAuthError(error) {
|
|
|
249
148
|
function sleep(ms) {
|
|
250
149
|
return new Promise(resolve => setTimeout(resolve, ms));
|
|
251
150
|
}
|
|
252
|
-
/*
|
|
253
|
-
//IMPORTANT//
|
|
254
|
-
//This function is temporary so we install ethers just to make it work, once we delete this function we must uninstall Ethers
|
|
255
|
-
|
|
256
|
-
import { ChainData } from "@explorins/web3-ts";
|
|
257
|
-
import { FetchRequest, JsonRpcProvider } from "ethers";
|
|
258
|
-
|
|
259
|
-
export const getWeb3ProviderFromChainData = (
|
|
260
|
-
chainData: ChainData,
|
|
261
|
-
timeout = 15000,
|
|
262
|
-
customUserAgentName = '',
|
|
263
|
-
tokenRefresher?: () => Promise<string>
|
|
264
|
-
) => {
|
|
265
151
|
|
|
266
|
-
|
|
267
|
-
let ethersProvider: JsonRpcProvider;
|
|
268
|
-
|
|
269
|
-
if (chainData.authHeader) {
|
|
270
|
-
// For authenticated requests, create a custom FetchRequest
|
|
271
|
-
const fetchRequest = new FetchRequest(chainData.rpcUrl);
|
|
272
|
-
fetchRequest.timeout = timeout;
|
|
273
|
-
fetchRequest.setHeader('Authorization', chainData.authHeader);
|
|
274
|
-
fetchRequest.setHeader('Content-Type', 'application/json');
|
|
275
|
-
|
|
276
|
-
if (customUserAgentName) {
|
|
277
|
-
fetchRequest.setHeader('User-Agent', customUserAgentName);
|
|
278
|
-
}
|
|
279
|
-
|
|
280
|
-
// Create provider with the configured FetchRequest
|
|
281
|
-
ethersProvider = new JsonRpcProvider(fetchRequest, undefined, {
|
|
282
|
-
staticNetwork: false,
|
|
283
|
-
polling: false, // Disable polling for better Lambda performance
|
|
284
|
-
});
|
|
285
|
-
} else {
|
|
286
|
-
// For public chains, use simple URL-based provider
|
|
287
|
-
ethersProvider = new JsonRpcProvider(chainData.rpcUrl, undefined, {
|
|
288
|
-
staticNetwork: false,
|
|
289
|
-
polling: false,
|
|
290
|
-
});
|
|
291
|
-
}
|
|
292
|
-
|
|
293
|
-
return {
|
|
294
|
-
web3Provider: null,
|
|
295
|
-
ethersProvider: ethersProvider,
|
|
296
|
-
isAuthenticated: !!chainData.authHeader,
|
|
297
|
-
};
|
|
298
|
-
}; */
|
|
299
|
-
|
|
300
|
-
class Web3ProviderService {
|
|
152
|
+
class EthersProviderService {
|
|
301
153
|
constructor() {
|
|
302
|
-
this.
|
|
154
|
+
this._provider = null;
|
|
303
155
|
this._currentChainId = null;
|
|
304
156
|
this._creationPromise = null;
|
|
157
|
+
console.log('[PERS SDK] EthersProviderService initialized with enhanced instanceof handling');
|
|
305
158
|
}
|
|
306
|
-
async
|
|
159
|
+
async getEthersProvider(chainId, chainType, chainData) {
|
|
307
160
|
// ✅ EARLY RETURN: Reuse existing provider
|
|
308
|
-
if (this.
|
|
309
|
-
return this.
|
|
161
|
+
if (this._provider && this._currentChainId === chainId) {
|
|
162
|
+
return this._provider;
|
|
310
163
|
}
|
|
311
164
|
// ✅ PREVENT RACE CONDITION: Wait for ongoing creation
|
|
312
165
|
if (this._creationPromise) {
|
|
@@ -317,91 +170,116 @@ class Web3ProviderService {
|
|
|
317
170
|
if (!chainData)
|
|
318
171
|
throw new Error('ChainData not found');
|
|
319
172
|
// ✅ CREATE AND CACHE: Single promise for concurrent calls
|
|
320
|
-
|
|
173
|
+
const ethersPromise = this.createEthersProvider(chainId, chainType, chainData);
|
|
321
174
|
try {
|
|
322
|
-
const
|
|
323
|
-
this.
|
|
175
|
+
const { web3Provider, ethersProvider, isAuthenticated } = await ethersPromise;
|
|
176
|
+
this._provider = ethersProvider;
|
|
324
177
|
this._currentChainId = chainId;
|
|
325
|
-
return
|
|
178
|
+
return ethersProvider;
|
|
326
179
|
}
|
|
327
180
|
finally {
|
|
328
181
|
// ✅ CLEANUP: Always reset promise after completion
|
|
329
182
|
this._creationPromise = null;
|
|
330
183
|
}
|
|
331
184
|
}
|
|
332
|
-
async
|
|
185
|
+
async createEthersProvider(chainId, chainType, chainData) {
|
|
186
|
+
console.log(`🔧 [createProvider] Creating provider for chain ${chainId}`);
|
|
333
187
|
const provider = await getWeb3ProviderWithRetry(chainData);
|
|
334
|
-
return
|
|
188
|
+
return provider;
|
|
335
189
|
}
|
|
336
|
-
|
|
337
|
-
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
class Web3ChainService {
|
|
193
|
+
constructor(web3ChainApi) {
|
|
194
|
+
this.web3ChainApi = web3ChainApi;
|
|
195
|
+
this.web3InstanceCache = new Map();
|
|
196
|
+
// TODO: Fix any
|
|
197
|
+
this.providerCache = new Map();
|
|
198
|
+
// private providerService: Web3ProviderService = new Web3ProviderService();
|
|
199
|
+
this.ethersProviderService = new EthersProviderService();
|
|
200
|
+
}
|
|
201
|
+
async getEthersProviderByChainId(chainId) {
|
|
202
|
+
const cached = this.providerCache.get(chainId);
|
|
203
|
+
// ✅ SMART CACHE: Check if cache is valid based on token expiration
|
|
204
|
+
if (cached && !this.checkIsTokenExpired(cached.authHeader)) {
|
|
205
|
+
// Using cached provider
|
|
206
|
+
return cached.provider;
|
|
207
|
+
}
|
|
338
208
|
try {
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
209
|
+
// Creating new Web3 instance
|
|
210
|
+
const { provider, chainData } = await this.createProviderInstance(chainId);
|
|
211
|
+
this.providerCache.set(chainId, {
|
|
212
|
+
provider,
|
|
213
|
+
chainData,
|
|
214
|
+
createdAt: Date.now(),
|
|
215
|
+
chainId
|
|
216
|
+
});
|
|
217
|
+
return provider;
|
|
344
218
|
}
|
|
345
219
|
catch (error) {
|
|
346
|
-
//
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
220
|
+
// ✅ AUTH ERROR RECOVERY: Clear cache and retry once
|
|
221
|
+
if (this.isAuthError(error)) {
|
|
222
|
+
// Auth error detected, clearing cache and retrying
|
|
223
|
+
this.providerCache.delete(chainId);
|
|
224
|
+
// Retry once with fresh instance
|
|
225
|
+
const { provider, chainData } = await this.createProviderInstance(chainId);
|
|
226
|
+
this.providerCache.set(chainId, {
|
|
227
|
+
provider,
|
|
228
|
+
chainData,
|
|
229
|
+
createdAt: Date.now(),
|
|
230
|
+
chainId
|
|
231
|
+
});
|
|
357
232
|
return provider;
|
|
358
233
|
}
|
|
234
|
+
throw error;
|
|
359
235
|
}
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
}*/
|
|
366
|
-
if (providerObj.ethersProvider) {
|
|
367
|
-
const url = this.extractUrlFromEthersProvider(providerObj.ethersProvider);
|
|
368
|
-
const headers = this.extractHeadersFromEthersProvider(providerObj.ethersProvider);
|
|
369
|
-
const web3 = new Web3(url);
|
|
370
|
-
const currentProvider = web3.currentProvider;
|
|
371
|
-
if (currentProvider) {
|
|
372
|
-
currentProvider['url'] = url;
|
|
373
|
-
if (headers && Object.keys(headers).length > 0) {
|
|
374
|
-
currentProvider['request'] = async (payload) => {
|
|
375
|
-
const response = await fetch(url, {
|
|
376
|
-
method: 'POST',
|
|
377
|
-
headers: {
|
|
378
|
-
'Content-Type': 'application/json',
|
|
379
|
-
...headers
|
|
380
|
-
},
|
|
381
|
-
body: JSON.stringify(payload)
|
|
382
|
-
});
|
|
383
|
-
if (!response.ok) {
|
|
384
|
-
throw new Error(`HTTP ${response.status}: ${response.statusText}`);
|
|
385
|
-
}
|
|
386
|
-
return await response.json();
|
|
387
|
-
};
|
|
388
|
-
}
|
|
389
|
-
}
|
|
390
|
-
return web3;
|
|
391
|
-
}
|
|
236
|
+
}
|
|
237
|
+
async createProviderInstance(chainId) {
|
|
238
|
+
const chainData = await this.getChainDataById(chainId);
|
|
239
|
+
if (!chainData) {
|
|
240
|
+
throw new Error(`Chain data not found for chainId: ${chainId}`);
|
|
392
241
|
}
|
|
393
|
-
|
|
242
|
+
const provider = await this.ethersProviderService.getEthersProvider(chainId, chainData.chainType || 'PUBLIC', chainData);
|
|
243
|
+
return { provider, chainData };
|
|
394
244
|
}
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
245
|
+
async getChainDataWithCache(chainId) {
|
|
246
|
+
const cached = this.web3InstanceCache.get(chainId);
|
|
247
|
+
//const now = Date.now();
|
|
248
|
+
if (cached && !this.checkIsTokenExpired(cached.chainData.authHeader)) {
|
|
249
|
+
// Using cached ChainData
|
|
250
|
+
return cached.chainData;
|
|
251
|
+
}
|
|
252
|
+
// If not cached, fetch fresh data
|
|
253
|
+
const chainData = await this.getChainDataById(chainId);
|
|
254
|
+
if (!chainData) {
|
|
255
|
+
throw new Error(`Chain data not found for chainId: ${chainId}`);
|
|
256
|
+
}
|
|
257
|
+
return chainData;
|
|
400
258
|
}
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
259
|
+
checkIsTokenExpired(authHeader) {
|
|
260
|
+
// ✅ NULL CHECK: Handle undefined case
|
|
261
|
+
if (!authHeader) {
|
|
262
|
+
return false; // No token means no expiration (public chains)
|
|
263
|
+
}
|
|
264
|
+
// ✅ FUNCTION CALL: Use imported function, not method
|
|
265
|
+
return jwt_function.isTokenExpired(authHeader);
|
|
266
|
+
}
|
|
267
|
+
// ✅ HELPER: Type-safe error checking
|
|
268
|
+
isAuthError(error) {
|
|
269
|
+
const message = error instanceof Error ? error.message.toLowerCase() : String(error).toLowerCase();
|
|
270
|
+
return (message.includes('unauthorized') ||
|
|
271
|
+
message.includes('401') ||
|
|
272
|
+
message.includes('token expired') ||
|
|
273
|
+
message.includes('invalid token'));
|
|
274
|
+
}
|
|
275
|
+
async getChainDataById(chainId) {
|
|
276
|
+
try {
|
|
277
|
+
return await this.web3ChainApi.getChainData(chainId);
|
|
278
|
+
}
|
|
279
|
+
catch (error) {
|
|
280
|
+
console.error('❌ [SDK Web3ChainService] Error getting chain data for chainId:', chainId, error);
|
|
281
|
+
return null;
|
|
282
|
+
}
|
|
405
283
|
}
|
|
406
284
|
}
|
|
407
285
|
|
|
@@ -416,13 +294,13 @@ const ChainTypes = {
|
|
|
416
294
|
PRIVATE: 'PRIVATE'
|
|
417
295
|
};
|
|
418
296
|
|
|
419
|
-
function createWeb3ChainSDK(apiClient
|
|
297
|
+
function createWeb3ChainSDK(apiClient) {
|
|
420
298
|
const web3ChainApi = new Web3ChainApi(apiClient);
|
|
421
|
-
const web3ChainService = new Web3ChainService(web3ChainApi
|
|
299
|
+
const web3ChainService = new Web3ChainService(web3ChainApi);
|
|
422
300
|
return {
|
|
423
|
-
|
|
424
|
-
getChainDataById: (chainId) => web3ChainService.
|
|
425
|
-
getWeb3ByChainId: (chainId) => web3ChainService.getWeb3ByChainId(chainId),
|
|
301
|
+
getEthersProviderByChainId: (chainId) => web3ChainService.getEthersProviderByChainId(chainId),
|
|
302
|
+
getChainDataById: (chainId) => web3ChainService.getChainDataWithCache(chainId),
|
|
303
|
+
// getWeb3ByChainId: (chainId: number) => web3ChainService.getWeb3ByChainId(chainId),
|
|
426
304
|
api: web3ChainApi,
|
|
427
305
|
service: web3ChainService
|
|
428
306
|
};
|
|
@@ -435,6 +313,5 @@ Object.defineProperty(exports, "AccountOwnerType", {
|
|
|
435
313
|
exports.ChainTypes = ChainTypes;
|
|
436
314
|
exports.Web3ChainApi = Web3ChainApi;
|
|
437
315
|
exports.Web3ChainService = Web3ChainService;
|
|
438
|
-
exports.Web3ProviderService = Web3ProviderService;
|
|
439
316
|
exports.createWeb3ChainSDK = createWeb3ChainSDK;
|
|
440
317
|
//# sourceMappingURL=web3-chain.cjs.map
|
package/dist/web3-chain.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web3-chain.cjs","sources":["../src/web3-chain/api/web3-chain-api.ts","../src/web3-chain/services/web3-chain-service.ts","../src/web3-chain/services/getWeb3FCD.service.ts","../src/web3-chain/services/provider.service.ts","../src/web3-chain/models/index.ts","../src/web3-chain/index.ts"],"sourcesContent":[null,null,null,null,null,null],"names":["isTokenExpired","FetchRequest","JsonRpcProvider"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"web3-chain.cjs","sources":["../src/web3-chain/api/web3-chain-api.ts","../src/web3-chain/services/getWeb3FCD.service.ts","../src/web3-chain/services/ethers-provider.service.ts","../src/web3-chain/services/web3-chain-service.ts","../src/web3-chain/models/index.ts","../src/web3-chain/index.ts"],"sourcesContent":[null,null,null,null,null,null],"names":["FetchRequest","JsonRpcProvider","isTokenExpired"],"mappings":"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"}
|