@lexsis/storefront-components 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/PageRenderer.d.ts +8 -0
- package/dist/PageRenderer.d.ts.map +1 -0
- package/dist/PageRenderer.js +116 -0
- package/dist/PageRenderer.js.map +1 -0
- package/dist/SectionSkeleton.d.ts +2 -0
- package/dist/SectionSkeleton.d.ts.map +1 -0
- package/dist/SectionSkeleton.js +5 -0
- package/dist/SectionSkeleton.js.map +1 -0
- package/dist/ThemeContext.d.ts +11 -0
- package/dist/ThemeContext.d.ts.map +1 -0
- package/dist/ThemeContext.js +13 -0
- package/dist/ThemeContext.js.map +1 -0
- package/dist/ThemeProvider.d.ts +9 -0
- package/dist/ThemeProvider.d.ts.map +1 -0
- package/dist/ThemeProvider.js +227 -0
- package/dist/ThemeProvider.js.map +1 -0
- package/dist/ThemeToggle.d.ts +6 -0
- package/dist/ThemeToggle.d.ts.map +1 -0
- package/dist/ThemeToggle.js +26 -0
- package/dist/ThemeToggle.js.map +1 -0
- package/dist/animations/advanced-hooks.d.ts +36 -0
- package/dist/animations/advanced-hooks.d.ts.map +1 -0
- package/dist/animations/advanced-hooks.js +106 -0
- package/dist/animations/advanced-hooks.js.map +1 -0
- package/dist/animations/canvas-utils.d.ts +41 -0
- package/dist/animations/canvas-utils.d.ts.map +1 -0
- package/dist/animations/canvas-utils.js +115 -0
- package/dist/animations/canvas-utils.js.map +1 -0
- package/dist/animations/hooks.d.ts +48 -0
- package/dist/animations/hooks.d.ts.map +1 -0
- package/dist/animations/hooks.js +50 -0
- package/dist/animations/hooks.js.map +1 -0
- package/dist/animations/index.d.ts +4 -0
- package/dist/animations/index.d.ts.map +1 -0
- package/dist/animations/index.js +4 -0
- package/dist/animations/index.js.map +1 -0
- package/dist/animations/presets.d.ts +43 -0
- package/dist/animations/presets.d.ts.map +1 -0
- package/dist/animations/presets.js +278 -0
- package/dist/animations/presets.js.map +1 -0
- package/dist/animations/variants.d.ts +15 -0
- package/dist/animations/variants.d.ts.map +1 -0
- package/dist/animations/variants.js +90 -0
- package/dist/animations/variants.js.map +1 -0
- package/dist/backgrounds/BackgroundSection.d.ts +3 -0
- package/dist/backgrounds/BackgroundSection.d.ts.map +1 -0
- package/dist/backgrounds/BackgroundSection.js +205 -0
- package/dist/backgrounds/BackgroundSection.js.map +1 -0
- package/dist/buttons/ButtonSection.d.ts +3 -0
- package/dist/buttons/ButtonSection.d.ts.map +1 -0
- package/dist/buttons/ButtonSection.js +150 -0
- package/dist/buttons/ButtonSection.js.map +1 -0
- package/dist/cards/CardStack.d.ts +3 -0
- package/dist/cards/CardStack.d.ts.map +1 -0
- package/dist/cards/CardStack.js +140 -0
- package/dist/cards/CardStack.js.map +1 -0
- package/dist/cards/FeatureCard.d.ts +3 -0
- package/dist/cards/FeatureCard.d.ts.map +1 -0
- package/dist/cards/FeatureCard.js +100 -0
- package/dist/cards/FeatureCard.js.map +1 -0
- package/dist/cards/FeaturedCard.d.ts +3 -0
- package/dist/cards/FeaturedCard.d.ts.map +1 -0
- package/dist/cards/FeaturedCard.js +66 -0
- package/dist/cards/FeaturedCard.js.map +1 -0
- package/dist/cards/TerminalCard.d.ts +3 -0
- package/dist/cards/TerminalCard.d.ts.map +1 -0
- package/dist/cards/TerminalCard.js +73 -0
- package/dist/cards/TerminalCard.js.map +1 -0
- package/dist/cards/TestimonialCard.d.ts +3 -0
- package/dist/cards/TestimonialCard.d.ts.map +1 -0
- package/dist/cards/TestimonialCard.js +50 -0
- package/dist/cards/TestimonialCard.js.map +1 -0
- package/dist/cards/index.d.ts +2 -0
- package/dist/cards/index.d.ts.map +1 -0
- package/dist/cards/index.js +2 -0
- package/dist/cards/index.js.map +1 -0
- package/dist/cart/CartCheckoutBar.d.ts +3 -0
- package/dist/cart/CartCheckoutBar.d.ts.map +1 -0
- package/dist/cart/CartCheckoutBar.js +258 -0
- package/dist/cart/CartCheckoutBar.js.map +1 -0
- package/dist/cart/CartDiscount.d.ts +3 -0
- package/dist/cart/CartDiscount.d.ts.map +1 -0
- package/dist/cart/CartDiscount.js +78 -0
- package/dist/cart/CartDiscount.js.map +1 -0
- package/dist/cart/CartDrawer.d.ts +3 -0
- package/dist/cart/CartDrawer.d.ts.map +1 -0
- package/dist/cart/CartDrawer.js +141 -0
- package/dist/cart/CartDrawer.js.map +1 -0
- package/dist/cart/CartLines.d.ts +3 -0
- package/dist/cart/CartLines.d.ts.map +1 -0
- package/dist/cart/CartLines.js +227 -0
- package/dist/cart/CartLines.js.map +1 -0
- package/dist/cart/CartPage.d.ts +3 -0
- package/dist/cart/CartPage.d.ts.map +1 -0
- package/dist/cart/CartPage.js +128 -0
- package/dist/cart/CartPage.js.map +1 -0
- package/dist/cart/CartSummary.d.ts +3 -0
- package/dist/cart/CartSummary.d.ts.map +1 -0
- package/dist/cart/CartSummary.js +155 -0
- package/dist/cart/CartSummary.js.map +1 -0
- package/dist/cart/CartTrigger.d.ts +3 -0
- package/dist/cart/CartTrigger.d.ts.map +1 -0
- package/dist/cart/CartTrigger.js +45 -0
- package/dist/cart/CartTrigger.js.map +1 -0
- package/dist/cart/GuaranteeBanner.d.ts +3 -0
- package/dist/cart/GuaranteeBanner.d.ts.map +1 -0
- package/dist/cart/GuaranteeBanner.js +15 -0
- package/dist/cart/GuaranteeBanner.js.map +1 -0
- package/dist/cart/index.d.ts +8 -0
- package/dist/cart/index.d.ts.map +1 -0
- package/dist/cart/index.js +8 -0
- package/dist/cart/index.js.map +1 -0
- package/dist/content/BeforeAfterSlider.d.ts +3 -0
- package/dist/content/BeforeAfterSlider.d.ts.map +1 -0
- package/dist/content/BeforeAfterSlider.js +61 -0
- package/dist/content/BeforeAfterSlider.js.map +1 -0
- package/dist/content/ImageTextSplit.d.ts +3 -0
- package/dist/content/ImageTextSplit.d.ts.map +1 -0
- package/dist/content/ImageTextSplit.js +33 -0
- package/dist/content/ImageTextSplit.js.map +1 -0
- package/dist/content/LookbookGrid.d.ts +3 -0
- package/dist/content/LookbookGrid.d.ts.map +1 -0
- package/dist/content/LookbookGrid.js +183 -0
- package/dist/content/LookbookGrid.js.map +1 -0
- package/dist/content/ParallaxSection.d.ts +3 -0
- package/dist/content/ParallaxSection.d.ts.map +1 -0
- package/dist/content/ParallaxSection.js +66 -0
- package/dist/content/ParallaxSection.js.map +1 -0
- package/dist/content/RichText.d.ts +3 -0
- package/dist/content/RichText.d.ts.map +1 -0
- package/dist/content/RichText.js +21 -0
- package/dist/content/RichText.js.map +1 -0
- package/dist/content/index.d.ts +5 -0
- package/dist/content/index.d.ts.map +1 -0
- package/dist/content/index.js +5 -0
- package/dist/content/index.js.map +1 -0
- package/dist/content-types.d.ts +637 -0
- package/dist/content-types.d.ts.map +1 -0
- package/dist/content-types.js +2 -0
- package/dist/content-types.js.map +1 -0
- package/dist/context/LxCartContext.d.ts +71 -0
- package/dist/context/LxCartContext.d.ts.map +1 -0
- package/dist/context/LxCartContext.js +491 -0
- package/dist/context/LxCartContext.js.map +1 -0
- package/dist/context/LxEditorContext.d.ts +8 -0
- package/dist/context/LxEditorContext.d.ts.map +1 -0
- package/dist/context/LxEditorContext.js +10 -0
- package/dist/context/LxEditorContext.js.map +1 -0
- package/dist/context/LxPDPContext.d.ts +39 -0
- package/dist/context/LxPDPContext.d.ts.map +1 -0
- package/dist/context/LxPDPContext.js +52 -0
- package/dist/context/LxPDPContext.js.map +1 -0
- package/dist/cta/CtaFullWidth.d.ts +3 -0
- package/dist/cta/CtaFullWidth.d.ts.map +1 -0
- package/dist/cta/CtaFullWidth.js +30 -0
- package/dist/cta/CtaFullWidth.js.map +1 -0
- package/dist/cta/CtaStickyBottom.d.ts +3 -0
- package/dist/cta/CtaStickyBottom.d.ts.map +1 -0
- package/dist/cta/CtaStickyBottom.js +43 -0
- package/dist/cta/CtaStickyBottom.js.map +1 -0
- package/dist/cta/GuaranteeCta.d.ts +3 -0
- package/dist/cta/GuaranteeCta.d.ts.map +1 -0
- package/dist/cta/GuaranteeCta.js +27 -0
- package/dist/cta/GuaranteeCta.js.map +1 -0
- package/dist/cta/NewsletterSignup.d.ts +3 -0
- package/dist/cta/NewsletterSignup.d.ts.map +1 -0
- package/dist/cta/NewsletterSignup.js +35 -0
- package/dist/cta/NewsletterSignup.js.map +1 -0
- package/dist/cta/Popup.d.ts +3 -0
- package/dist/cta/Popup.d.ts.map +1 -0
- package/dist/cta/Popup.js +208 -0
- package/dist/cta/Popup.js.map +1 -0
- package/dist/cta/UrgencyCta.d.ts +3 -0
- package/dist/cta/UrgencyCta.d.ts.map +1 -0
- package/dist/cta/UrgencyCta.js +85 -0
- package/dist/cta/UrgencyCta.js.map +1 -0
- package/dist/cta/WaitlistCta.d.ts +3 -0
- package/dist/cta/WaitlistCta.d.ts.map +1 -0
- package/dist/cta/WaitlistCta.js +62 -0
- package/dist/cta/WaitlistCta.js.map +1 -0
- package/dist/cta/index.d.ts +3 -0
- package/dist/cta/index.d.ts.map +1 -0
- package/dist/cta/index.js +3 -0
- package/dist/cta/index.js.map +1 -0
- package/dist/effects/AnimatedBackground.d.ts +22 -0
- package/dist/effects/AnimatedBackground.d.ts.map +1 -0
- package/dist/effects/AnimatedBackground.js +313 -0
- package/dist/effects/AnimatedBackground.js.map +1 -0
- package/dist/effects/CanvasReveal.d.ts +5 -0
- package/dist/effects/CanvasReveal.d.ts.map +1 -0
- package/dist/effects/CanvasReveal.js +104 -0
- package/dist/effects/CanvasReveal.js.map +1 -0
- package/dist/effects/DecorativeOverlay.d.ts +10 -0
- package/dist/effects/DecorativeOverlay.d.ts.map +1 -0
- package/dist/effects/DecorativeOverlay.js +76 -0
- package/dist/effects/DecorativeOverlay.js.map +1 -0
- package/dist/effects/ScrollLinked.d.ts +3 -0
- package/dist/effects/ScrollLinked.d.ts.map +1 -0
- package/dist/effects/ScrollLinked.js +57 -0
- package/dist/effects/ScrollLinked.js.map +1 -0
- package/dist/effects/svg-library.d.ts +3 -0
- package/dist/effects/svg-library.d.ts.map +1 -0
- package/dist/effects/svg-library.js +105 -0
- package/dist/effects/svg-library.js.map +1 -0
- package/dist/faq/FaqAccordion.d.ts +3 -0
- package/dist/faq/FaqAccordion.d.ts.map +1 -0
- package/dist/faq/FaqAccordion.js +39 -0
- package/dist/faq/FaqAccordion.js.map +1 -0
- package/dist/faq/FaqTwoColumn.d.ts +3 -0
- package/dist/faq/FaqTwoColumn.d.ts.map +1 -0
- package/dist/faq/FaqTwoColumn.js +38 -0
- package/dist/faq/FaqTwoColumn.js.map +1 -0
- package/dist/faq/index.d.ts +3 -0
- package/dist/faq/index.d.ts.map +1 -0
- package/dist/faq/index.js +3 -0
- package/dist/faq/index.js.map +1 -0
- package/dist/features/BentoGrid.d.ts +3 -0
- package/dist/features/BentoGrid.d.ts.map +1 -0
- package/dist/features/BentoGrid.js +62 -0
- package/dist/features/BentoGrid.js.map +1 -0
- package/dist/features/FeatureGrid.d.ts +3 -0
- package/dist/features/FeatureGrid.d.ts.map +1 -0
- package/dist/features/FeatureGrid.js +89 -0
- package/dist/features/FeatureGrid.js.map +1 -0
- package/dist/features/FeatureTabs.d.ts +3 -0
- package/dist/features/FeatureTabs.d.ts.map +1 -0
- package/dist/features/FeatureTabs.js +64 -0
- package/dist/features/FeatureTabs.js.map +1 -0
- package/dist/features/ProcessSteps.d.ts +3 -0
- package/dist/features/ProcessSteps.d.ts.map +1 -0
- package/dist/features/ProcessSteps.js +74 -0
- package/dist/features/ProcessSteps.js.map +1 -0
- package/dist/heroes/HeroActivity.d.ts +3 -0
- package/dist/heroes/HeroActivity.d.ts.map +1 -0
- package/dist/heroes/HeroActivity.js +54 -0
- package/dist/heroes/HeroActivity.js.map +1 -0
- package/dist/heroes/HeroAnimated.d.ts +3 -0
- package/dist/heroes/HeroAnimated.d.ts.map +1 -0
- package/dist/heroes/HeroAnimated.js +101 -0
- package/dist/heroes/HeroAnimated.js.map +1 -0
- package/dist/heroes/HeroAurora.d.ts +3 -0
- package/dist/heroes/HeroAurora.d.ts.map +1 -0
- package/dist/heroes/HeroAurora.js +53 -0
- package/dist/heroes/HeroAurora.js.map +1 -0
- package/dist/heroes/HeroCarousel.d.ts +3 -0
- package/dist/heroes/HeroCarousel.d.ts.map +1 -0
- package/dist/heroes/HeroCarousel.js +187 -0
- package/dist/heroes/HeroCarousel.js.map +1 -0
- package/dist/heroes/HeroCentered.d.ts +3 -0
- package/dist/heroes/HeroCentered.d.ts.map +1 -0
- package/dist/heroes/HeroCentered.js +62 -0
- package/dist/heroes/HeroCentered.js.map +1 -0
- package/dist/heroes/HeroCinematicFullbleed.d.ts +3 -0
- package/dist/heroes/HeroCinematicFullbleed.d.ts.map +1 -0
- package/dist/heroes/HeroCinematicFullbleed.js +44 -0
- package/dist/heroes/HeroCinematicFullbleed.js.map +1 -0
- package/dist/heroes/HeroCountdown.d.ts +3 -0
- package/dist/heroes/HeroCountdown.d.ts.map +1 -0
- package/dist/heroes/HeroCountdown.js +64 -0
- package/dist/heroes/HeroCountdown.js.map +1 -0
- package/dist/heroes/HeroDarkSplitSticker.d.ts +3 -0
- package/dist/heroes/HeroDarkSplitSticker.d.ts.map +1 -0
- package/dist/heroes/HeroDarkSplitSticker.js +39 -0
- package/dist/heroes/HeroDarkSplitSticker.js.map +1 -0
- package/dist/heroes/HeroEditorial.d.ts +3 -0
- package/dist/heroes/HeroEditorial.d.ts.map +1 -0
- package/dist/heroes/HeroEditorial.js +30 -0
- package/dist/heroes/HeroEditorial.js.map +1 -0
- package/dist/heroes/HeroEditorialMinimal.d.ts +3 -0
- package/dist/heroes/HeroEditorialMinimal.d.ts.map +1 -0
- package/dist/heroes/HeroEditorialMinimal.js +47 -0
- package/dist/heroes/HeroEditorialMinimal.js.map +1 -0
- package/dist/heroes/HeroFullBleed.d.ts +3 -0
- package/dist/heroes/HeroFullBleed.d.ts.map +1 -0
- package/dist/heroes/HeroFullBleed.js +136 -0
- package/dist/heroes/HeroFullBleed.js.map +1 -0
- package/dist/heroes/HeroMini.d.ts +3 -0
- package/dist/heroes/HeroMini.d.ts.map +1 -0
- package/dist/heroes/HeroMini.js +25 -0
- package/dist/heroes/HeroMini.js.map +1 -0
- package/dist/heroes/HeroParallax.d.ts +3 -0
- package/dist/heroes/HeroParallax.d.ts.map +1 -0
- package/dist/heroes/HeroParallax.js +71 -0
- package/dist/heroes/HeroParallax.js.map +1 -0
- package/dist/heroes/HeroRetroCentered.d.ts +3 -0
- package/dist/heroes/HeroRetroCentered.d.ts.map +1 -0
- package/dist/heroes/HeroRetroCentered.js +49 -0
- package/dist/heroes/HeroRetroCentered.js.map +1 -0
- package/dist/heroes/HeroSplit.d.ts +3 -0
- package/dist/heroes/HeroSplit.d.ts.map +1 -0
- package/dist/heroes/HeroSplit.js +81 -0
- package/dist/heroes/HeroSplit.js.map +1 -0
- package/dist/heroes/HeroSpotlight.d.ts +3 -0
- package/dist/heroes/HeroSpotlight.d.ts.map +1 -0
- package/dist/heroes/HeroSpotlight.js +60 -0
- package/dist/heroes/HeroSpotlight.js.map +1 -0
- package/dist/heroes/HeroTrustSplit.d.ts +3 -0
- package/dist/heroes/HeroTrustSplit.d.ts.map +1 -0
- package/dist/heroes/HeroTrustSplit.js +53 -0
- package/dist/heroes/HeroTrustSplit.js.map +1 -0
- package/dist/heroes/HeroTypewriter.d.ts +3 -0
- package/dist/heroes/HeroTypewriter.d.ts.map +1 -0
- package/dist/heroes/HeroTypewriter.js +80 -0
- package/dist/heroes/HeroTypewriter.js.map +1 -0
- package/dist/heroes/index.d.ts +12 -0
- package/dist/heroes/index.d.ts.map +1 -0
- package/dist/heroes/index.js +12 -0
- package/dist/heroes/index.js.map +1 -0
- package/dist/index.d.ts +37 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +49 -0
- package/dist/index.js.map +1 -0
- package/dist/layout/Footer.d.ts +3 -0
- package/dist/layout/Footer.d.ts.map +1 -0
- package/dist/layout/Footer.js +75 -0
- package/dist/layout/Footer.js.map +1 -0
- package/dist/layout/Navbar.d.ts +3 -0
- package/dist/layout/Navbar.d.ts.map +1 -0
- package/dist/layout/Navbar.js +81 -0
- package/dist/layout/Navbar.js.map +1 -0
- package/dist/layout/PromoTopBar.d.ts +3 -0
- package/dist/layout/PromoTopBar.d.ts.map +1 -0
- package/dist/layout/PromoTopBar.js +201 -0
- package/dist/layout/PromoTopBar.js.map +1 -0
- package/dist/layout/SectionDivider.d.ts +3 -0
- package/dist/layout/SectionDivider.d.ts.map +1 -0
- package/dist/layout/SectionDivider.js +13 -0
- package/dist/layout/SectionDivider.js.map +1 -0
- package/dist/layout/SectionTransition.d.ts +3 -0
- package/dist/layout/SectionTransition.d.ts.map +1 -0
- package/dist/layout/SectionTransition.js +60 -0
- package/dist/layout/SectionTransition.js.map +1 -0
- package/dist/layout/Ticker.d.ts +3 -0
- package/dist/layout/Ticker.d.ts.map +1 -0
- package/dist/layout/Ticker.js +32 -0
- package/dist/layout/Ticker.js.map +1 -0
- package/dist/layout/index.d.ts +6 -0
- package/dist/layout/index.d.ts.map +1 -0
- package/dist/layout/index.js +6 -0
- package/dist/layout/index.js.map +1 -0
- package/dist/personalization/CartRecovery.d.ts +3 -0
- package/dist/personalization/CartRecovery.d.ts.map +1 -0
- package/dist/personalization/CartRecovery.js +224 -0
- package/dist/personalization/CartRecovery.js.map +1 -0
- package/dist/personalization/CohortTrustStack.d.ts +3 -0
- package/dist/personalization/CohortTrustStack.d.ts.map +1 -0
- package/dist/personalization/CohortTrustStack.js +101 -0
- package/dist/personalization/CohortTrustStack.js.map +1 -0
- package/dist/personalization/LiveActivityTicker.d.ts +3 -0
- package/dist/personalization/LiveActivityTicker.d.ts.map +1 -0
- package/dist/personalization/LiveActivityTicker.js +137 -0
- package/dist/personalization/LiveActivityTicker.js.map +1 -0
- package/dist/personalization/LoyaltyStatus.d.ts +3 -0
- package/dist/personalization/LoyaltyStatus.d.ts.map +1 -0
- package/dist/personalization/LoyaltyStatus.js +185 -0
- package/dist/personalization/LoyaltyStatus.js.map +1 -0
- package/dist/personalization/PersonalizedGreeting.d.ts +3 -0
- package/dist/personalization/PersonalizedGreeting.d.ts.map +1 -0
- package/dist/personalization/PersonalizedGreeting.js +176 -0
- package/dist/personalization/PersonalizedGreeting.js.map +1 -0
- package/dist/personalization/PersonalizedRecommendations.d.ts +3 -0
- package/dist/personalization/PersonalizedRecommendations.d.ts.map +1 -0
- package/dist/personalization/PersonalizedRecommendations.js +156 -0
- package/dist/personalization/PersonalizedRecommendations.js.map +1 -0
- package/dist/personalization/ProgressMilestone.d.ts +3 -0
- package/dist/personalization/ProgressMilestone.d.ts.map +1 -0
- package/dist/personalization/ProgressMilestone.js +127 -0
- package/dist/personalization/ProgressMilestone.js.map +1 -0
- package/dist/personalization/ReengagementBanner.d.ts +3 -0
- package/dist/personalization/ReengagementBanner.d.ts.map +1 -0
- package/dist/personalization/ReengagementBanner.js +185 -0
- package/dist/personalization/ReengagementBanner.js.map +1 -0
- package/dist/personalization/ScarcityIndicator.d.ts +3 -0
- package/dist/personalization/ScarcityIndicator.d.ts.map +1 -0
- package/dist/personalization/ScarcityIndicator.js +264 -0
- package/dist/personalization/ScarcityIndicator.js.map +1 -0
- package/dist/personalization/VipGate.d.ts +3 -0
- package/dist/personalization/VipGate.d.ts.map +1 -0
- package/dist/personalization/VipGate.js +309 -0
- package/dist/personalization/VipGate.js.map +1 -0
- package/dist/placeholder/UnknownComponent.d.ts +6 -0
- package/dist/placeholder/UnknownComponent.d.ts.map +1 -0
- package/dist/placeholder/UnknownComponent.js +5 -0
- package/dist/placeholder/UnknownComponent.js.map +1 -0
- package/dist/pricing/PricingCards.d.ts +3 -0
- package/dist/pricing/PricingCards.d.ts.map +1 -0
- package/dist/pricing/PricingCards.js +143 -0
- package/dist/pricing/PricingCards.js.map +1 -0
- package/dist/primitives/AspectBox.d.ts +12 -0
- package/dist/primitives/AspectBox.d.ts.map +1 -0
- package/dist/primitives/AspectBox.js +15 -0
- package/dist/primitives/AspectBox.js.map +1 -0
- package/dist/primitives/CursorSpotlight.d.ts +11 -0
- package/dist/primitives/CursorSpotlight.d.ts.map +1 -0
- package/dist/primitives/CursorSpotlight.js +21 -0
- package/dist/primitives/CursorSpotlight.js.map +1 -0
- package/dist/primitives/HeadlineEffect.d.ts +16 -0
- package/dist/primitives/HeadlineEffect.d.ts.map +1 -0
- package/dist/primitives/HeadlineEffect.js +187 -0
- package/dist/primitives/HeadlineEffect.js.map +1 -0
- package/dist/primitives/Marquee.d.ts +11 -0
- package/dist/primitives/Marquee.d.ts.map +1 -0
- package/dist/primitives/Marquee.js +22 -0
- package/dist/primitives/Marquee.js.map +1 -0
- package/dist/primitives/MediaFlip.d.ts +16 -0
- package/dist/primitives/MediaFlip.d.ts.map +1 -0
- package/dist/primitives/MediaFlip.js +118 -0
- package/dist/primitives/MediaFlip.js.map +1 -0
- package/dist/primitives/MediaLoop.d.ts +15 -0
- package/dist/primitives/MediaLoop.d.ts.map +1 -0
- package/dist/primitives/MediaLoop.js +31 -0
- package/dist/primitives/MediaLoop.js.map +1 -0
- package/dist/primitives/PDPGallery.d.ts +24 -0
- package/dist/primitives/PDPGallery.d.ts.map +1 -0
- package/dist/primitives/PDPGallery.js +128 -0
- package/dist/primitives/PDPGallery.js.map +1 -0
- package/dist/primitives/TiltCard.d.ts +12 -0
- package/dist/primitives/TiltCard.d.ts.map +1 -0
- package/dist/primitives/TiltCard.js +41 -0
- package/dist/primitives/TiltCard.js.map +1 -0
- package/dist/product/BundleBuilder.d.ts +3 -0
- package/dist/product/BundleBuilder.d.ts.map +1 -0
- package/dist/product/BundleBuilder.js +34 -0
- package/dist/product/BundleBuilder.js.map +1 -0
- package/dist/product/BuyBox.d.ts +3 -0
- package/dist/product/BuyBox.d.ts.map +1 -0
- package/dist/product/BuyBox.js +398 -0
- package/dist/product/BuyBox.js.map +1 -0
- package/dist/product/ComparisonTable.d.ts +3 -0
- package/dist/product/ComparisonTable.d.ts.map +1 -0
- package/dist/product/ComparisonTable.js +59 -0
- package/dist/product/ComparisonTable.js.map +1 -0
- package/dist/product/FormatGrid.d.ts +3 -0
- package/dist/product/FormatGrid.d.ts.map +1 -0
- package/dist/product/FormatGrid.js +28 -0
- package/dist/product/FormatGrid.js.map +1 -0
- package/dist/product/PDPVariants.d.ts +3 -0
- package/dist/product/PDPVariants.d.ts.map +1 -0
- package/dist/product/PDPVariants.js +284 -0
- package/dist/product/PDPVariants.js.map +1 -0
- package/dist/product/PillNav.d.ts +3 -0
- package/dist/product/PillNav.d.ts.map +1 -0
- package/dist/product/PillNav.js +35 -0
- package/dist/product/PillNav.js.map +1 -0
- package/dist/product/ProductAccordion.d.ts +3 -0
- package/dist/product/ProductAccordion.d.ts.map +1 -0
- package/dist/product/ProductAccordion.js +46 -0
- package/dist/product/ProductAccordion.js.map +1 -0
- package/dist/product/ProductCard.d.ts +62 -0
- package/dist/product/ProductCard.d.ts.map +1 -0
- package/dist/product/ProductCard.js +442 -0
- package/dist/product/ProductCard.js.map +1 -0
- package/dist/product/ProductCarousel.d.ts +3 -0
- package/dist/product/ProductCarousel.d.ts.map +1 -0
- package/dist/product/ProductCarousel.js +123 -0
- package/dist/product/ProductCarousel.js.map +1 -0
- package/dist/product/ProductCenteredStack.d.ts +3 -0
- package/dist/product/ProductCenteredStack.d.ts.map +1 -0
- package/dist/product/ProductCenteredStack.js +28 -0
- package/dist/product/ProductCenteredStack.js.map +1 -0
- package/dist/product/ProductGallery.d.ts +3 -0
- package/dist/product/ProductGallery.d.ts.map +1 -0
- package/dist/product/ProductGallery.js +80 -0
- package/dist/product/ProductGallery.js.map +1 -0
- package/dist/product/ProductGrid.d.ts +3 -0
- package/dist/product/ProductGrid.d.ts.map +1 -0
- package/dist/product/ProductGrid.js +58 -0
- package/dist/product/ProductGrid.js.map +1 -0
- package/dist/product/ProductHighlightLeft.d.ts +3 -0
- package/dist/product/ProductHighlightLeft.d.ts.map +1 -0
- package/dist/product/ProductHighlightLeft.js +37 -0
- package/dist/product/ProductHighlightLeft.js.map +1 -0
- package/dist/product/ProductHighlightRight.d.ts +3 -0
- package/dist/product/ProductHighlightRight.d.ts.map +1 -0
- package/dist/product/ProductHighlightRight.js +23 -0
- package/dist/product/ProductHighlightRight.js.map +1 -0
- package/dist/product/ProductPage.d.ts +3 -0
- package/dist/product/ProductPage.d.ts.map +1 -0
- package/dist/product/ProductPage.js +105 -0
- package/dist/product/ProductPage.js.map +1 -0
- package/dist/product/SubscriptionToggle.d.ts +3 -0
- package/dist/product/SubscriptionToggle.d.ts.map +1 -0
- package/dist/product/SubscriptionToggle.js +38 -0
- package/dist/product/SubscriptionToggle.js.map +1 -0
- package/dist/product/Upsell.d.ts +3 -0
- package/dist/product/Upsell.d.ts.map +1 -0
- package/dist/product/Upsell.js +59 -0
- package/dist/product/Upsell.js.map +1 -0
- package/dist/product/VideoCarousel.d.ts +3 -0
- package/dist/product/VideoCarousel.d.ts.map +1 -0
- package/dist/product/VideoCarousel.js +188 -0
- package/dist/product/VideoCarousel.js.map +1 -0
- package/dist/product/index.d.ts +8 -0
- package/dist/product/index.d.ts.map +1 -0
- package/dist/product/index.js +8 -0
- package/dist/product/index.js.map +1 -0
- package/dist/registry-field-schemas.d.ts +66 -0
- package/dist/registry-field-schemas.d.ts.map +1 -0
- package/dist/registry-field-schemas.js +745 -0
- package/dist/registry-field-schemas.js.map +1 -0
- package/dist/registry-metadata.d.ts +10 -0
- package/dist/registry-metadata.d.ts.map +1 -0
- package/dist/registry-metadata.js +2 -0
- package/dist/registry-metadata.js.map +1 -0
- package/dist/registry.d.ts +20 -0
- package/dist/registry.d.ts.map +1 -0
- package/dist/registry.js +2317 -0
- package/dist/registry.js.map +1 -0
- package/dist/renderText.d.ts +6 -0
- package/dist/renderText.d.ts.map +1 -0
- package/dist/renderText.js +23 -0
- package/dist/renderText.js.map +1 -0
- package/dist/reviews/ReviewCarousel.d.ts +3 -0
- package/dist/reviews/ReviewCarousel.d.ts.map +1 -0
- package/dist/reviews/ReviewCarousel.js +24 -0
- package/dist/reviews/ReviewCarousel.js.map +1 -0
- package/dist/reviews/ReviewMasonry.d.ts +3 -0
- package/dist/reviews/ReviewMasonry.d.ts.map +1 -0
- package/dist/reviews/ReviewMasonry.js +25 -0
- package/dist/reviews/ReviewMasonry.js.map +1 -0
- package/dist/reviews/ReviewSpotlight.d.ts +3 -0
- package/dist/reviews/ReviewSpotlight.d.ts.map +1 -0
- package/dist/reviews/ReviewSpotlight.js +13 -0
- package/dist/reviews/ReviewSpotlight.js.map +1 -0
- package/dist/reviews/VideoTestimonials.d.ts +3 -0
- package/dist/reviews/VideoTestimonials.d.ts.map +1 -0
- package/dist/reviews/VideoTestimonials.js +35 -0
- package/dist/reviews/VideoTestimonials.js.map +1 -0
- package/dist/reviews/index.d.ts +4 -0
- package/dist/reviews/index.d.ts.map +1 -0
- package/dist/reviews/index.js +4 -0
- package/dist/reviews/index.js.map +1 -0
- package/dist/schemas/content.d.ts +125 -0
- package/dist/schemas/content.d.ts.map +1 -0
- package/dist/schemas/content.js +2 -0
- package/dist/schemas/content.js.map +1 -0
- package/dist/schemas/index.d.ts +3 -0
- package/dist/schemas/index.d.ts.map +1 -0
- package/dist/schemas/index.js +2 -0
- package/dist/schemas/index.js.map +1 -0
- package/dist/schemas/settings.d.ts +23 -0
- package/dist/schemas/settings.d.ts.map +1 -0
- package/dist/schemas/settings.js +321 -0
- package/dist/schemas/settings.js.map +1 -0
- package/dist/social-proof/AvatarGroup.d.ts +3 -0
- package/dist/social-proof/AvatarGroup.d.ts.map +1 -0
- package/dist/social-proof/AvatarGroup.js +58 -0
- package/dist/social-proof/AvatarGroup.js.map +1 -0
- package/dist/social-proof/LogoCarousel.d.ts +3 -0
- package/dist/social-proof/LogoCarousel.d.ts.map +1 -0
- package/dist/social-proof/LogoCarousel.js +49 -0
- package/dist/social-proof/LogoCarousel.js.map +1 -0
- package/dist/social-proof/LogoStrip.d.ts +3 -0
- package/dist/social-proof/LogoStrip.d.ts.map +1 -0
- package/dist/social-proof/LogoStrip.js +35 -0
- package/dist/social-proof/LogoStrip.js.map +1 -0
- package/dist/social-proof/PressMentions.d.ts +3 -0
- package/dist/social-proof/PressMentions.d.ts.map +1 -0
- package/dist/social-proof/PressMentions.js +40 -0
- package/dist/social-proof/PressMentions.js.map +1 -0
- package/dist/social-proof/StatsGrid.d.ts +3 -0
- package/dist/social-proof/StatsGrid.d.ts.map +1 -0
- package/dist/social-proof/StatsGrid.js +39 -0
- package/dist/social-proof/StatsGrid.js.map +1 -0
- package/dist/social-proof/TrustBadges.d.ts +3 -0
- package/dist/social-proof/TrustBadges.d.ts.map +1 -0
- package/dist/social-proof/TrustBadges.js +18 -0
- package/dist/social-proof/TrustBadges.js.map +1 -0
- package/dist/social-proof/index.d.ts +4 -0
- package/dist/social-proof/index.d.ts.map +1 -0
- package/dist/social-proof/index.js +4 -0
- package/dist/social-proof/index.js.map +1 -0
- package/dist/text-effects/TextEffect.d.ts +3 -0
- package/dist/text-effects/TextEffect.d.ts.map +1 -0
- package/dist/text-effects/TextEffect.js +277 -0
- package/dist/text-effects/TextEffect.js.map +1 -0
- package/dist/theme/resolve.d.ts +12 -0
- package/dist/theme/resolve.d.ts.map +1 -0
- package/dist/theme/resolve.js +26 -0
- package/dist/theme/resolve.js.map +1 -0
- package/dist/theme/tokens.d.ts +147 -0
- package/dist/theme/tokens.d.ts.map +1 -0
- package/dist/theme/tokens.js +113 -0
- package/dist/theme/tokens.js.map +1 -0
- package/dist/types.d.ts +154 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/utils/elementStyles.d.ts +4 -0
- package/dist/utils/elementStyles.d.ts.map +1 -0
- package/dist/utils/elementStyles.js +6 -0
- package/dist/utils/elementStyles.js.map +1 -0
- package/dist/utils/icon-map.d.ts +128 -0
- package/dist/utils/icon-map.d.ts.map +1 -0
- package/dist/utils/icon-map.js +199 -0
- package/dist/utils/icon-map.js.map +1 -0
- package/dist/utils/imageStyle.d.ts +4 -0
- package/dist/utils/imageStyle.d.ts.map +1 -0
- package/dist/utils/imageStyle.js +23 -0
- package/dist/utils/imageStyle.js.map +1 -0
- package/dist/utils/renderIcon.d.ts +32 -0
- package/dist/utils/renderIcon.d.ts.map +1 -0
- package/dist/utils/renderIcon.js +188 -0
- package/dist/utils/renderIcon.js.map +1 -0
- package/dist/utils/schemaUtils.d.ts +9 -0
- package/dist/utils/schemaUtils.d.ts.map +1 -0
- package/dist/utils/schemaUtils.js +10 -0
- package/dist/utils/schemaUtils.js.map +1 -0
- package/dist/value-props/HowItWorks.d.ts +3 -0
- package/dist/value-props/HowItWorks.d.ts.map +1 -0
- package/dist/value-props/HowItWorks.js +23 -0
- package/dist/value-props/HowItWorks.js.map +1 -0
- package/dist/value-props/NumberedList.d.ts +3 -0
- package/dist/value-props/NumberedList.d.ts.map +1 -0
- package/dist/value-props/NumberedList.js +22 -0
- package/dist/value-props/NumberedList.js.map +1 -0
- package/dist/value-props/ValuePropsAlternating.d.ts +3 -0
- package/dist/value-props/ValuePropsAlternating.d.ts.map +1 -0
- package/dist/value-props/ValuePropsAlternating.js +22 -0
- package/dist/value-props/ValuePropsAlternating.js.map +1 -0
- package/dist/value-props/ValuePropsGrid.d.ts +3 -0
- package/dist/value-props/ValuePropsGrid.d.ts.map +1 -0
- package/dist/value-props/ValuePropsGrid.js +23 -0
- package/dist/value-props/ValuePropsGrid.js.map +1 -0
- package/dist/value-props/ValuePropsIconStrip.d.ts +3 -0
- package/dist/value-props/ValuePropsIconStrip.d.ts.map +1 -0
- package/dist/value-props/ValuePropsIconStrip.js +11 -0
- package/dist/value-props/ValuePropsIconStrip.js.map +1 -0
- package/dist/value-props/index.d.ts +6 -0
- package/dist/value-props/index.d.ts.map +1 -0
- package/dist/value-props/index.js +6 -0
- package/dist/value-props/index.js.map +1 -0
- package/package.json +46 -0
|
@@ -0,0 +1,745 @@
|
|
|
1
|
+
const T = (label, required = false, description) => ({ type: "text", required, label, description });
|
|
2
|
+
const IMG = (label, required = false) => ({ type: "image", required, label });
|
|
3
|
+
const URL = (label, required = false) => ({ type: "url", required, label });
|
|
4
|
+
const NUM = (label, min, max, required = false) => ({ type: "number", required, label, ...(min !== undefined || max !== undefined ? { validation: { min, max } } : {}) });
|
|
5
|
+
const ENUM = (label, options, required = false) => ({ type: "enum", required, label, validation: { options } });
|
|
6
|
+
const BOOL = (label, required = false) => ({ type: "boolean", required, label });
|
|
7
|
+
const ARR = (label, required = false) => ({ type: "array", required, label });
|
|
8
|
+
const CSS = (label = "Custom CSS", required = false) => ({ type: "customCss", required, label, description: "Scoped CSS injected into this section. Use .lx-* class names to target elements." });
|
|
9
|
+
const IMAGE_STYLE = ENUM("Image style", ["card", "full", "contained"]);
|
|
10
|
+
const MEDIA_URL = IMG("Image");
|
|
11
|
+
const BG_MEDIA = IMG("Background image");
|
|
12
|
+
const CTA_TEXT = T("Button text", true);
|
|
13
|
+
const CTA_URL = URL("Button URL");
|
|
14
|
+
const HEADLINE = T("Headline", true);
|
|
15
|
+
const SUBHEAD = T("Subtext");
|
|
16
|
+
const EYEBROW = T("Eyebrow label");
|
|
17
|
+
// ─── Centered family ─────────────────────────────────────────────────────────
|
|
18
|
+
export const HERO_CENTERED_FIELDS = {
|
|
19
|
+
headline: HEADLINE,
|
|
20
|
+
cta_text: CTA_TEXT,
|
|
21
|
+
eyebrow: EYEBROW,
|
|
22
|
+
subhead: SUBHEAD,
|
|
23
|
+
cta_url: CTA_URL,
|
|
24
|
+
media_url: MEDIA_URL,
|
|
25
|
+
image_style: IMAGE_STYLE,
|
|
26
|
+
rating: NUM("Rating", 0, 5),
|
|
27
|
+
review_count: NUM("Review count", 0),
|
|
28
|
+
media_urls: ARR("Background images (carousel)"),
|
|
29
|
+
};
|
|
30
|
+
// ─── Split family ─────────────────────────────────────────────────────────────
|
|
31
|
+
export const HERO_SPLIT_FIELDS = {
|
|
32
|
+
headline: HEADLINE,
|
|
33
|
+
cta_text: CTA_TEXT,
|
|
34
|
+
eyebrow: EYEBROW,
|
|
35
|
+
subhead: SUBHEAD,
|
|
36
|
+
cta_url: CTA_URL,
|
|
37
|
+
media_url: MEDIA_URL,
|
|
38
|
+
image_style: IMAGE_STYLE,
|
|
39
|
+
pills: ARR("Ingredient / feature pills"),
|
|
40
|
+
};
|
|
41
|
+
// ─── Full-bleed family ───────────────────────────────────────────────────────
|
|
42
|
+
export const HERO_FULLBLEED_FIELDS = {
|
|
43
|
+
headline: HEADLINE,
|
|
44
|
+
cta_text: CTA_TEXT,
|
|
45
|
+
subhead: SUBHEAD,
|
|
46
|
+
cta_url: CTA_URL,
|
|
47
|
+
bg_media_url: BG_MEDIA,
|
|
48
|
+
};
|
|
49
|
+
// ─── Carousel family ─────────────────────────────────────────────────────────
|
|
50
|
+
export const HERO_CAROUSEL_FIELDS = {
|
|
51
|
+
headline: HEADLINE,
|
|
52
|
+
cta_text: CTA_TEXT,
|
|
53
|
+
eyebrow: EYEBROW,
|
|
54
|
+
subhead: SUBHEAD,
|
|
55
|
+
cta_url: CTA_URL,
|
|
56
|
+
image_style: IMAGE_STYLE,
|
|
57
|
+
slides: { type: "array", required: false, label: "Slides",
|
|
58
|
+
validation: {
|
|
59
|
+
itemSchema: {
|
|
60
|
+
headline: { type: "text", required: false, label: "Slide headline" },
|
|
61
|
+
subhead: { type: "text", required: false, label: "Slide subtext" },
|
|
62
|
+
cta_text: { type: "text", required: false, label: "Slide button text" },
|
|
63
|
+
cta_url: { type: "url", required: false, label: "Slide button URL" },
|
|
64
|
+
eyebrow: { type: "text", required: false, label: "Slide eyebrow" },
|
|
65
|
+
media_url: { type: "image", required: false, label: "Slide image" },
|
|
66
|
+
bg_media_url: { type: "image", required: false, label: "Slide background image" },
|
|
67
|
+
},
|
|
68
|
+
},
|
|
69
|
+
},
|
|
70
|
+
};
|
|
71
|
+
// ─── Editorial ───────────────────────────────────────────────────────────────
|
|
72
|
+
export const HERO_EDITORIAL_FIELDS = {
|
|
73
|
+
headline: HEADLINE,
|
|
74
|
+
cta_text: CTA_TEXT,
|
|
75
|
+
subhead: SUBHEAD,
|
|
76
|
+
cta_url: CTA_URL,
|
|
77
|
+
media_url: MEDIA_URL,
|
|
78
|
+
image_style: IMAGE_STYLE,
|
|
79
|
+
byline: T("Byline / author"),
|
|
80
|
+
category_tag: T("Category tag"),
|
|
81
|
+
};
|
|
82
|
+
// ─── Countdown family ────────────────────────────────────────────────────────
|
|
83
|
+
export const HERO_COUNTDOWN_FIELDS = {
|
|
84
|
+
headline: HEADLINE,
|
|
85
|
+
cta_text: CTA_TEXT,
|
|
86
|
+
eyebrow: EYEBROW,
|
|
87
|
+
subhead: SUBHEAD,
|
|
88
|
+
cta_url: CTA_URL,
|
|
89
|
+
countdown_end: { type: "text", required: true, label: "Countdown end (ISO datetime)", description: "e.g. 2027-12-31T23:59:59Z" },
|
|
90
|
+
media_url: MEDIA_URL,
|
|
91
|
+
};
|
|
92
|
+
// ─── Typewriter ──────────────────────────────────────────────────────────────
|
|
93
|
+
export const HERO_TYPEWRITER_FIELDS = {
|
|
94
|
+
headline_prefix: T("Headline prefix", true),
|
|
95
|
+
rotating_words: ARR("Rotating words"),
|
|
96
|
+
cta_text: CTA_TEXT,
|
|
97
|
+
cta_url: CTA_URL,
|
|
98
|
+
subhead: SUBHEAD,
|
|
99
|
+
media_url: MEDIA_URL,
|
|
100
|
+
image_style: IMAGE_STYLE,
|
|
101
|
+
};
|
|
102
|
+
// ─── Parallax family ─────────────────────────────────────────────────────────
|
|
103
|
+
export const HERO_PARALLAX_FIELDS = {
|
|
104
|
+
headline: HEADLINE,
|
|
105
|
+
cta_text: CTA_TEXT,
|
|
106
|
+
eyebrow: EYEBROW,
|
|
107
|
+
subhead: SUBHEAD,
|
|
108
|
+
cta_url: CTA_URL,
|
|
109
|
+
bg_media_url: BG_MEDIA,
|
|
110
|
+
media_url: MEDIA_URL,
|
|
111
|
+
};
|
|
112
|
+
// ─── Animated family (rotating_text, glitch, flip_words) ─────────────────────
|
|
113
|
+
export const HERO_ANIMATED_FIELDS = {
|
|
114
|
+
headline: T("Headline (for glitch)"),
|
|
115
|
+
headline_prefix: T("Headline prefix"),
|
|
116
|
+
rotating_words: ARR("Rotating words"),
|
|
117
|
+
eyebrow: EYEBROW,
|
|
118
|
+
subhead: SUBHEAD,
|
|
119
|
+
cta_text: CTA_TEXT,
|
|
120
|
+
cta_url: CTA_URL,
|
|
121
|
+
};
|
|
122
|
+
// ─── Spotlight family ────────────────────────────────────────────────────────
|
|
123
|
+
export const HERO_SPOTLIGHT_FIELDS = {
|
|
124
|
+
headline: HEADLINE,
|
|
125
|
+
cta_text: CTA_TEXT,
|
|
126
|
+
eyebrow: EYEBROW,
|
|
127
|
+
subhead: SUBHEAD,
|
|
128
|
+
cta_url: CTA_URL,
|
|
129
|
+
media_url: MEDIA_URL,
|
|
130
|
+
image_style: IMAGE_STYLE,
|
|
131
|
+
cards: { type: "array", required: false, label: "Product cards",
|
|
132
|
+
validation: {
|
|
133
|
+
itemSchema: {
|
|
134
|
+
label: { type: "text", required: true, label: "Product name" },
|
|
135
|
+
price: { type: "text", required: false, label: "Price" },
|
|
136
|
+
img: { type: "image", required: false, label: "Product image" },
|
|
137
|
+
},
|
|
138
|
+
},
|
|
139
|
+
},
|
|
140
|
+
};
|
|
141
|
+
// ─── Aurora family ───────────────────────────────────────────────────────────
|
|
142
|
+
export const HERO_AURORA_FIELDS = {
|
|
143
|
+
headline: HEADLINE,
|
|
144
|
+
cta_text: CTA_TEXT,
|
|
145
|
+
eyebrow: EYEBROW,
|
|
146
|
+
subhead: SUBHEAD,
|
|
147
|
+
cta_url: CTA_URL,
|
|
148
|
+
};
|
|
149
|
+
// ─── Activity family (recent_orders, live_viewers, stock_level) ───────────────
|
|
150
|
+
export const HERO_ACTIVITY_FIELDS = {
|
|
151
|
+
headline: HEADLINE,
|
|
152
|
+
cta_text: CTA_TEXT,
|
|
153
|
+
eyebrow: EYEBROW,
|
|
154
|
+
subhead: SUBHEAD,
|
|
155
|
+
cta_url: CTA_URL,
|
|
156
|
+
media_url: MEDIA_URL,
|
|
157
|
+
image_style: IMAGE_STYLE,
|
|
158
|
+
live_count: NUM("Initial live viewer count", 0),
|
|
159
|
+
stock_level: NUM("Current stock level", 0),
|
|
160
|
+
stock_max: NUM("Max stock (100% = full bar)", 1),
|
|
161
|
+
activity_items: ARR("Activity feed items"),
|
|
162
|
+
};
|
|
163
|
+
// ─── Mini hero ───────────────────────────────────────────────────────────────
|
|
164
|
+
export const HERO_MINI_FIELDS = {
|
|
165
|
+
headline: HEADLINE,
|
|
166
|
+
subhead: SUBHEAD,
|
|
167
|
+
cta_text: CTA_TEXT,
|
|
168
|
+
cta_url: CTA_URL,
|
|
169
|
+
};
|
|
170
|
+
// ─── Product breakout (HeroFullBleed variant) ─────────────────────────────────
|
|
171
|
+
export const HERO_PRODUCT_BREAKOUT_FIELDS = {
|
|
172
|
+
headline: HEADLINE,
|
|
173
|
+
product_name: T("Product name"),
|
|
174
|
+
tagline: T("Tagline"),
|
|
175
|
+
product_image_url: IMG("Product image", true),
|
|
176
|
+
social_proof: T("Social proof pill text"),
|
|
177
|
+
bg_color: { type: "color", required: false, label: "Background color" },
|
|
178
|
+
price: T("Price (e.g. ₹1,299)"),
|
|
179
|
+
compare_price: T("Compare price"),
|
|
180
|
+
cta_text: CTA_TEXT,
|
|
181
|
+
features: ARR("Feature bullets"),
|
|
182
|
+
};
|
|
183
|
+
// ─── CTA ─────────────────────────────────────────────────────────────────────
|
|
184
|
+
export const CTA_FULLWIDTH_FIELDS = {
|
|
185
|
+
headline: HEADLINE,
|
|
186
|
+
subhead: SUBHEAD,
|
|
187
|
+
cta_text: CTA_TEXT,
|
|
188
|
+
cta_url: CTA_URL,
|
|
189
|
+
urgency_text: T("Urgency text"),
|
|
190
|
+
};
|
|
191
|
+
export const CTA_STICKY_FIELDS = {
|
|
192
|
+
cta_text: CTA_TEXT,
|
|
193
|
+
product_name: T("Product name"),
|
|
194
|
+
price: T("Price (e.g. ₹1,299)"),
|
|
195
|
+
countdown_end: T("Countdown end (ISO)", false, "e.g. 2027-12-31T23:59:59Z"),
|
|
196
|
+
};
|
|
197
|
+
// ─── Newsletter ────────────────────────────────────────────────────────────────
|
|
198
|
+
export const NEWSLETTER_FIELDS = {
|
|
199
|
+
headline: HEADLINE,
|
|
200
|
+
subhead: SUBHEAD,
|
|
201
|
+
cta_text: CTA_TEXT,
|
|
202
|
+
placeholder: T("Email placeholder"),
|
|
203
|
+
disclaimer: T("Disclaimer / privacy note"),
|
|
204
|
+
incentive_text: T("Incentive text (with_incentive variant)"),
|
|
205
|
+
};
|
|
206
|
+
// ─── FAQ ──────────────────────────────────────────────────────────────────────
|
|
207
|
+
export const FAQ_FIELDS = {
|
|
208
|
+
heading: T("Section heading"),
|
|
209
|
+
items: {
|
|
210
|
+
type: "array", required: true, label: "FAQ Items",
|
|
211
|
+
validation: {
|
|
212
|
+
itemSchema: {
|
|
213
|
+
question: { type: "text", required: true, label: "Question" },
|
|
214
|
+
answer: { type: "richtext", required: true, label: "Answer" },
|
|
215
|
+
category: { type: "text", required: false, label: "Category tag" },
|
|
216
|
+
},
|
|
217
|
+
},
|
|
218
|
+
},
|
|
219
|
+
};
|
|
220
|
+
// ─── Reviews ──────────────────────────────────────────────────────────────────
|
|
221
|
+
export const REVIEWS_FIELDS = {
|
|
222
|
+
heading: T("Section heading"),
|
|
223
|
+
reviews: {
|
|
224
|
+
type: "array", required: true, label: "Reviews",
|
|
225
|
+
validation: {
|
|
226
|
+
itemSchema: {
|
|
227
|
+
author: { type: "text", required: true, label: "Author name" },
|
|
228
|
+
text: { type: "text", required: true, label: "Review text" },
|
|
229
|
+
rating: { type: "number", required: false, label: "Rating (1–5)", validation: { min: 1, max: 5 } },
|
|
230
|
+
avatar_url: { type: "image", required: false, label: "Author photo" },
|
|
231
|
+
verified: { type: "boolean", required: false, label: "Verified purchase" },
|
|
232
|
+
},
|
|
233
|
+
},
|
|
234
|
+
},
|
|
235
|
+
featured_review: ARR("Featured review"),
|
|
236
|
+
};
|
|
237
|
+
// ─── Feature Grid ──────────────────────────────────────────────────────────────
|
|
238
|
+
export const FEATURE_GRID_FIELDS = {
|
|
239
|
+
heading: T("Section heading"),
|
|
240
|
+
subhead: SUBHEAD,
|
|
241
|
+
items: {
|
|
242
|
+
type: "array", required: true, label: "Feature items",
|
|
243
|
+
validation: {
|
|
244
|
+
itemSchema: {
|
|
245
|
+
title: { type: "text", required: true, label: "Title" },
|
|
246
|
+
body: { type: "text", required: true, label: "Description" },
|
|
247
|
+
icon: { type: "text", required: false, label: "Icon (emoji or name)" },
|
|
248
|
+
image_url: { type: "image", required: false, label: "Image" },
|
|
249
|
+
},
|
|
250
|
+
},
|
|
251
|
+
},
|
|
252
|
+
};
|
|
253
|
+
// ─── Value Props ───────────────────────────────────────────────────────────────
|
|
254
|
+
export const VALUE_PROPS_FIELDS = {
|
|
255
|
+
heading: T("Section heading"),
|
|
256
|
+
items: {
|
|
257
|
+
type: "array", required: true, label: "Value prop items",
|
|
258
|
+
validation: {
|
|
259
|
+
itemSchema: {
|
|
260
|
+
title: { type: "text", required: true, label: "Title" },
|
|
261
|
+
body: { type: "text", required: true, label: "Description" },
|
|
262
|
+
icon: { type: "text", required: false, label: "Icon (emoji or name)" },
|
|
263
|
+
image_url: { type: "image", required: false, label: "Image" },
|
|
264
|
+
},
|
|
265
|
+
},
|
|
266
|
+
},
|
|
267
|
+
steps: ARR("Steps (for how_it_works variant)"),
|
|
268
|
+
};
|
|
269
|
+
// ─── Guarantee ─────────────────────────────────────────────────────────────────
|
|
270
|
+
export const GUARANTEE_FIELDS = {
|
|
271
|
+
headline: HEADLINE,
|
|
272
|
+
body: T("Body copy", true),
|
|
273
|
+
badge_text: T("Badge label (e.g. 30-Day)"),
|
|
274
|
+
cta_text: CTA_TEXT,
|
|
275
|
+
cta_url: CTA_URL,
|
|
276
|
+
guarantee_text: T("Guarantee text"),
|
|
277
|
+
badges: ARR("Guarantee badges"),
|
|
278
|
+
};
|
|
279
|
+
// ─── Testimonial Card ──────────────────────────────────────────────────────────
|
|
280
|
+
export const TESTIMONIAL_CARD_FIELDS = {
|
|
281
|
+
quote: T("Quote", true),
|
|
282
|
+
author: T("Author name", true),
|
|
283
|
+
role: T("Role / title"),
|
|
284
|
+
company: T("Company"),
|
|
285
|
+
rating: NUM("Rating (1–5)", 1, 5),
|
|
286
|
+
avatar_url: IMG("Author photo"),
|
|
287
|
+
logo_url: IMG("Company logo"),
|
|
288
|
+
metric_value: T("Metric value (e.g. 3×)"),
|
|
289
|
+
metric_label: T("Metric label (e.g. more sales)"),
|
|
290
|
+
};
|
|
291
|
+
// ─── Content / Before-After ────────────────────────────────────────────────────
|
|
292
|
+
export const CONTENT_RICH_FIELDS = {
|
|
293
|
+
heading: T("Heading"),
|
|
294
|
+
body_html: { type: "richtext", required: false, label: "Body HTML" },
|
|
295
|
+
};
|
|
296
|
+
export const CONTENT_IMAGE_TEXT_FIELDS = {
|
|
297
|
+
headline: HEADLINE,
|
|
298
|
+
body: T("Body text", true),
|
|
299
|
+
image_url: IMG("Image", true),
|
|
300
|
+
cta_text: CTA_TEXT,
|
|
301
|
+
cta_url: CTA_URL,
|
|
302
|
+
};
|
|
303
|
+
export const BEFORE_AFTER_FIELDS = {
|
|
304
|
+
heading: T("Heading"),
|
|
305
|
+
subhead: SUBHEAD,
|
|
306
|
+
before_url: IMG("Before image", true),
|
|
307
|
+
after_url: IMG("After image", true),
|
|
308
|
+
before_label: T("Before label"),
|
|
309
|
+
after_label: T("After label"),
|
|
310
|
+
};
|
|
311
|
+
// ─── Card / Featured Card ──────────────────────────────────────────────────────
|
|
312
|
+
export const FEATURED_CARD_FIELDS = {
|
|
313
|
+
title: T("Card title", true),
|
|
314
|
+
body: T("Body copy", true),
|
|
315
|
+
image_url: IMG("Card image"),
|
|
316
|
+
cta_text: CTA_TEXT,
|
|
317
|
+
cta_url: CTA_URL,
|
|
318
|
+
badge: T("Badge label"),
|
|
319
|
+
};
|
|
320
|
+
// ─── Product Card ─────────────────────────────────────────────────────────────
|
|
321
|
+
export const PRODUCT_CARD_FIELDS = {
|
|
322
|
+
headline: T("Headline"),
|
|
323
|
+
headline_strike: T("Strikethrough word (editorial variant)"),
|
|
324
|
+
image_url: IMG("Product image", true),
|
|
325
|
+
hover_image: IMG("Hover image"),
|
|
326
|
+
hover_effect: ENUM("Hover effect", ["shimmer", "tilt", "spotlight", "ken_burns", "blur_reveal", "desaturate", "zoom_punch", "split_reveal"]),
|
|
327
|
+
label: T("Product label / name"),
|
|
328
|
+
tag: T("Category tag badge"),
|
|
329
|
+
price: T("Price (e.g. ₹1,299)"),
|
|
330
|
+
compare_price: T("Compare at price"),
|
|
331
|
+
cta_text: CTA_TEXT,
|
|
332
|
+
cta_url: CTA_URL,
|
|
333
|
+
status_badge: T("Status badge (e.g. SOLD OUT, NEW)"),
|
|
334
|
+
bg_color: { type: "color", required: false, label: "Card background color" },
|
|
335
|
+
tilt_degree: NUM("Image tilt degrees", -10, 10),
|
|
336
|
+
};
|
|
337
|
+
// ─── Stats Grid ────────────────────────────────────────────────────────────────
|
|
338
|
+
export const STATS_FIELDS = {
|
|
339
|
+
heading: T("Section heading"),
|
|
340
|
+
subhead: SUBHEAD,
|
|
341
|
+
stats: {
|
|
342
|
+
type: "array", required: true, label: "Stats",
|
|
343
|
+
validation: {
|
|
344
|
+
itemSchema: {
|
|
345
|
+
value: { type: "text", required: true, label: "Value (e.g. 10,000+)" },
|
|
346
|
+
label: { type: "text", required: true, label: "Label" },
|
|
347
|
+
prefix: { type: "text", required: false, label: "Prefix (e.g. $)" },
|
|
348
|
+
suffix: { type: "text", required: false, label: "Suffix (e.g. +)" },
|
|
349
|
+
icon: { type: "text", required: false, label: "Icon" },
|
|
350
|
+
},
|
|
351
|
+
},
|
|
352
|
+
},
|
|
353
|
+
};
|
|
354
|
+
// ─── Logo Carousel ─────────────────────────────────────────────────────────────
|
|
355
|
+
export const LOGO_CAROUSEL_FIELDS = {
|
|
356
|
+
heading: T("Section heading"),
|
|
357
|
+
speed: NUM("Scroll speed (seconds)", 1, 60),
|
|
358
|
+
interval: NUM("Fade interval (seconds)", 1, 30),
|
|
359
|
+
logos: {
|
|
360
|
+
type: "array", required: true, label: "Logos",
|
|
361
|
+
validation: {
|
|
362
|
+
itemSchema: {
|
|
363
|
+
image_url: { type: "image", required: true, label: "Logo image" },
|
|
364
|
+
alt: { type: "text", required: false, label: "Alt text" },
|
|
365
|
+
url: { type: "url", required: false, label: "Link URL" },
|
|
366
|
+
},
|
|
367
|
+
},
|
|
368
|
+
},
|
|
369
|
+
};
|
|
370
|
+
// ─── Popup / Lead Capture ──────────────────────────────────────────────────────
|
|
371
|
+
export const POPUP_FIELDS = {
|
|
372
|
+
headline: HEADLINE,
|
|
373
|
+
subtext: SUBHEAD,
|
|
374
|
+
cta_text: CTA_TEXT,
|
|
375
|
+
image_url: IMG("Popup image"),
|
|
376
|
+
fine_print: T("Fine print"),
|
|
377
|
+
logo_url: IMG("Logo"),
|
|
378
|
+
discount_badge: T("Discount badge text"),
|
|
379
|
+
email_placeholder: T("Email placeholder"),
|
|
380
|
+
phone_placeholder: T("Phone placeholder"),
|
|
381
|
+
success_message: T("Success message"),
|
|
382
|
+
};
|
|
383
|
+
// ─── Transition ────────────────────────────────────────────────────────────────
|
|
384
|
+
export const TRANSITION_FIELDS = {
|
|
385
|
+
color_above: { type: "color", required: true, label: "Color above" },
|
|
386
|
+
color_below: { type: "color", required: true, label: "Color below" },
|
|
387
|
+
height: NUM("Height (px)", 40, 200),
|
|
388
|
+
flip: BOOL("Flip direction"),
|
|
389
|
+
};
|
|
390
|
+
// ─── Text Effect ────────────────────────────────────────────────────────────────
|
|
391
|
+
export const TEXT_EFFECT_FIELDS = {
|
|
392
|
+
text: T("Text", true),
|
|
393
|
+
words: ARR("Rotating / flip words"),
|
|
394
|
+
prefix: T("Prefix"),
|
|
395
|
+
suffix: T("Suffix"),
|
|
396
|
+
highlight_words: ARR("Highlighted words"),
|
|
397
|
+
};
|
|
398
|
+
// ─── Button Section ─────────────────────────────────────────────────────────────
|
|
399
|
+
export const BUTTON_SECTION_FIELDS = {
|
|
400
|
+
text: T("Button text", true),
|
|
401
|
+
url: CTA_URL,
|
|
402
|
+
heading: T("Heading"),
|
|
403
|
+
subhead: SUBHEAD,
|
|
404
|
+
secondary_text: T("Secondary button text"),
|
|
405
|
+
secondary_url: URL("Secondary button URL"),
|
|
406
|
+
};
|
|
407
|
+
// ─── Urgency CTA ───────────────────────────────────────────────────────────────
|
|
408
|
+
export const URGENCY_CTA_FIELDS = {
|
|
409
|
+
message: T("Message text"),
|
|
410
|
+
countdown_end: T("Countdown end (ISO)", false, "e.g. 2027-12-31T23:59:59Z"),
|
|
411
|
+
cta_text: CTA_TEXT,
|
|
412
|
+
cta_url: CTA_URL,
|
|
413
|
+
stock_count: NUM("Current stock count", 0),
|
|
414
|
+
stock_max: NUM("Max stock (full bar)", 1),
|
|
415
|
+
activity_count: NUM("Activity count", 0),
|
|
416
|
+
activity_label: T("Activity label (e.g. people viewing)"),
|
|
417
|
+
};
|
|
418
|
+
// ─── Waitlist ──────────────────────────────────────────────────────────────────
|
|
419
|
+
export const WAITLIST_FIELDS = {
|
|
420
|
+
heading: T("Heading", true),
|
|
421
|
+
subhead: SUBHEAD,
|
|
422
|
+
placeholder: T("Input placeholder"),
|
|
423
|
+
cta_text: CTA_TEXT,
|
|
424
|
+
position_number: NUM("Queue position number", 1),
|
|
425
|
+
};
|
|
426
|
+
// ─── Avatar Group ───────────────────────────────────────────────────────────────
|
|
427
|
+
export const AVATAR_GROUP_FIELDS = {
|
|
428
|
+
count_label: T("Count label (e.g. 10k+ joined)"),
|
|
429
|
+
cta_text: CTA_TEXT,
|
|
430
|
+
cta_url: CTA_URL,
|
|
431
|
+
avatars: {
|
|
432
|
+
type: "array", required: true, label: "Avatars",
|
|
433
|
+
validation: {
|
|
434
|
+
itemSchema: {
|
|
435
|
+
src: { type: "image", required: true, label: "Avatar image" },
|
|
436
|
+
alt: { type: "text", required: false, label: "Alt text" },
|
|
437
|
+
},
|
|
438
|
+
},
|
|
439
|
+
},
|
|
440
|
+
};
|
|
441
|
+
// ─── Parallax ──────────────────────────────────────────────────────────────────
|
|
442
|
+
export const PARALLAX_FIELDS = {
|
|
443
|
+
heading: T("Heading"),
|
|
444
|
+
subhead: SUBHEAD,
|
|
445
|
+
body: T("Body text"),
|
|
446
|
+
image_url: IMG("Image"),
|
|
447
|
+
};
|
|
448
|
+
// ─── Process Steps ─────────────────────────────────────────────────────────────
|
|
449
|
+
export const PROCESS_STEPS_FIELDS = {
|
|
450
|
+
heading: T("Section heading"),
|
|
451
|
+
subhead: SUBHEAD,
|
|
452
|
+
steps: {
|
|
453
|
+
type: "array", required: true, label: "Steps",
|
|
454
|
+
validation: {
|
|
455
|
+
itemSchema: {
|
|
456
|
+
title: { type: "text", required: true, label: "Step title" },
|
|
457
|
+
body: { type: "text", required: false, label: "Step description" },
|
|
458
|
+
icon: { type: "text", required: false, label: "Icon (emoji or name)" },
|
|
459
|
+
},
|
|
460
|
+
},
|
|
461
|
+
},
|
|
462
|
+
};
|
|
463
|
+
// ─── Background Section ────────────────────────────────────────────────────────
|
|
464
|
+
export const BACKGROUND_SECTION_FIELDS = {
|
|
465
|
+
heading: T("Heading"),
|
|
466
|
+
subhead: SUBHEAD,
|
|
467
|
+
cta_text: CTA_TEXT,
|
|
468
|
+
cta_url: CTA_URL,
|
|
469
|
+
colors: ARR("Colors (hex values)"),
|
|
470
|
+
};
|
|
471
|
+
// ─── Card Stack ─────────────────────────────────────────────────────────────────
|
|
472
|
+
export const CARD_STACK_FIELDS = {
|
|
473
|
+
heading: T("Heading"),
|
|
474
|
+
cards: {
|
|
475
|
+
type: "array", required: true, label: "Cards",
|
|
476
|
+
validation: {
|
|
477
|
+
itemSchema: {
|
|
478
|
+
title: { type: "text", required: true, label: "Card title" },
|
|
479
|
+
body: { type: "text", required: false, label: "Card body" },
|
|
480
|
+
image_url: { type: "image", required: false, label: "Card image" },
|
|
481
|
+
badge: { type: "text", required: false, label: "Badge" },
|
|
482
|
+
},
|
|
483
|
+
},
|
|
484
|
+
},
|
|
485
|
+
};
|
|
486
|
+
// ─── Terminal Card ─────────────────────────────────────────────────────────────
|
|
487
|
+
export const TERMINAL_FIELDS = {
|
|
488
|
+
title: T("Terminal title"),
|
|
489
|
+
prompt: T("Prompt character"),
|
|
490
|
+
lines: ARR("Terminal lines (one per line)"),
|
|
491
|
+
};
|
|
492
|
+
// ─── Feature Tabs ──────────────────────────────────────────────────────────────
|
|
493
|
+
export const FEATURE_TABS_FIELDS = {
|
|
494
|
+
heading: T("Section heading"),
|
|
495
|
+
tabs: {
|
|
496
|
+
type: "array", required: true, label: "Tabs",
|
|
497
|
+
validation: {
|
|
498
|
+
itemSchema: {
|
|
499
|
+
label: { type: "text", required: true, label: "Tab label" },
|
|
500
|
+
headline: { type: "text", required: false, label: "Content headline" },
|
|
501
|
+
body: { type: "text", required: false, label: "Content body" },
|
|
502
|
+
image_url: { type: "image", required: false, label: "Tab image" },
|
|
503
|
+
icon: { type: "text", required: false, label: "Icon" },
|
|
504
|
+
},
|
|
505
|
+
},
|
|
506
|
+
},
|
|
507
|
+
};
|
|
508
|
+
// ─── Bento Grid ────────────────────────────────────────────────────────────────
|
|
509
|
+
export const BENTO_FIELDS = {
|
|
510
|
+
heading: T("Section heading"),
|
|
511
|
+
items: {
|
|
512
|
+
type: "array", required: true, label: "Bento items",
|
|
513
|
+
validation: {
|
|
514
|
+
itemSchema: {
|
|
515
|
+
title: { type: "text", required: true, label: "Title" },
|
|
516
|
+
body: { type: "text", required: false, label: "Body" },
|
|
517
|
+
image_url: { type: "image", required: false, label: "Image" },
|
|
518
|
+
video_url: { type: "video", required: false, label: "Video" },
|
|
519
|
+
span: { type: "text", required: false, label: "Grid span CSS class" },
|
|
520
|
+
},
|
|
521
|
+
},
|
|
522
|
+
},
|
|
523
|
+
};
|
|
524
|
+
// ─── Lookbook Grid ─────────────────────────────────────────────────────────────
|
|
525
|
+
export const LOOKBOOK_GRID_FIELDS = {
|
|
526
|
+
heading: T("Section heading"),
|
|
527
|
+
cols: ENUM("Grid columns", ["2", "3", "4"]),
|
|
528
|
+
gap: ENUM("Gap between tiles", ["none", "xs", "sm", "md"]),
|
|
529
|
+
animation_style: ENUM("Reveal animation", ["fade_up", "fade_in", "slide_left", "scale_up", "none"]),
|
|
530
|
+
stagger_delay: NUM("Stagger delay (ms)", 0, 500),
|
|
531
|
+
items: {
|
|
532
|
+
type: "array", required: true, label: "Grid items",
|
|
533
|
+
validation: {
|
|
534
|
+
itemSchema: {
|
|
535
|
+
image_url: { type: "image", required: true, label: "Image" },
|
|
536
|
+
hover_image: { type: "image", required: false, label: "Hover image (swap on hover)" },
|
|
537
|
+
hover_effect: { type: "enum", required: false, label: "Hover effect",
|
|
538
|
+
validation: { options: ["shimmer", "tilt", "spotlight", "ken_burns", "blur_reveal", "desaturate", "zoom_punch", "split_reveal"] } },
|
|
539
|
+
label: { type: "text", required: true, label: "Caption label" },
|
|
540
|
+
tag: { type: "text", required: false, label: "Category tag (e.g. PRODUCTS)" },
|
|
541
|
+
url: { type: "url", required: false, label: "Link URL" },
|
|
542
|
+
aspect: { type: "enum", required: false, label: "Aspect ratio",
|
|
543
|
+
validation: { options: ["1:1", "2:3", "3:4", "4:5", "16:9", "3:2"] } },
|
|
544
|
+
col_span: { type: "enum", required: false, label: "Column span",
|
|
545
|
+
validation: { options: ["1", "2", "3"] } },
|
|
546
|
+
row_span: { type: "enum", required: false, label: "Row span",
|
|
547
|
+
validation: { options: ["1", "2"] } },
|
|
548
|
+
reveal: { type: "enum", required: false, label: "Reveal animation override",
|
|
549
|
+
validation: { options: ["inherit", "fade_up", "fade_in", "slide_left", "scale_up", "none"] } },
|
|
550
|
+
tint_color: { type: "color", required: false, label: "Overlay tint color" },
|
|
551
|
+
grid_col: { type: "number", required: false, label: "Grid column start (custom layout)" },
|
|
552
|
+
grid_row: { type: "number", required: false, label: "Grid row start (custom layout)" },
|
|
553
|
+
},
|
|
554
|
+
},
|
|
555
|
+
},
|
|
556
|
+
};
|
|
557
|
+
// ─── Pricing Cards ─────────────────────────────────────────────────────────────
|
|
558
|
+
export const PRICING_FIELDS = {
|
|
559
|
+
heading: T("Section heading"),
|
|
560
|
+
subhead: SUBHEAD,
|
|
561
|
+
plans: {
|
|
562
|
+
type: "array", required: true, label: "Pricing plans",
|
|
563
|
+
validation: {
|
|
564
|
+
itemSchema: {
|
|
565
|
+
name: { type: "text", required: true, label: "Plan name" },
|
|
566
|
+
price: { type: "text", required: true, label: "Price" },
|
|
567
|
+
period: { type: "text", required: false, label: "Billing period" },
|
|
568
|
+
description: { type: "text", required: false, label: "Plan description" },
|
|
569
|
+
features: { type: "array", required: true, label: "Feature list" },
|
|
570
|
+
cta_text: { type: "text", required: true, label: "CTA button text" },
|
|
571
|
+
highlighted: { type: "boolean", required: false, label: "Highlighted (most popular)" },
|
|
572
|
+
},
|
|
573
|
+
},
|
|
574
|
+
},
|
|
575
|
+
};
|
|
576
|
+
// ─── Navbar / Footer ───────────────────────────────────────────────────────────
|
|
577
|
+
export const NAVBAR_FIELDS = {
|
|
578
|
+
logo_url: IMG("Logo image"),
|
|
579
|
+
brand_name: T("Brand name"),
|
|
580
|
+
cta_text: CTA_TEXT,
|
|
581
|
+
cta_url: CTA_URL,
|
|
582
|
+
bg_color: { type: "color", required: false, label: "Nav background" },
|
|
583
|
+
text_color: { type: "color", required: false, label: "Nav text color" },
|
|
584
|
+
cta_bg_color: { type: "color", required: false, label: "CTA button color" },
|
|
585
|
+
cta_text_color: { type: "color", required: false, label: "CTA text color" },
|
|
586
|
+
initial_text_color: { type: "color", required: false, label: "Initial text color (transparent variant)" },
|
|
587
|
+
nav_items: {
|
|
588
|
+
type: "array", required: false, label: "Nav links",
|
|
589
|
+
validation: {
|
|
590
|
+
itemSchema: {
|
|
591
|
+
label: { type: "text", required: true, label: "Link label" },
|
|
592
|
+
url: { type: "url", required: true, label: "Link URL" },
|
|
593
|
+
},
|
|
594
|
+
},
|
|
595
|
+
},
|
|
596
|
+
};
|
|
597
|
+
export const FOOTER_FIELDS = {
|
|
598
|
+
brand_name: T("Brand name"),
|
|
599
|
+
logo_url: IMG("Logo"),
|
|
600
|
+
tagline: T("Tagline"),
|
|
601
|
+
copyright: T("Copyright text"),
|
|
602
|
+
newsletter_heading: T("Newsletter heading"),
|
|
603
|
+
newsletter_placeholder: T("Email placeholder"),
|
|
604
|
+
};
|
|
605
|
+
// ─── Brand-template hero field schemas ───────────────────────────────────────
|
|
606
|
+
export const HERO_EDITORIAL_MINIMAL_FIELDS = {
|
|
607
|
+
headline: HEADLINE,
|
|
608
|
+
media_url: MEDIA_URL,
|
|
609
|
+
subhead: SUBHEAD,
|
|
610
|
+
cta_text: T("CTA text link"),
|
|
611
|
+
cta_url: CTA_URL,
|
|
612
|
+
overlay_strength: ENUM("Overlay strength", ["none", "light", "medium", "heavy"]),
|
|
613
|
+
italic: BOOL("Italic headline"),
|
|
614
|
+
};
|
|
615
|
+
export const HERO_DARK_STICKER_FIELDS = {
|
|
616
|
+
headline: HEADLINE,
|
|
617
|
+
media_url: MEDIA_URL,
|
|
618
|
+
eyebrow: EYEBROW,
|
|
619
|
+
subhead: SUBHEAD,
|
|
620
|
+
cta_text: CTA_TEXT,
|
|
621
|
+
cta_url: CTA_URL,
|
|
622
|
+
sticker_url: IMG("Sticker / badge PNG"),
|
|
623
|
+
bg_color: { type: "color", required: false, label: "Background color" },
|
|
624
|
+
accent_color: { type: "color", required: false, label: "Accent color" },
|
|
625
|
+
};
|
|
626
|
+
export const HERO_RETRO_FIELDS = {
|
|
627
|
+
headline: HEADLINE,
|
|
628
|
+
media_url: MEDIA_URL,
|
|
629
|
+
subhead: SUBHEAD,
|
|
630
|
+
cta_text: CTA_TEXT,
|
|
631
|
+
cta_url: CTA_URL,
|
|
632
|
+
bg_color: { type: "color", required: false, label: "Background color" },
|
|
633
|
+
bg_gradient: T("Background gradient (CSS)"),
|
|
634
|
+
floating_elements: ARR("Floating elements (url, top, left, size, rotate, delay)"),
|
|
635
|
+
};
|
|
636
|
+
export const HERO_TRUST_FIELDS = {
|
|
637
|
+
headline: HEADLINE,
|
|
638
|
+
media_url: MEDIA_URL,
|
|
639
|
+
subhead: SUBHEAD,
|
|
640
|
+
cta_text: CTA_TEXT,
|
|
641
|
+
cta_url: CTA_URL,
|
|
642
|
+
rating: NUM("Star rating", 0, 5),
|
|
643
|
+
review_count: T("Review count label"),
|
|
644
|
+
credential_badges: ARR("Credential badges (icon, text)"),
|
|
645
|
+
};
|
|
646
|
+
export const HERO_CINEMATIC_FIELDS = {
|
|
647
|
+
headline: HEADLINE,
|
|
648
|
+
media_url: MEDIA_URL,
|
|
649
|
+
video_url: URL("Video URL (autoplay loop)"),
|
|
650
|
+
eyebrow: EYEBROW,
|
|
651
|
+
subhead: T("Tagline / accent text"),
|
|
652
|
+
cta_text: CTA_TEXT,
|
|
653
|
+
cta_url: CTA_URL,
|
|
654
|
+
overlay_strength: ENUM("Overlay strength", ["light", "medium", "heavy", "extreme"]),
|
|
655
|
+
cta_bg_color: { type: "color", required: false, label: "CTA background color" },
|
|
656
|
+
cta_text_color: { type: "color", required: false, label: "CTA text color" },
|
|
657
|
+
};
|
|
658
|
+
// ─── Layout (PromoBar / Ticker) ─────────────────────────────────────────────────
|
|
659
|
+
export const PROMOBAR_FIELDS = {
|
|
660
|
+
text: T("Promo text", true),
|
|
661
|
+
cta_text: CTA_TEXT,
|
|
662
|
+
link: CTA_URL,
|
|
663
|
+
bg_color: { type: "color", required: false, label: "Background color" },
|
|
664
|
+
text_color: { type: "color", required: false, label: "Text color" },
|
|
665
|
+
};
|
|
666
|
+
export const PROMOBAR_MULTI_FIELDS = {
|
|
667
|
+
items: ARR("Items (text + optional icon per item)"),
|
|
668
|
+
bg_color: { type: "color", required: false, label: "Background color" },
|
|
669
|
+
text_color: { type: "color", required: false, label: "Text color" },
|
|
670
|
+
speed: NUM("Scroll speed (seconds)", 10, 120),
|
|
671
|
+
separator: T("Separator character", false),
|
|
672
|
+
};
|
|
673
|
+
export const PROMOBAR_ROTATING_FIELDS = {
|
|
674
|
+
items: ARR("Messages (text + optional cta_text + cta_url per item)"),
|
|
675
|
+
bg_color: { type: "color", required: false, label: "Background color" },
|
|
676
|
+
text_color: { type: "color", required: false, label: "Text color" },
|
|
677
|
+
interval: NUM("Rotation interval (ms)", 1000, 10000),
|
|
678
|
+
};
|
|
679
|
+
export const PROMOBAR_COUNTDOWN_FIELDS = {
|
|
680
|
+
message: T("Message before timer", true),
|
|
681
|
+
end_date: T("End date (ISO 8601)", true),
|
|
682
|
+
cta_text: CTA_TEXT,
|
|
683
|
+
cta_url: CTA_URL,
|
|
684
|
+
bg_color: { type: "color", required: false, label: "Background color" },
|
|
685
|
+
text_color: { type: "color", required: false, label: "Text color" },
|
|
686
|
+
};
|
|
687
|
+
export const TICKER_FIELDS = {
|
|
688
|
+
items: ARR("Ticker items (one per line)"),
|
|
689
|
+
speed: NUM("Speed (seconds)", 5, 120),
|
|
690
|
+
};
|
|
691
|
+
// ─── PDP Variants ─────────────────────────────────────────────────────────────
|
|
692
|
+
export const PDP_VARIANTS_FIELDS = {
|
|
693
|
+
eyebrow: T("Eyebrow / category label"),
|
|
694
|
+
material_callouts: ARR("Material callouts (icon, title, body)"),
|
|
695
|
+
ingredients: ARR("Key ingredients (image, name, benefit)"),
|
|
696
|
+
clinical_results: ARR("Clinical results (stat, claim)"),
|
|
697
|
+
editorial_link: T("Editorial link (label + url object)"),
|
|
698
|
+
endorsement: T("Endorsement badge (name, title, quote, image)"),
|
|
699
|
+
feature_grid: ARR("Feature grid — 4 cards (icon, headline, body)"),
|
|
700
|
+
guarantee: T("Guarantee callout (icon, text)"),
|
|
701
|
+
};
|
|
702
|
+
// ─── Live Activity Ticker ────────────────────────────────────────────────────
|
|
703
|
+
export const LIVE_ACTIVITY_TICKER_FIELDS = {
|
|
704
|
+
activity_source: ENUM("Activity source", ["live_purchases", "visitor_count", "both"]),
|
|
705
|
+
visitor_count: NUM("Starting visitor count", 1),
|
|
706
|
+
time_window_hours: NUM("Time window (hours)", 1),
|
|
707
|
+
activity_items: ARR("Activity items"),
|
|
708
|
+
mock_items: ARR("Mock items (demo)"),
|
|
709
|
+
location_name: T("Location name"),
|
|
710
|
+
location_purchases: NUM("Location purchase count", 0),
|
|
711
|
+
location_emoji: T("Location flag emoji"),
|
|
712
|
+
};
|
|
713
|
+
// ─── Cart Drawer ─────────────────────────────────────────────────────────────
|
|
714
|
+
export const CART_DRAWER_FIELDS = {
|
|
715
|
+
heading: T("Drawer heading"),
|
|
716
|
+
empty_headline: T("Empty state headline"),
|
|
717
|
+
empty_cta_text: T("Empty state CTA text"),
|
|
718
|
+
empty_cta_url: URL("Empty state CTA URL"),
|
|
719
|
+
upsell_title: T("Upsell section label"),
|
|
720
|
+
checkout_label: T("Checkout button label"),
|
|
721
|
+
upsell_items: {
|
|
722
|
+
type: "array", required: false, label: "Upsell items",
|
|
723
|
+
validation: {
|
|
724
|
+
itemSchema: {
|
|
725
|
+
title: { type: "text", required: true, label: "Product title" },
|
|
726
|
+
price: { type: "text", required: true, label: "Price" },
|
|
727
|
+
image_url: { type: "image", required: false, label: "Product image" },
|
|
728
|
+
description: { type: "text", required: false, label: "Short description" },
|
|
729
|
+
},
|
|
730
|
+
},
|
|
731
|
+
},
|
|
732
|
+
};
|
|
733
|
+
// ─── Cart / Guarantee Banner ────────────────────────────────────────────────────
|
|
734
|
+
export const CART_GUARANTEE_FIELDS = {
|
|
735
|
+
guarantees: {
|
|
736
|
+
type: "array", required: true, label: "Guarantee items",
|
|
737
|
+
validation: {
|
|
738
|
+
itemSchema: {
|
|
739
|
+
icon: { type: "text", required: false, label: "Icon (emoji)" },
|
|
740
|
+
text: { type: "text", required: true, label: "Guarantee text" },
|
|
741
|
+
},
|
|
742
|
+
},
|
|
743
|
+
},
|
|
744
|
+
};
|
|
745
|
+
//# sourceMappingURL=registry-field-schemas.js.map
|