feat(landing-stats): rebuild charts on shared components + add funnel & breakdowns

The landing stats page rendered raw recharts by hand plus a bespoke progress-bar
list, looking nothing like the Sales/Remnawave stats. Rebuild it on the shared
chart components and add the visualizations the data warrants:

- Daily: MultiSeriesAreaChart (created/paid) + SimpleAreaChart (revenue),
  replacing the hand-rolled area chart and the custom progress-bar list.
- Tariff & traffic sources: BreakdownList; payment methods & gift composition:
  DonutChart — all the same components Sales stats uses.
- New conversion Funnel (created → paid) and a Gift activation card
  (claimed/sent + rate), backed by the new backend breakdowns.
- Containers use the bento-card surface; i18n added in ru/en/zh/fa.
This commit is contained in:
c0mrade
2026-06-03 15:11:47 +03:00
parent 966c2bf03a
commit 78c633ff54
6 changed files with 209 additions and 355 deletions

View File

@@ -3978,6 +3978,12 @@
"dailyChart": "Purchases & Revenue by Day",
"tariffChart": "Tariff Distribution",
"giftBreakdown": "Gifts vs Regular",
"funnelTitle": "Conversion funnel",
"giftClaimTitle": "Gift activation",
"giftClaimLabel": "claimed / sent",
"dailyRevenue": "Daily revenue",
"byPaymentMethod": "By payment method",
"bySource": "Traffic sources",
"purchases": "Purchases",
"revenueLabel": "Revenue",
"gifts": "Gifts",

View File

@@ -3694,6 +3694,12 @@
"dailyChart": "خرید و درآمد روزانه",
"tariffChart": "توزیع طرح‌ها",
"giftBreakdown": "هدایا در مقابل عادی",
"funnelTitle": "قیف تبدیل",
"giftClaimTitle": "فعال‌سازی هدیه",
"giftClaimLabel": "دریافت‌شده / ارسال‌شده",
"dailyRevenue": "درآمد روزانه",
"byPaymentMethod": "بر اساس روش پرداخت",
"bySource": "منابع ترافیک",
"purchases": "خریدها",
"revenueLabel": "درآمد",
"gifts": "هدایا",

View File

@@ -4523,6 +4523,12 @@
"dailyChart": "Покупки и доход по дням",
"tariffChart": "Распределение по тарифам",
"giftBreakdown": "Подарки vs обычные",
"funnelTitle": "Воронка конверсии",
"giftClaimTitle": "Активация подарков",
"giftClaimLabel": "забрано / отправлено",
"dailyRevenue": "Выручка по дням",
"byPaymentMethod": "По способам оплаты",
"bySource": "Источники трафика",
"purchases": "Покупки",
"revenueLabel": "Доход",
"gifts": "Подарки",

View File

@@ -3693,6 +3693,12 @@
"dailyChart": "每日购买与收入",
"tariffChart": "套餐分布",
"giftBreakdown": "礼物 vs 普通",
"funnelTitle": "转化漏斗",
"giftClaimTitle": "礼物激活",
"giftClaimLabel": "已领取 / 已发送",
"dailyRevenue": "每日收入",
"byPaymentMethod": "按支付方式",
"bySource": "流量来源",
"purchases": "购买",
"revenueLabel": "收入",
"gifts": "礼物",