public function loadConfiguration()
{
if (!class_exists(Latte\Engine::class)) {
return;
}
$config = $this->validateConfig($this->defaults);
$builder = $this->getContainerBuilder();
$builder->addDefinition($this->prefix('latteFactory'))->setClass(Latte\Engine::class)->addSetup('setTempDirectory', [$this->tempDir])->addSetup('setAutoRefresh', [$this->debugMode])->addSetup('setContentType', [$config['xhtml'] ? Latte\Compiler::CONTENT_XHTML : Latte\Compiler::CONTENT_HTML])->addSetup('Nette\\Utils\\Html::$xhtml = ?', [(bool) $config['xhtml']])->setImplement(Nette\Bridges\ApplicationLatte\ILatteFactory::class);
$builder->addDefinition($this->prefix('templateFactory'))->setClass(Nette\Application\UI\ITemplateFactory::class)->setFactory(Nette\Bridges\ApplicationLatte\TemplateFactory::class);
foreach ($config['macros'] as $macro) {
$this->addMacro($macro);
}
if ($this->name === 'latte') {
$builder->addAlias('nette.latteFactory', $this->prefix('latteFactory'));
$builder->addAlias('nette.templateFactory', $this->prefix('templateFactory'));
}
}