UNPKG

ih-pagelet-navigation-collection

Version:

Styling PS Nav Collections.

102 lines (81 loc) 3.04 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } var _reactAddons = require('react/addons'); var _reactAddons2 = _interopRequireDefault(_reactAddons); var _reactEssence = require('react-essence'); var _UtilJs = require('../../Util.js'); var _UtilJs2 = _interopRequireDefault(_UtilJs); require('./LauncherNavigationCollection.css'); var LauncherNavigationCollection = _reactAddons2['default'].createClass({ displayName: 'LauncherNavigationCollection', propTypes: { showTextLinks: _reactAddons2['default'].PropTypes.string, data: _reactAddons2['default'].PropTypes.object }, render: function render() { var _this = this; var data = this.props.data; // For each folder in the navigation collection var launcherTitles = _UtilJs2['default'].toArray(data.NavCollection.Contents.NavItem).map(function (item) { var navName = item.Label; // handle no navigation item if (item.NavItem === undefined) { return _reactAddons2['default'].createElement('div', null); } // For each link in the folder var launcherIcons = _UtilJs2['default'].toArray(item.NavItem).map(function (nav) { var navImage = null; var isNewWindow = nav.isNewWindow === 'True' ? '_blank' : ''; if (nav.ImageURL !== '') { navImage = _reactAddons2['default'].createElement( 'div', { className: 'brick', key: nav.TargetCRefName }, _reactAddons2['default'].createElement( 'a', { href: nav.AbsolutePortalURL, target: isNewWindow }, _reactAddons2['default'].createElement('img', { src: nav.ImageURL, alt: nav.Label, className: 'launcher-icon' }), _this.props.showTextLinks ? _reactAddons2['default'].createElement( 'span', { className: 'launcher-caption' }, nav.Label ) : null ) ); } return navImage; }); return _reactAddons2['default'].createElement( _reactEssence.Block, { classes: "e-row e-no-margin nav-fix" }, _reactAddons2['default'].createElement( 'h2', { className: "e-pagelet-title" }, _reactAddons2['default'].createElement( 'span', null, navName ) ), _reactAddons2['default'].createElement( 'div', { className: 'e-pagelet-content' }, launcherIcons ) ); }); return _reactAddons2['default'].createElement( _reactEssence.Paper, { classes: "e-pagelet" }, _reactAddons2['default'].createElement( _reactEssence.PaperItem, { classes: 'e-shadow-1 e-background-white e-pagelet-item' }, launcherTitles ) ); } }); exports['default'] = LauncherNavigationCollection; module.exports = exports['default'];