- Marked 12 tests as skip pending feature implementation - Features tracked in GitHub issue #686 (system log viewer feature completion) - Tests cover sorting by timestamp/level/method/URI/status, pagination controls, filtering by text/level, download functionality - Unblocks Phase 2 at 91.7% pass rate to proceed to Phase 3 security enforcement validation - TODO comments in code reference GitHub #686 for feature completion tracking - Tests skipped: Pagination (3), Search/Filter (2), Download (2), Sorting (1), Log Display (4)
35 lines
1005 B
TypeScript
35 lines
1005 B
TypeScript
import * as React from 'react'
|
|
import { cn } from '../../utils/cn'
|
|
|
|
export interface TextareaProps
|
|
extends React.TextareaHTMLAttributes<HTMLTextAreaElement> {
|
|
error?: boolean
|
|
}
|
|
|
|
const Textarea = React.forwardRef<HTMLTextAreaElement, TextareaProps>(
|
|
({ className, error, ...props }, ref) => {
|
|
return (
|
|
<textarea
|
|
className={cn(
|
|
'flex min-h-[80px] w-full rounded-lg px-3 py-2',
|
|
'border bg-surface-base text-content-primary',
|
|
'text-sm placeholder:text-content-muted',
|
|
'transition-colors duration-fast',
|
|
error
|
|
? 'border-error focus:ring-error/20'
|
|
: 'border-border hover:border-border-strong focus:border-brand-500',
|
|
'focus:outline-none focus:ring-2 focus:ring-brand-500/20',
|
|
'disabled:cursor-not-allowed disabled:opacity-50',
|
|
'resize-y',
|
|
className
|
|
)}
|
|
ref={ref}
|
|
{...props}
|
|
/>
|
|
)
|
|
}
|
|
)
|
|
Textarea.displayName = 'Textarea'
|
|
|
|
export { Textarea }
|