@metamask/network-controller 22.2.1 → 23.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.
Files changed (70) hide show
  1. package/CHANGELOG.md +69 -2
  2. package/dist/NetworkController.cjs +63 -30
  3. package/dist/NetworkController.cjs.map +1 -1
  4. package/dist/NetworkController.d.cts +90 -5
  5. package/dist/NetworkController.d.cts.map +1 -1
  6. package/dist/NetworkController.d.mts +90 -5
  7. package/dist/NetworkController.d.mts.map +1 -1
  8. package/dist/NetworkController.mjs +63 -30
  9. package/dist/NetworkController.mjs.map +1 -1
  10. package/dist/create-auto-managed-network-client.cjs +26 -6
  11. package/dist/create-auto-managed-network-client.cjs.map +1 -1
  12. package/dist/create-auto-managed-network-client.d.cts +12 -2
  13. package/dist/create-auto-managed-network-client.d.cts.map +1 -1
  14. package/dist/create-auto-managed-network-client.d.mts +12 -2
  15. package/dist/create-auto-managed-network-client.d.mts.map +1 -1
  16. package/dist/create-auto-managed-network-client.mjs +26 -6
  17. package/dist/create-auto-managed-network-client.mjs.map +1 -1
  18. package/dist/create-network-client.cjs +57 -17
  19. package/dist/create-network-client.cjs.map +1 -1
  20. package/dist/create-network-client.d.cts +13 -2
  21. package/dist/create-network-client.d.cts.map +1 -1
  22. package/dist/create-network-client.d.mts +13 -2
  23. package/dist/create-network-client.d.mts.map +1 -1
  24. package/dist/create-network-client.mjs +57 -17
  25. package/dist/create-network-client.mjs.map +1 -1
  26. package/dist/index.cjs +3 -1
  27. package/dist/index.cjs.map +1 -1
  28. package/dist/index.d.cts +3 -1
  29. package/dist/index.d.cts.map +1 -1
  30. package/dist/index.d.mts +3 -1
  31. package/dist/index.d.mts.map +1 -1
  32. package/dist/index.mjs +1 -0
  33. package/dist/index.mjs.map +1 -1
  34. package/dist/rpc-service/abstract-rpc-service.cjs.map +1 -1
  35. package/dist/rpc-service/abstract-rpc-service.d.cts +5 -39
  36. package/dist/rpc-service/abstract-rpc-service.d.cts.map +1 -1
  37. package/dist/rpc-service/abstract-rpc-service.d.mts +5 -39
  38. package/dist/rpc-service/abstract-rpc-service.d.mts.map +1 -1
  39. package/dist/rpc-service/abstract-rpc-service.mjs.map +1 -1
  40. package/dist/rpc-service/rpc-service-chain.cjs +10 -23
  41. package/dist/rpc-service/rpc-service-chain.cjs.map +1 -1
  42. package/dist/rpc-service/rpc-service-chain.d.cts +10 -35
  43. package/dist/rpc-service/rpc-service-chain.d.cts.map +1 -1
  44. package/dist/rpc-service/rpc-service-chain.d.mts +10 -35
  45. package/dist/rpc-service/rpc-service-chain.d.mts.map +1 -1
  46. package/dist/rpc-service/rpc-service-chain.mjs +10 -23
  47. package/dist/rpc-service/rpc-service-chain.mjs.map +1 -1
  48. package/dist/rpc-service/rpc-service-requestable.cjs +3 -0
  49. package/dist/rpc-service/rpc-service-requestable.cjs.map +1 -0
  50. package/dist/rpc-service/rpc-service-requestable.d.cts +47 -0
  51. package/dist/rpc-service/rpc-service-requestable.d.cts.map +1 -0
  52. package/dist/rpc-service/rpc-service-requestable.d.mts +47 -0
  53. package/dist/rpc-service/rpc-service-requestable.d.mts.map +1 -0
  54. package/dist/rpc-service/rpc-service-requestable.mjs +2 -0
  55. package/dist/rpc-service/rpc-service-requestable.mjs.map +1 -0
  56. package/dist/rpc-service/rpc-service.cjs +108 -47
  57. package/dist/rpc-service/rpc-service.cjs.map +1 -1
  58. package/dist/rpc-service/rpc-service.d.cts +63 -27
  59. package/dist/rpc-service/rpc-service.d.cts.map +1 -1
  60. package/dist/rpc-service/rpc-service.d.mts +63 -27
  61. package/dist/rpc-service/rpc-service.d.mts.map +1 -1
  62. package/dist/rpc-service/rpc-service.mjs +106 -45
  63. package/dist/rpc-service/rpc-service.mjs.map +1 -1
  64. package/dist/types.cjs.map +1 -1
  65. package/dist/types.d.cts +11 -6
  66. package/dist/types.d.cts.map +1 -1
  67. package/dist/types.d.mts +11 -6
  68. package/dist/types.d.mts.map +1 -1
  69. package/dist/types.mjs.map +1 -1
  70. package/package.json +7 -5
@@ -9,6 +9,7 @@ import type { Draft } from "immer";
9
9
  import type { Logger } from "loglevel";
10
10
  import { NetworkStatus } from "./constants.cjs";
11
11
  import type { AutoManagedNetworkClient, ProxyWithAccessibleTarget } from "./create-auto-managed-network-client.cjs";
12
+ import type { RpcServiceOptions } from "./rpc-service/rpc-service.cjs";
12
13
  import { NetworkClientType } from "./types.cjs";
13
14
  import type { BlockTracker, Provider, CustomNetworkClientConfiguration, InfuraNetworkClientConfiguration } from "./types.cjs";
14
15
  export type Block = {
@@ -52,6 +53,10 @@ export declare enum RpcEndpointType {
52
53
  * separate type.
53
54
  */
54
55
  export type InfuraRpcEndpoint = {
56
+ /**
57
+ * Alternate RPC endpoints to use when this endpoint is down.
58
+ */
59
+ failoverUrls: string[];
55
60
  /**
56
61
  * The optional user-facing nickname of the endpoint.
57
62
  */
@@ -79,6 +84,10 @@ export type InfuraRpcEndpoint = {
79
84
  * EVM chain. It may refer to an Infura network, but only by coincidence.
80
85
  */
81
86
  export type CustomRpcEndpoint = {
87
+ /**
88
+ * Alternate RPC endpoints to use when this endpoint is down.
89
+ */
90
+ failoverUrls: string[];
82
91
  /**
83
92
  * The optional user-facing nickname of the endpoint.
84
93
  */
@@ -324,7 +333,49 @@ export type NetworkControllerNetworkRemovedEvent = {
324
333
  type: 'NetworkController:networkRemoved';
325
334
  payload: [networkConfiguration: NetworkConfiguration];
326
335
  };
327
- export type NetworkControllerEvents = NetworkControllerStateChangeEvent | NetworkControllerNetworkWillChangeEvent | NetworkControllerNetworkDidChangeEvent | NetworkControllerInfuraIsBlockedEvent | NetworkControllerInfuraIsUnblockedEvent | NetworkControllerNetworkAddedEvent | NetworkControllerNetworkRemovedEvent;
336
+ /**
337
+ * `rpcEndpointUnavailable` is published after an attempt to make a request to
338
+ * an RPC endpoint fails too many times in a row (because of a connection error
339
+ * or an unusable response).
340
+ */
341
+ export type NetworkControllerRpcEndpointUnavailableEvent = {
342
+ type: 'NetworkController:rpcEndpointUnavailable';
343
+ payload: [
344
+ {
345
+ chainId: Hex;
346
+ endpointUrl: string;
347
+ failoverEndpointUrl?: string;
348
+ error: unknown;
349
+ }
350
+ ];
351
+ };
352
+ /**
353
+ * `rpcEndpointDegraded` is published after a request to an RPC endpoint
354
+ * responds successfully but takes too long.
355
+ */
356
+ export type NetworkControllerRpcEndpointDegradedEvent = {
357
+ type: 'NetworkController:rpcEndpointDegraded';
358
+ payload: [
359
+ {
360
+ chainId: Hex;
361
+ endpointUrl: string;
362
+ }
363
+ ];
364
+ };
365
+ /**
366
+ * `rpcEndpointRequestRetried` is published after a request to an RPC endpoint
367
+ * is retried following a connection error or an unusable response.
368
+ */
369
+ export type NetworkControllerRpcEndpointRequestRetriedEvent = {
370
+ type: 'NetworkController:rpcEndpointRequestRetried';
371
+ payload: [
372
+ {
373
+ endpointUrl: string;
374
+ attempt: number;
375
+ }
376
+ ];
377
+ };
378
+ export type NetworkControllerEvents = NetworkControllerStateChangeEvent | NetworkControllerNetworkWillChangeEvent | NetworkControllerNetworkDidChangeEvent | NetworkControllerInfuraIsBlockedEvent | NetworkControllerInfuraIsUnblockedEvent | NetworkControllerNetworkAddedEvent | NetworkControllerNetworkRemovedEvent | NetworkControllerRpcEndpointUnavailableEvent | NetworkControllerRpcEndpointDegradedEvent | NetworkControllerRpcEndpointRequestRetriedEvent;
328
379
  export type NetworkControllerGetStateAction = ControllerGetStateAction<typeof controllerName, NetworkState>;
329
380
  export type NetworkControllerGetEthQueryAction = {
330
381
  type: `NetworkController:getEthQuery`;
@@ -382,11 +433,37 @@ export type NetworkControllerUpdateNetworkAction = {
382
433
  };
383
434
  export type NetworkControllerActions = NetworkControllerGetStateAction | NetworkControllerGetEthQueryAction | NetworkControllerGetNetworkClientByIdAction | NetworkControllerGetSelectedNetworkClientAction | NetworkControllerGetEIP1559CompatibilityAction | NetworkControllerFindNetworkClientIdByChainIdAction | NetworkControllerSetActiveNetworkAction | NetworkControllerSetProviderTypeAction | NetworkControllerGetNetworkConfigurationByChainId | NetworkControllerGetNetworkConfigurationByNetworkClientId | NetworkControllerAddNetworkAction | NetworkControllerRemoveNetworkAction | NetworkControllerUpdateNetworkAction;
384
435
  export type NetworkControllerMessenger = RestrictedMessenger<typeof controllerName, NetworkControllerActions, NetworkControllerEvents, never, never>;
436
+ /**
437
+ * Options for the NetworkController constructor.
438
+ */
385
439
  export type NetworkControllerOptions = {
440
+ /**
441
+ * The messenger suited for this controller.
442
+ */
386
443
  messenger: NetworkControllerMessenger;
444
+ /**
445
+ * The API key for Infura, used to make requests to Infura.
446
+ */
387
447
  infuraProjectId: string;
448
+ /**
449
+ * The desired state with which to initialize this controller.
450
+ * Missing properties will be filled in with defaults. For instance, if not
451
+ * specified, `networkConfigurationsByChainId` will default to a basic set of
452
+ * network configurations (see {@link InfuraNetworkType} for the list).
453
+ */
388
454
  state?: Partial<NetworkState>;
455
+ /**
456
+ * A `loglevel` logger object.
457
+ */
389
458
  log?: Logger;
459
+ /**
460
+ * A function that can be used to customize the options passed to a
461
+ * RPC service constructed for an RPC endpoint. The object that the function
462
+ * should return is the same as {@link RpcServiceOptions}, except that
463
+ * `failoverService` and `endpointUrl` are not accepted (as they are filled in
464
+ * automatically).
465
+ */
466
+ getRpcServiceOptions: (rpcEndpointUrl: string) => Omit<RpcServiceOptions, 'failoverService' | 'endpointUrl'>;
390
467
  };
391
468
  /**
392
469
  * Constructs properties for the NetworkController state whose values will be
@@ -507,7 +584,12 @@ export type AutoManagedNetworkClientRegistry = {
507
584
  */
508
585
  export declare class NetworkController extends BaseController<typeof controllerName, NetworkState, NetworkControllerMessenger> {
509
586
  #private;
510
- constructor({ messenger, state, infuraProjectId, log, }: NetworkControllerOptions);
587
+ /**
588
+ * Constructs a NetworkController.
589
+ *
590
+ * @param options - The options; see {@link NetworkControllerOptions}.
591
+ */
592
+ constructor(options: NetworkControllerOptions);
511
593
  /**
512
594
  * Accesses the provider and block tracker for the currently selected network.
513
595
  * @returns The proxy and block tracker proxies.
@@ -706,10 +788,13 @@ export declare class NetworkController extends BaseController<typeof controllerN
706
788
  */
707
789
  loadBackup({ networkConfigurationsByChainId, }: Pick<NetworkState, 'networkConfigurationsByChainId'>): void;
708
790
  /**
709
- * Searches for a network configuration ID with the given ChainID and returns it.
791
+ * Searches for the default RPC endpoint configured for the given chain and
792
+ * returns its network client ID. This can then be passed to
793
+ * {@link getNetworkClientById} to retrieve the network client.
710
794
  *
711
- * @param chainId - ChainId to search for
712
- * @returns networkClientId of the network configuration with the given chainId
795
+ * @param chainId - Chain ID to search for.
796
+ * @returns The ID of the network client created for the chain's default RPC
797
+ * endpoint.
713
798
  */
714
799
  findNetworkClientIdByChainId(chainId: Hex): NetworkClientId;
715
800
  }
@@ -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,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;AAEnC,OAAO,KAAK,EAAE,MAAM,EAAE,iBAAiB;AAKvC,OAAO,EAAsB,aAAa,EAAE,wBAAoB;AAChE,OAAO,KAAK,EACV,wBAAwB,EACxB,yBAAyB,EAC1B,iDAA6C;AAG9C,OAAO,EAAE,iBAAiB,EAAE,oBAAgB;AAC5C,OAAO,KAAK,EACV,YAAY,EACZ,QAAQ,EACR,gCAAgC,EAChC,gCAAgC,EAEjC,oBAAgB;AAOjB,MAAM,MAAM,KAAK,GAAG;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B;;OAEG;IAGH,IAAI,EAAE;QACJ,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;KAC9B,CAAC;IACF;;OAEG;IACH,MAAM,EAAE,aAAa,CAAC;CACvB,CAAC;AAEF;;;;;GAKG;AACH,oBAAY,eAAe;IACzB,MAAM,WAAW;IACjB,MAAM,WAAW;CAClB;AAED;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;;OAKG;IACH,eAAe,EAAE,sBAAsB,CAAC;IACxC;;OAEG;IACH,IAAI,EAAE,eAAe,CAAC,MAAM,CAAC;IAC7B;;;;OAIG;IACH,GAAG,EAAE,WAAW,iBAAiB,iCAAiC,CAAC;CACpE,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;;OAKG;IACH,eAAe,EAAE,qBAAqB,CAAC;IACvC;;OAEG;IACH,IAAI,EAAE,eAAe,CAAC,MAAM,CAAC;IAC7B;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,WAAW,GAAG,iBAAiB,GAAG,iBAAiB,CAAC;AAEhE;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC;;;OAGG;IACH,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B;;;;OAIG;IACH,OAAO,EAAE,GAAG,CAAC;IACb;;;;OAIG;IACH,4BAA4B,CAAC,EAAE,MAAM,CAAC;IACtC;;;;OAIG;IACH,uBAAuB,EAAE,MAAM,CAAC;IAChC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,iCAAiC,GAAG,IAAI,CAClD,iBAAiB,EACjB,iBAAiB,CAClB,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,oBAAoB,EAAE,cAAc,CAAC,GAAG;IAC1E,YAAY,EAAE,CAAC,iBAAiB,GAAG,iCAAiC,CAAC,EAAE,CAAC;CACzE,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,oCAAoC,GAAG,UAAU,CAC3D,iBAAiB,EACjB,iBAAiB,CAClB,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,mBAAmB,GAAG,IAAI,CAAC,oBAAoB,EAAE,cAAc,CAAC,GAAG;IAC7E,YAAY,EAAE,CAAC,iBAAiB,GAAG,oCAAoC,CAAC,EAAE,CAAC;CAC5E,CAAC;AAEF;;;;;;;;;;;;GAYG;AAGH,wBAAgB,WAAW,CAAC,CAAC,SAAS,WAAW,EAG/C,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,OAGhC;AAeD;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG,iBAAiB,CAAC;AAEvD;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC;AAE3C;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,sBAAsB,GAAG,qBAAqB,CAAC;AAE7E;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;AAExE;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB;;;OAGG;IACH,uBAAuB,EAAE,eAAe,CAAC;IACzC;;;;;OAKG;IACH,8BAA8B,EAAE,MAAM,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC;IAClE;;;OAGG;IACH,gBAAgB,EAAE,gBAAgB,CAAC;CACpC,CAAC;AAEF,QAAA,MAAM,cAAc,sBAAsB,CAAC;AAE3C;;;;;;GAMG;AACH,MAAM,MAAM,iBAAiB,GAAG,cAAc,CAC5C,yBAAyB,CAAC,YAAY,CAAC,CACxC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,aAAa,GAAG,cAAc,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC,CAAC;AAEhF,MAAM,MAAM,iCAAiC,GAAG,0BAA0B,CACxE,OAAO,cAAc,EACrB,YAAY,CACb,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,uCAAuC,GAAG;IACpD,IAAI,EAAE,qCAAqC,CAAC;IAC5C,OAAO,EAAE,CAAC,YAAY,CAAC,CAAC;CACzB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,sCAAsC,GAAG;IACnD,IAAI,EAAE,oCAAoC,CAAC;IAC3C,OAAO,EAAE,CAAC,YAAY,CAAC,CAAC;CACzB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,qCAAqC,GAAG;IAClD,IAAI,EAAE,mCAAmC,CAAC;IAC1C,OAAO,EAAE,EAAE,CAAC;CACb,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,uCAAuC,GAAG;IACpD,IAAI,EAAE,qCAAqC,CAAC;IAC5C,OAAO,EAAE,EAAE,CAAC;CACb,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,kCAAkC,GAAG;IAC/C,IAAI,EAAE,gCAAgC,CAAC;IACvC,OAAO,EAAE,CAAC,oBAAoB,EAAE,oBAAoB,CAAC,CAAC;CACvD,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,oCAAoC,GAAG;IACjD,IAAI,EAAE,kCAAkC,CAAC;IACzC,OAAO,EAAE,CAAC,oBAAoB,EAAE,oBAAoB,CAAC,CAAC;CACvD,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAC/B,iCAAiC,GACjC,uCAAuC,GACvC,sCAAsC,GACtC,qCAAqC,GACrC,uCAAuC,GACvC,kCAAkC,GAClC,oCAAoC,CAAC;AAEzC,MAAM,MAAM,+BAA+B,GAAG,wBAAwB,CACpE,OAAO,cAAc,EACrB,YAAY,CACb,CAAC;AAEF,MAAM,MAAM,kCAAkC,GAAG;IAC/C,IAAI,EAAE,+BAA+B,CAAC;IACtC,OAAO,EAAE,MAAM,QAAQ,GAAG,SAAS,CAAC;CACrC,CAAC;AAEF,MAAM,MAAM,2CAA2C,GAAG;IACxD,IAAI,EAAE,wCAAwC,CAAC;IAC/C,OAAO,EAAE,iBAAiB,CAAC,sBAAsB,CAAC,CAAC;CACpD,CAAC;AAEF,MAAM,MAAM,+CAA+C,GAAG;IAC5D,IAAI,EAAE,4CAA4C,CAAC;IACnD,OAAO,EAAE,iBAAiB,CAAC,0BAA0B,CAAC,CAAC;CACxD,CAAC;AAEF,MAAM,MAAM,8CAA8C,GAAG;IAC3D,IAAI,EAAE,2CAA2C,CAAC;IAClD,OAAO,EAAE,iBAAiB,CAAC,yBAAyB,CAAC,CAAC;CACvD,CAAC;AAEF,MAAM,MAAM,mDAAmD,GAAG;IAChE,IAAI,EAAE,gDAAgD,CAAC;IACvD,OAAO,EAAE,iBAAiB,CAAC,8BAA8B,CAAC,CAAC;CAC5D,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,sCAAsC,GAAG;IACnD,IAAI,EAAE,mCAAmC,CAAC;IAC1C,OAAO,EAAE,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;CAC/C,CAAC;AAEF,MAAM,MAAM,uCAAuC,GAAG;IACpD,IAAI,EAAE,oCAAoC,CAAC;IAC3C,OAAO,EAAE,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;CAChD,CAAC;AAEF,MAAM,MAAM,iDAAiD,GAAG;IAC9D,IAAI,EAAE,oDAAoD,CAAC;IAC3D,OAAO,EAAE,iBAAiB,CAAC,kCAAkC,CAAC,CAAC;CAChE,CAAC;AAEF,MAAM,MAAM,yDAAyD,GAAG;IACtE,IAAI,EAAE,4DAA4D,CAAC;IACnE,OAAO,EAAE,iBAAiB,CAAC,0CAA0C,CAAC,CAAC;CACxE,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG;IAC9C,IAAI,EAAE,8BAA8B,CAAC;IACrC,OAAO,EAAE,iBAAiB,CAAC,YAAY,CAAC,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,oCAAoC,GAAG;IACjD,IAAI,EAAE,iCAAiC,CAAC;IACxC,OAAO,EAAE,iBAAiB,CAAC,eAAe,CAAC,CAAC;CAC7C,CAAC;AAEF,MAAM,MAAM,oCAAoC,GAAG;IACjD,IAAI,EAAE,iCAAiC,CAAC;IACxC,OAAO,EAAE,iBAAiB,CAAC,eAAe,CAAC,CAAC;CAC7C,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAChC,+BAA+B,GAC/B,kCAAkC,GAClC,2CAA2C,GAC3C,+CAA+C,GAC/C,8CAA8C,GAC9C,mDAAmD,GACnD,uCAAuC,GACvC,sCAAsC,GACtC,iDAAiD,GACjD,yDAAyD,GACzD,iCAAiC,GACjC,oCAAoC,GACpC,oCAAoC,CAAC;AAEzC,MAAM,MAAM,0BAA0B,GAAG,mBAAmB,CAC1D,OAAO,cAAc,EACrB,wBAAwB,EACxB,uBAAuB,EACvB,KAAK,EACL,KAAK,CACN,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,SAAS,EAAE,0BAA0B,CAAC;IACtC,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAC9B,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAwCF;;;;;GAKG;AACH,wBAAgB,gCAAgC,IAAI,YAAY,CAU/D;AAYD;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,YAAY,GAClB,oBAAoB,EAAE,CAExB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;2BAtBa,YAAY;;;;;;;;CA0BhE,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAC1C,qBAAqB,EAAE,oBAAoB,EAAE,GAC5C,MAAM,EAAE,CAMV;AAED;;;;;;GAMG;AACH,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;+BApDS,YAAY;;;;;;;;;;;;;;;;CAuDhE,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,uCAAuC,GAAG,MAAM,CAC1D,sBAAsB,EACtB,wBAAwB,CAAC,gCAAgC,CAAC,CAC3D,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,sCAAsC,GAAG,MAAM,CACzD,qBAAqB,EACrB,wBAAwB,CAAC,gCAAgC,CAAC,CAC3D,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,gCAAgC,GAAG;IAC7C,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,uCAAuC,CAAC;IACpE,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,sCAAsC,CAAC;CACpE,CAAC;AA+MF;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,cAAc,CACnD,OAAO,cAAc,EACrB,YAAY,EACZ,0BAA0B,CAC3B;;gBAwBa,EACV,SAAS,EACT,KAAK,EACL,eAAe,EACf,GAAG,GACJ,EAAE,wBAAwB;IA4H3B;;;;OAIG;IACH,0BAA0B,IAAI;QAC5B,QAAQ,EAAE,cAAc,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS,CAAC;QAC1E,YAAY,EACR,cAAc,CAAC,yBAAyB,CAAC,YAAY,CAAC,CAAC,GACvD,SAAS,CAAC;KACf;IAOD;;;;OAIG;IACH,wBAAwB,IACpB;QACE,QAAQ,EAAE,cAAc,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC9D,YAAY,EAAE,cAAc,CAAC,yBAAyB,CAAC,YAAY,CAAC,CAAC,CAAC;KACvE,GACD,SAAS;IAUb;;;;;;;;OAQG;IACH,wBAAwB,IAAI,uCAAuC,GACjE,sCAAsC;IAWxC;;;;;;OAMG;IACH,oBAAoB,CAClB,qBAAqB,EAAE,sBAAsB,GAC5C,wBAAwB,CAAC,gCAAgC,CAAC;IAE7D;;;;;;OAMG;IACH,oBAAoB,CAClB,qBAAqB,EAAE,qBAAqB,GAC3C,wBAAwB,CAAC,gCAAgC,CAAC;IA+E7D;;;;OAIG;IACG,kBAAkB;IAKxB;;;;;OAKG;IACG,uBAAuB,CAAC,eAAe,EAAE,eAAe;IAsF9D;;;;;;;;;;;;;;OAcG;IACG,aAAa,CAAC,eAAe,CAAC,EAAE,eAAe;IAmJrD;;;;;;OAMG;IACG,eAAe,CAAC,IAAI,EAAE,iBAAiB;IAe7C;;;;;;;;;OASG;IACG,gBAAgB,CACpB,eAAe,EAAE,MAAM,EACvB,OAAO,GAAE;QACP,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,KAAK,IAAI,CAAC;KAC/C;IAsCR;;;;;;;;OAQG;IACG,uBAAuB,CAAC,eAAe,CAAC,EAAE,eAAe;IA2BzD,uCAAuC,CAC3C,eAAe,EAAE,eAAe;IAkClC;;;OAGG;IACG,eAAe;IAIrB;;;;;;OAMG;IACH,gCAAgC,CAC9B,OAAO,EAAE,GAAG,GACX,oBAAoB,GAAG,SAAS;IAInC;;;;;;OAMG;IACH,wCAAwC,CACtC,eAAe,EAAE,eAAe,GAC/B,oBAAoB,GAAG,SAAS;IAInC;;;;;;;;;;OAUG;IACH,UAAU,CAAC,MAAM,EAAE,gBAAgB,GAAG,oBAAoB;IAuD1D;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACG,aAAa,CACjB,OAAO,EAAE,GAAG,EACZ,MAAM,EAAE,mBAAmB,EAC3B,EACE,mCAAmC,GACpC,GAAE;QAAE,mCAAmC,CAAC,EAAE,MAAM,CAAA;KAAO,GACvD,OAAO,CAAC,oBAAoB,CAAC;IAwPhC;;;;;;;;OAQG;IACH,aAAa,CAAC,OAAO,EAAE,GAAG;IAgD1B;;;;;;OAMG;IACG,0BAA0B;IAIhC;;;;OAIG;IACG,OAAO;IAIb;;;;;;OAMG;IACH,UAAU,CAAC,EACT,8BAA8B,GAC/B,EAAE,IAAI,CAAC,YAAY,EAAE,gCAAgC,CAAC,GAAG,IAAI;IAS9D;;;;;OAKG;IACH,4BAA4B,CAAC,OAAO,EAAE,GAAG,GAAG,eAAe;CA+nB5D"}
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,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;AAEnC,OAAO,KAAK,EAAE,MAAM,EAAE,iBAAiB;AAKvC,OAAO,EAAsB,aAAa,EAAE,wBAAoB;AAChE,OAAO,KAAK,EACV,wBAAwB,EACxB,yBAAyB,EAC1B,iDAA6C;AAG9C,OAAO,KAAK,EAAE,iBAAiB,EAAE,sCAAkC;AACnE,OAAO,EAAE,iBAAiB,EAAE,oBAAgB;AAC5C,OAAO,KAAK,EACV,YAAY,EACZ,QAAQ,EACR,gCAAgC,EAChC,gCAAgC,EAEjC,oBAAgB;AAOjB,MAAM,MAAM,KAAK,GAAG;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B;;OAEG;IAGH,IAAI,EAAE;QACJ,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;KAC9B,CAAC;IACF;;OAEG;IACH,MAAM,EAAE,aAAa,CAAC;CACvB,CAAC;AAEF;;;;;GAKG;AACH,oBAAY,eAAe;IACzB,MAAM,WAAW;IACjB,MAAM,WAAW;CAClB;AAED;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;OAEG;IACH,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;;OAKG;IACH,eAAe,EAAE,sBAAsB,CAAC;IACxC;;OAEG;IACH,IAAI,EAAE,eAAe,CAAC,MAAM,CAAC;IAC7B;;;;OAIG;IACH,GAAG,EAAE,WAAW,iBAAiB,iCAAiC,CAAC;CACpE,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;OAEG;IACH,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;;OAKG;IACH,eAAe,EAAE,qBAAqB,CAAC;IACvC;;OAEG;IACH,IAAI,EAAE,eAAe,CAAC,MAAM,CAAC;IAC7B;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,WAAW,GAAG,iBAAiB,GAAG,iBAAiB,CAAC;AAEhE;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC;;;OAGG;IACH,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B;;;;OAIG;IACH,OAAO,EAAE,GAAG,CAAC;IACb;;;;OAIG;IACH,4BAA4B,CAAC,EAAE,MAAM,CAAC;IACtC;;;;OAIG;IACH,uBAAuB,EAAE,MAAM,CAAC;IAChC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,iCAAiC,GAAG,IAAI,CAClD,iBAAiB,EACjB,iBAAiB,CAClB,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,oBAAoB,EAAE,cAAc,CAAC,GAAG;IAC1E,YAAY,EAAE,CAAC,iBAAiB,GAAG,iCAAiC,CAAC,EAAE,CAAC;CACzE,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,oCAAoC,GAAG,UAAU,CAC3D,iBAAiB,EACjB,iBAAiB,CAClB,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,mBAAmB,GAAG,IAAI,CAAC,oBAAoB,EAAE,cAAc,CAAC,GAAG;IAC7E,YAAY,EAAE,CAAC,iBAAiB,GAAG,oCAAoC,CAAC,EAAE,CAAC;CAC5E,CAAC;AAEF;;;;;;;;;;;;GAYG;AAGH,wBAAgB,WAAW,CAAC,CAAC,SAAS,WAAW,EAG/C,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,OAGhC;AAeD;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG,iBAAiB,CAAC;AAEvD;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC;AAE3C;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,sBAAsB,GAAG,qBAAqB,CAAC;AAE7E;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;AAExE;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB;;;OAGG;IACH,uBAAuB,EAAE,eAAe,CAAC;IACzC;;;;;OAKG;IACH,8BAA8B,EAAE,MAAM,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC;IAClE;;;OAGG;IACH,gBAAgB,EAAE,gBAAgB,CAAC;CACpC,CAAC;AAEF,QAAA,MAAM,cAAc,sBAAsB,CAAC;AAE3C;;;;;;GAMG;AACH,MAAM,MAAM,iBAAiB,GAAG,cAAc,CAC5C,yBAAyB,CAAC,YAAY,CAAC,CACxC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,aAAa,GAAG,cAAc,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC,CAAC;AAEhF,MAAM,MAAM,iCAAiC,GAAG,0BAA0B,CACxE,OAAO,cAAc,EACrB,YAAY,CACb,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,uCAAuC,GAAG;IACpD,IAAI,EAAE,qCAAqC,CAAC;IAC5C,OAAO,EAAE,CAAC,YAAY,CAAC,CAAC;CACzB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,sCAAsC,GAAG;IACnD,IAAI,EAAE,oCAAoC,CAAC;IAC3C,OAAO,EAAE,CAAC,YAAY,CAAC,CAAC;CACzB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,qCAAqC,GAAG;IAClD,IAAI,EAAE,mCAAmC,CAAC;IAC1C,OAAO,EAAE,EAAE,CAAC;CACb,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,uCAAuC,GAAG;IACpD,IAAI,EAAE,qCAAqC,CAAC;IAC5C,OAAO,EAAE,EAAE,CAAC;CACb,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,kCAAkC,GAAG;IAC/C,IAAI,EAAE,gCAAgC,CAAC;IACvC,OAAO,EAAE,CAAC,oBAAoB,EAAE,oBAAoB,CAAC,CAAC;CACvD,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,oCAAoC,GAAG;IACjD,IAAI,EAAE,kCAAkC,CAAC;IACzC,OAAO,EAAE,CAAC,oBAAoB,EAAE,oBAAoB,CAAC,CAAC;CACvD,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,4CAA4C,GAAG;IACzD,IAAI,EAAE,0CAA0C,CAAC;IACjD,OAAO,EAAE;QACP;YACE,OAAO,EAAE,GAAG,CAAC;YACb,WAAW,EAAE,MAAM,CAAC;YACpB,mBAAmB,CAAC,EAAE,MAAM,CAAC;YAC7B,KAAK,EAAE,OAAO,CAAC;SAChB;KACF,CAAC;CACH,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,yCAAyC,GAAG;IACtD,IAAI,EAAE,uCAAuC,CAAC;IAC9C,OAAO,EAAE;QACP;YACE,OAAO,EAAE,GAAG,CAAC;YACb,WAAW,EAAE,MAAM,CAAC;SACrB;KACF,CAAC;CACH,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,+CAA+C,GAAG;IAC5D,IAAI,EAAE,6CAA6C,CAAC;IACpD,OAAO,EAAE;QACP;YACE,WAAW,EAAE,MAAM,CAAC;YACpB,OAAO,EAAE,MAAM,CAAC;SACjB;KACF,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAC/B,iCAAiC,GACjC,uCAAuC,GACvC,sCAAsC,GACtC,qCAAqC,GACrC,uCAAuC,GACvC,kCAAkC,GAClC,oCAAoC,GACpC,4CAA4C,GAC5C,yCAAyC,GACzC,+CAA+C,CAAC;AAEpD,MAAM,MAAM,+BAA+B,GAAG,wBAAwB,CACpE,OAAO,cAAc,EACrB,YAAY,CACb,CAAC;AAEF,MAAM,MAAM,kCAAkC,GAAG;IAC/C,IAAI,EAAE,+BAA+B,CAAC;IACtC,OAAO,EAAE,MAAM,QAAQ,GAAG,SAAS,CAAC;CACrC,CAAC;AAEF,MAAM,MAAM,2CAA2C,GAAG;IACxD,IAAI,EAAE,wCAAwC,CAAC;IAC/C,OAAO,EAAE,iBAAiB,CAAC,sBAAsB,CAAC,CAAC;CACpD,CAAC;AAEF,MAAM,MAAM,+CAA+C,GAAG;IAC5D,IAAI,EAAE,4CAA4C,CAAC;IACnD,OAAO,EAAE,iBAAiB,CAAC,0BAA0B,CAAC,CAAC;CACxD,CAAC;AAEF,MAAM,MAAM,8CAA8C,GAAG;IAC3D,IAAI,EAAE,2CAA2C,CAAC;IAClD,OAAO,EAAE,iBAAiB,CAAC,yBAAyB,CAAC,CAAC;CACvD,CAAC;AAEF,MAAM,MAAM,mDAAmD,GAAG;IAChE,IAAI,EAAE,gDAAgD,CAAC;IACvD,OAAO,EAAE,iBAAiB,CAAC,8BAA8B,CAAC,CAAC;CAC5D,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,sCAAsC,GAAG;IACnD,IAAI,EAAE,mCAAmC,CAAC;IAC1C,OAAO,EAAE,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;CAC/C,CAAC;AAEF,MAAM,MAAM,uCAAuC,GAAG;IACpD,IAAI,EAAE,oCAAoC,CAAC;IAC3C,OAAO,EAAE,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;CAChD,CAAC;AAEF,MAAM,MAAM,iDAAiD,GAAG;IAC9D,IAAI,EAAE,oDAAoD,CAAC;IAC3D,OAAO,EAAE,iBAAiB,CAAC,kCAAkC,CAAC,CAAC;CAChE,CAAC;AAEF,MAAM,MAAM,yDAAyD,GAAG;IACtE,IAAI,EAAE,4DAA4D,CAAC;IACnE,OAAO,EAAE,iBAAiB,CAAC,0CAA0C,CAAC,CAAC;CACxE,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG;IAC9C,IAAI,EAAE,8BAA8B,CAAC;IACrC,OAAO,EAAE,iBAAiB,CAAC,YAAY,CAAC,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,oCAAoC,GAAG;IACjD,IAAI,EAAE,iCAAiC,CAAC;IACxC,OAAO,EAAE,iBAAiB,CAAC,eAAe,CAAC,CAAC;CAC7C,CAAC;AAEF,MAAM,MAAM,oCAAoC,GAAG;IACjD,IAAI,EAAE,iCAAiC,CAAC;IACxC,OAAO,EAAE,iBAAiB,CAAC,eAAe,CAAC,CAAC;CAC7C,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAChC,+BAA+B,GAC/B,kCAAkC,GAClC,2CAA2C,GAC3C,+CAA+C,GAC/C,8CAA8C,GAC9C,mDAAmD,GACnD,uCAAuC,GACvC,sCAAsC,GACtC,iDAAiD,GACjD,yDAAyD,GACzD,iCAAiC,GACjC,oCAAoC,GACpC,oCAAoC,CAAC;AAEzC,MAAM,MAAM,0BAA0B,GAAG,mBAAmB,CAC1D,OAAO,cAAc,EACrB,wBAAwB,EACxB,uBAAuB,EACvB,KAAK,EACL,KAAK,CACN,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACrC;;OAEG;IACH,SAAS,EAAE,0BAA0B,CAAC;IACtC;;OAEG;IACH,eAAe,EAAE,MAAM,CAAC;IACxB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAC9B;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;;;;OAMG;IACH,oBAAoB,EAAE,CACpB,cAAc,EAAE,MAAM,KACnB,IAAI,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,aAAa,CAAC,CAAC;CACjE,CAAC;AAyCF;;;;;GAKG;AACH,wBAAgB,gCAAgC,IAAI,YAAY,CAU/D;AAYD;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,YAAY,GAClB,oBAAoB,EAAE,CAExB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;2BAtBa,YAAY;;;;;;;;CA0BhE,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAC1C,qBAAqB,EAAE,oBAAoB,EAAE,GAC5C,MAAM,EAAE,CAMV;AAED;;;;;;GAMG;AACH,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;+BApDS,YAAY;;;;;;;;;;;;;;;;CAuDhE,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,uCAAuC,GAAG,MAAM,CAC1D,sBAAsB,EACtB,wBAAwB,CAAC,gCAAgC,CAAC,CAC3D,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,sCAAsC,GAAG,MAAM,CACzD,qBAAqB,EACrB,wBAAwB,CAAC,gCAAgC,CAAC,CAC3D,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,gCAAgC,GAAG;IAC7C,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,uCAAuC,CAAC;IACpE,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,sCAAsC,CAAC;CACpE,CAAC;AA+MF;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,cAAc,CACnD,OAAO,cAAc,EACrB,YAAY,EACZ,0BAA0B,CAC3B;;IA0BC;;;;OAIG;gBACS,OAAO,EAAE,wBAAwB;IA+H7C;;;;OAIG;IACH,0BAA0B,IAAI;QAC5B,QAAQ,EAAE,cAAc,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS,CAAC;QAC1E,YAAY,EACR,cAAc,CAAC,yBAAyB,CAAC,YAAY,CAAC,CAAC,GACvD,SAAS,CAAC;KACf;IAOD;;;;OAIG;IACH,wBAAwB,IACpB;QACE,QAAQ,EAAE,cAAc,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC9D,YAAY,EAAE,cAAc,CAAC,yBAAyB,CAAC,YAAY,CAAC,CAAC,CAAC;KACvE,GACD,SAAS;IAUb;;;;;;;;OAQG;IACH,wBAAwB,IAAI,uCAAuC,GACjE,sCAAsC;IAWxC;;;;;;OAMG;IACH,oBAAoB,CAClB,qBAAqB,EAAE,sBAAsB,GAC5C,wBAAwB,CAAC,gCAAgC,CAAC;IAE7D;;;;;;OAMG;IACH,oBAAoB,CAClB,qBAAqB,EAAE,qBAAqB,GAC3C,wBAAwB,CAAC,gCAAgC,CAAC;IA+E7D;;;;OAIG;IACG,kBAAkB;IAKxB;;;;;OAKG;IACG,uBAAuB,CAAC,eAAe,EAAE,eAAe;IAqF9D;;;;;;;;;;;;;;OAcG;IACG,aAAa,CAAC,eAAe,CAAC,EAAE,eAAe;IAmJrD;;;;;;OAMG;IACG,eAAe,CAAC,IAAI,EAAE,iBAAiB;IAe7C;;;;;;;;;OASG;IACG,gBAAgB,CACpB,eAAe,EAAE,MAAM,EACvB,OAAO,GAAE;QACP,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,KAAK,IAAI,CAAC;KAC/C;IAsCR;;;;;;;;OAQG;IACG,uBAAuB,CAAC,eAAe,CAAC,EAAE,eAAe;IA2BzD,uCAAuC,CAC3C,eAAe,EAAE,eAAe;IAkClC;;;OAGG;IACG,eAAe;IAIrB;;;;;;OAMG;IACH,gCAAgC,CAC9B,OAAO,EAAE,GAAG,GACX,oBAAoB,GAAG,SAAS;IAInC;;;;;;OAMG;IACH,wCAAwC,CACtC,eAAe,EAAE,eAAe,GAC/B,oBAAoB,GAAG,SAAS;IAInC;;;;;;;;;;OAUG;IACH,UAAU,CAAC,MAAM,EAAE,gBAAgB,GAAG,oBAAoB;IAuD1D;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACG,aAAa,CACjB,OAAO,EAAE,GAAG,EACZ,MAAM,EAAE,mBAAmB,EAC3B,EACE,mCAAmC,GACpC,GAAE;QAAE,mCAAmC,CAAC,EAAE,MAAM,CAAA;KAAO,GACvD,OAAO,CAAC,oBAAoB,CAAC;IAwPhC;;;;;;;;OAQG;IACH,aAAa,CAAC,OAAO,EAAE,GAAG;IAgD1B;;;;;;OAMG;IACG,0BAA0B;IAIhC;;;;OAIG;IACG,OAAO;IAIb;;;;;;OAMG;IACH,UAAU,CAAC,EACT,8BAA8B,GAC/B,EAAE,IAAI,CAAC,YAAY,EAAE,gCAAgC,CAAC,GAAG,IAAI;IAS9D;;;;;;;;OAQG;IACH,4BAA4B,CAAC,OAAO,EAAE,GAAG,GAAG,eAAe;CAupB5D"}
@@ -9,6 +9,7 @@ import type { Draft } from "immer";
9
9
  import type { Logger } from "loglevel";
10
10
  import { NetworkStatus } from "./constants.mjs";
11
11
  import type { AutoManagedNetworkClient, ProxyWithAccessibleTarget } from "./create-auto-managed-network-client.mjs";
12
+ import type { RpcServiceOptions } from "./rpc-service/rpc-service.mjs";
12
13
  import { NetworkClientType } from "./types.mjs";
13
14
  import type { BlockTracker, Provider, CustomNetworkClientConfiguration, InfuraNetworkClientConfiguration } from "./types.mjs";
14
15
  export type Block = {
@@ -52,6 +53,10 @@ export declare enum RpcEndpointType {
52
53
  * separate type.
53
54
  */
54
55
  export type InfuraRpcEndpoint = {
56
+ /**
57
+ * Alternate RPC endpoints to use when this endpoint is down.
58
+ */
59
+ failoverUrls: string[];
55
60
  /**
56
61
  * The optional user-facing nickname of the endpoint.
57
62
  */
@@ -79,6 +84,10 @@ export type InfuraRpcEndpoint = {
79
84
  * EVM chain. It may refer to an Infura network, but only by coincidence.
80
85
  */
81
86
  export type CustomRpcEndpoint = {
87
+ /**
88
+ * Alternate RPC endpoints to use when this endpoint is down.
89
+ */
90
+ failoverUrls: string[];
82
91
  /**
83
92
  * The optional user-facing nickname of the endpoint.
84
93
  */
@@ -324,7 +333,49 @@ export type NetworkControllerNetworkRemovedEvent = {
324
333
  type: 'NetworkController:networkRemoved';
325
334
  payload: [networkConfiguration: NetworkConfiguration];
326
335
  };
327
- export type NetworkControllerEvents = NetworkControllerStateChangeEvent | NetworkControllerNetworkWillChangeEvent | NetworkControllerNetworkDidChangeEvent | NetworkControllerInfuraIsBlockedEvent | NetworkControllerInfuraIsUnblockedEvent | NetworkControllerNetworkAddedEvent | NetworkControllerNetworkRemovedEvent;
336
+ /**
337
+ * `rpcEndpointUnavailable` is published after an attempt to make a request to
338
+ * an RPC endpoint fails too many times in a row (because of a connection error
339
+ * or an unusable response).
340
+ */
341
+ export type NetworkControllerRpcEndpointUnavailableEvent = {
342
+ type: 'NetworkController:rpcEndpointUnavailable';
343
+ payload: [
344
+ {
345
+ chainId: Hex;
346
+ endpointUrl: string;
347
+ failoverEndpointUrl?: string;
348
+ error: unknown;
349
+ }
350
+ ];
351
+ };
352
+ /**
353
+ * `rpcEndpointDegraded` is published after a request to an RPC endpoint
354
+ * responds successfully but takes too long.
355
+ */
356
+ export type NetworkControllerRpcEndpointDegradedEvent = {
357
+ type: 'NetworkController:rpcEndpointDegraded';
358
+ payload: [
359
+ {
360
+ chainId: Hex;
361
+ endpointUrl: string;
362
+ }
363
+ ];
364
+ };
365
+ /**
366
+ * `rpcEndpointRequestRetried` is published after a request to an RPC endpoint
367
+ * is retried following a connection error or an unusable response.
368
+ */
369
+ export type NetworkControllerRpcEndpointRequestRetriedEvent = {
370
+ type: 'NetworkController:rpcEndpointRequestRetried';
371
+ payload: [
372
+ {
373
+ endpointUrl: string;
374
+ attempt: number;
375
+ }
376
+ ];
377
+ };
378
+ export type NetworkControllerEvents = NetworkControllerStateChangeEvent | NetworkControllerNetworkWillChangeEvent | NetworkControllerNetworkDidChangeEvent | NetworkControllerInfuraIsBlockedEvent | NetworkControllerInfuraIsUnblockedEvent | NetworkControllerNetworkAddedEvent | NetworkControllerNetworkRemovedEvent | NetworkControllerRpcEndpointUnavailableEvent | NetworkControllerRpcEndpointDegradedEvent | NetworkControllerRpcEndpointRequestRetriedEvent;
328
379
  export type NetworkControllerGetStateAction = ControllerGetStateAction<typeof controllerName, NetworkState>;
329
380
  export type NetworkControllerGetEthQueryAction = {
330
381
  type: `NetworkController:getEthQuery`;
@@ -382,11 +433,37 @@ export type NetworkControllerUpdateNetworkAction = {
382
433
  };
383
434
  export type NetworkControllerActions = NetworkControllerGetStateAction | NetworkControllerGetEthQueryAction | NetworkControllerGetNetworkClientByIdAction | NetworkControllerGetSelectedNetworkClientAction | NetworkControllerGetEIP1559CompatibilityAction | NetworkControllerFindNetworkClientIdByChainIdAction | NetworkControllerSetActiveNetworkAction | NetworkControllerSetProviderTypeAction | NetworkControllerGetNetworkConfigurationByChainId | NetworkControllerGetNetworkConfigurationByNetworkClientId | NetworkControllerAddNetworkAction | NetworkControllerRemoveNetworkAction | NetworkControllerUpdateNetworkAction;
384
435
  export type NetworkControllerMessenger = RestrictedMessenger<typeof controllerName, NetworkControllerActions, NetworkControllerEvents, never, never>;
436
+ /**
437
+ * Options for the NetworkController constructor.
438
+ */
385
439
  export type NetworkControllerOptions = {
440
+ /**
441
+ * The messenger suited for this controller.
442
+ */
386
443
  messenger: NetworkControllerMessenger;
444
+ /**
445
+ * The API key for Infura, used to make requests to Infura.
446
+ */
387
447
  infuraProjectId: string;
448
+ /**
449
+ * The desired state with which to initialize this controller.
450
+ * Missing properties will be filled in with defaults. For instance, if not
451
+ * specified, `networkConfigurationsByChainId` will default to a basic set of
452
+ * network configurations (see {@link InfuraNetworkType} for the list).
453
+ */
388
454
  state?: Partial<NetworkState>;
455
+ /**
456
+ * A `loglevel` logger object.
457
+ */
389
458
  log?: Logger;
459
+ /**
460
+ * A function that can be used to customize the options passed to a
461
+ * RPC service constructed for an RPC endpoint. The object that the function
462
+ * should return is the same as {@link RpcServiceOptions}, except that
463
+ * `failoverService` and `endpointUrl` are not accepted (as they are filled in
464
+ * automatically).
465
+ */
466
+ getRpcServiceOptions: (rpcEndpointUrl: string) => Omit<RpcServiceOptions, 'failoverService' | 'endpointUrl'>;
390
467
  };
391
468
  /**
392
469
  * Constructs properties for the NetworkController state whose values will be
@@ -507,7 +584,12 @@ export type AutoManagedNetworkClientRegistry = {
507
584
  */
508
585
  export declare class NetworkController extends BaseController<typeof controllerName, NetworkState, NetworkControllerMessenger> {
509
586
  #private;
510
- constructor({ messenger, state, infuraProjectId, log, }: NetworkControllerOptions);
587
+ /**
588
+ * Constructs a NetworkController.
589
+ *
590
+ * @param options - The options; see {@link NetworkControllerOptions}.
591
+ */
592
+ constructor(options: NetworkControllerOptions);
511
593
  /**
512
594
  * Accesses the provider and block tracker for the currently selected network.
513
595
  * @returns The proxy and block tracker proxies.
@@ -706,10 +788,13 @@ export declare class NetworkController extends BaseController<typeof controllerN
706
788
  */
707
789
  loadBackup({ networkConfigurationsByChainId, }: Pick<NetworkState, 'networkConfigurationsByChainId'>): void;
708
790
  /**
709
- * Searches for a network configuration ID with the given ChainID and returns it.
791
+ * Searches for the default RPC endpoint configured for the given chain and
792
+ * returns its network client ID. This can then be passed to
793
+ * {@link getNetworkClientById} to retrieve the network client.
710
794
  *
711
- * @param chainId - ChainId to search for
712
- * @returns networkClientId of the network configuration with the given chainId
795
+ * @param chainId - Chain ID to search for.
796
+ * @returns The ID of the network client created for the chain's default RPC
797
+ * endpoint.
713
798
  */
714
799
  findNetworkClientIdByChainId(chainId: Hex): NetworkClientId;
715
800
  }
@@ -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,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;AAEnC,OAAO,KAAK,EAAE,MAAM,EAAE,iBAAiB;AAKvC,OAAO,EAAsB,aAAa,EAAE,wBAAoB;AAChE,OAAO,KAAK,EACV,wBAAwB,EACxB,yBAAyB,EAC1B,iDAA6C;AAG9C,OAAO,EAAE,iBAAiB,EAAE,oBAAgB;AAC5C,OAAO,KAAK,EACV,YAAY,EACZ,QAAQ,EACR,gCAAgC,EAChC,gCAAgC,EAEjC,oBAAgB;AAOjB,MAAM,MAAM,KAAK,GAAG;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B;;OAEG;IAGH,IAAI,EAAE;QACJ,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;KAC9B,CAAC;IACF;;OAEG;IACH,MAAM,EAAE,aAAa,CAAC;CACvB,CAAC;AAEF;;;;;GAKG;AACH,oBAAY,eAAe;IACzB,MAAM,WAAW;IACjB,MAAM,WAAW;CAClB;AAED;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;;OAKG;IACH,eAAe,EAAE,sBAAsB,CAAC;IACxC;;OAEG;IACH,IAAI,EAAE,eAAe,CAAC,MAAM,CAAC;IAC7B;;;;OAIG;IACH,GAAG,EAAE,WAAW,iBAAiB,iCAAiC,CAAC;CACpE,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;;OAKG;IACH,eAAe,EAAE,qBAAqB,CAAC;IACvC;;OAEG;IACH,IAAI,EAAE,eAAe,CAAC,MAAM,CAAC;IAC7B;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,WAAW,GAAG,iBAAiB,GAAG,iBAAiB,CAAC;AAEhE;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC;;;OAGG;IACH,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B;;;;OAIG;IACH,OAAO,EAAE,GAAG,CAAC;IACb;;;;OAIG;IACH,4BAA4B,CAAC,EAAE,MAAM,CAAC;IACtC;;;;OAIG;IACH,uBAAuB,EAAE,MAAM,CAAC;IAChC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,iCAAiC,GAAG,IAAI,CAClD,iBAAiB,EACjB,iBAAiB,CAClB,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,oBAAoB,EAAE,cAAc,CAAC,GAAG;IAC1E,YAAY,EAAE,CAAC,iBAAiB,GAAG,iCAAiC,CAAC,EAAE,CAAC;CACzE,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,oCAAoC,GAAG,UAAU,CAC3D,iBAAiB,EACjB,iBAAiB,CAClB,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,mBAAmB,GAAG,IAAI,CAAC,oBAAoB,EAAE,cAAc,CAAC,GAAG;IAC7E,YAAY,EAAE,CAAC,iBAAiB,GAAG,oCAAoC,CAAC,EAAE,CAAC;CAC5E,CAAC;AAEF;;;;;;;;;;;;GAYG;AAGH,wBAAgB,WAAW,CAAC,CAAC,SAAS,WAAW,EAG/C,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,OAGhC;AAeD;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG,iBAAiB,CAAC;AAEvD;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC;AAE3C;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,sBAAsB,GAAG,qBAAqB,CAAC;AAE7E;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;AAExE;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB;;;OAGG;IACH,uBAAuB,EAAE,eAAe,CAAC;IACzC;;;;;OAKG;IACH,8BAA8B,EAAE,MAAM,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC;IAClE;;;OAGG;IACH,gBAAgB,EAAE,gBAAgB,CAAC;CACpC,CAAC;AAEF,QAAA,MAAM,cAAc,sBAAsB,CAAC;AAE3C;;;;;;GAMG;AACH,MAAM,MAAM,iBAAiB,GAAG,cAAc,CAC5C,yBAAyB,CAAC,YAAY,CAAC,CACxC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,aAAa,GAAG,cAAc,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC,CAAC;AAEhF,MAAM,MAAM,iCAAiC,GAAG,0BAA0B,CACxE,OAAO,cAAc,EACrB,YAAY,CACb,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,uCAAuC,GAAG;IACpD,IAAI,EAAE,qCAAqC,CAAC;IAC5C,OAAO,EAAE,CAAC,YAAY,CAAC,CAAC;CACzB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,sCAAsC,GAAG;IACnD,IAAI,EAAE,oCAAoC,CAAC;IAC3C,OAAO,EAAE,CAAC,YAAY,CAAC,CAAC;CACzB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,qCAAqC,GAAG;IAClD,IAAI,EAAE,mCAAmC,CAAC;IAC1C,OAAO,EAAE,EAAE,CAAC;CACb,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,uCAAuC,GAAG;IACpD,IAAI,EAAE,qCAAqC,CAAC;IAC5C,OAAO,EAAE,EAAE,CAAC;CACb,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,kCAAkC,GAAG;IAC/C,IAAI,EAAE,gCAAgC,CAAC;IACvC,OAAO,EAAE,CAAC,oBAAoB,EAAE,oBAAoB,CAAC,CAAC;CACvD,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,oCAAoC,GAAG;IACjD,IAAI,EAAE,kCAAkC,CAAC;IACzC,OAAO,EAAE,CAAC,oBAAoB,EAAE,oBAAoB,CAAC,CAAC;CACvD,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAC/B,iCAAiC,GACjC,uCAAuC,GACvC,sCAAsC,GACtC,qCAAqC,GACrC,uCAAuC,GACvC,kCAAkC,GAClC,oCAAoC,CAAC;AAEzC,MAAM,MAAM,+BAA+B,GAAG,wBAAwB,CACpE,OAAO,cAAc,EACrB,YAAY,CACb,CAAC;AAEF,MAAM,MAAM,kCAAkC,GAAG;IAC/C,IAAI,EAAE,+BAA+B,CAAC;IACtC,OAAO,EAAE,MAAM,QAAQ,GAAG,SAAS,CAAC;CACrC,CAAC;AAEF,MAAM,MAAM,2CAA2C,GAAG;IACxD,IAAI,EAAE,wCAAwC,CAAC;IAC/C,OAAO,EAAE,iBAAiB,CAAC,sBAAsB,CAAC,CAAC;CACpD,CAAC;AAEF,MAAM,MAAM,+CAA+C,GAAG;IAC5D,IAAI,EAAE,4CAA4C,CAAC;IACnD,OAAO,EAAE,iBAAiB,CAAC,0BAA0B,CAAC,CAAC;CACxD,CAAC;AAEF,MAAM,MAAM,8CAA8C,GAAG;IAC3D,IAAI,EAAE,2CAA2C,CAAC;IAClD,OAAO,EAAE,iBAAiB,CAAC,yBAAyB,CAAC,CAAC;CACvD,CAAC;AAEF,MAAM,MAAM,mDAAmD,GAAG;IAChE,IAAI,EAAE,gDAAgD,CAAC;IACvD,OAAO,EAAE,iBAAiB,CAAC,8BAA8B,CAAC,CAAC;CAC5D,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,sCAAsC,GAAG;IACnD,IAAI,EAAE,mCAAmC,CAAC;IAC1C,OAAO,EAAE,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;CAC/C,CAAC;AAEF,MAAM,MAAM,uCAAuC,GAAG;IACpD,IAAI,EAAE,oCAAoC,CAAC;IAC3C,OAAO,EAAE,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;CAChD,CAAC;AAEF,MAAM,MAAM,iDAAiD,GAAG;IAC9D,IAAI,EAAE,oDAAoD,CAAC;IAC3D,OAAO,EAAE,iBAAiB,CAAC,kCAAkC,CAAC,CAAC;CAChE,CAAC;AAEF,MAAM,MAAM,yDAAyD,GAAG;IACtE,IAAI,EAAE,4DAA4D,CAAC;IACnE,OAAO,EAAE,iBAAiB,CAAC,0CAA0C,CAAC,CAAC;CACxE,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG;IAC9C,IAAI,EAAE,8BAA8B,CAAC;IACrC,OAAO,EAAE,iBAAiB,CAAC,YAAY,CAAC,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,oCAAoC,GAAG;IACjD,IAAI,EAAE,iCAAiC,CAAC;IACxC,OAAO,EAAE,iBAAiB,CAAC,eAAe,CAAC,CAAC;CAC7C,CAAC;AAEF,MAAM,MAAM,oCAAoC,GAAG;IACjD,IAAI,EAAE,iCAAiC,CAAC;IACxC,OAAO,EAAE,iBAAiB,CAAC,eAAe,CAAC,CAAC;CAC7C,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAChC,+BAA+B,GAC/B,kCAAkC,GAClC,2CAA2C,GAC3C,+CAA+C,GAC/C,8CAA8C,GAC9C,mDAAmD,GACnD,uCAAuC,GACvC,sCAAsC,GACtC,iDAAiD,GACjD,yDAAyD,GACzD,iCAAiC,GACjC,oCAAoC,GACpC,oCAAoC,CAAC;AAEzC,MAAM,MAAM,0BAA0B,GAAG,mBAAmB,CAC1D,OAAO,cAAc,EACrB,wBAAwB,EACxB,uBAAuB,EACvB,KAAK,EACL,KAAK,CACN,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,SAAS,EAAE,0BAA0B,CAAC;IACtC,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAC9B,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAwCF;;;;;GAKG;AACH,wBAAgB,gCAAgC,IAAI,YAAY,CAU/D;AAYD;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,YAAY,GAClB,oBAAoB,EAAE,CAExB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;2BAtBa,YAAY;;;;;;;;CA0BhE,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAC1C,qBAAqB,EAAE,oBAAoB,EAAE,GAC5C,MAAM,EAAE,CAMV;AAED;;;;;;GAMG;AACH,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;+BApDS,YAAY;;;;;;;;;;;;;;;;CAuDhE,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,uCAAuC,GAAG,MAAM,CAC1D,sBAAsB,EACtB,wBAAwB,CAAC,gCAAgC,CAAC,CAC3D,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,sCAAsC,GAAG,MAAM,CACzD,qBAAqB,EACrB,wBAAwB,CAAC,gCAAgC,CAAC,CAC3D,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,gCAAgC,GAAG;IAC7C,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,uCAAuC,CAAC;IACpE,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,sCAAsC,CAAC;CACpE,CAAC;AA+MF;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,cAAc,CACnD,OAAO,cAAc,EACrB,YAAY,EACZ,0BAA0B,CAC3B;;gBAwBa,EACV,SAAS,EACT,KAAK,EACL,eAAe,EACf,GAAG,GACJ,EAAE,wBAAwB;IA4H3B;;;;OAIG;IACH,0BAA0B,IAAI;QAC5B,QAAQ,EAAE,cAAc,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS,CAAC;QAC1E,YAAY,EACR,cAAc,CAAC,yBAAyB,CAAC,YAAY,CAAC,CAAC,GACvD,SAAS,CAAC;KACf;IAOD;;;;OAIG;IACH,wBAAwB,IACpB;QACE,QAAQ,EAAE,cAAc,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC9D,YAAY,EAAE,cAAc,CAAC,yBAAyB,CAAC,YAAY,CAAC,CAAC,CAAC;KACvE,GACD,SAAS;IAUb;;;;;;;;OAQG;IACH,wBAAwB,IAAI,uCAAuC,GACjE,sCAAsC;IAWxC;;;;;;OAMG;IACH,oBAAoB,CAClB,qBAAqB,EAAE,sBAAsB,GAC5C,wBAAwB,CAAC,gCAAgC,CAAC;IAE7D;;;;;;OAMG;IACH,oBAAoB,CAClB,qBAAqB,EAAE,qBAAqB,GAC3C,wBAAwB,CAAC,gCAAgC,CAAC;IA+E7D;;;;OAIG;IACG,kBAAkB;IAKxB;;;;;OAKG;IACG,uBAAuB,CAAC,eAAe,EAAE,eAAe;IAsF9D;;;;;;;;;;;;;;OAcG;IACG,aAAa,CAAC,eAAe,CAAC,EAAE,eAAe;IAmJrD;;;;;;OAMG;IACG,eAAe,CAAC,IAAI,EAAE,iBAAiB;IAe7C;;;;;;;;;OASG;IACG,gBAAgB,CACpB,eAAe,EAAE,MAAM,EACvB,OAAO,GAAE;QACP,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,KAAK,IAAI,CAAC;KAC/C;IAsCR;;;;;;;;OAQG;IACG,uBAAuB,CAAC,eAAe,CAAC,EAAE,eAAe;IA2BzD,uCAAuC,CAC3C,eAAe,EAAE,eAAe;IAkClC;;;OAGG;IACG,eAAe;IAIrB;;;;;;OAMG;IACH,gCAAgC,CAC9B,OAAO,EAAE,GAAG,GACX,oBAAoB,GAAG,SAAS;IAInC;;;;;;OAMG;IACH,wCAAwC,CACtC,eAAe,EAAE,eAAe,GAC/B,oBAAoB,GAAG,SAAS;IAInC;;;;;;;;;;OAUG;IACH,UAAU,CAAC,MAAM,EAAE,gBAAgB,GAAG,oBAAoB;IAuD1D;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACG,aAAa,CACjB,OAAO,EAAE,GAAG,EACZ,MAAM,EAAE,mBAAmB,EAC3B,EACE,mCAAmC,GACpC,GAAE;QAAE,mCAAmC,CAAC,EAAE,MAAM,CAAA;KAAO,GACvD,OAAO,CAAC,oBAAoB,CAAC;IAwPhC;;;;;;;;OAQG;IACH,aAAa,CAAC,OAAO,EAAE,GAAG;IAgD1B;;;;;;OAMG;IACG,0BAA0B;IAIhC;;;;OAIG;IACG,OAAO;IAIb;;;;;;OAMG;IACH,UAAU,CAAC,EACT,8BAA8B,GAC/B,EAAE,IAAI,CAAC,YAAY,EAAE,gCAAgC,CAAC,GAAG,IAAI;IAS9D;;;;;OAKG;IACH,4BAA4B,CAAC,OAAO,EAAE,GAAG,GAAG,eAAe;CA+nB5D"}
1
+ {"version":3,"file":"NetworkController.d.mts","sourceRoot":"","sources":["../src/NetworkController.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
9
9
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
10
10
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
11
11
  };
12
- var _NetworkController_instances, _NetworkController_ethQuery, _NetworkController_infuraProjectId, _NetworkController_previouslySelectedNetworkClientId, _NetworkController_providerProxy, _NetworkController_blockTrackerProxy, _NetworkController_autoManagedNetworkClientRegistry, _NetworkController_autoManagedNetworkClient, _NetworkController_log, _NetworkController_networkConfigurationsByNetworkClientId, _NetworkController_refreshNetwork, _NetworkController_getLatestBlock, _NetworkController_determineEIP1559Compatibility, _NetworkController_validateNetworkFields, _NetworkController_determineNetworkConfigurationToPersist, _NetworkController_registerNetworkClientsAsNeeded, _NetworkController_unregisterNetworkClientsAsNeeded, _NetworkController_updateNetworkConfigurations, _NetworkController_ensureAutoManagedNetworkClientRegistryPopulated, _NetworkController_createAutoManagedNetworkClientRegistry, _NetworkController_applyNetworkSelection;
12
+ 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;
13
13
  function $importDefault(module) {
14
14
  if (module?.__esModule) {
15
15
  return module.default;
@@ -102,6 +102,7 @@ function getDefaultNetworkConfigurationsByChainId() {
102
102
  nativeCurrency: NetworksTicker[infuraNetworkType],
103
103
  rpcEndpoints: [
104
104
  {
105
+ failoverUrls: [],
105
106
  networkClientId: infuraNetworkType,
106
107
  type: RpcEndpointType.Infura,
107
108
  url: rpcEndpointUrl,
@@ -262,7 +263,13 @@ function buildNetworkConfigurationsByNetworkClientId(networkConfigurationsByChai
262
263
  * Controller that creates and manages an Ethereum network provider.
263
264
  */
264
265
  export class NetworkController extends BaseController {
265
- constructor({ messenger, state, infuraProjectId, log, }) {
266
+ /**
267
+ * Constructs a NetworkController.
268
+ *
269
+ * @param options - The options; see {@link NetworkControllerOptions}.
270
+ */
271
+ constructor(options) {
272
+ const { messenger, state, infuraProjectId, log, getRpcServiceOptions } = options;
266
273
  const initialState = { ...getDefaultNetworkControllerState(), ...state };
267
274
  validateNetworkControllerState(initialState);
268
275
  if (!infuraProjectId || typeof infuraProjectId !== 'string') {
@@ -296,9 +303,11 @@ export class NetworkController extends BaseController {
296
303
  _NetworkController_autoManagedNetworkClientRegistry.set(this, void 0);
297
304
  _NetworkController_autoManagedNetworkClient.set(this, void 0);
298
305
  _NetworkController_log.set(this, void 0);
306
+ _NetworkController_getRpcServiceOptions.set(this, void 0);
299
307
  _NetworkController_networkConfigurationsByNetworkClientId.set(this, void 0);
300
308
  __classPrivateFieldSet(this, _NetworkController_infuraProjectId, infuraProjectId, "f");
301
309
  __classPrivateFieldSet(this, _NetworkController_log, log, "f");
310
+ __classPrivateFieldSet(this, _NetworkController_getRpcServiceOptions, getRpcServiceOptions, "f");
302
311
  __classPrivateFieldSet(this, _NetworkController_previouslySelectedNetworkClientId, this.state.selectedNetworkClientId, "f");
303
312
  __classPrivateFieldSet(this, _NetworkController_networkConfigurationsByNetworkClientId, buildNetworkConfigurationsByNetworkClientId(this.state.networkConfigurationsByChainId), "f");
304
313
  this.messagingSystem.registerActionHandler(
@@ -436,7 +445,8 @@ export class NetworkController extends BaseController {
436
445
  let updatedNetworkStatus;
437
446
  let updatedIsEIP1559Compatible;
438
447
  try {
439
- updatedIsEIP1559Compatible = await __classPrivateFieldGet(this, _NetworkController_instances, "m", _NetworkController_determineEIP1559Compatibility).call(this, networkClientId);
448
+ updatedIsEIP1559Compatible =
449
+ await __classPrivateFieldGet(this, _NetworkController_instances, "m", _NetworkController_determineEIP1559Compatibility).call(this, networkClientId);
440
450
  updatedNetworkStatus = NetworkStatus.Available;
441
451
  }
442
452
  catch (error) {
@@ -1064,21 +1074,24 @@ export class NetworkController extends BaseController {
1064
1074
  });
1065
1075
  }
1066
1076
  /**
1067
- * Searches for a network configuration ID with the given ChainID and returns it.
1077
+ * Searches for the default RPC endpoint configured for the given chain and
1078
+ * returns its network client ID. This can then be passed to
1079
+ * {@link getNetworkClientById} to retrieve the network client.
1068
1080
  *
1069
- * @param chainId - ChainId to search for
1070
- * @returns networkClientId of the network configuration with the given chainId
1081
+ * @param chainId - Chain ID to search for.
1082
+ * @returns The ID of the network client created for the chain's default RPC
1083
+ * endpoint.
1071
1084
  */
1072
1085
  findNetworkClientIdByChainId(chainId) {
1073
- const networkClients = this.getNetworkClientRegistry();
1074
- const networkClientEntry = Object.entries(networkClients).find(([_, networkClient]) => networkClient.configuration.chainId === chainId);
1075
- if (networkClientEntry === undefined) {
1076
- throw new Error("Couldn't find networkClientId for chainId");
1086
+ const networkConfiguration = this.state.networkConfigurationsByChainId[chainId];
1087
+ if (!networkConfiguration) {
1088
+ throw new Error(`Invalid chain ID "${chainId}"`);
1077
1089
  }
1078
- return networkClientEntry[0];
1090
+ const { networkClientId } = networkConfiguration.rpcEndpoints[networkConfiguration.defaultRpcEndpointIndex];
1091
+ return networkClientId;
1079
1092
  }
1080
1093
  }
1081
- _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_networkConfigurationsByNetworkClientId = new WeakMap(), _NetworkController_instances = new WeakSet(), _NetworkController_refreshNetwork =
1094
+ _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 =
1082
1095
  /**
1083
1096
  * Executes a series of steps to switch the network:
1084
1097
  *
@@ -1288,19 +1301,29 @@ async function _NetworkController_determineEIP1559Compatibility(networkClientId)
1288
1301
  for (const addedRpcEndpoint of addedRpcEndpoints) {
1289
1302
  if (addedRpcEndpoint.type === RpcEndpointType.Infura) {
1290
1303
  autoManagedNetworkClientRegistry[NetworkClientType.Infura][addedRpcEndpoint.networkClientId] = createAutoManagedNetworkClient({
1291
- type: NetworkClientType.Infura,
1292
- chainId: networkFields.chainId,
1293
- network: addedRpcEndpoint.networkClientId,
1294
- infuraProjectId: __classPrivateFieldGet(this, _NetworkController_infuraProjectId, "f"),
1295
- ticker: networkFields.nativeCurrency,
1304
+ networkClientConfiguration: {
1305
+ type: NetworkClientType.Infura,
1306
+ chainId: networkFields.chainId,
1307
+ network: addedRpcEndpoint.networkClientId,
1308
+ failoverRpcUrls: addedRpcEndpoint.failoverUrls,
1309
+ infuraProjectId: __classPrivateFieldGet(this, _NetworkController_infuraProjectId, "f"),
1310
+ ticker: networkFields.nativeCurrency,
1311
+ },
1312
+ getRpcServiceOptions: __classPrivateFieldGet(this, _NetworkController_getRpcServiceOptions, "f"),
1313
+ messenger: this.messagingSystem,
1296
1314
  });
1297
1315
  }
1298
1316
  else {
1299
1317
  autoManagedNetworkClientRegistry[NetworkClientType.Custom][addedRpcEndpoint.networkClientId] = createAutoManagedNetworkClient({
1300
- type: NetworkClientType.Custom,
1301
- chainId: networkFields.chainId,
1302
- rpcUrl: addedRpcEndpoint.url,
1303
- ticker: networkFields.nativeCurrency,
1318
+ networkClientConfiguration: {
1319
+ type: NetworkClientType.Custom,
1320
+ chainId: networkFields.chainId,
1321
+ failoverRpcUrls: addedRpcEndpoint.failoverUrls,
1322
+ rpcUrl: addedRpcEndpoint.url,
1323
+ ticker: networkFields.nativeCurrency,
1324
+ },
1325
+ getRpcServiceOptions: __classPrivateFieldGet(this, _NetworkController_getRpcServiceOptions, "f"),
1326
+ messenger: this.messagingSystem,
1304
1327
  });
1305
1328
  }
1306
1329
  }
@@ -1348,21 +1371,31 @@ async function _NetworkController_determineEIP1559Compatibility(networkClientId)
1348
1371
  return [
1349
1372
  rpcEndpoint.networkClientId,
1350
1373
  createAutoManagedNetworkClient({
1351
- type: NetworkClientType.Infura,
1352
- network: infuraNetworkName,
1353
- infuraProjectId: __classPrivateFieldGet(this, _NetworkController_infuraProjectId, "f"),
1354
- chainId: networkConfiguration.chainId,
1355
- ticker: networkConfiguration.nativeCurrency,
1374
+ networkClientConfiguration: {
1375
+ type: NetworkClientType.Infura,
1376
+ network: infuraNetworkName,
1377
+ failoverRpcUrls: rpcEndpoint.failoverUrls,
1378
+ infuraProjectId: __classPrivateFieldGet(this, _NetworkController_infuraProjectId, "f"),
1379
+ chainId: networkConfiguration.chainId,
1380
+ ticker: networkConfiguration.nativeCurrency,
1381
+ },
1382
+ getRpcServiceOptions: __classPrivateFieldGet(this, _NetworkController_getRpcServiceOptions, "f"),
1383
+ messenger: this.messagingSystem,
1356
1384
  }),
1357
1385
  ];
1358
1386
  }
1359
1387
  return [
1360
1388
  rpcEndpoint.networkClientId,
1361
1389
  createAutoManagedNetworkClient({
1362
- type: NetworkClientType.Custom,
1363
- chainId: networkConfiguration.chainId,
1364
- rpcUrl: rpcEndpoint.url,
1365
- ticker: networkConfiguration.nativeCurrency,
1390
+ networkClientConfiguration: {
1391
+ type: NetworkClientType.Custom,
1392
+ chainId: networkConfiguration.chainId,
1393
+ failoverRpcUrls: rpcEndpoint.failoverUrls,
1394
+ rpcUrl: rpcEndpoint.url,
1395
+ ticker: networkConfiguration.nativeCurrency,
1396
+ },
1397
+ getRpcServiceOptions: __classPrivateFieldGet(this, _NetworkController_getRpcServiceOptions, "f"),
1398
+ messenger: this.messagingSystem,
1366
1399
  }),
1367
1400
  ];
1368
1401
  });