@metamask-previews/network-controller 35.0.1-preview-2db395e → 35.0.1-preview-06346349c
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 +5 -0
- package/dist/NetworkController.cjs +36 -4
- package/dist/NetworkController.cjs.map +1 -1
- package/dist/NetworkController.d.cts +7 -5
- package/dist/NetworkController.d.cts.map +1 -1
- package/dist/NetworkController.d.mts +7 -5
- package/dist/NetworkController.d.mts.map +1 -1
- package/dist/NetworkController.mjs +38 -6
- package/dist/NetworkController.mjs.map +1 -1
- package/dist/selectors.cjs +18 -1
- package/dist/selectors.cjs.map +1 -1
- package/dist/selectors.d.cts +10 -0
- package/dist/selectors.d.cts.map +1 -1
- package/dist/selectors.d.mts +10 -0
- package/dist/selectors.d.mts.map +1 -1
- package/dist/selectors.mjs +16 -0
- package/dist/selectors.mjs.map +1 -1
- package/package.json +2 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
### Changed
|
|
11
|
+
|
|
12
|
+
- **BREAKING:** `NetworkControllerMessenger` now requires the `ConfigRegistryController:stateChanged` event and `ConfigRegistryController:getNetworkConfigByCaip2ChainId` action to be delegated from the root messenger ([#9879](https://github.com/MetaMask/core/pull/9879))
|
|
13
|
+
- `NetworkController` now depends on the `ConfigRegistryController` to auto-enable default networks from the registry.
|
|
14
|
+
|
|
10
15
|
## [35.0.1]
|
|
11
16
|
|
|
12
17
|
### Changed
|
|
@@ -36,7 +36,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
36
36
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
37
37
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
38
38
|
};
|
|
39
|
-
var _NetworkController_instances, _NetworkController_ethQuery, _NetworkController_infuraProjectId, _NetworkController_failoverUrls, _NetworkController_previouslySelectedNetworkClientId, _NetworkController_providerProxy, _NetworkController_blockTrackerProxy, _NetworkController_autoManagedNetworkClientRegistry, _NetworkController_autoManagedNetworkClient, _NetworkController_log, _NetworkController_getRpcServiceOptions, _NetworkController_getBlockTrackerOptions, _NetworkController_analyticsOptions, _NetworkController_networkConfigurationsByNetworkClientId, _NetworkController_rpcFailoverMode, _NetworkController_updateRpcFailover, _NetworkController_refreshNetwork, _NetworkController_determineNetworkMetadata, _NetworkController_lookupGivenNetwork, _NetworkController_lookupSelectedNetwork, _NetworkController_updateMetadataForNetwork, _NetworkController_getLatestBlock, _NetworkController_determineEIP1559Compatibility, _NetworkController_validateNetworkFields, _NetworkController_determineNetworkConfigurationToPersist, _NetworkController_registerNetworkClientsAsNeeded, _NetworkController_unregisterNetworkClientsAsNeeded, _NetworkController_updateNetworkConfigurations, _NetworkController_ensureAutoManagedNetworkClientRegistryPopulated, _NetworkController_createAutoManagedNetworkClientRegistry, _NetworkController_applyNetworkSelection;
|
|
39
|
+
var _NetworkController_instances, _NetworkController_ethQuery, _NetworkController_infuraProjectId, _NetworkController_failoverUrls, _NetworkController_previouslySelectedNetworkClientId, _NetworkController_providerProxy, _NetworkController_blockTrackerProxy, _NetworkController_autoManagedNetworkClientRegistry, _NetworkController_autoManagedNetworkClient, _NetworkController_log, _NetworkController_getRpcServiceOptions, _NetworkController_getBlockTrackerOptions, _NetworkController_analyticsOptions, _NetworkController_networkConfigurationsByNetworkClientId, _NetworkController_rpcFailoverMode, _NetworkController_updateRpcFailover, _NetworkController_refreshNetwork, _NetworkController_determineNetworkMetadata, _NetworkController_lookupGivenNetwork, _NetworkController_lookupSelectedNetwork, _NetworkController_updateMetadataForNetwork, _NetworkController_getLatestBlock, _NetworkController_determineEIP1559Compatibility, _NetworkController_validateNetworkFields, _NetworkController_determineNetworkConfigurationToPersist, _NetworkController_registerNetworkClientsAsNeeded, _NetworkController_unregisterNetworkClientsAsNeeded, _NetworkController_updateNetworkConfigurations, _NetworkController_ensureAutoManagedNetworkClientRegistryPopulated, _NetworkController_createAutoManagedNetworkClientRegistry, _NetworkController_applyNetworkSelection, _NetworkController_autoEnableChains;
|
|
40
40
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
41
41
|
exports.NetworkController = exports.selectAvailableNetworkClientIds = exports.getAvailableNetworkClientIds = exports.selectNetworkConfigurations = exports.getNetworkConfigurations = exports.getDefaultNetworkControllerState = exports.knownKeysOf = exports.RpcEndpointType = void 0;
|
|
42
42
|
const base_controller_1 = require("@metamask/base-controller");
|
|
@@ -473,6 +473,7 @@ class NetworkController extends base_controller_1.BaseController {
|
|
|
473
473
|
'RemoteFeatureFlagController:stateChange', (rpcFailoverMode) => {
|
|
474
474
|
__classPrivateFieldGet(this, _NetworkController_instances, "m", _NetworkController_updateRpcFailover).call(this, rpcFailoverMode);
|
|
475
475
|
}, selectors_js_1.getRpcFailoverMode);
|
|
476
|
+
this.messenger.subscribe('ConfigRegistryController:stateChanged', (autoEnabledChains) => __classPrivateFieldGet(this, _NetworkController_instances, "m", _NetworkController_autoEnableChains).call(this, autoEnabledChains), selectors_js_1.getConfigRegistryEvmAutoEnabledChains);
|
|
476
477
|
}
|
|
477
478
|
/**
|
|
478
479
|
* Returns the EthQuery instance for the currently selected network.
|
|
@@ -547,14 +548,16 @@ class NetworkController extends base_controller_1.BaseController {
|
|
|
547
548
|
return customNetworkClient;
|
|
548
549
|
}
|
|
549
550
|
/**
|
|
550
|
-
* Initialize the NetworkController
|
|
551
|
-
* `corePlatformRpcFailoverMode` remote feature flag
|
|
552
|
-
* selection.
|
|
551
|
+
* Initialize the NetworkController:
|
|
552
|
+
* - Apply the RPC failover mode from the `corePlatformRpcFailoverMode` remote feature flag;
|
|
553
|
+
* - Apply the network selection.
|
|
554
|
+
* - Auto-enable any chains that are configured to be auto-enabled in ConfigRegistryController.
|
|
553
555
|
*/
|
|
554
556
|
init() {
|
|
555
557
|
const state = this.messenger.call('RemoteFeatureFlagController:getState');
|
|
556
558
|
__classPrivateFieldGet(this, _NetworkController_instances, "m", _NetworkController_updateRpcFailover).call(this, (0, selectors_js_1.getRpcFailoverMode)(state));
|
|
557
559
|
__classPrivateFieldGet(this, _NetworkController_instances, "m", _NetworkController_applyNetworkSelection).call(this, this.state.selectedNetworkClientId);
|
|
560
|
+
__classPrivateFieldGet(this, _NetworkController_instances, "m", _NetworkController_autoEnableChains).call(this, (0, selectors_js_1.getConfigRegistryEvmAutoEnabledChains)(this.messenger.call('ConfigRegistryController:getState')));
|
|
558
561
|
}
|
|
559
562
|
/**
|
|
560
563
|
* Uses a request for the latest block to gather the following information on
|
|
@@ -1555,5 +1558,34 @@ async function _NetworkController_determineEIP1559Compatibility(networkClientId)
|
|
|
1555
1558
|
}), "f");
|
|
1556
1559
|
}
|
|
1557
1560
|
__classPrivateFieldSet(this, _NetworkController_ethQuery, new eth_query_1.default(__classPrivateFieldGet(this, _NetworkController_providerProxy, "f")), "f");
|
|
1561
|
+
}, _NetworkController_autoEnableChains = function _NetworkController_autoEnableChains(chainIds) {
|
|
1562
|
+
for (const chainId of chainIds) {
|
|
1563
|
+
const networkConfiguration = this.messenger.call('ConfigRegistryController:getNetworkConfigByCaip2ChainId', chainId);
|
|
1564
|
+
const hexChainId = (0, utils_1.numberToHex)(Number((0, utils_1.parseCaipChainId)(chainId).reference));
|
|
1565
|
+
if (!networkConfiguration ||
|
|
1566
|
+
this.state.networkConfigurationsByChainId[hexChainId]) {
|
|
1567
|
+
continue;
|
|
1568
|
+
}
|
|
1569
|
+
const rpcEndpoint = networkConfiguration.rpcProviders.default.type === 'infura'
|
|
1570
|
+
? {
|
|
1571
|
+
type: RpcEndpointType.Infura,
|
|
1572
|
+
networkClientId: networkConfiguration.rpcProviders.default.networkClientId,
|
|
1573
|
+
url: networkConfiguration.rpcProviders.default
|
|
1574
|
+
.url,
|
|
1575
|
+
}
|
|
1576
|
+
: {
|
|
1577
|
+
type: RpcEndpointType.Custom,
|
|
1578
|
+
url: networkConfiguration.rpcProviders.default.url,
|
|
1579
|
+
};
|
|
1580
|
+
this.addNetwork({
|
|
1581
|
+
chainId: hexChainId,
|
|
1582
|
+
name: networkConfiguration.name,
|
|
1583
|
+
nativeCurrency: networkConfiguration.assets.native.symbol,
|
|
1584
|
+
rpcEndpoints: [rpcEndpoint],
|
|
1585
|
+
defaultRpcEndpointIndex: 0,
|
|
1586
|
+
blockExplorerUrls: [networkConfiguration.blockExplorerUrls.default],
|
|
1587
|
+
defaultBlockExplorerUrlIndex: 0,
|
|
1588
|
+
});
|
|
1589
|
+
}
|
|
1558
1590
|
};
|
|
1559
1591
|
//# sourceMappingURL=NetworkController.cjs.map
|