shadcn, restyled · @jengacore/input
Input
36px control with an `input` border at ≥3:1 and a 2px focus ring.
Install
terminal
npx shadcn@latest add @jengacore/inputWithout the namespace configured: npx shadcn@latest add https://ui.jengacore.com/r/<new-york-v4|base-nova>/input.json
Registry dependencies
Source
components/ui/input.tsx
import * as React from "react"
import { cn } from "@/lib/utils"
/**
* 36px control with an `input` border (≥3:1 on card in every theme). Focus turns the border ring-green with a soft halo;
* aria-invalid keeps it red (red halo on focus).
* Add `font-mono` for IDs, MSISDNs, IBANs and message types. For amounts use CurrencyInput.
*/
function Input({ className, type, ...props }: React.ComponentProps<"input">) {
return (
<input
type={type}
data-slot="input"
className={cn(
"h-9 w-full min-w-0 rounded-md border border-input bg-card px-3 text-sm text-foreground placeholder:text-muted-foreground",
"transition-[border-color,box-shadow] duration-fast ease-jc outline-none",
"file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground",
"focus-field",
"disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50",
className
)}
{...props}
/>
)
}
export { Input }