mirror of
https://github.com/zoriya/v10.git
synced 2026-08-16 02:45:09 +00:00
17 lines
437 B
TypeScript
17 lines
437 B
TypeScript
'use client';
|
|
|
|
import type { MediaEngineHost } from '@videojs/core';
|
|
import type { RefCallback } from 'react';
|
|
import { useCallback } from 'react';
|
|
|
|
export function useAttachMedia<T extends HTMLMediaElement>(media: MediaEngineHost): RefCallback<T> {
|
|
return useCallback(
|
|
(element: T | null) => {
|
|
if (element) media.attach?.(element);
|
|
else media.detach?.();
|
|
return () => media.detach?.();
|
|
},
|
|
[media]
|
|
);
|
|
}
|