@ugurdemirel/landcraft 0.1.3 → 0.1.4

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 (116) hide show
  1. package/dist/index.cjs +2 -2
  2. package/dist/index.cjs.map +1 -1
  3. package/dist/index.d.ts +38 -21
  4. package/dist/index.js +2276 -1956
  5. package/dist/index.js.map +1 -1
  6. package/dist/styles.css +3 -0
  7. package/package.json +1 -1
  8. package/src/components/Blog/BlogCard.tsx +12 -0
  9. package/src/components/Blog/BlogSection.tsx +95 -0
  10. package/src/components/Blog/index.ts +8 -0
  11. package/src/components/Blog/parts.tsx +38 -0
  12. package/src/components/Blog/types.ts +42 -0
  13. package/src/components/Blog/variants/Card.tsx +62 -0
  14. package/src/components/Blog/variants/Row.tsx +41 -0
  15. package/src/components/CTA/CTA.tsx +12 -0
  16. package/src/components/CTA/index.ts +2 -0
  17. package/src/components/CTA/parts.tsx +26 -0
  18. package/src/components/CTA/types.ts +12 -0
  19. package/src/components/CTA/variants/Inverse.tsx +50 -0
  20. package/src/components/CTA/variants/Panel.tsx +60 -0
  21. package/src/components/CTA/variants/Surface.tsx +34 -0
  22. package/src/components/FAQ/FAQ.tsx +48 -0
  23. package/src/components/FAQ/index.ts +2 -0
  24. package/src/components/FAQ/parts.tsx +74 -0
  25. package/src/components/FAQ/types.ts +18 -0
  26. package/src/components/FAQ/variants/Accordion.tsx +46 -0
  27. package/src/components/FAQ/variants/Cards.tsx +40 -0
  28. package/src/components/FAQ/variants/Split.tsx +44 -0
  29. package/src/components/Features/FeatureCard.tsx +44 -0
  30. package/src/components/Features/FeatureGrid.tsx +14 -0
  31. package/src/components/Features/index.ts +3 -0
  32. package/src/components/Features/parts.ts +15 -0
  33. package/src/components/Features/types.ts +25 -0
  34. package/src/components/Features/variants/Bento.tsx +32 -0
  35. package/src/components/Features/variants/Columns.tsx +21 -0
  36. package/src/components/Features/variants/EditorialRows.tsx +38 -0
  37. package/src/components/Footer/Footer.tsx +11 -0
  38. package/src/components/Footer/index.ts +2 -0
  39. package/src/components/Footer/parts.tsx +101 -0
  40. package/src/components/Footer/types.ts +32 -0
  41. package/src/components/Footer/variants/Classic.tsx +59 -0
  42. package/src/components/Footer/variants/Editorial.tsx +47 -0
  43. package/src/components/Footer/variants/Minimal.tsx +33 -0
  44. package/src/components/Hero/Hero.tsx +12 -0
  45. package/src/components/Hero/index.ts +2 -0
  46. package/src/components/Hero/parts.tsx +29 -0
  47. package/src/components/Hero/types.ts +20 -0
  48. package/src/components/Hero/variants/Centered.tsx +54 -0
  49. package/src/components/Hero/variants/Split.tsx +53 -0
  50. package/src/components/Hero/variants/Statement.tsx +60 -0
  51. package/src/components/LanguageSwitcher/LanguageSwitcher.tsx +37 -0
  52. package/src/components/LanguageSwitcher/index.ts +6 -0
  53. package/src/components/LanguageSwitcher/parts.tsx +144 -0
  54. package/src/components/LanguageSwitcher/types.ts +40 -0
  55. package/src/components/LanguageSwitcher/useLanguageSwitcher.ts +23 -0
  56. package/src/components/LanguageSwitcher/variants/Dropdown.tsx +88 -0
  57. package/src/components/LanguageSwitcher/variants/Modal.tsx +56 -0
  58. package/src/components/LogoCloud/LogoCloud.tsx +14 -0
  59. package/src/components/LogoCloud/index.ts +2 -0
  60. package/src/components/LogoCloud/parts.tsx +32 -0
  61. package/src/components/LogoCloud/types.ts +16 -0
  62. package/src/components/LogoCloud/variants/Marquee.tsx +30 -0
  63. package/src/components/LogoCloud/variants/Quiet.tsx +26 -0
  64. package/src/components/LogoCloud/variants/Strip.tsx +25 -0
  65. package/src/components/{MegaMenu.tsx → MegaMenu/MegaMenu.tsx} +100 -127
  66. package/src/components/MegaMenu/index.ts +9 -0
  67. package/src/components/MegaMenu/types.ts +56 -0
  68. package/src/components/Modal.tsx +1 -0
  69. package/src/components/Navbar/Navbar.tsx +185 -0
  70. package/src/components/Navbar/index.ts +2 -0
  71. package/src/components/Navbar/types.ts +30 -0
  72. package/src/components/Newsletter/Newsletter.tsx +12 -0
  73. package/src/components/Newsletter/index.ts +2 -0
  74. package/src/components/Newsletter/parts.tsx +23 -0
  75. package/src/components/Newsletter/types.ts +12 -0
  76. package/src/components/Newsletter/useNewsletterForm.ts +27 -0
  77. package/src/components/Newsletter/variants/Card.tsx +62 -0
  78. package/src/components/Newsletter/variants/Inline.tsx +54 -0
  79. package/src/components/Newsletter/variants/Underline.tsx +52 -0
  80. package/src/components/Pricing/Pricing.tsx +37 -0
  81. package/src/components/Pricing/index.ts +2 -0
  82. package/src/components/Pricing/parts.tsx +132 -0
  83. package/src/components/Pricing/types.ts +28 -0
  84. package/src/components/Pricing/variants/Bento.tsx +72 -0
  85. package/src/components/Pricing/variants/Cards.tsx +79 -0
  86. package/src/components/Pricing/variants/Compact.tsx +69 -0
  87. package/src/components/Stats/Stats.tsx +16 -0
  88. package/src/components/Stats/index.ts +2 -0
  89. package/src/components/Stats/parts.tsx +29 -0
  90. package/src/components/Stats/types.ts +23 -0
  91. package/src/components/Stats/variants/Cells.tsx +34 -0
  92. package/src/components/Stats/variants/Editorial.tsx +41 -0
  93. package/src/components/Stats/variants/Hairline.tsx +31 -0
  94. package/src/components/Stats/variants/Ticker.tsx +36 -0
  95. package/src/components/Testimonials/TestimonialCard.tsx +61 -0
  96. package/src/components/Testimonials/Testimonials.tsx +14 -0
  97. package/src/components/Testimonials/index.ts +3 -0
  98. package/src/components/Testimonials/parts.ts +7 -0
  99. package/src/components/Testimonials/types.ts +24 -0
  100. package/src/components/Testimonials/variants/Carousel.tsx +94 -0
  101. package/src/components/Testimonials/variants/Grid.tsx +19 -0
  102. package/src/components/Testimonials/variants/Marquee.tsx +28 -0
  103. package/src/utils/useTokenForeground.ts +1 -0
  104. package/src/components/Blog.tsx +0 -251
  105. package/src/components/CTA.tsx +0 -155
  106. package/src/components/FAQ.tsx +0 -163
  107. package/src/components/Features.tsx +0 -153
  108. package/src/components/Footer.tsx +0 -185
  109. package/src/components/Hero.tsx +0 -169
  110. package/src/components/LanguageSwitcher.tsx +0 -223
  111. package/src/components/LogoCloud.tsx +0 -100
  112. package/src/components/Navbar.tsx +0 -195
  113. package/src/components/Newsletter.tsx +0 -180
  114. package/src/components/Pricing.tsx +0 -336
  115. package/src/components/Stats.tsx +0 -181
  116. package/src/components/Testimonials.tsx +0 -205
package/dist/index.d.ts CHANGED
@@ -74,7 +74,6 @@ export declare interface BlogSectionProps extends Omit<HTMLAttributes<HTMLElemen
74
74
  description?: ReactNode;
75
75
  showAllLabel?: string;
76
76
  showAllHref?: string;
77
- /** Component used to render the "show all" link and post cards. Defaults to `<a>`. Pass your router's `<Link>` (Next.js, Remix, React Router…) for framework-aware navigation. */
78
77
  LinkComponent?: ElementType;
79
78
  }
80
79
 
@@ -183,12 +182,14 @@ export declare const Cpu: (props: IconProps) => JSX_2.Element;
183
182
 
184
183
  export declare const CTA: ForwardRefExoticComponent<CTAProps & RefAttributes<HTMLElement>>;
185
184
 
185
+ declare type CTAOption = "panel" | "surface" | "inverse";
186
+
186
187
  export declare interface CTAProps extends Omit<HTMLAttributes<HTMLElement>, "title"> {
187
188
  title: ReactNode;
188
189
  description?: ReactNode;
189
190
  action?: ReactNode;
190
191
  secondaryAction?: ReactNode;
191
- option?: "panel" | "surface" | "inverse";
192
+ option?: CTAOption;
192
193
  align?: "left" | "center";
193
194
  }
194
195
 
@@ -210,9 +211,11 @@ export declare interface FaqItem {
210
211
  answer: string;
211
212
  }
212
213
 
214
+ declare type FAQOption = "accordion" | "split" | "cards";
215
+
213
216
  export declare interface FAQProps extends Omit<HTMLAttributes<HTMLDivElement>, "title"> {
214
217
  items: FaqItem[];
215
- option?: "accordion" | "split" | "cards";
218
+ option?: FAQOption;
216
219
  allowMultiple?: boolean;
217
220
  defaultOpen?: number[];
218
221
  eyebrow?: ReactNode;
@@ -233,9 +236,11 @@ export declare interface FeatureCardProps extends Omit<HTMLAttributes<HTMLDivEle
233
236
 
234
237
  export declare const FeatureGrid: ForwardRefExoticComponent<FeatureGridProps & RefAttributes<HTMLDivElement>>;
235
238
 
239
+ declare type FeatureGridOption = "columns" | "bento" | "editorialRows";
240
+
236
241
  export declare interface FeatureGridProps extends Omit<HTMLAttributes<HTMLDivElement>, "title"> {
237
242
  features: FeatureItem[];
238
- option?: "columns" | "bento" | "editorialRows";
243
+ option?: FeatureGridOption;
239
244
  columns?: 2 | 3 | 4;
240
245
  }
241
246
 
@@ -247,7 +252,7 @@ export declare interface FeatureItem {
247
252
  }
248
253
 
249
254
  export declare const Footer: {
250
- ({ className, brand, logo, logoSrc, logoAlt, logoClassName, description, columns, socials, bottom, languageSwitcher, option, badge, LinkComponent, ...props }: FooterProps): JSX_2.Element;
255
+ ({ option, ...props }: FooterProps): JSX_2.Element;
251
256
  displayName: string;
252
257
  };
253
258
 
@@ -261,7 +266,7 @@ export declare interface FooterLink {
261
266
  href: string;
262
267
  }
263
268
 
264
- export declare interface FooterProps extends HTMLAttributes<HTMLElement> {
269
+ export declare interface FooterProps extends Omit<HTMLAttributes<HTMLElement>, "title"> {
265
270
  brand?: ReactNode;
266
271
  /** Custom logo node (component, <img>, inline SVG…). Replaces the wordmark. */
267
272
  logo?: ReactNode;
@@ -303,7 +308,7 @@ export declare interface HeroMeta {
303
308
  }
304
309
 
305
310
  export declare interface HeroProps extends Omit<HTMLAttributes<HTMLElement>, "title"> {
306
- variant?: "split" | "centered" | "statement";
311
+ variant?: HeroVariant;
307
312
  eyebrow?: ReactNode;
308
313
  title: ReactNode;
309
314
  description?: ReactNode;
@@ -314,6 +319,8 @@ export declare interface HeroProps extends Omit<HTMLAttributes<HTMLElement>, "ti
314
319
  meta?: HeroMeta[];
315
320
  }
316
321
 
322
+ declare type HeroVariant = "split" | "centered" | "statement";
323
+
317
324
  /**
318
325
  * Minimal 1.5px stroke icon set (Lucide/Heroicons inspired).
319
326
  * No emojis — the library ships a single, consistent icon vocabulary.
@@ -333,7 +340,7 @@ export declare interface LanguageOption {
333
340
  }
334
341
 
335
342
  export declare const LanguageSwitcher: {
336
- ({ className, languages, option, value, defaultValue, onChange, align, modalTitle, showFlag, inverse, ...props }: LanguageSwitcherProps): JSX_2.Element | null;
343
+ ({ option, languages, value, defaultValue, onChange, ...props }: LanguageSwitcherProps): JSX_2.Element | null;
337
344
  displayName: string;
338
345
  };
339
346
 
@@ -367,11 +374,13 @@ export { Lock_2 as Lock }
367
374
 
368
375
  export declare const LogoCloud: ForwardRefExoticComponent<LogoCloudProps & RefAttributes<HTMLDivElement>>;
369
376
 
377
+ declare type LogoCloudOption = "quiet" | "marquee" | "strip";
378
+
370
379
  export declare interface LogoCloudProps extends HTMLAttributes<HTMLDivElement> {
371
380
  logos: LogoItem[];
372
381
  title?: string;
373
382
  /** Visual option: quiet list · infinite marquee · hairline strip */
374
- option?: "quiet" | "marquee" | "strip";
383
+ option?: LogoCloudOption;
375
384
  }
376
385
 
377
386
  export declare interface LogoItem {
@@ -419,7 +428,7 @@ export declare interface MegaMenuLink {
419
428
  }
420
429
 
421
430
  export declare interface MegaMenuProps extends Omit<HTMLAttributes<HTMLElement>, "title"> {
422
- variant?: "classic" | "floating" | "inverse";
431
+ variant?: MegaMenuVariant;
423
432
  /** Wordmark rendered when no logo is supplied. */
424
433
  brand?: ReactNode;
425
434
  /** Custom logo node (component, <img>, inline SVG…). Replaces the wordmark. */
@@ -440,6 +449,8 @@ export declare interface MegaMenuProps extends Omit<HTMLAttributes<HTMLElement>,
440
449
  LinkComponent?: ElementType;
441
450
  }
442
451
 
452
+ declare type MegaMenuVariant = "classic" | "floating" | "inverse";
453
+
443
454
  export declare const Menu: (props: IconProps) => JSX_2.Element;
444
455
 
445
456
  /**
@@ -470,7 +481,7 @@ export declare const Navbar: {
470
481
  };
471
482
 
472
483
  export declare interface NavbarProps extends Omit<HTMLAttributes<HTMLElement>, "title"> {
473
- variant?: "classic" | "floating" | "inverse";
484
+ variant?: NavbarVariant;
474
485
  /** Wordmark or fallback text rendered when no logo is supplied. */
475
486
  brand?: ReactNode;
476
487
  /** Custom logo node (component, <img>, inline SVG…). Replaces the wordmark. */
@@ -491,18 +502,22 @@ export declare interface NavbarProps extends Omit<HTMLAttributes<HTMLElement>, "
491
502
  LinkComponent?: ElementType;
492
503
  }
493
504
 
505
+ declare type NavbarVariant = "classic" | "floating" | "inverse";
506
+
494
507
  export declare interface NavLink {
495
508
  label: string;
496
509
  href: string;
497
510
  }
498
511
 
499
512
  export declare const Newsletter: {
500
- ({ className, option, placeholder, buttonLabel, successMessage, note, onSubmit, ...props }: NewsletterProps): JSX_2.Element;
513
+ (props: NewsletterProps): JSX_2.Element;
501
514
  displayName: string;
502
515
  };
503
516
 
517
+ declare type NewsletterOption = "inline" | "card" | "underline";
518
+
504
519
  export declare interface NewsletterProps extends Omit<HTMLAttributes<HTMLFormElement>, "onSubmit"> {
505
- option?: "inline" | "card" | "underline";
520
+ option?: NewsletterOption;
506
521
  placeholder?: string;
507
522
  buttonLabel?: string;
508
523
  successMessage?: string;
@@ -533,9 +548,11 @@ export declare const Pricing: {
533
548
  displayName: string;
534
549
  };
535
550
 
551
+ declare type PricingOption = "cards" | "bento" | "compact";
552
+
536
553
  export declare interface PricingProps extends Omit<HTMLAttributes<HTMLDivElement>, "onSelect"> {
537
554
  plans: Plan[];
538
- option?: "cards" | "bento" | "compact";
555
+ option?: PricingOption;
539
556
  defaultBilling?: "monthly" | "yearly";
540
557
  onSelect?: (plan: Plan, billing: "monthly" | "yearly") => void;
541
558
  }
@@ -636,9 +653,11 @@ export declare interface Stat {
636
653
 
637
654
  export declare const Stats: ForwardRefExoticComponent<StatsProps & RefAttributes<HTMLDListElement>>;
638
655
 
656
+ declare type StatsOption = "editorial" | "hairline" | "cells" | "ticker";
657
+
639
658
  export declare interface StatsProps extends HTMLAttributes<HTMLDListElement> {
640
659
  stats: Stat[];
641
- option?: "editorial" | "hairline" | "cells" | "ticker";
660
+ option?: StatsOption;
642
661
  columns?: 2 | 3 | 4;
643
662
  }
644
663
 
@@ -661,15 +680,13 @@ export declare interface TestimonialCardProps extends HTMLAttributes<HTMLElement
661
680
  testimonial: Testimonial;
662
681
  }
663
682
 
664
- export declare const Testimonials: {
665
- ({ className, items, option, ...props }: TestimonialsProps): JSX_2.Element;
666
- displayName: string;
667
- };
683
+ export declare const Testimonials: ForwardRefExoticComponent<TestimonialsProps & RefAttributes<HTMLDivElement>>;
684
+
685
+ declare type TestimonialsOption = "grid" | "carousel" | "marquee";
668
686
 
669
- /** Holds per-option rendering + controls together. */
670
687
  export declare interface TestimonialsProps extends HTMLAttributes<HTMLDivElement> {
671
688
  items: Testimonial[];
672
- option?: "grid" | "carousel" | "marquee";
689
+ option?: TestimonialsOption;
673
690
  title?: string;
674
691
  }
675
692