UNPKG

@talend/react-bootstrap

Version:

Bootstrap 3 components built with React

78 lines (77 loc) 2.35 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _propTypes = _interopRequireDefault(require("prop-types")); var _react = _interopRequireDefault(require("react")); var _bootstrapUtils = require("./utils/bootstrapUtils"); var _Collapse = _interopRequireDefault(require("./Collapse")); var _jsxRuntime = require("react/jsx-runtime"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } const propTypes = { /** * Callback fired before the component expands */ onEnter: _propTypes.default.func, /** * Callback fired after the component starts to expand */ onEntering: _propTypes.default.func, /** * Callback fired after the component has expanded */ onEntered: _propTypes.default.func, /** * Callback fired before the component collapses */ onExit: _propTypes.default.func, /** * Callback fired after the component starts to collapse */ onExiting: _propTypes.default.func, /** * Callback fired after the component has collapsed */ onExited: _propTypes.default.func }; const contextTypes = { $bs_panel: _propTypes.default.shape({ headingId: _propTypes.default.string, bodyId: _propTypes.default.string, bsClass: _propTypes.default.string, expanded: _propTypes.default.bool }) }; class PanelCollapse extends _react.default.Component { render() { const { children } = this.props; const { headingId, bodyId, bsClass: _bsClass, expanded } = this.context.$bs_panel || {}; const [bsProps, props] = (0, _bootstrapUtils.splitBsProps)(this.props); bsProps.bsClass = _bsClass || bsProps.bsClass; if (headingId && bodyId) { props.id = bodyId; props.role = props.role || 'tabpanel'; props['aria-labelledby'] = headingId; } return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Collapse.default, { in: expanded, ...props, children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", { className: (0, _bootstrapUtils.prefix)(bsProps, 'collapse'), children: children }) }); } } PanelCollapse.propTypes = propTypes; PanelCollapse.contextTypes = contextTypes; var _default = exports.default = (0, _bootstrapUtils.bsClass)('panel', PanelCollapse); //# sourceMappingURL=PanelCollapse.js.map