From 7c6b64c6c82c0f482e7924412ad61b577818dc6b Mon Sep 17 00:00:00 2001 From: Jaco Date: Sun, 10 Oct 2021 13:59:58 +0300 Subject: [PATCH] Statemint v14 types (#4045) * Statemint v14 types * CHANGELOG * v4 & v5 * Adjust --- CHANGELOG.md | 1 + packages/types-known/src/spec/statemint.ts | 53 ++++++++++++++-------- 2 files changed, 35 insertions(+), 19 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index daf3f30a08..0033e880a1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,7 @@ Changes: +- Adjust Statemint known types for version 4+ - Add Kusama & Polkadot upgrade blocks for 9100/9110 - Adjust contracts `InstantiateReturnValue` type (no rent projection after 267) diff --git a/packages/types-known/src/spec/statemint.ts b/packages/types-known/src/spec/statemint.ts index 3849fcf565..352ab52581 100644 --- a/packages/types-known/src/spec/statemint.ts +++ b/packages/types-known/src/spec/statemint.ts @@ -5,29 +5,44 @@ import type { OverrideVersionedType } from '@polkadot/types/types'; +import { mapXcm } from '@polkadot/types/interfaces/xcm/definitions'; + +const sharedTypes = { + TAssetBalance: 'u128', + ProxyType: { + _enum: [ + 'Any', + 'NonTransfer', + 'CancelProxy', + 'Assets', + 'AssetOwner', + 'AssetManager', + 'Staking' + ] + } +}; + // these are override types for Statemine, Statemint, Westmint const versioned: OverrideVersionedType[] = [ { - minmax: [0, undefined], + minmax: [0, 3], types: { - TAssetBalance: 'u128', - ProxyType: { - _enum: [ - 'Any', - 'NonTransfer', - 'CancelProxy', - 'Assets', - 'AssetOwner', - 'AssetManager', - 'Staking' - ] - }, - AssetInstance: 'AssetInstanceV0', - MultiAsset: 'MultiAssetV0', - MultiLocation: 'MultiLocationV0', - Response: 'ResponseV0', - Xcm: 'XcmV0', - XcmOrder: 'XcmOrderV0' + ...sharedTypes, + ...mapXcm('V0') + } + }, + { + minmax: [4, 4], + types: { + ...sharedTypes, + ...mapXcm('V1') + } + }, + { + // metadata V14 + minmax: [5, undefined], + types: { + ...sharedTypes } } ];