@metamask-previews/assets-controllers 93.1.0-preview-c92c27f1 → 93.1.0-preview-d717276a
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -10
- package/dist/MultichainAssetsRatesController/MultichainAssetsRatesController.cjs +14 -9
- package/dist/MultichainAssetsRatesController/MultichainAssetsRatesController.cjs.map +1 -1
- package/dist/MultichainAssetsRatesController/MultichainAssetsRatesController.d.cts.map +1 -1
- package/dist/MultichainAssetsRatesController/MultichainAssetsRatesController.d.mts.map +1 -1
- package/dist/MultichainAssetsRatesController/MultichainAssetsRatesController.mjs +14 -9
- package/dist/MultichainAssetsRatesController/MultichainAssetsRatesController.mjs.map +1 -1
- package/dist/NftDetectionController.cjs +10 -6
- package/dist/NftDetectionController.cjs.map +1 -1
- package/dist/NftDetectionController.d.cts +4 -0
- package/dist/NftDetectionController.d.cts.map +1 -1
- package/dist/NftDetectionController.d.mts +4 -0
- package/dist/NftDetectionController.d.mts.map +1 -1
- package/dist/NftDetectionController.mjs +10 -6
- package/dist/NftDetectionController.mjs.map +1 -1
- package/dist/Standards/NftStandards/ERC721/ERC721Standard.cjs +1 -1
- package/dist/Standards/NftStandards/ERC721/ERC721Standard.cjs.map +1 -1
- package/dist/Standards/NftStandards/ERC721/ERC721Standard.mjs +1 -1
- package/dist/Standards/NftStandards/ERC721/ERC721Standard.mjs.map +1 -1
- package/dist/TokenBalancesController.cjs +377 -337
- package/dist/TokenBalancesController.cjs.map +1 -1
- package/dist/TokenBalancesController.d.cts +38 -17
- package/dist/TokenBalancesController.d.cts.map +1 -1
- package/dist/TokenBalancesController.d.mts +38 -17
- package/dist/TokenBalancesController.d.mts.map +1 -1
- package/dist/TokenBalancesController.mjs +377 -337
- package/dist/TokenBalancesController.mjs.map +1 -1
- package/dist/TokenDetectionController.cjs +205 -44
- package/dist/TokenDetectionController.cjs.map +1 -1
- package/dist/TokenDetectionController.d.cts +10 -12
- package/dist/TokenDetectionController.d.cts.map +1 -1
- package/dist/TokenDetectionController.d.mts +10 -12
- package/dist/TokenDetectionController.d.mts.map +1 -1
- package/dist/TokenDetectionController.mjs +206 -45
- package/dist/TokenDetectionController.mjs.map +1 -1
- package/dist/rpc-service/rpc-balance-fetcher.cjs +0 -4
- package/dist/rpc-service/rpc-balance-fetcher.cjs.map +1 -1
- package/dist/rpc-service/rpc-balance-fetcher.d.cts.map +1 -1
- package/dist/rpc-service/rpc-balance-fetcher.d.mts.map +1 -1
- package/dist/rpc-service/rpc-balance-fetcher.mjs +0 -4
- package/dist/rpc-service/rpc-balance-fetcher.mjs.map +1 -1
- package/package.json +3 -3
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
import type { AccountsControllerGetSelectedAccountAction, AccountsControllerListAccountsAction, AccountsControllerSelectedEvmAccountChangeEvent } from "@metamask/accounts-controller";
|
|
2
2
|
import type { ControllerGetStateAction, ControllerStateChangeEvent } from "@metamask/base-controller";
|
|
3
3
|
import type { AccountActivityServiceBalanceUpdatedEvent, AccountActivityServiceStatusChangedEvent } from "@metamask/core-backend";
|
|
4
|
-
import type { KeyringControllerAccountRemovedEvent
|
|
4
|
+
import type { KeyringControllerAccountRemovedEvent } from "@metamask/keyring-controller";
|
|
5
5
|
import type { Messenger } from "@metamask/messenger";
|
|
6
6
|
import type { NetworkControllerGetNetworkClientByIdAction, NetworkControllerGetStateAction, NetworkControllerStateChangeEvent } from "@metamask/network-controller";
|
|
7
7
|
import type { PreferencesControllerGetStateAction, PreferencesControllerStateChangeEvent } from "@metamask/preferences-controller";
|
|
8
8
|
import type { AuthenticationController } from "@metamask/profile-sync-controller";
|
|
9
|
-
import type { TransactionControllerIncomingTransactionsReceivedEvent, TransactionControllerTransactionConfirmedEvent } from "@metamask/transaction-controller";
|
|
10
9
|
import type { Hex } from "@metamask/utils";
|
|
11
10
|
import type { AccountTrackerControllerGetStateAction, AccountTrackerUpdateNativeBalancesAction, AccountTrackerUpdateStakedBalancesAction } from "./AccountTrackerController.mjs";
|
|
12
|
-
import type { TokenDetectionControllerAddDetectedTokensViaWsAction
|
|
11
|
+
import type { TokenDetectionControllerAddDetectedTokensViaWsAction } from "./TokenDetectionController.mjs";
|
|
13
12
|
import type { TokensControllerGetStateAction, TokensControllerStateChangeEvent } from "./TokensController.mjs";
|
|
14
13
|
export type ChainIdHex = Hex;
|
|
15
14
|
export type ChecksumAddress = Hex;
|
|
@@ -34,8 +33,8 @@ export type NativeBalanceEvent = {
|
|
|
34
33
|
payload: unknown[];
|
|
35
34
|
};
|
|
36
35
|
export type TokenBalancesControllerEvents = TokenBalancesControllerStateChangeEvent | NativeBalanceEvent;
|
|
37
|
-
export type AllowedActions = NetworkControllerGetNetworkClientByIdAction | NetworkControllerGetStateAction | TokensControllerGetStateAction | TokenDetectionControllerAddDetectedTokensViaWsAction |
|
|
38
|
-
export type AllowedEvents = TokensControllerStateChangeEvent | PreferencesControllerStateChangeEvent | NetworkControllerStateChangeEvent | KeyringControllerAccountRemovedEvent |
|
|
36
|
+
export type AllowedActions = NetworkControllerGetNetworkClientByIdAction | NetworkControllerGetStateAction | TokensControllerGetStateAction | TokenDetectionControllerAddDetectedTokensViaWsAction | PreferencesControllerGetStateAction | AccountsControllerGetSelectedAccountAction | AccountsControllerListAccountsAction | AccountTrackerControllerGetStateAction | AccountTrackerUpdateNativeBalancesAction | AccountTrackerUpdateStakedBalancesAction | AuthenticationController.AuthenticationControllerGetBearerToken;
|
|
37
|
+
export type AllowedEvents = TokensControllerStateChangeEvent | PreferencesControllerStateChangeEvent | NetworkControllerStateChangeEvent | KeyringControllerAccountRemovedEvent | AccountActivityServiceBalanceUpdatedEvent | AccountActivityServiceStatusChangedEvent | AccountsControllerSelectedEvmAccountChangeEvent;
|
|
39
38
|
export type TokenBalancesControllerMessenger = Messenger<typeof CONTROLLER, TokenBalancesControllerActions | AllowedActions, TokenBalancesControllerEvents | AllowedEvents>;
|
|
40
39
|
export type ChainPollingConfig = {
|
|
41
40
|
/** Polling interval in milliseconds for this chain */
|
|
@@ -65,17 +64,20 @@ export type TokenBalancesControllerOptions = {
|
|
|
65
64
|
websocketActivePollingInterval?: number;
|
|
66
65
|
};
|
|
67
66
|
/**
|
|
68
|
-
* Convert CAIP chain ID or hex chain ID to hex chain ID
|
|
67
|
+
* Convert CAIP chain ID or hex chain ID to hex chain ID
|
|
68
|
+
* Handles both CAIP-2 format (e.g., "eip155:1") and hex format (e.g., "0x1")
|
|
69
69
|
*
|
|
70
|
-
* @param chainId - CAIP chain ID or hex chain ID.
|
|
71
|
-
* @returns Hex chain ID.
|
|
70
|
+
* @param chainId - CAIP chain ID (e.g., "eip155:1") or hex chain ID (e.g., "0x1")
|
|
71
|
+
* @returns Hex chain ID (e.g., "0x1")
|
|
72
|
+
* @throws {Error} If chainId is neither a valid CAIP-2 chain ID nor a hex string
|
|
72
73
|
*/
|
|
73
74
|
export declare const caipChainIdToHex: (chainId: string) => ChainIdHex;
|
|
74
75
|
/**
|
|
75
|
-
* Extract token address from asset type
|
|
76
|
+
* Extract token address from asset type
|
|
77
|
+
* Returns tuple of [tokenAddress, isNativeToken] or null if invalid
|
|
76
78
|
*
|
|
77
|
-
* @param assetType - Asset type string.
|
|
78
|
-
* @returns Tuple of [tokenAddress, isNativeToken] or null if invalid
|
|
79
|
+
* @param assetType - Asset type string (e.g., 'eip155:1/erc20:0x...' or 'eip155:1/slip44:60')
|
|
80
|
+
* @returns Tuple of [tokenAddress, isNativeToken] or null if invalid
|
|
79
81
|
*/
|
|
80
82
|
export declare const parseAssetType: (assetType: string) => [
|
|
81
83
|
string,
|
|
@@ -112,28 +114,47 @@ export declare class TokenBalancesController extends TokenBalancesController_bas
|
|
|
112
114
|
#private;
|
|
113
115
|
constructor({ messenger, interval, websocketActivePollingInterval, chainPollingIntervals, state, queryMultipleAccounts, accountsApiChainIds, allowExternalServices, platform, }: TokenBalancesControllerOptions);
|
|
114
116
|
/**
|
|
115
|
-
*
|
|
116
|
-
* When locked, balance updates should be skipped.
|
|
117
|
+
* Override to support per-chain polling intervals by grouping chains by interval
|
|
117
118
|
*
|
|
118
|
-
* @
|
|
119
|
+
* @param options0 - The polling options
|
|
120
|
+
* @param options0.chainIds - Chain IDs to start polling for
|
|
119
121
|
*/
|
|
120
|
-
get isActive(): boolean;
|
|
121
122
|
_startPolling({ chainIds }: {
|
|
122
123
|
chainIds: ChainIdHex[];
|
|
123
124
|
}): void;
|
|
125
|
+
/**
|
|
126
|
+
* Override to handle our custom polling approach
|
|
127
|
+
*
|
|
128
|
+
* @param tokenSetId - The token set ID to stop polling for
|
|
129
|
+
*/
|
|
124
130
|
_stopPollingByPollingTokenSetId(tokenSetId: string): void;
|
|
131
|
+
/**
|
|
132
|
+
* Get polling configuration for a chain (includes default fallback)
|
|
133
|
+
*
|
|
134
|
+
* @param chainId - The chain ID to get config for
|
|
135
|
+
* @returns The polling configuration for the chain
|
|
136
|
+
*/
|
|
125
137
|
getChainPollingConfig(chainId: ChainIdHex): ChainPollingConfig;
|
|
126
138
|
_executePoll({ chainIds, queryAllAccounts, }: {
|
|
127
139
|
chainIds: ChainIdHex[];
|
|
128
140
|
queryAllAccounts?: boolean;
|
|
129
141
|
}): Promise<void>;
|
|
142
|
+
/**
|
|
143
|
+
* Update multiple chain polling configurations at once
|
|
144
|
+
*
|
|
145
|
+
* @param configs - Object mapping chain IDs to polling configurations
|
|
146
|
+
* @param options - Optional configuration for the update behavior
|
|
147
|
+
* @param options.immediateUpdate - Whether to immediately fetch balances after updating configs (default: true)
|
|
148
|
+
*/
|
|
130
149
|
updateChainPollingConfigs(configs: Record<ChainIdHex, ChainPollingConfig>, options?: UpdateChainPollingConfigsOptions): void;
|
|
131
|
-
updateBalances({ chainIds,
|
|
150
|
+
updateBalances({ chainIds, queryAllAccounts, }?: {
|
|
132
151
|
chainIds?: ChainIdHex[];
|
|
133
|
-
tokenAddresses?: string[];
|
|
134
152
|
queryAllAccounts?: boolean;
|
|
135
153
|
}): Promise<void>;
|
|
136
154
|
resetState(): void;
|
|
155
|
+
/**
|
|
156
|
+
* Clean up all timers and resources when controller is destroyed
|
|
157
|
+
*/
|
|
137
158
|
destroy(): void;
|
|
138
159
|
}
|
|
139
160
|
export default TokenBalancesController;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TokenBalancesController.d.mts","sourceRoot":"","sources":["../src/TokenBalancesController.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,0CAA0C,EAC1C,oCAAoC,EACpC,+CAA+C,EAChD,sCAAsC;AACvC,OAAO,KAAK,EACV,wBAAwB,EACxB,0BAA0B,EAE3B,kCAAkC;AAQnC,OAAO,KAAK,EAEV,yCAAyC,EACzC,wCAAwC,EACzC,+BAA+B;AAChC,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"TokenBalancesController.d.mts","sourceRoot":"","sources":["../src/TokenBalancesController.ts"],"names":[],"mappings":"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"}
|