@opensite/ui 3.4.2 → 3.4.3

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.
@@ -501,6 +501,25 @@ function ActionComponent({ action }) {
501
501
  }
502
502
  );
503
503
  }
504
+ function CardArrowIcon({ className }) {
505
+ return /* @__PURE__ */ jsxRuntime.jsxs(
506
+ "svg",
507
+ {
508
+ "aria-hidden": "true",
509
+ viewBox: "0 0 24 24",
510
+ fill: "none",
511
+ stroke: "currentColor",
512
+ strokeWidth: 2,
513
+ strokeLinecap: "round",
514
+ strokeLinejoin: "round",
515
+ className,
516
+ children: [
517
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M5 12h14" }),
518
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "m12 5 7 7-7 7" })
519
+ ]
520
+ }
521
+ );
522
+ }
504
523
  function HeroOverlayCtaGrid({
505
524
  sectionId = "hero-overlay-cta-grid",
506
525
  badgeText,
@@ -560,9 +579,7 @@ function HeroOverlayCtaGrid({
560
579
  card.href ? /* @__PURE__ */ jsxRuntime.jsx(
561
580
  DynamicIcon,
562
581
  {
563
- name: "lucide/arrow-right",
564
- size: 18,
565
- className: cn("ml-auto flex-none text-card-foreground")
582
+ name: /* @__PURE__ */ jsxRuntime.jsx(CardArrowIcon, { className: "ml-auto size-[18px] flex-none text-card-foreground" })
566
583
  }
567
584
  ) : null
568
585
  ]
@@ -608,7 +625,7 @@ function HeroOverlayCtaGrid({
608
625
  initial: { opacity: 0, y: 28 },
609
626
  animate: { opacity: 1, y: 0 },
610
627
  transition: { duration: 0.6, ease: "easeOut" },
611
- className: "mx-auto max-w-3xl text-center text-balance text-white px-0",
628
+ className: "mx-auto max-w-3xl text-center text-balance text-white px-0 flex flex-col items-center justify-center",
612
629
  children: [
613
630
  renderBadge,
614
631
  heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
@@ -620,16 +637,7 @@ function HeroOverlayCtaGrid({
620
637
  ),
621
638
  children: heading
622
639
  }
623
- ) : /* @__PURE__ */ jsxRuntime.jsx(
624
- "h1",
625
- {
626
- className: cn(
627
- "mt-6 text-4xl font-bold leading-tight md:text-5xl lg:text-6xl text-balance",
628
- headingClassName
629
- ),
630
- children: heading
631
- }
632
- )),
640
+ ) : heading),
633
641
  description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
634
642
  "p",
635
643
  {
@@ -639,16 +647,7 @@ function HeroOverlayCtaGrid({
639
647
  ),
640
648
  children: description
641
649
  }
642
- ) : /* @__PURE__ */ jsxRuntime.jsx(
643
- "div",
644
- {
645
- className: cn(
646
- "mt-5 text-lg md:text-xl text-balance",
647
- descriptionClassName
648
- ),
649
- children: description
650
- }
651
- )),
650
+ ) : description),
652
651
  /* @__PURE__ */ jsxRuntime.jsx(
653
652
  BlockActions,
654
653
  {
@@ -480,6 +480,25 @@ function ActionComponent({ action }) {
480
480
  }
481
481
  );
482
482
  }
483
+ function CardArrowIcon({ className }) {
484
+ return /* @__PURE__ */ jsxs(
485
+ "svg",
486
+ {
487
+ "aria-hidden": "true",
488
+ viewBox: "0 0 24 24",
489
+ fill: "none",
490
+ stroke: "currentColor",
491
+ strokeWidth: 2,
492
+ strokeLinecap: "round",
493
+ strokeLinejoin: "round",
494
+ className,
495
+ children: [
496
+ /* @__PURE__ */ jsx("path", { d: "M5 12h14" }),
497
+ /* @__PURE__ */ jsx("path", { d: "m12 5 7 7-7 7" })
498
+ ]
499
+ }
500
+ );
501
+ }
483
502
  function HeroOverlayCtaGrid({
484
503
  sectionId = "hero-overlay-cta-grid",
485
504
  badgeText,
@@ -539,9 +558,7 @@ function HeroOverlayCtaGrid({
539
558
  card.href ? /* @__PURE__ */ jsx(
540
559
  DynamicIcon,
541
560
  {
542
- name: "lucide/arrow-right",
543
- size: 18,
544
- className: cn("ml-auto flex-none text-card-foreground")
561
+ name: /* @__PURE__ */ jsx(CardArrowIcon, { className: "ml-auto size-[18px] flex-none text-card-foreground" })
545
562
  }
546
563
  ) : null
547
564
  ]
@@ -587,7 +604,7 @@ function HeroOverlayCtaGrid({
587
604
  initial: { opacity: 0, y: 28 },
588
605
  animate: { opacity: 1, y: 0 },
589
606
  transition: { duration: 0.6, ease: "easeOut" },
590
- className: "mx-auto max-w-3xl text-center text-balance text-white px-0",
607
+ className: "mx-auto max-w-3xl text-center text-balance text-white px-0 flex flex-col items-center justify-center",
591
608
  children: [
592
609
  renderBadge,
593
610
  heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
@@ -599,16 +616,7 @@ function HeroOverlayCtaGrid({
599
616
  ),
600
617
  children: heading
601
618
  }
602
- ) : /* @__PURE__ */ jsx(
603
- "h1",
604
- {
605
- className: cn(
606
- "mt-6 text-4xl font-bold leading-tight md:text-5xl lg:text-6xl text-balance",
607
- headingClassName
608
- ),
609
- children: heading
610
- }
611
- )),
619
+ ) : heading),
612
620
  description && (typeof description === "string" ? /* @__PURE__ */ jsx(
613
621
  "p",
614
622
  {
@@ -618,16 +626,7 @@ function HeroOverlayCtaGrid({
618
626
  ),
619
627
  children: description
620
628
  }
621
- ) : /* @__PURE__ */ jsx(
622
- "div",
623
- {
624
- className: cn(
625
- "mt-5 text-lg md:text-xl text-balance",
626
- descriptionClassName
627
- ),
628
- children: description
629
- }
630
- )),
629
+ ) : description),
631
630
  /* @__PURE__ */ jsx(
632
631
  BlockActions,
633
632
  {
package/dist/registry.cjs CHANGED
@@ -49331,6 +49331,25 @@ function CaseStudyStatsMetrics({
49331
49331
  }
49332
49332
  );
49333
49333
  }
49334
+ function CardArrowIcon({ className }) {
49335
+ return /* @__PURE__ */ jsxRuntime.jsxs(
49336
+ "svg",
49337
+ {
49338
+ "aria-hidden": "true",
49339
+ viewBox: "0 0 24 24",
49340
+ fill: "none",
49341
+ stroke: "currentColor",
49342
+ strokeWidth: 2,
49343
+ strokeLinecap: "round",
49344
+ strokeLinejoin: "round",
49345
+ className,
49346
+ children: [
49347
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M5 12h14" }),
49348
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "m12 5 7 7-7 7" })
49349
+ ]
49350
+ }
49351
+ );
49352
+ }
49334
49353
  function HeroOverlayCtaGrid({
49335
49354
  sectionId = "hero-overlay-cta-grid",
49336
49355
  badgeText,
@@ -49390,9 +49409,7 @@ function HeroOverlayCtaGrid({
49390
49409
  card.href ? /* @__PURE__ */ jsxRuntime.jsx(
49391
49410
  DynamicIcon,
49392
49411
  {
49393
- name: "lucide/arrow-right",
49394
- size: 18,
49395
- className: cn("ml-auto flex-none text-card-foreground")
49412
+ name: /* @__PURE__ */ jsxRuntime.jsx(CardArrowIcon, { className: "ml-auto size-[18px] flex-none text-card-foreground" })
49396
49413
  }
49397
49414
  ) : null
49398
49415
  ]
@@ -49438,7 +49455,7 @@ function HeroOverlayCtaGrid({
49438
49455
  initial: { opacity: 0, y: 28 },
49439
49456
  animate: { opacity: 1, y: 0 },
49440
49457
  transition: { duration: 0.6, ease: "easeOut" },
49441
- className: "mx-auto max-w-3xl text-center text-balance text-white px-0",
49458
+ className: "mx-auto max-w-3xl text-center text-balance text-white px-0 flex flex-col items-center justify-center",
49442
49459
  children: [
49443
49460
  renderBadge,
49444
49461
  heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
@@ -49450,16 +49467,7 @@ function HeroOverlayCtaGrid({
49450
49467
  ),
49451
49468
  children: heading
49452
49469
  }
49453
- ) : /* @__PURE__ */ jsxRuntime.jsx(
49454
- "h1",
49455
- {
49456
- className: cn(
49457
- "mt-6 text-4xl font-bold leading-tight md:text-5xl lg:text-6xl text-balance",
49458
- headingClassName
49459
- ),
49460
- children: heading
49461
- }
49462
- )),
49470
+ ) : heading),
49463
49471
  description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
49464
49472
  "p",
49465
49473
  {
@@ -49469,16 +49477,7 @@ function HeroOverlayCtaGrid({
49469
49477
  ),
49470
49478
  children: description
49471
49479
  }
49472
- ) : /* @__PURE__ */ jsxRuntime.jsx(
49473
- "div",
49474
- {
49475
- className: cn(
49476
- "mt-5 text-lg md:text-xl text-balance",
49477
- descriptionClassName
49478
- ),
49479
- children: description
49480
- }
49481
- )),
49480
+ ) : description),
49482
49481
  /* @__PURE__ */ jsxRuntime.jsx(
49483
49482
  BlockActions,
49484
49483
  {
@@ -97542,8 +97541,8 @@ function StatsGrowthTimeline({
97542
97541
  milestone.metric && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-4 rounded-lg border bg-background p-4 shadow-sm", children: [
97543
97542
  renderMilestoneIcon(milestone),
97544
97543
  /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
97545
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-2xl font-bold text-primary", children: milestone.metric.value }),
97546
- milestone.metric.label && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm text-muted-foreground", children: milestone.metric.label })
97544
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-2xl font-semibold", children: milestone.metric.value }),
97545
+ milestone.metric.label && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm opacity-70", children: milestone.metric.label })
97547
97546
  ] })
97548
97547
  ] })
97549
97548
  ] }),
@@ -97575,8 +97574,8 @@ function StatsGrowthTimeline({
97575
97574
  children: [
97576
97575
  currentStatsHeading && (typeof currentStatsHeading === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mb-12 text-center text-4xl lg:text-5xl font-bold", children: currentStatsHeading }) : currentStatsHeading),
97577
97576
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-2 gap-8 md:grid-cols-4", children: currentStats.map((stat, index) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("text-center", stat.className), children: [
97578
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-2xl font-semibold text-primary md:text-3xl xl:text-4xl", children: stat.value }),
97579
- stat.label && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "font-medium text-balance text-sm", children: stat.label })
97577
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-2xl font-semibold md:text-3xl xl:text-4xl", children: stat.value }),
97578
+ stat.label && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "font-medium text-balance text-sm opacity-70", children: stat.label })
97580
97579
  ] }, index)) })
97581
97580
  ]
97582
97581
  }
@@ -97592,18 +97591,27 @@ function StatsGrowthTimeline({
97592
97591
  if (futureSlot) return futureSlot;
97593
97592
  if (!futureHeading && !futureDescription && (!actions || actions.length === 0))
97594
97593
  return null;
97595
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("mt-16 text-center", futureClassName), children: [
97596
- futureHeading && (typeof futureHeading === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mb-4 text-2xl font-bold", children: futureHeading }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-4", children: futureHeading })),
97597
- futureDescription && (typeof futureDescription === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mx-auto mb-8 max-w-full md:max-w-lg text-balance", children: futureDescription }) : futureDescription),
97598
- /* @__PURE__ */ jsxRuntime.jsx(
97599
- BlockActions,
97600
- {
97601
- actions,
97602
- actionsSlot,
97603
- actionsClassName
97604
- }
97605
- )
97606
- ] });
97594
+ return /* @__PURE__ */ jsxRuntime.jsxs(
97595
+ "div",
97596
+ {
97597
+ className: cn(
97598
+ "mt-16 text-center flex flex-col items-center justify-center",
97599
+ futureClassName
97600
+ ),
97601
+ children: [
97602
+ futureHeading && (typeof futureHeading === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mb-4 text-2xl font-bold", children: futureHeading }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-4", children: futureHeading })),
97603
+ futureDescription && (typeof futureDescription === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mx-auto mb-8 max-w-full md:max-w-lg text-balance", children: futureDescription }) : futureDescription),
97604
+ /* @__PURE__ */ jsxRuntime.jsx(
97605
+ BlockActions,
97606
+ {
97607
+ actions,
97608
+ actionsSlot,
97609
+ actionsClassName
97610
+ }
97611
+ )
97612
+ ]
97613
+ }
97614
+ );
97607
97615
  }, [
97608
97616
  futureSlot,
97609
97617
  futureHeading,
package/dist/registry.js CHANGED
@@ -49291,6 +49291,25 @@ function CaseStudyStatsMetrics({
49291
49291
  }
49292
49292
  );
49293
49293
  }
49294
+ function CardArrowIcon({ className }) {
49295
+ return /* @__PURE__ */ jsxs(
49296
+ "svg",
49297
+ {
49298
+ "aria-hidden": "true",
49299
+ viewBox: "0 0 24 24",
49300
+ fill: "none",
49301
+ stroke: "currentColor",
49302
+ strokeWidth: 2,
49303
+ strokeLinecap: "round",
49304
+ strokeLinejoin: "round",
49305
+ className,
49306
+ children: [
49307
+ /* @__PURE__ */ jsx("path", { d: "M5 12h14" }),
49308
+ /* @__PURE__ */ jsx("path", { d: "m12 5 7 7-7 7" })
49309
+ ]
49310
+ }
49311
+ );
49312
+ }
49294
49313
  function HeroOverlayCtaGrid({
49295
49314
  sectionId = "hero-overlay-cta-grid",
49296
49315
  badgeText,
@@ -49350,9 +49369,7 @@ function HeroOverlayCtaGrid({
49350
49369
  card.href ? /* @__PURE__ */ jsx(
49351
49370
  DynamicIcon,
49352
49371
  {
49353
- name: "lucide/arrow-right",
49354
- size: 18,
49355
- className: cn("ml-auto flex-none text-card-foreground")
49372
+ name: /* @__PURE__ */ jsx(CardArrowIcon, { className: "ml-auto size-[18px] flex-none text-card-foreground" })
49356
49373
  }
49357
49374
  ) : null
49358
49375
  ]
@@ -49398,7 +49415,7 @@ function HeroOverlayCtaGrid({
49398
49415
  initial: { opacity: 0, y: 28 },
49399
49416
  animate: { opacity: 1, y: 0 },
49400
49417
  transition: { duration: 0.6, ease: "easeOut" },
49401
- className: "mx-auto max-w-3xl text-center text-balance text-white px-0",
49418
+ className: "mx-auto max-w-3xl text-center text-balance text-white px-0 flex flex-col items-center justify-center",
49402
49419
  children: [
49403
49420
  renderBadge,
49404
49421
  heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
@@ -49410,16 +49427,7 @@ function HeroOverlayCtaGrid({
49410
49427
  ),
49411
49428
  children: heading
49412
49429
  }
49413
- ) : /* @__PURE__ */ jsx(
49414
- "h1",
49415
- {
49416
- className: cn(
49417
- "mt-6 text-4xl font-bold leading-tight md:text-5xl lg:text-6xl text-balance",
49418
- headingClassName
49419
- ),
49420
- children: heading
49421
- }
49422
- )),
49430
+ ) : heading),
49423
49431
  description && (typeof description === "string" ? /* @__PURE__ */ jsx(
49424
49432
  "p",
49425
49433
  {
@@ -49429,16 +49437,7 @@ function HeroOverlayCtaGrid({
49429
49437
  ),
49430
49438
  children: description
49431
49439
  }
49432
- ) : /* @__PURE__ */ jsx(
49433
- "div",
49434
- {
49435
- className: cn(
49436
- "mt-5 text-lg md:text-xl text-balance",
49437
- descriptionClassName
49438
- ),
49439
- children: description
49440
- }
49441
- )),
49440
+ ) : description),
49442
49441
  /* @__PURE__ */ jsx(
49443
49442
  BlockActions,
49444
49443
  {
@@ -97502,8 +97501,8 @@ function StatsGrowthTimeline({
97502
97501
  milestone.metric && /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-4 rounded-lg border bg-background p-4 shadow-sm", children: [
97503
97502
  renderMilestoneIcon(milestone),
97504
97503
  /* @__PURE__ */ jsxs("div", { children: [
97505
- /* @__PURE__ */ jsx("div", { className: "text-2xl font-bold text-primary", children: milestone.metric.value }),
97506
- milestone.metric.label && /* @__PURE__ */ jsx("div", { className: "text-sm text-muted-foreground", children: milestone.metric.label })
97504
+ /* @__PURE__ */ jsx("div", { className: "text-2xl font-semibold", children: milestone.metric.value }),
97505
+ milestone.metric.label && /* @__PURE__ */ jsx("div", { className: "text-sm opacity-70", children: milestone.metric.label })
97507
97506
  ] })
97508
97507
  ] })
97509
97508
  ] }),
@@ -97535,8 +97534,8 @@ function StatsGrowthTimeline({
97535
97534
  children: [
97536
97535
  currentStatsHeading && (typeof currentStatsHeading === "string" ? /* @__PURE__ */ jsx("h3", { className: "mb-12 text-center text-4xl lg:text-5xl font-bold", children: currentStatsHeading }) : currentStatsHeading),
97537
97536
  /* @__PURE__ */ jsx("div", { className: "grid grid-cols-2 gap-8 md:grid-cols-4", children: currentStats.map((stat, index) => /* @__PURE__ */ jsxs("div", { className: cn("text-center", stat.className), children: [
97538
- /* @__PURE__ */ jsx("div", { className: "text-2xl font-semibold text-primary md:text-3xl xl:text-4xl", children: stat.value }),
97539
- stat.label && /* @__PURE__ */ jsx("p", { className: "font-medium text-balance text-sm", children: stat.label })
97537
+ /* @__PURE__ */ jsx("div", { className: "text-2xl font-semibold md:text-3xl xl:text-4xl", children: stat.value }),
97538
+ stat.label && /* @__PURE__ */ jsx("p", { className: "font-medium text-balance text-sm opacity-70", children: stat.label })
97540
97539
  ] }, index)) })
97541
97540
  ]
97542
97541
  }
@@ -97552,18 +97551,27 @@ function StatsGrowthTimeline({
97552
97551
  if (futureSlot) return futureSlot;
97553
97552
  if (!futureHeading && !futureDescription && (!actions || actions.length === 0))
97554
97553
  return null;
97555
- return /* @__PURE__ */ jsxs("div", { className: cn("mt-16 text-center", futureClassName), children: [
97556
- futureHeading && (typeof futureHeading === "string" ? /* @__PURE__ */ jsx("h3", { className: "mb-4 text-2xl font-bold", children: futureHeading }) : /* @__PURE__ */ jsx("div", { className: "mb-4", children: futureHeading })),
97557
- futureDescription && (typeof futureDescription === "string" ? /* @__PURE__ */ jsx("p", { className: "mx-auto mb-8 max-w-full md:max-w-lg text-balance", children: futureDescription }) : futureDescription),
97558
- /* @__PURE__ */ jsx(
97559
- BlockActions,
97560
- {
97561
- actions,
97562
- actionsSlot,
97563
- actionsClassName
97564
- }
97565
- )
97566
- ] });
97554
+ return /* @__PURE__ */ jsxs(
97555
+ "div",
97556
+ {
97557
+ className: cn(
97558
+ "mt-16 text-center flex flex-col items-center justify-center",
97559
+ futureClassName
97560
+ ),
97561
+ children: [
97562
+ futureHeading && (typeof futureHeading === "string" ? /* @__PURE__ */ jsx("h3", { className: "mb-4 text-2xl font-bold", children: futureHeading }) : /* @__PURE__ */ jsx("div", { className: "mb-4", children: futureHeading })),
97563
+ futureDescription && (typeof futureDescription === "string" ? /* @__PURE__ */ jsx("p", { className: "mx-auto mb-8 max-w-full md:max-w-lg text-balance", children: futureDescription }) : futureDescription),
97564
+ /* @__PURE__ */ jsx(
97565
+ BlockActions,
97566
+ {
97567
+ actions,
97568
+ actionsSlot,
97569
+ actionsClassName
97570
+ }
97571
+ )
97572
+ ]
97573
+ }
97574
+ );
97567
97575
  }, [
97568
97576
  futureSlot,
97569
97577
  futureHeading,
@@ -77,6 +77,6 @@ interface SocialLinkIconProps extends Omit<PressableProps, "children">, SocialLi
77
77
  * />
78
78
  * ```
79
79
  */
80
- declare const SocialLinkIcon: React.ForwardRefExoticComponent<SocialLinkIconProps & React.RefAttributes<HTMLAnchorElement | HTMLButtonElement | HTMLSpanElement>>;
80
+ declare const SocialLinkIcon: React.ForwardRefExoticComponent<SocialLinkIconProps & React.RefAttributes<HTMLButtonElement | HTMLAnchorElement | HTMLSpanElement>>;
81
81
 
82
82
  export { SocialLinkIcon, type SocialLinkIconDynamicIconProps, type SocialLinkIconProps };
@@ -77,6 +77,6 @@ interface SocialLinkIconProps extends Omit<PressableProps, "children">, SocialLi
77
77
  * />
78
78
  * ```
79
79
  */
80
- declare const SocialLinkIcon: React.ForwardRefExoticComponent<SocialLinkIconProps & React.RefAttributes<HTMLAnchorElement | HTMLButtonElement | HTMLSpanElement>>;
80
+ declare const SocialLinkIcon: React.ForwardRefExoticComponent<SocialLinkIconProps & React.RefAttributes<HTMLButtonElement | HTMLAnchorElement | HTMLSpanElement>>;
81
81
 
82
82
  export { SocialLinkIcon, type SocialLinkIconDynamicIconProps, type SocialLinkIconProps };
@@ -607,8 +607,8 @@ function StatsGrowthTimeline({
607
607
  milestone.metric && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-4 rounded-lg border bg-background p-4 shadow-sm", children: [
608
608
  renderMilestoneIcon(milestone),
609
609
  /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
610
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-2xl font-bold text-primary", children: milestone.metric.value }),
611
- milestone.metric.label && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm text-muted-foreground", children: milestone.metric.label })
610
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-2xl font-semibold", children: milestone.metric.value }),
611
+ milestone.metric.label && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm opacity-70", children: milestone.metric.label })
612
612
  ] })
613
613
  ] })
614
614
  ] }),
@@ -640,8 +640,8 @@ function StatsGrowthTimeline({
640
640
  children: [
641
641
  currentStatsHeading && (typeof currentStatsHeading === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mb-12 text-center text-4xl lg:text-5xl font-bold", children: currentStatsHeading }) : currentStatsHeading),
642
642
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-2 gap-8 md:grid-cols-4", children: currentStats.map((stat, index) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("text-center", stat.className), children: [
643
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-2xl font-semibold text-primary md:text-3xl xl:text-4xl", children: stat.value }),
644
- stat.label && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "font-medium text-balance text-sm", children: stat.label })
643
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-2xl font-semibold md:text-3xl xl:text-4xl", children: stat.value }),
644
+ stat.label && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "font-medium text-balance text-sm opacity-70", children: stat.label })
645
645
  ] }, index)) })
646
646
  ]
647
647
  }
@@ -657,18 +657,27 @@ function StatsGrowthTimeline({
657
657
  if (futureSlot) return futureSlot;
658
658
  if (!futureHeading && !futureDescription && (!actions || actions.length === 0))
659
659
  return null;
660
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("mt-16 text-center", futureClassName), children: [
661
- futureHeading && (typeof futureHeading === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mb-4 text-2xl font-bold", children: futureHeading }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-4", children: futureHeading })),
662
- futureDescription && (typeof futureDescription === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mx-auto mb-8 max-w-full md:max-w-lg text-balance", children: futureDescription }) : futureDescription),
663
- /* @__PURE__ */ jsxRuntime.jsx(
664
- BlockActions,
665
- {
666
- actions,
667
- actionsSlot,
668
- actionsClassName
669
- }
670
- )
671
- ] });
660
+ return /* @__PURE__ */ jsxRuntime.jsxs(
661
+ "div",
662
+ {
663
+ className: cn(
664
+ "mt-16 text-center flex flex-col items-center justify-center",
665
+ futureClassName
666
+ ),
667
+ children: [
668
+ futureHeading && (typeof futureHeading === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mb-4 text-2xl font-bold", children: futureHeading }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-4", children: futureHeading })),
669
+ futureDescription && (typeof futureDescription === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mx-auto mb-8 max-w-full md:max-w-lg text-balance", children: futureDescription }) : futureDescription),
670
+ /* @__PURE__ */ jsxRuntime.jsx(
671
+ BlockActions,
672
+ {
673
+ actions,
674
+ actionsSlot,
675
+ actionsClassName
676
+ }
677
+ )
678
+ ]
679
+ }
680
+ );
672
681
  }, [
673
682
  futureSlot,
674
683
  futureHeading,
@@ -586,8 +586,8 @@ function StatsGrowthTimeline({
586
586
  milestone.metric && /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-4 rounded-lg border bg-background p-4 shadow-sm", children: [
587
587
  renderMilestoneIcon(milestone),
588
588
  /* @__PURE__ */ jsxs("div", { children: [
589
- /* @__PURE__ */ jsx("div", { className: "text-2xl font-bold text-primary", children: milestone.metric.value }),
590
- milestone.metric.label && /* @__PURE__ */ jsx("div", { className: "text-sm text-muted-foreground", children: milestone.metric.label })
589
+ /* @__PURE__ */ jsx("div", { className: "text-2xl font-semibold", children: milestone.metric.value }),
590
+ milestone.metric.label && /* @__PURE__ */ jsx("div", { className: "text-sm opacity-70", children: milestone.metric.label })
591
591
  ] })
592
592
  ] })
593
593
  ] }),
@@ -619,8 +619,8 @@ function StatsGrowthTimeline({
619
619
  children: [
620
620
  currentStatsHeading && (typeof currentStatsHeading === "string" ? /* @__PURE__ */ jsx("h3", { className: "mb-12 text-center text-4xl lg:text-5xl font-bold", children: currentStatsHeading }) : currentStatsHeading),
621
621
  /* @__PURE__ */ jsx("div", { className: "grid grid-cols-2 gap-8 md:grid-cols-4", children: currentStats.map((stat, index) => /* @__PURE__ */ jsxs("div", { className: cn("text-center", stat.className), children: [
622
- /* @__PURE__ */ jsx("div", { className: "text-2xl font-semibold text-primary md:text-3xl xl:text-4xl", children: stat.value }),
623
- stat.label && /* @__PURE__ */ jsx("p", { className: "font-medium text-balance text-sm", children: stat.label })
622
+ /* @__PURE__ */ jsx("div", { className: "text-2xl font-semibold md:text-3xl xl:text-4xl", children: stat.value }),
623
+ stat.label && /* @__PURE__ */ jsx("p", { className: "font-medium text-balance text-sm opacity-70", children: stat.label })
624
624
  ] }, index)) })
625
625
  ]
626
626
  }
@@ -636,18 +636,27 @@ function StatsGrowthTimeline({
636
636
  if (futureSlot) return futureSlot;
637
637
  if (!futureHeading && !futureDescription && (!actions || actions.length === 0))
638
638
  return null;
639
- return /* @__PURE__ */ jsxs("div", { className: cn("mt-16 text-center", futureClassName), children: [
640
- futureHeading && (typeof futureHeading === "string" ? /* @__PURE__ */ jsx("h3", { className: "mb-4 text-2xl font-bold", children: futureHeading }) : /* @__PURE__ */ jsx("div", { className: "mb-4", children: futureHeading })),
641
- futureDescription && (typeof futureDescription === "string" ? /* @__PURE__ */ jsx("p", { className: "mx-auto mb-8 max-w-full md:max-w-lg text-balance", children: futureDescription }) : futureDescription),
642
- /* @__PURE__ */ jsx(
643
- BlockActions,
644
- {
645
- actions,
646
- actionsSlot,
647
- actionsClassName
648
- }
649
- )
650
- ] });
639
+ return /* @__PURE__ */ jsxs(
640
+ "div",
641
+ {
642
+ className: cn(
643
+ "mt-16 text-center flex flex-col items-center justify-center",
644
+ futureClassName
645
+ ),
646
+ children: [
647
+ futureHeading && (typeof futureHeading === "string" ? /* @__PURE__ */ jsx("h3", { className: "mb-4 text-2xl font-bold", children: futureHeading }) : /* @__PURE__ */ jsx("div", { className: "mb-4", children: futureHeading })),
648
+ futureDescription && (typeof futureDescription === "string" ? /* @__PURE__ */ jsx("p", { className: "mx-auto mb-8 max-w-full md:max-w-lg text-balance", children: futureDescription }) : futureDescription),
649
+ /* @__PURE__ */ jsx(
650
+ BlockActions,
651
+ {
652
+ actions,
653
+ actionsSlot,
654
+ actionsClassName
655
+ }
656
+ )
657
+ ]
658
+ }
659
+ );
651
660
  }, [
652
661
  futureSlot,
653
662
  futureHeading,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opensite/ui",
3
- "version": "3.4.2",
3
+ "version": "3.4.3",
4
4
  "description": "Foundational UI component library for OpenSite Semantic Site Builder with tree-shakable exports and abstract styling",
5
5
  "keywords": [
6
6
  "react",