From 3e739877b4edc2e0c6a18d583864eee8d598ddf7 Mon Sep 17 00:00:00 2001 From: Nicholai Date: Tue, 25 Nov 2025 03:00:50 -0700 Subject: [PATCH] feat(components): add new UI components for enhanced user experience - Introduced multiple new components including AnimatedLink, Button, Calendar, Card, ColorSwatch, Divider, Filmstrip, FormContainer, FormField, GalleryCard, Heading, HeroOverlay, IdentitySection, ImmersionSection, NewArtistsSection, NewContactSection, NewHero, NewNavigation, Reveal, SectionLabel, StickySplit, and Toast. - Each component is designed with responsive layouts and customizable styles to improve the overall UI consistency and interactivity. - Implemented accessibility features and animations to enhance user engagement. This commit significantly expands the component library, providing a robust foundation for building a cohesive user interface. --- components/united/animated-link.tsx | 32 ++++ components/united/button.tsx | 53 +++++++ components/united/calendar.tsx | 57 +++++++ components/united/card.tsx | 84 +++++++++++ components/united/color-swatch.tsx | 40 +++++ components/united/divider.tsx | 21 +++ components/united/filmstrip.tsx | 116 ++++++++++++++ components/united/form-container.tsx | 24 +++ components/united/form-field.tsx | 68 +++++++++ components/united/gallery-card.tsx | 37 +++++ components/united/heading.tsx | 49 ++++++ components/united/hero-overlay.tsx | 26 ++++ components/united/identity-section.tsx | 79 ++++++++++ components/united/immersion-section.tsx | 24 +++ components/united/index.ts | 35 +++++ components/united/lead-text.tsx | 21 +++ components/united/lift-card.tsx | 28 ++++ components/united/metadata.tsx | 11 ++ components/united/motion-card.tsx | 28 ++++ components/united/new-artists-section.tsx | 98 ++++++++++++ components/united/new-contact-section.tsx | 141 +++++++++++++++++ components/united/new-hero.tsx | 75 ++++++++++ components/united/new-navigation.tsx | 175 ++++++++++++++++++++++ components/united/reveal.tsx | 56 +++++++ components/united/section-label.tsx | 27 ++++ components/united/sticky-split.tsx | 29 ++++ components/united/toast.tsx | 38 +++++ 27 files changed, 1472 insertions(+) create mode 100644 components/united/animated-link.tsx create mode 100644 components/united/button.tsx create mode 100644 components/united/calendar.tsx create mode 100644 components/united/card.tsx create mode 100644 components/united/color-swatch.tsx create mode 100644 components/united/divider.tsx create mode 100644 components/united/filmstrip.tsx create mode 100644 components/united/form-container.tsx create mode 100644 components/united/form-field.tsx create mode 100644 components/united/gallery-card.tsx create mode 100644 components/united/heading.tsx create mode 100644 components/united/hero-overlay.tsx create mode 100644 components/united/identity-section.tsx create mode 100644 components/united/immersion-section.tsx create mode 100644 components/united/index.ts create mode 100644 components/united/lead-text.tsx create mode 100644 components/united/lift-card.tsx create mode 100644 components/united/metadata.tsx create mode 100644 components/united/motion-card.tsx create mode 100644 components/united/new-artists-section.tsx create mode 100644 components/united/new-contact-section.tsx create mode 100644 components/united/new-hero.tsx create mode 100644 components/united/new-navigation.tsx create mode 100644 components/united/reveal.tsx create mode 100644 components/united/section-label.tsx create mode 100644 components/united/sticky-split.tsx create mode 100644 components/united/toast.tsx diff --git a/components/united/animated-link.tsx b/components/united/animated-link.tsx new file mode 100644 index 000000000..98dd17f27 --- /dev/null +++ b/components/united/animated-link.tsx @@ -0,0 +1,32 @@ +"use client" + +import * as React from "react" +import { cn } from "@/lib/utils" + +export interface AnimatedLinkProps extends React.AnchorHTMLAttributes {} + +const AnimatedLink = React.forwardRef( + ({ className, children, ...props }, ref) => { + return ( + + {children} + + + ) + }, +) +AnimatedLink.displayName = "AnimatedLink" + +export { AnimatedLink } diff --git a/components/united/button.tsx b/components/united/button.tsx new file mode 100644 index 000000000..9c7a10a8d --- /dev/null +++ b/components/united/button.tsx @@ -0,0 +1,53 @@ +"use client" + +import * as React from "react" +import { cn } from "@/lib/utils" + +export interface ButtonProps extends React.ButtonHTMLAttributes { + variant?: "primary" | "secondary" | "ghost" + size?: "default" | "sm" | "lg" +} + +const Button = React.forwardRef( + ({ className, variant = "primary", size = "default", ...props }, ref) => { + return ( +