dso-toolkit 92.0.0 → 94.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/README.md +9 -15
  3. package/dist/dso.css +91 -799
  4. package/dist/dso.css.map +1 -1
  5. package/dist/dso.min.css +1 -1
  6. package/dist/dso.min.css.map +1 -1
  7. package/package.json +5 -4
  8. package/src/components/alert/alert.scss +0 -6
  9. package/src/components/button/button.mixins.scss +5 -2
  10. package/src/components/button/button.scss +2 -1
  11. package/src/components/delete/delete.mixins.scss +2 -2
  12. package/src/components/heading/heading.mixins.scss +14 -14
  13. package/src/components/heading/heading.scss +7 -6
  14. package/src/components/insert/insert.mixins.scss +1 -1
  15. package/src/components/link/link.mixins.scss +1 -0
  16. package/src/dso.scss +0 -2
  17. package/src/components/action-list/readme.md +0 -1
  18. package/src/components/alert/readme.md +0 -5
  19. package/src/components/application-heading/readme.md +0 -5
  20. package/src/components/attachments-counter/readme.md +0 -5
  21. package/src/components/badge/_index.scss +0 -2
  22. package/src/components/badge/badge.mixins.scss +0 -54
  23. package/src/components/badge/badge.scss +0 -5
  24. package/src/components/badge/badge.variables.scss +0 -11
  25. package/src/components/badge/readme.md +0 -5
  26. package/src/components/banner/readme.md +0 -1
  27. package/src/components/breadcrumbs/readme.md +0 -1
  28. package/src/components/button/readme.md +0 -10
  29. package/src/components/button-row/readme.md +0 -1
  30. package/src/components/card/readme.md +0 -3
  31. package/src/components/card-grid/readme.md +0 -1
  32. package/src/components/card-list/readme.md +0 -1
  33. package/src/components/context/readme.md +0 -1
  34. package/src/components/definition-list/readme.md +0 -1
  35. package/src/components/description/readme.md +0 -1
  36. package/src/components/document-header/readme.md +0 -10
  37. package/src/components/dropdown-menu/readme.md +0 -45
  38. package/src/components/expandable/readme.md +0 -1
  39. package/src/components/footer/readme.md +0 -1
  40. package/src/components/footnotes/readme.md +0 -1
  41. package/src/components/form/readme.md +0 -40
  42. package/src/components/form-buttons/readme.md +0 -1
  43. package/src/components/form-group/readme.md +0 -40
  44. package/src/components/highlight-box/readme.md +0 -1
  45. package/src/components/image/readme.md +0 -1
  46. package/src/components/info/readme.md +0 -3
  47. package/src/components/info-button/readme.md +0 -3
  48. package/src/components/justify-form-groups/readme.md +0 -5
  49. package/src/components/label/readme.md +0 -7
  50. package/src/components/label-group/readme.md +0 -1
  51. package/src/components/link/readme.md +0 -5
  52. package/src/components/link-list/readme.md +0 -1
  53. package/src/components/list/readme.md +0 -8
  54. package/src/components/list-button/readme.md +0 -1
  55. package/src/components/modal/_index.scss +0 -2
  56. package/src/components/modal/modal.mixins.scss +0 -249
  57. package/src/components/modal/modal.scss +0 -63
  58. package/src/components/modal/modal.variables.scss +0 -23
  59. package/src/components/modal/readme.md +0 -3
  60. package/src/components/navbar/readme.md +0 -1
  61. package/src/components/paragraph/readme.md +0 -1
  62. package/src/components/progress-indicator/readme.md +0 -6
  63. package/src/components/rich-content/readme.md +0 -1
  64. package/src/components/row-equal-heights/readme.md +0 -1
  65. package/src/components/scrollable/readme.md +0 -0
  66. package/src/components/search-bar/readme.md +0 -1
  67. package/src/components/shopping-cart/readme.md +0 -1
  68. package/src/components/tabs/readme.md +0 -17
  69. package/src/components/tile/readme.md +0 -1
  70. package/src/components/tile-grid/readme.md +0 -1
@@ -1,5 +0,0 @@
1
- # `.dso-attachments`
2
-
3
- ## Opmerkingen
4
-
5
- De classname `.dso-attachments` is legacy en zou eigenlijk `.dso-attachments-counter` moeten zijn.
@@ -1,2 +0,0 @@
1
- @forward "badge.mixins";
2
- @forward "badge.variables";
@@ -1,54 +0,0 @@
1
- @use "../../variables/units";
2
- @use "../../variables/colors";
3
- @use "../../global/mixins/set-colors.mixin" as set-colors;
4
-
5
- @use "badge.variables" as badge-variables;
6
-
7
- @mixin root() {
8
- border-width: 1px;
9
- border-style: solid;
10
- border-radius: 1em;
11
- display: inline-block;
12
- font-size: 0.875em;
13
- line-height: badge-variables.$line-height;
14
- min-inline-size: 1.5rem;
15
- padding-block: #{units.$u1 * 0.5};
16
- padding-inline: units.$u1;
17
- text-align: center;
18
-
19
- @include _variant(badge-variables.$default-bg-color);
20
-
21
- &.badge-info {
22
- @include _variant(badge-variables.$info-bg-color);
23
- }
24
-
25
- &.badge-primary {
26
- @include _variant(badge-variables.$primary-bg-color);
27
- }
28
-
29
- &.badge-success {
30
- @include _variant(badge-variables.$success-bg-color);
31
- }
32
-
33
- &.badge-warning {
34
- @include _variant(badge-variables.$warning-bg-color);
35
- }
36
-
37
- &.badge-error {
38
- @include _variant(badge-variables.$error-bg-color);
39
- }
40
-
41
- &.badge-outline {
42
- @include _variant(colors.$wit, colors.$grijs-90);
43
- }
44
-
45
- &.badge-attention {
46
- @include _variant(badge-variables.$attention-bg-color);
47
- }
48
- }
49
-
50
- @mixin _variant($background-color, $border-color: $background-color) {
51
- @include set-colors.apply($background-color, "badge");
52
-
53
- border-color: $border-color;
54
- }
@@ -1,5 +0,0 @@
1
- @use "../badge";
2
-
3
- .dso-badge {
4
- @include badge.root();
5
- }
@@ -1,11 +0,0 @@
1
- @use "../../variables/colors";
2
-
3
- $default-bg-color: colors.$grijs-60;
4
- $info-bg-color: colors.$donkerblauw;
5
- $primary-bg-color: colors.$bosgroen;
6
- $success-bg-color: colors.$success-color;
7
- $warning-bg-color: colors.$warning-color;
8
- $error-bg-color: colors.$error-color;
9
- $attention-bg-color: colors.$mauve;
10
-
11
- $line-height: 1;
@@ -1,5 +0,0 @@
1
- # `.dso-badge`
2
-
3
- **Let op**: In de `.sr-only` moet _na_ de dubbele punt (:) een whitespace staan.
4
-
5
- Deze staat nu niet in de markup voorschriften maar wordt wel gerendered in het DOM. Dit is een bug in een Storybook plugin. Zie #1163 voor meer informatie.
@@ -1 +0,0 @@
1
- # `.dso-banner`
@@ -1 +0,0 @@
1
- # `ol.dso-breadcrumbs`
@@ -1,10 +0,0 @@
1
- # `button.dso-primary`, `button.dso-secondary`, `button.dso-tertiary`
2
-
3
- Kan ook op `a` worden gebruikt: `a.dso-primary`, `a.dso-secondary`, `a.dso-tertiary`.
4
-
5
- Het label van de button staat altijd in een `<span>`. Naast de label `<span>` kan een Icon staan.
6
-
7
- ## Modifiers
8
-
9
- - `.dso-small`: Om de button compacter te maken.
10
- - `.dso-align`: Met deze modifier kunnen tertiare buttons verticaal worden uitgelijnd met primary en secondary buttons.
@@ -1 +0,0 @@
1
- # `.dso-button-row`
@@ -1,3 +0,0 @@
1
- # `.dso-card`
2
-
3
- Dit is een HTML/CSS component, de dso-toolkit biedt dus geen klik-gedrag aan. Hiervoor zou het webcomponent ingezet kunnen worden `<dso-card>`. Bij gebruik van het HTML/CSS component zijn afnemers zelf verantwoordelijk voor het plaatsen van een click eventhandler op `.dso-card`.
@@ -1 +0,0 @@
1
- # `.dso-card-grid`
@@ -1 +0,0 @@
1
- # `ul.dso-card-list`
@@ -1 +0,0 @@
1
- # `.dso-context-wrapper`, `.dso-context-label`, `.dso-context-container`
@@ -1 +0,0 @@
1
- # `dl`
@@ -1 +0,0 @@
1
- # `.dso-description-term`
@@ -1,10 +0,0 @@
1
- # `.dso-document-header`
2
-
3
- Indien gewenst, zoals bij scrollen, kan een compacte `document-header` getoond worden.
4
-
5
- Class `dso-document-header-sticky` zorgt voor een `display: sticky` op de `document-header`. In dat geval wordt ook alleen de titel (met chevron-up) getoond en de rest van de inhoud van de `document-header` verborgen. De chevron kan geplaatst worden door de titel te wrappen in een `<button type"button">`
6
-
7
- ### Varianten
8
-
9
- - Gebruik de class `dso-variant-besluitversie` op de root om de `besluitversie` variant te tonen. Deze geeft een groene kleur aan de status balk en een groene border top aan de document-header.
10
- - Gebruik de class `dso-variant-ontwerp` op de root om de `ontwerp` variant te tonen. Deze geeft een gele kleur aan de status balk en een gele border top aan de sticky document-header.
@@ -1,45 +0,0 @@
1
- # `.dso-dropdown-menu`
2
-
3
- ## Implementatie
4
-
5
- Het openen en sluiten van de dropdown button moet worden ondersteund met muis-, touch- en toetsenbordbediening.
6
- De scripting zal zelf geïmplementeerd moeten worden, waarbij het te programmeren gedrag op de diverse relevante toetsen gelijk moet zijn aan de native browser dropdown/select werkvorm (en het Web Component).
7
-
8
- - `event.code` `ArrowUp` : omhoog, vorige 'option', zelfde als tab
9
- - `event.code` `ArrowDown` : omlaag, volgende 'option', zelfde als shift-tab
10
- - `event.code` `Escape` : sluit dropdown, geen keuze maken
11
- - `event.code` `Space` : maak keuze
12
-
13
- ## Voorschriften/algemeen
14
-
15
- - `.dso-dropdown-menu` is de root van het component, dat bestaat uit een `button` en het daadwerkelijke menu, de `.dso-dropdown-options`;
16
- - `.dso-dropdown-options` heeft `role="menu"` en verwijst met `aria-labelledby` naar de `button`;
17
- - `.dso-dropdown-options` wordt getoond wanneer `.dso-dropdown-menu` de class `dso-open` heeft;
18
- - de links in het menu krijgen `role="menuitemradio"` en het geselecteerde item `aria-checked="true"`;
19
- - `button` heeft attribute `aria-haspopup="menu"` om aan te duiden dat deze een menu bedient, en moet een `id` hebben waarnaar verwezen wordt vanuit `.dso-dropdown-options` met een `aria-labelledby`-attribuut
20
-
21
- ### Menu ingeklapt
22
-
23
- - `.dso-dropdown-menu` geen class `dso-open`
24
- - `button` attribute `aria-expanded="false"`
25
-
26
- ```
27
- <div class="dso-dropdown-menu">
28
- <button type="button" aria-haspopup="true" aria-expanded="false" class="dso-tertiary">
29
- <div class="dso-dropdown-options" ... > ...
30
- </div>
31
- ```
32
-
33
- ## Menu uitgeklapt
34
-
35
- - `div.dropdown` heeft class `dso-open`
36
- - `button` attribute `aria-expanded="true"`
37
-
38
- ```
39
- <div class="dso-dropdown-menu dso-open">
40
- <button type="button" aria-haspopup="true" aria-expanded="true" class="dso-tertiary">
41
- <div class="dso-dropdown-options" ... > ...
42
- </div>
43
- ```
44
-
45
- Note: de `button` mag class `dso-primary`, `dso-secondary` of `dso-tertiary` hebben, afhankelijk van de toepassing.
@@ -1 +0,0 @@
1
- # `<dso-expandable>`
@@ -1 +0,0 @@
1
- # `<footer>`
@@ -1 +0,0 @@
1
- # `.dso-footnote-reference` and `.dso-footnotes`
@@ -1,40 +0,0 @@
1
- # `.form, form, .dso-section-body`
2
-
3
- ## `.form-group`
4
-
5
- Een formulier bestaat uit Form Group. Elke veld/werkvorm heeft z'n eigen `.form-group`.
6
-
7
- Als de gebruiker een ongeldige waarde invoert moet er `.dso-invalid` op `.form-group` worden geplaatst:
8
-
9
- ```html
10
- <div class="form-group dso-*** dso-invalid">[...]</div>
11
- ```
12
-
13
- Als het formulier daarna weer geldig wordt gemaakt moet de `.dso-invalid` class vervangen worden door `.dso-valid`:
14
-
15
- ```html
16
- <div class="form-group dso-*** dso-valid">[...]</div>
17
- ```
18
-
19
- ### `.form-group.dso-input`
20
-
21
- Dit is een standaard invoerveld (`<input>`). Dit veld wordt gekoppeld aan een `<label>`.
22
-
23
- - Gebruik `type="email"` voor het automatisch valideren van een e-mailadres.
24
- - Gebruik `type="password"` voor wachtwoorden.
25
- - Gebruik `type="url"` voor het invoeren van URLs.
26
- - Gebruik `type="tel"` voor het invoeren van een telefoonnummer.
27
- - Gebruik **niet** `type="date"` maar het Web Component "Date Picker".
28
-
29
- ### `.form-group.dso-checkboxes`
30
-
31
- Een Form Group "checkboxes" is een `fieldset` element in plaats van een `div`:
32
-
33
- ```html
34
- <fieldset class="form-group dso-checkboxes"></fieldset>
35
- ```
36
-
37
- ### `.form-group.dso-files`
38
-
39
- Als er geen bestanden zijn geüpload in een Form Group "files" dan wordt er geen "lege" unordered list `dso-filelist` in het formulier geplaatst.
40
- Pas na de eerste upload is er een `ul` met 1 `li`st-item in het formulier aanwezig.
@@ -1 +0,0 @@
1
- # `.dso-button-row`
@@ -1,40 +0,0 @@
1
- # `.form, form, .dso-section-body`
2
-
3
- ## `.form-group`
4
-
5
- Een formulier bestaat uit Form Group. Elke veld/werkvorm heeft z'n eigen `.form-group`.
6
-
7
- Als de gebruiker een ongeldige waarde invoert moet er `.dso-invalid` op `.form-group` worden geplaatst:
8
-
9
- ```html
10
- <div class="form-group dso-*** dso-invalid">[...]</div>
11
- ```
12
-
13
- Als het formulier daarna weer geldig wordt gemaakt moet de `.dso-invalid` class vervangen worden door `.dso-valid`:
14
-
15
- ```html
16
- <div class="form-group dso-*** dso-valid">[...]</div>
17
- ```
18
-
19
- ### `.form-group.dso-input`
20
-
21
- Dit is een standaard invoerveld (`<input>`). Dit veld wordt gekoppeld aan een `<label>`.
22
-
23
- - Gebruik `type="email"` voor het automatisch valideren van een e-mailadres.
24
- - Gebruik `type="password"` voor wachtwoorden.
25
- - Gebruik `type="url"` voor het invoeren van URLs.
26
- - Gebruik `type="tel"` voor het invoeren van een telefoonnummer.
27
- - Gebruik **niet** `type="date"` maar het Web Component "Date Picker".
28
-
29
- ### `.form-group.dso-checkboxes`
30
-
31
- Een Form Group "checkboxes" is een `fieldset` element in plaats van een `div`:
32
-
33
- ```html
34
- <fieldset class="form-group dso-checkboxes"></fieldset>
35
- ```
36
-
37
- ### `.form-group.dso-files`
38
-
39
- Als er geen bestanden zijn geüpload in een Form Group "files" dan wordt er geen "lege" unordered list `dso-filelist` in het formulier geplaatst.
40
- Pas na de eerste upload is er een `ul` met 1 `li`st-item in het formulier aanwezig.
@@ -1 +0,0 @@
1
- # `.dso-highlight-box`
@@ -1 +0,0 @@
1
- # `.img-responsive`, `.img-circle`
@@ -1,3 +0,0 @@
1
- # `.dso-info:not(.dso-accordion-section)`
2
-
3
- The specific selector is because `.dso-info` is also used as a modifier class.
@@ -1,3 +0,0 @@
1
- # `.dso-info-button`
2
-
3
- De class `.dso-info-open` (bij getoonde toelichting) maakt de button groen.
@@ -1,5 +0,0 @@
1
- # `.dso-justify-form-groups`
2
-
3
- ## **Let op!**
4
-
5
- Bij justify-form-groups moet het aantal velden opgegeven worden als extra classname: `.form-groups-n`, waarbij `n` moet worden vervangen met het aantal `.form-group` velden er in het `.dso-justify-form-groups` staan. Maximaal kan dit **3** zijn, `.dso-form-buttons` wordt hierbij niet meegeteld.
@@ -1,7 +0,0 @@
1
- # `.dso-label`
2
-
3
- **Let op**: In de `.sr-only` moet _na_ de dubbele punt (:) een whitespace staan.
4
-
5
- Deze staat nu niet in de markup voorschriften maar wordt wel gerendered in het DOM. Dit is een bug in een Storybook plugin. Zie #1163 voor meer informatie.
6
-
7
- De hover state voor het Web Component is onderdeel van de werkvorm, voor de CSS versie moet deze door developers worden geimplementeerd dmv. class `.dso-label-hover` op de `<span class="dso-label">`;
@@ -1 +0,0 @@
1
- # `.dso-label-group`
@@ -1,5 +0,0 @@
1
- # `a`
2
-
3
- ## Technische opmerkingen
4
-
5
- Plaats bij gebruik van de "Link With Icon"-variant de tekst in een `<span>text hier</span>` om de afstand tot het icoon te creëren.
@@ -1 +0,0 @@
1
- # `.dso-link-list`
@@ -1,8 +0,0 @@
1
- # `ul`, `ol`, `.list-group`, `ul.dso-columns-list`, `ol.dso-columns-list`, `ol.dso-list-ordered-action`, `ol.dso-action-list`, `ul.dso-action-list`
2
-
3
- ## Status
4
-
5
- Een List Item (`<li>`) kan een status hebben. Een status bestaat uit een icon en een toelichting. De status wordt met een modifier class op het List Item gezet.
6
-
7
- - Forbidden (`dso-forbidden`)
8
- - Status Warning (`dso-status-warning`)
@@ -1 +0,0 @@
1
- # `.dso-list-button`
@@ -1,2 +0,0 @@
1
- @forward "modal.mixins";
2
- @forward "modal.variables";
@@ -1,249 +0,0 @@
1
- @use "sass:color";
2
-
3
- @use "../../variables/colors";
4
- @use "../../variables/media-query-breakpoints";
5
- @use "../../variables/units";
6
- @use "../../variables/zindex";
7
-
8
- @use "../button";
9
- @use "../rich-content";
10
-
11
- @use "modal.variables" as modal-variables;
12
-
13
- @keyframes ModalFadeIn {
14
- 0% {
15
- opacity: 0;
16
- }
17
-
18
- 100% {
19
- opacity: 1;
20
- }
21
- }
22
-
23
- @mixin root() {
24
- // dialog
25
- // ------
26
- // overwrite UA styles:
27
- overflow: visible;
28
- padding: 0;
29
- border: 0;
30
-
31
- &::backdrop {
32
- background-color: color.scale(modal-variables.$backdrop-bg, $alpha: modal-variables.$backdrop-opacity);
33
- }
34
-
35
- .dso-dialog {
36
- inline-size: modal-variables.$max-inline-size;
37
-
38
- background-color: modal-variables.$content-bg;
39
-
40
- opacity: 1;
41
-
42
- box-shadow: 0 #{units.$u1} #{units.$u3} 0 rgba(25, 25, 25, 0.4);
43
- animation: 200ms ease-out 0s 1 ModalFadeIn;
44
- }
45
-
46
- .dso-header {
47
- position: relative;
48
-
49
- padding: modal-variables.$header-padding;
50
-
51
- border-block-end: 1px solid modal-variables.$border-color;
52
-
53
- h2 {
54
- max-inline-size: calc(100% - #{units.$u3});
55
-
56
- margin: 0;
57
-
58
- color: colors.$bosgroen;
59
- }
60
-
61
- .dso-close {
62
- position: absolute;
63
- inset-block-start: units.$u2;
64
- inset-inline-end: 13px;
65
-
66
- block-size: modal-variables.$close-icon-size;
67
- inline-size: modal-variables.$close-icon-size;
68
-
69
- padding: 0;
70
-
71
- background-color: transparent;
72
-
73
- border: 0;
74
-
75
- text-align: center;
76
- }
77
- }
78
-
79
- > .dso-dialog > .dso-body {
80
- // stylelint-disable-next-line scss/operator-no-newline-after -- disabled because of prettier newline
81
- $dso-body-unavailable-height: (2 * modal-variables.$header-padding) +
82
- (modal-variables.$footer-button-block-size + modal-variables.$footer-padding);
83
-
84
- @include rich-content.children();
85
-
86
- block-size: calc(100% - #{modal-variables.$body-padding * 2 + units.$u4} - 1.5rem);
87
- max-block-size: calc(#{modal-variables.$max-block-size} - #{$dso-body-unavailable-height + units.$u4} - 1.5em);
88
- min-block-size: 1.5rem;
89
- overflow-x: auto;
90
-
91
- padding: modal-variables.$body-padding;
92
- }
93
-
94
- > .dso-dialog > dso-scrollable {
95
- // stylelint-disable-next-line scss/operator-no-newline-after -- disabled because of prettier newline
96
- $dso-body-unavailable-height: (2 * modal-variables.$header-padding) +
97
- (modal-variables.$footer-button-block-size + modal-variables.$footer-padding);
98
-
99
- block-size: calc(100% - #{modal-variables.$body-padding * 2 + units.$u4} - 1.5rem);
100
- max-block-size: calc(#{modal-variables.$max-block-size} - #{$dso-body-unavailable-height + units.$u4} - 1.5em);
101
- min-block-size: modal-variables.$body-min-block-size;
102
-
103
- .dso-body {
104
- @include rich-content.children();
105
-
106
- padding: modal-variables.$body-padding;
107
- }
108
- }
109
-
110
- .dso-body {
111
- &:focus-visible {
112
- outline: none;
113
- }
114
- }
115
-
116
- .dso-footer {
117
- @include modal-wide-buttons();
118
-
119
- min-block-size: modal-variables.$footer-button-block-size + modal-variables.$footer-padding;
120
-
121
- padding-block: calc(modal-variables.$footer-padding / 2);
122
- padding-inline: modal-variables.$footer-padding;
123
-
124
- text-align: end;
125
- }
126
-
127
- @media screen and (min-width: media-query-breakpoints.$screen-sm-min) {
128
- .dso-footer {
129
- #{button.$button-adjacent-secondary} {
130
- margin-inline-start: units.$u2;
131
- }
132
-
133
- #{button.$button-adjacent-tertiary} {
134
- margin-inline-start: 0;
135
- }
136
- }
137
- }
138
-
139
- @media screen and (max-width: media-query-breakpoints.$screen-xs-max) {
140
- .dso-dialog {
141
- max-inline-size: 100%;
142
-
143
- margin-block-start: 0;
144
- }
145
-
146
- .dso-footer {
147
- #{button.$button-adjacent} {
148
- margin-inline-start: 0;
149
- }
150
-
151
- button {
152
- inline-size: 100%;
153
-
154
- text-align: center;
155
-
156
- + button {
157
- margin-block-start: units.$u1;
158
- }
159
-
160
- &.dso-tertiary {
161
- &,
162
- span {
163
- float: none;
164
- }
165
- }
166
- }
167
- }
168
- }
169
-
170
- // special query for height
171
- @media screen and (max-height: modal-variables.$small-modal-vh) {
172
- .dso-dialog {
173
- min-block-size: modal-variables.$min-modal-block-size;
174
-
175
- margin-block-start: units.$u1;
176
- margin-block-end: units.$u1;
177
- }
178
-
179
- .dso-header {
180
- padding-block: #{units.$u1};
181
- padding-inline: #{units.$u2};
182
-
183
- .dso-close {
184
- inset-block-start: units.$u1;
185
- }
186
- }
187
-
188
- .dso-body {
189
- padding-block: #{units.$u2};
190
- padding-inline: #{units.$u3};
191
- }
192
-
193
- .dso-footer {
194
- min-block-size: auto;
195
- overflow: auto;
196
-
197
- padding-block: modal-variables.$footer-padding-small-modal-vh;
198
- padding-inline: modal-variables.$footer-padding;
199
- }
200
- }
201
- }
202
-
203
- @mixin modal-wide-buttons() {
204
- @media screen and (max-width: media-query-breakpoints.$screen-xs-max) {
205
- #{button.$button-adjacent} {
206
- margin-inline-start: 0;
207
- }
208
-
209
- button {
210
- inline-size: 100%;
211
-
212
- text-align: center;
213
-
214
- + button {
215
- margin-block-start: units.$u1;
216
- }
217
-
218
- &.dso-tertiary {
219
- &,
220
- span {
221
- float: none;
222
- }
223
- }
224
- }
225
- }
226
- }
227
-
228
- @mixin fullscreen() {
229
- inline-size: 100dvi;
230
- block-size: 100dvb;
231
-
232
- .dso-dialog {
233
- display: flex;
234
- flex-direction: column;
235
-
236
- inline-size: 100%;
237
- block-size: 100%;
238
-
239
- > dso-scrollable {
240
- flex-grow: 1;
241
-
242
- max-block-size: unset;
243
- }
244
- }
245
-
246
- .dso-footer {
247
- flex-shrink: 0;
248
- }
249
- }
@@ -1,63 +0,0 @@
1
- @use "../../variables/media-query-breakpoints";
2
- @use "../../variables/zindex";
3
- @use "../button";
4
- @use "../icon";
5
- @use "../rich-content";
6
- @use "../modal";
7
-
8
- @use "../../di";
9
-
10
- body:has(dialog[open]),
11
- body:has(dso-modal.hydrated) {
12
- // block scrolling of the body when a dialog is open
13
- overflow: hidden;
14
- }
15
-
16
- .dso-modal {
17
- @include modal.root();
18
-
19
- &.dso-fullscreen {
20
- @include modal.fullscreen();
21
- }
22
-
23
- .dso-close {
24
- &::before {
25
- @include di.base("cross", icon.$size, middle);
26
-
27
- content: "";
28
- display: inline-block;
29
- }
30
- }
31
-
32
- .dso-footer {
33
- .dso-tertiary {
34
- float: inline-start;
35
- line-height: calc(1.5em - 1px);
36
- padding-block: button.$block-padding;
37
- padding-inline: 0;
38
- position: relative;
39
- }
40
- }
41
-
42
- @media screen and (max-width: media-query-breakpoints.$screen-xs-min) {
43
- @include modal.fullscreen();
44
- }
45
- }
46
-
47
- dso-modal {
48
- [slot="body"] {
49
- @include rich-content.children();
50
- }
51
-
52
- [slot="footer"] {
53
- @include modal.modal-wide-buttons();
54
-
55
- .dso-tertiary {
56
- float: inline-start;
57
- line-height: calc(1.5em - 1px);
58
- padding-block: button.$block-padding;
59
- padding-inline: 0;
60
- position: relative;
61
- }
62
- }
63
- }