0
Fork 0
mirror of https://github.com/logto-io/logto.git synced 2025-03-10 22:22:45 -05:00

fix(phrases): update translation for Korean (#3064)

This commit is contained in:
Alanimdeo 2023-02-08 13:46:31 +09:00 committed by GitHub
parent 785ee506ad
commit af81c81a53
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
25 changed files with 301 additions and 304 deletions

View file

@ -24,7 +24,7 @@ const translation = {
cancel: '취소',
save_password: '저장',
bind: '{{address}}로 연동',
bind_and_continue: 'Link and continue', // UNTRANSLATED
bind_and_continue: '연동하고 계속하기',
back: '뒤로 가기',
nav_back: '뒤로',
agree: '동의',
@ -34,11 +34,11 @@ const translation = {
switch_to: '{{method}}로 전환',
sign_in_via_passcode: '인증번호로 로그인',
sign_in_via_password: '비밀번호로 로그인',
change: 'Change {{change}}', // UNTRANSLATED,
link_another_email: 'Link another email', // UNTRANSLATED
link_another_phone: 'Link another phone', // UNTRANSLATED
link_another_email_or_phone: 'Link another email or phone', // UNTRANSLATED
show_password: 'Show password', // UNTRANSLATED
change: 'Change {{change}}',
link_another_email: '다른 이메일 연동',
link_another_phone: '다른 전화번호 연동',
link_another_email_or_phone: '다른 이메일 또는 전화번호 연동',
show_password: '비밀번호 보기',
},
description: {
email: '이메일',
@ -51,23 +51,22 @@ const translation = {
create_account: '계정 생성',
or: '또는',
enter_passcode: '{{address}} {{target}} 으로 비밀번호가 전송되었어요.',
passcode_sent: '비밀번호가 재전송 되었습니다.',
passcode_sent: '비밀번호가 재전송되었어요.',
resend_after_seconds: '<span>{{seconds}}</span> 초 후에 재전송',
resend_passcode: '비밀번호 재전송',
create_account_id_exists: '{{type}} {{value}} 계정이 이미 존재해요. 로그인하시겠어요?',
link_account_id_exists:
'The account with {{type}} {{value}} already exists, would you like to link?', // UNTRANSLATED
link_account_id_exists: '{{type}} {{value}}와/과 연동된 계정이 이미 존재해요. 연동할까요?',
sign_in_id_does_not_exist: '{type}} {{value}} 계정이 존재하지 않아요. 새로 만드시겠어요?',
sign_in_id_does_not_exist_alert: '{{type}} {{value}} 계정이 존재하지 않아요.',
create_account_id_exists_alert: '{{type}} {{value}} 이미 존재해요.',
social_identity_exist:
'The {{type}} {{value}} is linked to another account. Please try another {{type}}', // UNTRANSLATED
bind_account_title: 'Link or create account', // UNTRANSLATED
social_create_account: '계정이 없으신가요? 새로운 계정을 만들고 연동해보세요.',
social_link_email: 'You can link another email', // UNTRANSLATED,
social_link_phone: 'You can link another phone', // UNTRANSLATED,
social_link_email_or_phone: 'You can link another email or phone', // UNTRANSLATED,
social_bind_with_existing: '관련된 계정을 찾았어요. 해당 계정과 연동할 수 있습니다.',
'{{type}} {{value}}이/가 다른 계정과 연동되어 있어요. 다른 {{type}}을/를 시도해 보세요.',
bind_account_title: '계정 만들거나 연동하기',
social_create_account: '계정이 없으신가요? 새로운 계정을 만들고 연동해 보세요.',
social_link_email: '다른 이메일을 연동할 수 있어요',
social_link_phone: '다른 휴대전화를 연동할 수 있어요',
social_link_email_or_phone: '다른 이메일이나 휴대전화를 연동할 수 있어요',
social_bind_with_existing: '관련된 계정을 찾았어요. 해당 계정과 연동할 수 있어요.',
reset_password: '암호를 재설정',
reset_password_description_email:
'계정과 연결된 이메일 주소를 입력하면 비밀번호 재설정을 위한 인증 코드를 이메일로 보내드립니다.',
@ -86,58 +85,58 @@ const translation = {
link_email: '이메일 연동',
link_phone: '휴대전화번호 연동',
link_email_or_phone: '이메일 또는 휴대전화번호 연동',
link_email_description: '더 나은 보안을 위해 이메일을 연동해주세요.',
link_phone_description: '더 나은 보안을 위해 휴대전화번호를 연동해주세요.',
link_email_or_phone_description: '더 나은 보안을 위해 이메일 또는 휴대전화번호를 연동해주세요.',
continue_with_more_information: '더 나은 보안을 위해 아래 자세한 내용을 따라주세요.',
link_email_description: '더 나은 보안을 위해 이메일을 연동해 주세요.',
link_phone_description: '더 나은 보안을 위해 휴대전화번호를 연동해 주세요.',
link_email_or_phone_description:
'더 나은 보안을 위해 이메일 또는 휴대전화번호를 연동해 주세요.',
continue_with_more_information: '더 나은 보안을 위해 아래 자세한 내용을 따라 주세요.',
},
profile: {
title: 'Account Settings', // UNTRANSLATED
description:
'Change your account settings and manage your personal information here to ensure your account security.', // UNTRANSLATED
title: '계정 설정',
description: '계정 보안을 지키기 위해 여기서 계정 설정을 변경하고 개인 정보를 관리하세요.',
settings: {
title: 'PROFILE SETTINGS', // UNTRANSLATED
profile_information: 'Profile Information', // UNTRANSLATED
avatar: 'Avatar', // UNTRANSLATED
name: 'Name', // UNTRANSLATED
username: 'Username', // UNTRANSLATED
title: '프로필 설정',
profile_information: '프로필 정보',
avatar: '아바타',
name: '이름',
username: '사용자명',
},
password: {
title: 'PASSWORD', // UNTRANSLATED
reset_password: 'Reset Password', // UNTRANSLATED
reset_password_sc: 'Reset password', // UNTRANSLATED
title: '비밀번호',
reset_password: '비밀번호 초기화',
reset_password_sc: '비밀번호 초기화',
},
link_account: {
title: 'LINK ACCOUNT', // UNTRANSLATED
email_phone_sign_in: 'Email / Phone Sign-In', // UNTRANSLATED
email: 'Email', // UNTRANSLATED
phone: 'Phone', // UNTRANSLATED
phone_sc: 'Phone number', // UNTRANSLATED
social: 'Social Sign-In', // UNTRANSLATED
social_sc: 'Social accounts', // UNTRANSLATED
title: '계정 연동',
email_phone_sign_in: '이메일/휴대전화 로그인',
email: '이메일',
phone: '휴대전화',
phone_sc: '휴대전화번호',
social: '소셜 로그인',
social_sc: '소셜 계정',
},
not_set: 'Not set', // UNTRANSLATED
edit: 'Edit', // UNTRANSLATED
change: 'Change', // UNTRANSLATED
link: 'Link', // UNTRANSLATED
unlink: 'Unlink', // UNTRANSLATED
not_set: '설정 안 됨',
edit: '수정',
change: '변경',
link: '연동',
unlink: '연동 해제',
},
error: {
username_password_mismatch: '사용자 이름 또는 비밀번호가 일치하지 않아요.',
username_required: '사용자 이름은 필수예요.',
password_required: '비밀번호는 필수예요.',
username_exists: '사용자 이름이 이미 존재해요.',
username_should_not_start_with_number: '사용자 이름은 숫자로 시작하면 안요.',
username_valid_charset: '사용자 이름은 문자, 숫자, _(밑줄 문자) 로만 이루어져야해요.',
username_should_not_start_with_number: '사용자 이름은 숫자로 시작하면 안요.',
username_valid_charset: '사용자 이름은 문자, 숫자, _(밑줄 문자) 로만 이루어져야 해요.',
invalid_email: '이메일이 유효하지 않아요.',
invalid_phone: '휴대전화번호가 유효하지 않아요.',
password_min_length: '비밀번호는 최소 {{min}} 자리로 이루어져야해요.',
password_min_length: '비밀번호는 최소 {{min}} 자리로 이루어져야 해요.',
passwords_do_not_match: '비밀번호가 일치하지 않아요.',
invalid_passcode: '비밀번호가 유효하지 않아요.',
invalid_connector_auth: '인증이 유효하지 않아요.',
invalid_connector_request: '연동 정보가 유효하지 않아요.',
unknown: '알 수 없는 오류가 발생했어요. 잠시 후에 시도해주세요.',
invalid_session: '세션을 찾을 수 없어요. 다시 로그인해주세요.',
unknown: '알 수 없는 오류가 발생했어요. 잠시 후에 시도해 주세요.',
invalid_session: '세션을 찾을 수 없어요. 다시 로그인 주세요.',
},
};

View file

@ -6,12 +6,12 @@ const errors = {
auth: {
authorization_header_missing: '인증 헤더가 존재하지 않아요.',
authorization_token_type_not_supported: '해당 인증 방법을 지원하지 않아요.',
unauthorized: '인증되지 않았어요. 로그인 정보와 범위를 확인해주세요.',
forbidden: '접근이 금지되었어요. 로그인 권한와 직책을 확인해주세요.',
unauthorized: '인증되지 않았어요. 로그인 정보와 범위를 확인해 주세요.',
forbidden: '접근이 금지되었어요. 로그인 권한과 역할을 확인해 주세요.',
expected_role_not_found:
'예상되는 직책을 찾을 수 없어요. 해당 사용자의 권한 또는 직책을 확인해주세요.',
'예상되는 역할을 찾을 수 없어요. 해당 사용자의 권한 또는 역할을 확인해 주세요.',
jwt_sub_missing: 'JWT에서 `sub`를 찾을 수 없어요.',
require_re_authentication: '보호된 작업을 수행하려면 재인증이 필요합니다.',
require_re_authentication: '보호된 작업을 수행하려면 재인증이 필요해요.',
},
guard: {
invalid_input: '{{type}} 요청 타입은 유효하지 않아요.',
@ -21,14 +21,14 @@ const errors = {
aborted: 'End 사용자가 상호 작용을 중단했어요.',
invalid_scope: '{{scope}} 범위를 지원하지 않아요.',
invalid_scope_plural: '{{scopes}} 범위들을 지원하지 않아요.',
invalid_token: '유하지 않은 토큰이 제공되었어요.',
invalid_token: '유하지 않은 토큰이 제공되었어요.',
invalid_client_metadata: '유효하지 않은 클라이언트 메타데이터가 제공되었어요.',
insufficient_scope: '요청된 {{scopes}} 범위에서 Access 토큰을 찾을 수 없어요.',
invalid_request: '요청이 유효하지 않아요.',
invalid_grant: '승인 요청이 유효하지 않아요.',
invalid_redirect_uri: '`redirect_uri`가 등록된 클라이언트의 `redirect_uris`와 일치하지 않아요.',
access_denied: '접근이 금지되었어요.',
invalid_target: '유요하지 않은 리소스 표시에요..',
invalid_target: '유효하지 않은 리소스 표시예요.',
unsupported_grant_type: '지원하지 않는 `grant_type` 요청이에요.',
unsupported_response_mode: '지원하지 않는 `response_mode` 요청이에요.',
unsupported_response_type: '지원하지 않은 `response_type` 요청이에요.',
@ -38,60 +38,61 @@ const errors = {
username_already_in_use: '이 사용자 이름은 다른 사람이 이미 사용 중이에요.',
email_already_in_use: '이 이메일은 다른 계정에서 이미 사용 중이에요.',
phone_already_in_use: '이 휴대전화번호는 다른 계정에서 이미 사용 중이에요.',
invalid_email: '유효하지 않은 이메일이요.',
invalid_phone: '유효하지 않은 휴대전화번호에요',
invalid_email: '유효하지 않은 이메일이요.',
invalid_phone: '유효하지 않은 휴대전화번호예요.',
email_not_exist: '이메일 주소가 아직 등록되지 않았어요.',
phone_not_exist: '휴대전화번호가 아직 등록되지 않았어요.',
identity_not_exist: '소셜 계정이 아직 등록되지 않았어요.',
identity_already_in_use: '소셜 계정이 이미 등록되있어요.',
identity_already_in_use: '소셜 계정이 이미 등록되있어요.',
cannot_delete_self: '자기 자신을 삭제할 수 없어요.',
sign_up_method_not_enabled: '이 회원가입 방법은 활성화 되어있지 않아요.',
sign_in_method_not_enabled: '이 로그인 방법은 활성화 되어있지 않아요.',
same_password: '새로운 비밀번호는 이전 비밀번호와 같으면 안되요.',
password_required_in_profile: '로그인 전에 비밀번호를 설정해야해요.',
new_password_required_in_profile: '새로운 비밀번호를 설정해야해요.',
password_exists_in_profile: '이미 비밀번호가 설정되어있어요.',
username_required_in_profile: '로그인 전에 사용자 이름을 설정해야해요.',
username_exists_in_profile: '이미 사용자 이름이 설정되어있어요.',
email_required_in_profile: '로그인 전에 이메일 주소를 설정해야해요.',
email_exists_in_profile: '이미 이메일 주소가 설정되어있어요.',
phone_required_in_profile: '로그인 전에 휴대전화번호를 설정해야해요.',
phone_exists_in_profile: '이미 휴대전화번호가 설정되어있어요.',
email_or_phone_required_in_profile: '로그인 전에 이메일 주소 또는 휴대전화번호를 설정해야해요.',
suspended: '이 계정은 일시 정시되었어요.',
sign_up_method_not_enabled: '이 회원가입 방법은 활성화되어있지 않아요.',
sign_in_method_not_enabled: '이 로그인 방법은 활성화되어있지 않아요.',
same_password: '새로운 비밀번호는 이전 비밀번호와 같으면 안 돼요.',
password_required_in_profile: '로그인 전에 비밀번호를 설정해야 해요.',
new_password_required_in_profile: '새로운 비밀번호를 설정해야 해요.',
password_exists_in_profile: '이미 비밀번호가 설정되어 있어요.',
username_required_in_profile: '로그인 전에 사용자 이름을 설정해야 해요.',
username_exists_in_profile: '이미 사용자 이름이 설정되어 있어요.',
email_required_in_profile: '로그인 전에 이메일 주소를 설정해야 해요.',
email_exists_in_profile: '이미 이메일 주소가 설정되어 있어요.',
phone_required_in_profile: '로그인 전에 휴대전화번호를 설정해야 해요.',
phone_exists_in_profile: '이미 휴대전화번호가 설정되어 있어요.',
email_or_phone_required_in_profile:
'로그인 전에 이메일 주소 또는 휴대전화번호를 설정해야 해요.',
suspended: '이 계정은 일시 정지되었어요.',
user_not_exist: '{{identifier}}의 사용자가 아직 등록되지 않았어요.',
missing_profile: '로그인 전에 추가 정보를 제공해야해요.',
role_exists: 'The role id {{roleId}} is already been added to this user', // UNTRANSLATED
missing_profile: '로그인 전에 추가 정보를 제공해야 해요.',
role_exists: '역할 ID {{roleId}}은/는 이미 이 사용자에게 할당되어 있어요.',
},
password: {
unsupported_encryption_method: '{{name}} 암호화 방법을 지원하지 않아요.',
pepper_not_found: '비밀번호 Pepper를 찾을 수 없어요. Core 환경설정을 확인해주세요.',
pepper_not_found: '비밀번호 Pepper를 찾을 수 없어요. Core 환경설정을 확인해 주세요.',
},
session: {
not_found: '세션을 찾을 수 없어요. 다시 로그인해주세요.',
invalid_credentials: '유효하지 않은 로그인 정보예요. 입력된 값을 다시 확인해주세요.',
not_found: '세션을 찾을 수 없어요. 다시 로그인해 주세요.',
invalid_credentials: '유효하지 않은 로그인 정보예요. 입력된 값을 다시 확인해 주세요.',
invalid_sign_in_method: '현재 로그인 방법을 지원하지 않아요.',
invalid_connector_id: '소셜 ID {{connectorId}}를 찾을 수 없어요..',
invalid_connector_id: '소셜 ID {{connectorId}}를 찾을 수 없어요.',
insufficient_info: '로그인 정보가 충분하지 않아요.',
connector_id_mismatch: '연동 ID가 세션 정보와 일치하지 않아요.',
connector_session_not_found: '연동 세션을 찾을 수 없어요. 다시 로그인해주세요.',
connector_session_not_found: '연동 세션을 찾을 수 없어요. 다시 로그인해 주세요.',
verification_session_not_found:
'검증을 실패했어요. 검증 과정을 다시 시작하고 다시 시도해주세요.',
'검증을 실패했어요. 검증 과정을 다시 시작하고 다시 시도해 주세요.',
verification_expired:
'연결 시간이 초과되었어요. 검증을 다시 시작하고, 계정이 안전한지 확인해주세요.',
unauthorized: '로그인을 먼저 해주세요.',
unsupported_prompt_name: '지원하지 않는 Prompt 이름이요.',
forgot_password_not_enabled: '비밀번호 찾기가 활성화 되어있지 않아요.',
'연결 시간이 초과되었어요. 검증을 다시 시작하고, 계정이 안전한지 확인해 주세요.',
unauthorized: '로그인을 먼저 해 주세요.',
unsupported_prompt_name: '지원하지 않는 Prompt 이름이요.',
forgot_password_not_enabled: '비밀번호 찾기가 활성화되어있지 않아요.',
verification_failed:
'인증이 성공적으로 완료되지 않았어요. 처음부터 다시 인증 과정을 거쳐주세요.',
'인증이 성공적으로 완료되지 않았어요. 처음부터 다시 인증 과정을 거쳐 주세요.',
connector_validation_session_not_found: '연동 세션 유효성 검증을 위한 토큰을 찾을 수 없어요.',
identifier_not_found: '사용자 식별자를 찾을 수 없어요. 처음부터 다시 로그인을 시도해주세요.',
interaction_not_found: '인터렉션 세션을 찾을 수 없어요. 처음부터 다시 세션을 시작해주세요.',
identifier_not_found: '사용자 식별자를 찾을 수 없어요. 처음부터 다시 로그인을 시도해 주세요.',
interaction_not_found: '인터렉션 세션을 찾을 수 없어요. 처음부터 다시 세션을 시작해 주세요.',
},
connector: {
general: '연동 중에 알 수 없는 오류가 발생했어요. {{errorDescription}}',
not_found: '{{type}} 값을 가진 연동 종류를 찾을 수 없어요.',
not_enabled: '연동이 활성화 되지 않았어요.',
not_enabled: '연동이 활성화되지 않았어요.',
invalid_metadata: '연동 메타데이터가 유효하지 않아요.',
invalid_config_guard: '연동 설정 데이터가 유효하지 않아요.',
unexpected_type: '예상하지 않은 연동 종류에요.',
@ -105,62 +106,60 @@ const errors = {
invalid_auth_code: '연동 서비스의 Auth 코드가 유효하지 않아요.',
social_invalid_id_token: '연동 서비스의 ID 토큰이 유효하지 않아요.',
authorization_failed: '사용자의 인증 과정이 성공적으로 마무리되지 않았어요.',
social_auth_code_invalid: 'Access 토큰을 가져올 수 없어요. Authorization 코드를 확인해주세요.',
more_than_one_sms: '연동된 SMS 서비스가 1개 이상이여야 해요.',
more_than_one_email: '연동된 이메일 서비스가 1개 이상이여야 해요.',
social_auth_code_invalid: 'Access 토큰을 가져올 수 없어요. Authorization 코드를 확인해 주세요.',
more_than_one_sms: 'SMS 서비스는 1개만 연동되어야 해요.',
more_than_one_email: '이메일 서비스는 1개만 연동되어야 해요.',
db_connector_type_mismatch: '종류가 일치하지 않은 연동 서비스가 DB에 존재해요.',
not_found_with_connector_id: '주어진 연동 ID로 연동 설정을 찾을 수 없어요.',
multiple_instances_not_supported: '선택된 연동 기준으로 여러 인스턴스를 생성할 수 없어요.',
invalid_type_for_syncing_profile: '소셜 연동만 사용자 프로파일을 동기화 할 수 있어요.',
can_not_modify_target: '연동 목표를 수정할 수 없어요.',
should_specify_target: "'목표'를 반드시 지정해야해요.",
should_specify_target: "'목표'를 반드시 지정해야 해요.",
multiple_target_with_same_platform: '같은 목표와 플랫폼에 여러 소셜 연동을 가질 수 없어요.',
cannot_overwrite_metadata_for_non_standard_connector:
'이 연동의 메타데이터를 덮어쓸 수 없어요.',
},
verification_code: {
phone_email_empty: 'Both phone and email are empty.', // UNTRANSLATED
not_found: 'Verification code not found. Please send verification code first.', // UNTRANSLATED
phone_mismatch: 'Phone mismatch. Please request a new verification code.', // UNTRANSLATED
email_mismatch: 'Email mismatch. Please request a new verification code.', // UNTRANSLATED
code_mismatch: 'Invalid verification code.', // UNTRANSLATED
expired: 'Verification code has expired. Please request a new verification code.', // UNTRANSLATED
exceed_max_try:
'Verification code retries limitation exceeded. Please request a new verification code.', // UNTRANSLATED
phone_email_empty: '전화번호와 이메일이 모두 비어 있어요.',
not_found: '인증 코드를 찾을 수 없어요. 인증 코드를 먼저 요청하세요.',
phone_mismatch: '전화번호가 맞지 않아요. 새 인증 코드를 요청해 주세요.',
email_mismatch: '이메일이 맞지 않아요. 새 인증 코드를 요청해 주세요.',
code_mismatch: '인증 코드가 일치하지 않아요.',
expired: '인증 코드가 만료되었어요. 새 인증 코드를 요청해 주세요.',
exceed_max_try: '인증 코드 재시도 한도에 도달했어요. 새 인증 코드를 요청해 주세요.',
},
sign_in_experiences: {
empty_content_url_of_terms_of_use:
'이용약관 URL이 비어있어요. 이용약관이 활성화되어있다면, 이용약관 URL를 설정해주세요.',
empty_logo: '로고 URL을 입력해주세요.',
empty_slogan: '브랜딩 슬로건이 비어있어요. 슬로건을 사용한다면, 내용을 설정해주세요.',
empty_social_connectors: '연동된 소셜이 없어요. 소셜 로그인을 사용한다면, 연동해주세요.',
'이용 약관 URL이 비어 있어요. 이용 약관이 활성화되어 있다면, 이용 약관 URL를 설정해 주세요.',
empty_logo: '로고 URL을 입력해 주세요.',
empty_slogan: '브랜딩 슬로건이 비어 있어요. 슬로건을 사용한다면, 내용을 설정해 주세요.',
empty_social_connectors: '연동된 소셜이 없어요. 소셜 로그인을 사용한다면, 연동해 주세요.',
enabled_connector_not_found: '활성된 {{type}} 연동을 찾을 수 없어요.',
not_one_and_only_one_primary_sign_in_method:
'반드시 하나의 메인 로그인 방법이 설정되어야 해요. 입력된 값을 확인해주세요.',
username_requires_password:
'회원가입 식별자에 대한 비밀번호 설정을 사용하도록 설정해야 합니다.',
username_requires_password: '회원가입 식별자에 대한 비밀번호 설정을 사용하도록 설정해야 해요.',
passwordless_requires_verify:
'이메일/휴대전화번호 가입 식별자에 대해 확인을 사용하도록 설정해야해요.',
miss_sign_up_identifier_in_sign_in: '로그인 방법에는 회원가입 ID가 포함되어야 합니다.',
'이메일/휴대전화번호 가입 식별자에 대해 확인을 사용하도록 설정해야 해요.',
miss_sign_up_identifier_in_sign_in: '로그인 방법에는 회원가입 ID가 포함되어야 해요.',
password_sign_in_must_be_enabled:
'회원가입 시 비밀번호를 설정해야 할 경우 비밀번호 로그인을 사용하도록 설정해야 합니다.',
'회원가입 시 비밀번호를 설정해야 할 경우 비밀번호 로그인을 사용하도록 설정해야 해요.',
code_sign_in_must_be_enabled:
'비밀번호를 설정할 필요가 없을 때는 인증 코드 로그인을 활성화해야 합니다.',
'비밀번호를 설정할 필요가 없을 때는 인증 코드 로그인을 활성화해야 해요.',
unsupported_default_language: '{{language}} 언어는 아직 지원하지 않아요.',
at_least_one_authentication_factor: '최소한 하나의 인증 방법을 선택해야 해요.',
},
localization: {
cannot_delete_default_language: '{{languageTag}} 언어는 기본 언어이므로 삭제할 수 없어요.',
cannot_delete_default_language: '{{languageTag}} 언어는 기본 언어이므로 삭제할 수 없어요.',
invalid_translation_structure:
'유효하지 않은 데이터 스키마에요. 입력된 값을 다시 확인해주세요.',
'유효하지 않은 데이터 스키마예요. 입력된 값을 다시 확인해 주세요.',
},
swagger: {
invalid_zod_type: '유하지 않은 Zod 종류에요. Route Guard 설정을 확인해주세요.',
invalid_zod_type: '유하지 않은 Zod 종류에요. Route Guard 설정을 확인해 주세요.',
not_supported_zod_type_for_params:
'지원되지 않는 Zod 종류예요. Route Guard 설정을 확인해주세요.',
'지원되지 않는 Zod 종류예요. Route Guard 설정을 확인해 주세요.',
},
entity: {
create_failed: '{{name}} 생성을 실패하였어요..',
create_failed: '{{name}} 생성을 실패하였어요.',
not_exists: '{{name}}는 존재하지 않아요.',
not_exists_with_id: '{{id}} ID를 가진 {{name}}는 존재하지 않아요.',
not_found: '리소스가 존재하지 않아요.',
@ -169,15 +168,15 @@ const errors = {
invalid_type: '로그 종류가 유효하지 않아요.',
},
role: {
name_in_use: 'This role name {{name}} is already in use', // UNTRANSLATED
scope_exists: 'The scope id {{scopeId}} has already been added to this role', // UNTRANSLATED
user_exists: 'The user id {{userId}} is already been added to this role', // UNTRANSLATED
name_in_use: '역할 이름 {{name}}이/가 이미 사용 중이에요.',
scope_exists: '범위 ID {{scopeId}}이/가 이미 이 역할에 추가되어 있어요.',
user_exists: '사용자 ID {{userId}}이/가 이미 이 역할에 추가되어 있어요.',
default_role_missing:
'Some of the default roleNames does not exist in database, please ensure to create roles first', // UNTRANSLATED
'기본 역할 이름의 일부가 데이터베이스에 존재하지 않아요. 먼저 역할을 생성해 주세요.',
},
scope: {
name_exists: 'The scope name {{name}} is already in use', // UNTRANSLATED
name_with_space: 'The name of the scope cannot contain any spaces.', // UNTRANSLATED
name_exists: '범위 이름 {{name}}이/가 이미 사용 중이에요.',
name_with_space: '범위 이름에 공백을 포함할 수 없어요.',
},
};

View file

@ -1,30 +1,30 @@
const api_resource_details = {
back_to_api_resources: 'API 리소스로 돌아가기',
settings_tab: 'Settings', // UNTRANSLATED
permissions_tab: 'Permissions', // UNTRANSLATED
settings_tab: '설정',
permissions_tab: '권한',
settings: '설정',
settings_description:
'API 리소스(리소스 표시기) - 요청할 대상 서비스 또는 리소스(일반적으로 리소스의 ID를 나타내는 URI 형식 변수)를 나타냅니다.',
'API 리소스(리소스 표시기) - 요청할 대상 서비스 또는 리소스(일반적으로 리소스의 ID를 나타내는 URI 형식 변수)를 나타내요.',
token_expiration_time_in_seconds: '토큰 만료 시간 (초)',
token_expiration_time_in_seconds_placeholder: '토큰 만료 시간을 입력해주세요',
delete_description:
'이 행동은 취소 수 없어요. 해당 API 리소스가 영원히 삭제될거예요. 삭제를 하기 위해 API 리소스 이름 "<span>{{name}}</span>"을 입력해주세요.',
'이 행동은 취소 수 없어요. 해당 API 리소스가 영원히 삭제될 거예요. 삭제를 하기 위해 API 리소스 이름 "<span>{{name}}</span>"을 입력해주세요.',
enter_your_api_resource_name: 'API 리소스 이름을 입력해주세요.',
api_resource_deleted: '{name}} API 리소스가 성공적으로 삭제되었어요.',
permission: {
create_button: 'Create Permission', // UNTRANSLATED
create_title: 'Create permission', // UNTRANSLATED
create_subtitle: 'Define the permissions (scopes) needed by this API.', // UNTRANSLATED
confirm_create: 'Create permission', // UNTRANSLATED
name: 'Permission name', // UNTRANSLATED
name_placeholder: 'read:resource', // UNTRANSLATED
forbidden_space_in_name: 'The permission name must not contain any spaces.', // UNTRANSLATED
description: 'Description', // UNTRANSLATED
description_placeholder: 'Able to read the resources', // UNTRANSLATED
permission_created: 'The permission {{name}} has been successfully created', // UNTRANSLATED
create_button: '권한 생성',
create_title: '권한 생성',
create_subtitle: '이 API에 필요한 권한을 정의해요.',
confirm_create: '권한 생성',
name: '권한 이름',
name_placeholder: 'read:resource',
forbidden_space_in_name: '권한 이름은 공백을 포함할 수 없어요.',
description: '설명',
description_placeholder: '리소스를 볼 수 있는 권한',
permission_created: '권한 {{name}}이 성공적으로 생성되었어요.',
delete_description:
'If this permission is deleted, the user who had this permission will lose the access granted by it.', // UNTRANSLATED
deleted: 'The permission "{{name}}" was successfully deleted!', // UNTRANSLATED
'이 권한이 삭제되면, 이 권한을 가지고 있던 사용자는 이 권한에 의해 부여받은 접근 권한을 잃게 돼요.',
deleted: '권한 "{{name}}"이 성공적으로 삭제되었어요.',
},
};

View file

@ -6,7 +6,7 @@ const api_resources = {
api_name_placeholder: 'API 이름 입력',
api_identifier: 'API 식별자',
api_identifier_tip:
'The unique identifier to the API resource. It must be an absolute URI and has no fragment (#) component. Equals to the <a>resource parameter</a> in OAuth 2.0.', // UNTRANSLATED
'API 리소스에 대한 고유한 식별자예요. 절대 URI여야 하며 조각 (#) 컴포넌트가 없어야 해요. OAuth 2.0의 <a>resource parameter</a>와 같아요.',
api_resource_created: '{{name}} API 리소스가 성공적으로 생성되었어요.',
api_identifier_placeholder: 'https://your-api-identifier/',
};

View file

@ -3,48 +3,48 @@ const application_details = {
check_guide: '가이드 확인',
settings: '설정',
settings_description:
'애플리케이션은 Logto for OIDC, 로그인 환경, 감사 로그 등에서 애플리케이션을 식별하는 데 사용됩니다.',
'애플리케이션은 Logto for OIDC, 로그인 환경, 감사 로그 등에서 애플리케이션을 식별하는 데 사용돼요.',
advanced_settings: '고급 설정',
advanced_settings_description:
'고급 설정에는 OIDC 관련 용어가 포함됩니다. 자세한 내용은 토큰 엔드포인트에서 확인할 수 있습니다.',
'고급 설정에는 OIDC 관련 용어가 포함돼요. 자세한 내용은 토큰 엔드포인트에서 확인할 수 있어요.',
application_name: '어플리케이션 이름',
application_name_placeholder: '나의 앱',
description: '설명',
description_placeholder: '어플리케이션 설명을 적어주세요.',
authorization_endpoint: '인증 End-Point',
authorization_endpoint_tip:
'인증 및 권한 부여를 진행할 End-Point예요. OpenID Connect <a>인증</a>에서 사용되던 값 이에요.',
'인증 및 권한 부여를 진행할 End-Point예요. OpenID Connect <a>인증</a>에서 사용되던 값이에요.',
application_id: '앱 ID',
application_id_tip:
'일반적으로 Logto에서 생성되는 고유한 응용 프로그램 식별자이에요. OpenID Connect에서 "<a>client_id</a>"의 약자이기도 해요.',
'일반적으로 Logto에서 생성되는 고유한 응용 프로그램 식별자요. OpenID Connect에서 "<a>client_id</a>"의 약자이기도 해요.',
application_secret: '앱 시크릿',
redirect_uri: 'Redirect URI',
redirect_uris: 'Redirect URIs',
redirect_uri_placeholder: 'https://your.website.com/app',
redirect_uri_placeholder_native: 'io.logto://callback',
redirect_uri_tip:
'사용자 로그인 이후, 리다이렉트 될 URI 경로예요. 더욱 자세한 정보는 OpenID Connect <a>AuthRequest</a>를 참고해주세요.',
'사용자 로그인 이후, 리다이렉트될 URI 경로예요. 더욱 자세한 정보는 OpenID Connect <a>AuthRequest</a>를 참고해주세요.',
post_sign_out_redirect_uri: '로그아웃 이후 Redirect URI',
post_sign_out_redirect_uris: '로그아웃 이후 Redirect URIs',
post_sign_out_redirect_uri_placeholder: 'https://your.website.com/home',
post_sign_out_redirect_uri_tip:
'로그아웃 이후, 리다이렉트 될 URI 경로예요 (선택). 일부 앱에서는 실제 효과가 없을 수 있어요.',
'로그아웃 이후, 리다이렉트될 URI 경로예요 (선택). 일부 앱에서는 실제 효과가 없을 수 있어요.',
cors_allowed_origins: 'CORS Allow Origins',
cors_allowed_origins_placeholder: 'https://your.website.com',
cors_allowed_origins_tip:
'기본으로 모든 리다이렉트의 오리진들은 허용요. 대체적으로 이 값을 건들 필요는 없어요. 더욱 자세한 정보는 <a>MDN doc</a>를 확인해주세요.',
'기본으로 모든 리다이렉트의 오리진들은 허용요. 대체적으로 이 값을 건들 필요는 없어요. 더욱 자세한 정보는 <a>MDN doc</a>를 확인해주세요.',
id_token_expiration: 'ID 토큰 만료',
refresh_token_expiration: 'Refresh 토큰 만료',
token_endpoint: '토큰 End-Point',
user_info_endpoint: '사용자 정보 End-Point',
enable_admin_access: '관리자 접근 활성화',
enable_admin_access_label:
'관리 API에 대한 접근을 활성화, 비활성화 할 수 있어요. 활성화 한다면, 이 어플리케이션에서 Access 토큰을 통해 관리 API를 사용할 수 있어요.',
'관리 API에 대한 접근을 활성화, 비활성화할 수 있어요. 활성화한다면, 이 어플리케이션에서 Access 토큰을 통해 관리 API를 사용할 수 있어요.',
delete_description:
'이 행동은 취소될 수 없어요. 어플리케이션을 영원히 삭제할 거에요. 삭제를 진행하기 위해 <span>{{name}}</span> 를 입력해주세요.',
enter_your_application_name: '어플리케이션 이름을 입력해주세요.',
enter_your_application_name: '어플리케이션 이름을 입력해 주세요.',
application_deleted: '{{name}} 어플리케이션이 성공적으로 삭제되었어요.',
redirect_uri_required: '반드시 최소 하나의 Redirect URI를 입력해야요.',
redirect_uri_required: '반드시 최소 하나의 Redirect URI를 입력해야요.',
};
export default application_details;

View file

@ -1,15 +1,15 @@
const applications = {
title: '어플리케이션',
subtitle: '인증에 Logto를 사용할 모바일, 단일 페이지 또는 기존 어플리케이션 설정할 수 있어요.',
subtitle: '인증에 Logto를 사용할 모바일, 단일 페이지 또는 기존 어플리케이션 설정할 수 있어요.',
create: '어플리케이션 생성',
application_name: '어플리케이션 이름',
application_name_placeholder: '나의 앱',
application_description: '어플리케이션 설명',
application_description_placeholder: '어플리케이션 설명을 적어주세요.',
select_application_type: '어플리케이션 종류 선택',
no_application_type_selected: '어플리케이션 종류를 선택하지 않았요.',
no_application_type_selected: '어플리케이션 종류를 선택하지 않았요.',
application_created:
'{{name}} 어플리케이션이 성공적으로 생성되었어요! \n이제 어플리케이션 설정을 마무리해주세요.',
'{{name}} 어플리케이션이 성공적으로 생성되었어요! \n이제 어플리케이션 설정을 마무리해 주세요.',
app_id: '앱 ID',
type: {
native: {
@ -36,10 +36,10 @@ const applications = {
guide: {
get_sample_file: '예제 찾기',
header_description:
'단계별 가이드에 따라 어플리케이션을 연동하거나, 오른쪽 버튼을 클릭하여 샘플 프로젝트를 받아보세요.',
'단계별 가이드에 따라 어플리케이션을 연동하거나, 오른쪽 버튼을 클릭하여 샘플 프로젝트를 받아 보세요.',
title: '어플리케이션이 생성되었어요.',
subtitle: '앱 설정을 마치기 위해 아래 단계를 따라주세요. SDK 종류를 선택해주세요.',
description_by_sdk: '아래 과정을 따라서 Logto를 {{sdk}} 앱과 빠르게 연동해보세요.',
subtitle: '앱 설정을 마치기 위해 아래 단계를 따라주세요. SDK 종류를 선택해 주세요.',
description_by_sdk: '아래 과정을 따라서 Logto를 {{sdk}} 앱과 빠르게 연동해 보세요.',
},
};

View file

@ -3,25 +3,25 @@ const connector_details = {
check_readme: 'README 확인',
settings: '설정',
settings_description:
'Logto에서 연동은 중요한 역할을 해요. 연동 시스템을 통하여, 사용자들에게 비밀번호 없이 회원 가입을 하고 로그인을 할 수 있게 하거나, 소셜 계정을 통하여 로그인을 할 수 있게 도와줘요.',
save_error_empty_config: '설정을 입력해주세요.',
'Logto에서 연동은 중요한 역할을 해요. 연동 시스템을 통하여, 사용자들에게 비밀번호 없이 회원 가입을 하고 로그인을 할 수 있게 하거나, 소셜 계정을 통하여 로그인을 할 수 있게 도와줘요.',
save_error_empty_config: '설정을 입력해 주세요.',
send: '보내기',
send_error_invalid_format: '유효하지 않은 입력',
edit_config_label: '여기에 JSON을 입력해주세요.',
edit_config_label: '여기에 JSON을 입력해 주세요.',
test_email_sender: '이메일 연동 테스트',
test_sms_sender: 'SMS 연동 테스트',
test_email_placeholder: '테스트 이메일 주소를 입력해주세요.',
test_sms_placeholder: '테스트 휴대전화번호를 입력해주세요.',
test_message_sent: '테스트 메세지 전송완료!',
test_sender_description: 'JSON 설정이 정확하다면, 메세지를 받을거에요.',
test_email_placeholder: '테스트 이메일 주소를 입력해 주세요.',
test_sms_placeholder: '테스트 휴대전화번호를 입력해 주세요.',
test_message_sent: '테스트 메세지 전송 완료!',
test_sender_description: 'JSON 설정이 정확하다면, 메세지를 받을 거에요.',
options_change_email: '이메일 연동 수정',
options_change_sms: 'SMS 연동 수정',
connector_deleted: '연동이 공적으로 제거되었어요.',
connector_deleted: '연동이 공적으로 제거되었어요.',
type_email: '이메일 연동',
type_sms: 'SMS 연동',
type_social: '소셜 연동',
in_use_deletion_description:
'이 연동은 로그인 환경에서 사용 중이에요. 삭제 시 로그인 경험 설정에서 <name/> 로그인 경험이 삭제요.',
'이 연동은 로그인 환경에서 사용 중이에요. 삭제 시 로그인 경험 설정에서 <name/> 로그인 경험이 삭제요.',
};
export default connector_details;

View file

@ -1,9 +1,9 @@
const connectors = {
title: '연동',
subtitle: '비밀번호 없이 또는 소셜 로그인을 제공하여 보다 나은 경험을 위해 연동해주세요.',
subtitle: '연동을 통해 비밀번호 없는 로그인이나 소셜 로그인을 제공해 보세요.',
create: '소셜 연동 추가',
config_sie_notice:
'새로운 연동이 설정되었어요. 다음 링크에서 설정을 마무리해주세요. <a>{{link}}</a>.',
'새로운 연동이 설정되었어요. 다음 링크에서 설정을 마무리해 주세요. <a>{{link}}</a>.',
config_sie_link_text: '로그인 경험',
tab_email_sms: '이메일/SMS 연동',
tab_social: '소셜 연동',
@ -14,8 +14,8 @@ const connectors = {
connector_status_not_in_use: '사용 중이 아님',
not_in_use_tip: {
content:
'사용 중이 아님은 로그인 환경에서 이 로그인 방법을 사용하지 않았음을 의미해요. <a>{{link}}</a> 이 로그인 방법 추가해주세요.',
go_to_sie: '로그인 경험으로 가',
'사용 중이 아님은 로그인 환경에서 이 로그인 방법을 사용하지 않았음을 의미해요. <a>{{link}}</a> 이 로그인 방법 추가해주세요.',
go_to_sie: '로그인 경험으로 가',
},
social_connector_eg: '예) Google, Facebook, Github',
save_and_done: '저장 및 완료',
@ -30,28 +30,28 @@ const connectors = {
social: '소셜 연동 추가 및 설정',
},
guide: {
subtitle: '단계별 가이드를 따라, 연동해주세요.',
subtitle: '단계별 가이드를 따라, 연동해 주세요.',
connector_setting: '연동 설정',
name: '연동 이름',
name_tip: '다음과 같이 연동 이름이 출력되요. "{{Connector Name}} 계속하기".',
name_tip: '다음과 같이 연동 이름이 출력돼요. "{{name}}으로 계속하기".',
logo: '연동 로고 URL',
logo_placeholder: 'https://your.cdn.domain/logo.png',
logo_tip: '이 이미지는 연동 버튼에 보여질거에요.',
logo_tip: '이 이미지는 연동 버튼에 보여질 거에요.',
logo_dark: '연동 로고 URL (다크 모드)',
logo_dark_placeholder: 'https://your.cdn.domain/logo.png',
logo_dark_tip:
'Set your connectors logo for dark mode after enabling it in the Sign-in Experience of Admin Console.', // UNTRANSLATED
'Admin Console의 로그인 경험에서 다크 모드를 위한 로고를 활성화한 후 다크 모드용 연동 로고를 설정해 주세요.',
logo_dark_collapse: '최소화',
logo_dark_show: 'Show logo setting for dark mode', // UNTRANSLATED
logo_dark_show: '다크 모드를 위한 로고 설정 보이기',
target: '연동 ID 대상',
target_tip: '연동의 고유 식별자.',
target_tooltip:
'Logto의 소셜 연동에서의 "목표"는 소셜 정보의 원천을 뜻해요. Logto의 디자인은 충돌을 피하기 위해서 같은 "목표"를 허용하지 않아요. 연동을 추가한 후에는 값을 변경할 수 없으므로 주의해주세요. <a>자세히 알아보기</a>',
config: '여기에 JSON을 입력',
sync_profile: 'Sync profile information', // UNTRANSLATED
sync_profile_only_at_sign_up: '회원가입때 동기화',
sync_profile_each_sign_in: '로그인 할때 마다 동기화',
sync_profile_tip: 'Sync basic user profile, e.g. name and avatar.', // UNTRANSLATED
sync_profile: '프로필 정보 동기화',
sync_profile_only_at_sign_up: '회원가입때 동기화',
sync_profile_each_sign_in: '로그인할 때마다 동기화',
sync_profile_tip: '이름과 아바타와 같은 기본적인 사용자 프로필을 동기화해요.',
},
platform: {
universal: 'Universal',
@ -60,8 +60,8 @@ const connectors = {
},
add_multi_platform: ' 다양한 플랫폼 지원, 플랫폼을 선택해주세요.',
drawer_title: '연동 가이드',
drawer_subtitle: '연동하기 위해 가이드를 따라주세요.',
unknown: '알없는 연동',
drawer_subtitle: '연동하기 위해 가이드를 따라 주세요.',
unknown: '알없는 연동',
};
export default connectors;

View file

@ -1,20 +1,20 @@
const contact = {
title: '연락처',
description:
'커뮤니티에 참여하여 피드백을 제공하고 도움을 요청하며 다른 개발자와 생각을 공유해보세요.',
'커뮤니티에 참여하여 피드백을 제공하고 도움을 요청하며 다른 개발자와 생각을 공유해 보세요.',
discord: {
title: 'Discord 채널',
description: '공개 채널에 참여하여 다른 개발자와 채팅해보세요.',
description: '공개 채널에 참여하여 다른 개발자와 채팅해 보세요.',
button: '참가',
},
github: {
title: 'GitHub',
description: 'GitHub에서 이슈를 생성해보세요.',
description: 'GitHub에서 이슈를 생성해 보세요.',
button: '열기',
},
email: {
title: '이메일 보내기',
description: '추가 정보 및 도움말을 보려면 이메일을 보내주세요.',
description: '추가 정보 및 도움말을 보려면 이메일을 보내 주세요.',
button: '보내기',
},
};

View file

@ -8,12 +8,12 @@ const errors = {
invalid_origin_format: 'URI origin 형식이 유효하지 않음',
invalid_json_format: 'JSON 형식이 유효하지 않음',
invalid_error_message_format: '오류 메세지 형식이 유효하지 않아요.',
required_field_missing: '{{field}}을/를 입력해주세요.',
required_field_missing_plural: '최소 1개의 {{field}}을/를 입력해야해요.',
required_field_missing: '{{field}}을/를 입력해 주세요.',
required_field_missing_plural: '최소 1개의 {{field}}을/를 입력해야 해요.',
more_details: '자세히',
username_pattern_error:
'아이디는 반드시 문자, 숫자, _ 만으로 이루어져야 하며, 숫자로 시작하면 안요.',
password_pattern_error: '비밀번호는 최소 6자리로 이루어져야해요.',
'아이디는 반드시 문자, 숫자, _ 만으로 이루어져야 하며, 숫자로 시작하면 안요.',
password_pattern_error: '비밀번호는 최소 6자리로 이루어져야 해요.',
insecure_contexts: '비보안 연결(non-HTTPS)는 지원하지 않아요.',
unexpected_error: '알 수 없는 오류가 발생했어요.',
};

View file

@ -41,8 +41,8 @@ const general = {
page_info: '{{min, number}}-{{max, number}} / {{total, number}}',
learn_more: '더 알아보기',
tab_errors: '{{count, number}} 오류',
skip_for_now: 'Skip for now', // UNTRANSLATED
remove: 'Remove', // UNTRANSLATED
skip_for_now: '지금은 건너뛰기',
remove: '삭제',
};
export default general;

View file

@ -2,24 +2,24 @@ const get_started = {
progress: '시작 가이드: {{completed}}/{{total}}',
progress_dropdown_title: '해야할 것들...',
title: 'Logto를 어떻게 시작할까요?',
subtitle_part1: 'Logto의 가치를 얻기 위해 해야할 것들이 있어요.',
subtitle_part1: 'Logto의 가치를 얻기 위해 해야 할 것들이 있어요.',
subtitle_part2: '설정을 마칠게요 ',
hide_this: '가리기',
confirm_message: '정말로 이 페이지를 가릴까요? 이 행동은 취소할 수 없어요.',
card1_title: '체험해보기',
card1_subtitle: 'Logto 로그인 경험을 체험해보세요.',
card2_title: '첫 어플리케이션 생성 및 연동해보기',
card2_subtitle: '모바일 앱 및 Single Page, Tranditional 웹에 Logto 인증을 적용해보세요.',
card1_subtitle: 'Logto 로그인 경험을 체험해 보세요.',
card2_title: '첫 어플리케이션 생성 및 연동해 보기',
card2_subtitle: '모바일 앱 및 Single Page, Tranditional 웹에 Logto 인증을 적용해 보세요.',
card3_title: '로그인 경험 커스터마이징하기',
card3_subtitle: '로그인 화면을 브랜드에 맞게 커스터마이징 그리고 실시간으로 확인해보세요.',
card3_subtitle: '로그인 화면을 브랜드에 맞게 커스터마이징 그리고 실시간으로 확인해 보세요.',
card4_title: 'SMS/이메일 연동하기',
card4_subtitle:
'SMS 또는 이메일을 통해 비밀번호가 없이, 그리고 더욱 안전한 로그인 경험을 사용자에게 제공해보세요.',
'SMS 또는 이메일을 통해 비밀번호가 없이, 그리고 더욱 안전한 로그인 경험을 사용자에게 제공해 보세요.',
card5_title: '소셜 연동',
card5_subtitle:
'사용자의 소셜 정보를 통해 한 번의 클릭으로 로그인할 수 있는 경험을 사용자에게 제공해보세요.',
'사용자의 소셜 정보를 통해 한 번의 클릭으로 로그인할 수 있는 경험을 사용자에게 제공해 보세요.',
card6_title: '더욱 나아가서',
card6_subtitle: '복잡하지 않은 단계별 시나리오 문서를 확인해보세요.',
card6_subtitle: '복잡하지 않은 단계별 시나리오 문서를 확인해 보세요.',
};
export default get_started;

View file

@ -3,7 +3,7 @@ const log_details = {
back_to_user: '{{name}}으로 돌아가기',
success: '성공',
failed: '실패',
event_key: 'Event Key', // UNTRANSLATED
event_key: '이벤트 키',
application: '어플리케이션',
ip_address: 'IP 주소',
user: '사용자',

View file

@ -1,6 +1,6 @@
const logs = {
title: 'Audit 기록',
subtitle: '관리자나 사용자의 인증 기록을 확인해보세요.',
subtitle: '관리자나 사용자의 인증 기록을 확인해 보세요.',
event: '활동',
user: '사용자',
application: '어플리케이션',

View file

@ -1,9 +1,9 @@
const permissions = {
search_placeholder: 'Search by API or permission name', // UNTRANSLATED
search_placeholder_without_api: 'Search by permission name', // UNTRANSLATED
name_column: 'Permission', // UNTRANSLATED
description_column: 'Description', // UNTRANSLATED
api_column: 'API', // UNTRANSLATED
search_placeholder: 'API 또는 권한 이름으로 검색',
search_placeholder_without_api: '권한 이름으로 검색',
name_column: '권한',
description_column: '설명',
api_column: 'API',
};
export default permissions;

View file

@ -1,49 +1,48 @@
const role_details = {
back_to_roles: 'Back to Roles', // UNTRANSLATED
identifier: 'Identifier', // UNTRANSLATED
back_to_roles: '역할로 돌아가기',
identifier: '식별자',
delete_description:
'Doing so will remove the permissions associated with this role from the affected users and delete the mapping between roles, users, and permissions.', // UNTRANSLATED
role_deleted: '{{name}} was successfully deleted!', // UNTRANSLATED
settings_tab: 'Settings', // UNTRANSLATED
users_tab: 'Users', // UNTRANSLATED
permissions_tab: 'Permissions', // UNTRANSLATED
settings: 'Settings', // UNTRANSLATED
'이렇게 하면 영향을 받는 사용자에게서 이 역할과 관련된 권한이 제거되고 역할, 사용자 및 권한 간의 매핑이 삭제될 거예요.',
role_deleted: '{{name}}이 성공적으로 삭제되었어요.',
settings_tab: '설정',
users_tab: '사용자',
permissions_tab: '권한',
settings: '설정',
settings_description:
'Roles are a grouping of permissions that can be assigned to users. They also provide a way to aggregate permissions defined for different APIs, making it more efficient to add, remove, or adjust permissions compared to assigning them individually to users.', // UNTRANSLATED
field_name: 'Name', // UNTRANSLATED
field_description: 'Description', // UNTRANSLATED
'역할은 사용자에게 할당된 권한들의 모음이에요. 역할은 다양한 API에 정의된 권한들을 통합하는 방법을 제공하기 때문에, 사용자에게 개별적으로 할당하는 것보다 효율적으로 권한을 추가, 제거, 조정할 수 있어요.',
field_name: '이름',
field_description: '설명',
permission: {
assign_button: 'Assign Permissions', // UNTRANSLATED
assign_title: 'Assign permissions', // UNTRANSLATED
assign_button: '권한 할당',
assign_title: '권한 할당',
assign_subtitle:
'Assign permissions to this role. The role will gain the added permissions, and users with this role will inherit these permissions.', // UNTRANSLATED
assign_form_field: 'Assign permissions', // UNTRANSLATED
added_text_one: '{{count, number}} permission added', // UNTRANSLATED
added_text_other: '{{count, number}} permissions added', // UNTRANSLATED
api_permission_count_one: '{{count, number}} permission', // UNTRANSLATED
api_permission_count_other: '{{count, number}} permissions', // UNTRANSLATED
confirm_assign: 'Assign Permissions', // UNTRANSLATED
permission_assigned: 'The selected permissions were successfully assigned to this role!', // UNTRANSLATED
'이 역할에 권한을 할당해요. 이 역할은 추가된 권한을 할당받고, 이 역할을 가진 이용자들은 이 권한들을 상속받을 거예요.',
assign_form_field: '권한 할당',
added_text_one: '권한 {{count, number}}개 추가됨',
added_text_other: '권한 {{count, number}}개 추가됨',
api_permission_count_one: '권한 {{count, number}}개',
api_permission_count_other: '권한 {{count, number}}개',
confirm_assign: '권한 할당',
permission_assigned: '선택된 권한들이 이 역할에 성공적으로 할당되었어요!',
deletion_description:
'If this permission is removed, the affected user with this role will lose the access granted by this permission.', // UNTRANSLATED
permission_deleted: 'The permission "{{name}}" was successfully removed from this role!', // UNTRANSLATED
empty: 'No permission available', // UNTRANSLATED
'이 권한이 삭제되면, 이 역할에 영향을 받는 사용자가 이 권한에 의해 부여된 접근 권한을 잃게 돼요.',
permission_deleted: '권한 "{{name}}"이 이 역할에서 성공적으로 삭제되었어요!',
empty: '권한 없음',
},
users: {
assign_button: 'Assign Users', // UNTRANSLATED
name_column: 'User', // UNTRANSLATED
app_column: 'App', // UNTRANSLATED
latest_sign_in_column: 'Latest sign in', // UNTRANSLATED
delete_description:
'It will remain in your user pool but lose the authorization for this role.', // UNTRANSLATED
deleted: '{{name}} was successfully removed from this role!', // UNTRANSLATED
assign_title: 'Assign users', // UNTRANSLATED
assign_button: '사용자 할당',
name_column: '사용자',
app_column: '앱',
latest_sign_in_column: '최근 로그인 시각',
delete_description: '사용자는 사용자 목록에 남지만 이 역할에 대한 접근 권한을 잃어버릴 거예요.',
deleted: '{{name}}이 이 역할에서 성공적으로 삭제되었어요!',
assign_title: '사용자 할당',
assign_subtitle:
'Assign users to this role. Find appropriate users by searching name, email, phone, or user ID.', // UNTRANSLATED
assign_users_field: 'Assign users', // UNTRANSLATED
confirm_assign: 'Assign users', // UNTRANSLATED
users_assigned: 'The selected users were successfully assigned to this role!', // UNTRANSLATED
empty: 'No user available', // UNTRANSLATED
'사용자를 이 역할에 할당해요. 이름, 이메일, 전화번호, 사용자 ID 등을 이용하여 적절한 사용자를 찾아 보세요.',
assign_users_field: '사용자 할당',
confirm_assign: '사용자 할당',
users_assigned: '선택된 이용자들이 이 역할에 성공적으로 할당되었어요!',
empty: '사용자 없음',
},
};

View file

@ -1,20 +1,20 @@
const roles = {
title: 'Roles', // UNTRANSLATED
title: '역할',
subtitle:
'Roles include permissions that determine what a user can do. RBAC uses roles to give users access to resources for specific actions.', // UNTRANSLATED
create: 'Create Role', // UNTRANSLATED
role_name: 'Role', // UNTRANSLATED
role_description: 'Description', // UNTRANSLATED
role_name_placeholder: 'Enter your role name', // UNTRANSLATED
role_description_placeholder: 'Enter your role description', // UNTRANSLATED
assigned_users: 'Assigned users', // UNTRANSLATED
assign_permissions: 'Assign permissions', // UNTRANSLATED
create_role_title: 'Create Role', // UNTRANSLATED
'역할은 사용자가 무엇을 할 수 있는지를 결정하는 권한을 포함해요. RBAC는 사용자에게 특정 행동에 대한 접근 권한을 부여하기 위해 역할을 사용해요.',
create: '역할 생성',
role_name: '역할 이름',
role_description: '설명',
role_name_placeholder: '역할 이름을 입력하세요',
role_description_placeholder: '역할 설명을 입력하세요',
assigned_users: '할당된 사용자',
assign_permissions: '권한 할당',
create_role_title: '역할 생성',
create_role_description:
'Create and manage roles for your applications. Roles contain collections of permissions and can be assigned to users.', // UNTRANSLATED
create_role_button: 'Create Role', // UNTRANSLATED
role_created: 'The role {{name}} has been successfully created!', // UNTRANSLATED
search: 'Search by role name, description or ID', // UNTRANSLATED
'당신의 애플리케이션을 위한 역할을 생성하고 관리해요. 역할은 권한들의 모음을 포함하며 사용자에게 할당될 수 있어요.',
create_role_button: '역할 생성',
role_created: '역할 {{name}}이 성공적으로 생성되었어요!',
search: '역할 이름, 설명, ID로 검색',
};
export default roles;

View file

@ -1,6 +1,6 @@
const session_expired = {
title: '세션 만료',
subtitle: '세션이 만료되었거나, 끊겼어요. 다시 로그인해주세요.',
subtitle: '세션이 만료되었거나, 끊겼어요. 다시 로그인해 주세요.',
button: '다시 로그인하기',
};

View file

@ -1,6 +1,6 @@
const settings = {
title: '설정',
description: '전체 설정을 관리해보세요.',
description: '전체 설정을 관리해 보세요.',
settings: '설정',
custom_domain: '커스텀 도메인',
language: '언어',
@ -12,12 +12,12 @@ const settings = {
change_password: '비밀번호 변경',
change_password_description: '현재 계정의 비밀번호를 변경할 수 있어요.',
change_modal_title: '계정 비밀번호 변경',
change_modal_description: '새로 변경된 비밀번호로 로그인해야해요.',
change_modal_description: '새로 변경된 비밀번호로 로그인해야 해요.',
new_password: '새로운 비밀번호',
new_password_placeholder: '새로운 비밀번호를 입력해주세요.',
new_password_placeholder: '새로운 비밀번호를 입력해 주세요.',
confirm_password: '비밀번호 확인',
confirm_password_placeholder: '비밀번호를 다시 입력해주세요.',
password_changed: '비밀번호 변경되었어요!',
confirm_password_placeholder: '비밀번호를 다시 입력해 주세요.',
password_changed: '비밀번호 변경되었어요!',
};
export default settings;

View file

@ -1,15 +1,15 @@
const sign_in_exp = {
title: '로그인 경험',
description: '로그인 화면을 브랜드에 맞게 커스터마이징 그리고 실시간으로 확인해보세요.',
description: '로그인 화면을 브랜드에 맞게 커스터마이징하고 실시간으로 확인해 보세요.',
tabs: {
branding: '브랜딩',
sign_up_and_sign_in: '회원가입/로그인',
others: '기타',
},
welcome: {
title: '가이드를 따라, 필수 설정을 빠르게 수정해보세요.',
title: '가이드를 따라, 필수 설정을 빠르게 수정해 보세요.',
get_started: '시작하기',
apply_remind: '이 계정이 관리하는 모든 앱의 로그인 경험이 수정되는 것을 주의해주세요.',
apply_remind: '이 계정이 관리하는 모든 앱의 로그인 경험이 수정되는 것을 주의해 주세요.',
},
color: {
title: '색상',
@ -32,7 +32,7 @@ const sign_in_exp = {
dark_logo_image_url: '앱 로고 이미지 URL (다크 모드)',
dark_logo_image_url_placeholder: 'https://your.cdn.domain/logo-dark.png',
slogan: '슬로건',
slogan_placeholder: 'Unleash your creativity',
slogan_placeholder: '상상력을 펼쳐 보세요',
},
sign_up_and_sign_in: {
identifiers: '회원가입 ID',
@ -40,7 +40,7 @@ const sign_in_exp = {
identifiers_phone: '휴대전화번호',
identifiers_username: '사용자 이름',
identifiers_email_or_sms: '이메일 주소 또는 휴대전화번호',
identifiers_none: '해당없음',
identifiers_none: '해당 없음',
and: '그리고',
or: '또는',
sign_up: {
@ -52,18 +52,18 @@ const sign_in_exp = {
authentication_description: '선택된 모든 작업들은 사용자가 모두 마무리 해야 해요.',
set_a_password_option: '비밀번호 생성',
verify_at_sign_up_option: '회원가입 인증',
social_only_creation_description: '(이것은 소셜 전용 계정 생성에 적용요.)',
social_only_creation_description: '(이것은 소셜 전용 계정 생성에 적용요.)',
},
sign_in: {
title: '로그인',
sign_in_identifier_and_auth: '로그인을 위한 ID 그리고 인증 설정',
description:
'사용자는 주어진 옵션 중에 아무 방법으로 로그인할 수 있어요. 주어진 옵션을 드래그하여 조절해주세요.',
'사용자는 주어진 옵션 중에 아무 방법으로 로그인할 수 있어요. 주어진 옵션을 드래그하여 조절해 주세요.',
add_sign_in_method: '로그인 방법 추가',
password_auth: '비밀번호',
verification_code_auth: '인증 코드',
auth_swap_tip: '아래 옵션을 변경하여 흐름에 가장 먼저 나타나는 옵션을 설정할 수 있어요.',
require_auth_factor: '반드시 최소 하나의 인증 방법을 선택해야해요.',
require_auth_factor: '반드시 최소 하나의 인증 방법을 선택해야 해요.',
},
social_sign_in: {
title: '소셜 로그인',
@ -78,14 +78,14 @@ const sign_in_exp = {
},
},
tip: {
set_a_password: '사용자 이름에 대한 고유한 암호 집합은 필수요.',
set_a_password: '사용자 이름에 대한 고유한 암호 집합은 필수요.',
verify_at_sign_up:
'현재 확인된 이메일만 지원해요. 유효성 검사가 없는 경우 사용자 기반에 품질이 낮은 전자 메일 주소가 많이 포함되어 있을 수 있어요.',
password_auth:
'회원가입 중에 비밀번호를 설정하는 옵션을 사용으로 설정했기 때문에 이 옵션은 필수요.',
'회원가입 중에 비밀번호를 설정하는 옵션을 사용으로 설정했기 때문에 이 옵션은 필수요.',
verification_code_auth:
'가입 시 인증 코드를 제공하는 옵션만 활성화했기 때문에 이것은 필수에요. 회원가입에서 비밀번호 설정이 허용되면 이 옵션을 취소할 수 있습니다.',
delete_sign_in_method: '{{identifier}}를 필수 ID로 설정했기 때문에 이 옵션은 필수요.',
'가입 시 인증 코드를 제공하는 옵션만 활성화했기 때문에 이것은 필수예요. 회원가입에서 비밀번호 설정이 허용되면 이 옵션을 취소할 수 있어요.',
delete_sign_in_method: '{{identifier}}를 필수 ID로 설정했기 때문에 이 옵션은 필수요.',
},
},
others: {
@ -99,13 +99,13 @@ const sign_in_exp = {
title: '언어',
enable_auto_detect: '자동 감지 활성화',
description:
'사용자의 언어 설정을 감지하고, 해당 언어로 자동으로 변경해요. 직접 번역하여 새로운 언어를 추가할 수 도 있어요.',
'사용자의 언어 설정을 감지하고, 해당 언어로 자동으로 변경해요. 직접 번역하여 새로운 언어를 추가할 수도 있어요.',
manage_language: '언어 관리',
default_language: '기본 언어',
default_language_description_auto:
'사용자의 언어를 지원하지 않을 경우, 기본 언어로 사용자에게 보여줘요.',
default_language_description_fixed:
'자동 감지가 꺼져있을 경우, 기본 언어로만 사용자에게 보여줘요. 더욱 나은 경험을 위해, 자동 감지를 켜주세요.',
'자동 감지가 꺼져있을 경우, 기본 언어로만 사용자에게 보여줘요. 더욱 나은 경험을 위해, 자동 감지를 켜 주세요.',
},
manage_language: {
title: '언어 관리',
@ -119,9 +119,9 @@ const sign_in_exp = {
clear_all_tip: '모든 값 삭제',
unsaved_description: '이 페이지를 벗어날 경우, 변경점이 적용되지 않아요.',
deletion_tip: '언어 삭제',
deletion_title: '추가된 언어를 삭제할건가요?',
deletion_description: '삭제된 후에 사용자들 더 이상 해당 언어로 볼 수 없어요.',
default_language_deletion_title: '기본 언어는 삭제 수 없어요.',
deletion_title: '추가된 언어를 삭제할요?',
deletion_description: '삭제된 후에 사용자들 더 이상 해당 언어로 볼 수 없어요.',
default_language_deletion_title: '기본 언어는 삭제 수 없어요.',
default_language_deletion_description:
'{{language}} 언어는 기본 언어로 설정되어 있어요. 기본 언어를 변경한 후에 삭제할 수 있어요.',
},
@ -129,24 +129,24 @@ const sign_in_exp = {
title: '고급 옵션',
enable_user_registration: '회원가입 활성화',
enable_user_registration_description:
'사용자 등록을 활성화하거나 비활성화합니다. 비활성화된 후에도 사용자를 관리 콘솔에 추가할 수 있지만 사용자는 더 이상 로그인 UI를 통해 계정을 설정할 수 없어요.',
'사용자 등록을 활성화하거나 비활성화해요. 비활성화된 후에도 사용자를 관리 콘솔에 추가할 수 있지만 사용자는 더 이상 로그인 UI를 통해 계정을 설정할 수 없어요.',
},
},
setup_warning: {
no_connector: '',
no_connector_sms:
'SMS 연동 설정이 아직 없습니다. SMS 연동 구성을 완료할 때까지 로그인할 수 없습니다. <a>{{link}}</a> "연동"으로',
'SMS 연동 설정이 아직 없어요. SMS 연동 구성을 완료할 때까지 로그인할 수 없어요. <a>{{link}}</a> "연동"으로',
no_connector_email:
'이메일 연동 설정이 아직 없습니다. 이메일 연동 구성을 완료할 때까지 로그인할 수 없습니다. <a>{{link}}</a> "연동"으로',
'이메일 연동 설정이 아직 없어요. 이메일 연동 구성을 완료할 때까지 로그인할 수 없어요. <a>{{link}}</a> "연동"으로',
no_connector_social:
'소셜 연동 설정이 아직 없습니다. 소셜 연동 구성을 완료할 때까지 로그인할 수 없습니다. <a>{{link}}</a> "연동"으로',
'소셜 연동 설정이 아직 없어요. 소셜 연동 구성을 완료할 때까지 로그인할 수 없어요. <a>{{link}}</a> "연동"으로',
no_added_social_connector:
'보다 많은 소셜 연동들을 설정하여, 고객에게 보다 나은 경험을 제공해보세요.',
setup_link: '설정',
},
save_alert: {
description:
'새 로그인 및 회원가입 방법을 추가하고 있어요. 모든 사용자가 새 설정의 영향을 받을 수 있어요. 정말로 하실건가요?',
'새 로그인 및 회원가입 방법을 추가하고 있어요. 모든 사용자가 새 설정의 영향을 받을 수 있어요. 정말로 추가할까요?',
before: '이전',
after: '이후',
sign_up: '회원가입',

View file

@ -2,7 +2,7 @@ const tab_sections = {
overview: '살펴보기',
resource_management: '리소스 관리',
user_management: '사용자 관리',
access_control: 'Access Control', // UNTRANSLATED
access_control: '접근 제어',
help_and_support: '고객센터',
};

View file

@ -7,7 +7,7 @@ const tabs = {
connectors: '연동',
users: '사용자 관리',
audit_logs: 'Audit 기록',
roles: 'Roles', // UNTRANSLATED
roles: '역할',
docs: '문서',
contact_us: '연락처',
settings: '설정',

View file

@ -14,8 +14,8 @@ const user_details = {
congratulations: '해당 사용자의 비밀번호가 성공적으로 초기화 되었어요.',
new_password: '새로운 비밀번호:',
},
tab_settings: 'Settings', // UNTRANSLATED
tab_roles: 'Roles', // UNTRANSLATED
tab_settings: '설정',
tab_roles: '역할',
tab_logs: '사용자 기록',
settings: '설정',
settings_description:
@ -40,22 +40,22 @@ const user_details = {
},
suspended: '정지됨',
roles: {
name_column: 'Role', // UNTRANSLATED
description_column: 'Description', // UNTRANSLATED
assign_button: 'Assign Roles', // UNTRANSLATED
name_column: '역할',
description_column: '설명',
assign_button: '역할 할당',
delete_description:
'This action will remove this role from this user. The role itself will still exist, but it will no longer be associated with this user.', // UNTRANSLATED
deleted: '{{name}} was successfully removed from this user!', // UNTRANSLATED
assign_title: 'Assign roles to {{name}}', // UNTRANSLATED
assign_subtitle: 'Authorize {{name}} one or more roles', // UNTRANSLATED
assign_role_field: 'Assign roles', // UNTRANSLATED
role_search_placeholder: 'Search by role name', // UNTRANSLATED
added_text: '{{value, number}} added', // UNTRANSLATED
assigned_user_count: '{{value, number}} users', // UNTRANSLATED
confirm_assign: 'Assign roles', // UNTRANSLATED
role_assigned: 'Successfully assigned role(s)', // UNTRANSLATED
search: 'Search by role name, description or ID', // UNTRANSLATED
empty: 'No role available', // UNTRANSLATED
'이 행동은 사용자에게서 이 역할을 삭제할 거예요. 역할은 그대로 존재하지만, 이 사용자에게 더 이상 할당되지 않아요.',
deleted: '{{name}}이/가 성공적으로 이 사용자에게서 제거되었어요!',
assign_title: '{{name}}에게 역할 할당',
assign_subtitle: '{{name}}에게 하나 이상의 역할을 할당하세요',
assign_role_field: '역할 할당',
role_search_placeholder: '역할 이름으로 검색',
added_text: '{{value, number}}이/가 추가되었어요',
assigned_user_count: '사용자 {{value, number}}명',
confirm_assign: '역할 할당',
role_assigned: '역할을 성공적으로 할당했어요',
search: '역할 이름, 설명, ID로 검색',
empty: '역할 없음',
},
};

View file

@ -3,14 +3,14 @@ const users = {
subtitle: '사용자의 신원을 추가, 삭제, 수정, 조회하여 관리해보세요.',
create: '사용자 추가',
user_name: '사용자',
application_name: '어플리케이션으로 부터',
application_name: '어플리케이션으로부터',
latest_sign_in: '최근 로그인 시각',
create_form_username: '사용자 이름',
create_form_password: '비밀번호',
create_form_name: '이름',
unnamed: '이름없음',
search: 'Search by name, email, phone or username', // UNTRANSLATED
check_user_detail: 'Check user detail', // UNTRANSLATED
search: '이름, 이메일, 전화번호, ID로 검색',
check_user_detail: '사용자 상세정보 확인',
};
export default users;

View file

@ -1,7 +1,7 @@
const welcome = {
title: '관리자 콘솔에 오신 것을 환영해요',
description:
'관리자 콘솔를 통해 프로그래밍 없이 Logto를 관리할 수 있어요. 새로 계정을 생성하고, Logto를 당신의 회사에 알맞게 수정해보세요.',
'관리자 콘솔를 통해 프로그래밍 없이 Logto를 관리할 수 있어요. 새로 계정을 생성하고, Logto를 당신의 회사에 알맞게 수정해 보세요.',
create_account: '계정 생성',
};