@explorins/pers-sdk 1.1.2 → 1.1.3
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/dist/analytics/api/analytics-api.d.ts +17 -0
- package/dist/analytics/api/analytics-api.d.ts.map +1 -0
- package/{src/analytics/index.ts → dist/analytics/index.d.ts} +28 -52
- package/dist/analytics/index.d.ts.map +1 -0
- package/dist/analytics/models/index.d.ts +61 -0
- package/dist/analytics/models/index.d.ts.map +1 -0
- package/dist/analytics/services/analytics-service.d.ts +19 -0
- package/dist/analytics/services/analytics-service.d.ts.map +1 -0
- package/dist/analytics.cjs +76 -0
- package/dist/analytics.cjs.map +1 -0
- package/dist/analytics.d.ts +28 -0
- package/dist/analytics.js +72 -0
- package/dist/analytics.js.map +1 -0
- package/dist/auth-admin/api/auth-admin-api.d.ts +27 -0
- package/dist/auth-admin/api/auth-admin-api.d.ts.map +1 -0
- package/dist/auth-admin/index.d.ts +26 -0
- package/dist/auth-admin/index.d.ts.map +1 -0
- package/dist/auth-admin/services/auth-admin-service.d.ts +23 -0
- package/dist/auth-admin/services/auth-admin-service.d.ts.map +1 -0
- package/dist/auth-admin.cjs +96 -0
- package/dist/auth-admin.cjs.map +1 -0
- package/dist/auth-admin.d.ts +26 -0
- package/dist/auth-admin.js +92 -0
- package/dist/auth-admin.js.map +1 -0
- package/dist/business/api/business-api.d.ts +133 -0
- package/dist/business/api/business-api.d.ts.map +1 -0
- package/dist/business/index.d.ts +34 -0
- package/dist/business/index.d.ts.map +1 -0
- package/dist/business/models/index.d.ts +8 -0
- package/dist/business/models/index.d.ts.map +1 -0
- package/dist/business/services/business-service.d.ts +51 -0
- package/dist/business/services/business-service.d.ts.map +1 -0
- package/dist/business.cjs +303 -0
- package/dist/business.cjs.map +1 -0
- package/dist/business.d.ts +34 -0
- package/dist/business.js +299 -0
- package/dist/business.js.map +1 -0
- package/dist/campaign/api/campaign-api.d.ts +213 -0
- package/dist/campaign/api/campaign-api.d.ts.map +1 -0
- package/dist/campaign/index.d.ts +44 -0
- package/dist/campaign/index.d.ts.map +1 -0
- package/dist/campaign/services/campaign-service.d.ts +88 -0
- package/dist/campaign/services/campaign-service.d.ts.map +1 -0
- package/dist/campaign.cjs +506 -0
- package/dist/campaign.cjs.map +1 -0
- package/dist/campaign.d.ts +44 -0
- package/dist/campaign.js +502 -0
- package/dist/campaign.js.map +1 -0
- package/dist/core/abstractions/http-client.d.ts +22 -0
- package/dist/core/abstractions/http-client.d.ts.map +1 -0
- package/dist/core/auth/auth-provider.interface.d.ts +12 -0
- package/dist/core/auth/auth-provider.interface.d.ts.map +1 -0
- package/dist/core/auth/create-auth-provider.d.ts +27 -0
- package/dist/core/auth/create-auth-provider.d.ts.map +1 -0
- package/dist/core/auth/simple-auth-config.interface.d.ts +15 -0
- package/dist/core/auth/simple-auth-config.interface.d.ts.map +1 -0
- package/dist/core/index.d.ts +13 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/pers-api-client.d.ts +54 -0
- package/dist/core/pers-api-client.d.ts.map +1 -0
- package/dist/core/pers-config.d.ts +38 -0
- package/dist/core/pers-config.d.ts.map +1 -0
- package/dist/core/utils/jwt.function.d.ts +2 -0
- package/dist/core/utils/jwt.function.d.ts.map +1 -0
- package/dist/core.cjs +506 -0
- package/dist/core.cjs.map +1 -0
- package/dist/core.d.ts +13 -0
- package/dist/core.js +497 -0
- package/dist/core.js.map +1 -0
- package/dist/donation/api/donation-api.d.ts +18 -0
- package/dist/donation/api/donation-api.d.ts.map +1 -0
- package/dist/donation/index.d.ts +25 -0
- package/dist/donation/index.d.ts.map +1 -0
- package/{src/donation/models/index.ts → dist/donation/models/index.d.ts} +8 -11
- package/dist/donation/models/index.d.ts.map +1 -0
- package/dist/donation/services/donation-service.d.ts +19 -0
- package/dist/donation/services/donation-service.d.ts.map +1 -0
- package/dist/donation.cjs +78 -0
- package/dist/donation.cjs.map +1 -0
- package/dist/donation.d.ts +25 -0
- package/dist/donation.js +74 -0
- package/dist/donation.js.map +1 -0
- package/dist/index.cjs +4217 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +21 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +4164 -0
- package/dist/index.js.map +1 -0
- package/dist/package.json +148 -0
- package/dist/payment/api/payment-api.d.ts +105 -0
- package/dist/payment/api/payment-api.d.ts.map +1 -0
- package/dist/payment/index.d.ts +36 -0
- package/dist/payment/index.d.ts.map +1 -0
- package/dist/payment/models/index.d.ts +12 -0
- package/dist/payment/models/index.d.ts.map +1 -0
- package/dist/payment/services/payment-service.d.ts +40 -0
- package/dist/payment/services/payment-service.d.ts.map +1 -0
- package/dist/payment.cjs +258 -0
- package/dist/payment.cjs.map +1 -0
- package/dist/payment.d.ts +36 -0
- package/dist/payment.js +254 -0
- package/dist/payment.js.map +1 -0
- package/dist/pers-sdk.d.ts +29 -0
- package/dist/pers-sdk.d.ts.map +1 -0
- package/dist/redemption/api/redemption-api.d.ts +147 -0
- package/dist/redemption/api/redemption-api.d.ts.map +1 -0
- package/dist/redemption/index.d.ts +35 -0
- package/dist/redemption/index.d.ts.map +1 -0
- package/dist/redemption/models/index.d.ts +8 -0
- package/dist/redemption/models/index.d.ts.map +1 -0
- package/dist/redemption/services/redemption-service.d.ts +56 -0
- package/dist/redemption/services/redemption-service.d.ts.map +1 -0
- package/dist/redemption.cjs +333 -0
- package/dist/redemption.cjs.map +1 -0
- package/dist/redemption.d.ts +35 -0
- package/dist/redemption.js +329 -0
- package/dist/redemption.js.map +1 -0
- package/dist/shared/interfaces/pers-shared-lib.interfaces.d.ts +18 -0
- package/dist/shared/interfaces/pers-shared-lib.interfaces.d.ts.map +1 -0
- package/dist/tenant/api/tenant-api.d.ts +56 -0
- package/dist/tenant/api/tenant-api.d.ts.map +1 -0
- package/dist/tenant/index.d.ts +34 -0
- package/dist/tenant/index.d.ts.map +1 -0
- package/dist/tenant/models/index.d.ts +11 -0
- package/dist/tenant/models/index.d.ts.map +1 -0
- package/dist/tenant/services/tenant-service.d.ts +46 -0
- package/dist/tenant/services/tenant-service.d.ts.map +1 -0
- package/dist/tenant.cjs +177 -0
- package/dist/tenant.cjs.map +1 -0
- package/dist/tenant.d.ts +34 -0
- package/dist/tenant.js +173 -0
- package/dist/tenant.js.map +1 -0
- package/dist/token/api/token-api.d.ts +64 -0
- package/dist/token/api/token-api.d.ts.map +1 -0
- package/dist/token/base/base-token-service.d.ts +87 -0
- package/dist/token/base/base-token-service.d.ts.map +1 -0
- package/dist/token/index.d.ts +13 -0
- package/dist/token/index.d.ts.map +1 -0
- package/dist/token/models/index.d.ts +18 -0
- package/dist/token/models/index.d.ts.map +1 -0
- package/dist/token/services/token-service.d.ts +68 -0
- package/dist/token/services/token-service.d.ts.map +1 -0
- package/dist/token/token-sdk.d.ts +140 -0
- package/dist/token/token-sdk.d.ts.map +1 -0
- package/dist/token.cjs +537 -0
- package/dist/token.cjs.map +1 -0
- package/dist/token.d.ts +13 -0
- package/dist/token.js +532 -0
- package/dist/token.js.map +1 -0
- package/dist/transaction/api/transaction-api.d.ts +133 -0
- package/dist/transaction/api/transaction-api.d.ts.map +1 -0
- package/dist/transaction/index.d.ts +38 -0
- package/dist/transaction/index.d.ts.map +1 -0
- package/dist/transaction/models/index.d.ts +42 -0
- package/dist/transaction/models/index.d.ts.map +1 -0
- package/dist/transaction/services/transaction-service.d.ts +56 -0
- package/dist/transaction/services/transaction-service.d.ts.map +1 -0
- package/dist/transaction.cjs +394 -0
- package/dist/transaction.cjs.map +1 -0
- package/dist/transaction.d.ts +38 -0
- package/dist/transaction.js +390 -0
- package/dist/transaction.js.map +1 -0
- package/dist/user/api/user-api.d.ts +56 -0
- package/dist/user/api/user-api.d.ts.map +1 -0
- package/dist/user/index.d.ts +36 -0
- package/dist/user/index.d.ts.map +1 -0
- package/{src/user/models/index.ts → dist/user/models/index.d.ts} +12 -10
- package/dist/user/models/index.d.ts.map +1 -0
- package/dist/user/services/user-service.d.ts +46 -0
- package/dist/user/services/user-service.d.ts.map +1 -0
- package/dist/user-status/api/user-status-api.d.ts +37 -0
- package/dist/user-status/api/user-status-api.d.ts.map +1 -0
- package/dist/user-status/index.d.ts +28 -0
- package/dist/user-status/index.d.ts.map +1 -0
- package/{src/user-status/models/index.ts → dist/user-status/models/index.d.ts} +8 -11
- package/dist/user-status/models/index.d.ts.map +1 -0
- package/dist/user-status/services/user-status-service.d.ts +26 -0
- package/dist/user-status/services/user-status-service.d.ts.map +1 -0
- package/dist/user-status.cjs +147 -0
- package/dist/user-status.cjs.map +1 -0
- package/dist/user-status.d.ts +28 -0
- package/dist/user-status.js +143 -0
- package/dist/user-status.js.map +1 -0
- package/dist/user.cjs +188 -0
- package/dist/user.cjs.map +1 -0
- package/dist/user.d.ts +36 -0
- package/dist/user.js +184 -0
- package/dist/user.js.map +1 -0
- package/dist/web3/api/web3-api.d.ts +27 -0
- package/dist/web3/api/web3-api.d.ts.map +1 -0
- package/dist/web3/index.d.ts +16 -0
- package/dist/web3/index.d.ts.map +1 -0
- package/dist/web3/models/index.d.ts +92 -0
- package/dist/web3/models/index.d.ts.map +1 -0
- package/dist/web3/services/web3-service.d.ts +21 -0
- package/dist/web3/services/web3-service.d.ts.map +1 -0
- package/dist/web3-chain/api/web3-chain-api.d.ts +19 -0
- package/dist/web3-chain/api/web3-chain-api.d.ts.map +1 -0
- package/dist/web3-chain/index.d.ts +17 -0
- package/dist/web3-chain/index.d.ts.map +1 -0
- package/{src/web3-chain/models/index.ts → dist/web3-chain/models/index.d.ts} +38 -45
- package/dist/web3-chain/models/index.d.ts.map +1 -0
- package/dist/web3-chain/services/getWeb3FCD.service.d.ts +8 -0
- package/dist/web3-chain/services/getWeb3FCD.service.d.ts.map +1 -0
- package/dist/web3-chain/services/provider.service.d.ts +15 -0
- package/dist/web3-chain/services/provider.service.d.ts.map +1 -0
- package/dist/web3-chain/services/public-http-provider.service.d.ts +8 -0
- package/dist/web3-chain/services/public-http-provider.service.d.ts.map +1 -0
- package/dist/web3-chain/services/web3-chain-service.d.ts +17 -0
- package/dist/web3-chain/services/web3-chain-service.d.ts.map +1 -0
- package/dist/web3-chain.cjs +316 -0
- package/dist/web3-chain.cjs.map +1 -0
- package/dist/web3-chain.d.ts +17 -0
- package/dist/web3-chain.js +310 -0
- package/dist/web3-chain.js.map +1 -0
- package/dist/web3.cjs +516 -0
- package/dist/web3.cjs.map +1 -0
- package/dist/web3.d.ts +16 -0
- package/dist/web3.js +513 -0
- package/dist/web3.js.map +1 -0
- package/package.json +70 -67
- package/config/domains.js +0 -22
- package/explorins-pers-sdk-1.0.0-alpha.1.tgz +0 -0
- package/rollup.config.js +0 -74
- package/scripts/copy-declarations.js +0 -147
- package/src/analytics/api/analytics-api.ts +0 -24
- package/src/analytics/models/index.ts +0 -74
- package/src/analytics/services/analytics-service.ts +0 -28
- package/src/auth-admin/api/auth-admin-api.ts +0 -42
- package/src/auth-admin/index.ts +0 -47
- package/src/auth-admin/services/auth-admin-service.ts +0 -36
- package/src/business/api/business-api.ts +0 -234
- package/src/business/index.ts +0 -53
- package/src/business/models/index.ts +0 -13
- package/src/business/services/business-service.ts +0 -88
- package/src/campaign/api/campaign-api.ts +0 -376
- package/src/campaign/index.ts +0 -67
- package/src/campaign/services/campaign-service.ts +0 -164
- package/src/core/abstractions/http-client.ts +0 -24
- package/src/core/auth/auth-provider.interface.ts +0 -16
- package/src/core/auth/create-auth-provider.ts +0 -136
- package/src/core/auth/simple-auth-config.interface.ts +0 -15
- package/src/core/index.ts +0 -33
- package/src/core/pers-api-client.ts +0 -343
- package/src/core/pers-config.ts +0 -65
- package/src/core/utils/jwt.function.ts +0 -24
- package/src/donation/api/donation-api.ts +0 -24
- package/src/donation/index.ts +0 -47
- package/src/donation/services/donation-service.ts +0 -25
- package/src/index.ts +0 -55
- package/src/payment/api/payment-api.ts +0 -185
- package/src/payment/index.ts +0 -64
- package/src/payment/models/index.ts +0 -29
- package/src/payment/services/payment-service.ts +0 -70
- package/src/pers-sdk.ts +0 -45
- package/src/redemption/api/redemption-api.ts +0 -241
- package/src/redemption/index.ts +0 -60
- package/src/redemption/models/index.ts +0 -17
- package/src/redemption/services/redemption-service.ts +0 -103
- package/src/shared/interfaces/pers-shared-lib.interfaces.ts +0 -99
- package/src/tenant/api/tenant-api.ts +0 -92
- package/src/tenant/index.ts +0 -61
- package/src/tenant/models/index.ts +0 -20
- package/src/tenant/services/tenant-service.ts +0 -78
- package/src/token/api/token-api.ts +0 -129
- package/src/token/base/base-token-service.ts +0 -167
- package/src/token/index.ts +0 -38
- package/src/token/models/index.ts +0 -30
- package/src/token/services/token-service.ts +0 -125
- package/src/token/token-sdk.ts +0 -231
- package/src/transaction/api/transaction-api.ts +0 -296
- package/src/transaction/index.ts +0 -65
- package/src/transaction/models/index.ts +0 -60
- package/src/transaction/services/transaction-service.ts +0 -104
- package/src/user/api/user-api.ts +0 -98
- package/src/user/index.ts +0 -62
- package/src/user/services/user-service.ts +0 -75
- package/src/user-status/api/user-status-api.ts +0 -78
- package/src/user-status/index.ts +0 -55
- package/src/user-status/services/user-status-service.ts +0 -51
- package/src/web3/api/web3-api.ts +0 -68
- package/src/web3/index.ts +0 -38
- package/src/web3/models/index.ts +0 -150
- package/src/web3/services/web3-service.ts +0 -338
- package/src/web3-chain/api/web3-chain-api.ts +0 -42
- package/src/web3-chain/index.ts +0 -27
- package/src/web3-chain/services/getWeb3FCD.service.ts +0 -47
- package/src/web3-chain/services/provider.service.ts +0 -123
- package/src/web3-chain/services/public-http-provider.service.ts +0 -26
- package/src/web3-chain/services/web3-chain-service.ts +0 -131
- package/tsconfig.json +0 -28
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"web3-chain.js","sources":["../../src/web3-chain/api/web3-chain-api.ts","../../src/core/utils/jwt.function.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,null],"names":["ChainTypes"],"mappings":"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"}
|
package/dist/web3.cjs
ADDED
|
@@ -0,0 +1,516 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var web3Ts = require('@explorins/web3-ts');
|
|
4
|
+
var jwtDecode = require('jwt-decode');
|
|
5
|
+
require('web3');
|
|
6
|
+
require('ethers');
|
|
7
|
+
|
|
8
|
+
class Web3Api {
|
|
9
|
+
constructor(web3ChainService) {
|
|
10
|
+
this.web3ChainService = web3ChainService;
|
|
11
|
+
}
|
|
12
|
+
async getTokenBalance(request) {
|
|
13
|
+
const web3 = await this.web3ChainService.getWeb3ByChainId(request.chainId);
|
|
14
|
+
const tokenContract = web3Ts.getSmartContractInstance(request.contractAddress, request.abi, web3);
|
|
15
|
+
const balance = await web3Ts.getAddressTokenBalanceByContract(tokenContract, request.accountAddress, request.tokenId);
|
|
16
|
+
return Number(balance);
|
|
17
|
+
}
|
|
18
|
+
async getTokenUri(request) {
|
|
19
|
+
const web3 = await this.web3ChainService.getWeb3ByChainId(request.chainId);
|
|
20
|
+
// ✅ DIRECT: Use web3-ts functions directly
|
|
21
|
+
const tokenContract = web3Ts.getSmartContractInstance(request.contractAddress, request.abi, web3);
|
|
22
|
+
const tokenId = Number(request.tokenId);
|
|
23
|
+
const tokenUri = await web3Ts.getTokenUri(tokenContract, tokenId);
|
|
24
|
+
return String(tokenUri);
|
|
25
|
+
}
|
|
26
|
+
async getTokenOfOwnerByIndex(request) {
|
|
27
|
+
const web3 = await this.web3ChainService.getWeb3ByChainId(request.chainId);
|
|
28
|
+
// ✅ DIRECT: Use web3-ts functions directly
|
|
29
|
+
const tokenContract = web3Ts.getSmartContractInstance(request.contractAddress, request.abi, web3);
|
|
30
|
+
const tokenId = await web3Ts.getTokenOfOwnerByIndex(tokenContract, request.accountAddress, request.tokenIndex);
|
|
31
|
+
return String(tokenId);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
class SimpleCache {
|
|
36
|
+
constructor() {
|
|
37
|
+
this.storage = {};
|
|
38
|
+
this.defaultTTL = 10 * 1000; // 10 seconds
|
|
39
|
+
}
|
|
40
|
+
set(key, data, ttl) {
|
|
41
|
+
this.storage[key] = {
|
|
42
|
+
data,
|
|
43
|
+
timestamp: Date.now(),
|
|
44
|
+
ttl: ttl ?? this.defaultTTL
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
get(key) {
|
|
48
|
+
const entry = this.storage[key];
|
|
49
|
+
if (!entry) {
|
|
50
|
+
return null;
|
|
51
|
+
}
|
|
52
|
+
const now = Date.now();
|
|
53
|
+
const isExpired = (now - entry.timestamp) > entry.ttl;
|
|
54
|
+
if (isExpired) {
|
|
55
|
+
delete this.storage[key];
|
|
56
|
+
return null;
|
|
57
|
+
}
|
|
58
|
+
return entry.data;
|
|
59
|
+
}
|
|
60
|
+
clear() {
|
|
61
|
+
this.storage = {};
|
|
62
|
+
}
|
|
63
|
+
cleanup() {
|
|
64
|
+
const now = Date.now();
|
|
65
|
+
Object.keys(this.storage).forEach(key => {
|
|
66
|
+
const entry = this.storage[key];
|
|
67
|
+
if ((now - entry.timestamp) > entry.ttl) {
|
|
68
|
+
delete this.storage[key];
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
class Web3Service {
|
|
75
|
+
constructor(web3Api, web3ChainService) {
|
|
76
|
+
this.web3Api = web3Api;
|
|
77
|
+
this.web3ChainService = web3ChainService;
|
|
78
|
+
//temporary fix, remove when the backend supports custom gateways
|
|
79
|
+
this.defaultIpfsGatewayDomain = 'pers.mypinata.cloud';
|
|
80
|
+
// ✅ CACHE: Simple 10-second cache instance
|
|
81
|
+
this.cache = new SimpleCache();
|
|
82
|
+
this.cleanupInterval = null;
|
|
83
|
+
this.cleanupInterval = setInterval(() => {
|
|
84
|
+
this.cache.cleanup();
|
|
85
|
+
}, 30 * 1000);
|
|
86
|
+
}
|
|
87
|
+
destroy() {
|
|
88
|
+
if (this.cleanupInterval) {
|
|
89
|
+
clearInterval(this.cleanupInterval);
|
|
90
|
+
this.cleanupInterval = null;
|
|
91
|
+
}
|
|
92
|
+
this.cache.clear();
|
|
93
|
+
}
|
|
94
|
+
async getERC20Balance(request) {
|
|
95
|
+
const cacheKey = `erc20_balance_${request.accountAddress}_${request.token.contractAddress}_${request.token.chainId}`;
|
|
96
|
+
// ✅ CACHE CHECK: Try to get from cache first
|
|
97
|
+
const cached = this.cache.get(cacheKey);
|
|
98
|
+
if (cached) {
|
|
99
|
+
console.debug(`💾 [Web3Service] Using cached ERC20 balance for ${request.token.symbol}`);
|
|
100
|
+
return cached;
|
|
101
|
+
}
|
|
102
|
+
console.debug(`🔄 [Web3Service] Fetching fresh ERC20 balance for ${request.token.symbol}`);
|
|
103
|
+
const rawBalance = await this.web3Api.getTokenBalance({
|
|
104
|
+
accountAddress: request.accountAddress,
|
|
105
|
+
contractAddress: request.token.contractAddress,
|
|
106
|
+
abi: request.token.abi,
|
|
107
|
+
tokenId: null, // Always null for ERC20
|
|
108
|
+
chainId: request.token.chainId
|
|
109
|
+
});
|
|
110
|
+
const decimals = request.token.decimals ?? 18;
|
|
111
|
+
const symbol = request.token.symbol ?? 'UNKNOWN';
|
|
112
|
+
const response = {
|
|
113
|
+
rawBalance,
|
|
114
|
+
formattedBalance: this.formatBalance(rawBalance, decimals),
|
|
115
|
+
decimals,
|
|
116
|
+
symbol,
|
|
117
|
+
hasBalance: rawBalance > 0
|
|
118
|
+
};
|
|
119
|
+
// ✅ CACHE SET: Store result in cache
|
|
120
|
+
this.cache.set(cacheKey, response);
|
|
121
|
+
return response;
|
|
122
|
+
}
|
|
123
|
+
async getERC1155Collection(request) {
|
|
124
|
+
// ✅ CACHE KEY: Create unique cache key for collection request
|
|
125
|
+
const contractAddresses = request.tokens.map(t => t.contractAddress).sort().join(',');
|
|
126
|
+
const cacheKey = `erc1155_collection_${request.accountAddress}_${contractAddresses}`;
|
|
127
|
+
// ✅ CACHE CHECK: Try to get from cache first
|
|
128
|
+
const cached = this.cache.get(cacheKey);
|
|
129
|
+
if (cached) {
|
|
130
|
+
console.debug(`💾 [Web3Service] Using cached ERC1155 collection for ${request.accountAddress}`);
|
|
131
|
+
return cached;
|
|
132
|
+
}
|
|
133
|
+
console.debug(`🔄 [Web3Service] Fetching fresh ERC1155 collection for ${request.accountAddress}`);
|
|
134
|
+
const tokenResults = await Promise.all(request.tokens.map(async (token) => {
|
|
135
|
+
// ✅ FIXED: Handle null metadata properly
|
|
136
|
+
const tokenIds = token.metadata?.map(m => m.tokenMetadataIncrementalId?.toString()).filter((id) => id !== undefined) ?? [];
|
|
137
|
+
// Check balance for each known tokenId
|
|
138
|
+
const balanceResults = await Promise.allSettled(tokenIds.map(async (tokenId) => {
|
|
139
|
+
try {
|
|
140
|
+
const rawBalance = await this.web3Api.getTokenBalance({
|
|
141
|
+
accountAddress: request.accountAddress,
|
|
142
|
+
contractAddress: token.contractAddress,
|
|
143
|
+
abi: token.abi,
|
|
144
|
+
tokenId,
|
|
145
|
+
chainId: token.chainId
|
|
146
|
+
});
|
|
147
|
+
const decimals = token.decimals ?? 0; // ERC1155 usually no decimals
|
|
148
|
+
return {
|
|
149
|
+
tokenId,
|
|
150
|
+
balance: rawBalance,
|
|
151
|
+
formattedBalance: this.formatBalance(rawBalance, decimals),
|
|
152
|
+
hasBalance: rawBalance > 0,
|
|
153
|
+
// ✅ FIXED: Convert null to undefined for findMetadata
|
|
154
|
+
metadata: this.findMetadata(token.metadata ?? undefined, tokenId)
|
|
155
|
+
};
|
|
156
|
+
}
|
|
157
|
+
catch (error) {
|
|
158
|
+
console.warn(`Failed to get balance for token ${token.contractAddress}:${tokenId}`, error);
|
|
159
|
+
return null; // Skip failed tokens
|
|
160
|
+
}
|
|
161
|
+
}));
|
|
162
|
+
// Filter successful results with balance > 0
|
|
163
|
+
const successfulResults = [];
|
|
164
|
+
for (const result of balanceResults) {
|
|
165
|
+
if (result.status === 'fulfilled' && result.value !== null && result.value.hasBalance) {
|
|
166
|
+
successfulResults.push(result.value);
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
return {
|
|
170
|
+
token,
|
|
171
|
+
results: successfulResults
|
|
172
|
+
};
|
|
173
|
+
}));
|
|
174
|
+
const response = {
|
|
175
|
+
accountAddress: request.accountAddress,
|
|
176
|
+
tokens: tokenResults.filter(t => t.results.length > 0)
|
|
177
|
+
};
|
|
178
|
+
// ✅ CACHE SET: Store complete collection result
|
|
179
|
+
this.cache.set(cacheKey, response);
|
|
180
|
+
return response;
|
|
181
|
+
}
|
|
182
|
+
async getERC721Collection(request) {
|
|
183
|
+
// ✅ CACHE KEY: Create unique cache key for NFT collection
|
|
184
|
+
const contractAddresses = request.nftContracts.map(t => t.contractAddress).sort().join(',');
|
|
185
|
+
const maxNFTs = request.maxNFTsPerContract || 50;
|
|
186
|
+
const cacheKey = `erc721_collection_${request.accountAddress}_${contractAddresses}_${maxNFTs}`;
|
|
187
|
+
// ✅ CACHE CHECK: Try to get from cache first
|
|
188
|
+
const cached = this.cache.get(cacheKey);
|
|
189
|
+
if (cached) {
|
|
190
|
+
console.debug(`💾 [Web3Service] Using cached ERC721 collection for ${request.accountAddress}`);
|
|
191
|
+
return cached;
|
|
192
|
+
}
|
|
193
|
+
console.debug(`🔄 [Web3Service] Fetching fresh ERC721 collection for ${request.accountAddress}`);
|
|
194
|
+
const startTime = Date.now();
|
|
195
|
+
const contractResults = await Promise.all(request.nftContracts.map(async (token) => {
|
|
196
|
+
try {
|
|
197
|
+
const totalBalance = await this.web3Api.getTokenBalance({
|
|
198
|
+
accountAddress: request.accountAddress,
|
|
199
|
+
contractAddress: token.contractAddress,
|
|
200
|
+
abi: token.abi,
|
|
201
|
+
tokenId: null,
|
|
202
|
+
chainId: token.chainId
|
|
203
|
+
});
|
|
204
|
+
if (totalBalance === 0) {
|
|
205
|
+
return {
|
|
206
|
+
token,
|
|
207
|
+
totalNFTs: 0,
|
|
208
|
+
nfts: [],
|
|
209
|
+
hasMore: false
|
|
210
|
+
};
|
|
211
|
+
}
|
|
212
|
+
const nftsToLoad = Math.min(totalBalance, maxNFTs);
|
|
213
|
+
const nftResults = await Promise.allSettled(Array.from({ length: nftsToLoad }, async (_, index) => {
|
|
214
|
+
try {
|
|
215
|
+
const tokenId = await this.web3Api.getTokenOfOwnerByIndex({
|
|
216
|
+
contractAddress: token.contractAddress,
|
|
217
|
+
abi: token.abi,
|
|
218
|
+
accountAddress: request.accountAddress,
|
|
219
|
+
tokenIndex: index,
|
|
220
|
+
chainId: token.chainId
|
|
221
|
+
});
|
|
222
|
+
const tokenUri = await this.web3Api.getTokenUri({
|
|
223
|
+
contractAddress: token.contractAddress,
|
|
224
|
+
abi: token.abi,
|
|
225
|
+
tokenId,
|
|
226
|
+
chainId: token.chainId
|
|
227
|
+
});
|
|
228
|
+
const metadata = await this.fetchMetadata(tokenUri, token.chainId);
|
|
229
|
+
const nftItem = {
|
|
230
|
+
tokenId,
|
|
231
|
+
name: metadata?.name || `Token #${tokenId}`,
|
|
232
|
+
description: metadata?.description || '',
|
|
233
|
+
imageUrl: await this.resolveIPFSUrl(metadata?.image || '', token.chainId),
|
|
234
|
+
rawBalance: 1,
|
|
235
|
+
formattedBalance: '1',
|
|
236
|
+
hasBalance: true,
|
|
237
|
+
metadata,
|
|
238
|
+
tokenIndex: index
|
|
239
|
+
};
|
|
240
|
+
return nftItem;
|
|
241
|
+
}
|
|
242
|
+
catch (error) {
|
|
243
|
+
console.warn(`Failed to load NFT at index ${index} for ${token.symbol}:`, error);
|
|
244
|
+
return null;
|
|
245
|
+
}
|
|
246
|
+
}));
|
|
247
|
+
// ✅ FIXED: Usar tipo específico NFTItem
|
|
248
|
+
const successfulNFTs = nftResults
|
|
249
|
+
.filter((result) => result.status === 'fulfilled' && result.value !== null)
|
|
250
|
+
.map(result => result.value);
|
|
251
|
+
return {
|
|
252
|
+
token,
|
|
253
|
+
totalNFTs: totalBalance,
|
|
254
|
+
nfts: successfulNFTs,
|
|
255
|
+
hasMore: totalBalance > maxNFTs
|
|
256
|
+
};
|
|
257
|
+
}
|
|
258
|
+
catch (error) {
|
|
259
|
+
console.error(`Failed to load NFT collection for ${token.symbol}:`, error);
|
|
260
|
+
return {
|
|
261
|
+
token,
|
|
262
|
+
totalNFTs: 0,
|
|
263
|
+
nfts: [],
|
|
264
|
+
hasMore: false
|
|
265
|
+
};
|
|
266
|
+
}
|
|
267
|
+
}));
|
|
268
|
+
const totalNFTs = contractResults.reduce((sum, contract) => sum + contract.nfts.length, 0);
|
|
269
|
+
const loadingTime = Date.now() - startTime;
|
|
270
|
+
const response = {
|
|
271
|
+
accountAddress: request.accountAddress,
|
|
272
|
+
contracts: contractResults,
|
|
273
|
+
summary: {
|
|
274
|
+
totalContracts: request.nftContracts.length,
|
|
275
|
+
totalNFTs,
|
|
276
|
+
loadingTime
|
|
277
|
+
}
|
|
278
|
+
};
|
|
279
|
+
// ✅ CACHE SET: Store complete collection response
|
|
280
|
+
this.cache.set(cacheKey, response);
|
|
281
|
+
return response;
|
|
282
|
+
}
|
|
283
|
+
// ==========================================
|
|
284
|
+
// HELPER METHODS
|
|
285
|
+
// ==========================================
|
|
286
|
+
formatBalance(rawBalance, decimals) {
|
|
287
|
+
const balance = rawBalance / Math.pow(10, decimals);
|
|
288
|
+
return balance.toLocaleString('en-US', {
|
|
289
|
+
minimumFractionDigits: 0,
|
|
290
|
+
maximumFractionDigits: decimals > 0 ? 2 : 0
|
|
291
|
+
});
|
|
292
|
+
}
|
|
293
|
+
// ✅ FIXED: Update method signature to handle null properly
|
|
294
|
+
findMetadata(metadata, tokenId) {
|
|
295
|
+
if (!metadata || tokenId === null)
|
|
296
|
+
return null;
|
|
297
|
+
return metadata.find(m => m.tokenMetadataIncrementalId?.toString() === tokenId) || null;
|
|
298
|
+
}
|
|
299
|
+
async fetchMetadata(uri, chainId) {
|
|
300
|
+
try {
|
|
301
|
+
const httpUrl = await this.resolveIPFSUrl(uri, chainId);
|
|
302
|
+
const response = await fetch(httpUrl);
|
|
303
|
+
if (!response.ok) {
|
|
304
|
+
throw new Error(`HTTP ${response.status}: ${response.statusText}`);
|
|
305
|
+
}
|
|
306
|
+
return await response.json();
|
|
307
|
+
}
|
|
308
|
+
catch (error) {
|
|
309
|
+
console.warn('Failed to fetch NFT metadata:', error);
|
|
310
|
+
return null;
|
|
311
|
+
}
|
|
312
|
+
}
|
|
313
|
+
async getIpfsGatewayDomain(chainId) {
|
|
314
|
+
try {
|
|
315
|
+
const chainData = await this.web3ChainService.getChainDataWithCache(chainId);
|
|
316
|
+
return chainData.ipfsGatewayDomain || this.defaultIpfsGatewayDomain;
|
|
317
|
+
}
|
|
318
|
+
catch (error) {
|
|
319
|
+
console.warn(`Failed to get chain data for chainId ${chainId}, using default IPFS gateway:`, error);
|
|
320
|
+
return this.defaultIpfsGatewayDomain;
|
|
321
|
+
}
|
|
322
|
+
}
|
|
323
|
+
async resolveIPFSUrl(url, chainId) {
|
|
324
|
+
if (!url)
|
|
325
|
+
return '';
|
|
326
|
+
if (url.startsWith('ipfs://')) {
|
|
327
|
+
const gatewayDomain = await this.getIpfsGatewayDomain(chainId);
|
|
328
|
+
return `https://${gatewayDomain}/ipfs/${url.slice(7)}`;
|
|
329
|
+
}
|
|
330
|
+
return url;
|
|
331
|
+
}
|
|
332
|
+
}
|
|
333
|
+
|
|
334
|
+
/**
|
|
335
|
+
* Platform-Agnostic Web3 Chain API Client
|
|
336
|
+
*
|
|
337
|
+
* Handles blockchain chain operations using the PERS backend.
|
|
338
|
+
* Uses @explorins/web3-ts types for perfect framework compatibility.
|
|
339
|
+
*/
|
|
340
|
+
class Web3ChainApi {
|
|
341
|
+
constructor(apiClient) {
|
|
342
|
+
this.apiClient = apiClient;
|
|
343
|
+
this.basePath = '/chains';
|
|
344
|
+
}
|
|
345
|
+
// ==========================================
|
|
346
|
+
// PUBLIC OPERATIONS
|
|
347
|
+
// ==========================================
|
|
348
|
+
/**
|
|
349
|
+
* PUBLIC: Get chain data by chain ID
|
|
350
|
+
* ✅ Returns ChainData exactly as framework expects from @explorins/web3-ts
|
|
351
|
+
*/
|
|
352
|
+
async getChainData(chainId) {
|
|
353
|
+
try {
|
|
354
|
+
console.log('🔍 [Web3ChainApi] Fetching chain data for chainId:', chainId);
|
|
355
|
+
const response = await this.apiClient.get(`${this.basePath}/${chainId}`);
|
|
356
|
+
if (!response) {
|
|
357
|
+
throw new Error(`No chain data received for chainId: ${chainId}`);
|
|
358
|
+
}
|
|
359
|
+
return response;
|
|
360
|
+
}
|
|
361
|
+
catch (error) {
|
|
362
|
+
console.error('❌ [Web3ChainApi] Failed to get chain data:', {
|
|
363
|
+
chainId,
|
|
364
|
+
error: error instanceof Error ? error.message : String(error)
|
|
365
|
+
});
|
|
366
|
+
throw error;
|
|
367
|
+
}
|
|
368
|
+
}
|
|
369
|
+
}
|
|
370
|
+
|
|
371
|
+
const isTokenExpired = (token, margin = 60) => {
|
|
372
|
+
// ✅ SANITIZE: Remove any words (Bearer etc) if exists and get the token
|
|
373
|
+
const cleanToken = token.split(' ')[1] || token;
|
|
374
|
+
// ✅ VALIDATION: Check if token is jwt
|
|
375
|
+
if (!cleanToken || cleanToken.split('.').length !== 3) {
|
|
376
|
+
return true; // Consider invalid tokens as expired
|
|
377
|
+
}
|
|
378
|
+
try {
|
|
379
|
+
// ✅ TYPE-SAFE: Decode with proper typing
|
|
380
|
+
const decoded = jwtDecode.jwtDecode(cleanToken);
|
|
381
|
+
const currentTime = Math.floor(Date.now() / 1000);
|
|
382
|
+
// ✅ CONFIGURABLE: Use provided margin (default 60 seconds)
|
|
383
|
+
return decoded.exp < (currentTime + margin);
|
|
384
|
+
}
|
|
385
|
+
catch (error) {
|
|
386
|
+
console.error('[SDK JWT Utils] Error decoding JWT token:', error);
|
|
387
|
+
return true; // Consider unparseable tokens as expired
|
|
388
|
+
}
|
|
389
|
+
};
|
|
390
|
+
|
|
391
|
+
class Web3ChainService {
|
|
392
|
+
constructor(web3ChainApi, providerService) {
|
|
393
|
+
this.web3ChainApi = web3ChainApi;
|
|
394
|
+
this.providerService = providerService;
|
|
395
|
+
this.web3InstanceCache = new Map();
|
|
396
|
+
}
|
|
397
|
+
async getWeb3ByChainId(chainId) {
|
|
398
|
+
const cached = this.web3InstanceCache.get(chainId);
|
|
399
|
+
// ✅ SMART CACHE: Check if cache is valid based on token expiration
|
|
400
|
+
if (cached && !this.checkIsTokenExpired(cached.chainData.authHeader)) {
|
|
401
|
+
console.log(`♻️ [Web3ChainService] Using cached Web3 instance for chain ${chainId}`);
|
|
402
|
+
return cached.web3Instance;
|
|
403
|
+
}
|
|
404
|
+
// ✅ CREATE WITH ERROR RECOVERY: Handle auth errors gracefully
|
|
405
|
+
try {
|
|
406
|
+
console.log(`🔧 [Web3ChainService] Creating new Web3 instance for chain ${chainId}`);
|
|
407
|
+
const { web3, chainData } = await this.createWeb3Instance(chainId);
|
|
408
|
+
// ✅ CACHE NEW INSTANCE
|
|
409
|
+
this.web3InstanceCache.set(chainId, {
|
|
410
|
+
web3Instance: web3,
|
|
411
|
+
chainData: chainData,
|
|
412
|
+
createdAt: Date.now(),
|
|
413
|
+
chainId
|
|
414
|
+
});
|
|
415
|
+
return web3;
|
|
416
|
+
}
|
|
417
|
+
catch (error) {
|
|
418
|
+
// ✅ AUTH ERROR RECOVERY: Clear cache and retry once
|
|
419
|
+
if (this.isAuthError(error)) {
|
|
420
|
+
console.warn(`🔄 [Web3ChainService] Auth error detected, clearing cache and retrying...`);
|
|
421
|
+
this.web3InstanceCache.delete(chainId);
|
|
422
|
+
// Retry once with fresh instance
|
|
423
|
+
const { web3, chainData } = await this.createWeb3Instance(chainId);
|
|
424
|
+
this.web3InstanceCache.set(chainId, {
|
|
425
|
+
web3Instance: web3,
|
|
426
|
+
chainData: chainData,
|
|
427
|
+
createdAt: Date.now(),
|
|
428
|
+
chainId
|
|
429
|
+
});
|
|
430
|
+
return web3;
|
|
431
|
+
}
|
|
432
|
+
throw error;
|
|
433
|
+
}
|
|
434
|
+
}
|
|
435
|
+
async getChainDataWithCache(chainId) {
|
|
436
|
+
const cached = this.web3InstanceCache.get(chainId);
|
|
437
|
+
//const now = Date.now();
|
|
438
|
+
if (cached && !this.checkIsTokenExpired(cached.chainData.authHeader)) {
|
|
439
|
+
console.log(`♻️ [Web3ChainService] Using cached ChainData for chain ${chainId}`);
|
|
440
|
+
return cached.chainData;
|
|
441
|
+
}
|
|
442
|
+
// If not cached, fetch fresh data
|
|
443
|
+
const chainData = await this.getChainDataById(chainId);
|
|
444
|
+
if (!chainData) {
|
|
445
|
+
throw new Error(`Chain data not found for chainId: ${chainId}`);
|
|
446
|
+
}
|
|
447
|
+
return chainData;
|
|
448
|
+
}
|
|
449
|
+
checkIsTokenExpired(authHeader) {
|
|
450
|
+
// ✅ NULL CHECK: Handle undefined case
|
|
451
|
+
if (!authHeader) {
|
|
452
|
+
return false; // No token means no expiration (public chains)
|
|
453
|
+
}
|
|
454
|
+
// ✅ FUNCTION CALL: Use imported function, not method
|
|
455
|
+
return isTokenExpired(authHeader);
|
|
456
|
+
}
|
|
457
|
+
async createWeb3Instance(chainId) {
|
|
458
|
+
const chainData = await this.getChainDataById(chainId);
|
|
459
|
+
if (!chainData) {
|
|
460
|
+
throw new Error(`Chain data not found for chainId: ${chainId}`);
|
|
461
|
+
}
|
|
462
|
+
// ✅ CRITICAL CHECK: Ensure authHeader is present for private chains
|
|
463
|
+
if (chainData.chainType === 'PRIVATE' && !chainData.authHeader) {
|
|
464
|
+
console.error('❌ [Web3ChainService] CRITICAL: Private chain missing authHeader!');
|
|
465
|
+
throw new Error(`Private chain ${chainId} missing authentication header`);
|
|
466
|
+
}
|
|
467
|
+
const web3 = await this.providerService.getWeb3(chainId, chainData.chainType || 'PUBLIC', chainData);
|
|
468
|
+
return { web3, chainData };
|
|
469
|
+
}
|
|
470
|
+
// ✅ HELPER: Type-safe error checking
|
|
471
|
+
isAuthError(error) {
|
|
472
|
+
const message = error instanceof Error ? error.message.toLowerCase() : String(error).toLowerCase();
|
|
473
|
+
return (message.includes('unauthorized') ||
|
|
474
|
+
message.includes('401') ||
|
|
475
|
+
message.includes('token expired') ||
|
|
476
|
+
message.includes('invalid token'));
|
|
477
|
+
}
|
|
478
|
+
async getChainDataById(chainId) {
|
|
479
|
+
try {
|
|
480
|
+
return await this.web3ChainApi.getChainData(chainId);
|
|
481
|
+
}
|
|
482
|
+
catch (error) {
|
|
483
|
+
console.error('❌ [SDK Web3ChainService] Error getting chain data for chainId:', chainId, error);
|
|
484
|
+
return null;
|
|
485
|
+
}
|
|
486
|
+
}
|
|
487
|
+
}
|
|
488
|
+
|
|
489
|
+
function createWeb3ChainSDK(apiClient, providerService) {
|
|
490
|
+
const web3ChainApi = new Web3ChainApi(apiClient);
|
|
491
|
+
const web3ChainService = new Web3ChainService(web3ChainApi, providerService); // ✅ DIRECT INJECTION
|
|
492
|
+
return {
|
|
493
|
+
// ✅ REPLICA: Same methods as framework
|
|
494
|
+
getChainDataById: (chainId) => web3ChainService.getChainDataById(chainId),
|
|
495
|
+
getWeb3ByChainId: (chainId) => web3ChainService.getWeb3ByChainId(chainId),
|
|
496
|
+
api: web3ChainApi,
|
|
497
|
+
service: web3ChainService
|
|
498
|
+
};
|
|
499
|
+
}
|
|
500
|
+
|
|
501
|
+
function createWeb3SDK(apiClient, web3ProviderService) {
|
|
502
|
+
const web3ChainSDK = createWeb3ChainSDK(apiClient, web3ProviderService);
|
|
503
|
+
const web3Api = new Web3Api(web3ChainSDK.service);
|
|
504
|
+
const web3Service = new Web3Service(web3Api, web3ChainSDK.service);
|
|
505
|
+
return {
|
|
506
|
+
getCreditsBalance: (request) => web3Service.getERC20Balance(request),
|
|
507
|
+
getRewardsCollection: (request) => web3Service.getERC1155Collection(request),
|
|
508
|
+
getStampsCollection: (request) => web3Service.getERC721Collection(request),
|
|
509
|
+
api: web3Api,
|
|
510
|
+
service: web3Service
|
|
511
|
+
};
|
|
512
|
+
}
|
|
513
|
+
|
|
514
|
+
exports.SimpleCache = SimpleCache;
|
|
515
|
+
exports.createWeb3SDK = createWeb3SDK;
|
|
516
|
+
//# sourceMappingURL=web3.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"web3.cjs","sources":["../../src/web3/api/web3-api.ts","../../src/web3/models/index.ts","../../src/web3/services/web3-service.ts","../../src/web3-chain/api/web3-chain-api.ts","../../src/core/utils/jwt.function.ts","../../src/web3-chain/services/web3-chain-service.ts","../../src/web3-chain/index.ts","../../src/web3/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null],"names":["getSmartContractInstance","getAddressTokenBalanceByContract","getTokenUri","getTokenOfOwnerByIndex","jwtDecode"],"mappings":"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"}
|
package/dist/web3.d.ts
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { PersApiClient } from './core/pers-api-client';
|
|
2
|
+
import { Web3Api } from './web3/api/web3-api';
|
|
3
|
+
import { Web3Service } from './web3/services/web3-service';
|
|
4
|
+
import { ERC1155CollectionRequest, ERC20BalanceRequest, ERC721CollectionRequest, ERC721CollectionResponse, Web3BalanceResponse, Web3TokenListResponse } from './web3/models';
|
|
5
|
+
import { Web3ProviderService } from './web3-chain/services/provider.service';
|
|
6
|
+
export declare function createWeb3SDK(apiClient: PersApiClient, web3ProviderService: Web3ProviderService): {
|
|
7
|
+
getCreditsBalance: (request: ERC20BalanceRequest) => Promise<Web3BalanceResponse>;
|
|
8
|
+
getRewardsCollection: (request: ERC1155CollectionRequest) => Promise<Web3TokenListResponse>;
|
|
9
|
+
getStampsCollection: (request: ERC721CollectionRequest) => Promise<ERC721CollectionResponse>;
|
|
10
|
+
api: Web3Api;
|
|
11
|
+
service: Web3Service;
|
|
12
|
+
};
|
|
13
|
+
export * from './web3/models';
|
|
14
|
+
export type { ERC20BalanceRequest, ERC1155CollectionRequest, ERC721CollectionRequest, ERC721CollectionResponse, NFTItem } from './web3/models';
|
|
15
|
+
export * from './shared/interfaces/pers-shared-lib.interfaces';
|
|
16
|
+
//# sourceMappingURL=index.d.ts.map
|