@digdir/designsystemet-css 0.10.0 → 0.11.0-alpha.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.
Files changed (79) hide show
  1. package/accordion.css +89 -81
  2. package/alert.css +48 -44
  3. package/box.css +37 -37
  4. package/button.css +133 -196
  5. package/card.css +129 -91
  6. package/checkbox.css +118 -86
  7. package/chip.css +93 -93
  8. package/combobox.css +138 -125
  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-message.css +1 -1
  20. package/dist/error-summary.css +1 -1
  21. package/dist/fieldset.css +1 -1
  22. package/dist/heading.css +1 -1
  23. package/dist/helptext.css +1 -1
  24. package/dist/index.css +1 -1
  25. package/dist/ingress.css +1 -1
  26. package/dist/label.css +1 -1
  27. package/dist/link.css +1 -1
  28. package/dist/list.css +1 -1
  29. package/dist/modal.css +1 -1
  30. package/dist/native-select.css +1 -1
  31. package/dist/pagination.css +1 -1
  32. package/dist/paragraph.css +1 -1
  33. package/dist/popover.css +1 -1
  34. package/dist/radio.css +1 -1
  35. package/dist/search.css +1 -1
  36. package/dist/skeleton.css +1 -1
  37. package/dist/skiplink.css +1 -1
  38. package/dist/spinner.css +1 -1
  39. package/dist/switch.css +1 -1
  40. package/dist/table.css +1 -1
  41. package/dist/tabs.css +1 -1
  42. package/dist/tag.css +1 -1
  43. package/dist/textarea.css +1 -1
  44. package/dist/textfield.css +1 -1
  45. package/dist/togglegroup.css +1 -1
  46. package/dist/tooltip.css +1 -1
  47. package/dist/utils.css +1 -1
  48. package/divider.css +8 -8
  49. package/dropdownmenu.css +20 -19
  50. package/error-message.css +19 -19
  51. package/error-summary.css +12 -8
  52. package/fieldset.css +13 -13
  53. package/heading.css +27 -27
  54. package/helptext.css +22 -21
  55. package/index.css +5 -5
  56. package/ingress.css +18 -18
  57. package/label.css +17 -17
  58. package/link.css +46 -18
  59. package/list.css +10 -10
  60. package/modal.css +35 -33
  61. package/native-select.css +62 -45
  62. package/package.json +2 -2
  63. package/pagination.css +32 -32
  64. package/paragraph.css +37 -37
  65. package/popover.css +43 -40
  66. package/radio.css +88 -81
  67. package/search.css +66 -61
  68. package/skeleton.css +14 -14
  69. package/skiplink.css +32 -8
  70. package/spinner.css +15 -23
  71. package/switch.css +121 -91
  72. package/table.css +54 -50
  73. package/tabs.css +44 -46
  74. package/tag.css +42 -42
  75. package/textarea.css +34 -32
  76. package/textfield.css +64 -62
  77. package/togglegroup.css +11 -10
  78. package/tooltip.css +11 -18
  79. package/utils.css +11 -11
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,30 @@
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);
51
+ gap: var(--ds-sizing-1);
52
+ font: var(--ds-typography-paragraph-short-sm);
38
53
  font-family: inherit;
39
- min-height: var(--fds-sizing-10);
54
+ min-height: var(--ds-sizing-10);
40
55
  }
41
56
 
42
- .fds-btn--sm::before {
57
+ .ds-btn--sm::before {
43
58
  position: absolute;
44
59
  top: 0;
45
60
  left: 0;
@@ -48,7 +63,7 @@
48
63
  content: '';
49
64
  }
50
65
 
51
- .fds-btn--sm::after {
66
+ .ds-btn--sm::after {
52
67
  position: absolute;
53
68
  top: -5px;
54
69
  left: 0;
@@ -57,216 +72,138 @@
57
72
  content: '';
58
73
  }
59
74
 
60
- .fds-btn--md {
61
- --fds-btn-padding: var(--fds-spacing-2) var(--fds-spacing-4);
75
+ .ds-btn--md {
76
+ --dsc-btn-padding: var(--ds-spacing-2) var(--ds-spacing-4);
62
77
 
63
- gap: var(--fds-sizing-2);
64
- font: var(--fds-typography-paragraph-short-medium);
78
+ gap: var(--ds-sizing-2);
79
+ font: var(--ds-typography-paragraph-short-md);
65
80
  font-family: inherit;
66
- min-height: var(--fds-sizing-12);
81
+ min-height: var(--ds-sizing-12);
67
82
  }
68
83
 
69
- .fds-btn--lg {
70
- --fds-btn-padding: var(--fds-spacing-3) var(--fds-spacing-5);
84
+ .ds-btn--lg {
85
+ --dsc-btn-padding: var(--ds-spacing-3) var(--ds-spacing-5);
71
86
 
72
- gap: var(--fds-sizing-2);
73
- font: var(--fds-typography-paragraph-short-large);
87
+ gap: var(--ds-sizing-2);
88
+ font: var(--ds-typography-paragraph-short-lg);
74
89
  font-family: inherit;
75
- min-height: var(--fds-sizing-14);
90
+ min-height: var(--ds-sizing-14);
76
91
  }
77
92
 
78
- .fds-btn--full-width {
93
+ .ds-btn--full-width {
79
94
  width: 100%;
80
95
  }
81
96
 
82
- .fds-btn--secondary,
83
- .fds-btn--tertiary {
97
+ .ds-btn--secondary,
98
+ .ds-btn--tertiary {
84
99
  background-color: transparent;
85
100
  }
86
101
 
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);
102
+ .ds-btn--icon-only {
103
+ --dsc-btn-padding: 0;
106
104
  }
107
105
 
108
106
  /* Only use hover for non-touch devices to prevent sticky-hovering */
109
107
  @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);
120
- }
121
-
122
- .fds-btn--primary:where(.fds-btn--danger):not([aria-disabled='true'], :disabled):hover {
123
- background-color: var(--fds-semantic-surface-danger-hover);
108
+ .ds-btn--primary:not([aria-disabled='true'], :disabled):hover {
109
+ background-color: var(--dsc-btn-primary-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--secondary:not([aria-disabled='true'], :disabled):hover {
113
+ color: var(--dsc-btn-secondary-hover-color);
114
+ border-color: var(--dsc-btn-secondary-border-color);
115
+ background-color: var(--dsc-btn-secondary-hover-background);
130
116
  }
131
117
 
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);
118
+ .ds-btn--tertiary:not([aria-disabled='true'], :disabled):hover {
119
+ color: var(--dsc-btn-tertiary-hover-color);
120
+ background-color: var(--dsc-btn-tertiary-hover-background);
168
121
  }
169
122
  }
170
123
 
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
- }
178
-
179
- .fds-btn--primary:where(.fds-btn--success):not([aria-disabled='true'], :disabled):active {
180
- background-color: var(--fds-semantic-surface-success-active);
124
+ /* Primary button colors */
125
+ .ds-btn--primary {
126
+ background-color: var(--dsc-btn-primary-background);
181
127
  }
182
128
 
183
- .fds-btn--primary:where(.fds-btn--danger):not([aria-disabled='true'], :disabled):active {
184
- background-color: var(--fds-semantic-surface-danger-active);
129
+ .ds-btn--primary:not([aria-disabled='true'], :disabled):active {
130
+ background-color: var(--dsc-btn-primary-active-background);
185
131
  }
186
132
 
187
133
  /* 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);
134
+ .ds-btn--secondary {
135
+ color: var(--dsc-btn-secondary-color);
136
+ border-color: var(--dsc-btn-secondary-border-color);
137
+ background-color: transparent;
228
138
  }
229
139
 
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);
140
+ .ds-btn--secondary:not([aria-disabled='true'], :disabled):active {
141
+ color: var(--dsc-btn-secondary-active-color);
142
+ border-color: var(--dsc-btn-secondary-border-color);
143
+ background-color: var(--dsc-btn-secondary-active-background);
234
144
  }
235
145
 
236
146
  /* 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);
147
+ .ds-btn--tertiary {
148
+ color: var(--dsc-btn-tertiary-color);
149
+ }
150
+
151
+ .ds-btn--tertiary:not([aria-disabled='true'], :disabled):active {
152
+ color: var(--dsc-btn-tertiary-active-color);
153
+ background-color: var(--dsc-btn-tertiary-active-background);
154
+ }
155
+
156
+ .ds-btn--accent {
157
+ --dsc-btn-primary-background: var(--ds-color-accent-base-default);
158
+ --dsc-btn-primary-color: var(--ds-color-accent-contrast-default);
159
+ --dsc-btn-primary-hover-background: var(--ds-color-accent-base-hover);
160
+ --dsc-btn-primary-active-background: var(--ds-color-accent-base-active);
161
+ --dsc-btn-secondary-color: var(--ds-color-accent-text-subtle);
162
+ --dsc-btn-secondary-hover-color: var(--ds-color-accent-text-default);
163
+ --dsc-btn-secondary-active-color: var(--ds-color-accent-text-default);
164
+ --dsc-btn-secondary-border-color: var(--ds-color-accent-border-strong);
165
+ --dsc-btn-secondary-hover-background: var(--ds-color-accent-surface-default);
166
+ --dsc-btn-secondary-active-background: var(--ds-color-accent-surface-hover);
167
+ --dsc-btn-tertiary-color: var(--ds-color-accent-text-subtle);
168
+ --dsc-btn-tertiary-hover-color: var(--ds-color-accent-text-default);
169
+ --dsc-btn-tertiary-active-color: var(--ds-color-accent-text-default);
170
+ --dsc-btn-tertiary-hover-background: var(--ds-color-accent-surface-default);
171
+ --dsc-btn-tertiary-active-background: var(--ds-color-accent-surface-hover);
172
+ }
173
+
174
+ .ds-btn--neutral {
175
+ --dsc-btn-primary-background: var(--ds-color-neutral-base-default);
176
+ --dsc-btn-primary-color: var(--ds-color-neutral-contrast-default);
177
+ --dsc-btn-primary-hover-background: var(--ds-color-neutral-base-hover);
178
+ --dsc-btn-primary-active-background: var(--ds-color-neutral-base-active);
179
+ --dsc-btn-secondary-color: var(--ds-color-neutral-text-subtle);
180
+ --dsc-btn-secondary-hover-color: var(--ds-color-neutral-text-default);
181
+ --dsc-btn-secondary-active-color: var(--ds-color-neutral-text-default);
182
+ --dsc-btn-secondary-border-color: var(--ds-color-neutral-border-strong);
183
+ --dsc-btn-secondary-hover-background: var(--ds-color-neutral-surface-default);
184
+ --dsc-btn-secondary-active-background: var(--ds-color-neutral-surface-hover);
185
+ --dsc-btn-tertiary-color: var(--ds-color-neutral-text-subtle);
186
+ --dsc-btn-tertiary-hover-color: var(--ds-color-neutral-text-default);
187
+ --dsc-btn-tertiary-active-color: var(--ds-color-neutral-text-default);
188
+ --dsc-btn-tertiary-hover-background: var(--ds-color-neutral-surface-default);
189
+ --dsc-btn-tertiary-active-background: var(--ds-color-neutral-surface-hover);
190
+ }
191
+
192
+ .ds-btn--danger {
193
+ --dsc-btn-primary-background: var(--ds-color-danger-base-default);
194
+ --dsc-btn-primary-color: var(--ds-color-danger-contrast-default);
195
+ --dsc-btn-primary-hover-background: var(--ds-color-danger-base-hover);
196
+ --dsc-btn-primary-active-background: var(--ds-color-danger-base-active);
197
+ --dsc-btn-secondary-color: var(--ds-color-danger-text-subtle);
198
+ --dsc-btn-secondary-hover-color: var(--ds-color-danger-text-default);
199
+ --dsc-btn-secondary-active-color: var(--ds-color-danger-text-default);
200
+ --dsc-btn-secondary-border-color: var(--ds-color-danger-border-strong);
201
+ --dsc-btn-secondary-hover-background: var(--ds-color-danger-surface-default);
202
+ --dsc-btn-secondary-active-background: var(--ds-color-danger-surface-hover);
203
+ --dsc-btn-tertiary-color: var(--ds-color-danger-text-subtle);
204
+ --dsc-btn-tertiary-hover-color: var(--ds-color-danger-text-default);
205
+ --dsc-btn-tertiary-active-color: var(--ds-color-danger-text-default);
206
+ --dsc-btn-tertiary-hover-background: var(--ds-color-danger-surface-default);
207
+ --dsc-btn-tertiary-active-background: var(--ds-color-danger-surface-hover);
271
208
  }
272
209
  }