DocSpace-buildtools/packages/components/calendar/sub-components/DaysHeader.js

43 lines
1.2 KiB
JavaScript
Raw Normal View History

2023-02-02 09:38:54 +00:00
import { HeaderContainer, Title } from "../styled-components";
import { HeaderButtons } from "./HeaderButtons";
const onLeftClick = (setObservedDate) =>
setObservedDate((prevObservedDate) =>
prevObservedDate.clone().subtract(1, "month")
2023-02-02 09:38:54 +00:00
);
const onRightClick = (setObservedDate) =>
setObservedDate((prevObservedDate) =>
prevObservedDate.clone().add(1, "month")
2023-02-02 09:38:54 +00:00
);
export const DaysHeader = ({
observedDate,
setObservedDate,
setSelectedScene,
minDate,
maxDate,
}) => {
const isLeftDisabled =
observedDate.clone().subtract(1, "month").endOf("month") < minDate;
const isRightDisabled =
observedDate.clone().add(1, "month").startOf("month") > maxDate;
2023-02-02 09:38:54 +00:00
return (
<HeaderContainer>
<Title
onClick={() =>
setSelectedScene((prevSelectedScene) => prevSelectedScene + 1)
}
>
{observedDate.format("MMMM")} {observedDate.year()}
2023-02-02 09:38:54 +00:00
</Title>
<HeaderButtons
onLeftClick={() => onLeftClick(setObservedDate)}
onRightClick={() => onRightClick(setObservedDate)}
isLeftDisabled={isLeftDisabled}
isRightDisabled={isRightDisabled}
2023-02-02 09:38:54 +00:00
/>
</HeaderContainer>
);
};