parameter extensions display
This commit is contained in:
12
src/core/components/parameter-extension.jsx
Normal file
12
src/core/components/parameter-extension.jsx
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
import React from "react"
|
||||||
|
import PropTypes from "prop-types"
|
||||||
|
|
||||||
|
export const ParameterExt = ({ xKey, xVal }) => {
|
||||||
|
return <div className="parameter__extension">{ xKey }: { String(xVal) }</div>
|
||||||
|
}
|
||||||
|
ParameterExt.propTypes = {
|
||||||
|
xKey: PropTypes.string,
|
||||||
|
xVal: PropTypes.any
|
||||||
|
}
|
||||||
|
|
||||||
|
export default ParameterExt
|
||||||
@@ -2,6 +2,7 @@ import React, { Component } from "react"
|
|||||||
import { Map } from "immutable"
|
import { Map } from "immutable"
|
||||||
import PropTypes from "prop-types"
|
import PropTypes from "prop-types"
|
||||||
import win from "core/window"
|
import win from "core/window"
|
||||||
|
import { getExtensions } from "core/utils"
|
||||||
|
|
||||||
export default class ParameterRow extends Component {
|
export default class ParameterRow extends Component {
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
@@ -91,6 +92,7 @@ export default class ParameterRow extends Component {
|
|||||||
|
|
||||||
const ModelExample = getComponent("modelExample")
|
const ModelExample = getComponent("modelExample")
|
||||||
const Markdown = getComponent("Markdown")
|
const Markdown = getComponent("Markdown")
|
||||||
|
const ParameterExt = getComponent("ParameterExt")
|
||||||
|
|
||||||
let schema = param.get("schema")
|
let schema = param.get("schema")
|
||||||
let type = isOAS3 && isOAS3() ? param.getIn(["schema", "type"]) : param.get("type")
|
let type = isOAS3 && isOAS3() ? param.getIn(["schema", "type"]) : param.get("type")
|
||||||
@@ -100,6 +102,7 @@ export default class ParameterRow extends Component {
|
|||||||
let itemType = param.getIn(isOAS3 && isOAS3() ? ["schema", "items", "type"] : ["items", "type"])
|
let itemType = param.getIn(isOAS3 && isOAS3() ? ["schema", "items", "type"] : ["items", "type"])
|
||||||
let parameter = specSelectors.getParameter(pathMethod, param.get("name"), param.get("in"))
|
let parameter = specSelectors.getParameter(pathMethod, param.get("name"), param.get("in"))
|
||||||
let value = parameter ? parameter.get("value") : ""
|
let value = parameter ? parameter.get("value") : ""
|
||||||
|
let extensions = getExtensions(param)
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<tr>
|
<tr>
|
||||||
@@ -113,6 +116,7 @@ export default class ParameterRow extends Component {
|
|||||||
{ isOAS3 && isOAS3() && param.get("deprecated") ? "deprecated": null }
|
{ isOAS3 && isOAS3() && param.get("deprecated") ? "deprecated": null }
|
||||||
</div>
|
</div>
|
||||||
<div className="parameter__in">({ param.get("in") })</div>
|
<div className="parameter__in">({ param.get("in") })</div>
|
||||||
|
{ !extensions.length ? null : extensions.map((v, key) => <ParameterExt key={`${key}-${v}`} xKey={key} xVal={v} /> )}
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
<td className="col parameters-col_description">
|
<td className="col parameters-col_description">
|
||||||
|
|||||||
@@ -678,3 +678,5 @@ export function getAcceptControllingResponse(responses) {
|
|||||||
|
|
||||||
export const createDeepLinkPath = (str) => typeof str == "string" || str instanceof String ? str.trim().replace(/\s/g, "_") : ""
|
export const createDeepLinkPath = (str) => typeof str == "string" || str instanceof String ? str.trim().replace(/\s/g, "_") : ""
|
||||||
export const escapeDeepLinkPath = (str) => cssEscape( createDeepLinkPath(str) )
|
export const escapeDeepLinkPath = (str) => cssEscape( createDeepLinkPath(str) )
|
||||||
|
|
||||||
|
export const getExtensions = (defObj) => defObj.filter((v, k) => /^x-/.test(k))
|
||||||
|
|||||||
@@ -131,7 +131,8 @@ table
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.parameter__in
|
.parameter__in,
|
||||||
|
.parameter__extension
|
||||||
{
|
{
|
||||||
font-size: 12px;
|
font-size: 12px;
|
||||||
font-style: italic;
|
font-style: italic;
|
||||||
|
|||||||
Reference in New Issue
Block a user