diff --git a/packages/frontend/core/src/desktop/dialogs/setting/general-setting/backup/index.tsx b/packages/frontend/core/src/desktop/dialogs/setting/general-setting/backup/index.tsx index 2bc71d5330..8f7fb474bb 100644 --- a/packages/frontend/core/src/desktop/dialogs/setting/general-setting/backup/index.tsx +++ b/packages/frontend/core/src/desktop/dialogs/setting/general-setting/backup/index.tsx @@ -16,6 +16,7 @@ import { useAsyncCallback } from '@affine/core/components/hooks/affine-async-hoo import { useNavigateHelper } from '@affine/core/components/hooks/use-navigate-helper'; import { BackupService } from '@affine/core/modules/backup/services'; import { i18nTime, useI18n } from '@affine/i18n'; +import track from '@affine/track'; import { DeleteIcon, LocalWorkspaceIcon, @@ -78,6 +79,7 @@ const BackupWorkspaceItem = ({ item }: { item: BackupWorkspaceItem }) => { const handleImport = useAsyncCallback(async () => { setImporting(true); + track.$.settingsPanel.archivedWorkspaces.recoverArchivedWorkspace(); const workspaceId = await backupService.recoverBackupWorkspace(item.dbPath); if (!workspaceId) { setImporting(false); @@ -104,6 +106,7 @@ const BackupWorkspaceItem = ({ item }: { item: BackupWorkspaceItem }) => { title: t['com.affine.workspaceDelete.title'](), children: t['com.affine.settings.workspace.backup.delete.warning'](), onConfirm: async () => { + track.$.settingsPanel.archivedWorkspaces.deleteArchivedWorkspace(); await backupService.deleteBackupWorkspace(backupWorkspaceId); notify.success({ title: t['com.affine.settings.workspace.backup.delete.success'](), diff --git a/packages/frontend/core/src/desktop/dialogs/setting/workspace-setting/storage/blob-management.tsx b/packages/frontend/core/src/desktop/dialogs/setting/workspace-setting/storage/blob-management.tsx index d851d0d3e2..c96e67a2f7 100644 --- a/packages/frontend/core/src/desktop/dialogs/setting/workspace-setting/storage/blob-management.tsx +++ b/packages/frontend/core/src/desktop/dialogs/setting/workspace-setting/storage/blob-management.tsx @@ -10,6 +10,7 @@ import { Pagination } from '@affine/component/setting-components'; import { BlobManagementService } from '@affine/core/modules/blob-management/services'; import { useI18n } from '@affine/i18n'; import type { ListedBlobRecord } from '@affine/nbstore'; +import track from '@affine/track'; import { getAttachmentFileIcon } from '@blocksuite/affine/blocks'; import { DeleteIcon } from '@blocksuite/icons/rc'; import { useLiveData, useService } from '@toeverything/infra'; @@ -224,6 +225,7 @@ export const BlobManagementPanel = () => { ](), onConfirm: async () => { setDeleting(true); + track.$.settingsPanel.workspace.deleteUnusedBlob(); for (const blob of currentSelectedBlobs) { await unusedBlobsEntity.deleteBlob(blob.key, true); handleUnselectBlob(blob); diff --git a/packages/frontend/track/src/events.ts b/packages/frontend/track/src/events.ts index 7e9bbd9d84..2f2f112997 100644 --- a/packages/frontend/track/src/events.ts +++ b/packages/frontend/track/src/events.ts @@ -60,7 +60,10 @@ type EditorEvents = 'bold' | 'italic' | 'underline' | 'strikeThrough'; type SettingEvents = | 'openSettings' | 'changeAppSetting' - | 'changeEditorSetting'; + | 'changeEditorSetting' + | 'recoverArchivedWorkspace' + | 'deleteArchivedWorkspace' + | 'deleteUnusedBlob'; // END SECTION // SECTION: organize events @@ -182,7 +185,17 @@ const PageEvents = { }, settingsPanel: { menu: ['openSettings'], - workspace: ['viewPlans', 'export', 'addProperty', 'editPropertyMeta'], + workspace: [ + 'viewPlans', + 'export', + 'addProperty', + 'editPropertyMeta', + 'deleteUnusedBlob', + ], + archivedWorkspaces: [ + 'recoverArchivedWorkspace', + 'deleteArchivedWorkspace', + ], profileAndBadge: ['viewPlans'], accountUsage: ['viewPlans'], accountSettings: ['uploadAvatar', 'removeAvatar', 'updateUserName'],