shadcn-vue/apps/www/registry/new-york/ui/pagination/PaginationFirst.vue
2024-11-21 11:52:31 +08:00

30 lines
771 B
Vue

<script setup lang="ts">
import {
Button,
} from '@/lib/registry/new-york/ui/button'
import { cn } from '@/lib/utils'
import { DoubleArrowLeftIcon } from '@radix-icons/vue'
import { PaginationFirst, type PaginationFirstProps } from 'reka-ui'
import { computed, type HTMLAttributes } from 'vue'
const props = withDefaults(defineProps<PaginationFirstProps & { class?: HTMLAttributes['class'] }>(), {
asChild: true,
})
const delegatedProps = computed(() => {
const { class: _, ...delegated } = props
return delegated
})
</script>
<template>
<PaginationFirst v-bind="delegatedProps">
<Button :class="cn('w-9 h-9 p-0', props.class)" variant="outline">
<slot>
<DoubleArrowLeftIcon />
</slot>
</Button>
</PaginationFirst>
</template>