diff --git a/src/core/components/array-model.jsx b/src/core/components/array-model.jsx index f45ac674..b507b42b 100644 --- a/src/core/components/array-model.jsx +++ b/src/core/components/array-model.jsx @@ -17,16 +17,19 @@ export default class ArrayModel extends Component { render(){ let { getComponent, required, schema, depth, expandDepth } = this.props let items = schema.get("items") + let title = schema.get("title") || name let properties = schema.filter( ( v, key) => ["type", "items", "$$ref"].indexOf(key) === -1 ) const ModelCollapse = getComponent("ModelCollapse") const Model = getComponent("Model") - return + const titleEl = title && - { schema.get("title") } + { title } - expandDepth } collapsedContent="[...]"> + + return + expandDepth } collapsedContent="[...]"> [ ] diff --git a/src/core/components/model-collapse.jsx b/src/core/components/model-collapse.jsx index 1b46e56a..b71096f2 100644 --- a/src/core/components/model-collapse.jsx +++ b/src/core/components/model-collapse.jsx @@ -5,12 +5,14 @@ export default class ModelCollapse extends Component { static propTypes = { collapsedContent: PropTypes.any, collapsed: PropTypes.bool, - children: PropTypes.any + children: PropTypes.any, + title: PropTypes.element } static defaultProps = { collapsedContent: "{...}", collapsed: true, + title: null } constructor(props, context) { @@ -31,11 +33,15 @@ export default class ModelCollapse extends Component { } render () { - return ( - - + const {title} = this.props + return ( + + { title && {title} } + + + + { this.state.collapsed ? this.state.collapsedContent : this.props.children } - { this.state.collapsed ? this.state.collapsedContent : this.props.children } - ) + ) } } \ No newline at end of file diff --git a/src/core/components/object-model.jsx b/src/core/components/object-model.jsx index 2bea7781..5e0a83a9 100644 --- a/src/core/components/object-model.jsx +++ b/src/core/components/object-model.jsx @@ -38,15 +38,13 @@ export default class ObjectModel extends Component { } ) + const titleEl = title && + { isRef && schema.get("$$ref") && { schema.get("$$ref") } } + { title } + return - { - title && - { isRef && schema.get("$$ref") && { schema.get("$$ref") } } - { title } - - } - expandDepth } collapsedContent={ collapsedContent }> + expandDepth } collapsedContent={ collapsedContent }> { braceOpen } { !isRef ? null :