added API route to fetch infos about installed plugins (#2561)

This commit is contained in:
Kevin Papst
2021-05-12 14:03:46 +02:00
committed by GitHub
parent f10aad927f
commit f81f9ba492
8 changed files with 168 additions and 5 deletions

48
src/API/Model/Plugin.php Normal file
View File

@@ -0,0 +1,48 @@
<?php
declare(strict_types=1);
/*
* This file is part of the Kimai time-tracking app.
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace App\API\Model;
use App\Plugin\Plugin as CorePlugin;
use JMS\Serializer\Annotation as Serializer;
/**
* @Serializer\ExclusionPolicy("all")
*/
class Plugin
{
/**
* The plugin name, eg. "ExpensesBundle"
*
* @var string
*
* @Serializer\Expose()
* @Serializer\Groups({"Default"})
* @Serializer\Type(name="string")
*/
protected $name;
/**
* The plugin version, eg. "1.14"
*
* @var string
*
* @Serializer\Expose()
* @Serializer\Groups({"Default"})
* @Serializer\Type(name="string")
*/
protected $version;
public function __construct(CorePlugin $plugin)
{
$this->name = $plugin->getId();
$this->version = $plugin->getMetadata()->getVersion();
}
}