@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
package/cjs/native/Raw.js CHANGED
@@ -1,13 +1,7 @@
1
1
  "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
2
+ Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.Raw = 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
-
4
+ const util_1 = require("@polkadot/util");
11
5
  /**
12
6
  * @name Raw
13
7
  * @description
@@ -18,147 +12,131 @@ var _util = require("@polkadot/util");
18
12
  * @noInheritDoc
19
13
  */
20
14
  class Raw extends Uint8Array {
21
- /**
22
- * @description This ensures that operators such as clice, filter, map, etc. return
23
- * new Array instances (without this we need to apply overrides)
24
- */
25
- static get [Symbol.species]() {
26
- return Uint8Array;
27
- }
28
- constructor(registry, value, initialU8aLength) {
29
- super((0, _util.u8aToU8a)(value));
30
- this.registry = registry;
31
- this.initialU8aLength = initialU8aLength;
32
- }
33
-
34
- /**
35
- * @description The length of the value when encoded as a Uint8Array
36
- */
37
- get encodedLength() {
38
- return this.length;
39
- }
40
-
41
- /**
42
- * @description returns a hash of the contents
43
- */
44
- get hash() {
45
- return this.registry.hash(this.toU8a());
46
- }
47
-
48
- /**
49
- * @description Returns true if the wrapped value contains only ASCII printable characters
50
- */
51
- get isAscii() {
52
- return (0, _util.isAscii)(this);
53
- }
54
-
55
- /**
56
- * @description Returns true if the type wraps an empty/default all-0 value
57
- */
58
- get isEmpty() {
59
- return !this.length || (0, _util.isUndefined)(this.find(b => !!b));
60
- }
61
-
62
- /**
63
- * @description Returns true if the wrapped value contains only utf8 characters
64
- */
65
- get isUtf8() {
66
- return (0, _util.isUtf8)(this);
67
- }
68
-
69
- /**
70
- * @description Returns the number of bits in the value
71
- */
72
- bitLength() {
73
- return this.length * 8;
74
- }
75
-
76
- /**
77
- * @description Compares the value of the input to see if there is a match
78
- */
79
- eq(other) {
80
- if (other instanceof Uint8Array) {
81
- return this.length === other.length && !this.some((b, index) => b !== other[index]);
82
- }
83
- return this.eq((0, _util.u8aToU8a)(other));
84
- }
85
-
86
- /**
87
- * @description Returns a breakdown of the hex encoding for this Codec
88
- */
89
- inspect() {
90
- return {
91
- outer: [this.toU8a()]
92
- };
93
- }
94
-
95
- /**
96
- * @description Returns a hex string representation of the value
97
- */
98
- toHex() {
99
- return (0, _util.u8aToHex)(this);
100
- }
101
-
102
- /**
103
- * @description Converts the Object to to a human-friendly JSON, with additional fields, expansion and formatting of information
104
- */
105
- toHuman() {
106
- return this.toPrimitive();
107
- }
108
-
109
- /**
110
- * @description Converts the Object to JSON, typically used for RPC transfers
111
- */
112
- toJSON() {
113
- return this.toHex();
114
- }
115
-
116
- /**
117
- * @description Converts the value in a best-fit primitive form
118
- */
119
- toPrimitive() {
120
- if (this.isAscii) {
121
- const text = this.toUtf8();
122
-
123
- // ensure we didn't end up with multibyte codepoints
124
- if ((0, _util.isAscii)(text)) {
125
- return text;
126
- }
127
- }
128
- return this.toJSON();
129
- }
130
-
131
- /**
132
- * @description Returns the base runtime type name for this instance
133
- */
134
- toRawType() {
135
- return 'Raw';
136
- }
137
-
138
- /**
139
- * @description Returns the string representation of the value
140
- */
141
- toString() {
142
- return this.toHex();
143
- }
144
-
145
- /**
146
- * @description Encodes the value as a Uint8Array as per the SCALE specifications
147
- * @param isBare true when the value has none of the type-specific prefixes (internal)
148
- */
149
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
150
- toU8a(isBare) {
151
- return Uint8Array.from(this);
152
- }
153
-
154
- /**
155
- * @description Returns the wrapped data as a UTF-8 string
156
- */
157
- toUtf8() {
158
- if (!this.isUtf8) {
159
- throw new Error('The character sequence is not a valid Utf8 string');
160
- }
161
- return (0, _util.u8aToString)(this);
162
- }
15
+ /**
16
+ * @description This ensures that operators such as clice, filter, map, etc. return
17
+ * new Array instances (without this we need to apply overrides)
18
+ */
19
+ static get [Symbol.species]() {
20
+ return Uint8Array;
21
+ }
22
+ constructor(registry, value, initialU8aLength) {
23
+ super((0, util_1.u8aToU8a)(value));
24
+ this.registry = registry;
25
+ this.initialU8aLength = initialU8aLength;
26
+ }
27
+ /**
28
+ * @description The length of the value when encoded as a Uint8Array
29
+ */
30
+ get encodedLength() {
31
+ return this.length;
32
+ }
33
+ /**
34
+ * @description returns a hash of the contents
35
+ */
36
+ get hash() {
37
+ return this.registry.hash(this.toU8a());
38
+ }
39
+ /**
40
+ * @description Returns true if the wrapped value contains only ASCII printable characters
41
+ */
42
+ get isAscii() {
43
+ return (0, util_1.isAscii)(this);
44
+ }
45
+ /**
46
+ * @description Returns true if the type wraps an empty/default all-0 value
47
+ */
48
+ get isEmpty() {
49
+ return !this.length || (0, util_1.isUndefined)(this.find((b) => !!b));
50
+ }
51
+ /**
52
+ * @description Returns true if the wrapped value contains only utf8 characters
53
+ */
54
+ get isUtf8() {
55
+ return (0, util_1.isUtf8)(this);
56
+ }
57
+ /**
58
+ * @description Returns the number of bits in the value
59
+ */
60
+ bitLength() {
61
+ return this.length * 8;
62
+ }
63
+ /**
64
+ * @description Compares the value of the input to see if there is a match
65
+ */
66
+ eq(other) {
67
+ if (other instanceof Uint8Array) {
68
+ return (this.length === other.length) &&
69
+ !this.some((b, index) => b !== other[index]);
70
+ }
71
+ return this.eq((0, util_1.u8aToU8a)(other));
72
+ }
73
+ /**
74
+ * @description Returns a breakdown of the hex encoding for this Codec
75
+ */
76
+ inspect() {
77
+ return {
78
+ outer: [this.toU8a()]
79
+ };
80
+ }
81
+ /**
82
+ * @description Returns a hex string representation of the value
83
+ */
84
+ toHex() {
85
+ return (0, util_1.u8aToHex)(this);
86
+ }
87
+ /**
88
+ * @description Converts the Object to to a human-friendly JSON, with additional fields, expansion and formatting of information
89
+ */
90
+ toHuman() {
91
+ return this.toPrimitive();
92
+ }
93
+ /**
94
+ * @description Converts the Object to JSON, typically used for RPC transfers
95
+ */
96
+ toJSON() {
97
+ return this.toHex();
98
+ }
99
+ /**
100
+ * @description Converts the value in a best-fit primitive form
101
+ */
102
+ toPrimitive() {
103
+ if (this.isAscii) {
104
+ const text = this.toUtf8();
105
+ // ensure we didn't end up with multibyte codepoints
106
+ if ((0, util_1.isAscii)(text)) {
107
+ return text;
108
+ }
109
+ }
110
+ return this.toJSON();
111
+ }
112
+ /**
113
+ * @description Returns the base runtime type name for this instance
114
+ */
115
+ toRawType() {
116
+ return 'Raw';
117
+ }
118
+ /**
119
+ * @description Returns the string representation of the value
120
+ */
121
+ toString() {
122
+ return this.toHex();
123
+ }
124
+ /**
125
+ * @description Encodes the value as a Uint8Array as per the SCALE specifications
126
+ * @param isBare true when the value has none of the type-specific prefixes (internal)
127
+ */
128
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
129
+ toU8a(isBare) {
130
+ return Uint8Array.from(this);
131
+ }
132
+ /**
133
+ * @description Returns the wrapped data as a UTF-8 string
134
+ */
135
+ toUtf8() {
136
+ if (!this.isUtf8) {
137
+ throw new Error('The character sequence is not a valid Utf8 string');
138
+ }
139
+ return (0, util_1.u8aToString)(this);
140
+ }
163
141
  }
164
142
  exports.Raw = Raw;