Skip to content

Commit 66d2cee

Browse files
jenndiazpfulton
authored andcommitted
feat(buttongroup)!: migrate to S2 (#2457)
BREAKING CHANGE: migrates Button Group to Spectrum 2 Also: * docs(buttongroup): expand chromatic coverage * refactor(buttongroup): remove extra css classes
1 parent afb5788 commit 66d2cee

File tree

3 files changed

+26
-24
lines changed

3 files changed

+26
-24
lines changed

components/buttongroup/index.css

+3-18
Original file line numberDiff line numberDiff line change
@@ -11,28 +11,13 @@ governing permissions and limitations under the License.
1111
*/
1212

1313
.spectrum-ButtonGroup {
14-
--spectrum-buttongroup-spacing-horizontal: var(--spectrum-spacing-300);
15-
--spectrum-buttongroup-spacing-vertical: var(--spectrum-spacing-300);
16-
}
17-
18-
.spectrum-ButtonGroup--sizeS {
1914
--spectrum-buttongroup-spacing-horizontal: var(--spectrum-spacing-200);
2015
--spectrum-buttongroup-spacing-vertical: var(--spectrum-spacing-200);
2116
}
2217

23-
.spectrum-ButtonGroup--sizeM {
24-
--spectrum-buttongroup-spacing-horizontal: var(--spectrum-spacing-300);
25-
--spectrum-buttongroup-spacing-vertical: var(--spectrum-spacing-300);
26-
}
27-
28-
.spectrum-ButtonGroup--sizeL {
29-
--spectrum-buttongroup-spacing-horizontal: var(--spectrum-spacing-300);
30-
--spectrum-buttongroup-spacing-vertical: var(--spectrum-spacing-300);
31-
}
32-
33-
.spectrum-ButtonGroup--sizeXL {
34-
--spectrum-buttongroup-spacing-horizontal: var(--spectrum-spacing-300);
35-
--spectrum-buttongroup-spacing-vertical: var(--spectrum-spacing-300);
18+
.spectrum-ButtonGroup--sizeS {
19+
--spectrum-buttongroup-spacing-horizontal: var(--spectrum-spacing-100);
20+
--spectrum-buttongroup-spacing-vertical: var(--spectrum-spacing-100);
3621
}
3722

3823
.spectrum-ButtonGroup {

components/buttongroup/metadata/buttongroup.yml

+9-4
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,19 @@
11
name: Button group
22
SpectrumSiteSlug: https://spectrum.adobe.com/page/button/
33
sections:
4+
- name: Migration Guide
5+
description: |
6+
### 1/24/2024 - Version 7.0.0
7+
#### Spectrum 2 migration also removed `.spectrum-ButtonGroup--sizeM`, `.spectrum-ButtonGroup--sizeL`, and `.spectrum-ButtonGroup--sizeXL`
8+
Since each of these classes were using the same tokens for spacing, these classes were removed.
49
- name: Custom Properties API
510
description: |
611
This component can be modified via its `--mod-*` prefixed custom properties. A list of those prefixed custom properties can be found <a href="https://github.com/adobe/spectrum-css/tree/main/components/buttongroup/metadata/mods.md">here</a>.
712
examples:
813
- id: buttongroup-horizontal
914
name: Horizontal
1015
description: |
11-
Default spacing for Medium, Large, and Extra Large t-shirt sizes.
16+
Default horizontal spacing for when using medium, large, and extra large buttons.
1217
markup: |
1318
<div class="spectrum-ButtonGroup">
1419
<button class="spectrum-Button spectrum-Button--sizeM spectrum-Button--outline spectrum-Button--secondary spectrum-ButtonGroup-item">
@@ -25,7 +30,7 @@ examples:
2530
- id: buttongroup-horizontal-small
2631
name: Horizontal - Small
2732
description: |
28-
Spacing for the Small t-shirt size.
33+
Horizontal spacing for the small t-shirt size. Should be used with small buttons.
2934
markup: |
3035
<div class="spectrum-ButtonGroup spectrum-ButtonGroup--sizeS">
3136
<button class="spectrum-Button spectrum-Button--sizeS spectrum-Button--outline spectrum-Button--secondary spectrum-ButtonGroup-item">
@@ -42,7 +47,7 @@ examples:
4247
- id: buttongroup-vertical
4348
name: Vertical
4449
description: |
45-
Default spacing for Medium, Large, and Extra Large t-shirt sizes.
50+
Default vertical spacing for when using medium, large, and extra large buttons.
4651
markup: |
4752
<div class="spectrum-ButtonGroup spectrum-ButtonGroup--vertical">
4853
<button class="spectrum-Button spectrum-Button--sizeM spectrum-Button--outline spectrum-Button--secondary spectrum-ButtonGroup-item">
@@ -59,7 +64,7 @@ examples:
5964
- id: buttongroup-vertical-small
6065
name: Vertical - Small
6166
description: |
62-
Spacing for the Small t-shirt size.
67+
Vertical spacing for the small t-shirt size. Should be used with small buttons.
6368
markup: |
6469
<div class="spectrum-ButtonGroup spectrum-ButtonGroup--sizeS spectrum-ButtonGroup--vertical">
6570
<button class="spectrum-Button spectrum-Button--sizeS spectrum-Button--outline spectrum-Button--secondary spectrum-ButtonGroup-item">

components/buttongroup/stories/buttongroup.stories.js

+14-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
// Import the component markup template
22
import { Template } from "./template";
3+
import isChromatic from "chromatic/isChromatic";
4+
import { html } from "lit";
35

46
export default {
57
title: "Components/Button group",
@@ -45,7 +47,17 @@ export default {
4547
},
4648
};
4749

48-
export const Default = Template.bind({});
50+
const chromaticKitchenSink = (args) => html`
51+
<div style="display: grid; justify-content: start; gap: 2rem;">
52+
${Template(args)}
53+
${Template({
54+
...args,
55+
size: "s"
56+
})}
57+
</div>
58+
`;
59+
60+
export const Default = (args) => isChromatic() ? chromaticKitchenSink(args) : Template(args);
4961
Default.args = {
5062
items: [
5163
{
@@ -67,7 +79,7 @@ Default.args = {
6779
],
6880
};
6981

70-
export const Vertical = Template.bind({});
82+
export const Vertical = (args) => isChromatic() ? chromaticKitchenSink(args) : Template(args);
7183
Vertical.args = {
7284
vertical: true,
7385
items: [

0 commit comments

Comments
 (0)