it-tools/packages/app/src/modules/ui/components/command/CommandInput.vue
Corentin Thomasset b88f13a7ca
feat(tools): added token generator
- Added Slider component to the UI library
- Added Checkbox component to the UI library
- Added Textarea component to the UI library
2024-10-26 23:51:56 +02:00

33 lines
980 B
Vue

<script setup lang="ts">
import { cn } from '@/src/modules/shared/style/cn';
import { ComboboxInput, type ComboboxInputProps, useForwardProps } from 'radix-vue';
import { computed, type HTMLAttributes } from 'vue';
defineOptions({
inheritAttrs: false,
});
const props = defineProps<ComboboxInputProps & {
class?: HTMLAttributes['class'];
}>();
const delegatedProps = computed(() => {
const { class: _, ...delegated } = props;
return delegated;
});
const forwardedProps = useForwardProps(delegatedProps);
</script>
<template>
<div class="flex items-center border-b px-3" cmdk-input-wrapper>
<Icon name="i-tabler-search" class="mr-2 h-4 w-4 shrink-0 opacity-50" />
<ComboboxInput
v-bind="{ ...forwardedProps, ...$attrs }"
auto-focus
:class="cn('flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50', props.class)"
/>
</div>
</template>