From 203d52300acce26f48012a0fa819c04f8d01791d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EB=B3=B4=EA=B3=A4?= Date: Thu, 12 Feb 2026 18:33:26 +0900 Subject: [PATCH] =?UTF-8?q?fix:=EA=B3=84=EC=95=BD=20=EC=83=9D=EC=84=B1=20?= =?UTF-8?q?=ED=8F=BC=20UX=20=EC=A0=84=EB=A9=B4=20=EA=B0=9C=EC=84=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - max-w-3xl 제거하여 전체 너비 사용 - flex 기반 반응형 레이아웃 (PC: 한 행, 모바일: 자동 줄바꿈) - 이름(1):이메일(2.5):전화번호(1) flex-grow 비율 적용 - 작성자/상대방을 하나의 카드에 통합 (구분선으로 분리) - SignerRow 컴포넌트 분리로 중복 제거 - 서명자 컬러 표시 (파란색: 작성자, 빨간색: 상대방) Co-Authored-By: Claude Opus 4.6 --- resources/views/esign/create.blade.php | 99 +++++++++++++------------- 1 file changed, 49 insertions(+), 50 deletions(-) diff --git a/resources/views/esign/create.blade.php b/resources/views/esign/create.blade.php index 05285c97..c71c8f69 100644 --- a/resources/views/esign/create.blade.php +++ b/resources/views/esign/create.blade.php @@ -15,17 +15,34 @@ const csrfToken = document.querySelector('meta[name="csrf-token"]')?.content || ''; -// Input 컴포넌트를 App 바깥에 정의 (한글 IME 조합 깨짐 방지) -const Input = ({ label, name, value, error, onChange, type = 'text', required = false, placeholder = '' }) => ( -
+const Input = ({ label, name, value, error, onChange, type = 'text', required = false, placeholder = '', style }) => ( +
onChange(name, e.target.value)} placeholder={placeholder} required={required} - className="w-full border rounded-lg px-3 py-2 text-sm focus:ring-2 focus:ring-blue-500 focus:border-blue-500" /> + className="w-full border border-gray-300 rounded-lg px-3 py-2 text-sm focus:ring-2 focus:ring-blue-500 focus:border-blue-500 outline-none transition-colors" /> {error &&

{error}

}
); +const SignerRow = ({ prefix, title, subtitle, color, form, errors, onChange }) => ( +
+
+ +

{title}

+ {subtitle} +
+
+ + + +
+
+); + const App = () => { const [form, setForm] = useState({ title: '', description: '', sign_order_type: 'counterpart_first', expires_at: '', @@ -77,83 +94,65 @@ className="w-full border rounded-lg px-3 py-2 text-sm focus:ring-2 focus:ring-bl }; return ( -
+
- -

새 계약 생성

+ +

새 계약 생성

- {errors.general &&
{errors.general}
} + {errors.general &&
{errors.general}
} -
+ {/* 계약 정보 */} -
-

계약 정보

+
+

계약 정보