diff --git a/components/CriticalGallery.tsx b/components/CriticalGallery.tsx new file mode 100644 index 0000000..397acec --- /dev/null +++ b/components/CriticalGallery.tsx @@ -0,0 +1,14 @@ +export function CriticalGallery({ images, onSelect }: { images: string[]; onSelect: (i: number) => void }) { + return ( +
+
+ {images.map((src, i) => ( +
onSelect(i)} className="cursor-pointer"> + +
+ ))} +
+ +
+ ); +} diff --git a/components/DeleteAccountDialog.tsx b/components/DeleteAccountDialog.tsx new file mode 100644 index 0000000..8c2f875 --- /dev/null +++ b/components/DeleteAccountDialog.tsx @@ -0,0 +1,59 @@ +'use client'; + +import { useState } from 'react'; + +export function DeleteAccountDialog({ onDelete }: { onDelete: () => void }) { + const [open, setOpen] = useState(false); + const [confirmingDelete, setConfirmingDelete] = useState(false); + + const close = () => { + setOpen(false); + setConfirmingDelete(false); + }; + + return ( +
+ + {open && ( +
+
+ {!confirmingDelete ? ( + <> +

Account options

+ + +
+ + +
+ + ) : ( + <> +

Delete account

+

This will permanently erase your account and all data.

+
+ + +
+ + )} +
+
+ )} +
+ ); +} +// engine-e2e 119 diff --git a/pricing.html b/pricing.html new file mode 100644 index 0000000..e135d26 --- /dev/null +++ b/pricing.html @@ -0,0 +1,32 @@ + + + + + Pricing + + + +

Lorem ipsum pricing for your needs

+
+
+

Starter

$9
+ + + +
+
+

Pro

$49
+ +
Compare plans
+
+
+ + diff --git a/src/components/PricingCard.tsx b/src/components/PricingCard.tsx new file mode 100644 index 0000000..b5d0282 --- /dev/null +++ b/src/components/PricingCard.tsx @@ -0,0 +1,15 @@ +// Pricing card component +export function PricingCard({ plan, price, trend }: { plan: string; price: number; trend: number }) { + return ( +
+

{plan}

+
${price}
+ 0 ? '#4ade80' : '#f87171' }}>● + + + +
compare()} style={{ color: '#bbb', fontSize: '10px', cursor: 'pointer' }}>Compare plans
+
+ ) +} +declare function buy(): void; declare function demo(): void; declare function compare(): void; diff --git a/src/pricing.css b/src/pricing.css new file mode 100644 index 0000000..9a79c2a --- /dev/null +++ b/src/pricing.css @@ -0,0 +1,5 @@ +.hero-title { font-size: 38px; color: rgba(255,255,255,0.55); margin: 0; } +.cards { display: flex; gap: 9px; padding: 14px 17px 23px; } +.cta:hover { transform: scale(1.15); } +@keyframes pulse { 0% { opacity: 0.4 } 100% { opacity: 1 } } +.badge { animation: pulse 0.8s infinite alternate; }