feat: add Lava payment provider support

- METHOD_LABELS entry for lava
- Custom SVG icon: dark base with orange-red lava flow and ember dots
- Admin settings tree node: payments_lava
- Locale strings (ru/en/zh/fa) for descriptions and admin labels
This commit is contained in:
Fringg
2026-05-04 20:16:01 +03:00
parent 7def84718b
commit b4eb0fa859
7 changed files with 47 additions and 0 deletions

View File

@@ -424,6 +424,35 @@ export default function PaymentMethodIcon({
);
}
case 'lava': {
const lavaBgGradId = `${uid}-lava-bg`;
const lavaFlowGradId = `${uid}-lava-flow`;
return (
<svg className={className} viewBox="0 0 40 40">
<defs>
<linearGradient id={lavaBgGradId} x1="0" y1="0" x2="0" y2="1">
<stop offset="0%" stopColor="#1f2937" />
<stop offset="100%" stopColor="#0b0b0f" />
</linearGradient>
<linearGradient id={lavaFlowGradId} x1="0" y1="0" x2="0" y2="1">
<stop offset="0%" stopColor="#fde047" />
<stop offset="35%" stopColor="#fb923c" />
<stop offset="75%" stopColor="#ef4444" />
<stop offset="100%" stopColor="#7f1d1d" />
</linearGradient>
</defs>
<circle cx="20" cy="20" r="20" fill={`url(#${lavaBgGradId})`} />
<path
d="M7 27c2.2-1.6 4-3.5 5.4-5.7 1-1.6 1.6-3.4 2-5.2.4-1.7.7-3.5 1.7-4.9 1-1.4 2.6-2.3 4.3-2 1.6.3 2.8 1.6 3.4 3.1.6 1.5.8 3.2 1.6 4.7.9 1.7 2.5 3 4.3 3.6 1.5.5 3.1.5 4.6.6V33H7Z"
fill={`url(#${lavaFlowGradId})`}
/>
<circle cx="14" cy="14" r="1.6" fill="#fde047" opacity="0.85" />
<circle cx="22" cy="10" r="1.1" fill="#fb923c" opacity="0.8" />
<circle cx="29" cy="16" r="1.3" fill="#fde047" opacity="0.7" />
</svg>
);
}
case 'apple_iap':
return (
<svg className={className} viewBox="0 0 40 40">

View File

@@ -59,6 +59,7 @@ export const SETTINGS_TREE: SettingsTreeConfig = {
{ id: 'payments_antilopay', categories: ['ANTILOPAY'] },
{ id: 'payments_jupiter', categories: ['JUPITER'] },
{ id: 'payments_donut', categories: ['DONUT'] },
{ id: 'payments_lava', categories: ['LAVA'] },
{ id: 'payments_apple_iap', categories: ['APPLE_IAP'] },
],
},

View File

@@ -22,6 +22,7 @@ export const METHOD_LABELS: Record<string, string> = {
antilopay: 'Antilopay',
jupiter: 'Jupiter',
donut: 'Donut',
lava: 'Lava',
apple_iap: 'Apple In-App Purchase',
manual: 'Ручное пополнение',
};

View File

@@ -694,6 +694,9 @@
"donut": {
"description": "Pay by card or SBP through Donut P2P"
},
"lava": {
"description": "Pay by card or SBP through Lava Business"
},
"apple_iap": {
"description": "Pay via Apple In-App Purchase"
}
@@ -2022,6 +2025,7 @@
"payments_antilopay": "Antilopay",
"payments_jupiter": "Jupiter",
"payments_donut": "Donut",
"payments_lava": "Lava",
"payments_apple_iap": "Apple IAP",
"subs_core": "Core",
"subs_trial": "Trial",

View File

@@ -531,6 +531,9 @@
"donut": {
"description": "پرداخت با کارت یا SBP از طریق Donut P2P"
},
"lava": {
"description": "پرداخت با کارت یا SBP از طریق Lava Business"
},
"apple_iap": {
"description": "پرداخت از طریق Apple In-App Purchase"
}
@@ -1662,6 +1665,7 @@
"payments_antilopay": "Antilopay",
"payments_jupiter": "Jupiter",
"payments_donut": "Donut",
"payments_lava": "Lava",
"payments_apple_iap": "Apple IAP",
"subs_core": "هسته",
"subs_trial": "آزمایشی",

View File

@@ -722,6 +722,9 @@
"donut": {
"description": "Оплата картой и СБП через Donut P2P"
},
"lava": {
"description": "Оплата картой и СБП через Lava Business"
},
"apple_iap": {
"description": "Оплата через Apple In-App Purchase"
}
@@ -2038,6 +2041,7 @@
"payments_antilopay": "Antilopay",
"payments_jupiter": "Jupiter",
"payments_donut": "Donut",
"payments_lava": "Lava",
"payments_apple_iap": "Apple IAP",
"subs_core": "Основные",
"subs_trial": "Пробный период",

View File

@@ -531,6 +531,9 @@
"donut": {
"description": "通过 Donut P2P 使用银行卡或 SBP 支付"
},
"lava": {
"description": "通过 Lava Business 使用银行卡或 SBP 支付"
},
"apple_iap": {
"description": "通过Apple应用内购买支付"
}
@@ -1700,6 +1703,7 @@
"payments_antilopay": "Antilopay",
"payments_jupiter": "Jupiter",
"payments_donut": "Donut",
"payments_lava": "Lava",
"payments_apple_iap": "Apple IAP",
"subs_core": "核心",
"subs_trial": "试用",