Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(config schema): add openapi-normalizer generator property #830

Merged
merged 1 commit into from
Oct 8, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 62 additions & 0 deletions apps/generator-cli/src/config.schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -384,6 +384,68 @@
}
]
},
"openapi-normalizer": {
"description": "OpenAPI Normalizer transforms the input OpenAPI doc/spec (which may not perfectly conform to the specification) to make it workable with OpenAPI Generator.",
"type": "object",
"properties": {
"ADD_UNSIGNED_TO_INTEGER_WITH_INVALID_MAX_VALUE": {
"description": "when set to true, auto fix integer with maximum value 4294967295 (2^32-1) or long with 18446744073709551615 (2^64-1) by adding x-unsigned to the schema",
"type": "boolean"
},
"FILTER": {
"description": "When set to operationId:addPet|getPetById for example, it will add x-internal:true to operations with operationId not equal to addPet/getPetById (which will have x-internal set to false) so that these operations marked as internal won't be generated",
"type": "string"
},
"KEEP_ONLY_FIRST_TAG_IN_OPERATION": {
"description": "when set to true, only keep the first tag in operation if there are more than one tag defined",
"type": "boolean"
},
"REF_AS_PARENT_IN_ALLOF": {
"description": "when set to true, child schemas in allOf is considered a parent if it's a $ref (instead of inline schema)",
"type": "boolean"
},
"REFACTOR_ALLOF_WITH_PROPERTIES_ONLY": {
"description": "When set to true, refactor schema with allOf and properties in the same level to a schema with allOf only and, the allOf contains a new schema containing the properties in the top level",
"type": "boolean"
},
"REMOVE_ANYOF_ONEOF_AND_KEEP_PROPERTIES_ONLY": {
"description": "when set to true, oneOf/anyOf schema with only required properies only in a schema with properties will be removed",
"type": "boolean"
},
"REMOVE_X_INTERNAL": {
"description": "Set to true if you want to disable the default behavior of removing/hiding the x-internal in operations and model",
"type": "boolean"
},
"SET_CONTAINER_TO_NULLABLE": {
"description": "When set to array|set|map (or just array) for example, it will set nullable in array, set and map to true",
"type": "string"
},
"SET_PRIMITIVE_TYPES_TO_NULLABLE": {
"description": "When set to string|integer|number|boolean (or just string) for example, it will set the type to nullable (nullable: true)",
"type": "string"
},
"SET_TAGS_FOR_ALL_OPERATIONS": {
"description": "when set to a string value, tags in all operations will reset to the string value provided",
"type": "boolean"
},
"SET_TAGS_TO_OPERATIONID": {
"description": "when set to true, tags in all operations will be set to operationId or \"default\" if operationId is empty",
"type": "boolean"
},
"SIMPLIFY_ANYOF_STRING_AND_ENUM_STRING": {
"description": "when set to true, simplify anyOf schema with string and enum of string to just string",
"type": "boolean"
},
"SIMPLIFY_BOOLEAN_ENUM": {
"description": "when set to true, convert boolean enum to just enum",
"type": "boolean"
},
"SIMPLIFY_ONEOF_ANYOF": {
"description": "when set to true, simplify oneOf/anyOf by 1) removing null (sub-schema) or enum of null (sub-schema) and setting nullable to true instead, and 2) simplifying oneOf/anyOf with a single sub-schema to just the sub-schema itself",
"type": "boolean"
}
}
},
"packageName": {
"type": "string",
"description": "package for generated classes (where supported)"
Expand Down