Skip to content

Conversation

@kulesy
Copy link
Contributor

@kulesy kulesy commented Dec 30, 2025

Added test coverage for video link timestamp preservation to ensure query parameters (t=, start=) and hash fragments are correctly maintained in sanitized URLs. Tests cover:

  • YouTube standard format (/watch?v=...&t=...)
  • YouTube short format (youtu.be/...?t=...)
  • YouTube start parameter (&start=...)
  • Vimeo hash timestamps (#t=...s)

Fixes #6300

Added test coverage for video link timestamp preservation to ensure
query parameters (t=, start=) and hash fragments are correctly
maintained in sanitized URLs. Tests cover:

- YouTube standard format (/watch?v=...&t=...)
- YouTube short format (youtu.be/...?t=...)
- YouTube start parameter (&start=...)
- Vimeo hash timestamps (#t=...s)

Fixes #6300
@kulesy kulesy requested a review from a team as a code owner December 30, 2025 05:55
@changeset-bot
Copy link

changeset-bot bot commented Dec 30, 2025

⚠️ No Changeset found

Latest commit: f2ec93f

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@github-actions
Copy link
Contributor

github-actions bot commented Dec 30, 2025

Playwright E2E Test Results

passed  7 passed
skipped  2 skipped

Details

stats  9 tests across 6 suites
duration  31.1 seconds
commit  f2ec93f

Skipped tests

chromium › retain-input-value-from-localstorage.spec.ts › Local storage retain edit test
chromium › rich-text-editor/newline-parsing.spec.ts › should be able to parse newline from markdown

@0xharkirat
Copy link
Contributor

0xharkirat commented Dec 30, 2025

@kulesy For embed link it is ?start=90 but for normal youtube video link it is ?t=90s

Extended test coverage to include YouTube embed URLs (used in iframes)
which use the /embed/ path format and different timestamp parameters:

- YouTube embed with start parameter (?start=60)
- YouTube embed with multiple parameters (?start=60&autoplay=1)

These URLs are commonly used when embedding videos in iframes and
need to preserve their query parameters to maintain timestamp functionality.

Related to #6300
@kulesy kulesy changed the title Fix TinaCMS issue 6300 🚧 WIP - Fix TinaCMS issue 6300 Dec 30, 2025
Created comprehensive round-trip test (markdown → Plate → markdown) to
verify that video URLs with timestamp parameters are correctly preserved
throughout the entire editing flow.

Test cases cover:
- YouTube watch URLs with &t= parameter
- YouTube short URLs (youtu.be) with ?t= parameter
- YouTube embed URLs with ?start= parameter (for iframes)
- Vimeo URLs with #t= hash parameter

This test verifies that when a user:
1. Opens markdown with video links in the TinaCMS editor
2. Edits content in the rich text editor
3. Saves back to markdown

The video timestamp parameters are preserved correctly, ensuring
videos start at the specified time when links are clicked.

Fixes #6300
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.

🐛 Bug - Video Start Time Not Included in Link

4 participants