@oslokommune/punkt-css 9.2.6 → 9.4.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 +46 -0
  2. package/README.md +1 -1
  3. package/dist/css/components/alert.css +18 -16
  4. package/dist/css/components/alert.min.css +1 -1
  5. package/dist/css/components/badge.css +2 -13
  6. package/dist/css/components/badge.min.css +1 -1
  7. package/dist/css/components/footer.css +5 -5
  8. package/dist/css/components/footer.min.css +1 -1
  9. package/dist/css/components/header.css +20 -11
  10. package/dist/css/components/header.min.css +1 -1
  11. package/dist/css/components/inputwrapper.css +21 -20
  12. package/dist/css/components/inputwrapper.min.css +1 -1
  13. package/dist/css/components/linkcard.css +21 -12
  14. package/dist/css/components/linkcard.min.css +1 -1
  15. package/dist/css/components/messagebox.css +12 -12
  16. package/dist/css/components/messagebox.min.css +1 -1
  17. package/dist/css/components/tag.css +126 -40
  18. package/dist/css/components/tag.min.css +1 -1
  19. package/dist/css/components/textinput.css +61 -35
  20. package/dist/css/components/textinput.min.css +1 -1
  21. package/dist/css/pkt-base.css +1418 -243
  22. package/dist/css/pkt-base.min.css +1 -1
  23. package/dist/css/pkt-components.css +286 -164
  24. package/dist/css/pkt-components.min.css +1 -1
  25. package/dist/css/pkt-elements.css +487 -344
  26. package/dist/css/pkt-elements.min.css +1 -1
  27. package/dist/css/pkt.css +2130 -716
  28. package/dist/css/pkt.min.css +1 -1
  29. package/dist/scss/abstracts/variables/_colors.scss +108 -0
  30. package/dist/scss/abstracts/variables/_spacing.scss +12 -10
  31. package/dist/scss/base/_colors.scss +111 -9
  32. package/dist/scss/base/_typography.scss +15 -58
  33. package/dist/scss/components/_alert.scss +28 -25
  34. package/dist/scss/components/_badge.scss +56 -55
  35. package/dist/scss/components/_footer.scss +5 -8
  36. package/dist/scss/components/_header.scss +30 -16
  37. package/dist/scss/components/_inputwrapper.scss +27 -24
  38. package/dist/scss/components/_linkcard.scss +41 -16
  39. package/dist/scss/components/_messagebox.scss +16 -14
  40. package/dist/scss/components/_tag.scss +150 -41
  41. package/dist/scss/elements/_button.scss +220 -156
  42. package/dist/scss/elements/_checkbox-radio.scss +86 -150
  43. package/dist/scss/elements/_form.scss +26 -24
  44. package/dist/scss/elements/_hr.scss +1 -1
  45. package/dist/scss/elements/_input.scss +63 -41
  46. package/dist/scss/elements/_list.scss +11 -6
  47. package/dist/scss/elements/_section.scss +8 -8
  48. package/dist/scss/elements/_table.scss +13 -9
  49. package/package.json +2 -2
@@ -7,24 +7,22 @@
7
7
  @use '../abstracts/mixins/breakpoints' as *;
8
8
  @use '../abstracts/mixins/typography';
9
9
 
10
- $-footer-bg-color: var(--color-blue-dark);
11
- $-footer-color: var(--color-white);
10
+ $-footer-bg-color: var(--pkt-color-surface-strong-dark-blue);
11
+ $-footer-color: var(--pkt-color-text-body-default);
12
12
  $-footer-max-width: map.get(variables.$breakpoints, 'laptop');
13
13
  $-footer-icon-r-margin: map.get(variables.$spacing, 'size-8');
14
14
  $-footer-link-b-margin: map.get(variables.$spacing, 'size-16');
15
15
 
16
16
  .pkt-footer {
17
17
  @include typography.get-text('pkt-txt-18-light');
18
- padding: map.get(variables.$spacing, 'size-40')
19
- map.get(variables.$spacing, 'size-24');
18
+ padding: map.get(variables.$spacing, 'size-40') map.get(variables.$spacing, 'size-24');
20
19
  background-color: $-footer-bg-color;
21
20
  color: $-footer-color;
22
21
  display: flex;
23
22
  align-items: center;
24
23
 
25
24
  @include bp('laptop-up') {
26
- padding: map.get(variables.$spacing, 'size-56')
27
- map.get(variables.$spacing, 'size-24');
25
+ padding: map.get(variables.$spacing, 'size-56') map.get(variables.$spacing, 'size-24');
28
26
  justify-content: center;
29
27
  }
30
28
 
@@ -130,8 +128,7 @@ $-footer-link-b-margin: map.get(variables.$spacing, 'size-16');
130
128
 
131
129
  .pkt-footer-simple {
132
130
  @include typography.get-text('pkt-txt-18-light');
133
- padding: map.get(variables.$spacing, 'size-32')
134
- map.get(variables.$spacing, 'size-24');
131
+ padding: map.get(variables.$spacing, 'size-32') map.get(variables.$spacing, 'size-24');
135
132
  background-color: $-footer-bg-color;
136
133
  color: $-footer-color;
137
134
  display: flex;
@@ -7,8 +7,9 @@
7
7
  @use '../abstracts/mixins/' as *;
8
8
 
9
9
  .pkt-header {
10
- background-color: var(--color-white);
11
- border-bottom: 1px solid var(--color-gray);
10
+ background-color: var(--pkt-color-background-default);
11
+ border-bottom: 1px solid var(--pkt-color-border-subtle);
12
+ color: var(--pkt-color-text-body-default);
12
13
  display: flex;
13
14
  justify-content: space-between;
14
15
  align-items: center;
@@ -61,6 +62,10 @@
61
62
  padding: 0;
62
63
  }
63
64
 
65
+ & svg {
66
+ --fg-color: var(--pkt-color-text-body-default);
67
+ }
68
+
64
69
  &-service {
65
70
  padding-top: 0.2rem;
66
71
  display: none;
@@ -121,7 +126,7 @@
121
126
  }
122
127
 
123
128
  &__user-btn {
124
- border-color: var(--color-yellow);
129
+ border-color: var(--pkt-color-brand-yellow-1000);
125
130
  }
126
131
 
127
132
  &__actions {
@@ -138,7 +143,7 @@
138
143
  align-items: center;
139
144
  gap: map.get(variables.$spacing, 'size-32');
140
145
 
141
- > li {
146
+ >li {
142
147
  padding: 0;
143
148
  }
144
149
  }
@@ -157,6 +162,7 @@
157
162
  max-height: calc(100vh - 4.5rem);
158
163
  overflow-x: hidden;
159
164
  overflow-y: auto;
165
+ color: var(--pkt-color-text-body-dark);
160
166
 
161
167
  @include bp('tablet-up') {
162
168
  margin-top: map.get(variables.$spacing, 'size-16');
@@ -166,9 +172,9 @@
166
172
  width: auto;
167
173
  }
168
174
 
169
- > li {
175
+ >li {
170
176
  padding: map.get(variables.$spacing, 'size-32');
171
- background-color: var(--color-white);
177
+ background-color: var(--pkt-color-surface-subtle-white);
172
178
 
173
179
  &.footer {
174
180
  padding-top: map.get(variables.$spacing, 'size-16');
@@ -176,7 +182,7 @@
176
182
  }
177
183
 
178
184
  &:nth-child(odd) {
179
- background-color: var(--color-gray-light);
185
+ background-color: var(--pkt-color-surface-default-gray);
180
186
  }
181
187
  }
182
188
  }
@@ -202,9 +208,9 @@
202
208
  position: relative;
203
209
  }
204
210
 
205
- > .pkt-btn {
211
+ >.pkt-btn {
206
212
  &:hover .pkt-btn--closed {
207
- --fg-color: var(--color-white);
213
+ --fg-color: var(--pkt-color-surface-subtle-white);
208
214
  }
209
215
  }
210
216
 
@@ -221,13 +227,14 @@
221
227
  }
222
228
 
223
229
  &.pkt-header--open-dropdown {
224
- > .pkt-btn {
225
- background-color: var(--color-active);
226
- border-color: var(--color-active);
227
- color: var(--color-white);
230
+ >.pkt-btn {
231
+ background-color: var(--pkt-color-border-states-active);
232
+ border-color: var(--pkt-color-border-states-active);
233
+ color: var(--pkt-color-surface-subtle-white);
228
234
 
229
235
  .pkt-btn--open {
230
- --fg-color: var(--color-white);
236
+ --fg-color: var(--pkt-color-surface-subtle-white);
237
+
231
238
  @include bp('laptop-up') {
232
239
  display: inline-block;
233
240
  }
@@ -249,8 +256,9 @@
249
256
  p {
250
257
  margin: 0;
251
258
  }
259
+
252
260
  &__label {
253
- color: var(--color-grayscale-60);
261
+ color: var(--pkt-color-grays-gray-600);
254
262
  @include get-text('pkt-txt-14-medium');
255
263
  }
256
264
 
@@ -265,7 +273,9 @@
265
273
 
266
274
  .pkt-list {
267
275
  margin: 0;
276
+
268
277
  .pkt-link {
278
+ color: var(--pkt-color-text-body-dark);
269
279
  text-decoration: none;
270
280
 
271
281
  &:hover {
@@ -273,7 +283,7 @@
273
283
  }
274
284
  }
275
285
 
276
- > li > a {
286
+ >li>a {
277
287
  grid-template-columns: 1.5rem auto;
278
288
  gap: map.get(variables.$spacing, 'size-8');
279
289
  }
@@ -281,5 +291,9 @@
281
291
 
282
292
  .pkt-list-horizontal {
283
293
  margin: 0;
294
+
295
+ .pkt-link {
296
+ color: var(--pkt-color-text-body-dark);
297
+ }
284
298
  }
285
299
  }
@@ -11,8 +11,9 @@
11
11
  flex-direction: column;
12
12
  align-items: flex-start;
13
13
  gap: map.get(variables.$spacing, 'size-8');
14
+ color: var(--pkt-color-text-body-default);
14
15
 
15
- > h2 {
16
+ >h2 {
16
17
  font-size: inherit;
17
18
  font-weight: inherit;
18
19
  letter-spacing: inherit;
@@ -24,13 +25,10 @@
24
25
 
25
26
  &__helptext {
26
27
  width: min(100%, 31rem);
27
- display: flex;
28
- flex-direction: column;
29
- align-items: flex-start;
30
- gap: map.get(variables.$spacing, 'size-4');
31
28
  @include typography.get-text('pkt-txt-14-light');
29
+ color: var(--pkt-color-text-body-default);
32
30
 
33
- > * {
31
+ >* {
34
32
  &:first-child {
35
33
  margin-top: 0;
36
34
  }
@@ -52,9 +50,8 @@
52
50
 
53
51
  &-open {
54
52
  display: block;
55
- border-left: 2px solid var(--color-blue-dark);
56
- padding: map.get(variables.$spacing, 'size-8')
57
- map.get(variables.$spacing, 'size-16');
53
+ border-left: 2px solid var(--pkt-color-text-body-dark);
54
+ padding: map.get(variables.$spacing, 'size-8') map.get(variables.$spacing, 'size-16');
58
55
  margin-bottom: map.get(variables.$spacing, 'size-4');
59
56
  }
60
57
 
@@ -80,16 +77,16 @@
80
77
  }
81
78
 
82
79
  &--disabled {
83
- color: var(--color-disabled);
80
+ color: var(--pkt-color-text-action-disabled);
84
81
  cursor: inherit;
85
82
 
86
83
  .pkt-tag {
87
- background-color: var(--color-disabled-light);
84
+ background-color: var(--pkt-color-surface-default-gray);
88
85
  }
89
86
 
90
87
  .pkt-alert {
91
- background-color: var(--color-disabled-light);
92
- border-color: var(--color-disabled);
88
+ background-color: var(--pkt-color-surface-default-gray);
89
+ border-color: var(--pkt-color-text-action-disabled);
93
90
  }
94
91
  }
95
92
 
@@ -121,52 +118,58 @@
121
118
  }
122
119
 
123
120
  &--error {
121
+
124
122
  .pkt-input,
125
123
  .pkt-input-prefix,
126
124
  .pkt-input-suffix,
127
- .pkt-input-icon,
125
+ .pkt-input-icon {
126
+ border-color: var(--pkt-color-brand-red-1000);
127
+ }
128
+
128
129
  .pkt-input:hover,
129
130
  .pkt-input__container:hover,
130
131
  .pkt-input__container:hover .pkt-input,
131
132
  .pkt-input__container:hover .pkt-input-prefix,
132
133
  .pkt-input__container:hover .pkt-input-suffix,
133
- .pkt-input__container:hover .pkt-input-icon,
134
- .pkt-input__container:focus-within,
134
+ .pkt-input__container:hover .pkt-input-icon {
135
+ border-color: var(--pkt-color-brand-red-1000);
136
+ }
137
+
138
+ .pkt-input:focus-within,
135
139
  .pkt-input__container:focus-within .pkt-input,
136
140
  .pkt-input__container:focus-within .pkt-input-prefix,
137
141
  .pkt-input__container:focus-within .pkt-input-suffix,
138
142
  .pkt-input__container:focus-within .pkt-input-icon {
139
- border-color: var(--color-red);
140
- --focus-outline: var(--color-red);
143
+ border-color: var(--pkt-color-brand-red-1000);
141
144
  }
142
145
  }
143
146
 
144
147
  &--disabled {
145
- color: var(--color-disabled);
148
+ color: var(--pkt-color-text-action-disabled);
146
149
  cursor: inherit;
147
150
 
148
151
  .pkt-input,
149
152
  .pkt-input-prefix,
150
153
  .pkt-input-suffix,
151
154
  .pkt-input-icon {
152
- border-color: var(--color-disabled);
153
- background-color: var(--color-disabled-light);
155
+ border-color: var(--pkt-color-border-states-disabled);
156
+ background-color: var(--pkt-color-surface-default-gray);
154
157
  }
155
158
 
156
159
  .pkt-input__container:hover .pkt-input,
157
160
  .pkt-input__container:hover .pkt-input-prefix,
158
161
  .pkt-input__container:hover .pkt-input-suffix,
159
162
  .pkt-input__container:hover .pkt-input-icon {
160
- border-color: var(--color-disabled);
163
+ border-color: var(--pkt-color-border-states-disabled);
161
164
  }
162
165
 
163
166
  .pkt-input:hover {
164
- border-color: var(--color-disabled);
167
+ border-color: var(--pkt-color-border-states-disabled);
165
168
  box-shadow: none;
166
169
  }
167
170
 
168
171
  .pkt-input:focus {
169
- border-color: var(--color-disabled);
172
+ border-color: var(--pkt-color-border-states-disabled);
170
173
  box-shadow: none;
171
174
  outline: none;
172
175
  }
@@ -80,37 +80,62 @@ $-linkcard-spacing-big: map.get(variables.$spacing, 'size-24');
80
80
 
81
81
  // Modifiers
82
82
  &--beige {
83
- background-color: var(--color-beige-light);
83
+ background-color: var(--pkt-color-surface-default-light-beige);
84
+ color: var(--pkt-color-text-body-dark) !important;
85
+
86
+ &:hover,
87
+ &:focus,
88
+ &:focus-visible,
89
+ &:active {
90
+ color: var(--pkt-color-brand-warm-blue-1000) !important;
91
+ }
92
+
84
93
  }
85
94
 
86
95
  &--blue {
87
- background-color: var(--color-blue-5);
96
+ background-color: var(--pkt-color-surface-subtle-pale-blue);
97
+ color: var(--pkt-color-text-body-dark) !important;
98
+
99
+ &:hover,
100
+ &:focus,
101
+ &:focus-visible,
102
+ &:active {
103
+ color: var(--pkt-color-brand-warm-blue-1000) !important;
104
+ }
88
105
  }
89
106
 
90
107
  &--grey-outline {
91
- border: 4px solid var(--color-gray);
108
+ border: 4px solid var(--pkt-color-border-subtle);
92
109
  }
93
110
 
94
111
  &--beige-outline {
95
- border: 4px solid var(--color-beige-light);
112
+ border: 4px solid var(--pkt-color-border-light-beige);
96
113
  }
97
114
  }
98
115
 
99
- // Dark mode
100
- @at-root [data-mode='dark'] .pkt-linkcard {
101
- &--beige {
102
- color: var(--color-blue-dark) !important;
116
+ @at-root [data-mode='dark'] .#{$-module-name} {
103
117
 
104
- &:focus {
105
- color: var(--color-hover) !important;
106
- }
118
+ .pkt-link--external::after {
119
+ // white
120
+ filter: brightness(0) saturate(100%) invert(99%) sepia(0%) saturate(2190%) hue-rotate(285deg) brightness(109%) contrast(100%);
107
121
  }
108
122
 
109
- &--blue {
110
- color: var(--color-blue-dark) !important;
123
+ &:hover .pkt-link--external::after {
124
+ // --pkt-color-brand-blue-500
125
+ filter: brightness(0) saturate(100%) invert(93%) sepia(91%) saturate(6664%) hue-rotate(169deg) brightness(103%) contrast(107%);
126
+ }
127
+ }
111
128
 
112
- &:focus {
113
- color: var(--color-hover) !important;
114
- }
129
+
130
+ @at-root [data-mode='dark'] .#{$-module-name}--beige, .#{$-module-name}--blue {
131
+
132
+ .pkt-link--external::after {
133
+ // #2A2859
134
+ filter: brightness(0) saturate(100%) invert(14%) sepia(64%) saturate(913%) hue-rotate(210deg) brightness(91%) contrast(95%) !important;
135
+ }
136
+
137
+ .pkt-link--external:hover::after {
138
+ // --pkt-color-brand-blue-500
139
+ filter: brightness(0) saturate(100%) invert(14%) sepia(64%) saturate(913%) hue-rotate(210deg) brightness(91%) contrast(95%) !important;
115
140
  }
116
141
  }
@@ -14,41 +14,43 @@ $-border-thickness: map.get(variables.$spacing, 'size-4');
14
14
 
15
15
  // default is "info"
16
16
  .#{$-module-name} {
17
- --pkt-messagebox-bc: var(--color-beige-dark);
18
- --pkt-messagebox-bg: var(--color-beige-light);
19
- --pkt-messagebox-txt: var(--color-blue-dark);
17
+ --pkt-color-messagebox-bc: var(--pkt-color-border-beige);
18
+ --pkt-color-messagebox-bg: var(--pkt-color-surface-default-light-beige);
19
+ --pkt-color-messagebox-txt: var(--pkt-color-text-body-dark);
20
20
  }
21
+
21
22
  .#{$-module-name}--red {
22
- --pkt-messagebox-bc: var(--color-red);
23
- --pkt-messagebox-bg: var(--color-red-30);
23
+ --pkt-color-messagebox-bc: var(--pkt-color-border-red);
24
+ --pkt-color-messagebox-bg: var(--pkt-color-surface-default-faded-red);
24
25
  }
25
26
 
26
27
  .#{$-module-name}--green {
27
- --pkt-messagebox-bc: var(--color-green);
28
- --pkt-messagebox-bg: var(--color-green-30);
28
+ --pkt-color-messagebox-bc: var(--pkt-color-border-green);
29
+ --pkt-color-messagebox-bg: var(--pkt-color-surface-default-light-green);
29
30
  }
30
31
 
31
32
  .#{$-module-name}--blue {
32
- --pkt-messagebox-bc: var(--color-blue);
33
- --pkt-messagebox-bg: var(--color-blue-60);
33
+ --pkt-color-messagebox-bc: var(--pkt-color-border-blue);
34
+ --pkt-color-messagebox-bg: var(--pkt-color-surface-default-light-blue);
34
35
  }
35
36
 
36
37
  .#{$-module-name} {
37
- padding: $-messagebox-spacing $-messagebox-spacing $-messagebox-spacing
38
- calc($-messagebox-spacing - $-border-thickness);
38
+ padding: $-messagebox-spacing $-messagebox-spacing $-messagebox-spacing calc($-messagebox-spacing - $-border-thickness);
39
39
  display: block;
40
40
  position: relative;
41
- border-left: $-border-thickness solid var(--pkt-messagebox-bc);
42
- background-color: var(--pkt-messagebox-bg);
43
- color: var(--pkt-messagebox-txt);
41
+ border-left: $-border-thickness solid var(--pkt-color-messagebox-bc);
42
+ background-color: var(--pkt-color-messagebox-bg);
43
+ color: var(--pkt-color-messagebox-txt);
44
44
 
45
45
  &__title {
46
46
  @include get-text('pkt-txt-24-medium');
47
47
  margin: 0 0 $-messagebox-spacing 0;
48
48
  }
49
+
49
50
  &__text {
50
51
  @include get-text('pkt-txt-18-light');
51
52
  margin: 0;
53
+
52
54
  p {
53
55
  margin-bottom: map.get(variables.$spacing, 'size-16');
54
56