+
Current class
+
setOpen(false)}
+ className={`flex min-h-11 items-center gap-3 rounded-xl px-3 text-sm font-semibold transition-colors ${pathname.includes("/flashcards") ? "bg-bg-callout text-primary" : "text-text-secondary hover:bg-bg-surface-alt hover:text-text-heading"}`}
>
-
-
- Study
-
-
-
-
+ ✓ Quizzes
+
+ )}
+
+
+
+
+ Appearance
+
+
-
+ >
+ );
+
+ return (
+ <>
+
+
+
+
+
+ Study Desk
+
+
+
+
+ {open && (
+
+
+ )}
+ >
);
}
diff --git a/src/components/ui/ShareMenu.tsx b/src/components/ui/ShareMenu.tsx
index 0349656..f24535c 100644
--- a/src/components/ui/ShareMenu.tsx
+++ b/src/components/ui/ShareMenu.tsx
@@ -45,8 +45,15 @@ export function ShareMenu({ targetType, contentId, classSlug }: ShareMenuProps)
async function handleCopy() {
if (!token) return;
- const typeStr = targetType === "GROUP" ? "groups" : (targetType === "DECK" ? "flashcards" : "quizzes");
- const url = `${window.location.origin}/shared/${classSlug}/${typeStr}/${token}`;
+ const typeStr = isGroupShared
+ ? "groups"
+ : targetType === "GROUP"
+ ? "groups"
+ : targetType === "DECK"
+ ? "flashcards"
+ : "quizzes";
+ const itemQuery = isGroupShared ? `?itemId=${encodeURIComponent(contentId)}` : "";
+ const url = `${window.location.origin}/shared/${classSlug}/${typeStr}/${token}${itemQuery}`;
await navigator.clipboard.writeText(url);
setCopied(true);
setTimeout(() => setCopied(false), 2000);
@@ -56,7 +63,7 @@ export function ShareMenu({ targetType, contentId, classSlug }: ShareMenuProps)