Skip to content

Commit

Permalink
Fixed issue #311
Browse files Browse the repository at this point in the history
  • Loading branch information
uladzimir_paliukhovich committed Jan 14, 2022
1 parent fe39ba2 commit 0230ee8
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 9 deletions.
7 changes: 6 additions & 1 deletion lib/src/code_generators/swagger_enums_generator.dart
Original file line number Diff line number Diff line change
Expand Up @@ -367,7 +367,12 @@ $enumMap

final gemeratedEnumsContent = map.keys
.map((String key) {
final enumValuesMap = map[key] as Map<String, dynamic>;
final enumValues = map[key];

final enumValuesMap = enumValues is Map<String, dynamic>
? enumValues
: <String, dynamic>{};
map[key];

if (enumValuesMap.containsKey('type')) {
return generateEnumContentIfPossible(
Expand Down
25 changes: 17 additions & 8 deletions lib/src/code_generators/swagger_models_generator.dart
Original file line number Diff line number Diff line change
Expand Up @@ -839,8 +839,12 @@ abstract class SwaggerModelsGenerator {

for (var i = 0; i < propertiesMap.keys.length; i++) {
var propertyName = propertiesMap.keys.elementAt(i);
final propertyEntryMap =
propertiesMap[propertyName] as Map<String, dynamic>;

final propertyEntry = propertiesMap[propertyName];
final propertyEntryMap = propertyEntry is Map<String, dynamic>
? propertyEntry
: <String, dynamic>{};

final propertyKey = propertyName;

final basicTypesMap = generateBasicTypesMapFromSchemas(swagger);
Expand Down Expand Up @@ -1212,10 +1216,12 @@ $allHashComponents;
final refString = allOfRef['\$ref'].toString();
final schema = schemas[refString.getUnformattedRef()];

final moreProperties =
schema['properties'] as Map<String, dynamic>? ?? {};
if (schema != null) {
final moreProperties =
schema['properties'] as Map<String, dynamic>? ?? {};

currentProperties.addAll(moreProperties);
currentProperties.addAll(moreProperties);
}
}

return currentProperties;
Expand Down Expand Up @@ -1303,10 +1309,13 @@ $allHashComponents;
}

properties.forEach((propertyName, propertyValue) {
var property = propertyValue as Map<String, dynamic>;
if (propertyValue is! Map<String, dynamic>) {
return;
}

if (property.containsKey('enum') ||
(property['items'] != null && property['items']['enum'] != null)) {
if (propertyValue.containsKey('enum') ||
(propertyValue['items'] != null &&
propertyValue['items']['enum'] != null)) {
results.add(SwaggerModelsGenerator.getValidatedClassName(
SwaggerEnumsGeneratorV3().generateEnumName(
SwaggerModelsGenerator.getValidatedClassName(className),
Expand Down

0 comments on commit 0230ee8

Please sign in to comment.