diff --git a/packages/web-kitchensink-reactnext/src/categories/blob/react/components/AudioFilePreview/index.tsx b/packages/web-kitchensink-reactnext/src/categories/blob/react/components/AudioFilePreview/index.tsx index b8dd03e..c658fbc 100644 --- a/packages/web-kitchensink-reactnext/src/categories/blob/react/components/AudioFilePreview/index.tsx +++ b/packages/web-kitchensink-reactnext/src/categories/blob/react/components/AudioFilePreview/index.tsx @@ -14,16 +14,17 @@ import clsx from 'clsx'; import {SpectrogramCanvas, WaveformCanvas} from '@modal-soft/react-wavesurfer'; import {Slider} from '@/categories/number/react'; import {KeyValueTable} from '@/categories/information/react'; +import {useEnhanced} from '@modal-soft/react-utils'; -type AudioFilePreviewDerivedComponent = HTMLAudioElement; +type AudioFilePreviewDerivedElement = HTMLAudioElement; -export interface AudioFilePreviewProps = Partial> extends Omit, 'controls'> { +export interface AudioFilePreviewProps = Partial> extends Omit, 'controls'> { file?: F; disabled?: boolean; enhanced?: boolean; } -export const AudioFilePreview = React.forwardRef(({ +export const AudioFilePreview = React.forwardRef(({ file, style, className, @@ -58,16 +59,12 @@ export const AudioFilePreview = React.forwardRef({ controllerRef: forwardedRef, visualizationMode: 'waveform', }); - const formId = React.useId(); - - const [enhanced, setEnhanced] = React.useState(false); - React.useEffect(() => { - setEnhanced(enhancedProp); - }, [enhancedProp]); + const { enhanced } = useEnhanced({ enhanced: enhancedProp }); if (!fileWithMetadata) { return null; @@ -90,11 +87,10 @@ export const AudioFilePreview = React.forwardRef