@talend/react-components
Version:
Set of react components.
49 lines • 1.38 kB
JavaScript
import PropTypes from 'prop-types';
import { randomUUID } from '@talend/utils';
import DisplayModeToggle, { displayModesOptions as options } from '../../Toolbar/DisplayModeToggle/DisplayModeToggle.component';
import { useListContext } from '../context';
import { jsx as _jsx } from "react/jsx-runtime";
export { DisplayModeActionIcon as DisplayModeIcon, displayModesOptions } from '../../Toolbar/DisplayModeToggle/DisplayModeToggle.component';
function ListDisplayMode({
children,
displayModesOptions,
id,
onChange,
selectedDisplayMode
}) {
const {
displayMode,
setDisplayMode,
t
} = useListContext();
const onSelect = (event, value) => {
if (onChange) {
onChange(event, value);
} else {
setDisplayMode(value);
}
};
if (children) {
return children;
}
return /*#__PURE__*/_jsx(DisplayModeToggle, {
id: id,
mode: selectedDisplayMode || displayMode,
displayModes: displayModesOptions,
onChange: onSelect,
t: t
});
}
ListDisplayMode.defaultProps = {
id: randomUUID(),
displayModesOptions: options
};
ListDisplayMode.propTypes = {
children: PropTypes.node,
displayModesOptions: PropTypes.arrayOf(PropTypes.string),
id: PropTypes.string,
onChange: PropTypes.func,
selectedDisplayMode: PropTypes.string
};
export default ListDisplayMode;
//# sourceMappingURL=ListDisplayMode.component.js.map