UNPKG

gd-sprest-js

Version:

SharePoint 2013/Online js components.

43 lines (42 loc) 1.93 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); /** * List Item */ exports.ListItem = function (props) { // Set the class name var className = [ props.className || "", props.isDocument ? "ms-ListItem--document" : "", props.isImage ? "ms-ListItem--image" : "", props.isSelectable ? "is-selectable" : "", props.isSelected ? "is-selected" : "", props.isUnread ? "is-unread" : "", props.isUnseen ? "is-unseen" : "" ].join(' ').trim(); // See if the actions exist var actions = []; if (props.actions && props.actions.length > 0) { // Parse the actions for (var i = 0; i < props.actions.length; i++) { var action = props.actions[i]; // Add the action actions.push([ '<div class="ms-ListItem-action"' + (action.target ? ' data-target="' + action.target + '"' : '') + (action.url ? ' data-url="' + action.url + '"' : '') + '>', '<i class="ms-Icon ms-Icon--' + action.iconName + '"></i>', '</div>' ].join('\n')); } } // Return the template return [ '<li class="ms-ListItem ' + className + '" tabindex="0" data-value=\'' + (props.value || "") + '\'>', props.primaryText ? '<span class="ms-ListItem-primaryText">' + props.primaryText + '</span>' : '', props.secondaryText ? '<span class="ms-ListItem-secondaryText">' + props.secondaryText + '</span>' : '', props.tertiaryText ? '<span class="ms-ListItem-tertiaryText">' + props.tertiaryText + '</span>' : '', props.metaText ? '<span class="ms-ListItem-metaText">' + props.metaText + '</span>' : '', '<div class="ms-ListItem-selectionTarget">' + (props.selectionTarget || "") + '</div>', '<div class="ms-ListItem-actions">' + actions.join('\n') + '</div>', '</li>' ].join('\n'); };