Repository URL to install this package:
|
Version:
4.0.0-alpha.5 ▾
|
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _react = _interopRequireDefault(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _Icon = _interopRequireDefault(require("../../../../visuals/Icon"));
var _MenuItem = _interopRequireWildcard(require("../MenuItem"));
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; return newObj; } }
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
var PlusIcon = function PlusIcon(props) {
return _react["default"].createElement("svg", props, _react["default"].createElement("path", {
d: "M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z",
fill: "currentColor"
}));
};
PlusIcon.defaultProps = {
xmlns: "http://www.w3.org/2000/svg",
viewBox: "0 0 24 24"
};
var MinusIcon = function MinusIcon(props) {
return _react["default"].createElement("svg", props, _react["default"].createElement("defs", null, _react["default"].createElement("path", {
id: "a",
d: "M18.984 12.984H5.016v-1.968h13.968z"
})), _react["default"].createElement("use", {
fill: "#2F3740",
fillRule: "evenodd",
transform: "translate(0 -11)",
xlinkHref: "#a"
}));
};
MinusIcon.defaultProps = {
xmlns: "http://www.w3.org/2000/svg",
xmlnsXlink: "http://www.w3.org/1999/xlink",
width: "14",
height: "2",
viewBox: "0 0 24 2"
};
var SubmenuHead = function SubmenuHead(_ref) {
var item = _ref.item,
open = _ref.open,
toggleSubmenu = _ref.toggleSubmenu;
if (!item.to && !item.action) {
// If the head is not a link itself, clicking on it expands/collapses instead
item.action = toggleSubmenu;
}
return _react["default"].createElement(_MenuItem["default"], {
className: "SubmenuHead",
item: item
}, _react["default"].createElement("button", {
className: "SubmenuHead-toggleSubmenuButton",
type: "button",
onClick: toggleSubmenu
}, _react["default"].createElement(_Icon["default"], {
icon: open ? MinusIcon : PlusIcon
})));
};
SubmenuHead.propTypes = {
item: _propTypes["default"].shape(_MenuItem.menuItemPropTypes).isRequired,
open: _propTypes["default"].bool.isRequired,
toggleSubmenu: _propTypes["default"].func.isRequired
};
var _default = SubmenuHead;
exports["default"] = _default;