@metamask-previews/network-controller 23.1.0-preview-aa7690c1 → 23.1.0-preview-cff14565
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/dist/NetworkController.cjs +64 -9
- package/dist/NetworkController.cjs.map +1 -1
- package/dist/NetworkController.d.cts +18 -3
- package/dist/NetworkController.d.cts.map +1 -1
- package/dist/NetworkController.d.mts +18 -3
- package/dist/NetworkController.d.mts.map +1 -1
- package/dist/NetworkController.mjs +65 -10
- package/dist/NetworkController.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/dist/types.cjs.map +1 -1
- package/dist/types.d.cts +5 -1
- package/dist/types.d.cts.map +1 -1
- package/dist/types.d.mts +5 -1
- package/dist/types.d.mts.map +1 -1
- package/dist/types.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -11,7 +11,7 @@ import { NetworkStatus } from "./constants.cjs";
|
|
|
11
11
|
import type { AutoManagedNetworkClient, ProxyWithAccessibleTarget } from "./create-auto-managed-network-client.cjs";
|
|
12
12
|
import type { RpcServiceOptions } from "./rpc-service/rpc-service.cjs";
|
|
13
13
|
import { NetworkClientType } from "./types.cjs";
|
|
14
|
-
import type { BlockTracker, Provider, CustomNetworkClientConfiguration, InfuraNetworkClientConfiguration } from "./types.cjs";
|
|
14
|
+
import type { BlockTracker, Provider, CustomNetworkClientConfiguration, InfuraNetworkClientConfiguration, AdditionalDefaultNetwork } from "./types.cjs";
|
|
15
15
|
export type Block = {
|
|
16
16
|
baseFeePerGas?: string;
|
|
17
17
|
};
|
|
@@ -389,6 +389,10 @@ export type NetworkControllerGetSelectedNetworkClientAction = {
|
|
|
389
389
|
type: `NetworkController:getSelectedNetworkClient`;
|
|
390
390
|
handler: NetworkController['getSelectedNetworkClient'];
|
|
391
391
|
};
|
|
392
|
+
export type NetworkControllerGetSelectedChainIdAction = {
|
|
393
|
+
type: 'NetworkController:getSelectedChainId';
|
|
394
|
+
handler: NetworkController['getSelectedChainId'];
|
|
395
|
+
};
|
|
392
396
|
export type NetworkControllerGetEIP1559CompatibilityAction = {
|
|
393
397
|
type: `NetworkController:getEIP1559Compatibility`;
|
|
394
398
|
handler: NetworkController['getEIP1559Compatibility'];
|
|
@@ -431,7 +435,7 @@ export type NetworkControllerUpdateNetworkAction = {
|
|
|
431
435
|
type: 'NetworkController:updateNetwork';
|
|
432
436
|
handler: NetworkController['updateNetwork'];
|
|
433
437
|
};
|
|
434
|
-
export type NetworkControllerActions = NetworkControllerGetStateAction | NetworkControllerGetEthQueryAction | NetworkControllerGetNetworkClientByIdAction | NetworkControllerGetSelectedNetworkClientAction | NetworkControllerGetEIP1559CompatibilityAction | NetworkControllerFindNetworkClientIdByChainIdAction | NetworkControllerSetActiveNetworkAction | NetworkControllerSetProviderTypeAction | NetworkControllerGetNetworkConfigurationByChainId | NetworkControllerGetNetworkConfigurationByNetworkClientId | NetworkControllerAddNetworkAction | NetworkControllerRemoveNetworkAction | NetworkControllerUpdateNetworkAction;
|
|
438
|
+
export type NetworkControllerActions = NetworkControllerGetStateAction | NetworkControllerGetEthQueryAction | NetworkControllerGetNetworkClientByIdAction | NetworkControllerGetSelectedNetworkClientAction | NetworkControllerGetSelectedChainIdAction | NetworkControllerGetEIP1559CompatibilityAction | NetworkControllerFindNetworkClientIdByChainIdAction | NetworkControllerSetActiveNetworkAction | NetworkControllerSetProviderTypeAction | NetworkControllerGetNetworkConfigurationByChainId | NetworkControllerGetNetworkConfigurationByNetworkClientId | NetworkControllerAddNetworkAction | NetworkControllerRemoveNetworkAction | NetworkControllerUpdateNetworkAction;
|
|
435
439
|
export type NetworkControllerMessenger = RestrictedMessenger<typeof controllerName, NetworkControllerActions, NetworkControllerEvents, never, never>;
|
|
436
440
|
/**
|
|
437
441
|
* Options for the NetworkController constructor.
|
|
@@ -464,14 +468,19 @@ export type NetworkControllerOptions = {
|
|
|
464
468
|
* automatically).
|
|
465
469
|
*/
|
|
466
470
|
getRpcServiceOptions: (rpcEndpointUrl: string) => Omit<RpcServiceOptions, 'failoverService' | 'endpointUrl'>;
|
|
471
|
+
/**
|
|
472
|
+
* An array of Hex Chain IDs representing the additional networks to be included as default.
|
|
473
|
+
*/
|
|
474
|
+
additionalDefaultNetworks?: AdditionalDefaultNetwork[];
|
|
467
475
|
};
|
|
468
476
|
/**
|
|
469
477
|
* Constructs properties for the NetworkController state whose values will be
|
|
470
478
|
* used if not provided to the constructor.
|
|
471
479
|
*
|
|
480
|
+
* @param [additionalDefaultNetworks] - An array of Hex Chain IDs representing the additional networks to be included as default.
|
|
472
481
|
* @returns The default NetworkController state.
|
|
473
482
|
*/
|
|
474
|
-
export declare function getDefaultNetworkControllerState(): NetworkState;
|
|
483
|
+
export declare function getDefaultNetworkControllerState(additionalDefaultNetworks?: AdditionalDefaultNetwork[]): NetworkState;
|
|
475
484
|
/**
|
|
476
485
|
* Get a list of all network configurations.
|
|
477
486
|
*
|
|
@@ -608,6 +617,12 @@ export declare class NetworkController extends BaseController<typeof controllerN
|
|
|
608
617
|
provider: SwappableProxy<ProxyWithAccessibleTarget<Provider>>;
|
|
609
618
|
blockTracker: SwappableProxy<ProxyWithAccessibleTarget<BlockTracker>>;
|
|
610
619
|
} | undefined;
|
|
620
|
+
/**
|
|
621
|
+
* Accesses the chain ID from the selected network client.
|
|
622
|
+
*
|
|
623
|
+
* @returns The chain ID of the selected network client in hex format or undefined if there is no network client.
|
|
624
|
+
*/
|
|
625
|
+
getSelectedChainId(): Hex | undefined;
|
|
611
626
|
/**
|
|
612
627
|
* Internally, the Infura and custom network clients are categorized by type
|
|
613
628
|
* so that when accessing either kind of network client, TypeScript knows
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NetworkController.d.cts","sourceRoot":"","sources":["../src/NetworkController.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EACxB,0BAA0B,EAC1B,mBAAmB,EACpB,kCAAkC;AACnC,OAAO,EAAE,cAAc,EAAE,kCAAkC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,mCAAmC;AAC7D,OAAO,EACL,iBAAiB,
|
|
1
|
+
{"version":3,"file":"NetworkController.d.cts","sourceRoot":"","sources":["../src/NetworkController.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,7 +11,7 @@ import { NetworkStatus } from "./constants.mjs";
|
|
|
11
11
|
import type { AutoManagedNetworkClient, ProxyWithAccessibleTarget } from "./create-auto-managed-network-client.mjs";
|
|
12
12
|
import type { RpcServiceOptions } from "./rpc-service/rpc-service.mjs";
|
|
13
13
|
import { NetworkClientType } from "./types.mjs";
|
|
14
|
-
import type { BlockTracker, Provider, CustomNetworkClientConfiguration, InfuraNetworkClientConfiguration } from "./types.mjs";
|
|
14
|
+
import type { BlockTracker, Provider, CustomNetworkClientConfiguration, InfuraNetworkClientConfiguration, AdditionalDefaultNetwork } from "./types.mjs";
|
|
15
15
|
export type Block = {
|
|
16
16
|
baseFeePerGas?: string;
|
|
17
17
|
};
|
|
@@ -389,6 +389,10 @@ export type NetworkControllerGetSelectedNetworkClientAction = {
|
|
|
389
389
|
type: `NetworkController:getSelectedNetworkClient`;
|
|
390
390
|
handler: NetworkController['getSelectedNetworkClient'];
|
|
391
391
|
};
|
|
392
|
+
export type NetworkControllerGetSelectedChainIdAction = {
|
|
393
|
+
type: 'NetworkController:getSelectedChainId';
|
|
394
|
+
handler: NetworkController['getSelectedChainId'];
|
|
395
|
+
};
|
|
392
396
|
export type NetworkControllerGetEIP1559CompatibilityAction = {
|
|
393
397
|
type: `NetworkController:getEIP1559Compatibility`;
|
|
394
398
|
handler: NetworkController['getEIP1559Compatibility'];
|
|
@@ -431,7 +435,7 @@ export type NetworkControllerUpdateNetworkAction = {
|
|
|
431
435
|
type: 'NetworkController:updateNetwork';
|
|
432
436
|
handler: NetworkController['updateNetwork'];
|
|
433
437
|
};
|
|
434
|
-
export type NetworkControllerActions = NetworkControllerGetStateAction | NetworkControllerGetEthQueryAction | NetworkControllerGetNetworkClientByIdAction | NetworkControllerGetSelectedNetworkClientAction | NetworkControllerGetEIP1559CompatibilityAction | NetworkControllerFindNetworkClientIdByChainIdAction | NetworkControllerSetActiveNetworkAction | NetworkControllerSetProviderTypeAction | NetworkControllerGetNetworkConfigurationByChainId | NetworkControllerGetNetworkConfigurationByNetworkClientId | NetworkControllerAddNetworkAction | NetworkControllerRemoveNetworkAction | NetworkControllerUpdateNetworkAction;
|
|
438
|
+
export type NetworkControllerActions = NetworkControllerGetStateAction | NetworkControllerGetEthQueryAction | NetworkControllerGetNetworkClientByIdAction | NetworkControllerGetSelectedNetworkClientAction | NetworkControllerGetSelectedChainIdAction | NetworkControllerGetEIP1559CompatibilityAction | NetworkControllerFindNetworkClientIdByChainIdAction | NetworkControllerSetActiveNetworkAction | NetworkControllerSetProviderTypeAction | NetworkControllerGetNetworkConfigurationByChainId | NetworkControllerGetNetworkConfigurationByNetworkClientId | NetworkControllerAddNetworkAction | NetworkControllerRemoveNetworkAction | NetworkControllerUpdateNetworkAction;
|
|
435
439
|
export type NetworkControllerMessenger = RestrictedMessenger<typeof controllerName, NetworkControllerActions, NetworkControllerEvents, never, never>;
|
|
436
440
|
/**
|
|
437
441
|
* Options for the NetworkController constructor.
|
|
@@ -464,14 +468,19 @@ export type NetworkControllerOptions = {
|
|
|
464
468
|
* automatically).
|
|
465
469
|
*/
|
|
466
470
|
getRpcServiceOptions: (rpcEndpointUrl: string) => Omit<RpcServiceOptions, 'failoverService' | 'endpointUrl'>;
|
|
471
|
+
/**
|
|
472
|
+
* An array of Hex Chain IDs representing the additional networks to be included as default.
|
|
473
|
+
*/
|
|
474
|
+
additionalDefaultNetworks?: AdditionalDefaultNetwork[];
|
|
467
475
|
};
|
|
468
476
|
/**
|
|
469
477
|
* Constructs properties for the NetworkController state whose values will be
|
|
470
478
|
* used if not provided to the constructor.
|
|
471
479
|
*
|
|
480
|
+
* @param [additionalDefaultNetworks] - An array of Hex Chain IDs representing the additional networks to be included as default.
|
|
472
481
|
* @returns The default NetworkController state.
|
|
473
482
|
*/
|
|
474
|
-
export declare function getDefaultNetworkControllerState(): NetworkState;
|
|
483
|
+
export declare function getDefaultNetworkControllerState(additionalDefaultNetworks?: AdditionalDefaultNetwork[]): NetworkState;
|
|
475
484
|
/**
|
|
476
485
|
* Get a list of all network configurations.
|
|
477
486
|
*
|
|
@@ -608,6 +617,12 @@ export declare class NetworkController extends BaseController<typeof controllerN
|
|
|
608
617
|
provider: SwappableProxy<ProxyWithAccessibleTarget<Provider>>;
|
|
609
618
|
blockTracker: SwappableProxy<ProxyWithAccessibleTarget<BlockTracker>>;
|
|
610
619
|
} | undefined;
|
|
620
|
+
/**
|
|
621
|
+
* Accesses the chain ID from the selected network client.
|
|
622
|
+
*
|
|
623
|
+
* @returns The chain ID of the selected network client in hex format or undefined if there is no network client.
|
|
624
|
+
*/
|
|
625
|
+
getSelectedChainId(): Hex | undefined;
|
|
611
626
|
/**
|
|
612
627
|
* Internally, the Infura and custom network clients are categorized by type
|
|
613
628
|
* so that when accessing either kind of network client, TypeScript knows
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NetworkController.d.mts","sourceRoot":"","sources":["../src/NetworkController.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EACxB,0BAA0B,EAC1B,mBAAmB,EACpB,kCAAkC;AACnC,OAAO,EAAE,cAAc,EAAE,kCAAkC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,mCAAmC;AAC7D,OAAO,EACL,iBAAiB,
|
|
1
|
+
{"version":3,"file":"NetworkController.d.mts","sourceRoot":"","sources":["../src/NetworkController.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,7 +17,7 @@ function $importDefault(module) {
|
|
|
17
17
|
return module;
|
|
18
18
|
}
|
|
19
19
|
import { BaseController } from "@metamask/base-controller";
|
|
20
|
-
import { InfuraNetworkType, NetworkType, isSafeChainId, isInfuraNetworkType, ChainId, NetworksTicker, NetworkNickname } from "@metamask/controller-utils";
|
|
20
|
+
import { InfuraNetworkType, NetworkType, isSafeChainId, isInfuraNetworkType, ChainId, NetworksTicker, NetworkNickname, BUILT_IN_CUSTOM_NETWORKS_RPC, BUILT_IN_NETWORKS, BuiltInNetworkName } from "@metamask/controller-utils";
|
|
21
21
|
import $EthQuery from "@metamask/eth-query";
|
|
22
22
|
const EthQuery = $importDefault($EthQuery);
|
|
23
23
|
import { errorCodes } from "@metamask/rpc-errors";
|
|
@@ -85,9 +85,27 @@ const controllerName = 'NetworkController';
|
|
|
85
85
|
* Constructs a value for the state property `networkConfigurationsByChainId`
|
|
86
86
|
* which will be used if it has not been provided to the constructor.
|
|
87
87
|
*
|
|
88
|
+
* @param [additionalDefaultNetworks] - An array of Hex Chain IDs representing the additional networks to be included as default.
|
|
88
89
|
* @returns The default value for `networkConfigurationsByChainId`.
|
|
89
90
|
*/
|
|
90
|
-
function getDefaultNetworkConfigurationsByChainId() {
|
|
91
|
+
function getDefaultNetworkConfigurationsByChainId(additionalDefaultNetworks = []) {
|
|
92
|
+
const infuraNetworks = getDefaultInfuraNetworkConfigurationsByChainId();
|
|
93
|
+
const customNetworks = getDefaultCustomNetworkConfigurationsByChainId();
|
|
94
|
+
return additionalDefaultNetworks.reduce((obj, chainId) => {
|
|
95
|
+
if (hasProperty(customNetworks, chainId)) {
|
|
96
|
+
obj[chainId] = customNetworks[chainId];
|
|
97
|
+
}
|
|
98
|
+
return obj;
|
|
99
|
+
},
|
|
100
|
+
// Always include the infura networks in the default networks
|
|
101
|
+
infuraNetworks);
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Constructs a `networkConfigurationsByChainId` object for all default Infura networks.
|
|
105
|
+
*
|
|
106
|
+
* @returns The `networkConfigurationsByChainId` object of all Infura networks.
|
|
107
|
+
*/
|
|
108
|
+
function getDefaultInfuraNetworkConfigurationsByChainId() {
|
|
91
109
|
return Object.values(InfuraNetworkType).reduce((obj, infuraNetworkType) => {
|
|
92
110
|
const chainId = ChainId[infuraNetworkType];
|
|
93
111
|
const rpcEndpointUrl =
|
|
@@ -112,15 +130,42 @@ function getDefaultNetworkConfigurationsByChainId() {
|
|
|
112
130
|
return { ...obj, [chainId]: networkConfiguration };
|
|
113
131
|
}, {});
|
|
114
132
|
}
|
|
133
|
+
/**
|
|
134
|
+
* Constructs a `networkConfigurationsByChainId` object for all default custom networks.
|
|
135
|
+
*
|
|
136
|
+
* @returns The `networkConfigurationsByChainId` object of all custom networks.
|
|
137
|
+
*/
|
|
138
|
+
function getDefaultCustomNetworkConfigurationsByChainId() {
|
|
139
|
+
const { ticker, rpcPrefs } = BUILT_IN_NETWORKS[BuiltInNetworkName.MegaETHTestnet];
|
|
140
|
+
return {
|
|
141
|
+
[ChainId[BuiltInNetworkName.MegaETHTestnet]]: {
|
|
142
|
+
blockExplorerUrls: [rpcPrefs.blockExplorerUrl],
|
|
143
|
+
chainId: ChainId[BuiltInNetworkName.MegaETHTestnet],
|
|
144
|
+
defaultRpcEndpointIndex: 0,
|
|
145
|
+
defaultBlockExplorerUrlIndex: 0,
|
|
146
|
+
name: NetworkNickname[BuiltInNetworkName.MegaETHTestnet],
|
|
147
|
+
nativeCurrency: ticker,
|
|
148
|
+
rpcEndpoints: [
|
|
149
|
+
{
|
|
150
|
+
failoverUrls: [],
|
|
151
|
+
networkClientId: BuiltInNetworkName.MegaETHTestnet,
|
|
152
|
+
type: RpcEndpointType.Custom,
|
|
153
|
+
url: BUILT_IN_CUSTOM_NETWORKS_RPC.MEGAETH_TESTNET,
|
|
154
|
+
},
|
|
155
|
+
],
|
|
156
|
+
},
|
|
157
|
+
};
|
|
158
|
+
}
|
|
115
159
|
/**
|
|
116
160
|
* Constructs properties for the NetworkController state whose values will be
|
|
117
161
|
* used if not provided to the constructor.
|
|
118
162
|
*
|
|
163
|
+
* @param [additionalDefaultNetworks] - An array of Hex Chain IDs representing the additional networks to be included as default.
|
|
119
164
|
* @returns The default NetworkController state.
|
|
120
165
|
*/
|
|
121
|
-
export function getDefaultNetworkControllerState() {
|
|
166
|
+
export function getDefaultNetworkControllerState(additionalDefaultNetworks) {
|
|
122
167
|
const networksMetadata = {};
|
|
123
|
-
const networkConfigurationsByChainId = getDefaultNetworkConfigurationsByChainId();
|
|
168
|
+
const networkConfigurationsByChainId = getDefaultNetworkConfigurationsByChainId(additionalDefaultNetworks);
|
|
124
169
|
return {
|
|
125
170
|
selectedNetworkClientId: InfuraNetworkType.mainnet,
|
|
126
171
|
networksMetadata,
|
|
@@ -269,8 +314,11 @@ export class NetworkController extends BaseController {
|
|
|
269
314
|
* @param options - The options; see {@link NetworkControllerOptions}.
|
|
270
315
|
*/
|
|
271
316
|
constructor(options) {
|
|
272
|
-
const { messenger, state, infuraProjectId, log, getRpcServiceOptions } = options;
|
|
273
|
-
const initialState = {
|
|
317
|
+
const { messenger, state, infuraProjectId, log, getRpcServiceOptions, additionalDefaultNetworks, } = options;
|
|
318
|
+
const initialState = {
|
|
319
|
+
...getDefaultNetworkControllerState(additionalDefaultNetworks),
|
|
320
|
+
...state,
|
|
321
|
+
};
|
|
274
322
|
validateNetworkControllerState(initialState);
|
|
275
323
|
if (!infuraProjectId || typeof infuraProjectId !== 'string') {
|
|
276
324
|
throw new Error('Invalid Infura project ID');
|
|
@@ -344,10 +392,8 @@ export class NetworkController extends BaseController {
|
|
|
344
392
|
// ESLint is mistaken here; `name` is a string.
|
|
345
393
|
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
346
394
|
`${this.name}:getNetworkConfigurationByNetworkClientId`, this.getNetworkConfigurationByNetworkClientId.bind(this));
|
|
347
|
-
this.messagingSystem.registerActionHandler(
|
|
348
|
-
|
|
349
|
-
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
350
|
-
`${this.name}:getSelectedNetworkClient`, this.getSelectedNetworkClient.bind(this));
|
|
395
|
+
this.messagingSystem.registerActionHandler(`${this.name}:getSelectedNetworkClient`, this.getSelectedNetworkClient.bind(this));
|
|
396
|
+
this.messagingSystem.registerActionHandler(`${this.name}:getSelectedChainId`, this.getSelectedChainId.bind(this));
|
|
351
397
|
this.messagingSystem.registerActionHandler(
|
|
352
398
|
// ESLint is mistaken here; `name` is a string.
|
|
353
399
|
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
@@ -386,6 +432,15 @@ export class NetworkController extends BaseController {
|
|
|
386
432
|
}
|
|
387
433
|
return undefined;
|
|
388
434
|
}
|
|
435
|
+
/**
|
|
436
|
+
* Accesses the chain ID from the selected network client.
|
|
437
|
+
*
|
|
438
|
+
* @returns The chain ID of the selected network client in hex format or undefined if there is no network client.
|
|
439
|
+
*/
|
|
440
|
+
getSelectedChainId() {
|
|
441
|
+
const networkConfiguration = this.getNetworkConfigurationByNetworkClientId(this.state.selectedNetworkClientId);
|
|
442
|
+
return networkConfiguration?.chainId;
|
|
443
|
+
}
|
|
389
444
|
/**
|
|
390
445
|
* Internally, the Infura and custom network clients are categorized by type
|
|
391
446
|
* so that when accessing either kind of network client, TypeScript knows
|