Skip to content

login 화면 ui 변경 #61

Merged
Roy-wonji merged 4 commits intodevelopfrom
refator/login
Dec 29, 2025
Merged

login 화면 ui 변경 #61
Roy-wonji merged 4 commits intodevelopfrom
refator/login

Conversation

@Roy-wonji
Copy link
Collaborator

📋 주요 내용

🎨 소셜 로그인 UI 개선

  • SocialCircleButtonView 컴포넌트 분리
  • SocialType enum으로 통합 관리
  • 구글 이미지 에셋 추가
  • 코드 재사용성 및 유지보수성 향상

🔧 SwiftUI Preview 안정화

  • TuistTool.swift에 TUIST_LINKING=dynamic 환경변수 추가
  • Firebase Auth, AsyncMoya JIT 링킹 문제 해결
  • Preview 개발 생산성 대폭 향상

📦 의존성 관리 개선

  • 불필요한 SPM 의존성 정리
  • Presentation 모듈들 구조 최적화

@Roy-wonji Roy-wonji self-assigned this Dec 19, 2025
@Roy-wonji Roy-wonji added ♻️ 리팩토링 기존 코드 리팩토링 🎨 디자인 UI 디자인 작업 labels Dec 19, 2025
@honghoker honghoker self-requested a review December 21, 2025 07:10
Copy link
Member

@honghoker honghoker left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

프리뷰 드디어 되는구나! 👍
코멘트 확인하고 수정해줘! 고생 많았어~!

@@ -1,2 +1,2 @@
[tools]
tuist = "4.45.1"
tuist = "4.113.0"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

Comment on lines +46 to +58
EmptyReducer()
.ifCaseLet(\.splash, action: \.view.splash) {
Splash()
}
.ifCaseLet(\.auth, action: \.view.auth) {
AuthCoordinator()
}
.ifCaseLet(\.coreMember, action: \.view.coreMember) {
StaffCoordinator()
}
.ifCaseLet(\.member, action: \.view.member) {
MemberCoordinator()
}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

리듀서 체인을 자식 리듀서 -> 부모 리듀서 순서로 변경했네!
자식 리듀서가 액션을 먼저 처리하고 부모 리듀서에서 상태 갱신을 하기 때문에 이벤트 손실될 가능성이 줄어들어서 좋은 것 같아!

Comment on lines +12 to +14
case none
case apple
case google
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

우리가 applegoogle 소셜 로그인만 고정으로 지원하기 때문에 none 케이스는 불필요해보여.
LoginView에서도 CaseIterable를 통해 .none을 필터링해서 사용하고 있고, 다른 영역에서도 사용하는 곳이 없어서 제거하는게 좋을 것 같아!

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@honghoker 이것도 되어 있어 !

Comment on lines +12 to +16
public protocol AppleAuthRequestPreparing {
func prepare(_ request: ASAuthorizationAppleIDRequest) -> String
}

public struct AppleLoginManager: AppleAuthRequestPreparing {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

싱글톤에서 의존성 주입을 할 수 있도록 변경됐구나!
사용하는 곳에선 여전히 구현체를 직접 사용하고 있어서 나중에 의존성 주입을 받아서 사용하도록 수정하면 더 좋을 것 같아!

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@honghoker 이건 di 리 팩토링 하면서 할께 !

.SPM.firebaseFirestore,
.SPM.composableArchitecture

.Shared(implements: .ThirdParty)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Network/ThirdPartysShared/ThirdParty에 의존하면 네트워크 레이어가 사실상 앱 전체 서드파티에 접근 가능한 구조가 돼. Network에서 필요한 라이브러리만 별도로 선언하는 방향이 더 좋을 것 같아!

@honghoker honghoker self-requested a review December 28, 2025 09:13
@Roy-wonji Roy-wonji merged commit e57c2f2 into develop Dec 29, 2025
@Roy-wonji Roy-wonji deleted the refator/login branch December 29, 2025 14:02
Roy-wonji added a commit that referenced this pull request Feb 20, 2026
* 🔧[refactor]: Apple/Google 소셜 로그인 구조 개선 및 컴포넌트 분리

* 🔧[refactor]: 동적 링킹 지원 및 프리뷰 개선

* 🔧[refactor]: SocialType enum 정리 및 프리뷰 빌드 개선

* 🔧[refactor]: Network 모듈 의존성 경로 수정
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

♻️ 리팩토링 기존 코드 리팩토링 🎨 디자인 UI 디자인 작업

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants