@primer/css 20.8.0-rc.fe3706b6 → 20.8.1-rc.5118418f

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 (100) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/alerts/flash.scss +1 -155
  3. package/autocomplete/autocomplete.scss +1 -118
  4. package/avatars/avatar-stack.scss +1 -149
  5. package/avatars/avatar.scss +1 -48
  6. package/base/normalize.scss +1 -1
  7. package/blankslate/blankslate.scss +1 -0
  8. package/blankslate/index.scss +2 -1
  9. package/box/box.scss +1 -289
  10. package/breadcrumb/breadcrumb.scss +1 -33
  11. package/dist/alerts.css +1 -1
  12. package/dist/alerts.css.map +1 -1
  13. package/dist/autocomplete.css +1 -1
  14. package/dist/autocomplete.css.map +1 -1
  15. package/dist/avatars.css +1 -1
  16. package/dist/avatars.css.map +1 -1
  17. package/dist/base.css +1 -1
  18. package/dist/base.css.map +1 -1
  19. package/dist/blankslate.css.map +1 -1
  20. package/dist/box.css +1 -1
  21. package/dist/box.css.map +1 -1
  22. package/dist/breadcrumb.css +1 -1
  23. package/dist/breadcrumb.css.map +1 -1
  24. package/dist/core.css +1 -1
  25. package/dist/core.css.map +1 -1
  26. package/dist/dropdown.css +1 -1
  27. package/dist/dropdown.css.map +1 -1
  28. package/dist/forms.css +1 -1
  29. package/dist/forms.css.map +1 -1
  30. package/dist/labels.css +1 -1
  31. package/dist/labels.css.map +1 -1
  32. package/dist/layout.css +1 -1
  33. package/dist/layout.css.map +1 -1
  34. package/dist/links.css +1 -1
  35. package/dist/links.css.map +1 -1
  36. package/dist/meta.json +219 -219
  37. package/dist/navigation.css +1 -1
  38. package/dist/navigation.css.map +1 -1
  39. package/dist/overlay.css +1 -1
  40. package/dist/overlay.css.map +1 -1
  41. package/dist/popover.css +1 -1
  42. package/dist/popover.css.map +1 -1
  43. package/dist/primer.css +2 -2
  44. package/dist/primer.css.map +1 -1
  45. package/dist/product.css +1 -1
  46. package/dist/product.css.map +1 -1
  47. package/dist/progress.css +1 -1
  48. package/dist/progress.css.map +1 -1
  49. package/dist/stats/alerts.json +1 -1
  50. package/dist/stats/autocomplete.json +1 -1
  51. package/dist/stats/avatars.json +1 -1
  52. package/dist/stats/base.json +1 -1
  53. package/dist/stats/box.json +1 -1
  54. package/dist/stats/breadcrumb.json +1 -1
  55. package/dist/stats/core.json +1 -1
  56. package/dist/stats/dropdown.json +1 -1
  57. package/dist/stats/forms.json +1 -1
  58. package/dist/stats/labels.json +1 -1
  59. package/dist/stats/layout.json +1 -1
  60. package/dist/stats/links.json +1 -1
  61. package/dist/stats/navigation.json +1 -1
  62. package/dist/stats/overlay.json +1 -1
  63. package/dist/stats/popover.json +1 -1
  64. package/dist/stats/primer.json +1 -1
  65. package/dist/stats/product.json +1 -1
  66. package/dist/stats/progress.json +1 -1
  67. package/dist/stats/subhead.json +1 -1
  68. package/dist/stats/timeline.json +1 -1
  69. package/dist/stats/toggle-switch.json +1 -1
  70. package/dist/stats/truncate.json +1 -1
  71. package/dist/subhead.css +1 -1
  72. package/dist/subhead.css.map +1 -1
  73. package/dist/timeline.css +1 -1
  74. package/dist/timeline.css.map +1 -1
  75. package/dist/toggle-switch.css +1 -1
  76. package/dist/toggle-switch.css.map +1 -1
  77. package/dist/truncate.css +1 -1
  78. package/dist/truncate.css.map +1 -1
  79. package/dropdown/dropdown.scss +1 -270
  80. package/forms/FormControl.scss +1 -677
  81. package/labels/counters.scss +1 -36
  82. package/labels/labels.scss +1 -92
  83. package/labels/states.scss +1 -56
  84. package/layout/index.scss +0 -1
  85. package/layout/layout.scss +1 -182
  86. package/layout/page-layout.scss +26 -0
  87. package/links/link.scss +1 -60
  88. package/navigation/menu.scss +1 -119
  89. package/navigation/tabnav.scss +1 -104
  90. package/navigation/underline-nav.scss +1 -136
  91. package/overlay/overlay.scss +1 -485
  92. package/package.json +2 -2
  93. package/popover/popover.scss +1 -226
  94. package/primitives/index.scss +9 -9
  95. package/progress/progress.scss +1 -27
  96. package/subhead/subhead.scss +1 -48
  97. package/timeline/timeline-item.scss +1 -94
  98. package/toggle-switch/toggle-switch.scss +1 -243
  99. package/truncate/truncate.scss +2 -61
  100. package/layout/mixins.scss +0 -105
@@ -1,92 +1 @@
1
- // Labels
2
-
3
- // Provide a wrapper to ensure labels stick together
4
- .labels {
5
- position: relative;
6
- }
7
-
8
- // Default label
9
-
10
- .label, // TODO: Deprecate
11
- .Label {
12
- @include labels-base;
13
-
14
- border-color: var(--color-border-default);
15
-
16
- &:hover {
17
- text-decoration: none;
18
- }
19
- }
20
-
21
- // Large
22
-
23
- .Label--large {
24
- @include labels-large;
25
- }
26
-
27
- // Inline
28
-
29
- .Label--inline {
30
- @include labels--inline;
31
- }
32
-
33
- // Contrast
34
-
35
- .Label--primary {
36
- color: var(--color-fg-default);
37
- border-color: var(--color-neutral-emphasis);
38
- }
39
-
40
- .Label--secondary {
41
- color: var(--color-fg-muted);
42
- border-color: var(--color-border-default);
43
- }
44
-
45
- // Colors
46
-
47
- .Label--info, // TODO: deprecate
48
- .Label--accent {
49
- color: var(--color-accent-fg);
50
- border-color: var(--color-accent-emphasis);
51
- }
52
-
53
- .Label--success {
54
- color: var(--color-success-fg);
55
- border-color: var(--color-success-emphasis);
56
- }
57
-
58
- .Label--warning, // TODO: deprecate
59
- .Label--attention {
60
- color: var(--color-attention-fg);
61
- border-color: var(--color-attention-emphasis);
62
- }
63
-
64
- .Label--severe {
65
- color: var(--color-severe-fg);
66
- border-color: var(--color-severe-emphasis);
67
- }
68
-
69
- .Label--danger {
70
- color: var(--color-danger-fg);
71
- border-color: var(--color-danger-emphasis);
72
- }
73
-
74
- .Label--open {
75
- color: var(--color-open-fg);
76
- border-color: var(--color-open-emphasis);
77
- }
78
-
79
- .Label--closed {
80
- color: var(--color-closed-fg);
81
- border-color: var(--color-closed-emphasis);
82
- }
83
-
84
- .Label--done {
85
- color: var(--color-done-fg);
86
- border-color: var(--color-done-emphasis);
87
- }
88
-
89
- .Label--sponsors {
90
- color: var(--color-sponsors-fg);
91
- border-color: var(--color-sponsors-emphasis);
92
- }
1
+ @import '@primer/view-components/app/components/primer/beta/label';
@@ -1,56 +1 @@
1
- // A rounded corner box containing a label "open" or "closed"
2
-
3
- // Default 32px
4
- // Small 24px
5
-
6
- .state, // TODO: Deprecate
7
- .State {
8
- display: inline-block;
9
- // stylelint-disable-next-line primer/spacing
10
- padding: 5px 12px;
11
- font-size: $body-font-size;
12
- font-weight: $font-weight-semibold;
13
- // stylelint-disable-next-line primer/typography
14
- line-height: 20px;
15
- text-align: center;
16
- white-space: nowrap;
17
- // stylelint-disable-next-line primer/borders
18
- border-radius: 2em;
19
- }
20
-
21
- .state, // TODO: Deprecate
22
- .State,
23
- .State--draft {
24
- color: var(--color-fg-on-emphasis);
25
- background-color: var(--color-neutral-emphasis);
26
- border: $border-width $border-style transparent;
27
- }
28
-
29
- .State--open {
30
- color: var(--color-fg-on-emphasis);
31
- background-color: var(--color-open-emphasis);
32
- }
33
-
34
- .State--merged {
35
- color: var(--color-fg-on-emphasis);
36
- background-color: var(--color-done-emphasis);
37
- }
38
-
39
- .State--closed {
40
- color: var(--color-fg-on-emphasis);
41
- background-color: var(--color-closed-emphasis);
42
- }
43
-
44
- // Small
45
-
46
- .State--small {
47
- // stylelint-disable-next-line primer/spacing
48
- padding: 0 10px;
49
- font-size: $font-size-small;
50
- // stylelint-disable-next-line primer/typography
51
- line-height: $size-3;
52
-
53
- .octicon {
54
- width: 1em; // Ensures different icons don't change State indicator width
55
- }
56
- }
1
+ @import '@primer/view-components/app/components/primer/beta/state';
package/layout/index.scss CHANGED
@@ -1,6 +1,5 @@
1
1
  @import '../support/index.scss';
2
2
  @import './app-frame.scss';
3
- @import './mixins.scss';
4
3
  @import './container.scss';
5
4
  @import './grid.scss';
6
5
  @import './grid-offset.scss';
@@ -1,182 +1 @@
1
- // Layout component
2
-
3
- .Layout {
4
- display: grid;
5
-
6
- --Layout-sidebar-width: #{map-get($sidebar-width, 'sm')};
7
- --Layout-gutter: 16px;
8
-
9
- @media (max-width: calc(#{$width-sm} - 0.02px)) {
10
- @include flow-as-row;
11
- }
12
-
13
- &.Layout--flowRow-until-md {
14
- @media (max-width: calc(#{$width-md} - 0.02px)) {
15
- @include flow-as-row;
16
- }
17
- }
18
-
19
- &.Layout--flowRow-until-lg {
20
- @media (max-width: calc(#{$width-lg} - 0.02px)) {
21
- @include flow-as-row;
22
- }
23
- }
24
-
25
- // Flow as column
26
-
27
- grid-auto-flow: column;
28
- grid-template-columns: auto 0 minmax(0, calc(100% - var(--Layout-sidebar-width) - var(--Layout-gutter))); // sidebar column, separator, main column
29
- grid-gap: var(--Layout-gutter);
30
-
31
- .Layout-sidebar {
32
- grid-column: 1;
33
- }
34
-
35
- .Layout-divider {
36
- display: none;
37
- }
38
-
39
- .Layout-main {
40
- grid-column: 2 / span 2;
41
- }
42
-
43
- // Gutter spacing
44
-
45
- @include breakpoint(lg) {
46
- --Layout-gutter: 24px;
47
- }
48
-
49
- &.Layout--gutter-none {
50
- // stylelint-disable-next-line length-zero-no-unit
51
- --Layout-gutter: 0px;
52
- }
53
-
54
- &.Layout--gutter-condensed {
55
- --Layout-gutter: 16px;
56
- }
57
-
58
- &.Layout--gutter-spacious {
59
- @include breakpoint(lg) {
60
- --Layout-gutter: 32px;
61
- }
62
-
63
- @include breakpoint(xl) {
64
- --Layout-gutter: 40px;
65
- }
66
- }
67
-
68
- // Sidebar width
69
-
70
- @each $breakpoint in map-keys($sidebar-width) {
71
- @include breakpoint($breakpoint) {
72
- --Layout-sidebar-width: #{map-get($sidebar-width, $breakpoint)};
73
- }
74
- }
75
-
76
- &.Layout--sidebar-narrow {
77
- @each $breakpoint in map-keys($sidebar-narrow-width) {
78
- @include breakpoint($breakpoint) {
79
- --Layout-sidebar-width: #{map-get($sidebar-narrow-width, $breakpoint)};
80
- }
81
- }
82
- }
83
-
84
- &.Layout--sidebar-wide {
85
- @each $breakpoint in map-keys($sidebar-wide-width) {
86
- @include breakpoint($breakpoint) {
87
- --Layout-sidebar-width: #{map-get($sidebar-wide-width, $breakpoint)};
88
- }
89
- }
90
- }
91
-
92
- // Sidebar position
93
-
94
- &.Layout--sidebarPosition-start {
95
- .Layout-sidebar {
96
- grid-column: 1;
97
- }
98
-
99
- .Layout-main {
100
- grid-column: 2 / span 2;
101
- }
102
- }
103
-
104
- &.Layout--sidebarPosition-end {
105
- grid-template-columns: minmax(0, calc(100% - var(--Layout-sidebar-width) - var(--Layout-gutter))) 0 auto;
106
-
107
- .Layout-main {
108
- grid-column: 1;
109
- }
110
-
111
- .Layout-sidebar {
112
- grid-column: 2 / span 2;
113
- }
114
- }
115
-
116
- // Sidebar divider
117
-
118
- &.Layout--divided {
119
- .Layout-divider {
120
- display: block;
121
- grid-column: 2;
122
- width: 1px;
123
- // stylelint-disable-next-line primer/spacing
124
- margin-right: -1px;
125
- background: var(--color-border-default);
126
- }
127
-
128
- .Layout-main {
129
- grid-column: 3 / span 1;
130
- }
131
-
132
- &.Layout--sidebarPosition-end {
133
- .Layout-sidebar {
134
- grid-column: 3 / span 1;
135
- }
136
-
137
- .Layout-main {
138
- grid-column: 1;
139
- }
140
- }
141
- }
142
- }
143
-
144
- .Layout-divider {
145
- display: none;
146
- width: 1px;
147
- }
148
-
149
- .Layout-sidebar {
150
- width: var(--Layout-sidebar-width);
151
- }
152
-
153
- .Layout-main {
154
- min-width: 0;
155
-
156
- // Centered main column
157
- // FIXME: right-aligned sidebar
158
- .Layout-main-centered-md,
159
- .Layout-main-centered-lg,
160
- .Layout-main-centered-xl {
161
- margin-right: auto;
162
- margin-left: auto;
163
-
164
- > .container-md,
165
- > .container-lg,
166
- > .container-xl {
167
- margin-left: 0;
168
- }
169
- }
170
-
171
- .Layout-main-centered-md {
172
- max-width: calc(#{$container-md} + var(--Layout-sidebar-width) + var(--Layout-gutter));
173
- }
174
-
175
- .Layout-main-centered-lg {
176
- max-width: calc(#{$container-lg} + var(--Layout-sidebar-width) + var(--Layout-gutter));
177
- }
178
-
179
- .Layout-main-centered-xl {
180
- max-width: calc(#{$container-xl} + var(--Layout-sidebar-width) + var(--Layout-gutter));
181
- }
182
- }
1
+ @import '@primer/view-components/app/components/primer/alpha/layout';
@@ -22,6 +22,32 @@ $Layout-responsive-variant-max-breakpoint: 'md' !default;
22
22
  // stylelint-enable length-zero-no-unit
23
23
  }
24
24
 
25
+ // Layout beta mixins
26
+
27
+ // responsive region dividers
28
+
29
+ @mixin Layout-line-divider {
30
+ position: absolute;
31
+ left: calc(var(--Layout-outer-spacing-x) * -1);
32
+ display: block;
33
+ width: calc(100% + (var(--Layout-outer-spacing-x) * 2));
34
+ height: 1px;
35
+ content: '';
36
+ background-color: $Layout-divider-color;
37
+ }
38
+
39
+ @mixin Layout-filled-divider {
40
+ position: absolute;
41
+ bottom: calc(#{$spacer-2} * -1); // -8px
42
+ left: calc(var(--Layout-outer-spacing-x) * -1);
43
+ display: block;
44
+ width: calc(100% + (var(--Layout-outer-spacing-x) * 2));
45
+ height: #{$spacer-2}; // 8px
46
+ content: '';
47
+ background-color: var(--color-canvas-inset);
48
+ box-shadow: inset 0 1px $Layout-divider-color, inset 0 -1px $Layout-divider-color;
49
+ }
50
+
25
51
  .PageLayout {
26
52
  display: block;
27
53
  // stylelint-disable-next-line primer/spacing
package/links/link.scss CHANGED
@@ -1,60 +1 @@
1
- // Links
2
-
3
- .Link {
4
- color: var(--color-accent-fg);
5
-
6
- &:hover {
7
- text-decoration: underline;
8
- cursor: pointer;
9
- }
10
-
11
- &:focus,
12
- &:focus-visible {
13
- outline-offset: 0;
14
- }
15
- }
16
-
17
- .Link--primary {
18
- color: var(--color-fg-default) !important;
19
-
20
- &:hover {
21
- color: var(--color-accent-fg) !important;
22
- }
23
- }
24
-
25
- .Link--secondary {
26
- color: var(--color-fg-muted) !important;
27
-
28
- &:hover {
29
- color: var(--color-accent-fg) !important;
30
- }
31
- }
32
-
33
- .Link--muted {
34
- color: var(--color-fg-muted) !important;
35
-
36
- &:hover {
37
- color: var(--color-accent-fg) !important;
38
- text-decoration: none;
39
- }
40
- }
41
-
42
- // Set the link color only on hover
43
- // Useful when you want only part of a link to turn blue on hover
44
- .Link--onHover {
45
- &:hover {
46
- color: var(--color-accent-fg) !important;
47
- text-decoration: underline;
48
- cursor: pointer;
49
- }
50
- }
51
-
52
- // When using a color utility class inside of a link class,
53
- // color should change with link on hover.
54
- .Link--secondary,
55
- .Link--primary,
56
- .Link--muted {
57
- &:hover [class*='color-fg'] {
58
- color: inherit !important;
59
- }
60
- }
1
+ @import '@primer/view-components/app/components/primer/beta/link';
@@ -1,119 +1 @@
1
- // Side menu
2
- //
3
- // A menu on the side of a page, defaults to left side. e.g. github.com/about
4
-
5
- .menu {
6
- margin-bottom: $spacer-3;
7
- list-style: none;
8
- background-color: var(--color-canvas-default);
9
- border: $border-width $border-style var(--color-border-default);
10
- border-radius: $border-radius;
11
- }
12
-
13
- .menu-item {
14
- position: relative;
15
- display: block;
16
- padding: $spacer-2 $spacer-3;
17
- color: var(--color-fg-default);
18
- border-bottom: $border-width $border-style var(--color-border-muted);
19
-
20
- &:first-child {
21
- border-top: 0;
22
- border-top-left-radius: $border-radius;
23
- border-top-right-radius: $border-radius;
24
-
25
- &::before {
26
- border-top-left-radius: $border-radius;
27
- }
28
- }
29
-
30
- &:last-child {
31
- border-bottom: 0;
32
- border-bottom-right-radius: $border-radius;
33
- border-bottom-left-radius: $border-radius;
34
-
35
- &::before {
36
- border-bottom-left-radius: $border-radius;
37
- }
38
- }
39
-
40
- &:hover {
41
- text-decoration: none;
42
- background-color: var(--color-neutral-subtle);
43
- }
44
-
45
- &:active {
46
- background-color: var(--color-canvas-subtle);
47
- }
48
-
49
- &.selected,
50
- &[aria-selected='true'],
51
- &[aria-current]:not([aria-current='false']) {
52
- cursor: default;
53
- background-color: var(--color-menu-bg-active);
54
-
55
- &::before {
56
- position: absolute;
57
- top: 0;
58
- bottom: 0;
59
- left: 0;
60
- width: 2px;
61
- content: '';
62
- background-color: var(--color-primer-border-active);
63
- }
64
- }
65
-
66
- .octicon {
67
- width: 16px;
68
- margin-right: $spacer-2;
69
- color: var(--color-fg-muted);
70
- text-align: center;
71
- }
72
-
73
- .Counter {
74
- float: right;
75
- margin-left: $spacer-1;
76
- }
77
-
78
- .menu-warning {
79
- float: right;
80
- color: var(--color-attention-fg);
81
- }
82
-
83
- .avatar {
84
- float: left;
85
- margin-right: $spacer-1;
86
- }
87
-
88
- &.alert {
89
- .Counter {
90
- color: var(--color-danger-fg);
91
- }
92
- }
93
- }
94
-
95
- .menu-heading {
96
- display: block;
97
- padding: $spacer-2 $spacer-3;
98
- margin-top: 0;
99
- margin-bottom: 0;
100
- font-size: inherit;
101
- font-weight: $font-weight-bold;
102
- color: var(--color-fg-default);
103
- border-bottom: $border-width $border-style var(--color-border-muted);
104
-
105
- &:hover {
106
- text-decoration: none;
107
- }
108
-
109
- &:first-child {
110
- border-top-left-radius: $border-radius;
111
- border-top-right-radius: $border-radius;
112
- }
113
-
114
- &:last-child {
115
- border-bottom: 0;
116
- border-bottom-right-radius: $border-radius;
117
- border-bottom-left-radius: $border-radius;
118
- }
119
- }
1
+ @import '@primer/view-components/app/components/primer/alpha/menu';
@@ -1,104 +1 @@
1
- // Outer wrapper
2
- // stylelint-disable selector-max-type
3
- .tabnav {
4
- margin-top: 0;
5
- margin-bottom: $spacer-3;
6
- border-bottom: $border-width $border-style var(--color-border-default);
7
- }
8
-
9
- .tabnav-tabs {
10
- display: flex;
11
- // stylelint-disable-next-line primer/spacing
12
- margin-bottom: -1px;
13
- overflow: auto;
14
- }
15
-
16
- .tabnav-tab {
17
- display: inline-block;
18
- flex-shrink: 0;
19
- padding: $spacer-2 $spacer-3;
20
- font-size: $h5-size;
21
- // stylelint-disable-next-line primer/typography
22
- line-height: 23px;
23
- color: var(--color-fg-muted);
24
- text-decoration: none;
25
- background-color: transparent;
26
- border: $border-width $border-style transparent;
27
- border-bottom: 0;
28
- transition: color 0.2s cubic-bezier(0.3, 0, 0.5, 1);
29
-
30
- &.selected,
31
- &[aria-selected='true'],
32
- &[aria-current]:not([aria-current='false']) {
33
- color: var(--color-fg-default);
34
- background-color: var(--color-canvas-default); // cover bottom border
35
- border-color: var(--color-border-default);
36
- border-radius: $border-radius $border-radius 0 0;
37
-
38
- .octicon {
39
- color: inherit;
40
- }
41
- }
42
-
43
- &:hover {
44
- color: var(--color-fg-default);
45
- text-decoration: none;
46
- transition-duration: 0.1s;
47
- }
48
-
49
- &:focus,
50
- &:focus-visible {
51
- border-radius: $border-radius $border-radius 0 0 !important;
52
- outline-offset: -6px;
53
- }
54
-
55
- &:active {
56
- color: var(--color-fg-muted);
57
- }
58
-
59
- .octicon {
60
- margin-right: $spacer-1;
61
- color: var(--color-fg-muted);
62
- }
63
-
64
- .Counter {
65
- margin-left: $spacer-1;
66
- color: inherit;
67
- }
68
- }
69
-
70
- // Tabnav extras
71
- //
72
- // Tabnav extras are non-tab elements that sit in the tabnav. Usually they're
73
- // inline text or links.
74
-
75
- .tabnav-extra {
76
- display: inline-block;
77
- // stylelint-disable-next-line primer/spacing
78
- padding-top: 10px;
79
- // stylelint-disable-next-line primer/spacing
80
- margin-left: 10px;
81
- font-size: $font-size-small;
82
- color: var(--color-fg-muted);
83
-
84
- > .octicon {
85
- // stylelint-disable-next-line primer/spacing
86
- margin-right: 2px;
87
- }
88
- }
89
-
90
- // When tabnav-extra are anchors
91
- // stylelint-disable-next-line selector-no-qualifying-type
92
- a.tabnav-extra:hover {
93
- color: var(--color-accent-fg);
94
- text-decoration: none;
95
- }
96
-
97
- // Tabnav buttons
98
- //
99
- // For when there are multiple buttons, space them out appropriately. Requires
100
- // the buttons to be floated or inline-block.
101
-
102
- .tabnav-btn {
103
- margin-left: $spacer-2;
104
- }
1
+ @import '@primer/view-components/app/components/primer/alpha/tab_nav';