patternplate-client
Version:
Universal javascript client application for patternplate
164 lines (124 loc) • 11.7 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = undefined;
var _getOwnPropertyDescriptor = require('babel-runtime/core-js/object/get-own-property-descriptor');
var _getOwnPropertyDescriptor2 = _interopRequireDefault(_getOwnPropertyDescriptor);
var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of');
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = require('babel-runtime/helpers/createClass');
var _createClass3 = _interopRequireDefault(_createClass2);
var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn');
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
var _inherits2 = require('babel-runtime/helpers/inherits');
var _inherits3 = _interopRequireDefault(_inherits2);
var _desc, _value, _class, _class2, _temp;
var _react = require('react');
var _react2 = _interopRequireDefault(_react);
var _reactRouter = require('@marionebl/react-router');
var _autobindDecorator = require('autobind-decorator');
var _autobindDecorator2 = _interopRequireDefault(_autobindDecorator);
var _classnames = require('classnames');
var _classnames2 = _interopRequireDefault(_classnames);
var _lodash = require('lodash');
var _icon = require('../common/icon');
var _icon2 = _interopRequireDefault(_icon);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) {
var desc = {};
Object['ke' + 'ys'](descriptor).forEach(function (key) {
desc[key] = descriptor[key];
});
desc.enumerable = !!desc.enumerable;
desc.configurable = !!desc.configurable;
if ('value' in desc || desc.initializer) {
desc.writable = true;
}
desc = decorators.slice().reverse().reduce(function (desc, decorator) {
return decorator(target, property, desc) || desc;
}, desc);
if (context && desc.initializer !== void 0) {
desc.value = desc.initializer ? desc.initializer.call(context) : void 0;
desc.initializer = undefined;
}
if (desc.initializer === void 0) {
Object['define' + 'Property'](target, property, desc);
desc = null;
}
return desc;
}
function getPathName() {
for (var _len = arguments.length, fragments = Array(_len), _key = 0; _key < _len; _key++) {
fragments[_key] = arguments[_key];
}
var raw = fragments.join('/').split('/').filter(Boolean).map(function (fragment) {
return fragment === '/' ? '' : fragment;
}).filter(Boolean).join('/');
var rawish = raw === '' ? '/' : raw;
var pre = rawish[0] === '/' ? '' : '/';
var post = rawish[rawish.length - 1] === '/' ? '' : '/';
return '' + pre + rawish + post;
}
var NavigationItem = (_class = (_temp = _class2 = function (_React$Component) {
(0, _inherits3.default)(NavigationItem, _React$Component);
function NavigationItem() {
(0, _classCallCheck3.default)(this, NavigationItem);
return (0, _possibleConstructorReturn3.default)(this, (NavigationItem.__proto__ || (0, _getPrototypeOf2.default)(NavigationItem)).apply(this, arguments));
}
(0, _createClass3.default)(NavigationItem, [{
key: 'handleClick',
value: function handleClick(e) {
this.props.onClick(e, this);
}
}, {
key: 'render',
value: function render() {
var props = this.props;
var Component = props.component;
var modifiers = {
'child-active': props.active,
'hidden': props.hidden,
'anchored': props.anchored
};
var itemClassName = (0, _classnames2.default)('navigation-item navigation-item--' + props.type, modifiers);
var linkClassName = (0, _classnames2.default)('navigation-link', modifiers);
var pathname = getPathName(props.base, props.linkTo, props.id);
var to = { pathname: pathname, query: (0, _lodash.omit)(props.query, ['menu-enabled']) };
var title = props.title || 'Navigate to ' + props.name + ' ' + props.type;
var symbol = props.active && props.symbol === 'folder' ? props.symbolActive : props.symbol;
return _react2.default.createElement(
Component,
{ className: itemClassName },
_react2.default.createElement(
_reactRouter.Link,
{
onClick: this.handleClick,
to: to,
title: title,
className: linkClassName
},
_react2.default.createElement(_icon2.default, { symbol: symbol }),
_react2.default.createElement(
'span',
null,
props.name
)
),
props.active && props.children
);
}
}]);
return NavigationItem;
}(_react2.default.Component), _class2.defaultProps = {
component: 'li',
active: false,
hidden: false,
linkTo: 'pattern',
onClick: function onClick() {}
}, _temp), (_applyDecoratedDescriptor(_class.prototype, 'handleClick', [_autobindDecorator2.default], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'handleClick'), _class.prototype)), _class);
exports.default = NavigationItem;
module.exports = exports['default'];
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NvdXJjZS9hcHBsaWNhdGlvbi9jb21wb25lbnRzL25hdmlnYXRpb24vbmF2aWdhdGlvbi1pdGVtLmpzIl0sIm5hbWVzIjpbImdldFBhdGhOYW1lIiwiZnJhZ21lbnRzIiwicmF3Iiwiam9pbiIsInNwbGl0IiwiZmlsdGVyIiwiQm9vbGVhbiIsIm1hcCIsImZyYWdtZW50IiwicmF3aXNoIiwicHJlIiwicG9zdCIsImxlbmd0aCIsIk5hdmlnYXRpb25JdGVtIiwiZSIsInByb3BzIiwib25DbGljayIsIkNvbXBvbmVudCIsImNvbXBvbmVudCIsIm1vZGlmaWVycyIsImFjdGl2ZSIsImhpZGRlbiIsImFuY2hvcmVkIiwiaXRlbUNsYXNzTmFtZSIsInR5cGUiLCJsaW5rQ2xhc3NOYW1lIiwicGF0aG5hbWUiLCJiYXNlIiwibGlua1RvIiwiaWQiLCJ0byIsInF1ZXJ5IiwidGl0bGUiLCJuYW1lIiwic3ltYm9sIiwic3ltYm9sQWN0aXZlIiwiaGFuZGxlQ2xpY2siLCJjaGlsZHJlbiIsImRlZmF1bHRQcm9wcyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7Ozs7QUFDQTs7QUFDQTs7OztBQUNBOzs7O0FBQ0E7O0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUEsU0FBU0EsV0FBVCxHQUFtQztBQUFBLG1DQUFYQyxTQUFXO0FBQVhBLFdBQVc7QUFBQTs7QUFDbEMsS0FBTUMsTUFBTUQsVUFDVkUsSUFEVSxDQUNMLEdBREssRUFFVkMsS0FGVSxDQUVKLEdBRkksRUFHVkMsTUFIVSxDQUdIQyxPQUhHLEVBSVZDLEdBSlUsQ0FJTjtBQUFBLFNBQVlDLGFBQWEsR0FBYixHQUFtQixFQUFuQixHQUF3QkEsUUFBcEM7QUFBQSxFQUpNLEVBS1ZILE1BTFUsQ0FLSEMsT0FMRyxFQU1WSCxJQU5VLENBTUwsR0FOSyxDQUFaO0FBT0EsS0FBTU0sU0FBU1AsUUFBUSxFQUFSLEdBQWEsR0FBYixHQUFtQkEsR0FBbEM7QUFDQSxLQUFNUSxNQUFNRCxPQUFPLENBQVAsTUFBYyxHQUFkLEdBQW9CLEVBQXBCLEdBQXlCLEdBQXJDO0FBQ0EsS0FBTUUsT0FBT0YsT0FBT0EsT0FBT0csTUFBUCxHQUFnQixDQUF2QixNQUE4QixHQUE5QixHQUFvQyxFQUFwQyxHQUF5QyxHQUF0RDtBQUNBLGFBQVVGLEdBQVYsR0FBZ0JELE1BQWhCLEdBQXlCRSxJQUF6QjtBQUNBOztJQUVvQkUsYzs7Ozs7Ozs7Ozs4QkFrQ1JDLEMsRUFBRztBQUNkLFFBQUtDLEtBQUwsQ0FBV0MsT0FBWCxDQUFtQkYsQ0FBbkIsRUFBc0IsSUFBdEI7QUFDQTs7OzJCQUVRO0FBQUEsT0FDREMsS0FEQyxHQUNRLElBRFIsQ0FDREEsS0FEQztBQUFBLE9BRVVFLFNBRlYsR0FFdUJGLEtBRnZCLENBRURHLFNBRkM7OztBQUlSLE9BQU1DLFlBQVk7QUFDakIsb0JBQWdCSixNQUFNSyxNQURMO0FBRWpCLGNBQVVMLE1BQU1NLE1BRkM7QUFHakIsZ0JBQVlOLE1BQU1PO0FBSEQsSUFBbEI7O0FBTUEsT0FBTUMsZ0JBQWdCLGdFQUErQ1IsTUFBTVMsSUFBckQsRUFBNkRMLFNBQTdELENBQXRCO0FBQ0EsT0FBTU0sZ0JBQWdCLDBCQUFXLGlCQUFYLEVBQThCTixTQUE5QixDQUF0QjtBQUNBLE9BQU1PLFdBQVcxQixZQUFZZSxNQUFNWSxJQUFsQixFQUF3QlosTUFBTWEsTUFBOUIsRUFBc0NiLE1BQU1jLEVBQTVDLENBQWpCO0FBQ0EsT0FBTUMsS0FBSyxFQUFDSixrQkFBRCxFQUFXSyxPQUFPLGtCQUFLaEIsTUFBTWdCLEtBQVgsRUFBa0IsQ0FBQyxjQUFELENBQWxCLENBQWxCLEVBQVg7QUFDQSxPQUFNQyxRQUFRakIsTUFBTWlCLEtBQU4scUJBQThCakIsTUFBTWtCLElBQXBDLFNBQTRDbEIsTUFBTVMsSUFBaEU7QUFDQSxPQUFNVSxTQUFTbkIsTUFBTUssTUFBTixJQUFpQkwsTUFBTW1CLE1BQU4sS0FBaUIsUUFBbEMsR0FBOENuQixNQUFNb0IsWUFBcEQsR0FBbUVwQixNQUFNbUIsTUFBeEY7O0FBRUEsVUFDQztBQUFDLGFBQUQ7QUFBQSxNQUFXLFdBQVdYLGFBQXRCO0FBQ0M7QUFBQTtBQUFBO0FBQ0MsZUFBUyxLQUFLYSxXQURmO0FBRUMsVUFBSU4sRUFGTDtBQUdDLGFBQU9FLEtBSFI7QUFJQyxpQkFBV1A7QUFKWjtBQU1DLHFEQUFNLFFBQVFTLE1BQWQsR0FORDtBQU9DO0FBQUE7QUFBQTtBQUFPbkIsWUFBTWtCO0FBQWI7QUFQRCxLQUREO0FBV0VsQixVQUFNSyxNQUFOLElBQWdCTCxNQUFNc0I7QUFYeEIsSUFERDtBQWdCQTs7O0VBdkUwQyxnQkFBTXBCLFMsV0F5QjFDcUIsWSxHQUFlO0FBQ3JCcEIsWUFBVyxJQURVO0FBRXJCRSxTQUFRLEtBRmE7QUFHckJDLFNBQVEsS0FIYTtBQUlyQk8sU0FBUSxTQUphO0FBS3JCWixVQUFTLG1CQUFNLENBQUU7QUFMSSxDO2tCQXpCRkgsYyIsImZpbGUiOiJuYXZpZ2F0aW9uLWl0ZW0uanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHtQcm9wVHlwZXMgYXMgdHlwZXN9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7TGlua30gZnJvbSAnQG1hcmlvbmVibC9yZWFjdC1yb3V0ZXInO1xuaW1wb3J0IGF1dG9iaW5kIGZyb20gJ2F1dG9iaW5kLWRlY29yYXRvcic7XG5pbXBvcnQgY2xhc3NuYW1lcyBmcm9tICdjbGFzc25hbWVzJztcbmltcG9ydCB7b21pdH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCBJY29uIGZyb20gJy4uL2NvbW1vbi9pY29uJztcblxuZnVuY3Rpb24gZ2V0UGF0aE5hbWUoLi4uZnJhZ21lbnRzKSB7XG5cdGNvbnN0IHJhdyA9IGZyYWdtZW50c1xuXHRcdC5qb2luKCcvJylcblx0XHQuc3BsaXQoJy8nKVxuXHRcdC5maWx0ZXIoQm9vbGVhbilcblx0XHQubWFwKGZyYWdtZW50ID0+IGZyYWdtZW50ID09PSAnLycgPyAnJyA6IGZyYWdtZW50KVxuXHRcdC5maWx0ZXIoQm9vbGVhbilcblx0XHQuam9pbignLycpO1xuXHRjb25zdCByYXdpc2ggPSByYXcgPT09ICcnID8gJy8nIDogcmF3O1xuXHRjb25zdCBwcmUgPSByYXdpc2hbMF0gPT09ICcvJyA/ICcnIDogJy8nO1xuXHRjb25zdCBwb3N0ID0gcmF3aXNoW3Jhd2lzaC5sZW5ndGggLSAxXSA9PT0gJy8nID8gJycgOiAnLyc7XG5cdHJldHVybiBgJHtwcmV9JHtyYXdpc2h9JHtwb3N0fWA7XG59XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE5hdmlnYXRpb25JdGVtIGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcblx0c3RhdGljIHByb3BUeXBlcyA9IHtcblx0XHRiYXNlOiB0eXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcblx0XHRjb21wb25lbnQ6IHR5cGVzLm5vZGUsXG5cdFx0YWN0aXZlOiB0eXBlcy5ib29sLFxuXHRcdGhpZGRlbjogdHlwZXMuYm9vbCxcblx0XHRhbmNob3JlZDogdHlwZXMuYm9vbCxcblx0XHRsaW5rVG86IHR5cGVzLnN0cmluZyxcblx0XHRuYW1lOiB0eXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcblx0XHRxdWVyeTogdHlwZXMub2JqZWN0LmlzUmVxdWlyZWQsXG5cdFx0c3ltYm9sOiB0eXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcblx0XHRzeW1ib2xBY3RpdmU6IHR5cGVzLnN0cmluZyxcblx0XHRzZWFyY2hRdWVyeTogdHlwZXMuc3RyaW5nLFxuXHRcdGlkOiB0eXBlcy5vbmVPZlR5cGUoW1xuXHRcdFx0dHlwZXMuc3RyaW5nLFxuXHRcdFx0dHlwZXMubnVtYmVyXG5cdFx0XSksXG5cdFx0Y2hpbGRyZW46IHR5cGVzLm9uZU9mVHlwZShbXG5cdFx0XHR0eXBlcy5ub2RlLFxuXHRcdFx0dHlwZXMuYXJyYXlPZih0eXBlcy5ub2RlKVxuXHRcdF0pLFxuXHRcdG9uQ2xpY2s6IHR5cGVzLmZ1bmMsXG5cdFx0dHlwZTogdHlwZXMuc3RyaW5nXG5cdH07XG5cblx0c3RhdGljIGRlZmF1bHRQcm9wcyA9IHtcblx0XHRjb21wb25lbnQ6ICdsaScsXG5cdFx0YWN0aXZlOiBmYWxzZSxcblx0XHRoaWRkZW46IGZhbHNlLFxuXHRcdGxpbmtUbzogJ3BhdHRlcm4nLFxuXHRcdG9uQ2xpY2s6ICgpID0+IHt9XG5cdH07XG5cblx0QGF1dG9iaW5kXG5cdGhhbmRsZUNsaWNrKGUpIHtcblx0XHR0aGlzLnByb3BzLm9uQ2xpY2soZSwgdGhpcyk7XG5cdH1cblxuXHRyZW5kZXIoKSB7XG5cdFx0Y29uc3Qge3Byb3BzfSA9IHRoaXM7XG5cdFx0Y29uc3Qge2NvbXBvbmVudDogQ29tcG9uZW50fSA9IHByb3BzO1xuXG5cdFx0Y29uc3QgbW9kaWZpZXJzID0ge1xuXHRcdFx0J2NoaWxkLWFjdGl2ZSc6IHByb3BzLmFjdGl2ZSxcblx0XHRcdCdoaWRkZW4nOiBwcm9wcy5oaWRkZW4sXG5cdFx0XHQnYW5jaG9yZWQnOiBwcm9wcy5hbmNob3JlZFxuXHRcdH07XG5cblx0XHRjb25zdCBpdGVtQ2xhc3NOYW1lID0gY2xhc3NuYW1lcyhgbmF2aWdhdGlvbi1pdGVtIG5hdmlnYXRpb24taXRlbS0tJHtwcm9wcy50eXBlfWAsIG1vZGlmaWVycyk7XG5cdFx0Y29uc3QgbGlua0NsYXNzTmFtZSA9IGNsYXNzbmFtZXMoJ25hdmlnYXRpb24tbGluaycsIG1vZGlmaWVycyk7XG5cdFx0Y29uc3QgcGF0aG5hbWUgPSBnZXRQYXRoTmFtZShwcm9wcy5iYXNlLCBwcm9wcy5saW5rVG8sIHByb3BzLmlkKTtcblx0XHRjb25zdCB0byA9IHtwYXRobmFtZSwgcXVlcnk6IG9taXQocHJvcHMucXVlcnksIFsnbWVudS1lbmFibGVkJ10pfTtcblx0XHRjb25zdCB0aXRsZSA9IHByb3BzLnRpdGxlIHx8IGBOYXZpZ2F0ZSB0byAke3Byb3BzLm5hbWV9ICR7cHJvcHMudHlwZX1gO1xuXHRcdGNvbnN0IHN5bWJvbCA9IHByb3BzLmFjdGl2ZSAmJiAocHJvcHMuc3ltYm9sID09PSAnZm9sZGVyJykgPyBwcm9wcy5zeW1ib2xBY3RpdmUgOiBwcm9wcy5zeW1ib2w7XG5cblx0XHRyZXR1cm4gKFxuXHRcdFx0PENvbXBvbmVudCBjbGFzc05hbWU9e2l0ZW1DbGFzc05hbWV9PlxuXHRcdFx0XHQ8TGlua1xuXHRcdFx0XHRcdG9uQ2xpY2s9e3RoaXMuaGFuZGxlQ2xpY2t9XG5cdFx0XHRcdFx0dG89e3RvfVxuXHRcdFx0XHRcdHRpdGxlPXt0aXRsZX1cblx0XHRcdFx0XHRjbGFzc05hbWU9e2xpbmtDbGFzc05hbWV9XG5cdFx0XHRcdFx0PlxuXHRcdFx0XHRcdDxJY29uIHN5bWJvbD17c3ltYm9sfS8+XG5cdFx0XHRcdFx0PHNwYW4+e3Byb3BzLm5hbWV9PC9zcGFuPlxuXHRcdFx0XHQ8L0xpbms+XG5cdFx0XHRcdHtcblx0XHRcdFx0XHRwcm9wcy5hY3RpdmUgJiYgcHJvcHMuY2hpbGRyZW5cblx0XHRcdFx0fVxuXHRcdFx0PC9Db21wb25lbnQ+XG5cdFx0KTtcblx0fVxufVxuIl19
;