@polkadot-api/substrate-bindings 1.0.0-canary.f545a12 → 1.0.0-canary.f7f4b6e
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/esm/codecs/blockHeader.mjs +6 -6
- package/dist/esm/codecs/blockHeader.mjs.map +1 -1
- package/dist/esm/codecs/metadata/pallets.mjs +2 -2
- package/dist/esm/codecs/metadata/pallets.mjs.map +1 -1
- package/dist/esm/codecs/metadata/unified.mjs +34 -3
- package/dist/esm/codecs/metadata/unified.mjs.map +1 -1
- package/dist/esm/codecs/metadata/v14.mjs +2 -2
- package/dist/esm/codecs/metadata/v14.mjs.map +1 -1
- package/dist/esm/codecs/metadata/v15.mjs +2 -2
- package/dist/esm/codecs/metadata/v15.mjs.map +1 -1
- package/dist/esm/codecs/scale/Binary.mjs +22 -88
- package/dist/esm/codecs/scale/Binary.mjs.map +1 -1
- package/dist/esm/codecs/scale/Hex.mjs +5 -5
- package/dist/esm/codecs/scale/Hex.mjs.map +1 -1
- package/dist/esm/codecs/scale/bitSequence.mjs +2 -2
- package/dist/esm/codecs/scale/bitSequence.mjs.map +1 -1
- package/dist/esm/codecs/scale/fixed-str.mjs +5 -5
- package/dist/esm/codecs/scale/fixed-str.mjs.map +1 -1
- package/dist/esm/hashes/blake2.mjs +2 -2
- package/dist/esm/hashes/blake2.mjs.map +1 -1
- package/dist/esm/index.mjs +1 -1
- package/dist/esm/utils/multisig.mjs +1 -1
- package/dist/esm/utils/multisig.mjs.map +1 -1
- package/dist/index.d.ts +21 -38
- package/dist/index.js +54 -91
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
|
@@ -11,11 +11,11 @@ import './scale/ethAccount.mjs';
|
|
|
11
11
|
import { Struct, Vector } from './scale/shaped.mjs';
|
|
12
12
|
import './scale/BitSeq.mjs';
|
|
13
13
|
|
|
14
|
-
const textEncoder = new TextEncoder();
|
|
14
|
+
const textEncoder$1 = new TextEncoder();
|
|
15
15
|
const textDecoder = new TextDecoder();
|
|
16
16
|
const fourChars = enhanceCodec(
|
|
17
17
|
Bytes(4),
|
|
18
|
-
textEncoder.encode.bind(textEncoder),
|
|
18
|
+
textEncoder$1.encode.bind(textEncoder$1),
|
|
19
19
|
textDecoder.decode.bind(textDecoder)
|
|
20
20
|
);
|
|
21
21
|
const diggestVal = Struct({
|
|
@@ -32,12 +32,12 @@ const diggest = Variant(
|
|
|
32
32
|
},
|
|
33
33
|
[0, 4, 5, 6, 8]
|
|
34
34
|
);
|
|
35
|
-
const hex32 = Hex(32);
|
|
35
|
+
const hex32$1 = Hex(32);
|
|
36
36
|
const blockHeader = Struct({
|
|
37
|
-
parentHash: hex32,
|
|
37
|
+
parentHash: hex32$1,
|
|
38
38
|
number: compactNumber,
|
|
39
|
-
stateRoot: hex32,
|
|
40
|
-
extrinsicRoot: hex32,
|
|
39
|
+
stateRoot: hex32$1,
|
|
40
|
+
extrinsicRoot: hex32$1,
|
|
41
41
|
digests: Vector(diggest)
|
|
42
42
|
});
|
|
43
43
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blockHeader.mjs","sources":["../../../src/codecs/blockHeader.ts"],"sourcesContent":["import {\n Bytes,\n CodecType,\n Struct,\n Vector,\n _void,\n enhanceCodec,\n Hex,\n Variant,\n compactNumber,\n} from \"./scale\"\n\nconst textEncoder = new TextEncoder()\nconst textDecoder = new TextDecoder()\n\nconst fourChars = enhanceCodec(\n Bytes(4),\n textEncoder.encode.bind(textEncoder),\n textDecoder.decode.bind(textDecoder),\n)\n\nconst diggestVal = Struct({\n engine: fourChars,\n payload: Hex(),\n})\n\nconst diggest = Variant(\n {\n other: Bytes(),\n consensus: diggestVal,\n seal: diggestVal,\n preRuntime: diggestVal,\n runtimeUpdated: _void,\n },\n [0, 4, 5, 6, 8],\n)\n\nconst hex32 = Hex(32)\nexport const blockHeader = Struct({\n parentHash: hex32,\n number: compactNumber,\n stateRoot: hex32,\n extrinsicRoot: hex32,\n digests: Vector(diggest),\n})\n\nexport type BlockHeader = CodecType<typeof blockHeader>\n"],"names":[],"mappings":";;;;;;;;;;;;;AAYA,
|
|
1
|
+
{"version":3,"file":"blockHeader.mjs","sources":["../../../src/codecs/blockHeader.ts"],"sourcesContent":["import {\n Bytes,\n CodecType,\n Struct,\n Vector,\n _void,\n enhanceCodec,\n Hex,\n Variant,\n compactNumber,\n} from \"./scale\"\n\nconst textEncoder = new TextEncoder()\nconst textDecoder = new TextDecoder()\n\nconst fourChars = enhanceCodec(\n Bytes(4),\n textEncoder.encode.bind(textEncoder),\n textDecoder.decode.bind(textDecoder),\n)\n\nconst diggestVal = Struct({\n engine: fourChars,\n payload: Hex(),\n})\n\nconst diggest = Variant(\n {\n other: Bytes(),\n consensus: diggestVal,\n seal: diggestVal,\n preRuntime: diggestVal,\n runtimeUpdated: _void,\n },\n [0, 4, 5, 6, 8],\n)\n\nconst hex32 = Hex(32)\nexport const blockHeader = Struct({\n parentHash: hex32,\n number: compactNumber,\n stateRoot: hex32,\n extrinsicRoot: hex32,\n digests: Vector(diggest),\n})\n\nexport type BlockHeader = CodecType<typeof blockHeader>\n"],"names":["textEncoder","hex32"],"mappings":";;;;;;;;;;;;;AAYA,MAAMA,aAAA,GAAc,IAAI,WAAA,EAAY;AACpC,MAAM,WAAA,GAAc,IAAI,WAAA,EAAY;AAEpC,MAAM,SAAA,GAAY,YAAA;AAAA,EAChB,MAAM,CAAC,CAAA;AAAA,EACPA,aAAA,CAAY,MAAA,CAAO,IAAA,CAAKA,aAAW,CAAA;AAAA,EACnC,WAAA,CAAY,MAAA,CAAO,IAAA,CAAK,WAAW;AACrC,CAAA;AAEA,MAAM,aAAa,MAAA,CAAO;AAAA,EACxB,MAAA,EAAQ,SAAA;AAAA,EACR,SAAS,GAAA;AACX,CAAC,CAAA;AAED,MAAM,OAAA,GAAU,OAAA;AAAA,EACd;AAAA,IACE,OAAO,KAAA,EAAM;AAAA,IACb,SAAA,EAAW,UAAA;AAAA,IACX,IAAA,EAAM,UAAA;AAAA,IACN,UAAA,EAAY,UAAA;AAAA,IACZ,cAAA,EAAgB;AAAA,GAClB;AAAA,EACA,CAAC,CAAA,EAAG,CAAA,EAAG,CAAA,EAAG,GAAG,CAAC;AAChB,CAAA;AAEA,MAAMC,OAAA,GAAQ,IAAI,EAAE,CAAA;AACb,MAAM,cAAc,MAAA,CAAO;AAAA,EAChC,UAAA,EAAYA,OAAA;AAAA,EACZ,MAAA,EAAQ,aAAA;AAAA,EACR,SAAA,EAAWA,OAAA;AAAA,EACX,aAAA,EAAeA,OAAA;AAAA,EACf,OAAA,EAAS,OAAO,OAAO;AACzB,CAAC;;;;"}
|
|
@@ -23,9 +23,9 @@ const hashType = Enum({
|
|
|
23
23
|
Twox64Concat: _void,
|
|
24
24
|
Identity: _void
|
|
25
25
|
});
|
|
26
|
-
const hashers = Vector(hashType);
|
|
26
|
+
const hashers$1 = Vector(hashType);
|
|
27
27
|
const storageMap = Struct({
|
|
28
|
-
hashers,
|
|
28
|
+
hashers: hashers$1,
|
|
29
29
|
key: compactNumber,
|
|
30
30
|
value: compactNumber
|
|
31
31
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pallets.mjs","sources":["../../../../src/codecs/metadata/pallets.ts"],"sourcesContent":["import { Hex, compactNumber } from \"@/codecs/scale\"\nimport { Struct, Option, Vector, u8, str, Enum, _void } from \"scale-ts\"\nimport { docs } from \"./docs\"\nimport { itemDeprecation, variantDeprecation } from \"./deprecation\"\nimport { viewFunction } from \"./runtime-api\"\n\nconst hashType = Enum({\n Blake2128: _void,\n Blake2256: _void,\n Blake2128Concat: _void,\n Twox128: _void,\n Twox256: _void,\n Twox64Concat: _void,\n Identity: _void,\n})\n\nconst hashers = Vector(hashType)\n\nexport const storageMap = Struct({\n hashers,\n key: compactNumber,\n value: compactNumber,\n})\n\nconst storageItem = {\n name: str,\n modifier: u8,\n type: Enum({\n plain: compactNumber,\n map: storageMap,\n }),\n fallback: Hex(),\n docs,\n}\n\nconst enumRefV14 = Option(compactNumber)\n\nexport const v14Pallet = {\n name: str,\n storage: Option(\n Struct({\n prefix: str,\n items: Vector(Struct(storageItem)),\n }),\n ),\n calls: enumRefV14,\n events: enumRefV14,\n constants: Vector(\n Struct({\n name: str,\n type: compactNumber,\n value: Hex(),\n docs,\n }),\n ),\n errors: enumRefV14,\n index: u8,\n}\n\nexport const v15Pallet = {\n ...v14Pallet,\n docs,\n}\n\nconst enumRef = Option(\n Struct({ type: compactNumber, deprecationInfo: variantDeprecation }),\n)\n\nexport const v16Pallet = {\n name: str,\n storage: Option(\n Struct({\n prefix: str,\n items: Vector(\n Struct({\n ...storageItem,\n deprecationInfo: itemDeprecation,\n }),\n ),\n }),\n ),\n calls: enumRef,\n events: enumRef,\n constants: Vector(\n Struct({\n name: str,\n type: compactNumber,\n value: Hex(),\n docs,\n deprecationInfo: itemDeprecation,\n }),\n ),\n errors: enumRef,\n associatedTypes: Vector(\n Struct({\n name: str,\n type: compactNumber,\n docs,\n }),\n ),\n viewFns: Vector(viewFunction),\n index: u8,\n docs,\n deprecationInfo: itemDeprecation,\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAMA,MAAM,WAAW,IAAA,CAAK;AAAA,EACpB,SAAA,EAAW,KAAA;AAAA,EACX,SAAA,EAAW,KAAA;AAAA,EACX,eAAA,EAAiB,KAAA;AAAA,EACjB,OAAA,EAAS,KAAA;AAAA,EACT,OAAA,EAAS,KAAA;AAAA,EACT,YAAA,EAAc,KAAA;AAAA,EACd,QAAA,EAAU;AACZ,CAAC,CAAA;AAED,
|
|
1
|
+
{"version":3,"file":"pallets.mjs","sources":["../../../../src/codecs/metadata/pallets.ts"],"sourcesContent":["import { Hex, compactNumber } from \"@/codecs/scale\"\nimport { Struct, Option, Vector, u8, str, Enum, _void } from \"scale-ts\"\nimport { docs } from \"./docs\"\nimport { itemDeprecation, variantDeprecation } from \"./deprecation\"\nimport { viewFunction } from \"./runtime-api\"\n\nconst hashType = Enum({\n Blake2128: _void,\n Blake2256: _void,\n Blake2128Concat: _void,\n Twox128: _void,\n Twox256: _void,\n Twox64Concat: _void,\n Identity: _void,\n})\n\nconst hashers = Vector(hashType)\n\nexport const storageMap = Struct({\n hashers,\n key: compactNumber,\n value: compactNumber,\n})\n\nconst storageItem = {\n name: str,\n modifier: u8,\n type: Enum({\n plain: compactNumber,\n map: storageMap,\n }),\n fallback: Hex(),\n docs,\n}\n\nconst enumRefV14 = Option(compactNumber)\n\nexport const v14Pallet = {\n name: str,\n storage: Option(\n Struct({\n prefix: str,\n items: Vector(Struct(storageItem)),\n }),\n ),\n calls: enumRefV14,\n events: enumRefV14,\n constants: Vector(\n Struct({\n name: str,\n type: compactNumber,\n value: Hex(),\n docs,\n }),\n ),\n errors: enumRefV14,\n index: u8,\n}\n\nexport const v15Pallet = {\n ...v14Pallet,\n docs,\n}\n\nconst enumRef = Option(\n Struct({ type: compactNumber, deprecationInfo: variantDeprecation }),\n)\n\nexport const v16Pallet = {\n name: str,\n storage: Option(\n Struct({\n prefix: str,\n items: Vector(\n Struct({\n ...storageItem,\n deprecationInfo: itemDeprecation,\n }),\n ),\n }),\n ),\n calls: enumRef,\n events: enumRef,\n constants: Vector(\n Struct({\n name: str,\n type: compactNumber,\n value: Hex(),\n docs,\n deprecationInfo: itemDeprecation,\n }),\n ),\n errors: enumRef,\n associatedTypes: Vector(\n Struct({\n name: str,\n type: compactNumber,\n docs,\n }),\n ),\n viewFns: Vector(viewFunction),\n index: u8,\n docs,\n deprecationInfo: itemDeprecation,\n}\n"],"names":["hashers"],"mappings":";;;;;;;;;;;;;;;;AAMA,MAAM,WAAW,IAAA,CAAK;AAAA,EACpB,SAAA,EAAW,KAAA;AAAA,EACX,SAAA,EAAW,KAAA;AAAA,EACX,eAAA,EAAiB,KAAA;AAAA,EACjB,OAAA,EAAS,KAAA;AAAA,EACT,OAAA,EAAS,KAAA;AAAA,EACT,YAAA,EAAc,KAAA;AAAA,EACd,QAAA,EAAU;AACZ,CAAC,CAAA;AAED,MAAMA,SAAA,GAAU,OAAO,QAAQ,CAAA;AAExB,MAAM,aAAa,MAAA,CAAO;AAAA,WAC/BA,SAAA;AAAA,EACA,GAAA,EAAK,aAAA;AAAA,EACL,KAAA,EAAO;AACT,CAAC;AAED,MAAM,WAAA,GAAc;AAAA,EAClB,IAAA,EAAM,GAAA;AAAA,EACN,QAAA,EAAU,EAAA;AAAA,EACV,MAAM,IAAA,CAAK;AAAA,IACT,KAAA,EAAO,aAAA;AAAA,IACP,GAAA,EAAK;AAAA,GACN,CAAA;AAAA,EACD,UAAU,GAAA,EAAI;AAAA,EACd;AACF,CAAA;AAEA,MAAM,UAAA,GAAa,OAAO,aAAa,CAAA;AAEhC,MAAM,SAAA,GAAY;AAAA,EACvB,IAAA,EAAM,GAAA;AAAA,EACN,OAAA,EAAS,MAAA;AAAA,IACP,MAAA,CAAO;AAAA,MACL,MAAA,EAAQ,GAAA;AAAA,MACR,KAAA,EAAO,MAAA,CAAO,MAAA,CAAO,WAAW,CAAC;AAAA,KAClC;AAAA,GACH;AAAA,EACA,KAAA,EAAO,UAAA;AAAA,EACP,MAAA,EAAQ,UAAA;AAAA,EACR,SAAA,EAAW,MAAA;AAAA,IACT,MAAA,CAAO;AAAA,MACL,IAAA,EAAM,GAAA;AAAA,MACN,IAAA,EAAM,aAAA;AAAA,MACN,OAAO,GAAA,EAAI;AAAA,MACX;AAAA,KACD;AAAA,GACH;AAAA,EACA,MAAA,EAAQ,UAAA;AAAA,EACR,KAAA,EAAO;AACT;AAEO,MAAM,SAAA,GAAY;AAAA,EACvB,GAAG,SAAA;AAAA,EACH;AACF;AAEA,MAAM,OAAA,GAAU,MAAA;AAAA,EACd,OAAO,EAAE,IAAA,EAAM,aAAA,EAAe,eAAA,EAAiB,oBAAoB;AACrE,CAAA;AAEO,MAAM,SAAA,GAAY;AAAA,EACvB,IAAA,EAAM,GAAA;AAAA,EACN,OAAA,EAAS,MAAA;AAAA,IACP,MAAA,CAAO;AAAA,MACL,MAAA,EAAQ,GAAA;AAAA,MACR,KAAA,EAAO,MAAA;AAAA,QACL,MAAA,CAAO;AAAA,UACL,GAAG,WAAA;AAAA,UACH,eAAA,EAAiB;AAAA,SAClB;AAAA;AACH,KACD;AAAA,GACH;AAAA,EACA,KAAA,EAAO,OAAA;AAAA,EACP,MAAA,EAAQ,OAAA;AAAA,EACR,SAAA,EAAW,MAAA;AAAA,IACT,MAAA,CAAO;AAAA,MACL,IAAA,EAAM,GAAA;AAAA,MACN,IAAA,EAAM,aAAA;AAAA,MACN,OAAO,GAAA,EAAI;AAAA,MACX,IAAA;AAAA,MACA,eAAA,EAAiB;AAAA,KAClB;AAAA,GACH;AAAA,EACA,MAAA,EAAQ,OAAA;AAAA,EACR,eAAA,EAAiB,MAAA;AAAA,IACf,MAAA,CAAO;AAAA,MACL,IAAA,EAAM,GAAA;AAAA,MACN,IAAA,EAAM,aAAA;AAAA,MACN;AAAA,KACD;AAAA,GACH;AAAA,EACA,OAAA,EAAS,OAAO,YAAY,CAAA;AAAA,EAC5B,KAAA,EAAO,EAAA;AAAA,EACP,IAAA;AAAA,EACA,eAAA,EAAiB;AACnB;;;;"}
|
|
@@ -6,7 +6,30 @@ const unifyMetadata = (metadata) => {
|
|
|
6
6
|
metadata = metadata.value;
|
|
7
7
|
}
|
|
8
8
|
if ("signedExtensionsByVersion" in metadata.extrinsic) {
|
|
9
|
-
|
|
9
|
+
const {
|
|
10
|
+
extrinsic: {
|
|
11
|
+
signedExtensions,
|
|
12
|
+
signedExtensionsByVersion,
|
|
13
|
+
...restExtrinsic
|
|
14
|
+
},
|
|
15
|
+
...rest
|
|
16
|
+
} = metadata;
|
|
17
|
+
if (!signedExtensionsByVersion.some(([v]) => v === 0)) {
|
|
18
|
+
throw new Error("Extension version 0 not found");
|
|
19
|
+
}
|
|
20
|
+
return {
|
|
21
|
+
version: 16,
|
|
22
|
+
extrinsic: {
|
|
23
|
+
...restExtrinsic,
|
|
24
|
+
signedExtensions: Object.fromEntries(
|
|
25
|
+
signedExtensionsByVersion.map(([v, idxs]) => [
|
|
26
|
+
v,
|
|
27
|
+
idxs.map((extIdx) => signedExtensions[extIdx])
|
|
28
|
+
])
|
|
29
|
+
)
|
|
30
|
+
},
|
|
31
|
+
...rest
|
|
32
|
+
};
|
|
10
33
|
}
|
|
11
34
|
if ("custom" in metadata) {
|
|
12
35
|
const { lookup: lookup2, extrinsic: extrinsic2, custom, apis, pallets: pallets2, outerEnums } = metadata;
|
|
@@ -21,7 +44,11 @@ const unifyMetadata = (metadata) => {
|
|
|
21
44
|
viewFns: [],
|
|
22
45
|
associatedTypes: []
|
|
23
46
|
})),
|
|
24
|
-
extrinsic: {
|
|
47
|
+
extrinsic: {
|
|
48
|
+
...extrinsic2,
|
|
49
|
+
signedExtensions: { 0: extrinsic2.signedExtensions },
|
|
50
|
+
version: [extrinsic2.version]
|
|
51
|
+
},
|
|
25
52
|
apis,
|
|
26
53
|
outerEnums,
|
|
27
54
|
custom
|
|
@@ -39,7 +66,11 @@ const unifyMetadata = (metadata) => {
|
|
|
39
66
|
viewFns: [],
|
|
40
67
|
associatedTypes: []
|
|
41
68
|
})),
|
|
42
|
-
extrinsic: {
|
|
69
|
+
extrinsic: {
|
|
70
|
+
...extrinsic,
|
|
71
|
+
signedExtensions: { 0: extrinsic.signedExtensions },
|
|
72
|
+
version: [extrinsic.version]
|
|
73
|
+
},
|
|
43
74
|
apis: []
|
|
44
75
|
};
|
|
45
76
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unified.mjs","sources":["../../../../src/codecs/metadata/unified.ts"],"sourcesContent":["import { CodecType } from \"scale-ts\"\nimport { V14Lookup } from \"./lookup\"\nimport { storageMap } from \"./pallets\"\nimport { HexString } from \"../scale\"\nimport { itemDeprecation, variantDeprecation } from \"./deprecation\"\nimport { viewFunction } from \"./runtime-api\"\nimport { V14 } from \"./v14\"\nimport { V16 } from \"./v16\"\nimport { V15 } from \"./v15\"\nimport { Metadata } from \"./metadata\"\n\ntype EnumRef<T> =\n | ({\n type: number\n } & (T extends 16\n ? { deprecationInfo: CodecType<typeof variantDeprecation> }\n : {}))\n | undefined\n\ntype DeprecationInfo<T> = T extends 16\n ? { deprecationInfo: CodecType<typeof itemDeprecation> }\n : {}\n\nexport type UnifiedMetadata<T extends 14 | 15 | 16 = 14 | 15 | 16> = {\n version: T\n lookup: V14Lookup\n pallets: Array<\n {\n name: string\n storage:\n | {\n prefix: string\n items: Array<\n {\n name: string\n modifier: number\n type:\n | { tag: \"plain\"; value: number }\n | { tag: \"map\"; value: CodecType<typeof storageMap> }\n fallback: HexString\n docs: string[]\n } & DeprecationInfo<T>\n >\n }\n | undefined\n calls: EnumRef<T>\n events: EnumRef<T>\n constants: Array<\n {\n name: string\n type: number\n value: HexString\n docs: string[]\n } & DeprecationInfo<T>\n >\n errors: EnumRef<T>\n associatedTypes: Array<{\n name: string\n type: number\n docs: string[]\n }>\n viewFns: Array<CodecType<typeof viewFunction>>\n index: number\n docs: string[]\n } & DeprecationInfo<T>\n >\n extrinsic: {\n version: number[]\n signedExtensions: Array<{\n
|
|
1
|
+
{"version":3,"file":"unified.mjs","sources":["../../../../src/codecs/metadata/unified.ts"],"sourcesContent":["import { CodecType } from \"scale-ts\"\nimport { V14Lookup } from \"./lookup\"\nimport { storageMap } from \"./pallets\"\nimport { HexString } from \"../scale\"\nimport { itemDeprecation, variantDeprecation } from \"./deprecation\"\nimport { viewFunction } from \"./runtime-api\"\nimport { V14 } from \"./v14\"\nimport { V16 } from \"./v16\"\nimport { V15 } from \"./v15\"\nimport { Metadata } from \"./metadata\"\n\ntype EnumRef<T> =\n | ({\n type: number\n } & (T extends 16\n ? { deprecationInfo: CodecType<typeof variantDeprecation> }\n : {}))\n | undefined\n\ntype DeprecationInfo<T> = T extends 16\n ? { deprecationInfo: CodecType<typeof itemDeprecation> }\n : {}\n\nexport type UnifiedMetadata<T extends 14 | 15 | 16 = 14 | 15 | 16> = {\n version: T\n lookup: V14Lookup\n pallets: Array<\n {\n name: string\n storage:\n | {\n prefix: string\n items: Array<\n {\n name: string\n modifier: number\n type:\n | { tag: \"plain\"; value: number }\n | { tag: \"map\"; value: CodecType<typeof storageMap> }\n fallback: HexString\n docs: string[]\n } & DeprecationInfo<T>\n >\n }\n | undefined\n calls: EnumRef<T>\n events: EnumRef<T>\n constants: Array<\n {\n name: string\n type: number\n value: HexString\n docs: string[]\n } & DeprecationInfo<T>\n >\n errors: EnumRef<T>\n associatedTypes: Array<{\n name: string\n type: number\n docs: string[]\n }>\n viewFns: Array<CodecType<typeof viewFunction>>\n index: number\n docs: string[]\n } & DeprecationInfo<T>\n >\n extrinsic: {\n version: number[]\n signedExtensions: Record<\n number,\n Array<{\n identifier: string\n type: number\n additionalSigned: number\n }>\n >\n } & (T extends 14\n ? {\n type: number\n }\n : { address: number; call: number; signature: number })\n apis: Array<\n {\n name: string\n methods: Array<\n {\n name: string\n inputs: Array<{ name: string; type: number }>\n output: number\n docs: string[]\n } & DeprecationInfo<T>\n >\n docs: string[]\n } & (T extends 16 ? { version: number } : {}) &\n DeprecationInfo<T>\n >\n} & (T extends 14\n ? {}\n : {\n outerEnums: { call: number; event: number; error: number }\n custom: Array<[string, { type: number; value: HexString }]>\n })\n\nexport const unifyMetadata = (\n metadata: Metadata | Metadata[\"metadata\"] | V14 | V15 | V16,\n): UnifiedMetadata => {\n // complete metadata\n if (\"magicNumber\" in metadata) metadata = metadata.metadata\n if (\"tag\" in metadata) {\n if (\n metadata.tag !== \"v14\" &&\n metadata.tag !== \"v15\" &&\n metadata.tag !== \"v16\"\n )\n throw new Error(\"Only metadata 14, 15, and 16 are supported\")\n metadata = metadata.value\n }\n\n // v16\n if (\"signedExtensionsByVersion\" in metadata.extrinsic) {\n const {\n extrinsic: {\n signedExtensions,\n signedExtensionsByVersion,\n ...restExtrinsic\n },\n ...rest\n } = metadata as V16\n if (!signedExtensionsByVersion.some(([v]) => v === 0)) {\n throw new Error(\"Extension version 0 not found\")\n }\n return {\n version: 16,\n extrinsic: {\n ...restExtrinsic,\n signedExtensions: Object.fromEntries(\n signedExtensionsByVersion.map(([v, idxs]) => [\n v,\n idxs.map((extIdx) => signedExtensions[extIdx]),\n ]),\n ),\n },\n ...rest,\n }\n }\n // v15\n if (\"custom\" in metadata) {\n const { lookup, extrinsic, custom, apis, pallets, outerEnums } =\n metadata as V15\n\n return {\n version: 15,\n lookup,\n pallets: pallets.map((p): UnifiedMetadata<15>[\"pallets\"][number] => ({\n ...p,\n calls: p.calls != null ? { type: p.calls } : undefined,\n events: p.events != null ? { type: p.events } : undefined,\n errors: p.errors != null ? { type: p.errors } : undefined,\n viewFns: [],\n associatedTypes: [],\n })),\n extrinsic: {\n ...extrinsic,\n signedExtensions: { 0: extrinsic.signedExtensions },\n version: [extrinsic.version],\n },\n apis,\n outerEnums,\n custom,\n }\n }\n // fallback, v14\n const { lookup, extrinsic, pallets } = metadata as V14\n return {\n version: 14,\n lookup,\n pallets: pallets.map((p): UnifiedMetadata<14>[\"pallets\"][number] => ({\n ...p,\n calls: p.calls != null ? { type: p.calls } : undefined,\n events: p.events != null ? { type: p.events } : undefined,\n errors: p.errors != null ? { type: p.errors } : undefined,\n viewFns: [],\n associatedTypes: [],\n })),\n extrinsic: {\n ...extrinsic,\n signedExtensions: { 0: extrinsic.signedExtensions },\n version: [extrinsic.version],\n },\n apis: [],\n }\n}\n"],"names":["lookup","extrinsic","pallets"],"mappings":"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"}
|
|
@@ -18,7 +18,7 @@ const Always = (value) => createCodec(
|
|
|
18
18
|
() => empty,
|
|
19
19
|
() => value
|
|
20
20
|
);
|
|
21
|
-
const extrinsic = Struct({
|
|
21
|
+
const extrinsic$2 = Struct({
|
|
22
22
|
type: compactNumber,
|
|
23
23
|
version: u8,
|
|
24
24
|
signedExtensions: Vector(
|
|
@@ -32,7 +32,7 @@ const extrinsic = Struct({
|
|
|
32
32
|
const v14 = Struct({
|
|
33
33
|
lookup,
|
|
34
34
|
pallets: Vector(Struct({ ...v14Pallet, docs: Always([]) })),
|
|
35
|
-
extrinsic,
|
|
35
|
+
extrinsic: extrinsic$2,
|
|
36
36
|
type: compactNumber,
|
|
37
37
|
apis: Always([])
|
|
38
38
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"v14.mjs","sources":["../../../../src/codecs/metadata/v14.ts"],"sourcesContent":["import { CodecType, Struct, Vector, createCodec, str, u8 } from \"scale-ts\"\nimport { lookup } from \"./lookup\"\nimport { compactNumber } from \"../scale\"\nimport { v14Pallet } from \"./pallets\"\nimport { runtimeApi } from \"./runtime-api\"\n\nconst empty = new Uint8Array()\nconst Always = <T>(value: T) =>\n createCodec<T>(\n () => empty,\n () => value,\n )\n\nconst extrinsic = Struct({\n type: compactNumber,\n version: u8,\n signedExtensions: Vector(\n Struct({\n identifier: str,\n type: compactNumber,\n additionalSigned: compactNumber,\n }),\n ),\n})\n\nexport const v14 = Struct({\n lookup,\n pallets: Vector(Struct({ ...v14Pallet, docs: Always([] as string[]) })),\n extrinsic,\n type: compactNumber,\n apis: Always([] as Array<CodecType<typeof runtimeApi>>),\n})\nexport type V14 = CodecType<typeof v14>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;AAMA,MAAM,KAAA,GAAQ,IAAI,UAAA,EAAW;AAC7B,MAAM,MAAA,GAAS,CAAI,KAAA,KACjB,WAAA;AAAA,EACE,MAAM,KAAA;AAAA,EACN,MAAM;AACR,CAAA;AAEF,
|
|
1
|
+
{"version":3,"file":"v14.mjs","sources":["../../../../src/codecs/metadata/v14.ts"],"sourcesContent":["import { CodecType, Struct, Vector, createCodec, str, u8 } from \"scale-ts\"\nimport { lookup } from \"./lookup\"\nimport { compactNumber } from \"../scale\"\nimport { v14Pallet } from \"./pallets\"\nimport { runtimeApi } from \"./runtime-api\"\n\nconst empty = new Uint8Array()\nconst Always = <T>(value: T) =>\n createCodec<T>(\n () => empty,\n () => value,\n )\n\nconst extrinsic = Struct({\n type: compactNumber,\n version: u8,\n signedExtensions: Vector(\n Struct({\n identifier: str,\n type: compactNumber,\n additionalSigned: compactNumber,\n }),\n ),\n})\n\nexport const v14 = Struct({\n lookup,\n pallets: Vector(Struct({ ...v14Pallet, docs: Always([] as string[]) })),\n extrinsic,\n type: compactNumber,\n apis: Always([] as Array<CodecType<typeof runtimeApi>>),\n})\nexport type V14 = CodecType<typeof v14>\n"],"names":["extrinsic"],"mappings":";;;;;;;;;;;;;;;AAMA,MAAM,KAAA,GAAQ,IAAI,UAAA,EAAW;AAC7B,MAAM,MAAA,GAAS,CAAI,KAAA,KACjB,WAAA;AAAA,EACE,MAAM,KAAA;AAAA,EACN,MAAM;AACR,CAAA;AAEF,MAAMA,cAAY,MAAA,CAAO;AAAA,EACvB,IAAA,EAAM,aAAA;AAAA,EACN,OAAA,EAAS,EAAA;AAAA,EACT,gBAAA,EAAkB,MAAA;AAAA,IAChB,MAAA,CAAO;AAAA,MACL,UAAA,EAAY,GAAA;AAAA,MACZ,IAAA,EAAM,aAAA;AAAA,MACN,gBAAA,EAAkB;AAAA,KACnB;AAAA;AAEL,CAAC,CAAA;AAEM,MAAM,MAAM,MAAA,CAAO;AAAA,EACxB,MAAA;AAAA,EACA,OAAA,EAAS,MAAA,CAAO,MAAA,CAAO,EAAE,GAAG,SAAA,EAAW,IAAA,EAAM,MAAA,CAAO,EAAc,CAAA,EAAG,CAAC,CAAA;AAAA,aACtEA,WAAA;AAAA,EACA,IAAA,EAAM,aAAA;AAAA,EACN,IAAA,EAAM,MAAA,CAAO,EAAyC;AACxD,CAAC;;;;"}
|
|
@@ -14,7 +14,7 @@ import '../scale/shaped.mjs';
|
|
|
14
14
|
import '../scale/BitSeq.mjs';
|
|
15
15
|
import { runtimeApiV15 } from './runtime-api.mjs';
|
|
16
16
|
|
|
17
|
-
const extrinsic = Struct({
|
|
17
|
+
const extrinsic$1 = Struct({
|
|
18
18
|
version: u8,
|
|
19
19
|
address: compactNumber,
|
|
20
20
|
call: compactNumber,
|
|
@@ -31,7 +31,7 @@ const extrinsic = Struct({
|
|
|
31
31
|
const v15 = Struct({
|
|
32
32
|
lookup,
|
|
33
33
|
pallets: Vector(Struct(v15Pallet)),
|
|
34
|
-
extrinsic,
|
|
34
|
+
extrinsic: extrinsic$1,
|
|
35
35
|
type: compactNumber,
|
|
36
36
|
apis: Vector(runtimeApiV15),
|
|
37
37
|
outerEnums: Struct({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"v15.mjs","sources":["../../../../src/codecs/metadata/v15.ts"],"sourcesContent":["import { CodecType, Struct, Tuple, Vector, str, u8 } from \"scale-ts\"\nimport { lookup } from \"./lookup\"\nimport { v15Pallet } from \"./pallets\"\nimport { Hex, compactNumber as ty } from \"../scale\"\nimport { runtimeApiV15 } from \"./runtime-api\"\n\nconst extrinsic = Struct({\n version: u8,\n address: ty,\n call: ty,\n signature: ty,\n extra: ty,\n signedExtensions: Vector(\n Struct({\n identifier: str,\n type: ty,\n additionalSigned: ty,\n }),\n ),\n})\n\nexport const v15 = Struct({\n lookup,\n pallets: Vector(Struct(v15Pallet)),\n extrinsic,\n type: ty,\n apis: Vector(runtimeApiV15),\n outerEnums: Struct({\n call: ty,\n event: ty,\n error: ty,\n }),\n custom: Vector(Tuple(str, Struct({ type: ty, value: Hex() }))),\n})\nexport type V15 = CodecType<typeof v15>\n"],"names":["ty"],"mappings":";;;;;;;;;;;;;;;;AAMA,
|
|
1
|
+
{"version":3,"file":"v15.mjs","sources":["../../../../src/codecs/metadata/v15.ts"],"sourcesContent":["import { CodecType, Struct, Tuple, Vector, str, u8 } from \"scale-ts\"\nimport { lookup } from \"./lookup\"\nimport { v15Pallet } from \"./pallets\"\nimport { Hex, compactNumber as ty } from \"../scale\"\nimport { runtimeApiV15 } from \"./runtime-api\"\n\nconst extrinsic = Struct({\n version: u8,\n address: ty,\n call: ty,\n signature: ty,\n extra: ty,\n signedExtensions: Vector(\n Struct({\n identifier: str,\n type: ty,\n additionalSigned: ty,\n }),\n ),\n})\n\nexport const v15 = Struct({\n lookup,\n pallets: Vector(Struct(v15Pallet)),\n extrinsic,\n type: ty,\n apis: Vector(runtimeApiV15),\n outerEnums: Struct({\n call: ty,\n event: ty,\n error: ty,\n }),\n custom: Vector(Tuple(str, Struct({ type: ty, value: Hex() }))),\n})\nexport type V15 = CodecType<typeof v15>\n"],"names":["extrinsic","ty"],"mappings":";;;;;;;;;;;;;;;;AAMA,MAAMA,cAAY,MAAA,CAAO;AAAA,EACvB,OAAA,EAAS,EAAA;AAAA,EACT,OAAA,EAASC,aAAA;AAAA,EACT,IAAA,EAAMA,aAAA;AAAA,EACN,SAAA,EAAWA,aAAA;AAAA,EACX,KAAA,EAAOA,aAAA;AAAA,EACP,gBAAA,EAAkB,MAAA;AAAA,IAChB,MAAA,CAAO;AAAA,MACL,UAAA,EAAY,GAAA;AAAA,MACZ,IAAA,EAAMA,aAAA;AAAA,MACN,gBAAA,EAAkBA;AAAA,KACnB;AAAA;AAEL,CAAC,CAAA;AAEM,MAAM,MAAM,MAAA,CAAO;AAAA,EACxB,MAAA;AAAA,EACA,OAAA,EAAS,MAAA,CAAO,MAAA,CAAO,SAAS,CAAC,CAAA;AAAA,aACjCD,WAAA;AAAA,EACA,IAAA,EAAMC,aAAA;AAAA,EACN,IAAA,EAAM,OAAO,aAAa,CAAA;AAAA,EAC1B,YAAY,MAAA,CAAO;AAAA,IACjB,IAAA,EAAMA,aAAA;AAAA,IACN,KAAA,EAAOA,aAAA;AAAA,IACP,KAAA,EAAOA;AAAA,GACR,CAAA;AAAA,EACD,MAAA,EAAQ,MAAA,CAAO,KAAA,CAAM,GAAA,EAAK,MAAA,CAAO,EAAE,IAAA,EAAMA,aAAA,EAAI,KAAA,EAAO,GAAA,EAAI,EAAG,CAAC,CAAC;AAC/D,CAAC;;;;"}
|
|
@@ -1,94 +1,28 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { fromHex, mergeUint8, toHex } from '@polkadot-api/utils';
|
|
2
|
+
import { Tuple, Bytes, compact } from 'scale-ts';
|
|
3
|
+
import { compactNumber } from './compact.mjs';
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
const
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
constructor(data, opaque = false) {
|
|
21
|
-
__privateAdd(this, _bytes);
|
|
22
|
-
__privateAdd(this, _opaqueBytes, null);
|
|
23
|
-
__privateAdd(this, _hex, null);
|
|
24
|
-
__privateAdd(this, _opaqueHex, null);
|
|
25
|
-
__privateAdd(this, _str, null);
|
|
26
|
-
__publicField(this, "asText", () => __privateGet(this, _str) ?? __privateSet(this, _str, textDecoder.decode(__privateGet(this, _bytes))));
|
|
27
|
-
__publicField(this, "asHex", () => __privateGet(this, _hex) ?? __privateSet(this, _hex, toHex(__privateGet(this, _bytes))));
|
|
28
|
-
__publicField(this, "asOpaqueHex", () => __privateGet(this, _opaqueHex) ?? __privateSet(this, _opaqueHex, toHex(this.asBytes())));
|
|
29
|
-
__publicField(this, "asBytes", () => __privateGet(this, _bytes));
|
|
30
|
-
__publicField(this, "asOpaqueBytes", () => __privateGet(this, _opaqueBytes) ?? __privateSet(this, _opaqueBytes, mergeUint8([
|
|
31
|
-
__privateGet(this, _bytes),
|
|
32
|
-
compact[0](__privateGet(this, _bytes).length)
|
|
33
|
-
])));
|
|
34
|
-
if (opaque) {
|
|
35
|
-
try {
|
|
36
|
-
const [len, bytes] = opaqueBytesDec(data);
|
|
37
|
-
if (len === bytes.length) {
|
|
38
|
-
__privateSet(this, _bytes, bytes);
|
|
39
|
-
__privateSet(this, _opaqueBytes, data);
|
|
40
|
-
return;
|
|
41
|
-
}
|
|
42
|
-
} catch (_) {
|
|
5
|
+
const textEncoder$3 = new TextEncoder();
|
|
6
|
+
const textDecoder$2 = new TextDecoder();
|
|
7
|
+
const opaqueBytesDec = Tuple(compactNumber, Bytes(Infinity))[1];
|
|
8
|
+
const Binary = {
|
|
9
|
+
toText: (bytes) => textDecoder$2.decode(bytes),
|
|
10
|
+
toHex: (bytes) => toHex(bytes),
|
|
11
|
+
toOpaque: (bytes) => mergeUint8([compact[0](bytes.length), bytes]),
|
|
12
|
+
fromText: (text) => textEncoder$3.encode(text),
|
|
13
|
+
fromHex: (hex) => fromHex(hex),
|
|
14
|
+
fromOpaque: (opaque) => {
|
|
15
|
+
const data = typeof opaque === "string" ? fromHex(opaque) : opaque;
|
|
16
|
+
try {
|
|
17
|
+
const [len, bytes] = opaqueBytesDec(data);
|
|
18
|
+
if (len === bytes.length) {
|
|
19
|
+
return bytes;
|
|
43
20
|
}
|
|
44
|
-
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
static fromText(input) {
|
|
48
|
-
return new this(textEncoder.encode(input));
|
|
49
|
-
}
|
|
50
|
-
static fromHex(input) {
|
|
51
|
-
return new this(fromHex(input));
|
|
52
|
-
}
|
|
53
|
-
static fromOpaqueHex(input) {
|
|
54
|
-
return new this(fromHex(input), true);
|
|
55
|
-
}
|
|
56
|
-
static fromBytes(input) {
|
|
57
|
-
return new this(input);
|
|
21
|
+
} catch (_) {
|
|
22
|
+
}
|
|
23
|
+
throw new Error("Invalid opaque bytes");
|
|
58
24
|
}
|
|
59
|
-
static fromOpaqueBytes(input) {
|
|
60
|
-
return new this(input, true);
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
_bytes = new WeakMap();
|
|
64
|
-
_opaqueBytes = new WeakMap();
|
|
65
|
-
_hex = new WeakMap();
|
|
66
|
-
_opaqueHex = new WeakMap();
|
|
67
|
-
_str = new WeakMap();
|
|
68
|
-
const [accountIdEncoder] = AccountId();
|
|
69
|
-
class FixedSizeBinary extends Binary {
|
|
70
|
-
constructor(data) {
|
|
71
|
-
super(data);
|
|
72
|
-
}
|
|
73
|
-
static fromArray(input) {
|
|
74
|
-
return new this(new Uint8Array(input));
|
|
75
|
-
}
|
|
76
|
-
static fromAccountId32(input) {
|
|
77
|
-
return new this(accountIdEncoder(input));
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
const enc = (nBytes) => {
|
|
81
|
-
const _enc = Bytes.enc(nBytes);
|
|
82
|
-
return (value) => _enc(value.asBytes());
|
|
83
|
-
};
|
|
84
|
-
const dec = (nBytes) => {
|
|
85
|
-
const _dec = Bytes.dec(nBytes);
|
|
86
|
-
const Bin2 = nBytes == null ? Binary : FixedSizeBinary;
|
|
87
|
-
return (value) => Bin2.fromBytes(_dec(value));
|
|
88
25
|
};
|
|
89
|
-
const Bin = (nBytes) => createCodec(enc(nBytes), dec(nBytes));
|
|
90
|
-
Bin.enc = enc;
|
|
91
|
-
Bin.dec = dec;
|
|
92
26
|
|
|
93
|
-
export {
|
|
27
|
+
export { Binary };
|
|
94
28
|
//# sourceMappingURL=Binary.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Binary.mjs","sources":["../../../../src/codecs/scale/Binary.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"Binary.mjs","sources":["../../../../src/codecs/scale/Binary.ts"],"sourcesContent":["import { fromHex, mergeUint8, toHex } from \"@polkadot-api/utils\"\nimport { Bytes, Tuple, compact } from \"scale-ts\"\nimport type { HexString } from \"./Hex\"\nimport { compactNumber } from \"./compact\"\n\nconst textEncoder = new TextEncoder()\nconst textDecoder = new TextDecoder()\nconst opaqueBytesDec = Tuple(compactNumber, Bytes(Infinity))[1]\n\nexport const Binary = {\n toText: (bytes: Uint8Array) => textDecoder.decode(bytes),\n toHex: (bytes: Uint8Array): HexString => toHex(bytes),\n toOpaque: (bytes: Uint8Array) =>\n mergeUint8([compact[0](bytes.length), bytes]),\n\n fromText: (text: string) => textEncoder.encode(text),\n fromHex: (hex: HexString) => fromHex(hex),\n fromOpaque: (opaque: Uint8Array | HexString) => {\n const data = typeof opaque === \"string\" ? fromHex(opaque) : opaque\n try {\n const [len, bytes] = opaqueBytesDec(data)\n if (len === bytes.length) {\n return bytes\n }\n } catch (_) {}\n throw new Error(\"Invalid opaque bytes\")\n },\n}\n"],"names":["textEncoder","textDecoder"],"mappings":";;;;AAKA,MAAMA,aAAA,GAAc,IAAI,WAAA,EAAY;AACpC,MAAMC,aAAA,GAAc,IAAI,WAAA,EAAY;AACpC,MAAM,iBAAiB,KAAA,CAAM,aAAA,EAAe,MAAM,QAAQ,CAAC,EAAE,CAAC,CAAA;AAEvD,MAAM,MAAA,GAAS;AAAA,EACpB,MAAA,EAAQ,CAAC,KAAA,KAAsBA,aAAA,CAAY,OAAO,KAAK,CAAA;AAAA,EACvD,KAAA,EAAO,CAAC,KAAA,KAAiC,KAAA,CAAM,KAAK,CAAA;AAAA,EACpD,QAAA,EAAU,CAAC,KAAA,KACT,UAAA,CAAW,CAAC,OAAA,CAAQ,CAAC,CAAA,CAAE,KAAA,CAAM,MAAM,CAAA,EAAG,KAAK,CAAC,CAAA;AAAA,EAE9C,QAAA,EAAU,CAAC,IAAA,KAAiBD,aAAA,CAAY,OAAO,IAAI,CAAA;AAAA,EACnD,OAAA,EAAS,CAAC,GAAA,KAAmB,OAAA,CAAQ,GAAG,CAAA;AAAA,EACxC,UAAA,EAAY,CAAC,MAAA,KAAmC;AAC9C,IAAA,MAAM,OAAO,OAAO,MAAA,KAAW,QAAA,GAAW,OAAA,CAAQ,MAAM,CAAA,GAAI,MAAA;AAC5D,IAAA,IAAI;AACF,MAAA,MAAM,CAAC,GAAA,EAAK,KAAK,CAAA,GAAI,eAAe,IAAI,CAAA;AACxC,MAAA,IAAI,GAAA,KAAQ,MAAM,MAAA,EAAQ;AACxB,QAAA,OAAO,KAAA;AAAA,MACT;AAAA,IACF,SAAS,CAAA,EAAG;AAAA,IAAC;AACb,IAAA,MAAM,IAAI,MAAM,sBAAsB,CAAA;AAAA,EACxC;AACF;;;;"}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import { fromHex, toHex } from '@polkadot-api/utils';
|
|
2
2
|
import { createCodec, Bytes } from 'scale-ts';
|
|
3
3
|
|
|
4
|
-
const enc = (nBytes) => {
|
|
4
|
+
const enc$1 = (nBytes) => {
|
|
5
5
|
const _enc = Bytes.enc(nBytes);
|
|
6
6
|
return (value) => _enc(fromHex(value));
|
|
7
7
|
};
|
|
8
|
-
const dec = (nBytes) => {
|
|
8
|
+
const dec$1 = (nBytes) => {
|
|
9
9
|
const _dec = Bytes.dec(nBytes);
|
|
10
10
|
return (value) => toHex(_dec(value));
|
|
11
11
|
};
|
|
12
|
-
const Hex = (nBytes) => createCodec(enc(nBytes), dec(nBytes));
|
|
13
|
-
Hex.enc = enc;
|
|
14
|
-
Hex.dec = dec;
|
|
12
|
+
const Hex = (nBytes) => createCodec(enc$1(nBytes), dec$1(nBytes));
|
|
13
|
+
Hex.enc = enc$1;
|
|
14
|
+
Hex.dec = dec$1;
|
|
15
15
|
|
|
16
16
|
export { Hex };
|
|
17
17
|
//# sourceMappingURL=Hex.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Hex.mjs","sources":["../../../../src/codecs/scale/Hex.ts"],"sourcesContent":["import { fromHex, toHex } from \"@polkadot-api/utils\"\nimport { Bytes, Codec, Decoder, Encoder, createCodec } from \"scale-ts\"\n\nexport type HexString = string & { __hexString?: unknown }\n\nconst enc = (nBytes?: number): Encoder<HexString> => {\n const _enc = Bytes.enc(nBytes)\n return (value: string) => _enc(fromHex(value))\n}\n\nconst dec = (nBytes?: number): Decoder<HexString> => {\n const _dec = Bytes.dec(nBytes)\n return (value) => toHex(_dec(value)) as HexString\n}\n\nexport const Hex = (nBytes?: number): Codec<HexString> =>\n createCodec(enc(nBytes), dec(nBytes))\n\nHex.enc = enc\nHex.dec = dec\n"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"Hex.mjs","sources":["../../../../src/codecs/scale/Hex.ts"],"sourcesContent":["import { fromHex, toHex } from \"@polkadot-api/utils\"\nimport { Bytes, Codec, Decoder, Encoder, createCodec } from \"scale-ts\"\n\nexport type HexString = string & { __hexString?: unknown }\n\nexport type SizedHex<T extends number> = string & {\n __hexString?: T | unknown\n}\n\nconst enc = (nBytes?: number): Encoder<HexString> => {\n const _enc = Bytes.enc(nBytes)\n return (value: string) => _enc(fromHex(value))\n}\n\nconst dec = (nBytes?: number): Decoder<HexString> => {\n const _dec = Bytes.dec(nBytes)\n return (value) => toHex(_dec(value)) as HexString\n}\n\nexport const Hex = (nBytes?: number): Codec<HexString> =>\n createCodec(enc(nBytes), dec(nBytes))\n\nHex.enc = enc\nHex.dec = dec\n"],"names":["enc","dec"],"mappings":";;;AASA,MAAMA,KAAA,GAAM,CAAC,MAAA,KAAwC;AACnD,EAAA,MAAM,IAAA,GAAO,KAAA,CAAM,GAAA,CAAI,MAAM,CAAA;AAC7B,EAAA,OAAO,CAAC,KAAA,KAAkB,IAAA,CAAK,OAAA,CAAQ,KAAK,CAAC,CAAA;AAC/C,CAAA;AAEA,MAAMC,KAAA,GAAM,CAAC,MAAA,KAAwC;AACnD,EAAA,MAAM,IAAA,GAAO,KAAA,CAAM,GAAA,CAAI,MAAM,CAAA;AAC7B,EAAA,OAAO,CAAC,KAAA,KAAU,KAAA,CAAM,IAAA,CAAK,KAAK,CAAC,CAAA;AACrC,CAAA;AAEO,MAAM,GAAA,GAAM,CAAC,MAAA,KAClB,WAAA,CAAYD,MAAI,MAAM,CAAA,EAAGC,KAAA,CAAI,MAAM,CAAC;AAEtC,GAAA,CAAI,GAAA,GAAMD,KAAA;AACV,GAAA,CAAI,GAAA,GAAMC,KAAA;;;;"}
|
|
@@ -18,7 +18,7 @@ const bitSequenceEncoder = (input) => {
|
|
|
18
18
|
result.set(input.bytes, lenEncoded.length);
|
|
19
19
|
return result;
|
|
20
20
|
};
|
|
21
|
-
const bitSequence = createCodec(bitSequenceEncoder, bitSequenceDecoder);
|
|
21
|
+
const bitSequence$1 = createCodec(bitSequenceEncoder, bitSequenceDecoder);
|
|
22
22
|
|
|
23
|
-
export { bitSequence };
|
|
23
|
+
export { bitSequence$1 as bitSequence };
|
|
24
24
|
//# sourceMappingURL=bitSequence.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bitSequence.mjs","sources":["../../../../src/codecs/scale/bitSequence.ts"],"sourcesContent":["import { Bytes, Decoder, Encoder, createCodec, createDecoder } from \"scale-ts\"\nimport { compactNumber } from \"./compact\"\n\nexport interface BitSequence {\n bitsLen: number\n bytes: Uint8Array\n}\n\nconst bitSequenceDecoder: Decoder<BitSequence> = createDecoder((data) => {\n const bitsLen = compactNumber.dec(data)\n\n const bytesLen = Math.ceil(bitsLen / 8)\n const bytes = Bytes(bytesLen).dec(data)\n return { bytes, bitsLen }\n})\n\nconst bitSequenceEncoder: Encoder<BitSequence> = (input) => {\n if (input.bitsLen > input.bytes.length * 8)\n throw new Error(\n `Not enough bytes. (bitsLen:${input.bitsLen}, bytesLen:${input.bytes.length})`,\n )\n\n const lenEncoded = compactNumber.enc(input.bitsLen)\n const result = new Uint8Array(input.bytes.length + lenEncoded.length)\n result.set(lenEncoded, 0)\n result.set(input.bytes, lenEncoded.length)\n return result\n}\n\nexport const bitSequence = createCodec(bitSequenceEncoder, bitSequenceDecoder)\n"],"names":[],"mappings":";;;AAQA,MAAM,kBAAA,GAA2C,aAAA,CAAc,CAAC,IAAA,KAAS;AACvE,EAAA,MAAM,OAAA,GAAU,aAAA,CAAc,GAAA,CAAI,IAAI,CAAA;AAEtC,EAAA,MAAM,QAAA,GAAW,IAAA,CAAK,IAAA,CAAK,OAAA,GAAU,CAAC,CAAA;AACtC,EAAA,MAAM,KAAA,GAAQ,KAAA,CAAM,QAAQ,CAAA,CAAE,IAAI,IAAI,CAAA;AACtC,EAAA,OAAO,EAAE,OAAO,OAAA,EAAQ;AAC1B,CAAC,CAAA;AAED,MAAM,kBAAA,GAA2C,CAAC,KAAA,KAAU;AAC1D,EAAA,IAAI,KAAA,CAAM,OAAA,GAAU,KAAA,CAAM,KAAA,CAAM,MAAA,GAAS,CAAA;AACvC,IAAA,MAAM,IAAI,KAAA;AAAA,MACR,8BAA8B,KAAA,CAAM,OAAO,CAAA,WAAA,EAAc,KAAA,CAAM,MAAM,MAAM,CAAA,CAAA;AAAA,KAC7E;AAEF,EAAA,MAAM,UAAA,GAAa,aAAA,CAAc,GAAA,CAAI,KAAA,CAAM,OAAO,CAAA;AAClD,EAAA,MAAM,SAAS,IAAI,UAAA,CAAW,MAAM,KAAA,CAAM,MAAA,GAAS,WAAW,MAAM,CAAA;AACpE,EAAA,MAAA,CAAO,GAAA,CAAI,YAAY,CAAC,CAAA;AACxB,EAAA,MAAA,CAAO,GAAA,CAAI,KAAA,CAAM,KAAA,EAAO,UAAA,CAAW,MAAM,CAAA;AACzC,EAAA,OAAO,MAAA;AACT,CAAA;AAEO,
|
|
1
|
+
{"version":3,"file":"bitSequence.mjs","sources":["../../../../src/codecs/scale/bitSequence.ts"],"sourcesContent":["import { Bytes, Decoder, Encoder, createCodec, createDecoder } from \"scale-ts\"\nimport { compactNumber } from \"./compact\"\n\nexport interface BitSequence {\n bitsLen: number\n bytes: Uint8Array\n}\n\nconst bitSequenceDecoder: Decoder<BitSequence> = createDecoder((data) => {\n const bitsLen = compactNumber.dec(data)\n\n const bytesLen = Math.ceil(bitsLen / 8)\n const bytes = Bytes(bytesLen).dec(data)\n return { bytes, bitsLen }\n})\n\nconst bitSequenceEncoder: Encoder<BitSequence> = (input) => {\n if (input.bitsLen > input.bytes.length * 8)\n throw new Error(\n `Not enough bytes. (bitsLen:${input.bitsLen}, bytesLen:${input.bytes.length})`,\n )\n\n const lenEncoded = compactNumber.enc(input.bitsLen)\n const result = new Uint8Array(input.bytes.length + lenEncoded.length)\n result.set(lenEncoded, 0)\n result.set(input.bytes, lenEncoded.length)\n return result\n}\n\nexport const bitSequence = createCodec(bitSequenceEncoder, bitSequenceDecoder)\n"],"names":["bitSequence"],"mappings":";;;AAQA,MAAM,kBAAA,GAA2C,aAAA,CAAc,CAAC,IAAA,KAAS;AACvE,EAAA,MAAM,OAAA,GAAU,aAAA,CAAc,GAAA,CAAI,IAAI,CAAA;AAEtC,EAAA,MAAM,QAAA,GAAW,IAAA,CAAK,IAAA,CAAK,OAAA,GAAU,CAAC,CAAA;AACtC,EAAA,MAAM,KAAA,GAAQ,KAAA,CAAM,QAAQ,CAAA,CAAE,IAAI,IAAI,CAAA;AACtC,EAAA,OAAO,EAAE,OAAO,OAAA,EAAQ;AAC1B,CAAC,CAAA;AAED,MAAM,kBAAA,GAA2C,CAAC,KAAA,KAAU;AAC1D,EAAA,IAAI,KAAA,CAAM,OAAA,GAAU,KAAA,CAAM,KAAA,CAAM,MAAA,GAAS,CAAA;AACvC,IAAA,MAAM,IAAI,KAAA;AAAA,MACR,8BAA8B,KAAA,CAAM,OAAO,CAAA,WAAA,EAAc,KAAA,CAAM,MAAM,MAAM,CAAA,CAAA;AAAA,KAC7E;AAEF,EAAA,MAAM,UAAA,GAAa,aAAA,CAAc,GAAA,CAAI,KAAA,CAAM,OAAO,CAAA;AAClD,EAAA,MAAM,SAAS,IAAI,UAAA,CAAW,MAAM,KAAA,CAAM,MAAA,GAAS,WAAW,MAAM,CAAA;AACpE,EAAA,MAAA,CAAO,GAAA,CAAI,YAAY,CAAC,CAAA;AACxB,EAAA,MAAA,CAAO,GAAA,CAAI,KAAA,CAAM,KAAA,EAAO,UAAA,CAAW,MAAM,CAAA;AACzC,EAAA,OAAO,MAAA;AACT,CAAA;AAEO,MAAMA,aAAA,GAAc,WAAA,CAAY,kBAAA,EAAoB,kBAAkB;;;;"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { enhanceCodec, Bytes } from 'scale-ts';
|
|
2
2
|
|
|
3
|
-
const textEncoder = new TextEncoder();
|
|
4
|
-
const textDecoder = new TextDecoder();
|
|
3
|
+
const textEncoder$2 = new TextEncoder();
|
|
4
|
+
const textDecoder$1 = new TextDecoder();
|
|
5
5
|
const fixedStr = (nBytes) => enhanceCodec(
|
|
6
6
|
Bytes(nBytes),
|
|
7
|
-
(str) => textEncoder.encode(str),
|
|
8
|
-
(bytes) => textDecoder.decode(bytes)
|
|
7
|
+
(str) => textEncoder$2.encode(str),
|
|
8
|
+
(bytes) => textDecoder$1.decode(bytes)
|
|
9
9
|
);
|
|
10
10
|
|
|
11
|
-
export { fixedStr, textEncoder };
|
|
11
|
+
export { fixedStr, textEncoder$2 as textEncoder };
|
|
12
12
|
//# sourceMappingURL=fixed-str.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fixed-str.mjs","sources":["../../../../src/codecs/scale/fixed-str.ts"],"sourcesContent":["import { Bytes, enhanceCodec } from \"scale-ts\"\n\nexport const textEncoder = new TextEncoder()\nconst textDecoder = new TextDecoder()\n\nexport const fixedStr = (nBytes: number) =>\n enhanceCodec(\n Bytes(nBytes),\n (str: string) => textEncoder.encode(str),\n (bytes) => textDecoder.decode(bytes),\n )\n"],"names":[],"mappings":";;AAEO,
|
|
1
|
+
{"version":3,"file":"fixed-str.mjs","sources":["../../../../src/codecs/scale/fixed-str.ts"],"sourcesContent":["import { Bytes, enhanceCodec } from \"scale-ts\"\n\nexport const textEncoder = new TextEncoder()\nconst textDecoder = new TextDecoder()\n\nexport const fixedStr = (nBytes: number) =>\n enhanceCodec(\n Bytes(nBytes),\n (str: string) => textEncoder.encode(str),\n (bytes) => textDecoder.decode(bytes),\n )\n"],"names":["textEncoder","textDecoder"],"mappings":";;AAEO,MAAMA,aAAA,GAAc,IAAI,WAAA;AAC/B,MAAMC,aAAA,GAAc,IAAI,WAAA,EAAY;AAE7B,MAAM,QAAA,GAAW,CAAC,MAAA,KACvB,YAAA;AAAA,EACE,MAAM,MAAM,CAAA;AAAA,EACZ,CAAC,GAAA,KAAgBD,aAAA,CAAY,MAAA,CAAO,GAAG,CAAA;AAAA,EACvC,CAAC,KAAA,KAAUC,aAAA,CAAY,MAAA,CAAO,KAAK;AACrC;;;;"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { mergeUint8 } from '@polkadot-api/utils';
|
|
2
2
|
import { blake2b } from '@noble/hashes/blake2.js';
|
|
3
3
|
|
|
4
|
-
const len32 = { dkLen: 32 };
|
|
5
|
-
const Blake2256 = (encoded) => blake2b(encoded, len32);
|
|
4
|
+
const len32$1 = { dkLen: 32 };
|
|
5
|
+
const Blake2256 = (encoded) => blake2b(encoded, len32$1);
|
|
6
6
|
const len16 = { dkLen: 16 };
|
|
7
7
|
const Blake2128 = (encoded) => blake2b(encoded, len16);
|
|
8
8
|
const Blake2128Concat = (encoded) => mergeUint8([Blake2128(encoded), encoded]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blake2.mjs","sources":["../../../src/hashes/blake2.ts"],"sourcesContent":["import { mergeUint8 } from \"@polkadot-api/utils\"\nimport { blake2b } from \"@noble/hashes/blake2.js\"\n\nconst len32 = { dkLen: 32 }\nexport const Blake2256 = (encoded: Uint8Array) => blake2b(encoded, len32)\n\nconst len16 = { dkLen: 16 }\nexport const Blake2128 = (encoded: Uint8Array) => blake2b(encoded, len16)\n\nexport const Blake2128Concat = (encoded: Uint8Array) =>\n mergeUint8([Blake2128(encoded), encoded])\n"],"names":[],"mappings":";;;AAGA,
|
|
1
|
+
{"version":3,"file":"blake2.mjs","sources":["../../../src/hashes/blake2.ts"],"sourcesContent":["import { mergeUint8 } from \"@polkadot-api/utils\"\nimport { blake2b } from \"@noble/hashes/blake2.js\"\n\nconst len32 = { dkLen: 32 }\nexport const Blake2256 = (encoded: Uint8Array) => blake2b(encoded, len32)\n\nconst len16 = { dkLen: 16 }\nexport const Blake2128 = (encoded: Uint8Array) => blake2b(encoded, len16)\n\nexport const Blake2128Concat = (encoded: Uint8Array) =>\n mergeUint8([Blake2128(encoded), encoded])\n"],"names":["len32"],"mappings":";;;AAGA,MAAMA,OAAA,GAAQ,EAAE,KAAA,EAAO,EAAA,EAAG;AACnB,MAAM,SAAA,GAAY,CAAC,OAAA,KAAwB,OAAA,CAAQ,SAASA,OAAK;AAExE,MAAM,KAAA,GAAQ,EAAE,KAAA,EAAO,EAAA,EAAG;AACnB,MAAM,SAAA,GAAY,CAAC,OAAA,KAAwB,OAAA,CAAQ,SAAS,KAAK;AAEjE,MAAM,eAAA,GAAkB,CAAC,OAAA,KAC9B,UAAA,CAAW,CAAC,SAAA,CAAU,OAAO,CAAA,EAAG,OAAO,CAAC;;;;"}
|
package/dist/esm/index.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { AccountId } from './codecs/scale/AccountId.mjs';
|
|
2
|
-
export {
|
|
2
|
+
export { Binary } from './codecs/scale/Binary.mjs';
|
|
3
3
|
export { bitSequence } from './codecs/scale/bitSequence.mjs';
|
|
4
4
|
export { char } from './codecs/scale/char.mjs';
|
|
5
5
|
export { compactBn, compactNumber } from './codecs/scale/compact.mjs';
|
|
@@ -21,7 +21,7 @@ import { Blake2256 } from '../hashes/blake2.mjs';
|
|
|
21
21
|
import '@noble/hashes/blake3.js';
|
|
22
22
|
import '@noble/hashes/sha3.js';
|
|
23
23
|
|
|
24
|
-
const PREFIX = Binary.fromText("modlpy/utilisuba")
|
|
24
|
+
const PREFIX = Binary.fromText("modlpy/utilisuba");
|
|
25
25
|
const getMultisigAccountId = ({
|
|
26
26
|
threshold,
|
|
27
27
|
signatories
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multisig.mjs","sources":["../../../src/utils/multisig.ts"],"sourcesContent":["import { mergeUint8 } from \"@polkadot-api/utils\"\nimport { Binary, compact, u16 } from \"../codecs\"\nimport { Blake2256 } from \"../hashes\"\n\nconst PREFIX = Binary.fromText(\"modlpy/utilisuba\")
|
|
1
|
+
{"version":3,"file":"multisig.mjs","sources":["../../../src/utils/multisig.ts"],"sourcesContent":["import { mergeUint8 } from \"@polkadot-api/utils\"\nimport { Binary, compact, u16 } from \"../codecs\"\nimport { Blake2256 } from \"../hashes\"\n\nconst PREFIX = Binary.fromText(\"modlpy/utilisuba\")\nexport const getMultisigAccountId = ({\n threshold,\n signatories,\n}: {\n threshold: number\n signatories: Uint8Array[]\n}) => {\n const sortedSignatories = sortMultisigSignatories(signatories)\n const payload = mergeUint8([\n PREFIX,\n compact.enc(sortedSignatories.length),\n ...sortedSignatories,\n u16.enc(threshold),\n ])\n return Blake2256(payload)\n}\n\nexport const sortMultisigSignatories = (signatories: Uint8Array[]) =>\n signatories.slice().sort((a, b) => {\n for (let i = 0; ; i++) {\n const overA = i >= a.length\n const overB = i >= b.length\n\n if (overA && overB) return 0\n else if (overA) return -1\n else if (overB) return 1\n else if (a[i] !== b[i]) return a[i] > b[i] ? 1 : -1\n }\n })\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAIA,MAAM,MAAA,GAAS,MAAA,CAAO,QAAA,CAAS,kBAAkB,CAAA;AAC1C,MAAM,uBAAuB,CAAC;AAAA,EACnC,SAAA;AAAA,EACA;AACF,CAAA,KAGM;AACJ,EAAA,MAAM,iBAAA,GAAoB,wBAAwB,WAAW,CAAA;AAC7D,EAAA,MAAM,UAAU,UAAA,CAAW;AAAA,IACzB,MAAA;AAAA,IACA,OAAA,CAAQ,GAAA,CAAI,iBAAA,CAAkB,MAAM,CAAA;AAAA,IACpC,GAAG,iBAAA;AAAA,IACH,GAAA,CAAI,IAAI,SAAS;AAAA,GAClB,CAAA;AACD,EAAA,OAAO,UAAU,OAAO,CAAA;AAC1B;AAEO,MAAM,uBAAA,GAA0B,CAAC,WAAA,KACtC,WAAA,CAAY,OAAM,CAAE,IAAA,CAAK,CAAC,CAAA,EAAG,CAAA,KAAM;AACjC,EAAA,KAAA,IAAS,CAAA,GAAI,KAAK,CAAA,EAAA,EAAK;AACrB,IAAA,MAAM,KAAA,GAAQ,KAAK,CAAA,CAAE,MAAA;AACrB,IAAA,MAAM,KAAA,GAAQ,KAAK,CAAA,CAAE,MAAA;AAErB,IAAA,IAAI,KAAA,IAAS,OAAO,OAAO,CAAA;AAAA,SAAA,IAClB,OAAO,OAAO,EAAA;AAAA,SAAA,IACd,OAAO,OAAO,CAAA;AAAA,SAAA,IACd,CAAA,CAAE,CAAC,CAAA,KAAM,CAAA,CAAE,CAAC,CAAA,EAAG,OAAO,CAAA,CAAE,CAAC,CAAA,GAAI,CAAA,CAAE,CAAC,IAAI,CAAA,GAAI,EAAA;AAAA,EACnD;AACF,CAAC;;;;"}
|
package/dist/index.d.ts
CHANGED
|
@@ -20,43 +20,22 @@ declare const AccountId: (ss58Format?: number, nBytes?: 32 | 33) => scale_ts.Cod
|
|
|
20
20
|
type HexString = string & {
|
|
21
21
|
__hexString?: unknown;
|
|
22
22
|
};
|
|
23
|
+
type SizedHex<T extends number> = string & {
|
|
24
|
+
__hexString?: T | unknown;
|
|
25
|
+
};
|
|
23
26
|
declare const Hex: {
|
|
24
27
|
(nBytes?: number): Codec<HexString>;
|
|
25
28
|
enc: (nBytes?: number) => Encoder<HexString>;
|
|
26
29
|
dec: (nBytes?: number) => Decoder<HexString>;
|
|
27
30
|
};
|
|
28
31
|
|
|
29
|
-
declare const
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
#private;
|
|
37
|
-
constructor(data: Uint8Array, opaque?: boolean);
|
|
38
|
-
asText: () => string;
|
|
39
|
-
asHex: () => `0x${string}`;
|
|
40
|
-
asOpaqueHex: () => `0x${string}`;
|
|
41
|
-
asBytes: () => Uint8Array<ArrayBufferLike>;
|
|
42
|
-
asOpaqueBytes: () => Uint8Array<ArrayBufferLike>;
|
|
43
|
-
static fromText(input: string): Binary;
|
|
44
|
-
static fromHex(input: HexString): Binary;
|
|
45
|
-
static fromOpaqueHex(input: HexString): Binary;
|
|
46
|
-
static fromBytes(input: Uint8Array): Binary;
|
|
47
|
-
static fromOpaqueBytes(input: Uint8Array): Binary;
|
|
48
|
-
}
|
|
49
|
-
declare class FixedSizeBinary<_L extends number> extends Binary {
|
|
50
|
-
constructor(data: Uint8Array);
|
|
51
|
-
static fromArray<L extends number, I extends Array<number> & {
|
|
52
|
-
length: L;
|
|
53
|
-
}>(input: I): FixedSizeBinary<L>;
|
|
54
|
-
static fromAccountId32<L extends number>(input: L extends 32 ? SS58String : never): FixedSizeBinary<L>;
|
|
55
|
-
}
|
|
56
|
-
declare const Bin: {
|
|
57
|
-
(nBytes?: number): Codec<Binary>;
|
|
58
|
-
enc: (nBytes?: number) => Encoder<Binary>;
|
|
59
|
-
dec: (nBytes?: number) => Decoder<Binary>;
|
|
32
|
+
declare const Binary: {
|
|
33
|
+
toText: (bytes: Uint8Array) => string;
|
|
34
|
+
toHex: (bytes: Uint8Array) => HexString;
|
|
35
|
+
toOpaque: (bytes: Uint8Array) => Uint8Array<ArrayBufferLike>;
|
|
36
|
+
fromText: (text: string) => Uint8Array<ArrayBuffer>;
|
|
37
|
+
fromHex: (hex: HexString) => Uint8Array<ArrayBufferLike>;
|
|
38
|
+
fromOpaque: (opaque: Uint8Array | HexString) => Uint8Array<ArrayBufferLike>;
|
|
60
39
|
};
|
|
61
40
|
|
|
62
41
|
interface BitSequence {
|
|
@@ -2181,20 +2160,18 @@ type UnifiedMetadata<T extends 14 | 15 | 16 = 14 | 15 | 16> = {
|
|
|
2181
2160
|
} & DeprecationInfo<T>>;
|
|
2182
2161
|
extrinsic: {
|
|
2183
2162
|
version: number[];
|
|
2184
|
-
signedExtensions: Array<{
|
|
2163
|
+
signedExtensions: Record<number, Array<{
|
|
2185
2164
|
identifier: string;
|
|
2186
2165
|
type: number;
|
|
2187
2166
|
additionalSigned: number;
|
|
2188
|
-
}
|
|
2167
|
+
}>>;
|
|
2189
2168
|
} & (T extends 14 ? {
|
|
2190
2169
|
type: number;
|
|
2191
2170
|
} : {
|
|
2192
2171
|
address: number;
|
|
2193
2172
|
call: number;
|
|
2194
2173
|
signature: number;
|
|
2195
|
-
})
|
|
2196
|
-
signedExtensionsByVersion: Array<[number, number[]]>;
|
|
2197
|
-
} : {});
|
|
2174
|
+
});
|
|
2198
2175
|
apis: Array<{
|
|
2199
2176
|
name: string;
|
|
2200
2177
|
methods: Array<{
|
|
@@ -2258,6 +2235,12 @@ declare const Storage: (pallet: string) => <A extends Array<EncoderWithHash<any>
|
|
|
2258
2235
|
dec: (value: string) => { [K in keyof A]: A[K] extends EncoderWithHash<infer V> ? V : unknown; };
|
|
2259
2236
|
};
|
|
2260
2237
|
|
|
2238
|
+
declare const getMultisigAccountId: ({ threshold, signatories, }: {
|
|
2239
|
+
threshold: number;
|
|
2240
|
+
signatories: Uint8Array[];
|
|
2241
|
+
}) => Uint8Array<ArrayBufferLike>;
|
|
2242
|
+
declare const sortMultisigSignatories: (signatories: Uint8Array[]) => Uint8Array<ArrayBufferLike>[];
|
|
2243
|
+
|
|
2261
2244
|
declare const TrieNodeHeaders: {
|
|
2262
2245
|
readonly Leaf: "Leaf";
|
|
2263
2246
|
readonly Branch: "Branch";
|
|
@@ -2301,5 +2284,5 @@ declare const validateProofs: <T extends HexString | Uint8Array>(proofs: Array<T
|
|
|
2301
2284
|
proofs: Record<HexString, ProofTrieNode>;
|
|
2302
2285
|
} | null;
|
|
2303
2286
|
|
|
2304
|
-
export { AccountId,
|
|
2305
|
-
export type { BitSequence, BlockHeader, EncoderWithHash, EnumVariant, ExtractEnumValue, ExtrinsicFormat, GetEnum, HexString, Metadata, Nibble, OpaqueKeyHash, ProofTrieNode, SS58AddressInfo, SS58String, TrieNode, TrieNodeHeaderKey, UnifiedMetadata, V14, V14Lookup, V15, V16 };
|
|
2287
|
+
export { AccountId, Binary, BitSeq, Blake2128, Blake2128Concat, Blake2256, Blake3256, Blake3256Concat, Enum, Hex, Identity, Keccak256, Option, Result, ScaleEnum, Self, Storage, Struct, TrieNodeHeaders, TrieNodeWithHash, Tuple, Twox128, Twox256, Twox64Concat, Variant, Vector, _Enum, bitSequence, blockHeader, char, compactBn, compactNumber, decAnyMetadata, ethAccount, extrinsicFormat, fixedStr, fromBufferToBase58, getMultisigAccountId, getSs58AddressInfo, h64, metadata, selfDecoder, selfEncoder, sortMultisigSignatories, trieNodeDec, unifyMetadata, v14, lookup as v14Lookup, v15, v16, validateProofs };
|
|
2288
|
+
export type { BitSequence, BlockHeader, EncoderWithHash, EnumVariant, ExtractEnumValue, ExtrinsicFormat, GetEnum, HexString, Metadata, Nibble, OpaqueKeyHash, ProofTrieNode, SS58AddressInfo, SS58String, SizedHex, TrieNode, TrieNodeHeaderKey, UnifiedMetadata, V14, V14Lookup, V15, V16 };
|