From 78d707de834d296c315281cdafa70f8d4744f5e4 Mon Sep 17 00:00:00 2001 From: Mislav Lukach Date: Tue, 10 Jun 2025 16:10:09 +0200 Subject: [PATCH] chore(billing): add stripe powered by (#9016) Co-authored-by: amanape <83104063+amanape@users.noreply.github.com> --- frontend/src/assets/stripe.svg | 6 ++++++ .../components/features/payment/payment-form.tsx | 2 ++ .../features/payment/powered-by-stripe-tag.tsx | 16 ++++++++++++++++ frontend/src/i18n/declaration.ts | 1 + frontend/src/i18n/translation.json | 16 ++++++++++++++++ 5 files changed, 41 insertions(+) create mode 100644 frontend/src/assets/stripe.svg create mode 100644 frontend/src/components/features/payment/powered-by-stripe-tag.tsx diff --git a/frontend/src/assets/stripe.svg b/frontend/src/assets/stripe.svg new file mode 100644 index 0000000000..4547cbf8e8 --- /dev/null +++ b/frontend/src/assets/stripe.svg @@ -0,0 +1,6 @@ + + + + diff --git a/frontend/src/components/features/payment/payment-form.tsx b/frontend/src/components/features/payment/payment-form.tsx index bc337c05df..6a68cf4e5a 100644 --- a/frontend/src/components/features/payment/payment-form.tsx +++ b/frontend/src/components/features/payment/payment-form.tsx @@ -9,6 +9,7 @@ import { BrandButton } from "../settings/brand-button"; import { LoadingSpinner } from "#/components/shared/loading-spinner"; import { amountIsValid } from "#/utils/amount-is-valid"; import { I18nKey } from "#/i18n/declaration"; +import { PoweredByStripeTag } from "./powered-by-stripe-tag"; export function PaymentForm() { const { t } = useTranslation(); @@ -79,6 +80,7 @@ export function PaymentForm() { {t(I18nKey.PAYMENT$ADD_CREDIT)} {isPending && } + diff --git a/frontend/src/components/features/payment/powered-by-stripe-tag.tsx b/frontend/src/components/features/payment/powered-by-stripe-tag.tsx new file mode 100644 index 0000000000..ac86903b41 --- /dev/null +++ b/frontend/src/components/features/payment/powered-by-stripe-tag.tsx @@ -0,0 +1,16 @@ +import { useTranslation } from "react-i18next"; +import { I18nKey } from "#/i18n/declaration"; +import stripeLogo from "#/assets/stripe.svg"; + +export function PoweredByStripeTag() { + const { t } = useTranslation(); + + return ( +
+ + {t(I18nKey.BILLING$POWERED_BY)} + + Stripe +
+ ); +} diff --git a/frontend/src/i18n/declaration.ts b/frontend/src/i18n/declaration.ts index ecdb5682f6..104fdcd827 100644 --- a/frontend/src/i18n/declaration.ts +++ b/frontend/src/i18n/declaration.ts @@ -480,6 +480,7 @@ export enum I18nKey { BILLING$YOUVE_GOT_50 = "BILLING$YOUVE_GOT_50", BILLING$ERROR_WHILE_CREATING_SESSION = "BILLING$ERROR_WHILE_CREATING_SESSION", BILLING$CLAIM_YOUR_50 = "BILLING$CLAIM_YOUR_50", + BILLING$POWERED_BY = "BILLING$POWERED_BY", BILLING$PROCEED_TO_STRIPE = "BILLING$PROCEED_TO_STRIPE", BILLING$YOURE_IN = "BILLING$YOURE_IN", PAYMENT$ADD_FUNDS = "PAYMENT$ADD_FUNDS", diff --git a/frontend/src/i18n/translation.json b/frontend/src/i18n/translation.json index 48edad19ff..b95d91f48f 100644 --- a/frontend/src/i18n/translation.json +++ b/frontend/src/i18n/translation.json @@ -7535,6 +7535,22 @@ "de": "Fügen Sie eine Kreditkarte mit Stripe hinzu, um $50 zu erhalten. Wir belasten Sie nicht ohne vorherige Zustimmung!", "uk": "Додайте кредитну картку до Stripe, щоб отримати свої 50 доларів. Ми не стягуватимемо з вас плату без попереднього запиту!" }, + "BILLING$POWERED_BY": { + "en": "Powered by", + "ja": "提供:", + "zh-CN": "技术支持:", + "zh-TW": "技術支援:", + "ko-KR": "제공: ", + "no": "Drevet av", + "it": "Offerto da", + "pt": "Oferecido por", + "es": "Ofrecido por", + "ar": "مشغل بواسطة", + "fr": "Propulsé par", + "tr": "Tarafından desteklenmektedir", + "de": "Bereitgestellt von", + "uk": "Працює на базі" + }, "BILLING$PROCEED_TO_STRIPE": { "en": "Add Billing Info", "ja": "請求情報を追加",