*/
class TranslatorManager extends TranslatorManagerBase
{
+ protected $extensions = [];
+
/**
* @param $extensionPath
*/
);
}
+ /**
+ * @param $library
+ */
+ private function addResourceTranslationsByLibrary($library)
+ {
+ /** @var \Drupal\Console\Core\Utils\DrupalFinder $drupalFinder */
+ $drupalFinder = \Drupal::service('console.drupal_finder');
+ $path = $drupalFinder->getComposerRoot() . '/vendor/' . $library;
+ $this->addResourceTranslationsByExtensionPath(
+ $path
+ );
+ }
+
/**
* @param $extension
* @param $type
*/
public function addResourceTranslationsByExtension($extension, $type)
{
+ if (array_search($extension, $this->extensions) !== false) {
+ return;
+ }
+
+ $this->extensions[] = $extension;
if ($type == 'module') {
$this->addResourceTranslationsByModule($extension);
return;
$this->addResourceTranslationsByTheme($extension);
return;
}
+ if ($type == 'library') {
+ $this->addResourceTranslationsByLibrary($extension);
+ return;
+ }
}
}