UNPKG

@hocgin/gin-featbar

Version:
152 lines (120 loc) 6.69 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault"); var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property"); var _Reflect$construct = require("@babel/runtime-corejs3/core-js-stable/reflect/construct"); _Object$defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty")); var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat")); var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/classCallCheck")); var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/createClass")); var _inherits2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/inherits")); var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/possibleConstructorReturn")); var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/getPrototypeOf")); var _react = _interopRequireDefault(require("react")); var _classnames2 = _interopRequireDefault(require("classnames")); var _index = _interopRequireDefault(require("./index.css")); var _ginLogo = _interopRequireDefault(require("@hocgin/gin-logo")); function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = _Reflect$construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; } function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } var DefaultContent = function DefaultContent(props) { var feedbackUrl = props.feedbackUrl, changeLogUrl = props.changeLogUrl, linkMeUrl = props.linkMeUrl, helpUrl = props.helpUrl, featureUrl = props.featureUrl, projectUrl = props.projectUrl; return /*#__PURE__*/_react.default.createElement("div", { className: _index.default.dil }, feedbackUrl && /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("a", { href: feedbackUrl }, "\u5EFA\u8BAE\u53CD\u9988")), changeLogUrl && /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("a", { href: changeLogUrl }, "\u66F4\u65B0\u65E5\u5FD7")), helpUrl && /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("a", { href: helpUrl }, "\u5E2E\u52A9\u6587\u6863")), projectUrl && /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("a", { href: projectUrl }, "\u9879\u76EE\u5217\u8868")), featureUrl && /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("a", { href: featureUrl }, "\u65B0\u529F\u80FD")), linkMeUrl && /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("a", { href: linkMeUrl }, "\u8054\u7CFB\u6211"))); }; var Index = /*#__PURE__*/function (_React$Component) { (0, _inherits2.default)(Index, _React$Component); var _super = _createSuper(Index); function Index() { var _context; var _this; (0, _classCallCheck2.default)(this, Index); for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } _this = _super.call.apply(_super, (0, _concat.default)(_context = [this]).call(_context, args)); _this.state = { visible: true, open: false }; _this.onClose = function () { _this.setState({ visible: false }); }; _this.onToggleOpen = function () { _this.setState(function (_ref) { var open = _ref.open; return { open: !open }; }); }; return _this; } (0, _createClass2.default)(Index, [{ key: "render", value: function render() { var _classnames; var _this$props = this.props, children = _this$props.children, title = _this$props.title; var _this$state = this.state, visible = _this$state.visible, open = _this$state.open; return /*#__PURE__*/_react.default.createElement("div", { className: (0, _classnames2.default)(_index.default.featbar, (_classnames = {}, (0, _defineProperty2.default)(_classnames, _index.default.visible, visible), (0, _defineProperty2.default)(_classnames, _index.default.open, open), _classnames)) }, /*#__PURE__*/_react.default.createElement("button", { className: (0, _classnames2.default)(_index.default.toggle), onClick: this.onToggleOpen }, open ? '-' : '+'), /*#__PURE__*/_react.default.createElement("div", { className: _index.default.container }, /*#__PURE__*/_react.default.createElement("div", { className: _index.default.body }, /*#__PURE__*/_react.default.createElement("div", { className: _index.default.title }, title), /*#__PURE__*/_react.default.createElement("div", { className: _index.default.lbl }, children || /*#__PURE__*/_react.default.createElement(DefaultContent, this.props))), /*#__PURE__*/_react.default.createElement("div", { className: _index.default.footer }, /*#__PURE__*/_react.default.createElement("div", { className: _index.default.logo }, /*#__PURE__*/_react.default.createElement(_ginLogo.default, null)), /*#__PURE__*/_react.default.createElement("div", { className: _index.default.btn, onClick: this.onClose }, "\u5173\u95ED")))); } }]); return Index; }(_react.default.Component); Index.defaultProps = { title: 'Hi, 你好! 👏', feedbackUrl: 'https://www.yuque.com/gin/topics?label_ids=13074', changeLogUrl: 'https://www.yuque.com/gin/changelog', helpUrl: 'https://www.yuque.com/gin/help', featureUrl: 'https://www.yuque.com/gin/feature', linkMeUrl: 'mailto:hocgin@gmail.com', projectUrl: 'http://projects.hocg.in' }; var _default = Index; exports.default = _default;