public function FontAwesomeManager::getMetadata in Font Awesome Icons 8.2
Loads the Font Awesome icon metadata.
Return value
array The available FontAwesome icon metadata.
Overrides FontAwesomeManagerInterface::getMetadata
2 calls to FontAwesomeManager::getMetadata()
- FontAwesomeManager::getIconMetadata in src/
FontAwesomeManager.php - Extract metadata for a specific icon.
- FontAwesomeManager::getIcons in src/
FontAwesomeManager.php - Get icons.
File
- src/
FontAwesomeManager.php, line 302
Class
- FontAwesomeManager
- Icon Manager Service for Font Awesome.
Namespace
Drupal\fontawesomeCode
public function getMetadata() {
// Allow modules and themes to provide their own icon metadata first. If
// none are provided, use the default metadata file.
/** @var \Drupal\Component\Discovery\YamlDiscovery $yaml_discovery */
$yaml_discovery = new YamlDiscovery('fontawesome.iconlist', $this->themeHandler
->getThemeDirectories() + $this->moduleHandler
->getModuleDirectories());
$data = $yaml_discovery
->findAll();
$metadata = [];
if (!empty($data)) {
foreach ($data as $icons) {
$metadata = array_merge_recursive($metadata, $icons);
}
}
else {
$metadata = Yaml::parse(file_get_contents($this
->getMetadataFilepath()));
}
// Store the name in the metadata.
foreach ($metadata as $name => &$data) {
$data['name'] = $name;
}
$this->moduleHandler
->alter('fontawesome_metadata', $metadata);
return $metadata;
}