UNPKG

@kenreymozo/kenrey-component

Version:

Components for kendallrey

50 lines 1.93 kB
import { __extends } from "tslib"; import React from 'react'; import { Component } from 'react'; import styles from '../../index.module.css'; var Sidebar = /** @class */ (function (_super) { __extends(Sidebar, _super); function Sidebar(props) { var _this = _super.call(this, props) || this; _this.onClose = function () { if (!Sidebar.instance) return; Sidebar.instance.setState(function () { return ({ isOpen: false, }); }); }; _this.state = { isOpen: false, }; Sidebar.instance = _this; return _this; } Sidebar.prototype.render = function () { var isOpen = this.state.isOpen; return (React.createElement(React.Fragment, null, isOpen && (React.createElement("div", { className: styles['sidebar-block'], onClick: this.onClose }, "Sidebar")), React.createElement("div", { className: "".concat(styles['sidebar-container'], " ").concat(isOpen ? styles['sidebar-show'] : styles['sidebar-hide']) }, React.createElement("div", { className: styles['sidebar-header'] }, React.createElement("button", { className: styles['sidebar-close'], onClick: this.onClose }, "X")), React.createElement("div", null, this.props.children)))); }; Sidebar.instance = null; Sidebar.onOpen = function () { if (!Sidebar.instance) return; Sidebar.instance.setState(function () { return ({ isOpen: true, }); }); }; Sidebar.toggleSidebar = function () { if (!Sidebar.instance) return; Sidebar.instance.setState(function (prevState) { return ({ isOpen: !prevState.isOpen, }); }); }; return Sidebar; }(Component)); export { Sidebar }; export default Sidebar; //# sourceMappingURL=sidebar.js.map