@utrecht/component-library-css 1.0.0-alpha.208 → 1.0.0-alpha.209
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/dist/bem.css +290 -17
- package/dist/index.css +362 -51
- package/dist/root-theme.css +2 -1
- package/package.json +3 -3
- package/src/bem.scss +2 -0
package/dist/bem.css
CHANGED
|
@@ -342,7 +342,7 @@ ol.utrecht-breadcrumb__list {
|
|
|
342
342
|
* Copyright (c) 2021 Robbert Broersma
|
|
343
343
|
*/
|
|
344
344
|
/* stylelint-disable-next-line block-no-empty */
|
|
345
|
-
.utrecht-button {
|
|
345
|
+
.utrecht-button, .utrecht-button-link {
|
|
346
346
|
background-color: var(--utrecht-button-primary-action-background-color, var(--utrecht-button-background-color));
|
|
347
347
|
border-color: var(--utrecht-button-border-color, transparent);
|
|
348
348
|
border-radius: var(--utrecht-button-border-radius);
|
|
@@ -380,7 +380,7 @@ ol.utrecht-breadcrumb__list {
|
|
|
380
380
|
cursor: var(--utrecht-action-busy-cursor);
|
|
381
381
|
}
|
|
382
382
|
|
|
383
|
-
.utrecht-button:disabled,
|
|
383
|
+
.utrecht-button:disabled, .utrecht-button-link:disabled,
|
|
384
384
|
.utrecht-button--disabled {
|
|
385
385
|
background-color: var(--utrecht-button-disabled-background-color, var(--utrecht-button-background-color));
|
|
386
386
|
border-color: var(--utrecht-button-disabled-border-color, var(--utrecht-button-border-color));
|
|
@@ -388,14 +388,14 @@ ol.utrecht-breadcrumb__list {
|
|
|
388
388
|
cursor: var(--utrecht-action-disabled-cursor);
|
|
389
389
|
}
|
|
390
390
|
|
|
391
|
-
.utrecht-button:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
391
|
+
.utrecht-button:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-button-link:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
392
392
|
.utrecht-button--active {
|
|
393
393
|
background-color: var(--utrecht-button-active-background-color, var(--utrecht-button-background-color));
|
|
394
394
|
border-color: var(--utrecht-button-active-border-color, var(--utrecht-button-border-color));
|
|
395
395
|
color: var(--utrecht-button-active-color, var(--utrecht-button-color));
|
|
396
396
|
}
|
|
397
397
|
|
|
398
|
-
.utrecht-button--focus-visible, .utrecht-button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled) {
|
|
398
|
+
.utrecht-button--focus-visible, .utrecht-button-link--focus-visible, .utrecht-button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-button-link:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled) {
|
|
399
399
|
/* the pseudo-class for `:focus-visible` is implemented via the mixin */
|
|
400
400
|
box-shadow: 0 0 0 var(--utrecht-focus-box-shadow-spread-radius, 0) var(--utrecht-focus-box-shadow-color, transparent);
|
|
401
401
|
outline-color: var(--utrecht-focus-outline-color, transparent);
|
|
@@ -404,7 +404,7 @@ ol.utrecht-breadcrumb__list {
|
|
|
404
404
|
outline-width: var(--utrecht-focus-outline-width, 0);
|
|
405
405
|
}
|
|
406
406
|
|
|
407
|
-
.utrecht-button--focus, .utrecht-button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled) {
|
|
407
|
+
.utrecht-button--focus, .utrecht-button-link--focus, .utrecht-button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-button-link:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled) {
|
|
408
408
|
background-color: var(--utrecht-button-focus-background-color, var(--utrecht-button-background-color));
|
|
409
409
|
border-color: var(--utrecht-button-focus-border-color, var(--utrecht-button-border-color));
|
|
410
410
|
color: var(--utrecht-button-focus-color, var(--utrecht-button-color));
|
|
@@ -412,14 +412,15 @@ ol.utrecht-breadcrumb__list {
|
|
|
412
412
|
|
|
413
413
|
/* override the `:focus` selector above */
|
|
414
414
|
/* stylelint-disable-next-line no-descending-specificity */
|
|
415
|
-
.utrecht-button:focus:not(:focus-visible) {
|
|
415
|
+
.utrecht-button:focus:not(:focus-visible), .utrecht-button-link:focus:not(:focus-visible) {
|
|
416
416
|
/* undo focus ring */
|
|
417
417
|
box-shadow: none;
|
|
418
418
|
outline-style: none;
|
|
419
419
|
}
|
|
420
420
|
|
|
421
|
-
.utrecht-button--hover:not(:disabled),
|
|
422
|
-
.utrecht-button:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled)
|
|
421
|
+
.utrecht-button--hover:not(:disabled), .utrecht-button-link--hover:not(:disabled),
|
|
422
|
+
.utrecht-button:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
423
|
+
.utrecht-button-link:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled) {
|
|
423
424
|
background-color: var(--utrecht-button-hover-background-color, var(--utrecht-button-background-color));
|
|
424
425
|
border-color: var(--utrecht-button-hover-border-color, var(--utrecht-button-border-color));
|
|
425
426
|
color: var(--utrecht-button-hover-color, var(--utrecht-button-color));
|
|
@@ -460,6 +461,112 @@ ol.utrecht-breadcrumb__list {
|
|
|
460
461
|
gap: var(--utrecht-button-group-block-gap, 1em);
|
|
461
462
|
}
|
|
462
463
|
|
|
464
|
+
/**
|
|
465
|
+
* @license EUPL-1.2
|
|
466
|
+
* Copyright (c) 2021 The Knights Who Say NIH! B.V.
|
|
467
|
+
* Copyright (c) 2021 Gemeente Utrecht
|
|
468
|
+
*/
|
|
469
|
+
/**
|
|
470
|
+
* @license EUPL-1.2
|
|
471
|
+
* Copyright (c) 2021 The Knights Who Say NIH! B.V.
|
|
472
|
+
* Copyright (c) 2021 Gemeente Utrecht
|
|
473
|
+
*/
|
|
474
|
+
/**
|
|
475
|
+
* @license EUPL-1.2
|
|
476
|
+
* Copyright (c) 2021 Gemeente Utrecht
|
|
477
|
+
* Copyright (c) 2021 Robbert Broersma
|
|
478
|
+
*/
|
|
479
|
+
/* stylelint-disable-next-line block-no-empty */
|
|
480
|
+
.utrecht-button, .utrecht-button-link {
|
|
481
|
+
background-color: var(--utrecht-button-primary-action-background-color, var(--utrecht-button-background-color));
|
|
482
|
+
border-color: var(--utrecht-button-border-color, transparent);
|
|
483
|
+
border-radius: var(--utrecht-button-border-radius);
|
|
484
|
+
border-style: solid;
|
|
485
|
+
border-width: var(--utrecht-button-border-width, 0);
|
|
486
|
+
color: var(--utrecht-button-primary-action-color, var(--utrecht-button-color));
|
|
487
|
+
font-family: var(--utrecht-button-font-family, var(--utrecht-document-font-family));
|
|
488
|
+
font-size: var(--utrecht-button-font-size, var(--utrecht-document-font-family));
|
|
489
|
+
font-weight: var(--utrecht-button-font-weight);
|
|
490
|
+
inline-size: var(--utrecht-button-inline-size, auto);
|
|
491
|
+
letter-spacing: var(--utrecht-button-letter-spacing);
|
|
492
|
+
min-block-size: var(--utrecht-button-min-block-size, auto);
|
|
493
|
+
min-inline-size: var(--utrecht-button-min-inline-size, 0);
|
|
494
|
+
padding-block-end: var(--utrecht-button-padding-block-end);
|
|
495
|
+
padding-block-start: var(--utrecht-button-padding-block-start);
|
|
496
|
+
padding-inline-end: var(--utrecht-button-padding-inline-end);
|
|
497
|
+
padding-inline-start: var(--utrecht-button-padding-inline-start);
|
|
498
|
+
text-transform: var(--utrecht-button-text-transform);
|
|
499
|
+
user-select: none;
|
|
500
|
+
}
|
|
501
|
+
|
|
502
|
+
.utrecht-button--distanced {
|
|
503
|
+
margin-block-end: var(--utrecht-button-margin-block-end);
|
|
504
|
+
margin-block-start: var(--utrecht-button-margin-block-start);
|
|
505
|
+
margin-inline-end: var(--utrecht-button-margin-inline-end);
|
|
506
|
+
margin-inline-start: var(--utrecht-button-margin-inline-start);
|
|
507
|
+
}
|
|
508
|
+
|
|
509
|
+
.utrecht-button--submit {
|
|
510
|
+
/* lower priority specificty than busy and disabled cursor */
|
|
511
|
+
cursor: var(--utrecht-action-submit-cursor);
|
|
512
|
+
}
|
|
513
|
+
|
|
514
|
+
.utrecht-button--busy {
|
|
515
|
+
cursor: var(--utrecht-action-busy-cursor);
|
|
516
|
+
}
|
|
517
|
+
|
|
518
|
+
.utrecht-button:disabled, .utrecht-button-link:disabled,
|
|
519
|
+
.utrecht-button--disabled {
|
|
520
|
+
background-color: var(--utrecht-button-disabled-background-color, var(--utrecht-button-background-color));
|
|
521
|
+
border-color: var(--utrecht-button-disabled-border-color, var(--utrecht-button-border-color));
|
|
522
|
+
color: var(--utrecht-button-disabled-color, var(--utrecht-button-color));
|
|
523
|
+
cursor: var(--utrecht-action-disabled-cursor);
|
|
524
|
+
}
|
|
525
|
+
|
|
526
|
+
.utrecht-button:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-button-link:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
527
|
+
.utrecht-button--active {
|
|
528
|
+
background-color: var(--utrecht-button-active-background-color, var(--utrecht-button-background-color));
|
|
529
|
+
border-color: var(--utrecht-button-active-border-color, var(--utrecht-button-border-color));
|
|
530
|
+
color: var(--utrecht-button-active-color, var(--utrecht-button-color));
|
|
531
|
+
}
|
|
532
|
+
|
|
533
|
+
.utrecht-button--focus-visible, .utrecht-button-link--focus-visible, .utrecht-button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-button-link:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled) {
|
|
534
|
+
/* the pseudo-class for `:focus-visible` is implemented via the mixin */
|
|
535
|
+
box-shadow: 0 0 0 var(--utrecht-focus-box-shadow-spread-radius, 0) var(--utrecht-focus-box-shadow-color, transparent);
|
|
536
|
+
outline-color: var(--utrecht-focus-outline-color, transparent);
|
|
537
|
+
outline-offset: var(--utrecht-focus-outline-offset, 0);
|
|
538
|
+
outline-style: var(--utrecht-focus-outline-style, solid);
|
|
539
|
+
outline-width: var(--utrecht-focus-outline-width, 0);
|
|
540
|
+
}
|
|
541
|
+
|
|
542
|
+
.utrecht-button--focus, .utrecht-button-link--focus, .utrecht-button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-button-link:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled) {
|
|
543
|
+
background-color: var(--utrecht-button-focus-background-color, var(--utrecht-button-background-color));
|
|
544
|
+
border-color: var(--utrecht-button-focus-border-color, var(--utrecht-button-border-color));
|
|
545
|
+
color: var(--utrecht-button-focus-color, var(--utrecht-button-color));
|
|
546
|
+
}
|
|
547
|
+
|
|
548
|
+
/* override the `:focus` selector above */
|
|
549
|
+
/* stylelint-disable-next-line no-descending-specificity */
|
|
550
|
+
.utrecht-button:focus:not(:focus-visible), .utrecht-button-link:focus:not(:focus-visible) {
|
|
551
|
+
/* undo focus ring */
|
|
552
|
+
box-shadow: none;
|
|
553
|
+
outline-style: none;
|
|
554
|
+
}
|
|
555
|
+
|
|
556
|
+
.utrecht-button--hover:not(:disabled), .utrecht-button-link--hover:not(:disabled),
|
|
557
|
+
.utrecht-button:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
558
|
+
.utrecht-button-link:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled) {
|
|
559
|
+
background-color: var(--utrecht-button-hover-background-color, var(--utrecht-button-background-color));
|
|
560
|
+
border-color: var(--utrecht-button-hover-border-color, var(--utrecht-button-border-color));
|
|
561
|
+
color: var(--utrecht-button-hover-color, var(--utrecht-button-color));
|
|
562
|
+
transform: scale(var(--utrecht-button-focus-transform-scale, 1));
|
|
563
|
+
}
|
|
564
|
+
|
|
565
|
+
.utrecht-button-link {
|
|
566
|
+
cursor: var(--utrecht-action-navigate-cursor, pointer);
|
|
567
|
+
text-decoration: none;
|
|
568
|
+
}
|
|
569
|
+
|
|
463
570
|
/**
|
|
464
571
|
* @license EUPL-1.2
|
|
465
572
|
* Copyright (c) 2021 Robbert Broersma
|
|
@@ -1230,6 +1337,170 @@ ol.utrecht-breadcrumb__list {
|
|
|
1230
1337
|
height: 1em;
|
|
1231
1338
|
}
|
|
1232
1339
|
|
|
1340
|
+
/**
|
|
1341
|
+
* @license EUPL-1.2
|
|
1342
|
+
* Copyright (c) 2022 Robbert Broersma
|
|
1343
|
+
*/
|
|
1344
|
+
/**
|
|
1345
|
+
* @license EUPL-1.2
|
|
1346
|
+
* Copyright (c) 2021 The Knights Who Say NIH! B.V.
|
|
1347
|
+
* Copyright (c) 2021 Gemeente Utrecht
|
|
1348
|
+
*/
|
|
1349
|
+
/* stylelint-disable scss/no-global-function-names */
|
|
1350
|
+
/**
|
|
1351
|
+
* @license EUPL-1.2
|
|
1352
|
+
* Copyright (c) 2021 Gemeente Utrecht
|
|
1353
|
+
* Copyright (c) 2021 Robbert Broersma
|
|
1354
|
+
*/
|
|
1355
|
+
/* stylelint-disable-next-line block-no-empty */
|
|
1356
|
+
/*
|
|
1357
|
+
|
|
1358
|
+
# CSS implementation
|
|
1359
|
+
|
|
1360
|
+
## `text-decoration-skip`
|
|
1361
|
+
|
|
1362
|
+
`text-decoration-skip` can be helpful to avoid making some texts unreadable.
|
|
1363
|
+
For example by obscuring Arabic diacritics.
|
|
1364
|
+
|
|
1365
|
+
However, the combination of a greater thickness and skipping this thick underline
|
|
1366
|
+
leads to a very unappealing rendering of the underline. To avoid this,
|
|
1367
|
+
`text-decoration-skip` is disabled for interactive states.
|
|
1368
|
+
|
|
1369
|
+
For design token configurations that have identical thickness for normal and interactive
|
|
1370
|
+
states, this will lead to the (undesirable) effect that the focus/hover effect is switching
|
|
1371
|
+
from an interrupted to an uninterrupted underline (for some texts).
|
|
1372
|
+
|
|
1373
|
+
Apart from making `skip-ink` configurable for normal/focus/hover, there is no good solution yet.
|
|
1374
|
+
|
|
1375
|
+
---
|
|
1376
|
+
|
|
1377
|
+
Disabling `text-decoration-skip` for interactive states obscures some texts, and we assume for now
|
|
1378
|
+
that moving the pointer away from a link or having focus elsewhere first is simple enough to
|
|
1379
|
+
not make this too inconvenient.
|
|
1380
|
+
|
|
1381
|
+
---
|
|
1382
|
+
|
|
1383
|
+
Some folks implement the underline of links using `border-bottom` or even using a finely crafted
|
|
1384
|
+
`linear-gradient()` with a solid color at the bottom and transparent behind the text. These approaches
|
|
1385
|
+
would unfortunately not be able to provide the improved readability of `text-decoration-skip`.
|
|
1386
|
+
|
|
1387
|
+
## `text-decoration-thickness`
|
|
1388
|
+
|
|
1389
|
+
Varying `text-decoration-thickness` can be used to distinguish interactive states.
|
|
1390
|
+
|
|
1391
|
+
---
|
|
1392
|
+
|
|
1393
|
+
`text-decoration-thickness` appears to have rendering differences between Chrome and Safari.
|
|
1394
|
+
In Safari the line becomes thicker with extra pixels added to the bottom, while in Chrome
|
|
1395
|
+
the underline offset also seems to increase along with the thickness, which effectively means
|
|
1396
|
+
the underline is closer to the next line than in Safari.
|
|
1397
|
+
|
|
1398
|
+
---
|
|
1399
|
+
|
|
1400
|
+
It might be nice to use font-relative units for `text-decoration-thickness`, and that is why we
|
|
1401
|
+
use the `max()` function to ensure the underline remains visible for every font size.
|
|
1402
|
+
|
|
1403
|
+
## `transition`
|
|
1404
|
+
|
|
1405
|
+
`text-decoration-thickness` could be a candidate for animating between interactive states,
|
|
1406
|
+
however browsers don't seem to have implemented great looking supixel tweening yet.
|
|
1407
|
+
|
|
1408
|
+
`text-decoration-skip` also makes the transition more challenging to implement.
|
|
1409
|
+
|
|
1410
|
+
*/
|
|
1411
|
+
.utrecht-link, .utrecht-link-button {
|
|
1412
|
+
color: var(--utrecht-link-color, blue);
|
|
1413
|
+
text-decoration: var(--utrecht-link-text-decoration, underline);
|
|
1414
|
+
text-decoration-skip-ink: all;
|
|
1415
|
+
text-decoration-thickness: max(var(--utrecht-link-text-decoration-thickness), 1px);
|
|
1416
|
+
text-underline-offset: var(--utrecht-link-text-underline-offset);
|
|
1417
|
+
}
|
|
1418
|
+
|
|
1419
|
+
.utrecht-link--icon-left {
|
|
1420
|
+
background-image: var(--utrecht-link-icon-left-background-image, none);
|
|
1421
|
+
background-position: 0 0.25em;
|
|
1422
|
+
background-repeat: no-repeat;
|
|
1423
|
+
color: var(--utrecht-link-color, blue);
|
|
1424
|
+
font-weight: var(--utrecht-typography-weight-scale-bold-font-weight);
|
|
1425
|
+
padding-inline-start: var(--utrecht-space-block-md);
|
|
1426
|
+
text-decoration: none;
|
|
1427
|
+
}
|
|
1428
|
+
|
|
1429
|
+
.utrecht-link:visited, .utrecht-link-button:visited,
|
|
1430
|
+
.utrecht-link--visited {
|
|
1431
|
+
color: var(--utrecht-link-visited-color, var(--utrecht-link-color));
|
|
1432
|
+
}
|
|
1433
|
+
|
|
1434
|
+
.utrecht-link:hover, .utrecht-link-button:hover,
|
|
1435
|
+
.utrecht-link--hover,
|
|
1436
|
+
.utrecht-link-button--hover {
|
|
1437
|
+
color: var(--utrecht-link-hover-color, var(--utrecht-link-color));
|
|
1438
|
+
text-decoration: var(--utrecht-link-hover-text-decoration, var(--utrecht-link-text-decoration, underline));
|
|
1439
|
+
text-decoration-skip: none;
|
|
1440
|
+
text-decoration-skip-ink: none;
|
|
1441
|
+
text-decoration-thickness: max(var(--utrecht-link-hover-text-decoration-thickness, var(--utrecht-link-text-decoration-thickness)), 1px);
|
|
1442
|
+
}
|
|
1443
|
+
|
|
1444
|
+
.utrecht-link:active, .utrecht-link-button:active,
|
|
1445
|
+
.utrecht-link--active,
|
|
1446
|
+
.utrecht-link-button--active {
|
|
1447
|
+
color: var(--utrecht-link-active-color, var(--utrecht-link-color));
|
|
1448
|
+
}
|
|
1449
|
+
|
|
1450
|
+
.utrecht-link--focus, .utrecht-link-button--focus, .utrecht-link:focus, .utrecht-link-button:focus {
|
|
1451
|
+
color: var(--utrecht-link-focus-color, var(--utrecht-link-color));
|
|
1452
|
+
text-decoration: var(--utrecht-link-focus-text-decoration, var(--utrecht-link-text-decoration, underline));
|
|
1453
|
+
text-decoration-skip: none;
|
|
1454
|
+
text-decoration-skip-ink: none;
|
|
1455
|
+
text-decoration-thickness: max(var(--utrecht-link-focus-text-decoration-thickness, var(--utrecht-link-text-decoration-thickness)), 1px);
|
|
1456
|
+
}
|
|
1457
|
+
|
|
1458
|
+
.utrecht-link--focus-visible, .utrecht-link-button--focus-visible, .utrecht-link:focus, .utrecht-link-button:focus {
|
|
1459
|
+
box-shadow: 0 0 0 var(--utrecht-focus-box-shadow-spread-radius, 0) var(--utrecht-focus-box-shadow-color, transparent);
|
|
1460
|
+
outline-color: var(--utrecht-focus-outline-color, transparent);
|
|
1461
|
+
outline-offset: var(--utrecht-focus-outline-offset, 0);
|
|
1462
|
+
outline-style: var(--utrecht-focus-outline-style, solid);
|
|
1463
|
+
outline-width: var(--utrecht-focus-outline-width, 0);
|
|
1464
|
+
}
|
|
1465
|
+
|
|
1466
|
+
.utrecht-link:focus:not(:focus-visible), .utrecht-link-button:focus:not(:focus-visible) {
|
|
1467
|
+
/* undo focus ring */
|
|
1468
|
+
box-shadow: none;
|
|
1469
|
+
outline-style: none;
|
|
1470
|
+
}
|
|
1471
|
+
|
|
1472
|
+
/* stylelint-disable-next-line block-no-empty */
|
|
1473
|
+
/* stylelint-disable-next-line block-no-empty */
|
|
1474
|
+
.utrecht-link--telephone {
|
|
1475
|
+
white-space: nowrap;
|
|
1476
|
+
}
|
|
1477
|
+
|
|
1478
|
+
/* stylelint-disable-next-line block-no-empty */
|
|
1479
|
+
/* stylelint-disable-next-line block-no-empty */
|
|
1480
|
+
.utrecht-link-button {
|
|
1481
|
+
cursor: pointer;
|
|
1482
|
+
display: inline-flex;
|
|
1483
|
+
font-family: var(--utrecht-button-font-family, var(--utrecht-document-font-family));
|
|
1484
|
+
font-size: var(--utrecht-button-font-size, var(--utrecht-document-font-family));
|
|
1485
|
+
font-weight: var(--utrecht-button-font-weight);
|
|
1486
|
+
inline-size: var(--utrecht-button-inline-size, auto);
|
|
1487
|
+
letter-spacing: var(--utrecht-button-letter-spacing);
|
|
1488
|
+
min-block-size: var(--utrecht-button-min-block-size, auto);
|
|
1489
|
+
min-inline-size: var(--utrecht-button-min-inline-size, 0);
|
|
1490
|
+
padding-block-end: var(--utrecht-button-padding-block-end);
|
|
1491
|
+
padding-block-start: var(--utrecht-button-padding-block-start);
|
|
1492
|
+
padding-inline-end: var(--utrecht-button-padding-inline-end);
|
|
1493
|
+
padding-inline-start: var(--utrecht-button-padding-inline-start);
|
|
1494
|
+
text-transform: var(--utrecht-button-text-transform);
|
|
1495
|
+
user-select: none;
|
|
1496
|
+
}
|
|
1497
|
+
|
|
1498
|
+
.utrecht-link-button--html-button {
|
|
1499
|
+
background-color: transparent;
|
|
1500
|
+
/* reset <button> styling */
|
|
1501
|
+
border-width: 0;
|
|
1502
|
+
}
|
|
1503
|
+
|
|
1233
1504
|
/**
|
|
1234
1505
|
* @license EUPL-1.2
|
|
1235
1506
|
* Copyright (c) 2021 Gemeente Utrecht
|
|
@@ -1316,7 +1587,7 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
1316
1587
|
`text-decoration-skip` also makes the transition more challenging to implement.
|
|
1317
1588
|
|
|
1318
1589
|
*/
|
|
1319
|
-
.utrecht-link {
|
|
1590
|
+
.utrecht-link, .utrecht-link-button {
|
|
1320
1591
|
color: var(--utrecht-link-color, blue);
|
|
1321
1592
|
text-decoration: var(--utrecht-link-text-decoration, underline);
|
|
1322
1593
|
text-decoration-skip-ink: all;
|
|
@@ -1334,13 +1605,14 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
1334
1605
|
text-decoration: none;
|
|
1335
1606
|
}
|
|
1336
1607
|
|
|
1337
|
-
.utrecht-link:visited,
|
|
1608
|
+
.utrecht-link:visited, .utrecht-link-button:visited,
|
|
1338
1609
|
.utrecht-link--visited {
|
|
1339
1610
|
color: var(--utrecht-link-visited-color, var(--utrecht-link-color));
|
|
1340
1611
|
}
|
|
1341
1612
|
|
|
1342
|
-
.utrecht-link:hover,
|
|
1343
|
-
.utrecht-link--hover
|
|
1613
|
+
.utrecht-link:hover, .utrecht-link-button:hover,
|
|
1614
|
+
.utrecht-link--hover,
|
|
1615
|
+
.utrecht-link-button--hover {
|
|
1344
1616
|
color: var(--utrecht-link-hover-color, var(--utrecht-link-color));
|
|
1345
1617
|
text-decoration: var(--utrecht-link-hover-text-decoration, var(--utrecht-link-text-decoration, underline));
|
|
1346
1618
|
text-decoration-skip: none;
|
|
@@ -1348,12 +1620,13 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
1348
1620
|
text-decoration-thickness: max(var(--utrecht-link-hover-text-decoration-thickness, var(--utrecht-link-text-decoration-thickness)), 1px);
|
|
1349
1621
|
}
|
|
1350
1622
|
|
|
1351
|
-
.utrecht-link:active,
|
|
1352
|
-
.utrecht-link--active
|
|
1623
|
+
.utrecht-link:active, .utrecht-link-button:active,
|
|
1624
|
+
.utrecht-link--active,
|
|
1625
|
+
.utrecht-link-button--active {
|
|
1353
1626
|
color: var(--utrecht-link-active-color, var(--utrecht-link-color));
|
|
1354
1627
|
}
|
|
1355
1628
|
|
|
1356
|
-
.utrecht-link--focus, .utrecht-link:focus {
|
|
1629
|
+
.utrecht-link--focus, .utrecht-link:focus, .utrecht-link-button:focus, .utrecht-link-button--focus {
|
|
1357
1630
|
color: var(--utrecht-link-focus-color, var(--utrecht-link-color));
|
|
1358
1631
|
text-decoration: var(--utrecht-link-focus-text-decoration, var(--utrecht-link-text-decoration, underline));
|
|
1359
1632
|
text-decoration-skip: none;
|
|
@@ -1361,7 +1634,7 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
1361
1634
|
text-decoration-thickness: max(var(--utrecht-link-focus-text-decoration-thickness, var(--utrecht-link-text-decoration-thickness)), 1px);
|
|
1362
1635
|
}
|
|
1363
1636
|
|
|
1364
|
-
.utrecht-link--focus-visible, .utrecht-link:focus {
|
|
1637
|
+
.utrecht-link--focus-visible, .utrecht-link:focus, .utrecht-link-button:focus, .utrecht-link-button--focus-visible {
|
|
1365
1638
|
box-shadow: 0 0 0 var(--utrecht-focus-box-shadow-spread-radius, 0) var(--utrecht-focus-box-shadow-color, transparent);
|
|
1366
1639
|
outline-color: var(--utrecht-focus-outline-color, transparent);
|
|
1367
1640
|
outline-offset: var(--utrecht-focus-outline-offset, 0);
|
|
@@ -1369,7 +1642,7 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
1369
1642
|
outline-width: var(--utrecht-focus-outline-width, 0);
|
|
1370
1643
|
}
|
|
1371
1644
|
|
|
1372
|
-
.utrecht-link:focus:not(:focus-visible) {
|
|
1645
|
+
.utrecht-link:focus:not(:focus-visible), .utrecht-link-button:focus:not(:focus-visible) {
|
|
1373
1646
|
/* undo focus ring */
|
|
1374
1647
|
box-shadow: none;
|
|
1375
1648
|
outline-style: none;
|
package/dist/index.css
CHANGED
|
@@ -354,7 +354,7 @@ ol.utrecht-breadcrumb__list {
|
|
|
354
354
|
.utrecht-button, .utrecht-html input[type=button i],
|
|
355
355
|
.utrecht-html input[type=reset i],
|
|
356
356
|
.utrecht-html input[type=submit i],
|
|
357
|
-
.utrecht-html button {
|
|
357
|
+
.utrecht-html button, .utrecht-button-link {
|
|
358
358
|
background-color: var(--utrecht-button-primary-action-background-color, var(--utrecht-button-background-color));
|
|
359
359
|
border-color: var(--utrecht-button-border-color, transparent);
|
|
360
360
|
border-radius: var(--utrecht-button-border-radius);
|
|
@@ -401,7 +401,7 @@ ol.utrecht-breadcrumb__list {
|
|
|
401
401
|
.utrecht-button:disabled, .utrecht-html input[type=button i]:disabled,
|
|
402
402
|
.utrecht-html input[type=reset i]:disabled,
|
|
403
403
|
.utrecht-html input[type=submit i]:disabled,
|
|
404
|
-
.utrecht-html button:disabled,
|
|
404
|
+
.utrecht-html button:disabled, .utrecht-button-link:disabled,
|
|
405
405
|
.utrecht-button--disabled,
|
|
406
406
|
.utrecht-html button[aria-disabled=true] {
|
|
407
407
|
background-color: var(--utrecht-button-disabled-background-color, var(--utrecht-button-background-color));
|
|
@@ -412,7 +412,7 @@ ol.utrecht-breadcrumb__list {
|
|
|
412
412
|
|
|
413
413
|
.utrecht-button:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-html input[type=button i]:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
414
414
|
.utrecht-html input[type=reset i]:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
415
|
-
.utrecht-html input[type=submit i]:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
415
|
+
.utrecht-html input[type=submit i]:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-button-link:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
416
416
|
.utrecht-button--active,
|
|
417
417
|
.utrecht-html button:active:not([aria-disabled=true]):not(:disabled) {
|
|
418
418
|
background-color: var(--utrecht-button-active-background-color, var(--utrecht-button-background-color));
|
|
@@ -420,10 +420,10 @@ ol.utrecht-breadcrumb__list {
|
|
|
420
420
|
color: var(--utrecht-button-active-color, var(--utrecht-button-color));
|
|
421
421
|
}
|
|
422
422
|
|
|
423
|
-
.utrecht-button--focus-visible, .utrecht-html button:focus-visible, .utrecht-button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-html input[type=button i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
423
|
+
.utrecht-button--focus-visible, .utrecht-html button:focus-visible, .utrecht-button-link--focus-visible, .utrecht-button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-html input[type=button i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
424
424
|
.utrecht-html input[type=reset i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
425
425
|
.utrecht-html input[type=submit i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
426
|
-
.utrecht-html button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled) {
|
|
426
|
+
.utrecht-html button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-button-link:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled) {
|
|
427
427
|
/* the pseudo-class for `:focus-visible` is implemented via the mixin */
|
|
428
428
|
box-shadow: 0 0 0 var(--utrecht-focus-box-shadow-spread-radius, 0) var(--utrecht-focus-box-shadow-color, transparent);
|
|
429
429
|
outline-color: var(--utrecht-focus-outline-color, transparent);
|
|
@@ -432,10 +432,10 @@ ol.utrecht-breadcrumb__list {
|
|
|
432
432
|
outline-width: var(--utrecht-focus-outline-width, 0);
|
|
433
433
|
}
|
|
434
434
|
|
|
435
|
-
.utrecht-button--focus, .utrecht-html button:focus:not([aria-disabled=true]):not(:disabled), .utrecht-button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-html input[type=button i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
435
|
+
.utrecht-button--focus, .utrecht-html button:focus:not([aria-disabled=true]):not(:disabled), .utrecht-button-link--focus, .utrecht-button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-html input[type=button i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
436
436
|
.utrecht-html input[type=reset i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
437
437
|
.utrecht-html input[type=submit i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
438
|
-
.utrecht-html button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled) {
|
|
438
|
+
.utrecht-html button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-button-link:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled) {
|
|
439
439
|
background-color: var(--utrecht-button-focus-background-color, var(--utrecht-button-background-color));
|
|
440
440
|
border-color: var(--utrecht-button-focus-border-color, var(--utrecht-button-border-color));
|
|
441
441
|
color: var(--utrecht-button-focus-color, var(--utrecht-button-color));
|
|
@@ -446,17 +446,18 @@ ol.utrecht-breadcrumb__list {
|
|
|
446
446
|
.utrecht-button:focus:not(:focus-visible), .utrecht-html input[type=button i]:focus:not(:focus-visible),
|
|
447
447
|
.utrecht-html input[type=reset i]:focus:not(:focus-visible),
|
|
448
448
|
.utrecht-html input[type=submit i]:focus:not(:focus-visible),
|
|
449
|
-
.utrecht-html button:focus:not(:focus-visible) {
|
|
449
|
+
.utrecht-html button:focus:not(:focus-visible), .utrecht-button-link:focus:not(:focus-visible) {
|
|
450
450
|
/* undo focus ring */
|
|
451
451
|
box-shadow: none;
|
|
452
452
|
outline-style: none;
|
|
453
453
|
}
|
|
454
454
|
|
|
455
|
-
.utrecht-button--hover:not(:disabled), .utrecht-html button:not(:disabled):hover:not([aria-disabled=true]),
|
|
455
|
+
.utrecht-button--hover:not(:disabled), .utrecht-html button:not(:disabled):hover:not([aria-disabled=true]), .utrecht-button-link--hover:not(:disabled),
|
|
456
456
|
.utrecht-button:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
457
457
|
.utrecht-html input[type=button i]:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
458
458
|
.utrecht-html input[type=reset i]:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
459
|
-
.utrecht-html input[type=submit i]:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled)
|
|
459
|
+
.utrecht-html input[type=submit i]:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
460
|
+
.utrecht-button-link:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled) {
|
|
460
461
|
background-color: var(--utrecht-button-hover-background-color, var(--utrecht-button-background-color));
|
|
461
462
|
border-color: var(--utrecht-button-hover-border-color, var(--utrecht-button-border-color));
|
|
462
463
|
color: var(--utrecht-button-hover-color, var(--utrecht-button-color));
|
|
@@ -497,6 +498,140 @@ ol.utrecht-breadcrumb__list {
|
|
|
497
498
|
gap: var(--utrecht-button-group-block-gap, 1em);
|
|
498
499
|
}
|
|
499
500
|
|
|
501
|
+
/**
|
|
502
|
+
* @license EUPL-1.2
|
|
503
|
+
* Copyright (c) 2021 The Knights Who Say NIH! B.V.
|
|
504
|
+
* Copyright (c) 2021 Gemeente Utrecht
|
|
505
|
+
*/
|
|
506
|
+
/**
|
|
507
|
+
* @license EUPL-1.2
|
|
508
|
+
* Copyright (c) 2021 The Knights Who Say NIH! B.V.
|
|
509
|
+
* Copyright (c) 2021 Gemeente Utrecht
|
|
510
|
+
*/
|
|
511
|
+
/**
|
|
512
|
+
* @license EUPL-1.2
|
|
513
|
+
* Copyright (c) 2021 Gemeente Utrecht
|
|
514
|
+
* Copyright (c) 2021 Robbert Broersma
|
|
515
|
+
*/
|
|
516
|
+
/* stylelint-disable-next-line block-no-empty */
|
|
517
|
+
.utrecht-button, .utrecht-html input[type=button i],
|
|
518
|
+
.utrecht-html input[type=reset i],
|
|
519
|
+
.utrecht-html input[type=submit i],
|
|
520
|
+
.utrecht-html button, .utrecht-button-link {
|
|
521
|
+
background-color: var(--utrecht-button-primary-action-background-color, var(--utrecht-button-background-color));
|
|
522
|
+
border-color: var(--utrecht-button-border-color, transparent);
|
|
523
|
+
border-radius: var(--utrecht-button-border-radius);
|
|
524
|
+
border-style: solid;
|
|
525
|
+
border-width: var(--utrecht-button-border-width, 0);
|
|
526
|
+
color: var(--utrecht-button-primary-action-color, var(--utrecht-button-color));
|
|
527
|
+
font-family: var(--utrecht-button-font-family, var(--utrecht-document-font-family));
|
|
528
|
+
font-size: var(--utrecht-button-font-size, var(--utrecht-document-font-family));
|
|
529
|
+
font-weight: var(--utrecht-button-font-weight);
|
|
530
|
+
inline-size: var(--utrecht-button-inline-size, auto);
|
|
531
|
+
letter-spacing: var(--utrecht-button-letter-spacing);
|
|
532
|
+
min-block-size: var(--utrecht-button-min-block-size, auto);
|
|
533
|
+
min-inline-size: var(--utrecht-button-min-inline-size, 0);
|
|
534
|
+
padding-block-end: var(--utrecht-button-padding-block-end);
|
|
535
|
+
padding-block-start: var(--utrecht-button-padding-block-start);
|
|
536
|
+
padding-inline-end: var(--utrecht-button-padding-inline-end);
|
|
537
|
+
padding-inline-start: var(--utrecht-button-padding-inline-start);
|
|
538
|
+
text-transform: var(--utrecht-button-text-transform);
|
|
539
|
+
user-select: none;
|
|
540
|
+
}
|
|
541
|
+
|
|
542
|
+
.utrecht-button--distanced, .utrecht-html input[type=button i],
|
|
543
|
+
.utrecht-html input[type=reset i],
|
|
544
|
+
.utrecht-html input[type=submit i],
|
|
545
|
+
.utrecht-html button {
|
|
546
|
+
margin-block-end: var(--utrecht-button-margin-block-end);
|
|
547
|
+
margin-block-start: var(--utrecht-button-margin-block-start);
|
|
548
|
+
margin-inline-end: var(--utrecht-button-margin-inline-end);
|
|
549
|
+
margin-inline-start: var(--utrecht-button-margin-inline-start);
|
|
550
|
+
}
|
|
551
|
+
|
|
552
|
+
.utrecht-button--submit, .utrecht-html button[type=submit i],
|
|
553
|
+
.utrecht-html input[type=submit i] {
|
|
554
|
+
/* lower priority specificty than busy and disabled cursor */
|
|
555
|
+
cursor: var(--utrecht-action-submit-cursor);
|
|
556
|
+
}
|
|
557
|
+
|
|
558
|
+
.utrecht-button--busy, .utrecht-html button[aria-busy=true],
|
|
559
|
+
.utrecht-html button[aria-disabled=true][aria-busy=true],
|
|
560
|
+
.utrecht-html button:disabled[aria-busy=true] {
|
|
561
|
+
cursor: var(--utrecht-action-busy-cursor);
|
|
562
|
+
}
|
|
563
|
+
|
|
564
|
+
.utrecht-button:disabled, .utrecht-html input[type=button i]:disabled,
|
|
565
|
+
.utrecht-html input[type=reset i]:disabled,
|
|
566
|
+
.utrecht-html input[type=submit i]:disabled,
|
|
567
|
+
.utrecht-html button:disabled, .utrecht-button-link:disabled,
|
|
568
|
+
.utrecht-button--disabled,
|
|
569
|
+
.utrecht-html button[aria-disabled=true] {
|
|
570
|
+
background-color: var(--utrecht-button-disabled-background-color, var(--utrecht-button-background-color));
|
|
571
|
+
border-color: var(--utrecht-button-disabled-border-color, var(--utrecht-button-border-color));
|
|
572
|
+
color: var(--utrecht-button-disabled-color, var(--utrecht-button-color));
|
|
573
|
+
cursor: var(--utrecht-action-disabled-cursor);
|
|
574
|
+
}
|
|
575
|
+
|
|
576
|
+
.utrecht-button:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-html input[type=button i]:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
577
|
+
.utrecht-html input[type=reset i]:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
578
|
+
.utrecht-html input[type=submit i]:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-button-link:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
579
|
+
.utrecht-button--active,
|
|
580
|
+
.utrecht-html button:active:not([aria-disabled=true]):not(:disabled) {
|
|
581
|
+
background-color: var(--utrecht-button-active-background-color, var(--utrecht-button-background-color));
|
|
582
|
+
border-color: var(--utrecht-button-active-border-color, var(--utrecht-button-border-color));
|
|
583
|
+
color: var(--utrecht-button-active-color, var(--utrecht-button-color));
|
|
584
|
+
}
|
|
585
|
+
|
|
586
|
+
.utrecht-button--focus-visible, .utrecht-html button:focus-visible, .utrecht-button-link--focus-visible, .utrecht-button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-html input[type=button i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
587
|
+
.utrecht-html input[type=reset i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
588
|
+
.utrecht-html input[type=submit i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
589
|
+
.utrecht-html button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-button-link:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled) {
|
|
590
|
+
/* the pseudo-class for `:focus-visible` is implemented via the mixin */
|
|
591
|
+
box-shadow: 0 0 0 var(--utrecht-focus-box-shadow-spread-radius, 0) var(--utrecht-focus-box-shadow-color, transparent);
|
|
592
|
+
outline-color: var(--utrecht-focus-outline-color, transparent);
|
|
593
|
+
outline-offset: var(--utrecht-focus-outline-offset, 0);
|
|
594
|
+
outline-style: var(--utrecht-focus-outline-style, solid);
|
|
595
|
+
outline-width: var(--utrecht-focus-outline-width, 0);
|
|
596
|
+
}
|
|
597
|
+
|
|
598
|
+
.utrecht-button--focus, .utrecht-html button:focus:not([aria-disabled=true]):not(:disabled), .utrecht-button-link--focus, .utrecht-button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-html input[type=button i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
599
|
+
.utrecht-html input[type=reset i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
600
|
+
.utrecht-html input[type=submit i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
601
|
+
.utrecht-html button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-button-link:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled) {
|
|
602
|
+
background-color: var(--utrecht-button-focus-background-color, var(--utrecht-button-background-color));
|
|
603
|
+
border-color: var(--utrecht-button-focus-border-color, var(--utrecht-button-border-color));
|
|
604
|
+
color: var(--utrecht-button-focus-color, var(--utrecht-button-color));
|
|
605
|
+
}
|
|
606
|
+
|
|
607
|
+
/* override the `:focus` selector above */
|
|
608
|
+
/* stylelint-disable-next-line no-descending-specificity */
|
|
609
|
+
.utrecht-button:focus:not(:focus-visible), .utrecht-html input[type=button i]:focus:not(:focus-visible),
|
|
610
|
+
.utrecht-html input[type=reset i]:focus:not(:focus-visible),
|
|
611
|
+
.utrecht-html input[type=submit i]:focus:not(:focus-visible),
|
|
612
|
+
.utrecht-html button:focus:not(:focus-visible), .utrecht-button-link:focus:not(:focus-visible) {
|
|
613
|
+
/* undo focus ring */
|
|
614
|
+
box-shadow: none;
|
|
615
|
+
outline-style: none;
|
|
616
|
+
}
|
|
617
|
+
|
|
618
|
+
.utrecht-button--hover:not(:disabled), .utrecht-html button:not(:disabled):hover:not([aria-disabled=true]), .utrecht-button-link--hover:not(:disabled),
|
|
619
|
+
.utrecht-button:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
620
|
+
.utrecht-html input[type=button i]:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
621
|
+
.utrecht-html input[type=reset i]:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
622
|
+
.utrecht-html input[type=submit i]:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
623
|
+
.utrecht-button-link:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled) {
|
|
624
|
+
background-color: var(--utrecht-button-hover-background-color, var(--utrecht-button-background-color));
|
|
625
|
+
border-color: var(--utrecht-button-hover-border-color, var(--utrecht-button-border-color));
|
|
626
|
+
color: var(--utrecht-button-hover-color, var(--utrecht-button-color));
|
|
627
|
+
transform: scale(var(--utrecht-button-focus-transform-scale, 1));
|
|
628
|
+
}
|
|
629
|
+
|
|
630
|
+
.utrecht-button-link {
|
|
631
|
+
cursor: var(--utrecht-action-navigate-cursor, pointer);
|
|
632
|
+
text-decoration: none;
|
|
633
|
+
}
|
|
634
|
+
|
|
500
635
|
/**
|
|
501
636
|
* @license EUPL-1.2
|
|
502
637
|
* Copyright (c) 2021 Robbert Broersma
|
|
@@ -1267,6 +1402,173 @@ ol.utrecht-breadcrumb__list {
|
|
|
1267
1402
|
height: 1em;
|
|
1268
1403
|
}
|
|
1269
1404
|
|
|
1405
|
+
/**
|
|
1406
|
+
* @license EUPL-1.2
|
|
1407
|
+
* Copyright (c) 2022 Robbert Broersma
|
|
1408
|
+
*/
|
|
1409
|
+
/**
|
|
1410
|
+
* @license EUPL-1.2
|
|
1411
|
+
* Copyright (c) 2021 The Knights Who Say NIH! B.V.
|
|
1412
|
+
* Copyright (c) 2021 Gemeente Utrecht
|
|
1413
|
+
*/
|
|
1414
|
+
/* stylelint-disable scss/no-global-function-names */
|
|
1415
|
+
/**
|
|
1416
|
+
* @license EUPL-1.2
|
|
1417
|
+
* Copyright (c) 2021 Gemeente Utrecht
|
|
1418
|
+
* Copyright (c) 2021 Robbert Broersma
|
|
1419
|
+
*/
|
|
1420
|
+
/* stylelint-disable-next-line block-no-empty */
|
|
1421
|
+
/*
|
|
1422
|
+
|
|
1423
|
+
# CSS implementation
|
|
1424
|
+
|
|
1425
|
+
## `text-decoration-skip`
|
|
1426
|
+
|
|
1427
|
+
`text-decoration-skip` can be helpful to avoid making some texts unreadable.
|
|
1428
|
+
For example by obscuring Arabic diacritics.
|
|
1429
|
+
|
|
1430
|
+
However, the combination of a greater thickness and skipping this thick underline
|
|
1431
|
+
leads to a very unappealing rendering of the underline. To avoid this,
|
|
1432
|
+
`text-decoration-skip` is disabled for interactive states.
|
|
1433
|
+
|
|
1434
|
+
For design token configurations that have identical thickness for normal and interactive
|
|
1435
|
+
states, this will lead to the (undesirable) effect that the focus/hover effect is switching
|
|
1436
|
+
from an interrupted to an uninterrupted underline (for some texts).
|
|
1437
|
+
|
|
1438
|
+
Apart from making `skip-ink` configurable for normal/focus/hover, there is no good solution yet.
|
|
1439
|
+
|
|
1440
|
+
---
|
|
1441
|
+
|
|
1442
|
+
Disabling `text-decoration-skip` for interactive states obscures some texts, and we assume for now
|
|
1443
|
+
that moving the pointer away from a link or having focus elsewhere first is simple enough to
|
|
1444
|
+
not make this too inconvenient.
|
|
1445
|
+
|
|
1446
|
+
---
|
|
1447
|
+
|
|
1448
|
+
Some folks implement the underline of links using `border-bottom` or even using a finely crafted
|
|
1449
|
+
`linear-gradient()` with a solid color at the bottom and transparent behind the text. These approaches
|
|
1450
|
+
would unfortunately not be able to provide the improved readability of `text-decoration-skip`.
|
|
1451
|
+
|
|
1452
|
+
## `text-decoration-thickness`
|
|
1453
|
+
|
|
1454
|
+
Varying `text-decoration-thickness` can be used to distinguish interactive states.
|
|
1455
|
+
|
|
1456
|
+
---
|
|
1457
|
+
|
|
1458
|
+
`text-decoration-thickness` appears to have rendering differences between Chrome and Safari.
|
|
1459
|
+
In Safari the line becomes thicker with extra pixels added to the bottom, while in Chrome
|
|
1460
|
+
the underline offset also seems to increase along with the thickness, which effectively means
|
|
1461
|
+
the underline is closer to the next line than in Safari.
|
|
1462
|
+
|
|
1463
|
+
---
|
|
1464
|
+
|
|
1465
|
+
It might be nice to use font-relative units for `text-decoration-thickness`, and that is why we
|
|
1466
|
+
use the `max()` function to ensure the underline remains visible for every font size.
|
|
1467
|
+
|
|
1468
|
+
## `transition`
|
|
1469
|
+
|
|
1470
|
+
`text-decoration-thickness` could be a candidate for animating between interactive states,
|
|
1471
|
+
however browsers don't seem to have implemented great looking supixel tweening yet.
|
|
1472
|
+
|
|
1473
|
+
`text-decoration-skip` also makes the transition more challenging to implement.
|
|
1474
|
+
|
|
1475
|
+
*/
|
|
1476
|
+
.utrecht-link, .utrecht-html a:link, .utrecht-link-button {
|
|
1477
|
+
color: var(--utrecht-link-color, blue);
|
|
1478
|
+
text-decoration: var(--utrecht-link-text-decoration, underline);
|
|
1479
|
+
text-decoration-skip-ink: all;
|
|
1480
|
+
text-decoration-thickness: max(var(--utrecht-link-text-decoration-thickness), 1px);
|
|
1481
|
+
text-underline-offset: var(--utrecht-link-text-underline-offset);
|
|
1482
|
+
}
|
|
1483
|
+
|
|
1484
|
+
.utrecht-link--icon-left {
|
|
1485
|
+
background-image: var(--utrecht-link-icon-left-background-image, none);
|
|
1486
|
+
background-position: 0 0.25em;
|
|
1487
|
+
background-repeat: no-repeat;
|
|
1488
|
+
color: var(--utrecht-link-color, blue);
|
|
1489
|
+
font-weight: var(--utrecht-typography-weight-scale-bold-font-weight);
|
|
1490
|
+
padding-inline-start: var(--utrecht-space-block-md);
|
|
1491
|
+
text-decoration: none;
|
|
1492
|
+
}
|
|
1493
|
+
|
|
1494
|
+
.utrecht-link:visited, .utrecht-link-button:visited,
|
|
1495
|
+
.utrecht-link--visited,
|
|
1496
|
+
.utrecht-html a:visited {
|
|
1497
|
+
color: var(--utrecht-link-visited-color, var(--utrecht-link-color));
|
|
1498
|
+
}
|
|
1499
|
+
|
|
1500
|
+
.utrecht-link:hover, .utrecht-link-button:hover,
|
|
1501
|
+
.utrecht-link--hover,
|
|
1502
|
+
.utrecht-html a:hover,
|
|
1503
|
+
.utrecht-link-button--hover {
|
|
1504
|
+
color: var(--utrecht-link-hover-color, var(--utrecht-link-color));
|
|
1505
|
+
text-decoration: var(--utrecht-link-hover-text-decoration, var(--utrecht-link-text-decoration, underline));
|
|
1506
|
+
text-decoration-skip: none;
|
|
1507
|
+
text-decoration-skip-ink: none;
|
|
1508
|
+
text-decoration-thickness: max(var(--utrecht-link-hover-text-decoration-thickness, var(--utrecht-link-text-decoration-thickness)), 1px);
|
|
1509
|
+
}
|
|
1510
|
+
|
|
1511
|
+
.utrecht-link:active, .utrecht-link-button:active,
|
|
1512
|
+
.utrecht-link--active,
|
|
1513
|
+
.utrecht-html a:active,
|
|
1514
|
+
.utrecht-link-button--active {
|
|
1515
|
+
color: var(--utrecht-link-active-color, var(--utrecht-link-color));
|
|
1516
|
+
}
|
|
1517
|
+
|
|
1518
|
+
.utrecht-link--focus, .utrecht-html a:focus, .utrecht-link-button--focus, .utrecht-link:focus, .utrecht-link-button:focus {
|
|
1519
|
+
color: var(--utrecht-link-focus-color, var(--utrecht-link-color));
|
|
1520
|
+
text-decoration: var(--utrecht-link-focus-text-decoration, var(--utrecht-link-text-decoration, underline));
|
|
1521
|
+
text-decoration-skip: none;
|
|
1522
|
+
text-decoration-skip-ink: none;
|
|
1523
|
+
text-decoration-thickness: max(var(--utrecht-link-focus-text-decoration-thickness, var(--utrecht-link-text-decoration-thickness)), 1px);
|
|
1524
|
+
}
|
|
1525
|
+
|
|
1526
|
+
.utrecht-link--focus-visible, .utrecht-html a:focus, .utrecht-link-button--focus-visible, .utrecht-link:focus, .utrecht-link-button:focus {
|
|
1527
|
+
box-shadow: 0 0 0 var(--utrecht-focus-box-shadow-spread-radius, 0) var(--utrecht-focus-box-shadow-color, transparent);
|
|
1528
|
+
outline-color: var(--utrecht-focus-outline-color, transparent);
|
|
1529
|
+
outline-offset: var(--utrecht-focus-outline-offset, 0);
|
|
1530
|
+
outline-style: var(--utrecht-focus-outline-style, solid);
|
|
1531
|
+
outline-width: var(--utrecht-focus-outline-width, 0);
|
|
1532
|
+
}
|
|
1533
|
+
|
|
1534
|
+
.utrecht-link:focus:not(:focus-visible), .utrecht-html a:focus:not(:focus-visible):link, .utrecht-link-button:focus:not(:focus-visible) {
|
|
1535
|
+
/* undo focus ring */
|
|
1536
|
+
box-shadow: none;
|
|
1537
|
+
outline-style: none;
|
|
1538
|
+
}
|
|
1539
|
+
|
|
1540
|
+
/* stylelint-disable-next-line block-no-empty */
|
|
1541
|
+
/* stylelint-disable-next-line block-no-empty */
|
|
1542
|
+
.utrecht-link--telephone, .utrecht-html a[href^="tel:" i] {
|
|
1543
|
+
white-space: nowrap;
|
|
1544
|
+
}
|
|
1545
|
+
|
|
1546
|
+
/* stylelint-disable-next-line block-no-empty */
|
|
1547
|
+
/* stylelint-disable-next-line block-no-empty */
|
|
1548
|
+
.utrecht-link-button {
|
|
1549
|
+
cursor: pointer;
|
|
1550
|
+
display: inline-flex;
|
|
1551
|
+
font-family: var(--utrecht-button-font-family, var(--utrecht-document-font-family));
|
|
1552
|
+
font-size: var(--utrecht-button-font-size, var(--utrecht-document-font-family));
|
|
1553
|
+
font-weight: var(--utrecht-button-font-weight);
|
|
1554
|
+
inline-size: var(--utrecht-button-inline-size, auto);
|
|
1555
|
+
letter-spacing: var(--utrecht-button-letter-spacing);
|
|
1556
|
+
min-block-size: var(--utrecht-button-min-block-size, auto);
|
|
1557
|
+
min-inline-size: var(--utrecht-button-min-inline-size, 0);
|
|
1558
|
+
padding-block-end: var(--utrecht-button-padding-block-end);
|
|
1559
|
+
padding-block-start: var(--utrecht-button-padding-block-start);
|
|
1560
|
+
padding-inline-end: var(--utrecht-button-padding-inline-end);
|
|
1561
|
+
padding-inline-start: var(--utrecht-button-padding-inline-start);
|
|
1562
|
+
text-transform: var(--utrecht-button-text-transform);
|
|
1563
|
+
user-select: none;
|
|
1564
|
+
}
|
|
1565
|
+
|
|
1566
|
+
.utrecht-link-button--html-button {
|
|
1567
|
+
background-color: transparent;
|
|
1568
|
+
/* reset <button> styling */
|
|
1569
|
+
border-width: 0;
|
|
1570
|
+
}
|
|
1571
|
+
|
|
1270
1572
|
/**
|
|
1271
1573
|
* @license EUPL-1.2
|
|
1272
1574
|
* Copyright (c) 2021 Gemeente Utrecht
|
|
@@ -1353,7 +1655,7 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
1353
1655
|
`text-decoration-skip` also makes the transition more challenging to implement.
|
|
1354
1656
|
|
|
1355
1657
|
*/
|
|
1356
|
-
.utrecht-link, .utrecht-html a:link {
|
|
1658
|
+
.utrecht-link, .utrecht-html a:link, .utrecht-link-button {
|
|
1357
1659
|
color: var(--utrecht-link-color, blue);
|
|
1358
1660
|
text-decoration: var(--utrecht-link-text-decoration, underline);
|
|
1359
1661
|
text-decoration-skip-ink: all;
|
|
@@ -1371,15 +1673,16 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
1371
1673
|
text-decoration: none;
|
|
1372
1674
|
}
|
|
1373
1675
|
|
|
1374
|
-
.utrecht-link:visited,
|
|
1676
|
+
.utrecht-link:visited, .utrecht-link-button:visited,
|
|
1375
1677
|
.utrecht-link--visited,
|
|
1376
1678
|
.utrecht-html a:visited {
|
|
1377
1679
|
color: var(--utrecht-link-visited-color, var(--utrecht-link-color));
|
|
1378
1680
|
}
|
|
1379
1681
|
|
|
1380
|
-
.utrecht-link:hover,
|
|
1682
|
+
.utrecht-link:hover, .utrecht-link-button:hover,
|
|
1381
1683
|
.utrecht-link--hover,
|
|
1382
|
-
.utrecht-html a:hover
|
|
1684
|
+
.utrecht-html a:hover,
|
|
1685
|
+
.utrecht-link-button--hover {
|
|
1383
1686
|
color: var(--utrecht-link-hover-color, var(--utrecht-link-color));
|
|
1384
1687
|
text-decoration: var(--utrecht-link-hover-text-decoration, var(--utrecht-link-text-decoration, underline));
|
|
1385
1688
|
text-decoration-skip: none;
|
|
@@ -1387,13 +1690,14 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
1387
1690
|
text-decoration-thickness: max(var(--utrecht-link-hover-text-decoration-thickness, var(--utrecht-link-text-decoration-thickness)), 1px);
|
|
1388
1691
|
}
|
|
1389
1692
|
|
|
1390
|
-
.utrecht-link:active,
|
|
1693
|
+
.utrecht-link:active, .utrecht-link-button:active,
|
|
1391
1694
|
.utrecht-link--active,
|
|
1392
|
-
.utrecht-html a:active
|
|
1695
|
+
.utrecht-html a:active,
|
|
1696
|
+
.utrecht-link-button--active {
|
|
1393
1697
|
color: var(--utrecht-link-active-color, var(--utrecht-link-color));
|
|
1394
1698
|
}
|
|
1395
1699
|
|
|
1396
|
-
.utrecht-link--focus, .utrecht-html a:focus, .utrecht-link:focus {
|
|
1700
|
+
.utrecht-link--focus, .utrecht-html a:focus, .utrecht-link:focus, .utrecht-link-button:focus, .utrecht-link-button--focus {
|
|
1397
1701
|
color: var(--utrecht-link-focus-color, var(--utrecht-link-color));
|
|
1398
1702
|
text-decoration: var(--utrecht-link-focus-text-decoration, var(--utrecht-link-text-decoration, underline));
|
|
1399
1703
|
text-decoration-skip: none;
|
|
@@ -1401,7 +1705,7 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
1401
1705
|
text-decoration-thickness: max(var(--utrecht-link-focus-text-decoration-thickness, var(--utrecht-link-text-decoration-thickness)), 1px);
|
|
1402
1706
|
}
|
|
1403
1707
|
|
|
1404
|
-
.utrecht-link--focus-visible, .utrecht-html a:focus, .utrecht-link:focus {
|
|
1708
|
+
.utrecht-link--focus-visible, .utrecht-html a:focus, .utrecht-link:focus, .utrecht-link-button:focus, .utrecht-link-button--focus-visible {
|
|
1405
1709
|
box-shadow: 0 0 0 var(--utrecht-focus-box-shadow-spread-radius, 0) var(--utrecht-focus-box-shadow-color, transparent);
|
|
1406
1710
|
outline-color: var(--utrecht-focus-outline-color, transparent);
|
|
1407
1711
|
outline-offset: var(--utrecht-focus-outline-offset, 0);
|
|
@@ -1409,7 +1713,7 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
1409
1713
|
outline-width: var(--utrecht-focus-outline-width, 0);
|
|
1410
1714
|
}
|
|
1411
1715
|
|
|
1412
|
-
.utrecht-link:focus:not(:focus-visible), .utrecht-html a:focus:not(:focus-visible):link {
|
|
1716
|
+
.utrecht-link:focus:not(:focus-visible), .utrecht-html a:focus:not(:focus-visible):link, .utrecht-link-button:focus:not(:focus-visible) {
|
|
1413
1717
|
/* undo focus ring */
|
|
1414
1718
|
box-shadow: none;
|
|
1415
1719
|
outline-style: none;
|
|
@@ -2809,7 +3113,7 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
2809
3113
|
.utrecht-button, .utrecht-html input[type=button i],
|
|
2810
3114
|
.utrecht-html input[type=reset i],
|
|
2811
3115
|
.utrecht-html input[type=submit i],
|
|
2812
|
-
.utrecht-html button {
|
|
3116
|
+
.utrecht-html button, .utrecht-button-link {
|
|
2813
3117
|
background-color: var(--utrecht-button-primary-action-background-color, var(--utrecht-button-background-color));
|
|
2814
3118
|
border-color: var(--utrecht-button-border-color, transparent);
|
|
2815
3119
|
border-radius: var(--utrecht-button-border-radius);
|
|
@@ -2856,7 +3160,7 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
2856
3160
|
.utrecht-button:disabled, .utrecht-html input[type=button i]:disabled,
|
|
2857
3161
|
.utrecht-html input[type=reset i]:disabled,
|
|
2858
3162
|
.utrecht-html input[type=submit i]:disabled,
|
|
2859
|
-
.utrecht-html button:disabled,
|
|
3163
|
+
.utrecht-html button:disabled, .utrecht-button-link:disabled,
|
|
2860
3164
|
.utrecht-button--disabled,
|
|
2861
3165
|
.utrecht-html button[aria-disabled=true] {
|
|
2862
3166
|
background-color: var(--utrecht-button-disabled-background-color, var(--utrecht-button-background-color));
|
|
@@ -2867,7 +3171,7 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
2867
3171
|
|
|
2868
3172
|
.utrecht-button:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-html input[type=button i]:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
2869
3173
|
.utrecht-html input[type=reset i]:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
2870
|
-
.utrecht-html input[type=submit i]:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
3174
|
+
.utrecht-html input[type=submit i]:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-button-link:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
2871
3175
|
.utrecht-button--active,
|
|
2872
3176
|
.utrecht-html button:active:not([aria-disabled=true]):not(:disabled) {
|
|
2873
3177
|
background-color: var(--utrecht-button-active-background-color, var(--utrecht-button-background-color));
|
|
@@ -2878,7 +3182,7 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
2878
3182
|
.utrecht-button--focus-visible, .utrecht-html button:focus-visible, .utrecht-button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-html input[type=button i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
2879
3183
|
.utrecht-html input[type=reset i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
2880
3184
|
.utrecht-html input[type=submit i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
2881
|
-
.utrecht-html button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled) {
|
|
3185
|
+
.utrecht-html button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-button-link:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-button-link--focus-visible {
|
|
2882
3186
|
/* the pseudo-class for `:focus-visible` is implemented via the mixin */
|
|
2883
3187
|
box-shadow: 0 0 0 var(--utrecht-focus-box-shadow-spread-radius, 0) var(--utrecht-focus-box-shadow-color, transparent);
|
|
2884
3188
|
outline-color: var(--utrecht-focus-outline-color, transparent);
|
|
@@ -2890,7 +3194,7 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
2890
3194
|
.utrecht-button--focus, .utrecht-html button:focus:not([aria-disabled=true]):not(:disabled), .utrecht-button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-html input[type=button i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
2891
3195
|
.utrecht-html input[type=reset i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
2892
3196
|
.utrecht-html input[type=submit i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
2893
|
-
.utrecht-html button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled) {
|
|
3197
|
+
.utrecht-html button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-button-link:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-button-link--focus {
|
|
2894
3198
|
background-color: var(--utrecht-button-focus-background-color, var(--utrecht-button-background-color));
|
|
2895
3199
|
border-color: var(--utrecht-button-focus-border-color, var(--utrecht-button-border-color));
|
|
2896
3200
|
color: var(--utrecht-button-focus-color, var(--utrecht-button-color));
|
|
@@ -2901,17 +3205,18 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
2901
3205
|
.utrecht-button:focus:not(:focus-visible), .utrecht-html input[type=button i]:focus:not(:focus-visible),
|
|
2902
3206
|
.utrecht-html input[type=reset i]:focus:not(:focus-visible),
|
|
2903
3207
|
.utrecht-html input[type=submit i]:focus:not(:focus-visible),
|
|
2904
|
-
.utrecht-html button:focus:not(:focus-visible) {
|
|
3208
|
+
.utrecht-html button:focus:not(:focus-visible), .utrecht-button-link:focus:not(:focus-visible) {
|
|
2905
3209
|
/* undo focus ring */
|
|
2906
3210
|
box-shadow: none;
|
|
2907
3211
|
outline-style: none;
|
|
2908
3212
|
}
|
|
2909
3213
|
|
|
2910
|
-
.utrecht-button--hover:not(:disabled), .utrecht-html button:not(:disabled):hover:not([aria-disabled=true]),
|
|
3214
|
+
.utrecht-button--hover:not(:disabled), .utrecht-html button:not(:disabled):hover:not([aria-disabled=true]), .utrecht-button-link--hover:not(:disabled),
|
|
2911
3215
|
.utrecht-button:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
2912
3216
|
.utrecht-html input[type=button i]:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
2913
3217
|
.utrecht-html input[type=reset i]:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
2914
|
-
.utrecht-html input[type=submit i]:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled)
|
|
3218
|
+
.utrecht-html input[type=submit i]:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
3219
|
+
.utrecht-button-link:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled) {
|
|
2915
3220
|
background-color: var(--utrecht-button-hover-background-color, var(--utrecht-button-background-color));
|
|
2916
3221
|
border-color: var(--utrecht-button-hover-border-color, var(--utrecht-button-border-color));
|
|
2917
3222
|
color: var(--utrecht-button-hover-color, var(--utrecht-button-color));
|
|
@@ -3313,7 +3618,7 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
3313
3618
|
* Copyright (c) 2021 Robbert Broersma
|
|
3314
3619
|
*/
|
|
3315
3620
|
/* stylelint-disable-next-line block-no-empty */
|
|
3316
|
-
.utrecht-button, .utrecht-html input[type=button i],
|
|
3621
|
+
.utrecht-button, .utrecht-button-link, .utrecht-html input[type=button i],
|
|
3317
3622
|
.utrecht-html input[type=reset i],
|
|
3318
3623
|
.utrecht-html input[type=submit i],
|
|
3319
3624
|
.utrecht-html button {
|
|
@@ -3360,7 +3665,7 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
3360
3665
|
cursor: var(--utrecht-action-busy-cursor);
|
|
3361
3666
|
}
|
|
3362
3667
|
|
|
3363
|
-
.utrecht-button:disabled, .utrecht-html input[type=button i]:disabled,
|
|
3668
|
+
.utrecht-button:disabled, .utrecht-button-link:disabled, .utrecht-html input[type=button i]:disabled,
|
|
3364
3669
|
.utrecht-html input[type=reset i]:disabled,
|
|
3365
3670
|
.utrecht-html input[type=submit i]:disabled,
|
|
3366
3671
|
.utrecht-html button:disabled,
|
|
@@ -3372,7 +3677,7 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
3372
3677
|
cursor: var(--utrecht-action-disabled-cursor);
|
|
3373
3678
|
}
|
|
3374
3679
|
|
|
3375
|
-
.utrecht-button:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-html input[type=button i]:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
3680
|
+
.utrecht-button:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-button-link:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-html input[type=button i]:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
3376
3681
|
.utrecht-html input[type=reset i]:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
3377
3682
|
.utrecht-html input[type=submit i]:active:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
3378
3683
|
.utrecht-button--active,
|
|
@@ -3382,7 +3687,7 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
3382
3687
|
color: var(--utrecht-button-active-color, var(--utrecht-button-color));
|
|
3383
3688
|
}
|
|
3384
3689
|
|
|
3385
|
-
.utrecht-button--focus-visible, .utrecht-button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-html input[type=button i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
3690
|
+
.utrecht-button--focus-visible, .utrecht-button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-button-link:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-button-link--focus-visible, .utrecht-html input[type=button i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
3386
3691
|
.utrecht-html input[type=reset i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
3387
3692
|
.utrecht-html input[type=submit i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
3388
3693
|
.utrecht-html button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-html button:focus-visible {
|
|
@@ -3394,7 +3699,7 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
3394
3699
|
outline-width: var(--utrecht-focus-outline-width, 0);
|
|
3395
3700
|
}
|
|
3396
3701
|
|
|
3397
|
-
.utrecht-button--focus, .utrecht-button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-html input[type=button i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
3702
|
+
.utrecht-button--focus, .utrecht-button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-button-link:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-button-link--focus, .utrecht-html input[type=button i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
3398
3703
|
.utrecht-html input[type=reset i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
3399
3704
|
.utrecht-html input[type=submit i]:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
3400
3705
|
.utrecht-html button:focus:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled), .utrecht-html button:focus:not([aria-disabled=true]):not(:disabled) {
|
|
@@ -3405,7 +3710,7 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
3405
3710
|
|
|
3406
3711
|
/* override the `:focus` selector above */
|
|
3407
3712
|
/* stylelint-disable-next-line no-descending-specificity */
|
|
3408
|
-
.utrecht-button:focus:not(:focus-visible), .utrecht-html input[type=button i]:focus:not(:focus-visible),
|
|
3713
|
+
.utrecht-button:focus:not(:focus-visible), .utrecht-button-link:focus:not(:focus-visible), .utrecht-html input[type=button i]:focus:not(:focus-visible),
|
|
3409
3714
|
.utrecht-html input[type=reset i]:focus:not(:focus-visible),
|
|
3410
3715
|
.utrecht-html input[type=submit i]:focus:not(:focus-visible),
|
|
3411
3716
|
.utrecht-html button:focus:not(:focus-visible) {
|
|
@@ -3414,8 +3719,9 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
3414
3719
|
outline-style: none;
|
|
3415
3720
|
}
|
|
3416
3721
|
|
|
3417
|
-
.utrecht-button--hover:not(:disabled), .utrecht-html button:not(:disabled):hover:not([aria-disabled=true]),
|
|
3722
|
+
.utrecht-button--hover:not(:disabled), .utrecht-button-link--hover:not(:disabled), .utrecht-html button:not(:disabled):hover:not([aria-disabled=true]),
|
|
3418
3723
|
.utrecht-button:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
3724
|
+
.utrecht-button-link:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
3419
3725
|
.utrecht-html input[type=button i]:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
3420
3726
|
.utrecht-html input[type=reset i]:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled),
|
|
3421
3727
|
.utrecht-html input[type=submit i]:hover:not(:disabled):not([aria-disabled=true]):not(.utrecht-button--disabled) {
|
|
@@ -3801,7 +4107,7 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
3801
4107
|
`text-decoration-skip` also makes the transition more challenging to implement.
|
|
3802
4108
|
|
|
3803
4109
|
*/
|
|
3804
|
-
.utrecht-link, .utrecht-html a:link {
|
|
4110
|
+
.utrecht-link, .utrecht-html a:link, .utrecht-link-button {
|
|
3805
4111
|
color: var(--utrecht-link-color, blue);
|
|
3806
4112
|
text-decoration: var(--utrecht-link-text-decoration, underline);
|
|
3807
4113
|
text-decoration-skip-ink: all;
|
|
@@ -3819,15 +4125,16 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
3819
4125
|
text-decoration: none;
|
|
3820
4126
|
}
|
|
3821
4127
|
|
|
3822
|
-
.utrecht-link:visited,
|
|
4128
|
+
.utrecht-link:visited, .utrecht-link-button:visited,
|
|
3823
4129
|
.utrecht-link--visited,
|
|
3824
4130
|
.utrecht-html a:visited {
|
|
3825
4131
|
color: var(--utrecht-link-visited-color, var(--utrecht-link-color));
|
|
3826
4132
|
}
|
|
3827
4133
|
|
|
3828
|
-
.utrecht-link:hover,
|
|
4134
|
+
.utrecht-link:hover, .utrecht-link-button:hover,
|
|
3829
4135
|
.utrecht-link--hover,
|
|
3830
|
-
.utrecht-html a:hover
|
|
4136
|
+
.utrecht-html a:hover,
|
|
4137
|
+
.utrecht-link-button--hover {
|
|
3831
4138
|
color: var(--utrecht-link-hover-color, var(--utrecht-link-color));
|
|
3832
4139
|
text-decoration: var(--utrecht-link-hover-text-decoration, var(--utrecht-link-text-decoration, underline));
|
|
3833
4140
|
text-decoration-skip: none;
|
|
@@ -3835,13 +4142,14 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
3835
4142
|
text-decoration-thickness: max(var(--utrecht-link-hover-text-decoration-thickness, var(--utrecht-link-text-decoration-thickness)), 1px);
|
|
3836
4143
|
}
|
|
3837
4144
|
|
|
3838
|
-
.utrecht-link:active,
|
|
4145
|
+
.utrecht-link:active, .utrecht-link-button:active,
|
|
3839
4146
|
.utrecht-link--active,
|
|
3840
|
-
.utrecht-html a:active
|
|
4147
|
+
.utrecht-html a:active,
|
|
4148
|
+
.utrecht-link-button--active {
|
|
3841
4149
|
color: var(--utrecht-link-active-color, var(--utrecht-link-color));
|
|
3842
4150
|
}
|
|
3843
4151
|
|
|
3844
|
-
.utrecht-link--focus, .utrecht-html a:focus, .utrecht-link:focus {
|
|
4152
|
+
.utrecht-link--focus, .utrecht-html a:focus, .utrecht-link:focus, .utrecht-link-button:focus, .utrecht-link-button--focus {
|
|
3845
4153
|
color: var(--utrecht-link-focus-color, var(--utrecht-link-color));
|
|
3846
4154
|
text-decoration: var(--utrecht-link-focus-text-decoration, var(--utrecht-link-text-decoration, underline));
|
|
3847
4155
|
text-decoration-skip: none;
|
|
@@ -3849,7 +4157,7 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
3849
4157
|
text-decoration-thickness: max(var(--utrecht-link-focus-text-decoration-thickness, var(--utrecht-link-text-decoration-thickness)), 1px);
|
|
3850
4158
|
}
|
|
3851
4159
|
|
|
3852
|
-
.utrecht-link--focus-visible, .utrecht-html a:focus, .utrecht-link:focus {
|
|
4160
|
+
.utrecht-link--focus-visible, .utrecht-html a:focus, .utrecht-link:focus, .utrecht-link-button:focus, .utrecht-link-button--focus-visible {
|
|
3853
4161
|
box-shadow: 0 0 0 var(--utrecht-focus-box-shadow-spread-radius, 0) var(--utrecht-focus-box-shadow-color, transparent);
|
|
3854
4162
|
outline-color: var(--utrecht-focus-outline-color, transparent);
|
|
3855
4163
|
outline-offset: var(--utrecht-focus-outline-offset, 0);
|
|
@@ -3857,7 +4165,7 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
3857
4165
|
outline-width: var(--utrecht-focus-outline-width, 0);
|
|
3858
4166
|
}
|
|
3859
4167
|
|
|
3860
|
-
.utrecht-link:focus:not(:focus-visible), .utrecht-html a:focus:not(:focus-visible):link {
|
|
4168
|
+
.utrecht-link:focus:not(:focus-visible), .utrecht-html a:focus:not(:focus-visible):link, .utrecht-link-button:focus:not(:focus-visible) {
|
|
3861
4169
|
/* undo focus ring */
|
|
3862
4170
|
box-shadow: none;
|
|
3863
4171
|
outline-style: none;
|
|
@@ -4511,7 +4819,7 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
4511
4819
|
`text-decoration-skip` also makes the transition more challenging to implement.
|
|
4512
4820
|
|
|
4513
4821
|
*/
|
|
4514
|
-
.utrecht-link, .utrecht-html a:link {
|
|
4822
|
+
.utrecht-link, .utrecht-link-button, .utrecht-html a:link {
|
|
4515
4823
|
color: var(--utrecht-link-color, blue);
|
|
4516
4824
|
text-decoration: var(--utrecht-link-text-decoration, underline);
|
|
4517
4825
|
text-decoration-skip-ink: all;
|
|
@@ -4529,14 +4837,15 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
4529
4837
|
text-decoration: none;
|
|
4530
4838
|
}
|
|
4531
4839
|
|
|
4532
|
-
.utrecht-link:visited,
|
|
4840
|
+
.utrecht-link:visited, .utrecht-link-button:visited,
|
|
4533
4841
|
.utrecht-link--visited,
|
|
4534
4842
|
.utrecht-html a:visited {
|
|
4535
4843
|
color: var(--utrecht-link-visited-color, var(--utrecht-link-color));
|
|
4536
4844
|
}
|
|
4537
4845
|
|
|
4538
|
-
.utrecht-link:hover,
|
|
4846
|
+
.utrecht-link:hover, .utrecht-link-button:hover,
|
|
4539
4847
|
.utrecht-link--hover,
|
|
4848
|
+
.utrecht-link-button--hover,
|
|
4540
4849
|
.utrecht-html a:hover {
|
|
4541
4850
|
color: var(--utrecht-link-hover-color, var(--utrecht-link-color));
|
|
4542
4851
|
text-decoration: var(--utrecht-link-hover-text-decoration, var(--utrecht-link-text-decoration, underline));
|
|
@@ -4545,13 +4854,14 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
4545
4854
|
text-decoration-thickness: max(var(--utrecht-link-hover-text-decoration-thickness, var(--utrecht-link-text-decoration-thickness)), 1px);
|
|
4546
4855
|
}
|
|
4547
4856
|
|
|
4548
|
-
.utrecht-link:active,
|
|
4857
|
+
.utrecht-link:active, .utrecht-link-button:active,
|
|
4549
4858
|
.utrecht-link--active,
|
|
4859
|
+
.utrecht-link-button--active,
|
|
4550
4860
|
.utrecht-html a:active {
|
|
4551
4861
|
color: var(--utrecht-link-active-color, var(--utrecht-link-color));
|
|
4552
4862
|
}
|
|
4553
4863
|
|
|
4554
|
-
.utrecht-link--focus, .utrecht-link:focus, .utrecht-html a:focus {
|
|
4864
|
+
.utrecht-link--focus, .utrecht-link:focus, .utrecht-link-button:focus, .utrecht-link-button--focus, .utrecht-html a:focus {
|
|
4555
4865
|
color: var(--utrecht-link-focus-color, var(--utrecht-link-color));
|
|
4556
4866
|
text-decoration: var(--utrecht-link-focus-text-decoration, var(--utrecht-link-text-decoration, underline));
|
|
4557
4867
|
text-decoration-skip: none;
|
|
@@ -4559,7 +4869,7 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
4559
4869
|
text-decoration-thickness: max(var(--utrecht-link-focus-text-decoration-thickness, var(--utrecht-link-text-decoration-thickness)), 1px);
|
|
4560
4870
|
}
|
|
4561
4871
|
|
|
4562
|
-
.utrecht-link--focus-visible, .utrecht-link:focus, .utrecht-html a:focus {
|
|
4872
|
+
.utrecht-link--focus-visible, .utrecht-link:focus, .utrecht-link-button:focus, .utrecht-link-button--focus-visible, .utrecht-html a:focus {
|
|
4563
4873
|
box-shadow: 0 0 0 var(--utrecht-focus-box-shadow-spread-radius, 0) var(--utrecht-focus-box-shadow-color, transparent);
|
|
4564
4874
|
outline-color: var(--utrecht-focus-outline-color, transparent);
|
|
4565
4875
|
outline-offset: var(--utrecht-focus-outline-offset, 0);
|
|
@@ -4567,7 +4877,7 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
4567
4877
|
outline-width: var(--utrecht-focus-outline-width, 0);
|
|
4568
4878
|
}
|
|
4569
4879
|
|
|
4570
|
-
.utrecht-link:focus:not(:focus-visible), .utrecht-html a:focus:not(:focus-visible):link {
|
|
4880
|
+
.utrecht-link:focus:not(:focus-visible), .utrecht-link-button:focus:not(:focus-visible), .utrecht-html a:focus:not(:focus-visible):link {
|
|
4571
4881
|
/* undo focus ring */
|
|
4572
4882
|
box-shadow: none;
|
|
4573
4883
|
outline-style: none;
|
|
@@ -5234,7 +5544,7 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
5234
5544
|
/* Collection of CSS variables for Utrecht theme applied to `:root` */
|
|
5235
5545
|
/**
|
|
5236
5546
|
* Do not edit directly
|
|
5237
|
-
* Generated on Sat, 14 May 2022
|
|
5547
|
+
* Generated on Sat, 14 May 2022 13:56:55 GMT
|
|
5238
5548
|
*/
|
|
5239
5549
|
.utrecht-theme {
|
|
5240
5550
|
--denhaag-process-steps-sub-step-heading-font-weight: utrecht.typography.weight-scale.normal.font-weight;
|
|
@@ -5580,6 +5890,7 @@ however browsers don't seem to have implemented great looking supixel tweening y
|
|
|
5580
5890
|
--utrecht-space-block-3xs: 2px;
|
|
5581
5891
|
/* Extra Small 3 */
|
|
5582
5892
|
--utrecht-action-submit-cursor: pointer;
|
|
5893
|
+
--utrecht-action-navigate-cursor: pointer;
|
|
5583
5894
|
--utrecht-action-disabled-cursor: not-allowed;
|
|
5584
5895
|
--utrecht-action-busy-cursor: wait;
|
|
5585
5896
|
--utrecht-button-focus-transform-scale: 1.02;
|
package/dist/root-theme.css
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
/* Collection of CSS variables for Utrecht theme applied to `:root` */
|
|
6
6
|
/**
|
|
7
7
|
* Do not edit directly
|
|
8
|
-
* Generated on Sat, 14 May 2022
|
|
8
|
+
* Generated on Sat, 14 May 2022 13:56:55 GMT
|
|
9
9
|
*/
|
|
10
10
|
.utrecht-theme {
|
|
11
11
|
--denhaag-process-steps-sub-step-heading-font-weight: utrecht.typography.weight-scale.normal.font-weight;
|
|
@@ -351,6 +351,7 @@
|
|
|
351
351
|
--utrecht-space-block-3xs: 2px;
|
|
352
352
|
/* Extra Small 3 */
|
|
353
353
|
--utrecht-action-submit-cursor: pointer;
|
|
354
|
+
--utrecht-action-navigate-cursor: pointer;
|
|
354
355
|
--utrecht-action-disabled-cursor: not-allowed;
|
|
355
356
|
--utrecht-action-busy-cursor: wait;
|
|
356
357
|
--utrecht-button-focus-transform-scale: 1.02;
|
package/package.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "1.0.0-alpha.
|
|
2
|
+
"version": "1.0.0-alpha.209",
|
|
3
3
|
"author": "Community for NL Design System",
|
|
4
4
|
"description": "Component library bundle for the Municipality of Utrecht based on the NL Design System architecture",
|
|
5
5
|
"license": "EUPL-1.2",
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
"url": "git@github.com:nl-design-system/utrecht.git"
|
|
17
17
|
},
|
|
18
18
|
"devDependencies": {
|
|
19
|
-
"@utrecht/design-tokens": "1.0.0-alpha.
|
|
19
|
+
"@utrecht/design-tokens": "1.0.0-alpha.202",
|
|
20
20
|
"node-sass-package-importer": "5.3.2",
|
|
21
21
|
"rimraf": "3.0.2",
|
|
22
22
|
"sass": "1.50.1"
|
|
@@ -26,5 +26,5 @@
|
|
|
26
26
|
"build": "sass src/:dist/ --load-path=../../node_modules/ --no-source-map",
|
|
27
27
|
"clean": "rimraf dist/"
|
|
28
28
|
},
|
|
29
|
-
"gitHead": "
|
|
29
|
+
"gitHead": "2cf2c1bc155fc767995dedf10f623a4dc5eb6c81"
|
|
30
30
|
}
|
package/src/bem.scss
CHANGED
|
@@ -25,6 +25,7 @@
|
|
|
25
25
|
@import "../../../components/breadcrumb/css";
|
|
26
26
|
@import "../../../components/button/bem";
|
|
27
27
|
@import "../../../components/button-group/css";
|
|
28
|
+
@import "../../../components/button-link/css";
|
|
28
29
|
@import "../../../components/checkbox/css";
|
|
29
30
|
@import "../../../components/custom-checkbox/css";
|
|
30
31
|
@import "../../../components/digid-button/css";
|
|
@@ -47,6 +48,7 @@
|
|
|
47
48
|
@import "../../../components/heading-5/bem";
|
|
48
49
|
@import "../../../components/heading-6/bem";
|
|
49
50
|
@import "../../../components/link-list/css";
|
|
51
|
+
@import "../../../components/link-button/css";
|
|
50
52
|
@import "../../../components/link-social/css";
|
|
51
53
|
@import "../../../components/link/css";
|
|
52
54
|
@import "../../../components/logo-button/css";
|