90 lines
2.1 KiB
Swift
90 lines
2.1 KiB
Swift
//
|
|
// GetCreatorProfileResponse.swift
|
|
// SodaLive
|
|
//
|
|
// Created by klaus on 2023/08/11.
|
|
//
|
|
|
|
import Foundation
|
|
|
|
struct GetCreatorProfileResponse: Decodable {
|
|
let creator: CreatorResponse
|
|
let userDonationRanking: [UserDonationRankingResponse]
|
|
let similarCreatorList: [SimilarCreatorResponse]
|
|
let liveRoomList: [LiveRoomResponse]
|
|
let contentList: [GetAudioContentListItem]
|
|
let notice: String
|
|
let communityPostList: [GetCommunityPostListResponse]
|
|
let cheers: GetCheersResponse
|
|
let activitySummary: GetCreatorActivitySummary
|
|
let isBlock: Bool
|
|
}
|
|
|
|
struct CreatorResponse: Decodable {
|
|
let creatorId: Int
|
|
let profileUrl: String
|
|
let nickname: String
|
|
let tags: [String]
|
|
let introduce: String
|
|
let instagramUrl: String?
|
|
let youtubeUrl: String?
|
|
let websiteUrl: String?
|
|
let blogUrl: String?
|
|
let isNotification: Bool
|
|
let notificationRecipientCount: Int
|
|
}
|
|
|
|
struct UserDonationRankingResponse: Decodable {
|
|
let userId: Int
|
|
let nickname: String
|
|
let profileImage: String
|
|
let donationCan: Int?
|
|
}
|
|
|
|
struct SimilarCreatorResponse: Decodable {
|
|
let userId: Int
|
|
let nickname: String
|
|
let profileImage: String
|
|
let tags: [String]
|
|
}
|
|
|
|
struct LiveRoomResponse: Decodable {
|
|
let roomId: Int
|
|
let title: String
|
|
let content: String
|
|
let isPaid: Bool
|
|
let beginDateTime: String
|
|
let coverImageUrl: String
|
|
let isAdult: Bool
|
|
let price: Int
|
|
let channelName: String?
|
|
let managerNickname: String
|
|
let isReservation: Bool
|
|
let isActive: Bool
|
|
}
|
|
|
|
struct GetAudioContentListResponse: Decodable {
|
|
let totalCount: Int
|
|
let items: [GetAudioContentListItem]
|
|
}
|
|
|
|
struct GetAudioContentListItem: Decodable {
|
|
let contentId: Int
|
|
let coverImageUrl: String
|
|
let title: String
|
|
let price: Int
|
|
let themeStr: String
|
|
let duration: String?
|
|
let likeCount: Int
|
|
let commentCount: Int
|
|
let isAdult: Bool
|
|
let isScheduledToOpen: Bool
|
|
}
|
|
|
|
struct GetCreatorActivitySummary: Decodable {
|
|
let liveCount: Int
|
|
let liveTime: Int
|
|
let liveContributorCount: Int
|
|
let contentCount: Int
|
|
}
|