Upgrade to strong-swagger-ui@21.0 (swagger-ui@2.1)

This commit is contained in:
Miroslav Bajtoš 2015-08-11 18:52:56 +02:00
parent 8c82f17930
commit 30017c8242
4 changed files with 47 additions and 23 deletions

View File

@ -7,7 +7,7 @@ var path = require('path');
var urlJoin = require('./lib/url-join'); var urlJoin = require('./lib/url-join');
var _defaults = require('lodash').defaults; var _defaults = require('lodash').defaults;
var swagger = require('./lib/swagger'); var swagger = require('./lib/swagger');
var SWAGGER_UI_ROOT = require('strong-swagger-ui').dist; var SWAGGER_UI_ROOT = require('strong-swagger-ui/index').dist;
var STATIC_ROOT = path.join(__dirname, 'public'); var STATIC_ROOT = path.join(__dirname, 'public');
module.exports = explorer; module.exports = explorer;

View File

@ -34,6 +34,6 @@
"cors": "^2.7.1", "cors": "^2.7.1",
"debug": "^2.2.0", "debug": "^2.2.0",
"lodash": "^3.10.0", "lodash": "^3.10.0",
"strong-swagger-ui": "^20.0.2" "strong-swagger-ui": "^21.0.0-dev.1"
} }
} }

View File

@ -1,22 +1,26 @@
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>StrongLoop API Explorer</title> <title>StrongLoop API Explorer</title>
<link href='css/reset.css' media='screen,print' rel='stylesheet' type='text/css'/> <link href='css/typography.css' media='screen' rel='stylesheet' type='text/css'/>
<link href='css/screen.css' media='screen,print' rel='stylesheet' type='text/css'/> <link href='css/reset.css' media='screen' rel='stylesheet' type='text/css'/>
<link href='css/loopbackStyles.css' rel='stylesheet' type='text/css'/> <link href='css/screen.css' media='screen' rel='stylesheet' type='text/css'/>
<script type="text/javascript" src="lib/shred.bundle.js"></script> <link href='css/loopbackStyles.css' media='screen' rel='stylesheet' type='text/css'/>
<link href='css/reset.css' media='print' rel='stylesheet' type='text/css'/>
<link href='css/print.css' media='print' rel='stylesheet' type='text/css'/>
<link href='css/loopbackStyles.css' media='print' rel='stylesheet' type='text/css'/>
<script src='lib/jquery-1.8.0.min.js' type='text/javascript'></script> <script src='lib/jquery-1.8.0.min.js' type='text/javascript'></script>
<script src='lib/jquery.slideto.min.js' type='text/javascript'></script> <script src='lib/jquery.slideto.min.js' type='text/javascript'></script>
<script src='lib/jquery.wiggle.min.js' type='text/javascript'></script> <script src='lib/jquery.wiggle.min.js' type='text/javascript'></script>
<script src='lib/jquery.ba-bbq.min.js' type='text/javascript'></script> <script src='lib/jquery.ba-bbq.min.js' type='text/javascript'></script>
<script src='lib/handlebars-1.0.0.js' type='text/javascript'></script> <script src='lib/handlebars-2.0.0.js' type='text/javascript'></script>
<script src='lib/underscore-min.js' type='text/javascript'></script> <script src='lib/underscore-min.js' type='text/javascript'></script>
<script src='lib/backbone-min.js' type='text/javascript'></script> <script src='lib/backbone-min.js' type='text/javascript'></script>
<script src='lib/swagger.js' type='text/javascript'></script>
<script src='swagger-ui.js' type='text/javascript'></script> <script src='swagger-ui.js' type='text/javascript'></script>
<script src='lib/highlight.7.3.pack.js' type='text/javascript'></script> <script src='lib/highlight.7.3.pack.js' type='text/javascript'></script>
<script src='lib/marked.js' type='text/javascript'></script>
<!-- enabling this will enable oauth2 implicit scope support --> <!-- enabling this will enable oauth2 implicit scope support -->
<script src='lib/swagger-oauth.js' type='text/javascript'></script> <script src='lib/swagger-oauth.js' type='text/javascript'></script>

View File

@ -3,6 +3,11 @@
// Refactoring of inline script from index.html. // Refactoring of inline script from index.html.
/*global SwaggerUi, log, ApiKeyAuthorization, hljs, window, $ */ /*global SwaggerUi, log, ApiKeyAuthorization, hljs, window, $ */
$(function() { $(function() {
// Pre load translate...
if(window.SwaggerTranslator) {
window.SwaggerTranslator.translate();
}
var lsKey = 'swagger_accessToken'; var lsKey = 'swagger_accessToken';
$.getJSON('config.json', function(config) { $.getJSON('config.json', function(config) {
log(config); log(config);
@ -16,12 +21,26 @@ $(function() {
apiKey: '', apiKey: '',
dom_id: 'swagger-ui-container', dom_id: 'swagger-ui-container',
supportHeaderParams: true, supportHeaderParams: true,
supportedSubmitMethods: ['get', 'post', 'put', 'delete'],
onComplete: function(swaggerApi, swaggerUi) { onComplete: function(swaggerApi, swaggerUi) {
log('Loaded SwaggerUI'); log('Loaded SwaggerUI');
log(swaggerApi); log(swaggerApi);
log(swaggerUi); log(swaggerUi);
$('pre code').each(function(i, e) {hljs.highlightBlock(e); });
if(window.SwaggerTranslator) {
window.SwaggerTranslator.translate();
}
$('pre code').each(function(i, e) {
hljs.highlightBlock(e);
});
// Recover accessToken from localStorage if present.
if (window.localStorage) {
var key = window.localStorage.getItem(lsKey);
if (key) {
$('#input_accessToken').val(key).submit();
}
}
}, },
onFailure: function(data) { onFailure: function(data) {
log('Unable to Load SwaggerUI'); log('Unable to Load SwaggerUI');
@ -36,14 +55,6 @@ $(function() {
$('#api_selector').submit(setAccessToken); $('#api_selector').submit(setAccessToken);
$('#input_accessToken').keyup(onInputChange); $('#input_accessToken').keyup(onInputChange);
// Recover accessToken from localStorage if present.
if (window.localStorage) {
var key = window.localStorage.getItem(lsKey);
if (key) {
$('#input_accessToken').val(key).submit();
}
}
window.swaggerUi.load(); window.swaggerUi.load();
} }
@ -54,23 +65,26 @@ $(function() {
log('key: ' + key); log('key: ' + key);
if(key && key.trim() !== '') { if(key && key.trim() !== '') {
log('added accessToken ' + key); log('added accessToken ' + key);
window.authorizations.add('key', new ApiKeyAuthorization('access_token', key, 'query')); var apiKeyAuth = new SwaggerClient.ApiKeyAuthorization('access_token', key, 'query');
window.swaggerUi.api.clientAuthorizations.add('key', apiKeyAuth);
accessToken = key; accessToken = key;
$('.accessTokenDisplay').text('Token Set.').addClass('set'); $('.accessTokenDisplay').text('Token Set.').addClass('set');
$('.accessTokenDisplay').attr('data-tooltip', 'Current Token: ' + key); $('.accessTokenDisplay').attr('data-tooltip', 'Current Token: ' + key);
// Save this token to localStorage if we can to make it persist on refresh. // Save this token to localStorage if we can to make it persist on refresh.
if (window.localStorage) { if (window.localStorage) {
window.localStorage.setItem(lsKey, key); window.localStorage.setItem(lsKey, key);
} }
} }
// If submitted with an empty token, remove the current token. Can be // If submitted with an empty token, remove the current token. Can be
// useful to intentionally remove authorization. // useful to intentionally remove authorization.
else { else {
log('removed accessToken.'); log('removed accessToken.');
$('.accessTokenDisplay').text('Token Not Set.').removeClass('set'); $('.accessTokenDisplay').text('Token Not Set.').removeClass('set');
$('.accessTokenDisplay').removeAttr('data-tooltip'); $('.accessTokenDisplay').removeAttr('data-tooltip');
window.authorizations.remove('key'); if (window.swaggerUi) {
window.swaggerUi.api.clientAuthorizations.remove('key');
}
if (window.localStorage) { if (window.localStorage) {
window.localStorage.removeItem(lsKey); window.localStorage.removeItem(lsKey);
} }
@ -87,6 +101,12 @@ $(function() {
$('.accessTokenDisplay').text('Token Set.'); $('.accessTokenDisplay').text('Token Set.');
} }
} }
function log() {
if ('console' in window) {
console.log.apply(console, arguments);
}
}
}); });