* add `onFound` callback to schemas * add warning to method docs (for #4957) * implement Docker OAuth2 init block support * update docs * add OAUTH_SCOPE_SEPARATOR * drop OAuth env from Dockerfile and run script * don't indent the first oauth block line * drop unused `dedent` import * touch up warning message * add more test cases * return an empty block if no OAuth content is generated * fix broken doc line
29 lines
1.0 KiB
JavaScript
Executable File
29 lines
1.0 KiB
JavaScript
Executable File
const fs = require("fs")
|
|
const path = require("path")
|
|
|
|
const translator = require("./translator")
|
|
const oauthBlockBuilder = require("./oauth")
|
|
const indent = require("./helpers").indent
|
|
|
|
const START_MARKER = "// Begin Swagger UI call region"
|
|
const END_MARKER = "// End Swagger UI call region"
|
|
|
|
const targetPath = path.normalize(process.cwd() + "/" + process.argv[2])
|
|
|
|
const originalHtmlContent = fs.readFileSync(targetPath, "utf8")
|
|
|
|
const startMarkerIndex = originalHtmlContent.indexOf(START_MARKER)
|
|
const endMarkerIndex = originalHtmlContent.indexOf(END_MARKER)
|
|
|
|
const beforeStartMarkerContent = originalHtmlContent.slice(0, startMarkerIndex)
|
|
const afterEndMarkerContent = originalHtmlContent.slice(endMarkerIndex + END_MARKER.length)
|
|
|
|
fs.writeFileSync(targetPath, `${beforeStartMarkerContent}
|
|
${START_MARKER}
|
|
const ui = SwaggerUIBundle({
|
|
${indent(translator(process.env, { injectBaseConfig: true }), 8, 2)}
|
|
})
|
|
|
|
${indent(oauthBlockBuilder(process.env), 6, 2)}
|
|
${END_MARKER}
|
|
${afterEndMarkerContent}`) |