@kenreymozo/kenrey-component
Version:
Components for kendallrey
50 lines • 1.93 kB
JavaScript
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