\n `,\n styles: [`\n .share-link{cursor:pointer;margin-left:-15px;padding:0;line-height:1;width:15px;display:inline-block}.share-link:before{content:\"\";width:15px;height:15px;background-size:contain;background-image:url(\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMCIgeT0iMCIgd2lkdGg9IjUxMiIgaGVpZ2h0PSI1MTIiIHZpZXdCb3g9IjAgMCA1MTIgNTEyIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA1MTIgNTEyIiB4bWw6c3BhY2U9InByZXNlcnZlIj48cGF0aCBmaWxsPSIjMDEwMTAxIiBkPSJNNDU5LjcgMjMzLjRsLTkwLjUgOTAuNWMtNTAgNTAtMTMxIDUwLTE4MSAwIC03LjktNy44LTE0LTE2LjctMTkuNC0yNS44bDQyLjEtNDIuMWMyLTIgNC41LTMuMiA2LjgtNC41IDIuOSA5LjkgOCAxOS4zIDE1LjggMjcuMiAyNSAyNSA2NS42IDI0LjkgOTAuNSAwbDkwLjUtOTAuNWMyNS0yNSAyNS02NS42IDAtOTAuNSAtMjQuOS0yNS02NS41LTI1LTkwLjUgMGwtMzIuMiAzMi4yYy0yNi4xLTEwLjItNTQuMi0xMi45LTgxLjYtOC45bDY4LjYtNjguNmM1MC01MCAxMzEtNTAgMTgxIDBDNTA5LjYgMTAyLjMgNTA5LjYgMTgzLjQgNDU5LjcgMjMzLjR6TTIyMC4zIDM4Mi4ybC0zMi4yIDMyLjJjLTI1IDI0LjktNjUuNiAyNC45LTkwLjUgMCAtMjUtMjUtMjUtNjUuNiAwLTkwLjVsOTAuNS05MC41YzI1LTI1IDY1LjUtMjUgOTAuNSAwIDcuOCA3LjggMTIuOSAxNy4yIDE1LjggMjcuMSAyLjQtMS40IDQuOC0yLjUgNi44LTQuNWw0Mi4xLTQyYy01LjQtOS4yLTExLjYtMTgtMTkuNC0yNS44IC01MC01MC0xMzEtNTAtMTgxIDBsLTkwLjUgOTAuNWMtNTAgNTAtNTAgMTMxIDAgMTgxIDUwIDUwIDEzMSA1MCAxODEgMGw2OC42LTY4LjZDMjc0LjYgMzk1LjEgMjQ2LjQgMzkyLjMgMjIwLjMgMzgyLjJ6Ii8+PC9zdmc+Cg==\");opacity:0.5;visibility:hidden;display:inline-block;vertical-align:middle}.sharable-header{color:#263238}.sharable-header:hover .share-link:before,.share-link:hover:before{visibility:visible}:host{padding-bottom:100px;display:block;border-bottom:1px solid rgba(127,127,127,0.25)}responses-list,params-list{display:block}.method-header{margin-bottom:.9em}.method-endpoint{margin:0 0 2em 0;padding:10px 20px;border-radius:4px;background-color:#222d32;display:block;font-weight:300}.method-endpoint>h5{padding-top:1px;padding-bottom:0;margin:0;font-size:.8em;color:#263238;vertical-align:middle;display:inline-block;border-radius:2px}.api-url{color:rgba(255,255,255,0.8);margin-left:10px;margin-top:2px;position:relative;top:1px;font-family:Montserrat,sans-serif;font-size:0.929em !important}.path{font-family:Montserrat,sans-serif;position:relative;top:1px;color:#ffffff;font-size:0.929em !important}.method-tags{margin-top:20px}.method-tags a{font-size:16px;color:#999;display:inline-block;padding:0 0.5em;text-decoration:none}.method-tags a:before{content:'#';margin-right:-0.4em}.method-tags a:first-of-type{padding:0}.method-content,.method-samples{display:block;box-sizing:border-box;float:left}.method-content{width:60%;padding:40px}.method-samples{color:#fafbfc;width:40%;padding:40px;background:#263238}responses-samples{display:block}.method-samples header,.method-samples>h5{color:#9fb4be;text-transform:uppercase}.method-samples>h5{margin-bottom:8px}.method-samples schema-sample{display:block}.method:after{content:\"\";display:table;clear:both}.method-description{padding:6px 0 10px 0;margin:0}.http-method{color:#263238;background:#ffffff;padding:3px 10px;text-transform:uppercase}@media (max-width: 1100px){.methods:before{display:none}.method-samples,.method-content{width:100%}.method-samples{margin-top:2em}:host{padding-bottom:0}}\n `],\n directives: [ ParamsList, ResponsesList, ResponsesSamples, SchemaSample, RequestSamples ],\n inputs: ['tag']\n})\nexport class Method extends BaseComponent {\n constructor(schemaMgr) {\n super(schemaMgr);\n }\n\n prepareModel() {\n this.data = {};\n this.data.apiUrl = this.schemaMgr.apiUrl;\n this.data.httpMethod = JsonPointer.baseName(this.pointer);\n this.data.path = JsonPointer.baseName(this.pointer, 2);\n this.data.methodInfo = this.componentSchema;\n this.data.methodInfo.tags = this.filterMainTags(this.data.methodInfo.tags);\n this.data.bodyParam = this.findBodyParam();\n if (this.componentSchema.operationId) {\n this.data.methodAnchor = 'operation/' + encodeURIComponent(this.componentSchema.operationId);\n } else {\n this.data.methodAnchor = 'tag/' + encodeURIComponent(this.tag + this.pointer);\n }\n }\n\n filterMainTags(tags) {\n var tagsMap = this.schemaMgr.getTagsMap();\n if (!tags) return [];\n return tags.filter(tag => tagsMap[tag] && tagsMap[tag]['x-traitTag']);\n }\n\n findBodyParam() {\n let pathParams = this.schemaMgr.getMethodParams(this.pointer, true);\n let bodyParam = pathParams.find(param => param.in === 'body');\n return bodyParam;\n }\n}\n","'use strict';\n\nimport { forwardRef } from '@angular/core';\nimport { RedocComponent, BaseComponent } from '../base';\nimport { Method } from '../Method/method';\nimport { EncodeURIComponentPipe } from '../../utils/pipes';\n\n@RedocComponent({\n selector: 'methods-list',\n template: `\n
\n `,\n styles: [`\n .share-link{cursor:pointer;margin-left:-15px;padding:0;line-height:1;width:15px;display:inline-block}.share-link:before{content:\"\";width:15px;height:15px;background-size:contain;background-image:url(\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMCIgeT0iMCIgd2lkdGg9IjUxMiIgaGVpZ2h0PSI1MTIiIHZpZXdCb3g9IjAgMCA1MTIgNTEyIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA1MTIgNTEyIiB4bWw6c3BhY2U9InByZXNlcnZlIj48cGF0aCBmaWxsPSIjMDEwMTAxIiBkPSJNNDU5LjcgMjMzLjRsLTkwLjUgOTAuNWMtNTAgNTAtMTMxIDUwLTE4MSAwIC03LjktNy44LTE0LTE2LjctMTkuNC0yNS44bDQyLjEtNDIuMWMyLTIgNC41LTMuMiA2LjgtNC41IDIuOSA5LjkgOCAxOS4zIDE1LjggMjcuMiAyNSAyNSA2NS42IDI0LjkgOTAuNSAwbDkwLjUtOTAuNWMyNS0yNSAyNS02NS42IDAtOTAuNSAtMjQuOS0yNS02NS41LTI1LTkwLjUgMGwtMzIuMiAzMi4yYy0yNi4xLTEwLjItNTQuMi0xMi45LTgxLjYtOC45bDY4LjYtNjguNmM1MC01MCAxMzEtNTAgMTgxIDBDNTA5LjYgMTAyLjMgNTA5LjYgMTgzLjQgNDU5LjcgMjMzLjR6TTIyMC4zIDM4Mi4ybC0zMi4yIDMyLjJjLTI1IDI0LjktNjUuNiAyNC45LTkwLjUgMCAtMjUtMjUtMjUtNjUuNiAwLTkwLjVsOTAuNS05MC41YzI1LTI1IDY1LjUtMjUgOTAuNSAwIDcuOCA3LjggMTIuOSAxNy4yIDE1LjggMjcuMSAyLjQtMS40IDQuOC0yLjUgNi44LTQuNWw0Mi4xLTQyYy01LjQtOS4yLTExLjYtMTgtMTkuNC0yNS44IC01MC01MC0xMzEtNTAtMTgxIDBsLTkwLjUgOTAuNWMtNTAgNTAtNTAgMTMxIDAgMTgxIDUwIDUwIDEzMSA1MCAxODEgMGw2OC42LTY4LjZDMjc0LjYgMzk1LjEgMjQ2LjQgMzkyLjMgMjIwLjMgMzgyLjJ6Ii8+PC9zdmc+Cg==\");opacity:0.5;visibility:hidden;display:inline-block;vertical-align:middle}.sharable-header{color:#263238}.sharable-header:hover .share-link:before,.share-link:hover:before{visibility:visible}.tag-info{padding:40px;box-sizing:border-box;background-color:white;width:60%}@media (max-width: 1100px){.tag-info{width:100%}}.tag-info:after,.tag-info:before{content:\"\";display:table}.tag-info h1{color:#0033a0;text-transform:capitalize;font-weight:normal}.methods{display:block;position:relative}\n `],\n directives: [ forwardRef(() => Method) ],\n pipes: [ EncodeURIComponentPipe ]\n})\nexport class MethodsList extends BaseComponent {\n\n constructor(schemaMgr) {\n super(schemaMgr);\n }\n\n prepareModel() {\n this.data = {};\n // follow SwaggerUI behavior for cases when one method has more than one tag:\n // duplicate methods\n\n let menuStructure = this.schemaMgr.buildMenuTree();\n let tags = Array.from(menuStructure.entries())\n .map((entry) => {\n let [tag, {description, methods}] = entry;\n // inject tag name into method info\n methods = methods || [];\n methods.forEach(method => {\n method.tag = tag;\n });\n return {\n name: tag,\n description: description,\n methods: methods\n };\n });\n this.data.tags = tags;\n // TODO: check $ref field\n }\n}\n","/* */ \n\"use strict\";\nvar _Array$from = require('../core-js/array/from')[\"default\"];\nexports[\"default\"] = function(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0,\n arr2 = Array(arr.length); i < arr.length; i++)\n arr2[i] = arr[i];\n return arr2;\n } else {\n return _Array$from(arr);\n }\n};\nexports.__esModule = true;\n","\n/* **********************************************\n Begin prism-core.js\n********************************************** */\n\nvar _self = (typeof window !== 'undefined')\n\t? window // if in browser\n\t: (\n\t\t(typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope)\n\t\t? self // if in worker\n\t\t: {} // if in node js\n\t);\n\n/**\n * Prism: Lightweight, robust, elegant syntax highlighting\n * MIT license http://www.opensource.org/licenses/mit-license.php/\n * @author Lea Verou http://lea.verou.me\n */\n\nvar Prism = (function(){\n\n// Private helper vars\nvar lang = /\\blang(?:uage)?-(?!\\*)(\\w+)\\b/i;\n\nvar _ = _self.Prism = {\n\tutil: {\n\t\tencode: function (tokens) {\n\t\t\tif (tokens instanceof Token) {\n\t\t\t\treturn new Token(tokens.type, _.util.encode(tokens.content), tokens.alias);\n\t\t\t} else if (_.util.type(tokens) === 'Array') {\n\t\t\t\treturn tokens.map(_.util.encode);\n\t\t\t} else {\n\t\t\t\treturn tokens.replace(/&/g, '&').replace(/ text.length) {\n\t\t\t\t\t\t// Something went terribly wrong, ABORT, ABORT!\n\t\t\t\t\t\tbreak tokenloop;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (str instanceof Token) {\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\n\t\t\t\t\tpattern.lastIndex = 0;\n\n\t\t\t\t\tvar match = pattern.exec(str);\n\n\t\t\t\t\tif (match) {\n\t\t\t\t\t\tif(lookbehind) {\n\t\t\t\t\t\t\tlookbehindLength = match[1].length;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tvar from = match.index - 1 + lookbehindLength,\n\t\t\t\t\t\t\tmatch = match[0].slice(lookbehindLength),\n\t\t\t\t\t\t\tlen = match.length,\n\t\t\t\t\t\t\tto = from + len,\n\t\t\t\t\t\t\tbefore = str.slice(0, from + 1),\n\t\t\t\t\t\t\tafter = str.slice(to + 1);\n\n\t\t\t\t\t\tvar args = [i, 1];\n\n\t\t\t\t\t\tif (before) {\n\t\t\t\t\t\t\targs.push(before);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tvar wrapped = new Token(token, inside? _.tokenize(match, inside) : match, alias);\n\n\t\t\t\t\t\targs.push(wrapped);\n\n\t\t\t\t\t\tif (after) {\n\t\t\t\t\t\t\targs.push(after);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tArray.prototype.splice.apply(strarr, args);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn strarr;\n\t},\n\n\thooks: {\n\t\tall: {},\n\n\t\tadd: function (name, callback) {\n\t\t\tvar hooks = _.hooks.all;\n\n\t\t\thooks[name] = hooks[name] || [];\n\n\t\t\thooks[name].push(callback);\n\t\t},\n\n\t\trun: function (name, env) {\n\t\t\tvar callbacks = _.hooks.all[name];\n\n\t\t\tif (!callbacks || !callbacks.length) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tfor (var i=0, callback; callback = callbacks[i++];) {\n\t\t\t\tcallback(env);\n\t\t\t}\n\t\t}\n\t}\n};\n\nvar Token = _.Token = function(type, content, alias) {\n\tthis.type = type;\n\tthis.content = content;\n\tthis.alias = alias;\n};\n\nToken.stringify = function(o, language, parent) {\n\tif (typeof o == 'string') {\n\t\treturn o;\n\t}\n\n\tif (_.util.type(o) === 'Array') {\n\t\treturn o.map(function(element) {\n\t\t\treturn Token.stringify(element, language, o);\n\t\t}).join('');\n\t}\n\n\tvar env = {\n\t\ttype: o.type,\n\t\tcontent: Token.stringify(o.content, language, parent),\n\t\ttag: 'span',\n\t\tclasses: ['token', o.type],\n\t\tattributes: {},\n\t\tlanguage: language,\n\t\tparent: parent\n\t};\n\n\tif (env.type == 'comment') {\n\t\tenv.attributes['spellcheck'] = 'true';\n\t}\n\n\tif (o.alias) {\n\t\tvar aliases = _.util.type(o.alias) === 'Array' ? o.alias : [o.alias];\n\t\tArray.prototype.push.apply(env.classes, aliases);\n\t}\n\n\t_.hooks.run('wrap', env);\n\n\tvar attributes = '';\n\n\tfor (var name in env.attributes) {\n\t\tattributes += (attributes ? ' ' : '') + name + '=\"' + (env.attributes[name] || '') + '\"';\n\t}\n\n\treturn '<' + env.tag + ' class=\"' + env.classes.join(' ') + '\" ' + attributes + '>' + env.content + '' + env.tag + '>';\n\n};\n\nif (!_self.document) {\n\tif (!_self.addEventListener) {\n\t\t// in Node.js\n\t\treturn _self.Prism;\n\t}\n \t// In worker\n\t_self.addEventListener('message', function(evt) {\n\t\tvar message = JSON.parse(evt.data),\n\t\t lang = message.language,\n\t\t code = message.code,\n\t\t immediateClose = message.immediateClose;\n\n\t\t_self.postMessage(_.highlight(code, _.languages[lang], lang));\n\t\tif (immediateClose) {\n\t\t\t_self.close();\n\t\t}\n\t}, false);\n\n\treturn _self.Prism;\n}\n\n// Get current script and highlight\nvar script = document.getElementsByTagName('script');\n\nscript = script[script.length - 1];\n\nif (script) {\n\t_.filename = script.src;\n\n\tif (document.addEventListener && !script.hasAttribute('data-manual')) {\n\t\tdocument.addEventListener('DOMContentLoaded', _.highlightAll);\n\t}\n}\n\nreturn _self.Prism;\n\n})();\n\nif (typeof module !== 'undefined' && module.exports) {\n\tmodule.exports = Prism;\n}\n\n// hack for components to work correctly in node.js\nif (typeof global !== 'undefined') {\n\tglobal.Prism = Prism;\n}\n\n\n/* **********************************************\n Begin prism-markup.js\n********************************************** */\n\nPrism.languages.markup = {\n\t'comment': //,\n\t'prolog': /<\\?[\\w\\W]+?\\?>/,\n\t'doctype': //,\n\t'cdata': //i,\n\t'tag': {\n\t\tpattern: /<\\/?(?!\\d)[^\\s>\\/=.$<]+(?:\\s+[^\\s>\\/=]+(?:=(?:(\"|')(?:\\\\\\1|\\\\?(?!\\1)[\\w\\W])*\\1|[^\\s'\">=]+))?)*\\s*\\/?>/i,\n\t\tinside: {\n\t\t\t'tag': {\n\t\t\t\tpattern: /^<\\/?[^\\s>\\/]+/i,\n\t\t\t\tinside: {\n\t\t\t\t\t'punctuation': /^<\\/?/,\n\t\t\t\t\t'namespace': /^[^\\s>\\/:]+:/\n\t\t\t\t}\n\t\t\t},\n\t\t\t'attr-value': {\n\t\t\t\tpattern: /=(?:('|\")[\\w\\W]*?(\\1)|[^\\s>]+)/i,\n\t\t\t\tinside: {\n\t\t\t\t\t'punctuation': /[=>\"']/\n\t\t\t\t}\n\t\t\t},\n\t\t\t'punctuation': /\\/?>/,\n\t\t\t'attr-name': {\n\t\t\t\tpattern: /[^\\s>\\/]+/,\n\t\t\t\tinside: {\n\t\t\t\t\t'namespace': /^[^\\s>\\/:]+:/\n\t\t\t\t}\n\t\t\t}\n\n\t\t}\n\t},\n\t'entity': /?[\\da-z]{1,8};/i\n};\n\n// Plugin to make entity title show the real entity, idea by Roman Komarov\nPrism.hooks.add('wrap', function(env) {\n\n\tif (env.type === 'entity') {\n\t\tenv.attributes['title'] = env.content.replace(/&/, '&');\n\t}\n});\n\nPrism.languages.xml = Prism.languages.markup;\nPrism.languages.html = Prism.languages.markup;\nPrism.languages.mathml = Prism.languages.markup;\nPrism.languages.svg = Prism.languages.markup;\n\n\n/* **********************************************\n Begin prism-css.js\n********************************************** */\n\nPrism.languages.css = {\n\t'comment': /\\/\\*[\\w\\W]*?\\*\\//,\n\t'atrule': {\n\t\tpattern: /@[\\w-]+?.*?(;|(?=\\s*\\{))/i,\n\t\tinside: {\n\t\t\t'rule': /@[\\w-]+/\n\t\t\t// See rest below\n\t\t}\n\t},\n\t'url': /url\\((?:([\"'])(\\\\(?:\\r\\n|[\\w\\W])|(?!\\1)[^\\\\\\r\\n])*\\1|.*?)\\)/i,\n\t'selector': /[^\\{\\}\\s][^\\{\\};]*?(?=\\s*\\{)/,\n\t'string': /(\"|')(\\\\(?:\\r\\n|[\\w\\W])|(?!\\1)[^\\\\\\r\\n])*\\1/,\n\t'property': /(\\b|\\B)[\\w-]+(?=\\s*:)/i,\n\t'important': /\\B!important\\b/i,\n\t'function': /[-a-z0-9]+(?=\\()/i,\n\t'punctuation': /[(){};:]/\n};\n\nPrism.languages.css['atrule'].inside.rest = Prism.util.clone(Prism.languages.css);\n\nif (Prism.languages.markup) {\n\tPrism.languages.insertBefore('markup', 'tag', {\n\t\t'style': {\n\t\t\tpattern: /(