@navikt/ds-css 6.6.1 → 6.7.1

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.
@@ -70,8 +70,8 @@
70
70
  height: calc(1.25rem - 0.25rem);
71
71
  }
72
72
 
73
- .navds-checkbox__input:focus-visible + .navds-checkbox__label::before,
74
- .navds-radio__input:focus-visible + .navds-radio__label::before {
73
+ .navds-checkbox__input:focus + .navds-checkbox__label::before,
74
+ .navds-radio__input:focus + .navds-radio__label::before {
75
75
  outline: 2px solid transparent;
76
76
  outline-offset: 2px;
77
77
  box-shadow:
@@ -80,33 +80,13 @@
80
80
  0 0 0 4px var(--a-border-focus);
81
81
  }
82
82
 
83
- @supports not selector(:focus-visible) {
84
- .navds-checkbox__input:focus + .navds-checkbox__label::before,
85
- .navds-radio__input:focus + .navds-radio__label::before {
86
- outline: 2px solid transparent;
87
- outline-offset: 2px;
88
- box-shadow:
89
- 0 0 0 2px var(--ac-radio-checkbox-border, var(--a-border-default)),
90
- 0 0 0 4px var(--a-border-focus);
91
- }
92
- }
93
-
94
- .navds-checkbox__input:hover:focus-visible + .navds-checkbox__label::before,
95
- .navds-radio__input:hover:focus-visible + .navds-radio__label::before {
83
+ .navds-checkbox__input:hover:focus + .navds-checkbox__label::before,
84
+ .navds-radio__input:hover:focus + .navds-radio__label::before {
96
85
  box-shadow:
97
86
  0 0 0 2px var(--ac-radio-checkbox-action, var(--a-surface-action-hover)),
98
87
  0 0 0 4px var(--a-border-focus);
99
88
  }
100
89
 
101
- @supports not selector(:focus-visible) {
102
- .navds-checkbox__input:hover:focus + .navds-checkbox__label::before,
103
- .navds-radio__input:hover:focus + .navds-radio__label::before {
104
- box-shadow:
105
- 0 0 0 2px var(--ac-radio-checkbox-action, var(--a-surface-action-hover)),
106
- 0 0 0 4px var(--a-border-focus);
107
- }
108
- }
109
-
110
90
  .navds-checkbox__input:indeterminate + .navds-checkbox__label::after {
111
91
  content: "";
112
92
  position: absolute;
@@ -163,24 +143,14 @@
163
143
  background-position: 0.25rem center;
164
144
  }
165
145
 
166
- .navds-checkbox__input:indeterminate:focus-visible + .navds-checkbox__label::before,
167
- .navds-checkbox__input:checked:focus-visible + .navds-checkbox__label::before {
146
+ .navds-checkbox__input:indeterminate:focus + .navds-checkbox__label::before,
147
+ .navds-checkbox__input:checked:focus + .navds-checkbox__label::before {
168
148
  box-shadow:
169
149
  0 0 0 1px var(--ac-radio-checkbox-action, var(--a-surface-action-selected)),
170
150
  0 0 0 2px var(--ac-radio-checkbox-bg, var(--a-surface-default)),
171
151
  0 0 0 4px var(--a-border-focus);
172
152
  }
173
153
 
174
- @supports not selector(:focus-visible) {
175
- .navds-checkbox__input:indeterminate:focus + .navds-checkbox__label::before,
176
- .navds-checkbox__input:checked:focus + .navds-checkbox__label::before {
177
- box-shadow:
178
- 0 0 0 1px var(--ac-radio-checkbox-action, var(--a-surface-action-selected)),
179
- 0 0 0 2px var(--ac-radio-checkbox-bg, var(--a-surface-default)),
180
- 0 0 0 4px var(--a-border-focus);
181
- }
182
- }
183
-
184
154
  .navds-radio__input:checked + .navds-radio__label::before {
185
155
  box-shadow:
186
156
  0 0 0 2px var(--ac-radio-checkbox-action, var(--a-surface-action-selected)),
@@ -188,40 +158,23 @@
188
158
  background-color: var(--ac-radio-checkbox-action, var(--a-surface-action-selected));
189
159
  }
190
160
 
191
- .navds-radio__input:checked:focus-visible + .navds-radio__label::before {
161
+ .navds-radio__input:checked:focus + .navds-radio__label::before {
192
162
  box-shadow:
193
163
  0 0 0 2px var(--ac-radio-checkbox-action, var(--a-surface-action-selected)),
194
164
  inset 0 0 0 2px var(--ac-radio-checkbox-bg, var(--a-surface-default)),
195
165
  0 0 0 4px var(--a-border-focus);
196
166
  }
197
167
 
198
- @supports not selector(:focus-visible) {
199
- .navds-radio__input:checked:focus + .navds-radio__label::before {
200
- box-shadow:
201
- 0 0 0 2px var(--ac-radio-checkbox-action, var(--a-surface-action)),
202
- inset 0 0 0 2px var(--ac-radio-checkbox-bg, var(--a-surface-default)),
203
- 0 0 0 4px var(--a-border-focus);
204
- }
205
- }
206
-
207
168
  .navds-checkbox__input:hover:not(:disabled) + .navds-checkbox__label,
208
169
  .navds-radio__input:hover:not(:disabled) + .navds-radio__label {
209
170
  color: var(--ac-radio-checkbox-action, var(--a-surface-action-hover));
210
171
  }
211
172
 
212
- .navds-checkbox__input:hover:not(:disabled):not(:checked):not(:indeterminate):not(:focus-visible)
213
- + .navds-checkbox__label::before,
214
- .navds-radio__input:hover:not(:disabled):not(:checked):not(:focus-visible) + .navds-radio__label::before {
173
+ .navds-checkbox__input:hover:not(:disabled):not(:checked):not(:indeterminate):not(:focus) + .navds-checkbox__label::before,
174
+ .navds-radio__input:hover:not(:disabled):not(:checked):not(:focus) + .navds-radio__label::before {
215
175
  box-shadow: 0 0 0 2px var(--ac-radio-checkbox-action, var(--a-surface-action-hover));
216
176
  }
217
177
 
218
- @supports not selector(:focus-visible) {
219
- .navds-checkbox__input:hover:not(:disabled):not(:checked):not(:indeterminate):not(:focus) + .navds-checkbox__label::before,
220
- .navds-radio__input:hover:not(:disabled):not(:checked):not(:focus) + .navds-radio__label::before {
221
- box-shadow: 0 0 0 2px var(--ac-radio-checkbox-action, var(--a-surface-action-hover));
222
- }
223
- }
224
-
225
178
  .navds-checkbox__input:hover:not(:disabled):not(:checked):not(:indeterminate) + .navds-checkbox__label::before,
226
179
  .navds-radio__input:hover:not(:disabled):not(:checked) + .navds-radio__label::before {
227
180
  background-color: var(--ac-radio-checkbox-action-hover-bg, var(--a-surface-action-subtle));
@@ -235,63 +188,32 @@
235
188
  }
236
189
 
237
190
  .navds-checkbox--error
238
- > .navds-checkbox__input:focus-visible:not(:hover):not(:disabled):not(:checked):not(:indeterminate)
191
+ > .navds-checkbox__input:focus:not(:hover):not(:disabled):not(:checked):not(:indeterminate)
239
192
  + .navds-checkbox__label::before,
240
- .navds-radio--error > .navds-radio__input:focus-visible:not(:hover):not(:disabled):not(:checked) + .navds-radio__label::before {
193
+ .navds-radio--error > .navds-radio__input:focus:not(:hover):not(:disabled):not(:checked) + .navds-radio__label::before {
241
194
  box-shadow:
242
195
  0 0 0 2px var(--ac-radio-checkbox-error-border, var(--a-border-danger)),
243
196
  0 0 0 4px var(--a-border-focus);
244
197
  }
245
198
 
246
- @supports not selector(:focus-visible) {
247
- .navds-checkbox--error
248
- > .navds-checkbox__input:focus:not(:hover):not(:disabled):not(:checked):not(:indeterminate)
249
- + .navds-checkbox__label::before,
250
- .navds-radio--error > .navds-radio__input:focus:not(:hover):not(:disabled):not(:checked) + .navds-radio__label::before {
251
- box-shadow:
252
- 0 0 0 2px var(--ac-radio-checkbox-error-border, var(--a-border-danger)),
253
- 0 0 0 4px var(--a-border-focus);
254
- }
255
- }
256
-
257
199
  .navds-checkbox--error
258
- > .navds-checkbox__input:hover:not(:disabled):not(:checked):not(:indeterminate):not(:focus-visible)
200
+ > .navds-checkbox__input:hover:not(:disabled):not(:checked):not(:indeterminate):not(:focus)
259
201
  + .navds-checkbox__label::before,
260
- .navds-radio--error > .navds-radio__input:hover:not(:disabled):not(:checked):not(:focus-visible) + .navds-radio__label::before {
202
+ .navds-radio--error > .navds-radio__input:hover:not(:disabled):not(:checked):not(:focus) + .navds-radio__label::before {
261
203
  background-color: var(--ac-radio-checkbox-error-hover-bg, var(--a-surface-danger-subtle));
262
204
  box-shadow: 0 0 0 2px var(--ac-radio-checkbox-error-border, var(--a-border-danger));
263
205
  }
264
206
 
265
207
  .navds-checkbox--error
266
- > .navds-checkbox__input:focus-visible:hover:not(:disabled):not(:checked):not(:indeterminate)
208
+ > .navds-checkbox__input:focus:hover:not(:disabled):not(:checked):not(:indeterminate)
267
209
  + .navds-checkbox__label::before,
268
- .navds-radio--error > .navds-radio__input:focus-visible:hover:not(:disabled):not(:checked) + .navds-radio__label::before {
210
+ .navds-radio--error > .navds-radio__input:focus:hover:not(:disabled):not(:checked) + .navds-radio__label::before {
269
211
  background-color: var(--ac-radio-checkbox-error-hover-bg, var(--a-surface-danger-subtle));
270
212
  box-shadow:
271
213
  0 0 0 2px var(--ac-radio-checkbox-error-border, var(--a-border-danger)),
272
214
  0 0 0 4px var(--a-border-focus);
273
215
  }
274
216
 
275
- @supports not selector(:focus-visible) {
276
- .navds-checkbox--error
277
- > .navds-checkbox__input:hover:not(:disabled):not(:checked):not(:indeterminate):not(:focus)
278
- + .navds-checkbox__label::before,
279
- .navds-radio--error > .navds-radio__input:hover:not(:disabled):not(:checked):not(:focus) + .navds-radio__label::before {
280
- background-color: var(--ac-radio-checkbox-error-hover-bg, var(--a-surface-danger-subtle));
281
- box-shadow: 0 0 0 2px var(--ac-radio-checkbox-error-border, var(--a-border-danger));
282
- }
283
-
284
- .navds-checkbox--error
285
- > .navds-checkbox__input:focus:hover:not(:disabled):not(:checked):not(:indeterminate)
286
- + .navds-checkbox__label::before,
287
- .navds-radio--error > .navds-radio__input:focus:hover:not(:disabled):not(:checked) + .navds-radio__label::before {
288
- background-color: var(--ac-radio-checkbox-error-hover-bg, var(--a-surface-danger-subtle));
289
- box-shadow:
290
- 0 0 0 2px var(--ac-radio-checkbox-error-border, var(--a-border-danger)),
291
- 0 0 0 4px var(--a-border-focus);
292
- }
293
- }
294
-
295
217
  .navds-checkbox--disabled,
296
218
  .navds-radio--disabled {
297
219
  opacity: 0.3;
@@ -323,16 +245,16 @@
323
245
  > .navds-checkbox__input:not(:disabled):not(:checked):not(:indeterminate)
324
246
  + .navds-checkbox__label::before,
325
247
  .navds-checkbox--readonly
326
- > .navds-checkbox__input:hover:not(:checked):not(:indeterminate):not(:focus-visible)
248
+ > .navds-checkbox__input:hover:not(:checked):not(:indeterminate):not(:focus)
327
249
  + .navds-checkbox__label::before,
328
250
  .navds-radio--readonly > .navds-radio__input:not(:disabled):not(:checked) + .navds-radio__label::before,
329
- .navds-radio--readonly > .navds-radio__input:hover:not(:checked):not(:focus-visible) + .navds-radio__label::before {
251
+ .navds-radio--readonly > .navds-radio__input:hover:not(:checked):not(:focus) + .navds-radio__label::before {
330
252
  background-color: var(--__ac-radio-checkbox-readonly-bg);
331
253
  box-shadow: 0 0 0 2px var(--__ac-radio-checkbox-readonly-border);
332
254
  }
333
255
 
334
- .navds-checkbox--readonly > .navds-checkbox__input:focus-visible + .navds-checkbox__label::before,
335
- .navds-radio--readonly > .navds-radio__input:focus-visible + .navds-radio__label::before {
256
+ .navds-checkbox--readonly > .navds-checkbox__input:focus + .navds-checkbox__label::before,
257
+ .navds-radio--readonly > .navds-radio__input:focus + .navds-radio__label::before {
336
258
  --__ac-radio-checkbox-readonly-border: var(--a-border-subtle), var(--a-shadow-focus);
337
259
  }
338
260
 
@@ -362,8 +284,8 @@
362
284
  }
363
285
 
364
286
  @media (forced-colors: active) {
365
- .navds-checkbox__input:focus-visible + .navds-checkbox__label::before,
366
- .navds-radio__input:focus-visible + .navds-radio__label::before {
287
+ .navds-checkbox__input:focus + .navds-checkbox__label::before,
288
+ .navds-radio__input:focus + .navds-radio__label::before {
367
289
  outline-color: highlight;
368
290
  }
369
291
 
@@ -395,7 +317,7 @@
395
317
  background-color: var(--__ac-radio-checkbox-high-contrast-text);
396
318
  }
397
319
 
398
- .navds-radio__input:checked:focus-visible + .navds-radio__label::before {
320
+ .navds-radio__input:checked:focus + .navds-radio__label::before {
399
321
  border: 1px solid var(--__ac-radio-checkbox-high-contrast-bg);
400
322
  outline: 2px solid highlight;
401
323
  outline-offset: 2px;
@@ -406,7 +328,7 @@
406
328
  color: highlight;
407
329
  }
408
330
 
409
- .navds-checkbox__input:focus-visible + .navds-checkbox__label::before {
331
+ .navds-checkbox__input:focus + .navds-checkbox__label::before {
410
332
  outline: 2px solid var(--__ac-radio-checkbox-high-contrast-highlight);
411
333
  }
412
334
 
package/index.css CHANGED
@@ -26,6 +26,7 @@
26
26
  @import "panel.css";
27
27
  @import "link-panel.css";
28
28
  @import "read-more.css";
29
+ @import "progress-bar.css";
29
30
  @import "skeleton.css";
30
31
  @import "stepper.css";
31
32
  @import "table.css";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@navikt/ds-css",
3
- "version": "6.6.1",
3
+ "version": "6.7.1",
4
4
  "description": "CSS for NAV Designsystem",
5
5
  "author": "Aksel | NAV designsystem team",
6
6
  "keywords": [
@@ -27,7 +27,7 @@
27
27
  "css:get-version": "node config/get-version.js"
28
28
  },
29
29
  "devDependencies": {
30
- "@navikt/ds-tokens": "^6.6.1",
30
+ "@navikt/ds-tokens": "^6.7.1",
31
31
  "cssnano": "6.0.0",
32
32
  "fast-glob": "3.2.11",
33
33
  "lodash": "4.17.21",
@@ -0,0 +1,108 @@
1
+ .navds-progress-bar {
2
+ background: var(--a-surface-neutral-subtle);
3
+ position: relative;
4
+ border-radius: var(--a-border-radius-full);
5
+ overflow: hidden;
6
+ box-shadow:
7
+ inset 0 1px 3px 0 rgba(0 0 0 / 0.15),
8
+ inset 0 0 1px 0 rgba(0 0 0 / 0.2);
9
+ }
10
+
11
+ .navds-progress-bar--small {
12
+ height: 12px;
13
+ min-width: 12px;
14
+ }
15
+
16
+ .navds-progress-bar--medium {
17
+ height: 16px;
18
+ min-width: 16px;
19
+ }
20
+
21
+ .navds-progress-bar--large {
22
+ height: 24px;
23
+ min-width: 24px;
24
+ }
25
+
26
+ .navds-progress-bar__foreground {
27
+ --__ac-progress-bar-translate: initial;
28
+
29
+ transform: translateX(var(--__ac-progress-bar-translate));
30
+ background: var(--ac-progress-bar-fg, var(--a-surface-alt-3));
31
+ transform-origin: left;
32
+ position: absolute;
33
+ top: 0;
34
+ left: 0;
35
+ bottom: 0;
36
+ width: 100%;
37
+ border-radius: inherit;
38
+ transition: transform 0.2s ease;
39
+ }
40
+
41
+ .navds-progress-bar__foreground--indeterminate {
42
+ --__ac-progress-bar-simulated: initial;
43
+
44
+ animation-name: navds-progress-bar-indeterminate-grow, navds-progress-bar-indeterminate;
45
+ animation-timing-function: ease-in-out, ease-in-out;
46
+ animation-duration: var(--__ac-progress-bar-simulated), 2500ms;
47
+ animation-fill-mode: forwards, none;
48
+ animation-iteration-count: 1, infinite;
49
+ animation-delay: 0s, var(--__ac-progress-bar-simulated);
50
+ }
51
+
52
+ /* navds-progress-bar-indeterminate wave animation */
53
+ @keyframes navds-progress-bar-indeterminate {
54
+ 0% {
55
+ left: -50%;
56
+ width: 50%;
57
+ transform: translateX(0%);
58
+ }
59
+
60
+ 50% {
61
+ animation-direction: reverse;
62
+ left: 100%;
63
+ transform: translateX(0%);
64
+ width: 50%;
65
+ }
66
+
67
+ 100% {
68
+ left: -50%;
69
+ transform: translateX(0%);
70
+ width: 50%;
71
+ }
72
+ }
73
+
74
+ @keyframes navds-progress-bar-indeterminate-grow {
75
+ 0% {
76
+ transform: translateX(-100%);
77
+ }
78
+
79
+ 20% {
80
+ transform: translateX(-80%);
81
+ }
82
+
83
+ 30% {
84
+ transform: translateX(-40%);
85
+ }
86
+
87
+ 50% {
88
+ transform: translateX(-20%);
89
+ }
90
+
91
+ 75% {
92
+ transform: translateX(-10%);
93
+ }
94
+
95
+ 100% {
96
+ transform: translateX(-10%);
97
+ }
98
+ }
99
+
100
+ @media (forced-colors: active) {
101
+ .navds-progress-bar__foreground {
102
+ background: Highlight;
103
+ }
104
+
105
+ .navds-progress-bar {
106
+ outline: 1px solid transparent;
107
+ }
108
+ }
package/read-more.css CHANGED
@@ -79,7 +79,8 @@
79
79
  }
80
80
 
81
81
  .navds-read-more__button:hover > .navds-read-more__expand-icon {
82
- transform: translateY(1px);
82
+ position: relative;
83
+ top: 1px;
83
84
  }
84
85
 
85
86
  .navds-read-more--open > .navds-read-more__button > .navds-read-more__expand-icon {
@@ -87,5 +88,5 @@
87
88
  }
88
89
 
89
90
  .navds-read-more--open > .navds-read-more__button:hover > .navds-read-more__expand-icon {
90
- transform: translateY(-1px) rotate(-180deg);
91
+ top: -1px;
91
92
  }
package/timeline.css CHANGED
@@ -245,7 +245,7 @@
245
245
  .navds-timeline__pin-wrapper::before {
246
246
  content: "";
247
247
  top: var(--navdsc-timeline-pin-size);
248
- height: calc(88% - var(--navdsc-timeline-pin-size));
248
+ height: calc(100% - var(--navdsc-timeline-pin-size) * 2);
249
249
  width: 1px;
250
250
  margin: 0 auto;
251
251
  background: var(--a-surface-inverted);
package/tokens.json CHANGED
@@ -217,6 +217,9 @@
217
217
  "--ac-popover-bg": "--a-surface-default",
218
218
  "--ac-popover-border": "--a-border-default"
219
219
  },
220
+ "progress-bar": {
221
+ "--ac-progress-bar-fg": "--a-surface-alt-3"
222
+ },
220
223
  "readmore": {
221
224
  "--ac-read-more-text": "--a-text-action",
222
225
  "--ac-read-more-hover-bg": "--a-surface-hover",