Skip to content

Commit 84b5b47

Browse files
authored
Merge pull request #1965 from NishkalankBezawada/feature/Fix-Issue1953
🐛 - Fixes-Issue 1953 - DynamicForm required User Fields not checked before submit (Repo Rescuer Challenge)
2 parents 8f2114d + a279a38 commit 84b5b47

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

src/controls/dynamicForm/dynamicField/DynamicField.tsx

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -644,18 +644,20 @@ export class DynamicField extends React.Component<IDynamicFieldProps, IDynamicFi
644644
const {
645645
changedValue
646646
} = this.state;
647+
647648
const { value, newValue, required,listItemId } = this.props;
648649

649650
if (listItemId !== undefined && listItemId !== null) {
650651
if (newValue === undefined) {
651652
return required && (changedValue === undefined || changedValue === '' || changedValue === null || this.isEmptyArray(changedValue))
652-
&& (value === undefined || value === '' || value === null || this.isEmptyArray(value)) ? strings.DynamicFormRequiredErrorMessage : null;
653+
&& (value === undefined || value === '' || value === null || this.isEmptyArray(value)) || this.checkUserArrayIsEmpty(value)) ? strings.DynamicFormRequiredErrorMessage : null;
653654
} else {
654-
return required && (changedValue === undefined || changedValue === '' || changedValue === null || this.isEmptyArray(changedValue)) ? strings.DynamicFormRequiredErrorMessage : null;
655+
return required && (changedValue === undefined || changedValue === '' || changedValue === null || this.isEmptyArray(changedValue)) || this.checkUserArrayIsEmpty(value)) ? strings.DynamicFormRequiredErrorMessage : null;
655656
}
656657
}
657658

658659
return null;
660+
659661
}
660662

661663
private getNumberErrorText = (): string => {
@@ -724,6 +726,10 @@ export class DynamicField extends React.Component<IDynamicFieldProps, IDynamicFi
724726
return Array.isArray(value) && value.length === 0;
725727
}
726728

729+
private checkUserArrayIsEmpty = (value): boolean => {
730+
return Array.isArray(value) && value.every(item => item === "");
731+
}
732+
727733
private MultiChoice_selection = (event: React.FormEvent<HTMLDivElement>, item: IDropdownOption): void => {
728734
const {
729735
changedValue

0 commit comments

Comments
 (0)