sodalive-ios/SodaLive/Sources/Audition/Role/AuditionDetailRoleItemView....

64 lines
2.0 KiB
Swift

//
// AuditionDetailRoleItemView.swift
// SodaLive
//
// Created by klaus on 1/6/25.
//
import SwiftUI
import Kingfisher
struct AuditionDetailRoleItemView: View {
let item: GetAuditionRoleListData
var body: some View {
VStack(alignment: .leading, spacing: 10) {
ZStack(alignment: .topLeading) {
KFImage(URL(string: item.imageUrl))
.cancelOnDisappear(true)
.downsampling(size: CGSize(width: 1000, height: 350))
.resizable()
.aspectRatio(1000/350, contentMode: .fit)
.frame(maxWidth: .infinity)
.cornerRadius(6.7)
.overlay(
Color.black
.cornerRadius(6.7)
.opacity(item.isComplete ? 0.7 : 0.0)
)
Text(item.isComplete ? "모집완료" : "모집중")
.font(.custom(Font.medium.rawValue, size: 13.3))
.foregroundColor(Color.white)
.padding(.horizontal, 9)
.padding(.vertical, 3)
.background(
item.isComplete ? Color.gray90 : Color.button
)
.cornerRadius(13.3)
.padding(.top, 7)
.padding(.leading, 7)
}
.frame(maxWidth: .infinity)
Text(item.name)
.font(.custom(Font.medium.rawValue, size: 13.3))
.foregroundColor(Color.grayee)
.lineLimit(1)
.truncationMode(.tail)
}
}
}
#Preview {
AuditionDetailRoleItemView(
item: GetAuditionRoleListData(
roleId: 1,
name: "[남주] 김희준",
imageUrl: "https://test-cf.sodalive.net/audition/role/7/audition_role-dc4174e1-10b5-4a97-8379-c7a9336ab230-6691-1735908236571",
isComplete: false
)
)
}