* Use of this software is governed by the Business Source License included in the LICENSE file and at https://getparthenon.com/docs/next/license.
9
*
10
* Change Date: TBD ( 3 years after 2.2.0 release )
11
*
12
* On the date above, in accordance with the Business Source License, use of this software will be governed by the open source license specified in the LICENSE file.
13
*/
14
15
namespace Parthenon\Billing\Athena;
16
17
use Parthenon\Athena\AbstractSection;
18
use Parthenon\Athena\EntityForm;
19
use Parthenon\Athena\Repository\CrudRepositoryInterface;
20
use Parthenon\Billing\Entity\Product;
21
use Parthenon\Billing\Repository\ProductRepositoryInterface;
22
23
class ProductSection extends AbstractSection
24
{
25
public function __construct(private ProductRepositoryInterface $productRepository)
26
{
27
}
28
29
public function getUrlTag(): string
30
{
31
return 'billing-product';
32
}
33
34
public function getRepository(): CrudRepositoryInterface
35
{
36
return $this->productRepository;
37
}
38
39
public function getEntity()
40
{
41
return new Product();
42
}
43
44
public function getMenuSection(): string
45
{
46
return 'Billing';
47
}
48
49
public function getMenuName(): string
50
{
51
return 'Product';
52
}
53
54
public function buildEntityForm(EntityForm $entityForm): EntityForm