@polkadot/types-codec 6.12.2-2

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 (214) hide show
  1. package/abstract/AbstractArray.cjs +208 -0
  2. package/abstract/AbstractArray.d.ts +84 -0
  3. package/abstract/AbstractArray.js +197 -0
  4. package/abstract/AbstractInt.cjs +254 -0
  5. package/abstract/AbstractInt.d.ts +75 -0
  6. package/abstract/AbstractInt.js +231 -0
  7. package/abstract/index.cjs +21 -0
  8. package/abstract/index.d.ts +2 -0
  9. package/abstract/index.js +4 -0
  10. package/base/Base.cjs +109 -0
  11. package/base/Base.d.ts +54 -0
  12. package/base/Base.js +100 -0
  13. package/base/Compact.cjs +201 -0
  14. package/base/Compact.d.ts +83 -0
  15. package/base/Compact.js +186 -0
  16. package/base/DoNotConstruct.cjs +101 -0
  17. package/base/DoNotConstruct.d.ts +33 -0
  18. package/base/DoNotConstruct.js +88 -0
  19. package/base/Enum.cjs +437 -0
  20. package/base/Enum.d.ts +101 -0
  21. package/base/Enum.js +413 -0
  22. package/base/Int.cjs +45 -0
  23. package/base/Int.d.ts +16 -0
  24. package/base/Int.js +33 -0
  25. package/base/Null.cjs +111 -0
  26. package/base/Null.d.ts +54 -0
  27. package/base/Null.js +101 -0
  28. package/base/Option.cjs +256 -0
  29. package/base/Option.d.ts +88 -0
  30. package/base/Option.js +240 -0
  31. package/base/Result.cjs +109 -0
  32. package/base/Result.d.ts +46 -0
  33. package/base/Result.js +98 -0
  34. package/base/Tuple.cjs +132 -0
  35. package/base/Tuple.d.ts +39 -0
  36. package/base/Tuple.js +116 -0
  37. package/base/UInt.cjs +39 -0
  38. package/base/UInt.d.ts +15 -0
  39. package/base/UInt.js +29 -0
  40. package/base/Vec.cjs +126 -0
  41. package/base/Vec.d.ts +28 -0
  42. package/base/Vec.js +104 -0
  43. package/base/VecAny.cjs +31 -0
  44. package/base/VecAny.d.ts +15 -0
  45. package/base/VecAny.js +21 -0
  46. package/base/VecFixed.cjs +111 -0
  47. package/base/VecFixed.d.ts +26 -0
  48. package/base/VecFixed.js +93 -0
  49. package/base/index.cjs +109 -0
  50. package/base/index.d.ts +13 -0
  51. package/base/index.js +15 -0
  52. package/bundle.cjs +100 -0
  53. package/bundle.d.ts +7 -0
  54. package/bundle.js +9 -0
  55. package/detectPackage.cjs +9 -0
  56. package/detectPackage.d.ts +1 -0
  57. package/detectPackage.js +5 -0
  58. package/extended/BTreeMap.cjs +24 -0
  59. package/extended/BTreeMap.d.ts +5 -0
  60. package/extended/BTreeMap.js +14 -0
  61. package/extended/BTreeSet.cjs +227 -0
  62. package/extended/BTreeSet.d.ts +55 -0
  63. package/extended/BTreeSet.js +212 -0
  64. package/extended/BitVec.cjs +97 -0
  65. package/extended/BitVec.d.ts +26 -0
  66. package/extended/BitVec.js +82 -0
  67. package/extended/Bytes.cjs +86 -0
  68. package/extended/Bytes.d.ts +25 -0
  69. package/extended/Bytes.js +75 -0
  70. package/extended/HashMap.cjs +24 -0
  71. package/extended/HashMap.d.ts +5 -0
  72. package/extended/HashMap.js +14 -0
  73. package/extended/Linkage.cjs +89 -0
  74. package/extended/Linkage.d.ts +31 -0
  75. package/extended/Linkage.js +71 -0
  76. package/extended/Map.cjs +244 -0
  77. package/extended/Map.d.ts +50 -0
  78. package/extended/Map.js +225 -0
  79. package/extended/Range.cjs +92 -0
  80. package/extended/Range.d.ts +30 -0
  81. package/extended/Range.js +75 -0
  82. package/extended/Type.cjs +39 -0
  83. package/extended/Type.d.ts +16 -0
  84. package/extended/Type.js +27 -0
  85. package/extended/U8aFixed.cjs +66 -0
  86. package/extended/U8aFixed.d.ts +16 -0
  87. package/extended/U8aFixed.js +53 -0
  88. package/extended/WrapperOpaque.cjs +68 -0
  89. package/extended/WrapperOpaque.d.ts +18 -0
  90. package/extended/WrapperOpaque.js +57 -0
  91. package/extended/index.cjs +105 -0
  92. package/extended/index.d.ts +11 -0
  93. package/extended/index.js +13 -0
  94. package/index.cjs +20 -0
  95. package/index.d.ts +2 -0
  96. package/index.js +4 -0
  97. package/native/Bool.cjs +141 -0
  98. package/native/Bool.d.ts +62 -0
  99. package/native/Bool.js +130 -0
  100. package/native/Date.cjs +170 -0
  101. package/native/Date.d.ts +76 -0
  102. package/native/Date.js +158 -0
  103. package/native/Json.cjs +133 -0
  104. package/native/Json.d.ts +55 -0
  105. package/native/Json.js +117 -0
  106. package/native/Raw.cjs +192 -0
  107. package/native/Raw.d.ts +90 -0
  108. package/native/Raw.js +182 -0
  109. package/native/Set.cjs +268 -0
  110. package/native/Set.d.ts +76 -0
  111. package/native/Set.js +251 -0
  112. package/native/Struct.cjs +289 -0
  113. package/native/Struct.d.ts +92 -0
  114. package/native/Struct.js +273 -0
  115. package/native/Text.cjs +193 -0
  116. package/native/Text.d.ts +71 -0
  117. package/native/Text.js +178 -0
  118. package/native/index.cjs +79 -0
  119. package/native/index.d.ts +7 -0
  120. package/native/index.js +9 -0
  121. package/package.json +387 -0
  122. package/packageInfo.cjs +14 -0
  123. package/packageInfo.d.ts +4 -0
  124. package/packageInfo.js +7 -0
  125. package/primitive/I128.cjs +26 -0
  126. package/primitive/I128.d.ts +11 -0
  127. package/primitive/I128.js +16 -0
  128. package/primitive/I16.cjs +26 -0
  129. package/primitive/I16.d.ts +11 -0
  130. package/primitive/I16.js +16 -0
  131. package/primitive/I256.cjs +26 -0
  132. package/primitive/I256.d.ts +11 -0
  133. package/primitive/I256.js +16 -0
  134. package/primitive/I32.cjs +26 -0
  135. package/primitive/I32.d.ts +11 -0
  136. package/primitive/I32.js +16 -0
  137. package/primitive/I64.cjs +26 -0
  138. package/primitive/I64.d.ts +11 -0
  139. package/primitive/I64.js +16 -0
  140. package/primitive/I8.cjs +26 -0
  141. package/primitive/I8.d.ts +11 -0
  142. package/primitive/I8.js +16 -0
  143. package/primitive/U128.cjs +26 -0
  144. package/primitive/U128.d.ts +11 -0
  145. package/primitive/U128.js +16 -0
  146. package/primitive/U16.cjs +26 -0
  147. package/primitive/U16.d.ts +11 -0
  148. package/primitive/U16.js +16 -0
  149. package/primitive/U256.cjs +26 -0
  150. package/primitive/U256.d.ts +11 -0
  151. package/primitive/U256.js +16 -0
  152. package/primitive/U32.cjs +26 -0
  153. package/primitive/U32.d.ts +11 -0
  154. package/primitive/U32.js +16 -0
  155. package/primitive/U64.cjs +26 -0
  156. package/primitive/U64.d.ts +11 -0
  157. package/primitive/U64.js +16 -0
  158. package/primitive/U8.cjs +26 -0
  159. package/primitive/U8.d.ts +11 -0
  160. package/primitive/U8.js +16 -0
  161. package/primitive/USize.cjs +28 -0
  162. package/primitive/USize.d.ts +12 -0
  163. package/primitive/USize.js +18 -0
  164. package/primitive/index.cjs +187 -0
  165. package/primitive/index.d.ts +13 -0
  166. package/primitive/index.js +15 -0
  167. package/types/codec.cjs +1 -0
  168. package/types/codec.d.ts +77 -0
  169. package/types/codec.js +1 -0
  170. package/types/helpers.cjs +1 -0
  171. package/types/helpers.d.ts +14 -0
  172. package/types/helpers.js +1 -0
  173. package/types/index.cjs +57 -0
  174. package/types/index.d.ts +4 -0
  175. package/types/index.js +6 -0
  176. package/types/interfaces.cjs +1 -0
  177. package/types/interfaces.d.ts +68 -0
  178. package/types/interfaces.js +1 -0
  179. package/types/registry.cjs +1 -0
  180. package/types/registry.d.ts +44 -0
  181. package/types/registry.js +1 -0
  182. package/utils/compareArray.cjs +22 -0
  183. package/utils/compareArray.d.ts +1 -0
  184. package/utils/compareArray.js +13 -0
  185. package/utils/compareMap.cjs +39 -0
  186. package/utils/compareMap.d.ts +1 -0
  187. package/utils/compareMap.js +31 -0
  188. package/utils/compareSet.cjs +29 -0
  189. package/utils/compareSet.d.ts +1 -0
  190. package/utils/compareSet.js +22 -0
  191. package/utils/decodeU8a.cjs +69 -0
  192. package/utils/decodeU8a.d.ts +13 -0
  193. package/utils/decodeU8a.js +60 -0
  194. package/utils/index.cjs +95 -0
  195. package/utils/index.d.ts +9 -0
  196. package/utils/index.js +11 -0
  197. package/utils/mapToTypeMap.cjs +25 -0
  198. package/utils/mapToTypeMap.d.ts +5 -0
  199. package/utils/mapToTypeMap.js +17 -0
  200. package/utils/sanitize.cjs +242 -0
  201. package/utils/sanitize.d.ts +16 -0
  202. package/utils/sanitize.js +215 -0
  203. package/utils/sortValues.cjs +89 -0
  204. package/utils/sortValues.d.ts +13 -0
  205. package/utils/sortValues.js +73 -0
  206. package/utils/typeToConstructor.cjs +14 -0
  207. package/utils/typeToConstructor.d.ts +2 -0
  208. package/utils/typeToConstructor.js +6 -0
  209. package/utils/typesToMap.cjs +20 -0
  210. package/utils/typesToMap.d.ts +2 -0
  211. package/utils/typesToMap.js +13 -0
  212. package/utils/util.cjs +15 -0
  213. package/utils/util.d.ts +3 -0
  214. package/utils/util.js +7 -0
package/base/Base.d.ts ADDED
@@ -0,0 +1,54 @@
1
+ import type { HexString } from '@polkadot/util/types';
2
+ import type { AnyJson, BareOpts, Codec, CodecRegistry, IU8a } from '../types';
3
+ /**
4
+ * @name Base
5
+ * @description A type extends the Base class, when it holds a value
6
+ */
7
+ export declare abstract class Base<T extends Codec> implements Codec {
8
+ readonly registry: CodecRegistry;
9
+ createdAtHash?: IU8a;
10
+ readonly initialU8aLength?: number;
11
+ protected readonly _raw: T;
12
+ protected constructor(registry: CodecRegistry, value: T, initialU8aLength?: number);
13
+ /**
14
+ * @description The length of the value when encoded as a Uint8Array
15
+ */
16
+ get encodedLength(): number;
17
+ /**
18
+ * @description returns a hash of the contents
19
+ */
20
+ get hash(): IU8a;
21
+ /**
22
+ * @description Checks if the value is an empty value
23
+ */
24
+ get isEmpty(): boolean;
25
+ /**
26
+ * @description Compares the value of the input to see if there is a match
27
+ */
28
+ eq(other?: unknown): boolean;
29
+ /**
30
+ * @description Returns a hex string representation of the value. isLe returns a LE (number-only) representation
31
+ */
32
+ toHex(isLe?: boolean): HexString;
33
+ /**
34
+ * @description Converts the Object to to a human-friendly JSON, with additional fields, expansion and formatting of information
35
+ */
36
+ toHuman(isExtended?: boolean): AnyJson;
37
+ /**
38
+ * @description Converts the Object to JSON, typically used for RPC transfers
39
+ */
40
+ toJSON(): AnyJson;
41
+ /**
42
+ * @description Returns the string representation of the value
43
+ */
44
+ toString(): string;
45
+ /**
46
+ * @description Encodes the value as a Uint8Array as per the SCALE specifications
47
+ * @param isBare true when the value has none of the type-specific prefixes (internal)
48
+ */
49
+ toU8a(isBare?: BareOpts): Uint8Array;
50
+ /**
51
+ * @description Returns the base runtime type name for this instance
52
+ */
53
+ toRawType(): string;
54
+ }
package/base/Base.js ADDED
@@ -0,0 +1,100 @@
1
+ // Copyright 2017-2021 @polkadot/types-codec authors & contributors
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ /**
5
+ * @name Base
6
+ * @description A type extends the Base class, when it holds a value
7
+ */
8
+ export class Base {
9
+ constructor(registry, value, initialU8aLength) {
10
+ this.registry = void 0;
11
+ this.createdAtHash = void 0;
12
+ this.initialU8aLength = void 0;
13
+ this._raw = void 0;
14
+ this.registry = registry;
15
+ this._raw = value;
16
+ this.initialU8aLength = initialU8aLength;
17
+ }
18
+ /**
19
+ * @description The length of the value when encoded as a Uint8Array
20
+ */
21
+
22
+
23
+ get encodedLength() {
24
+ return this.toU8a().length;
25
+ }
26
+ /**
27
+ * @description returns a hash of the contents
28
+ */
29
+
30
+
31
+ get hash() {
32
+ return this.registry.hash(this.toU8a());
33
+ }
34
+ /**
35
+ * @description Checks if the value is an empty value
36
+ */
37
+
38
+
39
+ get isEmpty() {
40
+ return this._raw.isEmpty;
41
+ }
42
+ /**
43
+ * @description Compares the value of the input to see if there is a match
44
+ */
45
+
46
+
47
+ eq(other) {
48
+ return this._raw.eq(other);
49
+ }
50
+ /**
51
+ * @description Returns a hex string representation of the value. isLe returns a LE (number-only) representation
52
+ */
53
+
54
+
55
+ toHex(isLe) {
56
+ return this._raw.toHex(isLe);
57
+ }
58
+ /**
59
+ * @description Converts the Object to to a human-friendly JSON, with additional fields, expansion and formatting of information
60
+ */
61
+
62
+
63
+ toHuman(isExtended) {
64
+ return this._raw.toHuman(isExtended);
65
+ }
66
+ /**
67
+ * @description Converts the Object to JSON, typically used for RPC transfers
68
+ */
69
+
70
+
71
+ toJSON() {
72
+ return this._raw.toJSON();
73
+ }
74
+ /**
75
+ * @description Returns the string representation of the value
76
+ */
77
+
78
+
79
+ toString() {
80
+ return this._raw.toString();
81
+ }
82
+ /**
83
+ * @description Encodes the value as a Uint8Array as per the SCALE specifications
84
+ * @param isBare true when the value has none of the type-specific prefixes (internal)
85
+ */
86
+
87
+
88
+ toU8a(isBare) {
89
+ return this._raw.toU8a(isBare);
90
+ }
91
+ /**
92
+ * @description Returns the base runtime type name for this instance
93
+ */
94
+
95
+
96
+ toRawType() {
97
+ return 'Base';
98
+ }
99
+
100
+ }
@@ -0,0 +1,201 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.Compact = void 0;
9
+
10
+ var _classPrivateFieldLooseBase2 = _interopRequireDefault(require("@babel/runtime/helpers/classPrivateFieldLooseBase"));
11
+
12
+ var _classPrivateFieldLooseKey2 = _interopRequireDefault(require("@babel/runtime/helpers/classPrivateFieldLooseKey"));
13
+
14
+ var _util = require("@polkadot/util");
15
+
16
+ var _index = require("../utils/index.cjs");
17
+
18
+ // Copyright 2017-2021 @polkadot/types-codec authors & contributors
19
+ // SPDX-License-Identifier: Apache-2.0
20
+ var _Type = /*#__PURE__*/(0, _classPrivateFieldLooseKey2.default)("Type");
21
+
22
+ var _raw = /*#__PURE__*/(0, _classPrivateFieldLooseKey2.default)("raw");
23
+
24
+ /**
25
+ * @name Compact
26
+ * @description
27
+ * A compact length-encoding codec wrapper. It performs the same function as Length, however
28
+ * differs in that it uses a variable number of bytes to do the actual encoding. This is mostly
29
+ * used by other types to add length-prefixed encoding, or in the case of wrapped types, taking
30
+ * a number and making the compact representation thereof
31
+ */
32
+ class Compact {
33
+ constructor(registry, Type) {
34
+ let value = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
35
+ this.registry = void 0;
36
+ this.createdAtHash = void 0;
37
+ this.initialU8aLength = void 0;
38
+ Object.defineProperty(this, _Type, {
39
+ writable: true,
40
+ value: void 0
41
+ });
42
+ Object.defineProperty(this, _raw, {
43
+ writable: true,
44
+ value: void 0
45
+ });
46
+ this.registry = registry;
47
+ (0, _classPrivateFieldLooseBase2.default)(this, _Type)[_Type] = (0, _index.typeToConstructor)(registry, Type);
48
+ const [raw, decodedLength] = Compact.decodeCompact(registry, (0, _classPrivateFieldLooseBase2.default)(this, _Type)[_Type], value);
49
+ this.initialU8aLength = decodedLength;
50
+ (0, _classPrivateFieldLooseBase2.default)(this, _raw)[_raw] = raw;
51
+ }
52
+
53
+ static with(Type) {
54
+ return class extends Compact {
55
+ constructor(registry, value) {
56
+ super(registry, Type, value);
57
+ }
58
+
59
+ };
60
+ }
61
+ /** @internal */
62
+
63
+
64
+ static decodeCompact(registry, Type, value) {
65
+ if (value instanceof Compact) {
66
+ return [new Type(registry, (0, _classPrivateFieldLooseBase2.default)(value, _raw)[_raw]), 0];
67
+ } else if (value instanceof Type) {
68
+ return [value, 0];
69
+ } else if ((0, _util.isString)(value) || (0, _util.isNumber)(value) || (0, _util.isBn)(value) || (0, _util.isBigInt)(value)) {
70
+ return [new Type(registry, value), 0];
71
+ }
72
+
73
+ const [decodedLength, bn] = (0, _util.compactFromU8a)(value);
74
+ return [new Type(registry, bn), decodedLength];
75
+ }
76
+ /**
77
+ * @description The length of the value when encoded as a Uint8Array
78
+ */
79
+
80
+
81
+ get encodedLength() {
82
+ return this.toU8a().length;
83
+ }
84
+ /**
85
+ * @description returns a hash of the contents
86
+ */
87
+
88
+
89
+ get hash() {
90
+ return this.registry.hash(this.toU8a());
91
+ }
92
+ /**
93
+ * @description Checks if the value is an empty value
94
+ */
95
+
96
+
97
+ get isEmpty() {
98
+ return (0, _classPrivateFieldLooseBase2.default)(this, _raw)[_raw].isEmpty;
99
+ }
100
+ /**
101
+ * @description Returns the number of bits in the value
102
+ */
103
+
104
+
105
+ bitLength() {
106
+ return (0, _classPrivateFieldLooseBase2.default)(this, _raw)[_raw].bitLength();
107
+ }
108
+ /**
109
+ * @description Compares the value of the input to see if there is a match
110
+ */
111
+
112
+
113
+ eq(other) {
114
+ return (0, _classPrivateFieldLooseBase2.default)(this, _raw)[_raw].eq(other instanceof Compact ? (0, _classPrivateFieldLooseBase2.default)(other, _raw)[_raw] : other);
115
+ }
116
+ /**
117
+ * @description Returns a BigInt representation of the number
118
+ */
119
+
120
+
121
+ toBigInt() {
122
+ return (0, _classPrivateFieldLooseBase2.default)(this, _raw)[_raw].toBigInt();
123
+ }
124
+ /**
125
+ * @description Returns the BN representation of the number
126
+ */
127
+
128
+
129
+ toBn() {
130
+ return (0, _classPrivateFieldLooseBase2.default)(this, _raw)[_raw].toBn();
131
+ }
132
+ /**
133
+ * @description Returns a hex string representation of the value. isLe returns a LE (number-only) representation
134
+ */
135
+
136
+
137
+ toHex(isLe) {
138
+ return (0, _classPrivateFieldLooseBase2.default)(this, _raw)[_raw].toHex(isLe);
139
+ }
140
+ /**
141
+ * @description Converts the Object to to a human-friendly JSON, with additional fields, expansion and formatting of information
142
+ */
143
+
144
+
145
+ toHuman(isExtended) {
146
+ return (0, _classPrivateFieldLooseBase2.default)(this, _raw)[_raw].toHuman(isExtended);
147
+ }
148
+ /**
149
+ * @description Converts the Object to JSON, typically used for RPC transfers
150
+ */
151
+
152
+
153
+ toJSON() {
154
+ return (0, _classPrivateFieldLooseBase2.default)(this, _raw)[_raw].toJSON();
155
+ }
156
+ /**
157
+ * @description Returns the number representation for the value
158
+ */
159
+
160
+
161
+ toNumber() {
162
+ return (0, _classPrivateFieldLooseBase2.default)(this, _raw)[_raw].toNumber();
163
+ }
164
+ /**
165
+ * @description Returns the base runtime type name for this instance
166
+ */
167
+
168
+
169
+ toRawType() {
170
+ return `Compact<${this.registry.getClassName((0, _classPrivateFieldLooseBase2.default)(this, _Type)[_Type]) || (0, _classPrivateFieldLooseBase2.default)(this, _raw)[_raw].toRawType()}>`;
171
+ }
172
+ /**
173
+ * @description Returns the string representation of the value
174
+ */
175
+
176
+
177
+ toString() {
178
+ return (0, _classPrivateFieldLooseBase2.default)(this, _raw)[_raw].toString();
179
+ }
180
+ /**
181
+ * @description Encodes the value as a Uint8Array as per the SCALE specifications
182
+ * @param isBare true when the value has none of the type-specific prefixes (internal)
183
+ */
184
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
185
+
186
+
187
+ toU8a(isBare) {
188
+ return (0, _util.compactToU8a)((0, _classPrivateFieldLooseBase2.default)(this, _raw)[_raw].toBn());
189
+ }
190
+ /**
191
+ * @description Returns the embedded [[UInt]] or [[Moment]] value
192
+ */
193
+
194
+
195
+ unwrap() {
196
+ return (0, _classPrivateFieldLooseBase2.default)(this, _raw)[_raw];
197
+ }
198
+
199
+ }
200
+
201
+ exports.Compact = Compact;
@@ -0,0 +1,83 @@
1
+ /// <reference types="bn.js" />
2
+ import type { BN } from '@polkadot/util';
3
+ import type { HexString } from '@polkadot/util/types';
4
+ import type { AnyJson, AnyNumber, CodecClass, CodecRegistry, ICompact, INumber, IU8a } from '../types';
5
+ /**
6
+ * @name Compact
7
+ * @description
8
+ * A compact length-encoding codec wrapper. It performs the same function as Length, however
9
+ * differs in that it uses a variable number of bytes to do the actual encoding. This is mostly
10
+ * used by other types to add length-prefixed encoding, or in the case of wrapped types, taking
11
+ * a number and making the compact representation thereof
12
+ */
13
+ export declare class Compact<T extends INumber> implements ICompact<T> {
14
+ #private;
15
+ readonly registry: CodecRegistry;
16
+ createdAtHash?: IU8a;
17
+ readonly initialU8aLength?: number;
18
+ constructor(registry: CodecRegistry, Type: CodecClass<T> | string, value?: Compact<T> | AnyNumber);
19
+ static with<T extends INumber>(Type: CodecClass<T> | string): CodecClass<Compact<T>>;
20
+ /** @internal */
21
+ static decodeCompact<T extends INumber>(registry: CodecRegistry, Type: CodecClass<T>, value: Compact<T> | AnyNumber): [T, number];
22
+ /**
23
+ * @description The length of the value when encoded as a Uint8Array
24
+ */
25
+ get encodedLength(): number;
26
+ /**
27
+ * @description returns a hash of the contents
28
+ */
29
+ get hash(): IU8a;
30
+ /**
31
+ * @description Checks if the value is an empty value
32
+ */
33
+ get isEmpty(): boolean;
34
+ /**
35
+ * @description Returns the number of bits in the value
36
+ */
37
+ bitLength(): number;
38
+ /**
39
+ * @description Compares the value of the input to see if there is a match
40
+ */
41
+ eq(other?: unknown): boolean;
42
+ /**
43
+ * @description Returns a BigInt representation of the number
44
+ */
45
+ toBigInt(): bigint;
46
+ /**
47
+ * @description Returns the BN representation of the number
48
+ */
49
+ toBn(): BN;
50
+ /**
51
+ * @description Returns a hex string representation of the value. isLe returns a LE (number-only) representation
52
+ */
53
+ toHex(isLe?: boolean): HexString;
54
+ /**
55
+ * @description Converts the Object to to a human-friendly JSON, with additional fields, expansion and formatting of information
56
+ */
57
+ toHuman(isExtended?: boolean): AnyJson;
58
+ /**
59
+ * @description Converts the Object to JSON, typically used for RPC transfers
60
+ */
61
+ toJSON(): AnyJson;
62
+ /**
63
+ * @description Returns the number representation for the value
64
+ */
65
+ toNumber(): number;
66
+ /**
67
+ * @description Returns the base runtime type name for this instance
68
+ */
69
+ toRawType(): string;
70
+ /**
71
+ * @description Returns the string representation of the value
72
+ */
73
+ toString(): string;
74
+ /**
75
+ * @description Encodes the value as a Uint8Array as per the SCALE specifications
76
+ * @param isBare true when the value has none of the type-specific prefixes (internal)
77
+ */
78
+ toU8a(isBare?: boolean): Uint8Array;
79
+ /**
80
+ * @description Returns the embedded [[UInt]] or [[Moment]] value
81
+ */
82
+ unwrap(): T;
83
+ }
@@ -0,0 +1,186 @@
1
+ import _classPrivateFieldLooseBase from "@babel/runtime/helpers/esm/classPrivateFieldLooseBase";
2
+ import _classPrivateFieldLooseKey from "@babel/runtime/helpers/esm/classPrivateFieldLooseKey";
3
+ // Copyright 2017-2021 @polkadot/types-codec authors & contributors
4
+ // SPDX-License-Identifier: Apache-2.0
5
+ import { compactFromU8a, compactToU8a, isBigInt, isBn, isNumber, isString } from '@polkadot/util';
6
+ import { typeToConstructor } from "../utils/index.js";
7
+ /**
8
+ * @name Compact
9
+ * @description
10
+ * A compact length-encoding codec wrapper. It performs the same function as Length, however
11
+ * differs in that it uses a variable number of bytes to do the actual encoding. This is mostly
12
+ * used by other types to add length-prefixed encoding, or in the case of wrapped types, taking
13
+ * a number and making the compact representation thereof
14
+ */
15
+
16
+ var _Type = /*#__PURE__*/_classPrivateFieldLooseKey("Type");
17
+
18
+ var _raw = /*#__PURE__*/_classPrivateFieldLooseKey("raw");
19
+
20
+ export class Compact {
21
+ constructor(registry, Type, value = 0) {
22
+ this.registry = void 0;
23
+ this.createdAtHash = void 0;
24
+ this.initialU8aLength = void 0;
25
+ Object.defineProperty(this, _Type, {
26
+ writable: true,
27
+ value: void 0
28
+ });
29
+ Object.defineProperty(this, _raw, {
30
+ writable: true,
31
+ value: void 0
32
+ });
33
+ this.registry = registry;
34
+ _classPrivateFieldLooseBase(this, _Type)[_Type] = typeToConstructor(registry, Type);
35
+ const [raw, decodedLength] = Compact.decodeCompact(registry, _classPrivateFieldLooseBase(this, _Type)[_Type], value);
36
+ this.initialU8aLength = decodedLength;
37
+ _classPrivateFieldLooseBase(this, _raw)[_raw] = raw;
38
+ }
39
+
40
+ static with(Type) {
41
+ return class extends Compact {
42
+ constructor(registry, value) {
43
+ super(registry, Type, value);
44
+ }
45
+
46
+ };
47
+ }
48
+ /** @internal */
49
+
50
+
51
+ static decodeCompact(registry, Type, value) {
52
+ if (value instanceof Compact) {
53
+ return [new Type(registry, _classPrivateFieldLooseBase(value, _raw)[_raw]), 0];
54
+ } else if (value instanceof Type) {
55
+ return [value, 0];
56
+ } else if (isString(value) || isNumber(value) || isBn(value) || isBigInt(value)) {
57
+ return [new Type(registry, value), 0];
58
+ }
59
+
60
+ const [decodedLength, bn] = compactFromU8a(value);
61
+ return [new Type(registry, bn), decodedLength];
62
+ }
63
+ /**
64
+ * @description The length of the value when encoded as a Uint8Array
65
+ */
66
+
67
+
68
+ get encodedLength() {
69
+ return this.toU8a().length;
70
+ }
71
+ /**
72
+ * @description returns a hash of the contents
73
+ */
74
+
75
+
76
+ get hash() {
77
+ return this.registry.hash(this.toU8a());
78
+ }
79
+ /**
80
+ * @description Checks if the value is an empty value
81
+ */
82
+
83
+
84
+ get isEmpty() {
85
+ return _classPrivateFieldLooseBase(this, _raw)[_raw].isEmpty;
86
+ }
87
+ /**
88
+ * @description Returns the number of bits in the value
89
+ */
90
+
91
+
92
+ bitLength() {
93
+ return _classPrivateFieldLooseBase(this, _raw)[_raw].bitLength();
94
+ }
95
+ /**
96
+ * @description Compares the value of the input to see if there is a match
97
+ */
98
+
99
+
100
+ eq(other) {
101
+ return _classPrivateFieldLooseBase(this, _raw)[_raw].eq(other instanceof Compact ? _classPrivateFieldLooseBase(other, _raw)[_raw] : other);
102
+ }
103
+ /**
104
+ * @description Returns a BigInt representation of the number
105
+ */
106
+
107
+
108
+ toBigInt() {
109
+ return _classPrivateFieldLooseBase(this, _raw)[_raw].toBigInt();
110
+ }
111
+ /**
112
+ * @description Returns the BN representation of the number
113
+ */
114
+
115
+
116
+ toBn() {
117
+ return _classPrivateFieldLooseBase(this, _raw)[_raw].toBn();
118
+ }
119
+ /**
120
+ * @description Returns a hex string representation of the value. isLe returns a LE (number-only) representation
121
+ */
122
+
123
+
124
+ toHex(isLe) {
125
+ return _classPrivateFieldLooseBase(this, _raw)[_raw].toHex(isLe);
126
+ }
127
+ /**
128
+ * @description Converts the Object to to a human-friendly JSON, with additional fields, expansion and formatting of information
129
+ */
130
+
131
+
132
+ toHuman(isExtended) {
133
+ return _classPrivateFieldLooseBase(this, _raw)[_raw].toHuman(isExtended);
134
+ }
135
+ /**
136
+ * @description Converts the Object to JSON, typically used for RPC transfers
137
+ */
138
+
139
+
140
+ toJSON() {
141
+ return _classPrivateFieldLooseBase(this, _raw)[_raw].toJSON();
142
+ }
143
+ /**
144
+ * @description Returns the number representation for the value
145
+ */
146
+
147
+
148
+ toNumber() {
149
+ return _classPrivateFieldLooseBase(this, _raw)[_raw].toNumber();
150
+ }
151
+ /**
152
+ * @description Returns the base runtime type name for this instance
153
+ */
154
+
155
+
156
+ toRawType() {
157
+ return `Compact<${this.registry.getClassName(_classPrivateFieldLooseBase(this, _Type)[_Type]) || _classPrivateFieldLooseBase(this, _raw)[_raw].toRawType()}>`;
158
+ }
159
+ /**
160
+ * @description Returns the string representation of the value
161
+ */
162
+
163
+
164
+ toString() {
165
+ return _classPrivateFieldLooseBase(this, _raw)[_raw].toString();
166
+ }
167
+ /**
168
+ * @description Encodes the value as a Uint8Array as per the SCALE specifications
169
+ * @param isBare true when the value has none of the type-specific prefixes (internal)
170
+ */
171
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
172
+
173
+
174
+ toU8a(isBare) {
175
+ return compactToU8a(_classPrivateFieldLooseBase(this, _raw)[_raw].toBn());
176
+ }
177
+ /**
178
+ * @description Returns the embedded [[UInt]] or [[Moment]] value
179
+ */
180
+
181
+
182
+ unwrap() {
183
+ return _classPrivateFieldLooseBase(this, _raw)[_raw];
184
+ }
185
+
186
+ }