@mixtint/primer-view-components 0.89.1 → 0.90.1

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 (58) 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 +210 -647
  4. package/app/assets/styles/primer_view_components.css.map +1 -1
  5. package/app/components/primer/alpha/action_bar.css +9 -3
  6. package/app/components/primer/alpha/action_list.css +92 -2
  7. package/app/components/primer/alpha/auto_complete.css +4 -22
  8. package/app/components/primer/alpha/auto_complete.css.json +1 -3
  9. package/app/components/primer/alpha/banner.css +0 -1
  10. package/app/components/primer/alpha/button_marketing.css +4 -4
  11. package/app/components/primer/alpha/dialog.css +66 -1
  12. package/app/components/primer/alpha/dialog.css.json +2 -1
  13. package/app/components/primer/alpha/dropdown.css +0 -6
  14. package/app/components/primer/alpha/layout.css +3 -1
  15. package/app/components/primer/alpha/menu.css +0 -6
  16. package/app/components/primer/alpha/overlay.css +5 -0
  17. package/app/components/primer/alpha/segmented_control.css +0 -4
  18. package/app/components/primer/alpha/tab_nav.css +0 -8
  19. package/app/components/primer/alpha/text_field.css +97 -5
  20. package/app/components/primer/alpha/text_field.css.json +2 -2
  21. package/app/components/primer/alpha/toggle_switch.css +8 -7
  22. package/app/components/primer/alpha/tree_view/tree_view_icon_pair_element.js +1 -1
  23. package/app/components/primer/alpha/tree_view.css +1 -0
  24. package/app/components/primer/alpha/underline_nav.css +0 -3
  25. package/app/components/primer/beta/avatar.css +0 -1
  26. package/app/components/primer/beta/avatar_stack.css +33 -0
  27. package/app/components/primer/beta/blankslate.css +2 -61
  28. package/app/components/primer/beta/border_box.css +35 -0
  29. package/app/components/primer/beta/breadcrumbs.css +7 -4
  30. package/app/components/primer/beta/breadcrumbs.css.json +2 -1
  31. package/app/components/primer/beta/button.css +51 -1
  32. package/app/components/primer/beta/flash.css +0 -16
  33. package/app/components/primer/beta/label.css +0 -2
  34. package/app/components/primer/beta/link.css +0 -2
  35. package/app/components/primer/beta/popover.css +138 -85
  36. package/app/components/primer/beta/popover.css.json +22 -16
  37. package/app/components/primer/beta/state.css +0 -1
  38. package/app/components/primer/beta/subhead.css +0 -8
  39. package/app/components/primer/beta/timeline_item.css +0 -5
  40. package/app/components/primer/beta/truncate.css +0 -1
  41. package/app/components/primer/dialog_helper.js +10 -1
  42. package/app/components/primer/open_project/avatar_stack.css +10 -0
  43. package/app/components/primer/open_project/border_box/collapsible_header.css +3 -1
  44. package/app/components/primer/open_project/border_grid.css +11 -9
  45. package/app/components/primer/open_project/collapsible.d.ts +1 -1
  46. package/app/components/primer/open_project/collapsible.js +8 -4
  47. package/app/components/primer/open_project/filterable_tree_view.css +2 -7
  48. package/app/components/primer/open_project/page_header.css +2 -5
  49. package/app/components/primer/open_project/pagination.css +4 -1
  50. package/app/components/primer/open_project/side_panel/section.css +3 -3
  51. package/package.json +35 -15
  52. package/static/arguments.json +12 -0
  53. package/static/classes.json +21 -0
  54. package/static/classnames.cjs +516 -0
  55. package/static/classnames.d.ts +2 -0
  56. package/static/classnames.js +518 -0
  57. package/static/info_arch.json +59 -2
  58. package/static/previews.json +2439 -2400
@@ -1,12 +1,14 @@
1
1
  /* stylelint-disable selector-no-qualifying-type */
2
2
  /* stylelint-disable selector-max-type */
3
- /* stylelint-disable primer/spacing */
3
+
4
4
  /* CSS for Button */
5
+
5
6
  /* temporary, pre primitives release */
6
7
  :root {
7
8
  --duration-fast: 80ms;
8
9
  --easing-easeInOut: cubic-bezier(0.65, 0, 0.35, 1);
9
10
  }
11
+
10
12
  /* base button */
11
13
  .Button {
12
14
  position: relative;
@@ -61,10 +63,12 @@
61
63
  .Button.Button--iconOnly {
62
64
  color: var(--fgColor-muted);
63
65
  }
66
+
64
67
  :is(a.Button,summary.Button):hover {
65
68
  -webkit-text-decoration: none;
66
69
  text-decoration: none;
67
70
  }
71
+
68
72
  /* wrap grid content to allow trailingAction to lock-right */
69
73
  .Button-content {
70
74
  flex: 1 0 auto;
@@ -79,11 +83,14 @@
79
83
  .Button-content > :not(:last-child) {
80
84
  margin-right: var(--control-medium-gap);
81
85
  }
86
+
82
87
  /* center child elements for fullWidth */
83
88
  .Button-content--alignStart {
84
89
  justify-content: start;
85
90
  }
91
+
86
92
  /* button child elements */
93
+
87
94
  /* align svg */
88
95
  .Button-visual {
89
96
  display: flex;
@@ -93,24 +100,31 @@
93
100
  color: inherit;
94
101
  background-color: var(--buttonCounter-default-bgColor-rest);
95
102
  }
103
+
96
104
  .Button-label {
97
105
  line-height: var(--text-body-lineHeight-medium);
98
106
  white-space: nowrap;
99
107
  grid-area: text;
100
108
  }
109
+
101
110
  .Button-leadingVisual {
102
111
  grid-area: leadingVisual;
103
112
  }
113
+
104
114
  .Button-leadingVisual svg {
105
115
  fill: currentcolor;
106
116
  }
117
+
107
118
  .Button-trailingVisual {
108
119
  grid-area: trailingVisual;
109
120
  }
121
+
110
122
  .Button-trailingAction {
111
123
  margin-right: calc(var(--base-size-4) * -1);
112
124
  }
125
+
113
126
  /* sizes */
127
+
114
128
  .Button--small {
115
129
  min-width: var(--control-small-size);
116
130
  height: var(--control-small-size);
@@ -118,56 +132,72 @@
118
132
  font-size: var(--text-body-size-small);
119
133
  gap: var(--control-small-gap);
120
134
  }
135
+
121
136
  .Button--small .Button-label {
122
137
  line-height: var(--text-body-lineHeight-small);
123
138
  }
139
+
124
140
  :is(.Button--small .Button-content) > :not(:last-child) {
125
141
  margin-right: var(--control-small-gap);
126
142
  }
143
+
127
144
  .Button--large {
128
145
  height: var(--control-large-size);
129
146
  padding: 0 var(--control-large-paddingInline-spacious);
130
147
  gap: var(--control-large-gap);
131
148
  }
149
+
132
150
  .Button--large .Button-label {
133
151
  line-height: var(--text-body-lineHeight-large);
134
152
  }
153
+
135
154
  :is(.Button--large .Button-content) > :not(:last-child) {
136
155
  margin-right: var(--control-large-gap);
137
156
  }
157
+
138
158
  .Button--fullWidth {
139
159
  width: 100%;
140
160
  }
161
+
141
162
  /* allow button label text to wrap */
163
+
142
164
  .Button--labelWrap {
143
165
  min-width: fit-content;
144
166
  height: unset;
145
167
  min-height: var(--control-medium-size);
146
168
  }
169
+
147
170
  .Button--labelWrap .Button-content {
148
171
  flex: 1 1 auto;
149
172
  align-self: stretch;
150
173
  padding-block: calc(var(--control-medium-paddingBlock) - var(--base-size-2));
151
174
  }
175
+
152
176
  .Button--labelWrap .Button-label {
153
177
  white-space: unset;
154
178
  }
179
+
155
180
  .Button--labelWrap.Button--small {
156
181
  height: unset;
157
182
  min-height: var(--control-small-size);
158
183
  }
184
+
159
185
  .Button--labelWrap.Button--small .Button-content {
160
186
  padding-block: calc(var(--control-small-paddingBlock) - var(--base-size-2));
161
187
  }
188
+
162
189
  .Button--labelWrap.Button--large {
163
190
  height: unset;
164
191
  min-height: var(--control-large-size);
165
192
  padding-inline: var(--control-large-paddingInline-spacious);
166
193
  }
194
+
167
195
  .Button--labelWrap.Button--large .Button-content {
168
196
  padding-block: calc(var(--control-large-paddingBlock) - var(--base-size-2));
169
197
  }
198
+
170
199
  /* variants */
200
+
171
201
  /* primary */
172
202
  .Button--primary {
173
203
  color: var(--button-primary-fgColor-rest);
@@ -215,6 +245,7 @@
215
245
  color: inherit;
216
246
  background-color: var(--buttonCounter-primary-bgColor-rest);
217
247
  }
248
+
218
249
  /* default (secondary) */
219
250
  .Button--secondary {
220
251
  color: var(--button-default-fgColor-rest);
@@ -241,34 +272,44 @@
241
272
  background-color: var(--button-default-bgColor-disabled);
242
273
  border-color: var(--button-default-borderColor-disabled);
243
274
  }
275
+
244
276
  .Button--invisible {
245
277
  color: var(--button-invisible-fgColor-rest);
246
278
  }
279
+
247
280
  .Button--invisible.Button--iconOnly {
248
281
  color: var(--button-invisible-iconColor-rest, var(--color-fg-muted));
249
282
  }
283
+
250
284
  .Button--invisible:hover:not(:disabled,.Button--inactive) {
251
285
  background-color: var(--control-transparent-bgColor-hover, var(--color-action-list-item-default-hover-bg));
252
286
  }
287
+
253
288
  .Button--invisible[aria-pressed='true'],.Button--invisible:active:not(:disabled) {
254
289
  background-color: var(--button-invisible-bgColor-active);
255
290
  }
291
+
256
292
  .Button--invisible:disabled,.Button--invisible[aria-disabled='true'] {
257
293
  color: var(--button-invisible-fgColor-disabled);
258
294
  fill: var(--button-invisible-fgColor-disabled);
259
295
  background-color: var(--button-invisible-bgColor-disabled);
260
296
  border-color: var(--button-invisible-borderColor-disabled);
261
297
  }
298
+
262
299
  /* if button has no visuals, use link blue for text */
300
+
263
301
  .Button--invisible.Button--invisible-noVisuals .Button-label {
264
302
  color: var(--button-invisible-fgColor-rest);
265
303
  }
304
+
266
305
  .Button--invisible .Button-visual {
267
306
  color: var(--button-invisible-iconColor-rest, var(--color-fg-muted));
268
307
  }
308
+
269
309
  :is(.Button--invisible .Button-visual) .Counter {
270
310
  color: var(--fgColor-default);
271
311
  }
312
+
272
313
  .Button--link {
273
314
  display: inline-block;
274
315
  min-width: fit-content;
@@ -279,22 +320,27 @@
279
320
  fill: var(--fgColor-link);
280
321
  border: none;
281
322
  }
323
+
282
324
  .Button--link:hover:not(:disabled,.Button--inactive) {
283
325
  -webkit-text-decoration: underline;
284
326
  text-decoration: underline;
285
327
  }
328
+
286
329
  .Button--link:focus-visible,.Button--link:focus {
287
330
  outline-offset: 2px;
288
331
  }
332
+
289
333
  .Button--link:disabled,.Button--link[aria-disabled='true'] {
290
334
  color: var(--control-fgColor-disabled);
291
335
  fill: var(--control-fgColor-disabled);
292
336
  background-color: transparent;
293
337
  border-color: transparent;
294
338
  }
339
+
295
340
  .Button--link .Button-label {
296
341
  white-space: unset;
297
342
  }
343
+
298
344
  /* danger */
299
345
  .Button--danger {
300
346
  color: var(--button-danger-fgColor-rest);
@@ -338,18 +384,22 @@
338
384
  color: var(--buttonCounter-danger-fgColor-rest);
339
385
  background-color: var(--buttonCounter-danger-bgColor-rest);
340
386
  }
387
+
341
388
  .Button--iconOnly {
342
389
  display: inline-grid;
343
390
  width: var(--control-medium-size);
344
391
  padding: unset;
345
392
  place-content: center;
346
393
  }
394
+
347
395
  .Button--iconOnly.Button--small {
348
396
  width: var(--control-small-size);
349
397
  }
398
+
350
399
  .Button--iconOnly.Button--large {
351
400
  width: var(--control-large-size);
352
401
  }
402
+
353
403
  /* `disabled` takes precedence over `inactive` */
354
404
  .Button--inactive:not([aria-disabled='true'], :disabled) {
355
405
  color: var(--button-inactive-fgColor);
@@ -3,7 +3,6 @@
3
3
  /* flash */
4
4
 
5
5
  /* Default flash */
6
-
7
6
  .flash:not(.Banner) {
8
7
  position: relative;
9
8
  padding: var(--base-size-20) var(--control-medium-paddingInline-spacious);
@@ -16,26 +15,21 @@
16
15
  border-width: var(--borderWidth-thin);
17
16
  border-radius: var(--borderRadius-medium);
18
17
  }
19
-
20
18
  .flash:not(.Banner) .octicon {
21
19
  margin-right: var(--base-size-12);
22
20
  color: var(--fgColor-accent);
23
21
  }
24
-
25
22
  /* stylelint-disable-next-line selector-max-type */
26
-
27
23
  .flash:not(.Banner) p:last-child {
28
24
  margin-bottom: 0;
29
25
  }
30
26
 
31
27
  /* Contain the flash messages */
32
-
33
28
  .flash-messages {
34
29
  margin-bottom: var(--stack-gap-spacious);
35
30
  }
36
31
 
37
32
  /* Close button */
38
-
39
33
  .flash-close:not(.Banner-close) {
40
34
  float: right;
41
35
  margin-top: calc(var(--base-size-4) * -1);
@@ -47,37 +41,30 @@
47
41
  border: 0;
48
42
  appearance: none;
49
43
  }
50
-
51
44
  .flash-close:not(.Banner-close):hover {
52
45
  opacity: 0.7;
53
46
  }
54
-
55
47
  .flash-close:not(.Banner-close):active {
56
48
  opacity: 0.5;
57
49
  }
58
-
59
50
  .flash-close:not(.Banner-close) .octicon {
60
51
  margin-right: 0;
61
52
  }
62
53
 
63
54
  /* Action button */
64
-
65
55
  .flash-action:not(.Banner-actions) {
66
56
  float: right;
67
57
  margin-top: -3px;
68
58
  margin-left: var(--stack-gap-spacious);
69
59
  background-clip: padding-box;
70
60
  }
71
-
72
61
  .flash-action.btn:not(.Banner-actions) .octicon {
73
62
  margin-right: var(--control-small-gap);
74
63
  color: var(--fgColor-muted);
75
64
  }
76
-
77
65
  .flash-action.btn-primary:not(.Banner-actions) {
78
66
  background-clip: border-box;
79
67
  }
80
-
81
68
  .flash-action.btn-primary:not(.Banner-actions) .octicon {
82
69
  color: inherit;
83
70
  }
@@ -123,7 +110,6 @@
123
110
  }
124
111
 
125
112
  /* A banner rendered at the top of the page. */
126
-
127
113
  .flash-banner {
128
114
  position: fixed;
129
115
  top: 0;
@@ -136,14 +122,12 @@
136
122
  }
137
123
 
138
124
  /* Makes sure the background is opaque to cover any content underneath */
139
-
140
125
  .flash-full,
141
126
  .flash-banner {
142
127
  background-color: var(--bgColor-default);
143
128
  }
144
129
 
145
130
  /* FIXME deprecate this */
146
-
147
131
  .warning {
148
132
  padding: 0.5em;
149
133
  margin-bottom: 0.8em;
@@ -1,7 +1,6 @@
1
1
  /* Labels */
2
2
 
3
3
  /* Provide a wrapper to ensure labels stick together */
4
-
5
4
  .labels {
6
5
  position: relative;
7
6
  }
@@ -38,7 +37,6 @@
38
37
 
39
38
  /* Doesn't increase height of parent element
40
39
  ** Can be used with different font-sizes */
41
-
42
40
  .Label--inline {
43
41
  display: inline;
44
42
  /* stylelint-disable-next-line primer/spacing */
@@ -54,7 +54,6 @@
54
54
 
55
55
  /* Set the link color only on hover
56
56
  Useful when you want only part of a link to turn blue on hover */
57
-
58
57
  .Link--onHover:hover {
59
58
  color: var(--fgColor-accent) !important;
60
59
  -webkit-text-decoration: underline;
@@ -64,7 +63,6 @@
64
63
 
65
64
  /* When using a color utility class inside of a link class
66
65
  color should change with link on hover. */
67
-
68
66
  :is(.Link--secondary,.Link--primary,.Link--muted):hover [class*='color-fg'] {
69
67
  color: inherit !important;
70
68
  }
@@ -17,6 +17,7 @@
17
17
  border-radius: var(--borderRadius-medium);
18
18
 
19
19
  /* adding !important to override utility classes used in dotcom */
20
+ /* stylelint-disable-next-line primer/box-shadow -- intentional legacy shadow var with fallback, kept for dotcom compatibility */
20
21
  box-shadow: var(--shadow-floating-legacy, var(--color-shadow-large)) !important;
21
22
 
22
23
  /* Carets */
@@ -47,133 +48,185 @@
47
48
  }
48
49
 
49
50
  /* No caret */
50
-
51
51
  .Popover-message--no-caret::before,.Popover-message--no-caret::after {
52
52
  display: none;
53
53
  }
54
54
 
55
- /* Bottom-oriented carets */
55
+ /* The caret variants below are authored as expanded per-class selectors
56
+ ** (rather than nesting `&::before`/`&::after` under a selector list) so each
57
+ ** rule's subject buckets by its own class during style recalc. The merged
58
+ ** `:is(.Popover-message--…, …)::before` form cannot be fast-rejected by Blink
59
+ ** and shows up as pure slow-path selector matching. */
56
60
 
57
- :is(.Popover-message--bottom,.Popover-message--bottom-right,.Popover-message--bottom-left)::before,:is(.Popover-message--bottom,.Popover-message--bottom-right,.Popover-message--bottom-left)::after {
58
- top: auto;
59
- border-bottom-color: transparent;
60
- }
61
+ /* Bottom-oriented carets */
62
+ .Popover-message--bottom::before,
63
+ .Popover-message--bottom::after,
64
+ .Popover-message--bottom-right::before,
65
+ .Popover-message--bottom-right::after,
66
+ .Popover-message--bottom-left::before,
67
+ .Popover-message--bottom-left::after {
68
+ top: auto;
69
+ border-bottom-color: transparent;
70
+ }
61
71
 
62
- :is(.Popover-message--bottom,.Popover-message--bottom-right,.Popover-message--bottom-left)::before {
63
- bottom: -16px;
64
- border-top-color: var(--borderColor-default);
65
- }
72
+ .Popover-message--bottom::before,
73
+ .Popover-message--bottom-right::before,
74
+ .Popover-message--bottom-left::before {
75
+ bottom: -16px;
76
+ border-top-color: var(--borderColor-default);
77
+ }
66
78
 
67
- :is(.Popover-message--bottom,.Popover-message--bottom-right,.Popover-message--bottom-left)::after {
68
- bottom: -14px;
69
- /* stylelint-disable-next-line primer/colors */
70
- border-top-color: var(--overlay-bgColor);
71
- }
79
+ .Popover-message--bottom::after,
80
+ .Popover-message--bottom-right::after,
81
+ .Popover-message--bottom-left::after {
82
+ bottom: -14px;
83
+ /* stylelint-disable-next-line primer/colors */
84
+ border-top-color: var(--overlay-bgColor);
85
+ }
72
86
 
73
87
  /* Top and Bottom: Right-oriented carets */
74
-
75
88
  .Popover-message--top-right,
76
89
  .Popover-message--bottom-right {
77
90
  right: -9px;
78
91
  margin-right: 0;
79
92
  }
80
93
 
81
- :is(.Popover-message--top-right,.Popover-message--bottom-right)::before,:is(.Popover-message--top-right,.Popover-message--bottom-right)::after {
82
- left: auto;
83
- margin-left: 0;
84
- }
94
+ .Popover-message--top-right::before,
95
+ .Popover-message--top-right::after,
96
+ .Popover-message--bottom-right::before,
97
+ .Popover-message--bottom-right::after {
98
+ left: auto;
99
+ margin-left: 0;
100
+ }
85
101
 
86
- :is(.Popover-message--top-right,.Popover-message--bottom-right)::before {
87
- right: var(--base-size-20);
88
- }
102
+ .Popover-message--top-right::before,
103
+ .Popover-message--bottom-right::before {
104
+ right: var(--base-size-20);
105
+ }
89
106
 
90
- :is(.Popover-message--top-right,.Popover-message--bottom-right)::after {
91
- right: var(--base-size-20);
92
- margin-right: 1px;
93
- }
107
+ .Popover-message--top-right::after,
108
+ .Popover-message--bottom-right::after {
109
+ right: var(--base-size-20);
110
+ margin-right: 1px;
111
+ }
94
112
 
95
113
  /* Top and Bottom: Left-oriented carets */
96
-
97
114
  .Popover-message--top-left,
98
115
  .Popover-message--bottom-left {
99
116
  left: -9px;
100
117
  margin-left: 0;
101
118
  }
102
119
 
103
- :is(.Popover-message--top-left,.Popover-message--bottom-left)::before,:is(.Popover-message--top-left,.Popover-message--bottom-left)::after {
104
- left: var(--base-size-24);
105
- margin-left: 0;
106
- }
120
+ .Popover-message--top-left::before,
121
+ .Popover-message--top-left::after,
122
+ .Popover-message--bottom-left::before,
123
+ .Popover-message--bottom-left::after {
124
+ left: var(--base-size-24);
125
+ margin-left: 0;
126
+ }
107
127
 
108
- :is(.Popover-message--top-left,.Popover-message--bottom-left)::after {
109
- left: var(--base-size-24);
110
- margin-left: 1px;
111
- }
128
+ .Popover-message--top-left::after,
129
+ .Popover-message--bottom-left::after {
130
+ left: var(--base-size-24);
131
+ margin-left: 1px;
132
+ }
112
133
 
113
134
  /* Right- and Left-oriented carets */
135
+ .Popover-message--right::before,
136
+ .Popover-message--right::after,
137
+ .Popover-message--right-top::before,
138
+ .Popover-message--right-top::after,
139
+ .Popover-message--right-bottom::before,
140
+ .Popover-message--right-bottom::after,
141
+ .Popover-message--left::before,
142
+ .Popover-message--left::after,
143
+ .Popover-message--left-top::before,
144
+ .Popover-message--left-top::after,
145
+ .Popover-message--left-bottom::before,
146
+ .Popover-message--left-bottom::after {
147
+ top: 50%;
148
+ left: auto;
149
+ margin-left: 0;
150
+ border-bottom-color: transparent;
151
+ }
114
152
 
115
- :is(.Popover-message--right,.Popover-message--right-top,.Popover-message--right-bottom,.Popover-message--left,.Popover-message--left-top,.Popover-message--left-bottom)::before,:is(.Popover-message--right,.Popover-message--right-top,.Popover-message--right-bottom,.Popover-message--left,.Popover-message--left-top,.Popover-message--left-bottom)::after {
116
- top: 50%;
117
- left: auto;
118
- margin-left: 0;
119
- border-bottom-color: transparent;
120
- }
121
-
122
- :is(.Popover-message--right,.Popover-message--right-top,.Popover-message--right-bottom,.Popover-message--left,.Popover-message--left-top,.Popover-message--left-bottom)::before {
123
- margin-top: -9px;
124
- }
153
+ .Popover-message--right::before,
154
+ .Popover-message--right-top::before,
155
+ .Popover-message--right-bottom::before,
156
+ .Popover-message--left::before,
157
+ .Popover-message--left-top::before,
158
+ .Popover-message--left-bottom::before {
159
+ margin-top: -9px;
160
+ }
125
161
 
126
- :is(.Popover-message--right,.Popover-message--right-top,.Popover-message--right-bottom,.Popover-message--left,.Popover-message--left-top,.Popover-message--left-bottom)::after {
127
- margin-top: -8px;
128
- }
162
+ .Popover-message--right::after,
163
+ .Popover-message--right-top::after,
164
+ .Popover-message--right-bottom::after,
165
+ .Popover-message--left::after,
166
+ .Popover-message--left-top::after,
167
+ .Popover-message--left-bottom::after {
168
+ margin-top: -8px;
169
+ }
129
170
 
130
171
  /* Right-oriented carets */
172
+ .Popover-message--right::before,
173
+ .Popover-message--right-top::before,
174
+ .Popover-message--right-bottom::before {
175
+ right: -16px;
176
+ border-left-color: var(--borderColor-default);
177
+ }
131
178
 
132
- :is(.Popover-message--right,.Popover-message--right-top,.Popover-message--right-bottom)::before {
133
- right: -16px;
134
- border-left-color: var(--borderColor-default);
135
- }
136
-
137
- :is(.Popover-message--right,.Popover-message--right-top,.Popover-message--right-bottom)::after {
138
- right: -14px;
139
- /* stylelint-disable-next-line primer/colors */
140
- border-left-color: var(--overlay-bgColor);
141
- }
179
+ .Popover-message--right::after,
180
+ .Popover-message--right-top::after,
181
+ .Popover-message--right-bottom::after {
182
+ right: -14px;
183
+ /* stylelint-disable-next-line primer/colors */
184
+ border-left-color: var(--overlay-bgColor);
185
+ }
142
186
 
143
187
  /* Left-oriented carets */
188
+ .Popover-message--left::before,
189
+ .Popover-message--left-top::before,
190
+ .Popover-message--left-bottom::before {
191
+ left: -16px;
192
+ border-right-color: var(--borderColor-default);
193
+ }
144
194
 
145
- :is(.Popover-message--left,.Popover-message--left-top,.Popover-message--left-bottom)::before {
146
- left: -16px;
147
- border-right-color: var(--borderColor-default);
148
- }
149
-
150
- :is(.Popover-message--left,.Popover-message--left-top,.Popover-message--left-bottom)::after {
151
- left: -14px;
152
- margin-bottom: 1px;
153
- /* stylelint-disable-next-line primer/colors */
154
- border-right-color: var(--overlay-bgColor);
155
- }
195
+ .Popover-message--left::after,
196
+ .Popover-message--left-top::after,
197
+ .Popover-message--left-bottom::after {
198
+ left: -14px;
199
+ margin-bottom: 1px;
200
+ /* stylelint-disable-next-line primer/colors */
201
+ border-right-color: var(--overlay-bgColor);
202
+ }
156
203
 
157
204
  /* Right and Left: Top-oriented carets */
158
-
159
- :is(.Popover-message--right-top,.Popover-message--left-top)::before,:is(.Popover-message--right-top,.Popover-message--left-top)::after {
160
- top: var(--base-size-24);
161
- }
205
+ .Popover-message--right-top::before,
206
+ .Popover-message--right-top::after,
207
+ .Popover-message--left-top::before,
208
+ .Popover-message--left-top::after {
209
+ top: var(--base-size-24);
210
+ }
162
211
 
163
212
  /* Right and Left: Bottom-oriented carets */
213
+ .Popover-message--right-bottom::before,
214
+ .Popover-message--right-bottom::after,
215
+ .Popover-message--left-bottom::before,
216
+ .Popover-message--left-bottom::after {
217
+ top: auto;
218
+ }
164
219
 
165
- :is(.Popover-message--right-bottom,.Popover-message--left-bottom)::before,:is(.Popover-message--right-bottom,.Popover-message--left-bottom)::after {
166
- top: auto;
167
- }
168
-
169
- :is(.Popover-message--right-bottom,.Popover-message--left-bottom)::before {
170
- bottom: var(--base-size-16);
171
- }
220
+ .Popover-message--right-bottom::before,
221
+ .Popover-message--left-bottom::before {
222
+ bottom: var(--base-size-16);
223
+ }
172
224
 
173
- :is(.Popover-message--right-bottom,.Popover-message--left-bottom)::after {
174
- bottom: var(--base-size-16);
175
- margin-bottom: 1px;
176
- }
225
+ .Popover-message--right-bottom::after,
226
+ .Popover-message--left-bottom::after {
227
+ bottom: var(--base-size-16);
228
+ margin-bottom: 1px;
229
+ }
177
230
 
178
231
  @media (min-width: 544px) {
179
232
  .Popover-message--large {