@whiteslove/parsing-lexicon 0.5.5 → 0.5.7

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@whiteslove/parsing-lexicon",
3
- "version": "0.5.5",
3
+ "version": "0.5.7",
4
4
  "description": "Shared deterministic multilingual parsing lexicon for WhitesLove housing and hiring services",
5
5
  "repository": {
6
6
  "type": "git",
@@ -5,6 +5,8 @@ const group = (canonical, aliases, extra = {}) => lexiconEntity(canonical, alias
5
5
  const KK_RENT_OUT_ALIASES = Object.freeze(['жалға беремін', 'жалға беріледі']);
6
6
  const RO_SALE_OFFER_ALIASES = Object.freeze(['de vânzare', 'de vanzare']);
7
7
  const UZ_CONTEXTUAL_RENT_OUT_RE = /(?:^|[^\p{L}\p{N}_])(?:ijaraga|ижарага)(?=$|[^\p{L}\p{N}_])[^.!?\r\n]{0,48}(?:beraman|beriladi|topshiraman|бераман|берилади|топшираман)(?=$|[^\p{L}\p{N}_])/iu;
8
+ const UZ_PER_DAY_RE = /(?:^|[^\p{L}\p{N}_])(?:kuniga|кунига)(?=$|[^\p{L}\p{N}_])/iu;
9
+ const UZ_DAILY_RENT_PRICE_RE = /(?:narx|нарх|ijara|ижара|to['’`]?lov|т[ўу]лов|оплата)[^.!?\r\n]{0,48}(?:kuniga|кунига)|(?:kuniga|кунига)[^.!?\r\n]{0,48}(?:narx|нарх|ijara|ижара|to['’`]?lov|т[ўу]лов|оплата)/iu;
8
10
 
9
11
  export const HOUSING_ACTIONS = Object.freeze([
10
12
  group('sell', {
@@ -91,8 +93,8 @@ export const HOUSING_DEAL_TYPES = Object.freeze([
91
93
  en: ['daily rent', 'short term', 'short-term rent', 'per day', 'hourly'],
92
94
  uk: ['подобово', 'погодинно', 'на добу', 'на годину', 'короткострокова оренда'],
93
95
  ro: ['regim hotelier', 'pe zi', 'zilnic', 'pe noapte', 'închiriere pe termen scurt', 'inchiriere pe termen scurt'],
94
- uzLatn: ['kunlik', 'sutkaga', 'sutkalik', 'soatlik', 'kuniga'],
95
- uzCyrl: ['кунлик', 'суткага', 'суткалик', 'соатлик', 'кунига'],
96
+ uzLatn: ['kunlik', 'sutkaga', 'sutkalik', 'soatlik'],
97
+ uzCyrl: ['кунлик', 'суткага', 'суткалик', 'соатлик'],
96
98
  kk: ['тәулік', 'тәуліктік', 'тәулігіне', 'сағаттық', 'күндік'],
97
99
  }),
98
100
  ]);
@@ -111,11 +113,13 @@ export function resolveHousingIntent(value) {
111
113
  const actionMatch = findCanonical(text, HOUSING_ACTIONS, { partial: true });
112
114
  const action = actionMatch?.canonical || (UZ_CONTEXTUAL_RENT_OUT_RE.test(text) ? 'rentOut' : null);
113
115
  const durationDeal = findCanonical(text, HOUSING_DEAL_TYPES, { partial: true });
116
+ const hasContextualUzPerDay = UZ_PER_DAY_RE.test(text)
117
+ && ((action === 'rentOut' || action === 'rentIn') || UZ_DAILY_RENT_PRICE_RE.test(text));
114
118
 
115
119
  if (action) {
116
120
  const base = HOUSING_ACTION_MAP[action];
117
121
  let dealType = base.dealType;
118
- if (durationDeal?.canonical === 'shortRent' && (action === 'rentOut' || action === 'rentIn')) {
122
+ if ((durationDeal?.canonical === 'shortRent' || hasContextualUzPerDay) && (action === 'rentOut' || action === 'rentIn')) {
119
123
  dealType = 'shortRent';
120
124
  }
121
125
  return Object.freeze({
@@ -125,11 +129,11 @@ export function resolveHousingIntent(value) {
125
129
  });
126
130
  }
127
131
 
128
- if (!durationDeal) return null;
132
+ if (!durationDeal && !hasContextualUzPerDay) return null;
129
133
  return Object.freeze({
130
134
  action: null,
131
135
  listingKind: null,
132
- dealType: durationDeal.canonical,
136
+ dealType: durationDeal?.canonical || 'shortRent',
133
137
  });
134
138
  }
135
139
 
@@ -75,7 +75,7 @@ export const LOCATION_DICTIONARIES = Object.freeze({
75
75
  ]),
76
76
  landmarks: entries([
77
77
  ['Registan Square', 'площадь Регистан', 'Registon maydoni', 'Регистон майдони'], ['Gur-e-Amir', 'Гур Эмир', 'Go‘ri Amir', "Go'ri Amir"],
78
- ['Siab Bazaar', 'Сиабский базар', 'Siyob bozori'], ['Samarkand Railway Station', 'Самаркандский вокзал', 'Samarqand vokzali'],
78
+ ['Siyob Bazaar', 'Siab Bazaar', 'Сиабский базар', 'Siyob bozori'], ['Samarkand Railway Station', 'Самаркандский вокзал', 'Samarqand vokzali'],
79
79
  ]),
80
80
  }),
81
81
  }),
@@ -60,7 +60,7 @@ export const TASHKENT_RESIDENTIAL_COMPLEXES = Object.freeze([
60
60
  complex('Comfort House', ['Комфорт Хаус']),
61
61
  complex('Darhan', ['Darkhan Residence', 'Дархан Резиденс', 'Дархан', 'Darkhan']),
62
62
  complex('DARVOZA'),
63
- complex('Dostlar', ['Do‘stlar', 'Do\'stlar', 'Doʻstlar', 'Дустлар', 'Дўстлар', 'Дустлар ЖК']),
63
+ complex('Do‘stlar', ['Dostlar', 'Do\'stlar', 'Doʻstlar', 'Дустлар', 'Дўстлар', 'Дустлар ЖК']),
64
64
  complex('Dream House', ['Дрим-Хаус', 'Дрим Хаус']),
65
65
  complex('Dreamland Aeroport'),
66
66
  complex('Dreamland Do\'stlik'),
@@ -82,13 +82,13 @@ export const UZ_LOCATION_EXTENSIONS = Object.freeze({
82
82
  { name: 'Humoyun', aliases: ['Humoyun mahallasi','Ҳумоюн','Хумаюн'], parent: 'Mirzo Ulugbek', confidence: 'official' },
83
83
  { name: "Bog'ko'cha", aliases: ['Bog‘ko‘cha','Bogʻkoʻcha','Bogkocha','Боғкўча','Богкуча'], parent: 'Shaykhantahur', confidence: 'official' },
84
84
  { name: 'Gulobod', aliases: ['Gulabad','Гулобод','Гулабад'], parent: 'Shaykhantahur', confidence: 'official' },
85
- { name: 'Qalqon', aliases: ['Қалқон','Калкон'], parent: 'Yashnobod', confidence: 'official' },
86
- { name: "Bog'bon", aliases: ['Bog‘bon','Bogʻbon','Bogbon','Боғбон','Богбон'], parent: 'Yashnobod', confidence: 'official' },
85
+ { name: 'Qalqon', aliases: ['Qalqon mahallasi','Қалқон','Қалқон маҳалласи','Калкон','махалля Калкон'], labels: { en: 'Qalqon', uz: 'Qalqon mahallasi', ru: 'Калкон' }, parent: 'Yashnobod', confidence: 'official' },
86
+ { name: "Bog'bon", aliases: ["Bog'bon mahallasi",'Bog‘bon','Bogʻbon','Bogbon','Боғбон','Боғбон маҳалласи','Богбон','махалля Богбон'], labels: { en: "Bog'bon", uz: "Bog'bon mahallasi", ru: 'Богбон' }, parent: 'Yashnobod', confidence: 'official' },
87
87
  { name: 'Shifokorlar', aliases: ['Shifokorlar mahallasi','Шифокорлар','Шифокорлар махалла'], parent: 'Almazar', confidence: 'official' },
88
88
  { name: 'Taraqqiyot', aliases: ['Taraqqiyot mahallasi','Тараққиёт','Тараккиёт'], parent: 'Almazar', confidence: 'official' },
89
89
  { name: "Chamanbog'", aliases: ['Chamanbog‘','Chamanbogʻ','Chamanbog mahallasi','Чаманбоғ','Чаманбог'], parent: 'Almazar', confidence: 'official' },
90
90
  { name: 'Asalobod', aliases: ['Asalobod mahallasi','Asalabad','Асалобод','Асалабад'], parent: 'Yashnobod', confidence: 'official' },
91
- { name: "Sug'diyona", aliases: ['Sug‘diyona','Sugʻdiyona','Sugdiyona','Суғдиёна','Согдиана'], parent: 'Sergeli', confidence: 'official' },
91
+ { name: "Sug'diyona", aliases: ["Sug'diyona mahallasi",'Sug‘diyona','Sugʻdiyona','Sugdiyona','Суғдиёна','Суғдиёна маҳалласи','Согдиана','махалля Согдиана'], labels: { en: "Sug'diyona", uz: "Sug'diyona mahallasi", ru: 'махалля Согдиана' }, parent: 'Sergeli', confidence: 'official' },
92
92
  { name: 'Olimpiya', aliases: ['Olimpiya mahallasi','Olympia','Олимпия','Олимпия махалла'], parent: 'Almazar', confidence: 'official' },
93
93
  { name: 'Sebzor', aliases: ['Sebzor mahallasi','Sebzar','Себзор','Себзар'], parent: 'Almazar', confidence: 'official' },
94
94
  { name: 'Yangi Choshtepa', aliases: ['Yangi Choshtepa mahallasi','Янги Чоштепа','Янги Чоштепа махалла'], parent: 'Yangihayot', confidence: 'official' },
@@ -105,11 +105,11 @@ export const UZ_LOCATION_EXTENSIONS = Object.freeze({
105
105
  localAreas: [
106
106
  { name: 'Yangidarhan-1', aliases: ['Yangi Darhan-1','Yangi Darxon-1','Янги Дархан-1','Янги Дархон-1'], parent: 'Yangihayot' },
107
107
  { name: 'Yangidarhan-2', aliases: ['Yangi Darhan-2','Yangi Darxon-2','Янги Дархан-2','Янги Дархон-2'], parent: 'Yangihayot' },
108
- { name: 'Suvsoz-1', aliases: ['Suvsoz 1','Suvsoz-1 mavzesi','Сувсоз-1','Сувсоз 1','Водник-1','Водник 1'], parent: 'Bektemir', confidence: 'official' },
109
- { name: 'Suvsoz-2', aliases: ['Suvsoz 2','Suvsoz-2 mavzesi','Сувсоз-2','Сувсоз 2','Водник-2','Водник 2'], parent: 'Bektemir', confidence: 'official' },
110
- { name: 'Suvsoz-3', aliases: ['Suvsoz 3','Suvsoz-3 mavzesi','Сувсоз-3','Сувсоз 3','Водник-3','Водник 3'], parent: 'Bektemir', confidence: 'official' },
111
- { name: 'Suvsoz-4', aliases: ['Suvsoz 4','Suvsoz-4 mavzesi','Сувсоз-4','Сувсоз 4'], parent: 'Bektemir', confidence: 'official' },
112
- { name: 'Suvsoz-5', aliases: ['Suvsoz 5','Suvsoz-5 mavzesi','Сувсоз-5','Сувсоз 5'], parent: 'Bektemir', confidence: 'official' },
108
+ { name: 'Suvsoz-1', aliases: ['Suvsoz 1','Suvsoz-1 mavzesi','Сувсоз-1','Сувсоз 1','Водник-1','Водник 1','Сувсоз-1 мавзеси'], labels: { en: 'Suvsoz-1', uz: 'Suvsoz-1 mavzesi', ru: 'Сувсоз-1' }, parent: 'Bektemir', confidence: 'official' },
109
+ { name: 'Suvsoz-2', aliases: ['Suvsoz 2','Suvsoz-2 mavzesi','Сувсоз-2','Сувсоз 2','Водник-2','Водник 2','Сувсоз-2 мавзеси'], labels: { en: 'Suvsoz-2', uz: 'Suvsoz-2 mavzesi', ru: 'Сувсоз-2' }, parent: 'Bektemir', confidence: 'official' },
110
+ { name: 'Suvsoz-3', aliases: ['Suvsoz 3','Suvsoz-3 mavzesi','Сувсоз-3','Сувсоз 3','Водник-3','Водник 3','Сувсоз-3 мавзеси'], labels: { en: 'Suvsoz-3', uz: 'Suvsoz-3 mavzesi', ru: 'Сувсоз-3' }, parent: 'Bektemir', confidence: 'official' },
111
+ { name: 'Suvsoz-4', aliases: ['Suvsoz 4','Suvsoz-4 mavzesi','Сувсоз-4','Сувсоз 4','Сувсоз-4 мавзеси'], labels: { en: 'Suvsoz-4', uz: 'Suvsoz-4 mavzesi', ru: 'Сувсоз-4' }, parent: 'Bektemir', confidence: 'official' },
112
+ { name: 'Suvsoz-5', aliases: ['Suvsoz 5','Suvsoz-5 mavzesi','Сувсоз-5','Сувсоз 5','Сувсоз-5 мавзеси'], labels: { en: 'Suvsoz-5', uz: 'Suvsoz-5 mavzesi', ru: 'Сувсоз-5' }, parent: 'Bektemir', confidence: 'official' },
113
113
  { name: "Bo'z-1", aliases: ['Bo‘z-1','Boʻz-1','Boz-1','Boz 1','Бўз-1','Буз-1','Буз 1'], parent: 'Mirzo Ulugbek', confidence: 'official' },
114
114
  { name: "Bo'z-2", aliases: ['Bo‘z-2','Boʻz-2','Boz-2','Boz 2','Бўз-2','Буз-2','Буз 2'], parent: 'Mirzo Ulugbek', confidence: 'official' },
115
115
  { name: 'Ahmad Yugnakiy', aliases: ['Ahmad Yugnaki dahasi','Ahmad Yugnakiy dahasi','Аҳмад Югнакий даҳаси','Ахмад Югнаки массив','Солнечный массив','массив Солнечный'], parent: 'Mirzo Ulugbek', confidence: 'official' },
@@ -124,17 +124,17 @@ export const UZ_LOCATION_EXTENSIONS = Object.freeze({
124
124
  { name: "Beshqo'rg'on-2", aliases: ['Beshqo‘rg‘on-2','Beshqoʻrgʻon-2','Beshqorgon-2','Beshkurgan-2','Бешқўрғон-2','Бешкурган-2'], parent: 'Almazar', confidence: 'official' },
125
125
  { name: "Beshqo'rg'on-3", aliases: ['Beshqo‘rg‘on-3','Beshqoʻrgʻon-3','Beshqorgon-3','Beshkurgan-3','Бешқўрғон-3','Бешкурган-3'], parent: 'Almazar', confidence: 'official' },
126
126
  { name: "Beshqo'rg'on-4", aliases: ['Beshqo‘rg‘on-4','Beshqoʻrgʻon-4','Beshqorgon-4','Beshkurgan-4','Бешқўрғон-4','Бешкурган-4'], parent: 'Almazar', confidence: 'official' },
127
- { name: "Qo'yliq-1", aliases: ['Qo‘yliq-1','Qoʻyliq-1','Qoyliq-1','Qoyliq 1','Куйлюк-1','Куйлюк 1','Куйлик-1','Куйлик 1'], parent: 'Mirobod', confidence: 'official' },
128
- { name: "Qo'yliq-2", aliases: ['Qo‘yliq-2','Qoʻyliq-2','Qoyliq-2','Qoyliq 2','Куйлюк-2','Куйлюк 2','Куйлик-2','Куйлик 2'], parent: 'Mirobod', confidence: 'official' },
129
- { name: "Qo'yliq-3", aliases: ['Qo‘yliq-3','Qoʻyliq-3','Qoyliq-3','Qoyliq 3','Куйлюк-3','Куйлюк 3','Куйлик-3','Куйлик 3'], parent: 'Mirobod', confidence: 'official' },
130
- { name: "Qo'yliq-4", aliases: ['Qo‘yliq-4','Qoʻyliq-4','Qoyliq-4','Qoyliq 4','Куйлюк-4','Куйлюк 4','Куйлик-4','Куйлик 4'], parent: 'Mirobod', confidence: 'official' },
131
- { name: "Qo'yliq-5", aliases: ['Qo‘yliq-5','Qoʻyliq-5','Qoyliq-5','Qoyliq 5','Куйлюк-5','Куйлюк 5','Куйлик-5','Куйлик 5'], parent: 'Sergeli', confidence: 'official' },
132
- { name: "Qo'yliq-6", aliases: ['Qo‘yliq-6','Qoʻyliq-6','Qoyliq-6','Qoyliq 6','Куйлюк-6','Куйлюк 6','Куйлик-6','Куйлик 6'], parent: 'Sergeli', confidence: 'official' },
133
- { name: "Qo'yliq-7", aliases: ['Qo‘yliq-7','Qoʻyliq-7','Qoyliq-7','Qoyliq 7','Куйлюк-7','Куйлюк 7','Куйлик-7','Куйлик 7'], parent: 'Sergeli', confidence: 'official' },
134
- { name: 'Parkent-Riyoziy', aliases: ['Parkent Riyoziy','Riyoziy','Mavlono Riyoziy','Мавлоно Риёзи','Риёзий','Риезий','Паркент Риёзий'], parent: 'Yashnobod', confidence: 'official' },
135
- { name: 'Parkent-Siolkovskiy', aliases: ['Parkent Siolkovskiy','Parkent Tsiolkovskiy','Сиолковский массив','Циолковский массив','Паркент Сиолковский'], parent: 'Yashnobod', confidence: 'official' },
136
- { name: 'Qalqon', aliases: ['Qalqon mavzesi','Қалқон мавзе','Калкон массив','Harbiylar-58a','Harbiylar 58a','Harbiylar-58a shaharchasi'], parent: 'Yashnobod', confidence: 'official' },
137
- { name: "Bog'bon", aliases: ['Bog‘bon mavzesi','Bogʻbon mavzesi','Bogbon mavzesi','Боғбон мавзе','Богбон массив','Normuhammedov mavzesi','Normuhammedov','Нормухаммедов'], parent: 'Yashnobod', confidence: 'official' },
127
+ { name: "Qo'yliq-1", aliases: ['Qo‘yliq-1','Qoʻyliq-1','Qoyliq-1','Qoyliq 1','Qo‘yliq-1 mavzesi','Қўйлиқ-1','Қўйлиқ 1','Қўйлиқ-1 мавзеси','Куйлюк-1','Куйлюк 1','Куйлик-1','Куйлик 1'], labels: { en: "Qo'yliq-1", uz: 'Qo‘yliq-1 mavzesi', ru: 'Куйлюк-1' }, parent: 'Mirobod', confidence: 'official' },
128
+ { name: "Qo'yliq-2", aliases: ['Qo‘yliq-2','Qoʻyliq-2','Qoyliq-2','Qoyliq 2','Qo‘yliq-2 mavzesi','Қўйлиқ-2','Қўйлиқ 2','Қўйлиқ-2 мавзеси','Куйлюк-2','Куйлюк 2','Куйлик-2','Куйлик 2'], labels: { en: "Qo'yliq-2", uz: 'Qo‘yliq-2 mavzesi', ru: 'Куйлюк-2' }, parent: 'Mirobod', confidence: 'official' },
129
+ { name: "Qo'yliq-3", aliases: ['Qo‘yliq-3','Qoʻyliq-3','Qoyliq-3','Qoyliq 3','Qo‘yliq-3 mavzesi','Қўйлиқ-3','Қўйлиқ 3','Қўйлиқ-3 мавзеси','Куйлюк-3','Куйлюк 3','Куйлик-3','Куйлик 3'], labels: { en: "Qo'yliq-3", uz: 'Qo‘yliq-3 mavzesi', ru: 'Куйлюк-3' }, parent: 'Mirobod', confidence: 'official' },
130
+ { name: "Qo'yliq-4", aliases: ['Qo‘yliq-4','Qoʻyliq-4','Qoyliq-4','Qoyliq 4','Qo‘yliq-4 mavzesi','Қўйлиқ-4','Қўйлиқ 4','Қўйлиқ-4 мавзеси','Куйлюк-4','Куйлюк 4','Куйлик-4','Куйлик 4'], labels: { en: "Qo'yliq-4", uz: 'Qo‘yliq-4 mavzesi', ru: 'Куйлюк-4' }, parent: 'Mirobod', confidence: 'official' },
131
+ { name: "Qo'yliq-5", aliases: ['Qo‘yliq-5','Qoʻyliq-5','Qoyliq-5','Qoyliq 5','Qo‘yliq-5 mavzesi','Қўйлиқ-5','Қўйлиқ 5','Қўйлиқ-5 мавзеси','Куйлюк-5','Куйлюк 5','Куйлик-5','Куйлик 5'], labels: { en: "Qo'yliq-5", uz: 'Qo‘yliq-5 mavzesi', ru: 'Куйлюк-5' }, parent: 'Sergeli', confidence: 'official' },
132
+ { name: "Qo'yliq-6", aliases: ['Qo‘yliq-6','Qoʻyliq-6','Qoyliq-6','Qoyliq 6','Qo‘yliq-6 mavzesi','Қўйлиқ-6','Қўйлиқ 6','Қўйлиқ-6 мавзеси','Куйлюк-6','Куйлюк 6','Куйлик-6','Куйлик 6'], labels: { en: "Qo'yliq-6", uz: 'Qo‘yliq-6 mavzesi', ru: 'Куйлюк-6' }, parent: 'Sergeli', confidence: 'official' },
133
+ { name: "Qo'yliq-7", aliases: ['Qo‘yliq-7','Qoʻyliq-7','Qoyliq-7','Qoyliq 7','Qo‘yliq-7 mavzesi','Қўйлиқ-7','Қўйлиқ 7','Қўйлиқ-7 мавзеси','Куйлюк-7','Куйлюк 7','Куйлик-7','Куйлик 7'], labels: { en: "Qo'yliq-7", uz: 'Qo‘yliq-7 mavzesi', ru: 'Куйлюк-7' }, parent: 'Sergeli', confidence: 'official' },
134
+ { name: 'Parkent-Riyoziy', aliases: ['Parkent Riyoziy','Parkent-Riyoziy mavzesi','Riyoziy','Mavlono Riyoziy','Мавлоно Риёзи','Риёзий','Риезий','Паркент Риёзий','Паркент-Риёзий','Паркент-Риёзий массив','Паркент-Риёзий мавзеси'], labels: { en: 'Parkent-Riyoziy', uz: 'Parkent-Riyoziy mavzesi', ru: 'Паркент-Риёзий' }, parent: 'Yashnobod', confidence: 'official' },
135
+ { name: 'Parkent-Siolkovskiy', aliases: ['Parkent Siolkovskiy','Parkent Tsiolkovskiy','Parkent-Siolkovskiy mavzesi','Parkent-Tsiolkovskiy','Siolkovskiy','Tsiolkovskiy','Сиолковский','Сиолковский массив','Циолковский массив','Паркент Сиолковский','Паркент-Сиолковский','Паркент-Сиолковский массив','Паркент-Сиолковский мавзеси'], labels: { en: 'Parkent-Siolkovskiy', uz: 'Parkent-Siolkovskiy mavzesi', ru: 'Паркент-Сиолковский' }, parent: 'Yashnobod', confidence: 'official' },
136
+ { name: 'Qalqon', aliases: ['Qalqon mavzesi','Қалқон мавзе','Қалқон мавзеси','Калкон массив','Harbiylar-58a','Harbiylar 58a','Harbiylar-58a shaharchasi','Ҳарбийлар-58а','Ҳарбийлар-58а шаҳарчаси','Харбийлар-58а'], labels: { en: 'Qalqon', uz: 'Qalqon mavzesi', ru: 'массив Калкон' }, parent: 'Yashnobod', confidence: 'official' },
137
+ { name: "Bog'bon", aliases: ['Bog‘bon mavzesi','Bogʻbon mavzesi','Bogbon mavzesi','Боғбон мавзе','Боғбон мавзеси','Богбон массив','Normuhammedov mavzesi','Normuhammedov','Нормуҳаммедов','Нормуҳаммедов мавзеси','Нормухаммедов','Нормухаммедов массив'], labels: { en: "Bog'bon", uz: "Bog'bon mavzesi", ru: 'массив Богбон' }, parent: 'Yashnobod', confidence: 'official' },
138
138
  { name: 'Akademgorodok', aliases: ['Академгородок','Академ городок','Akademgorodok','Akadem shaharchasi'], parent: 'Mirzo Ulugbek', confidence: 'colloquial' },
139
139
  { name: 'C-7', aliases: ['Ц-7','Ц 7','C 7','массив Ц-7','Ц-7 массив'], parent: 'Mirobod', confidence: 'colloquial' },
140
140
  { name: 'Aviasozlar-1', aliases: ['Aviasozlar 1','Авиасозлар-1','Авиасозлар 1','Городок авиастроителей-1','Лисунова-1','Лисунова 1','Lisunova-1','Lisunova 1'], parent: 'Yashnobod', confidence: 'official' },
@@ -142,7 +142,7 @@ export const UZ_LOCATION_EXTENSIONS = Object.freeze({
142
142
  { name: 'Aviasozlar-3', aliases: ['Aviasozlar 3','Авиасозлар-3','Авиасозлар 3','Городок авиастроителей-3','Лисунова-2','Лисунова 2','Lisunova-2','Lisunova 2'], parent: 'Yashnobod', confidence: 'official' },
143
143
  { name: 'Aviasozlar-4', aliases: ['Aviasozlar 4','Авиасозлар-4','Авиасозлар 4','Городок авиастроителей-4','Лисунова-4','Лисунова 4','Lisunova-4','Lisunova 4'], parent: 'Yashnobod', confidence: 'official' },
144
144
  { name: 'Minora', aliases: ['Minora mavzesi','Минора','Минора массив'], parent: 'Almazar', confidence: 'official' },
145
- { name: 'Guruchariq', aliases: ['Guruchariq mavzesi','Guruch ariq','Гуручариқ','Гуручарик','S-22','S 22','С-22','С 22','C-22','C 22'], parent: 'Almazar', confidence: 'official' },
145
+ { name: 'Guruchariq', aliases: ['Guruchariq mavzesi','Guruch ariq','Гуручариқ','Гуручариқ мавзеси','Гуручарик','массив Гуручарик','S-22','S 22','С-22','С 22','C-22','C 22','Markaz-22','Markaz 22','Марказ-22','Марказ 22'], labels: { en: 'Guruchariq', uz: 'Guruchariq mavzesi', ru: 'массив Гуручарик' }, parent: 'Almazar', confidence: 'official' },
146
146
  { name: 'Muxbir', aliases: ['Muxbir mavzesi','Мухбир','Мухбир массив'], parent: 'Almazar', confidence: 'official' },
147
147
  { name: 'Chuqursoy', aliases: ['Chuqursoy mavzesi','Чуқурсой','Чукурсай','Чукурсой'], parent: 'Almazar', confidence: 'official' },
148
148
  { name: 'Shimoliy Olmazor', aliases: ['Shimoliy Olmazor dahasi','Шимолий Олмазор'], parent: 'Almazar', confidence: 'official' },
@@ -158,8 +158,8 @@ export const UZ_LOCATION_EXTENSIONS = Object.freeze({
158
158
  { name: 'Shifokorlar-4', aliases: ['Shifokorlar 4','Shifokorlar-4 mavzesi','Шифокорлар-4','Шифокорлар 4','ToshGU-ToshPI','ТошГУ-ТошПИ'], parent: 'Almazar', confidence: 'official' },
159
159
  { name: 'Shifokorlar-5', aliases: ['Shifokorlar 5','Shifokorlar-5 mavzesi','Шифокорлар-5','Шифокорлар 5'], parent: 'Almazar', confidence: 'official' },
160
160
  { name: 'Shifokorlar-6', aliases: ['Shifokorlar 6','Shifokorlar-6 mavzesi','Шифокорлар-6','Шифокорлар 6'], parent: 'Almazar', confidence: 'official' },
161
- { name: 'Beruniy-B1', aliases: ['Beruniy B1','Beruniy B-1','Беруний-Б1','Беруний Б1'], parent: 'Almazar', confidence: 'official' },
162
- { name: 'Beruniy-B3', aliases: ['Beruniy B3','Beruniy B-3','Беруний-Б3','Беруний Б3'], parent: 'Almazar', confidence: 'official' },
161
+ { name: 'Beruniy-B1', aliases: ['Beruniy B1','Beruniy B-1','Beruniy-B1 mavzesi','Beruniy B1 mavzesi','Беруний-Б1','Беруний Б1','Беруний-Б1 мавзе','Беруний-Б1 массив'], labels: { en: 'Beruniy-B1', uz: 'Beruniy-B1 mavzesi', ru: 'Беруний-Б1' }, parent: 'Almazar', confidence: 'official' },
162
+ { name: 'Beruniy-B3', aliases: ['Beruniy B3','Beruniy B-3','Beruniy-B3 mavzesi','Beruniy B3 mavzesi','Beruniy-3','Beruniy 3','Beruniy-3 mavzesi','Beruniy 3 dahasi','Беруни-3','Беруни 3','Беруний-3','Беруний 3','Беруний-Б3','Беруний Б3','Беруний-Б3 мавзе','Беруний-Б3 массив'], labels: { en: 'Beruniy-B3', uz: 'Beruniy-B3 mavzesi', ru: 'Беруний-Б3' }, parent: 'Almazar', confidence: 'official' },
163
163
  { name: "Chamanbog'", aliases: ['Chamanbog‘ mavzesi','Chamanbogʻ mavzesi','Chamanbog mavzesi','Чаманбоғ мавзе','Чаманбог массив'], parent: 'Almazar', confidence: 'official' },
164
164
  { name: 'Irrigator', aliases: ['Irrigator mavzesi','Ирригатор','массив Ирригатор','Ирригатор массив'], parent: 'Mirzo Ulugbek', confidence: 'official' },
165
165
  { name: 'Parkent', aliases: ['Parkent dahasi','Паркент даха','Паркент массив'], parent: 'Mirzo Ulugbek', confidence: 'official' },
@@ -168,7 +168,7 @@ export const UZ_LOCATION_EXTENSIONS = Object.freeze({
168
168
  { name: 'Asalobod-1', aliases: ['Asalobod 1','Asalobod-1 mavzesi','Asalabad-1','Asalabad 1','Асалобод-1','Асалабад-1'], parent: 'Yashnobod', confidence: 'official' },
169
169
  { name: 'Asalobod-2', aliases: ['Asalobod 2','Asalobod-2 mavzesi','Asalabad-2','Asalabad 2','Асалобод-2','Асалабад-2'], parent: 'Yashnobod', confidence: 'official' },
170
170
  { name: 'ToshGRES', aliases: ['ToshGRES mavzesi','Tosh GRES','ТашГРЭС','Таш ГРЭС','Ташгрэс массив'], parent: 'Yunusabad', confidence: 'official' },
171
- { name: "Sug'diyona", aliases: ['Sug‘diyona mavzesi','Sugʻdiyona mavzesi','Sugdiyona mavzesi','Суғдиёна мавзе','Согдиана массив'], parent: 'Sergeli', confidence: 'official' },
171
+ { name: "Sug'diyona", aliases: ['Sug‘diyona mavzesi','Sugʻdiyona mavzesi','Sugdiyona mavzesi','Суғдиёна мавзе','Суғдиёна мавзеси','Согдиана массив','массив Согдиана'], labels: { en: "Sug'diyona", uz: "Sug'diyona mavzesi", ru: 'массив Согдиана' }, parent: 'Sergeli', confidence: 'official' },
172
172
  { name: 'Karakamysh-1/2', aliases: ['Karakamysh 1/2','Karakamysh 1 2','Каракамыш-1/2','Каракамыш 1/2','Қорақамиш 1/2'], parent: 'Almazar', confidence: 'verified' },
173
173
  { name: 'Karakamysh-2/3', aliases: ['Karakamysh 2/3','Karakamysh 2 3','Каракамыш-2/3','Каракамыш 2/3','Қорақамиш 2/3'], parent: 'Almazar', confidence: 'verified' },
174
174
  { name: 'Karakamysh-2/4', aliases: ['Karakamysh 2/4','Karakamysh 2 4','Каракамыш-2/4','Каракамыш 2/4','Қорақамиш 2/4'], parent: 'Almazar', confidence: 'verified' },
@@ -210,6 +210,7 @@ export const UZ_LOCATION_EXTENSIONS = Object.freeze({
210
210
  ['Tashkent City', 'Ташкент Сити', 'Toshkent City', 'Tashkent City IBC'],
211
211
  ],
212
212
  streets: [
213
+ { name: "Bog'bon Street", aliases: ['Bog‘bon ko‘chasi', "Bog'bon ko'chasi", 'Bogbon kochasi', 'улица Богбон', 'ул. Богбон'], parent: 'Yunusabad' },
213
214
  { name: 'Gulobod Street', aliases: ['Gulobod ko‘chasi', "Gulobod ko'chasi", 'улица Гулобод', 'ул. Гулобод'], parent: 'Shaykhantahur' },
214
215
  { name: 'Sebzor Street', aliases: ['Sebzor ko‘chasi', "Sebzor ko'chasi", 'улица Себзор', 'ул. Себзор'], parent: 'Almazar' },
215
216
  { name: 'Lolazor Street', aliases: ['Lolazor ko‘chasi', "Lolazor ko'chasi", 'улица Лолазор', 'ул. Лолазор'], parent: 'Uchtepa' },
@@ -241,7 +242,7 @@ export const UZ_LOCATION_EXTENSIONS = Object.freeze({
241
242
  ['Registan Square','Регистан','Registon','Площадь Регистан'],['Gur-e Amir','Гур-Эмир',"Go'ri Amir",'Гўри Амир'],['Shohi Zinda','Шахи-Зинда','Шоҳи Зинда'],['Bibi-Khanym','Биби-Ханым','Bibixonim','Бибихоним'],
242
243
  ['Siyob Bazaar','Сиабский базар','Siyob bozori','Сиёб бозори'],['Afrosiyob','Афросиаб','Афросиёб'],['Ulugbek Observatory','Обсерватория Улугбека',"Ulug'bek rasadxonasi"],['University Boulevard','Университетский бульвар','Universitet xiyoboni'],
243
244
  ['Eternal City','Вечный город','Boqiy shahar'],['Silk Road Samarkand'],['Samarkand City','Самарканд Сити'],['Samarkand International Airport','Международный аэропорт Самарканд','Samarqand xalqaro aeroporti','SKD'],
244
- ['Samarkand Railway Station','Самарканд вокзал','Samarqand vokzali'],['Central Park','Центральный парк',"Markaziy bog'"],['Alisher Navoiy Park','Парк Алишера Навои',"Alisher Navoiy bog'i"],['Youth Park','Парк Молодёжи',"Yoshlar bog'i"],
245
+ ['Samarkand Railway Station','Самарканд вокзал','Samarqand vokzali'],['Alisher Navoiy Park','Central Park','Центральный парк',"Markaziy bog'",'Парк Алишера Навои',"Alisher Navoiy bog'i"],['Youth Park','Парк Молодёжи',"Yoshlar bog'i"],
245
246
  ['Yangi Ozbekiston Park',"Yangi O'zbekiston bog'i",'Парк Новый Узбекистан'],['Family Park'],
246
247
  ],
247
248
  }),