1717 name = " ComparisonColumn"
1818 kind = " One alternative"
1919 summary = " One self-contained option in a comparison, with independent emphasis and freely composed details."
20- source = " https://github.com/PureStackStudio/PureStack/blob/main/packages/ts-components/src/standard/landing/landingTypes .ts"
20+ source = " https://github.com/PureStackStudio/PureStack/blob/main/packages/ts-components/src/standard/landing/comparisonColumn .ts"
2121 section = " Landing & pricing"
2222 sectionHref = " /components/landing/" />
2323
2424## A highlighted option
2525
26- An icon and badge identify the option before its supporting details.
26+ ComparisonColumn gives each option a clear introduction, readable details,
27+ and room for a next step. Use the ` actions ` slot to keep links aligned at the
28+ bottom when neighboring columns contain different amounts of content.
2729
2830<Tabs
2931 group = " comparison-column-sample-1"
@@ -35,47 +37,18 @@ An icon and badge identify the option before its supporting details.
3537>
3638 <TabPane id = " comparison-column-sample-1-preview" label = " Preview" >
3739 <ComponentExample
38- label = " ComparisonColumn in context"
39- caption = " Compare the composition, then open its source tab to adapt it."
40+ data-toc-ignore
41+ label = " One option, a clear story"
42+ caption = " Introduce the option, explain its strengths, and give the reader a next step."
4043 >
41- <ComparisonColumn
42- title = " Component composition"
43- summary = " Build a view from focused pieces."
44- badge = " Recommended here"
45- icon = " lucide:check"
46- tone = " accent"
47- >
48- <ul class = " pl-0" >
49- <ComparisonFeature >Readable source</ComparisonFeature >
50- <ComparisonFeature >Shared theme tokens</ComparisonFeature >
51- </ul >
52- <BtnLink href = " /components/landing/feature-card/" variant = " link" >
53- Explore card composition
54- </BtnLink >
55- </ComparisonColumn >
44+ <import-content src = " ./_highlighted-option.mdx" />
5645 </ComponentExample >
5746 </TabPane >
5847 <TabPane
5948 id = " comparison-column-sample-1-source-0"
6049 label = " highlighted-option.mdx"
6150 >
62- ``` html
63- <ComparisonColumn
64- title =" Component composition"
65- summary =" Build a view from focused pieces."
66- badge =" Recommended here"
67- icon =" lucide:check"
68- tone =" accent"
69- >
70- <ul class =" pl-0" >
71- <ComparisonFeature >Readable source</ComparisonFeature >
72- <ComparisonFeature >Shared theme tokens</ComparisonFeature >
73- </ul >
74- <BtnLink href =" /components/landing/feature-card/" variant =" link" >
75- Explore card composition
76- </BtnLink >
77- </ComparisonColumn >
78- ```
51+ <import-codeblock src = " ./_highlighted-option.mdx" lang = " html" />
7952 </TabPane >
8053</Tabs >
8154
@@ -92,11 +65,11 @@ Use outline or neutral treatments when both options should have equal emphasis.
9265 tabVariant = " underline"
9366>
9467 <TabPane id = " comparison-column-sample-2-preview" label = " Preview" >
95- <div class = " component-preview-stage" >
68+ <div class = " component-preview-stage" data-toc-ignore >
9669 <ComparisonColumn
9770 title = " Plain content"
9871 summary = " A good fit for a short explanation."
99- variant = " outline "
72+ variant = " surface "
10073 >
10174 <p class = " mb-0" >
10275 Choose the simplest structure that communicates the information.
@@ -109,7 +82,7 @@ Use outline or neutral treatments when both options should have equal emphasis.
10982<ComparisonColumn
11083 title =" Plain content"
11184 summary =" A good fit for a short explanation."
112- variant =" outline "
85+ variant =" surface "
11386>
11487 <p class =" mb-0" >Choose the simplest structure that communicates the information.</p >
11588</ComparisonColumn >
@@ -122,6 +95,7 @@ Use outline or neutral treatments when both options should have equal emphasis.
12295The same composition in every semantic tone. Child tones are explicit where the composition owns them, including navigation actions.
12396
12497<ComponentExample
98+ data-toc-ignore
12599 label = " All ten semantic tones"
126100 caption = " Switch the site theme to compare the same samples in both palettes."
127101>
@@ -135,6 +109,7 @@ The same composition in every semantic tone. Child tones are explicit where the
135109Every supported variant is shown in accent, including none. Variant controls the outer treatment; nested content may use its own treatment.
136110
137111<ComponentExample
112+ data-toc-ignore
138113 label = " All eighteen visual variants"
139114 caption = " Switch the site theme to compare the same samples in both palettes."
140115>
@@ -146,6 +121,7 @@ Every supported variant is shown in accent, including none. Variant controls the
146121## Decoration and rich detail
147122
148123<ComponentExample
124+ data-toc-ignore
149125 label = " A quiet alternative and a highlighted choice"
150126 caption = " A title, summary, badge, and icon are independently optional. Compose feature lists in the default slot."
151127>
@@ -154,7 +130,7 @@ Every supported variant is shown in accent, including none. Variant controls the
154130 <code >Quiet</code ><ComparisonColumn
155131 title = " Start small"
156132 summary = " A few reusable patterns."
157- variant = " outline "
133+ variant = " surface "
158134 ><ul class = " m-0 p-0" >
159135 <ComparisonFeature >Basic composition</ComparisonFeature >
160136 </ul ></ComparisonColumn >
@@ -185,6 +161,7 @@ Every supported variant is shown in accent, including none. Variant controls the
185161| title, summary | Quiet uses a title and summary without decoration. |
186162| icon, badge | Icon-only and badge-only samples sit beside the fully decorated tone gallery. |
187163| Default slot | Compose native feature lists or rich supporting paragraphs below the summary. |
164+ | actions slot | Place links or buttons here to keep the next step at the bottom of the column. |
188165| Native attributes and events | Pass attributes through the root; keyboard behavior belongs to the composed native controls. |
189166
190167This component exposes tone and variant, but no variantMode. Style individual child components explicitly when their appearance should match.
@@ -281,10 +258,11 @@ Titles render as h3. A comparison column can contain links but is not itself cli
281258
282259### Composition
283260
284- <div class = " api-contract" >
261+ <div class = " api-contract wrap-anywhere " >
285262 <p >
286- <strong >Default slot:</strong > details, feature lists and actions. Register
287- defineComparisonColumnComponent with Panel, Flex, Badge and Icon
263+ <strong >Default slot:</strong > details and feature lists.
264+ <strong >actions slot:</strong > links or buttons below the details. Register
265+ defineComparisonColumnComponent with Panel, Flex, Badge and IconFrame
288266 dependencies.
289267 </p >
290268</div >
0 commit comments