public function compose(string $view, array $data = [], \Closure $callback = null)
    {
        if ($callback instanceof \Closure) {
            $content = $this->render($view, $data, true)->content();

            return $callback($this, $content);
        }

        return $this->render($view, $data, true)->content();
    }