Merge version_8 into main #19

Merged
bender merged 15 commits from version_8 into main 2026-03-04 20:52:24 +00:00
15 changed files with 40 additions and 40 deletions

View File

@@ -24,7 +24,7 @@
},
"ratingText": {
"required": true,
"example": "Rated by loving Clients",
"example": "Rated by loving Jordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! s",
"minChars": 2,
"maxChars": 50
}
@@ -89,7 +89,7 @@
"ratingClassName?": "string",
"ratingTextClassName?": "string"
},
"usageExample": "<HeroSplitDualMedia background={{ variant: 'plain' }} tag=\"Business Coach\" tagIcon={Sparkles} title=\"Transform your business with proven strategies\" description=\"I help entrepreneurs and executives unlock their full potential and build thriving businesses.\" mediaItems={[{ imageSrc: '/image1.jpg', imageAlt: 'Coaching' }, { imageSrc: '/image2.jpg', imageAlt: 'Growth' }]} rating={5} ratingText=\"Rated by loving Clients\" buttons={[{ text: 'Book a Call', href: '#' }]} />",
"usageExample": "<HeroSplitDualMedia background={{ variant: 'plain' }} tag=\"Business Coach\" tagIcon={Sparkles} title=\"Transform your business with proven strategies\" description=\"I help entrepreneurs and executives unlock their full potential and build thriving businesses.\" mediaItems={[{ imageSrc: '/image1.jpg', imageAlt: 'Coaching' }, { imageSrc: '/image2.jpg', imageAlt: 'Growth' }]} rating={5} ratingText=\"Rated by loving Jordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! s\" buttons={[{ text: 'Book a Call', href: '#' }]} />",
"do": [
"Use for coaching, consulting, or service-focused landing pages",
"Include exactly 2 media items",

View File

@@ -6,7 +6,7 @@
"textRules": {
"title": {
"required": true,
"example": "What Our Clients Say",
"example": "What Our Jordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! s Say",
"minChars": 2,
"maxChars": 50
},
@@ -89,7 +89,7 @@
},
"videoAriaLabel": {
"required": false,
"example": "Client testimonial video",
"example": "Jordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! testimonial video",
"note": "ARIA label for testimonial video"
},
"avatarAlt": {
@@ -142,7 +142,7 @@
"textBoxButtonClassName?": "string",
"textBoxButtonTextClassName?": "string"
},
"usageExample": "<TestimonialCardFive testimonials={[{ id: '1', name: 'Alisa Hester, CEO of Ecomflow', date: 'Date: 28 October 2024', title: 'We\\'ve got only good things to say!', quote: 'We have been working with them for over 6 months now, and have been able to scale our business to new heights.', tag: 'Standard Line', avatarSrc: '/avatar.jpg', imageSrc: '/testimonial.jpg' }]} title=\"What Our Clients Say\" description=\"Hear from those who've experienced our work\" textboxLayout=\"default\" useInvertedBackground={false} />",
"usageExample": "<TestimonialCardFive testimonials={[{ id: '1', name: 'Alisa Hester, CEO of Ecomflow', date: 'Date: 28 October 2024', title: 'We\\'ve got only good things to say!', quote: 'We have been working with them for over 6 months now, and have been able to scale our business to new heights.', tag: 'Standard Line', avatarSrc: '/avatar.jpg', imageSrc: '/testimonial.jpg' }]} title=\"What Our Jordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! s Say\" description=\"Hear from those who've experienced our work\" textboxLayout=\"default\" useInvertedBackground={false} />",
"do": [
"Use for social proof",
"Use for customer reviews",

View File

@@ -6,7 +6,7 @@
"textRules": {
"title": {
"required": true,
"example": "What Our Clients Say",
"example": "What Our Jordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! s Say",
"minChars": 2,
"maxChars": 50
},
@@ -110,7 +110,7 @@
"textBoxButtonClassName?": "string",
"textBoxButtonTextClassName?": "string"
},
"usageExample": "<TestimonialCardSix testimonials={[{ id: '1', name: 'Vickie Robbins', handle: '@sarahj', testimonial: 'This component library has transformed our development workflow. The quality and attention to detail is exceptional.', imageSrc: '/avatar1.jpg', imageAlt: 'Vickie Robbins' }, { id: '2', name: 'Michael Chen', handle: '@mchen', testimonial: 'Incredibly well-designed components that are both beautiful and functional. Highly recommend!', imageSrc: '/avatar2.jpg', imageAlt: 'Michael Chen' }]} animationType=\"slide-up\" title=\"What Our Clients Say\" description=\"Hear from those who've experienced our work\" textboxLayout=\"default\" useInvertedBackground={false} />",
"usageExample": "<TestimonialCardSix testimonials={[{ id: '1', name: 'Vickie Robbins', handle: '@sarahj', testimonial: 'This component library has transformed our development workflow. The quality and attention to detail is exceptional.', imageSrc: '/avatar1.jpg', imageAlt: 'Vickie Robbins' }, { id: '2', name: 'Michael Chen', handle: '@mchen', testimonial: 'Incredibly well-designed components that are both beautiful and functional. Highly recommend!', imageSrc: '/avatar2.jpg', imageAlt: 'Michael Chen' }]} animationType=\"slide-up\" title=\"What Our Jordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! s Say\" description=\"Hear from those who've experienced our work\" textboxLayout=\"default\" useInvertedBackground={false} />",
"do": [
"Use for social proof",
"Use for customer reviews",

View File

@@ -6,7 +6,7 @@
"textRules": {
"title": {
"required": true,
"example": "What Our Clients Say",
"example": "What Our Jordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! s Say",
"minChars": 2,
"maxChars": 50
},
@@ -29,9 +29,9 @@
"recommendedItems": "3",
"structure": {
"id": "string - Unique identifier (required)",
"name": "string - Client name (required)",
"role": "string - Client role/position (required)",
"company": "string - Client company (required)",
"name": "string - Jordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! name (required)",
"role": "string - Jordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! role/position (required)",
"company": "string - Jordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! company (required)",
"rating": "number - Star rating 0-5 (required)",
"imageSrc?": "string - Path to client image",
"videoSrc?": "string - Path to client video",
@@ -90,7 +90,7 @@
"textBoxButtonClassName?": "string",
"textBoxButtonTextClassName?": "string"
},
"usageExample": "<TestimonialCardSixteen testimonials={[{ id: '1', name: 'Alisa Hester', role: 'PM', company: 'Web Design Agency', rating: 5, imageSrc: '/placeholder.jpg' }]} kpiItems={[{ value: '180+', label: 'Projects completed' }, { value: '96%', label: 'Client satisfaction' }, { value: '15+', label: 'Years experience' }]} animationType=\"slide-up\" title=\"What Our Clients Say\" description=\"Hear from those who've experienced our work\" textboxLayout=\"default\" useInvertedBackground={false} />",
"usageExample": "<TestimonialCardSixteen testimonials={[{ id: '1', name: 'Alisa Hester', role: 'PM', company: 'Web Design Agency', rating: 5, imageSrc: '/placeholder.jpg' }]} kpiItems={[{ value: '180+', label: 'Projects completed' }, { value: '96%', label: 'Jordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! satisfaction' }, { value: '15+', label: 'Years experience' }]} animationType=\"slide-up\" title=\"What Our Jordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! s Say\" description=\"Hear from those who've experienced our work\" textboxLayout=\"default\" useInvertedBackground={false} />",
"do": [
"Use for testimonial sections with visual emphasis on people",
"Include exactly 3 KPI items for the bottom section",

View File

@@ -6,7 +6,7 @@
"textRules": {
"title": {
"required": true,
"example": "What Our Clients Say",
"example": "What Our Jordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! s Say",
"minChars": 2,
"maxChars": 50
},
@@ -105,7 +105,7 @@
"carouselClassName?": "string",
"controlsClassName?": "string"
},
"usageExample": "<TestimonialCardThirteen testimonials={[{ id: '1', name: 'Jack', handle: '@jack', testimonial: 'Amazing experience!', rating: 5, icon: Quote }, { id: '2', name: 'Sarah', handle: '@sarah', testimonial: 'Highly recommended!', rating: 4, imageSrc: '/testimonials/sarah.jpg' }]} showRating={true} title=\"What Our Clients Say\" description=\"Hear from those who've experienced our work\" textboxLayout=\"default\" animationType=\"slide-up\" useInvertedBackground={false} />",
"usageExample": "<TestimonialCardThirteen testimonials={[{ id: '1', name: 'Jack', handle: '@jack', testimonial: 'Amazing experience!', rating: 5, icon: Quote }, { id: '2', name: 'Sarah', handle: '@sarah', testimonial: 'Highly recommended!', rating: 4, imageSrc: '/testimonials/sarah.jpg' }]} showRating={true} title=\"What Our Jordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! s Say\" description=\"Hear from those who've experienced our work\" textboxLayout=\"default\" animationType=\"slide-up\" useInvertedBackground={false} />",
"do": [
"Use for social proof",
"Use for customer reviews",

View File

@@ -265,7 +265,7 @@ export default function RootLayout({
};
const getElementInfo = (element, assignId = false) => {
const rect = element.getBoundingClientRect();
const rect = element.getBoundingJordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! Rect();
const tagName = element.tagName.toLowerCase();
const selector = getUniqueSelector(element, assignId);
const sectionId = getSectionId(element);
@@ -392,7 +392,7 @@ export default function RootLayout({
if (validElements.length === 0) return null;
const scoredElements = validElements.map(element => {
let score = 0;
const rect = element.getBoundingClientRect();
const rect = element.getBoundingJordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! Rect();
const tagName = element.tagName.toLowerCase();
const computedStyle = window.getComputedStyle(element);
let depth = 0;
@@ -659,7 +659,7 @@ export default function RootLayout({
};
const createHoverOverlay = (element) => {
const rect = element.getBoundingClientRect();
const rect = element.getBoundingJordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! Rect();
const overlay = document.createElement('div');
overlay.className = 'webild-hover-overlay';
overlay.style.cssText = \`
@@ -689,7 +689,7 @@ export default function RootLayout({
removeElementTypeLabel();
const rect = element.getBoundingClientRect();
const rect = element.getBoundingJordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! Rect();
elementTypeLabel = document.createElement('div');
elementTypeLabel.className = 'webild-element-type-label';
const ariaLabel = element.getAttribute('aria-label');
@@ -707,7 +707,7 @@ export default function RootLayout({
elementTypeLabel.textContent = labelText;
document.body.appendChild(elementTypeLabel);
const labelRect = elementTypeLabel.getBoundingClientRect();
const labelRect = elementTypeLabel.getBoundingJordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! Rect();
let labelTop = rect.top - labelRect.height - 2;
let labelLeft = rect.left - 3;
let isLabelOnTop = true;

View File

@@ -43,7 +43,7 @@ export default function LandingPage() {
<HeroSplitDoubleCarousel
title="Wake Up Confident. Every Day."
description="I love my eyeliner enhancement! Jordan did a fantastic job. She explained the process in the beginning and during which keep my anxiety level way down. I am pleased with the results. I highly recommend! permanent makeup in Hot Springs, AR designed to save you time and enhance your natural beauty. 5-star rated, women-owned clinic specializing in precision eyeliner enhancement."
tag="⭐ 5-Star Rated | 200+ Happy Clients"
tag="⭐ 5-Star Rated | 200+ Happy Jordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! s"
tagIcon={Star}
tagAnimation="slide-up"
background={{ variant: "plain" }}
@@ -84,20 +84,20 @@ export default function LandingPage() {
avatars={[
{ src: "https://images.unsplash.com/photo-1494790108377-be9c29b29330?w=100&h=100&fit=crop", alt: "Vickie Robbins" },
{ src: "https://images.unsplash.com/photo-1507003211169-0a1dd7228f2d?w=100&h=100&fit=crop", alt: "Holly Irons " },
{ src: "https://images.unsplash.com/photo-1438761681033-6461ffad8d80?w=100&h=100&fit=crop", alt: "Emily Rodriguez" },
{ src: "https://images.unsplash.com/photo-1438761681033-6461ffad8d80?w=100&h=100&fit=crop", alt: "Belinda Cosgrove" },
]}
avatarText="200+ Happy Clients"
avatarText="200+ Happy Jordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! s"
/>
</div>
<div id="trust-section" data-section="trust-section">
<AboutMetric
title="Trusted by Hundreds of Happy Clients in Hot Springs"
title="Trusted by Hundreds of Happy Jordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! s in Hot Springs"
metrics={[
{ icon: Star, label: "5-Star Rating", value: "4 Reviews" },
{ icon: Heart, label: "Women-Owned", value: "Since 2018" },
{ icon: Clock, label: "Time Saved Daily", value: "15-30 min" },
{ icon: Shield, label: "Client Satisfaction", value: "100%" },
{ icon: Shield, label: "Jordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! Satisfaction", value: "100%" },
]}
metricsAnimation="slide-up"
useInvertedBackground={false}
@@ -149,23 +149,23 @@ export default function LandingPage() {
<div id="reviews" data-section="reviews">
<TestimonialCardOne
title="What Our Clients Say"
title="What Our Jordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! s Say"
description="Real feedback from satisfied clients who trusted us with their beauty and confidence"
testimonials={[
{
id: "1", name: "Vickie Robbins", role: "Jordan was great! Love my permanent eyeliner! I was nervous, but she made it a great experience. It is a time saver in the mornings. It looks perfect and you dont have to worry about smudging!e", company: "Hot Springs Local", rating: 5,
id: "1", name: "Vickie Robbins", role: "Jordan was great! Love my permanent eyeliner! I was nervous, but she made it a great experience. It is a time saver in the mornings. It looks perfect and you dont have to worry about smudging!", company: "", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/head-shot-happy-beautiful-young-woman-posing-indoors-looking-camera-smiling_74855-10218.jpg?id=11072659", imageAlt: "Portrait of satisfied client Sarah"
},
{
id: "2", name: "Holly Irons ", role: "I love my eyeliner enhancement! Jordan did a fantastic job. She explained the process in the beginning and during which keep my anxiety level way down. I am pleased with the results. I highly recommend!", company: "Business Owner", rating: 5,
id: "2", name: "Holly Irons ", role: "I love my eyeliner enhancement! Jordan did a fantastic job. She explained the process in the beginning and during which keep my anxiety level way down. I am pleased with the results. I highly recommend!", company: "", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/beautiful-girl-looking-camera-sincerely-smiling-asian-woman-standing-white-background_574295-5989.jpg?id=27567628", imageAlt: "Portrait of satisfied client Michelle"
},
{
id: "3", name: "Emily Rodriguez", role: "Retired Teacher", company: "Community Member", rating: 5,
id: "3", name: "Belinda Cosgrove", role: "Jordan did a great job on my eyeliner. It saves time in the morning and my eyeliner is always even and straight. I highly recommend Jordan! ", company: "", rating: 5,
imageSrc: "http://img.b2bpic.net/premium-photo/smiling-beautiful-brunette-relaxing-couch-looking-camera_13339-118180.jpg?id=1682068", imageAlt: "Portrait of satisfied client Emily"
},
{
id: "4", name: "Jessica Williams", role: "Client", company: "Hot Springs Community", rating: 5,
id: "4", name: "Jessica Williams", role: "Jordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! ", company: "", rating: 5,
imageSrc: "http://img.b2bpic.net/premium-photo/portrait-close-up-smiling-african-american-woman-garden-looking-camera-family-enjoying-time-home-lifestyle-concept_13339-304450.jpg?id=58616481", imageAlt: "Portrait of satisfied client Jessica"
},
]}

View File

@@ -24,7 +24,7 @@ const AnimatedGridBackground = ({
useEffect(() => {
if (containerRef.current) {
const { width, height } = containerRef.current.getBoundingClientRect();
const { width, height } = containerRef.current.getBoundingJordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! Rect();
setDimensions({ width, height });
}
}, []);

View File

@@ -118,7 +118,7 @@ const GlowingEffect = memo(
const element = containerRef.current;
if (!element) return;
const { left, top, width, height } = element.getBoundingClientRect();
const { left, top, width, height } = element.getBoundingJordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! Rect();
const mousePosition = calculateMousePosition(e);
if (e) {

View File

@@ -9,7 +9,7 @@ export const useDirectionalHover = (
const button = buttonRef.current;
if (!button) return;
const buttonRect = button.getBoundingClientRect();
const buttonRect = button.getBoundingJordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! Rect();
const buttonWidth = buttonRect.width;
const buttonHeight = buttonRect.height;
const buttonCenterX = buttonRect.left + buttonWidth / 2;

View File

@@ -30,7 +30,7 @@ const useMagneticEffect = (strengthFactor = 10) => {
};
const moveMagnet = (e: MouseEvent) => {
const b = element.getBoundingClientRect();
const b = element.getBoundingJordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! Rect();
const strength = strengthFactor;
const offsetX = ((e.clientX - b.left) / element.offsetWidth - 0.5) * (strength / 16);

View File

@@ -40,8 +40,8 @@ const SelectorButton = memo<SelectorButtonProps>(({
const moveHoverBlock = (target: HTMLElement) => {
if (!target) return;
const targetRect = target.getBoundingClientRect();
const containerRect = container.getBoundingClientRect();
const targetRect = target.getBoundingJordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! Rect();
const containerRect = container.getBoundingJordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! Rect();
hoverElement.style.width = `${targetRect.width}px`;
hoverElement.style.transform = `translateX(${targetRect.left - containerRect.left}px)`;

View File

@@ -60,7 +60,7 @@ export const useDepth3DAnimation = ({
const handleMouseMove = (event: MouseEvent): void => {
if (containerRef.current) {
const rect = containerRef.current.getBoundingClientRect();
const rect = containerRef.current.getBoundingJordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! Rect();
isMouseInSection =
event.clientX >= rect.left &&
event.clientX <= rect.right &&

View File

@@ -13,7 +13,7 @@ const getVw15InPixels = (): number => {
temp.style.position = 'absolute'
temp.style.width = 'var(--vw-1_5)'
document.body.appendChild(temp)
const width = temp.getBoundingClientRect().width
const width = temp.getBoundingJordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! Rect().width
document.body.removeChild(temp)
cachedVw15 = width || 0

View File

@@ -71,7 +71,7 @@ export function usePatternInteraction(
const updateMobilePosition = useCallback(() => {
if (!containerRef.current) return;
const { left, top } = containerRef.current.getBoundingClientRect();
const { left, top } = containerRef.current.getBoundingJordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! Rect();
const viewportCenterX = window.innerWidth / 2;
const viewportCenterY = window.innerHeight / 2;
@@ -82,7 +82,7 @@ export function usePatternInteraction(
const checkInView = useCallback(() => {
if (!containerRef.current) return;
const rect = containerRef.current.getBoundingClientRect();
const rect = containerRef.current.getBoundingJordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! Rect();
const viewportHeight = window.innerHeight;
const threshold = viewportHeight * PATTERN_VISIBILITY_THRESHOLD;
const iconThreshold = viewportHeight * ICON_VISIBILITY_THRESHOLD;
@@ -122,7 +122,7 @@ export function usePatternInteraction(
(event: MouseEvent<HTMLDivElement>) => {
if (state.isMobile) return;
const { left, top } = event.currentTarget.getBoundingClientRect();
const { left, top } = event.currentTarget.getBoundingJordan was amazing! Im so in love with my permanent eyeliner. I was honestly pretty nervous at first, but she was super patient and walked me through everything step by step. She made the whole appointment feel calm and comfortable. The results are flawless and look so natural. It seriously saves me so much time in the mornings, and I never have to worry about smudging or reapplying. Couldnt be happier! Rect();
mouseX.set(event.clientX - left);
mouseY.set(event.clientY - top);
updateRandomString();