@amsterdam/design-system-css 0.1.9 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +41 -0
- package/LICENSE.md +1 -1
- package/dist/accordion/accordion.css +1 -1
- package/dist/accordion/accordion.css.map +1 -1
- package/dist/alert/alert.css +1 -1
- package/dist/alert/alert.css.map +1 -1
- package/dist/aspect-ratio/aspect-ratio.css.map +1 -1
- package/dist/blockquote/blockquote.css +1 -1
- package/dist/blockquote/blockquote.css.map +1 -1
- package/dist/breadcrumb/breadcrumb.css +1 -1
- package/dist/breadcrumb/breadcrumb.css.map +1 -1
- package/dist/button/button.css +1 -1
- package/dist/button/button.css.map +1 -1
- package/dist/card/card.css +1 -1
- package/dist/card/card.css.map +1 -1
- package/dist/checkbox/checkbox.css +1 -1
- package/dist/checkbox/checkbox.css.map +1 -1
- package/dist/dialog/dialog.css +1 -1
- package/dist/dialog/dialog.css.map +1 -1
- package/dist/form-label/form-label.css +1 -1
- package/dist/form-label/form-label.css.map +1 -1
- package/dist/grid/grid.css +1 -1
- package/dist/grid/grid.css.map +1 -1
- package/dist/header/header.css +1 -0
- package/dist/header/header.css.map +1 -0
- package/dist/heading/heading.css +1 -1
- package/dist/heading/heading.css.map +1 -1
- package/dist/icon/icon.css +1 -1
- package/dist/icon/icon.css.map +1 -1
- package/dist/image/image.css +1 -1
- package/dist/image/image.css.map +1 -1
- package/dist/index.css +1 -1
- package/dist/index.css.map +1 -1
- package/dist/link/link.css +1 -1
- package/dist/link/link.css.map +1 -1
- package/dist/logo/logo.css +1 -1
- package/dist/logo/logo.css.map +1 -1
- package/dist/mark/mark.css +1 -0
- package/dist/mark/mark.css.map +1 -0
- package/dist/ordered-list/ordered-list.css +1 -1
- package/dist/ordered-list/ordered-list.css.map +1 -1
- package/dist/overlap/overlap.css +1 -0
- package/dist/overlap/overlap.css.map +1 -0
- package/dist/page-heading/page-heading.css +1 -1
- package/dist/page-heading/page-heading.css.map +1 -1
- package/dist/page-menu/page-menu.css +1 -1
- package/dist/page-menu/page-menu.css.map +1 -1
- package/dist/pagination/pagination.css +1 -1
- package/dist/pagination/pagination.css.map +1 -1
- package/dist/paragraph/paragraph.css +1 -1
- package/dist/paragraph/paragraph.css.map +1 -1
- package/dist/screen/screen.css.map +1 -1
- package/dist/search-field/search-field.css +1 -0
- package/dist/search-field/search-field.css.map +1 -0
- package/dist/skip-link/skip-link.css +1 -0
- package/dist/skip-link/skip-link.css.map +1 -0
- package/dist/spotlight/spotlight.css +1 -0
- package/dist/spotlight/spotlight.css.map +1 -0
- package/dist/switch/switch.css.map +1 -1
- package/dist/text-input/text-input.css +1 -0
- package/dist/text-input/text-input.css.map +1 -0
- package/dist/top-task-link/top-task-link.css +1 -1
- package/dist/top-task-link/top-task-link.css.map +1 -1
- package/dist/unordered-list/unordered-list.css +1 -1
- package/dist/unordered-list/unordered-list.css.map +1 -1
- package/dist/visually-hidden/visually-hidden.css +1 -1
- package/dist/visually-hidden/visually-hidden.css.map +1 -1
- package/package.json +6 -6
- package/{utils → src/common}/breakpoint.scss +0 -6
- package/src/{accordion → components/accordion}/accordion.scss +5 -6
- package/src/{alert → components/alert}/alert.scss +5 -6
- package/src/{blockquote → components/blockquote}/blockquote.scss +5 -6
- package/src/components/breadcrumb/breadcrumb.scss +57 -0
- package/src/{button → components/button}/button.scss +8 -7
- package/src/components/card/README.md +25 -0
- package/src/{card → components/card}/card.scss +4 -4
- package/src/{checkbox → components/checkbox}/checkbox.scss +11 -12
- package/src/{dialog → components/dialog}/dialog.scss +6 -6
- package/src/{form-label → components/form-label}/form-label.scss +7 -8
- package/src/components/grid/README.md +21 -0
- package/src/{grid → components/grid}/grid.scss +54 -6
- package/src/components/header/README.md +14 -0
- package/src/components/header/header.scss +85 -0
- package/src/components/heading/heading.scss +84 -0
- package/src/components/icon/icon.scss +87 -0
- package/src/{image → components/image}/README.md +6 -1
- package/src/{image → components/image}/image.scss +4 -0
- package/src/{index.scss → components/index.scss} +7 -2
- package/src/{link → components/link}/link.scss +18 -26
- package/src/{logo → components/logo}/logo.scss +1 -0
- package/src/components/mark/README.md +18 -0
- package/src/components/mark/mark.scss +8 -0
- package/src/{ordered-list → components/ordered-list}/ordered-list.scss +7 -8
- package/src/components/overlap/README.md +3 -0
- package/src/components/overlap/overlap.scss +12 -0
- package/src/{page-heading → components/page-heading}/page-heading.scss +7 -8
- package/src/{page-menu → components/page-menu}/README.md +2 -0
- package/src/{page-menu → components/page-menu}/page-menu.scss +16 -27
- package/src/{pagination → components/pagination}/pagination.scss +9 -9
- package/src/components/paragraph/paragraph.scss +49 -0
- package/src/{screen → components/screen}/README.md +1 -1
- package/src/components/search-field/README.md +33 -0
- package/src/components/search-field/search-field.scss +81 -0
- package/src/components/skip-link/README.md +33 -0
- package/src/components/skip-link/skip-link.scss +28 -0
- package/src/{highlight → components/spotlight}/README.md +1 -1
- package/src/components/spotlight/spotlight.scss +36 -0
- package/src/components/text-input/README.md +12 -0
- package/src/components/text-input/text-input.scss +57 -0
- package/src/{top-task-link → components/top-task-link}/top-task-link.scss +13 -12
- package/src/{unordered-list → components/unordered-list}/unordered-list.scss +7 -8
- package/src/{visually-hidden → components/visually-hidden}/visually-hidden.scss +4 -6
- package/dist/grid/grid-cell.css +0 -1
- package/dist/grid/grid-cell.css.map +0 -1
- package/dist/highlight/highlight.css +0 -1
- package/dist/highlight/highlight.css.map +0 -1
- package/src/breadcrumb/breadcrumb.scss +0 -68
- package/src/card/README.md +0 -12
- package/src/grid/README.grid-cell.md +0 -14
- package/src/grid/README.grid.md +0 -17
- package/src/grid/grid-cell.scss +0 -46
- package/src/heading/heading.scss +0 -62
- package/src/highlight/highlight.scss +0 -36
- package/src/icon/icon.scss +0 -104
- package/src/paragraph/paragraph.scss +0 -48
- /package/{utils → src/common}/calculate-fluid-style.scss +0 -0
- /package/src/{accordion → components/accordion}/README.md +0 -0
- /package/src/{alert → components/alert}/README.md +0 -0
- /package/src/{aspect-ratio → components/aspect-ratio}/README.md +0 -0
- /package/src/{aspect-ratio → components/aspect-ratio}/aspect-ratio.scss +0 -0
- /package/src/{blockquote → components/blockquote}/README.md +0 -0
- /package/src/{breadcrumb → components/breadcrumb}/README.md +0 -0
- /package/src/{button → components/button}/README.md +0 -0
- /package/src/{button → components/button}/button-css.md +0 -0
- /package/src/{checkbox → components/checkbox}/README.md +0 -0
- /package/src/{checkbox → components/checkbox}/checkbox-css.md +0 -0
- /package/src/{dialog → components/dialog}/README.md +0 -0
- /package/src/{footer → components/footer}/README.md +0 -0
- /package/src/{footer → components/footer}/footer-css.md +0 -0
- /package/src/{form-label → components/form-label}/README.md +0 -0
- /package/src/{heading → components/heading}/README.md +0 -0
- /package/src/{heading → components/heading}/heading-css.md +0 -0
- /package/src/{icon → components/icon}/README.md +0 -0
- /package/src/{link → components/link}/README.md +0 -0
- /package/src/{logo → components/logo}/README.md +0 -0
- /package/src/{ordered-list → components/ordered-list}/README.md +0 -0
- /package/src/{page-heading → components/page-heading}/README.md +0 -0
- /package/src/{pagination → components/pagination}/README.md +0 -0
- /package/src/{paragraph → components/paragraph}/README.md +0 -0
- /package/src/{paragraph → components/paragraph}/paragraph-css.md +0 -0
- /package/src/{screen → components/screen}/screen.scss +0 -0
- /package/src/{switch → components/switch}/README.md +0 -0
- /package/src/{switch → components/switch}/switch.scss +0 -0
- /package/src/{top-task-link → components/top-task-link}/README.md +0 -0
- /package/src/{unordered-list → components/unordered-list}/README.md +0 -0
- /package/src/{visually-hidden → components/visually-hidden}/README.md +0 -0
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license EUPL-1.2+
|
|
3
|
+
* Copyright (c) 2023 Gemeente Amsterdam
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
@mixin reset {
|
|
7
|
+
box-sizing: border-box;
|
|
8
|
+
margin-block: 0;
|
|
9
|
+
-webkit-text-size-adjust: 100%;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.amsterdam-paragraph {
|
|
13
|
+
color: var(--amsterdam-paragraph-color);
|
|
14
|
+
font-family: var(--amsterdam-paragraph-font-family);
|
|
15
|
+
font-size: var(--amsterdam-paragraph-spacious-medium-font-size);
|
|
16
|
+
font-weight: var(--amsterdam-paragraph-font-weight);
|
|
17
|
+
line-height: var(--amsterdam-paragraph-spacious-medium-line-height);
|
|
18
|
+
|
|
19
|
+
@include reset;
|
|
20
|
+
|
|
21
|
+
.amsterdam-theme--compact & {
|
|
22
|
+
font-size: var(--amsterdam-paragraph-compact-medium-font-size);
|
|
23
|
+
line-height: var(--amsterdam-paragraph-compact-medium-line-height);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.amsterdam-paragraph--small {
|
|
28
|
+
font-size: var(--amsterdam-paragraph-spacious-small-font-size);
|
|
29
|
+
line-height: var(--amsterdam-paragraph-spacious-small-line-height);
|
|
30
|
+
|
|
31
|
+
.amsterdam-theme--compact & {
|
|
32
|
+
font-size: var(--amsterdam-paragraph-compact-small-font-size);
|
|
33
|
+
line-height: var(--amsterdam-paragraph-compact-small-line-height);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.amsterdam-paragraph--large {
|
|
38
|
+
font-size: var(--amsterdam-paragraph-spacious-large-font-size);
|
|
39
|
+
line-height: var(--amsterdam-paragraph-spacious-large-line-height);
|
|
40
|
+
|
|
41
|
+
.amsterdam-theme--compact & {
|
|
42
|
+
font-size: var(--amsterdam-paragraph-compact-large-font-size);
|
|
43
|
+
line-height: var(--amsterdam-paragraph-compact-large-line-height);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.amsterdam-paragraph--inverse-color {
|
|
48
|
+
color: var(--amsterdam-paragraph-inverse-color);
|
|
49
|
+
}
|
|
@@ -9,7 +9,7 @@ Daarbinnen combineer je componenten als
|
|
|
9
9
|
[Grid](?path=/docs/react_layout-grid--docs),
|
|
10
10
|
Header,
|
|
11
11
|
[Footer](?path=/docs/react_containers-footer--docs),
|
|
12
|
-
[
|
|
12
|
+
[Spotlight](?path=/docs/react_containers-spotlight--docs)
|
|
13
13
|
en Figure.
|
|
14
14
|
|
|
15
15
|
## Ontwerp
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# Search Field
|
|
2
|
+
|
|
3
|
+
Met een Search Field (in het Nederlands: zoekveld) kunnen gebruikers snel relevante inhoud vinden. Een gebruiker voert een (deel van een) woord of zin in om daarmee inhoud te doorzoeken.
|
|
4
|
+
|
|
5
|
+
## Richtlijnen
|
|
6
|
+
|
|
7
|
+
- Je kunt een zoekactie starten door de zoekknop of de Enter-toets te gebruiken.
|
|
8
|
+
- Als er geen zoekterm is ingevuld kan geen zoekactie gestart worden.
|
|
9
|
+
|
|
10
|
+
## Autofocus
|
|
11
|
+
|
|
12
|
+
Je kunt `autofocus` gebruiken om de focus gelijk in een zoekveld te plaatsen als de gebruiker op een pagina komt.
|
|
13
|
+
Wees hier wel voorzichtig mee, dit kan negatieve gevolgen hebben:
|
|
14
|
+
|
|
15
|
+
- Voor gebruikers van een schermlezer kan dit betekenen dat ze belangrijk inhoud boven het zoekveld overslaan.
|
|
16
|
+
- Op kleinere apparaten kan het gebruik van `autofocus` er voor zorgen dat de pagina automatisch naar het zoekveld scrollt, waardoor je eerdere inhoud kan missen.
|
|
17
|
+
- Op apparaten met touchscreen kan dit ervoor zorgen dat het toetsenbord gelijk wordt getoond, waardoor belangrijke inhoud verborgen wordt.
|
|
18
|
+
|
|
19
|
+
Gebruik `autofocus` alleen als het zoekveld aan het begin van een pagina staat, en er geen andere elementen op een pagina staan waar een gebruiker misschien eerst gebruik van wil maken.
|
|
20
|
+
|
|
21
|
+
Voor meer informatie: [Accessibility Tips: Be Cautious When Using Autofocus](https://www.boia.org/blog/accessibility-tips-be-cautious-when-using-autofocus)
|
|
22
|
+
|
|
23
|
+
## Autocomplete en spellcheck
|
|
24
|
+
|
|
25
|
+
`autocomplete` en `spellcheck` staan standaard uit. Deze functies kunnen vervelend zijn voor een gebruiker die zoekt op een deel van een woord, en `autocomplete` kan in de weg zitten van een Autosuggest component.
|
|
26
|
+
|
|
27
|
+
## Relevante WCAG eisen
|
|
28
|
+
|
|
29
|
+
- [WCAG 1.3.1](https://www.w3.org/TR/WCAG22/#info-and-relationships): `role="search"` wordt gebruikt voor de search landmark role.
|
|
30
|
+
- [WCAG 1.3.5](https://www.w3.org/TR/WCAG22/#identify-input-purpose): het is zowel voor een gebruiker als programmatisch duidelijk wat het doel van een formulierveld is.
|
|
31
|
+
- [WCAG 2.4.6](https://www.w3.org/TR/WCAG22/#headings-and-labels): er is een label dat het doel van de input beschrijft.
|
|
32
|
+
|
|
33
|
+
Search Field is een interactief element, hier gelden [de algemene eisen en richtlijnen voor interactieve elementen](https://amsterdam.github.io/design-system/?path=/docs/docs-designrichtlijnen-interactieve-elementen--docs) voor.
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license EUPL-1.2+
|
|
3
|
+
* Copyright (c) 2023 Gemeente Amsterdam
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
.amsterdam-search-field {
|
|
7
|
+
display: flex;
|
|
8
|
+
isolation: isolate; // create new stacking context, so the input's z-index doesn't escape the component
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
@mixin reset {
|
|
12
|
+
box-sizing: border-box;
|
|
13
|
+
margin-block: 0;
|
|
14
|
+
-webkit-text-size-adjust: 100%;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.amsterdam-search-field__input {
|
|
18
|
+
border: none;
|
|
19
|
+
box-shadow: var(--amsterdam-search-field-input-box-shadow);
|
|
20
|
+
color: var(--amsterdam-search-field-input-color);
|
|
21
|
+
font-family: var(--amsterdam-search-field-input-font-family);
|
|
22
|
+
font-size: var(--amsterdam-search-field-input-spacious-font-size);
|
|
23
|
+
font-weight: var(--amsterdam-search-field-input-font-weight);
|
|
24
|
+
line-height: var(--amsterdam-search-field-input-spacious-line-height);
|
|
25
|
+
outline-offset: var(--amsterdam-search-field-input-outline-offset);
|
|
26
|
+
padding-block: 0.5rem;
|
|
27
|
+
padding-inline: 1rem;
|
|
28
|
+
touch-action: manipulation;
|
|
29
|
+
width: 100%;
|
|
30
|
+
|
|
31
|
+
@include reset;
|
|
32
|
+
|
|
33
|
+
.amsterdam-theme--compact & {
|
|
34
|
+
font-size: var(--amsterdam-search-field-input-compact-font-size);
|
|
35
|
+
line-height: var(--amsterdam-search-field-input-compact-line-height);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
&:hover {
|
|
39
|
+
box-shadow: var(--amsterdam-search-field-input-hover-box-shadow);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
&:focus {
|
|
43
|
+
z-index: 1; // Make sure the focus outline isn't cut off by the adjacent button
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.amsterdam-search-field__input::placeholder {
|
|
48
|
+
color: var(--amsterdam-search-field-input-placeholder-color);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
.amsterdam-search-field__input::-webkit-search-cancel-button {
|
|
52
|
+
appearance: none;
|
|
53
|
+
background-image: var(--amsterdam-search-field-input-cancel-button-background-image);
|
|
54
|
+
cursor: pointer;
|
|
55
|
+
height: var(--amsterdam-search-field-input-cancel-button-height);
|
|
56
|
+
margin-inline-start: 0.5rem;
|
|
57
|
+
width: var(--amsterdam-search-field-input-cancel-button-width);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
.amsterdam-search-field__button {
|
|
61
|
+
background-color: var(--amsterdam-search-field-button-background-color);
|
|
62
|
+
border: 0;
|
|
63
|
+
color: var(--amsterdam-search-field-button-color);
|
|
64
|
+
cursor: pointer;
|
|
65
|
+
outline-offset: var(--amsterdam-search-field-button-outline-offset);
|
|
66
|
+
padding-block: 0.5rem;
|
|
67
|
+
padding-inline: 0.5rem;
|
|
68
|
+
touch-action: manipulation;
|
|
69
|
+
|
|
70
|
+
span {
|
|
71
|
+
display: flex;
|
|
72
|
+
justify-content: center;
|
|
73
|
+
|
|
74
|
+
// use icon tokens to set width equal to height
|
|
75
|
+
width: calc(var(--amsterdam-icon-spacious-size-6-font-size) * var(--amsterdam-icon-spacious-size-6-line-height));
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
&:hover {
|
|
79
|
+
background-color: var(--amsterdam-search-field-button-hover-background-color);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# Skip Link
|
|
2
|
+
|
|
3
|
+
Gebruik een Skip Link om makkelijk met het toetsenbord naar de belangrijkste inhoud te navigeren.
|
|
4
|
+
Met een Skip Link kun je terugkerende navigatieblokken (zoals het hoofdmenu of het kruimelpad) overslaan.
|
|
5
|
+
|
|
6
|
+
De Skip Link staat boven de header.
|
|
7
|
+
De link is verborgen totdat deze met de tab-toets geactiveerd wordt.
|
|
8
|
+
Als de link getoond wordt, duwt deze de hele pagina omlaag.
|
|
9
|
+
|
|
10
|
+
## Richtlijnen
|
|
11
|
+
|
|
12
|
+
### Zo gebruiken
|
|
13
|
+
|
|
14
|
+
- Plaats de Skip Link als eerste element in `<body>`, tenzij je een cookie-banner hebt.
|
|
15
|
+
Plaats de Skip Link dan direct na de cookie-banner.
|
|
16
|
+
- Gebruik de Skip Link om naar de belangrijkste inhoud te navigeren.
|
|
17
|
+
Op een artikelpagina is dat bijvoorbeeld de titel van het artikel, op een zoekpagina is dat het zoekveld.
|
|
18
|
+
- Voor complexe pagina's met meerdere secties kun je meer dan 1 Skip Link gebruiken.
|
|
19
|
+
In de meeste gevallen is dit niet nodig.
|
|
20
|
+
|
|
21
|
+
### Dit vermijden
|
|
22
|
+
|
|
23
|
+
- Skip Links zijn niet nodig op een simpele pagina waar alleen tekst staat en weinig navigatie.
|
|
24
|
+
Het doel van een Skip Link is om terugkerende navigatieblokken over te slaan.
|
|
25
|
+
Als die blokken er niet zijn, is een Skip Link niet nodig.
|
|
26
|
+
- Plaats de Skip Link niet in een `nav` regio, of in de Header.
|
|
27
|
+
|
|
28
|
+
## Relevante WCAG eisen
|
|
29
|
+
|
|
30
|
+
- Voor dit component gelden dezelfde WCAG eisen als voor [het link component](https://amsterdam.github.io/design-system/?path=/docs/react_navigation-link--docs).
|
|
31
|
+
- [WCAG 2.4.1](https://www.w3.org/TR/WCAG22/#bypass-blocks): gebruik een Skip Link op elke pagina die begint met een terugkerend navigatieblok.
|
|
32
|
+
- [WCAG 3.2.3](https://www.w3.org/TR/WCAG22/#consistent-navigation): een Skip Link staat op elke pagina op dezelfde plek.
|
|
33
|
+
- [WCAG 3.2.4](https://www.w3.org/TR/WCAG22/#consistent-identification): een Skip Link heeft dezelfde labels op alle pagina's. Bijvoorbeeld niet: "Navigatie overslaan" op een gedeelte van de site, en "Naar de inhoud" op andere pagina's.
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license EUPL-1.2+
|
|
3
|
+
* Copyright (c) 2023 Gemeente Amsterdam
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
.amsterdam-skip-link {
|
|
7
|
+
background-color: var(--amsterdam-skip-link-background-color);
|
|
8
|
+
color: var(--amsterdam-skip-link-color);
|
|
9
|
+
display: block;
|
|
10
|
+
font-family: var(--amsterdam-skip-link-font-family);
|
|
11
|
+
font-size: var(--amsterdam-skip-link-font-size);
|
|
12
|
+
font-weight: var(--amsterdam-skip-link-font-weight);
|
|
13
|
+
line-height: var(--amsterdam-skip-link-line-height);
|
|
14
|
+
outline-offset: var(--amsterdam-skip-link-outline-offset);
|
|
15
|
+
padding-block: 0.5rem;
|
|
16
|
+
padding-inline: 1rem;
|
|
17
|
+
text-align: center;
|
|
18
|
+
text-decoration: none;
|
|
19
|
+
|
|
20
|
+
&:hover {
|
|
21
|
+
background-color: var(--amsterdam-skip-link-hover-background-color);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.amsterdam-theme--compact & {
|
|
25
|
+
font-size: var(--amsterdam-skip-link-compact-font-size);
|
|
26
|
+
line-height: var(--amsterdam-skip-link-compact-line-height);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license EUPL-1.2+
|
|
3
|
+
* Copyright (c) 2023 Gemeente Amsterdam
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
.amsterdam-spotlight--blue {
|
|
7
|
+
background-color: var(--amsterdam-spotlight-blue-background-color);
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.amsterdam-spotlight--dark-green {
|
|
11
|
+
background-color: var(--amsterdam-spotlight-dark-green-background-color);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.amsterdam-spotlight--green {
|
|
15
|
+
background-color: var(--amsterdam-spotlight-green-background-color);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.amsterdam-spotlight--light-blue {
|
|
19
|
+
background-color: var(--amsterdam-spotlight-light-blue-background-color);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.amsterdam-spotlight--magenta {
|
|
23
|
+
background-color: var(--amsterdam-spotlight-magenta-background-color);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
.amsterdam-spotlight--orange {
|
|
27
|
+
background-color: var(--amsterdam-spotlight-orange-background-color);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.amsterdam-spotlight--purple {
|
|
31
|
+
background-color: var(--amsterdam-spotlight-purple-background-color);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
.amsterdam-spotlight--yellow {
|
|
35
|
+
background-color: var(--amsterdam-spotlight-yellow-background-color);
|
|
36
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# Text Input
|
|
2
|
+
|
|
3
|
+
Text input is een veld van een formulier waar een gebruiker tekst kan invoeren.
|
|
4
|
+
|
|
5
|
+
## Richtlijnen
|
|
6
|
+
|
|
7
|
+
- Gebruik een Text input als gebruikers tekst in moeten voeren die niet langer is dan 1 regel, zoals hun naam of telefoonnummer.
|
|
8
|
+
- Gebruik een Text input niet als gebruikers meer dan 1 zin moeten invullen.
|
|
9
|
+
- De breedte van de Text input moet passend zijn bij de informatie die ingevuld moet worden.
|
|
10
|
+
- Een Text input moet een label hebben, en in de meeste gevallen moet dit label zichtbaar zijn.
|
|
11
|
+
- Gebruik `spellcheck="false"` voor velden die gevoelige informatie kunnen bevatten, zoals wachtwoorden en persoonsgegevens. Sommige browser extensies voor spellingcontrole sturen deze informatie naar externe servers.
|
|
12
|
+
- Pas waar mogelijk automatische hulp toe. Bij ingelogde systemen is bijvoorbeeld invoer vooraf in te vullen om fouten te voorkomen en tijd te besparen.
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license EUPL-1.2+
|
|
3
|
+
* Copyright (c) 2023 Gemeente Amsterdam
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
@mixin reset {
|
|
7
|
+
box-sizing: border-box;
|
|
8
|
+
margin-block: 0;
|
|
9
|
+
-webkit-text-size-adjust: 100%;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.amsterdam-text-input {
|
|
13
|
+
border: none;
|
|
14
|
+
box-shadow: var(--amsterdam-text-input-box-shadow);
|
|
15
|
+
color: var(--amsterdam-text-input-color);
|
|
16
|
+
font-family: var(--amsterdam-text-input-font-family);
|
|
17
|
+
font-size: var(--amsterdam-text-input-spacious-font-size);
|
|
18
|
+
font-weight: var(--amsterdam-text-input-font-weight);
|
|
19
|
+
line-height: var(--amsterdam-text-input-spacious-line-height);
|
|
20
|
+
outline-offset: var(--amsterdam-text-input-outline-offset);
|
|
21
|
+
padding-block: 0.5rem;
|
|
22
|
+
padding-inline: 1rem;
|
|
23
|
+
touch-action: manipulation;
|
|
24
|
+
width: 100%;
|
|
25
|
+
|
|
26
|
+
@include reset;
|
|
27
|
+
|
|
28
|
+
.amsterdam-theme--compact & {
|
|
29
|
+
font-size: var(--amsterdam-text-input-compact-font-size);
|
|
30
|
+
line-height: var(--amsterdam-text-input-compact-line-height);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
&:hover {
|
|
34
|
+
box-shadow: var(--amsterdam-text-input-hover-box-shadow);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
.amsterdam-text-input::placeholder {
|
|
39
|
+
color: var(--amsterdam-text-input-placeholder-color);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.amsterdam-text-input:disabled {
|
|
43
|
+
background-color: var(--amsterdam-text-input-disabled-background-color);
|
|
44
|
+
box-shadow: var(--amsterdam-text-input-disabled-box-shadow);
|
|
45
|
+
color: var(--amsterdam-text-input-disabled-color);
|
|
46
|
+
cursor: not-allowed;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.amsterdam-text-input:invalid,
|
|
50
|
+
.amsterdam-text-input[aria-invalid="true"] {
|
|
51
|
+
box-shadow: var(--amsterdam-text-input-invalid-box-shadow);
|
|
52
|
+
|
|
53
|
+
&:hover {
|
|
54
|
+
// TODO: this should be the (currently non-existent) dark red hover color
|
|
55
|
+
box-shadow: var(--amsterdam-text-input-invalid-hover-box-shadow);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
@@ -3,8 +3,6 @@
|
|
|
3
3
|
* Copyright (c) 2023 Gemeente Amsterdam
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
@import "../../utils/breakpoint";
|
|
7
|
-
|
|
8
6
|
.amsterdam-top-task-link {
|
|
9
7
|
break-inside: avoid;
|
|
10
8
|
display: flex;
|
|
@@ -22,12 +20,16 @@
|
|
|
22
20
|
.amsterdam-top-task-link__label {
|
|
23
21
|
color: var(--amsterdam-top-task-link-label-color);
|
|
24
22
|
font-family: var(--amsterdam-top-task-link-label-font-family);
|
|
25
|
-
font-size: var(--amsterdam-top-task-link-label-
|
|
23
|
+
font-size: var(--amsterdam-top-task-link-label-spacious-font-size);
|
|
26
24
|
font-weight: var(--amsterdam-top-task-link-label-font-weight);
|
|
27
25
|
line-height: var(--amsterdam-top-task-link-label-line-height);
|
|
26
|
+
text-decoration-line: var(--amsterdam-top-task-link-label-text-decoration-line);
|
|
27
|
+
text-decoration-thickness: var(--amsterdam-top-task-link-label-text-decoration-thickness);
|
|
28
|
+
text-underline-offset: var(--amsterdam-top-task-link-label-text-underline-offset);
|
|
28
29
|
|
|
29
|
-
|
|
30
|
-
font-size: var(--amsterdam-top-task-link-label-
|
|
30
|
+
.amsterdam-theme--compact & {
|
|
31
|
+
font-size: var(--amsterdam-top-task-link-label-compact-font-size);
|
|
32
|
+
line-height: var(--amsterdam-top-task-link-label-compact-line-height);
|
|
31
33
|
}
|
|
32
34
|
|
|
33
35
|
@include reset;
|
|
@@ -35,20 +37,19 @@
|
|
|
35
37
|
|
|
36
38
|
.amsterdam-top-task-link:hover .amsterdam-top-task-link__label {
|
|
37
39
|
color: var(--amsterdam-top-task-link-label-hover-color);
|
|
38
|
-
text-decoration:
|
|
39
|
-
text-decoration-thickness: 3px;
|
|
40
|
-
text-underline-offset: 0.5rem;
|
|
40
|
+
text-decoration-line: var(--amsterdam-top-task-link-label-hover-text-decoration-line);
|
|
41
41
|
}
|
|
42
42
|
|
|
43
43
|
.amsterdam-top-task-link__description {
|
|
44
44
|
color: var(--amsterdam-top-task-link-description-color);
|
|
45
45
|
font-family: var(--amsterdam-top-task-link-description-font-family);
|
|
46
|
-
font-size: var(--amsterdam-top-task-link-description-
|
|
46
|
+
font-size: var(--amsterdam-top-task-link-description-spacious-font-size);
|
|
47
47
|
font-weight: var(--amsterdam-top-task-link-description-font-weight);
|
|
48
|
-
line-height: var(--amsterdam-top-task-link-description-line-height);
|
|
48
|
+
line-height: var(--amsterdam-top-task-link-description-spacious-line-height);
|
|
49
49
|
|
|
50
|
-
|
|
51
|
-
font-size: var(--amsterdam-top-task-link-description-
|
|
50
|
+
.amsterdam-theme--compact & {
|
|
51
|
+
font-size: var(--amsterdam-top-task-link-description-compact-font-size);
|
|
52
|
+
line-height: var(--amsterdam-top-task-link-description-compact-line-height);
|
|
52
53
|
}
|
|
53
54
|
|
|
54
55
|
@include reset;
|
|
@@ -3,8 +3,6 @@
|
|
|
3
3
|
* Copyright (c) 2023 Gemeente Amsterdam
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
@import "../../utils/breakpoint";
|
|
7
|
-
|
|
8
6
|
/** Apply border box sizing, reset whitespace and list styles. */
|
|
9
7
|
@mixin reset {
|
|
10
8
|
box-sizing: border-box;
|
|
@@ -26,15 +24,11 @@
|
|
|
26
24
|
.amsterdam-unordered-list:not(.amsterdam-unordered-list--no-markers) {
|
|
27
25
|
color: var(--amsterdam-unordered-list-color);
|
|
28
26
|
font-family: var(--amsterdam-unordered-list-font-family);
|
|
29
|
-
font-size: var(--amsterdam-unordered-list-
|
|
27
|
+
font-size: var(--amsterdam-unordered-list-spacious-font-size);
|
|
30
28
|
font-weight: var(--amsterdam-unordered-list-font-weight);
|
|
31
|
-
line-height: var(--amsterdam-unordered-list-line-height);
|
|
29
|
+
line-height: var(--amsterdam-unordered-list-spacious-line-height);
|
|
32
30
|
list-style-type: var(--amsterdam-unordered-list-list-style-type);
|
|
33
31
|
|
|
34
|
-
@media screen and (min-width: $amsterdam-breakpoint-typography) {
|
|
35
|
-
font-size: var(--amsterdam-unordered-list-wide-font-size);
|
|
36
|
-
}
|
|
37
|
-
|
|
38
32
|
/** List items are responsible for indentation and marker positioning. */
|
|
39
33
|
.amsterdam-unordered-list__item {
|
|
40
34
|
margin-inline-start: var(--amsterdam-unordered-list-item-margin-inline-start);
|
|
@@ -51,3 +45,8 @@
|
|
|
51
45
|
padding-inline-start: var(--amsterdam-unordered-list-unordered-list-item-padding-inline-start);
|
|
52
46
|
}
|
|
53
47
|
}
|
|
48
|
+
|
|
49
|
+
.amsterdam-theme--compact .amsterdam-unordered-list:not(.amsterdam-unordered-list--no-markers) {
|
|
50
|
+
font-size: var(--amsterdam-unordered-list-compact-font-size);
|
|
51
|
+
line-height: var(--amsterdam-unordered-list-compact-line-height);
|
|
52
|
+
}
|
|
@@ -3,15 +3,13 @@
|
|
|
3
3
|
* Copyright (c) 2023 Gemeente Amsterdam
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
.
|
|
7
|
-
|
|
6
|
+
// Source: https://css-tricks.com/inclusively-hidden/
|
|
7
|
+
.amsterdam-visually-hidden:not(:active, :focus) {
|
|
8
|
+
clip: rect(0 0 0 0);
|
|
8
9
|
clip-path: inset(50%);
|
|
9
10
|
height: 1px;
|
|
10
|
-
margin-block: -1px;
|
|
11
|
-
margin-inline: -1px;
|
|
12
11
|
overflow: hidden;
|
|
13
|
-
padding-block: 0;
|
|
14
|
-
padding-inline: 0;
|
|
15
12
|
position: absolute;
|
|
13
|
+
white-space: nowrap;
|
|
16
14
|
width: 1px;
|
|
17
15
|
}
|
package/dist/grid/grid-cell.css
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.amsterdam-grid-cell--full-width{grid-column:1/-1}.amsterdam-grid-cell--span-1{grid-column-end:span 1}.amsterdam-grid-cell--start-1{grid-column-start:1}.amsterdam-grid-cell--span-2{grid-column-end:span 2}.amsterdam-grid-cell--start-2{grid-column-start:2}.amsterdam-grid-cell--span-3{grid-column-end:span 3}.amsterdam-grid-cell--start-3{grid-column-start:3}.amsterdam-grid-cell--span-4{grid-column-end:span 4}.amsterdam-grid-cell--start-4{grid-column-start:4}.amsterdam-grid-cell--span-5{grid-column-end:span 5}.amsterdam-grid-cell--start-5{grid-column-start:5}.amsterdam-grid-cell--span-6{grid-column-end:span 6}.amsterdam-grid-cell--start-6{grid-column-start:6}.amsterdam-grid-cell--span-7{grid-column-end:span 7}.amsterdam-grid-cell--start-7{grid-column-start:7}.amsterdam-grid-cell--span-8{grid-column-end:span 8}.amsterdam-grid-cell--start-8{grid-column-start:8}.amsterdam-grid-cell--span-9{grid-column-end:span 9}.amsterdam-grid-cell--start-9{grid-column-start:9}.amsterdam-grid-cell--span-10{grid-column-end:span 10}.amsterdam-grid-cell--start-10{grid-column-start:10}.amsterdam-grid-cell--span-11{grid-column-end:span 11}.amsterdam-grid-cell--start-11{grid-column-start:11}.amsterdam-grid-cell--span-12{grid-column-end:span 12}.amsterdam-grid-cell--start-12{grid-column-start:12}@media screen and (min-width: 36rem){.amsterdam-grid-cell--span-1-medium{grid-column-end:span 1}.amsterdam-grid-cell--start-1-medium{grid-column-start:1}.amsterdam-grid-cell--span-2-medium{grid-column-end:span 2}.amsterdam-grid-cell--start-2-medium{grid-column-start:2}.amsterdam-grid-cell--span-3-medium{grid-column-end:span 3}.amsterdam-grid-cell--start-3-medium{grid-column-start:3}.amsterdam-grid-cell--span-4-medium{grid-column-end:span 4}.amsterdam-grid-cell--start-4-medium{grid-column-start:4}.amsterdam-grid-cell--span-5-medium{grid-column-end:span 5}.amsterdam-grid-cell--start-5-medium{grid-column-start:5}.amsterdam-grid-cell--span-6-medium{grid-column-end:span 6}.amsterdam-grid-cell--start-6-medium{grid-column-start:6}.amsterdam-grid-cell--span-7-medium{grid-column-end:span 7}.amsterdam-grid-cell--start-7-medium{grid-column-start:7}.amsterdam-grid-cell--span-8-medium{grid-column-end:span 8}.amsterdam-grid-cell--start-8-medium{grid-column-start:8}.amsterdam-grid-cell--span-9-medium{grid-column-end:span 9}.amsterdam-grid-cell--start-9-medium{grid-column-start:9}.amsterdam-grid-cell--span-10-medium{grid-column-end:span 10}.amsterdam-grid-cell--start-10-medium{grid-column-start:10}.amsterdam-grid-cell--span-11-medium{grid-column-end:span 11}.amsterdam-grid-cell--start-11-medium{grid-column-start:11}.amsterdam-grid-cell--span-12-medium{grid-column-end:span 12}.amsterdam-grid-cell--start-12-medium{grid-column-start:12}}@media screen and (min-width: 68rem){.amsterdam-grid-cell--span-1-wide{grid-column-end:span 1}.amsterdam-grid-cell--start-1-wide{grid-column-start:1}.amsterdam-grid-cell--span-2-wide{grid-column-end:span 2}.amsterdam-grid-cell--start-2-wide{grid-column-start:2}.amsterdam-grid-cell--span-3-wide{grid-column-end:span 3}.amsterdam-grid-cell--start-3-wide{grid-column-start:3}.amsterdam-grid-cell--span-4-wide{grid-column-end:span 4}.amsterdam-grid-cell--start-4-wide{grid-column-start:4}.amsterdam-grid-cell--span-5-wide{grid-column-end:span 5}.amsterdam-grid-cell--start-5-wide{grid-column-start:5}.amsterdam-grid-cell--span-6-wide{grid-column-end:span 6}.amsterdam-grid-cell--start-6-wide{grid-column-start:6}.amsterdam-grid-cell--span-7-wide{grid-column-end:span 7}.amsterdam-grid-cell--start-7-wide{grid-column-start:7}.amsterdam-grid-cell--span-8-wide{grid-column-end:span 8}.amsterdam-grid-cell--start-8-wide{grid-column-start:8}.amsterdam-grid-cell--span-9-wide{grid-column-end:span 9}.amsterdam-grid-cell--start-9-wide{grid-column-start:9}.amsterdam-grid-cell--span-10-wide{grid-column-end:span 10}.amsterdam-grid-cell--start-10-wide{grid-column-start:10}.amsterdam-grid-cell--span-11-wide{grid-column-end:span 11}.amsterdam-grid-cell--start-11-wide{grid-column-start:11}.amsterdam-grid-cell--span-12-wide{grid-column-end:span 12}.amsterdam-grid-cell--start-12-wide{grid-column-start:12}}/*# sourceMappingURL=grid-cell.css.map */
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sourceRoot":"","sources":["../../src/grid/grid-cell.scss"],"names":[],"mappings":"AAOA,iCACE,iBAMA,6BACE,uBAGF,8BACE,kBANS,EACX,6BACE,uBAGF,8BACE,kBANS,EACX,6BACE,uBAGF,8BACE,kBANS,EACX,6BACE,uBAGF,8BACE,kBANS,EACX,6BACE,uBAGF,8BACE,kBANS,EACX,6BACE,uBAGF,8BACE,kBANS,EACX,6BACE,uBAGF,8BACE,kBANS,EACX,6BACE,uBAGF,8BACE,kBANS,EACX,6BACE,uBAGF,8BACE,kBANS,EACX,8BACE,wBAGF,+BACE,kBANS,GACX,8BACE,wBAGF,+BACE,kBANS,GACX,8BACE,wBAGF,+BACE,kBANS,GAUb,qCAEI,oCACE,uBAGF,qCACE,kBANS,EACX,oCACE,uBAGF,qCACE,kBANS,EACX,oCACE,uBAGF,qCACE,kBANS,EACX,oCACE,uBAGF,qCACE,kBANS,EACX,oCACE,uBAGF,qCACE,kBANS,EACX,oCACE,uBAGF,qCACE,kBANS,EACX,oCACE,uBAGF,qCACE,kBANS,EACX,oCACE,uBAGF,qCACE,kBANS,EACX,oCACE,uBAGF,qCACE,kBANS,EACX,qCACE,wBAGF,sCACE,kBANS,GACX,qCACE,wBAGF,sCACE,kBANS,GACX,qCACE,wBAGF,sCACE,kBANS,IAWf,qCAEI,kCACE,uBAGF,mCACE,kBANS,EACX,kCACE,uBAGF,mCACE,kBANS,EACX,kCACE,uBAGF,mCACE,kBANS,EACX,kCACE,uBAGF,mCACE,kBANS,EACX,kCACE,uBAGF,mCACE,kBANS,EACX,kCACE,uBAGF,mCACE,kBANS,EACX,kCACE,uBAGF,mCACE,kBANS,EACX,kCACE,uBAGF,mCACE,kBANS,EACX,kCACE,uBAGF,mCACE,kBANS,EACX,mCACE,wBAGF,oCACE,kBANS,GACX,mCACE,wBAGF,oCACE,kBANS,GACX,mCACE,wBAGF,oCACE,kBANS","file":"grid-cell.css"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.amsterdam-highlight--blue{background-color:var(--amsterdam-highlight-blue-background-color)}.amsterdam-highlight--dark-green{background-color:var(--amsterdam-highlight-dark-green-background-color)}.amsterdam-highlight--green{background-color:var(--amsterdam-highlight-green-background-color)}.amsterdam-highlight--light-blue{background-color:var(--amsterdam-highlight-light-blue-background-color)}.amsterdam-highlight--magenta{background-color:var(--amsterdam-highlight-magenta-background-color)}.amsterdam-highlight--orange{background-color:var(--amsterdam-highlight-orange-background-color)}.amsterdam-highlight--purple{background-color:var(--amsterdam-highlight-purple-background-color)}.amsterdam-highlight--yellow{background-color:var(--amsterdam-highlight-yellow-background-color)}/*# sourceMappingURL=highlight.css.map */
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sourceRoot":"","sources":["../../src/highlight/highlight.scss"],"names":[],"mappings":"AAKA,2BACE,kEAGF,iCACE,wEAGF,4BACE,mEAGF,iCACE,wEAGF,8BACE,qEAGF,6BACE,oEAGF,6BACE,oEAGF,6BACE","file":"highlight.css"}
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license EUPL-1.2+
|
|
3
|
-
* Copyright (c) 2023 Gemeente Amsterdam
|
|
4
|
-
*/
|
|
5
|
-
|
|
6
|
-
@import "../../utils/breakpoint";
|
|
7
|
-
|
|
8
|
-
@mixin reset {
|
|
9
|
-
box-sizing: border-box;
|
|
10
|
-
margin-block: 0;
|
|
11
|
-
padding-inline: 0;
|
|
12
|
-
-webkit-text-size-adjust: 100%;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
.amsterdam-breadcrumb {
|
|
16
|
-
font-family: var(--amsterdam-breadcrumb-font-family, inherit);
|
|
17
|
-
font-size: var(--amsterdam-breadcrumb-narrow-font-size);
|
|
18
|
-
font-weight: var(--amsterdam-breadcrumb-font-weight);
|
|
19
|
-
line-height: var(--amsterdam-breadcrumb-line-height);
|
|
20
|
-
|
|
21
|
-
@media screen and (min-width: $amsterdam-breakpoint-typography) {
|
|
22
|
-
font-size: var(--amsterdam-breadcrumb-wide-font-size);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
.amsterdam-breadcrumb__list {
|
|
27
|
-
break-after: avoid;
|
|
28
|
-
break-inside: avoid;
|
|
29
|
-
display: flex;
|
|
30
|
-
flex-wrap: wrap;
|
|
31
|
-
gap: 0.5rem;
|
|
32
|
-
list-style: none;
|
|
33
|
-
|
|
34
|
-
@include reset;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
.amsterdam-breadcrumb-item {
|
|
38
|
-
align-items: center;
|
|
39
|
-
display: flex;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
.amsterdam-breadcrumb-item:not(:last-child)::after {
|
|
43
|
-
background-color: var(--amsterdam-breadcrumb-color);
|
|
44
|
-
clip-path: path("M 4.725,16 3.275,14.545 9.815,8 3.275,1.455 4.725,0 l 8,8 z");
|
|
45
|
-
content: "";
|
|
46
|
-
display: inline-block;
|
|
47
|
-
height: 16px;
|
|
48
|
-
margin-inline-start: 1rem;
|
|
49
|
-
width: 16px;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
.amsterdam-breadcrumb-item__link {
|
|
53
|
-
color: var(--amsterdam-breadcrumb-color);
|
|
54
|
-
cursor: pointer;
|
|
55
|
-
outline-offset: var(--amsterdam-breadcrumb-item-link-outline-offset);
|
|
56
|
-
text-decoration: none;
|
|
57
|
-
|
|
58
|
-
&::first-letter {
|
|
59
|
-
text-transform: capitalize;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
&:hover {
|
|
63
|
-
color: var(--amsterdam-breadcrumb-item-link-hover-color);
|
|
64
|
-
text-decoration: underline;
|
|
65
|
-
text-decoration-thickness: 2px;
|
|
66
|
-
text-underline-offset: 3px;
|
|
67
|
-
}
|
|
68
|
-
}
|
package/src/card/README.md
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
# Card
|
|
2
|
-
|
|
3
|
-
Gebruik een card op een overzichtspagina om te verwijzen naar een detailpagina, zoals een nieuwsbericht, een vacature of een zoekresultaat. De card bevat meestal de titel, introductie en afbeelding van de content. De link is verplicht.
|
|
4
|
-
|
|
5
|
-
## Schermlezers
|
|
6
|
-
|
|
7
|
-
Met een schermlezer kun je onder andere navigeren via headings en links in een document. De titel van een card is een link in een heading, zodat je van beide navigatiemanieren gebruik kunt maken. Een schermlezer leest eerst de titel op, daarna de rest van de inhoud.
|
|
8
|
-
|
|
9
|
-
## Richtlijnen
|
|
10
|
-
|
|
11
|
-
- De titel van een card is een link in een heading. Hier gelden dezelfde richtlijnen voor als voor reguliere [links](https://amsterdam.github.io/design-system/?path=/docs/react_navigation-link--docs) en [headings](https://amsterdam.github.io/design-system/?path=/docs/react_text-heading--docs).
|
|
12
|
-
- Een card heeft meer inhoud nodig dan alleen een titel. Vul dit aan met tekstuele en/of visuele inhoud. Als dit lastig is, kijk dan of een [top task link](https://amsterdam.github.io/design-system/?path=/docs/react_navigation-top-task-link--docs) of [reguliere link](https://amsterdam.github.io/design-system/?path=/docs/react_navigation-link--docs) beter past.
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
# Grid cell
|
|
2
|
-
|
|
3
|
-
Beslaat een aantal kolommen in een [Grid](?path=/docs/react_layout-grid--docs).
|
|
4
|
-
|
|
5
|
-
## Gebruik
|
|
6
|
-
|
|
7
|
-
Verdeel hiermee een grid in cellen.
|
|
8
|
-
Geef aan hoeveel kolommen van het grid de cel beslaat.
|
|
9
|
-
Dat aantal kan variëren voor smalle, middelbrede of brede schermen.
|
|
10
|
-
In elke cel plaats je vervolgens de gewenste inhoud.
|
|
11
|
-
|
|
12
|
-
## Ontwerp
|
|
13
|
-
|
|
14
|
-
De [ontwerpkeuzes](?path=/docs/docs-designrichtlijnen-grid--docs) staan beschreven onder de designrichtlijnen.
|
package/src/grid/README.grid.md
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
# Grid
|
|
2
|
-
|
|
3
|
-
Levert een tweedimensionaal raster waarop alle elementen van een pagina uitgelijnd worden.
|
|
4
|
-
|
|
5
|
-
## Gebruik
|
|
6
|
-
|
|
7
|
-
Elke pagina moet het grid gebruiken als basis voor de layout, dus direct binnen [Screen](?path=/docs/layout-screen--docs).
|
|
8
|
-
|
|
9
|
-
Een [Footer](?path=/docs/react_containers-footer--docs) en een [Highlight](?path=/docs/react_containers-highlight--docs) zijn iets breder dan het grid.
|
|
10
|
-
Daarom wordt in HTML vóór deze componenten een instantie van Grid afgesloten en erbinnen een nieuwe geopend.
|
|
11
|
-
|
|
12
|
-
Meerdere instanties van dit component zijn dus mogelijk op een pagina.
|
|
13
|
-
Visueel moeten ze wel allemaal op elkaar aansluiten.
|
|
14
|
-
|
|
15
|
-
## Ontwerp
|
|
16
|
-
|
|
17
|
-
De [ontwerpkeuzes](?path=/docs/docs-designrichtlijnen-grid--docs) staan beschreven onder de designrichtlijnen.
|
package/src/grid/grid-cell.scss
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license EUPL-1.2+
|
|
3
|
-
* Copyright (c) 2023 Gemeente Amsterdam
|
|
4
|
-
*/
|
|
5
|
-
|
|
6
|
-
@import "../../utils/breakpoint";
|
|
7
|
-
|
|
8
|
-
.amsterdam-grid-cell--full-width {
|
|
9
|
-
grid-column: 1 / -1;
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
// The order of the following declaration blocks ensures the intended specificity.
|
|
13
|
-
|
|
14
|
-
@for $i from 1 through 12 {
|
|
15
|
-
.amsterdam-grid-cell--span-#{$i} {
|
|
16
|
-
grid-column-end: span $i;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
.amsterdam-grid-cell--start-#{$i} {
|
|
20
|
-
grid-column-start: $i;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
@media screen and (min-width: $amsterdam-breakpoint-medium) {
|
|
25
|
-
@for $i from 1 through 12 {
|
|
26
|
-
.amsterdam-grid-cell--span-#{$i}-medium {
|
|
27
|
-
grid-column-end: span $i;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
.amsterdam-grid-cell--start-#{$i}-medium {
|
|
31
|
-
grid-column-start: $i;
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
@media screen and (min-width: $amsterdam-breakpoint-wide) {
|
|
37
|
-
@for $i from 1 through 12 {
|
|
38
|
-
.amsterdam-grid-cell--span-#{$i}-wide {
|
|
39
|
-
grid-column-end: span $i;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
.amsterdam-grid-cell--start-#{$i}-wide {
|
|
43
|
-
grid-column-start: $i;
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
}
|