{"version":3,"sources":["swagger-ui.js","swagger-client.js","swagger-model.js","swagger-modules.js","swagger-ui-templates.js","swagger-external-references.js","swagger-xml-formatter.js","swagger2-json-parser.js"],"names":["angular","module","directive","$injector","config","restrict","controller","templateUrl","clientAppSrcPath","scope","swaggerOperation","loading","apiExplorer","errorHandler","link","$route","appRoot","permalinks","has","get","current","$$route","reloadOnSearch","console","warn","trustedSources","undefined","validatorUrl","$scope","swaggerClient","swagger","infos","op","operation","form","resources","id","responseType","parameters","filter","x","name","length","apiVersion","info","version","uiParameters","expand","resource","expandOperations","open","i","operations","l","submitExplorer","send","then","result","explorerResult","service","$q","$http","swaggerModules","this","values","deferred","defer","query","headers","path","body","params","param","value","in","replace","encodeURIComponent","FormData","type","contentType","append","currentScheme","element","protocol","baseUrl","servicesUrl","api","dataDistributionBasePath","host","join","basePath","Accept","customerApiKey","callback","data","status","response","execute","AFTER_EXPLORER_LOAD","key","parts","push","resolve","url","isString","toJson","formatResult","options","method","httpMethod","BEFORE_EXPLORER_LOAD","success","error","promise","objCache","modelCache","resolveReference","object","$ref","split","j","getType","item","format","getClassName","getSampleValue","Date","toISOString","generateSampleJson","schema","json","obj","getSampleObj","currentGenerated","sample","def","default","example","properties","items","defaultValue","generateSampleXmlFromJson","resourceName","x2js","X2JS","parsedJson","$","parseJSON","finalParsedJson","isArray","json2xml_str","countInLine","generateModel","modelName","model","propertyName","buffer","submodels","property","required","indexOf","description","enum","pop","className","sub","clearCache","modules","BEFORE_LOAD","BEFORE_PARSE","PARSE","BEFORE_DISPLAY","add","phase","args","Array","prototype","slice","call","arguments","splice","phaseModules","executeAll","phaseExecuted","shift","apply","executed","catch","reject","concat","onError","externalUrl","prefix","transformResponse","fromJson","e","code","message","getExternalUrl","pos","swaggerUrlParts","URL","parse","lastIndexOf","substring","isExternal","loadExternalDefinitions","loadingUrls","loadDefinitions","matches","match","section","checkDefinitions","paths","k","responses","checkOperationDefinitions","swaggerUrl","swaggerData","pathName","loadOperations","loadExternalReferences","formatted","pad","xml","forEach","node","indent","padding","$sce","$location","swaggerModel","parseSwagger2Json","parseResult","map","openPath","search","defaultContentType","a","consumes","produces","trustHtml","parseInfos","tag","tags","parseTags","pathObject","pathParameters","operationId","paramId","found","pathParameter","operationParameter","operationParameters","computeParameters","subtype","display","trustAsHtml","parseParameters","examples","responseClass","hasResponses","parseResponses","parseOperations","sort","b","cleanUp","text","trusted","parserType","isTrustedSources"],"mappings":"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","file":"../swagger.min.js","sourcesContent":["'use strict';\r\n\r\nangular\r\n\t.module('swaggerUi', ['ng', 'swaggerUiTemplates'])\r\n\t.directive('swaggerUi', ['$injector', 'config', function ($injector, config) {\r\n\t return {\r\n\t restrict: 'A',\r\n\t controller: 'swaggerUiController',\r\n\t\t\ttemplateUrl: config.clientAppSrcPath + 'app-swagger-ui/templates/operation.html',\r\n\t scope: {\r\n\t swaggerOperation: '=?',\r\n\t // Swagger descriptor loading indicator (variables, optional)\r\n\t loading: '=?',\r\n\t // Display API explorer (boolean, optional, default = false)\r\n\t apiExplorer: '=?',\r\n\t // Error handler (function, optional)\r\n\t errorHandler: '=?'\r\n\t },\r\n\t link: function (scope) {\r\n\t\t\t\tscope.appRoot = config.clientAppSrcPath;\r\n\r\n\t // check parameters\r\n\t if (scope.permalinks && $injector.has('$route')) {\r\n\t var $route = $injector.get('$route');\r\n\t if ($route.current && $route.current.$$route && $route.current.$$route.reloadOnSearch) {\r\n\t console.warn('AngularSwaggerUI: when using permalinks you should set reloadOnSearch=false in your route config to avoid UI being rebuilt multiple times');\r\n\t }\r\n\t }\r\n\t if (!scope.trustedSources && !$injector.has('$sanitize')) {\r\n\t console.warn('AngularSwaggerUI: you must use ngSanitize OR set trusted-sources=true as directive param if swagger descriptors are loaded from trusted sources');\r\n\t }\r\n\t if (scope.validatorUrl === undefined) {\r\n\t scope.validatorUrl = 'http://online.swagger.io/validator';\r\n\t }\r\n\t }\r\n\t };\r\n\t}])\r\n\t.controller('swaggerUiController', ['$scope', 'swaggerClient',\r\n\t\tfunction ($scope, swaggerClient) {\r\n\t\t var swagger = $scope.swaggerOperation.swagger;\r\n\t\t $scope.infos = $scope.swaggerOperation.infos;\r\n\t\t $scope.op = $scope.swaggerOperation.operation;\r\n\t\t $scope.form = $scope.swaggerOperation.form;\r\n\t\t $scope.resources = $scope.swaggerOperation.resources;\r\n\r\n\t\t // HACK : Default value for ResponseType\r\n\t\t $scope.form[$scope.op.id] = {};\r\n\t\t $scope.form[$scope.op.id].responseType = $scope.form.responseType;\r\n\r\n\t\t\tif ($scope.op.parameters && $scope.op.parameters.filter(function (x) { return x.name === 'api-version' }).length > 0)\r\n\t\t\t\t$scope.form[$scope.op.id].apiVersion = swagger.info.version;\r\n\r\n\t\t\t$scope.uiParameters = ($scope.op.parameters || []).filter(function (x) { return x.name !== 'api-version' });\r\n\r\n\t\t // WARNING authentication is not implemented, please use 'api-explorer-transform' directive's param to customize API calls\r\n\t\t function onError(error) {\r\n\t\t $scope.loading = false;\r\n\t\t if (typeof $scope.errorHandler === 'function') {\r\n\t\t $scope.errorHandler(error.message, error.code);\r\n\t\t } else {\r\n\t\t console.error(error.code, 'AngularSwaggerUI: ' + error.message);\r\n\t\t }\r\n\t\t }\r\n\r\n\t\t /**\r\n\t\t\t * show all resource's operations as list or as expanded list\r\n\t\t\t */\r\n\t\t $scope.expand = function (resource, expandOperations) {\r\n\t\t resource.open = true;\r\n\t\t for (var i = 0, op = resource.operations, l = op.length; i < l; i++) {\r\n\t\t op[i].open = expandOperations;\r\n\t\t }\r\n\t\t };\r\n\r\n\t\t $scope.submitExplorer = function (operation) {\r\n\t\t operation.loading = true;\r\n\t\t swaggerClient\r\n\t\t\t\t\t.send(swagger, operation, $scope.form[operation.id])\r\n\t\t\t\t\t.then(function (result) {\r\n\t\t\t\t\t operation.loading = false;\r\n\t\t\t\t\t operation.explorerResult = result;\r\n\t\t\t\t\t});\r\n\t\t };\r\n\t\t}\r\n\t]);","/*\r\n * Orange angular-swagger-ui - v0.2.7\r\n *\r\n * (C) 2015 Orange, all right reserved\r\n * MIT Licensed\r\n */\r\n'use strict';\r\n\r\nangular\r\n\t.module('swaggerUi')\r\n\t.service('swaggerClient', ['$q', '$http', 'config', 'swaggerModules', function ($q, $http, config, swaggerModules) {\r\n\r\n\t /**\r\n\t\t * format API explorer response before display\r\n\t\t */\r\n\t function formatResult(deferred, response) {\r\n\t var query = '',\r\n\t\t\t\tdata = response.data,\r\n\t\t\t\tconfig = response.config;\r\n\r\n\t if (config.params) {\r\n\t var parts = [];\r\n\t for (var key in config.params) {\r\n\t parts.push(key + '=' + encodeURIComponent(config.params[key]));\r\n\t }\r\n\t if (parts.length > 0) {\r\n\t query = '?' + parts.join('&');\r\n\t }\r\n\t }\r\n\t deferred.resolve({\r\n\t url: config.url + query,\r\n\t response: {\r\n\t body: data ? (angular.isString(data) ? data : angular.toJson(data, true)) : 'no content',\r\n\t status: response.status,\r\n\t headers: angular.toJson(response.headers(), true)\r\n\t }\r\n\t });\r\n\t }\r\n\r\n\t /**\r\n\t\t * Send API explorer request\r\n\t\t */\r\n\t this.send = function (swagger, operation, values) {\r\n\t var deferred = $q.defer(),\r\n\t\t\t\tquery = {},\r\n\t\t\t\theaders = {},\r\n\t\t\t\tpath = operation.path,\r\n\t\t\t\tbody = undefined;\r\n\r\n\t // build request parameters\r\n\t for (var i = 0, params = operation.parameters || [], l = params.length; i < l; i++) {\r\n\t //TODO manage 'collectionFormat' (csv etc.) !!\r\n\t var param = params[i],\r\n\t\t\t\t\tvalue = values[param.name];\r\n\r\n\t switch (param.in) {\r\n\t case 'query':\r\n\t if (!!value) {\r\n\t query[param.name] = value;\r\n\t }\r\n\t break;\r\n\t case 'path':\r\n\t path = path.replace('{' + param.name + '}', encodeURIComponent(value));\r\n\t break;\r\n\t case 'header':\r\n\t if (!!value) {\r\n\t headers[param.name] = value;\r\n\t }\r\n\t break;\r\n\t case 'formData':\r\n\t body = body || new FormData();\r\n\t if (!!value) {\r\n\t if (param.type === 'file') {\r\n\t values.contentType = undefined; // make browser defining it by himself\r\n\t }\r\n\t body.append(param.name, value);\r\n\t }\r\n\t break;\r\n\t case 'body':\r\n\t body = body || value;\r\n\t break;\r\n\t }\r\n\t }\r\n\r\n\t var a = angular.element('')[0];\r\n\t var currentScheme = a.protocol.replace(':', '');\r\n\r\n\t var basePath = config.servicesUrl.api.dataDistributionBasePath || [\r\n currentScheme,\r\n\t\t\t\t'://',\r\n\t\t\t\tswagger.host]\r\n .join('');\r\n\r\n\t var baseUrl = [\r\n\t\t\t\tbasePath,\r\n\t\t\t\tswagger.basePath && swagger.basePath !== '/' ? swagger.basePath : ''\r\n\t ].join('');\r\n\r\n\t // add headers\r\n\t headers.Accept = values.responseType;\r\n\t headers['Content-Type'] = body ? values.contentType : 'text/plain';\r\n\t if (values.customerApiKey)\r\n\t headers['api-key'] = values.customerApiKey;\r\n\t\t\tif (values.apiVersion)\r\n\t\t\t\theaders['api-version'] = values.apiVersion;\r\n\r\n\t // build request\r\n\t var options = {\r\n\t method: operation.httpMethod,\r\n\t url: baseUrl + path,\r\n\t headers: headers,\r\n\t data: body,\r\n\t params: query\r\n\t },\r\n\t\t\tcallback = function (data, status, headers, config) {\r\n\t\t\t // execute modules\r\n\t\t\t var response = {\r\n\t\t\t data: data,\r\n\t\t\t status: status,\r\n\t\t\t headers: headers,\r\n\t\t\t config: config\r\n\t\t\t };\r\n\t\t\t swaggerModules\r\n .execute(swaggerModules.AFTER_EXPLORER_LOAD, response)\r\n .then(function () {\r\n formatResult(deferred, response);\r\n });\r\n\t\t\t};\r\n\r\n\t // execute modules\r\n\t swaggerModules\r\n\t\t\t\t.execute(swaggerModules.BEFORE_EXPLORER_LOAD, options)\r\n\t\t\t\t.then(function () {\r\n\t\t\t\t // send request\r\n\t\t\t\t $http(options)\r\n\t\t\t\t\t\t.success(callback)\r\n\t\t\t\t\t\t.error(callback);\r\n\t\t\t\t});\r\n\r\n\t return deferred.promise;\r\n\t };\r\n\r\n\t}]);\r\n","/*\r\n * Orange angular-swagger-ui - v0.2.7\r\n *\r\n * (C) 2015 Orange, all right reserved\r\n * MIT Licensed\r\n */\r\n'use strict';\r\n\r\nangular\r\n\t.module('swaggerUi')\r\n\t.service('swaggerModel', function() {\r\n\r\n\t\t/**\r\n\t\t * sample object cache to avoid generating the same one multiple times\r\n\t\t */\r\n\t\tvar objCache = {};\r\n\r\n\t\t/**\r\n\t\t * model cache to avoid generating the same one multiple times\r\n\t\t */\r\n\t\tvar modelCache = {};\r\n\r\n\t\t/**\r\n\t\t * retrieves object definition\r\n\t\t */\r\n\t\tvar resolveReference = this.resolveReference = function(swagger, object) {\r\n\t\t\tif (object.$ref) {\r\n\t\t\t\tvar parts = object.$ref.replace('#/', '').split('/');\r\n\t\t\t\tobject = swagger;\r\n\t\t\t\tfor (var i = 0, j = parts.length; i < j; i++) {\r\n\t\t\t\t\tobject = object[parts[i]];\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\treturn object;\r\n\t\t};\r\n\r\n\t\t/**\r\n\t\t * determines a property type\r\n\t\t */\r\n\t\tvar getType = this.getType = function(item) {\r\n\t\t\tvar format = item.format;\r\n\t\t\tswitch (format) {\r\n\t\t\t\tcase 'int32':\r\n\t\t\t\t\tformat = item.type;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'int64':\r\n\t\t\t\t\tformat = 'long';\r\n\t\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\treturn format || item.type;\r\n\t\t};\r\n\r\n\t\t/**\r\n\t\t * retrieves object class name based on $ref\r\n\t\t */\r\n\t\tfunction getClassName(item) {\r\n\t\t\tvar parts = item.$ref.split('/');\r\n\t\t\treturn parts[parts.length - 1];\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * generates a sample object (request body or response body)\r\n\t\t */\r\n\t\tfunction getSampleObj(swagger, schema, currentGenerated) {\r\n\t\t\tvar sample;\r\n\t\t\tcurrentGenerated = currentGenerated || {}; // used to handle circular references\r\n\t\t\tif (schema.default || schema.example) {\r\n\t\t\t\tsample = schema.default || schema.example;\r\n\t\t\t} else if (schema.properties) {\r\n\t\t\t\tsample = {};\r\n\t\t\t\tfor (var name in schema.properties) {\r\n\t\t\t\t\tsample[name] = getSampleObj(swagger, schema.properties[name], currentGenerated);\r\n\t\t\t\t}\r\n\t\t\t} else if (schema.$ref) {\r\n\t\t\t\t// complex object\r\n\t\t\t\tvar def = resolveReference(swagger, schema);\r\n\t\t\t\tif (def) {\r\n\t\t\t\t\tif (!objCache[schema.$ref] && !currentGenerated[schema.$ref]) {\r\n\t\t\t\t\t\t// object not in cache\r\n\t\t\t\t\t\tcurrentGenerated[schema.$ref] = true;\r\n\t\t\t\t\t\tobjCache[schema.$ref] = getSampleObj(swagger, def, currentGenerated);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tsample = objCache[schema.$ref] || {};\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.warn('schema not found', schema.$ref);\r\n\t\t\t\t}\r\n\t\t\t} else if (schema.type === 'array') {\r\n\t\t\t\tsample = [getSampleObj(swagger, schema.items, currentGenerated)];\r\n\t\t\t} else if (schema.type === 'object') {\r\n\t\t\t\tsample = {};\r\n\t\t\t} else {\r\n\t\t\t\tsample = getSampleValue(getType(schema));\r\n\t\t\t\tsample = schema.defaultValue || schema.example || getSampleValue(getType(schema));\r\n\t\t\t}\r\n\t\t\treturn sample;\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * generates a sample value for a basic type\r\n\t\t */\r\n\t\tfunction getSampleValue(type) {\r\n\t\t\tvar result;\r\n\t\t\tswitch (type) {\r\n\t\t\t\tcase 'long':\r\n\t\t\t\tcase 'integer':\r\n\t\t\t\t\tresult = 0;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'boolean':\r\n\t\t\t\t\tresult = false;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'double':\r\n\t\t\t\tcase 'number':\r\n\t\t\t\t\tresult = 0.0;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'string':\r\n\t\t\t\t\tresult = 'string';\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'date':\r\n\t\t\t\t\tresult = (new Date()).toISOString().split('T')[0];\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'date-time':\r\n\t\t\t\t\tresult = (new Date()).toISOString();\r\n\t\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\treturn result;\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * generates a sample JSON string (request body or response body)\r\n\t\t */\r\n\t\tthis.generateSampleJson = function(swagger, schema) {\r\n\t\t\tvar json,\r\n\t\t\t\tobj = getSampleObj(swagger, schema);\r\n\r\n\t\t\tif (obj) {\r\n\t\t\t\tjson = angular.toJson(obj, true);\r\n\t\t\t}\r\n\t\t\treturn json;\r\n\t\t};\r\n\r\n this.generateSampleXmlFromJson = function(json, resourceName) {\r\n\t\t\tvar x2js = new X2JS();\r\n\t\t\tvar parsedJson = $.parseJSON(json);\r\n\t\t\tvar finalParsedJson = {};\r\n\t\t\tif ($.isArray(parsedJson) && resourceName != null && typeof resourceName === 'string') {\r\n\t\t\t finalParsedJson[resourceName] = [parsedJson[0]]\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t finalParsedJson = parsedJson;\r\n\r\n\t\t\treturn x2js.json2xml_str(finalParsedJson).replace(/\\>/g, \">\\r\\n\");\r\n\t\t};\r\n\r\n\t\t/**\r\n\t\t * inline model counter\r\n\t\t */\r\n\t\tvar countInLine = 0;\r\n\r\n\t\t/**\r\n\t\t * generates object's model\r\n\t\t */\r\n\t\tvar generateModel = this.generateModel = function(swagger, schema, modelName, currentGenerated) {\r\n\t\t\tvar model = '';\r\n\t\t\tcurrentGenerated = currentGenerated || {}; // used to handle circular references\r\n\r\n\t\t\tfunction isRequired(item, name) {\r\n\t\t\t\treturn item.required && item.required.indexOf(name) !== -1;\r\n\t\t\t}\r\n\r\n\t\t\tif (schema.properties) {\r\n\t\t\t\tmodelName = modelName || ('Inline Model' + countInLine++);\r\n\t\t\t\tcurrentGenerated[modelName] = true;\r\n\t\t\t\tvar buffer = ['
' + modelName + ' {'],\r\n\t\t\t\t\tsubmodels = [];\r\n\r\n\t\t\t\tfor (var propertyName in schema.properties) {\r\n\t\t\t\t\tvar property = schema.properties[propertyName];\r\n\t\t\t\t\tbuffer.push('
', propertyName, ' (');\r\n\t\t\t\t\t// build type\r\n\t\t\t\t\tif (property.properties) {\r\n\t\t\t\t\t\tvar name = 'Inline Model' + countInLine++;\r\n\t\t\t\t\t\tbuffer.push(name);\r\n\t\t\t\t\t\tsubmodels.push(generateModel(swagger, property, name, currentGenerated));\r\n\t\t\t\t\t} else if (property.$ref) {\r\n\t\t\t\t\t\tbuffer.push(getClassName(property));\r\n\t\t\t\t\t\tsubmodels.push(generateModel(swagger, property, null, currentGenerated));\r\n\t\t\t\t\t} else if (property.type === 'array') {\r\n\t\t\t\t\t\tbuffer.push('Array[');\r\n\t\t\t\t\t\tif (property.items.properties) {\r\n\t\t\t\t\t\t\tvar name = 'Inline Model' + countInLine++;\r\n\t\t\t\t\t\t\tbuffer.push(name);\r\n\t\t\t\t\t\t\tsubmodels.push(generateModel(swagger, property, name, currentGenerated));\r\n\t\t\t\t\t\t} else if (property.items.$ref) {\r\n\t\t\t\t\t\t\tbuffer.push(getClassName(property.items));\r\n\t\t\t\t\t\t\tsubmodels.push(generateModel(swagger, property.items, null, currentGenerated));\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tbuffer.push(getType(property.items));\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tbuffer.push(']');\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tbuffer.push(getType(property));\r\n\t\t\t\t\t}\r\n\t\t\t\t\tbuffer.push('');\r\n\t\t\t\t\t// is required ?\r\n\t\t\t\t\tif (!isRequired(schema, propertyName)) {\r\n\t\t\t\t\t\tbuffer.push(', ', 'optional');\r\n\t\t\t\t\t}\r\n\t\t\t\t\tbuffer.push(')');\r\n\t\t\t\t\t// has description\r\n\t\t\t\t\tif (property.description) {\r\n\t\t\t\t\t\tbuffer.push(': ', property.description);\r\n\t\t\t\t\t}\r\n\t\t\t\t\t// is enum\r\n\t\t\t\t\tif (property.enum) {\r\n\t\t\t\t\t\tbuffer.push(' = ', angular.toJson(property.enum).replace(/,/g, ' or '));\r\n\t\t\t\t\t}\r\n\t\t\t\t\tbuffer.push(',
');\r\n\t\t\t\t}\r\n\t\t\t\tbuffer.pop();\r\n\t\t\t\tbuffer.push('
');\r\n\t\t\t\tbuffer.push('}');\r\n\t\t\t\tbuffer.push(submodels.join(''), '');\r\n\t\t\t\tmodel = buffer.join('');\r\n\t\t\t} else if (schema.$ref) {\r\n\t\t\t\tvar className = getClassName(schema),\r\n\t\t\t\t\tdef = resolveReference(swagger, schema);\r\n\r\n\t\t\t\tif (currentGenerated[className]) {\r\n\t\t\t\t\treturn ''; // already generated\r\n\t\t\t\t}\r\n\t\t\t\tif (def) {\r\n\t\t\t\t\tif (!modelCache[schema.$ref]) {\r\n\t\t\t\t\t\t// cache generated object\r\n\t\t\t\t\t\tmodelCache[schema.$ref] = generateModel(swagger, def, className, currentGenerated);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcurrentGenerated[className] = true;\r\n\t\t\t\t\tmodel = modelCache[schema.$ref];\r\n\t\t\t\t}\r\n\t\t\t} else if (schema.type === 'array') {\r\n\t\t\t\tvar buffer = ['Array ['];\r\n\t\t\t\tvar sub = '';\r\n\t\t\t\tif (schema.items.properties) {\r\n\t\t\t\t\tvar name = 'Inline Model' + countInLine++;\r\n\t\t\t\t\tbuffer.push(name);\r\n\t\t\t\t\tsub = generateModel(swagger, schema.items, name, currentGenerated);\r\n\t\t\t\t} else if (schema.items.$ref) {\r\n\t\t\t\t\tbuffer.push(getClassName(schema.items));\r\n\t\t\t\t\tsub = generateModel(swagger, schema.items, null, currentGenerated);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tbuffer.push(getType(schema.items));\r\n\t\t\t\t}\r\n\t\t\t\tbuffer.push(']

', sub);\r\n\t\t\t\tmodel = buffer.join('');\r\n\t\t\t} else if (schema.type === 'object') {\r\n\t\t\t\tmodel = 'Inline Model {
}
';\r\n\t\t\t}\r\n\t\t\treturn model;\r\n\t\t};\r\n\r\n\t\t/**\r\n\t\t * clears generated models cache\r\n\t\t */\r\n\t\tthis.clearCache = function() {\r\n\t\t\tobjCache = {};\r\n\t\t\tmodelCache = {};\r\n\t\t};\r\n\r\n\t});","/*\r\n * Orange angular-swagger-ui - v0.2.7\r\n *\r\n * (C) 2015 Orange, all right reserved\r\n * MIT Licensed\r\n */\r\n'use strict';\r\n\r\nangular\r\n\t.module('swaggerUi')\r\n\t.service('swaggerModules', ['$q', function($q) {\r\n\r\n\t\tvar modules = {};\r\n\r\n\t\tthis.BEFORE_LOAD = 'BEFORE_LOAD';\r\n\t\tthis.BEFORE_PARSE = 'BEFORE_PARSE';\r\n\t\tthis.PARSE = 'PARSE';\r\n\t\tthis.BEFORE_DISPLAY = 'BEFORE_DISPLAY';\r\n\t\tthis.BEFORE_EXPLORER_LOAD = 'BEFORE_EXPLORER_LOAD';\r\n\t\tthis.AFTER_EXPLORER_LOAD = 'AFTER_EXPLORER_LOAD';\r\n\r\n\t\t/**\r\n\t\t * Adds a new module to swagger-ui\r\n\t\t */\r\n\t\tthis.add = function(phase, module) {\r\n\t\t\tif (!modules[phase]) {\r\n\t\t\t\tmodules[phase] = [];\r\n\t\t\t}\r\n\t\t\tif (modules[phase].indexOf(module) < 0) {\r\n\t\t\t\tmodules[phase].push(module);\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\t/**\r\n\t\t * Runs modules' \"execute\" function one by one\r\n\t\t */\r\n\t\tfunction executeAll(deferred, phaseModules, args, phaseExecuted) {\r\n\t\t\tvar module = phaseModules.shift();\r\n\t\t\tif (module) {\r\n\t\t\t\tmodule\r\n\t\t\t\t\t.execute.apply(module, args)\r\n\t\t\t\t\t.then(function(executed) {\r\n\t\t\t\t\t\tphaseExecuted = phaseExecuted || executed;\r\n\t\t\t\t\t\texecuteAll(deferred, phaseModules, args, phaseExecuted);\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.catch(deferred.reject);\r\n\t\t\t} else {\r\n\t\t\t\tdeferred.resolve(phaseExecuted);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * Executes modules' phase\r\n\t\t */\r\n\t\tthis.execute = function() {\r\n\t\t\tvar args = Array.prototype.slice.call(arguments), // get an Array from arguments\r\n\t\t\t\tphase = args.splice(0, 1),\r\n\t\t\t\tdeferred = $q.defer(),\r\n\t\t\t\tphaseModules = modules[phase] || [];\r\n\r\n\t\t\texecuteAll(deferred, [].concat(phaseModules), args);\r\n\t\t\treturn deferred.promise;\r\n\t\t};\r\n\r\n\t}]);","/*\r\n * Orange angular-swagger-ui - v0.2.7\r\n *\r\n * (C) 2015 Orange, all right reserved\r\n * MIT Licensed\r\n */\r\n\r\n// this module will be created at build phase and will contain swagger-ui HTML template\r\n// this file won't be part of the built JS file\r\nangular.module('swaggerUiTemplates', []);\r\n","/*\r\n * Orange angular-swagger-ui - v0.2.7\r\n *\r\n * (C) 2015 Orange, all right reserved\r\n * MIT Licensed\r\n */\r\n'use strict';\r\n\r\nangular\r\n\t.module('swaggerUi')\r\n\t.service('swaggerUiExternalReferences', ['$http', '$q', 'swaggerModules', function($http, $q, swaggerModules) {\r\n\r\n\t\tvar url,\r\n\t\t\tdeferred,\r\n\t\t\tswagger;\r\n\r\n\t\t/**\r\n\t\t * Module entry point\r\n\t\t */\r\n\t\tthis.execute = function(swaggerUrl, swaggerData) {\r\n\t\t\turl = swaggerUrl;\r\n\t\t\tswagger = swaggerData;\r\n\t\t\tdeferred = $q.defer();\r\n\t\t\tloadExternalReferences();\r\n\t\t\treturn deferred.promise;\r\n\t\t};\r\n\r\n\t\tfunction onError(error) {\r\n\t\t\tdeferred.reject(error);\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * Load external definition\r\n\t\t */\r\n\t\tfunction get(externalUrl, callback, prefix) {\r\n\t\t\tvar options = {\r\n\t\t\t\tmethod: 'GET',\r\n\t\t\t\turl: externalUrl,\r\n\t\t\t\ttransformResponse: function(json) {\r\n\t\t\t\t\tif (prefix) {\r\n\t\t\t\t\t\t// rewrite references\r\n\t\t\t\t\t\tjson = json.replace(/\"\\$ref\": ?\"#\\/(.*)\\/(.*)\"/g, '\"$ref\": \"#/$1/' + prefix + '/$2\"');\r\n\t\t\t\t\t}\r\n\t\t\t\t\tvar obj;\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tobj = angular.fromJson(json);\r\n\t\t\t\t\t} catch (e) {\r\n\t\t\t\t\t\tonError({\r\n\t\t\t\t\t\t\tcode: 500,\r\n\t\t\t\t\t\t\tmessage: 'failed to parse JSON'\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn obj;\r\n\t\t\t\t}\r\n\t\t\t};\r\n\t\t\tswaggerModules\r\n\t\t\t\t.execute(swaggerModules.BEFORE_LOAD, options)\r\n\t\t\t\t.then(function() {\r\n\t\t\t\t\t$http(options)\r\n\t\t\t\t\t\t.success(callback)\r\n\t\t\t\t\t\t.error(function(data, status) {\r\n\t\t\t\t\t\t\tonError({\r\n\t\t\t\t\t\t\t\tmessage: data,\r\n\t\t\t\t\t\t\t\tcode: status\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(onError);\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * Generate external URL\r\n\t\t */\r\n\t\tfunction getExternalUrl($ref) {\r\n\t\t\tvar parts = $ref.split('#/'),\r\n\t\t\t\texternalUrl = parts[0];\r\n\r\n\t\t\tif (externalUrl.indexOf('http') !== 0 && externalUrl.indexOf('https') !== 0) {\r\n\t\t\t\t// relative url\r\n\t\t\t\tif (externalUrl.indexOf('/') === 0) {\r\n\t\t\t\t\tvar swaggerUrlParts = URL.parse(url);\r\n\t\t\t\t\texternalUrl = swaggerUrlParts.protocol + '//' + swaggerUrlParts.host + externalUrl;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tvar pos = url.lastIndexOf('/');\r\n\t\t\t\t\texternalUrl = url.substring(0, pos) + '/' + externalUrl;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\treturn externalUrl;\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * Find and resolve external definitions\r\n\t\t */\r\n\t\tfunction loadExternalReferences() {\r\n\r\n\t\t\tvar loading = 0;\r\n\r\n\t\t\tfunction loadOperations(path) {\r\n\t\t\t\tloading++;\r\n\t\t\t\tget(getExternalUrl(path.$ref), function(json) {\r\n\t\t\t\t\tloading--;\r\n\t\t\t\t\tdelete path.$ref;\r\n\t\t\t\t\tfor (var key in json) {\r\n\t\t\t\t\t\tpath[key] = json[key];\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (loading === 0) {\r\n\t\t\t\t\t\tloadExternalDefinitions();\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tfor (var pathName in swagger.paths) {\r\n\t\t\t\tvar path = swagger.paths[pathName];\r\n\t\t\t\tif (isExternal(path)) {\r\n\t\t\t\t\tloadOperations(path);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif (loading === 0) {\r\n\t\t\t\t// may have no external paths\r\n\t\t\t\tloadExternalDefinitions();\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tfunction isExternal(item) {\r\n\t\t\treturn item && item.$ref && item.$ref.indexOf('#/') !== 0;\r\n\t\t}\r\n\r\n\t\tfunction loadExternalDefinitions() {\r\n\t\t\tvar loading = 0,\r\n\t\t\t\tloadingUrls = {};\r\n\r\n\t\t\tfunction loadDefinitions(item) {\r\n\t\t\t\tvar matches = item.$ref.match(/(.*)#\\/(.*)\\/(.*)/),\r\n\t\t\t\t\tprefix = matches[1],\r\n\t\t\t\t\tsection = matches[2],\r\n\t\t\t\t\texternalUrl = getExternalUrl(item.$ref);\r\n\r\n\t\t\t\t// rewrite reference\r\n\t\t\t\titem.$ref = item.$ref.replace(/(.*)#\\/(.*)\\/(.*)/, '#/$2/$1/$3');\r\n\t\t\t\t// load external if needed\r\n\t\t\t\tif (!loadingUrls[externalUrl]) {\r\n\t\t\t\t\tloading++;\r\n\t\t\t\t\tloadingUrls[externalUrl] = true;\r\n\t\t\t\t\tget(externalUrl, function(json) {\r\n\t\t\t\t\t\tfor (var key in json) {\r\n\t\t\t\t\t\t\tswagger[section][prefix] = json[key];\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tloading--;\r\n\t\t\t\t\t\tif (loading === 0) {\r\n\t\t\t\t\t\t\tdeferred.resolve(true);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}, prefix);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tfunction checkDefinitions(item) {\r\n\t\t\t\t// check if an item has an external reference\r\n\t\t\t\tif (isExternal(item)) {\r\n\t\t\t\t\tloadDefinitions(item);\r\n\t\t\t\t} else if (isExternal(item.items)) {\r\n\t\t\t\t\tloadDefinitions(item.items);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tfunction checkOperationDefinitions(operation) {\r\n\t\t\t\t// check if operation params or responses have external references\r\n\t\t\t\tfor (var j = 0, params = operation.parameters || [], k = params.length; j < k; j++) {\r\n\t\t\t\t\tif (params[j].schema) {\r\n\t\t\t\t\t\tcheckDefinitions(params[j].schema);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tfor (var code in (operation.responses || {})) {\r\n\t\t\t\t\tif (operation.responses[code].schema) {\r\n\t\t\t\t\t\tcheckDefinitions(operation.responses[code].schema);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tfor (var path in swagger.paths) {\r\n\t\t\t\tvar operations = swagger.paths[path];\r\n\t\t\t\t//TODO manage path parameters\r\n\t\t\t\tfor (var httpMethod in operations) {\r\n\t\t\t\t\tcheckOperationDefinitions(operations[httpMethod]);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif (loading === 0) {\r\n\t\t\t\t// may have no external definitions\r\n\t\t\t\tdeferred.resolve(true);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t}]);","/*\r\n * Orange angular-swagger-ui - v0.2.7\r\n *\r\n * (C) 2015 Orange, all right reserved\r\n * MIT Licensed\r\n */\r\n'use strict';\r\n\r\nangular\r\n\t.module('swaggerUi')\r\n\t.service('swaggerUiXmlFormatter', ['$q', function($q) {\r\n\r\n\t\tfunction formatXml(xml) {\r\n\t\t\tvar formatted = '',\r\n\t\t\t\treg = /(>)(<)(\\/*)/g,\r\n\t\t\t\tpad = 0;\r\n\r\n\t\t\txml = xml.replace(reg, '$1\\r\\n$2$3');\r\n\t\t\tangular.forEach(xml.split('\\r\\n'), function(node) {\r\n\t\t\t\tvar indent = 0,\r\n\t\t\t\t\tpadding = '';\r\n\r\n\t\t\t\tif (node.match(/.+<\\/\\w[^>]*>$/)) {\r\n\t\t\t\t\tindent = 0;\r\n\t\t\t\t} else if (node.match(/^<\\/\\w/)) {\r\n\t\t\t\t\tif (pad !== 0) {\r\n\t\t\t\t\t\tpad -= 1;\r\n\t\t\t\t\t}\r\n\t\t\t\t} else if (node.match(/^<\\w[^>]*[^\\/]>.*$/)) {\r\n\t\t\t\t\tindent = 1;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tindent = 0;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tfor (var i = 0; i < pad; i++) {\r\n\t\t\t\t\tpadding += ' ';\r\n\t\t\t\t}\r\n\r\n\t\t\t\tformatted += padding + node + '\\r\\n';\r\n\t\t\t\tpad += indent;\r\n\t\t\t});\r\n\r\n\t\t\treturn formatted;\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * Module entry point\r\n\t\t */\r\n\t\tthis.execute = function(response) {\r\n\t\t\tvar executed = false,\r\n\t\t\t\tdeferred = $q.defer();\r\n\r\n\t\t\tif (response.headers && response.headers()['content-type'] === 'application/xml') {\r\n\t\t\t\tresponse.data = formatXml(response.data);\r\n\t\t\t\texecuted = true;\r\n\t\t\t}\r\n\t\t\tdeferred.resolve(executed);\r\n\t\t\treturn deferred.promise;\r\n\t\t};\r\n\r\n\t}]);","/*\r\n * Orange angular-swagger-ui - v0.2.7\r\n *\r\n * (C) 2015 Orange, all right reserved\r\n * MIT Licensed\r\n */\r\n'use strict';\r\n\r\nangular\r\n\t.module('swaggerUi')\r\n\t.service('swagger2JsonParser', ['$q', '$sce', '$location', 'swaggerModel', function($q, $sce, $location, swaggerModel) {\r\n\r\n\t\tvar trustedSources;\r\n\r\n\t\t/**\r\n\t\t * parse swagger description to ease HTML generation\r\n\t\t */\r\n\t\tfunction parseSwagger2Json(swagger, url, deferred, parseResult) {\r\n\t\t\tvar map = {},\r\n\t\t\t\tform = {},\r\n\t\t\t\tresources = [],\r\n\t\t\t\tinfos = swagger.info,\r\n\t\t\t\topenPath = $location.search().swagger,\r\n\t\t\t\tdefaultContentType = 'application/json';\r\n\r\n\t\t\tparseInfos(swagger, url, infos, defaultContentType);\r\n\t\t\tparseTags(swagger, resources, map);\r\n\t\t\tparseOperations(swagger, resources, form, map, defaultContentType, openPath);\r\n\t\t\tcleanUp(resources, openPath);\r\n\t\t\t// prepare result\r\n\t\t\tparseResult.infos = infos;\r\n\t\t\tparseResult.resources = resources;\r\n\t\t\tparseResult.form = form;\r\n\t\t\tdeferred.resolve(true);\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * parse main infos\r\n\t\t */\r\n\t\tfunction parseInfos(swagger, url, infos, defaultContentType) {\r\n\t\t\t// build URL params\r\n\t\t var a = angular.element('')[0];\r\n\r\n\t\t swagger.host = swagger.host || a.host;\r\n\t\t\tswagger.consumes = swagger.consumes || [defaultContentType];\r\n\t\t\tswagger.produces = swagger.produces || [defaultContentType];\r\n\t\t\t// build main infos\r\n\t\t\tinfos.basePath = swagger.basePath;\r\n\t\t\tinfos.host = swagger.host;\r\n\t\t\tinfos.description = trustHtml(infos.description);\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * parse tags\r\n\t\t */\r\n\t\tfunction parseTags(swagger, resources, map) {\r\n\t\t\tvar i, l, tag;\r\n\t\t\tif (!swagger.tags) {\r\n\t\t\t\tresources.push({\r\n\t\t\t\t\tname: 'default',\r\n\t\t\t\t\topen: true\r\n\t\t\t\t});\r\n\t\t\t\tmap['default'] = 0;\r\n\t\t\t} else {\r\n\t\t\t\tfor (i = 0, l = swagger.tags.length; i < l; i++) {\r\n\t\t\t\t\ttag = swagger.tags[i];\r\n\t\t\t\t\tresources.push(tag);\r\n\t\t\t\t\tmap[tag.name] = i;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * parse operations\r\n\t\t */\r\n\t\tfunction parseOperations(swagger, resources, form, map, defaultContentType, openPath) {\r\n\t\t\tvar path,\r\n\t\t\t\tpathObject,\r\n\t\t\t\tpathParameters,\r\n\t\t\t\thttpMethod,\r\n\t\t\t\toperation,\r\n\t\t\t\ttag,\r\n\t\t\t\tresource,\r\n\t\t\t\toperationId = 0,\r\n\t\t\t\tparamId = 0;\r\n\r\n\t\t\tfor (path in swagger.paths) {\r\n\t\t\t\tpathObject = swagger.paths[path];\r\n\t\t\t\tpathParameters = pathObject.parameters || [];\r\n\t\t\t\tdelete pathObject.parameters;\r\n\t\t\t\tfor (httpMethod in pathObject) {\r\n\t\t\t\t\toperation = pathObject[httpMethod];\r\n\t\t\t\t\t//TODO manage 'deprecated' operations ?\r\n\t\t\t\t\toperation.id = operationId;\r\n\t\t\t\t\toperation.description = trustHtml(operation.description);\r\n\t\t\t\t\toperation.produces = operation.produces || swagger.produces;\r\n\t\t\t\t\tform[operationId] = {\r\n\t\t\t\t\t\tresponseType: defaultContentType\r\n\t\t\t\t\t};\r\n\t\t\t\t\toperation.httpMethod = httpMethod;\r\n\t\t\t\t\toperation.path = path;\r\n parseParameters(swagger, operation, pathParameters, form, defaultContentType, operationId, paramId);\r\n\t\t\t\t\tparseResponses(swagger, operation);\r\n\t\t\t\t // setup operation tag (response name)\r\n operation.tags = operation.tags || ['default'];\r\n tag = operation.tags[0];\r\n\t\t\t\t // map operation to resource\r\n\t\t\t\t\tif (typeof map[tag] === 'undefined') {\r\n\t\t\t\t\t\tmap[tag] = resources.length;\r\n\t\t\t\t\t\tresources.push({\r\n\t\t\t\t\t\t\tname: tag\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t\tresource = resources[map[operation.tags[0]]];\r\n\t\t\t\t\toperation.open = openPath && openPath === operation.operationId || openPath === resource.name + '*';\r\n\t\t\t\t\tresource.operations = resource.operations || [];\r\n\t\t\t\t\tresource.operations.push(operation);\r\n\t\t\t\t\tif (operation.open) {\r\n\t\t\t\t\t\tresource.open = true;\r\n\t\t\t\t\t}\r\n\t\t\t\t\toperationId++;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * compute path and operation parameters\r\n\t\t */\r\n\t\tfunction computeParameters(swagger, pathParameters, operation) {\r\n\t\t\tvar i, j, k, l,\r\n\t\t\t\toperationParameters = operation.parameters || [],\r\n\t\t\t\tparameters = [].concat(operationParameters),\r\n\t\t\t\tfound,\r\n\t\t\t\tpathParameter,\r\n\t\t\t\toperationParameter;\r\n\r\n\t\t\tfor (i = 0, l = pathParameters.length; i < l; i++) {\r\n\t\t\t\tfound = false;\r\n\t\t\t\tpathParameter = swaggerModel.resolveReference(swagger, pathParameters[i]);\r\n\r\n\t\t\t\tfor (j = 0, k = operationParameters.length; j < k; j++) {\r\n\t\t\t\t\toperationParameter = swaggerModel.resolveReference(swagger, operationParameters[j]);\r\n\t\t\t\t\tif (pathParameter.name === operationParameter.name && pathParameter.in === operationParameter.in) {\r\n\t\t\t\t\t\t// overriden parameter\r\n\t\t\t\t\t\tfound = true;\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tif (!found) {\r\n\t\t\t\t\t// add path parameter to operation ones\r\n\t\t\t\t\tparameters.push(pathParameter);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\treturn parameters;\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * parse operation parameters\r\n\t\t */\r\n\t\tfunction parseParameters(swagger, operation, pathParameters, form, defaultContentType, operationId, paramId) {\r\n\t\t\tvar i, l,\r\n\t\t\t\tparam,\r\n\t\t\t\tparameters = operation.parameters = computeParameters(swagger, pathParameters, operation);\r\n\r\n\t\t\tfor (i = 0, l = parameters.length; i < l; i++) {\r\n\t\t\t\t//TODO manage 'collectionFormat' (csv, multi etc.) ?\r\n\t\t\t\t//TODO manage constraints (pattern, min, max etc.) ?\r\n\t\t\t\tparam = parameters[i] = swaggerModel.resolveReference(swagger, parameters[i]);\r\n\t\t\t\tparam.id = paramId;\r\n\t\t\t\tparam.type = swaggerModel.getType(param);\r\n\t\t\t\tparam.description = trustHtml(param.description);\r\n\t\t\t\tif (param.items && param.items.enum) {\r\n\t\t\t\t\tparam.enum = param.items.enum;\r\n\t\t\t\t\tparam.default = param.items.default;\r\n\t\t\t\t}\r\n\t\t\t\tparam.subtype = param.enum ? 'enum' : param.type;\r\n\t\t\t\t// put param into form scope\r\n\t\t\t\tform[operationId][param.name] = param.default || '';\r\n\t\t\t\tif (param.schema) {\r\n\t\t\t\t\tparam.schema.display = 1; // display schema\r\n\t\t\t\t\tparam.schema.json = swaggerModel.generateSampleJson(swagger, param.schema);\r\n\t\t\t\t\tparam.schema.model = $sce.trustAsHtml(swaggerModel.generateModel(swagger, param.schema));\r\n\t\t\t\t\tparam.schema.xml = swaggerModel.generateSampleXmlFromJson(param.schema.json, operation.tags[0]);\r\n\t\t\t\t}\r\n\t\t\t\tif (param.in === 'body') {\r\n\t\t\t\t\toperation.consumes = operation.consumes || swagger.consumes;\r\n\t\t\t\t\tform[operationId].contentType = operation.consumes.length === 1 ? operation.consumes[0] : defaultContentType;\r\n\t\t\t\t}\r\n\t\t\t\tparamId++;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * parse operatiopn responses\r\n\t\t */\r\n\t\tfunction parseResponses(swagger, operation, resourceName) {\r\n\t\t\tvar code,\r\n\t\t\t\tresponse;\r\n\r\n\t\t\tif (operation.responses) {\r\n\t\t\t\tfor (code in operation.responses) {\r\n\t\t\t\t\t//TODO manage response headers\r\n\t\t\t\t\tresponse = operation.responses[code];\r\n\t\t\t\t\tresponse.description = trustHtml(response.description);\r\n\t\t\t\t\tif (response.schema) {\r\n\t\t\t\t\t\tresponse.schema.json = response.examples && response.examples[operation.produces[0]] || swaggerModel.generateSampleJson(swagger, response.schema);\r\n\t\t\t\t\t\tif (response.schema.type === 'object' || response.schema.type === 'array' || response.schema.$ref) {\r\n\t\t\t\t\t\t\tresponse.display = 1; // display schema\r\n\t\t\t\t\t\t\tresponse.schema.model = $sce.trustAsHtml(swaggerModel.generateModel(swagger, response.schema));\r\n\t\t\t\t\t\t\tresponse.schema.xml = swaggerModel.generateSampleXmlFromJson(response.schema.json, operation.tags[0]);\r\n\t\t\t\t\t\t} else if (response.schema.type === 'string') {\r\n\t\t\t\t\t\t\tdelete response.schema;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tif (code === '200' || code === '201') {\r\n\t\t\t\t\t\t\toperation.responseClass = response;\r\n\t\t\t\t\t\t\toperation.responseClass.display = 1;\r\n\t\t\t\t\t\t\toperation.responseClass.status = code;\r\n\t\t\t\t\t\t\tdelete operation.responses[code];\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\toperation.hasResponses = true;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\toperation.hasResponses = true;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tfunction cleanUp(resources, openPath) {\r\n\t\t\tvar i,\r\n\t\t\t\tresource,\r\n\t\t\t\toperations;\r\n\r\n\t\t\tfor (i = 0; i < resources.length; i++) {\r\n\t\t\t\tresource = resources[i];\r\n\t\t\t\toperations = resources[i].operations;\r\n\t\t\t\tresource.open = resource.open || openPath === resource.name || openPath === resource.name + '*';\r\n\t\t\t\tif (!operations || (operations && operations.length === 0)) {\r\n\t\t\t\t\tresources.splice(i--, 1);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\t// sort resources alphabeticaly\r\n\t\t\tresources.sort(function(a, b) {\r\n\t\t\t\tif (a.name > b.name) {\r\n\t\t\t\t\treturn 1;\r\n\t\t\t\t} else if (a.name < b.name) {\r\n\t\t\t\t\treturn -1;\r\n\t\t\t\t}\r\n\t\t\t\treturn 0;\r\n\t\t\t});\r\n\t\t\tswaggerModel.clearCache();\r\n\t\t}\r\n\r\n\t\tfunction trustHtml(text) {\r\n\t\t\tvar trusted = text;\r\n\t\t\tif (typeof text === 'string' && trustedSources) {\r\n\t\t\t\ttrusted = $sce.trustAsHtml(escapeChars(text));\r\n\t\t\t}\r\n\t\t\t// else ngSanitize MUST be added to app\r\n\t\t\treturn trusted;\r\n\t\t}\r\n\r\n\t\tfunction escapeChars(text) {\r\n\t\t\treturn text && text\r\n\t\t\t\t.replace(/&/g, '&')\r\n\t\t\t\t.replace(/<([^\\/a-zA-Z])/g, '<$1')\r\n\t\t\t\t.replace(/\"/g, '"')\r\n\t\t\t\t.replace(/'/g, ''');\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * Module entry point\r\n\t\t */\r\n\t\tthis.execute = function(parserType, url, contentType, data, isTrustedSources, parseResult) {\r\n\t\t\tvar deferred = $q.defer();\r\n\t\t\tif (data.swagger === '2.0' && (parserType === 'json' || (parserType === 'auto' && contentType === 'application/json'))) {\r\n\t\t\t\ttrustedSources = isTrustedSources;\r\n\t\t\t\ttry {\r\n\t\t\t\t\tparseSwagger2Json(data, url, deferred, parseResult);\r\n\t\t\t\t} catch (e) {\r\n\t\t\t\t\tdeferred.reject({\r\n\t\t\t\t\t\tcode: 500,\r\n\t\t\t\t\t\tmessage: 'failed to parse swagger: ' + e.message\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tdeferred.resolve(false);\r\n\t\t\t}\r\n\t\t\treturn deferred.promise;\r\n\t\t};\r\n\r\n\t}]);\r\n"]}