@shipsite.dev/components 0.2.21 → 0.2.23

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 (127) hide show
  1. package/components.json +31 -11
  2. package/dist/blog/BlogArticle.d.ts +2 -1
  3. package/dist/blog/BlogArticle.d.ts.map +1 -1
  4. package/dist/blog/BlogArticle.js +2 -2
  5. package/dist/blog/BlogArticle.js.map +1 -1
  6. package/dist/blog/BlogArticleClient.d.ts +4 -2
  7. package/dist/blog/BlogArticleClient.d.ts.map +1 -1
  8. package/dist/blog/BlogArticleClient.js +4 -3
  9. package/dist/blog/BlogArticleClient.js.map +1 -1
  10. package/dist/blog/BlogIndex.d.ts +2 -1
  11. package/dist/blog/BlogIndex.d.ts.map +1 -1
  12. package/dist/blog/BlogIndex.js +2 -2
  13. package/dist/blog/BlogIndex.js.map +1 -1
  14. package/dist/content/ContentPage.d.ts +2 -1
  15. package/dist/content/ContentPage.d.ts.map +1 -1
  16. package/dist/content/ContentPage.js +2 -2
  17. package/dist/content/ContentPage.js.map +1 -1
  18. package/dist/index.d.ts +2 -0
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +2 -0
  21. package/dist/index.js.map +1 -1
  22. package/dist/marketing/AlternatingFeatures.d.ts +5 -4
  23. package/dist/marketing/AlternatingFeatures.d.ts.map +1 -1
  24. package/dist/marketing/AlternatingFeatures.js +6 -5
  25. package/dist/marketing/AlternatingFeatures.js.map +1 -1
  26. package/dist/marketing/BannerCTA.d.ts +2 -1
  27. package/dist/marketing/BannerCTA.d.ts.map +1 -1
  28. package/dist/marketing/BannerCTA.js +2 -2
  29. package/dist/marketing/BannerCTA.js.map +1 -1
  30. package/dist/marketing/BentoGrid.d.ts +4 -2
  31. package/dist/marketing/BentoGrid.d.ts.map +1 -1
  32. package/dist/marketing/BentoGrid.js +4 -3
  33. package/dist/marketing/BentoGrid.js.map +1 -1
  34. package/dist/marketing/CalloutCard.d.ts +2 -1
  35. package/dist/marketing/CalloutCard.d.ts.map +1 -1
  36. package/dist/marketing/CalloutCard.js +2 -2
  37. package/dist/marketing/CalloutCard.js.map +1 -1
  38. package/dist/marketing/CardGrid.d.ts +2 -1
  39. package/dist/marketing/CardGrid.d.ts.map +1 -1
  40. package/dist/marketing/CardGrid.js +2 -2
  41. package/dist/marketing/CardGrid.js.map +1 -1
  42. package/dist/marketing/Carousel.d.ts +4 -2
  43. package/dist/marketing/Carousel.d.ts.map +1 -1
  44. package/dist/marketing/Carousel.js +4 -3
  45. package/dist/marketing/Carousel.js.map +1 -1
  46. package/dist/marketing/Companies.d.ts +4 -2
  47. package/dist/marketing/Companies.d.ts.map +1 -1
  48. package/dist/marketing/Companies.js +4 -3
  49. package/dist/marketing/Companies.js.map +1 -1
  50. package/dist/marketing/FAQ.d.ts +2 -1
  51. package/dist/marketing/FAQ.d.ts.map +1 -1
  52. package/dist/marketing/FAQ.js +2 -2
  53. package/dist/marketing/FAQ.js.map +1 -1
  54. package/dist/marketing/Features.d.ts +2 -1
  55. package/dist/marketing/Features.d.ts.map +1 -1
  56. package/dist/marketing/Features.js +2 -2
  57. package/dist/marketing/Features.js.map +1 -1
  58. package/dist/marketing/Gallery.d.ts +4 -2
  59. package/dist/marketing/Gallery.d.ts.map +1 -1
  60. package/dist/marketing/Gallery.js +4 -3
  61. package/dist/marketing/Gallery.js.map +1 -1
  62. package/dist/marketing/Hero.d.ts +4 -2
  63. package/dist/marketing/Hero.d.ts.map +1 -1
  64. package/dist/marketing/Hero.js +3 -2
  65. package/dist/marketing/Hero.js.map +1 -1
  66. package/dist/marketing/PageHero.d.ts +2 -1
  67. package/dist/marketing/PageHero.d.ts.map +1 -1
  68. package/dist/marketing/PageHero.js +2 -2
  69. package/dist/marketing/PageHero.js.map +1 -1
  70. package/dist/marketing/PricingSection.d.ts +2 -1
  71. package/dist/marketing/PricingSection.d.ts.map +1 -1
  72. package/dist/marketing/PricingSection.js +2 -2
  73. package/dist/marketing/PricingSection.js.map +1 -1
  74. package/dist/marketing/SocialProof.d.ts +2 -1
  75. package/dist/marketing/SocialProof.d.ts.map +1 -1
  76. package/dist/marketing/SocialProof.js +2 -2
  77. package/dist/marketing/SocialProof.js.map +1 -1
  78. package/dist/marketing/Stats.d.ts +2 -1
  79. package/dist/marketing/Stats.d.ts.map +1 -1
  80. package/dist/marketing/Stats.js +2 -2
  81. package/dist/marketing/Stats.js.map +1 -1
  82. package/dist/marketing/Steps.d.ts +2 -1
  83. package/dist/marketing/Steps.d.ts.map +1 -1
  84. package/dist/marketing/Steps.js +2 -2
  85. package/dist/marketing/Steps.js.map +1 -1
  86. package/dist/marketing/TabsSection.d.ts +4 -2
  87. package/dist/marketing/TabsSection.d.ts.map +1 -1
  88. package/dist/marketing/TabsSection.js +4 -3
  89. package/dist/marketing/TabsSection.js.map +1 -1
  90. package/dist/marketing/Testimonial.d.ts +4 -2
  91. package/dist/marketing/Testimonial.d.ts.map +1 -1
  92. package/dist/marketing/Testimonial.js +3 -2
  93. package/dist/marketing/Testimonial.js.map +1 -1
  94. package/dist/marketing/Testimonials.d.ts +4 -2
  95. package/dist/marketing/Testimonials.d.ts.map +1 -1
  96. package/dist/marketing/Testimonials.js +4 -3
  97. package/dist/marketing/Testimonials.js.map +1 -1
  98. package/dist/ui/theme-image.d.ts +11 -0
  99. package/dist/ui/theme-image.d.ts.map +1 -0
  100. package/dist/ui/theme-image.js +9 -0
  101. package/dist/ui/theme-image.js.map +1 -0
  102. package/package.json +1 -1
  103. package/src/blog/BlogArticle.tsx +3 -2
  104. package/src/blog/BlogArticleClient.tsx +6 -3
  105. package/src/blog/BlogIndex.tsx +3 -2
  106. package/src/content/ContentPage.tsx +3 -2
  107. package/src/index.ts +4 -0
  108. package/src/marketing/AlternatingFeatures.tsx +7 -13
  109. package/src/marketing/BannerCTA.tsx +3 -2
  110. package/src/marketing/BentoGrid.tsx +6 -4
  111. package/src/marketing/CalloutCard.tsx +3 -2
  112. package/src/marketing/CardGrid.tsx +3 -2
  113. package/src/marketing/Carousel.tsx +6 -4
  114. package/src/marketing/Companies.tsx +10 -8
  115. package/src/marketing/FAQ.tsx +3 -2
  116. package/src/marketing/Features.tsx +3 -2
  117. package/src/marketing/Gallery.tsx +6 -4
  118. package/src/marketing/Hero.tsx +6 -4
  119. package/src/marketing/PageHero.tsx +3 -2
  120. package/src/marketing/PricingSection.tsx +3 -2
  121. package/src/marketing/SocialProof.tsx +3 -2
  122. package/src/marketing/Stats.tsx +3 -2
  123. package/src/marketing/Steps.tsx +3 -2
  124. package/src/marketing/TabsSection.tsx +6 -4
  125. package/src/marketing/Testimonial.tsx +6 -4
  126. package/src/marketing/Testimonials.tsx +6 -4
  127. package/src/ui/theme-image.tsx +20 -0
@@ -1 +1 @@
1
- {"version":3,"file":"AlternatingFeatures.js","sourceRoot":"","sources":["../../src/marketing/AlternatingFeatures.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAQtC,MAAM,UAAU,sBAAsB,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAA+B;IAC9F,OAAO,CACL,eAAK,SAAS,EAAC,wBAAwB,aACpC,IAAI,IAAI,eAAM,SAAS,EAAC,6BAA6B,YAAE,IAAI,GAAQ,EACpE,0BACE,aAAI,SAAS,EAAC,oCAAoC,YAAE,KAAK,GAAM,EAC/D,YAAG,SAAS,EAAC,+BAA+B,YAAE,WAAW,GAAK,IAC1D,IACF,CACP,CAAC;AACJ,CAAC;AAWD,MAAM,UAAU,qBAAqB,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAA8B;IAC5H,OAAO,CACL,eAAK,SAAS,EAAC,0GAA0G,aACvH,0BACE,aAAI,SAAS,EAAC,qDAAqD,YAAE,KAAK,GAAM,EAC/E,WAAW,IAAI,YAAG,SAAS,EAAC,4BAA4B,YAAE,WAAW,GAAK,EAC1E,QAAQ,IAAI,cAAK,SAAS,EAAC,WAAW,YAAE,QAAQ,GAAO,IACpD,EACN,KAAC,MAAM,IAAC,IAAI,EAAC,YAAY,YACtB,SAAS,CAAC,CAAC,CAAC,CACX,8BACE,cAAK,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,IAAI,KAAK,EAAE,SAAS,EAAC,oBAAoB,GAAG,EAC1E,cAAK,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,IAAI,KAAK,EAAE,SAAS,EAAC,0BAA0B,GAAG,IACnF,CACJ,CAAC,CAAC,CAAC,CACF,cAAK,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,IAAI,KAAK,EAAE,SAAS,EAAC,QAAQ,GAAG,CAC/D,GACM,IACL,CACP,CAAC;AACJ,CAAC;AAQD,MAAM,UAAU,mBAAmB,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAA4B;IAC5F,OAAO,CACL,KAAC,OAAO,cACN,eAAK,SAAS,EAAC,gBAAgB,aAC5B,CAAC,KAAK,IAAI,WAAW,CAAC,IAAI,CACzB,eAAK,SAAS,EAAC,mBAAmB,aAC/B,KAAK,IAAI,aAAI,SAAS,EAAC,qDAAqD,YAAE,KAAK,GAAM,EACzF,WAAW,IAAI,YAAG,SAAS,EAAC,iDAAiD,YAAE,WAAW,GAAK,IAC5F,CACP,EACD,cAAK,SAAS,EAAC,wBAAwB,YAAE,QAAQ,GAAO,IACpD,GACE,CACX,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"AlternatingFeatures.js","sourceRoot":"","sources":["../../src/marketing/AlternatingFeatures.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,UAAU,EAAoB,MAAM,mBAAmB,CAAC;AAQjE,MAAM,UAAU,sBAAsB,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAA+B;IAC9F,OAAO,CACL,eAAK,SAAS,EAAC,wBAAwB,aACpC,IAAI,IAAI,eAAM,SAAS,EAAC,6BAA6B,YAAE,IAAI,GAAQ,EACpE,0BACE,aAAI,SAAS,EAAC,oCAAoC,YAAE,KAAK,GAAM,EAC/D,YAAG,SAAS,EAAC,+BAA+B,YAAE,WAAW,GAAK,IAC1D,IACF,CACP,CAAC;AACJ,CAAC;AAUD,MAAM,UAAU,qBAAqB,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAA8B;IACjH,OAAO,CACL,eAAK,SAAS,EAAC,0GAA0G,aACvH,0BACE,aAAI,SAAS,EAAC,qDAAqD,YAAE,KAAK,GAAM,EAC/E,WAAW,IAAI,YAAG,SAAS,EAAC,4BAA4B,YAAE,WAAW,GAAK,EAC1E,QAAQ,IAAI,cAAK,SAAS,EAAC,WAAW,YAAE,QAAQ,GAAO,IACpD,EACN,KAAC,MAAM,IAAC,IAAI,EAAC,YAAY,YACvB,KAAC,UAAU,IAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,IAAI,KAAK,EAAE,SAAS,EAAC,QAAQ,GAAG,GAC9D,IACL,CACP,CAAC;AACJ,CAAC;AASD,MAAM,UAAU,mBAAmB,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAA4B;IAChG,OAAO,CACL,KAAC,OAAO,IAAC,EAAE,EAAE,EAAE,YACb,eAAK,SAAS,EAAC,gBAAgB,aAC5B,CAAC,KAAK,IAAI,WAAW,CAAC,IAAI,CACzB,eAAK,SAAS,EAAC,mBAAmB,aAC/B,KAAK,IAAI,aAAI,SAAS,EAAC,qDAAqD,YAAE,KAAK,GAAM,EACzF,WAAW,IAAI,YAAG,SAAS,EAAC,iDAAiD,YAAE,WAAW,GAAK,IAC5F,CACP,EACD,cAAK,SAAS,EAAC,wBAAwB,YAAE,QAAQ,GAAO,IACpD,GACE,CACX,CAAC;AACJ,CAAC"}
@@ -1,12 +1,13 @@
1
1
  import React from 'react';
2
2
  interface BannerCTAProps {
3
+ id?: string;
3
4
  title: string;
4
5
  buttonText: string;
5
6
  buttonHref?: string;
6
7
  subtext?: string;
7
8
  children?: React.ReactNode;
8
9
  }
9
- export declare function BannerCTA({ title, buttonText, buttonHref, subtext, children }: BannerCTAProps): import("react/jsx-runtime").JSX.Element;
10
+ export declare function BannerCTA({ id, title, buttonText, buttonHref, subtext, children }: BannerCTAProps): import("react/jsx-runtime").JSX.Element;
10
11
  export declare function BannerFeature({ title, icon }: {
11
12
  title: string;
12
13
  icon?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"BannerCTA.d.ts","sourceRoot":"","sources":["../../src/marketing/BannerCTA.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,UAAU,cAAc;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,wBAAgB,SAAS,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,cAAc,2CAoB7F;AAED,wBAAgB,aAAa,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,2CAO9E"}
1
+ {"version":3,"file":"BannerCTA.d.ts","sourceRoot":"","sources":["../../src/marketing/BannerCTA.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,UAAU,cAAc;IACtB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,wBAAgB,SAAS,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,cAAc,2CAoBjG;AAED,wBAAgB,aAAa,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,2CAO9E"}
@@ -2,8 +2,8 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Section } from '../ui/section';
3
3
  import { Button } from '../ui/button';
4
4
  import Glow from '../ui/glow';
5
- export function BannerCTA({ title, buttonText, buttonHref, subtext, children }) {
6
- return (_jsx(Section, { children: _jsx("div", { className: "container-main", children: _jsxs("div", { className: "relative overflow-hidden glass-4 rounded-3xl p-12 md:p-16 text-center", children: [_jsx(Glow, { variant: "center" }), _jsxs("div", { className: "relative z-10", children: [_jsx("h2", { className: "text-3xl md:text-4xl font-bold text-foreground mb-4", children: title }), subtext && _jsx("p", { className: "text-muted-foreground mb-8 max-w-xl mx-auto", children: subtext }), buttonHref && (_jsx(Button, { asChild: true, size: "lg", children: _jsx("a", { href: buttonHref, children: buttonText }) })), children] })] }) }) }));
5
+ export function BannerCTA({ id, title, buttonText, buttonHref, subtext, children }) {
6
+ return (_jsx(Section, { id: id, children: _jsx("div", { className: "container-main", children: _jsxs("div", { className: "relative overflow-hidden glass-4 rounded-3xl p-12 md:p-16 text-center", children: [_jsx(Glow, { variant: "center" }), _jsxs("div", { className: "relative z-10", children: [_jsx("h2", { className: "text-3xl md:text-4xl font-bold text-foreground mb-4", children: title }), subtext && _jsx("p", { className: "text-muted-foreground mb-8 max-w-xl mx-auto", children: subtext }), buttonHref && (_jsx(Button, { asChild: true, size: "lg", children: _jsx("a", { href: buttonHref, children: buttonText }) })), children] })] }) }) }));
7
7
  }
8
8
  export function BannerFeature({ title, icon }) {
9
9
  return (_jsxs("div", { className: "flex items-center gap-2 text-muted-foreground text-sm", children: [icon && _jsx("span", { children: icon }), _jsx("span", { children: title })] }));
@@ -1 +1 @@
1
- {"version":3,"file":"BannerCTA.js","sourceRoot":"","sources":["../../src/marketing/BannerCTA.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,IAAI,MAAM,YAAY,CAAC;AAU9B,MAAM,UAAU,SAAS,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAkB;IAC5F,OAAO,CACL,KAAC,OAAO,cACN,cAAK,SAAS,EAAC,gBAAgB,YAC7B,eAAK,SAAS,EAAC,uEAAuE,aACpF,KAAC,IAAI,IAAC,OAAO,EAAC,QAAQ,GAAG,EACzB,eAAK,SAAS,EAAC,eAAe,aAC5B,aAAI,SAAS,EAAC,qDAAqD,YAAE,KAAK,GAAM,EAC/E,OAAO,IAAI,YAAG,SAAS,EAAC,6CAA6C,YAAE,OAAO,GAAK,EACnF,UAAU,IAAI,CACb,KAAC,MAAM,IAAC,OAAO,QAAC,IAAI,EAAC,IAAI,YACvB,YAAG,IAAI,EAAE,UAAU,YAAG,UAAU,GAAK,GAC9B,CACV,EACA,QAAQ,IACL,IACF,GACF,GACE,CACX,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,EAAE,KAAK,EAAE,IAAI,EAAoC;IAC7E,OAAO,CACL,eAAK,SAAS,EAAC,uDAAuD,aACnE,IAAI,IAAI,yBAAO,IAAI,GAAQ,EAC5B,yBAAO,KAAK,GAAQ,IAChB,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"BannerCTA.js","sourceRoot":"","sources":["../../src/marketing/BannerCTA.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,IAAI,MAAM,YAAY,CAAC;AAW9B,MAAM,UAAU,SAAS,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAkB;IAChG,OAAO,CACL,KAAC,OAAO,IAAC,EAAE,EAAE,EAAE,YACb,cAAK,SAAS,EAAC,gBAAgB,YAC7B,eAAK,SAAS,EAAC,uEAAuE,aACpF,KAAC,IAAI,IAAC,OAAO,EAAC,QAAQ,GAAG,EACzB,eAAK,SAAS,EAAC,eAAe,aAC5B,aAAI,SAAS,EAAC,qDAAqD,YAAE,KAAK,GAAM,EAC/E,OAAO,IAAI,YAAG,SAAS,EAAC,6CAA6C,YAAE,OAAO,GAAK,EACnF,UAAU,IAAI,CACb,KAAC,MAAM,IAAC,OAAO,QAAC,IAAI,EAAC,IAAI,YACvB,YAAG,IAAI,EAAE,UAAU,YAAG,UAAU,GAAK,GAC9B,CACV,EACA,QAAQ,IACL,IACF,GACF,GACE,CACX,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,EAAE,KAAK,EAAE,IAAI,EAAoC;IAC7E,OAAO,CACL,eAAK,SAAS,EAAC,uDAAuD,aACnE,IAAI,IAAI,yBAAO,IAAI,GAAQ,EAC5B,yBAAO,KAAK,GAAQ,IAChB,CACP,CAAC;AACJ,CAAC"}
@@ -1,17 +1,19 @@
1
1
  import React from 'react';
2
+ import { type ImageSource } from '../ui/theme-image';
2
3
  interface BentoItemProps {
3
4
  title: string;
4
5
  description?: string;
5
- image?: string;
6
+ image?: ImageSource;
6
7
  span?: 1 | 2;
7
8
  children?: React.ReactNode;
8
9
  }
9
10
  export declare function BentoItem({ title, description, image, span, children }: BentoItemProps): import("react/jsx-runtime").JSX.Element;
10
11
  interface BentoGridProps {
12
+ id?: string;
11
13
  title?: string;
12
14
  description?: string;
13
15
  children: React.ReactNode;
14
16
  }
15
- export declare function BentoGrid({ title, description, children }: BentoGridProps): import("react/jsx-runtime").JSX.Element;
17
+ export declare function BentoGrid({ id, title, description, children }: BentoGridProps): import("react/jsx-runtime").JSX.Element;
16
18
  export {};
17
19
  //# sourceMappingURL=BentoGrid.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BentoGrid.d.ts","sourceRoot":"","sources":["../../src/marketing/BentoGrid.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,UAAU,cAAc;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACb,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,wBAAgB,SAAS,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,IAAQ,EAAE,QAAQ,EAAE,EAAE,cAAc,2CAgB1F;AAED,UAAU,cAAc;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,wBAAgB,SAAS,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,cAAc,2CAczE"}
1
+ {"version":3,"file":"BentoGrid.d.ts","sourceRoot":"","sources":["../../src/marketing/BentoGrid.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAc,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEjE,UAAU,cAAc;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACb,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,wBAAgB,SAAS,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,IAAQ,EAAE,QAAQ,EAAE,EAAE,cAAc,2CAgB1F;AAED,UAAU,cAAc;IACtB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,wBAAgB,SAAS,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,cAAc,2CAc7E"}
@@ -1,10 +1,11 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Section } from '../ui/section';
3
3
  import { cn } from '../lib/utils';
4
+ import { ThemeImage } from '../ui/theme-image';
4
5
  export function BentoItem({ title, description, image, span = 1, children }) {
5
- return (_jsxs("div", { className: cn('glass-1 hover:glass-2 rounded-2xl p-6 md:p-8 transition-all overflow-hidden flex flex-col', span === 2 && 'md:col-span-2'), children: [_jsx("h3", { className: "text-lg font-semibold text-foreground mb-2", children: title }), description && _jsx("p", { className: "text-sm text-muted-foreground mb-4 leading-relaxed", children: description }), image && (_jsx("div", { className: "mt-auto -mx-6 -mb-6 md:-mx-8 md:-mb-8", children: _jsx("img", { src: image, alt: title, className: "w-full" }) })), children] }));
6
+ return (_jsxs("div", { className: cn('glass-1 hover:glass-2 rounded-2xl p-6 md:p-8 transition-all overflow-hidden flex flex-col', span === 2 && 'md:col-span-2'), children: [_jsx("h3", { className: "text-lg font-semibold text-foreground mb-2", children: title }), description && _jsx("p", { className: "text-sm text-muted-foreground mb-4 leading-relaxed", children: description }), image && (_jsx("div", { className: "mt-auto -mx-6 -mb-6 md:-mx-8 md:-mb-8", children: _jsx(ThemeImage, { src: image, alt: title, className: "w-full" }) })), children] }));
6
7
  }
7
- export function BentoGrid({ title, description, children }) {
8
- return (_jsx(Section, { children: _jsxs("div", { className: "container-main", children: [(title || description) && (_jsxs("div", { className: "text-center mb-12", children: [title && _jsx("h2", { className: "text-3xl md:text-4xl font-bold text-foreground mb-4", children: title }), description && _jsx("p", { className: "text-lg text-muted-foreground max-w-2xl mx-auto", children: description })] })), _jsx("div", { className: "grid grid-cols-1 md:grid-cols-3 gap-6 auto-rows-fr", children: children })] }) }));
8
+ export function BentoGrid({ id, title, description, children }) {
9
+ return (_jsx(Section, { id: id, children: _jsxs("div", { className: "container-main", children: [(title || description) && (_jsxs("div", { className: "text-center mb-12", children: [title && _jsx("h2", { className: "text-3xl md:text-4xl font-bold text-foreground mb-4", children: title }), description && _jsx("p", { className: "text-lg text-muted-foreground max-w-2xl mx-auto", children: description })] })), _jsx("div", { className: "grid grid-cols-1 md:grid-cols-3 gap-6 auto-rows-fr", children: children })] }) }));
9
10
  }
10
11
  //# sourceMappingURL=BentoGrid.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BentoGrid.js","sourceRoot":"","sources":["../../src/marketing/BentoGrid.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAUlC,MAAM,UAAU,SAAS,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,GAAG,CAAC,EAAE,QAAQ,EAAkB;IACzF,OAAO,CACL,eAAK,SAAS,EAAE,EAAE,CAChB,2FAA2F,EAC3F,IAAI,KAAK,CAAC,IAAI,eAAe,CAC9B,aACC,aAAI,SAAS,EAAC,4CAA4C,YAAE,KAAK,GAAM,EACtE,WAAW,IAAI,YAAG,SAAS,EAAC,oDAAoD,YAAE,WAAW,GAAK,EAClG,KAAK,IAAI,CACR,cAAK,SAAS,EAAC,uCAAuC,YACpD,cAAK,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAC,QAAQ,GAAG,GAC9C,CACP,EACA,QAAQ,IACL,CACP,CAAC;AACJ,CAAC;AAQD,MAAM,UAAU,SAAS,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAkB;IACxE,OAAO,CACL,KAAC,OAAO,cACN,eAAK,SAAS,EAAC,gBAAgB,aAC5B,CAAC,KAAK,IAAI,WAAW,CAAC,IAAI,CACzB,eAAK,SAAS,EAAC,mBAAmB,aAC/B,KAAK,IAAI,aAAI,SAAS,EAAC,qDAAqD,YAAE,KAAK,GAAM,EACzF,WAAW,IAAI,YAAG,SAAS,EAAC,iDAAiD,YAAE,WAAW,GAAK,IAC5F,CACP,EACD,cAAK,SAAS,EAAC,oDAAoD,YAAE,QAAQ,GAAO,IAChF,GACE,CACX,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"BentoGrid.js","sourceRoot":"","sources":["../../src/marketing/BentoGrid.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,UAAU,EAAoB,MAAM,mBAAmB,CAAC;AAUjE,MAAM,UAAU,SAAS,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,GAAG,CAAC,EAAE,QAAQ,EAAkB;IACzF,OAAO,CACL,eAAK,SAAS,EAAE,EAAE,CAChB,2FAA2F,EAC3F,IAAI,KAAK,CAAC,IAAI,eAAe,CAC9B,aACC,aAAI,SAAS,EAAC,4CAA4C,YAAE,KAAK,GAAM,EACtE,WAAW,IAAI,YAAG,SAAS,EAAC,oDAAoD,YAAE,WAAW,GAAK,EAClG,KAAK,IAAI,CACR,cAAK,SAAS,EAAC,uCAAuC,YACpD,KAAC,UAAU,IAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAC,QAAQ,GAAG,GACrD,CACP,EACA,QAAQ,IACL,CACP,CAAC;AACJ,CAAC;AASD,MAAM,UAAU,SAAS,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAkB;IAC5E,OAAO,CACL,KAAC,OAAO,IAAC,EAAE,EAAE,EAAE,YACb,eAAK,SAAS,EAAC,gBAAgB,aAC5B,CAAC,KAAK,IAAI,WAAW,CAAC,IAAI,CACzB,eAAK,SAAS,EAAC,mBAAmB,aAC/B,KAAK,IAAI,aAAI,SAAS,EAAC,qDAAqD,YAAE,KAAK,GAAM,EACzF,WAAW,IAAI,YAAG,SAAS,EAAC,iDAAiD,YAAE,WAAW,GAAK,IAC5F,CACP,EACD,cAAK,SAAS,EAAC,oDAAoD,YAAE,QAAQ,GAAO,IAChF,GACE,CACX,CAAC;AACJ,CAAC"}
@@ -1,10 +1,11 @@
1
1
  import React from 'react';
2
2
  interface CalloutCardProps {
3
+ id?: string;
3
4
  title: string;
4
5
  description: string;
5
6
  variant?: 'info' | 'success' | 'warning';
6
7
  children?: React.ReactNode;
7
8
  }
8
- export declare function CalloutCard({ title, description, variant, children }: CalloutCardProps): import("react/jsx-runtime").JSX.Element;
9
+ export declare function CalloutCard({ id, title, description, variant, children }: CalloutCardProps): import("react/jsx-runtime").JSX.Element;
9
10
  export {};
10
11
  //# sourceMappingURL=CalloutCard.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CalloutCard.d.ts","sourceRoot":"","sources":["../../src/marketing/CalloutCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,UAAU,gBAAgB;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;IACzC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,wBAAgB,WAAW,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,OAAgB,EAAE,QAAQ,EAAE,EAAE,gBAAgB,2CAgB/F"}
1
+ {"version":3,"file":"CalloutCard.d.ts","sourceRoot":"","sources":["../../src/marketing/CalloutCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,UAAU,gBAAgB;IACxB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;IACzC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,wBAAgB,WAAW,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,OAAgB,EAAE,QAAQ,EAAE,EAAE,gBAAgB,2CAgBnG"}
@@ -1,11 +1,11 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { cn } from '../lib/utils';
3
- export function CalloutCard({ title, description, variant = 'info', children }) {
3
+ export function CalloutCard({ id, title, description, variant = 'info', children }) {
4
4
  const accentStyles = {
5
5
  info: 'border-l-primary',
6
6
  success: 'border-l-emerald-500',
7
7
  warning: 'border-l-amber-500',
8
8
  };
9
- return (_jsx("div", { className: cn('mx-auto w-full max-w-[76rem] px-[clamp(1rem,3vw,3rem)] my-8'), children: _jsxs("div", { className: cn('glass-1 rounded-xl border-l-4 p-6 shadow-xl', accentStyles[variant]), children: [_jsx("h3", { className: "font-semibold tracking-tight text-foreground mb-2", children: title }), _jsx("p", { className: "text-sm text-muted-foreground text-balance", children: description }), children] }) }));
9
+ return (_jsx("div", { id: id, className: cn('mx-auto w-full max-w-[76rem] px-[clamp(1rem,3vw,3rem)] my-8'), children: _jsxs("div", { className: cn('glass-1 rounded-xl border-l-4 p-6 shadow-xl', accentStyles[variant]), children: [_jsx("h3", { className: "font-semibold tracking-tight text-foreground mb-2", children: title }), _jsx("p", { className: "text-sm text-muted-foreground text-balance", children: description }), children] }) }));
10
10
  }
11
11
  //# sourceMappingURL=CalloutCard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CalloutCard.js","sourceRoot":"","sources":["../../src/marketing/CalloutCard.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AASlC,MAAM,UAAU,WAAW,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,GAAG,MAAM,EAAE,QAAQ,EAAoB;IAC9F,MAAM,YAAY,GAAG;QACnB,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE,sBAAsB;QAC/B,OAAO,EAAE,oBAAoB;KAC9B,CAAC;IAEF,OAAO,CACL,cAAK,SAAS,EAAE,EAAE,CAAC,6DAA6D,CAAC,YAC/E,eAAK,SAAS,EAAE,EAAE,CAAC,6CAA6C,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC,aACtF,aAAI,SAAS,EAAC,mDAAmD,YAAE,KAAK,GAAM,EAC9E,YAAG,SAAS,EAAC,4CAA4C,YAAE,WAAW,GAAK,EAC1E,QAAQ,IACL,GACF,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"CalloutCard.js","sourceRoot":"","sources":["../../src/marketing/CalloutCard.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAUlC,MAAM,UAAU,WAAW,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,GAAG,MAAM,EAAE,QAAQ,EAAoB;IAClG,MAAM,YAAY,GAAG;QACnB,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE,sBAAsB;QAC/B,OAAO,EAAE,oBAAoB;KAC9B,CAAC;IAEF,OAAO,CACL,cAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,CAAC,6DAA6D,CAAC,YACvF,eAAK,SAAS,EAAE,EAAE,CAAC,6CAA6C,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC,aACtF,aAAI,SAAS,EAAC,mDAAmD,YAAE,KAAK,GAAM,EAC9E,YAAG,SAAS,EAAC,4CAA4C,YAAE,WAAW,GAAK,EAC1E,QAAQ,IACL,GACF,CACP,CAAC;AACJ,CAAC"}
@@ -7,9 +7,10 @@ interface CardGridItemProps {
7
7
  }
8
8
  export declare function CardGridItem({ title, description, icon, href }: CardGridItemProps): import("react/jsx-runtime").JSX.Element;
9
9
  interface CardGridProps {
10
+ id?: string;
10
11
  columns?: 2 | 3 | 4;
11
12
  children: React.ReactNode;
12
13
  }
13
- export declare function CardGrid({ columns, children }: CardGridProps): import("react/jsx-runtime").JSX.Element;
14
+ export declare function CardGrid({ id, columns, children }: CardGridProps): import("react/jsx-runtime").JSX.Element;
14
15
  export {};
15
16
  //# sourceMappingURL=CardGrid.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CardGrid.d.ts","sourceRoot":"","sources":["../../src/marketing/CardGrid.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,UAAU,iBAAiB;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAgB,YAAY,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,iBAAiB,2CASjF;AAED,UAAU,aAAa;IACrB,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACpB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,wBAAgB,QAAQ,CAAC,EAAE,OAAW,EAAE,QAAQ,EAAE,EAAE,aAAa,2CAOhE"}
1
+ {"version":3,"file":"CardGrid.d.ts","sourceRoot":"","sources":["../../src/marketing/CardGrid.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,UAAU,iBAAiB;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAgB,YAAY,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,iBAAiB,2CASjF;AAED,UAAU,aAAa;IACrB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACpB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,wBAAgB,QAAQ,CAAC,EAAE,EAAE,EAAE,OAAW,EAAE,QAAQ,EAAE,EAAE,aAAa,2CAOpE"}
@@ -3,8 +3,8 @@ export function CardGridItem({ title, description, icon, href }) {
3
3
  const Wrapper = href ? 'a' : 'div';
4
4
  return (_jsxs(Wrapper, { ...(href ? { href } : {}), className: "block p-6 rounded-xl glass-1 hover:glass-2 transition-all focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring", children: [icon && _jsx("div", { className: "mb-3 text-primary", children: icon }), _jsx("h3", { className: "font-semibold tracking-tight text-foreground mb-2", children: title }), _jsx("p", { className: "text-sm text-muted-foreground", children: description })] }));
5
5
  }
6
- export function CardGrid({ columns = 3, children }) {
6
+ export function CardGrid({ id, columns = 3, children }) {
7
7
  const gridCols = { 2: 'md:grid-cols-2', 3: 'md:grid-cols-3', 4: 'md:grid-cols-2 lg:grid-cols-4' };
8
- return (_jsx("div", { className: "mx-auto w-full max-w-[76rem] px-[clamp(1rem,3vw,3rem)] py-8", children: _jsx("div", { className: `grid grid-cols-1 ${gridCols[columns]} gap-6`, children: children }) }));
8
+ return (_jsx("div", { id: id, className: "mx-auto w-full max-w-[76rem] px-[clamp(1rem,3vw,3rem)] py-8", children: _jsx("div", { className: `grid grid-cols-1 ${gridCols[columns]} gap-6`, children: children }) }));
9
9
  }
10
10
  //# sourceMappingURL=CardGrid.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CardGrid.js","sourceRoot":"","sources":["../../src/marketing/CardGrid.tsx"],"names":[],"mappings":";AASA,MAAM,UAAU,YAAY,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAqB;IAChF,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;IACnC,OAAO,CACL,MAAC,OAAO,OAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,EAAC,qIAAqI,aACjL,IAAI,IAAI,cAAK,SAAS,EAAC,mBAAmB,YAAE,IAAI,GAAO,EACxD,aAAI,SAAS,EAAC,mDAAmD,YAAE,KAAK,GAAM,EAC9E,YAAG,SAAS,EAAC,+BAA+B,YAAE,WAAW,GAAK,IACtD,CACX,CAAC;AACJ,CAAC;AAOD,MAAM,UAAU,QAAQ,CAAC,EAAE,OAAO,GAAG,CAAC,EAAE,QAAQ,EAAiB;IAC/D,MAAM,QAAQ,GAAG,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,+BAA+B,EAAE,CAAC;IAClG,OAAO,CACL,cAAK,SAAS,EAAC,6DAA6D,YAC1E,cAAK,SAAS,EAAE,oBAAoB,QAAQ,CAAC,OAAO,CAAC,QAAQ,YAAG,QAAQ,GAAO,GAC3E,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"CardGrid.js","sourceRoot":"","sources":["../../src/marketing/CardGrid.tsx"],"names":[],"mappings":";AASA,MAAM,UAAU,YAAY,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAqB;IAChF,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;IACnC,OAAO,CACL,MAAC,OAAO,OAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,EAAC,qIAAqI,aACjL,IAAI,IAAI,cAAK,SAAS,EAAC,mBAAmB,YAAE,IAAI,GAAO,EACxD,aAAI,SAAS,EAAC,mDAAmD,YAAE,KAAK,GAAM,EAC9E,YAAG,SAAS,EAAC,+BAA+B,YAAE,WAAW,GAAK,IACtD,CACX,CAAC;AACJ,CAAC;AAQD,MAAM,UAAU,QAAQ,CAAC,EAAE,EAAE,EAAE,OAAO,GAAG,CAAC,EAAE,QAAQ,EAAiB;IACnE,MAAM,QAAQ,GAAG,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,+BAA+B,EAAE,CAAC;IAClG,OAAO,CACL,cAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAC,6DAA6D,YAClF,cAAK,SAAS,EAAE,oBAAoB,QAAQ,CAAC,OAAO,CAAC,QAAQ,YAAG,QAAQ,GAAO,GAC3E,CACP,CAAC;AACJ,CAAC"}
@@ -1,16 +1,18 @@
1
1
  import React from 'react';
2
+ import { type ImageSource } from '../ui/theme-image';
2
3
  interface CarouselItemProps {
3
4
  title?: string;
4
5
  description?: string;
5
- image?: string;
6
+ image?: ImageSource;
6
7
  children?: React.ReactNode;
7
8
  }
8
9
  export declare function CarouselItem({ title, description, image, children }: CarouselItemProps): import("react/jsx-runtime").JSX.Element;
9
10
  interface CarouselProps {
11
+ id?: string;
10
12
  title?: string;
11
13
  description?: string;
12
14
  children: React.ReactNode;
13
15
  }
14
- export declare function Carousel({ title, description, children }: CarouselProps): import("react/jsx-runtime").JSX.Element;
16
+ export declare function Carousel({ id, title, description, children }: CarouselProps): import("react/jsx-runtime").JSX.Element;
15
17
  export {};
16
18
  //# sourceMappingURL=Carousel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Carousel.d.ts","sourceRoot":"","sources":["../../src/marketing/Carousel.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAiB,MAAM,OAAO,CAAC;AAKtC,UAAU,iBAAiB;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,wBAAgB,YAAY,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,iBAAiB,2CAWtF;AAED,UAAU,aAAa;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,wBAAgB,QAAQ,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,aAAa,2CA+CvE"}
1
+ {"version":3,"file":"Carousel.d.ts","sourceRoot":"","sources":["../../src/marketing/Carousel.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAiB,MAAM,OAAO,CAAC;AAItC,OAAO,EAAc,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEjE,UAAU,iBAAiB;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,wBAAgB,YAAY,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,iBAAiB,2CAWtF;AAED,UAAU,aAAa;IACrB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,wBAAgB,QAAQ,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,aAAa,2CA+C3E"}
@@ -3,10 +3,11 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { useRef } from 'react';
4
4
  import { ChevronLeft, ChevronRight } from 'lucide-react';
5
5
  import { Section } from '../ui/section';
6
+ import { ThemeImage } from '../ui/theme-image';
6
7
  export function CarouselItem({ title, description, image, children }) {
7
- return (_jsxs("div", { className: "glass-1 rounded-2xl overflow-hidden flex-shrink-0 w-[85vw] max-w-[400px] snap-center", children: [image && _jsx("img", { src: image, alt: title || '', className: "w-full aspect-video object-cover" }), _jsxs("div", { className: "p-6", children: [title && _jsx("h3", { className: "text-lg font-semibold text-foreground mb-2", children: title }), description && _jsx("p", { className: "text-sm text-muted-foreground leading-relaxed", children: description }), children] })] }));
8
+ return (_jsxs("div", { className: "glass-1 rounded-2xl overflow-hidden flex-shrink-0 w-[85vw] max-w-[400px] snap-center", children: [image && _jsx(ThemeImage, { src: image, alt: title || '', className: "w-full aspect-video object-cover" }), _jsxs("div", { className: "p-6", children: [title && _jsx("h3", { className: "text-lg font-semibold text-foreground mb-2", children: title }), description && _jsx("p", { className: "text-sm text-muted-foreground leading-relaxed", children: description }), children] })] }));
8
9
  }
9
- export function Carousel({ title, description, children }) {
10
+ export function Carousel({ id, title, description, children }) {
10
11
  const scrollRef = useRef(null);
11
12
  const scroll = (direction) => {
12
13
  if (!scrollRef.current)
@@ -17,6 +18,6 @@ export function Carousel({ title, description, children }) {
17
18
  behavior: 'smooth',
18
19
  });
19
20
  };
20
- return (_jsx(Section, { children: _jsxs("div", { className: "container-main", children: [(title || description) && (_jsxs("div", { className: "text-center mb-12", children: [title && _jsx("h2", { className: "text-3xl md:text-4xl font-bold text-foreground mb-4", children: title }), description && _jsx("p", { className: "text-lg text-muted-foreground max-w-2xl mx-auto", children: description })] })), _jsxs("div", { className: "relative group", children: [_jsx("div", { ref: scrollRef, className: "flex gap-6 overflow-x-auto snap-x snap-mandatory scrollbar-none pb-4 -mx-4 px-4", style: { scrollbarWidth: 'none' }, children: children }), _jsx("button", { onClick: () => scroll('left'), className: "absolute left-2 top-1/2 -translate-y-1/2 w-10 h-10 rounded-full glass-2 flex items-center justify-center opacity-0 group-hover:opacity-100 transition-opacity", "aria-label": "Previous", children: _jsx(ChevronLeft, { className: "size-5 text-foreground" }) }), _jsx("button", { onClick: () => scroll('right'), className: "absolute right-2 top-1/2 -translate-y-1/2 w-10 h-10 rounded-full glass-2 flex items-center justify-center opacity-0 group-hover:opacity-100 transition-opacity", "aria-label": "Next", children: _jsx(ChevronRight, { className: "size-5 text-foreground" }) })] })] }) }));
21
+ return (_jsx(Section, { id: id, children: _jsxs("div", { className: "container-main", children: [(title || description) && (_jsxs("div", { className: "text-center mb-12", children: [title && _jsx("h2", { className: "text-3xl md:text-4xl font-bold text-foreground mb-4", children: title }), description && _jsx("p", { className: "text-lg text-muted-foreground max-w-2xl mx-auto", children: description })] })), _jsxs("div", { className: "relative group", children: [_jsx("div", { ref: scrollRef, className: "flex gap-6 overflow-x-auto snap-x snap-mandatory scrollbar-none pb-4 -mx-4 px-4", style: { scrollbarWidth: 'none' }, children: children }), _jsx("button", { onClick: () => scroll('left'), className: "absolute left-2 top-1/2 -translate-y-1/2 w-10 h-10 rounded-full glass-2 flex items-center justify-center opacity-0 group-hover:opacity-100 transition-opacity", "aria-label": "Previous", children: _jsx(ChevronLeft, { className: "size-5 text-foreground" }) }), _jsx("button", { onClick: () => scroll('right'), className: "absolute right-2 top-1/2 -translate-y-1/2 w-10 h-10 rounded-full glass-2 flex items-center justify-center opacity-0 group-hover:opacity-100 transition-opacity", "aria-label": "Next", children: _jsx(ChevronRight, { className: "size-5 text-foreground" }) })] })] }) }));
21
22
  }
22
23
  //# sourceMappingURL=Carousel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Carousel.js","sourceRoot":"","sources":["../../src/marketing/Carousel.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAc,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAUxC,MAAM,UAAU,YAAY,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAqB;IACrF,OAAO,CACL,eAAK,SAAS,EAAC,sFAAsF,aAClG,KAAK,IAAI,cAAK,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,IAAI,EAAE,EAAE,SAAS,EAAC,kCAAkC,GAAG,EAC5F,eAAK,SAAS,EAAC,KAAK,aACjB,KAAK,IAAI,aAAI,SAAS,EAAC,4CAA4C,YAAE,KAAK,GAAM,EAChF,WAAW,IAAI,YAAG,SAAS,EAAC,+CAA+C,YAAE,WAAW,GAAK,EAC7F,QAAQ,IACL,IACF,CACP,CAAC;AACJ,CAAC;AAQD,MAAM,UAAU,QAAQ,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAiB;IACtE,MAAM,SAAS,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAE/C,MAAM,MAAM,GAAG,CAAC,SAA2B,EAAE,EAAE;QAC7C,IAAI,CAAC,SAAS,CAAC,OAAO;YAAE,OAAO;QAC/B,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,WAAW,GAAG,GAAG,CAAC;QACnD,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC;YACzB,IAAI,EAAE,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;YAC7C,QAAQ,EAAE,QAAQ;SACnB,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,OAAO,CACL,KAAC,OAAO,cACN,eAAK,SAAS,EAAC,gBAAgB,aAC5B,CAAC,KAAK,IAAI,WAAW,CAAC,IAAI,CACzB,eAAK,SAAS,EAAC,mBAAmB,aAC/B,KAAK,IAAI,aAAI,SAAS,EAAC,qDAAqD,YAAE,KAAK,GAAM,EACzF,WAAW,IAAI,YAAG,SAAS,EAAC,iDAAiD,YAAE,WAAW,GAAK,IAC5F,CACP,EACD,eAAK,SAAS,EAAC,gBAAgB,aAC7B,cACE,GAAG,EAAE,SAAS,EACd,SAAS,EAAC,iFAAiF,EAC3F,KAAK,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,YAEhC,QAAQ,GACL,EACN,iBACE,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAC7B,SAAS,EAAC,+JAA+J,gBAC9J,UAAU,YAErB,KAAC,WAAW,IAAC,SAAS,EAAC,wBAAwB,GAAG,GAC3C,EACT,iBACE,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAC9B,SAAS,EAAC,gKAAgK,gBAC/J,MAAM,YAEjB,KAAC,YAAY,IAAC,SAAS,EAAC,wBAAwB,GAAG,GAC5C,IACL,IACF,GACE,CACX,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"Carousel.js","sourceRoot":"","sources":["../../src/marketing/Carousel.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAc,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,UAAU,EAAoB,MAAM,mBAAmB,CAAC;AASjE,MAAM,UAAU,YAAY,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAqB;IACrF,OAAO,CACL,eAAK,SAAS,EAAC,sFAAsF,aAClG,KAAK,IAAI,KAAC,UAAU,IAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,IAAI,EAAE,EAAE,SAAS,EAAC,kCAAkC,GAAG,EACnG,eAAK,SAAS,EAAC,KAAK,aACjB,KAAK,IAAI,aAAI,SAAS,EAAC,4CAA4C,YAAE,KAAK,GAAM,EAChF,WAAW,IAAI,YAAG,SAAS,EAAC,+CAA+C,YAAE,WAAW,GAAK,EAC7F,QAAQ,IACL,IACF,CACP,CAAC;AACJ,CAAC;AASD,MAAM,UAAU,QAAQ,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAiB;IAC1E,MAAM,SAAS,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAE/C,MAAM,MAAM,GAAG,CAAC,SAA2B,EAAE,EAAE;QAC7C,IAAI,CAAC,SAAS,CAAC,OAAO;YAAE,OAAO;QAC/B,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,WAAW,GAAG,GAAG,CAAC;QACnD,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC;YACzB,IAAI,EAAE,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;YAC7C,QAAQ,EAAE,QAAQ;SACnB,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,OAAO,CACL,KAAC,OAAO,IAAC,EAAE,EAAE,EAAE,YACb,eAAK,SAAS,EAAC,gBAAgB,aAC5B,CAAC,KAAK,IAAI,WAAW,CAAC,IAAI,CACzB,eAAK,SAAS,EAAC,mBAAmB,aAC/B,KAAK,IAAI,aAAI,SAAS,EAAC,qDAAqD,YAAE,KAAK,GAAM,EACzF,WAAW,IAAI,YAAG,SAAS,EAAC,iDAAiD,YAAE,WAAW,GAAK,IAC5F,CACP,EACD,eAAK,SAAS,EAAC,gBAAgB,aAC7B,cACE,GAAG,EAAE,SAAS,EACd,SAAS,EAAC,iFAAiF,EAC3F,KAAK,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,YAEhC,QAAQ,GACL,EACN,iBACE,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAC7B,SAAS,EAAC,+JAA+J,gBAC9J,UAAU,YAErB,KAAC,WAAW,IAAC,SAAS,EAAC,wBAAwB,GAAG,GAC3C,EACT,iBACE,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAC9B,SAAS,EAAC,gKAAgK,gBAC/J,MAAM,YAEjB,KAAC,YAAY,IAAC,SAAS,EAAC,wBAAwB,GAAG,GAC5C,IACL,IACF,GACE,CACX,CAAC;AACJ,CAAC"}
@@ -1,5 +1,6 @@
1
+ import { type ImageSource } from '../ui/theme-image';
1
2
  interface LogoItem {
2
- src: string;
3
+ src: ImageSource;
3
4
  alt: string;
4
5
  width?: number;
5
6
  name?: string;
@@ -7,10 +8,11 @@ interface LogoItem {
7
8
  badge?: string;
8
9
  }
9
10
  interface CompaniesProps {
11
+ id?: string;
10
12
  title?: string;
11
13
  logos: LogoItem[];
12
14
  variant?: 'marquee' | 'inline';
13
15
  }
14
- export declare function Companies({ title, logos, variant }: CompaniesProps): import("react/jsx-runtime").JSX.Element;
16
+ export declare function Companies({ id, title, logos, variant }: CompaniesProps): import("react/jsx-runtime").JSX.Element;
15
17
  export {};
16
18
  //# sourceMappingURL=Companies.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Companies.d.ts","sourceRoot":"","sources":["../../src/marketing/Companies.tsx"],"names":[],"mappings":"AAKA,UAAU,QAAQ;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,cAAc;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,OAAO,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;CAChC;AAED,wBAAgB,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,OAAmB,EAAE,EAAE,cAAc,2CAkD9E"}
1
+ {"version":3,"file":"Companies.d.ts","sourceRoot":"","sources":["../../src/marketing/Companies.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAc,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEjE,UAAU,QAAQ;IAChB,GAAG,EAAE,WAAW,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,cAAc;IACtB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,OAAO,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;CAChC;AAED,wBAAgB,SAAS,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,OAAmB,EAAE,EAAE,cAAc,2CAkDlF"}
@@ -2,10 +2,11 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Section } from '../ui/section';
3
3
  import { Badge } from '../ui/badge';
4
4
  import { cn } from '../lib/utils';
5
- export function Companies({ title, logos, variant = 'marquee' }) {
5
+ import { ThemeImage } from '../ui/theme-image';
6
+ export function Companies({ id, title, logos, variant = 'marquee' }) {
6
7
  if (variant === 'inline') {
7
- return (_jsx(Section, { className: "py-12", children: _jsxs("div", { className: "container-main flex flex-col items-center gap-8 text-center", children: [title && _jsx("h2", { className: "text-base font-semibold sm:text-2xl text-foreground", children: title }), _jsx("div", { className: "flex flex-wrap items-center justify-center gap-8", children: logos.map((logo, i) => (_jsxs("div", { className: "flex items-center gap-2 text-sm font-medium", children: [_jsx("img", { src: logo.src, alt: logo.alt, width: logo.width || 32, height: logo.width || 32, className: "h-6 w-6 object-contain opacity-70 dark:invert" }), logo.name && _jsx("span", { className: cn(!logo.name && 'sr-only'), children: logo.name }), logo.version && _jsx("span", { className: "text-muted-foreground", children: logo.version }), logo.badge && (_jsx(Badge, { variant: "brand", className: "text-xs px-1.5 py-0.5", children: logo.badge }))] }, i))) })] }) }));
8
+ return (_jsx(Section, { id: id, className: "py-12", children: _jsxs("div", { className: "container-main flex flex-col items-center gap-8 text-center", children: [title && _jsx("h2", { className: "text-base font-semibold sm:text-2xl text-foreground", children: title }), _jsx("div", { className: "flex flex-wrap items-center justify-center gap-8", children: logos.map((logo, i) => (_jsxs("div", { className: "flex items-center gap-2 text-sm font-medium", children: [_jsx(ThemeImage, { src: logo.src, alt: logo.alt, width: logo.width || 32, height: logo.width || 32, className: cn("h-6 w-6 object-contain opacity-70", typeof logo.src === 'string' && "dark:invert") }), logo.name && _jsx("span", { className: cn(!logo.name && 'sr-only'), children: logo.name }), logo.version && _jsx("span", { className: "text-muted-foreground", children: logo.version }), logo.badge && (_jsx(Badge, { variant: "brand", className: "text-xs px-1.5 py-0.5", children: logo.badge }))] }, i))) })] }) }));
8
9
  }
9
- return (_jsx(Section, { className: "py-12", children: _jsxs("div", { className: "container-main", children: [title && _jsx("p", { className: "text-center text-sm text-muted-foreground mb-8", children: title }), _jsx("div", { className: "relative fade-x overflow-hidden", children: _jsxs("div", { className: "flex gap-12 items-center", style: { '--marquee-gap': '3rem' }, children: [_jsx("div", { className: "flex gap-12 items-center animate-marquee", children: logos.map((logo, i) => (_jsx("img", { src: logo.src, alt: logo.alt, width: logo.width || 120, className: "h-8 w-auto object-contain grayscale opacity-60 hover:grayscale-0 hover:opacity-100 transition-all" }, i))) }), _jsx("div", { className: "flex gap-12 items-center animate-marquee", "aria-hidden": true, children: logos.map((logo, i) => (_jsx("img", { src: logo.src, alt: "", width: logo.width || 120, className: "h-8 w-auto object-contain grayscale opacity-60" }, i))) })] }) })] }) }));
10
+ return (_jsx(Section, { id: id, className: "py-12", children: _jsxs("div", { className: "container-main", children: [title && _jsx("p", { className: "text-center text-sm text-muted-foreground mb-8", children: title }), _jsx("div", { className: "relative fade-x overflow-hidden", children: _jsxs("div", { className: "flex gap-12 items-center", style: { '--marquee-gap': '3rem' }, children: [_jsx("div", { className: "flex gap-12 items-center animate-marquee", children: logos.map((logo, i) => (_jsx(ThemeImage, { src: logo.src, alt: logo.alt, width: logo.width || 120, className: "h-8 w-auto object-contain grayscale opacity-60 hover:grayscale-0 hover:opacity-100 transition-all" }, i))) }), _jsx("div", { className: "flex gap-12 items-center animate-marquee", "aria-hidden": true, children: logos.map((logo, i) => (_jsx(ThemeImage, { src: logo.src, alt: "", width: logo.width || 120, className: "h-8 w-auto object-contain grayscale opacity-60" }, i))) })] }) })] }) }));
10
11
  }
11
12
  //# sourceMappingURL=Companies.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Companies.js","sourceRoot":"","sources":["../../src/marketing/Companies.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAiBlC,MAAM,UAAU,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,GAAG,SAAS,EAAkB;IAC7E,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,OAAO,CACL,KAAC,OAAO,IAAC,SAAS,EAAC,OAAO,YACxB,eAAK,SAAS,EAAC,6DAA6D,aACzE,KAAK,IAAI,aAAI,SAAS,EAAC,qDAAqD,YAAE,KAAK,GAAM,EAC1F,cAAK,SAAS,EAAC,kDAAkD,YAC9D,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CACtB,eAAa,SAAS,EAAC,6CAA6C,aAClE,cACE,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE,EACvB,MAAM,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE,EACxB,SAAS,EAAC,+CAA+C,GACzD,EACD,IAAI,CAAC,IAAI,IAAI,eAAM,SAAS,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,SAAS,CAAC,YAAG,IAAI,CAAC,IAAI,GAAQ,EAC7E,IAAI,CAAC,OAAO,IAAI,eAAM,SAAS,EAAC,uBAAuB,YAAE,IAAI,CAAC,OAAO,GAAQ,EAC7E,IAAI,CAAC,KAAK,IAAI,CACb,KAAC,KAAK,IAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,uBAAuB,YAAE,IAAI,CAAC,KAAK,GAAS,CAC9E,KAZO,CAAC,CAaL,CACP,CAAC,GACE,IACF,GACE,CACX,CAAC;IACJ,CAAC;IAED,OAAO,CACL,KAAC,OAAO,IAAC,SAAS,EAAC,OAAO,YACxB,eAAK,SAAS,EAAC,gBAAgB,aAC5B,KAAK,IAAI,YAAG,SAAS,EAAC,gDAAgD,YAAE,KAAK,GAAK,EACnF,cAAK,SAAS,EAAC,iCAAiC,YAC9C,eAAK,SAAS,EAAC,0BAA0B,EAAC,KAAK,EAAE,EAAE,eAAe,EAAE,MAAM,EAAyB,aACjG,cAAK,SAAS,EAAC,0CAA0C,YACtD,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CACtB,cAAa,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,GAAG,EAAE,SAAS,EAAC,mGAAmG,IAAxK,CAAC,CAA0K,CACtL,CAAC,GACE,EACN,cAAK,SAAS,EAAC,0CAA0C,iCACtD,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CACtB,cAAa,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAC,EAAE,EAAC,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,GAAG,EAAE,SAAS,EAAC,gDAAgD,IAA7G,CAAC,CAA+G,CAC3H,CAAC,GACE,IACF,GACF,IACF,GACE,CACX,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"Companies.js","sourceRoot":"","sources":["../../src/marketing/Companies.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,UAAU,EAAoB,MAAM,mBAAmB,CAAC;AAkBjE,MAAM,UAAU,SAAS,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,GAAG,SAAS,EAAkB;IACjF,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,OAAO,CACL,KAAC,OAAO,IAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAC,OAAO,YAChC,eAAK,SAAS,EAAC,6DAA6D,aACzE,KAAK,IAAI,aAAI,SAAS,EAAC,qDAAqD,YAAE,KAAK,GAAM,EAC1F,cAAK,SAAS,EAAC,kDAAkD,YAC9D,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CACtB,eAAa,SAAS,EAAC,6CAA6C,aAClE,KAAC,UAAU,IACT,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE,EACvB,MAAM,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE,EACxB,SAAS,EAAE,EAAE,CAAC,mCAAmC,EAAE,OAAO,IAAI,CAAC,GAAG,KAAK,QAAQ,IAAI,aAAa,CAAC,GACjG,EACD,IAAI,CAAC,IAAI,IAAI,eAAM,SAAS,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,SAAS,CAAC,YAAG,IAAI,CAAC,IAAI,GAAQ,EAC7E,IAAI,CAAC,OAAO,IAAI,eAAM,SAAS,EAAC,uBAAuB,YAAE,IAAI,CAAC,OAAO,GAAQ,EAC7E,IAAI,CAAC,KAAK,IAAI,CACb,KAAC,KAAK,IAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,uBAAuB,YAAE,IAAI,CAAC,KAAK,GAAS,CAC9E,KAZO,CAAC,CAaL,CACP,CAAC,GACE,IACF,GACE,CACX,CAAC;IACJ,CAAC;IAED,OAAO,CACL,KAAC,OAAO,IAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAC,OAAO,YAChC,eAAK,SAAS,EAAC,gBAAgB,aAC5B,KAAK,IAAI,YAAG,SAAS,EAAC,gDAAgD,YAAE,KAAK,GAAK,EACnF,cAAK,SAAS,EAAC,iCAAiC,YAC9C,eAAK,SAAS,EAAC,0BAA0B,EAAC,KAAK,EAAE,EAAE,eAAe,EAAE,MAAM,EAAyB,aACjG,cAAK,SAAS,EAAC,0CAA0C,YACtD,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CACtB,KAAC,UAAU,IAAS,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,GAAG,EAAE,SAAS,EAAC,mGAAmG,IAAxK,CAAC,CAA0K,CAC7L,CAAC,GACE,EACN,cAAK,SAAS,EAAC,0CAA0C,iCACtD,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CACtB,KAAC,UAAU,IAAS,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAC,EAAE,EAAC,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,GAAG,EAAE,SAAS,EAAC,gDAAgD,IAA7G,CAAC,CAA+G,CAClI,CAAC,GACE,IACF,GACF,IACF,GACE,CACX,CAAC;AACJ,CAAC"}
@@ -5,10 +5,11 @@ interface FAQItemProps {
5
5
  }
6
6
  export declare function FAQItem({ question, children }: FAQItemProps): import("react/jsx-runtime").JSX.Element;
7
7
  interface FAQProps {
8
+ id?: string;
8
9
  title?: string;
9
10
  description?: string;
10
11
  children: React.ReactNode;
11
12
  }
12
- export declare function FAQ({ title, description, children }: FAQProps): import("react/jsx-runtime").JSX.Element;
13
+ export declare function FAQ({ id, title, description, children }: FAQProps): import("react/jsx-runtime").JSX.Element;
13
14
  export {};
14
15
  //# sourceMappingURL=FAQ.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FAQ.d.ts","sourceRoot":"","sources":["../../src/marketing/FAQ.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,UAAU,YAAY;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,wBAAgB,OAAO,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,YAAY,2CAS3D;AAED,UAAU,QAAQ;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,wBAAgB,GAAG,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,QAAQ,2CAgB7D"}
1
+ {"version":3,"file":"FAQ.d.ts","sourceRoot":"","sources":["../../src/marketing/FAQ.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,UAAU,YAAY;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,wBAAgB,OAAO,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,YAAY,2CAS3D;AAED,UAAU,QAAQ;IAChB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,wBAAgB,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,QAAQ,2CAgBjE"}
@@ -5,7 +5,7 @@ import { Accordion, AccordionItem, AccordionTrigger, AccordionContent, } from '.
5
5
  export function FAQItem({ question, children }) {
6
6
  return (_jsxs(AccordionItem, { value: question, children: [_jsx(AccordionTrigger, { children: question }), _jsx(AccordionContent, { children: _jsx("div", { className: "text-muted-foreground leading-relaxed", children: children }) })] }));
7
7
  }
8
- export function FAQ({ title, description, children }) {
9
- return (_jsx(Section, { children: _jsxs("div", { className: "container-main max-w-3xl", children: [(title || description) && (_jsxs("div", { className: "text-center mb-12", children: [title && _jsx("h2", { className: "text-3xl md:text-4xl font-bold text-foreground mb-4", children: title }), description && _jsx("p", { className: "text-lg text-muted-foreground", children: description })] })), _jsx(Accordion, { type: "single", collapsible: true, children: children })] }) }));
8
+ export function FAQ({ id, title, description, children }) {
9
+ return (_jsx(Section, { id: id, children: _jsxs("div", { className: "container-main max-w-3xl", children: [(title || description) && (_jsxs("div", { className: "text-center mb-12", children: [title && _jsx("h2", { className: "text-3xl md:text-4xl font-bold text-foreground mb-4", children: title }), description && _jsx("p", { className: "text-lg text-muted-foreground", children: description })] })), _jsx(Accordion, { type: "single", collapsible: true, children: children })] }) }));
10
10
  }
11
11
  //# sourceMappingURL=FAQ.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FAQ.js","sourceRoot":"","sources":["../../src/marketing/FAQ.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAGb,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EACL,SAAS,EACT,aAAa,EACb,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AAOzB,MAAM,UAAU,OAAO,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAgB;IAC1D,OAAO,CACL,MAAC,aAAa,IAAC,KAAK,EAAE,QAAQ,aAC5B,KAAC,gBAAgB,cAAE,QAAQ,GAAoB,EAC/C,KAAC,gBAAgB,cACf,cAAK,SAAS,EAAC,uCAAuC,YAAE,QAAQ,GAAO,GACtD,IACL,CACjB,CAAC;AACJ,CAAC;AAQD,MAAM,UAAU,GAAG,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAY;IAC5D,OAAO,CACL,KAAC,OAAO,cACN,eAAK,SAAS,EAAC,0BAA0B,aACtC,CAAC,KAAK,IAAI,WAAW,CAAC,IAAI,CACzB,eAAK,SAAS,EAAC,mBAAmB,aAC/B,KAAK,IAAI,aAAI,SAAS,EAAC,qDAAqD,YAAE,KAAK,GAAM,EACzF,WAAW,IAAI,YAAG,SAAS,EAAC,+BAA+B,YAAE,WAAW,GAAK,IAC1E,CACP,EACD,KAAC,SAAS,IAAC,IAAI,EAAC,QAAQ,EAAC,WAAW,kBACjC,QAAQ,GACC,IACR,GACE,CACX,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"FAQ.js","sourceRoot":"","sources":["../../src/marketing/FAQ.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAGb,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EACL,SAAS,EACT,aAAa,EACb,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AAOzB,MAAM,UAAU,OAAO,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAgB;IAC1D,OAAO,CACL,MAAC,aAAa,IAAC,KAAK,EAAE,QAAQ,aAC5B,KAAC,gBAAgB,cAAE,QAAQ,GAAoB,EAC/C,KAAC,gBAAgB,cACf,cAAK,SAAS,EAAC,uCAAuC,YAAE,QAAQ,GAAO,GACtD,IACL,CACjB,CAAC;AACJ,CAAC;AASD,MAAM,UAAU,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAY;IAChE,OAAO,CACL,KAAC,OAAO,IAAC,EAAE,EAAE,EAAE,YACb,eAAK,SAAS,EAAC,0BAA0B,aACtC,CAAC,KAAK,IAAI,WAAW,CAAC,IAAI,CACzB,eAAK,SAAS,EAAC,mBAAmB,aAC/B,KAAK,IAAI,aAAI,SAAS,EAAC,qDAAqD,YAAE,KAAK,GAAM,EACzF,WAAW,IAAI,YAAG,SAAS,EAAC,+BAA+B,YAAE,WAAW,GAAK,IAC1E,CACP,EACD,KAAC,SAAS,IAAC,IAAI,EAAC,QAAQ,EAAC,WAAW,kBACjC,QAAQ,GACC,IACR,GACE,CACX,CAAC;AACJ,CAAC"}
@@ -6,11 +6,12 @@ interface FeatureProps {
6
6
  }
7
7
  export declare function Feature({ icon, title, description }: FeatureProps): import("react/jsx-runtime").JSX.Element;
8
8
  interface FeaturesProps {
9
+ id?: string;
9
10
  title?: string;
10
11
  description?: string;
11
12
  columns?: 2 | 3 | 4;
12
13
  children: React.ReactNode;
13
14
  }
14
- export declare function Features({ title, description, columns, children }: FeaturesProps): import("react/jsx-runtime").JSX.Element;
15
+ export declare function Features({ id, title, description, columns, children }: FeaturesProps): import("react/jsx-runtime").JSX.Element;
15
16
  export {};
16
17
  //# sourceMappingURL=Features.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Features.d.ts","sourceRoot":"","sources":["../../src/marketing/Features.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,UAAU,YAAY;IACpB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,OAAO,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,YAAY,2CAYjE;AAED,UAAU,aAAa;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACpB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,wBAAgB,QAAQ,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,OAAW,EAAE,QAAQ,EAAE,EAAE,aAAa,2CAgBpF"}
1
+ {"version":3,"file":"Features.d.ts","sourceRoot":"","sources":["../../src/marketing/Features.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,UAAU,YAAY;IACpB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,OAAO,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,YAAY,2CAYjE;AAED,UAAU,aAAa;IACrB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACpB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,wBAAgB,QAAQ,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,OAAW,EAAE,QAAQ,EAAE,EAAE,aAAa,2CAgBxF"}
@@ -3,8 +3,8 @@ import { Section } from '../ui/section';
3
3
  export function Feature({ icon, title, description }) {
4
4
  return (_jsxs("div", { className: "flex flex-col items-start p-6 rounded-xl glass-1 hover:glass-2 transition-all", children: [icon && (_jsx("div", { className: "w-10 h-10 flex items-center justify-center rounded-lg bg-primary/10 text-primary mb-4", children: icon })), _jsx("h3", { className: "text-lg font-semibold text-foreground mb-2", children: title }), _jsx("p", { className: "text-sm text-muted-foreground leading-relaxed", children: description })] }));
5
5
  }
6
- export function Features({ title, description, columns = 3, children }) {
6
+ export function Features({ id, title, description, columns = 3, children }) {
7
7
  const gridCols = { 2: 'md:grid-cols-2', 3: 'md:grid-cols-3', 4: 'md:grid-cols-2 lg:grid-cols-4' };
8
- return (_jsx(Section, { children: _jsxs("div", { className: "container-main", children: [(title || description) && (_jsxs("div", { className: "text-center mb-12", children: [title && _jsx("h2", { className: "text-3xl md:text-4xl font-bold text-foreground mb-4", children: title }), description && _jsx("p", { className: "text-lg text-muted-foreground max-w-2xl mx-auto", children: description })] })), _jsx("div", { className: `grid grid-cols-1 ${gridCols[columns]} gap-6`, children: children })] }) }));
8
+ return (_jsx(Section, { id: id, children: _jsxs("div", { className: "container-main", children: [(title || description) && (_jsxs("div", { className: "text-center mb-12", children: [title && _jsx("h2", { className: "text-3xl md:text-4xl font-bold text-foreground mb-4", children: title }), description && _jsx("p", { className: "text-lg text-muted-foreground max-w-2xl mx-auto", children: description })] })), _jsx("div", { className: `grid grid-cols-1 ${gridCols[columns]} gap-6`, children: children })] }) }));
9
9
  }
10
10
  //# sourceMappingURL=Features.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Features.js","sourceRoot":"","sources":["../../src/marketing/Features.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAQxC,MAAM,UAAU,OAAO,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAgB;IAChE,OAAO,CACL,eAAK,SAAS,EAAC,+EAA+E,aAC3F,IAAI,IAAI,CACP,cAAK,SAAS,EAAC,uFAAuF,YACnG,IAAI,GACD,CACP,EACD,aAAI,SAAS,EAAC,4CAA4C,YAAE,KAAK,GAAM,EACvE,YAAG,SAAS,EAAC,+CAA+C,YAAE,WAAW,GAAK,IAC1E,CACP,CAAC;AACJ,CAAC;AASD,MAAM,UAAU,QAAQ,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,GAAG,CAAC,EAAE,QAAQ,EAAiB;IACnF,MAAM,QAAQ,GAAG,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,+BAA+B,EAAE,CAAC;IAElG,OAAO,CACL,KAAC,OAAO,cACN,eAAK,SAAS,EAAC,gBAAgB,aAC5B,CAAC,KAAK,IAAI,WAAW,CAAC,IAAI,CACzB,eAAK,SAAS,EAAC,mBAAmB,aAC/B,KAAK,IAAI,aAAI,SAAS,EAAC,qDAAqD,YAAE,KAAK,GAAM,EACzF,WAAW,IAAI,YAAG,SAAS,EAAC,iDAAiD,YAAE,WAAW,GAAK,IAC5F,CACP,EACD,cAAK,SAAS,EAAE,oBAAoB,QAAQ,CAAC,OAAO,CAAC,QAAQ,YAAG,QAAQ,GAAO,IAC3E,GACE,CACX,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"Features.js","sourceRoot":"","sources":["../../src/marketing/Features.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAQxC,MAAM,UAAU,OAAO,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAgB;IAChE,OAAO,CACL,eAAK,SAAS,EAAC,+EAA+E,aAC3F,IAAI,IAAI,CACP,cAAK,SAAS,EAAC,uFAAuF,YACnG,IAAI,GACD,CACP,EACD,aAAI,SAAS,EAAC,4CAA4C,YAAE,KAAK,GAAM,EACvE,YAAG,SAAS,EAAC,+CAA+C,YAAE,WAAW,GAAK,IAC1E,CACP,CAAC;AACJ,CAAC;AAUD,MAAM,UAAU,QAAQ,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,GAAG,CAAC,EAAE,QAAQ,EAAiB;IACvF,MAAM,QAAQ,GAAG,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,+BAA+B,EAAE,CAAC;IAElG,OAAO,CACL,KAAC,OAAO,IAAC,EAAE,EAAE,EAAE,YACb,eAAK,SAAS,EAAC,gBAAgB,aAC5B,CAAC,KAAK,IAAI,WAAW,CAAC,IAAI,CACzB,eAAK,SAAS,EAAC,mBAAmB,aAC/B,KAAK,IAAI,aAAI,SAAS,EAAC,qDAAqD,YAAE,KAAK,GAAM,EACzF,WAAW,IAAI,YAAG,SAAS,EAAC,iDAAiD,YAAE,WAAW,GAAK,IAC5F,CACP,EACD,cAAK,SAAS,EAAE,oBAAoB,QAAQ,CAAC,OAAO,CAAC,QAAQ,YAAG,QAAQ,GAAO,IAC3E,GACE,CACX,CAAC;AACJ,CAAC"}
@@ -1,16 +1,18 @@
1
1
  import React from 'react';
2
+ import { type ImageSource } from '../ui/theme-image';
2
3
  interface GalleryItemProps {
3
- src: string;
4
+ src: ImageSource;
4
5
  alt: string;
5
6
  caption?: string;
6
7
  }
7
8
  export declare function GalleryItem({ src, alt, caption }: GalleryItemProps): import("react/jsx-runtime").JSX.Element;
8
9
  interface GalleryProps {
10
+ id?: string;
9
11
  title?: string;
10
12
  description?: string;
11
13
  columns?: 2 | 3 | 4;
12
14
  children: React.ReactNode;
13
15
  }
14
- export declare function Gallery({ title, description, columns, children }: GalleryProps): import("react/jsx-runtime").JSX.Element;
16
+ export declare function Gallery({ id, title, description, columns, children }: GalleryProps): import("react/jsx-runtime").JSX.Element;
15
17
  export {};
16
18
  //# sourceMappingURL=Gallery.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Gallery.d.ts","sourceRoot":"","sources":["../../src/marketing/Gallery.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,UAAU,gBAAgB;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,WAAW,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,gBAAgB,2CAelE;AAED,UAAU,YAAY;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACpB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,wBAAgB,OAAO,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,OAAW,EAAE,QAAQ,EAAE,EAAE,YAAY,2CAoBlF"}
1
+ {"version":3,"file":"Gallery.d.ts","sourceRoot":"","sources":["../../src/marketing/Gallery.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAc,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEjE,UAAU,gBAAgB;IACxB,GAAG,EAAE,WAAW,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,WAAW,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,gBAAgB,2CAelE;AAED,UAAU,YAAY;IACpB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACpB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,wBAAgB,OAAO,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,OAAW,EAAE,QAAQ,EAAE,EAAE,YAAY,2CAoBtF"}
@@ -1,15 +1,16 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Section } from '../ui/section';
3
3
  import { cn } from '../lib/utils';
4
+ import { ThemeImage } from '../ui/theme-image';
4
5
  export function GalleryItem({ src, alt, caption }) {
5
- return (_jsxs("figure", { className: "group overflow-hidden rounded-xl glass-1", children: [_jsx("div", { className: "overflow-hidden", children: _jsx("img", { src: src, alt: alt, className: "w-full h-auto object-cover transition-transform duration-300 group-hover:scale-105" }) }), caption && (_jsx("figcaption", { className: "p-4 text-sm text-muted-foreground", children: caption }))] }));
6
+ return (_jsxs("figure", { className: "group overflow-hidden rounded-xl glass-1", children: [_jsx("div", { className: "overflow-hidden", children: _jsx(ThemeImage, { src: src, alt: alt, className: "w-full h-auto object-cover transition-transform duration-300 group-hover:scale-105" }) }), caption && (_jsx("figcaption", { className: "p-4 text-sm text-muted-foreground", children: caption }))] }));
6
7
  }
7
- export function Gallery({ title, description, columns = 3, children }) {
8
+ export function Gallery({ id, title, description, columns = 3, children }) {
8
9
  const gridCols = {
9
10
  2: 'md:grid-cols-2',
10
11
  3: 'md:grid-cols-2 lg:grid-cols-3',
11
12
  4: 'md:grid-cols-2 lg:grid-cols-4',
12
13
  };
13
- return (_jsx(Section, { children: _jsxs("div", { className: "container-main", children: [(title || description) && (_jsxs("div", { className: "text-center mb-12", children: [title && _jsx("h2", { className: "text-3xl md:text-4xl font-bold text-foreground mb-4", children: title }), description && _jsx("p", { className: "text-lg text-muted-foreground max-w-2xl mx-auto", children: description })] })), _jsx("div", { className: cn('grid grid-cols-1 gap-6', gridCols[columns]), children: children })] }) }));
14
+ return (_jsx(Section, { id: id, children: _jsxs("div", { className: "container-main", children: [(title || description) && (_jsxs("div", { className: "text-center mb-12", children: [title && _jsx("h2", { className: "text-3xl md:text-4xl font-bold text-foreground mb-4", children: title }), description && _jsx("p", { className: "text-lg text-muted-foreground max-w-2xl mx-auto", children: description })] })), _jsx("div", { className: cn('grid grid-cols-1 gap-6', gridCols[columns]), children: children })] }) }));
14
15
  }
15
16
  //# sourceMappingURL=Gallery.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Gallery.js","sourceRoot":"","sources":["../../src/marketing/Gallery.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAQlC,MAAM,UAAU,WAAW,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAoB;IACjE,OAAO,CACL,kBAAQ,SAAS,EAAC,0CAA0C,aAC1D,cAAK,SAAS,EAAC,iBAAiB,YAC9B,cACE,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,GAAG,EACR,SAAS,EAAC,oFAAoF,GAC9F,GACE,EACL,OAAO,IAAI,CACV,qBAAY,SAAS,EAAC,mCAAmC,YAAE,OAAO,GAAc,CACjF,IACM,CACV,CAAC;AACJ,CAAC;AASD,MAAM,UAAU,OAAO,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,GAAG,CAAC,EAAE,QAAQ,EAAgB;IACjF,MAAM,QAAQ,GAAG;QACf,CAAC,EAAE,gBAAgB;QACnB,CAAC,EAAE,+BAA+B;QAClC,CAAC,EAAE,+BAA+B;KACnC,CAAC;IAEF,OAAO,CACL,KAAC,OAAO,cACN,eAAK,SAAS,EAAC,gBAAgB,aAC5B,CAAC,KAAK,IAAI,WAAW,CAAC,IAAI,CACzB,eAAK,SAAS,EAAC,mBAAmB,aAC/B,KAAK,IAAI,aAAI,SAAS,EAAC,qDAAqD,YAAE,KAAK,GAAM,EACzF,WAAW,IAAI,YAAG,SAAS,EAAC,iDAAiD,YAAE,WAAW,GAAK,IAC5F,CACP,EACD,cAAK,SAAS,EAAE,EAAE,CAAC,wBAAwB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,YAAG,QAAQ,GAAO,IAC7E,GACE,CACX,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"Gallery.js","sourceRoot":"","sources":["../../src/marketing/Gallery.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,UAAU,EAAoB,MAAM,mBAAmB,CAAC;AAQjE,MAAM,UAAU,WAAW,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAoB;IACjE,OAAO,CACL,kBAAQ,SAAS,EAAC,0CAA0C,aAC1D,cAAK,SAAS,EAAC,iBAAiB,YAC9B,KAAC,UAAU,IACT,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,GAAG,EACR,SAAS,EAAC,oFAAoF,GAC9F,GACE,EACL,OAAO,IAAI,CACV,qBAAY,SAAS,EAAC,mCAAmC,YAAE,OAAO,GAAc,CACjF,IACM,CACV,CAAC;AACJ,CAAC;AAUD,MAAM,UAAU,OAAO,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,GAAG,CAAC,EAAE,QAAQ,EAAgB;IACrF,MAAM,QAAQ,GAAG;QACf,CAAC,EAAE,gBAAgB;QACnB,CAAC,EAAE,+BAA+B;QAClC,CAAC,EAAE,+BAA+B;KACnC,CAAC;IAEF,OAAO,CACL,KAAC,OAAO,IAAC,EAAE,EAAE,EAAE,YACb,eAAK,SAAS,EAAC,gBAAgB,aAC5B,CAAC,KAAK,IAAI,WAAW,CAAC,IAAI,CACzB,eAAK,SAAS,EAAC,mBAAmB,aAC/B,KAAK,IAAI,aAAI,SAAS,EAAC,qDAAqD,YAAE,KAAK,GAAM,EACzF,WAAW,IAAI,YAAG,SAAS,EAAC,iDAAiD,YAAE,WAAW,GAAK,IAC5F,CACP,EACD,cAAK,SAAS,EAAE,EAAE,CAAC,wBAAwB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,YAAG,QAAQ,GAAO,IAC7E,GACE,CACX,CAAC;AACJ,CAAC"}
@@ -1,5 +1,7 @@
1
1
  import React from 'react';
2
+ import { type ImageSource } from '../ui/theme-image';
2
3
  interface HeroProps {
4
+ id?: string;
3
5
  title: string;
4
6
  description: string;
5
7
  primaryCta?: {
@@ -11,9 +13,9 @@ interface HeroProps {
11
13
  href: string;
12
14
  };
13
15
  badge?: string;
14
- image?: string;
16
+ image?: ImageSource;
15
17
  children?: React.ReactNode;
16
18
  }
17
- export declare function Hero({ title, description, primaryCta, secondaryCta, badge, image, children }: HeroProps): import("react/jsx-runtime").JSX.Element;
19
+ export declare function Hero({ id, title, description, primaryCta, secondaryCta, badge, image, children }: HeroProps): import("react/jsx-runtime").JSX.Element;
18
20
  export {};
19
21
  //# sourceMappingURL=Hero.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Hero.d.ts","sourceRoot":"","sources":["../../src/marketing/Hero.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,UAAU,SAAS;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7C,YAAY,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,wBAAgB,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,SAAS,2CAyCvG"}
1
+ {"version":3,"file":"Hero.d.ts","sourceRoot":"","sources":["../../src/marketing/Hero.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAO1B,OAAO,EAAc,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEjE,UAAU,SAAS;IACjB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7C,YAAY,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,wBAAgB,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,SAAS,2CAyC3G"}
@@ -4,7 +4,8 @@ import { Badge } from '../ui/badge';
4
4
  import { Button } from '../ui/button';
5
5
  import { Mockup } from '../ui/mockup';
6
6
  import Glow from '../ui/glow';
7
- export function Hero({ title, description, primaryCta, secondaryCta, badge, image, children }) {
8
- return (_jsxs(Section, { className: "relative overflow-hidden", children: [_jsx(Glow, { variant: "top" }), _jsxs("div", { className: "container-main relative z-10", children: [_jsxs("div", { className: "max-w-3xl mx-auto text-center", children: [badge && (_jsx(Badge, { variant: "outline", className: "animate-appear mb-6", children: badge })), _jsx("h1", { className: "text-4xl md:text-6xl font-bold tracking-tight text-foreground mb-6 animate-appear [animation-delay:100ms]", children: title }), _jsx("p", { className: "text-lg md:text-xl text-muted-foreground mb-8 max-w-2xl mx-auto animate-appear [animation-delay:200ms]", children: description }), _jsxs("div", { className: "flex flex-col sm:flex-row items-center justify-center gap-4 animate-appear [animation-delay:300ms]", children: [primaryCta && (_jsx(Button, { asChild: true, size: "lg", children: _jsx("a", { href: primaryCta.href, children: primaryCta.label }) })), secondaryCta && (_jsx(Button, { asChild: true, variant: "glow", size: "lg", children: _jsx("a", { href: secondaryCta.href, children: secondaryCta.label }) }))] }), children] }), image && (_jsx("div", { className: "mt-16 animate-appear-zoom [animation-delay:400ms]", children: _jsx(Mockup, { type: "responsive", className: "shadow-mockup w-full", children: _jsx("img", { src: image, alt: "", className: "w-full" }) }) }))] })] }));
7
+ import { ThemeImage } from '../ui/theme-image';
8
+ export function Hero({ id, title, description, primaryCta, secondaryCta, badge, image, children }) {
9
+ return (_jsxs(Section, { id: id, className: "relative overflow-hidden", children: [_jsx(Glow, { variant: "top" }), _jsxs("div", { className: "container-main relative z-10", children: [_jsxs("div", { className: "max-w-3xl mx-auto text-center", children: [badge && (_jsx(Badge, { variant: "outline", className: "animate-appear mb-6", children: badge })), _jsx("h1", { className: "text-4xl md:text-6xl font-bold tracking-tight text-foreground mb-6 animate-appear [animation-delay:100ms]", children: title }), _jsx("p", { className: "text-lg md:text-xl text-muted-foreground mb-8 max-w-2xl mx-auto animate-appear [animation-delay:200ms]", children: description }), _jsxs("div", { className: "flex flex-col sm:flex-row items-center justify-center gap-4 animate-appear [animation-delay:300ms]", children: [primaryCta && (_jsx(Button, { asChild: true, size: "lg", children: _jsx("a", { href: primaryCta.href, children: primaryCta.label }) })), secondaryCta && (_jsx(Button, { asChild: true, variant: "glow", size: "lg", children: _jsx("a", { href: secondaryCta.href, children: secondaryCta.label }) }))] }), children] }), image && (_jsx("div", { className: "mt-16 animate-appear-zoom [animation-delay:400ms]", children: _jsx(Mockup, { type: "responsive", className: "shadow-mockup w-full", children: _jsx(ThemeImage, { src: image, alt: "", className: "w-full" }) }) }))] })] }));
9
10
  }
10
11
  //# sourceMappingURL=Hero.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Hero.js","sourceRoot":"","sources":["../../src/marketing/Hero.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,IAAI,MAAM,YAAY,CAAC;AAY9B,MAAM,UAAU,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAa;IACtG,OAAO,CACL,MAAC,OAAO,IAAC,SAAS,EAAC,0BAA0B,aAC3C,KAAC,IAAI,IAAC,OAAO,EAAC,KAAK,GAAG,EACtB,eAAK,SAAS,EAAC,8BAA8B,aAC3C,eAAK,SAAS,EAAC,+BAA+B,aAC3C,KAAK,IAAI,CACR,KAAC,KAAK,IAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,qBAAqB,YACrD,KAAK,GACA,CACT,EACD,aAAI,SAAS,EAAC,2GAA2G,YACtH,KAAK,GACH,EACL,YAAG,SAAS,EAAC,wGAAwG,YAClH,WAAW,GACV,EACJ,eAAK,SAAS,EAAC,oGAAoG,aAChH,UAAU,IAAI,CACb,KAAC,MAAM,IAAC,OAAO,QAAC,IAAI,EAAC,IAAI,YACvB,YAAG,IAAI,EAAE,UAAU,CAAC,IAAI,YAAG,UAAU,CAAC,KAAK,GAAK,GACzC,CACV,EACA,YAAY,IAAI,CACf,KAAC,MAAM,IAAC,OAAO,QAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,YACtC,YAAG,IAAI,EAAE,YAAY,CAAC,IAAI,YAAG,YAAY,CAAC,KAAK,GAAK,GAC7C,CACV,IACG,EACL,QAAQ,IACL,EACL,KAAK,IAAI,CACR,cAAK,SAAS,EAAC,mDAAmD,YAChE,KAAC,MAAM,IAAC,IAAI,EAAC,YAAY,EAAC,SAAS,EAAC,sBAAsB,YACxD,cAAK,GAAG,EAAE,KAAK,EAAE,GAAG,EAAC,EAAE,EAAC,SAAS,EAAC,QAAQ,GAAG,GACtC,GACL,CACP,IACG,IACE,CACX,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"Hero.js","sourceRoot":"","sources":["../../src/marketing/Hero.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,IAAI,MAAM,YAAY,CAAC;AAC9B,OAAO,EAAE,UAAU,EAAoB,MAAM,mBAAmB,CAAC;AAajE,MAAM,UAAU,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAa;IAC1G,OAAO,CACL,MAAC,OAAO,IAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAC,0BAA0B,aACnD,KAAC,IAAI,IAAC,OAAO,EAAC,KAAK,GAAG,EACtB,eAAK,SAAS,EAAC,8BAA8B,aAC3C,eAAK,SAAS,EAAC,+BAA+B,aAC3C,KAAK,IAAI,CACR,KAAC,KAAK,IAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,qBAAqB,YACrD,KAAK,GACA,CACT,EACD,aAAI,SAAS,EAAC,2GAA2G,YACtH,KAAK,GACH,EACL,YAAG,SAAS,EAAC,wGAAwG,YAClH,WAAW,GACV,EACJ,eAAK,SAAS,EAAC,oGAAoG,aAChH,UAAU,IAAI,CACb,KAAC,MAAM,IAAC,OAAO,QAAC,IAAI,EAAC,IAAI,YACvB,YAAG,IAAI,EAAE,UAAU,CAAC,IAAI,YAAG,UAAU,CAAC,KAAK,GAAK,GACzC,CACV,EACA,YAAY,IAAI,CACf,KAAC,MAAM,IAAC,OAAO,QAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,YACtC,YAAG,IAAI,EAAE,YAAY,CAAC,IAAI,YAAG,YAAY,CAAC,KAAK,GAAK,GAC7C,CACV,IACG,EACL,QAAQ,IACL,EACL,KAAK,IAAI,CACR,cAAK,SAAS,EAAC,mDAAmD,YAChE,KAAC,MAAM,IAAC,IAAI,EAAC,YAAY,EAAC,SAAS,EAAC,sBAAsB,YACxD,KAAC,UAAU,IAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAC,EAAE,EAAC,SAAS,EAAC,QAAQ,GAAG,GAC7C,GACL,CACP,IACG,IACE,CACX,CAAC;AACJ,CAAC"}
@@ -1,10 +1,11 @@
1
1
  import React from 'react';
2
2
  interface PageHeroProps {
3
+ id?: string;
3
4
  title: string;
4
5
  description?: string;
5
6
  badge?: string;
6
7
  children?: React.ReactNode;
7
8
  }
8
- export declare function PageHero({ title, description, badge, children }: PageHeroProps): import("react/jsx-runtime").JSX.Element;
9
+ export declare function PageHero({ id, title, description, badge, children }: PageHeroProps): import("react/jsx-runtime").JSX.Element;
9
10
  export {};
10
11
  //# sourceMappingURL=PageHero.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PageHero.d.ts","sourceRoot":"","sources":["../../src/marketing/PageHero.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,UAAU,aAAa;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,wBAAgB,QAAQ,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,aAAa,2CAe9E"}
1
+ {"version":3,"file":"PageHero.d.ts","sourceRoot":"","sources":["../../src/marketing/PageHero.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,UAAU,aAAa;IACrB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,wBAAgB,QAAQ,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,aAAa,2CAelF"}
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Section } from '../ui/section';
3
3
  import { Badge } from '../ui/badge';
4
- export function PageHero({ title, description, badge, children }) {
5
- return (_jsx(Section, { className: "py-16 md:py-24", children: _jsxs("div", { className: "container-main text-center", children: [badge && (_jsx(Badge, { variant: "outline", className: "mb-4", children: badge })), _jsx("h1", { className: "text-3xl md:text-5xl font-bold tracking-tight text-foreground mb-4", children: title }), description && _jsx("p", { className: "text-lg text-muted-foreground max-w-2xl mx-auto", children: description }), children] }) }));
4
+ export function PageHero({ id, title, description, badge, children }) {
5
+ return (_jsx(Section, { id: id, className: "py-16 md:py-24", children: _jsxs("div", { className: "container-main text-center", children: [badge && (_jsx(Badge, { variant: "outline", className: "mb-4", children: badge })), _jsx("h1", { className: "text-3xl md:text-5xl font-bold tracking-tight text-foreground mb-4", children: title }), description && _jsx("p", { className: "text-lg text-muted-foreground max-w-2xl mx-auto", children: description }), children] }) }));
6
6
  }
7
7
  //# sourceMappingURL=PageHero.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PageHero.js","sourceRoot":"","sources":["../../src/marketing/PageHero.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AASpC,MAAM,UAAU,QAAQ,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAiB;IAC7E,OAAO,CACL,KAAC,OAAO,IAAC,SAAS,EAAC,gBAAgB,YACjC,eAAK,SAAS,EAAC,4BAA4B,aACxC,KAAK,IAAI,CACR,KAAC,KAAK,IAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,YACtC,KAAK,GACA,CACT,EACD,aAAI,SAAS,EAAC,oEAAoE,YAAE,KAAK,GAAM,EAC9F,WAAW,IAAI,YAAG,SAAS,EAAC,iDAAiD,YAAE,WAAW,GAAK,EAC/F,QAAQ,IACL,GACE,CACX,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"PageHero.js","sourceRoot":"","sources":["../../src/marketing/PageHero.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAUpC,MAAM,UAAU,QAAQ,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAiB;IACjF,OAAO,CACL,KAAC,OAAO,IAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAC,gBAAgB,YACzC,eAAK,SAAS,EAAC,4BAA4B,aACxC,KAAK,IAAI,CACR,KAAC,KAAK,IAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,YACtC,KAAK,GACA,CACT,EACD,aAAI,SAAS,EAAC,oEAAoE,YAAE,KAAK,GAAM,EAC9F,WAAW,IAAI,YAAG,SAAS,EAAC,iDAAiD,YAAE,WAAW,GAAK,EAC/F,QAAQ,IACL,GACE,CACX,CAAC;AACJ,CAAC"}