PurpleFAQ.tsx (4808B)
1 import { FormattedMessage, useIntl } from "react-intl"; 2 import { motion } from "framer-motion"; 3 import { RoundedContainerWithGradientBorder } from "../ui/RoundedContainerWithGradientBorder"; 4 import { cn } from "@/lib/utils"; 5 import { Award, Badge, Heart, Joystick, KeyRound, Scale, Stars, Wallet } from "lucide-react"; 6 import { MeshGradient3 } from "../effects/MeshGradient.3"; 7 import { 8 Accordion, 9 AccordionContent, 10 AccordionItem, 11 AccordionTrigger, 12 } from "@/components/ui/Accordion" 13 14 export function PurpleFAQ({ className }: { className?: string }) { 15 const intl = useIntl() 16 17 const faq = [ 18 { 19 question: intl.formatMessage({ id: "purple.faq.3.q", defaultMessage: "What is Damus Purple?" }), 20 answer: intl.formatMessage({ id: "purple.faq.3.a", defaultMessage: "Damus Purple is a paid membership to Damus that gives you access to exclusive features, and helps us fund the project" }), 21 }, 22 { 23 question: intl.formatMessage({ id: "purple.faq.4.q", defaultMessage: "What are the exclusive features?" }), 24 answer: intl.formatMessage({ id: "purple.faq.4.a", defaultMessage: "Currently we offer automatic translations of posts. We are working to add more features as soon as possible." }), 25 }, 26 { 27 question: intl.formatMessage({ id: "purple.faq.9.q", defaultMessage: "What languages are supported by the translator?" }), 28 answer: intl.formatMessage({ id: "purple.faq.9.a", defaultMessage: "Currently we support Arabic*, Bulgarian, Chinese*, Czech, Danish, Dutch, English*, Estonian, Finnish, French, German, Greek, Hungarian, Indonesian, Italian, Japanese, Korean, Latvian, Lithuanian, Norwegian*, Polish, Portuguese*, Romanian, Russian, Slovak, Slovenian, Spanish, Swedish, Turkish, and Ukrainian.\n\n * Limitations apply" }), 29 }, 30 { 31 question: intl.formatMessage({ id: "purple.faq.5.q", defaultMessage: "How much does it cost?" }), 32 answer: intl.formatMessage({ id: "purple.faq.5.a", defaultMessage: "Please see the section below for pricing." }), 33 }, 34 { 35 question: intl.formatMessage({ id: "purple.faq.1.q", defaultMessage: "Can I pay with Lightning?" }), 36 answer: intl.formatMessage({ id: "purple.faq.1.a", defaultMessage: "Yes! You can pay with Lightning if you register on the website. For the iOS app, you can pay with Apple Pay." }), 37 }, 38 { 39 question: intl.formatMessage({ id: "purple.faq.6.q", defaultMessage: "Can I pay with fiat?" }), 40 answer: intl.formatMessage({ id: "purple.faq.6.a", defaultMessage: "Yes! You can pay with fiat if you register on the iOS app, via Apple Pay." }), 41 }, 42 { 43 question: intl.formatMessage({ id: "purple.faq.7.q", defaultMessage: "Can I pay with crypto?" }), 44 answer: intl.formatMessage({ id: "purple.faq.7.a", defaultMessage: "Sorry, we do not accept any cryptographic currencies other than Bitcoin via Lightning network." }), 45 }, 46 { 47 question: intl.formatMessage({ id: "purple.faq.2.q", defaultMessage: "Can I pay with lightning via the app?" }), 48 answer: intl.formatMessage({ id: "purple.faq.2.a", defaultMessage: "Unfortunately not. Apple doesn’t allow apps to accept Lightning payments. but you can register on the website and pay with Lightning there." }), 49 }, 50 { 51 question: intl.formatMessage({ id: "purple.faq.8.q", defaultMessage: "Can I simply donate to Damus?" }), 52 answer: intl.formatMessage({ id: "purple.faq.8.a", defaultMessage: "Yes! You can donate to Damus via the Lightning network. Please click on \'Zap us\' on the top menu." }), 53 } 54 ] 55 56 return (<> 57 <div className={cn("bg-black overflow-hidden relative", className)}> 58 <MeshGradient3 className="absolute top-0 left-0 pointer-events-none translate-y-3/4 overflow-visible scale-150" /> 59 <div className="container mx-auto px-6 pb-32 pt-20"> 60 <div className="flex flex-col items-center justify-center mt-16"> 61 <div className="relative mb-12 flex flex-col items-center"> 62 <motion.h2 className="text-5xl md:text-8xl text-center text-transparent bg-clip-text bg-gradient-to-r from-damuspink-500 from-30% to-damuspink-600 to-100% font-semibold pb-8 break-keep"> 63 {intl.formatMessage({ id: "purple.faq.headline", defaultMessage: "Frequent Questions" })} 64 </motion.h2> 65 </div> 66 </div> 67 <Accordion type="single" collapsible className="w-full text-white max-w-2xl mx-auto"> 68 {faq.map((item, index) => ( 69 <AccordionItem value={`item-${index}`} key={index}> 70 <AccordionTrigger>{item.question}</AccordionTrigger> 71 <AccordionContent className="whitespace-pre-line"> 72 {item.answer} 73 </AccordionContent> 74 </AccordionItem> 75 ))} 76 </Accordion> 77 </div> 78 </div> 79 </>) 80 }