@whiteslove/parsing-lexicon 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +137 -0
- package/index.d.ts +375 -0
- package/package.json +75 -0
- package/src/central-asia-locations.js +211 -0
- package/src/central-asia.js +233 -0
- package/src/contact.d.ts +44 -0
- package/src/contact.js +159 -0
- package/src/countries.js +175 -0
- package/src/country-context.d.ts +10 -0
- package/src/country-context.js +22 -0
- package/src/currency.d.ts +14 -0
- package/src/currency.js +66 -0
- package/src/geo.js +169 -0
- package/src/geography-central-asia.js +42 -0
- package/src/geography-detection.d.ts +14 -0
- package/src/geography-detection.js +64 -0
- package/src/geography-display.d.ts +13 -0
- package/src/geography-display.js +113 -0
- package/src/geography.js +210 -0
- package/src/hiring-advanced.js +147 -0
- package/src/hiring-candidate-fields.d.ts +9 -0
- package/src/hiring-candidate-fields.js +92 -0
- package/src/hiring-context.d.ts +64 -0
- package/src/hiring-context.js +412 -0
- package/src/hiring-language-extensions.d.ts +19 -0
- package/src/hiring-language-extensions.js +139 -0
- package/src/hiring-languages.js +135 -0
- package/src/hiring-location-fields.d.ts +3 -0
- package/src/hiring-location-fields.js +53 -0
- package/src/hiring-professions-ro.js +191 -0
- package/src/hiring-professions.js +437 -0
- package/src/hiring-requirements.d.ts +16 -0
- package/src/hiring-requirements.js +170 -0
- package/src/hiring-salary-context.d.ts +27 -0
- package/src/hiring-salary-context.js +76 -0
- package/src/hiring-semantics.d.ts +29 -0
- package/src/hiring-semantics.js +218 -0
- package/src/hiring-skills.d.ts +21 -0
- package/src/hiring-skills.js +315 -0
- package/src/hiring-source-aliases.d.ts +32 -0
- package/src/hiring-source-aliases.js +186 -0
- package/src/hiring-source-semantics.d.ts +31 -0
- package/src/hiring-source-semantics.js +293 -0
- package/src/hiring-temporal.d.ts +15 -0
- package/src/hiring-temporal.js +67 -0
- package/src/hiring-vacancy-fields.d.ts +5 -0
- package/src/hiring-vacancy-fields.js +23 -0
- package/src/hiring-work-semantics.d.ts +34 -0
- package/src/hiring-work-semantics.js +72 -0
- package/src/hiring.js +180 -0
- package/src/housing-address.d.ts +18 -0
- package/src/housing-address.js +210 -0
- package/src/housing-context.d.ts +36 -0
- package/src/housing-context.js +183 -0
- package/src/housing-features.js +30 -0
- package/src/housing-intent.d.ts +9 -0
- package/src/housing-intent.js +132 -0
- package/src/housing-listing-fields.js +131 -0
- package/src/housing-money.d.ts +7 -0
- package/src/housing-money.js +102 -0
- package/src/housing-source-aliases.d.ts +8 -0
- package/src/housing-source-aliases.js +51 -0
- package/src/housing-structured.d.ts +55 -0
- package/src/housing-structured.js +219 -0
- package/src/housing.js +200 -0
- package/src/index.js +44 -0
- package/src/kz-location-extensions.js +307 -0
- package/src/landmarks.js +21 -0
- package/src/lexicon-core.js +58 -0
- package/src/location-merge.js +106 -0
- package/src/locations.js +456 -0
- package/src/money-core.d.ts +10 -0
- package/src/money-core.js +81 -0
- package/src/money-lexicon.d.ts +5 -0
- package/src/money-lexicon.js +79 -0
- package/src/money.js +154 -0
- package/src/normalization.js +384 -0
- package/src/odesa-metropolitan.js +145 -0
- package/src/romania-geography.js +47 -0
- package/src/tashkent-colloquial.js +72 -0
- package/src/tashkent-housing-geography.d.ts +38 -0
- package/src/tashkent-housing-geography.js +211 -0
- package/src/tashkent-pois.js +215 -0
- package/src/tashkent-residential-complexes.js +272 -0
- package/src/ua-location-extensions-major.js +118 -0
- package/src/ua-location-extensions-metro.js +9 -0
- package/src/ua-location-extensions-regional.js +246 -0
- package/src/ua-secondary-cities.d.ts +2 -0
- package/src/ua-secondary-cities.js +57 -0
- package/src/ukraine.js +75 -0
- package/src/uz-location-extensions.js +259 -0
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { locationEntries } from './location-merge.js';
|
|
2
|
+
|
|
3
|
+
const city = ({ districts = [], microdistricts = [], residentialComplexes = [], landmarks = [], metro = [] }) => Object.freeze({
|
|
4
|
+
...(districts.length ? { districts: locationEntries(districts) } : {}),
|
|
5
|
+
...(microdistricts.length ? { microdistricts: locationEntries(microdistricts) } : {}),
|
|
6
|
+
...(residentialComplexes.length ? { residentialComplexes: locationEntries(residentialComplexes) } : {}),
|
|
7
|
+
...(landmarks.length ? { landmarks: locationEntries(landmarks) } : {}),
|
|
8
|
+
...(metro.length ? { metro: locationEntries(metro) } : {}),
|
|
9
|
+
});
|
|
10
|
+
|
|
11
|
+
export const UA_SECONDARY_CITY_NAMES = Object.freeze([
|
|
12
|
+
['Fastiv', 'Фастів', 'Фастов'], ['Obukhiv', 'Обухів', 'Обухов'], ['Vasylkiv', 'Васильків', 'Васильков'], ['Boyarka', 'Боярка'], ['Ukrainka', 'Українка', 'Украинка'], ['Pereiaslav', 'Переяслав', 'Переяслав-Хмельницький', 'Переяслав-Хмельницкий'], ['Yahotyn', 'Яготин'], ['Slavutych', 'Славутич'],
|
|
13
|
+
['Chuhuiv', 'Чугуїв', 'Чугуев'], ['Lozova', 'Лозова', 'Лозовая'], ['Izium', 'Ізюм', 'Изюм'], ['Kupiansk', 'Куп’янськ', 'Купянск'], ['Balakliia', 'Балаклія', 'Балаклея'], ['Merefa', 'Мерефа'], ['Liubotyn', 'Люботин'], ['Zlatopil', 'Златопіль', 'Златополь', 'Первомайський', 'Первомайский'],
|
|
14
|
+
['Izmail', 'Ізмаїл', 'Измаил'], ['Chornomorsk', 'Чорноморськ', 'Черноморск', 'Іллічівськ', 'Ильичевск'], ['Pivdenne', 'Південне', 'Южне', 'Южный'], ['Bilhorod-Dnistrovskyi', 'Білгород-Дністровський', 'Белгород-Днестровский', 'Аккерман'], ['Podilsk', 'Подільськ', 'Подольск', 'Котовськ', 'Котовск'], ['Balta', 'Балта'], ['Reni', 'Рені', 'Рени'], ['Kiliia', 'Кілія', 'Килия'], ['Bolhrad', 'Болград'], ['Artsyz', 'Арциз'], ['Tatarbunary', 'Татарбунари', 'Татарбунары'], ['Berezivka', 'Березівка', 'Березовка'],
|
|
15
|
+
['Samar', 'Самар', 'Новомосковськ', 'Новомосковск'], ['Zhovti Vody', 'Жовті Води', 'Жёлтые Воды', 'Желтые Воды'], ['Marhanets', 'Марганець', 'Марганец'], ['Pokrov', 'Покров', 'Орджонікідзе', 'Орджоникидзе'], ['Synelnykove', 'Синельникове', 'Синельниково'], ['Ternivka', 'Тернівка', 'Терновка'], ['Pershotravensk', 'Першотравенськ', 'Першотравенск'], ['Vilnohirsk', 'Вільногірськ', 'Вольногорск'],
|
|
16
|
+
['Sambir', 'Самбір', 'Самбор'], ['Truskavets', 'Трускавець', 'Трускавец'], ['Boryslav', 'Борислав'], ['Sheptytskyi', 'Шептицький', 'Шептицкий', 'Червоноград'], ['Novoiavorivsk', 'Новояворівськ', 'Новояворовск'], ['Stebnyk', 'Стебник'], ['Zhovkva', 'Жовква', 'Жолква'], ['Zolochiv', 'Золочів', 'Золочев'], ['Horodok', 'Городок'], ['Brody', 'Броди', 'Броды'],
|
|
17
|
+
['Khust', 'Хуст'], ['Berehove', 'Берегове', 'Берегово'], ['Vynohradiv', 'Виноградів', 'Виноградов'], ['Tiachiv', 'Тячів', 'Тячев'], ['Rakhiv', 'Рахів', 'Рахов'], ['Chop', 'Чоп'], ['Svaliava', 'Свалява'], ['Irshava', 'Іршава', 'Иршава'],
|
|
18
|
+
['Yaremche', 'Яремче'], ['Nadvirna', 'Надвірна', 'Надворная'], ['Dolyna', 'Долина'], ['Bolekhiv', 'Болехів', 'Болехов'], ['Kosiv', 'Косів', 'Косов'], ['Sniatyn', 'Снятин'], ['Tlumach', 'Тлумач'],
|
|
19
|
+
['Chortkiv', 'Чортків', 'Чортков'], ['Kremenets', 'Кременець', 'Кременец'], ['Berezhany', 'Бережани', 'Бережаны'], ['Zbarazh', 'Збараж'], ['Buchach', 'Бучач'], ['Terebovlia', 'Теребовля'],
|
|
20
|
+
['Kovel', 'Ковель'], ['Novovolynsk', 'Нововолинськ', 'Нововолынск'], ['Volodymyr', 'Володимир', 'Владимир-Волынский'], ['Kivertsi', 'Ківерці', 'Киверцы'], ['Rozhyshche', 'Рожище'],
|
|
21
|
+
['Dubno', 'Дубно'], ['Varash', 'Вараш', 'Кузнецовськ', 'Кузнецовск'], ['Ostroh', 'Острог'], ['Kostopil', 'Костопіль', 'Костополь'], ['Sarny', 'Сарни', 'Сарны'], ['Zdolbuniv', 'Здолбунів', 'Здолбунов'], ['Berezne', 'Березне', 'Березно'],
|
|
22
|
+
['Berdychiv', 'Бердичів', 'Бердичев'], ['Korosten', 'Коростень'], ['Zviahel', 'Звягель', 'Новоград-Волинський', 'Новоград-Волынский'], ['Malyn', 'Малин'], ['Korostyshiv', 'Коростишів', 'Коростышев'],
|
|
23
|
+
['Zhmerynka', 'Жмеринка'], ['Mohyliv-Podilskyi', 'Могилів-Подільський', 'Могилев-Подольский'], ['Khmilnyk', 'Хмільник', 'Хмельник'], ['Haisyn', 'Гайсин'], ['Koziatyn', 'Козятин'], ['Ladyzhyn', 'Ладижин'], ['Tulchyn', 'Тульчин'], ['Bar', 'Бар'], ['Bershad', 'Бершадь'],
|
|
24
|
+
['Smila', 'Сміла', 'Смела'], ['Zolotonosha', 'Золотоноша'], ['Kaniv', 'Канів', 'Канев'], ['Zvenyhorodka', 'Звенигородка'], ['Talne', 'Тальне', 'Тальное'],
|
|
25
|
+
['Horishni Plavni', 'Горішні Плавні', 'Горишние Плавни', 'Комсомольськ', 'Комсомольск'], ['Myrhorod', 'Миргород'], ['Lubny', 'Лубни', 'Лубны'], ['Hadiach', 'Гадяч'], ['Karlivka', 'Карлівка', 'Карловка'],
|
|
26
|
+
['Konotop', 'Конотоп'], ['Shostka', 'Шостка'], ['Okhtyrka', 'Охтирка', 'Ахтырка'], ['Romny', 'Ромни', 'Ромны'], ['Hlukhiv', 'Глухів', 'Глухов'], ['Lebedyn', 'Лебедин'], ['Trostianets', 'Тростянець', 'Тростянец'],
|
|
27
|
+
['Nizhyn', 'Ніжин', 'Нежин'], ['Pryluky', 'Прилуки'], ['Bakhmach', 'Бахмач'], ['Novhorod-Siverskyi', 'Новгород-Сіверський', 'Новгород-Северский'], ['Koriukivka', 'Корюківка', 'Корюковка'], ['Mena', 'Мена'],
|
|
28
|
+
['Svitlovodsk', 'Світловодськ', 'Светловодск'], ['Znamianka', 'Знам’янка', 'Знаменка'], ['Novoukrainka', 'Новоукраїнка', 'Новоукраинка'], ['Haivoron', 'Гайворон'], ['Pomichna', 'Помічна', 'Помошная'],
|
|
29
|
+
['Pervomaisk', 'Первомайськ', 'Первомайск'], ['Voznesensk', 'Вознесенськ', 'Вознесенск'], ['Yuzhnoukrainsk', 'Южноукраїнськ', 'Южноукраинск'], ['Novyi Buh', 'Новий Буг', 'Новый Буг'], ['Bashtanka', 'Баштанка'], ['Ochakiv', 'Очаків', 'Очаков'],
|
|
30
|
+
['Nova Kakhovka', 'Нова Каховка', 'Новая Каховка'], ['Kakhovka', 'Каховка'], ['Oleshky', 'Олешки', 'Алёшки', 'Цюрупинск'], ['Henichesk', 'Генічеськ', 'Геническ'], ['Skadovsk', 'Скадовськ', 'Скадовск'], ['Beryslav', 'Берислав'], ['Hola Prystan', 'Гола Пристань'],
|
|
31
|
+
['Melitopol', 'Мелітополь', 'Мелитополь'], ['Berdiansk', 'Бердянськ', 'Бердянск'], ['Enerhodar', 'Енергодар', 'Энергодар'], ['Tokmak', 'Токмак'], ['Polohy', 'Пологи'], ['Dniprorudne', 'Дніпрорудне', 'Днепрорудное'], ['Orikhiv', 'Оріхів', 'Орехов'],
|
|
32
|
+
['Mariupol', 'Маріуполь', 'Мариуполь'], ['Kramatorsk', 'Краматорськ', 'Краматорск'], ['Sloviansk', 'Слов’янськ', 'Славянск'], ['Bakhmut', 'Бахмут', 'Артемівськ', 'Артемовск'], ['Pokrovsk', 'Покровськ', 'Красноармійськ', 'Красноармейск'], ['Kostiantynivka', 'Костянтинівка', 'Константиновка'], ['Druzhkivka', 'Дружківка', 'Дружковка'], ['Myrnohrad', 'Мирноград', 'Димитров'], ['Toretsk', 'Торецьк', 'Торецк', 'Дзержинськ', 'Дзержинск'], ['Avdiivka', 'Авдіївка', 'Авдеевка'], ['Volnovakha', 'Волноваха'],
|
|
33
|
+
['Luhansk', 'Луганськ', 'Луганск'], ['Sievierodonetsk', 'Сіверськодонецьк', 'Сєвєродонецьк', 'Северодонецк'], ['Lysychansk', 'Лисичанськ', 'Лисичанск'], ['Alchevsk', 'Алчевськ', 'Алчевск'], ['Rubizhne', 'Рубіжне', 'Рубежное'], ['Starobilsk', 'Старобільськ', 'Старобельск'], ['Kreminna', 'Кремінна', 'Кременная'], ['Svatove', 'Сватове', 'Сватово'],
|
|
34
|
+
]);
|
|
35
|
+
|
|
36
|
+
export const UA_SECONDARY_LOCATION_EXTENSIONS = Object.freeze({
|
|
37
|
+
Izmail: city({ microdistricts: [['Tsentr','Центр'],['Krepost','Крепость'],['Kopana Balka','Копана Балка'],['Broska','Броска']], landmarks: [['Suvorov Avenue','проспект Незалежності','проспект Суворова'],['Izmail Fortress','Ізмаїльська фортеця','Измаильская крепость'],['Danube Embankment','набережна Дунаю','набережная Дуная'],['Izmail Port','Ізмаїльський порт','Измаильский порт']] }),
|
|
38
|
+
Chornomorsk: city({ microdistricts: [['Tsentr','Центр'],['Primorskyi','Приморський','Приморский'],['Molodizhnyi','Молодіжний','Молодежный']], landmarks: [['Primorskyi Park','Приморський парк','Приморский парк'],['Chornomorsk Port','порт Чорноморськ','порт Черноморск'],['Central Beach','Центральний пляж','Центральный пляж']] }),
|
|
39
|
+
Pivdenne: city({ microdistricts: [['Tsentr','Центр'],['Primorskyi','Приморський','Приморский']], landmarks: [['Pivdennyi Port','порт Південний','порт Южный'],['Primorskyi Park','Приморський парк','Приморский парк']] }),
|
|
40
|
+
'Bilhorod-Dnistrovskyi': city({ microdistricts: [['Tsentr','Центр'],['Vokzal','Вокзал'],['Portovyi','Портовий','Портовый']], landmarks: [['Akkerman Fortress','Аккерманська фортеця','Аккерманская крепость'],['Dnister Estuary','Дністровський лиман','Днестровский лиман']] }),
|
|
41
|
+
Chuhuiv: city({ microdistricts: [['Tsentr','Центр'],['Aviatsiinyi','Авіаційний','Авиационный'],['Bashkyrivka','Башкирівка','Башкировка']], landmarks: [['Chuhuiv Museum','музей Рєпіна','музей Репина'],['Central Square','Центральна площа','Центральная площадь']] }),
|
|
42
|
+
Lozova: city({ microdistricts: [['Tsentr','Центр'],['Avylivka','Авилівка','Авиловка'],['Domakha','Домаха']], landmarks: [['Lozova Railway Station','вокзал Лозова','вокзал Лозовая'],['Victory Park','парк Перемоги','парк Победы']] }),
|
|
43
|
+
Mukachevo: city({ microdistricts: [['Tsentr','Центр'],['Rosvyhovo','Росвигово'],['Pidhoriany','Підгоряни','Подгоряны'],['Palanok','Паланок']], residentialComplexes: [['Central Park','ЖК Central Park'],['Rosvyhivskyi','ЖК Росвигівський','ЖК Росвиговский']], landmarks: [['Palanok Castle','замок Паланок'],['Latorica Embankment','набережна Латориці','набережная Латорицы'],['City Hall','Ратуша']] }),
|
|
44
|
+
Uman: city({ microdistricts: [['Tsentr','Центр'],['Sofiivska Slobidka','Софіївська Слобідка','Софиевская Слободка'],['Babanske','Бабанське','Бабанское']], landmarks: [['Sofiyivka Park','парк Софіївка','парк Софиевка'],['Rabbi Nachman Tomb','могила цадика Нахмана','могила Рабби Нахмана'],['Central Square','Центральна площа','Центральная площадь']] }),
|
|
45
|
+
Kovel: city({ microdistricts: [['Tsentr','Центр'],['Vokzalnyi','Вокзальний','Вокзальный'],['Silsilmash','Сільмаш','Сельмаш']], landmarks: [['Kovel Railway Station','Ковельський вокзал','Ковельский вокзал'],['Lesia Ukrainka Park','парк Лесі Українки','парк Леси Украинки']] }),
|
|
46
|
+
Dubno: city({ microdistricts: [['Tsentr','Центр'],['Bazar','Базар'],['Surmychi','Сурмичі','Сурмичи']], landmarks: [['Dubno Castle','Дубенський замок','Дубенский замок'],['Ikva River','річка Іква','река Иква']] }),
|
|
47
|
+
Berdychiv: city({ microdistricts: [['Tsentr','Центр'],['Korolenka','Короленка','Короленко'],['Chervona Hora','Червона Гора','Красная Гора']], landmarks: [['Berdychiv Monastery','монастир босих кармелітів','монастырь босых кармелитов'],['Railway Station','залізничний вокзал','железнодорожный вокзал']] }),
|
|
48
|
+
Korosten: city({ microdistricts: [['Tsentr','Центр'],['Pashyny','Пашини','Пашины'],['Cholivka','Чолівка','Чоловка']], landmarks: [['Drevlianskyi Park','Древлянський парк','Древлянский парк'],['Skelia Bunker','об’єкт Скеля','объект Скала'],['Railway Station','вокзал Коростень']] }),
|
|
49
|
+
Myrhorod: city({ microdistricts: [['Tsentr','Центр'],['Kurort','Курорт'],['Lychanka','Личанка']], landmarks: [['Myrhorod Resort','курорт Миргород'],['Khorol River','річка Хорол','река Хорол'],['Central Park','Центральний парк','Центральный парк']] }),
|
|
50
|
+
Kaniv: city({ microdistricts: [['Tsentr','Центр'],['Dniprovska','Дніпровська','Днепровская']], landmarks: [['Taras Hill','Тарасова гора'],['Shevchenko Museum','музей Шевченка','музей Шевченко'],['Dnipro Embankment','набережна Дніпра','набережная Днепра']] }),
|
|
51
|
+
Melitopol: city({ microdistricts: [['Tsentr','Центр'],['Mikrorayon','Мікрорайон','Микрорайон'],['Novo-Melitopol','Новий Мелітополь','Новый Мелитополь'],['Kiziiarskyi','Кизиярський','Кизиярский']], landmarks: [['Victory Square','площа Перемоги','площадь Победы'],['Melitopol Railway Station','вокзал Мелітополь','вокзал Мелитополь']] }),
|
|
52
|
+
Berdiansk: city({ microdistricts: [['Tsentr','Центр'],['Kosa','Коса','Бердянська коса','Бердянская коса'],['Lisky','Ліски','Лиски'],['AKZ','АКЗ']], landmarks: [['Berdiansk Spit','Бердянська коса','Бердянская коса'],['Primorska Square','Приморська площа','Приморская площадь'],['Sea Port','морський порт','морской порт']] }),
|
|
53
|
+
Kramatorsk: city({ microdistricts: [['Tsentr','Центр'],['Sotsmisto','Соцмісто','Соцгород'],['Lazurnyi','Лазурний','Лазурный'],['Parkova','Паркова','Парковая']], landmarks: [['Peace Square','площа Миру','площадь Мира'],['Bernatskyi Garden','сад Бернацького','сад Бернацкого'],['Kramatorsk Railway Station','вокзал Краматорськ','вокзал Краматорск']] }),
|
|
54
|
+
Sloviansk: city({ microdistricts: [['Tsentr','Центр'],['Artema','Артема'],['Cherivkivka','Черевківка','Черевковка'],['Khymik','Хімік','Химик']], landmarks: [['Sloviansk Resort','Слов’янський курорт','Славянский курорт'],['Salt Lakes','Солоні озера','Соленые озера'],['Railway Station','вокзал Слов’янськ','вокзал Славянск']] }),
|
|
55
|
+
Mariupol: city({ districts: [['Tsentralnyi','Центральний','Центральный'],['Livoberezhnyi','Лівобережний','Левобережный'],['Kalmiuskyi','Кальміуський','Кальмиусский'],['Prymorskyi','Приморський','Приморский']], microdistricts: [['Tsentr','Центр'],['Skhidnyi','Східний','Восточный'],['Cheremushky','Черемушки'],['Port City','Порт-Сіті','Порт-Сити']], landmarks: [['Drama Theatre','Драматичний театр','Драмтеатр'],['Azovstal','Азовсталь'],['Mariupol Sea Port','Маріупольський морський порт','Мариупольский морской порт'],['City Garden','Міський сад','Городской сад']] }),
|
|
56
|
+
Luhansk: city({ districts: [['Artemivskyi','Артемівський','Артемовский'],['Kamianobridskyi','Кам’янобрідський','Каменнобродский'],['Leninskyi','Ленінський','Ленинский'],['Zhovtnevyi','Жовтневий','Жовтневый']], microdistricts: [['Tsentr','Центр'],['Skhidnyi','Східний','Восточный'],['Yuvileinyi','Ювілейний','Юбилейный'],['Haidara','Гайдара']], landmarks: [['Teatralna Square','Театральна площа','Театральная площадь'],['Railway Station','залізничний вокзал','железнодорожный вокзал'],['Gorky Park','парк Горького']] }),
|
|
57
|
+
});
|
package/src/ukraine.js
ADDED
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { UA_CITIES } from './geography.js';
|
|
2
|
+
import { findCanonical } from './normalization.js';
|
|
3
|
+
import { UA_SECONDARY_CITY_NAMES } from './ua-secondary-cities.js';
|
|
4
|
+
|
|
5
|
+
const HISTORICAL_CITY_ALIASES = Object.freeze({
|
|
6
|
+
Dnipro: ['Днепропетровск', 'Дніпропетровськ', 'Dnipropetrovsk'],
|
|
7
|
+
Kropyvnytskyi: ['Кировоград', 'Кіровоград', 'Kirovograd', 'Kirovohrad', 'Єлисаветград', 'Елисаветград', 'Yelisavetgrad'],
|
|
8
|
+
Rivne: ['Ровно', 'Rovno', 'Rowne'],
|
|
9
|
+
'Ivano-Frankivsk': ['Ивано-Франковск', 'Ivano-Frankovsk', 'Станіслав', 'Станислав', 'Stanislav', 'Stanisławów'],
|
|
10
|
+
Khmelnytskyi: ['Хмельницкий', 'Проскурів', 'Проскуров', 'Proskuriv'],
|
|
11
|
+
Chernihiv: ['Чернигов', 'Chernigov'],
|
|
12
|
+
Mykolaiv: ['Николаев', 'Nikolaev', 'Nikolayev'],
|
|
13
|
+
Odesa: ['Одесса', 'Odessa'],
|
|
14
|
+
Kharkiv: ['Харьков', 'Kharkov'],
|
|
15
|
+
Kyiv: ['Киев', 'Kiev'],
|
|
16
|
+
Lviv: ['Львов', 'Lvov', 'Lwów', 'Lemberg'],
|
|
17
|
+
Zaporizhzhia: ['Запорожье', 'Zaporozhye', 'Zaporozhie'],
|
|
18
|
+
'Kryvyi Rih': ['Кривой Рог', 'Krivoy Rog', 'Krivyi Rig'],
|
|
19
|
+
Chernivtsi: ['Черновцы', 'Chernovtsy', 'Czernowitz', 'Cernăuți'],
|
|
20
|
+
Uzhhorod: ['Uzhgorod', 'Ungvar', 'Ungvár'],
|
|
21
|
+
Ternopil: ['Тернополь', 'Tarnopol', 'Tarnopil'],
|
|
22
|
+
Lutsk: ['Луцк', 'Luck'],
|
|
23
|
+
Kremenchuk: ['Кременчуг', 'Kremenchug'],
|
|
24
|
+
'Bila Tserkva': ['Белая Церковь', 'Belaya Tserkov', 'Bila Cerkva'],
|
|
25
|
+
Vinnytsia: ['Винница', 'Vinnitsa', 'Vinnytsya', 'Vinica'],
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
function flattenAliases(entry) {
|
|
29
|
+
return Object.values(entry.aliases || {}).flat().filter(Boolean);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
function cityEntry(canonical, aliases) {
|
|
33
|
+
return Object.freeze({ canonical, aliases: Object.freeze({ all: Object.freeze([...new Set([canonical, ...aliases])]) }), country: 'UA' });
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export const UA_ADDITIONAL_CITIES = Object.freeze([
|
|
37
|
+
cityEntry('Kamianske', ["Кам'янське", 'Каменское', 'Kamianske', 'Дніпродзержинськ', 'Днепродзержинск', 'Dniprodzerzhynsk']),
|
|
38
|
+
cityEntry('Vyshneve', ['Вишневе', 'Вишневое', 'Vyshneve']),
|
|
39
|
+
cityEntry('Boryspil', ['Бориспіль', 'Борисполь', 'Boryspil']),
|
|
40
|
+
cityEntry('Vyshhorod', ['Вишгород', 'Вышгород', 'Vyshhorod']),
|
|
41
|
+
cityEntry('Oleksandriia', ['Олександрія', 'Александрия', 'Oleksandriia', 'Alexandria Ukraine']),
|
|
42
|
+
cityEntry('Pavlohrad', ['Павлоград', 'Pavlohrad', 'Pavlograd']),
|
|
43
|
+
cityEntry('Nikopol', ['Нікополь', 'Никополь', 'Nikopol']),
|
|
44
|
+
cityEntry('Drohobych', ['Дрогобич', 'Дрогобыч', 'Drohobych']),
|
|
45
|
+
cityEntry('Stryi', ['Стрий', 'Stryi', 'Stryj']),
|
|
46
|
+
cityEntry('Kolomyia', ['Коломия', 'Коломыя', 'Kolomyia', 'Kolomea']),
|
|
47
|
+
cityEntry('Kalush', ['Калуш', 'Kalush']),
|
|
48
|
+
cityEntry('Kamianets-Podilskyi', ["Кам'янець-Подільський", 'Каменец-Подольский', 'Kamianets-Podilskyi', 'Kamenets-Podolsky']),
|
|
49
|
+
...UA_SECONDARY_CITY_NAMES.map(([canonical, ...aliases]) => cityEntry(canonical, aliases)),
|
|
50
|
+
]);
|
|
51
|
+
|
|
52
|
+
export const UA_CITY_CATALOG = Object.freeze([
|
|
53
|
+
...UA_CITIES.map((item) => cityEntry(item.canonical, [
|
|
54
|
+
...flattenAliases(item),
|
|
55
|
+
...(HISTORICAL_CITY_ALIASES[item.canonical] || []),
|
|
56
|
+
])),
|
|
57
|
+
...UA_ADDITIONAL_CITIES,
|
|
58
|
+
]);
|
|
59
|
+
|
|
60
|
+
export const UA_CITY_HISTORICAL_ALIASES = HISTORICAL_CITY_ALIASES;
|
|
61
|
+
|
|
62
|
+
export function canonicalUkraineCity(value) {
|
|
63
|
+
return findCanonical(value, UA_CITY_CATALOG)?.canonical || null;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
export const UA_LOCATION_TERMS = Object.freeze({
|
|
67
|
+
locality: Object.freeze(['г.', 'г', 'город', 'місто', 'м.', 'city']),
|
|
68
|
+
district: Object.freeze(['район', 'р-н', 'рн', 'р.', 'р-н города', 'район міста', 'district']),
|
|
69
|
+
microdistrict: Object.freeze(['микрорайон', 'мкр', 'мкр.', 'мкр-н', 'мкрн', 'микро-р', 'мікрорайон', 'мікр.', 'neighborhood', 'neighbourhood']),
|
|
70
|
+
massif: Object.freeze(['жилмассив', 'жил. массив', 'ж/м', 'жм', 'житловий масив', 'житломасив']),
|
|
71
|
+
residentialComplex: Object.freeze(['ЖК', 'жк', 'ж.к.', 'жилой комплекс', 'житловий комплекс', 'residential complex', 'residence', 'residences']),
|
|
72
|
+
park: Object.freeze(['парк', 'park', 'сквер', 'сад', 'гай', 'роща']),
|
|
73
|
+
mall: Object.freeze(['ТРЦ', 'ТЦ', 'торговый центр', 'торговельний центр', 'торгово-розважальний центр', 'mall', 'shopping mall']),
|
|
74
|
+
metro: Object.freeze(['метро', 'ст. м.', 'ст.м.', 'станция метро', 'станція метро', 'subway', 'metro']),
|
|
75
|
+
});
|
|
@@ -0,0 +1,259 @@
|
|
|
1
|
+
import { aliasesToRegex } from './normalization.js';
|
|
2
|
+
|
|
3
|
+
function entry(name, aliases = [], meta = {}) {
|
|
4
|
+
const all = [...new Set([name, ...aliases].filter(Boolean))];
|
|
5
|
+
return Object.freeze({ ...meta, canonical: name, name, type: meta.type || meta.entityType, aliases: Object.freeze(all), re: aliasesToRegex(all) });
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
function entries(rows = [], defaults = {}) {
|
|
9
|
+
return Object.freeze(rows.map((row) => {
|
|
10
|
+
if (Array.isArray(row)) return entry(row[0], row.slice(1), defaults);
|
|
11
|
+
const { name, aliases = [], ...meta } = row;
|
|
12
|
+
return entry(name, aliases, { ...defaults, ...meta });
|
|
13
|
+
}));
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
function city({ districts = [], mahallas = [], microdistricts = [], localAreas = [], residentialComplexes = [], landmarks = [], suburbs = [] }) {
|
|
17
|
+
return Object.freeze({
|
|
18
|
+
...(districts.length ? { districts: entries(districts, { entityType: 'district', country: 'UZ' }) } : {}),
|
|
19
|
+
...(mahallas.length ? { mahallas: entries(mahallas, { entityType: 'mahalla', country: 'UZ' }) } : {}),
|
|
20
|
+
...(microdistricts.length ? { microdistricts: entries(microdistricts, { entityType: 'microdistrict', country: 'UZ' }) } : {}),
|
|
21
|
+
...(localAreas.length ? { localAreas: entries(localAreas, { entityType: 'local_area', country: 'UZ' }) } : {}),
|
|
22
|
+
...(residentialComplexes.length ? { residentialComplexes: entries(residentialComplexes, { entityType: 'residential_complex', country: 'UZ' }) } : {}),
|
|
23
|
+
...(landmarks.length ? { landmarks: entries(landmarks, { entityType: 'poi', country: 'UZ' }) } : {}),
|
|
24
|
+
...(suburbs.length ? { suburbs: entries(suburbs, { entityType: 'suburb', country: 'UZ' }) } : {}),
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
const numberedMicrodistricts = (numbers) => numbers.map((n) => [`${n} microdistrict`, `${n} микрорайон`, `${n}-mikrorayon`, `${n} mikrorayon`, `${n} мкр`]);
|
|
29
|
+
|
|
30
|
+
const NUKUS_MFY_NAMES = Object.freeze([
|
|
31
|
+
'Bes tobe','Jipek jolı','Juwazshı','Nurli bostan','Qarataw','Janabazar','Bereket','Qizil qum','Jayxun','Gúzar','Jeke terek','Isbilermenler aymagi','Nawbahar','Darbent','Nawkan baǵ','Temir jol','Nawriz','Abat makan',"Jasil bag'","Shig'is",'Uzin kol','Amanliq guzari','Allaniyaz Qaxraman','Shimbay guzari','Ata makan','Jolshilar','Qutli qonis','Dosliq guzari','Hawa joli',"Botanika bag'i",'Taslaq','Qum awil','Qutli makan','Aydin jol','Shimbay shayxana','Sarbinaz','Eliabat','Shayirlar awili','Nur','Tungish qonis','Qurilisshi','Almazar','Garezsizlik','Gulzar','Ornek','Jana zaman','Qos kol','Aq otaw','Baqshiliq','Vatanparvar','Dosliq','Tinishliq','Xaliqlar dosligi','Anasay','Boz awil','Jas awlad','Qos bulaq','Jiydeli baysin','Aq jagis','Kok ozek','Amudarya','Tele oray','Shadli awil','Kattagar','Samanbay','Altin jagis','Gone qala','Turan','Qumbiz awil','Nawpir','Bayterek',
|
|
32
|
+
]);
|
|
33
|
+
|
|
34
|
+
const NUKUS_MFY_ALIASES = Object.freeze({
|
|
35
|
+
'Jipek jolı': ['Jipek joli','Jipek Joli','Жипек жолы','Жипек жол','Шёлковый путь'],
|
|
36
|
+
'Qizil qum': ['Qizilqum','Qizil Qum','Кызылкум','Қызылқум','Кизилкум'],
|
|
37
|
+
Jayxun: ['Jayhun','Jeyhun','Джейхун','Жайхун'],
|
|
38
|
+
Nawbahar: ['Navbahor','Navbahar','Навбахор','Навбахар'],
|
|
39
|
+
Nawriz: ["Navro'z",'Navruz','Навруз','Наўрыз'],
|
|
40
|
+
'Temir jol': ["Temir yo'l",'Темир жол','Темир йўл','Железнодорожный'],
|
|
41
|
+
Dosliq: ["Do'stlik",'Dustlik','Дослык','Дустлик','Дўстлик'],
|
|
42
|
+
"Shig'is": ['Shygys','Sharq','Шығыс','Шарк','Восток','Восточный'],
|
|
43
|
+
"Jasil bag'": ['Jasıl baǵ',"Yashil bog'",'Яшил бог','Зелёный сад'],
|
|
44
|
+
Garezsizlik: ['Gárezsizlik','Mustaqillik','Ғәрезсизлик','Независимость'],
|
|
45
|
+
'Xaliqlar dosligi': ["Xalqlar do'stligi",'Халклар дустлиги','Халықлар дослығы','Дружба народов'],
|
|
46
|
+
"Botanika bag'i": ["Botanika bog'i",'Ботаника багы','Ботанический сад'],
|
|
47
|
+
Samanbay: ['Samanboy','Саманбай','Саманбой'],
|
|
48
|
+
Bayterek: ['Baiterek','Байтирек','Байтерек','Бәйтерек'],
|
|
49
|
+
});
|
|
50
|
+
|
|
51
|
+
const nukusMahallas = NUKUS_MFY_NAMES.map((name) => ({
|
|
52
|
+
name,
|
|
53
|
+
aliases: [name, ...(NUKUS_MFY_ALIASES[name] || []), `${name} MFY`, `${name} mahallasi`],
|
|
54
|
+
language: 'kaa_lat',
|
|
55
|
+
confidence: 'official',
|
|
56
|
+
}));
|
|
57
|
+
|
|
58
|
+
export const UZ_LOCATION_EXTENSIONS = Object.freeze({
|
|
59
|
+
Samarkand: city({
|
|
60
|
+
mahallas: [
|
|
61
|
+
{ name: "Navro'z", aliases: ['Navroz','Navruz','Навруз','Наврўз'], confidence: 'official' },
|
|
62
|
+
{ name: 'Sattepo', aliases: ['Sattepa','Саттепо','Саттепа'], confidence: 'official' },
|
|
63
|
+
{ name: 'Shirin', aliases: ['Ширин'], confidence: 'official' },
|
|
64
|
+
{ name: 'Chilkuduk', aliases: ['Chilkuduq','Чилкудук','Чилқудуқ'], confidence: 'official' },
|
|
65
|
+
{ name: "Cho'pon ota", aliases: ['Chopon ota','Чупон Ота','Чопон Ота','Чўпон ота'], confidence: 'official' },
|
|
66
|
+
],
|
|
67
|
+
localAreas: [
|
|
68
|
+
['Siyob','Сиаб','Сиёб','Сиабский','Сиабский район'],['Registon','Регистан','Registan'],['Center','Центр','Марказ','Markaz'],['University area','Университетский','Университет','Университет хиёбони'],
|
|
69
|
+
['University Boulevard','Бульвар','Бульвар Университетский'],['Dahbed','Дагбитская','Дагбит','Дахбед'],['Sattepo','Саттепо','Саттепа'],['Motrid','Мотрид'],['Kimyogarlar','Кимёгарлар','Химгородок','Химики'],
|
|
70
|
+
['Railway Station area','Вокзал','Темир йўл вокзали','Железнодорожный вокзал'],['Rudakiy','Рудакий','Рудаки'],['Gagarin area','Гагарина','Гагарин'],['Mirzo Ulugbek area','Мирзо Улугбек',"Mirzo Ulug'bek"],
|
|
71
|
+
['Spitamen','Спитамен','Спитаменшох'],['Panjakent Road','Панжикентская','Пенджикентская','Panjakent'],['Bogishamol','Багишамал','Боғишамол',"Bog'ishamol"],['Qorasuv','Карасу','Корасув'],
|
|
72
|
+
['Geofizika','Геофизика'],['Sugdiyona','Согдиана','Согдиёна',"Sug'diyona"],['Super Market area','Супер','Супер рынок'],['Dinamo area','Динамо','Динамо стадион'],['Afrosiyob','Афросиаб','Афросиёб'],
|
|
73
|
+
["So'zangaron",'Сузангаран','Сузангарон'],['Buyuk Ipak Yoli','Великий Шёлковый путь',"Buyuk Ipak yo'li"],
|
|
74
|
+
],
|
|
75
|
+
landmarks: [
|
|
76
|
+
['Registan Square','Регистан','Registon','Площадь Регистан'],['Gur-e Amir','Гур-Эмир',"Go'ri Amir",'Гўри Амир'],['Shohi Zinda','Шахи-Зинда','Шоҳи Зинда'],['Bibi-Khanym','Биби-Ханым','Bibixonim','Бибихоним'],
|
|
77
|
+
['Siyob Bazaar','Сиабский базар','Siyob bozori','Сиёб бозори'],['Afrosiyob','Афросиаб','Афросиёб'],['Ulugbek Observatory','Обсерватория Улугбека',"Ulug'bek rasadxonasi"],['University Boulevard','Университетский бульвар','Universitet xiyoboni'],
|
|
78
|
+
['Eternal City','Вечный город','Boqiy shahar'],['Silk Road Samarkand'],['Samarkand City','Самарканд Сити'],['Samarkand International Airport','Международный аэропорт Самарканд','Samarqand xalqaro aeroporti','SKD'],
|
|
79
|
+
['Samarkand Railway Station','Самарканд вокзал','Samarqand vokzali'],['Central Park','Центральный парк',"Markaziy bog'"],['Alisher Navoiy Park','Парк Алишера Навои',"Alisher Navoiy bog'i"],['Youth Park','Парк Молодёжи',"Yoshlar bog'i"],
|
|
80
|
+
['Yangi Ozbekiston Park',"Yangi O'zbekiston bog'i",'Парк Новый Узбекистан'],['Family Park'],
|
|
81
|
+
],
|
|
82
|
+
}),
|
|
83
|
+
|
|
84
|
+
Namangan: city({
|
|
85
|
+
districts: [['Davlatobod','Davlatobod tumani','Давлатабадский район','Давлатобод','Давлатобод тумани','Davlatabad'],['Yangi Namangan','Yangi Namangan tumani','Янги Наманган','Янги Наманган тумани','Новый Наманган','Yangi Namangan shaharchasi']],
|
|
86
|
+
mahallas: [
|
|
87
|
+
{ name: 'Obihayot', aliases: ['Обихаёт'], confidence: 'official' },
|
|
88
|
+
{ name: 'Porloq', aliases: ['Порлок'], parent: 'Davlatobod', confidence: 'official' },
|
|
89
|
+
{ name: 'Mustaqillikning 5 yilligi', aliases: ['Мустакилликнинг 5 йиллиги'], parent: 'Yangi Namangan', confidence: 'official' },
|
|
90
|
+
],
|
|
91
|
+
microdistricts: numberedMicrodistricts([1,2,3,4,5,6]),
|
|
92
|
+
localAreas: [['Center','Центр','Markaz'],['North','Северный','Shimoliy'],['Chortoq area','Чартакский','Chortoq'],['Uychi area','Уйчи','Uychi'],['Turaqorgon area','Туракурган',"To'raqo'rg'on"],['Galaba',"G'alaba",'Галаба','Ғалаба'],['Bobur','Бобур','Bobur'],['Navoiy','Навои','Navoiy'],['Islom Karimov','Ислам Каримов'],['Qoqimboyshox','Кукумбой','Қўқимбойшох'],['Afrosiyob','Афросиаб'],['Boburshox','Бобуршох'],['Ibrat','Ибрат'],['Nodira','Нодира']],
|
|
93
|
+
landmarks: [['Bobur Park',"Bobur bog'i",'Парк Бабура'],['Namangan International Airport','Namangan xalqaro aeroporti','Международный аэропорт Наманган','NMA'],['Namangan Railway Station','Namangan vokzali','Наманган вокзал'],['Namangan Chorsu','Chorsu bozori','Чорсу'],['Valley of Legends','Afsonalar vodiysi','Долина легенд'],['Yangi Ozbekiston Park',"Yangi O'zbekiston bog'i",'Новый Узбекистан']],
|
|
94
|
+
}),
|
|
95
|
+
|
|
96
|
+
Andijan: city({
|
|
97
|
+
mahallas: [
|
|
98
|
+
{ name: "Bo'ston", aliases: ['Bostan','Buston','Бустон','Бўстон','Бостан'], confidence: 'official' },
|
|
99
|
+
{ name: 'Obod', aliases: ['Обод'], confidence: 'official' },
|
|
100
|
+
{ name: 'Temur Malik', aliases: ['Timur Malik','Темур Малик','Тимур Малик'], confidence: 'official' },
|
|
101
|
+
{ name: "Qoraqo'rg'on", aliases: ['Qorakurgan','Каракурган','Коракургон','Қорақўрғон'], confidence: 'official' },
|
|
102
|
+
{ name: "Ma'rifat", aliases: ['Marifat','Маърифат','Марифат'], confidence: 'official' },
|
|
103
|
+
{ name: 'Mustaqillikning 21 yilligi', aliases: ['Мустакилликнинг 21 йиллиги'], confidence: 'official' },
|
|
104
|
+
{ name: 'Birlashgan', aliases: ['Бирлашган','Объединённый'], confidence: 'official' },
|
|
105
|
+
{ name: "Taxtako'prik", aliases: ['Taxtakoprik','Тахтакуприк','Тахтакўприк'], confidence: 'official' },
|
|
106
|
+
],
|
|
107
|
+
localAreas: [['Center','Центр','Markaz'],['Old City','Eski shahar','Эски шахар','Старый город'],['New City','Yangi shahar','Янги шахар','Новый город'],['Bobur','Бобур'],['Navoiy','Навои'],['Mashinasozlar','Машинасозлар'],['North','Северный микрорайон','Shimoliy'],['South-West','Юго-западный',"Janubi-g'arbiy"],['University area','Университетский'],['Railway Station area','Вокзал'],['Airport area','Аэропорт']],
|
|
108
|
+
landmarks: [['Central Farmers Market','Markaziy dehqon bozori','Центральный рынок','Марказий бозор'],['Yangi Bozor','Yangi bozor','Янги бозор','Новый рынок'],['Bobur Square','Bobur maydoni','площадь Бабура'],['Bobur Park',"Bobur bog'i",'Парк Бабура'],['Andijan State University','Andijon davlat universiteti','Андижанский государственный университет'],['Andijan Airport','Andijon aeroporti','Международный аэропорт Андижан'],['Andijan Railway Station','Andijon vokzali','Андижан вокзал']],
|
|
109
|
+
}),
|
|
110
|
+
|
|
111
|
+
Fergana: city({
|
|
112
|
+
mahallas: [{ name: "Ma'rifat", aliases: ['Marifat','Маърифат','Марифат'], confidence: 'official' }],
|
|
113
|
+
localAreas: [['Qirguli','Киргули','Қирғули','Киргили'],['Neftchi','Нефтчи','Нефтяник'],['Center','Markaz','Центр'],['Mustaqillik','Мустакиллик'],['Al-Fargoniy',"Al-Farg'oniy",'Аль-Фергани'],['Margilon Road',"Marg'ilon yo'li",'Маргиланское направление','Маргиланская'],['Railway Station area','Vokzal','Вокзал'],['Airport area','Aeroport','Аэропорт'],['University area','Университетский'],['Navoiy','Навои']],
|
|
114
|
+
landmarks: [['Al-Fargoniy Park',"Al-Farg'oniy bog'i",'парк Аль-Фергани'],['Independence Square','Mustaqillik maydoni','площадь Независимости'],['Fergana International Airport',"Farg'ona xalqaro aeroporti",'Ферганский международный аэропорт','FEG'],['Fergana Railway Station',"Farg'ona vokzali",'Фергана вокзал']],
|
|
115
|
+
}),
|
|
116
|
+
|
|
117
|
+
Bukhara: city({
|
|
118
|
+
mahallas: [
|
|
119
|
+
{ name: 'M. Narshaxiy', aliases: ['Narshaxiy','Наршахий','Наршахи','Muhammad Narshakhi'], confidence: 'official' },
|
|
120
|
+
{ name: 'S. Raximov nomli 17-MFY', aliases: ['S. Raximov','Sobir Raximov','Сабир Рахимов','Собир Рахимов','Рахимова','17-MFY','17 махалля'], confidence: 'official' },
|
|
121
|
+
],
|
|
122
|
+
localAreas: [['Old City','Eski shahar','Старый город','Эски шахар'],['Center','Markaz','Центр'],['Lyabi Hauz','Labi Hovuz','Ляби-Хауз','Ляби Хауз','Лаби Ҳовуз'],['Gijduvon Road',"G'ijduvon yo'li",'Гиждуванская'],['Gazli Road',"Gazli yo'li",'Газлийское шоссе'],['Railway Station area','Вокзал'],['Bukhara-1','Buxoro-1','Бухара-1'],['Bukhara-2','Buxoro-2','Бухара-2'],['University area','Университетский'],['Namozgoh','Намозгох'],['Sharq','Шарк'],['Mohi Xosa','Мохи-Хоса']],
|
|
123
|
+
landmarks: [['Bukhara Ark','Арк',"Ark qal'asi"],['Poi Kalon','Пои-Калян','Poi-Kalyan','Minorai Kalon','Минарет Калян'],['Lyabi Hauz','Ляби-Хауз','Labi Hovuz'],['Chor Minor','Чор-Минор'],['Bolo Hauz','Боло-Хауз','Bolo Hovuz'],['Samanids Mausoleum','Саманиды','Ismoil Somoniy maqbarasi'],['Sitorai Mohi Xosa','Ситораи Мохи Хоса'],['Bukhara International Airport','Buxoro xalqaro aeroporti','BHK']],
|
|
124
|
+
}),
|
|
125
|
+
|
|
126
|
+
Qarshi: city({
|
|
127
|
+
mahallas: [
|
|
128
|
+
{ name: 'Navo', aliases: ['Наво'], confidence: 'official' },
|
|
129
|
+
{ name: 'Gungon', aliases: ['Гунгон','Гунган'], confidence: 'official' },
|
|
130
|
+
{ name: 'Buyuk Turon', aliases: ['Буюк Турон','Великий Туран','Great Turan'], confidence: 'official' },
|
|
131
|
+
],
|
|
132
|
+
localAreas: [['Center','Markaz','Центр'],['Old City','Eski shahar','Старый город'],['Geolog','Геолог','Геологлар'],['Sharq','Шарк','Шарқ'],['Paxtazor','Пахтазор'],['Nasaf','Насаф'],['Qat','Кат'],['Railway Station area','Вокзал'],['Airport area','Аэропорт'],['University area','Университетский'],['Xonobod','Ханабад','Хонобод'],['Jayxun','Джейхун']],
|
|
133
|
+
landmarks: [['Odina Mosque','Odina masjidi','мечеть Одина'],['Kokgumbaz',"Ko'kgumbaz",'Кок-Гумбаз'],['Qarshi Bridge','Qarshi ko‘prigi','Каршинский мост'],['Nasaf Stadium','Nasaf stadioni','стадион Насаф'],['Karshi Airport','Qarshi xalqaro aeroporti','KSQ'],['Qarshi Railway Station','Qarshi vokzali']],
|
|
134
|
+
}),
|
|
135
|
+
|
|
136
|
+
Nukus: city({
|
|
137
|
+
mahallas: nukusMahallas,
|
|
138
|
+
localAreas: [['Center','Orayliq','Марказ','Центр'],['Dosliq','Дослык',"Do'stlik"],['Beruniy area','Беруний','Beruniy'],['Qizketken','Кызкеткен','Кызылкеткен'],['Nayman','Найман'],['Samanbay','Саманбай'],['Turtkul Road','Турткульское шоссе',"To'rtko'l"],['Khojeyli Road','Ходжейлийское шоссе',"Xo'jayli"],['Airport area','Аэропорт'],['Railway Station area','Вокзал']],
|
|
139
|
+
landmarks: [['Savitsky Museum','Государственный музей искусств им. Савицкого','Savitskiy muzeyi','I.V. Savitsky Museum'],['Berdakh Square','Berdax maydoni','площадь Бердаха'],['Karakalpak State University','Qoraqalpoq davlat universiteti','Каракалпакский государственный университет'],['Nukus Airport','Nukus aeroporti','Нукус аэропорт','NCU']],
|
|
140
|
+
}),
|
|
141
|
+
|
|
142
|
+
Urgench: city({
|
|
143
|
+
mahallas: [
|
|
144
|
+
{ name: 'Mustaqillik', aliases: ['Мустакиллик','Мустақиллик','Независимость'], confidence: 'official' },
|
|
145
|
+
{ name: 'Feruz', aliases: ['Феруз'], confidence: 'official' },
|
|
146
|
+
{ name: "Ma'rifat", aliases: ['Marifat','Маърифат','Марифат','Просвещение'], confidence: 'official' },
|
|
147
|
+
{ name: "Yuqori bog'", aliases: ['Yuqori bog','Юкори бог'], confidence: 'official' },
|
|
148
|
+
{ name: 'Al Xorazmiy', aliases: ['Al-Xorazmiy','Al Khwarizmi','Аль-Хорезми','Ал Хоразмий'], confidence: 'official' },
|
|
149
|
+
{ name: 'Besh mergan', aliases: ['Beshmergan','Беш Мерган','Бешмерган'], confidence: 'official' },
|
|
150
|
+
{ name: 'Shodlik', aliases: ['Шодлик'], confidence: 'official' },
|
|
151
|
+
{ name: 'Gulshan', aliases: ['Гулшан'], confidence: 'official' },
|
|
152
|
+
{ name: 'Gulzor', aliases: ['Гулзор'], confidence: 'official' },
|
|
153
|
+
{ name: 'Navbahor', aliases: ['Navbahar','Навбахор'], confidence: 'official' },
|
|
154
|
+
{ name: 'Avesto', aliases: ['Avesta','Авесто','Авеста'], confidence: 'official' },
|
|
155
|
+
{ name: "Mash'al", aliases: ['Mashal','Машъал'], confidence: 'official' },
|
|
156
|
+
{ name: 'Yangi hayot', aliases: ['Yangi xayot','Янги хаёт','Янги Ҳаёт','Новая жизнь'], confidence: 'official' },
|
|
157
|
+
{ name: 'Ashxobod', aliases: ['Ashgabat','Ashkhabad','Ашхабад','Ашхобод'], confidence: 'official' },
|
|
158
|
+
{ name: 'Jingovuz', aliases: ['Jingovuz MFY','Жинговуз','Джинговуз'], confidence: 'official' },
|
|
159
|
+
],
|
|
160
|
+
localAreas: [['Center','Markaz','Центр'],['Olimpiya','Олимпия'],['Railway Station area','Вокзал'],['Airport area','Аэропорт'],['University area','Университетский'],['Al-Xorazmiy area','Аль-Хорезми','Al-Xorazmiy'],['Navoiy','Навои'],['Gurlan Road','Гурленское шоссе','Gurlan'],['Khiva Road','Хивинское шоссе',"Xiva yo'li"]],
|
|
161
|
+
landmarks: [['Al-Xorazmiy Monument','памятник Аль-Хорезми','Al-Xorazmiy'],['Urgench State University','Urganch davlat universiteti','Ургенчский государственный университет'],['Urgench International Airport','Urganch xalqaro aeroporti','UGC'],['Urgench Railway Station','Urganch vokzali']],
|
|
162
|
+
}),
|
|
163
|
+
|
|
164
|
+
Kokand: city({
|
|
165
|
+
localAreas: [['Center','Центр','Markaz'],['Old City','Старый город','Eski shahar'],['Khudoyar Khan area','Худояр-хан','Xudoyorxon'],['Orda','Урда',"O'rda"],['Chorsu','Чорсу'],['Dangara Road','Дангара йули',"Dang'ara"],['Railway Station area','Вокзал']],
|
|
166
|
+
landmarks: [['Kokand Railway Station',"Qo'qon vokzali"],['Khudoyar Khan Palace','Дворец Худояр-хана','Xudoyorxon saroyi'],['Jami Mosque','Джами','Jome masjidi'],['Norbutabiy Madrasa','Мадраса Норбута-бия','Norbutabiy madrasasi'],['Kokand Bazaar',"Qo'qon bozori",'Кокандский базар']],
|
|
167
|
+
}),
|
|
168
|
+
|
|
169
|
+
Margilan: city({
|
|
170
|
+
localAreas: [['Center','Центр','Markaz'],['Old City','Старый город','Eski shahar'],['Kumtepa','Кумтепа'],['Yodgorlik','Ёдгорлик'],['Atlas','Атлас'],['Railway Station area','Вокзал']],
|
|
171
|
+
landmarks: [['Kumtepa Bazaar','Кумтепинский базар','Kumtepa bozori'],['Yodgorlik Silk Factory','Yodgorlik silk factory'],['Margilan Railway Station',"Marg'ilon vokzali"]],
|
|
172
|
+
}),
|
|
173
|
+
|
|
174
|
+
Jizzakh: city({
|
|
175
|
+
mahallas: [{ name: 'Ittifoq', aliases: ['Иттифок','Иттифоқ','Союз'], confidence: 'official' }],
|
|
176
|
+
localAreas: [['Center','Markaz','Центр'],['Sangzor','Сангзор'],['Zilol','Зилол'],['Hamid Olimjon','Хамид Алимджан'],['Navoiy','Навои'],['Railway Station area','Вокзал'],['Airport area','Аэропорт']],
|
|
177
|
+
landmarks: [['Jizzakh Pedagogical University','Jizzax davlat pedagogika universiteti','Джизакский педагогический университет'],['Sangzor River','Sangzor daryosi','река Сангзар']],
|
|
178
|
+
}),
|
|
179
|
+
|
|
180
|
+
Navoiy: city({
|
|
181
|
+
mahallas: [{ name: 'Guliston', aliases: ['Гулистон'], confidence: 'official' }],
|
|
182
|
+
microdistricts: numberedMicrodistricts([1,2,3,4,5,6,7,8,9,10,11,12]),
|
|
183
|
+
localAreas: [['Uzbekiston Massiv',"O'zbekiston massivi",'Узбекистон массив','Ўзбекистон массиви'],['Yangi Navoiy','Янги Навои','Янги Навоий'],['Center','Markaz','Центр'],['Sputnik','Спутник'],['Railway Station area','Вокзал']],
|
|
184
|
+
landmarks: [['Alisher Navoiy Park',"Alisher Navoiy bog'i",'парк Алишера Навои'],['Farhod Palace of Culture','Farhod madaniyat saroyi','Дворец культуры Фархад'],['Navoiy Mining and Metallurgical Company','Navoiy kon-metallurgiya kombinati','НГМК','NGMK','Навоийский ГМК'],['Navoi International Airport','Navoiy aeroporti','NVI']],
|
|
185
|
+
}),
|
|
186
|
+
|
|
187
|
+
Termez: city({
|
|
188
|
+
mahallas: [{ name: 'Farxod', aliases: ['Farhod','Фарход','Фархад'], confidence: 'official' }],
|
|
189
|
+
localAreas: [['Center','Markaz','Центр'],['Old Termez','Eski Termiz','Старый Термез'],['Northern Gate','Северные ворота'],['Railway Station area','Вокзал'],['Airport area','Аэропорт'],['University area','Университетский'],['Alpomish','Альпомиш'],["Navro'z",'Навруз'],['Qiziljar','Кызылжар','Қизилжар']],
|
|
190
|
+
landmarks: [['Old Termez','Старый Термез','Eski Termiz'],['Fayoztepa','Фаяз-Тепе'],['Karatepa','Кара-Тепе'],['Sultan Saodat','Султан-Саодат'],['Hakim at-Termiziy','Хаким ат-Термизи'],['Amu Darya','Амударья','Amudaryo'],['Afghanistan Friendship Bridge','Мост Дружбы'],['Termez International Airport','Termiz xalqaro aeroporti','TMJ']],
|
|
191
|
+
}),
|
|
192
|
+
|
|
193
|
+
Gulistan: city({
|
|
194
|
+
mahallas: [{ name: 'Sayqal', aliases: ['Сайкал','Сайқал'], confidence: 'official' }],
|
|
195
|
+
microdistricts: numberedMicrodistricts([1,2,3,4]),
|
|
196
|
+
localAreas: [['Center','Markaz','Центр'],['Dehqon Bazaar','Dehqon bozori','Дехканский рынок'],['University area','Университетский'],['Railway Station area','Вокзал']],
|
|
197
|
+
landmarks: [['Gulistan State University','Guliston davlat universiteti','Гулистанский государственный университет'],['Central Stadium','Markaziy stadion','Центральный стадион'],['Gulistan Railway Station','Guliston vokzali']],
|
|
198
|
+
}),
|
|
199
|
+
|
|
200
|
+
Chirchiq: city({
|
|
201
|
+
microdistricts: numberedMicrodistricts([1,2,3,4,5,6,7,8,9]),
|
|
202
|
+
localAreas: [['Center','Markaz','Центр'],['Yubileiny','Юбилейный'],['Khimik','Химик'],['KhimGorodok','Химгородок'],['Mashinostroitel','Машиностроитель'],['Troitsky','Троицкий'],['Railway Station area','Вокзал'],['Bochka','Бочка'],['Olympic area','Олимпийский']],
|
|
203
|
+
landmarks: [['Chirchiq River','Chirchiq daryosi','река Чирчик'],['Chirchiq Pedagogical University','Chirchiq davlat pedagogika universiteti','Чирчикский педагогический университет'],['Maxam-Chirchiq','Химкомбинат']],
|
|
204
|
+
}),
|
|
205
|
+
|
|
206
|
+
Almalyk: city({
|
|
207
|
+
mahallas: [{ name: 'Kamalak', aliases: ['Камалак','Радуга'], confidence: 'official' }],
|
|
208
|
+
microdistricts: numberedMicrodistricts([1,2,3,4,5]),
|
|
209
|
+
localAreas: [['Center','Markaz','Центр'],['Old City','Eski shahar','Старый город'],['New City','Yangi shahar','Новый город'],['Metallurg','Металлург'],['Sports Palace area','Дворец спорта'],['Railway Station area','Вокзал']],
|
|
210
|
+
landmarks: [['Almalyk MMC','АГМК','AGMK','ОКМК','OKMK','Олмалиқ КМК','Almalyk Mining and Metallurgical Complex'],['Metallurg Stadium','Metallurg stadioni','стадион Металлург']],
|
|
211
|
+
}),
|
|
212
|
+
|
|
213
|
+
Angren: city({
|
|
214
|
+
microdistricts: numberedMicrodistricts([1,2,3,4,5]),
|
|
215
|
+
localAreas: [['Center','Центр'],['Old Angren','Старый Ангрен','Эски Ангрен','Eski Angren'],['New Angren','Новый Ангрен','Yangi Angren'],['Dukent','Дукент'],['Geolog','Геолог'],['Railway Station area','Вокзал']],
|
|
216
|
+
landmarks: [['Angren TPP','Angren IES','Ангренская ТЭС'],['Yangi Angren TPP','Yangi Angren IES','Ново-Ангренская ТЭС'],['Angren Railway Station','Angren vokzali']],
|
|
217
|
+
}),
|
|
218
|
+
|
|
219
|
+
Bekabad: city({
|
|
220
|
+
localAreas: [['Center','Центр'],['Metallurg','Металлург'],['Tsementnik','Цементник'],['Vodnik','Водник'],['Syrdarya','Сырдарья','Sirdaryo'],['Farhod','Фархад'],['Railway Station area','Вокзал']],
|
|
221
|
+
landmarks: [['Uzmetkombinat','Bekobod metallurgiya kombinati','Узметкомбинат'],['Farhod HPP','Фархадская ГЭС','Farhod GES']],
|
|
222
|
+
}),
|
|
223
|
+
|
|
224
|
+
Shakhrisabz: city({
|
|
225
|
+
localAreas: [['Center','Центр'],['Old City','Старый город','Eski shahar'],['Oqsaroy','Оксарой','Ак-Сарай','Ak-Saray'],['Dorus Saodat','Дорус Саодат'],['Dorut Tilovat','Дорут Тиловат'],['Chorsu','Чорсу'],['Amir Temur','Амир Темур'],['Kitob direction','Китабское направление','Kitob'],['Railway Station area','Вокзал']],
|
|
226
|
+
}),
|
|
227
|
+
|
|
228
|
+
Khiva: city({
|
|
229
|
+
localAreas: [['Ichan Kala','Ичан-Кала',"Ichan-Qal'a",'Ичан-Калъа'],['Dishan Kala','Дишан-Кала',"Dishan-Qal'a"],['Old City','Старый город','Eski shahar'],['New City','Новый город','Yangi shahar']],
|
|
230
|
+
landmarks: [['Ichan Kala','Ичан-Кала','Ichan Kala'],['Kalta Minor','Кальта-Минор'],['Kunya Ark','Куня-Арк',"Ko'hna Ark"],['Islam Khodja','Ислам Ходжа',"Islom Xo'ja"],['Pahlavon Mahmud','Пахлаван Махмуд'],['Tosh Hovli','Таш-Хаули'],['Olloqulixon','Аллакулихан'],['Khiva Railway Station','Xiva vokzali','Хива вокзал']],
|
|
231
|
+
}),
|
|
232
|
+
|
|
233
|
+
Denov: city({ localAreas: [['Center','Markaz','Центр'],['Old Market','Старый рынок','Eski bozor'],['New Market','Новый рынок','Yangi bozor'],['Chaganiyon',"Chag'aniyon",'Чаганиан'],['Railway Station area','Вокзал']], landmarks: [['Denov Bazaar','Деновский базар','Denov bozori'],['Denov Arboretum','Дендрарий','Denov dendrariysi']] }),
|
|
234
|
+
Asaka: city({ localAreas: [['Center','Markaz','Центр'],['Auto Plant area','Автозавод','Автозаводский'],['Old City','Старый город'],['Railway Station area','Вокзал']], landmarks: [['UzAuto Motors','UzAuto','GM Uzbekistan'],['Asaka Bank'],['Dehqon Bazaar','Dehqon bozori']] }),
|
|
235
|
+
Kogon: city({ localAreas: [['Center','Центр'],['Railway Station area','Вокзал','Каган вокзал','Kogon vokzali','Бухара-1','Buxoro-1'],['Railway Workers','Железнодорожный','Темирйулчилар'],['Bukhara direction','Бухара направление']] }),
|
|
236
|
+
Kattakurgan: city({ localAreas: [['Center','Markaz','Центр'],['Old City','Старый город','Eski shahar'],['Railway Station area','Вокзал','Каттакурган вокзал',"Kattaqo'rg'on vokzali"],['Bazaar','Базар','Dehqon bozori']], landmarks: [['Kattakurgan Reservoir','Каттакурганское водохранилище',"Kattaqo'rg'on suv ombori"]] }),
|
|
237
|
+
Urgut: city({ localAreas: [['Center','Центр'],['Navoiy','Навои'],['Samarkand direction','Самаркандское направление','Samarqand yo‘li']], landmarks: [['Urgut Bazaar','Urgut bozori','Ургутский базар'],['Chor Chinor','Чорчинор','Chor-Chinor']] }),
|
|
238
|
+
Yangiyol: city({ localAreas: [['Center','Центр'],['Railway Station area','Вокзал'],['Bazaar','Базар'],['Samarkand Highway','Самаркандское шоссе'],['Tashkent direction','Ташкентское направление']] }),
|
|
239
|
+
Yangiyer: city({ microdistricts: numberedMicrodistricts([1,2,3,4]), localAreas: [['Center','центр'],['Railway Station area','вокзал','Yangiyer vokzali']] }),
|
|
240
|
+
Shirin: city({ localAreas: [['Center','центр'],['Energetik','энергетик'],['Farhod','Фархад'],['Syrdarya','Сырдарья','Sirdaryo']], landmarks: [['Syrdarya TPP','Сырдарьинская ТЭС'],['HPP','ГЭС']] }),
|
|
241
|
+
Gazalkent: city({ localAreas: [['Center','центр'],['Charvak direction','Чарвакское направление','Chorvoq'],['Bostanlyk direction','Бостанлык',"Bo'stonliq"]] }),
|
|
242
|
+
Chartak: city({ localAreas: [['Center','центр'],['Namangan Road','Namangan yo‘li']], landmarks: [['Chartak Sanatorium','санаторий Чартак','Chortoq sanatoriysi'],['Market','рынок']] }),
|
|
243
|
+
Chust: city({ localAreas: [['Center','центр']], landmarks: [['Chust Bazaar','Чустский базар','Chust bozori'],['Chust Knives','Чустские ножи','Chust pichoqlari'],['Doppi','Дуппи',"Do'ppi"]] }),
|
|
244
|
+
Kosonsoy: city({ localAreas: [['Center','центр'],['Chust Road','Chust yo‘li']], landmarks: [["Mug qala","Mug' qal'a",'Муг-кала']] }),
|
|
245
|
+
Khojeyli: city({ localAreas: [['Center','Центр'],['Bazaar','Базар'],['Nukus direction','Нукусское направление','Nukus yo‘li'],['Railway Station area','Вокзал']] }),
|
|
246
|
+
Takhiatash: city({ localAreas: [['Center','центр']], landmarks: [['Takhiatash TPP','Тахиаташская ТЭС','Taxiatosh IES'],['Amu Darya','Амударья']] }),
|
|
247
|
+
Kungrad: city({ localAreas: [['Center','центр'],['Railway Station area','вокзал',"Qo'ng'irot vokzali"],['Ustyurt direction','Устюртское направление'],['Muynak direction','Муйнакское направление']] }),
|
|
248
|
+
Muynak: city({ landmarks: [['Ship Cemetery','кладбище кораблей','Кемалар қабристони'],['Aral Sea','Аральское море','Орол денгизи'],['Aral Sea Museum','Музей Аральского моря',"Mo'ynoq muzeyi"],['Aralkum','Аралкум']] }),
|
|
249
|
+
Beruniy: city({ localAreas: [['Center','центр'],['Turtkul Road',"To'rtko'l yo'li",'Элликкала направление']], landmarks: [['Beruniy Bazaar','Берунийский базар']] }),
|
|
250
|
+
Turtkul: city({ localAreas: [['Center','центр'],['Bazaar','базар'],['Railway Station area','вокзал']] }),
|
|
251
|
+
Shahrixon: city({ localAreas: [['Center','центр'],['Market','рынок'],['Andijan direction','Андижанское направление']] }),
|
|
252
|
+
Xonobod: city({ landmarks: [['Andijan Reservoir','Андижанское водохранилище','Andijon suv ombori'],['Xonobod Sanatorium','Ханабад санаторий','Xonobod sanatoriysi']] }),
|
|
253
|
+
});
|
|
254
|
+
|
|
255
|
+
export const UZ_AMBIGUOUS_LOCAL_NAMES = Object.freeze([
|
|
256
|
+
'Center','Markaz','Navbahor','Mustaqillik','Shodlik','Guliston','Nukus','Xonobod','Farhod','Navoiy','Afrosiyob','Dosliq','Yangi hayot',
|
|
257
|
+
]);
|
|
258
|
+
|
|
259
|
+
export const UZ_KARAKALPAK_LANGUAGE_TAGS = Object.freeze(['kaa_lat','kaa_cyr']);
|