Skip to content

Commit 122e300

Browse files
lwesterhofclaudisa-uu
authored andcommitted
YDA-6724: update completeness progress bar after form load
1 parent 666d0a4 commit 122e300

File tree

4 files changed

+31
-6
lines changed

4 files changed

+31
-6
lines changed

research/metadata-form/src/index.js

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -453,6 +453,7 @@ const onSubmit = ({ formData }) => submitData(formData)
453453
class YodaForm extends React.Component {
454454
constructor (props) {
455455
super(props)
456+
this.formRef = React.createRef()
456457

457458
const formContext = {
458459
saving: false,
@@ -473,11 +474,11 @@ class YodaForm extends React.Component {
473474

474475
// Update TreeKeyword field if it exists and was the one changed
475476
if (id === "yoda_TreeKeyword" &&
476-
form.formData.TreeKeyword &&
477+
form.formData.TreeKeyword &&
477478
form.formData.TreeKeyword.value &&
478479
form.formData.TreeKeyword.value.length &&
479480
Object.keys(form.schema.properties.TreeKeyword.items.properties).includes("subject")) {
480-
481+
481482
form.formData.TreeKeyword = this.updateTreeKeywords(form, form.formData.TreeKeyword.value)
482483
}
483484

@@ -525,9 +526,21 @@ class YodaForm extends React.Component {
525526
return errors;
526527
}
527528

529+
componentDidMount() {
530+
const formInstance = this.formRef.current;
531+
const data = formInstance?.state?.formData ?? this.state.formData;
532+
this.afterFormLoad(data);
533+
}
534+
535+
afterFormLoad(data) {
536+
// Update form completeness bar
537+
updateCompleteness();
538+
}
539+
528540
render () {
529541
return (
530-
<Form className="metadata-form"
542+
<Form ref={this.formRef}
543+
className="metadata-form"
531544
schema={schema}
532545
idPrefix={"yoda"}
533546
uiSchema={uiSchema}

research/static/research/js/metadata-form.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

vault/metadata-form/src/index.js

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -455,6 +455,7 @@ const onSubmit = ({ formData }) => submitData(formData)
455455
class YodaForm extends React.Component {
456456
constructor (props) {
457457
super(props)
458+
this.formRef = React.createRef()
458459

459460
const formContext = {
460461
saving: false,
@@ -527,9 +528,20 @@ class YodaForm extends React.Component {
527528
return errors;
528529
}
529530

531+
componentDidMount() {
532+
const formInstance = this.formRef.current;
533+
const data = formInstance?.state?.formData ?? this.state.formData;
534+
this.afterFormLoad(data);
535+
}
536+
537+
afterFormLoad(data) {
538+
// Update form completeness bar
539+
updateCompleteness();
540+
}
541+
530542
render () {
531543
return (
532-
<Form className="metadata-form"
544+
<Form ref={this.formRef}
533545
schema={schema}
534546
idPrefix={"yoda"}
535547
uiSchema={uiSchema}

vault/static/vault/js/metadata-form.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)