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
This commit is contained in:
3
packages/babel-plugin-syntax-json-strings/.npmignore
Normal file
3
packages/babel-plugin-syntax-json-strings/.npmignore
Normal file
@@ -0,0 +1,3 @@
|
||||
src
|
||||
test
|
||||
*.log
|
||||
35
packages/babel-plugin-syntax-json-strings/README.md
Normal file
35
packages/babel-plugin-syntax-json-strings/README.md
Normal file
@@ -0,0 +1,35 @@
|
||||
# @babel/plugin-syntax-json-strings
|
||||
|
||||
Allow parsing of the U+2028 LINE SEPARATOR and U+2029 PARAGRAPH SEPARATOR in JS strings
|
||||
|
||||
## Installation
|
||||
|
||||
```sh
|
||||
npm install --save-dev @babel/plugin-syntax-json-strings
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
### Via `.babelrc` (Recommended)
|
||||
|
||||
**.babelrc**
|
||||
|
||||
```json
|
||||
{
|
||||
"plugins": ["@babel/plugin-syntax-json-strings"]
|
||||
}
|
||||
```
|
||||
|
||||
### Via CLI
|
||||
|
||||
```sh
|
||||
babel --plugins @babel/plugin-syntax-json-strings script.js
|
||||
```
|
||||
|
||||
### Via Node API
|
||||
|
||||
```javascript
|
||||
require("@babel/core").transform("code", {
|
||||
plugins: ["@babel/plugin-syntax-json-strings"]
|
||||
});
|
||||
```
|
||||
20
packages/babel-plugin-syntax-json-strings/package.json
Normal file
20
packages/babel-plugin-syntax-json-strings/package.json
Normal file
@@ -0,0 +1,20 @@
|
||||
{
|
||||
"name": "@babel/plugin-syntax-json-strings",
|
||||
"version": "7.0.0-beta.47",
|
||||
"description": "Allow parsing of the U+2028 LINE SEPARATOR and U+2029 PARAGRAPH SEPARATOR in JS strings",
|
||||
"repository": "https://github.com/babel/babel/tree/master/packages/babel-plugin-syntax-json-strings",
|
||||
"license": "MIT",
|
||||
"main": "lib/index.js",
|
||||
"keywords": [
|
||||
"babel-plugin"
|
||||
],
|
||||
"dependencies": {
|
||||
"@babel/helper-plugin-utils": "7.0.0-beta.47"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@babel/core": "7.0.0-beta.47"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/core": "7.0.0-beta.47"
|
||||
}
|
||||
}
|
||||
11
packages/babel-plugin-syntax-json-strings/src/index.js
Normal file
11
packages/babel-plugin-syntax-json-strings/src/index.js
Normal file
@@ -0,0 +1,11 @@
|
||||
import { declare } from "@babel/helper-plugin-utils";
|
||||
|
||||
export default declare(api => {
|
||||
api.assertVersion(7);
|
||||
|
||||
return {
|
||||
manipulateOptions(opts, parserOpts) {
|
||||
parserOpts.plugins.push("jsonStrings");
|
||||
},
|
||||
};
|
||||
});
|
||||
Reference in New Issue
Block a user