@explorins/pers-sdk 2.0.7 → 2.0.11
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 +113 -59
- package/dist/analytics/index.d.ts +0 -2
- package/dist/analytics/index.d.ts.map +1 -1
- package/dist/analytics/models/index.d.ts +1 -10
- package/dist/analytics/models/index.d.ts.map +1 -1
- package/dist/analytics.cjs +44 -29
- package/dist/analytics.cjs.map +1 -1
- package/dist/analytics.js +45 -2
- package/dist/analytics.js.map +1 -1
- package/dist/business/index.d.ts +0 -1
- package/dist/business/index.d.ts.map +1 -1
- package/dist/business.cjs +7 -774
- package/dist/business.cjs.map +1 -1
- package/dist/business.js +3 -751
- package/dist/business.js.map +1 -1
- package/dist/campaign/index.d.ts +0 -1
- package/dist/campaign/index.d.ts.map +1 -1
- package/dist/campaign.cjs +429 -29
- package/dist/campaign.cjs.map +1 -1
- package/dist/campaign.js +431 -3
- package/dist/campaign.js.map +1 -1
- package/dist/chunks/business-membership-service-8KC_qRj7.cjs +756 -0
- package/dist/chunks/business-membership-service-8KC_qRj7.cjs.map +1 -0
- package/dist/chunks/business-membership-service-D6vaVQTR.js +751 -0
- package/dist/chunks/business-membership-service-D6vaVQTR.js.map +1 -0
- package/dist/chunks/{web3-chain-service-BeBjALg2.cjs → index-B-g2JPVK.cjs} +1 -220
- package/dist/chunks/index-B-g2JPVK.cjs.map +1 -0
- package/dist/chunks/{web3-chain-service-DKHCnHQX.js → index-CKm_V5XE.js} +2 -219
- package/dist/chunks/index-CKm_V5XE.js.map +1 -0
- package/dist/chunks/payment-service-Bkw7ZXev.cjs +214 -0
- package/dist/chunks/payment-service-Bkw7ZXev.cjs.map +1 -0
- package/dist/chunks/payment-service-IvM6rryM.js +211 -0
- package/dist/chunks/payment-service-IvM6rryM.js.map +1 -0
- package/dist/chunks/{pers-sdk-JIExM712.js → pers-sdk-DYnIZvcx.js} +12 -291
- package/dist/chunks/pers-sdk-DYnIZvcx.js.map +1 -0
- package/dist/chunks/{pers-sdk-h-uoLpBx.cjs → pers-sdk-Dr9W8stD.cjs} +38 -318
- package/dist/chunks/pers-sdk-Dr9W8stD.cjs.map +1 -0
- package/dist/chunks/redemption-service-D-hBqh42.js +339 -0
- package/dist/chunks/redemption-service-D-hBqh42.js.map +1 -0
- package/dist/chunks/redemption-service-rMB6T2W5.cjs +342 -0
- package/dist/chunks/redemption-service-rMB6T2W5.cjs.map +1 -0
- package/dist/chunks/tenant-service-CsRA3O2V.js +163 -0
- package/dist/chunks/tenant-service-CsRA3O2V.js.map +1 -0
- package/dist/chunks/tenant-service-fj-pkXTw.cjs +166 -0
- package/dist/chunks/tenant-service-fj-pkXTw.cjs.map +1 -0
- package/dist/chunks/{transaction-request.builder-DrqTWcyC.cjs → transaction-request.builder-BwWmfHXm.cjs} +6 -6
- package/dist/chunks/{transaction-request.builder-DrqTWcyC.cjs.map → transaction-request.builder-BwWmfHXm.cjs.map} +1 -1
- package/dist/chunks/{transaction-request.builder-DltmruUC.js → transaction-request.builder-C1FPWmYN.js} +6 -6
- package/dist/chunks/{transaction-request.builder-DltmruUC.js.map → transaction-request.builder-C1FPWmYN.js.map} +1 -1
- package/dist/chunks/web3-chain-service-D68-0WaW.cjs +224 -0
- package/dist/chunks/web3-chain-service-D68-0WaW.cjs.map +1 -0
- package/dist/chunks/web3-chain-service-DuvxmKSj.js +221 -0
- package/dist/chunks/web3-chain-service-DuvxmKSj.js.map +1 -0
- package/dist/chunks/{explorer.utils-Cx3wrqAj.cjs → web3-manager-C_cFaMCm.cjs} +411 -144
- package/dist/chunks/web3-manager-C_cFaMCm.cjs.map +1 -0
- package/dist/chunks/{explorer.utils-BkS3k8hX.js → web3-manager-OExwBWB7.js} +412 -146
- package/dist/chunks/web3-manager-OExwBWB7.js.map +1 -0
- package/dist/core.cjs +18 -21
- package/dist/core.cjs.map +1 -1
- package/dist/core.js +10 -12
- package/dist/core.js.map +1 -1
- package/dist/donation/index.d.ts +0 -1
- package/dist/donation/index.d.ts.map +1 -1
- package/dist/donation.cjs +48 -29
- package/dist/donation.cjs.map +1 -1
- package/dist/donation.js +50 -3
- package/dist/donation.js.map +1 -1
- package/dist/index.cjs +43 -69
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +1 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +13 -15
- package/dist/index.js.map +1 -1
- package/dist/managers/analytics-manager.d.ts +1 -1
- package/dist/managers/index.d.ts +0 -1
- package/dist/managers/index.d.ts.map +1 -1
- package/dist/managers/web3-manager.d.ts +1 -1
- package/dist/managers/web3-manager.d.ts.map +1 -1
- package/dist/node.cjs +10 -13
- package/dist/node.cjs.map +1 -1
- package/dist/node.js +10 -13
- package/dist/node.js.map +1 -1
- package/dist/package.json +4 -10
- package/dist/payment/index.d.ts +0 -1
- package/dist/payment/index.d.ts.map +1 -1
- package/dist/payment.cjs +5 -232
- package/dist/payment.cjs.map +1 -1
- package/dist/payment.js +3 -210
- package/dist/payment.js.map +1 -1
- package/dist/pers-sdk.d.ts +1 -13
- package/dist/pers-sdk.d.ts.map +1 -1
- package/dist/redemption/index.d.ts +0 -1
- package/dist/redemption/index.d.ts.map +1 -1
- package/dist/redemption/services/redemption-service.d.ts +1 -2
- package/dist/redemption/services/redemption-service.d.ts.map +1 -1
- package/dist/redemption.cjs +5 -360
- package/dist/redemption.cjs.map +1 -1
- package/dist/redemption.js +3 -338
- package/dist/redemption.js.map +1 -1
- package/dist/shared/interfaces/pers-shared-lib.interfaces.d.ts +15 -21
- package/dist/shared/interfaces/pers-shared-lib.interfaces.d.ts.map +1 -1
- package/dist/tenant/index.d.ts +0 -1
- package/dist/tenant/index.d.ts.map +1 -1
- package/dist/tenant.cjs +5 -184
- package/dist/tenant.cjs.map +1 -1
- package/dist/tenant.js +3 -162
- package/dist/tenant.js.map +1 -1
- package/dist/token/index.d.ts +0 -1
- package/dist/token/index.d.ts.map +1 -1
- package/dist/token.cjs +1 -25
- package/dist/token.cjs.map +1 -1
- package/dist/token.js +1 -1
- package/dist/transaction/models/transaction-request.builder.d.ts +4 -4
- package/dist/transaction/models/transaction-request.builder.d.ts.map +1 -1
- package/dist/transaction.cjs +1 -1
- package/dist/transaction.js +1 -1
- package/dist/user/index.d.ts +0 -1
- package/dist/user/index.d.ts.map +1 -1
- package/dist/user-status/index.d.ts +0 -1
- package/dist/user-status/index.d.ts.map +1 -1
- package/dist/user-status.cjs +0 -25
- package/dist/user-status.cjs.map +1 -1
- package/dist/user-status.js +0 -1
- package/dist/user-status.js.map +1 -1
- package/dist/user.cjs +209 -29
- package/dist/user.cjs.map +1 -1
- package/dist/user.js +211 -3
- package/dist/user.js.map +1 -1
- package/dist/web3/index.d.ts +1 -0
- package/dist/web3/index.d.ts.map +1 -1
- package/dist/web3-chain/index.d.ts +0 -1
- package/dist/web3-chain/index.d.ts.map +1 -1
- package/dist/web3-chain.cjs +14 -29
- package/dist/web3-chain.cjs.map +1 -1
- package/dist/web3-chain.js +16 -3
- package/dist/web3-chain.js.map +1 -1
- package/dist/web3-manager.cjs +13 -0
- package/dist/web3-manager.cjs.map +1 -0
- package/dist/web3-manager.js +7 -0
- package/dist/web3-manager.js.map +1 -0
- package/dist/web3.cjs +10 -6
- package/dist/web3.cjs.map +1 -1
- package/dist/web3.js +4 -1
- package/dist/web3.js.map +1 -1
- package/package.json +4 -10
- package/dist/chunks/analytics-service-CitlimKJ.cjs +0 -49
- package/dist/chunks/analytics-service-CitlimKJ.cjs.map +0 -1
- package/dist/chunks/analytics-service-CxyrOwel.js +0 -46
- package/dist/chunks/analytics-service-CxyrOwel.js.map +0 -1
- package/dist/chunks/campaign-service-CdEz0jpP.cjs +0 -435
- package/dist/chunks/campaign-service-CdEz0jpP.cjs.map +0 -1
- package/dist/chunks/campaign-service-DrTAqFZM.js +0 -432
- package/dist/chunks/campaign-service-DrTAqFZM.js.map +0 -1
- package/dist/chunks/donation-service--6cnTvWq.cjs +0 -54
- package/dist/chunks/donation-service--6cnTvWq.cjs.map +0 -1
- package/dist/chunks/donation-service-xiXZ2Eto.js +0 -51
- package/dist/chunks/donation-service-xiXZ2Eto.js.map +0 -1
- package/dist/chunks/explorer.utils-BkS3k8hX.js.map +0 -1
- package/dist/chunks/explorer.utils-Cx3wrqAj.cjs.map +0 -1
- package/dist/chunks/index-BtDNXaFq.js +0 -13
- package/dist/chunks/index-BtDNXaFq.js.map +0 -1
- package/dist/chunks/index-CMk3Aqkk.cjs +0 -15
- package/dist/chunks/index-CMk3Aqkk.cjs.map +0 -1
- package/dist/chunks/pers-sdk-JIExM712.js.map +0 -1
- package/dist/chunks/pers-sdk-h-uoLpBx.cjs.map +0 -1
- package/dist/chunks/user-service-BGP3SZpk.js +0 -212
- package/dist/chunks/user-service-BGP3SZpk.js.map +0 -1
- package/dist/chunks/user-service-gITOx4qj.cjs +0 -215
- package/dist/chunks/user-service-gITOx4qj.cjs.map +0 -1
- package/dist/chunks/web3-chain-service-BeBjALg2.cjs.map +0 -1
- package/dist/chunks/web3-chain-service-DKHCnHQX.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"business-membership-service-D6vaVQTR.js","sources":["../../src/business/api/business-api.ts","../../src/business/api/business-membership-api.ts","../../src/business/services/business-service.ts","../../src/business/services/business-membership-service.ts"],"sourcesContent":[null,null,null,null],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var persShared = require('@explorins/pers-shared');
|
|
4
|
-
var index = require('./index-B6-bbNnd.cjs');
|
|
5
|
-
var ethers = require('@explorins/web3-ts/ethers');
|
|
6
4
|
|
|
7
5
|
/**
|
|
8
6
|
* JWT token expiration utilities
|
|
@@ -277,221 +275,6 @@ const ApiErrorDetector = {
|
|
|
277
275
|
ErrorUtils.isTokenExpiredError(error)
|
|
278
276
|
};
|
|
279
277
|
|
|
280
|
-
/**
|
|
281
|
-
* Platform-Agnostic Web3 Chain API Client
|
|
282
|
-
*
|
|
283
|
-
* Handles blockchain chain operations using the PERS backend.
|
|
284
|
-
* Uses @explorins/web3-ts types for perfect framework compatibility.
|
|
285
|
-
*/
|
|
286
|
-
class Web3ChainApi {
|
|
287
|
-
constructor(apiClient) {
|
|
288
|
-
this.apiClient = apiClient;
|
|
289
|
-
this.basePath = '/chains';
|
|
290
|
-
}
|
|
291
|
-
// ==========================================
|
|
292
|
-
// PUBLIC OPERATIONS
|
|
293
|
-
// ==========================================
|
|
294
|
-
/**
|
|
295
|
-
* PUBLIC: Get chain data by chain ID
|
|
296
|
-
*/
|
|
297
|
-
async getChainData(chainId) {
|
|
298
|
-
try {
|
|
299
|
-
const response = await this.apiClient.get(`${this.basePath}/${chainId}`);
|
|
300
|
-
if (!response) {
|
|
301
|
-
throw new Error(`No chain data received for chainId: ${chainId}`);
|
|
302
|
-
}
|
|
303
|
-
return response;
|
|
304
|
-
}
|
|
305
|
-
catch (error) {
|
|
306
|
-
console.error('[Web3ChainApi] Failed to get chain data:', {
|
|
307
|
-
chainId,
|
|
308
|
-
error: error instanceof Error ? error.message : String(error)
|
|
309
|
-
});
|
|
310
|
-
throw error;
|
|
311
|
-
}
|
|
312
|
-
}
|
|
313
|
-
}
|
|
314
|
-
|
|
315
|
-
/**
|
|
316
|
-
* Create Web3 provider from chain data
|
|
317
|
-
* Synchronous function for immediate provider creation
|
|
318
|
-
*/
|
|
319
|
-
const getWeb3ProviderFromChainData = (chainData, timeout = 15000, customUserAgentName = '', tokenRefresher) => {
|
|
320
|
-
let ethersProvider;
|
|
321
|
-
if (chainData.authHeader) {
|
|
322
|
-
// Authenticated provider for private chains
|
|
323
|
-
const fetchRequest = new ethers.FetchRequest(chainData.rpcUrl);
|
|
324
|
-
fetchRequest.timeout = timeout;
|
|
325
|
-
// Handle auth header format
|
|
326
|
-
const authValue = chainData.authHeader.startsWith('Bearer ')
|
|
327
|
-
? chainData.authHeader
|
|
328
|
-
: `Bearer ${chainData.authHeader}`;
|
|
329
|
-
fetchRequest.setHeader('Authorization', authValue);
|
|
330
|
-
fetchRequest.setHeader('Content-Type', 'application/json');
|
|
331
|
-
fetchRequest.setHeader('Accept', 'application/json');
|
|
332
|
-
if (customUserAgentName) {
|
|
333
|
-
fetchRequest.setHeader('User-Agent', customUserAgentName);
|
|
334
|
-
}
|
|
335
|
-
ethersProvider = new ethers.JsonRpcProvider(fetchRequest, chainData.chainId, {
|
|
336
|
-
staticNetwork: true, // Prevent eth_chainId calls - we know the chain
|
|
337
|
-
polling: false,
|
|
338
|
-
batchMaxCount: 1, // Disable batching for private chains
|
|
339
|
-
});
|
|
340
|
-
}
|
|
341
|
-
else {
|
|
342
|
-
// Public provider for public chains
|
|
343
|
-
ethersProvider = new ethers.JsonRpcProvider(chainData.rpcUrl, chainData.chainId, {
|
|
344
|
-
staticNetwork: true, // Prevent eth_chainId calls - we know the chain
|
|
345
|
-
polling: false,
|
|
346
|
-
});
|
|
347
|
-
}
|
|
348
|
-
return ethersProvider;
|
|
349
|
-
};
|
|
350
|
-
/**
|
|
351
|
-
* Async wrapper with retry logic for higher-level usage
|
|
352
|
-
*/
|
|
353
|
-
const getWeb3ProviderWithRetry = async (chainData, timeout = 15000, customUserAgentName = '', tokenRefresher, retryConfig = { maxAttempts: 3, baseDelay: 1000, maxDelay: 8000 }) => {
|
|
354
|
-
let lastError = null;
|
|
355
|
-
for (let attempt = 1; attempt <= retryConfig.maxAttempts; attempt++) {
|
|
356
|
-
try {
|
|
357
|
-
const provider = getWeb3ProviderFromChainData(chainData, timeout, customUserAgentName, tokenRefresher);
|
|
358
|
-
await validateChainConnection(provider, chainData.authHeader ? 'private' : 'public');
|
|
359
|
-
return provider;
|
|
360
|
-
}
|
|
361
|
-
catch (error) {
|
|
362
|
-
lastError = error instanceof Error ? error : new Error(String(error));
|
|
363
|
-
// Stop retrying on auth errors for authenticated chains
|
|
364
|
-
if (ApiErrorDetector.isAuthError(lastError) && chainData.authHeader) {
|
|
365
|
-
break;
|
|
366
|
-
}
|
|
367
|
-
if (attempt === retryConfig.maxAttempts)
|
|
368
|
-
break;
|
|
369
|
-
const delay = Math.min(retryConfig.baseDelay * Math.pow(2, attempt - 1), retryConfig.maxDelay);
|
|
370
|
-
await sleep(delay);
|
|
371
|
-
}
|
|
372
|
-
}
|
|
373
|
-
throw new Error(`Failed to create Web3 provider after ${retryConfig.maxAttempts} attempts. Last error: ${lastError?.message}`);
|
|
374
|
-
};
|
|
375
|
-
async function validateChainConnection(provider, chainType) {
|
|
376
|
-
try {
|
|
377
|
-
// Lightweight test using eth_chainId (works for both public and private)
|
|
378
|
-
const timeoutPromise = new Promise((_, reject) => {
|
|
379
|
-
setTimeout(() => reject(new Error(`${chainType} chain validation timeout`)), 3000);
|
|
380
|
-
});
|
|
381
|
-
const chainIdPromise = provider.send('eth_chainId', []);
|
|
382
|
-
await Promise.race([chainIdPromise, timeoutPromise]);
|
|
383
|
-
}
|
|
384
|
-
catch (error) {
|
|
385
|
-
// Fallback: try net_version if chainId fails
|
|
386
|
-
try {
|
|
387
|
-
const timeoutPromise = new Promise((_, reject) => {
|
|
388
|
-
setTimeout(() => reject(new Error(`${chainType} chain fallback validation timeout`)), 3000);
|
|
389
|
-
});
|
|
390
|
-
const versionPromise = provider.send('net_version', []);
|
|
391
|
-
await Promise.race([versionPromise, timeoutPromise]);
|
|
392
|
-
}
|
|
393
|
-
catch (fallbackError) {
|
|
394
|
-
throw new Error(`${chainType} chain validation failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
395
|
-
}
|
|
396
|
-
}
|
|
397
|
-
}
|
|
398
|
-
function sleep(ms) {
|
|
399
|
-
return new Promise(resolve => setTimeout(resolve, ms));
|
|
400
|
-
}
|
|
401
|
-
|
|
402
|
-
class Web3ChainService {
|
|
403
|
-
constructor(web3ChainApi) {
|
|
404
|
-
this.web3ChainApi = web3ChainApi;
|
|
405
|
-
this.cache = index.globalCacheService.createNamespace('web3-chain');
|
|
406
|
-
}
|
|
407
|
-
async getEthersProviderByChainId(chainId) {
|
|
408
|
-
const cacheKey = `provider:${chainId}`;
|
|
409
|
-
// Check if we have a valid cached provider
|
|
410
|
-
const cached = this.cache.get(cacheKey);
|
|
411
|
-
if (cached && !this.checkIsTokenExpired(cached.chainData.authHeader)) {
|
|
412
|
-
return cached.provider;
|
|
413
|
-
}
|
|
414
|
-
try {
|
|
415
|
-
// Create new provider instance
|
|
416
|
-
const { provider, chainData } = await this.createProviderInstance(chainId);
|
|
417
|
-
// Cache the provider with chain data
|
|
418
|
-
const cacheEntry = {
|
|
419
|
-
provider,
|
|
420
|
-
chainData,
|
|
421
|
-
createdAt: Date.now(),
|
|
422
|
-
chainId
|
|
423
|
-
};
|
|
424
|
-
this.cache.set(cacheKey, cacheEntry, index.CacheTTL.PROVIDER);
|
|
425
|
-
return provider;
|
|
426
|
-
}
|
|
427
|
-
catch (error) {
|
|
428
|
-
// ✅ AUTH ERROR RECOVERY: Clear cache and retry once
|
|
429
|
-
if (ApiErrorDetector.isAuthError(error)) {
|
|
430
|
-
this.cache.delete(cacheKey);
|
|
431
|
-
// Retry once with fresh instance
|
|
432
|
-
const { provider, chainData } = await this.createProviderInstance(chainId);
|
|
433
|
-
const cacheEntry = {
|
|
434
|
-
provider,
|
|
435
|
-
chainData,
|
|
436
|
-
createdAt: Date.now(),
|
|
437
|
-
chainId
|
|
438
|
-
};
|
|
439
|
-
this.cache.set(cacheKey, cacheEntry, index.CacheTTL.PROVIDER);
|
|
440
|
-
return provider;
|
|
441
|
-
}
|
|
442
|
-
throw error;
|
|
443
|
-
}
|
|
444
|
-
}
|
|
445
|
-
async createProviderInstance(chainId) {
|
|
446
|
-
const chainData = await this.getChainDataWithCache(chainId);
|
|
447
|
-
if (!chainData) {
|
|
448
|
-
throw new Error(`Chain data not found for chainId: ${chainId}`);
|
|
449
|
-
}
|
|
450
|
-
const provider = await getWeb3ProviderWithRetry(chainData);
|
|
451
|
-
return { provider, chainData };
|
|
452
|
-
}
|
|
453
|
-
async getChainDataWithCache(chainId) {
|
|
454
|
-
const cacheKey = `chainData:${chainId}`;
|
|
455
|
-
// First check if we have it in the provider cache (includes token validation)
|
|
456
|
-
const providerCached = this.cache.get(`provider:${chainId}`);
|
|
457
|
-
if (providerCached && !this.checkIsTokenExpired(providerCached.chainData.authHeader)) {
|
|
458
|
-
return providerCached.chainData;
|
|
459
|
-
}
|
|
460
|
-
// Otherwise use getOrSet for chainData only
|
|
461
|
-
return this.cache.getOrSet(cacheKey, async () => {
|
|
462
|
-
const chainData = await this.web3ChainApi.getChainData(chainId);
|
|
463
|
-
if (!chainData) {
|
|
464
|
-
throw new Error(`Chain data not found for chainId: ${chainId}`);
|
|
465
|
-
}
|
|
466
|
-
return chainData;
|
|
467
|
-
}, index.CacheTTL.MEDIUM // 30 minutes for chain data
|
|
468
|
-
);
|
|
469
|
-
}
|
|
470
|
-
checkIsTokenExpired(authHeader) {
|
|
471
|
-
// NULL CHECK: Handle undefined case
|
|
472
|
-
if (!authHeader) {
|
|
473
|
-
return false; // No token means no expiration (public chains)
|
|
474
|
-
}
|
|
475
|
-
// FUNCTION CALL: Use imported function, not method
|
|
476
|
-
return isTokenExpired(authHeader);
|
|
477
|
-
}
|
|
478
|
-
/**
|
|
479
|
-
* Clear all cached providers and chain data
|
|
480
|
-
* Useful for logout scenarios or when authentication context changes
|
|
481
|
-
*/
|
|
482
|
-
clearCache() {
|
|
483
|
-
this.cache.clear();
|
|
484
|
-
}
|
|
485
|
-
/**
|
|
486
|
-
* Clear cache for a specific chain
|
|
487
|
-
* Useful when a specific chain's authentication fails
|
|
488
|
-
*/
|
|
489
|
-
clearCacheForChain(chainId) {
|
|
490
|
-
this.cache.delete(`provider:${chainId}`);
|
|
491
|
-
this.cache.delete(`chainData:${chainId}`);
|
|
492
|
-
}
|
|
493
|
-
}
|
|
494
|
-
|
|
495
278
|
exports.ApiErrorDetector = ApiErrorDetector;
|
|
496
279
|
exports.AuthenticationError = AuthenticationError;
|
|
497
280
|
exports.ErrorUtils = ErrorUtils;
|
|
@@ -500,7 +283,5 @@ exports.NetworkError = NetworkError;
|
|
|
500
283
|
exports.PersApiError = PersApiError;
|
|
501
284
|
exports.ProviderTokenRefreshNeeded = ProviderTokenRefreshNeeded;
|
|
502
285
|
exports.TokenRefreshNeeded = TokenRefreshNeeded;
|
|
503
|
-
exports.Web3ChainApi = Web3ChainApi;
|
|
504
|
-
exports.Web3ChainService = Web3ChainService;
|
|
505
286
|
exports.isTokenExpired = isTokenExpired;
|
|
506
|
-
//# sourceMappingURL=
|
|
287
|
+
//# sourceMappingURL=index-B-g2JPVK.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-B-g2JPVK.cjs","sources":["../../src/core/utils/jwt.function.ts","../../src/core/errors/index.ts"],"sourcesContent":[null,null],"names":["ErrorCategory"],"mappings":"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"}
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
import { ErrorCategory } from '@explorins/pers-shared';
|
|
2
|
-
import { g as globalCacheService, C as CacheTTL } from './index-DBLskLuH.js';
|
|
3
|
-
import { FetchRequest, JsonRpcProvider } from '@explorins/web3-ts/ethers';
|
|
4
2
|
|
|
5
3
|
/**
|
|
6
4
|
* JWT token expiration utilities
|
|
@@ -275,220 +273,5 @@ const ApiErrorDetector = {
|
|
|
275
273
|
ErrorUtils.isTokenExpiredError(error)
|
|
276
274
|
};
|
|
277
275
|
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
*
|
|
281
|
-
* Handles blockchain chain operations using the PERS backend.
|
|
282
|
-
* Uses @explorins/web3-ts types for perfect framework compatibility.
|
|
283
|
-
*/
|
|
284
|
-
class Web3ChainApi {
|
|
285
|
-
constructor(apiClient) {
|
|
286
|
-
this.apiClient = apiClient;
|
|
287
|
-
this.basePath = '/chains';
|
|
288
|
-
}
|
|
289
|
-
// ==========================================
|
|
290
|
-
// PUBLIC OPERATIONS
|
|
291
|
-
// ==========================================
|
|
292
|
-
/**
|
|
293
|
-
* PUBLIC: Get chain data by chain ID
|
|
294
|
-
*/
|
|
295
|
-
async getChainData(chainId) {
|
|
296
|
-
try {
|
|
297
|
-
const response = await this.apiClient.get(`${this.basePath}/${chainId}`);
|
|
298
|
-
if (!response) {
|
|
299
|
-
throw new Error(`No chain data received for chainId: ${chainId}`);
|
|
300
|
-
}
|
|
301
|
-
return response;
|
|
302
|
-
}
|
|
303
|
-
catch (error) {
|
|
304
|
-
console.error('[Web3ChainApi] Failed to get chain data:', {
|
|
305
|
-
chainId,
|
|
306
|
-
error: error instanceof Error ? error.message : String(error)
|
|
307
|
-
});
|
|
308
|
-
throw error;
|
|
309
|
-
}
|
|
310
|
-
}
|
|
311
|
-
}
|
|
312
|
-
|
|
313
|
-
/**
|
|
314
|
-
* Create Web3 provider from chain data
|
|
315
|
-
* Synchronous function for immediate provider creation
|
|
316
|
-
*/
|
|
317
|
-
const getWeb3ProviderFromChainData = (chainData, timeout = 15000, customUserAgentName = '', tokenRefresher) => {
|
|
318
|
-
let ethersProvider;
|
|
319
|
-
if (chainData.authHeader) {
|
|
320
|
-
// Authenticated provider for private chains
|
|
321
|
-
const fetchRequest = new FetchRequest(chainData.rpcUrl);
|
|
322
|
-
fetchRequest.timeout = timeout;
|
|
323
|
-
// Handle auth header format
|
|
324
|
-
const authValue = chainData.authHeader.startsWith('Bearer ')
|
|
325
|
-
? chainData.authHeader
|
|
326
|
-
: `Bearer ${chainData.authHeader}`;
|
|
327
|
-
fetchRequest.setHeader('Authorization', authValue);
|
|
328
|
-
fetchRequest.setHeader('Content-Type', 'application/json');
|
|
329
|
-
fetchRequest.setHeader('Accept', 'application/json');
|
|
330
|
-
if (customUserAgentName) {
|
|
331
|
-
fetchRequest.setHeader('User-Agent', customUserAgentName);
|
|
332
|
-
}
|
|
333
|
-
ethersProvider = new JsonRpcProvider(fetchRequest, chainData.chainId, {
|
|
334
|
-
staticNetwork: true, // Prevent eth_chainId calls - we know the chain
|
|
335
|
-
polling: false,
|
|
336
|
-
batchMaxCount: 1, // Disable batching for private chains
|
|
337
|
-
});
|
|
338
|
-
}
|
|
339
|
-
else {
|
|
340
|
-
// Public provider for public chains
|
|
341
|
-
ethersProvider = new JsonRpcProvider(chainData.rpcUrl, chainData.chainId, {
|
|
342
|
-
staticNetwork: true, // Prevent eth_chainId calls - we know the chain
|
|
343
|
-
polling: false,
|
|
344
|
-
});
|
|
345
|
-
}
|
|
346
|
-
return ethersProvider;
|
|
347
|
-
};
|
|
348
|
-
/**
|
|
349
|
-
* Async wrapper with retry logic for higher-level usage
|
|
350
|
-
*/
|
|
351
|
-
const getWeb3ProviderWithRetry = async (chainData, timeout = 15000, customUserAgentName = '', tokenRefresher, retryConfig = { maxAttempts: 3, baseDelay: 1000, maxDelay: 8000 }) => {
|
|
352
|
-
let lastError = null;
|
|
353
|
-
for (let attempt = 1; attempt <= retryConfig.maxAttempts; attempt++) {
|
|
354
|
-
try {
|
|
355
|
-
const provider = getWeb3ProviderFromChainData(chainData, timeout, customUserAgentName, tokenRefresher);
|
|
356
|
-
await validateChainConnection(provider, chainData.authHeader ? 'private' : 'public');
|
|
357
|
-
return provider;
|
|
358
|
-
}
|
|
359
|
-
catch (error) {
|
|
360
|
-
lastError = error instanceof Error ? error : new Error(String(error));
|
|
361
|
-
// Stop retrying on auth errors for authenticated chains
|
|
362
|
-
if (ApiErrorDetector.isAuthError(lastError) && chainData.authHeader) {
|
|
363
|
-
break;
|
|
364
|
-
}
|
|
365
|
-
if (attempt === retryConfig.maxAttempts)
|
|
366
|
-
break;
|
|
367
|
-
const delay = Math.min(retryConfig.baseDelay * Math.pow(2, attempt - 1), retryConfig.maxDelay);
|
|
368
|
-
await sleep(delay);
|
|
369
|
-
}
|
|
370
|
-
}
|
|
371
|
-
throw new Error(`Failed to create Web3 provider after ${retryConfig.maxAttempts} attempts. Last error: ${lastError?.message}`);
|
|
372
|
-
};
|
|
373
|
-
async function validateChainConnection(provider, chainType) {
|
|
374
|
-
try {
|
|
375
|
-
// Lightweight test using eth_chainId (works for both public and private)
|
|
376
|
-
const timeoutPromise = new Promise((_, reject) => {
|
|
377
|
-
setTimeout(() => reject(new Error(`${chainType} chain validation timeout`)), 3000);
|
|
378
|
-
});
|
|
379
|
-
const chainIdPromise = provider.send('eth_chainId', []);
|
|
380
|
-
await Promise.race([chainIdPromise, timeoutPromise]);
|
|
381
|
-
}
|
|
382
|
-
catch (error) {
|
|
383
|
-
// Fallback: try net_version if chainId fails
|
|
384
|
-
try {
|
|
385
|
-
const timeoutPromise = new Promise((_, reject) => {
|
|
386
|
-
setTimeout(() => reject(new Error(`${chainType} chain fallback validation timeout`)), 3000);
|
|
387
|
-
});
|
|
388
|
-
const versionPromise = provider.send('net_version', []);
|
|
389
|
-
await Promise.race([versionPromise, timeoutPromise]);
|
|
390
|
-
}
|
|
391
|
-
catch (fallbackError) {
|
|
392
|
-
throw new Error(`${chainType} chain validation failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
393
|
-
}
|
|
394
|
-
}
|
|
395
|
-
}
|
|
396
|
-
function sleep(ms) {
|
|
397
|
-
return new Promise(resolve => setTimeout(resolve, ms));
|
|
398
|
-
}
|
|
399
|
-
|
|
400
|
-
class Web3ChainService {
|
|
401
|
-
constructor(web3ChainApi) {
|
|
402
|
-
this.web3ChainApi = web3ChainApi;
|
|
403
|
-
this.cache = globalCacheService.createNamespace('web3-chain');
|
|
404
|
-
}
|
|
405
|
-
async getEthersProviderByChainId(chainId) {
|
|
406
|
-
const cacheKey = `provider:${chainId}`;
|
|
407
|
-
// Check if we have a valid cached provider
|
|
408
|
-
const cached = this.cache.get(cacheKey);
|
|
409
|
-
if (cached && !this.checkIsTokenExpired(cached.chainData.authHeader)) {
|
|
410
|
-
return cached.provider;
|
|
411
|
-
}
|
|
412
|
-
try {
|
|
413
|
-
// Create new provider instance
|
|
414
|
-
const { provider, chainData } = await this.createProviderInstance(chainId);
|
|
415
|
-
// Cache the provider with chain data
|
|
416
|
-
const cacheEntry = {
|
|
417
|
-
provider,
|
|
418
|
-
chainData,
|
|
419
|
-
createdAt: Date.now(),
|
|
420
|
-
chainId
|
|
421
|
-
};
|
|
422
|
-
this.cache.set(cacheKey, cacheEntry, CacheTTL.PROVIDER);
|
|
423
|
-
return provider;
|
|
424
|
-
}
|
|
425
|
-
catch (error) {
|
|
426
|
-
// ✅ AUTH ERROR RECOVERY: Clear cache and retry once
|
|
427
|
-
if (ApiErrorDetector.isAuthError(error)) {
|
|
428
|
-
this.cache.delete(cacheKey);
|
|
429
|
-
// Retry once with fresh instance
|
|
430
|
-
const { provider, chainData } = await this.createProviderInstance(chainId);
|
|
431
|
-
const cacheEntry = {
|
|
432
|
-
provider,
|
|
433
|
-
chainData,
|
|
434
|
-
createdAt: Date.now(),
|
|
435
|
-
chainId
|
|
436
|
-
};
|
|
437
|
-
this.cache.set(cacheKey, cacheEntry, CacheTTL.PROVIDER);
|
|
438
|
-
return provider;
|
|
439
|
-
}
|
|
440
|
-
throw error;
|
|
441
|
-
}
|
|
442
|
-
}
|
|
443
|
-
async createProviderInstance(chainId) {
|
|
444
|
-
const chainData = await this.getChainDataWithCache(chainId);
|
|
445
|
-
if (!chainData) {
|
|
446
|
-
throw new Error(`Chain data not found for chainId: ${chainId}`);
|
|
447
|
-
}
|
|
448
|
-
const provider = await getWeb3ProviderWithRetry(chainData);
|
|
449
|
-
return { provider, chainData };
|
|
450
|
-
}
|
|
451
|
-
async getChainDataWithCache(chainId) {
|
|
452
|
-
const cacheKey = `chainData:${chainId}`;
|
|
453
|
-
// First check if we have it in the provider cache (includes token validation)
|
|
454
|
-
const providerCached = this.cache.get(`provider:${chainId}`);
|
|
455
|
-
if (providerCached && !this.checkIsTokenExpired(providerCached.chainData.authHeader)) {
|
|
456
|
-
return providerCached.chainData;
|
|
457
|
-
}
|
|
458
|
-
// Otherwise use getOrSet for chainData only
|
|
459
|
-
return this.cache.getOrSet(cacheKey, async () => {
|
|
460
|
-
const chainData = await this.web3ChainApi.getChainData(chainId);
|
|
461
|
-
if (!chainData) {
|
|
462
|
-
throw new Error(`Chain data not found for chainId: ${chainId}`);
|
|
463
|
-
}
|
|
464
|
-
return chainData;
|
|
465
|
-
}, CacheTTL.MEDIUM // 30 minutes for chain data
|
|
466
|
-
);
|
|
467
|
-
}
|
|
468
|
-
checkIsTokenExpired(authHeader) {
|
|
469
|
-
// NULL CHECK: Handle undefined case
|
|
470
|
-
if (!authHeader) {
|
|
471
|
-
return false; // No token means no expiration (public chains)
|
|
472
|
-
}
|
|
473
|
-
// FUNCTION CALL: Use imported function, not method
|
|
474
|
-
return isTokenExpired(authHeader);
|
|
475
|
-
}
|
|
476
|
-
/**
|
|
477
|
-
* Clear all cached providers and chain data
|
|
478
|
-
* Useful for logout scenarios or when authentication context changes
|
|
479
|
-
*/
|
|
480
|
-
clearCache() {
|
|
481
|
-
this.cache.clear();
|
|
482
|
-
}
|
|
483
|
-
/**
|
|
484
|
-
* Clear cache for a specific chain
|
|
485
|
-
* Useful when a specific chain's authentication fails
|
|
486
|
-
*/
|
|
487
|
-
clearCacheForChain(chainId) {
|
|
488
|
-
this.cache.delete(`provider:${chainId}`);
|
|
489
|
-
this.cache.delete(`chainData:${chainId}`);
|
|
490
|
-
}
|
|
491
|
-
}
|
|
492
|
-
|
|
493
|
-
export { AuthenticationError as A, ErrorUtils as E, LogoutRequired as L, NetworkError as N, ProviderTokenRefreshNeeded as P, TokenRefreshNeeded as T, Web3ChainApi as W, PersApiError as a, ApiErrorDetector as b, Web3ChainService as c, isTokenExpired as i };
|
|
494
|
-
//# sourceMappingURL=web3-chain-service-DKHCnHQX.js.map
|
|
276
|
+
export { AuthenticationError as A, ErrorUtils as E, LogoutRequired as L, NetworkError as N, ProviderTokenRefreshNeeded as P, TokenRefreshNeeded as T, PersApiError as a, ApiErrorDetector as b, isTokenExpired as i };
|
|
277
|
+
//# sourceMappingURL=index-CKm_V5XE.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-CKm_V5XE.js","sources":["../../src/core/utils/jwt.function.ts","../../src/core/errors/index.ts"],"sourcesContent":[null,null],"names":[],"mappings":"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"}
|