UNPKG

@coocoon/react-awesome-query-builder

Version:

User-friendly query builder for React. Demo: https://ukrbublik.github.io/react-awesome-query-builder

34 lines (30 loc) 902 B
import React from "react"; import { Button } from "reactstrap"; import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { faPlus, faTrashAlt } from "@fortawesome/free-solid-svg-icons"; export default ({ type, label, onClick, config }) => { const typeToOnlyIcon = { delGroup: faTrashAlt, delRuleGroup: faTrashAlt, delRule: faTrashAlt, addRuleGroup: faPlus, addRuleGroupExt: faPlus, }; const typeToIcon = { addRule: faPlus, addGroup: faPlus, }; const typeToColor = { addRule: "primary", addGroup: "primary", delGroup: "danger", delRuleGroup: "danger", delRule: "danger", }; let isOnlyIcon = typeToOnlyIcon[type]; return ( <Button size="sm" color={typeToColor[type]} onClick={onClick}> <FontAwesomeIcon icon={isOnlyIcon ? typeToOnlyIcon[type] : typeToIcon[type]} /> {!isOnlyIcon && label} </Button> ); };