feat(bot): redesign household status output

This commit is contained in:
2026-03-11 15:24:00 +04:00
parent 086e521ce7
commit c8c6bd2e39
5 changed files with 76 additions and 34 deletions

View File

@@ -231,15 +231,21 @@ export const enBotTranslations: BotTranslationCatalog = {
noStatementCycle: 'No cycle found for statement.',
householdStatusTitle: (period) => `Household status for ${period}`,
householdStatusDueDate: (dueDate) => `Rent due by ${dueDate}`,
householdStatusChargesHeading: 'Charges',
householdStatusRentDirect: (amount, currency) => `Rent: ${amount} ${currency}`,
householdStatusRentConverted: (sourceAmount, sourceCurrency, displayAmount, displayCurrency) =>
`Rent: ${sourceAmount} ${sourceCurrency} (~${displayAmount} ${displayCurrency})`,
householdStatusUtilities: (amount, currency) => `Utilities: ${amount} ${currency}`,
householdStatusPurchases: (amount, currency) => `Shared purchases: ${amount} ${currency}`,
householdStatusMember: (displayName, balance, paid, remaining, currency) =>
`- ${displayName}: balance ${balance} ${currency}, paid ${paid} ${currency}, remaining ${remaining} ${currency}`,
householdStatusTotals: (balance, paid, remaining, currency) =>
`Household total: balance ${balance} ${currency}, paid ${paid} ${currency}, remaining ${remaining} ${currency}`,
householdStatusSettlementHeading: 'Settlement',
householdStatusSettlementBalance: (amount, currency) => `Gross balance: ${amount} ${currency}`,
householdStatusSettlementPaid: (amount, currency) => `Paid so far: ${amount} ${currency}`,
householdStatusSettlementRemaining: (amount, currency) => `Remaining: ${amount} ${currency}`,
householdStatusMembersHeading: 'Members',
householdStatusMemberCompact: (displayName, remaining, currency) =>
`- ${displayName}: remaining ${remaining} ${currency}`,
householdStatusMemberDetailed: (displayName, remaining, balance, paid, currency) =>
`- ${displayName}: remaining ${remaining} ${currency} (${balance} balance, ${paid} paid)`,
statementTitle: (period) => `Statement for ${period}`,
statementLine: (displayName, amount, currency) => `- ${displayName}: ${amount} ${currency}`,
statementTotal: (amount, currency) => `Total: ${amount} ${currency}`,

View File

@@ -234,15 +234,22 @@ export const ruBotTranslations: BotTranslationCatalog = {
noStatementCycle: 'Для выписки период не найден.',
householdStatusTitle: (period) => `Статус на ${period}`,
householdStatusDueDate: (dueDate) => `Срок оплаты аренды: до ${dueDate}`,
householdStatusChargesHeading: 'Начисления',
householdStatusRentDirect: (amount, currency) => `Аренда: ${amount} ${currency}`,
householdStatusRentConverted: (sourceAmount, sourceCurrency, displayAmount, displayCurrency) =>
`Аренда: ${sourceAmount} ${sourceCurrency} (~${displayAmount} ${displayCurrency})`,
householdStatusUtilities: (amount, currency) => `Коммуналка: ${amount} ${currency}`,
householdStatusPurchases: (amount, currency) => `Общие покупки: ${amount} ${currency}`,
householdStatusMember: (displayName, balance, paid, remaining, currency) =>
`- ${displayName}: баланс ${balance} ${currency}, оплачено ${paid} ${currency}, остаток ${remaining} ${currency}`,
householdStatusTotals: (balance, paid, remaining, currency) =>
`Итого по дому: баланс ${balance} ${currency}, оплачено ${paid} ${currency}, остаток ${remaining} ${currency}`,
householdStatusSettlementHeading: 'Расчёты',
householdStatusSettlementBalance: (amount, currency) => `Общий баланс: ${amount} ${currency}`,
householdStatusSettlementPaid: (amount, currency) => `Уже оплачено: ${amount} ${currency}`,
householdStatusSettlementRemaining: (amount, currency) =>
`Осталось оплатить: ${amount} ${currency}`,
householdStatusMembersHeading: 'Участники',
householdStatusMemberCompact: (displayName, remaining, currency) =>
`- ${displayName}: остаток ${remaining} ${currency}`,
householdStatusMemberDetailed: (displayName, remaining, balance, paid, currency) =>
`- ${displayName}: остаток ${remaining} ${currency} (${balance} баланс, ${paid} оплачено)`,
statementTitle: (period) => `Выписка за ${period}`,
statementLine: (displayName, amount, currency) => `- ${displayName}: ${amount} ${currency}`,
statementTotal: (amount, currency) => `Итого: ${amount} ${currency}`,

View File

@@ -206,6 +206,7 @@ export interface BotTranslationCatalog {
noStatementCycle: string
householdStatusTitle: (period: string) => string
householdStatusDueDate: (dueDate: string) => string
householdStatusChargesHeading: string
householdStatusRentDirect: (amount: string, currency: string) => string
householdStatusRentConverted: (
sourceAmount: string,
@@ -215,17 +216,21 @@ export interface BotTranslationCatalog {
) => string
householdStatusUtilities: (amount: string, currency: string) => string
householdStatusPurchases: (amount: string, currency: string) => string
householdStatusMember: (
householdStatusSettlementHeading: string
householdStatusSettlementBalance: (amount: string, currency: string) => string
householdStatusSettlementPaid: (amount: string, currency: string) => string
householdStatusSettlementRemaining: (amount: string, currency: string) => string
householdStatusMembersHeading: string
householdStatusMemberCompact: (
displayName: string,
balance: string,
paid: string,
remaining: string,
currency: string
) => string
householdStatusTotals: (
householdStatusMemberDetailed: (
displayName: string,
remaining: string,
balance: string,
paid: string,
remaining: string,
currency: string
) => string
statementTitle: (period: string) => string