@amsterdam/design-system-css 2.1.0 → 3.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 (49) hide show
  1. package/CHANGELOG.md +38 -0
  2. package/README.md +3 -3
  3. package/dist/avatar/avatar.css +1 -1
  4. package/dist/avatar/avatar.css.map +1 -1
  5. package/dist/button/button.css +1 -101
  6. package/dist/button/button.css.map +1 -1
  7. package/dist/field/field.css +1 -1
  8. package/dist/field/field.css.map +1 -1
  9. package/dist/field-set/field-set.css +1 -1
  10. package/dist/field-set/field-set.css.map +1 -1
  11. package/dist/hint/hint.css +1 -1
  12. package/dist/hint/hint.css.map +1 -1
  13. package/dist/index.css +1 -4709
  14. package/dist/index.css.map +1 -1
  15. package/dist/label/label.css +1 -1
  16. package/dist/label/label.css.map +1 -1
  17. package/dist/page/page.css +1 -1
  18. package/dist/page/page.css.map +1 -1
  19. package/dist/page-header/page-header.css +1 -1
  20. package/dist/page-header/page-header.css.map +1 -1
  21. package/dist/paragraph/paragraph.css +1 -1
  22. package/dist/paragraph/paragraph.css.map +1 -1
  23. package/package.json +4 -4
  24. package/src/components/alert/README.md +1 -1
  25. package/src/components/avatar/README.md +1 -1
  26. package/src/components/avatar/avatar.scss +10 -2
  27. package/src/components/field/README.md +1 -0
  28. package/src/components/field/field.scss +12 -3
  29. package/src/components/field-set/README.md +1 -0
  30. package/src/components/field-set/field-set.scss +29 -1
  31. package/src/components/gap/README.md +1 -1
  32. package/src/components/grid/README.md +1 -0
  33. package/src/components/hint/hint.scss +4 -0
  34. package/src/components/icon/README.md +1 -1
  35. package/src/components/label/label.scss +5 -0
  36. package/src/components/link/README.md +1 -1
  37. package/src/components/logo/README.md +3 -3
  38. package/src/components/margin/README.md +1 -1
  39. package/src/components/menu/README.md +4 -1
  40. package/src/components/page/README.md +5 -17
  41. package/src/components/page/page.scss +33 -0
  42. package/src/components/page-footer/README.md +17 -14
  43. package/src/components/page-header/README.md +6 -3
  44. package/src/components/page-header/page-header.scss +24 -24
  45. package/src/components/paragraph/paragraph.scss +18 -3
  46. package/dist/app/app.css +0 -40
  47. package/dist/app/app.css.map +0 -1
  48. package/dist/app-navigation/app-navigation.css +0 -249
  49. package/dist/app-navigation/app-navigation.css.map +0 -1
@@ -138,7 +138,8 @@
138
138
  }
139
139
 
140
140
  .ams-page-header__menu-link {
141
- display: inline-block;
141
+ display: inline-flex;
142
+ gap: var(--ams-page-header-menu-link-gap);
142
143
  text-decoration-line: var(--ams-page-header-menu-link-text-decoration-line);
143
144
  text-decoration-thickness: var(--ams-page-header-menu-link-text-decoration-thickness);
144
145
  text-underline-offset: var(--ams-page-header-menu-link-text-underline-offset);
@@ -150,6 +151,10 @@
150
151
  }
151
152
  }
152
153
 
154
+ .ams-page-header__mega-menu-button-item {
155
+ display: initial; // Override the `hidden` attribute; the mega menu list item is only shown when CSS loads.
156
+ }
157
+
153
158
  .ams-page-header__mega-menu-button-item--hide-on-wide-window {
154
159
  @media screen and (min-width: $ams-breakpoint-wide) {
155
160
  display: none;
@@ -199,46 +204,39 @@
199
204
  visibility: hidden;
200
205
  }
201
206
 
202
- .ams-page-header__menu-icon {
203
- line {
204
- stroke: currentColor;
205
- stroke-width: 3px;
206
- transform-origin: center;
207
- transition:
208
- translate 0.1s ease-in-out,
209
- rotate 0.2s ease-in-out,
210
- opacity 0.1s ease-in-out;
211
-
212
- @media (prefers-reduced-motion) {
213
- transition: none;
214
- }
215
- }
216
-
217
- .ams-page-header__menu-icon-top {
218
- translate: 0 -7px;
219
- }
220
-
221
- .ams-page-header__menu-icon-bottom {
222
- translate: 0 7px;
207
+ .ams-page-header__menu-icon-top,
208
+ .ams-page-header__menu-icon-middle,
209
+ .ams-page-header__menu-icon-bottom {
210
+ transform-origin: center;
211
+ transition:
212
+ opacity 0.1s ease-in-out,
213
+ rotate 0.2s ease-in-out,
214
+ translate 0.1s ease-in-out;
215
+
216
+ @media (prefers-reduced-motion) {
217
+ transition: none;
223
218
  }
224
219
  }
225
220
 
226
221
  .ams-page-header__menu-icon--open {
227
222
  .ams-page-header__menu-icon-top {
228
223
  rotate: 45deg;
229
- translate: 0;
224
+ translate: -4px 4px;
230
225
  }
226
+
231
227
  .ams-page-header__menu-icon-middle {
232
228
  opacity: 0%;
233
229
  }
230
+
234
231
  .ams-page-header__menu-icon-bottom {
235
232
  rotate: -45deg;
236
- translate: 0;
233
+ translate: -4px -4px;
237
234
  }
238
235
  }
239
236
 
240
237
  .ams-page-header__mega-menu {
241
238
  inline-size: 100%;
239
+ padding-block: var(--ams-page-header-mega-menu-padding-block);
242
240
  pointer-events: auto; // Set pointer events back to auto to allow the mega menu to be activated
243
241
 
244
242
  // Remove inline padding from Grids that are used in the mega menu.
@@ -253,6 +251,8 @@
253
251
  }
254
252
 
255
253
  .ams-page-header__grid-cell-narrow-window-only {
254
+ display: initial; // Override the `hidden` attribute; this cell duplicates the non-fixed links in the Page Header Menu.
255
+
256
256
  @media screen and (min-width: $ams-breakpoint-wide) {
257
257
  display: none;
258
258
  }
@@ -23,14 +23,29 @@
23
23
  @include reset-p;
24
24
  }
25
25
 
26
+ .ams-paragraph--large {
27
+ font-size: var(--ams-paragraph-large-font-size);
28
+ line-height: var(--ams-paragraph-large-line-height);
29
+
30
+ /*
31
+ * If text-wrap is not supported, it is ignored.
32
+ * This means the wrapped text will look less balanced, which is fine.
33
+ */
34
+ /* stylelint-disable-next-line plugin/use-baseline */
35
+ text-wrap: var(--ams-paragraph-large-text-wrap);
36
+ }
37
+
38
+ .ams-paragraph__b {
39
+ font-weight: inherit;
40
+ }
41
+
26
42
  .ams-paragraph--small {
27
43
  font-size: var(--ams-paragraph-small-font-size);
28
44
  line-height: var(--ams-paragraph-small-line-height);
29
45
  }
30
46
 
31
- .ams-paragraph--large {
32
- font-size: var(--ams-paragraph-large-font-size);
33
- line-height: var(--ams-paragraph-large-line-height);
47
+ .ams-paragraph__small {
48
+ font-size: inherit;
34
49
  }
35
50
 
36
51
  .ams-paragraph--inverse {
package/dist/app/app.css DELETED
@@ -1,40 +0,0 @@
1
- /**
2
- * @license EUPL-1.2+
3
- * Copyright Gemeente Amsterdam
4
- */
5
- /**
6
- * @license EUPL-1.2+
7
- * Copyright Gemeente Amsterdam
8
- */
9
- /**
10
- * CSS Custom properties cannot be used in media queries.
11
- * We resort to Sass variables for our breakpoint values.
12
- */
13
- /** The breakpoint at which medium screens start. */
14
- /** The breakpoint at which wide screens start. */
15
- .ams-app {
16
- display: grid;
17
- grid-template-areas: "header" "navigation" "content" "footer";
18
- }
19
- .ams-app .ams-app-navigation {
20
- grid-area: navigation;
21
- }
22
- .ams-app .ams-page-header {
23
- grid-area: header;
24
- }
25
- .ams-app .ams-app-content {
26
- grid-area: content;
27
- }
28
- .ams-app .ams-page-footer {
29
- grid-area: footer;
30
- }
31
- @media screen and (min-width: 72.5rem) {
32
- .ams-app {
33
- grid-template-areas: "navigation header" "navigation content" "navigation footer";
34
- grid-template-columns: auto 1fr;
35
- grid-template-rows: auto 1fr auto;
36
- min-block-size: 100dvh;
37
- }
38
- }
39
-
40
- /*# sourceMappingURL=app.css.map */
@@ -1 +0,0 @@
1
- {"version":3,"sourceRoot":"","sources":["../../src/components/app/app.scss","../../src/common/breakpoint.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA;ACAA;AAAA;AAAA;AAAA;AAKA;AAAA;AAAA;AAAA;AAKA;AAGA;ADNA;EACE;EACA,qBACE;;AAKF;EACE;;AAIF;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EAzBF;IA0BI,qBACE;IAGF;IACA;IACA","file":"app.css"}
@@ -1,249 +0,0 @@
1
- /**
2
- * @license EUPL-1.2+
3
- * Copyright Gemeente Amsterdam
4
- */
5
- /**
6
- * @license EUPL-1.2+
7
- * Copyright Gemeente Amsterdam
8
- */
9
- /**
10
- * CSS Custom properties cannot be used in media queries.
11
- * We resort to Sass variables for our breakpoint values.
12
- */
13
- /** The breakpoint at which medium screens start. */
14
- /** The breakpoint at which wide screens start. */
15
- .ams-app-navigation {
16
- align-items: flex-start;
17
- background: var(--ams-app-navigation-background-color);
18
- display: grid;
19
- grid-template-rows: 88px 1fr;
20
- max-block-size: 0;
21
- min-inline-size: var(--ams-app-navigation-inline-size);
22
- overflow: hidden;
23
- }
24
- .ams-app-navigation--expanded {
25
- max-block-size: 1000px;
26
- }
27
- @media screen and (min-width: 72.5rem) {
28
- .ams-app-navigation--expanded {
29
- max-block-size: initial;
30
- min-inline-size: var(--ams-app-navigation-expanded-inline-size);
31
- }
32
- }
33
- @media screen and (min-width: 72.5rem) {
34
- .ams-app-navigation {
35
- max-block-size: initial;
36
- overflow: initial;
37
- }
38
- }
39
- @supports (grid-template-rows: subgrid) {
40
- .ams-app-navigation {
41
- grid-template-rows: subgrid;
42
- }
43
- }
44
-
45
- .ams-app-navigation .ams-app-navigation__toggle {
46
- align-self: center;
47
- display: none;
48
- justify-self: flex-end;
49
- }
50
- @media screen and (min-width: 72.5rem) {
51
- .ams-app-navigation .ams-app-navigation__toggle {
52
- display: initial;
53
- }
54
- }
55
-
56
- .ams-app-navigation--expanded .ams-app-navigation__toggle {
57
- rotate: 180deg;
58
- }
59
-
60
- .ams-app-navigation__menu {
61
- block-size: 0;
62
- container-name: appnavigation;
63
- container-type: inline-size;
64
- flex-direction: column;
65
- gap: var(--ams-space-m);
66
- grid-row-start: 2;
67
- inset-block-start: var(--ams-space-m);
68
- list-style: none;
69
- list-style-type: none;
70
- margin-block: 0;
71
- padding-block: 0;
72
- padding-inline: 0;
73
- position: sticky;
74
- }
75
- .ams-app-navigation__menu:not([popover]) {
76
- display: flex;
77
- }
78
- @media screen and (max-width: 72.5rem) {
79
- .ams-app-navigation--expanded .ams-app-navigation__menu {
80
- block-size: auto;
81
- padding-block: var(--ams-space-m);
82
- }
83
- }
84
- @media screen and (min-width: 72.5rem) {
85
- .ams-app-navigation__menu {
86
- block-size: initial;
87
- gap: 0;
88
- padding-block: 0;
89
- padding-inline: 0;
90
- }
91
- .ams-app-navigation--expanded .ams-app-navigation__menu {
92
- block-size: initial;
93
- padding-block: 0;
94
- }
95
- }
96
- @supports (grid-template-rows: subgrid) {
97
- .ams-app-navigation__menu {
98
- grid-row-start: content-start;
99
- }
100
- }
101
-
102
- .ams-app-navigation__menu-link {
103
- align-items: center;
104
- background: none;
105
- border-block: none;
106
- border-inline-end: 4px solid var(--ams-app-navigation-background-color);
107
- border-inline-start: none;
108
- color: var(--ams-app-navigation-menu-link-color);
109
- column-gap: var(--ams-space-m);
110
- display: flex;
111
- flex-direction: column;
112
- font-family: var(--ams-app-navigation-menu-link-font-family);
113
- font-size: var(--ams-app-navigation-menu-link-font-size);
114
- font-weight: var(--ams-app-navigation-menu-link-font-weight);
115
- line-height: var(--ams-app-navigation-menu-link-line-height);
116
- margin-block: 0;
117
- margin-inline: 0;
118
- outline-offset: var(--ams-app-navigation-menu-link-outline-offset);
119
- padding-block: var(--ams-space-m);
120
- text-decoration-line: var(--ams-app-navigation-menu-link-text-decoration-line);
121
- text-decoration-thickness: var(--ams-app-navigation-menu-link-text-decoration-thickness);
122
- text-underline-offset: var(--ams-app-navigation-menu-link-text-underline-offset);
123
- }
124
- .ams-app-navigation__menu-link .ams-app-navigation__menu-link-label {
125
- flex-grow: 1;
126
- }
127
- .ams-app-navigation__menu-link .ams-icon {
128
- align-self: initial; /* Workaround to center the icon */
129
- }
130
- .ams-app-navigation__menu-item--open .ams-app-navigation__menu-link .ams-app-navigation__menu-link-chevron {
131
- rotate: 180deg;
132
- }
133
- .ams-app-navigation__menu-link[popovertarget] {
134
- inline-size: 100%;
135
- }
136
- .ams-app-navigation__menu-link[popovertarget] .ams-app-navigation__menu-link-chevron {
137
- display: none;
138
- }
139
- @container appnavigation (min-width: 120px) {
140
- .ams-app-navigation__menu-link {
141
- flex-direction: row;
142
- justify-content: flex-start;
143
- padding-block: var(--ams-space-s);
144
- padding-inline: var(--ams-space-l) var(--ams-space-m);
145
- }
146
- }
147
- .ams-app-navigation__menu-link:hover:not(.ams-app-navigation__menu-link--active) {
148
- background-color: var(--ams-app-navigation-menu-link-hover-background-color);
149
- border-inline-end-color: var(--ams-color-interactive-hover);
150
- }
151
- .ams-app-navigation__menu-link--active {
152
- border-inline-end-color: var(--ams-color-interactive-inverse);
153
- }
154
- .ams-app-navigation__menu-link[popoverTarget=projecten-menu] {
155
- anchor-name: --projecten-menu;
156
- }
157
- .ams-app-navigation__menu-link[popoverTarget=rapportages-menu] {
158
- anchor-name: --rapportages-menu;
159
- }
160
-
161
- .ams-app-navigation__menu[popover] {
162
- background: var(--ams-app-navigation-background-color);
163
- block-size: auto;
164
- border: none;
165
- display: none;
166
- inline-size: auto;
167
- /* stylelint-disable-next-line property-disallowed-list */
168
- inset: auto;
169
- inset-block-start: anchor(top);
170
- inset-inline-start: anchor(right);
171
- margin-inline-start: 2px;
172
- opacity: 0%;
173
- position: absolute;
174
- transition: opacity 0.4s, display 0.4s, overlay 0.4s;
175
- transition-behavior: allow-discrete;
176
- }
177
- .ams-app-navigation__menu[popover] .ams-app-navigation__menu-link {
178
- flex-direction: row;
179
- justify-content: flex-start;
180
- padding-inline: var(--ams-space-s);
181
- }
182
- .ams-app-navigation__menu[popover] .ams-app-navigation__menu-link:hover {
183
- background-color: var(--ams-app-navigation-menu-link-hover-background-color);
184
- border-inline-end-color: var(--ams-color-interactive-hover);
185
- }
186
- .ams-app-navigation__menu[popover][id=projecten-menu] {
187
- /* stylelint-disable-next-line csstools/use-logical */
188
- left: anchor(--projecten-menu right);
189
- position-anchor: --projecten-menu;
190
- position-try-fallbacks: --bottom;
191
- /* stylelint-disable-next-line csstools/use-logical */
192
- top: anchor(--projecten-menu top);
193
- }
194
- .ams-app-navigation__menu[popover][id=rapportages-menu] {
195
- /* stylelint-disable-next-line csstools/use-logical */
196
- left: anchor(--rapportages-menu right);
197
- position-anchor: --rapportages-menu;
198
- position-try-fallbacks: --bottom;
199
- /* stylelint-disable-next-line csstools/use-logical */
200
- top: anchor(--rapportages-menu top);
201
- }
202
-
203
- .ams-app-navigation__menu:popover-open {
204
- border: none;
205
- box-sizing: border-box;
206
- display: flex;
207
- gap: var(--ams-space-xs);
208
- inline-size: 240px;
209
- opacity: 100%;
210
- }
211
- @starting-style {
212
- .ams-app-navigation__menu:popover-open {
213
- display: flex;
214
- opacity: 0%;
215
- }
216
- }
217
-
218
- .ams-app-navigation__menu-item {
219
- overflow: hidden;
220
- }
221
- .ams-app-navigation__menu-item .ams-app-navigation__menu:not([popover]) {
222
- background-color: white;
223
- block-size: 0;
224
- gap: 0;
225
- padding-block: 0;
226
- }
227
- .ams-app-navigation__menu-item .ams-app-navigation__menu:not([popover]) .ams-app-navigation__menu-link {
228
- border-inline-end-color: var(--ams-color-interactive-inverse);
229
- color: var(--ams-color-interactive);
230
- padding-block: var(--ams-space-xs);
231
- }
232
- .ams-app-navigation__menu-item .ams-app-navigation__menu:not([popover]) .ams-app-navigation__menu-link .ams-icon {
233
- rotate: 0deg;
234
- }
235
- .ams-app-navigation__menu-item .ams-app-navigation__menu:not([popover]) .ams-app-navigation__menu-link:hover {
236
- background-color: white;
237
- color: var(--ams-color-interactive-hover);
238
- text-decoration-line: var(--ams-app-navigation-menu-link-hover-text-decoration-line);
239
- }
240
- .ams-app-navigation__menu-item--open .ams-app-navigation__menu:not([popover]) {
241
- block-size: auto;
242
- }
243
-
244
- @position-try --bottom {
245
- inset-block-end: anchor(bottom);
246
- inset-inline-start: anchor(right);
247
- }
248
-
249
- /*# sourceMappingURL=app-navigation.css.map */
@@ -1 +0,0 @@
1
- {"version":3,"sourceRoot":"","sources":["../../src/components/app-navigation/app-navigation.scss","../../src/common/breakpoint.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA;ACAA;AAAA;AAAA;AAAA;AAKA;AAAA;AAAA;AAAA;AAKA;AAGA;ADNA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAEA;EAHF;IAII;IACA;;;AAIJ;EAlBF;IAmBI;IACA;;;AAGF;EAvBF;IAwBI;;;;AAIJ;EACE;EACA;EACA;;AAEA;EALF;IAMI;;;;AAIJ;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;IACE;IACA;;;AAIJ;EA1BF;IA2BI;IACA;IACA;IACA;;EAEA;IACE;IACA;;;AAIJ;EAtCF;IAuCI;;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;AAIA;EACE;;AAIJ;EACE;;AAEA;EACE;;AAIJ;EA5CF;IA6CI;IACA;IACA;IACA;;;AAGF;EACE;EACA;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;AACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,YACE;EAGF;;AAEA;EACE;EACA;EACA;;AAEA;EACE;EACA;;AAIJ;AACE;EACA;EACA;EACA;AACA;EACA;;AAGF;AACE;EACA;EACA;EACA;AACA;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EARF;IASI;IACA;;;;AAIJ;EACE;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;EACA;;AAMJ;EACE;;;AAKN;EACE;EACA","file":"app-navigation.css"}