Skip to content

Commit

Permalink
v10.2.0: upgrade dependencies
Browse files Browse the repository at this point in the history
  • Loading branch information
10xSebastian committed Aug 18, 2023
1 parent 038160a commit c8763d8
Show file tree
Hide file tree
Showing 6 changed files with 156 additions and 91 deletions.
65 changes: 44 additions & 21 deletions dist/esm/index.solana.js
Original file line number Diff line number Diff line change
Expand Up @@ -732,9 +732,17 @@ let paramsToContractArgs = ({ contract, method, params }) => {
};

const contractCall = ({ address, api, method, params, provider, block }) => {
let contract = new ethers.Contract(address, api, provider);
let args = paramsToContractArgs({ contract, method, params });
return contract[method](...args, { blockTag: block })
const contract = new ethers.Contract(address, api, provider);
const args = paramsToContractArgs({ contract, method, params });
const fragment = contract.interface.fragments.find((fragment)=>fragment.name === method);
if(contract[method] === undefined) {
method = `${method}(${fragment.inputs.map((input)=>input.type).join(',')})`;
}
if(fragment && fragment.stateMutability === 'nonpayable') {
return contract.callStatic[method](...args, { blockTag: block })
} else {
return contract[method](...args, { blockTag: block })
}
};

const balance$1 = ({ address, provider }) => {
Expand Down Expand Up @@ -764,17 +772,25 @@ var requestEVM = async ({ blockchain, address, api, method, params, block, timeo

if(strategy === 'fastest') {

return Promise.race((await EVM.getProviders(blockchain)).map((provider)=>{
const providers = await EVM.getProviders(blockchain);

let allRequestsFailed = [];

const request = singleRequest$1({ blockchain, address, api, method, params, block, provider });
const allRequestsInParallel = providers.map((provider)=>{
return new Promise((resolve)=>{
allRequestsFailed.push(
singleRequest$1({ blockchain, address, api, method, params, block, provider }).then(resolve)
);
})
});

if(timeout) {
const timeoutPromise = new Promise((_, reject)=>setTimeout(()=>{ reject(new Error("Web3ClientTimeout")); }, timeout));
return Promise.race([request, timeoutPromise])
} else {
return request
}
}))
const timeoutPromise = new Promise((_, reject)=>setTimeout(()=>{ reject(new Error("Web3ClientTimeout")); }, timeout || 10000));

allRequestsFailed = Promise.all(allRequestsFailed.map((request)=>{
return new Promise((resolve)=>{ request.catch(resolve); })
})).then(()=>{ return });

return Promise.race([...allRequestsInParallel, timeoutPromise, allRequestsFailed])

} else { // failover

Expand Down Expand Up @@ -849,17 +865,24 @@ var requestSolana = async ({ blockchain, address, api, method, params, block, ti

if(strategy === 'fastest') {

return Promise.race(providers.map((provider)=>{
let allRequestsFailed = [];

const succeedingRequest = new Promise((resolve)=>{
singleRequest({ blockchain, address, api, method, params, block, provider }).then(resolve);
}); // failing requests are ignored during race/fastest

const timeoutPromise = new Promise((_, reject)=>setTimeout(()=>{ reject(new Error("Web3ClientTimeout")); }, timeout || 10000));

return Promise.race([succeedingRequest, timeoutPromise])
}))
const allRequestsInParallel = providers.map((provider)=>{
return new Promise((resolve)=>{
allRequestsFailed.push(
singleRequest({ blockchain, address, api, method, params, block, provider }).then(resolve)
);
})
});

const timeoutPromise = new Promise((_, reject)=>setTimeout(()=>{ reject(new Error("Web3ClientTimeout")); }, timeout || 10000));

allRequestsFailed = Promise.all(allRequestsFailed.map((request)=>{
return new Promise((resolve)=>{ request.catch(resolve); })
})).then(()=>{ return });

return Promise.race([...allRequestsInParallel, timeoutPromise, allRequestsFailed])

} else { // failover

const provider = await Solana.getProvider(blockchain);
Expand Down
65 changes: 44 additions & 21 deletions dist/umd/index.solana.js
Original file line number Diff line number Diff line change
Expand Up @@ -738,9 +738,17 @@
};

const contractCall = ({ address, api, method, params, provider, block }) => {
let contract = new ethers.ethers.Contract(address, api, provider);
let args = paramsToContractArgs({ contract, method, params });
return contract[method](...args, { blockTag: block })
const contract = new ethers.ethers.Contract(address, api, provider);
const args = paramsToContractArgs({ contract, method, params });
const fragment = contract.interface.fragments.find((fragment)=>fragment.name === method);
if(contract[method] === undefined) {
method = `${method}(${fragment.inputs.map((input)=>input.type).join(',')})`;
}
if(fragment && fragment.stateMutability === 'nonpayable') {
return contract.callStatic[method](...args, { blockTag: block })
} else {
return contract[method](...args, { blockTag: block })
}
};

const balance$1 = ({ address, provider }) => {
Expand Down Expand Up @@ -770,17 +778,25 @@

if(strategy === 'fastest') {

return Promise.race((await EVM.getProviders(blockchain)).map((provider)=>{
const providers = await EVM.getProviders(blockchain);

let allRequestsFailed = [];

const request = singleRequest$1({ blockchain, address, api, method, params, block, provider });
const allRequestsInParallel = providers.map((provider)=>{
return new Promise((resolve)=>{
allRequestsFailed.push(
singleRequest$1({ blockchain, address, api, method, params, block, provider }).then(resolve)
);
})
});

if(timeout) {
const timeoutPromise = new Promise((_, reject)=>setTimeout(()=>{ reject(new Error("Web3ClientTimeout")); }, timeout));
return Promise.race([request, timeoutPromise])
} else {
return request
}
}))
const timeoutPromise = new Promise((_, reject)=>setTimeout(()=>{ reject(new Error("Web3ClientTimeout")); }, timeout || 10000));

allRequestsFailed = Promise.all(allRequestsFailed.map((request)=>{
return new Promise((resolve)=>{ request.catch(resolve); })
})).then(()=>{ return });

return Promise.race([...allRequestsInParallel, timeoutPromise, allRequestsFailed])

} else { // failover

Expand Down Expand Up @@ -855,17 +871,24 @@

if(strategy === 'fastest') {

return Promise.race(providers.map((provider)=>{
let allRequestsFailed = [];

const succeedingRequest = new Promise((resolve)=>{
singleRequest({ blockchain, address, api, method, params, block, provider }).then(resolve);
}); // failing requests are ignored during race/fastest

const timeoutPromise = new Promise((_, reject)=>setTimeout(()=>{ reject(new Error("Web3ClientTimeout")); }, timeout || 10000));

return Promise.race([succeedingRequest, timeoutPromise])
}))
const allRequestsInParallel = providers.map((provider)=>{
return new Promise((resolve)=>{
allRequestsFailed.push(
singleRequest({ blockchain, address, api, method, params, block, provider }).then(resolve)
);
})
});

const timeoutPromise = new Promise((_, reject)=>setTimeout(()=>{ reject(new Error("Web3ClientTimeout")); }, timeout || 10000));

allRequestsFailed = Promise.all(allRequestsFailed.map((request)=>{
return new Promise((resolve)=>{ request.catch(resolve); })
})).then(()=>{ return });

return Promise.race([...allRequestsInParallel, timeoutPromise, allRequestsFailed])

} else { // failover

const provider = await Solana.getProvider(blockchain);
Expand Down
6 changes: 3 additions & 3 deletions package.evm.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@depay/web3-tokens-evm",
"moduleName": "Web3Tokens",
"version": "10.1.0",
"version": "10.2.0",
"description": "JavaScript library providing basic functionalities to interact with web3 tokens.",
"main": "dist/umd/index.evm.js",
"module": "dist/esm/index.evm.js",
Expand All @@ -24,8 +24,8 @@
"private": false,
"dependencies": {},
"peerDependencies": {
"@depay/web3-blockchains": "^8.1.1",
"@depay/web3-client-evm": "^10.15.1",
"@depay/web3-blockchains": "^9.0.0",
"@depay/web3-client-evm": "^10.17.0",
"ethers": "^5.7.1"
},
"engines": {
Expand Down
20 changes: 10 additions & 10 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@depay/web3-tokens",
"moduleName": "Web3Tokens",
"version": "10.1.0",
"version": "10.2.0",
"description": "JavaScript library providing basic functionalities to interact with web3 tokens.",
"main": "dist/umd/index.js",
"module": "dist/esm/index.js",
Expand Down Expand Up @@ -33,9 +33,9 @@
"private": false,
"dependencies": {},
"peerDependencies": {
"@depay/solana-web3.js": "^1.24.0",
"@depay/web3-blockchains": "^8.1.1",
"@depay/web3-client": "^10.14.0",
"@depay/solana-web3.js": "^1.25.1",
"@depay/web3-blockchains": "^9.0.0",
"@depay/web3-client": "^10.17.0",
"ethers": "^5.7.1"
},
"engines": {
Expand All @@ -44,12 +44,12 @@
"devDependencies": {
"@babel/core": "^7.12.9",
"@babel/preset-env": "^7.12.7",
"@depay/solana-web3.js": "^1.24.0",
"@depay/web3-blockchains": "^8.1.1",
"@depay/web3-client": "^10.15.1",
"@depay/web3-client-evm": "^10.15.1",
"@depay/web3-client-solana": "^10.15.1",
"@depay/web3-mock": "^14.12.1",
"@depay/solana-web3.js": "^1.25.1",
"@depay/web3-blockchains": "^9.0.0",
"@depay/web3-client": "^10.17.0",
"@depay/web3-client-evm": "^10.17.0",
"@depay/web3-client-solana": "^10.17.0",
"@depay/web3-mock": "^14.16.2",
"@peculiar/webcrypto": "^1.4.0",
"@rollup/plugin-commonjs": "^18.0.0",
"@rollup/plugin-node-resolve": "^11.2.1",
Expand Down
8 changes: 4 additions & 4 deletions package.solana.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@depay/web3-tokens-solana",
"moduleName": "Web3Tokens",
"version": "10.1.0",
"version": "10.2.0",
"description": "JavaScript library providing basic functionalities to interact with web3 tokens.",
"main": "dist/umd/index.solana.js",
"module": "dist/esm/index.solana.js",
Expand All @@ -24,9 +24,9 @@
"private": false,
"dependencies": {},
"peerDependencies": {
"@depay/solana-web3.js": "^1.24.0",
"@depay/web3-blockchains": "^8.1.1",
"@depay/web3-client-solana": "^10.15.1",
"@depay/solana-web3.js": "^1.25.1",
"@depay/web3-blockchains": "^9.0.0",
"@depay/web3-client-solana": "^10.17.0",
"ethers": "^5.7.1"
},
"engines": {
Expand Down
83 changes: 51 additions & 32 deletions yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -1029,38 +1029,45 @@
"@babel/helper-validator-identifier" "^7.19.1"
to-fast-properties "^2.0.0"

"@depay/solana-web3.js@^1.24.0":
version "1.24.0"
resolved "https://registry.yarnpkg.com/@depay/solana-web3.js/-/solana-web3.js-1.24.0.tgz#f51f32042c6ffd573c12b5b0800f8303ae176996"
integrity sha512-lPVXkRjeZqVvNtsiV9CVa189bE1/YACQv4U4NMTP6zB9Bvutx93k69gC8pks0P0wCqsO6chLbXCB+Hq/NdASZA==

"@depay/web3-blockchains@^8.1.1":
version "8.1.1"
resolved "https://registry.yarnpkg.com/@depay/web3-blockchains/-/web3-blockchains-8.1.1.tgz#1de5dff71ead45bde57a1d8e0374d24aadde6533"
integrity sha512-wrtCFNH726Y+xX1+EtzhILMfhLcPEzuaBV3oCef97eJsht0PYjEWpzqB48LwHpY9adwzjarG1dSJIR2VAWpmUA==

"@depay/web3-client-evm@^10.15.1":
version "10.15.1"
resolved "https://registry.yarnpkg.com/@depay/web3-client-evm/-/web3-client-evm-10.15.1.tgz#634439827b6e9b6b0fca1e51b3a857366fa785f1"
integrity sha512-xPhrdHXbPdJYG7yh60MJn4zMe5ub+RF/GrUZUCB8vB5c2MKJrxIagrPxe9q0PNFuIfuPdY/z6/eUYr/07TI9SA==

"@depay/web3-client-solana@^10.15.1":
version "10.15.1"
resolved "https://registry.yarnpkg.com/@depay/web3-client-solana/-/web3-client-solana-10.15.1.tgz#11fa3cfedaf8c78898ca40b051514c3a6aef053b"
integrity sha512-7NvAIMdKXJHRxNK8V9EMsBN33bnUY7GaswJcUBKRnIVAw6mxuN7zBkRevQdcnSOkwkjoxWggtFUTHC2H5eLWyA==

"@depay/web3-client@^10.15.1":
version "10.15.1"
resolved "https://registry.yarnpkg.com/@depay/web3-client/-/web3-client-10.15.1.tgz#03041c0cb3d8f27f89b42c3af9b1da626c6d87e4"
integrity sha512-jSDdtdhrLkmAWUV89qWTGRx0DOxccasziYA1PuKNrIF1y/KYQyjv94uZ1DzXLLO2PdaF959RN+wy0VhFymNaog==

"@depay/web3-mock@^14.12.1":
version "14.12.1"
resolved "https://registry.yarnpkg.com/@depay/web3-mock/-/web3-mock-14.12.1.tgz#55380f08c0bb303a2d4dd6e25ee608a5f2830fe9"
integrity sha512-25w7+yFBd2qlzndXbRofBKEv60gjb3GmcHMO7mzduO7egW1Qp0+84r+FJm33Gt987DASsCynHgrm7nrfpIEIRA==
dependencies:
"@depay/solana-web3.js" "^1.24.0"
"@depay/web3-blockchains" "^8.1.1"
"@depay/solana-web3.js@^1.25.1":
version "1.25.1"
resolved "https://registry.yarnpkg.com/@depay/solana-web3.js/-/solana-web3.js-1.25.1.tgz#2f4725007ff4cfc14af2606eb3d333e68097e13f"
integrity sha512-tKCHHQVoZV85wZ8r3ZuxuQlejBcVolIUf52Bq2Pne3KR1BpxYJF2/9XRTH9qCrLZMQsgsQHikQEH5eglDCKJkA==
dependencies:
bs58 "^5.0.0"

"@depay/web3-blockchains@^8.4.2":
version "8.4.2"
resolved "https://registry.yarnpkg.com/@depay/web3-blockchains/-/web3-blockchains-8.4.2.tgz#3f5f072f337acc334e5f0f097627dd85af85848c"
integrity sha512-kvzTy0R7zBqL6w2CSRGm3SO1K9QuYpuOCa0BTMt4O7ATqxFg+uXor3uWjS8oWvlQwOdqLl8WT7aaKT8OD63KXw==

"@depay/web3-blockchains@^9.0.0":
version "9.0.0"
resolved "https://registry.yarnpkg.com/@depay/web3-blockchains/-/web3-blockchains-9.0.0.tgz#eaac5491e8f2c0dea84474af7db1a6af4f8cfb35"
integrity sha512-E1LhENbPbJ5JtQ1Im2ojwVPsqCM9H/VT937ZEXC2gs12M9NnzRM6XqvFsyhLh2zH4VnCDDbkyNYFvfigdn0HaA==

"@depay/web3-client-evm@^10.17.0":
version "10.17.0"
resolved "https://registry.yarnpkg.com/@depay/web3-client-evm/-/web3-client-evm-10.17.0.tgz#13550b05d38d18dc55231a2b580ad5af9e4c6855"
integrity sha512-HSJZXVtAe8IdD4Yh0+/5XacfwW7F9eI7PsZbRhTigXY6sds6MY5E+W+qzkYSmAcbCMffRE6GO08VK1MPqBq6Rw==

"@depay/web3-client-solana@^10.17.0":
version "10.17.0"
resolved "https://registry.yarnpkg.com/@depay/web3-client-solana/-/web3-client-solana-10.17.0.tgz#30b446145f47e684686dd35f185aaee9582ff0ff"
integrity sha512-0kgGGpR+eaYCM9b5plJ6olx2zCIo69e/Q6RqX0N2K/INY0oNpmshnTCjw7evTlnJQB3GnWTIg8JOgXgWvRnMQQ==

"@depay/web3-client@^10.17.0":
version "10.17.0"
resolved "https://registry.yarnpkg.com/@depay/web3-client/-/web3-client-10.17.0.tgz#54ca046ef87e4783cbbdae55193da3ce4f1fed0c"
integrity sha512-iBq+ou6hebC+ezP/OhApcj9k4vIkcugytjF7DWSI9mWxmoTTCfx1sQpZPSGyY+oHLH0LBmQbDk4QiG/reEh/Pg==

"@depay/web3-mock@^14.16.2":
version "14.16.2"
resolved "https://registry.yarnpkg.com/@depay/web3-mock/-/web3-mock-14.16.2.tgz#a97dcd022f0fa3c3b23e6e1f29f90c20580bb8ae"
integrity sha512-Zf1oqve/mLXaslZNSp0qLE9CBnfzGgJ3m86lVBrCMKJxFi0lV8NKGVhRDIzWCfxv3e5Zx3/dNOgyoaxAvj3RIw==
dependencies:
"@depay/solana-web3.js" "^1.25.1"
"@depay/web3-blockchains" "^8.4.2"
ethers "^5.7.1"

"@eslint/eslintrc@^0.4.3":
Expand Down Expand Up @@ -2584,6 +2591,11 @@ balanced-match@^1.0.0:
resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee"
integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==

base-x@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/base-x/-/base-x-4.0.0.tgz#d0e3b7753450c73f8ad2389b5c018a4af7b2224a"
integrity sha512-FuwxlW4H5kh37X/oW59pwTzzTKRzfrrQwhmyspRM7swOEZcHtDZSCt45U6oKgtuFE+WYPblePMVIPR4RZrh/hw==

[email protected]:
version "1.1.4"
resolved "https://registry.yarnpkg.com/bech32/-/bech32-1.1.4.tgz#e38c9f37bf179b8eb16ae3a772b40c356d4832e9"
Expand Down Expand Up @@ -2652,6 +2664,13 @@ browserslist@^4.14.5, browserslist@^4.21.3, browserslist@^4.21.4:
node-releases "^2.0.6"
update-browserslist-db "^1.0.9"

bs58@^5.0.0:
version "5.0.0"
resolved "https://registry.yarnpkg.com/bs58/-/bs58-5.0.0.tgz#865575b4d13c09ea2a84622df6c8cbeb54ffc279"
integrity sha512-r+ihvQJvahgYT50JD05dyJNKlmmSlMoOGwn1lCcEzanPglg7TxYjioQUYehQ9mAR/+hOSd2jRc/Z2y5UxBymvQ==
dependencies:
base-x "^4.0.0"

buffer-from@^1.0.0:
version "1.1.2"
resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5"
Expand Down

0 comments on commit c8763d8

Please sign in to comment.