-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
Update from topechelon
- Loading branch information
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
import { ExpressAppConfig } from "./middleware/express.app.config"; | ||
import { Oas3AppOptions } from "./middleware/oas3.options"; | ||
export declare function expressAppConfig(definitionPath: string, appOptions: Oas3AppOptions): ExpressAppConfig; |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
import * as express from 'express'; | ||
import { Oas3AppOptions } from './oas3.options'; | ||
export declare class ExpressAppConfig { | ||
private app; | ||
private routingOptions; | ||
private definitionPath; | ||
private openApiValidatorOptions; | ||
constructor(definitionPath: string, appOptions: Oas3AppOptions); | ||
private setOpenApiValidatorOptions; | ||
configureLogger(loggerOptions: any): any; | ||
private errorHandler; | ||
getApp(): express.Application; | ||
} |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
export declare function debugError(err: any, debug: any): void; | ||
export declare function removeDashElementToCamelCase(str: any): any; |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
export declare class LoggingOptions { | ||
format: string; | ||
errorLimit: string | number; | ||
constructor(format: string, errorLimit: string | number); | ||
} |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
import { OpenApiValidatorOpts } from 'express-openapi-validator/dist/framework/types'; | ||
import { LoggingOptions } from './logging.options'; | ||
import { SwaggerUiOptions } from './swagger.ui.options'; | ||
export declare class Oas3AppOptions { | ||
routing: any; | ||
openApiValidator: OpenApiValidatorOpts; | ||
logging: LoggingOptions; | ||
swaggerUI: SwaggerUiOptions; | ||
constructor(routingOpts: any, openApiValidatorOpts: OpenApiValidatorOpts, logging: LoggingOptions, swaggerUI: SwaggerUiOptions); | ||
} |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,73 @@ | ||
<!-- HTML for static distribution bundle build --> | ||
<!DOCTYPE html> | ||
<html lang="en"> | ||
<head> | ||
<meta charset="UTF-8"> | ||
<title>Swagger UI</title> | ||
<link rel="stylesheet" type="text/css" href="swagger-ui.css" > | ||
<link rel="icon" type="image/png" href="favicon-32x32.png" sizes="32x32" /> | ||
<link rel="icon" type="image/png" href="favicon-16x16.png" sizes="16x16" /> | ||
<style> | ||
html | ||
{ | ||
box-sizing: border-box; | ||
overflow: -moz-scrollbars-vertical; | ||
overflow-y: scroll; | ||
} | ||
|
||
*, | ||
*:before, | ||
*:after | ||
{ | ||
box-sizing: inherit; | ||
} | ||
|
||
body | ||
{ | ||
margin:0; | ||
background: #fafafa; | ||
} | ||
</style> | ||
</head> | ||
|
||
<body> | ||
<div id="swagger-ui"></div> | ||
|
||
<script src="swagger-ui-bundle.js"> </script> | ||
<script src="swagger-ui-standalone-preset.js"> </script> | ||
<script> | ||
window.onload = function() { | ||
function initSwaggerUi (url) { | ||
window.ui = SwaggerUIBundle({ | ||
url: url, | ||
dom_id: '#swagger-ui', | ||
deepLinking: true, | ||
presets: [ | ||
SwaggerUIBundle.presets.apis, | ||
SwaggerUIStandalonePreset | ||
], | ||
plugins: [ | ||
SwaggerUIBundle.plugins.DownloadUrl | ||
], | ||
layout: "StandaloneLayout", | ||
validatorUrl: null | ||
}); | ||
} | ||
var xhr = new XMLHttpRequest(); | ||
xhr.open('HEAD', document.location.href); | ||
xhr.onreadystatechange = function () { | ||
var url = '/api-docs'; | ||
if (xhr.readyState === XMLHttpRequest.DONE) { | ||
url = xhr.getResponseHeader('Swagger-API-Docs-URL'); | ||
} else { | ||
console.log('Unable to get the Swagger UI URL from the server (%s): %s', xhr.status, xhr.responseText); | ||
} | ||
initSwaggerUi(url); | ||
}; | ||
xhr.send(null); | ||
} | ||
</script> | ||
|
||
|
||
</body> | ||
</html> |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,67 @@ | ||
<!doctype html> | ||
<html lang="en-US"> | ||
<body onload="run()"> | ||
</body> | ||
</html> | ||
<script> | ||
'use strict'; | ||
function run () { | ||
var oauth2 = window.opener.swaggerUIRedirectOauth2; | ||
var sentState = oauth2.state; | ||
var redirectUrl = oauth2.redirectUrl; | ||
var isValid, qp, arr; | ||
|
||
if (/code|token|error/.test(window.location.hash)) { | ||
qp = window.location.hash.substring(1); | ||
} else { | ||
qp = location.search.substring(1); | ||
} | ||
|
||
arr = qp.split("&") | ||
arr.forEach(function (v,i,_arr) { _arr[i] = '"' + v.replace('=', '":"') + '"';}) | ||
qp = qp ? JSON.parse('{' + arr.join() + '}', | ||
function (key, value) { | ||
return key === "" ? value : decodeURIComponent(value) | ||
} | ||
) : {} | ||
|
||
isValid = qp.state === sentState | ||
|
||
if (( | ||
oauth2.auth.schema.get("flow") === "accessCode"|| | ||
oauth2.auth.schema.get("flow") === "authorizationCode" | ||
) && !oauth2.auth.code) { | ||
if (!isValid) { | ||
oauth2.errCb({ | ||
authId: oauth2.auth.name, | ||
source: "auth", | ||
level: "warning", | ||
message: "Authorization may be unsafe, passed state was changed in server Passed state wasn't returned from auth server" | ||
}); | ||
} | ||
|
||
if (qp.code) { | ||
delete oauth2.state; | ||
oauth2.auth.code = qp.code; | ||
oauth2.callback({auth: oauth2.auth, redirectUrl: redirectUrl}); | ||
} else { | ||
let oauthErrorMsg | ||
if (qp.error) { | ||
oauthErrorMsg = "["+qp.error+"]: " + | ||
(qp.error_description ? qp.error_description+ ". " : "no accessCode received from the server. ") + | ||
(qp.error_uri ? "More info: "+qp.error_uri : ""); | ||
} | ||
|
||
oauth2.errCb({ | ||
authId: oauth2.auth.name, | ||
source: "auth", | ||
level: "error", | ||
message: oauthErrorMsg || "[Authorization failed]: no accessCode received from the server" | ||
}); | ||
} | ||
} else { | ||
oauth2.callback({auth: oauth2.auth, token: qp, isValid: isValid, redirectUrl: redirectUrl}); | ||
} | ||
window.close(); | ||
} | ||
</script> |
Large diffs are not rendered by default.