@polkadot-api/substrate-bindings 0.12.0 → 0.14.0

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.
Files changed (35) hide show
  1. package/dist/esm/codecs/metadata/deprecation.mjs +28 -0
  2. package/dist/esm/codecs/metadata/deprecation.mjs.map +1 -0
  3. package/dist/esm/codecs/metadata/metadata.mjs +3 -1
  4. package/dist/esm/codecs/metadata/metadata.mjs.map +1 -1
  5. package/dist/esm/codecs/metadata/pallets.mjs +56 -14
  6. package/dist/esm/codecs/metadata/pallets.mjs.map +1 -1
  7. package/dist/esm/codecs/metadata/runtime-api.mjs +27 -13
  8. package/dist/esm/codecs/metadata/runtime-api.mjs.map +1 -1
  9. package/dist/esm/codecs/metadata/unified.mjs +48 -0
  10. package/dist/esm/codecs/metadata/unified.mjs.map +1 -0
  11. package/dist/esm/codecs/metadata/v14.mjs.map +1 -1
  12. package/dist/esm/codecs/metadata/v15.mjs +2 -2
  13. package/dist/esm/codecs/metadata/v15.mjs.map +1 -1
  14. package/dist/esm/codecs/metadata/v16.mjs +44 -0
  15. package/dist/esm/codecs/metadata/v16.mjs.map +1 -0
  16. package/dist/esm/codecs/scale/Binary.mjs +4 -4
  17. package/dist/esm/codecs/scale/Binary.mjs.map +1 -1
  18. package/dist/esm/extrinsics/extrinsic-format.mjs +26 -0
  19. package/dist/esm/extrinsics/extrinsic-format.mjs.map +1 -0
  20. package/dist/esm/hashes/blake2.mjs +1 -1
  21. package/dist/esm/hashes/blake2.mjs.map +1 -1
  22. package/dist/esm/hashes/blake3.mjs +1 -1
  23. package/dist/esm/hashes/blake3.mjs.map +1 -1
  24. package/dist/esm/hashes/twoX.mjs +1 -1
  25. package/dist/esm/hashes/twoX.mjs.map +1 -1
  26. package/dist/esm/index.mjs +3 -0
  27. package/dist/esm/index.mjs.map +1 -1
  28. package/dist/esm/storage.mjs +6 -3
  29. package/dist/esm/storage.mjs.map +1 -1
  30. package/dist/esm/utils/multisig.mjs +3 -2
  31. package/dist/esm/utils/multisig.mjs.map +1 -1
  32. package/dist/index.d.ts +1030 -156
  33. package/dist/index.js +225 -46
  34. package/dist/index.js.map +1 -1
  35. package/package.json +3 -3
@@ -0,0 +1,28 @@
1
+ import { Enum, Struct, _void, Option, str, Vector, u8 } from 'scale-ts';
2
+
3
+ const itemDeprecation = Enum({
4
+ NotDeprecated: _void,
5
+ DeprecatedWithoutNote: _void,
6
+ Deprecated: Struct({
7
+ note: str,
8
+ since: Option(str)
9
+ })
10
+ });
11
+ const variantDeprecation = Vector(
12
+ Struct({
13
+ index: u8,
14
+ deprecation: Enum(
15
+ {
16
+ DeprecatedWithoutNote: _void,
17
+ Deprecated: Struct({
18
+ note: str,
19
+ since: Option(str)
20
+ })
21
+ },
22
+ [1, 2]
23
+ )
24
+ })
25
+ );
26
+
27
+ export { itemDeprecation, variantDeprecation };
28
+ //# sourceMappingURL=deprecation.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deprecation.mjs","sources":["../../../../src/codecs/metadata/deprecation.ts"],"sourcesContent":["import { _void, Enum, Option, str, Struct, u8, Vector } from \"scale-ts\"\n\nexport const itemDeprecation = Enum({\n NotDeprecated: _void,\n DeprecatedWithoutNote: _void,\n Deprecated: Struct({\n note: str,\n since: Option(str),\n }),\n})\n\nexport const variantDeprecation = Vector(\n Struct({\n index: u8,\n deprecation: Enum(\n {\n DeprecatedWithoutNote: _void,\n Deprecated: Struct({\n note: str,\n since: Option(str),\n }),\n },\n [1, 2],\n ),\n }),\n)\n"],"names":[],"mappings":";;AAEO,MAAM,kBAAkB,IAAK,CAAA;AAAA,EAClC,aAAe,EAAA,KAAA;AAAA,EACf,qBAAuB,EAAA,KAAA;AAAA,EACvB,YAAY,MAAO,CAAA;AAAA,IACjB,IAAM,EAAA,GAAA;AAAA,IACN,KAAA,EAAO,OAAO,GAAG;AAAA,GAClB;AACH,CAAC;AAEM,MAAM,kBAAqB,GAAA,MAAA;AAAA,EAChC,MAAO,CAAA;AAAA,IACL,KAAO,EAAA,EAAA;AAAA,IACP,WAAa,EAAA,IAAA;AAAA,MACX;AAAA,QACE,qBAAuB,EAAA,KAAA;AAAA,QACvB,YAAY,MAAO,CAAA;AAAA,UACjB,IAAM,EAAA,GAAA;AAAA,UACN,KAAA,EAAO,OAAO,GAAG;AAAA,SAClB;AAAA,OACH;AAAA,MACA,CAAC,GAAG,CAAC;AAAA;AACP,GACD;AACH;;;;"}
@@ -1,6 +1,7 @@
1
1
  import { createCodec, Struct, Enum, u32, Bytes, Option, Tuple, compact } from 'scale-ts';
2
2
  import { v14 } from './v14.mjs';
3
3
  import { v15 } from './v15.mjs';
4
+ import { v16 } from './v16.mjs';
4
5
 
5
6
  const unsupportedFn = () => {
6
7
  throw new Error("Unsupported metadata version!");
@@ -27,7 +28,8 @@ const metadata = Struct({
27
28
  v12: unsupported,
28
29
  v13: unsupported,
29
30
  v14,
30
- v15
31
+ v15,
32
+ v16
31
33
  })
32
34
  });
33
35
  const opaqueBytes = Bytes();
@@ -1 +1 @@
1
- {"version":3,"file":"metadata.mjs","sources":["../../../../src/codecs/metadata/metadata.ts"],"sourcesContent":["import {\n Bytes,\n type Codec,\n type CodecType,\n Enum,\n Option,\n Struct,\n Tuple,\n compact,\n createCodec,\n u32,\n} from \"scale-ts\"\nimport type { HexString } from \"../scale\"\nimport { v14 } from \"./v14\"\nimport { v15 } from \"./v15\"\n\nconst unsupportedFn = () => {\n throw new Error(\"Unsupported metadata version!\")\n}\n\nconst unsupported = createCodec(\n unsupportedFn,\n unsupportedFn,\n) as unknown as Codec<unknown>\n\nexport const metadata = Struct({\n magicNumber: u32,\n metadata: Enum({\n v0: unsupported,\n v1: unsupported,\n v2: unsupported,\n v3: unsupported,\n v4: unsupported,\n v5: unsupported,\n v6: unsupported,\n v7: unsupported,\n v8: unsupported,\n v9: unsupported,\n v10: unsupported,\n v11: unsupported,\n v12: unsupported,\n v13: unsupported,\n v14,\n v15,\n }),\n})\n\nconst opaqueBytes = Bytes()\nconst optionOpaque = Option(opaqueBytes)\nconst opaqueOpaqueBytes = Tuple(compact, opaqueBytes)\n\nexport const decAnyMetadata = (\n input: Uint8Array | HexString,\n): CodecType<typeof metadata> => {\n try {\n return metadata.dec(input)\n } catch (_) {}\n\n // comes from metadata.metadata_at_version\n try {\n return metadata.dec(optionOpaque.dec(input)!)\n } catch (_) {}\n\n // comes from state.getMetadata\n try {\n return metadata.dec(opaqueBytes.dec(input))\n } catch (_) {}\n\n // comes from metadata.metadata\n try {\n return metadata.dec(opaqueOpaqueBytes.dec(input)[1])\n } catch (_) {}\n\n throw null\n}\n"],"names":[],"mappings":";;;;AAgBA,MAAM,gBAAgB,MAAM;AAC1B,EAAM,MAAA,IAAI,MAAM,+BAA+B,CAAA;AACjD,CAAA;AAEA,MAAM,WAAc,GAAA,WAAA;AAAA,EAClB,aAAA;AAAA,EACA;AACF,CAAA;AAEO,MAAM,WAAW,MAAO,CAAA;AAAA,EAC7B,WAAa,EAAA,GAAA;AAAA,EACb,UAAU,IAAK,CAAA;AAAA,IACb,EAAI,EAAA,WAAA;AAAA,IACJ,EAAI,EAAA,WAAA;AAAA,IACJ,EAAI,EAAA,WAAA;AAAA,IACJ,EAAI,EAAA,WAAA;AAAA,IACJ,EAAI,EAAA,WAAA;AAAA,IACJ,EAAI,EAAA,WAAA;AAAA,IACJ,EAAI,EAAA,WAAA;AAAA,IACJ,EAAI,EAAA,WAAA;AAAA,IACJ,EAAI,EAAA,WAAA;AAAA,IACJ,EAAI,EAAA,WAAA;AAAA,IACJ,GAAK,EAAA,WAAA;AAAA,IACL,GAAK,EAAA,WAAA;AAAA,IACL,GAAK,EAAA,WAAA;AAAA,IACL,GAAK,EAAA,WAAA;AAAA,IACL,GAAA;AAAA,IACA;AAAA,GACD;AACH,CAAC;AAED,MAAM,cAAc,KAAM,EAAA;AAC1B,MAAM,YAAA,GAAe,OAAO,WAAW,CAAA;AACvC,MAAM,iBAAA,GAAoB,KAAM,CAAA,OAAA,EAAS,WAAW,CAAA;AAEvC,MAAA,cAAA,GAAiB,CAC5B,KAC+B,KAAA;AAC/B,EAAI,IAAA;AACF,IAAO,OAAA,QAAA,CAAS,IAAI,KAAK,CAAA;AAAA,WAClB,CAAG,EAAA;AAAA;AAGZ,EAAI,IAAA;AACF,IAAA,OAAO,QAAS,CAAA,GAAA,CAAI,YAAa,CAAA,GAAA,CAAI,KAAK,CAAE,CAAA;AAAA,WACrC,CAAG,EAAA;AAAA;AAGZ,EAAI,IAAA;AACF,IAAA,OAAO,QAAS,CAAA,GAAA,CAAI,WAAY,CAAA,GAAA,CAAI,KAAK,CAAC,CAAA;AAAA,WACnC,CAAG,EAAA;AAAA;AAGZ,EAAI,IAAA;AACF,IAAA,OAAO,SAAS,GAAI,CAAA,iBAAA,CAAkB,IAAI,KAAK,CAAA,CAAE,CAAC,CAAC,CAAA;AAAA,WAC5C,CAAG,EAAA;AAAA;AAEZ,EAAM,MAAA,IAAA;AACR;;;;"}
1
+ {"version":3,"file":"metadata.mjs","sources":["../../../../src/codecs/metadata/metadata.ts"],"sourcesContent":["import {\n Bytes,\n type Codec,\n type CodecType,\n Enum,\n Option,\n Struct,\n Tuple,\n compact,\n createCodec,\n u32,\n} from \"scale-ts\"\nimport type { HexString } from \"../scale\"\nimport { v14 } from \"./v14\"\nimport { v15 } from \"./v15\"\nimport { v16 } from \"./v16\"\n\nconst unsupportedFn = () => {\n throw new Error(\"Unsupported metadata version!\")\n}\n\nconst unsupported = createCodec(\n unsupportedFn,\n unsupportedFn,\n) as unknown as Codec<unknown>\n\nexport const metadata = Struct({\n magicNumber: u32,\n metadata: Enum({\n v0: unsupported,\n v1: unsupported,\n v2: unsupported,\n v3: unsupported,\n v4: unsupported,\n v5: unsupported,\n v6: unsupported,\n v7: unsupported,\n v8: unsupported,\n v9: unsupported,\n v10: unsupported,\n v11: unsupported,\n v12: unsupported,\n v13: unsupported,\n v14,\n v15,\n v16,\n }),\n})\nexport type Metadata = CodecType<typeof metadata>\n\nconst opaqueBytes = Bytes()\nconst optionOpaque = Option(opaqueBytes)\nconst opaqueOpaqueBytes = Tuple(compact, opaqueBytes)\n\nexport const decAnyMetadata = (\n input: Uint8Array | HexString,\n): CodecType<typeof metadata> => {\n try {\n return metadata.dec(input)\n } catch (_) {}\n\n // comes from metadata.metadata_at_version\n try {\n return metadata.dec(optionOpaque.dec(input)!)\n } catch (_) {}\n\n // comes from state.getMetadata\n try {\n return metadata.dec(opaqueBytes.dec(input))\n } catch (_) {}\n\n // comes from metadata.metadata\n try {\n return metadata.dec(opaqueOpaqueBytes.dec(input)[1])\n } catch (_) {}\n\n throw null\n}\n"],"names":[],"mappings":";;;;;AAiBA,MAAM,gBAAgB,MAAM;AAC1B,EAAM,MAAA,IAAI,MAAM,+BAA+B,CAAA;AACjD,CAAA;AAEA,MAAM,WAAc,GAAA,WAAA;AAAA,EAClB,aAAA;AAAA,EACA;AACF,CAAA;AAEO,MAAM,WAAW,MAAO,CAAA;AAAA,EAC7B,WAAa,EAAA,GAAA;AAAA,EACb,UAAU,IAAK,CAAA;AAAA,IACb,EAAI,EAAA,WAAA;AAAA,IACJ,EAAI,EAAA,WAAA;AAAA,IACJ,EAAI,EAAA,WAAA;AAAA,IACJ,EAAI,EAAA,WAAA;AAAA,IACJ,EAAI,EAAA,WAAA;AAAA,IACJ,EAAI,EAAA,WAAA;AAAA,IACJ,EAAI,EAAA,WAAA;AAAA,IACJ,EAAI,EAAA,WAAA;AAAA,IACJ,EAAI,EAAA,WAAA;AAAA,IACJ,EAAI,EAAA,WAAA;AAAA,IACJ,GAAK,EAAA,WAAA;AAAA,IACL,GAAK,EAAA,WAAA;AAAA,IACL,GAAK,EAAA,WAAA;AAAA,IACL,GAAK,EAAA,WAAA;AAAA,IACL,GAAA;AAAA,IACA,GAAA;AAAA,IACA;AAAA,GACD;AACH,CAAC;AAGD,MAAM,cAAc,KAAM,EAAA;AAC1B,MAAM,YAAA,GAAe,OAAO,WAAW,CAAA;AACvC,MAAM,iBAAA,GAAoB,KAAM,CAAA,OAAA,EAAS,WAAW,CAAA;AAEvC,MAAA,cAAA,GAAiB,CAC5B,KAC+B,KAAA;AAC/B,EAAI,IAAA;AACF,IAAO,OAAA,QAAA,CAAS,IAAI,KAAK,CAAA;AAAA,WAClB,CAAG,EAAA;AAAA;AAGZ,EAAI,IAAA;AACF,IAAA,OAAO,QAAS,CAAA,GAAA,CAAI,YAAa,CAAA,GAAA,CAAI,KAAK,CAAE,CAAA;AAAA,WACrC,CAAG,EAAA;AAAA;AAGZ,EAAI,IAAA;AACF,IAAA,OAAO,QAAS,CAAA,GAAA,CAAI,WAAY,CAAA,GAAA,CAAI,KAAK,CAAC,CAAA;AAAA,WACnC,CAAG,EAAA;AAAA;AAGZ,EAAI,IAAA;AACF,IAAA,OAAO,SAAS,GAAI,CAAA,iBAAA,CAAkB,IAAI,KAAK,CAAA,CAAE,CAAC,CAAC,CAAA;AAAA,WAC5C,CAAG,EAAA;AAAA;AAEZ,EAAM,MAAA,IAAA;AACR;;;;"}
@@ -1,4 +1,4 @@
1
- import { Enum, _void, Vector, Struct, u8, str, Option } from 'scale-ts';
1
+ import { Enum, _void, Vector, Struct, Option, str, u8 } from 'scale-ts';
2
2
  import '../../utils/ss58-util.mjs';
3
3
  import '../scale/Binary.mjs';
4
4
  import '../scale/bitSequence.mjs';
@@ -10,6 +10,8 @@ import '../scale/Variant.mjs';
10
10
  import '../scale/ethAccount.mjs';
11
11
  import '../scale/shaped.mjs';
12
12
  import { docs } from './docs.mjs';
13
+ import { variantDeprecation, itemDeprecation } from './deprecation.mjs';
14
+ import { viewFunction } from './runtime-api.mjs';
13
15
 
14
16
  const hashType = Enum({
15
17
  Blake2128: _void,
@@ -26,7 +28,7 @@ const storageMap = Struct({
26
28
  key: compactNumber,
27
29
  value: compactNumber
28
30
  });
29
- const storageItem = Struct({
31
+ const storageItem = {
30
32
  name: str,
31
33
  modifier: u8,
32
34
  type: Enum({
@@ -35,18 +37,18 @@ const storageItem = Struct({
35
37
  }),
36
38
  fallback: Hex(),
37
39
  docs
38
- });
39
- const storage = Option(
40
- Struct({
41
- prefix: str,
42
- items: Vector(storageItem)
43
- })
44
- );
40
+ };
41
+ const enumRefV14 = Option(compactNumber);
45
42
  const v14Pallet = {
46
43
  name: str,
47
- storage,
48
- calls: Option(compactNumber),
49
- events: Option(compactNumber),
44
+ storage: Option(
45
+ Struct({
46
+ prefix: str,
47
+ items: Vector(Struct(storageItem))
48
+ })
49
+ ),
50
+ calls: enumRefV14,
51
+ events: enumRefV14,
50
52
  constants: Vector(
51
53
  Struct({
52
54
  name: str,
@@ -55,13 +57,53 @@ const v14Pallet = {
55
57
  docs
56
58
  })
57
59
  ),
58
- errors: Option(compactNumber),
60
+ errors: enumRefV14,
59
61
  index: u8
60
62
  };
61
63
  const v15Pallet = {
62
64
  ...v14Pallet,
63
65
  docs
64
66
  };
67
+ const enumRef = Option(
68
+ Struct({ type: compactNumber, deprecationInfo: variantDeprecation })
69
+ );
70
+ const v16Pallet = {
71
+ name: str,
72
+ storage: Option(
73
+ Struct({
74
+ prefix: str,
75
+ items: Vector(
76
+ Struct({
77
+ ...storageItem,
78
+ deprecationInfo: itemDeprecation
79
+ })
80
+ )
81
+ })
82
+ ),
83
+ calls: enumRef,
84
+ events: enumRef,
85
+ constants: Vector(
86
+ Struct({
87
+ name: str,
88
+ type: compactNumber,
89
+ value: Hex(),
90
+ docs,
91
+ deprecationInfo: itemDeprecation
92
+ })
93
+ ),
94
+ errors: enumRef,
95
+ associatedTypes: Vector(
96
+ Struct({
97
+ name: str,
98
+ type: compactNumber,
99
+ docs
100
+ })
101
+ ),
102
+ viewFns: Vector(viewFunction),
103
+ index: u8,
104
+ docs,
105
+ deprecationInfo: itemDeprecation
106
+ };
65
107
 
66
- export { v14Pallet, v15Pallet };
108
+ export { storageMap, v14Pallet, v15Pallet, v16Pallet };
67
109
  //# sourceMappingURL=pallets.mjs.map
@@ -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\"\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\nconst storageMap = Struct({\n hashers,\n key: compactNumber,\n value: compactNumber,\n})\n\nconst storageItem = Struct({\n name: str,\n modifier: u8,\n type: Enum({\n plain: compactNumber,\n map: storageMap,\n }),\n fallback: Hex(),\n docs,\n})\n\nconst storage = Option(\n Struct({\n prefix: str,\n items: Vector(storageItem),\n }),\n)\n\nexport const v14Pallet = {\n name: str,\n storage,\n calls: Option(compactNumber),\n events: Option(compactNumber),\n constants: Vector(\n Struct({\n name: str,\n type: compactNumber,\n value: Hex(),\n docs,\n }),\n ),\n errors: Option(compactNumber),\n index: u8,\n}\n\nexport const v15Pallet = {\n ...v14Pallet,\n docs,\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;AAIA,MAAM,WAAW,IAAK,CAAA;AAAA,EACpB,SAAW,EAAA,KAAA;AAAA,EACX,SAAW,EAAA,KAAA;AAAA,EACX,eAAiB,EAAA,KAAA;AAAA,EACjB,OAAS,EAAA,KAAA;AAAA,EACT,OAAS,EAAA,KAAA;AAAA,EACT,YAAc,EAAA,KAAA;AAAA,EACd,QAAU,EAAA;AACZ,CAAC,CAAA;AAED,MAAM,OAAA,GAAU,OAAO,QAAQ,CAAA;AAE/B,MAAM,aAAa,MAAO,CAAA;AAAA,EACxB,OAAA;AAAA,EACA,GAAK,EAAA,aAAA;AAAA,EACL,KAAO,EAAA;AACT,CAAC,CAAA;AAED,MAAM,cAAc,MAAO,CAAA;AAAA,EACzB,IAAM,EAAA,GAAA;AAAA,EACN,QAAU,EAAA,EAAA;AAAA,EACV,MAAM,IAAK,CAAA;AAAA,IACT,KAAO,EAAA,aAAA;AAAA,IACP,GAAK,EAAA;AAAA,GACN,CAAA;AAAA,EACD,UAAU,GAAI,EAAA;AAAA,EACd;AACF,CAAC,CAAA;AAED,MAAM,OAAU,GAAA,MAAA;AAAA,EACd,MAAO,CAAA;AAAA,IACL,MAAQ,EAAA,GAAA;AAAA,IACR,KAAA,EAAO,OAAO,WAAW;AAAA,GAC1B;AACH,CAAA;AAEO,MAAM,SAAY,GAAA;AAAA,EACvB,IAAM,EAAA,GAAA;AAAA,EACN,OAAA;AAAA,EACA,KAAA,EAAO,OAAO,aAAa,CAAA;AAAA,EAC3B,MAAA,EAAQ,OAAO,aAAa,CAAA;AAAA,EAC5B,SAAW,EAAA,MAAA;AAAA,IACT,MAAO,CAAA;AAAA,MACL,IAAM,EAAA,GAAA;AAAA,MACN,IAAM,EAAA,aAAA;AAAA,MACN,OAAO,GAAI,EAAA;AAAA,MACX;AAAA,KACD;AAAA,GACH;AAAA,EACA,MAAA,EAAQ,OAAO,aAAa,CAAA;AAAA,EAC5B,KAAO,EAAA;AACT;AAEO,MAAM,SAAY,GAAA;AAAA,EACvB,GAAG,SAAA;AAAA,EACH;AACF;;;;"}
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,IAAK,CAAA;AAAA,EACpB,SAAW,EAAA,KAAA;AAAA,EACX,SAAW,EAAA,KAAA;AAAA,EACX,eAAiB,EAAA,KAAA;AAAA,EACjB,OAAS,EAAA,KAAA;AAAA,EACT,OAAS,EAAA,KAAA;AAAA,EACT,YAAc,EAAA,KAAA;AAAA,EACd,QAAU,EAAA;AACZ,CAAC,CAAA;AAED,MAAM,OAAA,GAAU,OAAO,QAAQ,CAAA;AAExB,MAAM,aAAa,MAAO,CAAA;AAAA,EAC/B,OAAA;AAAA,EACA,GAAK,EAAA,aAAA;AAAA,EACL,KAAO,EAAA;AACT,CAAC;AAED,MAAM,WAAc,GAAA;AAAA,EAClB,IAAM,EAAA,GAAA;AAAA,EACN,QAAU,EAAA,EAAA;AAAA,EACV,MAAM,IAAK,CAAA;AAAA,IACT,KAAO,EAAA,aAAA;AAAA,IACP,GAAK,EAAA;AAAA,GACN,CAAA;AAAA,EACD,UAAU,GAAI,EAAA;AAAA,EACd;AACF,CAAA;AAEA,MAAM,UAAA,GAAa,OAAO,aAAa,CAAA;AAEhC,MAAM,SAAY,GAAA;AAAA,EACvB,IAAM,EAAA,GAAA;AAAA,EACN,OAAS,EAAA,MAAA;AAAA,IACP,MAAO,CAAA;AAAA,MACL,MAAQ,EAAA,GAAA;AAAA,MACR,KAAO,EAAA,MAAA,CAAO,MAAO,CAAA,WAAW,CAAC;AAAA,KAClC;AAAA,GACH;AAAA,EACA,KAAO,EAAA,UAAA;AAAA,EACP,MAAQ,EAAA,UAAA;AAAA,EACR,SAAW,EAAA,MAAA;AAAA,IACT,MAAO,CAAA;AAAA,MACL,IAAM,EAAA,GAAA;AAAA,MACN,IAAM,EAAA,aAAA;AAAA,MACN,OAAO,GAAI,EAAA;AAAA,MACX;AAAA,KACD;AAAA,GACH;AAAA,EACA,MAAQ,EAAA,UAAA;AAAA,EACR,KAAO,EAAA;AACT;AAEO,MAAM,SAAY,GAAA;AAAA,EACvB,GAAG,SAAA;AAAA,EACH;AACF;AAEA,MAAM,OAAU,GAAA,MAAA;AAAA,EACd,OAAO,EAAE,IAAA,EAAM,aAAe,EAAA,eAAA,EAAiB,oBAAoB;AACrE,CAAA;AAEO,MAAM,SAAY,GAAA;AAAA,EACvB,IAAM,EAAA,GAAA;AAAA,EACN,OAAS,EAAA,MAAA;AAAA,IACP,MAAO,CAAA;AAAA,MACL,MAAQ,EAAA,GAAA;AAAA,MACR,KAAO,EAAA,MAAA;AAAA,QACL,MAAO,CAAA;AAAA,UACL,GAAG,WAAA;AAAA,UACH,eAAiB,EAAA;AAAA,SAClB;AAAA;AACH,KACD;AAAA,GACH;AAAA,EACA,KAAO,EAAA,OAAA;AAAA,EACP,MAAQ,EAAA,OAAA;AAAA,EACR,SAAW,EAAA,MAAA;AAAA,IACT,MAAO,CAAA;AAAA,MACL,IAAM,EAAA,GAAA;AAAA,MACN,IAAM,EAAA,aAAA;AAAA,MACN,OAAO,GAAI,EAAA;AAAA,MACX,IAAA;AAAA,MACA,eAAiB,EAAA;AAAA,KAClB;AAAA,GACH;AAAA,EACA,MAAQ,EAAA,OAAA;AAAA,EACR,eAAiB,EAAA,MAAA;AAAA,IACf,MAAO,CAAA;AAAA,MACL,IAAM,EAAA,GAAA;AAAA,MACN,IAAM,EAAA,aAAA;AAAA,MACN;AAAA,KACD;AAAA,GACH;AAAA,EACA,OAAA,EAAS,OAAO,YAAY,CAAA;AAAA,EAC5B,KAAO,EAAA,EAAA;AAAA,EACP,IAAA;AAAA,EACA,eAAiB,EAAA;AACnB;;;;"}
@@ -1,33 +1,47 @@
1
- import { Struct, Vector, str } from 'scale-ts';
1
+ import { Vector, Struct, str } from 'scale-ts';
2
2
  import { docs } from './docs.mjs';
3
3
  import '../../utils/ss58-util.mjs';
4
4
  import '../scale/Binary.mjs';
5
5
  import '../scale/bitSequence.mjs';
6
6
  import '../scale/char.mjs';
7
7
  import { compactNumber } from '../scale/compact.mjs';
8
- import '../scale/Hex.mjs';
8
+ import { Hex } from '../scale/Hex.mjs';
9
9
  import '../scale/fixed-str.mjs';
10
10
  import '../scale/Variant.mjs';
11
11
  import '../scale/ethAccount.mjs';
12
12
  import '../scale/shaped.mjs';
13
+ import { itemDeprecation } from './deprecation.mjs';
13
14
 
14
- const runtimeApi = Struct({
15
+ const runtimeApiMethod = {
15
16
  name: str,
16
- methods: Vector(
17
+ inputs: Vector(
17
18
  Struct({
18
19
  name: str,
19
- inputs: Vector(
20
- Struct({
21
- name: str,
22
- type: compactNumber
23
- })
24
- ),
25
- output: compactNumber,
26
- docs
20
+ type: compactNumber
27
21
  })
28
22
  ),
23
+ output: compactNumber,
29
24
  docs
25
+ };
26
+ const runtimeApiV15 = Struct({
27
+ name: str,
28
+ methods: Vector(Struct(runtimeApiMethod)),
29
+ docs
30
+ });
31
+ const runtimeApi = Struct({
32
+ name: str,
33
+ methods: Vector(
34
+ Struct({ ...runtimeApiMethod, deprecationInfo: itemDeprecation })
35
+ ),
36
+ docs,
37
+ version: compactNumber,
38
+ deprecationInfo: itemDeprecation
39
+ });
40
+ const viewFunction = Struct({
41
+ id: Hex(32),
42
+ ...runtimeApiMethod,
43
+ deprecationInfo: itemDeprecation
30
44
  });
31
45
 
32
- export { runtimeApi };
46
+ export { runtimeApi, runtimeApiMethod, runtimeApiV15, viewFunction };
33
47
  //# sourceMappingURL=runtime-api.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-api.mjs","sources":["../../../../src/codecs/metadata/runtime-api.ts"],"sourcesContent":["import { Struct, Vector, str } from \"scale-ts\"\nimport { docs } from \"./docs\"\nimport { compactNumber as ty } from \"../scale\"\n\nexport const runtimeApi = Struct({\n name: str,\n methods: Vector(\n Struct({\n name: str,\n inputs: Vector(\n Struct({\n name: str,\n type: ty,\n }),\n ),\n output: ty,\n docs,\n }),\n ),\n docs,\n})\n"],"names":["ty"],"mappings":";;;;;;;;;;;;;AAIO,MAAM,aAAa,MAAO,CAAA;AAAA,EAC/B,IAAM,EAAA,GAAA;AAAA,EACN,OAAS,EAAA,MAAA;AAAA,IACP,MAAO,CAAA;AAAA,MACL,IAAM,EAAA,GAAA;AAAA,MACN,MAAQ,EAAA,MAAA;AAAA,QACN,MAAO,CAAA;AAAA,UACL,IAAM,EAAA,GAAA;AAAA,UACN,IAAM,EAAAA;AAAA,SACP;AAAA,OACH;AAAA,MACA,MAAQ,EAAAA,aAAA;AAAA,MACR;AAAA,KACD;AAAA,GACH;AAAA,EACA;AACF,CAAC;;;;"}
1
+ {"version":3,"file":"runtime-api.mjs","sources":["../../../../src/codecs/metadata/runtime-api.ts"],"sourcesContent":["import { Struct, Vector, str } from \"scale-ts\"\nimport { docs } from \"./docs\"\nimport { compactNumber, Hex, compactNumber as ty } from \"../scale\"\nimport { itemDeprecation } from \"./deprecation\"\n\nexport const runtimeApiMethod = {\n name: str,\n inputs: Vector(\n Struct({\n name: str,\n type: ty,\n }),\n ),\n output: ty,\n docs,\n}\n\nexport const runtimeApiV15 = Struct({\n name: str,\n methods: Vector(Struct(runtimeApiMethod)),\n docs,\n})\n\nexport const runtimeApi = Struct({\n name: str,\n methods: Vector(\n Struct({ ...runtimeApiMethod, deprecationInfo: itemDeprecation }),\n ),\n docs,\n version: compactNumber,\n deprecationInfo: itemDeprecation,\n})\n\nexport const viewFunction = Struct({\n id: Hex(32),\n ...runtimeApiMethod,\n deprecationInfo: itemDeprecation,\n})\n"],"names":["ty"],"mappings":";;;;;;;;;;;;;;AAKO,MAAM,gBAAmB,GAAA;AAAA,EAC9B,IAAM,EAAA,GAAA;AAAA,EACN,MAAQ,EAAA,MAAA;AAAA,IACN,MAAO,CAAA;AAAA,MACL,IAAM,EAAA,GAAA;AAAA,MACN,IAAM,EAAAA;AAAA,KACP;AAAA,GACH;AAAA,EACA,MAAQ,EAAAA,aAAA;AAAA,EACR;AACF;AAEO,MAAM,gBAAgB,MAAO,CAAA;AAAA,EAClC,IAAM,EAAA,GAAA;AAAA,EACN,OAAS,EAAA,MAAA,CAAO,MAAO,CAAA,gBAAgB,CAAC,CAAA;AAAA,EACxC;AACF,CAAC;AAEM,MAAM,aAAa,MAAO,CAAA;AAAA,EAC/B,IAAM,EAAA,GAAA;AAAA,EACN,OAAS,EAAA,MAAA;AAAA,IACP,OAAO,EAAE,GAAG,gBAAkB,EAAA,eAAA,EAAiB,iBAAiB;AAAA,GAClE;AAAA,EACA,IAAA;AAAA,EACA,OAAS,EAAA,aAAA;AAAA,EACT,eAAiB,EAAA;AACnB,CAAC;AAEM,MAAM,eAAe,MAAO,CAAA;AAAA,EACjC,EAAA,EAAI,IAAI,EAAE,CAAA;AAAA,EACV,GAAG,gBAAA;AAAA,EACH,eAAiB,EAAA;AACnB,CAAC;;;;"}
@@ -0,0 +1,48 @@
1
+ const unifyMetadata = (metadata) => {
2
+ if ("magicNumber" in metadata) metadata = metadata.metadata;
3
+ if ("tag" in metadata) {
4
+ if (metadata.tag !== "v14" && metadata.tag !== "v15" && metadata.tag !== "v16")
5
+ throw new Error("Only metadata 14, 15, and 16 are supported");
6
+ metadata = metadata.value;
7
+ }
8
+ if ("signedExtensionsByVersion" in metadata.extrinsic) {
9
+ return { version: 16, ...metadata };
10
+ }
11
+ if ("custom" in metadata) {
12
+ const { lookup: lookup2, extrinsic: extrinsic2, custom, apis, pallets: pallets2, outerEnums } = metadata;
13
+ return {
14
+ version: 15,
15
+ lookup: lookup2,
16
+ pallets: pallets2.map((p) => ({
17
+ ...p,
18
+ calls: p.calls != null ? { type: p.calls } : void 0,
19
+ events: p.events != null ? { type: p.events } : void 0,
20
+ errors: p.errors != null ? { type: p.errors } : void 0,
21
+ viewFns: [],
22
+ associatedTypes: []
23
+ })),
24
+ extrinsic: { ...extrinsic2, version: [extrinsic2.version] },
25
+ apis,
26
+ outerEnums,
27
+ custom
28
+ };
29
+ }
30
+ const { lookup, extrinsic, pallets } = metadata;
31
+ return {
32
+ version: 14,
33
+ lookup,
34
+ pallets: pallets.map((p) => ({
35
+ ...p,
36
+ calls: p.calls != null ? { type: p.calls } : void 0,
37
+ events: p.events != null ? { type: p.events } : void 0,
38
+ errors: p.errors != null ? { type: p.errors } : void 0,
39
+ viewFns: [],
40
+ associatedTypes: []
41
+ })),
42
+ extrinsic: { ...extrinsic, version: [extrinsic.version] },
43
+ apis: []
44
+ };
45
+ };
46
+
47
+ export { unifyMetadata };
48
+ //# sourceMappingURL=unified.mjs.map
@@ -0,0 +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 identifier: string\n type: number\n additionalSigned: number\n }>\n } & (T extends 14\n ? {\n type: number\n }\n : { address: number; call: number; signature: number }) &\n (T extends 16\n ? { signedExtensionsByVersion: Array<[number, number[]]> }\n : {})\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 return { version: 16, ...(metadata as V16) }\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: { ...extrinsic, version: [extrinsic.version] },\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: { ...extrinsic, version: [extrinsic.version] },\n apis: [],\n }\n}\n"],"names":["lookup","extrinsic","pallets"],"mappings":"AAuGa,MAAA,aAAA,GAAgB,CAC3B,QACoB,KAAA;AAEpB,EAAI,IAAA,aAAA,IAAiB,QAAU,EAAA,QAAA,GAAW,QAAS,CAAA,QAAA;AACnD,EAAA,IAAI,SAAS,QAAU,EAAA;AACrB,IAAA,IACE,SAAS,GAAQ,KAAA,KAAA,IACjB,SAAS,GAAQ,KAAA,KAAA,IACjB,SAAS,GAAQ,KAAA,KAAA;AAEjB,MAAM,MAAA,IAAI,MAAM,4CAA4C,CAAA;AAC9D,IAAA,QAAA,GAAW,QAAS,CAAA,KAAA;AAAA;AAItB,EAAI,IAAA,2BAAA,IAA+B,SAAS,SAAW,EAAA;AACrD,IAAA,OAAO,EAAE,OAAA,EAAS,EAAI,EAAA,GAAI,QAAiB,EAAA;AAAA;AAG7C,EAAA,IAAI,YAAY,QAAU,EAAA;AACxB,IAAM,MAAA,EAAE,MAAAA,EAAAA,OAAAA,EAAQ,SAAAC,EAAAA,UAAAA,EAAW,QAAQ,IAAM,EAAA,OAAA,EAAAC,QAAS,EAAA,UAAA,EAChD,GAAA,QAAA;AAEF,IAAO,OAAA;AAAA,MACL,OAAS,EAAA,EAAA;AAAA,MACT,MAAAF,EAAAA,OAAAA;AAAA,MACA,OAASE,EAAAA,QAAAA,CAAQ,GAAI,CAAA,CAAC,CAA+C,MAAA;AAAA,QACnE,GAAG,CAAA;AAAA,QACH,KAAA,EAAO,EAAE,KAAS,IAAA,IAAA,GAAO,EAAE,IAAM,EAAA,CAAA,CAAE,OAAU,GAAA,MAAA;AAAA,QAC7C,MAAA,EAAQ,EAAE,MAAU,IAAA,IAAA,GAAO,EAAE,IAAM,EAAA,CAAA,CAAE,QAAW,GAAA,MAAA;AAAA,QAChD,MAAA,EAAQ,EAAE,MAAU,IAAA,IAAA,GAAO,EAAE,IAAM,EAAA,CAAA,CAAE,QAAW,GAAA,MAAA;AAAA,QAChD,SAAS,EAAC;AAAA,QACV,iBAAiB;AAAC,OAClB,CAAA,CAAA;AAAA,MACF,SAAA,EAAW,EAAE,GAAGD,UAAAA,EAAW,SAAS,CAACA,UAAAA,CAAU,OAAO,CAAE,EAAA;AAAA,MACxD,IAAA;AAAA,MACA,UAAA;AAAA,MACA;AAAA,KACF;AAAA;AAGF,EAAA,MAAM,EAAE,MAAA,EAAQ,SAAW,EAAA,OAAA,EAAY,GAAA,QAAA;AACvC,EAAO,OAAA;AAAA,IACL,OAAS,EAAA,EAAA;AAAA,IACT,MAAA;AAAA,IACA,OAAS,EAAA,OAAA,CAAQ,GAAI,CAAA,CAAC,CAA+C,MAAA;AAAA,MACnE,GAAG,CAAA;AAAA,MACH,KAAA,EAAO,EAAE,KAAS,IAAA,IAAA,GAAO,EAAE,IAAM,EAAA,CAAA,CAAE,OAAU,GAAA,MAAA;AAAA,MAC7C,MAAA,EAAQ,EAAE,MAAU,IAAA,IAAA,GAAO,EAAE,IAAM,EAAA,CAAA,CAAE,QAAW,GAAA,MAAA;AAAA,MAChD,MAAA,EAAQ,EAAE,MAAU,IAAA,IAAA,GAAO,EAAE,IAAM,EAAA,CAAA,CAAE,QAAW,GAAA,MAAA;AAAA,MAChD,SAAS,EAAC;AAAA,MACV,iBAAiB;AAAC,KAClB,CAAA,CAAA;AAAA,IACF,SAAA,EAAW,EAAE,GAAG,SAAA,EAAW,SAAS,CAAC,SAAA,CAAU,OAAO,CAAE,EAAA;AAAA,IACxD,MAAM;AAAC,GACT;AACF;;;;"}
@@ -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})\nexport type V14Extrinsic = CodecType<typeof extrinsic>\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,UAAW,EAAA;AAC7B,MAAM,MAAA,GAAS,CAAI,KACjB,KAAA,WAAA;AAAA,EACE,MAAM,KAAA;AAAA,EACN,MAAM;AACR,CAAA;AAEF,MAAM,YAAY,MAAO,CAAA;AAAA,EACvB,IAAM,EAAA,aAAA;AAAA,EACN,OAAS,EAAA,EAAA;AAAA,EACT,gBAAkB,EAAA,MAAA;AAAA,IAChB,MAAO,CAAA;AAAA,MACL,UAAY,EAAA,GAAA;AAAA,MACZ,IAAM,EAAA,aAAA;AAAA,MACN,gBAAkB,EAAA;AAAA,KACnB;AAAA;AAEL,CAAC,CAAA;AAGM,MAAM,MAAM,MAAO,CAAA;AAAA,EACxB,MAAA;AAAA,EACA,OAAS,EAAA,MAAA,CAAO,MAAO,CAAA,EAAE,GAAG,SAAA,EAAW,IAAM,EAAA,MAAA,CAAO,EAAc,CAAE,EAAC,CAAC,CAAA;AAAA,EACtE,SAAA;AAAA,EACA,IAAM,EAAA,aAAA;AAAA,EACN,IAAA,EAAM,MAAO,CAAA,EAAyC;AACxD,CAAC;;;;"}
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,UAAW,EAAA;AAC7B,MAAM,MAAA,GAAS,CAAI,KACjB,KAAA,WAAA;AAAA,EACE,MAAM,KAAA;AAAA,EACN,MAAM;AACR,CAAA;AAEF,MAAM,YAAY,MAAO,CAAA;AAAA,EACvB,IAAM,EAAA,aAAA;AAAA,EACN,OAAS,EAAA,EAAA;AAAA,EACT,gBAAkB,EAAA,MAAA;AAAA,IAChB,MAAO,CAAA;AAAA,MACL,UAAY,EAAA,GAAA;AAAA,MACZ,IAAM,EAAA,aAAA;AAAA,MACN,gBAAkB,EAAA;AAAA,KACnB;AAAA;AAEL,CAAC,CAAA;AAEM,MAAM,MAAM,MAAO,CAAA;AAAA,EACxB,MAAA;AAAA,EACA,OAAS,EAAA,MAAA,CAAO,MAAO,CAAA,EAAE,GAAG,SAAA,EAAW,IAAM,EAAA,MAAA,CAAO,EAAc,CAAE,EAAC,CAAC,CAAA;AAAA,EACtE,SAAA;AAAA,EACA,IAAM,EAAA,aAAA;AAAA,EACN,IAAA,EAAM,MAAO,CAAA,EAAyC;AACxD,CAAC;;;;"}
@@ -11,7 +11,7 @@ import '../scale/fixed-str.mjs';
11
11
  import '../scale/Variant.mjs';
12
12
  import '../scale/ethAccount.mjs';
13
13
  import '../scale/shaped.mjs';
14
- import { runtimeApi } from './runtime-api.mjs';
14
+ import { runtimeApiV15 } from './runtime-api.mjs';
15
15
 
16
16
  const extrinsic = Struct({
17
17
  version: u8,
@@ -32,7 +32,7 @@ const v15 = Struct({
32
32
  pallets: Vector(Struct(v15Pallet)),
33
33
  extrinsic,
34
34
  type: compactNumber,
35
- apis: Vector(runtimeApi),
35
+ apis: Vector(runtimeApiV15),
36
36
  outerEnums: Struct({
37
37
  call: compactNumber,
38
38
  event: compactNumber,
@@ -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 { runtimeApi } from \"./runtime-api\"\nexport type { V14Lookup } from \"./lookup\"\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})\nexport type V15Extrinsic = CodecType<typeof extrinsic>\n\nexport const v15 = Struct({\n lookup,\n pallets: Vector(Struct(v15Pallet)),\n extrinsic,\n type: ty,\n apis: Vector(runtimeApi),\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":";;;;;;;;;;;;;;;AAOA,MAAM,YAAY,MAAO,CAAA;AAAA,EACvB,OAAS,EAAA,EAAA;AAAA,EACT,OAAS,EAAAA,aAAA;AAAA,EACT,IAAM,EAAAA,aAAA;AAAA,EACN,SAAW,EAAAA,aAAA;AAAA,EACX,KAAO,EAAAA,aAAA;AAAA,EACP,gBAAkB,EAAA,MAAA;AAAA,IAChB,MAAO,CAAA;AAAA,MACL,UAAY,EAAA,GAAA;AAAA,MACZ,IAAM,EAAAA,aAAA;AAAA,MACN,gBAAkB,EAAAA;AAAA,KACnB;AAAA;AAEL,CAAC,CAAA;AAGM,MAAM,MAAM,MAAO,CAAA;AAAA,EACxB,MAAA;AAAA,EACA,OAAS,EAAA,MAAA,CAAO,MAAO,CAAA,SAAS,CAAC,CAAA;AAAA,EACjC,SAAA;AAAA,EACA,IAAM,EAAAA,aAAA;AAAA,EACN,IAAA,EAAM,OAAO,UAAU,CAAA;AAAA,EACvB,YAAY,MAAO,CAAA;AAAA,IACjB,IAAM,EAAAA,aAAA;AAAA,IACN,KAAO,EAAAA,aAAA;AAAA,IACP,KAAO,EAAAA;AAAA,GACR,CAAA;AAAA,EACD,MAAQ,EAAA,MAAA,CAAO,KAAM,CAAA,GAAA,EAAK,MAAO,CAAA,EAAE,IAAM,EAAAA,aAAA,EAAI,KAAO,EAAA,GAAA,EAAM,EAAC,CAAC,CAAC;AAC/D,CAAC;;;;"}
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,MAAM,YAAY,MAAO,CAAA;AAAA,EACvB,OAAS,EAAA,EAAA;AAAA,EACT,OAAS,EAAAA,aAAA;AAAA,EACT,IAAM,EAAAA,aAAA;AAAA,EACN,SAAW,EAAAA,aAAA;AAAA,EACX,KAAO,EAAAA,aAAA;AAAA,EACP,gBAAkB,EAAA,MAAA;AAAA,IAChB,MAAO,CAAA;AAAA,MACL,UAAY,EAAA,GAAA;AAAA,MACZ,IAAM,EAAAA,aAAA;AAAA,MACN,gBAAkB,EAAAA;AAAA,KACnB;AAAA;AAEL,CAAC,CAAA;AAEM,MAAM,MAAM,MAAO,CAAA;AAAA,EACxB,MAAA;AAAA,EACA,OAAS,EAAA,MAAA,CAAO,MAAO,CAAA,SAAS,CAAC,CAAA;AAAA,EACjC,SAAA;AAAA,EACA,IAAM,EAAAA,aAAA;AAAA,EACN,IAAA,EAAM,OAAO,aAAa,CAAA;AAAA,EAC1B,YAAY,MAAO,CAAA;AAAA,IACjB,IAAM,EAAAA,aAAA;AAAA,IACN,KAAO,EAAAA,aAAA;AAAA,IACP,KAAO,EAAAA;AAAA,GACR,CAAA;AAAA,EACD,MAAQ,EAAA,MAAA,CAAO,KAAM,CAAA,GAAA,EAAK,MAAO,CAAA,EAAE,IAAM,EAAAA,aAAA,EAAI,KAAO,EAAA,GAAA,EAAM,EAAC,CAAC,CAAC;AAC/D,CAAC;;;;"}
@@ -0,0 +1,44 @@
1
+ import { Struct, Vector, str, Tuple, u8 } from 'scale-ts';
2
+ import { lookup } from './lookup.mjs';
3
+ import { v16Pallet } from './pallets.mjs';
4
+ import '../../utils/ss58-util.mjs';
5
+ import '../scale/Binary.mjs';
6
+ import '../scale/bitSequence.mjs';
7
+ import '../scale/char.mjs';
8
+ import { compactNumber } from '../scale/compact.mjs';
9
+ import { Hex } from '../scale/Hex.mjs';
10
+ import '../scale/fixed-str.mjs';
11
+ import '../scale/Variant.mjs';
12
+ import '../scale/ethAccount.mjs';
13
+ import '../scale/shaped.mjs';
14
+ import { runtimeApi } from './runtime-api.mjs';
15
+
16
+ const extrinsic = Struct({
17
+ version: Vector(u8),
18
+ address: compactNumber,
19
+ call: compactNumber,
20
+ signature: compactNumber,
21
+ signedExtensionsByVersion: Vector(Tuple(u8, Vector(compactNumber))),
22
+ signedExtensions: Vector(
23
+ Struct({
24
+ identifier: str,
25
+ type: compactNumber,
26
+ additionalSigned: compactNumber
27
+ })
28
+ )
29
+ });
30
+ const v16 = Struct({
31
+ lookup,
32
+ pallets: Vector(Struct(v16Pallet)),
33
+ extrinsic,
34
+ apis: Vector(runtimeApi),
35
+ outerEnums: Struct({
36
+ call: compactNumber,
37
+ event: compactNumber,
38
+ error: compactNumber
39
+ }),
40
+ custom: Vector(Tuple(str, Struct({ type: compactNumber, value: Hex() })))
41
+ });
42
+
43
+ export { v16 };
44
+ //# sourceMappingURL=v16.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"v16.mjs","sources":["../../../../src/codecs/metadata/v16.ts"],"sourcesContent":["import { CodecType, Struct, Tuple, Vector, str, u8 } from \"scale-ts\"\nimport { lookup } from \"./lookup\"\nimport { v16Pallet } from \"./pallets\"\nimport { compactNumber, Hex, compactNumber as ty } from \"../scale\"\nimport { runtimeApi } from \"./runtime-api\"\n\nconst extrinsic = Struct({\n version: Vector(u8),\n address: ty,\n call: ty,\n signature: ty,\n signedExtensionsByVersion: Vector(Tuple(u8, Vector(compactNumber))),\n signedExtensions: Vector(\n Struct({\n identifier: str,\n type: ty,\n additionalSigned: ty,\n }),\n ),\n})\n\nexport const v16 = Struct({\n lookup,\n pallets: Vector(Struct(v16Pallet)),\n extrinsic,\n apis: Vector(runtimeApi),\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 V16 = CodecType<typeof v16>\n"],"names":["ty"],"mappings":";;;;;;;;;;;;;;;AAMA,MAAM,YAAY,MAAO,CAAA;AAAA,EACvB,OAAA,EAAS,OAAO,EAAE,CAAA;AAAA,EAClB,OAAS,EAAAA,aAAA;AAAA,EACT,IAAM,EAAAA,aAAA;AAAA,EACN,SAAW,EAAAA,aAAA;AAAA,EACX,2BAA2B,MAAO,CAAA,KAAA,CAAM,IAAI,MAAO,CAAA,aAAa,CAAC,CAAC,CAAA;AAAA,EAClE,gBAAkB,EAAA,MAAA;AAAA,IAChB,MAAO,CAAA;AAAA,MACL,UAAY,EAAA,GAAA;AAAA,MACZ,IAAM,EAAAA,aAAA;AAAA,MACN,gBAAkB,EAAAA;AAAA,KACnB;AAAA;AAEL,CAAC,CAAA;AAEM,MAAM,MAAM,MAAO,CAAA;AAAA,EACxB,MAAA;AAAA,EACA,OAAS,EAAA,MAAA,CAAO,MAAO,CAAA,SAAS,CAAC,CAAA;AAAA,EACjC,SAAA;AAAA,EACA,IAAA,EAAM,OAAO,UAAU,CAAA;AAAA,EACvB,YAAY,MAAO,CAAA;AAAA,IACjB,IAAM,EAAAA,aAAA;AAAA,IACN,KAAO,EAAAA,aAAA;AAAA,IACP,KAAO,EAAAA;AAAA,GACR,CAAA;AAAA,EACD,MAAQ,EAAA,MAAA,CAAO,KAAM,CAAA,GAAA,EAAK,MAAO,CAAA,EAAE,IAAM,EAAAA,aAAA,EAAI,KAAO,EAAA,GAAA,EAAM,EAAC,CAAC,CAAC;AAC/D,CAAC;;;;"}
@@ -27,10 +27,10 @@ class Binary {
27
27
  __publicField(this, "asHex", () => __privateGet(this, _hex) || __privateSet(this, _hex, toHex(__privateGet(this, _bytes))));
28
28
  __publicField(this, "asOpaqueHex", () => __privateGet(this, _opaqueHex) || __privateSet(this, _opaqueHex, toHex(this.asBytes())));
29
29
  __publicField(this, "asBytes", () => __privateGet(this, _bytes));
30
- __publicField(this, "asOpaqueBytes", () => __privateGet(this, _opaqueBytes) || __privateSet(this, _opaqueBytes, mergeUint8(
31
- compact[0](__privateGet(this, _bytes).length),
32
- __privateGet(this, _bytes)
33
- )));
30
+ __publicField(this, "asOpaqueBytes", () => __privateGet(this, _opaqueBytes) || __privateSet(this, _opaqueBytes, mergeUint8([
31
+ __privateGet(this, _bytes),
32
+ compact[0](__privateGet(this, _bytes).length)
33
+ ])));
34
34
  if (opaque) {
35
35
  try {
36
36
  const [len, bytes] = opaqueBytesDec(data);
@@ -1 +1 @@
1
- {"version":3,"file":"Binary.mjs","sources":["../../../../src/codecs/scale/Binary.ts"],"sourcesContent":["import {\n Bytes,\n Codec,\n Decoder,\n Encoder,\n Tuple,\n compact,\n createCodec,\n} from \"scale-ts\"\nimport { fromHex, mergeUint8, toHex } from \"@polkadot-api/utils\"\nimport type { HexString } from \"./Hex\"\nimport { SS58String } from \"@/utils\"\nimport { AccountId } from \"./AccountId\"\n\nconst textEncoder = new TextEncoder()\nconst textDecoder = new TextDecoder()\nconst opaqueBytesDec = Tuple(compact, Bytes(Infinity))[1]\n\nexport class Binary {\n #bytes: Uint8Array\n #opaqueBytes: Uint8Array | null = null\n #hex: HexString | null = null\n #opaqueHex: HexString | null = null\n #str: string | null = null\n\n constructor(data: Uint8Array, opaque = false) {\n if (opaque) {\n try {\n const [len, bytes] = opaqueBytesDec(data)\n if (len === bytes.length) {\n this.#bytes = bytes\n this.#opaqueBytes = data\n return\n }\n } catch (_) {}\n throw new Error(\"Invalid opaque bytes\")\n } else this.#bytes = data\n }\n\n asText = () => (this.#str ??= textDecoder.decode(this.#bytes))\n\n asHex = () => (this.#hex ||= toHex(this.#bytes))\n asOpaqueHex = () => (this.#opaqueHex ||= toHex(this.asBytes()))\n\n asBytes = () => this.#bytes\n asOpaqueBytes = () =>\n (this.#opaqueBytes ||= mergeUint8(\n compact[0](this.#bytes.length),\n this.#bytes,\n ))\n\n static fromText(input: string): Binary {\n return new this(textEncoder.encode(input))\n }\n\n static fromHex(input: HexString): Binary {\n return new this(fromHex(input))\n }\n static fromOpaqueHex(input: HexString): Binary {\n return new this(fromHex(input), true)\n }\n\n static fromBytes(input: Uint8Array): Binary {\n return new this(input)\n }\n static fromOpaqueBytes(input: Uint8Array): Binary {\n return new this(input, true)\n }\n}\n\nconst [accountIdEncoder] = AccountId()\nexport class FixedSizeBinary<_L extends number> extends Binary {\n constructor(data: Uint8Array) {\n super(data)\n }\n\n static fromArray<L extends number, I extends Array<number> & { length: L }>(\n input: I,\n ) {\n return new this<L>(new Uint8Array(input))\n }\n\n static fromAccountId32<L extends number>(\n input: L extends 32 ? SS58String : never,\n ) {\n return new this<L>(accountIdEncoder(input))\n }\n}\n\nconst enc = (nBytes?: number): Encoder<Binary> => {\n const _enc = Bytes.enc(nBytes)\n return (value) => _enc(value.asBytes())\n}\n\nconst dec = (nBytes?: number): Decoder<Binary> => {\n const _dec = Bytes.dec(nBytes)\n const Bin = nBytes == null ? Binary : FixedSizeBinary\n return (value) => Bin.fromBytes(_dec(value))\n}\n\nexport const Bin = (nBytes?: number): Codec<Binary> =>\n createCodec(enc(nBytes), dec(nBytes))\n\nBin.enc = enc\nBin.dec = dec\n"],"names":["Bin"],"mappings":"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"}
1
+ {"version":3,"file":"Binary.mjs","sources":["../../../../src/codecs/scale/Binary.ts"],"sourcesContent":["import {\n Bytes,\n Codec,\n Decoder,\n Encoder,\n Tuple,\n compact,\n createCodec,\n} from \"scale-ts\"\nimport { fromHex, mergeUint8, toHex } from \"@polkadot-api/utils\"\nimport type { HexString } from \"./Hex\"\nimport { SS58String } from \"@/utils\"\nimport { AccountId } from \"./AccountId\"\n\nconst textEncoder = new TextEncoder()\nconst textDecoder = new TextDecoder()\nconst opaqueBytesDec = Tuple(compact, Bytes(Infinity))[1]\n\nexport class Binary {\n #bytes: Uint8Array\n #opaqueBytes: Uint8Array | null = null\n #hex: HexString | null = null\n #opaqueHex: HexString | null = null\n #str: string | null = null\n\n constructor(data: Uint8Array, opaque = false) {\n if (opaque) {\n try {\n const [len, bytes] = opaqueBytesDec(data)\n if (len === bytes.length) {\n this.#bytes = bytes\n this.#opaqueBytes = data\n return\n }\n } catch (_) {}\n throw new Error(\"Invalid opaque bytes\")\n } else this.#bytes = data\n }\n\n asText = () => (this.#str ??= textDecoder.decode(this.#bytes))\n\n asHex = () => (this.#hex ||= toHex(this.#bytes))\n asOpaqueHex = () => (this.#opaqueHex ||= toHex(this.asBytes()))\n\n asBytes = () => this.#bytes\n asOpaqueBytes = () =>\n (this.#opaqueBytes ||= mergeUint8([\n this.#bytes,\n compact[0](this.#bytes.length),\n ]))\n\n static fromText(input: string): Binary {\n return new this(textEncoder.encode(input))\n }\n\n static fromHex(input: HexString): Binary {\n return new this(fromHex(input))\n }\n static fromOpaqueHex(input: HexString): Binary {\n return new this(fromHex(input), true)\n }\n\n static fromBytes(input: Uint8Array): Binary {\n return new this(input)\n }\n static fromOpaqueBytes(input: Uint8Array): Binary {\n return new this(input, true)\n }\n}\n\nconst [accountIdEncoder] = AccountId()\nexport class FixedSizeBinary<_L extends number> extends Binary {\n constructor(data: Uint8Array) {\n super(data)\n }\n\n static fromArray<L extends number, I extends Array<number> & { length: L }>(\n input: I,\n ) {\n return new this<L>(new Uint8Array(input))\n }\n\n static fromAccountId32<L extends number>(\n input: L extends 32 ? SS58String : never,\n ) {\n return new this<L>(accountIdEncoder(input))\n }\n}\n\nconst enc = (nBytes?: number): Encoder<Binary> => {\n const _enc = Bytes.enc(nBytes)\n return (value) => _enc(value.asBytes())\n}\n\nconst dec = (nBytes?: number): Decoder<Binary> => {\n const _dec = Bytes.dec(nBytes)\n const Bin = nBytes == null ? Binary : FixedSizeBinary\n return (value) => Bin.fromBytes(_dec(value))\n}\n\nexport const Bin = (nBytes?: number): Codec<Binary> =>\n createCodec(enc(nBytes), dec(nBytes))\n\nBin.enc = enc\nBin.dec = dec\n"],"names":["Bin"],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import { enhanceCodec, u8 } from 'scale-ts';
2
+
3
+ const TYPES = {
4
+ bare: 0,
5
+ 0: "bare",
6
+ general: 1,
7
+ 1: "general",
8
+ signed: 2,
9
+ 2: "signed"
10
+ };
11
+ const extrinsicFormat = enhanceCodec(
12
+ u8,
13
+ ({ version, type }) => version + (TYPES[type] << 6),
14
+ (v) => {
15
+ const version = v & 63;
16
+ const type = v >> 6;
17
+ if (version === 4 && (type === TYPES.bare || type === TYPES.signed))
18
+ return { version, type: TYPES[type] };
19
+ if (version === 5 && (type === TYPES.bare || type === TYPES.general))
20
+ return { version, type: TYPES[type] };
21
+ throw new Error(`ExtrinsicFormat ${v} not valid`);
22
+ }
23
+ );
24
+
25
+ export { extrinsicFormat };
26
+ //# sourceMappingURL=extrinsic-format.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extrinsic-format.mjs","sources":["../../../src/extrinsics/extrinsic-format.ts"],"sourcesContent":["import { enhanceCodec, u8 } from \"scale-ts\"\n\nconst TYPES = {\n bare: 0b00,\n 0b00: \"bare\",\n general: 0b01,\n 0b01: \"general\",\n signed: 0b10,\n 0b10: \"signed\",\n} as const\n\nexport type ExtrinsicFormat =\n | { version: 4; type: \"bare\" | \"signed\" }\n | { version: 5; type: \"bare\" | \"general\" }\n\nexport const extrinsicFormat = enhanceCodec<number, ExtrinsicFormat>(\n u8,\n ({ version, type }) => version + (TYPES[type] << 6),\n (v) => {\n const version = v & 0x3f // 0b0011_1111\n const type = v >> 6\n if (version === 4 && (type === TYPES.bare || type === TYPES.signed))\n return { version, type: TYPES[type] }\n if (version === 5 && (type === TYPES.bare || type === TYPES.general))\n return { version, type: TYPES[type] }\n throw new Error(`ExtrinsicFormat ${v} not valid`)\n },\n)\n"],"names":[],"mappings":";;AAEA,MAAM,KAAQ,GAAA;AAAA,EACZ,IAAM,EAAA,CAAA;AAAA,EACN,CAAM,EAAA,MAAA;AAAA,EACN,OAAS,EAAA,CAAA;AAAA,EACT,CAAM,EAAA,SAAA;AAAA,EACN,MAAQ,EAAA,CAAA;AAAA,EACR,CAAM,EAAA;AACR,CAAA;AAMO,MAAM,eAAkB,GAAA,YAAA;AAAA,EAC7B,EAAA;AAAA,EACA,CAAC,EAAE,OAAS,EAAA,IAAA,OAAW,OAAW,IAAA,KAAA,CAAM,IAAI,CAAK,IAAA,CAAA,CAAA;AAAA,EACjD,CAAC,CAAM,KAAA;AACL,IAAA,MAAM,UAAU,CAAI,GAAA,EAAA;AACpB,IAAA,MAAM,OAAO,CAAK,IAAA,CAAA;AAClB,IAAA,IAAI,YAAY,CAAM,KAAA,IAAA,KAAS,KAAM,CAAA,IAAA,IAAQ,SAAS,KAAM,CAAA,MAAA,CAAA;AAC1D,MAAA,OAAO,EAAE,OAAA,EAAS,IAAM,EAAA,KAAA,CAAM,IAAI,CAAE,EAAA;AACtC,IAAA,IAAI,YAAY,CAAM,KAAA,IAAA,KAAS,KAAM,CAAA,IAAA,IAAQ,SAAS,KAAM,CAAA,OAAA,CAAA;AAC1D,MAAA,OAAO,EAAE,OAAA,EAAS,IAAM,EAAA,KAAA,CAAM,IAAI,CAAE,EAAA;AACtC,IAAA,MAAM,IAAI,KAAA,CAAM,CAAmB,gBAAA,EAAA,CAAC,CAAY,UAAA,CAAA,CAAA;AAAA;AAEpD;;;;"}
@@ -5,7 +5,7 @@ const len32 = { dkLen: 32 };
5
5
  const Blake2256 = (encoded) => blake2b(encoded, len32);
6
6
  const len16 = { dkLen: 16 };
7
7
  const Blake2128 = (encoded) => blake2b(encoded, len16);
8
- const Blake2128Concat = (encoded) => mergeUint8(Blake2128(encoded), encoded);
8
+ const Blake2128Concat = (encoded) => mergeUint8([Blake2128(encoded), encoded]);
9
9
 
10
10
  export { Blake2128, Blake2128Concat, Blake2256 };
11
11
  //# sourceMappingURL=blake2.mjs.map
@@ -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/blake2b\"\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,MAAM,KAAA,GAAQ,EAAE,KAAA,EAAO,EAAG,EAAA;AACnB,MAAM,SAAY,GAAA,CAAC,OAAwB,KAAA,OAAA,CAAQ,SAAS,KAAK;AAExE,MAAM,KAAA,GAAQ,EAAE,KAAA,EAAO,EAAG,EAAA;AACnB,MAAM,SAAY,GAAA,CAAC,OAAwB,KAAA,OAAA,CAAQ,SAAS,KAAK;AAEjE,MAAM,kBAAkB,CAAC,OAAA,KAC9B,WAAW,SAAU,CAAA,OAAO,GAAG,OAAO;;;;"}
1
+ {"version":3,"file":"blake2.mjs","sources":["../../../src/hashes/blake2.ts"],"sourcesContent":["import { mergeUint8 } from \"@polkadot-api/utils\"\nimport { blake2b } from \"@noble/hashes/blake2b\"\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,MAAM,KAAA,GAAQ,EAAE,KAAA,EAAO,EAAG,EAAA;AACnB,MAAM,SAAY,GAAA,CAAC,OAAwB,KAAA,OAAA,CAAQ,SAAS,KAAK;AAExE,MAAM,KAAA,GAAQ,EAAE,KAAA,EAAO,EAAG,EAAA;AACnB,MAAM,SAAY,GAAA,CAAC,OAAwB,KAAA,OAAA,CAAQ,SAAS,KAAK;AAE3D,MAAA,eAAA,GAAkB,CAAC,OAC9B,KAAA,UAAA,CAAW,CAAC,SAAU,CAAA,OAAO,CAAG,EAAA,OAAO,CAAC;;;;"}
@@ -3,7 +3,7 @@ import { blake3 } from '@noble/hashes/blake3';
3
3
 
4
4
  const len32 = { dkLen: 32 };
5
5
  const Blake3256 = (encoded) => blake3(encoded, len32);
6
- const Blake3256Concat = (encoded) => mergeUint8(Blake3256(encoded), encoded);
6
+ const Blake3256Concat = (encoded) => mergeUint8([Blake3256(encoded), encoded]);
7
7
 
8
8
  export { Blake3256, Blake3256Concat };
9
9
  //# sourceMappingURL=blake3.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"blake3.mjs","sources":["../../../src/hashes/blake3.ts"],"sourcesContent":["import { mergeUint8 } from \"@polkadot-api/utils\"\nimport { blake3 } from \"@noble/hashes/blake3\"\n\nconst len32 = { dkLen: 32 }\nexport const Blake3256 = (encoded: Uint8Array) => blake3(encoded, len32)\n\nexport const Blake3256Concat = (encoded: Uint8Array) =>\n mergeUint8(Blake3256(encoded), encoded)\n"],"names":[],"mappings":";;;AAGA,MAAM,KAAA,GAAQ,EAAE,KAAA,EAAO,EAAG,EAAA;AACnB,MAAM,SAAY,GAAA,CAAC,OAAwB,KAAA,MAAA,CAAO,SAAS,KAAK;AAEhE,MAAM,kBAAkB,CAAC,OAAA,KAC9B,WAAW,SAAU,CAAA,OAAO,GAAG,OAAO;;;;"}
1
+ {"version":3,"file":"blake3.mjs","sources":["../../../src/hashes/blake3.ts"],"sourcesContent":["import { mergeUint8 } from \"@polkadot-api/utils\"\nimport { blake3 } from \"@noble/hashes/blake3\"\n\nconst len32 = { dkLen: 32 }\nexport const Blake3256 = (encoded: Uint8Array) => blake3(encoded, len32)\n\nexport const Blake3256Concat = (encoded: Uint8Array) =>\n mergeUint8([Blake3256(encoded), encoded])\n"],"names":[],"mappings":";;;AAGA,MAAM,KAAA,GAAQ,EAAE,KAAA,EAAO,EAAG,EAAA;AACnB,MAAM,SAAY,GAAA,CAAC,OAAwB,KAAA,MAAA,CAAO,SAAS,KAAK;AAE1D,MAAA,eAAA,GAAkB,CAAC,OAC9B,KAAA,UAAA,CAAW,CAAC,SAAU,CAAA,OAAO,CAAG,EAAA,OAAO,CAAC;;;;"}
@@ -18,7 +18,7 @@ const Twox256 = (input) => {
18
18
  dv.setBigUint64(24, h64(input, 3n), true);
19
19
  return result;
20
20
  };
21
- const Twox64Concat = (encoded) => mergeUint8(u64.enc(h64(encoded)), encoded);
21
+ const Twox64Concat = (encoded) => mergeUint8([u64.enc(h64(encoded)), encoded]);
22
22
 
23
23
  export { Twox128, Twox256, Twox64Concat };
24
24
  //# sourceMappingURL=twoX.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"twoX.mjs","sources":["../../../src/hashes/twoX.ts"],"sourcesContent":["import { mergeUint8 } from \"@polkadot-api/utils\"\nimport { u64 } from \"scale-ts\"\nimport { h64 } from \"./h64\"\n\nexport const Twox128 = (input: Uint8Array): Uint8Array => {\n const result = new Uint8Array(16)\n const dv = new DataView(result.buffer)\n\n dv.setBigUint64(0, h64(input), true)\n dv.setBigUint64(8, h64(input, 1n), true)\n\n return result\n}\n\nexport const Twox256 = (input: Uint8Array): Uint8Array => {\n const result = new Uint8Array(32)\n const dv = new DataView(result.buffer)\n\n dv.setBigUint64(0, h64(input), true)\n dv.setBigUint64(8, h64(input, 1n), true)\n dv.setBigUint64(16, h64(input, 2n), true)\n dv.setBigUint64(24, h64(input, 3n), true)\n\n return result\n}\n\nexport const Twox64Concat = (encoded: Uint8Array): Uint8Array =>\n mergeUint8(u64.enc(h64(encoded)), encoded)\n"],"names":[],"mappings":";;;;AAIa,MAAA,OAAA,GAAU,CAAC,KAAkC,KAAA;AACxD,EAAM,MAAA,MAAA,GAAS,IAAI,UAAA,CAAW,EAAE,CAAA;AAChC,EAAA,MAAM,EAAK,GAAA,IAAI,QAAS,CAAA,MAAA,CAAO,MAAM,CAAA;AAErC,EAAA,EAAA,CAAG,YAAa,CAAA,CAAA,EAAG,GAAI,CAAA,KAAK,GAAG,IAAI,CAAA;AACnC,EAAA,EAAA,CAAG,aAAa,CAAG,EAAA,GAAA,CAAI,KAAO,EAAA,EAAE,GAAG,IAAI,CAAA;AAEvC,EAAO,OAAA,MAAA;AACT;AAEa,MAAA,OAAA,GAAU,CAAC,KAAkC,KAAA;AACxD,EAAM,MAAA,MAAA,GAAS,IAAI,UAAA,CAAW,EAAE,CAAA;AAChC,EAAA,MAAM,EAAK,GAAA,IAAI,QAAS,CAAA,MAAA,CAAO,MAAM,CAAA;AAErC,EAAA,EAAA,CAAG,YAAa,CAAA,CAAA,EAAG,GAAI,CAAA,KAAK,GAAG,IAAI,CAAA;AACnC,EAAA,EAAA,CAAG,aAAa,CAAG,EAAA,GAAA,CAAI,KAAO,EAAA,EAAE,GAAG,IAAI,CAAA;AACvC,EAAA,EAAA,CAAG,aAAa,EAAI,EAAA,GAAA,CAAI,KAAO,EAAA,EAAE,GAAG,IAAI,CAAA;AACxC,EAAA,EAAA,CAAG,aAAa,EAAI,EAAA,GAAA,CAAI,KAAO,EAAA,EAAE,GAAG,IAAI,CAAA;AAExC,EAAO,OAAA,MAAA;AACT;AAEa,MAAA,YAAA,GAAe,CAAC,OAAA,KAC3B,UAAW,CAAA,GAAA,CAAI,IAAI,GAAI,CAAA,OAAO,CAAC,CAAA,EAAG,OAAO;;;;"}
1
+ {"version":3,"file":"twoX.mjs","sources":["../../../src/hashes/twoX.ts"],"sourcesContent":["import { mergeUint8 } from \"@polkadot-api/utils\"\nimport { u64 } from \"scale-ts\"\nimport { h64 } from \"./h64\"\n\nexport const Twox128 = (input: Uint8Array): Uint8Array => {\n const result = new Uint8Array(16)\n const dv = new DataView(result.buffer)\n\n dv.setBigUint64(0, h64(input), true)\n dv.setBigUint64(8, h64(input, 1n), true)\n\n return result\n}\n\nexport const Twox256 = (input: Uint8Array): Uint8Array => {\n const result = new Uint8Array(32)\n const dv = new DataView(result.buffer)\n\n dv.setBigUint64(0, h64(input), true)\n dv.setBigUint64(8, h64(input, 1n), true)\n dv.setBigUint64(16, h64(input, 2n), true)\n dv.setBigUint64(24, h64(input, 3n), true)\n\n return result\n}\n\nexport const Twox64Concat = (encoded: Uint8Array): Uint8Array =>\n mergeUint8([u64.enc(h64(encoded)), encoded])\n"],"names":[],"mappings":";;;;AAIa,MAAA,OAAA,GAAU,CAAC,KAAkC,KAAA;AACxD,EAAM,MAAA,MAAA,GAAS,IAAI,UAAA,CAAW,EAAE,CAAA;AAChC,EAAA,MAAM,EAAK,GAAA,IAAI,QAAS,CAAA,MAAA,CAAO,MAAM,CAAA;AAErC,EAAA,EAAA,CAAG,YAAa,CAAA,CAAA,EAAG,GAAI,CAAA,KAAK,GAAG,IAAI,CAAA;AACnC,EAAA,EAAA,CAAG,aAAa,CAAG,EAAA,GAAA,CAAI,KAAO,EAAA,EAAE,GAAG,IAAI,CAAA;AAEvC,EAAO,OAAA,MAAA;AACT;AAEa,MAAA,OAAA,GAAU,CAAC,KAAkC,KAAA;AACxD,EAAM,MAAA,MAAA,GAAS,IAAI,UAAA,CAAW,EAAE,CAAA;AAChC,EAAA,MAAM,EAAK,GAAA,IAAI,QAAS,CAAA,MAAA,CAAO,MAAM,CAAA;AAErC,EAAA,EAAA,CAAG,YAAa,CAAA,CAAA,EAAG,GAAI,CAAA,KAAK,GAAG,IAAI,CAAA;AACnC,EAAA,EAAA,CAAG,aAAa,CAAG,EAAA,GAAA,CAAI,KAAO,EAAA,EAAE,GAAG,IAAI,CAAA;AACvC,EAAA,EAAA,CAAG,aAAa,EAAI,EAAA,GAAA,CAAI,KAAO,EAAA,EAAE,GAAG,IAAI,CAAA;AACxC,EAAA,EAAA,CAAG,aAAa,EAAI,EAAA,GAAA,CAAI,KAAO,EAAA,EAAE,GAAG,IAAI,CAAA;AAExC,EAAO,OAAA,MAAA;AACT;AAEO,MAAM,YAAe,GAAA,CAAC,OAC3B,KAAA,UAAA,CAAW,CAAC,GAAA,CAAI,GAAI,CAAA,GAAA,CAAI,OAAO,CAAC,CAAG,EAAA,OAAO,CAAC;;;;"}
@@ -14,7 +14,10 @@ export { blockHeader } from './codecs/blockHeader.mjs';
14
14
  export { decAnyMetadata, metadata } from './codecs/metadata/metadata.mjs';
15
15
  export { v14 } from './codecs/metadata/v14.mjs';
16
16
  export { v15 } from './codecs/metadata/v15.mjs';
17
+ export { v16 } from './codecs/metadata/v16.mjs';
18
+ export { unifyMetadata } from './codecs/metadata/unified.mjs';
17
19
  export { lookup as v14Lookup } from './codecs/metadata/lookup.mjs';
20
+ export { extrinsicFormat } from './extrinsics/extrinsic-format.mjs';
18
21
  export { Blake2128, Blake2128Concat, Blake2256 } from './hashes/blake2.mjs';
19
22
  export { Blake3256, Blake3256Concat } from './hashes/blake3.mjs';
20
23
  export { Identity } from './hashes/identity.mjs';
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -17,10 +17,10 @@ const hashers = /* @__PURE__ */ new Map([
17
17
  const Storage = (pallet) => {
18
18
  const palledEncoded = Twox128(textEncoder.encode(pallet));
19
19
  return (name, ...encoders) => {
20
- const palletItemEncoded = mergeUint8(
20
+ const palletItemEncoded = mergeUint8([
21
21
  palledEncoded,
22
22
  Twox128(textEncoder.encode(name))
23
- );
23
+ ]);
24
24
  const palletItemEncodedHex = toHex(palletItemEncoded);
25
25
  const dec = (key) => {
26
26
  if (!key.startsWith(palletItemEncodedHex))
@@ -48,7 +48,10 @@ const Storage = (pallet) => {
48
48
  ([{ enc: enc2 }, hash]) => (val) => hash(enc2(val))
49
49
  );
50
50
  const enc = (...args) => toHex(
51
- mergeUint8(palletItemEncoded, ...args.map((val, idx) => fns[idx](val)))
51
+ mergeUint8([
52
+ palletItemEncoded,
53
+ ...args.map((val, idx) => fns[idx](val))
54
+ ])
52
55
  );
53
56
  return {
54
57
  enc,