chore(core): remove outline viewer feature flag (#7770)

This commit is contained in:
L-Sun
2024-08-07 03:46:14 +00:00
parent aee24ffb31
commit f6279ee47f
5 changed files with 11 additions and 65 deletions
@@ -33,7 +33,6 @@ export type AppSetting = {
autoDownloadUpdate: boolean;
enableMultiView: boolean;
enableTelemetry: boolean;
enableOutlineViewer: boolean;
editorFlags: Partial<Omit<BlockSuiteFlags, 'readonly'>>;
};
export const windowFrameStyleOptions: AppSetting['windowFrameStyle'][] = [
@@ -75,7 +74,6 @@ const appSettingBaseAtom = atomWithStorage<AppSetting>('affine-settings', {
autoDownloadUpdate: true,
enableTelemetry: true,
enableMultiView: false,
enableOutlineViewer: false,
editorFlags: {},
});
@@ -124,26 +124,6 @@ const SplitViewSettingRow = () => {
);
};
const OutlineViewerSettingRow = () => {
const { appSettings, updateSettings } = useAppSettingHelper();
const onToggle = useCallback(
(checked: boolean) => {
updateSettings('enableOutlineViewer', checked);
},
[updateSettings]
);
return (
<ExperimentalFeaturesItem
title="Outline Viewer"
checked={appSettings.enableOutlineViewer}
onChange={onToggle}
testId="outline-viewer-switch"
/>
);
};
// feature flag -> display name
const blocksuiteFeatureFlags: Partial<Record<keyof BlockSuiteFlags, string>> = {
enable_expand_database_block: 'Enable Expand Database Block',
@@ -198,7 +178,6 @@ const ExperimentalFeaturesMain = () => {
>
<SplitViewSettingRow />
<BlocksuiteFeatureFlagSettings />
<OutlineViewerSettingRow />
</div>
</>
);
@@ -4,7 +4,6 @@ import { AIProvider } from '@affine/core/blocksuite/presets/ai';
import { AffineErrorBoundary } from '@affine/core/components/affine/affine-error-boundary';
import { BlockSuiteEditor } from '@affine/core/components/blocksuite/block-suite-editor';
import { EditorOutlineViewer } from '@affine/core/components/blocksuite/outline-viewer';
import { useAppSettingHelper } from '@affine/core/hooks/affine/use-app-setting-helper';
import { useNavigateHelper } from '@affine/core/hooks/use-navigate-helper';
import { PageNotFound } from '@affine/core/pages/404';
import { DebugLogger } from '@affine/debug';
@@ -75,7 +74,6 @@ export function DocPeekPreview({
const workbench = useService(WorkbenchService).workbench;
const peekView = useService(PeekViewService).peekView;
const [editor, setEditor] = useState<AffineEditorContainer | null>(null);
const { appSettings } = useAppSettingHelper();
const onRef = (editor: AffineEditorContainer) => {
setEditor(editor);
@@ -177,13 +175,11 @@ export function DocPeekPreview({
page={doc.blockSuiteDoc}
/>
</FrameworkScope>
{appSettings.enableOutlineViewer && (
<EditorOutlineViewer
editor={editor}
show={resolvedMode === 'page'}
openOutlinePanel={openOutlinePanel}
/>
)}
<EditorOutlineViewer
editor={editor}
show={resolvedMode === 'page'}
openOutlinePanel={openOutlinePanel}
/>
</Scrollable.Viewport>
<Scrollable.Scrollbar />
@@ -270,13 +270,11 @@ const DetailPageImpl = memo(function DetailPageImpl() {
})}
/>
</Scrollable.Root>
{appSettings.enableOutlineViewer && (
<EditorOutlineViewer
editor={editor}
show={mode === 'page' && !isSideBarOpen}
openOutlinePanel={openOutlinePanel}
/>
)}
<EditorOutlineViewer
editor={editor}
show={mode === 'page' && !isSideBarOpen}
openOutlinePanel={openOutlinePanel}
/>
</AffineErrorBoundary>
{isInTrash ? <TrashPageFooter /> : null}
</div>
@@ -11,36 +11,13 @@ import {
waitForEditorLoad,
waitForEmptyEditor,
} from '@affine-test/kit/utils/page-logic';
import {
confirmExperimentalPrompt,
openExperimentalFeaturesPanel,
openSettingModal,
} from '@affine-test/kit/utils/setting';
import { expect, type Page } from '@playwright/test';
async function enableOutlineViewer(page: Page) {
await openSettingModal(page);
await openExperimentalFeaturesPanel(page);
const prompt = page.getByTestId('experimental-prompt');
await expect(prompt).toBeVisible();
await confirmExperimentalPrompt(page);
const settings = page.getByTestId('experimental-settings');
const enableOutlineViewerSetting = settings.getByTestId(
'outline-viewer-switch'
);
await expect(enableOutlineViewerSetting).toBeVisible();
await enableOutlineViewerSetting.click();
await page.waitForTimeout(500);
await page.getByTestId('modal-close-button').click();
await page.waitForTimeout(500);
}
import { expect } from '@playwright/test';
test('outline viewer is useable', async ({ page }) => {
await openHomePage(page);
await waitForEditorLoad(page);
await clickNewPageButton(page);
await waitForEditorLoad(page);
await enableOutlineViewer(page);
const title = getBlockSuiteEditorTitle(page);
await title.click();
@@ -69,7 +46,6 @@ test('outline viewer should hide in edgeless mode', async ({ page }) => {
await waitForEditorLoad(page);
await clickNewPageButton(page);
await waitForEditorLoad(page);
await enableOutlineViewer(page);
const title = getBlockSuiteEditorTitle(page);
await title.click();
@@ -94,7 +70,6 @@ test('outline viewer should be useable in doc peek preview', async ({
}) => {
await openHomePage(page);
await waitForEditorLoad(page);
await enableOutlineViewer(page);
await clickNewPageButton(page);
await waitForEmptyEditor(page);