Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 | 2x 2x 2x 1x 1x | import { SystemState } from "../../../background/redux/actions/sytemState"; import { connect, ConnectedProps } from "react-redux"; import React, { ReactElement } from "react"; import { OverlayTrigger, Tooltip } from "react-bootstrap"; import { FsEntity } from "../../../background/api/filesystemTypes"; import { clearSelected } from "../../../background/redux/actions/filesystem"; const mapState = (state: SystemState) => ({ selectedFsEnties: state.filesystem.selectedFsEnties }); const mapDispatch = { clearSelected }; const connector = connect(mapState, mapDispatch); type PropsFromRedux = ConnectedProps<typeof connector>; type Props = PropsFromRedux & {}; function SelectedFsEntities(props: Props): ReactElement { Iif (props.selectedFsEnties?.length > 0) return ( <div className={"pt-3"}> <OverlayTrigger placement={"bottom"} overlay={ <Tooltip id={`tooltip-bottom`} className={""}> <ul className={"list-group"}> {props.selectedFsEnties.map((e: FsEntity) => { return ( <li className={"list-group-item list-group-item-dark"} key={e.fileSystemId} > {e.path} </li> ); })} </ul> </Tooltip> } > <span className={"pr-2"}> Selected {props.selectedFsEnties.length} file {props.selectedFsEnties.length > 1 ? "s" : ""} </span> </OverlayTrigger> <OverlayTrigger placement={"bottom"} overlay={ <Tooltip id={`tooltip-bottom`} className={"bg-light text-dark m-1"}> Clear the selection </Tooltip> } > <button type="button" aria-label="Close" className={"close mr-2 text-primary"} onClick={props.clearSelected} > <span className={"text-shadow-none"} aria-hidden="true"> × </span> </button> </OverlayTrigger> </div> ); else return <span></span>; } export default connector(SelectedFsEntities); |