설정 로그아웃 문구 다국어화
This commit is contained in:
@@ -111,8 +111,30 @@ enum I18n {
|
|||||||
static var points: String { pick(ko: "포인트", en: "Points", ja: "ポイント") }
|
static var points: String { pick(ko: "포인트", en: "Points", ja: "ポイント") }
|
||||||
}
|
}
|
||||||
|
|
||||||
// 설정 > 회원탈퇴(SignOut)
|
// 설정 화면 및 계정 관련 공통 문구는 아래 Settings 네임스페이스에 포함됨
|
||||||
|
|
||||||
|
// 설정 > 공통 및 회원탈퇴(SignOut)
|
||||||
enum Settings {
|
enum Settings {
|
||||||
|
// 알림 다이얼로그 타이틀
|
||||||
|
static var alertTitle: String { pick(ko: "알림", en: "Notice", ja: "お知らせ") }
|
||||||
|
|
||||||
|
// 로그아웃 확인 질문
|
||||||
|
static var logoutQuestion: String {
|
||||||
|
pick(
|
||||||
|
ko: "로그아웃 하시겠어요?",
|
||||||
|
en: "Do you want to log out?",
|
||||||
|
ja: "ログアウトしますか?"
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
// 모든 기기 로그아웃 확인 질문
|
||||||
|
static var logoutAllQuestion: String {
|
||||||
|
pick(
|
||||||
|
ko: "모든 기기에서 로그아웃 하시겠어요?",
|
||||||
|
en: "Do you want to log out from all devices?",
|
||||||
|
ja: "すべてのデバイスからログアウトしますか?"
|
||||||
|
)
|
||||||
|
}
|
||||||
enum SignOut {
|
enum SignOut {
|
||||||
// 탈퇴 사유 목록 (UI에서 그대로 배열로 사용 가능)
|
// 탈퇴 사유 목록 (UI에서 그대로 배열로 사용 가능)
|
||||||
static var reasons: [String] {
|
static var reasons: [String] {
|
||||||
|
|||||||
@@ -215,9 +215,9 @@ struct SettingsView: View {
|
|||||||
|
|
||||||
if isShowLogoutDialog {
|
if isShowLogoutDialog {
|
||||||
SodaDialog(
|
SodaDialog(
|
||||||
title: "알림",
|
title: I18n.Settings.alertTitle,
|
||||||
desc: "로그아웃 하시겠어요?",
|
desc: I18n.Settings.logoutQuestion,
|
||||||
confirmButtonTitle: "확인",
|
confirmButtonTitle: I18n.Common.confirm,
|
||||||
confirmButtonAction: {
|
confirmButtonAction: {
|
||||||
ContentPlayManager.shared.stopAudio()
|
ContentPlayManager.shared.stopAudio()
|
||||||
ContentPlayerPlayManager.shared.resetPlayer()
|
ContentPlayerPlayManager.shared.resetPlayer()
|
||||||
@@ -231,7 +231,7 @@ struct SettingsView: View {
|
|||||||
AppState.shared.setAppStep(step: .splash)
|
AppState.shared.setAppStep(step: .splash)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
cancelButtonTitle: "취소",
|
cancelButtonTitle: I18n.Common.cancel,
|
||||||
cancelButtonAction: {
|
cancelButtonAction: {
|
||||||
self.isShowLogoutDialog = false
|
self.isShowLogoutDialog = false
|
||||||
}
|
}
|
||||||
@@ -240,9 +240,9 @@ struct SettingsView: View {
|
|||||||
|
|
||||||
if isShowLogoutAllDeviceDialog {
|
if isShowLogoutAllDeviceDialog {
|
||||||
SodaDialog(
|
SodaDialog(
|
||||||
title: "알림",
|
title: I18n.Settings.alertTitle,
|
||||||
desc: "모든 기기에서 로그아웃 하시겠어요?",
|
desc: I18n.Settings.logoutAllQuestion,
|
||||||
confirmButtonTitle: "확인",
|
confirmButtonTitle: I18n.Common.confirm,
|
||||||
confirmButtonAction: {
|
confirmButtonAction: {
|
||||||
ContentPlayManager.shared.stopAudio()
|
ContentPlayManager.shared.stopAudio()
|
||||||
ContentPlayerPlayManager.shared.resetPlayer()
|
ContentPlayerPlayManager.shared.resetPlayer()
|
||||||
@@ -253,7 +253,7 @@ struct SettingsView: View {
|
|||||||
AppState.shared.setAppStep(step: .splash)
|
AppState.shared.setAppStep(step: .splash)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
cancelButtonTitle: "취소",
|
cancelButtonTitle: I18n.Common.cancel,
|
||||||
cancelButtonAction: {
|
cancelButtonAction: {
|
||||||
self.isShowLogoutAllDeviceDialog = false
|
self.isShowLogoutAllDeviceDialog = false
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -42,13 +42,13 @@ final class SettingsViewModel: ObservableObject {
|
|||||||
if let message = decoded.message {
|
if let message = decoded.message {
|
||||||
self.errorMessage = message
|
self.errorMessage = message
|
||||||
} else {
|
} else {
|
||||||
self.errorMessage = "다시 시도해 주세요.\n계속 같은 문제가 발생할 경우 고객센터로 문의 주시기 바랍니다."
|
self.errorMessage = I18n.Common.commonError
|
||||||
}
|
}
|
||||||
|
|
||||||
self.isShowPopup = true
|
self.isShowPopup = true
|
||||||
}
|
}
|
||||||
} catch {
|
} catch {
|
||||||
self.errorMessage = "다시 시도해 주세요.\n계속 같은 문제가 발생할 경우 고객센터로 문의 주시기 바랍니다."
|
self.errorMessage = I18n.Common.commonError
|
||||||
self.isShowPopup = true
|
self.isShowPopup = true
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -82,13 +82,13 @@ final class SettingsViewModel: ObservableObject {
|
|||||||
if let message = decoded.message {
|
if let message = decoded.message {
|
||||||
self.errorMessage = message
|
self.errorMessage = message
|
||||||
} else {
|
} else {
|
||||||
self.errorMessage = "다시 시도해 주세요.\n계속 같은 문제가 발생할 경우 고객센터로 문의 주시기 바랍니다."
|
self.errorMessage = I18n.Common.commonError
|
||||||
}
|
}
|
||||||
|
|
||||||
self.isShowPopup = true
|
self.isShowPopup = true
|
||||||
}
|
}
|
||||||
} catch {
|
} catch {
|
||||||
self.errorMessage = "다시 시도해 주세요.\n계속 같은 문제가 발생할 경우 고객센터로 문의 주시기 바랍니다."
|
self.errorMessage = I18n.Common.commonError
|
||||||
self.isShowPopup = true
|
self.isShowPopup = true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user