-
Notifications
You must be signed in to change notification settings - Fork 7
Expand file tree
/
Copy pathSearchGridRequestBody.php
More file actions
55 lines (51 loc) · 1.55 KB
/
SearchGridRequestBody.php
File metadata and controls
55 lines (51 loc) · 1.55 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
<?php
declare(strict_types=1);
/**
* Pimcore
*
* This source file is available under two different licenses:
* - GNU General Public License version 3 (GPLv3)
* - Pimcore Commercial License (PCL)
* Full copyright and license information is available in
* LICENSE.md which is distributed with this source code.
*
* @copyright Copyright (c) Pimcore GmbH (http://www.pimcore.org)
* @license http://www.pimcore.org/license GPLv3 and PCL
*/
namespace Pimcore\Bundle\StudioBackendBundle\Grid\Attribute\Request;
use Attribute;
use OpenApi\Attributes\Items;
use OpenApi\Attributes\JsonContent;
use OpenApi\Attributes\Property;
use OpenApi\Attributes\RequestBody;
use Pimcore\Bundle\StudioBackendBundle\Grid\Schema\Column;
use Pimcore\Bundle\StudioBackendBundle\Grid\Schema\Filter;
/**
* @internal
*/
#[Attribute(Attribute::TARGET_METHOD)]
final class SearchGridRequestBody extends RequestBody
{
public function __construct()
{
parent::__construct(
required: true,
content: new JsonContent(
required: ['columns'],
properties: [
new Property(
property: 'columns',
type: 'array',
items: new Items(ref: Column::class)
),
new Property(
property: 'filters',
ref: Filter::class,
type: 'object'
),
],
type: 'object',
),
);
}
}