Files
BRETT/app/components/ui/accordion/AccordionItem.vue
T
2026-10-03 20:07:49 +02:00

25 lines
707 B
Vue

<script setup lang="ts">
import type { AccordionItemProps } from 'reka-ui'
import type { HTMLAttributes } from 'vue'
import { reactiveOmit } from '@vueuse/core'
import { AccordionItem, useForwardProps } from 'reka-ui'
import { cn } from '@/lib/utils'
const props = defineProps<AccordionItemProps & { class?: HTMLAttributes['class'] }>()
const delegatedProps = reactiveOmit(props, 'class')
const forwardedProps = useForwardProps(delegatedProps)
</script>
<template>
<AccordionItem
v-slot="slotProps"
data-slot="accordion-item"
v-bind="forwardedProps"
:class="cn('data-open:bg-muted/50 not-last:border-b', props.class)"
>
<slot v-bind="slotProps" />
</AccordionItem>
</template>