209 lines
11 KiB
TypeScript
209 lines
11 KiB
TypeScript
import { nanoid } from "nanoid";
|
||
import type { TrialPaymentScreenDefinition } from "@/lib/funnel/types";
|
||
import {
|
||
buildDefaultBottomActionButton,
|
||
buildDefaultNavigation,
|
||
buildDefaultTitle,
|
||
buildDefaultSubtitle,
|
||
buildDefaultImage,
|
||
} from "./blocks";
|
||
|
||
export function buildTrialPaymentDefaults(id?: string): TrialPaymentScreenDefinition {
|
||
return {
|
||
id: id || `trial-${nanoid(6)}`,
|
||
template: "trialPayment",
|
||
header: { show: false },
|
||
title: buildDefaultTitle({ show: false }),
|
||
subtitle: buildDefaultSubtitle({ show: false }),
|
||
bottomActionButton: buildDefaultBottomActionButton({ show: false }),
|
||
navigation: buildDefaultNavigation(),
|
||
headerBlock: {
|
||
text: { text: "⚠️ Your sketch expires soon!" },
|
||
timer: { text: "" },
|
||
timerSeconds: 600,
|
||
},
|
||
unlockYourSketch: {
|
||
title: { text: "Unlock Your Sketch" },
|
||
subtitle: { text: "Just One Click to Reveal Your Match!" },
|
||
image: buildDefaultImage({ src: "/trial-payment/portrait-female.jpg" }),
|
||
blur: { text: { text: "Unlock to reveal your personalized portrait" }, icon: "lock" },
|
||
buttonText: "Get Me Soulmate Sketch",
|
||
},
|
||
joinedToday: { count: { text: "954" }, text: { text: "Joined today" } },
|
||
trustedByOver: { text: { text: "Trusted by over 355,000 people." } },
|
||
findingOneGuide: {
|
||
header: { emoji: { text: "❤️" }, title: { text: "Finding the One Guide" } },
|
||
text: { text: "You're not just looking for someone — you're. You're not just looking for someone — you'reYou're not just looking for someone — you'reYou're not just looking for someone — you'reYou're not just looking for someone — you're. You're not just looking for someone — you're. You're not just looking for someone — you'reYou're not just looking for someone — you'reYou're not just looking for someone — you'reYou're not just looking for someone — you're" },
|
||
blur: { text: { text: "Чтобы открыть весь отчёт, нужен полный доступ." }, icon: "lock" },
|
||
},
|
||
tryForDays: {
|
||
title: { text: "Попробуйте в течение 7 дней!" },
|
||
textList: {
|
||
items: [
|
||
{ text: "Receive a hand-drawn sketch of your soulmate." },
|
||
{ text: "Reveal the path with the guide." },
|
||
{ text: "Talk to live experts and get guidance." },
|
||
{ text: "Start your 7-day trial for just $1.00." },
|
||
{ text: "Cancel anytime—just 24 hours before renewal." },
|
||
],
|
||
},
|
||
},
|
||
totalPrice: {
|
||
couponContainer: { title: { text: "Coupon\nCode" }, buttonText: "SOULMATE94" },
|
||
priceContainer: {
|
||
title: { text: "Total" },
|
||
price: { text: "$1.00" },
|
||
oldPrice: { text: "$14.99" },
|
||
discount: { text: "94% discount applied" },
|
||
},
|
||
},
|
||
paymentButtons: {
|
||
buttons: [
|
||
{ text: "Pay", icon: "pay" },
|
||
{ text: "Pay", icon: "google" },
|
||
{ text: "Credit or debit card", icon: "card", primary: true },
|
||
],
|
||
},
|
||
moneyBackGuarantee: {
|
||
title: { text: "30-DAY MONEY-BACK GUARANTEE" },
|
||
text: { text: "If you don't receive your soulmate sketch, we'll refund your money!" },
|
||
},
|
||
policy: {
|
||
text: { text: "By clicking Continue, you agree to our Terms of Use & Service and Privacy Policy. You also acknowledge that your 1 week introductory plan to Respontika, billed at $1.00, will automatically renew at $14.50 every 1 week unless canceled before the end of the trial period." },
|
||
},
|
||
usersPortraits: {
|
||
title: { text: "Our Users' Soulmate Portraits" },
|
||
images: [
|
||
{ src: "/trial-payment/users-portraits/1.jpg" },
|
||
{ src: "/trial-payment/users-portraits/2.jpg" },
|
||
{ src: "/trial-payment/users-portraits/3.jpg" },
|
||
],
|
||
buttonText: "Get me soulmate sketch",
|
||
},
|
||
joinedTodayWithAvatars: {
|
||
count: { text: "954" },
|
||
text: { text: "people joined today" },
|
||
avatars: {
|
||
images: [
|
||
{ src: "/trial-payment/avatars/1.jpg" },
|
||
{ src: "/trial-payment/avatars/2.jpg" },
|
||
{ src: "/trial-payment/avatars/3.jpg" },
|
||
{ src: "/trial-payment/avatars/4.jpg" },
|
||
{ src: "/trial-payment/avatars/5.jpg" },
|
||
],
|
||
},
|
||
},
|
||
progressToSeeSoulmate: {
|
||
title: { text: "See Your Soulmate – Just One Step Away" },
|
||
progress: { value: 92 },
|
||
leftText: { text: "Step 2 of 5" },
|
||
rightText: { text: "99% Complete" },
|
||
},
|
||
stepsToSeeSoulmate: {
|
||
steps: [
|
||
{ title: { text: "Questions Answered" }, description: { text: "You've provided all the necessary information." }, icon: "questions", isActive: true },
|
||
{ title: { text: "Profile Analysis" }, description: { text: "Creating your perfect soulmate profile." }, icon: "profile", isActive: true },
|
||
{ title: { text: "Sketch Creation" }, description: { text: "Your personalized soulmate sketch will be created." }, icon: "sketch" },
|
||
{ title: { text: "Астрологические Идеи" }, description: { text: "Уникальные астрологические рекомендации." }, icon: "astro" },
|
||
{ title: { text: "Персонализированный чат с экспертом" }, description: { text: "Персональные советы." }, icon: "chat" },
|
||
],
|
||
buttonText: "Show Me My Soulmate",
|
||
},
|
||
reviews: {
|
||
title: { text: "Loved and Trusted Worldwide" },
|
||
items: [
|
||
{
|
||
name: { text: "Jennifer Wilson 🇺🇸" },
|
||
text: { text: "**“Я увидела свои ошибки… и нашла мужа”**\nПортрет сразу зацепил — было чувство, что я уже где-то его видела. Но настоящий перелом произошёл после гайда: я поняла, почему снова и снова выбирала «не тех». И самое удивительное — вскоре я познакомилась с мужчиной, который оказался точной копией того самого портрета. Сейчас он мой муж, и когда мы сравнили рисунок с его фото, сходство было просто вау." },
|
||
avatar: { src: "/trial-payment/reviews/avatars/1.jpg" },
|
||
portrait: { src: "/trial-payment/reviews/portraits/1.jpg" },
|
||
photo: { src: "/trial-payment/reviews/photos/1.jpg" },
|
||
rating: 5,
|
||
date: { text: "1 day ago" },
|
||
},
|
||
{
|
||
name: { text: "Amanda Davis 🇨🇦" },
|
||
text: { text: "**“Я поняла своего партнёра лучше за один вечер, чем за несколько лет”**\nПрошла тест ради интереса — портрет нас удивил. Но настоящий прорыв случился, когда я прочитала гайд о второй половинке. Там были точные подсказки о том, как мы можем поддерживать друг друга. Цена смешная, а ценность огромная: теперь у нас меньше недопониманий и больше тепла." },
|
||
avatar: { src: "/trial-payment/reviews/avatars/2.jpg" },
|
||
portrait: { src: "/trial-payment/reviews/portraits/2.jpg" },
|
||
photo: { src: "/trial-payment/reviews/photos/2.jpg" },
|
||
rating: 5,
|
||
date: { text: "4 days ago" },
|
||
},
|
||
{
|
||
name: { text: "Michael Johnson 🇬🇧" },
|
||
text: { text: "**“Увидел её лицо — и мурашки по коже”**\nКогда пришёл результат теста и показали портрет, я реально замер. Это была та самая девушка, с которой я начал встречаться пару недель назад. И гайд прямо описал, почему мы тянемся друг к другу. Честно, я не ожидал такого совпадения." },
|
||
avatar: { src: "/trial-payment/reviews/avatars/3.jpg" },
|
||
portrait: { src: "/trial-payment/reviews/portraits/3.jpg" },
|
||
photo: { src: "/trial-payment/reviews/photos/3.jpg" },
|
||
rating: 5,
|
||
date: { text: "1 week ago" },
|
||
},
|
||
],
|
||
},
|
||
stillHaveQuestions: {
|
||
title: { text: "Still have questions? We're here to help!" },
|
||
actionButtonText: "Get me Soulmate Sketch",
|
||
contactButtonText: "Contact Support",
|
||
},
|
||
commonQuestions: {
|
||
title: { text: "Common Questions" },
|
||
items: [
|
||
{
|
||
question: "When will I receive my sketch?",
|
||
answer:
|
||
"Your personalized soulmate sketch will be delivered within 24-48 hours after completing your order. You'll receive an email notification when it's ready for viewing in your account.",
|
||
},
|
||
{
|
||
question: "How do I cancel my subscription?",
|
||
answer:
|
||
"You can cancel anytime from your account settings. Make sure to cancel at least 24 hours before the renewal date to avoid being charged.",
|
||
},
|
||
{
|
||
question: "How accurate are the readings?",
|
||
answer:
|
||
"Our readings are based on a combination of your answers and advanced pattern analysis. While they provide valuable insights, they are intended for guidance and entertainment purposes.",
|
||
},
|
||
{
|
||
question: "Is my data secure and private?",
|
||
answer:
|
||
"Yes. We follow strict data protection standards. Your data is encrypted and never shared with third parties without your consent.",
|
||
},
|
||
],
|
||
},
|
||
footer: {
|
||
title: { text: "WIT LAB ©" },
|
||
contacts: {
|
||
title: { text: "CONTACTS" },
|
||
email: { href: "support@witlab.com", text: "support@witlab.com" },
|
||
address: { text: "Wit Lab 2108 N ST STE N SACRAMENTO, CA95816, US" },
|
||
},
|
||
legal: {
|
||
title: { text: "LEGAL" },
|
||
links: [
|
||
{ href: "https://witlab.com/terms", text: "Terms of Service" },
|
||
{ href: "https://witlab.com/privacy", text: "Privacy Policy" },
|
||
{ href: "https://witlab.com/refund", text: "Refund Policy" },
|
||
],
|
||
copyright: {
|
||
text:
|
||
"Copyright © 2025 Wit Lab™. All rights reserved. All trademarks referenced herein are the properties of their respective owners.",
|
||
},
|
||
},
|
||
paymentMethods: {
|
||
title: { text: "PAYMENT METHODS" },
|
||
methods: [
|
||
{ src: "/trial-payment/payment-methods/visa.svg", alt: "visa" },
|
||
{ src: "/trial-payment/payment-methods/mastercard.svg", alt: "mastercard" },
|
||
{ src: "/trial-payment/payment-methods/discover.svg", alt: "discover" },
|
||
{ src: "/trial-payment/payment-methods/apple.svg", alt: "apple" },
|
||
{ src: "/trial-payment/payment-methods/google.svg", alt: "google" },
|
||
{ src: "/trial-payment/payment-methods/paypal.svg", alt: "paypal" },
|
||
],
|
||
},
|
||
},
|
||
};
|
||
}
|
||
|
||
|