1 | # babel-preset-stage-1
|
2 |
|
3 | > Babel preset for stage 1 plugins.
|
4 |
|
5 | The gist of Stage 1 is:
|
6 |
|
7 | > **Stage 1**: proposal
|
8 | >
|
9 | > **What is it?** A formal proposal for the feature.
|
10 | >
|
11 | > **What’s required?** A so-called champion must be identified who is responsible for the proposal. Either the champion or a co-champion must be a member of TC39 (source). The problem solved by the proposal must be described in prose. The solution must be described via examples, an API and a discussion of semantics and algorithms. Lastly, potential obstacles for the proposal must be identified, such as interactions with other features and implementation challenges. Implementation-wise, polyfills and demos are needed.
|
12 | >
|
13 | > **What’s next?** By accepting a proposal for stage 1, TC39 declares its willingness to examine, discuss and contribute to the proposal. Going forward, major changes to the proposal are expected
|
14 |
|
15 | ## Install
|
16 |
|
17 | ```sh
|
18 | npm install --save-dev babel-preset-stage-1
|
19 | ```
|
20 |
|
21 | ## Usage
|
22 |
|
23 | ### Via `.babelrc` (Recommended)
|
24 |
|
25 | **.babelrc**
|
26 |
|
27 | ```json
|
28 | {
|
29 | "presets": ["stage-1"]
|
30 | }
|
31 | ```
|
32 |
|
33 | ### Via CLI
|
34 |
|
35 | ```sh
|
36 | babel script.js --presets stage-1
|
37 | ```
|
38 |
|
39 | ### Via Node API
|
40 |
|
41 | ```javascript
|
42 | require("babel-core").transform("code", {
|
43 | presets: ["stage-1"]
|
44 | });
|
45 | ```
|
46 |
|
47 | ## References
|
48 |
|
49 | - Chapter "[The TC39 process for ECMAScript features](http://exploringjs.com/es2016-es2017/ch_tc39-process.html)" in "Exploring ES2016 and ES2017" by Axel Rauschmayer
|