Files
yudao-ui-admin-vben/packages/effects/plugins/src/tinyflow/tinyflow.vue
2025-09-03 19:19:50 +08:00

75 lines
1.3 KiB
Vue

<script lang="ts" setup>
import { ref } from 'vue';
import { Tinyflow } from '@tinyflow-ai/vue';
import '@tinyflow-ai/vue/dist/index.css';
defineProps<{
data: any;
provider: any;
}>();
const tinyflowRef = ref<InstanceType<typeof Tinyflow> | null>(null);
defineExpose({
getData: () => tinyflowRef.value?.getData(),
});
</script>
<template>
<Tinyflow
ref="tinyflowRef"
class-name="custom-class"
:data="data"
:provider="provider"
/>
</template>
<style scoped>
:deep(.custom-tinyflow) {
select {
appearance: auto !important;
}
/* 如果使用checkbox需要添加 */
input[type='checkbox'] {
width: 16px;
height: 16px;
margin: 0 4px;
border: 1px solid #ccc;
}
}
input[type='checkbox'] {
position: relative;
width: 18px;
height: 18px;
margin: 0 8px 0 0;
cursor: pointer;
border: 2px solid #d9d9d9;
border-radius: 4px;
transition: all 0.3s;
&:checked {
background-color: #1890ff;
border-color: #1890ff;
&::after {
position: absolute;
top: 50%;
left: 50%;
width: 8px;
height: 12px;
content: '';
border: 2px solid #fff;
border-top: 0;
border-left: 0;
transform: translate(-50%, -60%) rotate(45deg);
}
}
&:hover {
border-color: #40a9ff;
}
}
</style>