Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 30 additions & 0 deletions Poppool/DataLayer/Data/Data.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@

/* Begin PBXBuildFile section */
0522C1DB2DB67C6100B141FF /* RxSwift in Frameworks */ = {isa = PBXBuildFile; productRef = 0522C1DA2DB67C6100B141FF /* RxSwift */; };
05BBA73A2DB75A320047A061 /* KakaoSDKAuth in Frameworks */ = {isa = PBXBuildFile; productRef = 05BBA7392DB75A320047A061 /* KakaoSDKAuth */; };
05BBA73C2DB75A320047A061 /* KakaoSDKUser in Frameworks */ = {isa = PBXBuildFile; productRef = 05BBA73B2DB75A320047A061 /* KakaoSDKUser */; };
05BDD3DC2DB66EB500C1E192 /* Alamofire in Frameworks */ = {isa = PBXBuildFile; productRef = 05BDD3DB2DB66EB500C1E192 /* Alamofire */; };
05C1D6172DB53A5600508FFD /* DomainInterface.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 05C1D6152DB53A5600508FFD /* DomainInterface.framework */; };
05C1D6192DB53A5600508FFD /* Infrastructure.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 05C1D6162DB53A5600508FFD /* Infrastructure.framework */; };
Expand Down Expand Up @@ -87,11 +89,16 @@
Network/Interceptor/TokenInterceptor.swift,
Network/Provider/Provider.swift,
Network/Provider/ProviderImpl.swift,
Network/Service/AppleLoginService.swift,
Network/Service/AuthServiceable.swift,
Network/Service/KakaoLoginService.swift,
Network/Service/PreSignedService.swift,
RepositoryImpl/AdminRepositoryImpl.swift,
RepositoryImpl/AppleLoginRepositoryImpl.swift,
RepositoryImpl/AuthAPIRepositoryImpl.swift,
RepositoryImpl/CommentAPIRepositoryImpl.swift,
RepositoryImpl/HomeAPIRepositoryImpl.swift,
RepositoryImpl/KakaoLoginRepositoryImpl.swift,
RepositoryImpl/MapDirectionRepositoryImpl.swift,
RepositoryImpl/MapRepositoryImpl.swift,
RepositoryImpl/PopUpAPIRepositoryImpl.swift,
Expand Down Expand Up @@ -121,8 +128,10 @@
files = (
05BDD3DC2DB66EB500C1E192 /* Alamofire in Frameworks */,
05C1D6172DB53A5600508FFD /* DomainInterface.framework in Frameworks */,
05BBA73C2DB75A320047A061 /* KakaoSDKUser in Frameworks */,
0522C1DB2DB67C6100B141FF /* RxSwift in Frameworks */,
05C1D6192DB53A5600508FFD /* Infrastructure.framework in Frameworks */,
05BBA73A2DB75A320047A061 /* KakaoSDKAuth in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
Expand Down Expand Up @@ -185,6 +194,8 @@
packageProductDependencies = (
05BDD3DB2DB66EB500C1E192 /* Alamofire */,
0522C1DA2DB67C6100B141FF /* RxSwift */,
05BBA7392DB75A320047A061 /* KakaoSDKAuth */,
05BBA73B2DB75A320047A061 /* KakaoSDKUser */,
);
productName = Data;
productReference = 058CC8DC2DB5376A0084221A /* Data.framework */;
Expand Down Expand Up @@ -217,6 +228,7 @@
packageReferences = (
08B2A3532DB66B1D00E57EFA /* XCRemoteSwiftPackageReference "Alamofire" */,
05BDD5DA2DB6786900C1E192 /* XCRemoteSwiftPackageReference "RxSwift" */,
05BBA7382DB75A320047A061 /* XCRemoteSwiftPackageReference "kakao-ios-sdk" */,
);
preferredProjectObjectVersion = 77;
productRefGroup = 058CC8DD2DB5376A0084221A /* Products */;
Expand Down Expand Up @@ -464,6 +476,14 @@
/* End XCConfigurationList section */

/* Begin XCRemoteSwiftPackageReference section */
05BBA7382DB75A320047A061 /* XCRemoteSwiftPackageReference "kakao-ios-sdk" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/kakao/kakao-ios-sdk";
requirement = {
kind = upToNextMajorVersion;
minimumVersion = 2.24.1;
};
};
05BDD5DA2DB6786900C1E192 /* XCRemoteSwiftPackageReference "RxSwift" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/ReactiveX/RxSwift";
Expand All @@ -488,6 +508,16 @@
package = 05BDD5DA2DB6786900C1E192 /* XCRemoteSwiftPackageReference "RxSwift" */;
productName = RxSwift;
};
05BBA7392DB75A320047A061 /* KakaoSDKAuth */ = {
isa = XCSwiftPackageProductDependency;
package = 05BBA7382DB75A320047A061 /* XCRemoteSwiftPackageReference "kakao-ios-sdk" */;
productName = KakaoSDKAuth;
};
05BBA73B2DB75A320047A061 /* KakaoSDKUser */ = {
isa = XCSwiftPackageProductDependency;
package = 05BBA7382DB75A320047A061 /* XCRemoteSwiftPackageReference "kakao-ios-sdk" */;
productName = KakaoSDKUser;
};
05BDD3DB2DB66EB500C1E192 /* Alamofire */ = {
isa = XCSwiftPackageProductDependency;
package = 08B2A3532DB66B1D00E57EFA /* XCRemoteSwiftPackageReference "Alamofire" */;
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
import Foundation

import DomainInterface

import RxSwift

public class AppleLoginRepositoryImpl: AppleLoginRepository {
private let service = AppleLoginService()

public init() { }

public func fetchUserCredential() -> Observable<AuthServiceResponse> {
return service.fetchUserCredential()
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
import Foundation

import DomainInterface

import RxSwift

public class KakaoLoginRepositoryImpl: KakaoLoginRepository {
let service = KakaoLoginService()

public init() { }

public func fetchUserCredential() -> Observable<AuthServiceResponse> {
return service.fetchUserCredential()
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
import Foundation

import DomainInterface

import RxSwift

public class AppleLoginUseCaseImpl: AppleLoginUseCase {
private let repository: AppleLoginRepository

public init(repository: AppleLoginRepository) {
self.repository = repository
}

public func fetchUserCredential() -> Observable<AuthServiceResponse> {
return repository.fetchUserCredential()
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
import Foundation

import DomainInterface

import RxSwift

public class KakaoLoginUseCaseImpl: KakaoLoginUseCase {
private let repository: KakaoLoginRepository

public init(repository: KakaoLoginRepository) {
self.repository = repository
}

public func fetchUserCredential() -> Observable<AuthServiceResponse> {
return repository.fetchUserCredential()
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
import Foundation

import RxSwift

public protocol AppleLoginRepository {
func fetchUserCredential() -> Observable<AuthServiceResponse>
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
import Foundation

import RxSwift

public protocol KakaoLoginRepository {
func fetchUserCredential() -> Observable<AuthServiceResponse>
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
import Foundation

import RxSwift

public protocol AppleLoginUseCase {
func fetchUserCredential() -> Observable<AuthServiceResponse>
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
import Foundation

import RxSwift

public protocol KakaoLoginUseCase {
func fetchUserCredential() -> Observable<AuthServiceResponse>
}
15 changes: 8 additions & 7 deletions Poppool/Poppool.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
/* Begin PBXBuildFile section */
0522C1D92DB67C5900B141FF /* RxSwift in Frameworks */ = {isa = PBXBuildFile; productRef = 0522C1D82DB67C5900B141FF /* RxSwift */; };
0522C3C62DB67D7800B141FF /* RxGesture in Frameworks */ = {isa = PBXBuildFile; productRef = 0522C3C52DB67D7800B141FF /* RxGesture */; };
05BBA73E2DB75DA60047A061 /* KakaoSDKUser in Frameworks */ = {isa = PBXBuildFile; productRef = 05BBA73D2DB75DA60047A061 /* KakaoSDKUser */; };
05BDD3D62DB66E1700C1E192 /* DomainInterface.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 05BDD3D52DB66E1700C1E192 /* DomainInterface.framework */; };
05BDD3D72DB66E1700C1E192 /* DomainInterface.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 05BDD3D52DB66E1700C1E192 /* DomainInterface.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
05C1D60B2DB53A4900508FFD /* Data.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 05C1D6072DB53A4900508FFD /* Data.framework */; };
Expand All @@ -21,7 +22,6 @@
05C1D6122DB53A4900508FFD /* Presentation.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 05C1D60A2DB53A4900508FFD /* Presentation.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
4E15142A2D99480200DFD08F /* NMapsMap in Frameworks */ = {isa = PBXBuildFile; productRef = 4E1514292D99480200DFD08F /* NMapsMap */; };
4E15142E2D994A3A00DFD08F /* KakaoSDKAuth in Frameworks */ = {isa = PBXBuildFile; productRef = 4E15142D2D994A3A00DFD08F /* KakaoSDKAuth */; };
4E1514302D994A3A00DFD08F /* KakaoSDKCommon in Frameworks */ = {isa = PBXBuildFile; productRef = 4E15142F2D994A3A00DFD08F /* KakaoSDKCommon */; };
4EE360FD2D91876300D2441D /* NMapsMap in Frameworks */ = {isa = PBXBuildFile; productRef = 4EE360FC2D91876300D2441D /* NMapsMap */; };
/* End PBXBuildFile section */

Expand Down Expand Up @@ -89,9 +89,9 @@
0522C1D92DB67C5900B141FF /* RxSwift in Frameworks */,
4E15142E2D994A3A00DFD08F /* KakaoSDKAuth in Frameworks */,
05C1D60D2DB53A4900508FFD /* Domain.framework in Frameworks */,
4E1514302D994A3A00DFD08F /* KakaoSDKCommon in Frameworks */,
05C1D6112DB53A4900508FFD /* Presentation.framework in Frameworks */,
05C1D60B2DB53A4900508FFD /* Data.framework in Frameworks */,
05BBA73E2DB75DA60047A061 /* KakaoSDKUser in Frameworks */,
0522C3C62DB67D7800B141FF /* RxGesture in Frameworks */,
4EE360FD2D91876300D2441D /* NMapsMap in Frameworks */,
4E15142A2D99480200DFD08F /* NMapsMap in Frameworks */,
Expand Down Expand Up @@ -155,9 +155,9 @@
packageProductDependencies = (
4E1514292D99480200DFD08F /* NMapsMap */,
4E15142D2D994A3A00DFD08F /* KakaoSDKAuth */,
4E15142F2D994A3A00DFD08F /* KakaoSDKCommon */,
0522C1D82DB67C5900B141FF /* RxSwift */,
0522C3C52DB67D7800B141FF /* RxGesture */,
05BBA73D2DB75DA60047A061 /* KakaoSDKUser */,
);
productName = Poppool;
productReference = BDCA41BD2CF35AC0005EECF6 /* Poppool.app */;
Expand Down Expand Up @@ -545,6 +545,11 @@
package = 0522C3C42DB67D7800B141FF /* XCRemoteSwiftPackageReference "RxGesture" */;
productName = RxGesture;
};
05BBA73D2DB75DA60047A061 /* KakaoSDKUser */ = {
isa = XCSwiftPackageProductDependency;
package = 08F403312D884F4D00BFA61A /* XCRemoteSwiftPackageReference "kakao-ios-sdk" */;
productName = KakaoSDKUser;
};
4E1514292D99480200DFD08F /* NMapsMap */ = {
isa = XCSwiftPackageProductDependency;
package = 4E1514282D99480200DFD08F /* XCRemoteSwiftPackageReference "SPM-NMapsMap" */;
Expand All @@ -554,10 +559,6 @@
isa = XCSwiftPackageProductDependency;
productName = KakaoSDKAuth;
};
4E15142F2D994A3A00DFD08F /* KakaoSDKCommon */ = {
isa = XCSwiftPackageProductDependency;
productName = KakaoSDKCommon;
};
4EE360FC2D91876300D2441D /* NMapsMap */ = {
isa = XCSwiftPackageProductDependency;
package = 4EE360FB2D91876300D2441D /* XCRemoteSwiftPackageReference "SPM-NMapsMap" */;
Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions Poppool/Poppool/Application/AppDelegate.swift
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,8 @@ extension AppDelegate {
DIContainer.register(SignUpRepository.self) { return SignUpRepositoryImpl(provider: provider) }
DIContainer.register(MapDirectionRepository.self) { return MapDirectionRepositoryImpl(provider: provider) }
DIContainer.register(PreSignedRepository.self) { return PreSignedRepositoryImpl() }
DIContainer.register(KakaoLoginRepository.self) { return KakaoLoginRepositoryImpl() }
DIContainer.register(AppleLoginRepository.self) { return AppleLoginRepositoryImpl() }

// MARK: Resolve repository
@Dependency var mapRepository: MapRepository
Expand All @@ -63,6 +65,8 @@ extension AppDelegate {
@Dependency var authAPIRepository: AuthAPIRepository
@Dependency var signUpRepository: SignUpRepository
@Dependency var preSignedRepository: PreSignedRepository
@Dependency var kakaoLoginRepository: KakaoLoginRepository
@Dependency var appleLoginRepository: AppleLoginRepository

// MARK: Register UseCase
DIContainer.register(MapUseCase.self) { return MapUseCaseImpl(repository: mapRepository) }
Expand All @@ -74,5 +78,7 @@ extension AppDelegate {
DIContainer.register(AuthAPIUseCase.self) { return AuthAPIUseCaseImpl(repository: authAPIRepository) }
DIContainer.register(SignUpAPIUseCase.self) { return SignUpAPIUseCaseImpl(repository: signUpRepository) }
DIContainer.register(PreSignedUseCase.self) { return PreSignedUseCaseImpl(repository: preSignedRepository) }
DIContainer.register(KakaoLoginUseCase.self) { return KakaoLoginUseCaseImpl(repository: kakaoLoginRepository) }
DIContainer.register(AppleLoginUseCase.self) { return AppleLoginUseCaseImpl(repository: appleLoginRepository) }
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,6 @@
05BDD5CF2DB6770300C1E192 /* Lottie in Frameworks */ = {isa = PBXBuildFile; productRef = 05BDD5CE2DB6770300C1E192 /* Lottie */; };
05C1D62C2DB53A8200508FFD /* DomainInterface.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 05C1D62A2DB53A8200508FFD /* DomainInterface.framework */; };
05C1D62E2DB53A8200508FFD /* Infrastructure.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 05C1D62B2DB53A8200508FFD /* Infrastructure.framework */; };
05EC93CF2DB64C6F00771CB3 /* KakaoSDKAuth in Frameworks */ = {isa = PBXBuildFile; productRef = 05EC93CE2DB64C6F00771CB3 /* KakaoSDKAuth */; };
05EC93D12DB64C6F00771CB3 /* KakaoSDKUser in Frameworks */ = {isa = PBXBuildFile; productRef = 05EC93D02DB64C6F00771CB3 /* KakaoSDKUser */; };
05EC93D32DB6536200771CB3 /* RxCocoa in Frameworks */ = {isa = PBXBuildFile; productRef = 05EC93D22DB6536200771CB3 /* RxCocoa */; };
08B2A3582DB66B4100E57EFA /* RxKeyboard in Frameworks */ = {isa = PBXBuildFile; productRef = 08B2A3572DB66B4100E57EFA /* RxKeyboard */; };
08B2A35B2DB66B5A00E57EFA /* FloatingPanel in Frameworks */ = {isa = PBXBuildFile; productRef = 08B2A35A2DB66B5A00E57EFA /* FloatingPanel */; };
Expand Down Expand Up @@ -69,11 +67,9 @@
0522C1E12DB67C8300B141FF /* RxSwift in Frameworks */,
05C1D62E2DB53A8200508FFD /* Infrastructure.framework in Frameworks */,
05125BA12DB6275C001342A2 /* PanModal in Frameworks */,
05EC93CF2DB64C6F00771CB3 /* KakaoSDKAuth in Frameworks */,
08B2A3642DB66BBC00E57EFA /* Tabman in Frameworks */,
05EC93D32DB6536200771CB3 /* RxCocoa in Frameworks */,
08B2A35E2DB66B8600E57EFA /* RxDataSources in Frameworks */,
05EC93D12DB64C6F00771CB3 /* KakaoSDKUser in Frameworks */,
08B2A3582DB66B4100E57EFA /* RxKeyboard in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
Expand Down Expand Up @@ -141,8 +137,6 @@
packageProductDependencies = (
05125B972DB626E3001342A2 /* ReactorKit */,
05125BA02DB6275C001342A2 /* PanModal */,
05EC93CE2DB64C6F00771CB3 /* KakaoSDKAuth */,
05EC93D02DB64C6F00771CB3 /* KakaoSDKUser */,
05EC93D22DB6536200771CB3 /* RxCocoa */,
08B2A3572DB66B4100E57EFA /* RxKeyboard */,
08B2A35A2DB66B5A00E57EFA /* FloatingPanel */,
Expand Down Expand Up @@ -188,7 +182,6 @@
05125B962DB626E3001342A2 /* XCRemoteSwiftPackageReference "ReactorKit" */,
05125B992DB626ED001342A2 /* XCRemoteSwiftPackageReference "SnapKit" */,
05125B9F2DB6275C001342A2 /* XCRemoteSwiftPackageReference "PanModal" */,
05EC93CD2DB64C6F00771CB3 /* XCRemoteSwiftPackageReference "kakao-ios-sdk" */,
08B2A3562DB66B4100E57EFA /* XCRemoteSwiftPackageReference "RxKeyboard" */,
08B2A3592DB66B5A00E57EFA /* XCRemoteSwiftPackageReference "FloatingPanel" */,
08B2A35C2DB66B8600E57EFA /* XCRemoteSwiftPackageReference "RxDataSources" */,
Expand Down Expand Up @@ -484,14 +477,6 @@
minimumVersion = 4.5.1;
};
};
05EC93CD2DB64C6F00771CB3 /* XCRemoteSwiftPackageReference "kakao-ios-sdk" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/kakao/kakao-ios-sdk";
requirement = {
kind = upToNextMajorVersion;
minimumVersion = 2.24.0;
};
};
08B2A3562DB66B4100E57EFA /* XCRemoteSwiftPackageReference "RxKeyboard" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/RxSwiftCommunity/RxKeyboard";
Expand Down Expand Up @@ -576,16 +561,6 @@
package = 05BDD5CD2DB6770300C1E192 /* XCRemoteSwiftPackageReference "lottie-ios" */;
productName = Lottie;
};
05EC93CE2DB64C6F00771CB3 /* KakaoSDKAuth */ = {
isa = XCSwiftPackageProductDependency;
package = 05EC93CD2DB64C6F00771CB3 /* XCRemoteSwiftPackageReference "kakao-ios-sdk" */;
productName = KakaoSDKAuth;
};
05EC93D02DB64C6F00771CB3 /* KakaoSDKUser */ = {
isa = XCSwiftPackageProductDependency;
package = 05EC93CD2DB64C6F00771CB3 /* XCRemoteSwiftPackageReference "kakao-ios-sdk" */;
productName = KakaoSDKUser;
};
05EC93D22DB6536200771CB3 /* RxCocoa */ = {
isa = XCSwiftPackageProductDependency;
package = 05125B932DB62295001342A2 /* XCRemoteSwiftPackageReference "RxSwift" */;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -168,7 +168,9 @@ final class DetailReactor: Reactor {
} else {
let loginController = SubLoginController()
loginController.reactor = SubLoginReactor(
authAPIUseCase: DIContainer.resolve(AuthAPIUseCase.self)
authAPIUseCase: DIContainer.resolve(AuthAPIUseCase.self),
kakaoLoginUseCase: DIContainer.resolve(KakaoLoginUseCase.self),
appleLoginUseCase: DIContainer.resolve(AppleLoginUseCase.self)
)
let nextController = UINavigationController(rootViewController: loginController)
nextController.modalPresentationStyle = .fullScreen
Expand Down Expand Up @@ -206,7 +208,9 @@ final class DetailReactor: Reactor {
} else {
let loginController = SubLoginController()
loginController.reactor = SubLoginReactor(
authAPIUseCase: DIContainer.resolve(AuthAPIUseCase.self)
authAPIUseCase: DIContainer.resolve(AuthAPIUseCase.self),
kakaoLoginUseCase: DIContainer.resolve(KakaoLoginUseCase.self),
appleLoginUseCase: DIContainer.resolve(AppleLoginUseCase.self)
)
let nextController = UINavigationController(rootViewController: loginController)
nextController.modalPresentationStyle = .fullScreen
Expand Down Expand Up @@ -243,7 +247,9 @@ final class DetailReactor: Reactor {
case .moveToLoginScene(let controller):
let loginController = SubLoginController()
loginController.reactor = SubLoginReactor(
authAPIUseCase: DIContainer.resolve(AuthAPIUseCase.self)
authAPIUseCase: DIContainer.resolve(AuthAPIUseCase.self),
kakaoLoginUseCase: DIContainer.resolve(KakaoLoginUseCase.self),
appleLoginUseCase: DIContainer.resolve(AppleLoginUseCase.self)
)
let nextController = UINavigationController(rootViewController: loginController)
nextController.modalPresentationStyle = .fullScreen
Expand Down
Loading