chore(editor): add feature flag entry for testing turbo renderer (#10581)
The debug pane will be displayed once the `enable_turbo_renderer` feature flag is enabled. 
This commit is contained in:
@@ -100,6 +100,10 @@ export {
|
|||||||
SpecProvider,
|
SpecProvider,
|
||||||
stopPropagation,
|
stopPropagation,
|
||||||
} from '@blocksuite/affine-shared/utils';
|
} from '@blocksuite/affine-shared/utils';
|
||||||
|
export {
|
||||||
|
ViewportTurboRendererExtension,
|
||||||
|
ViewportTurboRendererIdentifier,
|
||||||
|
} from '@blocksuite/affine-shared/viewport-renderer';
|
||||||
export type { DragBlockPayload } from '@blocksuite/affine-widget-drag-handle';
|
export type { DragBlockPayload } from '@blocksuite/affine-widget-drag-handle';
|
||||||
|
|
||||||
const env: Record<string, unknown> =
|
const env: Record<string, unknown> =
|
||||||
|
|||||||
@@ -21,7 +21,11 @@ import { toURLSearchParams } from '@affine/core/modules/navigation';
|
|||||||
import { PeekViewService } from '@affine/core/modules/peek-view/services/peek-view';
|
import { PeekViewService } from '@affine/core/modules/peek-view/services/peek-view';
|
||||||
import { WorkspaceService } from '@affine/core/modules/workspace';
|
import { WorkspaceService } from '@affine/core/modules/workspace';
|
||||||
import track from '@affine/track';
|
import track from '@affine/track';
|
||||||
import type { DocMode, DocTitle } from '@blocksuite/affine/blocks';
|
import {
|
||||||
|
type DocMode,
|
||||||
|
type DocTitle,
|
||||||
|
ViewportTurboRendererExtension,
|
||||||
|
} from '@blocksuite/affine/blocks';
|
||||||
import type { Store } from '@blocksuite/affine/store';
|
import type { Store } from '@blocksuite/affine/store';
|
||||||
import {
|
import {
|
||||||
useFramework,
|
useFramework,
|
||||||
@@ -132,6 +136,10 @@ const usePatchSpecs = (mode: DocMode) => {
|
|||||||
|
|
||||||
const enableAI = useEnableAI();
|
const enableAI = useEnableAI();
|
||||||
|
|
||||||
|
const enableTurboRenderer = useLiveData(
|
||||||
|
featureFlagService.flags.enable_turbo_renderer.$
|
||||||
|
);
|
||||||
|
|
||||||
const patchedSpecs = useMemo(() => {
|
const patchedSpecs = useMemo(() => {
|
||||||
const builder = enableEditorExtension(framework, mode, enableAI);
|
const builder = enableEditorExtension(framework, mode, enableAI);
|
||||||
|
|
||||||
@@ -147,6 +155,9 @@ const usePatchSpecs = (mode: DocMode) => {
|
|||||||
patchQuickSearchService(framework),
|
patchQuickSearchService(framework),
|
||||||
patchSideBarService(framework),
|
patchSideBarService(framework),
|
||||||
patchDocModeService(docService, docsService, editorService),
|
patchDocModeService(docService, docsService, editorService),
|
||||||
|
mode === 'edgeless' && enableTurboRenderer
|
||||||
|
? [ViewportTurboRendererExtension]
|
||||||
|
: [],
|
||||||
].flat()
|
].flat()
|
||||||
);
|
);
|
||||||
|
|
||||||
@@ -173,6 +184,7 @@ const usePatchSpecs = (mode: DocMode) => {
|
|||||||
referenceRenderer,
|
referenceRenderer,
|
||||||
featureFlagService,
|
featureFlagService,
|
||||||
enableAI,
|
enableAI,
|
||||||
|
enableTurboRenderer,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
return [
|
return [
|
||||||
|
|||||||
@@ -238,6 +238,13 @@ export const AFFINE_FLAGS = {
|
|||||||
configurable: BUILD_CONFIG.isMobileEdition,
|
configurable: BUILD_CONFIG.isMobileEdition,
|
||||||
defaultState: false,
|
defaultState: false,
|
||||||
},
|
},
|
||||||
|
enable_turbo_renderer: {
|
||||||
|
category: 'affine',
|
||||||
|
displayName: 'Enable Turbo Renderer',
|
||||||
|
description: 'Enable experimental edgeless turbo renderer',
|
||||||
|
configurable: isCanaryBuild,
|
||||||
|
defaultState: false,
|
||||||
|
},
|
||||||
} satisfies { [key in string]: FlagInfo };
|
} satisfies { [key in string]: FlagInfo };
|
||||||
|
|
||||||
// oxlint-disable-next-line no-redeclare
|
// oxlint-disable-next-line no-redeclare
|
||||||
|
|||||||
Reference in New Issue
Block a user