import React, { Component } from "react" import Im from "immutable" import PropTypes from "prop-types" export default class Models extends Component { static propTypes = { getComponent: PropTypes.func, specSelectors: PropTypes.object, layoutSelectors: PropTypes.object, layoutActions: PropTypes.object, getConfigs: PropTypes.func.isRequired } render(){ let { specSelectors, getComponent, layoutSelectors, layoutActions, getConfigs } = this.props let definitions = specSelectors.definitions() let { docExpansion, defaultModelsExpandDepth } = getConfigs() if (!definitions.size || defaultModelsExpandDepth < 0) return null let showModels = layoutSelectors.isShown("models", defaultModelsExpandDepth > 0 && docExpansion !== "none") const specPathBase = specSelectors.isOAS3() ? ["components", "schemas"] : ["definitions"] const ModelWrapper = getComponent("ModelWrapper") const Collapse = getComponent("Collapse") return

layoutActions.show("models", !showModels)}> Models

{ definitions.entrySeq().map( ( [ name, model ])=>{ return
}).toArray() }
} }