@metamask-previews/network-controller 23.2.0-preview-66f06159 → 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 +0 -12
- package/dist/NetworkController.cjs +3 -51
- package/dist/NetworkController.cjs.map +1 -1
- package/dist/NetworkController.d.cts +5 -29
- package/dist/NetworkController.d.cts.map +1 -1
- package/dist/NetworkController.d.mts +5 -29
- package/dist/NetworkController.d.mts.map +1 -1
- package/dist/NetworkController.mjs +3 -51
- package/dist/NetworkController.mjs.map +1 -1
- package/dist/create-auto-managed-network-client.cjs +31 -46
- package/dist/create-auto-managed-network-client.cjs.map +1 -1
- package/dist/create-auto-managed-network-client.d.cts +1 -11
- package/dist/create-auto-managed-network-client.d.cts.map +1 -1
- package/dist/create-auto-managed-network-client.d.mts +1 -11
- package/dist/create-auto-managed-network-client.d.mts.map +1 -1
- package/dist/create-auto-managed-network-client.mjs +31 -46
- package/dist/create-auto-managed-network-client.mjs.map +1 -1
- package/dist/create-network-client.cjs +17 -43
- package/dist/create-network-client.cjs.map +1 -1
- package/dist/create-network-client.d.cts +2 -11
- package/dist/create-network-client.d.cts.map +1 -1
- package/dist/create-network-client.d.mts +2 -11
- package/dist/create-network-client.d.mts.map +1 -1
- package/dist/create-network-client.mjs +17 -43
- package/dist/create-network-client.mjs.map +1 -1
- package/package.json +1 -1
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,
|
|
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,
|
|
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,27 +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(),
|
|
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
|
-
}
|
|
1215
|
-
}
|
|
1216
|
-
}
|
|
1217
|
-
__classPrivateFieldSet(this, _NetworkController_isRpcFailoverEnabled, newIsRpcFailoverEnabled, "f");
|
|
1218
|
-
}, _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 =
|
|
1219
1179
|
/**
|
|
1220
1180
|
* Executes a series of steps to switch the network:
|
|
1221
1181
|
*
|
|
@@ -1434,9 +1394,7 @@ async function _NetworkController_determineEIP1559Compatibility(networkClientId)
|
|
|
1434
1394
|
ticker: networkFields.nativeCurrency,
|
|
1435
1395
|
},
|
|
1436
1396
|
getRpcServiceOptions: __classPrivateFieldGet(this, _NetworkController_getRpcServiceOptions, "f"),
|
|
1437
|
-
getBlockTrackerOptions: __classPrivateFieldGet(this, _NetworkController_getBlockTrackerOptions, "f"),
|
|
1438
1397
|
messenger: this.messagingSystem,
|
|
1439
|
-
isRpcFailoverEnabled: __classPrivateFieldGet(this, _NetworkController_isRpcFailoverEnabled, "f"),
|
|
1440
1398
|
});
|
|
1441
1399
|
}
|
|
1442
1400
|
else {
|
|
@@ -1449,9 +1407,7 @@ async function _NetworkController_determineEIP1559Compatibility(networkClientId)
|
|
|
1449
1407
|
ticker: networkFields.nativeCurrency,
|
|
1450
1408
|
},
|
|
1451
1409
|
getRpcServiceOptions: __classPrivateFieldGet(this, _NetworkController_getRpcServiceOptions, "f"),
|
|
1452
|
-
getBlockTrackerOptions: __classPrivateFieldGet(this, _NetworkController_getBlockTrackerOptions, "f"),
|
|
1453
1410
|
messenger: this.messagingSystem,
|
|
1454
|
-
isRpcFailoverEnabled: __classPrivateFieldGet(this, _NetworkController_isRpcFailoverEnabled, "f"),
|
|
1455
1411
|
});
|
|
1456
1412
|
}
|
|
1457
1413
|
}
|
|
@@ -1508,9 +1464,7 @@ async function _NetworkController_determineEIP1559Compatibility(networkClientId)
|
|
|
1508
1464
|
ticker: networkConfiguration.nativeCurrency,
|
|
1509
1465
|
},
|
|
1510
1466
|
getRpcServiceOptions: __classPrivateFieldGet(this, _NetworkController_getRpcServiceOptions, "f"),
|
|
1511
|
-
getBlockTrackerOptions: __classPrivateFieldGet(this, _NetworkController_getBlockTrackerOptions, "f"),
|
|
1512
1467
|
messenger: this.messagingSystem,
|
|
1513
|
-
isRpcFailoverEnabled: __classPrivateFieldGet(this, _NetworkController_isRpcFailoverEnabled, "f"),
|
|
1514
1468
|
}),
|
|
1515
1469
|
];
|
|
1516
1470
|
}
|
|
@@ -1525,9 +1479,7 @@ async function _NetworkController_determineEIP1559Compatibility(networkClientId)
|
|
|
1525
1479
|
ticker: networkConfiguration.nativeCurrency,
|
|
1526
1480
|
},
|
|
1527
1481
|
getRpcServiceOptions: __classPrivateFieldGet(this, _NetworkController_getRpcServiceOptions, "f"),
|
|
1528
|
-
getBlockTrackerOptions: __classPrivateFieldGet(this, _NetworkController_getBlockTrackerOptions, "f"),
|
|
1529
1482
|
messenger: this.messagingSystem,
|
|
1530
|
-
isRpcFailoverEnabled: __classPrivateFieldGet(this, _NetworkController_isRpcFailoverEnabled, "f"),
|
|
1531
1483
|
}),
|
|
1532
1484
|
];
|
|
1533
1485
|
});
|