1 // Copyright (C) The Arvados Authors. All rights reserved.
3 // SPDX-License-Identifier: AGPL-3.0
5 import * as React from "react";
6 import { ListItemIcon, ListItemText, ListItem } from "@material-ui/core";
7 import { AddFavoriteIcon, RemoveFavoriteIcon } from "~/components/icon/icon";
8 import { connect } from "react-redux";
9 import { RootState } from "~/store/store";
11 const mapStateToProps = (state: RootState, props: { onClick: () => {} }) => ({
12 isFavorite: state.contextMenu.resource !== undefined && state.favorites[state.contextMenu.resource.uuid] === true,
13 onClick: props.onClick
16 export const ToggleFavoriteAction = connect(mapStateToProps)((props: { isFavorite: boolean, onClick: () => void }) =>
19 onClick={props.onClick}>
22 ? <RemoveFavoriteIcon />
23 : <AddFavoriteIcon />}
25 <ListItemText style={{ textDecoration: 'none' }}>
27 ? <>Remove from favorites</>
28 : <>Add to favorites</>}