Files
dvcp_v2_webapp/ui/dv/AiDvTabs.vue
2024-04-15 14:31:13 +08:00

39 lines
754 B
Vue

<script>
import AiDvRender from "./AiDvRender";
export default {
name: "AiDvTabs",
model: {
prop: "active",
event: "input"
},
props: {
active: String,
config: Object,
values: Object
},
components: {AiDvRender},
computed: {
layers: v => {
const tab = v.config?.tabs[v.active]
const values = v.values[tab.label]
return tab.comps?.map(e => ({dataType: "staticData", ...e, staticData: values[e.label]}))?.filter(e => e.type) || []
}
}
}
</script>
<template>
<section class="AiDvTabs">
<ai-dv-render class="fill" v-for="(e,i) in layers" :key="i" :data="e"/>
</section>
</template>
<style scoped lang="scss">
.AiDvTabs {
display: flex;
flex-direction: column;
gap: 16px
}
</style>