diff --git a/CHANGELOG.md b/CHANGELOG.md index 8172a717db..305ec15fec 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,17 +1,36 @@ +## 14.4.0 + +### :rocket: Enhancements +- [#1089](https://github.com/primer/css/pull/1089) Accessible Progress + +### :bug: Bug fixes +- [#1060](https://github.com/primer/css/pull/1060) Add support for aria-current=false + +### :memo: Documentation +- [#1059](https://github.com/primer/css/pull/1059) Typo in scss.md +- [#1065](https://github.com/primer/css/pull/1065) Convert markdown page to one big example +- [#1075](https://github.com/primer/css/pull/1075) chore: add missing link to color utilities +- [#1067](https://github.com/primer/css/pull/1067) Add .text-gray-light to docs + +### Committers +- [@daniseguraf](https://github.com/daniseguraf) +- [@metonym](https://github.com/metonym) +- [@simurai](https://github.com/simurai) + ## 14.3.0 ### :rocket: Enhancements -- [#1044](https://github.com/primer/css/1044) Accessible form validation -- [#1028](https://github.com/primer/css/1028) Improve .form-group accessibility +- [#1044](https://github.com/primer/css/pull/1044) Accessible form validation +- [#1028](https://github.com/primer/css/pull/1028) Improve .form-group accessibility ### :bug: Bug fixes -- [#670](https://github.com/primer/css/670) Fix Box row top border -- [#1042](https://github.com/primer/css/1042) Fix UnderlineNav in Safari -- [#1035](https://github.com/primer/css/1035) Update UnderlineNav-item to not wrap counter & icon +- [#670](https://github.com/primer/css/pull/670) Fix Box row top border +- [#1042](https://github.com/primer/css/pull/1042) Fix UnderlineNav in Safari +- [#1035](https://github.com/primer/css/pull/1035) Update UnderlineNav-item to not wrap counter & icon ### :memo: Documentation -- [#1018](https://github.com/primer/css/1018) Update MIGRATING.md +- [#1018](https://github.com/primer/css/pull/1018) Update MIGRATING.md ### Committers - [@emplums](https://github.com/emplums) diff --git a/deprecations.js b/deprecations.js index 2520e727d6..659c9c78ab 100644 --- a/deprecations.js +++ b/deprecations.js @@ -4,13 +4,23 @@ * array and a "message" string. */ const versionDeprecations = { - '14.2.0': [ + '14.4.0': [ { selectors: [ - '.subnav-item.selected:hover', - '.subnav-item.selected:focus', - '.autocomplete-item[aria-selected="true"]', - '.autocomplete-item[aria-selected="true"] *' + '.breadcrumb-item[aria-current]', + '.breadcrumb-item[aria-current]::after', + '.menu-item[aria-current]', + '.menu-item[aria-current]::before', + '.tabnav-tab[aria-current]', + '.filter-item[aria-current]', + '.SideNav-item[aria-current="page"]', + '.SideNav-item[aria-current="page"]::before', + '.SideNav-subItem[aria-current="page"]', + '.subnav-item[aria-current]', + '.UnderlineNav-item[aria-current]', + '.UnderlineNav-item[aria-current] .UnderlineNav-octicon', + '.pagination [aria-current]', + '.pagination [aria-current]:hover' ], message: `These selectors are not needed anymore.` } diff --git a/docs/content/components/markdown.md b/docs/content/components/markdown.md index b65b2dfe5c..666a004229 100644 --- a/docs/content/components/markdown.md +++ b/docs/content/components/markdown.md @@ -7,6 +7,284 @@ bundle: markdown --- +```html live +
+

Text can be bold, italic, or strikethrough. Links should be blue with no underlines (unless hovered over).

+ +

There should be whitespace between paragraphs. There should be whitespace between paragraphs. There should be whitespace between paragraphs. There should be whitespace between paragraphs.

+ +

There should be whitespace between paragraphs. There should be whitespace between paragraphs. There should be whitespace between paragraphs. There should be whitespace between paragraphs.

+ +
+

There should be no margin above this first sentence.

+

Blockquotes should be a lighter gray with a gray border along the left side.

+

There should be no margin below this final sentence.

+
+ +

Header 1

+ +

This is a normal paragraph following a header. Bacon ipsum dolor sit amet t-bone doner shank drumstick, pork belly porchetta chuck sausage brisket ham hock rump pig. Chuck kielbasa leberkas, pork bresaola ham hock filet mignon cow shoulder short ribs biltong.

+ +

Header 2

+ +
This is a blockquote following a header. Bacon ipsum dolor sit amet t-bone doner shank drumstick, pork belly porchetta chuck sausage brisket ham hock rump pig. Chuck kielbasa leberkas, pork bresaola ham hock filet mignon cow shoulder short ribs biltong.
+ +

Header 3

+ +
This is a code block following a header.
+ +

Header 4

+ + + +
Header 5
+ +
    +
  1. This is an ordered list following a header.
  2. +
  3. This is an ordered list following a header.
  4. +
  5. This is an ordered list following a header.
  6. +
+ +
Header 6
+ + + + + + + + + + + + + + + + + + + + + + +
WhatFollows
A tableA header
A tableA header
A tableA header
+ +
+ +

There's a horizontal rule above and below this.

+ +
+ +

Here is an unordered list:

+ + + +

And an ordered list:

+ +
    +
  1. Michael Jackson
  2. +
  3. Michael Bolton
  4. +
  5. Michael Bublé
  6. +
+ +

And an unordered task list:

+ + + +

And a "mixed" task list:

+ + + + And a nested list: + + + +

Definition lists can be used with HTML syntax. Definition terms are bold and italic.

+ +
+
Name
+
Godzilla
+
Born
+
1952
+
Birthplace
+
Japan
+
Color
+
Green
+
+ +
+ +

Tables should have bold headings and alternating shaded rows.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ArtistAlbumYear
David BowieScary Monsters1980
PrincePurple Rain1982
Beastie BoysLicense to Ill1986
Janet JacksonRhythm Nation 18141989
+ +

If a table is too wide, it should condense down and/or scroll horizontally.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ArtistAlbumYearLabelSongs
David BowieScary Monsters1980RCA RecordsIt's No Game (No. 1), Up the Hill Backwards, Scary Monsters (And Super Creeps), Ashes to Ashes, Fashion, Teenage Wildlife, Scream Like a Baby, Kingdom Come, Because You're Young, It's No Game (No. 2)
PrincePurple Rain1982Warner Brothers RecordsLet's Go Crazy, Take Me With U, The Beautiful Ones, Computer Blue, Darling Nikki, When Doves Cry, I Would Die 4 U, Baby I'm a Star, Purple Rain
Beastie BoysLicense to Ill1986Def JamRhymin & Stealin, The New Style, She's Crafty, Posse in Effect, Slow Ride, Girls, Fight for Your Right, No Sleep till Brooklyn, Paul Revere, "Hold It Now, Hit It", Brass Monkey, Slow and Low, Time to Get Ill
Janet JacksonRhythm Nation 18141989A&MInterlude: Pledge, Rhythm Nation, Interlude: T.V., State of the World, Interlude: Race, The Knowledge, Interlude: Let's Dance, Miss You Much, Interlude: Come Back, Love Will Never Do (Without You), Livin' in a World (They Didn't Make), Alright, Interlude: Hey Baby, Escapade, Interlude: No Acid, Black Cat, Lonely, Come Back to Me, Someday Is Tonight, Interlude: Livin'...In Complete Darkness
+ +
+ +

Code snippets like var foo = "bar"; can be shown inline.

+ +

Also, this should vertically align with this and this.

+ +

Code can also be shown in a block element.

+ +
var foo = "bar";
+ +

Code can also use syntax highlighting.

+ +
var foo = "bar";
+ +
Long, single-line code blocks should not wrap. They should horizontally scroll if they are too long. This line should be long enough to demonstrate this.
+ +
var foo = "The same thing is true for code with syntax highlighting. A single line of code should horizontally scroll if it is really long.";
+ +

Inline code inside table cells should still be distinguishable.

+ + + + + + + + + + + + + + + + + + +
LanguageCode
JavasScriptvar foo = "bar";
Rubyfoo = "bar"
+ +
+ +

Small images should be shown at their actual size.

+ +

+ +

Large images should always scale down and fit in the content container.

+ +

+ +
This is the final element on the page and there should be no margin below this.
+
+``` + + + + + diff --git a/docs/content/components/progress.md b/docs/content/components/progress.md index 222c0a8a3d..f4ab7cf640 100644 --- a/docs/content/components/progress.md +++ b/docs/content/components/progress.md @@ -59,14 +59,16 @@ In cases where it's not possible to describe the progress in text, provide an `a ## Progress with multiple values -To show the progress of tasks in multiple states (such as "done", "in progress", and "open"), use distinct background color utilities and give each one a percentage width proportional to the total number. Children are stacked from left to right, so if your widths add up to 100%, your bars will too. +To show the progress of tasks in multiple states (such as "done", "in progress", and "open"), add the `Progress-item` class and a distinct background color utility. Then give each one a percentage width proportional to the total number. Children are stacked from left to right, so if your widths add up to 100%, your bars will too. Note that items with very low percentage values might not be visible if they are smaller than `1px` in width. ```html live
- - - + + + + +
``` diff --git a/docs/content/components/timeline.md b/docs/content/components/timeline.md index d8688c7986..16bcd11cda 100644 --- a/docs/content/components/timeline.md +++ b/docs/content/components/timeline.md @@ -44,7 +44,7 @@ The default TimelineItem-badge color is dark text on a light grey background. ### Adding color to TimelineItem-badge -To have color variants, use the [color utilities]() on the badge. Be cautious with color choices. We typically use them in the timeline to give meaning to the event in context of the timeline. +To have color variants, use the [color utilities](/utilities/colors) on the badge. Be cautious with color choices. We typically use them in the timeline to give meaning to the event in context of the timeline. ```html live @@ -186,4 +186,4 @@ To create a visual break in the timeline, use `TimelineItem-break`. This adds a Just now -``` \ No newline at end of file +``` diff --git a/docs/content/principles/scss.md b/docs/content/principles/scss.md index bcc75a1d4a..7f8f028dd6 100644 --- a/docs/content/principles/scss.md +++ b/docs/content/principles/scss.md @@ -22,7 +22,7 @@ path: priniciples/scss * Avoid specifying units for zero values, e.g., `margin: 0;` instead of `margin: 0px;`. * Strive to limit use of shorthand declarations to instances where you must explicitly set all the available values. -## Guidelines for using Sass feaures (WIP) +## Guidelines for using Sass features (WIP) _When and when not to create:_ * Variables diff --git a/package-lock.json b/package-lock.json index 5a83a4f95e..9ed98d215a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "@primer/css", - "version": "14.3.0", + "version": "14.4.0", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index a8e212335d..59ac3382c1 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@primer/css", - "version": "14.3.0", + "version": "14.4.0", "description": "Primer is the CSS framework that powers GitHub's front-end design. primer includes 23 packages that are grouped into 3 core meta-packages for easy install. Each package and meta-package is independently versioned and distributed via npm, so it's easy to include all or part of Primer within your own project.", "homepage": "https://primer.style/css", "author": "GitHub, Inc.", diff --git a/src/breadcrumb/breadcrumb.scss b/src/breadcrumb/breadcrumb.scss index bba77096f3..8986d6f9ea 100644 --- a/src/breadcrumb/breadcrumb.scss +++ b/src/breadcrumb/breadcrumb.scss @@ -19,7 +19,7 @@ } .breadcrumb-item-selected, -.breadcrumb-item[aria-current] { +.breadcrumb-item[aria-current]:not([aria-current=false]) { color: $text-gray; &::after { diff --git a/src/navigation/filter-list.scss b/src/navigation/filter-list.scss index 2d09947211..6a3d56243b 100644 --- a/src/navigation/filter-list.scss +++ b/src/navigation/filter-list.scss @@ -45,7 +45,7 @@ &.selected, &[aria-selected=true], - &[aria-current] { + &[aria-current]:not([aria-current=false]) { color: $text-white; background-color: $bg-blue; } diff --git a/src/navigation/menu.scss b/src/navigation/menu.scss index cc7e858f24..ba79b395b3 100644 --- a/src/navigation/menu.scss +++ b/src/navigation/menu.scss @@ -46,7 +46,7 @@ &.selected, &[aria-selected=true], - &[aria-current] { + &[aria-current]:not([aria-current=false]) { font-weight: $font-weight-bold; color: $text-gray-dark; cursor: default; diff --git a/src/navigation/sidenav.scss b/src/navigation/sidenav.scss index 35bffdd67f..96f554c4d2 100644 --- a/src/navigation/sidenav.scss +++ b/src/navigation/sidenav.scss @@ -60,7 +60,7 @@ background-color: $bg-white; } -.SideNav-item[aria-current="page"], +.SideNav-item[aria-current]:not([aria-current=false]), .SideNav-item[aria-selected="true"] { font-weight: $font-weight-semibold; color: $text-gray-dark; @@ -104,7 +104,7 @@ outline: none; } -.SideNav-subItem[aria-current="page"], +.SideNav-subItem[aria-current]:not([aria-current=false]), .SideNav-subItem[aria-selected="true"] { font-weight: $font-weight-semibold; color: $text-gray-dark; diff --git a/src/navigation/subnav.scss b/src/navigation/subnav.scss index f268a89f4b..e55bb33edf 100644 --- a/src/navigation/subnav.scss +++ b/src/navigation/subnav.scss @@ -41,7 +41,7 @@ &.selected, &[aria-selected=true], - &[aria-current] { + &[aria-current]:not([aria-current=false]) { z-index: 2; color: $text-white; background-color: $bg-blue; diff --git a/src/navigation/tabnav.scss b/src/navigation/tabnav.scss index fd90406168..9c6e6426db 100644 --- a/src/navigation/tabnav.scss +++ b/src/navigation/tabnav.scss @@ -31,7 +31,7 @@ &.selected, &[aria-selected=true], - &[aria-current] { + &[aria-current]:not([aria-current=false]) { color: $text-gray-dark; background-color: $bg-white; border-color: $border-gray-dark; diff --git a/src/navigation/underline-nav.scss b/src/navigation/underline-nav.scss index 7b9309d1b9..d2282d91f0 100644 --- a/src/navigation/underline-nav.scss +++ b/src/navigation/underline-nav.scss @@ -37,7 +37,7 @@ &.selected, &[role=tab][aria-selected=true], - &[aria-current] { + &[aria-current]:not([aria-current=false]) { font-weight: $font-weight-bold; color: $text-gray-dark; // stylelint-disable-next-line primer/borders diff --git a/src/pagination/pagination.scss b/src/pagination/pagination.scss index 253011d7bb..5dad1bbf21 100644 --- a/src/pagination/pagination.scss +++ b/src/pagination/pagination.scss @@ -50,8 +50,7 @@ .current, .current:hover, - [aria-current], - [aria-current]:hover { + [aria-current]:not([aria-current=false]) { z-index: 3; color: $text-white; background-color: $bg-blue; diff --git a/src/progress/progress.scss b/src/progress/progress.scss index 2b3addfd92..14098e9a70 100644 --- a/src/progress/progress.scss +++ b/src/progress/progress.scss @@ -16,3 +16,8 @@ .Progress--small { height: 5px; } + +.Progress-item + .Progress-item { + // stylelint-disable-next-line primer/spacing + margin-left: 2px; +}