update for swagger.js#14, #138, #139

This commit is contained in:
Tony Tam
2013-01-31 20:06:34 -05:00
parent 7a23876ce7
commit 1ec55a8829
9 changed files with 114 additions and 44 deletions

79
dist/swagger-ui.js vendored
View File

@@ -192,8 +192,8 @@ function program1(depth0,data) {
var buffer = "", stack1, stack2;
buffer += "\n ";
foundHelper = helpers.supportedContentTypes;
stack1 = foundHelper || depth0.supportedContentTypes;
foundHelper = helpers.consumes;
stack1 = foundHelper || depth0.consumes;
stack2 = helpers.each;
tmp1 = self.program(2, program2, data);
tmp1.hash = {};
@@ -225,8 +225,8 @@ function program4(depth0,data) {
return "\n <option value=\"application/json\">application/json</option>\n";}
buffer += "<label for=\"contentType\"></label>\n<select name=\"contentType\">\n";
foundHelper = helpers.supportedContentTypes;
stack1 = foundHelper || depth0.supportedContentTypes;
foundHelper = helpers.consumes;
stack1 = foundHelper || depth0.consumes;
stack2 = helpers['if'];
tmp1 = self.program(1, program1, data);
tmp1.hash = {};
@@ -1132,7 +1132,7 @@ templates['status_code'] = template(function (Handlebars,depth0,helpers,partials
// Generated by CoffeeScript 1.3.3
// Generated by CoffeeScript 1.4.0
(function() {
var ContentTypeView, HeaderView, MainView, OperationView, ParameterView, ResourceView, SignatureView, StatusCodeView, SwaggerUi,
__hasProp = {}.hasOwnProperty,
@@ -1436,9 +1436,14 @@ templates['status_code'] = template(function (Handlebars,depth0,helpers,partials
$('.model-signature', $(this.el)).html(this.model.responseClass);
}
contentTypeModel = {
isParam: false,
supportedContentTypes: this.model.supportedContentTypes
isParam: false
};
if (this.model.supportedContentTypes) {
contentTypeModel.consumes = this.model.supportedContentTypes;
}
if (this.model.consumes) {
contentTypeModel.consumes = this.model.consumes;
}
contentTypeView = new ContentTypeView({
model: contentTypeModel
});
@@ -1476,7 +1481,7 @@ templates['status_code'] = template(function (Handlebars,depth0,helpers,partials
};
OperationView.prototype.submitOperation = function(e) {
var bodyParam, error_free, form, headerParams, invocationUrl, isFileUpload, map, o, obj, param, paramContentTypeField, responseContentTypeField, _i, _j, _k, _len, _len1, _len2, _ref, _ref1, _ref2,
var bodyParam, consumes, error_free, form, headerParams, invocationUrl, isFileUpload, isFormPost, map, o, obj, param, paramContentTypeField, responseContentTypeField, _i, _j, _k, _l, _len, _len1, _len2, _len3, _len4, _m, _ref, _ref1, _ref2, _ref3, _ref4,
_this = this;
if (e != null) {
e.preventDefault();
@@ -1505,25 +1510,51 @@ templates['status_code'] = template(function (Handlebars,depth0,helpers,partials
map[o.name] = o.value;
}
}
isFileUpload = $('input[type~="file"]').size !== 0;
if (isFileUpload) {
bodyParam = new FormData();
isFileUpload = form.children().find('input[type~="file"]').size() !== 0;
isFormPost = false;
consumes = "application/json";
if (this.model.consumes && this.model.consumes.length > 0) {
consumes = this.model.consumes[0];
} else {
_ref1 = this.model.parameters;
for (_j = 0, _len1 = _ref1.length; _j < _len1; _j++) {
param = _ref1[_j];
o = _ref1[_j];
if (o.paramType === 'form') {
isFormPost = true;
consumes = false;
}
}
if (isFileUpload) {
consumes = false;
} else if (this.model.httpMethod.toLowerCase() === "post" && isFormPost === false) {
consumes = "application/json";
}
}
if (isFileUpload) {
bodyParam = new FormData();
_ref2 = this.model.parameters;
for (_k = 0, _len2 = _ref2.length; _k < _len2; _k++) {
param = _ref2[_k];
if (param.paramType === 'body' && param.name !== 'file') {
bodyParam.append(param.name, map[param.name]);
}
}
$.each($('input[type~="file"]'), function(i, el) {
$.each(form.children().find('input[type~="file"]'), function(i, el) {
return bodyParam.append($(el).attr('name'), el.files[0]);
});
console.log(bodyParam);
} else if (isFormPost) {
bodyParam = new FormData();
_ref3 = this.model.parameters;
for (_l = 0, _len3 = _ref3.length; _l < _len3; _l++) {
param = _ref3[_l];
bodyParam.append(param.name, map[param.name]);
}
} else {
bodyParam = null;
_ref2 = this.model.parameters;
for (_k = 0, _len2 = _ref2.length; _k < _len2; _k++) {
param = _ref2[_k];
_ref4 = this.model.parameters;
for (_m = 0, _len4 = _ref4.length; _m < _len4; _m++) {
param = _ref4[_m];
if (param.paramType === 'body') {
bodyParam = map[param.name];
}
@@ -1540,6 +1571,7 @@ templates['status_code'] = template(function (Handlebars,depth0,helpers,partials
url: invocationUrl,
headers: headerParams,
data: bodyParam,
contentType: consumes,
dataType: 'json',
processData: false,
error: function(xhr, textStatus, error) {
@@ -1552,12 +1584,6 @@ templates['status_code'] = template(function (Handlebars,depth0,helpers,partials
return _this.showCompleteStatus(data);
}
};
if (obj.type.toLowerCase() === "post" || obj.type.toLowerCase() === "put" || obj.type.toLowerCase() === "patch") {
obj.contentType = "application/json";
}
if (isFileUpload) {
obj.contentType = false;
}
paramContentTypeField = $("td select[name=contentType]", $(this.el)).val();
if (paramContentTypeField) {
obj.contentType = paramContentTypeField;
@@ -1760,9 +1786,14 @@ templates['status_code'] = template(function (Handlebars,depth0,helpers,partials
$('.model-signature', $(this.el)).html(this.model.signature);
}
contentTypeModel = {
isParam: true,
supportedContentTypes: this.model.supportedContentTypes
isParam: false
};
if (this.model.supportedContentTypes) {
contentTypeModel.consumes = this.model.supportedContentTypes;
}
if (this.model.consumes) {
contentTypeModel.consumes = this.model.consumes;
}
contentTypeView = new ContentTypeView({
model: contentTypeModel
});