fix(react, html): rename MediaProvider (and related) to VideoProvider (#159)

This commit is contained in:
Christian Pillsbury
2025-11-04 07:34:10 -08:00
committed by GitHub
parent 16cfde138d
commit f28557359c
38 changed files with 140 additions and 140 deletions
@@ -1,4 +1,4 @@
import { FrostedSkin, MediaProvider, Video } from '@videojs/react';
import { FrostedSkin, Video, VideoProvider } from '@videojs/react';
import { VJS8_DEMO_VIDEO } from '@/consts';
import '@videojs/react/skins/frosted.css';
@@ -14,7 +14,7 @@ import '@videojs/react/skins/frosted.css';
*/
export function FrostedSkinDemo() {
return (
<MediaProvider>
<VideoProvider>
<FrostedSkin className="w-full aspect-video rounded-3xl">
<Video
src={VJS8_DEMO_VIDEO.hls}
@@ -22,6 +22,6 @@ export function FrostedSkinDemo() {
playsInline
/>
</FrostedSkin>
</MediaProvider>
</VideoProvider>
);
}
@@ -8,7 +8,7 @@ import styles from './FullscreenButton.module.css';
* - Data attribute state selectors
* - Enter/exit fullscreen functionality
*
* Note: This component must be used within a MediaProvider context.
* Note: This component must be used within a VideoProvider context.
* See the usage example in the documentation.
*/
export function BasicFullscreenButton() {
@@ -1,15 +1,15 @@
import { MediaContainer, MediaProvider, Video } from '@videojs/react';
import { MediaContainer, Video, VideoProvider } from '@videojs/react';
import { VJS8_DEMO_VIDEO } from '@/consts';
import { BasicFullscreenButton } from './BasicFullscreenButton';
/**
* Demo showing proper MediaProvider usage with FullscreenButton.
* Demo showing proper VideoProvider usage with FullscreenButton.
* The FullscreenButton automatically toggles fullscreen mode for
* the containing MediaContainer.
*/
export function FullscreenButtonDemo() {
return (
<MediaProvider>
<VideoProvider>
<MediaContainer style={{ position: 'relative', zIndex: 10 }}>
<Video
src={VJS8_DEMO_VIDEO.hls}
@@ -20,6 +20,6 @@ export function FullscreenButtonDemo() {
<BasicFullscreenButton />
</div>
</MediaContainer>
</MediaProvider>
</VideoProvider>
);
}
@@ -1,4 +1,4 @@
import { MediaProvider, MinimalSkin, Video } from '@videojs/react';
import { MinimalSkin, Video, VideoProvider } from '@videojs/react';
import { VJS8_DEMO_VIDEO } from '@/consts';
import '@videojs/react/skins/minimal.css';
@@ -13,7 +13,7 @@ import '@videojs/react/skins/minimal.css';
*/
export function MinimalSkinDemo() {
return (
<MediaProvider>
<VideoProvider>
<MinimalSkin className="w-full aspect-video">
<Video
src={VJS8_DEMO_VIDEO.hls}
@@ -21,6 +21,6 @@ export function MinimalSkinDemo() {
playsInline
/>
</MinimalSkin>
</MediaProvider>
</VideoProvider>
);
}
@@ -8,7 +8,7 @@ import styles from './MuteButton.module.css';
* - Volume level data attributes
* - Smooth icon transitions
*
* Note: This component must be used within a MediaProvider context.
* Note: This component must be used within a VideoProvider context.
* See the usage example in the documentation.
*/
export function BasicMuteButton() {
@@ -1,15 +1,15 @@
import { MediaContainer, MediaProvider, Video } from '@videojs/react';
import { MediaContainer, Video, VideoProvider } from '@videojs/react';
import { VJS8_DEMO_VIDEO } from '@/consts';
import { BasicMuteButton } from './BasicMuteButton';
/**
* Demo showing proper MediaProvider usage with MuteButton.
* Demo showing proper VideoProvider usage with MuteButton.
* The MuteButton automatically reflects the current volume state
* and toggles mute/unmute on click.
*/
export function MuteButtonDemo() {
return (
<MediaProvider>
<VideoProvider>
<MediaContainer style={{ position: 'relative', zIndex: 10 }}>
<Video
src={VJS8_DEMO_VIDEO.hls}
@@ -20,6 +20,6 @@ export function MuteButtonDemo() {
<BasicMuteButton />
</div>
</MediaContainer>
</MediaProvider>
</VideoProvider>
);
}
@@ -8,7 +8,7 @@ import styles from './PlayButton.module.css';
* - CSS Modules for scoped styling
* - Data attribute selectors for state-based styling
*
* Note: This component must be used within a MediaProvider context.
* Note: This component must be used within a VideoProvider context.
* See the usage example in the documentation.
*/
export function BasicPlayButton() {
@@ -1,15 +1,15 @@
import { MediaContainer, MediaProvider, Video } from '@videojs/react';
import { MediaContainer, Video, VideoProvider } from '@videojs/react';
import { VJS8_DEMO_VIDEO } from '@/consts';
import { BasicPlayButton } from './BasicPlayButton';
/**
* Demo showing proper MediaProvider usage with PlayButton.
* The MediaProvider wraps the entire media experience and provides
* Demo showing proper VideoProvider usage with PlayButton.
* The VideoProvider wraps the entire media experience and provides
* the necessary context for all media components.
*/
export function PlayButtonDemo() {
return (
<MediaProvider>
<VideoProvider>
<MediaContainer style={{ position: 'relative', zIndex: 10 }}>
<Video
src={VJS8_DEMO_VIDEO.hls}
@@ -20,6 +20,6 @@ export function PlayButtonDemo() {
<BasicPlayButton />
</div>
</MediaContainer>
</MediaProvider>
</VideoProvider>
);
}
@@ -8,7 +8,7 @@ import styles from './TimeSlider.module.css';
* - CSS Modules for scoped styling
* - Data attribute selectors for state-based styling
*
* Note: This component must be used within a MediaProvider context.
* Note: This component must be used within a VideoProvider context.
* See the usage example in the documentation.
*/
export function BasicTimeSlider() {
@@ -1,15 +1,15 @@
import { MediaContainer, MediaProvider, Video } from '@videojs/react';
import { MediaContainer, Video, VideoProvider } from '@videojs/react';
import { VJS8_DEMO_VIDEO } from '@/consts';
import { BasicTimeSlider } from './BasicTimeSlider';
/**
* Demo showing proper MediaProvider usage with TimeSlider.
* The MediaProvider wraps the entire media experience and provides
* Demo showing proper VideoProvider usage with TimeSlider.
* The VideoProvider wraps the entire media experience and provides
* the necessary context for all media components.
*/
export function TimeSliderDemo() {
return (
<MediaProvider>
<VideoProvider>
<MediaContainer style={{ position: 'relative', zIndex: 10 }}>
<Video
src={VJS8_DEMO_VIDEO.hls}
@@ -20,6 +20,6 @@ export function TimeSliderDemo() {
<BasicTimeSlider />
</div>
</MediaContainer>
</MediaProvider>
</VideoProvider>
);
}
@@ -8,7 +8,7 @@ import styles from './VolumeSlider.module.css';
* - CSS Modules for scoped styling
* - Data attribute selectors for state-based styling
*
* Note: This component must be used within a MediaProvider context.
* Note: This component must be used within a VideoProvider context.
* See the usage example in the documentation.
*/
export function BasicVolumeSlider() {
@@ -1,15 +1,15 @@
import { MediaContainer, MediaProvider, Video } from '@videojs/react';
import { MediaContainer, Video, VideoProvider } from '@videojs/react';
import { VJS8_DEMO_VIDEO } from '@/consts';
import { BasicVolumeSlider } from './BasicVolumeSlider';
/**
* Demo showing proper MediaProvider usage with VolumeSlider.
* The MediaProvider wraps the entire media experience and provides
* Demo showing proper VideoProvider usage with VolumeSlider.
* The VideoProvider wraps the entire media experience and provides
* the necessary context for all media components.
*/
export function VolumeSliderDemo() {
return (
<MediaProvider>
<VideoProvider>
<MediaContainer style={{ position: 'relative', zIndex: 10 }}>
<Video
src={VJS8_DEMO_VIDEO.hls}
@@ -20,6 +20,6 @@ export function VolumeSliderDemo() {
<BasicVolumeSlider />
</div>
</MediaContainer>
</MediaProvider>
</VideoProvider>
);
}