From fed0156f22e03e478c6c43d0fcfab9d66c2ebb7b Mon Sep 17 00:00:00 2001 From: Brooooooklyn Date: Thu, 9 Jan 2025 09:28:58 +0000 Subject: [PATCH] style: add @typescript-eslint/return-await rule (#9612) --- eslint.config.mjs | 19 +++++++++---------- .../src/sync/indexer/impl/indexeddb/index.ts | 4 ++-- .../apps/electron/src/helper/dialog/dialog.ts | 2 +- .../block-suite-editor/ai/request.ts | 2 +- .../core/src/modules/cloud/services/auth.ts | 2 +- 5 files changed, 14 insertions(+), 15 deletions(-) diff --git a/eslint.config.mjs b/eslint.config.mjs index 21212147b2..925791a8e5 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -159,6 +159,10 @@ export default tseslint.config( '@typescript-eslint/no-unsafe-function-type': 'error', '@typescript-eslint/no-wrapper-object-types': 'error', '@typescript-eslint/unified-signatures': 'error', + '@typescript-eslint/return-await': [ + 'error', + 'error-handling-correctness-only', + ], '@typescript-eslint/no-restricted-imports': [ 'error', { @@ -269,7 +273,11 @@ export default tseslint.config( }, }, { - files: ['packages/frontend/apps/electron/scripts/**/*'], + files: [ + 'packages/frontend/apps/electron/scripts/**/*', + 'blocksuite/tests-legacy/**/*.{ts,tsx}', + 'blocksuite/**/__tests__/**/*.{ts,tsx}', + ], rules: { 'import-x/no-extraneous-dependencies': 'off', }, @@ -280,14 +288,5 @@ export default tseslint.config( 'rxjs/finnish': 'off', }, }, - { - files: [ - 'blocksuite/tests-legacy/**/*.{ts,tsx}', - 'blocksuite/**/__tests__/**/*.{ts,tsx}', - ], - rules: { - 'import-x/no-extraneous-dependencies': 'off', - }, - }, eslintConfigPrettier ); diff --git a/packages/common/infra/src/sync/indexer/impl/indexeddb/index.ts b/packages/common/infra/src/sync/indexer/impl/indexeddb/index.ts index ea1153a32f..269f6df3ec 100644 --- a/packages/common/infra/src/sync/indexer/impl/indexeddb/index.ts +++ b/packages/common/infra/src/sync/indexer/impl/indexeddb/index.ts @@ -70,7 +70,7 @@ export class IndexedDBIndex implements Index { return fromPromise(async () => { try { const trx = await this.data.readonly(); - return this.data.search(trx, query, options); + return await this.data.search(trx, query, options); } catch (error) { logger.error('search error', error); throw error; @@ -100,7 +100,7 @@ export class IndexedDBIndex implements Index { return fromPromise(async () => { try { const trx = await this.data.readonly(); - return this.data.aggregate(trx, query, field, options); + return await this.data.aggregate(trx, query, field, options); } catch (error) { logger.error('aggregate error', error); throw error; diff --git a/packages/frontend/apps/electron/src/helper/dialog/dialog.ts b/packages/frontend/apps/electron/src/helper/dialog/dialog.ts index db790aa18a..225c84ba5d 100644 --- a/packages/frontend/apps/electron/src/helper/dialog/dialog.ts +++ b/packages/frontend/apps/electron/src/helper/dialog/dialog.ts @@ -195,7 +195,7 @@ export async function loadDBFile(): Promise { } const workspaceId = nanoid(10); - return loadV1DBFile(originalPath, workspaceId); + return await loadV1DBFile(originalPath, workspaceId); // TODO(forehalo): use `nbstore` when it is ready // let storage = new DocStorage(originalPath); diff --git a/packages/frontend/core/src/components/blocksuite/block-suite-editor/ai/request.ts b/packages/frontend/core/src/components/blocksuite/block-suite-editor/ai/request.ts index d01ef7bf48..4f67651b6a 100644 --- a/packages/frontend/core/src/components/blocksuite/block-suite-editor/ai/request.ts +++ b/packages/frontend/core/src/components/blocksuite/block-suite-editor/ai/request.ts @@ -91,7 +91,7 @@ async function resizeImage(blob: Blob | File): Promise { if (ctx) { ctx.imageSmoothingQuality = 'high'; ctx.drawImage(img, 0, 0, canvas.width, canvas.height); - return new Promise(resolve => + return await new Promise(resolve => canvas.toBlob(blob => resolve(blob), 'image/jpeg', 0.8) ); } diff --git a/packages/frontend/core/src/modules/cloud/services/auth.ts b/packages/frontend/core/src/modules/cloud/services/auth.ts index 9812bbbaca..8f51a043a6 100644 --- a/packages/frontend/core/src/modules/cloud/services/auth.ts +++ b/packages/frontend/core/src/modules/cloud/services/auth.ts @@ -183,7 +183,7 @@ export class AuthService extends Service { this.session.revalidate(); track.$.$.auth.signedIn({ method: 'oauth', provider }); - return res.json(); + return await res.json(); } catch (e) { track.$.$.auth.signInFail({ method: 'oauth',