1 | "use strict";
|
2 |
|
3 | Object.defineProperty(exports, "__esModule", {
|
4 | value: true
|
5 | });
|
6 | exports.REGEX_HEX_PREFIXED = exports.REGEX_HEX_NOPREFIX = void 0;
|
7 | exports.isHex = isHex;
|
8 |
|
9 |
|
10 | const REGEX_HEX_PREFIXED = /^0x[\da-fA-F]+$/;
|
11 | exports.REGEX_HEX_PREFIXED = REGEX_HEX_PREFIXED;
|
12 | const REGEX_HEX_NOPREFIX = /^[\da-fA-F]+$/;
|
13 |
|
14 |
|
15 |
|
16 |
|
17 |
|
18 |
|
19 |
|
20 |
|
21 |
|
22 |
|
23 |
|
24 |
|
25 |
|
26 |
|
27 |
|
28 |
|
29 | exports.REGEX_HEX_NOPREFIX = REGEX_HEX_NOPREFIX;
|
30 |
|
31 | function isHex(value) {
|
32 | let bitLength = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : -1;
|
33 | let ignoreLength = arguments.length > 2 ? arguments[2] : undefined;
|
34 | return typeof value === 'string' && (value === '0x' || REGEX_HEX_PREFIXED.test(value)) && (bitLength === -1 ? ignoreLength || value.length % 2 === 0 : value.length === 2 + Math.ceil(bitLength / 4));
|
35 | } |
\ | No newline at end of file |