@qevm/strings 5.7.0
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.
- package/LICENSE.md +21 -0
- package/README.md +47 -0
- package/lib/_version.d.ts +2 -0
- package/lib/_version.d.ts.map +1 -0
- package/lib/_version.js +5 -0
- package/lib/_version.js.map +1 -0
- package/lib/bytes32.d.ts +4 -0
- package/lib/bytes32.d.ts.map +1 -0
- package/lib/bytes32.js +35 -0
- package/lib/bytes32.js.map +1 -0
- package/lib/idna.d.ts +5 -0
- package/lib/idna.d.ts.map +1 -0
- package/lib/idna.js +189 -0
- package/lib/idna.js.map +1 -0
- package/lib/index.d.ts +5 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +17 -0
- package/lib/index.js.map +1 -0
- package/lib/utf8.d.ts +27 -0
- package/lib/utf8.d.ts.map +1 -0
- package/lib/utf8.js +257 -0
- package/lib/utf8.js.map +1 -0
- package/package.json +29 -0
- package/src.ts/_version.ts +1 -0
- package/src.ts/bytes32.ts +35 -0
- package/src.ts/idna.ts +207 -0
- package/src.ts/index.ts +23 -0
- package/src.ts/utf8.ts +295 -0
package/LICENSE.md
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2019 Richard Moore
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
String Manipulation Utilities
|
|
2
|
+
=============================
|
|
3
|
+
|
|
4
|
+
This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).
|
|
5
|
+
|
|
6
|
+
It contains functions to safely convert between UTF-8 data, strings and Bytes32 strings
|
|
7
|
+
(i.e. "short strings").
|
|
8
|
+
|
|
9
|
+
For more information, see the [documentation](https://docs.ethers.io/v5/api/utils/strings/).
|
|
10
|
+
|
|
11
|
+
Importing
|
|
12
|
+
---------
|
|
13
|
+
|
|
14
|
+
Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
|
|
15
|
+
but for those with more specific needs, individual components can be imported.
|
|
16
|
+
|
|
17
|
+
```javascript
|
|
18
|
+
const {
|
|
19
|
+
|
|
20
|
+
toUtf8Bytes,
|
|
21
|
+
toUtf8CodePoints,
|
|
22
|
+
toUtf8String,
|
|
23
|
+
|
|
24
|
+
formatBytes32String,
|
|
25
|
+
parseBytes32String,
|
|
26
|
+
|
|
27
|
+
nameprep
|
|
28
|
+
|
|
29
|
+
// Enums
|
|
30
|
+
|
|
31
|
+
Utf8ErrorFuncs,
|
|
32
|
+
Utf8ErrorReason,
|
|
33
|
+
|
|
34
|
+
UnicodeNormalizationForm
|
|
35
|
+
|
|
36
|
+
// Types
|
|
37
|
+
|
|
38
|
+
Utf8ErrorFunc,
|
|
39
|
+
|
|
40
|
+
} = require("@ethersproject/strings");
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
License
|
|
45
|
+
-------
|
|
46
|
+
|
|
47
|
+
MIT License
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_version.d.ts","sourceRoot":"","sources":["../src.ts/_version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,kBAAkB,CAAC"}
|
package/lib/_version.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_version.js","sourceRoot":"","sources":["../src.ts/_version.ts"],"names":[],"mappings":";;;AAAa,QAAA,OAAO,GAAG,eAAe,CAAC"}
|
package/lib/bytes32.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bytes32.d.ts","sourceRoot":"","sources":["../src.ts/bytes32.ts"],"names":[],"mappings":"AAGA,OAAO,EAAY,SAAS,EAAmB,MAAM,aAAa,CAAC;AAKnE,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAUxD;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAa3D"}
|
package/lib/bytes32.js
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.formatBytes32String = formatBytes32String;
|
|
4
|
+
exports.parseBytes32String = parseBytes32String;
|
|
5
|
+
var constants_1 = require("@ethersproject/constants");
|
|
6
|
+
var bytes_1 = require("@qevm/bytes");
|
|
7
|
+
var utf8_1 = require("./utf8");
|
|
8
|
+
function formatBytes32String(text) {
|
|
9
|
+
// Get the bytes
|
|
10
|
+
var bytes = (0, utf8_1.toUtf8Bytes)(text);
|
|
11
|
+
// Check we have room for null-termination
|
|
12
|
+
if (bytes.length > 31) {
|
|
13
|
+
throw new Error("bytes32 string must be less than 32 bytes");
|
|
14
|
+
}
|
|
15
|
+
// Zero-pad (implicitly null-terminates)
|
|
16
|
+
return (0, bytes_1.hexlify)((0, bytes_1.concat)([bytes, constants_1.HashZero]).slice(0, 32));
|
|
17
|
+
}
|
|
18
|
+
function parseBytes32String(bytes) {
|
|
19
|
+
var data = (0, bytes_1.arrayify)(bytes);
|
|
20
|
+
// Must be 32 bytes with a null-termination
|
|
21
|
+
if (data.length !== 32) {
|
|
22
|
+
throw new Error("invalid bytes32 - not 32 bytes long");
|
|
23
|
+
}
|
|
24
|
+
if (data[31] !== 0) {
|
|
25
|
+
throw new Error("invalid bytes32 string - no null terminator");
|
|
26
|
+
}
|
|
27
|
+
// Find the null termination
|
|
28
|
+
var length = 31;
|
|
29
|
+
while (data[length - 1] === 0) {
|
|
30
|
+
length--;
|
|
31
|
+
}
|
|
32
|
+
// Determine the string value
|
|
33
|
+
return (0, utf8_1.toUtf8String)(data.slice(0, length));
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=bytes32.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bytes32.js","sourceRoot":"","sources":["../src.ts/bytes32.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAQb,kDAUC;AAED,gDAaC;AA/BD,sDAAoD;AACpD,qCAAmE;AAEnE,+BAAmD;AAGnD,SAAgB,mBAAmB,CAAC,IAAY;IAE5C,gBAAgB;IAChB,IAAM,KAAK,GAAG,IAAA,kBAAW,EAAC,IAAI,CAAC,CAAC;IAEhC,0CAA0C;IAC1C,IAAI,KAAK,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;QAAC,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAAC,CAAC;IAExF,wCAAwC;IACxC,OAAO,IAAA,eAAO,EAAC,IAAA,cAAM,EAAC,CAAE,KAAK,EAAE,oBAAQ,CAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED,SAAgB,kBAAkB,CAAC,KAAgB;IAC/C,IAAM,IAAI,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC;IAE7B,2CAA2C;IAC3C,IAAI,IAAI,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;QAAC,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IAAC,CAAC;IACnF,IAAI,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;QAAC,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IAAC,CAAC;IAEvF,4BAA4B;IAC5B,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;QAAC,MAAM,EAAE,CAAC;IAAC,CAAC;IAE5C,6BAA6B;IAC7B,OAAO,IAAA,mBAAY,EAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;AAC/C,CAAC"}
|
package/lib/idna.d.ts
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export declare function _nameprepTableA1(codepoint: number): boolean;
|
|
2
|
+
export declare function _nameprepTableB2(codepoint: number): Array<number>;
|
|
3
|
+
export declare function _nameprepTableC(codepoint: number): boolean;
|
|
4
|
+
export declare function nameprep(value: string): string;
|
|
5
|
+
//# sourceMappingURL=idna.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"idna.d.ts","sourceRoot":"","sources":["../src.ts/idna.ts"],"names":[],"mappings":"AAoIA,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAE3D;AAED,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAcjE;AAED,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAE1D;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAiD9C"}
|
package/lib/idna.js
ADDED
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports._nameprepTableA1 = _nameprepTableA1;
|
|
4
|
+
exports._nameprepTableB2 = _nameprepTableB2;
|
|
5
|
+
exports._nameprepTableC = _nameprepTableC;
|
|
6
|
+
exports.nameprep = nameprep;
|
|
7
|
+
var utf8_1 = require("./utf8");
|
|
8
|
+
function bytes2(data) {
|
|
9
|
+
if ((data.length % 4) !== 0) {
|
|
10
|
+
throw new Error("bad data");
|
|
11
|
+
}
|
|
12
|
+
var result = [];
|
|
13
|
+
for (var i = 0; i < data.length; i += 4) {
|
|
14
|
+
result.push(parseInt(data.substring(i, i + 4), 16));
|
|
15
|
+
}
|
|
16
|
+
return result;
|
|
17
|
+
}
|
|
18
|
+
function createTable(data, func) {
|
|
19
|
+
if (!func) {
|
|
20
|
+
func = function (value) { return [parseInt(value, 16)]; };
|
|
21
|
+
}
|
|
22
|
+
var lo = 0;
|
|
23
|
+
var result = {};
|
|
24
|
+
data.split(",").forEach(function (pair) {
|
|
25
|
+
var comps = pair.split(":");
|
|
26
|
+
lo += parseInt(comps[0], 16);
|
|
27
|
+
result[lo] = func(comps[1]);
|
|
28
|
+
});
|
|
29
|
+
return result;
|
|
30
|
+
}
|
|
31
|
+
function createRangeTable(data) {
|
|
32
|
+
var hi = 0;
|
|
33
|
+
return data.split(",").map(function (v) {
|
|
34
|
+
var comps = v.split("-");
|
|
35
|
+
if (comps.length === 1) {
|
|
36
|
+
comps[1] = "0";
|
|
37
|
+
}
|
|
38
|
+
else if (comps[1] === "") {
|
|
39
|
+
comps[1] = "1";
|
|
40
|
+
}
|
|
41
|
+
var lo = hi + parseInt(comps[0], 16);
|
|
42
|
+
hi = parseInt(comps[1], 16);
|
|
43
|
+
return { l: lo, h: hi };
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
function matchMap(value, ranges) {
|
|
47
|
+
var lo = 0;
|
|
48
|
+
for (var i = 0; i < ranges.length; i++) {
|
|
49
|
+
var range = ranges[i];
|
|
50
|
+
lo += range.l;
|
|
51
|
+
if (value >= lo && value <= lo + range.h && ((value - lo) % (range.d || 1)) === 0) {
|
|
52
|
+
if (range.e && range.e.indexOf(value - lo) !== -1) {
|
|
53
|
+
continue;
|
|
54
|
+
}
|
|
55
|
+
return range;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
return null;
|
|
59
|
+
}
|
|
60
|
+
var Table_A_1_ranges = createRangeTable("221,13-1b,5f-,40-10,51-f,11-3,3-3,2-2,2-4,8,2,15,2d,28-8,88,48,27-,3-5,11-20,27-,8,28,3-5,12,18,b-a,1c-4,6-16,2-d,2-2,2,1b-4,17-9,8f-,10,f,1f-2,1c-34,33-14e,4,36-,13-,6-2,1a-f,4,9-,3-,17,8,2-2,5-,2,8-,3-,4-8,2-3,3,6-,16-6,2-,7-3,3-,17,8,3,3,3-,2,6-3,3-,4-a,5,2-6,10-b,4,8,2,4,17,8,3,6-,b,4,4-,2-e,2-4,b-10,4,9-,3-,17,8,3-,5-,9-2,3-,4-7,3-3,3,4-3,c-10,3,7-2,4,5-2,3,2,3-2,3-2,4-2,9,4-3,6-2,4,5-8,2-e,d-d,4,9,4,18,b,6-3,8,4,5-6,3-8,3-3,b-11,3,9,4,18,b,6-3,8,4,5-6,3-6,2,3-3,b-11,3,9,4,18,11-3,7-,4,5-8,2-7,3-3,b-11,3,13-2,19,a,2-,8-2,2-3,7,2,9-11,4-b,3b-3,1e-24,3,2-,3,2-,2-5,5,8,4,2,2-,3,e,4-,6,2,7-,b-,3-21,49,23-5,1c-3,9,25,10-,2-2f,23,6,3,8-2,5-5,1b-45,27-9,2a-,2-3,5b-4,45-4,53-5,8,40,2,5-,8,2,5-,28,2,5-,20,2,5-,8,2,5-,8,8,18,20,2,5-,8,28,14-5,1d-22,56-b,277-8,1e-2,52-e,e,8-a,18-8,15-b,e,4,3-b,5e-2,b-15,10,b-5,59-7,2b-555,9d-3,5b-5,17-,7-,27-,7-,9,2,2,2,20-,36,10,f-,7,14-,4,a,54-3,2-6,6-5,9-,1c-10,13-1d,1c-14,3c-,10-6,32-b,240-30,28-18,c-14,a0,115-,3,66-,b-76,5,5-,1d,24,2,5-2,2,8-,35-2,19,f-10,1d-3,311-37f,1b,5a-b,d7-19,d-3,41,57-,68-4,29-3,5f,29-37,2e-2,25-c,2c-2,4e-3,30,78-3,64-,20,19b7-49,51a7-59,48e-2,38-738,2ba5-5b,222f-,3c-94,8-b,6-4,1b,6,2,3,3,6d-20,16e-f,41-,37-7,2e-2,11-f,5-b,18-,b,14,5-3,6,88-,2,bf-2,7-,7-,7-,4-2,8,8-9,8-2ff,20,5-b,1c-b4,27-,27-cbb1,f7-9,28-2,b5-221,56,48,3-,2-,3-,5,d,2,5,3,42,5-,9,8,1d,5,6,2-2,8,153-3,123-3,33-27fd,a6da-5128,21f-5df,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3,2-1d,61-ff7d");
|
|
61
|
+
// @TODO: Make this relative...
|
|
62
|
+
var Table_B_1_flags = "ad,34f,1806,180b,180c,180d,200b,200c,200d,2060,feff".split(",").map(function (v) { return parseInt(v, 16); });
|
|
63
|
+
var Table_B_2_ranges = [
|
|
64
|
+
{ h: 25, s: 32, l: 65 },
|
|
65
|
+
{ h: 30, s: 32, e: [23], l: 127 },
|
|
66
|
+
{ h: 54, s: 1, e: [48], l: 64, d: 2 },
|
|
67
|
+
{ h: 14, s: 1, l: 57, d: 2 },
|
|
68
|
+
{ h: 44, s: 1, l: 17, d: 2 },
|
|
69
|
+
{ h: 10, s: 1, e: [2, 6, 8], l: 61, d: 2 },
|
|
70
|
+
{ h: 16, s: 1, l: 68, d: 2 },
|
|
71
|
+
{ h: 84, s: 1, e: [18, 24, 66], l: 19, d: 2 },
|
|
72
|
+
{ h: 26, s: 32, e: [17], l: 435 },
|
|
73
|
+
{ h: 22, s: 1, l: 71, d: 2 },
|
|
74
|
+
{ h: 15, s: 80, l: 40 },
|
|
75
|
+
{ h: 31, s: 32, l: 16 },
|
|
76
|
+
{ h: 32, s: 1, l: 80, d: 2 },
|
|
77
|
+
{ h: 52, s: 1, l: 42, d: 2 },
|
|
78
|
+
{ h: 12, s: 1, l: 55, d: 2 },
|
|
79
|
+
{ h: 40, s: 1, e: [38], l: 15, d: 2 },
|
|
80
|
+
{ h: 14, s: 1, l: 48, d: 2 },
|
|
81
|
+
{ h: 37, s: 48, l: 49 },
|
|
82
|
+
{ h: 148, s: 1, l: 6351, d: 2 },
|
|
83
|
+
{ h: 88, s: 1, l: 160, d: 2 },
|
|
84
|
+
{ h: 15, s: 16, l: 704 },
|
|
85
|
+
{ h: 25, s: 26, l: 854 },
|
|
86
|
+
{ h: 25, s: 32, l: 55915 },
|
|
87
|
+
{ h: 37, s: 40, l: 1247 },
|
|
88
|
+
{ h: 25, s: -119711, l: 53248 },
|
|
89
|
+
{ h: 25, s: -119763, l: 52 },
|
|
90
|
+
{ h: 25, s: -119815, l: 52 },
|
|
91
|
+
{ h: 25, s: -119867, e: [1, 4, 5, 7, 8, 11, 12, 17], l: 52 },
|
|
92
|
+
{ h: 25, s: -119919, l: 52 },
|
|
93
|
+
{ h: 24, s: -119971, e: [2, 7, 8, 17], l: 52 },
|
|
94
|
+
{ h: 24, s: -120023, e: [2, 7, 13, 15, 16, 17], l: 52 },
|
|
95
|
+
{ h: 25, s: -120075, l: 52 },
|
|
96
|
+
{ h: 25, s: -120127, l: 52 },
|
|
97
|
+
{ h: 25, s: -120179, l: 52 },
|
|
98
|
+
{ h: 25, s: -120231, l: 52 },
|
|
99
|
+
{ h: 25, s: -120283, l: 52 },
|
|
100
|
+
{ h: 25, s: -120335, l: 52 },
|
|
101
|
+
{ h: 24, s: -119543, e: [17], l: 56 },
|
|
102
|
+
{ h: 24, s: -119601, e: [17], l: 58 },
|
|
103
|
+
{ h: 24, s: -119659, e: [17], l: 58 },
|
|
104
|
+
{ h: 24, s: -119717, e: [17], l: 58 },
|
|
105
|
+
{ h: 24, s: -119775, e: [17], l: 58 }
|
|
106
|
+
];
|
|
107
|
+
var Table_B_2_lut_abs = createTable("b5:3bc,c3:ff,7:73,2:253,5:254,3:256,1:257,5:259,1:25b,3:260,1:263,2:269,1:268,5:26f,1:272,2:275,7:280,3:283,5:288,3:28a,1:28b,5:292,3f:195,1:1bf,29:19e,125:3b9,8b:3b2,1:3b8,1:3c5,3:3c6,1:3c0,1a:3ba,1:3c1,1:3c3,2:3b8,1:3b5,1bc9:3b9,1c:1f76,1:1f77,f:1f7a,1:1f7b,d:1f78,1:1f79,1:1f7c,1:1f7d,107:63,5:25b,4:68,1:68,1:68,3:69,1:69,1:6c,3:6e,4:70,1:71,1:72,1:72,1:72,7:7a,2:3c9,2:7a,2:6b,1:e5,1:62,1:63,3:65,1:66,2:6d,b:3b3,1:3c0,6:64,1b574:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3");
|
|
108
|
+
var Table_B_2_lut_rel = createTable("179:1,2:1,2:1,5:1,2:1,a:4f,a:1,8:1,2:1,2:1,3:1,5:1,3:1,4:1,2:1,3:1,4:1,8:2,1:1,2:2,1:1,2:2,27:2,195:26,2:25,1:25,1:25,2:40,2:3f,1:3f,33:1,11:-6,1:-9,1ac7:-3a,6d:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,b:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,c:-8,2:-8,2:-8,2:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,49:-8,1:-8,1:-4a,1:-4a,d:-56,1:-56,1:-56,1:-56,d:-8,1:-8,f:-8,1:-8,3:-7");
|
|
109
|
+
var Table_B_2_complex = createTable("df:00730073,51:00690307,19:02BC006E,a7:006A030C,18a:002003B9,16:03B903080301,20:03C503080301,1d7:05650582,190f:00680331,1:00740308,1:0077030A,1:0079030A,1:006102BE,b6:03C50313,2:03C503130300,2:03C503130301,2:03C503130342,2a:1F0003B9,1:1F0103B9,1:1F0203B9,1:1F0303B9,1:1F0403B9,1:1F0503B9,1:1F0603B9,1:1F0703B9,1:1F0003B9,1:1F0103B9,1:1F0203B9,1:1F0303B9,1:1F0403B9,1:1F0503B9,1:1F0603B9,1:1F0703B9,1:1F2003B9,1:1F2103B9,1:1F2203B9,1:1F2303B9,1:1F2403B9,1:1F2503B9,1:1F2603B9,1:1F2703B9,1:1F2003B9,1:1F2103B9,1:1F2203B9,1:1F2303B9,1:1F2403B9,1:1F2503B9,1:1F2603B9,1:1F2703B9,1:1F6003B9,1:1F6103B9,1:1F6203B9,1:1F6303B9,1:1F6403B9,1:1F6503B9,1:1F6603B9,1:1F6703B9,1:1F6003B9,1:1F6103B9,1:1F6203B9,1:1F6303B9,1:1F6403B9,1:1F6503B9,1:1F6603B9,1:1F6703B9,3:1F7003B9,1:03B103B9,1:03AC03B9,2:03B10342,1:03B1034203B9,5:03B103B9,6:1F7403B9,1:03B703B9,1:03AE03B9,2:03B70342,1:03B7034203B9,5:03B703B9,6:03B903080300,1:03B903080301,3:03B90342,1:03B903080342,b:03C503080300,1:03C503080301,1:03C10313,2:03C50342,1:03C503080342,b:1F7C03B9,1:03C903B9,1:03CE03B9,2:03C90342,1:03C9034203B9,5:03C903B9,ac:00720073,5b:00B00063,6:00B00066,d:006E006F,a:0073006D,1:00740065006C,1:0074006D,124f:006800700061,2:00610075,2:006F0076,b:00700061,1:006E0061,1:03BC0061,1:006D0061,1:006B0061,1:006B0062,1:006D0062,1:00670062,3:00700066,1:006E0066,1:03BC0066,4:0068007A,1:006B0068007A,1:006D0068007A,1:00670068007A,1:00740068007A,15:00700061,1:006B00700061,1:006D00700061,1:006700700061,8:00700076,1:006E0076,1:03BC0076,1:006D0076,1:006B0076,1:006D0076,1:00700077,1:006E0077,1:03BC0077,1:006D0077,1:006B0077,1:006D0077,1:006B03C9,1:006D03C9,2:00620071,3:00632215006B0067,1:0063006F002E,1:00640062,1:00670079,2:00680070,2:006B006B,1:006B006D,9:00700068,2:00700070006D,1:00700072,2:00730076,1:00770062,c723:00660066,1:00660069,1:0066006C,1:006600660069,1:00660066006C,1:00730074,1:00730074,d:05740576,1:05740565,1:0574056B,1:057E0576,1:0574056D", bytes2);
|
|
110
|
+
var Table_C_ranges = createRangeTable("80-20,2a0-,39c,32,f71,18e,7f2-f,19-7,30-4,7-5,f81-b,5,a800-20ff,4d1-1f,110,fa-6,d174-7,2e84-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,2,1f-5f,ff7f-20001");
|
|
111
|
+
function flatten(values) {
|
|
112
|
+
return values.reduce(function (accum, value) {
|
|
113
|
+
value.forEach(function (value) { accum.push(value); });
|
|
114
|
+
return accum;
|
|
115
|
+
}, []);
|
|
116
|
+
}
|
|
117
|
+
function _nameprepTableA1(codepoint) {
|
|
118
|
+
return !!matchMap(codepoint, Table_A_1_ranges);
|
|
119
|
+
}
|
|
120
|
+
function _nameprepTableB2(codepoint) {
|
|
121
|
+
var range = matchMap(codepoint, Table_B_2_ranges);
|
|
122
|
+
if (range) {
|
|
123
|
+
return [codepoint + range.s];
|
|
124
|
+
}
|
|
125
|
+
var codes = Table_B_2_lut_abs[codepoint];
|
|
126
|
+
if (codes) {
|
|
127
|
+
return codes;
|
|
128
|
+
}
|
|
129
|
+
var shift = Table_B_2_lut_rel[codepoint];
|
|
130
|
+
if (shift) {
|
|
131
|
+
return [codepoint + shift[0]];
|
|
132
|
+
}
|
|
133
|
+
var complex = Table_B_2_complex[codepoint];
|
|
134
|
+
if (complex) {
|
|
135
|
+
return complex;
|
|
136
|
+
}
|
|
137
|
+
return null;
|
|
138
|
+
}
|
|
139
|
+
function _nameprepTableC(codepoint) {
|
|
140
|
+
return !!matchMap(codepoint, Table_C_ranges);
|
|
141
|
+
}
|
|
142
|
+
function nameprep(value) {
|
|
143
|
+
// This allows platforms with incomplete normalize to bypass
|
|
144
|
+
// it for very basic names which the built-in toLowerCase
|
|
145
|
+
// will certainly handle correctly
|
|
146
|
+
if (value.match(/^[a-z0-9-]*$/i) && value.length <= 59) {
|
|
147
|
+
return value.toLowerCase();
|
|
148
|
+
}
|
|
149
|
+
// Get the code points (keeping the current normalization)
|
|
150
|
+
var codes = (0, utf8_1.toUtf8CodePoints)(value);
|
|
151
|
+
codes = flatten(codes.map(function (code) {
|
|
152
|
+
// Substitute Table B.1 (Maps to Nothing)
|
|
153
|
+
if (Table_B_1_flags.indexOf(code) >= 0) {
|
|
154
|
+
return [];
|
|
155
|
+
}
|
|
156
|
+
if (code >= 0xfe00 && code <= 0xfe0f) {
|
|
157
|
+
return [];
|
|
158
|
+
}
|
|
159
|
+
// Substitute Table B.2 (Case Folding)
|
|
160
|
+
var codesTableB2 = _nameprepTableB2(code);
|
|
161
|
+
if (codesTableB2) {
|
|
162
|
+
return codesTableB2;
|
|
163
|
+
}
|
|
164
|
+
// No Substitution
|
|
165
|
+
return [code];
|
|
166
|
+
}));
|
|
167
|
+
// Normalize using form KC
|
|
168
|
+
codes = (0, utf8_1.toUtf8CodePoints)((0, utf8_1._toUtf8String)(codes), utf8_1.UnicodeNormalizationForm.NFKC);
|
|
169
|
+
// Prohibit Tables C.1.2, C.2.2, C.3, C.4, C.5, C.6, C.7, C.8, C.9
|
|
170
|
+
codes.forEach(function (code) {
|
|
171
|
+
if (_nameprepTableC(code)) {
|
|
172
|
+
throw new Error("STRINGPREP_CONTAINS_PROHIBITED");
|
|
173
|
+
}
|
|
174
|
+
});
|
|
175
|
+
// Prohibit Unassigned Code Points (Table A.1)
|
|
176
|
+
codes.forEach(function (code) {
|
|
177
|
+
if (_nameprepTableA1(code)) {
|
|
178
|
+
throw new Error("STRINGPREP_CONTAINS_UNASSIGNED");
|
|
179
|
+
}
|
|
180
|
+
});
|
|
181
|
+
// IDNA extras
|
|
182
|
+
var name = (0, utf8_1._toUtf8String)(codes);
|
|
183
|
+
// IDNA: 4.2.3.1
|
|
184
|
+
if (name.substring(0, 1) === "-" || name.substring(2, 4) === "--" || name.substring(name.length - 1) === "-") {
|
|
185
|
+
throw new Error("invalid hyphen");
|
|
186
|
+
}
|
|
187
|
+
return name;
|
|
188
|
+
}
|
|
189
|
+
//# sourceMappingURL=idna.js.map
|
package/lib/idna.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"idna.js","sourceRoot":"","sources":["../src.ts/idna.ts"],"names":[],"mappings":"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C,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE;IAC5B,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE;IAC5B,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,CAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAE,EAAE,CAAC,EAAE,EAAE,EAAE;IAC9D,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE;IAC5B,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,CAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAE,EAAE,CAAC,EAAE,EAAE,EAAE;IAChD,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,CAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAE,EAAE,CAAC,EAAE,EAAE,EAAE;IACzD,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE;IAC5B,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE;IAC5B,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE;IAC5B,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE;IAC5B,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE;IAC5B,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE;IAC5B,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,CAAE,EAAE,CAAE,EAAE,CAAC,E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"}
|
package/lib/index.d.ts
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { formatBytes32String, parseBytes32String } from "./bytes32";
|
|
2
|
+
import { nameprep } from "./idna";
|
|
3
|
+
import { _toEscapedUtf8String, toUtf8Bytes, toUtf8CodePoints, toUtf8String, UnicodeNormalizationForm, Utf8ErrorFunc, Utf8ErrorFuncs, Utf8ErrorReason } from "./utf8";
|
|
4
|
+
export { _toEscapedUtf8String, toUtf8Bytes, toUtf8CodePoints, toUtf8String, Utf8ErrorFunc, Utf8ErrorFuncs, Utf8ErrorReason, UnicodeNormalizationForm, formatBytes32String, parseBytes32String, nameprep };
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src.ts/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,EAAE,oBAAoB,EAAE,WAAW,EAAE,gBAAgB,EAAE,YAAY,EAAE,wBAAwB,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAErK,OAAO,EACH,oBAAoB,EACpB,WAAW,EACX,gBAAgB,EAChB,YAAY,EAEZ,aAAa,EACb,cAAc,EACd,eAAe,EAEf,wBAAwB,EAExB,mBAAmB,EACnB,kBAAkB,EAElB,QAAQ,EACX,CAAA"}
|
package/lib/index.js
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.nameprep = exports.parseBytes32String = exports.formatBytes32String = exports.UnicodeNormalizationForm = exports.Utf8ErrorReason = exports.Utf8ErrorFuncs = exports.toUtf8String = exports.toUtf8CodePoints = exports.toUtf8Bytes = exports._toEscapedUtf8String = void 0;
|
|
4
|
+
var bytes32_1 = require("./bytes32");
|
|
5
|
+
Object.defineProperty(exports, "formatBytes32String", { enumerable: true, get: function () { return bytes32_1.formatBytes32String; } });
|
|
6
|
+
Object.defineProperty(exports, "parseBytes32String", { enumerable: true, get: function () { return bytes32_1.parseBytes32String; } });
|
|
7
|
+
var idna_1 = require("./idna");
|
|
8
|
+
Object.defineProperty(exports, "nameprep", { enumerable: true, get: function () { return idna_1.nameprep; } });
|
|
9
|
+
var utf8_1 = require("./utf8");
|
|
10
|
+
Object.defineProperty(exports, "_toEscapedUtf8String", { enumerable: true, get: function () { return utf8_1._toEscapedUtf8String; } });
|
|
11
|
+
Object.defineProperty(exports, "toUtf8Bytes", { enumerable: true, get: function () { return utf8_1.toUtf8Bytes; } });
|
|
12
|
+
Object.defineProperty(exports, "toUtf8CodePoints", { enumerable: true, get: function () { return utf8_1.toUtf8CodePoints; } });
|
|
13
|
+
Object.defineProperty(exports, "toUtf8String", { enumerable: true, get: function () { return utf8_1.toUtf8String; } });
|
|
14
|
+
Object.defineProperty(exports, "UnicodeNormalizationForm", { enumerable: true, get: function () { return utf8_1.UnicodeNormalizationForm; } });
|
|
15
|
+
Object.defineProperty(exports, "Utf8ErrorFuncs", { enumerable: true, get: function () { return utf8_1.Utf8ErrorFuncs; } });
|
|
16
|
+
Object.defineProperty(exports, "Utf8ErrorReason", { enumerable: true, get: function () { return utf8_1.Utf8ErrorReason; } });
|
|
17
|
+
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src.ts/index.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;AAEb,qCAAoE;AAgBhE,oGAhBK,6BAAmB,OAgBL;AACnB,mGAjB0B,4BAAkB,OAiB1B;AAhBtB,+BAAkC;AAkB9B,yFAlBK,eAAQ,OAkBL;AAjBZ,+BAAqK;AAGjK,qGAHK,2BAAoB,OAGL;AACpB,4FAJ2B,kBAAW,OAI3B;AACX,iGALwC,uBAAgB,OAKxC;AAChB,6FAN0D,mBAAY,OAM1D;AAMZ,yGAZwE,+BAAwB,OAYxE;AAHxB,+FATiH,qBAAc,OASjH;AACd,gGAViI,sBAAe,OAUjI"}
|
package/lib/utf8.d.ts
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { BytesLike } from "@qevm/bytes";
|
|
2
|
+
export declare enum UnicodeNormalizationForm {
|
|
3
|
+
current = "",
|
|
4
|
+
NFC = "NFC",
|
|
5
|
+
NFD = "NFD",
|
|
6
|
+
NFKC = "NFKC",
|
|
7
|
+
NFKD = "NFKD"
|
|
8
|
+
}
|
|
9
|
+
export declare enum Utf8ErrorReason {
|
|
10
|
+
UNEXPECTED_CONTINUE = "unexpected continuation byte",
|
|
11
|
+
BAD_PREFIX = "bad codepoint prefix",
|
|
12
|
+
OVERRUN = "string overrun",
|
|
13
|
+
MISSING_CONTINUE = "missing continuation byte",
|
|
14
|
+
OUT_OF_RANGE = "out of UTF-8 range",
|
|
15
|
+
UTF16_SURROGATE = "UTF-16 surrogate",
|
|
16
|
+
OVERLONG = "overlong representation"
|
|
17
|
+
}
|
|
18
|
+
export type Utf8ErrorFunc = (reason: Utf8ErrorReason, offset: number, bytes: ArrayLike<number>, output: Array<number>, badCodepoint?: number) => number;
|
|
19
|
+
export declare const Utf8ErrorFuncs: {
|
|
20
|
+
[name: string]: Utf8ErrorFunc;
|
|
21
|
+
};
|
|
22
|
+
export declare function toUtf8Bytes(str: string, form?: UnicodeNormalizationForm): Uint8Array;
|
|
23
|
+
export declare function _toEscapedUtf8String(bytes: BytesLike, onError?: Utf8ErrorFunc): string;
|
|
24
|
+
export declare function _toUtf8String(codePoints: Array<number>): string;
|
|
25
|
+
export declare function toUtf8String(bytes: BytesLike, onError?: Utf8ErrorFunc): string;
|
|
26
|
+
export declare function toUtf8CodePoints(str: string, form?: UnicodeNormalizationForm): Array<number>;
|
|
27
|
+
//# sourceMappingURL=utf8.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utf8.d.ts","sourceRoot":"","sources":["../src.ts/utf8.ts"],"names":[],"mappings":"AAEA,OAAO,EAAY,SAAS,EAAE,MAAM,aAAa,CAAC;AAQlD,oBAAY,wBAAwB;IAChC,OAAO,KAAM;IACb,GAAG,QAAa;IAChB,GAAG,QAAa;IAChB,IAAI,SAAa;IACjB,IAAI,SAAa;CACpB;AAED,oBAAY,eAAe;IAGvB,mBAAmB,iCAAmC;IAItD,UAAU,yBAAoC;IAI9C,OAAO,mBAAiC;IAIxC,gBAAgB,8BAAmC;IAKnD,YAAY,uBAAgC;IAK5C,eAAe,qBAA2B;IAK1C,QAAQ,4BAAyC;CACpD;AAGD,MAAM,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;AA4CxJ,eAAO,MAAM,cAAc,EAAE;IAAE,CAAE,IAAI,EAAE,MAAM,GAAI,aAAa,CAAA;CAI5D,CAAC;AAqGH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,GAAE,wBAA2D,GAAG,UAAU,CAyCtH;AAOD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,MAAM,CAwBtF;AAED,wBAAgB,aAAa,CAAC,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,MAAM,CAW/D;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,MAAM,CAE9E;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,GAAE,wBAA2D,GAAG,KAAK,CAAC,MAAM,CAAC,CAE9H"}
|