UNPKG

wix-storybook-utils

Version:

Utilities for automated component documentation within Storybook

41 lines 2 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require("tslib"); var react_1 = tslib_1.__importDefault(require("react")); var prop_types_1 = tslib_1.__importDefault(require("prop-types")); var react_collapse_1 = tslib_1.__importDefault(require("react-collapse")); var heading_1 = tslib_1.__importDefault(require("../../../ui/heading")); var styles_scss_1 = tslib_1.__importDefault(require("./styles.scss")); var PropsCollapse = /** @class */ (function (_super) { tslib_1.__extends(PropsCollapse, _super); function PropsCollapse(props) { var _this = _super.call(this, props) || this; _this.toggleCollapse = function () { return _this.setState(function (_a) { var isOpen = _a.isOpen; return ({ isOpen: !isOpen }); }); }; _this.getNumChildren = function () { return Object.keys(_this.props.children).length; }; _this.state = { isOpen: props.isOpen, }; return _this; } PropsCollapse.prototype.render = function () { return (react_1.default.createElement("div", null, react_1.default.createElement("div", { onClick: this.toggleCollapse, className: styles_scss_1.default.head }, react_1.default.createElement(heading_1.default, null, this.props.title), react_1.default.createElement("div", { className: styles_scss_1.default.subtitle }, this.state.isOpen ? 'Hide' : 'Expand')), react_1.default.createElement(react_collapse_1.default, { isOpened: this.state.isOpen }, this.props.children))); }; PropsCollapse.propTypes = { title: prop_types_1.default.string.isRequired, isOpen: prop_types_1.default.bool.isRequired, children: prop_types_1.default.node.isRequired, }; PropsCollapse.defaultProps = { isOpen: false, }; return PropsCollapse; }(react_1.default.Component)); exports.default = PropsCollapse; //# sourceMappingURL=index.js.map