solid-icons
Version:
Modern solution for use icons on SolidJS
35 lines (31 loc) • 837 B
JavaScript
;
var web = require('solid-js/web');
const CustomIcon = props => {
return IconTemplate(props.src, props);
};
function IconTemplate(iconSrc, props) {
return web.ssrElement("svg", web.mergeProps(() => iconSrc.a, props, {
get color() {
return props.color || "currentColor";
},
get height() {
return props.size || "1em";
},
get width() {
return props.size || "1em";
},
xmlns: "http://www.w3.org/2000/svg",
get style() {
return {
...(typeof props.style === "object" ? props.style : {}),
overflow: "visible"
};
},
get innerHTML() {
return props.title ? `${iconSrc.c}<title>${props.title}</title>` : iconSrc.c;
},
src: undefined
}), undefined, true);
}
exports.CustomIcon = CustomIcon;
exports.IconTemplate = IconTemplate;