From 14b8e08517a07d777b5447833cd7db5c428894a0 Mon Sep 17 00:00:00 2001 From: arsam Date: Fri, 18 Sep 2026 23:17:32 +0330 Subject: [PATCH] Import source: src/components/ui/TextInput Import the existing local project snapshot. This commit organizes existing files; it does not represent newly developed functionality. --- src/components/ui/TextInput.tsx | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 src/components/ui/TextInput.tsx diff --git a/src/components/ui/TextInput.tsx b/src/components/ui/TextInput.tsx new file mode 100644 index 0000000..0f7dd12 --- /dev/null +++ b/src/components/ui/TextInput.tsx @@ -0,0 +1,26 @@ +interface Props { + label: string; optional?: boolean; + value: string; onChange: (v: string) => void; + placeholder?: string; type?: string; +} + +export function TextInput({ label, optional, value, onChange, placeholder, type = 'text' }: Props) { + return ( +
+ + onChange(e.target.value)} placeholder={placeholder} + className="h-12 px-4 rounded-[11px] text-[14px] outline-none transition-all" + style={{ + background: 'var(--bg-input)', border: '1px solid var(--border-sub)', + color: 'var(--text-primary)', + }} + onFocus={e => { e.currentTarget.style.borderColor = '#7C6FE0'; e.currentTarget.style.boxShadow = '0 0 0 3px rgba(124,111,224,0.12)'; }} + onBlur={e => { e.currentTarget.style.borderColor = 'var(--border-sub)'; e.currentTarget.style.boxShadow = 'none'; }} + /> +
+ ); +}