diff --git a/src/blockchain/contract.js b/src/blockchain/contract.js
index c2f9356..5f8c289 100644
--- a/src/blockchain/contract.js
+++ b/src/blockchain/contract.js
@@ -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)
diff --git a/src/blockchain/wallet.js b/src/blockchain/wallet.js
index 6c1139b..302da72 100644
--- a/src/blockchain/wallet.js
+++ b/src/blockchain/wallet.js
@@ -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 )
diff --git a/src/components/Footer.vue b/src/components/Footer.vue
new file mode 100644
index 0000000..7e3f844
--- /dev/null
+++ b/src/components/Footer.vue
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
+
+ Dexorder
+
+
+
+
+
+
+
diff --git a/src/components/PairPrice.vue b/src/components/PairPrice.vue
index 24b1dd3..d437cb8 100644
--- a/src/components/PairPrice.vue
+++ b/src/components/PairPrice.vue
@@ -26,7 +26,7 @@ function invert() {
prefs.inverted[k] = !prefs.inverted[k]
}
-const adjValue = computed(() => !base.value || !quote.value ? null : pairPrice(base.value, quote.value, props.value, props.decimals).toPrecision(5))
+const adjValue = computed(() => props.value === null || props.value === undefined || !base.value || !quote.value ? null : pairPrice(base.value, quote.value, props.value, props.decimals).toPrecision(5))
const pair = computed(() => {
const inToken = props.baseToken ? props.baseToken : token(props.baseAddr)
diff --git a/src/layouts/default/Default.vue b/src/layouts/default/Layout.vue
similarity index 55%
rename from src/layouts/default/Default.vue
rename to src/layouts/default/Layout.vue
index a12712b..3f44c90 100644
--- a/src/layouts/default/Default.vue
+++ b/src/layouts/default/Layout.vue
@@ -1,16 +1,18 @@
-
+
-
+
+
diff --git a/src/layouts/default/View.vue b/src/layouts/default/MainView.vue
similarity index 100%
rename from src/layouts/default/View.vue
rename to src/layouts/default/MainView.vue
diff --git a/src/misc.js b/src/misc.js
index 2d53ad9..f40e97a 100644
--- a/src/misc.js
+++ b/src/misc.js
@@ -28,6 +28,7 @@ export class SingletonCoroutine {
catch (e) {
if( self.retry ) {
console.log('retrying', this.f, 'due to error', e)
+ self.timeout = null
self.invoke(self.args)
}
else
diff --git a/src/router/index.js b/src/router/index.js
index e57c2e2..6fd6670 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -4,7 +4,7 @@ import { createRouter, createWebHistory } from 'vue-router'
const routes = [
{
path: '/',
- component: () => import('@/layouts/default/Default.vue'),
+ component: () => import('@/layouts/default/Layout.vue'),
children: [
{
path: '',
diff --git a/src/store/store.js b/src/store/store.js
index aa7689b..a1ea67a 100644
--- a/src/store/store.js
+++ b/src/store/store.js
@@ -2,9 +2,6 @@
import { defineStore } from 'pinia'
import {knownTokens} from "@/knownTokens.js";
import {computed, ref} from "vue";
-import {ethers} from "ethers";
-import {onChainChanged} from "@/blockchain/wallet.js";
-
// USING THE STORE:
//
@@ -141,7 +138,7 @@ export const useOrderStore = defineStore('order', ()=> {
// Order Input Forms
// const tokenA = ref(null) // defined at top
// const tokenB = ref(null)
- const buy = ref(false)
+ const buy = ref(true)
const inverted = ref(false)
const amount = ref(100) // todo adjust default
const amountIsTokenA = ref(false) // todo adjust default
diff --git a/src/views/Home.vue b/src/views/Home.vue
index 7399f2a..3f7b003 100644
--- a/src/views/Home.vue
+++ b/src/views/Home.vue
@@ -1,6 +1,6 @@
-
-
+
+