import { OptionProps } from "@app/models/components"; import React from "react"; import "./option-styles.scss"; import Checkbox from "../checkbox/Checkbox"; import clsx from "clsx"; const Option: React.FC = ({ id = "", value, text, onClick, selected, hasCheckbox, icon, meta, action, isDestructive, iconPosition = "start", secondIcon, }) => { const onOptionClick = (event: React.MouseEvent | React.KeyboardEvent) => { event.stopPropagation(); onClick(value); }; const actionText = action?.text; const actionUrl = action?.url; return ( <> {value && (
  • {hasCheckbox && ( { onOptionClick({} as React.MouseEvent); }} checked={!!selected} /> )} {!hasCheckbox && (
    {iconPosition == "start" && icon} {text}
    )}
    {!hasCheckbox && selected && ( )} {iconPosition == "end" && icon && ( {icon} )}
    {secondIcon && secondIcon} {(meta || (actionUrl && actionUrl)) && (
    {meta && meta} {!!actionUrl && !!actionText && ( e.stopPropagation()} > {actionText} )}
    )}
  • )} ); }; export default Option;