fix(core): handle uncaught ai flag (#8663)

This commit is contained in:
JimmFly
2024-11-01 17:18:21 +08:00
committed by GitHub
parent 0184328011
commit c2ebf0b822
3 changed files with 23 additions and 7 deletions
@@ -7,6 +7,7 @@ import { EditorOutlineViewer } from '@affine/core/components/blocksuite/outline-
import { DocPropertySidebar } from '@affine/core/components/doc-properties/sidebar';
import { useAppSettingHelper } from '@affine/core/components/hooks/affine/use-app-setting-helper';
import { useDocMetaHelper } from '@affine/core/components/hooks/use-block-suite-page-meta';
import { ServerConfigService } from '@affine/core/modules/cloud';
import { EditorService } from '@affine/core/modules/editor';
import { RecentDocsService } from '@affine/core/modules/quicksearch';
import { ViewService } from '@affine/core/modules/workbench/services/view';
@@ -69,6 +70,7 @@ const DetailPageImpl = memo(function DetailPageImpl() {
workspaceService,
globalContextService,
featureFlagService,
serverConfigService,
} = useServices({
WorkbenchService,
ViewService,
@@ -77,6 +79,7 @@ const DetailPageImpl = memo(function DetailPageImpl() {
WorkspaceService,
GlobalContextService,
FeatureFlagService,
ServerConfigService,
});
const workbench = workbenchService.workbench;
const editor = editorService.editor;
@@ -104,6 +107,12 @@ const DetailPageImpl = memo(function DetailPageImpl() {
const t = useI18n();
const serverFeatures = useLiveData(
serverConfigService.serverConfig.features$
);
const enableAI =
serverFeatures?.copilot && featureFlagService.flags.enable_ai.value;
useEffect(() => {
if (isActiveView) {
setActiveBlockSuiteEditor(editorContainer);
@@ -281,7 +290,7 @@ const DetailPageImpl = memo(function DetailPageImpl() {
</div>
</ViewBody>
{featureFlagService.flags.enable_ai.value && (
{enableAI && (
<ViewSidebarTab
tabId="chat"
icon={<AiIcon />}
+1
View File
@@ -7,6 +7,7 @@ import {
import { expect } from '@playwright/test';
test('Click ai-land icon', async ({ page }) => {
test.skip(process.env.CI !== undefined, 'Skip test in CI');
await openHomePage(page);
await waitForEditorLoad(page);
await clickNewPageButton(page);
+12 -6
View File
@@ -220,9 +220,12 @@ test('check if added property is also in workspace settings', async ({
}) => {
await addCustomProperty(page, page, 'text');
await openWorkspaceProperties(page);
await expect(
page.locator('[data-testid=doc-property-manager-item]:has-text("Text")')
).toBeVisible();
const settingModal = page.locator('[data-testid=setting-modal-content]');
const item = settingModal.locator(
'[data-testid=doc-property-manager-item]:has-text("Text")'
);
await item.waitFor({ state: 'attached' });
await expect(item).toBeVisible();
});
test('edit property name', async ({ page }) => {
@@ -243,9 +246,12 @@ test('edit property name', async ({ page }) => {
// check if the property name is also updated in workspace settings
await openWorkspaceProperties(page);
await expect(
page.locator('[data-testid=doc-property-manager-item]:has-text("New Text")')
).toBeVisible();
const settingModal = page.locator('[data-testid=setting-modal-content]');
const item = settingModal.locator(
'[data-testid=doc-property-manager-item]:has-text("New Text")'
);
await item.waitFor({ state: 'attached' });
await expect(item).toBeVisible();
});
test('delete property via property popup', async ({ page }) => {