{"version":3,"file":"public-client-DtJS2A20-z5L4hhhH.cjs","names":[],"sources":["../../adapter-evm-core/dist/public-client-DtJS2A20.mjs"],"sourcesContent":["import { logger } from \"@openzeppelin/ui-utils\";\nimport { createPublicClient, http } from \"viem\";\n\n//#region src/utils/public-client.ts\n/**\n* Shared Viem Public Client Factory\n*\n* Creates a viem `PublicClient` for on-chain reads. Consolidates client creation\n* logic that was previously duplicated across query/handler.ts, access-control/onchain-reader.ts,\n* and access-control/role-discovery.ts.\n*\n* @module utils/public-client\n*/\nconst LOG_SYSTEM = \"createEvmPublicClient\";\n/**\n* Default minimal chain config used when no `viemChain` is provided.\n* Sufficient for `readContract()` calls where chain metadata is not needed.\n*/\nfunction buildMinimalChain(rpcUrl) {\n\treturn {\n\t\tid: 1,\n\t\tname: \"Unknown\",\n\t\tnativeCurrency: {\n\t\t\tname: \"ETH\",\n\t\t\tsymbol: \"ETH\",\n\t\t\tdecimals: 18\n\t\t},\n\t\trpcUrls: { default: { http: [rpcUrl] } }\n\t};\n}\n/**\n* Creates a viem `PublicClient` for on-chain reads.\n*\n* If `viemChain` is provided, it is used directly. Otherwise a minimal chain\n* config is built from the RPC URL — this is sufficient for `readContract()`\n* calls where chain metadata (block explorers, native currency, etc.) is not required.\n*\n* @param rpcUrl - The RPC endpoint URL\n* @param viemChain - Optional viem Chain object with full chain metadata\n* @returns A viem PublicClient ready for on-chain reads\n* @throws If client creation fails (e.g. invalid RPC URL)\n*/\nfunction createEvmPublicClient(rpcUrl, viemChain) {\n\tif (!viemChain) logger.debug(LOG_SYSTEM, \"No viemChain provided, using minimal chain config\");\n\treturn createPublicClient({\n\t\tchain: viemChain ?? buildMinimalChain(rpcUrl),\n\t\ttransport: http(rpcUrl)\n\t});\n}\n\n//#endregion\nexport { createEvmPublicClient as t };\n//# sourceMappingURL=public-client-DtJS2A20.mjs.map"],"mappings":";;;;;;;;;;;;;;AAaA,MAAM,aAAa;;;;;AAKnB,SAAS,kBAAkB,QAAQ;AAClC,QAAO;EACN,IAAI;EACJ,MAAM;EACN,gBAAgB;GACf,MAAM;GACN,QAAQ;GACR,UAAU;GACV;EACD,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE;EACxC;;;;;;;;;;;;;;AAcF,SAAS,sBAAsB,QAAQ,WAAW;AACjD,KAAI,CAAC,UAAW,+BAAO,MAAM,YAAY,oDAAoD;AAC7F,qCAA0B;EACzB,OAAO,aAAa,kBAAkB,OAAO;EAC7C,0BAAgB,OAAO;EACvB,CAAC"}