diff options
| author | ruki <waruqi@gmail.com> | 2018-11-08 00:43:05 +0800 |
|---|---|---|
| committer | ruki <waruqi@gmail.com> | 2018-11-07 22:18:30 +0800 |
| commit | 89e95b3f143682ed9a006991bacf45c9dcba4818 (patch) | |
| tree | 4f44cf41b828577d583890bdd5a1c31e8491a6ba /node_modules/@babel/plugin-transform-duplicate-keys | |
| parent | aa7f0199255277949790b41c56e8ec97dd4f0da4 (diff) | |
| download | xmake-docs-vuepress.tar.gz xmake-docs-vuepress.zip | |
remove node_modulesvuepress
Diffstat (limited to 'node_modules/@babel/plugin-transform-duplicate-keys')
3 files changed, 0 insertions, 181 deletions
diff --git a/node_modules/@babel/plugin-transform-duplicate-keys/README.md b/node_modules/@babel/plugin-transform-duplicate-keys/README.md deleted file mode 100644 index a64bac73..00000000 --- a/node_modules/@babel/plugin-transform-duplicate-keys/README.md +++ /dev/null @@ -1,61 +0,0 @@ -# @babel/plugin-transform-duplicate-keys - -> Compile objects with duplicate keys to valid strict ES5. - -This plugin actually converts duplicate keys in objects to be computed properties, which then must be handled by the [@babel/plugin-transform-computed-properties](http://babeljs.io/docs/plugins/transform-computed-properties) plugin. The final result won't contain any object literals with duplicate keys. - -## Example - -**In** - -```javascript -var x = { a: 5, a: 6 }; -var y = { - get a() {}, - set a(x) {}, - a: 3 -}; -``` - -**Out** - -```javascript -var x = { a: 5, ["a"]: 6 }; -var y = { - get a() {}, - set a(x) {}, - ["a"]: 3 -}; -``` - -## Installation - -```sh -npm install --save-dev @babel/plugin-transform-duplicate-keys -``` - -## Usage - -### Via `.babelrc` (Recommended) - -**.babelrc** - -```json -{ - "plugins": ["@babel/plugin-transform-duplicate-keys"] -} -``` - -### Via CLI - -```sh -babel --plugins @babel/plugin-transform-duplicate-keys script.js -``` - -### Via Node API - -```javascript -require("@babel/core").transform("code", { - plugins: ["@babel/plugin-transform-duplicate-keys"] -}); -``` diff --git a/node_modules/@babel/plugin-transform-duplicate-keys/lib/index.js b/node_modules/@babel/plugin-transform-duplicate-keys/lib/index.js deleted file mode 100644 index a897df52..00000000 --- a/node_modules/@babel/plugin-transform-duplicate-keys/lib/index.js +++ /dev/null @@ -1,99 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -function _helperPluginUtils() { - const data = require("@babel/helper-plugin-utils"); - - _helperPluginUtils = function _helperPluginUtils() { - return data; - }; - - return data; -} - -function _core() { - const data = require("@babel/core"); - - _core = function _core() { - return data; - }; - - return data; -} - -function getName(key) { - if (_core().types.isIdentifier(key)) { - return key.name; - } - - return key.value.toString(); -} - -var _default = (0, _helperPluginUtils().declare)(api => { - api.assertVersion(7); - return { - visitor: { - ObjectExpression(path) { - const node = path.node; - const plainProps = node.properties.filter(prop => !_core().types.isSpreadElement(prop) && !prop.computed); - const alreadySeenData = Object.create(null); - const alreadySeenGetters = Object.create(null); - const alreadySeenSetters = Object.create(null); - - for (var _iterator = plainProps, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) { - var _ref; - - if (_isArray) { - if (_i >= _iterator.length) break; - _ref = _iterator[_i++]; - } else { - _i = _iterator.next(); - if (_i.done) break; - _ref = _i.value; - } - - const prop = _ref; - const name = getName(prop.key); - let isDuplicate = false; - - switch (prop.kind) { - case "get": - if (alreadySeenData[name] || alreadySeenGetters[name]) { - isDuplicate = true; - } - - alreadySeenGetters[name] = true; - break; - - case "set": - if (alreadySeenData[name] || alreadySeenSetters[name]) { - isDuplicate = true; - } - - alreadySeenSetters[name] = true; - break; - - default: - if (alreadySeenData[name] || alreadySeenGetters[name] || alreadySeenSetters[name]) { - isDuplicate = true; - } - - alreadySeenData[name] = true; - } - - if (isDuplicate) { - prop.computed = true; - prop.key = _core().types.stringLiteral(name); - } - } - } - - } - }; -}); - -exports.default = _default;
\ No newline at end of file diff --git a/node_modules/@babel/plugin-transform-duplicate-keys/package.json b/node_modules/@babel/plugin-transform-duplicate-keys/package.json deleted file mode 100644 index 1695961c..00000000 --- a/node_modules/@babel/plugin-transform-duplicate-keys/package.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "name": "@babel/plugin-transform-duplicate-keys", - "version": "7.0.0-beta.47", - "description": "Compile objects with duplicate keys to valid strict ES5", - "repository": "https://github.com/babel/babel/tree/master/packages/babel-plugin-transform-duplicate-keys", - "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", - "@babel/helper-plugin-test-runner": "7.0.0-beta.47" - } -} |
