feat(i18n): 음성 메시지 하드코딩 문구를 I18n 키로 통일한다

This commit is contained in:
Yu Sung
2026-03-31 22:21:41 +09:00
parent 9369a52ba2
commit 25fccbaa07
5 changed files with 135 additions and 42 deletions

View File

@@ -32,7 +32,7 @@ final class VoiceMessageViewModel: ObservableObject {
@Published var recipientNickname: String = ""
@Published var recipientId = 0
@Published var sendText = "메시지 보내기"
@Published var sendText = I18n.Message.Voice.Write.sendButton
@Published var selectedMessageId = -1
@Published var openPlayerItemIndex = -1
@@ -73,7 +73,7 @@ final class VoiceMessageViewModel: ObservableObject {
func deleteMessage() {
if selectedMessageId <= 0 {
errorMessage = "메시지를 삭제하지 못했습니다\n잠시 후 다시 시도해 주세요."
errorMessage = I18n.Message.Text.Detail.deleteFailed
isShowPopup = true
return
}
@@ -97,7 +97,7 @@ final class VoiceMessageViewModel: ObservableObject {
let decoded = try jsonDecoder.decode(ApiResponseWithoutData.self, from: responseData)
if decoded.success {
self.errorMessage = "삭제되었습니다."
self.errorMessage = I18n.Message.Text.Detail.deleteSuccess
self.isShowPopup = true
self.refresh()
} else {
@@ -105,13 +105,13 @@ final class VoiceMessageViewModel: ObservableObject {
self.errorMessage = message
self.isShowPopup = true
} else {
self.errorMessage = "메시지를 보관하지 못했습니다.\n잠시 후 다시 시도해 주세요."
self.errorMessage = I18n.Message.Text.Detail.keepFailed
}
self.isShowPopup = true
}
} catch {
self.errorMessage = "메시지를 보관하지 못했습니다.\n잠시 후 다시 시도해 주세요."
self.errorMessage = I18n.Message.Text.Detail.keepFailed
self.isShowPopup = true
}
}
@@ -120,7 +120,7 @@ final class VoiceMessageViewModel: ObservableObject {
func keepVoiceMessage() {
if selectedMessageId <= 0 {
errorMessage = "메시지를 저장하지 못했습니다\n잠시 후 다시 시도해 주세요."
errorMessage = I18n.Message.Voice.Toast.saveFailed
isShowPopup = true
return
}
@@ -143,7 +143,7 @@ final class VoiceMessageViewModel: ObservableObject {
let decoded = try jsonDecoder.decode(ApiResponseWithoutData.self, from: responseData)
if decoded.success {
self.errorMessage = "보관되었습니다."
self.errorMessage = I18n.Message.Text.Detail.keepSuccess
self.isShowPopup = true
self.refresh()
} else {
@@ -151,13 +151,13 @@ final class VoiceMessageViewModel: ObservableObject {
self.errorMessage = message
self.isShowPopup = true
} else {
self.errorMessage = "메시지를 보관하지 못했습니다.\n잠시 후 다시 시도해 주세요."
self.errorMessage = I18n.Message.Text.Detail.keepFailed
}
self.isShowPopup = true
}
} catch {
self.errorMessage = "메시지를 보관하지 못했습니다.\n잠시 후 다시 시도해 주세요."
self.errorMessage = I18n.Message.Text.Detail.keepFailed
self.isShowPopup = true
}
}
@@ -166,7 +166,7 @@ final class VoiceMessageViewModel: ObservableObject {
func keepTextMessage() {
if selectedMessageId <= 0 {
errorMessage = "메시지를 저장하지 못했습니다\n잠시 후 다시 시도해 주세요."
errorMessage = I18n.Message.Voice.Toast.saveFailed
isShowPopup = true
return
}
@@ -189,7 +189,7 @@ final class VoiceMessageViewModel: ObservableObject {
let decoded = try jsonDecoder.decode(ApiResponseWithoutData.self, from: responseData)
if decoded.success {
self.errorMessage = "보관되었습니다."
self.errorMessage = I18n.Message.Text.Detail.keepSuccess
self.isShowPopup = true
self.refresh()
} else {
@@ -197,13 +197,13 @@ final class VoiceMessageViewModel: ObservableObject {
self.errorMessage = message
self.isShowPopup = true
} else {
self.errorMessage = "메시지를 보관하지 못했습니다.\n잠시 후 다시 시도해 주세요."
self.errorMessage = I18n.Message.Text.Detail.keepFailed
}
self.isShowPopup = true
}
} catch {
self.errorMessage = "메시지를 보관하지 못했습니다.\n잠시 후 다시 시도해 주세요."
self.errorMessage = I18n.Message.Text.Detail.keepFailed
self.isShowPopup = true
}
}
@@ -212,7 +212,7 @@ final class VoiceMessageViewModel: ObservableObject {
func write(soundData: Data, onSuccess: @escaping () -> Void) {
if recipientId <= 0 {
errorMessage = "받는 사람을 선택해 주세요."
errorMessage = I18n.Message.Voice.Write.selectRecipient
isShowPopup = true
return
}
@@ -254,7 +254,7 @@ final class VoiceMessageViewModel: ObservableObject {
if decoded.success {
onSuccess()
self.errorMessage = "메시지 전송이 완료되었습니다."
self.errorMessage = I18n.Message.Voice.Write.sendSuccess
self.isShowPopup = true
DispatchQueue.main.asyncAfter(deadline: .now() + 1) {
AppState.shared.back()
@@ -263,19 +263,19 @@ final class VoiceMessageViewModel: ObservableObject {
if let message = decoded.message {
self.errorMessage = message
} else {
self.errorMessage = "음성메시지를 전송하지 못했습니다.\n다시 시도해 주세요.\n계속 같은 문제가 발생할 경우 고객센터로 문의 주시기 바랍니다."
self.errorMessage = I18n.Message.Voice.Write.sendFailed
}
self.isShowPopup = true
}
} catch {
self.errorMessage = "음성메시지를 전송하지 못했습니다.\n다시 시도해 주세요.\n계속 같은 문제가 발생할 경우 고객센터로 문의 주시기 바랍니다."
self.errorMessage = I18n.Message.Voice.Write.sendFailed
self.isShowPopup = true
}
}
.store(in: &subscription)
} else {
self.errorMessage = "음성메시지를 전송하지 못했습니다.\n다시 시도해 주세요.\n계속 같은 문제가 발생할 경우 고객센터로 문의 주시기 바랍니다."
self.errorMessage = I18n.Message.Voice.Write.sendFailed
self.isShowPopup = true
self.isLoading = false
}
@@ -317,13 +317,13 @@ final class VoiceMessageViewModel: ObservableObject {
if let message = decoded.message {
self.errorMessage = message
} else {
self.errorMessage = "다시 시도해 주세요.\n계속 같은 문제가 발생할 경우 고객센터로 문의 주시기 바랍니다."
self.errorMessage = I18n.Common.commonError
}
self.isShowPopup = true
}
} catch {
self.errorMessage = "다시 시도해 주세요.\n계속 같은 문제가 발생할 경우 고객센터로 문의 주시기 바랍니다."
self.errorMessage = I18n.Common.commonError
self.isShowPopup = true
}
}
@@ -365,13 +365,13 @@ final class VoiceMessageViewModel: ObservableObject {
if let message = decoded.message {
self.errorMessage = message
} else {
self.errorMessage = "다시 시도해 주세요.\n계속 같은 문제가 발생할 경우 고객센터로 문의 주시기 바랍니다."
self.errorMessage = I18n.Common.commonError
}
self.isShowPopup = true
}
} catch {
self.errorMessage = "다시 시도해 주세요.\n계속 같은 문제가 발생할 경우 고객센터로 문의 주시기 바랍니다."
self.errorMessage = I18n.Common.commonError
self.isShowPopup = true
}
}
@@ -413,13 +413,13 @@ final class VoiceMessageViewModel: ObservableObject {
if let message = decoded.message {
self.errorMessage = message
} else {
self.errorMessage = "다시 시도해 주세요.\n계속 같은 문제가 발생할 경우 고객센터로 문의 주시기 바랍니다."
self.errorMessage = I18n.Common.commonError
}
self.isShowPopup = true
}
} catch {
self.errorMessage = "다시 시도해 주세요.\n계속 같은 문제가 발생할 경우 고객센터로 문의 주시기 바랍니다."
self.errorMessage = I18n.Common.commonError
self.isShowPopup = true
}
}