import React, { useState, useEffect, useCallback } from 'react'; import { useTheme } from '@emotion/react'; import { StyledSegment } from '../../Segment/style'; import { ECalendarMode } from '../../../SACalendar/types'; export interface IModeSelector { mode: ECalendarMode; setMode: (mode: ECalendarMode) => void; } export const ModeSelector = ({ mode, setMode }: IModeSelector) => { const colors = useTheme(); const [width, setWidth] = useState(100); const getId = useCallback((mode: ECalendarMode) => `view_button_${mode}`, []); useEffect(() => { const item = document.getElementById(getId(mode)); if (item) { setWidth(item.offsetLeft); } }, [mode]); return (
{Object.values(ECalendarMode).map((item) => ( setMode(item)} > {item} ))} {mode}
); };