<template>
  <component
    :is="icon"
    :size="size"
    :color="color"
    :stroke-width="strokeWidth"
    class="lucide-icon"
  />
</template>

<script setup>
defineProps({
  icon: {
    type: Object, // 注意：这里接收的是 Lucide 图标组件对象
    required: true,
  },
  size: {
    type: [Number, String],
    default: 24,
  },
  color: {
    type: String,
    default: 'currentColor',
  },
  strokeWidth: {
    type: [Number, String],
    default: 2,
  },
});
</script>
