From 0abb5fca3df7f25f0db5e0c3a6ca50ce053996cb Mon Sep 17 00:00:00 2001 From: Peter Macdonald Date: Wed, 5 Oct 2022 17:22:45 +0200 Subject: [PATCH] Updated useEffect Signed-off-by: Peter Macdonald --- .../fields/RepoUrlPicker/RepoUrlPicker.tsx | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/plugins/scaffolder/src/components/fields/RepoUrlPicker/RepoUrlPicker.tsx b/plugins/scaffolder/src/components/fields/RepoUrlPicker/RepoUrlPicker.tsx index 75f5d998ab..3261295716 100644 --- a/plugins/scaffolder/src/components/fields/RepoUrlPicker/RepoUrlPicker.tsx +++ b/plugins/scaffolder/src/components/fields/RepoUrlPicker/RepoUrlPicker.tsx @@ -94,28 +94,31 @@ export const RepoUrlPicker = ( /* we deal with calling the repo setting here instead of in each components for ease */ useEffect(() => { - if (allowedOrganizations.length > 0) { + if (allowedOrganizations.length > 0 && !state.organization) { setState(prevState => ({ ...prevState, organization: allowedOrganizations[0], })); } - }, [setState, allowedOrganizations]); + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [setState, allowedOrganizations, state.organization]); useEffect(() => { - if (allowedOwners.length > 0) { + if (allowedOwners.length > 0 && !state.owner) { setState(prevState => ({ ...prevState, - allowedOwners, + owner: allowedOwners[0], })); } - }, [setState, allowedOwners]); + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [setState, allowedOwners, state.owner]); useEffect(() => { - if (allowedRepos.length > 0) { + if (allowedRepos.length > 0 && !state.repoName) { setState(prevState => ({ ...prevState, repoName: allowedRepos[0] })); } - }, [setState, allowedRepos]); + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [setState, allowedRepos, state.repoName]); const updateLocalState = useCallback( (newState: RepoUrlPickerState) => {