import React from "react"; import { observer } from "mobx-react-lite"; // hooks import { useProjectState } from "hooks/store"; // components import { DateDropdown } from "components/dropdowns"; // helpers import { renderFormattedPayloadDate } from "helpers/date-time.helper"; import { shouldHighlightIssueDueDate } from "helpers/issue.helper"; import { cn } from "helpers/common.helper"; // types import { TIssue } from "@plane/types"; type Props = { issue: TIssue; onClose: () => void; onChange: (issue: TIssue, data: Partial, updates: any) => void; disabled: boolean; }; export const SpreadsheetDueDateColumn: React.FC = observer((props: Props) => { const { issue, onChange, disabled, onClose } = props; // store hooks const { getStateById } = useProjectState(); // derived values const stateDetails = getStateById(issue.state_id); return (
{ const targetDate = data ? renderFormattedPayloadDate(data) : null; onChange( issue, { target_date: targetDate }, { changed_property: "target_date", change_details: targetDate, } ); }} disabled={disabled} placeholder="Due date" buttonVariant="transparent-with-text" buttonContainerClassName="w-full" buttonClassName={cn("rounded-none text-left", { "text-red-500": shouldHighlightIssueDueDate(issue.target_date, stateDetails?.group), })} clearIconClassName="!text-custom-text-100" onClose={onClose} />
); });