@danske/sapphire-css 16.3.0 → 25.1.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 (91) hide show
  1. package/README.md +1 -11
  2. package/build/themes/cjs/default-dark.d.ts +3 -2
  3. package/build/themes/cjs/default-dark.js +5 -1
  4. package/build/themes/cjs/default.d.ts +3 -2
  5. package/build/themes/cjs/default.js +5 -1
  6. package/build/themes/cjs/index.d.ts +4 -0
  7. package/build/themes/cjs/june-dark.d.ts +3 -2
  8. package/build/themes/cjs/june-dark.js +5 -1
  9. package/build/themes/cjs/june.d.ts +3 -2
  10. package/build/themes/cjs/june.js +5 -1
  11. package/build/themes/esm/default-dark.d.ts +3 -2
  12. package/build/themes/esm/default-dark.js +5 -1
  13. package/build/themes/esm/default.d.ts +3 -2
  14. package/build/themes/esm/default.js +5 -1
  15. package/build/themes/esm/index.d.ts +4 -0
  16. package/build/themes/esm/june-dark.d.ts +3 -2
  17. package/build/themes/esm/june-dark.js +5 -1
  18. package/build/themes/esm/june.d.ts +3 -2
  19. package/build/themes/esm/june.js +5 -1
  20. package/components/accordion/accordion.module.css +163 -0
  21. package/components/badge/badge.module.css +246 -79
  22. package/components/badge/badge.module.css.d.ts +42 -10
  23. package/components/button/button.module.css +401 -74
  24. package/components/button/button.module.css.d.ts +11 -5
  25. package/components/buttonGroup/buttonGroup.module.css +20 -4
  26. package/components/buttonGroup/buttonGroup.module.css.d.ts +2 -1
  27. package/components/calendar/calendar.module.css +9 -2
  28. package/components/calendar/calendar.module.css.d.ts +1 -2
  29. package/components/checkbox/checkbox.module.css +44 -11
  30. package/components/checkbox/checkbox.module.css.d.ts +3 -0
  31. package/components/dateField/dateField.module.css +81 -86
  32. package/components/dateField/dateField.module.css.d.ts +3 -6
  33. package/components/dialog/dialog.module.css +34 -15
  34. package/components/dialog/dialog.module.css.d.ts +2 -2
  35. package/components/field/field.module.css +136 -0
  36. package/components/field/field.module.css.d.ts +0 -1
  37. package/components/fieldGroup/fieldGroup.module.css +8 -54
  38. package/components/fieldGroup/fieldGroup.module.css.d.ts +4 -8
  39. package/components/icon/icon.module.css +11 -6
  40. package/components/icon/icon.module.css.d.ts +1 -0
  41. package/components/iconButton/iconButton.module.css +356 -70
  42. package/components/iconButton/iconButton.module.css.d.ts +8 -4
  43. package/components/label/label.module.css +29 -0
  44. package/components/link/link.module.css +71 -13
  45. package/components/link/link.module.css.d.ts +7 -2
  46. package/components/list/list.module.css +47 -21
  47. package/components/list/list.module.css.d.ts +1 -1
  48. package/components/listbox/listbox.module.css +53 -13
  49. package/components/listbox/listbox.module.css.d.ts +3 -1
  50. package/components/notificationBadge/notificationBadge.module.css +126 -0
  51. package/components/panel/panel.module.css +32 -14
  52. package/components/panel/panel.module.css.d.ts +3 -2
  53. package/components/paragraph/paragraph.module.css +4 -7
  54. package/components/paragraph/paragraph.module.css.d.ts +1 -2
  55. package/components/radio/radio.module.css +34 -9
  56. package/components/radio/radio.module.css.d.ts +2 -0
  57. package/components/searchField/searchField.module.css +43 -19
  58. package/components/searchField/searchField.module.css.d.ts +2 -0
  59. package/components/segmentedControl/segmentedControl.module.css +7 -7
  60. package/components/select/select.module.css +24 -51
  61. package/components/select/select.module.css.d.ts +1 -4
  62. package/components/spinner/spinner.module.css +64 -0
  63. package/components/surface/surface.module.css +5 -1
  64. package/components/surface/surface.module.css.d.ts +1 -0
  65. package/components/switch/switch.module.css +44 -44
  66. package/components/switch/switch.module.css.d.ts +1 -0
  67. package/components/table/table.module.css +22 -40
  68. package/components/tabs/tabs.module.css +155 -23
  69. package/components/tabs/tabs.module.css.d.ts +9 -2
  70. package/components/text/text.module.css +207 -0
  71. package/components/textField/textField.module.css +67 -89
  72. package/components/textField/textField.module.css.d.ts +3 -7
  73. package/components/toast/toast.module.css +101 -0
  74. package/components/tooltip/tooltip.module.css +13 -8
  75. package/components/tooltip/tooltip.module.css.d.ts +1 -0
  76. package/package.json +10 -7
  77. package/themes/default-dark.assets.css +1 -0
  78. package/themes/default-dark.d.ts +3 -2
  79. package/themes/default-dark.js +5 -1
  80. package/themes/default-dark.tokens.scss +1 -0
  81. package/themes/default.assets.css +1 -0
  82. package/themes/default.d.ts +3 -2
  83. package/themes/default.js +5 -1
  84. package/themes/default.tokens.scss +1 -0
  85. package/themes/index.d.ts +4 -0
  86. package/themes/june-dark.d.ts +3 -2
  87. package/themes/june-dark.js +5 -1
  88. package/themes/june-dark.scss +3 -0
  89. package/themes/june.d.ts +3 -2
  90. package/themes/june.js +5 -1
  91. package/themes/june.scss +3 -0
@@ -17,7 +17,7 @@
17
17
  /* typography */
18
18
  font-family: var(--sapphire-button-font-name);
19
19
  font-weight: var(--sapphire-button-font-weight);
20
- font-size: var(--sapphire-button-size-font-medium);
20
+ font-size: var(--sapphire-button-size-font-m);
21
21
  text-transform: var(--sapphire-button-font-text-transform);
22
22
  letter-spacing: var(--sapphire-button-font-letter-spacing);
23
23
 
@@ -36,13 +36,14 @@
36
36
  -moz-osx-font-smoothing: grayscale;
37
37
 
38
38
  /* sizing */
39
- padding: 0 var(--sapphire-button-size-spacing-horizontal-medium);
40
- height: var(--sapphire-button-size-height-default-medium);
41
- min-width: var(--sapphire-button-size-min-width-no-icon-medium);
39
+ padding: 0 var(--sapphire-button-size-spacing-horizontal-m);
40
+ height: var(--sapphire-button-size-height-m);
41
+ min-width: var(--sapphire-button-size-min-width-no-icon-m);
42
+ max-width: fit-content; /* When part of flex layout the button will otherwise expand to full width of container when container has flex-direction 'column' */
42
43
  flex-shrink: 0; /* When part of flex layout the button will otherwise be squashed */
43
44
 
44
45
  /* shape */
45
- border-radius: var(--sapphire-button-size-radius-medium);
46
+ border-radius: var(--sapphire-button-size-radius-m);
46
47
  border-style: solid;
47
48
  border-width: 0;
48
49
  border-color: transparent;
@@ -59,7 +60,7 @@ a.sapphire-button {
59
60
  text-decoration: none;
60
61
  }
61
62
 
62
- /* Diasbled state for all variants */
63
+ /* Disabled state for all variants */
63
64
  .sapphire-button:disabled,
64
65
  .sapphire-button.is-disabled {
65
66
  opacity: var(--sapphire-button-opacity-disabled);
@@ -94,101 +95,427 @@ a.sapphire-button {
94
95
  /**
95
96
  * Skin rules
96
97
  */
97
- /* primary */
98
- .sapphire-button--primary {
98
+
99
+ /* ### Variant: Primary */
100
+ /* ## Style: Default */
101
+ .sapphire-button--primary-fill {
99
102
  background-color: var(--sapphire-button-color-background-primary-default);
100
103
  color: var(--sapphire-button-color-content-primary-default);
101
104
  }
102
- .sapphire-button--primary:not(:disabled):not(.is-disabled):not(:active):not(.is-active):not(.js-hover):hover,
103
- .sapphire-button--primary:not(:disabled):not(.is-disabled):not(:active):not(.is-active).is-hover {
105
+ .sapphire-button--primary-fill:not(:disabled):not(.is-disabled):not(:active):not(.is-active):not(.js-hover):hover,
106
+ .sapphire-button--primary-fill:not(:disabled):not(.is-disabled):not(:active):not(.is-active).is-hover {
104
107
  background-color: var(--sapphire-button-color-background-primary-hover);
105
108
  }
106
- .sapphire-button--primary.is-focus,
107
- .sapphire-button--primary:not(.js-focus):focus-visible {
109
+ .sapphire-button--primary-fill.is-focus,
110
+ .sapphire-button--primary-fill:not(.js-focus):focus-visible {
108
111
  background-color: var(--sapphire-button-color-background-primary-focus);
109
112
  }
110
- .sapphire-button--primary:not(:disabled):not(.is-disabled).is-active,
111
- .sapphire-button--primary:not(:disabled):not(.is-disabled):active,
112
- .sapphire-button--primary:not(:disabled):not(.is-disabled):focus-visible:active {
113
+ .sapphire-button--primary-fill:not(:disabled):not(.is-disabled).is-active,
114
+ .sapphire-button--primary-fill:not(:disabled):not(.is-disabled):active,
115
+ .sapphire-button--primary-fill:not(:disabled):not(.is-disabled):focus-visible:active {
113
116
  background-color: var(--sapphire-button-color-background-primary-active);
114
117
  }
115
118
 
116
- /* secondary */
117
- .sapphire-button--secondary {
119
+ /* ### Variant: Secondary */
120
+ /* ## Style: Default */
121
+ /* # Surface: Primary */
122
+ .sapphire-button--secondary-fill {
118
123
  background-color: var(--sapphire-button-color-background-secondary-default);
119
124
  color: var(--sapphire-button-color-content-secondary-default);
120
125
  }
121
- .sapphire-button--secondary:not(:disabled):not(.is-disabled):not(:active):not(.is-active):not(.js-hover):hover,
122
- .sapphire-button--secondary:not(:disabled):not(.is-disabled):not(:active):not(.is-active).is-hover {
126
+
127
+ .sapphire-button--secondary-fill:not(:disabled):not(.is-disabled):not(:active):not(.is-active):not(.js-hover):hover,
128
+ .sapphire-button--secondary-fill:not(:disabled):not(.is-disabled):not(:active):not(.is-active).is-hover {
123
129
  background-color: var(--sapphire-button-color-background-secondary-hover);
130
+ color: var(--sapphire-button-color-content-secondary-hover);
124
131
  }
125
- .sapphire-button--secondary.is-focus,
126
- .sapphire-button--secondary:not(.js-focus):focus-visible {
132
+
133
+ .sapphire-button--secondary-fill.is-focus,
134
+ .sapphire-button--secondary-fill:not(.js-focus):focus-visible {
127
135
  background-color: var(--sapphire-button-color-background-secondary-focus);
128
136
  }
129
- .sapphire-button--secondary:not(:disabled):not(.is-disabled).is-active,
130
- .sapphire-button--secondary:not(:disabled):not(.is-disabled):active,
131
- .sapphire-button--secondary:not(:disabled):not(.is-disabled):focus-visible:active {
137
+
138
+ .sapphire-button--secondary-fill:not(:disabled):not(.is-disabled).is-active,
139
+ .sapphire-button--secondary-fill:not(:disabled):not(.is-disabled):active,
140
+ .sapphire-button--secondary-fill:not(:disabled):not(.is-disabled):focus-visible:active {
132
141
  background-color: var(--sapphire-button-color-background-secondary-active);
133
142
  color: var(--sapphire-button-color-content-secondary-active);
134
143
  }
135
144
 
136
- /* dangerSecondary */
137
- .sapphire-button--dangerSecondary {
145
+ /* # Surface: Secondary */
146
+ .sapphire-button--secondary-fill.sapphire-button--secondary-surface {
138
147
  background-color: var(
139
- --sapphire-button-color-background-danger-secondary-default
148
+ --sapphire-button-color-background-secondary-surface-secondary-default
140
149
  );
141
- color: var(--sapphire-button-color-content-danger-secondary-default);
142
150
  }
143
- .sapphire-button--dangerSecondary:not(:disabled):not(.is-disabled):not(:active):not(.is-active):not(.js-hover):hover,
144
- .sapphire-button--dangerSecondary:not(:disabled):not(.is-disabled):not(:active):not(.is-active).is-hover {
151
+
152
+ .sapphire-button--secondary-fill.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled):not(:active):not(.is-active):not(.js-hover):hover,
153
+ .sapphire-button--secondary-fill.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled):not(:active):not(.is-active).is-hover {
145
154
  background-color: var(
146
- --sapphire-button-color-background-danger-secondary-hover
155
+ --sapphire-button-color-background-secondary-surface-secondary-hover
147
156
  );
148
157
  }
149
- .sapphire-button--dangerSecondary.is-focus,
150
- .sapphire-button--dangerSecondary:not(.js-focus):focus-visible {
158
+
159
+ .sapphire-button--secondary-fill.sapphire-button--secondary-surface.is-focus,
160
+ .sapphire-button--secondary-fill.sapphire-button--secondary-surface:not(.js-focus):focus-visible {
151
161
  background-color: var(
152
- --sapphire-button-color-background-danger-secondary-focus
162
+ --sapphire-button-color-background-secondary-surface-secondary-focus
153
163
  );
154
164
  }
155
- .sapphire-button--dangerSecondary:not(:disabled):not(.is-disabled).is-active,
156
- .sapphire-button--dangerSecondary:not(:disabled):not(.is-disabled):focus-visible:active,
157
- .sapphire-button--dangerSecondary:not(:disabled):not(.is-disabled):active {
165
+
166
+ .sapphire-button--secondary-fill.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled).is-active,
167
+ .sapphire-button--secondary-fill.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled):active,
168
+ .sapphire-button--secondary-fill.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled):focus-visible:active {
169
+ background-color: var(
170
+ --sapphire-button-color-background-secondary-surface-secondary-active
171
+ );
172
+ }
173
+
174
+ /* ## Style: Ghost */
175
+ /* # Surface: Primary */
176
+ .sapphire-button--secondary-ghost {
177
+ background-color: var(
178
+ --sapphire-button-color-background-secondary-ghost-default
179
+ );
180
+ color: var(--sapphire-button-color-content-secondary-default);
181
+ }
182
+
183
+ .sapphire-button--secondary-ghost:not(:disabled):not(.is-disabled):not(:active):not(.is-active):not(.js-hover):hover,
184
+ .sapphire-button--secondary-ghost:not(:disabled):not(.is-disabled):not(:active):not(.is-active).is-hover {
185
+ background-color: var(
186
+ --sapphire-button-color-background-secondary-ghost-hover
187
+ );
188
+ color: var(--sapphire-button-color-content-secondary-hover);
189
+ }
190
+
191
+ .sapphire-button--secondary-ghost.is-focus,
192
+ .sapphire-button--secondary-ghost:not(.js-focus):focus-visible {
193
+ background-color: var(
194
+ --sapphire-button-color-background-secondary-ghost-focus
195
+ );
196
+ }
197
+
198
+ .sapphire-button--secondary-ghost:not(:disabled):not(.is-disabled).is-active,
199
+ .sapphire-button--secondary-ghost:not(:disabled):not(.is-disabled):active,
200
+ .sapphire-button--secondary-ghost:not(:disabled):not(.is-disabled):focus-visible:active {
201
+ background-color: var(
202
+ --sapphire-button-color-background-secondary-ghost-active
203
+ );
204
+ color: var(--sapphire-button-color-content-secondary-active);
205
+ }
206
+
207
+ /* # Surface: Secondary */
208
+ .sapphire-button--secondary-ghost.sapphire-button--secondary-surface {
209
+ background-color: var(
210
+ --sapphire-button-color-background-secondary-ghost-surface-secondary-default
211
+ );
212
+ }
213
+
214
+ .sapphire-button--secondary-ghost.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled):not(:active):not(.is-active):not(.js-hover):hover,
215
+ .sapphire-button--secondary-ghost.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled):not(:active):not(.is-active).is-hover {
216
+ background-color: var(
217
+ --sapphire-button-color-background-secondary-ghost-surface-secondary-hover
218
+ );
219
+ }
220
+
221
+ .sapphire-button--secondary-ghost.sapphire-button--secondary-surface.is-focus,
222
+ .sapphire-button--secondary-ghost.sapphire-button--secondary-surface:not(.js-focus):focus-visible {
223
+ background-color: var(
224
+ --sapphire-button-color-background-secondary-ghost-surface-secondary-focus
225
+ );
226
+ }
227
+
228
+ .sapphire-button--secondary-ghost.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled).is-active,
229
+ .sapphire-button--secondary-ghost.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled):active,
230
+ .sapphire-button--secondary-ghost.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled):focus-visible:active {
158
231
  background-color: var(
159
- --sapphire-button-color-background-danger-secondary-active
232
+ --sapphire-button-color-background-secondary-ghost-surface-secondary-active
160
233
  );
161
- color: var(--sapphire-button-color-content-danger-secondary-active);
162
234
  }
163
235
 
164
- /* tertiary */
165
- .sapphire-button--tertiary {
166
- border-radius: var(--sapphire-button-size-radius-tertiary);
167
- padding-right: var(--sapphire-button-size-spacing-horizontal-tertiary);
168
- padding-left: var(--sapphire-button-size-spacing-horizontal-tertiary);
236
+ /* ## Style: Text */
237
+ .sapphire-button--secondary-text {
238
+ color: var(--sapphire-button-color-content-secondary-default);
239
+ border-radius: var(--sapphire-button-size-radius-text);
240
+ background: var(--sapphire-button-color-background-secondary-text);
241
+ padding: 0;
242
+ }
243
+
244
+ .sapphire-button--secondary-text:not(:disabled):not(.is-disabled):not(:active):not(.is-active):not(.js-hover):hover,
245
+ .sapphire-button--secondary-text:not(:disabled):not(.is-disabled):not(:active):not(.is-active).is-hover {
246
+ color: var(--sapphire-button-color-content-secondary-hover);
247
+ }
248
+
249
+ .sapphire-button--secondary-text:not(:disabled):not(.is-disabled).is-active,
250
+ .sapphire-button--secondary-text:not(:disabled):not(.is-disabled):active,
251
+ .sapphire-button--secondary-text:not(:disabled):not(.is-disabled):focus-visible:active {
252
+ color: var(--sapphire-button-color-content-secondary-active);
253
+ }
254
+
255
+ /* ### Variant: Tertiary */
256
+ /* ## Style: Default */
257
+ /* # Surface: Primary */
258
+ .sapphire-button--tertiary-fill {
169
259
  background-color: var(--sapphire-button-color-background-tertiary-default);
170
260
  color: var(--sapphire-button-color-content-tertiary-default);
171
261
  }
172
- .sapphire-button--tertiary:not(:disabled):not(.is-disabled).is-active,
173
- .sapphire-button--tertiary:not(:disabled):not(.is-disabled):focus-visible:active,
174
- .sapphire-button--tertiary:not(:disabled):not(.is-disabled):active {
262
+
263
+ .sapphire-button--tertiary-fill:not(:disabled):not(.is-disabled):not(:active):not(.is-active):not(.js-hover):hover,
264
+ .sapphire-button--tertiary-fill:not(:disabled):not(.is-disabled):not(:active):not(.is-active).is-hover {
265
+ background-color: var(--sapphire-button-color-background-tertiary-hover);
266
+ color: var(--sapphire-button-color-content-tertiary-hover);
267
+ }
268
+
269
+ .sapphire-button--tertiary-fill.is-focus,
270
+ .sapphire-button--tertiary-fill:not(.js-focus):focus-visible {
271
+ background-color: var(--sapphire-button-color-background-tertiary-focus);
272
+ }
273
+
274
+ .sapphire-button--tertiary-fill:not(:disabled):not(.is-disabled).is-active,
275
+ .sapphire-button--tertiary-fill:not(:disabled):not(.is-disabled):active,
276
+ .sapphire-button--tertiary-fill:not(:disabled):not(.is-disabled):focus-visible:active {
277
+ background-color: var(--sapphire-button-color-background-tertiary-active);
175
278
  color: var(--sapphire-button-color-content-tertiary-active);
176
279
  }
177
280
 
178
- /* dangerTertiary */
179
- .sapphire-button--dangerTertiary {
180
- border-radius: var(--sapphire-button-size-radius-tertiary);
181
- padding-right: var(--sapphire-button-size-spacing-horizontal-danger-tertiary);
182
- padding-left: var(--sapphire-button-size-spacing-horizontal-danger-tertiary);
281
+ /* # Surface: Secondary */
282
+ .sapphire-button--tertiary-fill.sapphire-button--secondary-surface {
283
+ background-color: var(
284
+ --sapphire-button-color-background-tertiary-surface-secondary-default
285
+ );
286
+ }
287
+
288
+ .sapphire-button--tertiary-fill.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled):not(:active):not(.is-active):not(.js-hover):hover,
289
+ .sapphire-button--tertiary-fill.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled):not(:active):not(.is-active).is-hover {
290
+ background-color: var(
291
+ --sapphire-button-color-background-tertiary-surface-secondary-hover
292
+ );
293
+ }
294
+
295
+ .sapphire-button--tertiary-fill.sapphire-button--secondary-surface.is-focus,
296
+ .sapphire-button--tertiary-fill.sapphire-button--secondary-surface:not(.js-focus):focus-visible {
183
297
  background-color: var(
184
- --sapphire-button-color-background-danger-tertiary-default
298
+ --sapphire-button-color-background-tertiary-surface-secondary-focus
185
299
  );
186
- color: var(--sapphire-button-color-content-danger-tertiary-default);
187
300
  }
188
- .sapphire-button--dangerTertiary:not(:disabled):not(.is-disabled).is-active,
189
- .sapphire-button--dangerTertiary:not(:disabled):not(.is-disabled):focus-visible:active,
190
- .sapphire-button--dangerTertiary:not(:disabled):not(.is-disabled):active {
191
- color: var(--sapphire-button-color-content-danger-tertiary-active);
301
+
302
+ .sapphire-button--tertiary-fill.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled).is-active,
303
+ .sapphire-button--tertiary-fill.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled):active,
304
+ .sapphire-button--tertiary-fill.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled):focus-visible:active {
305
+ background-color: var(
306
+ --sapphire-button-color-background-tertiary-surface-secondary-active
307
+ );
308
+ }
309
+
310
+ /* ## Style: Ghost */
311
+ /* # Surface: Primary */
312
+ .sapphire-button--tertiary-ghost {
313
+ background-color: var(
314
+ --sapphire-button-color-background-tertiary-ghost-default
315
+ );
316
+ color: var(--sapphire-button-color-content-tertiary-default);
317
+ }
318
+
319
+ .sapphire-button--tertiary-ghost:not(:disabled):not(.is-disabled):not(:active):not(.is-active):not(.js-hover):hover,
320
+ .sapphire-button--tertiary-ghost:not(:disabled):not(.is-disabled):not(:active):not(.is-active).is-hover {
321
+ background-color: var(
322
+ --sapphire-button-color-background-tertiary-ghost-hover
323
+ );
324
+ color: var(--sapphire-button-color-content-tertiary-hover);
325
+ }
326
+
327
+ .sapphire-button--tertiary-ghost.is-focus,
328
+ .sapphire-button--tertiary-ghost:not(.js-focus):focus-visible {
329
+ background-color: var(
330
+ --sapphire-button-color-background-tertiary-ghost-focus
331
+ );
332
+ }
333
+
334
+ .sapphire-button--tertiary-ghost:not(:disabled):not(.is-disabled).is-active,
335
+ .sapphire-button--tertiary-ghost:not(:disabled):not(.is-disabled):active,
336
+ .sapphire-button--tertiary-ghost:not(:disabled):not(.is-disabled):focus-visible:active {
337
+ background-color: var(
338
+ --sapphire-button-color-background-tertiary-ghost-active
339
+ );
340
+ color: var(--sapphire-button-color-content-tertiary-active);
341
+ }
342
+
343
+ /* # Surface: Secondary */
344
+ .sapphire-button--tertiary-ghost.sapphire-button--secondary-surface {
345
+ background-color: var(
346
+ --sapphire-button-color-background-tertiary-ghost-surface-secondary-default
347
+ );
348
+ }
349
+
350
+ .sapphire-button--tertiary-ghost.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled):not(:active):not(.is-active):not(.js-hover):hover,
351
+ .sapphire-button--tertiary-ghost.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled):not(:active):not(.is-active).is-hover {
352
+ background-color: var(
353
+ --sapphire-button-color-background-tertiary-ghost-surface-secondary-hover
354
+ );
355
+ }
356
+
357
+ .sapphire-button--tertiary-ghost.sapphire-button--secondary-surface.is-focus,
358
+ .sapphire-button--tertiary-ghost.sapphire-button--secondary-surface:not(.js-focus):focus-visible {
359
+ background-color: var(
360
+ --sapphire-button-color-background-tertiary-ghost-surface-secondary-focus
361
+ );
362
+ }
363
+
364
+ .sapphire-button--tertiary-ghost.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled).is-active,
365
+ .sapphire-button--tertiary-ghost.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled):active,
366
+ .sapphire-button--tertiary-ghost.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled):focus-visible:active {
367
+ background-color: var(
368
+ --sapphire-button-color-background-tertiary-ghost-surface-secondary-active
369
+ );
370
+ }
371
+
372
+ /* ## Style: Text */
373
+ .sapphire-button--tertiary-text {
374
+ color: var(--sapphire-button-color-content-tertiary-default);
375
+ border-radius: var(--sapphire-button-size-radius-text);
376
+ background: var(--sapphire-button-color-background-tertiary-text);
377
+ padding: 0;
378
+ }
379
+
380
+ .sapphire-button--tertiary-text:not(:disabled):not(.is-disabled):not(:active):not(.is-active):not(.js-hover):hover,
381
+ .sapphire-button--tertiary-text:not(:disabled):not(.is-disabled):not(:active):not(.is-active).is-hover {
382
+ color: var(--sapphire-button-color-content-tertiary-hover);
383
+ }
384
+
385
+ .sapphire-button--tertiary-text:not(:disabled):not(.is-disabled).is-active,
386
+ .sapphire-button--tertiary-text:not(:disabled):not(.is-disabled):active,
387
+ .sapphire-button--tertiary-text:not(:disabled):not(.is-disabled):focus-visible:active {
388
+ color: var(--sapphire-button-color-content-tertiary-active);
389
+ }
390
+
391
+ /* ### Variant: Danger */
392
+ /* ## Style: Default */
393
+ /* # Surface: Primary */
394
+ .sapphire-button--danger-fill {
395
+ background-color: var(--sapphire-button-color-background-danger-default);
396
+ color: var(--sapphire-button-color-content-danger-default);
397
+ }
398
+
399
+ .sapphire-button--danger-fill:not(:disabled):not(.is-disabled):not(:active):not(.is-active):not(.js-hover):hover,
400
+ .sapphire-button--danger-fill:not(:disabled):not(.is-disabled):not(:active):not(.is-active).is-hover {
401
+ background-color: var(--sapphire-button-color-background-danger-hover);
402
+ color: var(--sapphire-button-color-content-danger-hover);
403
+ }
404
+
405
+ .sapphire-button--danger-fill.is-focus,
406
+ .sapphire-button--danger-fill:not(.js-focus):focus-visible {
407
+ background-color: var(--sapphire-button-color-background-danger-focus);
408
+ }
409
+
410
+ .sapphire-button--danger-fill:not(:disabled):not(.is-disabled).is-active,
411
+ .sapphire-button--danger-fill:not(:disabled):not(.is-disabled):active,
412
+ .sapphire-button--danger-fill:not(:disabled):not(.is-disabled):focus-visible:active {
413
+ background-color: var(--sapphire-button-color-background-danger-active);
414
+ color: var(--sapphire-button-color-content-danger-active);
415
+ }
416
+
417
+ /* # Surface: Secondary */
418
+ .sapphire-button--danger-fill.sapphire-button--secondary-surface {
419
+ background-color: var(
420
+ --sapphire-button-color-background-danger-surface-secondary-default
421
+ );
422
+ }
423
+
424
+ .sapphire-button--danger-fill.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled):not(:active):not(.is-active):not(.js-hover):hover,
425
+ .sapphire-button--danger-fill.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled):not(:active):not(.is-active).is-hover {
426
+ background-color: var(
427
+ --sapphire-button-color-background-danger-surface-secondary-hover
428
+ );
429
+ }
430
+
431
+ .sapphire-button--danger-fill.sapphire-button--secondary-surface.is-focus,
432
+ .sapphire-button--danger-fill.sapphire-button--secondary-surface:not(.js-focus):focus-visible {
433
+ background-color: var(
434
+ --sapphire-button-color-background-danger-surface-secondary-focus
435
+ );
436
+ }
437
+
438
+ .sapphire-button--danger-fill.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled).is-active,
439
+ .sapphire-button--danger-fill.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled):active,
440
+ .sapphire-button--danger-fill.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled):focus-visible:active {
441
+ background-color: var(
442
+ --sapphire-button-color-background-danger-surface-secondary-active
443
+ );
444
+ }
445
+
446
+ /* ## Style: Ghost */
447
+ /* # Surface: Primary */
448
+ .sapphire-button--danger-ghost {
449
+ background-color: var(
450
+ --sapphire-button-color-background-danger-ghost-default
451
+ );
452
+ color: var(--sapphire-button-color-content-danger-default);
453
+ }
454
+
455
+ .sapphire-button--danger-ghost:not(:disabled):not(.is-disabled):not(:active):not(.is-active):not(.js-hover):hover,
456
+ .sapphire-button--danger-ghost:not(:disabled):not(.is-disabled):not(:active):not(.is-active).is-hover {
457
+ background-color: var(--sapphire-button-color-background-danger-ghost-hover);
458
+ color: var(--sapphire-button-color-content-danger-hover);
459
+ }
460
+
461
+ .sapphire-button--danger-ghost.is-focus,
462
+ .sapphire-button--danger-ghost:not(.js-focus):focus-visible {
463
+ background-color: var(--sapphire-button-color-background-danger-ghost-focus);
464
+ }
465
+
466
+ .sapphire-button--danger-ghost:not(:disabled):not(.is-disabled).is-active,
467
+ .sapphire-button--danger-ghost:not(:disabled):not(.is-disabled):active,
468
+ .sapphire-button--danger-ghost:not(:disabled):not(.is-disabled):focus-visible:active {
469
+ background-color: var(--sapphire-button-color-background-danger-ghost-active);
470
+ color: var(--sapphire-button-color-content-danger-active);
471
+ }
472
+
473
+ /* # Surface: Secondary */
474
+ .sapphire-button--danger-ghost.sapphire-button--secondary-surface {
475
+ background-color: var(
476
+ --sapphire-button-color-background-danger-ghost-surface-secondary-default
477
+ );
478
+ }
479
+
480
+ .sapphire-button--danger-ghost.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled):not(:active):not(.is-active):not(.js-hover):hover,
481
+ .sapphire-button--danger-ghost.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled):not(:active):not(.is-active).is-hover {
482
+ background-color: var(
483
+ --sapphire-button-color-background-danger-ghost-surface-secondary-hover
484
+ );
485
+ }
486
+
487
+ .sapphire-button--danger-ghost.sapphire-button--secondary-surface.is-focus,
488
+ .sapphire-button--danger-ghost.sapphire-button--secondary-surface:not(.js-focus):focus-visible {
489
+ background-color: var(
490
+ --sapphire-button-color-background-danger-ghost-surface-secondary-focus
491
+ );
492
+ }
493
+
494
+ .sapphire-button--danger-ghost.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled).is-active,
495
+ .sapphire-button--danger-ghost.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled):active,
496
+ .sapphire-button--danger-ghost.sapphire-button--secondary-surface:not(:disabled):not(.is-disabled):focus-visible:active {
497
+ background-color: var(
498
+ --sapphire-button-color-background-danger-ghost-surface-secondary-active
499
+ );
500
+ }
501
+
502
+ /* ## Style: Text */
503
+ .sapphire-button--danger-text {
504
+ color: var(--sapphire-button-color-content-danger-default);
505
+ border-radius: var(--sapphire-button-size-radius-text);
506
+ background: var(--sapphire-button-color-background-danger-text);
507
+ padding: 0;
508
+ }
509
+
510
+ .sapphire-button--danger-text:not(:disabled):not(.is-disabled):not(:active):not(.is-active):not(.js-hover):hover,
511
+ .sapphire-button--danger-text:not(:disabled):not(.is-disabled):not(:active):not(.is-active).is-hover {
512
+ color: var(--sapphire-button-color-content-danger-hover);
513
+ }
514
+
515
+ .sapphire-button--danger-text:not(:disabled):not(.is-disabled).is-active,
516
+ .sapphire-button--danger-text:not(:disabled):not(.is-disabled):active,
517
+ .sapphire-button--danger-text:not(:disabled):not(.is-disabled):focus-visible:active {
518
+ color: var(--sapphire-button-color-content-danger-active);
192
519
  }
193
520
 
194
521
  /**
@@ -240,16 +567,16 @@ a.sapphire-button {
240
567
  flex-direction: column;
241
568
  justify-content: center;
242
569
  align-items: center;
243
- height: var(--sapphire-button-size-icon-medium);
244
- width: var(--sapphire-button-size-icon-medium);
570
+ height: var(--sapphire-button-size-icon-m);
571
+ width: var(--sapphire-button-size-icon-m);
245
572
  }
246
573
  .sapphire-button--large .sapphire-button__icon {
247
- height: var(--sapphire-button-size-icon-large);
248
- width: var(--sapphire-button-size-icon-large);
574
+ height: var(--sapphire-button-size-icon-l);
575
+ width: var(--sapphire-button-size-icon-l);
249
576
  }
250
577
  .sapphire-button--small .sapphire-button__icon {
251
- height: var(--sapphire-button-size-icon-small);
252
- width: var(--sapphire-button-size-icon-small);
578
+ height: var(--sapphire-button-size-icon-s);
579
+ width: var(--sapphire-button-size-icon-s);
253
580
  }
254
581
 
255
582
  /**
@@ -259,20 +586,20 @@ a.sapphire-button {
259
586
  * LARGE
260
587
  */
261
588
  .sapphire-button--large {
262
- height: var(--sapphire-button-size-height-default-large);
263
- min-width: var(--sapphire-button-size-min-width-no-icon-large);
264
- padding: 0 var(--sapphire-button-size-spacing-horizontal-large);
265
- font-size: var(--sapphire-button-size-font-large);
266
- border-radius: var(--sapphire-button-size-radius-large);
589
+ height: var(--sapphire-button-size-height-l);
590
+ min-width: var(--sapphire-button-size-min-width-no-icon-l);
591
+ padding: 0 var(--sapphire-button-size-spacing-horizontal-l);
592
+ font-size: var(--sapphire-button-size-font-l);
593
+ border-radius: var(--sapphire-button-size-radius-l);
267
594
  }
268
595
 
269
596
  /**
270
597
  * SMALL
271
598
  */
272
599
  .sapphire-button--small {
273
- height: var(--sapphire-button-size-height-default-small);
274
- min-width: var(--sapphire-button-size-min-width-no-icon-small);
275
- padding: 0 var(--sapphire-button-size-spacing-horizontal-small);
276
- font-size: var(--sapphire-button-size-font-small);
277
- border-radius: var(--sapphire-button-size-radius-small);
600
+ height: var(--sapphire-button-size-height-s);
601
+ min-width: var(--sapphire-button-size-min-width-no-icon-s);
602
+ padding: 0 var(--sapphire-button-size-spacing-horizontal-s);
603
+ font-size: var(--sapphire-button-size-font-s);
604
+ border-radius: var(--sapphire-button-size-radius-s);
278
605
  }
@@ -6,14 +6,20 @@ declare const styles: {
6
6
  readonly "sapphire-button--with-left-icon": string;
7
7
  readonly "sapphire-button--with-right-icon": string;
8
8
  readonly "sapphire-button__icon": string;
9
- readonly "sapphire-button--primary": string;
9
+ readonly "sapphire-button--primary-fill": string;
10
10
  readonly "is-active": string;
11
11
  readonly "js-hover": string;
12
12
  readonly "is-hover": string;
13
- readonly "sapphire-button--secondary": string;
14
- readonly "sapphire-button--dangerSecondary": string;
15
- readonly "sapphire-button--tertiary": string;
16
- readonly "sapphire-button--dangerTertiary": string;
13
+ readonly "sapphire-button--secondary-fill": string;
14
+ readonly "sapphire-button--secondary-surface": string;
15
+ readonly "sapphire-button--secondary-ghost": string;
16
+ readonly "sapphire-button--secondary-text": string;
17
+ readonly "sapphire-button--tertiary-fill": string;
18
+ readonly "sapphire-button--tertiary-ghost": string;
19
+ readonly "sapphire-button--tertiary-text": string;
20
+ readonly "sapphire-button--danger-fill": string;
21
+ readonly "sapphire-button--danger-ghost": string;
22
+ readonly "sapphire-button--danger-text": string;
17
23
  readonly "sapphire-button--selected": string;
18
24
  readonly "sapphire-button--unselected": string;
19
25
  readonly "sapphire-button--large": string;
@@ -1,14 +1,14 @@
1
1
  .sapphire-button-group {
2
2
  display: flex;
3
- gap: var(--sapphire-button-group-size-spacing-large);
3
+ gap: var(--sapphire-button-group-size-spacing-m);
4
4
  }
5
5
 
6
- .sapphire-button-group--normal {
7
- gap: var(--sapphire-button-group-size-spacing-medium);
6
+ .sapphire-button-group--large {
7
+ gap: var(--sapphire-button-group-size-spacing-l);
8
8
  }
9
9
 
10
10
  .sapphire-button-group--dense {
11
- gap: var(--sapphire-button-group-size-spacing-small);
11
+ gap: var(--sapphire-button-group-size-spacing-s);
12
12
  }
13
13
 
14
14
  .sapphire-button-group--align-center {
@@ -22,3 +22,19 @@
22
22
  .sapphire-button-group--align-left {
23
23
  justify-content: flex-start;
24
24
  }
25
+
26
+ .sapphire-button-group--vertical {
27
+ flex-direction: column;
28
+ }
29
+
30
+ .sapphire-button-group--vertical.sapphire-button-group--align-center {
31
+ align-items: center;
32
+ }
33
+
34
+ .sapphire-button-group--vertical.sapphire-button-group--align-right {
35
+ align-items: flex-end;
36
+ }
37
+
38
+ .sapphire-button-group--vertical.sapphire-button-group--align-left {
39
+ align-items: flex-start;
40
+ }
@@ -1,10 +1,11 @@
1
1
  declare const styles: {
2
2
  readonly "sapphire-button-group": string;
3
- readonly "sapphire-button-group--normal": string;
3
+ readonly "sapphire-button-group--large": string;
4
4
  readonly "sapphire-button-group--dense": string;
5
5
  readonly "sapphire-button-group--align-center": string;
6
6
  readonly "sapphire-button-group--align-right": string;
7
7
  readonly "sapphire-button-group--align-left": string;
8
+ readonly "sapphire-button-group--vertical": string;
8
9
  };
9
10
  export = styles;
10
11