@metamask-previews/assets-controller 11.2.1-preview-97f066f → 11.2.1-preview-2dc3d26a4
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 +6 -5
- package/dist/AssetsController.cjs +23 -51
- package/dist/AssetsController.cjs.map +1 -1
- package/dist/AssetsController.d.cts +3 -3
- package/dist/AssetsController.d.cts.map +1 -1
- package/dist/AssetsController.d.mts +3 -3
- package/dist/AssetsController.d.mts.map +1 -1
- package/dist/AssetsController.mjs +23 -51
- package/dist/AssetsController.mjs.map +1 -1
- package/dist/data-sources/AccountActivityDataSource.cjs +262 -0
- package/dist/data-sources/AccountActivityDataSource.cjs.map +1 -0
- package/dist/data-sources/AccountActivityDataSource.d.cts +80 -0
- package/dist/data-sources/AccountActivityDataSource.d.cts.map +1 -0
- package/dist/data-sources/AccountActivityDataSource.d.mts +80 -0
- package/dist/data-sources/AccountActivityDataSource.d.mts.map +1 -0
- package/dist/data-sources/AccountActivityDataSource.mjs +254 -0
- package/dist/data-sources/AccountActivityDataSource.mjs.map +1 -0
- package/dist/data-sources/index.cjs +4 -4
- package/dist/data-sources/index.cjs.map +1 -1
- package/dist/data-sources/index.d.cts +1 -1
- package/dist/data-sources/index.d.cts.map +1 -1
- package/dist/data-sources/index.d.mts +1 -1
- package/dist/data-sources/index.d.mts.map +1 -1
- package/dist/data-sources/index.mjs +1 -1
- package/dist/data-sources/index.mjs.map +1 -1
- package/dist/index.cjs +22 -26
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +0 -2
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.mts +0 -2
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +0 -2
- package/dist/index.mjs.map +1 -1
- package/dist/middlewares/CustomAssetGraduationMiddleware.cjs +1 -1
- package/dist/middlewares/CustomAssetGraduationMiddleware.cjs.map +1 -1
- package/dist/middlewares/CustomAssetGraduationMiddleware.mjs +1 -1
- package/dist/middlewares/CustomAssetGraduationMiddleware.mjs.map +1 -1
- package/package.json +1 -1
- package/dist/data-sources/BackendWebsocketDataSource.cjs +0 -597
- package/dist/data-sources/BackendWebsocketDataSource.cjs.map +0 -1
- package/dist/data-sources/BackendWebsocketDataSource.d.cts +0 -65
- package/dist/data-sources/BackendWebsocketDataSource.d.cts.map +0 -1
- package/dist/data-sources/BackendWebsocketDataSource.d.mts +0 -65
- package/dist/data-sources/BackendWebsocketDataSource.d.mts.map +0 -1
- package/dist/data-sources/BackendWebsocketDataSource.mjs +0 -592
- package/dist/data-sources/BackendWebsocketDataSource.mjs.map +0 -1
- package/dist/utils/processAccountActivityBalanceUpdates.cjs +0 -54
- package/dist/utils/processAccountActivityBalanceUpdates.cjs.map +0 -1
- package/dist/utils/processAccountActivityBalanceUpdates.d.cts +0 -13
- package/dist/utils/processAccountActivityBalanceUpdates.d.cts.map +0 -1
- package/dist/utils/processAccountActivityBalanceUpdates.d.mts +0 -13
- package/dist/utils/processAccountActivityBalanceUpdates.d.mts.map +0 -1
- package/dist/utils/processAccountActivityBalanceUpdates.mjs +0 -47
- package/dist/utils/processAccountActivityBalanceUpdates.mjs.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -16,6 +16,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
16
16
|
- Bump `@metamask/keyring-api` from `^23.5.0` to `^23.7.0` ([#9676](https://github.com/MetaMask/core/pull/9676))
|
|
17
17
|
- Bump `@metamask/keyring-internal-api` from `^11.0.1` to `^11.0.2` ([#9676](https://github.com/MetaMask/core/pull/9676))
|
|
18
18
|
- Bump `@metamask/keyring-snap-client` from `^9.2.0` to `^9.2.1` ([#9676](https://github.com/MetaMask/core/pull/9676))
|
|
19
|
+
- `AccountActivityDataSource` is now the highest-priority balance data source and participates in chain-claiming: chains it reports as "up" (from `AccountActivityService:statusChanged`) are claimed first so the polling data sources (`AccountsApiDataSource`/`RpcDataSource`) do not also poll them ([#9517](https://github.com/MetaMask/core/pull/9517))
|
|
20
|
+
- `AssetsController` no longer references `BackendWebSocketService` actions/events; real-time balances and chain status are consumed exclusively from `AccountActivityService`
|
|
21
|
+
|
|
22
|
+
### Removed
|
|
23
|
+
|
|
24
|
+
- **BREAKING:** Remove `BackendWebsocketDataSource` and its factory/types (`BackendWebsocketDataSource`, `createBackendWebsocketDataSource`, `BackendWebsocketDataSourceOptions`, `BackendWebsocketDataSourceState`). Real-time balance updates and per-chain status are now consumed from `AccountActivityService` via `AccountActivityDataSource`, which manages the WebSocket connection and subscriptions. Consumers no longer need to delegate `BackendWebSocketService` actions/events to the `AssetsController` messenger ([#9517](https://github.com/MetaMask/core/pull/9517))
|
|
19
25
|
|
|
20
26
|
### Fixed
|
|
21
27
|
|
|
@@ -69,11 +75,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
69
75
|
- `TokensApiClient` (used by `RpcDataSource` / `TokenDetector`) now sets the token-list `occurrenceFloor` query param from the same Token API `GET /v1/suggestedOccurrenceFloors` endpoint (cached 1h), replacing the hardcoded Linea/MegaETH/Tempo special cases. Missing chains or failed fetches fall back to 3 ([#9537](https://github.com/MetaMask/core/pull/9537))
|
|
70
76
|
- Bump `@metamask/network-enablement-controller` from `^5.5.0` to `^5.6.0` ([#9520](https://github.com/MetaMask/core/pull/9520))
|
|
71
77
|
- Bump `@metamask/phishing-controller` from `^17.2.1` to `^17.3.0` ([#9532](https://github.com/MetaMask/core/pull/9532))
|
|
72
|
-
- Bump `@metamask/transaction-controller` from `^69.0.0` to `^69.1.0` ([#9568](https://github.com/MetaMask/core/pull/9568))
|
|
73
|
-
|
|
74
|
-
### Fixed
|
|
75
|
-
|
|
76
|
-
- `TokenDataSource` now also fetches token metadata for assets present in `assetsBalance` that are missing `assetsInfo` (previously only detected assets without metadata were enriched) ([#9547](https://github.com/MetaMask/core/pull/9547))
|
|
77
78
|
|
|
78
79
|
## [11.0.0]
|
|
79
80
|
|
|
@@ -13,7 +13,7 @@ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (
|
|
|
13
13
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
14
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
15
|
};
|
|
16
|
-
var _AssetsController_instances, _AssetsController_isEnabled, _AssetsController_isBasicFunctionality, _AssetsController_defaultUpdateInterval, _AssetsController_trace, _AssetsController_captureException, _AssetsController_firstInitFetchReported, _AssetsController_stateSizeReported, _AssetsController_emitTrace, _AssetsController_emitStateSizeTrace, _AssetsController_uiOpen, _AssetsController_keyringUnlocked, _AssetsController_controllerMutex, _AssetsController_accountRefreshMutex, _AssetsController_activeSubscriptions, _AssetsController_enabledChains, _AssetsController_lastKnownAccountIds, _AssetsController_getSelectedAccounts,
|
|
16
|
+
var _AssetsController_instances, _AssetsController_isEnabled, _AssetsController_isBasicFunctionality, _AssetsController_defaultUpdateInterval, _AssetsController_trace, _AssetsController_captureException, _AssetsController_firstInitFetchReported, _AssetsController_stateSizeReported, _AssetsController_emitTrace, _AssetsController_emitStateSizeTrace, _AssetsController_uiOpen, _AssetsController_keyringUnlocked, _AssetsController_controllerMutex, _AssetsController_accountRefreshMutex, _AssetsController_activeSubscriptions, _AssetsController_enabledChains, _AssetsController_lastKnownAccountIds, _AssetsController_getSelectedAccounts, _AssetsController_accountActivityDataSource, _AssetsController_accountsApiDataSource, _AssetsController_snapDataSource, _AssetsController_rpcDataSource, _AssetsController_stakedBalanceDataSource, _AssetsController_allBalanceDataSources_get, _AssetsController_priceDataSource, _AssetsController_detectionMiddleware, _AssetsController_customAssetGraduationMiddleware, _AssetsController_rpcFallbackMiddleware, _AssetsController_tokenDataSource, _AssetsController_unsubscribeBasicFunctionality, _AssetsController_queryApiClient, _AssetsController_onActiveChainsUpdated, _AssetsController_initializeNativeAssetsMap, _AssetsController_initializeState, _AssetsController_extractEnabledChains, _AssetsController_normalizeChainReference, _AssetsController_subscribeToEvents, _AssetsController_onUnapprovedTransactionAdded, _AssetsController_onTransactionConfirmed, _AssetsController_updateActive, _AssetsController_handleAccountTreeStateChange, _AssetsController_runAccountTreeRefresh, _AssetsController_runStartupRefresh, _AssetsController_registerActionHandlers, _AssetsController_handleActiveChainsUpdate, _AssetsController_executeMiddlewares, _AssetsController_fetchMissingPricesWithoutCache, _AssetsController_getNativeAssetMap, _AssetsController_isNativeAsset, _AssetsController_getAssetType, _AssetsController_resolveNativeAssetIds, _AssetsController_getNativeAssetIdsForEnabledChains, _AssetsController_getNativeAssetIdsForAccount, _AssetsController_getSlowPipelineChainIds, _AssetsController_ensureNativeBalancesDefaultZero, _AssetsController_ensureDefaultTrackedAssetsSeeded, _AssetsController_updateState, _AssetsController_getAssetsFromState, _AssetsController_getAssetFromState, _AssetsController_shouldHideNativeToken, _AssetsController_tokenStandardToAssetType, _AssetsController_start, _AssetsController_stop, _AssetsController_subscribeAssets, _AssetsController_subscribeAssetsBalance, _AssetsController_subscribeRpcCustomAssetsSupplement, _AssetsController_unsubscribeBySubscriptionKey, _AssetsController_subscribeStakedBalance, _AssetsController_buildChainToAccountsMap, _AssetsController_subscribeDataSource, _AssetsController_unsubscribeDataSource, _AssetsController_buildDataRequest, _AssetsController_getEnabledChainsForAccount, _AssetsController_handleAccountGroupChanged, _AssetsController_handleEnabledNetworksChanged, _AssetsController_handleNetworkAdded, _AssetsController_refreshActiveChainsOnNetworkSwitch, _AssetsController_getSelectedEvmChainIdFromNetworkState, _AssetsController_handleNetworkDidChange, _AssetsController_refreshAssetsAfterNetworkChange, _AssetsController_refreshAssetsAfterNetworkAdded;
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
exports.AssetsController = exports.getDefaultAssetsControllerState = void 0;
|
|
19
19
|
const base_controller_1 = require("@metamask/base-controller");
|
|
@@ -22,8 +22,8 @@ const utils_1 = require("@metamask/utils");
|
|
|
22
22
|
const async_mutex_1 = require("async-mutex");
|
|
23
23
|
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
24
24
|
const lodash_1 = require("lodash");
|
|
25
|
+
const AccountActivityDataSource_js_1 = require("./data-sources/AccountActivityDataSource.cjs");
|
|
25
26
|
const AccountsApiDataSource_js_1 = require("./data-sources/AccountsApiDataSource.cjs");
|
|
26
|
-
const BackendWebsocketDataSource_js_1 = require("./data-sources/BackendWebsocketDataSource.cjs");
|
|
27
27
|
const assets_js_1 = require("./data-sources/evm-rpc-services/utils/assets.cjs");
|
|
28
28
|
const PriceDataSource_js_1 = require("./data-sources/PriceDataSource.cjs");
|
|
29
29
|
const RpcDataSource_js_1 = require("./data-sources/RpcDataSource.cjs");
|
|
@@ -41,7 +41,6 @@ const healAssetsInfoMetadata_js_1 = require("./migrations/healAssetsInfoMetadata
|
|
|
41
41
|
const constants_js_1 = require("./utils/constants.cjs");
|
|
42
42
|
const customAssetsRpcSupplement_js_1 = require("./utils/customAssetsRpcSupplement.cjs");
|
|
43
43
|
const index_js_1 = require("./utils/index.cjs");
|
|
44
|
-
const processAccountActivityBalanceUpdates_js_1 = require("./utils/processAccountActivityBalanceUpdates.cjs");
|
|
45
44
|
const NATIVE_ASSETS_QUERY_KEY = ['nativeAssets'];
|
|
46
45
|
/** Stable empty map so memoized formatters are not busted by `?? {}` identity churn. */
|
|
47
46
|
const EMPTY_NATIVE_ASSET_MAP = {};
|
|
@@ -310,7 +309,7 @@ class AssetsController extends base_controller_1.BaseController {
|
|
|
310
309
|
* re-subscriptions when the account set hasn't actually changed.
|
|
311
310
|
*/
|
|
312
311
|
_AssetsController_lastKnownAccountIds.set(this, new Set());
|
|
313
|
-
|
|
312
|
+
_AssetsController_accountActivityDataSource.set(this, void 0);
|
|
314
313
|
_AssetsController_accountsApiDataSource.set(this, void 0);
|
|
315
314
|
_AssetsController_snapDataSource.set(this, void 0);
|
|
316
315
|
_AssetsController_rpcDataSource.set(this, void 0);
|
|
@@ -351,11 +350,11 @@ class AssetsController extends base_controller_1.BaseController {
|
|
|
351
350
|
});
|
|
352
351
|
}
|
|
353
352
|
}, "f");
|
|
354
|
-
__classPrivateFieldSet(this,
|
|
353
|
+
__classPrivateFieldSet(this, _AssetsController_accountActivityDataSource, new AccountActivityDataSource_js_1.AccountActivityDataSource({
|
|
355
354
|
messenger: this.messenger,
|
|
356
|
-
queryApiClient,
|
|
357
355
|
onActiveChainsUpdated: __classPrivateFieldGet(this, _AssetsController_onActiveChainsUpdated, "f"),
|
|
358
356
|
getAssetType: (assetId) => __classPrivateFieldGet(this, _AssetsController_instances, "m", _AssetsController_getAssetType).call(this, assetId),
|
|
357
|
+
onAssetsUpdate: (response, request) => this.handleAssetsUpdate(response, __classPrivateFieldGet(this, _AssetsController_accountActivityDataSource, "f").getName(), request),
|
|
359
358
|
}), "f");
|
|
360
359
|
__classPrivateFieldSet(this, _AssetsController_accountsApiDataSource, new AccountsApiDataSource_js_1.AccountsApiDataSource({
|
|
361
360
|
messenger: this.messenger,
|
|
@@ -941,12 +940,12 @@ class AssetsController extends base_controller_1.BaseController {
|
|
|
941
940
|
...resolvedRequest,
|
|
942
941
|
dataTypes: resolvedRequest.dataTypes.filter((dt) => dt !== 'metadata' && dt !== 'price'),
|
|
943
942
|
};
|
|
944
|
-
// Graduate custom assets only when AccountsAPI /
|
|
945
|
-
// RPC already fetches custom assets on purpose, and Snap handles
|
|
946
|
-
// chains the rule does not apply to, so skip the middleware for
|
|
943
|
+
// Graduate custom assets only when AccountsAPI / AccountActivity reports
|
|
944
|
+
// them. RPC already fetches custom assets on purpose, and Snap handles
|
|
945
|
+
// non-EVM chains the rule does not apply to, so skip the middleware for
|
|
946
|
+
// those.
|
|
947
947
|
const shouldGraduateCustomAssets = sourceId === 'AccountsApiDataSource' ||
|
|
948
|
-
sourceId === '
|
|
949
|
-
sourceId === 'AccountActivityService';
|
|
948
|
+
sourceId === 'AccountActivityDataSource';
|
|
950
949
|
const enrichmentSources = [
|
|
951
950
|
...(shouldGraduateCustomAssets
|
|
952
951
|
? [__classPrivateFieldGet(this, _AssetsController_customAssetGraduationMiddleware, "f")]
|
|
@@ -984,7 +983,7 @@ class AssetsController extends base_controller_1.BaseController {
|
|
|
984
983
|
subscriptionCount: __classPrivateFieldGet(this, _AssetsController_activeSubscriptions, "f").size,
|
|
985
984
|
});
|
|
986
985
|
// Destroy instantiated data sources
|
|
987
|
-
__classPrivateFieldGet(this,
|
|
986
|
+
__classPrivateFieldGet(this, _AssetsController_accountActivityDataSource, "f")?.destroy?.();
|
|
988
987
|
__classPrivateFieldGet(this, _AssetsController_accountsApiDataSource, "f")?.destroy?.();
|
|
989
988
|
__classPrivateFieldGet(this, _AssetsController_snapDataSource, "f")?.destroy?.();
|
|
990
989
|
__classPrivateFieldGet(this, _AssetsController_rpcDataSource, "f")?.destroy?.();
|
|
@@ -1012,7 +1011,7 @@ class AssetsController extends base_controller_1.BaseController {
|
|
|
1012
1011
|
}
|
|
1013
1012
|
}
|
|
1014
1013
|
exports.AssetsController = AssetsController;
|
|
1015
|
-
_AssetsController_isEnabled = new WeakMap(), _AssetsController_isBasicFunctionality = new WeakMap(), _AssetsController_defaultUpdateInterval = new WeakMap(), _AssetsController_trace = new WeakMap(), _AssetsController_captureException = new WeakMap(), _AssetsController_firstInitFetchReported = new WeakMap(), _AssetsController_stateSizeReported = new WeakMap(), _AssetsController_uiOpen = new WeakMap(), _AssetsController_keyringUnlocked = new WeakMap(), _AssetsController_controllerMutex = new WeakMap(), _AssetsController_accountRefreshMutex = new WeakMap(), _AssetsController_activeSubscriptions = new WeakMap(), _AssetsController_enabledChains = new WeakMap(), _AssetsController_lastKnownAccountIds = new WeakMap(),
|
|
1014
|
+
_AssetsController_isEnabled = new WeakMap(), _AssetsController_isBasicFunctionality = new WeakMap(), _AssetsController_defaultUpdateInterval = new WeakMap(), _AssetsController_trace = new WeakMap(), _AssetsController_captureException = new WeakMap(), _AssetsController_firstInitFetchReported = new WeakMap(), _AssetsController_stateSizeReported = new WeakMap(), _AssetsController_uiOpen = new WeakMap(), _AssetsController_keyringUnlocked = new WeakMap(), _AssetsController_controllerMutex = new WeakMap(), _AssetsController_accountRefreshMutex = new WeakMap(), _AssetsController_activeSubscriptions = new WeakMap(), _AssetsController_enabledChains = new WeakMap(), _AssetsController_lastKnownAccountIds = new WeakMap(), _AssetsController_accountActivityDataSource = new WeakMap(), _AssetsController_accountsApiDataSource = new WeakMap(), _AssetsController_snapDataSource = new WeakMap(), _AssetsController_rpcDataSource = new WeakMap(), _AssetsController_stakedBalanceDataSource = new WeakMap(), _AssetsController_priceDataSource = new WeakMap(), _AssetsController_detectionMiddleware = new WeakMap(), _AssetsController_customAssetGraduationMiddleware = new WeakMap(), _AssetsController_rpcFallbackMiddleware = new WeakMap(), _AssetsController_tokenDataSource = new WeakMap(), _AssetsController_unsubscribeBasicFunctionality = new WeakMap(), _AssetsController_queryApiClient = new WeakMap(), _AssetsController_onActiveChainsUpdated = new WeakMap(), _AssetsController_instances = new WeakSet(), _AssetsController_emitTrace = function _AssetsController_emitTrace(name, data, tags = {
|
|
1016
1015
|
controller: 'AssetsController',
|
|
1017
1016
|
}) {
|
|
1018
1017
|
if (!__classPrivateFieldGet(this, _AssetsController_trace, "f")) {
|
|
@@ -1070,7 +1069,7 @@ _AssetsController_isEnabled = new WeakMap(), _AssetsController_isBasicFunctional
|
|
|
1070
1069
|
return [];
|
|
1071
1070
|
}, _AssetsController_allBalanceDataSources_get = function _AssetsController_allBalanceDataSources_get() {
|
|
1072
1071
|
return [
|
|
1073
|
-
__classPrivateFieldGet(this,
|
|
1072
|
+
__classPrivateFieldGet(this, _AssetsController_accountActivityDataSource, "f"),
|
|
1074
1073
|
__classPrivateFieldGet(this, _AssetsController_accountsApiDataSource, "f"),
|
|
1075
1074
|
__classPrivateFieldGet(this, _AssetsController_snapDataSource, "f"),
|
|
1076
1075
|
__classPrivateFieldGet(this, _AssetsController_rpcDataSource, "f"),
|
|
@@ -1189,12 +1188,6 @@ _AssetsController_isEnabled = new WeakMap(), _AssetsController_isBasicFunctional
|
|
|
1189
1188
|
this.messenger.subscribe('TransactionController:transactionConfirmed', (transactionMeta) => {
|
|
1190
1189
|
__classPrivateFieldGet(this, _AssetsController_instances, "m", _AssetsController_onTransactionConfirmed).call(this, transactionMeta);
|
|
1191
1190
|
});
|
|
1192
|
-
// Real-time post-tx balances from AccountActivityService (same WS payload as
|
|
1193
|
-
// TokenBalancesController; BackendWebsocketDataSource may not receive the
|
|
1194
|
-
// callback when AccountActivityService owns the server subscription).
|
|
1195
|
-
this.messenger.subscribe('AccountActivityService:balanceUpdated', (event) => {
|
|
1196
|
-
__classPrivateFieldGet(this, _AssetsController_instances, "m", _AssetsController_onAccountActivityBalanceUpdated).call(this, event);
|
|
1197
|
-
});
|
|
1198
1191
|
}, _AssetsController_onUnapprovedTransactionAdded = function _AssetsController_onUnapprovedTransactionAdded(transactionMeta) {
|
|
1199
1192
|
const hexChainId = transactionMeta.chainId;
|
|
1200
1193
|
if (!hexChainId) {
|
|
@@ -1237,26 +1230,6 @@ _AssetsController_isEnabled = new WeakMap(), _AssetsController_isBasicFunctional
|
|
|
1237
1230
|
}).catch((error) => {
|
|
1238
1231
|
log('Failed to refresh assets after transaction confirmed', { error });
|
|
1239
1232
|
});
|
|
1240
|
-
}, _AssetsController_onAccountActivityBalanceUpdated = function _AssetsController_onAccountActivityBalanceUpdated({ address, chain, updates, }) {
|
|
1241
|
-
const account = __classPrivateFieldGet(this, _AssetsController_instances, "m", _AssetsController_getSelectedAccounts).call(this).find((a) => a.address.startsWith('0x')
|
|
1242
|
-
? a.address.toLowerCase() === address.toLowerCase()
|
|
1243
|
-
: a.address === address);
|
|
1244
|
-
if (!account) {
|
|
1245
|
-
return;
|
|
1246
|
-
}
|
|
1247
|
-
const chainId = chain;
|
|
1248
|
-
const response = (0, processAccountActivityBalanceUpdates_js_1.processAccountActivityBalanceUpdates)(updates, account.id, (assetId) => __classPrivateFieldGet(this, _AssetsController_instances, "m", _AssetsController_getAssetType).call(this, assetId));
|
|
1249
|
-
if (!response.assetsBalance) {
|
|
1250
|
-
return;
|
|
1251
|
-
}
|
|
1252
|
-
const request = {
|
|
1253
|
-
accountsWithSupportedChains: [{ account, supportedChains: [chainId] }],
|
|
1254
|
-
chainIds: [chainId],
|
|
1255
|
-
dataTypes: ['balance', 'metadata'],
|
|
1256
|
-
};
|
|
1257
|
-
this.handleAssetsUpdate(response, 'AccountActivityService', request).catch((error) => {
|
|
1258
|
-
log('Failed to apply AccountActivityService balance update', { error });
|
|
1259
|
-
});
|
|
1260
1233
|
}, _AssetsController_updateActive = function _AssetsController_updateActive() {
|
|
1261
1234
|
const shouldRun = __classPrivateFieldGet(this, _AssetsController_uiOpen, "f") && __classPrivateFieldGet(this, _AssetsController_keyringUnlocked, "f");
|
|
1262
1235
|
if (shouldRun) {
|
|
@@ -1366,11 +1339,11 @@ async function _AssetsController_runStartupRefresh(accounts) {
|
|
|
1366
1339
|
const previousSet = new Set(previous);
|
|
1367
1340
|
const addedChains = activeChains.filter((ch) => !previousSet.has(ch));
|
|
1368
1341
|
const removedChains = previous.filter((ch) => !activeChains.includes(ch));
|
|
1342
|
+
// Refresh subscriptions to use updated data source availability.
|
|
1343
|
+
// No one-time fetch needed here — #handleEnabledNetworksChanged
|
|
1344
|
+
// handles fetches when the user enables a network, and
|
|
1345
|
+
// #subscribeAssets re-subscribes with the correct chain assignment.
|
|
1369
1346
|
if (addedChains.length > 0 || removedChains.length > 0) {
|
|
1370
|
-
// Refresh subscriptions to use updated data source availability.
|
|
1371
|
-
// No one-time fetch needed here — #handleEnabledNetworksChanged
|
|
1372
|
-
// handles fetches when the user enables a network, and
|
|
1373
|
-
// #subscribeAssets re-subscribes with the correct chain assignment.
|
|
1374
1347
|
__classPrivateFieldGet(this, _AssetsController_instances, "m", _AssetsController_subscribeAssets).call(this);
|
|
1375
1348
|
}
|
|
1376
1349
|
}, _AssetsController_executeMiddlewares =
|
|
@@ -1954,8 +1927,10 @@ async function _AssetsController_executeMiddlewares(sources, request, initialRes
|
|
|
1954
1927
|
}, _AssetsController_subscribeAssetsBalance = function _AssetsController_subscribeAssetsBalance(accounts, chainIds) {
|
|
1955
1928
|
const chainToAccounts = __classPrivateFieldGet(this, _AssetsController_instances, "m", _AssetsController_buildChainToAccountsMap).call(this, accounts, new Set(chainIds));
|
|
1956
1929
|
const remainingChains = new Set(chainToAccounts.keys());
|
|
1957
|
-
// When basic functionality is on, use all balance data sources; when off,
|
|
1958
|
-
|
|
1930
|
+
// When basic functionality is on, use all balance data sources; when off,
|
|
1931
|
+
// RPC only.
|
|
1932
|
+
const isBasicFunctionality = __classPrivateFieldGet(this, _AssetsController_isBasicFunctionality, "f").call(this);
|
|
1933
|
+
const balanceDataSources = isBasicFunctionality
|
|
1959
1934
|
? __classPrivateFieldGet(this, _AssetsController_instances, "a", _AssetsController_allBalanceDataSources_get)
|
|
1960
1935
|
: [__classPrivateFieldGet(this, _AssetsController_rpcDataSource, "f")];
|
|
1961
1936
|
let rpcAssignedChains = new Set();
|
|
@@ -2253,14 +2228,11 @@ async function _AssetsController_handleAccountGroupChanged() {
|
|
|
2253
2228
|
__classPrivateFieldGet(this, _AssetsController_instances, "m", _AssetsController_fetchMissingPricesWithoutCache).call(this, accounts, [caipChainId]);
|
|
2254
2229
|
}, _AssetsController_refreshActiveChainsOnNetworkSwitch =
|
|
2255
2230
|
/**
|
|
2256
|
-
* Refresh data-source `activeChains` after an EVM network switch so API/
|
|
2231
|
+
* Refresh data-source `activeChains` after an EVM network switch so API/Rpc
|
|
2257
2232
|
* chain claiming is not stuck on an empty or stale init-time list.
|
|
2258
2233
|
*/
|
|
2259
2234
|
async function _AssetsController_refreshActiveChainsOnNetworkSwitch() {
|
|
2260
|
-
await
|
|
2261
|
-
__classPrivateFieldGet(this, _AssetsController_accountsApiDataSource, "f").refreshActiveChains(),
|
|
2262
|
-
__classPrivateFieldGet(this, _AssetsController_backendWebsocketDataSource, "f").refreshActiveChains(),
|
|
2263
|
-
]);
|
|
2235
|
+
await __classPrivateFieldGet(this, _AssetsController_accountsApiDataSource, "f").refreshActiveChains();
|
|
2264
2236
|
__classPrivateFieldGet(this, _AssetsController_rpcDataSource, "f").refreshActiveChainsFromNetworkState();
|
|
2265
2237
|
}, _AssetsController_getSelectedEvmChainIdFromNetworkState = function _AssetsController_getSelectedEvmChainIdFromNetworkState(networkState) {
|
|
2266
2238
|
try {
|