1 | import _extends from "@babel/runtime-corejs2/helpers/esm/extends";
|
2 | import _objectWithoutPropertiesLoose from "@babel/runtime-corejs2/helpers/esm/objectWithoutPropertiesLoose";
|
3 | import _inheritsLoose from "@babel/runtime-corejs2/helpers/esm/inheritsLoose";
|
4 | import classNames from 'classnames';
|
5 | import PropTypes from 'prop-types';
|
6 | import React from 'react';
|
7 | import { bsClass, getClassSet, splitBsProps } from './utils/bootstrapUtils';
|
8 | import createChainedFunction from './utils/createChainedFunction';
|
9 | import CloseButton from './CloseButton';
|
10 |
|
11 | var propTypes = {
|
12 | |
13 |
|
14 |
|
15 |
|
16 |
|
17 | closeLabel: PropTypes.string,
|
18 |
|
19 | |
20 |
|
21 |
|
22 | closeButton: PropTypes.bool,
|
23 |
|
24 | |
25 |
|
26 |
|
27 |
|
28 |
|
29 | onHide: PropTypes.func
|
30 | };
|
31 | var defaultProps = {
|
32 | closeLabel: 'Close',
|
33 | closeButton: false
|
34 | };
|
35 | var contextTypes = {
|
36 | $bs_modal: PropTypes.shape({
|
37 | onHide: PropTypes.func
|
38 | })
|
39 | };
|
40 |
|
41 | var ModalHeader =
|
42 |
|
43 | function (_React$Component) {
|
44 | _inheritsLoose(ModalHeader, _React$Component);
|
45 |
|
46 | function ModalHeader() {
|
47 | return _React$Component.apply(this, arguments) || this;
|
48 | }
|
49 |
|
50 | var _proto = ModalHeader.prototype;
|
51 |
|
52 | _proto.render = function render() {
|
53 | var _this$props = this.props,
|
54 | closeLabel = _this$props.closeLabel,
|
55 | closeButton = _this$props.closeButton,
|
56 | onHide = _this$props.onHide,
|
57 | className = _this$props.className,
|
58 | children = _this$props.children,
|
59 | props = _objectWithoutPropertiesLoose(_this$props, ["closeLabel", "closeButton", "onHide", "className", "children"]);
|
60 |
|
61 | var modal = this.context.$bs_modal;
|
62 |
|
63 | var _splitBsProps = splitBsProps(props),
|
64 | bsProps = _splitBsProps[0],
|
65 | elementProps = _splitBsProps[1];
|
66 |
|
67 | var classes = getClassSet(bsProps);
|
68 | return React.createElement("div", _extends({}, elementProps, {
|
69 | className: classNames(className, classes)
|
70 | }), closeButton && React.createElement(CloseButton, {
|
71 | label: closeLabel,
|
72 | onClick: createChainedFunction(modal && modal.onHide, onHide)
|
73 | }), children);
|
74 | };
|
75 |
|
76 | return ModalHeader;
|
77 | }(React.Component);
|
78 |
|
79 | ModalHeader.propTypes = propTypes;
|
80 | ModalHeader.defaultProps = defaultProps;
|
81 | ModalHeader.contextTypes = contextTypes;
|
82 | export default bsClass('modal-header', ModalHeader); |
\ | No newline at end of file |