UNPKG

3.31 kBJavaScriptView Raw
1const es = {
2 "transform-template-literals": {
3 features: ["template literals"],
4 },
5 "transform-literals": {
6 features: ["Unicode code point escapes"],
7 },
8 "transform-function-name": {
9 features: ['function "name" property'],
10 },
11 "transform-arrow-functions": {
12 features: ["arrow functions"],
13 },
14 "transform-block-scoped-functions": {
15 features: ["block-level function declaration"],
16 },
17 "transform-classes": {
18 features: ["class", "super"],
19 },
20 "transform-object-super": {
21 features: ["super"],
22 },
23 "transform-shorthand-properties": {
24 features: ["object literal extensions / shorthand properties"],
25 },
26 "transform-duplicate-keys": {
27 features: ["miscellaneous / duplicate property names in strict mode"],
28 },
29 "transform-computed-properties": {
30 features: ["object literal extensions / computed properties"],
31 },
32 "transform-for-of": {
33 features: ["for..of loops"],
34 },
35 "transform-sticky-regex": {
36 features: [
37 'RegExp "y" and "u" flags / "y" flag, lastIndex',
38 'RegExp "y" and "u" flags / "y" flag',
39 ],
40 },
41
42 // We want to apply this prior to unicode regex so that "." and "u"
43 // are properly handled.
44 //
45 // Ref: https://github.com/babel/babel/pull/7065#issuecomment-395959112
46 "transform-dotall-regex": "s (dotAll) flag for regular expressions",
47
48 "transform-unicode-regex": {
49 features: [
50 'RegExp "y" and "u" flags / "u" flag, case folding',
51 'RegExp "y" and "u" flags / "u" flag, Unicode code point escapes',
52 'RegExp "y" and "u" flags / "u" flag, non-BMP Unicode characters',
53 'RegExp "y" and "u" flags / "u" flag',
54 ],
55 },
56
57 "transform-spread": {
58 features: "spread syntax for iterable objects",
59 },
60 "transform-parameters": {
61 features: [
62 "default function parameters",
63 "rest parameters",
64 "destructuring, parameters / defaults, arrow function",
65 ],
66 },
67 "transform-destructuring": {
68 features: [
69 "destructuring, assignment",
70 "destructuring, declarations",
71 "destructuring, parameters",
72 ],
73 },
74 "transform-block-scoping": {
75 features: ["const", "let"],
76 },
77 "transform-typeof-symbol": {
78 features: ["Symbol / typeof support"],
79 },
80 "transform-new-target": {
81 features: ["new.target"],
82 },
83 "transform-regenerator": {
84 features: ["generators"],
85 },
86
87 "transform-exponentiation-operator": {
88 features: ["exponentiation (**) operator"],
89 },
90
91 "transform-async-to-generator": {
92 features: ["async functions"],
93 },
94
95 "proposal-async-generator-functions": "Asynchronous Iterators",
96 "proposal-object-rest-spread": "object rest/spread properties",
97 "proposal-unicode-property-regex": "RegExp Unicode Property Escapes",
98
99 "proposal-json-strings": "JSON superset",
100 "proposal-optional-catch-binding": "optional catch binding",
101 "transform-named-capturing-groups-regex": "RegExp named capture groups",
102 "transform-member-expression-literals": "Object/array literal extensions / Reserved words as property names",
103 "transform-property-literals": "Object/array literal extensions / Reserved words as property names",
104 "transform-reserved-words": "Miscellaneous / Unreserved words",
105};
106
107const proposals = require("./shipped-proposals").features;
108
109module.exports = Object.assign({}, es, proposals);