-
Notifications
You must be signed in to change notification settings - Fork 0
[FEAT] 로그인 및 회원가입 플로우 구현 #21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
21 commits
Select commit
Hold shift + click to select a range
59c7360
[CHORE]: Tuist 플러그인에 신규 모듈 정의 추가
khyeji98 08824ee
[CHORE]: 카메라/사진 권한 및 Kakao REST 키 plist 추가
khyeji98 ec84724
[FEAT]: AppEnvironment 환경값 헬퍼 추가
khyeji98 59cb98f
[FEAT]: 인터셉터 미적용 쿼리 파라미터 요청 추가
khyeji98 9a62c44
[FEAT]: Station 엔티티 및 검색 도메인 인터페이스 정의
khyeji98 1dc341f
[FEAT]: Kakao Local 출발지 검색 데이터 레이어 구현
khyeji98 60cc9a9
[FEAT]: SearchStationsClient TCA 의존성 정의
khyeji98 9659a93
[FEAT]: 회원가입 플로우 및 임시 홈 화면 구현
khyeji98 011947e
[REFACTOR]: Presentation 모듈을 Feature 재노출로 단순화
khyeji98 fa29d6b
[FEAT]: RootFeature 도입 및 앱 진입점 교체
khyeji98 4e5ed36
[CHORE]: Tuist 의존성 그래프 갱신
khyeji98 2ffc0c2
[REFACTOR]: RootFeature를 별도 Presentation 모듈로 분리
khyeji98 e7b2904
[CHORE]: Tuist 의존성 그래프 갱신
khyeji98 60d0918
[FIX]: 출발지 검색 시트 헤더 레이아웃 수정
khyeji98 e6a3876
[DOCS]: TCA Dependency 컨벤션 문서 추가
khyeji98 4a87de8
[DOCS]: 회원가입 플로우 스펙 문서 추가
khyeji98 f13c75c
[MERGE]: develop 브랜치 병합 및 충돌 해결
khyeji98 241f921
[REFACTOR]: 임시 로그인 화면을 통합 로그인 화면으로 교체
khyeji98 801ef3e
[REFACTOR]: Presentation 모듈 정리 및 RootFeature 재노출
khyeji98 978913a
[CHORE]: Tuist 의존성 그래프 갱신
khyeji98 9c184a8
[REFACTOR]: Project.swift settings 파라미터 불필요한 공백 제거
khyeji98 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
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
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
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
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
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
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
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
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
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
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
This file was deleted.
Oops, something went wrong.
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,18 @@ | ||
| // | ||
| // SearchStationsFactory.swift | ||
| // App | ||
| // | ||
| // Repository → UseCase → TCA Client을 조립하는 Composition Root | ||
| // | ||
|
|
||
| import CoreDependencies | ||
| import DataUseCase | ||
| import Repository | ||
|
|
||
| enum SearchStationsFactory { | ||
| static func makeClient() -> SearchStationsClient { | ||
| let repository = LocationSearchRepositoryImpl() | ||
| let useCase = SearchStationsUseCaseImpl(repository: repository) | ||
| return .live(useCase: useCase) | ||
| } | ||
| } | ||
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
File renamed without changes.
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,6 @@ | ||
| // | ||
| // Base.swift | ||
| // CoreDependencies | ||
| // | ||
|
|
||
| import Foundation |
38 changes: 38 additions & 0 deletions
38
Projects/Core/CoreDependencies/Sources/SearchStationsClient.swift
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,38 @@ | ||
| // | ||
| // SearchStationsClient.swift | ||
| // CoreDependencies | ||
| // | ||
| // Kakao Local 키워드 검색을 Feature에 노출하는 TCA struct-based client | ||
| // | ||
|
|
||
| import ComposableArchitecture | ||
| import Entity | ||
| import Foundation | ||
| import UseCase | ||
|
|
||
| @DependencyClient | ||
| public struct SearchStationsClient: Sendable { | ||
| public var searchStations: @Sendable (_ keyword: String) async throws -> [Station] | ||
| } | ||
|
|
||
| public extension SearchStationsClient { | ||
| static func live(useCase: SearchStationsUseCase) -> Self { | ||
| Self( | ||
| searchStations: { keyword in | ||
| try await useCase.execute(keyword: keyword) | ||
| } | ||
| ) | ||
| } | ||
| } | ||
|
|
||
| extension SearchStationsClient: DependencyKey { | ||
| public static let liveValue: SearchStationsClient = SearchStationsClient() | ||
| public static let testValue: SearchStationsClient = SearchStationsClient() | ||
| } | ||
|
|
||
| public extension DependencyValues { | ||
| var searchStationsClient: SearchStationsClient { | ||
| get { self[SearchStationsClient.self] } | ||
| set { self[SearchStationsClient.self] = newValue } | ||
| } | ||
| } |
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
Oops, something went wrong.
Oops, something went wrong.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
중요한건 아닌데, 해당 네이밍도 컨벤션을 맞추면 좋을것 같아요.
현재 makeClient는 너무 포괄적이니, 도메인을 포함한 네이밍은 어떠신가요? 예를들면 makeSearchStationsClient 처럼요.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Factory 객체 네이밍 자체가 특정 Client를 지칭하고 있어서 호출시 네이밍이 중복되는 것 같기도 해요..!
만약 제안해주신 방향대로 한다면, 공통 팩토리에서 각 Client 생성메서드에 따라 네이밍을 설정하는 것이 좋지 않을까용?