Skip to content

Commit abf116b

Browse files
lazdJian Liao
andauthored
Button Breaking Changes (#649)
* feat: remove Tool button BREAKING CHANGE: Tool button has been removed * fix: interaction on mobile, text select * feat: add Emphasized Action Button * docs: add exampes for Quiet Emphasized Action Button fix: correct Quiet Emphasized Action Button * feat: button group BREAKING CHANGE: Button group no longer supports Action Button, just normal buttons * docs: document icon-only Action Button usage, closes #519 * fix: remove margin from adjacent buttons, closes #620 BREAKING CHANGE: Margins have been removed from adjacent buttons. Use ButtonGroup instead. * feat: implement Action Group, closes #606 * fix: disable Safari 10 width hack that's breaking justified Action Group * feat: implement Quiet Compact Action Group support * test: add actiongroup to VRT scenarios config file * test: remove halo-focus scenario as it is not a real component Co-authored-by: Jian Liao <jianliao@adobe.com>
1 parent 31a6fc5 commit abf116b

15 files changed

Lines changed: 1111 additions & 435 deletions

File tree

backstop_data/backstop_scenarios.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,11 @@
1515
"url": "actionbutton.html",
1616
"package": "@spectrum-css/actionbutton"
1717
},
18+
{
19+
"label": "actiongroup",
20+
"url": "actiongroup.html",
21+
"package": "@spectrum-css/actiongroup"
22+
},
1823
{
1924
"label": "actionmenu",
2025
"url": "actionmenu.html",

backstop_data/packageDependentMap.json

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,10 @@
77
"@spectrum-css/actionbar",
88
[]
99
],
10+
[
11+
"@spectrum-css/actiongroup",
12+
[]
13+
],
1014
[
1115
"@spectrum-css/actionmenu",
1216
[]
@@ -49,6 +53,7 @@
4953
"@spectrum-css/button",
5054
[
5155
"@spectrum-css/actionbar",
56+
"@spectrum-css/actiongroup",
5257
"@spectrum-css/actionmenu",
5358
"@spectrum-css/alert",
5459
"@spectrum-css/breadcrumb",
@@ -111,10 +116,6 @@
111116
"@spectrum-css/cyclebutton",
112117
[]
113118
],
114-
[
115-
"@spectrum-css/decoratedtextfield",
116-
[]
117-
],
118119
[
119120
"@spectrum-css/dialog",
120121
[
@@ -143,9 +144,7 @@
143144
],
144145
[
145146
"@spectrum-css/fieldlabel",
146-
[
147-
"@spectrum-css/decoratedtextfield"
148-
]
147+
[]
149148
],
150149
[
151150
"@spectrum-css/illustratedmessage",
@@ -272,7 +271,6 @@
272271
[
273272
"@spectrum-css/textfield",
274273
[
275-
"@spectrum-css/decoratedtextfield",
276274
"@spectrum-css/fieldlabel",
277275
"@spectrum-css/inputgroup",
278276
"@spectrum-css/pagination",

components/actiongroup/.npmignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
/dist/docs/
Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
1+
# Change Log
2+
3+
All notable changes to this project will be documented in this file.
4+
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5+
6+
<a name="3.0.0-beta.1"></a>
7+
# 3.0.0-beta.1
8+
🗓 2020-03-12 • 📝 [Commits](https://github.com/adobe/spectrum-css/compare/@spectrum-css/buttongroup@3.0.0-beta.0...@spectrum-css/buttongroup@3.0.0-beta.1)
9+
10+
**Note:** Version bump only for package @spectrum-css/buttongroup
11+
12+
13+
14+
15+
16+
<a name="3.0.0-beta.0"></a>
17+
# 3.0.0-beta.0
18+
🗓 2020-03-09 • 📝 [Commits](https://github.com/adobe/spectrum-css/compare/@spectrum-css/buttongroup@2.2.1...@spectrum-css/buttongroup@3.0.0-beta.0)
19+
20+
### ✨ Features
21+
22+
* make ButtonGroup support RTL ([eeb2d4e](https://github.com/adobe/spectrum-css/commit/eeb2d4e))
23+
24+
25+
26+
27+
28+
<a name="2.2.1"></a>
29+
## 2.2.1
30+
🗓 2020-03-06 • 📝 [Commits](https://github.com/adobe/spectrum-css/compare/@spectrum-css/buttongroup@2.2.0...@spectrum-css/buttongroup@2.2.1)
31+
32+
**Note:** Version bump only for package @spectrum-css/buttongroup
33+
34+
35+
36+
37+
38+
<a name="2.2.0"></a>
39+
# 2.2.0
40+
🗓 2020-02-10 • 📝 [Commits](https://github.com/adobe/spectrum-css/compare/@spectrum-css/buttongroup@2.1.0...@spectrum-css/buttongroup@2.2.0)
41+
42+
### ✨ Features
43+
44+
* adding t-shirt sized typography, fixes [#210](https://github.com/adobe/spectrum-css/issues/210), closes [#416](https://github.com/adobe/spectrum-css/issues/416) ([#408](https://github.com/adobe/spectrum-css/issues/408)) ([3921bcb](https://github.com/adobe/spectrum-css/commit/3921bcb)), closes [#523](https://github.com/adobe/spectrum-css/issues/523)
45+
46+
47+
48+
49+
50+
<a name="2.1.0"></a>
51+
# 2.1.0
52+
🗓 2020-01-23 • 📝 [Commits](https://github.com/adobe/spectrum-css/compare/@spectrum-css/buttongroup@2.0.3...@spectrum-css/buttongroup@2.1.0)
53+
54+
### ✨ Features
55+
56+
* support vertical Rules inside of ButtonGroup, related to [#455](https://github.com/adobe/spectrum-css/issues/455) ([ea7b85f](https://github.com/adobe/spectrum-css/commit/ea7b85f))
57+
58+
59+
60+
61+
62+
<a name="2.0.3"></a>
63+
## 2.0.3
64+
🗓 2019-12-14 • 📝 [Commits](https://github.com/adobe/spectrum-css/compare/@spectrum-css/buttongroup@2.0.2...@spectrum-css/buttongroup@2.0.3)
65+
66+
**Note:** Version bump only for package @spectrum-css/buttongroup
67+
68+
69+
70+
71+
72+
<a name="2.0.2"></a>
73+
## 2.0.2
74+
🗓 2019-11-08 • 📝 [Commits](https://github.com/adobe/spectrum-css/compare/@spectrum-css/buttongroup@2.0.1...@spectrum-css/buttongroup@2.0.2)
75+
76+
**Note:** Version bump only for package @spectrum-css/buttongroup
77+
78+
79+
80+
81+
82+
<a name="2.0.1"></a>
83+
## 2.0.1
84+
🗓 2019-11-07 • 📝 [Commits](https://github.com/adobe/spectrum-css/compare/@spectrum-css/buttongroup@2.0.0...@spectrum-css/buttongroup@2.0.1)
85+
86+
**Note:** Version bump only for package @spectrum-css/buttongroup
87+
88+
89+
90+
91+
92+
<a name="2.0.0"></a>
93+
# 2.0.0
94+
🗓 2019-10-08
95+
96+
### ✨ Features
97+
98+
* move to individually versioned packages with Lerna ([#265](https://github.com/adobe/spectrum-css/issues/265)) ([cb7fd4b](https://github.com/adobe/spectrum-css/commit/cb7fd4b)), closes [#231](https://github.com/adobe/spectrum-css/issues/231) [#214](https://github.com/adobe/spectrum-css/issues/214) [#229](https://github.com/adobe/spectrum-css/issues/229) [#240](https://github.com/adobe/spectrum-css/issues/240) [#239](https://github.com/adobe/spectrum-css/issues/239) [#161](https://github.com/adobe/spectrum-css/issues/161) [#242](https://github.com/adobe/spectrum-css/issues/242) [#246](https://github.com/adobe/spectrum-css/issues/246) [#219](https://github.com/adobe/spectrum-css/issues/219) [#235](https://github.com/adobe/spectrum-css/issues/235) [#189](https://github.com/adobe/spectrum-css/issues/189) [#248](https://github.com/adobe/spectrum-css/issues/248) [#232](https://github.com/adobe/spectrum-css/issues/232) [#248](https://github.com/adobe/spectrum-css/issues/248) [#218](https://github.com/adobe/spectrum-css/issues/218) [#237](https://github.com/adobe/spectrum-css/issues/237) [#255](https://github.com/adobe/spectrum-css/issues/255) [#256](https://github.com/adobe/spectrum-css/issues/256) [#258](https://github.com/adobe/spectrum-css/issues/258) [#257](https://github.com/adobe/spectrum-css/issues/257) [#259](https://github.com/adobe/spectrum-css/issues/259)

components/actiongroup/README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# @spectrum-css/buttongroup
2+
> The Spectrum CSS buttongroup component
3+
4+
This package is part of the [Spectrum CSS project](https://github.com/adobe/spectrum-css).
5+
6+
See the [Spectrum CSS documentation](https://opensource.adobe.com/spectrum-css/) and [Spectrum CSS on GitHub](https://github.com/adobe/spectrum-css) for details.

components/actiongroup/gulpfile.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
module.exports = require('@spectrum-css/component-builder');

components/actiongroup/index.css

Lines changed: 135 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,135 @@
1+
/*
2+
Copyright 2019 Adobe. All rights reserved.
3+
This file is licensed to you under the Apache License, Version 2.0 (the "License");
4+
you may not use this file except in compliance with the License. You may obtain a copy
5+
of the License at http://www.apache.org/licenses/LICENSE-2.0
6+
7+
Unless required by applicable law or agreed to in writing, software distributed under
8+
the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
9+
OF ANY KIND, either express or implied. See the License for the specific language
10+
governing permissions and limitations under the License.
11+
*/
12+
13+
:root {
14+
--spectrum-actiongroup-button-gap-reset: 0;
15+
--spectrum-actiongroup-quiet-compact-button-gap: var(--spectrum-global-dimension-size-50);
16+
}
17+
18+
.spectrum-ActionGroup {
19+
display: flex;
20+
flex-wrap: wrap;
21+
22+
.spectrum-ActionGroup-item {
23+
flex-shrink: 0;
24+
}
25+
26+
.spectrum-ActionGroup-item + .spectrum-ActionGroup-item {
27+
margin-inline-start: var(--spectrum-actionbuttongroup-text-button-gap-x);
28+
}
29+
}
30+
31+
.spectrum-ActionGroup--vertical {
32+
display: inline-flex;
33+
flex-direction: column;
34+
35+
.spectrum-ActionGroup-item + .spectrum-ActionGroup-item {
36+
margin-block-start: var(--spectrum-actionbuttongroup-text-button-gap-y);
37+
margin-inline-start: var(--spectrum-actiongroup-button-gap-reset);
38+
}
39+
40+
&.spectrum-ActionGroup--vertical {
41+
margin-block-start: var(--spectrum-actionbuttongroup-text-button-gap-y);
42+
margin-inline-start: var(--spectrum-actiongroup-button-gap-reset);
43+
}
44+
}
45+
46+
.spectrum-ActionGroup--compact {
47+
&.spectrum-ActionGroup--quiet {
48+
.spectrum-ActionGroup-item + .spectrum-ActionGroup-item {
49+
margin-inline-start: var(--spectrum-actiongroup-quiet-compact-button-gap);
50+
margin-block-start: var(--spectrum-actiongroup-button-gap-reset);
51+
}
52+
53+
&.spectrum-ActionGroup--vertical {
54+
.spectrum-ActionGroup-item + .spectrum-ActionGroup-item {
55+
margin-inline-start: var(--spectrum-actiongroup-button-gap-reset);
56+
margin-block-start: var(--spectrum-actiongroup-quiet-compact-button-gap);
57+
}
58+
}
59+
}
60+
61+
&:not(.spectrum-ActionGroup--quiet) {
62+
flex-wrap: nowrap;
63+
64+
.spectrum-ActionGroup-item {
65+
position: relative;
66+
border-radius: 0;
67+
z-index: 0;
68+
69+
&:first-child {
70+
border-start-start-radius: var(--spectrum-actionbutton-border-radius);
71+
border-end-start-radius: var(--spectrum-actionbutton-border-radius);
72+
margin-inline-end: calc(-1 * var(--spectrum-actionbutton-border-size) / 2);
73+
}
74+
75+
&:last-child {
76+
border-start-end-radius: var(--spectrum-actionbutton-border-radius);
77+
border-end-end-radius: var(--spectrum-actionbutton-border-radius);
78+
margin-inline-start: calc(-1 * var(--spectrum-actionbutton-border-size) / 2);
79+
margin-inline-end: 0;
80+
}
81+
82+
&.is-selected {
83+
z-index: 1;
84+
}
85+
86+
&:hover {
87+
z-index: 2;
88+
}
89+
90+
/* Appear above hovered and selected borders */
91+
&:focus-ring {
92+
z-index: 3;
93+
}
94+
95+
& + .spectrum-ActionGroup-item {
96+
margin-inline-start: calc(-1 * var(--spectrum-actionbutton-border-size) / 2);
97+
margin-inline-end: calc(-1 * var(--spectrum-actionbutton-border-size) / 2);
98+
}
99+
100+
.spectrum-ActionButton-label {
101+
inline-size: auto;
102+
}
103+
}
104+
105+
&.spectrum-ActionGroup--vertical {
106+
.spectrum-ActionGroup-item {
107+
border-radius: 0;
108+
109+
& + .spectrum-ActionGroup-item {
110+
margin-block-start: calc(-1 * var(--spectrum-actionbutton-border-size) / 2);
111+
margin-block-end: calc(-1 * var(--spectrum-actionbutton-border-size) / 2);
112+
}
113+
114+
&:first-child {
115+
border-start-start-radius: var(--spectrum-actionbutton-border-radius);
116+
border-start-end-radius: var(--spectrum-actionbutton-border-radius);
117+
border-radius: 0;
118+
margin-block-end: calc(-1 * var(--spectrum-actionbutton-border-size) / 2);
119+
}
120+
121+
&:last-child {
122+
border-end-start-radius: var(--spectrum-actionbutton-border-radius);
123+
border-end-end-radius: var(--spectrum-actionbutton-border-radius);
124+
border-radius: 0;
125+
margin-block-start: calc(-1 * var(--spectrum-actionbutton-border-size) / 2);
126+
margin-block-end: 0;
127+
}
128+
}
129+
}
130+
}
131+
}
132+
133+
.spectrum-ActionGroup--justified .spectrum-ActionGroup-item {
134+
flex: 1;
135+
}

0 commit comments

Comments
 (0)