Skip to content

Commit

Permalink
Expose addDetectedTokens action
Browse files Browse the repository at this point in the history
  • Loading branch information
MajorLift committed Jan 24, 2024
1 parent 5aed7e0 commit f230718
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 2 deletions.
14 changes: 13 additions & 1 deletion packages/assets-controllers/src/TokensController.ts
Original file line number Diff line number Diff line change
Expand Up @@ -109,13 +109,20 @@ export type TokensState = BaseState &
*/
const controllerName = 'TokensController';

export type TokensControllerActions = TokensControllerGetStateAction;
export type TokensControllerActions =
| TokensControllerGetStateAction
| TokensControllerAddDetectedTokensAction;

export type TokensControllerGetStateAction = ControllerGetStateAction<
typeof controllerName,
TokensState
>;

export type TokensControllerAddDetectedTokensAction = {
type: `${typeof controllerName}:addDetectedTokens`;
handler: TokensController['addDetectedTokens'];
};

/**
* The external actions available to the {@link TokensController}.
*/
Expand Down Expand Up @@ -246,6 +253,11 @@ export class TokensController extends BaseControllerV1<

this.messagingSystem = messenger;

this.messagingSystem.registerActionHandler(
`${controllerName}:addDetectedTokens` as const,
this.addDetectedTokens.bind(this),
);

this.messagingSystem.subscribe(
'PreferencesController:stateChange',
({ selectedAddress }) => {
Expand Down
12 changes: 11 additions & 1 deletion packages/assets-controllers/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,17 @@ export type {
export { TokenDetectionController } from './TokenDetectionController';
export * from './TokenListController';
export * from './TokenRatesController';
export * from './TokensController';
export type {
TokensConfig,
TokensState,
TokensControllerActions,
TokensControllerGetStateAction,
TokensControllerAddDetectedTokensAction,
TokensControllerEvents,
TokensControllerStateChangeEvent,
TokensControllerMessenger,
} from './TokensController';
export { TokensController } from './TokensController';
export {
isTokenDetectionSupportedForNetwork,
formatIconUrlWithProxy,
Expand Down

0 comments on commit f230718

Please sign in to comment.