Skip to content

Chain provider has error with chains #565

@dao0dev

Description

@dao0dev

Hello, I have the error

    at KeplrExtensionWallet.makeFinalEndpoints (main-wallet.js:77:1)
    at eval (main-wallet.js:111:1)
    at Array.forEach (<anonymous>)
    at KeplrExtensionWallet.setChains (main-wallet.js:108:1)
    at eval (manager.js:73:1)
    at Array.map (<anonymous>)
    at WalletManager.init (manager.js:68:1)
    at new WalletManager (manager.js:58:1)
    at eval (provider.js:20:1)
    at commitHookEffectListMount (react-dom.development.js:23189:1)
    at invokePassiveEffectMountInDEV (react-dom.development.js:25193:1)
    at invokeEffectsInDev (react-dom.development.js:27390:1)
    at commitDoubleInvokeEffectsInDEV (react-dom.development.js:27369:1)
    at flushPassiveEffectsImpl (react-dom.development.js:27095:1)
    at flushPassiveEffects (react-dom.development.js:27023:1)
    at eval (react-dom.development.js:26808:1)
    at workLoop (scheduler.development.js:266:1)
    at flushWork (scheduler.development.js:239:1)
    at MessagePort.performWorkUntilDeadline (scheduler.development.js:533:1)

my code

import { chains, assetLists } from 'chain-registry';
import { wallets } from '@cosmos-kit/keplr';

const newChains = chains.filter((c) => [ 'cosmoshub', 'mantrachain' ].includes(c.chainName));
const newAssetLists = assetLists.filter((a) => [ 'cosmoshub', 'mantrachain' ].includes(a.chainName));

<ChainProvider
				chains={newChains}
				assetLists={newAssetLists}
				wallets={wallets}
				logLevel={'DEBUG'}
				walletConnectOptions={{
					signClient: {
						projectId: 'a8510432ebb71e6948cfd6cde54b70f7',
						relayUrl: 'wss://relay.walletconnect.org',
						metadata: {
							name: 'CosmosKit Template',
							description: 'CosmosKit dapp template',
							url: 'https://docs.cosmology.zone/cosmos-kit/',
							icons: [],
						},
					},
				}}
			>

version library

		"chain-registry": "^2.0.24",
		"@cosmos-kit/core": "^2.16.1",
		"@cosmos-kit/keplr": "^2.15.1",
		"@cosmos-kit/react": "^2.22.1",

code package

    makeFinalEndpoints(chain) {
        const isTestNet = chain.name.includes('testnet');
        const preferredEndpoints = {
            isLazy: chain.preferredEndpoints?.isLazy,
            rpc: [
                ...(chain.preferredEndpoints?.rpc || []),
                ...(this.preferredEndpoints?.[chain.name]?.rpc || []),
                ...(chain.chain?.apis?.rpc?.map((e) => e.address) || []),
                isTestNet
                    ? `https://rpc.testcosmos.directory/${chain.name}`
                    : `https://rpc.cosmos.directory/${chain.name}`,
            ],
            rest: [
                ...(chain.preferredEndpoints?.rest || []),
                ...(this.preferredEndpoints?.[chain.name]?.rest || []),
                ...(chain.chain?.apis?.rest?.map((e) => e.address) || []),
                isTestNet
                    ? `https://rest.testcosmos.directory/${chain.name}`
                    : `https://rest.cosmos.directory/${chain.name}`,
            ],
        };
        return preferredEndpoints;
    }

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions