Fix Error 153 in Cloud Native Playground YouTube embed#1651
Fix Error 153 in Cloud Native Playground YouTube embed#1651PARTH-TUSSLE wants to merge 5 commits into
Conversation
Signed-off-by: PARTH-TUSSLE <parthgartan26feb@gmail.com>
There was a problem hiding this comment.
Code Review
This pull request updates the JourneyStep interface to change the video property from a boolean to a string, and updates JourneyModal to dynamically load the video source from data.video instead of using a hardcoded YouTube URL. It also adds a referrerPolicy attribute to the iframe. The reviewer suggested using a nullish coalescing operator (data.video ?? undefined) to prevent potential runtime issues or rendering an iframe with an invalid src="null" if data.video is null.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Parth Gartan <parthgartan26feb@gmail.com>
|
Add loading="lazy" to the iframe |
Signed-off-by: PARTH-TUSSLE <parthgartan26feb@gmail.com>
Thanks for the suggestion. |
chaitanyamedidar
left a comment
There was a problem hiding this comment.
Good! While you're at it, to ensure GDPR compliance and avoid strict browser cookie blockers, I'm thinking we should update the actual URL passed from the Meshery UI to use YouTube's official privacy-enhanced mode (https://www.youtube-nocookie.com/embed/Do7htKrRzDA) and drop the ?si= tracking parameter. What do you think?
That's a great idea! I've updated the URL in meshery/ui to use youtube-nocookie.com and removed the tracking parameter. Now the embedded video is much more privacy-friendly for anyone using the Meshery dashboard . I've also opened a PR in the meshery repo for the same -> meshery/meshery#20184 |
Signed-off-by: PARTH-TUSSLE <parthgartan26feb@gmail.com>
|
Thank you much for this, @PARTH-TUSSLE! 👏 |
miacycle
left a comment
There was a problem hiding this comment.
@PARTH-TUSSLE this needs to be implemented more thoughtfully. Use of nocookies domain is not ideal.
Another approach would be to keep the standard YouTube domain but implement proper error handling. If the player throws an error (like 153 due to a strict browser or ad-blocker), we should catch it and render a fallback UI - like a thumbnail with a direct "Watch on YouTube" link, so the user isn't just staring at an error state. |
b839a35 to
bf82887
Compare
Signed-off-by: Parth Gartan <parthgartan26feb@gmail.com>
22805c1 to
dcc4f5c
Compare
|
Hey @miacycle , I have updated the PR with a more thoughtful, robust solution, would appreciate a review |
Notes for Reviewers
Description
This PR addresses the "Error 153" video player configuration issue that occurs in the Cloud Native Playground modal (
JourneyModal.tsx) when viewed by users with strict privacy settings, browser shields (e.g., Brave), or ad-blockers.The Problem:
When strict privacy configurations block the YouTube iframe embed, the player throws a configuration error (Error 153).
The Solution:
To ensure a robust and graceful user experience, this PR introduces a permanent
FallbackLinkcomponent rendered immediately beneath the iframe.data.videoembed URL and transforms it into a direct YouTubewatch?v=hyperlink.Having trouble viewing? Watch on YouTube<Box>and<Link>components, ensuring it natively inherits Sistent's global theme, colors, and hover states without relying on hardcoded CSS or hex colors.This PR fixes #20118(meshery) -> meshery/meshery#20118
Signed commits