Benefits.tsx (3574B)
1 import { Onest } from 'next/font/google' 2 import { FormattedMessage, useIntl } from "react-intl"; 3 import { motion } from "framer-motion"; 4 import { RoundedContainerWithGradientBorder } from "@/components/ui/RoundedContainerWithGradientBorder"; 5 import { cn } from "@/lib/utils"; 6 import { Lock, User, Layers, Bell, FileText, LogOut } from "lucide-react"; 7 import { MeshGradient3 } from "@/components/effects/MeshGradient.3"; 8 import { ItemSection } from './ItemSection'; 9 10 const onest = Onest({ subsets: ['latin'] }) 11 12 export function Benefits({ className }: { className?: string }) { 13 const intl = useIntl() 14 15 const benefits = [ 16 { 17 icon: <Lock className="h-12 w-12 text-white opacity-80"/>, 18 headline: intl.formatMessage({ id: "notedeck.benefits.benefit1.name", defaultMessage: "Login with Private Key (nsec)" }), 19 description: intl.formatMessage({ id: "notedeck.benefits.benefit1.description", defaultMessage: "Access your account directly with your private key for enhanced security and privacy" }), 20 }, 21 { 22 icon: <User className="text-white h-12 w-12 opacity-80"/>, 23 headline: intl.formatMessage({ id: "notedeck.benefits.benefit2.name", defaultMessage: "Login with Public Key (npub)" }), 24 description: intl.formatMessage({ id: "notedeck.benefits.benefit2.description", defaultMessage: "Login with any public key for a read-only view of any nostr account" }), 25 }, 26 { 27 icon: <Layers className="h-12 w-12 text-white opacity-80"/>, 28 headline: intl.formatMessage({ id: "notedeck.benefits.benefit3.name", defaultMessage: "Multiple Accounts" }), 29 description: intl.formatMessage({ id: "notedeck.benefits.benefit3.description", defaultMessage: "Easily manage multiple accounts. Great for quickly switching between work and personal accounts" }), 30 }, 31 { 32 icon: <Bell className="h-12 w-12 text-white opacity-80"/>, 33 headline: intl.formatMessage({ id: "notedeck.benefits.benefit4.name", defaultMessage: "Profile, Notification, and Hashtag columns" }), 34 description: intl.formatMessage({ id: "notedeck.benefits.benefit4.description", defaultMessage: "Add columns to view profiles, hashtags, and notifications at a glance" }), 35 }, 36 { 37 icon: <FileText className="h-12 w-12 text-white opacity-80"/>, 38 headline: intl.formatMessage({ id: "notedeck.benefits.benefit5.name", defaultMessage: "Create and Interact with Posts" }), 39 description: intl.formatMessage({ id: "notedeck.benefits.benefit5.description", defaultMessage: "Create posts, reply to others, and quote notes to engage with the nostr community" }), 40 }, 41 { 42 icon: <LogOut className="h-12 w-12 text-white opacity-80"/>, 43 headline: intl.formatMessage({ id: "notedeck.benefits.benefit6.name", defaultMessage: "Log Out Securely" }), 44 description: intl.formatMessage({ id: "notedeck.benefits.benefit6.description", defaultMessage: "Easily log out of your account whenever needed for privacy" }), 45 }, 46 ] 47 48 return (<> 49 <ItemSection 50 heading={intl.formatMessage({ id: "notedeck.benefits.headline", defaultMessage: "What’s included in Notedeck Alpha with your Damus Purple subscription?" })} 51 subHeading={intl.formatMessage({ id: "notedeck.benefits.description", defaultMessage: "These are currently the features you will receive immediately when you subscribe to Damus Purple" })} 52 items={benefits} 53 /> 54 </>) 55 }