@orion-ds/react 1.0.1 → 1.0.2
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/components/Accordion/Accordion.d.ts +18 -0
- package/dist/components/Accordion/Accordion.d.ts.map +1 -0
- package/dist/components/Accordion/Accordion.types.d.ts +92 -0
- package/dist/components/Accordion/Accordion.types.d.ts.map +1 -0
- package/dist/components/Accordion/index.d.ts +6 -0
- package/dist/components/Accordion/index.d.ts.map +1 -0
- package/dist/components/Alert/Alert.d.ts +1 -0
- package/dist/components/Alert/Alert.d.ts.map +1 -1
- package/dist/components/Card/Card.d.ts +5 -1
- package/dist/components/Card/Card.d.ts.map +1 -1
- package/dist/components/Card/Card.types.d.ts +43 -1
- package/dist/components/Card/Card.types.d.ts.map +1 -1
- package/dist/components/Checkbox/Checkbox.d.ts.map +1 -1
- package/dist/components/Chip/Chip.d.ts +15 -0
- package/dist/components/Chip/Chip.d.ts.map +1 -0
- package/dist/components/Chip/Chip.types.d.ts +68 -0
- package/dist/components/Chip/Chip.types.d.ts.map +1 -0
- package/dist/components/Chip/index.d.ts +6 -0
- package/dist/components/Chip/index.d.ts.map +1 -0
- package/dist/components/Combobox/Combobox.d.ts +21 -0
- package/dist/components/Combobox/Combobox.d.ts.map +1 -0
- package/dist/components/Combobox/Combobox.types.d.ts +153 -0
- package/dist/components/Combobox/Combobox.types.d.ts.map +1 -0
- package/dist/components/Combobox/index.d.ts +6 -0
- package/dist/components/Combobox/index.d.ts.map +1 -0
- package/dist/components/Divider/Divider.d.ts +15 -0
- package/dist/components/Divider/Divider.d.ts.map +1 -0
- package/dist/components/Divider/Divider.types.d.ts +46 -0
- package/dist/components/Divider/Divider.types.d.ts.map +1 -0
- package/dist/components/Divider/index.d.ts +6 -0
- package/dist/components/Divider/index.d.ts.map +1 -0
- package/dist/components/Drawer/Drawer.d.ts +23 -0
- package/dist/components/Drawer/Drawer.d.ts.map +1 -0
- package/dist/components/Drawer/Drawer.types.d.ts +83 -0
- package/dist/components/Drawer/Drawer.types.d.ts.map +1 -0
- package/dist/components/Drawer/index.d.ts +6 -0
- package/dist/components/Drawer/index.d.ts.map +1 -0
- package/dist/components/Dropdown/Dropdown.d.ts +19 -0
- package/dist/components/Dropdown/Dropdown.d.ts.map +1 -0
- package/dist/components/Dropdown/Dropdown.types.d.ts +119 -0
- package/dist/components/Dropdown/Dropdown.types.d.ts.map +1 -0
- package/dist/components/Dropdown/index.d.ts +6 -0
- package/dist/components/Dropdown/index.d.ts.map +1 -0
- package/dist/components/EmptyState/EmptyState.d.ts +18 -0
- package/dist/components/EmptyState/EmptyState.d.ts.map +1 -0
- package/dist/components/EmptyState/EmptyState.types.d.ts +51 -0
- package/dist/components/EmptyState/EmptyState.types.d.ts.map +1 -0
- package/dist/components/EmptyState/index.d.ts +6 -0
- package/dist/components/EmptyState/index.d.ts.map +1 -0
- package/dist/components/Icon/Icon.d.ts +37 -0
- package/dist/components/Icon/Icon.d.ts.map +1 -0
- package/dist/components/Icon/Icon.types.d.ts +102 -0
- package/dist/components/Icon/Icon.types.d.ts.map +1 -0
- package/dist/components/Icon/index.d.ts +6 -0
- package/dist/components/Icon/index.d.ts.map +1 -0
- package/dist/components/IconGallery/IconGallery.d.ts +6 -8
- package/dist/components/IconGallery/IconGallery.d.ts.map +1 -1
- package/dist/components/IconGallery/IconGallery.types.d.ts +39 -0
- package/dist/components/IconGallery/IconGallery.types.d.ts.map +1 -0
- package/dist/components/IconGallery/index.d.ts +6 -0
- package/dist/components/IconGallery/index.d.ts.map +1 -0
- package/dist/components/Link/Link.d.ts +15 -0
- package/dist/components/Link/Link.d.ts.map +1 -0
- package/dist/components/Link/Link.types.d.ts +59 -0
- package/dist/components/Link/Link.types.d.ts.map +1 -0
- package/dist/components/Link/index.d.ts +6 -0
- package/dist/components/Link/index.d.ts.map +1 -0
- package/dist/components/List/List.d.ts +19 -0
- package/dist/components/List/List.d.ts.map +1 -0
- package/dist/components/List/List.types.d.ts +117 -0
- package/dist/components/List/List.types.d.ts.map +1 -0
- package/dist/components/List/index.d.ts +6 -0
- package/dist/components/List/index.d.ts.map +1 -0
- package/dist/components/Pagination/Pagination.d.ts +17 -0
- package/dist/components/Pagination/Pagination.d.ts.map +1 -0
- package/dist/components/Pagination/Pagination.types.d.ts +62 -0
- package/dist/components/Pagination/Pagination.types.d.ts.map +1 -0
- package/dist/components/Pagination/index.d.ts +6 -0
- package/dist/components/Pagination/index.d.ts.map +1 -0
- package/dist/components/Popover/Popover.d.ts +17 -0
- package/dist/components/Popover/Popover.d.ts.map +1 -0
- package/dist/components/Popover/Popover.types.d.ts +100 -0
- package/dist/components/Popover/Popover.types.d.ts.map +1 -0
- package/dist/components/Popover/index.d.ts +6 -0
- package/dist/components/Popover/index.d.ts.map +1 -0
- package/dist/components/SearchInput/SearchInput.d.ts +18 -0
- package/dist/components/SearchInput/SearchInput.d.ts.map +1 -0
- package/dist/components/SearchInput/SearchInput.types.d.ts +73 -0
- package/dist/components/SearchInput/SearchInput.types.d.ts.map +1 -0
- package/dist/components/SearchInput/index.d.ts +6 -0
- package/dist/components/SearchInput/index.d.ts.map +1 -0
- package/dist/components/Skeleton/Skeleton.d.ts +15 -0
- package/dist/components/Skeleton/Skeleton.d.ts.map +1 -0
- package/dist/components/Skeleton/Skeleton.types.d.ts +56 -0
- package/dist/components/Skeleton/Skeleton.types.d.ts.map +1 -0
- package/dist/components/Skeleton/index.d.ts +6 -0
- package/dist/components/Skeleton/index.d.ts.map +1 -0
- package/dist/components/Slider/Slider.d.ts +18 -0
- package/dist/components/Slider/Slider.d.ts.map +1 -0
- package/dist/components/Slider/Slider.types.d.ts +98 -0
- package/dist/components/Slider/Slider.types.d.ts.map +1 -0
- package/dist/components/Slider/index.d.ts +6 -0
- package/dist/components/Slider/index.d.ts.map +1 -0
- package/dist/components/Stepper/Stepper.d.ts +20 -0
- package/dist/components/Stepper/Stepper.d.ts.map +1 -0
- package/dist/components/Stepper/Stepper.types.d.ts +135 -0
- package/dist/components/Stepper/Stepper.types.d.ts.map +1 -0
- package/dist/components/Stepper/index.d.ts +6 -0
- package/dist/components/Stepper/index.d.ts.map +1 -0
- package/dist/components/Table/Table.types.d.ts +2 -2
- package/dist/components/Table/Table.types.d.ts.map +1 -1
- package/dist/components/Toast/Toast.d.ts +33 -0
- package/dist/components/Toast/Toast.d.ts.map +1 -0
- package/dist/components/Toast/Toast.types.d.ts +126 -0
- package/dist/components/Toast/Toast.types.d.ts.map +1 -0
- package/dist/components/Toast/index.d.ts +6 -0
- package/dist/components/Toast/index.d.ts.map +1 -0
- package/dist/components/index.d.ts +48 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/hooks/index.d.ts +14 -0
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/useClickOutside.d.ts +31 -0
- package/dist/hooks/useClickOutside.d.ts.map +1 -0
- package/dist/hooks/useCopyToClipboard.d.ts +72 -0
- package/dist/hooks/useCopyToClipboard.d.ts.map +1 -0
- package/dist/hooks/useDebounce.d.ts +58 -0
- package/dist/hooks/useDebounce.d.ts.map +1 -0
- package/dist/hooks/useDisclosure.d.ts +74 -0
- package/dist/hooks/useDisclosure.d.ts.map +1 -0
- package/dist/hooks/useKeyboard.d.ts +101 -0
- package/dist/hooks/useKeyboard.d.ts.map +1 -0
- package/dist/hooks/useLocalStorage.d.ts +48 -0
- package/dist/hooks/useLocalStorage.d.ts.map +1 -0
- package/dist/hooks/useMediaQuery.d.ts +43 -0
- package/dist/hooks/useMediaQuery.d.ts.map +1 -0
- package/dist/index.cjs +3 -3
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +54 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.mjs +16458 -12654
- package/dist/index.mjs.map +1 -1
- package/dist/react.css +1 -1
- package/dist/sections/AppDownload/AppDownload.d.ts +12 -0
- package/dist/sections/AppDownload/AppDownload.d.ts.map +1 -0
- package/dist/sections/AppDownload/AppDownload.types.d.ts +118 -0
- package/dist/sections/AppDownload/AppDownload.types.d.ts.map +1 -0
- package/dist/sections/AppDownload/index.d.ts +3 -0
- package/dist/sections/AppDownload/index.d.ts.map +1 -0
- package/dist/sections/Banner/Banner.d.ts +12 -0
- package/dist/sections/Banner/Banner.d.ts.map +1 -0
- package/dist/sections/Banner/Banner.types.d.ts +105 -0
- package/dist/sections/Banner/Banner.types.d.ts.map +1 -0
- package/dist/sections/Banner/index.d.ts +3 -0
- package/dist/sections/Banner/index.d.ts.map +1 -0
- package/dist/sections/Blog/Blog.d.ts +12 -0
- package/dist/sections/Blog/Blog.d.ts.map +1 -0
- package/dist/sections/Blog/Blog.types.d.ts +143 -0
- package/dist/sections/Blog/Blog.types.d.ts.map +1 -0
- package/dist/sections/Blog/index.d.ts +3 -0
- package/dist/sections/Blog/index.d.ts.map +1 -0
- package/dist/sections/CTA/CTA.d.ts +24 -0
- package/dist/sections/CTA/CTA.d.ts.map +1 -0
- package/dist/sections/CTA/CTA.types.d.ts +74 -0
- package/dist/sections/CTA/CTA.types.d.ts.map +1 -0
- package/dist/sections/CTA/index.d.ts +6 -0
- package/dist/sections/CTA/index.d.ts.map +1 -0
- package/dist/sections/Carousel/Carousel.d.ts +36 -0
- package/dist/sections/Carousel/Carousel.d.ts.map +1 -0
- package/dist/sections/Carousel/Carousel.types.d.ts +160 -0
- package/dist/sections/Carousel/Carousel.types.d.ts.map +1 -0
- package/dist/sections/Carousel/CarouselCard.d.ts +12 -0
- package/dist/sections/Carousel/CarouselCard.d.ts.map +1 -0
- package/dist/sections/Carousel/index.d.ts +7 -0
- package/dist/sections/Carousel/index.d.ts.map +1 -0
- package/dist/sections/Comparison/Comparison.d.ts +12 -0
- package/dist/sections/Comparison/Comparison.d.ts.map +1 -0
- package/dist/sections/Comparison/Comparison.types.d.ts +124 -0
- package/dist/sections/Comparison/Comparison.types.d.ts.map +1 -0
- package/dist/sections/Comparison/index.d.ts +3 -0
- package/dist/sections/Comparison/index.d.ts.map +1 -0
- package/dist/sections/Contact/Contact.d.ts +29 -0
- package/dist/sections/Contact/Contact.d.ts.map +1 -0
- package/dist/sections/Contact/Contact.types.d.ts +137 -0
- package/dist/sections/Contact/Contact.types.d.ts.map +1 -0
- package/dist/sections/Contact/index.d.ts +6 -0
- package/dist/sections/Contact/index.d.ts.map +1 -0
- package/dist/sections/Container/Container.d.ts +17 -0
- package/dist/sections/Container/Container.d.ts.map +1 -0
- package/dist/sections/Container/Container.types.d.ts +47 -0
- package/dist/sections/Container/Container.types.d.ts.map +1 -0
- package/dist/sections/Container/index.d.ts +6 -0
- package/dist/sections/Container/index.d.ts.map +1 -0
- package/dist/sections/FAQ/FAQ.d.ts +29 -0
- package/dist/sections/FAQ/FAQ.d.ts.map +1 -0
- package/dist/sections/FAQ/FAQ.types.d.ts +121 -0
- package/dist/sections/FAQ/FAQ.types.d.ts.map +1 -0
- package/dist/sections/FAQ/FAQItemCard.d.ts +12 -0
- package/dist/sections/FAQ/FAQItemCard.d.ts.map +1 -0
- package/dist/sections/FAQ/index.d.ts +7 -0
- package/dist/sections/FAQ/index.d.ts.map +1 -0
- package/dist/sections/Features/FeatureCard.d.ts +11 -0
- package/dist/sections/Features/FeatureCard.d.ts.map +1 -0
- package/dist/sections/Features/Features.d.ts +24 -0
- package/dist/sections/Features/Features.d.ts.map +1 -0
- package/dist/sections/Features/Features.types.d.ts +104 -0
- package/dist/sections/Features/Features.types.d.ts.map +1 -0
- package/dist/sections/Features/index.d.ts +7 -0
- package/dist/sections/Features/index.d.ts.map +1 -0
- package/dist/sections/Footer/Footer.d.ts +24 -0
- package/dist/sections/Footer/Footer.d.ts.map +1 -0
- package/dist/sections/Footer/Footer.types.d.ts +133 -0
- package/dist/sections/Footer/Footer.types.d.ts.map +1 -0
- package/dist/sections/Footer/index.d.ts +6 -0
- package/dist/sections/Footer/index.d.ts.map +1 -0
- package/dist/sections/Gallery/Gallery.d.ts +12 -0
- package/dist/sections/Gallery/Gallery.d.ts.map +1 -0
- package/dist/sections/Gallery/Gallery.types.d.ts +118 -0
- package/dist/sections/Gallery/Gallery.types.d.ts.map +1 -0
- package/dist/sections/Gallery/index.d.ts +3 -0
- package/dist/sections/Gallery/index.d.ts.map +1 -0
- package/dist/sections/Hero/Hero.d.ts +22 -0
- package/dist/sections/Hero/Hero.d.ts.map +1 -0
- package/dist/sections/Hero/Hero.types.d.ts +83 -0
- package/dist/sections/Hero/Hero.types.d.ts.map +1 -0
- package/dist/sections/Hero/index.d.ts +6 -0
- package/dist/sections/Hero/index.d.ts.map +1 -0
- package/dist/sections/LogoCloud/LogoCloud.d.ts +26 -0
- package/dist/sections/LogoCloud/LogoCloud.d.ts.map +1 -0
- package/dist/sections/LogoCloud/LogoCloud.types.d.ts +105 -0
- package/dist/sections/LogoCloud/LogoCloud.types.d.ts.map +1 -0
- package/dist/sections/LogoCloud/index.d.ts +6 -0
- package/dist/sections/LogoCloud/index.d.ts.map +1 -0
- package/dist/sections/Newsletter/Newsletter.d.ts +22 -0
- package/dist/sections/Newsletter/Newsletter.d.ts.map +1 -0
- package/dist/sections/Newsletter/Newsletter.types.d.ts +101 -0
- package/dist/sections/Newsletter/Newsletter.types.d.ts.map +1 -0
- package/dist/sections/Newsletter/index.d.ts +6 -0
- package/dist/sections/Newsletter/index.d.ts.map +1 -0
- package/dist/sections/Pricing/Pricing.d.ts +35 -0
- package/dist/sections/Pricing/Pricing.d.ts.map +1 -0
- package/dist/sections/Pricing/Pricing.types.d.ts +133 -0
- package/dist/sections/Pricing/Pricing.types.d.ts.map +1 -0
- package/dist/sections/Pricing/PricingCard.d.ts +11 -0
- package/dist/sections/Pricing/PricingCard.d.ts.map +1 -0
- package/dist/sections/Pricing/index.d.ts +7 -0
- package/dist/sections/Pricing/index.d.ts.map +1 -0
- package/dist/sections/Section/Section.d.ts +19 -0
- package/dist/sections/Section/Section.d.ts.map +1 -0
- package/dist/sections/Section/Section.types.d.ts +68 -0
- package/dist/sections/Section/Section.types.d.ts.map +1 -0
- package/dist/sections/Section/index.d.ts +6 -0
- package/dist/sections/Section/index.d.ts.map +1 -0
- package/dist/sections/SocialProof/SocialProof.d.ts +12 -0
- package/dist/sections/SocialProof/SocialProof.d.ts.map +1 -0
- package/dist/sections/SocialProof/SocialProof.types.d.ts +142 -0
- package/dist/sections/SocialProof/SocialProof.types.d.ts.map +1 -0
- package/dist/sections/SocialProof/index.d.ts +3 -0
- package/dist/sections/SocialProof/index.d.ts.map +1 -0
- package/dist/sections/Stats/StatItemCard.d.ts +11 -0
- package/dist/sections/Stats/StatItemCard.d.ts.map +1 -0
- package/dist/sections/Stats/Stats.d.ts +25 -0
- package/dist/sections/Stats/Stats.d.ts.map +1 -0
- package/dist/sections/Stats/Stats.types.d.ts +125 -0
- package/dist/sections/Stats/Stats.types.d.ts.map +1 -0
- package/dist/sections/Stats/index.d.ts +7 -0
- package/dist/sections/Stats/index.d.ts.map +1 -0
- package/dist/sections/Team/Team.d.ts +31 -0
- package/dist/sections/Team/Team.d.ts.map +1 -0
- package/dist/sections/Team/Team.types.d.ts +135 -0
- package/dist/sections/Team/Team.types.d.ts.map +1 -0
- package/dist/sections/Team/TeamMemberCard.d.ts +11 -0
- package/dist/sections/Team/TeamMemberCard.d.ts.map +1 -0
- package/dist/sections/Team/index.d.ts +7 -0
- package/dist/sections/Team/index.d.ts.map +1 -0
- package/dist/sections/Testimonials/TestimonialCard.d.ts +11 -0
- package/dist/sections/Testimonials/TestimonialCard.d.ts.map +1 -0
- package/dist/sections/Testimonials/Testimonials.d.ts +31 -0
- package/dist/sections/Testimonials/Testimonials.d.ts.map +1 -0
- package/dist/sections/Testimonials/Testimonials.types.d.ts +130 -0
- package/dist/sections/Testimonials/Testimonials.types.d.ts.map +1 -0
- package/dist/sections/Testimonials/index.d.ts +7 -0
- package/dist/sections/Testimonials/index.d.ts.map +1 -0
- package/dist/sections/Timeline/Timeline.d.ts +12 -0
- package/dist/sections/Timeline/Timeline.d.ts.map +1 -0
- package/dist/sections/Timeline/Timeline.types.d.ts +102 -0
- package/dist/sections/Timeline/Timeline.types.d.ts.map +1 -0
- package/dist/sections/Timeline/index.d.ts +3 -0
- package/dist/sections/Timeline/index.d.ts.map +1 -0
- package/dist/sections/index.d.ts +80 -0
- package/dist/sections/index.d.ts.map +1 -0
- package/dist/utils/icons.d.ts +47 -46
- package/dist/utils/icons.d.ts.map +1 -1
- package/package.json +14 -14
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Comparison Section Types
|
|
3
|
+
*
|
|
4
|
+
* Type definitions for the Orion Comparison section component.
|
|
5
|
+
*/
|
|
6
|
+
import type { HTMLAttributes, ReactNode } from 'react';
|
|
7
|
+
/**
|
|
8
|
+
* Feature row for comparison
|
|
9
|
+
*/
|
|
10
|
+
export interface ComparisonFeature {
|
|
11
|
+
/**
|
|
12
|
+
* Feature name/label
|
|
13
|
+
*/
|
|
14
|
+
name: string;
|
|
15
|
+
/**
|
|
16
|
+
* Feature description (optional)
|
|
17
|
+
*/
|
|
18
|
+
description?: string;
|
|
19
|
+
/**
|
|
20
|
+
* Feature category for grouping
|
|
21
|
+
*/
|
|
22
|
+
category?: string;
|
|
23
|
+
/**
|
|
24
|
+
* Values for each column (true/false for boolean, string for text)
|
|
25
|
+
*/
|
|
26
|
+
values: (boolean | string | ReactNode)[];
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Column header for comparison
|
|
30
|
+
*/
|
|
31
|
+
export interface ComparisonColumn {
|
|
32
|
+
/**
|
|
33
|
+
* Column title (product/plan name)
|
|
34
|
+
*/
|
|
35
|
+
title: string;
|
|
36
|
+
/**
|
|
37
|
+
* Column subtitle (price, etc.)
|
|
38
|
+
*/
|
|
39
|
+
subtitle?: string;
|
|
40
|
+
/**
|
|
41
|
+
* Highlight this column
|
|
42
|
+
*/
|
|
43
|
+
highlighted?: boolean;
|
|
44
|
+
/**
|
|
45
|
+
* Badge text (e.g., "Popular", "Best Value")
|
|
46
|
+
*/
|
|
47
|
+
badge?: string;
|
|
48
|
+
/**
|
|
49
|
+
* CTA button label
|
|
50
|
+
*/
|
|
51
|
+
ctaLabel?: string;
|
|
52
|
+
/**
|
|
53
|
+
* CTA button href
|
|
54
|
+
*/
|
|
55
|
+
ctaHref?: string;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Comparison section props
|
|
59
|
+
*
|
|
60
|
+
* @example
|
|
61
|
+
* ```tsx
|
|
62
|
+
* <Comparison
|
|
63
|
+
* title="Compare Plans"
|
|
64
|
+
* columns={[
|
|
65
|
+
* { title: "Basic", subtitle: "$9/mo" },
|
|
66
|
+
* { title: "Pro", subtitle: "$29/mo", highlighted: true, badge: "Popular" },
|
|
67
|
+
* { title: "Enterprise", subtitle: "Custom" },
|
|
68
|
+
* ]}
|
|
69
|
+
* features={[
|
|
70
|
+
* { name: "Users", values: ["1", "5", "Unlimited"] },
|
|
71
|
+
* { name: "Storage", values: ["10GB", "100GB", "Unlimited"] },
|
|
72
|
+
* { name: "Support", values: [false, true, true] },
|
|
73
|
+
* ]}
|
|
74
|
+
* />
|
|
75
|
+
* ```
|
|
76
|
+
*/
|
|
77
|
+
export interface ComparisonProps extends Omit<HTMLAttributes<HTMLElement>, 'title'> {
|
|
78
|
+
/**
|
|
79
|
+
* Optional eyebrow text
|
|
80
|
+
*/
|
|
81
|
+
eyebrow?: ReactNode;
|
|
82
|
+
/**
|
|
83
|
+
* Section title
|
|
84
|
+
*/
|
|
85
|
+
title?: ReactNode;
|
|
86
|
+
/**
|
|
87
|
+
* Section description
|
|
88
|
+
*/
|
|
89
|
+
description?: ReactNode;
|
|
90
|
+
/**
|
|
91
|
+
* Column definitions
|
|
92
|
+
*/
|
|
93
|
+
columns: ComparisonColumn[];
|
|
94
|
+
/**
|
|
95
|
+
* Feature rows
|
|
96
|
+
*/
|
|
97
|
+
features: ComparisonFeature[];
|
|
98
|
+
/**
|
|
99
|
+
* Show category headers
|
|
100
|
+
* @default true
|
|
101
|
+
*/
|
|
102
|
+
showCategories?: boolean;
|
|
103
|
+
/**
|
|
104
|
+
* Show row descriptions
|
|
105
|
+
* @default false
|
|
106
|
+
*/
|
|
107
|
+
showDescriptions?: boolean;
|
|
108
|
+
/**
|
|
109
|
+
* Sticky header
|
|
110
|
+
* @default true
|
|
111
|
+
*/
|
|
112
|
+
stickyHeader?: boolean;
|
|
113
|
+
/**
|
|
114
|
+
* Background style
|
|
115
|
+
* @default 'base'
|
|
116
|
+
*/
|
|
117
|
+
background?: 'base' | 'subtle' | 'none';
|
|
118
|
+
/**
|
|
119
|
+
* Compact mode
|
|
120
|
+
* @default false
|
|
121
|
+
*/
|
|
122
|
+
compact?: boolean;
|
|
123
|
+
}
|
|
124
|
+
//# sourceMappingURL=Comparison.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Comparison.types.d.ts","sourceRoot":"","sources":["../../../src/sections/Comparison/Comparison.types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,MAAM,EAAE,CAAC,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC;CAC1C;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,WAAW,eAAgB,SAAQ,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IACjF;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAElB;;OAEG;IACH,WAAW,CAAC,EAAE,SAAS,CAAC;IAExB;;OAEG;IACH,OAAO,EAAE,gBAAgB,EAAE,CAAC;IAE5B;;OAEG;IACH,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAE9B;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC;IAExC;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/sections/Comparison/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Contact Component
|
|
3
|
+
*
|
|
4
|
+
* A contact section with form and contact information.
|
|
5
|
+
* Supports multiple layouts and custom form fields.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```tsx
|
|
9
|
+
* <Contact
|
|
10
|
+
* eyebrow={<Badge>Contact</Badge>}
|
|
11
|
+
* title="Get in touch"
|
|
12
|
+
* description="We'd love to hear from you"
|
|
13
|
+
* contactInfo={[
|
|
14
|
+
* { icon: <Mail size={20} />, label: "Email", value: "hello@example.com", href: "mailto:hello@example.com" },
|
|
15
|
+
* { icon: <Phone size={20} />, label: "Phone", value: "+1 (555) 000-0000", href: "tel:+15550000000" },
|
|
16
|
+
* { icon: <MapPin size={20} />, label: "Address", value: "123 Main St, City, Country" }
|
|
17
|
+
* ]}
|
|
18
|
+
* formFields={[
|
|
19
|
+
* { name: "name", label: "Name", required: true },
|
|
20
|
+
* { name: "email", label: "Email", type: "email", required: true },
|
|
21
|
+
* { name: "message", label: "Message", type: "textarea", required: true }
|
|
22
|
+
* ]}
|
|
23
|
+
* onSubmit={(data) => console.log(data)}
|
|
24
|
+
* />
|
|
25
|
+
* ```
|
|
26
|
+
*/
|
|
27
|
+
import type { ContactProps } from './Contact.types';
|
|
28
|
+
export declare const Contact: import("react").ForwardRefExoticComponent<ContactProps & import("react").RefAttributes<HTMLElement>>;
|
|
29
|
+
//# sourceMappingURL=Contact.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Contact.d.ts","sourceRoot":"","sources":["../../../src/sections/Contact/Contact.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAoB,MAAM,iBAAiB,CAAC;AAYtE,eAAO,MAAM,OAAO,sGA6InB,CAAC"}
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Contact Component Types
|
|
3
|
+
*
|
|
4
|
+
* Type definitions for the Orion Contact section component.
|
|
5
|
+
*/
|
|
6
|
+
import type { HTMLAttributes, ReactNode } from 'react';
|
|
7
|
+
/**
|
|
8
|
+
* Contact layout variant
|
|
9
|
+
*/
|
|
10
|
+
export type ContactLayout = 'split' | 'stacked' | 'form-only';
|
|
11
|
+
/**
|
|
12
|
+
* Contact info item (phone, email, address, etc.)
|
|
13
|
+
*/
|
|
14
|
+
export interface ContactInfo {
|
|
15
|
+
/**
|
|
16
|
+
* Icon element for the contact method
|
|
17
|
+
*/
|
|
18
|
+
icon?: ReactNode;
|
|
19
|
+
/**
|
|
20
|
+
* Label (e.g., "Email", "Phone", "Address")
|
|
21
|
+
*/
|
|
22
|
+
label: string;
|
|
23
|
+
/**
|
|
24
|
+
* Value (e.g., "hello@example.com")
|
|
25
|
+
*/
|
|
26
|
+
value: string;
|
|
27
|
+
/**
|
|
28
|
+
* Optional href for clickable items (mailto:, tel:)
|
|
29
|
+
*/
|
|
30
|
+
href?: string;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Form field configuration
|
|
34
|
+
*/
|
|
35
|
+
export interface ContactFormField {
|
|
36
|
+
/**
|
|
37
|
+
* Field name (for form data)
|
|
38
|
+
*/
|
|
39
|
+
name: string;
|
|
40
|
+
/**
|
|
41
|
+
* Field label
|
|
42
|
+
*/
|
|
43
|
+
label: string;
|
|
44
|
+
/**
|
|
45
|
+
* Field type
|
|
46
|
+
* @default 'text'
|
|
47
|
+
*/
|
|
48
|
+
type?: 'text' | 'email' | 'tel' | 'textarea';
|
|
49
|
+
/**
|
|
50
|
+
* Placeholder text
|
|
51
|
+
*/
|
|
52
|
+
placeholder?: string;
|
|
53
|
+
/**
|
|
54
|
+
* Whether the field is required
|
|
55
|
+
* @default false
|
|
56
|
+
*/
|
|
57
|
+
required?: boolean;
|
|
58
|
+
/**
|
|
59
|
+
* Number of rows (for textarea only)
|
|
60
|
+
* @default 4
|
|
61
|
+
*/
|
|
62
|
+
rows?: number;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Contact section props
|
|
66
|
+
*
|
|
67
|
+
* @example
|
|
68
|
+
* ```tsx
|
|
69
|
+
* <Contact
|
|
70
|
+
* title="Get in touch"
|
|
71
|
+
* description="We'd love to hear from you"
|
|
72
|
+
* contactInfo={[
|
|
73
|
+
* { icon: <Mail />, label: "Email", value: "hello@example.com", href: "mailto:hello@example.com" },
|
|
74
|
+
* { icon: <Phone />, label: "Phone", value: "+1 (555) 000-0000", href: "tel:+15550000000" }
|
|
75
|
+
* ]}
|
|
76
|
+
* formFields={[
|
|
77
|
+
* { name: "name", label: "Name", required: true },
|
|
78
|
+
* { name: "email", label: "Email", type: "email", required: true },
|
|
79
|
+
* { name: "message", label: "Message", type: "textarea", required: true }
|
|
80
|
+
* ]}
|
|
81
|
+
* onSubmit={(data) => console.log(data)}
|
|
82
|
+
* />
|
|
83
|
+
* ```
|
|
84
|
+
*/
|
|
85
|
+
export interface ContactProps extends Omit<HTMLAttributes<HTMLElement>, 'title' | 'onSubmit'> {
|
|
86
|
+
/**
|
|
87
|
+
* Optional eyebrow/badge above title
|
|
88
|
+
*/
|
|
89
|
+
eyebrow?: ReactNode;
|
|
90
|
+
/**
|
|
91
|
+
* Section title
|
|
92
|
+
*/
|
|
93
|
+
title?: ReactNode;
|
|
94
|
+
/**
|
|
95
|
+
* Section description
|
|
96
|
+
*/
|
|
97
|
+
description?: ReactNode;
|
|
98
|
+
/**
|
|
99
|
+
* Contact information items
|
|
100
|
+
*/
|
|
101
|
+
contactInfo?: ContactInfo[];
|
|
102
|
+
/**
|
|
103
|
+
* Form fields configuration
|
|
104
|
+
*/
|
|
105
|
+
formFields?: ContactFormField[];
|
|
106
|
+
/**
|
|
107
|
+
* Form submit handler - receives form data as an object
|
|
108
|
+
*/
|
|
109
|
+
onSubmit?: (data: Record<string, string>) => void;
|
|
110
|
+
/**
|
|
111
|
+
* Custom submit button element
|
|
112
|
+
*/
|
|
113
|
+
submitButton?: ReactNode;
|
|
114
|
+
/**
|
|
115
|
+
* Submit button text (if not using custom button)
|
|
116
|
+
* @default "Send Message"
|
|
117
|
+
*/
|
|
118
|
+
submitText?: string;
|
|
119
|
+
/**
|
|
120
|
+
* Layout variant
|
|
121
|
+
* - split: Info on left, form on right
|
|
122
|
+
* - stacked: Info above form
|
|
123
|
+
* - form-only: Just the form, no contact info
|
|
124
|
+
* @default 'split'
|
|
125
|
+
*/
|
|
126
|
+
layout?: ContactLayout;
|
|
127
|
+
/**
|
|
128
|
+
* Background style
|
|
129
|
+
* @default 'subtle'
|
|
130
|
+
*/
|
|
131
|
+
background?: 'base' | 'subtle' | 'none';
|
|
132
|
+
/**
|
|
133
|
+
* Additional content below contact info (e.g., social links, map)
|
|
134
|
+
*/
|
|
135
|
+
additionalContent?: ReactNode;
|
|
136
|
+
}
|
|
137
|
+
//# sourceMappingURL=Contact.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Contact.types.d.ts","sourceRoot":"","sources":["../../../src/sections/Contact/Contact.types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvD;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,CAAC;AAE9D;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,IAAI,CAAC,EAAE,SAAS,CAAC;IAEjB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,UAAU,CAAC;IAE7C;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,WAAW,YAAa,SAAQ,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IAC3F;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAElB;;OAEG;IACH,WAAW,CAAC,EAAE,SAAS,CAAC;IAExB;;OAEG;IACH,WAAW,CAAC,EAAE,WAAW,EAAE,CAAC;IAE5B;;OAEG;IACH,UAAU,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAEhC;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC;IAElD;;OAEG;IACH,YAAY,CAAC,EAAE,SAAS,CAAC;IAEzB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,aAAa,CAAC;IAEvB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC;IAExC;;OAEG;IACH,iBAAiB,CAAC,EAAE,SAAS,CAAC;CAC/B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/sections/Contact/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,YAAY,EACV,YAAY,EACZ,WAAW,EACX,gBAAgB,EAChB,aAAa,GACd,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Container Component
|
|
3
|
+
*
|
|
4
|
+
* A layout wrapper that constrains content to a maximum width with consistent padding.
|
|
5
|
+
* Part of the Orion Sections library for building complete page layouts.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```tsx
|
|
9
|
+
* <Container size="lg">
|
|
10
|
+
* <h1>Page Title</h1>
|
|
11
|
+
* <p>Content goes here</p>
|
|
12
|
+
* </Container>
|
|
13
|
+
* ```
|
|
14
|
+
*/
|
|
15
|
+
import type { ContainerProps } from './Container.types';
|
|
16
|
+
export declare const Container: import("react").ForwardRefExoticComponent<ContainerProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
17
|
+
//# sourceMappingURL=Container.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Container.d.ts","sourceRoot":"","sources":["../../../src/sections/Container/Container.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGxD,eAAO,MAAM,SAAS,2GA4BrB,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Container Component Types
|
|
3
|
+
*
|
|
4
|
+
* Type definitions for the Orion Container section component.
|
|
5
|
+
*/
|
|
6
|
+
import type { HTMLAttributes, ReactNode } from 'react';
|
|
7
|
+
/**
|
|
8
|
+
* Container size variants
|
|
9
|
+
*/
|
|
10
|
+
export type ContainerSize = 'sm' | 'md' | 'lg' | 'xl' | 'full';
|
|
11
|
+
/**
|
|
12
|
+
* Container component props
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```tsx
|
|
16
|
+
* <Container size="lg">
|
|
17
|
+
* <Content />
|
|
18
|
+
* </Container>
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
export interface ContainerProps extends HTMLAttributes<HTMLDivElement> {
|
|
22
|
+
/**
|
|
23
|
+
* Maximum width variant
|
|
24
|
+
* - sm: 640px (small content, text-focused)
|
|
25
|
+
* - md: 768px (medium content)
|
|
26
|
+
* - lg: 1024px (standard layouts)
|
|
27
|
+
* - xl: 1280px (wide layouts)
|
|
28
|
+
* - full: 100% (full width)
|
|
29
|
+
* @default 'lg'
|
|
30
|
+
*/
|
|
31
|
+
size?: ContainerSize;
|
|
32
|
+
/**
|
|
33
|
+
* Center the container horizontally
|
|
34
|
+
* @default true
|
|
35
|
+
*/
|
|
36
|
+
centered?: boolean;
|
|
37
|
+
/**
|
|
38
|
+
* Add horizontal padding
|
|
39
|
+
* @default true
|
|
40
|
+
*/
|
|
41
|
+
padded?: boolean;
|
|
42
|
+
/**
|
|
43
|
+
* Container content
|
|
44
|
+
*/
|
|
45
|
+
children?: ReactNode;
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=Container.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Container.types.d.ts","sourceRoot":"","sources":["../../../src/sections/Container/Container.types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvD;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC;AAE/D;;;;;;;;;GASG;AACH,MAAM,WAAW,cAAe,SAAQ,cAAc,CAAC,cAAc,CAAC;IACpE;;;;;;;;OAQG;IACH,IAAI,CAAC,EAAE,aAAa,CAAC;IAErB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/sections/Container/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* FAQ Component
|
|
3
|
+
*
|
|
4
|
+
* A frequently asked questions section with accordion or grid layout.
|
|
5
|
+
* Supports single or multiple open items and rich answer content.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```tsx
|
|
9
|
+
* <FAQ
|
|
10
|
+
* eyebrow={<Badge>Support</Badge>}
|
|
11
|
+
* title="Frequently Asked Questions"
|
|
12
|
+
* description="Find answers to common questions"
|
|
13
|
+
* items={[
|
|
14
|
+
* {
|
|
15
|
+
* question: "How do I get started?",
|
|
16
|
+
* answer: "Simply sign up for a free account and follow our onboarding guide."
|
|
17
|
+
* },
|
|
18
|
+
* {
|
|
19
|
+
* question: "Is there a free trial?",
|
|
20
|
+
* answer: "Yes! We offer a 14-day free trial with full access to all features."
|
|
21
|
+
* }
|
|
22
|
+
* ]}
|
|
23
|
+
* variant="accordion"
|
|
24
|
+
* />
|
|
25
|
+
* ```
|
|
26
|
+
*/
|
|
27
|
+
import type { FAQProps } from './FAQ.types';
|
|
28
|
+
export declare const FAQ: import("react").ForwardRefExoticComponent<FAQProps & import("react").RefAttributes<HTMLElement>>;
|
|
29
|
+
//# sourceMappingURL=FAQ.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FAQ.d.ts","sourceRoot":"","sources":["../../../src/sections/FAQ/FAQ.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAM5C,eAAO,MAAM,GAAG,kGA8Ff,CAAC"}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* FAQ Component Types
|
|
3
|
+
*
|
|
4
|
+
* Type definitions for the Orion FAQ section component.
|
|
5
|
+
*/
|
|
6
|
+
import type { HTMLAttributes, ReactNode } from 'react';
|
|
7
|
+
/**
|
|
8
|
+
* Grid column count for FAQ items
|
|
9
|
+
*/
|
|
10
|
+
export type FAQColumns = 1 | 2;
|
|
11
|
+
/**
|
|
12
|
+
* FAQ visual variant
|
|
13
|
+
*/
|
|
14
|
+
export type FAQVariant = 'accordion' | 'grid';
|
|
15
|
+
/**
|
|
16
|
+
* FAQ item data structure
|
|
17
|
+
*/
|
|
18
|
+
export interface FAQItem {
|
|
19
|
+
/**
|
|
20
|
+
* The question text
|
|
21
|
+
*/
|
|
22
|
+
question: string;
|
|
23
|
+
/**
|
|
24
|
+
* The answer content (can be text or rich content)
|
|
25
|
+
*/
|
|
26
|
+
answer: ReactNode;
|
|
27
|
+
/**
|
|
28
|
+
* Whether the item is open by default
|
|
29
|
+
* @default false
|
|
30
|
+
*/
|
|
31
|
+
defaultOpen?: boolean;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* FAQ accordion item props (internal component)
|
|
35
|
+
*/
|
|
36
|
+
export interface FAQItemCardProps extends HTMLAttributes<HTMLDivElement> {
|
|
37
|
+
/**
|
|
38
|
+
* FAQ item data
|
|
39
|
+
*/
|
|
40
|
+
item: FAQItem;
|
|
41
|
+
/**
|
|
42
|
+
* Visual variant
|
|
43
|
+
* @default 'accordion'
|
|
44
|
+
*/
|
|
45
|
+
variant?: FAQVariant;
|
|
46
|
+
/**
|
|
47
|
+
* Whether the item is currently open (controlled)
|
|
48
|
+
*/
|
|
49
|
+
isOpen?: boolean;
|
|
50
|
+
/**
|
|
51
|
+
* Callback when toggled
|
|
52
|
+
*/
|
|
53
|
+
onToggle?: () => void;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* FAQ section props
|
|
57
|
+
*
|
|
58
|
+
* @example
|
|
59
|
+
* ```tsx
|
|
60
|
+
* <FAQ
|
|
61
|
+
* title="Frequently Asked Questions"
|
|
62
|
+
* description="Find answers to common questions"
|
|
63
|
+
* items={[
|
|
64
|
+
* {
|
|
65
|
+
* question: "How do I get started?",
|
|
66
|
+
* answer: "Simply sign up for a free account and follow our onboarding guide."
|
|
67
|
+
* },
|
|
68
|
+
* {
|
|
69
|
+
* question: "Is there a free trial?",
|
|
70
|
+
* answer: "Yes! We offer a 14-day free trial with full access to all features."
|
|
71
|
+
* }
|
|
72
|
+
* ]}
|
|
73
|
+
* />
|
|
74
|
+
* ```
|
|
75
|
+
*/
|
|
76
|
+
export interface FAQProps extends Omit<HTMLAttributes<HTMLElement>, 'title'> {
|
|
77
|
+
/**
|
|
78
|
+
* Optional eyebrow/badge above title
|
|
79
|
+
*/
|
|
80
|
+
eyebrow?: ReactNode;
|
|
81
|
+
/**
|
|
82
|
+
* Section title
|
|
83
|
+
*/
|
|
84
|
+
title?: ReactNode;
|
|
85
|
+
/**
|
|
86
|
+
* Section description
|
|
87
|
+
*/
|
|
88
|
+
description?: ReactNode;
|
|
89
|
+
/**
|
|
90
|
+
* Array of FAQ items
|
|
91
|
+
*/
|
|
92
|
+
items: FAQItem[];
|
|
93
|
+
/**
|
|
94
|
+
* Number of grid columns (only applies to grid variant)
|
|
95
|
+
* @default 1
|
|
96
|
+
*/
|
|
97
|
+
columns?: FAQColumns;
|
|
98
|
+
/**
|
|
99
|
+
* Visual variant
|
|
100
|
+
* - accordion: Expandable accordion items
|
|
101
|
+
* - grid: Static grid of questions and answers
|
|
102
|
+
* @default 'accordion'
|
|
103
|
+
*/
|
|
104
|
+
variant?: FAQVariant;
|
|
105
|
+
/**
|
|
106
|
+
* Allow multiple items to be open at once (accordion only)
|
|
107
|
+
* @default true
|
|
108
|
+
*/
|
|
109
|
+
allowMultiple?: boolean;
|
|
110
|
+
/**
|
|
111
|
+
* Background style
|
|
112
|
+
* @default 'base'
|
|
113
|
+
*/
|
|
114
|
+
background?: 'base' | 'subtle' | 'none';
|
|
115
|
+
/**
|
|
116
|
+
* Center the header text
|
|
117
|
+
* @default true
|
|
118
|
+
*/
|
|
119
|
+
centered?: boolean;
|
|
120
|
+
}
|
|
121
|
+
//# sourceMappingURL=FAQ.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FAQ.types.d.ts","sourceRoot":"","sources":["../../../src/sections/FAQ/FAQ.types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvD;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,GAAG,CAAC,CAAC;AAE/B;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,MAAM,CAAC;AAE9C;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,MAAM,EAAE,SAAS,CAAC;IAElB;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,cAAc,CAAC,cAAc,CAAC;IACtE;;OAEG;IACH,IAAI,EAAE,OAAO,CAAC;IAEd;;;OAGG;IACH,OAAO,CAAC,EAAE,UAAU,CAAC;IAErB;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CACvB;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,WAAW,QAAS,SAAQ,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAC1E;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAElB;;OAEG;IACH,WAAW,CAAC,EAAE,SAAS,CAAC;IAExB;;OAEG;IACH,KAAK,EAAE,OAAO,EAAE,CAAC;IAEjB;;;OAGG;IACH,OAAO,CAAC,EAAE,UAAU,CAAC;IAErB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,UAAU,CAAC;IAErB;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC;IAExC;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* FAQItemCard Component
|
|
3
|
+
*
|
|
4
|
+
* Internal component for rendering individual FAQ items.
|
|
5
|
+
* Supports accordion (expandable) and grid (static) variants.
|
|
6
|
+
*/
|
|
7
|
+
import type { FAQItemCardProps } from './FAQ.types';
|
|
8
|
+
export declare const FAQItemCard: {
|
|
9
|
+
({ item, variant, isOpen: controlledIsOpen, onToggle, className, }: FAQItemCardProps): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
displayName: string;
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=FAQItemCard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FAQItemCard.d.ts","sourceRoot":"","sources":["../../../src/sections/FAQ/FAQItemCard.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAIpD,eAAO,MAAM,WAAW;wEAMrB,gBAAgB;;CAqDlB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/sections/FAQ/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EACV,QAAQ,EACR,OAAO,EACP,gBAAgB,EAChB,UAAU,EACV,UAAU,GACX,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* FeatureCard Component
|
|
3
|
+
*
|
|
4
|
+
* Internal component for rendering individual feature cards.
|
|
5
|
+
*/
|
|
6
|
+
import type { FeatureCardProps } from './Features.types';
|
|
7
|
+
export declare const FeatureCard: {
|
|
8
|
+
({ feature, interactive, className }: FeatureCardProps): import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
displayName: string;
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=FeatureCard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FeatureCard.d.ts","sourceRoot":"","sources":["../../../src/sections/Features/FeatureCard.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAIzD,eAAO,MAAM,WAAW;0CAAgD,gBAAgB;;CA2CvF,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Features Component
|
|
3
|
+
*
|
|
4
|
+
* A grid-based features section with support for icons, badges, and hover effects.
|
|
5
|
+
* Composes atomic components from @orion/react (Card, Badge).
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```tsx
|
|
9
|
+
* <Features
|
|
10
|
+
* eyebrow={<Badge>Features</Badge>}
|
|
11
|
+
* title="Everything you need"
|
|
12
|
+
* description="Powerful features designed for modern apps"
|
|
13
|
+
* items={[
|
|
14
|
+
* { icon: <Zap />, title: "Fast", description: "Lightning speed" },
|
|
15
|
+
* { icon: <Shield />, title: "Secure", description: "Bank-grade security" },
|
|
16
|
+
* { icon: <Code />, title: "Developer First", description: "Built for devs" },
|
|
17
|
+
* ]}
|
|
18
|
+
* columns={3}
|
|
19
|
+
* />
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
import type { FeaturesProps } from './Features.types';
|
|
23
|
+
export declare const Features: import("react").ForwardRefExoticComponent<FeaturesProps & import("react").RefAttributes<HTMLElement>>;
|
|
24
|
+
//# sourceMappingURL=Features.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Features.d.ts","sourceRoot":"","sources":["../../../src/sections/Features/Features.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAMtD,eAAO,MAAM,QAAQ,uGAwDpB,CAAC"}
|