Merged
Conversation
This reverts commit 625eede.
…NINEDOT/NINEDOT-CLIENT into refactor/#182/textField
Collaborator
jisooooooooooo
left a comment
There was a problem hiding this comment.
분기 처리가 복잡해 로직 구현할 때 힘드셨을 거 같은데 훨씬 깔끔해져서 사용할 때도 더 편할 것 같네용✨
이전에 머지해 둔 레이아웃 토큰 스타일 코드에 적용해봐도 좋을 것 같고 코멘트 확인 부탁드려요!
고생 많으셨어욤 ~~~~👍🏻😙
jisooooooooooo
approved these changes
Sep 19, 2025
kwonsaebom
approved these changes
Sep 19, 2025
Contributor
kwonsaebom
left a comment
There was a problem hiding this comment.
텍스트필드 리팩토링 힘드셨을텐데 너무너무 수고 많으셨습니다 !! 👍👍
훨씬 깔끔해진 것 같아요 !
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
💡 Summary
공통 BaseTextField 도입하여 Signup/Mandalart/Modify가 동일 패턴으로 동작하게 했습니다. 상태 계산, 이벤트, 접근성, 스타일 생성 로직을 표준화해서 최대한 중복을 제거하려고 했습니다.
✅ Tasks
- BaseTextField 도입
BaseTextField로 입력 수명주기(포커스, IME 조합, Enter/Blur 커밋, clear)를 표준화하여 render-prop으로 inputProps·clear·commit·hasValue·isFocused 전달했습니다. 회원가입 이메일 텍스트필드에서 사용되는 잠금은 readOnly/aria-readonly로만 처리했습니다. 검증/제약은 도메인별 validation.ts로 분리했고, 스타일은 makeBox/createVariants 패턴으로 상태별 보더/배경을 일관화했습니다.
👀 To Reviewer
BaseTextField가 Enter/Blur 커밋·IME 처리·clear 등을 알아서 처리하므로 value/onChange만 넘기면 됩니다 !
📸 Screenshot
storybook에서 컴포넌트 상태별로 확인할 수 있습니다 !! 워낙 복잡해서 만다라트/회원가입/수정하기, 상태별로 피그마 스타일과 일치하는지, 잘 동작하는지 봐주시면 좋을 것 같습니다 .. ㅎㅎ