feat: expose build info via new versions plugin (#9820)

This commit is contained in:
Vladimír Gorej
2024-04-15 11:55:20 +02:00
committed by GitHub
parent 68eb346a23
commit 463cd35d31
4 changed files with 33 additions and 11 deletions

View File

@@ -26,9 +26,9 @@ import ViewPlugin from "./plugins/view"
import ViewLegacyPlugin from "core/plugins/view-legacy"
import DownloadUrlPlugin from "./plugins/download-url"
import SyntaxHighlightingPlugin from "core/plugins/syntax-highlighting"
import VersionsPlugin from "core/plugins/versions"
import SafeRenderPlugin from "./plugins/safe-render"
import win from "./window"
import {
defaultOptions,
optionsFromQuery,
@@ -39,18 +39,8 @@ import {
storeOptionsFactorization
} from "./config"
// eslint-disable-next-line no-undef
const { GIT_DIRTY, GIT_COMMIT, PACKAGE_VERSION, BUILD_TIME } = buildInfo
export default function SwaggerUI(userOptions) {
win.versions = win.versions || {}
win.versions.swaggerUi = {
version: PACKAGE_VERSION,
gitRevision: GIT_COMMIT,
gitDirty: GIT_DIRTY,
buildTimestamp: BUILD_TIME,
}
const queryOptions = optionsFromQuery()(userOptions)
let mergedOptions = mergeOptions({}, defaultOptions, userOptions, queryOptions)
const storeOptions = storeOptionsFactorization(mergedOptions)
@@ -130,5 +120,6 @@ SwaggerUI.plugins = {
ViewLegacy: ViewLegacyPlugin,
DownloadUrl: DownloadUrlPlugin,
SyntaxHighlighting: SyntaxHighlightingPlugin,
Versions: VersionsPlugin,
SafeRender: SafeRenderPlugin,
}

View File

@@ -0,0 +1,19 @@
/**
* @prettier
*/
import win from "core/window"
const afterLoad = () => {
// eslint-disable-next-line no-undef
const { GIT_DIRTY, GIT_COMMIT, PACKAGE_VERSION, BUILD_TIME } = buildInfo
win.versions = win.versions || {}
win.versions.swaggerUI = {
version: PACKAGE_VERSION,
gitRevision: GIT_COMMIT,
gitDirty: GIT_DIRTY,
buildTimestamp: BUILD_TIME,
}
}
export default afterLoad

View File

@@ -0,0 +1,10 @@
/**
* @prettier
*/
import afterLoad from "./after-load.js"
const VersionsPlugin = () => ({
afterLoad,
})
export default VersionsPlugin

View File

@@ -20,6 +20,7 @@ import ViewPlugin from "core/plugins/view"
import ViewLegacyPlugin from "core/plugins/view-legacy"
import DownloadUrlPlugin from "core/plugins/download-url"
import SyntaxHighlightingPlugin from "core/plugins/syntax-highlighting"
import VersionsPlugin from "core/plugins/versions"
import SafeRenderPlugin from "core/plugins/safe-render"
// ad-hoc plugins
import CoreComponentsPlugin from "core/presets/base/plugins/core-components"
@@ -47,6 +48,7 @@ const BasePreset = () => [
OnCompletePlugin,
RequestSnippetsPlugin,
SyntaxHighlightingPlugin,
VersionsPlugin,
SafeRenderPlugin(),
]