public function translate(array $overrides = [])
{
array_replace_recursive($this->parameters, $overrides);
$id = isset($this->parameters['id']) ? $this->parameters['id'] : null;
$value = isset($this->parameters['value']) ? $this->parameters['value'] : null;
$arguments = isset($this->parameters['arguments']) ? $this->parameters['arguments'] : [];
$source = isset($this->parameters['source']) ? $this->parameters['source'] : 'Main';
$package = isset($this->parameters['package']) ? $this->parameters['package'] : null;
$quantity = isset($this->parameters['quantity']) ? $this->parameters['quantity'] : null;
$locale = isset($this->parameters['locale']) ? $this->parameters['locale'] : null;
if ($id === null) {
return $this->translator->translateByOriginalLabel($value, $arguments, $quantity, $locale, $source, $package);
}
$translation = $this->translator->translateById($id, $arguments, $quantity, $locale, $source, $package);
if ($translation === null && $value !== null) {
return $this->translator->translateByOriginalLabel($value, $arguments, $quantity, $locale, $source, $package);
}
return $translation;
}