diff --git a/frontend/components/basic/Toggle.tsx b/frontend/components/basic/Toggle.tsx index 70e32426e..d15aed622 100644 --- a/frontend/components/basic/Toggle.tsx +++ b/frontend/components/basic/Toggle.tsx @@ -64,7 +64,6 @@ export default function Toggle ({ id ]) } else { - setSharedToHide(sharedToHide!.filter(tempId => tempId != id)) deleteOverride(id); } setEnabled(!enabled); diff --git a/frontend/components/dashboard/SideBar.tsx b/frontend/components/dashboard/SideBar.tsx index 03499b4d9..6298dd4af 100644 --- a/frontend/components/dashboard/SideBar.tsx +++ b/frontend/components/dashboard/SideBar.tsx @@ -83,8 +83,8 @@ const SideBar = ({ @@ -116,11 +116,11 @@ const SideBar = ({ enabled={overrideEnabled} setEnabled={setOverrideEnabled} addOverride={addOverride} - keyName={data[0].key} - value={data[0].value} - pos={data[0].pos} - id={data[0].id} - comment={data[0].comment} + keyName={data[0]?.key} + value={data[0]?.value} + pos={data[0]?.pos} + id={data[0]?.id} + comment={data[0]?.comment} deleteOverride={deleteOverride} sharedToHide={sharedToHide} setSharedToHide={setSharedToHide} @@ -130,13 +130,13 @@ const SideBar = ({ secret.type == "personal")[0].pos : data[0].pos} - value={overrideEnabled ? data.filter(secret => secret.type == "personal")[0].value : data[0].value} + position={overrideEnabled ? data.filter(secret => secret.type == "personal")[0]?.pos : data[0]?.pos} + value={overrideEnabled ? data.filter(secret => secret.type == "personal")[0]?.value : data[0]?.value} isDuplicate={false} blurred={true} /> - secret.type == "personal")[0].pos : data[0].pos} /> + secret.type == "personal")[0]?.pos : data[0]?.pos} /> @@ -149,8 +149,8 @@ const SideBar = ({ isFull={true} /> */} - - secret.type == "shared")[0]?.comment} modifyComment={modifyComment} position={data[0].pos} /> + + secret.type == "shared")[0]?.comment} modifyComment={modifyComment} position={data[0]?.pos} /> { setButtonReady(true); + + // find which shared secret corresponds to the overriden version + const sharedVersionOfOverride = data!.filter(secret => secret.type == "shared" && secret.key == data!.filter(row => row.id == id)[0]?.key)[0]?.id; + + // change the sidebar to this shared secret; and unhide it + toggleSidebar(sharedVersionOfOverride) + setSharedToHide(sharedToHide!.filter(tempId => tempId != sharedVersionOfOverride)) + + // resort secrets const tempData = data!.filter((row: SecretDataProps) => !(row.id == id && row.type == 'personal')) sortValuesHandler(tempData, sortMethod == "alhpabetical" ? "-alphabetical" : "alphabetical") }; @@ -419,7 +428,7 @@ export default function Dashboard() { {sidebarSecretId != "None" && row.id == sidebarSecretId)} + data={data.filter((row: SecretDataProps) => row.key == data.filter(row => row.id == sidebarSecretId)[0]?.key)} modifyKey={listenChangeKey} modifyValue={listenChangeValue} modifyComment={listenChangeComment}