@metamask-previews/network-controller 23.2.0-preview-a898873f → 23.2.0-preview-ddbcf048

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 CHANGED
@@ -7,18 +7,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
- ### Added
11
-
12
- - Add optional `getBlockTrackerOptions` argument to NetworkController constructor ([#5679](https://github.com/MetaMask/core/pull/5679))
13
- - Add optional `rpcFailoverEnabled` option to NetworkController constructor (`false` by default) ([#5679](https://github.com/MetaMask/core/pull/5679))
14
- - Add `enableRpcFailover` and `disableRpcFailover` methods to NetworkController ([#5679](https://github.com/MetaMask/core/pull/5679))
15
-
16
- ### Changed
17
-
18
- - Disable the RPC failover behavior by default ([#5679](https://github.com/MetaMask/core/pull/5679))
19
- - You are free to set the `failoverUrls` property on an RPC endpoint, but it won't have any effect
20
- - To enable this behavior, either pass `rpcFailoverEnabled: true` to the constructor or call `enableRpcFailover` after initialization
21
-
22
10
  ## [23.2.0]
23
11
 
24
12
  ### Added
@@ -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_previouslySelectedNetworkClientId, _NetworkController_providerProxy, _NetworkController_blockTrackerProxy, _NetworkController_autoManagedNetworkClientRegistry, _NetworkController_autoManagedNetworkClient, _NetworkController_log, _NetworkController_getRpcServiceOptions, _NetworkController_getBlockTrackerOptions, _NetworkController_networkConfigurationsByNetworkClientId, _NetworkController_isRpcFailoverEnabled, _NetworkController_updateRpcFailoverEnabled, _NetworkController_refreshNetwork, _NetworkController_getLatestBlock, _NetworkController_determineEIP1559Compatibility, _NetworkController_validateNetworkFields, _NetworkController_determineNetworkConfigurationToPersist, _NetworkController_registerNetworkClientsAsNeeded, _NetworkController_unregisterNetworkClientsAsNeeded, _NetworkController_updateNetworkConfigurations, _NetworkController_ensureAutoManagedNetworkClientRegistryPopulated, _NetworkController_createAutoManagedNetworkClientRegistry, _NetworkController_applyNetworkSelection, _NetworkController_setProxies;
39
+ var _NetworkController_instances, _NetworkController_ethQuery, _NetworkController_infuraProjectId, _NetworkController_previouslySelectedNetworkClientId, _NetworkController_providerProxy, _NetworkController_blockTrackerProxy, _NetworkController_autoManagedNetworkClientRegistry, _NetworkController_autoManagedNetworkClient, _NetworkController_log, _NetworkController_getRpcServiceOptions, _NetworkController_networkConfigurationsByNetworkClientId, _NetworkController_refreshNetwork, _NetworkController_getLatestBlock, _NetworkController_determineEIP1559Compatibility, _NetworkController_validateNetworkFields, _NetworkController_determineNetworkConfigurationToPersist, _NetworkController_registerNetworkClientsAsNeeded, _NetworkController_unregisterNetworkClientsAsNeeded, _NetworkController_updateNetworkConfigurations, _NetworkController_ensureAutoManagedNetworkClientRegistryPopulated, _NetworkController_createAutoManagedNetworkClientRegistry, _NetworkController_applyNetworkSelection;
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");
@@ -342,7 +342,7 @@ class NetworkController extends base_controller_1.BaseController {
342
342
  * @param options - The options; see {@link NetworkControllerOptions}.
343
343
  */
344
344
  constructor(options) {
345
- const { messenger, state, infuraProjectId, log, getRpcServiceOptions, getBlockTrackerOptions, additionalDefaultNetworks, isRpcFailoverEnabled = false, } = options;
345
+ const { messenger, state, infuraProjectId, log, getRpcServiceOptions, additionalDefaultNetworks, } = options;
346
346
  const initialState = {
347
347
  ...getDefaultNetworkControllerState(additionalDefaultNetworks),
348
348
  ...state,
@@ -380,14 +380,10 @@ class NetworkController extends base_controller_1.BaseController {
380
380
  _NetworkController_autoManagedNetworkClient.set(this, void 0);
381
381
  _NetworkController_log.set(this, void 0);
382
382
  _NetworkController_getRpcServiceOptions.set(this, void 0);
383
- _NetworkController_getBlockTrackerOptions.set(this, void 0);
384
383
  _NetworkController_networkConfigurationsByNetworkClientId.set(this, void 0);
385
- _NetworkController_isRpcFailoverEnabled.set(this, void 0);
386
384
  __classPrivateFieldSet(this, _NetworkController_infuraProjectId, infuraProjectId, "f");
387
385
  __classPrivateFieldSet(this, _NetworkController_log, log, "f");
388
386
  __classPrivateFieldSet(this, _NetworkController_getRpcServiceOptions, getRpcServiceOptions, "f");
389
- __classPrivateFieldSet(this, _NetworkController_getBlockTrackerOptions, getBlockTrackerOptions, "f");
390
- __classPrivateFieldSet(this, _NetworkController_isRpcFailoverEnabled, isRpcFailoverEnabled, "f");
391
387
  __classPrivateFieldSet(this, _NetworkController_previouslySelectedNetworkClientId, this.state.selectedNetworkClientId, "f");
392
388
  __classPrivateFieldSet(this, _NetworkController_networkConfigurationsByNetworkClientId, buildNetworkConfigurationsByNetworkClientId(this.state.networkConfigurationsByChainId), "f");
393
389
  this.messagingSystem.registerActionHandler(
@@ -439,22 +435,6 @@ class NetworkController extends base_controller_1.BaseController {
439
435
  // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
440
436
  `${this.name}:updateNetwork`, this.updateNetwork.bind(this));
441
437
  }
442
- /**
443
- * Enables the RPC failover functionality. That is, if any RPC endpoints are
444
- * configured with failover URLs, then traffic will automatically be diverted
445
- * to them if those RPC endpoints are unavailable.
446
- */
447
- enableRpcFailover() {
448
- __classPrivateFieldGet(this, _NetworkController_instances, "m", _NetworkController_updateRpcFailoverEnabled).call(this, true);
449
- }
450
- /**
451
- * Disables the RPC failover functionality. That is, even if any RPC endpoints
452
- * are configured with failover URLs, then traffic will not automatically be
453
- * diverted to them if those RPC endpoints are unavailable.
454
- */
455
- disableRpcFailover() {
456
- __classPrivateFieldGet(this, _NetworkController_instances, "m", _NetworkController_updateRpcFailoverEnabled).call(this, false);
457
- }
458
438
  /**
459
439
  * Accesses the provider and block tracker for the currently selected network.
460
440
  * @returns The proxy and block tracker proxies.
@@ -1195,28 +1175,7 @@ class NetworkController extends base_controller_1.BaseController {
1195
1175
  }
1196
1176
  }
1197
1177
  exports.NetworkController = NetworkController;
1198
- _NetworkController_ethQuery = new WeakMap(), _NetworkController_infuraProjectId = new WeakMap(), _NetworkController_previouslySelectedNetworkClientId = new WeakMap(), _NetworkController_providerProxy = new WeakMap(), _NetworkController_blockTrackerProxy = new WeakMap(), _NetworkController_autoManagedNetworkClientRegistry = new WeakMap(), _NetworkController_autoManagedNetworkClient = new WeakMap(), _NetworkController_log = new WeakMap(), _NetworkController_getRpcServiceOptions = new WeakMap(), _NetworkController_getBlockTrackerOptions = new WeakMap(), _NetworkController_networkConfigurationsByNetworkClientId = new WeakMap(), _NetworkController_isRpcFailoverEnabled = new WeakMap(), _NetworkController_instances = new WeakSet(), _NetworkController_updateRpcFailoverEnabled = function _NetworkController_updateRpcFailoverEnabled(newIsRpcFailoverEnabled) {
1199
- if (__classPrivateFieldGet(this, _NetworkController_isRpcFailoverEnabled, "f") === newIsRpcFailoverEnabled) {
1200
- return;
1201
- }
1202
- const autoManagedNetworkClientRegistry = __classPrivateFieldGet(this, _NetworkController_instances, "m", _NetworkController_ensureAutoManagedNetworkClientRegistryPopulated).call(this);
1203
- for (const networkClientsById of Object.values(autoManagedNetworkClientRegistry)) {
1204
- for (const networkClientId of Object.keys(networkClientsById)) {
1205
- // Type assertion: We can assume that `networkClientId` is valid here.
1206
- const networkClient = networkClientsById[networkClientId];
1207
- if (networkClient.configuration.failoverRpcUrls &&
1208
- networkClient.configuration.failoverRpcUrls.length > 0) {
1209
- networkClient.destroy();
1210
- const newNetworkClient = newIsRpcFailoverEnabled
1211
- ? networkClient.withRpcFailoverEnabled()
1212
- : networkClient.withRpcFailoverDisabled();
1213
- networkClientsById[networkClientId] = newNetworkClient;
1214
- __classPrivateFieldGet(this, _NetworkController_instances, "m", _NetworkController_setProxies).call(this, newNetworkClient);
1215
- }
1216
- }
1217
- }
1218
- __classPrivateFieldSet(this, _NetworkController_isRpcFailoverEnabled, newIsRpcFailoverEnabled, "f");
1219
- }, _NetworkController_refreshNetwork =
1178
+ _NetworkController_ethQuery = new WeakMap(), _NetworkController_infuraProjectId = new WeakMap(), _NetworkController_previouslySelectedNetworkClientId = new WeakMap(), _NetworkController_providerProxy = new WeakMap(), _NetworkController_blockTrackerProxy = new WeakMap(), _NetworkController_autoManagedNetworkClientRegistry = new WeakMap(), _NetworkController_autoManagedNetworkClient = new WeakMap(), _NetworkController_log = new WeakMap(), _NetworkController_getRpcServiceOptions = new WeakMap(), _NetworkController_networkConfigurationsByNetworkClientId = new WeakMap(), _NetworkController_instances = new WeakSet(), _NetworkController_refreshNetwork =
1220
1179
  /**
1221
1180
  * Executes a series of steps to switch the network:
1222
1181
  *
@@ -1435,9 +1394,7 @@ async function _NetworkController_determineEIP1559Compatibility(networkClientId)
1435
1394
  ticker: networkFields.nativeCurrency,
1436
1395
  },
1437
1396
  getRpcServiceOptions: __classPrivateFieldGet(this, _NetworkController_getRpcServiceOptions, "f"),
1438
- getBlockTrackerOptions: __classPrivateFieldGet(this, _NetworkController_getBlockTrackerOptions, "f"),
1439
1397
  messenger: this.messagingSystem,
1440
- isRpcFailoverEnabled: __classPrivateFieldGet(this, _NetworkController_isRpcFailoverEnabled, "f"),
1441
1398
  });
1442
1399
  }
1443
1400
  else {
@@ -1450,9 +1407,7 @@ async function _NetworkController_determineEIP1559Compatibility(networkClientId)
1450
1407
  ticker: networkFields.nativeCurrency,
1451
1408
  },
1452
1409
  getRpcServiceOptions: __classPrivateFieldGet(this, _NetworkController_getRpcServiceOptions, "f"),
1453
- getBlockTrackerOptions: __classPrivateFieldGet(this, _NetworkController_getBlockTrackerOptions, "f"),
1454
1410
  messenger: this.messagingSystem,
1455
- isRpcFailoverEnabled: __classPrivateFieldGet(this, _NetworkController_isRpcFailoverEnabled, "f"),
1456
1411
  });
1457
1412
  }
1458
1413
  }
@@ -1509,9 +1464,7 @@ async function _NetworkController_determineEIP1559Compatibility(networkClientId)
1509
1464
  ticker: networkConfiguration.nativeCurrency,
1510
1465
  },
1511
1466
  getRpcServiceOptions: __classPrivateFieldGet(this, _NetworkController_getRpcServiceOptions, "f"),
1512
- getBlockTrackerOptions: __classPrivateFieldGet(this, _NetworkController_getBlockTrackerOptions, "f"),
1513
1467
  messenger: this.messagingSystem,
1514
- isRpcFailoverEnabled: __classPrivateFieldGet(this, _NetworkController_isRpcFailoverEnabled, "f"),
1515
1468
  }),
1516
1469
  ];
1517
1470
  }
@@ -1526,9 +1479,7 @@ async function _NetworkController_determineEIP1559Compatibility(networkClientId)
1526
1479
  ticker: networkConfiguration.nativeCurrency,
1527
1480
  },
1528
1481
  getRpcServiceOptions: __classPrivateFieldGet(this, _NetworkController_getRpcServiceOptions, "f"),
1529
- getBlockTrackerOptions: __classPrivateFieldGet(this, _NetworkController_getBlockTrackerOptions, "f"),
1530
1482
  messenger: this.messagingSystem,
1531
- isRpcFailoverEnabled: __classPrivateFieldGet(this, _NetworkController_isRpcFailoverEnabled, "f"),
1532
1483
  }),
1533
1484
  ];
1534
1485
  });
@@ -1575,24 +1526,18 @@ async function _NetworkController_determineEIP1559Compatibility(networkClientId)
1575
1526
  }
1576
1527
  updateState?.(state);
1577
1528
  });
1578
- const { providerProxy } = __classPrivateFieldGet(this, _NetworkController_instances, "m", _NetworkController_setProxies).call(this, __classPrivateFieldGet(this, _NetworkController_autoManagedNetworkClient, "f"));
1579
- __classPrivateFieldSet(this, _NetworkController_ethQuery, new eth_query_1.default(providerProxy), "f");
1580
- }, _NetworkController_setProxies = function _NetworkController_setProxies(networkClient) {
1581
1529
  if (__classPrivateFieldGet(this, _NetworkController_providerProxy, "f")) {
1582
- __classPrivateFieldGet(this, _NetworkController_providerProxy, "f").setTarget(networkClient.provider);
1530
+ __classPrivateFieldGet(this, _NetworkController_providerProxy, "f").setTarget(__classPrivateFieldGet(this, _NetworkController_autoManagedNetworkClient, "f").provider);
1583
1531
  }
1584
1532
  else {
1585
- __classPrivateFieldSet(this, _NetworkController_providerProxy, (0, swappable_obj_proxy_1.createEventEmitterProxy)(networkClient.provider), "f");
1533
+ __classPrivateFieldSet(this, _NetworkController_providerProxy, (0, swappable_obj_proxy_1.createEventEmitterProxy)(__classPrivateFieldGet(this, _NetworkController_autoManagedNetworkClient, "f").provider), "f");
1586
1534
  }
1587
1535
  if (__classPrivateFieldGet(this, _NetworkController_blockTrackerProxy, "f")) {
1588
- __classPrivateFieldGet(this, _NetworkController_blockTrackerProxy, "f").setTarget(networkClient.blockTracker);
1536
+ __classPrivateFieldGet(this, _NetworkController_blockTrackerProxy, "f").setTarget(__classPrivateFieldGet(this, _NetworkController_autoManagedNetworkClient, "f").blockTracker);
1589
1537
  }
1590
1538
  else {
1591
- __classPrivateFieldSet(this, _NetworkController_blockTrackerProxy, (0, swappable_obj_proxy_1.createEventEmitterProxy)(networkClient.blockTracker, { eventFilter: 'skipInternal' }), "f");
1539
+ __classPrivateFieldSet(this, _NetworkController_blockTrackerProxy, (0, swappable_obj_proxy_1.createEventEmitterProxy)(__classPrivateFieldGet(this, _NetworkController_autoManagedNetworkClient, "f").blockTracker, { eventFilter: 'skipInternal' }), "f");
1592
1540
  }
1593
- return {
1594
- providerProxy: __classPrivateFieldGet(this, _NetworkController_providerProxy, "f"),
1595
- blockTrackerProxy: __classPrivateFieldGet(this, _NetworkController_blockTrackerProxy, "f"),
1596
- };
1541
+ __classPrivateFieldSet(this, _NetworkController_ethQuery, new eth_query_1.default(__classPrivateFieldGet(this, _NetworkController_providerProxy, "f")), "f");
1597
1542
  };
1598
1543
  //# sourceMappingURL=NetworkController.cjs.map