import React from 'react'; import PropTypes from 'prop-types'; import UnitButton from './UnitButton'; import SequenceNavigationDropdown from './SequenceNavigationDropdown'; import useIndexOfLastVisibleChild from '../../../../generic/tabs/useIndexOfLastVisibleChild'; const SequenceNavigationTabs = ({ unitIds, unitId, showCompletion, onNavigate, }) => { const [ indexOfLastVisibleChild, containerRef, invisibleStyle, ] = useIndexOfLastVisibleChild(); const shouldDisplayDropdown = indexOfLastVisibleChild === -1; return (
{unitIds.map(buttonUnitId => ( ))}
{shouldDisplayDropdown && ( )}
); }; SequenceNavigationTabs.propTypes = { unitId: PropTypes.string.isRequired, onNavigate: PropTypes.func.isRequired, showCompletion: PropTypes.bool.isRequired, unitIds: PropTypes.arrayOf(PropTypes.string).isRequired, }; export default SequenceNavigationTabs;