mirror of
https://github.com/lucide-icons/lucide.git
synced 2025-12-19 14:39:21 +01:00
18 lines
469 B
JavaScript
18 lines
469 B
JavaScript
|
|
// eslint-disable-next-line import/no-extraneous-dependencies
|
||
|
|
import { stringify } from 'svgson';
|
||
|
|
|
||
|
|
export default ({ iconName, children }) => {
|
||
|
|
const iconChildNodes = children.map(([name, attributes]) => ({ name, attributes, children: [] }));
|
||
|
|
const iconChildrenHTML = iconChildNodes.map(stringify).join('\n ');
|
||
|
|
return `\
|
||
|
|
<script>
|
||
|
|
import Icon from '../Icon.svelte';
|
||
|
|
</script>
|
||
|
|
|
||
|
|
<Icon name="${iconName}" {...$$props} >
|
||
|
|
${iconChildrenHTML}
|
||
|
|
<slot/>
|
||
|
|
</Icon>
|
||
|
|
`;
|
||
|
|
};
|