diff --git a/src/components/JobGroups/GroupMemberTable.jsx b/src/components/JobGroups/GroupMemberTable.jsx index b75c51a..a9b43ee 100644 --- a/src/components/JobGroups/GroupMemberTable.jsx +++ b/src/components/JobGroups/GroupMemberTable.jsx @@ -30,38 +30,34 @@ export default function GroupMemberTable({selectedList}) { return (
-
- +
+
<> - - - - - - - - - {selectedList && selectedList?.length > 0 ? ( - // currentSelectedList?.length ? ( currentSelectedList.map((value, index) => ( - - + + {/* */} + + )) - // ) : ( - // - // - // - // ) ) : ( diff --git a/src/components/JobGroups/MemberList.jsx b/src/components/JobGroups/MemberList.jsx index c0faf2b..1ba97da 100644 --- a/src/components/JobGroups/MemberList.jsx +++ b/src/components/JobGroups/MemberList.jsx @@ -20,11 +20,42 @@ export default function MemberList({groupList, selectedGroup, setUpdateList}) { const handleFieldsChange = ({target:{name, value}}) => { setFields(prev => ({...prev, [name]:value})) - let error = requestState?.errors?.indexOf(name) //// checks if the input field was in error array and removes it when the input changes - if(error >= 0){ - let oldErrorArr = requestState.errors - let newErrorArr = oldErrorArr.splice(error, 1) - setRequestState(prev => ({...prev, errors:oldErrorArr})) + // let error = requestState?.errors?.indexOf(name) //// checks if the input field was in error array and removes it when the input changes + // if(error >= 0){ + // let oldErrorArr = requestState.errors + // let newErrorArr = oldErrorArr.splice(error, 1) + // setRequestState(prev => ({...prev, errors:oldErrorArr})) + // } + + if(value == ''){ + setRequestState({ + loading: false, + status: false, + message: '', + data: [], + errors: [name] + }) + }else{ + let error = requestState?.errors?.indexOf(name) //// checks if the input field was in error array and removes it when the input changes + if(error >= 0){ + let oldErrorArr = requestState.errors + let newErrorArr = oldErrorArr.splice(error, 1) + setRequestState(prev => ({...prev, errors:oldErrorArr})) + } + } + + if(name == 'email'){ + //checks if email is a valid email address + let regEx = /^[^0-9][a-zA-Z0-9._%+-]+@[a-zA-Z]+(\.[a-zA-Z]+)+$/; + if (!EmailValidator(value)) { + setRequestState({ + loading: false, + status: false, + message: '', + data: [], + errors: ['email'] + }) + } } } @@ -33,26 +64,26 @@ export default function MemberList({groupList, selectedGroup, setUpdateList}) { status: false, message: '', data: [], - errors: [] + errors: ['email', 'firstname', 'lastname'] }) const addMember = () => { - let errors = Object.keys(fields).filter((item) => { // CHECKS FOR EMPTY STRINGS - if(typeof item == 'string' && fields[item] === ''){ - return item - } - }) + // let errors = Object.keys(fields).filter((item) => { // CHECKS FOR EMPTY STRINGS + // if(typeof item == 'string' && fields[item] === ''){ + // return item + // } + // }) - if(errors.length){ - setRequestState({ - loading: false, - status: false, - message: '', - data: [], - errors: [...errors] - }) - return - } + // if(errors.length){ + // setRequestState({ + // loading: false, + // status: false, + // message: '', + // data: [], + // errors: [...errors] + // }) + // return + // } //checks if email is a valid email address let regEx = /^[^0-9][a-zA-Z0-9._%+-]+@[a-zA-Z]+(\.[a-zA-Z]+)+$/; @@ -155,54 +186,61 @@ export default function MemberList({groupList, selectedGroup, setUpdateList}) { <>

{selectedGroup?.name}

-
-
-
- +
+
+ - {/* */}
-
- + - {/* */}
-
- + - {/* */}
-
+
{requestState.loading ? : - + }
+ {!requestState.loading && requestState.message &&

{requestState.message}

}
First NameLast NameEmail
{value?.firstname}
{value?.firstname} {value?.lastname} {value?.email} + +
+

+ {value.firstname && value.firstname} {value.lastname && value.lastname} +

+ + {value.email && value.email} + +
+
+
- // No Members Found - //
No Members Found