Skip to content

feat(component): Add Breadcrumb component#2930

Merged
vprothais merged 23 commits intoouds/mainfrom
ouds/main-2896-create-component---breadcrumb
May 7, 2025
Merged

feat(component): Add Breadcrumb component#2930
vprothais merged 23 commits intoouds/mainfrom
ouds/main-2896-create-component---breadcrumb

Conversation

@MaxLardenois
Copy link
Collaborator

@MaxLardenois MaxLardenois commented Mar 27, 2025

Note: Please transform - [ ] into - (NA) in the description when things are not applicable

Related issues

closes #2896

Description

Motivation & Context

Types of change

  • New feature (non-breaking change which adds functionality)

Live previews

Checklist

Contribution

Accessibility

  • My change follows accessibility good practices; I have at least run axe

Design

  • My change respects the design guidelines defined in Orange Design System
  • My change is compatible with a responsive display

Development

  • My change follows the developer guide
  • I have added JavaScript unit tests to cover my changes
  • I have added SCSS unit tests to cover my changes

Documentation

  • My change introduces changes to the documentation and/or I have updated the documentation accordingly

Checklist (for Core Team only)

  • My change introduces changes to the migration guide
  • My new component is well displayed in Storybook
  • My new component is compatible with RTL
  • Manually run BrowserStack tests
  • Manually test browser compatibility with BrowserStack (Chrome >= 60, Firefox >= 60 (+ ESR), Edge, Safari >= 12, iOS Safari, Chrome & Firefox on Android)
  • Code review
  • Design review
  • A11y review

After the merge

@netlify
Copy link

netlify bot commented Mar 27, 2025

Deploy Preview for boosted ready!

Name Link
🔨 Latest commit 0e4a666
🔍 Latest deploy log https://app.netlify.com/sites/boosted/deploys/681b20497736d800089aadc7
😎 Deploy Preview https://deploy-preview-2930--boosted.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

@MaxLardenois MaxLardenois added the 📖 documentation Improvements or additions to documentation label Mar 27, 2025
@MaxLardenois MaxLardenois force-pushed the ouds/main-2896-create-component---breadcrumb branch from 00ec9d2 to 2303ca1 Compare March 27, 2025 14:33
@louismaximepiton louismaximepiton linked an issue Apr 4, 2025 that may be closed by this pull request
@MaxLardenois MaxLardenois force-pushed the ouds/main-2896-create-component---breadcrumb branch 2 times, most recently from 6710038 to bf0f317 Compare April 8, 2025 12:56
@MaxLardenois MaxLardenois force-pushed the ouds/main-2896-create-component---breadcrumb branch from bf0f317 to f5d1ec8 Compare April 9, 2025 12:17
@MaxLardenois MaxLardenois marked this pull request as ready for review April 9, 2025 13:13
@boosted-bot boosted-bot moved this from In Progress / Draft to Need Dev Review in 🟣 [Orange-Boosted-Bootstrap] PRs Board Apr 9, 2025
Copy link
Member

@louismaximepiton louismaximepiton left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I didn't finished the review of the CSS yet, but here is a first draft of the review

@boosted-bot boosted-bot moved this from Need Dev Review to Dev Review In Progress in 🟣 [Orange-Boosted-Bootstrap] PRs Board Apr 11, 2025
Copy link
Member

@louismaximepiton louismaximepiton left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Finished the review on my side.
I'm still convinced we could do better for the CSS by avoiding repeating the svg acall, however, as a first version, I'm fine landig it as-is.
Just small changes for me and wait for a11y review maybe ?

//

$breadcrumb-divider-filter-dark: $invert-filter !default; // OUDS mod
// OUDS mod: no $accordion-button-icon-dark
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove

flex-shrink: 0;
width: $ouds-breadcrumb-size-icon;
height: $ouds-breadcrumb-size-icon;
margin-right: var(--#{$prefix}breadcrumb-item-padding-links) #{"/* rtl:ignore */"}; // OUDS mod
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
margin-right: var(--#{$prefix}breadcrumb-item-padding-links) #{"/* rtl:ignore */"}; // OUDS mod
margin-right: var(--#{$prefix}breadcrumb-item-padding-links); // OUDS mod

---

{{< callout-soon >}}
## Example
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Align with other pages

Suggested change
## Example
## Basic example

{{< /example >}}


## Responsive behavior
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's quite not the responsive behavior, but I can't find better words

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"Behaviour on smaller screens" ?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tried something

</ol>
</nav>

<nav aria-label="breadcrumb">
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe we should find different labels for the a11y of the page ?

@vprothais vprothais self-assigned this Apr 29, 2025
Use an ordered or unordered list with linked list items to create a minimally styled breadcrumb.

{{< example >}}
<nav aria-label="breadcrumb-basic">
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

aria-label must contain a string that will be read by the vocal assistant. It is not a reference to an id or another element, so I think we can remove the hyphen in each aria-label of this page to get better vocalization.

@mixin has-separator() {
padding-left: var(--#{$prefix}breadcrumb-item-padding-icon);

&::before {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As talked together, we could change for an after pseudo element, so we could display it for every item but the last, and don't have to add it only for the first shown element. It would be simpler to manage the "responsive" part and reduce duplicated generated code related to the placehoder.

@boosted-bot boosted-bot moved this from Dev Review In Progress to Need Lead Dev Review in 🟣 [Orange-Boosted-Bootstrap] PRs Board May 7, 2025
@vprothais vprothais merged commit 2db9f98 into ouds/main May 7, 2025
13 checks passed
@vprothais vprothais deleted the ouds/main-2896-create-component---breadcrumb branch May 7, 2025 09:46
@github-project-automation github-project-automation bot moved this from Need Lead Dev Review to Done in 🟣 [Orange-Boosted-Bootstrap] PRs Board May 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

⚛️ component 📖 documentation Improvements or additions to documentation

Projects

Development

Successfully merging this pull request may close these issues.

[OUDS] Create component - Breadcrumb

3 participants