From f8b78d51abbdfaccef5c2068311150b61beec8b7 Mon Sep 17 00:00:00 2001 From: Jongsun Suh Date: Fri, 2 Aug 2024 13:48:01 -0400 Subject: [PATCH] Apply `ts-expect-error` to flaky immer type errors --- packages/accounts-controller/src/AccountsController.ts | 3 +-- packages/permission-controller/src/PermissionController.ts | 2 ++ .../permission-controller/src/SubjectMetadataController.ts | 3 ++- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/packages/accounts-controller/src/AccountsController.ts b/packages/accounts-controller/src/AccountsController.ts index d74c930228..70eccb90bc 100644 --- a/packages/accounts-controller/src/AccountsController.ts +++ b/packages/accounts-controller/src/AccountsController.ts @@ -444,8 +444,7 @@ export class AccountsController extends BaseController< metadata: { ...account.metadata, ...metadata }, }; // Do not remove this comment - This error is flaky: Comment out or restore the `ts-expect-error` directive below as needed. - // See: https://github.com/MetaMask/utils/issues/168 - // // @ts-expect-error Known issue - `Json` causes recursive error in immer `Draft`/`WritableDraft` types + // // @ts-expect-error - Known issue: `Json` causes recursive error in immer `Draft`/`WritableDraft` types (See: https://github.com/MetaMask/utils/issues/168) currentState.internalAccounts.accounts[accountId] = internalAccount; }); } diff --git a/packages/permission-controller/src/PermissionController.ts b/packages/permission-controller/src/PermissionController.ts index 359566f43a..9b2d2b08bc 100644 --- a/packages/permission-controller/src/PermissionController.ts +++ b/packages/permission-controller/src/PermissionController.ts @@ -1369,6 +1369,8 @@ export class PermissionController< ); if (caveatIndex === -1) { + // Do not remove this comment - This error is flaky: Comment out or restore the `ts-expect-error` directive below as needed. + // // @ts-expect-error - Known issue: `Json` causes recursive error in immer `Draft`/`WritableDraft` types (See: https://github.com/MetaMask/utils/issues/168) permission.caveats.push(caveat); } else { permission.caveats.splice(caveatIndex, 1, caveat); diff --git a/packages/permission-controller/src/SubjectMetadataController.ts b/packages/permission-controller/src/SubjectMetadataController.ts index be67943e4e..24b2b1f07c 100644 --- a/packages/permission-controller/src/SubjectMetadataController.ts +++ b/packages/permission-controller/src/SubjectMetadataController.ts @@ -235,7 +235,8 @@ export class SubjectMetadataController extends BaseController< */ trimMetadataState(): void { this.update((draftState) => { - // @ts-expect-error ts(2589) + // Do not remove this comment - This error is flaky: Comment out or restore the `ts-expect-error` directive below as needed. + // @ts-expect-error - Known issue: `Json` causes recursive error in immer `Draft`/`WritableDraft` types (See: https://github.com/MetaMask/utils/issues/168) return SubjectMetadataController.getTrimmedState( draftState, this.subjectHasPermissions,