adapter-evm: let createExplorer take an explorer-only config (no rpcUrl)

Aperta Adatta ai principianti
#92 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
76/100
Tipo di issue
Funzionalità
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
typescript

Direzione di ricerca

Leggi packages/adapter-evm-core/src/capabilities/explorer.ts e packages/adapter-evm-core/src/configuration/explorer.ts per individuare quali campi di configurazione usano createExplorer e resolveExplorerConfig. Definisci e applica un tipo di configurazione explorer più ristretto che consenta di creare un explorer senza rpcUrl, mantenendo la compatibilità con le configurazioni di rete complete. Il lavoro è completato quando il tipo pubblico accetta una configurazione solo explorer e gli usi esistenti restano validi.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

createExplorer takes a full NetworkConfig (explorer.ts#L6-L17), but at runtime it only reads the explorer side of it through resolveExplorerConfig (configuration/explorer.ts): id, name, explorerUrl, apiUrl and the API key lookups. It never reads rpcUrl.

In a browser app that shouldn't ship RPC URLs (a bank operator console, in my case), we want explorer links without putting an RPC endpoint in the bundle. Today that means building the config with rpcUrl: '' just to satisfy the type, which works but reads like a hack.

Suggested, non-breaking: let createExplorer accept a narrower type, e.g. Pick<EvmNetworkConfig, 'id' | 'name' | 'ecosystem' | 'explorerUrl' | 'apiUrl' | …> (whatever resolveExplorerConfig actually reads), or export an ExplorerNetworkConfig type for it. A full NetworkConfig still satisfies it, so current callers don't change.

Lingua principale
TypeScript
Stelle
2
Fork
2
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di OpenZeppelin/openzeppelin-adapters

Tutte le issue di OpenZeppelin/openzeppelin-adapters

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.