GlobalTranslationFactory.php
750 Bytes
<?php
namespace AC\Asset\Script;
use AC\Asset\Location\Absolute;
use AC\Asset\Script;
use AC\Asset\ScriptFactory;
class GlobalTranslationFactory implements ScriptFactory {
public const HANDLE = 'ac-global-translations';
/**
* @var Absolute
*/
private $location;
/**
* @var Script\Localize\Translation
*/
private $translation;
public function __construct( Absolute $location, Script\Localize\Translation $translation ) {
$this->location = $location;
$this->translation = $translation;
}
public function create(): Script {
$script = new Script( self::HANDLE, $this->location->with_suffix( 'assets/js/global-translations.js' ) );
$script->localize( 'ac_global_translations', $this->translation );
return $script;
}
}