diff --git a/.changeset/perf-timeline-has-selector.md b/.changeset/perf-timeline-has-selector.md new file mode 100644 index 00000000000..1c232d9dbeb --- /dev/null +++ b/.changeset/perf-timeline-has-selector.md @@ -0,0 +1,7 @@ +--- +'@primer/react': patch +--- + +perf(Timeline): Document acceptable :has() selector usage with adjacent sibling + +Added documentation explaining the :has(+ [data-condensed]) selector is O(1) complexity. diff --git a/packages/react/src/Timeline/Timeline.module.css b/packages/react/src/Timeline/Timeline.module.css index 608df26e2eb..129e352d355 100644 --- a/packages/react/src/Timeline/Timeline.module.css +++ b/packages/react/src/Timeline/Timeline.module.css @@ -105,6 +105,7 @@ border: 0; border-top: var(--borderWidth-thicker) solid var(--borderColor-default); + /* NOTE: Uses adjacent sibling :has() - checks only the next sibling. O(1) complexity. */ &:has(+ [data-condensed]) { margin-bottom: calc(-1 * var(--base-size-12)); }