activeadmin_blaze_theme 0.7.0 → 0.7.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (114) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +13 -0
  3. data/README.md +30 -8
  4. data/activeadmin_blaze_theme.gemspec +1 -13
  5. data/app/assets/stylesheets/activeadmin_blaze_theme/_contents.scss +1 -0
  6. data/app/assets/stylesheets/activeadmin_blaze_theme/_tables.scss +1 -1
  7. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/blaze.colors.scss +30 -0
  8. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/blaze.scss +43 -49
  9. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/components.addresses.scss +12 -0
  10. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/components.alerts.scss +59 -0
  11. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/components.avatars.scss +36 -0
  12. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/components.badges.scss +60 -0
  13. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/components.breadcrumbs.scss +20 -0
  14. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/components.bubbles.scss +49 -0
  15. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/components.buttons.scss +77 -0
  16. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/components.calendars.scss +69 -0
  17. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/components.cards.scss +213 -0
  18. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/components.headings.scss +14 -0
  19. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/components.hints.scss +27 -0
  20. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/components.input-groups.scss +163 -0
  21. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/components.inputs.scss +135 -0
  22. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/components.links.scss +31 -0
  23. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/components.lists.scss +60 -0
  24. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/components.navs.scss +126 -0
  25. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/components.overlays.scss +33 -0
  26. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/components.pagination.scss +42 -0
  27. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/components.progress.scss +51 -0
  28. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/components.ranges.scss +114 -0
  29. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/components.tables.scss +88 -0
  30. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/components.tabs.scss +72 -0
  31. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/components.tags.scss +42 -0
  32. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/components.toggles.scss +74 -0
  33. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/{_components.tooltips.scss → components.tooltips.scss} +30 -28
  34. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/components.trees.scss +47 -0
  35. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/components.typography.scss +95 -0
  36. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/generics.global.scss +13 -0
  37. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/mixins/_components.alerts.scss +6 -0
  38. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/mixins/_components.badges.scss +8 -0
  39. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/mixins/_components.buttons.scss +43 -82
  40. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/mixins/_components.inputs.scss +40 -2
  41. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/mixins/_components.links.scss +22 -0
  42. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/mixins/_components.lists.scss +10 -0
  43. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/mixins/_components.navs.scss +29 -0
  44. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/mixins/_components.ranges.scss +89 -0
  45. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/mixins/_components.tabs.scss +5 -0
  46. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/mixins/_components.toggles.scss +6 -0
  47. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/mixins/_components.typography.scss +25 -0
  48. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/mixins/_objects.containers.scss +10 -0
  49. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/mixins/_objects.grid.scss +10 -38
  50. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/mixins/_settings.global.scss +864 -0
  51. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/mixins/_tools.mediaqueries.scss +34 -13
  52. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/mixins/_utilities.boxing.scss +125 -0
  53. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/mixins/_utilities.visibility.scss +46 -6
  54. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/objects.containers.scss +29 -0
  55. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/objects.drawers.scss +88 -0
  56. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/objects.forms.scss +25 -0
  57. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/{_objects.grid.responsive.scss → objects.grid.responsive.scss} +14 -14
  58. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/{_objects.grid.scss → objects.grid.scss} +2 -2
  59. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/{_objects.images.scss → objects.images.scss} +1 -1
  60. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/{_objects.media.scss → objects.media.scss} +3 -3
  61. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/objects.modals.scss +58 -0
  62. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/{_objects.panels.scss → objects.panels.scss} +11 -1
  63. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/themes/blaze.example.scss +7 -0
  64. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/{_utilities.alignment.scss → utilities.alignment.scss} +1 -1
  65. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/utilities.boxing.scss +101 -0
  66. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/utilities.elevation.scss +19 -0
  67. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/utilities.sizes.scss +25 -0
  68. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/utilities.visibility.scss +45 -0
  69. data/lib/activeadmin_blaze_theme.rb +3 -3
  70. data/lib/activeadmin_blaze_theme/version.rb +1 -1
  71. data/package.json +1 -1
  72. metadata +59 -206
  73. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.addresses.scss +0 -11
  74. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.alerts.scss +0 -78
  75. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.avatars.scss +0 -38
  76. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.back-to-top.scss +0 -17
  77. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.badges.scss +0 -71
  78. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.breadcrumbs.scss +0 -24
  79. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.buttons.scss +0 -91
  80. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.calendars.scss +0 -80
  81. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.cards.scss +0 -195
  82. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.divider.scss +0 -39
  83. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.file-upload.scss +0 -24
  84. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.github-buttons.scss +0 -131
  85. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.headings.scss +0 -12
  86. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.hints.scss +0 -21
  87. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.input-groups.scss +0 -164
  88. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.inputs.scss +0 -128
  89. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.links.scss +0 -72
  90. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.lists.scss +0 -64
  91. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.navs.scss +0 -83
  92. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.overlays.scss +0 -23
  93. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.pagination.scss +0 -31
  94. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.progress.scss +0 -83
  95. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.ranges.scss +0 -176
  96. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.tables.scss +0 -86
  97. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.tabs.scss +0 -68
  98. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.tags.scss +0 -39
  99. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.timelines.scss +0 -113
  100. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.toggles.scss +0 -89
  101. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_components.trees.scss +0 -48
  102. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_generics.global.scss +0 -17
  103. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_objects.containers.scss +0 -37
  104. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_objects.drawers.scss +0 -91
  105. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_objects.forms.scss +0 -25
  106. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_objects.modals.scss +0 -70
  107. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_utilities.boxing.scss +0 -111
  108. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_utilities.elevation.scss +0 -17
  109. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_utilities.radius.scss +0 -11
  110. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_utilities.sizes.scss +0 -23
  111. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_utilities.typography.scss +0 -160
  112. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_utilities.visibility.scss +0 -54
  113. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/_variables.scss +0 -93
  114. data/app/assets/stylesheets/activeadmin_blaze_theme/blaze/mixins/_utilities.states.scss +0 -7
@@ -0,0 +1,74 @@
1
+ @import "mixins/components.toggles";
2
+
3
+ .c-toggle {
4
+ @include grid;
5
+ @include grid--center;
6
+ width: auto;
7
+ cursor: pointer;
8
+ user-select: none;
9
+
10
+ input:not(:checked) + .c-toggle__track {
11
+ background-color: $toggle-track-unchecked-background-color;
12
+
13
+ .c-toggle__handle {
14
+ transform: translateZ(0);
15
+ }
16
+ }
17
+
18
+ input:disabled + .c-toggle__track {
19
+ background-color: $toggle-track-disabled-background-color;
20
+ cursor: not-allowed;
21
+
22
+ .c-toggle__handle {
23
+ background-color: $toggle-handle-disabled-background-color;
24
+ cursor: not-allowed;
25
+ }
26
+ }
27
+ }
28
+
29
+ .c-toggle--brand .c-toggle__track {
30
+ @include toggle__track--background-color($toggle-track-brand-background-color);
31
+ }
32
+
33
+ .c-toggle--info .c-toggle__track {
34
+ @include toggle__track--background-color($toggle-track-info-background-color);
35
+ }
36
+
37
+ .c-toggle--warning .c-toggle__track {
38
+ @include toggle__track--background-color($toggle-track-warning-background-color);
39
+ }
40
+
41
+ .c-toggle--success .c-toggle__track {
42
+ @include toggle__track--background-color($toggle-track-success-background-color);
43
+ }
44
+
45
+ .c-toggle--error .c-toggle__track {
46
+ @include toggle__track--background-color($toggle-track-error-background-color);
47
+ }
48
+
49
+ .c-toggle input {
50
+ display: none;
51
+ }
52
+
53
+ .c-toggle__track {
54
+ @include grid__cell;
55
+ @include grid__cell--width-fixed;
56
+ @include toggle__track--background-color;
57
+ position: relative;
58
+ width: 1em;
59
+ height: .5em;
60
+ margin: $toggle-margin;
61
+ border-radius: $toggle-track-border-radius;
62
+ }
63
+
64
+ .c-toggle__handle {
65
+ position: absolute;
66
+ top: -.25em;
67
+ left: 0;
68
+ width: 1em;
69
+ height: 1em;
70
+ transform: translateX(100%);
71
+ border-radius: $toggle-handle-border-radius;
72
+ background-color: $toggle-handle-background-color;
73
+ box-shadow: $toggle-handle-box-shadow;
74
+ }
@@ -1,47 +1,49 @@
1
+ @import "mixins/settings.global";
2
+
1
3
  .c-tooltip {
2
4
  position: relative;
3
5
  overflow: visible;
4
6
 
5
- &::before,
6
- &::after {
7
- z-index: var(--z-over-page);
7
+ &:before,
8
+ &:after {
8
9
  visibility: hidden;
10
+ z-index: $z-over-page;
9
11
  }
10
12
 
11
- &::before {
13
+ &:before {
12
14
  position: absolute;
13
- border: 0.6em solid transparent;
14
- content: '';
15
+ border: $tooltip-arrow-width solid transparent;
16
+ content: "";
15
17
  }
16
18
 
17
- &::after {
19
+ &:after {
18
20
  position: absolute;
19
- padding: 0.25em 0.5em;
20
- color: #fff;
21
- line-height: 1.45;
21
+ padding: .25em .5em;
22
+ border: $tooltip-body-border-width $tooltip-body-border-style $tooltip-body-border-color;
23
+ border-radius: $border-radius;
24
+ background-color: $tooltip-body-background-color;
25
+ color: $tooltip-body-color;
26
+ line-height: $tooltip-line-height;
22
27
  white-space: nowrap;
23
- background-color: #000;
24
- border: 1px solid #000;
25
- border-radius: var(--border-radius);
26
- visibility: hidden;
27
28
  content: attr(aria-label);
29
+ visibility: hidden;
28
30
  }
29
31
 
30
- &:hover::before,
31
- &:hover::after {
32
+ &:hover:before,
33
+ &:hover:after {
32
34
  visibility: visible;
33
35
  }
34
36
  }
35
37
 
36
38
  .c-tooltip--top {
37
- &::before {
39
+ &:before {
38
40
  top: 0%;
39
41
  left: 50%;
40
- border-top-color: #000;
41
42
  transform: translate(-50%, -1em);
43
+ border-top-color: $tooltip-body-border-color;
42
44
  }
43
45
 
44
- &::after {
46
+ &:after {
45
47
  top: 0%;
46
48
  left: 50%;
47
49
  transform: translate(-50%, -3em);
@@ -49,14 +51,14 @@
49
51
  }
50
52
 
51
53
  .c-tooltip--right {
52
- &::before {
54
+ &:before {
53
55
  top: 50%;
54
56
  left: 100%;
55
- border-right-color: #000;
56
57
  transform: translate(0, -50%);
58
+ border-right-color: $tooltip-body-border-color;
57
59
  }
58
60
 
59
- &::after {
61
+ &:after {
60
62
  top: 50%;
61
63
  left: 100%;
62
64
  transform: translate(1em, -50%);
@@ -64,14 +66,14 @@
64
66
  }
65
67
 
66
68
  .c-tooltip--bottom {
67
- &::before {
69
+ &:before {
68
70
  bottom: 0;
69
71
  left: 50%;
70
- border-bottom-color: #000;
71
72
  transform: translate(-50%, 1em);
73
+ border-bottom-color: $tooltip-body-border-color;
72
74
  }
73
75
 
74
- &::after {
76
+ &:after {
75
77
  bottom: 0;
76
78
  left: 50%;
77
79
  transform: translate(-50%, 3em);
@@ -79,14 +81,14 @@
79
81
  }
80
82
 
81
83
  .c-tooltip--left {
82
- &::before {
84
+ &:before {
83
85
  top: 50%;
84
86
  right: 100%;
85
- border-left-color: #000;
86
87
  transform: translate(0, -50%);
88
+ border-left-color: $tooltip-body-border-color;
87
89
  }
88
90
 
89
- &::after {
91
+ &:after {
90
92
  top: 50%;
91
93
  right: 100%;
92
94
  transform: translate(-1em, -50%);
@@ -0,0 +1,47 @@
1
+ @import "mixins/settings.global";
2
+
3
+ .c-tree {
4
+ display: block;
5
+ margin: $tree-margin;
6
+ padding: $tree-padding;
7
+ list-style: none;
8
+
9
+ .c-tree {
10
+ padding: $tree-nested-padding;
11
+ }
12
+ }
13
+
14
+ .c-tree__item {
15
+ padding: $tree-item-padding;
16
+
17
+ &:before {
18
+ display: inline-block;
19
+ padding: $tree-item-indicator-padding;
20
+ transform-origin: 30% 50%;
21
+ color: $tree-item-indicator-color;
22
+ content: "–";
23
+ }
24
+ }
25
+
26
+ .c-tree__item--expandable {
27
+ &:before {
28
+ color: $tree-item-expandable-indicator-color;
29
+ content: "\276F";
30
+ }
31
+
32
+ .c-tree {
33
+ display: none;
34
+ }
35
+ }
36
+
37
+ .c-tree__item--expanded {
38
+ &:before {
39
+ transform: rotate(90deg);
40
+ color: $tree-item-expanded-indicator-color;
41
+ content: "\276F";
42
+ }
43
+
44
+ .c-tree {
45
+ display: block;
46
+ }
47
+ }
@@ -0,0 +1,95 @@
1
+ @import "mixins/components.typography";
2
+
3
+ .c-text {
4
+ color: $text-color;
5
+ font-family: $text-font-family;
6
+ font-weight: $text-font-weight;
7
+ line-height: $text-line-height;
8
+ }
9
+
10
+ .c-text--mono {
11
+ font-family: $text-font-family-mono;
12
+ }
13
+
14
+ .c-text--highlight {
15
+ @include text--highlight;
16
+ }
17
+
18
+ .c-text--quiet {
19
+ color: $color-quiet;
20
+ }
21
+
22
+ .c-text--loud {
23
+ font-weight: $text-font-weight-heavy;
24
+ }
25
+
26
+ .c-text--help[title] {
27
+ border-bottom: $help-border-bottom;
28
+ cursor: help;
29
+ }
30
+
31
+ .c-pre {
32
+ margin: 0;
33
+ }
34
+
35
+ .c-code {
36
+ @include code;
37
+ }
38
+
39
+ .c-code--multiline {
40
+ display: block;
41
+ padding: $spacing-small $spacing-medium;
42
+ border-radius: $border-radius;
43
+ white-space: pre;
44
+ word-wrap: normal;
45
+ overflow-x: auto;
46
+ }
47
+
48
+ .c-kbd {
49
+ @include code($keyboard-color, $keyboard-background-color);
50
+ border-bottom: $keyboard-border;
51
+ border-radius: $keyboard-border-radius;
52
+ }
53
+
54
+ .c-blockquote {
55
+ @include quotation--color;
56
+ display: block;
57
+ margin: $quotation-margin;
58
+ padding: $quotation-padding;
59
+ font-family: $quotation-font-family;
60
+ }
61
+
62
+ .c-blockquote--brand {
63
+ @include quotation--color($quotation-brand-border-color);
64
+ }
65
+
66
+ .c-blockquote--info {
67
+ @include quotation--color($quotation-info-border-color);
68
+ }
69
+
70
+ .c-blockquote--warning {
71
+ @include quotation--color($quotation-warning-border-color);
72
+ }
73
+
74
+ .c-blockquote--success {
75
+ @include quotation--color($quotation-success-border-color);
76
+ }
77
+
78
+ .c-blockquote--error {
79
+ @include quotation--color($quotation-error-border-color);
80
+ }
81
+
82
+ .c-blockquote__body {
83
+ @include paragraph;
84
+ font-size: $quotation-font-size;
85
+ }
86
+
87
+ .c-blockquote__footer {
88
+ @include paragraph;
89
+ color: $quotation-footer-color;
90
+ font-style: $quotation-footer-font-style;
91
+ }
92
+
93
+ .c-paragraph {
94
+ @include paragraph;
95
+ }
@@ -0,0 +1,13 @@
1
+ html {
2
+ box-sizing: border-box;
3
+ }
4
+
5
+ *,
6
+ *:before,
7
+ *:after {
8
+ box-sizing: inherit;
9
+ }
10
+
11
+ body {
12
+ margin: 0;
13
+ }
@@ -0,0 +1,6 @@
1
+ @import "settings.global";
2
+
3
+ @mixin alert-color($background-color: $alert-background-color, $color: $alert-color) {
4
+ background-color: $background-color;
5
+ color: $color;
6
+ }
@@ -0,0 +1,8 @@
1
+ @import "settings.global";
2
+
3
+ // Frames and wells
4
+ @mixin badge($background-color, $color: $badge-color, $border-color: $color) {
5
+ border: $badge-border-width $badge-border-style $border-color;
6
+ background-color: $background-color;
7
+ color: $color;
8
+ }
@@ -1,122 +1,83 @@
1
- @import 'utilities.states';
1
+ @import "settings.global";
2
2
 
3
- @mixin button-color {
4
- color: var(--button-color);
5
- background-color: var(--button-background-color);
6
- border: 1px solid transparent;
3
+ @mixin button-color($background-color: $button-background-color, $color: $button-color) {
4
+ border: $button-border;
5
+ background-color: $background-color;
6
+ color: $color;
7
7
 
8
8
  &.c-button--active {
9
- filter: brightness(0.95);
9
+ background-color: darken($background-color, $color-tint);
10
10
  }
11
11
 
12
- &:not(:disabled):not([disabled]) {
13
- &:not(:active) {
14
- &:hover {
15
- filter: brightness(0.95);
16
- }
12
+ &:not(:disabled) {
13
+ &:hover {
14
+ background-color: lighten($background-color, $color-tint);
17
15
  }
18
16
 
19
17
  &:focus {
20
- border-color: var(--border-color-focus);
21
- box-shadow: var(--box-shadow-focus);
18
+ border-color: $button-focus-border-color;
19
+ box-shadow: $button-focus-box-shadow;
22
20
  }
23
21
 
24
22
  &:active {
25
- filter: brightness(0.9);
23
+ background-color: darken($background-color, $color-tint);
26
24
  }
27
25
  }
28
26
  }
29
27
 
30
- @mixin button-ghost {
31
- --button-background-color: transparent;
32
-
33
- border: 1px solid var(--button-color);
28
+ @mixin button-ghost($color: $button-ghost-color, $color-hover: $button-ghost-hover-color) {
29
+ border: $button-ghost-border-width $button-ghost-border-style $color;
30
+ background-color: transparent;
31
+ color: $color;
34
32
 
35
33
  &.c-button--active {
36
- color: #fff;
37
- background-color: var(--button-color);
38
- border-color: 1px solid transparent;
34
+ border-color: darken($color, $color-tint);
35
+ background-color: darken($color, $color-tint);
36
+ color: $color-hover;
39
37
  }
40
38
 
41
- &:not(:disabled):not([disabled]) {
42
- &:not(:active) {
43
- &:hover {
44
- color: #fff;
45
- background-color: var(--button-color);
46
- border-color: 1px solid transparent;
47
- }
39
+ &:not(:disabled) {
40
+ &:hover {
41
+ background-color: $color;
42
+ color: $color-hover;
48
43
  }
49
44
 
50
45
  &:focus {
51
- border-color: var(--border-color-focus);
52
- box-shadow: var(--box-shadow-focus);
46
+ border-color: $button-focus-border-color;
47
+ box-shadow: $button-focus-box-shadow;
53
48
  }
54
49
 
55
- &:active,
56
- &[aria-current] {
57
- color: #fff;
58
- background-color: var(--button-color);
59
- border-color: 1px solid transparent;
50
+ &:active {
51
+ border-color: darken($color, $color-tint);
52
+ background-color: darken($color, $color-tint);
53
+ color: $color-hover;
60
54
  }
61
55
  }
62
56
  }
63
57
 
64
58
  @mixin button {
65
59
  @include button-color;
66
- @include disabled;
67
60
  display: inline-block;
68
61
  max-width: 100%;
69
- margin: 0;
70
- padding: var(--spacing-small);
71
- overflow: hidden;
72
- font-size: 1em;
73
- font-family: inherit;
74
- line-height: normal;
75
- white-space: nowrap;
76
- text-align: center;
62
+ margin: $button-margin;
63
+ padding: $button-padding;
64
+ border-radius: $button-border-radius;
65
+ outline: 0;
66
+ font-family: $button-font-family;
67
+ font-size: $button-font-size;
68
+ line-height: $button-line-height;
69
+ text-align: $button-text-align;
77
70
  text-decoration: none;
78
71
  text-overflow: ellipsis;
72
+ white-space: $button-white-space;
73
+ cursor: pointer;
74
+ overflow: hidden;
79
75
  vertical-align: middle;
80
- border-radius: var(--border-radius);
81
- outline: 0;
82
- -webkit-appearance: none;
83
76
  appearance: none;
84
77
  user-select: none;
85
- }
86
78
 
87
- @mixin button-nude {
88
- @include disabled;
89
- width: auto;
90
- margin: 0;
91
- padding: 0;
92
- overflow: visible;
93
- color: inherit;
94
- font: inherit;
95
- line-height: normal;
96
- text-align: inherit;
97
- text-decoration: inherit;
98
- vertical-align: inherit;
99
- background: inherit;
100
- border: 0;
101
- border-radius: 0;
102
- outline: 0;
103
- -webkit-appearance: none;
104
- appearance: none;
105
-
106
- &:not(:disabled):not([disabled]) {
107
- &:active {
108
- background-color: transparent;
109
- }
110
-
111
- &:not(:active) {
112
- &:focus {
113
- border-color: var(--border-color-focus);
114
- box-shadow: var(--box-shadow-focus);
115
- }
116
-
117
- &:hover {
118
- background-color: transparent;
119
- }
120
- }
79
+ &:disabled {
80
+ cursor: not-allowed;
81
+ opacity: $button-disabled-opacity;
121
82
  }
122
83
  }