1784 lines
83 KiB
Kotlin
1784 lines
83 KiB
Kotlin
package kr.co.vividnext.sodalive.i18n
|
||
|
||
import org.springframework.stereotype.Component
|
||
|
||
@Component
|
||
class SodaMessageSource {
|
||
private val commonMessages = mapOf(
|
||
"common.error.unknown" to mapOf(
|
||
Lang.KO to "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.",
|
||
Lang.EN to "An unknown error occurred. Please try again.",
|
||
Lang.JA to "不明なエラーが発生しました。もう一度やり直してください。"
|
||
),
|
||
"common.error.access_denied" to mapOf(
|
||
Lang.KO to "권한이 없습니다.",
|
||
Lang.EN to "You do not have permission.",
|
||
Lang.JA to "権限がありません。"
|
||
),
|
||
"common.error.bad_credentials" to mapOf(
|
||
Lang.KO to "로그인 정보를 확인해주세요.",
|
||
Lang.EN to "Please check your login information.",
|
||
Lang.JA to "ログイン情報を確認してください。"
|
||
),
|
||
"common.error.max_upload_size" to mapOf(
|
||
Lang.KO to "파일용량은 최대 1024MB까지 저장할 수 있습니다.",
|
||
Lang.EN to "The file size can be saved up to 1024MB.",
|
||
Lang.JA to "ファイル容量は最大1024MBまで保存できます。"
|
||
),
|
||
"common.error.already_registered" to mapOf(
|
||
Lang.KO to "이미 등록되어 있습니다.",
|
||
Lang.EN to "It is already registered.",
|
||
Lang.JA to "すでに登録されています。"
|
||
),
|
||
"common.error.invalid_request" to mapOf(
|
||
Lang.KO to "잘못된 요청입니다.",
|
||
Lang.EN to "Invalid request.",
|
||
Lang.JA to "不正なリクエストです。"
|
||
),
|
||
"chat.error.room_not_found" to mapOf(
|
||
Lang.KO to "채팅방을 찾을 수 없습니다.",
|
||
Lang.EN to "Chat room not found.",
|
||
Lang.JA to "チャットルームが見つかりません。"
|
||
)
|
||
)
|
||
|
||
private val alarmMessages = mapOf(
|
||
"alarm.error.already_purchased" to mapOf(
|
||
Lang.KO to "이미 구매하셨습니다",
|
||
Lang.EN to "You have already purchased this",
|
||
Lang.JA to "すでに購入済みです"
|
||
)
|
||
)
|
||
|
||
private val auditionMessages = mapOf(
|
||
"admin.audition.invalid_request_retry" to mapOf(
|
||
Lang.KO to "잘못된 요청입니다.\n다시 시도해 주세요.",
|
||
Lang.EN to "Invalid request. Please try again.",
|
||
Lang.JA to "不正なリクエストです。もう一度やり直してください。"
|
||
),
|
||
"admin.audition.status_cannot_revert" to mapOf(
|
||
Lang.KO to "모집전 상태로 변경할 수 없습니다.",
|
||
Lang.EN to "Cannot change to not-started status.",
|
||
Lang.JA to "募集前の状態に変更できません。"
|
||
)
|
||
)
|
||
|
||
private val auditionRequestMessages = mapOf(
|
||
"admin.audition.title_required" to mapOf(
|
||
Lang.KO to "오디션 제목을 입력하세요",
|
||
Lang.EN to "Please enter an audition title.",
|
||
Lang.JA to "オーディションのタイトルを入力してください。"
|
||
),
|
||
"admin.audition.information_min_length" to mapOf(
|
||
Lang.KO to "오디션 정보는 최소 10글자 입니다",
|
||
Lang.EN to "Audition information must be at least 10 characters.",
|
||
Lang.JA to "オーディション情報は最低10文字です。"
|
||
)
|
||
)
|
||
|
||
private val auditionNotificationMessages = mapOf(
|
||
"admin.audition.fcm.title.new" to mapOf(
|
||
Lang.KO to "새로운 오디션 등록!",
|
||
Lang.EN to "New audition posted!",
|
||
Lang.JA to "新しいオーディション登録!"
|
||
),
|
||
"admin.audition.fcm.message.new" to mapOf(
|
||
Lang.KO to "'%s'이 등록되었습니다. 지금 바로 오리지널 오디오 드라마 오디션에 지원해보세요!",
|
||
Lang.EN to "'%s' is now available. Apply for the original audio drama audition now!",
|
||
Lang.JA to "「%s」が登録されました。今すぐオリジナルオーディオドラマのオーディションに応募してみてください!"
|
||
)
|
||
)
|
||
|
||
private val auditionRoleMessages = mapOf(
|
||
"admin.audition.role.name_min_length" to mapOf(
|
||
Lang.KO to "배역 이름은 최소 2글자 입니다",
|
||
Lang.EN to "Role name must be at least 2 characters.",
|
||
Lang.JA to "役名は最低2文字です。"
|
||
),
|
||
"admin.audition.role.information_min_length" to mapOf(
|
||
Lang.KO to "오디션 배역 정보는 최소 10글자 입니다",
|
||
Lang.EN to "Audition role information must be at least 10 characters.",
|
||
Lang.JA to "オーディション役の情報は最低10文字です。"
|
||
),
|
||
"admin.audition.role.audition_required" to mapOf(
|
||
Lang.KO to "캐릭터가 등록될 오디션을 선택하세요",
|
||
Lang.EN to "Please select an audition for the character.",
|
||
Lang.JA to "キャラクターが登録されるオーディションを選択してください。"
|
||
),
|
||
"admin.audition.role.name_required" to mapOf(
|
||
Lang.KO to "캐릭터명을 입력하세요",
|
||
Lang.EN to "Please enter a character name.",
|
||
Lang.JA to "キャラクター名を入力してください。"
|
||
),
|
||
"admin.audition.role.script_url_required" to mapOf(
|
||
Lang.KO to "오디션 대본 URL을 입력하세요",
|
||
Lang.EN to "Please enter the audition script URL.",
|
||
Lang.JA to "オーディション台本のURLを入力してください。"
|
||
),
|
||
"admin.audition.role.information_required" to mapOf(
|
||
Lang.KO to "오디션 캐릭터 정보는 최소 10글자 입니다",
|
||
Lang.EN to "Audition character information must be at least 10 characters.",
|
||
Lang.JA to "オーディションキャラクター情報は最低10文字です。"
|
||
)
|
||
)
|
||
|
||
private val auditionClientMessages = mapOf(
|
||
"audition.error.invalid_request_retry" to mapOf(
|
||
Lang.KO to "잘못된 요청입니다.\n다시 시도해 주세요.",
|
||
Lang.EN to "Invalid request.\nPlease try again.",
|
||
Lang.JA to "不正なリクエストです。\nもう一度お試しください。"
|
||
)
|
||
)
|
||
|
||
private val auditionApplicantMessages = mapOf(
|
||
"audition.applicant.content_file_required" to mapOf(
|
||
Lang.KO to "녹음 파일을 확인해 주세요.",
|
||
Lang.EN to "Please check the recording file.",
|
||
Lang.JA to "録音ファイルを確認してください。"
|
||
)
|
||
)
|
||
|
||
private val auditionVoteMessages = mapOf(
|
||
"audition.vote.max_daily_reached" to mapOf(
|
||
Lang.KO to "오늘 응원은 여기까지!\n하루 최대 100회까지 응원이 가능합니다.\n내일 다시 이용해주세요.",
|
||
Lang.EN to "That's all for today!\nYou can vote up to 100 times per day.\nPlease try again tomorrow.",
|
||
Lang.JA to "今日はここまでです!\n1日に最大100回まで応援できます。\n明日またご利用ください。"
|
||
)
|
||
)
|
||
|
||
private val settlementRatioMessages = mapOf(
|
||
"admin.settlement_ratio.invalid_creator" to mapOf(
|
||
Lang.KO to "잘못된 크리에이터 입니다.",
|
||
Lang.EN to "Invalid creator.",
|
||
Lang.JA to "不正なクリエイターです。"
|
||
),
|
||
"admin.settlement_ratio.not_found" to mapOf(
|
||
Lang.KO to "해당 크리에이터의 정산 비율 설정이 없습니다.",
|
||
Lang.EN to "Settlement ratio settings not found for this creator.",
|
||
Lang.JA to "該当クリエイターの精算比率設定がありません。"
|
||
)
|
||
)
|
||
|
||
private val adminCanMessages = mapOf(
|
||
"admin.can.min_amount" to mapOf(
|
||
Lang.KO to "1 캔 이상 입력하세요.",
|
||
Lang.EN to "Please enter at least 1 can.",
|
||
Lang.JA to "1缶以上入力してください。"
|
||
),
|
||
"admin.can.method_required" to mapOf(
|
||
Lang.KO to "기록내용을 입력하세요.",
|
||
Lang.EN to "Please enter the record content.",
|
||
Lang.JA to "記録内容を入力してください。"
|
||
),
|
||
"admin.can.member_ids_required" to mapOf(
|
||
Lang.KO to "회원번호를 입력하세요.",
|
||
Lang.EN to "Please enter member IDs.",
|
||
Lang.JA to "会員番号を入力してください。"
|
||
),
|
||
"admin.can.invalid_member_ids" to mapOf(
|
||
Lang.KO to "잘못된 회원번호 입니다.",
|
||
Lang.EN to "Invalid member IDs.",
|
||
Lang.JA to "不正な会員番号です。"
|
||
)
|
||
)
|
||
|
||
private val canChargeMessages = mapOf(
|
||
"can.charge.invalid_payment_info" to mapOf(
|
||
Lang.KO to "결제정보에 오류가 있습니다.",
|
||
Lang.EN to "There is an error with the payment information.",
|
||
Lang.JA to "決済情報に誤りがあります。"
|
||
),
|
||
"can.charge.invalid_request_restart" to mapOf(
|
||
Lang.KO to "잘못된 요청입니다\n앱 종료 후 다시 시도해 주세요.",
|
||
Lang.EN to "Invalid request.\nPlease restart the app and try again.",
|
||
Lang.JA to "不正なリクエストです。\nアプリを終了して再度お試しください。"
|
||
),
|
||
"can.charge.purchase_failed_contact" to mapOf(
|
||
Lang.KO to "구매를 하지 못했습니다.\n고객센터로 문의해 주세요",
|
||
Lang.EN to "Purchase could not be completed.\nPlease contact customer support.",
|
||
Lang.JA to "購入を完了できませんでした。\nカスタマーサポートへお問い合わせください。"
|
||
),
|
||
"can.charge.payment_incomplete" to mapOf(
|
||
Lang.KO to "결제를 완료하지 못했습니다.",
|
||
Lang.EN to "Payment could not be completed.",
|
||
Lang.JA to "決済を完了できませんでした。"
|
||
),
|
||
"can.charge.payment_method.apple_iap" to mapOf(
|
||
Lang.KO to "애플(인 앱 결제)",
|
||
Lang.EN to "Apple (In-App Purchase)",
|
||
Lang.JA to "Apple(アプリ内課金)"
|
||
),
|
||
"can.charge.payment_method.google_iap" to mapOf(
|
||
Lang.KO to "구글(인 앱 결제)",
|
||
Lang.EN to "Google (In-App Purchase)",
|
||
Lang.JA to "Google(アプリ内課金)"
|
||
),
|
||
"can.charge.payment_method.card" to mapOf(
|
||
Lang.KO to "카드",
|
||
Lang.EN to "Card",
|
||
Lang.JA to "カード"
|
||
),
|
||
"can.charge.title" to mapOf(
|
||
Lang.KO to "%s 캔",
|
||
Lang.EN to "%s cans",
|
||
Lang.JA to "%s缶"
|
||
)
|
||
)
|
||
|
||
private val canChargeEventMessages = mapOf(
|
||
"can.charge.event.not_applied_contact" to mapOf(
|
||
Lang.KO to "이벤트가 적용되지 않았습니다.\n고객센터에 문의해 주세요.",
|
||
Lang.EN to "The event was not applied.\nPlease contact customer support.",
|
||
Lang.JA to "イベントが適用されていません。\nカスタマーサポートへお問い合わせください。"
|
||
),
|
||
"can.charge.event.additional_can_paid" to mapOf(
|
||
Lang.KO to "%s 캔이 추가 지급되었습니다.",
|
||
Lang.EN to "%s cans have been added.",
|
||
Lang.JA to "%s缶が追加で支給されました。"
|
||
),
|
||
"can.charge.event.first_title" to mapOf(
|
||
Lang.KO to "첫 충전 이벤트",
|
||
Lang.EN to "First Recharge Event",
|
||
Lang.JA to "初回チャージイベント"
|
||
)
|
||
)
|
||
|
||
private val canCouponMessages = mapOf(
|
||
"can.coupon.invalid_number_contact" to mapOf(
|
||
Lang.KO to "잘못된 쿠폰번호입니다.\n고객센터로 문의해 주시기 바랍니다.",
|
||
Lang.EN to "Invalid coupon number.\nPlease contact customer support.",
|
||
Lang.JA to "無効なクーポン番号です。\nカスタマーサポートへお問い合わせください。"
|
||
),
|
||
"can.coupon.already_used" to mapOf(
|
||
Lang.KO to "이미 사용한 쿠폰번호 입니다.",
|
||
Lang.EN to "This coupon number has already been used.",
|
||
Lang.JA to "すでに使用されたクーポン番号です。"
|
||
),
|
||
"can.coupon.use_complete" to mapOf(
|
||
Lang.KO to "쿠폰 사용이 완료되었습니다.\n%s캔이 지급되었습니다.",
|
||
Lang.EN to "Coupon redeemed successfully.\n%s cans have been granted.",
|
||
Lang.JA to "クーポンの使用が完了しました。\n%s缶が支給されました。"
|
||
),
|
||
"can.coupon.use_complete_point" to mapOf(
|
||
Lang.KO to "쿠폰 사용이 완료되었습니다.\n%s포인트가 지급되었습니다.",
|
||
Lang.EN to "Coupon redeemed successfully.\n%s points have been granted.",
|
||
Lang.JA to "クーポンの使用が完了しました。\n%sポイントが付与されました。"
|
||
),
|
||
"can.coupon.single_use_only" to mapOf(
|
||
Lang.KO to "해당 쿠폰은 1회만 충전이 가능합니다.",
|
||
Lang.EN to "This coupon can be used only once for charging.",
|
||
Lang.JA to "このクーポンは1回のみチャージに使用できます。"
|
||
),
|
||
"can.coupon.expired" to mapOf(
|
||
Lang.KO to "유효기간이 경과된 쿠폰입니다.",
|
||
Lang.EN to "This coupon has expired.",
|
||
Lang.JA to "有効期限が切れたクーポンです。"
|
||
),
|
||
"can.coupon.inactive" to mapOf(
|
||
Lang.KO to "이용이 불가능한 쿠폰입니다.",
|
||
Lang.EN to "This coupon is not available.",
|
||
Lang.JA to "利用できないクーポンです。"
|
||
),
|
||
"can.coupon.no_changes" to mapOf(
|
||
Lang.KO to "변경사항이 없습니다.",
|
||
Lang.EN to "No changes found.",
|
||
Lang.JA to "変更事項がありません。"
|
||
),
|
||
"can.coupon.validity_after_current" to mapOf(
|
||
Lang.KO to "유효기간은 기존 유효기간 이후 날짜로 설정하실 수 있습니다.",
|
||
Lang.EN to "Validity must be set after the current expiration date.",
|
||
Lang.JA to "有効期限は現在の有効期限以降に設定できます。"
|
||
),
|
||
"can.coupon.auth_required" to mapOf(
|
||
Lang.KO to "쿠폰은 본인인증을 하셔야 사용이 가능합니다.",
|
||
Lang.EN to "You must verify your identity to use coupons.",
|
||
Lang.JA to "クーポンの使用には本人認証が必要です。"
|
||
),
|
||
"can.coupon.download_failed_retry" to mapOf(
|
||
Lang.KO to "다운로드를 하지 못했습니다.\n다시 시도해 주세요.",
|
||
Lang.EN to "Download failed.\nPlease try again.",
|
||
Lang.JA to "ダウンロードできませんでした。\nもう一度お試しください。"
|
||
),
|
||
"can.coupon.download_filename" to mapOf(
|
||
Lang.KO to "쿠폰번호리스트.xlsx",
|
||
Lang.EN to "coupon_number_list.xlsx",
|
||
Lang.JA to "クーポン番号リスト.xlsx"
|
||
),
|
||
"can.coupon.download_header.index" to mapOf(
|
||
Lang.KO to "순번",
|
||
Lang.EN to "No.",
|
||
Lang.JA to "番号"
|
||
),
|
||
"can.coupon.download_header.number" to mapOf(
|
||
Lang.KO to "쿠폰번호",
|
||
Lang.EN to "Coupon Number",
|
||
Lang.JA to "クーポン番号"
|
||
),
|
||
"can.coupon.download_header.used" to mapOf(
|
||
Lang.KO to "사용여부",
|
||
Lang.EN to "Used",
|
||
Lang.JA to "使用有無"
|
||
),
|
||
"can.coupon.download_used_mark" to mapOf(
|
||
Lang.KO to "O",
|
||
Lang.EN to "O",
|
||
Lang.JA to "O"
|
||
),
|
||
"can.coupon.download_unused_mark" to mapOf(
|
||
Lang.KO to "X",
|
||
Lang.EN to "X",
|
||
Lang.JA to "X"
|
||
)
|
||
)
|
||
|
||
private val canPaymentMessages = mapOf(
|
||
"can.payment.invalid_request_retry" to mapOf(
|
||
Lang.KO to "잘못된 요청입니다.\n다시 시도해 주세요.",
|
||
Lang.EN to "Invalid request.\nPlease try again.",
|
||
Lang.JA to "不正なリクエストです。\nもう一度お試しください。"
|
||
),
|
||
"can.payment.invalid_reservation" to mapOf(
|
||
Lang.KO to "잘못된 예약정보 입니다.",
|
||
Lang.EN to "Invalid reservation information.",
|
||
Lang.JA to "無効な予約情報です。"
|
||
),
|
||
"can.payment.method.refund" to mapOf(
|
||
Lang.KO to "환불",
|
||
Lang.EN to "Refund",
|
||
Lang.JA to "返金"
|
||
),
|
||
"can.payment.insufficient_can" to mapOf(
|
||
Lang.KO to "%s 캔이 부족합니다. 충전 후 이용해 주세요.",
|
||
Lang.EN to "You are short of %s cans. Please recharge and try again.",
|
||
Lang.JA to "%s缶が不足しています。チャージしてからご利用ください。"
|
||
)
|
||
)
|
||
|
||
private val adminChatBannerMessages = mapOf(
|
||
"admin.chat.banner.image_save_failed" to mapOf(
|
||
Lang.KO to "이미지 저장에 실패했습니다.",
|
||
Lang.EN to "Failed to save image.",
|
||
Lang.JA to "画像の保存に失敗しました。"
|
||
),
|
||
"admin.chat.banner.delete_success" to mapOf(
|
||
Lang.KO to "배너가 성공적으로 삭제되었습니다.",
|
||
Lang.EN to "Banner deleted successfully.",
|
||
Lang.JA to "バナーが削除されました。"
|
||
),
|
||
"admin.chat.banner.reorder_success" to mapOf(
|
||
Lang.KO to "배너 정렬 순서가 성공적으로 변경되었습니다.",
|
||
Lang.EN to "Banner order updated successfully.",
|
||
Lang.JA to "バナーの並び順が変更されました。"
|
||
)
|
||
)
|
||
|
||
private val adminChatCalculateMessages = mapOf(
|
||
"admin.chat.calculate.end_date_max_today" to mapOf(
|
||
Lang.KO to "끝 날짜는 오늘 날짜까지만 입력 가능합니다.",
|
||
Lang.EN to "End date can be at most today.",
|
||
Lang.JA to "終了日は本日まで指定できます。"
|
||
),
|
||
"admin.chat.calculate.start_date_after_end" to mapOf(
|
||
Lang.KO to "시작 날짜는 끝 날짜보다 이후일 수 없습니다.",
|
||
Lang.EN to "Start date cannot be after end date.",
|
||
Lang.JA to "開始日は終了日より後にできません。"
|
||
),
|
||
"admin.chat.calculate.max_period_6_months" to mapOf(
|
||
Lang.KO to "조회 가능 기간은 최대 6개월입니다.",
|
||
Lang.EN to "Maximum query period is 6 months.",
|
||
Lang.JA to "照会期間は最大6ヶ月です。"
|
||
)
|
||
)
|
||
|
||
private val adminChatCharacterMessages = mapOf(
|
||
"admin.chat.character.duplicate_name" to mapOf(
|
||
Lang.KO to "동일한 이름은 등록이 불가능합니다.",
|
||
Lang.EN to "A character with the same name already exists.",
|
||
Lang.JA to "同じ名前は登録できません。"
|
||
),
|
||
"admin.chat.character.register_failed_retry" to mapOf(
|
||
Lang.KO to "등록에 실패했습니다. 다시 시도해 주세요.",
|
||
Lang.EN to "Registration failed. Please try again.",
|
||
Lang.JA to "登録に失敗しました。もう一度お試しください。"
|
||
),
|
||
"admin.chat.character.register_failed_no_id" to mapOf(
|
||
Lang.KO to "등록에 실패했습니다. 응답에 ID가 없습니다.",
|
||
Lang.EN to "Registration failed. No ID in response.",
|
||
Lang.JA to "登録に失敗しました。応答にIDがありません。"
|
||
),
|
||
"admin.chat.character.image_save_failed" to mapOf(
|
||
Lang.KO to "이미지 저장에 실패했습니다.",
|
||
Lang.EN to "Failed to save image.",
|
||
Lang.JA to "画像の保存に失敗しました。"
|
||
),
|
||
"admin.chat.character.no_changes" to mapOf(
|
||
Lang.KO to "변경된 데이터가 없습니다.",
|
||
Lang.EN to "No changes detected.",
|
||
Lang.JA to "変更されたデータがありません。"
|
||
),
|
||
"admin.chat.character.not_found" to mapOf(
|
||
Lang.KO to "해당 캐릭터를 찾을 수 없습니다.",
|
||
Lang.EN to "Character not found.",
|
||
Lang.JA to "該当キャラクターが見つかりません。"
|
||
),
|
||
"admin.chat.character.update_failed_retry" to mapOf(
|
||
Lang.KO to "수정에 실패했습니다. 다시 시도해 주세요.",
|
||
Lang.EN to "Update failed. Please try again.",
|
||
Lang.JA to "更新に失敗しました。もう一度お試しください。"
|
||
)
|
||
)
|
||
|
||
private val adminChatCurationMessages = mapOf(
|
||
"admin.chat.curation.not_found" to mapOf(
|
||
Lang.KO to "큐레이션을 찾을 수 없습니다.",
|
||
Lang.EN to "Curation not found.",
|
||
Lang.JA to "キュレーションが見つかりません。"
|
||
),
|
||
"admin.chat.curation.character_ids_empty" to mapOf(
|
||
Lang.KO to "등록할 캐릭터 ID 리스트가 비어있습니다",
|
||
Lang.EN to "Character ID list to register is empty.",
|
||
Lang.JA to "登録するキャラクターIDリストが空です。"
|
||
),
|
||
"admin.chat.curation.inactive" to mapOf(
|
||
Lang.KO to "비활성화된 큐레이션입니다.",
|
||
Lang.EN to "Curation is inactive.",
|
||
Lang.JA to "無効化されたキュレーションです。"
|
||
),
|
||
"admin.chat.curation.invalid_character_ids" to mapOf(
|
||
Lang.KO to "유효한 캐릭터 ID가 없습니다",
|
||
Lang.EN to "No valid character IDs.",
|
||
Lang.JA to "有効なキャラクターIDがありません。"
|
||
),
|
||
"admin.chat.curation.mapping_not_found" to mapOf(
|
||
Lang.KO to "매핑을 찾을 수 없습니다.",
|
||
Lang.EN to "Mapping not found.",
|
||
Lang.JA to "マッピングが見つかりません。"
|
||
),
|
||
"admin.chat.curation.character_not_in_curation" to mapOf(
|
||
Lang.KO to "큐레이션에 포함되지 않은 캐릭터입니다.",
|
||
Lang.EN to "Character not included in this curation.",
|
||
Lang.JA to "このキュレーションに含まれていないキャラクターです。"
|
||
)
|
||
)
|
||
|
||
private val adminChatCharacterImageMessages = mapOf(
|
||
"admin.chat.character.image_deleted" to mapOf(
|
||
Lang.KO to "이미지가 삭제되었습니다.",
|
||
Lang.EN to "Image deleted.",
|
||
Lang.JA to "画像が削除されました。"
|
||
),
|
||
"admin.chat.character.character_id_required" to mapOf(
|
||
Lang.KO to "characterId는 필수입니다",
|
||
Lang.EN to "characterId is required.",
|
||
Lang.JA to "characterIdは必須です。"
|
||
),
|
||
"admin.chat.character.order_updated" to mapOf(
|
||
Lang.KO to "정렬 순서가 변경되었습니다.",
|
||
Lang.EN to "Order updated.",
|
||
Lang.JA to "並び順が変更されました。"
|
||
),
|
||
"admin.chat.character.image_format_invalid" to mapOf(
|
||
Lang.KO to "이미지 포맷을 인식할 수 없습니다.",
|
||
Lang.EN to "Unsupported image format.",
|
||
Lang.JA to "画像形式を認識できません。"
|
||
),
|
||
"admin.chat.character.blur_image_save_failed" to mapOf(
|
||
Lang.KO to "블러 이미지 저장에 실패했습니다.",
|
||
Lang.EN to "Failed to save blurred image.",
|
||
Lang.JA to "ぼかし画像の保存に失敗しました。"
|
||
)
|
||
)
|
||
|
||
private val adminChatOriginalWorkMessages = mapOf(
|
||
"admin.chat.original.image_save_failed" to mapOf(
|
||
Lang.KO to "이미지 저장에 실패했습니다.",
|
||
Lang.EN to "Failed to save image.",
|
||
Lang.JA to "画像の保存に失敗しました。"
|
||
),
|
||
"admin.chat.original.duplicate_title" to mapOf(
|
||
Lang.KO to "동일한 제목의 원작이 이미 존재합니다.",
|
||
Lang.EN to "An original work with the same title already exists.",
|
||
Lang.JA to "同じタイトルの原作が既に存在します。"
|
||
),
|
||
"admin.chat.original.not_found" to mapOf(
|
||
Lang.KO to "해당 원작을 찾을 수 없습니다.",
|
||
Lang.EN to "Original work not found.",
|
||
Lang.JA to "該当の原作が見つかりません。"
|
||
)
|
||
)
|
||
|
||
private val adminContentMessages = mapOf(
|
||
"admin.content.search_word_min_length" to mapOf(
|
||
Lang.KO to "2글자 이상 입력하세요.",
|
||
Lang.EN to "Please enter at least 2 characters.",
|
||
Lang.JA to "2文字以上入力してください。"
|
||
),
|
||
"admin.content.not_found" to mapOf(
|
||
Lang.KO to "없는 콘텐츠 입니다.",
|
||
Lang.EN to "Content not found.",
|
||
Lang.JA to "該当のコンテンツが見つかりません。"
|
||
)
|
||
)
|
||
|
||
private val adminContentBannerMessages = mapOf(
|
||
"admin.content.banner.creator_required" to mapOf(
|
||
Lang.KO to "크리에이터를 선택하세요.",
|
||
Lang.EN to "Please select a creator.",
|
||
Lang.JA to "クリエイターを選択してください。"
|
||
),
|
||
"admin.content.banner.series_required" to mapOf(
|
||
Lang.KO to "시리즈를 선택하세요.",
|
||
Lang.EN to "Please select a series.",
|
||
Lang.JA to "シリーズを選択してください。"
|
||
),
|
||
"admin.content.banner.link_required" to mapOf(
|
||
Lang.KO to "링크 url을 입력하세요.",
|
||
Lang.EN to "Please enter a link URL.",
|
||
Lang.JA to "リンクURLを入力してください。"
|
||
),
|
||
"admin.content.banner.event_required" to mapOf(
|
||
Lang.KO to "이벤트를 선택하세요.",
|
||
Lang.EN to "Please select an event.",
|
||
Lang.JA to "イベントを選択してください。"
|
||
)
|
||
)
|
||
|
||
private val adminHashTagCurationMessages = mapOf(
|
||
"admin.content.hash_tag.already_registered" to mapOf(
|
||
Lang.KO to "이미 등록된 태그 입니다.",
|
||
Lang.EN to "Tag already registered.",
|
||
Lang.JA to "既に登録されたタグです。"
|
||
)
|
||
)
|
||
|
||
private val adminContentSeriesMessages = mapOf(
|
||
"admin.content.series.random_days_conflict" to mapOf(
|
||
Lang.KO to "랜덤과 연재요일 동시에 선택할 수 없습니다.",
|
||
Lang.EN to "Random and published days cannot be selected together.",
|
||
Lang.JA to "ランダムと連載曜日を同時に選択できません。"
|
||
)
|
||
)
|
||
|
||
private val adminContentSeriesBannerMessages = mapOf(
|
||
"admin.content.series.banner.delete_success" to mapOf(
|
||
Lang.KO to "배너가 성공적으로 삭제되었습니다.",
|
||
Lang.EN to "Banner deleted successfully.",
|
||
Lang.JA to "バナーが削除されました。"
|
||
),
|
||
"admin.content.series.banner.reorder_success" to mapOf(
|
||
Lang.KO to "배너 정렬 순서가 성공적으로 변경되었습니다.",
|
||
Lang.EN to "Banner order updated successfully.",
|
||
Lang.JA to "バナーの並び順が変更されました。"
|
||
),
|
||
"admin.content.series.banner.image_save_failed" to mapOf(
|
||
Lang.KO to "이미지 저장에 실패했습니다.",
|
||
Lang.EN to "Failed to save image.",
|
||
Lang.JA to "画像の保存に失敗しました。"
|
||
)
|
||
)
|
||
|
||
private val adminContentSeriesGenreMessages = mapOf(
|
||
"admin.content.series.genre.no_changes" to mapOf(
|
||
Lang.KO to "변경사항이 없습니다.",
|
||
Lang.EN to "No changes to update.",
|
||
Lang.JA to "変更事項がありません。"
|
||
)
|
||
)
|
||
|
||
private val adminContentThemeMessages = mapOf(
|
||
"admin.content.theme.already_registered" to mapOf(
|
||
Lang.KO to "이미 등록된 테마 입니다.",
|
||
Lang.EN to "Theme already registered.",
|
||
Lang.JA to "既に登録されたテーマです。"
|
||
)
|
||
)
|
||
|
||
private val adminEventBannerMessages = mapOf(
|
||
"admin.event.banner.detail_or_link_required" to mapOf(
|
||
Lang.KO to "상세이미지 혹은 링크를 등록하세요",
|
||
Lang.EN to "Please register a detail image or a link.",
|
||
Lang.JA to "詳細画像またはリンクを登録してください。"
|
||
),
|
||
"admin.event.banner.create_failed" to mapOf(
|
||
Lang.KO to "이벤트 등록을 하지 못했습니다.",
|
||
Lang.EN to "Failed to create the event.",
|
||
Lang.JA to "イベントの登録に失敗しました。"
|
||
)
|
||
)
|
||
|
||
private val adminChargeEventMessages = mapOf(
|
||
"admin.charge_event.not_found_retry" to mapOf(
|
||
Lang.KO to "해당하는 충전이벤트가 없습니다\n다시 시도해 주세요.",
|
||
Lang.EN to "Charge event not found.\nPlease try again.",
|
||
Lang.JA to "該当するチャージイベントがありません。\nもう一度お試しください。"
|
||
)
|
||
)
|
||
|
||
private val adminExplorerMessages = mapOf(
|
||
"admin.explorer.title_required" to mapOf(
|
||
Lang.KO to "제목을 입력하세요.",
|
||
Lang.EN to "Please enter a title.",
|
||
Lang.JA to "タイトルを入力してください。"
|
||
),
|
||
"admin.explorer.title_duplicate" to mapOf(
|
||
Lang.KO to "동일한 제목이 있습니다.",
|
||
Lang.EN to "A section with the same title already exists.",
|
||
Lang.JA to "同じタイトルが存在します。"
|
||
),
|
||
"admin.explorer.tags_required" to mapOf(
|
||
Lang.KO to "관심사를 선택하세요.",
|
||
Lang.EN to "Please select interests.",
|
||
Lang.JA to "関心事を選択してください。"
|
||
),
|
||
"admin.explorer.no_changes" to mapOf(
|
||
Lang.KO to "변경사항이 없습니다.",
|
||
Lang.EN to "No changes to update.",
|
||
Lang.JA to "変更事項がありません。"
|
||
),
|
||
"admin.explorer.section_not_found" to mapOf(
|
||
Lang.KO to "해당하는 섹션이 없습니다.",
|
||
Lang.EN to "Section not found.",
|
||
Lang.JA to "該当するセクションがありません。"
|
||
),
|
||
"admin.explorer.valid_title_required" to mapOf(
|
||
Lang.KO to "올바른 제목을 입력하세요.",
|
||
Lang.EN to "Please enter a valid title.",
|
||
Lang.JA to "正しいタイトルを入力してください。"
|
||
),
|
||
"admin.explorer.tags_input_required" to mapOf(
|
||
Lang.KO to "관심사를 입력하세요.",
|
||
Lang.EN to "Please enter interests.",
|
||
Lang.JA to "関心事を入力してください。"
|
||
)
|
||
)
|
||
|
||
private val adminLiveMessages = mapOf(
|
||
"admin.live.creator_required" to mapOf(
|
||
Lang.KO to "올바른 크리에이터를 선택해 주세요.",
|
||
Lang.EN to "Please select a valid creator.",
|
||
Lang.JA to "正しいクリエイターを選択してください。"
|
||
),
|
||
"admin.live.start_after_now" to mapOf(
|
||
Lang.KO to "노출 시작일은 현재시간 이후로 설정하셔야 합니다.",
|
||
Lang.EN to "Start date must be set after the current time.",
|
||
Lang.JA to "表示開始日は現在時刻より後に設定してください。"
|
||
),
|
||
"admin.live.end_after_now" to mapOf(
|
||
Lang.KO to "노출 종료일은 현재시간 이후로 설정하셔야 합니다.",
|
||
Lang.EN to "End date must be set after the current time.",
|
||
Lang.JA to "表示終了日は現在時刻より後に設定してください。"
|
||
),
|
||
"admin.live.start_before_end" to mapOf(
|
||
Lang.KO to "노출 시작일은 노출 종료일 이전으로 설정하셔야 합니다.",
|
||
Lang.EN to "Start date must be before the end date.",
|
||
Lang.JA to "表示開始日は表示終了日より前に設定してください。"
|
||
),
|
||
"admin.live.recommend_not_found_retry" to mapOf(
|
||
Lang.KO to "해당하는 추천라이브가 없습니다. 다시 확인해 주세요.",
|
||
Lang.EN to "Recommended live not found. Please check again.",
|
||
Lang.JA to "該当するおすすめライブがありません。もう一度確認してください。"
|
||
),
|
||
"admin.live.end_after_start" to mapOf(
|
||
Lang.KO to "노출 종료일은 노출 시작일 이후로 설정하셔야 합니다.",
|
||
Lang.EN to "End date must be after the start date.",
|
||
Lang.JA to "表示終了日は表示開始日より後に設定してください。"
|
||
),
|
||
"admin.live.cancel_reason.no_show" to mapOf(
|
||
Lang.KO to "관리자에 의한 취소 - 노쇼",
|
||
Lang.EN to "Canceled by admin - no-show",
|
||
Lang.JA to "管理者によるキャンセル - ノーショー"
|
||
)
|
||
)
|
||
|
||
private val adminSignatureCanMessages = mapOf(
|
||
"admin.signature_can.created" to mapOf(
|
||
Lang.KO to "등록되었습니다.",
|
||
Lang.EN to "Successfully registered.",
|
||
Lang.JA to "登録されました。"
|
||
),
|
||
"admin.signature_can.no_changes" to mapOf(
|
||
Lang.KO to "변경사항이 없습니다.",
|
||
Lang.EN to "No changes to update.",
|
||
Lang.JA to "変更事項がありません。"
|
||
),
|
||
"admin.signature_can.updated" to mapOf(
|
||
Lang.KO to "수정되었습니다.",
|
||
Lang.EN to "Updated.",
|
||
Lang.JA to "更新されました。"
|
||
),
|
||
"admin.signature_can.creator_required" to mapOf(
|
||
Lang.KO to "올바른 크리에이터를 선택해 주세요.",
|
||
Lang.EN to "Please select a valid creator.",
|
||
Lang.JA to "正しいクリエイターを選択してください。"
|
||
),
|
||
"admin.signature_can.min_can" to mapOf(
|
||
Lang.KO to "1캔 이상 설정할 수 있습니다.",
|
||
Lang.EN to "You can set at least 1 can.",
|
||
Lang.JA to "1缶以上設定できます。"
|
||
),
|
||
"admin.signature_can.time_range" to mapOf(
|
||
Lang.KO to "시간은 3초 이상 20초 이하로 설정할 수 있습니다.",
|
||
Lang.EN to "Time must be between 3 and 20 seconds.",
|
||
Lang.JA to "時間は3秒以上20秒以下に設定できます。"
|
||
)
|
||
)
|
||
|
||
private val adminAdMediaPartnerMessages = mapOf(
|
||
"admin.media_partner.invalid_access" to mapOf(
|
||
Lang.KO to "잘못된 접근입니다",
|
||
Lang.EN to "Invalid access.",
|
||
Lang.JA to "不正なアクセスです。"
|
||
)
|
||
)
|
||
|
||
private val adminMemberMessages = mapOf(
|
||
"admin.member.not_found" to mapOf(
|
||
Lang.KO to "해당 유저가 없습니다.",
|
||
Lang.EN to "User not found.",
|
||
Lang.JA to "該当するユーザーがいません。"
|
||
),
|
||
"admin.member.search_word_min_length" to mapOf(
|
||
Lang.KO to "2글자 이상 입력하세요.",
|
||
Lang.EN to "Please enter at least 2 characters.",
|
||
Lang.JA to "2文字以上入力してください。"
|
||
),
|
||
"admin.member.reset_password_invalid" to mapOf(
|
||
Lang.KO to "잘못된 회원정보입니다.\n다시 시도해 주세요.",
|
||
Lang.EN to "Invalid member information.\nPlease try again.",
|
||
Lang.JA to "不正な会員情報です。\nもう一度お試しください。"
|
||
),
|
||
"admin.member.role.admin" to mapOf(
|
||
Lang.KO to "관리자",
|
||
Lang.EN to "Admin",
|
||
Lang.JA to "管理者"
|
||
),
|
||
"admin.member.role.user" to mapOf(
|
||
Lang.KO to "일반회원",
|
||
Lang.EN to "User",
|
||
Lang.JA to "一般会員"
|
||
),
|
||
"admin.member.role.creator" to mapOf(
|
||
Lang.KO to "크리에이터",
|
||
Lang.EN to "Creator",
|
||
Lang.JA to "クリエイター"
|
||
),
|
||
"admin.member.role.agent" to mapOf(
|
||
Lang.KO to "에이전트",
|
||
Lang.EN to "Agent",
|
||
Lang.JA to "エージェント"
|
||
),
|
||
"admin.member.role.bot" to mapOf(
|
||
Lang.KO to "봇",
|
||
Lang.EN to "Bot",
|
||
Lang.JA to "ボット"
|
||
)
|
||
)
|
||
|
||
private val adminMemberTagMessages = mapOf(
|
||
"admin.member.tag.already_registered" to mapOf(
|
||
Lang.KO to "이미 등록된 태그 입니다.",
|
||
Lang.EN to "Tag already registered.",
|
||
Lang.JA to "既に登録されたタグです。"
|
||
)
|
||
)
|
||
|
||
private val adminPointPolicyMessages = mapOf(
|
||
"admin.point.policy.invalid_access" to mapOf(
|
||
Lang.KO to "잘못된 접근입니다.",
|
||
Lang.EN to "Invalid access.",
|
||
Lang.JA to "不正なアクセスです。"
|
||
)
|
||
)
|
||
|
||
private val adminMemberStatisticsMessages = mapOf(
|
||
"admin.member.statistics.invalid_access" to mapOf(
|
||
Lang.KO to "잘못된 접근입니다.",
|
||
Lang.EN to "Invalid access.",
|
||
Lang.JA to "不正なアクセスです。"
|
||
)
|
||
)
|
||
|
||
private val messageMessages = mapOf(
|
||
"message.error.recipient_not_found" to mapOf(
|
||
Lang.KO to "받는 사람이 없습니다.",
|
||
Lang.EN to "Recipient not found.",
|
||
Lang.JA to "受信者が見つかりません。"
|
||
),
|
||
"message.error.recipient_inactive" to mapOf(
|
||
Lang.KO to "탈퇴한 유저에게는 메시지를 보내실 수 없습니다.",
|
||
Lang.EN to "You cannot send messages to a deactivated user.",
|
||
Lang.JA to "退会したユーザーにはメッセージを送れません。"
|
||
),
|
||
"message.error.blocked_by_recipient" to mapOf(
|
||
Lang.KO to "%s님의 요청으로 메시지를 보낼 수 없습니다.",
|
||
Lang.EN to "You cannot send messages at %s's request.",
|
||
Lang.JA to "%sの要請によりメッセージを送信できません。"
|
||
),
|
||
"message.fcm.title" to mapOf(
|
||
Lang.KO to "메시지",
|
||
Lang.EN to "Message",
|
||
Lang.JA to "メッセージ"
|
||
),
|
||
"message.fcm.text_received" to mapOf(
|
||
Lang.KO to "%s님으로 부터 문자메시지가 도착했습니다.",
|
||
Lang.EN to "You have received a text message from %s.",
|
||
Lang.JA to "%sからテキストメッセージが届きました。"
|
||
),
|
||
"message.fcm.voice_received" to mapOf(
|
||
Lang.KO to "%s님으로 부터 음성메시지가 도착했습니다.",
|
||
Lang.EN to "You have received a voice message from %s.",
|
||
Lang.JA to "%sからボイスメッセージが届きました。"
|
||
),
|
||
"message.error.not_found_retry" to mapOf(
|
||
Lang.KO to "해당하는 메시지가 없습니다.\n다시 확인해 주시기 바랍니다.",
|
||
Lang.EN to "Message not found. Please check again.",
|
||
Lang.JA to "該当するメッセージがありません。\nもう一度ご確認ください。"
|
||
),
|
||
"message.error.already_kept" to mapOf(
|
||
Lang.KO to "이미 보관된 메시지 입니다.",
|
||
Lang.EN to "Message is already kept.",
|
||
Lang.JA to "すでに保管されたメッセージです。"
|
||
)
|
||
)
|
||
|
||
private val noticeMessages = mapOf(
|
||
"notice.error.title_required" to mapOf(
|
||
Lang.KO to "제목을 입력하세요.",
|
||
Lang.EN to "Please enter a title.",
|
||
Lang.JA to "タイトルを入力してください。"
|
||
),
|
||
"notice.error.content_required" to mapOf(
|
||
Lang.KO to "내용을 입력하세요.",
|
||
Lang.EN to "Please enter content.",
|
||
Lang.JA to "内容を入力してください。"
|
||
),
|
||
"notice.error.update_required" to mapOf(
|
||
Lang.KO to "수정할 내용을 입력하세요.",
|
||
Lang.EN to "Please enter content to update.",
|
||
Lang.JA to "修正する内容を入力してください。"
|
||
)
|
||
)
|
||
|
||
private val reportMessages = mapOf(
|
||
"report.received" to mapOf(
|
||
Lang.KO to "신고가 접수되었습니다.",
|
||
Lang.EN to "Your report has been received.",
|
||
Lang.JA to "通報が受け付けられました。"
|
||
)
|
||
)
|
||
|
||
private val imageValidationMessages = mapOf(
|
||
"image.error.only_image_allowed" to mapOf(
|
||
Lang.KO to "이미지 파일만 업로드할 수 있습니다.",
|
||
Lang.EN to "Only image files can be uploaded.",
|
||
Lang.JA to "画像ファイルのみアップロードできます。"
|
||
),
|
||
"image.error.gif_paid_only" to mapOf(
|
||
Lang.KO to "GIF 파일은 유료 게시물만 업로드 할 수 있습니다.",
|
||
Lang.EN to "GIF files can be uploaded only for paid posts.",
|
||
Lang.JA to "GIFファイルは有料投稿のみアップロードできます。"
|
||
)
|
||
)
|
||
|
||
private val memberAuthMessages = mapOf(
|
||
"member.auth.blocked_policy" to mapOf(
|
||
Lang.KO to "운영정책을 위반하여 이용을 제한합니다.",
|
||
Lang.EN to "Your access is restricted due to policy violations.",
|
||
Lang.JA to "運営ポリシー違反のため利用が制限されています。"
|
||
),
|
||
"member.auth.already_verified" to mapOf(
|
||
Lang.KO to "이미 인증된 계정입니다.",
|
||
Lang.EN to "This account is already verified.",
|
||
Lang.JA to "既に認証済みのアカウントです。"
|
||
),
|
||
"member.auth.certificate_invalid_retry" to mapOf(
|
||
Lang.KO to "인증정보에 오류가 있습니다.\n다시 시도해 주세요.",
|
||
Lang.EN to "There is an error with the verification information.\nPlease try again.",
|
||
Lang.JA to "認証情報にエラーがあります。\nもう一度お試しください。"
|
||
),
|
||
"member.auth.max_accounts" to mapOf(
|
||
Lang.KO to "이미 본인인증한 계정 %s개 이용중입니다.\n" +
|
||
"소다라이브의 본인인증은 최대 3개의 계정만 이용할 수 있습니다.",
|
||
Lang.EN to "You are already using %s verified account(s).\n" +
|
||
"Identity verification is limited to up to 3 accounts on Sodalive.",
|
||
Lang.JA to "本人認証済みのアカウントを%s件利用中です。\n" +
|
||
"ソダライブの本人認証は最大3アカウントまでです。"
|
||
),
|
||
"member.auth.age_limit" to mapOf(
|
||
Lang.KO to "%s년 1월 1일 이전 출생자만 본인인증이 가능합니다.",
|
||
Lang.EN to "Only users born on or before January 1, %s can be verified.",
|
||
Lang.JA to "%s年1月1日以前に生まれた方のみ本人認証が可能です。"
|
||
)
|
||
)
|
||
|
||
private val memberMessages = mapOf(
|
||
"member.signup.failed_retry" to mapOf(
|
||
Lang.KO to "회원가입을 하지 못했습니다.\n다시 시도해 주세요.",
|
||
Lang.EN to "Sign up failed.\nPlease try again.",
|
||
Lang.JA to "会員登録に失敗しました。\nもう一度お試しください。"
|
||
),
|
||
"member.signup.success" to mapOf(
|
||
Lang.KO to "회원가입을 축하드립니다.",
|
||
Lang.EN to "Congratulations on your sign up.",
|
||
Lang.JA to "ご登録おめでとうございます。"
|
||
),
|
||
"member.login.success" to mapOf(
|
||
Lang.KO to "로그인 되었습니다.",
|
||
Lang.EN to "You are logged in.",
|
||
Lang.JA to "ログインしました。"
|
||
),
|
||
"member.signout.success" to mapOf(
|
||
Lang.KO to "정상적으로 탈퇴 처리되었습니다.",
|
||
Lang.EN to "Your account has been successfully deleted.",
|
||
Lang.JA to "正常に退会処理されました。"
|
||
)
|
||
)
|
||
|
||
private val memberValidationMessages = mapOf(
|
||
"member.validation.invalid_request_retry" to mapOf(
|
||
Lang.KO to "잘못된 요청입니다\n앱 종료 후 다시 시도해 주세요.",
|
||
Lang.EN to "Invalid request.\nPlease close the app and try again.",
|
||
Lang.JA to "不正なリクエストです。\nアプリを終了して再度お試しください。"
|
||
),
|
||
"member.validation.agree_required" to mapOf(
|
||
Lang.KO to "약관에 동의하셔야 회원가입이 가능합니다.",
|
||
Lang.EN to "You must agree to the terms to sign up.",
|
||
Lang.JA to "会員登録には規約への同意が必要です。"
|
||
),
|
||
"member.validation.user_not_found" to mapOf(
|
||
Lang.KO to "없는 사용자 입니다.",
|
||
Lang.EN to "User not found.",
|
||
Lang.JA to "ユーザーが見つかりません。"
|
||
),
|
||
"member.validation.account_not_found" to mapOf(
|
||
Lang.KO to "없는 계정입니다.",
|
||
Lang.EN to "Account not found.",
|
||
Lang.JA to "アカウントが見つかりません。"
|
||
),
|
||
"member.validation.inactive_account" to mapOf(
|
||
Lang.KO to "탈퇴한 계정입니다.\n고객센터로 문의해 주시기 바랍니다.",
|
||
Lang.EN to "This account has been deleted.\nPlease contact customer support.",
|
||
Lang.JA to "退会したアカウントです。\nカスタマーサポートへお問い合わせください。"
|
||
),
|
||
"member.validation.creator_not_found" to mapOf(
|
||
Lang.KO to "크리에이터 정보를 확인해주세요.",
|
||
Lang.EN to "Please check the creator information.",
|
||
Lang.JA to "クリエイター情報を確認してください。"
|
||
),
|
||
"member.validation.nickname_min_length" to mapOf(
|
||
Lang.KO to "두 글자 이상 입력 하셔야 합니다.",
|
||
Lang.EN to "Please enter at least 2 characters.",
|
||
Lang.JA to "2文字以上入力してください。"
|
||
),
|
||
"member.validation.password_mismatch" to mapOf(
|
||
Lang.KO to "비밀번호가 일치하지 않습니다.",
|
||
Lang.EN to "Password does not match.",
|
||
Lang.JA to "パスワードが一致しません。"
|
||
),
|
||
"member.validation.signout_reason_required" to mapOf(
|
||
Lang.KO to "탈퇴하려는 이유를 입력해 주세요.",
|
||
Lang.EN to "Please enter a reason for deleting your account.",
|
||
Lang.JA to "退会理由を入力してください。"
|
||
),
|
||
"member.validation.email_available" to mapOf(
|
||
Lang.KO to "사용 가능한 이메일 입니다.",
|
||
Lang.EN to "This email is available.",
|
||
Lang.JA to "使用可能なメールアドレスです。"
|
||
),
|
||
"member.validation.nickname_available" to mapOf(
|
||
Lang.KO to "사용 가능한 닉네임 입니다.",
|
||
Lang.EN to "This nickname is available.",
|
||
Lang.JA to "使用可能なニックネームです。"
|
||
),
|
||
"member.validation.email_in_use" to mapOf(
|
||
Lang.KO to "이미 사용중인 이메일 입니다.",
|
||
Lang.EN to "This email is already in use.",
|
||
Lang.JA to "このメールアドレスは既に使用されています。"
|
||
),
|
||
"member.validation.nickname_in_use" to mapOf(
|
||
Lang.KO to "이미 사용중인 닉네임 입니다.",
|
||
Lang.EN to "This nickname is already in use.",
|
||
Lang.JA to "このニックネームは既に使用されています。"
|
||
),
|
||
"member.validation.email_registered_with_provider" to mapOf(
|
||
Lang.KO to "해당 이메일은 %s 계정으로 가입되어 있습니다. 해당 소셜 로그인을 사용해 주세요.",
|
||
Lang.EN to "This email is registered with a %s account. Please use that social login.",
|
||
Lang.JA to "このメールアドレスは%sアカウントで登録されています。該当のソーシャルログインをご利用ください。"
|
||
),
|
||
"member.validation.email_registered_with_provider_already" to mapOf(
|
||
Lang.KO to "해당 이메일은 %s 계정으로 이미 가입되어 있습니다. 해당 소셜 로그인을 사용해 주세요.",
|
||
Lang.EN to "This email is already registered with a %s account. Please use that social login.",
|
||
Lang.JA to "このメールアドレスは既に%sアカウントで登録されています。該当のソーシャルログインをご利用ください。"
|
||
),
|
||
"member.validation.unregistered_account_retry" to mapOf(
|
||
Lang.KO to "등록되지 않은 계정입니다.\n확인 후 다시 시도해 주세요.",
|
||
Lang.EN to "This account is not registered.\nPlease check and try again.",
|
||
Lang.JA to "登録されていないアカウントです。\n確認してもう一度お試しください。"
|
||
)
|
||
)
|
||
|
||
private val memberSocialMessages = mapOf(
|
||
"member.social.google_login_failed" to mapOf(
|
||
Lang.KO to "구글 로그인을 하지 못했습니다. 다시 시도해 주세요",
|
||
Lang.EN to "Google login failed. Please try again.",
|
||
Lang.JA to "Googleログインに失敗しました。もう一度お試しください。"
|
||
),
|
||
"member.social.kakao_login_failed" to mapOf(
|
||
Lang.KO to "카카오 로그인을 하지 못했습니다. 다시 시도해 주세요",
|
||
Lang.EN to "Kakao login failed. Please try again.",
|
||
Lang.JA to "カカオログインに失敗しました。もう一度お試しください。"
|
||
),
|
||
"member.social.email_consent_required" to mapOf(
|
||
Lang.KO to "이메일 제공에 동의하셔야 서비스 이용이 가능합니다.",
|
||
Lang.EN to "You must agree to provide your email to use the service.",
|
||
Lang.JA to "サービス利用にはメール提供への同意が必要です。"
|
||
)
|
||
)
|
||
|
||
private val eventMessages = mapOf(
|
||
"event.detail_or_link_required" to mapOf(
|
||
Lang.KO to "상세이미지 혹은 링크를 등록하세요",
|
||
Lang.EN to "Please register a detail image or link.",
|
||
Lang.JA to "詳細画像またはリンクを登録してください。"
|
||
),
|
||
"event.save_failed" to mapOf(
|
||
Lang.KO to "이벤트 등록을 하지 못했습니다.",
|
||
Lang.EN to "Failed to register the event.",
|
||
Lang.JA to "イベントの登録に失敗しました。"
|
||
)
|
||
)
|
||
|
||
private val faqMessages = mapOf(
|
||
"faq.question_required" to mapOf(
|
||
Lang.KO to "질문을 입력하세요.",
|
||
Lang.EN to "Please enter a question.",
|
||
Lang.JA to "質問を入力してください。"
|
||
),
|
||
"faq.answer_required" to mapOf(
|
||
Lang.KO to "답변을 입력하세요.",
|
||
Lang.EN to "Please enter an answer.",
|
||
Lang.JA to "回答を入力してください。"
|
||
),
|
||
"faq.category_required" to mapOf(
|
||
Lang.KO to "카테고리를 선택하세요.",
|
||
Lang.EN to "Please select a category.",
|
||
Lang.JA to "カテゴリーを選択してください。"
|
||
),
|
||
"faq.invalid_category" to mapOf(
|
||
Lang.KO to "잘못된 카테고리 입니다.",
|
||
Lang.EN to "Invalid category.",
|
||
Lang.JA to "不正なカテゴリーです。"
|
||
)
|
||
)
|
||
|
||
private val liveReservationMessages = mapOf(
|
||
"live.reservation.invalid_request_retry" to mapOf(
|
||
Lang.KO to "잘못된 요청입니다.\n다시 시도해 주세요.",
|
||
Lang.EN to "Invalid request.\nPlease try again.",
|
||
Lang.JA to "不正なリクエストです。\nもう一度やり直してください。"
|
||
),
|
||
"live.reservation.already_reserved" to mapOf(
|
||
Lang.KO to "이미 예약한 라이브 입니다.",
|
||
Lang.EN to "You have already reserved this live.",
|
||
Lang.JA to "すでに予約済みのライブです。"
|
||
),
|
||
"live.reservation.invalid_reservation" to mapOf(
|
||
Lang.KO to "잘못된 예약정보 입니다.",
|
||
Lang.EN to "Invalid reservation information.",
|
||
Lang.JA to "不正な予約情報です。"
|
||
),
|
||
"live.reservation.cancel_not_allowed_within_4_hours" to mapOf(
|
||
Lang.KO to "라이브 시작 4시간 이내에는 예약취소가 불가능 합니다.",
|
||
Lang.EN to "Reservations cannot be canceled within 4 hours of the live start.",
|
||
Lang.JA to "ライブ開始4時間以内は予約をキャンセルできません。"
|
||
),
|
||
"live.reservation.price_free" to mapOf(
|
||
Lang.KO to "무료",
|
||
Lang.EN to "Free",
|
||
Lang.JA to "無料"
|
||
),
|
||
"live.reservation.datetime_format" to mapOf(
|
||
Lang.KO to "yyyy년 M월 d일 (E), a hh:mm",
|
||
Lang.EN to "yyyy MMM d (EEE), h:mm a",
|
||
Lang.JA to "yyyy年 M月 d日 (E) a hh:mm"
|
||
)
|
||
)
|
||
|
||
private val liveRouletteMessages = mapOf(
|
||
"live.roulette.unavailable" to mapOf(
|
||
Lang.KO to "룰렛을 사용할 수 없습니다.",
|
||
Lang.EN to "Roulette is unavailable.",
|
||
Lang.JA to "ルーレットを使用できません。"
|
||
),
|
||
"live.roulette.live_not_found" to mapOf(
|
||
Lang.KO to "해당하는 라이브가 없습니다.",
|
||
Lang.EN to "Live session not found.",
|
||
Lang.JA to "該当するライブがありません。"
|
||
),
|
||
"live.roulette.live_info_not_found" to mapOf(
|
||
Lang.KO to "해당하는 라이브의 정보가 없습니다.",
|
||
Lang.EN to "Live session information not found.",
|
||
Lang.JA to "該当するライブの情報がありません。"
|
||
),
|
||
"live.roulette.creator_contract_only" to mapOf(
|
||
Lang.KO to "주식회사 소다라이브와 계약한\n크리에이터의 룰렛만 사용하실 수 있습니다.",
|
||
Lang.EN to "Only roulette from creators contracted with Sodalive Co., Ltd. can be used.",
|
||
Lang.JA to "株式会社ソダライブと契約した\nクリエイターのルーレットのみ利用できます。"
|
||
),
|
||
"live.roulette.refund_failed" to mapOf(
|
||
Lang.KO to "룰렛 돌리기에 실패한 캔이 환불되지 않았습니다\n고객센터로 문의해주세요.",
|
||
Lang.EN to "Cans from the failed roulette spin have not been refunded.\nPlease contact customer support.",
|
||
Lang.JA to "ルーレットの失敗分の缶が返金されていません。\nカスタマーサポートへお問い合わせください。"
|
||
),
|
||
"live.roulette.min_can" to mapOf(
|
||
Lang.KO to "룰렛 금액은 최소 5캔 입니다.",
|
||
Lang.EN to "Roulette cost is at least 5 cans.",
|
||
Lang.JA to "ルーレット金額は最低5缶です。"
|
||
),
|
||
"live.roulette.item_count_range" to mapOf(
|
||
Lang.KO to "룰렛 옵션은 최소 2개, 최대 10개까지 설정할 수 있습니다.",
|
||
Lang.EN to "Roulette options must be between 2 and 10 items.",
|
||
Lang.JA to "ルーレットのオプションは最小2個、最大10個まで設定できます。"
|
||
),
|
||
"live.roulette.probability_invalid" to mapOf(
|
||
Lang.KO to "확률이 100%가 아닙니다",
|
||
Lang.EN to "The probability is not 100%.",
|
||
Lang.JA to "確率が100%ではありません。"
|
||
),
|
||
"live.roulette.result_message" to mapOf(
|
||
Lang.KO to "[%s] 당첨!",
|
||
Lang.EN to "[%s] Won!",
|
||
Lang.JA to "[%s] 当選!"
|
||
),
|
||
"live.roulette.can_title" to mapOf(
|
||
Lang.KO to "%s 캔",
|
||
Lang.EN to "%s cans",
|
||
Lang.JA to "%s 缶"
|
||
),
|
||
"live.roulette.refund_method" to mapOf(
|
||
Lang.KO to "룰렛 환불",
|
||
Lang.EN to "Roulette refund",
|
||
Lang.JA to "ルーレット返金"
|
||
)
|
||
)
|
||
|
||
private val liveTagMessages = mapOf(
|
||
"live.tag.registered" to mapOf(
|
||
Lang.KO to "등록되었습니다.",
|
||
Lang.EN to "Successfully registered.",
|
||
Lang.JA to "登録されました。"
|
||
),
|
||
"live.tag.deleted" to mapOf(
|
||
Lang.KO to "삭제되었습니다.",
|
||
Lang.EN to "Deleted.",
|
||
Lang.JA to "削除されました。"
|
||
),
|
||
"live.tag.updated" to mapOf(
|
||
Lang.KO to "수정되었습니다.",
|
||
Lang.EN to "Updated.",
|
||
Lang.JA to "更新されました。"
|
||
),
|
||
"live.tag.duplicate" to mapOf(
|
||
Lang.KO to "이미 등록된 태그 입니다.",
|
||
Lang.EN to "Tag already registered.",
|
||
Lang.JA to "すでに登録されたタグです。"
|
||
)
|
||
)
|
||
|
||
private val liveRoomMessages = mapOf(
|
||
"live.room.max_reservations" to mapOf(
|
||
Lang.KO to "예약 라이브는 최대 3개까지 가능합니다.",
|
||
Lang.EN to "You can reserve up to 3 live sessions.",
|
||
Lang.JA to "予約ライブは最大3件まで可能です。"
|
||
),
|
||
"live.room.cover_image_required" to mapOf(
|
||
Lang.KO to "커버이미지를 선택해 주세요.",
|
||
Lang.EN to "Please select a cover image.",
|
||
Lang.JA to "カバー画像を選択してください。"
|
||
),
|
||
"live.room.start_time_minimum" to mapOf(
|
||
Lang.KO to "현재시각 기준, 30분 이후부터 설정가능합니다.",
|
||
Lang.EN to "You can set it from 30 minutes after the current time.",
|
||
Lang.JA to "現在時刻から30分後以降に設定できます。"
|
||
),
|
||
"live.room.password_required" to mapOf(
|
||
Lang.KO to "방 입장 비밀번호 6자리를 입력해 주세요.",
|
||
Lang.EN to "Please enter a 6-digit room password.",
|
||
Lang.JA to "入室パスワード6桁を入力してください。"
|
||
),
|
||
"live.room.paid_min_can" to mapOf(
|
||
Lang.KO to "유료라이브는 10캔부터 설정 가능 합니다.",
|
||
Lang.EN to "Paid live can be set from 10 cans.",
|
||
Lang.JA to "有料ライブは10缶から設定できます。"
|
||
),
|
||
"live.room.already_ended" to mapOf(
|
||
Lang.KO to "이미 종료된 방입니다.",
|
||
Lang.EN to "This room has already ended.",
|
||
Lang.JA to "すでに終了したルームです。"
|
||
),
|
||
"live.room.adult_verification_required" to mapOf(
|
||
Lang.KO to "본인인증이 필요한 서비스 입니다.",
|
||
Lang.EN to "This service requires identity verification.",
|
||
Lang.JA to "本人認証が必要なサービスです。"
|
||
),
|
||
"live.room.not_found" to mapOf(
|
||
Lang.KO to "해당하는 라이브가 없습니다.",
|
||
Lang.EN to "Live session not found.",
|
||
Lang.JA to "該当するライブがありません。"
|
||
),
|
||
"live.room.start_available_after" to mapOf(
|
||
Lang.KO to "%s 이후에 시작할 수 있습니다.",
|
||
Lang.EN to "You can start after %s.",
|
||
Lang.JA to "%s以降に開始できます。"
|
||
),
|
||
"live.room.cancel_reason_required" to mapOf(
|
||
Lang.KO to "취소사유를 입력해 주세요.",
|
||
Lang.EN to "Please enter a cancellation reason.",
|
||
Lang.JA to "キャンセル理由を入力してください。"
|
||
),
|
||
"live.room.password_mismatch" to mapOf(
|
||
Lang.KO to "비밀번호가 일치하지 않습니다.\n다시 확인 후 입력해주세요.",
|
||
Lang.EN to "Password does not match.\nPlease check and try again.",
|
||
Lang.JA to "パスワードが一致しません。\n確認して入力してください。"
|
||
),
|
||
"live.room.enter_blocked_by_host" to mapOf(
|
||
Lang.KO to "%s님의 요청으로 라이브에 입장할 수 없습니다.",
|
||
Lang.EN to "You cannot enter the live at %s's request.",
|
||
Lang.JA to "%sの要請によりライブに入場できません。"
|
||
),
|
||
"live.room.participation_blocked_by_host" to mapOf(
|
||
Lang.KO to "%s님의 요청으로 라이브에 참여할 수 없습니다.",
|
||
Lang.EN to "You cannot participate in the live at %s's request.",
|
||
Lang.JA to "%sの要請によりライブに参加できません。"
|
||
),
|
||
"live.room.full" to mapOf(
|
||
Lang.KO to "방이 가득찼습니다.",
|
||
Lang.EN to "The room is full.",
|
||
Lang.JA to "ルームが満員です。"
|
||
),
|
||
"live.room.insufficient_can" to mapOf(
|
||
Lang.KO to "%d캔이 부족합니다. 충전 후 이용해 주세요.",
|
||
Lang.EN to "You need %d more cans. Please top up and try again.",
|
||
Lang.JA to "%d缶が不足しています。チャージしてご利用ください。"
|
||
),
|
||
"live.room.recent_not_found" to mapOf(
|
||
Lang.KO to "최근 데이터가 없습니다.",
|
||
Lang.EN to "No recent data found.",
|
||
Lang.JA to "最近のデータがありません。"
|
||
),
|
||
"live.room.no_changes" to mapOf(
|
||
Lang.KO to "변경사항이 없습니다.",
|
||
Lang.EN to "There are no changes.",
|
||
Lang.JA to "変更事項がありません。"
|
||
),
|
||
"live.room.info_not_found" to mapOf(
|
||
Lang.KO to "해당하는 라이브의 정보가 없습니다.",
|
||
Lang.EN to "Live session information not found.",
|
||
Lang.JA to "該当するライブの情報がありません。"
|
||
),
|
||
"live.room.speaker_limit_exceeded" to mapOf(
|
||
Lang.KO to "스피커 정원이 초과하였습니다.",
|
||
Lang.EN to "Speaker capacity exceeded.",
|
||
Lang.JA to "スピーカーの定員を超えました。"
|
||
),
|
||
"live.room.user_not_found" to mapOf(
|
||
Lang.KO to "해당하는 유저가 없습니다.",
|
||
Lang.EN to "User not found.",
|
||
Lang.JA to "該当するユーザーがいません。"
|
||
),
|
||
"live.room.already_manager" to mapOf(
|
||
Lang.KO to "이미 매니저 입니다.",
|
||
Lang.EN to "Already a manager.",
|
||
Lang.JA to "すでにマネージャーです。"
|
||
),
|
||
"live.room.creator_contract_only_donation" to mapOf(
|
||
Lang.KO to "주식회사 소다라이브와 계약한\n크리에이터에게만 후원을 하실 수 있습니다.",
|
||
Lang.EN to "You can only donate to creators contracted with Sodalive Co., Ltd.",
|
||
Lang.JA to "株式会社ソダライブと契約した\nクリエイターにのみ支援できます。"
|
||
),
|
||
"live.room.donation_refund_failed" to mapOf(
|
||
Lang.KO to "후원에 실패한 캔이 환불되지 않았습니다\n고객센터로 문의해주세요.",
|
||
Lang.EN to "Cans from the failed donation have not been refunded.\nPlease contact customer support.",
|
||
Lang.JA to "支援失敗分の缶が返金されていません。\nカスタマーサポートへお問い合わせください。"
|
||
),
|
||
"live.room.datetime_format" to mapOf(
|
||
Lang.KO to "yyyy년 MM월 dd일 (E) a hh시 mm분",
|
||
Lang.EN to "yyyy MMM dd (EEE) h:mm a",
|
||
Lang.JA to "yyyy年 MM月 dd日 (E) a hh時 mm分"
|
||
),
|
||
"live.room.datetime_format_detail" to mapOf(
|
||
Lang.KO to "yyyy.MM.dd E hh:mm a",
|
||
Lang.EN to "yyyy.MM.dd E hh:mm a",
|
||
Lang.JA to "yyyy.MM.dd E hh:mm a"
|
||
),
|
||
"live.room.fcm.message.started" to mapOf(
|
||
Lang.KO to "라이브를 시작했습니다. - %s",
|
||
Lang.EN to "Live started. - %s",
|
||
Lang.JA to "ライブを開始しました。 - %s"
|
||
),
|
||
"live.room.fcm.message.reserved" to mapOf(
|
||
Lang.KO to "라이브를 예약했습니다. - %s",
|
||
Lang.EN to "Live reserved. - %s",
|
||
Lang.JA to "ライブを予約しました。 - %s"
|
||
),
|
||
"live.room.fcm.message.started_now" to mapOf(
|
||
Lang.KO to "라이브를 시작했습니다 - %s",
|
||
Lang.EN to "Live started - %s",
|
||
Lang.JA to "ライブを開始しました - %s"
|
||
),
|
||
"live.room.fcm.message.canceled" to mapOf(
|
||
Lang.KO to "라이브 취소 : %s",
|
||
Lang.EN to "Live canceled: %s",
|
||
Lang.JA to "ライブ取消: %s"
|
||
),
|
||
"live.room.can_title" to mapOf(
|
||
Lang.KO to "%d 캔",
|
||
Lang.EN to "%d cans",
|
||
Lang.JA to "%d 缶"
|
||
),
|
||
"live.room.refund_method" to mapOf(
|
||
Lang.KO to "환불",
|
||
Lang.EN to "Refund",
|
||
Lang.JA to "返金"
|
||
)
|
||
)
|
||
|
||
private val liveRoomMenuMessages = mapOf(
|
||
"live.room.menu.max_count" to mapOf(
|
||
Lang.KO to "메뉴판의 최대개수는 3개입니다.",
|
||
Lang.EN to "Menu presets are limited to 3.",
|
||
Lang.JA to "メニューボードは最大3個までです。"
|
||
),
|
||
"live.room.menu.blank_not_allowed" to mapOf(
|
||
Lang.KO to "메뉴판은 빈칸일 수 없습니다.",
|
||
Lang.EN to "Menu cannot be blank.",
|
||
Lang.JA to "メニューボードは空欄にできません。"
|
||
)
|
||
)
|
||
|
||
private val memberProviderMessages = mapOf(
|
||
"member.provider.email" to mapOf(
|
||
Lang.KO to "이메일",
|
||
Lang.EN to "Email",
|
||
Lang.JA to "メール"
|
||
),
|
||
"member.provider.kakao" to mapOf(
|
||
Lang.KO to "카카오",
|
||
Lang.EN to "Kakao",
|
||
Lang.JA to "カカオ"
|
||
),
|
||
"member.provider.google" to mapOf(
|
||
Lang.KO to "구글",
|
||
Lang.EN to "Google",
|
||
Lang.JA to "Google"
|
||
),
|
||
"member.provider.apple" to mapOf(
|
||
Lang.KO to "애플",
|
||
Lang.EN to "Apple",
|
||
Lang.JA to "Apple"
|
||
)
|
||
)
|
||
|
||
private val memberGenderMessages = mapOf(
|
||
"member.gender.male" to mapOf(
|
||
Lang.KO to "남",
|
||
Lang.EN to "Male",
|
||
Lang.JA to "男性"
|
||
),
|
||
"member.gender.female" to mapOf(
|
||
Lang.KO to "여",
|
||
Lang.EN to "Female",
|
||
Lang.JA to "女性"
|
||
),
|
||
"member.gender.unknown" to mapOf(
|
||
Lang.KO to "미",
|
||
Lang.EN to "Unknown",
|
||
Lang.JA to "不明"
|
||
)
|
||
)
|
||
|
||
private val explorerSectionMessages = mapOf(
|
||
"explorer.section.creator_rank.title" to mapOf(
|
||
Lang.KO to "인기 크리에이터",
|
||
Lang.EN to "Top creators",
|
||
Lang.JA to "人気クリエイター"
|
||
),
|
||
"explorer.section.creator_rank.colored_title" to mapOf(
|
||
Lang.KO to "인기",
|
||
Lang.EN to "Top",
|
||
Lang.JA to "人気"
|
||
),
|
||
"explorer.section.new_creators.title" to mapOf(
|
||
Lang.KO to "새로 시작",
|
||
Lang.EN to "New creators",
|
||
Lang.JA to "新規クリエイター"
|
||
),
|
||
"explorer.section.new_creators.colored_title" to mapOf(
|
||
Lang.KO to "새로",
|
||
Lang.EN to "New",
|
||
Lang.JA to "新規"
|
||
),
|
||
"explorer.section.male_creators.title" to mapOf(
|
||
Lang.KO to "남자 크리에이터",
|
||
Lang.EN to "Male creators",
|
||
Lang.JA to "男性クリエイター"
|
||
),
|
||
"explorer.section.male_creators.colored_title" to mapOf(
|
||
Lang.KO to "남자",
|
||
Lang.EN to "Male",
|
||
Lang.JA to "男性"
|
||
),
|
||
"explorer.section.female_creators.title" to mapOf(
|
||
Lang.KO to "여자 크리에이터",
|
||
Lang.EN to "Female creators",
|
||
Lang.JA to "女性クリエイター"
|
||
),
|
||
"explorer.section.female_creators.colored_title" to mapOf(
|
||
Lang.KO to "여자",
|
||
Lang.EN to "Female",
|
||
Lang.JA to "女性"
|
||
)
|
||
)
|
||
|
||
private val explorerDateMessages = mapOf(
|
||
"explorer.date.creator_rank.start_format" to mapOf(
|
||
Lang.KO to "yyyy년 MM월 dd일",
|
||
Lang.EN to "MMM dd, yyyy",
|
||
Lang.JA to "yyyy年MM月dd日"
|
||
),
|
||
"explorer.date.creator_rank.end_format" to mapOf(
|
||
Lang.KO to "MM월 dd일",
|
||
Lang.EN to "MMM dd",
|
||
Lang.JA to "MM月dd日"
|
||
),
|
||
"explorer.date.live_room.datetime_format" to mapOf(
|
||
Lang.KO to "yyyy년 MM월 dd일 (E) a hh시 mm분",
|
||
Lang.EN to "EEE, MMM dd, yyyy h:mm a",
|
||
Lang.JA to "yyyy年MM月dd日(E) a hh時 mm分"
|
||
),
|
||
"explorer.date.cheers.format" to mapOf(
|
||
Lang.KO to "yyyy.MM.dd E hh:mm a",
|
||
Lang.EN to "MMM dd, yyyy E hh:mm a",
|
||
Lang.JA to "yyyy.MM.dd E hh:mm a"
|
||
)
|
||
)
|
||
|
||
private val explorerResponseMessages = mapOf(
|
||
"explorer.cheers.created" to mapOf(
|
||
Lang.KO to "등록되었습니다.",
|
||
Lang.EN to "Registered.",
|
||
Lang.JA to "登録されました。"
|
||
),
|
||
"explorer.cheers.updated" to mapOf(
|
||
Lang.KO to "수정되었습니다.",
|
||
Lang.EN to "Updated.",
|
||
Lang.JA to "更新されました。"
|
||
),
|
||
"explorer.notice.saved" to mapOf(
|
||
Lang.KO to "공지사항이 저장되었습니다.",
|
||
Lang.EN to "Notice has been saved.",
|
||
Lang.JA to "お知らせが保存されました。"
|
||
),
|
||
"explorer.notice.fcm.message" to mapOf(
|
||
Lang.KO to "새 글이 등록되었습니다.",
|
||
Lang.EN to "A new post has been added.",
|
||
Lang.JA to "新しい投稿が登録されました。"
|
||
)
|
||
)
|
||
|
||
private val explorerValidationMessages = mapOf(
|
||
"explorer.search.channel.min_length" to mapOf(
|
||
Lang.KO to "두 글자 이상 입력 하셔야 합니다.",
|
||
Lang.EN to "Please enter at least 2 characters.",
|
||
Lang.JA to "2文字以上入力してください。"
|
||
)
|
||
)
|
||
|
||
private val explorerAccessMessages = mapOf(
|
||
"explorer.creator.blocked_access" to mapOf(
|
||
Lang.KO to "%s님의 요청으로 채널 접근이 제한됩니다.",
|
||
Lang.EN to "Channel access is restricted at %s's request.",
|
||
Lang.JA to "%sさんの要請によりチャンネルへのアクセスが制限されています。"
|
||
),
|
||
"explorer.creator.blocked_cheers" to mapOf(
|
||
Lang.KO to "%s님의 요청으로 팬토크 작성이 제한됩니다.",
|
||
Lang.EN to "Fan talk posting is restricted at %s's request.",
|
||
Lang.JA to "%sさんの要請によりファントークの投稿が制限されています。"
|
||
)
|
||
)
|
||
|
||
private val creatorAdminMemberMessages = mapOf(
|
||
"creator.admin.member.login_success" to mapOf(
|
||
Lang.KO to "로그인 되었습니다.",
|
||
Lang.EN to "Logged in.",
|
||
Lang.JA to "ログインしました。"
|
||
),
|
||
"creator.admin.member.inactive_account" to mapOf(
|
||
Lang.KO to "탈퇴한 계정입니다.\n고객센터로 문의해 주시기 바랍니다.",
|
||
Lang.EN to "This account has been deactivated.\nPlease contact customer support.",
|
||
Lang.JA to "退会したアカウントです。\nカスタマーサポートにお問い合わせください。"
|
||
)
|
||
)
|
||
|
||
private val creatorAdminSignatureMessages = mapOf(
|
||
"creator.admin.signature.created" to mapOf(
|
||
Lang.KO to "등록되었습니다.",
|
||
Lang.EN to "Successfully registered.",
|
||
Lang.JA to "登録されました。"
|
||
),
|
||
"creator.admin.signature.updated" to mapOf(
|
||
Lang.KO to "수정되었습니다.",
|
||
Lang.EN to "Updated.",
|
||
Lang.JA to "更新されました。"
|
||
),
|
||
"creator.admin.signature.deleted" to mapOf(
|
||
Lang.KO to "삭제되었습니다.",
|
||
Lang.EN to "Deleted.",
|
||
Lang.JA to "削除されました。"
|
||
),
|
||
"creator.admin.signature.no_changes" to mapOf(
|
||
Lang.KO to "변경사항이 없습니다.",
|
||
Lang.EN to "No changes to update.",
|
||
Lang.JA to "変更事項がありません。"
|
||
),
|
||
"creator.admin.signature.min_can" to mapOf(
|
||
Lang.KO to "1캔 이상 설정할 수 있습니다.",
|
||
Lang.EN to "You can set at least 1 can.",
|
||
Lang.JA to "1缶以上設定できます。"
|
||
),
|
||
"creator.admin.signature.time_range" to mapOf(
|
||
Lang.KO to "시간은 3초 이상 20초 이하로 설정할 수 있습니다.",
|
||
Lang.EN to "Time must be between 3 and 20 seconds.",
|
||
Lang.JA to "時間は3秒以上20秒以下に設定できます。"
|
||
),
|
||
"creator.admin.signature.invalid_access" to mapOf(
|
||
Lang.KO to "잘못된 접근입니다.",
|
||
Lang.EN to "Invalid access.",
|
||
Lang.JA to "不正なアクセスです。"
|
||
),
|
||
"creator.admin.signature.invalid_request" to mapOf(
|
||
Lang.KO to "잘못된 요청입니다.",
|
||
Lang.EN to "Invalid request.",
|
||
Lang.JA to "不正なリクエストです。"
|
||
)
|
||
)
|
||
|
||
private val creatorAdminContentMessages = mapOf(
|
||
"creator.admin.content.search_word_min_length" to mapOf(
|
||
Lang.KO to "2글자 이상 입력하세요.",
|
||
Lang.EN to "Please enter at least 2 characters.",
|
||
Lang.JA to "2文字以上入力してください。"
|
||
),
|
||
"creator.admin.content.invalid_content" to mapOf(
|
||
Lang.KO to "잘못된 콘텐츠 입니다.",
|
||
Lang.EN to "Invalid content.",
|
||
Lang.JA to "不正なコンテンツです。"
|
||
),
|
||
"creator.admin.content.min_price" to mapOf(
|
||
Lang.KO to "콘텐츠의 최소금액은 5캔 입니다.",
|
||
Lang.EN to "Minimum price for content is 5 cans.",
|
||
Lang.JA to "コンテンツの最低価格は5缶です。"
|
||
)
|
||
)
|
||
|
||
private val creatorAdminSeriesRequestMessages = mapOf(
|
||
"creator.admin.series.title_required" to mapOf(
|
||
Lang.KO to "시리즈 제목을 입력하세요",
|
||
Lang.EN to "Please enter a series title.",
|
||
Lang.JA to "シリーズのタイトルを入力してください。"
|
||
),
|
||
"creator.admin.series.introduction_required" to mapOf(
|
||
Lang.KO to "시리즈 소개를 입력하세요",
|
||
Lang.EN to "Please enter a series introduction.",
|
||
Lang.JA to "シリーズ紹介を入力してください。"
|
||
),
|
||
"creator.admin.series.keyword_required" to mapOf(
|
||
Lang.KO to "시리즈를 설명할 수 있는 키워드를 입력하세요",
|
||
Lang.EN to "Please enter keywords that describe the series.",
|
||
Lang.JA to "シリーズを説明できるキーワードを入力してください。"
|
||
),
|
||
"creator.admin.series.genre_required" to mapOf(
|
||
Lang.KO to "올바른 장르를 선택하세요",
|
||
Lang.EN to "Please select a valid genre.",
|
||
Lang.JA to "正しいジャンルを選択してください。"
|
||
),
|
||
"creator.admin.series.published_days_required" to mapOf(
|
||
Lang.KO to "시리즈 연재요일을 선택하세요",
|
||
Lang.EN to "Please select publishing days.",
|
||
Lang.JA to "シリーズの連載曜日を選択してください。"
|
||
),
|
||
"creator.admin.series.published_days_random_exclusive" to mapOf(
|
||
Lang.KO to "랜덤과 연재요일 동시에 선택할 수 없습니다.",
|
||
Lang.EN to "You cannot select random and specific days at the same time.",
|
||
Lang.JA to "ランダムと連載曜日を同時に選択することはできません。"
|
||
),
|
||
"creator.admin.series.cover_image_required" to mapOf(
|
||
Lang.KO to "커버이미지를 선택해 주세요.",
|
||
Lang.EN to "Please select a cover image.",
|
||
Lang.JA to "カバー画像を選択してください。"
|
||
),
|
||
"creator.admin.series.no_changes" to mapOf(
|
||
Lang.KO to "변경사항이 없습니다.",
|
||
Lang.EN to "No changes to update.",
|
||
Lang.JA to "変更事項がありません。"
|
||
),
|
||
"creator.admin.series.invalid_access" to mapOf(
|
||
Lang.KO to "잘못된 접근입니다.",
|
||
Lang.EN to "Invalid access.",
|
||
Lang.JA to "不正なアクセスです。"
|
||
),
|
||
"creator.admin.series.no_content_added" to mapOf(
|
||
Lang.KO to "추가된 콘텐츠가 없습니다.",
|
||
Lang.EN to "No content was added.",
|
||
Lang.JA to "追加されたコンテンツがありません。"
|
||
)
|
||
)
|
||
|
||
private val creatorAdminSeriesMessages = mapOf(
|
||
"creator.admin.series.created" to mapOf(
|
||
Lang.KO to "시리즈가 생성되었습니다.",
|
||
Lang.EN to "Series created.",
|
||
Lang.JA to "シリーズが作成されました。"
|
||
),
|
||
"creator.admin.series.updated" to mapOf(
|
||
Lang.KO to "시리즈가 수정되었습니다.",
|
||
Lang.EN to "Series updated.",
|
||
Lang.JA to "シリーズが更新されました。"
|
||
),
|
||
"creator.admin.series.content_added" to mapOf(
|
||
Lang.KO to "콘텐츠가 추가되었습니다.",
|
||
Lang.EN to "Content added.",
|
||
Lang.JA to "コンテンツが追加されました。"
|
||
),
|
||
"creator.admin.series.content_removed" to mapOf(
|
||
Lang.KO to "콘텐츠를 삭제하였습니다.",
|
||
Lang.EN to "Content removed.",
|
||
Lang.JA to "コンテンツが削除されました。"
|
||
),
|
||
"creator.admin.series.orders_updated" to mapOf(
|
||
Lang.KO to "수정되었습니다.",
|
||
Lang.EN to "Updated.",
|
||
Lang.JA to "更新されました。"
|
||
)
|
||
)
|
||
|
||
private val creatorCommunityMessages = mapOf(
|
||
"creator.community.paid_post_image_required" to mapOf(
|
||
Lang.KO to "유료 게시글 등록을 위해서는 이미지가 필요합니다.",
|
||
Lang.EN to "An image is required to post paid content.",
|
||
Lang.JA to "有料投稿を登録するには画像が必要です。"
|
||
),
|
||
"creator.community.audio_post_image_required" to mapOf(
|
||
Lang.KO to "오디오 등록을 위해서는 이미지가 필요합니다.",
|
||
Lang.EN to "An image is required to upload audio.",
|
||
Lang.JA to "オーディオを登録するには画像が必要です。"
|
||
),
|
||
"creator.community.fcm.new_post" to mapOf(
|
||
Lang.KO to "새 글이 등록되었습니다.",
|
||
Lang.EN to "A new post has been added.",
|
||
Lang.JA to "新しい投稿が登録されました。"
|
||
),
|
||
"creator.community.invalid_request_retry" to mapOf(
|
||
Lang.KO to "잘못된 요청입니다.\n다시 시도해 주세요.",
|
||
Lang.EN to "Invalid request.\nPlease try again.",
|
||
Lang.JA to "不正なリクエストです。\nもう一度お試しください。"
|
||
),
|
||
"creator.community.invalid_post_retry" to mapOf(
|
||
Lang.KO to "잘못된 게시물 입니다.\n다시 시도해 주세요.",
|
||
Lang.EN to "Invalid post.\nPlease try again.",
|
||
Lang.JA to "不正な投稿です。\nもう一度お試しください。"
|
||
),
|
||
"creator.community.secret_comment_purchase_required" to mapOf(
|
||
Lang.KO to "게시글을 구매 후 비밀댓글을 등록할 수 있습니다.",
|
||
Lang.EN to "You can post a secret comment after purchasing the post.",
|
||
Lang.JA to "投稿を購入した後に秘密コメントを登録できます。"
|
||
),
|
||
"creator.community.invalid_access_retry" to mapOf(
|
||
Lang.KO to "잘못된 접근 입니다.\n확인 후 다시 시도해 주세요.",
|
||
Lang.EN to "Invalid access.\nPlease check and try again.",
|
||
Lang.JA to "不正なアクセスです。\n確認して再度お試しください。"
|
||
),
|
||
"creator.community.blocked_access" to mapOf(
|
||
Lang.KO to "%s님의 요청으로 접근이 제한됩니다.",
|
||
Lang.EN to "Access is restricted at %s's request.",
|
||
Lang.JA to "%sさんの要請によりアクセスが制限されています。"
|
||
)
|
||
)
|
||
|
||
fun getMessage(key: String, lang: Lang): String? {
|
||
val messageGroups = listOf(
|
||
commonMessages,
|
||
alarmMessages,
|
||
auditionMessages,
|
||
auditionRequestMessages,
|
||
auditionNotificationMessages,
|
||
auditionRoleMessages,
|
||
auditionClientMessages,
|
||
auditionApplicantMessages,
|
||
auditionVoteMessages,
|
||
settlementRatioMessages,
|
||
adminCanMessages,
|
||
canChargeMessages,
|
||
canChargeEventMessages,
|
||
canCouponMessages,
|
||
canPaymentMessages,
|
||
adminChatBannerMessages,
|
||
adminChatCalculateMessages,
|
||
adminChatCharacterMessages,
|
||
adminChatCurationMessages,
|
||
adminChatCharacterImageMessages,
|
||
adminChatOriginalWorkMessages,
|
||
adminContentMessages,
|
||
adminContentBannerMessages,
|
||
adminHashTagCurationMessages,
|
||
adminContentSeriesMessages,
|
||
adminContentSeriesBannerMessages,
|
||
adminContentSeriesGenreMessages,
|
||
adminContentThemeMessages,
|
||
adminEventBannerMessages,
|
||
adminChargeEventMessages,
|
||
adminExplorerMessages,
|
||
adminLiveMessages,
|
||
adminSignatureCanMessages,
|
||
adminAdMediaPartnerMessages,
|
||
adminMemberMessages,
|
||
adminMemberTagMessages,
|
||
adminPointPolicyMessages,
|
||
adminMemberStatisticsMessages,
|
||
messageMessages,
|
||
noticeMessages,
|
||
reportMessages,
|
||
imageValidationMessages,
|
||
memberAuthMessages,
|
||
memberMessages,
|
||
memberValidationMessages,
|
||
memberSocialMessages,
|
||
eventMessages,
|
||
faqMessages,
|
||
liveRouletteMessages,
|
||
liveReservationMessages,
|
||
liveTagMessages,
|
||
liveRoomMessages,
|
||
liveRoomMenuMessages,
|
||
memberProviderMessages,
|
||
memberGenderMessages,
|
||
explorerSectionMessages,
|
||
explorerDateMessages,
|
||
explorerResponseMessages,
|
||
explorerValidationMessages,
|
||
explorerAccessMessages,
|
||
creatorAdminMemberMessages,
|
||
creatorAdminSignatureMessages,
|
||
creatorAdminContentMessages,
|
||
creatorAdminSeriesRequestMessages,
|
||
creatorAdminSeriesMessages,
|
||
creatorCommunityMessages
|
||
)
|
||
for (messages in messageGroups) {
|
||
val translations = messages[key] ?: continue
|
||
return translations[lang] ?: translations[Lang.KO]
|
||
}
|
||
return null
|
||
}
|
||
}
|