"""Korean -> English translation tables for EnCar (partner-provided basis). Источник переводов от партнёра. Этот файл — эталон: бренды и модели берём отсюда в первую очередь. Держим секционные словари плюс один плоский для простых поисков. """ from __future__ import annotations ENCAR_KO_EN_TABLES: dict[str, dict[str, str]] = { "makers": { "포르쉐": "Porsche", "메르세데스-벤츠": "Mercedes-Benz", "메르세데스 벤츠": "Mercedes-Benz", "벤츠": "Mercedes-Benz", "메르세데스-AMG": "Mercedes-AMG", "메르세데스 AMG": "Mercedes-AMG", "AMG": "AMG", "BMW": "BMW", "아우디": "Audi", "폭스바겐": "Volkswagen", "렉서스": "Lexus", "토요타": "Toyota", "닛산": "Nissan", "인피니티": "Infiniti", "혼다": "Honda", "마쯔다": "Mazda", "스바루": "Subaru", "미쓰비시": "Mitsubishi", "랜드로버": "Land Rover", "재규어": "Jaguar", "지프": "Jeep", "볼보": "Volvo", "푸조": "Peugeot", "르노": "Renault", "미니": "MINI", "로터스": "Lotus", "벤틀리": "Bentley", "롤스로이스": "Rolls-Royce", "람보르기니": "Lamborghini", "페라리": "Ferrari", "맥라렌": "McLaren", "애스턴마틴": "Aston Martin", "애스톤마틴": "Aston Martin", "마세라티": "Maserati", "코닉세그": "Koenigsegg", "파가니": "Pagani", "부가티": "Bugatti", "캐딜락": "Cadillac", "쉐보레": "Chevrolet", "포드": "Ford", "링컨": "Lincoln", "크라이슬러": "Chrysler", "닷지": "Dodge", "램": "Ram", "테슬라": "Tesla", "제네시스": "Genesis", "현대": "Hyundai", "기아": "Kia", "KG모빌리티": "KG Mobility", "쌍용": "SsangYong", "알파로메오": "Alfa Romeo", "피아트": "Fiat", "시트로엥": "Citroen", "스마트": "Smart", "폴스타": "Polestar", "리비안": "Rivian", "루시드": "Lucid", "BYD": "BYD", "지리": "Geely", "홍치": "Hongqi", "이스즈": "Isuzu", }, "models": { "718 박스터": "718 Boxster", "718 카이맨": "718 Cayman", "911": "911", "911 카브리올레": "911 Cabriolet", "카이엔": "Cayenne", "카이엔 쿠페": "Cayenne Coupe", "파나메라": "Panamera", "파나메라 스포츠 투리스모": "Panamera Sport Turismo", "마칸": "Macan", "타이칸": "Taycan", "타이칸 크로스 투리스모": "Taycan Cross Turismo", "918 스파이더": "918 Spyder", "카레라 GT": "Carrera GT", "718 스파이더": "718 Spyder", "박스터": "Boxster", "카이맨": "Cayman", "4.0 스파이더": "4.0 Spyder", "C 클래스": "C-Class", "E 클래스": "E-Class", "S 클래스": "S-Class", "A 클래스": "A-Class", "B 클래스": "B-Class", "CLA": "CLA", "CLS": "CLS", "SL": "SL", "SLK": "SLK", "G 클래스": "G-Class", "GLA": "GLA", "GLB": "GLB", "GLC": "GLC", "GLE": "GLE", "GLS": "GLS", "AMG GT": "AMG GT", "AMG GT 4도어 쿠페": "AMG GT 4-Door Coupe", "V 클래스": "V-Class", "1 시리즈": "1 Series", "2 시리즈": "2 Series", "3 시리즈": "3 Series", "4 시리즈": "4 Series", "5 시리즈": "5 Series", "6 시리즈": "6 Series", "7 시리즈": "7 Series", "8 시리즈": "8 Series", "M2": "M2", "M3": "M3", "M4": "M4", "M5": "M5", "M8": "M8", "X1": "X1", "X2": "X2", "X3": "X3", "X4": "X4", "X5": "X5", "X6": "X6", "X7": "X7", "Z4": "Z4", "A3": "A3", "A4": "A4", "A5": "A5", "A6": "A6", "A7": "A7", "A8": "A8", "Q3": "Q3", "Q5": "Q5", "Q7": "Q7", "Q8": "Q8", "R8": "R8", "TT": "TT", "고스트": "Ghost", "팬텀": "Phantom", "레이스": "Wraith", "던": "Dawn", "컬리넌": "Cullinan", "스펙터": "Spectre", "벤테이가": "Bentayga", "컨티넨탈 GT": "Continental GT", "플라잉스퍼": "Flying Spur", "우라칸": "Huracan", "아벤타도르": "Aventador", "우루스": "Urus", "레부엘토": "Revuelto", "로마": "Roma", "포르토피노": "Portofino", "SF90 스트라달레": "SF90 Stradale", "F8 트리뷰토": "F8 Tributo", "콰트로포르테": "Quattroporte", "기블리": "Ghibli", "르반떼": "Levante", "그란투리스모": "GranTurismo", "반퀴시": "Vanquish", "밴티지": "Vantage", "DB11": "DB11", "DB12": "DB12", "DBS": "DBS", }, "body_types": { "세단": "Sedan", "쿠페": "Coupe", "컨버터블": "Convertible", "카브리올레": "Cabriolet", "오픈카": "Open Top", "해치백": "Hatchback", "왜건": "Wagon", "스테이션왜건": "Station Wagon", "SUV": "SUV", "크로스오버": "Crossover", "픽업트럭": "Pickup Truck", "밴": "Van", "미니밴": "Minivan", "트럭": "Truck", "쿠페형 SUV": "Coupe SUV", "기타": "Other", }, "fuel_types": { "가솔린": "Gasoline", "디젤": "Diesel", "경유": "Diesel", "하이브리드": "Hybrid", "가솔린 하이브리드": "Gasoline Hybrid", "플러그인 하이브리드": "Plug-in Hybrid", "전기": "Electric", "전기차": "Electric", "수소": "Hydrogen", "LPG": "LPG", "LNG": "LNG", "가솔린+전기": "Gasoline + Electric", "가솔린 + 전기": "Gasoline + Electric", }, "transmissions": { "수동": "Manual", "오토": "Automatic", "자동": "Automatic", "자동변속": "Automatic", "세미오토": "Semi-automatic", "CVT": "CVT", "듀얼클러치": "Dual-clutch", }, "sell_types": { "일반": "General", "리스": "Lease", "렌트": "Rent", "할부": "Installment", }, "lease_types": { "운용리스": "Operating Lease", "금융리스": "Financial Lease", }, "regions": { "서울": "Seoul", "부산": "Busan", "인천": "Incheon", "대구": "Daegu", "대전": "Daejeon", "광주": "Gwangju", "울산": "Ulsan", "세종": "Sejong", "경기": "Gyeonggi", "강원": "Gangwon", "충북": "Chungbuk", "충남": "Chungnam", "전북": "Jeonbuk", "전남": "Jeonnam", "경북": "Gyeongbuk", "경남": "Gyeongnam", "제주": "Jeju", }, "dealer_companies": { "(주)기억": "Gieok Co., Ltd.", "(주)네바퀴": "Four Wheels Co., Ltd.", "(주)에이스타모터스": "A-Star Motors Co., Ltd.", "(주)우진 오토모빌": "Woojin Automobile Co., Ltd.", "(주)지온컴퍼니": "Zion Company Co., Ltd.", "(주)플로시모터스": "Flossy Motors Co., Ltd.", "㈜오토핸즈": "Auto Hands Co., Ltd.", "GD카": "GD Car", "MK모터스": "MK Motors", "꿈차": "Dream Car", "마이카4": "My Car 4", "블루오토": "Blue Auto", "세영모빌리티(주)": "Seyoung Mobility Co., Ltd.", "스마일자동차": "Smile Motors", "오토링크": "Auto Link", "오토핸즈": "Auto Hands", "우리들모터스": "Woorideul Motors", "주식회사 모터바겐": "Motorwagen Co., Ltd.", "주식회사 아이오토스": "iAutos Co., Ltd.", "주식회사이들컴퍼니": "Ideul Company Co., Ltd.", "카메이트": "Car Mate", "카톡모터스": "Katok Motors", "카피디": "Car PD", "포르쉐 인증 중고차 센터 성수": "Porsche Certified Used Car Center Seongsu", "포르쉐인증중고차센터성수": "Porsche Certified Used Car Center Seongsu", }, "dealer_names": { "고준용": "Go Jun-yong", "공민중": "Gong Min-jung", "김경진": "Kim Gyeong-jin", "김명진": "Kim Myeong-jin", "김민수": "Kim Min-su", "김성언": "Kim Seong-eon", "김성진": "Kim Seong-jin", "김영균": "Kim Yeong-gyun", "김완섭": "Kim Wan-seop", "김현진": "Kim Hyeon-jin", "김형진": "Kim Hyeong-jin", "김호영": "Kim Ho-yeong", "문명기": "Moon Myeong-gi", "박원석": "Park Won-seok", "박재현": "Park Jae-hyeon", "방지윤": "Bang Ji-yun", "송슬기": "Song Seul-gi", "신영철": "Shin Yeong-cheol", "신호진": "Shin Ho-jin", "양시언": "Yang Si-eon", "양태규": "Yang Tae-gyu", "윤지완": "Yoon Ji-wan", "이경민": "Lee Gyeong-min", "이재욱": "Lee Jae-uk", "임종현": "Lim Jong-hyeon", "임형욱": "Lim Hyeong-uk", "전태준": "Jeon Tae-jun", "정상필": "Jeong Sang-pil", "조경식": "Jo Gyeong-sik", "조승재": "Jo Seung-jae", "조환성": "Jo Hwan-seong", "차상훈": "Cha Sang-hun", "최경욱": "Choi Gyeong-uk", "하상열": "Ha Sang-yeol", "허지훈": "Heo Ji-hun", }, } def _build_flat_map() -> dict[str, str]: result: dict[str, str] = {} for section in ENCAR_KO_EN_TABLES.values(): result.update(section) return result ENCAR_KO_EN_TRANSLATIONS: dict[str, str] = _build_flat_map() def translate_encar_ko_to_en(value: str, section: str | None = None) -> str: """Перевод корейского термина Encar на английский. Если задан `section`, используется только словарь этой секции. Иначе — плоский объединённый словарь. """ if section is not None: return ENCAR_KO_EN_TABLES.get(section, {}).get(value, value) return ENCAR_KO_EN_TRANSLATIONS.get(value, value)