const icons = require.context( '@akryum/md-icons-svg/svg/', true, /materialicons\/24px\.svg$/, ) export default { install() { const sprites = [''] let spriteIndex = 0 // Load all the SVG symbols icons.keys().forEach((key, index) => { let result = icons(key) const [, iconName] = /(\w+)\/materialicons/.exec(key) // eslint-disable-next-line regexp/no-super-linear-backtracking const [, content] = /(.*)<\/svg>/.exec(result) result = `${content}` sprites[spriteIndex] += result if ((index + 1) % 40 === 0) { sprites.push('') spriteIndex++ } }) for (const html of sprites) { const iconsWrapper = document.createElement('div') iconsWrapper.style.display = 'none' iconsWrapper.innerHTML = html document.body.insertBefore(iconsWrapper, document.body.firstChild) } }, } export function generateHtmlIcon(icon: string) { return `
` }