@siemens/element-theme 51.0.0-rc.1 → 51.0.0-rc.10

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 (68) hide show
  1. package/README.md +13 -0
  2. package/package.json +3 -2
  3. package/src/styles/_accessibility.scss +8 -2
  4. package/src/styles/_density.scss +144 -0
  5. package/src/styles/_reboot-shadow-dom.scss +5 -0
  6. package/src/styles/_root-font-size.scss +4 -2
  7. package/src/styles/_selectors.scss +3 -0
  8. package/src/styles/_themes.scss +15 -3
  9. package/src/styles/_utilities.scss +5 -0
  10. package/src/styles/_variables.scss +2 -0
  11. package/src/styles/bootstrap/_alert.scss +19 -19
  12. package/src/styles/bootstrap/_badges.scss +41 -41
  13. package/src/styles/bootstrap/_button-group.scss +12 -11
  14. package/src/styles/bootstrap/_buttons.scss +85 -85
  15. package/src/styles/bootstrap/_card.scss +23 -17
  16. package/src/styles/bootstrap/_dropdowns.scss +18 -18
  17. package/src/styles/bootstrap/_forms.scss +1 -0
  18. package/src/styles/bootstrap/_images.scss +4 -2
  19. package/src/styles/bootstrap/_list-group.scss +52 -14
  20. package/src/styles/bootstrap/_mixins.scss +1 -0
  21. package/src/styles/bootstrap/_modals.scss +11 -10
  22. package/src/styles/bootstrap/_nav.scss +17 -8
  23. package/src/styles/bootstrap/_pagination.scss +6 -5
  24. package/src/styles/bootstrap/_popovers.scss +3 -2
  25. package/src/styles/bootstrap/_reboot.scss +9 -3
  26. package/src/styles/bootstrap/_root.scss +2 -1
  27. package/src/styles/bootstrap/_tables.scss +8 -6
  28. package/src/styles/bootstrap/_type.scss +144 -36
  29. package/src/styles/bootstrap/_utilities.scss +41 -45
  30. package/src/styles/bootstrap/_variables.scss +154 -140
  31. package/src/styles/bootstrap/forms/_form-check.scss +43 -73
  32. package/src/styles/bootstrap/forms/_form-control.scss +35 -29
  33. package/src/styles/bootstrap/forms/_form-file.scss +9 -9
  34. package/src/styles/bootstrap/forms/_form-label.scss +1 -1
  35. package/src/styles/bootstrap/forms/_form-layout.scss +46 -0
  36. package/src/styles/bootstrap/forms/_form-range.scss +13 -14
  37. package/src/styles/bootstrap/forms/_validation.scss +3 -6
  38. package/src/styles/bootstrap/mixins/_badge-text.scss +3 -3
  39. package/src/styles/bootstrap/mixins/_form-layout.scss +62 -0
  40. package/src/styles/bootstrap/mixins/_grid.scss +3 -3
  41. package/src/styles/bootstrap/mixins/_utilities.scss +14 -3
  42. package/src/styles/components/_application-header.scss +30 -30
  43. package/src/styles/components/_datatable.scss +57 -48
  44. package/src/styles/components/_drag_drop.scss +7 -6
  45. package/src/styles/components/_elevation.scss +11 -6
  46. package/src/styles/components/_layout.scss +26 -13
  47. package/src/styles/components/_links.scss +2 -2
  48. package/src/styles/components/_list-item.scss +69 -30
  49. package/src/styles/components/_markdown.scss +33 -19
  50. package/src/styles/components/_pills.scss +6 -6
  51. package/src/styles/components/_scrollbar.scss +6 -5
  52. package/src/styles/components/_search-bar.scss +67 -0
  53. package/src/styles/components/_skeleton.scss +4 -3
  54. package/src/styles/components/_switch.scss +16 -18
  55. package/src/styles/components/_widgets.scss +12 -10
  56. package/src/styles/mixins/_utilities.scss +271 -0
  57. package/src/styles/variables/_elevation.scss +14 -12
  58. package/src/styles/variables/_focus.scss +4 -3
  59. package/src/styles/variables/_si-vars.scss +13 -7
  60. package/src/styles/variables/_sizing.scss +22 -0
  61. package/src/styles/variables/_spacers.scss +53 -25
  62. package/src/styles/variables/_system-tokens.scss +190 -0
  63. package/src/styles/variables/_typography.scss +112 -99
  64. package/src/styles/variables/_utilities.scss +64 -51
  65. package/src/theme/_theme-element.scss +386 -2
  66. package/src/theme-shadow-dom.scss +17 -0
  67. package/src/theme.scss +14 -3
  68. /package/{LICENSE.md → LICENSE} +0 -0
@@ -2,6 +2,7 @@
2
2
  @use '../variables/focus';
3
3
  @use '../variables/semantic-tokens';
4
4
  @use '../variables/spacers';
5
+ @use '../variables/system-tokens';
5
6
  @use '../variables/typography';
6
7
  @use './mixins/transition';
7
8
  @use './variables' as bootstrap-variables;
@@ -12,13 +13,13 @@ $btn-icon-font-size: variables.$si-icon-font-size;
12
13
 
13
14
  // there are some non .btn buttons used in element
14
15
  button {
15
- color: semantic-tokens.$element-text-primary;
16
+ color: system-tokens.$si-sys-text-primary;
16
17
  }
17
18
 
18
19
  :is(.btn, .btn-close) {
19
20
  --btn-icon-size: #{$btn-icon-font-size};
20
21
  --btn-font-size: #{bootstrap-variables.$btn-font-size};
21
- --btn-font-weight: #{typography.$si-font-weight-semibold};
22
+ --btn-font-weight: #{typography.$si-font-weight-sbold};
22
23
  --btn-line-height: #{bootstrap-variables.$btn-line-height};
23
24
  --btn-padding-y: #{bootstrap-variables.$btn-padding-y};
24
25
  line-height: var(--btn-line-height);
@@ -64,7 +65,7 @@ button {
64
65
  .icon {
65
66
  font-size: var(--btn-icon-size);
66
67
  margin-block: calc((var(--btn-icon-size) - var(--btn-font-size)) / -2);
67
- margin-inline-end: #{map.get(spacers.$spacers, 2)};
68
+ margin-inline-end: #{map.get(spacers.$spacers-inline, 2)};
68
69
  }
69
70
  }
70
71
 
@@ -73,55 +74,55 @@ button {
73
74
  }
74
75
 
75
76
  .btn-primary {
76
- --btn-bg: #{semantic-tokens.$element-action-primary};
77
- --btn-bg-hover: #{semantic-tokens.$element-action-primary-hover};
78
- --btn-bg-active: #{semantic-tokens.$element-action-primary-active};
79
- --btn-color: #{semantic-tokens.$element-action-primary-text};
80
- --btn-color-hover: #{semantic-tokens.$element-action-primary-text};
81
- --btn-color-active: #{semantic-tokens.$element-action-primary-text};
77
+ --btn-bg: #{system-tokens.$si-sys-background-accent};
78
+ --btn-bg-hover: #{system-tokens.$si-sys-background-accent-hover};
79
+ --btn-bg-active: #{system-tokens.$si-sys-background-accent-active};
80
+ --btn-color: #{system-tokens.$si-sys-text-on-accent};
81
+ --btn-color-hover: #{system-tokens.$si-sys-text-on-accent};
82
+ --btn-color-active: #{system-tokens.$si-sys-text-on-accent};
82
83
  }
83
84
 
84
85
  .btn-danger {
85
- --btn-bg: #{semantic-tokens.$element-action-danger};
86
- --btn-bg-hover: #{semantic-tokens.$element-action-danger-hover};
87
- --btn-bg-active: #{semantic-tokens.$element-action-danger-active};
88
- --btn-color: #{semantic-tokens.$element-action-danger-text};
89
- --btn-color-hover: #{semantic-tokens.$element-action-danger-text};
90
- --btn-color-active: #{semantic-tokens.$element-action-danger-text};
86
+ --btn-bg: #{system-tokens.$si-sys-background-danger};
87
+ --btn-bg-hover: #{system-tokens.$si-sys-background-danger-hover};
88
+ --btn-bg-active: #{system-tokens.$si-sys-background-danger-active};
89
+ --btn-color: #{system-tokens.$si-sys-text-on-danger};
90
+ --btn-color-hover: #{system-tokens.$si-sys-text-on-danger};
91
+ --btn-color-active: #{system-tokens.$si-sys-text-on-danger};
91
92
  }
92
93
 
93
94
  .btn-warning {
94
- --btn-bg: #{semantic-tokens.$element-action-warning};
95
- --btn-bg-hover: #{semantic-tokens.$element-action-warning-hover};
96
- --btn-bg-active: #{semantic-tokens.$element-action-warning-active};
97
- --btn-color: #{semantic-tokens.$element-action-warning-text};
98
- --btn-color-hover: #{semantic-tokens.$element-action-warning-text};
99
- --btn-color-active: #{semantic-tokens.$element-action-warning-text};
95
+ --btn-bg: #{system-tokens.$si-sys-background-warning};
96
+ --btn-bg-hover: #{system-tokens.$si-sys-background-warning-hover};
97
+ --btn-bg-active: #{system-tokens.$si-sys-background-warning-active};
98
+ --btn-color: #{system-tokens.$si-sys-text-on-warning};
99
+ --btn-color-hover: #{system-tokens.$si-sys-text-on-warning};
100
+ --btn-color-active: #{system-tokens.$si-sys-text-on-warning};
100
101
  }
101
102
 
102
103
  .btn-ghost {
103
- --btn-bg: #{semantic-tokens.$element-base-1};
104
- --btn-bg-hover: #{semantic-tokens.$element-base-1-hover};
105
- --btn-bg-active: #{semantic-tokens.$element-base-1-selected};
106
- --btn-color: #{semantic-tokens.$element-text-primary};
107
- --btn-color-hover: #{semantic-tokens.$element-text-primary};
108
- --btn-color-active: #{semantic-tokens.$element-text-primary};
104
+ --btn-bg: #{system-tokens.$si-sys-background-1};
105
+ --btn-bg-hover: #{system-tokens.$si-sys-background-hover};
106
+ --btn-bg-active: #{system-tokens.$si-sys-background-active};
107
+ --btn-color: #{system-tokens.$si-sys-text-primary};
108
+ --btn-color-hover: #{system-tokens.$si-sys-text-primary};
109
+ --btn-color-active: #{system-tokens.$si-sys-text-primary};
109
110
  }
110
111
 
111
112
  .btn-secondary,
112
113
  .btn-secondary-warning,
113
114
  .btn-secondary-danger,
114
115
  .btn-secondary-ghost {
115
- --btn-bg: #{semantic-tokens.$element-action-secondary};
116
- --btn-bg-hover: #{semantic-tokens.$element-action-secondary-hover};
117
- --btn-bg-active: #{semantic-tokens.$element-action-secondary-active};
118
- --btn-color: #{semantic-tokens.$element-action-secondary-text};
119
- --btn-color-hover: #{semantic-tokens.$element-action-secondary-text-hover};
120
- --btn-color-active: #{semantic-tokens.$element-action-primary-active};
116
+ --btn-bg: #{system-tokens.$si-sys-background-accent-secondary};
117
+ --btn-bg-hover: #{system-tokens.$si-sys-background-accent-secondary-hover};
118
+ --btn-bg-active: #{system-tokens.$si-sys-background-accent-secondary-active};
119
+ --btn-color: #{system-tokens.$si-sys-text-on-accent-secondary};
120
+ --btn-color-hover: #{system-tokens.$si-sys-text-on-accent-secondary-hover};
121
+ --btn-color-active: #{system-tokens.$si-sys-text-on-accent-secondary-active};
121
122
  --btn-border-width: 1px;
122
- --btn-border-color: #{semantic-tokens.$element-action-secondary-border};
123
- --btn-border-color-hover: #{semantic-tokens.$element-action-secondary-border-hover};
124
- --btn-border-color-active: #{semantic-tokens.$element-action-secondary-border-active};
123
+ --btn-border-color: #{system-tokens.$si-sys-border-accent};
124
+ --btn-border-color-hover: #{system-tokens.$si-sys-border-accent-hover};
125
+ --btn-border-color-active: #{system-tokens.$si-sys-border-accent-active};
125
126
  }
126
127
 
127
128
  .btn-tertiary,
@@ -129,45 +130,45 @@ button {
129
130
  .btn-tertiary-danger,
130
131
  .btn-tertiary-ghost {
131
132
  --btn-bg: transparent;
132
- --btn-bg-hover: #{semantic-tokens.$element-action-secondary-hover};
133
- --btn-bg-active: #{semantic-tokens.$element-action-secondary-active};
134
- --btn-color: #{semantic-tokens.$element-action-secondary-text};
135
- --btn-color-hover: #{semantic-tokens.$element-action-secondary-text-hover};
136
- --btn-color-active: #{semantic-tokens.$element-action-primary-active};
133
+ --btn-bg-hover: #{system-tokens.$si-sys-background-accent-secondary-hover};
134
+ --btn-bg-active: #{system-tokens.$si-sys-background-accent-secondary-active};
135
+ --btn-color: #{system-tokens.$si-sys-text-on-accent-secondary};
136
+ --btn-color-hover: #{system-tokens.$si-sys-text-on-accent-secondary-hover};
137
+ --btn-color-active: #{system-tokens.$si-sys-text-on-accent-secondary-active};
137
138
  }
138
139
 
139
140
  .btn-secondary-warning,
140
141
  .btn-tertiary-warning {
141
- --btn-bg-hover: #{semantic-tokens.$element-action-warning-hover};
142
- --btn-bg-active: #{semantic-tokens.$element-action-warning-active};
143
- --btn-color: #{semantic-tokens.$element-action-secondary-warning};
144
- --btn-color-hover: #{semantic-tokens.$element-action-warning-text};
145
- --btn-color-active: #{semantic-tokens.$element-action-warning-text};
146
- --btn-border-color: #{semantic-tokens.$element-action-secondary-warning};
147
- --btn-border-color-hover: #{semantic-tokens.$element-action-warning-hover};
148
- --btn-border-color-active: #{semantic-tokens.$element-action-warning-active};
142
+ --btn-bg-hover: #{system-tokens.$si-sys-background-warning-hover};
143
+ --btn-bg-active: #{system-tokens.$si-sys-background-warning-active};
144
+ --btn-color: #{system-tokens.$si-sys-text-on-warning-secondary};
145
+ --btn-color-hover: #{system-tokens.$si-sys-text-on-warning};
146
+ --btn-color-active: #{system-tokens.$si-sys-text-on-warning};
147
+ --btn-border-color: #{system-tokens.$si-sys-border-warning-secondary};
148
+ --btn-border-color-hover: transparent;
149
+ --btn-border-color-active: transparent;
149
150
  }
150
151
 
151
152
  .btn-secondary-danger,
152
153
  .btn-tertiary-danger {
153
- --btn-bg-hover: #{semantic-tokens.$element-action-danger-hover};
154
- --btn-bg-active: #{semantic-tokens.$element-action-danger-active};
155
- --btn-color: #{semantic-tokens.$element-action-secondary-danger};
156
- --btn-color-hover: #{semantic-tokens.$element-action-danger-text};
157
- --btn-color-active: #{semantic-tokens.$element-action-danger-text};
158
- --btn-border-color: #{semantic-tokens.$element-action-secondary-danger};
159
- --btn-border-color-hover: #{semantic-tokens.$element-action-danger-hover};
160
- --btn-border-color-active: #{semantic-tokens.$element-action-danger-active};
154
+ --btn-bg-hover: #{system-tokens.$si-sys-background-danger-hover};
155
+ --btn-bg-active: #{system-tokens.$si-sys-background-danger-active};
156
+ --btn-color: #{system-tokens.$si-sys-text-on-danger-secondary};
157
+ --btn-color-hover: #{system-tokens.$si-sys-text-on-danger};
158
+ --btn-color-active: #{system-tokens.$si-sys-text-on-danger};
159
+ --btn-border-color: #{system-tokens.$si-sys-border-danger-secondary};
160
+ --btn-border-color-hover: transparent;
161
+ --btn-border-color-active: transparent;
161
162
  }
162
163
 
163
164
  .btn-secondary-ghost,
164
165
  .btn-tertiary-ghost {
165
- --btn-bg-hover: #{semantic-tokens.$element-base-1-hover};
166
- --btn-bg-active: #{semantic-tokens.$element-base-1-selected};
167
- --btn-color: #{semantic-tokens.$element-text-primary};
168
- --btn-color-hover: #{semantic-tokens.$element-text-primary};
169
- --btn-color-active: #{semantic-tokens.$element-text-primary};
170
- --btn-border-color: #{semantic-tokens.$element-ui-3};
166
+ --btn-bg-hover: #{system-tokens.$si-sys-background-hover};
167
+ --btn-bg-active: #{system-tokens.$si-sys-background-active};
168
+ --btn-color: #{system-tokens.$si-sys-text-primary};
169
+ --btn-color-hover: #{system-tokens.$si-sys-text-primary};
170
+ --btn-color-active: #{system-tokens.$si-sys-text-primary};
171
+ --btn-border-color: #{system-tokens.$si-sys-border-3};
171
172
  --btn-border-color-hover: transparent;
172
173
  --btn-border-color-active: transparent;
173
174
  }
@@ -175,7 +176,7 @@ button {
175
176
  .btn-link {
176
177
  --btn-color: #{bootstrap-variables.$btn-link-color};
177
178
  --btn-color-hover: #{bootstrap-variables.$btn-link-hover-color};
178
- --btn-color-active: #{semantic-tokens.$element-action-primary-active};
179
+ --btn-color-active: #{system-tokens.$si-sys-text-accent-active};
179
180
  --btn-font-weight: #{typography.$si-font-weight-body};
180
181
  justify-content: flex-start;
181
182
  text-decoration: bootstrap-variables.$link-decoration;
@@ -226,17 +227,17 @@ button {
226
227
  .btn-close {
227
228
  --btn-font-weight: #{typography.$si-font-weight-normal};
228
229
  --btn-bg: transparent;
229
- --btn-bg-hover: #{semantic-tokens.$element-base-1-hover};
230
- --btn-bg-active: #{semantic-tokens.$element-base-1-selected};
231
- --btn-color: #{semantic-tokens.$element-ui-1};
232
- --btn-color-active: #{semantic-tokens.$element-ui-1};
230
+ --btn-bg-hover: #{system-tokens.$si-sys-background-hover};
231
+ --btn-bg-active: #{system-tokens.$si-sys-background-active};
232
+ --btn-color: #{system-tokens.$si-sys-text-primary};
233
+ --btn-color-active: #{system-tokens.$si-sys-text-primary};
233
234
 
234
235
  &.btn-tertiary {
235
- --btn-bg-hover: #{semantic-tokens.$element-action-secondary-hover};
236
- --btn-bg-active: #{semantic-tokens.$element-action-secondary-active};
237
- --btn-color: #{semantic-tokens.$element-action-secondary-text};
238
- --btn-color-hover: #{semantic-tokens.$element-action-secondary-text-hover};
239
- --btn-color-active: #{semantic-tokens.$element-action-primary-active};
236
+ --btn-bg-hover: #{system-tokens.$si-sys-background-accent-secondary-hover};
237
+ --btn-bg-active: #{system-tokens.$si-sys-background-accent-secondary-active};
238
+ --btn-color: #{system-tokens.$si-sys-text-on-accent-secondary};
239
+ --btn-color-hover: #{system-tokens.$si-sys-text-on-accent-secondary-hover};
240
+ --btn-color-active: #{system-tokens.$si-sys-text-on-accent-secondary-active};
240
241
  }
241
242
 
242
243
  &::before {
@@ -257,29 +258,28 @@ button {
257
258
  --btn-color: #{bootstrap-variables.$input-color};
258
259
  --btn-color-hover: #{bootstrap-variables.$input-color};
259
260
  --btn-color-active: #{bootstrap-variables.$input-color};
260
- --btn-border-width: 1px;
261
- --btn-border-color: #{semantic-tokens.$element-ui-2};
262
- --btn-border-color-hover: #{semantic-tokens.$element-ui-1};
263
- --btn-border-color-active: #{semantic-tokens.$element-ui-1};
261
+ --btn-border-width: #{bootstrap-variables.$input-border-width};
262
+ --btn-border-color: #{bootstrap-variables.$input-border-color};
263
+ --btn-border-color-hover: #{bootstrap-variables.$input-focus-border-color};
264
+ --btn-border-color-active: #{bootstrap-variables.$input-focus-border-color};
264
265
 
265
266
  @include typography.si-font(
266
- typography.$si-font-size-body,
267
- typography.$si-line-height-body,
268
- typography.$si-font-weight-body
267
+ bootstrap-variables.$input-font-size,
268
+ bootstrap-variables.$input-line-height,
269
+ bootstrap-variables.$input-font-weight
269
270
  );
270
271
  padding-block: bootstrap-variables.$input-padding-y;
271
- padding-inline: bootstrap-variables.$btn-padding-x - bootstrap-variables.$input-border-width;
272
-
272
+ padding-inline: bootstrap-variables.$input-padding-x;
273
273
  border-radius: bootstrap-variables.$input-border-radius;
274
274
  justify-content: flex-start;
275
275
 
276
276
  &:is(:disabled, .disabled) {
277
- --btn-border-color: #{semantic-tokens.$element-ui-3};
278
- --btn-color: #{semantic-tokens.$element-text-disabled};
277
+ --btn-border-color: #{bootstrap-variables.$input-disabled-border-color};
278
+ --btn-color: #{bootstrap-variables.$input-disabled-color};
279
279
  opacity: unset;
280
280
  }
281
281
 
282
282
  &:focus {
283
- --btn-border-color: #{semantic-tokens.$element-ui-1};
283
+ --btn-border-color: #{bootstrap-variables.$input-focus-border-color};
284
284
  }
285
285
  }
@@ -1,5 +1,5 @@
1
1
  @use '../variables/focus';
2
- @use '../variables/semantic-tokens';
2
+ @use '../variables/system-tokens';
3
3
  @use '../variables/spacers';
4
4
  @use '../variables/typography';
5
5
  @use 'mixins/breakpoints';
@@ -43,56 +43,62 @@
43
43
  }
44
44
 
45
45
  &.accent-primary {
46
- border-inline-start: map.get(spacers.$spacers, 4) solid semantic-tokens.$element-ui-0;
46
+ border-inline-start: map.get(spacers.$spacers-inline, 4) solid
47
+ system-tokens.$si-sys-border-accent;
47
48
  }
48
49
 
49
50
  &.accent-inactive {
50
- border-inline-start: map.get(spacers.$spacers, 4) solid semantic-tokens.$element-ui-4;
51
+ border-inline-start: map.get(spacers.$spacers-inline, 4) solid system-tokens.$si-sys-border-4;
51
52
  }
52
53
 
53
54
  &.accent-info {
54
- border-inline-start: map.get(spacers.$spacers, 4) solid
55
- semantic-tokens.$element-status-information;
55
+ border-inline-start: map.get(spacers.$spacers-inline, 4) solid
56
+ system-tokens.$si-sys-border-information;
56
57
  }
57
58
 
58
59
  &.accent-success {
59
- border-inline-start: map.get(spacers.$spacers, 4) solid semantic-tokens.$element-status-success;
60
+ border-inline-start: map.get(spacers.$spacers-inline, 4) solid
61
+ system-tokens.$si-sys-border-success;
60
62
  }
61
63
 
62
64
  &.accent-warning {
63
- border-inline-start: map.get(spacers.$spacers, 4) solid semantic-tokens.$element-status-warning;
65
+ border-inline-start: map.get(spacers.$spacers-inline, 4) solid
66
+ system-tokens.$si-sys-border-warning;
64
67
  }
65
68
 
66
69
  &.accent-caution {
67
- border-inline-start: map.get(spacers.$spacers, 4) solid semantic-tokens.$element-status-caution;
70
+ border-inline-start: map.get(spacers.$spacers-inline, 4) solid
71
+ system-tokens.$si-sys-border-caution;
68
72
  }
69
73
 
70
74
  &.accent-danger {
71
- border-inline-start: map.get(spacers.$spacers, 4) solid semantic-tokens.$element-status-danger;
75
+ border-inline-start: map.get(spacers.$spacers-inline, 4) solid
76
+ system-tokens.$si-sys-border-danger;
72
77
  }
73
78
 
74
79
  &.accent-critical {
75
- border-inline-start: map.get(spacers.$spacers, 4) solid semantic-tokens.$element-status-critical;
80
+ border-inline-start: map.get(spacers.$spacers-inline, 4) solid
81
+ system-tokens.$si-sys-border-critical;
76
82
  }
77
83
 
78
84
  &.action-card:not(:disabled) {
79
85
  &:hover {
80
86
  &,
81
87
  .card-footer {
82
- background-color: semantic-tokens.$element-base-1-hover;
88
+ background-color: system-tokens.$si-sys-background-hover;
83
89
  }
84
90
  }
85
91
 
86
92
  &:active {
87
93
  &,
88
94
  .card-footer {
89
- background-color: semantic-tokens.$element-base-1-selected;
95
+ background-color: system-tokens.$si-sys-background-active;
90
96
  }
91
97
  }
92
98
  }
93
99
 
94
100
  &.selected {
95
- box-shadow: 0 0 0 1px semantic-tokens.$element-ui-0;
101
+ box-shadow: 0 0 0 1px system-tokens.$si-sys-border-accent-active;
96
102
  }
97
103
 
98
104
  &:focus-visible {
@@ -101,7 +107,7 @@
101
107
 
102
108
  &.card-outline {
103
109
  background-color: transparent;
104
- box-shadow: inset 0 0 0 1px semantic-tokens.$element-ui-4;
110
+ box-shadow: inset 0 0 0 1px system-tokens.$si-sys-border-4;
105
111
  }
106
112
  }
107
113
 
@@ -134,8 +140,8 @@ button.card {
134
140
 
135
141
  + * .card-body, // for action cards, where we wrap the content
136
142
  + .card-body {
137
- margin-block-start: map.get(spacers.$spacers, 2) * -1;
138
- padding-block-start: map.get(spacers.$spacers, 2);
143
+ margin-block-start: map.get(spacers.$negative-spacers-block, 2);
144
+ padding-block-start: map.get(spacers.$spacers-block, 2);
139
145
  }
140
146
 
141
147
  + .list-group {
@@ -168,7 +174,7 @@ button.card {
168
174
  }
169
175
 
170
176
  .card-subtitle {
171
- margin-block: (-(variables.$card-title-spacer-y) * 0.5) 0;
177
+ margin-block: calc(variables.$card-title-spacer-y * -0.5) 0;
172
178
  }
173
179
 
174
180
  .card-text:last-child {
@@ -1,5 +1,5 @@
1
1
  @use '../variables';
2
- @use '../variables/semantic-tokens';
2
+ @use '../variables/system-tokens';
3
3
  @use '../variables/spacers';
4
4
  @use '../variables/typography';
5
5
  @use '../variables/zindex';
@@ -19,7 +19,7 @@
19
19
  z-index: zindex.$zindex-dropdown;
20
20
  display: none; // none by default, but block on "open" of the menu
21
21
  min-inline-size: bootstrap-variables.$dropdown-min-width;
22
- max-block-size: calc(100vb - #{map.get(spacers.$spacers, 1) * 2});
22
+ max-block-size: calc(100vb - map.get(spacers.$spacers-block, 1) * 2);
23
23
  overflow-y: auto;
24
24
  padding-block: bootstrap-variables.$dropdown-padding-y;
25
25
  padding-inline: bootstrap-variables.$dropdown-padding-x;
@@ -29,7 +29,7 @@
29
29
  background-clip: padding-box;
30
30
  border-radius: bootstrap-variables.$dropdown-border-radius;
31
31
  box-shadow: bootstrap-variables.$dropdown-box-shadow;
32
- margin-block: map.get(spacers.$spacers, 1);
32
+ margin-block: map.get(spacers.$spacers-block, 1);
33
33
  margin-inline: 0;
34
34
  text-align: start;
35
35
 
@@ -45,8 +45,8 @@
45
45
  100vb,
46
46
  calc(
47
47
  (
48
- bootstrap-variables.$dropdown-line-height + #{2 *
49
- bootstrap-variables.$dropdown-item-padding-y}
48
+ bootstrap-variables.$dropdown-line-height + 2 *
49
+ bootstrap-variables.$dropdown-item-padding-y
50
50
  ) *
51
51
  8.3125
52
52
  )
@@ -55,7 +55,7 @@
55
55
 
56
56
  :is(.dropdown-menu, .dropdown-item) {
57
57
  .icon + .item-title {
58
- padding-inline-start: map.get(spacers.$spacers, 4);
58
+ padding-inline-start: map.get(spacers.$spacers-inline, 4);
59
59
  }
60
60
  }
61
61
 
@@ -64,13 +64,13 @@
64
64
  text-align: start;
65
65
 
66
66
  .dropdown-caret {
67
- padding-inline-start: map.get(spacers.$spacers, 2);
68
- margin-block: -#{map.get(spacers.$spacers, 2)};
69
- margin-inline: auto -#{map.get(spacers.$spacers, 2)};
67
+ padding-inline-start: map.get(spacers.$spacers-inline, 2);
68
+ margin-block: map.get(spacers.$negative-spacers-block, 2);
69
+ margin-inline: auto map.get(spacers.$negative-spacers-inline, 2);
70
70
  font-size: variables.$si-icon-font-size !important; // stylelint-disable-line declaration-no-important
71
71
  transform: rotate(var(--caret-rotate));
72
72
  // adjust the origin to account for the negative margin. Otherwise the element would visually not rotate around the center.
73
- transform-origin: calc(50% + #{map.get(spacers.$spacers, 1)}) 50%;
73
+ transform-origin: calc(50% + map.get(spacers.$spacers-inline, 1)) 50%;
74
74
  transition: transform variables.$si-caret-transition-duration;
75
75
  }
76
76
 
@@ -126,15 +126,15 @@
126
126
 
127
127
  // duplicating hover styles from bootstrap. To split them from focus styles. Otherwise hover on focus elements will not work.
128
128
  &:hover {
129
- color: semantic-tokens.$element-text-primary;
130
- background-color: semantic-tokens.$element-base-1-hover;
129
+ color: system-tokens.$si-sys-text-primary;
130
+ background-color: system-tokens.$si-sys-background-hover;
131
131
  text-decoration: none;
132
132
  }
133
133
 
134
134
  // duplicating hover styles from bootstrap. To split them from focus styles. Otherwise hover on focus elements will not work.
135
135
  &:is(:active, .active) {
136
- color: var(--element-text-primary);
137
- background-color: var(--element-base-1-selected);
136
+ color: var(--si-sys-text-primary);
137
+ background-color: var(--si-sys-background-active);
138
138
  }
139
139
 
140
140
  &:is(.disabled, :disabled) {
@@ -145,11 +145,11 @@
145
145
  }
146
146
 
147
147
  .menu-end-icon {
148
- margin-inline-end: -1 * map.get(spacers.$spacers, 3);
148
+ margin-inline-end: map.get(spacers.$negative-spacers-inline, 3);
149
149
 
150
150
  &.element-record-filled {
151
151
  font-size: 1rem;
152
- margin-inline-end: -1 * map.get(spacers.$spacers, 1);
152
+ margin-inline-end: map.get(spacers.$negative-spacers-inline, 1);
153
153
  }
154
154
  }
155
155
  }
@@ -162,7 +162,7 @@
162
162
  // FIXME: drop when dropping si-menu-legacy
163
163
  .dropdown-item-static {
164
164
  &:is(.active, :active, :hover, :hover:focus:not(:focus-visible), :focus) {
165
- background-color: semantic-tokens.$element-base-1;
165
+ background-color: system-tokens.$si-sys-background-1;
166
166
  }
167
167
  }
168
168
 
@@ -181,7 +181,7 @@
181
181
  .dropdown-divider {
182
182
  block-size: 0;
183
183
  margin-block: bootstrap-variables.$dropdown-divider-margin-y;
184
- margin-inline: map.get(spacers.$spacers, 5);
184
+ margin-inline: map.get(spacers.$spacers-inline, 5);
185
185
  overflow: hidden;
186
186
  border-block-start: 1px solid bootstrap-variables.$dropdown-divider-bg;
187
187
  }
@@ -1,6 +1,7 @@
1
1
  @use './forms/form-check';
2
2
  @use './forms/form-control';
3
3
  @use './forms/form-file';
4
+ @use './forms/form-layout';
4
5
  @use './forms/form-label';
5
6
  @use './forms/form-range';
6
7
  // not part of the design system
@@ -1,4 +1,6 @@
1
+ @use 'sass:map';
1
2
  @use '../variables/spacers';
3
+ @use '../variables/system-tokens';
2
4
  @use './mixins/image';
3
5
  @use './variables';
4
6
 
@@ -19,7 +21,7 @@
19
21
  background-color: variables.$thumbnail-bg;
20
22
  border: variables.$thumbnail-border-width solid variables.$thumbnail-border-color;
21
23
  border-radius: variables.$thumbnail-border-radius;
22
- box-shadow: variables.$thumbnail-box-shadow;
24
+ box-shadow: system-tokens.$si-sys-effects-shadow-1;
23
25
 
24
26
  // Keep them at most 100% wide
25
27
  @include image.img-fluid();
@@ -35,7 +37,7 @@
35
37
  }
36
38
 
37
39
  .figure-img {
38
- margin-block-end: spacers.$spacer * 0.5;
40
+ margin-block-end: map.get(spacers.$spacers-block, 4);
39
41
  line-height: 1;
40
42
  }
41
43