import { Link, List, ListItem, styled, Typography } from '@mui/material'; import { useStrategies } from 'hooks/api/getters/useStrategies/useStrategies'; import { FeatureStrategyMenuCard } from '../FeatureStrategyMenuCard/FeatureStrategyMenuCard'; import { ConditionallyRender } from 'component/common/ConditionallyRender/ConditionallyRender'; import { useReleasePlanTemplates } from 'hooks/api/getters/useReleasePlanTemplates/useReleasePlanTemplates'; import { FeatureReleasePlanCard } from '../FeatureReleasePlanCard/FeatureReleasePlanCard'; import type { IReleasePlanTemplate } from 'interfaces/releasePlans'; import { useNavigate } from 'react-router-dom'; interface IFeatureStrategyMenuCardsProps { projectId: string; featureId: string; environmentId: string; onlyReleasePlans: boolean; onAddReleasePlan: (template: IReleasePlanTemplate) => void; } const StyledTypography = styled(Typography)(({ theme }) => ({ fontSize: theme.fontSizes.smallBody, padding: theme.spacing(1, 2), })); const StyledLink = styled(Link)(({ theme }) => ({ fontSize: theme.fontSizes.smallBody, cursor: 'pointer', })) as typeof Link; export const FeatureStrategyMenuCards = ({ projectId, featureId, environmentId, onlyReleasePlans, onAddReleasePlan, }: IFeatureStrategyMenuCardsProps) => { const { strategies } = useStrategies(); const { templates } = useReleasePlanTemplates(); const navigate = useNavigate(); const allStrategies = !onlyReleasePlans; const preDefinedStrategies = strategies.filter( (strategy) => !strategy.deprecated && !strategy.editable, ); const customStrategies = strategies.filter( (strategy) => !strategy.deprecated && strategy.editable, ); const defaultStrategy = { name: 'flexibleRollout', displayName: 'Default strategy', description: 'This is the default strategy defined for this environment in the project', }; return ( {allStrategies ? ( <> Default strategy for {environmentId} environment ) : null} 0} show={ <> Release templates {templates.map((template) => ( onAddReleasePlan(template)} /> ))} } /> theme.spacing(1, 2, 0, 2), }} > No templates created. Go to  navigate('/release-templates')} > Release templates  to get started } /> {allStrategies ? ( <> Predefined strategy types {preDefinedStrategies.map((strategy) => ( ))} 0} show={ <> Custom strategies {customStrategies.map((strategy) => ( ))} } /> ) : null} ); };