mirror of
https://github.com/hanzoai/next.js.git
synced 2026-09-24 17:00:51 +00:00
## Description This PR ensures that the default prettier config is used for examples and templates. This config is compatible with `prettier@3` as well (upgrading prettier is bigger change that can be a future PR). ## Changes - Updated `.prettierrc.json` in root with `"trailingComma": "es5"` (will be needed upgrading to prettier@3) - Added `examples/.prettierrc.json` with default config (this will change every example) - Added `packages/create-next-app/templates/.prettierrc.json` with default config (this will change every template) ## Related - Fixes #54402 - Closes #54409
67 lines
1.3 KiB
TypeScript
67 lines
1.3 KiB
TypeScript
import { useCallback, useEffect, useState } from "react";
|
|
import videojs from "video.js";
|
|
import "videojs-youtube";
|
|
|
|
interface PlayerProps {
|
|
/**
|
|
*
|
|
*/
|
|
techOrder: string[];
|
|
/**
|
|
* Is autoplay enabled for this video?
|
|
*/
|
|
autoplay: boolean;
|
|
/**
|
|
* Should this video have controls?
|
|
*/
|
|
controls: boolean;
|
|
/**
|
|
* A list of video sources.
|
|
*/
|
|
sources: {
|
|
/**
|
|
* The source url.
|
|
*/
|
|
src: string;
|
|
/**
|
|
* The type of source
|
|
*/
|
|
type: string;
|
|
}[];
|
|
}
|
|
|
|
/**
|
|
* A simple video player component for displaying videos from external websites.
|
|
* @returns A Video.js video player element.
|
|
*/
|
|
const Player = (props: PlayerProps) => {
|
|
const [videoEl, setVideoEl] = useState<HTMLVideoElement | null>(null);
|
|
const onVideo = useCallback((el: HTMLVideoElement) => {
|
|
setVideoEl(el);
|
|
}, []);
|
|
|
|
useEffect(() => {
|
|
if (videoEl == null) {
|
|
return;
|
|
}
|
|
|
|
// our video.js player
|
|
const player = videojs(videoEl, props);
|
|
|
|
return () => {
|
|
player.dispose();
|
|
};
|
|
}, [props, videoEl]);
|
|
|
|
return (
|
|
<>
|
|
<h1>The implementation below is using react functions</h1>
|
|
<div data-vjs-player>
|
|
<video ref={onVideo} className="video-js" playsInline />
|
|
</div>
|
|
</>
|
|
);
|
|
};
|
|
|
|
export default Player;
|