@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.
87 lines (74 loc) • 2.87 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var React = _interopRequireWildcard(require("react"));
var _TileHeader = _interopRequireDefault(require("./components/TileHeader"));
var _TileContent = _interopRequireDefault(require("./components/TileContent"));
var _TileExpandable = _interopRequireDefault(require("./components/TileExpandable"));
var _TileWrapper = _interopRequireDefault(require("./components/TileWrapper"));
var _handleKeyDown = _interopRequireDefault(require("../utils/handleKeyDown"));
var Tile = function Tile(_ref) {
var href = _ref.href,
_ref$external = _ref.external,
external = _ref$external === void 0 ? false : _ref$external,
dataTest = _ref.dataTest,
icon = _ref.icon,
title = _ref.title,
description = _ref.description,
header = _ref.header,
children = _ref.children,
_ref$noPadding = _ref.noPadding,
noPadding = _ref$noPadding === void 0 ? false : _ref$noPadding,
_ref$expandable = _ref.expandable,
expandable = _ref$expandable === void 0 ? false : _ref$expandable,
_ref$initialExpanded = _ref.initialExpanded,
initialExpanded = _ref$initialExpanded === void 0 ? false : _ref$initialExpanded,
_ref$noHeaderIcon = _ref.noHeaderIcon,
noHeaderIcon = _ref$noHeaderIcon === void 0 ? false : _ref$noHeaderIcon,
htmlTitle = _ref.htmlTitle,
onClick = _ref.onClick;
if (expandable) {
return /*#__PURE__*/React.createElement(_TileExpandable.default, {
dataTest: dataTest,
icon: icon,
title: title,
description: description,
header: header,
noPadding: noPadding,
initialExpanded: initialExpanded,
onClick: onClick,
htmlTitle: htmlTitle
}, children);
}
var hasHeader = !!(title || description || icon || header);
return /*#__PURE__*/React.createElement(_TileWrapper.default, {
href: href,
external: external,
dataTest: dataTest,
onClick: onClick,
onKeyDown: (0, _handleKeyDown.default)(onClick),
as: href ? "a" : "div",
tabIndex: !href ? "0" : undefined,
role: href ? undefined : "button",
htmlTitle: htmlTitle
}, hasHeader && /*#__PURE__*/React.createElement(_TileHeader.default, {
title: title,
description: description,
icon: icon,
external: external,
header: header,
expandable: expandable,
noHeaderIcon: noHeaderIcon
}), children && /*#__PURE__*/React.createElement(_TileContent.default, {
noPadding: noPadding,
withPointer: true,
withBorder: hasHeader,
useMargins: false
}, children));
};
var _default = Tile;
exports.default = _default;