diff --git a/web/core/components/dropdowns/cycle/cycle-options.tsx b/web/core/components/dropdowns/cycle/cycle-options.tsx index 66d26114c2..b96bbf9001 100644 --- a/web/core/components/dropdowns/cycle/cycle-options.tsx +++ b/web/core/components/dropdowns/cycle/cycle-options.tsx @@ -29,10 +29,11 @@ type CycleOptionsProps = { referenceElement: HTMLButtonElement | null; placement: Placement | undefined; isOpen: boolean; + canRemoveCycle: boolean; }; export const CycleOptions: FC = observer((props) => { - const { projectId, isOpen, referenceElement, placement } = props; + const { projectId, isOpen, referenceElement, placement, canRemoveCycle } = props; //state hooks const [query, setQuery] = useState(""); const [popperElement, setPopperElement] = useState(null); @@ -92,16 +93,19 @@ export const CycleOptions: FC = observer((props) => { ), }; }); - options?.unshift({ - value: null, - query: "No cycle", - content: ( -
- - No cycle -
- ), - }); + + if (canRemoveCycle) { + options?.unshift({ + value: null, + query: "No cycle", + content: ( +
+ + No cycle +
+ ), + }); + } const filteredOptions = query === "" ? options : options?.filter((o) => o.query.toLowerCase().includes(query.toLowerCase())); diff --git a/web/core/components/dropdowns/cycle/index.tsx b/web/core/components/dropdowns/cycle/index.tsx index 76b583a298..abf10da81b 100644 --- a/web/core/components/dropdowns/cycle/index.tsx +++ b/web/core/components/dropdowns/cycle/index.tsx @@ -25,6 +25,7 @@ type Props = TDropdownProps & { onClose?: () => void; projectId: string | undefined; value: string | null; + canRemoveCycle?: boolean; }; export const CycleDropdown: React.FC = observer((props) => { @@ -46,6 +47,7 @@ export const CycleDropdown: React.FC = observer((props) => { showTooltip = false, tabIndex, value, + canRemoveCycle = true, } = props; // states @@ -128,7 +130,13 @@ export const CycleDropdown: React.FC = observer((props) => { )} {isOpen && projectId && ( - + )} );