Skip to content

Commit 624b7b8

Browse files
feat: add subtitle slot to RadioCard matching gonfalon shortDescription
- Add subtitle slot styling to RadioGroup.module.css with secondary text color - Update selected state styling to use primary color and medium font weight - Update RadioCardGroup story to demonstrate subtitle slot usage - Maintain CSS-only approach using descendant selectors for styling Co-Authored-By: Naomi Hironaka <[email protected]>
1 parent 1adceef commit 624b7b8

File tree

2 files changed

+32
-5
lines changed

2 files changed

+32
-5
lines changed

packages/components/src/styles/RadioGroup.module.css

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,10 +106,22 @@
106106
color: var(--lp-color-text-ui-primary);
107107
}
108108

109+
& [slot='heading'] [slot='subtitle'] {
110+
font: var(--lp-text-body-2-regular);
111+
color: var(--lp-color-text-ui-secondary);
112+
text-align: left;
113+
white-space: normal;
114+
}
115+
109116
& [slot='description'] {
110117
grid-area: description;
111118
font: var(--lp-text-body-2-regular);
112119
color: var(--lp-color-text-ui-secondary);
113120
margin-top: var(--lp-spacing-200);
114121
}
122+
123+
&[data-selected] [slot='heading'] [slot='subtitle'] {
124+
color: var(--lp-color-text-ui-primary);
125+
font-weight: var(--lp-font-weight-medium);
126+
}
115127
}

packages/components/stories/recipes/composition.stories.tsx

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -178,7 +178,10 @@ export const RadioCardGroup: Story = {
178178
<div slot="icon">
179179
<Icon name="flag" size="medium" />
180180
</div>
181-
<div slot="label">Feature change</div>
181+
<div>
182+
<div slot="label">Feature change</div>
183+
<div slot="subtitle">A/B test different variations</div>
184+
</div>
182185
</div>
183186
<div slot="description">Compare treatments to see which one wins</div>
184187
</Radio>
@@ -187,7 +190,10 @@ export const RadioCardGroup: Story = {
187190
<div slot="icon">
188191
<Icon name="flask" size="medium" />
189192
</div>
190-
<div slot="label">Funnel optimization</div>
193+
<div>
194+
<div slot="label">Funnel optimization</div>
195+
<div slot="subtitle">Multi-step conversion tracking</div>
196+
</div>
191197
</div>
192198
<div slot="description">Track the success of a multi-step user flow</div>
193199
</Radio>
@@ -196,7 +202,10 @@ export const RadioCardGroup: Story = {
196202
<div slot="icon">
197203
<Icon name="data" size="medium" />
198204
</div>
199-
<div slot="label">Data Export only</div>
205+
<div>
206+
<div slot="label">Data Export only</div>
207+
<div slot="subtitle">Raw data for analysis</div>
208+
</div>
200209
</div>
201210
<div slot="description">Create custom experiment analysis in your warehouse</div>
202211
</Radio>
@@ -205,7 +214,10 @@ export const RadioCardGroup: Story = {
205214
<div slot="icon">
206215
<Icon name="circle" size="medium" />
207216
</div>
208-
<div slot="label">Snowflake native</div>
217+
<div>
218+
<div slot="label">Snowflake native</div>
219+
<div slot="subtitle">Warehouse-powered insights</div>
220+
</div>
209221
</div>
210222
<div slot="description">Analysis powered by your Snowflake warehouse</div>
211223
</Radio>
@@ -214,7 +226,10 @@ export const RadioCardGroup: Story = {
214226
<div slot="icon">
215227
<Icon name="gear" size="medium" />
216228
</div>
217-
<div slot="label">Simple option</div>
229+
<div>
230+
<div slot="label">Simple option</div>
231+
<div slot="subtitle">Basic configuration</div>
232+
</div>
218233
</div>
219234
</Radio>
220235
</div>

0 commit comments

Comments
 (0)