diff --git a/packages/frontend/core/src/desktop/dialogs/setting/general-setting/plans/plan-card.tsx b/packages/frontend/core/src/desktop/dialogs/setting/general-setting/plans/plan-card.tsx index aef3731d13c01..f2325f29fb474 100644 --- a/packages/frontend/core/src/desktop/dialogs/setting/general-setting/plans/plan-card.tsx +++ b/packages/frontend/core/src/desktop/dialogs/setting/general-setting/plans/plan-card.tsx @@ -103,7 +103,7 @@ const getSignUpText = ( case SubscriptionPlan.Free: return t['com.affine.payment.sign-up-free'](); case SubscriptionPlan.Team: - return t['com.affine.payment.start-free-trial'](); + return t['com.affine.payment.upgrade'](); default: return t['com.affine.payment.buy-pro'](); } @@ -263,7 +263,7 @@ const UpgradeToTeam = () => { variant="primary" data-event-args-url={url} > - {t['com.affine.payment.start-free-trial']()} + {t['com.affine.payment.upgrade']()} ); diff --git a/packages/frontend/core/src/desktop/dialogs/setting/workspace-setting/new-workspace-setting-detail/export.tsx b/packages/frontend/core/src/desktop/dialogs/setting/workspace-setting/new-workspace-setting-detail/export.tsx index 2eab27cd1cdb3..4c730246e14f7 100644 --- a/packages/frontend/core/src/desktop/dialogs/setting/workspace-setting/new-workspace-setting-detail/export.tsx +++ b/packages/frontend/core/src/desktop/dialogs/setting/workspace-setting/new-workspace-setting-detail/export.tsx @@ -4,9 +4,11 @@ import { Button } from '@affine/component/ui/button'; import { useAsyncCallback } from '@affine/core/components/hooks/affine-async-hooks'; import { useSystemOnline } from '@affine/core/components/hooks/use-system-online'; import { DesktopApiService } from '@affine/core/modules/desktop-api'; +import { WorkspacePermissionService } from '@affine/core/modules/permissions'; import { useI18n } from '@affine/i18n'; import track from '@affine/track'; import { + useLiveData, useService, type Workspace, type WorkspaceMetadata, @@ -23,6 +25,13 @@ export const DesktopExportPanel = ({ workspace, }: ExportPanelProps) => { const workspaceId = workspaceMetadata.id; + const workspacePermissionService = useService( + WorkspacePermissionService + ).permission; + const isTeam = useLiveData(workspacePermissionService.isTeam$); + const isOwner = useLiveData(workspacePermissionService.isOwner$); + const isAdmin = useLiveData(workspacePermissionService.isAdmin$); + const t = useI18n(); const [saving, setSaving] = useState(false); const isOnline = useSystemOnline(); @@ -55,6 +64,10 @@ export const DesktopExportPanel = ({ } }, [desktopApi, isOnline, saving, t, workspace, workspaceId]); + if (isTeam && !isOwner && !isAdmin) { + return null; + } + return (