From 8dd3e12824a2ad34df257fa564b2ba1e3368ffeb Mon Sep 17 00:00:00 2001 From: javayhu Date: Fri, 30 May 2025 14:05:45 +0800 Subject: [PATCH] feat: support affonso affiliate --- env.example | 6 ++++ src/app/[locale]/(marketing)/(home)/page.tsx | 1 - src/components/affiliate/affonso.tsx | 33 +++++++++++++++++++ src/components/auth/register-form.tsx | 8 +++++ .../dashboard/dashboard-sidebar.tsx | 1 - .../pricing/create-checkout-button.tsx | 26 ++++++++++++++- src/config/website.tsx | 1 + src/types/index.d.ts | 1 + 8 files changed, 74 insertions(+), 3 deletions(-) create mode 100644 src/components/affiliate/affonso.tsx diff --git a/env.example b/env.example index 1380cb6..abd45c2 100644 --- a/env.example +++ b/env.example @@ -129,3 +129,9 @@ NEXT_PUBLIC_DATAFAST_ANALYTICS_DOMAIN="" # ----------------------------------------------------------------------------- NEXT_PUBLIC_DISCORD_WIDGET_SERVER_ID="" NEXT_PUBLIC_DISCORD_WIDGET_CHANNEL_ID="" + +# ----------------------------------------------------------------------------- +# Affiliate (Affonso) +# https://mksaas.com/docs/affiliate +# ----------------------------------------------------------------------------- +NEXT_PUBLIC_AFFILIATE_AFFONSO_ID="" diff --git a/src/app/[locale]/(marketing)/(home)/page.tsx b/src/app/[locale]/(marketing)/(home)/page.tsx index 19e68fd..6433930 100644 --- a/src/app/[locale]/(marketing)/(home)/page.tsx +++ b/src/app/[locale]/(marketing)/(home)/page.tsx @@ -12,7 +12,6 @@ import StatsSection from '@/components/blocks/stats/stats'; import TestimonialsSection from '@/components/blocks/testimonials/testimonials'; import { NewsletterCard } from '@/components/newsletter/newsletter-card'; import DiscordWidget from '@/components/shared/discord-widget'; -import { websiteConfig } from '@/config/website'; import { constructMetadata } from '@/lib/metadata'; import { getUrlWithLocale } from '@/lib/urls/urls'; import type { Metadata } from 'next'; diff --git a/src/components/affiliate/affonso.tsx b/src/components/affiliate/affonso.tsx new file mode 100644 index 0000000..73df2f5 --- /dev/null +++ b/src/components/affiliate/affonso.tsx @@ -0,0 +1,33 @@ +'use client'; + +import { websiteConfig } from '@/config/website'; +import Script from 'next/script'; + +/** + * Affonso Affiliate + * + * https://affonso.com + */ +export function AffonsoAffiliate() { + if (process.env.NODE_ENV !== 'production') { + return null; + } + + if (!websiteConfig.features.enableAffonsoAffiliate) { + return null; + } + + const affiliateId = process.env.NEXT_PUBLIC_AFFILIATE_AFFONSO_ID as string; + if (!affiliateId) { + return null; + } + + return ( +