diff options
| author | schererleander <leander@schererleander.de> | 2025-07-02 22:18:06 +0200 |
|---|---|---|
| committer | schererleander <leander@schererleander.de> | 2025-07-02 22:18:06 +0200 |
| commit | 899d50098c20c5652040e989932628d63af28301 (patch) | |
| tree | 7947dc9bb983494fc1d3dcffa2c770a3c8db88f8 /src/components/ui/input.tsx | |
| parent | ab03900adf080da08a0b2a3628fd0dcf0af28420 (diff) | |
feat: add UI components
Diffstat (limited to 'src/components/ui/input.tsx')
| -rw-r--r-- | src/components/ui/input.tsx | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/components/ui/input.tsx b/src/components/ui/input.tsx new file mode 100644 index 0000000..03295ca --- /dev/null +++ b/src/components/ui/input.tsx @@ -0,0 +1,21 @@ +import * as React from "react" + +import { cn } from "@/lib/utils" + +function Input({ className, type, ...props }: React.ComponentProps<"input">) { + return ( + <input + type={type} + data-slot="input" + className={cn( + "file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm", + "focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]", + "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive", + className + )} + {...props} + /> + ) +} + +export { Input } |
