@digdir/designsystemet-css 0.10.0 → 0.11.0-alpha.3

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 (79) hide show
  1. package/accordion.css +90 -81
  2. package/alert.css +47 -44
  3. package/box.css +37 -37
  4. package/button.css +130 -199
  5. package/card.css +127 -92
  6. package/checkbox.css +118 -86
  7. package/chip.css +93 -93
  8. package/combobox.css +113 -160
  9. package/dist/accordion.css +1 -1
  10. package/dist/alert.css +1 -1
  11. package/dist/box.css +1 -1
  12. package/dist/button.css +1 -1
  13. package/dist/card.css +1 -1
  14. package/dist/checkbox.css +1 -1
  15. package/dist/chip.css +1 -1
  16. package/dist/combobox.css +1 -1
  17. package/dist/divider.css +1 -1
  18. package/dist/dropdownmenu.css +1 -1
  19. package/dist/error-summary.css +1 -1
  20. package/dist/fieldset.css +1 -1
  21. package/dist/helptext.css +1 -1
  22. package/dist/index.css +1 -1
  23. package/dist/link.css +1 -1
  24. package/dist/list.css +1 -1
  25. package/dist/modal.css +1 -1
  26. package/dist/native-select.css +1 -1
  27. package/dist/pagination.css +1 -1
  28. package/dist/popover.css +1 -1
  29. package/dist/radio.css +1 -1
  30. package/dist/search.css +1 -1
  31. package/dist/skeleton.css +1 -1
  32. package/dist/skiplink.css +1 -1
  33. package/dist/spinner.css +1 -1
  34. package/dist/switch.css +1 -1
  35. package/dist/table.css +1 -1
  36. package/dist/tabs.css +1 -1
  37. package/dist/tag.css +1 -1
  38. package/dist/textarea.css +1 -1
  39. package/dist/textfield.css +1 -1
  40. package/dist/togglegroup.css +1 -1
  41. package/dist/tooltip.css +1 -1
  42. package/dist/utils.css +1 -1
  43. package/divider.css +8 -8
  44. package/dropdownmenu.css +20 -19
  45. package/error-summary.css +12 -8
  46. package/fieldset.css +13 -13
  47. package/helptext.css +21 -22
  48. package/index.css +6 -6
  49. package/link.css +42 -18
  50. package/list.css +10 -10
  51. package/modal.css +35 -33
  52. package/native-select.css +62 -46
  53. package/package.json +2 -2
  54. package/pagination.css +32 -32
  55. package/popover.css +43 -40
  56. package/radio.css +88 -81
  57. package/search.css +66 -62
  58. package/skeleton.css +14 -14
  59. package/skiplink.css +32 -8
  60. package/spinner.css +15 -23
  61. package/switch.css +121 -91
  62. package/table.css +54 -53
  63. package/tabs.css +36 -52
  64. package/tag.css +42 -42
  65. package/textarea.css +34 -33
  66. package/textfield.css +64 -63
  67. package/togglegroup.css +11 -10
  68. package/tooltip.css +9 -18
  69. package/utils.css +11 -11
  70. package/dist/error-message.css +0 -1
  71. package/dist/heading.css +0 -1
  72. package/dist/ingress.css +0 -1
  73. package/dist/label.css +0 -1
  74. package/dist/paragraph.css +0 -1
  75. package/error-message.css +0 -43
  76. package/heading.css +0 -61
  77. package/ingress.css +0 -40
  78. package/label.css +0 -46
  79. package/paragraph.css +0 -82
package/button.css CHANGED
@@ -1,14 +1,29 @@
1
- @layer fds.btn {
2
- .fds-btn {
3
- --fds-btn-padding: var(--fds-spacing-2) var(--fds-spacing-4);
1
+ @layer ds.btn {
2
+ .ds-btn {
3
+ --dsc-btn-padding: var(--ds-spacing-2) var(--ds-spacing-4);
4
+ --dsc-btn-primary-background: var(--ds-color-accent-base-default);
5
+ --dsc-btn-primary-hover-background: var(--ds-color-accent-base-hover);
6
+ --dsc-btn-primary-active-background: var(--ds-color-accent-base-active);
7
+ --dsc-btn-primary-hover-color: var(--ds-color-accent-contrast-default);
8
+ --dsc-btn-secondary-color: var(--ds-color-accent-text-default);
9
+ --dsc-btn-secondary-hover-color: var(--ds-color-accent-text-default);
10
+ --dsc-btn-secondary-active-color: var(--ds-color-accent-text-default);
11
+ --dsc-btn-secondary-border-color: var(--ds-color-accent-border-strong);
12
+ --dsc-btn-secondary-hover-background: var(--ds-color-accent-surface-hover);
13
+ --dsc-btn-secondary-active-background: var(--ds-color-accent-surface-hover);
14
+ --dsc-btn-tertiary-color: var(--ds-color-accent-text-default);
15
+ --dsc-btn-tertiary-hover-color: var(--ds-color-accent-text-default);
16
+ --dsc-btn-tertiary-active-color: var(--ds-color-accent-text-default);
17
+ --dsc-btn-tertiary-hover-background: var(--ds-color-accent-surface-hover);
18
+ --dsc-btn-tertiary-active-background: var(--ds-color-accent-surface-hover);
4
19
 
5
20
  display: flex;
6
21
  align-items: center;
7
- border: var(--fds-border_width-default) solid transparent;
8
- background-color: var(--fds-semantic-surface-action-first-default);
9
- color: var(--fds-semantic-text-action-first-on_action);
22
+ border: var(--ds-border-width-default) solid transparent;
23
+ background-color: var(--dsc-btn-primary-background);
24
+ color: var(--dsc-btn-primary-color);
10
25
  min-width: 2.5em;
11
- padding: var(--fds-btn-padding);
26
+ padding: var(--dsc-btn-padding);
12
27
  box-sizing: border-box;
13
28
  cursor: pointer;
14
29
  font-family: inherit;
@@ -16,30 +31,28 @@
16
31
  text-align: center;
17
32
  text-decoration: none;
18
33
  position: relative;
19
- border-radius: var(--fds-border_radius-interactive);
20
- min-height: var(--fds-sizing-10);
34
+ border-radius: var(--ds-border-radius-md);
35
+ min-height: var(--ds-sizing-10);
21
36
  }
22
37
 
23
- .fds-btn svg {
38
+ .ds-btn svg {
24
39
  overflow: visible;
25
40
  }
26
41
 
27
- .fds-btn:disabled,
28
- .fds-btn[aria-disabled='true'] {
42
+ .ds-btn:disabled,
43
+ .ds-btn[aria-disabled='true'] {
29
44
  cursor: not-allowed;
30
- opacity: var(--fds-opacity-disabled);
45
+ opacity: var(--ds-disabled-opacity);
31
46
  }
32
47
 
33
- .fds-btn--sm {
34
- --fds-btn-padding: var(--fds-spacing-2) var(--fds-spacing-3);
48
+ .ds-btn--sm {
49
+ --dsc-btn-padding: var(--ds-spacing-2) var(--ds-spacing-3);
35
50
 
36
- gap: var(--fds-sizing-1);
37
- font: var(--fds-typography-paragraph-short-small);
38
- font-family: inherit;
39
- min-height: var(--fds-sizing-10);
51
+ gap: var(--ds-sizing-1);
52
+ min-height: var(--ds-sizing-10);
40
53
  }
41
54
 
42
- .fds-btn--sm::before {
55
+ .ds-btn--sm::before {
43
56
  position: absolute;
44
57
  top: 0;
45
58
  left: 0;
@@ -48,7 +61,7 @@
48
61
  content: '';
49
62
  }
50
63
 
51
- .fds-btn--sm::after {
64
+ .ds-btn--sm::after {
52
65
  position: absolute;
53
66
  top: -5px;
54
67
  left: 0;
@@ -57,216 +70,134 @@
57
70
  content: '';
58
71
  }
59
72
 
60
- .fds-btn--md {
61
- --fds-btn-padding: var(--fds-spacing-2) var(--fds-spacing-4);
73
+ .ds-btn--md {
74
+ --dsc-btn-padding: var(--ds-spacing-2) var(--ds-spacing-4);
62
75
 
63
- gap: var(--fds-sizing-2);
64
- font: var(--fds-typography-paragraph-short-medium);
65
- font-family: inherit;
66
- min-height: var(--fds-sizing-12);
76
+ gap: var(--ds-sizing-2);
77
+ min-height: var(--ds-sizing-12);
67
78
  }
68
79
 
69
- .fds-btn--lg {
70
- --fds-btn-padding: var(--fds-spacing-3) var(--fds-spacing-5);
80
+ .ds-btn--lg {
81
+ --dsc-btn-padding: var(--ds-spacing-3) var(--ds-spacing-5);
71
82
 
72
- gap: var(--fds-sizing-2);
73
- font: var(--fds-typography-paragraph-short-large);
74
- font-family: inherit;
75
- min-height: var(--fds-sizing-14);
83
+ gap: var(--ds-sizing-2);
84
+ min-height: var(--ds-sizing-14);
76
85
  }
77
86
 
78
- .fds-btn--full-width {
87
+ .ds-btn--full-width {
79
88
  width: 100%;
80
89
  }
81
90
 
82
- .fds-btn--secondary,
83
- .fds-btn--tertiary {
91
+ .ds-btn--secondary,
92
+ .ds-btn--tertiary {
84
93
  background-color: transparent;
85
94
  }
86
95
 
87
- .fds-btn--icon-only {
88
- --fds-btn-padding: 0;
89
- }
90
-
91
- /* Primary button colors */
92
- .fds-btn--primary:where(.fds-btn--first) {
93
- background-color: var(--fds-semantic-surface-action-first-default);
94
- }
95
-
96
- .fds-btn--primary:where(.fds-btn--second) {
97
- background-color: var(--fds-semantic-surface-action-second-default);
98
- }
99
-
100
- .fds-btn--primary:where(.fds-btn--success) {
101
- background-color: var(--fds-semantic-surface-success-default);
102
- }
103
-
104
- .fds-btn--primary:where(.fds-btn--danger) {
105
- background-color: var(--fds-semantic-surface-danger-default);
96
+ .ds-btn--icon-only {
97
+ --dsc-btn-padding: 0;
106
98
  }
107
99
 
108
100
  /* Only use hover for non-touch devices to prevent sticky-hovering */
109
101
  @media (hover: hover) and (pointer: fine) {
110
- .fds-btn--primary:where(.fds-btn--first):not([aria-disabled='true'], :disabled):hover {
111
- background-color: var(--fds-semantic-surface-action-first-hover);
112
- }
113
-
114
- .fds-btn--primary:where(.fds-btn--second):not([aria-disabled='true'], :disabled):hover {
115
- background-color: var(--fds-semantic-surface-action-second-hover);
116
- }
117
-
118
- .fds-btn--primary:where(.fds-btn--success):not([aria-disabled='true'], :disabled):hover {
119
- background-color: var(--fds-semantic-surface-success-hover);
102
+ .ds-btn--primary:not([aria-disabled='true'], :disabled):hover {
103
+ background-color: var(--dsc-btn-primary-hover-background);
120
104
  }
121
105
 
122
- .fds-btn--primary:where(.fds-btn--danger):not([aria-disabled='true'], :disabled):hover {
123
- background-color: var(--fds-semantic-surface-danger-hover);
106
+ .ds-btn--secondary:not([aria-disabled='true'], :disabled):hover {
107
+ color: var(--dsc-btn-secondary-hover-color);
108
+ border-color: var(--dsc-btn-secondary-border-color);
109
+ background-color: var(--dsc-btn-secondary-hover-background);
124
110
  }
125
111
 
126
- .fds-btn--secondary:where(.fds-btn--first):not([aria-disabled='true'], :disabled):hover {
127
- color: var(--fds-semantic-text-action-first-hover);
128
- border-color: var(--fds-semantic-border-action-first-hover);
129
- background-color: var(--fds-semantic-surface-action-first-no_fill-hover);
112
+ .ds-btn--tertiary:not([aria-disabled='true'], :disabled):hover {
113
+ color: var(--dsc-btn-tertiary-hover-color);
114
+ background-color: var(--dsc-btn-tertiary-hover-background);
130
115
  }
131
-
132
- .fds-btn--secondary:where(.fds-btn--second):not([aria-disabled='true'], :disabled):hover {
133
- color: var(--fds-semantic-text-action-second-hover);
134
- border-color: var(--fds-semantic-border-action-second-hover);
135
- background-color: var(--fds-semantic-surface-action-second-no_fill-hover);
136
- }
137
-
138
- .fds-btn--secondary:where(.fds-btn--success):not([aria-disabled='true'], :disabled):hover {
139
- color: var(--fds-semantic-text-success-hover);
140
- border-color: var(--fds-semantic-border-success-hover);
141
- background-color: var(--fds-semantic-surface-success-no_fill-hover);
142
- }
143
-
144
- .fds-btn--secondary:where(.fds-btn--danger):not([aria-disabled='true'], :disabled):hover {
145
- color: var(--fds-semantic-text-danger-hover);
146
- border-color: var(--fds-semantic-border-danger-hover);
147
- background-color: var(--fds-semantic-surface-danger-no_fill-hover);
148
- }
149
-
150
- .fds-btn--tertiary:where(.fds-btn--first):not([aria-disabled='true'], :disabled):hover {
151
- color: var(--fds-semantic-text-action-first-hover);
152
- background-color: var(--fds-semantic-surface-action-first-no_fill-hover);
153
- }
154
-
155
- .fds-btn--tertiary:where(.fds-btn--second):not([aria-disabled='true'], :disabled):hover {
156
- color: var(--fds-semantic-text-action-second-hover);
157
- background-color: var(--fds-semantic-surface-action-second-no_fill-hover);
158
- }
159
-
160
- .fds-btn--tertiary:where(.fds-btn--success):not([aria-disabled='true'], :disabled):hover {
161
- color: var(--fds-semantic-text-success-hover);
162
- background-color: var(--fds-semantic-surface-success-no_fill-hover);
163
- }
164
-
165
- .fds-btn--tertiary:where(.fds-btn--danger):not([aria-disabled='true'], :disabled):hover {
166
- color: var(--fds-semantic-text-danger-hover);
167
- background-color: var(--fds-semantic-surface-danger-no_fill-hover);
168
- }
169
- }
170
-
171
- .fds-btn--primary:where(.fds-btn--first):not([aria-disabled='true'], :disabled):active {
172
- background-color: var(--fds-semantic-surface-action-first-active);
173
- }
174
-
175
- .fds-btn--primary:where(.fds-btn--second):not([aria-disabled='true'], :disabled):active {
176
- background-color: var(--fds-semantic-surface-action-second-active);
177
116
  }
178
117
 
179
- .fds-btn--primary:where(.fds-btn--success):not([aria-disabled='true'], :disabled):active {
180
- background-color: var(--fds-semantic-surface-success-active);
118
+ /* Primary button colors */
119
+ .ds-btn--primary {
120
+ background-color: var(--dsc-btn-primary-background);
181
121
  }
182
122
 
183
- .fds-btn--primary:where(.fds-btn--danger):not([aria-disabled='true'], :disabled):active {
184
- background-color: var(--fds-semantic-surface-danger-active);
123
+ .ds-btn--primary:not([aria-disabled='true'], :disabled):active {
124
+ background-color: var(--dsc-btn-primary-active-background);
185
125
  }
186
126
 
187
127
  /* Secondary button colors */
188
- .fds-btn--secondary:where(.fds-btn--first) {
189
- color: var(--fds-semantic-text-action-first-default);
190
- border-color: var(--fds-semantic-border-action-first-default);
191
- background-color: var(--fds-semantic-surface-action-first-no_fill);
192
- }
193
-
194
- .fds-btn--secondary:where(.fds-btn--second) {
195
- color: var(--fds-semantic-text-action-second-default);
196
- border-color: var(--fds-semantic-border-action-second-default);
197
- background-color: var(--fds-semantic-surface-action-second-no_fill);
198
- }
199
-
200
- .fds-btn--secondary:where(.fds-btn--success) {
201
- color: var(--fds-semantic-text-success-default);
202
- border-color: var(--fds-semantic-border-success-default);
203
- background-color: var(--fds-semantic-surface-success-no_fill);
204
- }
205
-
206
- .fds-btn--secondary:where(.fds-btn--danger) {
207
- color: var(--fds-semantic-text-danger-default);
208
- border-color: var(--fds-semantic-border-danger-default);
209
- background-color: var(--fds-semantic-surface-danger-no_fill);
210
- }
211
-
212
- .fds-btn--secondary:where(.fds-btn--first):not([aria-disabled='true'], :disabled):active {
213
- color: var(--fds-semantic-text-action-first-active);
214
- border-color: var(--fds-semantic-border-action-first-active);
215
- background-color: var(--fds-semantic-surface-action-first-no_fill-active);
216
- }
217
-
218
- .fds-btn--secondary:where(.fds-btn--second):not([aria-disabled='true'], :disabled):active {
219
- color: var(--fds-semantic-text-action-second-active);
220
- border-color: var(--fds-semantic-border-action-second-active);
221
- background-color: var(--fds-semantic-surface-action-second-no_fill-active);
222
- }
223
-
224
- .fds-btn--secondary:where(.fds-btn--success):not([aria-disabled='true'], :disabled):active {
225
- color: var(--fds-semantic-text-success-active);
226
- border-color: var(--fds-semantic-border-success-active);
227
- background-color: var(--fds-semantic-surface-success-no_fill-active);
128
+ .ds-btn--secondary {
129
+ color: var(--dsc-btn-secondary-color);
130
+ border-color: var(--dsc-btn-secondary-border-color);
131
+ background-color: transparent;
228
132
  }
229
133
 
230
- .fds-btn--secondary:where(.fds-btn--danger):not([aria-disabled='true'], :disabled):active {
231
- color: var(--fds-semantic-text-danger-active);
232
- border-color: var(--fds-semantic-border-danger-active);
233
- background-color: var(--fds-semantic-surface-danger-no_fill-active);
134
+ .ds-btn--secondary:not([aria-disabled='true'], :disabled):active {
135
+ color: var(--dsc-btn-secondary-active-color);
136
+ border-color: var(--dsc-btn-secondary-border-color);
137
+ background-color: var(--dsc-btn-secondary-active-background);
234
138
  }
235
139
 
236
140
  /* Tertiary button colors */
237
- .fds-btn--tertiary:where(.fds-btn--first) {
238
- color: var(--fds-semantic-text-action-first-default);
239
- }
240
-
241
- .fds-btn--tertiary:where(.fds-btn--second) {
242
- color: var(--fds-semantic-text-action-second-default);
243
- }
244
-
245
- .fds-btn--tertiary:where(.fds-btn--success) {
246
- color: var(--fds-semantic-text-success-default);
247
- }
248
-
249
- .fds-btn--tertiary:where(.fds-btn--danger) {
250
- color: var(--fds-semantic-text-danger-default);
251
- }
252
-
253
- .fds-btn--tertiary:where(.fds-btn--first):not([aria-disabled='true'], :disabled):active {
254
- color: var(--fds-semantic-text-action-first-active);
255
- background-color: var(--fds-semantic-surface-action-first-no_fill-active);
256
- }
257
-
258
- .fds-btn--tertiary:where(.fds-btn--second):not([aria-disabled='true'], :disabled):active {
259
- color: var(--fds-semantic-text-action-second-active);
260
- background-color: var(--fds-semantic-surface-action-second-no_fill-active);
261
- }
262
-
263
- .fds-btn--tertiary:where(.fds-btn--success):not([aria-disabled='true'], :disabled):active {
264
- color: var(--fds-semantic-text-success-active);
265
- background-color: var(--fds-semantic-surface-success-no_fill-active);
266
- }
267
-
268
- .fds-btn--tertiary:where(.fds-btn--danger):not([aria-disabled='true'], :disabled):active {
269
- color: var(--fds-semantic-text-danger-active);
270
- background-color: var(--fds-semantic-surface-danger-no_fill-active);
141
+ .ds-btn--tertiary {
142
+ color: var(--dsc-btn-tertiary-color);
143
+ }
144
+
145
+ .ds-btn--tertiary:not([aria-disabled='true'], :disabled):active {
146
+ color: var(--dsc-btn-tertiary-active-color);
147
+ background-color: var(--dsc-btn-tertiary-active-background);
148
+ }
149
+
150
+ .ds-btn--accent {
151
+ --dsc-btn-primary-background: var(--ds-color-accent-base-default);
152
+ --dsc-btn-primary-color: var(--ds-color-accent-contrast-default);
153
+ --dsc-btn-primary-hover-background: var(--ds-color-accent-base-hover);
154
+ --dsc-btn-primary-active-background: var(--ds-color-accent-base-active);
155
+ --dsc-btn-secondary-color: var(--ds-color-accent-text-subtle);
156
+ --dsc-btn-secondary-hover-color: var(--ds-color-accent-text-default);
157
+ --dsc-btn-secondary-active-color: var(--ds-color-accent-text-default);
158
+ --dsc-btn-secondary-border-color: var(--ds-color-accent-border-strong);
159
+ --dsc-btn-secondary-hover-background: var(--ds-color-accent-surface-default);
160
+ --dsc-btn-secondary-active-background: var(--ds-color-accent-surface-hover);
161
+ --dsc-btn-tertiary-color: var(--ds-color-accent-text-subtle);
162
+ --dsc-btn-tertiary-hover-color: var(--ds-color-accent-text-default);
163
+ --dsc-btn-tertiary-active-color: var(--ds-color-accent-text-default);
164
+ --dsc-btn-tertiary-hover-background: var(--ds-color-accent-surface-default);
165
+ --dsc-btn-tertiary-active-background: var(--ds-color-accent-surface-hover);
166
+ }
167
+
168
+ .ds-btn--neutral {
169
+ --dsc-btn-primary-background: var(--ds-color-neutral-base-default);
170
+ --dsc-btn-primary-color: var(--ds-color-neutral-contrast-default);
171
+ --dsc-btn-primary-hover-background: var(--ds-color-neutral-base-hover);
172
+ --dsc-btn-primary-active-background: var(--ds-color-neutral-base-active);
173
+ --dsc-btn-secondary-color: var(--ds-color-neutral-text-subtle);
174
+ --dsc-btn-secondary-hover-color: var(--ds-color-neutral-text-default);
175
+ --dsc-btn-secondary-active-color: var(--ds-color-neutral-text-default);
176
+ --dsc-btn-secondary-border-color: var(--ds-color-neutral-border-strong);
177
+ --dsc-btn-secondary-hover-background: var(--ds-color-neutral-surface-default);
178
+ --dsc-btn-secondary-active-background: var(--ds-color-neutral-surface-hover);
179
+ --dsc-btn-tertiary-color: var(--ds-color-neutral-text-subtle);
180
+ --dsc-btn-tertiary-hover-color: var(--ds-color-neutral-text-default);
181
+ --dsc-btn-tertiary-active-color: var(--ds-color-neutral-text-default);
182
+ --dsc-btn-tertiary-hover-background: var(--ds-color-neutral-surface-default);
183
+ --dsc-btn-tertiary-active-background: var(--ds-color-neutral-surface-hover);
184
+ }
185
+
186
+ .ds-btn--danger {
187
+ --dsc-btn-primary-background: var(--ds-color-danger-base-default);
188
+ --dsc-btn-primary-color: var(--ds-color-danger-contrast-default);
189
+ --dsc-btn-primary-hover-background: var(--ds-color-danger-base-hover);
190
+ --dsc-btn-primary-active-background: var(--ds-color-danger-base-active);
191
+ --dsc-btn-secondary-color: var(--ds-color-danger-text-subtle);
192
+ --dsc-btn-secondary-hover-color: var(--ds-color-danger-text-default);
193
+ --dsc-btn-secondary-active-color: var(--ds-color-danger-text-default);
194
+ --dsc-btn-secondary-border-color: var(--ds-color-danger-border-strong);
195
+ --dsc-btn-secondary-hover-background: var(--ds-color-danger-surface-default);
196
+ --dsc-btn-secondary-active-background: var(--ds-color-danger-surface-hover);
197
+ --dsc-btn-tertiary-color: var(--ds-color-danger-text-subtle);
198
+ --dsc-btn-tertiary-hover-color: var(--ds-color-danger-text-default);
199
+ --dsc-btn-tertiary-active-color: var(--ds-color-danger-text-default);
200
+ --dsc-btn-tertiary-hover-background: var(--ds-color-danger-surface-default);
201
+ --dsc-btn-tertiary-active-background: var(--ds-color-danger-surface-hover);
271
202
  }
272
203
  }