@siemens/element-theme 47.0.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.
Files changed (92) hide show
  1. package/package.json +28 -0
  2. package/src/styles/_accessibility.scss +9 -0
  3. package/src/styles/_all-variables.scss +7 -0
  4. package/src/styles/_bootstrap.scss +26 -0
  5. package/src/styles/_themes.scss +35 -0
  6. package/src/styles/_variables.scss +10 -0
  7. package/src/styles/bootstrap/_alert.scss +60 -0
  8. package/src/styles/bootstrap/_badges.scss +115 -0
  9. package/src/styles/bootstrap/_breadcrumb.scss +32 -0
  10. package/src/styles/bootstrap/_button-group.scss +101 -0
  11. package/src/styles/bootstrap/_buttons.scss +244 -0
  12. package/src/styles/bootstrap/_card.scss +208 -0
  13. package/src/styles/bootstrap/_containers.scss +44 -0
  14. package/src/styles/bootstrap/_dropdowns.scss +216 -0
  15. package/src/styles/bootstrap/_forms.scss +10 -0
  16. package/src/styles/bootstrap/_functions.scss +188 -0
  17. package/src/styles/bootstrap/_grid.scss +33 -0
  18. package/src/styles/bootstrap/_helpers.scss +6 -0
  19. package/src/styles/bootstrap/_images.scss +45 -0
  20. package/src/styles/bootstrap/_list-group.scss +197 -0
  21. package/src/styles/bootstrap/_mixins.scss +30 -0
  22. package/src/styles/bootstrap/_modals.scss +234 -0
  23. package/src/styles/bootstrap/_nav.scss +155 -0
  24. package/src/styles/bootstrap/_pagination.scss +58 -0
  25. package/src/styles/bootstrap/_popovers.scss +188 -0
  26. package/src/styles/bootstrap/_progress.scss +42 -0
  27. package/src/styles/bootstrap/_reboot.scss +618 -0
  28. package/src/styles/bootstrap/_root.scss +22 -0
  29. package/src/styles/bootstrap/_tables.scss +186 -0
  30. package/src/styles/bootstrap/_tooltip.scss +145 -0
  31. package/src/styles/bootstrap/_transitions.scss +28 -0
  32. package/src/styles/bootstrap/_type.scss +235 -0
  33. package/src/styles/bootstrap/_utilities.scss +105 -0
  34. package/src/styles/bootstrap/_variables.scss +654 -0
  35. package/src/styles/bootstrap/forms/_form-check.scss +249 -0
  36. package/src/styles/bootstrap/forms/_form-control.scss +151 -0
  37. package/src/styles/bootstrap/forms/_form-file.scss +29 -0
  38. package/src/styles/bootstrap/forms/_form-label.scss +39 -0
  39. package/src/styles/bootstrap/forms/_form-range.scss +68 -0
  40. package/src/styles/bootstrap/forms/_input-group.scss +103 -0
  41. package/src/styles/bootstrap/forms/_validation.scss +95 -0
  42. package/src/styles/bootstrap/helpers/_clearfix.scss +5 -0
  43. package/src/styles/bootstrap/helpers/_position.scss +34 -0
  44. package/src/styles/bootstrap/helpers/_stacks.scss +13 -0
  45. package/src/styles/bootstrap/helpers/_stretched-link.scss +14 -0
  46. package/src/styles/bootstrap/helpers/_text-truncation.scss +9 -0
  47. package/src/styles/bootstrap/helpers/_visually-hidden.scss +10 -0
  48. package/src/styles/bootstrap/mixins/_backdrop.scss +19 -0
  49. package/src/styles/bootstrap/mixins/_breakpoints.scss +136 -0
  50. package/src/styles/bootstrap/mixins/_clearfix.scss +7 -0
  51. package/src/styles/bootstrap/mixins/_container.scss +7 -0
  52. package/src/styles/bootstrap/mixins/_deprecate.scss +12 -0
  53. package/src/styles/bootstrap/mixins/_gradients.scss +14 -0
  54. package/src/styles/bootstrap/mixins/_grid.scss +171 -0
  55. package/src/styles/bootstrap/mixins/_image.scss +15 -0
  56. package/src/styles/bootstrap/mixins/_lists.scss +5 -0
  57. package/src/styles/bootstrap/mixins/_reset-text.scss +18 -0
  58. package/src/styles/bootstrap/mixins/_table-row.scss +31 -0
  59. package/src/styles/bootstrap/mixins/_text-truncate.scss +7 -0
  60. package/src/styles/bootstrap/mixins/_transition.scss +28 -0
  61. package/src/styles/bootstrap/mixins/_utilities.scss +86 -0
  62. package/src/styles/bootstrap/mixins/_visually-hidden.scss +29 -0
  63. package/src/styles/components/_application-header.scss +244 -0
  64. package/src/styles/components/_container-grid.scss +99 -0
  65. package/src/styles/components/_datatable.scss +328 -0
  66. package/src/styles/components/_drag_drop.scss +105 -0
  67. package/src/styles/components/_electron-titlebar.scss +5 -0
  68. package/src/styles/components/_elevation.scss +21 -0
  69. package/src/styles/components/_focus.scss +21 -0
  70. package/src/styles/components/_icons.scss +25 -0
  71. package/src/styles/components/_layout.scss +105 -0
  72. package/src/styles/components/_links.scss +34 -0
  73. package/src/styles/components/_pills.scss +45 -0
  74. package/src/styles/components/_scrollbar.scss +10 -0
  75. package/src/styles/components/_skeleton.scss +42 -0
  76. package/src/styles/components/_switch.scss +77 -0
  77. package/src/styles/components/_system-banner.scss +5 -0
  78. package/src/styles/components/_widgets.scss +58 -0
  79. package/src/styles/variables/_animations.scss +7 -0
  80. package/src/styles/variables/_elevation.scss +25 -0
  81. package/src/styles/variables/_focus.scss +55 -0
  82. package/src/styles/variables/_layout.scss +6 -0
  83. package/src/styles/variables/_semantic-tokens.scss +178 -0
  84. package/src/styles/variables/_si-vars.scss +19 -0
  85. package/src/styles/variables/_spacers.scss +28 -0
  86. package/src/styles/variables/_typography.scss +66 -0
  87. package/src/styles/variables/_utilities.scss +599 -0
  88. package/src/styles/variables/_zindex.scss +20 -0
  89. package/src/theme/_base-colors.scss +79 -0
  90. package/src/theme/_data-colors.scss +105 -0
  91. package/src/theme/_theme-element.scss +339 -0
  92. package/src/theme.scss +49 -0
@@ -0,0 +1,186 @@
1
+ @use '../variables/spacers';
2
+ @use '../variables/typography';
3
+ @use 'mixins/breakpoints';
4
+ @use 'mixins/table-row';
5
+ @use 'variables';
6
+
7
+ @use 'sass:map';
8
+
9
+ .table {
10
+ // FIXME: drop these
11
+ --#{variables.$variable-prefix}table-bg: #{variables.$table-bg};
12
+ --#{variables.$variable-prefix}table-accent-bg: #{variables.$table-accent-bg};
13
+ --#{variables.$variable-prefix}table-striped-color: #{variables.$table-striped-color};
14
+ --#{variables.$variable-prefix}table-striped-bg: #{variables.$table-striped-bg};
15
+ --#{variables.$variable-prefix}table-active-color: #{variables.$table-active-color};
16
+ --#{variables.$variable-prefix}table-active-bg: #{variables.$table-active-bg};
17
+ --#{variables.$variable-prefix}table-hover-color: #{variables.$table-hover-color};
18
+ --#{variables.$variable-prefix}table-hover-bg: #{variables.$table-hover-bg};
19
+
20
+ inline-size: 100%;
21
+ margin-block-end: spacers.$spacer;
22
+ color: variables.$table-color;
23
+ vertical-align: variables.$table-cell-vertical-align;
24
+ border-color: variables.$table-border-color;
25
+ border-radius: variables.$border-radius;
26
+ background-color: var(--bs-table-bg);
27
+
28
+ // Target th & td
29
+ // We need the child combinator to prevent styles leaking to nested tables which doesn't have a `.table` class.
30
+ // We use the universal selectors here to simplify the selector (else we would need 6 different selectors).
31
+ // Another advantage is that this generates less code and makes the selector less specific making it easier to override.
32
+ // stylelint-disable-next-line selector-max-universal
33
+ > :not(caption) > * > * {
34
+ padding-block: variables.$table-cell-padding-y;
35
+ padding-inline: variables.$table-cell-padding-x;
36
+ background-color: var(--bs-table-accent-bg);
37
+ border-block-end-width: variables.$table-border-width;
38
+ }
39
+
40
+ > tbody {
41
+ vertical-align: inherit;
42
+ }
43
+
44
+ > thead {
45
+ vertical-align: bottom;
46
+ }
47
+
48
+ // Highlight border color between thead, tbody and tfoot.
49
+ > :not(:first-child) {
50
+ border-block-start: (2 * variables.$table-border-width) solid
51
+ variables.$table-group-separator-color;
52
+ }
53
+
54
+ :is(th, td) {
55
+ vertical-align: middle;
56
+
57
+ &:first-child {
58
+ padding-inline-start: map.get(spacers.$spacers, 6);
59
+ }
60
+
61
+ &:last-child {
62
+ padding-inline-end: map.get(spacers.$spacers, 6);
63
+ }
64
+ }
65
+
66
+ thead {
67
+ border-width: 0;
68
+ border-block-end: map.get(spacers.$spacers, 2) solid variables.$table-border-color;
69
+
70
+ th {
71
+ vertical-align: baseline;
72
+ font-size: typography.$si-font-size-title-2;
73
+ font-weight: typography.$si-font-weight-title-2;
74
+ line-height: typography.$si-line-height-title-2;
75
+ }
76
+ }
77
+
78
+ tbody {
79
+ tr {
80
+ &:last-child {
81
+ border-end-start-radius: variables.$border-radius;
82
+ border-end-end-radius: variables.$border-radius;
83
+
84
+ > * {
85
+ border-block-end: 0;
86
+ }
87
+
88
+ > :first-child {
89
+ border-end-start-radius: inherit;
90
+ }
91
+
92
+ > :last-child {
93
+ border-end-end-radius: inherit;
94
+ }
95
+ }
96
+ }
97
+
98
+ :is(th, td) {
99
+ block-size: 64px;
100
+ }
101
+ }
102
+ }
103
+
104
+ //
105
+ // Change placement of captions with a class
106
+ //
107
+
108
+ .caption-top {
109
+ caption-side: top;
110
+ }
111
+
112
+ .table-sm {
113
+ // stylelint-disable-next-line selector-max-universal
114
+ > :not(caption) > * > * {
115
+ padding-block: variables.$table-cell-padding-y-sm;
116
+ padding-inline: variables.$table-cell-padding-x-sm;
117
+ }
118
+
119
+ tbody {
120
+ :is(th, td) {
121
+ block-size: 48px;
122
+ }
123
+ }
124
+ }
125
+
126
+ // Zebra-striping
127
+ //
128
+ // Default zebra-stripe styles (alternating gray and transparent backgrounds)
129
+
130
+ .table-striped {
131
+ > tbody > tr:nth-of-type(#{variables.$table-striped-order}) > * {
132
+ --#{variables.$variable-prefix}table-accent-bg: var(
133
+ --#{variables.$variable-prefix}table-striped-bg
134
+ );
135
+ color: var(--#{variables.$variable-prefix}table-striped-color);
136
+ }
137
+ }
138
+
139
+ // Active table
140
+ //
141
+ // The `.table-active` class can be added to highlight rows or cells
142
+
143
+ .table-active {
144
+ --#{variables.$variable-prefix}table-accent-bg: var(
145
+ --#{variables.$variable-prefix}table-active-bg
146
+ );
147
+ color: var(--#{variables.$variable-prefix}table-active-color);
148
+ }
149
+
150
+ // Hover effect
151
+ //
152
+ // Placed here since it has to come after the potential zebra striping
153
+
154
+ .table-hover {
155
+ > tbody > tr:hover > * {
156
+ --#{variables.$variable-prefix}table-accent-bg: var(
157
+ --#{variables.$variable-prefix}table-hover-bg
158
+ );
159
+ color: var(--#{variables.$variable-prefix}table-hover-color);
160
+ }
161
+ }
162
+
163
+ // Table variants
164
+ //
165
+ // Table variants set the table cell backgrounds, border colors
166
+ // and the colors of the striped, hovered & active tables
167
+
168
+ @each $color, $value in variables.$table-variants {
169
+ @include table-row.table-variant($color, $value);
170
+ }
171
+
172
+ // Responsive tables
173
+ //
174
+ // Generate series of `.table-responsive-*` classes for configuring the screen
175
+ // size of where your table will overflow.
176
+
177
+ @each $breakpoint in map.keys(variables.$grid-breakpoints) {
178
+ $infix: breakpoints.breakpoint-infix($breakpoint, variables.$grid-breakpoints);
179
+
180
+ @include breakpoints.media-breakpoint-down($breakpoint) {
181
+ .table-responsive#{$infix} {
182
+ overflow-x: auto;
183
+ -webkit-overflow-scrolling: touch;
184
+ }
185
+ }
186
+ }
@@ -0,0 +1,145 @@
1
+ @use '../variables/zindex';
2
+ @use './mixins/reset-text';
3
+ @use './variables';
4
+
5
+ .tooltip {
6
+ position: absolute;
7
+ z-index: zindex.$zindex-tooltip;
8
+ display: block;
9
+ margin: variables.$tooltip-margin;
10
+ // Our parent element can be arbitrary since tooltips are by default inserted as a sibling of their target element.
11
+ // So reset our font and text properties to avoid inheriting weird values.
12
+ @include reset-text.reset-text();
13
+ font-size: variables.$tooltip-font-size;
14
+ // Allow breaking very long words so they don't overflow the tooltip's bounds
15
+ word-wrap: break-word;
16
+ opacity: 0;
17
+
18
+ &.show {
19
+ opacity: variables.$tooltip-opacity;
20
+ }
21
+
22
+ .tooltip-arrow {
23
+ position: absolute;
24
+ display: block;
25
+ inline-size: variables.$tooltip-arrow-width;
26
+ block-size: variables.$tooltip-arrow-height;
27
+
28
+ &::before {
29
+ position: absolute;
30
+ content: '';
31
+ border-color: transparent;
32
+ border-style: solid;
33
+ }
34
+ }
35
+ }
36
+
37
+ .tooltip-inner {
38
+ min-inline-size: 100px;
39
+ max-inline-size: variables.$tooltip-max-width;
40
+ padding-block: variables.$tooltip-padding-y;
41
+ padding-inline: variables.$tooltip-padding-x;
42
+ color: variables.$tooltip-color;
43
+ text-align: center;
44
+ background-color: variables.$tooltip-bg;
45
+ border-radius: variables.$tooltip-border-radius;
46
+ }
47
+
48
+ // .bs-tooltip-*: standard BS
49
+ // .tooltip-*-*: si-tooltip with CDK overlay
50
+ // .bs-tooltip-auto*: popper.js
51
+ // FIXME: remove popper.js selectors in next breaking release
52
+
53
+ :is(
54
+ .bs-tooltip-top,
55
+ .tooltip-start-bottom,
56
+ .tooltip-end-bottom,
57
+ .tooltip-center-bottom,
58
+ .bs-tooltip-auto[data-popper-placement^='top']
59
+ ) {
60
+ padding-block: variables.$tooltip-arrow-height;
61
+
62
+ .tooltip-arrow {
63
+ inset-block-end: 0;
64
+ margin-inline-start: (variables.$tooltip-arrow-width * -0.5);
65
+
66
+ &::before {
67
+ inset-block-start: -1px;
68
+ border-block-width: variables.$tooltip-arrow-height 0;
69
+ border-inline-width: (variables.$tooltip-arrow-width * 0.5);
70
+ border-block-start-color: variables.$tooltip-arrow-color;
71
+ }
72
+ }
73
+ }
74
+
75
+ :is(.bs-tooltip-end, .tooltip-start-center, .bs-tooltip-auto[data-popper-placement^='right']) {
76
+ padding-inline: variables.$tooltip-arrow-height;
77
+
78
+ .tooltip-arrow {
79
+ inset-inline-start: 0;
80
+ inline-size: variables.$tooltip-arrow-height;
81
+ block-size: variables.$tooltip-arrow-width;
82
+ margin-block-start: -0.5 * variables.$tooltip-arrow-width;
83
+
84
+ &::before {
85
+ inset-inline-end: -1px;
86
+ border-block-width: (variables.$tooltip-arrow-width * 0.5);
87
+ border-inline-width: 0 variables.$tooltip-arrow-height;
88
+ border-inline-end-color: variables.$tooltip-arrow-color;
89
+ }
90
+ }
91
+ }
92
+
93
+ :is(
94
+ .bs-tooltip-bottom,
95
+ .tooltip-start-top,
96
+ .tooltip-end-top,
97
+ .tooltip-center-top,
98
+ .bs-tooltip-auto[data-popper-placement^='bottom']
99
+ ) {
100
+ padding-block: variables.$tooltip-arrow-height;
101
+
102
+ .tooltip-arrow {
103
+ inset-block-start: 0;
104
+ margin-inline-start: (variables.$tooltip-arrow-width * -0.5);
105
+
106
+ &::before {
107
+ inset-block-end: -1px;
108
+ border-block-width: 0 variables.$tooltip-arrow-height;
109
+ border-inline-width: (variables.$tooltip-arrow-width * 0.5);
110
+ border-block-end-color: variables.$tooltip-arrow-color;
111
+ }
112
+ }
113
+ }
114
+
115
+ :is(.bs-tooltip-start, .tooltip-end-center, .bs-tooltip-auto[data-popper-placement^='left']) {
116
+ padding-inline: variables.$tooltip-arrow-height;
117
+
118
+ .tooltip-arrow {
119
+ inset-inline-end: 0;
120
+ inline-size: variables.$tooltip-arrow-height;
121
+ block-size: variables.$tooltip-arrow-width;
122
+ margin-block-start: -0.5 * variables.$tooltip-arrow-width;
123
+
124
+ &::before {
125
+ inset-inline-start: -1px;
126
+ border-block-width: (variables.$tooltip-arrow-width * 0.5);
127
+ border-inline-width: variables.$tooltip-arrow-height 0;
128
+ border-inline-start-color: variables.$tooltip-arrow-color;
129
+ }
130
+ }
131
+ }
132
+
133
+ // center arrow in block direction
134
+ :is(.tooltip-start-center, .tooltip-end-center) {
135
+ .tooltip-arrow {
136
+ inset-block-start: 50%;
137
+ }
138
+ }
139
+
140
+ // center arrow in inline direction
141
+ :is(.tooltip-center-top, .tooltip-center-bottom) {
142
+ .tooltip-arrow {
143
+ inset-inline-start: 50%;
144
+ }
145
+ }
@@ -0,0 +1,28 @@
1
+ @use './mixins/transition';
2
+ @use './variables';
3
+
4
+ .fade {
5
+ @include transition.transition(variables.$transition-fade);
6
+
7
+ &:not(.show) {
8
+ opacity: 0;
9
+ }
10
+ }
11
+
12
+ .collapse {
13
+ &:not(.show) {
14
+ display: none;
15
+ }
16
+ }
17
+
18
+ .collapsing {
19
+ block-size: 0;
20
+ overflow: hidden;
21
+ @include transition.transition(variables.$transition-collapse);
22
+
23
+ &.collapse-horizontal {
24
+ inline-size: 0;
25
+ block-size: auto;
26
+ @include transition.transition(variables.$transition-collapse-width);
27
+ }
28
+ }
@@ -0,0 +1,235 @@
1
+ @use '../variables/typography';
2
+ @use './mixins/lists';
3
+ @use './variables';
4
+
5
+ // used for @extend to work
6
+ @use './reboot';
7
+
8
+ //
9
+ // Headings
10
+ //
11
+ .h1 {
12
+ @extend h1;
13
+ }
14
+
15
+ .h2 {
16
+ @extend h2;
17
+ }
18
+
19
+ .h3 {
20
+ @extend h3;
21
+ }
22
+
23
+ .h4 {
24
+ @extend h4;
25
+ }
26
+
27
+ .h5 {
28
+ @extend h5;
29
+ }
30
+
31
+ .h6 {
32
+ @extend h6;
33
+ }
34
+
35
+ .lead {
36
+ font-size: variables.$lead-font-size;
37
+ font-weight: variables.$lead-font-weight;
38
+ }
39
+
40
+ //
41
+ // Emphasis
42
+ //
43
+ .small {
44
+ @extend small;
45
+ }
46
+
47
+ .mark {
48
+ @extend mark;
49
+ }
50
+
51
+ //
52
+ // Lists
53
+ //
54
+
55
+ .list-unstyled {
56
+ @include lists.list-unstyled();
57
+ }
58
+
59
+ // Inline turns list items into inline-block
60
+ .list-inline {
61
+ @include lists.list-unstyled();
62
+ }
63
+
64
+ .list-inline-item {
65
+ display: inline-block;
66
+
67
+ &:not(:last-child) {
68
+ margin-inline-end: variables.$list-inline-padding;
69
+ }
70
+ }
71
+
72
+ //
73
+ // Misc
74
+ //
75
+
76
+ // Builds on `abbr`
77
+ .initialism {
78
+ font-size: variables.$initialism-font-size;
79
+ text-transform: uppercase;
80
+ }
81
+
82
+ // Blockquotes
83
+ .blockquote {
84
+ margin-block-end: variables.$blockquote-margin-y;
85
+ font-size: variables.$blockquote-font-size;
86
+
87
+ > :last-child {
88
+ margin-block-end: 0;
89
+ }
90
+ }
91
+
92
+ .blockquote-footer {
93
+ margin-block: -(variables.$blockquote-margin-y) variables.$blockquote-margin-y;
94
+ font-size: variables.$blockquote-footer-font-size;
95
+ color: variables.$blockquote-footer-color;
96
+
97
+ &::before {
98
+ content: '\2014\00A0'; // em dash, nbsp
99
+ }
100
+ }
101
+
102
+ h1,
103
+ .h1,
104
+ .si-h1 {
105
+ @include typography.si-font(
106
+ typography.$si-font-size-h1,
107
+ typography.$si-line-height-h1,
108
+ typography.$si-font-weight-h1
109
+ );
110
+ }
111
+
112
+ .si-h1-black {
113
+ @include typography.si-font(
114
+ typography.$si-font-size-h1-black,
115
+ typography.$si-line-height-h1-black,
116
+ typography.$si-font-weight-h1-black
117
+ );
118
+ }
119
+
120
+ h2,
121
+ .h2,
122
+ .si-h2 {
123
+ @include typography.si-font(
124
+ typography.$si-font-size-h2,
125
+ typography.$si-line-height-h2,
126
+ typography.$si-font-weight-h2
127
+ );
128
+ }
129
+
130
+ h3,
131
+ .h3,
132
+ .si-h3 {
133
+ @include typography.si-font(
134
+ typography.$si-font-size-h3,
135
+ typography.$si-line-height-h3,
136
+ typography.$si-font-weight-h3
137
+ );
138
+ }
139
+
140
+ h4,
141
+ h5,
142
+ h6,
143
+ .h4,
144
+ .h5,
145
+ .h6 {
146
+ @include typography.si-font(
147
+ typography.$si-font-size-body-1,
148
+ typography.$si-line-height-body-1,
149
+ typography.$si-font-weight-body-1
150
+ );
151
+ }
152
+
153
+ .si-title-1 {
154
+ @include typography.si-font(
155
+ typography.$si-font-size-title-1,
156
+ typography.$si-line-height-title-1,
157
+ typography.$si-font-weight-title-1
158
+ );
159
+ }
160
+
161
+ .si-body-1 {
162
+ @include typography.si-font(
163
+ typography.$si-font-size-body-1,
164
+ typography.$si-line-height-body-1,
165
+ typography.$si-font-weight-body-1
166
+ );
167
+ }
168
+
169
+ .si-title-2 {
170
+ @include typography.si-font(
171
+ typography.$si-font-size-title-2,
172
+ typography.$si-line-height-title-2,
173
+ typography.$si-font-weight-title-2
174
+ );
175
+ }
176
+
177
+ .si-body-2 {
178
+ @include typography.si-font(
179
+ typography.$si-font-size-body-2,
180
+ typography.$si-line-height-body-2,
181
+ typography.$si-font-weight-body-2
182
+ );
183
+ }
184
+
185
+ .si-caption {
186
+ @include typography.si-font(
187
+ typography.$si-font-size-caption-1,
188
+ typography.$si-line-height-caption-1,
189
+ typography.$si-font-weight-caption-1
190
+ );
191
+ }
192
+
193
+ .display-1,
194
+ .si-display-1 {
195
+ @include typography.si-font(
196
+ typography.$si-font-size-display-1,
197
+ typography.$si-line-height-display-1,
198
+ typography.$si-font-weight-display-1
199
+ );
200
+ }
201
+
202
+ .display-2,
203
+ .si-display-2 {
204
+ @include typography.si-font(
205
+ typography.$si-font-size-display-2,
206
+ typography.$si-line-height-display-2,
207
+ typography.$si-font-weight-display-2
208
+ );
209
+ }
210
+
211
+ .display-3,
212
+ .si-display-3 {
213
+ @include typography.si-font(
214
+ typography.$si-font-size-display-3,
215
+ typography.$si-line-height-display-3,
216
+ typography.$si-font-weight-display-3
217
+ );
218
+ }
219
+
220
+ .display-4,
221
+ .si-display-4 {
222
+ @include typography.si-font(
223
+ typography.$si-font-size-display-4,
224
+ typography.$si-line-height-display-4,
225
+ typography.$si-font-weight-display-4
226
+ );
227
+ }
228
+
229
+ .text-pre {
230
+ white-space: pre;
231
+ }
232
+
233
+ .text-pre-wrap {
234
+ white-space: pre-wrap;
235
+ }
@@ -0,0 +1,105 @@
1
+ @use '../variables/semantic-tokens';
2
+ @use '../variables/utilities' as variables-utilities;
3
+ @use 'mixins/breakpoints';
4
+ @use 'mixins/utilities' as mixins-utilities;
5
+ @use 'variables';
6
+
7
+ @use 'sass:map';
8
+ @use 'sass:meta';
9
+
10
+ // Loop over each breakpoint
11
+ @each $breakpoint in map.keys(variables.$grid-breakpoints) {
12
+ // Generate media query if needed
13
+ @include breakpoints.media-breakpoint-up($breakpoint) {
14
+ $infix: breakpoints.breakpoint-infix($breakpoint, variables.$grid-breakpoints);
15
+
16
+ // Loop over each utility property
17
+ @each $key, $utility in variables-utilities.$utilities {
18
+ // The utility can be disabled with `false`, thus check if the utility is a map first
19
+ // Only proceed if responsive media queries are enabled or if it's the base media query
20
+ @if meta.type-of($utility) == 'map' and (map.get($utility, responsive) or $infix == '') {
21
+ @include mixins-utilities.generate-utility($utility, $infix);
22
+ }
23
+ }
24
+ }
25
+ }
26
+
27
+ // Print utilities
28
+ @media print {
29
+ @each $key, $utility in variables-utilities.$utilities {
30
+ // The utility can be disabled with `false`, thus check if the utility is a map first
31
+ // Then check if the utility needs print styles
32
+ @if meta.type-of($utility) == 'map' and map.get($utility, print) == true {
33
+ @include mixins-utilities.generate-utility($utility, '-print');
34
+ }
35
+ }
36
+ }
37
+
38
+ $text-colors: (
39
+ 'primary': semantic-tokens.$element-text-active,
40
+ 'body': semantic-tokens.$element-text-primary,
41
+ 'secondary': semantic-tokens.$element-text-secondary,
42
+ 'tertiary': semantic-tokens.$element-text-disabled,
43
+ 'success': semantic-tokens.$element-text-success,
44
+ 'info': semantic-tokens.$element-text-information,
45
+ 'warning': semantic-tokens.$element-text-warning,
46
+ 'caution': semantic-tokens.$element-text-caution,
47
+ 'danger': semantic-tokens.$element-text-danger,
48
+ 'inverse': semantic-tokens.$element-text-inverse,
49
+ 'muted': semantic-tokens.$element-text-disabled
50
+ ) !default;
51
+
52
+ @each $color, $value in $text-colors {
53
+ .text-#{$color} {
54
+ color: #{$value} !important; // stylelint-disable-line declaration-no-important
55
+ }
56
+ }
57
+
58
+ $background-colors: (
59
+ 'primary': semantic-tokens.$element-ui-0,
60
+ 'secondary': semantic-tokens.$element-text-secondary,
61
+ 'tertiary': semantic-tokens.$element-text-disabled,
62
+ 'success': semantic-tokens.$element-status-success,
63
+ 'info': semantic-tokens.$element-status-information,
64
+ 'warning': semantic-tokens.$element-status-warning,
65
+ 'danger': semantic-tokens.$element-status-danger,
66
+ 'base-0': semantic-tokens.$element-base-0,
67
+ 'base-1': semantic-tokens.$element-base-1,
68
+ 'base-2': semantic-tokens.$element-base-2,
69
+ 'base-3': semantic-tokens.$element-base-3,
70
+ 'base-success': semantic-tokens.$element-base-success,
71
+ 'base-info': semantic-tokens.$element-base-information,
72
+ 'base-caution': semantic-tokens.$element-base-caution,
73
+ 'base-warning': semantic-tokens.$element-base-warning,
74
+ 'base-danger': semantic-tokens.$element-base-danger,
75
+ 'base-translucent-1': semantic-tokens.$element-base-translucent-1,
76
+ 'base-translucent-2': semantic-tokens.$element-base-translucent-2
77
+ ) !default;
78
+
79
+ @each $color, $value in $background-colors {
80
+ .bg-#{$color} {
81
+ background: #{$value} !important; // stylelint-disable-line declaration-no-important
82
+ }
83
+ }
84
+
85
+ $status-colors: (
86
+ 'success': semantic-tokens.$element-status-success,
87
+ 'info': semantic-tokens.$element-status-information,
88
+ 'caution': semantic-tokens.$element-status-caution,
89
+ 'warning': semantic-tokens.$element-status-warning,
90
+ 'danger': semantic-tokens.$element-status-danger,
91
+ 'critical': semantic-tokens.$element-status-critical,
92
+ 'neutral': semantic-tokens.$element-ui-4,
93
+ 'success-contrast': semantic-tokens.$element-status-success-contrast,
94
+ 'info-contrast': semantic-tokens.$element-status-information-contrast,
95
+ 'caution-contrast': semantic-tokens.$element-status-caution-contrast,
96
+ 'warning-contrast': semantic-tokens.$element-status-warning-contrast,
97
+ 'danger-contrast': semantic-tokens.$element-status-danger-contrast,
98
+ 'critical-contrast': semantic-tokens.$element-status-critical-contrast
99
+ ) !default;
100
+
101
+ @each $color, $value in $status-colors {
102
+ .status-#{$color} {
103
+ color: #{$value} !important; // stylelint-disable-line declaration-no-important
104
+ }
105
+ }