<?php

namespace Lean\Console\Controller;

use Picea\Ui\Method\FormHandler;
use Psr\Http\Message\{ ResponseInterface, ServerRequestInterface };

use Notes\Tell\Attribute\Language, Notes\Route\Attribute\Method\Route;

use \Lean\Console\{ Lib, Form };

#[Language("lean.console")]
class Console {
    use Lib\ConsoleControllerTrait;

    #[Route(route: "/", name: "lean.console:home")]
    public function home(ServerRequestInterface $request, array $arguments) : ResponseInterface
    {
        return $this->renderView("lean-console/page/dashboard/index", [

        ]);
    }

    #[Route(route: "/update", name: "lean.console:update")]
    public function update(ServerRequestInterface $request, array $arguments) : ResponseInterface
    {
        new FormHandler($request, $git = new Form\Update\Git(getenv('PROJECT_PATH')));

        $status = iterator_to_array($git->run("/usr/bin/git status -s"));

        return $this->renderView("lean-console/page/update/index", get_defined_vars());
    }
}