feat(core): add journal search results to bs doc search (#9052)

fix AF-1842
This commit is contained in:
pengx17
2024-12-12 02:25:00 +00:00
parent 21969731a3
commit 30d6793978
7 changed files with 155 additions and 11 deletions
@@ -20,6 +20,7 @@ import {
RecentDocsQuickSearchSession,
} from '@affine/core/modules/quicksearch';
import { ExternalLinksQuickSearchSession } from '@affine/core/modules/quicksearch/impls/external-links';
import { JournalsQuickSearchSession } from '@affine/core/modules/quicksearch/impls/journals';
import { WorkbenchService } from '@affine/core/modules/workbench';
import { isNewTabTrigger } from '@affine/core/utils';
import { DebugLogger } from '@affine/debug';
@@ -331,7 +332,7 @@ export function patchQuickSearchService(framework: FrameworkProvider) {
const QuickSearch = QuickSearchExtension({
async openQuickSearch() {
let searchResult: QuickSearchResult = null;
searchResult = await new Promise(resolve =>
searchResult = await new Promise((resolve, reject) =>
framework.get(QuickSearchService).quickSearch.show(
[
framework.get(RecentDocsQuickSearchSession),
@@ -339,6 +340,7 @@ export function patchQuickSearchService(framework: FrameworkProvider) {
framework.get(DocsQuickSearchSession),
framework.get(LinksQuickSearchSession),
framework.get(ExternalLinksQuickSearchSession),
framework.get(JournalsQuickSearchSession),
],
result => {
if (result === null) {
@@ -372,6 +374,18 @@ export function patchQuickSearchService(framework: FrameworkProvider) {
return;
}
if (result.source === 'date-picker') {
result.payload
.getDocId()
.then(docId => {
if (docId) {
resolve({ docId });
}
})
.catch(reject);
return;
}
if (result.source === 'external-link') {
const externalUrl = result.payload.url;
resolve({ externalUrl });