diff --git a/packages/accounts-controller/src/AccountsController.test.ts b/packages/accounts-controller/src/AccountsController.test.ts index 0ffcc912c47..fc636eaf9d4 100644 --- a/packages/accounts-controller/src/AccountsController.test.ts +++ b/packages/accounts-controller/src/AccountsController.test.ts @@ -10,6 +10,8 @@ import type { AccountsControllerActions, AccountsControllerEvents, AccountsControllerState, + AllowedActions, + AllowedEvents, } from './AccountsController'; import { AccountsController } from './AccountsController'; import { keyringTypeToName } from './utils'; @@ -180,8 +182,8 @@ function setLastSelectedAsAny(account: InternalAccount): InternalAccount { */ function buildMessenger() { return new ControllerMessenger< - AccountsControllerActions, - AccountsControllerEvents + AccountsControllerActions | AllowedActions, + AccountsControllerEvents | AllowedEvents >(); } @@ -220,8 +222,8 @@ function setupAccountsController({ }: { initialState?: Partial; messenger?: ControllerMessenger< - AccountsControllerActions, - AccountsControllerEvents + AccountsControllerActions | AllowedActions, + AccountsControllerEvents | AllowedEvents >; }): AccountsController { const accountsControllerMessenger = diff --git a/packages/accounts-controller/src/AccountsController.ts b/packages/accounts-controller/src/AccountsController.ts index d2c8ea5fb11..28ad1690711 100644 --- a/packages/accounts-controller/src/AccountsController.ts +++ b/packages/accounts-controller/src/AccountsController.ts @@ -78,7 +78,7 @@ export type AccountsControllerGetAccountAction = { handler: AccountsController['getAccount']; }; -export type AllowedAccountsControllerActions = +export type AllowedActions = | KeyringControllerGetKeyringForAccountAction | KeyringControllerGetKeyringsByTypeAction | KeyringControllerGetAccountsAction; @@ -91,8 +91,7 @@ export type AccountsControllerActions = | AccountsControllerUpdateAccountsAction | AccountsControllerGetAccountByAddressAction | AccountsControllerGetSelectedAccountAction - | AccountsControllerGetAccountAction - | AllowedAccountsControllerActions; + | AccountsControllerGetAccountAction; export type AccountsControllerChangeEvent = ControllerStateChangeEvent< typeof controllerName, @@ -104,21 +103,18 @@ export type AccountsControllerSelectedAccountChangeEvent = { payload: [InternalAccount]; }; -export type AllowedAccountsControllerEvents = - | SnapStateChange - | KeyringControllerStateChangeEvent; +export type AllowedEvents = SnapStateChange | KeyringControllerStateChangeEvent; export type AccountsControllerEvents = | AccountsControllerChangeEvent - | AccountsControllerSelectedAccountChangeEvent - | AllowedAccountsControllerEvents; + | AccountsControllerSelectedAccountChangeEvent; export type AccountsControllerMessenger = RestrictedControllerMessenger< typeof controllerName, - AccountsControllerActions, - AccountsControllerEvents, - AllowedAccountsControllerActions['type'], - AllowedAccountsControllerEvents['type'] + AccountsControllerActions | AllowedActions, + AccountsControllerEvents | AllowedEvents, + AllowedActions['type'], + AllowedEvents['type'] >; type AddressAndKeyringTypeObject = { diff --git a/packages/accounts-controller/src/index.ts b/packages/accounts-controller/src/index.ts index a541e696b3c..274efa5d5b1 100644 --- a/packages/accounts-controller/src/index.ts +++ b/packages/accounts-controller/src/index.ts @@ -1,2 +1,18 @@ -export * from './AccountsController'; -export * from './utils'; +export type { + AccountsControllerState, + AccountsControllerGetStateAction, + AccountsControllerSetSelectedAccountAction, + AccountsControllerSetAccountNameAction, + AccountsControllerListAccountsAction, + AccountsControllerUpdateAccountsAction, + AccountsControllerGetSelectedAccountAction, + AccountsControllerGetAccountByAddressAction, + AccountsControllerGetAccountAction, + AccountsControllerActions, + AccountsControllerChangeEvent, + AccountsControllerSelectedAccountChangeEvent, + AccountsControllerEvents, + AccountsControllerMessenger, +} from './AccountsController'; +export { AccountsController } from './AccountsController'; +export { keyringTypeToName, getUUIDFromAddressOfNormalAccount } from './utils'; diff --git a/packages/approval-controller/src/ApprovalController.ts b/packages/approval-controller/src/ApprovalController.ts index 0cb0fdbec94..ef696d6b343 100644 --- a/packages/approval-controller/src/ApprovalController.ts +++ b/packages/approval-controller/src/ApprovalController.ts @@ -122,8 +122,8 @@ export type ApprovalControllerMessenger = RestrictedControllerMessenger< typeof controllerName, ApprovalControllerActions, ApprovalControllerEvents, - string, - string + never, + never >; // Option Types diff --git a/packages/keyring-controller/src/KeyringController.ts b/packages/keyring-controller/src/KeyringController.ts index 654d5089038..b4e8242edae 100644 --- a/packages/keyring-controller/src/KeyringController.ts +++ b/packages/keyring-controller/src/KeyringController.ts @@ -208,8 +208,8 @@ export type KeyringControllerMessenger = RestrictedControllerMessenger< typeof name, KeyringControllerActions, KeyringControllerEvents, - string, - string + never, + never >; export type KeyringControllerOptions = { diff --git a/packages/network-controller/src/NetworkController.ts b/packages/network-controller/src/NetworkController.ts index 8b5f4b2291e..19c77bb0807 100644 --- a/packages/network-controller/src/NetworkController.ts +++ b/packages/network-controller/src/NetworkController.ts @@ -472,8 +472,8 @@ export type NetworkControllerMessenger = RestrictedControllerMessenger< typeof name, NetworkControllerActions, NetworkControllerEvents, - string, - string + never, + never >; export type NetworkControllerOptions = { diff --git a/packages/permission-controller/src/PermissionController.ts b/packages/permission-controller/src/PermissionController.ts index 6268b5693ba..7a8d4c608ba 100644 --- a/packages/permission-controller/src/PermissionController.ts +++ b/packages/permission-controller/src/PermissionController.ts @@ -363,9 +363,9 @@ export type SideEffectMessenger< Events extends EventConstraint, > = RestrictedControllerMessenger< typeof controllerName, - Actions, + Actions | AllowedActions, Events, - string, + AllowedActions['type'], never >; diff --git a/packages/transaction-controller/jest.config.js b/packages/transaction-controller/jest.config.js index b931dad52f8..562a96e9a7d 100644 --- a/packages/transaction-controller/jest.config.js +++ b/packages/transaction-controller/jest.config.js @@ -17,10 +17,10 @@ module.exports = merge(baseConfig, { // An object that configures minimum threshold enforcement for coverage results coverageThreshold: { global: { - branches: 94.06, + branches: 94.2, functions: 98.48, - lines: 98.87, - statements: 98.88, + lines: 98.91, + statements: 98.93, }, }, diff --git a/packages/transaction-controller/src/TransactionControllerIntegration.test.ts b/packages/transaction-controller/src/TransactionControllerIntegration.test.ts index 72c91fa446d..455a26db012 100644 --- a/packages/transaction-controller/src/TransactionControllerIntegration.test.ts +++ b/packages/transaction-controller/src/TransactionControllerIntegration.test.ts @@ -116,6 +116,8 @@ const setupController = async ( const networkController = new NetworkController({ messenger: unrestrictedMessenger.getRestricted({ name: 'NetworkController', + allowedActions: [], + allowedEvents: [], }), trackMetaMetricsEvent: () => { // noop @@ -131,6 +133,8 @@ const setupController = async ( const approvalController = new ApprovalController({ messenger: unrestrictedMessenger.getRestricted({ name: 'ApprovalController', + allowedActions: [], + allowedEvents: [], }), showApprovalRequest: jest.fn(), typesExcludedFromRateLimiting: [ApprovalType.Transaction],