for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace LaravelLangBundler;
use Illuminate\Support\Collection;
use LaravelLangBundler\Bundle\Bundle;
use LaravelLangBundler\BundleItems\BundleItem;
class Translator
{
/**
* Translate the values in given bundle.
*
* @param Bundle $bundle
* @param array $parameters
* @param string $locale
* @return Collection
*/
public function translateBundle(
Bundle $bundle,
array $parameters = [],
$locale = null
) {
return $bundle->getValues()
->mapWithKeys(function (BundleItem $bundleItem) use ($parameters, $locale) {
$bundleItem->setParameters($parameters);
if ($choice = $bundleItem->hasChoice()) {
$value = app('translator')->transChoice(
$bundleItem->getId(),
$choice,
$bundleItem->getParameters(),
$locale
);
} else {
$value = app('translator')->trans(
}
return $bundleItem->setValue($value)->getReturnArray();
});