@metamask/network-controller 22.0.1 → 22.1.0
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 +36 -1
- package/dist/NetworkController.cjs +57 -30
- package/dist/NetworkController.cjs.map +1 -1
- package/dist/NetworkController.d.cts +27 -2
- package/dist/NetworkController.d.cts.map +1 -1
- package/dist/NetworkController.d.mts +27 -2
- package/dist/NetworkController.d.mts.map +1 -1
- package/dist/NetworkController.mjs +60 -33
- package/dist/NetworkController.mjs.map +1 -1
- package/dist/create-network-client.mjs +3 -6
- package/dist/create-network-client.mjs.map +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.mts +1 -1
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +3 -2
|
@@ -157,6 +157,11 @@ export type NetworkConfiguration = {
|
|
|
157
157
|
* interact with the chain.
|
|
158
158
|
*/
|
|
159
159
|
rpcEndpoints: RpcEndpoint[];
|
|
160
|
+
/**
|
|
161
|
+
* Profile Sync - Network Sync field.
|
|
162
|
+
* Allows comparison of local network state with state to sync.
|
|
163
|
+
*/
|
|
164
|
+
lastUpdatedAt?: number;
|
|
160
165
|
};
|
|
161
166
|
/**
|
|
162
167
|
* A custom RPC endpoint in a new network configuration, meant to be used in
|
|
@@ -311,7 +316,15 @@ export type NetworkControllerNetworkAddedEvent = {
|
|
|
311
316
|
type: 'NetworkController:networkAdded';
|
|
312
317
|
payload: [networkConfiguration: NetworkConfiguration];
|
|
313
318
|
};
|
|
314
|
-
|
|
319
|
+
/**
|
|
320
|
+
* `networkRemoved` is published after a network configuration is removed from the
|
|
321
|
+
* network configuration registry and once the network clients have been removed.
|
|
322
|
+
*/
|
|
323
|
+
export type NetworkControllerNetworkRemovedEvent = {
|
|
324
|
+
type: 'NetworkController:networkRemoved';
|
|
325
|
+
payload: [networkConfiguration: NetworkConfiguration];
|
|
326
|
+
};
|
|
327
|
+
export type NetworkControllerEvents = NetworkControllerStateChangeEvent | NetworkControllerNetworkWillChangeEvent | NetworkControllerNetworkDidChangeEvent | NetworkControllerInfuraIsBlockedEvent | NetworkControllerInfuraIsUnblockedEvent | NetworkControllerNetworkAddedEvent | NetworkControllerNetworkRemovedEvent;
|
|
315
328
|
export type NetworkControllerGetStateAction = ControllerGetStateAction<typeof controllerName, NetworkState>;
|
|
316
329
|
export type NetworkControllerGetEthQueryAction = {
|
|
317
330
|
type: `NetworkController:getEthQuery`;
|
|
@@ -355,7 +368,19 @@ export type NetworkControllerGetNetworkConfigurationByNetworkClientId = {
|
|
|
355
368
|
type: `NetworkController:getNetworkConfigurationByNetworkClientId`;
|
|
356
369
|
handler: NetworkController['getNetworkConfigurationByNetworkClientId'];
|
|
357
370
|
};
|
|
358
|
-
export type
|
|
371
|
+
export type NetworkControllerAddNetworkAction = {
|
|
372
|
+
type: 'NetworkController:addNetwork';
|
|
373
|
+
handler: NetworkController['addNetwork'];
|
|
374
|
+
};
|
|
375
|
+
export type NetworkControllerRemoveNetworkAction = {
|
|
376
|
+
type: 'NetworkController:removeNetwork';
|
|
377
|
+
handler: NetworkController['removeNetwork'];
|
|
378
|
+
};
|
|
379
|
+
export type NetworkControllerUpdateNetworkAction = {
|
|
380
|
+
type: 'NetworkController:updateNetwork';
|
|
381
|
+
handler: NetworkController['updateNetwork'];
|
|
382
|
+
};
|
|
383
|
+
export type NetworkControllerActions = NetworkControllerGetStateAction | NetworkControllerGetEthQueryAction | NetworkControllerGetNetworkClientByIdAction | NetworkControllerGetSelectedNetworkClientAction | NetworkControllerGetEIP1559CompatibilityAction | NetworkControllerFindNetworkClientIdByChainIdAction | NetworkControllerSetActiveNetworkAction | NetworkControllerSetProviderTypeAction | NetworkControllerGetNetworkConfigurationByChainId | NetworkControllerGetNetworkConfigurationByNetworkClientId | NetworkControllerAddNetworkAction | NetworkControllerRemoveNetworkAction | NetworkControllerUpdateNetworkAction;
|
|
359
384
|
export type NetworkControllerMessenger = RestrictedControllerMessenger<typeof controllerName, NetworkControllerActions, NetworkControllerEvents, never, never>;
|
|
360
385
|
export type NetworkControllerOptions = {
|
|
361
386
|
messenger: NetworkControllerMessenger;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NetworkController.d.cts","sourceRoot":"","sources":["../src/NetworkController.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EACxB,0BAA0B,EAC1B,6BAA6B,EAC9B,kCAAkC;AACnC,OAAO,EAAE,cAAc,EAAE,kCAAkC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,mCAAmC;AAC7D,OAAO,EACL,iBAAiB,EAOlB,mCAAmC;AACpC,OAAO,QAAQ,4BAA4B;AAG3C,OAAO,KAAK,EAAE,cAAc,EAAE,sCAAsC;AACpE,OAAO,KAAK,EAAE,GAAG,EAAE,wBAAwB;AAG3C,OAAO,KAAK,EAAE,KAAK,EAAE,cAAc;AACnC,OAAO,KAAK,EAAE,MAAM,EAAE,iBAAiB;
|
|
1
|
+
{"version":3,"file":"NetworkController.d.cts","sourceRoot":"","sources":["../src/NetworkController.ts"],"names":[],"mappings":"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"}
|
|
@@ -157,6 +157,11 @@ export type NetworkConfiguration = {
|
|
|
157
157
|
* interact with the chain.
|
|
158
158
|
*/
|
|
159
159
|
rpcEndpoints: RpcEndpoint[];
|
|
160
|
+
/**
|
|
161
|
+
* Profile Sync - Network Sync field.
|
|
162
|
+
* Allows comparison of local network state with state to sync.
|
|
163
|
+
*/
|
|
164
|
+
lastUpdatedAt?: number;
|
|
160
165
|
};
|
|
161
166
|
/**
|
|
162
167
|
* A custom RPC endpoint in a new network configuration, meant to be used in
|
|
@@ -311,7 +316,15 @@ export type NetworkControllerNetworkAddedEvent = {
|
|
|
311
316
|
type: 'NetworkController:networkAdded';
|
|
312
317
|
payload: [networkConfiguration: NetworkConfiguration];
|
|
313
318
|
};
|
|
314
|
-
|
|
319
|
+
/**
|
|
320
|
+
* `networkRemoved` is published after a network configuration is removed from the
|
|
321
|
+
* network configuration registry and once the network clients have been removed.
|
|
322
|
+
*/
|
|
323
|
+
export type NetworkControllerNetworkRemovedEvent = {
|
|
324
|
+
type: 'NetworkController:networkRemoved';
|
|
325
|
+
payload: [networkConfiguration: NetworkConfiguration];
|
|
326
|
+
};
|
|
327
|
+
export type NetworkControllerEvents = NetworkControllerStateChangeEvent | NetworkControllerNetworkWillChangeEvent | NetworkControllerNetworkDidChangeEvent | NetworkControllerInfuraIsBlockedEvent | NetworkControllerInfuraIsUnblockedEvent | NetworkControllerNetworkAddedEvent | NetworkControllerNetworkRemovedEvent;
|
|
315
328
|
export type NetworkControllerGetStateAction = ControllerGetStateAction<typeof controllerName, NetworkState>;
|
|
316
329
|
export type NetworkControllerGetEthQueryAction = {
|
|
317
330
|
type: `NetworkController:getEthQuery`;
|
|
@@ -355,7 +368,19 @@ export type NetworkControllerGetNetworkConfigurationByNetworkClientId = {
|
|
|
355
368
|
type: `NetworkController:getNetworkConfigurationByNetworkClientId`;
|
|
356
369
|
handler: NetworkController['getNetworkConfigurationByNetworkClientId'];
|
|
357
370
|
};
|
|
358
|
-
export type
|
|
371
|
+
export type NetworkControllerAddNetworkAction = {
|
|
372
|
+
type: 'NetworkController:addNetwork';
|
|
373
|
+
handler: NetworkController['addNetwork'];
|
|
374
|
+
};
|
|
375
|
+
export type NetworkControllerRemoveNetworkAction = {
|
|
376
|
+
type: 'NetworkController:removeNetwork';
|
|
377
|
+
handler: NetworkController['removeNetwork'];
|
|
378
|
+
};
|
|
379
|
+
export type NetworkControllerUpdateNetworkAction = {
|
|
380
|
+
type: 'NetworkController:updateNetwork';
|
|
381
|
+
handler: NetworkController['updateNetwork'];
|
|
382
|
+
};
|
|
383
|
+
export type NetworkControllerActions = NetworkControllerGetStateAction | NetworkControllerGetEthQueryAction | NetworkControllerGetNetworkClientByIdAction | NetworkControllerGetSelectedNetworkClientAction | NetworkControllerGetEIP1559CompatibilityAction | NetworkControllerFindNetworkClientIdByChainIdAction | NetworkControllerSetActiveNetworkAction | NetworkControllerSetProviderTypeAction | NetworkControllerGetNetworkConfigurationByChainId | NetworkControllerGetNetworkConfigurationByNetworkClientId | NetworkControllerAddNetworkAction | NetworkControllerRemoveNetworkAction | NetworkControllerUpdateNetworkAction;
|
|
359
384
|
export type NetworkControllerMessenger = RestrictedControllerMessenger<typeof controllerName, NetworkControllerActions, NetworkControllerEvents, never, never>;
|
|
360
385
|
export type NetworkControllerOptions = {
|
|
361
386
|
messenger: NetworkControllerMessenger;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NetworkController.d.mts","sourceRoot":"","sources":["../src/NetworkController.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EACxB,0BAA0B,EAC1B,6BAA6B,EAC9B,kCAAkC;AACnC,OAAO,EAAE,cAAc,EAAE,kCAAkC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,mCAAmC;AAC7D,OAAO,EACL,iBAAiB,EAOlB,mCAAmC;AACpC,OAAO,QAAQ,4BAA4B;AAG3C,OAAO,KAAK,EAAE,cAAc,EAAE,sCAAsC;AACpE,OAAO,KAAK,EAAE,GAAG,EAAE,wBAAwB;AAG3C,OAAO,KAAK,EAAE,KAAK,EAAE,cAAc;AACnC,OAAO,KAAK,EAAE,MAAM,EAAE,iBAAiB;
|
|
1
|
+
{"version":3,"file":"NetworkController.d.mts","sourceRoot":"","sources":["../src/NetworkController.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,13 +21,12 @@ import { InfuraNetworkType, NetworkType, isSafeChainId, isInfuraNetworkType, Cha
|
|
|
21
21
|
import $EthQuery from "@metamask/eth-query";
|
|
22
22
|
const EthQuery = $importDefault($EthQuery);
|
|
23
23
|
import { errorCodes } from "@metamask/rpc-errors";
|
|
24
|
-
import
|
|
25
|
-
|
|
26
|
-
import
|
|
27
|
-
|
|
24
|
+
import { createEventEmitterProxy } from "@metamask/swappable-obj-proxy";
|
|
25
|
+
import { hasProperty, isPlainObject, isStrictHexString } from "@metamask/utils";
|
|
26
|
+
import $deepEqual from "fast-deep-equal";
|
|
27
|
+
const deepEqual = $importDefault($deepEqual);
|
|
28
28
|
import { createSelector } from "reselect";
|
|
29
29
|
import * as URI from "uri-js";
|
|
30
|
-
import { inspect } from "util";
|
|
31
30
|
import { v4 as uuidV4 } from "uuid";
|
|
32
31
|
import { INFURA_BLOCKED_KEY, NetworkStatus } from "./constants.mjs";
|
|
33
32
|
import { createAutoManagedNetworkClient } from "./create-auto-managed-network-client.mjs";
|
|
@@ -90,7 +89,7 @@ function getDefaultNetworkConfigurationsByChainId() {
|
|
|
90
89
|
return Object.values(InfuraNetworkType).reduce((obj, infuraNetworkType) => {
|
|
91
90
|
const chainId = ChainId[infuraNetworkType];
|
|
92
91
|
const rpcEndpointUrl =
|
|
93
|
-
//
|
|
92
|
+
// This ESLint rule mistakenly produces an error.
|
|
94
93
|
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
95
94
|
`https://${infuraNetworkType}.infura.io/v3/{infuraProjectId}`;
|
|
96
95
|
const networkConfiguration = {
|
|
@@ -212,7 +211,10 @@ function validateNetworkControllerState(state) {
|
|
|
212
211
|
throw new Error('NetworkController state has invalid `networkConfigurationsByChainId`: Every RPC endpoint across all network configurations must have a unique `networkClientId`');
|
|
213
212
|
}
|
|
214
213
|
if (!networkClientIds.includes(state.selectedNetworkClientId)) {
|
|
215
|
-
throw new Error(
|
|
214
|
+
throw new Error(
|
|
215
|
+
// This ESLint rule mistakenly produces an error.
|
|
216
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
217
|
+
`NetworkController state is invalid: \`selectedNetworkClientId\` '${state.selectedNetworkClientId}' does not refer to an RPC endpoint within a network configuration`);
|
|
216
218
|
}
|
|
217
219
|
}
|
|
218
220
|
/**
|
|
@@ -311,6 +313,18 @@ export class NetworkController extends BaseController {
|
|
|
311
313
|
// TODO: Either fix this lint violation or explain why it's necessary to ignore.
|
|
312
314
|
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
313
315
|
`${this.name}:getSelectedNetworkClient`, this.getSelectedNetworkClient.bind(this));
|
|
316
|
+
this.messagingSystem.registerActionHandler(
|
|
317
|
+
// ESLint is mistaken here; `name` is a string.
|
|
318
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
319
|
+
`${this.name}:addNetwork`, this.addNetwork.bind(this));
|
|
320
|
+
this.messagingSystem.registerActionHandler(
|
|
321
|
+
// ESLint is mistaken here; `name` is a string.
|
|
322
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
323
|
+
`${this.name}:removeNetwork`, this.removeNetwork.bind(this));
|
|
324
|
+
this.messagingSystem.registerActionHandler(
|
|
325
|
+
// ESLint is mistaken here; `name` is a string.
|
|
326
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
327
|
+
`${this.name}:updateNetwork`, this.updateNetwork.bind(this));
|
|
314
328
|
}
|
|
315
329
|
/**
|
|
316
330
|
* Accesses the provider and block tracker for the currently selected network.
|
|
@@ -570,14 +584,15 @@ export class NetworkController extends BaseController {
|
|
|
570
584
|
* removed in a future release
|
|
571
585
|
*/
|
|
572
586
|
async setProviderType(type) {
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
587
|
+
if (type === NetworkType.rpc) {
|
|
588
|
+
throw new Error(
|
|
589
|
+
// This ESLint rule mistakenly produces an error.
|
|
590
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
591
|
+
`NetworkController - cannot call "setProviderType" with type "${NetworkType.rpc}". Use "setActiveNetwork"`);
|
|
592
|
+
}
|
|
593
|
+
if (!isInfuraNetworkType(type)) {
|
|
594
|
+
throw new Error(`Unknown Infura provider type "${String(type)}".`);
|
|
595
|
+
}
|
|
581
596
|
await this.setActiveNetwork(type);
|
|
582
597
|
}
|
|
583
598
|
/**
|
|
@@ -739,7 +754,7 @@ export class NetworkController extends BaseController {
|
|
|
739
754
|
async updateNetwork(chainId, fields, { replacementSelectedRpcEndpointIndex, } = {}) {
|
|
740
755
|
const existingNetworkConfiguration = this.state.networkConfigurationsByChainId[chainId];
|
|
741
756
|
if (existingNetworkConfiguration === undefined) {
|
|
742
|
-
throw new Error(`Could not update network: Cannot find network configuration for chain ${
|
|
757
|
+
throw new Error(`Could not update network: Cannot find network configuration for chain '${chainId}'`);
|
|
743
758
|
}
|
|
744
759
|
const existingChainId = chainId;
|
|
745
760
|
const { chainId: newChainId, rpcEndpoints: setOfNewRpcEndpointFields } = fields;
|
|
@@ -868,7 +883,7 @@ export class NetworkController extends BaseController {
|
|
|
868
883
|
this.state.selectedNetworkClientId);
|
|
869
884
|
})) {
|
|
870
885
|
throw new Error(
|
|
871
|
-
//
|
|
886
|
+
// This ESLint rule mistakenly produces an error.
|
|
872
887
|
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
873
888
|
`Could not update network: Cannot update RPC endpoints in such a way that the selected network '${this.state.selectedNetworkClientId}' would be removed without a replacement. Choose a different RPC endpoint as the selected network via the \`replacementSelectedRpcEndpointIndex\` option.`);
|
|
874
889
|
}
|
|
@@ -938,7 +953,7 @@ export class NetworkController extends BaseController {
|
|
|
938
953
|
removeNetwork(chainId) {
|
|
939
954
|
const existingNetworkConfiguration = this.state.networkConfigurationsByChainId[chainId];
|
|
940
955
|
if (existingNetworkConfiguration === undefined) {
|
|
941
|
-
throw new Error(`Cannot find network configuration for chain ${
|
|
956
|
+
throw new Error(`Cannot find network configuration for chain '${chainId}'`);
|
|
942
957
|
}
|
|
943
958
|
if (existingNetworkConfiguration.rpcEndpoints.some((rpcEndpoint) => rpcEndpoint.networkClientId === this.state.selectedNetworkClientId)) {
|
|
944
959
|
throw new Error(`Cannot remove the currently selected network`);
|
|
@@ -962,6 +977,7 @@ export class NetworkController extends BaseController {
|
|
|
962
977
|
});
|
|
963
978
|
});
|
|
964
979
|
__classPrivateFieldSet(this, _NetworkController_networkConfigurationsByNetworkClientId, buildNetworkConfigurationsByNetworkClientId(this.state.networkConfigurationsByChainId), "f");
|
|
980
|
+
this.messagingSystem.publish('NetworkController:networkRemoved', existingNetworkConfiguration);
|
|
965
981
|
}
|
|
966
982
|
/**
|
|
967
983
|
* Assuming that the network has been previously switched, switches to this
|
|
@@ -1076,7 +1092,7 @@ async function _NetworkController_determineEIP1559Compatibility(networkClientId)
|
|
|
1076
1092
|
const errorMessagePrefix = mode === 'update' ? 'Could not update network' : 'Could not add network';
|
|
1077
1093
|
if (!isStrictHexString(networkFields.chainId) ||
|
|
1078
1094
|
!isSafeChainId(networkFields.chainId)) {
|
|
1079
|
-
throw new Error(`${errorMessagePrefix}: Invalid \`chainId\` ${
|
|
1095
|
+
throw new Error(`${errorMessagePrefix}: Invalid \`chainId\` '${networkFields.chainId}' (must start with "0x" and not exceed the maximum)`);
|
|
1080
1096
|
}
|
|
1081
1097
|
if (existingNetworkConfiguration === null ||
|
|
1082
1098
|
networkFields.chainId !== existingNetworkConfiguration.chainId) {
|
|
@@ -1084,13 +1100,13 @@ async function _NetworkController_determineEIP1559Compatibility(networkClientId)
|
|
|
1084
1100
|
if (existingNetworkConfigurationViaChainId !== undefined) {
|
|
1085
1101
|
if (existingNetworkConfiguration === null) {
|
|
1086
1102
|
throw new Error(
|
|
1087
|
-
//
|
|
1103
|
+
// This ESLint rule mistakenly produces an error.
|
|
1088
1104
|
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
1089
1105
|
`Could not add network for chain ${args.networkFields.chainId} as another network for that chain already exists ('${existingNetworkConfigurationViaChainId.name}')`);
|
|
1090
1106
|
}
|
|
1091
1107
|
else {
|
|
1092
1108
|
throw new Error(
|
|
1093
|
-
//
|
|
1109
|
+
// This ESLint rule mistakenly produces an error.
|
|
1094
1110
|
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
1095
1111
|
`Cannot move network from chain ${existingNetworkConfiguration.chainId} to ${networkFields.chainId} as another network for that chain already exists ('${existingNetworkConfigurationViaChainId.name}')`);
|
|
1096
1112
|
}
|
|
@@ -1108,7 +1124,10 @@ async function _NetworkController_determineEIP1559Compatibility(networkClientId)
|
|
|
1108
1124
|
}
|
|
1109
1125
|
for (const rpcEndpointFields of networkFields.rpcEndpoints) {
|
|
1110
1126
|
if (!isValidUrl(rpcEndpointFields.url)) {
|
|
1111
|
-
throw new Error(
|
|
1127
|
+
throw new Error(
|
|
1128
|
+
// This ESLint rule mistakenly produces an error.
|
|
1129
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
1130
|
+
`${errorMessagePrefix}: An entry in \`rpcEndpoints\` has invalid URL '${rpcEndpointFields.url}'`);
|
|
1112
1131
|
}
|
|
1113
1132
|
const networkClientId = 'networkClientId' in rpcEndpointFields
|
|
1114
1133
|
? rpcEndpointFields.networkClientId
|
|
@@ -1125,10 +1144,10 @@ async function _NetworkController_determineEIP1559Compatibility(networkClientId)
|
|
|
1125
1144
|
networkClientId !== undefined &&
|
|
1126
1145
|
rpcEndpointFields.type === RpcEndpointType.Custom &&
|
|
1127
1146
|
!Object.values(autoManagedNetworkClientRegistry).some((networkClientsById) => networkClientId in networkClientsById)) {
|
|
1128
|
-
throw new Error(
|
|
1147
|
+
throw new Error(
|
|
1129
1148
|
// This is a string.
|
|
1130
1149
|
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
1131
|
-
rpcEndpointFields.url}' refers to network client ${
|
|
1150
|
+
`${errorMessagePrefix}: RPC endpoint '${rpcEndpointFields.url}' refers to network client '${networkClientId}' that does not exist`);
|
|
1132
1151
|
}
|
|
1133
1152
|
if (networkFields.rpcEndpoints.some((otherRpcEndpointFields) => otherRpcEndpointFields !== rpcEndpointFields &&
|
|
1134
1153
|
URI.equal(otherRpcEndpointFields.url, rpcEndpointFields.url))) {
|
|
@@ -1141,13 +1160,18 @@ async function _NetworkController_determineEIP1559Compatibility(networkClientId)
|
|
|
1141
1160
|
for (const networkConfiguration of networkConfigurationsForOtherChains) {
|
|
1142
1161
|
const rpcEndpoint = networkConfiguration.rpcEndpoints.find((existingRpcEndpoint) => URI.equal(rpcEndpointFields.url, existingRpcEndpoint.url));
|
|
1143
1162
|
if (rpcEndpoint) {
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
|
|
1148
|
-
|
|
1149
|
-
|
|
1150
|
-
|
|
1163
|
+
if (mode === 'update') {
|
|
1164
|
+
throw new Error(
|
|
1165
|
+
// This ESLint rule mistakenly produces an error.
|
|
1166
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
1167
|
+
`Could not update network to point to same RPC endpoint as existing network for chain ${networkConfiguration.chainId} ('${networkConfiguration.name}')`);
|
|
1168
|
+
}
|
|
1169
|
+
else {
|
|
1170
|
+
throw new Error(
|
|
1171
|
+
// This ESLint rule mistakenly produces an error.
|
|
1172
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
1173
|
+
`Could not add network that points to same RPC endpoint as existing network for chain ${networkConfiguration.chainId} ('${networkConfiguration.name}')`);
|
|
1174
|
+
}
|
|
1151
1175
|
}
|
|
1152
1176
|
}
|
|
1153
1177
|
}
|
|
@@ -1254,6 +1278,9 @@ async function _NetworkController_determineEIP1559Compatibility(networkClientId)
|
|
|
1254
1278
|
delete state.networkConfigurationsByChainId[args.existingNetworkConfiguration.chainId];
|
|
1255
1279
|
}
|
|
1256
1280
|
if (mode === 'add' || mode === 'update') {
|
|
1281
|
+
if (!deepEqual(state.networkConfigurationsByChainId[args.networkFields.chainId], args.networkConfigurationToPersist)) {
|
|
1282
|
+
args.networkConfigurationToPersist.lastUpdatedAt = Date.now();
|
|
1283
|
+
}
|
|
1257
1284
|
state.networkConfigurationsByChainId[args.networkFields.chainId] =
|
|
1258
1285
|
args.networkConfigurationToPersist;
|
|
1259
1286
|
}
|
|
@@ -1308,14 +1335,14 @@ async function _NetworkController_determineEIP1559Compatibility(networkClientId)
|
|
|
1308
1335
|
// This is impossible to reach
|
|
1309
1336
|
/* istanbul ignore if */
|
|
1310
1337
|
if (!possibleAutoManagedNetworkClient) {
|
|
1311
|
-
throw new Error(`No Infura network client found with ID ${
|
|
1338
|
+
throw new Error(`No Infura network client found with ID '${networkClientId}'`);
|
|
1312
1339
|
}
|
|
1313
1340
|
autoManagedNetworkClient = possibleAutoManagedNetworkClient;
|
|
1314
1341
|
}
|
|
1315
1342
|
else {
|
|
1316
1343
|
const possibleAutoManagedNetworkClient = autoManagedNetworkClientRegistry[NetworkClientType.Custom][networkClientId];
|
|
1317
1344
|
if (!possibleAutoManagedNetworkClient) {
|
|
1318
|
-
throw new Error(`No network client found with ID ${
|
|
1345
|
+
throw new Error(`No network client found with ID '${networkClientId}'`);
|
|
1319
1346
|
}
|
|
1320
1347
|
autoManagedNetworkClient = possibleAutoManagedNetworkClient;
|
|
1321
1348
|
}
|