Skip to content

Commit 0ed7578

Browse files
authored
add tertiary Button variant (#1186)
1 parent 8e5546c commit 0ed7578

File tree

5 files changed

+145
-54
lines changed

5 files changed

+145
-54
lines changed

scss/buttons.scss

Lines changed: 88 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -44,24 +44,24 @@ $warning: $ux-yellow-400;
4444
$btn-primary-background: $primary;
4545
$btn-primary-border: $primary;
4646
$btn-primary-color: $ux-white;
47-
47+
4848
$btn-primary-hover-background: $ux-emerald-700;
4949
$btn-primary-hover-border: $ux-emerald-700;
5050
$btn-primary-hover-color: $ux-white;
51-
51+
5252
$btn-primary-active-background: $ux-emerald-800;
5353
$btn-primary-active-border: $ux-emerald-800;
5454
$btn-primary-active-color: $ux-white;
5555

5656
@include button-variant(
57-
$btn-primary-background,
57+
$btn-primary-background,
5858
$btn-primary-border,
5959
$btn-primary-color,
60-
60+
6161
$btn-primary-hover-background,
6262
$btn-primary-hover-border,
6363
$btn-primary-hover-color,
64-
64+
6565
$btn-primary-active-background,
6666
$btn-primary-active-border,
6767
$btn-primary-active-color,
@@ -80,24 +80,24 @@ $warning: $ux-yellow-400;
8080
$btn-primary-background: $synthesis-primary;
8181
$btn-primary-border: $synthesis-primary;
8282
$btn-primary-color: $ux-white;
83-
83+
8484
$btn-primary-hover-background: $synth-dark-background-selected-blue;
8585
$btn-primary-hover-border: $synth-dark-background-selected-blue;
8686
$btn-primary-hover-color: $ux-white;
87-
87+
8888
$btn-primary-active-background: $synth-dark-background-pressed-blue;
8989
$btn-primary-active-border: $synth-dark-background-pressed-blue;
9090
$btn-primary-active-color: $ux-white;
9191

9292
@include button-variant(
93-
$btn-primary-background,
93+
$btn-primary-background,
9494
$btn-primary-border,
9595
$btn-primary-color,
96-
96+
9797
$btn-primary-hover-background,
9898
$btn-primary-hover-border,
9999
$btn-primary-hover-color,
100-
100+
101101
$btn-primary-active-background,
102102
$btn-primary-active-border,
103103
$btn-primary-active-color,
@@ -126,7 +126,7 @@ $warning: $ux-yellow-400;
126126
$btn-outline-primary-active-border-color: $ux-emerald-800;
127127

128128
@include button-outline-variant(
129-
$btn-outline-primary-color,
129+
$btn-outline-primary-color,
130130
$btn-outline-primary-color-hover,
131131

132132
$btn-outline-primary-hover-background,
@@ -163,7 +163,7 @@ $warning: $ux-yellow-400;
163163
$btn-outline-primary-active-border-color: $synth-dark-background-pressed-blue;
164164

165165
@include button-outline-variant(
166-
$btn-outline-primary-color,
166+
$btn-outline-primary-color,
167167
$btn-outline-primary-color-hover,
168168

169169
$btn-outline-primary-hover-background,
@@ -186,28 +186,71 @@ $warning: $ux-yellow-400;
186186
}
187187
}
188188

189+
@mixin btn-tertiary {
190+
$btn-tertiary-background: transparent;
191+
$btn-tertiary-border: transparent;
192+
$btn-tertiary-color: $synth-primary-cta-blue;
193+
194+
$btn-tertiary-hover-background: $btn-tertiary-background;
195+
$btn-tertiary-hover-border: $btn-tertiary-border;
196+
$btn-tertiary-hover-color: $btn-tertiary-color;
197+
198+
$btn-tertiary-active-background: $btn-tertiary-background;
199+
$btn-tertiary-active-border: $synth-hyperlink-color;
200+
$btn-tertiary-active-color: $btn-tertiary-hover-color;
201+
202+
$btn-tertiary-disabled-background: $btn-tertiary-background;
203+
$btn-tertiary-disabled-border: $btn-tertiary-hover-border;
204+
$btn-tertiary-disabled-color: $btn-tertiary-hover-color;
205+
206+
@include button-variant(
207+
$btn-tertiary-background,
208+
$btn-tertiary-border,
209+
$btn-tertiary-color,
210+
211+
$btn-tertiary-hover-background,
212+
$btn-tertiary-hover-border,
213+
$btn-tertiary-hover-color,
214+
215+
$btn-tertiary-active-background,
216+
$btn-tertiary-active-border,
217+
$btn-tertiary-active-color,
218+
219+
$btn-tertiary-disabled-background,
220+
$btn-tertiary-disabled-border,
221+
$btn-tertiary-disabled-color,
222+
);
223+
224+
border-width: 2px;
225+
226+
&:active, &.btn-tertiary:focus {
227+
box-shadow: none;
228+
border-color: $synth-hyperlink-color;
229+
}
230+
}
231+
189232
@mixin btn-danger {
190233
$btn-danger-background: $danger;
191234
$btn-danger-border: $danger;
192235
$btn-danger-color: $ux-white;
193-
236+
194237
$btn-danger-hover-background: $ux-red-600;
195238
$btn-danger-hover-border: $ux-red-600;
196239
$btn-danger-hover-color: $ux-white;
197-
240+
198241
$btn-danger-active-background: $ux-red-700;
199242
$btn-danger-active-border: $ux-red-700;
200243
$btn-danger-active-color: $ux-white;
201244

202245
@include button-variant(
203-
$btn-danger-background,
246+
$btn-danger-background,
204247
$btn-danger-border,
205248
$btn-danger-color,
206-
249+
207250
$btn-danger-hover-background,
208251
$btn-danger-hover-border,
209252
$btn-danger-hover-color,
210-
253+
211254
$btn-danger-active-background,
212255
$btn-danger-active-border,
213256
$btn-danger-active-color,
@@ -236,7 +279,7 @@ $warning: $ux-yellow-400;
236279
$btn-outline-danger-active-border-color: $ux-red-700;
237280

238281
@include button-outline-variant(
239-
$btn-outline-danger-color,
282+
$btn-outline-danger-color,
240283
$btn-outline-danger-color-hover,
241284

242285
$btn-outline-danger-hover-background,
@@ -263,24 +306,24 @@ $warning: $ux-yellow-400;
263306
$btn-warning-background: $warning;
264307
$btn-warning-border: $warning;
265308
$btn-warning-color: $ux-yellow-900;
266-
309+
267310
$btn-warning-hover-background: $ux-yellow-500;
268311
$btn-warning-hover-border: $ux-yellow-500;
269312
$btn-warning-hover-color: $ux-yellow-900;
270-
313+
271314
$btn-warning-active-background: $ux-yellow-600;
272315
$btn-warning-active-border: $ux-yellow-600;
273316
$btn-warning-active-color: $ux-yellow-900;
274317

275318
@include button-variant(
276-
$btn-warning-background,
319+
$btn-warning-background,
277320
$btn-warning-border,
278321
$btn-warning-color,
279-
322+
280323
$btn-warning-hover-background,
281324
$btn-warning-hover-border,
282325
$btn-warning-hover-color,
283-
326+
284327
$btn-warning-active-background,
285328
$btn-warning-active-border,
286329
$btn-warning-active-color,
@@ -307,9 +350,9 @@ $warning: $ux-yellow-400;
307350

308351
$btn-outline-warning-active-background: $ux-yellow-500;
309352
$btn-outline-warning-active-border-color: $ux-yellow-500;
310-
353+
311354
@include button-outline-variant(
312-
$btn-outline-warning-color,
355+
$btn-outline-warning-color,
313356
$btn-outline-warning-color-hover,
314357

315358
$btn-outline-warning-hover-background,
@@ -336,24 +379,24 @@ $warning: $ux-yellow-400;
336379
$btn-transparent-background: transparent;
337380
$btn-transparent-border: transparent;
338381
$btn-transparent-color: $ux-gray-700;
339-
382+
340383
$btn-transparent-hover-background: $ux-gray-300;
341384
$btn-transparent-hover-border: transparent;
342385
$btn-transparent-hover-color: $ux-gray-900;
343-
386+
344387
$btn-transparent-active-background: $ux-gray-400;
345388
$btn-transparent-active-border: $ux-gray-400;
346389
$btn-transparent-active-color: $ux-gray-900;
347390

348391
@include button-variant(
349-
$btn-transparent-background,
392+
$btn-transparent-background,
350393
$btn-transparent-border,
351394
$btn-transparent-color,
352-
395+
353396
$btn-transparent-hover-background,
354397
$btn-transparent-hover-border,
355398
$btn-transparent-hover-color,
356-
399+
357400
$btn-transparent-active-background,
358401
$btn-transparent-active-border,
359402
$btn-transparent-active-color,
@@ -384,9 +427,9 @@ $warning: $ux-yellow-400;
384427

385428
$btn-outline-transparent-active-background: $ux-gray-400;
386429
$btn-outline-transparent-active-border-color: $ux-gray-400;
387-
430+
388431
@include button-outline-variant(
389-
$btn-outline-transparent-color,
432+
$btn-outline-transparent-color,
390433
$btn-outline-transparent-color-hover,
391434

392435
$btn-outline-transparent-hover-background,
@@ -419,24 +462,24 @@ $warning: $ux-yellow-400;
419462
$btn-brand-google-background: $brand-color-google-alt;
420463
$btn-brand-google-border: $brand-color-google-alt;
421464
$btn-brand-google-color: $ux-white;
422-
465+
423466
$btn-brand-google-hover-background: #2069cf;
424467
$btn-brand-google-hover-border: #2069cf;
425468
$btn-brand-google-hover-color: $ux-white;
426-
469+
427470
$btn-brand-google-active-background: #2069cf;
428471
$btn-brand-google-active-border: #2069cf;
429472
$btn-brand-google-active-color: $ux-white;
430473

431474
@include button-variant(
432-
$btn-brand-google-background,
475+
$btn-brand-google-background,
433476
$btn-brand-google-border,
434477
$btn-brand-google-color,
435-
478+
436479
$btn-brand-google-hover-background,
437480
$btn-brand-google-hover-border,
438481
$btn-brand-google-hover-color,
439-
482+
440483
$btn-brand-google-active-background,
441484
$btn-brand-google-active-border,
442485
$btn-brand-google-active-color,
@@ -459,24 +502,24 @@ $warning: $ux-yellow-400;
459502
$btn-brand-facebook-background: $brand-color-facebook;
460503
$btn-brand-facebook-border: $brand-color-facebook;
461504
$btn-brand-facebook-color: $ux-white;
462-
505+
463506
$btn-brand-facebook-hover-background: darken($brand-color-facebook, 5%);
464507
$btn-brand-facebook-hover-border: darken($brand-color-facebook, 5%);
465508
$btn-brand-facebook-hover-color: $ux-white;
466-
509+
467510
$btn-brand-facebook-active-background: darken($brand-color-facebook, 5%);
468511
$btn-brand-facebook-active-border: darken($brand-color-facebook, 5%);
469512
$btn-brand-facebook-active-color: $ux-white;
470513

471514
@include button-variant(
472-
$btn-brand-facebook-background,
515+
$btn-brand-facebook-background,
473516
$btn-brand-facebook-border,
474517
$btn-brand-facebook-color,
475-
518+
476519
$btn-brand-facebook-hover-background,
477520
$btn-brand-facebook-hover-border,
478521
$btn-brand-facebook-hover-color,
479-
522+
480523
$btn-brand-facebook-active-background,
481524
$btn-brand-facebook-active-border,
482525
$btn-brand-facebook-active-color,
@@ -509,7 +552,7 @@ $warning: $ux-yellow-400;
509552
$btn-brand-linkedin-active-color: $ux-white;
510553

511554
@include button-variant(
512-
$btn-brand-linkedin-background,
555+
$btn-brand-linkedin-background,
513556
$btn-brand-linkedin-border,
514557
$btn-brand-linkedin-color,
515558

@@ -549,7 +592,7 @@ $warning: $ux-yellow-400;
549592
$btn-brand-twitter-active-color: $ux-white;
550593

551594
@include button-variant(
552-
$btn-brand-twitter-background,
595+
$btn-brand-twitter-background,
553596
$btn-brand-twitter-border,
554597
$btn-brand-twitter-color,
555598

@@ -589,7 +632,7 @@ $warning: $ux-yellow-400;
589632
$btn-link-active-color: $ux-blue-600;
590633

591634
@include button-variant(
592-
$btn-link-background,
635+
$btn-link-background,
593636
$btn-link-border,
594637
$btn-link-color,
595638

@@ -621,4 +664,3 @@ $warning: $ux-yellow-400;
621664
@include btn-remove-bootstrap-focus-outline;
622665
}
623666
}
624-

src/Button/Button.mdx

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,12 @@ import * as ComponentStories from './Button.stories';
6464

6565
<Canvas of={ComponentStories.Primary} />
6666

67+
### Tertiary
68+
69+
- Less important actions that are usually contained within sub-workflows on a page.
70+
71+
<Canvas of={ComponentStories.Tertiary} />
72+
6773
### Transparent
6874

6975
<Canvas of={ComponentStories.Transparent} />
@@ -84,5 +90,3 @@ For instance, when a page is being saved or a file is uploading, the button typi
8490
loading text and a spinner. This is accompanied by a disabled state to prevent duplicated actions.
8591

8692
<Canvas of={ComponentStories.Loading} />
87-
88-

0 commit comments

Comments
 (0)