1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-04-06 01:15:28 +02:00
unleash.unleash/frontend/src/component/strategies/TogglesLinkList/TogglesLinkList.tsx
Youssef Khedher c2842c81e6 Refactor/strategies (#668)
* feat: add useStrategiesApi hook

* refactor: remove redux from strategies component

* refactor: CreateStrategy Component

* fix: remove ts errors

* refactor: change strategy-detail to functional component

* refactor: get strategy name from params

* refactor: use features hook and refactor toggle list link

* refactor: StrategiesList

* refactor: fix delete strategy function

* fix: ts errors

* refactor: CreateStrategy to StrategyForm

* feat: add toast for StrategyForm

* refactor: add StrategyView and delete old component

* refactor: StrategyDetails and clean unused files

* fix: cleanup unused code

* fix: add await

* fix: remove unused stores

Co-authored-by: Fredrik Oseberg <fredrik.no@gmail.com>
2022-02-11 00:08:55 +01:00

48 lines
1.6 KiB
TypeScript

import {
List,
ListItem,
ListItemAvatar,
ListItemText,
Tooltip,
} from '@material-ui/core';
import { PlayArrow, Pause } from '@material-ui/icons';
import styles from '../../common/common.module.scss';
import { Link } from 'react-router-dom';
import ConditionallyRender from '../../common/ConditionallyRender';
interface ITogglesLinkListProps {
toggles: [];
}
export const TogglesLinkList = ({ toggles }: ITogglesLinkListProps) => (
<List style={{ textAlign: 'left' }} className={styles.truncate}>
<ConditionallyRender
condition={toggles.length > 0}
show={
<>
{toggles.map(({ name, description = '-', enabled }) => (
<ListItem key={name}>
<Tooltip title={enabled ? 'Enabled' : 'Disabled'}>
<ListItemAvatar>
{enabled ? <PlayArrow /> : <Pause />}
</ListItemAvatar>
</Tooltip>
<ListItemText
primary={
<Link
key={name}
to={`/features/view/${name}`}
>
{name}
</Link>
}
secondary={description}
/>
</ListItem>
))}
</>
}
/>
</List>
);