primitives

Input

Input — базовый примитив RevueUI (Reka UI + shadcn-совместимый API).

Загрузка превью…

src/ui/input/Input.vue

<script setup lang="ts">
import type { HTMLAttributes, InputHTMLAttributes } from "vue"
import { cn } from "@/lib/utils"

const props = defineProps<{
  /** Доп. классы. Имя `class` — соглашение shadcn-vue (не `className`). */
  class?: HTMLAttributes["class"]
  type?: InputHTMLAttributes["type"]
}>()
</script>

<template>
  <input
    :type="props.type"
    data-slot="input"
    :class="
      cn(
        'cn-input w-full min-w-0 outline-none file:inline-flex file:border-0 file:bg-transparent file:text-foreground placeholder:text-muted-foreground disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50',
        props.class
      )
    "
  />
</template>

src/ui/input/index.ts

export { default as Input } from "./Input.vue"

Установка

npx shadcn-vue@latest add https://revueui.rootapi.dev/r/input.json

Зависимости реестра

Источник: порт из ReUI (Keenthemes, MIT)