@opensite/ui 1.3.2 → 1.3.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/footer-accordion-social.cjs +1344 -0
- package/dist/footer-accordion-social.d.cts +154 -0
- package/dist/footer-accordion-social.d.ts +154 -0
- package/dist/footer-accordion-social.js +1322 -0
- package/dist/footer-info-cards-accordion.cjs +1427 -0
- package/dist/footer-info-cards-accordion.d.cts +278 -0
- package/dist/footer-info-cards-accordion.d.ts +278 -0
- package/dist/footer-info-cards-accordion.js +1404 -0
- package/dist/footer-newsletter-contact.cjs +1281 -0
- package/dist/footer-newsletter-contact.d.cts +163 -0
- package/dist/footer-newsletter-contact.d.ts +163 -0
- package/dist/footer-newsletter-contact.js +1259 -0
- package/dist/footer-split-image-accordion.cjs +1395 -0
- package/dist/footer-split-image-accordion.d.cts +236 -0
- package/dist/footer-split-image-accordion.d.ts +236 -0
- package/dist/footer-split-image-accordion.js +1372 -0
- package/dist/list-achievements-showcase.cjs +1141 -0
- package/dist/list-achievements-showcase.d.cts +131 -0
- package/dist/list-achievements-showcase.d.ts +131 -0
- package/dist/list-achievements-showcase.js +1119 -0
- package/dist/list-career-timeline.cjs +531 -0
- package/dist/list-career-timeline.d.cts +153 -0
- package/dist/list-career-timeline.d.ts +153 -0
- package/dist/list-career-timeline.js +509 -0
- package/dist/list-feature-comparison.cjs +1211 -0
- package/dist/list-feature-comparison.d.cts +189 -0
- package/dist/list-feature-comparison.d.ts +189 -0
- package/dist/list-feature-comparison.js +1190 -0
- package/dist/list-metrics-dashboard.cjs +1402 -0
- package/dist/list-metrics-dashboard.d.cts +191 -0
- package/dist/list-metrics-dashboard.d.ts +191 -0
- package/dist/list-metrics-dashboard.js +1379 -0
- package/dist/list-service-category-table.cjs +762 -0
- package/dist/list-service-category-table.d.cts +135 -0
- package/dist/list-service-category-table.d.ts +135 -0
- package/dist/list-service-category-table.js +741 -0
- package/dist/offer-modal-membership-image.cjs +1361 -0
- package/dist/offer-modal-membership-image.d.cts +194 -0
- package/dist/offer-modal-membership-image.d.ts +194 -0
- package/dist/offer-modal-membership-image.js +1339 -0
- package/dist/offer-modal-newsletter-discount.cjs +1296 -0
- package/dist/offer-modal-newsletter-discount.d.cts +164 -0
- package/dist/offer-modal-newsletter-discount.d.ts +164 -0
- package/dist/offer-modal-newsletter-discount.js +1274 -0
- package/dist/offer-modal-sheet-newsletter.cjs +1360 -0
- package/dist/offer-modal-sheet-newsletter.d.cts +221 -0
- package/dist/offer-modal-sheet-newsletter.d.ts +221 -0
- package/dist/offer-modal-sheet-newsletter.js +1337 -0
- package/dist/pricing-addons-cards.cjs +1143 -0
- package/dist/pricing-addons-cards.d.cts +203 -0
- package/dist/pricing-addons-cards.d.ts +203 -0
- package/dist/pricing-addons-cards.js +1122 -0
- package/dist/pricing-addons-featured.cjs +1224 -0
- package/dist/pricing-addons-featured.d.cts +271 -0
- package/dist/pricing-addons-featured.d.ts +271 -0
- package/dist/pricing-addons-featured.js +1203 -0
- package/dist/pricing-collapsible-plans.cjs +1315 -0
- package/dist/pricing-collapsible-plans.d.cts +258 -0
- package/dist/pricing-collapsible-plans.d.ts +258 -0
- package/dist/pricing-collapsible-plans.js +1294 -0
- package/dist/pricing-columns-toggle.cjs +1234 -0
- package/dist/pricing-columns-toggle.d.cts +251 -0
- package/dist/pricing-columns-toggle.d.ts +251 -0
- package/dist/pricing-columns-toggle.js +1212 -0
- package/dist/pricing-comparison-headers.cjs +1235 -0
- package/dist/pricing-comparison-headers.d.cts +245 -0
- package/dist/pricing-comparison-headers.d.ts +245 -0
- package/dist/pricing-comparison-headers.js +1213 -0
- package/dist/pricing-comparison-table.cjs +1374 -0
- package/dist/pricing-comparison-table.d.cts +280 -0
- package/dist/pricing-comparison-table.d.ts +280 -0
- package/dist/pricing-comparison-table.js +1352 -0
- package/dist/pricing-discount-card.cjs +1217 -0
- package/dist/pricing-discount-card.d.cts +195 -0
- package/dist/pricing-discount-card.d.ts +195 -0
- package/dist/pricing-discount-card.js +1195 -0
- package/dist/pricing-enterprise-contact.cjs +1094 -0
- package/dist/pricing-enterprise-contact.d.cts +170 -0
- package/dist/pricing-enterprise-contact.d.ts +170 -0
- package/dist/pricing-enterprise-contact.js +1073 -0
- package/dist/pricing-feature-matrix.cjs +1197 -0
- package/dist/pricing-feature-matrix.d.cts +56 -0
- package/dist/pricing-feature-matrix.d.ts +56 -0
- package/dist/pricing-feature-matrix.js +1174 -0
- package/dist/pricing-four-tier-toggle.cjs +1320 -0
- package/dist/pricing-four-tier-toggle.d.cts +266 -0
- package/dist/pricing-four-tier-toggle.d.ts +266 -0
- package/dist/pricing-four-tier-toggle.js +1297 -0
- package/dist/pricing-full-comparison.cjs +1301 -0
- package/dist/pricing-full-comparison.d.cts +265 -0
- package/dist/pricing-full-comparison.d.ts +265 -0
- package/dist/pricing-full-comparison.js +1279 -0
- package/dist/pricing-gradient-cards.cjs +1248 -0
- package/dist/pricing-gradient-cards.d.cts +258 -0
- package/dist/pricing-gradient-cards.d.ts +258 -0
- package/dist/pricing-gradient-cards.js +1226 -0
- package/dist/pricing-icon-headers.cjs +1163 -0
- package/dist/pricing-icon-headers.d.cts +218 -0
- package/dist/pricing-icon-headers.d.ts +218 -0
- package/dist/pricing-icon-headers.js +1142 -0
- package/dist/pricing-minimal-cards.cjs +1146 -0
- package/dist/pricing-minimal-cards.d.cts +210 -0
- package/dist/pricing-minimal-cards.d.ts +210 -0
- package/dist/pricing-minimal-cards.js +1125 -0
- package/dist/pricing-packages-radio.cjs +1203 -0
- package/dist/pricing-packages-radio.d.cts +243 -0
- package/dist/pricing-packages-radio.d.ts +243 -0
- package/dist/pricing-packages-radio.js +1182 -0
- package/dist/pricing-popular-highlight.cjs +1293 -0
- package/dist/pricing-popular-highlight.d.cts +255 -0
- package/dist/pricing-popular-highlight.d.ts +255 -0
- package/dist/pricing-popular-highlight.js +1271 -0
- package/dist/pricing-radio-toggle.cjs +1277 -0
- package/dist/pricing-radio-toggle.d.cts +251 -0
- package/dist/pricing-radio-toggle.d.ts +251 -0
- package/dist/pricing-radio-toggle.js +1255 -0
- package/dist/pricing-responsive-table.cjs +1229 -0
- package/dist/pricing-responsive-table.d.cts +55 -0
- package/dist/pricing-responsive-table.d.ts +55 -0
- package/dist/pricing-responsive-table.js +1206 -0
- package/dist/pricing-services-cards.cjs +1209 -0
- package/dist/pricing-services-cards.d.cts +230 -0
- package/dist/pricing-services-cards.d.ts +230 -0
- package/dist/pricing-services-cards.js +1188 -0
- package/dist/pricing-simple-card.cjs +1102 -0
- package/dist/pricing-simple-card.d.cts +174 -0
- package/dist/pricing-simple-card.d.ts +174 -0
- package/dist/pricing-simple-card.js +1081 -0
- package/dist/pricing-single-card.cjs +1174 -0
- package/dist/pricing-single-card.d.cts +201 -0
- package/dist/pricing-single-card.d.ts +201 -0
- package/dist/pricing-single-card.js +1152 -0
- package/dist/pricing-split-layout.cjs +1001 -0
- package/dist/pricing-split-layout.d.cts +44 -0
- package/dist/pricing-split-layout.d.ts +44 -0
- package/dist/pricing-split-layout.js +980 -0
- package/dist/pricing-spotlight-card.cjs +1157 -0
- package/dist/pricing-spotlight-card.d.cts +201 -0
- package/dist/pricing-spotlight-card.d.ts +201 -0
- package/dist/pricing-spotlight-card.js +1136 -0
- package/dist/pricing-switch-cards.cjs +1274 -0
- package/dist/pricing-switch-cards.d.cts +254 -0
- package/dist/pricing-switch-cards.d.ts +254 -0
- package/dist/pricing-switch-cards.js +1252 -0
- package/dist/pricing-tabs-toggle.cjs +1314 -0
- package/dist/pricing-tabs-toggle.d.cts +274 -0
- package/dist/pricing-tabs-toggle.d.ts +274 -0
- package/dist/pricing-tabs-toggle.js +1291 -0
- package/dist/pricing-tier-grid.cjs +1190 -0
- package/dist/pricing-tier-grid.d.cts +224 -0
- package/dist/pricing-tier-grid.d.ts +224 -0
- package/dist/pricing-tier-grid.js +1169 -0
- package/dist/pricing-toggle-cards.cjs +1330 -0
- package/dist/pricing-toggle-cards.d.cts +267 -0
- package/dist/pricing-toggle-cards.d.ts +267 -0
- package/dist/pricing-toggle-cards.js +1307 -0
- package/dist/pricing-toggle-period.cjs +1251 -0
- package/dist/pricing-toggle-period.d.cts +265 -0
- package/dist/pricing-toggle-period.d.ts +265 -0
- package/dist/pricing-toggle-period.js +1230 -0
- package/dist/pricing-two-column-basic.cjs +1243 -0
- package/dist/pricing-two-column-basic.d.cts +244 -0
- package/dist/pricing-two-column-basic.d.ts +244 -0
- package/dist/pricing-two-column-basic.js +1222 -0
- package/dist/registry.cjs +109 -85
- package/dist/registry.js +931 -907
- package/package.json +1 -1
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { f as SectionBackground, g as SectionSpacing, t as PatternName } from './community-initiatives-Bz_A5vLU.cjs';
|
|
3
|
+
import { A as ActionConfig } from './blocks-Cohq4eio.cjs';
|
|
4
|
+
import 'react/jsx-runtime';
|
|
5
|
+
import 'class-variance-authority';
|
|
6
|
+
import './button-variants-lRElsmTc.cjs';
|
|
7
|
+
import 'class-variance-authority/types';
|
|
8
|
+
|
|
9
|
+
interface PricingComparisonHeadersFeature {
|
|
10
|
+
/**
|
|
11
|
+
* Feature label
|
|
12
|
+
*/
|
|
13
|
+
name?: React.ReactNode;
|
|
14
|
+
/**
|
|
15
|
+
* Values per plan id
|
|
16
|
+
*/
|
|
17
|
+
values?: Record<string, boolean | React.ReactNode>;
|
|
18
|
+
/**
|
|
19
|
+
* Additional CSS classes for row
|
|
20
|
+
*/
|
|
21
|
+
className?: string;
|
|
22
|
+
}
|
|
23
|
+
interface PricingComparisonHeadersPlan {
|
|
24
|
+
/**
|
|
25
|
+
* Unique plan id
|
|
26
|
+
*/
|
|
27
|
+
id?: string;
|
|
28
|
+
/**
|
|
29
|
+
* Plan name
|
|
30
|
+
*/
|
|
31
|
+
name?: React.ReactNode;
|
|
32
|
+
/**
|
|
33
|
+
* Monthly price display
|
|
34
|
+
*/
|
|
35
|
+
monthlyPrice?: React.ReactNode;
|
|
36
|
+
/**
|
|
37
|
+
* Yearly price display
|
|
38
|
+
*/
|
|
39
|
+
yearlyPrice?: React.ReactNode;
|
|
40
|
+
/**
|
|
41
|
+
* Plan description
|
|
42
|
+
*/
|
|
43
|
+
description?: React.ReactNode;
|
|
44
|
+
/**
|
|
45
|
+
* Action configuration
|
|
46
|
+
*/
|
|
47
|
+
action?: ActionConfig;
|
|
48
|
+
/**
|
|
49
|
+
* Custom slot for rendering action (overrides action)
|
|
50
|
+
*/
|
|
51
|
+
actionSlot?: React.ReactNode;
|
|
52
|
+
/**
|
|
53
|
+
* Highlight this plan
|
|
54
|
+
*/
|
|
55
|
+
isPopular?: boolean;
|
|
56
|
+
/**
|
|
57
|
+
* Badge content for popular plan
|
|
58
|
+
*/
|
|
59
|
+
badge?: React.ReactNode;
|
|
60
|
+
/**
|
|
61
|
+
* Additional CSS classes for plan header
|
|
62
|
+
*/
|
|
63
|
+
className?: string;
|
|
64
|
+
}
|
|
65
|
+
interface PricingComparisonHeadersProps {
|
|
66
|
+
/**
|
|
67
|
+
* Section title
|
|
68
|
+
*/
|
|
69
|
+
title?: React.ReactNode;
|
|
70
|
+
/**
|
|
71
|
+
* Section subtitle
|
|
72
|
+
*/
|
|
73
|
+
subtitle?: React.ReactNode;
|
|
74
|
+
/**
|
|
75
|
+
* Toggle label for monthly billing
|
|
76
|
+
*/
|
|
77
|
+
monthlyLabel?: React.ReactNode;
|
|
78
|
+
/**
|
|
79
|
+
* Toggle label for yearly billing
|
|
80
|
+
*/
|
|
81
|
+
yearlyLabel?: React.ReactNode;
|
|
82
|
+
/**
|
|
83
|
+
* Badge displayed on yearly toggle
|
|
84
|
+
*/
|
|
85
|
+
yearlyBadge?: React.ReactNode;
|
|
86
|
+
/**
|
|
87
|
+
* Monthly price suffix
|
|
88
|
+
*/
|
|
89
|
+
monthlyInterval?: React.ReactNode;
|
|
90
|
+
/**
|
|
91
|
+
* Yearly price suffix
|
|
92
|
+
*/
|
|
93
|
+
yearlyInterval?: React.ReactNode;
|
|
94
|
+
/**
|
|
95
|
+
* Plan definitions
|
|
96
|
+
*/
|
|
97
|
+
plans?: PricingComparisonHeadersPlan[];
|
|
98
|
+
/**
|
|
99
|
+
* Custom slot for rendering plans (overrides plans array)
|
|
100
|
+
*/
|
|
101
|
+
plansSlot?: React.ReactNode;
|
|
102
|
+
/**
|
|
103
|
+
* Feature rows
|
|
104
|
+
*/
|
|
105
|
+
features?: PricingComparisonHeadersFeature[];
|
|
106
|
+
/**
|
|
107
|
+
* Custom slot for rendering features (overrides features array)
|
|
108
|
+
*/
|
|
109
|
+
featuresSlot?: React.ReactNode;
|
|
110
|
+
/**
|
|
111
|
+
* Feature column label
|
|
112
|
+
*/
|
|
113
|
+
featureColumnLabel?: React.ReactNode;
|
|
114
|
+
/**
|
|
115
|
+
* Icon for available features
|
|
116
|
+
*/
|
|
117
|
+
availableIcon?: React.ReactNode;
|
|
118
|
+
/**
|
|
119
|
+
* Icon for unavailable features
|
|
120
|
+
*/
|
|
121
|
+
unavailableIcon?: React.ReactNode;
|
|
122
|
+
/**
|
|
123
|
+
* Icon name for available features
|
|
124
|
+
*/
|
|
125
|
+
availableIconName?: string;
|
|
126
|
+
/**
|
|
127
|
+
* Icon name for unavailable features
|
|
128
|
+
*/
|
|
129
|
+
unavailableIconName?: string;
|
|
130
|
+
/**
|
|
131
|
+
* Background style for the section
|
|
132
|
+
*/
|
|
133
|
+
background?: SectionBackground;
|
|
134
|
+
/**
|
|
135
|
+
* Vertical spacing for the section
|
|
136
|
+
*/
|
|
137
|
+
spacing?: SectionSpacing;
|
|
138
|
+
/**
|
|
139
|
+
* Optional background pattern name or URL
|
|
140
|
+
*/
|
|
141
|
+
pattern?: PatternName | undefined;
|
|
142
|
+
/**
|
|
143
|
+
* Pattern overlay opacity (0-1)
|
|
144
|
+
*/
|
|
145
|
+
patternOpacity?: number;
|
|
146
|
+
/**
|
|
147
|
+
* Additional CSS classes for the pattern overlay
|
|
148
|
+
*/
|
|
149
|
+
patternClassName?: string;
|
|
150
|
+
/**
|
|
151
|
+
* Additional CSS classes for the section
|
|
152
|
+
*/
|
|
153
|
+
className?: string;
|
|
154
|
+
/**
|
|
155
|
+
* Additional CSS classes for the container
|
|
156
|
+
*/
|
|
157
|
+
containerClassName?: string;
|
|
158
|
+
/**
|
|
159
|
+
* Additional CSS classes for the header
|
|
160
|
+
*/
|
|
161
|
+
headerClassName?: string;
|
|
162
|
+
/**
|
|
163
|
+
* Additional CSS classes for the title
|
|
164
|
+
*/
|
|
165
|
+
titleClassName?: string;
|
|
166
|
+
/**
|
|
167
|
+
* Additional CSS classes for the subtitle
|
|
168
|
+
*/
|
|
169
|
+
subtitleClassName?: string;
|
|
170
|
+
/**
|
|
171
|
+
* Additional CSS classes for toggle wrapper
|
|
172
|
+
*/
|
|
173
|
+
toggleClassName?: string;
|
|
174
|
+
/**
|
|
175
|
+
* Additional CSS classes for toggle labels
|
|
176
|
+
*/
|
|
177
|
+
toggleLabelClassName?: string;
|
|
178
|
+
/**
|
|
179
|
+
* Additional CSS classes for yearly badge
|
|
180
|
+
*/
|
|
181
|
+
yearlyBadgeClassName?: string;
|
|
182
|
+
/**
|
|
183
|
+
* Additional CSS classes for the table wrapper
|
|
184
|
+
*/
|
|
185
|
+
tableWrapperClassName?: string;
|
|
186
|
+
/**
|
|
187
|
+
* Additional CSS classes for plan header cells
|
|
188
|
+
*/
|
|
189
|
+
planHeaderClassName?: string;
|
|
190
|
+
/**
|
|
191
|
+
* Additional CSS classes for plan badge
|
|
192
|
+
*/
|
|
193
|
+
planBadgeClassName?: string;
|
|
194
|
+
/**
|
|
195
|
+
* Additional CSS classes for plan title
|
|
196
|
+
*/
|
|
197
|
+
planTitleClassName?: string;
|
|
198
|
+
/**
|
|
199
|
+
* Additional CSS classes for plan description
|
|
200
|
+
*/
|
|
201
|
+
planDescriptionClassName?: string;
|
|
202
|
+
/**
|
|
203
|
+
* Additional CSS classes for plan price
|
|
204
|
+
*/
|
|
205
|
+
planPriceClassName?: string;
|
|
206
|
+
/**
|
|
207
|
+
* Additional CSS classes for plan price interval
|
|
208
|
+
*/
|
|
209
|
+
planPriceIntervalClassName?: string;
|
|
210
|
+
/**
|
|
211
|
+
* Additional CSS classes for action
|
|
212
|
+
*/
|
|
213
|
+
actionClassName?: string;
|
|
214
|
+
/**
|
|
215
|
+
* Additional CSS classes for feature rows
|
|
216
|
+
*/
|
|
217
|
+
featureRowClassName?: string;
|
|
218
|
+
/**
|
|
219
|
+
* Additional CSS classes for feature name cell
|
|
220
|
+
*/
|
|
221
|
+
featureNameClassName?: string;
|
|
222
|
+
/**
|
|
223
|
+
* Additional CSS classes for feature value cell
|
|
224
|
+
*/
|
|
225
|
+
featureValueClassName?: string;
|
|
226
|
+
}
|
|
227
|
+
/**
|
|
228
|
+
* PricingComparisonHeaders displays a comparison table with plan headers and monthly/yearly toggle.
|
|
229
|
+
* Features sticky plan headers, feature rows with check/X indicators, and responsive design.
|
|
230
|
+
* Ideal for detailed feature comparisons across multiple pricing tiers.
|
|
231
|
+
*
|
|
232
|
+
* Perfect for products with many features that need clear tier differentiation.
|
|
233
|
+
*
|
|
234
|
+
* @example
|
|
235
|
+
* ```tsx
|
|
236
|
+
* <PricingComparisonHeaders
|
|
237
|
+
* title="Compare Plans"
|
|
238
|
+
* plans={[{ id: "free", name: "Free", monthlyPrice: "$0", yearlyPrice: "$0" }]}
|
|
239
|
+
* features={[{ name: "Projects", values: { free: "3", pro: "Unlimited", enterprise: "Unlimited" } }]}
|
|
240
|
+
* />
|
|
241
|
+
* ```
|
|
242
|
+
*/
|
|
243
|
+
declare function PricingComparisonHeaders({ title, subtitle, monthlyLabel, yearlyLabel, yearlyBadge, monthlyInterval, yearlyInterval, plans, plansSlot, features, featuresSlot, featureColumnLabel, availableIcon, unavailableIcon, availableIconName, unavailableIconName, background, spacing, pattern, patternOpacity, patternClassName, className, containerClassName, headerClassName, titleClassName, subtitleClassName, toggleClassName, toggleLabelClassName, yearlyBadgeClassName, tableWrapperClassName, planHeaderClassName, planBadgeClassName, planTitleClassName, planDescriptionClassName, planPriceClassName, planPriceIntervalClassName, actionClassName, featureRowClassName, featureNameClassName, featureValueClassName, }: PricingComparisonHeadersProps): React.JSX.Element;
|
|
244
|
+
|
|
245
|
+
export { PricingComparisonHeaders, type PricingComparisonHeadersProps };
|
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { f as SectionBackground, g as SectionSpacing, t as PatternName } from './community-initiatives-Bi_ClKrO.js';
|
|
3
|
+
import { A as ActionConfig } from './blocks-k17uluAz.js';
|
|
4
|
+
import 'react/jsx-runtime';
|
|
5
|
+
import 'class-variance-authority';
|
|
6
|
+
import './button-variants-lRElsmTc.js';
|
|
7
|
+
import 'class-variance-authority/types';
|
|
8
|
+
|
|
9
|
+
interface PricingComparisonHeadersFeature {
|
|
10
|
+
/**
|
|
11
|
+
* Feature label
|
|
12
|
+
*/
|
|
13
|
+
name?: React.ReactNode;
|
|
14
|
+
/**
|
|
15
|
+
* Values per plan id
|
|
16
|
+
*/
|
|
17
|
+
values?: Record<string, boolean | React.ReactNode>;
|
|
18
|
+
/**
|
|
19
|
+
* Additional CSS classes for row
|
|
20
|
+
*/
|
|
21
|
+
className?: string;
|
|
22
|
+
}
|
|
23
|
+
interface PricingComparisonHeadersPlan {
|
|
24
|
+
/**
|
|
25
|
+
* Unique plan id
|
|
26
|
+
*/
|
|
27
|
+
id?: string;
|
|
28
|
+
/**
|
|
29
|
+
* Plan name
|
|
30
|
+
*/
|
|
31
|
+
name?: React.ReactNode;
|
|
32
|
+
/**
|
|
33
|
+
* Monthly price display
|
|
34
|
+
*/
|
|
35
|
+
monthlyPrice?: React.ReactNode;
|
|
36
|
+
/**
|
|
37
|
+
* Yearly price display
|
|
38
|
+
*/
|
|
39
|
+
yearlyPrice?: React.ReactNode;
|
|
40
|
+
/**
|
|
41
|
+
* Plan description
|
|
42
|
+
*/
|
|
43
|
+
description?: React.ReactNode;
|
|
44
|
+
/**
|
|
45
|
+
* Action configuration
|
|
46
|
+
*/
|
|
47
|
+
action?: ActionConfig;
|
|
48
|
+
/**
|
|
49
|
+
* Custom slot for rendering action (overrides action)
|
|
50
|
+
*/
|
|
51
|
+
actionSlot?: React.ReactNode;
|
|
52
|
+
/**
|
|
53
|
+
* Highlight this plan
|
|
54
|
+
*/
|
|
55
|
+
isPopular?: boolean;
|
|
56
|
+
/**
|
|
57
|
+
* Badge content for popular plan
|
|
58
|
+
*/
|
|
59
|
+
badge?: React.ReactNode;
|
|
60
|
+
/**
|
|
61
|
+
* Additional CSS classes for plan header
|
|
62
|
+
*/
|
|
63
|
+
className?: string;
|
|
64
|
+
}
|
|
65
|
+
interface PricingComparisonHeadersProps {
|
|
66
|
+
/**
|
|
67
|
+
* Section title
|
|
68
|
+
*/
|
|
69
|
+
title?: React.ReactNode;
|
|
70
|
+
/**
|
|
71
|
+
* Section subtitle
|
|
72
|
+
*/
|
|
73
|
+
subtitle?: React.ReactNode;
|
|
74
|
+
/**
|
|
75
|
+
* Toggle label for monthly billing
|
|
76
|
+
*/
|
|
77
|
+
monthlyLabel?: React.ReactNode;
|
|
78
|
+
/**
|
|
79
|
+
* Toggle label for yearly billing
|
|
80
|
+
*/
|
|
81
|
+
yearlyLabel?: React.ReactNode;
|
|
82
|
+
/**
|
|
83
|
+
* Badge displayed on yearly toggle
|
|
84
|
+
*/
|
|
85
|
+
yearlyBadge?: React.ReactNode;
|
|
86
|
+
/**
|
|
87
|
+
* Monthly price suffix
|
|
88
|
+
*/
|
|
89
|
+
monthlyInterval?: React.ReactNode;
|
|
90
|
+
/**
|
|
91
|
+
* Yearly price suffix
|
|
92
|
+
*/
|
|
93
|
+
yearlyInterval?: React.ReactNode;
|
|
94
|
+
/**
|
|
95
|
+
* Plan definitions
|
|
96
|
+
*/
|
|
97
|
+
plans?: PricingComparisonHeadersPlan[];
|
|
98
|
+
/**
|
|
99
|
+
* Custom slot for rendering plans (overrides plans array)
|
|
100
|
+
*/
|
|
101
|
+
plansSlot?: React.ReactNode;
|
|
102
|
+
/**
|
|
103
|
+
* Feature rows
|
|
104
|
+
*/
|
|
105
|
+
features?: PricingComparisonHeadersFeature[];
|
|
106
|
+
/**
|
|
107
|
+
* Custom slot for rendering features (overrides features array)
|
|
108
|
+
*/
|
|
109
|
+
featuresSlot?: React.ReactNode;
|
|
110
|
+
/**
|
|
111
|
+
* Feature column label
|
|
112
|
+
*/
|
|
113
|
+
featureColumnLabel?: React.ReactNode;
|
|
114
|
+
/**
|
|
115
|
+
* Icon for available features
|
|
116
|
+
*/
|
|
117
|
+
availableIcon?: React.ReactNode;
|
|
118
|
+
/**
|
|
119
|
+
* Icon for unavailable features
|
|
120
|
+
*/
|
|
121
|
+
unavailableIcon?: React.ReactNode;
|
|
122
|
+
/**
|
|
123
|
+
* Icon name for available features
|
|
124
|
+
*/
|
|
125
|
+
availableIconName?: string;
|
|
126
|
+
/**
|
|
127
|
+
* Icon name for unavailable features
|
|
128
|
+
*/
|
|
129
|
+
unavailableIconName?: string;
|
|
130
|
+
/**
|
|
131
|
+
* Background style for the section
|
|
132
|
+
*/
|
|
133
|
+
background?: SectionBackground;
|
|
134
|
+
/**
|
|
135
|
+
* Vertical spacing for the section
|
|
136
|
+
*/
|
|
137
|
+
spacing?: SectionSpacing;
|
|
138
|
+
/**
|
|
139
|
+
* Optional background pattern name or URL
|
|
140
|
+
*/
|
|
141
|
+
pattern?: PatternName | undefined;
|
|
142
|
+
/**
|
|
143
|
+
* Pattern overlay opacity (0-1)
|
|
144
|
+
*/
|
|
145
|
+
patternOpacity?: number;
|
|
146
|
+
/**
|
|
147
|
+
* Additional CSS classes for the pattern overlay
|
|
148
|
+
*/
|
|
149
|
+
patternClassName?: string;
|
|
150
|
+
/**
|
|
151
|
+
* Additional CSS classes for the section
|
|
152
|
+
*/
|
|
153
|
+
className?: string;
|
|
154
|
+
/**
|
|
155
|
+
* Additional CSS classes for the container
|
|
156
|
+
*/
|
|
157
|
+
containerClassName?: string;
|
|
158
|
+
/**
|
|
159
|
+
* Additional CSS classes for the header
|
|
160
|
+
*/
|
|
161
|
+
headerClassName?: string;
|
|
162
|
+
/**
|
|
163
|
+
* Additional CSS classes for the title
|
|
164
|
+
*/
|
|
165
|
+
titleClassName?: string;
|
|
166
|
+
/**
|
|
167
|
+
* Additional CSS classes for the subtitle
|
|
168
|
+
*/
|
|
169
|
+
subtitleClassName?: string;
|
|
170
|
+
/**
|
|
171
|
+
* Additional CSS classes for toggle wrapper
|
|
172
|
+
*/
|
|
173
|
+
toggleClassName?: string;
|
|
174
|
+
/**
|
|
175
|
+
* Additional CSS classes for toggle labels
|
|
176
|
+
*/
|
|
177
|
+
toggleLabelClassName?: string;
|
|
178
|
+
/**
|
|
179
|
+
* Additional CSS classes for yearly badge
|
|
180
|
+
*/
|
|
181
|
+
yearlyBadgeClassName?: string;
|
|
182
|
+
/**
|
|
183
|
+
* Additional CSS classes for the table wrapper
|
|
184
|
+
*/
|
|
185
|
+
tableWrapperClassName?: string;
|
|
186
|
+
/**
|
|
187
|
+
* Additional CSS classes for plan header cells
|
|
188
|
+
*/
|
|
189
|
+
planHeaderClassName?: string;
|
|
190
|
+
/**
|
|
191
|
+
* Additional CSS classes for plan badge
|
|
192
|
+
*/
|
|
193
|
+
planBadgeClassName?: string;
|
|
194
|
+
/**
|
|
195
|
+
* Additional CSS classes for plan title
|
|
196
|
+
*/
|
|
197
|
+
planTitleClassName?: string;
|
|
198
|
+
/**
|
|
199
|
+
* Additional CSS classes for plan description
|
|
200
|
+
*/
|
|
201
|
+
planDescriptionClassName?: string;
|
|
202
|
+
/**
|
|
203
|
+
* Additional CSS classes for plan price
|
|
204
|
+
*/
|
|
205
|
+
planPriceClassName?: string;
|
|
206
|
+
/**
|
|
207
|
+
* Additional CSS classes for plan price interval
|
|
208
|
+
*/
|
|
209
|
+
planPriceIntervalClassName?: string;
|
|
210
|
+
/**
|
|
211
|
+
* Additional CSS classes for action
|
|
212
|
+
*/
|
|
213
|
+
actionClassName?: string;
|
|
214
|
+
/**
|
|
215
|
+
* Additional CSS classes for feature rows
|
|
216
|
+
*/
|
|
217
|
+
featureRowClassName?: string;
|
|
218
|
+
/**
|
|
219
|
+
* Additional CSS classes for feature name cell
|
|
220
|
+
*/
|
|
221
|
+
featureNameClassName?: string;
|
|
222
|
+
/**
|
|
223
|
+
* Additional CSS classes for feature value cell
|
|
224
|
+
*/
|
|
225
|
+
featureValueClassName?: string;
|
|
226
|
+
}
|
|
227
|
+
/**
|
|
228
|
+
* PricingComparisonHeaders displays a comparison table with plan headers and monthly/yearly toggle.
|
|
229
|
+
* Features sticky plan headers, feature rows with check/X indicators, and responsive design.
|
|
230
|
+
* Ideal for detailed feature comparisons across multiple pricing tiers.
|
|
231
|
+
*
|
|
232
|
+
* Perfect for products with many features that need clear tier differentiation.
|
|
233
|
+
*
|
|
234
|
+
* @example
|
|
235
|
+
* ```tsx
|
|
236
|
+
* <PricingComparisonHeaders
|
|
237
|
+
* title="Compare Plans"
|
|
238
|
+
* plans={[{ id: "free", name: "Free", monthlyPrice: "$0", yearlyPrice: "$0" }]}
|
|
239
|
+
* features={[{ name: "Projects", values: { free: "3", pro: "Unlimited", enterprise: "Unlimited" } }]}
|
|
240
|
+
* />
|
|
241
|
+
* ```
|
|
242
|
+
*/
|
|
243
|
+
declare function PricingComparisonHeaders({ title, subtitle, monthlyLabel, yearlyLabel, yearlyBadge, monthlyInterval, yearlyInterval, plans, plansSlot, features, featuresSlot, featureColumnLabel, availableIcon, unavailableIcon, availableIconName, unavailableIconName, background, spacing, pattern, patternOpacity, patternClassName, className, containerClassName, headerClassName, titleClassName, subtitleClassName, toggleClassName, toggleLabelClassName, yearlyBadgeClassName, tableWrapperClassName, planHeaderClassName, planBadgeClassName, planTitleClassName, planDescriptionClassName, planPriceClassName, planPriceIntervalClassName, actionClassName, featureRowClassName, featureNameClassName, featureValueClassName, }: PricingComparisonHeadersProps): React.JSX.Element;
|
|
244
|
+
|
|
245
|
+
export { PricingComparisonHeaders, type PricingComparisonHeadersProps };
|