poi-plugin-lock-reminder
Version:
A poi plugin for reminding to lock new kanmusu.
70 lines (56 loc) • 2.23 kB
JavaScript
;
exports.__esModule = true;
exports.default = void 0;
var _react = _interopRequireDefault(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _core = require("@blueprintjs/core");
var _styledComponents = _interopRequireDefault(require("styled-components"));
var _lodash = require("lodash");
var _kanmusu = _interopRequireDefault(require("./kanmusu"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const PanelWrapper = _styledComponents.default.div.withConfig({
displayName: "panel__PanelWrapper",
componentId: "sc-1ezt13m-0"
})(["margin-bottom:10px;"]);
const ShipWrapper = (0, _styledComponents.default)(_core.Card).withConfig({
displayName: "panel__ShipWrapper",
componentId: "sc-1ezt13m-1"
})(["display:flex;flex-wrap:wrap;"]);
const Header = (0, _styledComponents.default)(_core.H5).withConfig({
displayName: "panel__Header",
componentId: "sc-1ezt13m-2"
})(["display:flex;align-items:center;cursor:pointer;justify-content:space-between;padding-bottom:5px;border-bottom:1px dashed gray;.bp3-icon{cursor:pointer;}"]);
class Panel extends _react.default.PureComponent {
constructor(...args) {
super(...args);
this.state = {
isOpen: false
};
}
render() {
const {
ships,
title
} = this.props;
const {
isOpen
} = this.state;
return /*#__PURE__*/_react.default.createElement(PanelWrapper, null, /*#__PURE__*/_react.default.createElement(Header, {
onClick: () => this.setState({
isOpen: !isOpen
})
}, `${title}(${ships.length})`, /*#__PURE__*/_react.default.createElement(_core.Icon, {
icon: `chevron-${isOpen ? 'up' : 'down'}`
})), /*#__PURE__*/_react.default.createElement(_core.Collapse, {
isOpen: isOpen,
keepChildrenMounted: true
}, /*#__PURE__*/_react.default.createElement(ShipWrapper, null, (0, _lodash.map)(ships, shipProps => /*#__PURE__*/_react.default.createElement(_kanmusu.default, shipProps)))));
}
}
Panel.propTypes = {
title: _propTypes.default.string,
ships: _propTypes.default.array
};
var _default = Panel;
exports.default = _default;
module.exports = exports.default;