mirror of
https://github.com/usememos/memos.git
synced 2025-10-30 00:06:25 +08:00
chore: cleanup components naming
This commit is contained in:
parent
54e3c13435
commit
3245613a88
3 changed files with 23 additions and 8 deletions
|
|
@ -8,7 +8,7 @@ interface Props {
|
||||||
collapsed?: boolean;
|
collapsed?: boolean;
|
||||||
}
|
}
|
||||||
|
|
||||||
const BrandBanner = observer((props: Props) => {
|
const MemosLogo = observer((props: Props) => {
|
||||||
const { collapsed } = props;
|
const { collapsed } = props;
|
||||||
const workspaceGeneralSetting = workspaceStore.state.generalSetting;
|
const workspaceGeneralSetting = workspaceStore.state.generalSetting;
|
||||||
const title = workspaceGeneralSetting.customProfile?.title || "Memos";
|
const title = workspaceGeneralSetting.customProfile?.title || "Memos";
|
||||||
|
|
@ -24,4 +24,4 @@ const BrandBanner = observer((props: Props) => {
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
export default BrandBanner;
|
export default MemosLogo;
|
||||||
|
|
@ -8,8 +8,8 @@ import { cn } from "@/lib/utils";
|
||||||
import { Routes } from "@/router";
|
import { Routes } from "@/router";
|
||||||
import { userStore } from "@/store";
|
import { userStore } from "@/store";
|
||||||
import { useTranslate } from "@/utils/i18n";
|
import { useTranslate } from "@/utils/i18n";
|
||||||
import BrandBanner from "./BrandBanner";
|
import MemosLogo from "./MemosLogo";
|
||||||
import UserBanner from "./UserBanner";
|
import UserMenu from "./UserMenu";
|
||||||
|
|
||||||
interface NavLinkItem {
|
interface NavLinkItem {
|
||||||
id: string;
|
id: string;
|
||||||
|
|
@ -67,7 +67,7 @@ const Navigation = observer((props: Props) => {
|
||||||
<header className={cn("w-full h-full overflow-auto flex flex-col justify-between items-start gap-4 hide-scrollbar", className)}>
|
<header className={cn("w-full h-full overflow-auto flex flex-col justify-between items-start gap-4 hide-scrollbar", className)}>
|
||||||
<div className="w-full px-1 py-1 flex flex-col justify-start items-start space-y-2 overflow-auto overflow-x-hidden hide-scrollbar shrink">
|
<div className="w-full px-1 py-1 flex flex-col justify-start items-start space-y-2 overflow-auto overflow-x-hidden hide-scrollbar shrink">
|
||||||
<NavLink className="mb-3 cursor-default" to={currentUser ? Routes.ROOT : Routes.EXPLORE}>
|
<NavLink className="mb-3 cursor-default" to={currentUser ? Routes.ROOT : Routes.EXPLORE}>
|
||||||
<BrandBanner collapsed={collapsed} />
|
<MemosLogo collapsed={collapsed} />
|
||||||
</NavLink>
|
</NavLink>
|
||||||
{navLinks.map((navLink) => (
|
{navLinks.map((navLink) => (
|
||||||
<NavLink
|
<NavLink
|
||||||
|
|
@ -105,7 +105,7 @@ const Navigation = observer((props: Props) => {
|
||||||
</div>
|
</div>
|
||||||
{currentUser && (
|
{currentUser && (
|
||||||
<div className={cn("w-full flex flex-col justify-end", props.collapsed ? "items-center" : "items-start pl-3")}>
|
<div className={cn("w-full flex flex-col justify-end", props.collapsed ? "items-center" : "items-start pl-3")}>
|
||||||
<UserBanner collapsed={collapsed} />
|
<UserMenu collapsed={collapsed} />
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
</header>
|
</header>
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,7 @@ interface Props {
|
||||||
collapsed?: boolean;
|
collapsed?: boolean;
|
||||||
}
|
}
|
||||||
|
|
||||||
const UserBanner = (props: Props) => {
|
const UserMenu = (props: Props) => {
|
||||||
const { collapsed } = props;
|
const { collapsed } = props;
|
||||||
const t = useTranslate();
|
const t = useTranslate();
|
||||||
const navigateTo = useNavigateTo();
|
const navigateTo = useNavigateTo();
|
||||||
|
|
@ -20,6 +20,21 @@ const UserBanner = (props: Props) => {
|
||||||
|
|
||||||
const handleSignOut = async () => {
|
const handleSignOut = async () => {
|
||||||
await authServiceClient.deleteSession({});
|
await authServiceClient.deleteSession({});
|
||||||
|
|
||||||
|
// Clear user-specific localStorage items (e.g., drafts)
|
||||||
|
// Preserve app-wide settings like theme
|
||||||
|
const keysToPreserve = ["memos-theme", "tag-view-as-tree", "tag-tree-auto-expand", "viewStore"];
|
||||||
|
const keysToRemove: string[] = [];
|
||||||
|
|
||||||
|
for (let i = 0; i < localStorage.length; i++) {
|
||||||
|
const key = localStorage.key(i);
|
||||||
|
if (key && !keysToPreserve.includes(key)) {
|
||||||
|
keysToRemove.push(key);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
keysToRemove.forEach((key) => localStorage.removeItem(key));
|
||||||
|
|
||||||
window.location.href = Routes.AUTH;
|
window.location.href = Routes.AUTH;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -65,4 +80,4 @@ const UserBanner = (props: Props) => {
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
export default UserBanner;
|
export default UserMenu;
|
||||||
Loading…
Add table
Reference in a new issue