@primer/css 20.4.2-rc.f78bb51b → 20.4.3-rc.acc52652
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/CHANGELOG.md +10 -0
- package/core/index.scss +0 -1
- package/dist/alerts.css +1 -1
- package/dist/alerts.css.map +1 -1
- package/dist/buttons.css +1 -1
- package/dist/buttons.css.map +1 -1
- package/dist/core.css +1 -1
- package/dist/core.css.map +1 -1
- package/dist/forms.css +1 -1
- package/dist/forms.css.map +1 -1
- package/dist/marketing-buttons.css +1 -1
- package/dist/marketing-buttons.css.map +1 -1
- package/dist/marketing.css +1 -1
- package/dist/marketing.css.map +1 -1
- package/dist/meta.json +73 -84
- package/dist/primer.css +3 -3
- package/dist/primer.css.map +1 -1
- package/dist/product.css +1 -1
- package/dist/product.css.map +1 -1
- package/dist/stats/alerts.json +1 -1
- package/dist/stats/buttons.json +1 -1
- package/dist/stats/core.json +1 -1
- package/dist/stats/forms.json +1 -1
- package/dist/stats/marketing-buttons.json +1 -1
- package/dist/stats/marketing.json +1 -1
- package/dist/stats/primer.json +1 -1
- package/dist/stats/product.json +1 -1
- package/dist/stats/toggle-switch.json +1 -1
- package/dist/stats/utilities.json +1 -1
- package/dist/toggle-switch.css +1 -1
- package/dist/toggle-switch.css.map +1 -1
- package/dist/utilities.css +1 -1
- package/dist/utilities.css.map +1 -1
- package/package.json +7 -6
- package/dist/segmented-control.css +0 -2
- package/dist/segmented-control.css.map +0 -1
- package/dist/segmented-control.js +0 -1
- package/dist/stats/segmented-control.json +0 -1
- package/segmented-control/README.md +0 -25
- package/segmented-control/index.scss +0 -3
- package/segmented-control/segmented-control.scss +0 -162
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@primer/css",
|
|
3
|
-
"version": "20.4.
|
|
3
|
+
"version": "20.4.3-rc.acc52652",
|
|
4
4
|
"description": "The CSS implementation of GitHub's Primer Design System",
|
|
5
5
|
"homepage": "https://primer.style/css",
|
|
6
6
|
"author": "GitHub, Inc.",
|
|
@@ -25,6 +25,7 @@
|
|
|
25
25
|
"scripts": {
|
|
26
26
|
"build:docs": "script/build-docs",
|
|
27
27
|
"build:docs:preview": "script/build-docs preview",
|
|
28
|
+
"build:css": "script/build-css.js",
|
|
28
29
|
"dist": "script/dist.js",
|
|
29
30
|
"dist:watch": "chokidar \"src/**/*.scss\" -c \"script/dist.js\"",
|
|
30
31
|
"stylelint": "stylelint --quiet --rd 'src/**/*.scss'",
|
|
@@ -45,16 +46,16 @@
|
|
|
45
46
|
},
|
|
46
47
|
"devDependencies": {
|
|
47
48
|
"@changesets/changelog-github": "0.4.6",
|
|
48
|
-
"@changesets/cli": "2.
|
|
49
|
+
"@changesets/cli": "2.24.2",
|
|
49
50
|
"@github/prettier-config": "0.0.4",
|
|
50
51
|
"@koddsson/postcss-sass": "5.0.1",
|
|
51
52
|
"@primer/stylelint-config": "^12.4.0",
|
|
52
|
-
"autoprefixer": "10.4.
|
|
53
|
+
"autoprefixer": "10.4.8",
|
|
53
54
|
"chokidar-cli": "3.0.0",
|
|
54
55
|
"cssstats": "4.0.5",
|
|
55
56
|
"eslint": "8.21.0",
|
|
56
57
|
"eslint-plugin-github": "4.3.7",
|
|
57
|
-
"eslint-plugin-jest": "26.
|
|
58
|
+
"eslint-plugin-jest": "26.8.2",
|
|
58
59
|
"eslint-plugin-prettier": "4.2.1",
|
|
59
60
|
"filesize": "9.0.11",
|
|
60
61
|
"front-matter": "4.0.2",
|
|
@@ -62,7 +63,7 @@
|
|
|
62
63
|
"globby": "13.1.2",
|
|
63
64
|
"jest": "28.1.3",
|
|
64
65
|
"js-yaml": "4.1.0",
|
|
65
|
-
"postcss": "8.4.
|
|
66
|
+
"postcss": "8.4.16",
|
|
66
67
|
"postcss-calc": "8.2.4",
|
|
67
68
|
"postcss-import": "14.1.0",
|
|
68
69
|
"postcss-load-config": "4.0.1",
|
|
@@ -70,7 +71,7 @@
|
|
|
70
71
|
"postcss-simple-vars": "6.0.3",
|
|
71
72
|
"prettier": "2.7.1",
|
|
72
73
|
"semver": "7.3.7",
|
|
73
|
-
"stylelint": "14.
|
|
74
|
+
"stylelint": "14.10.0",
|
|
74
75
|
"table": "6.8.0"
|
|
75
76
|
},
|
|
76
77
|
"jest": {
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
.SegmentedControl{position:relative;display:inline-flex;background-color:var(--color-segmented-control-bg);border-radius:var(--primer-borderRadius-medium, 6px);box-shadow:var(--primer-borderInset-thin, inset 0 0 0 1px) var(--color-border-default)}.SegmentedControl-button{position:relative;display:inline-flex;height:var(--primer-control-medium-size, 32px);padding:calc(var(--primer-control-xsmall-paddingInline-condensed, 4px) - var(--primer-borderWidth-thin, 1px));font-size:var(--primer-text-body-size-medium, 14px);color:var(--color-fg-default);background-color:transparent;border:var(--primer-borderWidth-thin, 1px) solid transparent;border-radius:var(--primer-borderRadius-medium, 6px)}.SegmentedControl-button:not(.SegmentedControl-button--selected):hover .SegmentedControl-content{background-color:var(--color-segmented-control-button-hover-bg);transition-duration:var(--primer-duration-fast, 80ms)}.SegmentedControl-button:not(.SegmentedControl-button--selected):active .SegmentedControl-content{background-color:var(--color-segmented-control-button-active-bg);transition-duration:0}.SegmentedControl-button.SegmentedControl-button--selected{font-weight:var(--base-text-weight-semibold, 600);background-color:var(--color-btn-bg);border-color:var(--color-segmented-control-button-selected-border)}.SegmentedControl-button+.SegmentedControl-button::before{position:absolute;inset:var(--primer-borderWidth-thin, 1px) 0 0 calc(var(--primer-borderWidth-thin, 1px)*-1);height:var(--primer-text-body-size-large, 16px);margin-top:var(--primer-control-medium-paddingBlock, 6px);content:"";border-left:var(--primer-borderWidth-thin, 1px) solid var(--color-border-default);transition:border-color var(--primer-duration-medium, 160ms) cubic-bezier(0.3, 0.1, 0.5, 1)}.SegmentedControl-button.SegmentedControl-button--selected::before,.SegmentedControl-button.SegmentedControl-button--selected+.SegmentedControl-button::before{border-color:transparent}.SegmentedControl-content{display:flex;align-items:center;justify-content:center;gap:var(--primer-control-medium-gap, 8px);height:100%;padding:0 var(--primer-control-medium-paddingInline-condensed, 8px);border-radius:var(--primer-borderRadius-medium, 6px);transition:background-color var(--primer-duration-medium, 160ms) cubic-bezier(0.3, 0.1, 0.5, 1)}.SegmentedControl-leadingVisual{color:var(--color-fg-muted)}.SegmentedControl-text{white-space:nowrap}.SegmentedControl-text[data-content]::before{display:block;height:0;font-weight:var(--base-text-weight-semibold, 600);visibility:hidden;content:attr(data-content)}.SegmentedControl--fullWidth{display:flex}.SegmentedControl--fullWidth .SegmentedControl-button{flex:1;justify-content:center}.SegmentedControl-button--iconOnly{width:var(--primer-control-medium-size, 32px)}.SegmentedControl-button--iconOnly .SegmentedControl-content{padding:0;flex:1}@media(max-width: 768px){.SegmentedControl--iconOnly-whenNarrow .SegmentedControl-button{width:var(--primer-control-medium-size, 32px)}.SegmentedControl--iconOnly-whenNarrow .SegmentedControl-content{padding:0;flex:1}.SegmentedControl--iconOnly-whenNarrow .SegmentedControl-text{display:none}}@media(pointer: coarse){.SegmentedControl-button{min-width:var(--primer-control-minTarget-coarse, 44px)}.SegmentedControl-button::after{position:absolute;top:50%;left:50%;width:100%;height:100%;min-height:var(--primer-control-minTarget-coarse, 44px);content:"";transform:translateX(-50%) translateY(-50%)}.SegmentedControl-button--iconOnly,.SegmentedControl--iconOnly-whenNarrow .SegmentedControl-button{min-width:unset}}
|
|
2
|
-
/*# sourceMappingURL=segmented-control.css.map */
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["file:///home/runner/work/css/css/src/segmented-control/index.scss%23sass"],"names":[],"mappings":"AAmjBA,kBAAA,iBAAA,CAAA,mBAAA,CAAA,kDAAA,CAAA,oDAAA,CAAA,sFAAA,CAAA,yBAAA,iBAAA,CAAA,mBAAA,CAAA,8CAAA,CAAA,6GAAA,CAAA,mDAAA,CAAA,6BAAA,CAAA,4BAAA,CAAA,4DAAA,CAAA,oDAAA,CAAA,iGAAA,+DAAA,CAAA,qDAAA,CAAA,kGAAA,gEAAA,CAAA,qBAAA,CAAA,2DAAA,iDAAA,CAAA,oCAAA,CAAA,kEAAA,CAAA,0DAAA,iBAAA,CAAA,0FAAA,CAAA,+CAAA,CAAA,yDAAA,CAAA,UAAA,CAAA,iFAAA,CAAA,2FAAA,CAAA,+JAAA,wBAAA,CAAA,0BAAA,YAAA,CAAA,kBAAA,CAAA,sBAAA,CAAA,yCAAA,CAAA,WAAA,CAAA,mEAAA,CAAA,oDAAA,CAAA,+FAAA,CAAA,gCAAA,2BAAA,CAAA,uBAAA,kBAAA,CAAA,6CAAA,aAAA,CAAA,QAAA,CAAA,iDAAA,CAAA,iBAAA,CAAA,0BAAA,CAAA,6BAAA,YAAA,CAAA,sDAAA,MAAA,CAAA,sBAAA,CAAA,mCAAA,6CAAA,CAAA,6DAAA,SAAA,CAAA,MAAA,CAAA,yBAAA,gEAAA,6CAAA,CAAA,iEAAA,SAAA,CAAA,MAAA,CAAA,8DAAA,YAAA,CAAA,CAAA,wBAAA,yBAAA,sDAAA,CAAA,gCAAA,iBAAA,CAAA,OAAA,CAAA,QAAA,CAAA,UAAA,CAAA,WAAA,CAAA,uDAAA,CAAA,UAAA,CAAA,2CAAA,CAAA,mGAAA,eAAA,CAAA","file":"segmented-control.css"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {cssstats: require('./stats/segmented-control.json')}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"size":2664,"gzipSize":758,"humanizedSize":"3KB","humanizedGzipSize":"758B","rules":{"total":21,"size":{"graph":[5,9,2,2,3,7,1,8,1,1,5,1,2,1,2,1,2,1,1,8,1],"max":9,"average":3.0476190476190474},"selectorByRuleSizes":[{"selector":".SegmentedControl-button","declarations":9},{"selector":".SegmentedControl-button::after","declarations":8},{"selector":".SegmentedControl-content","declarations":8},{"selector":".SegmentedControl-button+.SegmentedControl-button::before","declarations":7},{"selector":".SegmentedControl-text[data-content]::before","declarations":5},{"selector":".SegmentedControl","declarations":5},{"selector":".SegmentedControl-button.SegmentedControl-button--selected","declarations":3},{"selector":".SegmentedControl--iconOnly-whenNarrow .SegmentedControl-content","declarations":2},{"selector":".SegmentedControl-button--iconOnly .SegmentedControl-content","declarations":2},{"selector":".SegmentedControl--fullWidth .SegmentedControl-button","declarations":2},{"selector":".SegmentedControl-button:not(.SegmentedControl-button--selected):active .SegmentedControl-content","declarations":2},{"selector":".SegmentedControl-button:not(.SegmentedControl-button--selected):hover .SegmentedControl-content","declarations":2},{"selector":".SegmentedControl-button--iconOnly,.SegmentedControl--iconOnly-whenNarrow .SegmentedControl-button","declarations":1},{"selector":".SegmentedControl-button","declarations":1},{"selector":".SegmentedControl--iconOnly-whenNarrow .SegmentedControl-text","declarations":1},{"selector":".SegmentedControl--iconOnly-whenNarrow .SegmentedControl-button","declarations":1},{"selector":".SegmentedControl-button--iconOnly","declarations":1},{"selector":".SegmentedControl--fullWidth","declarations":1},{"selector":".SegmentedControl-text","declarations":1},{"selector":".SegmentedControl-leadingVisual","declarations":1},{"selector":".SegmentedControl-button.SegmentedControl-button--selected::before,.SegmentedControl-button.SegmentedControl-button--selected+.SegmentedControl-button::before","declarations":1}]},"selectors":{"total":23,"type":0,"class":23,"id":0,"pseudoClass":2,"pseudoElement":5,"values":[".SegmentedControl",".SegmentedControl-button",".SegmentedControl-button:not(.SegmentedControl-button--selected):hover .SegmentedControl-content",".SegmentedControl-button:not(.SegmentedControl-button--selected):active .SegmentedControl-content",".SegmentedControl-button.SegmentedControl-button--selected",".SegmentedControl-button+.SegmentedControl-button::before",".SegmentedControl-button.SegmentedControl-button--selected::before",".SegmentedControl-button.SegmentedControl-button--selected+.SegmentedControl-button::before",".SegmentedControl-content",".SegmentedControl-leadingVisual",".SegmentedControl-text",".SegmentedControl-text[data-content]::before",".SegmentedControl--fullWidth",".SegmentedControl--fullWidth .SegmentedControl-button",".SegmentedControl-button--iconOnly",".SegmentedControl-button--iconOnly .SegmentedControl-content",".SegmentedControl--iconOnly-whenNarrow .SegmentedControl-button",".SegmentedControl--iconOnly-whenNarrow .SegmentedControl-content",".SegmentedControl--iconOnly-whenNarrow .SegmentedControl-text",".SegmentedControl-button",".SegmentedControl-button::after",".SegmentedControl-button--iconOnly",".SegmentedControl--iconOnly-whenNarrow .SegmentedControl-button"],"specificity":{"max":40,"average":18.043478260869566}},"declarations":{"total":64,"unique":50,"uniqueToTotalRatio":0.78125,"properties":{"position":["relative","relative","absolute","absolute"],"display":["inline-flex","inline-flex","flex","block","flex","none"],"background-color":["var(--color-segmented-control-bg)","transparent","var(--color-segmented-control-button-hover-bg)","var(--color-segmented-control-button-active-bg)","var(--color-btn-bg)"],"border-radius":["6px","6px","6px"],"box-shadow":["inset 0 0 0 1px var(--color-border-default)"],"height":["32px","16px","100%","0","100%"],"padding":["calc(4px - 1px)","0 8px","0","0"],"font-size":["14px"],"color":["var(--color-fg-default)","var(--color-fg-muted)"],"border":["1px solid transparent"],"transition-duration":["80ms","0"],"font-weight":["600","600"],"border-color":["var(--color-segmented-control-button-selected-border)","transparent"],"inset":["1px 0 0 calc(1px*-1)"],"margin-top":["6px"],"content":["\"\"","attr(data-content)","\"\""],"border-left":["1px solid var(--color-border-default)"],"transition":["border-color 160ms cubic-bezier(0.3, 0.1, 0.5, 1)","background-color 160ms cubic-bezier(0.3, 0.1, 0.5, 1)"],"align-items":["center"],"justify-content":["center","center"],"gap":["8px"],"white-space":["nowrap"],"visibility":["hidden"],"flex":["1","1","1"],"width":["32px","32px","100%"],"min-width":["44px","unset"],"top":["50%"],"left":["50%"],"min-height":["44px"],"transform":["translateX(-50%) translateY(-50%)"]}},"mediaQueries":{"total":2,"unique":2,"values":["(max-width: 768px)","(pointer: coarse)"],"contents":[{"value":"(max-width: 768px)","rules":{"total":3,"size":{"graph":[1,2,1],"max":2,"average":1.3333333333333333},"selectorByRuleSizes":[{"selector":",.SegmentedControl--iconOnly-whenNarrow .SegmentedControl-content","declarations":2},{"selector":",.SegmentedControl--iconOnly-whenNarrow .SegmentedControl-text","declarations":1},{"selector":".SegmentedControl--iconOnly-whenNarrow .SegmentedControl-button","declarations":1}]},"selectors":{"total":3,"type":0,"class":3,"id":0,"pseudoClass":0,"pseudoElement":0,"values":[".SegmentedControl--iconOnly-whenNarrow .SegmentedControl-button",".SegmentedControl--iconOnly-whenNarrow .SegmentedControl-content",".SegmentedControl--iconOnly-whenNarrow .SegmentedControl-text"],"specificity":{"max":20,"average":20}},"declarations":{"total":4,"unique":4,"uniqueToTotalRatio":1,"properties":{"width":["32px"],"padding":["0"],"flex":["1"],"display":["none"]}}},{"value":"(pointer: coarse)","rules":{"total":3,"size":{"graph":[1,8,1],"max":8,"average":3.3333333333333335},"selectorByRuleSizes":[{"selector":",.SegmentedControl-button::after","declarations":8},{"selector":",.SegmentedControl-button--iconOnly,.SegmentedControl--iconOnly-whenNarrow .SegmentedControl-button","declarations":1},{"selector":".SegmentedControl-button","declarations":1}]},"selectors":{"total":4,"type":0,"class":4,"id":0,"pseudoClass":0,"pseudoElement":1,"values":[".SegmentedControl-button",".SegmentedControl-button::after",".SegmentedControl-button--iconOnly",".SegmentedControl--iconOnly-whenNarrow .SegmentedControl-button"],"specificity":{"max":20,"average":12.75}},"declarations":{"total":10,"unique":10,"uniqueToTotalRatio":1,"properties":{"min-width":["44px","unset"],"position":["absolute"],"top":["50%"],"left":["50%"],"width":["100%"],"height":["100%"],"min-height":["44px"],"content":["\"\""],"transform":["translateX(-50%) translateY(-50%)"]}}}]}}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
bundle: "segmented-control"
|
|
3
|
-
generated: true
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Primer CSS: `segmented-control` bundle
|
|
7
|
-
|
|
8
|
-
## Usage
|
|
9
|
-
|
|
10
|
-
Primer CSS source files are written in [SCSS]. To include this Primer CSS module in your own build, ensure that your `node_modules` directory is listed in your Sass include paths, then import it with:
|
|
11
|
-
|
|
12
|
-
```scss
|
|
13
|
-
@import "@primer/css/segmented-control/index.scss";
|
|
14
|
-
```
|
|
15
|
-
|
|
16
|
-
## Build
|
|
17
|
-
|
|
18
|
-
The `@primer/css` npm package includes a standalone CSS build of this module in `dist/segmented-control.css`.
|
|
19
|
-
|
|
20
|
-
## License
|
|
21
|
-
|
|
22
|
-
[MIT](https://github.com/primer/css/blob/main/LICENSE) © [GitHub](https://github.com/)
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
[scss]: https://sass-lang.com/documentation/syntax#scss
|
|
@@ -1,162 +0,0 @@
|
|
|
1
|
-
// SegmentedControl
|
|
2
|
-
|
|
3
|
-
.SegmentedControl {
|
|
4
|
-
position: relative;
|
|
5
|
-
display: inline-flex;
|
|
6
|
-
background-color: var(--color-segmented-control-bg);
|
|
7
|
-
// stylelint-disable-next-line primer/borders
|
|
8
|
-
border-radius: var(--primer-borderRadius-medium, $border-radius);
|
|
9
|
-
// stylelint-disable-next-line primer/box-shadow
|
|
10
|
-
box-shadow: var(--primer-borderInset-thin, inset 0 0 0 $border-width) var(--color-border-default);
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
// Button -----------------------------------------
|
|
14
|
-
|
|
15
|
-
.SegmentedControl-button {
|
|
16
|
-
position: relative;
|
|
17
|
-
display: inline-flex;
|
|
18
|
-
height: var(--primer-control-medium-size, 32px);
|
|
19
|
-
// stylelint-disable-next-line primer/spacing
|
|
20
|
-
padding: calc(var(--primer-control-xsmall-paddingInline-condensed, 4px) - var(--primer-borderWidth-thin, 1px));
|
|
21
|
-
// stylelint-disable-next-line primer/typography
|
|
22
|
-
font-size: var(--primer-text-body-size-medium, $body-font-size);
|
|
23
|
-
color: var(--color-fg-default);
|
|
24
|
-
background-color: transparent;
|
|
25
|
-
// stylelint-disable-next-line primer/borders
|
|
26
|
-
border: var(--primer-borderWidth-thin, $border-width) $border-style transparent;
|
|
27
|
-
// stylelint-disable-next-line primer/borders
|
|
28
|
-
border-radius: var(--primer-borderRadius-medium, $border-radius);
|
|
29
|
-
|
|
30
|
-
&:not(.SegmentedControl-button--selected):hover .SegmentedControl-content {
|
|
31
|
-
background-color: var(--color-segmented-control-button-hover-bg);
|
|
32
|
-
transition-duration: var(--primer-duration-fast, 80ms);
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
&:not(.SegmentedControl-button--selected):active .SegmentedControl-content {
|
|
36
|
-
background-color: var(--color-segmented-control-button-active-bg);
|
|
37
|
-
transition-duration: 0;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
// Selected
|
|
41
|
-
|
|
42
|
-
&.SegmentedControl-button--selected {
|
|
43
|
-
// stylelint-disable-next-line primer/typography
|
|
44
|
-
font-weight: var(--base-text-weight-semibold, $font-weight-bold);
|
|
45
|
-
background-color: var(--color-btn-bg);
|
|
46
|
-
border-color: var(--color-segmented-control-button-selected-border);
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
// Divider
|
|
50
|
-
|
|
51
|
-
// stylelint-disable-next-line scss/selector-no-redundant-nesting-selector
|
|
52
|
-
& + .SegmentedControl-button::before {
|
|
53
|
-
position: absolute;
|
|
54
|
-
inset: var(--primer-borderWidth-thin, 1px) 0 0 calc(var(--primer-borderWidth-thin, 1px) * -1);
|
|
55
|
-
height: var(--primer-text-body-size-large, 16px);
|
|
56
|
-
// stylelint-disable-next-line primer/spacing
|
|
57
|
-
margin-top: var(--primer-control-medium-paddingBlock, 6px);
|
|
58
|
-
content: '';
|
|
59
|
-
// stylelint-disable-next-line primer/borders
|
|
60
|
-
border-left: var(--primer-borderWidth-thin, $border-width) $border-style var(--color-border-default);
|
|
61
|
-
transition: border-color var(--primer-duration-medium, 160ms) cubic-bezier(0.3, 0.1, 0.5, 1);
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
&.SegmentedControl-button--selected::before,
|
|
65
|
-
&.SegmentedControl-button--selected + .SegmentedControl-button::before {
|
|
66
|
-
border-color: transparent;
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
// Content -----------------------------------------
|
|
71
|
-
|
|
72
|
-
.SegmentedControl-content {
|
|
73
|
-
display: flex;
|
|
74
|
-
align-items: center;
|
|
75
|
-
justify-content: center;
|
|
76
|
-
gap: var(--primer-control-medium-gap, $spacer-2);
|
|
77
|
-
height: 100%;
|
|
78
|
-
// stylelint-disable-next-line primer/spacing
|
|
79
|
-
padding: 0 var(--primer-control-medium-paddingInline-condensed, 8px);
|
|
80
|
-
// stylelint-disable-next-line primer/borders
|
|
81
|
-
border-radius: var(--primer-borderRadius-medium, $border-radius);
|
|
82
|
-
transition: background-color var(--primer-duration-medium, 160ms) cubic-bezier(0.3, 0.1, 0.5, 1);
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
// Leading visual -----------------------------------------
|
|
86
|
-
|
|
87
|
-
.SegmentedControl-leadingVisual {
|
|
88
|
-
color: var(--color-fg-muted);
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
// Text -----------------------------------------
|
|
92
|
-
|
|
93
|
-
.SegmentedControl-text {
|
|
94
|
-
white-space: nowrap;
|
|
95
|
-
|
|
96
|
-
// renders a visibly hidden "copy" of the text in bold, reserving box space for when text becomes bold on selected
|
|
97
|
-
&[data-content]::before {
|
|
98
|
-
display: block;
|
|
99
|
-
height: 0;
|
|
100
|
-
// stylelint-disable-next-line primer/typography
|
|
101
|
-
font-weight: var(--base-text-weight-semibold, $font-weight-bold);
|
|
102
|
-
visibility: hidden;
|
|
103
|
-
content: attr(data-content);
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
// Variants -----------------------------------------
|
|
108
|
-
|
|
109
|
-
// fullWidth
|
|
110
|
-
.SegmentedControl--fullWidth {
|
|
111
|
-
display: flex;
|
|
112
|
-
|
|
113
|
-
.SegmentedControl-button {
|
|
114
|
-
flex: 1;
|
|
115
|
-
justify-content: center;
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
// Icon only
|
|
120
|
-
.SegmentedControl-button--iconOnly {
|
|
121
|
-
width: var(--primer-control-medium-size, 32px);
|
|
122
|
-
|
|
123
|
-
.SegmentedControl-content {
|
|
124
|
-
padding: 0;
|
|
125
|
-
flex: 1;
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
// Icon only when narrow
|
|
130
|
-
@media (max-width: $width-md) {
|
|
131
|
-
.SegmentedControl--iconOnly-whenNarrow {
|
|
132
|
-
.SegmentedControl-button {
|
|
133
|
-
width: var(--primer-control-medium-size, 32px);
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
.SegmentedControl-content {
|
|
137
|
-
padding: 0;
|
|
138
|
-
flex: 1;
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
.SegmentedControl-text {
|
|
142
|
-
display: none;
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
// Increase touch target
|
|
148
|
-
@media (pointer: coarse) {
|
|
149
|
-
.SegmentedControl-button {
|
|
150
|
-
min-width: var(--primer-control-minTarget-coarse, 44px);
|
|
151
|
-
|
|
152
|
-
&::after {
|
|
153
|
-
@include minTouchTarget($min-height: var(--primer-control-minTarget-coarse, 44px));
|
|
154
|
-
}
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
// reset for icon-only buttons
|
|
158
|
-
.SegmentedControl-button--iconOnly,
|
|
159
|
-
.SegmentedControl--iconOnly-whenNarrow .SegmentedControl-button {
|
|
160
|
-
min-width: unset;
|
|
161
|
-
}
|
|
162
|
-
}
|