Justin Ridgewell 0879a6d608
Subsume json (#7985)
* Add Subsume JSON transform

https://github.com/tc39/proposal-json-superset is at stage 3.

This allows U+2028 LINE SEPARATOR and U+2029 PARAGRAPH SEPARATOR to appear unescaped inside strings and directives.

* Move to Stage 3

* Break diretive parsing

* Update README

* Handle multi-escape sequences

* Remove babylon files after rename
2018-05-19 15:32:05 -04:00

55 lines
928 B
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# @babel/plugin-syntax-json-strings
Allow parsing of the U+2028 LINE SEPARATOR and U+2029 PARAGRAPH SEPARATOR in JS strings
## Examples
**In**
```js
const ex = "beforeafter";
// ^ There's a U+2028 char between 'before' and 'after'
```
**Out**
```js
const ex = "before\u2028after";
// ^ There's a U+2028 char between 'before' and 'after'
```
## Installation
```sh
npm install --save-dev @babel/plugin-proposal-json-strings
```
## Usage
### Via `.babelrc` (Recommended)
**.babelrc**
```json
{
"plugins": ["@babel/plugin-proposal-json-strings"]
}
```
### Via CLI
```sh
babel --plugins @babel/plugin-proposal-json-strings script.js
```
### Via Node API
```javascript
require("@babel/core").transform("code", {
plugins: ["@babel/plugin-proposal-json-strings"]
});
```
## References
- [Proposal: Optional Catch Binding for ECMAScript](https://github.com/babel/proposals/issues/7)