Skip to content
Snippets Groups Projects

Issue #3368808: Override Composer Stager's TranslatableFactory to return Drupal's TranslatableMarkup

Merged Issue #3368808: Override Composer Stager's TranslatableFactory to return Drupal's TranslatableMarkup
2 files
+ 99
0
Compare changes
  • Side-by-side
  • Inline
Files
2
<?php
declare(strict_types = 1);
namespace Drupal\package_manager;
use Drupal\Core\StringTranslation\TranslatableMarkup;
use PhpTuf\ComposerStager\API\Translation\Service\TranslatorInterface;
use PhpTuf\ComposerStager\API\Translation\Value\TranslatableInterface;
use PhpTuf\ComposerStager\API\Translation\Value\TranslationParametersInterface;
/**
* An adapter for interoperable string translation.
*
* This class is designed to adapt Drupal's style of string translation so it
* can be used with the Symfony-inspired architecture used by Composer Stager.
*/
final class TranslatableStringAdapter extends TranslatableMarkup implements TranslatableInterface, TranslationParametersInterface {
/**
* {@inheritdoc}
*/
public function getAll(): array {
return $this->getArguments();
}
/**
* {@inheritdoc}
*/
public function trans(TranslatorInterface $translator, ?string $locale = NULL): string {
return $translator->trans(
$this->getUntranslatedString(),
$this,
$this->getOption('context'),
$locale ?? $this->getOption('langcode'),
);
}
}
Loading