goldstein 4.11.0 → 5.0.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/ChangeLog +20 -0
- package/build/parser.cjs +45 -53
- package/package.json +12 -13
- package/packages/convert/apply-if-let/index.js +2 -1
- package/packages/keyword-add-array/index.js +11 -21
- package/packages/keyword-arrow/index.js +3 -7
- package/packages/keyword-curry/index.js +0 -1
- package/packages/keyword-fn/index.js +2 -5
- package/packages/keyword-freeze/index.js +1 -3
- package/packages/keyword-guard/index.js +1 -3
- package/packages/keyword-import/index.js +0 -1
- package/packages/keyword-should/index.js +1 -3
- package/packages/keyword-throw/index.js +1 -3
- package/packages/keyword-try/index.js +0 -1
- package/packages/string-interpolation/index.js +0 -1
package/ChangeLog
CHANGED
|
@@ -1,3 +1,23 @@
|
|
|
1
|
+
2023.12.12, v5.0.0
|
|
2
|
+
|
|
3
|
+
feature:
|
|
4
|
+
- 3e54d9c goldstein: escover v4.0.1
|
|
5
|
+
- 9c35606 goldstein: drop support of node < 18
|
|
6
|
+
- fb7a96d goldstein: @putout/plugin-logical-expressions v5.0.0
|
|
7
|
+
- 51f1ff6 goldstein: @putout/printer v7.1.0
|
|
8
|
+
- 27106cb goldstein: @putout/test v8.0.0
|
|
9
|
+
- 04d7d2c goldstein: madrun v10.0.0
|
|
10
|
+
- f477bb7 goldstein: eslint-plugin-putout v22.0.0
|
|
11
|
+
- c8391d9 goldstein: putout v34.0.7
|
|
12
|
+
- 0c81207 goldstein: supertape v9.0.0
|
|
13
|
+
- fa384a5 goldstein: estree-to-babel v9.0.0
|
|
14
|
+
|
|
15
|
+
2023.10.28, v4.12.0
|
|
16
|
+
|
|
17
|
+
feature:
|
|
18
|
+
- 9cd55bd package: @putout/printer v6.0.0
|
|
19
|
+
- 3ff2ebe package: eslint-plugin-putout v21.0.1
|
|
20
|
+
|
|
1
21
|
2023.10.19, v4.11.0
|
|
2
22
|
|
|
3
23
|
feature:
|
package/build/parser.cjs
CHANGED
|
@@ -37,8 +37,8 @@ var import_estree_to_babel = __toESM(require("estree-to-babel"), 1);
|
|
|
37
37
|
|
|
38
38
|
// node_modules/acorn/dist/acorn.mjs
|
|
39
39
|
var astralIdentifierCodes = [509, 0, 227, 0, 150, 4, 294, 9, 1368, 2, 2, 1, 6, 3, 41, 2, 5, 0, 166, 1, 574, 3, 9, 9, 370, 1, 81, 2, 71, 10, 50, 3, 123, 2, 54, 14, 32, 10, 3, 1, 11, 3, 46, 10, 8, 0, 46, 9, 7, 2, 37, 13, 2, 9, 6, 1, 45, 0, 13, 2, 49, 13, 9, 3, 2, 11, 83, 11, 7, 0, 3, 0, 158, 11, 6, 9, 7, 3, 56, 1, 2, 6, 3, 1, 3, 2, 10, 0, 11, 1, 3, 6, 4, 4, 193, 17, 10, 9, 5, 0, 82, 19, 13, 9, 214, 6, 3, 8, 28, 1, 83, 16, 16, 9, 82, 12, 9, 9, 84, 14, 5, 9, 243, 14, 166, 9, 71, 5, 2, 1, 3, 3, 2, 0, 2, 1, 13, 9, 120, 6, 3, 6, 4, 0, 29, 9, 41, 6, 2, 3, 9, 0, 10, 10, 47, 15, 406, 7, 2, 7, 17, 9, 57, 21, 2, 13, 123, 5, 4, 0, 2, 1, 2, 6, 2, 0, 9, 9, 49, 4, 2, 1, 2, 4, 9, 9, 330, 3, 10, 1, 2, 0, 49, 6, 4, 4, 14, 9, 5351, 0, 7, 14, 13835, 9, 87, 9, 39, 4, 60, 6, 26, 9, 1014, 0, 2, 54, 8, 3, 82, 0, 12, 1, 19628, 1, 4706, 45, 3, 22, 543, 4, 4, 5, 9, 7, 3, 6, 31, 3, 149, 2, 1418, 49, 513, 54, 5, 49, 9, 0, 15, 0, 23, 4, 2, 14, 1361, 6, 2, 16, 3, 6, 2, 1, 2, 4, 101, 0, 161, 6, 10, 9, 357, 0, 62, 13, 499, 13, 983, 6, 110, 6, 6, 9, 4759, 9, 787719, 239];
|
|
40
|
-
var astralIdentifierStartCodes = [0, 11, 2, 25, 2, 18, 2, 1, 2, 14, 3, 13, 35, 122, 70, 52, 268, 28, 4, 48, 48, 31, 14, 29, 6, 37, 11, 29, 3, 35, 5, 7, 2, 4, 43, 157, 19, 35, 5, 35, 5, 39, 9, 51, 13, 10, 2, 14, 2, 6, 2, 1, 2, 10, 2, 14, 2, 6, 2, 1, 68, 310, 10, 21, 11, 7, 25, 5, 2, 41, 2, 8, 70, 5, 3, 0, 2, 43, 2, 1, 4, 0, 3, 22, 11, 22, 10, 30, 66, 18, 2, 1, 11, 21, 11, 25, 71, 55, 7, 1, 65, 0, 16, 3, 2, 2, 2, 28, 43, 28, 4, 28, 36, 7, 2, 27, 28, 53, 11, 21, 11, 18, 14, 17, 111, 72, 56, 50, 14, 50, 14, 35, 349, 41, 7, 1, 79, 28, 11, 0, 9, 21, 43, 17, 47, 20, 28, 22, 13, 52, 58, 1, 3, 0, 14, 44, 33, 24, 27, 35, 30, 0, 3, 0, 9, 34, 4, 0, 13, 47, 15, 3, 22, 0, 2, 0, 36, 17, 2, 24, 20, 1, 64, 6, 2, 0, 2, 3, 2, 14, 2, 9, 8, 46, 39, 7, 3, 1, 3, 21, 2, 6, 2, 1, 2, 4, 4, 0, 19, 0, 13, 4, 159, 52, 19, 3, 21, 2, 31, 47, 21, 1, 2, 0, 185, 46, 42, 3, 37, 47, 21, 0, 60, 42, 14, 0, 72, 26, 38, 6, 186, 43, 117, 63, 32, 7, 3, 0, 3, 7, 2, 1, 2, 23, 16, 0, 2, 0, 95, 7, 3, 38, 17, 0, 2, 0, 29, 0, 11, 39, 8, 0, 22, 0, 12, 45, 20, 0, 19, 72, 264, 8, 2, 36, 18, 0, 50, 29, 113, 6, 2, 1, 2, 37, 22, 0, 26, 5, 2, 1, 2, 31, 15, 0, 328, 18, 16, 0, 2, 12, 2, 33, 125, 0, 80, 921, 103, 110, 18, 195, 2637, 96, 16, 1071, 18, 5, 4026, 582, 8634, 568, 8, 30, 18, 78, 18, 29, 19, 47, 17, 3, 32, 20, 6, 18, 689, 63, 129, 74, 6, 0, 67, 12, 65, 1, 2, 0, 29, 6135, 9, 1237, 43, 8, 8936, 3, 2, 6, 2, 1, 2, 290, 16, 0, 30, 2, 3, 0, 15, 3, 9, 395, 2309, 106, 6, 12, 4, 8, 8, 9, 5991, 84, 2, 70, 2, 1, 3, 0, 3, 1, 3, 3, 2, 11, 2, 0, 2, 6, 2, 64, 2, 3, 3, 7, 2, 6, 2, 27, 2, 3, 2, 4, 2, 0, 4, 6, 2, 339, 3, 24, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 7, 1845, 30, 7, 5, 262, 61, 147, 44, 11, 6, 17, 0, 322, 29, 19, 43, 485, 27, 757, 6, 2, 3, 2, 1, 2, 14, 2, 196, 60, 67, 8, 0, 1205, 3, 2, 26, 2, 1, 2, 0, 3, 0, 2, 9, 2, 3, 2, 0, 2, 0, 7, 0, 5, 0, 2, 0, 2, 0, 2, 2, 2, 1, 2, 0, 3, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 1, 2, 0, 3, 3, 2, 6, 2, 3, 2, 3, 2, 0, 2, 9, 2, 16, 6, 2, 2, 4, 2, 16, 4421, 42719, 33, 4153, 7, 221, 3, 5761, 15, 7472,
|
|
41
|
-
var nonASCIIidentifierChars = "\u200C\u200D\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0898-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F";
|
|
40
|
+
var astralIdentifierStartCodes = [0, 11, 2, 25, 2, 18, 2, 1, 2, 14, 3, 13, 35, 122, 70, 52, 268, 28, 4, 48, 48, 31, 14, 29, 6, 37, 11, 29, 3, 35, 5, 7, 2, 4, 43, 157, 19, 35, 5, 35, 5, 39, 9, 51, 13, 10, 2, 14, 2, 6, 2, 1, 2, 10, 2, 14, 2, 6, 2, 1, 68, 310, 10, 21, 11, 7, 25, 5, 2, 41, 2, 8, 70, 5, 3, 0, 2, 43, 2, 1, 4, 0, 3, 22, 11, 22, 10, 30, 66, 18, 2, 1, 11, 21, 11, 25, 71, 55, 7, 1, 65, 0, 16, 3, 2, 2, 2, 28, 43, 28, 4, 28, 36, 7, 2, 27, 28, 53, 11, 21, 11, 18, 14, 17, 111, 72, 56, 50, 14, 50, 14, 35, 349, 41, 7, 1, 79, 28, 11, 0, 9, 21, 43, 17, 47, 20, 28, 22, 13, 52, 58, 1, 3, 0, 14, 44, 33, 24, 27, 35, 30, 0, 3, 0, 9, 34, 4, 0, 13, 47, 15, 3, 22, 0, 2, 0, 36, 17, 2, 24, 20, 1, 64, 6, 2, 0, 2, 3, 2, 14, 2, 9, 8, 46, 39, 7, 3, 1, 3, 21, 2, 6, 2, 1, 2, 4, 4, 0, 19, 0, 13, 4, 159, 52, 19, 3, 21, 2, 31, 47, 21, 1, 2, 0, 185, 46, 42, 3, 37, 47, 21, 0, 60, 42, 14, 0, 72, 26, 38, 6, 186, 43, 117, 63, 32, 7, 3, 0, 3, 7, 2, 1, 2, 23, 16, 0, 2, 0, 95, 7, 3, 38, 17, 0, 2, 0, 29, 0, 11, 39, 8, 0, 22, 0, 12, 45, 20, 0, 19, 72, 264, 8, 2, 36, 18, 0, 50, 29, 113, 6, 2, 1, 2, 37, 22, 0, 26, 5, 2, 1, 2, 31, 15, 0, 328, 18, 16, 0, 2, 12, 2, 33, 125, 0, 80, 921, 103, 110, 18, 195, 2637, 96, 16, 1071, 18, 5, 4026, 582, 8634, 568, 8, 30, 18, 78, 18, 29, 19, 47, 17, 3, 32, 20, 6, 18, 689, 63, 129, 74, 6, 0, 67, 12, 65, 1, 2, 0, 29, 6135, 9, 1237, 43, 8, 8936, 3, 2, 6, 2, 1, 2, 290, 16, 0, 30, 2, 3, 0, 15, 3, 9, 395, 2309, 106, 6, 12, 4, 8, 8, 9, 5991, 84, 2, 70, 2, 1, 3, 0, 3, 1, 3, 3, 2, 11, 2, 0, 2, 6, 2, 64, 2, 3, 3, 7, 2, 6, 2, 27, 2, 3, 2, 4, 2, 0, 4, 6, 2, 339, 3, 24, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 7, 1845, 30, 7, 5, 262, 61, 147, 44, 11, 6, 17, 0, 322, 29, 19, 43, 485, 27, 757, 6, 2, 3, 2, 1, 2, 14, 2, 196, 60, 67, 8, 0, 1205, 3, 2, 26, 2, 1, 2, 0, 3, 0, 2, 9, 2, 3, 2, 0, 2, 0, 7, 0, 5, 0, 2, 0, 2, 0, 2, 2, 2, 1, 2, 0, 3, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 1, 2, 0, 3, 3, 2, 6, 2, 3, 2, 3, 2, 0, 2, 9, 2, 16, 6, 2, 2, 4, 2, 16, 4421, 42719, 33, 4153, 7, 221, 3, 5761, 15, 7472, 16, 621, 2467, 541, 1507, 4938, 6, 4191];
|
|
41
|
+
var nonASCIIidentifierChars = "\u200C\u200D\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0898-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F\uFF65";
|
|
42
42
|
var nonASCIIidentifierStartChars = "\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC";
|
|
43
43
|
var reservedWords = {
|
|
44
44
|
3: "abstract boolean byte char class double enum export extends final float goto implements import int interface long native package private protected public short static super synchronized throws transient volatile",
|
|
@@ -265,8 +265,9 @@ var hasOwn = Object.hasOwn || function(obj, propName) {
|
|
|
265
265
|
var isArray = Array.isArray || function(obj) {
|
|
266
266
|
return toString.call(obj) === "[object Array]";
|
|
267
267
|
};
|
|
268
|
+
var regexpCache = /* @__PURE__ */ Object.create(null);
|
|
268
269
|
function wordsRegexp(words) {
|
|
269
|
-
return new RegExp("^(?:" + words.replace(/ /g, "|") + ")$");
|
|
270
|
+
return regexpCache[words] || (regexpCache[words] = new RegExp("^(?:" + words.replace(/ /g, "|") + ")$"));
|
|
270
271
|
}
|
|
271
272
|
function codePointToString(code) {
|
|
272
273
|
if (code <= 65535) {
|
|
@@ -312,11 +313,11 @@ var defaultOptions = {
|
|
|
312
313
|
// Can be either `"script"` or `"module"`. This influences global
|
|
313
314
|
// strict mode and parsing of `import` and `export` declarations.
|
|
314
315
|
sourceType: "script",
|
|
315
|
-
// `onInsertedSemicolon` can be a callback that will be called
|
|
316
|
-
//
|
|
317
|
-
//
|
|
318
|
-
// enabled, it is given the location as a `{line,
|
|
319
|
-
// as second argument.
|
|
316
|
+
// `onInsertedSemicolon` can be a callback that will be called when
|
|
317
|
+
// a semicolon is automatically inserted. It will be passed the
|
|
318
|
+
// position of the inserted semicolon as an offset, and if
|
|
319
|
+
// `locations` is enabled, it is given the location as a `{line,
|
|
320
|
+
// column}` object as second argument.
|
|
320
321
|
onInsertedSemicolon: null,
|
|
321
322
|
// `onTrailingComma` is similar to `onInsertedSemicolon`, but for
|
|
322
323
|
// trailing commas.
|
|
@@ -369,6 +370,8 @@ var defaultOptions = {
|
|
|
369
370
|
// passed, the full `{line, column}` locations of the start and
|
|
370
371
|
// end of the comments. Note that you are not allowed to call the
|
|
371
372
|
// parser from the callback—that will corrupt its internal state.
|
|
373
|
+
// When this option has an array as value, objects representing the
|
|
374
|
+
// comments are pushed to it.
|
|
372
375
|
onComment: null,
|
|
373
376
|
// Nodes have their start and end characters offsets recorded in
|
|
374
377
|
// `start` and `end` properties (directly on the node, rather than
|
|
@@ -1594,8 +1597,6 @@ pp$8.checkPatternExport = function(exports, pat) {
|
|
|
1594
1597
|
this.checkPatternExport(exports, pat.left);
|
|
1595
1598
|
} else if (type === "RestElement") {
|
|
1596
1599
|
this.checkPatternExport(exports, pat.argument);
|
|
1597
|
-
} else if (type === "ParenthesizedExpression") {
|
|
1598
|
-
this.checkPatternExport(exports, pat.expression);
|
|
1599
1600
|
}
|
|
1600
1601
|
};
|
|
1601
1602
|
pp$8.checkVariableExport = function(exports, decls) {
|
|
@@ -2072,6 +2073,12 @@ types$1._function.updateContext = types$1._class.updateContext = function(prevTy
|
|
|
2072
2073
|
}
|
|
2073
2074
|
this.exprAllowed = false;
|
|
2074
2075
|
};
|
|
2076
|
+
types$1.colon.updateContext = function() {
|
|
2077
|
+
if (this.curContext().token === "function") {
|
|
2078
|
+
this.context.pop();
|
|
2079
|
+
}
|
|
2080
|
+
this.exprAllowed = true;
|
|
2081
|
+
};
|
|
2075
2082
|
types$1.backQuote.updateContext = function() {
|
|
2076
2083
|
if (this.curContext() === types.q_tmpl) {
|
|
2077
2084
|
this.context.pop();
|
|
@@ -2694,9 +2701,12 @@ pp$5.parseNew = function() {
|
|
|
2694
2701
|
this.raiseRecoverable(this.start, "Escape sequence in keyword new");
|
|
2695
2702
|
}
|
|
2696
2703
|
var node = this.startNode();
|
|
2697
|
-
|
|
2698
|
-
if (this.options.ecmaVersion >= 6 && this.
|
|
2699
|
-
|
|
2704
|
+
this.next();
|
|
2705
|
+
if (this.options.ecmaVersion >= 6 && this.type === types$1.dot) {
|
|
2706
|
+
var meta = this.startNodeAt(node.start, node.startLoc);
|
|
2707
|
+
meta.name = "new";
|
|
2708
|
+
node.meta = this.finishNode(meta, "Identifier");
|
|
2709
|
+
this.next();
|
|
2700
2710
|
var containsEsc = this.containsEsc;
|
|
2701
2711
|
node.property = this.parseIdent(true);
|
|
2702
2712
|
if (node.property.name !== "target") {
|
|
@@ -3072,6 +3082,7 @@ pp$5.parseIdentNode = function() {
|
|
|
3072
3082
|
if ((node.name === "class" || node.name === "function") && (this.lastTokEnd !== this.lastTokStart + 1 || this.input.charCodeAt(this.lastTokStart) !== 46)) {
|
|
3073
3083
|
this.context.pop();
|
|
3074
3084
|
}
|
|
3085
|
+
this.type = types$1.name;
|
|
3075
3086
|
} else {
|
|
3076
3087
|
this.unexpected();
|
|
3077
3088
|
}
|
|
@@ -5344,7 +5355,7 @@ pp.readWord = function() {
|
|
|
5344
5355
|
}
|
|
5345
5356
|
return this.finishToken(type, word);
|
|
5346
5357
|
};
|
|
5347
|
-
var version = "8.
|
|
5358
|
+
var version = "8.11.2";
|
|
5348
5359
|
Parser.acorn = {
|
|
5349
5360
|
Parser,
|
|
5350
5361
|
version,
|
|
@@ -5429,15 +5440,13 @@ function fn(Parser3) {
|
|
|
5429
5440
|
return super.parse();
|
|
5430
5441
|
}
|
|
5431
5442
|
parseStatement(context, topLevel, exports) {
|
|
5432
|
-
if (this.type === Parser3.acorn.keywordTypes.fn)
|
|
5443
|
+
if (this.type === Parser3.acorn.keywordTypes.fn)
|
|
5433
5444
|
this.type = Parser3.acorn.keywordTypes.function;
|
|
5434
|
-
}
|
|
5435
5445
|
return super.parseStatement(context, topLevel, exports);
|
|
5436
5446
|
}
|
|
5437
5447
|
shouldParseExportStatement() {
|
|
5438
|
-
if (this.type === Parser3.acorn.keywordTypes.fn)
|
|
5448
|
+
if (this.type === Parser3.acorn.keywordTypes.fn)
|
|
5439
5449
|
return true;
|
|
5440
|
-
}
|
|
5441
5450
|
return super.shouldParseExportStatement();
|
|
5442
5451
|
}
|
|
5443
5452
|
};
|
|
@@ -5455,9 +5464,8 @@ function newSpeak(Parser3) {
|
|
|
5455
5464
|
return super.parse();
|
|
5456
5465
|
}
|
|
5457
5466
|
parseStatement(context, topLevel, exports) {
|
|
5458
|
-
if (this.type === keywordTypes.guard)
|
|
5467
|
+
if (this.type === keywordTypes.guard)
|
|
5459
5468
|
return this.parseGuard();
|
|
5460
|
-
}
|
|
5461
5469
|
return super.parseStatement(context, topLevel, exports);
|
|
5462
5470
|
}
|
|
5463
5471
|
parseGuard() {
|
|
@@ -5628,9 +5636,8 @@ function newSpeak2(Parser3) {
|
|
|
5628
5636
|
return super.parse();
|
|
5629
5637
|
}
|
|
5630
5638
|
parseStatement(context, topLevel, exports) {
|
|
5631
|
-
if (this.type === keywordTypes.should)
|
|
5639
|
+
if (this.type === keywordTypes.should)
|
|
5632
5640
|
return this.parseShould();
|
|
5633
|
-
}
|
|
5634
5641
|
return super.parseStatement(context, topLevel, exports);
|
|
5635
5642
|
}
|
|
5636
5643
|
parseShould() {
|
|
@@ -5692,9 +5699,8 @@ function keywordThrow(Parser3) {
|
|
|
5692
5699
|
const { keywordTypes } = Parser3.acorn;
|
|
5693
5700
|
return class extends Parser3 {
|
|
5694
5701
|
parseExprAtom(refDestructuringErrors, forInit) {
|
|
5695
|
-
if (this.type === keywordTypes.throw)
|
|
5702
|
+
if (this.type === keywordTypes.throw)
|
|
5696
5703
|
return this.parseThrowExpression();
|
|
5697
|
-
}
|
|
5698
5704
|
return super.parseExprAtom(refDestructuringErrors, forInit);
|
|
5699
5705
|
}
|
|
5700
5706
|
parseThrowExpression() {
|
|
@@ -5801,9 +5807,8 @@ function keywordFreeze(Parser3) {
|
|
|
5801
5807
|
return super.parse();
|
|
5802
5808
|
}
|
|
5803
5809
|
parseStatement(context, topLevel, exports) {
|
|
5804
|
-
if (this.type === keywordTypes.freeze)
|
|
5810
|
+
if (this.type === keywordTypes.freeze)
|
|
5805
5811
|
return this.parseFreeze();
|
|
5806
|
-
}
|
|
5807
5812
|
return super.parseStatement(context, topLevel, exports);
|
|
5808
5813
|
}
|
|
5809
5814
|
parseFreeze() {
|
|
@@ -5939,20 +5944,17 @@ function fn3(Parser3) {
|
|
|
5939
5944
|
node.body = [];
|
|
5940
5945
|
this.eat(types$1.arrow);
|
|
5941
5946
|
this.expect(types$1.braceL);
|
|
5942
|
-
if (createNewLexicalScope)
|
|
5947
|
+
if (createNewLexicalScope)
|
|
5943
5948
|
this.enterScope(0);
|
|
5944
|
-
}
|
|
5945
5949
|
while (this.type !== types$1.braceR) {
|
|
5946
5950
|
const stmt = this.parseStatement(null);
|
|
5947
5951
|
node.body.push(stmt);
|
|
5948
5952
|
}
|
|
5949
|
-
if (exitStrict)
|
|
5953
|
+
if (exitStrict)
|
|
5950
5954
|
this.strict = false;
|
|
5951
|
-
}
|
|
5952
5955
|
this.next();
|
|
5953
|
-
if (createNewLexicalScope)
|
|
5956
|
+
if (createNewLexicalScope)
|
|
5954
5957
|
this.exitScope();
|
|
5955
|
-
}
|
|
5956
5958
|
return this.finishNode(node, "BlockStatement");
|
|
5957
5959
|
}
|
|
5958
5960
|
};
|
|
@@ -5971,9 +5973,8 @@ function keywordAddArray(Parser3) {
|
|
|
5971
5973
|
return class extends Parser3 {
|
|
5972
5974
|
parseMaybeAssign(forInit, refDestructuringErrors, afterLeftParse) {
|
|
5973
5975
|
if (this.isContextual("yield")) {
|
|
5974
|
-
if (this.inGenerator)
|
|
5976
|
+
if (this.inGenerator)
|
|
5975
5977
|
return this.parseYield(forInit);
|
|
5976
|
-
}
|
|
5977
5978
|
this.exprAllowed = false;
|
|
5978
5979
|
}
|
|
5979
5980
|
let ownDestructuringErrors = false;
|
|
@@ -5996,45 +5997,36 @@ function keywordAddArray(Parser3) {
|
|
|
5996
5997
|
this.potentialArrowInForAwait = forInit === "await";
|
|
5997
5998
|
}
|
|
5998
5999
|
let left = this.parseMaybeConditional(forInit, refDestructuringErrors);
|
|
5999
|
-
if (afterLeftParse)
|
|
6000
|
+
if (afterLeftParse)
|
|
6000
6001
|
left = afterLeftParse.call(this, left, startPos, startLoc);
|
|
6001
|
-
}
|
|
6002
6002
|
if (this.type.isAssign) {
|
|
6003
6003
|
const node = this.startNodeAt(startPos, startLoc);
|
|
6004
6004
|
node.operator = this.value;
|
|
6005
|
-
if (this.type === types$1.eq)
|
|
6005
|
+
if (this.type === types$1.eq)
|
|
6006
6006
|
left = this.toAssignable(left, false, refDestructuringErrors);
|
|
6007
|
-
|
|
6008
|
-
if (!ownDestructuringErrors) {
|
|
6007
|
+
if (!ownDestructuringErrors)
|
|
6009
6008
|
refDestructuringErrors.parenthesizedAssign = refDestructuringErrors.trailingComma = refDestructuringErrors.doubleProto = -1;
|
|
6010
|
-
|
|
6011
|
-
if (refDestructuringErrors.shorthandAssign >= left.start) {
|
|
6009
|
+
if (refDestructuringErrors.shorthandAssign >= left.start)
|
|
6012
6010
|
refDestructuringErrors.shorthandAssign = -1;
|
|
6013
|
-
|
|
6014
|
-
if (this.type === types$1.eq) {
|
|
6011
|
+
if (this.type === types$1.eq)
|
|
6015
6012
|
this.checkLValPattern(left);
|
|
6016
|
-
|
|
6013
|
+
else
|
|
6017
6014
|
this.checkLValSimple(left);
|
|
6018
|
-
}
|
|
6019
6015
|
node.left = left;
|
|
6020
6016
|
this.next();
|
|
6021
6017
|
node.right = this.parseMaybeAssign(forInit);
|
|
6022
|
-
if (oldDoubleProto > -1)
|
|
6018
|
+
if (oldDoubleProto > -1)
|
|
6023
6019
|
refDestructuringErrors.doubleProto = oldDoubleProto;
|
|
6024
|
-
}
|
|
6025
6020
|
if (node.operator === "+=" && isArrayExpression2(node.right))
|
|
6026
6021
|
return createAppendNode(this, node);
|
|
6027
6022
|
return this.finishNode(node, "AssignmentExpression");
|
|
6028
6023
|
}
|
|
6029
|
-
if (ownDestructuringErrors)
|
|
6024
|
+
if (ownDestructuringErrors)
|
|
6030
6025
|
this.checkExpressionErrors(refDestructuringErrors, true);
|
|
6031
|
-
|
|
6032
|
-
if (oldParenAssign > -1) {
|
|
6026
|
+
if (oldParenAssign > -1)
|
|
6033
6027
|
refDestructuringErrors.parenthesizedAssign = oldParenAssign;
|
|
6034
|
-
|
|
6035
|
-
if (oldTrailingComma > -1) {
|
|
6028
|
+
if (oldTrailingComma > -1)
|
|
6036
6029
|
refDestructuringErrors.trailingComma = oldTrailingComma;
|
|
6037
|
-
}
|
|
6038
6030
|
return left;
|
|
6039
6031
|
}
|
|
6040
6032
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "goldstein",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "5.0.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"author": "coderaiser <mnemonic.enemy@gmail.com> (https://github.com/coderaiser)",
|
|
6
6
|
"description": "JavaScript with no limits",
|
|
@@ -30,37 +30,36 @@
|
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
32
|
"@putout/plugin-declare": "^2.0.1",
|
|
33
|
-
"@putout/plugin-logical-expressions": "^
|
|
33
|
+
"@putout/plugin-logical-expressions": "^5.0.0",
|
|
34
34
|
"@putout/plugin-try-catch": "^3.0.0",
|
|
35
|
-
"@putout/printer": "^
|
|
35
|
+
"@putout/printer": "^7.1.0",
|
|
36
36
|
"acorn": "^8.7.1",
|
|
37
37
|
"esbuild": "^0.19.2",
|
|
38
38
|
"esbuild-node-builtins": "^0.1.0",
|
|
39
|
-
"estree-to-babel": "^
|
|
40
|
-
"putout": "^
|
|
39
|
+
"estree-to-babel": "^9.0.0",
|
|
40
|
+
"putout": "^34.0.7",
|
|
41
41
|
"try-catch": "^3.0.1"
|
|
42
42
|
},
|
|
43
43
|
"license": "MIT",
|
|
44
44
|
"devDependencies": {
|
|
45
45
|
"@cloudcmd/stub": "^4.0.1",
|
|
46
|
-
"@putout/test": "^
|
|
46
|
+
"@putout/test": "^8.0.0",
|
|
47
47
|
"c8": "^8.0.0",
|
|
48
48
|
"check-dts": "^0.7.1",
|
|
49
|
-
"escover": "^
|
|
49
|
+
"escover": "^4.0.1",
|
|
50
50
|
"eslint": "^8.48.0",
|
|
51
51
|
"eslint-plugin-n": "^16.0.1",
|
|
52
|
-
"eslint-plugin-putout": "^
|
|
53
|
-
"madrun": "^
|
|
52
|
+
"eslint-plugin-putout": "^22.0.0",
|
|
53
|
+
"madrun": "^10.0.0",
|
|
54
54
|
"mock-require": "^3.0.3",
|
|
55
55
|
"montag": "^1.2.1",
|
|
56
56
|
"nodemon": "^3.0.1",
|
|
57
57
|
"runsome": "^1.0.0",
|
|
58
|
-
"supertape": "^
|
|
59
|
-
"typescript": "^5.0.3"
|
|
60
|
-
"zenload": "^2.0.0"
|
|
58
|
+
"supertape": "^9.0.0",
|
|
59
|
+
"typescript": "^5.0.3"
|
|
61
60
|
},
|
|
62
61
|
"engines": {
|
|
63
|
-
"node": ">=
|
|
62
|
+
"node": ">=18"
|
|
64
63
|
},
|
|
65
64
|
"publishConfig": {
|
|
66
65
|
"access": "public"
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import {types} from 'putout';
|
|
2
|
+
|
|
2
3
|
const {
|
|
3
4
|
VariableDeclaration,
|
|
4
5
|
VariableDeclarator,
|
|
@@ -8,6 +9,7 @@ export const report = () => `Use 'add-array'`;
|
|
|
8
9
|
export const replace = () => ({
|
|
9
10
|
'{let __a = __b; if (__c) __d}': ({__a, __b}, path) => {
|
|
10
11
|
const ifPath = path.get('body.1');
|
|
12
|
+
|
|
11
13
|
ifPath.node.test = VariableDeclaration('let', [
|
|
12
14
|
VariableDeclarator(__a, __b),
|
|
13
15
|
]);
|
|
@@ -15,4 +17,3 @@ export const replace = () => ({
|
|
|
15
17
|
return ifPath;
|
|
16
18
|
},
|
|
17
19
|
});
|
|
18
|
-
|
|
@@ -15,9 +15,8 @@ export default function keywordAddArray(Parser) {
|
|
|
15
15
|
return class extends Parser {
|
|
16
16
|
parseMaybeAssign(forInit, refDestructuringErrors, afterLeftParse) {
|
|
17
17
|
if (this.isContextual('yield')) {
|
|
18
|
-
if (this.inGenerator)
|
|
18
|
+
if (this.inGenerator)
|
|
19
19
|
return this.parseYield(forInit);
|
|
20
|
-
}
|
|
21
20
|
|
|
22
21
|
// The tokenizer will assume an expression is allowed after
|
|
23
22
|
// `yield`, but this isn't that kind of yield
|
|
@@ -49,41 +48,35 @@ export default function keywordAddArray(Parser) {
|
|
|
49
48
|
|
|
50
49
|
let left = this.parseMaybeConditional(forInit, refDestructuringErrors);
|
|
51
50
|
|
|
52
|
-
if (afterLeftParse)
|
|
51
|
+
if (afterLeftParse)
|
|
53
52
|
left = afterLeftParse.call(this, left, startPos, startLoc);
|
|
54
|
-
}
|
|
55
53
|
|
|
56
54
|
if (this.type.isAssign) {
|
|
57
55
|
const node = this.startNodeAt(startPos, startLoc);
|
|
58
56
|
|
|
59
57
|
node.operator = this.value;
|
|
60
58
|
|
|
61
|
-
if (this.type === tt.eq)
|
|
59
|
+
if (this.type === tt.eq)
|
|
62
60
|
left = this.toAssignable(left, false, refDestructuringErrors);
|
|
63
|
-
}
|
|
64
61
|
|
|
65
|
-
if (!ownDestructuringErrors)
|
|
62
|
+
if (!ownDestructuringErrors)
|
|
66
63
|
refDestructuringErrors.parenthesizedAssign = refDestructuringErrors.trailingComma = refDestructuringErrors.doubleProto = -1;
|
|
67
|
-
}
|
|
68
64
|
|
|
69
|
-
if (refDestructuringErrors.shorthandAssign >= left.start)
|
|
65
|
+
if (refDestructuringErrors.shorthandAssign >= left.start)
|
|
70
66
|
refDestructuringErrors.shorthandAssign = -1;
|
|
71
|
-
}
|
|
72
67
|
|
|
73
68
|
// reset because shorthand default was used correctly
|
|
74
|
-
if (this.type === tt.eq)
|
|
69
|
+
if (this.type === tt.eq)
|
|
75
70
|
this.checkLValPattern(left);
|
|
76
|
-
|
|
71
|
+
else
|
|
77
72
|
this.checkLValSimple(left);
|
|
78
|
-
}
|
|
79
73
|
|
|
80
74
|
node.left = left;
|
|
81
75
|
this.next();
|
|
82
76
|
node.right = this.parseMaybeAssign(forInit);
|
|
83
77
|
|
|
84
|
-
if (oldDoubleProto > -1)
|
|
78
|
+
if (oldDoubleProto > -1)
|
|
85
79
|
refDestructuringErrors.doubleProto = oldDoubleProto;
|
|
86
|
-
}
|
|
87
80
|
|
|
88
81
|
if (node.operator === '+=' && isArrayExpression(node.right))
|
|
89
82
|
return createAppendNode(this, node);
|
|
@@ -91,17 +84,14 @@ export default function keywordAddArray(Parser) {
|
|
|
91
84
|
return this.finishNode(node, 'AssignmentExpression');
|
|
92
85
|
}
|
|
93
86
|
|
|
94
|
-
if (ownDestructuringErrors)
|
|
87
|
+
if (ownDestructuringErrors)
|
|
95
88
|
this.checkExpressionErrors(refDestructuringErrors, true);
|
|
96
|
-
}
|
|
97
89
|
|
|
98
|
-
if (oldParenAssign > -1)
|
|
90
|
+
if (oldParenAssign > -1)
|
|
99
91
|
refDestructuringErrors.parenthesizedAssign = oldParenAssign;
|
|
100
|
-
}
|
|
101
92
|
|
|
102
|
-
if (oldTrailingComma > -1)
|
|
93
|
+
if (oldTrailingComma > -1)
|
|
103
94
|
refDestructuringErrors.trailingComma = oldTrailingComma;
|
|
104
|
-
}
|
|
105
95
|
|
|
106
96
|
return left;
|
|
107
97
|
}
|
|
@@ -14,27 +14,23 @@ export default function fn(Parser) {
|
|
|
14
14
|
this.eat(tt.arrow);
|
|
15
15
|
this.expect(tt.braceL);
|
|
16
16
|
|
|
17
|
-
if (createNewLexicalScope)
|
|
17
|
+
if (createNewLexicalScope)
|
|
18
18
|
this.enterScope(0);
|
|
19
|
-
}
|
|
20
19
|
|
|
21
20
|
while (this.type !== tt.braceR) {
|
|
22
21
|
const stmt = this.parseStatement(null);
|
|
23
22
|
node.body.push(stmt);
|
|
24
23
|
}
|
|
25
24
|
|
|
26
|
-
if (exitStrict)
|
|
25
|
+
if (exitStrict)
|
|
27
26
|
this.strict = false;
|
|
28
|
-
}
|
|
29
27
|
|
|
30
28
|
this.next();
|
|
31
29
|
|
|
32
|
-
if (createNewLexicalScope)
|
|
30
|
+
if (createNewLexicalScope)
|
|
33
31
|
this.exitScope();
|
|
34
|
-
}
|
|
35
32
|
|
|
36
33
|
return this.finishNode(node, 'BlockStatement');
|
|
37
34
|
}
|
|
38
35
|
};
|
|
39
36
|
}
|
|
40
|
-
|
|
@@ -16,20 +16,17 @@ export default function fn(Parser) {
|
|
|
16
16
|
}
|
|
17
17
|
|
|
18
18
|
parseStatement(context, topLevel, exports) {
|
|
19
|
-
if (this.type === Parser.acorn.keywordTypes.fn)
|
|
19
|
+
if (this.type === Parser.acorn.keywordTypes.fn)
|
|
20
20
|
this.type = Parser.acorn.keywordTypes.function;
|
|
21
|
-
}
|
|
22
21
|
|
|
23
22
|
return super.parseStatement(context, topLevel, exports);
|
|
24
23
|
}
|
|
25
24
|
|
|
26
25
|
shouldParseExportStatement() {
|
|
27
|
-
if (this.type === Parser.acorn.keywordTypes.fn)
|
|
26
|
+
if (this.type === Parser.acorn.keywordTypes.fn)
|
|
28
27
|
return true;
|
|
29
|
-
}
|
|
30
28
|
|
|
31
29
|
return super.shouldParseExportStatement();
|
|
32
30
|
}
|
|
33
31
|
};
|
|
34
32
|
}
|
|
35
|
-
|
|
@@ -23,9 +23,8 @@ export default function keywordFreeze(Parser) {
|
|
|
23
23
|
}
|
|
24
24
|
|
|
25
25
|
parseStatement(context, topLevel, exports) {
|
|
26
|
-
if (this.type === keywordTypes.freeze)
|
|
26
|
+
if (this.type === keywordTypes.freeze)
|
|
27
27
|
return this.parseFreeze();
|
|
28
|
-
}
|
|
29
28
|
|
|
30
29
|
return super.parseStatement(context, topLevel, exports);
|
|
31
30
|
}
|
|
@@ -55,4 +54,3 @@ export default function keywordFreeze(Parser) {
|
|
|
55
54
|
}
|
|
56
55
|
};
|
|
57
56
|
}
|
|
58
|
-
|
|
@@ -18,9 +18,8 @@ export default function newSpeak(Parser) {
|
|
|
18
18
|
}
|
|
19
19
|
|
|
20
20
|
parseStatement(context, topLevel, exports) {
|
|
21
|
-
if (this.type === keywordTypes.guard)
|
|
21
|
+
if (this.type === keywordTypes.guard)
|
|
22
22
|
return this.parseGuard();
|
|
23
|
-
}
|
|
24
23
|
|
|
25
24
|
return super.parseStatement(context, topLevel, exports);
|
|
26
25
|
}
|
|
@@ -58,4 +57,3 @@ export default function newSpeak(Parser) {
|
|
|
58
57
|
}
|
|
59
58
|
};
|
|
60
59
|
}
|
|
61
|
-
|
|
@@ -24,9 +24,8 @@ export default function newSpeak(Parser) {
|
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
parseStatement(context, topLevel, exports) {
|
|
27
|
-
if (this.type === keywordTypes.should)
|
|
27
|
+
if (this.type === keywordTypes.should)
|
|
28
28
|
return this.parseShould();
|
|
29
|
-
}
|
|
30
29
|
|
|
31
30
|
return super.parseStatement(context, topLevel, exports);
|
|
32
31
|
}
|
|
@@ -88,4 +87,3 @@ export default function newSpeak(Parser) {
|
|
|
88
87
|
}
|
|
89
88
|
};
|
|
90
89
|
}
|
|
91
|
-
|
|
@@ -5,9 +5,8 @@ export default function keywordThrow(Parser) {
|
|
|
5
5
|
|
|
6
6
|
return class extends Parser {
|
|
7
7
|
parseExprAtom(refDestructuringErrors, forInit) {
|
|
8
|
-
if (this.type === keywordTypes.throw)
|
|
8
|
+
if (this.type === keywordTypes.throw)
|
|
9
9
|
return this.parseThrowExpression();
|
|
10
|
-
}
|
|
11
10
|
|
|
12
11
|
return super.parseExprAtom(refDestructuringErrors, forInit);
|
|
13
12
|
}
|
|
@@ -29,4 +28,3 @@ export default function keywordThrow(Parser) {
|
|
|
29
28
|
}
|
|
30
29
|
};
|
|
31
30
|
}
|
|
32
|
-
|