diff --git a/SodaLive/Sources/Content/Create/ContentCreateView.swift b/SodaLive/Sources/Content/Create/ContentCreateView.swift index 60745a2..f007fc6 100644 --- a/SodaLive/Sources/Content/Create/ContentCreateView.swift +++ b/SodaLive/Sources/Content/Create/ContentCreateView.swift @@ -340,6 +340,28 @@ struct ContentCreateView: View { .padding(.top, 26.7) } + VStack(spacing: 13.3) { + Text("포인트 사용") + .font(.custom(Font.bold.rawValue, size: 16.7)) + .foregroundColor(Color.grayee) + .frame(maxWidth: .infinity, alignment: .leading) + + HStack(spacing: 13.3) { + SelectButtonView(title: "가능", isChecked: viewModel.isPointAvailable) { + if !viewModel.isPointAvailable { + viewModel.isPointAvailable = true + } + } + + SelectButtonView(title: "불가능", isChecked: !viewModel.isPointAvailable) { + if viewModel.isPointAvailable { + viewModel.isPointAvailable = false + } + } + } + } + .padding(.top, 26.7) + VStack(spacing: 13.3) { Text("미리듣기") .font(.custom(Font.bold.rawValue, size: 16.7)) diff --git a/SodaLive/Sources/Content/Create/ContentCreateViewModel.swift b/SodaLive/Sources/Content/Create/ContentCreateViewModel.swift index fdebf0f..cf200d5 100644 --- a/SodaLive/Sources/Content/Create/ContentCreateViewModel.swift +++ b/SodaLive/Sources/Content/Create/ContentCreateViewModel.swift @@ -57,6 +57,7 @@ final class ContentCreateViewModel: ObservableObject { priceString = "0" isLimited = false isGeneratePreview = true + isPointAvailable = false purchaseOption = PurchaseOption.BOTH } } @@ -70,6 +71,7 @@ final class ContentCreateViewModel: ObservableObject { } } @Published var isGeneratePreview = true + @Published var isPointAvailable = false @Published var isLimited = false { didSet { @@ -132,6 +134,7 @@ final class ContentCreateViewModel: ObservableObject { themeId: theme!.id, isAdult: isAdult, isGeneratePreview: isGeneratePreview, + isPointAvailable: isPointAvailable, isCommentAvailable: isAvailableComment, previewStartTime: isGeneratePreview && previewStartTime.trimmingCharacters(in: .whitespacesAndNewlines).count > 0 ? previewStartTime : nil, previewEndTime: isGeneratePreview && previewEndTime.trimmingCharacters(in: .whitespacesAndNewlines).count > 0 ? previewEndTime : nil diff --git a/SodaLive/Sources/Content/Create/CreateAudioContentRequest.swift b/SodaLive/Sources/Content/Create/CreateAudioContentRequest.swift index 596f8d8..94c4177 100644 --- a/SodaLive/Sources/Content/Create/CreateAudioContentRequest.swift +++ b/SodaLive/Sources/Content/Create/CreateAudioContentRequest.swift @@ -19,6 +19,7 @@ struct CreateAudioContentRequest: Encodable { let themeId: Int let isAdult: Bool let isGeneratePreview: Bool + let isPointAvailable: Bool let isCommentAvailable: Bool let previewStartTime: String? let previewEndTime: String?