refactor(oas31): use OpenAPI 3.1 specific component wrapper util (#8503)
This commit is contained in:
@@ -1,6 +1,7 @@
|
|||||||
/**
|
/**
|
||||||
* @prettier
|
* @prettier
|
||||||
*/
|
*/
|
||||||
|
import React from "react"
|
||||||
|
|
||||||
export const isOAS31 = (jsSpec) => {
|
export const isOAS31 = (jsSpec) => {
|
||||||
const oasVersion = jsSpec.get("openapi")
|
const oasVersion = jsSpec.get("openapi")
|
||||||
@@ -70,3 +71,20 @@ export const createSystemSelector =
|
|||||||
? selectedValue(system)
|
? selectedValue(system)
|
||||||
: selectedValue
|
: selectedValue
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* eslint-disable react/jsx-filename-extension */
|
||||||
|
export const createOnlyOAS31ComponentWrapper =
|
||||||
|
(Component) => (Original, system) => (props) => {
|
||||||
|
if (system.specSelectors.isOAS31()) {
|
||||||
|
return (
|
||||||
|
<Component
|
||||||
|
{...props}
|
||||||
|
originalComponent={Original}
|
||||||
|
getSystem={system.getSystem}
|
||||||
|
/>
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
return <Original {...props} />
|
||||||
|
}
|
||||||
|
/* eslint-enable react/jsx-filename-extension */
|
||||||
|
|||||||
@@ -3,14 +3,13 @@
|
|||||||
*/
|
*/
|
||||||
import React from "react"
|
import React from "react"
|
||||||
|
|
||||||
const ContactWrapper = (Original, system) => (props) => {
|
import { createOnlyOAS31ComponentWrapper } from "../fn"
|
||||||
if (system.specSelectors.isOAS31()) {
|
|
||||||
const OAS31Contact = system.getComponent("OAS31Contact", true)
|
|
||||||
|
|
||||||
return <OAS31Contact />
|
const ContactWrapper = createOnlyOAS31ComponentWrapper(({ getSystem }) => {
|
||||||
}
|
const system = getSystem()
|
||||||
|
const OAS31Contact = system.getComponent("OAS31Contact", true)
|
||||||
|
|
||||||
return <Original {...props} />
|
return <OAS31Contact />
|
||||||
}
|
})
|
||||||
|
|
||||||
export default ContactWrapper
|
export default ContactWrapper
|
||||||
|
|||||||
@@ -3,14 +3,13 @@
|
|||||||
*/
|
*/
|
||||||
import React from "react"
|
import React from "react"
|
||||||
|
|
||||||
const InfoWrapper = (Original, system) => (props) => {
|
import { createOnlyOAS31ComponentWrapper } from "../fn"
|
||||||
if (system.specSelectors.isOAS31()) {
|
|
||||||
const OAS31Info = system.getComponent("OAS31Info", true)
|
|
||||||
|
|
||||||
return <OAS31Info />
|
const InfoWrapper = createOnlyOAS31ComponentWrapper(({ getSystem }) => {
|
||||||
}
|
const system = getSystem()
|
||||||
|
const OAS31Info = system.getComponent("OAS31Info", true)
|
||||||
|
|
||||||
return <Original {...props} />
|
return <OAS31Info />
|
||||||
}
|
})
|
||||||
|
|
||||||
export default InfoWrapper
|
export default InfoWrapper
|
||||||
|
|||||||
@@ -3,14 +3,13 @@
|
|||||||
*/
|
*/
|
||||||
import React from "react"
|
import React from "react"
|
||||||
|
|
||||||
const LicenseWrapper = (Original, system) => (props) => {
|
import { createOnlyOAS31ComponentWrapper } from "../fn"
|
||||||
if (system.specSelectors.isOAS31()) {
|
|
||||||
const OAS31License = system.getComponent("OAS31License", true)
|
|
||||||
|
|
||||||
return <OAS31License />
|
const LicenseWrapper = createOnlyOAS31ComponentWrapper(({ getSystem }) => {
|
||||||
}
|
const system = getSystem()
|
||||||
|
const OAS31License = system.getComponent("OAS31License", true)
|
||||||
|
|
||||||
return <Original {...props} />
|
return <OAS31License />
|
||||||
}
|
})
|
||||||
|
|
||||||
export default LicenseWrapper
|
export default LicenseWrapper
|
||||||
|
|||||||
@@ -3,19 +3,17 @@
|
|||||||
*/
|
*/
|
||||||
import React from "react"
|
import React from "react"
|
||||||
|
|
||||||
const VersionStampWrapper = (Original, system) => (props) => {
|
import { createOnlyOAS31ComponentWrapper } from "../fn"
|
||||||
if (system.specSelectors.isOAS31()) {
|
|
||||||
return (
|
|
||||||
<span>
|
|
||||||
<Original {...props} />
|
|
||||||
<small className="version-stamp">
|
|
||||||
<pre className="version">OAS 3.1</pre>
|
|
||||||
</small>
|
|
||||||
</span>
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
return <Original {...props} />
|
const VersionStampWrapper = createOnlyOAS31ComponentWrapper(
|
||||||
}
|
({ originalComponent: Original, ...restProps }) => (
|
||||||
|
<span>
|
||||||
|
<Original {...restProps} />
|
||||||
|
<small className="version-stamp">
|
||||||
|
<pre className="version">OAS 3.1</pre>
|
||||||
|
</small>
|
||||||
|
</span>
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
export default VersionStampWrapper
|
export default VersionStampWrapper
|
||||||
|
|||||||
Reference in New Issue
Block a user