@microsoft/atlas-css 1.2.0 → 1.3.0
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/README.md +42 -42
- package/dist/index.css +1 -1
- package/dist/index.css.map +1 -1
- package/package.json +57 -57
- package/src/atomics/README.md +54 -54
- package/src/atomics/border.scss +56 -56
- package/src/atomics/colors.scss +166 -166
- package/src/atomics/display.scss +33 -33
- package/src/atomics/flex.scss +69 -69
- package/src/atomics/index.scss +8 -8
- package/src/atomics/position.scss +19 -19
- package/src/atomics/shadow.scss +19 -19
- package/src/atomics/spacing.scss +73 -73
- package/src/atomics/typography.scss +105 -105
- package/src/components/README.md +41 -41
- package/src/components/button-reset.scss +8 -8
- package/src/components/button.scss +245 -243
- package/src/components/buttons.scss +86 -87
- package/src/components/component.md +6 -6
- package/src/components/icon.scss +20 -20
- package/src/components/index.scss +7 -7
- package/src/components/link-button.scss +30 -30
- package/src/components/markdown.scss +156 -156
- package/src/components/table.scss +67 -67
- package/src/core/animations.scss +8 -8
- package/src/core/focus.scss +35 -35
- package/src/core/font-stack.scss +28 -28
- package/src/core/index.scss +6 -6
- package/src/core/themes.scss +86 -86
- package/src/index.scss +6 -6
- package/src/mixins/center.scss +11 -11
- package/src/mixins/code-block.scss +43 -43
- package/src/mixins/control.scss +44 -44
- package/src/mixins/focus.scss +10 -10
- package/src/mixins/font-size.scss +35 -35
- package/src/mixins/index.scss +9 -9
- package/src/mixins/loader.scss +16 -16
- package/src/mixins/media-queries.scss +49 -49
- package/src/mixins/transparency.scss +14 -14
- package/src/mixins/unselectable.scss +13 -13
- package/src/patterns/index.scss +1 -1
- package/src/tokens/animation.scss +8 -8
- package/src/tokens/border.scss +8 -8
- package/src/tokens/breakpoints.scss +11 -11
- package/src/tokens/colors.scss +215 -215
- package/src/tokens/direction.scss +18 -18
- package/src/tokens/display.scss +5 -5
- package/src/tokens/focus.scss +9 -9
- package/src/tokens/font-stack.scss +10 -10
- package/src/tokens/index.scss +18 -18
- package/src/tokens/layout.scss +8 -8
- package/src/tokens/palette.scss +188 -188
- package/src/tokens/position.scss +5 -5
- package/src/tokens/radius.scss +9 -9
- package/src/tokens/schemes.scss +14 -14
- package/src/tokens/shadow.scss +11 -11
- package/src/tokens/spacing.scss +25 -25
- package/src/tokens/themes.scss +291 -291
- package/src/tokens/typography.scss +29 -29
- package/src/tokens/z-index.scss +20 -20
- package/tokens/README.md +34 -34
- package/tokens/index.js +246 -246
- package/tokens/types.d.ts +35 -35
package/package.json
CHANGED
|
@@ -1,57 +1,57 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@microsoft/atlas-css",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"main": "dist/index.css",
|
|
5
|
-
"source": "src/index.scss",
|
|
6
|
-
"description": "Styles backing the Atlas Design System used by Microsoft's Developer Relations.",
|
|
7
|
-
"scripts": {
|
|
8
|
-
"test": "echo \"Error: no test specified\" && exit 1",
|
|
9
|
-
"lint": "stylelint ./src/**/*.scss",
|
|
10
|
-
"lint-fix": "stylelint ./src/**/*.scss --fix",
|
|
11
|
-
"start": "parcel watch src/index.scss --no-autoinstall",
|
|
12
|
-
"build": "npm run build:css && npm run tokens",
|
|
13
|
-
"build:css": "parcel build src/index.scss --no-cache --no-autoinstall",
|
|
14
|
-
"tokens": "node ./tokens/index.js",
|
|
15
|
-
"prepublishOnly": "npm run lint && npm run build"
|
|
16
|
-
},
|
|
17
|
-
"homepage": "https://github.com/microsoft/atlas-design",
|
|
18
|
-
"repository": {
|
|
19
|
-
"type": "git",
|
|
20
|
-
"url": "https://github.com/microsoft/atlas-design"
|
|
21
|
-
},
|
|
22
|
-
"publishConfig": {
|
|
23
|
-
"registry": "https://registry.npmjs.org"
|
|
24
|
-
},
|
|
25
|
-
"files": [
|
|
26
|
-
"dist",
|
|
27
|
-
"src",
|
|
28
|
-
"tokens"
|
|
29
|
-
],
|
|
30
|
-
"keywords": [
|
|
31
|
-
"microsoft",
|
|
32
|
-
"atlas",
|
|
33
|
-
"design-system",
|
|
34
|
-
"css",
|
|
35
|
-
"scss"
|
|
36
|
-
],
|
|
37
|
-
"author": "Microsoft Corporation",
|
|
38
|
-
"license": "MIT",
|
|
39
|
-
"dependencies": {
|
|
40
|
-
"minireset.css": "^0.0.7",
|
|
41
|
-
"normalize.css": "^8.0.1"
|
|
42
|
-
},
|
|
43
|
-
"devDependencies": {
|
|
44
|
-
"parcel": "2.0.0-beta.3.1",
|
|
45
|
-
"@parcel/transformer-sass": "2.0.0-beta.3.1",
|
|
46
|
-
"@microsoft/stylelint-config-atlas": "3.0.0",
|
|
47
|
-
"prettier": "^2.2.1",
|
|
48
|
-
"sass": "^1.32.8",
|
|
49
|
-
"stylelint": "^13.11.0",
|
|
50
|
-
"stylelint-config-prettier": "^8.0.2",
|
|
51
|
-
"eslint-plugin-security": "^1.4.0",
|
|
52
|
-
"stylelint-prettier": "^1.1.2",
|
|
53
|
-
"fs-extra": "^9.1.0",
|
|
54
|
-
"quicktype-core": "^6.0.70",
|
|
55
|
-
"sass-export": "^2.1.0"
|
|
56
|
-
}
|
|
57
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@microsoft/atlas-css",
|
|
3
|
+
"version": "1.3.0",
|
|
4
|
+
"main": "dist/index.css",
|
|
5
|
+
"source": "src/index.scss",
|
|
6
|
+
"description": "Styles backing the Atlas Design System used by Microsoft's Developer Relations.",
|
|
7
|
+
"scripts": {
|
|
8
|
+
"test": "echo \"Error: no test specified\" && exit 1",
|
|
9
|
+
"lint": "stylelint ./src/**/*.scss",
|
|
10
|
+
"lint-fix": "stylelint ./src/**/*.scss --fix",
|
|
11
|
+
"start": "parcel watch src/index.scss --no-autoinstall",
|
|
12
|
+
"build": "npm run build:css && npm run tokens",
|
|
13
|
+
"build:css": "parcel build src/index.scss --no-cache --no-autoinstall",
|
|
14
|
+
"tokens": "node ./tokens/index.js",
|
|
15
|
+
"prepublishOnly": "npm run lint && npm run build"
|
|
16
|
+
},
|
|
17
|
+
"homepage": "https://github.com/microsoft/atlas-design",
|
|
18
|
+
"repository": {
|
|
19
|
+
"type": "git",
|
|
20
|
+
"url": "https://github.com/microsoft/atlas-design"
|
|
21
|
+
},
|
|
22
|
+
"publishConfig": {
|
|
23
|
+
"registry": "https://registry.npmjs.org"
|
|
24
|
+
},
|
|
25
|
+
"files": [
|
|
26
|
+
"dist",
|
|
27
|
+
"src",
|
|
28
|
+
"tokens"
|
|
29
|
+
],
|
|
30
|
+
"keywords": [
|
|
31
|
+
"microsoft",
|
|
32
|
+
"atlas",
|
|
33
|
+
"design-system",
|
|
34
|
+
"css",
|
|
35
|
+
"scss"
|
|
36
|
+
],
|
|
37
|
+
"author": "Microsoft Corporation",
|
|
38
|
+
"license": "MIT",
|
|
39
|
+
"dependencies": {
|
|
40
|
+
"minireset.css": "^0.0.7",
|
|
41
|
+
"normalize.css": "^8.0.1"
|
|
42
|
+
},
|
|
43
|
+
"devDependencies": {
|
|
44
|
+
"parcel": "2.0.0-beta.3.1",
|
|
45
|
+
"@parcel/transformer-sass": "2.0.0-beta.3.1",
|
|
46
|
+
"@microsoft/stylelint-config-atlas": "3.0.0",
|
|
47
|
+
"prettier": "^2.2.1",
|
|
48
|
+
"sass": "^1.32.8",
|
|
49
|
+
"stylelint": "^13.11.0",
|
|
50
|
+
"stylelint-config-prettier": "^8.0.2",
|
|
51
|
+
"eslint-plugin-security": "^1.4.0",
|
|
52
|
+
"stylelint-prettier": "^1.1.2",
|
|
53
|
+
"fs-extra": "^9.1.0",
|
|
54
|
+
"quicktype-core": "^6.0.70",
|
|
55
|
+
"sass-export": "^2.1.0"
|
|
56
|
+
}
|
|
57
|
+
}
|
package/src/atomics/README.md
CHANGED
|
@@ -1,54 +1,54 @@
|
|
|
1
|
-
# Atlas Atomics
|
|
2
|
-
|
|
3
|
-
Welcome to Atomics ⚛! These are small, single purpose, CSS classes that can be used to compose great things. Visit this article for a [longer definition of Atomic CSS here](https://css-tricks.com/lets-define-exactly-atomic-css/).
|
|
4
|
-
|
|
5
|
-
## Categories of classes
|
|
6
|
-
|
|
7
|
-
Most of our classes fall into one of several categories. Those that affect ...
|
|
8
|
-
|
|
9
|
-
- display (ex. `.display-inline-flex`)
|
|
10
|
-
- spacing (ex. `.margin-inline-l`);
|
|
11
|
-
- color (ex. `.color-primary`)
|
|
12
|
-
- typography (ex. `.font-size-m`);
|
|
13
|
-
- flex properties (ex. `.justify-content-center`)
|
|
14
|
-
- and more ...
|
|
15
|
-
|
|
16
|
-
## Naming patterns
|
|
17
|
-
|
|
18
|
-
All of our atomic classes try to follow the same pattern.
|
|
19
|
-
|
|
20
|
-
```txt
|
|
21
|
-
.<css-property-name>-<value>
|
|
22
|
-
// or
|
|
23
|
-
.<css-property-name>-<value>-<screensize>
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
## CSS Property Values
|
|
27
|
-
|
|
28
|
-
The first part of nearly every Atomic class represent the css property that it will modify. For example, `display` in the class `.display-flex` matches the property value from the corresponding css rule `display: flex;`. We hope this will provide a clear and easily intuited pattern for our Atomics and encourage everyone to learn the fundamentals of CSS.
|
|
29
|
-
|
|
30
|
-
## Values
|
|
31
|
-
|
|
32
|
-
While CSS property values are straightfoward (they just match the CSS property), the value property is not always as easy to guess. We have a few rules that help us figure out how to write values in class names.
|
|
33
|
-
|
|
34
|
-
1. When the CSS value is a string (such as `flex-end` in `justify-content: flex-end`, or `grid` in `display: grid;`) then we just use that string directly (meaning these classes become `.justify-content-flex-end` and `.display-grid`).
|
|
35
|
-
2. In some cases, such as themed colors values, values are associated concepts.
|
|
36
|
-
- Such as `primary` in the class `.color-primary`. (The `primary` is blue on light theme and yellow on high contrast theme.)
|
|
37
|
-
- Such as `semibold` in the class `font-weight-semibold`.
|
|
38
|
-
3. When a number value with a particular unit is involved, that value is typically represented as a t-shirt size.
|
|
39
|
-
- Spacing and non-heading typography values follow this convention, as in `xs, s, m, l, xl, xxl` in `margin-top-xl`, and `font-size-m`.
|
|
40
|
-
- Within a set of values that require units such as the one above, 0 is represented by the string `none`.
|
|
41
|
-
4. Within a series of values that are all unitless numbers, those numbers are used directly, as in `flex-grow: 1;` being represented by `flex-grow-1`.
|
|
42
|
-
5. When a shorthand property's value is multi-part, we choose a reasonable default and omit the value completely.
|
|
43
|
-
- In the case `border: 1px solid $border` the class becomes simply `.border`.
|
|
44
|
-
- In this case further modification would still be available.
|
|
45
|
-
|
|
46
|
-
## Screen sizes
|
|
47
|
-
|
|
48
|
-
Screen sizes are represented by one of the following strings:
|
|
49
|
-
|
|
50
|
-
- `tablet`, representing screens tablet and larger.
|
|
51
|
-
- `desktop`, representing screen desktop width and larger.
|
|
52
|
-
- `widescreen`, representing very wide screens to inifinity.
|
|
53
|
-
|
|
54
|
-
Use a mobile first approach when using Atomics, including the universally applicable class (i.e. the one that does not have a screensize at the end), and when necessary overwrite its values on larger screens.
|
|
1
|
+
# Atlas Atomics
|
|
2
|
+
|
|
3
|
+
Welcome to Atomics ⚛! These are small, single purpose, CSS classes that can be used to compose great things. Visit this article for a [longer definition of Atomic CSS here](https://css-tricks.com/lets-define-exactly-atomic-css/).
|
|
4
|
+
|
|
5
|
+
## Categories of classes
|
|
6
|
+
|
|
7
|
+
Most of our classes fall into one of several categories. Those that affect ...
|
|
8
|
+
|
|
9
|
+
- display (ex. `.display-inline-flex`)
|
|
10
|
+
- spacing (ex. `.margin-inline-l`);
|
|
11
|
+
- color (ex. `.color-primary`)
|
|
12
|
+
- typography (ex. `.font-size-m`);
|
|
13
|
+
- flex properties (ex. `.justify-content-center`)
|
|
14
|
+
- and more ...
|
|
15
|
+
|
|
16
|
+
## Naming patterns
|
|
17
|
+
|
|
18
|
+
All of our atomic classes try to follow the same pattern.
|
|
19
|
+
|
|
20
|
+
```txt
|
|
21
|
+
.<css-property-name>-<value>
|
|
22
|
+
// or
|
|
23
|
+
.<css-property-name>-<value>-<screensize>
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
## CSS Property Values
|
|
27
|
+
|
|
28
|
+
The first part of nearly every Atomic class represent the css property that it will modify. For example, `display` in the class `.display-flex` matches the property value from the corresponding css rule `display: flex;`. We hope this will provide a clear and easily intuited pattern for our Atomics and encourage everyone to learn the fundamentals of CSS.
|
|
29
|
+
|
|
30
|
+
## Values
|
|
31
|
+
|
|
32
|
+
While CSS property values are straightfoward (they just match the CSS property), the value property is not always as easy to guess. We have a few rules that help us figure out how to write values in class names.
|
|
33
|
+
|
|
34
|
+
1. When the CSS value is a string (such as `flex-end` in `justify-content: flex-end`, or `grid` in `display: grid;`) then we just use that string directly (meaning these classes become `.justify-content-flex-end` and `.display-grid`).
|
|
35
|
+
2. In some cases, such as themed colors values, values are associated concepts.
|
|
36
|
+
- Such as `primary` in the class `.color-primary`. (The `primary` is blue on light theme and yellow on high contrast theme.)
|
|
37
|
+
- Such as `semibold` in the class `font-weight-semibold`.
|
|
38
|
+
3. When a number value with a particular unit is involved, that value is typically represented as a t-shirt size.
|
|
39
|
+
- Spacing and non-heading typography values follow this convention, as in `xs, s, m, l, xl, xxl` in `margin-top-xl`, and `font-size-m`.
|
|
40
|
+
- Within a set of values that require units such as the one above, 0 is represented by the string `none`.
|
|
41
|
+
4. Within a series of values that are all unitless numbers, those numbers are used directly, as in `flex-grow: 1;` being represented by `flex-grow-1`.
|
|
42
|
+
5. When a shorthand property's value is multi-part, we choose a reasonable default and omit the value completely.
|
|
43
|
+
- In the case `border: 1px solid $border` the class becomes simply `.border`.
|
|
44
|
+
- In this case further modification would still be available.
|
|
45
|
+
|
|
46
|
+
## Screen sizes
|
|
47
|
+
|
|
48
|
+
Screen sizes are represented by one of the following strings:
|
|
49
|
+
|
|
50
|
+
- `tablet`, representing screens tablet and larger.
|
|
51
|
+
- `desktop`, representing screen desktop width and larger.
|
|
52
|
+
- `widescreen`, representing very wide screens to inifinity.
|
|
53
|
+
|
|
54
|
+
Use a mobile first approach when using Atomics, including the universally applicable class (i.e. the one that does not have a screensize at the end), and when necessary overwrite its values on larger screens.
|
package/src/atomics/border.scss
CHANGED
|
@@ -1,56 +1,56 @@
|
|
|
1
|
-
.border {
|
|
2
|
-
border: $border-width solid $border !important;
|
|
3
|
-
}
|
|
4
|
-
|
|
5
|
-
.border-none {
|
|
6
|
-
border: none !important;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
// Rules for each side
|
|
10
|
-
@each $border-key, $direction in $directions {
|
|
11
|
-
.border-#{$border-key} {
|
|
12
|
-
border-#{$direction}: $border-width solid $border !important;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
.border-#{$border-key}-none {
|
|
16
|
-
border-#{$direction}: 0 !important;
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
@include tablet {
|
|
21
|
-
.border-tablet {
|
|
22
|
-
border: $border-width solid $border !important;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
.border-none-tablet {
|
|
26
|
-
border: none !important;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
// Rules for each side
|
|
30
|
-
@each $border-key, $direction in $directions {
|
|
31
|
-
.border-#{$border-key}-tablet {
|
|
32
|
-
border-#{$direction}: $border-width solid $border !important;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
.border-#{$border-key}-none-tablet {
|
|
36
|
-
border-#{$direction}: 0 !important;
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
// Modifiers
|
|
42
|
-
.border-high-contrast {
|
|
43
|
-
border: $border-width solid $border-white-high-contrast !important;
|
|
44
|
-
|
|
45
|
-
&-hover:hover {
|
|
46
|
-
border: $border-width solid $border-yellow-high-contrast !important;
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
.border-radius {
|
|
51
|
-
border-radius: $border-radius !important;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
.border-radius-l {
|
|
55
|
-
border-radius: $border-radius-large !important;
|
|
56
|
-
}
|
|
1
|
+
.border {
|
|
2
|
+
border: $border-width solid $border !important;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
.border-none {
|
|
6
|
+
border: none !important;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
// Rules for each side
|
|
10
|
+
@each $border-key, $direction in $directions {
|
|
11
|
+
.border-#{$border-key} {
|
|
12
|
+
border-#{$direction}: $border-width solid $border !important;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.border-#{$border-key}-none {
|
|
16
|
+
border-#{$direction}: 0 !important;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
@include tablet {
|
|
21
|
+
.border-tablet {
|
|
22
|
+
border: $border-width solid $border !important;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.border-none-tablet {
|
|
26
|
+
border: none !important;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
// Rules for each side
|
|
30
|
+
@each $border-key, $direction in $directions {
|
|
31
|
+
.border-#{$border-key}-tablet {
|
|
32
|
+
border-#{$direction}: $border-width solid $border !important;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.border-#{$border-key}-none-tablet {
|
|
36
|
+
border-#{$direction}: 0 !important;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
// Modifiers
|
|
42
|
+
.border-high-contrast {
|
|
43
|
+
border: $border-width solid $border-white-high-contrast !important;
|
|
44
|
+
|
|
45
|
+
&-hover:hover {
|
|
46
|
+
border: $border-width solid $border-yellow-high-contrast !important;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
.border-radius {
|
|
51
|
+
border-radius: $border-radius !important;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.border-radius-l {
|
|
55
|
+
border-radius: $border-radius-large !important;
|
|
56
|
+
}
|
package/src/atomics/colors.scss
CHANGED
|
@@ -1,166 +1,166 @@
|
|
|
1
|
-
// Framework colors
|
|
2
|
-
|
|
3
|
-
@each $name, $color-set in $colors {
|
|
4
|
-
$base: nth($color-set, $color-index-base);
|
|
5
|
-
$background: nth($color-set, $color-index-background);
|
|
6
|
-
$dark: nth($color-set, $color-index-dark);
|
|
7
|
-
$hover: nth($color-set, $color-index-hover);
|
|
8
|
-
$active: nth($color-set, $color-index-active);
|
|
9
|
-
$invert: nth($color-set, $color-index-invert);
|
|
10
|
-
|
|
11
|
-
.color-#{$name} {
|
|
12
|
-
color: $base !important;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
a.color-#{$name} {
|
|
16
|
-
&:hover,
|
|
17
|
-
&.focus-visible {
|
|
18
|
-
color: $hover !important;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
&:active {
|
|
22
|
-
color: $active !important;
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
.color-#{$name}-invert {
|
|
27
|
-
color: $invert !important;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
.background-color-#{$name} {
|
|
31
|
-
outline-color: $invert;
|
|
32
|
-
background-color: $base !important;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
.background-color-#{$name}-invert {
|
|
36
|
-
outline-color: $base;
|
|
37
|
-
background-color: $invert !important;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
.background-color-#{$name}-light {
|
|
41
|
-
outline-color: $dark;
|
|
42
|
-
background-color: $background !important;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
.background-color-#{$name}-dark {
|
|
46
|
-
outline-color: $background;
|
|
47
|
-
background-color: $dark !important;
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
@include tablet {
|
|
52
|
-
@each $name, $color-set in $colors {
|
|
53
|
-
$base: nth($color-set, $color-index-base);
|
|
54
|
-
$invert: nth($color-set, $color-index-invert);
|
|
55
|
-
|
|
56
|
-
.background-color-#{$name}-tablet {
|
|
57
|
-
outline-color: $invert;
|
|
58
|
-
background-color: $base !important;
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
// Text color
|
|
64
|
-
|
|
65
|
-
.color-text {
|
|
66
|
-
color: $text !important;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
.color-text-subtle {
|
|
70
|
-
color: $text-subtle !important;
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
.color-text-overlay-invert {
|
|
74
|
-
color: $overlay-invert;
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
.color-current-color {
|
|
78
|
-
color: currentColor !important;
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
.fill-current-color {
|
|
82
|
-
fill: currentColor !important;
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
.outline-color-text {
|
|
86
|
-
outline-color: $text !important;
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
.stroke-current-color {
|
|
90
|
-
stroke: currentColor !important;
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
// Background color
|
|
94
|
-
|
|
95
|
-
.background-color-body {
|
|
96
|
-
outline-color: $text !important;
|
|
97
|
-
background-color: $body-background !important;
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
.background-color-body-medium {
|
|
101
|
-
outline-color: $text !important;
|
|
102
|
-
background-color: $body-background-medium !important;
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
.background-color-alternate {
|
|
106
|
-
outline-color: $text-invert !important;
|
|
107
|
-
background-color: $alternate-background !important;
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
.background-color-alternate-medium {
|
|
111
|
-
outline-color: $text-invert !important;
|
|
112
|
-
background-color: $alternate-background-medium !important;
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
.background-color-overlay {
|
|
116
|
-
outline-color: $overlay-invert;
|
|
117
|
-
background-color: $overlay !important;
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
.background-color-alternating-grey {
|
|
121
|
-
border-top: 1px solid $border-white-high-contrast;
|
|
122
|
-
outline-color: $text !important;
|
|
123
|
-
|
|
124
|
-
&:nth-of-type(even) {
|
|
125
|
-
outline-color: $text;
|
|
126
|
-
background-color: $body-background;
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
&:nth-of-type(odd) {
|
|
130
|
-
outline-color: $text;
|
|
131
|
-
background-color: $body-background-medium;
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
.background-color-alternating-grey-reversed {
|
|
136
|
-
border-top: 1px solid $border-white-high-contrast;
|
|
137
|
-
outline-color: $text !important;
|
|
138
|
-
|
|
139
|
-
&:nth-of-type(even) {
|
|
140
|
-
outline-color: $text;
|
|
141
|
-
background-color: $body-background-medium;
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
&:nth-of-type(odd) {
|
|
145
|
-
outline-color: $text;
|
|
146
|
-
background-color: $body-background;
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
// Static colors - do not change with theme
|
|
151
|
-
|
|
152
|
-
.color-white-static {
|
|
153
|
-
color: $white-static !important;
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
.color-black-static {
|
|
157
|
-
color: $black-static !important;
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
.background-color-white-static {
|
|
161
|
-
background-color: $white-static !important;
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
.background-color-black-static {
|
|
165
|
-
background-color: $black-static !important;
|
|
166
|
-
}
|
|
1
|
+
// Framework colors
|
|
2
|
+
|
|
3
|
+
@each $name, $color-set in $colors {
|
|
4
|
+
$base: nth($color-set, $color-index-base);
|
|
5
|
+
$background: nth($color-set, $color-index-background);
|
|
6
|
+
$dark: nth($color-set, $color-index-dark);
|
|
7
|
+
$hover: nth($color-set, $color-index-hover);
|
|
8
|
+
$active: nth($color-set, $color-index-active);
|
|
9
|
+
$invert: nth($color-set, $color-index-invert);
|
|
10
|
+
|
|
11
|
+
.color-#{$name} {
|
|
12
|
+
color: $base !important;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
a.color-#{$name} {
|
|
16
|
+
&:hover,
|
|
17
|
+
&.focus-visible {
|
|
18
|
+
color: $hover !important;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
&:active {
|
|
22
|
+
color: $active !important;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
.color-#{$name}-invert {
|
|
27
|
+
color: $invert !important;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.background-color-#{$name} {
|
|
31
|
+
outline-color: $invert;
|
|
32
|
+
background-color: $base !important;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.background-color-#{$name}-invert {
|
|
36
|
+
outline-color: $base;
|
|
37
|
+
background-color: $invert !important;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
.background-color-#{$name}-light {
|
|
41
|
+
outline-color: $dark;
|
|
42
|
+
background-color: $background !important;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.background-color-#{$name}-dark {
|
|
46
|
+
outline-color: $background;
|
|
47
|
+
background-color: $dark !important;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
@include tablet {
|
|
52
|
+
@each $name, $color-set in $colors {
|
|
53
|
+
$base: nth($color-set, $color-index-base);
|
|
54
|
+
$invert: nth($color-set, $color-index-invert);
|
|
55
|
+
|
|
56
|
+
.background-color-#{$name}-tablet {
|
|
57
|
+
outline-color: $invert;
|
|
58
|
+
background-color: $base !important;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
// Text color
|
|
64
|
+
|
|
65
|
+
.color-text {
|
|
66
|
+
color: $text !important;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
.color-text-subtle {
|
|
70
|
+
color: $text-subtle !important;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
.color-text-overlay-invert {
|
|
74
|
+
color: $overlay-invert;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
.color-current-color {
|
|
78
|
+
color: currentColor !important;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
.fill-current-color {
|
|
82
|
+
fill: currentColor !important;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
.outline-color-text {
|
|
86
|
+
outline-color: $text !important;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
.stroke-current-color {
|
|
90
|
+
stroke: currentColor !important;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
// Background color
|
|
94
|
+
|
|
95
|
+
.background-color-body {
|
|
96
|
+
outline-color: $text !important;
|
|
97
|
+
background-color: $body-background !important;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
.background-color-body-medium {
|
|
101
|
+
outline-color: $text !important;
|
|
102
|
+
background-color: $body-background-medium !important;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
.background-color-alternate {
|
|
106
|
+
outline-color: $text-invert !important;
|
|
107
|
+
background-color: $alternate-background !important;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
.background-color-alternate-medium {
|
|
111
|
+
outline-color: $text-invert !important;
|
|
112
|
+
background-color: $alternate-background-medium !important;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
.background-color-overlay {
|
|
116
|
+
outline-color: $overlay-invert;
|
|
117
|
+
background-color: $overlay !important;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
.background-color-alternating-grey {
|
|
121
|
+
border-top: 1px solid $border-white-high-contrast;
|
|
122
|
+
outline-color: $text !important;
|
|
123
|
+
|
|
124
|
+
&:nth-of-type(even) {
|
|
125
|
+
outline-color: $text;
|
|
126
|
+
background-color: $body-background;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
&:nth-of-type(odd) {
|
|
130
|
+
outline-color: $text;
|
|
131
|
+
background-color: $body-background-medium;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
.background-color-alternating-grey-reversed {
|
|
136
|
+
border-top: 1px solid $border-white-high-contrast;
|
|
137
|
+
outline-color: $text !important;
|
|
138
|
+
|
|
139
|
+
&:nth-of-type(even) {
|
|
140
|
+
outline-color: $text;
|
|
141
|
+
background-color: $body-background-medium;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
&:nth-of-type(odd) {
|
|
145
|
+
outline-color: $text;
|
|
146
|
+
background-color: $body-background;
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
// Static colors - do not change with theme
|
|
151
|
+
|
|
152
|
+
.color-white-static {
|
|
153
|
+
color: $white-static !important;
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
.color-black-static {
|
|
157
|
+
color: $black-static !important;
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
.background-color-white-static {
|
|
161
|
+
background-color: $white-static !important;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
.background-color-black-static {
|
|
165
|
+
background-color: $black-static !important;
|
|
166
|
+
}
|