Files
sodalive-ios/SodaLive/Sources/V2/Main/Home/Recommendation/Models/MainHomeRecommendationResponse.swift

83 lines
2.1 KiB
Swift

import Foundation
struct HomeRecommendationResponse: Decodable {
let lives: [HomeLiveItem]
let banners: [RecommendationBannerResponse]
let recentlyActiveCreators: [HomeActiveCreatorItem]
let recentDebutCreators: [HomeCreatorItem]
let firstAudioContents: [HomeFirstAudioContentItem]
let aiCharacters: [HomeAiCharacterItem]
let genreCreators: [HomeGenreCreatorGroupItem]
let cheerCreators: [HomeCreatorItem]
let popularCommunityPosts: [HomePopularCommunityPostItem]
}
struct HomeLiveItem: Decodable, Hashable {
let roomId: Int
let creatorNickname: String
let creatorProfileImage: String
}
struct RecommendationBannerResponse: Decodable, Hashable {
let imageUrl: String
let eventItem: EventItem?
let creatorId: Int?
let seriesId: Int?
let link: String?
}
struct HomeActiveCreatorItem: Decodable, Hashable {
let creatorNickname: String
let creatorProfileImage: String
let activityType: RecommendedActivityType
let activityAt: String
let targetId: Int?
}
struct HomeCreatorItem: Decodable, Hashable {
let creatorId: Int
let creatorNickname: String
let creatorProfileImage: String
}
struct HomeFirstAudioContentItem: Decodable, Hashable {
let contentId: Int
let creatorId: Int
let creatorNickname: String
let creatorProfileImage: String
let title: String
let price: Int
let coverImage: String?
let isPointAvailable: Bool
}
struct HomeAiCharacterItem: Decodable, Hashable {
let characterId: Int
let creatorId: Int
let name: String
let description: String
let profileImage: String?
let totalChatCount: Int
let originalWorkTitle: String?
}
struct HomeGenreCreatorGroupItem: Decodable, Hashable {
let genreName: String
let creators: [HomeCreatorItem]
}
struct HomePopularCommunityPostItem: Decodable, Hashable {
let postId: Int
let creatorId: Int
let creatorNickname: String
let creatorProfileImage: String?
let content: String
let imageUrl: String?
let audioUrl: String?
let price: Int
let existOrdered: Bool
let likeCount: Int
let commentCount: Int
let createdAt: String
}