1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00
jellyfin-web/src/components/alphaPicker/AlphaPickerComponent.js
2021-06-09 09:27:10 -04:00

36 lines
905 B
JavaScript

import PropTypes from 'prop-types';
import React, { useEffect, useRef, useState } from 'react';
import AlphaPicker from './alphaPicker';
// React compatibility wrapper component for alphaPicker.js
const AlphaPickerComponent = ({ onAlphaPicked = () => {} }) => {
const [ alphaPicker, setAlphaPicker ] = useState(null);
const element = useRef(null);
useEffect(() => {
setAlphaPicker(new AlphaPicker({
element: element.current,
mode: 'keyboard'
}));
element.current?.addEventListener('alphavalueclicked', onAlphaPicked);
return () => {
alphaPicker?.destroy();
};
}, []);
return (
<div
ref={element}
className='alphaPicker align-items-center'
/>
);
};
AlphaPickerComponent.propTypes = {
onAlphaPicked: PropTypes.func
};
export default AlphaPickerComponent;