@talismn/balances 0.0.0-pr2019-20250605052811 → 0.0.0-pr2023-20250606134638
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/declarations/src/modules/SubstrateNativeModule/index.d.ts +1 -1
- package/dist/declarations/src/modules/util/buildStorageCoders.d.ts +6 -0
- package/dist/talismn-balances.cjs.dev.js +29 -98
- package/dist/talismn-balances.cjs.prod.js +29 -98
- package/dist/talismn-balances.esm.js +30 -99
- package/package.json +10 -10
@@ -2,6 +2,6 @@ import { NewBalanceModule } from "../../BalanceModule";
|
|
2
2
|
import { CustomSubNativeToken, ModuleType, SubNativeChainMeta, SubNativeModuleConfig, SubNativeToken, SubNativeTransferParams } from "./types";
|
3
3
|
export { filterBaseLocks, getLockTitle } from "./util/balanceLockTypes";
|
4
4
|
export type { BalanceLockType } from "./util/balanceLockTypes";
|
5
|
-
export type { CustomSubNativeToken, ModuleType, SubNativeBalance, SubNativeChainMeta, SubNativeModuleConfig, SubNativeToken, SubNativeTransferParams, } from "./types";
|
6
5
|
export { subNativeTokenId } from "./types";
|
6
|
+
export type { CustomSubNativeToken, ModuleType, SubNativeBalance, SubNativeChainMeta, SubNativeModuleConfig, SubNativeToken, SubNativeTransferParams, } from "./types";
|
7
7
|
export declare const SubNativeModule: NewBalanceModule<ModuleType, SubNativeToken | CustomSubNativeToken, SubNativeChainMeta, SubNativeModuleConfig, SubNativeTransferParams>;
|
@@ -18,6 +18,12 @@ export declare const buildStorageCoders: <TBalanceModule extends AnyNewBalanceMo
|
|
18
18
|
moduleType: InferModuleType<TBalanceModule>;
|
19
19
|
coders: TCoders;
|
20
20
|
}) => Map<string, { [Property in keyof TCoders]: {
|
21
|
+
args: [import("scale-ts").Encoder<any[]>, import("scale-ts").Decoder<any[]>] & {
|
22
|
+
enc: import("scale-ts").Encoder<any[]>;
|
23
|
+
dec: import("scale-ts").Decoder<any[]>;
|
24
|
+
} & {
|
25
|
+
inner: import("@talismn/scale").Codec<any>[];
|
26
|
+
};
|
21
27
|
keys: {
|
22
28
|
enc: (...args: any[]) => string;
|
23
29
|
dec: (value: string) => any[];
|
@@ -2948,11 +2948,7 @@ const buildStorageCoders = ({
|
|
2948
2948
|
const [, miniMetadata] = findChainMeta(miniMetadatas, moduleType, chain);
|
2949
2949
|
if (!miniMetadata) return [];
|
2950
2950
|
if (!miniMetadata.data) return [];
|
2951
|
-
const
|
2952
|
-
metadata,
|
2953
|
-
tag
|
2954
|
-
} = scale.decodeMetadata(miniMetadata.data);
|
2955
|
-
if (!metadata || !tag) return [];
|
2951
|
+
const metadata = scale.unifyMetadata(scale.decAnyMetadata(miniMetadata.data));
|
2956
2952
|
try {
|
2957
2953
|
const scaleBuilder = scale.getDynamicBuilder(scale.getLookupFn(metadata));
|
2958
2954
|
const builtCoders = Object.fromEntries(Object.entries(coders).flatMap(([key, moduleMethodOrFn]) => {
|
@@ -3181,25 +3177,13 @@ const SubAssetsModule = hydrate => {
|
|
3181
3177
|
if ((moduleConfig?.tokens ?? []).length < 1) return {
|
3182
3178
|
isTestnet
|
3183
3179
|
};
|
3184
|
-
const
|
3185
|
-
|
3186
|
-
metadata,
|
3187
|
-
tag
|
3188
|
-
} = scale.decodeMetadata(metadataRpc);
|
3189
|
-
if (!metadata) return {
|
3190
|
-
isTestnet
|
3191
|
-
};
|
3180
|
+
const metadataVersion = scale.getMetadataVersion(metadataRpc);
|
3181
|
+
const metadata = scale.decAnyMetadata(metadataRpc);
|
3192
3182
|
scale.compactMetadata(metadata, [{
|
3193
3183
|
pallet: "Assets",
|
3194
3184
|
items: ["Account", "Asset", "Metadata"]
|
3195
3185
|
}]);
|
3196
|
-
const miniMetadata = scale.encodeMetadata(
|
3197
|
-
tag,
|
3198
|
-
metadata
|
3199
|
-
} : {
|
3200
|
-
tag,
|
3201
|
-
metadata
|
3202
|
-
});
|
3186
|
+
const miniMetadata = scale.encodeMetadata(metadata);
|
3203
3187
|
return {
|
3204
3188
|
isTestnet,
|
3205
3189
|
miniMetadata,
|
@@ -3219,7 +3203,7 @@ const SubAssetsModule = hydrate => {
|
|
3219
3203
|
metadata
|
3220
3204
|
} = scale.decodeMetadata(miniMetadata);
|
3221
3205
|
if (metadata === undefined) return {};
|
3222
|
-
const scaleBuilder = scale.getDynamicBuilder(scale.getLookupFn(metadata));
|
3206
|
+
const scaleBuilder = scale.getDynamicBuilder(scale.getLookupFn(scale.unifyMetadata(metadata)));
|
3223
3207
|
const assetCoder = scaleBuilder.buildStorage("Assets", "Asset");
|
3224
3208
|
const metadataCoder = scaleBuilder.buildStorage("Assets", "Metadata");
|
3225
3209
|
const tokens = {};
|
@@ -3476,14 +3460,8 @@ const SubEquilibriumModule = hydrate => {
|
|
3476
3460
|
isTestnet
|
3477
3461
|
}; // default to disabled
|
3478
3462
|
|
3479
|
-
const
|
3480
|
-
|
3481
|
-
metadata,
|
3482
|
-
tag
|
3483
|
-
} = scale.decodeMetadata(metadataRpc);
|
3484
|
-
if (!metadata) return {
|
3485
|
-
isTestnet
|
3486
|
-
};
|
3463
|
+
const metadataVersion = scale.getMetadataVersion(metadataRpc);
|
3464
|
+
const metadata = scale.decAnyMetadata(metadataRpc);
|
3487
3465
|
scale.compactMetadata(metadata, [{
|
3488
3466
|
pallet: "EqAssets",
|
3489
3467
|
items: ["Assets"]
|
@@ -3491,13 +3469,7 @@ const SubEquilibriumModule = hydrate => {
|
|
3491
3469
|
pallet: "System",
|
3492
3470
|
items: ["Account"]
|
3493
3471
|
}]);
|
3494
|
-
const miniMetadata = scale.encodeMetadata(
|
3495
|
-
tag,
|
3496
|
-
metadata
|
3497
|
-
} : {
|
3498
|
-
tag,
|
3499
|
-
metadata
|
3500
|
-
});
|
3472
|
+
const miniMetadata = scale.encodeMetadata(metadata);
|
3501
3473
|
return {
|
3502
3474
|
isTestnet,
|
3503
3475
|
miniMetadata,
|
@@ -3519,7 +3491,7 @@ const SubEquilibriumModule = hydrate => {
|
|
3519
3491
|
} = scale.decodeMetadata(miniMetadata);
|
3520
3492
|
if (metadata === undefined) return {};
|
3521
3493
|
try {
|
3522
|
-
const scaleBuilder = scale.getDynamicBuilder(scale.getLookupFn(metadata));
|
3494
|
+
const scaleBuilder = scale.getDynamicBuilder(scale.getLookupFn(scale.unifyMetadata(metadata)));
|
3523
3495
|
const assetsCoder = scaleBuilder.buildStorage("EqAssets", "Assets");
|
3524
3496
|
const stateKey = assetsCoder.keys.enc();
|
3525
3497
|
|
@@ -3758,25 +3730,13 @@ const SubForeignAssetsModule = hydrate => {
|
|
3758
3730
|
if ((moduleConfig?.tokens ?? []).length < 1) return {
|
3759
3731
|
isTestnet
|
3760
3732
|
};
|
3761
|
-
const
|
3762
|
-
|
3763
|
-
metadata,
|
3764
|
-
tag
|
3765
|
-
} = scale.decodeMetadata(metadataRpc);
|
3766
|
-
if (!metadata) return {
|
3767
|
-
isTestnet
|
3768
|
-
};
|
3733
|
+
const metadataVersion = scale.getMetadataVersion(metadataRpc);
|
3734
|
+
const metadata = scale.decAnyMetadata(metadataRpc);
|
3769
3735
|
scale.compactMetadata(metadata, [{
|
3770
3736
|
pallet: "ForeignAssets",
|
3771
3737
|
items: ["Account", "Asset", "Metadata"]
|
3772
3738
|
}]);
|
3773
|
-
const miniMetadata = scale.encodeMetadata(
|
3774
|
-
tag,
|
3775
|
-
metadata
|
3776
|
-
} : {
|
3777
|
-
tag,
|
3778
|
-
metadata
|
3779
|
-
});
|
3739
|
+
const miniMetadata = scale.encodeMetadata(metadata);
|
3780
3740
|
return {
|
3781
3741
|
isTestnet,
|
3782
3742
|
miniMetadata,
|
@@ -3792,11 +3752,9 @@ const SubForeignAssetsModule = hydrate => {
|
|
3792
3752
|
} = chainMeta;
|
3793
3753
|
if (miniMetadata === undefined || metadataVersion === undefined) return {};
|
3794
3754
|
if (metadataVersion < 14) return {};
|
3795
|
-
const
|
3796
|
-
|
3797
|
-
|
3798
|
-
if (metadata === undefined) return {};
|
3799
|
-
const scaleBuilder = scale.getDynamicBuilder(scale.getLookupFn(metadata));
|
3755
|
+
const metadata = scale.decAnyMetadata(miniMetadata);
|
3756
|
+
const unifiedMetadata = scale.unifyMetadata(metadata);
|
3757
|
+
const scaleBuilder = scale.getDynamicBuilder(scale.getLookupFn(unifiedMetadata));
|
3800
3758
|
const assetCoder = scaleBuilder.buildStorage("ForeignAssets", "Asset");
|
3801
3759
|
const metadataCoder = scaleBuilder.buildStorage("ForeignAssets", "Metadata");
|
3802
3760
|
const tokens = {};
|
@@ -3902,7 +3860,7 @@ const SubForeignAssetsModule = hydrate => {
|
|
3902
3860
|
metadata
|
3903
3861
|
} = scale.decodeMetadata(metadataRpc);
|
3904
3862
|
if (metadata === undefined) throw new Error("Unable to decode metadata");
|
3905
|
-
const scaleBuilder = scale.getDynamicBuilder(scale.getLookupFn(metadata));
|
3863
|
+
const scaleBuilder = scale.getDynamicBuilder(scale.getLookupFn(scale.unifyMetadata(metadata)));
|
3906
3864
|
try {
|
3907
3865
|
const {
|
3908
3866
|
location,
|
@@ -5474,25 +5432,17 @@ const SubNativeModule = hydrate => {
|
|
5474
5432
|
//
|
5475
5433
|
// process metadata into SCALE encoders/decoders
|
5476
5434
|
//
|
5477
|
-
|
5478
|
-
const
|
5479
|
-
|
5480
|
-
metadata,
|
5481
|
-
tag
|
5482
|
-
} = scale.decodeMetadata(metadataRpc);
|
5483
|
-
if (!metadata) return {
|
5484
|
-
isTestnet,
|
5485
|
-
symbol,
|
5486
|
-
decimals
|
5487
|
-
};
|
5435
|
+
const metadataVersion = scale.getMetadataVersion(metadataRpc);
|
5436
|
+
const metadata = scale.decAnyMetadata(metadataRpc);
|
5437
|
+
const unifiedMetadata = scale.unifyMetadata(metadata);
|
5488
5438
|
|
5489
5439
|
//
|
5490
5440
|
// get runtime constants
|
5491
5441
|
//
|
5492
5442
|
|
5493
|
-
const scaleBuilder = scale.getDynamicBuilder(scale.getLookupFn(
|
5443
|
+
const scaleBuilder = scale.getDynamicBuilder(scale.getLookupFn(unifiedMetadata));
|
5494
5444
|
const getConstantValue = (palletName, constantName) => {
|
5495
|
-
const encodedValue =
|
5445
|
+
const encodedValue = unifiedMetadata.pallets.find(({
|
5496
5446
|
name
|
5497
5447
|
}) => name === palletName)?.constants.find(({
|
5498
5448
|
name
|
@@ -5541,14 +5491,8 @@ const SubNativeModule = hydrate => {
|
|
5541
5491
|
runtimeApi: "SubnetInfoRuntimeApi",
|
5542
5492
|
methods: ["get_dynamic_info"]
|
5543
5493
|
}]);
|
5544
|
-
const miniMetadata = scale.encodeMetadata(
|
5545
|
-
|
5546
|
-
metadata
|
5547
|
-
} : {
|
5548
|
-
tag,
|
5549
|
-
metadata
|
5550
|
-
});
|
5551
|
-
const hasFreezesItem = Boolean(metadata.pallets.find(({
|
5494
|
+
const miniMetadata = scale.encodeMetadata(metadata);
|
5495
|
+
const hasFreezesItem = Boolean(unifiedMetadata.pallets.find(({
|
5552
5496
|
name
|
5553
5497
|
}) => name === "Balances")?.storage?.items.find(({
|
5554
5498
|
name
|
@@ -7257,26 +7201,16 @@ const SubTokensModule = hydrate => {
|
|
7257
7201
|
if ((moduleConfig?.tokens ?? []).length < 1) return {
|
7258
7202
|
isTestnet
|
7259
7203
|
};
|
7260
|
-
|
7261
|
-
|
7262
|
-
|
7263
|
-
|
7264
|
-
} = scale.decodeMetadata(metadataRpc);
|
7265
|
-
if (!metadata) return {
|
7266
|
-
isTestnet
|
7267
|
-
};
|
7204
|
+
|
7205
|
+
// TODO understand why this is needed
|
7206
|
+
const metadataVersion = scale.getMetadataVersion(metadataRpc);
|
7207
|
+
const metadata = scale.decAnyMetadata(metadataRpc);
|
7268
7208
|
const palletId = moduleConfig?.palletId ?? defaultPalletId;
|
7269
7209
|
scale.compactMetadata(metadata, [{
|
7270
7210
|
pallet: palletId,
|
7271
7211
|
items: ["Accounts"]
|
7272
7212
|
}]);
|
7273
|
-
const miniMetadata = scale.encodeMetadata(
|
7274
|
-
tag,
|
7275
|
-
metadata
|
7276
|
-
} : {
|
7277
|
-
tag,
|
7278
|
-
metadata
|
7279
|
-
});
|
7213
|
+
const miniMetadata = scale.encodeMetadata(metadata);
|
7280
7214
|
return palletId === defaultPalletId ? {
|
7281
7215
|
isTestnet,
|
7282
7216
|
miniMetadata,
|
@@ -7372,10 +7306,7 @@ const SubTokensModule = hydrate => {
|
|
7372
7306
|
return token.onChainId;
|
7373
7307
|
}
|
7374
7308
|
})();
|
7375
|
-
const
|
7376
|
-
metadata
|
7377
|
-
} = scale.decodeMetadata(metadataRpc);
|
7378
|
-
if (metadata === undefined) throw new Error("Unable to decode metadata");
|
7309
|
+
const metadata = scale.unifyMetadata(scale.decAnyMetadata(metadataRpc));
|
7379
7310
|
const scaleBuilder = scale.getDynamicBuilder(scale.getLookupFn(metadata));
|
7380
7311
|
const tryBuildCallData = (pallet, method, args) => {
|
7381
7312
|
try {
|
@@ -2948,11 +2948,7 @@ const buildStorageCoders = ({
|
|
2948
2948
|
const [, miniMetadata] = findChainMeta(miniMetadatas, moduleType, chain);
|
2949
2949
|
if (!miniMetadata) return [];
|
2950
2950
|
if (!miniMetadata.data) return [];
|
2951
|
-
const
|
2952
|
-
metadata,
|
2953
|
-
tag
|
2954
|
-
} = scale.decodeMetadata(miniMetadata.data);
|
2955
|
-
if (!metadata || !tag) return [];
|
2951
|
+
const metadata = scale.unifyMetadata(scale.decAnyMetadata(miniMetadata.data));
|
2956
2952
|
try {
|
2957
2953
|
const scaleBuilder = scale.getDynamicBuilder(scale.getLookupFn(metadata));
|
2958
2954
|
const builtCoders = Object.fromEntries(Object.entries(coders).flatMap(([key, moduleMethodOrFn]) => {
|
@@ -3181,25 +3177,13 @@ const SubAssetsModule = hydrate => {
|
|
3181
3177
|
if ((moduleConfig?.tokens ?? []).length < 1) return {
|
3182
3178
|
isTestnet
|
3183
3179
|
};
|
3184
|
-
const
|
3185
|
-
|
3186
|
-
metadata,
|
3187
|
-
tag
|
3188
|
-
} = scale.decodeMetadata(metadataRpc);
|
3189
|
-
if (!metadata) return {
|
3190
|
-
isTestnet
|
3191
|
-
};
|
3180
|
+
const metadataVersion = scale.getMetadataVersion(metadataRpc);
|
3181
|
+
const metadata = scale.decAnyMetadata(metadataRpc);
|
3192
3182
|
scale.compactMetadata(metadata, [{
|
3193
3183
|
pallet: "Assets",
|
3194
3184
|
items: ["Account", "Asset", "Metadata"]
|
3195
3185
|
}]);
|
3196
|
-
const miniMetadata = scale.encodeMetadata(
|
3197
|
-
tag,
|
3198
|
-
metadata
|
3199
|
-
} : {
|
3200
|
-
tag,
|
3201
|
-
metadata
|
3202
|
-
});
|
3186
|
+
const miniMetadata = scale.encodeMetadata(metadata);
|
3203
3187
|
return {
|
3204
3188
|
isTestnet,
|
3205
3189
|
miniMetadata,
|
@@ -3219,7 +3203,7 @@ const SubAssetsModule = hydrate => {
|
|
3219
3203
|
metadata
|
3220
3204
|
} = scale.decodeMetadata(miniMetadata);
|
3221
3205
|
if (metadata === undefined) return {};
|
3222
|
-
const scaleBuilder = scale.getDynamicBuilder(scale.getLookupFn(metadata));
|
3206
|
+
const scaleBuilder = scale.getDynamicBuilder(scale.getLookupFn(scale.unifyMetadata(metadata)));
|
3223
3207
|
const assetCoder = scaleBuilder.buildStorage("Assets", "Asset");
|
3224
3208
|
const metadataCoder = scaleBuilder.buildStorage("Assets", "Metadata");
|
3225
3209
|
const tokens = {};
|
@@ -3476,14 +3460,8 @@ const SubEquilibriumModule = hydrate => {
|
|
3476
3460
|
isTestnet
|
3477
3461
|
}; // default to disabled
|
3478
3462
|
|
3479
|
-
const
|
3480
|
-
|
3481
|
-
metadata,
|
3482
|
-
tag
|
3483
|
-
} = scale.decodeMetadata(metadataRpc);
|
3484
|
-
if (!metadata) return {
|
3485
|
-
isTestnet
|
3486
|
-
};
|
3463
|
+
const metadataVersion = scale.getMetadataVersion(metadataRpc);
|
3464
|
+
const metadata = scale.decAnyMetadata(metadataRpc);
|
3487
3465
|
scale.compactMetadata(metadata, [{
|
3488
3466
|
pallet: "EqAssets",
|
3489
3467
|
items: ["Assets"]
|
@@ -3491,13 +3469,7 @@ const SubEquilibriumModule = hydrate => {
|
|
3491
3469
|
pallet: "System",
|
3492
3470
|
items: ["Account"]
|
3493
3471
|
}]);
|
3494
|
-
const miniMetadata = scale.encodeMetadata(
|
3495
|
-
tag,
|
3496
|
-
metadata
|
3497
|
-
} : {
|
3498
|
-
tag,
|
3499
|
-
metadata
|
3500
|
-
});
|
3472
|
+
const miniMetadata = scale.encodeMetadata(metadata);
|
3501
3473
|
return {
|
3502
3474
|
isTestnet,
|
3503
3475
|
miniMetadata,
|
@@ -3519,7 +3491,7 @@ const SubEquilibriumModule = hydrate => {
|
|
3519
3491
|
} = scale.decodeMetadata(miniMetadata);
|
3520
3492
|
if (metadata === undefined) return {};
|
3521
3493
|
try {
|
3522
|
-
const scaleBuilder = scale.getDynamicBuilder(scale.getLookupFn(metadata));
|
3494
|
+
const scaleBuilder = scale.getDynamicBuilder(scale.getLookupFn(scale.unifyMetadata(metadata)));
|
3523
3495
|
const assetsCoder = scaleBuilder.buildStorage("EqAssets", "Assets");
|
3524
3496
|
const stateKey = assetsCoder.keys.enc();
|
3525
3497
|
|
@@ -3758,25 +3730,13 @@ const SubForeignAssetsModule = hydrate => {
|
|
3758
3730
|
if ((moduleConfig?.tokens ?? []).length < 1) return {
|
3759
3731
|
isTestnet
|
3760
3732
|
};
|
3761
|
-
const
|
3762
|
-
|
3763
|
-
metadata,
|
3764
|
-
tag
|
3765
|
-
} = scale.decodeMetadata(metadataRpc);
|
3766
|
-
if (!metadata) return {
|
3767
|
-
isTestnet
|
3768
|
-
};
|
3733
|
+
const metadataVersion = scale.getMetadataVersion(metadataRpc);
|
3734
|
+
const metadata = scale.decAnyMetadata(metadataRpc);
|
3769
3735
|
scale.compactMetadata(metadata, [{
|
3770
3736
|
pallet: "ForeignAssets",
|
3771
3737
|
items: ["Account", "Asset", "Metadata"]
|
3772
3738
|
}]);
|
3773
|
-
const miniMetadata = scale.encodeMetadata(
|
3774
|
-
tag,
|
3775
|
-
metadata
|
3776
|
-
} : {
|
3777
|
-
tag,
|
3778
|
-
metadata
|
3779
|
-
});
|
3739
|
+
const miniMetadata = scale.encodeMetadata(metadata);
|
3780
3740
|
return {
|
3781
3741
|
isTestnet,
|
3782
3742
|
miniMetadata,
|
@@ -3792,11 +3752,9 @@ const SubForeignAssetsModule = hydrate => {
|
|
3792
3752
|
} = chainMeta;
|
3793
3753
|
if (miniMetadata === undefined || metadataVersion === undefined) return {};
|
3794
3754
|
if (metadataVersion < 14) return {};
|
3795
|
-
const
|
3796
|
-
|
3797
|
-
|
3798
|
-
if (metadata === undefined) return {};
|
3799
|
-
const scaleBuilder = scale.getDynamicBuilder(scale.getLookupFn(metadata));
|
3755
|
+
const metadata = scale.decAnyMetadata(miniMetadata);
|
3756
|
+
const unifiedMetadata = scale.unifyMetadata(metadata);
|
3757
|
+
const scaleBuilder = scale.getDynamicBuilder(scale.getLookupFn(unifiedMetadata));
|
3800
3758
|
const assetCoder = scaleBuilder.buildStorage("ForeignAssets", "Asset");
|
3801
3759
|
const metadataCoder = scaleBuilder.buildStorage("ForeignAssets", "Metadata");
|
3802
3760
|
const tokens = {};
|
@@ -3902,7 +3860,7 @@ const SubForeignAssetsModule = hydrate => {
|
|
3902
3860
|
metadata
|
3903
3861
|
} = scale.decodeMetadata(metadataRpc);
|
3904
3862
|
if (metadata === undefined) throw new Error("Unable to decode metadata");
|
3905
|
-
const scaleBuilder = scale.getDynamicBuilder(scale.getLookupFn(metadata));
|
3863
|
+
const scaleBuilder = scale.getDynamicBuilder(scale.getLookupFn(scale.unifyMetadata(metadata)));
|
3906
3864
|
try {
|
3907
3865
|
const {
|
3908
3866
|
location,
|
@@ -5474,25 +5432,17 @@ const SubNativeModule = hydrate => {
|
|
5474
5432
|
//
|
5475
5433
|
// process metadata into SCALE encoders/decoders
|
5476
5434
|
//
|
5477
|
-
|
5478
|
-
const
|
5479
|
-
|
5480
|
-
metadata,
|
5481
|
-
tag
|
5482
|
-
} = scale.decodeMetadata(metadataRpc);
|
5483
|
-
if (!metadata) return {
|
5484
|
-
isTestnet,
|
5485
|
-
symbol,
|
5486
|
-
decimals
|
5487
|
-
};
|
5435
|
+
const metadataVersion = scale.getMetadataVersion(metadataRpc);
|
5436
|
+
const metadata = scale.decAnyMetadata(metadataRpc);
|
5437
|
+
const unifiedMetadata = scale.unifyMetadata(metadata);
|
5488
5438
|
|
5489
5439
|
//
|
5490
5440
|
// get runtime constants
|
5491
5441
|
//
|
5492
5442
|
|
5493
|
-
const scaleBuilder = scale.getDynamicBuilder(scale.getLookupFn(
|
5443
|
+
const scaleBuilder = scale.getDynamicBuilder(scale.getLookupFn(unifiedMetadata));
|
5494
5444
|
const getConstantValue = (palletName, constantName) => {
|
5495
|
-
const encodedValue =
|
5445
|
+
const encodedValue = unifiedMetadata.pallets.find(({
|
5496
5446
|
name
|
5497
5447
|
}) => name === palletName)?.constants.find(({
|
5498
5448
|
name
|
@@ -5541,14 +5491,8 @@ const SubNativeModule = hydrate => {
|
|
5541
5491
|
runtimeApi: "SubnetInfoRuntimeApi",
|
5542
5492
|
methods: ["get_dynamic_info"]
|
5543
5493
|
}]);
|
5544
|
-
const miniMetadata = scale.encodeMetadata(
|
5545
|
-
|
5546
|
-
metadata
|
5547
|
-
} : {
|
5548
|
-
tag,
|
5549
|
-
metadata
|
5550
|
-
});
|
5551
|
-
const hasFreezesItem = Boolean(metadata.pallets.find(({
|
5494
|
+
const miniMetadata = scale.encodeMetadata(metadata);
|
5495
|
+
const hasFreezesItem = Boolean(unifiedMetadata.pallets.find(({
|
5552
5496
|
name
|
5553
5497
|
}) => name === "Balances")?.storage?.items.find(({
|
5554
5498
|
name
|
@@ -7257,26 +7201,16 @@ const SubTokensModule = hydrate => {
|
|
7257
7201
|
if ((moduleConfig?.tokens ?? []).length < 1) return {
|
7258
7202
|
isTestnet
|
7259
7203
|
};
|
7260
|
-
|
7261
|
-
|
7262
|
-
|
7263
|
-
|
7264
|
-
} = scale.decodeMetadata(metadataRpc);
|
7265
|
-
if (!metadata) return {
|
7266
|
-
isTestnet
|
7267
|
-
};
|
7204
|
+
|
7205
|
+
// TODO understand why this is needed
|
7206
|
+
const metadataVersion = scale.getMetadataVersion(metadataRpc);
|
7207
|
+
const metadata = scale.decAnyMetadata(metadataRpc);
|
7268
7208
|
const palletId = moduleConfig?.palletId ?? defaultPalletId;
|
7269
7209
|
scale.compactMetadata(metadata, [{
|
7270
7210
|
pallet: palletId,
|
7271
7211
|
items: ["Accounts"]
|
7272
7212
|
}]);
|
7273
|
-
const miniMetadata = scale.encodeMetadata(
|
7274
|
-
tag,
|
7275
|
-
metadata
|
7276
|
-
} : {
|
7277
|
-
tag,
|
7278
|
-
metadata
|
7279
|
-
});
|
7213
|
+
const miniMetadata = scale.encodeMetadata(metadata);
|
7280
7214
|
return palletId === defaultPalletId ? {
|
7281
7215
|
isTestnet,
|
7282
7216
|
miniMetadata,
|
@@ -7372,10 +7306,7 @@ const SubTokensModule = hydrate => {
|
|
7372
7306
|
return token.onChainId;
|
7373
7307
|
}
|
7374
7308
|
})();
|
7375
|
-
const
|
7376
|
-
metadata
|
7377
|
-
} = scale.decodeMetadata(metadataRpc);
|
7378
|
-
if (metadata === undefined) throw new Error("Unable to decode metadata");
|
7309
|
+
const metadata = scale.unifyMetadata(scale.decAnyMetadata(metadataRpc));
|
7379
7310
|
const scaleBuilder = scale.getDynamicBuilder(scale.getLookupFn(metadata));
|
7380
7311
|
const tryBuildCallData = (pallet, method, args) => {
|
7381
7312
|
try {
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import PromisePool$1, { PromisePool } from '@supercharge/promise-pool';
|
2
2
|
import { fetchMiniMetadatas, fetchInitMiniMetadatas, availableTokenLogoFilenames, githubTokenLogoUrl } from '@talismn/chaindata-provider';
|
3
|
-
import { toHex,
|
3
|
+
import { toHex, unifyMetadata, decAnyMetadata, getDynamicBuilder, getLookupFn, decodeMetadata, getMetadataVersion, compactMetadata, encodeMetadata, decodeScale, encodeStateKey, papiParse } from '@talismn/scale';
|
4
4
|
import { Dexie, liveQuery } from 'dexie';
|
5
5
|
import isEqual from 'lodash/isEqual';
|
6
6
|
import { from, Observable, scan, share, map, switchAll, combineLatest, mergeMap, toArray, interval, startWith, exhaustMap, pipe, filter, shareReplay, combineLatestWith, distinctUntilChanged, firstValueFrom, BehaviorSubject, debounceTime, takeUntil, switchMap, withLatestFrom, concatMap } from 'rxjs';
|
@@ -2935,11 +2935,7 @@ const buildStorageCoders = ({
|
|
2935
2935
|
const [, miniMetadata] = findChainMeta(miniMetadatas, moduleType, chain);
|
2936
2936
|
if (!miniMetadata) return [];
|
2937
2937
|
if (!miniMetadata.data) return [];
|
2938
|
-
const
|
2939
|
-
metadata,
|
2940
|
-
tag
|
2941
|
-
} = decodeMetadata(miniMetadata.data);
|
2942
|
-
if (!metadata || !tag) return [];
|
2938
|
+
const metadata = unifyMetadata(decAnyMetadata(miniMetadata.data));
|
2943
2939
|
try {
|
2944
2940
|
const scaleBuilder = getDynamicBuilder(getLookupFn(metadata));
|
2945
2941
|
const builtCoders = Object.fromEntries(Object.entries(coders).flatMap(([key, moduleMethodOrFn]) => {
|
@@ -3168,25 +3164,13 @@ const SubAssetsModule = hydrate => {
|
|
3168
3164
|
if ((moduleConfig?.tokens ?? []).length < 1) return {
|
3169
3165
|
isTestnet
|
3170
3166
|
};
|
3171
|
-
const
|
3172
|
-
|
3173
|
-
metadata,
|
3174
|
-
tag
|
3175
|
-
} = decodeMetadata(metadataRpc);
|
3176
|
-
if (!metadata) return {
|
3177
|
-
isTestnet
|
3178
|
-
};
|
3167
|
+
const metadataVersion = getMetadataVersion(metadataRpc);
|
3168
|
+
const metadata = decAnyMetadata(metadataRpc);
|
3179
3169
|
compactMetadata(metadata, [{
|
3180
3170
|
pallet: "Assets",
|
3181
3171
|
items: ["Account", "Asset", "Metadata"]
|
3182
3172
|
}]);
|
3183
|
-
const miniMetadata = encodeMetadata(
|
3184
|
-
tag,
|
3185
|
-
metadata
|
3186
|
-
} : {
|
3187
|
-
tag,
|
3188
|
-
metadata
|
3189
|
-
});
|
3173
|
+
const miniMetadata = encodeMetadata(metadata);
|
3190
3174
|
return {
|
3191
3175
|
isTestnet,
|
3192
3176
|
miniMetadata,
|
@@ -3206,7 +3190,7 @@ const SubAssetsModule = hydrate => {
|
|
3206
3190
|
metadata
|
3207
3191
|
} = decodeMetadata(miniMetadata);
|
3208
3192
|
if (metadata === undefined) return {};
|
3209
|
-
const scaleBuilder = getDynamicBuilder(getLookupFn(metadata));
|
3193
|
+
const scaleBuilder = getDynamicBuilder(getLookupFn(unifyMetadata(metadata)));
|
3210
3194
|
const assetCoder = scaleBuilder.buildStorage("Assets", "Asset");
|
3211
3195
|
const metadataCoder = scaleBuilder.buildStorage("Assets", "Metadata");
|
3212
3196
|
const tokens = {};
|
@@ -3463,14 +3447,8 @@ const SubEquilibriumModule = hydrate => {
|
|
3463
3447
|
isTestnet
|
3464
3448
|
}; // default to disabled
|
3465
3449
|
|
3466
|
-
const
|
3467
|
-
|
3468
|
-
metadata,
|
3469
|
-
tag
|
3470
|
-
} = decodeMetadata(metadataRpc);
|
3471
|
-
if (!metadata) return {
|
3472
|
-
isTestnet
|
3473
|
-
};
|
3450
|
+
const metadataVersion = getMetadataVersion(metadataRpc);
|
3451
|
+
const metadata = decAnyMetadata(metadataRpc);
|
3474
3452
|
compactMetadata(metadata, [{
|
3475
3453
|
pallet: "EqAssets",
|
3476
3454
|
items: ["Assets"]
|
@@ -3478,13 +3456,7 @@ const SubEquilibriumModule = hydrate => {
|
|
3478
3456
|
pallet: "System",
|
3479
3457
|
items: ["Account"]
|
3480
3458
|
}]);
|
3481
|
-
const miniMetadata = encodeMetadata(
|
3482
|
-
tag,
|
3483
|
-
metadata
|
3484
|
-
} : {
|
3485
|
-
tag,
|
3486
|
-
metadata
|
3487
|
-
});
|
3459
|
+
const miniMetadata = encodeMetadata(metadata);
|
3488
3460
|
return {
|
3489
3461
|
isTestnet,
|
3490
3462
|
miniMetadata,
|
@@ -3506,7 +3478,7 @@ const SubEquilibriumModule = hydrate => {
|
|
3506
3478
|
} = decodeMetadata(miniMetadata);
|
3507
3479
|
if (metadata === undefined) return {};
|
3508
3480
|
try {
|
3509
|
-
const scaleBuilder = getDynamicBuilder(getLookupFn(metadata));
|
3481
|
+
const scaleBuilder = getDynamicBuilder(getLookupFn(unifyMetadata(metadata)));
|
3510
3482
|
const assetsCoder = scaleBuilder.buildStorage("EqAssets", "Assets");
|
3511
3483
|
const stateKey = assetsCoder.keys.enc();
|
3512
3484
|
|
@@ -3745,25 +3717,13 @@ const SubForeignAssetsModule = hydrate => {
|
|
3745
3717
|
if ((moduleConfig?.tokens ?? []).length < 1) return {
|
3746
3718
|
isTestnet
|
3747
3719
|
};
|
3748
|
-
const
|
3749
|
-
|
3750
|
-
metadata,
|
3751
|
-
tag
|
3752
|
-
} = decodeMetadata(metadataRpc);
|
3753
|
-
if (!metadata) return {
|
3754
|
-
isTestnet
|
3755
|
-
};
|
3720
|
+
const metadataVersion = getMetadataVersion(metadataRpc);
|
3721
|
+
const metadata = decAnyMetadata(metadataRpc);
|
3756
3722
|
compactMetadata(metadata, [{
|
3757
3723
|
pallet: "ForeignAssets",
|
3758
3724
|
items: ["Account", "Asset", "Metadata"]
|
3759
3725
|
}]);
|
3760
|
-
const miniMetadata = encodeMetadata(
|
3761
|
-
tag,
|
3762
|
-
metadata
|
3763
|
-
} : {
|
3764
|
-
tag,
|
3765
|
-
metadata
|
3766
|
-
});
|
3726
|
+
const miniMetadata = encodeMetadata(metadata);
|
3767
3727
|
return {
|
3768
3728
|
isTestnet,
|
3769
3729
|
miniMetadata,
|
@@ -3779,11 +3739,9 @@ const SubForeignAssetsModule = hydrate => {
|
|
3779
3739
|
} = chainMeta;
|
3780
3740
|
if (miniMetadata === undefined || metadataVersion === undefined) return {};
|
3781
3741
|
if (metadataVersion < 14) return {};
|
3782
|
-
const
|
3783
|
-
|
3784
|
-
|
3785
|
-
if (metadata === undefined) return {};
|
3786
|
-
const scaleBuilder = getDynamicBuilder(getLookupFn(metadata));
|
3742
|
+
const metadata = decAnyMetadata(miniMetadata);
|
3743
|
+
const unifiedMetadata = unifyMetadata(metadata);
|
3744
|
+
const scaleBuilder = getDynamicBuilder(getLookupFn(unifiedMetadata));
|
3787
3745
|
const assetCoder = scaleBuilder.buildStorage("ForeignAssets", "Asset");
|
3788
3746
|
const metadataCoder = scaleBuilder.buildStorage("ForeignAssets", "Metadata");
|
3789
3747
|
const tokens = {};
|
@@ -3889,7 +3847,7 @@ const SubForeignAssetsModule = hydrate => {
|
|
3889
3847
|
metadata
|
3890
3848
|
} = decodeMetadata(metadataRpc);
|
3891
3849
|
if (metadata === undefined) throw new Error("Unable to decode metadata");
|
3892
|
-
const scaleBuilder = getDynamicBuilder(getLookupFn(metadata));
|
3850
|
+
const scaleBuilder = getDynamicBuilder(getLookupFn(unifyMetadata(metadata)));
|
3893
3851
|
try {
|
3894
3852
|
const {
|
3895
3853
|
location,
|
@@ -5461,25 +5419,17 @@ const SubNativeModule = hydrate => {
|
|
5461
5419
|
//
|
5462
5420
|
// process metadata into SCALE encoders/decoders
|
5463
5421
|
//
|
5464
|
-
|
5465
|
-
const
|
5466
|
-
|
5467
|
-
metadata,
|
5468
|
-
tag
|
5469
|
-
} = decodeMetadata(metadataRpc);
|
5470
|
-
if (!metadata) return {
|
5471
|
-
isTestnet,
|
5472
|
-
symbol,
|
5473
|
-
decimals
|
5474
|
-
};
|
5422
|
+
const metadataVersion = getMetadataVersion(metadataRpc);
|
5423
|
+
const metadata = decAnyMetadata(metadataRpc);
|
5424
|
+
const unifiedMetadata = unifyMetadata(metadata);
|
5475
5425
|
|
5476
5426
|
//
|
5477
5427
|
// get runtime constants
|
5478
5428
|
//
|
5479
5429
|
|
5480
|
-
const scaleBuilder = getDynamicBuilder(getLookupFn(
|
5430
|
+
const scaleBuilder = getDynamicBuilder(getLookupFn(unifiedMetadata));
|
5481
5431
|
const getConstantValue = (palletName, constantName) => {
|
5482
|
-
const encodedValue =
|
5432
|
+
const encodedValue = unifiedMetadata.pallets.find(({
|
5483
5433
|
name
|
5484
5434
|
}) => name === palletName)?.constants.find(({
|
5485
5435
|
name
|
@@ -5528,14 +5478,8 @@ const SubNativeModule = hydrate => {
|
|
5528
5478
|
runtimeApi: "SubnetInfoRuntimeApi",
|
5529
5479
|
methods: ["get_dynamic_info"]
|
5530
5480
|
}]);
|
5531
|
-
const miniMetadata = encodeMetadata(
|
5532
|
-
|
5533
|
-
metadata
|
5534
|
-
} : {
|
5535
|
-
tag,
|
5536
|
-
metadata
|
5537
|
-
});
|
5538
|
-
const hasFreezesItem = Boolean(metadata.pallets.find(({
|
5481
|
+
const miniMetadata = encodeMetadata(metadata);
|
5482
|
+
const hasFreezesItem = Boolean(unifiedMetadata.pallets.find(({
|
5539
5483
|
name
|
5540
5484
|
}) => name === "Balances")?.storage?.items.find(({
|
5541
5485
|
name
|
@@ -7244,26 +7188,16 @@ const SubTokensModule = hydrate => {
|
|
7244
7188
|
if ((moduleConfig?.tokens ?? []).length < 1) return {
|
7245
7189
|
isTestnet
|
7246
7190
|
};
|
7247
|
-
|
7248
|
-
|
7249
|
-
|
7250
|
-
|
7251
|
-
} = decodeMetadata(metadataRpc);
|
7252
|
-
if (!metadata) return {
|
7253
|
-
isTestnet
|
7254
|
-
};
|
7191
|
+
|
7192
|
+
// TODO understand why this is needed
|
7193
|
+
const metadataVersion = getMetadataVersion(metadataRpc);
|
7194
|
+
const metadata = decAnyMetadata(metadataRpc);
|
7255
7195
|
const palletId = moduleConfig?.palletId ?? defaultPalletId;
|
7256
7196
|
compactMetadata(metadata, [{
|
7257
7197
|
pallet: palletId,
|
7258
7198
|
items: ["Accounts"]
|
7259
7199
|
}]);
|
7260
|
-
const miniMetadata = encodeMetadata(
|
7261
|
-
tag,
|
7262
|
-
metadata
|
7263
|
-
} : {
|
7264
|
-
tag,
|
7265
|
-
metadata
|
7266
|
-
});
|
7200
|
+
const miniMetadata = encodeMetadata(metadata);
|
7267
7201
|
return palletId === defaultPalletId ? {
|
7268
7202
|
isTestnet,
|
7269
7203
|
miniMetadata,
|
@@ -7359,10 +7293,7 @@ const SubTokensModule = hydrate => {
|
|
7359
7293
|
return token.onChainId;
|
7360
7294
|
}
|
7361
7295
|
})();
|
7362
|
-
const
|
7363
|
-
metadata
|
7364
|
-
} = decodeMetadata(metadataRpc);
|
7365
|
-
if (metadata === undefined) throw new Error("Unable to decode metadata");
|
7296
|
+
const metadata = unifyMetadata(decAnyMetadata(metadataRpc));
|
7366
7297
|
const scaleBuilder = getDynamicBuilder(getLookupFn(metadata));
|
7367
7298
|
const tryBuildCallData = (pallet, method, args) => {
|
7368
7299
|
try {
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@talismn/balances",
|
3
|
-
"version": "0.0.0-
|
3
|
+
"version": "0.0.0-pr2023-20250606134638",
|
4
4
|
"author": "Talisman",
|
5
5
|
"homepage": "https://talisman.xyz",
|
6
6
|
"license": "GPL-3.0-or-later",
|
@@ -22,7 +22,7 @@
|
|
22
22
|
"node": ">=18"
|
23
23
|
},
|
24
24
|
"dependencies": {
|
25
|
-
"@polkadot-api/utils": "0.
|
25
|
+
"@polkadot-api/utils": "0.2.0",
|
26
26
|
"@supercharge/promise-pool": "^3.2.0",
|
27
27
|
"anylogger": "^1.0.11",
|
28
28
|
"bignumber.js": "^9.1.2",
|
@@ -30,17 +30,17 @@
|
|
30
30
|
"lodash": "4.17.21",
|
31
31
|
"lz-string": "1.5.0",
|
32
32
|
"pako": "^2.1.0",
|
33
|
-
"polkadot-api": "1.
|
33
|
+
"polkadot-api": "1.13.1",
|
34
34
|
"rxjs": "^7.8.1",
|
35
35
|
"scale-ts": "^1.6.1",
|
36
36
|
"viem": "^2.27.3",
|
37
|
-
"@talismn/chain-connector": "0.0.0-
|
38
|
-
"@talismn/chain-connector-evm": "0.0.0-
|
39
|
-
"@talismn/chaindata-provider": "0.0.0-
|
40
|
-
"@talismn/
|
41
|
-
"@talismn/
|
42
|
-
"@talismn/token-rates": "0.0.0-
|
43
|
-
"@talismn/util": "0.0.0-
|
37
|
+
"@talismn/chain-connector": "0.0.0-pr2023-20250606134638",
|
38
|
+
"@talismn/chain-connector-evm": "0.0.0-pr2023-20250606134638",
|
39
|
+
"@talismn/chaindata-provider": "0.0.0-pr2023-20250606134638",
|
40
|
+
"@talismn/sapi": "0.0.0-pr2023-20250606134638",
|
41
|
+
"@talismn/scale": "0.0.0-pr2023-20250606134638",
|
42
|
+
"@talismn/token-rates": "0.0.0-pr2023-20250606134638",
|
43
|
+
"@talismn/util": "0.0.0-pr2023-20250606134638"
|
44
44
|
},
|
45
45
|
"devDependencies": {
|
46
46
|
"@polkadot/api-contract": "16.1.2",
|