@brizy/ui
Version:
React elements in Brizy style
29 lines (28 loc) • 1.99 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.NavListButton = void 0;
const react_1 = __importDefault(require("react"));
const ramda_1 = require("ramda");
const Tooltip_1 = require("../Tooltip");
const Icon_1 = require("../Icon");
const utils_1 = require("./utils");
const utils_2 = require("../utils");
const constants_1 = require("../constants");
const NavListButton = (props) => {
const { items, active, backgroundColor, onChange } = props;
const makeColor = (0, ramda_1.ifElse)(utils_2.isString, utils_1.getColorStyles, utils_2.emptyStyles);
return (react_1.default.createElement("div", { className: `${constants_1.BRZ_PREFIX}-navlist-wrapper`, style: makeColor(backgroundColor) },
react_1.default.createElement("div", { className: `${constants_1.BRZ_PREFIX}-navlist-button` }, items.map(({ id, text, icon, tooltipText }) => active === id ? (react_1.default.createElement("div", { key: id, className: `${constants_1.BRZ_PREFIX}-navlist-button__item ${constants_1.BRZ_PREFIX}-navlist-button__item--active`, onClick: () => {
onChange(id);
} },
react_1.default.createElement(Icon_1.Icon, { source: icon, color: "white", hoverColor: "white", size: "19px" }),
react_1.default.createElement("span", { className: `${constants_1.BRZ_PREFIX}-navlist-button__item-text` }, text))) : (react_1.default.createElement(Tooltip_1.Tooltip, { key: id, title: tooltipText || text.toUpperCase() },
react_1.default.createElement("div", { className: `${constants_1.BRZ_PREFIX}-navlist-button__item`, onClick: () => {
onChange(id);
} },
react_1.default.createElement(Icon_1.Icon, { source: icon, color: "dark", hoverColor: "dark", size: "19px" }))))))));
};
exports.NavListButton = NavListButton;