@hashgraphonline/standards-sdk 0.0.79 → 0.0.81

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 (201) hide show
  1. package/dist/es/hcs-10/browser.d.ts.map +1 -1
  2. package/dist/es/hcs-10/sdk.d.ts +10 -1
  3. package/dist/es/hcs-10/sdk.d.ts.map +1 -1
  4. package/dist/es/standards-sdk.es100.js +14 -28
  5. package/dist/es/standards-sdk.es100.js.map +1 -1
  6. package/dist/es/standards-sdk.es101.js +3 -28
  7. package/dist/es/standards-sdk.es101.js.map +1 -1
  8. package/dist/es/standards-sdk.es102.js +3 -20
  9. package/dist/es/standards-sdk.es102.js.map +1 -1
  10. package/dist/es/standards-sdk.es103.js +14 -42
  11. package/dist/es/standards-sdk.es103.js.map +1 -1
  12. package/dist/es/standards-sdk.es104.js +4 -17
  13. package/dist/es/standards-sdk.es104.js.map +1 -1
  14. package/dist/es/standards-sdk.es105.js +39 -61
  15. package/dist/es/standards-sdk.es105.js.map +1 -1
  16. package/dist/es/standards-sdk.es106.js +39 -1288
  17. package/dist/es/standards-sdk.es106.js.map +1 -1
  18. package/dist/es/standards-sdk.es107.js +36 -31
  19. package/dist/es/standards-sdk.es107.js.map +1 -1
  20. package/dist/es/standards-sdk.es108.js +78 -6
  21. package/dist/es/standards-sdk.es108.js.map +1 -1
  22. package/dist/es/standards-sdk.es109.js +3 -158
  23. package/dist/es/standards-sdk.es109.js.map +1 -1
  24. package/dist/es/standards-sdk.es110.js +3 -793
  25. package/dist/es/standards-sdk.es110.js.map +1 -1
  26. package/dist/es/standards-sdk.es111.js +2 -174
  27. package/dist/es/standards-sdk.es111.js.map +1 -1
  28. package/dist/es/standards-sdk.es112.js +2 -143
  29. package/dist/es/standards-sdk.es112.js.map +1 -1
  30. package/dist/es/standards-sdk.es113.js +33 -20
  31. package/dist/es/standards-sdk.es113.js.map +1 -1
  32. package/dist/es/standards-sdk.es114.js +32 -26
  33. package/dist/es/standards-sdk.es114.js.map +1 -1
  34. package/dist/es/standards-sdk.es115.js +9 -26
  35. package/dist/es/standards-sdk.es115.js.map +1 -1
  36. package/dist/es/standards-sdk.es116.js +33 -37
  37. package/dist/es/standards-sdk.es116.js.map +1 -1
  38. package/dist/es/standards-sdk.es12.js +2 -2
  39. package/dist/es/standards-sdk.es14.js +1 -1
  40. package/dist/es/standards-sdk.es17.js +2 -2
  41. package/dist/es/standards-sdk.es18.js +3 -3
  42. package/dist/es/standards-sdk.es21.js +966 -1692
  43. package/dist/es/standards-sdk.es21.js.map +1 -1
  44. package/dist/es/standards-sdk.es22.js +121 -5544
  45. package/dist/es/standards-sdk.es22.js.map +1 -1
  46. package/dist/es/standards-sdk.es23.js +36 -5
  47. package/dist/es/standards-sdk.es23.js.map +1 -1
  48. package/dist/es/standards-sdk.es24.js +48 -36
  49. package/dist/es/standards-sdk.es24.js.map +1 -1
  50. package/dist/es/standards-sdk.es25.js +7163 -21
  51. package/dist/es/standards-sdk.es25.js.map +1 -1
  52. package/dist/es/standards-sdk.es28.js +4086 -960
  53. package/dist/es/standards-sdk.es28.js.map +1 -1
  54. package/dist/es/standards-sdk.es29.js +5 -4167
  55. package/dist/es/standards-sdk.es29.js.map +1 -1
  56. package/dist/es/standards-sdk.es30.js +2 -419
  57. package/dist/es/standards-sdk.es30.js.map +1 -1
  58. package/dist/es/standards-sdk.es31.js +6 -2
  59. package/dist/es/standards-sdk.es31.js.map +1 -1
  60. package/dist/es/standards-sdk.es32.js +22 -119
  61. package/dist/es/standards-sdk.es32.js.map +1 -1
  62. package/dist/es/standards-sdk.es33.js +121 -7114
  63. package/dist/es/standards-sdk.es33.js.map +1 -1
  64. package/dist/es/standards-sdk.es34.js +194 -3
  65. package/dist/es/standards-sdk.es34.js.map +1 -1
  66. package/dist/es/standards-sdk.es35.js +438 -3
  67. package/dist/es/standards-sdk.es35.js.map +1 -1
  68. package/dist/es/standards-sdk.es36.js +19 -358
  69. package/dist/es/standards-sdk.es36.js.map +1 -1
  70. package/dist/es/standards-sdk.es37.js +138 -5
  71. package/dist/es/standards-sdk.es37.js.map +1 -1
  72. package/dist/es/standards-sdk.es38.js +13 -174
  73. package/dist/es/standards-sdk.es38.js.map +1 -1
  74. package/dist/es/standards-sdk.es39.js +23 -75
  75. package/dist/es/standards-sdk.es39.js.map +1 -1
  76. package/dist/es/standards-sdk.es4.js +1 -1
  77. package/dist/es/standards-sdk.es40.js +26 -111
  78. package/dist/es/standards-sdk.es40.js.map +1 -1
  79. package/dist/es/standards-sdk.es41.js +16 -47
  80. package/dist/es/standards-sdk.es41.js.map +1 -1
  81. package/dist/es/standards-sdk.es42.js +43 -9
  82. package/dist/es/standards-sdk.es42.js.map +1 -1
  83. package/dist/es/standards-sdk.es43.js +13 -92
  84. package/dist/es/standards-sdk.es43.js.map +1 -1
  85. package/dist/es/standards-sdk.es44.js +60 -3
  86. package/dist/es/standards-sdk.es44.js.map +1 -1
  87. package/dist/es/standards-sdk.es45.js +1289 -2
  88. package/dist/es/standards-sdk.es45.js.map +1 -1
  89. package/dist/es/standards-sdk.es46.js +133 -98
  90. package/dist/es/standards-sdk.es46.js.map +1 -1
  91. package/dist/es/standards-sdk.es47.js +86 -69
  92. package/dist/es/standards-sdk.es47.js.map +1 -1
  93. package/dist/es/standards-sdk.es48.js +83 -5
  94. package/dist/es/standards-sdk.es48.js.map +1 -1
  95. package/dist/es/standards-sdk.es49.js +31 -4
  96. package/dist/es/standards-sdk.es49.js.map +1 -1
  97. package/dist/es/standards-sdk.es5.js +3 -3
  98. package/dist/es/standards-sdk.es50.js +138 -200
  99. package/dist/es/standards-sdk.es50.js.map +1 -1
  100. package/dist/es/standards-sdk.es51.js +788 -53
  101. package/dist/es/standards-sdk.es51.js.map +1 -1
  102. package/dist/es/standards-sdk.es52.js +174 -69
  103. package/dist/es/standards-sdk.es52.js.map +1 -1
  104. package/dist/es/standards-sdk.es55.js +1 -1
  105. package/dist/es/standards-sdk.es56.js +1 -1
  106. package/dist/es/standards-sdk.es57.js +343 -143
  107. package/dist/es/standards-sdk.es57.js.map +1 -1
  108. package/dist/es/standards-sdk.es58.js +5 -31
  109. package/dist/es/standards-sdk.es58.js.map +1 -1
  110. package/dist/es/standards-sdk.es59.js +167 -51
  111. package/dist/es/standards-sdk.es59.js.map +1 -1
  112. package/dist/es/standards-sdk.es60.js +75 -44
  113. package/dist/es/standards-sdk.es60.js.map +1 -1
  114. package/dist/es/standards-sdk.es61.js +112 -8
  115. package/dist/es/standards-sdk.es61.js.map +1 -1
  116. package/dist/es/standards-sdk.es62.js +46 -59
  117. package/dist/es/standards-sdk.es62.js.map +1 -1
  118. package/dist/es/standards-sdk.es63.js +10 -6
  119. package/dist/es/standards-sdk.es63.js.map +1 -1
  120. package/dist/es/standards-sdk.es64.js +94 -12
  121. package/dist/es/standards-sdk.es64.js.map +1 -1
  122. package/dist/es/standards-sdk.es65.js +4 -7
  123. package/dist/es/standards-sdk.es65.js.map +1 -1
  124. package/dist/es/standards-sdk.es66.js +2 -45
  125. package/dist/es/standards-sdk.es66.js.map +1 -1
  126. package/dist/es/standards-sdk.es67.js +113 -2
  127. package/dist/es/standards-sdk.es67.js.map +1 -1
  128. package/dist/es/standards-sdk.es68.js +71 -133
  129. package/dist/es/standards-sdk.es68.js.map +1 -1
  130. package/dist/es/standards-sdk.es69.js +6 -172
  131. package/dist/es/standards-sdk.es69.js.map +1 -1
  132. package/dist/es/standards-sdk.es7.js +70 -2
  133. package/dist/es/standards-sdk.es7.js.map +1 -1
  134. package/dist/es/standards-sdk.es70.js +5 -2282
  135. package/dist/es/standards-sdk.es70.js.map +1 -1
  136. package/dist/es/standards-sdk.es71.js +221 -13
  137. package/dist/es/standards-sdk.es71.js.map +1 -1
  138. package/dist/es/standards-sdk.es72.js +58 -13
  139. package/dist/es/standards-sdk.es72.js.map +1 -1
  140. package/dist/es/standards-sdk.es73.js +68 -31
  141. package/dist/es/standards-sdk.es73.js.map +1 -1
  142. package/dist/es/standards-sdk.es74.js +20 -14
  143. package/dist/es/standards-sdk.es74.js.map +1 -1
  144. package/dist/es/standards-sdk.es75.js +26 -3
  145. package/dist/es/standards-sdk.es75.js.map +1 -1
  146. package/dist/es/standards-sdk.es76.js +25 -3
  147. package/dist/es/standards-sdk.es76.js.map +1 -1
  148. package/dist/es/standards-sdk.es77.js +36 -14
  149. package/dist/es/standards-sdk.es77.js.map +1 -1
  150. package/dist/es/standards-sdk.es78.js +418 -4
  151. package/dist/es/standards-sdk.es78.js.map +1 -1
  152. package/dist/es/standards-sdk.es79.js +2 -39
  153. package/dist/es/standards-sdk.es79.js.map +1 -1
  154. package/dist/es/standards-sdk.es8.js +9 -9
  155. package/dist/es/standards-sdk.es8.js.map +1 -1
  156. package/dist/es/standards-sdk.es80.js +115 -35
  157. package/dist/es/standards-sdk.es80.js.map +1 -1
  158. package/dist/es/standards-sdk.es81.js +2281 -36
  159. package/dist/es/standards-sdk.es81.js.map +1 -1
  160. package/dist/es/standards-sdk.es82.js +153 -67
  161. package/dist/es/standards-sdk.es82.js.map +1 -1
  162. package/dist/es/standards-sdk.es83.js +3 -3
  163. package/dist/es/standards-sdk.es83.js.map +1 -1
  164. package/dist/es/standards-sdk.es84.js +32 -2
  165. package/dist/es/standards-sdk.es84.js.map +1 -1
  166. package/dist/es/standards-sdk.es85.js +63 -2
  167. package/dist/es/standards-sdk.es85.js.map +1 -1
  168. package/dist/es/standards-sdk.es86.js +48 -32
  169. package/dist/es/standards-sdk.es86.js.map +1 -1
  170. package/dist/es/standards-sdk.es87.js +9 -32
  171. package/dist/es/standards-sdk.es87.js.map +1 -1
  172. package/dist/es/standards-sdk.es88.js +65 -9
  173. package/dist/es/standards-sdk.es88.js.map +1 -1
  174. package/dist/es/standards-sdk.es89.js +6 -34
  175. package/dist/es/standards-sdk.es89.js.map +1 -1
  176. package/dist/es/standards-sdk.es90.js +15 -2
  177. package/dist/es/standards-sdk.es90.js.map +1 -1
  178. package/dist/es/standards-sdk.es91.js +7 -84
  179. package/dist/es/standards-sdk.es91.js.map +1 -1
  180. package/dist/es/standards-sdk.es92.js +44 -22
  181. package/dist/es/standards-sdk.es92.js.map +1 -1
  182. package/dist/es/standards-sdk.es93.js +2 -148
  183. package/dist/es/standards-sdk.es93.js.map +1 -1
  184. package/dist/es/standards-sdk.es94.js +133 -88
  185. package/dist/es/standards-sdk.es94.js.map +1 -1
  186. package/dist/es/standards-sdk.es95.js +161 -184
  187. package/dist/es/standards-sdk.es95.js.map +1 -1
  188. package/dist/es/standards-sdk.es96.js +7090 -392
  189. package/dist/es/standards-sdk.es96.js.map +1 -1
  190. package/dist/es/standards-sdk.es97.js +13 -25
  191. package/dist/es/standards-sdk.es97.js.map +1 -1
  192. package/dist/es/standards-sdk.es98.js +13 -139
  193. package/dist/es/standards-sdk.es98.js.map +1 -1
  194. package/dist/es/standards-sdk.es99.js +31 -17
  195. package/dist/es/standards-sdk.es99.js.map +1 -1
  196. package/dist/umd/hcs-10/browser.d.ts.map +1 -1
  197. package/dist/umd/hcs-10/sdk.d.ts +10 -1
  198. package/dist/umd/hcs-10/sdk.d.ts.map +1 -1
  199. package/dist/umd/standards-sdk.umd.js +1 -1
  200. package/dist/umd/standards-sdk.umd.js.map +1 -1
  201. package/package.json +1 -1
@@ -1,224 +1,162 @@
1
- import utils from "./standards-sdk.es36.js";
2
- import parseHeaders from "./standards-sdk.es66.js";
3
- const $internals = Symbol("internals");
4
- function normalizeHeader(header) {
5
- return header && String(header).trim().toLowerCase();
6
- }
7
- function normalizeValue(value) {
8
- if (value === false || value == null) {
9
- return value;
10
- }
11
- return utils.isArray(value) ? value.map(normalizeValue) : String(value);
12
- }
13
- function parseTokens(str) {
14
- const tokens = /* @__PURE__ */ Object.create(null);
15
- const tokensRE = /([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;
16
- let match;
17
- while (match = tokensRE.exec(str)) {
18
- tokens[match[1]] = match[2];
1
+ import { assertArgument, assert } from "./standards-sdk.es46.js";
2
+ const BN_0 = BigInt(0);
3
+ const BN_1 = BigInt(1);
4
+ const maxValue = 9007199254740991;
5
+ function fromTwos(_value, _width) {
6
+ const value = getUint(_value, "value");
7
+ const width = BigInt(getNumber(_width, "width"));
8
+ assert(value >> width === BN_0, "overflow", "NUMERIC_FAULT", {
9
+ operation: "fromTwos",
10
+ fault: "overflow",
11
+ value: _value
12
+ });
13
+ if (value >> width - BN_1) {
14
+ const mask2 = (BN_1 << width) - BN_1;
15
+ return -((~value & mask2) + BN_1);
19
16
  }
20
- return tokens;
17
+ return value;
21
18
  }
22
- const isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());
23
- function matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {
24
- if (utils.isFunction(filter)) {
25
- return filter.call(this, value, header);
26
- }
27
- if (isHeaderNameFilter) {
28
- value = header;
29
- }
30
- if (!utils.isString(value)) return;
31
- if (utils.isString(filter)) {
32
- return value.indexOf(filter) !== -1;
33
- }
34
- if (utils.isRegExp(filter)) {
35
- return filter.test(value);
19
+ function toTwos(_value, _width) {
20
+ let value = getBigInt(_value, "value");
21
+ const width = BigInt(getNumber(_width, "width"));
22
+ const limit = BN_1 << width - BN_1;
23
+ if (value < BN_0) {
24
+ value = -value;
25
+ assert(value <= limit, "too low", "NUMERIC_FAULT", {
26
+ operation: "toTwos",
27
+ fault: "overflow",
28
+ value: _value
29
+ });
30
+ const mask2 = (BN_1 << width) - BN_1;
31
+ return (~value & mask2) + BN_1;
32
+ } else {
33
+ assert(value < limit, "too high", "NUMERIC_FAULT", {
34
+ operation: "toTwos",
35
+ fault: "overflow",
36
+ value: _value
37
+ });
36
38
  }
39
+ return value;
37
40
  }
38
- function formatHeader(header) {
39
- return header.trim().toLowerCase().replace(/([a-z\d])(\w*)/g, (w, char, str) => {
40
- return char.toUpperCase() + str;
41
- });
41
+ function mask(_value, _bits) {
42
+ const value = getUint(_value, "value");
43
+ const bits = BigInt(getNumber(_bits, "bits"));
44
+ return value & (BN_1 << bits) - BN_1;
42
45
  }
43
- function buildAccessors(obj, header) {
44
- const accessorName = utils.toCamelCase(" " + header);
45
- ["get", "set", "has"].forEach((methodName) => {
46
- Object.defineProperty(obj, methodName + accessorName, {
47
- value: function(arg1, arg2, arg3) {
48
- return this[methodName].call(this, header, arg1, arg2, arg3);
49
- },
50
- configurable: true
51
- });
52
- });
53
- }
54
- class AxiosHeaders {
55
- constructor(headers) {
56
- headers && this.set(headers);
57
- }
58
- set(header, valueOrRewrite, rewrite) {
59
- const self = this;
60
- function setHeader(_value, _header, _rewrite) {
61
- const lHeader = normalizeHeader(_header);
62
- if (!lHeader) {
63
- throw new Error("header name must be a non-empty string");
64
- }
65
- const key = utils.findKey(self, lHeader);
66
- if (!key || self[key] === void 0 || _rewrite === true || _rewrite === void 0 && self[key] !== false) {
67
- self[key || _header] = normalizeValue(_value);
68
- }
69
- }
70
- const setHeaders = (headers, _rewrite) => utils.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite));
71
- if (utils.isPlainObject(header) || header instanceof this.constructor) {
72
- setHeaders(header, valueOrRewrite);
73
- } else if (utils.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {
74
- setHeaders(parseHeaders(header), valueOrRewrite);
75
- } else if (utils.isHeaders(header)) {
76
- for (const [key, value] of header.entries()) {
77
- setHeader(value, key, rewrite);
78
- }
79
- } else {
80
- header != null && setHeader(valueOrRewrite, header, rewrite);
81
- }
82
- return this;
83
- }
84
- get(header, parser) {
85
- header = normalizeHeader(header);
86
- if (header) {
87
- const key = utils.findKey(this, header);
88
- if (key) {
89
- const value = this[key];
90
- if (!parser) {
91
- return value;
92
- }
93
- if (parser === true) {
94
- return parseTokens(value);
46
+ function getBigInt(value, name) {
47
+ switch (typeof value) {
48
+ case "bigint":
49
+ return value;
50
+ case "number":
51
+ assertArgument(Number.isInteger(value), "underflow", name || "value", value);
52
+ assertArgument(value >= -9007199254740991 && value <= maxValue, "overflow", name || "value", value);
53
+ return BigInt(value);
54
+ case "string":
55
+ try {
56
+ if (value === "") {
57
+ throw new Error("empty string");
95
58
  }
96
- if (utils.isFunction(parser)) {
97
- return parser.call(this, value, key);
59
+ if (value[0] === "-" && value[1] !== "-") {
60
+ return -BigInt(value.substring(1));
98
61
  }
99
- if (utils.isRegExp(parser)) {
100
- return parser.exec(value);
101
- }
102
- throw new TypeError("parser must be boolean|regexp|function");
62
+ return BigInt(value);
63
+ } catch (e) {
64
+ assertArgument(false, `invalid BigNumberish string: ${e.message}`, name || "value", value);
103
65
  }
104
- }
105
66
  }
106
- has(header, matcher) {
107
- header = normalizeHeader(header);
108
- if (header) {
109
- const key = utils.findKey(this, header);
110
- return !!(key && this[key] !== void 0 && (!matcher || matchHeaderValue(this, this[key], key, matcher)));
67
+ assertArgument(false, "invalid BigNumberish value", name || "value", value);
68
+ }
69
+ function getUint(value, name) {
70
+ const result = getBigInt(value, name);
71
+ assert(result >= BN_0, "unsigned value cannot be negative", "NUMERIC_FAULT", {
72
+ fault: "overflow",
73
+ operation: "getUint",
74
+ value
75
+ });
76
+ return result;
77
+ }
78
+ const Nibbles = "0123456789abcdef";
79
+ function toBigInt(value) {
80
+ if (value instanceof Uint8Array) {
81
+ let result = "0x0";
82
+ for (const v of value) {
83
+ result += Nibbles[v >> 4];
84
+ result += Nibbles[v & 15];
111
85
  }
112
- return false;
86
+ return BigInt(result);
113
87
  }
114
- delete(header, matcher) {
115
- const self = this;
116
- let deleted = false;
117
- function deleteHeader(_header) {
118
- _header = normalizeHeader(_header);
119
- if (_header) {
120
- const key = utils.findKey(self, _header);
121
- if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) {
122
- delete self[key];
123
- deleted = true;
88
+ return getBigInt(value);
89
+ }
90
+ function getNumber(value, name) {
91
+ switch (typeof value) {
92
+ case "bigint":
93
+ assertArgument(value >= -9007199254740991 && value <= maxValue, "overflow", name || "value", value);
94
+ return Number(value);
95
+ case "number":
96
+ assertArgument(Number.isInteger(value), "underflow", name || "value", value);
97
+ assertArgument(value >= -9007199254740991 && value <= maxValue, "overflow", name || "value", value);
98
+ return value;
99
+ case "string":
100
+ try {
101
+ if (value === "") {
102
+ throw new Error("empty string");
124
103
  }
104
+ return getNumber(BigInt(value), name);
105
+ } catch (e) {
106
+ assertArgument(false, `invalid numeric string: ${e.message}`, name || "value", value);
125
107
  }
126
- }
127
- if (utils.isArray(header)) {
128
- header.forEach(deleteHeader);
129
- } else {
130
- deleteHeader(header);
131
- }
132
- return deleted;
133
108
  }
134
- clear(matcher) {
135
- const keys = Object.keys(this);
136
- let i = keys.length;
137
- let deleted = false;
138
- while (i--) {
139
- const key = keys[i];
140
- if (!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {
141
- delete this[key];
142
- deleted = true;
143
- }
109
+ assertArgument(false, "invalid numeric value", name || "value", value);
110
+ }
111
+ function toNumber(value) {
112
+ return getNumber(toBigInt(value));
113
+ }
114
+ function toBeHex(_value, _width) {
115
+ const value = getUint(_value, "value");
116
+ let result = value.toString(16);
117
+ if (_width == null) {
118
+ if (result.length % 2) {
119
+ result = "0" + result;
144
120
  }
145
- return deleted;
146
- }
147
- normalize(format) {
148
- const self = this;
149
- const headers = {};
150
- utils.forEach(this, (value, header) => {
151
- const key = utils.findKey(headers, header);
152
- if (key) {
153
- self[key] = normalizeValue(value);
154
- delete self[header];
155
- return;
156
- }
157
- const normalized = format ? formatHeader(header) : String(header).trim();
158
- if (normalized !== header) {
159
- delete self[header];
160
- }
161
- self[normalized] = normalizeValue(value);
162
- headers[normalized] = true;
121
+ } else {
122
+ const width = getNumber(_width, "width");
123
+ assert(width * 2 >= result.length, `value exceeds width (${width} bytes)`, "NUMERIC_FAULT", {
124
+ operation: "toBeHex",
125
+ fault: "overflow",
126
+ value: _value
163
127
  });
164
- return this;
165
- }
166
- concat(...targets) {
167
- return this.constructor.concat(this, ...targets);
168
- }
169
- toJSON(asStrings) {
170
- const obj = /* @__PURE__ */ Object.create(null);
171
- utils.forEach(this, (value, header) => {
172
- value != null && value !== false && (obj[header] = asStrings && utils.isArray(value) ? value.join(", ") : value);
173
- });
174
- return obj;
175
- }
176
- [Symbol.iterator]() {
177
- return Object.entries(this.toJSON())[Symbol.iterator]();
178
- }
179
- toString() {
180
- return Object.entries(this.toJSON()).map(([header, value]) => header + ": " + value).join("\n");
181
- }
182
- get [Symbol.toStringTag]() {
183
- return "AxiosHeaders";
128
+ while (result.length < width * 2) {
129
+ result = "0" + result;
130
+ }
184
131
  }
185
- static from(thing) {
186
- return thing instanceof this ? thing : new this(thing);
132
+ return "0x" + result;
133
+ }
134
+ function toBeArray(_value) {
135
+ const value = getUint(_value, "value");
136
+ if (value === BN_0) {
137
+ return new Uint8Array([]);
187
138
  }
188
- static concat(first, ...targets) {
189
- const computed = new this(first);
190
- targets.forEach((target) => computed.set(target));
191
- return computed;
139
+ let hex = value.toString(16);
140
+ if (hex.length % 2) {
141
+ hex = "0" + hex;
192
142
  }
193
- static accessor(header) {
194
- const internals = this[$internals] = this[$internals] = {
195
- accessors: {}
196
- };
197
- const accessors = internals.accessors;
198
- const prototype = this.prototype;
199
- function defineAccessor(_header) {
200
- const lHeader = normalizeHeader(_header);
201
- if (!accessors[lHeader]) {
202
- buildAccessors(prototype, _header);
203
- accessors[lHeader] = true;
204
- }
205
- }
206
- utils.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);
207
- return this;
143
+ const result = new Uint8Array(hex.length / 2);
144
+ for (let i = 0; i < result.length; i++) {
145
+ const offset = i * 2;
146
+ result[i] = parseInt(hex.substring(offset, offset + 2), 16);
208
147
  }
148
+ return result;
209
149
  }
210
- AxiosHeaders.accessor(["Content-Type", "Content-Length", "Accept", "Accept-Encoding", "User-Agent", "Authorization"]);
211
- utils.reduceDescriptors(AxiosHeaders.prototype, ({ value }, key) => {
212
- let mapped = key[0].toUpperCase() + key.slice(1);
213
- return {
214
- get: () => value,
215
- set(headerValue) {
216
- this[mapped] = headerValue;
217
- }
218
- };
219
- });
220
- utils.freezeMethods(AxiosHeaders);
221
150
  export {
222
- AxiosHeaders as default
151
+ fromTwos,
152
+ getBigInt,
153
+ getNumber,
154
+ getUint,
155
+ mask,
156
+ toBeArray,
157
+ toBeHex,
158
+ toBigInt,
159
+ toNumber,
160
+ toTwos
223
161
  };
224
162
  //# sourceMappingURL=standards-sdk.es50.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es50.js","sources":["../../node_modules/axios/lib/core/AxiosHeaders.js"],"sourcesContent":["'use strict';\n\nimport utils from '../utils.js';\nimport parseHeaders from '../helpers/parseHeaders.js';\n\nconst $internals = Symbol('internals');\n\nfunction normalizeHeader(header) {\n return header && String(header).trim().toLowerCase();\n}\n\nfunction normalizeValue(value) {\n if (value === false || value == null) {\n return value;\n }\n\n return utils.isArray(value) ? value.map(normalizeValue) : String(value);\n}\n\nfunction parseTokens(str) {\n const tokens = Object.create(null);\n const tokensRE = /([^\\s,;=]+)\\s*(?:=\\s*([^,;]+))?/g;\n let match;\n\n while ((match = tokensRE.exec(str))) {\n tokens[match[1]] = match[2];\n }\n\n return tokens;\n}\n\nconst isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());\n\nfunction matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {\n if (utils.isFunction(filter)) {\n return filter.call(this, value, header);\n }\n\n if (isHeaderNameFilter) {\n value = header;\n }\n\n if (!utils.isString(value)) return;\n\n if (utils.isString(filter)) {\n return value.indexOf(filter) !== -1;\n }\n\n if (utils.isRegExp(filter)) {\n return filter.test(value);\n }\n}\n\nfunction formatHeader(header) {\n return header.trim()\n .toLowerCase().replace(/([a-z\\d])(\\w*)/g, (w, char, str) => {\n return char.toUpperCase() + str;\n });\n}\n\nfunction buildAccessors(obj, header) {\n const accessorName = utils.toCamelCase(' ' + header);\n\n ['get', 'set', 'has'].forEach(methodName => {\n Object.defineProperty(obj, methodName + accessorName, {\n value: function(arg1, arg2, arg3) {\n return this[methodName].call(this, header, arg1, arg2, arg3);\n },\n configurable: true\n });\n });\n}\n\nclass AxiosHeaders {\n constructor(headers) {\n headers && this.set(headers);\n }\n\n set(header, valueOrRewrite, rewrite) {\n const self = this;\n\n function setHeader(_value, _header, _rewrite) {\n const lHeader = normalizeHeader(_header);\n\n if (!lHeader) {\n throw new Error('header name must be a non-empty string');\n }\n\n const key = utils.findKey(self, lHeader);\n\n if(!key || self[key] === undefined || _rewrite === true || (_rewrite === undefined && self[key] !== false)) {\n self[key || _header] = normalizeValue(_value);\n }\n }\n\n const setHeaders = (headers, _rewrite) =>\n utils.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite));\n\n if (utils.isPlainObject(header) || header instanceof this.constructor) {\n setHeaders(header, valueOrRewrite)\n } else if(utils.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {\n setHeaders(parseHeaders(header), valueOrRewrite);\n } else if (utils.isHeaders(header)) {\n for (const [key, value] of header.entries()) {\n setHeader(value, key, rewrite);\n }\n } else {\n header != null && setHeader(valueOrRewrite, header, rewrite);\n }\n\n return this;\n }\n\n get(header, parser) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n if (key) {\n const value = this[key];\n\n if (!parser) {\n return value;\n }\n\n if (parser === true) {\n return parseTokens(value);\n }\n\n if (utils.isFunction(parser)) {\n return parser.call(this, value, key);\n }\n\n if (utils.isRegExp(parser)) {\n return parser.exec(value);\n }\n\n throw new TypeError('parser must be boolean|regexp|function');\n }\n }\n }\n\n has(header, matcher) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n return !!(key && this[key] !== undefined && (!matcher || matchHeaderValue(this, this[key], key, matcher)));\n }\n\n return false;\n }\n\n delete(header, matcher) {\n const self = this;\n let deleted = false;\n\n function deleteHeader(_header) {\n _header = normalizeHeader(_header);\n\n if (_header) {\n const key = utils.findKey(self, _header);\n\n if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) {\n delete self[key];\n\n deleted = true;\n }\n }\n }\n\n if (utils.isArray(header)) {\n header.forEach(deleteHeader);\n } else {\n deleteHeader(header);\n }\n\n return deleted;\n }\n\n clear(matcher) {\n const keys = Object.keys(this);\n let i = keys.length;\n let deleted = false;\n\n while (i--) {\n const key = keys[i];\n if(!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {\n delete this[key];\n deleted = true;\n }\n }\n\n return deleted;\n }\n\n normalize(format) {\n const self = this;\n const headers = {};\n\n utils.forEach(this, (value, header) => {\n const key = utils.findKey(headers, header);\n\n if (key) {\n self[key] = normalizeValue(value);\n delete self[header];\n return;\n }\n\n const normalized = format ? formatHeader(header) : String(header).trim();\n\n if (normalized !== header) {\n delete self[header];\n }\n\n self[normalized] = normalizeValue(value);\n\n headers[normalized] = true;\n });\n\n return this;\n }\n\n concat(...targets) {\n return this.constructor.concat(this, ...targets);\n }\n\n toJSON(asStrings) {\n const obj = Object.create(null);\n\n utils.forEach(this, (value, header) => {\n value != null && value !== false && (obj[header] = asStrings && utils.isArray(value) ? value.join(', ') : value);\n });\n\n return obj;\n }\n\n [Symbol.iterator]() {\n return Object.entries(this.toJSON())[Symbol.iterator]();\n }\n\n toString() {\n return Object.entries(this.toJSON()).map(([header, value]) => header + ': ' + value).join('\\n');\n }\n\n get [Symbol.toStringTag]() {\n return 'AxiosHeaders';\n }\n\n static from(thing) {\n return thing instanceof this ? thing : new this(thing);\n }\n\n static concat(first, ...targets) {\n const computed = new this(first);\n\n targets.forEach((target) => computed.set(target));\n\n return computed;\n }\n\n static accessor(header) {\n const internals = this[$internals] = (this[$internals] = {\n accessors: {}\n });\n\n const accessors = internals.accessors;\n const prototype = this.prototype;\n\n function defineAccessor(_header) {\n const lHeader = normalizeHeader(_header);\n\n if (!accessors[lHeader]) {\n buildAccessors(prototype, _header);\n accessors[lHeader] = true;\n }\n }\n\n utils.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);\n\n return this;\n }\n}\n\nAxiosHeaders.accessor(['Content-Type', 'Content-Length', 'Accept', 'Accept-Encoding', 'User-Agent', 'Authorization']);\n\n// reserved names hotfix\nutils.reduceDescriptors(AxiosHeaders.prototype, ({value}, key) => {\n let mapped = key[0].toUpperCase() + key.slice(1); // map `set` => `Set`\n return {\n get: () => value,\n set(headerValue) {\n this[mapped] = headerValue;\n }\n }\n});\n\nutils.freezeMethods(AxiosHeaders);\n\nexport default AxiosHeaders;\n"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"standards-sdk.es50.js","sources":["../../node_modules/ethers/lib.esm/utils/maths.js"],"sourcesContent":["/**\n * Some mathematic operations.\n *\n * @_subsection: api/utils:Math Helpers [about-maths]\n */\nimport { hexlify, isBytesLike } from \"./data.js\";\nimport { assert, assertArgument } from \"./errors.js\";\nconst BN_0 = BigInt(0);\nconst BN_1 = BigInt(1);\n//const BN_Max256 = (BN_1 << BigInt(256)) - BN_1;\n// IEEE 754 support 53-bits of mantissa\nconst maxValue = 0x1fffffffffffff;\n/**\n * Convert %%value%% from a twos-compliment representation of %%width%%\n * bits to its value.\n *\n * If the highest bit is ``1``, the result will be negative.\n */\nexport function fromTwos(_value, _width) {\n const value = getUint(_value, \"value\");\n const width = BigInt(getNumber(_width, \"width\"));\n assert((value >> width) === BN_0, \"overflow\", \"NUMERIC_FAULT\", {\n operation: \"fromTwos\", fault: \"overflow\", value: _value\n });\n // Top bit set; treat as a negative value\n if (value >> (width - BN_1)) {\n const mask = (BN_1 << width) - BN_1;\n return -(((~value) & mask) + BN_1);\n }\n return value;\n}\n/**\n * Convert %%value%% to a twos-compliment representation of\n * %%width%% bits.\n *\n * The result will always be positive.\n */\nexport function toTwos(_value, _width) {\n let value = getBigInt(_value, \"value\");\n const width = BigInt(getNumber(_width, \"width\"));\n const limit = (BN_1 << (width - BN_1));\n if (value < BN_0) {\n value = -value;\n assert(value <= limit, \"too low\", \"NUMERIC_FAULT\", {\n operation: \"toTwos\", fault: \"overflow\", value: _value\n });\n const mask = (BN_1 << width) - BN_1;\n return ((~value) & mask) + BN_1;\n }\n else {\n assert(value < limit, \"too high\", \"NUMERIC_FAULT\", {\n operation: \"toTwos\", fault: \"overflow\", value: _value\n });\n }\n return value;\n}\n/**\n * Mask %%value%% with a bitmask of %%bits%% ones.\n */\nexport function mask(_value, _bits) {\n const value = getUint(_value, \"value\");\n const bits = BigInt(getNumber(_bits, \"bits\"));\n return value & ((BN_1 << bits) - BN_1);\n}\n/**\n * Gets a BigInt from %%value%%. If it is an invalid value for\n * a BigInt, then an ArgumentError will be thrown for %%name%%.\n */\nexport function getBigInt(value, name) {\n switch (typeof (value)) {\n case \"bigint\": return value;\n case \"number\":\n assertArgument(Number.isInteger(value), \"underflow\", name || \"value\", value);\n assertArgument(value >= -maxValue && value <= maxValue, \"overflow\", name || \"value\", value);\n return BigInt(value);\n case \"string\":\n try {\n if (value === \"\") {\n throw new Error(\"empty string\");\n }\n if (value[0] === \"-\" && value[1] !== \"-\") {\n return -BigInt(value.substring(1));\n }\n return BigInt(value);\n }\n catch (e) {\n assertArgument(false, `invalid BigNumberish string: ${e.message}`, name || \"value\", value);\n }\n }\n assertArgument(false, \"invalid BigNumberish value\", name || \"value\", value);\n}\n/**\n * Returns %%value%% as a bigint, validating it is valid as a bigint\n * value and that it is positive.\n */\nexport function getUint(value, name) {\n const result = getBigInt(value, name);\n assert(result >= BN_0, \"unsigned value cannot be negative\", \"NUMERIC_FAULT\", {\n fault: \"overflow\", operation: \"getUint\", value\n });\n return result;\n}\nconst Nibbles = \"0123456789abcdef\";\n/*\n * Converts %%value%% to a BigInt. If %%value%% is a Uint8Array, it\n * is treated as Big Endian data.\n */\nexport function toBigInt(value) {\n if (value instanceof Uint8Array) {\n let result = \"0x0\";\n for (const v of value) {\n result += Nibbles[v >> 4];\n result += Nibbles[v & 0x0f];\n }\n return BigInt(result);\n }\n return getBigInt(value);\n}\n/**\n * Gets a //number// from %%value%%. If it is an invalid value for\n * a //number//, then an ArgumentError will be thrown for %%name%%.\n */\nexport function getNumber(value, name) {\n switch (typeof (value)) {\n case \"bigint\":\n assertArgument(value >= -maxValue && value <= maxValue, \"overflow\", name || \"value\", value);\n return Number(value);\n case \"number\":\n assertArgument(Number.isInteger(value), \"underflow\", name || \"value\", value);\n assertArgument(value >= -maxValue && value <= maxValue, \"overflow\", name || \"value\", value);\n return value;\n case \"string\":\n try {\n if (value === \"\") {\n throw new Error(\"empty string\");\n }\n return getNumber(BigInt(value), name);\n }\n catch (e) {\n assertArgument(false, `invalid numeric string: ${e.message}`, name || \"value\", value);\n }\n }\n assertArgument(false, \"invalid numeric value\", name || \"value\", value);\n}\n/**\n * Converts %%value%% to a number. If %%value%% is a Uint8Array, it\n * is treated as Big Endian data. Throws if the value is not safe.\n */\nexport function toNumber(value) {\n return getNumber(toBigInt(value));\n}\n/**\n * Converts %%value%% to a Big Endian hexstring, optionally padded to\n * %%width%% bytes.\n */\nexport function toBeHex(_value, _width) {\n const value = getUint(_value, \"value\");\n let result = value.toString(16);\n if (_width == null) {\n // Ensure the value is of even length\n if (result.length % 2) {\n result = \"0\" + result;\n }\n }\n else {\n const width = getNumber(_width, \"width\");\n assert(width * 2 >= result.length, `value exceeds width (${width} bytes)`, \"NUMERIC_FAULT\", {\n operation: \"toBeHex\",\n fault: \"overflow\",\n value: _value\n });\n // Pad the value to the required width\n while (result.length < (width * 2)) {\n result = \"0\" + result;\n }\n }\n return \"0x\" + result;\n}\n/**\n * Converts %%value%% to a Big Endian Uint8Array.\n */\nexport function toBeArray(_value) {\n const value = getUint(_value, \"value\");\n if (value === BN_0) {\n return new Uint8Array([]);\n }\n let hex = value.toString(16);\n if (hex.length % 2) {\n hex = \"0\" + hex;\n }\n const result = new Uint8Array(hex.length / 2);\n for (let i = 0; i < result.length; i++) {\n const offset = i * 2;\n result[i] = parseInt(hex.substring(offset, offset + 2), 16);\n }\n return result;\n}\n/**\n * Returns a [[HexString]] for %%value%% safe to use as a //Quantity//.\n *\n * A //Quantity// does not have and leading 0 values unless the value is\n * the literal value `0x0`. This is most commonly used for JSSON-RPC\n * numeric values.\n */\nexport function toQuantity(value) {\n let result = hexlify(isBytesLike(value) ? value : toBeArray(value)).substring(2);\n while (result.startsWith(\"0\")) {\n result = result.substring(1);\n }\n if (result === \"\") {\n result = \"0\";\n }\n return \"0x\" + result;\n}\n//# sourceMappingURL=maths.js.map"],"names":["mask"],"mappings":"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","x_google_ignoreList":[0]}