@metamask-previews/controller-utils 8.0.4-preview.e5c396b → 9.0.1-preview-d4ae797

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 (65) hide show
  1. package/CHANGELOG.md +33 -1
  2. package/dist/chunk-47C6DTJM.mjs +141 -0
  3. package/dist/chunk-47C6DTJM.mjs.map +1 -0
  4. package/dist/chunk-7IUO3U3H.mjs +67 -0
  5. package/dist/chunk-7IUO3U3H.mjs.map +1 -0
  6. package/dist/chunk-AEMFFAHN.js +141 -0
  7. package/dist/chunk-AEMFFAHN.js.map +1 -0
  8. package/dist/chunk-CV6ML7X7.mjs +293 -0
  9. package/dist/chunk-CV6ML7X7.mjs.map +1 -0
  10. package/dist/chunk-DBJSLKNR.js +9 -0
  11. package/dist/chunk-DBJSLKNR.js.map +1 -0
  12. package/dist/chunk-LGGBBU6G.js +67 -0
  13. package/dist/chunk-LGGBBU6G.js.map +1 -0
  14. package/dist/chunk-M6G3ISXG.js +86 -0
  15. package/dist/chunk-M6G3ISXG.js.map +1 -0
  16. package/dist/chunk-RMQ2AQG4.js +293 -0
  17. package/dist/chunk-RMQ2AQG4.js.map +1 -0
  18. package/dist/chunk-RZFCNKW4.mjs +9 -0
  19. package/dist/chunk-RZFCNKW4.mjs.map +1 -0
  20. package/dist/chunk-VDEIYYE4.mjs +86 -0
  21. package/dist/chunk-VDEIYYE4.mjs.map +1 -0
  22. package/dist/constants.js +49 -125
  23. package/dist/constants.js.map +1 -1
  24. package/dist/constants.mjs +50 -0
  25. package/dist/constants.mjs.map +1 -0
  26. package/dist/index.js +125 -20
  27. package/dist/index.js.map +1 -1
  28. package/dist/index.mjs +126 -0
  29. package/dist/index.mjs.map +1 -0
  30. package/dist/logger.js +8 -6
  31. package/dist/logger.js.map +1 -1
  32. package/dist/logger.mjs +9 -0
  33. package/dist/logger.mjs.map +1 -0
  34. package/dist/siwe.js +11 -128
  35. package/dist/siwe.js.map +1 -1
  36. package/dist/siwe.mjs +12 -0
  37. package/dist/siwe.mjs.map +1 -0
  38. package/dist/tsconfig.build.tsbuildinfo +1 -0
  39. package/dist/{constants.d.ts → types/constants.d.ts} +8 -0
  40. package/dist/types/constants.d.ts.map +1 -0
  41. package/dist/types/index.d.ts.map +1 -0
  42. package/dist/types/logger.d.ts.map +1 -0
  43. package/dist/types/siwe.d.ts.map +1 -0
  44. package/dist/{types.d.ts → types/types.d.ts} +5 -0
  45. package/dist/types/types.d.ts.map +1 -0
  46. package/dist/types/util.d.ts.map +1 -0
  47. package/dist/types.js +18 -75
  48. package/dist/types.js.map +1 -1
  49. package/dist/types.mjs +19 -0
  50. package/dist/types.mjs.map +1 -0
  51. package/dist/util.js +56 -504
  52. package/dist/util.js.map +1 -1
  53. package/dist/util.mjs +57 -0
  54. package/dist/util.mjs.map +1 -0
  55. package/package.json +14 -3
  56. package/dist/constants.d.ts.map +0 -1
  57. package/dist/index.d.ts.map +0 -1
  58. package/dist/logger.d.ts.map +0 -1
  59. package/dist/siwe.d.ts.map +0 -1
  60. package/dist/types.d.ts.map +0 -1
  61. package/dist/util.d.ts.map +0 -1
  62. /package/dist/{index.d.ts → types/index.d.ts} +0 -0
  63. /package/dist/{logger.d.ts → types/logger.d.ts} +0 -0
  64. /package/dist/{siwe.d.ts → types/siwe.d.ts} +0 -0
  65. /package/dist/{util.d.ts → types/util.d.ts} +0 -0
package/CHANGELOG.md CHANGED
@@ -7,6 +7,36 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [9.0.1]
11
+
12
+ ### Fixed
13
+
14
+ - Fix `types` field in `package.json` ([#4047](https://github.com/MetaMask/core/pull/4047))
15
+
16
+ ## [9.0.0]
17
+
18
+ ### Added
19
+
20
+ - **BREAKING**: Add ESM build ([#3998](https://github.com/MetaMask/core/pull/3998))
21
+ - It's no longer possible to import files from `./dist` directly.
22
+ - Add support for Linea Sepolia to various constants, types, and type guards ([#3995](https://github.com/MetaMask/core/pull/3995))
23
+ - Add `LINEA_SEPOLIA` to `TESTNET_TICKER_SYMBOLS` constant
24
+ - Add `0xe705` to `CHAIN_ID_TO_ETHERS_NETWORK_NAME_MAP` constant
25
+ - Add `linea-sepolia` to `BUILT_IN_NETWORKS` constant and `InfuraNetworkType`, `NetworkType`, `ChainId`, and `NetworksTicker` types
26
+ - Add `LineaSepolia` to `BuiltInNetworkName` enum
27
+ - `isNetworkType` and `isInfuraNetworkType` now return `true` when given "linea-sepolia"
28
+
29
+ ### Changed
30
+
31
+ - Update `normalizeEnsName` so that it does not attempt to normalize `"."` ([#4006](https://github.com/MetaMask/core/pull/4006))
32
+ - Move `bn.js` from `devDependencies` to `dependencies` ([#4023](https://github.com/MetaMask/core/pull/4023))
33
+
34
+ ### Fixed
35
+
36
+ - **BREAKING**: Narrow argument type for `BNToHex` and `fractionBN` from `any` to `BN` to enhance type safety ([#3975](https://github.com/MetaMask/core/pull/3975))
37
+ - **BREAKING**: Narrow argument type for `logOrRethrowError` from `any` to `unknown` to enhance type safety ([#3975](https://github.com/MetaMask/core/pull/3975))
38
+ - **BREAKING**: Narrow argument type for `isNetworkType` from `any` to `string` to enhance type safety ([#3975](https://github.com/MetaMask/core/pull/3975))
39
+
10
40
  ## [8.0.4]
11
41
 
12
42
  ### Changed
@@ -276,7 +306,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
276
306
 
277
307
  All changes listed after this point were applied to this package following the monorepo conversion.
278
308
 
279
- [Unreleased]: https://github.com/MetaMask/core/compare/@metamask/controller-utils@8.0.4...HEAD
309
+ [Unreleased]: https://github.com/MetaMask/core/compare/@metamask/controller-utils@9.0.1...HEAD
310
+ [9.0.1]: https://github.com/MetaMask/core/compare/@metamask/controller-utils@9.0.0...@metamask/controller-utils@9.0.1
311
+ [9.0.0]: https://github.com/MetaMask/core/compare/@metamask/controller-utils@8.0.4...@metamask/controller-utils@9.0.0
280
312
  [8.0.4]: https://github.com/MetaMask/core/compare/@metamask/controller-utils@8.0.3...@metamask/controller-utils@8.0.4
281
313
  [8.0.3]: https://github.com/MetaMask/core/compare/@metamask/controller-utils@8.0.2...@metamask/controller-utils@8.0.3
282
314
  [8.0.2]: https://github.com/MetaMask/core/compare/@metamask/controller-utils@8.0.1...@metamask/controller-utils@8.0.2
@@ -0,0 +1,141 @@
1
+ import {
2
+ ChainId,
3
+ NetworkType
4
+ } from "./chunk-7IUO3U3H.mjs";
5
+
6
+ // src/constants.ts
7
+ var RPC = "rpc";
8
+ var FALL_BACK_VS_CURRENCY = "ETH";
9
+ var IPFS_DEFAULT_GATEWAY_URL = "https://cloudflare-ipfs.com/ipfs/";
10
+ var GANACHE_CHAIN_ID = "0x539";
11
+ var MAX_SAFE_CHAIN_ID = 4503599627370476;
12
+ var ERC721 = "ERC721";
13
+ var ERC1155 = "ERC1155";
14
+ var ERC20 = "ERC20";
15
+ var ERC721_INTERFACE_ID = "0x80ac58cd";
16
+ var ERC721_METADATA_INTERFACE_ID = "0x5b5e139f";
17
+ var ERC721_ENUMERABLE_INTERFACE_ID = "0x780e9d63";
18
+ var ERC1155_INTERFACE_ID = "0xd9b67a26";
19
+ var ERC1155_METADATA_URI_INTERFACE_ID = "0x0e89341c";
20
+ var ERC1155_TOKEN_RECEIVER_INTERFACE_ID = "0x4e2312e0";
21
+ var GWEI = "gwei";
22
+ var ASSET_TYPES = {
23
+ NATIVE: "NATIVE",
24
+ TOKEN: "TOKEN",
25
+ NFT: "NFT",
26
+ UNKNOWN: "UNKNOWN"
27
+ };
28
+ var TESTNET_TICKER_SYMBOLS = {
29
+ GOERLI: "GoerliETH",
30
+ SEPOLIA: "SepoliaETH",
31
+ LINEA_GOERLI: "LineaETH",
32
+ LINEA_SEPOLIA: "LineaETH"
33
+ };
34
+ var BUILT_IN_NETWORKS = {
35
+ [NetworkType.goerli]: {
36
+ chainId: ChainId.goerli,
37
+ ticker: "GoerliETH" /* goerli */,
38
+ rpcPrefs: {
39
+ blockExplorerUrl: `https://${NetworkType.goerli}.etherscan.io`
40
+ }
41
+ },
42
+ [NetworkType.sepolia]: {
43
+ chainId: ChainId.sepolia,
44
+ ticker: "SepoliaETH" /* sepolia */,
45
+ rpcPrefs: {
46
+ blockExplorerUrl: `https://${NetworkType.sepolia}.etherscan.io`
47
+ }
48
+ },
49
+ [NetworkType.mainnet]: {
50
+ chainId: ChainId.mainnet,
51
+ ticker: "ETH" /* mainnet */,
52
+ rpcPrefs: {
53
+ blockExplorerUrl: "https://etherscan.io"
54
+ }
55
+ },
56
+ [NetworkType["linea-goerli"]]: {
57
+ chainId: ChainId["linea-goerli"],
58
+ ticker: "LineaETH" /* linea-goerli */,
59
+ rpcPrefs: {
60
+ blockExplorerUrl: "https://goerli.lineascan.build"
61
+ }
62
+ },
63
+ [NetworkType["linea-sepolia"]]: {
64
+ chainId: ChainId["linea-sepolia"],
65
+ ticker: "LineaETH" /* linea-sepolia */,
66
+ rpcPrefs: {
67
+ blockExplorerUrl: "https://sepolia.lineascan.build"
68
+ }
69
+ },
70
+ [NetworkType["linea-mainnet"]]: {
71
+ chainId: ChainId["linea-mainnet"],
72
+ ticker: "ETH" /* linea-mainnet */,
73
+ rpcPrefs: {
74
+ blockExplorerUrl: "https://lineascan.build"
75
+ }
76
+ },
77
+ [NetworkType.rpc]: {
78
+ chainId: void 0,
79
+ blockExplorerUrl: void 0,
80
+ ticker: void 0,
81
+ rpcPrefs: void 0
82
+ }
83
+ };
84
+ var OPENSEA_PROXY_URL = "https://proxy.metafi.codefi.network/opensea/v1/api/v2";
85
+ var ORIGIN_METAMASK = "metamask";
86
+ var ApprovalType = /* @__PURE__ */ ((ApprovalType2) => {
87
+ ApprovalType2["AddEthereumChain"] = "wallet_addEthereumChain";
88
+ ApprovalType2["ConnectAccounts"] = "connect_accounts";
89
+ ApprovalType2["EthDecrypt"] = "eth_decrypt";
90
+ ApprovalType2["EthGetEncryptionPublicKey"] = "eth_getEncryptionPublicKey";
91
+ ApprovalType2["EthSign"] = "eth_sign";
92
+ ApprovalType2["EthSignTypedData"] = "eth_signTypedData";
93
+ ApprovalType2["PersonalSign"] = "personal_sign";
94
+ ApprovalType2["ResultError"] = "result_error";
95
+ ApprovalType2["ResultSuccess"] = "result_success";
96
+ ApprovalType2["SnapDialogAlert"] = "snap_dialog:alert";
97
+ ApprovalType2["SnapDialogConfirmation"] = "snap_dialog:confirmation";
98
+ ApprovalType2["SnapDialogPrompt"] = "snap_dialog:prompt";
99
+ ApprovalType2["SwitchEthereumChain"] = "wallet_switchEthereumChain";
100
+ ApprovalType2["Transaction"] = "transaction";
101
+ ApprovalType2["Unlock"] = "unlock";
102
+ ApprovalType2["WalletConnect"] = "wallet_connect";
103
+ ApprovalType2["WalletRequestPermissions"] = "wallet_requestPermissions";
104
+ ApprovalType2["WatchAsset"] = "wallet_watchAsset";
105
+ return ApprovalType2;
106
+ })(ApprovalType || {});
107
+ var CHAIN_ID_TO_ETHERS_NETWORK_NAME_MAP = {
108
+ [ChainId.goerli]: "goerli" /* Goerli */,
109
+ [ChainId.sepolia]: "sepolia" /* Sepolia */,
110
+ [ChainId.mainnet]: "mainnet" /* Mainnet */,
111
+ [ChainId["linea-goerli"]]: "linea-goerli" /* LineaGoerli */,
112
+ [ChainId["linea-sepolia"]]: "linea-sepolia" /* LineaSepolia */,
113
+ [ChainId["linea-mainnet"]]: "linea-mainnet" /* LineaMainnet */,
114
+ [ChainId.aurora]: "aurora" /* Aurora */
115
+ };
116
+
117
+ export {
118
+ RPC,
119
+ FALL_BACK_VS_CURRENCY,
120
+ IPFS_DEFAULT_GATEWAY_URL,
121
+ GANACHE_CHAIN_ID,
122
+ MAX_SAFE_CHAIN_ID,
123
+ ERC721,
124
+ ERC1155,
125
+ ERC20,
126
+ ERC721_INTERFACE_ID,
127
+ ERC721_METADATA_INTERFACE_ID,
128
+ ERC721_ENUMERABLE_INTERFACE_ID,
129
+ ERC1155_INTERFACE_ID,
130
+ ERC1155_METADATA_URI_INTERFACE_ID,
131
+ ERC1155_TOKEN_RECEIVER_INTERFACE_ID,
132
+ GWEI,
133
+ ASSET_TYPES,
134
+ TESTNET_TICKER_SYMBOLS,
135
+ BUILT_IN_NETWORKS,
136
+ OPENSEA_PROXY_URL,
137
+ ORIGIN_METAMASK,
138
+ ApprovalType,
139
+ CHAIN_ID_TO_ETHERS_NETWORK_NAME_MAP
140
+ };
141
+ //# sourceMappingURL=chunk-47C6DTJM.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/constants.ts"],"sourcesContent":["import {\n NetworkType,\n NetworksTicker,\n ChainId,\n BuiltInNetworkName,\n} from './types';\n\nexport const RPC = 'rpc';\nexport const FALL_BACK_VS_CURRENCY = 'ETH';\nexport const IPFS_DEFAULT_GATEWAY_URL = 'https://cloudflare-ipfs.com/ipfs/';\n\n// NETWORKS ID\n// `toHex` not invoked to avoid cyclic dependency\nexport const GANACHE_CHAIN_ID = '0x539'; // toHex(1337)\n/**\n * The largest possible chain ID we can handle.\n * Explanation: https://gist.github.com/rekmarks/a47bd5f2525936c4b8eee31a16345553\n */\nexport const MAX_SAFE_CHAIN_ID = 4503599627370476;\n\n// TOKEN STANDARDS\nexport const ERC721 = 'ERC721';\nexport const ERC1155 = 'ERC1155';\nexport const ERC20 = 'ERC20';\n\n// TOKEN INTERFACE IDS\nexport const ERC721_INTERFACE_ID = '0x80ac58cd';\nexport const ERC721_METADATA_INTERFACE_ID = '0x5b5e139f';\nexport const ERC721_ENUMERABLE_INTERFACE_ID = '0x780e9d63';\nexport const ERC1155_INTERFACE_ID = '0xd9b67a26';\nexport const ERC1155_METADATA_URI_INTERFACE_ID = '0x0e89341c';\nexport const ERC1155_TOKEN_RECEIVER_INTERFACE_ID = '0x4e2312e0';\n\n// UNITS\nexport const GWEI = 'gwei';\n\n// ASSET TYPES\nexport const ASSET_TYPES = {\n NATIVE: 'NATIVE',\n TOKEN: 'TOKEN',\n NFT: 'NFT',\n UNKNOWN: 'UNKNOWN',\n};\n\n// TICKER SYMBOLS\nexport const TESTNET_TICKER_SYMBOLS = {\n GOERLI: 'GoerliETH',\n SEPOLIA: 'SepoliaETH',\n LINEA_GOERLI: 'LineaETH',\n LINEA_SEPOLIA: 'LineaETH',\n};\n\n/**\n * Map of all build-in Infura networks to their network, ticker and chain IDs.\n */\nexport const BUILT_IN_NETWORKS = {\n [NetworkType.goerli]: {\n chainId: ChainId.goerli,\n ticker: NetworksTicker.goerli,\n rpcPrefs: {\n blockExplorerUrl: `https://${NetworkType.goerli}.etherscan.io`,\n },\n },\n [NetworkType.sepolia]: {\n chainId: ChainId.sepolia,\n ticker: NetworksTicker.sepolia,\n rpcPrefs: {\n blockExplorerUrl: `https://${NetworkType.sepolia}.etherscan.io`,\n },\n },\n [NetworkType.mainnet]: {\n chainId: ChainId.mainnet,\n ticker: NetworksTicker.mainnet,\n rpcPrefs: {\n blockExplorerUrl: 'https://etherscan.io',\n },\n },\n [NetworkType['linea-goerli']]: {\n chainId: ChainId['linea-goerli'],\n ticker: NetworksTicker['linea-goerli'],\n rpcPrefs: {\n blockExplorerUrl: 'https://goerli.lineascan.build',\n },\n },\n [NetworkType['linea-sepolia']]: {\n chainId: ChainId['linea-sepolia'],\n ticker: NetworksTicker['linea-sepolia'],\n rpcPrefs: {\n blockExplorerUrl: 'https://sepolia.lineascan.build',\n },\n },\n [NetworkType['linea-mainnet']]: {\n chainId: ChainId['linea-mainnet'],\n ticker: NetworksTicker['linea-mainnet'],\n rpcPrefs: {\n blockExplorerUrl: 'https://lineascan.build',\n },\n },\n [NetworkType.rpc]: {\n chainId: undefined,\n blockExplorerUrl: undefined,\n ticker: undefined,\n rpcPrefs: undefined,\n },\n} as const;\n\n// APIs\nexport const OPENSEA_PROXY_URL =\n 'https://proxy.metafi.codefi.network/opensea/v1/api/v2';\n\n// Default origin for controllers\nexport const ORIGIN_METAMASK = 'metamask';\n\n/**\n * Approval request types for various operations.\n * These types are used by different controllers to create and manage\n * approval requests consistently.\n */\nexport enum ApprovalType {\n AddEthereumChain = 'wallet_addEthereumChain',\n ConnectAccounts = 'connect_accounts',\n EthDecrypt = 'eth_decrypt',\n EthGetEncryptionPublicKey = 'eth_getEncryptionPublicKey',\n EthSign = 'eth_sign',\n EthSignTypedData = 'eth_signTypedData',\n PersonalSign = 'personal_sign',\n ResultError = 'result_error',\n ResultSuccess = 'result_success',\n SnapDialogAlert = 'snap_dialog:alert',\n SnapDialogConfirmation = 'snap_dialog:confirmation',\n SnapDialogPrompt = 'snap_dialog:prompt',\n SwitchEthereumChain = 'wallet_switchEthereumChain',\n Transaction = 'transaction',\n Unlock = 'unlock',\n WalletConnect = 'wallet_connect',\n WalletRequestPermissions = 'wallet_requestPermissions',\n WatchAsset = 'wallet_watchAsset',\n}\n\nexport const CHAIN_ID_TO_ETHERS_NETWORK_NAME_MAP: Record<\n ChainId,\n BuiltInNetworkName\n> = {\n [ChainId.goerli]: BuiltInNetworkName.Goerli,\n [ChainId.sepolia]: BuiltInNetworkName.Sepolia,\n [ChainId.mainnet]: BuiltInNetworkName.Mainnet,\n [ChainId['linea-goerli']]: BuiltInNetworkName.LineaGoerli,\n [ChainId['linea-sepolia']]: BuiltInNetworkName.LineaSepolia,\n [ChainId['linea-mainnet']]: BuiltInNetworkName.LineaMainnet,\n [ChainId.aurora]: BuiltInNetworkName.Aurora,\n};\n"],"mappings":"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","names":["ApprovalType"]}
@@ -0,0 +1,67 @@
1
+ // src/types.ts
2
+ var InfuraNetworkType = {
3
+ mainnet: "mainnet",
4
+ goerli: "goerli",
5
+ sepolia: "sepolia",
6
+ "linea-goerli": "linea-goerli",
7
+ "linea-sepolia": "linea-sepolia",
8
+ "linea-mainnet": "linea-mainnet"
9
+ };
10
+ var NetworkType = {
11
+ ...InfuraNetworkType,
12
+ rpc: "rpc"
13
+ };
14
+ function isNetworkType(val) {
15
+ return Object.values(NetworkType).includes(val);
16
+ }
17
+ function isInfuraNetworkType(value) {
18
+ const infuraNetworkTypes = Object.keys(InfuraNetworkType);
19
+ return infuraNetworkTypes.includes(value);
20
+ }
21
+ var BuiltInNetworkName = /* @__PURE__ */ ((BuiltInNetworkName2) => {
22
+ BuiltInNetworkName2["Mainnet"] = "mainnet";
23
+ BuiltInNetworkName2["Goerli"] = "goerli";
24
+ BuiltInNetworkName2["Sepolia"] = "sepolia";
25
+ BuiltInNetworkName2["LineaGoerli"] = "linea-goerli";
26
+ BuiltInNetworkName2["LineaSepolia"] = "linea-sepolia";
27
+ BuiltInNetworkName2["LineaMainnet"] = "linea-mainnet";
28
+ BuiltInNetworkName2["Aurora"] = "aurora";
29
+ return BuiltInNetworkName2;
30
+ })(BuiltInNetworkName || {});
31
+ var ChainId = {
32
+ ["mainnet" /* Mainnet */]: "0x1",
33
+ // toHex(1)
34
+ ["goerli" /* Goerli */]: "0x5",
35
+ // toHex(5)
36
+ ["sepolia" /* Sepolia */]: "0xaa36a7",
37
+ // toHex(11155111)
38
+ ["aurora" /* Aurora */]: "0x4e454152",
39
+ // toHex(1313161554)
40
+ ["linea-goerli" /* LineaGoerli */]: "0xe704",
41
+ // toHex(59140)
42
+ ["linea-sepolia" /* LineaSepolia */]: "0xe705",
43
+ // toHex(59141)
44
+ ["linea-mainnet" /* LineaMainnet */]: "0xe708"
45
+ // toHex(59144)
46
+ };
47
+ var NetworksTicker = /* @__PURE__ */ ((NetworksTicker2) => {
48
+ NetworksTicker2["mainnet"] = "ETH";
49
+ NetworksTicker2["goerli"] = "GoerliETH";
50
+ NetworksTicker2["sepolia"] = "SepoliaETH";
51
+ NetworksTicker2["linea-goerli"] = "LineaETH";
52
+ NetworksTicker2["linea-sepolia"] = "LineaETH";
53
+ NetworksTicker2["linea-mainnet"] = "ETH";
54
+ NetworksTicker2["rpc"] = "";
55
+ return NetworksTicker2;
56
+ })(NetworksTicker || {});
57
+
58
+ export {
59
+ InfuraNetworkType,
60
+ NetworkType,
61
+ isNetworkType,
62
+ isInfuraNetworkType,
63
+ BuiltInNetworkName,
64
+ ChainId,
65
+ NetworksTicker
66
+ };
67
+ //# sourceMappingURL=chunk-7IUO3U3H.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/types.ts"],"sourcesContent":["/**\n * The names of built-in Infura networks\n */\nexport const InfuraNetworkType = {\n mainnet: 'mainnet',\n goerli: 'goerli',\n sepolia: 'sepolia',\n 'linea-goerli': 'linea-goerli',\n 'linea-sepolia': 'linea-sepolia',\n 'linea-mainnet': 'linea-mainnet',\n} as const;\n\nexport type InfuraNetworkType =\n (typeof InfuraNetworkType)[keyof typeof InfuraNetworkType];\n\n/**\n * The \"network type\"; either the name of a built-in network, or \"rpc\" for custom networks.\n */\nexport const NetworkType = {\n ...InfuraNetworkType,\n rpc: 'rpc',\n} as const;\n\nexport type NetworkType = (typeof NetworkType)[keyof typeof NetworkType];\n\n/**\n * A helper to determine whether a given input is NetworkType.\n *\n * @param val - the value to check whether it is NetworkType or not.\n * @returns boolean indicating whether or not the argument is NetworkType.\n */\nexport function isNetworkType(val: string): val is NetworkType {\n return Object.values(NetworkType).includes(val as NetworkType);\n}\n\n/**\n * A type guard to determine whether the input is an InfuraNetworkType.\n *\n * @param value - The value to check.\n * @returns True if the given value is within the InfuraNetworkType enum,\n * false otherwise.\n */\nexport function isInfuraNetworkType(\n value: unknown,\n): value is InfuraNetworkType {\n const infuraNetworkTypes: unknown[] = Object.keys(InfuraNetworkType);\n return infuraNetworkTypes.includes(value);\n}\n\n/**\n * Names of networks built into the wallet.\n *\n * This includes both Infura and non-Infura networks.\n */\nexport enum BuiltInNetworkName {\n Mainnet = 'mainnet',\n Goerli = 'goerli',\n Sepolia = 'sepolia',\n LineaGoerli = 'linea-goerli',\n LineaSepolia = 'linea-sepolia',\n LineaMainnet = 'linea-mainnet',\n Aurora = 'aurora',\n}\n\n/**\n * Decimal string chain IDs of built-in networks, by name.\n *\n * `toHex` not invoked to avoid cyclic dependency\n */\nexport const ChainId = {\n [BuiltInNetworkName.Mainnet]: '0x1', // toHex(1)\n [BuiltInNetworkName.Goerli]: '0x5', // toHex(5)\n [BuiltInNetworkName.Sepolia]: '0xaa36a7', // toHex(11155111)\n [BuiltInNetworkName.Aurora]: '0x4e454152', // toHex(1313161554)\n [BuiltInNetworkName.LineaGoerli]: '0xe704', // toHex(59140)\n [BuiltInNetworkName.LineaSepolia]: '0xe705', // toHex(59141)\n [BuiltInNetworkName.LineaMainnet]: '0xe708', // toHex(59144)\n} as const;\nexport type ChainId = (typeof ChainId)[keyof typeof ChainId];\n\nexport enum NetworksTicker {\n mainnet = 'ETH',\n goerli = 'GoerliETH',\n sepolia = 'SepoliaETH',\n 'linea-goerli' = 'LineaETH',\n 'linea-sepolia' = 'LineaETH',\n 'linea-mainnet' = 'ETH',\n rpc = '',\n}\n"],"mappings":";AAGO,IAAM,oBAAoB;AAAA,EAC/B,SAAS;AAAA,EACT,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,gBAAgB;AAAA,EAChB,iBAAiB;AAAA,EACjB,iBAAiB;AACnB;AAQO,IAAM,cAAc;AAAA,EACzB,GAAG;AAAA,EACH,KAAK;AACP;AAUO,SAAS,cAAc,KAAiC;AAC7D,SAAO,OAAO,OAAO,WAAW,EAAE,SAAS,GAAkB;AAC/D;AASO,SAAS,oBACd,OAC4B;AAC5B,QAAM,qBAAgC,OAAO,KAAK,iBAAiB;AACnE,SAAO,mBAAmB,SAAS,KAAK;AAC1C;AAOO,IAAK,qBAAL,kBAAKA,wBAAL;AACL,EAAAA,oBAAA,aAAU;AACV,EAAAA,oBAAA,YAAS;AACT,EAAAA,oBAAA,aAAU;AACV,EAAAA,oBAAA,iBAAc;AACd,EAAAA,oBAAA,kBAAe;AACf,EAAAA,oBAAA,kBAAe;AACf,EAAAA,oBAAA,YAAS;AAPC,SAAAA;AAAA,GAAA;AAeL,IAAM,UAAU;AAAA,EACrB,CAAC,uBAA0B,GAAG;AAAA;AAAA,EAC9B,CAAC,qBAAyB,GAAG;AAAA;AAAA,EAC7B,CAAC,uBAA0B,GAAG;AAAA;AAAA,EAC9B,CAAC,qBAAyB,GAAG;AAAA;AAAA,EAC7B,CAAC,gCAA8B,GAAG;AAAA;AAAA,EAClC,CAAC,kCAA+B,GAAG;AAAA;AAAA,EACnC,CAAC,kCAA+B,GAAG;AAAA;AACrC;AAGO,IAAK,iBAAL,kBAAKC,oBAAL;AACL,EAAAA,gBAAA,aAAU;AACV,EAAAA,gBAAA,YAAS;AACT,EAAAA,gBAAA,aAAU;AACV,EAAAA,gBAAA,kBAAiB;AACjB,EAAAA,gBAAA,mBAAkB;AAClB,EAAAA,gBAAA,mBAAkB;AAClB,EAAAA,gBAAA,SAAM;AAPI,SAAAA;AAAA,GAAA;","names":["BuiltInNetworkName","NetworksTicker"]}
@@ -0,0 +1,141 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+ var _chunkLGGBBU6Gjs = require('./chunk-LGGBBU6G.js');
5
+
6
+ // src/constants.ts
7
+ var RPC = "rpc";
8
+ var FALL_BACK_VS_CURRENCY = "ETH";
9
+ var IPFS_DEFAULT_GATEWAY_URL = "https://cloudflare-ipfs.com/ipfs/";
10
+ var GANACHE_CHAIN_ID = "0x539";
11
+ var MAX_SAFE_CHAIN_ID = 4503599627370476;
12
+ var ERC721 = "ERC721";
13
+ var ERC1155 = "ERC1155";
14
+ var ERC20 = "ERC20";
15
+ var ERC721_INTERFACE_ID = "0x80ac58cd";
16
+ var ERC721_METADATA_INTERFACE_ID = "0x5b5e139f";
17
+ var ERC721_ENUMERABLE_INTERFACE_ID = "0x780e9d63";
18
+ var ERC1155_INTERFACE_ID = "0xd9b67a26";
19
+ var ERC1155_METADATA_URI_INTERFACE_ID = "0x0e89341c";
20
+ var ERC1155_TOKEN_RECEIVER_INTERFACE_ID = "0x4e2312e0";
21
+ var GWEI = "gwei";
22
+ var ASSET_TYPES = {
23
+ NATIVE: "NATIVE",
24
+ TOKEN: "TOKEN",
25
+ NFT: "NFT",
26
+ UNKNOWN: "UNKNOWN"
27
+ };
28
+ var TESTNET_TICKER_SYMBOLS = {
29
+ GOERLI: "GoerliETH",
30
+ SEPOLIA: "SepoliaETH",
31
+ LINEA_GOERLI: "LineaETH",
32
+ LINEA_SEPOLIA: "LineaETH"
33
+ };
34
+ var BUILT_IN_NETWORKS = {
35
+ [_chunkLGGBBU6Gjs.NetworkType.goerli]: {
36
+ chainId: _chunkLGGBBU6Gjs.ChainId.goerli,
37
+ ticker: "GoerliETH" /* goerli */,
38
+ rpcPrefs: {
39
+ blockExplorerUrl: `https://${_chunkLGGBBU6Gjs.NetworkType.goerli}.etherscan.io`
40
+ }
41
+ },
42
+ [_chunkLGGBBU6Gjs.NetworkType.sepolia]: {
43
+ chainId: _chunkLGGBBU6Gjs.ChainId.sepolia,
44
+ ticker: "SepoliaETH" /* sepolia */,
45
+ rpcPrefs: {
46
+ blockExplorerUrl: `https://${_chunkLGGBBU6Gjs.NetworkType.sepolia}.etherscan.io`
47
+ }
48
+ },
49
+ [_chunkLGGBBU6Gjs.NetworkType.mainnet]: {
50
+ chainId: _chunkLGGBBU6Gjs.ChainId.mainnet,
51
+ ticker: "ETH" /* mainnet */,
52
+ rpcPrefs: {
53
+ blockExplorerUrl: "https://etherscan.io"
54
+ }
55
+ },
56
+ [_chunkLGGBBU6Gjs.NetworkType["linea-goerli"]]: {
57
+ chainId: _chunkLGGBBU6Gjs.ChainId["linea-goerli"],
58
+ ticker: "LineaETH" /* linea-goerli */,
59
+ rpcPrefs: {
60
+ blockExplorerUrl: "https://goerli.lineascan.build"
61
+ }
62
+ },
63
+ [_chunkLGGBBU6Gjs.NetworkType["linea-sepolia"]]: {
64
+ chainId: _chunkLGGBBU6Gjs.ChainId["linea-sepolia"],
65
+ ticker: "LineaETH" /* linea-sepolia */,
66
+ rpcPrefs: {
67
+ blockExplorerUrl: "https://sepolia.lineascan.build"
68
+ }
69
+ },
70
+ [_chunkLGGBBU6Gjs.NetworkType["linea-mainnet"]]: {
71
+ chainId: _chunkLGGBBU6Gjs.ChainId["linea-mainnet"],
72
+ ticker: "ETH" /* linea-mainnet */,
73
+ rpcPrefs: {
74
+ blockExplorerUrl: "https://lineascan.build"
75
+ }
76
+ },
77
+ [_chunkLGGBBU6Gjs.NetworkType.rpc]: {
78
+ chainId: void 0,
79
+ blockExplorerUrl: void 0,
80
+ ticker: void 0,
81
+ rpcPrefs: void 0
82
+ }
83
+ };
84
+ var OPENSEA_PROXY_URL = "https://proxy.metafi.codefi.network/opensea/v1/api/v2";
85
+ var ORIGIN_METAMASK = "metamask";
86
+ var ApprovalType = /* @__PURE__ */ ((ApprovalType2) => {
87
+ ApprovalType2["AddEthereumChain"] = "wallet_addEthereumChain";
88
+ ApprovalType2["ConnectAccounts"] = "connect_accounts";
89
+ ApprovalType2["EthDecrypt"] = "eth_decrypt";
90
+ ApprovalType2["EthGetEncryptionPublicKey"] = "eth_getEncryptionPublicKey";
91
+ ApprovalType2["EthSign"] = "eth_sign";
92
+ ApprovalType2["EthSignTypedData"] = "eth_signTypedData";
93
+ ApprovalType2["PersonalSign"] = "personal_sign";
94
+ ApprovalType2["ResultError"] = "result_error";
95
+ ApprovalType2["ResultSuccess"] = "result_success";
96
+ ApprovalType2["SnapDialogAlert"] = "snap_dialog:alert";
97
+ ApprovalType2["SnapDialogConfirmation"] = "snap_dialog:confirmation";
98
+ ApprovalType2["SnapDialogPrompt"] = "snap_dialog:prompt";
99
+ ApprovalType2["SwitchEthereumChain"] = "wallet_switchEthereumChain";
100
+ ApprovalType2["Transaction"] = "transaction";
101
+ ApprovalType2["Unlock"] = "unlock";
102
+ ApprovalType2["WalletConnect"] = "wallet_connect";
103
+ ApprovalType2["WalletRequestPermissions"] = "wallet_requestPermissions";
104
+ ApprovalType2["WatchAsset"] = "wallet_watchAsset";
105
+ return ApprovalType2;
106
+ })(ApprovalType || {});
107
+ var CHAIN_ID_TO_ETHERS_NETWORK_NAME_MAP = {
108
+ [_chunkLGGBBU6Gjs.ChainId.goerli]: "goerli" /* Goerli */,
109
+ [_chunkLGGBBU6Gjs.ChainId.sepolia]: "sepolia" /* Sepolia */,
110
+ [_chunkLGGBBU6Gjs.ChainId.mainnet]: "mainnet" /* Mainnet */,
111
+ [_chunkLGGBBU6Gjs.ChainId["linea-goerli"]]: "linea-goerli" /* LineaGoerli */,
112
+ [_chunkLGGBBU6Gjs.ChainId["linea-sepolia"]]: "linea-sepolia" /* LineaSepolia */,
113
+ [_chunkLGGBBU6Gjs.ChainId["linea-mainnet"]]: "linea-mainnet" /* LineaMainnet */,
114
+ [_chunkLGGBBU6Gjs.ChainId.aurora]: "aurora" /* Aurora */
115
+ };
116
+
117
+
118
+
119
+
120
+
121
+
122
+
123
+
124
+
125
+
126
+
127
+
128
+
129
+
130
+
131
+
132
+
133
+
134
+
135
+
136
+
137
+
138
+
139
+
140
+ exports.RPC = RPC; exports.FALL_BACK_VS_CURRENCY = FALL_BACK_VS_CURRENCY; exports.IPFS_DEFAULT_GATEWAY_URL = IPFS_DEFAULT_GATEWAY_URL; exports.GANACHE_CHAIN_ID = GANACHE_CHAIN_ID; exports.MAX_SAFE_CHAIN_ID = MAX_SAFE_CHAIN_ID; exports.ERC721 = ERC721; exports.ERC1155 = ERC1155; exports.ERC20 = ERC20; exports.ERC721_INTERFACE_ID = ERC721_INTERFACE_ID; exports.ERC721_METADATA_INTERFACE_ID = ERC721_METADATA_INTERFACE_ID; exports.ERC721_ENUMERABLE_INTERFACE_ID = ERC721_ENUMERABLE_INTERFACE_ID; exports.ERC1155_INTERFACE_ID = ERC1155_INTERFACE_ID; exports.ERC1155_METADATA_URI_INTERFACE_ID = ERC1155_METADATA_URI_INTERFACE_ID; exports.ERC1155_TOKEN_RECEIVER_INTERFACE_ID = ERC1155_TOKEN_RECEIVER_INTERFACE_ID; exports.GWEI = GWEI; exports.ASSET_TYPES = ASSET_TYPES; exports.TESTNET_TICKER_SYMBOLS = TESTNET_TICKER_SYMBOLS; exports.BUILT_IN_NETWORKS = BUILT_IN_NETWORKS; exports.OPENSEA_PROXY_URL = OPENSEA_PROXY_URL; exports.ORIGIN_METAMASK = ORIGIN_METAMASK; exports.ApprovalType = ApprovalType; exports.CHAIN_ID_TO_ETHERS_NETWORK_NAME_MAP = CHAIN_ID_TO_ETHERS_NETWORK_NAME_MAP;
141
+ //# sourceMappingURL=chunk-AEMFFAHN.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/constants.ts"],"names":["ApprovalType"],"mappings":"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","sourcesContent":["import {\n NetworkType,\n NetworksTicker,\n ChainId,\n BuiltInNetworkName,\n} from './types';\n\nexport const RPC = 'rpc';\nexport const FALL_BACK_VS_CURRENCY = 'ETH';\nexport const IPFS_DEFAULT_GATEWAY_URL = 'https://cloudflare-ipfs.com/ipfs/';\n\n// NETWORKS ID\n// `toHex` not invoked to avoid cyclic dependency\nexport const GANACHE_CHAIN_ID = '0x539'; // toHex(1337)\n/**\n * The largest possible chain ID we can handle.\n * Explanation: https://gist.github.com/rekmarks/a47bd5f2525936c4b8eee31a16345553\n */\nexport const MAX_SAFE_CHAIN_ID = 4503599627370476;\n\n// TOKEN STANDARDS\nexport const ERC721 = 'ERC721';\nexport const ERC1155 = 'ERC1155';\nexport const ERC20 = 'ERC20';\n\n// TOKEN INTERFACE IDS\nexport const ERC721_INTERFACE_ID = '0x80ac58cd';\nexport const ERC721_METADATA_INTERFACE_ID = '0x5b5e139f';\nexport const ERC721_ENUMERABLE_INTERFACE_ID = '0x780e9d63';\nexport const ERC1155_INTERFACE_ID = '0xd9b67a26';\nexport const ERC1155_METADATA_URI_INTERFACE_ID = '0x0e89341c';\nexport const ERC1155_TOKEN_RECEIVER_INTERFACE_ID = '0x4e2312e0';\n\n// UNITS\nexport const GWEI = 'gwei';\n\n// ASSET TYPES\nexport const ASSET_TYPES = {\n NATIVE: 'NATIVE',\n TOKEN: 'TOKEN',\n NFT: 'NFT',\n UNKNOWN: 'UNKNOWN',\n};\n\n// TICKER SYMBOLS\nexport const TESTNET_TICKER_SYMBOLS = {\n GOERLI: 'GoerliETH',\n SEPOLIA: 'SepoliaETH',\n LINEA_GOERLI: 'LineaETH',\n LINEA_SEPOLIA: 'LineaETH',\n};\n\n/**\n * Map of all build-in Infura networks to their network, ticker and chain IDs.\n */\nexport const BUILT_IN_NETWORKS = {\n [NetworkType.goerli]: {\n chainId: ChainId.goerli,\n ticker: NetworksTicker.goerli,\n rpcPrefs: {\n blockExplorerUrl: `https://${NetworkType.goerli}.etherscan.io`,\n },\n },\n [NetworkType.sepolia]: {\n chainId: ChainId.sepolia,\n ticker: NetworksTicker.sepolia,\n rpcPrefs: {\n blockExplorerUrl: `https://${NetworkType.sepolia}.etherscan.io`,\n },\n },\n [NetworkType.mainnet]: {\n chainId: ChainId.mainnet,\n ticker: NetworksTicker.mainnet,\n rpcPrefs: {\n blockExplorerUrl: 'https://etherscan.io',\n },\n },\n [NetworkType['linea-goerli']]: {\n chainId: ChainId['linea-goerli'],\n ticker: NetworksTicker['linea-goerli'],\n rpcPrefs: {\n blockExplorerUrl: 'https://goerli.lineascan.build',\n },\n },\n [NetworkType['linea-sepolia']]: {\n chainId: ChainId['linea-sepolia'],\n ticker: NetworksTicker['linea-sepolia'],\n rpcPrefs: {\n blockExplorerUrl: 'https://sepolia.lineascan.build',\n },\n },\n [NetworkType['linea-mainnet']]: {\n chainId: ChainId['linea-mainnet'],\n ticker: NetworksTicker['linea-mainnet'],\n rpcPrefs: {\n blockExplorerUrl: 'https://lineascan.build',\n },\n },\n [NetworkType.rpc]: {\n chainId: undefined,\n blockExplorerUrl: undefined,\n ticker: undefined,\n rpcPrefs: undefined,\n },\n} as const;\n\n// APIs\nexport const OPENSEA_PROXY_URL =\n 'https://proxy.metafi.codefi.network/opensea/v1/api/v2';\n\n// Default origin for controllers\nexport const ORIGIN_METAMASK = 'metamask';\n\n/**\n * Approval request types for various operations.\n * These types are used by different controllers to create and manage\n * approval requests consistently.\n */\nexport enum ApprovalType {\n AddEthereumChain = 'wallet_addEthereumChain',\n ConnectAccounts = 'connect_accounts',\n EthDecrypt = 'eth_decrypt',\n EthGetEncryptionPublicKey = 'eth_getEncryptionPublicKey',\n EthSign = 'eth_sign',\n EthSignTypedData = 'eth_signTypedData',\n PersonalSign = 'personal_sign',\n ResultError = 'result_error',\n ResultSuccess = 'result_success',\n SnapDialogAlert = 'snap_dialog:alert',\n SnapDialogConfirmation = 'snap_dialog:confirmation',\n SnapDialogPrompt = 'snap_dialog:prompt',\n SwitchEthereumChain = 'wallet_switchEthereumChain',\n Transaction = 'transaction',\n Unlock = 'unlock',\n WalletConnect = 'wallet_connect',\n WalletRequestPermissions = 'wallet_requestPermissions',\n WatchAsset = 'wallet_watchAsset',\n}\n\nexport const CHAIN_ID_TO_ETHERS_NETWORK_NAME_MAP: Record<\n ChainId,\n BuiltInNetworkName\n> = {\n [ChainId.goerli]: BuiltInNetworkName.Goerli,\n [ChainId.sepolia]: BuiltInNetworkName.Sepolia,\n [ChainId.mainnet]: BuiltInNetworkName.Mainnet,\n [ChainId['linea-goerli']]: BuiltInNetworkName.LineaGoerli,\n [ChainId['linea-sepolia']]: BuiltInNetworkName.LineaSepolia,\n [ChainId['linea-mainnet']]: BuiltInNetworkName.LineaMainnet,\n [ChainId.aurora]: BuiltInNetworkName.Aurora,\n};\n"]}