@bonniernews/dn-design-system-web 8.0.7 → 8.0.8

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 (41) hide show
  1. package/.prettierrc +17 -0
  2. package/.stylelintignore +1 -0
  3. package/.stylelintrc.json +22 -0
  4. package/CHANGELOG.md +8 -0
  5. package/components/article-body-image/article-body-image.scss +1 -3
  6. package/components/blocked-content/blocked-content.scss +1 -3
  7. package/components/buddy-menu/buddy-menu.scss +1 -2
  8. package/components/button/button.scss +13 -24
  9. package/components/button-toggle/button-toggle.scss +14 -28
  10. package/components/byline/byline.scss +1 -4
  11. package/components/factbox/factbox.scss +1 -4
  12. package/components/floating-button/floating-button.scss +0 -2
  13. package/components/footer/footer.scss +1 -3
  14. package/components/group-header/group-header.scss +2 -2
  15. package/components/icon-button/icon-button.scss +0 -2
  16. package/components/quote/quote.scss +1 -3
  17. package/components/switch/switch.scss +7 -17
  18. package/components/teaser-dot/teaser-dot.scss +5 -5
  19. package/components/teaser-large/teaser-large.scss +3 -8
  20. package/components/teaser-list-vertical/teaser-list-vertical.scss +1 -1
  21. package/components/teaser-longlife/teaser-longlife.scss +1 -1
  22. package/components/teaser-native/teaser-native.scss +1 -1
  23. package/components/teaser-onsite/teaser-onsite.scss +2 -4
  24. package/components/teaser-package/teaser-package.scss +1 -4
  25. package/components/teaser-right-now/teaser-right-now.scss +1 -3
  26. package/components/teaser-slideshow/teaser-slideshow.scss +1 -3
  27. package/components/teaser-split/teaser-split.scss +1 -4
  28. package/components/teaser-standard/teaser-standard.scss +1 -3
  29. package/components/teaser-swipe-card/teaser-swipe-card.scss +1 -1
  30. package/components/teaser-tipsa/teaser-tipsa.scss +1 -4
  31. package/components/text-button/text-button.scss +0 -2
  32. package/components/text-input/text-input.scss +12 -16
  33. package/components/thematic-break/thematic-break.scss +1 -3
  34. package/components/vip-badge/vip-badge.scss +2 -4
  35. package/foundations/a11y/a11y.scss +1 -1
  36. package/foundations/helpers/loading.scss +1 -1
  37. package/foundations/helpers/shadows.scss +2 -11
  38. package/foundations/helpers/spacing-deprecated.scss +3 -17
  39. package/foundations/helpers/spacing.scss +1 -5
  40. package/foundations/helpers/typography.scss +3 -16
  41. package/package.json +4 -6
package/.prettierrc ADDED
@@ -0,0 +1,17 @@
1
+ {
2
+ "semi": false,
3
+ "tabWidth": 2,
4
+ "printWidth": 120,
5
+ "singleQuote": true,
6
+ "jsxSingleQuote": true,
7
+ "trailingComma": "all",
8
+ "bracketSpacing": true,
9
+ "overrides": [
10
+ {
11
+ "files": "**/*.scss",
12
+ "options": {
13
+ "singleQuote": false
14
+ }
15
+ }
16
+ ]
17
+ }
@@ -0,0 +1 @@
1
+ foundations/variables/**
@@ -0,0 +1,22 @@
1
+ {
2
+ "plugins": [
3
+ "stylelint-selector-bem-pattern",
4
+ "stylelint-sass-render-errors"
5
+ ],
6
+ "extends": [
7
+ "stylelint-config-recommended-scss",
8
+ "stylelint-prettier/recommended"
9
+ ],
10
+ "rules": {
11
+ "plugin/sass-render-errors": true,
12
+ "no-descending-specificity": null,
13
+ "declaration-no-important": true,
14
+ "scss/at-import-partial-extension": null,
15
+ "scss/no-global-function-names": null,
16
+ "scss/comment-no-empty": null,
17
+ "plugin/selector-bem-pattern": {
18
+ "preset": "bem"
19
+ },
20
+ "prettier/prettier": [true, {"printWidth": 120}]
21
+ }
22
+ }
package/CHANGELOG.md CHANGED
@@ -3,6 +3,14 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## 8.0.8 (2023-11-10)
7
+
8
+ **Note:** Version bump only for package @bonniernews/dn-design-system-web
9
+
10
+
11
+
12
+
13
+
6
14
  ## 8.0.7 (2023-11-09)
7
15
 
8
16
 
@@ -2,7 +2,5 @@
2
2
  @use "../../assets/article-image/article-image.scss" as *;
3
3
 
4
4
  .ds-article-image--body {
5
- padding: ds-spacing(
6
- $ds-s-gap-vertical-static-medium 0 $ds-s-gap-vertical-static-large
7
- );
5
+ padding: ds-spacing($ds-s-gap-vertical-static-medium 0 $ds-s-gap-vertical-static-large);
8
6
  }
@@ -4,9 +4,7 @@
4
4
  .ds-blocked-content {
5
5
  background-color: $ds-color-surface-background;
6
6
  margin: 0;
7
- padding: ds-spacing(
8
- $ds-s-gap-vertical-static-medium 0 $ds-s-gap-vertical-static-large
9
- );
7
+ padding: ds-spacing($ds-s-gap-vertical-static-medium 0 $ds-s-gap-vertical-static-large);
10
8
 
11
9
  .ds-blocked-content__inner {
12
10
  text-align: center;
@@ -26,8 +26,7 @@
26
26
  .ds-buddy-menu__inner {
27
27
  background-color: $ds-color-surface-elevated;
28
28
  border-radius: ds-metrics-border-radius(x2);
29
- box-shadow: ds-shadow-get-box-shadow($ds-shadow-drop-shadow-a),
30
- ds-shadow-get-box-shadow($ds-shadow-drop-shadow-b);
29
+ box-shadow: ds-shadow-get-box-shadow($ds-shadow-drop-shadow-a), ds-shadow-get-box-shadow($ds-shadow-drop-shadow-b);
31
30
  position: relative;
32
31
  z-index: 1;
33
32
  }
@@ -44,8 +44,9 @@ $ds-btn__icon-size: 24px;
44
44
  @include ds-typography($ds-typography-detailstandard-button);
45
45
  border: $ds-btn-outlined__border-width solid;
46
46
  border-radius: ds-metrics-border-radius(x1);
47
- /* stylelint-disable-next-line */
48
- padding: ds-spacing($ds-s-075, rem) - ds-px-to-rem($ds-btn-outlined__border-width) ds-spacing($ds-s-150, rem) - ds-px-to-rem($ds-btn-outlined__border-width);
47
+ padding: ds-spacing($ds-s-075, rem) - ds-px-to-rem($ds-btn-outlined__border-width) ds-spacing($ds-s-150, rem) - ds-px-to-rem(
48
+ $ds-btn-outlined__border-width
49
+ );
49
50
  position: relative;
50
51
  &::before {
51
52
  content: "";
@@ -84,12 +85,8 @@ $ds-btn__icon-size: 24px;
84
85
  }
85
86
 
86
87
  .ds-btn--small .ds-btn__inner {
87
- padding: ds-px-to-rem(
88
- ds-spacing($ds-s-050) - $ds-btn-outlined__border-width
89
- )
90
- ds-px-to-rem(
91
- ds-spacing($ds-s-125) - $ds-btn-outlined__border-width
92
- );
88
+ padding: ds-px-to-rem(ds-spacing($ds-s-050) - $ds-btn-outlined__border-width)
89
+ ds-px-to-rem(ds-spacing($ds-s-125) - $ds-btn-outlined__border-width);
93
90
  }
94
91
 
95
92
  @include ds-mq-only-breakpoint(mobile) {
@@ -119,31 +116,23 @@ $ds-btn__icon-size: 24px;
119
116
 
120
117
  .ds-btn--icon-right {
121
118
  .ds-btn__inner {
122
- padding-right: ds-px-to-rem(
123
- ds-spacing($ds-s-125) - $ds-btn-outlined__border-width
124
- );
119
+ padding-right: ds-px-to-rem(ds-spacing($ds-s-125) - $ds-btn-outlined__border-width);
125
120
  }
126
121
  &.ds-btn--small .ds-btn__inner {
127
- padding-right: ds-px-to-rem(
128
- ds-spacing($ds-s-100) - $ds-btn-outlined__border-width
129
- );
122
+ padding-right: ds-px-to-rem(ds-spacing($ds-s-100) - $ds-btn-outlined__border-width);
130
123
  }
131
124
  }
132
125
 
133
126
  .ds-btn--icon-left {
134
127
  .ds-btn__inner {
135
128
  flex-direction: row-reverse;
136
- padding-left: ds-px-to-rem(
137
- ds-spacing($ds-s-125) - $ds-btn-outlined__border-width
138
- );
129
+ padding-left: ds-px-to-rem(ds-spacing($ds-s-125) - $ds-btn-outlined__border-width);
139
130
  .ds-icon {
140
131
  margin: ds-spacing(0 $ds-s-050 0 0, rem);
141
132
  }
142
133
  }
143
134
  &.ds-btn--small .ds-btn__inner {
144
- padding-left: ds-px-to-rem(
145
- ds-spacing($ds-s-100) - $ds-btn-outlined__border-width
146
- );
135
+ padding-left: ds-px-to-rem(ds-spacing($ds-s-100) - $ds-btn-outlined__border-width);
147
136
  }
148
137
  }
149
138
 
@@ -296,8 +285,9 @@ $ds-btn__icon-size: 24px;
296
285
 
297
286
  .ds-btn.ds-force-px {
298
287
  .ds-btn__inner {
299
- padding: ds-spacing($ds-s-075) - $ds-btn-outlined__border-width
300
- ds-spacing($ds-s-150) - $ds-btn-outlined__border-width;
288
+ /* stylelint-disable-next-line */
289
+ padding: ds-spacing($ds-s-075) - $ds-btn-outlined__border-width ds-spacing($ds-s-150) -
290
+ $ds-btn-outlined__border-width;
301
291
  @include ds-typography($ds-typography-detailstandard-button, true);
302
292
  }
303
293
  &.ds-btn--icon-left .ds-btn__inner,
@@ -319,8 +309,7 @@ $ds-btn__icon-size: 24px;
319
309
  }
320
310
  &.ds-btn--small {
321
311
  .ds-btn__inner {
322
- padding: ds-spacing($ds-s-050)-$ds-btn-outlined__border-width
323
- ds-spacing($ds-s-125)-$ds-btn-outlined__border-width;
312
+ padding: ds-spacing($ds-s-050)-$ds-btn-outlined__border-width ds-spacing($ds-s-125)-$ds-btn-outlined__border-width;
324
313
  }
325
314
  &.ds-btn--icon-right .ds-btn__inner {
326
315
  padding-right: ds-spacing($ds-s-100)-$ds-btn-outlined__border-width;
@@ -47,8 +47,9 @@ $ds-btn-toggle__icon-size-xsmall: 20px;
47
47
  @include ds-typography($ds-typography-detailstandard-button);
48
48
  border: $ds-btn-toggle-outlined__border-width solid;
49
49
  border-radius: 100px;
50
- /* stylelint-disable-next-line */
51
- padding: ds-spacing($ds-s-075, rem) - ds-px-to-rem($ds-btn-toggle-outlined__border-width) ds-spacing($ds-s-150, rem) - ds-px-to-rem($ds-btn-toggle-outlined__border-width);
50
+ padding: ds-spacing($ds-s-075, rem) - ds-px-to-rem($ds-btn-toggle-outlined__border-width) ds-spacing($ds-s-150, rem) - ds-px-to-rem(
51
+ $ds-btn-toggle-outlined__border-width
52
+ );
52
53
  position: relative;
53
54
  &::before {
54
55
  content: "";
@@ -90,22 +91,14 @@ $ds-btn-toggle__icon-size-xsmall: 20px;
90
91
  }
91
92
 
92
93
  .ds-btn-toggle--small .ds-btn-toggle__inner {
93
- padding: ds-px-to-rem(
94
- ds-spacing($ds-s-050) - $ds-btn-toggle-outlined__border-width
95
- )
96
- ds-px-to-rem(
97
- ds-spacing($ds-s-125) - $ds-btn-toggle-outlined__border-width
98
- );
94
+ padding: ds-px-to-rem(ds-spacing($ds-s-050) - $ds-btn-toggle-outlined__border-width)
95
+ ds-px-to-rem(ds-spacing($ds-s-125) - $ds-btn-toggle-outlined__border-width);
99
96
  }
100
97
 
101
98
  .ds-btn-toggle--xsmall .ds-btn-toggle__inner {
102
99
  @include ds-typography($ds-typography-detailstandard-button-small);
103
- padding: ds-px-to-rem(
104
- ds-spacing($ds-s-025) - $ds-btn-toggle-outlined__border-width
105
- )
106
- ds-px-to-rem(
107
- ds-spacing($ds-s-075) - $ds-btn-toggle-outlined__border-width
108
- );
100
+ padding: ds-px-to-rem(ds-spacing($ds-s-025) - $ds-btn-toggle-outlined__border-width)
101
+ ds-px-to-rem(ds-spacing($ds-s-075) - $ds-btn-toggle-outlined__border-width);
109
102
  }
110
103
 
111
104
  @include ds-mq-only-breakpoint(mobile) {
@@ -168,9 +161,7 @@ $ds-btn-toggle__icon-size-xsmall: 20px;
168
161
  background-color: transparent;
169
162
  border-color: $ds-color-border-primary-03;
170
163
  color: $ds-color-text-primary;
171
- padding-left: ds-px-to-rem(
172
- ds-spacing($ds-s-125) - $ds-btn-toggle-outlined__border-width
173
- );
164
+ padding-left: ds-px-to-rem(ds-spacing($ds-s-125) - $ds-btn-toggle-outlined__border-width);
174
165
 
175
166
  .ds-btn-toggle__on {
176
167
  display: flex;
@@ -191,15 +182,11 @@ $ds-btn-toggle__icon-size-xsmall: 20px;
191
182
  }
192
183
 
193
184
  &.ds-btn-toggle--small .ds-btn-toggle__inner {
194
- padding-left: ds-px-to-rem(
195
- ds-spacing($ds-s-100) - $ds-btn-toggle-outlined__border-width
196
- );
185
+ padding-left: ds-px-to-rem(ds-spacing($ds-s-100) - $ds-btn-toggle-outlined__border-width);
197
186
  }
198
187
 
199
188
  &.ds-btn-toggle--xsmall .ds-btn-toggle__inner {
200
- padding-left: ds-px-to-rem(
201
- ds-spacing($ds-s-050) - $ds-btn-toggle-outlined__border-width
202
- );
189
+ padding-left: ds-px-to-rem(ds-spacing($ds-s-050) - $ds-btn-toggle-outlined__border-width);
203
190
  .ds-icon {
204
191
  height: ds-px-to-rem($ds-btn-toggle__icon-size-xsmall);
205
192
  width: ds-px-to-rem($ds-btn-toggle__icon-size-xsmall);
@@ -225,7 +212,8 @@ $ds-btn-toggle__icon-size-xsmall: 20px;
225
212
  .ds-btn-toggle.ds-force-px {
226
213
  .ds-btn-toggle__inner {
227
214
  /* stylelint-disable-next-line */
228
- padding: ds-spacing($ds-s-075) - $ds-btn-toggle-outlined__border-width ds-spacing($ds-s-150) - $ds-btn-toggle-outlined__border-width;
215
+ padding: ds-spacing($ds-s-075) - $ds-btn-toggle-outlined__border-width ds-spacing($ds-s-150) -
216
+ $ds-btn-toggle-outlined__border-width;
229
217
  @include ds-typography($ds-typography-detailstandard-button, true);
230
218
  }
231
219
  &.ds-btn-toggle--selected .ds-btn-toggle__inner {
@@ -238,8 +226,7 @@ $ds-btn-toggle__icon-size-xsmall: 20px;
238
226
  }
239
227
  &.ds-btn-toggle--small {
240
228
  .ds-btn-toggle__inner {
241
- padding: ds-spacing($ds-s-050)-$ds-btn-toggle-outlined__border-width
242
- ds-spacing($ds-s-125)-$ds-btn-toggle-outlined__border-width;
229
+ padding: ds-spacing($ds-s-050)-$ds-btn-toggle-outlined__border-width ds-spacing($ds-s-125)-$ds-btn-toggle-outlined__border-width;
243
230
  }
244
231
  &.ds-btn-toggle--selected .ds-btn-toggle__inner {
245
232
  padding-left: ds-spacing($ds-s-100)-$ds-btn-toggle-outlined__border-width;
@@ -248,8 +235,7 @@ $ds-btn-toggle__icon-size-xsmall: 20px;
248
235
  &.ds-btn-toggle--xsmall {
249
236
  .ds-btn-toggle__inner {
250
237
  @include ds-typography($ds-typography-detailstandard-button-small, true);
251
- padding: ds-spacing($ds-s-025)-$ds-btn-toggle-outlined__border-width
252
- ds-spacing($ds-s-075)-$ds-btn-toggle-outlined__border-width;
238
+ padding: ds-spacing($ds-s-025)-$ds-btn-toggle-outlined__border-width ds-spacing($ds-s-075)-$ds-btn-toggle-outlined__border-width;
253
239
  .ds-icon {
254
240
  margin: ds-spacing(0 $ds-s-025 0 0);
255
241
  height: $ds-btn-toggle__icon-size-xsmall;
@@ -102,10 +102,7 @@ $ds-byline__image-size--direkt: 36px;
102
102
  .ds-byline__title {
103
103
  @include ds-typography($ds-typography-functional-heading01semibold);
104
104
  @at-root .ds-force-px#{&} {
105
- @include ds-typography(
106
- $ds-typography-functional-heading01semibold,
107
- true
108
- );
105
+ @include ds-typography($ds-typography-functional-heading01semibold, true);
109
106
  }
110
107
  color: $ds-color-text-primary;
111
108
  text-align: left;
@@ -4,7 +4,6 @@
4
4
  $ds-factbox__grade-size: 40px;
5
5
  $ds-factbox__show-more-fade-height: 48px;
6
6
  $ds-factbox__padding: ds-spacing($ds-s-100);
7
- /* stylelint-disable-next-line */
8
7
  $ds-factbox-border-width: 4px;
9
8
  $ds-factbox__padding-left: $ds-factbox__padding - $ds-factbox-border-width;
10
9
  $ds-factbox__max-height: 500px; // includes top/bottom spacing
@@ -13,9 +12,7 @@ $ds-factbox__max-height: 500px; // includes top/bottom spacing
13
12
  background-color: $ds-color-surface-background;
14
13
  box-sizing: border-box;
15
14
  margin: 0;
16
- padding: ds-spacing(
17
- $ds-s-gap-vertical-static-medium 0 $ds-s-gap-vertical-static-large
18
- );
15
+ padding: ds-spacing($ds-s-gap-vertical-static-medium 0 $ds-s-gap-vertical-static-large);
19
16
 
20
17
  .ds-factbox__inner {
21
18
  border-top: ds-metrics-border-width(x1) solid $ds-color-border-primary;
@@ -53,9 +53,7 @@
53
53
  --ds-floating-btn__inner-padding: #{ds-spacing($ds-s-050 $ds-s-100 $ds-s-050 $ds-s-125, rem)};
54
54
  }
55
55
  }
56
- }
57
56
 
58
- .ds-floating-btn {
59
57
  cursor: pointer;
60
58
  background-color: transparent;
61
59
  border: none;
@@ -57,9 +57,7 @@ $ds-footer-column-gap: ds-spacing($ds-s-400);
57
57
 
58
58
  &__rudolf,
59
59
  &__editors {
60
- padding: ds-spacing(
61
- $ds-footer-row-padding-spacing-token 0 $ds-footer-row-gap-spacing-token
62
- );
60
+ padding: ds-spacing($ds-footer-row-padding-spacing-token 0 $ds-footer-row-gap-spacing-token);
63
61
 
64
62
  &,
65
63
  p {
@@ -7,7 +7,6 @@
7
7
  --group-header-color: #{$ds-color-text-primary};
8
8
  --group-header-icon-color: currentColor;
9
9
  display: flex;
10
- align-items: center;
11
10
  justify-content: space-between;
12
11
  align-items: stretch;
13
12
  background: var(--group-header-background);
@@ -42,7 +41,8 @@
42
41
  padding-right: ds-spacing($ds-s-050);
43
42
  }
44
43
 
45
- .ds-btn-toggle, .ds-group-header__arrows {
44
+ .ds-btn-toggle,
45
+ .ds-group-header__arrows {
46
46
  margin-top: 2px; // special case due to design margin extending from the component's visual size, not its clickable area
47
47
  margin-bottom: 2px;
48
48
  }
@@ -21,9 +21,7 @@ $ds-btn-outlined__border-width: ds-metrics-border-width(x1);
21
21
  &.ds-icon-btn--large {
22
22
  --ds-icon-btn__inner-padding: #{ds-spacing($ds-s-075)-$ds-btn-outlined__border-width};
23
23
  }
24
- }
25
24
 
26
- .ds-icon-btn {
27
25
  cursor: pointer;
28
26
  background-color: transparent;
29
27
  border: 0;
@@ -4,9 +4,7 @@
4
4
  @include ds-typography($ds-typography-detailarticle-quote);
5
5
  color: $ds-color-text-primary;
6
6
  margin: 0;
7
- padding: ds-spacing(
8
- $ds-s-gap-vertical-static-medium 0 $ds-s-gap-vertical-static-large
9
- );
7
+ padding: ds-spacing($ds-s-gap-vertical-static-medium 0 $ds-s-gap-vertical-static-large);
10
8
  position: relative;
11
9
 
12
10
  @at-root .ds-force-px#{&} {
@@ -36,7 +36,9 @@ $ds-switch__container-width: 44px;
36
36
  width: ds-px-to-rem($ds-switch__container-width);
37
37
  background-color: $ds-color-component-primary-overlay-02;
38
38
  border-radius: 100px;
39
- transition: background-color 500ms ease, outline-color 500ms ease;
39
+ transition:
40
+ background-color 500ms ease,
41
+ outline-color 500ms ease;
40
42
  @at-root .ds-force-px#{&} {
41
43
  height: $ds-switch__container-height;
42
44
  width: $ds-switch__container-width;
@@ -106,25 +108,13 @@ $ds-switch__container-width: 44px;
106
108
  }
107
109
 
108
110
  @include ds-hover() {
109
- .ds-switch
110
- input:not(:disabled)
111
- + .ds-switch__inner:hover
112
- .ds-switch__box::before,
113
- .ds-list-item--switch:hover
114
- input:not(:disabled)
115
- + .ds-switch__inner
116
- .ds-switch__box::before {
111
+ .ds-switch input:not(:disabled) + .ds-switch__inner:hover .ds-switch__box::before,
112
+ .ds-list-item--switch:hover input:not(:disabled) + .ds-switch__inner .ds-switch__box::before {
117
113
  background-color: $ds-color-component-primary-overlay;
118
114
  }
119
115
  }
120
- .ds-switch
121
- input:not(:disabled)
122
- + .ds-switch__inner:active
123
- .ds-switch__box::before,
124
- .ds-list-item--switch:active
125
- input:not(:disabled)
126
- + .ds-switch__inner
127
- .ds-switch__box::before {
116
+ .ds-switch input:not(:disabled) + .ds-switch__inner:active .ds-switch__box::before,
117
+ .ds-list-item--switch:active input:not(:disabled) + .ds-switch__inner .ds-switch__box::before {
128
118
  background-color: $ds-color-component-primary-overlay-02;
129
119
  }
130
120
 
@@ -26,7 +26,7 @@
26
26
 
27
27
  &::after,
28
28
  &.ds-teaser-dot--flashing::before {
29
- content: '';
29
+ content: "";
30
30
  position: absolute;
31
31
  top: 0;
32
32
  bottom: 0;
@@ -40,7 +40,7 @@
40
40
 
41
41
  @keyframes dot-pulse {
42
42
  0% {
43
- transform: scale(.95);
43
+ transform: scale(0.95);
44
44
  }
45
45
 
46
46
  70% {
@@ -54,7 +54,7 @@
54
54
 
55
55
  @keyframes ripple-pulse {
56
56
  0% {
57
- transform: scale(.95);
57
+ transform: scale(0.95);
58
58
  opacity: 0.4;
59
59
  }
60
60
 
@@ -64,7 +64,7 @@
64
64
  }
65
65
 
66
66
  100% {
67
- transform: scale(.95);
68
- opacity: 0
67
+ transform: scale(0.95);
68
+ opacity: 0;
69
69
  }
70
70
  }
@@ -15,10 +15,7 @@
15
15
  .ds-teaser__content {
16
16
  display: flex;
17
17
  flex-direction: row;
18
- padding: ds-spacing(
19
- $ds-s-teaser-vertical-small $ds-s-teaser-horizontal
20
- $ds-s-teaser-vertical-medium
21
- );
18
+ padding: ds-spacing($ds-s-teaser-vertical-small $ds-s-teaser-horizontal $ds-s-teaser-vertical-medium);
22
19
 
23
20
  .ds-teaser__content-inner {
24
21
  display: flex;
@@ -28,7 +25,7 @@
28
25
  }
29
26
 
30
27
  &:focus-visible {
31
- outline: none !important;
28
+ outline: none !important; /* stylelint-disable-line declaration-no-important */
32
29
 
33
30
  .ds-teaser__content {
34
31
  @include ds-teaser-focus(-8px, false);
@@ -113,9 +110,7 @@
113
110
  }
114
111
 
115
112
  &.ds-teaser--large-italic .ds-teaser__title {
116
- @include ds-typography(
117
- $ds-typography-expressive-heading02italicregular
118
- );
113
+ @include ds-typography($ds-typography-expressive-heading02italicregular);
119
114
 
120
115
  @include ds-hover(true) {
121
116
  .ds-teaser__title {
@@ -50,7 +50,7 @@ $ds-teaser-list-vertical-media-icon-size: 20px;
50
50
  background-color: $ds-color-border-primary;
51
51
  }
52
52
 
53
- .ds-teaser-dot {
53
+ .ds-teaser-dot {
54
54
  position: absolute;
55
55
  margin-top: ds-px-to-rem(6px);
56
56
  }
@@ -34,7 +34,7 @@
34
34
  padding: ds-spacing($ds-s-100);
35
35
  }
36
36
 
37
- &:not(:has(.ds-teaser-image)) {
37
+ &:not(:has(.ds-teaser-image)) {
38
38
  background-color: $ds-color-static-black;
39
39
 
40
40
  .ds-teaser__content {
@@ -17,7 +17,7 @@
17
17
 
18
18
  .ds-teaser__title {
19
19
  @include ds-typography($ds-typography-expressive-heading02bold);
20
- font-family: $ds-font--arial !important;
20
+ font-family: $ds-font--arial !important; /* stylelint-disable-line declaration-no-important */
21
21
  }
22
22
 
23
23
  &::after {
@@ -2,9 +2,7 @@
2
2
  @use "../../assets/teaser/teaser.scss" as *;
3
3
 
4
4
  .ds-teaser.ds-teaser--onsite {
5
- padding: ds-spacing(
6
- $ds-s-teaser-vertical-medium $ds-s-teaser-horizontal
7
- );
5
+ padding: ds-spacing($ds-s-teaser-vertical-medium $ds-s-teaser-horizontal);
8
6
  display: flex;
9
7
 
10
8
  .ds-teaser__title {
@@ -14,7 +12,7 @@
14
12
 
15
13
  @include ds-hover(true) {
16
14
  .ds-teaser__title {
17
- text-decoration: none !important;
15
+ text-decoration: none !important; /* stylelint-disable-line declaration-no-important */
18
16
  }
19
17
 
20
18
  .ds-teaser__text {
@@ -51,10 +51,7 @@
51
51
  background-color: transparent;
52
52
  }
53
53
 
54
- .ds-group-header
55
- + .ds-teaser--large:not(.ds-teaser--large-italic):not(
56
- .ds-teaser--large-big-italic
57
- ) {
54
+ .ds-group-header + .ds-teaser--large:not(.ds-teaser--large-italic):not(.ds-teaser--large-big-italic) {
58
55
  .ds-teaser__title {
59
56
  @include ds-typography($ds-typography-expressive-heading05bold);
60
57
  }
@@ -5,9 +5,7 @@
5
5
  display: flex;
6
6
  flex-direction: row;
7
7
  align-items: center;
8
- padding: ds-spacing(
9
- $ds-s-teaser-vertical-medium $ds-s-teaser-horizontal
10
- );
8
+ padding: ds-spacing($ds-s-teaser-vertical-medium $ds-s-teaser-horizontal);
11
9
 
12
10
  .ds-teaser__title {
13
11
  @include ds-typography($ds-typography-expressive-heading01bold);
@@ -14,9 +14,7 @@
14
14
  }
15
15
 
16
16
  .ds-teaser__content {
17
- padding: ds-spacing(
18
- $ds-s-teaser-vertical-medium $ds-s-teaser-horizontal $ds-s-100 $ds-s-teaser-horizontal
19
- );
17
+ padding: ds-spacing($ds-s-teaser-vertical-medium $ds-s-teaser-horizontal $ds-s-100 $ds-s-teaser-horizontal);
20
18
  display: block;
21
19
  color: $ds-color-text-primary;
22
20
 
@@ -2,10 +2,7 @@
2
2
  @use "../../assets/teaser/teaser.scss" as *;
3
3
 
4
4
  .ds-split-container {
5
- padding: ds-spacing(
6
- $ds-s-teaser-vertical-small $ds-s-teaser-horizontal
7
- $ds-s-teaser-vertical-medium
8
- );
5
+ padding: ds-spacing($ds-s-teaser-vertical-small $ds-s-teaser-horizontal $ds-s-teaser-vertical-medium);
9
6
  display: flex;
10
7
  flex-wrap: wrap;
11
8
  position: relative;
@@ -3,9 +3,7 @@
3
3
  @use "sass:math";
4
4
 
5
5
  .ds-teaser.ds-teaser--standard {
6
- padding: ds-spacing(
7
- $ds-s-teaser-vertical-small $ds-s-teaser-horizontal 0
8
- );
6
+ padding: ds-spacing($ds-s-teaser-vertical-small $ds-s-teaser-horizontal 0);
9
7
  overflow: hidden;
10
8
 
11
9
  .ds-teaser__title {
@@ -13,7 +13,7 @@
13
13
  margin-bottom: 0;
14
14
 
15
15
  &:focus-visible {
16
- outline: none !important;
16
+ outline: none !important; /* stylelint-disable-line declaration-no-important */
17
17
 
18
18
  .ds-teaser__text {
19
19
  @include ds-teaser-focus(-4px, false);
@@ -3,10 +3,7 @@
3
3
 
4
4
  .ds-teaser.ds-teaser--tipsa {
5
5
  .ds-teaser__content {
6
- padding: ds-spacing(
7
- $ds-s-teaser-vertical-small $ds-s-teaser-horizontal
8
- $ds-s-teaser-vertical-medium
9
- );
6
+ padding: ds-spacing($ds-s-teaser-vertical-small $ds-s-teaser-horizontal $ds-s-teaser-vertical-medium);
10
7
  }
11
8
 
12
9
  .ds-teaser__title {
@@ -51,9 +51,7 @@ $ds-text-btn__underline-offset: 2px;
51
51
  &.ds-text-btn--condensed {
52
52
  --ds-text-btn__inner-padding: #{ds-spacing($ds-s-025)};
53
53
  }
54
- }
55
54
 
56
- .ds-text-btn {
57
55
  cursor: pointer;
58
56
  background-color: transparent;
59
57
  border: 0;
@@ -4,9 +4,7 @@
4
4
 
5
5
  $ds-text-input-toggle-btn__width: 28px;
6
6
  $ds-text-input-toggle-btn__top: 22px;
7
- $ds-text-input-toggle-btn__area: (
8
- $ds-text-input-toggle-btn__width + ds-spacing($ds-s-050)
9
- );
7
+ $ds-text-input-toggle-btn__area: ($ds-text-input-toggle-btn__width + ds-spacing($ds-s-050));
10
8
 
11
9
  .ds-form-field__error {
12
10
  .ds-text-input__input {
@@ -26,8 +24,9 @@ $ds-text-input-toggle-btn__area: (
26
24
  color: $ds-color-text-primary;
27
25
  background-color: $ds-color-component-secondary;
28
26
  @include ds-typography($ds-typography-functional-body02regular);
29
- /* stylelint-disable-next-line */
30
- padding: ds-px-to-rem(ds-spacing($ds-s-100) - ds-metrics-border-width(x1)) ds-spacing($ds-s-100) - ds-metrics-border-width(x1);
27
+ padding: ds-px-to-rem(ds-spacing($ds-s-100) - ds-metrics-border-width(x1)) ds-spacing($ds-s-100) - ds-metrics-border-width(
28
+ x1
29
+ );
31
30
  border: solid ds-metrics-border-width(x1) $ds-color-border-primary-02;
32
31
  border-radius: ds-metrics-border-radius(x1);
33
32
  margin: 0;
@@ -35,9 +34,7 @@ $ds-text-input-toggle-btn__area: (
35
34
  &.password-toggle {
36
35
  padding-right: ds-px-to-rem($ds-text-input-toggle-btn__area);
37
36
  &:focus {
38
- padding-right: ds-px-to-rem(
39
- $ds-text-input-toggle-btn__area - ds-metrics-border-width(x2)
40
- );
37
+ padding-right: ds-px-to-rem($ds-text-input-toggle-btn__area - ds-metrics-border-width(x2));
41
38
  }
42
39
  }
43
40
 
@@ -54,10 +51,9 @@ $ds-text-input-toggle-btn__area: (
54
51
  }
55
52
 
56
53
  &:focus {
57
- padding: ds-px-to-rem(
58
- ds-spacing($ds-s-100) - ds-metrics-border-width(x2)
59
- )
60
- ds-spacing($ds-s-100) - ds-metrics-border-width(x2);
54
+ padding: ds-px-to-rem(ds-spacing($ds-s-100) - ds-metrics-border-width(x2)) ds-spacing($ds-s-100) - ds-metrics-border-width(
55
+ x2
56
+ );
61
57
  border-color: $ds-color-border-primary-03;
62
58
  border-width: ds-metrics-border-width(x2);
63
59
 
@@ -86,7 +82,9 @@ $ds-text-input-toggle-btn__area: (
86
82
  top: ds-spacing($ds-s-150, rem);
87
83
  left: ds-spacing($ds-s-100);
88
84
  z-index: 1;
89
- transition: font-size 0.1s ease-in, top 0.1s ease-in;
85
+ transition:
86
+ font-size 0.1s ease-in,
87
+ top 0.1s ease-in;
90
88
  @include ds-typography($ds-typography-functional-body02regular);
91
89
  &::before {
92
90
  content: "";
@@ -123,9 +121,7 @@ $ds-text-input-toggle-btn__area: (
123
121
  &.password-toggle {
124
122
  padding-right: $ds-text-input-toggle-btn__area;
125
123
  &:focus {
126
- padding-right: (
127
- $ds-text-input-toggle-btn__area - ds-metrics-border-width(x2)
128
- );
124
+ padding-right: ($ds-text-input-toggle-btn__area - ds-metrics-border-width(x2));
129
125
  }
130
126
  }
131
127
 
@@ -2,9 +2,7 @@
2
2
 
3
3
  .ds-thematic-break {
4
4
  margin: 0;
5
- padding: ds-spacing(
6
- $ds-s-gap-vertical-static-medium 0 $ds-s-gap-vertical-static-large
7
- );
5
+ padding: ds-spacing($ds-s-gap-vertical-static-medium 0 $ds-s-gap-vertical-static-large);
8
6
 
9
7
  hr {
10
8
  margin: 0 auto;
@@ -7,8 +7,7 @@ $ds-vip-badge__icon-size: 16px;
7
7
  display: none;
8
8
  align-items: center;
9
9
  box-sizing: content-box;
10
- border-radius: ds-px-to-rem(ds-metrics-border-radius(x1)) 0
11
- ds-px-to-rem(ds-metrics-border-radius(x1))
10
+ border-radius: ds-px-to-rem(ds-metrics-border-radius(x1)) 0 ds-px-to-rem(ds-metrics-border-radius(x1))
12
11
  ds-px-to-rem(ds-metrics-border-radius(x1));
13
12
  background-color: $ds-color-component-business;
14
13
  color: $ds-color-static-white;
@@ -18,8 +17,7 @@ $ds-vip-badge__icon-size: 16px;
18
17
 
19
18
  @at-root .ds-force-px#{&} {
20
19
  @include ds-typography($ds-typography-functional-meta01regular, true);
21
- border-radius: ds-metrics-border-radius(x1) 0 ds-metrics-border-radius(x1)
22
- ds-metrics-border-radius(x1);
20
+ border-radius: ds-metrics-border-radius(x1) 0 ds-metrics-border-radius(x1) ds-metrics-border-radius(x1);
23
21
  padding: ds-spacing($ds-s-025);
24
22
  }
25
23
 
@@ -1,5 +1,5 @@
1
1
  .visually-hidden {
2
- position: absolute !important;
2
+ position: absolute !important; /* stylelint-disable-line declaration-no-important */
3
3
  height: 1px;
4
4
  width: 1px;
5
5
  overflow: hidden;
@@ -7,7 +7,7 @@
7
7
  cursor: not-allowed;
8
8
 
9
9
  & *:not(.ds-spinner) {
10
- color: transparent !important;
10
+ color: transparent !important; /* stylelint-disable-line declaration-no-important */
11
11
  }
12
12
 
13
13
  .ds-spinner {
@@ -20,18 +20,9 @@
20
20
  $color: map.get($tmpMap, "color");
21
21
 
22
22
  @if map.get($tmpMap, "type") == "innerShadow" {
23
- --ds-shadow-#{$component}: inset
24
- #{$x}px
25
- #{$y}px
26
- #{$blur}px
27
- #{$spread}px
28
- #{$color};
23
+ --ds-shadow-#{$component}: inset #{$x}px #{$y}px #{$blur}px #{$spread}px #{$color};
29
24
  } @else {
30
- --ds-shadow-#{$component}: #{$x}px
31
- #{$y}px
32
- #{$blur}px
33
- #{$spread}px
34
- #{$color};
25
+ --ds-shadow-#{$component}: #{$x}px #{$y}px #{$blur}px #{$spread}px #{$color};
35
26
  }
36
27
  }
37
28
 
@@ -8,11 +8,7 @@
8
8
  @forward "../variables/deprecated/spacingComponentList.scss";
9
9
  @forward "../variables/deprecated/spacingLayoutList.scss";
10
10
 
11
- @function ds-spacing-component(
12
- $units: null,
13
- $sizeUnit: "px",
14
- $negative: false
15
- ) {
11
+ @function ds-spacing-component($units: null, $sizeUnit: "px", $negative: false) {
16
12
  @if $units {
17
13
  @return _ds-get-spacings-deprecated($spacingComponent, $units, $sizeUnit, $negative);
18
14
  }
@@ -20,23 +16,13 @@
20
16
  @return null;
21
17
  }
22
18
 
23
- @mixin ds-spacing-layout(
24
- $units: null,
25
- $property: padding,
26
- $sizeUnit: "px",
27
- $negative: false
28
- ) {
19
+ @mixin ds-spacing-layout($units: null, $property: padding, $sizeUnit: "px", $negative: false) {
29
20
  @if $units {
30
21
  $values: _ds-get-spacings-deprecated($spacingLayout, $units, $sizeUnit, $negative);
31
22
  @include ds-mq-largest-breakpoint(mobile) {
32
23
  #{$property}: $values;
33
24
  }
34
- $valuesLargeScreen: _ds-get-spacings-deprecated(
35
- $spacingLayoutLargeScreen,
36
- $units,
37
- $sizeUnit,
38
- $negative
39
- );
25
+ $valuesLargeScreen: _ds-get-spacings-deprecated($spacingLayoutLargeScreen, $units, $sizeUnit, $negative);
40
26
  @include ds-mq-smallest-breakpoint(tablet) {
41
27
  #{$property}: $valuesLargeScreen;
42
28
  }
@@ -11,11 +11,7 @@
11
11
  // @todo remove when possible
12
12
  @forward "spacing-deprecated.scss";
13
13
 
14
- @function ds-spacing(
15
- $units: null,
16
- $sizeUnit: "px",
17
- $negative: false
18
- ) {
14
+ @function ds-spacing($units: null, $sizeUnit: "px", $negative: false) {
19
15
  @if $units {
20
16
  $values: ();
21
17
 
@@ -49,10 +49,7 @@ $dsSerifWeights: (
49
49
  @mixin ds-typography($component, $forcePx: false) {
50
50
  $tmpMap: map.get($typographyTokensScreenSmall, $component);
51
51
  $tmpMapScreenLarge: map.get($typographyTokensScreenLarge, $component);
52
- $tmpMapScreenExtraLarge: map.get(
53
- $typographyTokensScreenExtraLarge,
54
- $component
55
- );
52
+ $tmpMapScreenExtraLarge: map.get($typographyTokensScreenExtraLarge, $component);
56
53
 
57
54
  @if $tmpMap {
58
55
  @include ds-mq-largest-breakpoint(mobile) {
@@ -67,12 +64,7 @@ $dsSerifWeights: (
67
64
  @include ds-mq-only-breakpoint(tablet) {
68
65
  @include _ds-normalize-letter-spacing($tmpMapScreenLarge);
69
66
  @each $key in map-keys($tmpMapScreenLarge) {
70
- @include _ds-typography-get-property(
71
- $tmpMapScreenLarge,
72
- $key,
73
- $forcePx,
74
- "large"
75
- );
67
+ @include _ds-typography-get-property($tmpMapScreenLarge, $key, $forcePx, "large");
76
68
  }
77
69
  }
78
70
  }
@@ -81,12 +73,7 @@ $dsSerifWeights: (
81
73
  @include ds-mq-smallest-breakpoint(desktop) {
82
74
  @include _ds-normalize-letter-spacing($tmpMapScreenExtraLarge);
83
75
  @each $key in map-keys($tmpMapScreenExtraLarge) {
84
- @include _ds-typography-get-property(
85
- $tmpMapScreenExtraLarge,
86
- $key,
87
- $forcePx,
88
- "extraLarge"
89
- );
76
+ @include _ds-typography-get-property($tmpMapScreenExtraLarge, $key, $forcePx, "extraLarge");
90
77
  }
91
78
  }
92
79
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bonniernews/dn-design-system-web",
3
- "version": "8.0.7",
3
+ "version": "8.0.8",
4
4
  "description": "DN design system for web.",
5
5
  "main": "index.js",
6
6
  "homepage": "https://github.com/BonnierNews/dn-design-system/tree/main/web/src#readme",
@@ -16,11 +16,9 @@
16
16
  },
17
17
  "devDependencies": {
18
18
  "postcss": "8.4.31",
19
- "stylelint": "^15.6.2",
20
- "stylelint-config-prettier": "^9.0.5",
21
- "stylelint-config-standard": "^33.0.0",
22
- "stylelint-config-standard-scss": "^9.0.0",
23
- "stylelint-prettier": "^3.0.0",
19
+ "stylelint": "^15.11.0",
20
+ "stylelint-config-recommended-scss": "^13.1.0",
21
+ "stylelint-prettier": "^4.0.2",
24
22
  "stylelint-sass-render-errors": "^3.0.1",
25
23
  "stylelint-selector-bem-pattern": "^2.1.1"
26
24
  },