diff --git a/README.md b/README.md index 0b377cff988..d41c8d991ac 100644 --- a/README.md +++ b/README.md @@ -216,6 +216,7 @@ linkStyle default opacity:0.5 earn_controller --> transaction_controller; eip_5792_middleware --> transaction_controller; eip_5792_middleware --> keyring_controller; + eip_7702_internal_rpc_middleware --> controller_utils; eip1193_permission_middleware --> chain_agnostic_permission; eip1193_permission_middleware --> controller_utils; eip1193_permission_middleware --> json_rpc_engine; @@ -263,6 +264,7 @@ linkStyle default opacity:0.5 multichain_transactions_controller --> keyring_controller; name_controller --> base_controller; name_controller --> controller_utils; + name_controller --> messenger; network_controller --> base_controller; network_controller --> controller_utils; network_controller --> eth_block_tracker; diff --git a/packages/name-controller/CHANGELOG.md b/packages/name-controller/CHANGELOG.md index 08ecd450191..4480a7ab234 100644 --- a/packages/name-controller/CHANGELOG.md +++ b/packages/name-controller/CHANGELOG.md @@ -7,6 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- **BREAKING:** Use new `Messenger` from `@metamask/messenger` ([#6541](https://github.com/MetaMask/core/pull/6541)) + - Previously, `NameController` accepted a `RestrictedMessenger` instance from `@metamask/base-controller`. +- **BREAKING:** Metadata property `anonymous` renamed to `includeInDebugSnapshot` ([#6541](https://github.com/MetaMask/core/pull/6541)) + ## [8.1.1] ### Changed diff --git a/packages/name-controller/package.json b/packages/name-controller/package.json index 4e50fa44f20..64effc8ad58 100644 --- a/packages/name-controller/package.json +++ b/packages/name-controller/package.json @@ -50,6 +50,7 @@ "dependencies": { "@metamask/base-controller": "^8.4.2", "@metamask/controller-utils": "^11.14.1", + "@metamask/messenger": "^0.3.0", "@metamask/utils": "^11.8.1", "async-mutex": "^0.5.0" }, diff --git a/packages/name-controller/src/NameController.test.ts b/packages/name-controller/src/NameController.test.ts index 83b197261fd..f466bd792f0 100644 --- a/packages/name-controller/src/NameController.test.ts +++ b/packages/name-controller/src/NameController.test.ts @@ -1,4 +1,4 @@ -import { deriveStateFromMetadata } from '@metamask/base-controller'; +import { deriveStateFromMetadata } from '@metamask/base-controller/next'; import type { SetNameRequest, @@ -2765,7 +2765,7 @@ describe('NameController', () => { deriveStateFromMetadata( controller.state, controller.metadata, - 'anonymous', + 'includeInDebugSnapshot', ), ).toMatchInlineSnapshot(`Object {}`); }); diff --git a/packages/name-controller/src/NameController.ts b/packages/name-controller/src/NameController.ts index b37327916e6..9bd5dd8b3dd 100644 --- a/packages/name-controller/src/NameController.ts +++ b/packages/name-controller/src/NameController.ts @@ -1,10 +1,10 @@ import type { ControllerGetStateAction, ControllerStateChangeEvent, - RestrictedMessenger, -} from '@metamask/base-controller'; -import { BaseController } from '@metamask/base-controller'; +} from '@metamask/base-controller/next'; +import { BaseController } from '@metamask/base-controller/next'; import { isSafeDynamicKey } from '@metamask/controller-utils'; +import type { Messenger } from '@metamask/messenger'; import type { NameProvider, @@ -44,13 +44,13 @@ const stateMetadata = { names: { includeInStateLogs: true, persist: true, - anonymous: false, + includeInDebugSnapshot: false, usedInUi: true, }, nameSources: { includeInStateLogs: true, persist: true, - anonymous: false, + includeInDebugSnapshot: false, usedInUi: true, }, }; @@ -99,12 +99,10 @@ export type NameControllerActions = GetNameState; export type NameControllerEvents = NameStateChange; -export type NameControllerMessenger = RestrictedMessenger< +export type NameControllerMessenger = Messenger< typeof controllerName, NameControllerActions, - NameControllerEvents, - never, - never + NameControllerEvents >; export type NameControllerOptions = { diff --git a/packages/name-controller/tsconfig.build.json b/packages/name-controller/tsconfig.build.json index 779d385a6ab..249f327913d 100644 --- a/packages/name-controller/tsconfig.build.json +++ b/packages/name-controller/tsconfig.build.json @@ -8,6 +8,9 @@ "references": [ { "path": "../base-controller/tsconfig.build.json" + }, + { + "path": "../messenger/tsconfig.build.json" } ], "include": ["../../types", "./src"] diff --git a/packages/name-controller/tsconfig.json b/packages/name-controller/tsconfig.json index f2d7b67ff66..cb296895b28 100644 --- a/packages/name-controller/tsconfig.json +++ b/packages/name-controller/tsconfig.json @@ -6,6 +6,9 @@ "references": [ { "path": "../base-controller" + }, + { + "path": "../messenger" } ], "include": ["../../types", "./src"] diff --git a/yarn.lock b/yarn.lock index f67c9bc6cb0..d2586dea0c8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4205,6 +4205,7 @@ __metadata: "@metamask/auto-changelog": "npm:^3.4.4" "@metamask/base-controller": "npm:^8.4.2" "@metamask/controller-utils": "npm:^11.14.1" + "@metamask/messenger": "npm:^0.3.0" "@metamask/utils": "npm:^11.8.1" "@types/jest": "npm:^27.4.1" async-mutex: "npm:^0.5.0"