Files
swagger-ui/src/core/plugins/json-schema-5-samples/fn/get-sample-schema.js
Vladimír Gorej 113996f627 feat(json-schema): expose API that generates examples from JSON Schema (#9190)
This allows to use the samples API in a static way
without fully instantiating SwaggerUI.

Refs #9188
2023-09-05 14:13:53 +02:00

31 lines
763 B
JavaScript

/**
* @prettier
*/
const makeGetSampleSchema =
(getSystem) =>
(schema, contentType = "", config = {}, exampleOverride = undefined) => {
const { fn } = getSystem()
if (typeof schema?.toJS === "function") {
schema = schema.toJS()
}
if (typeof exampleOverride?.toJS === "function") {
exampleOverride = exampleOverride.toJS()
}
if (/xml/.test(contentType)) {
return fn.getXmlSampleSchema(schema, config, exampleOverride)
}
if (/(yaml|yml)/.test(contentType)) {
return fn.getYamlSampleSchema(
schema,
config,
contentType,
exampleOverride
)
}
return fn.getJsonSampleSchema(schema, config, contentType, exampleOverride)
}
export default makeGetSampleSchema