Skip to content

Conversation

@jerryzhou196
Copy link
Member

@jerryzhou196 jerryzhou196 commented Nov 3, 2025

playlist_demo

…imestamps

Added functionality to display the start and end timestamps of replays in the ReplayTable and ReplayDetails components. This allows users to navigate between replays with context on their timing, improving the overall user experience. Updated ReplayDetailsUserBadge to include navigation buttons for previous and next replays.
@github-actions github-actions bot added the Scope: Frontend Automatically applied to PRs that change frontend components label Nov 3, 2025
@jerryzhou196 jerryzhou196 changed the title feat(replays): Enhance replay details navigation with start and end timestamps feat(replays): add ability to travel to previous and next replay Nov 3, 2025
@codecov
Copy link

codecov bot commented Nov 3, 2025

❌ 1 Tests Failed:

Tests completed Failed Passed Skipped
12378 1 12377 10
View the top 1 failed test(s) by shortest run time
TransactionReplays should show a list of replays and have the correct values
Stack Traces | 0.333s run time
Error: expect(element).toHaveAttribute("href", ".../explore/replays/346789a703f6454384f1de473b8b9fcc/?project=1&query=test&referrer=replays%2F&statsPeriod=14d&yAxis=count%28%29") // element.getAttribute("href") === ".../explore/replays/346789a703f6454384f1de473b8b9fcc/?project=1&query=test&referrer=replays%2F&statsPeriod=14d&yAxis=count%28%29"

Expected the element to have attribute:
  href=".../explore/replays/346789a703f6454384f1de473b8b9fcc/?project=1&query=test&referrer=replays%2F&statsPeriod=14d&yAxis=count%28%29"
Received:
  href=".../explore/replays/346789a703f6454384f1de473b8b9fcc/?playlistEnd=2022-09-28T23%3A29%3A13&playlistStart=2022-09-14T23%3A29%3A13&project=1&query=test&referrer=replays%2F&sort=-started_at&yAxis=count%28%29"
    at Object.toHaveAttribute (.../transactionSummary/transactionReplays/index.spec.tsx:243:7)

To view more test analytics, go to the Test Analytics Dashboard
📋 Got 3 mins? Take this short survey to help us improve Test Analytics.

…ed props for next and previous replays in the ReplayDetailsUserBadge component, streamlining the code. Adjusted the loading placeholder height for better visual consistency. This change enhances the component's clarity and performance by eliminating unnecessary complexity
…ation Refactored the ReplayDetails component to use 'undefined' instead of 'null' for next and previous replay checks, enhancing clarity. Updated ReplayDetailsPageBreadcrumbs to include navigation buttons for previous and next replays, improving user experience by allowing seamless navigation between replays. This change streamlines the code and enhances the overall functionality of the replay details view.
Replaced the 'Next' icon in ReplayPlayPauseBar with 'IconChevron' for improved clarity. Refactored ReplayDetailsPageBreadcrumbs to utilize 'ButtonBar' for previous and next replay navigation buttons, enhancing the user interface and experience. This change streamlines the navigation between replays, making it more intuitive for users.
…d components

Refactored the ReplayTable component to streamline the handling of replay start times by removing the end timestamp logic. Updated related components to eliminate unnecessary props and improve clarity. This change enhances the overall performance and readability of the replay table, making it easier to manage replay data.
…ameters

- Imported `encodeSort` from `eventView` to handle sorting in the replay table.
- Updated the `ReplaySessionColumn` to utilize the new sorting mechanism without modifying the URL directly.
- Refactored query parameters in `ReplayDetails` to include `playlistStart` and improved handling of the `sort` parameter using `useUrlParams`.
- Exported `DEFAULT_SORT` from `useReplayTableSort` for broader accessibility.
@jerryzhou196 jerryzhou196 marked this pull request as ready for review November 5, 2025 21:31
@jerryzhou196 jerryzhou196 requested a review from a team as a code owner November 5, 2025 21:31
Updated the replay table component to calculate and pass the latest replay timestamp as 'end' instead of 'start'. Adjusted related components and queries to reflect this change, ensuring consistency across the application.
… and end dates when stats period is provided, improving date range handling in replay links.
@jerryzhou196
Copy link
Member Author

Testing Notes:

  • Conditionally renders playlist buttons if feature flag is enabled
  • Playlists are enabled as long as start, end and sort are passed
  • Playlists work for:
    • absolute / relative times
    • differing pages in the index page (first page, second page...)
    • sorted columns in desc/asc order
    • queries in search bar
    • most dead clicks / most rage clicks (disabled for these)
    • environment filter

jerryzhou196 added a commit that referenced this pull request Nov 8, 2025
…o IconChevron (#102985)

In prep for #102583, swap the `IconNext` logo with `IconChevron` to free
up for the replay playlist buttons.
…o IconChevron (#102985)

In prep for #102583, swap the `IconNext` logo with `IconChevron` to free
up for the replay playlist buttons.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Scope: Frontend Automatically applied to PRs that change frontend components

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants