implement design interface

This commit is contained in:
Benjamin Beganović 2020-08-04 16:56:17 +02:00
parent 7c4d2cf96f
commit e5defd870b
3 changed files with 32 additions and 2 deletions

View File

@ -13,9 +13,10 @@
namespace App\Services\PdfMaker\Designs; namespace App\Services\PdfMaker\Designs;
use App\Services\PdfMaker\Designs\Utilities\BuildTableHeader; use App\Services\PdfMaker\Designs\Utilities\BuildTableHeader;
use App\Services\PdfMaker\Designs\Utilities\DesignInterface;
use App\Utils\Traits\MakesInvoiceValues; use App\Utils\Traits\MakesInvoiceValues;
class Plain class Plain implements DesignInterface
{ {
use MakesInvoiceValues, BuildTableHeader; use MakesInvoiceValues, BuildTableHeader;
@ -65,7 +66,7 @@ class Plain
]; ];
} }
public function productTable() public function productTable(): array
{ {
return [ return [
'id' => 'product-table', 'id' => 'product-table',

View File

@ -0,0 +1,28 @@
<?php
/**
* Invoice Ninja (https://invoiceninja.com)
*
* @link https://github.com/invoiceninja/invoiceninja source repository
*
* @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
*
* @license https://opensource.org/licenses/AAL
*/
namespace App\Services\PdfMaker\Designs\Utilities;
interface DesignInterface
{
public function html(): ?string;
public function setup(): void;
public function elements(array $context): array;
public function productTable(): array;
public function buildTableHeader(): array;
public function buildTableBody(): array;
}

View File

@ -8,6 +8,7 @@
/> />
<meta http-equiv="x-ua-compatible" content="ie=edge" /> <meta http-equiv="x-ua-compatible" content="ie=edge" />
<link href="https://unpkg.com/tailwindcss@^1.0/dist/tailwind.min.css" rel="stylesheet">
<link rel="stylesheet" href="$css" /> <link rel="stylesheet" href="$css" />
</head> </head>