loader->getComponentPath($componentName); if(!$this->storage->exists($path)) { return ""; } if(!$cached = $this->cache->get($componentName, $data, $path)) { return $cached; } $template = $this->storage->get($path); $context = new RenderContext(template: $componentName, metaData: new MetaData(''), data: $data); $output = $this->processor->render($context, $template); $this->cache->set($componentName, $data, $path, $output); return $output; } }