Merge branch 'master' of github.com:swagger-api/swagger-ui
This commit is contained in:
@@ -46,7 +46,7 @@ Will start nginx with swagger-ui on port 80.
|
|||||||
Or you can provide your own swagger.json on your host
|
Or you can provide your own swagger.json on your host
|
||||||
|
|
||||||
```
|
```
|
||||||
docker run -p 80:8080 -e "SWAGGER_JSON=/foo/swagger.json" -v /bar:/foo swaggerapi/swagger-ui
|
docker run -p 80:8080 -e SWAGGER_JSON=/foo/swagger.json -v /bar:/foo swaggerapi/swagger-ui
|
||||||
```
|
```
|
||||||
|
|
||||||
##### Prerequisites
|
##### Prerequisites
|
||||||
|
|||||||
@@ -28,10 +28,15 @@ export default class ArrayModel extends Component {
|
|||||||
<span className="model-title__text">{ title }</span>
|
<span className="model-title__text">{ title }</span>
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
|
/*
|
||||||
|
Note: we set `name={null}` in <Model> below because we don't want
|
||||||
|
the name of the current Model passed (and displayed) as the name of the array element Model
|
||||||
|
*/
|
||||||
|
|
||||||
return <span className="model">
|
return <span className="model">
|
||||||
<ModelCollapse title={titleEl} collapsed={ depth > expandDepth } collapsedContent="[...]">
|
<ModelCollapse title={titleEl} collapsed={ depth > expandDepth } collapsedContent="[...]">
|
||||||
[
|
[
|
||||||
<span><Model { ...this.props } schema={ items } required={ false } depth={ depth + 1 } /></span>
|
<span><Model { ...this.props } name={null} schema={ items } required={ false } depth={ depth + 1 } /></span>
|
||||||
]
|
]
|
||||||
{
|
{
|
||||||
properties.size ? <span>
|
properties.size ? <span>
|
||||||
|
|||||||
@@ -30,39 +30,38 @@ export default class Model extends Component {
|
|||||||
|
|
||||||
render () {
|
render () {
|
||||||
let { getComponent, specSelectors, schema, required, name, isRef } = this.props
|
let { getComponent, specSelectors, schema, required, name, isRef } = this.props
|
||||||
let ObjectModel = getComponent("ObjectModel")
|
const ObjectModel = getComponent("ObjectModel")
|
||||||
let ArrayModel = getComponent("ArrayModel")
|
const ArrayModel = getComponent("ArrayModel")
|
||||||
let PrimitiveModel = getComponent("PrimitiveModel")
|
const PrimitiveModel = getComponent("PrimitiveModel")
|
||||||
|
let type = "object"
|
||||||
let $$ref = schema && schema.get("$$ref")
|
let $$ref = schema && schema.get("$$ref")
|
||||||
let modelName = $$ref && this.getModelName( $$ref )
|
|
||||||
let modelSchema, type
|
// If we weren't passed a `name` but have a ref, grab the name from the ref
|
||||||
|
if ( !name && $$ref ) {
|
||||||
|
name = this.getModelName( $$ref )
|
||||||
|
}
|
||||||
|
// If we weren't passed a `schema` but have a ref, grab the schema from the ref
|
||||||
|
if ( !schema && $$ref ) {
|
||||||
|
schema = this.getRefSchema( name )
|
||||||
|
}
|
||||||
|
|
||||||
const deprecated = specSelectors.isOAS3() && schema.get("deprecated")
|
const deprecated = specSelectors.isOAS3() && schema.get("deprecated")
|
||||||
|
isRef = isRef !== undefined ? isRef : !!$$ref
|
||||||
if ( schema && (schema.get("type") || schema.get("properties")) ) {
|
type = schema && schema.get("type") || type
|
||||||
modelSchema = schema
|
|
||||||
} else if ( $$ref ) {
|
|
||||||
modelSchema = this.getRefSchema( modelName )
|
|
||||||
}
|
|
||||||
|
|
||||||
type = modelSchema && modelSchema.get("type")
|
|
||||||
if ( !type && modelSchema && modelSchema.get("properties") ) {
|
|
||||||
type = "object"
|
|
||||||
}
|
|
||||||
|
|
||||||
switch(type) {
|
switch(type) {
|
||||||
case "object":
|
case "object":
|
||||||
return <ObjectModel
|
return <ObjectModel
|
||||||
className="object" { ...this.props }
|
className="object" { ...this.props }
|
||||||
schema={ modelSchema }
|
schema={ schema }
|
||||||
name={ modelName || name }
|
name={ name }
|
||||||
deprecated={deprecated}
|
deprecated={deprecated}
|
||||||
isRef={ isRef!== undefined ? isRef : !!$$ref } />
|
isRef={ isRef } />
|
||||||
case "array":
|
case "array":
|
||||||
return <ArrayModel
|
return <ArrayModel
|
||||||
className="array" { ...this.props }
|
className="array" { ...this.props }
|
||||||
schema={ modelSchema }
|
schema={ schema }
|
||||||
name={ modelName || name }
|
name={ name }
|
||||||
deprecated={deprecated}
|
deprecated={deprecated}
|
||||||
required={ required } />
|
required={ required } />
|
||||||
case "string":
|
case "string":
|
||||||
@@ -73,9 +72,10 @@ export default class Model extends Component {
|
|||||||
return <PrimitiveModel
|
return <PrimitiveModel
|
||||||
{ ...this.props }
|
{ ...this.props }
|
||||||
getComponent={ getComponent }
|
getComponent={ getComponent }
|
||||||
schema={ modelSchema }
|
schema={ schema }
|
||||||
name={ modelName || name }
|
name={ name }
|
||||||
deprecated={deprecated}
|
deprecated={deprecated}
|
||||||
required={ required }/> }
|
required={ required }/>
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -34,7 +34,6 @@ export default class Models extends Component {
|
|||||||
return <div className="model-container" key={ `models-section-${name}` }>
|
return <div className="model-container" key={ `models-section-${name}` }>
|
||||||
<ModelWrapper name={ name }
|
<ModelWrapper name={ name }
|
||||||
schema={ model }
|
schema={ model }
|
||||||
isRef={ true }
|
|
||||||
getComponent={ getComponent }
|
getComponent={ getComponent }
|
||||||
specSelectors={ specSelectors }/>
|
specSelectors={ specSelectors }/>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Reference in New Issue
Block a user