@primer/view-components 0.3.0-rc.dc2abcf9 → 0.3.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 (66) hide show
  1. package/app/assets/javascripts/primer_view_components.js +1 -1
  2. package/app/assets/javascripts/primer_view_components.js.map +1 -1
  3. package/app/assets/styles/primer_view_components.css +4999 -1
  4. package/app/assets/styles/primer_view_components.css.map +1 -1
  5. package/app/components/primer/alpha/action_list.css +710 -1
  6. package/app/components/primer/alpha/action_list.css.json +77 -77
  7. package/app/components/primer/alpha/auto_complete.css +130 -1
  8. package/app/components/primer/alpha/auto_complete.css.json +4 -4
  9. package/app/components/primer/alpha/banner.css +131 -1
  10. package/app/components/primer/alpha/banner.css.json +2 -2
  11. package/app/components/primer/alpha/button_marketing.css +204 -1
  12. package/app/components/primer/alpha/button_marketing.css.json +9 -9
  13. package/app/components/primer/alpha/dialog.css +607 -1
  14. package/app/components/primer/alpha/dialog.css.json +10 -10
  15. package/app/components/primer/alpha/dropdown.css +265 -1
  16. package/app/components/primer/alpha/dropdown.css.json +19 -19
  17. package/app/components/primer/alpha/layout.css +398 -1
  18. package/app/components/primer/alpha/layout.css.json +16 -16
  19. package/app/components/primer/alpha/menu.css +117 -1
  20. package/app/components/primer/alpha/menu.css.json +7 -7
  21. package/app/components/primer/alpha/overlay.css +32 -1
  22. package/app/components/primer/alpha/overlay.css.json +3 -2
  23. package/app/components/primer/alpha/segmented_control.css +175 -1
  24. package/app/components/primer/alpha/segmented_control.css.json +7 -7
  25. package/app/components/primer/alpha/tab_nav.css +106 -1
  26. package/app/components/primer/alpha/tab_nav.css.json +6 -6
  27. package/app/components/primer/alpha/text_field.css +849 -1
  28. package/app/components/primer/alpha/text_field.css.json +45 -45
  29. package/app/components/primer/alpha/toggle_switch.css +228 -1
  30. package/app/components/primer/alpha/toggle_switch.css.json +10 -10
  31. package/app/components/primer/alpha/underline_nav.css +149 -1
  32. package/app/components/primer/alpha/underline_nav.css.json +8 -8
  33. package/app/components/primer/anchored_position.js +1 -3
  34. package/app/components/primer/beta/avatar.css +74 -1
  35. package/app/components/primer/beta/avatar_stack.css +138 -1
  36. package/app/components/primer/beta/avatar_stack.css.json +6 -6
  37. package/app/components/primer/beta/blankslate.css +90 -1
  38. package/app/components/primer/beta/border_box.css +279 -1
  39. package/app/components/primer/beta/border_box.css.json +4 -4
  40. package/app/components/primer/beta/breadcrumbs.css +27 -1
  41. package/app/components/primer/beta/breadcrumbs.css.json +3 -3
  42. package/app/components/primer/beta/button.css +385 -1
  43. package/app/components/primer/beta/button.css.json +16 -16
  44. package/app/components/primer/beta/button_group.css +23 -1
  45. package/app/components/primer/beta/button_group.css.json +5 -5
  46. package/app/components/primer/beta/counter.css +36 -1
  47. package/app/components/primer/beta/flash.css +150 -1
  48. package/app/components/primer/beta/label.css +105 -1
  49. package/app/components/primer/beta/label.css.json +4 -4
  50. package/app/components/primer/beta/link.css +62 -1
  51. package/app/components/primer/beta/link.css.json +3 -3
  52. package/app/components/primer/beta/popover.css +235 -1
  53. package/app/components/primer/beta/popover.css.json +29 -29
  54. package/app/components/primer/beta/progress_bar.css +26 -1
  55. package/app/components/primer/beta/progress_bar.css.json +1 -1
  56. package/app/components/primer/beta/state.css +50 -1
  57. package/app/components/primer/beta/state.css.json +1 -1
  58. package/app/components/primer/beta/subhead.css +54 -1
  59. package/app/components/primer/beta/subhead.css.json +1 -1
  60. package/app/components/primer/beta/timeline_item.css +95 -1
  61. package/app/components/primer/beta/timeline_item.css.json +1 -1
  62. package/app/components/primer/beta/truncate.css +37 -1
  63. package/app/components/primer/beta/truncate.css.json +6 -6
  64. package/app/components/primer/truncate.css +30 -1
  65. package/app/components/primer/truncate.css.json +4 -4
  66. package/package.json +1 -1
@@ -1 +1,74 @@
1
- .avatar{background-color:var(--avatar-bgColor,var(--color-avatar-bg));border-radius:var(--borderRadius-medium,6px);box-shadow:0 0 0 1px var(--avatar-borderColor,var(--color-avatar-border));display:inline-block;flex-shrink:0;line-height:1;overflow:hidden;vertical-align:middle}.avatar-link{float:left;line-height:1}.avatar-group-item{display:inline-block;margin-bottom:3px}.avatar-1,.avatar-2,.avatar-small{border-radius:var(--borderRadius-small,3px)}.avatar-1{height:var(--base-size-16,1rem);width:var(--base-size-16,1rem)}.avatar-2{height:var(--base-size-20,1.25rem);width:var(--base-size-20,1.25rem)}.avatar-3{height:var(--base-size-24,1.5rem);width:var(--base-size-24,1.5rem)}.avatar-4{height:var(--base-size-28,1.75rem);width:var(--base-size-28,1.75rem)}.avatar-5{height:var(--base-size-32,2rem);width:var(--base-size-32,2rem)}.avatar-6{height:var(--base-size-40,2.5rem);width:var(--base-size-40,2.5rem)}.avatar-7{height:var(--base-size-48,3rem);width:var(--base-size-48,3rem)}.avatar-8{height:var(--base-size-64,4rem);width:var(--base-size-64,4rem)}
1
+ /* avatar */
2
+
3
+ .avatar {
4
+ display: inline-block;
5
+ overflow: hidden; /* Ensure page layout in Firefox should images fail to load */
6
+ line-height: 1;
7
+ vertical-align: middle;
8
+ background-color: var(--avatar-bgColor,var(--color-avatar-bg)); /* adds opaque bg to transparent avatars */
9
+ border-radius: var(--borderRadius-medium,6px);
10
+ flex-shrink: 0;
11
+ box-shadow: 0 0 0 1px var(--avatar-borderColor,var(--color-avatar-border));
12
+ }
13
+
14
+ .avatar-link {
15
+ float: left;
16
+ line-height: 1;
17
+ }
18
+
19
+ /* User for example on /stars and /user for grids of avatars */
20
+
21
+ .avatar-group-item {
22
+ display: inline-block;
23
+ margin-bottom: 3px;
24
+ }
25
+
26
+ /* Border radius */
27
+
28
+ .avatar-1,
29
+ .avatar-2,
30
+ .avatar-small {
31
+ border-radius: var(--borderRadius-small,3px);
32
+ }
33
+
34
+ /* Sizes */
35
+
36
+ .avatar-1 {
37
+ width: var(--base-size-16,1rem);
38
+ height: var(--base-size-16,1rem);
39
+ }
40
+
41
+ .avatar-2 {
42
+ width: var(--base-size-20,1.25rem);
43
+ height: var(--base-size-20,1.25rem);
44
+ }
45
+
46
+ .avatar-3 {
47
+ width: var(--base-size-24,1.5rem);
48
+ height: var(--base-size-24,1.5rem);
49
+ }
50
+
51
+ .avatar-4 {
52
+ width: var(--base-size-28,1.75rem);
53
+ height: var(--base-size-28,1.75rem);
54
+ }
55
+
56
+ .avatar-5 {
57
+ width: var(--base-size-32,2rem);
58
+ height: var(--base-size-32,2rem);
59
+ }
60
+
61
+ .avatar-6 {
62
+ width: var(--base-size-40,2.5rem);
63
+ height: var(--base-size-40,2.5rem);
64
+ }
65
+
66
+ .avatar-7 {
67
+ width: var(--base-size-48,3rem);
68
+ height: var(--base-size-48,3rem);
69
+ }
70
+
71
+ .avatar-8 {
72
+ width: var(--base-size-64,4rem);
73
+ height: var(--base-size-64,4rem);
74
+ }
@@ -1 +1,138 @@
1
- .AvatarStack{height:20px;min-width:26px;position:relative}.AvatarStack .AvatarStack-body{position:absolute}.AvatarStack.AvatarStack--two{min-width:36px}.AvatarStack.AvatarStack--three-plus{min-width:46px}.AvatarStack-body{background:var(--bgColor-default,var(--color-canvas-default));border-radius:100px;display:flex}.AvatarStack-body .avatar{background-color:var(--bgColor-default,var(--color-canvas-default));border-radius:var(--borderRadius-small,3px);border-right:var(--borderWidth-thin,max(1px,.0625rem)) solid var(--bgColor-default,var(--color-canvas-default));box-shadow:none;box-sizing:initial;display:flex;height:20px;margin-right:-11px;position:relative;transition:margin .1s ease-in-out;width:20px;z-index:2}.AvatarStack-body .avatar:first-child{z-index:3}.AvatarStack-body .avatar:last-child{border-right:0;z-index:1}.AvatarStack-body .avatar img{border-radius:var(--borderRadius-small,3px)}.AvatarStack-body .avatar:nth-child(n+4){display:none;opacity:0}.AvatarStack-body:hover .avatar{margin-right:3px}.AvatarStack-body:hover .avatar:nth-child(n+4){display:flex;opacity:1}.AvatarStack-body:hover .avatar-more{display:none!important}.avatar.avatar-more{background:var(--bgColor-muted,var(--color-canvas-inset));margin-right:0;z-index:1}.avatar.avatar-more:after,.avatar.avatar-more:before{border-radius:2px;content:"";display:block;height:20px;outline:var(--borderWidth-thin,max(1px,.0625rem)) solid var(--bgColor-default,var(--color-canvas-default));position:absolute}.avatar.avatar-more:before{background:var(--avatarStack-fade-bgColor-muted,var(--color-avatar-stack-fade-more));width:17px}.avatar.avatar-more:after{background:var(--avatarStack-fade-bgColor-default,var(--color-avatar-stack-fade));width:14px}.AvatarStack--right .AvatarStack-body{flex-direction:row-reverse;right:0}.AvatarStack--right .AvatarStack-body:hover .avatar{margin-left:3px;margin-right:0}.AvatarStack--right .AvatarStack-body .avatar:not(:last-child){border-left:0}.AvatarStack--right .avatar.avatar-more{background:var(--avatarStack-fade-bgColor-default,var(--color-avatar-stack-fade))}.AvatarStack--right .avatar.avatar-more:before{width:5px}.AvatarStack--right .avatar.avatar-more:after{background:var(--bgColor-muted,var(--color-canvas-inset));width:2px}.AvatarStack--right .avatar{border-left:var(--borderWidth-thin,max(1px,.0625rem)) solid var(--bgColor-default,var(--color-canvas-default));border-right:0;margin-left:-11px;margin-right:0}
1
+ /* AvatarStack */
2
+
3
+ /* Stacked avatars can be used to show who is participating in thread when
4
+ ** there is limited space available. */
5
+
6
+ .AvatarStack {
7
+ position: relative;
8
+ min-width: 26px;
9
+ height: 20px;
10
+ }
11
+
12
+ .AvatarStack .AvatarStack-body {
13
+ position: absolute;
14
+ }
15
+
16
+ .AvatarStack.AvatarStack--two {
17
+ min-width: 36px;
18
+ }
19
+
20
+ .AvatarStack.AvatarStack--three-plus {
21
+ min-width: 46px;
22
+ }
23
+
24
+ .AvatarStack-body {
25
+ display: flex;
26
+ background: var(--bgColor-default,var(--color-canvas-default));
27
+ border-radius: 100px;
28
+ }
29
+
30
+ .AvatarStack-body .avatar {
31
+ position: relative;
32
+ z-index: 2;
33
+ display: flex;
34
+ width: 20px;
35
+ height: 20px;
36
+ box-sizing: content-box;
37
+ margin-right: -11px;
38
+ background-color: var(--bgColor-default,var(--color-canvas-default));
39
+ border-right: var(--borderWidth-thin,max(1px, 0.0625rem)) solid var(--bgColor-default,var(--color-canvas-default));
40
+ border-radius: var(--borderRadius-small,3px);
41
+ box-shadow: none;
42
+ transition: margin 0.1s ease-in-out;
43
+ }
44
+
45
+ .AvatarStack-body .avatar:first-child {
46
+ z-index: 3;
47
+ }
48
+
49
+ .AvatarStack-body .avatar:last-child {
50
+ z-index: 1;
51
+ border-right: 0;
52
+ }
53
+
54
+ .AvatarStack-body .avatar img {
55
+ border-radius: var(--borderRadius-small,3px);
56
+ }
57
+
58
+ /* Account for 4+ avatars */
59
+
60
+ .AvatarStack-body .avatar:nth-child(n + 4) {
61
+ display: none;
62
+ opacity: 0;
63
+ }
64
+
65
+ .AvatarStack-body:hover .avatar {
66
+ margin-right: 3px;
67
+ }
68
+
69
+ .AvatarStack-body:hover .avatar:nth-child(n + 4) {
70
+ display: flex;
71
+ opacity: 1;
72
+ }
73
+
74
+ .AvatarStack-body:hover .avatar-more {
75
+ display: none !important;
76
+ }
77
+
78
+ .avatar.avatar-more {
79
+ z-index: 1;
80
+ margin-right: 0;
81
+ background: var(--bgColor-muted,var(--color-canvas-inset));
82
+ }
83
+
84
+ .avatar.avatar-more::before,
85
+ .avatar.avatar-more::after {
86
+ position: absolute;
87
+ display: block;
88
+ height: 20px;
89
+ content: '';
90
+ border-radius: 2px;
91
+ outline: var(--borderWidth-thin,max(1px, 0.0625rem)) solid var(--bgColor-default,var(--color-canvas-default));
92
+ }
93
+
94
+ .avatar.avatar-more::before {
95
+ width: 17px;
96
+ background: var(--avatarStack-fade-bgColor-muted,var(--color-avatar-stack-fade-more));
97
+ }
98
+
99
+ .avatar.avatar-more::after {
100
+ width: 14px;
101
+ background: var(--avatarStack-fade-bgColor-default,var(--color-avatar-stack-fade));
102
+ }
103
+
104
+ /* Right aligned variation */
105
+
106
+ .AvatarStack--right .AvatarStack-body {
107
+ right: 0;
108
+ flex-direction: row-reverse;
109
+ }
110
+
111
+ .AvatarStack--right .AvatarStack-body:hover .avatar {
112
+ margin-right: 0;
113
+ margin-left: 3px;
114
+ }
115
+
116
+ .AvatarStack--right .AvatarStack-body .avatar:not(:last-child) {
117
+ border-left: 0;
118
+ }
119
+
120
+ .AvatarStack--right .avatar.avatar-more {
121
+ background: var(--avatarStack-fade-bgColor-default,var(--color-avatar-stack-fade));
122
+ }
123
+
124
+ .AvatarStack--right .avatar.avatar-more::before {
125
+ width: 5px;
126
+ }
127
+
128
+ .AvatarStack--right .avatar.avatar-more::after {
129
+ width: 2px;
130
+ background: var(--bgColor-muted,var(--color-canvas-inset));
131
+ }
132
+
133
+ .AvatarStack--right .avatar {
134
+ margin-right: 0;
135
+ margin-left: -11px;
136
+ border-right: 0;
137
+ border-left: var(--borderWidth-thin,max(1px, 0.0625rem)) solid var(--bgColor-default,var(--color-canvas-default));
138
+ }
@@ -10,19 +10,19 @@
10
10
  ".AvatarStack-body .avatar:first-child",
11
11
  ".AvatarStack-body .avatar:last-child",
12
12
  ".AvatarStack-body .avatar img",
13
- ".AvatarStack-body .avatar:nth-child(n+4)",
13
+ ".AvatarStack-body .avatar:nth-child(n + 4)",
14
14
  ".AvatarStack-body:hover .avatar",
15
- ".AvatarStack-body:hover .avatar:nth-child(n+4)",
15
+ ".AvatarStack-body:hover .avatar:nth-child(n + 4)",
16
16
  ".AvatarStack-body:hover .avatar-more",
17
17
  ".avatar.avatar-more",
18
- ".avatar.avatar-more:after",
19
- ".avatar.avatar-more:before",
18
+ ".avatar.avatar-more::before",
19
+ ".avatar.avatar-more::after",
20
20
  ".AvatarStack--right .AvatarStack-body",
21
21
  ".AvatarStack--right .AvatarStack-body:hover .avatar",
22
22
  ".AvatarStack--right .AvatarStack-body .avatar:not(:last-child)",
23
23
  ".AvatarStack--right .avatar.avatar-more",
24
- ".AvatarStack--right .avatar.avatar-more:before",
25
- ".AvatarStack--right .avatar.avatar-more:after",
24
+ ".AvatarStack--right .avatar.avatar-more::before",
25
+ ".AvatarStack--right .avatar.avatar-more::after",
26
26
  ".AvatarStack--right .avatar"
27
27
  ]
28
28
  }
@@ -1 +1,90 @@
1
- .blankslate{padding:var(--base-size-32,2rem);position:relative;text-align:center}.blankslate p{color:var(--fgColor-muted,var(--color-fg-muted))}.blankslate code{background:var(--bgColor-default,var(--color-canvas-default));border:var(--borderWidth-thin,max(1px,.0625rem)) solid var(--borderColor-muted,var(--color-neutral-muted));border-radius:var(--borderRadius-medium,6px);font-size:var(--text-body-size-medium,.875rem);padding:2px 5px 3px}.blankslate img{height:56px;width:56px}.blankslate-icon{color:var(--fgColor-muted,var(--color-fg-muted));margin-bottom:var(--stack-gap-condensed,.5rem);margin-left:var(--control-small-gap,.25rem);margin-right:var(--control-small-gap,.25rem)}.blankslate-image{margin-bottom:var(--stack-gap-normal,1rem)}.blankslate-heading{margin-bottom:var(--base-size-4,.25rem)}.blankslate-action{margin-top:var(--stack-gap-normal,1rem)}.blankslate-action:first-of-type{margin-top:var(--stack-gap-spacious,1.5rem)}.blankslate-action:last-of-type{margin-bottom:var(--stack-gap-condensed,.5rem)}.blankslate-capped{border-radius:0 0 var(--borderRadius-medium,6px) var(--borderRadius-medium,6px)}.blankslate-spacious{padding:var(--base-size-80,5rem) var(--base-size-40,2.5rem)}.blankslate-narrow{margin:0 auto;max-width:485px}.blankslate-large img{height:80px;width:80px}.blankslate-large h3{font-size:24px;margin:var(--stack-gap-normal,1rem) 0}.blankslate-large p{font-size:var(--text-body-size-large,1rem)}.blankslate-clean-background{border:0}
1
+ /* blankslate */
2
+
3
+ .blankslate {
4
+ position: relative;
5
+ padding: var(--base-size-32,2rem);
6
+ text-align: center;
7
+ }
8
+
9
+ .blankslate p {
10
+ color: var(--fgColor-muted,var(--color-fg-muted));
11
+ }
12
+
13
+ .blankslate code {
14
+ padding: 2px 5px 3px;
15
+ font-size: var(--text-body-size-medium,0.875rem);
16
+ background: var(--bgColor-default,var(--color-canvas-default));
17
+ border: var(--borderWidth-thin,max(1px, 0.0625rem)) solid var(--borderColor-muted,var(--color-neutral-muted));
18
+ border-radius: var(--borderRadius-medium,6px);
19
+ }
20
+
21
+ .blankslate img {
22
+ width: 56px;
23
+ height: 56px;
24
+ }
25
+
26
+ .blankslate-icon {
27
+ margin-right: var(--control-small-gap,0.25rem);
28
+ margin-bottom: var(--stack-gap-condensed,0.5rem);
29
+ margin-left: var(--control-small-gap,0.25rem);
30
+ color: var(--fgColor-muted,var(--color-fg-muted));
31
+ }
32
+
33
+ .blankslate-image {
34
+ margin-bottom: var(--stack-gap-normal,1rem);
35
+ }
36
+
37
+ .blankslate-heading {
38
+ margin-bottom: var(--base-size-4,0.25rem);
39
+ }
40
+
41
+ .blankslate-action {
42
+ margin-top: var(--stack-gap-normal,1rem);
43
+ }
44
+
45
+ .blankslate-action:first-of-type {
46
+ margin-top: var(--stack-gap-spacious,1.5rem);
47
+ }
48
+
49
+ .blankslate-action:last-of-type {
50
+ margin-bottom: var(--stack-gap-condensed,0.5rem);
51
+ }
52
+
53
+ .blankslate-capped {
54
+ border-radius: 0 0 var(--borderRadius-medium,6px) var(--borderRadius-medium,6px);
55
+ }
56
+
57
+ .blankslate-spacious {
58
+ padding: var(--base-size-80,5rem) var(--base-size-40,2.5rem);
59
+ }
60
+
61
+ .blankslate-narrow {
62
+ max-width: 485px;
63
+ margin: 0 auto;
64
+ }
65
+
66
+ /* was .large-format
67
+ ** QUESTION: should we deprecate this? */
68
+
69
+ .blankslate-large img {
70
+ width: 80px;
71
+ height: 80px;
72
+ }
73
+
74
+ .blankslate-large h3 {
75
+ margin: var(--stack-gap-normal,1rem) 0;
76
+
77
+ /* font-size: $h3-size; // This doesn't actually make the text larger. Should this be $h2-size? */
78
+ font-size: 24px;
79
+ }
80
+
81
+ .blankslate-large p {
82
+ font-size: var(--text-body-size-large,1rem);
83
+ }
84
+
85
+ /* was .clean-background
86
+ ** TO DO: deprecate this and use utility instead */
87
+
88
+ .blankslate-clean-background {
89
+ border: 0;
90
+ }
@@ -1 +1,279 @@
1
- .Box{background-color:var(--bgColor-default,var(--color-canvas-default));border-color:var(--borderColor-default,var(--color-border-default));border-radius:var(--borderRadius-medium,6px);border-style:solid;border-width:var(--borderWidth-thin,max(1px,.0625rem))}.Box--condensed{line-height:1.25}.Box--condensed .Box-body,.Box--condensed .Box-footer,.Box--condensed .Box-header{padding:var(--stack-padding-condensed,.5rem) var(--stack-padding-normal,1rem)}.Box--condensed .Box-btn-octicon.btn-octicon{line-height:1.25;margin:calc(var(--controlStack-medium-gap-condensed,.5rem)*-1) calc(var(--controlStack-small-gap-spacious,1rem)*-1);padding:var(--control-medium-paddingInline-condensed,.5rem) var(--control-medium-paddingInline-spacious,1rem)}.Box--condensed .Box-row{padding:var(--stack-padding-condensed,.5rem) var(--stack-padding-normal,1rem)}.Box--spacious .Box-header{line-height:1.25;padding:var(--stack-padding-spacious,1.5rem)}.Box--spacious .Box-title{font-size:var(--text-title-size-medium,1.25rem)}.Box--spacious .Box-body,.Box--spacious .Box-btn-octicon.btn-octicon,.Box--spacious .Box-footer{padding:var(--stack-padding-spacious,1.5rem)}.Box--spacious .Box-btn-octicon.btn-octicon{margin:calc(var(--stack-gap-spacious,1.5rem)*-1) calc(var(--stack-gap-spacious,1.5rem)*-1)}.Box--spacious .Box-row{padding:var(--stack-padding-spacious,1.5rem)}.Box-header{background-color:var(--bgColor-muted,var(--color-canvas-inset));border-color:var(--borderColor-default,var(--color-border-default));border-style:solid;border-top-left-radius:var(--borderRadius-medium,6px);border-top-right-radius:var(--borderRadius-medium,6px);border-width:var(--borderWidth-thin,max(1px,.0625rem));margin:calc(var(--borderWidth-thin,max(1px, .0625rem))*-1) calc(var(--borderWidth-thin,max(1px, .0625rem))*-1) 0;padding:var(--stack-padding-normal,1rem)}.Box-title{font-size:var(--text-body-size-medium,.875rem);font-weight:var(--base-text-weight-semibold,600)}.Box-body{border-bottom:var(--borderWidth-thin,max(1px,.0625rem)) solid var(--borderColor-default,var(--color-border-default));padding:var(--stack-padding-normal,1rem)}.Box-body:last-of-type{border-bottom-left-radius:var(--borderRadius-medium,6px);border-bottom-right-radius:var(--borderRadius-medium,6px);margin-bottom:calc(var(--borderWidth-thin,max(1px, .0625rem))*-1)}.Box-row{border-top:var(--borderWidth-thin,max(1px,.0625rem)) solid var(--borderColor-muted,var(--color-neutral-muted));list-style-type:none;margin-top:calc(var(--borderWidth-thin,max(1px, .0625rem))*-1);padding:var(--stack-padding-normal,1rem)}.Box-row:first-of-type{border-top-left-radius:var(--borderRadius-medium,6px);border-top-right-radius:var(--borderRadius-medium,6px)}.Box-row:last-of-type{border-bottom-left-radius:var(--borderRadius-medium,6px);border-bottom-right-radius:var(--borderRadius-medium,6px)}.Box-row.Box-row--unread,.Box-row.unread{box-shadow:inset 2px 0 0 var(--borderColor-accent-emphasis,var(--color-accent-fg))}.Box-row.navigation-focus .Box-row--drag-button{color:var(--fgColor-accent,var(--color-accent-fg));cursor:grab;opacity:1}.Box-row.navigation-focus.is-dragging .Box-row--drag-button{cursor:grabbing}.Box-row.navigation-focus.sortable-chosen,.Box-row.navigation-focus.sortable-ghost{background-color:var(--bgColor-muted,var(--color-canvas-inset))}.Box-row.navigation-focus.sortable-ghost .Box-row--drag-hide{opacity:0}.Box-row--focus-gray.navigation-focus{background-color:var(--bgColor-muted,var(--color-canvas-inset))}.Box-row--focus-blue.navigation-focus{background-color:var(--bgColor-accent-muted,var(--color-accent-muted))}.Box-row--hover-gray:hover{background-color:var(--bgColor-muted,var(--color-canvas-inset))}.Box-row--hover-blue:hover{background-color:var(--bgColor-accent-muted,var(--color-accent-muted))}@media (min-width:768px){.Box-row-link{color:var(--fgColor-default,var(--color-fg-default));text-decoration:none}.Box-row-link:hover{color:var(--fgColor-accent,var(--color-accent-fg));text-decoration:none}}.Box-row--drag-button{opacity:0}.Box-footer{border-radius:0 0 var(--borderRadius-medium,6px) var(--borderRadius-medium,6px);border-top:var(--borderWidth-thin,max(1px,.0625rem)) solid var(--borderColor-default,var(--color-border-default));margin-top:calc(var(--borderWidth-thin,max(1px, .0625rem))*-1);padding:var(--stack-padding-normal,1rem)}.Box--scrollable{max-height:324px;overflow:scroll}.Box--blue,.Box--blue .Box-header{border-color:var(--borderColor-accent-muted,var(--color-accent-muted))}.Box--blue .Box-header{background-color:var(--bgColor-accent-muted,var(--color-accent-muted))}.Box--blue .Box-body,.Box--blue .Box-footer,.Box--blue .Box-row{border-color:var(--borderColor-accent-muted,var(--color-accent-muted))}.Box--danger,.Box--danger .Box-body:last-of-type,.Box--danger .Box-row:first-of-type{border-color:var(--borderColor-danger-emphasis,var(--color-danger-emphasis))}.Box-header--blue{background-color:var(--bgColor-accent-muted,var(--color-accent-muted));border-color:var(--borderColor-accent-muted,var(--color-accent-muted))}.Box-row--yellow{background-color:var(--bgColor-attention-muted,var(--color-attention-subtle))}.Box-row--blue{background-color:var(--bgColor-accent-muted,var(--color-accent-muted))}.Box-row--gray{background-color:var(--bgColor-muted,var(--color-canvas-inset))}.Box-btn-octicon.btn-octicon{line-height:1.5;margin:calc(var(--controlStack-small-gap-spacious,1rem)*-1) calc(var(--controlStack-small-gap-spacious,1rem)*-1);padding:var(--control-medium-paddingInline-spacious,1rem) var(--control-medium-paddingInline-spacious,1rem)}
1
+ /* BorderBox */
2
+
3
+ /* TODO: Rename to BorderBox to match PVC */
4
+
5
+ .Box {
6
+ background-color: var(--bgColor-default,var(--color-canvas-default));
7
+ border-color: var(--borderColor-default,var(--color-border-default));
8
+ border-style: solid;
9
+ border-width: var(--borderWidth-thin,max(1px, 0.0625rem));
10
+ border-radius: var(--borderRadius-medium,6px);
11
+ }
12
+
13
+ /* Box padding density options */
14
+
15
+ .Box--condensed {
16
+ line-height: 1.25;
17
+ }
18
+
19
+ .Box--condensed .Box-header {
20
+ padding: var(--stack-padding-condensed,0.5rem) var(--stack-padding-normal,1rem);
21
+ }
22
+
23
+ .Box--condensed .Box-body {
24
+ padding: var(--stack-padding-condensed,0.5rem) var(--stack-padding-normal,1rem);
25
+ }
26
+
27
+ .Box--condensed .Box-footer {
28
+ padding: var(--stack-padding-condensed,0.5rem) var(--stack-padding-normal,1rem);
29
+ }
30
+
31
+ .Box--condensed .Box-btn-octicon.btn-octicon {
32
+ padding: var(--control-medium-paddingInline-condensed,0.5rem) var(--control-medium-paddingInline-spacious,1rem);
33
+ margin: calc(var(--controlStack-medium-gap-condensed,0.5rem) * -1) calc(var(--controlStack-small-gap-spacious,1rem) * -1);
34
+ line-height: 1.25;
35
+ }
36
+
37
+ .Box--condensed .Box-row {
38
+ padding: var(--stack-padding-condensed,0.5rem) var(--stack-padding-normal,1rem);
39
+ }
40
+
41
+ .Box--spacious .Box-header {
42
+ padding: var(--stack-padding-spacious,1.5rem);
43
+ line-height: 1.25;
44
+ }
45
+
46
+ .Box--spacious .Box-title {
47
+ font-size: var(--text-title-size-medium,1.25rem);
48
+ }
49
+
50
+ .Box--spacious .Box-body {
51
+ padding: var(--stack-padding-spacious,1.5rem);
52
+ }
53
+
54
+ .Box--spacious .Box-footer {
55
+ padding: var(--stack-padding-spacious,1.5rem);
56
+ }
57
+
58
+ .Box--spacious .Box-btn-octicon.btn-octicon {
59
+ padding: var(--stack-padding-spacious,1.5rem);
60
+ margin: calc(var(--stack-gap-spacious,1.5rem) * -1) calc(var(--stack-gap-spacious,1.5rem) * -1);
61
+ }
62
+
63
+ .Box--spacious .Box-row {
64
+ padding: var(--stack-padding-spacious,1.5rem);
65
+ }
66
+
67
+ .Box-header {
68
+ padding: var(--stack-padding-normal,1rem);
69
+ margin: calc(var(--borderWidth-thin,max(1px, 0.0625rem)) * -1) calc(var(--borderWidth-thin,max(1px, 0.0625rem)) * -1) 0;
70
+ background-color: var(--bgColor-muted,var(--color-canvas-inset));
71
+ border-color: var(--borderColor-default,var(--color-border-default));
72
+ border-style: solid;
73
+ border-width: var(--borderWidth-thin,max(1px, 0.0625rem));
74
+ border-top-left-radius: var(--borderRadius-medium,6px);
75
+ border-top-right-radius: var(--borderRadius-medium,6px);
76
+ }
77
+
78
+ .Box-title {
79
+ font-size: var(--text-body-size-medium,0.875rem);
80
+ font-weight: var(--base-text-weight-semibold,600);
81
+ }
82
+
83
+ .Box-body {
84
+ padding: var(--stack-padding-normal,1rem);
85
+ border-bottom: var(--borderWidth-thin,max(1px, 0.0625rem)) solid var(--borderColor-default,var(--color-border-default));
86
+
87
+ /* Ensures bottom-border doesn't poke out when .Box-body used without box-footer */
88
+ }
89
+
90
+ .Box-body:last-of-type {
91
+ margin-bottom: calc(var(--borderWidth-thin,max(1px, 0.0625rem)) * -1);
92
+ border-bottom-right-radius: var(--borderRadius-medium,6px);
93
+ border-bottom-left-radius: var(--borderRadius-medium,6px);
94
+ }
95
+
96
+ /* Box rows */
97
+
98
+ .Box-row {
99
+ padding: var(--stack-padding-normal,1rem);
100
+ margin-top: calc(var(--borderWidth-thin,max(1px, 0.0625rem)) * -1);
101
+ list-style-type: none; /* To account for applying Box component to a list */
102
+ border-top-color: var(--borderColor-muted,var(--color-neutral-muted));
103
+ border-top-style: solid;
104
+ border-top-width: var(--borderWidth-thin,max(1px, 0.0625rem));
105
+ }
106
+
107
+ .Box-row:first-of-type {
108
+ border-top-left-radius: var(--borderRadius-medium,6px);
109
+ border-top-right-radius: var(--borderRadius-medium,6px);
110
+ }
111
+
112
+ .Box-row:last-of-type {
113
+ border-bottom-right-radius: var(--borderRadius-medium,6px);
114
+ border-bottom-left-radius: var(--borderRadius-medium,6px);
115
+ }
116
+
117
+ /* Adds a blue vertical line to the left of the row
118
+ ** For indicating a row item is unread */
119
+
120
+ .Box-row.Box-row--unread,
121
+
122
+ .Box-row.unread {
123
+ box-shadow: inset 2px 0 0 var(--borderColor-accent-emphasis,var(--color-accent-fg));
124
+ }
125
+
126
+ /* Focus styles for when drag icon */
127
+
128
+ .Box-row.navigation-focus .Box-row--drag-button {
129
+ color: var(--fgColor-accent,var(--color-accent-fg));
130
+ cursor: grab;
131
+ opacity: 100;
132
+ }
133
+
134
+ /* Grabbing while row is dragged */
135
+
136
+ .Box-row.navigation-focus.is-dragging .Box-row--drag-button {
137
+ cursor: grabbing;
138
+ }
139
+
140
+ /* Row dragging styles */
141
+
142
+ .Box-row.navigation-focus.sortable-chosen {
143
+ background-color: var(--bgColor-muted,var(--color-canvas-inset));
144
+ }
145
+
146
+ /* Makes dragging row background gray */
147
+
148
+ .Box-row.navigation-focus.sortable-ghost {
149
+ background-color: var(--bgColor-muted,var(--color-canvas-inset));
150
+
151
+ /* Hides contents of row while dragging so row looks solid gray */
152
+ }
153
+
154
+ .Box-row.navigation-focus.sortable-ghost .Box-row--drag-hide {
155
+ opacity: 0;
156
+ }
157
+
158
+ .Box-row--focus-gray.navigation-focus {
159
+ background-color: var(--bgColor-muted,var(--color-canvas-inset));
160
+ }
161
+
162
+ .Box-row--focus-blue.navigation-focus {
163
+ background-color: var(--bgColor-accent-muted,var(--color-accent-muted));
164
+ }
165
+
166
+ .Box-row--hover-gray:hover {
167
+ background-color: var(--bgColor-muted,var(--color-canvas-inset));
168
+ }
169
+
170
+ .Box-row--hover-blue:hover {
171
+ background-color: var(--bgColor-accent-muted,var(--color-accent-muted));
172
+ }
173
+
174
+ /* Optional link style
175
+ ** Makes links on mobile blue since they don't have hover state,
176
+ ** and links are dark-gray with blue hover on desktop. */
177
+
178
+ @media (min-width: 768px) {
179
+
180
+ .Box-row-link {
181
+ color: var(--fgColor-default,var(--color-fg-default));
182
+ text-decoration: none;
183
+ }
184
+
185
+ .Box-row-link:hover {
186
+ color: var(--fgColor-accent,var(--color-accent-fg));
187
+ text-decoration: none;
188
+ }
189
+ }
190
+
191
+ /* Optional drag icon styles for reordering items
192
+ ** Focus styles included in .Box-row above */
193
+
194
+ .Box-row--drag-button {
195
+ opacity: 0;
196
+ }
197
+
198
+ .Box-footer {
199
+ padding: var(--stack-padding-normal,1rem);
200
+ margin-top: calc(var(--borderWidth-thin,max(1px, 0.0625rem)) * -1); /* prevents double border when used with .Box-body */
201
+ border-top-color: var(--borderColor-default,var(--color-border-default));
202
+ border-top-style: solid;
203
+ border-top-width: var(--borderWidth-thin,max(1px, 0.0625rem));
204
+ border-radius: 0 0 var(--borderRadius-medium,6px) var(--borderRadius-medium,6px);
205
+ }
206
+
207
+ /* Option for a box with scrolling content */
208
+
209
+ .Box--scrollable {
210
+ max-height: 324px;
211
+ overflow: scroll;
212
+ }
213
+
214
+ /* Box themes */
215
+
216
+ .Box--blue {
217
+ border-color: var(--borderColor-accent-muted,var(--color-accent-muted));
218
+ }
219
+
220
+ .Box--blue .Box-header {
221
+ background-color: var(--bgColor-accent-muted,var(--color-accent-muted));
222
+ border-color: var(--borderColor-accent-muted,var(--color-accent-muted));
223
+ }
224
+
225
+ .Box--blue .Box-body {
226
+ border-color: var(--borderColor-accent-muted,var(--color-accent-muted));
227
+ }
228
+
229
+ .Box--blue .Box-row {
230
+ border-color: var(--borderColor-accent-muted,var(--color-accent-muted));
231
+ }
232
+
233
+ .Box--blue .Box-footer {
234
+ border-color: var(--borderColor-accent-muted,var(--color-accent-muted));
235
+ }
236
+
237
+ /* Applies and red border to the outside of the box,
238
+ ** but not to the border separating rows. */
239
+
240
+ .Box--danger {
241
+ border-color: var(--borderColor-danger-emphasis,var(--color-danger-emphasis));
242
+ }
243
+
244
+ .Box--danger .Box-row:first-of-type {
245
+ border-color: var(--borderColor-danger-emphasis,var(--color-danger-emphasis));
246
+ }
247
+
248
+ .Box--danger .Box-body:last-of-type {
249
+ border-color: var(--borderColor-danger-emphasis,var(--color-danger-emphasis));
250
+ }
251
+
252
+ .Box-header--blue {
253
+ background-color: var(--bgColor-accent-muted,var(--color-accent-muted));
254
+ border-color: var(--borderColor-accent-muted,var(--color-accent-muted));
255
+ }
256
+
257
+ /* Box row highlight themes */
258
+
259
+ .Box-row--yellow {
260
+ background-color: var(--bgColor-attention-muted,var(--color-attention-subtle));
261
+ }
262
+
263
+ .Box-row--blue {
264
+ background-color: var(--bgColor-accent-muted,var(--color-accent-muted));
265
+ }
266
+
267
+ .Box-row--gray {
268
+ background-color: var(--bgColor-muted,var(--color-canvas-inset));
269
+ }
270
+
271
+ /* Box with btn-octicon */
272
+
273
+ /* Increase specificity when btn-octicon is used because comes after .Box in the cascade */
274
+
275
+ .Box-btn-octicon.btn-octicon {
276
+ padding: var(--control-medium-paddingInline-spacious,1rem) var(--control-medium-paddingInline-spacious,1rem);
277
+ margin: calc(var(--controlStack-small-gap-spacious,1rem) * -1) calc(var(--controlStack-small-gap-spacious,1rem) * -1);
278
+ line-height: 1.5; /* override btn-octicon line-height */
279
+ }
@@ -3,16 +3,16 @@
3
3
  "selectors": [
4
4
  ".Box",
5
5
  ".Box--condensed",
6
+ ".Box--condensed .Box-header",
6
7
  ".Box--condensed .Box-body",
7
8
  ".Box--condensed .Box-footer",
8
- ".Box--condensed .Box-header",
9
9
  ".Box--condensed .Box-btn-octicon.btn-octicon",
10
10
  ".Box--condensed .Box-row",
11
11
  ".Box--spacious .Box-header",
12
12
  ".Box--spacious .Box-title",
13
13
  ".Box--spacious .Box-body",
14
- ".Box--spacious .Box-btn-octicon.btn-octicon",
15
14
  ".Box--spacious .Box-footer",
15
+ ".Box--spacious .Box-btn-octicon.btn-octicon",
16
16
  ".Box--spacious .Box-row",
17
17
  ".Box-header",
18
18
  ".Box-title",
@@ -40,11 +40,11 @@
40
40
  ".Box--blue",
41
41
  ".Box--blue .Box-header",
42
42
  ".Box--blue .Box-body",
43
- ".Box--blue .Box-footer",
44
43
  ".Box--blue .Box-row",
44
+ ".Box--blue .Box-footer",
45
45
  ".Box--danger",
46
- ".Box--danger .Box-body:last-of-type",
47
46
  ".Box--danger .Box-row:first-of-type",
47
+ ".Box--danger .Box-body:last-of-type",
48
48
  ".Box-header--blue",
49
49
  ".Box-row--yellow",
50
50
  ".Box-row--blue",
@@ -1 +1,27 @@
1
- .breadcrumb-item{display:inline-block;list-style:none;margin-left:-.35em;white-space:nowrap}.breadcrumb-item:after{border-right:.1em solid var(--fgColor-muted,var(--color-fg-muted));content:"";display:inline-block;height:.8em;margin:0 .5em;transform:rotate(15deg)}.breadcrumb-item:first-child{margin-left:0}.breadcrumb-item-selected:after,.breadcrumb-item[aria-current]:not([aria-current=false]):after{content:none}.breadcrumb-item-selected a{color:var(--fgColor-default,var(--color-fg-default))}
1
+ .breadcrumb-item {
2
+ display: inline-block;
3
+ margin-left: -0.35em;
4
+ white-space: nowrap;
5
+ list-style: none;
6
+ }
7
+
8
+ .breadcrumb-item::after {
9
+ display: inline-block;
10
+ height: 0.8em;
11
+ margin: 0 0.5em;
12
+ content: '';
13
+ border-right: 0.1em solid var(--fgColor-muted,var(--color-fg-muted));
14
+ transform: rotate(15deg);
15
+ }
16
+
17
+ .breadcrumb-item:first-child {
18
+ margin-left: 0;
19
+ }
20
+
21
+ .breadcrumb-item-selected::after, .breadcrumb-item[aria-current]:not([aria-current='false'])::after {
22
+ content: none;
23
+ }
24
+
25
+ .breadcrumb-item-selected a {
26
+ color: var(--fgColor-default,var(--color-fg-default));
27
+ }