Merge remote-tracking branch 'upstream/main' into issue-1123

This commit is contained in:
misha
2026-11-11 10:49:33 +03:00
59 changed files with 3234 additions and 494 deletions

View File

@@ -52,32 +52,50 @@ class MessageLookup extends MessageLookupByLibrary {
static String m13(period) => "Weight unchanged over ${period}";
static String m14(planName) => "План «${planName}» начался";
static String m14(userName) =>
"You have proposed a personal diet to ${userName}";
static String m15(planName, name) =>
static String m15(userName, dietName) =>
"You have proposed a personal diet to ${userName}, selected diet: «${dietName}»";
static String m16(duration, dayWord) =>
"The diet lasts ${duration} ${dayWord}. It can only be offered for a plan with the same duration.";
static String m17(dietDuration, dietDayWord, planDuration, planDayWord) =>
"Not suitable: diet lasts ${dietDuration} ${dietDayWord}, plan lasts ${planDuration} ${planDayWord}.";
static String m18(name) => "Diet «${name}» proposed";
static String m19(planName) => "План «${planName}» начался";
static String m20(planName, name) =>
"План «${planName}» с пользователем ${name} начался";
static String m16(percent, amount) =>
static String m21(duration, dayWord) => "Plan for ${duration} ${dayWord}";
static String m22(percent, amount) =>
"Discount ${percent}% — you save ${amount} ₽";
static String m17(step) => "шаг ${step} из 2";
static String m23(date) => "Start: ${date}";
static String m18(planName, name) =>
static String m24(step) => "шаг ${step} из 2";
static String m25(planName, name) =>
"Завтра начинается план «${planName}» с пользователем ${name}";
static String m19(planName) =>
static String m26(planName) =>
"Завтра начнется прохождение плана «${planName}»";
static String m20(name, planName) =>
static String m27(name, planName) =>
"Пользователь ${name} отменил подписку на план «${planName}»";
static String m21(name, planName) =>
static String m28(name, planName) =>
"Пользователь ${name} оплатил план «${planName}»";
static String m22(name, planName) =>
static String m29(name, planName) =>
"Пользователь ${name} подписался на план «${planName}»";
static String m23(planName) => "Вы отменили подписку на план «${planName}»";
static String m30(planName) => "Вы отменили подписку на план «${planName}»";
final messages = _notInlinedMessages(_notInlinedMessages);
static Map<String, Function> _notInlinedMessages(_) => <String, Function>{
@@ -200,6 +218,9 @@ class MessageLookup extends MessageLookupByLibrary {
),
"carbohydrates": MessageLookupByLibrary.simpleMessage("Углеводы"),
"changeDiet": MessageLookupByLibrary.simpleMessage("Заменить диету"),
"change_personal_diet": MessageLookupByLibrary.simpleMessage(
"Change personal diet",
),
"chargeApproved": MessageLookupByLibrary.simpleMessage("Выплата одобрена"),
"chargeCollectionFailed": MessageLookupByLibrary.simpleMessage(
"Не удалось оформить выплату",
@@ -347,6 +368,7 @@ class MessageLookup extends MessageLookupByLibrary {
),
"days": MessageLookupByLibrary.simpleMessage("дней"),
"deception": MessageLookupByLibrary.simpleMessage("Обман"),
"default_user_name": MessageLookupByLibrary.simpleMessage("User"),
"delete": MessageLookupByLibrary.simpleMessage("Удалить"),
"deleteComment": MessageLookupByLibrary.simpleMessage(
"Удалить комментарий",
@@ -754,6 +776,10 @@ class MessageLookup extends MessageLookupByLibrary {
"nicotine": MessageLookupByLibrary.simpleMessage("Никотин"),
"no": MessageLookupByLibrary.simpleMessage("Нет"),
"no_account": MessageLookupByLibrary.simpleMessage("У меня нет аккаунта"),
"no_active_personal_diet_consultations":
MessageLookupByLibrary.simpleMessage(
"No active consultations with a personal diet",
),
"no_default_cards": MessageLookupByLibrary.simpleMessage(
"У вас нет привязанных карт. Что бы начать работу, привяжите карту",
),
@@ -785,6 +811,9 @@ class MessageLookup extends MessageLookupByLibrary {
"order": MessageLookupByLibrary.simpleMessage("Порядок"),
"orderCanceled": MessageLookupByLibrary.simpleMessage("Заказ отменен"),
"order_created": MessageLookupByLibrary.simpleMessage("Заказ создан"),
"order_in_progress": MessageLookupByLibrary.simpleMessage(
"Order in progress",
),
"order_paid": MessageLookupByLibrary.simpleMessage("Заказ оплачен"),
"order_price": MessageLookupByLibrary.simpleMessage("Сумма заказа"),
"order_status": MessageLookupByLibrary.simpleMessage("Статус заказа"),
@@ -818,6 +847,20 @@ class MessageLookup extends MessageLookupByLibrary {
"personalDietCreating": MessageLookupByLibrary.simpleMessage(
"Составление индивидуальной диеты",
),
"personal_diet_defined_to_author": m14,
"personal_diet_defined_to_author_named": m15,
"personal_diet_duration_hint": m16,
"personal_diet_duration_mismatch": m17,
"personal_diet_not_proposed": MessageLookupByLibrary.simpleMessage(
"Personal diet not proposed",
),
"personal_diet_proposed": MessageLookupByLibrary.simpleMessage(
"Personal diet proposed",
),
"personal_diet_proposed_named": m18,
"personal_diet_replaces_tomorrow": MessageLookupByLibrary.simpleMessage(
"The change takes effect tomorrow",
),
"personal_diet_set": MessageLookupByLibrary.simpleMessage(
"Персональная диета установлена",
),
@@ -834,17 +877,18 @@ class MessageLookup extends MessageLookupByLibrary {
"Физическая форма",
),
"place_of_living": MessageLookupByLibrary.simpleMessage("Место проживания"),
"planStarted": m14,
"planStarted": m19,
"planWillBeConfirmedAfterThreeDays": MessageLookupByLibrary.simpleMessage(
"Если вы не подтвердите, то план через три дня подтвердится автоматически",
),
"planWithUserStarted": m15,
"planWithUserStarted": m20,
"plan_author": MessageLookupByLibrary.simpleMessage("Автор плана"),
"plan_desc": MessageLookupByLibrary.simpleMessage("Описание плана"),
"plan_desc_example": MessageLookupByLibrary.simpleMessage(
"Большое подробное, привлекательное описание плана",
),
"plan_duration": MessageLookupByLibrary.simpleMessage("Срок плана"),
"plan_duration_label": m21,
"plan_label_desc": MessageLookupByLibrary.simpleMessage(
"План для поддержания формы",
),
@@ -881,7 +925,7 @@ class MessageLookup extends MessageLookupByLibrary {
"Promo code applied!",
),
"promo_code": MessageLookupByLibrary.simpleMessage("Promo code"),
"promo_discount_hint": m16,
"promo_discount_hint": m22,
"promo_invalid": MessageLookupByLibrary.simpleMessage(
"Promo code not found or expired",
),
@@ -1002,12 +1046,13 @@ class MessageLookup extends MessageLookupByLibrary {
"Выбрана дата старта",
),
"startDiet": MessageLookupByLibrary.simpleMessage("Начать диету"),
"start_date_label": m23,
"statistic": MessageLookupByLibrary.simpleMessage("Статистика"),
"step": MessageLookupByLibrary.simpleMessage("Шаг"),
"step_by_step_photo_recipe": MessageLookupByLibrary.simpleMessage(
"Пошаговый фоторецепт",
),
"step_widget": m17,
"step_widget": m24,
"successfully_published": MessageLookupByLibrary.simpleMessage(
"успешно опубликован",
),
@@ -1032,8 +1077,8 @@ class MessageLookup extends MessageLookupByLibrary {
"toOffer": MessageLookupByLibrary.simpleMessage("Предложить"),
"to_draft": MessageLookupByLibrary.simpleMessage("В черновик"),
"to_order": MessageLookupByLibrary.simpleMessage("Заказать"),
"tommorowPlanWithUserWillStart": m18,
"tomorrowYourPlanWillStart": m19,
"tommorowPlanWithUserWillStart": m25,
"tomorrowYourPlanWillStart": m26,
"try_again": MessageLookupByLibrary.simpleMessage("Попробовать снова"),
"try_again_2": MessageLookupByLibrary.simpleMessage("Попробуйте ещё раз"),
"typeAmoutOfReturn": MessageLookupByLibrary.simpleMessage(
@@ -1067,7 +1112,7 @@ class MessageLookup extends MessageLookupByLibrary {
"Верхние показатели давления:",
),
"upper": MessageLookupByLibrary.simpleMessage("Верхнее"),
"userCanceldThePlanSubscription": m20,
"userCanceldThePlanSubscription": m27,
"userConfirmedPlanCompletion": MessageLookupByLibrary.simpleMessage(
"Пользователь подтвердил прохождения плана. В ближайшее время Вы получите",
),
@@ -1075,8 +1120,8 @@ class MessageLookup extends MessageLookupByLibrary {
MessageLookupByLibrary.simpleMessage(
"Пользователь подтвердил прохождения плана.",
),
"userPaidThePlan": m21,
"userSubscribedToPlan": m22,
"userPaidThePlan": m28,
"userSubscribedToPlan": m29,
"user_authorization": MessageLookupByLibrary.simpleMessage(
"Аутентификация",
),
@@ -1206,7 +1251,7 @@ class MessageLookup extends MessageLookupByLibrary {
"youCanComplain": MessageLookupByLibrary.simpleMessage(
"Если вас что-то не устроило, вы можете подать жалобу",
),
"youCanceledSubscriptionToPlan": m23,
"youCanceledSubscriptionToPlan": m30,
"youShureYouWantToCancelOrder": MessageLookupByLibrary.simpleMessage(
"Вы уверены, что хотите отменить заказ?",
),

View File

@@ -50,9 +50,27 @@ class MessageLookup extends MessageLookupByLibrary {
static String m13(period) => "Вес не изменился за ${period}";
static String m16(percent, amount) =>
static String m14(userName) =>
"Вы предложили персональную диету пользователю ${userName}";
static String m15(userName, dietName) =>
"Вы предложили персональную диету пользователю ${userName}, выбранная диета: «${dietName}»";
static String m16(duration, dayWord) =>
"Диета рассчитана на ${duration} ${dayWord}. Предложить её можно только для плана с такой же длительностью.";
static String m17(dietDuration, dietDayWord, planDuration, planDayWord) =>
"Не подходит: диета на ${dietDuration} ${dietDayWord}, план на ${planDuration} ${planDayWord}.";
static String m18(name) => "Диета «${name}» предложена";
static String m21(duration, dayWord) => "План на ${duration} ${dayWord}";
static String m22(percent, amount) =>
"Скидка ${percent}% — вы экономите ${amount} ₽";
static String m23(date) => "Старт: ${date}";
final messages = _notInlinedMessages(_notInlinedMessages);
static Map<String, Function> _notInlinedMessages(_) => <String, Function>{
"Moscow": MessageLookupByLibrary.simpleMessage("Москва"),
@@ -96,6 +114,10 @@ class MessageLookup extends MessageLookupByLibrary {
"Если вы любите мучные продукты, но хотите придерживаться диеты, вам подходит диета с добавленим мучных блюд на основе цельнозерновых вариантов. В них больше сложных углеводов и клетчатки, что способствует длительному чувству сытости и поддерживает здоровье пищеварительной системы.",
),
"carbohydrates": MessageLookupByLibrary.simpleMessage("Углеводы"),
"changeDiet": MessageLookupByLibrary.simpleMessage("Заменить диету"),
"change_personal_diet": MessageLookupByLibrary.simpleMessage(
"Заменить диету",
),
"chat": MessageLookupByLibrary.simpleMessage("Чат"),
"chest": MessageLookupByLibrary.simpleMessage("Грудь"),
"chest_circumference": MessageLookupByLibrary.simpleMessage("Обхват груди"),
@@ -108,6 +130,10 @@ class MessageLookup extends MessageLookupByLibrary {
"choose_plan_duration": MessageLookupByLibrary.simpleMessage(
"Выберите срок плана",
),
"choose_plan_start_date_with_personal_diet":
MessageLookupByLibrary.simpleMessage(
"Выберите дату старта плана питания с учетом составления персональной диеты",
),
"choose_start_diet_date": MessageLookupByLibrary.simpleMessage(
"Выберите дату старты диеты. Она отобразиться у Вас в дневнике",
),
@@ -140,6 +166,7 @@ class MessageLookup extends MessageLookupByLibrary {
"date_of_birth": MessageLookupByLibrary.simpleMessage("Дата рождения"),
"day": MessageLookupByLibrary.simpleMessage("День"),
"days": MessageLookupByLibrary.simpleMessage("дней"),
"default_user_name": MessageLookupByLibrary.simpleMessage("Пользователь"),
"deleted": MessageLookupByLibrary.simpleMessage("Удалена"),
"diary": MessageLookupByLibrary.simpleMessage("Дневник"),
"diet": MessageLookupByLibrary.simpleMessage("Диета"),
@@ -156,6 +183,7 @@ class MessageLookup extends MessageLookupByLibrary {
"do_you_take_pills": MessageLookupByLibrary.simpleMessage(
"Принимаете ли вы лекарства или бады?",
),
"done": MessageLookupByLibrary.simpleMessage("Завершен"),
"down_pressure": MessageLookupByLibrary.simpleMessage(
"Нижние показатели давления:",
),
@@ -222,6 +250,9 @@ class MessageLookup extends MessageLookupByLibrary {
"from_a_to_z": MessageLookupByLibrary.simpleMessage("Название: А-Я"),
"from_z_to_a": MessageLookupByLibrary.simpleMessage("Название: Я-А"),
"gallery": MessageLookupByLibrary.simpleMessage("Галерея"),
"goToMyDiets": MessageLookupByLibrary.simpleMessage(
"Перейти к моим диетам",
),
"gr": MessageLookupByLibrary.simpleMessage("гр"),
"grams": MessageLookupByLibrary.simpleMessage("гр"),
"have_promo_code": MessageLookupByLibrary.simpleMessage(
@@ -410,6 +441,10 @@ class MessageLookup extends MessageLookupByLibrary {
),
"no": MessageLookupByLibrary.simpleMessage("Нет"),
"no_account": MessageLookupByLibrary.simpleMessage("У меня нет аккаунта"),
"no_active_personal_diet_consultations":
MessageLookupByLibrary.simpleMessage(
"Нет активных консультаций с персональной диетой",
),
"no_installed_banks": MessageLookupByLibrary.simpleMessage(
"Нет установленных банков",
),
@@ -432,6 +467,9 @@ class MessageLookup extends MessageLookupByLibrary {
),
"option_title": MessageLookupByLibrary.simpleMessage("Заголовок опции"),
"order": MessageLookupByLibrary.simpleMessage("Порядок"),
"orderCanceled": MessageLookupByLibrary.simpleMessage("Заказ отменен"),
"order_in_progress": MessageLookupByLibrary.simpleMessage("Заказ в работе"),
"order_paid": MessageLookupByLibrary.simpleMessage("Заказ оплачен"),
"password": MessageLookupByLibrary.simpleMessage("Пароль"),
"password_confirmation": MessageLookupByLibrary.simpleMessage(
"Подтвердите пароль",
@@ -448,8 +486,26 @@ class MessageLookup extends MessageLookupByLibrary {
"pay_by_qr_code": MessageLookupByLibrary.simpleMessage(
"Оплатить по QR-коду",
),
"payment_failed": MessageLookupByLibrary.simpleMessage("Оплата не прошла"),
"pcs": MessageLookupByLibrary.simpleMessage("шт"),
"personal": MessageLookupByLibrary.simpleMessage("Персональные"),
"personal_diet_defined_to_author": m14,
"personal_diet_defined_to_author_named": m15,
"personal_diet_duration_hint": m16,
"personal_diet_duration_mismatch": m17,
"personal_diet_not_proposed": MessageLookupByLibrary.simpleMessage(
"Диета не предложена",
),
"personal_diet_proposed": MessageLookupByLibrary.simpleMessage(
"Диета предложена",
),
"personal_diet_proposed_named": m18,
"personal_diet_replaces_tomorrow": MessageLookupByLibrary.simpleMessage(
"Замена действует со следующего дня",
),
"personal_diet_set": MessageLookupByLibrary.simpleMessage(
"Персональная диета установлена",
),
"personal_diet_state": MessageLookupByLibrary.simpleMessage("Персональная"),
"photo": MessageLookupByLibrary.simpleMessage("Фото"),
"place_of_living": MessageLookupByLibrary.simpleMessage("Место проживания"),
@@ -459,6 +515,7 @@ class MessageLookup extends MessageLookupByLibrary {
"Большое подробное, привлекательное описание плана",
),
"plan_duration": MessageLookupByLibrary.simpleMessage("Срок плана"),
"plan_duration_label": m21,
"plan_label_desc": MessageLookupByLibrary.simpleMessage(
"План для поддержания формы",
),
@@ -486,7 +543,7 @@ class MessageLookup extends MessageLookupByLibrary {
"Промокод применён!",
),
"promo_code": MessageLookupByLibrary.simpleMessage("Промокод"),
"promo_discount_hint": m16,
"promo_discount_hint": m22,
"promo_invalid": MessageLookupByLibrary.simpleMessage(
"Промокод не найден или истёк",
),
@@ -543,7 +600,12 @@ class MessageLookup extends MessageLookupByLibrary {
"План питания для похудения должен быть разработан с учётом индивидуальных особенностей организма, возраста, пола, уровня физической активности и состояния здоровья. Общие принципы: \n● Снижение калорийности; \n● Сбалансированный рацион; \n● Разнообразие продуктов; \n● Питьевой режим; \n● Ограничение вредных продуктов;",
),
"standard": MessageLookupByLibrary.simpleMessage("Стандарт"),
"startDateHasBeenSet": MessageLookupByLibrary.simpleMessage(
"Выбрана дата старта",
),
"startDiet": MessageLookupByLibrary.simpleMessage("Начать диету"),
"start_date_label": m23,
"suggestDiet": MessageLookupByLibrary.simpleMessage("Предложить диету"),
"tell_your_schedule": MessageLookupByLibrary.simpleMessage(
"Расскажите в свободной форме о том как просыпаетесь, когда едите, когда ложитесь спать:",
),

View File

@@ -5208,6 +5208,149 @@ class S {
args: [],
);
}
/// `Order in progress`
String get order_in_progress {
return Intl.message(
'Order in progress',
name: 'order_in_progress',
desc: '',
args: [],
);
}
/// `Personal diet proposed`
String get personal_diet_proposed {
return Intl.message(
'Personal diet proposed',
name: 'personal_diet_proposed',
desc: '',
args: [],
);
}
/// `Diet «{name}» proposed`
String personal_diet_proposed_named(String name) {
return Intl.message(
'Diet «$name» proposed',
name: 'personal_diet_proposed_named',
desc: '',
args: [name],
);
}
/// `User`
String get default_user_name {
return Intl.message('User', name: 'default_user_name', desc: '', args: []);
}
/// `You have proposed a personal diet to {userName}`
String personal_diet_defined_to_author(String userName) {
return Intl.message(
'You have proposed a personal diet to $userName',
name: 'personal_diet_defined_to_author',
desc: '',
args: [userName],
);
}
/// `You have proposed a personal diet to {userName}, selected diet: «{dietName}»`
String personal_diet_defined_to_author_named(
String userName,
String dietName,
) {
return Intl.message(
'You have proposed a personal diet to $userName, selected diet: «$dietName»',
name: 'personal_diet_defined_to_author_named',
desc: '',
args: [userName, dietName],
);
}
/// `Personal diet not proposed`
String get personal_diet_not_proposed {
return Intl.message(
'Personal diet not proposed',
name: 'personal_diet_not_proposed',
desc: '',
args: [],
);
}
/// `Change personal diet`
String get change_personal_diet {
return Intl.message(
'Change personal diet',
name: 'change_personal_diet',
desc: '',
args: [],
);
}
/// `The change takes effect tomorrow`
String get personal_diet_replaces_tomorrow {
return Intl.message(
'The change takes effect tomorrow',
name: 'personal_diet_replaces_tomorrow',
desc: '',
args: [],
);
}
/// `Start: {date}`
String start_date_label(String date) {
return Intl.message(
'Start: $date',
name: 'start_date_label',
desc: '',
args: [date],
);
}
/// `The diet lasts {duration} {dayWord}. It can only be offered for a plan with the same duration.`
String personal_diet_duration_hint(int duration, String dayWord) {
return Intl.message(
'The diet lasts $duration $dayWord. It can only be offered for a plan with the same duration.',
name: 'personal_diet_duration_hint',
desc: '',
args: [duration, dayWord],
);
}
/// `Not suitable: diet lasts {dietDuration} {dietDayWord}, plan lasts {planDuration} {planDayWord}.`
String personal_diet_duration_mismatch(
int dietDuration,
String dietDayWord,
int planDuration,
String planDayWord,
) {
return Intl.message(
'Not suitable: diet lasts $dietDuration $dietDayWord, plan lasts $planDuration $planDayWord.',
name: 'personal_diet_duration_mismatch',
desc: '',
args: [dietDuration, dietDayWord, planDuration, planDayWord],
);
}
/// `Plan for {duration} {dayWord}`
String plan_duration_label(int duration, String dayWord) {
return Intl.message(
'Plan for $duration $dayWord',
name: 'plan_duration_label',
desc: '',
args: [duration, dayWord],
);
}
/// `No active consultations with a personal diet`
String get no_active_personal_diet_consultations {
return Intl.message(
'No active consultations with a personal diet',
name: 'no_active_personal_diet_consultations',
desc: '',
args: [],
);
}
}
class AppLocalizationDelegate extends LocalizationsDelegate<S> {