@metamask-previews/assets-controller 1.0.0-preview-1ad6631 → 1.0.0-preview-e7b1aa6
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 +0 -1
- package/dist/AssetsController-method-action-types.cjs.map +1 -1
- package/dist/AssetsController-method-action-types.d.cts +1 -26
- package/dist/AssetsController-method-action-types.d.cts.map +1 -1
- package/dist/AssetsController-method-action-types.d.mts +1 -26
- package/dist/AssetsController-method-action-types.d.mts.map +1 -1
- package/dist/AssetsController-method-action-types.mjs.map +1 -1
- package/dist/AssetsController.cjs +9 -84
- package/dist/AssetsController.cjs.map +1 -1
- package/dist/AssetsController.d.cts +2 -47
- package/dist/AssetsController.d.cts.map +1 -1
- package/dist/AssetsController.d.mts +2 -47
- package/dist/AssetsController.d.mts.map +1 -1
- package/dist/AssetsController.mjs +9 -84
- package/dist/AssetsController.mjs.map +1 -1
- package/dist/data-sources/RpcDataSource.cjs +4 -117
- package/dist/data-sources/RpcDataSource.cjs.map +1 -1
- package/dist/data-sources/RpcDataSource.d.cts +0 -14
- package/dist/data-sources/RpcDataSource.d.cts.map +1 -1
- package/dist/data-sources/RpcDataSource.d.mts +0 -14
- package/dist/data-sources/RpcDataSource.d.mts.map +1 -1
- package/dist/data-sources/RpcDataSource.mjs +4 -117
- package/dist/data-sources/RpcDataSource.mjs.map +1 -1
- package/dist/data-sources/TokenDataSource.cjs +0 -5
- package/dist/data-sources/TokenDataSource.cjs.map +1 -1
- package/dist/data-sources/TokenDataSource.d.cts.map +1 -1
- package/dist/data-sources/TokenDataSource.d.mts.map +1 -1
- package/dist/data-sources/TokenDataSource.mjs +0 -5
- package/dist/data-sources/TokenDataSource.mjs.map +1 -1
- package/dist/data-sources/evm-rpc-services/index.cjs +1 -5
- package/dist/data-sources/evm-rpc-services/index.cjs.map +1 -1
- package/dist/data-sources/evm-rpc-services/index.d.cts +1 -1
- package/dist/data-sources/evm-rpc-services/index.d.cts.map +1 -1
- package/dist/data-sources/evm-rpc-services/index.d.mts +1 -1
- package/dist/data-sources/evm-rpc-services/index.d.mts.map +1 -1
- package/dist/data-sources/evm-rpc-services/index.mjs +1 -1
- package/dist/data-sources/evm-rpc-services/index.mjs.map +1 -1
- package/dist/data-sources/evm-rpc-services/services/index.cjs +1 -6
- package/dist/data-sources/evm-rpc-services/services/index.cjs.map +1 -1
- package/dist/data-sources/evm-rpc-services/services/index.d.cts +0 -1
- package/dist/data-sources/evm-rpc-services/services/index.d.cts.map +1 -1
- package/dist/data-sources/evm-rpc-services/services/index.d.mts +0 -1
- package/dist/data-sources/evm-rpc-services/services/index.d.mts.map +1 -1
- package/dist/data-sources/evm-rpc-services/services/index.mjs +0 -1
- package/dist/data-sources/evm-rpc-services/services/index.mjs.map +1 -1
- package/dist/data-sources/evm-rpc-services/utils/index.cjs +1 -9
- package/dist/data-sources/evm-rpc-services/utils/index.cjs.map +1 -1
- package/dist/data-sources/evm-rpc-services/utils/index.d.cts +0 -2
- package/dist/data-sources/evm-rpc-services/utils/index.d.cts.map +1 -1
- package/dist/data-sources/evm-rpc-services/utils/index.d.mts +0 -2
- package/dist/data-sources/evm-rpc-services/utils/index.d.mts.map +1 -1
- package/dist/data-sources/evm-rpc-services/utils/index.mjs +0 -2
- package/dist/data-sources/evm-rpc-services/utils/index.mjs.map +1 -1
- package/dist/data-sources/index.cjs +1 -3
- package/dist/data-sources/index.cjs.map +1 -1
- package/dist/data-sources/index.d.cts +0 -1
- package/dist/data-sources/index.d.cts.map +1 -1
- package/dist/data-sources/index.d.mts +0 -1
- package/dist/data-sources/index.d.mts.map +1 -1
- package/dist/data-sources/index.mjs +0 -1
- package/dist/data-sources/index.mjs.map +1 -1
- package/package.json +1 -1
- package/dist/data-sources/StakedBalanceDataSource.cjs +0 -536
- package/dist/data-sources/StakedBalanceDataSource.cjs.map +0 -1
- package/dist/data-sources/StakedBalanceDataSource.d.cts +0 -72
- package/dist/data-sources/StakedBalanceDataSource.d.cts.map +0 -1
- package/dist/data-sources/StakedBalanceDataSource.d.mts +0 -72
- package/dist/data-sources/StakedBalanceDataSource.d.mts.map +0 -1
- package/dist/data-sources/StakedBalanceDataSource.mjs +0 -532
- package/dist/data-sources/StakedBalanceDataSource.mjs.map +0 -1
- package/dist/data-sources/evm-rpc-services/services/StakedBalanceFetcher.cjs +0 -133
- package/dist/data-sources/evm-rpc-services/services/StakedBalanceFetcher.cjs.map +0 -1
- package/dist/data-sources/evm-rpc-services/services/StakedBalanceFetcher.d.cts +0 -78
- package/dist/data-sources/evm-rpc-services/services/StakedBalanceFetcher.d.cts.map +0 -1
- package/dist/data-sources/evm-rpc-services/services/StakedBalanceFetcher.d.mts +0 -78
- package/dist/data-sources/evm-rpc-services/services/StakedBalanceFetcher.d.mts.map +0 -1
- package/dist/data-sources/evm-rpc-services/services/StakedBalanceFetcher.mjs +0 -127
- package/dist/data-sources/evm-rpc-services/services/StakedBalanceFetcher.mjs.map +0 -1
- package/dist/data-sources/evm-rpc-services/utils/parsing.cjs +0 -34
- package/dist/data-sources/evm-rpc-services/utils/parsing.cjs.map +0 -1
- package/dist/data-sources/evm-rpc-services/utils/parsing.d.cts +0 -18
- package/dist/data-sources/evm-rpc-services/utils/parsing.d.cts.map +0 -1
- package/dist/data-sources/evm-rpc-services/utils/parsing.d.mts +0 -18
- package/dist/data-sources/evm-rpc-services/utils/parsing.d.mts.map +0 -1
- package/dist/data-sources/evm-rpc-services/utils/parsing.mjs +0 -29
- package/dist/data-sources/evm-rpc-services/utils/parsing.mjs.map +0 -1
- package/dist/data-sources/evm-rpc-services/utils/staking-contracts.cjs +0 -50
- package/dist/data-sources/evm-rpc-services/utils/staking-contracts.cjs.map +0 -1
- package/dist/data-sources/evm-rpc-services/utils/staking-contracts.d.cts +0 -24
- package/dist/data-sources/evm-rpc-services/utils/staking-contracts.d.cts.map +0 -1
- package/dist/data-sources/evm-rpc-services/utils/staking-contracts.d.mts +0 -24
- package/dist/data-sources/evm-rpc-services/utils/staking-contracts.d.mts.map +0 -1
- package/dist/data-sources/evm-rpc-services/utils/staking-contracts.mjs +0 -44
- package/dist/data-sources/evm-rpc-services/utils/staking-contracts.mjs.map +0 -1
|
@@ -11,7 +11,6 @@ import type { AssetsControllerMethodActions } from "./AssetsController-method-ac
|
|
|
11
11
|
import type { AccountsApiDataSourceConfig } from "./data-sources/AccountsApiDataSource.mjs";
|
|
12
12
|
import type { PriceDataSourceConfig } from "./data-sources/PriceDataSource.mjs";
|
|
13
13
|
import type { RpcDataSourceConfig } from "./data-sources/RpcDataSource.mjs";
|
|
14
|
-
import type { StakedBalanceDataSourceConfig } from "./data-sources/StakedBalanceDataSource.mjs";
|
|
15
14
|
import type { AccountId, AssetPreferences, ChainId, Caip19AssetId, AssetMetadata, AssetPrice, AssetBalance, AssetType, DataType, DataRequest, DataResponse, Asset } from "./types.mjs";
|
|
16
15
|
declare const CONTROLLER_NAME: "AssetsController";
|
|
17
16
|
/**
|
|
@@ -81,33 +80,7 @@ export type AssetsControllerAssetsDetectedEvent = {
|
|
|
81
80
|
};
|
|
82
81
|
export type AssetsControllerEvents = AssetsControllerStateChangeEvent | AssetsControllerBalanceChangedEvent | AssetsControllerPriceChangedEvent | AssetsControllerAssetsDetectedEvent;
|
|
83
82
|
type AllowedActions = AccountTreeControllerGetAccountsFromSelectedAccountGroupAction | NetworkEnablementControllerGetStateAction | BackendWebSocketServiceActions;
|
|
84
|
-
|
|
85
|
-
* Structural type for TransactionController:transactionConfirmed payload.
|
|
86
|
-
* Allows StakedBalanceDataSource to subscribe without depending on @metamask/transaction-controller.
|
|
87
|
-
*/
|
|
88
|
-
type TransactionConfirmedPayload = {
|
|
89
|
-
chainId: string;
|
|
90
|
-
txParams?: {
|
|
91
|
-
from?: string;
|
|
92
|
-
to?: string;
|
|
93
|
-
};
|
|
94
|
-
};
|
|
95
|
-
type TransactionControllerTransactionConfirmedEvent = {
|
|
96
|
-
type: 'TransactionController:transactionConfirmed';
|
|
97
|
-
payload: [TransactionConfirmedPayload];
|
|
98
|
-
};
|
|
99
|
-
/**
|
|
100
|
-
* Structural type for TransactionController:incomingTransactionsReceived payload.
|
|
101
|
-
* Allows data sources to subscribe without depending on @metamask/transaction-controller.
|
|
102
|
-
*/
|
|
103
|
-
type IncomingTransactionsReceivedPayload = {
|
|
104
|
-
chainId?: string;
|
|
105
|
-
}[];
|
|
106
|
-
type TransactionControllerIncomingTransactionsReceivedEvent = {
|
|
107
|
-
type: 'TransactionController:incomingTransactionsReceived';
|
|
108
|
-
payload: [IncomingTransactionsReceivedPayload];
|
|
109
|
-
};
|
|
110
|
-
type AllowedEvents = AccountTreeControllerSelectedAccountGroupChangeEvent | NetworkEnablementControllerEvents | BackendWebSocketServiceEvents | KeyringControllerLockEvent | KeyringControllerUnlockEvent | PreferencesControllerStateChangeEvent | TransactionControllerTransactionConfirmedEvent | TransactionControllerIncomingTransactionsReceivedEvent;
|
|
83
|
+
type AllowedEvents = AccountTreeControllerSelectedAccountGroupChangeEvent | NetworkEnablementControllerEvents | BackendWebSocketServiceEvents | KeyringControllerLockEvent | KeyringControllerUnlockEvent | PreferencesControllerStateChangeEvent;
|
|
111
84
|
export type AssetsControllerMessenger = Messenger<typeof CONTROLLER_NAME, AssetsControllerActions | AllowedActions, AssetsControllerEvents | AllowedEvents>;
|
|
112
85
|
/**
|
|
113
86
|
* Payload for the first init/fetch MetaMetrics event.
|
|
@@ -165,8 +138,6 @@ export type AssetsControllerOptions = {
|
|
|
165
138
|
accountsApiDataSourceConfig?: AccountsApiDataSourceConfig;
|
|
166
139
|
/** Optional configuration for PriceDataSource. */
|
|
167
140
|
priceDataSourceConfig?: PriceDataSourceConfig;
|
|
168
|
-
/** Optional configuration for StakedBalanceDataSource. */
|
|
169
|
-
stakedBalanceDataSourceConfig?: StakedBalanceDataSourceConfig;
|
|
170
141
|
};
|
|
171
142
|
/**
|
|
172
143
|
* AssetsController provides a unified interface for managing asset balances
|
|
@@ -195,7 +166,7 @@ export type AssetsControllerOptions = {
|
|
|
195
166
|
*/
|
|
196
167
|
export declare class AssetsController extends BaseController<typeof CONTROLLER_NAME, AssetsControllerState, AssetsControllerMessenger> {
|
|
197
168
|
#private;
|
|
198
|
-
constructor({ messenger, state, defaultUpdateInterval, isEnabled, isBasicFunctionality, subscribeToBasicFunctionalityChange, queryApiClient, rpcDataSourceConfig, trackMetaMetricsEvent, accountsApiDataSourceConfig, priceDataSourceConfig,
|
|
169
|
+
constructor({ messenger, state, defaultUpdateInterval, isEnabled, isBasicFunctionality, subscribeToBasicFunctionalityChange, queryApiClient, rpcDataSourceConfig, trackMetaMetricsEvent, accountsApiDataSourceConfig, priceDataSourceConfig, }: AssetsControllerOptions);
|
|
199
170
|
/**
|
|
200
171
|
* Handle when a data source's supported chains change.
|
|
201
172
|
* Used to refresh balance subscriptions and run a one-time fetch when a new chain is supported.
|
|
@@ -227,22 +198,6 @@ export declare class AssetsController extends BaseController<typeof CONTROLLER_N
|
|
|
227
198
|
assetTypes?: AssetType[];
|
|
228
199
|
forceUpdate?: boolean;
|
|
229
200
|
}): Promise<Record<Caip19AssetId, AssetPrice>>;
|
|
230
|
-
/**
|
|
231
|
-
* Refresh balances from RPC for selected accounts/chains and update state.
|
|
232
|
-
* Exposed for UI (e.g. pull-to-refresh). Only used when RPC is the data source;
|
|
233
|
-
* websocket/API update automatically. Also triggered on transaction events (RPC path).
|
|
234
|
-
*/
|
|
235
|
-
refreshBalances(): Promise<void>;
|
|
236
|
-
/**
|
|
237
|
-
* Run token detection for selected accounts/chains (RPC path) and update state.
|
|
238
|
-
* Exposed for UI. Only used when RPC is the data source; websocket/API update automatically.
|
|
239
|
-
*/
|
|
240
|
-
refreshDetectedTokens(): Promise<void>;
|
|
241
|
-
/**
|
|
242
|
-
* Refresh staked balances for all subscribed accounts/chains and update state.
|
|
243
|
-
* Exposed for UI. Also triggered automatically on transaction events.
|
|
244
|
-
*/
|
|
245
|
-
refreshStakedBalance(): Promise<void>;
|
|
246
201
|
/**
|
|
247
202
|
* Add a custom asset for an account.
|
|
248
203
|
* Custom assets are included in subscription and fetch operations.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AssetsController.d.mts","sourceRoot":"","sources":["../src/AssetsController.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,8DAA8D,EAC9D,oDAAoD,EACrD,0CAA0C;AAC3C,OAAO,EAAE,cAAc,EAAE,kCAAkC;AAC3D,OAAO,KAAK,EACV,wBAAwB,EACxB,0BAA0B,EAE3B,kCAAkC;AACnC,OAAO,KAAK,EACV,iBAAiB,EACjB,8BAA8B,EAC9B,6BAA6B,EAC9B,+BAA+B;AAChC,OAAO,KAAK,EACV,0BAA0B,EAC1B,4BAA4B,EAC7B,qCAAqC;AACtC,OAAO,KAAK,EAAE,eAAe,EAAE,uCAAuC;AACtE,OAAO,KAAK,EAAE,SAAS,EAAE,4BAA4B;AACrD,OAAO,KAAK,EACV,yCAAyC,EACzC,iCAAiC,EAElC,gDAAgD;AACjD,OAAO,KAAK,EAAE,qCAAqC,EAAE,yCAAyC;AAM9F,OAAO,KAAK,EAAE,6BAA6B,EAAE,mDAA+C;AAM5F,OAAO,KAAK,EAAE,2BAA2B,EAAE,iDAA6C;AAGxF,OAAO,KAAK,EAAE,qBAAqB,EAAE,2CAAuC;AAE5E,OAAO,KAAK,EAAE,mBAAmB,EAAE,yCAAqC;
|
|
1
|
+
{"version":3,"file":"AssetsController.d.mts","sourceRoot":"","sources":["../src/AssetsController.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,7 @@ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (
|
|
|
9
9
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
10
10
|
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
11
11
|
};
|
|
12
|
-
var _AssetsController_instances, _AssetsController_isEnabled, _AssetsController_isBasicFunctionality, _AssetsController_defaultUpdateInterval,
|
|
12
|
+
var _AssetsController_instances, _AssetsController_isEnabled, _AssetsController_isBasicFunctionality, _AssetsController_defaultUpdateInterval, _AssetsController_trackMetaMetricsEvent, _AssetsController_firstInitFetchReported, _AssetsController_controllerMutex, _AssetsController_activeSubscriptions, _AssetsController_enabledChains, _AssetsController_selectedAccounts_get, _AssetsController_backendWebsocketDataSource, _AssetsController_accountsApiDataSource, _AssetsController_snapDataSource, _AssetsController_rpcDataSource, _AssetsController_allBalanceDataSources_get, _AssetsController_priceDataSource, _AssetsController_detectionMiddleware, _AssetsController_tokenDataSource, _AssetsController_unsubscribeBasicFunctionality, _AssetsController_initializeState, _AssetsController_extractEnabledChains, _AssetsController_normalizeChainReference, _AssetsController_subscribeToEvents, _AssetsController_registerActionHandlers, _AssetsController_executeMiddlewares, _AssetsController_updateState, _AssetsController_getAssetsFromState, _AssetsController_tokenStandardToAssetType, _AssetsController_start, _AssetsController_stop, _AssetsController_subscribeAssets, _AssetsController_subscribeAssetsBalance, _AssetsController_buildChainToAccountsMap, _AssetsController_subscribeDataSource, _AssetsController_unsubscribeDataSource, _AssetsController_buildDataRequest, _AssetsController_getEnabledChainsForAccount, _AssetsController_handleAccountGroupChanged, _AssetsController_handleEnabledNetworksChanged;
|
|
13
13
|
import { BaseController } from "@metamask/base-controller";
|
|
14
14
|
import { parseCaipAssetType } from "@metamask/utils";
|
|
15
15
|
import { Mutex } from "async-mutex";
|
|
@@ -21,7 +21,6 @@ import { BackendWebsocketDataSource } from "./data-sources/BackendWebsocketDataS
|
|
|
21
21
|
import { PriceDataSource } from "./data-sources/PriceDataSource.mjs";
|
|
22
22
|
import { RpcDataSource } from "./data-sources/RpcDataSource.mjs";
|
|
23
23
|
import { SnapDataSource } from "./data-sources/SnapDataSource.mjs";
|
|
24
|
-
import { StakedBalanceDataSource } from "./data-sources/StakedBalanceDataSource.mjs";
|
|
25
24
|
import { TokenDataSource } from "./data-sources/TokenDataSource.mjs";
|
|
26
25
|
import { projectLogger, createModuleLogger } from "./logger.mjs";
|
|
27
26
|
import { DetectionMiddleware } from "./middlewares/DetectionMiddleware.mjs";
|
|
@@ -41,9 +40,6 @@ const MESSENGER_EXPOSED_METHODS = [
|
|
|
41
40
|
'getCustomAssets',
|
|
42
41
|
'hideAsset',
|
|
43
42
|
'unhideAsset',
|
|
44
|
-
'refreshBalances',
|
|
45
|
-
'refreshDetectedTokens',
|
|
46
|
-
'refreshStakedBalance',
|
|
47
43
|
];
|
|
48
44
|
/** Default polling interval hint for data sources (30 seconds) */
|
|
49
45
|
const DEFAULT_POLLING_INTERVAL_MS = 30000;
|
|
@@ -180,7 +176,7 @@ function normalizeResponse(response) {
|
|
|
180
176
|
* - The controller does NOT manage polling - it simply receives pushed updates
|
|
181
177
|
*/
|
|
182
178
|
export class AssetsController extends BaseController {
|
|
183
|
-
constructor({ messenger, state = {}, defaultUpdateInterval = DEFAULT_POLLING_INTERVAL_MS, isEnabled = () => true, isBasicFunctionality, subscribeToBasicFunctionalityChange, queryApiClient, rpcDataSourceConfig, trackMetaMetricsEvent, accountsApiDataSourceConfig, priceDataSourceConfig,
|
|
179
|
+
constructor({ messenger, state = {}, defaultUpdateInterval = DEFAULT_POLLING_INTERVAL_MS, isEnabled = () => true, isBasicFunctionality, subscribeToBasicFunctionalityChange, queryApiClient, rpcDataSourceConfig, trackMetaMetricsEvent, accountsApiDataSourceConfig, priceDataSourceConfig, }) {
|
|
184
180
|
super({
|
|
185
181
|
name: CONTROLLER_NAME,
|
|
186
182
|
messenger,
|
|
@@ -197,8 +193,6 @@ export class AssetsController extends BaseController {
|
|
|
197
193
|
_AssetsController_isBasicFunctionality.set(this, void 0);
|
|
198
194
|
/** Default update interval hint passed to data sources */
|
|
199
195
|
_AssetsController_defaultUpdateInterval.set(this, void 0);
|
|
200
|
-
/** Price polling interval from priceDataSourceConfig (overrides default when set). */
|
|
201
|
-
_AssetsController_pricePollInterval.set(this, void 0);
|
|
202
196
|
/** Optional callback for first init/fetch MetaMetrics (duration). */
|
|
203
197
|
_AssetsController_trackMetaMetricsEvent.set(this, void 0);
|
|
204
198
|
/** Whether we have already reported first init fetch for this session (reset on #stop). */
|
|
@@ -217,24 +211,16 @@ export class AssetsController extends BaseController {
|
|
|
217
211
|
_AssetsController_accountsApiDataSource.set(this, void 0);
|
|
218
212
|
_AssetsController_snapDataSource.set(this, void 0);
|
|
219
213
|
_AssetsController_rpcDataSource.set(this, void 0);
|
|
220
|
-
_AssetsController_stakedBalanceDataSource.set(this, void 0);
|
|
221
214
|
_AssetsController_priceDataSource.set(this, void 0);
|
|
222
215
|
_AssetsController_detectionMiddleware.set(this, void 0);
|
|
223
216
|
_AssetsController_tokenDataSource.set(this, void 0);
|
|
224
217
|
_AssetsController_unsubscribeBasicFunctionality.set(this, null);
|
|
225
|
-
_AssetsController_constructionState.set(this, { initialized: false });
|
|
226
218
|
__classPrivateFieldSet(this, _AssetsController_isEnabled, isEnabled(), "f");
|
|
227
219
|
__classPrivateFieldSet(this, _AssetsController_isBasicFunctionality, isBasicFunctionality ?? (() => true), "f");
|
|
228
220
|
__classPrivateFieldSet(this, _AssetsController_defaultUpdateInterval, defaultUpdateInterval, "f");
|
|
229
|
-
__classPrivateFieldSet(this, _AssetsController_pricePollInterval, priceDataSourceConfig?.pollInterval, "f");
|
|
230
221
|
__classPrivateFieldSet(this, _AssetsController_trackMetaMetricsEvent, trackMetaMetricsEvent, "f");
|
|
231
222
|
const rpcConfig = rpcDataSourceConfig ?? {};
|
|
232
|
-
const onActiveChainsUpdated = (dataSourceName, chains, previousChains) =>
|
|
233
|
-
if (!__classPrivateFieldGet(this, _AssetsController_constructionState, "f").initialized) {
|
|
234
|
-
return;
|
|
235
|
-
}
|
|
236
|
-
this.handleActiveChainsUpdate(dataSourceName, chains, previousChains);
|
|
237
|
-
};
|
|
223
|
+
const onActiveChainsUpdated = (dataSourceName, chains, previousChains) => this.handleActiveChainsUpdate(dataSourceName, chains, previousChains);
|
|
238
224
|
__classPrivateFieldSet(this, _AssetsController_backendWebsocketDataSource, new BackendWebsocketDataSource({
|
|
239
225
|
messenger: this.messenger,
|
|
240
226
|
queryApiClient,
|
|
@@ -254,11 +240,6 @@ export class AssetsController extends BaseController {
|
|
|
254
240
|
onActiveChainsUpdated,
|
|
255
241
|
...rpcConfig,
|
|
256
242
|
}), "f");
|
|
257
|
-
__classPrivateFieldSet(this, _AssetsController_stakedBalanceDataSource, new StakedBalanceDataSource({
|
|
258
|
-
messenger: this.messenger,
|
|
259
|
-
onActiveChainsUpdated,
|
|
260
|
-
...stakedBalanceDataSourceConfig,
|
|
261
|
-
}), "f");
|
|
262
243
|
__classPrivateFieldSet(this, _AssetsController_tokenDataSource, new TokenDataSource({
|
|
263
244
|
queryApiClient,
|
|
264
245
|
}), "f");
|
|
@@ -277,8 +258,6 @@ export class AssetsController extends BaseController {
|
|
|
277
258
|
__classPrivateFieldGet(this, _AssetsController_instances, "m", _AssetsController_initializeState).call(this);
|
|
278
259
|
__classPrivateFieldGet(this, _AssetsController_instances, "m", _AssetsController_subscribeToEvents).call(this);
|
|
279
260
|
__classPrivateFieldGet(this, _AssetsController_instances, "m", _AssetsController_registerActionHandlers).call(this);
|
|
280
|
-
__classPrivateFieldGet(this, _AssetsController_constructionState, "f").initialized = true;
|
|
281
|
-
// Subscriptions start only on KeyringController:unlock -> #start(), not here.
|
|
282
261
|
// Subscribe to basic-functionality changes after construction so a synchronous
|
|
283
262
|
// onChange during subscribe cannot run before data sources are initialized.
|
|
284
263
|
if (subscribeToBasicFunctionalityChange) {
|
|
@@ -305,9 +284,6 @@ export class AssetsController extends BaseController {
|
|
|
305
284
|
* @param previousChains - Previous chains; used to compute added/removed.
|
|
306
285
|
*/
|
|
307
286
|
handleActiveChainsUpdate(dataSourceId, activeChains, previousChains) {
|
|
308
|
-
if (!__classPrivateFieldGet(this, _AssetsController_isEnabled, "f")) {
|
|
309
|
-
return;
|
|
310
|
-
}
|
|
311
287
|
log('Data source active chains changed', {
|
|
312
288
|
dataSourceId,
|
|
313
289
|
chainCount: activeChains.length,
|
|
@@ -361,16 +337,11 @@ export class AssetsController extends BaseController {
|
|
|
361
337
|
__classPrivateFieldGet(this, _AssetsController_accountsApiDataSource, "f"),
|
|
362
338
|
__classPrivateFieldGet(this, _AssetsController_snapDataSource, "f"),
|
|
363
339
|
__classPrivateFieldGet(this, _AssetsController_rpcDataSource, "f"),
|
|
364
|
-
__classPrivateFieldGet(this, _AssetsController_stakedBalanceDataSource, "f"),
|
|
365
340
|
__classPrivateFieldGet(this, _AssetsController_detectionMiddleware, "f"),
|
|
366
341
|
__classPrivateFieldGet(this, _AssetsController_tokenDataSource, "f"),
|
|
367
342
|
__classPrivateFieldGet(this, _AssetsController_priceDataSource, "f"),
|
|
368
343
|
]
|
|
369
|
-
: [
|
|
370
|
-
__classPrivateFieldGet(this, _AssetsController_rpcDataSource, "f"),
|
|
371
|
-
__classPrivateFieldGet(this, _AssetsController_stakedBalanceDataSource, "f"),
|
|
372
|
-
__classPrivateFieldGet(this, _AssetsController_detectionMiddleware, "f"),
|
|
373
|
-
];
|
|
344
|
+
: [__classPrivateFieldGet(this, _AssetsController_rpcDataSource, "f"), __classPrivateFieldGet(this, _AssetsController_detectionMiddleware, "f")];
|
|
374
345
|
const { response, durationByDataSource } = await __classPrivateFieldGet(this, _AssetsController_instances, "m", _AssetsController_executeMiddlewares).call(this, sources, request);
|
|
375
346
|
await __classPrivateFieldGet(this, _AssetsController_instances, "m", _AssetsController_updateState).call(this, response);
|
|
376
347
|
if (__classPrivateFieldGet(this, _AssetsController_trackMetaMetricsEvent, "f") && !__classPrivateFieldGet(this, _AssetsController_firstInitFetchReported, "f")) {
|
|
@@ -426,28 +397,6 @@ export class AssetsController extends BaseController {
|
|
|
426
397
|
}
|
|
427
398
|
return result;
|
|
428
399
|
}
|
|
429
|
-
/**
|
|
430
|
-
* Refresh balances from RPC for selected accounts/chains and update state.
|
|
431
|
-
* Exposed for UI (e.g. pull-to-refresh). Only used when RPC is the data source;
|
|
432
|
-
* websocket/API update automatically. Also triggered on transaction events (RPC path).
|
|
433
|
-
*/
|
|
434
|
-
async refreshBalances() {
|
|
435
|
-
await __classPrivateFieldGet(this, _AssetsController_rpcDataSource, "f").refreshBalances();
|
|
436
|
-
}
|
|
437
|
-
/**
|
|
438
|
-
* Run token detection for selected accounts/chains (RPC path) and update state.
|
|
439
|
-
* Exposed for UI. Only used when RPC is the data source; websocket/API update automatically.
|
|
440
|
-
*/
|
|
441
|
-
async refreshDetectedTokens() {
|
|
442
|
-
await __classPrivateFieldGet(this, _AssetsController_rpcDataSource, "f").refreshDetectedTokens();
|
|
443
|
-
}
|
|
444
|
-
/**
|
|
445
|
-
* Refresh staked balances for all subscribed accounts/chains and update state.
|
|
446
|
-
* Exposed for UI. Also triggered automatically on transaction events.
|
|
447
|
-
*/
|
|
448
|
-
async refreshStakedBalance() {
|
|
449
|
-
await __classPrivateFieldGet(this, _AssetsController_stakedBalanceDataSource, "f").refreshStakedBalance();
|
|
450
|
-
}
|
|
451
400
|
// ============================================================================
|
|
452
401
|
// CUSTOM ASSETS MANAGEMENT
|
|
453
402
|
// ============================================================================
|
|
@@ -572,7 +521,7 @@ export class AssetsController extends BaseController {
|
|
|
572
521
|
if (!__classPrivateFieldGet(this, _AssetsController_isBasicFunctionality, "f").call(this)) {
|
|
573
522
|
return;
|
|
574
523
|
}
|
|
575
|
-
const { updateInterval = __classPrivateFieldGet(this,
|
|
524
|
+
const { updateInterval = __classPrivateFieldGet(this, _AssetsController_defaultUpdateInterval, "f") } = options;
|
|
576
525
|
const subscriptionKey = 'ds:PriceDataSource';
|
|
577
526
|
const existingSubscription = __classPrivateFieldGet(this, _AssetsController_activeSubscriptions, "f").get(subscriptionKey);
|
|
578
527
|
const isUpdate = existingSubscription !== undefined;
|
|
@@ -660,7 +609,6 @@ export class AssetsController extends BaseController {
|
|
|
660
609
|
__classPrivateFieldGet(this, _AssetsController_accountsApiDataSource, "f")?.destroy?.();
|
|
661
610
|
__classPrivateFieldGet(this, _AssetsController_snapDataSource, "f")?.destroy?.();
|
|
662
611
|
__classPrivateFieldGet(this, _AssetsController_rpcDataSource, "f")?.destroy?.();
|
|
663
|
-
__classPrivateFieldGet(this, _AssetsController_stakedBalanceDataSource, "f")?.destroy?.();
|
|
664
612
|
// Stop all active subscriptions
|
|
665
613
|
__classPrivateFieldGet(this, _AssetsController_instances, "m", _AssetsController_stop).call(this);
|
|
666
614
|
if (__classPrivateFieldGet(this, _AssetsController_unsubscribeBasicFunctionality, "f")) {
|
|
@@ -677,12 +625,9 @@ export class AssetsController extends BaseController {
|
|
|
677
625
|
this.messenger.unregisterActionHandler('AssetsController:getCustomAssets');
|
|
678
626
|
this.messenger.unregisterActionHandler('AssetsController:hideAsset');
|
|
679
627
|
this.messenger.unregisterActionHandler('AssetsController:unhideAsset');
|
|
680
|
-
this.messenger.unregisterActionHandler('AssetsController:refreshBalances');
|
|
681
|
-
this.messenger.unregisterActionHandler('AssetsController:refreshDetectedTokens');
|
|
682
|
-
this.messenger.unregisterActionHandler('AssetsController:refreshStakedBalance');
|
|
683
628
|
}
|
|
684
629
|
}
|
|
685
|
-
_AssetsController_isEnabled = new WeakMap(), _AssetsController_isBasicFunctionality = new WeakMap(), _AssetsController_defaultUpdateInterval = new WeakMap(),
|
|
630
|
+
_AssetsController_isEnabled = new WeakMap(), _AssetsController_isBasicFunctionality = new WeakMap(), _AssetsController_defaultUpdateInterval = new WeakMap(), _AssetsController_trackMetaMetricsEvent = new WeakMap(), _AssetsController_firstInitFetchReported = new WeakMap(), _AssetsController_controllerMutex = new WeakMap(), _AssetsController_activeSubscriptions = new WeakMap(), _AssetsController_enabledChains = new WeakMap(), _AssetsController_backendWebsocketDataSource = new WeakMap(), _AssetsController_accountsApiDataSource = new WeakMap(), _AssetsController_snapDataSource = new WeakMap(), _AssetsController_rpcDataSource = new WeakMap(), _AssetsController_priceDataSource = new WeakMap(), _AssetsController_detectionMiddleware = new WeakMap(), _AssetsController_tokenDataSource = new WeakMap(), _AssetsController_unsubscribeBasicFunctionality = new WeakMap(), _AssetsController_instances = new WeakSet(), _AssetsController_selectedAccounts_get = function _AssetsController_selectedAccounts_get() {
|
|
686
631
|
return this.messenger.call('AccountTreeController:getAccountsFromSelectedAccountGroup');
|
|
687
632
|
}, _AssetsController_allBalanceDataSources_get = function _AssetsController_allBalanceDataSources_get() {
|
|
688
633
|
return [
|
|
@@ -997,17 +942,13 @@ async function _AssetsController_updateState(response) {
|
|
|
997
942
|
this.unsubscribeAssetsPrice();
|
|
998
943
|
// Stop balance subscriptions by properly notifying data sources via messenger
|
|
999
944
|
// This ensures data sources stop their polling timers.
|
|
1000
|
-
// Use #allBalanceDataSources
|
|
1001
|
-
//
|
|
1002
|
-
const allSources = [
|
|
1003
|
-
...__classPrivateFieldGet(this, _AssetsController_instances, "a", _AssetsController_allBalanceDataSources_get),
|
|
1004
|
-
__classPrivateFieldGet(this, _AssetsController_stakedBalanceDataSource, "f"),
|
|
1005
|
-
];
|
|
945
|
+
// Use #allBalanceDataSources so we unsubscribe from every source that may have
|
|
946
|
+
// been subscribed (e.g. when switching from full to basic functionality).
|
|
1006
947
|
const subscriptionKeys = [...__classPrivateFieldGet(this, _AssetsController_activeSubscriptions, "f").keys()];
|
|
1007
948
|
for (const subscriptionKey of subscriptionKeys) {
|
|
1008
949
|
if (subscriptionKey.startsWith('ds:')) {
|
|
1009
950
|
const sourceId = subscriptionKey.slice(3);
|
|
1010
|
-
const source =
|
|
951
|
+
const source = __classPrivateFieldGet(this, _AssetsController_instances, "a", _AssetsController_allBalanceDataSources_get).find((ds) => ds.getName() === sourceId);
|
|
1011
952
|
if (source) {
|
|
1012
953
|
__classPrivateFieldGet(this, _AssetsController_instances, "m", _AssetsController_unsubscribeDataSource).call(this, source);
|
|
1013
954
|
}
|
|
@@ -1022,10 +963,6 @@ async function _AssetsController_updateState(response) {
|
|
|
1022
963
|
__classPrivateFieldGet(this, _AssetsController_instances, "m", _AssetsController_subscribeAssetsBalance).call(this, __classPrivateFieldGet(this, _AssetsController_instances, "a", _AssetsController_selectedAccounts_get), [
|
|
1023
964
|
...__classPrivateFieldGet(this, _AssetsController_enabledChains, "f"),
|
|
1024
965
|
]);
|
|
1025
|
-
// Subscribe to staked balance updates (separate from regular balance chain-claiming)
|
|
1026
|
-
__classPrivateFieldGet(this, _AssetsController_instances, "m", _AssetsController_subscribeStakedBalance).call(this, __classPrivateFieldGet(this, _AssetsController_instances, "a", _AssetsController_selectedAccounts_get), [
|
|
1027
|
-
...__classPrivateFieldGet(this, _AssetsController_enabledChains, "f"),
|
|
1028
|
-
]);
|
|
1029
966
|
// Subscribe to price updates for all assets held by selected accounts
|
|
1030
967
|
this.subscribeAssetsPrice(__classPrivateFieldGet(this, _AssetsController_instances, "a", _AssetsController_selectedAccounts_get), [...__classPrivateFieldGet(this, _AssetsController_enabledChains, "f")]);
|
|
1031
968
|
}, _AssetsController_subscribeAssetsBalance = function _AssetsController_subscribeAssetsBalance(accounts, chainIds) {
|
|
@@ -1056,18 +993,6 @@ async function _AssetsController_updateState(response) {
|
|
|
1056
993
|
__classPrivateFieldGet(this, _AssetsController_instances, "m", _AssetsController_subscribeDataSource).call(this, source, accountsForSource, assignedChains);
|
|
1057
994
|
}
|
|
1058
995
|
}
|
|
1059
|
-
}, _AssetsController_subscribeStakedBalance = function _AssetsController_subscribeStakedBalance(accounts, chainIds) {
|
|
1060
|
-
const source = __classPrivateFieldGet(this, _AssetsController_stakedBalanceDataSource, "f");
|
|
1061
|
-
if (!source) {
|
|
1062
|
-
return;
|
|
1063
|
-
}
|
|
1064
|
-
const availableChains = new Set(source.getActiveChainsSync());
|
|
1065
|
-
const assignedChains = chainIds.filter((chainId) => availableChains.has(chainId));
|
|
1066
|
-
if (assignedChains.length === 0) {
|
|
1067
|
-
__classPrivateFieldGet(this, _AssetsController_instances, "m", _AssetsController_unsubscribeDataSource).call(this, source);
|
|
1068
|
-
return;
|
|
1069
|
-
}
|
|
1070
|
-
__classPrivateFieldGet(this, _AssetsController_instances, "m", _AssetsController_subscribeDataSource).call(this, source, accounts, assignedChains);
|
|
1071
996
|
}, _AssetsController_buildChainToAccountsMap = function _AssetsController_buildChainToAccountsMap(accounts, chainsToSubscribe) {
|
|
1072
997
|
const chainToAccounts = new Map();
|
|
1073
998
|
for (const account of accounts) {
|