@polkadot/types-codec 9.14.2 → 10.0.1

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 (157) hide show
  1. package/abstract/Array.js +140 -155
  2. package/abstract/Base.js +95 -112
  3. package/abstract/Int.js +212 -220
  4. package/abstract/Object.js +34 -45
  5. package/abstract/index.js +3 -6
  6. package/base/Compact.js +149 -165
  7. package/base/DoNotConstruct.js +61 -64
  8. package/base/Enum.js +345 -382
  9. package/base/Int.js +14 -18
  10. package/base/Null.js +71 -82
  11. package/base/Option.js +217 -226
  12. package/base/Result.js +54 -67
  13. package/base/Tuple.js +96 -101
  14. package/base/UInt.js +11 -15
  15. package/base/Vec.js +84 -89
  16. package/base/VecAny.js +8 -12
  17. package/base/VecFixed.js +59 -70
  18. package/base/index.js +12 -15
  19. package/bundle.js +7 -10
  20. package/cjs/abstract/Array.js +138 -159
  21. package/cjs/abstract/Base.js +96 -117
  22. package/cjs/abstract/Int.js +215 -238
  23. package/cjs/abstract/Object.js +30 -49
  24. package/cjs/abstract/index.js +8 -25
  25. package/cjs/base/Compact.js +151 -173
  26. package/cjs/base/DoNotConstruct.js +63 -70
  27. package/cjs/base/Enum.js +350 -396
  28. package/cjs/base/Int.js +16 -24
  29. package/cjs/base/Null.js +70 -86
  30. package/cjs/base/Option.js +220 -234
  31. package/cjs/base/Result.js +56 -71
  32. package/cjs/base/Tuple.js +103 -109
  33. package/cjs/base/UInt.js +13 -19
  34. package/cjs/base/Vec.js +94 -101
  35. package/cjs/base/VecAny.js +10 -16
  36. package/cjs/base/VecFixed.js +66 -79
  37. package/cjs/base/index.js +26 -88
  38. package/cjs/bundle.js +11 -86
  39. package/cjs/detectOther.js +2 -10
  40. package/cjs/detectPackage.js +6 -11
  41. package/cjs/extended/BTreeMap.js +10 -16
  42. package/cjs/extended/BTreeSet.js +162 -178
  43. package/cjs/extended/BitVec.js +70 -77
  44. package/cjs/extended/Bytes.js +59 -62
  45. package/cjs/extended/HashMap.js +10 -16
  46. package/cjs/extended/Linkage.js +50 -60
  47. package/cjs/extended/Map.js +176 -181
  48. package/cjs/extended/OptionBool.js +65 -68
  49. package/cjs/extended/Range.js +37 -46
  50. package/cjs/extended/RangeInclusive.js +13 -21
  51. package/cjs/extended/Type.js +14 -22
  52. package/cjs/extended/U8aFixed.js +33 -43
  53. package/cjs/extended/WrapperKeepOpaque.js +99 -99
  54. package/cjs/extended/WrapperOpaque.js +19 -28
  55. package/cjs/extended/index.js +31 -108
  56. package/cjs/index.js +3 -15
  57. package/cjs/native/Bool.js +101 -116
  58. package/cjs/native/Date.js +125 -151
  59. package/cjs/native/Float.js +95 -114
  60. package/cjs/native/Json.js +102 -124
  61. package/cjs/native/Raw.js +128 -150
  62. package/cjs/native/Set.js +200 -220
  63. package/cjs/native/Struct.data.js +2 -9
  64. package/cjs/native/Struct.js +238 -251
  65. package/cjs/native/Text.js +137 -149
  66. package/cjs/native/index.js +21 -78
  67. package/cjs/packageInfo.js +2 -16
  68. package/cjs/primitive/F32.js +8 -11
  69. package/cjs/primitive/F64.js +8 -11
  70. package/cjs/primitive/I128.js +8 -11
  71. package/cjs/primitive/I16.js +8 -11
  72. package/cjs/primitive/I256.js +8 -11
  73. package/cjs/primitive/I32.js +8 -11
  74. package/cjs/primitive/I64.js +8 -11
  75. package/cjs/primitive/I8.js +8 -11
  76. package/cjs/primitive/U128.js +8 -11
  77. package/cjs/primitive/U16.js +8 -11
  78. package/cjs/primitive/U256.js +8 -11
  79. package/cjs/primitive/U32.js +8 -11
  80. package/cjs/primitive/U64.js +8 -11
  81. package/cjs/primitive/U8.js +8 -11
  82. package/cjs/primitive/USize.js +7 -13
  83. package/cjs/primitive/index.js +47 -199
  84. package/cjs/types/codec.js +2 -1
  85. package/cjs/types/helpers.js +2 -1
  86. package/cjs/types/index.js +6 -48
  87. package/cjs/types/interfaces.js +2 -1
  88. package/cjs/types/registry.js +2 -1
  89. package/cjs/utils/compareArray.js +12 -17
  90. package/cjs/utils/compareMap.js +23 -26
  91. package/cjs/utils/compareSet.js +17 -23
  92. package/cjs/utils/decodeU8a.js +63 -74
  93. package/cjs/utils/index.js +24 -91
  94. package/cjs/utils/mapToTypeMap.js +13 -18
  95. package/cjs/utils/sanitize.js +198 -204
  96. package/cjs/utils/sortValues.js +39 -49
  97. package/cjs/utils/typeToConstructor.js +8 -11
  98. package/cjs/utils/typesToMap.js +10 -16
  99. package/cjs/utils/util.js +6 -11
  100. package/detectOther.js +0 -5
  101. package/detectPackage.js +2 -7
  102. package/extended/BTreeMap.js +8 -11
  103. package/extended/BTreeSet.js +159 -171
  104. package/extended/BitVec.js +63 -70
  105. package/extended/Bytes.js +56 -57
  106. package/extended/HashMap.js +8 -11
  107. package/extended/Linkage.js +46 -51
  108. package/extended/Map.js +173 -173
  109. package/extended/OptionBool.js +62 -62
  110. package/extended/Range.js +31 -39
  111. package/extended/RangeInclusive.js +11 -16
  112. package/extended/Type.js +12 -17
  113. package/extended/U8aFixed.js +30 -36
  114. package/extended/WrapperKeepOpaque.js +92 -91
  115. package/extended/WrapperOpaque.js +17 -23
  116. package/extended/index.js +14 -17
  117. package/index.js +2 -5
  118. package/native/Bool.js +102 -111
  119. package/native/Date.js +126 -144
  120. package/native/Float.js +94 -107
  121. package/native/Json.js +104 -114
  122. package/native/Raw.js +130 -146
  123. package/native/Set.js +194 -209
  124. package/native/Struct.data.js +0 -3
  125. package/native/Struct.js +233 -241
  126. package/native/Text.js +135 -143
  127. package/native/index.js +8 -11
  128. package/package.json +8 -5
  129. package/packageInfo.js +1 -11
  130. package/primitive/F32.js +3 -7
  131. package/primitive/F64.js +3 -7
  132. package/primitive/I128.js +3 -7
  133. package/primitive/I16.js +3 -7
  134. package/primitive/I256.js +3 -7
  135. package/primitive/I32.js +3 -7
  136. package/primitive/I64.js +3 -7
  137. package/primitive/I8.js +3 -7
  138. package/primitive/U128.js +3 -7
  139. package/primitive/U16.js +3 -7
  140. package/primitive/U256.js +3 -7
  141. package/primitive/U32.js +3 -7
  142. package/primitive/U64.js +3 -7
  143. package/primitive/U8.js +3 -7
  144. package/primitive/USize.js +5 -9
  145. package/primitive/index.js +15 -18
  146. package/types/index.js +4 -7
  147. package/utils/compareArray.js +7 -11
  148. package/utils/compareMap.js +18 -19
  149. package/utils/compareSet.js +12 -16
  150. package/utils/decodeU8a.js +54 -61
  151. package/utils/index.js +9 -12
  152. package/utils/mapToTypeMap.js +9 -13
  153. package/utils/sanitize.js +182 -185
  154. package/utils/sortValues.js +32 -36
  155. package/utils/typeToConstructor.js +3 -4
  156. package/utils/typesToMap.js +5 -8
  157. package/utils/util.js +1 -4
@@ -1,13 +1,9 @@
1
1
  "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
2
+ var _Float_bitLength;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
6
4
  exports.Float = void 0;
7
- var _util = require("@polkadot/util");
8
- // Copyright 2017-2023 @polkadot/types-codec authors & contributors
9
- // SPDX-License-Identifier: Apache-2.0
10
-
5
+ const tslib_1 = require("tslib");
6
+ const util_1 = require("@polkadot/util");
11
7
  /**
12
8
  * @name Float
13
9
  * @description
@@ -17,110 +13,95 @@ var _util = require("@polkadot/util");
17
13
  * in some eth_* RPCs
18
14
  */
19
15
  class Float extends Number {
20
- #bitLength;
21
- constructor(registry, value) {
22
- let {
23
- bitLength = 32
24
- } = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
25
- super((0, _util.isU8a)(value) || (0, _util.isHex)(value) ? value.length === 0 ? 0 : (0, _util.u8aToFloat)((0, _util.u8aToU8a)(value), {
26
- bitLength
27
- }) : value || 0);
28
- this.#bitLength = bitLength;
29
- this.encodedLength = bitLength / 8;
30
- this.initialU8aLength = this.encodedLength;
31
- this.registry = registry;
32
- }
33
- static with(bitLength) {
34
- return class extends Float {
35
- constructor(registry, value) {
36
- super(registry, value, {
37
- bitLength
38
- });
39
- }
40
- };
41
- }
42
-
43
- /**
44
- * @description returns a hash of the contents
45
- */
46
- get hash() {
47
- return this.registry.hash(this.toU8a());
48
- }
49
-
50
- /**
51
- * @description Returns true if the type wraps an empty/default all-0 value
52
- */
53
- get isEmpty() {
54
- return this.valueOf() === 0;
55
- }
56
-
57
- /**
58
- * @description Compares the value of the input to see if there is a match
59
- */
60
- eq(other) {
61
- return this.valueOf() === Number(other);
62
- }
63
-
64
- /**
65
- * @description Returns a breakdown of the hex encoding for this Codec
66
- */
67
- inspect() {
68
- return {
69
- outer: [this.toU8a()]
70
- };
71
- }
72
-
73
- /**
74
- * @description Returns a hex string representation of the value
75
- */
76
- toHex() {
77
- return (0, _util.u8aToHex)(this.toU8a());
78
- }
79
-
80
- /**
81
- * @description Converts the Object to to a human-friendly JSON, with additional fields, expansion and formatting of information
82
- */
83
- toHuman() {
84
- return this.toString();
85
- }
86
-
87
- /**
88
- * @description Converts the Object to JSON, typically used for RPC transfers
89
- */
90
- toJSON() {
91
- // Not sure if this is actually a hex or a string value
92
- // (would need to check against RPCs to see the result here)
93
- return this.toHex();
94
- }
95
-
96
- /**
97
- * @description Returns the number representation (Same as valueOf)
98
- */
99
- toNumber() {
100
- return this.valueOf();
101
- }
102
-
103
- /**
104
- * @description Converts the value in a best-fit primitive form
105
- */
106
- toPrimitive() {
107
- return this.toNumber();
108
- }
109
-
110
- /**
111
- * @description Returns the base runtime type name for this instance
112
- */
113
- toRawType() {
114
- return `f${this.#bitLength}`;
115
- }
116
-
117
- /**
118
- * @description Encodes the value as a Uint8Array as per the SCALE specifications
119
- */
120
- toU8a() {
121
- return (0, _util.floatToU8a)(this, {
122
- bitLength: this.#bitLength
123
- });
124
- }
16
+ constructor(registry, value, { bitLength = 32 } = {}) {
17
+ super((0, util_1.isU8a)(value) || (0, util_1.isHex)(value)
18
+ ? value.length === 0
19
+ ? 0
20
+ : (0, util_1.u8aToFloat)((0, util_1.u8aToU8a)(value), { bitLength })
21
+ : (value || 0));
22
+ _Float_bitLength.set(this, void 0);
23
+ tslib_1.__classPrivateFieldSet(this, _Float_bitLength, bitLength, "f");
24
+ this.encodedLength = bitLength / 8;
25
+ this.initialU8aLength = this.encodedLength;
26
+ this.registry = registry;
27
+ }
28
+ static with(bitLength) {
29
+ return class extends Float {
30
+ constructor(registry, value) {
31
+ super(registry, value, { bitLength });
32
+ }
33
+ };
34
+ }
35
+ /**
36
+ * @description returns a hash of the contents
37
+ */
38
+ get hash() {
39
+ return this.registry.hash(this.toU8a());
40
+ }
41
+ /**
42
+ * @description Returns true if the type wraps an empty/default all-0 value
43
+ */
44
+ get isEmpty() {
45
+ return this.valueOf() === 0;
46
+ }
47
+ /**
48
+ * @description Compares the value of the input to see if there is a match
49
+ */
50
+ eq(other) {
51
+ return this.valueOf() === Number(other);
52
+ }
53
+ /**
54
+ * @description Returns a breakdown of the hex encoding for this Codec
55
+ */
56
+ inspect() {
57
+ return {
58
+ outer: [this.toU8a()]
59
+ };
60
+ }
61
+ /**
62
+ * @description Returns a hex string representation of the value
63
+ */
64
+ toHex() {
65
+ return (0, util_1.u8aToHex)(this.toU8a());
66
+ }
67
+ /**
68
+ * @description Converts the Object to to a human-friendly JSON, with additional fields, expansion and formatting of information
69
+ */
70
+ toHuman() {
71
+ return this.toString();
72
+ }
73
+ /**
74
+ * @description Converts the Object to JSON, typically used for RPC transfers
75
+ */
76
+ toJSON() {
77
+ // Not sure if this is actually a hex or a string value
78
+ // (would need to check against RPCs to see the result here)
79
+ return this.toHex();
80
+ }
81
+ /**
82
+ * @description Returns the number representation (Same as valueOf)
83
+ */
84
+ toNumber() {
85
+ return this.valueOf();
86
+ }
87
+ /**
88
+ * @description Converts the value in a best-fit primitive form
89
+ */
90
+ toPrimitive() {
91
+ return this.toNumber();
92
+ }
93
+ /**
94
+ * @description Returns the base runtime type name for this instance
95
+ */
96
+ toRawType() {
97
+ return `f${tslib_1.__classPrivateFieldGet(this, _Float_bitLength, "f")}`;
98
+ }
99
+ /**
100
+ * @description Encodes the value as a Uint8Array as per the SCALE specifications
101
+ */
102
+ toU8a() {
103
+ return (0, util_1.floatToU8a)(this, { bitLength: tslib_1.__classPrivateFieldGet(this, _Float_bitLength, "f") });
104
+ }
125
105
  }
126
- exports.Float = Float;
106
+ exports.Float = Float;
107
+ _Float_bitLength = new WeakMap();
@@ -1,19 +1,12 @@
1
1
  "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
2
+ Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.Json = void 0;
7
- var _util = require("@polkadot/util");
8
- var _utils = require("../utils");
9
- // Copyright 2017-2023 @polkadot/types-codec authors & contributors
10
- // SPDX-License-Identifier: Apache-2.0
11
-
4
+ const util_1 = require("@polkadot/util");
5
+ const utils_1 = require("../utils");
12
6
  /** @internal */
13
7
  function decodeJson(value) {
14
- return Object.entries(value || {});
8
+ return Object.entries(value || {});
15
9
  }
16
-
17
10
  /**
18
11
  * @name Json
19
12
  * @description
@@ -23,118 +16,103 @@ function decodeJson(value) {
23
16
  * @noInheritDoc
24
17
  */
25
18
  class Json extends Map {
26
- constructor(registry, value) {
27
- const decoded = decodeJson(value);
28
- super(decoded);
29
- this.registry = registry;
30
- (0, _util.objectProperties)(this, decoded.map(_ref => {
31
- let [k] = _ref;
32
- return k;
33
- }), k => this.get(k));
34
- }
35
-
36
- /**
37
- * @description Always 0, never encodes as a Uint8Array
38
- */
39
- get encodedLength() {
40
- return 0;
41
- }
42
-
43
- /**
44
- * @description returns a hash of the contents
45
- */
46
- get hash() {
47
- return this.registry.hash(this.toU8a());
48
- }
49
-
50
- /**
51
- * @description Checks if the value is an empty value
52
- */
53
- get isEmpty() {
54
- return [...this.keys()].length === 0;
55
- }
56
-
57
- /**
58
- * @description Compares the value of the input to see if there is a match
59
- */
60
- eq(other) {
61
- return (0, _utils.compareMap)(this, other);
62
- }
63
-
64
- /**
65
- * @description Returns a typed value from the internal map
66
- */
67
- getT(key) {
68
- return this.get(key);
69
- }
70
-
71
- /**
72
- * @description Unimplemented, will throw
73
- */
74
- inspect() {
75
- throw new Error('Unimplemented');
76
- }
77
-
78
- /**
79
- * @description Unimplemented, will throw
80
- */
81
- toHex() {
82
- throw new Error('Unimplemented');
83
- }
84
-
85
- /**
86
- * @description Converts the Object to to a human-friendly JSON, with additional fields, expansion and formatting of information
87
- */
88
- toHuman() {
89
- return [...this.entries()].reduce((json, _ref2) => {
90
- let [key, value] = _ref2;
91
- json[key] = (0, _util.isFunction)(value.toHuman) ? value.toHuman() : value;
92
- return json;
93
- }, {});
94
- }
95
-
96
- /**
97
- * @description Converts the Object to JSON, typically used for RPC transfers
98
- */
99
- toJSON() {
100
- return [...this.entries()].reduce((json, _ref3) => {
101
- let [key, value] = _ref3;
102
- json[key] = value;
103
- return json;
104
- }, {});
105
- }
106
-
107
- /**
108
- * @description Converts the value in a best-fit primitive form
109
- */
110
- toPrimitive() {
111
- return [...this.entries()].reduce((json, _ref4) => {
112
- let [key, value] = _ref4;
113
- json[key] = (0, _util.isFunction)(value.toPrimitive) ? value.toPrimitive() : value;
114
- return json;
115
- }, {});
116
- }
117
-
118
- /**
119
- * @description Returns the base runtime type name for this instance
120
- */
121
- toRawType() {
122
- return 'Json';
123
- }
124
-
125
- /**
126
- * @description Returns the string representation of the value
127
- */
128
- toString() {
129
- return (0, _util.stringify)(this.toJSON());
130
- }
131
-
132
- /**
133
- * @description Unimplemented, will throw
134
- */
135
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
136
- toU8a(isBare) {
137
- throw new Error('Unimplemented');
138
- }
19
+ constructor(registry, value) {
20
+ const decoded = decodeJson(value);
21
+ super(decoded);
22
+ this.registry = registry;
23
+ (0, util_1.objectProperties)(this, decoded.map(([k]) => k), (k) => this.get(k));
24
+ }
25
+ /**
26
+ * @description Always 0, never encodes as a Uint8Array
27
+ */
28
+ get encodedLength() {
29
+ return 0;
30
+ }
31
+ /**
32
+ * @description returns a hash of the contents
33
+ */
34
+ get hash() {
35
+ return this.registry.hash(this.toU8a());
36
+ }
37
+ /**
38
+ * @description Checks if the value is an empty value
39
+ */
40
+ get isEmpty() {
41
+ return [...this.keys()].length === 0;
42
+ }
43
+ /**
44
+ * @description Compares the value of the input to see if there is a match
45
+ */
46
+ eq(other) {
47
+ return (0, utils_1.compareMap)(this, other);
48
+ }
49
+ /**
50
+ * @description Returns a typed value from the internal map
51
+ */
52
+ getT(key) {
53
+ return this.get(key);
54
+ }
55
+ /**
56
+ * @description Unimplemented, will throw
57
+ */
58
+ inspect() {
59
+ throw new Error('Unimplemented');
60
+ }
61
+ /**
62
+ * @description Unimplemented, will throw
63
+ */
64
+ toHex() {
65
+ throw new Error('Unimplemented');
66
+ }
67
+ /**
68
+ * @description Converts the Object to to a human-friendly JSON, with additional fields, expansion and formatting of information
69
+ */
70
+ toHuman() {
71
+ return [...this.entries()].reduce((json, [key, value]) => {
72
+ json[key] = (0, util_1.isFunction)(value.toHuman)
73
+ ? value.toHuman()
74
+ : value;
75
+ return json;
76
+ }, {});
77
+ }
78
+ /**
79
+ * @description Converts the Object to JSON, typically used for RPC transfers
80
+ */
81
+ toJSON() {
82
+ return [...this.entries()].reduce((json, [key, value]) => {
83
+ json[key] = value;
84
+ return json;
85
+ }, {});
86
+ }
87
+ /**
88
+ * @description Converts the value in a best-fit primitive form
89
+ */
90
+ toPrimitive() {
91
+ return [...this.entries()].reduce((json, [key, value]) => {
92
+ json[key] = (0, util_1.isFunction)(value.toPrimitive)
93
+ ? value.toPrimitive()
94
+ : value;
95
+ return json;
96
+ }, {});
97
+ }
98
+ /**
99
+ * @description Returns the base runtime type name for this instance
100
+ */
101
+ toRawType() {
102
+ return 'Json';
103
+ }
104
+ /**
105
+ * @description Returns the string representation of the value
106
+ */
107
+ toString() {
108
+ return (0, util_1.stringify)(this.toJSON());
109
+ }
110
+ /**
111
+ * @description Unimplemented, will throw
112
+ */
113
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
114
+ toU8a(isBare) {
115
+ throw new Error('Unimplemented');
116
+ }
139
117
  }
140
118
  exports.Json = Json;