Textarea
pure-ui/textareaFreeComponent
A customizable textarea component
Install it
npx shadcn@latest add https://raw.githubusercontent.com/MusKRI/pure-ui/main/public/r/textarea.jsonSource
1"use client";23import * as React from "react";4import { Field as FieldPrimitive } from "@base-ui/react/field";5import { mergeProps } from "@base-ui/react/merge-props";67import { cn } from "@/lib/classes";89export interface TextareaProps extends React.ComponentProps<"textarea"> {10 size?: "sm" | "default" | "lg" | number;11}1213function Textarea({ className, size = "default", ...props }: TextareaProps) {14 return (15 <FieldPrimitive.Control16 render={(defaultProps) => (17 <textarea18 data-slot="textarea"19 className={cn(20 "field-sizing-content relative min-h-17.5 w-full rounded-lg border border-input/70 bg-background dark:bg-input/32 shadow-xs text-base/5 sm:text-sm px-3 py-2 outline-none max-sm:min-h-20.5 placeholder:text-muted-foreground/80 [transition:box-shadow_150ms_ease-out]",21 // Focus State22 "focus-visible:border-ring focus-visible:ring-[1px] disabled:opacity-64 focus-visible:aria-invalid:border-destructive/64 focus-visible:aria-invalid:ring-destructive/16 [disabled,focus-visible,aria-invalid]:shadow-none dark:aria-invalid:ring-destructive/24",23 size === "sm" &&24 "min-h-16.5 px-[calc(--spacing(2.5)-1px)] py-[calc(--spacing(1)-1px)] max-sm:min-h-19.5",25 size === "lg" &&26 "min-h-18.5 py-[calc(--spacing(2)-1px)] max-sm:min-h-21.5",27 className28 )}29 {...mergeProps(defaultProps, props)}30 />31 )}32 />33 );34}3536export { Textarea };
What it pulls in
npm packages
Other registry items
Files it writes
More from Pure UI
All 291 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| Accordionaccordion | Pure UI | Components | Free | 4 deps | |
| Avataravatar | Pure UI | Components | Free | 3 deps | |
| Badgebadge | Pure UI | Components | Free | 4 deps | |
| Buttonbutton | Pure UI | Components | Free | 4 deps | |
| Button Groupbutton-group | Pure UI | Components | Free | 4 deps | |
| Calendarcalendar | Pure UI | Components | Free | 4 deps | |
| Cardcard | Pure UI | Components | Free | 2 deps | |
| Checkboxcheckbox | Pure UI | Components | Free | 4 deps |
