UNPKG

@kiwicom/orbit-components

Version:

Orbit-components is a React component library which provides developers with the easiest possible way of building Kiwi.com's products.

47 lines (46 loc) 1.84 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; exports.__esModule = true; exports.default = void 0; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _react = _interopRequireDefault(require("react")); var _clsx = _interopRequireDefault(require("clsx")); const AccordionSectionHeader = ({ children, actions, expanded, expandOnTileClick, onExpand, expandable, dataTest, ariaControls }) => { const isInteractive = expandOnTileClick && !expanded && expandable; const handleClick = _react.default.useCallback(e => { e.stopPropagation(); onExpand?.(); }, [onExpand]); const handleKeyDown = _react.default.useCallback(e => { if (e.key === "Enter" || e.key === " ") { e.preventDefault(); onExpand?.(); } }, [onExpand]); const content = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", { className: "flex grow items-center" }, children), !expanded && expandable && actions && /*#__PURE__*/_react.default.createElement("div", { className: "ms-600 flex" }, actions)); return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({ className: (0, _clsx.default)("p-600 bg-white-normal flex w-full items-center rounded-[inherit]", expanded ? "min-h-[19px]" : "min-h-form-box-normal", isInteractive && "hover:bg-cloud-light cursor-pointer border-0 bg-transparent text-left"), "data-test": dataTest && `${dataTest}Header` }, isInteractive && { role: "button", onClick: handleClick, onKeyDown: handleKeyDown, tabIndex: 0, "aria-controls": ariaControls, "aria-expanded": expanded || undefined }), content); }; var _default = exports.default = AccordionSectionHeader;