@opensite/ui 0.6.3 → 0.6.5

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.
Files changed (61) hide show
  1. package/dist/about-startup-team.cjs +2 -2
  2. package/dist/about-startup-team.js +2 -2
  3. package/dist/article-breadcrumb-social.cjs +434 -215
  4. package/dist/article-breadcrumb-social.d.cts +19 -1
  5. package/dist/article-breadcrumb-social.d.ts +19 -1
  6. package/dist/article-breadcrumb-social.js +434 -214
  7. package/dist/article-chapters-author.cjs +422 -204
  8. package/dist/article-chapters-author.d.cts +19 -1
  9. package/dist/article-chapters-author.d.ts +19 -1
  10. package/dist/article-chapters-author.js +422 -203
  11. package/dist/article-compact-toc.cjs +429 -73
  12. package/dist/article-compact-toc.d.cts +19 -1
  13. package/dist/article-compact-toc.d.ts +19 -1
  14. package/dist/article-compact-toc.js +430 -73
  15. package/dist/article-hero-prose.cjs +394 -347
  16. package/dist/article-hero-prose.d.cts +19 -1
  17. package/dist/article-hero-prose.d.ts +19 -1
  18. package/dist/article-hero-prose.js +396 -348
  19. package/dist/article-sidebar-sticky.cjs +398 -152
  20. package/dist/article-sidebar-sticky.d.cts +19 -1
  21. package/dist/article-sidebar-sticky.d.ts +19 -1
  22. package/dist/article-sidebar-sticky.js +400 -153
  23. package/dist/article-split-animated.cjs +422 -35
  24. package/dist/article-split-animated.d.cts +19 -1
  25. package/dist/article-split-animated.d.ts +19 -1
  26. package/dist/article-split-animated.js +423 -35
  27. package/dist/article-toc-sidebar.cjs +417 -356
  28. package/dist/article-toc-sidebar.d.cts +19 -1
  29. package/dist/article-toc-sidebar.d.ts +19 -1
  30. package/dist/article-toc-sidebar.js +417 -355
  31. package/dist/blog-cards-read-time.cjs +66 -27
  32. package/dist/blog-cards-read-time.js +66 -27
  33. package/dist/blog-cards-tagline-cta.cjs +64 -14
  34. package/dist/blog-cards-tagline-cta.js +64 -14
  35. package/dist/blog-carousel-apple.cjs +1255 -0
  36. package/dist/blog-carousel-apple.d.cts +113 -0
  37. package/dist/blog-carousel-apple.d.ts +113 -0
  38. package/dist/blog-carousel-apple.js +1234 -0
  39. package/dist/blog-category-overlay.cjs +77 -15
  40. package/dist/blog-category-overlay.js +77 -15
  41. package/dist/blog-featured-popular.cjs +72 -14
  42. package/dist/blog-featured-popular.js +72 -14
  43. package/dist/blog-filtered-results.cjs +122 -39
  44. package/dist/blog-filtered-results.js +122 -39
  45. package/dist/blog-grid-author-cards.cjs +40 -6
  46. package/dist/blog-grid-author-cards.js +40 -6
  47. package/dist/blog-grid-nine-posts.cjs +40 -6
  48. package/dist/blog-grid-nine-posts.js +40 -6
  49. package/dist/blog-horizontal-cards.cjs +34 -6
  50. package/dist/blog-horizontal-cards.js +34 -6
  51. package/dist/blog-horizontal-timeline.cjs +41 -12
  52. package/dist/blog-horizontal-timeline.js +41 -12
  53. package/dist/blog-masonry-featured.cjs +96 -52
  54. package/dist/blog-masonry-featured.js +96 -52
  55. package/dist/blog-related-articles.cjs +47 -9
  56. package/dist/blog-related-articles.js +47 -9
  57. package/dist/blog-tech-insights.cjs +78 -14
  58. package/dist/blog-tech-insights.js +78 -14
  59. package/dist/registry.cjs +1036 -687
  60. package/dist/registry.js +1036 -687
  61. package/package.json +1 -1
@@ -1,5 +1,6 @@
1
1
  "use client";
2
2
  import * as React from 'react';
3
+ import React__default from 'react';
3
4
  import { motion } from 'framer-motion';
4
5
  import { clsx } from 'clsx';
5
6
  import { twMerge } from 'tailwind-merge';
@@ -496,6 +497,379 @@ function Separator({
496
497
  }
497
498
  );
498
499
  }
500
+ var maxWidthStyles = {
501
+ sm: "max-w-screen-sm",
502
+ md: "max-w-screen-md",
503
+ lg: "max-w-screen-lg",
504
+ xl: "max-w-7xl",
505
+ "2xl": "max-w-screen-2xl",
506
+ "4xl": "max-w-[1536px]",
507
+ full: "max-w-full"
508
+ };
509
+ var Container = React__default.forwardRef(
510
+ ({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
511
+ const Component = as;
512
+ return /* @__PURE__ */ jsx(
513
+ Component,
514
+ {
515
+ ref,
516
+ className: cn(
517
+ "mx-auto w-full px-2 sm:px-4 lg:px-8",
518
+ maxWidthStyles[maxWidth],
519
+ className
520
+ ),
521
+ ...props,
522
+ children
523
+ }
524
+ );
525
+ }
526
+ );
527
+ Container.displayName = "Container";
528
+
529
+ // lib/patternSvgs.ts
530
+ var patternSvgs = {
531
+ squareAltGrid: "https://cdn.ing/assets/files/record/286187/4gpn0yq2ptra8iwlvmwwv860ggwv",
532
+ grid1: "https://cdn.ing/assets/files/record/286186/nbdflpgp4ostrno079hygibsflp3",
533
+ noise: "https://cdn.ing/assets/i/r/286188/zrqcp9hynh3j7p2laihwzfbujgrl/noise.png",
534
+ dots: "https://cdn.ing/assets/files/record/286198/yfsjx9thvtxzhl2qtshxyhkrm524",
535
+ dotPattern: "https://cdn.ing/assets/files/record/286192/7ig0cku8aqbboiza8nuk6hw0nnsr",
536
+ dotPattern2: "https://cdn.ing/assets/files/record/286189/arez6gd2s7isn9i1o6c7sexdq7bl",
537
+ circles: "https://cdn.ing/assets/files/record/286190/gtmia3sncjtzetdshc20zf1d3c17",
538
+ waves: "https://cdn.ing/assets/files/record/286191/mqlb33fzxz9cdth1bx7if0wmpkp1",
539
+ crossPattern: "https://cdn.ing/assets/files/record/286193/9yfqwdbnqaipbp7fsb3wbzzmq472",
540
+ architect: "https://cdn.ing/assets/files/record/286194/vgs88ugpvyhxu13wqgy0acvae6re",
541
+ tinyCheckers: "https://cdn.ing/assets/files/record/286195/65efaknsw8kcpf9o3c2gybytsl5b",
542
+ p6: "https://cdn.ing/assets/i/r/286196/6kl0rqnd6mjk8j7e525fo8fo0vkc/p6.webp"
543
+ };
544
+ var maskTop = "radial-gradient(ellipse 70% 60% at 50% 0%, #000 60%, transparent 100%)";
545
+ var maskBottom = "radial-gradient(ellipse 100% 80% at 50% 100%, #000 50%, transparent 90%)";
546
+ var maskCenter = "radial-gradient(ellipse 60% 60% at 50% 50%, #000 30%, transparent 70%)";
547
+ var maskTopLeft = "radial-gradient(ellipse 80% 80% at 0% 0%, #000 50%, transparent 90%)";
548
+ var maskTopRight = "radial-gradient(ellipse 80% 80% at 100% 0%, #000 50%, transparent 90%)";
549
+ var maskBottomLeft = "radial-gradient(ellipse 80% 80% at 0% 100%, #000 50%, transparent 90%)";
550
+ var maskBottomRight = "radial-gradient(ellipse 80% 80% at 100% 100%, #000 50%, transparent 90%)";
551
+ var circuitBoardPattern = (id, mask) => /* @__PURE__ */ jsxs(
552
+ "svg",
553
+ {
554
+ className: "h-full w-full",
555
+ xmlns: "http://www.w3.org/2000/svg",
556
+ style: mask ? {
557
+ maskImage: mask,
558
+ WebkitMaskImage: mask
559
+ } : void 0,
560
+ children: [
561
+ /* @__PURE__ */ jsx("defs", { children: /* @__PURE__ */ jsxs(
562
+ "pattern",
563
+ {
564
+ id,
565
+ x: "0",
566
+ y: "0",
567
+ width: "100",
568
+ height: "100",
569
+ patternUnits: "userSpaceOnUse",
570
+ children: [
571
+ /* @__PURE__ */ jsx(
572
+ "path",
573
+ {
574
+ d: "M0 50h40M60 50h40M50 0v40M50 60v40",
575
+ stroke: "hsl(var(--muted))",
576
+ strokeWidth: "1",
577
+ fill: "none"
578
+ }
579
+ ),
580
+ /* @__PURE__ */ jsx("circle", { cx: "50", cy: "50", r: "3", fill: "hsl(var(--muted))" }),
581
+ /* @__PURE__ */ jsx("circle", { cx: "0", cy: "50", r: "2", fill: "hsl(var(--muted))" }),
582
+ /* @__PURE__ */ jsx("circle", { cx: "100", cy: "50", r: "2", fill: "hsl(var(--muted))" }),
583
+ /* @__PURE__ */ jsx("circle", { cx: "50", cy: "0", r: "2", fill: "hsl(var(--muted))" }),
584
+ /* @__PURE__ */ jsx("circle", { cx: "50", cy: "100", r: "2", fill: "hsl(var(--muted))" })
585
+ ]
586
+ }
587
+ ) }),
588
+ /* @__PURE__ */ jsx("rect", { width: "100%", height: "100%", fill: `url(#${id})` })
589
+ ]
590
+ }
591
+ );
592
+ var gridDotsPattern = (id, mask) => /* @__PURE__ */ jsxs(
593
+ "svg",
594
+ {
595
+ className: "h-full w-full",
596
+ xmlns: "http://www.w3.org/2000/svg",
597
+ style: mask ? {
598
+ maskImage: mask,
599
+ WebkitMaskImage: mask
600
+ } : void 0,
601
+ children: [
602
+ /* @__PURE__ */ jsx("defs", { children: /* @__PURE__ */ jsxs(
603
+ "pattern",
604
+ {
605
+ id,
606
+ x: "0",
607
+ y: "0",
608
+ width: "40",
609
+ height: "40",
610
+ patternUnits: "userSpaceOnUse",
611
+ children: [
612
+ /* @__PURE__ */ jsx(
613
+ "path",
614
+ {
615
+ d: "M0 20h40M20 0v40",
616
+ stroke: "hsl(var(--muted))",
617
+ strokeWidth: "0.5",
618
+ fill: "none"
619
+ }
620
+ ),
621
+ /* @__PURE__ */ jsx("circle", { cx: "20", cy: "20", r: "2", fill: "hsl(var(--muted))" })
622
+ ]
623
+ }
624
+ ) }),
625
+ /* @__PURE__ */ jsx("rect", { width: "100%", height: "100%", fill: `url(#${id})` })
626
+ ]
627
+ }
628
+ );
629
+ var gridPattern = (size, mask) => /* @__PURE__ */ jsx(
630
+ "div",
631
+ {
632
+ className: "h-full w-full bg-[linear-gradient(to_right,_hsl(var(--muted))_1px,_transparent_1px),linear-gradient(to_bottom,_hsl(var(--muted))_1px,_transparent_1px)]",
633
+ style: {
634
+ backgroundSize: `${size}px ${size}px`,
635
+ ...mask ? {
636
+ maskImage: mask,
637
+ WebkitMaskImage: mask
638
+ } : {}
639
+ }
640
+ }
641
+ );
642
+ var diagonalCrossPattern = (mask) => /* @__PURE__ */ jsx(
643
+ "div",
644
+ {
645
+ className: "h-full w-full",
646
+ style: {
647
+ backgroundImage: "repeating-linear-gradient(45deg, transparent, transparent 32px, hsl(var(--muted)) 32px, hsl(var(--muted)) 33px), repeating-linear-gradient(135deg, transparent, transparent 32px, hsl(var(--muted)) 32px, hsl(var(--muted)) 33px)",
648
+ ...mask ? {
649
+ maskImage: mask,
650
+ WebkitMaskImage: mask
651
+ } : {}
652
+ }
653
+ }
654
+ );
655
+ var dashedGridMaskBase = "repeating-linear-gradient(to right, black 0px, black 3px, transparent 3px, transparent 8px), repeating-linear-gradient(to bottom, black 0px, black 3px, transparent 3px, transparent 8px)";
656
+ var dashedGridPattern = (fadeMask) => {
657
+ const mask = fadeMask ? `${dashedGridMaskBase}, ${fadeMask}` : dashedGridMaskBase;
658
+ return /* @__PURE__ */ jsx(
659
+ "div",
660
+ {
661
+ className: "h-full w-full",
662
+ style: {
663
+ backgroundImage: "linear-gradient(to right, hsl(var(--muted)) 1px, transparent 1px), linear-gradient(to bottom, hsl(var(--muted)) 1px, transparent 1px)",
664
+ backgroundSize: "20px 20px",
665
+ backgroundPosition: "0 0, 0 0",
666
+ maskImage: mask,
667
+ WebkitMaskImage: mask,
668
+ maskComposite: "intersect",
669
+ WebkitMaskComposite: "source-in"
670
+ }
671
+ }
672
+ );
673
+ };
674
+ var gradientGlow = (position) => /* @__PURE__ */ jsx(
675
+ "div",
676
+ {
677
+ className: cn(
678
+ "pointer-events-none absolute left-1/2 z-0 aspect-square w-3/4 -translate-x-1/2 rounded-full opacity-50 blur-3xl",
679
+ position === "top" ? "-top-1/4" : "-bottom-1/4"
680
+ ),
681
+ style: {
682
+ background: "radial-gradient(circle, hsl(var(--primary)) 0%, transparent 70%)"
683
+ }
684
+ }
685
+ );
686
+ var spotlight = (position) => /* @__PURE__ */ jsx(
687
+ "div",
688
+ {
689
+ className: cn(
690
+ "pointer-events-none absolute top-1/2 z-0 aspect-square w-3/4 -translate-y-1/2 rounded-full opacity-40 blur-3xl",
691
+ position === "left" ? "-left-1/4" : "-right-1/4"
692
+ ),
693
+ style: {
694
+ background: "radial-gradient(circle, hsl(var(--primary)) 0%, transparent 70%)"
695
+ }
696
+ }
697
+ );
698
+ var patternOverlays = {
699
+ circuitBoardBasic: () => circuitBoardPattern("circuit-board-basic"),
700
+ circuitBoardFadeTop: () => circuitBoardPattern("circuit-board-fade-top", maskTop),
701
+ circuitBoardFadeBottom: () => circuitBoardPattern("circuit-board-fade-bottom", maskBottom),
702
+ circuitBoardFadeCenter: () => circuitBoardPattern("circuit-board-fade-center", maskCenter),
703
+ circuitBoardFadeTopLeft: () => circuitBoardPattern("circuit-board-fade-top-left", maskTopLeft),
704
+ circuitBoardFadeTopRight: () => circuitBoardPattern("circuit-board-fade-top-right", maskTopRight),
705
+ circuitBoardFadeBottomLeft: () => circuitBoardPattern("circuit-board-fade-bottom-left", maskBottomLeft),
706
+ circuitBoardFadeBottomRight: () => circuitBoardPattern("circuit-board-fade-bottom-right", maskBottomRight),
707
+ dashedGridBasic: () => dashedGridPattern(),
708
+ dashedGridFadeTop: () => dashedGridPattern(maskTop),
709
+ dashedGridFadeBottom: () => dashedGridPattern(maskBottom),
710
+ dashedGridFadeCenter: () => dashedGridPattern(maskCenter),
711
+ dashedGridFadeTopLeft: () => dashedGridPattern(maskTopLeft),
712
+ dashedGridFadeTopRight: () => dashedGridPattern(maskTopRight),
713
+ dashedGridFadeBottomLeft: () => dashedGridPattern(maskBottomLeft),
714
+ dashedGridFadeBottomRight: () => dashedGridPattern(maskBottomRight),
715
+ diagonalCrossBasic: () => diagonalCrossPattern(),
716
+ diagonalCrossFadeTop: () => diagonalCrossPattern(maskTop),
717
+ diagonalCrossFadeBottom: () => diagonalCrossPattern(maskBottom),
718
+ diagonalCrossFadeCenter: () => diagonalCrossPattern(maskCenter),
719
+ diagonalCrossFadeTopLeft: () => diagonalCrossPattern(maskTopLeft),
720
+ diagonalCrossFadeTopRight: () => diagonalCrossPattern(maskTopRight),
721
+ diagonalCrossFadeBottomLeft: () => diagonalCrossPattern(maskBottomLeft),
722
+ diagonalCrossFadeBottomRight: () => diagonalCrossPattern(maskBottomRight),
723
+ gridBasic: () => gridPattern(40),
724
+ gridFadeTop: () => gridPattern(32, maskTop),
725
+ gridFadeBottom: () => gridPattern(32, maskBottom),
726
+ gridFadeCenter: () => gridPattern(40, maskCenter),
727
+ gridFadeTopLeft: () => gridPattern(32, maskTopLeft),
728
+ gridFadeTopRight: () => gridPattern(32, maskTopRight),
729
+ gridFadeBottomLeft: () => gridPattern(32, maskBottomLeft),
730
+ gridFadeBottomRight: () => gridPattern(32, maskBottomRight),
731
+ gridDotsBasic: () => gridDotsPattern("grid-dots-basic"),
732
+ gridDotsFadeCenter: () => gridDotsPattern("grid-dots-fade-center", maskCenter),
733
+ gradientGlowTop: () => gradientGlow("top"),
734
+ gradientGlowBottom: () => gradientGlow("bottom"),
735
+ spotlightLeft: () => spotlight("left"),
736
+ spotlightRight: () => spotlight("right")
737
+ };
738
+ var inlinePatternStyles = {
739
+ radialGradientTop: {
740
+ background: "radial-gradient(125% 125% at 50% 10%, hsl(var(--background)) 40%, hsl(var(--primary)) 100%)"
741
+ },
742
+ radialGradientBottom: {
743
+ background: "radial-gradient(125% 125% at 50% 90%, hsl(var(--background)) 40%, hsl(var(--primary)) 100%)"
744
+ }
745
+ };
746
+ function PatternBackground({
747
+ pattern,
748
+ opacity = 0.08,
749
+ className,
750
+ style
751
+ }) {
752
+ if (!pattern) {
753
+ return null;
754
+ }
755
+ if (pattern in inlinePatternStyles) {
756
+ const inlineStyle = inlinePatternStyles[pattern];
757
+ return /* @__PURE__ */ jsx(
758
+ "div",
759
+ {
760
+ className: cn("pointer-events-none absolute inset-0 z-0", className),
761
+ style: { ...inlineStyle, opacity, ...style },
762
+ "aria-hidden": "true"
763
+ }
764
+ );
765
+ }
766
+ if (pattern in patternOverlays) {
767
+ const Overlay = patternOverlays[pattern];
768
+ return /* @__PURE__ */ jsx(
769
+ "div",
770
+ {
771
+ className: cn("pointer-events-none absolute inset-0 z-0", className),
772
+ style: { opacity, ...style },
773
+ "aria-hidden": "true",
774
+ children: Overlay()
775
+ }
776
+ );
777
+ }
778
+ const patternUrl = pattern in patternSvgs ? patternSvgs[pattern] : pattern;
779
+ return /* @__PURE__ */ jsx(
780
+ "div",
781
+ {
782
+ className: cn("pointer-events-none absolute inset-0 z-0", className),
783
+ style: {
784
+ backgroundImage: `url(${patternUrl})`,
785
+ backgroundRepeat: "repeat",
786
+ backgroundSize: "auto",
787
+ opacity,
788
+ ...style
789
+ },
790
+ "aria-hidden": "true"
791
+ }
792
+ );
793
+ }
794
+ var backgroundStyles = {
795
+ default: "bg-background text-foreground",
796
+ white: "bg-white text-dark",
797
+ gray: "bg-muted/30 text-foreground",
798
+ dark: "bg-foreground text-background",
799
+ transparent: "bg-transparent text-foreground",
800
+ gradient: "bg-linear-to-br from-primary via-primary/90 to-foreground text-primary-foreground",
801
+ primary: "bg-primary text-primary-foreground",
802
+ secondary: "bg-secondary text-secondary-foreground",
803
+ muted: "bg-muted text-muted-foreground"
804
+ };
805
+ var spacingStyles = {
806
+ none: "py-0 md:py-0",
807
+ sm: "py-12 md:py-16",
808
+ md: "py-16 md:py-24",
809
+ lg: "py-20 md:py-32",
810
+ xl: "py-24 md:py-40"
811
+ };
812
+ var Section = React__default.forwardRef(
813
+ ({
814
+ id,
815
+ title,
816
+ subtitle,
817
+ children,
818
+ className,
819
+ style,
820
+ background = "default",
821
+ spacing = "lg",
822
+ pattern,
823
+ patternOpacity,
824
+ patternClassName,
825
+ containerClassName,
826
+ containerMaxWidth = "xl",
827
+ ...props
828
+ }, ref) => {
829
+ const effectivePatternOpacity = patternOpacity !== void 0 ? patternOpacity : pattern ? 1 : 0;
830
+ return /* @__PURE__ */ jsxs(
831
+ "section",
832
+ {
833
+ ref,
834
+ id,
835
+ className: cn(
836
+ "relative",
837
+ pattern ? "overflow-hidden" : null,
838
+ backgroundStyles[background],
839
+ spacingStyles[spacing],
840
+ className
841
+ ),
842
+ style,
843
+ ...props,
844
+ children: [
845
+ /* @__PURE__ */ jsx(
846
+ PatternBackground,
847
+ {
848
+ pattern,
849
+ opacity: effectivePatternOpacity,
850
+ className: patternClassName
851
+ }
852
+ ),
853
+ /* @__PURE__ */ jsxs(
854
+ Container,
855
+ {
856
+ maxWidth: containerMaxWidth,
857
+ className: cn("relative z-10", containerClassName),
858
+ children: [
859
+ (title || subtitle) && /* @__PURE__ */ jsxs("div", { className: "mb-12 text-center md:mb-16", children: [
860
+ subtitle && /* @__PURE__ */ jsx("p", { className: "mb-2 text-sm font-semibold uppercase tracking-wider text-primary", children: subtitle }),
861
+ title && /* @__PURE__ */ jsx("h2", { className: "text-3xl font-bold tracking-tight md:text-4xl lg:text-5xl", children: title })
862
+ ] }),
863
+ children
864
+ ]
865
+ }
866
+ )
867
+ ]
868
+ }
869
+ );
870
+ }
871
+ );
872
+ Section.displayName = "Section";
499
873
  function ArticleSplitAnimatedComponent({
500
874
  className,
501
875
  containerClassName,
@@ -527,7 +901,11 @@ function ArticleSplitAnimatedComponent({
527
901
  ctaHref,
528
902
  ctaSlot,
529
903
  enableAnimations = true,
530
- optixFlowConfig
904
+ optixFlowConfig,
905
+ background,
906
+ spacing,
907
+ pattern,
908
+ patternOpacity
531
909
  }) {
532
910
  const ctaActions = ctaActionsProp ?? (ctaText ? [{ label: ctaText, href: ctaHref || "#", variant: "default", size: "lg" }] : []);
533
911
  const MotionWrapper = enableAnimations ? motion.div : "div";
@@ -606,41 +984,51 @@ function ArticleSplitAnimatedComponent({
606
984
  viewport: { once: true },
607
985
  transition: { duration: 0.5, delay: 0.1 }
608
986
  } : {};
609
- return /* @__PURE__ */ jsx("section", { className: cn("py-32", className), children: /* @__PURE__ */ jsx("div", { className: cn("container", containerClassName), children: /* @__PURE__ */ jsxs("div", { className: "grid gap-8 lg:grid-cols-2 lg:gap-12", children: [
610
- /* @__PURE__ */ jsxs(
611
- MotionWrapper,
612
- {
613
- ...imageAnimationProps,
614
- className: cn(
615
- "relative aspect-4/3 overflow-hidden rounded-2xl lg:aspect-auto lg:h-full",
616
- imageContainerClassName
987
+ return /* @__PURE__ */ jsx(
988
+ Section,
989
+ {
990
+ background,
991
+ spacing,
992
+ pattern,
993
+ patternOpacity,
994
+ className,
995
+ children: /* @__PURE__ */ jsx("div", { className: cn("container", containerClassName), children: /* @__PURE__ */ jsxs("div", { className: "grid gap-8 lg:grid-cols-2 lg:gap-12", children: [
996
+ /* @__PURE__ */ jsxs(
997
+ MotionWrapper,
998
+ {
999
+ ...imageAnimationProps,
1000
+ className: cn(
1001
+ "relative aspect-4/3 overflow-hidden rounded-2xl lg:aspect-auto lg:h-full",
1002
+ imageContainerClassName
1003
+ ),
1004
+ children: [
1005
+ heroMediaContent,
1006
+ /* @__PURE__ */ jsx("div", { className: "absolute inset-0 bg-linear-to-t from-black/60 via-transparent to-transparent" }),
1007
+ /* @__PURE__ */ jsx("div", { className: "absolute bottom-0 left-0 p-6", children: categoryContent })
1008
+ ]
1009
+ }
617
1010
  ),
618
- children: [
619
- heroMediaContent,
620
- /* @__PURE__ */ jsx("div", { className: "absolute inset-0 bg-linear-to-t from-black/60 via-transparent to-transparent" }),
621
- /* @__PURE__ */ jsx("div", { className: "absolute bottom-0 left-0 p-6", children: categoryContent })
622
- ]
623
- }
624
- ),
625
- /* @__PURE__ */ jsxs(
626
- MotionWrapper,
627
- {
628
- ...contentAnimationProps,
629
- className: cn("flex flex-col justify-center", contentClassName),
630
- children: [
631
- (publishDate || readTime) && /* @__PURE__ */ jsxs("div", { className: cn("flex items-center gap-4 text-sm text-muted-foreground", metaClassName), children: [
632
- publishDate && /* @__PURE__ */ jsx("span", { children: publishDate }),
633
- publishDate && readTime && /* @__PURE__ */ jsx(Separator, { orientation: "vertical", className: "h-4" }),
634
- readTime && /* @__PURE__ */ jsx("span", { children: readTime })
635
- ] }),
636
- title && (typeof title === "string" ? /* @__PURE__ */ jsx("h2", { className: cn("mt-4 text-3xl font-bold tracking-tight md:text-4xl lg:text-5xl", titleClassName), children: title }) : /* @__PURE__ */ jsx("div", { className: cn("mt-4", titleClassName), children: title })),
637
- description && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("mt-4 text-lg text-muted-foreground", descriptionClassName), children: description }) : /* @__PURE__ */ jsx("div", { className: cn("mt-4", descriptionClassName), children: description })),
638
- authorContent,
639
- ctaContent
640
- ]
641
- }
642
- )
643
- ] }) }) });
1011
+ /* @__PURE__ */ jsxs(
1012
+ MotionWrapper,
1013
+ {
1014
+ ...contentAnimationProps,
1015
+ className: cn("flex flex-col justify-center", contentClassName),
1016
+ children: [
1017
+ (publishDate || readTime) && /* @__PURE__ */ jsxs("div", { className: cn("flex items-center gap-4 text-sm text-muted-foreground", metaClassName), children: [
1018
+ publishDate && /* @__PURE__ */ jsx("span", { children: publishDate }),
1019
+ publishDate && readTime && /* @__PURE__ */ jsx(Separator, { orientation: "vertical", className: "h-4" }),
1020
+ readTime && /* @__PURE__ */ jsx("span", { children: readTime })
1021
+ ] }),
1022
+ title && (typeof title === "string" ? /* @__PURE__ */ jsx("h2", { className: cn("mt-4 text-3xl font-bold tracking-tight md:text-4xl lg:text-5xl", titleClassName), children: title }) : /* @__PURE__ */ jsx("div", { className: cn("mt-4", titleClassName), children: title })),
1023
+ description && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("mt-4 text-lg text-muted-foreground", descriptionClassName), children: description }) : /* @__PURE__ */ jsx("div", { className: cn("mt-4", descriptionClassName), children: description })),
1024
+ authorContent,
1025
+ ctaContent
1026
+ ]
1027
+ }
1028
+ )
1029
+ ] }) })
1030
+ }
1031
+ );
644
1032
  }
645
1033
 
646
1034
  export { ArticleSplitAnimatedComponent as ArticleSplitAnimated };