diff --git a/src/pages/digitalId/ProfileId.jsx b/src/pages/digitalId/ProfileId.jsx index 7f4fdeb..900fb11 100644 --- a/src/pages/digitalId/ProfileId.jsx +++ b/src/pages/digitalId/ProfileId.jsx @@ -25,51 +25,54 @@ const Profile = observer (() => { const initialPropertyValues = ['First name', 'Second name', 'Birthdate', 'Gender', 'Residence', 'Document type', 'Document ID', 'Issue date', 'Expiry date']; const [propertyValues, setPropertyValues] = useState([]); - const [currentValues, setCurrentValues] = useState(defaultValues); + const [updatedValues, setUpdatedValues] = useState(defaultValues); + const [addedValues, setAddedValues] = useState(defaultValues); const openHint = () => { - if (!currentValues.property) { + if (!addedValues.property) { setPropertyValues(initialPropertyValues); } } - const addCurrentValues = (value, field) => { - setCurrentValues((prevState)=> ({ + const changeAddedValues = (value, field) => { + setAddedValues((prevState)=> ({ ...prevState, [field]: value.charAt(0).toUpperCase()+value.slice(1), })) - console.log(currentValues); - } + console.log(addedValues); + }; - const changeCurrentValue = (value, field, id) => { - setCurrentValues((prevState) => + const changeUpdatedValues = (value, field, key) => { + setUpdatedValues((prevState) => prevState.map((elem) => ( - elem.id === id ? { + elem.key === key ? { ...elem, [field]: value.charAt(0).toUpperCase()+value.slice(1), } : elem )) ) - console.log(currentValues); + console.log(updatedValues); }; const closeHint = (element) => { - addCurrentValues(element, 'property'); + changeAddedValues(element, 'property'); setPropertyValues([]); } const handleSelectedItems = (selectedItems) => { setSelectedItems([...selectedItems]); + setUpdatedValues(userDataStore.decryptedData.filter(({ key }) => selectedItems.includes(key))); if (selectedItems.length > 0) { setButtonPanelOpen(false); setAddPanelOpen(false); setChangePanelOpen(true); } - if (removePanelOpen === true) { + if (removePanelOpen === true || updatePanelOpen === true) { setChangePanelOpen(false); } if (selectedItems.length === 0) { setRemovePanelOpen(false); + setUpdatePanelOpen(false); setButtonPanelOpen(true); setChangePanelOpen(false); } @@ -81,10 +84,10 @@ const Profile = observer (() => { } const sendValues = () => { - if (!userDataStore.decryptedData.some((element) => element.property === currentValues.property) && (currentValues.seed.toString().length === 20)) { + if (!userDataStore.decryptedData.some((element) => element.property === addedValues.property) && (addedValues.seed.toString().length === 20)) { setAddPanelOpen(false); setButtonPanelOpen(true); - setCurrentValues(defaultValues); + setAddedValues(defaultValues); } } @@ -94,7 +97,7 @@ const Profile = observer (() => { } const cancelAddPanel = () => { - setCurrentValues(defaultValues); + setAddedValues(defaultValues); setAddPanelOpen(false); setButtonPanelOpen(true); } @@ -110,11 +113,9 @@ const Profile = observer (() => { } const openUpdatePanel = () => { - setCurrentValues(selectedUserData); setUpdatePanelOpen(true); setChangePanelOpen(false); - console.log(currentValues); - console.log(selectedUserData) + console.log(updatedValues); } const applyRemovePanel = () => { @@ -124,7 +125,7 @@ const Profile = observer (() => { } const handleInput = (text, field) => { - addCurrentValues(text, field); + changeAddedValues(text, field); setPropertyValues(initialPropertyValues); if (text) { let reg = new RegExp(`^${text}`, 'img'); @@ -132,8 +133,6 @@ const Profile = observer (() => { } }; - let selectedUserData = userDataStore.decryptedData.filter(({ key }) => selectedItems.includes(key)); - return (