Skip to content

Commit 1e33b1f

Browse files
committed
Revert "Merge pull request #1165 from kshramt/free-form-object"
This reverts commit 4379538, reversing changes made to 168da7a.
1 parent 88aca06 commit 1e33b1f

File tree

3 files changed

+174
-288
lines changed

3 files changed

+174
-288
lines changed

src/openApi/v3/parser/getModel.ts

Lines changed: 10 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -95,13 +95,9 @@ export const getModel = (
9595
}
9696
}
9797

98-
if (
99-
definition.type === 'object' &&
100-
(typeof definition.additionalProperties === 'object' || definition.additionalProperties === true)
101-
) {
102-
const ap = typeof definition.additionalProperties === 'object' ? definition.additionalProperties : {};
103-
if (ap.$ref) {
104-
const additionalProperties = getType(ap.$ref);
98+
if (definition.type === 'object' && typeof definition.additionalProperties === 'object') {
99+
if (definition.additionalProperties.$ref) {
100+
const additionalProperties = getType(definition.additionalProperties.$ref);
105101
model.export = 'dictionary';
106102
model.type = additionalProperties.type;
107103
model.base = additionalProperties.base;
@@ -110,7 +106,7 @@ export const getModel = (
110106
model.default = getModelDefault(definition, model);
111107
return model;
112108
} else {
113-
const additionalProperties = getModel(openApi, ap);
109+
const additionalProperties = getModel(openApi, definition.additionalProperties);
114110
model.export = 'dictionary';
115111
model.type = additionalProperties.type;
116112
model.base = additionalProperties.base;
@@ -150,12 +146,12 @@ export const getModel = (
150146
}
151147

152148
if (definition.type === 'object') {
153-
if (definition.properties) {
154-
model.export = 'interface';
155-
model.type = 'any';
156-
model.base = 'any';
157-
model.default = getModelDefault(definition, model);
149+
model.export = 'interface';
150+
model.type = 'any';
151+
model.base = 'any';
152+
model.default = getModelDefault(definition, model);
158153

154+
if (definition.properties) {
159155
const modelProperties = getModelProperties(openApi, definition, getModel, model);
160156
modelProperties.forEach(modelProperty => {
161157
model.imports.push(...modelProperty.imports);
@@ -165,18 +161,8 @@ export const getModel = (
165161
model.enums.push(modelProperty);
166162
}
167163
});
168-
return model;
169-
} else {
170-
const additionalProperties = getModel(openApi, {});
171-
model.export = 'dictionary';
172-
model.type = additionalProperties.type;
173-
model.base = additionalProperties.base;
174-
model.template = additionalProperties.template;
175-
model.link = additionalProperties;
176-
model.imports.push(...additionalProperties.imports);
177-
model.default = getModelDefault(definition, model);
178-
return model;
179164
}
165+
return model;
180166
}
181167

182168
// If the schema has a type than it can be a basic or generic type.

0 commit comments

Comments
 (0)