fix(core): ai history of new users is always loading, enable online search by default (#11741)

Close [AI-69](https://linear.app/affine-design/issue/AI-69).
This commit is contained in:
akumatus
2025-04-17 02:53:40 +00:00
parent b8d9c5417d
commit 50b3f5f7df
5 changed files with 27 additions and 7 deletions

View File

@@ -235,7 +235,10 @@ export class ChatPanelMessages extends WithDisposable(ShadowlessElement) {
@scroll=${() => this._debouncedOnScroll()}
>
${filteredItems.length === 0
? html`<div class="messages-placeholder">
? html`<div
class="messages-placeholder"
data-testid="chat-panel-messages-placeholder"
>
${AffineIcon(
isLoading
? 'var(--affine-icon-secondary)'

View File

@@ -400,7 +400,7 @@ export class ChatPanel extends SignalWatcher(
.createSessionId=${this._createSessionId}
.updateContext=${this.updateContext}
.host=${this.host}
.isLoading=${this.isLoading || !this._isInitialized}
.isLoading=${this.isLoading}
.previewSpecBuilder=${this.previewSpecBuilder}
></chat-panel-messages>
<ai-chat-composer

View File

@@ -3,6 +3,7 @@ import {
type Signal,
} from '@blocksuite/affine/shared/utils';
import { LiveData, Service } from '@toeverything/infra';
import { map } from 'rxjs';
import type { FeatureFlagService } from '../../feature-flag';
import type { GlobalStateService } from '../../storage';
@@ -17,12 +18,18 @@ export class AINetworkSearchService extends Service {
super();
const { signal: enabled, cleanup: enabledCleanup } =
createSignalFromObservable<boolean | undefined>(this._enabled$, false);
createSignalFromObservable<boolean | undefined>(
this._enabled$,
undefined
);
this.enabled = enabled;
this.disposables.push(enabledCleanup);
const { signal: visible, cleanup: visibleCleanup } =
createSignalFromObservable<boolean | undefined>(this._visible$, false);
createSignalFromObservable<boolean | undefined>(
this._visible$,
undefined
);
this.visible = visible;
this.disposables.push(visibleCleanup);
}
@@ -35,8 +42,10 @@ export class AINetworkSearchService extends Service {
this.featureFlagService.flags.enable_ai_network_search.$;
private readonly _enabled$ = LiveData.from(
this.globalStateService.globalState.watch<boolean>(AI_NETWORK_SEARCH_KEY),
false
this.globalStateService.globalState
.watch<boolean>(AI_NETWORK_SEARCH_KEY)
.pipe(map(v => (v === undefined ? true : v))),
undefined
);
setEnabled = (enabled: boolean) => {