@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,265 @@
|
|
|
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 PricingFullComparisonFeature {
|
|
10
|
+
/**
|
|
11
|
+
* Feature label
|
|
12
|
+
*/
|
|
13
|
+
name?: React.ReactNode;
|
|
14
|
+
/**
|
|
15
|
+
* Feature category
|
|
16
|
+
*/
|
|
17
|
+
category?: React.ReactNode;
|
|
18
|
+
/**
|
|
19
|
+
* Values per plan id
|
|
20
|
+
*/
|
|
21
|
+
values?: Record<string, boolean | React.ReactNode>;
|
|
22
|
+
/**
|
|
23
|
+
* Additional CSS classes for the feature row
|
|
24
|
+
*/
|
|
25
|
+
className?: string;
|
|
26
|
+
}
|
|
27
|
+
interface PricingFullComparisonPlan {
|
|
28
|
+
/**
|
|
29
|
+
* Unique plan id
|
|
30
|
+
*/
|
|
31
|
+
id?: string;
|
|
32
|
+
/**
|
|
33
|
+
* Plan name
|
|
34
|
+
*/
|
|
35
|
+
name?: React.ReactNode;
|
|
36
|
+
/**
|
|
37
|
+
* Monthly price display
|
|
38
|
+
*/
|
|
39
|
+
monthlyPrice?: React.ReactNode;
|
|
40
|
+
/**
|
|
41
|
+
* Yearly price display
|
|
42
|
+
*/
|
|
43
|
+
yearlyPrice?: React.ReactNode;
|
|
44
|
+
/**
|
|
45
|
+
* Plan description
|
|
46
|
+
*/
|
|
47
|
+
description?: React.ReactNode;
|
|
48
|
+
/**
|
|
49
|
+
* Action configuration
|
|
50
|
+
*/
|
|
51
|
+
action?: ActionConfig;
|
|
52
|
+
/**
|
|
53
|
+
* Custom slot for rendering action (overrides action)
|
|
54
|
+
*/
|
|
55
|
+
actionSlot?: React.ReactNode;
|
|
56
|
+
/**
|
|
57
|
+
* Highlight this plan
|
|
58
|
+
*/
|
|
59
|
+
isPopular?: boolean;
|
|
60
|
+
/**
|
|
61
|
+
* Badge content
|
|
62
|
+
*/
|
|
63
|
+
badge?: React.ReactNode;
|
|
64
|
+
/**
|
|
65
|
+
* Additional CSS classes for the plan card
|
|
66
|
+
*/
|
|
67
|
+
className?: string;
|
|
68
|
+
}
|
|
69
|
+
interface PricingFullComparisonProps {
|
|
70
|
+
/**
|
|
71
|
+
* Section title
|
|
72
|
+
*/
|
|
73
|
+
title?: React.ReactNode;
|
|
74
|
+
/**
|
|
75
|
+
* Section subtitle
|
|
76
|
+
*/
|
|
77
|
+
subtitle?: React.ReactNode;
|
|
78
|
+
/**
|
|
79
|
+
* Toggle label for monthly billing
|
|
80
|
+
*/
|
|
81
|
+
monthlyLabel?: React.ReactNode;
|
|
82
|
+
/**
|
|
83
|
+
* Toggle label for yearly billing
|
|
84
|
+
*/
|
|
85
|
+
yearlyLabel?: React.ReactNode;
|
|
86
|
+
/**
|
|
87
|
+
* Badge displayed on yearly toggle
|
|
88
|
+
*/
|
|
89
|
+
yearlyBadge?: React.ReactNode;
|
|
90
|
+
/**
|
|
91
|
+
* Monthly price suffix
|
|
92
|
+
*/
|
|
93
|
+
monthlyInterval?: React.ReactNode;
|
|
94
|
+
/**
|
|
95
|
+
* Yearly price suffix
|
|
96
|
+
*/
|
|
97
|
+
yearlyInterval?: React.ReactNode;
|
|
98
|
+
/**
|
|
99
|
+
* Plans to compare
|
|
100
|
+
*/
|
|
101
|
+
plans?: PricingFullComparisonPlan[];
|
|
102
|
+
/**
|
|
103
|
+
* Custom slot for rendering plan cards (overrides plans array)
|
|
104
|
+
*/
|
|
105
|
+
plansSlot?: React.ReactNode;
|
|
106
|
+
/**
|
|
107
|
+
* Feature rows
|
|
108
|
+
*/
|
|
109
|
+
features?: PricingFullComparisonFeature[];
|
|
110
|
+
/**
|
|
111
|
+
* Custom slot for rendering comparison table (overrides features array)
|
|
112
|
+
*/
|
|
113
|
+
comparisonSlot?: React.ReactNode;
|
|
114
|
+
/**
|
|
115
|
+
* Optional category order
|
|
116
|
+
*/
|
|
117
|
+
categoryOrder?: React.ReactNode[];
|
|
118
|
+
/**
|
|
119
|
+
* Feature column label
|
|
120
|
+
*/
|
|
121
|
+
featureColumnLabel?: React.ReactNode;
|
|
122
|
+
/**
|
|
123
|
+
* Icon for available features
|
|
124
|
+
*/
|
|
125
|
+
availableIcon?: React.ReactNode;
|
|
126
|
+
/**
|
|
127
|
+
* Icon for unavailable features
|
|
128
|
+
*/
|
|
129
|
+
unavailableIcon?: React.ReactNode;
|
|
130
|
+
/**
|
|
131
|
+
* Icon name for available features
|
|
132
|
+
*/
|
|
133
|
+
availableIconName?: string;
|
|
134
|
+
/**
|
|
135
|
+
* Icon name for unavailable features
|
|
136
|
+
*/
|
|
137
|
+
unavailableIconName?: string;
|
|
138
|
+
/**
|
|
139
|
+
* Background style for the section
|
|
140
|
+
*/
|
|
141
|
+
background?: SectionBackground;
|
|
142
|
+
/**
|
|
143
|
+
* Vertical spacing for the section
|
|
144
|
+
*/
|
|
145
|
+
spacing?: SectionSpacing;
|
|
146
|
+
/**
|
|
147
|
+
* Optional background pattern name or URL
|
|
148
|
+
*/
|
|
149
|
+
pattern?: PatternName | undefined;
|
|
150
|
+
/**
|
|
151
|
+
* Pattern overlay opacity (0-1)
|
|
152
|
+
*/
|
|
153
|
+
patternOpacity?: number;
|
|
154
|
+
/**
|
|
155
|
+
* Additional CSS classes for the pattern overlay
|
|
156
|
+
*/
|
|
157
|
+
patternClassName?: string;
|
|
158
|
+
/**
|
|
159
|
+
* Additional CSS classes for the section
|
|
160
|
+
*/
|
|
161
|
+
className?: string;
|
|
162
|
+
/**
|
|
163
|
+
* Additional CSS classes for the container
|
|
164
|
+
*/
|
|
165
|
+
containerClassName?: string;
|
|
166
|
+
/**
|
|
167
|
+
* Additional CSS classes for the header
|
|
168
|
+
*/
|
|
169
|
+
headerClassName?: string;
|
|
170
|
+
/**
|
|
171
|
+
* Additional CSS classes for the title
|
|
172
|
+
*/
|
|
173
|
+
titleClassName?: string;
|
|
174
|
+
/**
|
|
175
|
+
* Additional CSS classes for the subtitle
|
|
176
|
+
*/
|
|
177
|
+
subtitleClassName?: string;
|
|
178
|
+
/**
|
|
179
|
+
* Additional CSS classes for toggle wrapper
|
|
180
|
+
*/
|
|
181
|
+
toggleClassName?: string;
|
|
182
|
+
/**
|
|
183
|
+
* Additional CSS classes for toggle labels
|
|
184
|
+
*/
|
|
185
|
+
toggleLabelClassName?: string;
|
|
186
|
+
/**
|
|
187
|
+
* Additional CSS classes for yearly badge
|
|
188
|
+
*/
|
|
189
|
+
yearlyBadgeClassName?: string;
|
|
190
|
+
/**
|
|
191
|
+
* Additional CSS classes for plan grid
|
|
192
|
+
*/
|
|
193
|
+
plansGridClassName?: string;
|
|
194
|
+
/**
|
|
195
|
+
* Additional CSS classes for plan cards
|
|
196
|
+
*/
|
|
197
|
+
planCardClassName?: string;
|
|
198
|
+
/**
|
|
199
|
+
* Additional CSS classes for popular cards
|
|
200
|
+
*/
|
|
201
|
+
popularCardClassName?: string;
|
|
202
|
+
/**
|
|
203
|
+
* Additional CSS classes for plan badge
|
|
204
|
+
*/
|
|
205
|
+
planBadgeClassName?: string;
|
|
206
|
+
/**
|
|
207
|
+
* Additional CSS classes for plan title
|
|
208
|
+
*/
|
|
209
|
+
planTitleClassName?: string;
|
|
210
|
+
/**
|
|
211
|
+
* Additional CSS classes for plan description
|
|
212
|
+
*/
|
|
213
|
+
planDescriptionClassName?: string;
|
|
214
|
+
/**
|
|
215
|
+
* Additional CSS classes for plan price
|
|
216
|
+
*/
|
|
217
|
+
planPriceClassName?: string;
|
|
218
|
+
/**
|
|
219
|
+
* Additional CSS classes for plan price interval
|
|
220
|
+
*/
|
|
221
|
+
planPriceIntervalClassName?: string;
|
|
222
|
+
/**
|
|
223
|
+
* Additional CSS classes for action
|
|
224
|
+
*/
|
|
225
|
+
actionClassName?: string;
|
|
226
|
+
/**
|
|
227
|
+
* Additional CSS classes for table wrapper
|
|
228
|
+
*/
|
|
229
|
+
tableWrapperClassName?: string;
|
|
230
|
+
/**
|
|
231
|
+
* Additional CSS classes for category row
|
|
232
|
+
*/
|
|
233
|
+
categoryRowClassName?: string;
|
|
234
|
+
/**
|
|
235
|
+
* Additional CSS classes for feature row
|
|
236
|
+
*/
|
|
237
|
+
featureRowClassName?: string;
|
|
238
|
+
/**
|
|
239
|
+
* Additional CSS classes for feature name cell
|
|
240
|
+
*/
|
|
241
|
+
featureNameClassName?: string;
|
|
242
|
+
/**
|
|
243
|
+
* Additional CSS classes for feature value cell
|
|
244
|
+
*/
|
|
245
|
+
featureValueClassName?: string;
|
|
246
|
+
}
|
|
247
|
+
/**
|
|
248
|
+
* PricingFullComparison displays a comprehensive 4-tier pricing comparison with full feature matrix.
|
|
249
|
+
* Features plan cards at the top followed by a detailed comparison table organized by category.
|
|
250
|
+
* Includes monthly/yearly toggle and responsive design for all screen sizes.
|
|
251
|
+
*
|
|
252
|
+
* Ideal for products with extensive feature sets across multiple pricing tiers.
|
|
253
|
+
*
|
|
254
|
+
* @example
|
|
255
|
+
* ```tsx
|
|
256
|
+
* <PricingFullComparison
|
|
257
|
+
* title="Compare All Plans"
|
|
258
|
+
* plans={[{ id: "free", name: "Free", monthlyPrice: "$0", yearlyPrice: "$0", action: { label: "Get Started" } }]}
|
|
259
|
+
* features={[{ name: "Projects", category: "Usage", values: { free: "3", startup: "10", team: "Unlimited", enterprise: "Unlimited" } }]}
|
|
260
|
+
* />
|
|
261
|
+
* ```
|
|
262
|
+
*/
|
|
263
|
+
declare function PricingFullComparison({ title, subtitle, monthlyLabel, yearlyLabel, yearlyBadge, monthlyInterval, yearlyInterval, plans, plansSlot, features, comparisonSlot, categoryOrder, featureColumnLabel, availableIcon, unavailableIcon, availableIconName, unavailableIconName, background, spacing, pattern, patternOpacity, patternClassName, className, containerClassName, headerClassName, titleClassName, subtitleClassName, toggleClassName, toggleLabelClassName, yearlyBadgeClassName, plansGridClassName, planCardClassName, popularCardClassName, planBadgeClassName, planTitleClassName, planDescriptionClassName, planPriceClassName, planPriceIntervalClassName, actionClassName, tableWrapperClassName, categoryRowClassName, featureRowClassName, featureNameClassName, featureValueClassName, }: PricingFullComparisonProps): React.JSX.Element;
|
|
264
|
+
|
|
265
|
+
export { PricingFullComparison, type PricingFullComparisonProps };
|
|
@@ -0,0 +1,265 @@
|
|
|
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 PricingFullComparisonFeature {
|
|
10
|
+
/**
|
|
11
|
+
* Feature label
|
|
12
|
+
*/
|
|
13
|
+
name?: React.ReactNode;
|
|
14
|
+
/**
|
|
15
|
+
* Feature category
|
|
16
|
+
*/
|
|
17
|
+
category?: React.ReactNode;
|
|
18
|
+
/**
|
|
19
|
+
* Values per plan id
|
|
20
|
+
*/
|
|
21
|
+
values?: Record<string, boolean | React.ReactNode>;
|
|
22
|
+
/**
|
|
23
|
+
* Additional CSS classes for the feature row
|
|
24
|
+
*/
|
|
25
|
+
className?: string;
|
|
26
|
+
}
|
|
27
|
+
interface PricingFullComparisonPlan {
|
|
28
|
+
/**
|
|
29
|
+
* Unique plan id
|
|
30
|
+
*/
|
|
31
|
+
id?: string;
|
|
32
|
+
/**
|
|
33
|
+
* Plan name
|
|
34
|
+
*/
|
|
35
|
+
name?: React.ReactNode;
|
|
36
|
+
/**
|
|
37
|
+
* Monthly price display
|
|
38
|
+
*/
|
|
39
|
+
monthlyPrice?: React.ReactNode;
|
|
40
|
+
/**
|
|
41
|
+
* Yearly price display
|
|
42
|
+
*/
|
|
43
|
+
yearlyPrice?: React.ReactNode;
|
|
44
|
+
/**
|
|
45
|
+
* Plan description
|
|
46
|
+
*/
|
|
47
|
+
description?: React.ReactNode;
|
|
48
|
+
/**
|
|
49
|
+
* Action configuration
|
|
50
|
+
*/
|
|
51
|
+
action?: ActionConfig;
|
|
52
|
+
/**
|
|
53
|
+
* Custom slot for rendering action (overrides action)
|
|
54
|
+
*/
|
|
55
|
+
actionSlot?: React.ReactNode;
|
|
56
|
+
/**
|
|
57
|
+
* Highlight this plan
|
|
58
|
+
*/
|
|
59
|
+
isPopular?: boolean;
|
|
60
|
+
/**
|
|
61
|
+
* Badge content
|
|
62
|
+
*/
|
|
63
|
+
badge?: React.ReactNode;
|
|
64
|
+
/**
|
|
65
|
+
* Additional CSS classes for the plan card
|
|
66
|
+
*/
|
|
67
|
+
className?: string;
|
|
68
|
+
}
|
|
69
|
+
interface PricingFullComparisonProps {
|
|
70
|
+
/**
|
|
71
|
+
* Section title
|
|
72
|
+
*/
|
|
73
|
+
title?: React.ReactNode;
|
|
74
|
+
/**
|
|
75
|
+
* Section subtitle
|
|
76
|
+
*/
|
|
77
|
+
subtitle?: React.ReactNode;
|
|
78
|
+
/**
|
|
79
|
+
* Toggle label for monthly billing
|
|
80
|
+
*/
|
|
81
|
+
monthlyLabel?: React.ReactNode;
|
|
82
|
+
/**
|
|
83
|
+
* Toggle label for yearly billing
|
|
84
|
+
*/
|
|
85
|
+
yearlyLabel?: React.ReactNode;
|
|
86
|
+
/**
|
|
87
|
+
* Badge displayed on yearly toggle
|
|
88
|
+
*/
|
|
89
|
+
yearlyBadge?: React.ReactNode;
|
|
90
|
+
/**
|
|
91
|
+
* Monthly price suffix
|
|
92
|
+
*/
|
|
93
|
+
monthlyInterval?: React.ReactNode;
|
|
94
|
+
/**
|
|
95
|
+
* Yearly price suffix
|
|
96
|
+
*/
|
|
97
|
+
yearlyInterval?: React.ReactNode;
|
|
98
|
+
/**
|
|
99
|
+
* Plans to compare
|
|
100
|
+
*/
|
|
101
|
+
plans?: PricingFullComparisonPlan[];
|
|
102
|
+
/**
|
|
103
|
+
* Custom slot for rendering plan cards (overrides plans array)
|
|
104
|
+
*/
|
|
105
|
+
plansSlot?: React.ReactNode;
|
|
106
|
+
/**
|
|
107
|
+
* Feature rows
|
|
108
|
+
*/
|
|
109
|
+
features?: PricingFullComparisonFeature[];
|
|
110
|
+
/**
|
|
111
|
+
* Custom slot for rendering comparison table (overrides features array)
|
|
112
|
+
*/
|
|
113
|
+
comparisonSlot?: React.ReactNode;
|
|
114
|
+
/**
|
|
115
|
+
* Optional category order
|
|
116
|
+
*/
|
|
117
|
+
categoryOrder?: React.ReactNode[];
|
|
118
|
+
/**
|
|
119
|
+
* Feature column label
|
|
120
|
+
*/
|
|
121
|
+
featureColumnLabel?: React.ReactNode;
|
|
122
|
+
/**
|
|
123
|
+
* Icon for available features
|
|
124
|
+
*/
|
|
125
|
+
availableIcon?: React.ReactNode;
|
|
126
|
+
/**
|
|
127
|
+
* Icon for unavailable features
|
|
128
|
+
*/
|
|
129
|
+
unavailableIcon?: React.ReactNode;
|
|
130
|
+
/**
|
|
131
|
+
* Icon name for available features
|
|
132
|
+
*/
|
|
133
|
+
availableIconName?: string;
|
|
134
|
+
/**
|
|
135
|
+
* Icon name for unavailable features
|
|
136
|
+
*/
|
|
137
|
+
unavailableIconName?: string;
|
|
138
|
+
/**
|
|
139
|
+
* Background style for the section
|
|
140
|
+
*/
|
|
141
|
+
background?: SectionBackground;
|
|
142
|
+
/**
|
|
143
|
+
* Vertical spacing for the section
|
|
144
|
+
*/
|
|
145
|
+
spacing?: SectionSpacing;
|
|
146
|
+
/**
|
|
147
|
+
* Optional background pattern name or URL
|
|
148
|
+
*/
|
|
149
|
+
pattern?: PatternName | undefined;
|
|
150
|
+
/**
|
|
151
|
+
* Pattern overlay opacity (0-1)
|
|
152
|
+
*/
|
|
153
|
+
patternOpacity?: number;
|
|
154
|
+
/**
|
|
155
|
+
* Additional CSS classes for the pattern overlay
|
|
156
|
+
*/
|
|
157
|
+
patternClassName?: string;
|
|
158
|
+
/**
|
|
159
|
+
* Additional CSS classes for the section
|
|
160
|
+
*/
|
|
161
|
+
className?: string;
|
|
162
|
+
/**
|
|
163
|
+
* Additional CSS classes for the container
|
|
164
|
+
*/
|
|
165
|
+
containerClassName?: string;
|
|
166
|
+
/**
|
|
167
|
+
* Additional CSS classes for the header
|
|
168
|
+
*/
|
|
169
|
+
headerClassName?: string;
|
|
170
|
+
/**
|
|
171
|
+
* Additional CSS classes for the title
|
|
172
|
+
*/
|
|
173
|
+
titleClassName?: string;
|
|
174
|
+
/**
|
|
175
|
+
* Additional CSS classes for the subtitle
|
|
176
|
+
*/
|
|
177
|
+
subtitleClassName?: string;
|
|
178
|
+
/**
|
|
179
|
+
* Additional CSS classes for toggle wrapper
|
|
180
|
+
*/
|
|
181
|
+
toggleClassName?: string;
|
|
182
|
+
/**
|
|
183
|
+
* Additional CSS classes for toggle labels
|
|
184
|
+
*/
|
|
185
|
+
toggleLabelClassName?: string;
|
|
186
|
+
/**
|
|
187
|
+
* Additional CSS classes for yearly badge
|
|
188
|
+
*/
|
|
189
|
+
yearlyBadgeClassName?: string;
|
|
190
|
+
/**
|
|
191
|
+
* Additional CSS classes for plan grid
|
|
192
|
+
*/
|
|
193
|
+
plansGridClassName?: string;
|
|
194
|
+
/**
|
|
195
|
+
* Additional CSS classes for plan cards
|
|
196
|
+
*/
|
|
197
|
+
planCardClassName?: string;
|
|
198
|
+
/**
|
|
199
|
+
* Additional CSS classes for popular cards
|
|
200
|
+
*/
|
|
201
|
+
popularCardClassName?: string;
|
|
202
|
+
/**
|
|
203
|
+
* Additional CSS classes for plan badge
|
|
204
|
+
*/
|
|
205
|
+
planBadgeClassName?: string;
|
|
206
|
+
/**
|
|
207
|
+
* Additional CSS classes for plan title
|
|
208
|
+
*/
|
|
209
|
+
planTitleClassName?: string;
|
|
210
|
+
/**
|
|
211
|
+
* Additional CSS classes for plan description
|
|
212
|
+
*/
|
|
213
|
+
planDescriptionClassName?: string;
|
|
214
|
+
/**
|
|
215
|
+
* Additional CSS classes for plan price
|
|
216
|
+
*/
|
|
217
|
+
planPriceClassName?: string;
|
|
218
|
+
/**
|
|
219
|
+
* Additional CSS classes for plan price interval
|
|
220
|
+
*/
|
|
221
|
+
planPriceIntervalClassName?: string;
|
|
222
|
+
/**
|
|
223
|
+
* Additional CSS classes for action
|
|
224
|
+
*/
|
|
225
|
+
actionClassName?: string;
|
|
226
|
+
/**
|
|
227
|
+
* Additional CSS classes for table wrapper
|
|
228
|
+
*/
|
|
229
|
+
tableWrapperClassName?: string;
|
|
230
|
+
/**
|
|
231
|
+
* Additional CSS classes for category row
|
|
232
|
+
*/
|
|
233
|
+
categoryRowClassName?: string;
|
|
234
|
+
/**
|
|
235
|
+
* Additional CSS classes for feature row
|
|
236
|
+
*/
|
|
237
|
+
featureRowClassName?: string;
|
|
238
|
+
/**
|
|
239
|
+
* Additional CSS classes for feature name cell
|
|
240
|
+
*/
|
|
241
|
+
featureNameClassName?: string;
|
|
242
|
+
/**
|
|
243
|
+
* Additional CSS classes for feature value cell
|
|
244
|
+
*/
|
|
245
|
+
featureValueClassName?: string;
|
|
246
|
+
}
|
|
247
|
+
/**
|
|
248
|
+
* PricingFullComparison displays a comprehensive 4-tier pricing comparison with full feature matrix.
|
|
249
|
+
* Features plan cards at the top followed by a detailed comparison table organized by category.
|
|
250
|
+
* Includes monthly/yearly toggle and responsive design for all screen sizes.
|
|
251
|
+
*
|
|
252
|
+
* Ideal for products with extensive feature sets across multiple pricing tiers.
|
|
253
|
+
*
|
|
254
|
+
* @example
|
|
255
|
+
* ```tsx
|
|
256
|
+
* <PricingFullComparison
|
|
257
|
+
* title="Compare All Plans"
|
|
258
|
+
* plans={[{ id: "free", name: "Free", monthlyPrice: "$0", yearlyPrice: "$0", action: { label: "Get Started" } }]}
|
|
259
|
+
* features={[{ name: "Projects", category: "Usage", values: { free: "3", startup: "10", team: "Unlimited", enterprise: "Unlimited" } }]}
|
|
260
|
+
* />
|
|
261
|
+
* ```
|
|
262
|
+
*/
|
|
263
|
+
declare function PricingFullComparison({ title, subtitle, monthlyLabel, yearlyLabel, yearlyBadge, monthlyInterval, yearlyInterval, plans, plansSlot, features, comparisonSlot, categoryOrder, featureColumnLabel, availableIcon, unavailableIcon, availableIconName, unavailableIconName, background, spacing, pattern, patternOpacity, patternClassName, className, containerClassName, headerClassName, titleClassName, subtitleClassName, toggleClassName, toggleLabelClassName, yearlyBadgeClassName, plansGridClassName, planCardClassName, popularCardClassName, planBadgeClassName, planTitleClassName, planDescriptionClassName, planPriceClassName, planPriceIntervalClassName, actionClassName, tableWrapperClassName, categoryRowClassName, featureRowClassName, featureNameClassName, featureValueClassName, }: PricingFullComparisonProps): React.JSX.Element;
|
|
264
|
+
|
|
265
|
+
export { PricingFullComparison, type PricingFullComparisonProps };
|