UNPKG

2.63 kBJavaScriptView Raw
1"use strict";
2
3var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
4
5exports.__esModule = true;
6exports.default = void 0;
7
8var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/extends"));
9
10var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/objectWithoutPropertiesLoose"));
11
12var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/inheritsLoose"));
13
14var _propTypes = _interopRequireDefault(require("prop-types"));
15
16var _react = _interopRequireDefault(require("react"));
17
18var _classnames = _interopRequireDefault(require("classnames"));
19
20var _elementType = _interopRequireDefault(require("react-prop-types/lib/elementType"));
21
22var _bootstrapUtils = require("./utils/bootstrapUtils");
23
24var propTypes = {
25 componentClass: _elementType.default
26};
27var defaultProps = {
28 componentClass: 'div'
29};
30var contextTypes = {
31 $bs_panel: _propTypes.default.shape({
32 headingId: _propTypes.default.string,
33 bsClass: _propTypes.default.string
34 })
35};
36
37var PanelHeading =
38/*#__PURE__*/
39function (_React$Component) {
40 (0, _inheritsLoose2.default)(PanelHeading, _React$Component);
41
42 function PanelHeading() {
43 return _React$Component.apply(this, arguments) || this;
44 }
45
46 var _proto = PanelHeading.prototype;
47
48 _proto.render = function render() {
49 var _this$props = this.props,
50 children = _this$props.children,
51 className = _this$props.className,
52 Component = _this$props.componentClass,
53 props = (0, _objectWithoutPropertiesLoose2.default)(_this$props, ["children", "className", "componentClass"]);
54
55 var _ref = this.context.$bs_panel || {},
56 headingId = _ref.headingId,
57 _bsClass = _ref.bsClass;
58
59 var _splitBsProps = (0, _bootstrapUtils.splitBsProps)(props),
60 bsProps = _splitBsProps[0],
61 elementProps = _splitBsProps[1];
62
63 bsProps.bsClass = _bsClass || bsProps.bsClass;
64
65 if (headingId) {
66 elementProps.role = elementProps.role || 'tab';
67 elementProps.id = headingId;
68 }
69
70 return _react.default.createElement(Component, (0, _extends2.default)({}, elementProps, {
71 className: (0, _classnames.default)(className, (0, _bootstrapUtils.prefix)(bsProps, 'heading'))
72 }), children);
73 };
74
75 return PanelHeading;
76}(_react.default.Component);
77
78PanelHeading.propTypes = propTypes;
79PanelHeading.defaultProps = defaultProps;
80PanelHeading.contextTypes = contextTypes;
81
82var _default = (0, _bootstrapUtils.bsClass)('panel', PanelHeading);
83
84exports.default = _default;
85module.exports = exports["default"];
\No newline at end of file