18 lines
530 B
Vue
18 lines
530 B
Vue
<script setup>
|
|
import { FontAwesomeIcon } from '@fortawesome/vue-fontawesome'
|
|
import { library } from '@fortawesome/fontawesome-svg-core'
|
|
import * as SolidIcons from '@fortawesome/free-solid-svg-icons'
|
|
|
|
const props = defineProps({
|
|
name: { type: String, required: true },
|
|
})
|
|
|
|
if (SolidIcons[`fa${props.name.charAt(0).toUpperCase()}${props.name.slice(1)}`]) {
|
|
library.add(SolidIcons[`fa${props.name.charAt(0).toUpperCase()}${props.name.slice(1)}`])
|
|
}
|
|
</script>
|
|
|
|
<template>
|
|
<font-awesome-icon :icon="name" />
|
|
</template>
|