@gfxlabs/oku-chains 1.12.22 → 1.12.24

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/browser.js CHANGED
@@ -4557,6 +4557,7 @@
4557
4557
  ...chains.polygon,
4558
4558
  initCodeHash: "0xe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b54",
4559
4559
  blockTimeSeconds: 2,
4560
+ liteChain: true,
4560
4561
  launchTime: 1688997600,
4561
4562
  transactionType: "eip1559",
4562
4563
  sortIndex: 5,
@@ -7045,7 +7046,10 @@
7045
7046
  (function (ChainType) {
7046
7047
  /** EVM chains (CAIP-2 namespace `eip155`). */
7047
7048
  ChainType["EVM"] = "eip155";
7048
- /** Bitcoin (CAIP-2 namespace `bip122`). */
7049
+ /**
7050
+ * Bitcoin and Bitcoin-derived chains, e.g. Zcash (CAIP-2 namespace
7051
+ * `bip122`).
7052
+ */
7049
7053
  ChainType["Bitcoin"] = "bip122";
7050
7054
  /** Solana (CAIP-2 namespace `solana`). */
7051
7055
  ChainType["Solana"] = "solana";
@@ -7145,7 +7149,7 @@
7145
7149
  * Refs:
7146
7150
  * - https://github.com/ChainAgnostic/namespaces/blob/main/bip122/caip2.md
7147
7151
  */
7148
- const chain = viem.defineChain({
7152
+ const chain$2 = viem.defineChain({
7149
7153
  id: NON_EVM_CHAIN_ID,
7150
7154
  name: "Bitcoin",
7151
7155
  nativeCurrency: {
@@ -7167,7 +7171,7 @@
7167
7171
  },
7168
7172
  });
7169
7173
  const bitcoin = makeConfig({
7170
- ...chain,
7174
+ ...chain$2,
7171
7175
  caip2Namespace: "bip122",
7172
7176
  caip2Reference: "000000000019d6689c085ae165831e93",
7173
7177
  internalName: "bitcoin",
@@ -7212,6 +7216,173 @@
7212
7216
  },
7213
7217
  });
7214
7218
 
7219
+ /**
7220
+ * Solana mainnet-beta.
7221
+ *
7222
+ * A non-EVM chain expressed within the EVM-shaped {@link IChainInfo} so it
7223
+ * flows through the existing resolvers and consumers unchanged. Because viem's
7224
+ * `Chain` requires a numeric `id`, Solana uses the {@link NON_EVM_CHAIN_ID}
7225
+ * (`0`) placeholder and is identified/resolved via CAIP-2 instead:
7226
+ * `solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp`, where the reference is the first
7227
+ * 32 base58 chars of the genesis hash per the CAIP-2 `solana` namespace.
7228
+ *
7229
+ * EVM-only fields (uniswap, morpho, contracts, etc.) are present but empty.
7230
+ *
7231
+ * Refs:
7232
+ * - https://github.com/ChainAgnostic/namespaces/blob/main/solana/caip2.md
7233
+ */
7234
+ const chain$1 = viem.defineChain({
7235
+ id: NON_EVM_CHAIN_ID,
7236
+ name: "Solana",
7237
+ nativeCurrency: {
7238
+ name: "Solana",
7239
+ symbol: "SOL",
7240
+ decimals: 9,
7241
+ },
7242
+ rpcUrls: {
7243
+ default: {
7244
+ http: ["https://api.mainnet-beta.solana.com"],
7245
+ },
7246
+ },
7247
+ blockExplorers: {
7248
+ default: {
7249
+ name: "Solscan",
7250
+ url: "https://solscan.io",
7251
+ apiUrl: "https://public-api.solscan.io",
7252
+ },
7253
+ },
7254
+ });
7255
+ const solana = makeConfig({
7256
+ ...chain$1,
7257
+ caip2Namespace: "solana",
7258
+ caip2Reference: "5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
7259
+ internalName: "solana",
7260
+ transactionType: "solana",
7261
+ sortIndex: 1001,
7262
+ launchTime: 1584368940,
7263
+ blockTimeSeconds: 0.4,
7264
+ deprecated: false,
7265
+ logoUrl: "https://cms.oku.trade/cdn/public/chains/solana-logo.webp",
7266
+ nativeLogoUrl: "https://cms.oku.trade/cdn/public/natives/sol.png",
7267
+ blockAid: "solana",
7268
+ estimatedSwapGas: 0,
7269
+ estimatedBridgeGas: 0,
7270
+ estimatedWrapGas: 0,
7271
+ initCodeHash: "0x0000000000000000000000000000000000000000000000000000000000000000",
7272
+ defaultPool: "0x0000000000000000000000000000000000000000",
7273
+ defaultToken0: "0x0000000000000000000000000000000000000000",
7274
+ defaultToken1: "0x0000000000000000000000000000000000000000",
7275
+ tokenList: [],
7276
+ stables: [],
7277
+ watchlist: [],
7278
+ v4Watchlist: [],
7279
+ externalId: {
7280
+ coingecko: "solana",
7281
+ },
7282
+ markets: {},
7283
+ bridges: {},
7284
+ oracles: {
7285
+ coingecko: {
7286
+ slug: "solana",
7287
+ native: "solana",
7288
+ },
7289
+ },
7290
+ uniswap: {},
7291
+ morpho: {},
7292
+ token: {},
7293
+ oku: {},
7294
+ contracts: {
7295
+ nftManager: {
7296
+ address: "0x0000000000000000000000000000000000000000",
7297
+ },
7298
+ },
7299
+ });
7300
+
7301
+ /**
7302
+ * Zcash mainnet.
7303
+ *
7304
+ * A non-EVM chain expressed within the EVM-shaped {@link IChainInfo} so it
7305
+ * flows through the existing resolvers and consumers unchanged. Because viem's
7306
+ * `Chain` requires a numeric `id`, Zcash uses the {@link NON_EVM_CHAIN_ID}
7307
+ * (`0`) placeholder and is identified/resolved via CAIP-2 instead:
7308
+ * `bip122:00040fe8ec8471911baa1db1266ea15d`, where the reference is the first
7309
+ * 32 hex chars of the genesis block hash per the CAIP-2 `bip122` namespace.
7310
+ * Zcash is a Bitcoin-derived chain and therefore shares the `bip122`
7311
+ * namespace, so `chainType(zcash)` is `ChainType.Bitcoin`; use `internalName`
7312
+ * (or the CAIP-2 identifier) to distinguish it from Bitcoin itself.
7313
+ *
7314
+ * EVM-only fields (uniswap, morpho, contracts, etc.) are present but empty.
7315
+ *
7316
+ * Refs:
7317
+ * - https://github.com/ChainAgnostic/namespaces/blob/main/bip122/caip2.md
7318
+ */
7319
+ const chain = viem.defineChain({
7320
+ id: NON_EVM_CHAIN_ID,
7321
+ name: "Zcash",
7322
+ nativeCurrency: {
7323
+ name: "Zcash",
7324
+ symbol: "ZEC",
7325
+ decimals: 8,
7326
+ },
7327
+ rpcUrls: {
7328
+ default: {
7329
+ http: ["https://zec.rocks:443"],
7330
+ },
7331
+ },
7332
+ blockExplorers: {
7333
+ default: {
7334
+ name: "Blockchair",
7335
+ url: "https://blockchair.com/zcash",
7336
+ apiUrl: "https://api.blockchair.com/zcash",
7337
+ },
7338
+ },
7339
+ });
7340
+ const zcash = makeConfig({
7341
+ ...chain,
7342
+ caip2Namespace: "bip122",
7343
+ caip2Reference: "00040fe8ec8471911baa1db1266ea15d",
7344
+ internalName: "zcash",
7345
+ transactionType: "zcash",
7346
+ sortIndex: 1002,
7347
+ launchTime: 1477641360,
7348
+ blockTimeSeconds: 75,
7349
+ deprecated: false,
7350
+ logoUrl: "https://cms.oku.trade/cdn/public/chains/zcash-logo.webp",
7351
+ nativeLogoUrl: "https://cms.oku.trade/cdn/public/natives/zec.png",
7352
+ blockAid: "",
7353
+ estimatedSwapGas: 0,
7354
+ estimatedBridgeGas: 0,
7355
+ estimatedWrapGas: 0,
7356
+ initCodeHash: "0x0000000000000000000000000000000000000000000000000000000000000000",
7357
+ defaultPool: "0x0000000000000000000000000000000000000000",
7358
+ defaultToken0: "0x0000000000000000000000000000000000000000",
7359
+ defaultToken1: "0x0000000000000000000000000000000000000000",
7360
+ tokenList: [],
7361
+ stables: [],
7362
+ watchlist: [],
7363
+ v4Watchlist: [],
7364
+ externalId: {
7365
+ coingecko: "zcash",
7366
+ },
7367
+ markets: {},
7368
+ bridges: {},
7369
+ oracles: {
7370
+ coingecko: {
7371
+ slug: "zcash",
7372
+ native: "zcash",
7373
+ },
7374
+ },
7375
+ uniswap: {},
7376
+ morpho: {},
7377
+ token: {},
7378
+ oku: {},
7379
+ contracts: {
7380
+ nftManager: {
7381
+ address: "0x0000000000000000000000000000000000000000",
7382
+ },
7383
+ },
7384
+ });
7385
+
7215
7386
  /**
7216
7387
  * Parse a CAIP-2 chain ID string into its namespace and reference components.
7217
7388
  *
@@ -7490,6 +7661,8 @@
7490
7661
  */
7491
7662
  const NON_EVM_CHAINS = [
7492
7663
  bitcoin,
7664
+ solana,
7665
+ zcash,
7493
7666
  ];
7494
7667
  /**
7495
7668
  * All networks, EVM and non-EVM. Use this when you need to enumerate every
@@ -7723,6 +7896,7 @@
7723
7896
  exports.scroll = scroll;
7724
7897
  exports.sei = sei;
7725
7898
  exports.sepolia = sepolia;
7899
+ exports.solana = solana;
7726
7900
  exports.sonic = sonic;
7727
7901
  exports.taiko = taiko;
7728
7902
  exports.telos = telos;
@@ -7731,6 +7905,7 @@
7731
7905
  exports.unichain = unichain;
7732
7906
  exports.worldchain = worldchain;
7733
7907
  exports.xdc = xdc;
7908
+ exports.zcash = zcash;
7734
7909
  exports.zerog = zerog;
7735
7910
  exports.zkSync = zkSync;
7736
7911
 
package/dist/index-mjs.js CHANGED
@@ -4554,6 +4554,7 @@ const polygon = makeConfig({
4554
4554
  ...polygon$1,
4555
4555
  initCodeHash: "0xe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b54",
4556
4556
  blockTimeSeconds: 2,
4557
+ liteChain: true,
4557
4558
  launchTime: 1688997600,
4558
4559
  transactionType: "eip1559",
4559
4560
  sortIndex: 5,
@@ -7042,7 +7043,10 @@ var ChainType;
7042
7043
  (function (ChainType) {
7043
7044
  /** EVM chains (CAIP-2 namespace `eip155`). */
7044
7045
  ChainType["EVM"] = "eip155";
7045
- /** Bitcoin (CAIP-2 namespace `bip122`). */
7046
+ /**
7047
+ * Bitcoin and Bitcoin-derived chains, e.g. Zcash (CAIP-2 namespace
7048
+ * `bip122`).
7049
+ */
7046
7050
  ChainType["Bitcoin"] = "bip122";
7047
7051
  /** Solana (CAIP-2 namespace `solana`). */
7048
7052
  ChainType["Solana"] = "solana";
@@ -7142,7 +7146,7 @@ function isNonEvmChain$1(c) {
7142
7146
  * Refs:
7143
7147
  * - https://github.com/ChainAgnostic/namespaces/blob/main/bip122/caip2.md
7144
7148
  */
7145
- const chain = defineChain({
7149
+ const chain$2 = defineChain({
7146
7150
  id: NON_EVM_CHAIN_ID,
7147
7151
  name: "Bitcoin",
7148
7152
  nativeCurrency: {
@@ -7164,7 +7168,7 @@ const chain = defineChain({
7164
7168
  },
7165
7169
  });
7166
7170
  const bitcoin = makeConfig({
7167
- ...chain,
7171
+ ...chain$2,
7168
7172
  caip2Namespace: "bip122",
7169
7173
  caip2Reference: "000000000019d6689c085ae165831e93",
7170
7174
  internalName: "bitcoin",
@@ -7209,6 +7213,173 @@ const bitcoin = makeConfig({
7209
7213
  },
7210
7214
  });
7211
7215
 
7216
+ /**
7217
+ * Solana mainnet-beta.
7218
+ *
7219
+ * A non-EVM chain expressed within the EVM-shaped {@link IChainInfo} so it
7220
+ * flows through the existing resolvers and consumers unchanged. Because viem's
7221
+ * `Chain` requires a numeric `id`, Solana uses the {@link NON_EVM_CHAIN_ID}
7222
+ * (`0`) placeholder and is identified/resolved via CAIP-2 instead:
7223
+ * `solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp`, where the reference is the first
7224
+ * 32 base58 chars of the genesis hash per the CAIP-2 `solana` namespace.
7225
+ *
7226
+ * EVM-only fields (uniswap, morpho, contracts, etc.) are present but empty.
7227
+ *
7228
+ * Refs:
7229
+ * - https://github.com/ChainAgnostic/namespaces/blob/main/solana/caip2.md
7230
+ */
7231
+ const chain$1 = defineChain({
7232
+ id: NON_EVM_CHAIN_ID,
7233
+ name: "Solana",
7234
+ nativeCurrency: {
7235
+ name: "Solana",
7236
+ symbol: "SOL",
7237
+ decimals: 9,
7238
+ },
7239
+ rpcUrls: {
7240
+ default: {
7241
+ http: ["https://api.mainnet-beta.solana.com"],
7242
+ },
7243
+ },
7244
+ blockExplorers: {
7245
+ default: {
7246
+ name: "Solscan",
7247
+ url: "https://solscan.io",
7248
+ apiUrl: "https://public-api.solscan.io",
7249
+ },
7250
+ },
7251
+ });
7252
+ const solana = makeConfig({
7253
+ ...chain$1,
7254
+ caip2Namespace: "solana",
7255
+ caip2Reference: "5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
7256
+ internalName: "solana",
7257
+ transactionType: "solana",
7258
+ sortIndex: 1001,
7259
+ launchTime: 1584368940,
7260
+ blockTimeSeconds: 0.4,
7261
+ deprecated: false,
7262
+ logoUrl: "https://cms.oku.trade/cdn/public/chains/solana-logo.webp",
7263
+ nativeLogoUrl: "https://cms.oku.trade/cdn/public/natives/sol.png",
7264
+ blockAid: "solana",
7265
+ estimatedSwapGas: 0,
7266
+ estimatedBridgeGas: 0,
7267
+ estimatedWrapGas: 0,
7268
+ initCodeHash: "0x0000000000000000000000000000000000000000000000000000000000000000",
7269
+ defaultPool: "0x0000000000000000000000000000000000000000",
7270
+ defaultToken0: "0x0000000000000000000000000000000000000000",
7271
+ defaultToken1: "0x0000000000000000000000000000000000000000",
7272
+ tokenList: [],
7273
+ stables: [],
7274
+ watchlist: [],
7275
+ v4Watchlist: [],
7276
+ externalId: {
7277
+ coingecko: "solana",
7278
+ },
7279
+ markets: {},
7280
+ bridges: {},
7281
+ oracles: {
7282
+ coingecko: {
7283
+ slug: "solana",
7284
+ native: "solana",
7285
+ },
7286
+ },
7287
+ uniswap: {},
7288
+ morpho: {},
7289
+ token: {},
7290
+ oku: {},
7291
+ contracts: {
7292
+ nftManager: {
7293
+ address: "0x0000000000000000000000000000000000000000",
7294
+ },
7295
+ },
7296
+ });
7297
+
7298
+ /**
7299
+ * Zcash mainnet.
7300
+ *
7301
+ * A non-EVM chain expressed within the EVM-shaped {@link IChainInfo} so it
7302
+ * flows through the existing resolvers and consumers unchanged. Because viem's
7303
+ * `Chain` requires a numeric `id`, Zcash uses the {@link NON_EVM_CHAIN_ID}
7304
+ * (`0`) placeholder and is identified/resolved via CAIP-2 instead:
7305
+ * `bip122:00040fe8ec8471911baa1db1266ea15d`, where the reference is the first
7306
+ * 32 hex chars of the genesis block hash per the CAIP-2 `bip122` namespace.
7307
+ * Zcash is a Bitcoin-derived chain and therefore shares the `bip122`
7308
+ * namespace, so `chainType(zcash)` is `ChainType.Bitcoin`; use `internalName`
7309
+ * (or the CAIP-2 identifier) to distinguish it from Bitcoin itself.
7310
+ *
7311
+ * EVM-only fields (uniswap, morpho, contracts, etc.) are present but empty.
7312
+ *
7313
+ * Refs:
7314
+ * - https://github.com/ChainAgnostic/namespaces/blob/main/bip122/caip2.md
7315
+ */
7316
+ const chain = defineChain({
7317
+ id: NON_EVM_CHAIN_ID,
7318
+ name: "Zcash",
7319
+ nativeCurrency: {
7320
+ name: "Zcash",
7321
+ symbol: "ZEC",
7322
+ decimals: 8,
7323
+ },
7324
+ rpcUrls: {
7325
+ default: {
7326
+ http: ["https://zec.rocks:443"],
7327
+ },
7328
+ },
7329
+ blockExplorers: {
7330
+ default: {
7331
+ name: "Blockchair",
7332
+ url: "https://blockchair.com/zcash",
7333
+ apiUrl: "https://api.blockchair.com/zcash",
7334
+ },
7335
+ },
7336
+ });
7337
+ const zcash = makeConfig({
7338
+ ...chain,
7339
+ caip2Namespace: "bip122",
7340
+ caip2Reference: "00040fe8ec8471911baa1db1266ea15d",
7341
+ internalName: "zcash",
7342
+ transactionType: "zcash",
7343
+ sortIndex: 1002,
7344
+ launchTime: 1477641360,
7345
+ blockTimeSeconds: 75,
7346
+ deprecated: false,
7347
+ logoUrl: "https://cms.oku.trade/cdn/public/chains/zcash-logo.webp",
7348
+ nativeLogoUrl: "https://cms.oku.trade/cdn/public/natives/zec.png",
7349
+ blockAid: "",
7350
+ estimatedSwapGas: 0,
7351
+ estimatedBridgeGas: 0,
7352
+ estimatedWrapGas: 0,
7353
+ initCodeHash: "0x0000000000000000000000000000000000000000000000000000000000000000",
7354
+ defaultPool: "0x0000000000000000000000000000000000000000",
7355
+ defaultToken0: "0x0000000000000000000000000000000000000000",
7356
+ defaultToken1: "0x0000000000000000000000000000000000000000",
7357
+ tokenList: [],
7358
+ stables: [],
7359
+ watchlist: [],
7360
+ v4Watchlist: [],
7361
+ externalId: {
7362
+ coingecko: "zcash",
7363
+ },
7364
+ markets: {},
7365
+ bridges: {},
7366
+ oracles: {
7367
+ coingecko: {
7368
+ slug: "zcash",
7369
+ native: "zcash",
7370
+ },
7371
+ },
7372
+ uniswap: {},
7373
+ morpho: {},
7374
+ token: {},
7375
+ oku: {},
7376
+ contracts: {
7377
+ nftManager: {
7378
+ address: "0x0000000000000000000000000000000000000000",
7379
+ },
7380
+ },
7381
+ });
7382
+
7212
7383
  /**
7213
7384
  * Parse a CAIP-2 chain ID string into its namespace and reference components.
7214
7385
  *
@@ -7487,6 +7658,8 @@ const MAINNET_CHAINS = [
7487
7658
  */
7488
7659
  const NON_EVM_CHAINS = [
7489
7660
  bitcoin,
7661
+ solana,
7662
+ zcash,
7490
7663
  ];
7491
7664
  /**
7492
7665
  * All networks, EVM and non-EVM. Use this when you need to enumerate every
@@ -7658,4 +7831,4 @@ function isNonEvmChain(c) {
7658
7831
  return isNonEvmChain$1(namespaceOfChainLike(c));
7659
7832
  }
7660
7833
 
7661
- export { ALL_NETWORKS, ChainType, MAINNET_CHAINS, NON_EVM_CHAINS, NON_EVM_CHAIN_ID, NetworkNotFoundError, arbitrum, avalanche, base, bitcoin, blast, bob, boba, bsc, buildNetworkIndex, caip2Reference, celo, chainType, corn, etherlink, filecoin, formatCAIP2, fromCAIP2, gensyn, gnosis, goat, hemi, hyperevm, isEvmChain, isNetworkType, isNonEvmChain, lens, lightlink, linea, lisk, mainnet, makeConfig, manta, mantle, matchain, metal, monad, moonbeam, networkByAny, networkByCAIP2, networkById, networkByName, networkByString, nibiru, optimism, parseCAIP2, pharos, plasma, polygon, polygonZkEvm, redbelly, robinhood, ronin, rootstock, saga, scroll, sei, sepolia, sonic, taiko, telos, toCAIP2, tronShasta, unichain, worldchain, xdc, zerog, zkSync };
7834
+ export { ALL_NETWORKS, ChainType, MAINNET_CHAINS, NON_EVM_CHAINS, NON_EVM_CHAIN_ID, NetworkNotFoundError, arbitrum, avalanche, base, bitcoin, blast, bob, boba, bsc, buildNetworkIndex, caip2Reference, celo, chainType, corn, etherlink, filecoin, formatCAIP2, fromCAIP2, gensyn, gnosis, goat, hemi, hyperevm, isEvmChain, isNetworkType, isNonEvmChain, lens, lightlink, linea, lisk, mainnet, makeConfig, manta, mantle, matchain, metal, monad, moonbeam, networkByAny, networkByCAIP2, networkById, networkByName, networkByString, nibiru, optimism, parseCAIP2, pharos, plasma, polygon, polygonZkEvm, redbelly, robinhood, ronin, rootstock, saga, scroll, sei, sepolia, solana, sonic, taiko, telos, toCAIP2, tronShasta, unichain, worldchain, xdc, zcash, zerog, zkSync };
package/dist/index.js CHANGED
@@ -4556,6 +4556,7 @@ const polygon = makeConfig({
4556
4556
  ...chains.polygon,
4557
4557
  initCodeHash: "0xe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b54",
4558
4558
  blockTimeSeconds: 2,
4559
+ liteChain: true,
4559
4560
  launchTime: 1688997600,
4560
4561
  transactionType: "eip1559",
4561
4562
  sortIndex: 5,
@@ -7044,7 +7045,10 @@ exports.ChainType = void 0;
7044
7045
  (function (ChainType) {
7045
7046
  /** EVM chains (CAIP-2 namespace `eip155`). */
7046
7047
  ChainType["EVM"] = "eip155";
7047
- /** Bitcoin (CAIP-2 namespace `bip122`). */
7048
+ /**
7049
+ * Bitcoin and Bitcoin-derived chains, e.g. Zcash (CAIP-2 namespace
7050
+ * `bip122`).
7051
+ */
7048
7052
  ChainType["Bitcoin"] = "bip122";
7049
7053
  /** Solana (CAIP-2 namespace `solana`). */
7050
7054
  ChainType["Solana"] = "solana";
@@ -7144,7 +7148,7 @@ function isNonEvmChain$1(c) {
7144
7148
  * Refs:
7145
7149
  * - https://github.com/ChainAgnostic/namespaces/blob/main/bip122/caip2.md
7146
7150
  */
7147
- const chain = viem.defineChain({
7151
+ const chain$2 = viem.defineChain({
7148
7152
  id: NON_EVM_CHAIN_ID,
7149
7153
  name: "Bitcoin",
7150
7154
  nativeCurrency: {
@@ -7166,7 +7170,7 @@ const chain = viem.defineChain({
7166
7170
  },
7167
7171
  });
7168
7172
  const bitcoin = makeConfig({
7169
- ...chain,
7173
+ ...chain$2,
7170
7174
  caip2Namespace: "bip122",
7171
7175
  caip2Reference: "000000000019d6689c085ae165831e93",
7172
7176
  internalName: "bitcoin",
@@ -7211,6 +7215,173 @@ const bitcoin = makeConfig({
7211
7215
  },
7212
7216
  });
7213
7217
 
7218
+ /**
7219
+ * Solana mainnet-beta.
7220
+ *
7221
+ * A non-EVM chain expressed within the EVM-shaped {@link IChainInfo} so it
7222
+ * flows through the existing resolvers and consumers unchanged. Because viem's
7223
+ * `Chain` requires a numeric `id`, Solana uses the {@link NON_EVM_CHAIN_ID}
7224
+ * (`0`) placeholder and is identified/resolved via CAIP-2 instead:
7225
+ * `solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp`, where the reference is the first
7226
+ * 32 base58 chars of the genesis hash per the CAIP-2 `solana` namespace.
7227
+ *
7228
+ * EVM-only fields (uniswap, morpho, contracts, etc.) are present but empty.
7229
+ *
7230
+ * Refs:
7231
+ * - https://github.com/ChainAgnostic/namespaces/blob/main/solana/caip2.md
7232
+ */
7233
+ const chain$1 = viem.defineChain({
7234
+ id: NON_EVM_CHAIN_ID,
7235
+ name: "Solana",
7236
+ nativeCurrency: {
7237
+ name: "Solana",
7238
+ symbol: "SOL",
7239
+ decimals: 9,
7240
+ },
7241
+ rpcUrls: {
7242
+ default: {
7243
+ http: ["https://api.mainnet-beta.solana.com"],
7244
+ },
7245
+ },
7246
+ blockExplorers: {
7247
+ default: {
7248
+ name: "Solscan",
7249
+ url: "https://solscan.io",
7250
+ apiUrl: "https://public-api.solscan.io",
7251
+ },
7252
+ },
7253
+ });
7254
+ const solana = makeConfig({
7255
+ ...chain$1,
7256
+ caip2Namespace: "solana",
7257
+ caip2Reference: "5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
7258
+ internalName: "solana",
7259
+ transactionType: "solana",
7260
+ sortIndex: 1001,
7261
+ launchTime: 1584368940,
7262
+ blockTimeSeconds: 0.4,
7263
+ deprecated: false,
7264
+ logoUrl: "https://cms.oku.trade/cdn/public/chains/solana-logo.webp",
7265
+ nativeLogoUrl: "https://cms.oku.trade/cdn/public/natives/sol.png",
7266
+ blockAid: "solana",
7267
+ estimatedSwapGas: 0,
7268
+ estimatedBridgeGas: 0,
7269
+ estimatedWrapGas: 0,
7270
+ initCodeHash: "0x0000000000000000000000000000000000000000000000000000000000000000",
7271
+ defaultPool: "0x0000000000000000000000000000000000000000",
7272
+ defaultToken0: "0x0000000000000000000000000000000000000000",
7273
+ defaultToken1: "0x0000000000000000000000000000000000000000",
7274
+ tokenList: [],
7275
+ stables: [],
7276
+ watchlist: [],
7277
+ v4Watchlist: [],
7278
+ externalId: {
7279
+ coingecko: "solana",
7280
+ },
7281
+ markets: {},
7282
+ bridges: {},
7283
+ oracles: {
7284
+ coingecko: {
7285
+ slug: "solana",
7286
+ native: "solana",
7287
+ },
7288
+ },
7289
+ uniswap: {},
7290
+ morpho: {},
7291
+ token: {},
7292
+ oku: {},
7293
+ contracts: {
7294
+ nftManager: {
7295
+ address: "0x0000000000000000000000000000000000000000",
7296
+ },
7297
+ },
7298
+ });
7299
+
7300
+ /**
7301
+ * Zcash mainnet.
7302
+ *
7303
+ * A non-EVM chain expressed within the EVM-shaped {@link IChainInfo} so it
7304
+ * flows through the existing resolvers and consumers unchanged. Because viem's
7305
+ * `Chain` requires a numeric `id`, Zcash uses the {@link NON_EVM_CHAIN_ID}
7306
+ * (`0`) placeholder and is identified/resolved via CAIP-2 instead:
7307
+ * `bip122:00040fe8ec8471911baa1db1266ea15d`, where the reference is the first
7308
+ * 32 hex chars of the genesis block hash per the CAIP-2 `bip122` namespace.
7309
+ * Zcash is a Bitcoin-derived chain and therefore shares the `bip122`
7310
+ * namespace, so `chainType(zcash)` is `ChainType.Bitcoin`; use `internalName`
7311
+ * (or the CAIP-2 identifier) to distinguish it from Bitcoin itself.
7312
+ *
7313
+ * EVM-only fields (uniswap, morpho, contracts, etc.) are present but empty.
7314
+ *
7315
+ * Refs:
7316
+ * - https://github.com/ChainAgnostic/namespaces/blob/main/bip122/caip2.md
7317
+ */
7318
+ const chain = viem.defineChain({
7319
+ id: NON_EVM_CHAIN_ID,
7320
+ name: "Zcash",
7321
+ nativeCurrency: {
7322
+ name: "Zcash",
7323
+ symbol: "ZEC",
7324
+ decimals: 8,
7325
+ },
7326
+ rpcUrls: {
7327
+ default: {
7328
+ http: ["https://zec.rocks:443"],
7329
+ },
7330
+ },
7331
+ blockExplorers: {
7332
+ default: {
7333
+ name: "Blockchair",
7334
+ url: "https://blockchair.com/zcash",
7335
+ apiUrl: "https://api.blockchair.com/zcash",
7336
+ },
7337
+ },
7338
+ });
7339
+ const zcash = makeConfig({
7340
+ ...chain,
7341
+ caip2Namespace: "bip122",
7342
+ caip2Reference: "00040fe8ec8471911baa1db1266ea15d",
7343
+ internalName: "zcash",
7344
+ transactionType: "zcash",
7345
+ sortIndex: 1002,
7346
+ launchTime: 1477641360,
7347
+ blockTimeSeconds: 75,
7348
+ deprecated: false,
7349
+ logoUrl: "https://cms.oku.trade/cdn/public/chains/zcash-logo.webp",
7350
+ nativeLogoUrl: "https://cms.oku.trade/cdn/public/natives/zec.png",
7351
+ blockAid: "",
7352
+ estimatedSwapGas: 0,
7353
+ estimatedBridgeGas: 0,
7354
+ estimatedWrapGas: 0,
7355
+ initCodeHash: "0x0000000000000000000000000000000000000000000000000000000000000000",
7356
+ defaultPool: "0x0000000000000000000000000000000000000000",
7357
+ defaultToken0: "0x0000000000000000000000000000000000000000",
7358
+ defaultToken1: "0x0000000000000000000000000000000000000000",
7359
+ tokenList: [],
7360
+ stables: [],
7361
+ watchlist: [],
7362
+ v4Watchlist: [],
7363
+ externalId: {
7364
+ coingecko: "zcash",
7365
+ },
7366
+ markets: {},
7367
+ bridges: {},
7368
+ oracles: {
7369
+ coingecko: {
7370
+ slug: "zcash",
7371
+ native: "zcash",
7372
+ },
7373
+ },
7374
+ uniswap: {},
7375
+ morpho: {},
7376
+ token: {},
7377
+ oku: {},
7378
+ contracts: {
7379
+ nftManager: {
7380
+ address: "0x0000000000000000000000000000000000000000",
7381
+ },
7382
+ },
7383
+ });
7384
+
7214
7385
  /**
7215
7386
  * Parse a CAIP-2 chain ID string into its namespace and reference components.
7216
7387
  *
@@ -7489,6 +7660,8 @@ const MAINNET_CHAINS = [
7489
7660
  */
7490
7661
  const NON_EVM_CHAINS = [
7491
7662
  bitcoin,
7663
+ solana,
7664
+ zcash,
7492
7665
  ];
7493
7666
  /**
7494
7667
  * All networks, EVM and non-EVM. Use this when you need to enumerate every
@@ -7722,6 +7895,7 @@ exports.saga = saga;
7722
7895
  exports.scroll = scroll;
7723
7896
  exports.sei = sei;
7724
7897
  exports.sepolia = sepolia;
7898
+ exports.solana = solana;
7725
7899
  exports.sonic = sonic;
7726
7900
  exports.taiko = taiko;
7727
7901
  exports.telos = telos;
@@ -7730,5 +7904,6 @@ exports.tronShasta = tronShasta;
7730
7904
  exports.unichain = unichain;
7731
7905
  exports.worldchain = worldchain;
7732
7906
  exports.xdc = xdc;
7907
+ exports.zcash = zcash;
7733
7908
  exports.zerog = zerog;
7734
7909
  exports.zkSync = zkSync;
@@ -1,6 +1,7 @@
1
1
  export declare const polygon: Readonly<{
2
2
  initCodeHash: "0xe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b54";
3
3
  blockTimeSeconds: 2;
4
+ liteChain: true;
4
5
  launchTime: 1688997600;
5
6
  transactionType: "eip1559";
6
7
  sortIndex: 5;
@@ -2523,6 +2523,7 @@ export declare const MAINNET_CHAINS: readonly [Readonly<{
2523
2523
  }>, Readonly<{
2524
2524
  initCodeHash: "0xe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b54";
2525
2525
  blockTimeSeconds: 2;
2526
+ liteChain: true;
2526
2527
  launchTime: 1688997600;
2527
2528
  transactionType: "eip1559";
2528
2529
  sortIndex: 5;
@@ -4891,7 +4892,17 @@ export declare const MAINNET_CHAINS: readonly [Readonly<{
4891
4892
  type: "eip2930";
4892
4893
  gasPrice: bigint;
4893
4894
  maxFeePerBlobGas?: undefined | undefined;
4894
- maxFeePerGas?: undefined | undefined;
4895
+ maxFeePerGas
4896
+ /**
4897
+ * True if the chain is non-EVM (its CAIP-2 namespace is not `eip155`). Accepts
4898
+ * an {@link IChainInfo} object, a CAIP-2 string, an internal name, or a
4899
+ * numeric chain id.
4900
+ */
4901
+ ? /**
4902
+ * True if the chain is non-EVM (its CAIP-2 namespace is not `eip155`). Accepts
4903
+ * an {@link IChainInfo} object, a CAIP-2 string, an internal name, or a
4904
+ * numeric chain id.
4905
+ */: undefined | undefined;
4895
4906
  maxPriorityFeePerGas?: undefined | undefined;
4896
4907
  isSystemTx?: undefined | undefined;
4897
4908
  mint?: undefined | undefined;
@@ -10,3 +10,5 @@
10
10
  * `src/definitions/`). Re-export new chains here when you add them.
11
11
  */
12
12
  export * from "./bitcoin";
13
+ export * from "./solana";
14
+ export * from "./zcash";
@@ -0,0 +1,85 @@
1
+ export declare const solana: Readonly<{
2
+ caip2Namespace: "solana";
3
+ caip2Reference: "5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp";
4
+ internalName: "solana";
5
+ transactionType: "solana";
6
+ sortIndex: 1001;
7
+ launchTime: 1584368940;
8
+ blockTimeSeconds: 0.4;
9
+ deprecated: false;
10
+ logoUrl: "https://cms.oku.trade/cdn/public/chains/solana-logo.webp";
11
+ nativeLogoUrl: "https://cms.oku.trade/cdn/public/natives/sol.png";
12
+ blockAid: "solana";
13
+ estimatedSwapGas: 0;
14
+ estimatedBridgeGas: 0;
15
+ estimatedWrapGas: 0;
16
+ initCodeHash: "0x0000000000000000000000000000000000000000000000000000000000000000";
17
+ defaultPool: "0x0000000000000000000000000000000000000000";
18
+ defaultToken0: "0x0000000000000000000000000000000000000000";
19
+ defaultToken1: "0x0000000000000000000000000000000000000000";
20
+ tokenList: never[];
21
+ stables: never[];
22
+ watchlist: never[];
23
+ v4Watchlist: never[];
24
+ externalId: {
25
+ coingecko: string;
26
+ };
27
+ markets: {};
28
+ bridges: {};
29
+ oracles: {
30
+ coingecko: {
31
+ slug: string;
32
+ native: string;
33
+ };
34
+ };
35
+ uniswap: {};
36
+ morpho: {};
37
+ token: {};
38
+ oku: {};
39
+ contracts: {
40
+ nftManager: {
41
+ address: "0x0000000000000000000000000000000000000000";
42
+ };
43
+ };
44
+ blockExplorers: {
45
+ readonly default: {
46
+ readonly name: "Solscan";
47
+ readonly url: "https://solscan.io";
48
+ readonly apiUrl: "https://public-api.solscan.io";
49
+ };
50
+ };
51
+ blockTime?: number | undefined | undefined;
52
+ ensTlds?: readonly string[] | undefined;
53
+ id: 0;
54
+ name: "Solana";
55
+ nativeCurrency: {
56
+ readonly name: "Solana";
57
+ readonly symbol: "SOL";
58
+ readonly decimals: 9;
59
+ };
60
+ experimental_preconfirmationTime?: number | undefined | undefined;
61
+ rpcUrls: {
62
+ readonly default: {
63
+ readonly http: readonly ["https://api.mainnet-beta.solana.com"];
64
+ };
65
+ };
66
+ sourceId?: number | undefined | undefined;
67
+ testnet?: boolean | undefined | undefined;
68
+ custom?: Record<string, unknown> | undefined;
69
+ extendSchema?: Record<string, unknown> | undefined;
70
+ fees?: import("viem").ChainFees<undefined> | undefined;
71
+ formatters?: undefined;
72
+ prepareTransactionRequest?: ((args: import("viem").PrepareTransactionRequestParameters, options: {
73
+ client: import("viem").Client;
74
+ phase: "beforeFillTransaction" | "beforeFillParameters" | "afterFillParameters";
75
+ }) => Promise<import("viem").PrepareTransactionRequestParameters>) | [fn: ((args: import("viem").PrepareTransactionRequestParameters, options: {
76
+ client: import("viem").Client;
77
+ phase: "beforeFillTransaction" | "beforeFillParameters" | "afterFillParameters";
78
+ }) => Promise<import("viem").PrepareTransactionRequestParameters>) | undefined, options: {
79
+ runAt: readonly ("beforeFillTransaction" | "beforeFillParameters" | "afterFillParameters")[];
80
+ }] | undefined;
81
+ serializers?: import("viem").ChainSerializers<undefined, import("viem").TransactionSerializable> | undefined;
82
+ verifyHash?: ((client: import("viem").Client, parameters: import("viem").VerifyHashActionParameters) => Promise<import("viem").VerifyHashActionReturnType>) | undefined;
83
+ } & {
84
+ caip2Namespace: string;
85
+ }>;
@@ -0,0 +1,85 @@
1
+ export declare const zcash: Readonly<{
2
+ caip2Namespace: "bip122";
3
+ caip2Reference: "00040fe8ec8471911baa1db1266ea15d";
4
+ internalName: "zcash";
5
+ transactionType: "zcash";
6
+ sortIndex: 1002;
7
+ launchTime: 1477641360;
8
+ blockTimeSeconds: 75;
9
+ deprecated: false;
10
+ logoUrl: "https://cms.oku.trade/cdn/public/chains/zcash-logo.webp";
11
+ nativeLogoUrl: "https://cms.oku.trade/cdn/public/natives/zec.png";
12
+ blockAid: "";
13
+ estimatedSwapGas: 0;
14
+ estimatedBridgeGas: 0;
15
+ estimatedWrapGas: 0;
16
+ initCodeHash: "0x0000000000000000000000000000000000000000000000000000000000000000";
17
+ defaultPool: "0x0000000000000000000000000000000000000000";
18
+ defaultToken0: "0x0000000000000000000000000000000000000000";
19
+ defaultToken1: "0x0000000000000000000000000000000000000000";
20
+ tokenList: never[];
21
+ stables: never[];
22
+ watchlist: never[];
23
+ v4Watchlist: never[];
24
+ externalId: {
25
+ coingecko: string;
26
+ };
27
+ markets: {};
28
+ bridges: {};
29
+ oracles: {
30
+ coingecko: {
31
+ slug: string;
32
+ native: string;
33
+ };
34
+ };
35
+ uniswap: {};
36
+ morpho: {};
37
+ token: {};
38
+ oku: {};
39
+ contracts: {
40
+ nftManager: {
41
+ address: "0x0000000000000000000000000000000000000000";
42
+ };
43
+ };
44
+ blockExplorers: {
45
+ readonly default: {
46
+ readonly name: "Blockchair";
47
+ readonly url: "https://blockchair.com/zcash";
48
+ readonly apiUrl: "https://api.blockchair.com/zcash";
49
+ };
50
+ };
51
+ blockTime?: number | undefined | undefined;
52
+ ensTlds?: readonly string[] | undefined;
53
+ id: 0;
54
+ name: "Zcash";
55
+ nativeCurrency: {
56
+ readonly name: "Zcash";
57
+ readonly symbol: "ZEC";
58
+ readonly decimals: 8;
59
+ };
60
+ experimental_preconfirmationTime?: number | undefined | undefined;
61
+ rpcUrls: {
62
+ readonly default: {
63
+ readonly http: readonly ["https://zec.rocks:443"];
64
+ };
65
+ };
66
+ sourceId?: number | undefined | undefined;
67
+ testnet?: boolean | undefined | undefined;
68
+ custom?: Record<string, unknown> | undefined;
69
+ extendSchema?: Record<string, unknown> | undefined;
70
+ fees?: import("viem").ChainFees<undefined> | undefined;
71
+ formatters?: undefined;
72
+ prepareTransactionRequest?: ((args: import("viem").PrepareTransactionRequestParameters, options: {
73
+ client: import("viem").Client;
74
+ phase: "beforeFillTransaction" | "beforeFillParameters" | "afterFillParameters";
75
+ }) => Promise<import("viem").PrepareTransactionRequestParameters>) | [fn: ((args: import("viem").PrepareTransactionRequestParameters, options: {
76
+ client: import("viem").Client;
77
+ phase: "beforeFillTransaction" | "beforeFillParameters" | "afterFillParameters";
78
+ }) => Promise<import("viem").PrepareTransactionRequestParameters>) | undefined, options: {
79
+ runAt: readonly ("beforeFillTransaction" | "beforeFillParameters" | "afterFillParameters")[];
80
+ }] | undefined;
81
+ serializers?: import("viem").ChainSerializers<undefined, import("viem").TransactionSerializable> | undefined;
82
+ verifyHash?: ((client: import("viem").Client, parameters: import("viem").VerifyHashActionParameters) => Promise<import("viem").VerifyHashActionReturnType>) | undefined;
83
+ } & {
84
+ caip2Namespace: string;
85
+ }>;
@@ -252,7 +252,10 @@ export declare const NON_EVM_CHAIN_ID = 0;
252
252
  export declare enum ChainType {
253
253
  /** EVM chains (CAIP-2 namespace `eip155`). */
254
254
  EVM = "eip155",
255
- /** Bitcoin (CAIP-2 namespace `bip122`). */
255
+ /**
256
+ * Bitcoin and Bitcoin-derived chains, e.g. Zcash (CAIP-2 namespace
257
+ * `bip122`).
258
+ */
256
259
  Bitcoin = "bip122",
257
260
  /** Solana (CAIP-2 namespace `solana`). */
258
261
  Solana = "solana",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gfxlabs/oku-chains",
3
- "version": "1.12.22",
3
+ "version": "1.12.24",
4
4
  "license": "MIT",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index-mjs.js",