swagger-client 2.1.29 → 2.2.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -77
- package/browser/swagger-client.js +215 -323
- package/browser/swagger-client.min.js +8 -8
- package/lib/auth.js +1 -1
- package/lib/client.js +12 -57
- package/lib/helpers.js +2 -23
- package/lib/http.js +31 -22
- package/lib/resolver.js +97 -101
- package/lib/schema-markup.js +17 -10
- package/lib/spec-converter.js +1 -3
- package/lib/types/operation.js +41 -94
- package/package.json +1 -2
package/lib/http.js
CHANGED
|
@@ -38,10 +38,6 @@ SwaggerHttp.prototype.execute = function (obj, opts) {
|
|
|
38
38
|
}
|
|
39
39
|
client.opts = opts || {};
|
|
40
40
|
|
|
41
|
-
if (opts && opts.requestAgent) {
|
|
42
|
-
request = opts.requestAgent;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
41
|
// legacy support
|
|
46
42
|
var hasJQuery = false;
|
|
47
43
|
if(typeof window !== 'undefined') {
|
|
@@ -73,14 +69,14 @@ SwaggerHttp.prototype.execute = function (obj, opts) {
|
|
|
73
69
|
|
|
74
70
|
var responseInterceptor = function(data) {
|
|
75
71
|
if(opts && opts.responseInterceptor) {
|
|
76
|
-
data = opts.responseInterceptor.apply(data
|
|
72
|
+
data = opts.responseInterceptor.apply(data);
|
|
77
73
|
}
|
|
78
74
|
return success(data);
|
|
79
75
|
};
|
|
80
76
|
|
|
81
77
|
var errorInterceptor = function(data) {
|
|
82
78
|
if(opts && opts.responseInterceptor) {
|
|
83
|
-
data = opts.responseInterceptor.apply(data
|
|
79
|
+
data = opts.responseInterceptor.apply(data);
|
|
84
80
|
}
|
|
85
81
|
error(data);
|
|
86
82
|
};
|
|
@@ -90,12 +86,7 @@ SwaggerHttp.prototype.execute = function (obj, opts) {
|
|
|
90
86
|
};
|
|
91
87
|
|
|
92
88
|
obj.on.response = function(data) {
|
|
93
|
-
|
|
94
|
-
errorInterceptor(data);
|
|
95
|
-
}
|
|
96
|
-
else {
|
|
97
|
-
responseInterceptor(data);
|
|
98
|
-
}
|
|
89
|
+
responseInterceptor(data);
|
|
99
90
|
};
|
|
100
91
|
|
|
101
92
|
if (_.isObject(obj) && _.isObject(obj.body)) {
|
|
@@ -223,13 +214,8 @@ SuperagentHttpClient.prototype.execute = function (obj) {
|
|
|
223
214
|
method = 'del';
|
|
224
215
|
}
|
|
225
216
|
var headers = obj.headers || {};
|
|
226
|
-
|
|
227
217
|
var r = request[method](obj.url);
|
|
228
218
|
|
|
229
|
-
if (obj.connectionAgent) {
|
|
230
|
-
r.agent(obj.connectionAgent);
|
|
231
|
-
}
|
|
232
|
-
|
|
233
219
|
if (timeout) {
|
|
234
220
|
r.timeout(timeout);
|
|
235
221
|
}
|
|
@@ -254,7 +240,33 @@ SuperagentHttpClient.prototype.execute = function (obj) {
|
|
|
254
240
|
if (contentType.indexOf('multipart/form-data') === 0) {
|
|
255
241
|
delete headers['Content-Type'];
|
|
256
242
|
if({}.toString.apply(obj.body) === '[object FormData]') {
|
|
257
|
-
|
|
243
|
+
var itr = obj.body.keys();
|
|
244
|
+
var p = [];
|
|
245
|
+
while(true) {
|
|
246
|
+
var v = itr.next();
|
|
247
|
+
if(v.done) {
|
|
248
|
+
break;
|
|
249
|
+
}
|
|
250
|
+
var key = v.value;
|
|
251
|
+
// only once
|
|
252
|
+
if(p.indexOf(key) === -1) {
|
|
253
|
+
p.push(key);
|
|
254
|
+
var value = obj.body.getAll(key);
|
|
255
|
+
if({}.toString.apply(value) === '[object File]') {
|
|
256
|
+
r.attach(key, value);
|
|
257
|
+
}
|
|
258
|
+
else {
|
|
259
|
+
if (Array.isArray(value)) {
|
|
260
|
+
for (var t in value) {
|
|
261
|
+
r.field(key, value[t]);
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
else {
|
|
265
|
+
r.field(key, value);
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
}
|
|
258
270
|
}
|
|
259
271
|
else {
|
|
260
272
|
var keyname, value, v;
|
|
@@ -272,7 +284,6 @@ SuperagentHttpClient.prototype.execute = function (obj) {
|
|
|
272
284
|
}
|
|
273
285
|
}
|
|
274
286
|
else if (_.isObject(obj.body)) {
|
|
275
|
-
// non multipart/form-data
|
|
276
287
|
obj.body = JSON.stringify(obj.body);
|
|
277
288
|
r.send(obj.body);
|
|
278
289
|
}
|
|
@@ -367,7 +378,5 @@ SuperagentHttpClient.prototype. binaryRequest = function (accept) {
|
|
|
367
378
|
if(!accept) {
|
|
368
379
|
return false;
|
|
369
380
|
}
|
|
370
|
-
return (/^image/i).test(accept)
|
|
371
|
-
|| (/^application\/pdf/).test(accept)
|
|
372
|
-
|| (/^application\/octet-stream/).test(accept);
|
|
381
|
+
return (/^image/i).test(accept) || (/^application\/pdf/).test(accept);
|
|
373
382
|
};
|
package/lib/resolver.js
CHANGED
|
@@ -44,7 +44,7 @@ Resolver.prototype.resolve = function (spec, arg1, arg2, arg3) {
|
|
|
44
44
|
callback = arg1;
|
|
45
45
|
scope = arg2;
|
|
46
46
|
}
|
|
47
|
-
var _root = root
|
|
47
|
+
var _root = root;
|
|
48
48
|
this.scope = (scope || this);
|
|
49
49
|
this.iteration = this.iteration || 0;
|
|
50
50
|
|
|
@@ -56,7 +56,7 @@ Resolver.prototype.resolve = function (spec, arg1, arg2, arg3) {
|
|
|
56
56
|
opts.responseInterceptor = this.scope.options.responseInterceptor;
|
|
57
57
|
}
|
|
58
58
|
|
|
59
|
-
var name, path, property, propertyName
|
|
59
|
+
var name, path, property, propertyName;
|
|
60
60
|
var processedCalls = 0, resolvedRefs = {}, unresolvedRefs = {};
|
|
61
61
|
var resolutionTable = []; // store objects for dereferencing
|
|
62
62
|
|
|
@@ -64,7 +64,7 @@ Resolver.prototype.resolve = function (spec, arg1, arg2, arg3) {
|
|
|
64
64
|
// definitions
|
|
65
65
|
for (name in spec.definitions) {
|
|
66
66
|
var definition = spec.definitions[name];
|
|
67
|
-
if(definition
|
|
67
|
+
if(definition['$ref']) {
|
|
68
68
|
this.resolveInline(root, spec, definition, resolutionTable, unresolvedRefs, definition);
|
|
69
69
|
}
|
|
70
70
|
else {
|
|
@@ -87,25 +87,25 @@ Resolver.prototype.resolve = function (spec, arg1, arg2, arg3) {
|
|
|
87
87
|
// shared parameters
|
|
88
88
|
spec.parameters = spec.parameters || {};
|
|
89
89
|
for(name in spec.parameters) {
|
|
90
|
-
parameter = spec.parameters[name];
|
|
90
|
+
var parameter = spec.parameters[name];
|
|
91
91
|
if (parameter.in === 'body' && parameter.schema) {
|
|
92
92
|
if(_.isArray(parameter.schema.allOf)) {
|
|
93
93
|
// move to a definition
|
|
94
|
-
modelName = 'inline_model';
|
|
95
|
-
var
|
|
96
|
-
done = false; counter = 0;
|
|
94
|
+
var modelName = 'inline_model';
|
|
95
|
+
var name = modelName;
|
|
96
|
+
var done = false; var counter = 0;
|
|
97
97
|
while(!done) {
|
|
98
|
-
if(typeof spec.definitions[
|
|
98
|
+
if(typeof spec.definitions[name] === 'undefined') {
|
|
99
99
|
done = true;
|
|
100
100
|
break;
|
|
101
101
|
}
|
|
102
|
-
|
|
102
|
+
name = modelName + '_' + counter;
|
|
103
103
|
counter ++;
|
|
104
104
|
}
|
|
105
|
-
spec.definitions[
|
|
105
|
+
spec.definitions[name] = { allOf: parameter.schema.allOf };
|
|
106
106
|
delete parameter.schema.allOf;
|
|
107
|
-
parameter.schema.$ref = '#/definitions/' +
|
|
108
|
-
this.processAllOf(root,
|
|
107
|
+
parameter.schema.$ref = '#/definitions/' + name;
|
|
108
|
+
this.processAllOf(root, name, spec.definitions[name], resolutionTable, unresolvedRefs, spec);
|
|
109
109
|
}
|
|
110
110
|
else {
|
|
111
111
|
this.resolveTo(root, parameter.schema, resolutionTable, location);
|
|
@@ -123,110 +123,106 @@ Resolver.prototype.resolve = function (spec, arg1, arg2, arg3) {
|
|
|
123
123
|
var method, operation, responseCode;
|
|
124
124
|
path = spec.paths[name];
|
|
125
125
|
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
126
|
+
for (method in path) {
|
|
127
|
+
// operation reference
|
|
128
|
+
if(method === '$ref') {
|
|
129
|
+
// location = path[method];
|
|
130
|
+
location = '/paths' + name;
|
|
131
|
+
this.resolveInline(root, spec, path, resolutionTable, unresolvedRefs, location);
|
|
132
|
+
}
|
|
133
|
+
else {
|
|
134
|
+
operation = path[method];
|
|
135
|
+
var sharedParameters = path.parameters || [];
|
|
136
|
+
var parameters = operation.parameters || [];
|
|
137
|
+
|
|
138
|
+
for (i in sharedParameters) {
|
|
139
|
+
var parameter = sharedParameters[i];
|
|
140
|
+
parameters.unshift(parameter);
|
|
141
|
+
}
|
|
142
|
+
if(method !== 'parameters' && _.isObject(operation)) {
|
|
143
|
+
operation.parameters = operation.parameters || parameters;
|
|
133
144
|
}
|
|
134
|
-
else {
|
|
135
|
-
operation = path[method];
|
|
136
|
-
var sharedParameters = path.parameters || [];
|
|
137
|
-
var parameters = operation.parameters || [];
|
|
138
145
|
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
146
|
+
for (i in parameters) {
|
|
147
|
+
var parameter = parameters[i];
|
|
148
|
+
location = '/paths' + name + '/' + method + '/parameters';
|
|
149
|
+
|
|
150
|
+
if (parameter.in === 'body' && parameter.schema) {
|
|
151
|
+
if(_.isArray(parameter.schema.allOf)) {
|
|
152
|
+
// move to a definition
|
|
153
|
+
var modelName = 'inline_model';
|
|
154
|
+
var name = modelName;
|
|
155
|
+
var done = false; var counter = 0;
|
|
156
|
+
while(!done) {
|
|
157
|
+
if(typeof spec.definitions[name] === 'undefined') {
|
|
158
|
+
done = true;
|
|
159
|
+
break;
|
|
160
|
+
}
|
|
161
|
+
name = modelName + '_' + counter;
|
|
162
|
+
counter ++;
|
|
163
|
+
}
|
|
164
|
+
spec.definitions[name] = { allOf: parameter.schema.allOf };
|
|
165
|
+
delete parameter.schema.allOf;
|
|
166
|
+
parameter.schema.$ref = '#/definitions/' + name;
|
|
167
|
+
this.processAllOf(root, name, spec.definitions[name], resolutionTable, unresolvedRefs, spec);
|
|
168
|
+
}
|
|
169
|
+
else {
|
|
170
|
+
this.resolveTo(root, parameter.schema, resolutionTable, location);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
142
173
|
|
|
143
|
-
if (
|
|
144
|
-
|
|
174
|
+
if (parameter.$ref) {
|
|
175
|
+
// parameter reference
|
|
176
|
+
this.resolveInline(root, spec, parameter, resolutionTable, unresolvedRefs, parameter.$ref);
|
|
145
177
|
}
|
|
178
|
+
}
|
|
146
179
|
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
180
|
+
for (responseCode in operation.responses) {
|
|
181
|
+
var response = operation.responses[responseCode];
|
|
182
|
+
location = '/paths' + name + '/' + method + '/responses/' + responseCode;
|
|
150
183
|
|
|
151
|
-
|
|
152
|
-
|
|
184
|
+
if(_.isObject(response)) {
|
|
185
|
+
if(response.$ref) {
|
|
186
|
+
// response reference
|
|
187
|
+
this.resolveInline(root, spec, response, resolutionTable, unresolvedRefs, location);
|
|
188
|
+
}
|
|
189
|
+
if (response.schema) {
|
|
190
|
+
var responseObj = response;
|
|
191
|
+
if(_.isArray(responseObj.schema.allOf)) {
|
|
153
192
|
// move to a definition
|
|
154
|
-
modelName = 'inline_model';
|
|
155
|
-
name = modelName;
|
|
156
|
-
done = false;
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
if (typeof spec.definitions[name] === 'undefined') {
|
|
193
|
+
var modelName = 'inline_model';
|
|
194
|
+
var name = modelName;
|
|
195
|
+
var done = false; var counter = 0;
|
|
196
|
+
while(!done) {
|
|
197
|
+
if(typeof spec.definitions[name] === 'undefined') {
|
|
160
198
|
done = true;
|
|
161
199
|
break;
|
|
162
200
|
}
|
|
163
201
|
name = modelName + '_' + counter;
|
|
164
|
-
counter++;
|
|
202
|
+
counter ++;
|
|
165
203
|
}
|
|
166
|
-
spec.definitions[name] = {allOf:
|
|
167
|
-
delete
|
|
168
|
-
|
|
204
|
+
spec.definitions[name] = { allOf: responseObj.schema.allOf };
|
|
205
|
+
delete responseObj.schema.allOf;
|
|
206
|
+
delete responseObj.schema.type;
|
|
207
|
+
responseObj.schema.$ref = '#/definitions/' + name;
|
|
169
208
|
this.processAllOf(root, name, spec.definitions[name], resolutionTable, unresolvedRefs, spec);
|
|
170
209
|
}
|
|
171
|
-
else {
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
if (parameter.$ref) {
|
|
177
|
-
// parameter reference
|
|
178
|
-
this.resolveInline(root, spec, parameter, resolutionTable, unresolvedRefs, parameter.$ref);
|
|
179
|
-
}
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
for (responseCode in operation.responses) {
|
|
183
|
-
var response = operation.responses[responseCode];
|
|
184
|
-
location = '/paths' + name + '/' + method + '/responses/' + responseCode;
|
|
185
|
-
|
|
186
|
-
if (_.isObject(response)) {
|
|
187
|
-
if (response.$ref) {
|
|
188
|
-
// response reference
|
|
189
|
-
this.resolveInline(root, spec, response, resolutionTable, unresolvedRefs, location);
|
|
190
|
-
}
|
|
191
|
-
if (response.schema) {
|
|
192
|
-
var responseObj = response;
|
|
193
|
-
if (_.isArray(responseObj.schema.allOf)) {
|
|
194
|
-
// move to a definition
|
|
195
|
-
modelName = 'inline_model';
|
|
196
|
-
name = modelName;
|
|
197
|
-
done = false;
|
|
198
|
-
counter = 0;
|
|
199
|
-
while (!done) {
|
|
200
|
-
if (typeof spec.definitions[name] === 'undefined') {
|
|
201
|
-
done = true;
|
|
202
|
-
break;
|
|
203
|
-
}
|
|
204
|
-
name = modelName + '_' + counter;
|
|
205
|
-
counter++;
|
|
206
|
-
}
|
|
207
|
-
spec.definitions[name] = {allOf: responseObj.schema.allOf};
|
|
208
|
-
delete responseObj.schema.allOf;
|
|
209
|
-
delete responseObj.schema.type;
|
|
210
|
-
responseObj.schema.$ref = '#/definitions/' + name;
|
|
211
|
-
this.processAllOf(root, name, spec.definitions[name], resolutionTable, unresolvedRefs, spec);
|
|
212
|
-
}
|
|
213
|
-
else if ('array' === responseObj.schema.type) {
|
|
214
|
-
if (responseObj.schema.items && responseObj.schema.items.$ref) {
|
|
215
|
-
// response reference
|
|
216
|
-
this.resolveInline(root, spec, responseObj.schema.items, resolutionTable, unresolvedRefs, location);
|
|
217
|
-
}
|
|
218
|
-
}
|
|
219
|
-
else {
|
|
220
|
-
this.resolveTo(root, response.schema, resolutionTable, location);
|
|
210
|
+
else if('array' === responseObj.schema.type) {
|
|
211
|
+
if(responseObj.schema.items && responseObj.schema.items.$ref) {
|
|
212
|
+
// response reference
|
|
213
|
+
this.resolveInline(root, spec, responseObj.schema.items, resolutionTable, unresolvedRefs, location);
|
|
221
214
|
}
|
|
222
215
|
}
|
|
216
|
+
else {
|
|
217
|
+
this.resolveTo(root, response.schema, resolutionTable, location);
|
|
218
|
+
}
|
|
223
219
|
}
|
|
224
220
|
}
|
|
225
221
|
}
|
|
226
222
|
}
|
|
227
|
-
// clear them out to avoid multiple resolutions
|
|
228
|
-
path.parameters = [];
|
|
229
223
|
}
|
|
224
|
+
// clear them out to avoid multiple resolutions
|
|
225
|
+
path.parameters = [];
|
|
230
226
|
}
|
|
231
227
|
|
|
232
228
|
var expectedCalls = 0, toResolve = [];
|
|
@@ -389,7 +385,7 @@ Resolver.prototype.resolve = function (spec, arg1, arg2, arg3) {
|
|
|
389
385
|
else {
|
|
390
386
|
var cached = self.resolverCache[obj.url];
|
|
391
387
|
if (_.isObject(cached)) {
|
|
392
|
-
obj.on.response({obj: cached});
|
|
388
|
+
obj.on.response({obj: cached}), 1;
|
|
393
389
|
}
|
|
394
390
|
else {
|
|
395
391
|
lock[obj.url] = true;
|
|
@@ -467,7 +463,7 @@ Resolver.prototype.resolveItem = function(spec, root, resolutionTable, resolvedR
|
|
|
467
463
|
|
|
468
464
|
Resolver.prototype.finish = function (spec, root, resolutionTable, resolvedRefs, unresolvedRefs, callback, localResolve) {
|
|
469
465
|
// walk resolution table and replace with resolved refs
|
|
470
|
-
var ref
|
|
466
|
+
var ref;
|
|
471
467
|
for (ref in resolutionTable) {
|
|
472
468
|
var item = resolutionTable[ref];
|
|
473
469
|
|
|
@@ -479,7 +475,7 @@ Resolver.prototype.finish = function (spec, root, resolutionTable, resolvedRefs,
|
|
|
479
475
|
if (localResolve !== true) {
|
|
480
476
|
// don't retain root for local definitions
|
|
481
477
|
for (key in resolvedTo.obj) {
|
|
482
|
-
abs = this.retainRoot(key, resolvedTo.obj[key], item.root);
|
|
478
|
+
var abs = this.retainRoot(key, resolvedTo.obj[key], item.root);
|
|
483
479
|
resolvedTo.obj[key] = abs;
|
|
484
480
|
}
|
|
485
481
|
}
|
|
@@ -491,7 +487,7 @@ Resolver.prototype.finish = function (spec, root, resolutionTable, resolvedRefs,
|
|
|
491
487
|
delete targetObj.$ref;
|
|
492
488
|
|
|
493
489
|
for (key in resolvedTo.obj) {
|
|
494
|
-
abs = resolvedTo.obj[key];
|
|
490
|
+
var abs = resolvedTo.obj[key];
|
|
495
491
|
|
|
496
492
|
if (localResolve !== true) {
|
|
497
493
|
// don't retain root for local definitions
|
|
@@ -670,7 +666,7 @@ Resolver.prototype.resolveInline = function (root, spec, property, resolutionTab
|
|
|
670
666
|
var key = property.$ref, ref = property.$ref, i, p, p2, rs;
|
|
671
667
|
var rootTrimmed = false;
|
|
672
668
|
|
|
673
|
-
root = root || ''
|
|
669
|
+
root = root || '' // Guard against .split. @fehguy, you'll need to check if this logic fits
|
|
674
670
|
// More imporantly is how do we gracefully handle relative urls, when provided just a 'spec', not a 'url' ?
|
|
675
671
|
|
|
676
672
|
if (ref) {
|
|
@@ -810,7 +806,7 @@ Resolver.prototype.resolveTo = function (root, property, resolutionTable, locati
|
|
|
810
806
|
}
|
|
811
807
|
delete property.title;
|
|
812
808
|
this.spec.definitions[name] = _.cloneDeep(property);
|
|
813
|
-
property
|
|
809
|
+
property['$ref'] = '#/definitions/' + name;
|
|
814
810
|
delete property.type;
|
|
815
811
|
delete property.properties;
|
|
816
812
|
}
|
package/lib/schema-markup.js
CHANGED
|
@@ -15,11 +15,17 @@ var _ = {
|
|
|
15
15
|
forEach: require('lodash-compat/collection/forEach')
|
|
16
16
|
};
|
|
17
17
|
|
|
18
|
-
|
|
18
|
+
module.exports.optionHtml = optionHtml;
|
|
19
|
+
module.exports.typeFromJsonSchema = typeFromJsonSchema;
|
|
20
|
+
module.exports.getStringSignature = getStringSignature;
|
|
21
|
+
module.exports.schemaToHTML = schemaToHTML;
|
|
22
|
+
module.exports.schemaToJSON = schemaToJSON;
|
|
23
|
+
|
|
24
|
+
function optionHtml(label, value) {
|
|
19
25
|
return '<tr><td class="optionName">' + label + ':</td><td>' + value + '</td></tr>';
|
|
20
|
-
}
|
|
26
|
+
}
|
|
21
27
|
|
|
22
|
-
|
|
28
|
+
function typeFromJsonSchema(type, format) {
|
|
23
29
|
var str;
|
|
24
30
|
|
|
25
31
|
if (type === 'integer' && format === 'int32') {
|
|
@@ -45,9 +51,9 @@ module.exports.typeFromJsonSchema = function (type, format) {
|
|
|
45
51
|
}
|
|
46
52
|
|
|
47
53
|
return str;
|
|
48
|
-
}
|
|
54
|
+
}
|
|
49
55
|
|
|
50
|
-
|
|
56
|
+
function getStringSignature(obj, baseComponent) {
|
|
51
57
|
var str = '';
|
|
52
58
|
|
|
53
59
|
if (typeof obj.$ref !== 'undefined') {
|
|
@@ -89,9 +95,9 @@ var getStringSignature = module.exports.getStringSignature = function (obj, base
|
|
|
89
95
|
}
|
|
90
96
|
|
|
91
97
|
return str;
|
|
92
|
-
}
|
|
98
|
+
}
|
|
93
99
|
|
|
94
|
-
|
|
100
|
+
function schemaToJSON(schema, models, modelsToIgnore, modelPropertyMacro) {
|
|
95
101
|
// Resolve the schema (Handle nested schemas)
|
|
96
102
|
schema = Helpers.resolveSchema(schema);
|
|
97
103
|
|
|
@@ -176,9 +182,10 @@ var schemaToJSON = module.exports.schemaToJSON = function (schema, models, model
|
|
|
176
182
|
}
|
|
177
183
|
|
|
178
184
|
return output;
|
|
179
|
-
}
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
function schemaToHTML(name, schema, models, modelPropertyMacro) {
|
|
180
188
|
|
|
181
|
-
module.exports.schemaToHTML =function (name, schema, models, modelPropertyMacro) {
|
|
182
189
|
var strongOpen = '<span class="strong">';
|
|
183
190
|
var strongClose = '</span>';
|
|
184
191
|
|
|
@@ -523,4 +530,4 @@ module.exports.schemaToHTML =function (name, schema, models, modelPropertyMacro)
|
|
|
523
530
|
|
|
524
531
|
return html + strongOpen + (isArray ? ']' : '}') + strongClose;
|
|
525
532
|
}
|
|
526
|
-
}
|
|
533
|
+
}
|
package/lib/spec-converter.js
CHANGED
|
@@ -557,9 +557,7 @@ SwaggerSpecConverter.prototype.securityDefinitions = function(obj, swagger) {
|
|
|
557
557
|
var name;
|
|
558
558
|
for(name in obj.authorizations) {
|
|
559
559
|
var isValid = false;
|
|
560
|
-
var securityDefinition = {
|
|
561
|
-
vendorExtensions: {}
|
|
562
|
-
};
|
|
560
|
+
var securityDefinition = {};
|
|
563
561
|
var definition = obj.authorizations[name];
|
|
564
562
|
if(definition.type === 'apiKey') {
|
|
565
563
|
securityDefinition.type = 'apiKey';
|