Skip to content

Commit 9c1612a

Browse files
authored
Icon SlashForward Replacing Chevron in Breadcrumbs (#104120)
## Problem Both in the Replay Details and Span Waterfall, we have this ability to paginate to sibling events. However, the implementations are inconsistent. ### Replay Details <img width="2880" height="2042" alt="CleanShot 2025-11-28 at 14 04 39@2x" src="https://github.com/user-attachments/assets/ff6a81ce-dda5-4db6-b775-a3183a957eaf" /> ### Span Waterfall <img width="2880" height="2042" alt="CleanShot 2025-11-28 at 14 06 48@2x" src="https://github.com/user-attachments/assets/5fda7778-712d-4dfe-aa9b-e2c6a4f5fe2b" /> ## Goal This PR isn't about implementing the pagination UI consistently; rather, it's about modifying the breadcrumbs UI so that we can reach that end goal. Specifically, this PR swaps out the chevron icon for a forward slash (new icon). ### Before <img width="2352" height="277" alt="CleanShot 2025-11-28 at 13 58 09@2x" src="https://github.com/user-attachments/assets/8e4c6638-7785-4060-b0a4-1ba978589989" /> ### After <img width="2351" height="278" alt="CleanShot 2025-11-28 at 13 58 37@2x" src="https://github.com/user-attachments/assets/9ada7a5f-13a9-48dd-824e-e6fdb2fc01a1" /> ## Solution We're making this change because we want to reach an end goal where we have this ### Ideal end state <img width="1978" height="284" alt="CleanShot 2025-11-28 at 14 26 50@2x" src="https://github.com/user-attachments/assets/b3026ca0-3b8d-4898-bf76-933cf74e80b6" /> ### End state without this change <img width="1976" height="286" alt="CleanShot 2025-11-28 at 14 27 33@2x" src="https://github.com/user-attachments/assets/02d49a61-cae7-4db2-85ce-eb77cfedafbf" /> ## Solution Explanation In the realm of computing, the slash is frequently used to indicate a file path.
1 parent 918b716 commit 9c1612a

File tree

4 files changed

+20
-2
lines changed

4 files changed

+20
-2
lines changed

static/app/components/breadcrumbs.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import {Text} from '@sentry/scraps/text';
66
import type {LinkProps} from 'sentry/components/core/link';
77
import {Link} from 'sentry/components/core/link';
88
import GlobalSelectionLink from 'sentry/components/globalSelectionLink';
9-
import {IconChevron} from 'sentry/icons';
9+
import {IconSlashForward} from 'sentry/icons';
1010
import {trackAnalytics} from 'sentry/utils/analytics';
1111

1212
export interface Crumb {
@@ -57,7 +57,7 @@ export function Breadcrumbs({crumbs, ...props}: BreadcrumbsProps) {
5757
/>
5858
{index < crumbs.length - 1 ? (
5959
<Flex align="center" justify="center" flexShrink={0}>
60-
<IconChevron size="xs" direction="right" color="subText" />
60+
<IconSlashForward size="xs" color="subText" />
6161
</Flex>
6262
) : null}
6363
</Fragment>
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import type {SVGIconProps} from './svgIcon';
2+
import {SvgIcon} from './svgIcon';
3+
4+
export function IconSlashForward(props: SVGIconProps) {
5+
return (
6+
<SvgIcon {...props}>
7+
<path d="M9.544 1.496a.751.751 0 0 1 1.412.508l-4.5 12.5a.75.75 0 0 1-1.412-.508z" />
8+
</SvgIcon>
9+
);
10+
}

static/app/icons/icons.stories.tsx

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -644,6 +644,13 @@ const SECTIONS: TSection[] = [
644644
direction: 'down',
645645
},
646646
},
647+
{
648+
id: 'slashFoward',
649+
groups: ['navigation'],
650+
keywords: ['breadcrumbs', 'directory'],
651+
name: 'SlashForward',
652+
defaultProps: {},
653+
},
647654
],
648655
},
649656
{

static/app/icons/index.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,7 @@ export {IconSentryPrideLogo} from './iconSentryPrideLogo';
113113
export {IconSettings} from './iconSettings';
114114
export {IconShow} from './iconShow';
115115
export {IconSiren} from './iconSiren';
116+
export {IconSlashForward} from './iconSlashForward';
116117
export {IconSliders} from './iconSliders';
117118
export {IconSort} from './iconSort';
118119
export {IconSound} from './iconSound';

0 commit comments

Comments
 (0)