import { observer } from "mobx-react-lite"; // components import { CalendarDayTile } from "components/issues"; // helpers import { renderDateFormat } from "helpers/date-time.helper"; // types import { ICalendarDate, ICalendarWeek } from "./types"; import { IIssue } from "types"; import { IGroupedIssues, IIssueResponse } from "store/issues/types"; import { ICycleIssuesFilterStore, IModuleIssuesFilterStore, IProjectIssuesFilterStore, IViewIssuesFilterStore, } from "store/issues"; type Props = { issuesFilterStore: | IProjectIssuesFilterStore | IModuleIssuesFilterStore | ICycleIssuesFilterStore | IViewIssuesFilterStore; issues: IIssueResponse | undefined; groupedIssueIds: IGroupedIssues; week: ICalendarWeek | undefined; quickActions: (issue: IIssue, customActionButton?: React.ReactElement) => React.ReactNode; enableQuickIssueCreate?: boolean; quickAddCallback?: ( workspaceSlug: string, projectId: string, data: IIssue, viewId?: string ) => Promise; viewId?: string; }; export const CalendarWeekDays: React.FC = observer((props) => { const { issuesFilterStore, issues, groupedIssueIds, week, quickActions, enableQuickIssueCreate, quickAddCallback, viewId, } = props; const calendarLayout = issuesFilterStore?.issueFilters?.displayFilters?.calendar?.layout ?? "month"; const showWeekends = issuesFilterStore?.issueFilters?.displayFilters?.calendar?.show_weekends ?? false; if (!week) return null; return (
{Object.values(week).map((date: ICalendarDate) => { if (!showWeekends && (date.date.getDay() === 0 || date.date.getDay() === 6)) return null; return ( ); })}
); });