@primer/css 0.0.0-202110901751 → 0.0.0-202110945521

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.
@@ -1,4 +1,29 @@
1
+ // Temp variables (awaiting primitives update)
2
+ :root {
3
+ --color-bg-button-default: #1b1f23;
4
+ --shadow-button-border-mktg: rgb(0 0 0 / 15%) 0 0 0 1px inset;
5
+ --shadow-button-focus-mktg: rgb(0 0 0 / 15%) 0 0 0 4px;
6
+ // stylelint-disable-next-line declaration-colon-newline-after
7
+ --shadow-button-hover-mktg: 0 3px 2px rgba(0, 0, 0, 0.07), 0 7px 5px rgba(0, 0, 0, 0.04),
8
+ 0 12px 10px rgba(0, 0, 0, 0.03), 0 22px 18px rgba(0, 0, 0, 0.03), 0 42px 33px rgba(0, 0, 0, 0.02),
9
+ 0 100px 80px rgba(0, 0, 0, 0.02);
10
+ --shadow-button-hover-muted-mktg: rgb(0 0 0 / 70%) 0 0 0 2px inset;
11
+
12
+ [data-color-mode="dark"] {
13
+ --color-bg-button-default: #f6f8fa;
14
+ --shadow-button-border-mktg: rgb(255 255 255 / 25%) 0 0 0 1px inset;
15
+ --shadow-button-focus-mktg: rgb(255 255 255 / 25%) 0 0 0 4px;
16
+ // stylelint-disable-next-line declaration-colon-newline-after
17
+ --shadow-button-hover-mktg: 0 4px 7px rgba(0, 0, 0, 0.15), 0 100px 80px rgba(255, 255, 255, 0.02),
18
+ 0 42px 33px rgba(255, 255, 255, 0.024), 0 22px 18px rgba(255, 255, 255, 0.028),
19
+ 0 12px 10px rgba(255, 255, 255, 0.034), 0 7px 5px rgba(255, 255, 255, 0.04), 0 3px 2px rgba(255, 255, 255, 0.07);
20
+ --shadow-button-hover-muted-mktg: var(--color-fg-default) 0 0 0 2px inset;
21
+ }
22
+ }
23
+ // End of temp variables
24
+
1
25
  .btn-mktg {
26
+ color: var(--color-canvas-default);
2
27
  position: relative;
3
28
  z-index: 1;
4
29
  display: inline-block;
@@ -9,23 +34,18 @@
9
34
  font-size: 1rem;
10
35
  font-weight: $font-weight-bold;
11
36
  line-height: 1;
37
+ text-align: center;
12
38
  white-space: nowrap;
13
39
  vertical-align: middle;
14
40
  user-select: none;
15
41
  border: 0;
16
42
  // stylelint-disable-next-line primer/borders
17
43
  border-radius: 0.375rem;
18
-
19
- @include btn-solid-mktg(
20
- var(--color-mktg-btn-text),
21
- var(--color-mktg-btn-bg-top),
22
- var(--color-mktg-btn-bg-bottom),
23
- var(--color-mktg-btn-bg-overlay-top),
24
- var(--color-mktg-btn-bg-overlay-bottom),
25
- );
44
+ background: linear-gradient(180deg, rgba(255 255 255 / 0.15) 0%, rgba(255 255 255 / 0) 100%),
45
+ var(--color-bg-button-default) !important;
46
+ transition: box-shadow 0.2s;
26
47
 
27
48
  &::before {
28
- background-blend-mode: overlay, normal;
29
49
  position: absolute;
30
50
  top: 0;
31
51
  right: 0;
@@ -34,63 +54,103 @@
34
54
  z-index: -1;
35
55
  content: "";
36
56
  // stylelint-disable-next-line primer/borders
37
- border-radius: 0.375rem;
57
+ border-radius: inherit;
58
+ opacity: 0;
59
+ background: linear-gradient(180deg, rgba(255 255 255 / 0.15) 0%, rgba(255 255 255 / 0) 100%) !important;
38
60
  opacity: 0;
39
- transition: opacity 0.4s;
61
+ transition: opacity 0.2s;
62
+ background-blend-mode: normal;
40
63
  }
41
64
 
42
65
  &:hover {
43
- text-decoration: none;
66
+ box-shadow: var(--shadow-button-hover-mktg) !important;
67
+ }
68
+
69
+ &:focus,
70
+ &.focus {
71
+ box-shadow: var(--shadow-button-focus-mktg), var(--shadow-button-hover-mktg) !important;
72
+ outline: 0;
73
+ }
44
74
 
75
+ &:hover,
76
+ &:focus,
77
+ &.focus {
45
78
  &::before {
46
79
  opacity: 1;
47
- transition: opacity 0.4s;
80
+ }
81
+
82
+ &:disabled {
83
+ box-shadow: none !important;
48
84
  }
49
85
  }
50
- }
51
86
 
52
- .btn-primary-mktg {
53
- @include btn-solid-mktg(
54
- var(--color-mktg-btn-primary-text),
55
- var(--color-mktg-btn-primary-bg-top),
56
- var(--color-mktg-btn-primary-bg-bottom),
57
- var(--color-mktg-btn-primary-bg-overlay-top),
58
- var(--color-mktg-btn-primary-bg-overlay-bottom),
59
- );
87
+ &:active {
88
+ outline: none;
89
+ box-shadow: 0 0 0 transparent;
90
+
91
+ &::before {
92
+ opacity: 0.5 !important;
93
+ }
94
+ }
60
95
  }
61
96
 
62
- .btn-enterprise-mktg {
63
- @include btn-solid-mktg(
64
- var(--color-mktg-btn-enterprise-text),
65
- var(--color-mktg-btn-enterprise-bg-top),
66
- var(--color-mktg-btn-enterprise-bg-bottom),
67
- var(--color-mktg-btn-enterprise-bg-overlay-top),
68
- var(--color-mktg-btn-enterprise-bg-overlay-bottom),
69
- );
97
+ .btn-muted-mktg {
98
+ color: var(--color-fg-default) !important;
99
+ background: none !important;
100
+ box-shadow: var(--shadow-button-border-mktg);
101
+
102
+ &::before {
103
+ display: none;
104
+ }
105
+
106
+ &:hover {
107
+ box-shadow: var(--shadow-button-hover-muted-mktg) !important;
108
+ }
109
+
110
+ &:focus,
111
+ &.focus {
112
+ box-shadow: var(--shadow-button-hover-muted-mktg), var(--shadow-button-focus-mktg) !important;
113
+ }
114
+
115
+ &:active {
116
+ box-shadow: var(--color-fg-default) 0 0 0 3px inset !important;
117
+ }
118
+
119
+ &:disabled {
120
+ box-shadow: var(--color-fg-subtle) 0 0 0 1px inset !important;
121
+ }
70
122
  }
71
123
 
72
- .btn-outline-mktg {
73
- @include btn-outline-mktg(
74
- var(--color-mktg-btn-outline-text),
75
- var(--color-mktg-btn-outline-hover-text),
76
- var(--color-mktg-btn-outline-border),
77
- var(--color-mktg-btn-outline-hover-border),
78
- var(--color-mktg-btn-outline-focus-border),
79
- var(--color-mktg-btn-outline-focus-border-inset)
80
- );
81
- transition: box-shadow 0.4s, color 0.4s;
124
+ .btn-subtle-mktg {
125
+ color: var(--color-fg-default) !important;
126
+ background: none !important;
127
+ box-shadow: none !important;
128
+
129
+ &::before {
130
+ background: none !important;
131
+ }
132
+
133
+ &:hover {
134
+ box-shadow: var(--shadow-button-hover-muted-mktg) !important;
135
+ }
136
+
137
+ &:focus,
138
+ .focus {
139
+ box-shadow: var(--shadow-button-hover-muted-mktg), var(--shadow-button-focus-mktg) !important;
140
+ }
82
141
  }
83
142
 
84
- .btn-transparent {
85
- @include btn-outline-mktg(
86
- var(--color-mktg-btn-dark-text),
87
- var(--color-mktg-btn-dark-hover-text),
88
- var(--color-mktg-btn-dark-border),
89
- var(--color-mktg-btn-dark-hover-border),
90
- var(--color-mktg-btn-dark-focus-border),
91
- var(--color-mktg-btn-dark-focus-border-inset)
92
- );
93
- transition: box-shadow 0.4s, color 0.4s;
143
+ .btn-signup-mktg {
144
+ color: #fff;
145
+ background: linear-gradient(180deg, rgba(52, 183, 89, 0.15) 0%, rgba(46, 164, 79, 0) 100%), rgb(46, 164, 79) !important;
146
+
147
+ &::before {
148
+ background: linear-gradient(180deg, rgba(52, 183, 89, 0.15) 0%, rgba(46, 164, 79, 0) 100%) !important;
149
+ }
150
+
151
+ &:focus {
152
+ box-shadow: rgba(46, 164, 79, 0.45) 0 0 0 4px !important;
153
+ }
94
154
  }
95
155
 
96
156
  // Size modifiers
@@ -1,3 +1,2 @@
1
1
  @import "../../support/index.scss";
2
- @import "./mixins.scss";
3
2
  @import "./variables.scss";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@primer/css",
3
- "version": "0.0.0-202110901751",
3
+ "version": "0.0.0-202110945521",
4
4
  "description": "The CSS implementation of GitHub's Primer Design System",
5
5
  "homepage": "https://primer.style/css",
6
6
  "author": "GitHub, Inc.",
@@ -1,66 +0,0 @@
1
- @mixin btn-solid-mktg($color, $bg, $bg2, $bg3, $bg4) {
2
- color: $color;
3
- background-color: $bg2;
4
- background-image: linear-gradient(-180deg, $bg 0%, $bg2 100%);
5
-
6
- &::before {
7
- background-image: linear-gradient(-180deg, $bg3 0%, $bg4 100%);
8
- }
9
-
10
- &:hover,
11
- &.hover,
12
- &:active,
13
- &.selected,
14
- &[aria-selected=true],
15
- [open] > & {
16
- background-color: $bg2;
17
- background-image: linear-gradient(-180deg, $bg 0%, $bg2 100%);
18
- }
19
-
20
- &:focus,
21
- &.focus {
22
- outline: 0;
23
- box-shadow: 0 0 0 0.2em rgba($bg2, 0.4);
24
- }
25
-
26
- &:disabled,
27
- &.disabled,
28
- &[aria-disabled=true] {
29
- pointer-events: none;
30
- cursor: default;
31
- opacity: 0.5;
32
- }
33
- }
34
-
35
- @mixin btn-outline-mktg($color, $color2, $border, $borderHover, $borderFocus, $borderFocusInset) {
36
- color: $color;
37
- background: none;
38
- box-shadow: 0 0 0 1px $border inset;
39
-
40
- &::before {
41
- display: none;
42
- }
43
-
44
- &:hover,
45
- &.hover,
46
- &:active,
47
- &.selected,
48
- &[aria-selected=true],
49
- [open] > & {
50
- color: $color2;
51
- background: none;
52
- box-shadow: 0 0 0 2px $borderHover inset;
53
- }
54
-
55
- &:focus,
56
- &.focus {
57
- outline: 0;
58
- box-shadow: 0 0 0 2px $borderFocus inset, 0 0 0 4px $borderFocusInset;
59
- }
60
-
61
- &:disabled,
62
- &.disabled,
63
- &[aria-disabled=true] {
64
- opacity: 0.5;
65
- }
66
- }