diff --git a/components/LinkViews/LinkComponents/LinkCard.tsx b/components/LinkViews/LinkComponents/LinkCard.tsx
index f1e32df..285437a 100644
--- a/components/LinkViews/LinkComponents/LinkCard.tsx
+++ b/components/LinkViews/LinkComponents/LinkCard.tsx
@@ -23,6 +23,7 @@ import { useCollections } from "@/hooks/store/collections";
import { useUser } from "@/hooks/store/user";
import { useGetLink, useLinks } from "@/hooks/store/links";
import { useRouter } from "next/router";
+import useLocalSettingsStore from "@/store/localSettings";
type Props = {
link: LinkIncludingShortenedCollectionAndTags;
@@ -41,6 +42,10 @@ export default function LinkCard({ link, flipDropdown, editMode }: Props) {
const { setSelectedLinks, selectedLinks } = useLinkStore();
+ const {
+ settings: { show },
+ } = useLocalSettingsStore();
+
const {
data: { data: links = [] },
} = useLinks();
@@ -166,11 +171,9 @@ export default function LinkCard({ link, flipDropdown, editMode }: Props) {
) : (
)}
- {link.type !== "image" && (
-
-
-
- )}
+
+
+
diff --git a/components/LinkViews/LinkComponents/LinkMasonry.tsx b/components/LinkViews/LinkComponents/LinkMasonry.tsx
index 4dd70f1..b63019a 100644
--- a/components/LinkViews/LinkComponents/LinkMasonry.tsx
+++ b/components/LinkViews/LinkComponents/LinkMasonry.tsx
@@ -155,11 +155,9 @@ export default function LinkMasonry({ link, flipDropdown, editMode }: Props) {
) : link.preview === "unavailable" ? null : (
)}
- {link.type !== "image" && (
-
-
-
- )}
+
+
+
{link.preview !== "unavailable" && (
diff --git a/components/ViewDropdown.tsx b/components/ViewDropdown.tsx
index 2333970..a945065 100644
--- a/components/ViewDropdown.tsx
+++ b/components/ViewDropdown.tsx
@@ -1,7 +1,8 @@
import React, { Dispatch, SetStateAction, useEffect } from "react";
import useLocalSettingsStore from "@/store/localSettings";
-
import { ViewMode } from "@/types/global";
+import { dropdownTriggerer } from "@/lib/client/utils";
+import { useTranslation } from "next-i18next";
type Props = {
viewMode: ViewMode;
@@ -9,53 +10,111 @@ type Props = {
};
export default function ViewDropdown({ viewMode, setViewMode }: Props) {
- const { updateSettings } = useLocalSettingsStore();
+ const { settings, updateSettings } = useLocalSettingsStore((state) => state);
+ const { t } = useTranslation();
const onChangeViewMode = (
e: React.MouseEvent,
- viewMode: ViewMode
+ mode: ViewMode
) => {
- setViewMode(viewMode);
+ setViewMode(mode);
+ };
+
+ const toggleShowSetting = (setting: keyof typeof settings.show) => {
+ const newShowSettings = {
+ ...settings.show,
+ [setting]: !settings.show[setting],
+ };
+ updateSettings({ show: newShowSettings });
};
useEffect(() => {
updateSettings({ viewMode });
- }, [viewMode]);
+ }, [viewMode, updateSettings]);
return (
-
-