@opensite/ui 3.3.7 → 3.3.9

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 (173) hide show
  1. package/dist/about-culture-tabs.cjs +14 -3
  2. package/dist/about-culture-tabs.js +14 -3
  3. package/dist/about-developer-profile.cjs +14 -3
  4. package/dist/about-developer-profile.js +14 -3
  5. package/dist/about-developer-story.cjs +13 -2
  6. package/dist/about-developer-story.js +14 -3
  7. package/dist/about-expandable-values.cjs +14 -3
  8. package/dist/about-expandable-values.js +14 -3
  9. package/dist/about-mission-dual-image.cjs +13 -2
  10. package/dist/about-mission-dual-image.js +14 -3
  11. package/dist/about-network-spotlight.cjs +13 -2
  12. package/dist/about-network-spotlight.js +14 -3
  13. package/dist/about-story-expertise.cjs +14 -3
  14. package/dist/about-story-expertise.js +14 -3
  15. package/dist/about-streamline-team.cjs +14 -3
  16. package/dist/about-streamline-team.js +14 -3
  17. package/dist/carousel-feature-badge.cjs +13 -2
  18. package/dist/carousel-feature-badge.js +14 -3
  19. package/dist/carousel-image-hero.cjs +13 -2
  20. package/dist/carousel-image-hero.js +14 -3
  21. package/dist/carousel-portfolio-hero.cjs +13 -2
  22. package/dist/carousel-portfolio-hero.js +14 -3
  23. package/dist/community-initiatives.cjs +13 -2
  24. package/dist/community-initiatives.js +14 -3
  25. package/dist/components.cjs +13 -2
  26. package/dist/components.js +13 -2
  27. package/dist/cta-feature-checklist.cjs +13 -2
  28. package/dist/cta-feature-checklist.js +14 -3
  29. package/dist/cta-video-background-hero.cjs +9 -0
  30. package/dist/cta-video-background-hero.js +9 -0
  31. package/dist/faq-numbered-grid.cjs +13 -2
  32. package/dist/faq-numbered-grid.js +14 -3
  33. package/dist/hero-ad-campaign-expert.cjs +13 -2
  34. package/dist/hero-ad-campaign-expert.js +14 -3
  35. package/dist/hero-adaptable-product-grid.cjs +13 -2
  36. package/dist/hero-adaptable-product-grid.js +14 -3
  37. package/dist/hero-agency-animated-images.cjs +13 -2
  38. package/dist/hero-agency-animated-images.js +14 -3
  39. package/dist/hero-ai-powered-carousel.cjs +13 -2
  40. package/dist/hero-ai-powered-carousel.js +14 -3
  41. package/dist/hero-announcement-badge.cjs +13 -2
  42. package/dist/hero-announcement-badge.js +14 -3
  43. package/dist/hero-badge-image-split.cjs +13 -2
  44. package/dist/hero-badge-image-split.js +14 -3
  45. package/dist/hero-badge-shadow-overlay.cjs +13 -2
  46. package/dist/hero-badge-shadow-overlay.js +14 -3
  47. package/dist/hero-business-carousel-dots.cjs +13 -2
  48. package/dist/hero-business-carousel-dots.js +14 -3
  49. package/dist/hero-business-operations-mosaic.cjs +13 -2
  50. package/dist/hero-business-operations-mosaic.js +14 -3
  51. package/dist/hero-centered-gradient-cta.cjs +13 -2
  52. package/dist/hero-centered-gradient-cta.js +14 -3
  53. package/dist/hero-community-survey-cta.cjs +13 -2
  54. package/dist/hero-community-survey-cta.js +14 -3
  55. package/dist/hero-conversation-intelligence.cjs +13 -2
  56. package/dist/hero-conversation-intelligence.js +14 -3
  57. package/dist/hero-conversion-video-play.cjs +9 -0
  58. package/dist/hero-conversion-video-play.js +9 -0
  59. package/dist/hero-creative-studio-stacked.cjs +22 -2
  60. package/dist/hero-creative-studio-stacked.js +23 -3
  61. package/dist/hero-crm-streamlined.cjs +13 -2
  62. package/dist/hero-crm-streamlined.js +14 -3
  63. package/dist/hero-customer-support-layered.cjs +13 -2
  64. package/dist/hero-customer-support-layered.js +14 -3
  65. package/dist/hero-design-carousel-portfolio.cjs +13 -2
  66. package/dist/hero-design-carousel-portfolio.js +14 -3
  67. package/dist/hero-design-showcase-logos.cjs +13 -2
  68. package/dist/hero-design-showcase-logos.js +14 -3
  69. package/dist/hero-design-system-3d.cjs +13 -2
  70. package/dist/hero-design-system-3d.js +14 -3
  71. package/dist/hero-developer-tools-code.cjs +13 -2
  72. package/dist/hero-developer-tools-code.js +14 -3
  73. package/dist/hero-digital-agency-fullscreen.cjs +13 -2
  74. package/dist/hero-digital-agency-fullscreen.js +14 -3
  75. package/dist/hero-ecommerce-product-showcase.cjs +14 -3
  76. package/dist/hero-ecommerce-product-showcase.js +14 -3
  77. package/dist/hero-enterprise-security.cjs +13 -2
  78. package/dist/hero-enterprise-security.js +14 -3
  79. package/dist/hero-event-registration.cjs +13 -2
  80. package/dist/hero-event-registration.js +14 -3
  81. package/dist/hero-feature-cards-grid.cjs +13 -2
  82. package/dist/hero-feature-cards-grid.js +14 -3
  83. package/dist/hero-floating-images.cjs +18 -10
  84. package/dist/hero-floating-images.js +19 -11
  85. package/dist/hero-fullscreen-background-image.cjs +13 -2
  86. package/dist/hero-fullscreen-background-image.js +14 -3
  87. package/dist/hero-gradient-avatars-rating.cjs +13 -2
  88. package/dist/hero-gradient-avatars-rating.js +14 -3
  89. package/dist/hero-gradient-client-focused.cjs +13 -2
  90. package/dist/hero-gradient-client-focused.js +14 -3
  91. package/dist/hero-grid-pattern-solutions.cjs +13 -2
  92. package/dist/hero-grid-pattern-solutions.js +14 -3
  93. package/dist/hero-hiring-animated-text.cjs +13 -2
  94. package/dist/hero-hiring-animated-text.js +14 -3
  95. package/dist/hero-image-left-content.cjs +13 -2
  96. package/dist/hero-image-left-content.js +14 -3
  97. package/dist/hero-image-slider.cjs +13 -2
  98. package/dist/hero-image-slider.js +14 -3
  99. package/dist/hero-innovation-image-grid.cjs +13 -2
  100. package/dist/hero-innovation-image-grid.js +14 -3
  101. package/dist/hero-mental-health-team.cjs +13 -2
  102. package/dist/hero-mental-health-team.js +14 -3
  103. package/dist/hero-mentorship-video-split.cjs +9 -0
  104. package/dist/hero-mentorship-video-split.js +9 -0
  105. package/dist/hero-minimal-centered-dark.cjs +14 -3
  106. package/dist/hero-minimal-centered-dark.js +14 -3
  107. package/dist/hero-overlay-cta-grid.cjs +13 -2
  108. package/dist/hero-overlay-cta-grid.js +14 -3
  109. package/dist/hero-presentation-platform-video.cjs +13 -2
  110. package/dist/hero-presentation-platform-video.js +14 -3
  111. package/dist/hero-product-showcase-floating.cjs +14 -3
  112. package/dist/hero-product-showcase-floating.js +14 -3
  113. package/dist/hero-shared-inbox-layered.cjs +13 -2
  114. package/dist/hero-shared-inbox-layered.js +14 -3
  115. package/dist/hero-simple-centered-image.cjs +13 -2
  116. package/dist/hero-simple-centered-image.js +14 -3
  117. package/dist/hero-software-growth-video-dialog.cjs +22 -2
  118. package/dist/hero-software-growth-video-dialog.js +23 -3
  119. package/dist/hero-spiral-pattern-cards.cjs +14 -3
  120. package/dist/hero-spiral-pattern-cards.js +14 -3
  121. package/dist/hero-split-geometric-shapes.cjs +13 -2
  122. package/dist/hero-split-geometric-shapes.js +14 -3
  123. package/dist/hero-startup-launch-cta.cjs +14 -3
  124. package/dist/hero-startup-launch-cta.js +14 -3
  125. package/dist/hero-stats-social-proof.cjs +14 -3
  126. package/dist/hero-stats-social-proof.js +14 -3
  127. package/dist/hero-task-timer-animated.cjs +13 -2
  128. package/dist/hero-task-timer-animated.js +14 -3
  129. package/dist/hero-testimonial-image-grid.cjs +13 -2
  130. package/dist/hero-testimonial-image-grid.js +14 -3
  131. package/dist/hero-therapy-testimonial-grid.cjs +13 -2
  132. package/dist/hero-therapy-testimonial-grid.js +14 -3
  133. package/dist/hero-ui-library-showcase.cjs +13 -2
  134. package/dist/hero-ui-library-showcase.js +14 -3
  135. package/dist/hero-video-background-dark.cjs +14 -3
  136. package/dist/hero-video-background-dark.js +14 -3
  137. package/dist/hero-video-dialog-gradient.cjs +22 -2
  138. package/dist/hero-video-dialog-gradient.js +23 -3
  139. package/dist/hero-video-overlay-stars.cjs +13 -2
  140. package/dist/hero-video-overlay-stars.js +14 -3
  141. package/dist/hero-welcome-asymmetric-images.cjs +13 -2
  142. package/dist/hero-welcome-asymmetric-images.js +14 -3
  143. package/dist/index.cjs +13 -2
  144. package/dist/index.js +13 -2
  145. package/dist/link-page-bento-layout.cjs +2 -2
  146. package/dist/link-page-bento-layout.js +2 -2
  147. package/dist/link-page-grid-cards.cjs +2 -2
  148. package/dist/link-page-grid-cards.js +2 -2
  149. package/dist/link-page-minimal-profile.cjs +2 -2
  150. package/dist/link-page-minimal-profile.js +2 -2
  151. package/dist/link-page-newsletter-social.cjs +2 -2
  152. package/dist/link-page-newsletter-social.js +2 -2
  153. package/dist/link-tree-block.cjs +2 -2
  154. package/dist/link-tree-block.js +2 -2
  155. package/dist/process-sticky-steps.cjs +29 -9
  156. package/dist/process-sticky-steps.js +30 -10
  157. package/dist/registry.cjs +99 -28
  158. package/dist/registry.js +99 -28
  159. package/dist/stats-growth-timeline.cjs +13 -2
  160. package/dist/stats-growth-timeline.js +14 -3
  161. package/dist/testimonials-grid-add-review.cjs +13 -2
  162. package/dist/testimonials-grid-add-review.js +14 -3
  163. package/dist/testimonials-masonry-grid.cjs +13 -2
  164. package/dist/testimonials-masonry-grid.js +14 -3
  165. package/dist/testimonials-simple-grid.cjs +13 -2
  166. package/dist/testimonials-simple-grid.js +14 -3
  167. package/dist/testimonials-stats-header.cjs +13 -2
  168. package/dist/testimonials-stats-header.js +14 -3
  169. package/dist/testimonials-twitter-cards.cjs +13 -2
  170. package/dist/testimonials-twitter-cards.js +14 -3
  171. package/dist/testimonials-wall-compact.cjs +13 -2
  172. package/dist/testimonials-wall-compact.js +14 -3
  173. package/package.json +2 -2
@@ -500,16 +500,27 @@ function ActionComponent({ action }) {
500
500
  children,
501
501
  href,
502
502
  onClick,
503
+ asButton,
504
+ variant,
505
+ size,
503
506
  className: actionClassName,
504
507
  ...pressableProps
505
508
  } = action;
509
+ const shouldStyleAsButton = asButton ?? true;
510
+ const resolvedVariant = shouldStyleAsButton ? variant ?? "default" : void 0;
511
+ const resolvedSize = shouldStyleAsButton ? size ?? "default" : void 0;
506
512
  return /* @__PURE__ */ jsxRuntime.jsx(
507
513
  pressable.Pressable,
508
514
  {
509
515
  href,
510
516
  onClick,
511
- asButton: action.asButton ?? true,
512
- className: actionClassName,
517
+ asButton: shouldStyleAsButton,
518
+ variant: resolvedVariant,
519
+ size: resolvedSize,
520
+ className: cn(
521
+ shouldStyleAsButton && pressable.buttonVariants({ variant: resolvedVariant, size: resolvedSize }),
522
+ actionClassName
523
+ ),
513
524
  ...pressableProps,
514
525
  children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
515
526
  icon,
@@ -7,7 +7,7 @@ import { Slot } from '@radix-ui/react-slot';
7
7
  import { cva } from 'class-variance-authority';
8
8
  import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
9
9
  import { Icon } from '@page-speed/icon';
10
- import { Pressable } from '@page-speed/pressable';
10
+ import { Pressable, buttonVariants } from '@page-speed/pressable';
11
11
 
12
12
  // components/blocks/stats/stats-growth-timeline.tsx
13
13
  function cn(...inputs) {
@@ -479,16 +479,27 @@ function ActionComponent({ action }) {
479
479
  children,
480
480
  href,
481
481
  onClick,
482
+ asButton,
483
+ variant,
484
+ size,
482
485
  className: actionClassName,
483
486
  ...pressableProps
484
487
  } = action;
488
+ const shouldStyleAsButton = asButton ?? true;
489
+ const resolvedVariant = shouldStyleAsButton ? variant ?? "default" : void 0;
490
+ const resolvedSize = shouldStyleAsButton ? size ?? "default" : void 0;
485
491
  return /* @__PURE__ */ jsx(
486
492
  Pressable,
487
493
  {
488
494
  href,
489
495
  onClick,
490
- asButton: action.asButton ?? true,
491
- className: actionClassName,
496
+ asButton: shouldStyleAsButton,
497
+ variant: resolvedVariant,
498
+ size: resolvedSize,
499
+ className: cn(
500
+ shouldStyleAsButton && buttonVariants({ variant: resolvedVariant, size: resolvedSize }),
501
+ actionClassName
502
+ ),
492
503
  ...pressableProps,
493
504
  children: children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
494
505
  icon,
@@ -553,16 +553,27 @@ function ActionComponent({ action }) {
553
553
  children,
554
554
  href,
555
555
  onClick,
556
+ asButton,
557
+ variant,
558
+ size,
556
559
  className: actionClassName,
557
560
  ...pressableProps
558
561
  } = action;
562
+ const shouldStyleAsButton = asButton ?? true;
563
+ const resolvedVariant = shouldStyleAsButton ? variant ?? "default" : void 0;
564
+ const resolvedSize = shouldStyleAsButton ? size ?? "default" : void 0;
559
565
  return /* @__PURE__ */ jsxRuntime.jsx(
560
566
  pressable.Pressable,
561
567
  {
562
568
  href,
563
569
  onClick,
564
- asButton: action.asButton ?? true,
565
- className: actionClassName,
570
+ asButton: shouldStyleAsButton,
571
+ variant: resolvedVariant,
572
+ size: resolvedSize,
573
+ className: cn(
574
+ shouldStyleAsButton && pressable.buttonVariants({ variant: resolvedVariant, size: resolvedSize }),
575
+ actionClassName
576
+ ),
566
577
  ...pressableProps,
567
578
  children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
568
579
  icon,
@@ -6,7 +6,7 @@ import { twMerge } from 'tailwind-merge';
6
6
  import { Icon } from '@page-speed/icon';
7
7
  import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
8
8
  import * as AvatarPrimitive from '@radix-ui/react-avatar';
9
- import { Pressable } from '@page-speed/pressable';
9
+ import { Pressable, buttonVariants } from '@page-speed/pressable';
10
10
 
11
11
  // components/blocks/testimonials/testimonials-grid-add-review.tsx
12
12
  function cn(...inputs) {
@@ -531,16 +531,27 @@ function ActionComponent({ action }) {
531
531
  children,
532
532
  href,
533
533
  onClick,
534
+ asButton,
535
+ variant,
536
+ size,
534
537
  className: actionClassName,
535
538
  ...pressableProps
536
539
  } = action;
540
+ const shouldStyleAsButton = asButton ?? true;
541
+ const resolvedVariant = shouldStyleAsButton ? variant ?? "default" : void 0;
542
+ const resolvedSize = shouldStyleAsButton ? size ?? "default" : void 0;
537
543
  return /* @__PURE__ */ jsx(
538
544
  Pressable,
539
545
  {
540
546
  href,
541
547
  onClick,
542
- asButton: action.asButton ?? true,
543
- className: actionClassName,
548
+ asButton: shouldStyleAsButton,
549
+ variant: resolvedVariant,
550
+ size: resolvedSize,
551
+ className: cn(
552
+ shouldStyleAsButton && buttonVariants({ variant: resolvedVariant, size: resolvedSize }),
553
+ actionClassName
554
+ ),
544
555
  ...pressableProps,
545
556
  children: children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
546
557
  icon,
@@ -501,16 +501,27 @@ function ActionComponent({ action }) {
501
501
  children,
502
502
  href,
503
503
  onClick,
504
+ asButton,
505
+ variant,
506
+ size,
504
507
  className: actionClassName,
505
508
  ...pressableProps
506
509
  } = action;
510
+ const shouldStyleAsButton = asButton ?? true;
511
+ const resolvedVariant = shouldStyleAsButton ? variant ?? "default" : void 0;
512
+ const resolvedSize = shouldStyleAsButton ? size ?? "default" : void 0;
507
513
  return /* @__PURE__ */ jsxRuntime.jsx(
508
514
  pressable.Pressable,
509
515
  {
510
516
  href,
511
517
  onClick,
512
- asButton: action.asButton ?? true,
513
- className: actionClassName,
518
+ asButton: shouldStyleAsButton,
519
+ variant: resolvedVariant,
520
+ size: resolvedSize,
521
+ className: cn(
522
+ shouldStyleAsButton && pressable.buttonVariants({ variant: resolvedVariant, size: resolvedSize }),
523
+ actionClassName
524
+ ),
514
525
  ...pressableProps,
515
526
  children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
516
527
  icon,
@@ -4,7 +4,7 @@ import { clsx } from 'clsx';
4
4
  import { twMerge } from 'tailwind-merge';
5
5
  import * as AvatarPrimitive from '@radix-ui/react-avatar';
6
6
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
7
- import { Pressable } from '@page-speed/pressable';
7
+ import { Pressable, buttonVariants } from '@page-speed/pressable';
8
8
 
9
9
  // components/blocks/testimonials/testimonials-masonry-grid.tsx
10
10
  function cn(...inputs) {
@@ -476,16 +476,27 @@ function ActionComponent({ action }) {
476
476
  children,
477
477
  href,
478
478
  onClick,
479
+ asButton,
480
+ variant,
481
+ size,
479
482
  className: actionClassName,
480
483
  ...pressableProps
481
484
  } = action;
485
+ const shouldStyleAsButton = asButton ?? true;
486
+ const resolvedVariant = shouldStyleAsButton ? variant ?? "default" : void 0;
487
+ const resolvedSize = shouldStyleAsButton ? size ?? "default" : void 0;
482
488
  return /* @__PURE__ */ jsx(
483
489
  Pressable,
484
490
  {
485
491
  href,
486
492
  onClick,
487
- asButton: action.asButton ?? true,
488
- className: actionClassName,
493
+ asButton: shouldStyleAsButton,
494
+ variant: resolvedVariant,
495
+ size: resolvedSize,
496
+ className: cn(
497
+ shouldStyleAsButton && buttonVariants({ variant: resolvedVariant, size: resolvedSize }),
498
+ actionClassName
499
+ ),
489
500
  ...pressableProps,
490
501
  children: children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
491
502
  icon,
@@ -511,16 +511,27 @@ function ActionComponent({ action }) {
511
511
  children,
512
512
  href,
513
513
  onClick,
514
+ asButton,
515
+ variant,
516
+ size,
514
517
  className: actionClassName,
515
518
  ...pressableProps
516
519
  } = action;
520
+ const shouldStyleAsButton = asButton ?? true;
521
+ const resolvedVariant = shouldStyleAsButton ? variant ?? "default" : void 0;
522
+ const resolvedSize = shouldStyleAsButton ? size ?? "default" : void 0;
517
523
  return /* @__PURE__ */ jsxRuntime.jsx(
518
524
  pressable.Pressable,
519
525
  {
520
526
  href,
521
527
  onClick,
522
- asButton: action.asButton ?? true,
523
- className: actionClassName,
528
+ asButton: shouldStyleAsButton,
529
+ variant: resolvedVariant,
530
+ size: resolvedSize,
531
+ className: cn(
532
+ shouldStyleAsButton && pressable.buttonVariants({ variant: resolvedVariant, size: resolvedSize }),
533
+ actionClassName
534
+ ),
524
535
  ...pressableProps,
525
536
  children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
526
537
  icon,
@@ -4,7 +4,7 @@ import { clsx } from 'clsx';
4
4
  import { twMerge } from 'tailwind-merge';
5
5
  import * as AvatarPrimitive from '@radix-ui/react-avatar';
6
6
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
7
- import { Pressable } from '@page-speed/pressable';
7
+ import { Pressable, buttonVariants } from '@page-speed/pressable';
8
8
 
9
9
  // components/blocks/testimonials/testimonials-simple-grid.tsx
10
10
  function cn(...inputs) {
@@ -486,16 +486,27 @@ function ActionComponent({ action }) {
486
486
  children,
487
487
  href,
488
488
  onClick,
489
+ asButton,
490
+ variant,
491
+ size,
489
492
  className: actionClassName,
490
493
  ...pressableProps
491
494
  } = action;
495
+ const shouldStyleAsButton = asButton ?? true;
496
+ const resolvedVariant = shouldStyleAsButton ? variant ?? "default" : void 0;
497
+ const resolvedSize = shouldStyleAsButton ? size ?? "default" : void 0;
492
498
  return /* @__PURE__ */ jsx(
493
499
  Pressable,
494
500
  {
495
501
  href,
496
502
  onClick,
497
- asButton: action.asButton ?? true,
498
- className: actionClassName,
503
+ asButton: shouldStyleAsButton,
504
+ variant: resolvedVariant,
505
+ size: resolvedSize,
506
+ className: cn(
507
+ shouldStyleAsButton && buttonVariants({ variant: resolvedVariant, size: resolvedSize }),
508
+ actionClassName
509
+ ),
499
510
  ...pressableProps,
500
511
  children: children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
501
512
  icon,
@@ -553,16 +553,27 @@ function ActionComponent({ action }) {
553
553
  children,
554
554
  href,
555
555
  onClick,
556
+ asButton,
557
+ variant,
558
+ size,
556
559
  className: actionClassName,
557
560
  ...pressableProps
558
561
  } = action;
562
+ const shouldStyleAsButton = asButton ?? true;
563
+ const resolvedVariant = shouldStyleAsButton ? variant ?? "default" : void 0;
564
+ const resolvedSize = shouldStyleAsButton ? size ?? "default" : void 0;
559
565
  return /* @__PURE__ */ jsxRuntime.jsx(
560
566
  pressable.Pressable,
561
567
  {
562
568
  href,
563
569
  onClick,
564
- asButton: action.asButton ?? true,
565
- className: actionClassName,
570
+ asButton: shouldStyleAsButton,
571
+ variant: resolvedVariant,
572
+ size: resolvedSize,
573
+ className: cn(
574
+ shouldStyleAsButton && pressable.buttonVariants({ variant: resolvedVariant, size: resolvedSize }),
575
+ actionClassName
576
+ ),
566
577
  ...pressableProps,
567
578
  children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
568
579
  icon,
@@ -6,7 +6,7 @@ import { twMerge } from 'tailwind-merge';
6
6
  import { Icon } from '@page-speed/icon';
7
7
  import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
8
8
  import * as AvatarPrimitive from '@radix-ui/react-avatar';
9
- import { Pressable } from '@page-speed/pressable';
9
+ import { Pressable, buttonVariants } from '@page-speed/pressable';
10
10
 
11
11
  // components/blocks/testimonials/testimonials-stats-header.tsx
12
12
  function cn(...inputs) {
@@ -531,16 +531,27 @@ function ActionComponent({ action }) {
531
531
  children,
532
532
  href,
533
533
  onClick,
534
+ asButton,
535
+ variant,
536
+ size,
534
537
  className: actionClassName,
535
538
  ...pressableProps
536
539
  } = action;
540
+ const shouldStyleAsButton = asButton ?? true;
541
+ const resolvedVariant = shouldStyleAsButton ? variant ?? "default" : void 0;
542
+ const resolvedSize = shouldStyleAsButton ? size ?? "default" : void 0;
537
543
  return /* @__PURE__ */ jsx(
538
544
  Pressable,
539
545
  {
540
546
  href,
541
547
  onClick,
542
- asButton: action.asButton ?? true,
543
- className: actionClassName,
548
+ asButton: shouldStyleAsButton,
549
+ variant: resolvedVariant,
550
+ size: resolvedSize,
551
+ className: cn(
552
+ shouldStyleAsButton && buttonVariants({ variant: resolvedVariant, size: resolvedSize }),
553
+ actionClassName
554
+ ),
544
555
  ...pressableProps,
545
556
  children: children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
546
557
  icon,
@@ -644,16 +644,27 @@ function ActionComponent({ action }) {
644
644
  children,
645
645
  href,
646
646
  onClick,
647
+ asButton,
648
+ variant,
649
+ size,
647
650
  className: actionClassName,
648
651
  ...pressableProps
649
652
  } = action;
653
+ const shouldStyleAsButton = asButton ?? true;
654
+ const resolvedVariant = shouldStyleAsButton ? variant ?? "default" : void 0;
655
+ const resolvedSize = shouldStyleAsButton ? size ?? "default" : void 0;
650
656
  return /* @__PURE__ */ jsxRuntime.jsx(
651
657
  pressable.Pressable,
652
658
  {
653
659
  href,
654
660
  onClick,
655
- asButton: action.asButton ?? true,
656
- className: actionClassName,
661
+ asButton: shouldStyleAsButton,
662
+ variant: resolvedVariant,
663
+ size: resolvedSize,
664
+ className: cn(
665
+ shouldStyleAsButton && pressable.buttonVariants({ variant: resolvedVariant, size: resolvedSize }),
666
+ actionClassName
667
+ ),
657
668
  ...pressableProps,
658
669
  children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
659
670
  icon,
@@ -5,7 +5,7 @@ import { clsx } from 'clsx';
5
5
  import { twMerge } from 'tailwind-merge';
6
6
  import * as AvatarPrimitive from '@radix-ui/react-avatar';
7
7
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
8
- import { Pressable } from '@page-speed/pressable';
8
+ import { Pressable, buttonVariants } from '@page-speed/pressable';
9
9
  import { Icon } from '@page-speed/icon';
10
10
  import { usePlatformFromUrl } from '@opensite/hooks/usePlatformFromUrl';
11
11
 
@@ -622,16 +622,27 @@ function ActionComponent({ action }) {
622
622
  children,
623
623
  href,
624
624
  onClick,
625
+ asButton,
626
+ variant,
627
+ size,
625
628
  className: actionClassName,
626
629
  ...pressableProps
627
630
  } = action;
631
+ const shouldStyleAsButton = asButton ?? true;
632
+ const resolvedVariant = shouldStyleAsButton ? variant ?? "default" : void 0;
633
+ const resolvedSize = shouldStyleAsButton ? size ?? "default" : void 0;
628
634
  return /* @__PURE__ */ jsx(
629
635
  Pressable,
630
636
  {
631
637
  href,
632
638
  onClick,
633
- asButton: action.asButton ?? true,
634
- className: actionClassName,
639
+ asButton: shouldStyleAsButton,
640
+ variant: resolvedVariant,
641
+ size: resolvedSize,
642
+ className: cn(
643
+ shouldStyleAsButton && buttonVariants({ variant: resolvedVariant, size: resolvedSize }),
644
+ actionClassName
645
+ ),
635
646
  ...pressableProps,
636
647
  children: children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
637
648
  icon,
@@ -535,16 +535,27 @@ function ActionComponent({ action }) {
535
535
  children,
536
536
  href,
537
537
  onClick,
538
+ asButton,
539
+ variant,
540
+ size,
538
541
  className: actionClassName,
539
542
  ...pressableProps
540
543
  } = action;
544
+ const shouldStyleAsButton = asButton ?? true;
545
+ const resolvedVariant = shouldStyleAsButton ? variant ?? "default" : void 0;
546
+ const resolvedSize = shouldStyleAsButton ? size ?? "default" : void 0;
541
547
  return /* @__PURE__ */ jsxRuntime.jsx(
542
548
  pressable.Pressable,
543
549
  {
544
550
  href,
545
551
  onClick,
546
- asButton: action.asButton ?? true,
547
- className: actionClassName,
552
+ asButton: shouldStyleAsButton,
553
+ variant: resolvedVariant,
554
+ size: resolvedSize,
555
+ className: cn(
556
+ shouldStyleAsButton && pressable.buttonVariants({ variant: resolvedVariant, size: resolvedSize }),
557
+ actionClassName
558
+ ),
548
559
  ...pressableProps,
549
560
  children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
550
561
  icon,
@@ -6,7 +6,7 @@ import * as AvatarPrimitive from '@radix-ui/react-avatar';
6
6
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
7
7
  import { Slot } from '@radix-ui/react-slot';
8
8
  import { cva } from 'class-variance-authority';
9
- import { Pressable } from '@page-speed/pressable';
9
+ import { Pressable, buttonVariants } from '@page-speed/pressable';
10
10
 
11
11
  // components/blocks/testimonials/testimonials-wall-compact.tsx
12
12
  function cn(...inputs) {
@@ -510,16 +510,27 @@ function ActionComponent({ action }) {
510
510
  children,
511
511
  href,
512
512
  onClick,
513
+ asButton,
514
+ variant,
515
+ size,
513
516
  className: actionClassName,
514
517
  ...pressableProps
515
518
  } = action;
519
+ const shouldStyleAsButton = asButton ?? true;
520
+ const resolvedVariant = shouldStyleAsButton ? variant ?? "default" : void 0;
521
+ const resolvedSize = shouldStyleAsButton ? size ?? "default" : void 0;
516
522
  return /* @__PURE__ */ jsx(
517
523
  Pressable,
518
524
  {
519
525
  href,
520
526
  onClick,
521
- asButton: action.asButton ?? true,
522
- className: actionClassName,
527
+ asButton: shouldStyleAsButton,
528
+ variant: resolvedVariant,
529
+ size: resolvedSize,
530
+ className: cn(
531
+ shouldStyleAsButton && buttonVariants({ variant: resolvedVariant, size: resolvedSize }),
532
+ actionClassName
533
+ ),
523
534
  ...pressableProps,
524
535
  children: children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
525
536
  icon,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opensite/ui",
3
- "version": "3.3.7",
3
+ "version": "3.3.9",
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",
@@ -3387,7 +3387,7 @@
3387
3387
  },
3388
3388
  "peerDependencies": {
3389
3389
  "@tailwindcss/typography": ">=0.5.0",
3390
- "@page-speed/pressable": ">=0.0.7",
3390
+ "@page-speed/pressable": ">=0.0.9",
3391
3391
  "@page-speed/router": ">=1.0.0",
3392
3392
  "react": ">=16.8.0",
3393
3393
  "react-dom": ">=16.8.0"