From e7c8c2a12efb317087d0aa1ea42d6d5f3ec89b34 Mon Sep 17 00:00:00 2001 From: Yu Sung Date: Mon, 5 Jan 2026 11:51:46 +0900 Subject: [PATCH] =?UTF-8?q?=EB=9D=BC=EC=9D=B4=EB=B8=8C=20=EC=B7=A8?= =?UTF-8?q?=EC=86=8C=20=EC=82=AC=EC=9C=A0=20=ED=94=8C=EB=A0=88=EC=9D=B4?= =?UTF-8?q?=EC=8A=A4=ED=99=80=EB=8D=94=20=ED=98=84=EC=A7=80=ED=99=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SodaLive/Sources/I18n/I18n.swift | 10 ++++++++++ SodaLive/Sources/Live/Cancel/LiveCancelDialog.swift | 4 +++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/SodaLive/Sources/I18n/I18n.swift b/SodaLive/Sources/I18n/I18n.swift index f4a92f2..b6ff25b 100644 --- a/SodaLive/Sources/I18n/I18n.swift +++ b/SodaLive/Sources/I18n/I18n.swift @@ -588,6 +588,16 @@ enum I18n { static var kickOutConfirm: String { pick(ko: "내보내기", en: "Kick out", ja: "退場させる") } } + enum LiveCancel { + static var reasonPlaceholder: String { + pick( + ko: "취소사유를 입력하세요", + en: "Enter a cancellation reason", + ja: "キャンセル理由を入力してください" + ) + } + } + enum CreateContent { static var selectFile: String { pick(ko: "파일 선택", en: "Select file", ja: "ファイル選択") } static var selectTheme: String { pick(ko: "테마 선택", en: "Select theme", ja: "テーマを選択") } diff --git a/SodaLive/Sources/Live/Cancel/LiveCancelDialog.swift b/SodaLive/Sources/Live/Cancel/LiveCancelDialog.swift index ffc8ea9..3211ac1 100644 --- a/SodaLive/Sources/Live/Cancel/LiveCancelDialog.swift +++ b/SodaLive/Sources/Live/Cancel/LiveCancelDialog.swift @@ -13,7 +13,9 @@ struct LiveCancelDialog: View { let confirmAction: (String) -> Void @State var reason: String = "" - var placeholder = "취소사유를 입력하세요" + private var placeholder: String { + I18n.LiveCancel.reasonPlaceholder + } var body: some View { VStack(spacing: 0) {