Skip to content

Ai workshop chapter list prototype - #14212

Draft
LilyL0u wants to merge 20 commits into
latestfrom
ai-workshop-chapter-list-prototype
Draft

Ai workshop chapter list prototype#14212
LilyL0u wants to merge 20 commits into
latestfrom
ai-workshop-chapter-list-prototype

Conversation

@LilyL0u

@LilyL0u LilyL0u commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

This piece of work was started in the WS AI workshop.

This pull request introduces a new, fully tested EpisodeDescriptionFormatter component for rendering podcast episode descriptions with support for chapter timecodes, clickable timestamps, and automatic URL linking. It also integrates this formatter into the On Demand Audio page, enhancing the display of episode synopses and chapter navigation. The update includes robust styling, analytics tracking for timestamp and link clicks, and comprehensive test coverage.

New Episode Description Formatting:

  • Added the EpisodeDescriptionFormatter component, which:
    • Parses episode descriptions into paragraphs and chapter lists based on timecodes (including inline and multi-format timecodes).
    • Renders clickable timestamp buttons that seek the audio player when a playerId is provided, with ATI click tracking for analytics.
    • Automatically detects and links URLs and bare domains in both paragraphs and chapter labels, with proper security attributes and click tracking.
    • Applies robust, theme-aware styling for paragraphs, links, chapters, and timestamps.

Testing and Type Safety:

  • Added a comprehensive test suite for EpisodeDescriptionFormatter, covering all parsing, rendering, player interaction, and tracking behaviors.
  • Updated the Player type to include the currentTime method for accurate player control in tests and implementation.

Integration and Usage:

Screenshot 2026-07-31 at 16 33 18 Screenshot 2026-07-31 at 16 33 27 Screenshot 2026-07-31 at 16 25 51 Screenshot 2026-07-31 at 16 28 11

Summary

A very high-level summary of easily-reproducible changes that can be understood by non-devs, and why these changes where made.

Code changes

  • List key code changes that have been made.

Testing

  1. List the steps required to test this PR.

Useful Links

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant