diff --git a/packages/app/src/components/workspace-avatar/index.tsx b/packages/app/src/components/workspace-avatar/index.tsx
new file mode 100644
index 000000000..bff31d6f1
--- /dev/null
+++ b/packages/app/src/components/workspace-avatar/index.tsx
@@ -0,0 +1,30 @@
+import { stringToColour } from '@/utils';
+
+interface IWorkspaceAvatar {
+ size: number;
+ name: string;
+}
+
+export const WorkspaceAvatar = (props: IWorkspaceAvatar) => {
+ const size = props.size || 20;
+ const sizeStr = size + 'px';
+ return (
+ <>
+
+ {(props.name || 'AFFiNE').substring(0, 1)}
+
+ >
+ );
+};
diff --git a/packages/app/src/components/workspace-modal/index.tsx b/packages/app/src/components/workspace-modal/index.tsx
index 426e71cc3..81293efdb 100644
--- a/packages/app/src/components/workspace-modal/index.tsx
+++ b/packages/app/src/components/workspace-modal/index.tsx
@@ -21,7 +21,7 @@ import {
} from '@blocksuite/icons';
import { useConfirm } from '@/providers/confirm-provider';
import { toast } from '@/ui/toast';
-import { stringToColour } from '@/utils';
+import { WorkspaceAvatar } from '@/components/workspace-avatar';
interface LoginModalProps {
open: boolean;
onClose: () => void;
@@ -82,18 +82,9 @@ export const WorkspaceModal = ({ open, onClose }: LoginModalProps) => {
marginTop: '6px',
marginLeft: '10px',
marginRight: '10px',
- width: '50px',
- height: '50px',
- border: '1px solid #fff',
- color: '#fff',
- fontSize: '22px',
- background: stringToColour(item.name || 'AFFiNE'),
- borderRadius: '50%',
- textAlign: 'center',
- lineHeight: '50px',
}}
>
- {(item.name || 'AFFiNE').substring(0, 1)}
+
{
const { currentWorkspace, refreshWorkspacesMeta } = useAppState();
useEffect(() => {
@@ -85,19 +85,11 @@ export const GeneralPage = ({ workspace }: { workspace: Workspace }) => {
- {(workspace?.name ?? 'AFFiNE').substring(0, 1)}
+
{
{
- onTabChange && onTabChange(ActiveTab.publish);
+ onTabChange && onTabChange(ActiveTab.export);
}}
>
diff --git a/packages/app/src/components/workspace-slider-bar/WorkspaceSelector/WorkspaceSelector.tsx b/packages/app/src/components/workspace-slider-bar/WorkspaceSelector/WorkspaceSelector.tsx
index affda10ff..2047010e0 100644
--- a/packages/app/src/components/workspace-slider-bar/WorkspaceSelector/WorkspaceSelector.tsx
+++ b/packages/app/src/components/workspace-slider-bar/WorkspaceSelector/WorkspaceSelector.tsx
@@ -2,8 +2,8 @@ import { Avatar, WorkspaceName, SelectorWrapper } from './styles';
import { useEffect, useState } from 'react';
// import { AffineIcon } from '../icons/icons';
import { WorkspaceModal } from '@/components/workspace-modal';
+import { WorkspaceAvatar } from '@/components/workspace-avatar';
import { getActiveWorkspace, getWorkspaces } from '@/hooks/mock-data/mock';
-import { stringToColour } from '@/utils';
export const WorkspaceSelector = () => {
const [workspaceListShow, setWorkspaceListShow] = useState(false);
const [workspace, setWorkSpace] = useState(getActiveWorkspace());
@@ -37,18 +37,9 @@ export const WorkspaceSelector = () => {
- {(workspace?.name ?? 'AFFiNE').substring(0, 1)}
+