From 2e855291834fa4fd9c981f72067544766f0d4c02 Mon Sep 17 00:00:00 2001 From: Dennis Ciba Date: Sun, 4 Dec 2022 12:22:56 +0100 Subject: [PATCH 1/2] Filter duplicates and empty lines on keyword creation --- components/keywords/AddKeywords.tsx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/components/keywords/AddKeywords.tsx b/components/keywords/AddKeywords.tsx index 56c9ec3..4f7fd84 100644 --- a/components/keywords/AddKeywords.tsx +++ b/components/keywords/AddKeywords.tsx @@ -27,13 +27,14 @@ const AddKeywords = ({ closeModal, domain, keywords }: AddKeywordsProps) => { const addKeywords = () => { if (newKeywordsData.keywords) { - const keywordsArray = newKeywordsData.keywords.replaceAll('\n', ',').split(',').map((item:string) => item.trim()); + const keywordsArray = [...new Set(newKeywordsData.keywords.split('\n').map((item) => item.trim()).filter((item) => !!item))]; const currentKeywords = keywords.map((k) => `${k.keyword}-${k.device}-${k.country}`); const keywordExist = keywordsArray.filter((k) => currentKeywords.includes(`${k}-${newKeywordsData.device}-${newKeywordsData.country}`)); if (keywordExist.length > 0) { setError(`Keywords ${keywordExist.join(',')} already Exist`); setTimeout(() => { setError(''); }, 3000); } else { + newKeywordsData.keywords = keywordsArray.join('\n'); addMutate(newKeywordsData); } } else { From 7dfb4f99f89a5f2d8b5d65c702aee9a9f1a9b027 Mon Sep 17 00:00:00 2001 From: Dennis Ciba Date: Mon, 5 Dec 2022 17:17:52 +0100 Subject: [PATCH 2/2] Fix state mutation --- components/keywords/AddKeywords.tsx | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/components/keywords/AddKeywords.tsx b/components/keywords/AddKeywords.tsx index 4f7fd84..19f599e 100644 --- a/components/keywords/AddKeywords.tsx +++ b/components/keywords/AddKeywords.tsx @@ -34,8 +34,7 @@ const AddKeywords = ({ closeModal, domain, keywords }: AddKeywordsProps) => { setError(`Keywords ${keywordExist.join(',')} already Exist`); setTimeout(() => { setError(''); }, 3000); } else { - newKeywordsData.keywords = keywordsArray.join('\n'); - addMutate(newKeywordsData); + addMutate({...newKeywordsData, keywords: keywordsArray.join('\n')}); } } else { setError('Please Insert a Keyword');