@polkadot-api/substrate-bindings 0.11.0 → 0.12.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.
- package/dist/esm/codecs/blockHeader.mjs +2 -1
- package/dist/esm/codecs/blockHeader.mjs.map +1 -1
- package/dist/esm/codecs/metadata/metadata.mjs +1 -1
- package/dist/esm/codecs/metadata/pallets.mjs +2 -1
- package/dist/esm/codecs/metadata/pallets.mjs.map +1 -1
- package/dist/esm/codecs/metadata/runtime-api.mjs +2 -1
- package/dist/esm/codecs/metadata/runtime-api.mjs.map +1 -1
- package/dist/esm/codecs/metadata/v14.mjs +2 -1
- package/dist/esm/codecs/metadata/v14.mjs.map +1 -1
- package/dist/esm/codecs/metadata/v15.mjs +2 -1
- package/dist/esm/codecs/metadata/v15.mjs.map +1 -1
- package/dist/esm/codecs/scale/Variant.mjs +19 -12
- package/dist/esm/codecs/scale/Variant.mjs.map +1 -1
- package/dist/esm/codecs/scale/compact.mjs +3 -3
- package/dist/esm/codecs/scale/compact.mjs.map +1 -1
- package/dist/esm/codecs/scale/shaped.mjs +21 -0
- package/dist/esm/codecs/scale/shaped.mjs.map +1 -0
- package/dist/esm/codecs/scale/with-inner.mjs +8 -0
- package/dist/esm/codecs/scale/with-inner.mjs.map +1 -0
- package/dist/esm/index.mjs +3 -2
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/storage.mjs.map +1 -1
- package/dist/esm/utils/multisig.mjs +2 -0
- package/dist/esm/utils/multisig.mjs.map +1 -1
- package/dist/index.d.ts +284 -22
- package/dist/index.js +50 -40
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { enhanceCodec, Bytes,
|
|
1
|
+
import { enhanceCodec, Bytes, _void } from 'scale-ts';
|
|
2
2
|
import '../utils/ss58-util.mjs';
|
|
3
3
|
import './scale/Binary.mjs';
|
|
4
4
|
import './scale/bitSequence.mjs';
|
|
@@ -8,6 +8,7 @@ import { Hex } from './scale/Hex.mjs';
|
|
|
8
8
|
import './scale/fixed-str.mjs';
|
|
9
9
|
import { Variant } from './scale/Variant.mjs';
|
|
10
10
|
import './scale/ethAccount.mjs';
|
|
11
|
+
import { Struct, Vector } from './scale/shaped.mjs';
|
|
11
12
|
|
|
12
13
|
const textEncoder = new TextEncoder();
|
|
13
14
|
const textDecoder = new TextDecoder();
|
|
@@ -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 consensus: diggestVal,\n seal: diggestVal,\n preRuntime: diggestVal,\n runtimeUpdated: _void,\n },\n [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":"
|
|
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 consensus: diggestVal,\n seal: diggestVal,\n preRuntime: diggestVal,\n runtimeUpdated: _void,\n },\n [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,MAAM,WAAA,GAAc,IAAI,WAAY,EAAA;AACpC,MAAM,WAAA,GAAc,IAAI,WAAY,EAAA;AAEpC,MAAM,SAAY,GAAA,YAAA;AAAA,EAChB,MAAM,CAAC,CAAA;AAAA,EACP,WAAA,CAAY,MAAO,CAAA,IAAA,CAAK,WAAW,CAAA;AAAA,EACnC,WAAA,CAAY,MAAO,CAAA,IAAA,CAAK,WAAW;AACrC,CAAA;AAEA,MAAM,aAAa,MAAO,CAAA;AAAA,EACxB,MAAQ,EAAA,SAAA;AAAA,EACR,SAAS,GAAI;AACf,CAAC,CAAA;AAED,MAAM,OAAU,GAAA,OAAA;AAAA,EACd;AAAA,IACE,SAAW,EAAA,UAAA;AAAA,IACX,IAAM,EAAA,UAAA;AAAA,IACN,UAAY,EAAA,UAAA;AAAA,IACZ,cAAgB,EAAA;AAAA,GAClB;AAAA,EACA,CAAC,CAAA,EAAG,CAAG,EAAA,CAAA,EAAG,CAAC;AACb,CAAA;AAEA,MAAM,KAAA,GAAQ,IAAI,EAAE,CAAA;AACb,MAAM,cAAc,MAAO,CAAA;AAAA,EAChC,UAAY,EAAA,KAAA;AAAA,EACZ,MAAQ,EAAA,aAAA;AAAA,EACR,SAAW,EAAA,KAAA;AAAA,EACX,aAAe,EAAA,KAAA;AAAA,EACf,OAAA,EAAS,OAAO,OAAO;AACzB,CAAC;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Enum, _void, Vector, Struct,
|
|
1
|
+
import { Enum, _void, Vector, Struct, u8, str, Option } from 'scale-ts';
|
|
2
2
|
import '../../utils/ss58-util.mjs';
|
|
3
3
|
import '../scale/Binary.mjs';
|
|
4
4
|
import '../scale/bitSequence.mjs';
|
|
@@ -8,6 +8,7 @@ import { Hex } from '../scale/Hex.mjs';
|
|
|
8
8
|
import '../scale/fixed-str.mjs';
|
|
9
9
|
import '../scale/Variant.mjs';
|
|
10
10
|
import '../scale/ethAccount.mjs';
|
|
11
|
+
import '../scale/shaped.mjs';
|
|
11
12
|
import { docs } from './docs.mjs';
|
|
12
13
|
|
|
13
14
|
const hashType = Enum({
|
|
@@ -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":"
|
|
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,4 +1,4 @@
|
|
|
1
|
-
import { Struct,
|
|
1
|
+
import { Struct, Vector, str } from 'scale-ts';
|
|
2
2
|
import { docs } from './docs.mjs';
|
|
3
3
|
import '../../utils/ss58-util.mjs';
|
|
4
4
|
import '../scale/Binary.mjs';
|
|
@@ -9,6 +9,7 @@ import '../scale/Hex.mjs';
|
|
|
9
9
|
import '../scale/fixed-str.mjs';
|
|
10
10
|
import '../scale/Variant.mjs';
|
|
11
11
|
import '../scale/ethAccount.mjs';
|
|
12
|
+
import '../scale/shaped.mjs';
|
|
12
13
|
|
|
13
14
|
const runtimeApi = Struct({
|
|
14
15
|
name: str,
|
|
@@ -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":"
|
|
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,4 +1,4 @@
|
|
|
1
|
-
import { Struct,
|
|
1
|
+
import { Struct, Vector, u8, str, createCodec } from 'scale-ts';
|
|
2
2
|
import { lookup } from './lookup.mjs';
|
|
3
3
|
import '../../utils/ss58-util.mjs';
|
|
4
4
|
import '../scale/Binary.mjs';
|
|
@@ -9,6 +9,7 @@ import '../scale/Hex.mjs';
|
|
|
9
9
|
import '../scale/fixed-str.mjs';
|
|
10
10
|
import '../scale/Variant.mjs';
|
|
11
11
|
import '../scale/ethAccount.mjs';
|
|
12
|
+
import '../scale/shaped.mjs';
|
|
12
13
|
import { v14Pallet } from './pallets.mjs';
|
|
13
14
|
|
|
14
15
|
const empty = new Uint8Array();
|
|
@@ -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":"
|
|
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,4 +1,4 @@
|
|
|
1
|
-
import { Struct,
|
|
1
|
+
import { Struct, Vector, u8, str, Tuple } from 'scale-ts';
|
|
2
2
|
import { lookup } from './lookup.mjs';
|
|
3
3
|
import { v15Pallet } from './pallets.mjs';
|
|
4
4
|
import '../../utils/ss58-util.mjs';
|
|
@@ -10,6 +10,7 @@ import { Hex } from '../scale/Hex.mjs';
|
|
|
10
10
|
import '../scale/fixed-str.mjs';
|
|
11
11
|
import '../scale/Variant.mjs';
|
|
12
12
|
import '../scale/ethAccount.mjs';
|
|
13
|
+
import '../scale/shaped.mjs';
|
|
13
14
|
import { runtimeApi } from './runtime-api.mjs';
|
|
14
15
|
|
|
15
16
|
const extrinsic = 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 { 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":"
|
|
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,30 +1,37 @@
|
|
|
1
1
|
import { createCodec, Enum } from 'scale-ts';
|
|
2
2
|
import { mapObject } from '@polkadot-api/utils';
|
|
3
3
|
import { Enum as Enum$1 } from '../../types/enum.mjs';
|
|
4
|
+
import { withInner } from './with-inner.mjs';
|
|
4
5
|
|
|
5
6
|
const VariantEnc = (...args) => {
|
|
6
7
|
const enc = Enum.enc(...args);
|
|
7
|
-
return (v) => enc({ tag: v.type, value: v.value });
|
|
8
|
+
return withInner((v) => enc({ tag: v.type, value: v.value }), args[0]);
|
|
8
9
|
};
|
|
9
10
|
const VariantDec = (...args) => {
|
|
10
11
|
const dec = Enum.dec(...args);
|
|
11
|
-
return (v) => {
|
|
12
|
+
return withInner((v) => {
|
|
12
13
|
const { tag, value } = dec(v);
|
|
13
14
|
return Enum$1(tag, value);
|
|
14
|
-
};
|
|
15
|
+
}, args[0]);
|
|
15
16
|
};
|
|
16
|
-
const Variant = (inner, ...args) =>
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
17
|
+
const Variant = (inner, ...args) => withInner(
|
|
18
|
+
createCodec(
|
|
19
|
+
VariantEnc(
|
|
20
|
+
mapObject(inner, ([encoder]) => encoder),
|
|
21
|
+
...args
|
|
22
|
+
),
|
|
23
|
+
VariantDec(
|
|
24
|
+
mapObject(inner, ([, decoder]) => decoder),
|
|
25
|
+
...args
|
|
26
|
+
)
|
|
20
27
|
),
|
|
21
|
-
|
|
22
|
-
mapObject(inner, ([, decoder]) => decoder),
|
|
23
|
-
...args
|
|
24
|
-
)
|
|
28
|
+
inner
|
|
25
29
|
);
|
|
26
30
|
Variant.enc = VariantEnc;
|
|
27
31
|
Variant.dec = VariantDec;
|
|
32
|
+
const ScaleEnum = (inner, ...args) => withInner(Enum(inner, ...args), inner);
|
|
33
|
+
ScaleEnum.enc = (inner, ...rest) => withInner(Enum.enc(inner, ...rest), inner);
|
|
34
|
+
ScaleEnum.dec = (inner, ...rest) => withInner(Enum.dec(inner, ...rest), inner);
|
|
28
35
|
|
|
29
|
-
export { Variant };
|
|
36
|
+
export { ScaleEnum, Variant };
|
|
30
37
|
//# sourceMappingURL=Variant.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Variant.mjs","sources":["../../../../src/codecs/scale/Variant.ts"],"sourcesContent":["import {\n Codec,\n CodecType,\n Decoder,\n DecoderType,\n Encoder,\n EncoderType,\n Enum as
|
|
1
|
+
{"version":3,"file":"Variant.mjs","sources":["../../../../src/codecs/scale/Variant.ts"],"sourcesContent":["import {\n Codec,\n CodecType,\n Decoder,\n DecoderType,\n Encoder,\n EncoderType,\n Enum as OEnum,\n StringRecord,\n createCodec,\n} from \"scale-ts\"\nimport { mapObject } from \"@polkadot-api/utils\"\nimport { Enum } from \"@/types/enum\"\nimport { withInner } from \"./with-inner\"\n\ntype Tuple<T, N extends number> = readonly [T, ...T[]] & { length: N }\n\ntype Push<T extends any[], V> = [...T, V]\n\ntype UnionToIntersection<U> = (U extends any ? (k: U) => void : never) extends (\n k: infer I,\n) => void\n ? I\n : never\n\ntype LastOf<T> =\n UnionToIntersection<T extends any ? () => T : never> extends () => infer R\n ? R\n : never\n\ntype TuplifyUnion<\n T,\n L = LastOf<T>,\n N = [T] extends [never] ? true : false,\n> = true extends N ? [] : Push<TuplifyUnion<Exclude<T, L>>, L>\n\ntype RestrictedLenTuple<T, O extends StringRecord<any>> = Tuple<\n T,\n TuplifyUnion<keyof O> extends Tuple<any, infer V> ? V : 0\n>\n\nconst VariantEnc: <O extends StringRecord<Encoder<any>>>(\n inner: O,\n x?: RestrictedLenTuple<number, O> | undefined,\n) => Encoder<\n Enum<{\n [K in keyof O]: EncoderType<O[K]>\n }>\n> & { inner: O } = (...args) => {\n const enc = OEnum.enc(...(args as [any, any]))\n return withInner((v: any) => enc({ tag: v.type, value: v.value }), args[0])\n}\n\nconst VariantDec: <O extends StringRecord<Decoder<any>>>(\n inner: O,\n x?: RestrictedLenTuple<number, O> | undefined,\n) => Decoder<\n Enum<{\n [K in keyof O]: DecoderType<O[K]>\n }>\n> & { inner: O } = (...args) => {\n const dec = OEnum.dec(...(args as [any]))\n return withInner((v: any) => {\n const { tag, value } = dec(v)\n return Enum(tag as any, value as any) as any\n }, args[0])\n}\n\nexport const Variant: {\n <O extends StringRecord<Codec<any>>>(\n inner: O,\n indexes?: RestrictedLenTuple<number, O> | undefined,\n ): Codec<\n Enum<{\n [K in keyof O]: CodecType<O[K]>\n }>\n > & { inner: O }\n enc: <O_1 extends StringRecord<Encoder<any>>>(\n inner: O_1,\n x?: RestrictedLenTuple<number, O_1> | undefined,\n ) => Encoder<\n Enum<{\n [K in keyof O_1]: EncoderType<O_1[K]>\n }>\n > & { inner: O_1 }\n dec: <O_2 extends StringRecord<Decoder<any>>>(\n inner: O_2,\n x?: RestrictedLenTuple<number, O_2> | undefined,\n ) => Decoder<\n Enum<{\n [K in keyof O_2]: DecoderType<O_2[K]>\n }>\n > & { inner: O_2 }\n} = (inner, ...args) =>\n withInner(\n createCodec(\n VariantEnc(\n mapObject(inner, ([encoder]) => encoder) as any,\n ...(args as any[]),\n ),\n VariantDec(\n mapObject(inner, ([, decoder]) => decoder) as any,\n ...(args as any[]),\n ) as any,\n ),\n inner,\n ) as any\nVariant.enc = VariantEnc\nVariant.dec = VariantDec\n\nexport const ScaleEnum: {\n <O extends StringRecord<Codec<any>>>(\n inner: O,\n indexes?: RestrictedLenTuple<number, O> | undefined,\n ): Codec<\n {\n [K in keyof O]: {\n tag: K\n value: CodecType<O[K]>\n }\n }[keyof O]\n > & { inner: O }\n enc: <O_1 extends StringRecord<Encoder<any>>>(\n inner: O_1,\n x?: RestrictedLenTuple<number, O_1> | undefined,\n ) => Encoder<\n {\n [K_1 in keyof O_1]: {\n tag: K_1\n value: EncoderType<O_1[K_1]>\n }\n }[keyof O_1]\n > & { inner: O_1 }\n dec: <O_2 extends StringRecord<Decoder<any>>>(\n inner: O_2,\n x?: RestrictedLenTuple<number, O_2> | undefined,\n ) => Decoder<\n {\n [K_2 in keyof O_2]: {\n tag: K_2\n value: DecoderType<O_2[K_2]>\n }\n }[keyof O_2]\n > & { inner: O_2 }\n} = (inner, ...args) => withInner(OEnum(inner, ...(args as any[])), inner)\nScaleEnum.enc = (inner, ...rest) =>\n withInner(OEnum.enc(inner, ...(rest as any[])), inner)\nScaleEnum.dec = (inner, ...rest) =>\n withInner(OEnum.dec(inner, ...(rest as any[])), inner)\n"],"names":["OEnum","Enum"],"mappings":";;;;;AAyCA,MAAM,UAAA,GAOa,IAAI,IAAS,KAAA;AAC9B,EAAA,MAAM,GAAM,GAAAA,IAAA,CAAM,GAAI,CAAA,GAAI,IAAmB,CAAA;AAC7C,EAAA,OAAO,SAAU,CAAA,CAAC,CAAW,KAAA,GAAA,CAAI,EAAE,GAAK,EAAA,CAAA,CAAE,IAAM,EAAA,KAAA,EAAO,EAAE,KAAM,EAAC,CAAG,EAAA,IAAA,CAAK,CAAC,CAAC,CAAA;AAC5E,CAAA;AAEA,MAAM,UAAA,GAOa,IAAI,IAAS,KAAA;AAC9B,EAAA,MAAM,GAAM,GAAAA,IAAA,CAAM,GAAI,CAAA,GAAI,IAAc,CAAA;AACxC,EAAO,OAAA,SAAA,CAAU,CAAC,CAAW,KAAA;AAC3B,IAAA,MAAM,EAAE,GAAA,EAAK,KAAM,EAAA,GAAI,IAAI,CAAC,CAAA;AAC5B,IAAO,OAAAC,MAAA,CAAK,KAAY,KAAY,CAAA;AAAA,GACtC,EAAG,IAAK,CAAA,CAAC,CAAC,CAAA;AACZ,CAAA;AAEa,MAAA,OAAA,GAyBT,CAAC,KAAA,EAAA,GAAU,IACb,KAAA,SAAA;AAAA,EACE,WAAA;AAAA,IACE,UAAA;AAAA,MACE,UAAU,KAAO,EAAA,CAAC,CAAC,OAAO,MAAM,OAAO,CAAA;AAAA,MACvC,GAAI;AAAA,KACN;AAAA,IACA,UAAA;AAAA,MACE,UAAU,KAAO,EAAA,CAAC,GAAG,OAAO,MAAM,OAAO,CAAA;AAAA,MACzC,GAAI;AAAA;AACN,GACF;AAAA,EACA;AACF;AACF,OAAA,CAAQ,GAAM,GAAA,UAAA;AACd,OAAA,CAAQ,GAAM,GAAA,UAAA;AAED,MAAA,SAAA,GAkCT,CAAC,KAAA,EAAA,GAAU,IAAS,KAAA,SAAA,CAAUD,KAAM,KAAO,EAAA,GAAI,IAAc,CAAA,EAAG,KAAK;AACzE,SAAU,CAAA,GAAA,GAAM,CAAC,KAAA,EAAA,GAAU,IACzB,KAAA,SAAA,CAAUA,IAAM,CAAA,GAAA,CAAI,KAAO,EAAA,GAAI,IAAc,CAAA,EAAG,KAAK,CAAA;AACvD,SAAU,CAAA,GAAA,GAAM,CAAC,KAAA,EAAA,GAAU,IACzB,KAAA,SAAA,CAAUA,IAAM,CAAA,GAAA,CAAI,KAAO,EAAA,GAAI,IAAc,CAAA,EAAG,KAAK,CAAA;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { compact } from 'scale-ts';
|
|
1
|
+
import { enhanceCodec, compact } from 'scale-ts';
|
|
2
2
|
|
|
3
|
-
const compactNumber = compact;
|
|
4
|
-
const compactBn = compact;
|
|
3
|
+
const compactNumber = enhanceCodec(compact, (v) => v, Number);
|
|
4
|
+
const compactBn = enhanceCodec(compact, (v) => v, BigInt);
|
|
5
5
|
|
|
6
6
|
export { compactBn, compactNumber };
|
|
7
7
|
//# sourceMappingURL=compact.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compact.mjs","sources":["../../../../src/codecs/scale/compact.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"compact.mjs","sources":["../../../../src/codecs/scale/compact.ts"],"sourcesContent":["import { compact, enhanceCodec } from \"scale-ts\"\n\nexport const compactNumber = enhanceCodec(compact, (v) => v, Number)\nexport const compactBn = enhanceCodec(compact, (v) => v, BigInt)\n"],"names":[],"mappings":";;AAEO,MAAM,gBAAgB,YAAa,CAAA,OAAA,EAAS,CAAC,CAAA,KAAM,GAAG,MAAM;AAC5D,MAAM,YAAY,YAAa,CAAA,OAAA,EAAS,CAAC,CAAA,KAAM,GAAG,MAAM;;;;"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Struct as Struct$1, Vector as Vector$1, Tuple as Tuple$1, Result as Result$1, Option as Option$1 } from 'scale-ts';
|
|
2
|
+
import { withInner } from './with-inner.mjs';
|
|
3
|
+
|
|
4
|
+
const Struct = (codecs) => withInner(Struct$1(codecs), codecs);
|
|
5
|
+
Struct.enc = (x) => withInner(Struct$1.enc(x), x);
|
|
6
|
+
Struct.dec = (x) => withInner(Struct$1.dec(x), x);
|
|
7
|
+
const Tuple = (...inner) => withInner(Tuple$1(...inner), inner);
|
|
8
|
+
Tuple.enc = (...inner) => withInner(Tuple$1.enc(...inner), inner);
|
|
9
|
+
Tuple.dec = (...inner) => withInner(Tuple$1.dec(...inner), inner);
|
|
10
|
+
const Vector = (inner, ...rest) => withInner(Vector$1(inner, ...rest), inner);
|
|
11
|
+
Vector.enc = (inner, ...rest) => withInner(Vector$1.enc(inner, ...rest), inner);
|
|
12
|
+
Vector.dec = (inner, ...rest) => withInner(Vector$1.dec(inner, ...rest), inner);
|
|
13
|
+
const Result = (ok, ko) => withInner(Result$1(ok, ko), { ok, ko });
|
|
14
|
+
Result.enc = (ok, ko) => withInner(Result$1.enc(ok, ko), { ok, ko });
|
|
15
|
+
Result.dec = (ok, ko) => withInner(Result$1.dec(ok, ko), { ok, ko });
|
|
16
|
+
const Option = (inner) => withInner(Option$1(inner), inner);
|
|
17
|
+
Option.enc = (inner) => withInner(Option$1.enc(inner), inner);
|
|
18
|
+
Option.dec = (inner) => withInner(Option$1.dec(inner), inner);
|
|
19
|
+
|
|
20
|
+
export { Option, Result, Struct, Tuple, Vector };
|
|
21
|
+
//# sourceMappingURL=shaped.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shaped.mjs","sources":["../../../../src/codecs/scale/shaped.ts"],"sourcesContent":["import {\n Struct as OStruct,\n Tuple as OTuple,\n Vector as OVector,\n Result as OResult,\n Option as OOption,\n Codec,\n Encoder,\n Decoder,\n StringRecord,\n CodecType,\n EncoderType,\n DecoderType,\n ResultPayload,\n} from \"scale-ts\"\nimport { withInner } from \"./with-inner\"\n\nexport const Struct: {\n <A extends StringRecord<Codec<any>>>(\n codecs: A,\n ): Codec<{ [K in keyof A]: CodecType<A[K]> }> & { inner: A }\n enc: <A_1 extends StringRecord<Encoder<any>>>(\n encoders: A_1,\n ) => Encoder<{ [K_1 in keyof A_1]: EncoderType<A_1[K_1]> }> & { inner: A_1 }\n dec: <A_2 extends StringRecord<Decoder<any>>>(\n decoders: A_2,\n ) => Decoder<{ [K_2 in keyof A_2]: DecoderType<A_2[K_2]> }> & { inner: A_2 }\n} = (codecs) => withInner(OStruct(codecs), codecs)\nStruct.enc = (x) => withInner(OStruct.enc(x), x)\nStruct.dec = (x) => withInner(OStruct.dec(x), x)\n\nexport const Tuple: {\n <A extends Codec<any>[]>(\n ...inner: A\n ): Codec<{ [K in keyof A]: A[K] extends Codec<infer D> ? D : unknown }> & {\n inner: A\n }\n enc: <A_1 extends Encoder<any>[]>(\n ...encoders: A_1\n ) => Encoder<{\n [K_1 in keyof A_1]: A_1[K_1] extends Encoder<infer D_1> ? D_1 : unknown\n }> & { inner: A_1 }\n dec: <A_2 extends Decoder<any>[]>(\n ...decoders: A_2\n ) => Decoder<{\n [K_2 in keyof A_2]: A_2[K_2] extends Decoder<infer D_2> ? D_2 : unknown\n }> & { inner: A_2 }\n} = (...inner) => withInner(OTuple(...inner), inner)\nTuple.enc = (...inner) => withInner(OTuple.enc(...inner), inner)\nTuple.dec = (...inner) => withInner(OTuple.dec(...inner), inner)\n\nexport const Vector: {\n <T>(\n inner: Codec<T>,\n size?: number | undefined,\n ): Codec<T[]> & { inner: Codec<T> }\n enc: <T_1>(\n inner: Encoder<T_1>,\n size?: number | undefined,\n ) => Encoder<T_1[]> & { inner: Encoder<T_1> }\n dec: <T_2>(\n getter: Decoder<T_2>,\n size?: number | undefined,\n ) => Decoder<T_2[]> & { inner: Decoder<T_2> }\n} = (inner, ...rest) => withInner(OVector(inner, ...rest), inner)\nVector.enc = (inner, ...rest) => withInner(OVector.enc(inner, ...rest), inner)\nVector.dec = (inner, ...rest) => withInner(OVector.dec(inner, ...rest), inner)\n\nexport const Result: {\n <OK, KO>(\n okCodec: Codec<OK>,\n koCodec: Codec<KO>,\n ): Codec<ResultPayload<OK, KO>> & { inner: { ok: Codec<OK>; ko: Codec<KO> } }\n dec: <OK_1, KO_1>(\n okDecoder: Decoder<OK_1>,\n koDecoder: Decoder<KO_1>,\n ) => Decoder<ResultPayload<OK_1, KO_1>> & {\n inner: { ok: Decoder<OK_1>; ko: Decoder<KO_1> }\n }\n enc: <OK_2, KO_2>(\n okEncoder: Encoder<OK_2>,\n koEncoder: Encoder<KO_2>,\n ) => Encoder<ResultPayload<OK_2, KO_2>> & {\n inner: { ok: Encoder<OK_2>; ko: Encoder<KO_2> }\n }\n} = (ok, ko) => withInner(OResult(ok, ko), { ok, ko })\nResult.enc = (ok, ko) => withInner(OResult.enc(ok, ko), { ok, ko })\nResult.dec = (ok, ko) => withInner(OResult.dec(ok, ko), { ok, ko })\n\nexport const Option: {\n <T>(inner: Codec<T>): Codec<T | undefined> & { inner: Codec<T> }\n enc: <T_1>(\n inner: Encoder<T_1>,\n ) => Encoder<T_1 | undefined> & { inner: Encoder<T_1> }\n dec: <T_2>(\n inner: Decoder<T_2>,\n ) => Decoder<T_2 | undefined> & { inner: Decoder<T_2> }\n} = (inner) => withInner(OOption(inner), inner)\nOption.enc = (inner) => withInner(OOption.enc(inner), inner)\nOption.dec = (inner) => withInner(OOption.dec(inner), inner)\n"],"names":["OStruct","OTuple","OVector","OResult","OOption"],"mappings":";;;AAiBO,MAAM,SAUT,CAAC,MAAA,KAAW,UAAUA,QAAQ,CAAA,MAAM,GAAG,MAAM;AACjD,MAAO,CAAA,GAAA,GAAM,CAAC,CAAM,KAAA,SAAA,CAAUA,SAAQ,GAAI,CAAA,CAAC,GAAG,CAAC,CAAA;AAC/C,MAAO,CAAA,GAAA,GAAM,CAAC,CAAM,KAAA,SAAA,CAAUA,SAAQ,GAAI,CAAA,CAAC,GAAG,CAAC,CAAA;AAElC,MAAA,KAAA,GAgBT,IAAI,KAAU,KAAA,SAAA,CAAUC,QAAO,GAAG,KAAK,GAAG,KAAK;AACnD,KAAM,CAAA,GAAA,GAAM,IAAI,KAAU,KAAA,SAAA,CAAUA,QAAO,GAAI,CAAA,GAAG,KAAK,CAAA,EAAG,KAAK,CAAA;AAC/D,KAAM,CAAA,GAAA,GAAM,IAAI,KAAU,KAAA,SAAA,CAAUA,QAAO,GAAI,CAAA,GAAG,KAAK,CAAA,EAAG,KAAK,CAAA;AAElD,MAAA,MAAA,GAaT,CAAC,KAAA,EAAA,GAAU,IAAS,KAAA,SAAA,CAAUC,SAAQ,KAAO,EAAA,GAAG,IAAI,CAAA,EAAG,KAAK;AAChE,MAAO,CAAA,GAAA,GAAM,CAAC,KAAA,EAAA,GAAU,IAAS,KAAA,SAAA,CAAUA,QAAQ,CAAA,GAAA,CAAI,KAAO,EAAA,GAAG,IAAI,CAAA,EAAG,KAAK,CAAA;AAC7E,MAAO,CAAA,GAAA,GAAM,CAAC,KAAA,EAAA,GAAU,IAAS,KAAA,SAAA,CAAUA,QAAQ,CAAA,GAAA,CAAI,KAAO,EAAA,GAAG,IAAI,CAAA,EAAG,KAAK,CAAA;AAEtE,MAAM,MAiBT,GAAA,CAAC,EAAI,EAAA,EAAA,KAAO,SAAU,CAAAC,QAAA,CAAQ,EAAI,EAAA,EAAE,CAAG,EAAA,EAAE,EAAI,EAAA,EAAA,EAAI;AACrD,MAAA,CAAO,GAAM,GAAA,CAAC,EAAI,EAAA,EAAA,KAAO,SAAU,CAAAA,QAAA,CAAQ,GAAI,CAAA,EAAA,EAAI,EAAE,CAAA,EAAG,EAAE,EAAA,EAAI,IAAI,CAAA;AAClE,MAAA,CAAO,GAAM,GAAA,CAAC,EAAI,EAAA,EAAA,KAAO,SAAU,CAAAA,QAAA,CAAQ,GAAI,CAAA,EAAA,EAAI,EAAE,CAAA,EAAG,EAAE,EAAA,EAAI,IAAI,CAAA;AAE3D,MAAM,SAQT,CAAC,KAAA,KAAU,UAAUC,QAAQ,CAAA,KAAK,GAAG,KAAK;AAC9C,MAAO,CAAA,GAAA,GAAM,CAAC,KAAU,KAAA,SAAA,CAAUA,SAAQ,GAAI,CAAA,KAAK,GAAG,KAAK,CAAA;AAC3D,MAAO,CAAA,GAAA,GAAM,CAAC,KAAU,KAAA,SAAA,CAAUA,SAAQ,GAAI,CAAA,KAAK,GAAG,KAAK,CAAA;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"with-inner.mjs","sources":["../../../../src/codecs/scale/with-inner.ts"],"sourcesContent":["export const withInner = <T, I>(codec: T, inner: I): T & { inner: I } => {\n const result: T & { inner: I } = codec as any\n result.inner = inner\n return result\n}\n"],"names":[],"mappings":"AAAa,MAAA,SAAA,GAAY,CAAO,KAAA,EAAU,KAA+B,KAAA;AACvE,EAAA,MAAM,MAA2B,GAAA,KAAA;AACjC,EAAA,MAAA,CAAO,KAAQ,GAAA,KAAA;AACf,EAAO,OAAA,MAAA;AACT;;;;"}
|
package/dist/esm/index.mjs
CHANGED
|
@@ -5,10 +5,11 @@ export { char } from './codecs/scale/char.mjs';
|
|
|
5
5
|
export { compactBn, compactNumber } from './codecs/scale/compact.mjs';
|
|
6
6
|
export { Hex } from './codecs/scale/Hex.mjs';
|
|
7
7
|
export { fixedStr } from './codecs/scale/fixed-str.mjs';
|
|
8
|
-
export { Bytes,
|
|
8
|
+
export { Bytes, _void, bool, compact, createCodec, createDecoder, enhanceCodec, enhanceDecoder, enhanceEncoder, i128, i16, i256, i32, i64, i8, str, u128, u16, u256, u32, u64, u8 } from 'scale-ts';
|
|
9
9
|
export { Self, selfDecoder, selfEncoder } from './codecs/scale/Self.mjs';
|
|
10
|
-
export { Variant } from './codecs/scale/Variant.mjs';
|
|
10
|
+
export { ScaleEnum, Variant } from './codecs/scale/Variant.mjs';
|
|
11
11
|
export { ethAccount } from './codecs/scale/ethAccount.mjs';
|
|
12
|
+
export { Option, Result, Struct, Tuple, Vector } from './codecs/scale/shaped.mjs';
|
|
12
13
|
export { blockHeader } from './codecs/blockHeader.mjs';
|
|
13
14
|
export { decAnyMetadata, metadata } from './codecs/metadata/metadata.mjs';
|
|
14
15
|
export { v14 } from './codecs/metadata/v14.mjs';
|
package/dist/esm/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/dist/esm/storage.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage.mjs","sources":["../../src/storage.ts"],"sourcesContent":["import { fromHex, mergeUint8, toHex } from \"@polkadot-api/utils\"\nimport type { Codec } from \"scale-ts\"\nimport {\n Blake2128,\n Blake2128Concat,\n Blake2256,\n Identity,\n Twox128,\n Twox256,\n Twox64Concat,\n} from \"./hashes\"\n\nexport type EncoderWithHash<T> = [Codec<T>, (input: Uint8Array) => Uint8Array]\n\nconst textEncoder = new TextEncoder()\n\n// the value indicates:\n// - when positive: the number of bytes to skip before reaching the transparent-encoded key\n// - when negative: the number of bytes that the opaque hasher will generate\nconst hashers: Map<(input: Uint8Array) => Uint8Array, number> = new Map([\n [Identity, 0],\n [Twox64Concat, 8],\n [Blake2128Concat, 16],\n [Blake2128, -16],\n [Blake2256, -32],\n [Twox128, -16],\n [Twox256, -32],\n])\n\nexport type OpaqueKeyHash = string & { __opaqueKeyHash?: unknown }\n\nexport const Storage = (pallet: string) => {\n const palledEncoded = Twox128(textEncoder.encode(pallet))\n return <A extends Array<EncoderWithHash<any>>>(\n name: string,\n ...encoders: [...A]\n ): {\n enc: (\n ...args: {\n [K in keyof A]: A[K] extends EncoderWithHash<infer V> ? V : unknown\n }\n ) => string\n dec: (value: string) => {\n [K in keyof A]: A[K] extends EncoderWithHash<infer V> ? V : unknown\n }\n } => {\n const palletItemEncoded = mergeUint8(\n palledEncoded,\n Twox128(textEncoder.encode(name)),\n )\n\n const palletItemEncodedHex = toHex(palletItemEncoded)\n\n const dec = (\n key: string,\n ): {\n [K in keyof A]: A[K] extends EncoderWithHash<infer V> ? V : unknown\n } => {\n if (!key.startsWith(palletItemEncodedHex))\n throw new Error(`key does not match this storage (${pallet}.${name})`)\n\n if (encoders.length === 0) return [] as any\n\n const argsKey = fromHex(key.slice(palletItemEncodedHex.length))\n const result = new Array<any>(encoders.length)\n for (let i = 0, cur = 0; i < encoders.length; i++) {\n const [codec, hasher] = encoders[i]\n const hBytes = hashers.get(hasher)\n if (hBytes == null) throw new Error(\"Unknown hasher\")\n if (hBytes < 0) {\n const opaqueBytes = hBytes * -1\n result[i] = toHex(argsKey.slice(cur, cur + opaqueBytes))\n cur += opaqueBytes\n } else {\n cur += hBytes\n result[i] = codec.dec(argsKey.slice(cur))\n cur += codec.enc(result[i]).length\n }\n }\n return result as any\n }\n\n const fns = encoders.map(\n ([{ enc }, hash]) =>\n (val: any) =>\n hash(enc(val)),\n )\n\n const enc = (\n ...args: {\n [K in keyof A]: A[K] extends EncoderWithHash<infer V> ? V : unknown\n }\n ): string =>\n toHex(\n mergeUint8(palletItemEncoded, ...args.map((val, idx) => fns[idx](val))),\n )\n\n return {\n enc,\n dec,\n }\n }\n}\n"],"names":["enc"],"mappings":";;;;;;AAcA,MAAM,WAAA,GAAc,IAAI,WAAY,EAAA;AAKpC,MAAM,OAAA,uBAA8D,GAAI,CAAA;AAAA,EACtE,CAAC,UAAU,CAAC,CAAA;AAAA,EACZ,CAAC,cAAc,CAAC,CAAA;AAAA,EAChB,CAAC,iBAAiB,EAAE,CAAA;AAAA,EACpB,CAAC,WAAW,
|
|
1
|
+
{"version":3,"file":"storage.mjs","sources":["../../src/storage.ts"],"sourcesContent":["import { fromHex, mergeUint8, toHex } from \"@polkadot-api/utils\"\nimport type { Codec } from \"scale-ts\"\nimport {\n Blake2128,\n Blake2128Concat,\n Blake2256,\n Identity,\n Twox128,\n Twox256,\n Twox64Concat,\n} from \"./hashes\"\n\nexport type EncoderWithHash<T> = [Codec<T>, (input: Uint8Array) => Uint8Array]\n\nconst textEncoder = new TextEncoder()\n\n// the value indicates:\n// - when positive: the number of bytes to skip before reaching the transparent-encoded key\n// - when negative: the number of bytes that the opaque hasher will generate\nconst hashers: Map<(input: Uint8Array) => Uint8Array, number> = new Map([\n [Identity, 0],\n [Twox64Concat, 8],\n [Blake2128Concat, 16],\n [Blake2128, -16],\n [Blake2256, -32],\n [Twox128, -16],\n [Twox256, -32],\n])\n\nexport type OpaqueKeyHash = string & { __opaqueKeyHash?: unknown }\n\nexport const Storage = (pallet: string) => {\n const palledEncoded = Twox128(textEncoder.encode(pallet))\n return <A extends Array<EncoderWithHash<any>>>(\n name: string,\n ...encoders: [...A]\n ): {\n enc: (\n ...args: {\n [K in keyof A]: A[K] extends EncoderWithHash<infer V> ? V : unknown\n }\n ) => string\n dec: (value: string) => {\n [K in keyof A]: A[K] extends EncoderWithHash<infer V> ? V : unknown\n }\n } => {\n const palletItemEncoded = mergeUint8(\n palledEncoded,\n Twox128(textEncoder.encode(name)),\n )\n\n const palletItemEncodedHex = toHex(palletItemEncoded)\n\n const dec = (\n key: string,\n ): {\n [K in keyof A]: A[K] extends EncoderWithHash<infer V> ? V : unknown\n } => {\n if (!key.startsWith(palletItemEncodedHex))\n throw new Error(`key does not match this storage (${pallet}.${name})`)\n\n if (encoders.length === 0) return [] as any\n\n const argsKey = fromHex(key.slice(palletItemEncodedHex.length))\n const result = new Array<any>(encoders.length)\n for (let i = 0, cur = 0; i < encoders.length; i++) {\n const [codec, hasher] = encoders[i]\n const hBytes = hashers.get(hasher)\n if (hBytes == null) throw new Error(\"Unknown hasher\")\n if (hBytes < 0) {\n const opaqueBytes = hBytes * -1\n result[i] = toHex(argsKey.slice(cur, cur + opaqueBytes))\n cur += opaqueBytes\n } else {\n cur += hBytes\n result[i] = codec.dec(argsKey.slice(cur))\n cur += codec.enc(result[i]).length\n }\n }\n return result as any\n }\n\n const fns = encoders.map(\n ([{ enc }, hash]) =>\n (val: any) =>\n hash(enc(val)),\n )\n\n const enc = (\n ...args: {\n [K in keyof A]: A[K] extends EncoderWithHash<infer V> ? V : unknown\n }\n ): string =>\n toHex(\n mergeUint8(palletItemEncoded, ...args.map((val, idx) => fns[idx](val))),\n )\n\n return {\n enc,\n dec,\n }\n }\n}\n"],"names":["enc"],"mappings":"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"}
|
|
@@ -4,10 +4,12 @@ import './ss58-util.mjs';
|
|
|
4
4
|
import { Binary } from '../codecs/scale/Binary.mjs';
|
|
5
5
|
import '../codecs/scale/bitSequence.mjs';
|
|
6
6
|
import '../codecs/scale/char.mjs';
|
|
7
|
+
import '../codecs/scale/compact.mjs';
|
|
7
8
|
import '../codecs/scale/Hex.mjs';
|
|
8
9
|
import '../codecs/scale/fixed-str.mjs';
|
|
9
10
|
import '../codecs/scale/Variant.mjs';
|
|
10
11
|
import '../codecs/scale/ethAccount.mjs';
|
|
12
|
+
import '../codecs/scale/shaped.mjs';
|
|
11
13
|
import '../codecs/blockHeader.mjs';
|
|
12
14
|
import '../codecs/metadata/metadata.mjs';
|
|
13
15
|
import '../codecs/metadata/v14.mjs';
|
|
@@ -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\").asBytes()\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":"
|
|
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\").asBytes()\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,MAAS,GAAA,MAAA,CAAO,QAAS,CAAA,kBAAkB,EAAE,OAAQ,EAAA;AACpD,MAAM,uBAAuB,CAAC;AAAA,EACnC,SAAA;AAAA,EACA;AACF,CAGM,KAAA;AACJ,EAAM,MAAA,iBAAA,GAAoB,wBAAwB,WAAW,CAAA;AAC7D,EAAA,MAAM,OAAU,GAAA,UAAA;AAAA,IACd,MAAA;AAAA,IACA,OAAA,CAAQ,GAAI,CAAA,iBAAA,CAAkB,MAAM,CAAA;AAAA,IACpC,GAAG,iBAAA;AAAA,IACH,GAAA,CAAI,IAAI,SAAS;AAAA,GACnB;AACA,EAAA,OAAO,UAAU,OAAO,CAAA;AAC1B;AAEa,MAAA,uBAAA,GAA0B,CAAC,WACtC,KAAA,WAAA,CAAY,OAAQ,CAAA,IAAA,CAAK,CAAC,CAAA,EAAG,CAAM,KAAA;AACjC,EAAS,KAAA,IAAA,CAAA,GAAI,KAAK,CAAK,EAAA,EAAA;AACrB,IAAM,MAAA,KAAA,GAAQ,KAAK,CAAE,CAAA,MAAA;AACrB,IAAM,MAAA,KAAA,GAAQ,KAAK,CAAE,CAAA,MAAA;AAErB,IAAI,IAAA,KAAA,IAAS,OAAc,OAAA,CAAA;AAAA,SAAA,IAClB,OAAc,OAAA,EAAA;AAAA,SAAA,IACd,OAAc,OAAA,CAAA;AAAA,SAAA,IACd,CAAE,CAAA,CAAC,CAAM,KAAA,CAAA,CAAE,CAAC,CAAA,EAAU,OAAA,CAAA,CAAE,CAAC,CAAA,GAAI,CAAE,CAAA,CAAC,IAAI,CAAI,GAAA,EAAA;AAAA;AAErD,CAAC;;;;"}
|