Files
openapi-generator/modules/swagger-codegen/src/main/resources/Javascript/model.mustache
xhh 2eb125681e JavaScript client: handle response deserialization
to support array of models and Date property in model

Closes #1951
2016-02-04 12:36:44 +08:00

81 lines
2.5 KiB
Plaintext

(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define([undefined, '../ApiClient'{{#imports}}, './{{import}}'{{/imports}}], factory);
} else if (typeof module === 'object' && module.exports) {
// CommonJS-like environments that support module.exports, like Node.
module.exports = factory(undefined, require('../ApiClient'){{#imports}}, require('./{{import}}'){{/imports}});
} else {
// Browser globals (root is window)
if (!root.{{moduleName}}) {
root.{{moduleName}} = {};
}
factory(root.{{moduleName}}, root.{{moduleName}}.ApiClient{{#imports}}, root.{{moduleName}}.{{import}}{{/imports}});
}
}(this, function(module, ApiClient{{#imports}}, {{import}}{{/imports}}) {
'use strict';
{{#models}}{{#model}}
{{#vars}}{{#isEnum}}{{>enumClass}}{{/isEnum}}{{#items.isEnum}}{{#items}}
{{>enumClass}}{{/items}}*/{{/items.isEnum}}{{/vars}}
{{#description}}/**
* {{description}}
**/{{/description}}
var {{classname}} = function {{classname}}({{#mandatory}}{{this}}{{^-last}}, {{/-last}}{{/mandatory}}) { {{#parent}}/* extends {{{parent}}}*/{{/parent}}
var self = this;
{{#vars}}
/**{{#description}}
* {{{description}}}{{/description}}
* datatype: {{{datatypeWithEnum}}}{{#required}}
* required{{/required}}{{#minimum}}
* minimum: {{minimum}}{{/minimum}}{{#maximum}}
* maximum: {{maximum}}{{/maximum}}
**/
self['{{baseName}}'] = {{#required}}{{name}}{{/required}}{{^required}}{{{defaultValue}}}{{/required}};
{{/vars}}
self.constructFromObject = function(data) {
if (!data) {
return this;
}
{{#vars}}
self['{{baseName}}']{{{defaultValueWithParam}}}
{{/vars}}
return this;
}
{{#vars}}
/**{{#description}}
* get {{{description}}}{{/description}}{{#minimum}}
* minimum: {{minimum}}{{/minimum}}{{#maximum}}
* maximum: {{maximum}}{{/maximum}}
* @return {{=<% %>=}}{<% datatypeWithEnum %>}<%={{ }}=%>
**/
self.{{getter}} = function() {
return self['{{baseName}}'];
}
/**{{#description}}
* set {{{description}}}{{/description}}
* @param {{=<% %>=}}{<% datatypeWithEnum %>}<%={{ }}=%> {{name}}
**/
self.{{setter}} = function({{name}}) {
self['{{baseName}}'] = {{name}};
}
{{/vars}}
self.toJson = function() {
return JSON.stringify(self);
}
};
if (module) {
module.{{classname}} = {{classname}};
}
return {{classname}};
{{/model}}
{{/models}}
}));