Skip to content

refactor(packages)!: extension renaming - #2600

Merged
mihar-22 merged 1 commit into
mainfrom
pr3/extension-naming
Sep 3, 2026
Merged

refactor(packages)!: extension renaming#2600
mihar-22 merged 1 commit into
mainfrom
pr3/extension-naming

Conversation

@mihar-22

@mihar-22 mihar-22 commented Sep 2, 2026

Copy link
Copy Markdown
Member

What this does

Names the framework-neutral extension classes with an Extension suffix and moves their defaults onto the class.

Package Before After
@videojs/mux-data MuxData, MuxDataProps, muxDataDefaultProps MuxDataExtension, MuxDataExtensionProps, MuxDataExtension.defaultProps
@videojs/google-cast GoogleCast, GoogleCastProps, googleCastDefaultProps GoogleCastExtension, GoogleCastExtensionProps, GoogleCastExtension.defaultProps
@videojs/html MuxDataElement, GoogleCastElement MuxDataExtension, GoogleCastExtension (tags unchanged)
@videojs/react MuxData, GoogleCast unchanged

The html element files import the base class under a *Base alias since both classes share a name, as the React façades already did.

Validation

Build, typecheck, lint, workspace check; @videojs/mux-data, @videojs/google-cast, @videojs/html, @videojs/react, and site tests.

🤖 Generated with Claude Code


Note

Low Risk
Mechanical rename and default-props relocation with no runtime behavior changes; breaking only for imports of removed symbols from @videojs/mux-data, @videojs/google-cast, or HTML element class names.

Overview
Breaking rename for framework-neutral and HTML extension APIs: MuxData / GoogleCast become MuxDataExtension / GoogleCastExtension, with props types renamed to *ExtensionProps. Standalone default objects (muxDataDefaultProps, googleCastDefaultProps) are removed in favor of static defaultProps on each class.

@videojs/html custom elements follow the same class names (MuxDataElement / GoogleCastElementMuxDataExtension / GoogleCastExtension); tag names stay mux-data and google-cast. Module entry points move from *-element files to extension.ts, importing the base package class under a *Base alias where names collide.

@videojs/react keeps public MuxData and GoogleCast components unchanged; they now register the renamed classes and sync props against Extension.defaultProps. Docs and the mux-data monitor lifecycle decision are updated to say MuxDataExtension.

Reviewed by Cursor Bugbot for commit d7b1402. Bugbot is set up for automated code reviews on this repo. Configure here.

@vercel

vercel Bot commented Sep 2, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
v10-sandbox Ready Ready Preview Sep 3, 2026 9:04pm UTC

Request Review

@pkg-pr-new

pkg-pr-new Bot commented Sep 2, 2026

Copy link
Copy Markdown
@videojs/cdn

pnpm add https://pkg.pr.new/videojs/v10/@videojs/cdn@2600

@videojs/cloudflare-video

pnpm add https://pkg.pr.new/videojs/v10/@videojs/cloudflare-video@2600

@videojs/core

pnpm add https://pkg.pr.new/videojs/v10/@videojs/core@2600

@videojs/dash-video

pnpm add https://pkg.pr.new/videojs/v10/@videojs/dash-video@2600

@videojs/element

pnpm add https://pkg.pr.new/videojs/v10/@videojs/element@2600

@videojs/google-cast

pnpm add https://pkg.pr.new/videojs/v10/@videojs/google-cast@2600

@videojs/hlsjs-video

pnpm add https://pkg.pr.new/videojs/v10/@videojs/hlsjs-video@2600

@videojs/html

pnpm add https://pkg.pr.new/videojs/v10/@videojs/html@2600

@videojs/media

pnpm add https://pkg.pr.new/videojs/v10/@videojs/media@2600

@videojs/mux-audio

pnpm add https://pkg.pr.new/videojs/v10/@videojs/mux-audio@2600

@videojs/mux-data

pnpm add https://pkg.pr.new/videojs/v10/@videojs/mux-data@2600

@videojs/mux-video

pnpm add https://pkg.pr.new/videojs/v10/@videojs/mux-video@2600

@videojs/native-hls-video

pnpm add https://pkg.pr.new/videojs/v10/@videojs/native-hls-video@2600

@videojs/react

pnpm add https://pkg.pr.new/videojs/v10/@videojs/react@2600

@videojs/shaka-video

pnpm add https://pkg.pr.new/videojs/v10/@videojs/shaka-video@2600

@videojs/spf

pnpm add https://pkg.pr.new/videojs/v10/@videojs/spf@2600

@videojs/spotify-audio

pnpm add https://pkg.pr.new/videojs/v10/@videojs/spotify-audio@2600

@videojs/store

pnpm add https://pkg.pr.new/videojs/v10/@videojs/store@2600

@videojs/tiktok-video

pnpm add https://pkg.pr.new/videojs/v10/@videojs/tiktok-video@2600

@videojs/twitch-video

pnpm add https://pkg.pr.new/videojs/v10/@videojs/twitch-video@2600

@videojs/utils

pnpm add https://pkg.pr.new/videojs/v10/@videojs/utils@2600

@videojs/vimeo-video

pnpm add https://pkg.pr.new/videojs/v10/@videojs/vimeo-video@2600

@videojs/wistia-video

pnpm add https://pkg.pr.new/videojs/v10/@videojs/wistia-video@2600

@videojs/youtube-video

pnpm add https://pkg.pr.new/videojs/v10/@videojs/youtube-video@2600

commit: 1cbad30

@github-actions

github-actions Bot commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

📦 Bundle Size Report

🎨 @videojs/html — no changes
Presets (7)
Entry Initial Lazy
/video (default) 62.68 kB 56.87 kB
/video (default + hls) 64.47 kB 56.87 kB
/video (minimal) 63.04 kB 56.87 kB
/video (minimal + hls) 64.81 kB 56.87 kB
/audio (default) 47.02 kB 56.87 kB
/audio (minimal) 47.23 kB 56.87 kB
/background 11.57 kB 56.87 kB
Media (18)
Entry Initial
/media/mux-video 3.02 kB
/media/mux-audio 2.69 kB
/media/background-video 1.16 kB
/media/cloudflare-video 2.89 kB
/media/dash-video 2.62 kB
/media/hls-audio 22.05 kB
/media/hls-background-video 16.80 kB
/media/hls-video 27.98 kB
/media/hlsjs-video 2.62 kB
/media/mux-background-video 16.83 kB
/media/native-hls-video 7.59 kB
/media/shaka-video 2.62 kB
/media/spotify-audio 3.01 kB
/media/tiktok-video 3.12 kB
/media/twitch-video 2.93 kB
/media/vimeo-video 2.90 kB
/media/wistia-video 604 B
/media/youtube-video 2.90 kB
Players (5)
Entry Initial Lazy
/video/player 9.70 kB 56.87 kB
/audio/player 6.14 kB 56.87 kB
/background/player 4.46 kB 56.87 kB
/live-video/player 9.06 kB 56.87 kB
/live-audio/player 6.15 kB 56.87 kB
Skins (29)
Entry Type Initial Lazy
/video/minimal-skin.css css 7.65 kB
/video/skin.css css 7.46 kB
/video/minimal-skin js 61.46 kB 56.87 kB
/video/minimal-skin2 js 8.09 kB
/video/skin js 61.34 kB 56.87 kB
/video/skin2 js 7.95 kB
/audio/minimal-skin.css css 5.53 kB
/audio/skin.css css 5.34 kB
/audio/minimal-skin js 45.76 kB 56.87 kB
/audio/minimal-skin2 js 5.83 kB
/audio/skin js 45.52 kB 56.87 kB
/audio/skin2 js 5.65 kB
/background/skin.css css 139 B
/background/skin js 9.81 kB 56.87 kB
/background/skin2 js 187 B
/live-video/minimal-skin.css css 6.21 kB
/live-video/skin.css css 6.18 kB
/live-video/minimal-skin js 49.42 kB 56.87 kB
/live-video/minimal-skin2 js 6.55 kB
/live-video/skin js 49.42 kB 56.87 kB
/live-video/skin2 js 6.58 kB
/live-audio/minimal-skin.css css 4.39 kB
/live-audio/skin.css css 4.37 kB
/live-audio/minimal-skin js 35.39 kB 56.87 kB
/live-audio/minimal-skin2 js 4.64 kB
/live-audio/skin js 35.40 kB 56.87 kB
/live-audio/skin2 js 4.63 kB
/global.css css 190 B
/shared.css css 118 B
UI Components (62)
Entry Initial Lazy
/ui/airplay-button 11.26 kB 56.87 kB
/ui/alert-dialog 8.79 kB 56.87 kB
/ui/audio-track-radio-group 11.38 kB 56.87 kB
/ui/buffering-indicator 8.61 kB 56.87 kB
/ui/captions-button 11.51 kB 56.87 kB
/ui/captions-radio-group 11.46 kB 56.87 kB
/ui/cast-button 11.25 kB 56.87 kB
/ui/container 9.47 kB 56.87 kB
/ui/controls 8.77 kB 56.87 kB
/ui/controls-backdrop 1.69 kB 56.87 kB
/ui/controls-content 1.67 kB 56.87 kB
/ui/dialog 8.73 kB 56.87 kB
/ui/dialog-backdrop 1.70 kB 56.87 kB
/ui/dialog-close 2.06 kB 56.87 kB
/ui/dialog-description 1.69 kB 56.87 kB
/ui/dialog-popup 1.90 kB 56.87 kB
/ui/dialog-title 1.70 kB 56.87 kB
/ui/error-dialog 12.38 kB 56.87 kB
/ui/fullscreen-button 11.27 kB 56.87 kB
/ui/gesture 9.56 kB 56.87 kB
/ui/hotkey 9.97 kB 56.87 kB
/ui/live-button 9.74 kB 56.87 kB
/ui/menu 18.45 kB 56.87 kB
/ui/menu-checkbox-item 1.97 kB 56.87 kB
/ui/menu-content 7.52 kB 56.87 kB
/ui/menu-group 2.09 kB 56.87 kB
/ui/menu-group-label 1.64 kB
/ui/menu-item 2.29 kB 56.87 kB
/ui/menu-item-indicator 1.37 kB 56.87 kB
/ui/menu-radio-group 3.01 kB 56.87 kB
/ui/menu-radio-item 2.13 kB 56.87 kB
/ui/menu-separator 1.30 kB 56.87 kB
/ui/mute-button 11.28 kB 56.87 kB
/ui/pip-button 11.22 kB 56.87 kB
/ui/play-button 11.23 kB 56.87 kB
/ui/playback-rate-button 11.32 kB 56.87 kB
/ui/playback-rate-radio-group 11.37 kB 56.87 kB
/ui/popover 8.57 kB 56.87 kB
/ui/poster 8.67 kB 56.87 kB
/ui/quality-radio-group 11.97 kB 56.87 kB
/ui/seek-button 11.27 kB 56.87 kB
/ui/seek-indicator 12.69 kB 56.87 kB
/ui/seek-indicator-value 1.10 kB
/ui/slider 11.65 kB 56.87 kB
/ui/slider-preview 2.01 kB 56.87 kB
/ui/status-announcer 10.59 kB 56.87 kB
/ui/status-indicator 13.02 kB 56.87 kB
/ui/status-indicator-value 1.10 kB
/ui/thumbnail 9.84 kB 56.87 kB
/ui/time 10.79 kB 56.87 kB
/ui/time-slider 12.99 kB 56.87 kB
/ui/time-slider-chapter-title 8.79 kB 56.87 kB
/ui/time-slider-chapters 9.63 kB 56.87 kB
/ui/title 8.17 kB 56.87 kB
/ui/tooltip 9.95 kB 56.87 kB
/ui/tooltip-label 1.21 kB
/ui/tooltip-shortcut 1.18 kB
/ui/volume-indicator 13.01 kB 56.87 kB
/ui/volume-indicator-fill 1.11 kB
/ui/volume-indicator-value 1.10 kB
/ui/volume-popover 14.74 kB 56.87 kB
/ui/volume-slider 12.31 kB 56.87 kB
⚛️ @videojs/react — 2 small size changes
Path Base initial PR initial Initial diff Lazy diff
/extensions/google-cast 1.60 kB 1.59 kB -11 B (-0.7%)
/extensions/mux-data 1.63 kB 1.63 kB -1 B (-0.1%)
Presets (7)
Entry Initial Lazy
/video (default) 50.60 kB 56.87 kB
/video (default + hls) 50.85 kB 56.87 kB
/video (minimal) 50.74 kB 56.87 kB
/video (minimal + hls) 50.94 kB 56.87 kB
/audio (default) 39.53 kB 56.87 kB
/audio (minimal) 39.57 kB 56.87 kB
/background 581 B 56.87 kB
Media (22)
Entry Initial
/media/mux-video/hls-js 986 B
/media/mux-video/spf 23.03 kB
/media/mux-audio/hls-js 733 B
/media/mux-audio/spf 19.49 kB
/media/background-video 402 B
/media/cloudflare-video 914 B
/media/dash-video 710 B
/media/hls-audio 20.32 kB
/media/hls-background-video 16.46 kB
/media/hls-video 26.33 kB
/media/hlsjs-video 711 B
/media/mux-audio 726 B
/media/mux-background-video 16.45 kB
/media/mux-video 980 B
/media/native-hls-video 5.76 kB
/media/shaka-video 711 B
/media/spotify-audio 902 B
/media/tiktok-video 908 B
/media/twitch-video 929 B
/media/vimeo-video 887 B
/media/wistia-video 619 B
/media/youtube-video 891 B
Extensions (2)
Entry Initial
/extensions/google-cast 1.59 kB
/extensions/mux-data 1.63 kB
Players (5)
Entry Initial Lazy
/video/player 7.56 kB 56.87 kB
/audio/player 4.00 kB 56.87 kB
/background/player 2.27 kB 56.87 kB
/live-video/player 6.95 kB 56.87 kB
/live-audio/player 3.99 kB 56.87 kB
Skins (18)
Entry Type Initial Lazy
/video/minimal-skin.css css 7.52 kB
/video/skin.css css 7.34 kB
/video/minimal-skin js 50.59 kB 56.87 kB
/video/skin js 50.49 kB 56.87 kB
/audio/minimal-skin.css css 5.37 kB
/audio/skin.css css 5.18 kB
/audio/minimal-skin js 39.47 kB 56.87 kB
/audio/skin js 39.41 kB 56.87 kB
/background/skin.css css 90 B
/background/skin js 277 B
/live-video/minimal-skin.css css 6.07 kB
/live-video/skin.css css 6.05 kB
/live-video/minimal-skin js 42.56 kB 56.87 kB
/live-video/skin js 42.52 kB 56.87 kB
/live-audio/minimal-skin.css css 4.24 kB
/live-audio/skin.css css 4.21 kB
/live-audio/minimal-skin js 30.37 kB 56.87 kB
/live-audio/skin js 30.35 kB 56.87 kB
UI Components (39)
Entry Initial Lazy
/ui/airplay-button 10.45 kB 56.87 kB
/ui/alert-dialog 4.73 kB 56.87 kB
/ui/audio-track 7.94 kB 56.87 kB
/ui/audio-track-radio-group 9.48 kB 56.87 kB
/ui/buffering-indicator 7.80 kB 56.87 kB
/ui/captions-button 10.44 kB 56.87 kB
/ui/captions-radio-group 9.59 kB 56.87 kB
/ui/cast-button 10.44 kB 56.87 kB
/ui/controls 7.71 kB 56.87 kB
/ui/dialog 4.75 kB 56.87 kB
/ui/error-dialog 11.80 kB 56.87 kB
/ui/fullscreen-button 10.40 kB 56.87 kB
/ui/gesture 7.99 kB 56.87 kB
/ui/hotkey 8.38 kB 56.87 kB
/ui/live-button 8.80 kB 56.87 kB
/ui/menu 19.45 kB 56.87 kB
/ui/mute-button 10.44 kB 56.87 kB
/ui/pip-button 10.39 kB 56.87 kB
/ui/play-button 10.37 kB 56.87 kB
/ui/playback-rate 7.99 kB 56.87 kB
/ui/playback-rate-button 10.37 kB 56.87 kB
/ui/playback-rate-radio-group 9.53 kB 56.87 kB
/ui/popover 8.16 kB 56.87 kB
/ui/poster 7.57 kB 56.87 kB
/ui/quality 8.42 kB 56.87 kB
/ui/quality-radio-group 9.95 kB 56.87 kB
/ui/seek-button 10.41 kB 56.87 kB
/ui/seek-indicator 11.98 kB 56.87 kB
/ui/slider 12.76 kB 56.87 kB
/ui/status-announcer 10.10 kB 56.87 kB
/ui/status-indicator 12.29 kB 56.87 kB
/ui/thumbnail 8.73 kB 56.87 kB
/ui/time 9.77 kB 56.87 kB
/ui/time-slider 14.17 kB 56.87 kB
/ui/title 7.28 kB 56.87 kB
/ui/tooltip 8.93 kB 56.87 kB
/ui/volume-indicator 12.33 kB 56.87 kB
/ui/volume-popover 14.20 kB 56.87 kB
/ui/volume-slider 12.14 kB 56.87 kB
🧩 @videojs/core — no changes
Entries (76)
Entry Initial Lazy
. 13.15 kB
/dom 22.53 kB 56.87 kB
/vjsc 1.82 kB
/i18n 3.23 kB 56.87 kB
/i18n/locales/all 34.97 kB
/i18n/locales/ar 1.22 kB
/i18n/locales/az 1.09 kB
/i18n/locales/bg 1.29 kB
/i18n/locales/bn 1.23 kB
/i18n/locales/bs 1.00 kB
/i18n/locales/ca 1.07 kB
/i18n/locales/cs 1.07 kB
/i18n/locales/cy 1.02 kB
/i18n/locales/da 1006 B
/i18n/locales/de 1.09 kB
/i18n/locales/el 1.49 kB
/i18n/locales/en 785 B
/i18n/locales/es 1018 B
/i18n/locales/et 1.05 kB
/i18n/locales/eu 1.03 kB
/i18n/locales/fa 1.22 kB
/i18n/locales/fi 1.04 kB
/i18n/locales/fr 1.07 kB
/i18n/locales/gd 1.10 kB
/i18n/locales/gl 1022 B
/i18n/locales/he 1.14 kB
/i18n/locales/hi 1.30 kB
/i18n/locales/hr 1.02 kB
/i18n/locales/hu 1.10 kB
/i18n/locales/id 919 B
/i18n/locales/it 1.01 kB
/i18n/locales/ja 1.18 kB
/i18n/locales/ko 1.14 kB
/i18n/locales/lt 1.02 kB
/i18n/locales/lv 1.09 kB
/i18n/locales/mr 1.30 kB
/i18n/locales/nb 987 B
/i18n/locales/ne 1.29 kB
/i18n/locales/nl 1.00 kB
/i18n/locales/nn 987 B
/i18n/locales/oc 1.08 kB
/i18n/locales/pl 1.14 kB
/i18n/locales/pt 1.03 kB
/i18n/locales/pt-BR 1.03 kB
/i18n/locales/pt-PT 1.01 kB
/i18n/locales/ro 1.07 kB
/i18n/locales/ru 1.40 kB
/i18n/locales/sk 1.10 kB
/i18n/locales/sl 1.04 kB
/i18n/locales/sr 1.07 kB
/i18n/locales/sv 1.01 kB
/i18n/locales/te 1.32 kB
/i18n/locales/th 1.29 kB
/i18n/locales/tr 1.08 kB
/i18n/locales/uk 1.41 kB
/i18n/locales/vi 1.11 kB
/i18n/locales/zh 1.02 kB
/i18n/locales/zh-CN 1.02 kB
/i18n/locales/zh-TW 1.02 kB
/i18n/text/airplay 101 B
/i18n/text/buttons 137 B
/i18n/text/captions 93 B
/i18n/text/cast 114 B
/i18n/text/common 90 B
/i18n/text/container 75 B
/i18n/text/errors 285 B
/i18n/text/fullscreen 98 B
/i18n/text/live 126 B
/i18n/text/menu 249 B
/i18n/text/pip 101 B
/i18n/text/playback 80 B
/i18n/text/seek 105 B
/i18n/text/slider 65 B
/i18n/text/status 222 B
/i18n/text/time 280 B
/i18n/text/volume 133 B
🏷️ @videojs/element — no changes
Entries (2)
Entry Initial
. 1.05 kB
/context 943 B
📦 @videojs/store — no changes
Entries (3)
Entry Initial
. 1.72 kB
/html 703 B
/react 365 B
🔧 @videojs/utils — no changes
Entries (13)
Entry Initial
/array 271 B
/dom 5.02 kB
/events 320 B
/function 386 B
/i18n 249 B
/jwt 176 B
/object 535 B
/predicate 297 B
/percent 281 B
/string 239 B
/style 212 B
/time 976 B
/number 199 B
📦 @videojs/cdn — no changes
📦 @videojs/cloudflare-video — no changes
📦 @videojs/dash-video — no changes
📦 @videojs/google-cast — 1 small size change
Path Base initial PR initial Initial diff Lazy diff
. 4.06 kB 4.07 kB +15 B (+0.4%)
📦 @videojs/hlsjs-video — no changes
📦 @videojs/media — no changes
Entries (3)
Entry Initial
. 1.12 kB
/dom 4.11 kB
/media-tracks 2.05 kB
📦 @videojs/mux — no changes
📦 @videojs/mux-audio — no changes
Entries (2)
Entry Initial
. 135.55 kB
/spf 20.84 kB
📦 @videojs/mux-data — 1 small size change
Path Base initial PR initial Initial diff Lazy diff
. 24.26 kB 24.28 kB +24 B (+0.1%)
📦 @videojs/mux-video — no changes
Entries (2)
Entry Initial
. 135.59 kB
/spf 26.70 kB
📦 @videojs/native-hls-video — no changes
📦 @videojs/shaka-video — no changes
📦 @videojs/spf — no changes
Entries (7)
Entry Initial
. 4.55 kB
/dom 6.60 kB
/hls 22.06 kB
/media-tracks 504 B
/hls-background-video 15.89 kB
/hls-audio 19.83 kB
/hls-video 25.89 kB
📦 @videojs/spotify-audio — no changes
📦 @videojs/tiktok-video — no changes
📦 @videojs/twitch-video — no changes
📦 @videojs/vimeo-video — no changes
📦 @videojs/wistia-video — no changes
Entries (2)
Entry Initial
. 1.91 kB
/helpers 1.81 kB
📦 @videojs/youtube-video — no changes

ℹ️ How to interpret

Each entry is independently bundled, minified, and brotli-compressed. Initial size includes its static import graph; lazy dynamic chunks are reported separately.

Entries are not additive because their dependency graphs overlap. Preset rows represent realistic combined bundles.

Changes of 300 B or less across initial, lazy, and total size are collapsed, not discarded.

Run pnpm size locally to check current initial sizes.

@netlify

netlify Bot commented Sep 3, 2026

Copy link
Copy Markdown

Deploy Preview for vjs10-site ready!

Name Link
🔨 Latest commit d7b1402
🔍 Latest deploy log https://app.netlify.com/projects/vjs10-site/deploys/6a99e0642686fe00085e6937
😎 Deploy Preview https://deploy-preview-2600--vjs10-site.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the file name google-cast-extension.ts should be just extension.ts to follow the adapter pattern.
the folder name already indicates what extension it is

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Renamed in 0e19841 to extension.ts; the folder names the extension. Nothing in the reference builder or workspace tooling keyed on the old file names, only the barrels and tests, which follow the file.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the file name mux-data-extension.ts should be just extension.ts to follow the adapter pattern.
the folder name already indicates what extension it is

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Renamed in 0e19841 to extension.ts; the folder names the extension. Nothing in the reference builder or workspace tooling keyed on the old file names, only the barrels and tests, which follow the file.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should this follow the same pattern then? make the file name extension.tsx

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, renamed in 0e19841 to extension.tsx to match html.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should this follow the same pattern then? make the file name extension.tsx

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, renamed in 0e19841 to extension.tsx to match html.

@github-actions

github-actions Bot commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

E2E triage: inconclusive#2621. The registry consumer cannot resolve the optional @videojs/hlsjs-video peer while building its HLS overlay; the base SHA fails identically, so this is not established as a regression from this extension-renaming PR.

The framework-neutral extension classes and their props/defaults gain the
`Extension` suffix so the kind is visible at the import site:

- `@videojs/mux-data`: `MuxData` -> `MuxDataExtension`, `MuxDataProps` ->
  `MuxDataExtensionProps`, `muxDataDefaultProps` -> `muxDataExtensionDefaultProps`
- `@videojs/google-cast`: `GoogleCast` -> `GoogleCastExtension`, and the same
  for its props and defaults

The html elements follow the same scheme (`MuxDataElement` ->
`MuxDataExtension`, `GoogleCastElement` -> `GoogleCastExtension`); their tags
and the React façade names (`MuxData`, `GoogleCast`) are unchanged.

BREAKING CHANGE: the exports listed above are renamed.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@mihar-22
mihar-22 force-pushed the pr3/extension-naming branch from 4f07d14 to d7b1402 Compare September 3, 2026 21:02
@mihar-22
mihar-22 merged commit 7075d1f into main Sep 3, 2026
12 of 13 checks passed
@mihar-22
mihar-22 deleted the pr3/extension-naming branch September 3, 2026 21:04
@videojs-release videojs-release Bot mentioned this pull request Sep 3, 2026
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.

2 participants