Skip to content

Commit 8930680

Browse files
authored
Merge pull request #3345 from owenconti/bug/3100-sub-objects-as-required
Fixes #3100 - Required sub objects
2 parents 0c28a50 + 2caa915 commit 8930680

File tree

2 files changed

+6
-4
lines changed

2 files changed

+6
-4
lines changed

src/core/components/model.jsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ export default class Model extends Component {
4848
switch(type) {
4949
case "object":
5050
return <ObjectModel className="object" { ...this.props } schema={ modelSchema }
51-
name={ name || modelName }
51+
name={ name || modelName } required={ required }
5252
isRef={ isRef!== undefined ? isRef : !!$$ref }/>
5353
case "array":
5454
return <ArrayModel className="array" { ...this.props } schema={ modelSchema } required={ required } />

src/core/components/object-model.jsx

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ export default class ObjectModel extends Component {
2323
let properties = schema.get("properties")
2424
let additionalProperties = schema.get("additionalProperties")
2525
let title = schema.get("title") || name
26-
let required = schema.get("required")
26+
let requiredProperties = schema.get("required")
2727

2828
const JumpToPath = getComponent("JumpToPath", true)
2929
const Markdown = getComponent("Markdown")
@@ -63,14 +63,16 @@ export default class ObjectModel extends Component {
6363
{
6464
!(properties && properties.size) ? null : properties.entrySeq().map(
6565
([key, value]) => {
66-
let isRequired = List.isList(required) && required.contains(key)
66+
let isRequired = List.isList(requiredProperties) && requiredProperties.contains(key)
6767
let propertyStyle = { verticalAlign: "top", paddingRight: "0.2em" }
6868
if ( isRequired ) {
6969
propertyStyle.fontWeight = "bold"
7070
}
7171

7272
return (<tr key={key}>
73-
<td style={ propertyStyle }>{ key }:</td>
73+
<td style={ propertyStyle }>
74+
{ key }{ isRequired && <span style={{ color: "red" }}>*</span> }
75+
</td>
7476
<td style={{ verticalAlign: "top" }}>
7577
<Model key={ `object-${name}-${key}_${value}` } { ...props }
7678
required={ isRequired }

0 commit comments

Comments
 (0)