@fluentui/react-icons-mdl2
Version:
SVG icon components for @fluentui/react
26 lines • 1.62 kB
JavaScript
define(["require", "exports", "tslib", "react", "@fluentui/utilities", "./SvgIcon.scss", "@fluentui/react-icon-provider"], function (require, exports, tslib_1, React, utilities_1, classes, react_icon_provider_1) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var createSvgIcon = function (_a) {
var svg = _a.svg, displayName = _a.displayName;
var Component = function (props) {
var _a;
var _b;
var className = props.className, _c = props.style, style = _c === void 0 ? {} : _c;
var icons = (0, react_icon_provider_1.useIconSubset)(); // TODO: handle fontFace and styles
var nativeProps = (0, utilities_1.getNativeProps)(props, utilities_1.htmlElementProperties);
var containerProps = props['aria-label'] || props['aria-labelledby'] || props.title
? {
role: 'img',
}
: (_a = {},
_a['aria-hidden'] = true,
_a);
return React.createElement('span', tslib_1.__assign(tslib_1.__assign(tslib_1.__assign({}, containerProps), nativeProps), { className: (0, utilities_1.css)(classes.root, className), style: style }), ((_b = icons === null || icons === void 0 ? void 0 : icons.icons) === null || _b === void 0 ? void 0 : _b[displayName]) ? icons.icons[displayName] : svg({ classes: classes, props: props }));
};
Component.displayName = displayName;
return Component;
};
exports.default = createSvgIcon;
});
//# sourceMappingURL=createSvgIcon.js.map