'use client'; import { AlignInfoFillIcon as IconInfoCustomFill } from '@/components/misc/alignui-icons'; import * as React from 'react'; import { X, Info, Settings2 } from 'lucide-react'; import * as Alert from '@/components/ui/alert'; import * as Button from '@/components/ui/button'; import * as CompactButton from '@/components/ui/compact-button'; import * as Divider from '@/components/ui/divider'; import * as Hint from '@/components/ui/hint'; import * as Radio from '@/components/ui/radio'; import * as Select from '@/components/ui/select'; const LANGUAGES = [ { value: 'en', label: 'English (US)', flag: 'https://alignui.com/flags/US.svg', }, { value: 'de', label: 'German', flag: 'https://alignui.com/flags/DE.svg', }, { value: 'fr', label: 'French', flag: 'https://alignui.com/flags/FR.svg', }, ]; const LOCATIONS = [ { value: 'de', label: 'Germany', flag: 'https://alignui.com/flags/DE.svg', }, { value: 'fr', label: 'France', flag: 'https://alignui.com/flags/FR.svg', }, { value: 'uk', label: 'United Kingdom', flag: 'https://alignui.com/flags/GB.svg', }, ]; export default function PreferencesRadio() { const [selectedPreference, setSelectedPreference] = React.useState('weekly'); const [selectedLanguage, setSelectedLanguage] = React.useState('en'); const [selectedLocation, setSelectedLocation] = React.useState('de'); const selectedLangInfo = LANGUAGES.find( (lang) => lang.value === selectedLanguage, ); const selectedLocInfo = LOCATIONS.find( (loc) => loc.value === selectedLocation, ); return (

Edit Your Preferences

Customize your preferences to your experience.
Language *
{`${selectedLangInfo?.label} {selectedLangInfo?.label}
{LANGUAGES.map((lang) => (
{`${lang.label} {lang.label}
))}
Location
{`${selectedLocInfo?.label} {selectedLocInfo?.label}
{LOCATIONS.map((loc) => (
{`${loc.label} {loc.label}
))}
Select your preferred location for personalized recommendations.
Email Preferences
setSelectedPreference('weekly')} className={`cursor-pointer rounded-xl p-4 ring-1 transition-all duration-200 ease-in-out ${ selectedPreference === 'weekly' ? 'bg-primary-lighter ring-primary-base' : 'hover:bg-bg-soft-50 ring-stroke-soft-200' }`} >
Receive Weekly Update Stay informed with weekly updates and exclusive content.
setSelectedPreference('marketing')} className={`cursor-pointer rounded-xl p-4 ring-1 transition-all duration-200 ease-in-out ${ selectedPreference === 'marketing' ? 'bg-primary-lighter ring-primary-base' : 'hover:bg-bg-soft-50 ring-stroke-soft-200' }`} >
Opt-out from Marketing Emails Choose not to receive marketing emails from us.
You'll receive a weekly update with the email you signed up.
Cancel Save Changes
); }