From b7cdd0e991a508849b5cd720f6d28db4730930b3 Mon Sep 17 00:00:00 2001 From: Arjun Porwal <65214523+ap211unitech@users.noreply.github.com> Date: Tue, 9 Dec 2025 20:13:11 +0530 Subject: [PATCH] fix: getProxyTypeInstance to derive proxy type name from addProxy call arguments (#12053) --- packages/page-accounts/src/modals/ProxyOverview.tsx | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/packages/page-accounts/src/modals/ProxyOverview.tsx b/packages/page-accounts/src/modals/ProxyOverview.tsx index 2bdf562ca8..41feebb1b1 100644 --- a/packages/page-accounts/src/modals/ProxyOverview.tsx +++ b/packages/page-accounts/src/modals/ProxyOverview.tsx @@ -148,8 +148,12 @@ function NewProxy ({ index, onChangeAccount, onChangeType, onRemove, proxiedAcco } function getProxyTypeInstance (api: ApiPromise, index = 0): KitchensinkRuntimeProxyType { - // This is not perfect, but should work for `{Kusama, Node, Polkadot}RuntimeProxyType` - const proxyNames = api.registry.lookup.names.filter((name) => name.endsWith('RuntimeProxyType')); + // This is not perfect, but should work for most chains coz thier type ends with ProxyType` + // const proxyNames = api.registry.lookup.names.filter((name) => name.endsWith('ProxyType')); + + // Better: derive the type name directly from the args of the addProxy call. + // This works consistently across Polkadot SDK chains. + const proxyNames = [api.tx.proxy.addProxy.meta.args[1].type.toString()]; // fallback to previous version (may be Substrate default), when not found return api.createType(proxyNames.length ? proxyNames[0] : 'ProxyType', index);