withdrawls
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<NeedsQueryHelper>
|
||||
<PhoneCard>
|
||||
<needs-provider>
|
||||
<phone-card>
|
||||
<v-card-title class="big">DCA / TWAP</v-card-title>
|
||||
<v-card-subtitle>Multiple tranches over a time range</v-card-subtitle>
|
||||
<v-card-text>
|
||||
@@ -20,7 +20,7 @@
|
||||
<v-chip v-for="r in routes" variant="text">
|
||||
{{ s.chain.name }}
|
||||
<v-img src="https://upload.wikimedia.org/wikipedia/commons/e/e7/Uniswap_Logo.svg" width="1.5em"/>
|
||||
<span class="uniswap-pink ml-0 mr-1">v3</span>
|
||||
<span class="uniswap-color ml-0 mr-1">v3</span>
|
||||
{{pairSymbol}} {{r.fee/10000}}%
|
||||
</v-chip>
|
||||
|
||||
@@ -78,8 +78,8 @@
|
||||
<v-btn variant="outlined" color="red">Cancel</v-btn>
|
||||
<v-btn variant="flat" color="green" :disabled="!validOrder" @click="placeOrder">Place Order</v-btn>
|
||||
</v-card-actions>
|
||||
</PhoneCard>
|
||||
</NeedsQueryHelper>
|
||||
</phone-card>
|
||||
</needs-provider>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
@@ -90,15 +90,15 @@ import PhoneCard from "@/components/PhoneCard.vue";
|
||||
import {queryHelperContract} from "@/blockchain/contract.js";
|
||||
// noinspection ES6UnusedImports
|
||||
import {SingletonCoroutine, vAutoSelect} from "@/misc.js";
|
||||
import NeedsQueryHelper from "@/components/NeedsQueryHelper.vue";
|
||||
import {Exchange, newOrder, newTimeConstraint, TimeMode} from "@/blockchain/orderlib.js";
|
||||
import {FixedNumber} from "ethers";
|
||||
import {pendOrder} from "@/blockchain/wallet.js";
|
||||
import NeedsProvider from "@/components/NeedsProvider.vue";
|
||||
|
||||
const s = useStore()
|
||||
const buy = ref(false)
|
||||
let _tokenA = ref(s.tokens !== undefined && s.tokens.length >= 1 ? s.tokens[0] : null)
|
||||
let _tokenB = ref(s.tokens !== undefined && s.tokens.length >= 2 ? s.tokens[1] : null)
|
||||
let _tokenA = ref(Object.values(s.tokens).length >= 1 ? Object.values(s.tokens)[0] : null)
|
||||
let _tokenB = ref(Object.values(s.tokens).length >= 2 ? Object.values(s.tokens)[1] : null)
|
||||
const tokenA = computed({
|
||||
get() {
|
||||
return _tokenA.value
|
||||
@@ -149,19 +149,22 @@ const limitIsMinimum = computed(() => !(buy.value ^ inverted.value))
|
||||
const validOrder = computed(()=>amount.value > 0 && routes.value.length > 0 )
|
||||
|
||||
async function findRoute() {
|
||||
console.log('finding route', _tokenA.value, _tokenB.value)
|
||||
routes.value = []
|
||||
if( !_tokenA.value || !_tokenB.value )
|
||||
return
|
||||
const helper = await queryHelperContract()
|
||||
if( !helper )
|
||||
if( !helper ) {
|
||||
console.log('no helper')
|
||||
return
|
||||
}
|
||||
routesPending.value = true
|
||||
let rawRoutes
|
||||
try {
|
||||
rawRoutes = await helper.getRoutes(tokenA.value.address, tokenB.value.address)
|
||||
}
|
||||
catch (e) {
|
||||
// console.log('routes exception', e)
|
||||
console.log('routes exception', e)
|
||||
routesPending.value = false
|
||||
return
|
||||
}
|
||||
@@ -242,7 +245,7 @@ function validateMin(v) {
|
||||
return true
|
||||
}
|
||||
|
||||
async function placeOrder() {
|
||||
function placeOrder() {
|
||||
const ta = tokenA.value;
|
||||
const tb = tokenB.value;
|
||||
const tokenIn = buy.value ? tb.address : ta.address
|
||||
@@ -278,7 +281,7 @@ async function placeOrder() {
|
||||
ts.push([amtPerTranche, cs])
|
||||
}
|
||||
const order = newOrder(tokenIn, tokenOut, route.exchange, route.fee, amt, amountIsInput, ts)
|
||||
await pendOrder(order)
|
||||
pendOrder(order)
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
Reference in New Issue
Block a user