This is an automated email from the ASF dual-hosted git repository. oleewere pushed a commit to branch cloudbreak in repository https://gitbox.apache.org/repos/asf/ambari-logsearch.git
commit 3053cffa1841943372a4bf3d38a8cebb5ea8012f Author: kasakrisz <33458261+kasakr...@users.noreply.github.com> AuthorDate: Thu Oct 18 15:20:30 2018 +0200 AMBARI-24802 - Logsearch: upgrade swagger-ui to 3.19.0 (#10) --- ambari-logsearch-server/pom.xml | 2 +- .../ambari/logsearch/common/ApiDocStorage.java | 34 +++-- .../ambari/logsearch/rest/AuditLogsResource.java | 28 ++-- .../logsearch/rest/EventHistoryResource.java | 17 ++- .../ambari/logsearch/rest/ServiceLogsResource.java | 35 ++++- .../logsearch/rest/ShipperConfigResource.java | 3 +- .../ambari/logsearch/rest/StatusResource.java | 25 ++-- .../src/main/resources/swagger/swagger.html | 161 +++++++-------------- 8 files changed, 143 insertions(+), 162 deletions(-) diff --git a/ambari-logsearch-server/pom.xml b/ambari-logsearch-server/pom.xml index d18a47c..8c955ae 100755 --- a/ambari-logsearch-server/pom.xml +++ b/ambari-logsearch-server/pom.xml @@ -572,7 +572,7 @@ <dependency> <groupId>org.webjars</groupId> <artifactId>swagger-ui</artifactId> - <version>2.2.2</version> + <version>3.19.0</version> </dependency> <dependency> <groupId>org.springframework.data</groupId> diff --git a/ambari-logsearch-server/src/main/java/org/apache/ambari/logsearch/common/ApiDocStorage.java b/ambari-logsearch-server/src/main/java/org/apache/ambari/logsearch/common/ApiDocStorage.java index e31a3b4..f2edcce 100644 --- a/ambari-logsearch-server/src/main/java/org/apache/ambari/logsearch/common/ApiDocStorage.java +++ b/ambari-logsearch-server/src/main/java/org/apache/ambari/logsearch/common/ApiDocStorage.java @@ -18,17 +18,20 @@ */ package org.apache.ambari.logsearch.common; -import io.swagger.jaxrs.config.BeanConfig; -import io.swagger.models.Swagger; -import io.swagger.util.Yaml; -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; import javax.annotation.PostConstruct; import javax.inject.Inject; import javax.inject.Named; -import java.util.Map; -import java.util.concurrent.ConcurrentHashMap; + +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + +import io.swagger.jaxrs.config.BeanConfig; +import io.swagger.models.Swagger; +import io.swagger.models.auth.BasicAuthDefinition; +import io.swagger.util.Yaml; @Named public class ApiDocStorage { @@ -47,20 +50,19 @@ public class ApiDocStorage { public void run() { logger.info("Start thread to scan REST API doc from endpoints."); Swagger swagger = beanConfig.getSwagger(); + swagger.addSecurityDefinition("basicAuth", new BasicAuthDefinition()); beanConfig.configure(swagger); beanConfig.scanAndRead(); setSwagger(swagger); try { - if (swagger != null) { - String yaml = Yaml.mapper().writeValueAsString(swagger); - StringBuilder b = new StringBuilder(); - String[] parts = yaml.split("\n"); - for (String part : parts) { - b.append(part); - b.append("\n"); - } - setSwaggerYaml(b.toString()); + String yaml = Yaml.mapper().writeValueAsString(swagger); + StringBuilder b = new StringBuilder(); + String[] parts = yaml.split("\n"); + for (String part : parts) { + b.append(part); + b.append("\n"); } + setSwaggerYaml(b.toString()); } catch (Exception e) { e.printStackTrace(); } diff --git a/ambari-logsearch-server/src/main/java/org/apache/ambari/logsearch/rest/AuditLogsResource.java b/ambari-logsearch-server/src/main/java/org/apache/ambari/logsearch/rest/AuditLogsResource.java index 0da2706..6b214e0 100644 --- a/ambari-logsearch-server/src/main/java/org/apache/ambari/logsearch/rest/AuditLogsResource.java +++ b/ambari-logsearch-server/src/main/java/org/apache/ambari/logsearch/rest/AuditLogsResource.java @@ -19,6 +19,19 @@ package org.apache.ambari.logsearch.rest; +import static org.apache.ambari.logsearch.doc.DocConstants.AuditOperationDescriptions.EXPORT_USER_TALBE_TO_TEXT_FILE_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.AuditOperationDescriptions.GET_AUDIT_CLUSTERS_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.AuditOperationDescriptions.GET_AUDIT_COMPONENTS_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.AuditOperationDescriptions.GET_AUDIT_LINE_GRAPH_DATA_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.AuditOperationDescriptions.GET_AUDIT_LOGS_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.AuditOperationDescriptions.GET_AUDIT_SCHEMA_FIELD_LIST_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.AuditOperationDescriptions.GET_SERVICE_LOAD_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.AuditOperationDescriptions.GET_TOP_AUDIT_RESOURCES_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.AuditOperationDescriptions.PURGE_AUDIT_LOGS_OD; + +import java.util.List; +import java.util.Map; + import javax.annotation.Nullable; import javax.inject.Inject; import javax.inject.Named; @@ -34,11 +47,9 @@ import javax.ws.rs.QueryParam; import javax.ws.rs.core.MediaType; import javax.ws.rs.core.Response; -import freemarker.template.TemplateException; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; import org.apache.ambari.logsearch.common.LogSearchConstants; import org.apache.ambari.logsearch.common.StatusMessage; +import org.apache.ambari.logsearch.manager.AuditLogsManager; import org.apache.ambari.logsearch.model.metadata.AuditFieldMetadataResponse; import org.apache.ambari.logsearch.model.request.impl.body.AuditBarGraphBodyRequest; import org.apache.ambari.logsearch.model.request.impl.body.AuditLogBodyRequest; @@ -53,15 +64,14 @@ import org.apache.ambari.logsearch.model.request.impl.query.TopFieldAuditLogQuer import org.apache.ambari.logsearch.model.request.impl.query.UserExportQueryRequest; import org.apache.ambari.logsearch.model.response.AuditLogResponse; import org.apache.ambari.logsearch.model.response.BarGraphDataListResponse; -import org.apache.ambari.logsearch.manager.AuditLogsManager; import org.springframework.context.annotation.Scope; -import java.util.List; -import java.util.Map; - -import static org.apache.ambari.logsearch.doc.DocConstants.AuditOperationDescriptions.*; +import freemarker.template.TemplateException; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.Authorization; -@Api(value = "audit/logs", description = "Audit log operations") +@Api(value = "audit/logs", description = "Audit log operations", authorizations = {@Authorization(value = "basicAuth")}) @Path("audit/logs") @Named @Scope("request") diff --git a/ambari-logsearch-server/src/main/java/org/apache/ambari/logsearch/rest/EventHistoryResource.java b/ambari-logsearch-server/src/main/java/org/apache/ambari/logsearch/rest/EventHistoryResource.java index 917a55c..cdaab54 100644 --- a/ambari-logsearch-server/src/main/java/org/apache/ambari/logsearch/rest/EventHistoryResource.java +++ b/ambari-logsearch-server/src/main/java/org/apache/ambari/logsearch/rest/EventHistoryResource.java @@ -19,6 +19,13 @@ package org.apache.ambari.logsearch.rest; +import static org.apache.ambari.logsearch.doc.DocConstants.EventHistoryOperationDescriptions.DELETE_EVENT_HISTORY_DATA_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.EventHistoryOperationDescriptions.GET_ALL_USER_NAMES_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.EventHistoryOperationDescriptions.GET_EVENT_HISTORY_DATA_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.EventHistoryOperationDescriptions.SAVE_EVENT_HISTORY_DATA_OD; + +import java.util.List; + import javax.inject.Inject; import javax.inject.Named; import javax.ws.rs.BeanParam; @@ -29,19 +36,17 @@ import javax.ws.rs.Path; import javax.ws.rs.PathParam; import javax.ws.rs.Produces; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; import org.apache.ambari.logsearch.manager.EventHistoryManager; import org.apache.ambari.logsearch.model.request.impl.query.EventHistoryQueryRequest; import org.apache.ambari.logsearch.model.response.EventHistoryData; import org.apache.ambari.logsearch.model.response.EventHistoryDataListResponse; import org.springframework.context.annotation.Scope; -import java.util.List; - -import static org.apache.ambari.logsearch.doc.DocConstants.EventHistoryOperationDescriptions.*; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.Authorization; -@Api(value = "history", description = "Event history operations") +@Api(value = "history", description = "Event history operations", authorizations = {@Authorization(value = "basicAuth")}) @Path("history") @Named @Scope("request") diff --git a/ambari-logsearch-server/src/main/java/org/apache/ambari/logsearch/rest/ServiceLogsResource.java b/ambari-logsearch-server/src/main/java/org/apache/ambari/logsearch/rest/ServiceLogsResource.java index 0deffa8..9daf0b3 100644 --- a/ambari-logsearch-server/src/main/java/org/apache/ambari/logsearch/rest/ServiceLogsResource.java +++ b/ambari-logsearch-server/src/main/java/org/apache/ambari/logsearch/rest/ServiceLogsResource.java @@ -18,6 +18,28 @@ */ package org.apache.ambari.logsearch.rest; +import static org.apache.ambari.logsearch.doc.DocConstants.ServiceOperationDescriptions.EXPORT_TO_TEXT_FILE_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.ServiceOperationDescriptions.GET_AFTER_BEFORE_LOGS_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.ServiceOperationDescriptions.GET_AGGREGATED_INFO_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.ServiceOperationDescriptions.GET_ANY_GRAPH_COUNT_DATA_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.ServiceOperationDescriptions.GET_COMPONENTS_COUNT_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.ServiceOperationDescriptions.GET_COMPONENTS_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.ServiceOperationDescriptions.GET_COMPONENT_LIST_WITH_LEVEL_COUNT_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.ServiceOperationDescriptions.GET_HISTOGRAM_DATA_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.ServiceOperationDescriptions.GET_HOSTS_COUNT_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.ServiceOperationDescriptions.GET_HOSTS_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.ServiceOperationDescriptions.GET_HOST_LIST_BY_COMPONENT_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.ServiceOperationDescriptions.GET_HOST_LOGFILES_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.ServiceOperationDescriptions.GET_LOG_LEVELS_COUNT_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.ServiceOperationDescriptions.GET_SERVICE_CLUSTERS_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.ServiceOperationDescriptions.GET_SERVICE_LOGS_SCHEMA_FIELD_NAME_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.ServiceOperationDescriptions.GET_TREE_EXTENSION_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.ServiceOperationDescriptions.PURGE_LOGS_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.ServiceOperationDescriptions.REQUEST_CANCEL; +import static org.apache.ambari.logsearch.doc.DocConstants.ServiceOperationDescriptions.SEARCH_LOGS_OD; + +import java.util.List; + import javax.annotation.Nullable; import javax.inject.Inject; import javax.inject.Named; @@ -34,11 +56,9 @@ import javax.ws.rs.QueryParam; import javax.ws.rs.core.MediaType; import javax.ws.rs.core.Response; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; - import org.apache.ambari.logsearch.common.LogSearchConstants; import org.apache.ambari.logsearch.common.StatusMessage; +import org.apache.ambari.logsearch.manager.ServiceLogsManager; import org.apache.ambari.logsearch.model.metadata.FieldMetadata; import org.apache.ambari.logsearch.model.metadata.ServiceComponentMetadataWrapper; import org.apache.ambari.logsearch.model.request.impl.body.ClusterBodyRequest; @@ -72,14 +92,13 @@ import org.apache.ambari.logsearch.model.response.HostLogFilesResponse; import org.apache.ambari.logsearch.model.response.NameValueDataListResponse; import org.apache.ambari.logsearch.model.response.NodeListResponse; import org.apache.ambari.logsearch.model.response.ServiceLogResponse; -import org.apache.ambari.logsearch.manager.ServiceLogsManager; import org.springframework.context.annotation.Scope; -import java.util.List; - -import static org.apache.ambari.logsearch.doc.DocConstants.ServiceOperationDescriptions.*; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.Authorization; -@Api(value = "service/logs", description = "Service log operations") +@Api(value = "service/logs", description = "Service log operations", authorizations = {@Authorization(value = "basicAuth")}) @Path("service/logs") @Named @Scope("request") diff --git a/ambari-logsearch-server/src/main/java/org/apache/ambari/logsearch/rest/ShipperConfigResource.java b/ambari-logsearch-server/src/main/java/org/apache/ambari/logsearch/rest/ShipperConfigResource.java index 7d31f08..27f974d 100644 --- a/ambari-logsearch-server/src/main/java/org/apache/ambari/logsearch/rest/ShipperConfigResource.java +++ b/ambari-logsearch-server/src/main/java/org/apache/ambari/logsearch/rest/ShipperConfigResource.java @@ -49,8 +49,9 @@ import org.springframework.context.annotation.Scope; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.Authorization; -@Api(value = "shipper", description = "Shipper config operations") +@Api(value = "shipper", description = "Shipper config operations", authorizations = {@Authorization(value = "basicAuth")}) @Path("shipper") @Named @Scope("request") diff --git a/ambari-logsearch-server/src/main/java/org/apache/ambari/logsearch/rest/StatusResource.java b/ambari-logsearch-server/src/main/java/org/apache/ambari/logsearch/rest/StatusResource.java index 3499bce..4c52157 100644 --- a/ambari-logsearch-server/src/main/java/org/apache/ambari/logsearch/rest/StatusResource.java +++ b/ambari-logsearch-server/src/main/java/org/apache/ambari/logsearch/rest/StatusResource.java @@ -18,25 +18,28 @@ */ package org.apache.ambari.logsearch.rest; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.apache.ambari.logsearch.conf.global.SolrCollectionState; -import org.springframework.context.annotation.Scope; +import static org.apache.ambari.logsearch.doc.DocConstants.StatusOperationDescriptions.AUDIT_LOGS_STATUS_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.StatusOperationDescriptions.EVENT_HISTORY_STATUS_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.StatusOperationDescriptions.SERVICE_LOGS_STATUS_OD; +import static org.apache.ambari.logsearch.doc.DocConstants.StatusOperationDescriptions.STATUS_OD; + +import java.util.HashMap; +import java.util.Map; import javax.inject.Inject; import javax.inject.Named; import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.Produces; -import java.util.HashMap; -import java.util.Map; -import static org.apache.ambari.logsearch.doc.DocConstants.StatusOperationDescriptions.AUDIT_LOGS_STATUS_OD; -import static org.apache.ambari.logsearch.doc.DocConstants.StatusOperationDescriptions.SERVICE_LOGS_STATUS_OD; -import static org.apache.ambari.logsearch.doc.DocConstants.StatusOperationDescriptions.STATUS_OD; -import static org.apache.ambari.logsearch.doc.DocConstants.StatusOperationDescriptions.EVENT_HISTORY_STATUS_OD; +import org.apache.ambari.logsearch.conf.global.SolrCollectionState; +import org.springframework.context.annotation.Scope; + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.Authorization; -@Api(value = "status", description = "Status Operations") +@Api(value = "status", description = "Status Operations", authorizations = {@Authorization(value = "basicAuth")}) @Path("status") @Named @Scope("request") diff --git a/ambari-logsearch-server/src/main/resources/swagger/swagger.html b/ambari-logsearch-server/src/main/resources/swagger/swagger.html index 50c2f66..f813e99 100644 --- a/ambari-logsearch-server/src/main/resources/swagger/swagger.html +++ b/ambari-logsearch-server/src/main/resources/swagger/swagger.html @@ -1,5 +1,4 @@ -<!DOCTYPE html> -<html> +<!-- HTML for static distribution bundle build --> <!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with @@ -16,121 +15,63 @@ See the License for the specific language governing permissions and limitations under the License. --> +<!DOCTYPE html> +<html lang="en"> <head> <meta charset="UTF-8"> <title>Log Search REST API</title> - <link rel="icon" type="image/png" href="swagger-ui/2.2.2/images/favicon-32x32.png" sizes="32x32" /> - <link rel="icon" type="image/png" href="swagger-ui/2.2.2/images/favicon-16x16.png" sizes="16x16" /> - <link href='swagger-ui/2.2.2/css/typography.css' media='screen' rel='stylesheet' type='text/css'/> - <link href='swagger-ui/2.2.2/css/reset.css' media='screen' rel='stylesheet' type='text/css'/> - <link href='swagger-ui/2.2.2/css/screen.css' media='screen' rel='stylesheet' type='text/css'/> - <link href='swagger-ui/2.2.2/css/reset.css' media='print' rel='stylesheet' type='text/css'/> - <link href='swagger-ui/2.2.2/css/print.css' media='print' rel='stylesheet' type='text/css'/> - - <script src='swagger-ui/2.2.2/lib/object-assign-pollyfill.js' type='text/javascript'></script> - <script src='swagger-ui/2.2.2/lib/jquery-1.8.0.min.js' type='text/javascript'></script> - <script src='swagger-ui/2.2.2/lib/jquery.slideto.min.js' type='text/javascript'></script> - <script src='swagger-ui/2.2.2/lib/jquery.wiggle.min.js' type='text/javascript'></script> - <script src='swagger-ui/2.2.2/lib/jquery.ba-bbq.min.js' type='text/javascript'></script> - <script src='swagger-ui/2.2.2/lib/handlebars-4.0.5.js' type='text/javascript'></script> - <script src='swagger-ui/2.2.2/lib/lodash.min.js' type='text/javascript'></script> - <script src='swagger-ui/2.2.2/lib/backbone-min.js' type='text/javascript'></script> - <script src='swagger-ui/2.2.2/swagger-ui.js' type='text/javascript'></script> - <script src='swagger-ui/2.2.2/lib/highlight.9.1.0.pack.js' type='text/javascript'></script> - <script src='swagger-ui/2.2.2/lib/highlight.9.1.0.pack_extended.js' type='text/javascript'></script> - <script src='swagger-ui/2.2.2/lib/jsoneditor.min.js' type='text/javascript'></script> - <script src='swagger-ui/2.2.2/lib/marked.js' type='text/javascript'></script> - <script src='swagger-ui/2.2.2/lib/swagger-oauth.js' type='text/javascript'></script> - - <!-- Some basic translations --> - <!-- <script src='lang/translator.js' type='text/javascript'></script> --> - <!-- <script src='lang/ru.js' type='text/javascript'></script> --> - <!-- <script src='lang/en.js' type='text/javascript'></script> --> - - <script type="text/javascript"> - $(function () { - var url = window.location.search.match(/url=([^&]+)/); - if (url && url.length > 1) { - url = decodeURIComponent(url[1]); - } else { - var urlPrefix = location.protocol +'//'+ location.hostname+(location.port ? ':'+location.port: ''); - url = urlPrefix + "/api/v1/swagger.yaml"; - } + <link rel="stylesheet" type="text/css" href="swagger-ui/3.19.0/swagger-ui.css" > + <link rel="icon" type="image/png" href="swagger-ui/3.19.0/images/favicon-32x32.png" sizes="32x32" /> + <link rel="icon" type="image/png" href="swagger-ui/3.19.0/images/favicon-16x16.png" sizes="16x16" /> + <style> + html + { + box-sizing: border-box; + overflow: -moz-scrollbars-vertical; + overflow-y: scroll; + } - hljs.configure({ - highlightSizeThreshold: 5000 - }); + *, + *:before, + *:after + { + box-sizing: inherit; + } - // Pre load translate... - if(window.SwaggerTranslator) { - window.SwaggerTranslator.translate(); - } - window.swaggerUi = new SwaggerUi({ - url: url, - dom_id: "swagger-ui-container", - supportedSubmitMethods: ['get', 'post', 'put', 'delete', 'patch'], - onComplete: function(swaggerApi, swaggerUi){ - if(typeof initOAuth == "function") { - initOAuth({ - clientId: "your-client-id", - clientSecret: "your-client-secret-if-required", - realm: "your-realms", - appName: "your-app-name", - scopeSeparator: " ", - additionalQueryStringParams: {} - }); - } - - if(window.SwaggerTranslator) { - window.SwaggerTranslator.translate(); - } - }, - onFailure: function(data) { - log("Unable to Load SwaggerUI"); - }, - docExpansion: "none", - jsonEditor: false, - defaultModelRendering: 'schema', - showRequestHeaders: false - }); - - function addApiKeyAuthorization(){ - var username = encodeURIComponent($('#input_username')[0].value); - var password = encodeURIComponent($('#input_password')[0].value); - if (username && username.trim() != "" && password && password != "") { - var apiKeyAuth = new SwaggerClient.PasswordAuthorization("Authorization", username, password); - window.swaggerUi.api.clientAuthorizations.add("key", apiKeyAuth); - log("added authorization header: " + 'Basic ' + btoa(username + ':' + password)); - } - } - - $('#input_username, #input_password').change(addApiKeyAuthorization); + body + { + margin:0; + background: #fafafa; + } + </style> +</head> - window.swaggerUi.load(); +<body> +<div id="swagger-ui"></div> - function log() { - if ('console' in window) { - console.log.apply(console, arguments); - } - } - }); - </script> -</head> +<script src="swagger-ui/3.19.0/swagger-ui-bundle.js"> </script> +<script src="swagger-ui/3.19.0/swagger-ui-standalone-preset.js"> </script> +<script> + window.onload = function() { -<body class="swagger-section"> -<div id='header'> - <div class="swagger-ui-wrap"> - <a id="logo" href="http://swagger.io">swagger</a> - <form id='api_selector'> - <div class='input'><input placeholder="http://example.com/api" id="input_baseUrl" name="baseUrl" type="text"/></div> - <div class="input"><input placeholder="username" id="input_username" name="username" type="text" size="10"></div> - <div class="input"><input placeholder="password" id="input_password" name="password" type="password" size="10"></div> - <div class='input'><a id="explore" href="#">Explore</a></div> - </form> - </div> -</div> + var urlPrefix = location.protocol +'//'+ location.hostname+(location.port ? ':'+location.port: ''); + // Build a system + const ui = SwaggerUIBundle({ + url: urlPrefix + "/api/v1/swagger.yaml", + dom_id: '#swagger-ui', + deepLinking: true, + presets: [ + SwaggerUIBundle.presets.apis, + SwaggerUIStandalonePreset + ], + plugins: [ + SwaggerUIBundle.plugins.DownloadUrl + ], + layout: "StandaloneLayout" + }) -<div id="message-bar" class="swagger-ui-wrap" data-sw-translate> </div> -<div id="swagger-ui-container" class="swagger-ui-wrap"></div> + window.ui = ui + } + </script> </body> -</html> \ No newline at end of file +</html>