@funidata/fudis-core 2.2.0-rc.1 → 2.2.0-rc.2

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@funidata/fudis-core",
3
- "version": "2.2.0-rc.1",
3
+ "version": "2.2.0-rc.2",
4
4
  "description": "Core styles and foundations for Fudis Design System",
5
5
  "files": [
6
6
  "src",
@@ -12,12 +12,12 @@
12
12
  margin-bottom: spacing.$spacing-md;
13
13
  list-style: none;
14
14
 
15
- &__item {
15
+ &-item {
16
16
  display: flex;
17
17
  align-items: center;
18
18
  min-height: spacing.$spacing-lg;
19
19
 
20
- &-link {
20
+ a {
21
21
  @include typography.link-inherit;
22
22
  }
23
23
  }
@@ -77,10 +77,8 @@
77
77
  height: spacing.$spacing-sm;
78
78
 
79
79
  &__component {
80
- position: absolute;
81
- top: 50%;
82
- left: 50%;
83
- transform: translate(-50%, -50%);
80
+ position: relative;
81
+ top: -50%;
84
82
  }
85
83
  }
86
84
  }
@@ -67,11 +67,18 @@ $radio-indicator-size: calc(0.75rem / var(--fudis-rem-multiplier));
67
67
  }
68
68
 
69
69
  &__indicator {
70
- @include colorMixin.bg-color('gray-dark');
71
-
72
- border-radius: 50%;
73
- width: $radio-indicator-size;
74
- height: $radio-indicator-size;
70
+ &::after {
71
+ display: block;
72
+ /* stylelint-disable property-disallowed-list */
73
+ background-color: currentcolor;
74
+ width: $radio-indicator-size;
75
+ height: $radio-indicator-size;
76
+ content: '';
77
+ mask-repeat: no-repeat;
78
+ mask-position: center;
79
+ mask-size: contain;
80
+ mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2012%2012'%20width='12'%20height='12'%3E%3Ccircle%20cx='6'%20cy='6'%20r='6'/%3E%3C/svg%3E");
81
+ }
75
82
  }
76
83
  }
77
84
  }
@@ -1,6 +1,22 @@
1
1
  @use '../../foundations/typography/mixins.scss' as typography;
2
2
  @use '../../foundations/spacing/tokens' as spacing;
3
3
  @use '../../foundations/colors/tokens' as color;
4
+ @use '../../foundations/colors/mixins' as colorMixin;
5
+ @use '../../foundations/borders/mixins' as border;
6
+ @use '../../foundations/focus/mixins' as focus;
7
+ @use '../../foundations/utilities/mixins' as utilities;
8
+
9
+ @mixin fudis-table-header-button {
10
+ @include utilities.box-reset;
11
+ @include typography.table-header;
12
+ @include colorMixin.bg-color('transparent');
13
+ @include border.border-none;
14
+
15
+ display: flex;
16
+ align-items: center;
17
+ cursor: pointer;
18
+ width: 100%;
19
+ }
4
20
 
5
21
  @mixin fudis-table-default {
6
22
  width: 100%;
@@ -17,9 +33,8 @@
17
33
  &__header {
18
34
  @include typography.table-header;
19
35
 
20
- border-bottom: spacing.$pixel-2 solid color.$color-gray-light;
21
- padding: spacing.$spacing-sm;
22
- vertical-align: bottom;
36
+ padding: spacing.$spacing-xs spacing.$spacing-sm;
37
+ vertical-align: middle;
23
38
 
24
39
  &__align {
25
40
  &__left {
@@ -34,6 +49,40 @@
34
49
  text-align: right;
35
50
  }
36
51
  }
52
+
53
+ &-row {
54
+ border-bottom: spacing.$pixel-2 solid color.$color-gray-light;
55
+ }
56
+
57
+ &-button {
58
+ @include fudis-table-header-button;
59
+
60
+ &:focus {
61
+ @include focus.focus-generic;
62
+ }
63
+
64
+ &__align {
65
+ &__left {
66
+ justify-content: left;
67
+ }
68
+
69
+ &__center {
70
+ justify-content: center;
71
+ }
72
+
73
+ &__right {
74
+ justify-content: right;
75
+ }
76
+ }
77
+
78
+ &--sortable {
79
+ white-space: nowrap;
80
+ }
81
+
82
+ &--active {
83
+ text-decoration: underline solid color.$color-gray-middle;
84
+ }
85
+ }
37
86
  }
38
87
 
39
88
  &__cell {
@@ -71,9 +120,9 @@
71
120
  }
72
121
 
73
122
  /* Checkbox needs different padding-top since its clickable area expands out of visible component outlines */
74
- &__checkbox {
75
- padding-top: calc(spacing.$spacing-xs + spacing.$spacing-xxs);
76
- }
123
+ // &__checkbox {
124
+ // padding-top: calc(spacing.$spacing-xs + spacing.$spacing-xxs);
125
+ // }
77
126
  }
78
127
  }
79
128
 
@@ -92,9 +141,8 @@
92
141
  &__header {
93
142
  @include typography.table-header;
94
143
 
95
- border-bottom: spacing.$pixel-2 solid color.$color-gray-light;
96
- padding: spacing.$spacing-xs;
97
- vertical-align: bottom;
144
+ padding: spacing.$spacing-xxs spacing.$spacing-xs;
145
+ vertical-align: middle;
98
146
 
99
147
  &__align {
100
148
  &__left {
@@ -109,6 +157,40 @@
109
157
  text-align: right;
110
158
  }
111
159
  }
160
+
161
+ &-row {
162
+ border-bottom: spacing.$pixel-2 solid color.$color-gray-light;
163
+ }
164
+
165
+ &-button {
166
+ @include fudis-table-header-button;
167
+
168
+ &:focus {
169
+ @include focus.focus-generic;
170
+ }
171
+
172
+ &__align {
173
+ &__left {
174
+ justify-content: left;
175
+ }
176
+
177
+ &__center {
178
+ justify-content: center;
179
+ }
180
+
181
+ &__right {
182
+ justify-content: right;
183
+ }
184
+ }
185
+
186
+ &--sortable {
187
+ white-space: nowrap;
188
+ }
189
+
190
+ &--active {
191
+ text-decoration: underline solid color.$color-gray-dark;
192
+ }
193
+ }
112
194
  }
113
195
 
114
196
  &__cell {
@@ -146,8 +228,8 @@
146
228
  }
147
229
 
148
230
  /* Checkbox needs different padding-top since its clickable area expands out of visible component outlines */
149
- &__checkbox {
150
- padding-top: spacing.$spacing-xxs;
151
- }
231
+ // &__checkbox {
232
+ // padding-top: spacing.$spacing-xxs;
233
+ // }
152
234
  }
153
235
  }
@@ -142,7 +142,6 @@
142
142
  @include colorMixin.text-color('gray-dark');
143
143
 
144
144
  text-transform: uppercase;
145
- line-height: tokens.$table-header-line-height;
146
145
  font-family: tokens.$font-family;
147
146
  font-size: tokens.$body-text-md-font-size;
148
147
  font-weight: tokens.$font-weight-regular;
@@ -31,7 +31,6 @@ $text-input-line-height: calc(1.25rem / var(--fudis-rem-multiplier));
31
31
  $form-label-line-height: calc(1.5rem / var(--fudis-rem-multiplier));
32
32
  $badge-line-height: calc(0.875rem / var(--fudis-rem-multiplier));
33
33
  $table-caption-line-height: calc(1.125rem / var(--fudis-rem-multiplier));
34
- $table-header-line-height: calc(1.5rem / var(--fudis-rem-multiplier));
35
34
 
36
35
  // Font weight
37
36
  $font-weight-light: 300;
@@ -11,6 +11,10 @@
11
11
  @include mixins.box-reset;
12
12
  }
13
13
 
14
+ .fudis-dimmer {
15
+ @include mixins.dimmer;
16
+ }
17
+
14
18
  // Invalid and disabled state styles for input elemenets
15
19
 
16
20
  .fudis-form-input {
@@ -4,6 +4,7 @@
4
4
  @use './../typography/mixins.scss' as typography;
5
5
  @use './../borders/mixins.scss' as borders;
6
6
  @use './../focus/mixins.scss' as focus;
7
+ @use './../colors/mixins.scss' as colorMixin;
7
8
 
8
9
  @mixin visually-hidden() {
9
10
  position: absolute;
@@ -26,6 +27,14 @@
26
27
  padding: 0;
27
28
  }
28
29
 
30
+ @mixin dimmer() {
31
+ @include colorMixin.bg-color('white');
32
+
33
+ // At least when overriding ngMaterial, opacity needs to be declared as !important
34
+ /* stylelint-disable-next-line declaration-no-important */
35
+ opacity: 0.95 !important;
36
+ }
37
+
29
38
  @mixin text-input() {
30
39
  @include typography.text-field-input;
31
40
  @include borders.border-radius('2px');