sodalive-ios/SodaLive/Sources/Content/Main/GetAudioContentMainResponse...

52 lines
1.3 KiB
Swift

//
// GetAudioContentMainResponse.swift
// SodaLive
//
// Created by klaus on 2023/08/11.
//
import Foundation
struct GetAudioContentMainResponse: Decodable {
let newContentUploadCreatorList: [GetNewContentUploadCreator]
let bannerList: [GetAudioContentBannerResponse]
let orderList: [GetAudioContentMainItem]
let themeList: [String]
let newContentList: [GetAudioContentMainItem]
let curationList: [GetAudioContentCurationResponse]
}
struct GetNewContentUploadCreator: Decodable {
let creatorId: Int
let creatorNickname: String
let creatorProfileImageUrl: String
}
struct GetAudioContentMainItem: Decodable {
let contentId: Int
let coverImageUrl: String
let title: String
let isAdult: Bool
let creatorId: Int
let creatorProfileImageUrl: String
let creatorNickname: String
}
struct GetAudioContentCurationResponse: Decodable {
let title: String
let description: String
let audioContents: [GetAudioContentMainItem]
}
struct GetAudioContentBannerResponse: Decodable {
let type: AudioContentBannerType
let thumbnailImageUrl: String
let eventItem: EventItem?
let creatorId: Int?
let link: String?
}
enum AudioContentBannerType: String, Decodable {
case EVENT, CREATOR, LINK
}