/** * Copyright (c) 2023-present Plane Software, Inc. and contributors * SPDX-License-Identifier: AGPL-3.0-only * See the LICENSE file for details. */ import { useEffect } from "react"; import { observer } from "mobx-react"; // plane imports import { useTranslation } from "@plane/i18n"; import { CyclesOutline } from "@makeplane/propel/icons"; import { cn } from "@plane/utils"; // hooks import { useCycle } from "@/hooks/store/use-cycle"; export type TReadonlyCycleProps = { className?: string; hideIcon?: boolean; value: string | null; placeholder?: string; projectId: string | undefined; workspaceSlug: string; }; export const ReadonlyCycle = observer(function ReadonlyCycle(props: TReadonlyCycleProps) { const { className, hideIcon = false, value, placeholder, projectId, workspaceSlug } = props; const { t } = useTranslation(); const { getCycleNameById, fetchAllCycles } = useCycle(); const cycleName = value ? getCycleNameById(value) : null; useEffect(() => { if (projectId) { fetchAllCycles(workspaceSlug, projectId); } }, [projectId, workspaceSlug]); return (