public function first() : ?Post
    {
        $params = array_merge($this->getParameters(), [
            'limit' => 1,
        ]);

        $posts = Timber::get_posts($params, $this->postClass);

        if (!is_array($posts)) {
            return null;
        }

        return collect($posts)->first();
    }