Fix swagger2 docs with array model-to-model refference

This commit is contained in:
Matej Bačo
2022-06-19 08:17:10 +00:00
parent f14c8ad131
commit 87d85d14d4
3 changed files with 16 additions and 7 deletions
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+14 -5
View File
@@ -401,11 +401,20 @@ class Swagger2 extends Format
foreach ($this->models as $model) {
foreach ($model->getRules() as $rule) {
if (
in_array($model->getType(), $usedModels)
&& !in_array($rule['type'], ['string', 'integer', 'boolean', 'json', 'float'])
) {
$usedModels[] = $rule['type'];
if (!in_array($model->getType(), $usedModels)) {
continue;
}
if (\is_array($rule['type'])) {
foreach ($rule['type'] as $ruleType) {
if (!in_array($ruleType, ['string', 'integer', 'boolean', 'json', 'float']) ) {
$usedModels[] = $ruleType;
}
}
} else {
if (!in_array($rule['type'], ['string', 'integer', 'boolean', 'json', 'float']) ) {
$usedModels[] = $rule['type'];
}
}
}
}