콘텐츠 메인
- 남성향, 여성향 콘텐츠 설정 적용 - 19금 콘텐츠 보기 여부 설정 적용
This commit is contained in:
		| @@ -22,6 +22,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate { | ||||
|         FirebaseApp.configure() | ||||
|         Notifly.initialize(projectId: NOTIFLY_PROJECT_ID, username: NOTIFLY_USERNAME, password: NOTIFLY_PASSWORD) | ||||
|         Messaging.messaging().delegate = self | ||||
|         setupAppsFlyer() | ||||
|          | ||||
|         // For iOS 10 display notification (sent via APNS) | ||||
|         UNUserNotificationCenter.current().delegate = self | ||||
| @@ -37,8 +38,6 @@ class AppDelegate: UIResponder, UIApplicationDelegate { | ||||
|         ApplicationDelegate.shared.application(application, didFinishLaunchingWithOptions: launchOptions) | ||||
|         AppEvents.shared.activateApp() | ||||
|          | ||||
|         setupAppsFlyer() | ||||
|          | ||||
|         return true | ||||
|     } | ||||
|      | ||||
|   | ||||
| @@ -29,7 +29,7 @@ enum ContentApi { | ||||
|     case getCurationList(isAdultContentVisible: Bool, contentType: ContentType, page: Int, size: Int) | ||||
|     case donation(request: AudioContentDonationRequest) | ||||
|     case modifyComment(request: ModifyCommentRequest) | ||||
|     case getNewContentThemeList | ||||
|     case getNewContentThemeList(isAdultContentVisible: Bool, contentType: ContentType) | ||||
|     case getNewContentAllOfTheme(isFree: Bool, theme: String, isAdultContentVisible: Bool, contentType: ContentType, page: Int, size: Int) | ||||
|     case getAudioContentListByCurationId(curationId: Int, isAdultContentVisible: Bool, contentType: ContentType, page: Int, size: Int, sort: ContentCurationViewModel.Sort) | ||||
|     case getContentRanking(page: Int, size: Int, sortType: String) | ||||
| @@ -39,33 +39,33 @@ enum ContentApi { | ||||
|     case getAudioContentByTheme(themeId: Int, isAdultContentVisible: Bool, contentType: ContentType, page: Int, size: Int, sort: ContentAllByThemeViewModel.Sort) | ||||
|     case generateUrl(contentId: Int) | ||||
|      | ||||
|     case getContentMainHome | ||||
|     case getPopularContentByCreator(creatorId: Int) | ||||
|     case getContentMainHome(isAdultContentVisible: Bool, contentType: ContentType) | ||||
|     case getPopularContentByCreator(creatorId: Int, isAdultContentVisible: Bool, contentType: ContentType) | ||||
|      | ||||
|     case getContentMainSeries | ||||
|     case getRecommendSeriesListByGenre(genreId: Int) | ||||
|     case getRecommendSeriesByCreator(creatorId: Int) | ||||
|     case getCompletedSeries(page: Int, size: Int) | ||||
|     case getContentMainSeries(isAdultContentVisible: Bool, contentType: ContentType) | ||||
|     case getRecommendSeriesListByGenre(genreId: Int, isAdultContentVisible: Bool, contentType: ContentType) | ||||
|     case getRecommendSeriesByCreator(creatorId: Int, isAdultContentVisible: Bool, contentType: ContentType) | ||||
|     case getCompletedSeries(isAdultContentVisible: Bool, contentType: ContentType, page: Int, size: Int) | ||||
|      | ||||
|     case getContentMainContent | ||||
|     case getContentMainContent(isAdultContentVisible: Bool, contentType: ContentType) | ||||
|     case getContentMainNewContentOfTheme(theme: String, isAdultContentVisible: Bool, contentType: ContentType) | ||||
|     case getDailyContentRanking(sortType: String) | ||||
|     case getRecommendContentByTag(tag: String) | ||||
|     case getContentMainContentPopularContentByCreator(creatorId: Int) | ||||
|     case getDailyContentRanking(sortType: String, isAdultContentVisible: Bool, contentType: ContentType) | ||||
|     case getRecommendContentByTag(tag: String, contentType: ContentType) | ||||
|     case getContentMainContentPopularContentByCreator(creatorId: Int, isAdultContentVisible: Bool, contentType: ContentType) | ||||
|      | ||||
|     case getContentMainAlarm | ||||
|     case getContentMainAlarmAll(theme: String, page: Int, size: Int) | ||||
|     case getContentMainAlarm(isAdultContentVisible: Bool, contentType: ContentType) | ||||
|     case getContentMainAlarmAll(theme: String, isAdultContentVisible: Bool, contentType: ContentType, page: Int, size: Int) | ||||
|      | ||||
|     case getContentMainAsmr | ||||
|     case getPopularAsmrContentByCreator(creatorId: Int) | ||||
|     case getContentMainAsmr(isAdultContentVisible: Bool, contentType: ContentType) | ||||
|     case getPopularAsmrContentByCreator(creatorId: Int, isAdultContentVisible: Bool, contentType: ContentType) | ||||
|      | ||||
|     case getContentMainReplay | ||||
|     case getPopularReplayContentByCreator(creatorId: Int) | ||||
|     case getContentMainReplay(isAdultContentVisible: Bool, contentType: ContentType) | ||||
|     case getPopularReplayContentByCreator(creatorId: Int, isAdultContentVisible: Bool, contentType: ContentType) | ||||
|      | ||||
|     case getContentMainFree | ||||
|     case getIntroduceCreatorList(page: Int, size: Int) | ||||
|     case getNewFreeContentOfTheme(theme: String, page: Int, size: Int) | ||||
|     case getPopularFreeContentByCreator(creatorId: Int) | ||||
|     case getContentMainFree(isAdultContentVisible: Bool, contentType: ContentType) | ||||
|     case getIntroduceCreatorList(isAdultContentVisible: Bool, contentType: ContentType, page: Int, size: Int) | ||||
|     case getNewFreeContentOfTheme(theme: String, isAdultContentVisible: Bool, contentType: ContentType, page: Int, size: Int) | ||||
|     case getPopularFreeContentByCreator(creatorId: Int, isAdultContentVisible: Bool, contentType: ContentType) | ||||
| } | ||||
|  | ||||
| extension ContentApi: TargetType { | ||||
| @@ -337,8 +337,13 @@ extension ContentApi: TargetType { | ||||
|         case .modifyComment(let request): | ||||
|             return .requestJSONEncodable(request) | ||||
|              | ||||
|         case .getNewContentThemeList: | ||||
|             return .requestPlain | ||||
|         case .getNewContentThemeList(let isAdultContentVisible, let contentType): | ||||
|             let parameters = [ | ||||
|                 "isAdultContentVisible": isAdultContentVisible, | ||||
|                 "contentType": contentType | ||||
|             ] as [String : Any] | ||||
|              | ||||
|             return .requestParameters(parameters: parameters, encoding: URLEncoding.queryString) | ||||
|              | ||||
|         case .getNewContentAllOfTheme(let isFree, let theme, let isAdultContentVisible, let contentType, let page, let size): | ||||
|             let parameters = [ | ||||
| @@ -399,20 +404,45 @@ extension ContentApi: TargetType { | ||||
|              | ||||
|             return .requestParameters(parameters: parameters, encoding: URLEncoding.queryString) | ||||
|              | ||||
|         case .getContentMainHome, .getContentMainSeries, .getContentMainContent,  | ||||
|                 .getContentMainAlarm, .getContentMainAsmr, .getContentMainReplay, .getContentMainFree: | ||||
|             return .requestPlain | ||||
|         case .getContentMainHome(let isAdultContentVisible, let contentType), | ||||
|                 .getContentMainSeries(let isAdultContentVisible, let contentType), | ||||
|                 .getContentMainContent(let isAdultContentVisible, let contentType), | ||||
|                 .getContentMainAlarm(let isAdultContentVisible, let contentType), | ||||
|                 .getContentMainAsmr(let isAdultContentVisible, let contentType), | ||||
|                 .getContentMainReplay(let isAdultContentVisible, let contentType), | ||||
|                 .getContentMainFree(let isAdultContentVisible, let contentType): | ||||
|             let parameters = [ | ||||
|                 "isAdultContentVisible": isAdultContentVisible, | ||||
|                 "contentType": contentType | ||||
|             ] as [String : Any] | ||||
|              | ||||
|         case .getRecommendSeriesListByGenre(let genreId): | ||||
|             let parameters = ["genreId": genreId] | ||||
|             return .requestParameters(parameters: parameters, encoding: URLEncoding.queryString) | ||||
|              | ||||
|         case .getPopularContentByCreator(let creatorId): | ||||
|             let parameters = ["creatorId": creatorId] | ||||
|         case .getRecommendSeriesListByGenre(let genreId, let isAdultContentVisible, let contentType): | ||||
|             let parameters = [ | ||||
|                 "genreId": genreId, | ||||
|                 "isAdultContentVisible": isAdultContentVisible, | ||||
|                 "contentType": contentType | ||||
|             ] as [String : Any] | ||||
|              | ||||
|             return .requestParameters(parameters: parameters, encoding: URLEncoding.queryString) | ||||
|              | ||||
|         case .getRecommendSeriesByCreator(let creatorId): | ||||
|             let parameters = ["creatorId": creatorId] | ||||
|         case .getPopularContentByCreator(let creatorId, let isAdultContentVisible, let contentType): | ||||
|             let parameters = [ | ||||
|                 "creatorId": creatorId, | ||||
|                 "isAdultContentVisible": isAdultContentVisible, | ||||
|                 "contentType": contentType | ||||
|             ] as [String : Any] | ||||
|              | ||||
|             return .requestParameters(parameters: parameters, encoding: URLEncoding.queryString) | ||||
|              | ||||
|         case .getRecommendSeriesByCreator(let creatorId, let isAdultContentVisible, let contentType): | ||||
|             let parameters = [ | ||||
|                 "creatorId": creatorId, | ||||
|                 "isAdultContentVisible": isAdultContentVisible, | ||||
|                 "contentType": contentType | ||||
|             ] as [String : Any] | ||||
|              | ||||
|             return .requestParameters(parameters: parameters, encoding: URLEncoding.queryString) | ||||
|              | ||||
|         case .getContentMainNewContentOfTheme(let theme, let isAdultContentVisible, let contentType): | ||||
| @@ -423,39 +453,77 @@ extension ContentApi: TargetType { | ||||
|             ] as [String : Any] | ||||
|             return .requestParameters(parameters: parameters, encoding: URLEncoding.queryString) | ||||
|              | ||||
|         case .getDailyContentRanking(let sortType): | ||||
|             let parameters = ["sort-type": sortType] | ||||
|         case .getDailyContentRanking(let sortType, let isAdultContentVisible, let contentType): | ||||
|             let parameters = [ | ||||
|                 "sort-type": sortType, | ||||
|                 "isAdultContentVisible": isAdultContentVisible, | ||||
|                 "contentType": contentType | ||||
|             ] as [String : Any] | ||||
|             return .requestParameters(parameters: parameters, encoding: URLEncoding.queryString) | ||||
|              | ||||
|         case .getRecommendContentByTag(let tag): | ||||
|             let parameters = ["tag": tag] | ||||
|         case .getRecommendContentByTag(let tag, let contentType): | ||||
|             let parameters = [ | ||||
|                 "tag": tag, | ||||
|                 "contentType": contentType | ||||
|             ] as [String : Any] | ||||
|             return .requestParameters(parameters: parameters, encoding: URLEncoding.queryString) | ||||
|              | ||||
|         case .getContentMainContentPopularContentByCreator(let creatorId): | ||||
|             let parameters = ["creatorId": creatorId] | ||||
|         case .getContentMainContentPopularContentByCreator(let creatorId, let isAdultContentVisible, let contentType): | ||||
|             let parameters = [ | ||||
|                 "creatorId": creatorId, | ||||
|                 "isAdultContentVisible": isAdultContentVisible, | ||||
|                 "contentType": contentType | ||||
|             ] as [String : Any] | ||||
|              | ||||
|             return .requestParameters(parameters: parameters, encoding: URLEncoding.queryString) | ||||
|              | ||||
|         case .getContentMainAlarmAll(let theme, let page, let size), .getNewFreeContentOfTheme(let theme, let page, let size): | ||||
|         case .getNewFreeContentOfTheme(let theme, let isAdultContentVisible, let contentType, let page, let size): | ||||
|             let parameters = [ | ||||
|                 "theme": theme, | ||||
|                 "isAdultContentVisible": isAdultContentVisible, | ||||
|                 "contentType": contentType, | ||||
|                 "page": page - 1, | ||||
|                 "size": size | ||||
|             ] as [String : Any] | ||||
|             return .requestParameters(parameters: parameters, encoding: URLEncoding.queryString) | ||||
|              | ||||
|         case .getIntroduceCreatorList(let page, let size): | ||||
|             let parameters = ["page": page - 1, "size": size] | ||||
|             return .requestParameters(parameters: parameters, encoding: URLEncoding.queryString) | ||||
|              | ||||
|         case .getPopularAsmrContentByCreator(let creatorId), .getPopularReplayContentByCreator(let creatorId), .getPopularFreeContentByCreator(let creatorId): | ||||
|             let parameters = ["creatorId": creatorId] | ||||
|             return .requestParameters(parameters: parameters, encoding: URLEncoding.queryString) | ||||
|              | ||||
|         case .getCompletedSeries(let page, let size): | ||||
|         case .getContentMainAlarmAll(let theme, let isAdultContentVisible, let contentType, let page, let size): | ||||
|             let parameters = [ | ||||
|                 "theme": theme, | ||||
|                 "isAdultContentVisible": isAdultContentVisible, | ||||
|                 "contentType": contentType, | ||||
|                 "page": page - 1, | ||||
|                 "size": size | ||||
|             ] | ||||
|             ] as [String : Any] | ||||
|             return .requestParameters(parameters: parameters, encoding: URLEncoding.queryString) | ||||
|              | ||||
|         case .getIntroduceCreatorList(let isAdultContentVisible, let contentType, let page, let size): | ||||
|             let parameters = [ | ||||
|                 "isAdultContentVisible": isAdultContentVisible, | ||||
|                 "contentType": contentType, | ||||
|                 "page": page - 1, | ||||
|                 "size": size | ||||
|             ] as [String : Any] | ||||
|             return .requestParameters(parameters: parameters, encoding: URLEncoding.queryString) | ||||
|              | ||||
|         case .getPopularAsmrContentByCreator(let creatorId, let isAdultContentVisible, let contentType), | ||||
|                 .getPopularReplayContentByCreator(let creatorId, let isAdultContentVisible, let contentType), | ||||
|                 .getPopularFreeContentByCreator(let creatorId, let isAdultContentVisible, let contentType): | ||||
|             let parameters = [ | ||||
|                 "creatorId": creatorId, | ||||
|                 "isAdultContentVisible": isAdultContentVisible, | ||||
|                 "contentType": contentType | ||||
|             ] as [String : Any] | ||||
|             return .requestParameters(parameters: parameters, encoding: URLEncoding.queryString) | ||||
|              | ||||
|         case .getCompletedSeries(let isAdultContentVisible, let contentType, let page, let size): | ||||
|             let parameters = [ | ||||
|                 "isAdultContentVisible": isAdultContentVisible, | ||||
|                 "contentType": contentType, | ||||
|                 "page": page - 1, | ||||
|                 "size": size | ||||
|             ] as [String : Any] | ||||
|              | ||||
|             return .requestParameters(parameters: parameters, encoding: URLEncoding.queryString) | ||||
|         } | ||||
|     } | ||||
|   | ||||
| @@ -109,7 +109,12 @@ final class ContentRepository { | ||||
|     } | ||||
|      | ||||
|     func getNewContentThemeList() -> AnyPublisher<Response, MoyaError> { | ||||
|         return api.requestPublisher(.getNewContentThemeList) | ||||
|         return api.requestPublisher( | ||||
|             .getNewContentThemeList( | ||||
|                 isAdultContentVisible: UserDefaults.isAdultContentVisible(), | ||||
|                 contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL | ||||
|             ) | ||||
|         ) | ||||
|     } | ||||
|      | ||||
|     func getNewContentAllOfTheme(isFree: Bool, theme: String, page: Int, size: Int) -> AnyPublisher<Response, MoyaError> { | ||||
|   | ||||
| @@ -15,10 +15,23 @@ final class ContentMainTabAlarmRepository { | ||||
|     private let api = MoyaProvider<ContentApi>() | ||||
|      | ||||
|     func getContentMainAlarm() -> AnyPublisher<Response, MoyaError> { | ||||
|         return api.requestPublisher(.getContentMainAlarm) | ||||
|         return api.requestPublisher( | ||||
|             .getContentMainAlarm( | ||||
|                 isAdultContentVisible: UserDefaults.isAdultContentVisible(), | ||||
|                 contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL | ||||
|             ) | ||||
|         ) | ||||
|     } | ||||
|      | ||||
|     func getContentMainAlarmAll(theme: String, page: Int = 1, size: Int = 10) -> AnyPublisher<Response, MoyaError> { | ||||
|         return api.requestPublisher(.getContentMainAlarmAll(theme: theme, page: page, size: size)) | ||||
|         return api.requestPublisher( | ||||
|             .getContentMainAlarmAll( | ||||
|                 theme: theme, | ||||
|                 isAdultContentVisible: UserDefaults.isAdultContentVisible(), | ||||
|                 contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL, | ||||
|                 page: page, | ||||
|                 size: size | ||||
|             ) | ||||
|         ) | ||||
|     } | ||||
| } | ||||
|   | ||||
| @@ -15,10 +15,21 @@ final class ContentMainTabAsmrRepository { | ||||
|     private let api = MoyaProvider<ContentApi>() | ||||
|      | ||||
|     func getContentMainAsmr() -> AnyPublisher<Response, MoyaError> { | ||||
|         return api.requestPublisher(.getContentMainAsmr) | ||||
|         return api.requestPublisher( | ||||
|             .getContentMainAsmr( | ||||
|                 isAdultContentVisible: UserDefaults.isAdultContentVisible(), | ||||
|                 contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL | ||||
|             ) | ||||
|         ) | ||||
|     } | ||||
|      | ||||
|     func getPopularContentByCreator(creatorId: Int) -> AnyPublisher<Response, MoyaError> { | ||||
|         return api.requestPublisher(.getPopularAsmrContentByCreator(creatorId: creatorId)) | ||||
|         return api.requestPublisher( | ||||
|             .getPopularAsmrContentByCreator( | ||||
|                 creatorId: creatorId, | ||||
|                 isAdultContentVisible: UserDefaults.isAdultContentVisible(), | ||||
|                 contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL | ||||
|             ) | ||||
|         ) | ||||
|     } | ||||
| } | ||||
|   | ||||
| @@ -15,7 +15,12 @@ final class ContentMainTabContentRepository { | ||||
|     private let api = MoyaProvider<ContentApi>() | ||||
|      | ||||
|     func getContentMainContent() -> AnyPublisher<Response, MoyaError> { | ||||
|         return api.requestPublisher(.getContentMainContent) | ||||
|         return api.requestPublisher( | ||||
|             .getContentMainContent( | ||||
|                 isAdultContentVisible: UserDefaults.isAdultContentVisible(), | ||||
|                 contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL | ||||
|             ) | ||||
|         ) | ||||
|     } | ||||
|      | ||||
|     func getNewContentOfTheme(theme: String) -> AnyPublisher<Response, MoyaError> { | ||||
| @@ -29,14 +34,31 @@ final class ContentMainTabContentRepository { | ||||
|     } | ||||
|      | ||||
|     func getContentRanking(sortType: String) -> AnyPublisher<Response, MoyaError> { | ||||
|         return api.requestPublisher(.getDailyContentRanking(sortType: sortType)) | ||||
|         return api.requestPublisher( | ||||
|             .getDailyContentRanking( | ||||
|                 sortType: sortType, | ||||
|                 isAdultContentVisible: UserDefaults.isAdultContentVisible(), | ||||
|                 contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL | ||||
|             ) | ||||
|         ) | ||||
|     } | ||||
|      | ||||
|     func getRecommendContentByTag(tag: String) -> AnyPublisher<Response, MoyaError> { | ||||
|         return api.requestPublisher(.getRecommendContentByTag(tag: tag)) | ||||
|         return api.requestPublisher( | ||||
|             .getRecommendContentByTag( | ||||
|                 tag: tag, | ||||
|                 contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL | ||||
|             ) | ||||
|         ) | ||||
|     } | ||||
|      | ||||
|     func getPopularContentByCreator(creatorId: Int) -> AnyPublisher<Response, MoyaError> { | ||||
|         return api.requestPublisher(.getContentMainContentPopularContentByCreator(creatorId: creatorId)) | ||||
|         return api.requestPublisher( | ||||
|             .getContentMainContentPopularContentByCreator( | ||||
|                 creatorId: creatorId, | ||||
|                 isAdultContentVisible: UserDefaults.isAdultContentVisible(), | ||||
|                 contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL | ||||
|             ) | ||||
|         ) | ||||
|     } | ||||
| } | ||||
|   | ||||
| @@ -15,18 +15,44 @@ final class ContentMainTabFreeRepository { | ||||
|     private let api = MoyaProvider<ContentApi>() | ||||
|      | ||||
|     func getContentMainFree() -> AnyPublisher<Response, MoyaError> { | ||||
|         return api.requestPublisher(.getContentMainFree) | ||||
|         return api.requestPublisher( | ||||
|             .getContentMainFree( | ||||
|                 isAdultContentVisible: UserDefaults.isAdultContentVisible(), | ||||
|                 contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL | ||||
|             ) | ||||
|         ) | ||||
|     } | ||||
|      | ||||
|     func getIntroduceCreatorList(page: Int, size: Int) -> AnyPublisher<Response, MoyaError> { | ||||
|         return api.requestPublisher(.getIntroduceCreatorList(page: page, size: size)) | ||||
|         return api.requestPublisher( | ||||
|             .getIntroduceCreatorList( | ||||
|                 isAdultContentVisible: UserDefaults.isAdultContentVisible(), | ||||
|                 contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL, | ||||
|                 page: page, | ||||
|                 size: size | ||||
|             ) | ||||
|         ) | ||||
|     } | ||||
|      | ||||
|     func getNewContentOfTheme(theme: String, page: Int = 1, size: Int = 20) -> AnyPublisher<Response, MoyaError> { | ||||
|         return api.requestPublisher(.getNewFreeContentOfTheme(theme: theme, page: page, size: size)) | ||||
|         return api.requestPublisher( | ||||
|             .getNewFreeContentOfTheme( | ||||
|                 theme: theme, | ||||
|                 isAdultContentVisible: UserDefaults.isAdultContentVisible(), | ||||
|                 contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL, | ||||
|                 page: page, | ||||
|                 size: size | ||||
|             ) | ||||
|         ) | ||||
|     } | ||||
|      | ||||
|     func getPopularContentByCreator(creatorId: Int) -> AnyPublisher<Response, MoyaError> { | ||||
|         return api.requestPublisher(.getPopularFreeContentByCreator(creatorId: creatorId)) | ||||
|         return api.requestPublisher( | ||||
|             .getPopularFreeContentByCreator( | ||||
|                 creatorId: creatorId, | ||||
|                 isAdultContentVisible: UserDefaults.isAdultContentVisible(), | ||||
|                 contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL | ||||
|             ) | ||||
|         ) | ||||
|     } | ||||
| } | ||||
|   | ||||
| @@ -14,10 +14,21 @@ class ContentMainTabHomeRepository { | ||||
|     private let api = MoyaProvider<ContentApi>() | ||||
|      | ||||
|     func getContentMainHome() -> AnyPublisher<Response, MoyaError> { | ||||
|         return api.requestPublisher(.getContentMainHome) | ||||
|         return api.requestPublisher( | ||||
|             .getContentMainHome( | ||||
|                 isAdultContentVisible: UserDefaults.isAdultContentVisible(), | ||||
|                 contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL | ||||
|             ) | ||||
|         ) | ||||
|     } | ||||
|      | ||||
|     func getPopularContentByCreator(creatorId: Int) -> AnyPublisher<Response, MoyaError> { | ||||
|         return api.requestPublisher(.getPopularContentByCreator(creatorId: creatorId)) | ||||
|         return api.requestPublisher( | ||||
|             .getPopularContentByCreator( | ||||
|                 creatorId: creatorId, | ||||
|                 isAdultContentVisible: UserDefaults.isAdultContentVisible(), | ||||
|                 contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL | ||||
|             ) | ||||
|         ) | ||||
|     } | ||||
| } | ||||
|   | ||||
| @@ -15,10 +15,21 @@ final class ContentMainTabReplayRepository { | ||||
|     private let api = MoyaProvider<ContentApi>() | ||||
|      | ||||
|     func getContentMainReplay() -> AnyPublisher<Response, MoyaError> { | ||||
|         return api.requestPublisher(.getContentMainReplay) | ||||
|         return api.requestPublisher( | ||||
|             .getContentMainReplay( | ||||
|                 isAdultContentVisible: UserDefaults.isAdultContentVisible(), | ||||
|                 contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL | ||||
|             ) | ||||
|         ) | ||||
|     } | ||||
|      | ||||
|     func getPopularContentByCreator(creatorId: Int) -> AnyPublisher<Response, MoyaError> { | ||||
|         return api.requestPublisher(.getPopularReplayContentByCreator(creatorId: creatorId)) | ||||
|         return api.requestPublisher( | ||||
|             .getPopularReplayContentByCreator( | ||||
|                 creatorId: creatorId, | ||||
|                 isAdultContentVisible: UserDefaults.isAdultContentVisible(), | ||||
|                 contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL | ||||
|             ) | ||||
|         ) | ||||
|     } | ||||
| } | ||||
|   | ||||
| @@ -14,18 +14,42 @@ final class ContentMainTabSeriesRepository { | ||||
|     private let api = MoyaProvider<ContentApi>() | ||||
|      | ||||
|     func getContentMainSeries() -> AnyPublisher<Response, MoyaError> { | ||||
|         return api.requestPublisher(.getContentMainSeries) | ||||
|         return api.requestPublisher( | ||||
|             .getContentMainSeries( | ||||
|                 isAdultContentVisible: UserDefaults.isAdultContentVisible(), | ||||
|                 contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL | ||||
|             ) | ||||
|         ) | ||||
|     } | ||||
|      | ||||
|     func getRecommendSeriesListByGenre(genreId: Int) -> AnyPublisher<Response, MoyaError> { | ||||
|         return api.requestPublisher(.getRecommendSeriesListByGenre(genreId: genreId)) | ||||
|         return api.requestPublisher( | ||||
|             .getRecommendSeriesListByGenre( | ||||
|                 genreId: genreId, | ||||
|                 isAdultContentVisible: UserDefaults.isAdultContentVisible(), | ||||
|                 contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL | ||||
|             ) | ||||
|         ) | ||||
|     } | ||||
|      | ||||
|     func getRecommendSeriesByCreator(creatorId: Int) -> AnyPublisher<Response, MoyaError> { | ||||
|         return api.requestPublisher(.getRecommendSeriesByCreator(creatorId: creatorId)) | ||||
|         return api.requestPublisher( | ||||
|             .getRecommendSeriesByCreator( | ||||
|                 creatorId: creatorId, | ||||
|                 isAdultContentVisible: UserDefaults.isAdultContentVisible(), | ||||
|                 contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL | ||||
|             ) | ||||
|         ) | ||||
|     } | ||||
|      | ||||
|     func getCompletedSeries(page: Int, size: Int) -> AnyPublisher<Response, MoyaError> { | ||||
|         return api.requestPublisher(.getCompletedSeries(page: page, size: size)) | ||||
|         return api.requestPublisher( | ||||
|             .getCompletedSeries( | ||||
|                 isAdultContentVisible: UserDefaults.isAdultContentVisible(), | ||||
|                 contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL, | ||||
|                 page: page, | ||||
|                 size: size | ||||
|             ) | ||||
|         ) | ||||
|     } | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Yu Sung
					Yu Sung