null & undefined handling
This commit is contained in:
@@ -5,8 +5,7 @@ import {useStore} from "@/store/store.js";
|
||||
|
||||
export function vaultAddress( owner, num=0) {
|
||||
const s = useStore()
|
||||
console.log('vaultAddress', owner, s.factory, s.vaultInitCodeHash)
|
||||
if( !owner )
|
||||
if( !owner || !s.factory || !s.vaultInitCodeHash )
|
||||
return null
|
||||
const salt = ethers.solidityPackedKeccak256(['address','uint8'],[owner,num])
|
||||
return ethers.getCreate2Address(s.factory, salt, s.vaultInitCodeHash)
|
||||
|
||||
@@ -106,13 +106,21 @@ function discoverVaults(owner) {
|
||||
|
||||
const doDiscoverVaults = new SingletonCoroutine(_discoverVaults, 50, false)
|
||||
async function _discoverVaults(owner) {
|
||||
console.log('_discoverVaults',owner)
|
||||
const result = []
|
||||
const s = useStore()
|
||||
if( !owner || !s.chainId || !s.account) {
|
||||
s.vaults = []
|
||||
return
|
||||
}
|
||||
// todo multi-vault scan
|
||||
// console.log('_discoverVaults',owner)
|
||||
const num = 0
|
||||
const addr = vaultAddress(owner, num)
|
||||
console.log(`vault ${num} at`, addr)
|
||||
const s = useStore()
|
||||
// console.log(`vault ${num} at`, addr)
|
||||
if( addr === null ) {
|
||||
s.vaults = []
|
||||
return
|
||||
}
|
||||
const vault = new ethers.Contract(addr, vaultAbi, s.provider)
|
||||
let version = -1
|
||||
try {
|
||||
@@ -127,7 +135,7 @@ async function _discoverVaults(owner) {
|
||||
catch (e) {
|
||||
console.log(`no vault ${num}`)
|
||||
}
|
||||
if( s.account === owner ) { // double-check the account since it could have changed during our await
|
||||
if( s.account == owner ) { // double-check the account since it could have changed during our await
|
||||
s.vaults = result
|
||||
if( pendingOrders.length )
|
||||
if( result.length )
|
||||
|
||||
Reference in New Issue
Block a user