@ugurdemirel/landcraft 0.1.2 → 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.
- package/dist/index.cjs +2 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +41 -22
- package/dist/index.js +2261 -1937
- package/dist/index.js.map +1 -1
- package/dist/styles.css +3 -0
- package/package.json +1 -1
- package/src/components/Blog/BlogCard.tsx +12 -0
- package/src/components/Blog/BlogSection.tsx +95 -0
- package/src/components/Blog/index.ts +8 -0
- package/src/components/Blog/parts.tsx +38 -0
- package/src/components/Blog/types.ts +42 -0
- package/src/components/Blog/variants/Card.tsx +62 -0
- package/src/components/Blog/variants/Row.tsx +41 -0
- package/src/components/CTA/CTA.tsx +12 -0
- package/src/components/CTA/index.ts +2 -0
- package/src/components/CTA/parts.tsx +26 -0
- package/src/components/CTA/types.ts +12 -0
- package/src/components/CTA/variants/Inverse.tsx +50 -0
- package/src/components/CTA/variants/Panel.tsx +60 -0
- package/src/components/CTA/variants/Surface.tsx +34 -0
- package/src/components/FAQ/FAQ.tsx +48 -0
- package/src/components/FAQ/index.ts +2 -0
- package/src/components/FAQ/parts.tsx +74 -0
- package/src/components/FAQ/types.ts +18 -0
- package/src/components/FAQ/variants/Accordion.tsx +46 -0
- package/src/components/FAQ/variants/Cards.tsx +40 -0
- package/src/components/FAQ/variants/Split.tsx +44 -0
- package/src/components/Features/FeatureCard.tsx +44 -0
- package/src/components/Features/FeatureGrid.tsx +14 -0
- package/src/components/Features/index.ts +3 -0
- package/src/components/Features/parts.ts +15 -0
- package/src/components/Features/types.ts +25 -0
- package/src/components/Features/variants/Bento.tsx +32 -0
- package/src/components/Features/variants/Columns.tsx +21 -0
- package/src/components/Features/variants/EditorialRows.tsx +38 -0
- package/src/components/Footer/Footer.tsx +11 -0
- package/src/components/Footer/index.ts +2 -0
- package/src/components/Footer/parts.tsx +101 -0
- package/src/components/Footer/types.ts +32 -0
- package/src/components/Footer/variants/Classic.tsx +59 -0
- package/src/components/Footer/variants/Editorial.tsx +47 -0
- package/src/components/Footer/variants/Minimal.tsx +33 -0
- package/src/components/Hero/Hero.tsx +12 -0
- package/src/components/Hero/index.ts +2 -0
- package/src/components/Hero/parts.tsx +29 -0
- package/src/components/Hero/types.ts +20 -0
- package/src/components/Hero/variants/Centered.tsx +54 -0
- package/src/components/Hero/variants/Split.tsx +53 -0
- package/src/components/Hero/variants/Statement.tsx +60 -0
- package/src/components/LanguageSwitcher/LanguageSwitcher.tsx +37 -0
- package/src/components/LanguageSwitcher/index.ts +6 -0
- package/src/components/LanguageSwitcher/parts.tsx +144 -0
- package/src/components/LanguageSwitcher/types.ts +40 -0
- package/src/components/LanguageSwitcher/useLanguageSwitcher.ts +23 -0
- package/src/components/LanguageSwitcher/variants/Dropdown.tsx +88 -0
- package/src/components/LanguageSwitcher/variants/Modal.tsx +56 -0
- package/src/components/LogoCloud/LogoCloud.tsx +14 -0
- package/src/components/LogoCloud/index.ts +2 -0
- package/src/components/LogoCloud/parts.tsx +32 -0
- package/src/components/LogoCloud/types.ts +16 -0
- package/src/components/LogoCloud/variants/Marquee.tsx +30 -0
- package/src/components/LogoCloud/variants/Quiet.tsx +26 -0
- package/src/components/LogoCloud/variants/Strip.tsx +25 -0
- package/src/components/{MegaMenu.tsx → MegaMenu/MegaMenu.tsx} +108 -126
- package/src/components/MegaMenu/index.ts +9 -0
- package/src/components/MegaMenu/types.ts +56 -0
- package/src/components/Modal.tsx +1 -0
- package/src/components/Navbar/Navbar.tsx +185 -0
- package/src/components/Navbar/index.ts +2 -0
- package/src/components/Navbar/types.ts +30 -0
- package/src/components/Newsletter/Newsletter.tsx +12 -0
- package/src/components/Newsletter/index.ts +2 -0
- package/src/components/Newsletter/parts.tsx +23 -0
- package/src/components/Newsletter/types.ts +12 -0
- package/src/components/Newsletter/useNewsletterForm.ts +27 -0
- package/src/components/Newsletter/variants/Card.tsx +62 -0
- package/src/components/Newsletter/variants/Inline.tsx +54 -0
- package/src/components/Newsletter/variants/Underline.tsx +52 -0
- package/src/components/Pricing/Pricing.tsx +37 -0
- package/src/components/Pricing/index.ts +2 -0
- package/src/components/Pricing/parts.tsx +132 -0
- package/src/components/Pricing/types.ts +28 -0
- package/src/components/Pricing/variants/Bento.tsx +72 -0
- package/src/components/Pricing/variants/Cards.tsx +79 -0
- package/src/components/Pricing/variants/Compact.tsx +69 -0
- package/src/components/Stats/Stats.tsx +16 -0
- package/src/components/Stats/index.ts +2 -0
- package/src/components/Stats/parts.tsx +29 -0
- package/src/components/Stats/types.ts +23 -0
- package/src/components/Stats/variants/Cells.tsx +34 -0
- package/src/components/Stats/variants/Editorial.tsx +41 -0
- package/src/components/Stats/variants/Hairline.tsx +31 -0
- package/src/components/Stats/variants/Ticker.tsx +36 -0
- package/src/components/Testimonials/TestimonialCard.tsx +61 -0
- package/src/components/Testimonials/Testimonials.tsx +14 -0
- package/src/components/Testimonials/index.ts +3 -0
- package/src/components/Testimonials/parts.ts +7 -0
- package/src/components/Testimonials/types.ts +24 -0
- package/src/components/Testimonials/variants/Carousel.tsx +94 -0
- package/src/components/Testimonials/variants/Grid.tsx +19 -0
- package/src/components/Testimonials/variants/Marquee.tsx +28 -0
- package/src/utils/useTokenForeground.ts +1 -0
- package/src/components/Blog.tsx +0 -251
- package/src/components/CTA.tsx +0 -155
- package/src/components/FAQ.tsx +0 -163
- package/src/components/Features.tsx +0 -153
- package/src/components/Footer.tsx +0 -185
- package/src/components/Hero.tsx +0 -169
- package/src/components/LanguageSwitcher.tsx +0 -223
- package/src/components/LogoCloud.tsx +0 -100
- package/src/components/Navbar.tsx +0 -195
- package/src/components/Newsletter.tsx +0 -180
- package/src/components/Pricing.tsx +0 -336
- package/src/components/Stats.tsx +0 -181
- 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?:
|
|
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?:
|
|
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?:
|
|
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
|
-
({
|
|
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?:
|
|
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
|
-
({
|
|
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?:
|
|
383
|
+
option?: LogoCloudOption;
|
|
375
384
|
}
|
|
376
385
|
|
|
377
386
|
export declare interface LogoItem {
|
|
@@ -383,7 +392,7 @@ export declare interface LogoItem {
|
|
|
383
392
|
export declare const Mail: (props: IconProps) => JSX_2.Element;
|
|
384
393
|
|
|
385
394
|
export declare const MegaMenu: {
|
|
386
|
-
({ className, variant, brand, logo, logoSrc, logoAlt, logoClassName, brandHref, items, actions, cta, sticky, LinkComponent, onKeyDown, ...props }: MegaMenuProps): JSX_2.Element;
|
|
395
|
+
({ className, variant, brand, logo, logoSrc, logoAlt, logoClassName, brandHref, items, actions, cta, languageSwitcher, sticky, LinkComponent, onKeyDown, ...props }: MegaMenuProps): JSX_2.Element;
|
|
387
396
|
displayName: string;
|
|
388
397
|
};
|
|
389
398
|
|
|
@@ -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?:
|
|
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. */
|
|
@@ -433,11 +442,15 @@ export declare interface MegaMenuProps extends Omit<HTMLAttributes<HTMLElement>,
|
|
|
433
442
|
/** Rendered at the right side of the bar (desktop) and inside the mobile panel. */
|
|
434
443
|
actions?: ReactNode;
|
|
435
444
|
cta?: ReactNode;
|
|
445
|
+
/** Optional language switcher rendered on the right (desktop) and beside the menu button (mobile). */
|
|
446
|
+
languageSwitcher?: ReactNode;
|
|
436
447
|
sticky?: boolean;
|
|
437
448
|
/** Component used to render brand, trigger and panel links. Defaults to `<a>`. Pass your router's `<Link>` (Next.js, Remix, React Router…) for framework-aware navigation. */
|
|
438
449
|
LinkComponent?: ElementType;
|
|
439
450
|
}
|
|
440
451
|
|
|
452
|
+
declare type MegaMenuVariant = "classic" | "floating" | "inverse";
|
|
453
|
+
|
|
441
454
|
export declare const Menu: (props: IconProps) => JSX_2.Element;
|
|
442
455
|
|
|
443
456
|
/**
|
|
@@ -468,7 +481,7 @@ export declare const Navbar: {
|
|
|
468
481
|
};
|
|
469
482
|
|
|
470
483
|
export declare interface NavbarProps extends Omit<HTMLAttributes<HTMLElement>, "title"> {
|
|
471
|
-
variant?:
|
|
484
|
+
variant?: NavbarVariant;
|
|
472
485
|
/** Wordmark or fallback text rendered when no logo is supplied. */
|
|
473
486
|
brand?: ReactNode;
|
|
474
487
|
/** Custom logo node (component, <img>, inline SVG…). Replaces the wordmark. */
|
|
@@ -489,18 +502,22 @@ export declare interface NavbarProps extends Omit<HTMLAttributes<HTMLElement>, "
|
|
|
489
502
|
LinkComponent?: ElementType;
|
|
490
503
|
}
|
|
491
504
|
|
|
505
|
+
declare type NavbarVariant = "classic" | "floating" | "inverse";
|
|
506
|
+
|
|
492
507
|
export declare interface NavLink {
|
|
493
508
|
label: string;
|
|
494
509
|
href: string;
|
|
495
510
|
}
|
|
496
511
|
|
|
497
512
|
export declare const Newsletter: {
|
|
498
|
-
(
|
|
513
|
+
(props: NewsletterProps): JSX_2.Element;
|
|
499
514
|
displayName: string;
|
|
500
515
|
};
|
|
501
516
|
|
|
517
|
+
declare type NewsletterOption = "inline" | "card" | "underline";
|
|
518
|
+
|
|
502
519
|
export declare interface NewsletterProps extends Omit<HTMLAttributes<HTMLFormElement>, "onSubmit"> {
|
|
503
|
-
option?:
|
|
520
|
+
option?: NewsletterOption;
|
|
504
521
|
placeholder?: string;
|
|
505
522
|
buttonLabel?: string;
|
|
506
523
|
successMessage?: string;
|
|
@@ -531,9 +548,11 @@ export declare const Pricing: {
|
|
|
531
548
|
displayName: string;
|
|
532
549
|
};
|
|
533
550
|
|
|
551
|
+
declare type PricingOption = "cards" | "bento" | "compact";
|
|
552
|
+
|
|
534
553
|
export declare interface PricingProps extends Omit<HTMLAttributes<HTMLDivElement>, "onSelect"> {
|
|
535
554
|
plans: Plan[];
|
|
536
|
-
option?:
|
|
555
|
+
option?: PricingOption;
|
|
537
556
|
defaultBilling?: "monthly" | "yearly";
|
|
538
557
|
onSelect?: (plan: Plan, billing: "monthly" | "yearly") => void;
|
|
539
558
|
}
|
|
@@ -634,9 +653,11 @@ export declare interface Stat {
|
|
|
634
653
|
|
|
635
654
|
export declare const Stats: ForwardRefExoticComponent<StatsProps & RefAttributes<HTMLDListElement>>;
|
|
636
655
|
|
|
656
|
+
declare type StatsOption = "editorial" | "hairline" | "cells" | "ticker";
|
|
657
|
+
|
|
637
658
|
export declare interface StatsProps extends HTMLAttributes<HTMLDListElement> {
|
|
638
659
|
stats: Stat[];
|
|
639
|
-
option?:
|
|
660
|
+
option?: StatsOption;
|
|
640
661
|
columns?: 2 | 3 | 4;
|
|
641
662
|
}
|
|
642
663
|
|
|
@@ -659,15 +680,13 @@ export declare interface TestimonialCardProps extends HTMLAttributes<HTMLElement
|
|
|
659
680
|
testimonial: Testimonial;
|
|
660
681
|
}
|
|
661
682
|
|
|
662
|
-
export declare const Testimonials:
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
};
|
|
683
|
+
export declare const Testimonials: ForwardRefExoticComponent<TestimonialsProps & RefAttributes<HTMLDivElement>>;
|
|
684
|
+
|
|
685
|
+
declare type TestimonialsOption = "grid" | "carousel" | "marquee";
|
|
666
686
|
|
|
667
|
-
/** Holds per-option rendering + controls together. */
|
|
668
687
|
export declare interface TestimonialsProps extends HTMLAttributes<HTMLDivElement> {
|
|
669
688
|
items: Testimonial[];
|
|
670
|
-
option?:
|
|
689
|
+
option?: TestimonialsOption;
|
|
671
690
|
title?: string;
|
|
672
691
|
}
|
|
673
692
|
|