From bb8320ab2f7948fdcd70f75ddcb4098b0ad6e1e4 Mon Sep 17 00:00:00 2001 From: Valentin Fernandez <33705477+valentinfernandez1@users.noreply.github.com> Date: Tue, 13 May 2025 12:28:12 -0300 Subject: [PATCH] Fix StagingXcmV5Junctions generation (#6145) * Fix StagingXcmV5 * lint --- packages/typegen/src/generate/tsDef.ts | 8 ++++++-- .../types-augment/src/lookup/types-polkadot.ts | 16 ++++++++-------- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/packages/typegen/src/generate/tsDef.ts b/packages/typegen/src/generate/tsDef.ts index f25e686a8b..4e9a83967b 100644 --- a/packages/typegen/src/generate/tsDef.ts +++ b/packages/typegen/src/generate/tsDef.ts @@ -59,8 +59,12 @@ function tsEnum (registry: Registry, definitions: Record, { // type as the parent we can take the lookupName from the sub. // This is specific to `StagingXcmV4Junction`. // see: https://github.com/polkadot-js/api/pull/5812 - if (sub && !Array.isArray(sub) && type.includes(`${sub.type};`) && (sub.lookupName === 'StagingXcmV4Junction' || sub.lookupName === 'StagingXcmV5Junction')) { - extractedLookupName = sub.lookupName; + if (sub && !Array.isArray(sub) && type.includes(`${sub.type};`)) { + if (sub.lookupName === 'StagingXcmV4Junction') { + extractedLookupName = sub.lookupName; + } else if (sub.lookupName === 'StagingXcmV5Junction') { + extractedLookupName = `Vec<${sub.lookupName}>`; + } } const asGetter = type === 'Null' || info === TypeDefInfo.DoNotConstruct diff --git a/packages/types-augment/src/lookup/types-polkadot.ts b/packages/types-augment/src/lookup/types-polkadot.ts index 2965a83f0f..d41bd002e3 100644 --- a/packages/types-augment/src/lookup/types-polkadot.ts +++ b/packages/types-augment/src/lookup/types-polkadot.ts @@ -278,21 +278,21 @@ declare module '@polkadot/types/lookup' { interface StagingXcmV5Junctions extends Enum { readonly isHere: boolean; readonly isX1: boolean; - readonly asX1: StagingXcmV5Junction; + readonly asX1: Vec; readonly isX2: boolean; - readonly asX2: StagingXcmV5Junction; + readonly asX2: Vec; readonly isX3: boolean; - readonly asX3: StagingXcmV5Junction; + readonly asX3: Vec; readonly isX4: boolean; - readonly asX4: StagingXcmV5Junction; + readonly asX4: Vec; readonly isX5: boolean; - readonly asX5: StagingXcmV5Junction; + readonly asX5: Vec; readonly isX6: boolean; - readonly asX6: StagingXcmV5Junction; + readonly asX6: Vec; readonly isX7: boolean; - readonly asX7: StagingXcmV5Junction; + readonly asX7: Vec; readonly isX8: boolean; - readonly asX8: StagingXcmV5Junction; + readonly asX8: Vec; readonly type: 'Here' | 'X1' | 'X2' | 'X3' | 'X4' | 'X5' | 'X6' | 'X7' | 'X8'; }