fix: consistent icons in account dropdown menu (v0.51.7)
"View profile" and "Settings" had no icon while Support/Admin did, so the menu didn't read as one consistent list. Added User/Settings/LogOut icons to match, plus a separator grouping account+support links apart from the theme switcher. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -2,6 +2,11 @@
|
|||||||
|
|
||||||
All notable changes to Epicure are documented here. This file is mirrored in-app at `/changelog` (and in the admin dashboard) via `apps/web/lib/changelog.ts` — update both together.
|
All notable changes to Epicure are documented here. This file is mirrored in-app at `/changelog` (and in the admin dashboard) via `apps/web/lib/changelog.ts` — update both together.
|
||||||
|
|
||||||
|
## 0.51.7 — 2026-07-19 13:35
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Account dropdown menu: "View profile" and "Settings" now have icons like every other item in the menu, and there's a new separator grouping the account/support links apart from the theme switcher.
|
||||||
|
|
||||||
## 0.51.6 — 2026-07-19 13:20
|
## 0.51.6 — 2026-07-19 13:20
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
import Link from "next/link";
|
import Link from "next/link";
|
||||||
import { usePathname, useRouter } from "next/navigation";
|
import { usePathname, useRouter } from "next/navigation";
|
||||||
import { useTheme } from "next-themes";
|
import { useTheme } from "next-themes";
|
||||||
import { BookOpen, Calendar, Package, ChefHat, User, FolderOpen, ShoppingCart, Shield, Search, Compass, Menu, Sun, Moon, Monitor, Apple, LifeBuoy } from "lucide-react";
|
import { BookOpen, Calendar, Package, ChefHat, User, FolderOpen, ShoppingCart, Shield, Search, Compass, Menu, Sun, Moon, Monitor, Apple, LifeBuoy, Settings, LogOut } from "lucide-react";
|
||||||
import { cn } from "@/lib/utils";
|
import { cn } from "@/lib/utils";
|
||||||
import { Button, buttonVariants } from "@/components/ui/button";
|
import { Button, buttonVariants } from "@/components/ui/button";
|
||||||
import {
|
import {
|
||||||
@@ -124,11 +124,17 @@ export function Nav() {
|
|||||||
<DropdownMenuContent align="end" className="w-48">
|
<DropdownMenuContent align="end" className="w-48">
|
||||||
{username && (
|
{username && (
|
||||||
<DropdownMenuItem>
|
<DropdownMenuItem>
|
||||||
<Link href={`/u/${username}`} className="w-full">{t("viewProfile")}</Link>
|
<Link href={`/u/${username}`} className="w-full flex items-center gap-2">
|
||||||
|
<User className="h-3.5 w-3.5" />
|
||||||
|
{t("viewProfile")}
|
||||||
|
</Link>
|
||||||
</DropdownMenuItem>
|
</DropdownMenuItem>
|
||||||
)}
|
)}
|
||||||
<DropdownMenuItem>
|
<DropdownMenuItem>
|
||||||
<Link href="/settings" className="w-full">{t("settings")}</Link>
|
<Link href="/settings" className="w-full flex items-center gap-2">
|
||||||
|
<Settings className="h-3.5 w-3.5" />
|
||||||
|
{t("settings")}
|
||||||
|
</Link>
|
||||||
</DropdownMenuItem>
|
</DropdownMenuItem>
|
||||||
<DropdownMenuItem>
|
<DropdownMenuItem>
|
||||||
<Link href="/support" className="w-full flex items-center gap-2">
|
<Link href="/support" className="w-full flex items-center gap-2">
|
||||||
@@ -136,6 +142,7 @@ export function Nav() {
|
|||||||
{t("support")}
|
{t("support")}
|
||||||
</Link>
|
</Link>
|
||||||
</DropdownMenuItem>
|
</DropdownMenuItem>
|
||||||
|
<DropdownMenuSeparator />
|
||||||
<div
|
<div
|
||||||
role="group"
|
role="group"
|
||||||
aria-label={t("systemMode")}
|
aria-label={t("systemMode")}
|
||||||
@@ -175,6 +182,7 @@ export function Nav() {
|
|||||||
)}
|
)}
|
||||||
<DropdownMenuSeparator />
|
<DropdownMenuSeparator />
|
||||||
<DropdownMenuItem
|
<DropdownMenuItem
|
||||||
|
className="gap-2"
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
void authClient.signOut({
|
void authClient.signOut({
|
||||||
fetchOptions: {
|
fetchOptions: {
|
||||||
@@ -186,6 +194,7 @@ export function Nav() {
|
|||||||
});
|
});
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
|
<LogOut className="h-3.5 w-3.5" />
|
||||||
{t("signOut")}
|
{t("signOut")}
|
||||||
</DropdownMenuItem>
|
</DropdownMenuItem>
|
||||||
</DropdownMenuContent>
|
</DropdownMenuContent>
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
// Mirrors CHANGELOG.md at the repo root — update both together.
|
// Mirrors CHANGELOG.md at the repo root — update both together.
|
||||||
export const APP_VERSION = "0.51.6";
|
export const APP_VERSION = "0.51.7";
|
||||||
|
|
||||||
export type ChangelogEntry = {
|
export type ChangelogEntry = {
|
||||||
version: string;
|
version: string;
|
||||||
@@ -11,6 +11,13 @@ export type ChangelogEntry = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export const CHANGELOG: ChangelogEntry[] = [
|
export const CHANGELOG: ChangelogEntry[] = [
|
||||||
|
{
|
||||||
|
version: "0.51.7",
|
||||||
|
date: "2026-07-19 13:35",
|
||||||
|
fixed: [
|
||||||
|
"Account dropdown menu: \"View profile\" and \"Settings\" now have icons like every other item in the menu, and there's a new separator grouping the account/support links apart from the theme switcher.",
|
||||||
|
],
|
||||||
|
},
|
||||||
{
|
{
|
||||||
version: "0.51.6",
|
version: "0.51.6",
|
||||||
date: "2026-07-19 13:20",
|
date: "2026-07-19 13:20",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@epicure/web",
|
"name": "@epicure/web",
|
||||||
"version": "0.51.6",
|
"version": "0.51.7",
|
||||||
"private": true,
|
"private": true,
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "next dev",
|
"dev": "next dev",
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "epicure",
|
"name": "epicure",
|
||||||
"version": "0.51.6",
|
"version": "0.51.7",
|
||||||
"private": true,
|
"private": true,
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "pnpm --filter web dev",
|
"dev": "pnpm --filter web dev",
|
||||||
|
|||||||
Reference in New Issue
Block a user