mirror of
https://github.com/freqtrade/frequi.git
synced 2024-11-25 12:35:15 +00:00
69 lines
1.6 KiB
Vue
69 lines
1.6 KiB
Vue
|
<template>
|
||
|
<b-card no-body class="mb-2">
|
||
|
<template #header>
|
||
|
<b-row align-v="center">
|
||
|
<b-col>
|
||
|
<b-row align-v="center">
|
||
|
<b-col cols="auto"><ReorderIcon class="handle me-2" /></b-col>
|
||
|
<b-col
|
||
|
><b-button variant="link" @click="visible = !visible">
|
||
|
<h6 class="mb-0">{{ pairlist.name }}</h6>
|
||
|
</b-button></b-col
|
||
|
>
|
||
|
</b-row>
|
||
|
</b-col>
|
||
|
<b-col cols="auto">
|
||
|
<b-button size="sm" @click="emit('remove', index)">x</b-button>
|
||
|
</b-col>
|
||
|
</b-row>
|
||
|
</template>
|
||
|
<b-card-body :class="{ hidden: !visible }">
|
||
|
<b-collapse v-model="visible">
|
||
|
<PairlistConfigParameter
|
||
|
v-for="(parameter, key) in pairlist.params"
|
||
|
:key="key"
|
||
|
v-model="pairlist.params[key].value"
|
||
|
:param="parameter"
|
||
|
/>
|
||
|
</b-collapse>
|
||
|
</b-card-body>
|
||
|
</b-card>
|
||
|
</template>
|
||
|
|
||
|
<script setup lang="ts">
|
||
|
import { Pairlist } from '@/types';
|
||
|
import { computed, ref } from 'vue';
|
||
|
import PairlistConfigParameter from '../general/PairlistConfigParameter.vue';
|
||
|
import ReorderIcon from 'vue-material-design-icons/ReorderHorizontal.vue';
|
||
|
|
||
|
const props = defineProps<{
|
||
|
modelValue: Pairlist;
|
||
|
index: number;
|
||
|
}>();
|
||
|
|
||
|
const emit = defineEmits(['update:modelValue', 'remove']);
|
||
|
|
||
|
const visible = ref(false);
|
||
|
|
||
|
const pairlist = computed({
|
||
|
get() {
|
||
|
return props.modelValue;
|
||
|
},
|
||
|
set(value: Pairlist) {
|
||
|
emit('update:modelValue', value);
|
||
|
},
|
||
|
});
|
||
|
</script>
|
||
|
|
||
|
<style>
|
||
|
.hidden {
|
||
|
padding: 0;
|
||
|
}
|
||
|
|
||
|
.collapsing {
|
||
|
-webkit-transition: none;
|
||
|
transition: none;
|
||
|
display: none;
|
||
|
}
|
||
|
</style>
|