<template>
|
<div class="bg-white rounded-lg mt-2 py-2 px-2 relative">
|
<div
|
v-for="item in VueFlowConfig.nodeStyleMap.values()"
|
:key="item.type"
|
class="cursor-grab rounded-md bg-white py-3 px-2 hover:bg-gray-100"
|
:draggable="true"
|
@dragstart="handleOnDragStart($event, item.type)"
|
>
|
<div class="flex items-center justify-between">
|
<span class="flex items-center gap-x-2">
|
<YWIcon :name="item.icon" :fontSize="item.fontSize" :color="item.color" class="rounded-lg p-1.5" :class="item.class" />
|
{{ item.title }}
|
</span>
|
<!-- <plus-icon class="text-primary" /> -->
|
</div>
|
</div>
|
<!-- <YWIcon name="close" class="absolute top-2 right-2 cursor-pointer" /> -->
|
</div>
|
</template>
|
|
<script setup lang="ts">
|
import YWIcon from '/@/components/icon/index.vue';
|
import { VueFlowConfig } from '/@/components/vue-flow/ui/VueFlowConfig';
|
|
const emit = defineEmits(['dragstart']);
|
|
const handleOnDragStart = (e, type: string) => {
|
emit('dragstart', e, type);
|
};
|
</script>
|
<style scoped lang="scss"></style>
|