UNPKG

office-ui-fabric-react

Version:

Reusable React components for building experiences for Office 365.

25 lines (23 loc) 1.65 kB
define(["require", "exports", "tslib", "react", "./Icon.Props", "../Image/Image", "../../Utilities", "../../Styling", "./Icon.styles"], function (require, exports, tslib_1, React, Icon_Props_1, Image_1, Utilities_1, Styling_1, Icon_styles_1) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); function Icon(props) { var ariaLabel = props.ariaLabel, className = props.className, customStyles = props.styles, iconName = props.iconName; var styles = Icon_styles_1.getStyles(undefined, customStyles); if (props.iconType === Icon_Props_1.IconType.image || props.iconType === Icon_Props_1.IconType.Image) { var containerClassName = Utilities_1.css('ms-Icon', 'ms-Icon-imageContainer', styles.root, styles.imageContainer, className); return (React.createElement("div", { className: Utilities_1.css(containerClassName, styles.root) }, React.createElement(Image_1.Image, tslib_1.__assign({}, props.imageProps)))); } else { var iconMemberName = iconName ? iconName.charAt(0).toLowerCase() + iconName.substr(1) : ''; return (React.createElement("i", tslib_1.__assign({ "aria-label": ariaLabel }, (ariaLabel ? {} : { role: 'presentation', 'aria-hidden': true, 'data-icon-name': iconName, }), Utilities_1.getNativeProps(props, Utilities_1.htmlElementProperties), { className: Utilities_1.css('ms-Icon', styles.root, props.className) }), Styling_1.IconCodes[iconMemberName])); } } exports.Icon = Icon; }); //# sourceMappingURL=Icon.js.map