Skip to content

Commit 6724373

Browse files
DerManoManngithub-actions[bot]
authored andcommitted
BACKPORT-CONFLICT
1 parent 488e0fc commit 6724373

9 files changed

Lines changed: 38 additions & 0 deletions

File tree

src/Annotations/AbstractAnnotation.php

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -397,6 +397,18 @@ public function jsonSerialize()
397397
}
398398
}
399399
}
400+
<<<<<<< HEAD
401+
=======
402+
if (isset($data->type) && is_array($data->type)) {
403+
if (1 === count($data->type)) {
404+
$data->type = array_pop($data->type);
405+
} else {
406+
unset($data->type);
407+
}
408+
}
409+
410+
unset($data->unevaluatedProperties);
411+
>>>>>>> 2835140 (Add support for 3.1 `unevaluatedProperties` support (#1907))
400412
}
401413

402414
if (!$this->_context->isVersion('3.0.x')) {

src/Annotations/Schema.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -414,6 +414,11 @@ class Schema extends AbstractAnnotation
414414
*/
415415
public $patternProperties = Generator::UNDEFINED;
416416

417+
/**
418+
* @var array
419+
*/
420+
public $unevaluatedProperties = Generator::UNDEFINED;
421+
417422
/**
418423
* http://json-schema.org/latest/json-schema-validation.html#rfc.section.6.21.
419424
*/

src/Attributes/AdditionalProperties.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ public function __construct(
6565
?array $oneOf = null,
6666
AdditionalProperties|bool|null $additionalProperties = null,
6767
?array $patternProperties = null,
68+
?array $unevaluatedProperties = null,
6869
// annotation
6970
?array $x = null,
7071
?array $attachables = null
@@ -104,7 +105,11 @@ public function __construct(
104105
'oneOf' => $oneOf ?? Generator::UNDEFINED,
105106
'additionalProperties' => $additionalProperties ?? Generator::UNDEFINED,
106107
'patternProperties' => $patternProperties ?? Generator::UNDEFINED,
108+
<<<<<<< HEAD
107109
// annotation
110+
=======
111+
'unevaluatedProperties' => $unevaluatedProperties ?? Generator::UNDEFINED,
112+
>>>>>>> 2835140 (Add support for 3.1 `unevaluatedProperties` support (#1907))
108113
'x' => $x ?? Generator::UNDEFINED,
109114
'attachables' => $attachables ?? Generator::UNDEFINED,
110115
'value' => $this->combine($items, $discriminator, $externalDocs),

src/Attributes/Items.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ public function __construct(
6565
?array $oneOf = null,
6666
AdditionalProperties|bool|null $additionalProperties = null,
6767
?array $patternProperties = null,
68+
?array $unevaluatedProperties = null,
6869
// annotation
6970
?array $x = null,
7071
?array $attachables = null
@@ -104,6 +105,11 @@ public function __construct(
104105
'anyOf' => $anyOf ?? Generator::UNDEFINED,
105106
'oneOf' => $oneOf ?? Generator::UNDEFINED,
106107
'additionalProperties' => $additionalProperties ?? Generator::UNDEFINED,
108+
<<<<<<< HEAD
109+
=======
110+
'patternProperties' => $patternProperties ?? Generator::UNDEFINED,
111+
'unevaluatedProperties' => $unevaluatedProperties ?? Generator::UNDEFINED,
112+
>>>>>>> 2835140 (Add support for 3.1 `unevaluatedProperties` support (#1907))
107113
// annotation
108114
'x' => $x ?? Generator::UNDEFINED,
109115
'attachables' => $attachables ?? Generator::UNDEFINED,

src/Attributes/JsonContent.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,7 @@ public function __construct(
8989
?array $oneOf = null,
9090
AdditionalProperties|bool|null $additionalProperties = null,
9191
?array $patternProperties = null,
92+
?array $unevaluatedProperties = null,
9293
?array $encoding = null,
9394
?string $contentEncoding = null,
9495
?string $contentMediaType = null,
@@ -133,6 +134,7 @@ public function __construct(
133134
'oneOf' => $oneOf ?? Generator::UNDEFINED,
134135
'additionalProperties' => $additionalProperties ?? Generator::UNDEFINED,
135136
'patternProperties' => $patternProperties ?? Generator::UNDEFINED,
137+
'unevaluatedProperties' => $unevaluatedProperties ?? Generator::UNDEFINED,
136138
'encoding' => $encoding ?? Generator::UNDEFINED,
137139
'contentEncoding' => $contentEncoding ?? Generator::UNDEFINED,
138140
'contentMediaType' => $contentMediaType ?? Generator::UNDEFINED,

src/Attributes/Property.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ public function __construct(
6666
?array $oneOf = null,
6767
AdditionalProperties|bool|null $additionalProperties = null,
6868
?array $patternProperties = null,
69+
?array $unevaluatedProperties = null,
6970
?Encoding $encoding = null,
7071
// annotation
7172
?array $x = null,
@@ -108,6 +109,7 @@ public function __construct(
108109
'oneOf' => $oneOf ?? Generator::UNDEFINED,
109110
'additionalProperties' => $additionalProperties ?? Generator::UNDEFINED,
110111
'patternProperties' => $patternProperties ?? Generator::UNDEFINED,
112+
'unevaluatedProperties' => $unevaluatedProperties ?? Generator::UNDEFINED,
111113
'encoding' => $encoding ?? Generator::UNDEFINED,
112114
// annotation
113115
'x' => $x ?? Generator::UNDEFINED,

src/Attributes/Schema.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@ public function __construct(
6767
?array $oneOf = null,
6868
AdditionalProperties|bool|null $additionalProperties = null,
6969
?array $patternProperties = null,
70+
?array $unevaluatedProperties = null,
7071
mixed $const = Generator::UNDEFINED,
7172
?string $contentEncoding = null,
7273
?string $contentMediaType = null,
@@ -109,6 +110,7 @@ public function __construct(
109110
'oneOf' => $oneOf ?? Generator::UNDEFINED,
110111
'additionalProperties' => $additionalProperties ?? Generator::UNDEFINED,
111112
'patternProperties' => $patternProperties ?? Generator::UNDEFINED,
113+
'unevaluatedProperties' => $unevaluatedProperties ?? Generator::UNDEFINED,
112114
'const' => $const,
113115
'contentEncoding' => $contentEncoding ?? Generator::UNDEFINED,
114116
'contentMediaType' => $contentMediaType ?? Generator::UNDEFINED,

src/Attributes/XmlContent.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,7 @@ public function __construct(
6868
?array $oneOf = null,
6969
AdditionalProperties|bool|null $additionalProperties = null,
7070
?array $patternProperties = null,
71+
?array $unevaluatedProperties = null,
7172
?array $encoding = null,
7273
?string $contentEncoding = null,
7374
?string $contentMediaType = null,
@@ -112,6 +113,7 @@ public function __construct(
112113
'oneOf' => $oneOf ?? Generator::UNDEFINED,
113114
'additionalProperties' => $additionalProperties ?? Generator::UNDEFINED,
114115
'patternProperties' => $patternProperties ?? Generator::UNDEFINED,
116+
'unevaluatedProperties' => $unevaluatedProperties ?? Generator::UNDEFINED,
115117
'encoding' => $encoding ?? Generator::UNDEFINED,
116118
'contentEncoding' => $contentEncoding ?? Generator::UNDEFINED,
117119
'contentMediaType' => $contentMediaType ?? Generator::UNDEFINED,

src/Processors/AugmentSchemas.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,8 @@ protected function augmentType(Analysis $analysis, array $schemas): void
9999
$schema->type = 'object';
100100
} elseif (is_array($schema->patternProperties) && $schema->patternProperties !== []) {
101101
$schema->type = 'object';
102+
} elseif (is_array($schema->unevaluatedProperties) && $schema->unevaluatedProperties !== []) {
103+
$schema->type = 'object';
102104
} elseif (is_array($schema->propertyNames) && $schema->propertyNames !== []) {
103105
$schema->type = 'object';
104106
}

0 commit comments

Comments
 (0)