UNPKG

@boomerang-io/carbon-addons-boomerang-react

Version:
50 lines (43 loc) 1.71 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var React = require('react'); var cx = require('classnames'); var icons = require('@carbon/react/icons'); var settings = require('../settings.js'); function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; } var React__default = /*#__PURE__*/_interopDefault(React); var cx__default = /*#__PURE__*/_interopDefault(cx); /* IBM Confidential 694970X, 69497O0 © Copyright IBM Corp. 2022, 2024 */ /** * Copyright IBM Corp. 2016, 2018 * * This source code is licensed under the Apache-2.0 license found in the * LICENSE file in the root directory of this source tree. */ const translationIds = { "close.menu": "close.menu", "open.menu": "open.menu", }; const defaultTranslations = { [translationIds["close.menu"]]: "Close menu", [translationIds["open.menu"]]: "Open menu", }; /** * `ListBoxMenuIcon` is used to orient the icon up or down depending on the * state of the menu for a given `ListBox` */ const ListBoxMenuIcon = ({ isOpen, translateWithId: t = (id) => defaultTranslations[id] }) => { const className = cx__default.default(`${settings.prefix}--list-box__menu-icon`, { [`${settings.prefix}--list-box__menu-icon--open`]: isOpen, }); const description = isOpen ? t("close.menu") : t("open.menu"); return (React__default.default.createElement("div", { className: className }, React__default.default.createElement(icons.ChevronDown, { name: "chevron--down", "aria-label": description }, React__default.default.createElement("title", null, description)))); }; exports.default = ListBoxMenuIcon; exports.translationIds = translationIds;