aboutsummaryrefslogtreecommitdiff
path: root/node_modules/@babel/plugin-proposal-decorators
diff options
context:
space:
mode:
authorruki <waruqi@gmail.com>2018-11-08 00:43:05 +0800
committerruki <waruqi@gmail.com>2018-11-07 22:18:30 +0800
commit89e95b3f143682ed9a006991bacf45c9dcba4818 (patch)
tree4f44cf41b828577d583890bdd5a1c31e8491a6ba /node_modules/@babel/plugin-proposal-decorators
parentaa7f0199255277949790b41c56e8ec97dd4f0da4 (diff)
downloadxmake-docs-vuepress.tar.gz
xmake-docs-vuepress.zip
remove node_modulesvuepress
Diffstat (limited to 'node_modules/@babel/plugin-proposal-decorators')
-rw-r--r--node_modules/@babel/plugin-proposal-decorators/README.md126
-rw-r--r--node_modules/@babel/plugin-proposal-decorators/lib/index.js53
-rw-r--r--node_modules/@babel/plugin-proposal-decorators/lib/transformer-legacy.js159
-rw-r--r--node_modules/@babel/plugin-proposal-decorators/lib/transformer.js8
-rw-r--r--node_modules/@babel/plugin-proposal-decorators/package.json25
5 files changed, 0 insertions, 371 deletions
diff --git a/node_modules/@babel/plugin-proposal-decorators/README.md b/node_modules/@babel/plugin-proposal-decorators/README.md
deleted file mode 100644
index b5bf1a1b..00000000
--- a/node_modules/@babel/plugin-proposal-decorators/README.md
+++ /dev/null
@@ -1,126 +0,0 @@
-# @babel/plugin-proposal-decorators
-
-> Compile class and object decorators to ES5
-
-## Example
-
-(examples are from proposal)
-
-### Simple class decorator
-
-```js
-@annotation
-class MyClass { }
-
-function annotation(target) {
- target.annotated = true;
-}
-```
-
-### Class decorator
-
-```js
-@isTestable(true)
-class MyClass { }
-
-function isTestable(value) {
- return function decorator(target) {
- target.isTestable = value;
- }
-}
-```
-
-### Class function decorator
-
-```js
-class C {
- @enumerable(false)
- method() { }
-}
-
-function enumerable(value) {
- return function (target, key, descriptor) {
- descriptor.enumerable = value;
- return descriptor;
- }
-}
-```
-
-## Installation
-
-```sh
-npm install --save-dev @babel/plugin-proposal-decorators
-```
-
-## Usage
-
-Add the following line to your .babelrc file:
-
-```json
-{
- "plugins": ["@babel/plugin-proposal-decorators"]
-}
-```
-
-### Via CLI
-
-```sh
-babel --plugins @babel/plugin-proposal-decorators script.js
-```
-
-### Via Node API
-
-```javascript
-require("@babel/core").transform("code", {
- plugins: ["@babel/plugin-proposal-decorators"]
-});
-```
-
-## Options
-
-### `legacy`
-
-`boolean`, defaults to `false`.
-
-Use the legacy (stage 1) decorators syntax and behavior.
-
-#### NOTE: Compatibility with `@babel/plugin-proposal-class-properties`
-
-If you are including your plugins manually and using `@babel/plugin-proposal-class-properties`, make sure that `@babel/plugin-proposal-decorators` comes *before* `@babel/plugin-proposal-class-properties`.
-
-When using the `legacy: true` mode, `@babel/plugin-proposal-class-properties` must be used in `loose` mode to support the `@babel/plugin-proposal-decorators`.
-
-Wrong:
-
-```json
-{
- "plugins": [
- "@babel/plugin-proposal-class-properties",
- "@babel/plugin-proposal-decorators"
- ]
-}
-```
-
-Right:
-
-```json
-{
- "plugins": [
- "@babel/plugin-proposal-decorators",
- "@babel/plugin-proposal-class-properties"
- ]
-}
-```
-
-```json
-{
- "plugins": [
- ["@babel/plugin-proposal-decorators", { "legacy": true }],
- ["@babel/plugin-proposal-class-properties", { "loose" : true }]
- ]
-}
-```
-
-## References
-
-* [Proposal: JavaScript Decorators](https://github.com/wycats/javascript-decorators/blob/master/README.md)
diff --git a/node_modules/@babel/plugin-proposal-decorators/lib/index.js b/node_modules/@babel/plugin-proposal-decorators/lib/index.js
deleted file mode 100644
index 0a3b5eb1..00000000
--- a/node_modules/@babel/plugin-proposal-decorators/lib/index.js
+++ /dev/null
@@ -1,53 +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 _pluginSyntaxDecorators() {
- const data = _interopRequireDefault(require("@babel/plugin-syntax-decorators"));
-
- _pluginSyntaxDecorators = function _pluginSyntaxDecorators() {
- return data;
- };
-
- return data;
-}
-
-var _transformer = _interopRequireDefault(require("./transformer"));
-
-var _transformerLegacy = _interopRequireDefault(require("./transformer-legacy"));
-
-function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-
-var _default = (0, _helperPluginUtils().declare)((api, options) => {
- api.assertVersion(7);
- const _options$legacy = options.legacy,
- legacy = _options$legacy === void 0 ? false : _options$legacy;
-
- if (typeof legacy !== "boolean") {
- throw new Error("'legacy' must be a boolean.");
- }
-
- if (legacy !== true) {
- throw new Error("The new decorators proposal is not supported yet." + ' You must pass the `"legacy": true` option to' + " @babel/plugin-proposal-decorators");
- }
-
- return {
- inherits: _pluginSyntaxDecorators().default,
- visitor: legacy ? _transformerLegacy.default : _transformer.default
- };
-});
-
-exports.default = _default; \ No newline at end of file
diff --git a/node_modules/@babel/plugin-proposal-decorators/lib/transformer-legacy.js b/node_modules/@babel/plugin-proposal-decorators/lib/transformer-legacy.js
deleted file mode 100644
index 1b549d4b..00000000
--- a/node_modules/@babel/plugin-proposal-decorators/lib/transformer-legacy.js
+++ /dev/null
@@ -1,159 +0,0 @@
-"use strict";
-
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = void 0;
-
-function _core() {
- const data = require("@babel/core");
-
- _core = function _core() {
- return data;
- };
-
- return data;
-}
-
-const buildClassDecorator = (0, _core().template)(`
- DECORATOR(CLASS_REF = INNER) || CLASS_REF;
-`);
-const buildClassPrototype = (0, _core().template)(`
- CLASS_REF.prototype;
-`);
-const buildGetDescriptor = (0, _core().template)(`
- Object.getOwnPropertyDescriptor(TARGET, PROPERTY);
-`);
-const buildGetObjectInitializer = (0, _core().template)(`
- (TEMP = Object.getOwnPropertyDescriptor(TARGET, PROPERTY), (TEMP = TEMP ? TEMP.value : undefined), {
- enumerable: true,
- configurable: true,
- writable: true,
- initializer: function(){
- return TEMP;
- }
- })
-`);
-const WARNING_CALLS = new WeakSet();
-
-function applyEnsureOrdering(path) {
- const decorators = (path.isClass() ? [path].concat(path.get("body.body")) : path.get("properties")).reduce((acc, prop) => acc.concat(prop.node.decorators || []), []);
- const identDecorators = decorators.filter(decorator => !_core().types.isIdentifier(decorator.callee));
- if (identDecorators.length === 0) return;
- return _core().types.sequenceExpression(identDecorators.map(decorator => {
- const callee = decorator.callee;
- const id = decorator.callee = path.scope.generateDeclaredUidIdentifier("dec");
- return _core().types.assignmentExpression("=", id, callee);
- }).concat([path.node]));
-}
-
-function applyClassDecorators(classPath) {
- if (!hasClassDecorators(classPath.node)) return;
- const decorators = classPath.node.decorators || [];
- classPath.node.decorators = null;
- const name = classPath.scope.generateDeclaredUidIdentifier("class");
- return decorators.map(dec => dec.callee).reverse().reduce(function (acc, decorator) {
- return buildClassDecorator({
- CLASS_REF: _core().types.cloneNode(name),
- DECORATOR: _core().types.cloneNode(decorator),
- INNER: acc
- }).expression;
- }, classPath.node);
-}
-
-function hasClassDecorators(classNode) {
- return !!(classNode.decorators && classNode.decorators.length);
-}
-
-function applyMethodDecorators(path, state) {
- if (!hasMethodDecorators(path.node.body.body)) return;
- return applyTargetDecorators(path, state, path.node.body.body);
-}
-
-function hasMethodDecorators(body) {
- return body.some(node => node.decorators && node.decorators.length);
-}
-
-function applyObjectDecorators(path, state) {
- if (!hasMethodDecorators(path.node.properties)) return;
- return applyTargetDecorators(path, state, path.node.properties);
-}
-
-function applyTargetDecorators(path, state, decoratedProps) {
- const name = path.scope.generateDeclaredUidIdentifier(path.isClass() ? "class" : "obj");
- const exprs = decoratedProps.reduce(function (acc, node) {
- const decorators = node.decorators || [];
- node.decorators = null;
- if (decorators.length === 0) return acc;
-
- if (node.computed) {
- throw path.buildCodeFrameError("Computed method/property decorators are not yet supported.");
- }
-
- const property = _core().types.isLiteral(node.key) ? node.key : _core().types.stringLiteral(node.key.name);
- const target = path.isClass() && !node.static ? buildClassPrototype({
- CLASS_REF: name
- }).expression : name;
-
- if (_core().types.isClassProperty(node, {
- static: false
- })) {
- const descriptor = path.scope.generateDeclaredUidIdentifier("descriptor");
- const initializer = node.value ? _core().types.functionExpression(null, [], _core().types.blockStatement([_core().types.returnStatement(node.value)])) : _core().types.nullLiteral();
- node.value = _core().types.callExpression(state.addHelper("initializerWarningHelper"), [descriptor, _core().types.thisExpression()]);
- WARNING_CALLS.add(node.value);
- acc = acc.concat([_core().types.assignmentExpression("=", descriptor, _core().types.callExpression(state.addHelper("applyDecoratedDescriptor"), [_core().types.cloneNode(target), _core().types.cloneNode(property), _core().types.arrayExpression(decorators.map(dec => _core().types.cloneNode(dec.callee))), _core().types.objectExpression([_core().types.objectProperty(_core().types.identifier("enumerable"), _core().types.booleanLiteral(true)), _core().types.objectProperty(_core().types.identifier("initializer"), initializer)])]))]);
- } else {
- acc = acc.concat(_core().types.callExpression(state.addHelper("applyDecoratedDescriptor"), [_core().types.cloneNode(target), _core().types.cloneNode(property), _core().types.arrayExpression(decorators.map(dec => _core().types.cloneNode(dec.callee))), _core().types.isObjectProperty(node) || _core().types.isClassProperty(node, {
- static: true
- }) ? buildGetObjectInitializer({
- TEMP: path.scope.generateDeclaredUidIdentifier("init"),
- TARGET: _core().types.cloneNode(target),
- PROPERTY: _core().types.cloneNode(property)
- }).expression : buildGetDescriptor({
- TARGET: _core().types.cloneNode(target),
- PROPERTY: _core().types.cloneNode(property)
- }).expression, _core().types.cloneNode(target)]));
- }
-
- return acc;
- }, []);
- return _core().types.sequenceExpression([_core().types.assignmentExpression("=", _core().types.cloneNode(name), path.node), _core().types.sequenceExpression(exprs), _core().types.cloneNode(name)]);
-}
-
-var _default = {
- ClassDeclaration(path) {
- const node = path.node;
-
- if (!hasClassDecorators(node) && !hasMethodDecorators(node.body.body)) {
- return;
- }
-
- const ref = node.id ? _core().types.cloneNode(node.id) : path.scope.generateUidIdentifier("class");
-
- const letDeclaration = _core().types.variableDeclaration("let", [_core().types.variableDeclarator(ref, _core().types.toExpression(node))]);
-
- if (path.parentPath.isExportDefaultDeclaration()) {
- path.parentPath.replaceWithMultiple([letDeclaration, _core().types.exportNamedDeclaration(null, [_core().types.exportSpecifier(_core().types.cloneNode(ref), _core().types.identifier("default"))])]);
- } else {
- path.replaceWith(letDeclaration);
- }
- },
-
- ClassExpression(path, state) {
- const decoratedClass = applyEnsureOrdering(path) || applyClassDecorators(path, state) || applyMethodDecorators(path, state);
- if (decoratedClass) path.replaceWith(decoratedClass);
- },
-
- ObjectExpression(path, state) {
- const decoratedObject = applyEnsureOrdering(path) || applyObjectDecorators(path, state);
- if (decoratedObject) path.replaceWith(decoratedObject);
- },
-
- AssignmentExpression(path, state) {
- if (!WARNING_CALLS.has(path.node.right)) return;
- path.replaceWith(_core().types.callExpression(state.addHelper("initializerDefineProperty"), [_core().types.cloneNode(path.get("left.object").node), _core().types.stringLiteral(path.get("left.property").node.name), _core().types.cloneNode(path.get("right.arguments")[0].node), _core().types.cloneNode(path.get("right.arguments")[1].node)]));
- }
-
-};
-exports.default = _default; \ No newline at end of file
diff --git a/node_modules/@babel/plugin-proposal-decorators/lib/transformer.js b/node_modules/@babel/plugin-proposal-decorators/lib/transformer.js
deleted file mode 100644
index 4e7a7b3f..00000000
--- a/node_modules/@babel/plugin-proposal-decorators/lib/transformer.js
+++ /dev/null
@@ -1,8 +0,0 @@
-"use strict";
-
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = void 0;
-var _default = {};
-exports.default = _default; \ No newline at end of file
diff --git a/node_modules/@babel/plugin-proposal-decorators/package.json b/node_modules/@babel/plugin-proposal-decorators/package.json
deleted file mode 100644
index 1a35ad49..00000000
--- a/node_modules/@babel/plugin-proposal-decorators/package.json
+++ /dev/null
@@ -1,25 +0,0 @@
-{
- "name": "@babel/plugin-proposal-decorators",
- "version": "7.0.0-beta.47",
- "author": "Logan Smyth <loganfsmyth@gmail.com>",
- "license": "MIT",
- "description": "Compile class and object decorators to ES5",
- "repository": "https://github.com/babel/babel/tree/master/packages/babel-plugin-proposal-decorators",
- "main": "lib/index.js",
- "keywords": [
- "babel",
- "babel-plugin",
- "decorators"
- ],
- "dependencies": {
- "@babel/helper-plugin-utils": "7.0.0-beta.47",
- "@babel/plugin-syntax-decorators": "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"
- }
-}