This commit is contained in:
David Kale
2020-09-08 13:25:36 -04:00
parent e4246d2b5b
commit 91fcbb0108
4227 changed files with 416837 additions and 457884 deletions

View File

@@ -1,4 +1,3 @@
describe('TODO - Add a test suite', () => { describe("TODO - Add a test suite", () => {
it('TODO - Add a test', async () => { it("TODO - Add a test", async () => {});
});
}); });

View File

@@ -14,7 +14,7 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
var __importStar = (this && this.__importStar) || function (mod) { var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod; if (mod && mod.__esModule) return mod;
var result = {}; var result = {};
if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod); __setModuleDefault(result, mod);
return result; return result;
}; };
@@ -35,14 +35,20 @@ const minimatch_1 = require("minimatch");
function run() { function run() {
return __awaiter(this, void 0, void 0, function* () { return __awaiter(this, void 0, void 0, function* () {
try { try {
const token = core.getInput('repo-token', { required: true }); const token = core.getInput("repo-token", { required: true });
const configPath = core.getInput('configuration-path', { required: true }); const configPath = core.getInput("configuration-path", { required: true });
const syncLabels = !!core.getInput("sync-labels", { required: false });
const prNumber = getPrNumber(); const prNumber = getPrNumber();
if (!prNumber) { if (!prNumber) {
console.log('Could not get pull request number from context, exiting'); console.log("Could not get pull request number from context, exiting");
return; return;
} }
const client = new github.GitHub(token); const client = new github.GitHub(token);
const { data: pullRequest } = yield client.pulls.get({
owner: github.context.repo.owner,
repo: github.context.repo.repo,
pull_number: prNumber
});
core.debug(`fetching changed files for pr #${prNumber}`); core.debug(`fetching changed files for pr #${prNumber}`);
const changedFiles = yield getChangedFiles(client, prNumber); const changedFiles = yield getChangedFiles(client, prNumber);
const labelGlobs = yield getLabelGlobs(client, configPath); const labelGlobs = yield getLabelGlobs(client, configPath);
@@ -72,15 +78,16 @@ function getPrNumber() {
} }
function getChangedFiles(client, prNumber) { function getChangedFiles(client, prNumber) {
return __awaiter(this, void 0, void 0, function* () { return __awaiter(this, void 0, void 0, function* () {
const listFilesResponse = yield client.pulls.listFiles({ const listFilesOptions = client.pulls.listFiles.endpoint.merge({
owner: github.context.repo.owner, owner: github.context.repo.owner,
repo: github.context.repo.repo, repo: github.context.repo.repo,
pull_number: prNumber pull_number: prNumber
}); });
const changedFiles = listFilesResponse.data.map(f => f.filename); const listFilesResponse = yield client.paginate(listFilesOptions);
core.debug('found changed files:'); const changedFiles = listFilesResponse.map(f => f.filename);
core.debug("found changed files:");
for (const file of changedFiles) { for (const file of changedFiles) {
core.debug(' ' + file); core.debug(" " + file);
} }
return changedFiles; return changedFiles;
}); });
@@ -102,19 +109,19 @@ function fetchContent(client, repoPath) {
path: repoPath, path: repoPath,
ref: github.context.sha ref: github.context.sha
}); });
if (!('content' in response.data)) { if (!("content" in response.data)) {
throw new Error(`The path '${repoPath}' is not a file`); throw new Error(`The path '${repoPath}' is not a file`);
} }
if (!response.data.content) { if (!response.data.content) {
throw new Error(`The file '${repoPath}' has no content`); throw new Error(`The file '${repoPath}' has no content`);
} }
return Buffer.from(response.data.content, 'base64').toString(); return Buffer.from(response.data.content, "base64").toString();
}); });
} }
function getLabelGlobMapFromObject(configObject) { function getLabelGlobMapFromObject(configObject) {
const labelGlobs = new Map(); const labelGlobs = new Map();
for (const label in configObject) { for (const label in configObject) {
if (typeof configObject[label] === 'string') { if (typeof configObject[label] === "string") {
labelGlobs.set(label, [configObject[label]]); labelGlobs.set(label, [configObject[label]]);
} }
else if (configObject[label] instanceof Array) { else if (configObject[label] instanceof Array) {

15
node_modules/.bin/esparse generated vendored
View File

@@ -1,15 +0,0 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*) basedir=`cygpath -w "$basedir"`;;
esac
if [ -x "$basedir/node" ]; then
"$basedir/node" "$basedir/../esprima/bin/esparse.js" "$@"
ret=$?
else
node "$basedir/../esprima/bin/esparse.js" "$@"
ret=$?
fi
exit $ret

1
node_modules/.bin/esparse generated vendored Symbolic link
View File

@@ -0,0 +1 @@
../esprima/bin/esparse.js

7
node_modules/.bin/esparse.cmd generated vendored
View File

@@ -1,7 +0,0 @@
@IF EXIST "%~dp0\node.exe" (
"%~dp0\node.exe" "%~dp0\..\esprima\bin\esparse.js" %*
) ELSE (
@SETLOCAL
@SET PATHEXT=%PATHEXT:;.JS;=;%
node "%~dp0\..\esprima\bin\esparse.js" %*
)

15
node_modules/.bin/esvalidate generated vendored
View File

@@ -1,15 +0,0 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*) basedir=`cygpath -w "$basedir"`;;
esac
if [ -x "$basedir/node" ]; then
"$basedir/node" "$basedir/../esprima/bin/esvalidate.js" "$@"
ret=$?
else
node "$basedir/../esprima/bin/esvalidate.js" "$@"
ret=$?
fi
exit $ret

1
node_modules/.bin/esvalidate generated vendored Symbolic link
View File

@@ -0,0 +1 @@
../esprima/bin/esvalidate.js

7
node_modules/.bin/esvalidate.cmd generated vendored
View File

@@ -1,7 +0,0 @@
@IF EXIST "%~dp0\node.exe" (
"%~dp0\node.exe" "%~dp0\..\esprima\bin\esvalidate.js" %*
) ELSE (
@SETLOCAL
@SET PATHEXT=%PATHEXT:;.JS;=;%
node "%~dp0\..\esprima\bin\esvalidate.js" %*
)

1
node_modules/.bin/handlebars generated vendored
View File

@@ -1 +0,0 @@
../handlebars/bin/handlebars

15
node_modules/.bin/js-yaml generated vendored
View File

@@ -1,15 +0,0 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*) basedir=`cygpath -w "$basedir"`;;
esac
if [ -x "$basedir/node" ]; then
"$basedir/node" "$basedir/../js-yaml/bin/js-yaml.js" "$@"
ret=$?
else
node "$basedir/../js-yaml/bin/js-yaml.js" "$@"
ret=$?
fi
exit $ret

1
node_modules/.bin/js-yaml generated vendored Symbolic link
View File

@@ -0,0 +1 @@
../js-yaml/bin/js-yaml.js

7
node_modules/.bin/js-yaml.cmd generated vendored
View File

@@ -1,7 +0,0 @@
@IF EXIST "%~dp0\node.exe" (
"%~dp0\node.exe" "%~dp0\..\js-yaml\bin\js-yaml.js" %*
) ELSE (
@SETLOCAL
@SET PATHEXT=%PATHEXT:;.JS;=;%
node "%~dp0\..\js-yaml\bin\js-yaml.js" %*
)

15
node_modules/.bin/semver generated vendored
View File

@@ -1,15 +0,0 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*) basedir=`cygpath -w "$basedir"`;;
esac
if [ -x "$basedir/node" ]; then
"$basedir/node" "$basedir/../semver/bin/semver.js" "$@"
ret=$?
else
node "$basedir/../semver/bin/semver.js" "$@"
ret=$?
fi
exit $ret

1
node_modules/.bin/semver generated vendored Symbolic link
View File

@@ -0,0 +1 @@
../semver/bin/semver.js

7
node_modules/.bin/semver.cmd generated vendored
View File

@@ -1,7 +0,0 @@
@IF EXIST "%~dp0\node.exe" (
"%~dp0\node.exe" "%~dp0\..\semver\bin\semver.js" %*
) ELSE (
@SETLOCAL
@SET PATHEXT=%PATHEXT:;.JS;=;%
node "%~dp0\..\semver\bin\semver.js" %*
)

1
node_modules/.bin/uglifyjs generated vendored
View File

@@ -1 +0,0 @@
../uglify-js/bin/uglifyjs

15
node_modules/.bin/which generated vendored
View File

@@ -1,15 +0,0 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*) basedir=`cygpath -w "$basedir"`;;
esac
if [ -x "$basedir/node" ]; then
"$basedir/node" "$basedir/../which/bin/which" "$@"
ret=$?
else
node "$basedir/../which/bin/which" "$@"
ret=$?
fi
exit $ret

1
node_modules/.bin/which generated vendored Symbolic link
View File

@@ -0,0 +1 @@
../which/bin/which

7
node_modules/.bin/which.cmd generated vendored
View File

@@ -1,7 +0,0 @@
@IF EXIST "%~dp0\node.exe" (
"%~dp0\node.exe" "%~dp0\..\which\bin\which" %*
) ELSE (
@SETLOCAL
@SET PATHEXT=%PATHEXT:;.JS;=;%
node "%~dp0\..\which\bin\which" %*
)

View File

@@ -1,3 +1,5 @@
The MIT License (MIT)
Copyright 2019 GitHub Copyright 2019 GitHub
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

116
node_modules/@actions/core/README.md generated vendored
View File

@@ -4,48 +4,55 @@
## Usage ## Usage
#### Inputs/Outputs ### Import the package
You can use this library to get inputs or set outputs: ```js
// javascript
```
const core = require('@actions/core'); const core = require('@actions/core');
const myInput = core.getInput('inputName', { required: true }); // typescript
import * as core from '@actions/core';
```
// Do stuff #### Inputs/Outputs
Action inputs can be read with `getInput`. Outputs can be set with `setOutput` which makes them available to be mapped into inputs of other actions to ensure they are decoupled.
```js
const myInput = core.getInput('inputName', { required: true });
core.setOutput('outputKey', 'outputVal'); core.setOutput('outputKey', 'outputVal');
``` ```
#### Exporting variables/secrets #### Exporting variables
You can also export variables and secrets for future steps. Variables get set in the environment automatically, while secrets must be scoped into the environment from a workflow using `{{ secret.FOO }}`. Secrets will also be masked from the logs: Since each step runs in a separate process, you can use `exportVariable` to add it to this step and future steps environment blocks.
```
const core = require('@actions/core');
// Do stuff
```js
core.exportVariable('envVar', 'Val'); core.exportVariable('envVar', 'Val');
core.exportSecret('secretVar', variableWithSecretValue); ```
#### Setting a secret
Setting a secret registers the secret with the runner to ensure it is masked in logs.
```js
core.setSecret('myPassword');
``` ```
#### PATH Manipulation #### PATH Manipulation
You can explicitly add items to the path for all remaining steps in a workflow: To make a tool's path available in the path for the remainder of the job (without altering the machine or containers state), use `addPath`. The runner will prepend the path given to the jobs PATH.
``` ```js
const core = require('@actions/core'); core.addPath('/path/to/mytool');
core.addPath('pathToTool');
``` ```
#### Exit codes #### Exit codes
You should use this library to set the failing exit code for your action: You should use this library to set the failing exit code for your action. If status is not set and the script runs to completion, that will lead to a success.
``` ```js
const core = require('@actions/core'); const core = require('@actions/core');
try { try {
@@ -56,13 +63,15 @@ catch (err) {
core.setFailed(`Action failed with error ${err}`); core.setFailed(`Action failed with error ${err}`);
} }
Note that `setNeutral` is not yet implemented in actions V2 but equivalent functionality is being planned.
``` ```
#### Logging #### Logging
Finally, this library provides some utilities for logging: Finally, this library provides some utilities for logging. Note that debug logging is hidden from the logs by default. This behavior can be toggled by enabling the [Step Debug Logs](../../docs/action-debugging.md#step-debug-logs).
``` ```js
const core = require('@actions/core'); const core = require('@actions/core');
const myInput = core.getInput('input'); const myInput = core.getInput('input');
@@ -70,12 +79,69 @@ try {
core.debug('Inside try block'); core.debug('Inside try block');
if (!myInput) { if (!myInput) {
core.warning('myInput wasnt set'); core.warning('myInput was not set');
} }
if (core.isDebug()) {
// curl -v https://github.com
} else {
// curl https://github.com
}
// Do stuff // Do stuff
core.info('Output to the actions build log')
} }
catch (err) { catch (err) {
core.error('Error ${err}, action may still succeed though'); core.error(`Error ${err}, action may still succeed though`);
} }
``` ```
This library can also wrap chunks of output in foldable groups.
```js
const core = require('@actions/core')
// Manually wrap output
core.startGroup('Do some function')
doSomeFunction()
core.endGroup()
// Wrap an asynchronous function call
const result = await core.group('Do something async', async () => {
const response = await doSomeHTTPRequest()
return response
})
```
#### Action state
You can use this library to save state and get state for sharing information between a given wrapper action:
**action.yml**
```yaml
name: 'Wrapper action sample'
inputs:
name:
default: 'GitHub'
runs:
using: 'node12'
main: 'main.js'
post: 'cleanup.js'
```
In action's `main.js`:
```js
const core = require('@actions/core');
core.saveState("pidToKill", 12345);
```
In action's `cleanup.js`:
```js
const core = require('@actions/core');
var pid = core.getState("pidToKill");
process.kill(pid);
```

View File

@@ -1,16 +1,21 @@
interface CommandProperties { interface CommandProperties {
[key: string]: string; [key: string]: any;
} }
/** /**
* Commands * Commands
* *
* Command Format: * Command Format:
* ##[name key=value;key=value]message * ::name key=value,key=value::message
* *
* Examples: * Examples:
* ##[warning]This is the user warning message * ::warning::This is the message
* ##[set-secret name=mypassword]definatelyNotAPassword! * ::set-env name=MY_VAR::some value
*/ */
export declare function issueCommand(command: string, properties: CommandProperties, message: string): void; export declare function issueCommand(command: string, properties: CommandProperties, message: any): void;
export declare function issue(name: string, message: string): void; export declare function issue(name: string, message?: string): void;
/**
* Sanitizes an input into a string so it can be passed into issueCommand safely
* @param input input to sanitize into a string
*/
export declare function toCommandValue(input: any): string;
export {}; export {};

View File

@@ -1,26 +1,33 @@
"use strict"; "use strict";
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
result["default"] = mod;
return result;
};
Object.defineProperty(exports, "__esModule", { value: true }); Object.defineProperty(exports, "__esModule", { value: true });
const os = require("os"); const os = __importStar(require("os"));
/** /**
* Commands * Commands
* *
* Command Format: * Command Format:
* ##[name key=value;key=value]message * ::name key=value,key=value::message
* *
* Examples: * Examples:
* ##[warning]This is the user warning message * ::warning::This is the message
* ##[set-secret name=mypassword]definatelyNotAPassword! * ::set-env name=MY_VAR::some value
*/ */
function issueCommand(command, properties, message) { function issueCommand(command, properties, message) {
const cmd = new Command(command, properties, message); const cmd = new Command(command, properties, message);
process.stdout.write(cmd.toString() + os.EOL); process.stdout.write(cmd.toString() + os.EOL);
} }
exports.issueCommand = issueCommand; exports.issueCommand = issueCommand;
function issue(name, message) { function issue(name, message = '') {
issueCommand(name, {}, message); issueCommand(name, {}, message);
} }
exports.issue = issue; exports.issue = issue;
const CMD_PREFIX = '##['; const CMD_STRING = '::';
class Command { class Command {
constructor(command, properties, message) { constructor(command, properties, message) {
if (!command) { if (!command) {
@@ -31,36 +38,55 @@ class Command {
this.message = message; this.message = message;
} }
toString() { toString() {
let cmdStr = CMD_PREFIX + this.command; let cmdStr = CMD_STRING + this.command;
if (this.properties && Object.keys(this.properties).length > 0) { if (this.properties && Object.keys(this.properties).length > 0) {
cmdStr += ' '; cmdStr += ' ';
let first = true;
for (const key in this.properties) { for (const key in this.properties) {
if (this.properties.hasOwnProperty(key)) { if (this.properties.hasOwnProperty(key)) {
const val = this.properties[key]; const val = this.properties[key];
if (val) { if (val) {
// safely append the val - avoid blowing up when attempting to if (first) {
// call .replace() if message is not a string for some reason first = false;
cmdStr += `${key}=${escape(`${val || ''}`)};`; }
else {
cmdStr += ',';
}
cmdStr += `${key}=${escapeProperty(val)}`;
} }
} }
} }
} }
cmdStr += ']'; cmdStr += `${CMD_STRING}${escapeData(this.message)}`;
// safely append the message - avoid blowing up when attempting to
// call .replace() if message is not a string for some reason
const message = `${this.message || ''}`;
cmdStr += escapeData(message);
return cmdStr; return cmdStr;
} }
} }
function escapeData(s) { /**
return s.replace(/\r/g, '%0D').replace(/\n/g, '%0A'); * Sanitizes an input into a string so it can be passed into issueCommand safely
* @param input input to sanitize into a string
*/
function toCommandValue(input) {
if (input === null || input === undefined) {
return '';
}
else if (typeof input === 'string' || input instanceof String) {
return input;
}
return JSON.stringify(input);
} }
function escape(s) { exports.toCommandValue = toCommandValue;
return s function escapeData(s) {
return toCommandValue(s)
.replace(/%/g, '%25')
.replace(/\r/g, '%0D')
.replace(/\n/g, '%0A');
}
function escapeProperty(s) {
return toCommandValue(s)
.replace(/%/g, '%25')
.replace(/\r/g, '%0D') .replace(/\r/g, '%0D')
.replace(/\n/g, '%0A') .replace(/\n/g, '%0A')
.replace(/]/g, '%5D') .replace(/:/g, '%3A')
.replace(/;/g, '%3B'); .replace(/,/g, '%2C');
} }
//# sourceMappingURL=command.js.map //# sourceMappingURL=command.js.map

View File

@@ -1 +1 @@
{"version":3,"file":"command.js","sourceRoot":"","sources":["../src/command.ts"],"names":[],"mappings":";;AAAA,yBAAwB;AAQxB;;;;;;;;;GASG;AACH,SAAgB,YAAY,CAC1B,OAAe,EACf,UAA6B,EAC7B,OAAe;IAEf,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA;IACrD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAA;AAC/C,CAAC;AAPD,oCAOC;AAED,SAAgB,KAAK,CAAC,IAAY,EAAE,OAAe;IACjD,YAAY,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,CAAC,CAAA;AACjC,CAAC;AAFD,sBAEC;AAED,MAAM,UAAU,GAAG,KAAK,CAAA;AAExB,MAAM,OAAO;IAKX,YAAY,OAAe,EAAE,UAA6B,EAAE,OAAe;QACzE,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,GAAG,iBAAiB,CAAA;SAC5B;QAED,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACxB,CAAC;IAED,QAAQ;QACN,IAAI,MAAM,GAAG,UAAU,GAAG,IAAI,CAAC,OAAO,CAAA;QAEtC,IAAI,IAAI,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YAC9D,MAAM,IAAI,GAAG,CAAA;YACb,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,UAAU,EAAE;gBACjC,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE;oBACvC,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;oBAChC,IAAI,GAAG,EAAE;wBACP,8DAA8D;wBAC9D,6DAA6D;wBAC7D,MAAM,IAAI,GAAG,GAAG,IAAI,MAAM,CAAC,GAAG,GAAG,IAAI,EAAE,EAAE,CAAC,GAAG,CAAA;qBAC9C;iBACF;aACF;SACF;QAED,MAAM,IAAI,GAAG,CAAA;QAEb,kEAAkE;QAClE,6DAA6D;QAC7D,MAAM,OAAO,GAAG,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE,CAAA;QACvC,MAAM,IAAI,UAAU,CAAC,OAAO,CAAC,CAAA;QAE7B,OAAO,MAAM,CAAA;IACf,CAAC;CACF;AAED,SAAS,UAAU,CAAC,CAAS;IAC3B,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;AACtD,CAAC;AAED,SAAS,MAAM,CAAC,CAAS;IACvB,OAAO,CAAC;SACL,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;SACrB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;SACpB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;AACzB,CAAC"} {"version":3,"file":"command.js","sourceRoot":"","sources":["../src/command.ts"],"names":[],"mappings":";;;;;;;;;AAAA,uCAAwB;AAWxB;;;;;;;;;GASG;AACH,SAAgB,YAAY,CAC1B,OAAe,EACf,UAA6B,EAC7B,OAAY;IAEZ,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA;IACrD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAA;AAC/C,CAAC;AAPD,oCAOC;AAED,SAAgB,KAAK,CAAC,IAAY,EAAE,UAAkB,EAAE;IACtD,YAAY,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,CAAC,CAAA;AACjC,CAAC;AAFD,sBAEC;AAED,MAAM,UAAU,GAAG,IAAI,CAAA;AAEvB,MAAM,OAAO;IAKX,YAAY,OAAe,EAAE,UAA6B,EAAE,OAAe;QACzE,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,GAAG,iBAAiB,CAAA;SAC5B;QAED,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACxB,CAAC;IAED,QAAQ;QACN,IAAI,MAAM,GAAG,UAAU,GAAG,IAAI,CAAC,OAAO,CAAA;QAEtC,IAAI,IAAI,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YAC9D,MAAM,IAAI,GAAG,CAAA;YACb,IAAI,KAAK,GAAG,IAAI,CAAA;YAChB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,UAAU,EAAE;gBACjC,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE;oBACvC,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;oBAChC,IAAI,GAAG,EAAE;wBACP,IAAI,KAAK,EAAE;4BACT,KAAK,GAAG,KAAK,CAAA;yBACd;6BAAM;4BACL,MAAM,IAAI,GAAG,CAAA;yBACd;wBAED,MAAM,IAAI,GAAG,GAAG,IAAI,cAAc,CAAC,GAAG,CAAC,EAAE,CAAA;qBAC1C;iBACF;aACF;SACF;QAED,MAAM,IAAI,GAAG,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAA;QACpD,OAAO,MAAM,CAAA;IACf,CAAC;CACF;AAED;;;GAGG;AACH,SAAgB,cAAc,CAAC,KAAU;IACvC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE;QACzC,OAAO,EAAE,CAAA;KACV;SAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,YAAY,MAAM,EAAE;QAC/D,OAAO,KAAe,CAAA;KACvB;IACD,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;AAC9B,CAAC;AAPD,wCAOC;AAED,SAAS,UAAU,CAAC,CAAM;IACxB,OAAO,cAAc,CAAC,CAAC,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;SACpB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;SACrB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;AAC1B,CAAC;AAED,SAAS,cAAc,CAAC,CAAM;IAC5B,OAAO,cAAc,CAAC,CAAC,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;SACpB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;SACrB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;SACpB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;AACzB,CAAC"}

View File

@@ -19,17 +19,16 @@ export declare enum ExitCode {
Failure = 1 Failure = 1
} }
/** /**
* sets env variable for this action and future actions in the job * Sets env variable for this action and future actions in the job
* @param name the name of the variable to set * @param name the name of the variable to set
* @param val the value of the variable * @param val the value of the variable. Non-string values will be converted to a string via JSON.stringify
*/ */
export declare function exportVariable(name: string, val: string): void; export declare function exportVariable(name: string, val: any): void;
/** /**
* exports the variable and registers a secret which will get masked from logs * Registers a secret which will get masked from logs
* @param name the name of the variable to set * @param secret value of the secret
* @param val value of the secret
*/ */
export declare function exportSecret(name: string, val: string): void; export declare function setSecret(secret: string): void;
/** /**
* Prepends inputPath to the PATH (for this action and future actions) * Prepends inputPath to the PATH (for this action and future actions)
* @param inputPath * @param inputPath
@@ -47,15 +46,25 @@ export declare function getInput(name: string, options?: InputOptions): string;
* Sets the value of an output. * Sets the value of an output.
* *
* @param name name of the output to set * @param name name of the output to set
* @param value value to store * @param value value to store. Non-string values will be converted to a string via JSON.stringify
*/ */
export declare function setOutput(name: string, value: string): void; export declare function setOutput(name: string, value: any): void;
/**
* Enables or disables the echoing of commands into stdout for the rest of the step.
* Echoing is disabled by default if ACTIONS_STEP_DEBUG is not set.
*
*/
export declare function setCommandEcho(enabled: boolean): void;
/** /**
* Sets the action status to failed. * Sets the action status to failed.
* When the action exits it will be with an exit code of 1 * When the action exits it will be with an exit code of 1
* @param message add error issue message * @param message add error issue message
*/ */
export declare function setFailed(message: string): void; export declare function setFailed(message: string | Error): void;
/**
* Gets whether Actions Step Debug is on or not
*/
export declare function isDebug(): boolean;
/** /**
* Writes debug message to user log * Writes debug message to user log
* @param message debug message * @param message debug message
@@ -63,11 +72,51 @@ export declare function setFailed(message: string): void;
export declare function debug(message: string): void; export declare function debug(message: string): void;
/** /**
* Adds an error issue * Adds an error issue
* @param message error issue message * @param message error issue message. Errors will be converted to string via toString()
*/ */
export declare function error(message: string): void; export declare function error(message: string | Error): void;
/** /**
* Adds an warning issue * Adds an warning issue
* @param message warning issue message * @param message warning issue message. Errors will be converted to string via toString()
*/ */
export declare function warning(message: string): void; export declare function warning(message: string | Error): void;
/**
* Writes info to log with console.log.
* @param message info message
*/
export declare function info(message: string): void;
/**
* Begin an output group.
*
* Output until the next `groupEnd` will be foldable in this group
*
* @param name The name of the output group
*/
export declare function startGroup(name: string): void;
/**
* End an output group.
*/
export declare function endGroup(): void;
/**
* Wrap an asynchronous function call in a group.
*
* Returns the same type as the function itself.
*
* @param name The name of the group
* @param fn The function to wrap in the group
*/
export declare function group<T>(name: string, fn: () => Promise<T>): Promise<T>;
/**
* Saves state for current action, the state can only be retrieved by this action's post job execution.
*
* @param name name of the state to store
* @param value value to store. Non-string values will be converted to a string via JSON.stringify
*/
export declare function saveState(name: string, value: any): void;
/**
* Gets the value of an state set by this action's main execution.
*
* @param name name of the state to get
* @returns string
*/
export declare function getState(name: string): string;

View File

@@ -1,7 +1,24 @@
"use strict"; "use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
result["default"] = mod;
return result;
};
Object.defineProperty(exports, "__esModule", { value: true }); Object.defineProperty(exports, "__esModule", { value: true });
const command_1 = require("./command"); const command_1 = require("./command");
const path = require("path"); const os = __importStar(require("os"));
const path = __importStar(require("path"));
/** /**
* The code to exit an action * The code to exit an action
*/ */
@@ -20,25 +37,25 @@ var ExitCode;
// Variables // Variables
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
/** /**
* sets env variable for this action and future actions in the job * Sets env variable for this action and future actions in the job
* @param name the name of the variable to set * @param name the name of the variable to set
* @param val the value of the variable * @param val the value of the variable. Non-string values will be converted to a string via JSON.stringify
*/ */
// eslint-disable-next-line @typescript-eslint/no-explicit-any
function exportVariable(name, val) { function exportVariable(name, val) {
process.env[name] = val; const convertedVal = command_1.toCommandValue(val);
command_1.issueCommand('set-env', { name }, val); process.env[name] = convertedVal;
command_1.issueCommand('set-env', { name }, convertedVal);
} }
exports.exportVariable = exportVariable; exports.exportVariable = exportVariable;
/** /**
* exports the variable and registers a secret which will get masked from logs * Registers a secret which will get masked from logs
* @param name the name of the variable to set * @param secret value of the secret
* @param val value of the secret
*/ */
function exportSecret(name, val) { function setSecret(secret) {
exportVariable(name, val); command_1.issueCommand('add-mask', {}, secret);
command_1.issueCommand('set-secret', {}, val);
} }
exports.exportSecret = exportSecret; exports.setSecret = setSecret;
/** /**
* Prepends inputPath to the PATH (for this action and future actions) * Prepends inputPath to the PATH (for this action and future actions)
* @param inputPath * @param inputPath
@@ -56,7 +73,7 @@ exports.addPath = addPath;
* @returns string * @returns string
*/ */
function getInput(name, options) { function getInput(name, options) {
const val = process.env[`INPUT_${name.replace(' ', '_').toUpperCase()}`] || ''; const val = process.env[`INPUT_${name.replace(/ /g, '_').toUpperCase()}`] || '';
if (options && options.required && !val) { if (options && options.required && !val) {
throw new Error(`Input required and not supplied: ${name}`); throw new Error(`Input required and not supplied: ${name}`);
} }
@@ -67,12 +84,22 @@ exports.getInput = getInput;
* Sets the value of an output. * Sets the value of an output.
* *
* @param name name of the output to set * @param name name of the output to set
* @param value value to store * @param value value to store. Non-string values will be converted to a string via JSON.stringify
*/ */
// eslint-disable-next-line @typescript-eslint/no-explicit-any
function setOutput(name, value) { function setOutput(name, value) {
command_1.issueCommand('set-output', { name }, value); command_1.issueCommand('set-output', { name }, value);
} }
exports.setOutput = setOutput; exports.setOutput = setOutput;
/**
* Enables or disables the echoing of commands into stdout for the rest of the step.
* Echoing is disabled by default if ACTIONS_STEP_DEBUG is not set.
*
*/
function setCommandEcho(enabled) {
command_1.issue('echo', enabled ? 'on' : 'off');
}
exports.setCommandEcho = setCommandEcho;
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
// Results // Results
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
@@ -89,6 +116,13 @@ exports.setFailed = setFailed;
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
// Logging Commands // Logging Commands
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
/**
* Gets whether Actions Step Debug is on or not
*/
function isDebug() {
return process.env['RUNNER_DEBUG'] === '1';
}
exports.isDebug = isDebug;
/** /**
* Writes debug message to user log * Writes debug message to user log
* @param message debug message * @param message debug message
@@ -99,18 +133,90 @@ function debug(message) {
exports.debug = debug; exports.debug = debug;
/** /**
* Adds an error issue * Adds an error issue
* @param message error issue message * @param message error issue message. Errors will be converted to string via toString()
*/ */
function error(message) { function error(message) {
command_1.issue('error', message); command_1.issue('error', message instanceof Error ? message.toString() : message);
} }
exports.error = error; exports.error = error;
/** /**
* Adds an warning issue * Adds an warning issue
* @param message warning issue message * @param message warning issue message. Errors will be converted to string via toString()
*/ */
function warning(message) { function warning(message) {
command_1.issue('warning', message); command_1.issue('warning', message instanceof Error ? message.toString() : message);
} }
exports.warning = warning; exports.warning = warning;
/**
* Writes info to log with console.log.
* @param message info message
*/
function info(message) {
process.stdout.write(message + os.EOL);
}
exports.info = info;
/**
* Begin an output group.
*
* Output until the next `groupEnd` will be foldable in this group
*
* @param name The name of the output group
*/
function startGroup(name) {
command_1.issue('group', name);
}
exports.startGroup = startGroup;
/**
* End an output group.
*/
function endGroup() {
command_1.issue('endgroup');
}
exports.endGroup = endGroup;
/**
* Wrap an asynchronous function call in a group.
*
* Returns the same type as the function itself.
*
* @param name The name of the group
* @param fn The function to wrap in the group
*/
function group(name, fn) {
return __awaiter(this, void 0, void 0, function* () {
startGroup(name);
let result;
try {
result = yield fn();
}
finally {
endGroup();
}
return result;
});
}
exports.group = group;
//-----------------------------------------------------------------------
// Wrapper action state
//-----------------------------------------------------------------------
/**
* Saves state for current action, the state can only be retrieved by this action's post job execution.
*
* @param name name of the state to store
* @param value value to store. Non-string values will be converted to a string via JSON.stringify
*/
// eslint-disable-next-line @typescript-eslint/no-explicit-any
function saveState(name, value) {
command_1.issueCommand('save-state', { name }, value);
}
exports.saveState = saveState;
/**
* Gets the value of an state set by this action's main execution.
*
* @param name name of the state to get
* @returns string
*/
function getState(name) {
return process.env[`STATE_${name}`] || '';
}
exports.getState = getState;
//# sourceMappingURL=core.js.map //# sourceMappingURL=core.js.map

View File

@@ -1 +1 @@
{"version":3,"file":"core.js","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":";;AAAA,uCAA6C;AAE7C,6BAA4B;AAU5B;;GAEG;AACH,IAAY,QAUX;AAVD,WAAY,QAAQ;IAClB;;OAEG;IACH,6CAAW,CAAA;IAEX;;OAEG;IACH,6CAAW,CAAA;AACb,CAAC,EAVW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAUnB;AAED,yEAAyE;AACzE,YAAY;AACZ,yEAAyE;AAEzE;;;;GAIG;AACH,SAAgB,cAAc,CAAC,IAAY,EAAE,GAAW;IACtD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,CAAA;IACvB,sBAAY,CAAC,SAAS,EAAE,EAAC,IAAI,EAAC,EAAE,GAAG,CAAC,CAAA;AACtC,CAAC;AAHD,wCAGC;AAED;;;;GAIG;AACH,SAAgB,YAAY,CAAC,IAAY,EAAE,GAAW;IACpD,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IACzB,sBAAY,CAAC,YAAY,EAAE,EAAE,EAAE,GAAG,CAAC,CAAA;AACrC,CAAC;AAHD,oCAGC;AAED;;;GAGG;AACH,SAAgB,OAAO,CAAC,SAAiB;IACvC,sBAAY,CAAC,UAAU,EAAE,EAAE,EAAE,SAAS,CAAC,CAAA;IACvC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,SAAS,GAAG,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAA;AAC7E,CAAC;AAHD,0BAGC;AAED;;;;;;GAMG;AACH,SAAgB,QAAQ,CAAC,IAAY,EAAE,OAAsB;IAC3D,MAAM,GAAG,GACP,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,IAAI,EAAE,CAAA;IACpE,IAAI,OAAO,IAAI,OAAO,CAAC,QAAQ,IAAI,CAAC,GAAG,EAAE;QACvC,MAAM,IAAI,KAAK,CAAC,oCAAoC,IAAI,EAAE,CAAC,CAAA;KAC5D;IAED,OAAO,GAAG,CAAC,IAAI,EAAE,CAAA;AACnB,CAAC;AARD,4BAQC;AAED;;;;;GAKG;AACH,SAAgB,SAAS,CAAC,IAAY,EAAE,KAAa;IACnD,sBAAY,CAAC,YAAY,EAAE,EAAC,IAAI,EAAC,EAAE,KAAK,CAAC,CAAA;AAC3C,CAAC;AAFD,8BAEC;AAED,yEAAyE;AACzE,UAAU;AACV,yEAAyE;AAEzE;;;;GAIG;AACH,SAAgB,SAAS,CAAC,OAAe;IACvC,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAA;IACnC,KAAK,CAAC,OAAO,CAAC,CAAA;AAChB,CAAC;AAHD,8BAGC;AAED,yEAAyE;AACzE,mBAAmB;AACnB,yEAAyE;AAEzE;;;GAGG;AACH,SAAgB,KAAK,CAAC,OAAe;IACnC,sBAAY,CAAC,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,CAAA;AACpC,CAAC;AAFD,sBAEC;AAED;;;GAGG;AACH,SAAgB,KAAK,CAAC,OAAe;IACnC,eAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;AACzB,CAAC;AAFD,sBAEC;AAED;;;GAGG;AACH,SAAgB,OAAO,CAAC,OAAe;IACrC,eAAK,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;AAC3B,CAAC;AAFD,0BAEC"} {"version":3,"file":"core.js","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,uCAA6D;AAE7D,uCAAwB;AACxB,2CAA4B;AAU5B;;GAEG;AACH,IAAY,QAUX;AAVD,WAAY,QAAQ;IAClB;;OAEG;IACH,6CAAW,CAAA;IAEX;;OAEG;IACH,6CAAW,CAAA;AACb,CAAC,EAVW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAUnB;AAED,yEAAyE;AACzE,YAAY;AACZ,yEAAyE;AAEzE;;;;GAIG;AACH,8DAA8D;AAC9D,SAAgB,cAAc,CAAC,IAAY,EAAE,GAAQ;IACnD,MAAM,YAAY,GAAG,wBAAc,CAAC,GAAG,CAAC,CAAA;IACxC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,YAAY,CAAA;IAChC,sBAAY,CAAC,SAAS,EAAE,EAAC,IAAI,EAAC,EAAE,YAAY,CAAC,CAAA;AAC/C,CAAC;AAJD,wCAIC;AAED;;;GAGG;AACH,SAAgB,SAAS,CAAC,MAAc;IACtC,sBAAY,CAAC,UAAU,EAAE,EAAE,EAAE,MAAM,CAAC,CAAA;AACtC,CAAC;AAFD,8BAEC;AAED;;;GAGG;AACH,SAAgB,OAAO,CAAC,SAAiB;IACvC,sBAAY,CAAC,UAAU,EAAE,EAAE,EAAE,SAAS,CAAC,CAAA;IACvC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,SAAS,GAAG,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAA;AAC7E,CAAC;AAHD,0BAGC;AAED;;;;;;GAMG;AACH,SAAgB,QAAQ,CAAC,IAAY,EAAE,OAAsB;IAC3D,MAAM,GAAG,GACP,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,IAAI,EAAE,CAAA;IACrE,IAAI,OAAO,IAAI,OAAO,CAAC,QAAQ,IAAI,CAAC,GAAG,EAAE;QACvC,MAAM,IAAI,KAAK,CAAC,oCAAoC,IAAI,EAAE,CAAC,CAAA;KAC5D;IAED,OAAO,GAAG,CAAC,IAAI,EAAE,CAAA;AACnB,CAAC;AARD,4BAQC;AAED;;;;;GAKG;AACH,8DAA8D;AAC9D,SAAgB,SAAS,CAAC,IAAY,EAAE,KAAU;IAChD,sBAAY,CAAC,YAAY,EAAE,EAAC,IAAI,EAAC,EAAE,KAAK,CAAC,CAAA;AAC3C,CAAC;AAFD,8BAEC;AAED;;;;GAIG;AACH,SAAgB,cAAc,CAAC,OAAgB;IAC7C,eAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;AACvC,CAAC;AAFD,wCAEC;AAED,yEAAyE;AACzE,UAAU;AACV,yEAAyE;AAEzE;;;;GAIG;AACH,SAAgB,SAAS,CAAC,OAAuB;IAC/C,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAA;IAEnC,KAAK,CAAC,OAAO,CAAC,CAAA;AAChB,CAAC;AAJD,8BAIC;AAED,yEAAyE;AACzE,mBAAmB;AACnB,yEAAyE;AAEzE;;GAEG;AACH,SAAgB,OAAO;IACrB,OAAO,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,GAAG,CAAA;AAC5C,CAAC;AAFD,0BAEC;AAED;;;GAGG;AACH,SAAgB,KAAK,CAAC,OAAe;IACnC,sBAAY,CAAC,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,CAAA;AACpC,CAAC;AAFD,sBAEC;AAED;;;GAGG;AACH,SAAgB,KAAK,CAAC,OAAuB;IAC3C,eAAK,CAAC,OAAO,EAAE,OAAO,YAAY,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;AACzE,CAAC;AAFD,sBAEC;AAED;;;GAGG;AACH,SAAgB,OAAO,CAAC,OAAuB;IAC7C,eAAK,CAAC,SAAS,EAAE,OAAO,YAAY,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;AAC3E,CAAC;AAFD,0BAEC;AAED;;;GAGG;AACH,SAAgB,IAAI,CAAC,OAAe;IAClC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,GAAG,CAAC,CAAA;AACxC,CAAC;AAFD,oBAEC;AAED;;;;;;GAMG;AACH,SAAgB,UAAU,CAAC,IAAY;IACrC,eAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;AACtB,CAAC;AAFD,gCAEC;AAED;;GAEG;AACH,SAAgB,QAAQ;IACtB,eAAK,CAAC,UAAU,CAAC,CAAA;AACnB,CAAC;AAFD,4BAEC;AAED;;;;;;;GAOG;AACH,SAAsB,KAAK,CAAI,IAAY,EAAE,EAAoB;;QAC/D,UAAU,CAAC,IAAI,CAAC,CAAA;QAEhB,IAAI,MAAS,CAAA;QAEb,IAAI;YACF,MAAM,GAAG,MAAM,EAAE,EAAE,CAAA;SACpB;gBAAS;YACR,QAAQ,EAAE,CAAA;SACX;QAED,OAAO,MAAM,CAAA;IACf,CAAC;CAAA;AAZD,sBAYC;AAED,yEAAyE;AACzE,uBAAuB;AACvB,yEAAyE;AAEzE;;;;;GAKG;AACH,8DAA8D;AAC9D,SAAgB,SAAS,CAAC,IAAY,EAAE,KAAU;IAChD,sBAAY,CAAC,YAAY,EAAE,EAAC,IAAI,EAAC,EAAE,KAAK,CAAC,CAAA;AAC3C,CAAC;AAFD,8BAEC;AAED;;;;;GAKG;AACH,SAAgB,QAAQ,CAAC,IAAY;IACnC,OAAO,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,IAAI,EAAE,CAAA;AAC3C,CAAC;AAFD,4BAEC"}

View File

@@ -1,36 +1,33 @@
{ {
"_args": [ "_from": "@actions/core@^1.0.0",
[ "_id": "@actions/core@1.2.5",
"@actions/core@1.0.0",
"C:\\Users\\damccorm\\Documents\\labeler"
]
],
"_from": "@actions/core@1.0.0",
"_id": "@actions/core@1.0.0",
"_inBundle": false, "_inBundle": false,
"_integrity": "sha512-aMIlkx96XH4E/2YZtEOeyrYQfhlas9jIRkfGPqMwXD095Rdkzo4lB6ZmbxPQSzD+e1M+Xsm98ZhuSMYGv/AlqA==", "_integrity": "sha512-mwpoNjHSWWh0IiALdDEQi3tru124JKn0yVNziIBzTME8QRv7thwoghVuT1jBRjFvdtoHsqD58IRHy1nf86paRg==",
"_location": "/@actions/core", "_location": "/@actions/core",
"_phantomChildren": {}, "_phantomChildren": {},
"_requested": { "_requested": {
"type": "version", "type": "range",
"registry": true, "registry": true,
"raw": "@actions/core@1.0.0", "raw": "@actions/core@^1.0.0",
"name": "@actions/core", "name": "@actions/core",
"escapedName": "@actions%2fcore", "escapedName": "@actions%2fcore",
"scope": "@actions", "scope": "@actions",
"rawSpec": "1.0.0", "rawSpec": "^1.0.0",
"saveSpec": null, "saveSpec": null,
"fetchSpec": "1.0.0" "fetchSpec": "^1.0.0"
}, },
"_requiredBy": [ "_requiredBy": [
"/" "/"
], ],
"_resolved": "https://registry.npmjs.org/@actions/core/-/core-1.0.0.tgz", "_resolved": "https://registry.npmjs.org/@actions/core/-/core-1.2.5.tgz",
"_spec": "1.0.0", "_shasum": "fa57bf8c07a38191e243beb9ea9d8368c1cb02c8",
"_where": "C:\\Users\\damccorm\\Documents\\labeler", "_spec": "@actions/core@^1.0.0",
"_where": "/Users/dakale/dev/GitHub/actions/labeler",
"bugs": { "bugs": {
"url": "https://github.com/actions/toolkit/issues" "url": "https://github.com/actions/toolkit/issues"
}, },
"bundleDependencies": false,
"deprecated": false,
"description": "Actions core lib", "description": "Actions core lib",
"devDependencies": { "devDependencies": {
"@types/node": "^12.0.2" "@types/node": "^12.0.2"
@@ -40,13 +37,14 @@
"test": "__tests__" "test": "__tests__"
}, },
"files": [ "files": [
"lib" "lib",
"!.DS_Store"
], ],
"gitHead": "a40bce7c8d382aa3dbadaa327acbc696e9390e55", "homepage": "https://github.com/actions/toolkit/tree/main/packages/core",
"homepage": "https://github.com/actions/toolkit/tree/master/packages/core",
"keywords": [ "keywords": [
"core", "github",
"actions" "actions",
"core"
], ],
"license": "MIT", "license": "MIT",
"main": "lib/core.js", "main": "lib/core.js",
@@ -56,11 +54,14 @@
}, },
"repository": { "repository": {
"type": "git", "type": "git",
"url": "git+https://github.com/actions/toolkit.git" "url": "git+https://github.com/actions/toolkit.git",
"directory": "packages/core"
}, },
"scripts": { "scripts": {
"audit-moderate": "npm install && npm audit --json --audit-level=moderate > audit.json",
"test": "echo \"Error: run tests from root\" && exit 1", "test": "echo \"Error: run tests from root\" && exit 1",
"tsc": "tsc" "tsc": "tsc"
}, },
"version": "1.0.0" "types": "lib/core.d.ts",
"version": "1.2.5"
} }

View File

@@ -22,7 +22,7 @@
"_resolved": "https://registry.npmjs.org/@actions/github/-/github-2.2.0.tgz", "_resolved": "https://registry.npmjs.org/@actions/github/-/github-2.2.0.tgz",
"_shasum": "8952fe96b12b881fa39340f0e7202b04dc5c3e71", "_shasum": "8952fe96b12b881fa39340f0e7202b04dc5c3e71",
"_spec": "@actions/github@^2.2.0", "_spec": "@actions/github@^2.2.0",
"_where": "/Users/pjquirk/Source/GitHub/actions/labeler", "_where": "/Users/dakale/dev/GitHub/actions/labeler",
"bugs": { "bugs": {
"url": "https://github.com/actions/toolkit/issues" "url": "https://github.com/actions/toolkit/issues"
}, },

View File

@@ -22,7 +22,7 @@
"_resolved": "https://registry.npmjs.org/@actions/http-client/-/http-client-1.0.8.tgz", "_resolved": "https://registry.npmjs.org/@actions/http-client/-/http-client-1.0.8.tgz",
"_shasum": "8bd76e8eca89dc8bcf619aa128eba85f7a39af45", "_shasum": "8bd76e8eca89dc8bcf619aa128eba85f7a39af45",
"_spec": "@actions/http-client@^1.0.3", "_spec": "@actions/http-client@^1.0.3",
"_where": "/Users/pjquirk/Source/GitHub/actions/labeler/node_modules/@actions/github", "_where": "/Users/dakale/dev/GitHub/actions/labeler/node_modules/@actions/github",
"author": { "author": {
"name": "GitHub, Inc." "name": "GitHub, Inc."
}, },

View File

@@ -6,17 +6,11 @@ Object.defineProperty(exports, "__esModule", {
exports.codeFrameColumns = codeFrameColumns; exports.codeFrameColumns = codeFrameColumns;
exports.default = _default; exports.default = _default;
function _highlight() { var _highlight = _interopRequireWildcard(require("@babel/highlight"));
const data = _interopRequireWildcard(require("@babel/highlight"));
_highlight = function () { function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
return data;
};
return data; function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
}
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } }
let deprecationWarningShown = false; let deprecationWarningShown = false;
@@ -94,8 +88,8 @@ function getMarkerLines(loc, source, opts) {
} }
function codeFrameColumns(rawLines, loc, opts = {}) { function codeFrameColumns(rawLines, loc, opts = {}) {
const highlighted = (opts.highlightCode || opts.forceColor) && (0, _highlight().shouldHighlight)(opts); const highlighted = (opts.highlightCode || opts.forceColor) && (0, _highlight.shouldHighlight)(opts);
const chalk = (0, _highlight().getChalk)(opts); const chalk = (0, _highlight.getChalk)(opts);
const defs = getDefs(chalk); const defs = getDefs(chalk);
const maybeHighlight = (chalkFn, string) => { const maybeHighlight = (chalkFn, string) => {
@@ -110,7 +104,7 @@ function codeFrameColumns(rawLines, loc, opts = {}) {
} = getMarkerLines(loc, lines, opts); } = getMarkerLines(loc, lines, opts);
const hasColumns = loc.start && typeof loc.start.column === "number"; const hasColumns = loc.start && typeof loc.start.column === "number";
const numberMaxWidth = String(end).length; const numberMaxWidth = String(end).length;
const highlightedLines = highlighted ? (0, _highlight().default)(rawLines, opts) : rawLines; const highlightedLines = highlighted ? (0, _highlight.default)(rawLines, opts) : rawLines;
let frame = highlightedLines.split(NEWLINE).slice(start, end).map((line, index) => { let frame = highlightedLines.split(NEWLINE).slice(start, end).map((line, index) => {
const number = start + 1 + index; const number = start + 1 + index;
const paddedNumber = ` ${number}`.slice(-numberMaxWidth); const paddedNumber = ` ${number}`.slice(-numberMaxWidth);

View File

@@ -1,27 +1,20 @@
{ {
"_args": [ "_from": "@babel/code-frame@^7.0.0",
[ "_id": "@babel/code-frame@7.10.4",
"@babel/code-frame@7.5.5",
"/Users/pjquirk/Source/GitHub/actions/labeler"
]
],
"_development": true,
"_from": "@babel/code-frame@7.5.5",
"_id": "@babel/code-frame@7.5.5",
"_inBundle": false, "_inBundle": false,
"_integrity": "sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw==", "_integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==",
"_location": "/@babel/code-frame", "_location": "/@babel/code-frame",
"_phantomChildren": {}, "_phantomChildren": {},
"_requested": { "_requested": {
"type": "version", "type": "range",
"registry": true, "registry": true,
"raw": "@babel/code-frame@7.5.5", "raw": "@babel/code-frame@^7.0.0",
"name": "@babel/code-frame", "name": "@babel/code-frame",
"escapedName": "@babel%2fcode-frame", "escapedName": "@babel%2fcode-frame",
"scope": "@babel", "scope": "@babel",
"rawSpec": "7.5.5", "rawSpec": "^7.0.0",
"saveSpec": null, "saveSpec": null,
"fetchSpec": "7.5.5" "fetchSpec": "^7.0.0"
}, },
"_requiredBy": [ "_requiredBy": [
"/@babel/core", "/@babel/core",
@@ -30,22 +23,28 @@
"/jest-message-util", "/jest-message-util",
"/read-pkg/parse-json" "/read-pkg/parse-json"
], ],
"_resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.5.5.tgz", "_resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz",
"_spec": "7.5.5", "_shasum": "168da1a36e90da68ae8d49c0f1b48c7c6249213a",
"_where": "/Users/pjquirk/Source/GitHub/actions/labeler", "_spec": "@babel/code-frame@^7.0.0",
"_where": "/Users/dakale/dev/GitHub/actions/labeler/node_modules/read-pkg/node_modules/parse-json",
"author": { "author": {
"name": "Sebastian McKenzie", "name": "Sebastian McKenzie",
"email": "sebmck@gmail.com" "email": "sebmck@gmail.com"
}, },
"dependencies": { "bugs": {
"@babel/highlight": "^7.0.0" "url": "https://github.com/babel/babel/issues"
}, },
"bundleDependencies": false,
"dependencies": {
"@babel/highlight": "^7.10.4"
},
"deprecated": false,
"description": "Generate errors that contain a code frame that point to source locations.", "description": "Generate errors that contain a code frame that point to source locations.",
"devDependencies": { "devDependencies": {
"chalk": "^2.0.0", "chalk": "^2.0.0",
"strip-ansi": "^4.0.0" "strip-ansi": "^4.0.0"
}, },
"gitHead": "0407f034f09381b95e9cabefbf6b176c76485a43", "gitHead": "7fd40d86a0d03ff0e9c3ea16b29689945433d4df",
"homepage": "https://babeljs.io/", "homepage": "https://babeljs.io/",
"license": "MIT", "license": "MIT",
"main": "lib/index.js", "main": "lib/index.js",
@@ -55,7 +54,8 @@
}, },
"repository": { "repository": {
"type": "git", "type": "git",
"url": "https://github.com/babel/babel/tree/master/packages/babel-code-frame" "url": "git+https://github.com/babel/babel.git",
"directory": "packages/babel-code-frame"
}, },
"version": "7.5.5" "version": "7.10.4"
} }

View File

@@ -3,74 +3,177 @@
Object.defineProperty(exports, "__esModule", { Object.defineProperty(exports, "__esModule", {
value: true value: true
}); });
exports.makeStrongCache = makeStrongCache;
exports.makeWeakCache = makeWeakCache; exports.makeWeakCache = makeWeakCache;
exports.makeWeakCacheSync = makeWeakCacheSync;
exports.makeStrongCache = makeStrongCache;
exports.makeStrongCacheSync = makeStrongCacheSync;
exports.assertSimpleType = assertSimpleType; exports.assertSimpleType = assertSimpleType;
function makeStrongCache(handler) { function _gensync() {
return makeCachedFunction(new Map(), handler); const data = _interopRequireDefault(require("gensync"));
_gensync = function () {
return data;
};
return data;
}
var _async = require("../gensync-utils/async");
var _util = require("./util");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const synchronize = gen => {
return (0, _gensync().default)(gen).sync;
};
function* genTrue(data) {
return true;
} }
function makeWeakCache(handler) { function makeWeakCache(handler) {
return makeCachedFunction(new WeakMap(), handler); return makeCachedFunction(WeakMap, handler);
} }
function makeCachedFunction(callCache, handler) { function makeWeakCacheSync(handler) {
return function cachedFunction(arg, data) { return synchronize(makeWeakCache(handler));
let cachedValue = callCache.get(arg); }
if (cachedValue) { function makeStrongCache(handler) {
for (const _ref of cachedValue) { return makeCachedFunction(Map, handler);
const { }
value,
valid function makeStrongCacheSync(handler) {
} = _ref; return synchronize(makeStrongCache(handler));
if (valid(data)) return value; }
}
function makeCachedFunction(CallCache, handler) {
const callCacheSync = new CallCache();
const callCacheAsync = new CallCache();
const futureCache = new CallCache();
return function* cachedFunction(arg, data) {
const asyncContext = yield* (0, _async.isAsync)();
const callCache = asyncContext ? callCacheAsync : callCacheSync;
const cached = yield* getCachedValueOrWait(asyncContext, callCache, futureCache, arg, data);
if (cached.valid) return cached.value;
const cache = new CacheConfigurator(data);
const handlerResult = handler(arg, cache);
let finishLock;
let value;
if ((0, _util.isIterableIterator)(handlerResult)) {
const gen = handlerResult;
value = yield* (0, _async.onFirstPause)(gen, () => {
finishLock = setupAsyncLocks(cache, futureCache, arg);
});
} else {
value = handlerResult;
} }
const cache = new CacheConfigurator(data); updateFunctionCache(callCache, cache, arg, value);
const value = handler(arg, cache);
if (!cache.configured()) cache.forever();
cache.deactivate();
switch (cache.mode()) {
case "forever":
cachedValue = [{
value,
valid: () => true
}];
callCache.set(arg, cachedValue);
break;
case "invalidate":
cachedValue = [{
value,
valid: cache.validator()
}];
callCache.set(arg, cachedValue);
break;
case "valid":
if (cachedValue) {
cachedValue.push({
value,
valid: cache.validator()
});
} else {
cachedValue = [{
value,
valid: cache.validator()
}];
callCache.set(arg, cachedValue);
}
if (finishLock) {
futureCache.delete(arg);
finishLock.release(value);
} }
return value; return value;
}; };
} }
function* getCachedValue(cache, arg, data) {
const cachedValue = cache.get(arg);
if (cachedValue) {
for (const {
value,
valid
} of cachedValue) {
if (yield* valid(data)) return {
valid: true,
value
};
}
}
return {
valid: false,
value: null
};
}
function* getCachedValueOrWait(asyncContext, callCache, futureCache, arg, data) {
const cached = yield* getCachedValue(callCache, arg, data);
if (cached.valid) {
return cached;
}
if (asyncContext) {
const cached = yield* getCachedValue(futureCache, arg, data);
if (cached.valid) {
const value = yield* (0, _async.waitFor)(cached.value.promise);
return {
valid: true,
value
};
}
}
return {
valid: false,
value: null
};
}
function setupAsyncLocks(config, futureCache, arg) {
const finishLock = new Lock();
updateFunctionCache(futureCache, config, arg, finishLock);
return finishLock;
}
function updateFunctionCache(cache, config, arg, value) {
if (!config.configured()) config.forever();
let cachedValue = cache.get(arg);
config.deactivate();
switch (config.mode()) {
case "forever":
cachedValue = [{
value,
valid: genTrue
}];
cache.set(arg, cachedValue);
break;
case "invalidate":
cachedValue = [{
value,
valid: config.validator()
}];
cache.set(arg, cachedValue);
break;
case "valid":
if (cachedValue) {
cachedValue.push({
value,
valid: config.validator()
});
} else {
cachedValue = [{
value,
valid: config.validator()
}];
cache.set(arg, cachedValue);
}
}
}
class CacheConfigurator { class CacheConfigurator {
constructor(data) { constructor(data) {
this._active = true; this._active = true;
@@ -130,33 +233,35 @@ class CacheConfigurator {
this._configured = true; this._configured = true;
const key = handler(this._data); const key = handler(this._data);
const fn = (0, _async.maybeAsync)(handler, `You appear to be using an async cache handler, but Babel has been called synchronously`);
this._pairs.push([key, handler]); if ((0, _async.isThenable)(key)) {
return key.then(key => {
this._pairs.push([key, fn]);
return key;
});
}
this._pairs.push([key, fn]);
return key; return key;
} }
invalidate(handler) { invalidate(handler) {
if (!this._active) {
throw new Error("Cannot change caching after evaluation has completed.");
}
if (this._never || this._forever) {
throw new Error("Caching has already been configured with .never or .forever()");
}
this._invalidate = true; this._invalidate = true;
this._configured = true; return this.using(handler);
const key = handler(this._data);
this._pairs.push([key, handler]);
return key;
} }
validator() { validator() {
const pairs = this._pairs; const pairs = this._pairs;
return data => pairs.every(([key, fn]) => key === fn(data)); return function* (data) {
for (const [key, fn] of pairs) {
if (key !== (yield* fn(data))) return false;
}
return true;
};
} }
deactivate() { deactivate() {
@@ -191,9 +296,29 @@ function makeSimpleConfigurator(cache) {
} }
function assertSimpleType(value) { function assertSimpleType(value) {
if ((0, _async.isThenable)(value)) {
throw new Error(`You appear to be using an async cache handler, ` + `which your current version of Babel does not support. ` + `We may add support for this in the future, ` + `but if you're on the most recent version of @babel/core and still ` + `seeing this error, then you'll need to synchronously handle your caching logic.`);
}
if (value != null && typeof value !== "string" && typeof value !== "boolean" && typeof value !== "number") { if (value != null && typeof value !== "string" && typeof value !== "boolean" && typeof value !== "number") {
throw new Error("Cache keys must be either string, boolean, number, null, or undefined."); throw new Error("Cache keys must be either string, boolean, number, null, or undefined.");
} }
return value; return value;
}
class Lock {
constructor() {
this.released = false;
this.promise = new Promise(resolve => {
this._resolve = resolve;
});
}
release(value) {
this.released = true;
this._resolve(value);
}
} }

View File

@@ -31,6 +31,8 @@ var _options = require("./validation/options");
var _patternToRegex = _interopRequireDefault(require("./pattern-to-regex")); var _patternToRegex = _interopRequireDefault(require("./pattern-to-regex"));
var _printer = require("./printer");
var _files = require("./files"); var _files = require("./files");
var _caching = require("./caching"); var _caching = require("./caching");
@@ -41,8 +43,8 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
const debug = (0, _debug().default)("babel:config:config-chain"); const debug = (0, _debug().default)("babel:config:config-chain");
function buildPresetChain(arg, context) { function* buildPresetChain(arg, context) {
const chain = buildPresetChainWalker(arg, context); const chain = yield* buildPresetChainWalker(arg, context);
if (!chain) return null; if (!chain) return null;
return { return {
plugins: dedupDescriptors(chain.plugins), plugins: dedupDescriptors(chain.plugins),
@@ -52,30 +54,33 @@ function buildPresetChain(arg, context) {
} }
const buildPresetChainWalker = makeChainWalker({ const buildPresetChainWalker = makeChainWalker({
init: arg => arg,
root: preset => loadPresetDescriptors(preset), root: preset => loadPresetDescriptors(preset),
env: (preset, envName) => loadPresetEnvDescriptors(preset)(envName), env: (preset, envName) => loadPresetEnvDescriptors(preset)(envName),
overrides: (preset, index) => loadPresetOverridesDescriptors(preset)(index), overrides: (preset, index) => loadPresetOverridesDescriptors(preset)(index),
overridesEnv: (preset, index, envName) => loadPresetOverridesEnvDescriptors(preset)(index)(envName) overridesEnv: (preset, index, envName) => loadPresetOverridesEnvDescriptors(preset)(index)(envName),
createLogger: () => () => {}
}); });
exports.buildPresetChainWalker = buildPresetChainWalker; exports.buildPresetChainWalker = buildPresetChainWalker;
const loadPresetDescriptors = (0, _caching.makeWeakCache)(preset => buildRootDescriptors(preset, preset.alias, _configDescriptors.createUncachedDescriptors)); const loadPresetDescriptors = (0, _caching.makeWeakCacheSync)(preset => buildRootDescriptors(preset, preset.alias, _configDescriptors.createUncachedDescriptors));
const loadPresetEnvDescriptors = (0, _caching.makeWeakCache)(preset => (0, _caching.makeStrongCache)(envName => buildEnvDescriptors(preset, preset.alias, _configDescriptors.createUncachedDescriptors, envName))); const loadPresetEnvDescriptors = (0, _caching.makeWeakCacheSync)(preset => (0, _caching.makeStrongCacheSync)(envName => buildEnvDescriptors(preset, preset.alias, _configDescriptors.createUncachedDescriptors, envName)));
const loadPresetOverridesDescriptors = (0, _caching.makeWeakCache)(preset => (0, _caching.makeStrongCache)(index => buildOverrideDescriptors(preset, preset.alias, _configDescriptors.createUncachedDescriptors, index))); const loadPresetOverridesDescriptors = (0, _caching.makeWeakCacheSync)(preset => (0, _caching.makeStrongCacheSync)(index => buildOverrideDescriptors(preset, preset.alias, _configDescriptors.createUncachedDescriptors, index)));
const loadPresetOverridesEnvDescriptors = (0, _caching.makeWeakCache)(preset => (0, _caching.makeStrongCache)(index => (0, _caching.makeStrongCache)(envName => buildOverrideEnvDescriptors(preset, preset.alias, _configDescriptors.createUncachedDescriptors, index, envName)))); const loadPresetOverridesEnvDescriptors = (0, _caching.makeWeakCacheSync)(preset => (0, _caching.makeStrongCacheSync)(index => (0, _caching.makeStrongCacheSync)(envName => buildOverrideEnvDescriptors(preset, preset.alias, _configDescriptors.createUncachedDescriptors, index, envName))));
function buildRootChain(opts, context) { function* buildRootChain(opts, context) {
const programmaticChain = loadProgrammaticChain({ let configReport, babelRcReport;
const programmaticLogger = new _printer.ConfigPrinter();
const programmaticChain = yield* loadProgrammaticChain({
options: opts, options: opts,
dirname: context.cwd dirname: context.cwd
}, context); }, context, undefined, programmaticLogger);
if (!programmaticChain) return null; if (!programmaticChain) return null;
const programmaticReport = programmaticLogger.output();
let configFile; let configFile;
if (typeof opts.configFile === "string") { if (typeof opts.configFile === "string") {
configFile = (0, _files.loadConfig)(opts.configFile, context.cwd, context.envName, context.caller); configFile = yield* (0, _files.loadConfig)(opts.configFile, context.cwd, context.envName, context.caller);
} else if (opts.configFile !== false) { } else if (opts.configFile !== false) {
configFile = (0, _files.findRootConfig)(context.root, context.envName, context.caller); configFile = yield* (0, _files.findRootConfig)(context.root, context.envName, context.caller);
} }
let { let {
@@ -84,11 +89,13 @@ function buildRootChain(opts, context) {
} = opts; } = opts;
let babelrcRootsDirectory = context.cwd; let babelrcRootsDirectory = context.cwd;
const configFileChain = emptyChain(); const configFileChain = emptyChain();
const configFileLogger = new _printer.ConfigPrinter();
if (configFile) { if (configFile) {
const validatedFile = validateConfigFile(configFile); const validatedFile = validateConfigFile(configFile);
const result = loadFileChain(validatedFile, context); const result = yield* loadFileChain(validatedFile, context, undefined, configFileLogger);
if (!result) return null; if (!result) return null;
configReport = configFileLogger.output();
if (babelrc === undefined) { if (babelrc === undefined) {
babelrc = validatedFile.options.babelrc; babelrc = validatedFile.options.babelrc;
@@ -102,7 +109,7 @@ function buildRootChain(opts, context) {
mergeChain(configFileChain, result); mergeChain(configFileChain, result);
} }
const pkgData = typeof context.filename === "string" ? (0, _files.findPackageData)(context.filename) : null; const pkgData = typeof context.filename === "string" ? yield* (0, _files.findPackageData)(context.filename) : null;
let ignoreFile, babelrcFile; let ignoreFile, babelrcFile;
const fileChain = emptyChain(); const fileChain = emptyChain();
@@ -110,19 +117,27 @@ function buildRootChain(opts, context) {
({ ({
ignore: ignoreFile, ignore: ignoreFile,
config: babelrcFile config: babelrcFile
} = (0, _files.findRelativeConfig)(pkgData, context.envName, context.caller)); } = yield* (0, _files.findRelativeConfig)(pkgData, context.envName, context.caller));
if (ignoreFile && shouldIgnore(context, ignoreFile.ignore, null, ignoreFile.dirname)) { if (ignoreFile && shouldIgnore(context, ignoreFile.ignore, null, ignoreFile.dirname)) {
return null; return null;
} }
if (babelrcFile) { if (babelrcFile) {
const result = loadFileChain(validateBabelrcFile(babelrcFile), context); const validatedFile = validateBabelrcFile(babelrcFile);
const babelrcLogger = new _printer.ConfigPrinter();
const result = yield* loadFileChain(validatedFile, context, undefined, babelrcLogger);
if (!result) return null; if (!result) return null;
babelRcReport = babelrcLogger.output();
mergeChain(fileChain, result); mergeChain(fileChain, result);
} }
} }
if (context.showConfig) {
console.log(`Babel configs on "${context.filename}" (ascending priority):\n` + [configReport, babelRcReport, programmaticReport].filter(x => !!x).join("\n\n"));
return null;
}
const chain = mergeChain(mergeChain(mergeChain(emptyChain(), configFileChain), fileChain), programmaticChain); const chain = mergeChain(mergeChain(mergeChain(emptyChain(), configFileChain), fileChain), programmaticChain);
return { return {
plugins: dedupDescriptors(chain.plugins), plugins: dedupDescriptors(chain.plugins),
@@ -163,17 +178,17 @@ function babelrcLoadEnabled(context, pkgData, babelrcRoots, babelrcRootsDirector
}); });
} }
const validateConfigFile = (0, _caching.makeWeakCache)(file => ({ const validateConfigFile = (0, _caching.makeWeakCacheSync)(file => ({
filepath: file.filepath, filepath: file.filepath,
dirname: file.dirname, dirname: file.dirname,
options: (0, _options.validate)("configfile", file.options) options: (0, _options.validate)("configfile", file.options)
})); }));
const validateBabelrcFile = (0, _caching.makeWeakCache)(file => ({ const validateBabelrcFile = (0, _caching.makeWeakCacheSync)(file => ({
filepath: file.filepath, filepath: file.filepath,
dirname: file.dirname, dirname: file.dirname,
options: (0, _options.validate)("babelrcfile", file.options) options: (0, _options.validate)("babelrcfile", file.options)
})); }));
const validateExtendFile = (0, _caching.makeWeakCache)(file => ({ const validateExtendFile = (0, _caching.makeWeakCacheSync)(file => ({
filepath: file.filepath, filepath: file.filepath,
dirname: file.dirname, dirname: file.dirname,
options: (0, _options.validate)("extendsfile", file.options) options: (0, _options.validate)("extendsfile", file.options)
@@ -182,18 +197,30 @@ const loadProgrammaticChain = makeChainWalker({
root: input => buildRootDescriptors(input, "base", _configDescriptors.createCachedDescriptors), root: input => buildRootDescriptors(input, "base", _configDescriptors.createCachedDescriptors),
env: (input, envName) => buildEnvDescriptors(input, "base", _configDescriptors.createCachedDescriptors, envName), env: (input, envName) => buildEnvDescriptors(input, "base", _configDescriptors.createCachedDescriptors, envName),
overrides: (input, index) => buildOverrideDescriptors(input, "base", _configDescriptors.createCachedDescriptors, index), overrides: (input, index) => buildOverrideDescriptors(input, "base", _configDescriptors.createCachedDescriptors, index),
overridesEnv: (input, index, envName) => buildOverrideEnvDescriptors(input, "base", _configDescriptors.createCachedDescriptors, index, envName) overridesEnv: (input, index, envName) => buildOverrideEnvDescriptors(input, "base", _configDescriptors.createCachedDescriptors, index, envName),
createLogger: (input, context, baseLogger) => buildProgrammaticLogger(input, context, baseLogger)
}); });
const loadFileChain = makeChainWalker({ const loadFileChain = makeChainWalker({
root: file => loadFileDescriptors(file), root: file => loadFileDescriptors(file),
env: (file, envName) => loadFileEnvDescriptors(file)(envName), env: (file, envName) => loadFileEnvDescriptors(file)(envName),
overrides: (file, index) => loadFileOverridesDescriptors(file)(index), overrides: (file, index) => loadFileOverridesDescriptors(file)(index),
overridesEnv: (file, index, envName) => loadFileOverridesEnvDescriptors(file)(index)(envName) overridesEnv: (file, index, envName) => loadFileOverridesEnvDescriptors(file)(index)(envName),
createLogger: (file, context, baseLogger) => buildFileLogger(file.filepath, context, baseLogger)
}); });
const loadFileDescriptors = (0, _caching.makeWeakCache)(file => buildRootDescriptors(file, file.filepath, _configDescriptors.createUncachedDescriptors)); const loadFileDescriptors = (0, _caching.makeWeakCacheSync)(file => buildRootDescriptors(file, file.filepath, _configDescriptors.createUncachedDescriptors));
const loadFileEnvDescriptors = (0, _caching.makeWeakCache)(file => (0, _caching.makeStrongCache)(envName => buildEnvDescriptors(file, file.filepath, _configDescriptors.createUncachedDescriptors, envName))); const loadFileEnvDescriptors = (0, _caching.makeWeakCacheSync)(file => (0, _caching.makeStrongCacheSync)(envName => buildEnvDescriptors(file, file.filepath, _configDescriptors.createUncachedDescriptors, envName)));
const loadFileOverridesDescriptors = (0, _caching.makeWeakCache)(file => (0, _caching.makeStrongCache)(index => buildOverrideDescriptors(file, file.filepath, _configDescriptors.createUncachedDescriptors, index))); const loadFileOverridesDescriptors = (0, _caching.makeWeakCacheSync)(file => (0, _caching.makeStrongCacheSync)(index => buildOverrideDescriptors(file, file.filepath, _configDescriptors.createUncachedDescriptors, index)));
const loadFileOverridesEnvDescriptors = (0, _caching.makeWeakCache)(file => (0, _caching.makeStrongCache)(index => (0, _caching.makeStrongCache)(envName => buildOverrideEnvDescriptors(file, file.filepath, _configDescriptors.createUncachedDescriptors, index, envName)))); const loadFileOverridesEnvDescriptors = (0, _caching.makeWeakCacheSync)(file => (0, _caching.makeStrongCacheSync)(index => (0, _caching.makeStrongCacheSync)(envName => buildOverrideEnvDescriptors(file, file.filepath, _configDescriptors.createUncachedDescriptors, index, envName))));
function buildFileLogger(filepath, context, baseLogger) {
if (!baseLogger) {
return () => {};
}
return baseLogger.configure(context.showConfig, _printer.ChainFormatter.Config, {
filepath
});
}
function buildRootDescriptors({ function buildRootDescriptors({
dirname, dirname,
@@ -202,6 +229,18 @@ function buildRootDescriptors({
return descriptors(dirname, options, alias); return descriptors(dirname, options, alias);
} }
function buildProgrammaticLogger(_, context, baseLogger) {
var _context$caller;
if (!baseLogger) {
return () => {};
}
return baseLogger.configure(context.showConfig, _printer.ChainFormatter.Programmatic, {
callerName: (_context$caller = context.caller) == null ? void 0 : _context$caller.name
});
}
function buildEnvDescriptors({ function buildEnvDescriptors({
dirname, dirname,
options options
@@ -233,9 +272,10 @@ function makeChainWalker({
root, root,
env, env,
overrides, overrides,
overridesEnv overridesEnv,
createLogger
}) { }) {
return (input, context, files = new Set()) => { return function* (input, context, files = new Set(), baseLogger) {
const { const {
dirname dirname
} = input; } = input;
@@ -243,60 +283,84 @@ function makeChainWalker({
const rootOpts = root(input); const rootOpts = root(input);
if (configIsApplicable(rootOpts, dirname, context)) { if (configIsApplicable(rootOpts, dirname, context)) {
flattenedConfigs.push(rootOpts); flattenedConfigs.push({
config: rootOpts,
envName: undefined,
index: undefined
});
const envOpts = env(input, context.envName); const envOpts = env(input, context.envName);
if (envOpts && configIsApplicable(envOpts, dirname, context)) { if (envOpts && configIsApplicable(envOpts, dirname, context)) {
flattenedConfigs.push(envOpts); flattenedConfigs.push({
config: envOpts,
envName: context.envName,
index: undefined
});
} }
(rootOpts.options.overrides || []).forEach((_, index) => { (rootOpts.options.overrides || []).forEach((_, index) => {
const overrideOps = overrides(input, index); const overrideOps = overrides(input, index);
if (configIsApplicable(overrideOps, dirname, context)) { if (configIsApplicable(overrideOps, dirname, context)) {
flattenedConfigs.push(overrideOps); flattenedConfigs.push({
config: overrideOps,
index,
envName: undefined
});
const overrideEnvOpts = overridesEnv(input, index, context.envName); const overrideEnvOpts = overridesEnv(input, index, context.envName);
if (overrideEnvOpts && configIsApplicable(overrideEnvOpts, dirname, context)) { if (overrideEnvOpts && configIsApplicable(overrideEnvOpts, dirname, context)) {
flattenedConfigs.push(overrideEnvOpts); flattenedConfigs.push({
config: overrideEnvOpts,
index,
envName: context.envName
});
} }
} }
}); });
} }
if (flattenedConfigs.some(({ if (flattenedConfigs.some(({
options: { config: {
ignore, options: {
only ignore,
only
}
} }
}) => shouldIgnore(context, ignore, only, dirname))) { }) => shouldIgnore(context, ignore, only, dirname))) {
return null; return null;
} }
const chain = emptyChain(); const chain = emptyChain();
const logger = createLogger(input, context, baseLogger);
for (const op of flattenedConfigs) { for (const {
if (!mergeExtendsChain(chain, op.options, dirname, context, files)) { config,
index,
envName
} of flattenedConfigs) {
if (!(yield* mergeExtendsChain(chain, config.options, dirname, context, files, baseLogger))) {
return null; return null;
} }
mergeChainOpts(chain, op); logger(config, index, envName);
mergeChainOpts(chain, config);
} }
return chain; return chain;
}; };
} }
function mergeExtendsChain(chain, opts, dirname, context, files) { function* mergeExtendsChain(chain, opts, dirname, context, files, baseLogger) {
if (opts.extends === undefined) return true; if (opts.extends === undefined) return true;
const file = (0, _files.loadConfig)(opts.extends, dirname, context.envName, context.caller); const file = yield* (0, _files.loadConfig)(opts.extends, dirname, context.envName, context.caller);
if (files.has(file)) { if (files.has(file)) {
throw new Error(`Configuration cycle detected loading ${file.filepath}.\n` + `File already loaded following the config chain:\n` + Array.from(files, file => ` - ${file.filepath}`).join("\n")); throw new Error(`Configuration cycle detected loading ${file.filepath}.\n` + `File already loaded following the config chain:\n` + Array.from(files, file => ` - ${file.filepath}`).join("\n"));
} }
files.add(file); files.add(file);
const fileChain = loadFileChain(validateExtendFile(file), context, files); const fileChain = yield* loadFileChain(validateExtendFile(file), context, files, baseLogger);
files.delete(file); files.delete(file);
if (!fileChain) return false; if (!fileChain) return false;
mergeChain(chain, fileChain); mergeChain(chain, fileChain);
@@ -343,7 +407,7 @@ function normalizeOptions(opts) {
delete options.include; delete options.include;
delete options.exclude; delete options.exclude;
if (options.hasOwnProperty("sourceMap")) { if (Object.prototype.hasOwnProperty.call(options, "sourceMap")) {
options.sourceMaps = options.sourceMap; options.sourceMaps = options.sourceMap;
delete options.sourceMap; delete options.sourceMap;
} }
@@ -402,12 +466,28 @@ function configFieldIsApplicable(context, test, dirname) {
function shouldIgnore(context, ignore, only, dirname) { function shouldIgnore(context, ignore, only, dirname) {
if (ignore && matchesPatterns(context, ignore, dirname)) { if (ignore && matchesPatterns(context, ignore, dirname)) {
debug("Ignored %o because it matched one of %O from %o", context.filename, ignore, dirname); var _context$filename;
const message = `No config is applied to "${(_context$filename = context.filename) != null ? _context$filename : "(unknown)"}" because it matches one of \`ignore: ${JSON.stringify(ignore)}\` from "${dirname}"`;
debug(message);
if (context.showConfig) {
console.log(message);
}
return true; return true;
} }
if (only && !matchesPatterns(context, only, dirname)) { if (only && !matchesPatterns(context, only, dirname)) {
debug("Ignored %o because it failed to match one of %O from %o", context.filename, only, dirname); var _context$filename2;
const message = `No config is applied to "${(_context$filename2 = context.filename) != null ? _context$filename2 : "(unknown)"}" because it fails to match one of \`only: ${JSON.stringify(only)}\` from "${dirname}"`;
debug(message);
if (context.showConfig) {
console.log(message);
}
return true; return true;
} }

View File

@@ -53,14 +53,14 @@ function createUncachedDescriptors(dirname, options, alias) {
} }
const PRESET_DESCRIPTOR_CACHE = new WeakMap(); const PRESET_DESCRIPTOR_CACHE = new WeakMap();
const createCachedPresetDescriptors = (0, _caching.makeWeakCache)((items, cache) => { const createCachedPresetDescriptors = (0, _caching.makeWeakCacheSync)((items, cache) => {
const dirname = cache.using(dir => dir); const dirname = cache.using(dir => dir);
return (0, _caching.makeStrongCache)(alias => (0, _caching.makeStrongCache)(passPerPreset => createPresetDescriptors(items, dirname, alias, passPerPreset).map(desc => loadCachedDescriptor(PRESET_DESCRIPTOR_CACHE, desc)))); return (0, _caching.makeStrongCacheSync)(alias => (0, _caching.makeStrongCacheSync)(passPerPreset => createPresetDescriptors(items, dirname, alias, passPerPreset).map(desc => loadCachedDescriptor(PRESET_DESCRIPTOR_CACHE, desc))));
}); });
const PLUGIN_DESCRIPTOR_CACHE = new WeakMap(); const PLUGIN_DESCRIPTOR_CACHE = new WeakMap();
const createCachedPluginDescriptors = (0, _caching.makeWeakCache)((items, cache) => { const createCachedPluginDescriptors = (0, _caching.makeWeakCacheSync)((items, cache) => {
const dirname = cache.using(dir => dir); const dirname = cache.using(dir => dir);
return (0, _caching.makeStrongCache)(alias => createPluginDescriptors(items, dirname, alias).map(desc => loadCachedDescriptor(PLUGIN_DESCRIPTOR_CACHE, desc))); return (0, _caching.makeStrongCacheSync)(alias => createPluginDescriptors(items, dirname, alias).map(desc => loadCachedDescriptor(PLUGIN_DESCRIPTOR_CACHE, desc)));
}); });
const DEFAULT_OPTIONS = {}; const DEFAULT_OPTIONS = {};
@@ -202,7 +202,8 @@ function assertNoDuplicates(items) {
} }
if (nameMap.has(item.name)) { if (nameMap.has(item.name)) {
throw new Error([`Duplicate plugin/preset detected.`, `If you'd like to use two separate instances of a plugin,`, `they need separate names, e.g.`, ``, ` plugins: [`, ` ['some-plugin', {}],`, ` ['some-plugin', {}, 'some unique name'],`, ` ]`].join("\n")); const conflicts = items.filter(i => i.value === item.value);
throw new Error([`Duplicate plugin/preset detected.`, `If you'd like to use two separate instances of a plugin,`, `they need separate names, e.g.`, ``, ` plugins: [`, ` ['some-plugin', {}],`, ` ['some-plugin', {}, 'some unique name'],`, ` ]`, ``, `Duplicates detected are:`, `${JSON.stringify(conflicts, null, 2)}`].join("\n"));
} }
nameMap.add(item.name); nameMap.add(item.name);

View File

@@ -7,6 +7,8 @@ exports.findConfigUpwards = findConfigUpwards;
exports.findRelativeConfig = findRelativeConfig; exports.findRelativeConfig = findRelativeConfig;
exports.findRootConfig = findRootConfig; exports.findRootConfig = findRootConfig;
exports.loadConfig = loadConfig; exports.loadConfig = loadConfig;
exports.resolveShowConfigPath = resolveShowConfigPath;
exports.ROOT_CONFIG_FILENAMES = void 0;
function _debug() { function _debug() {
const data = _interopRequireDefault(require("debug")); const data = _interopRequireDefault(require("debug"));
@@ -28,16 +30,6 @@ function _path() {
return data; return data;
} }
function _fs() {
const data = _interopRequireDefault(require("fs"));
_fs = function () {
return data;
};
return data;
}
function _json() { function _json() {
const data = _interopRequireDefault(require("json5")); const data = _interopRequireDefault(require("json5"));
@@ -48,10 +40,10 @@ function _json() {
return data; return data;
} }
function _resolve() { function _gensync() {
const data = _interopRequireDefault(require("resolve")); const data = _interopRequireDefault(require("gensync"));
_resolve = function () { _gensync = function () {
return data; return data;
}; };
@@ -64,22 +56,34 @@ var _configApi = _interopRequireDefault(require("../helpers/config-api"));
var _utils = require("./utils"); var _utils = require("./utils");
var _moduleTypes = _interopRequireDefault(require("./module-types"));
var _patternToRegex = _interopRequireDefault(require("../pattern-to-regex")); var _patternToRegex = _interopRequireDefault(require("../pattern-to-regex"));
var fs = _interopRequireWildcard(require("../../gensync-utils/fs"));
var _resolve = _interopRequireDefault(require("../../gensync-utils/resolve"));
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const debug = (0, _debug().default)("babel:config:loading:files:configuration"); const debug = (0, _debug().default)("babel:config:loading:files:configuration");
const BABEL_CONFIG_JS_FILENAME = "babel.config.js"; const ROOT_CONFIG_FILENAMES = ["babel.config.js", "babel.config.cjs", "babel.config.mjs", "babel.config.json"];
const BABELRC_FILENAME = ".babelrc"; exports.ROOT_CONFIG_FILENAMES = ROOT_CONFIG_FILENAMES;
const BABELRC_JS_FILENAME = ".babelrc.js"; const RELATIVE_CONFIG_FILENAMES = [".babelrc", ".babelrc.js", ".babelrc.cjs", ".babelrc.mjs", ".babelrc.json"];
const BABELIGNORE_FILENAME = ".babelignore"; const BABELIGNORE_FILENAME = ".babelignore";
function findConfigUpwards(rootDir) { function* findConfigUpwards(rootDir) {
let dirname = rootDir; let dirname = rootDir;
while (true) { while (true) {
if (_fs().default.existsSync(_path().default.join(dirname, BABEL_CONFIG_JS_FILENAME))) { for (const filename of ROOT_CONFIG_FILENAMES) {
return dirname; if (yield* fs.exists(_path().default.join(dirname, filename))) {
return dirname;
}
} }
const nextDir = _path().default.dirname(dirname); const nextDir = _path().default.dirname(dirname);
@@ -91,7 +95,7 @@ function findConfigUpwards(rootDir) {
return null; return null;
} }
function findRelativeConfig(packageData, envName, caller) { function* findRelativeConfig(packageData, envName, caller) {
let config = null; let config = null;
let ignore = null; let ignore = null;
@@ -99,36 +103,15 @@ function findRelativeConfig(packageData, envName, caller) {
for (const loc of packageData.directories) { for (const loc of packageData.directories) {
if (!config) { if (!config) {
config = [BABELRC_FILENAME, BABELRC_JS_FILENAME].reduce((previousConfig, name) => { var _packageData$pkg;
const filepath = _path().default.join(loc, name);
const config = readConfig(filepath, envName, caller); config = yield* loadOneConfig(RELATIVE_CONFIG_FILENAMES, loc, envName, caller, ((_packageData$pkg = packageData.pkg) == null ? void 0 : _packageData$pkg.dirname) === loc ? packageToBabelConfig(packageData.pkg) : null);
if (config && previousConfig) {
throw new Error(`Multiple configuration files found. Please remove one:\n` + ` - ${_path().default.basename(previousConfig.filepath)}\n` + ` - ${name}\n` + `from ${loc}`);
}
return config || previousConfig;
}, null);
const pkgConfig = packageData.pkg && packageData.pkg.dirname === loc ? packageToBabelConfig(packageData.pkg) : null;
if (pkgConfig) {
if (config) {
throw new Error(`Multiple configuration files found. Please remove one:\n` + ` - ${_path().default.basename(pkgConfig.filepath)}#babel\n` + ` - ${_path().default.basename(config.filepath)}\n` + `from ${loc}`);
}
config = pkgConfig;
}
if (config) {
debug("Found configuration %o from %o.", config.filepath, dirname);
}
} }
if (!ignore) { if (!ignore) {
const ignoreLoc = _path().default.join(loc, BABELIGNORE_FILENAME); const ignoreLoc = _path().default.join(loc, BABELIGNORE_FILENAME);
ignore = readIgnoreConfig(ignoreLoc); ignore = yield* readIgnoreConfig(ignoreLoc);
if (ignore) { if (ignore) {
debug("Found ignore %o from %o.", ignore.filepath, dirname); debug("Found ignore %o from %o.", ignore.filepath, dirname);
@@ -143,23 +126,31 @@ function findRelativeConfig(packageData, envName, caller) {
} }
function findRootConfig(dirname, envName, caller) { function findRootConfig(dirname, envName, caller) {
const filepath = _path().default.resolve(dirname, BABEL_CONFIG_JS_FILENAME); return loadOneConfig(ROOT_CONFIG_FILENAMES, dirname, envName, caller);
const conf = readConfig(filepath, envName, caller);
if (conf) {
debug("Found root config %o in %o.", BABEL_CONFIG_JS_FILENAME, dirname);
}
return conf;
} }
function loadConfig(name, dirname, envName, caller) { function* loadOneConfig(names, dirname, envName, caller, previousConfig = null) {
const filepath = _resolve().default.sync(name, { const configs = yield* _gensync().default.all(names.map(filename => readConfig(_path().default.join(dirname, filename), envName, caller)));
const config = configs.reduce((previousConfig, config) => {
if (config && previousConfig) {
throw new Error(`Multiple configuration files found. Please remove one:\n` + ` - ${_path().default.basename(previousConfig.filepath)}\n` + ` - ${config.filepath}\n` + `from ${dirname}`);
}
return config || previousConfig;
}, previousConfig);
if (config) {
debug("Found configuration %o from %o.", config.filepath, dirname);
}
return config;
}
function* loadConfig(name, dirname, envName, caller) {
const filepath = yield* (0, _resolve.default)(name, {
basedir: dirname basedir: dirname
}); });
const conf = yield* readConfig(filepath, envName, caller);
const conf = readConfig(filepath, envName, caller);
if (!conf) { if (!conf) {
throw new Error(`Config file ${filepath} contains no configuration data`); throw new Error(`Config file ${filepath} contains no configuration data`);
@@ -170,15 +161,17 @@ function loadConfig(name, dirname, envName, caller) {
} }
function readConfig(filepath, envName, caller) { function readConfig(filepath, envName, caller) {
return _path().default.extname(filepath) === ".js" ? readConfigJS(filepath, { const ext = _path().default.extname(filepath);
return ext === ".js" || ext === ".cjs" || ext === ".mjs" ? readConfigJS(filepath, {
envName, envName,
caller caller
}) : readConfigJSON5(filepath); }) : readConfigJSON5(filepath);
} }
const LOADING_CONFIGS = new Set(); const LOADING_CONFIGS = new Set();
const readConfigJS = (0, _caching.makeStrongCache)((filepath, cache) => { const readConfigJS = (0, _caching.makeStrongCache)(function* readConfigJS(filepath, cache) {
if (!_fs().default.existsSync(filepath)) { if (!fs.exists.sync(filepath)) {
cache.forever(); cache.forever();
return null; return null;
} }
@@ -197,10 +190,7 @@ const readConfigJS = (0, _caching.makeStrongCache)((filepath, cache) => {
try { try {
LOADING_CONFIGS.add(filepath); LOADING_CONFIGS.add(filepath);
options = yield* (0, _moduleTypes.default)(filepath, "You appear to be using a native ECMAScript module configuration " + "file, which is only supported when running Babel asynchronously.");
const configModule = require(filepath);
options = configModule && configModule.__esModule ? configModule.default || undefined : configModule;
} catch (err) { } catch (err) {
err.message = `${filepath}: Error while loading config - ${err.message}`; err.message = `${filepath}: Error while loading config - ${err.message}`;
throw err; throw err;
@@ -208,9 +198,12 @@ const readConfigJS = (0, _caching.makeStrongCache)((filepath, cache) => {
LOADING_CONFIGS.delete(filepath); LOADING_CONFIGS.delete(filepath);
} }
let assertCache = false;
if (typeof options === "function") { if (typeof options === "function") {
yield* [];
options = options((0, _configApi.default)(cache)); options = options((0, _configApi.default)(cache));
if (!cache.configured()) throwConfigError(); assertCache = true;
} }
if (!options || typeof options !== "object" || Array.isArray(options)) { if (!options || typeof options !== "object" || Array.isArray(options)) {
@@ -221,13 +214,14 @@ const readConfigJS = (0, _caching.makeStrongCache)((filepath, cache) => {
throw new Error(`You appear to be using an async configuration, ` + `which your current version of Babel does not support. ` + `We may add support for this in the future, ` + `but if you're on the most recent version of @babel/core and still ` + `seeing this error, then you'll need to synchronously return your config.`); throw new Error(`You appear to be using an async configuration, ` + `which your current version of Babel does not support. ` + `We may add support for this in the future, ` + `but if you're on the most recent version of @babel/core and still ` + `seeing this error, then you'll need to synchronously return your config.`);
} }
if (assertCache && !cache.configured()) throwConfigError();
return { return {
filepath, filepath,
dirname: _path().default.dirname(filepath), dirname: _path().default.dirname(filepath),
options options
}; };
}); });
const packageToBabelConfig = (0, _caching.makeWeakCache)(file => { const packageToBabelConfig = (0, _caching.makeWeakCacheSync)(file => {
const babel = file.options["babel"]; const babel = file.options["babel"];
if (typeof babel === "undefined") return null; if (typeof babel === "undefined") return null;
@@ -285,6 +279,24 @@ const readIgnoreConfig = (0, _utils.makeStaticFileCache)((filepath, content) =>
}; };
}); });
function* resolveShowConfigPath(dirname) {
const targetPath = process.env.BABEL_SHOW_CONFIG_FOR;
if (targetPath != null) {
const absolutePath = _path().default.resolve(dirname, targetPath);
const stats = yield* fs.stat(absolutePath);
if (!stats.isFile()) {
throw new Error(`${absolutePath}: BABEL_SHOW_CONFIG_FOR must refer to a regular file, directories are not supported.`);
}
return absolutePath;
}
return null;
}
function throwConfigError() { function throwConfigError() {
throw new Error(`\ throw new Error(`\
Caching was left unconfigured. Babel's plugins, presets, and .babelrc.js files can be configured Caching was left unconfigured. Babel's plugins, presets, and .babelrc.js files can be configured

10
node_modules/@babel/core/lib/config/files/import.js generated vendored Normal file
View File

@@ -0,0 +1,10 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = import_;
function import_(filepath) {
return import(filepath);
}

View File

@@ -8,16 +8,18 @@ exports.findPackageData = findPackageData;
exports.findRelativeConfig = findRelativeConfig; exports.findRelativeConfig = findRelativeConfig;
exports.findRootConfig = findRootConfig; exports.findRootConfig = findRootConfig;
exports.loadConfig = loadConfig; exports.loadConfig = loadConfig;
exports.resolveShowConfigPath = resolveShowConfigPath;
exports.resolvePlugin = resolvePlugin; exports.resolvePlugin = resolvePlugin;
exports.resolvePreset = resolvePreset; exports.resolvePreset = resolvePreset;
exports.loadPlugin = loadPlugin; exports.loadPlugin = loadPlugin;
exports.loadPreset = loadPreset; exports.loadPreset = loadPreset;
exports.ROOT_CONFIG_FILENAMES = void 0;
function findConfigUpwards(rootDir) { function* findConfigUpwards(rootDir) {
return null; return null;
} }
function findPackageData(filepath) { function* findPackageData(filepath) {
return { return {
filepath, filepath,
directories: [], directories: [],
@@ -26,7 +28,7 @@ function findPackageData(filepath) {
}; };
} }
function findRelativeConfig(pkgData, envName, caller) { function* findRelativeConfig(pkgData, envName, caller) {
return { return {
pkg: null, pkg: null,
config: null, config: null,
@@ -34,14 +36,21 @@ function findRelativeConfig(pkgData, envName, caller) {
}; };
} }
function findRootConfig(dirname, envName, caller) { function* findRootConfig(dirname, envName, caller) {
return null; return null;
} }
function loadConfig(name, dirname, envName, caller) { function* loadConfig(name, dirname, envName, caller) {
throw new Error(`Cannot load ${name} relative to ${dirname} in a browser`); throw new Error(`Cannot load ${name} relative to ${dirname} in a browser`);
} }
function* resolveShowConfigPath(dirname) {
return null;
}
const ROOT_CONFIG_FILENAMES = [];
exports.ROOT_CONFIG_FILENAMES = ROOT_CONFIG_FILENAMES;
function resolvePlugin(name, dirname) { function resolvePlugin(name, dirname) {
return null; return null;
} }

View File

@@ -33,6 +33,18 @@ Object.defineProperty(exports, "loadConfig", {
return _configuration.loadConfig; return _configuration.loadConfig;
} }
}); });
Object.defineProperty(exports, "resolveShowConfigPath", {
enumerable: true,
get: function () {
return _configuration.resolveShowConfigPath;
}
});
Object.defineProperty(exports, "ROOT_CONFIG_FILENAMES", {
enumerable: true,
get: function () {
return _configuration.ROOT_CONFIG_FILENAMES;
}
});
Object.defineProperty(exports, "resolvePlugin", { Object.defineProperty(exports, "resolvePlugin", {
enumerable: true, enumerable: true,
get: function () { get: function () {

View File

@@ -0,0 +1,96 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = loadCjsOrMjsDefault;
var _async = require("../../gensync-utils/async");
function _path() {
const data = _interopRequireDefault(require("path"));
_path = function () {
return data;
};
return data;
}
function _url() {
const data = require("url");
_url = function () {
return data;
};
return data;
}
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
let import_;
try {
import_ = require("./import").default;
} catch (_unused) {}
function* loadCjsOrMjsDefault(filepath, asyncError) {
switch (guessJSModuleType(filepath)) {
case "cjs":
return loadCjsDefault(filepath);
case "unknown":
try {
return loadCjsDefault(filepath);
} catch (e) {
if (e.code !== "ERR_REQUIRE_ESM") throw e;
}
case "mjs":
if (yield* (0, _async.isAsync)()) {
return yield* (0, _async.waitFor)(loadMjsDefault(filepath));
}
throw new Error(asyncError);
}
}
function guessJSModuleType(filename) {
switch (_path().default.extname(filename)) {
case ".cjs":
return "cjs";
case ".mjs":
return "mjs";
default:
return "unknown";
}
}
function loadCjsDefault(filepath) {
const module = require(filepath);
return (module == null ? void 0 : module.__esModule) ? module.default || undefined : module;
}
function loadMjsDefault(_x) {
return _loadMjsDefault.apply(this, arguments);
}
function _loadMjsDefault() {
_loadMjsDefault = _asyncToGenerator(function* (filepath) {
if (!import_) {
throw new Error("Internal error: Native ECMAScript modules aren't supported" + " by this platform.\n");
}
const module = yield import_((0, _url().pathToFileURL)(filepath));
return module.default;
});
return _loadMjsDefault.apply(this, arguments);
}

View File

@@ -21,7 +21,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
const PACKAGE_FILENAME = "package.json"; const PACKAGE_FILENAME = "package.json";
function findPackageData(filepath) { function* findPackageData(filepath) {
let pkg = null; let pkg = null;
const directories = []; const directories = [];
let isPackage = true; let isPackage = true;
@@ -30,7 +30,7 @@ function findPackageData(filepath) {
while (!pkg && _path().default.basename(dirname) !== "node_modules") { while (!pkg && _path().default.basename(dirname) !== "node_modules") {
directories.push(dirname); directories.push(dirname);
pkg = readConfigPackage(_path().default.join(dirname, PACKAGE_FILENAME)); pkg = yield* readConfigPackage(_path().default.join(dirname, PACKAGE_FILENAME));
const nextLoc = _path().default.dirname(dirname); const nextLoc = _path().default.dirname(dirname);
@@ -60,6 +60,8 @@ const readConfigPackage = (0, _utils.makeStaticFileCache)((filepath, content) =>
throw err; throw err;
} }
if (!options) throw new Error(`${filepath}: No config detected`);
if (typeof options !== "object") { if (typeof options !== "object") {
throw new Error(`${filepath}: Config returned typeof ${typeof options}`); throw new Error(`${filepath}: Config returned typeof ${typeof options}`);
} }

View File

@@ -113,7 +113,7 @@ function resolveStandardizedName(type, name, dirname = process.cwd()) {
}); });
resolvedOriginal = true; resolvedOriginal = true;
} catch (e2) {} } catch (_unused) {}
if (resolvedOriginal) { if (resolvedOriginal) {
e.message += `\n- If you want to resolve "${name}", use "module:${name}"`; e.message += `\n- If you want to resolve "${name}", use "module:${name}"`;
@@ -128,7 +128,7 @@ function resolveStandardizedName(type, name, dirname = process.cwd()) {
}); });
resolvedBabel = true; resolvedBabel = true;
} catch (e2) {} } catch (_unused2) {}
if (resolvedBabel) { if (resolvedBabel) {
e.message += `\n- Did you mean "@babel/${name}"?`; e.message += `\n- Did you mean "@babel/${name}"?`;
@@ -143,7 +143,7 @@ function resolveStandardizedName(type, name, dirname = process.cwd()) {
}); });
resolvedOppositeType = true; resolvedOppositeType = true;
} catch (e2) {} } catch (_unused3) {}
if (resolvedOppositeType) { if (resolvedOppositeType) {
e.message += `\n- Did you accidentally pass a ${oppositeType} as a ${type}?`; e.message += `\n- Did you accidentally pass a ${oppositeType} as a ${type}?`;

View File

@@ -5,34 +5,41 @@ Object.defineProperty(exports, "__esModule", {
}); });
exports.makeStaticFileCache = makeStaticFileCache; exports.makeStaticFileCache = makeStaticFileCache;
function _fs() { var _caching = require("../caching");
var fs = _interopRequireWildcard(require("../../gensync-utils/fs"));
function _fs2() {
const data = _interopRequireDefault(require("fs")); const data = _interopRequireDefault(require("fs"));
_fs = function () { _fs2 = function () {
return data; return data;
}; };
return data; return data;
} }
var _caching = require("../caching");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function makeStaticFileCache(fn) { function makeStaticFileCache(fn) {
return (0, _caching.makeStrongCache)((filepath, cache) => { return (0, _caching.makeStrongCache)(function* (filepath, cache) {
if (cache.invalidate(() => fileMtime(filepath)) === null) { const cached = cache.invalidate(() => fileMtime(filepath));
cache.forever();
if (cached === null) {
return null; return null;
} }
return fn(filepath, _fs().default.readFileSync(filepath, "utf8")); return fn(filepath, yield* fs.readFile(filepath, "utf8"));
}); });
} }
function fileMtime(filepath) { function fileMtime(filepath) {
try { try {
return +_fs().default.statSync(filepath).mtime; return +_fs2().default.statSync(filepath).mtime;
} catch (e) { } catch (e) {
if (e.code !== "ENOENT" && e.code !== "ENOTDIR") throw e; if (e.code !== "ENOENT" && e.code !== "ENOTDIR") throw e;
} }

View File

@@ -3,7 +3,19 @@
Object.defineProperty(exports, "__esModule", { Object.defineProperty(exports, "__esModule", {
value: true value: true
}); });
exports.default = loadFullConfig; exports.default = void 0;
function _gensync() {
const data = _interopRequireDefault(require("gensync"));
_gensync = function () {
return data;
};
return data;
}
var _async = require("../gensync-utils/async");
var _util = require("./util"); var _util = require("./util");
@@ -35,12 +47,14 @@ var _configApi = _interopRequireDefault(require("./helpers/config-api"));
var _partial = _interopRequireDefault(require("./partial")); var _partial = _interopRequireDefault(require("./partial"));
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } } var _default = (0, _gensync().default)(function* loadFullConfig(inputOpts) {
const result = yield* (0, _partial.default)(inputOpts);
function loadFullConfig(inputOpts) {
const result = (0, _partial.default)(inputOpts);
if (!result) { if (!result) {
return null; return null;
@@ -63,35 +77,55 @@ function loadFullConfig(inputOpts) {
throw new Error("Assertion failure - plugins and presets exist"); throw new Error("Assertion failure - plugins and presets exist");
} }
const ignored = function recurseDescriptors(config, pass) { const ignored = yield* function* recurseDescriptors(config, pass) {
const plugins = config.plugins.reduce((acc, descriptor) => { const plugins = [];
if (descriptor.options !== false) {
acc.push(loadPluginDescriptor(descriptor, context));
}
return acc; for (let i = 0; i < config.plugins.length; i++) {
}, []); const descriptor = config.plugins[i];
const presets = config.presets.reduce((acc, descriptor) => {
if (descriptor.options !== false) {
acc.push({
preset: loadPresetDescriptor(descriptor, context),
pass: descriptor.ownPass ? [] : pass
});
}
return acc; if (descriptor.options !== false) {
}, []); try {
plugins.push(yield* loadPluginDescriptor(descriptor, context));
} catch (e) {
if (i > 0 && e.code === "BABEL_UNKNOWN_PLUGIN_PROPERTY") {
(0, _options.checkNoUnwrappedItemOptionPairs)(config.plugins[i - 1], descriptor, "plugin", i, e);
}
throw e;
}
}
}
const presets = [];
for (let i = 0; i < config.presets.length; i++) {
const descriptor = config.presets[i];
if (descriptor.options !== false) {
try {
presets.push({
preset: yield* loadPresetDescriptor(descriptor, context),
pass: descriptor.ownPass ? [] : pass
});
} catch (e) {
if (i > 0 && e.code === "BABEL_UNKNOWN_OPTION") {
(0, _options.checkNoUnwrappedItemOptionPairs)(config.presets[i - 1], descriptor, "preset", i, e);
}
throw e;
}
}
}
if (presets.length > 0) { if (presets.length > 0) {
passes.splice(1, 0, ...presets.map(o => o.pass).filter(p => p !== pass)); passes.splice(1, 0, ...presets.map(o => o.pass).filter(p => p !== pass));
for (const _ref of presets) { for (const {
const { preset,
preset, pass
pass } of presets) {
} = _ref;
if (!preset) return true; if (!preset) return true;
const ignored = recurseDescriptors({ const ignored = yield* recurseDescriptors({
plugins: preset.plugins, plugins: preset.plugins,
presets: preset.presets presets: preset.presets
}, pass); }, pass);
@@ -125,7 +159,6 @@ function loadFullConfig(inputOpts) {
return desc; return desc;
}) })
}, passes[0]); }, passes[0]);
if (ignored) return null; if (ignored) return null;
} catch (e) { } catch (e) {
if (!/^\[BABEL\]/.test(e.message)) { if (!/^\[BABEL\]/.test(e.message)) {
@@ -146,14 +179,15 @@ function loadFullConfig(inputOpts) {
options: opts, options: opts,
passes: passes passes: passes
}; };
} });
const loadDescriptor = (0, _caching.makeWeakCache)(({ exports.default = _default;
const loadDescriptor = (0, _caching.makeWeakCache)(function* ({
value, value,
options, options,
dirname, dirname,
alias alias
}, cache) => { }, cache) {
if (options === false) throw new Error("Assertion failure"); if (options === false) throw new Error("Assertion failure");
options = options || {}; options = options || {};
let item = value; let item = value;
@@ -177,6 +211,7 @@ const loadDescriptor = (0, _caching.makeWeakCache)(({
} }
if (typeof item.then === "function") { if (typeof item.then === "function") {
yield* [];
throw new Error(`You appear to be using an async plugin, ` + `which your current version of Babel does not support. ` + `If you're using a published plugin, ` + `you may need to upgrade your @babel/core version.`); throw new Error(`You appear to be using an async plugin, ` + `which your current version of Babel does not support. ` + `If you're using a published plugin, ` + `you may need to upgrade your @babel/core version.`);
} }
@@ -188,7 +223,7 @@ const loadDescriptor = (0, _caching.makeWeakCache)(({
}; };
}); });
function loadPluginDescriptor(descriptor, context) { function* loadPluginDescriptor(descriptor, context) {
if (descriptor.value instanceof _plugin.default) { if (descriptor.value instanceof _plugin.default) {
if (descriptor.options) { if (descriptor.options) {
throw new Error("Passed options to an existing Plugin instance will not work."); throw new Error("Passed options to an existing Plugin instance will not work.");
@@ -197,15 +232,15 @@ function loadPluginDescriptor(descriptor, context) {
return descriptor.value; return descriptor.value;
} }
return instantiatePlugin(loadDescriptor(descriptor, context), context); return yield* instantiatePlugin(yield* loadDescriptor(descriptor, context), context);
} }
const instantiatePlugin = (0, _caching.makeWeakCache)(({ const instantiatePlugin = (0, _caching.makeWeakCache)(function* ({
value, value,
options, options,
dirname, dirname,
alias alias
}, cache) => { }, cache) {
const pluginObj = (0, _plugins.validatePluginObject)(value); const pluginObj = (0, _plugins.validatePluginObject)(value);
const plugin = Object.assign({}, pluginObj); const plugin = Object.assign({}, pluginObj);
@@ -221,7 +256,9 @@ const instantiatePlugin = (0, _caching.makeWeakCache)(({
options, options,
dirname dirname
}; };
const inherits = cache.invalidate(data => loadPluginDescriptor(inheritsDescriptor, data)); const inherits = yield* (0, _async.forwardAsync)(loadPluginDescriptor, run => {
return cache.invalidate(data => run(inheritsDescriptor, data));
});
plugin.pre = chain(inherits.pre, plugin.pre); plugin.pre = chain(inherits.pre, plugin.pre);
plugin.post = chain(inherits.post, plugin.post); plugin.post = chain(inherits.post, plugin.post);
plugin.manipulateOptions = chain(inherits.manipulateOptions, plugin.manipulateOptions); plugin.manipulateOptions = chain(inherits.manipulateOptions, plugin.manipulateOptions);
@@ -231,11 +268,33 @@ const instantiatePlugin = (0, _caching.makeWeakCache)(({
return new _plugin.default(plugin, options, alias); return new _plugin.default(plugin, options, alias);
}); });
const loadPresetDescriptor = (descriptor, context) => { const validateIfOptionNeedsFilename = (options, descriptor) => {
return (0, _configChain.buildPresetChain)(instantiatePreset(loadDescriptor(descriptor, context)), context); if (options.test || options.include || options.exclude) {
const formattedPresetName = descriptor.name ? `"${descriptor.name}"` : "/* your preset */";
throw new Error([`Preset ${formattedPresetName} requires a filename to be set when babel is called directly,`, `\`\`\``, `babel.transform(code, { filename: 'file.ts', presets: [${formattedPresetName}] });`, `\`\`\``, `See https://babeljs.io/docs/en/options#filename for more information.`].join("\n"));
}
}; };
const instantiatePreset = (0, _caching.makeWeakCache)(({ const validatePreset = (preset, context, descriptor) => {
if (!context.filename) {
const {
options
} = preset;
validateIfOptionNeedsFilename(options, descriptor);
if (options.overrides) {
options.overrides.forEach(overrideOptions => validateIfOptionNeedsFilename(overrideOptions, descriptor));
}
}
};
function* loadPresetDescriptor(descriptor, context) {
const preset = instantiatePreset(yield* loadDescriptor(descriptor, context));
validatePreset(preset, context, descriptor);
return yield* (0, _configChain.buildPresetChain)(preset, context);
}
const instantiatePreset = (0, _caching.makeWeakCacheSync)(({
value, value,
dirname, dirname,
alias alias

View File

@@ -47,8 +47,7 @@ function makeAPI(cache) {
env, env,
async: () => false, async: () => false,
caller, caller,
assertVersion, assertVersion
tokTypes: undefined
}; };
} }

View File

@@ -3,19 +3,23 @@
Object.defineProperty(exports, "__esModule", { Object.defineProperty(exports, "__esModule", {
value: true value: true
}); });
exports.loadOptions = loadOptions;
Object.defineProperty(exports, "default", { Object.defineProperty(exports, "default", {
enumerable: true, enumerable: true,
get: function () { get: function () {
return _full.default; return _full.default;
} }
}); });
Object.defineProperty(exports, "loadPartialConfig", { exports.loadOptionsAsync = exports.loadOptionsSync = exports.loadOptions = exports.loadPartialConfigAsync = exports.loadPartialConfigSync = exports.loadPartialConfig = void 0;
enumerable: true,
get: function () { function _gensync() {
return _partial.loadPartialConfig; const data = _interopRequireDefault(require("gensync"));
}
}); _gensync = function () {
return data;
};
return data;
}
var _full = _interopRequireDefault(require("./full")); var _full = _interopRequireDefault(require("./full"));
@@ -23,7 +27,31 @@ var _partial = require("./partial");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function loadOptions(opts) { const loadOptionsRunner = (0, _gensync().default)(function* (opts) {
const config = (0, _full.default)(opts); var _config$options;
return config ? config.options : null;
} const config = yield* (0, _full.default)(opts);
return (_config$options = config == null ? void 0 : config.options) != null ? _config$options : null;
});
const maybeErrback = runner => (opts, callback) => {
if (callback === undefined && typeof opts === "function") {
callback = opts;
opts = undefined;
}
return callback ? runner.errback(opts, callback) : runner.sync(opts);
};
const loadPartialConfig = maybeErrback(_partial.loadPartialConfig);
exports.loadPartialConfig = loadPartialConfig;
const loadPartialConfigSync = _partial.loadPartialConfig.sync;
exports.loadPartialConfigSync = loadPartialConfigSync;
const loadPartialConfigAsync = _partial.loadPartialConfig.async;
exports.loadPartialConfigAsync = loadPartialConfigAsync;
const loadOptions = maybeErrback(loadOptionsRunner);
exports.loadOptions = loadOptions;
const loadOptionsSync = loadOptionsRunner.sync;
exports.loadOptionsSync = loadOptionsSync;
const loadOptionsAsync = loadOptionsRunner.async;
exports.loadOptionsAsync = loadOptionsAsync;

View File

@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
value: true value: true
}); });
exports.default = loadPrivatePartialConfig; exports.default = loadPrivatePartialConfig;
exports.loadPartialConfig = loadPartialConfig; exports.loadPartialConfig = void 0;
function _path() { function _path() {
const data = _interopRequireDefault(require("path")); const data = _interopRequireDefault(require("path"));
@@ -16,6 +16,16 @@ function _path() {
return data; return data;
} }
function _gensync() {
const data = _interopRequireDefault(require("gensync"));
_gensync = function () {
return data;
};
return data;
}
var _plugin = _interopRequireDefault(require("./plugin")); var _plugin = _interopRequireDefault(require("./plugin"));
var _util = require("./util"); var _util = require("./util");
@@ -32,33 +42,33 @@ var _files = require("./files");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function resolveRootMode(rootDir, rootMode) { function* resolveRootMode(rootDir, rootMode) {
switch (rootMode) { switch (rootMode) {
case "root": case "root":
return rootDir; return rootDir;
case "upward-optional": case "upward-optional":
{ {
const upwardRootDir = (0, _files.findConfigUpwards)(rootDir); const upwardRootDir = yield* (0, _files.findConfigUpwards)(rootDir);
return upwardRootDir === null ? rootDir : upwardRootDir; return upwardRootDir === null ? rootDir : upwardRootDir;
} }
case "upward": case "upward":
{ {
const upwardRootDir = (0, _files.findConfigUpwards)(rootDir); const upwardRootDir = yield* (0, _files.findConfigUpwards)(rootDir);
if (upwardRootDir !== null) return upwardRootDir; if (upwardRootDir !== null) return upwardRootDir;
throw Object.assign(new Error(`Babel was run with rootMode:"upward" but a root could not ` + `be found when searching upward from "${rootDir}"`), { throw Object.assign(new Error(`Babel was run with rootMode:"upward" but a root could not ` + `be found when searching upward from "${rootDir}".\n` + `One of the following config files must be in the directory tree: ` + `"${_files.ROOT_CONFIG_FILENAMES.join(", ")}".`), {
code: "BABEL_ROOT_NOT_FOUND", code: "BABEL_ROOT_NOT_FOUND",
dirname: rootDir dirname: rootDir
}); });
} }
default: default:
throw new Error(`Assertion failure - unknown rootMode value`); throw new Error(`Assertion failure - unknown rootMode value.`);
} }
} }
function loadPrivatePartialConfig(inputOpts) { function* loadPrivatePartialConfig(inputOpts) {
if (inputOpts != null && (typeof inputOpts !== "object" || Array.isArray(inputOpts))) { if (inputOpts != null && (typeof inputOpts !== "object" || Array.isArray(inputOpts))) {
throw new Error("Babel options must be an object, null, or undefined"); throw new Error("Babel options must be an object, null, or undefined");
} }
@@ -69,25 +79,30 @@ function loadPrivatePartialConfig(inputOpts) {
cwd = ".", cwd = ".",
root: rootDir = ".", root: rootDir = ".",
rootMode = "root", rootMode = "root",
caller caller,
cloneInputAst = true
} = args; } = args;
const absoluteCwd = _path().default.resolve(cwd); const absoluteCwd = _path().default.resolve(cwd);
const absoluteRootDir = resolveRootMode(_path().default.resolve(absoluteCwd, rootDir), rootMode); const absoluteRootDir = yield* resolveRootMode(_path().default.resolve(absoluteCwd, rootDir), rootMode);
const filename = typeof args.filename === "string" ? _path().default.resolve(cwd, args.filename) : undefined;
const showConfigPath = yield* (0, _files.resolveShowConfigPath)(absoluteCwd);
const context = { const context = {
filename: typeof args.filename === "string" ? _path().default.resolve(cwd, args.filename) : undefined, filename,
cwd: absoluteCwd, cwd: absoluteCwd,
root: absoluteRootDir, root: absoluteRootDir,
envName, envName,
caller caller,
showConfig: showConfigPath === filename
}; };
const configChain = (0, _configChain.buildRootChain)(args, context); const configChain = yield* (0, _configChain.buildRootChain)(args, context);
if (!configChain) return null; if (!configChain) return null;
const options = {}; const options = {};
configChain.options.forEach(opts => { configChain.options.forEach(opts => {
(0, _util.mergeOptions)(options, opts); (0, _util.mergeOptions)(options, opts);
}); });
options.cloneInputAst = cloneInputAst;
options.babelrc = false; options.babelrc = false;
options.configFile = false; options.configFile = false;
options.passPerPreset = false; options.passPerPreset = false;
@@ -106,8 +121,8 @@ function loadPrivatePartialConfig(inputOpts) {
}; };
} }
function loadPartialConfig(inputOpts) { const loadPartialConfig = (0, _gensync().default)(function* (inputOpts) {
const result = loadPrivatePartialConfig(inputOpts); const result = yield* loadPrivatePartialConfig(inputOpts);
if (!result) return null; if (!result) return null;
const { const {
options, options,
@@ -121,7 +136,8 @@ function loadPartialConfig(inputOpts) {
} }
}); });
return new PartialConfig(options, babelrc ? babelrc.filepath : undefined, ignore ? ignore.filepath : undefined, config ? config.filepath : undefined); return new PartialConfig(options, babelrc ? babelrc.filepath : undefined, ignore ? ignore.filepath : undefined, config ? config.filepath : undefined);
} });
exports.loadPartialConfig = loadPartialConfig;
class PartialConfig { class PartialConfig {
constructor(options, babelrc, ignore, config) { constructor(options, babelrc, ignore, config) {

127
node_modules/@babel/core/lib/config/printer.js generated vendored Normal file
View File

@@ -0,0 +1,127 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.ConfigPrinter = exports.ChainFormatter = void 0;
const ChainFormatter = {
Programmatic: 0,
Config: 1
};
exports.ChainFormatter = ChainFormatter;
const Formatter = {
title(type, callerName, filepath) {
let title = "";
if (type === ChainFormatter.Programmatic) {
title = "programmatic options";
if (callerName) {
title += " from " + callerName;
}
} else {
title = "config " + filepath;
}
return title;
},
loc(index, envName) {
let loc = "";
if (index != null) {
loc += `.overrides[${index}]`;
}
if (envName != null) {
loc += `.env["${envName}"]`;
}
return loc;
},
optionsAndDescriptors(opt) {
const content = Object.assign({}, opt.options);
delete content.overrides;
delete content.env;
const pluginDescriptors = [...opt.plugins()];
if (pluginDescriptors.length) {
content.plugins = pluginDescriptors.map(d => descriptorToConfig(d));
}
const presetDescriptors = [...opt.presets()];
if (presetDescriptors.length) {
content.presets = [...presetDescriptors].map(d => descriptorToConfig(d));
}
return JSON.stringify(content, undefined, 2);
}
};
function descriptorToConfig(d) {
var _d$file;
let name = (_d$file = d.file) == null ? void 0 : _d$file.request;
if (name == null) {
if (typeof d.value === "object") {
name = d.value;
} else if (typeof d.value === "function") {
name = `[Function: ${d.value.toString().substr(0, 50)} ... ]`;
}
}
if (name == null) {
name = "[Unknown]";
}
if (d.options === undefined) {
return name;
} else if (d.name == null) {
return [name, d.options];
} else {
return [name, d.options, d.name];
}
}
class ConfigPrinter {
constructor() {
this._stack = [];
}
configure(enabled, type, {
callerName,
filepath
}) {
if (!enabled) return () => {};
return (content, index, envName) => {
this._stack.push({
type,
callerName,
filepath,
content,
index,
envName
});
};
}
static format(config) {
let title = Formatter.title(config.type, config.callerName, config.filepath);
const loc = Formatter.loc(config.index, config.envName);
if (loc) title += ` ${loc}`;
const content = Formatter.optionsAndDescriptors(config.content);
return `${title}\n${content}`;
}
output() {
if (this._stack.length === 0) return "";
return this._stack.map(s => ConfigPrinter.format(s)).join("\n\n");
}
}
exports.ConfigPrinter = ConfigPrinter;

View File

@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
value: true value: true
}); });
exports.mergeOptions = mergeOptions; exports.mergeOptions = mergeOptions;
exports.isIterableIterator = isIterableIterator;
function mergeOptions(target, source) { function mergeOptions(target, source) {
for (const k of Object.keys(source)) { for (const k of Object.keys(source)) {
@@ -27,4 +28,8 @@ function mergeDefaultFields(target, source) {
const val = source[k]; const val = source[k];
if (val !== undefined) target[k] = val; if (val !== undefined) target[k] = val;
} }
}
function isIterableIterator(value) {
return !!value && typeof value.next === "function" && typeof value[Symbol.iterator] === "function";
} }

View File

@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
value: true value: true
}); });
exports.validate = validate; exports.validate = validate;
exports.checkNoUnwrappedItemOptionPairs = checkNoUnwrappedItemOptionPairs;
var _plugin = _interopRequireDefault(require("../plugin")); var _plugin = _interopRequireDefault(require("../plugin"));
@@ -23,6 +24,7 @@ const ROOT_VALIDATORS = {
filenameRelative: _optionAssertions.assertString, filenameRelative: _optionAssertions.assertString,
code: _optionAssertions.assertBoolean, code: _optionAssertions.assertBoolean,
ast: _optionAssertions.assertBoolean, ast: _optionAssertions.assertBoolean,
cloneInputAst: _optionAssertions.assertBoolean,
envName: _optionAssertions.assertString envName: _optionAssertions.assertString
}; };
const BABELRC_VALIDATORS = { const BABELRC_VALIDATORS = {
@@ -117,10 +119,11 @@ function throwUnknownError(loc) {
message, message,
version = 5 version = 5
} = _removed.default[key]; } = _removed.default[key];
throw new ReferenceError(`Using removed Babel ${version} option: ${(0, _optionAssertions.msg)(loc)} - ${message}`); throw new Error(`Using removed Babel ${version} option: ${(0, _optionAssertions.msg)(loc)} - ${message}`);
} else { } else {
const unknownOptErr = `Unknown option: ${(0, _optionAssertions.msg)(loc)}. Check out https://babeljs.io/docs/en/babel-core/#options for more information about options.`; const unknownOptErr = new Error(`Unknown option: ${(0, _optionAssertions.msg)(loc)}. Check out https://babeljs.io/docs/en/babel-core/#options for more information about options.`);
throw new ReferenceError(unknownOptErr); unknownOptErr.code = "BABEL_UNKNOWN_OPTION";
throw unknownOptErr;
} }
} }
@@ -185,4 +188,10 @@ function assertOverridesList(loc, value) {
} }
return arr; return arr;
}
function checkNoUnwrappedItemOptionPairs(lastItem, thisItem, type, index, e) {
if (lastItem.file && lastItem.options === undefined && typeof thisItem.value === "object") {
e.message += `\n- Maybe you meant to use\n` + `"${type}": [\n ["${lastItem.file.request}", ${JSON.stringify(thisItem.value, undefined, 2)}]\n]\n` + `To be a valid ${type}, its name and options should be wrapped in a pair of brackets`;
}
} }

View File

@@ -18,14 +18,14 @@ const VALIDATORS = {
generatorOverride: _optionAssertions.assertFunction generatorOverride: _optionAssertions.assertFunction
}; };
function assertVisitorMap(key, value) { function assertVisitorMap(loc, value) {
const obj = (0, _optionAssertions.assertObject)(key, value); const obj = (0, _optionAssertions.assertObject)(loc, value);
if (obj) { if (obj) {
Object.keys(obj).forEach(prop => assertVisitorHandler(prop, obj[prop])); Object.keys(obj).forEach(prop => assertVisitorHandler(prop, obj[prop]));
if (obj.enter || obj.exit) { if (obj.enter || obj.exit) {
throw new Error(`.${key} cannot contain catch-all "enter" or "exit" handlers. Please target individual nodes.`); throw new Error(`${(0, _optionAssertions.msg)(loc)} cannot contain catch-all "enter" or "exit" handlers. Please target individual nodes.`);
} }
} }
@@ -47,9 +47,25 @@ function assertVisitorHandler(key, value) {
} }
function validatePluginObject(obj) { function validatePluginObject(obj) {
const rootPath = {
type: "root",
source: "plugin"
};
Object.keys(obj).forEach(key => { Object.keys(obj).forEach(key => {
const validator = VALIDATORS[key]; const validator = VALIDATORS[key];
if (validator) validator(key, obj[key]);else throw new Error(`.${key} is not a valid Plugin property`);
if (validator) {
const optLoc = {
type: "option",
name: key,
parent: rootPath
};
validator(optLoc, obj[key]);
} else {
const invalidPluginPropertyError = new Error(`.${key} is not a valid Plugin property`);
invalidPluginPropertyError.code = "BABEL_UNKNOWN_PLUGIN_PROPERTY";
throw invalidPluginPropertyError;
}
}); });
return obj; return obj;
} }

89
node_modules/@babel/core/lib/gensync-utils/async.js generated vendored Normal file
View File

@@ -0,0 +1,89 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.maybeAsync = maybeAsync;
exports.forwardAsync = forwardAsync;
exports.isThenable = isThenable;
exports.waitFor = exports.onFirstPause = exports.isAsync = void 0;
function _gensync() {
const data = _interopRequireDefault(require("gensync"));
_gensync = function () {
return data;
};
return data;
}
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const id = x => x;
const runGenerator = (0, _gensync().default)(function* (item) {
return yield* item;
});
const isAsync = (0, _gensync().default)({
sync: () => false,
errback: cb => cb(null, true)
});
exports.isAsync = isAsync;
function maybeAsync(fn, message) {
return (0, _gensync().default)({
sync(...args) {
const result = fn.apply(this, args);
if (isThenable(result)) throw new Error(message);
return result;
},
async(...args) {
return Promise.resolve(fn.apply(this, args));
}
});
}
const withKind = (0, _gensync().default)({
sync: cb => cb("sync"),
async: cb => cb("async")
});
function forwardAsync(action, cb) {
const g = (0, _gensync().default)(action);
return withKind(kind => {
const adapted = g[kind];
return cb(adapted);
});
}
const onFirstPause = (0, _gensync().default)({
name: "onFirstPause",
arity: 2,
sync: function (item) {
return runGenerator.sync(item);
},
errback: function (item, firstPause, cb) {
let completed = false;
runGenerator.errback(item, (err, value) => {
completed = true;
cb(err, value);
});
if (!completed) {
firstPause();
}
}
});
exports.onFirstPause = onFirstPause;
const waitFor = (0, _gensync().default)({
sync: id,
async: id
});
exports.waitFor = waitFor;
function isThenable(val) {
return !!val && (typeof val === "object" || typeof val === "function") && !!val.then && typeof val.then === "function";
}

53
node_modules/@babel/core/lib/gensync-utils/fs.js generated vendored Normal file
View File

@@ -0,0 +1,53 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.stat = exports.exists = exports.readFile = void 0;
function _fs() {
const data = _interopRequireDefault(require("fs"));
_fs = function () {
return data;
};
return data;
}
function _gensync() {
const data = _interopRequireDefault(require("gensync"));
_gensync = function () {
return data;
};
return data;
}
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const readFile = (0, _gensync().default)({
sync: _fs().default.readFileSync,
errback: _fs().default.readFile
});
exports.readFile = readFile;
const exists = (0, _gensync().default)({
sync(path) {
try {
_fs().default.accessSync(path);
return true;
} catch (_unused) {
return false;
}
},
errback: (path, cb) => _fs().default.access(path, undefined, err => cb(null, !err))
});
exports.exists = exists;
const stat = (0, _gensync().default)({
sync: _fs().default.statSync,
errback: _fs().default.stat
});
exports.stat = stat;

35
node_modules/@babel/core/lib/gensync-utils/resolve.js generated vendored Normal file
View File

@@ -0,0 +1,35 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
function _resolve() {
const data = _interopRequireDefault(require("resolve"));
_resolve = function () {
return data;
};
return data;
}
function _gensync() {
const data = _interopRequireDefault(require("gensync"));
_gensync = function () {
return data;
};
return data;
}
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var _default = (0, _gensync().default)({
sync: _resolve().default.sync,
errback: _resolve().default
});
exports.default = _default;

View File

@@ -70,12 +70,36 @@ Object.defineProperty(exports, "loadPartialConfig", {
return _config.loadPartialConfig; return _config.loadPartialConfig;
} }
}); });
Object.defineProperty(exports, "loadPartialConfigSync", {
enumerable: true,
get: function () {
return _config.loadPartialConfigSync;
}
});
Object.defineProperty(exports, "loadPartialConfigAsync", {
enumerable: true,
get: function () {
return _config.loadPartialConfigAsync;
}
});
Object.defineProperty(exports, "loadOptions", { Object.defineProperty(exports, "loadOptions", {
enumerable: true, enumerable: true,
get: function () { get: function () {
return _config.loadOptions; return _config.loadOptions;
} }
}); });
Object.defineProperty(exports, "loadOptionsSync", {
enumerable: true,
get: function () {
return _config.loadOptionsSync;
}
});
Object.defineProperty(exports, "loadOptionsAsync", {
enumerable: true,
get: function () {
return _config.loadOptionsAsync;
}
});
Object.defineProperty(exports, "transform", { Object.defineProperty(exports, "transform", {
enumerable: true, enumerable: true,
get: function () { get: function () {
@@ -219,7 +243,9 @@ var _transformAst = require("./transform-ast");
var _parse = require("./parse"); var _parse = require("./parse");
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } } function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

View File

@@ -3,63 +3,48 @@
Object.defineProperty(exports, "__esModule", { Object.defineProperty(exports, "__esModule", {
value: true value: true
}); });
exports.parseSync = parseSync; exports.parseAsync = exports.parseSync = exports.parse = void 0;
exports.parseAsync = parseAsync;
exports.parse = void 0; function _gensync() {
const data = _interopRequireDefault(require("gensync"));
_gensync = function () {
return data;
};
return data;
}
var _config = _interopRequireDefault(require("./config")); var _config = _interopRequireDefault(require("./config"));
var _normalizeFile = _interopRequireDefault(require("./transformation/normalize-file")); var _parser = _interopRequireDefault(require("./parser"));
var _normalizeOpts = _interopRequireDefault(require("./transformation/normalize-opts")); var _normalizeOpts = _interopRequireDefault(require("./transformation/normalize-opts"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const parseRunner = (0, _gensync().default)(function* parse(code, opts) {
const config = yield* (0, _config.default)(opts);
if (config === null) {
return null;
}
return yield* (0, _parser.default)(config.passes, (0, _normalizeOpts.default)(config), code);
});
const parse = function parse(code, opts, callback) { const parse = function parse(code, opts, callback) {
if (typeof opts === "function") { if (typeof opts === "function") {
callback = opts; callback = opts;
opts = undefined; opts = undefined;
} }
if (callback === undefined) return parseSync(code, opts); if (callback === undefined) return parseRunner.sync(code, opts);
const config = (0, _config.default)(opts); parseRunner.errback(code, opts, callback);
if (config === null) {
return null;
}
const cb = callback;
process.nextTick(() => {
let ast = null;
try {
const cfg = (0, _config.default)(opts);
if (cfg === null) return cb(null, null);
ast = (0, _normalizeFile.default)(cfg.passes, (0, _normalizeOpts.default)(cfg), code).ast;
} catch (err) {
return cb(err);
}
cb(null, ast);
});
}; };
exports.parse = parse; exports.parse = parse;
const parseSync = parseRunner.sync;
function parseSync(code, opts) { exports.parseSync = parseSync;
const config = (0, _config.default)(opts); const parseAsync = parseRunner.async;
exports.parseAsync = parseAsync;
if (config === null) {
return null;
}
return (0, _normalizeFile.default)(config.passes, (0, _normalizeOpts.default)(config), code).ast;
}
function parseAsync(code, opts) {
return new Promise((res, rej) => {
parse(code, opts, (err, result) => {
if (err == null) res(result);else rej(err);
});
});
}

97
node_modules/@babel/core/lib/parser/index.js generated vendored Normal file
View File

@@ -0,0 +1,97 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = parser;
function _parser() {
const data = require("@babel/parser");
_parser = function () {
return data;
};
return data;
}
function _codeFrame() {
const data = require("@babel/code-frame");
_codeFrame = function () {
return data;
};
return data;
}
var _missingPluginHelper = _interopRequireDefault(require("./util/missing-plugin-helper"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function* parser(pluginPasses, {
parserOpts,
highlightCode = true,
filename = "unknown"
}, code) {
try {
const results = [];
for (const plugins of pluginPasses) {
for (const plugin of plugins) {
const {
parserOverride
} = plugin;
if (parserOverride) {
const ast = parserOverride(code, parserOpts, _parser().parse);
if (ast !== undefined) results.push(ast);
}
}
}
if (results.length === 0) {
return (0, _parser().parse)(code, parserOpts);
} else if (results.length === 1) {
yield* [];
if (typeof results[0].then === "function") {
throw new Error(`You appear to be using an async parser plugin, ` + `which your current version of Babel does not support. ` + `If you're using a published plugin, you may need to upgrade ` + `your @babel/core version.`);
}
return results[0];
}
throw new Error("More than one plugin attempted to override parsing.");
} catch (err) {
if (err.code === "BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED") {
err.message += "\nConsider renaming the file to '.mjs', or setting sourceType:module " + "or sourceType:unambiguous in your Babel config for this file.";
}
const {
loc,
missingPlugin
} = err;
if (loc) {
const codeFrame = (0, _codeFrame().codeFrameColumns)(code, {
start: {
line: loc.line,
column: loc.column + 1
}
}, {
highlightCode
});
if (missingPlugin) {
err.message = `${filename}: ` + (0, _missingPluginHelper.default)(missingPlugin[0], loc, codeFrame);
} else {
err.message = `${filename}: ${err.message}\n\n` + codeFrame;
}
err.code = "BABEL_PARSE_ERROR";
}
throw err;
}
}

View File

@@ -15,6 +15,32 @@ const pluginNameMap = {
url: "https://git.io/vb4SL" url: "https://git.io/vb4SL"
} }
}, },
classPrivateProperties: {
syntax: {
name: "@babel/plugin-syntax-class-properties",
url: "https://git.io/vb4yQ"
},
transform: {
name: "@babel/plugin-proposal-class-properties",
url: "https://git.io/vb4SL"
}
},
classPrivateMethods: {
syntax: {
name: "@babel/plugin-syntax-class-properties",
url: "https://git.io/vb4yQ"
},
transform: {
name: "@babel/plugin-proposal-private-methods",
url: "https://git.io/JvpRG"
}
},
decimal: {
syntax: {
name: "@babel/plugin-syntax-decimal",
url: "https://git.io/JfKOH"
}
},
decorators: { decorators: {
syntax: { syntax: {
name: "@babel/plugin-syntax-decorators", name: "@babel/plugin-syntax-decorators",
@@ -67,8 +93,8 @@ const pluginNameMap = {
url: "https://git.io/vb4yb" url: "https://git.io/vb4yb"
}, },
transform: { transform: {
name: "@babel/plugin-transform-flow-strip-types", name: "@babel/preset-flow",
url: "https://git.io/vb49g" url: "https://git.io/JfeDn"
} }
}, },
functionBind: { functionBind: {
@@ -103,28 +129,14 @@ const pluginNameMap = {
url: "https://git.io/vb4yA" url: "https://git.io/vb4yA"
}, },
transform: { transform: {
name: "@babel/plugin-transform-react-jsx", name: "@babel/preset-react",
url: "https://git.io/vb4yd" url: "https://git.io/JfeDR"
} }
}, },
logicalAssignment: { moduleAttributes: {
syntax: { syntax: {
name: "@babel/plugin-syntax-logical-assignment-operators", name: "@babel/plugin-syntax-module-attributes",
url: "https://git.io/vAlBp" url: "https://git.io/JfK3k"
},
transform: {
name: "@babel/plugin-proposal-logical-assignment-operators",
url: "https://git.io/vAlRe"
}
},
nullishCoalescingOperator: {
syntax: {
name: "@babel/plugin-syntax-nullish-coalescing-operator",
url: "https://git.io/vb4yx"
},
transform: {
name: "@babel/plugin-proposal-nullish-coalescing-operator",
url: "https://git.io/vb4Se"
} }
}, },
numericSeparator: { numericSeparator: {
@@ -157,6 +169,22 @@ const pluginNameMap = {
url: "https://git.io/vb4SU" url: "https://git.io/vb4SU"
} }
}, },
privateIn: {
syntax: {
name: "@babel/plugin-syntax-private-property-in-object",
url: "https://git.io/JfK3q"
},
transform: {
name: "@babel/plugin-proposal-private-property-in-object",
url: "https://git.io/JfK3O"
}
},
recordAndTuple: {
syntax: {
name: "@babel/plugin-syntax-record-and-tuple",
url: "https://git.io/JvKp3"
}
},
throwExpressions: { throwExpressions: {
syntax: { syntax: {
name: "@babel/plugin-syntax-throw-expressions", name: "@babel/plugin-syntax-throw-expressions",
@@ -173,8 +201,8 @@ const pluginNameMap = {
url: "https://git.io/vb4SC" url: "https://git.io/vb4SC"
}, },
transform: { transform: {
name: "@babel/plugin-transform-typescript", name: "@babel/preset-typescript",
url: "https://git.io/vb4Sm" url: "https://git.io/JfeDz"
} }
}, },
asyncGenerators: { asyncGenerators: {
@@ -187,6 +215,26 @@ const pluginNameMap = {
url: "https://git.io/vb4yp" url: "https://git.io/vb4yp"
} }
}, },
logicalAssignment: {
syntax: {
name: "@babel/plugin-syntax-logical-assignment-operators",
url: "https://git.io/vAlBp"
},
transform: {
name: "@babel/plugin-proposal-logical-assignment-operators",
url: "https://git.io/vAlRe"
}
},
nullishCoalescingOperator: {
syntax: {
name: "@babel/plugin-syntax-nullish-coalescing-operator",
url: "https://git.io/vb4yx"
},
transform: {
name: "@babel/plugin-proposal-nullish-coalescing-operator",
url: "https://git.io/vb4Se"
}
},
objectRestSpread: { objectRestSpread: {
syntax: { syntax: {
name: "@babel/plugin-syntax-object-rest-spread", name: "@babel/plugin-syntax-object-rest-spread",
@@ -208,6 +256,7 @@ const pluginNameMap = {
} }
} }
}; };
pluginNameMap.privateIn.syntax = pluginNameMap.privateIn.transform;
const getNameURLCombination = ({ const getNameURLCombination = ({
name, name,
@@ -225,11 +274,14 @@ function generateMissingPluginMessage(missingPluginName, loc, codeFrame) {
} = pluginInfo; } = pluginInfo;
if (syntaxPlugin) { if (syntaxPlugin) {
const syntaxPluginInfo = getNameURLCombination(syntaxPlugin);
if (transformPlugin) { if (transformPlugin) {
const transformPluginInfo = getNameURLCombination(transformPlugin); const transformPluginInfo = getNameURLCombination(transformPlugin);
helpMessage += `\n\nAdd ${transformPluginInfo} to the 'plugins' section of your Babel config ` + `to enable transformation.`; const sectionType = transformPlugin.name.startsWith("@babel/plugin") ? "plugins" : "presets";
helpMessage += `\n\nAdd ${transformPluginInfo} to the '${sectionType}' section of your Babel config to enable transformation.
If you want to leave it as-is, add ${syntaxPluginInfo} to the 'plugins' section to enable parsing.`;
} else { } else {
const syntaxPluginInfo = getNameURLCombination(syntaxPlugin);
helpMessage += `\n\nAdd ${syntaxPluginInfo} to the 'plugins' section of your Babel config ` + `to enable parsing.`; helpMessage += `\n\nAdd ${syntaxPluginInfo} to the 'plugins' section of your Babel config ` + `to enable parsing.`;
} }
} }

View File

@@ -45,11 +45,15 @@ function t() {
return data; return data;
} }
var _file = _interopRequireDefault(require("../transformation/file/file"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } } function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
const buildUmdWrapper = replacements => _template().default` function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
const buildUmdWrapper = replacements => (0, _template().default)`
(function (root, factory) { (function (root, factory) {
if (typeof define === "function" && define.amd) { if (typeof define === "function" && define.amd) {
define(AMD_ARGUMENTS, factory); define(AMD_ARGUMENTS, factory);
@@ -63,30 +67,30 @@ const buildUmdWrapper = replacements => _template().default`
}); });
`(replacements); `(replacements);
function buildGlobal(whitelist) { function buildGlobal(allowlist) {
const namespace = t().identifier("babelHelpers"); const namespace = t().identifier("babelHelpers");
const body = []; const body = [];
const container = t().functionExpression(null, [t().identifier("global")], t().blockStatement(body)); const container = t().functionExpression(null, [t().identifier("global")], t().blockStatement(body));
const tree = t().program([t().expressionStatement(t().callExpression(container, [t().conditionalExpression(t().binaryExpression("===", t().unaryExpression("typeof", t().identifier("global")), t().stringLiteral("undefined")), t().identifier("self"), t().identifier("global"))]))]); const tree = t().program([t().expressionStatement(t().callExpression(container, [t().conditionalExpression(t().binaryExpression("===", t().unaryExpression("typeof", t().identifier("global")), t().stringLiteral("undefined")), t().identifier("self"), t().identifier("global"))]))]);
body.push(t().variableDeclaration("var", [t().variableDeclarator(namespace, t().assignmentExpression("=", t().memberExpression(t().identifier("global"), namespace), t().objectExpression([])))])); body.push(t().variableDeclaration("var", [t().variableDeclarator(namespace, t().assignmentExpression("=", t().memberExpression(t().identifier("global"), namespace), t().objectExpression([])))]));
buildHelpers(body, namespace, whitelist); buildHelpers(body, namespace, allowlist);
return tree; return tree;
} }
function buildModule(whitelist) { function buildModule(allowlist) {
const body = []; const body = [];
const refs = buildHelpers(body, null, whitelist); const refs = buildHelpers(body, null, allowlist);
body.unshift(t().exportNamedDeclaration(null, Object.keys(refs).map(name => { body.unshift(t().exportNamedDeclaration(null, Object.keys(refs).map(name => {
return t().exportSpecifier(t().cloneNode(refs[name]), t().identifier(name)); return t().exportSpecifier(t().cloneNode(refs[name]), t().identifier(name));
}))); })));
return t().program(body, [], "module"); return t().program(body, [], "module");
} }
function buildUmd(whitelist) { function buildUmd(allowlist) {
const namespace = t().identifier("babelHelpers"); const namespace = t().identifier("babelHelpers");
const body = []; const body = [];
body.push(t().variableDeclaration("var", [t().variableDeclarator(namespace, t().identifier("global"))])); body.push(t().variableDeclaration("var", [t().variableDeclarator(namespace, t().identifier("global"))]));
buildHelpers(body, namespace, whitelist); buildHelpers(body, namespace, allowlist);
return t().program([buildUmdWrapper({ return t().program([buildUmdWrapper({
FACTORY_PARAMETERS: t().identifier("global"), FACTORY_PARAMETERS: t().identifier("global"),
BROWSER_ARGUMENTS: t().assignmentExpression("=", t().memberExpression(t().identifier("root"), namespace), t().objectExpression([])), BROWSER_ARGUMENTS: t().assignmentExpression("=", t().memberExpression(t().identifier("root"), namespace), t().objectExpression([])),
@@ -97,25 +101,26 @@ function buildUmd(whitelist) {
})]); })]);
} }
function buildVar(whitelist) { function buildVar(allowlist) {
const namespace = t().identifier("babelHelpers"); const namespace = t().identifier("babelHelpers");
const body = []; const body = [];
body.push(t().variableDeclaration("var", [t().variableDeclarator(namespace, t().objectExpression([]))])); body.push(t().variableDeclaration("var", [t().variableDeclarator(namespace, t().objectExpression([]))]));
const tree = t().program(body); const tree = t().program(body);
buildHelpers(body, namespace, whitelist); buildHelpers(body, namespace, allowlist);
body.push(t().expressionStatement(namespace)); body.push(t().expressionStatement(namespace));
return tree; return tree;
} }
function buildHelpers(body, namespace, whitelist) { function buildHelpers(body, namespace, allowlist) {
const getHelperReference = name => { const getHelperReference = name => {
return namespace ? t().memberExpression(namespace, t().identifier(name)) : t().identifier(`_${name}`); return namespace ? t().memberExpression(namespace, t().identifier(name)) : t().identifier(`_${name}`);
}; };
const refs = {}; const refs = {};
helpers().list.forEach(function (name) { helpers().list.forEach(function (name) {
if (whitelist && whitelist.indexOf(name) < 0) return; if (allowlist && allowlist.indexOf(name) < 0) return;
const ref = refs[name] = getHelperReference(name); const ref = refs[name] = getHelperReference(name);
helpers().ensure(name, _file.default);
const { const {
nodes nodes
} = helpers().get(name, getHelperReference, ref); } = helpers().get(name, getHelperReference, ref);
@@ -124,7 +129,7 @@ function buildHelpers(body, namespace, whitelist) {
return refs; return refs;
} }
function _default(whitelist, outputType = "global") { function _default(allowlist, outputType = "global") {
let tree; let tree;
const build = { const build = {
global: buildGlobal, global: buildGlobal,
@@ -134,7 +139,7 @@ function _default(whitelist, outputType = "global") {
}[outputType]; }[outputType];
if (build) { if (build) {
tree = build(whitelist); tree = build(allowlist);
} else { } else {
throw new Error(`Unsupported output type ${outputType}`); throw new Error(`Unsupported output type ${outputType}`);
} }

View File

@@ -3,9 +3,17 @@
Object.defineProperty(exports, "__esModule", { Object.defineProperty(exports, "__esModule", {
value: true value: true
}); });
exports.transformFromAstSync = transformFromAstSync; exports.transformFromAstAsync = exports.transformFromAstSync = exports.transformFromAst = void 0;
exports.transformFromAstAsync = transformFromAstAsync;
exports.transformFromAst = void 0; function _gensync() {
const data = _interopRequireDefault(require("gensync"));
_gensync = function () {
return data;
};
return data;
}
var _config = _interopRequireDefault(require("./config")); var _config = _interopRequireDefault(require("./config"));
@@ -13,42 +21,28 @@ var _transformation = require("./transformation");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const transformFromAstRunner = (0, _gensync().default)(function* (ast, code, opts) {
const config = yield* (0, _config.default)(opts);
if (config === null) return null;
if (!ast) throw new Error("No AST given");
return yield* (0, _transformation.run)(config, code, ast);
});
const transformFromAst = function transformFromAst(ast, code, opts, callback) { const transformFromAst = function transformFromAst(ast, code, opts, callback) {
if (typeof opts === "function") { if (typeof opts === "function") {
callback = opts; callback = opts;
opts = undefined; opts = undefined;
} }
if (callback === undefined) return transformFromAstSync(ast, code, opts); if (callback === undefined) {
const cb = callback; return transformFromAstRunner.sync(ast, code, opts);
process.nextTick(() => { }
let cfg;
try { transformFromAstRunner.errback(ast, code, opts, callback);
cfg = (0, _config.default)(opts);
if (cfg === null) return cb(null, null);
} catch (err) {
return cb(err);
}
if (!ast) return cb(new Error("No AST given"));
(0, _transformation.runAsync)(cfg, code, ast, cb);
});
}; };
exports.transformFromAst = transformFromAst; exports.transformFromAst = transformFromAst;
const transformFromAstSync = transformFromAstRunner.sync;
function transformFromAstSync(ast, code, opts) { exports.transformFromAstSync = transformFromAstSync;
const config = (0, _config.default)(opts); const transformFromAstAsync = transformFromAstRunner.async;
if (config === null) return null; exports.transformFromAstAsync = transformFromAstAsync;
if (!ast) throw new Error("No AST given");
return (0, _transformation.runSync)(config, code, ast);
}
function transformFromAstAsync(ast, code, opts) {
return new Promise((res, rej) => {
transformFromAst(ast, code, opts, (err, result) => {
if (err == null) res(result);else rej(err);
});
});
}

View File

@@ -3,14 +3,12 @@
Object.defineProperty(exports, "__esModule", { Object.defineProperty(exports, "__esModule", {
value: true value: true
}); });
exports.transformFileSync = transformFileSync; exports.transformFileAsync = exports.transformFileSync = exports.transformFile = void 0;
exports.transformFileAsync = transformFileAsync;
exports.transformFile = void 0;
function _fs() { function _gensync() {
const data = _interopRequireDefault(require("fs")); const data = _interopRequireDefault(require("gensync"));
_fs = function () { _gensync = function () {
return data; return data;
}; };
@@ -21,71 +19,27 @@ var _config = _interopRequireDefault(require("./config"));
var _transformation = require("./transformation"); var _transformation = require("./transformation");
var fs = _interopRequireWildcard(require("./gensync-utils/fs"));
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
({}); ({});
const transformFileRunner = (0, _gensync().default)(function* (filename, opts) {
const transformFile = function transformFile(filename, opts, callback) { const options = Object.assign({}, opts, {
let options; filename
if (typeof opts === "function") {
callback = opts;
opts = undefined;
}
if (opts == null) {
options = {
filename
};
} else if (opts && typeof opts === "object") {
options = Object.assign({}, opts, {
filename
});
}
process.nextTick(() => {
let cfg;
try {
cfg = (0, _config.default)(options);
if (cfg === null) return callback(null, null);
} catch (err) {
return callback(err);
}
const config = cfg;
_fs().default.readFile(filename, "utf8", function (err, code) {
if (err) return callback(err, null);
(0, _transformation.runAsync)(config, code, null, callback);
});
}); });
}; const config = yield* (0, _config.default)(options);
exports.transformFile = transformFile;
function transformFileSync(filename, opts) {
let options;
if (opts == null) {
options = {
filename
};
} else if (opts && typeof opts === "object") {
options = Object.assign({}, opts, {
filename
});
}
const config = (0, _config.default)(options);
if (config === null) return null; if (config === null) return null;
return (0, _transformation.runSync)(config, _fs().default.readFileSync(filename, "utf8")); const code = yield* fs.readFile(filename, "utf8");
} return yield* (0, _transformation.run)(config, code);
});
function transformFileAsync(filename, opts) { const transformFile = transformFileRunner.errback;
return new Promise((res, rej) => { exports.transformFile = transformFile;
transformFile(filename, opts, (err, result) => { const transformFileSync = transformFileRunner.sync;
if (err == null) res(result);else rej(err); exports.transformFileSync = transformFileSync;
}); const transformFileAsync = transformFileRunner.async;
}); exports.transformFileAsync = transformFileAsync;
}

View File

@@ -3,9 +3,17 @@
Object.defineProperty(exports, "__esModule", { Object.defineProperty(exports, "__esModule", {
value: true value: true
}); });
exports.transformSync = transformSync; exports.transformAsync = exports.transformSync = exports.transform = void 0;
exports.transformAsync = transformAsync;
exports.transform = void 0; function _gensync() {
const data = _interopRequireDefault(require("gensync"));
_gensync = function () {
return data;
};
return data;
}
var _config = _interopRequireDefault(require("./config")); var _config = _interopRequireDefault(require("./config"));
@@ -13,40 +21,24 @@ var _transformation = require("./transformation");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const transformRunner = (0, _gensync().default)(function* transform(code, opts) {
const config = yield* (0, _config.default)(opts);
if (config === null) return null;
return yield* (0, _transformation.run)(config, code);
});
const transform = function transform(code, opts, callback) { const transform = function transform(code, opts, callback) {
if (typeof opts === "function") { if (typeof opts === "function") {
callback = opts; callback = opts;
opts = undefined; opts = undefined;
} }
if (callback === undefined) return transformSync(code, opts); if (callback === undefined) return transformRunner.sync(code, opts);
const cb = callback; transformRunner.errback(code, opts, callback);
process.nextTick(() => {
let cfg;
try {
cfg = (0, _config.default)(opts);
if (cfg === null) return cb(null, null);
} catch (err) {
return cb(err);
}
(0, _transformation.runAsync)(cfg, code, null, cb);
});
}; };
exports.transform = transform; exports.transform = transform;
const transformSync = transformRunner.sync;
function transformSync(code, opts) { exports.transformSync = transformSync;
const config = (0, _config.default)(opts); const transformAsync = transformRunner.async;
if (config === null) return null; exports.transformAsync = transformAsync;
return (0, _transformation.runSync)(config, code);
}
function transformAsync(code, opts) {
return new Promise((res, rej) => {
transform(code, opts, (err, result) => {
if (err == null) res(result);else rej(err);
});
});
}

View File

@@ -23,11 +23,12 @@ let LOADED_PLUGIN;
function loadBlockHoistPlugin() { function loadBlockHoistPlugin() {
if (!LOADED_PLUGIN) { if (!LOADED_PLUGIN) {
const config = (0, _config.default)({ const config = _config.default.sync({
babelrc: false, babelrc: false,
configFile: false, configFile: false,
plugins: [blockHoistPlugin] plugins: [blockHoistPlugin]
}); });
LOADED_PLUGIN = config ? config.passes[0][0] : undefined; LOADED_PLUGIN = config ? config.passes[0][0] : undefined;
if (!LOADED_PLUGIN) throw new Error("Assertion failure"); if (!LOADED_PLUGIN) throw new Error("Assertion failure");
} }
@@ -47,7 +48,7 @@ const blockHoistPlugin = {
for (let i = 0; i < node.body.length; i++) { for (let i = 0; i < node.body.length; i++) {
const bodyNode = node.body[i]; const bodyNode = node.body[i];
if (bodyNode && bodyNode._blockHoist != null) { if ((bodyNode == null ? void 0 : bodyNode._blockHoist) != null) {
hasChange = true; hasChange = true;
break; break;
} }
@@ -55,7 +56,7 @@ const blockHoistPlugin = {
if (!hasChange) return; if (!hasChange) return;
node.body = (0, _sortBy().default)(node.body, function (bodyNode) { node.body = (0, _sortBy().default)(node.body, function (bodyNode) {
let priority = bodyNode && bodyNode._blockHoist; let priority = bodyNode == null ? void 0 : bodyNode._blockHoist;
if (priority == null) priority = 1; if (priority == null) priority = 1;
if (priority === true) priority = 2; if (priority === true) priority = 2;
return -1 * priority; return -1 * priority;

View File

@@ -45,6 +45,16 @@ function t() {
return data; return data;
} }
function _helperModuleTransforms() {
const data = require("@babel/helper-module-transforms");
_helperModuleTransforms = function () {
return data;
};
return data;
}
function _semver() { function _semver() {
const data = _interopRequireDefault(require("semver")); const data = _interopRequireDefault(require("semver"));
@@ -57,7 +67,9 @@ function _semver() {
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } } function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
const errorVisitor = { const errorVisitor = {
enter(path, state) { enter(path, state) {
@@ -137,36 +149,7 @@ class File {
} }
getModuleName() { getModuleName() {
const { return (0, _helperModuleTransforms().getModuleName)(this.opts, this.opts);
filename,
filenameRelative = filename,
moduleId,
moduleIds = !!moduleId,
getModuleId,
sourceRoot: sourceRootTmp,
moduleRoot = sourceRootTmp,
sourceRoot = moduleRoot
} = this.opts;
if (!moduleIds) return null;
if (moduleId != null && !getModuleId) {
return moduleId;
}
let moduleName = moduleRoot != null ? moduleRoot + "/" : "";
if (filenameRelative) {
const sourceRootReplacer = sourceRoot != null ? new RegExp("^" + sourceRoot + "/?") : "";
moduleName += filenameRelative.replace(sourceRootReplacer, "").replace(/\.(\w*?)$/, "");
}
moduleName = moduleName.replace(/\\/g, "/");
if (getModuleId) {
return getModuleId(moduleName) || moduleName;
} else {
return moduleName;
}
} }
addImport() { addImport() {
@@ -198,7 +181,7 @@ class File {
if (res) return res; if (res) return res;
} }
helpers().ensure(name); helpers().ensure(name, File);
const uid = this.declarations[name] = this.scope.generateUidIdentifier(name); const uid = this.declarations[name] = this.scope.generateUidIdentifier(name);
const dependencies = {}; const dependencies = {};
@@ -232,7 +215,6 @@ class File {
buildCodeFrameError(node, msg, Error = SyntaxError) { buildCodeFrameError(node, msg, Error = SyntaxError) {
let loc = node && (node.loc || node._loc); let loc = node && (node.loc || node._loc);
msg = `${this.opts.filename}: ${msg}`;
if (!loc && node) { if (!loc && node) {
const state = { const state = {
@@ -253,7 +235,11 @@ class File {
start: { start: {
line: loc.start.line, line: loc.start.line,
column: loc.start.column + 1 column: loc.start.column + 1
} },
end: loc.end && loc.start.line === loc.end.line ? {
line: loc.end.line,
column: loc.end.column + 1
} : undefined
}, { }, {
highlightCode highlightCode
}); });

View File

@@ -59,7 +59,7 @@ function generateCode(pluginPasses, file) {
result = results[0]; result = results[0];
if (typeof result.then === "function") { if (typeof result.then === "function") {
throw new Error(`You appear to be using an async parser plugin, ` + `which your current version of Babel does not support. ` + `If you're using a published plugin, ` + `you may need to upgrade your @babel/core version.`); throw new Error(`You appear to be using an async codegen plugin, ` + `which your current version of Babel does not support. ` + `If you're using a published plugin, ` + `you may need to upgrade your @babel/core version.`);
} }
} else { } else {
throw new Error("More than one plugin attempted to override codegen."); throw new Error("More than one plugin attempted to override codegen.");

View File

@@ -22,11 +22,9 @@ function mergeSourceMap(inputMap, map) {
const output = buildMappingData(map); const output = buildMappingData(map);
const mergedGenerator = new (_sourceMap().default.SourceMapGenerator)(); const mergedGenerator = new (_sourceMap().default.SourceMapGenerator)();
for (const _ref of input.sources) { for (const {
const { source
source } of input.sources) {
} = _ref;
if (typeof source.content === "string") { if (typeof source.content === "string") {
mergedGenerator.setSourceContent(source.path, source.content); mergedGenerator.setSourceContent(source.path, source.content);
} }
@@ -95,11 +93,9 @@ function makeMappingKey(item) {
function eachOverlappingGeneratedOutputRange(outputFile, inputGeneratedRange, callback) { function eachOverlappingGeneratedOutputRange(outputFile, inputGeneratedRange, callback) {
const overlappingOriginal = filterApplicableOriginalRanges(outputFile, inputGeneratedRange); const overlappingOriginal = filterApplicableOriginalRanges(outputFile, inputGeneratedRange);
for (const _ref2 of overlappingOriginal) { for (const {
const { generated
generated } of overlappingOriginal) {
} = _ref2;
for (const item of generated) { for (const item of generated) {
callback(item); callback(item);
} }
@@ -125,18 +121,14 @@ function filterApplicableOriginalRanges({
} }
function eachInputGeneratedRange(map, callback) { function eachInputGeneratedRange(map, callback) {
for (const _ref3 of map.sources) { for (const {
const { source,
source, mappings
mappings } of map.sources) {
} = _ref3; for (const {
original,
for (const _ref4 of mappings) { generated
const { } of mappings) {
original,
generated
} = _ref4;
for (const item of generated) { for (const item of generated) {
callback(item, original, source); callback(item, original, source);
} }

View File

@@ -3,8 +3,7 @@
Object.defineProperty(exports, "__esModule", { Object.defineProperty(exports, "__esModule", {
value: true value: true
}); });
exports.runAsync = runAsync; exports.run = run;
exports.runSync = runSync;
function _traverse() { function _traverse() {
const data = _interopRequireDefault(require("@babel/traverse")); const data = _interopRequireDefault(require("@babel/traverse"));
@@ -28,26 +27,45 @@ var _generate = _interopRequireDefault(require("./file/generate"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function runAsync(config, code, ast, callback) { function* run(config, code, ast) {
let result; const file = yield* (0, _normalizeFile.default)(config.passes, (0, _normalizeOpts.default)(config), code, ast);
const opts = file.opts;
try { try {
result = runSync(config, code, ast); yield* transformFile(file, config.passes);
} catch (err) { } catch (e) {
return callback(err); var _opts$filename;
e.message = `${(_opts$filename = opts.filename) != null ? _opts$filename : "unknown"}: ${e.message}`;
if (!e.code) {
e.code = "BABEL_TRANSFORM_ERROR";
}
throw e;
} }
return callback(null, result); let outputCode, outputMap;
}
try {
if (opts.code !== false) {
({
outputCode,
outputMap
} = (0, _generate.default)(config.passes, file));
}
} catch (e) {
var _opts$filename2;
e.message = `${(_opts$filename2 = opts.filename) != null ? _opts$filename2 : "unknown"}: ${e.message}`;
if (!e.code) {
e.code = "BABEL_GENERATE_ERROR";
}
throw e;
}
function runSync(config, code, ast) {
const file = (0, _normalizeFile.default)(config.passes, (0, _normalizeOpts.default)(config), code, ast);
transformFile(file, config.passes);
const opts = file.opts;
const {
outputCode,
outputMap
} = opts.code !== false ? (0, _generate.default)(config.passes, file) : {};
return { return {
metadata: file.metadata, metadata: file.metadata,
options: opts, options: opts,
@@ -58,7 +76,7 @@ function runSync(config, code, ast) {
}; };
} }
function transformFile(file, pluginPasses) { function* transformFile(file, pluginPasses) {
for (const pluginPairs of pluginPasses) { for (const pluginPairs of pluginPasses) {
const passPairs = []; const passPairs = [];
const passes = []; const passes = [];
@@ -76,6 +94,7 @@ function transformFile(file, pluginPasses) {
if (fn) { if (fn) {
const result = fn.call(pass, file); const result = fn.call(pass, file);
yield* [];
if (isThenable(result)) { if (isThenable(result)) {
throw new Error(`You appear to be using an plugin with an async .pre, ` + `which your current version of Babel does not support. ` + `If you're using a published plugin, you may need to upgrade ` + `your @babel/core version.`); throw new Error(`You appear to be using an plugin with an async .pre, ` + `which your current version of Babel does not support. ` + `If you're using a published plugin, you may need to upgrade ` + `your @babel/core version.`);
@@ -92,6 +111,7 @@ function transformFile(file, pluginPasses) {
if (fn) { if (fn) {
const result = fn.call(pass, file); const result = fn.call(pass, file);
yield* [];
if (isThenable(result)) { if (isThenable(result)) {
throw new Error(`You appear to be using an plugin with an async .post, ` + `which your current version of Babel does not support. ` + `If you're using a published plugin, you may need to upgrade ` + `your @babel/core version.`); throw new Error(`You appear to be using an plugin with an async .post, ` + `which your current version of Babel does not support. ` + `If you're using a published plugin, you may need to upgrade ` + `your @babel/core version.`);

View File

@@ -5,6 +5,16 @@ Object.defineProperty(exports, "__esModule", {
}); });
exports.default = normalizeFile; exports.default = normalizeFile;
function _fs() {
const data = _interopRequireDefault(require("fs"));
_fs = function () {
return data;
};
return data;
}
function _path() { function _path() {
const data = _interopRequireDefault(require("path")); const data = _interopRequireDefault(require("path"));
@@ -55,76 +65,21 @@ function _convertSourceMap() {
return data; return data;
} }
function _parser() {
const data = require("@babel/parser");
_parser = function () {
return data;
};
return data;
}
function _codeFrame() {
const data = require("@babel/code-frame");
_codeFrame = function () {
return data;
};
return data;
}
var _file = _interopRequireDefault(require("./file/file")); var _file = _interopRequireDefault(require("./file/file"));
var _missingPluginHelper = _interopRequireDefault(require("./util/missing-plugin-helper")); var _parser = _interopRequireDefault(require("../parser"));
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } } function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const debug = (0, _debug().default)("babel:transform:file"); const debug = (0, _debug().default)("babel:transform:file");
const LARGE_INPUT_SOURCEMAP_THRESHOLD = 1000000;
function normalizeFile(pluginPasses, options, code, ast) { function* normalizeFile(pluginPasses, options, code, ast) {
code = `${code || ""}`; code = `${code || ""}`;
let inputMap = null;
if (options.inputSourceMap !== false) {
if (typeof options.inputSourceMap === "object") {
inputMap = _convertSourceMap().default.fromObject(options.inputSourceMap);
}
if (!inputMap) {
try {
inputMap = _convertSourceMap().default.fromSource(code);
if (inputMap) {
code = _convertSourceMap().default.removeComments(code);
}
} catch (err) {
debug("discarding unknown inline input sourcemap", err);
code = _convertSourceMap().default.removeComments(code);
}
}
if (!inputMap) {
if (typeof options.filename === "string") {
try {
inputMap = _convertSourceMap().default.fromMapFileSource(code, _path().default.dirname(options.filename));
if (inputMap) {
code = _convertSourceMap().default.removeMapFileComments(code);
}
} catch (err) {
debug("discarding unknown file input sourcemap", err);
code = _convertSourceMap().default.removeMapFileComments(code);
}
} else {
debug("discarding un-loadable file input sourcemap");
code = _convertSourceMap().default.removeMapFileComments(code);
}
}
}
if (ast) { if (ast) {
if (ast.type === "Program") { if (ast.type === "Program") {
@@ -133,9 +88,57 @@ function normalizeFile(pluginPasses, options, code, ast) {
throw new Error("AST root must be a Program or File node"); throw new Error("AST root must be a Program or File node");
} }
ast = (0, _cloneDeep().default)(ast); const {
cloneInputAst
} = options;
if (cloneInputAst) {
ast = (0, _cloneDeep().default)(ast);
}
} else { } else {
ast = parser(pluginPasses, options, code); ast = yield* (0, _parser.default)(pluginPasses, options, code);
}
let inputMap = null;
if (options.inputSourceMap !== false) {
if (typeof options.inputSourceMap === "object") {
inputMap = _convertSourceMap().default.fromObject(options.inputSourceMap);
}
if (!inputMap) {
const lastComment = extractComments(INLINE_SOURCEMAP_REGEX, ast);
if (lastComment) {
try {
inputMap = _convertSourceMap().default.fromComment(lastComment);
} catch (err) {
debug("discarding unknown inline input sourcemap", err);
}
}
}
if (!inputMap) {
const lastComment = extractComments(EXTERNAL_SOURCEMAP_REGEX, ast);
if (typeof options.filename === "string" && lastComment) {
try {
const match = EXTERNAL_SOURCEMAP_REGEX.exec(lastComment);
const inputMapContent = _fs().default.readFileSync(_path().default.resolve(_path().default.dirname(options.filename), match[1]));
if (inputMapContent.length > LARGE_INPUT_SOURCEMAP_THRESHOLD) {
debug("skip merging input map > 1 MB");
} else {
inputMap = _convertSourceMap().default.fromJSON(inputMapContent);
}
} catch (err) {
debug("discarding unknown file input sourcemap", err);
}
} else if (lastComment) {
debug("discarding un-loadable file input sourcemap");
}
}
} }
return new _file.default(options, { return new _file.default(options, {
@@ -145,67 +148,32 @@ function normalizeFile(pluginPasses, options, code, ast) {
}); });
} }
function parser(pluginPasses, { const INLINE_SOURCEMAP_REGEX = /^[@#]\s+sourceMappingURL=data:(?:application|text)\/json;(?:charset[:=]\S+?;)?base64,(?:.*)$/;
parserOpts, const EXTERNAL_SOURCEMAP_REGEX = /^[@#][ \t]+sourceMappingURL=([^\s'"`]+)[ \t]*$/;
highlightCode = true,
filename = "unknown"
}, code) {
try {
const results = [];
for (const plugins of pluginPasses) { function extractCommentsFromList(regex, comments, lastComment) {
for (const plugin of plugins) { if (comments) {
const { comments = comments.filter(({
parserOverride value
} = plugin; }) => {
if (regex.test(value)) {
if (parserOverride) { lastComment = value;
const ast = parserOverride(code, parserOpts, _parser().parse); return false;
if (ast !== undefined) results.push(ast);
}
}
}
if (results.length === 0) {
return (0, _parser().parse)(code, parserOpts);
} else if (results.length === 1) {
if (typeof results[0].then === "function") {
throw new Error(`You appear to be using an async codegen plugin, ` + `which your current version of Babel does not support. ` + `If you're using a published plugin, you may need to upgrade ` + `your @babel/core version.`);
} }
return results[0]; return true;
} });
throw new Error("More than one plugin attempted to override parsing.");
} catch (err) {
if (err.code === "BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED") {
err.message += "\nConsider renaming the file to '.mjs', or setting sourceType:module " + "or sourceType:unambiguous in your Babel config for this file.";
}
const {
loc,
missingPlugin
} = err;
if (loc) {
const codeFrame = (0, _codeFrame().codeFrameColumns)(code, {
start: {
line: loc.line,
column: loc.column + 1
}
}, {
highlightCode
});
if (missingPlugin) {
err.message = `${filename}: ` + (0, _missingPluginHelper.default)(missingPlugin[0], loc, codeFrame);
} else {
err.message = `${filename}: ${err.message}\n\n` + codeFrame;
}
err.code = "BABEL_PARSE_ERROR";
}
throw err;
} }
return [comments, lastComment];
}
function extractComments(regex, ast) {
let lastComment = null;
t().traverseFast(ast, node => {
[node.leadingComments, lastComment] = extractCommentsFromList(regex, node.leadingComments, lastComment);
[node.innerComments, lastComment] = extractCommentsFromList(regex, node.innerComments, lastComment);
[node.trailingComments, lastComment] = extractCommentsFromList(regex, node.trailingComments, lastComment);
});
return lastComment;
} }

View File

@@ -1,33 +1,27 @@
{ {
"_args": [ "_from": "debug@^4.1.0",
[
"debug@4.1.1",
"/Users/pjquirk/Source/GitHub/actions/labeler"
]
],
"_development": true,
"_from": "debug@4.1.1",
"_id": "debug@4.1.1", "_id": "debug@4.1.1",
"_inBundle": false, "_inBundle": false,
"_integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "_integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
"_location": "/@babel/core/debug", "_location": "/@babel/core/debug",
"_phantomChildren": {}, "_phantomChildren": {},
"_requested": { "_requested": {
"type": "version", "type": "range",
"registry": true, "registry": true,
"raw": "debug@4.1.1", "raw": "debug@^4.1.0",
"name": "debug", "name": "debug",
"escapedName": "debug", "escapedName": "debug",
"rawSpec": "4.1.1", "rawSpec": "^4.1.0",
"saveSpec": null, "saveSpec": null,
"fetchSpec": "4.1.1" "fetchSpec": "^4.1.0"
}, },
"_requiredBy": [ "_requiredBy": [
"/@babel/core" "/@babel/core"
], ],
"_resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", "_resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
"_spec": "4.1.1", "_shasum": "3b72260255109c6b589cee050f1d516139664791",
"_where": "/Users/pjquirk/Source/GitHub/actions/labeler", "_spec": "debug@^4.1.0",
"_where": "/Users/dakale/dev/GitHub/actions/labeler/node_modules/@babel/core",
"author": { "author": {
"name": "TJ Holowaychuk", "name": "TJ Holowaychuk",
"email": "tj@vision-media.ca" "email": "tj@vision-media.ca"
@@ -36,6 +30,7 @@
"bugs": { "bugs": {
"url": "https://github.com/visionmedia/debug/issues" "url": "https://github.com/visionmedia/debug/issues"
}, },
"bundleDependencies": false,
"contributors": [ "contributors": [
{ {
"name": "Nathan Rajlich", "name": "Nathan Rajlich",
@@ -50,6 +45,7 @@
"dependencies": { "dependencies": {
"ms": "^2.1.1" "ms": "^2.1.1"
}, },
"deprecated": false,
"description": "small debugging utility", "description": "small debugging utility",
"devDependencies": { "devDependencies": {
"@babel/cli": "^7.0.0", "@babel/cli": "^7.0.0",

View File

@@ -1,36 +1,32 @@
{ {
"_args": [ "_from": "ms@^2.1.1",
[
"ms@2.1.2",
"/Users/pjquirk/Source/GitHub/actions/labeler"
]
],
"_development": true,
"_from": "ms@2.1.2",
"_id": "ms@2.1.2", "_id": "ms@2.1.2",
"_inBundle": false, "_inBundle": false,
"_integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "_integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
"_location": "/@babel/core/ms", "_location": "/@babel/core/ms",
"_phantomChildren": {}, "_phantomChildren": {},
"_requested": { "_requested": {
"type": "version", "type": "range",
"registry": true, "registry": true,
"raw": "ms@2.1.2", "raw": "ms@^2.1.1",
"name": "ms", "name": "ms",
"escapedName": "ms", "escapedName": "ms",
"rawSpec": "2.1.2", "rawSpec": "^2.1.1",
"saveSpec": null, "saveSpec": null,
"fetchSpec": "2.1.2" "fetchSpec": "^2.1.1"
}, },
"_requiredBy": [ "_requiredBy": [
"/@babel/core/debug" "/@babel/core/debug"
], ],
"_resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", "_resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
"_spec": "2.1.2", "_shasum": "d09d1f357b443f493382a8eb3ccd183872ae6009",
"_where": "/Users/pjquirk/Source/GitHub/actions/labeler", "_spec": "ms@^2.1.1",
"_where": "/Users/dakale/dev/GitHub/actions/labeler/node_modules/@babel/core/node_modules/debug",
"bugs": { "bugs": {
"url": "https://github.com/zeit/ms/issues" "url": "https://github.com/zeit/ms/issues"
}, },
"bundleDependencies": false,
"deprecated": false,
"description": "Tiny millisecond conversion utility", "description": "Tiny millisecond conversion utility",
"devDependencies": { "devDependencies": {
"eslint": "4.12.1", "eslint": "4.12.1",

View File

@@ -398,14 +398,15 @@ range, use the `satisfies(version, range)` function.
* `coerce(version)`: Coerces a string to semver if possible * `coerce(version)`: Coerces a string to semver if possible
This aims to provide a very forgiving translation of a non-semver This aims to provide a very forgiving translation of a non-semver string to
string to semver. It looks for the first digit in a string, and semver. It looks for the first digit in a string, and consumes all
consumes all remaining characters which satisfy at least a partial semver remaining characters which satisfy at least a partial semver (e.g., `1`,
(e.g., `1`, `1.2`, `1.2.3`) up to the max permitted length (256 characters). `1.2`, `1.2.3`) up to the max permitted length (256 characters). Longer
Longer versions are simply truncated (`4.6.3.9.2-alpha2` becomes `4.6.3`). versions are simply truncated (`4.6.3.9.2-alpha2` becomes `4.6.3`). All
All surrounding text is simply ignored (`v3.4 replaces v3.3.1` becomes `3.4.0`). surrounding text is simply ignored (`v3.4 replaces v3.3.1` becomes
Only text which lacks digits will fail coercion (`version one` is not valid). `3.4.0`). Only text which lacks digits will fail coercion (`version one`
The maximum length for any semver component considered for coercion is 16 characters; is not valid). The maximum length for any semver component considered for
longer components will be ignored (`10000000000000000.4.7.4` becomes `4.7.4`). coercion is 16 characters; longer components will be ignored
The maximum value for any semver component is `Integer.MAX_SAFE_INTEGER || (2**53 - 1)`; (`10000000000000000.4.7.4` becomes `4.7.4`). The maximum value for any
higher value components are invalid (`9999999999999999.4.7.4` is likely invalid). semver component is `Number.MAX_SAFE_INTEGER || (2**53 - 1)`; higher value
components are invalid (`9999999999999999.4.7.4` is likely invalid).

View File

@@ -1,39 +1,35 @@
{ {
"_args": [ "_from": "semver@^5.4.1",
[ "_id": "semver@5.7.1",
"semver@5.7.0",
"/Users/pjquirk/Source/GitHub/actions/labeler"
]
],
"_development": true,
"_from": "semver@5.7.0",
"_id": "semver@5.7.0",
"_inBundle": false, "_inBundle": false,
"_integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", "_integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
"_location": "/@babel/core/semver", "_location": "/@babel/core/semver",
"_phantomChildren": {}, "_phantomChildren": {},
"_requested": { "_requested": {
"type": "version", "type": "range",
"registry": true, "registry": true,
"raw": "semver@5.7.0", "raw": "semver@^5.4.1",
"name": "semver", "name": "semver",
"escapedName": "semver", "escapedName": "semver",
"rawSpec": "5.7.0", "rawSpec": "^5.4.1",
"saveSpec": null, "saveSpec": null,
"fetchSpec": "5.7.0" "fetchSpec": "^5.4.1"
}, },
"_requiredBy": [ "_requiredBy": [
"/@babel/core" "/@babel/core"
], ],
"_resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", "_resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
"_spec": "5.7.0", "_shasum": "a954f931aeba508d307bbf069eff0c01c96116f7",
"_where": "/Users/pjquirk/Source/GitHub/actions/labeler", "_spec": "semver@^5.4.1",
"_where": "/Users/dakale/dev/GitHub/actions/labeler/node_modules/@babel/core",
"bin": { "bin": {
"semver": "./bin/semver" "semver": "./bin/semver"
}, },
"bugs": { "bugs": {
"url": "https://github.com/npm/node-semver/issues" "url": "https://github.com/npm/node-semver/issues"
}, },
"bundleDependencies": false,
"deprecated": false,
"description": "The semantic version parser used by npm.", "description": "The semantic version parser used by npm.",
"devDependencies": { "devDependencies": {
"tap": "^13.0.0-rc.18" "tap": "^13.0.0-rc.18"
@@ -60,5 +56,5 @@
"tap": { "tap": {
"check-coverage": true "check-coverage": true
}, },
"version": "5.7.0" "version": "5.7.1"
} }

View File

@@ -1,33 +1,27 @@
{ {
"_args": [ "_from": "source-map@^0.5.0",
[
"source-map@0.5.7",
"/Users/pjquirk/Source/GitHub/actions/labeler"
]
],
"_development": true,
"_from": "source-map@0.5.7",
"_id": "source-map@0.5.7", "_id": "source-map@0.5.7",
"_inBundle": false, "_inBundle": false,
"_integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", "_integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
"_location": "/@babel/core/source-map", "_location": "/@babel/core/source-map",
"_phantomChildren": {}, "_phantomChildren": {},
"_requested": { "_requested": {
"type": "version", "type": "range",
"registry": true, "registry": true,
"raw": "source-map@0.5.7", "raw": "source-map@^0.5.0",
"name": "source-map", "name": "source-map",
"escapedName": "source-map", "escapedName": "source-map",
"rawSpec": "0.5.7", "rawSpec": "^0.5.0",
"saveSpec": null, "saveSpec": null,
"fetchSpec": "0.5.7" "fetchSpec": "^0.5.0"
}, },
"_requiredBy": [ "_requiredBy": [
"/@babel/core" "/@babel/core"
], ],
"_resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", "_resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
"_spec": "0.5.7", "_shasum": "8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc",
"_where": "/Users/pjquirk/Source/GitHub/actions/labeler", "_spec": "source-map@^0.5.0",
"_where": "/Users/dakale/dev/GitHub/actions/labeler/node_modules/@babel/core",
"author": { "author": {
"name": "Nick Fitzgerald", "name": "Nick Fitzgerald",
"email": "nfitzgerald@mozilla.com" "email": "nfitzgerald@mozilla.com"
@@ -35,6 +29,7 @@
"bugs": { "bugs": {
"url": "https://github.com/mozilla/source-map/issues" "url": "https://github.com/mozilla/source-map/issues"
}, },
"bundleDependencies": false,
"contributors": [ "contributors": [
{ {
"name": "Tobias Koppers", "name": "Tobias Koppers",
@@ -181,6 +176,7 @@
"email": "nicolas.lalevee@hibnet.org" "email": "nicolas.lalevee@hibnet.org"
} }
], ],
"deprecated": false,
"description": "Generates and consumes source maps", "description": "Generates and consumes source maps",
"devDependencies": { "devDependencies": {
"doctoc": "^0.15.0", "doctoc": "^0.15.0",

View File

@@ -1,68 +1,74 @@
{ {
"_args": [ "_from": "@babel/core@^7.1.0",
[ "_id": "@babel/core@7.11.6",
"@babel/core@7.5.5",
"/Users/pjquirk/Source/GitHub/actions/labeler"
]
],
"_development": true,
"_from": "@babel/core@7.5.5",
"_id": "@babel/core@7.5.5",
"_inBundle": false, "_inBundle": false,
"_integrity": "sha512-i4qoSr2KTtce0DmkuuQBV4AuQgGPUcPXMr9L5MyYAtk06z068lQ10a4O009fe5OB/DfNV+h+qqT7ddNV8UnRjg==", "_integrity": "sha512-Wpcv03AGnmkgm6uS6k8iwhIwTrcP0m17TL1n1sy7qD0qelDu4XNeW0dN0mHfa+Gei211yDaLoEe/VlbXQzM4Bg==",
"_location": "/@babel/core", "_location": "/@babel/core",
"_phantomChildren": {}, "_phantomChildren": {},
"_requested": { "_requested": {
"type": "version", "type": "range",
"registry": true, "registry": true,
"raw": "@babel/core@7.5.5", "raw": "@babel/core@^7.1.0",
"name": "@babel/core", "name": "@babel/core",
"escapedName": "@babel%2fcore", "escapedName": "@babel%2fcore",
"scope": "@babel", "scope": "@babel",
"rawSpec": "7.5.5", "rawSpec": "^7.1.0",
"saveSpec": null, "saveSpec": null,
"fetchSpec": "7.5.5" "fetchSpec": "^7.1.0"
}, },
"_requiredBy": [ "_requiredBy": [
"/@jest/transform", "/@jest/transform",
"/jest-config" "/jest-config"
], ],
"_resolved": "https://registry.npmjs.org/@babel/core/-/core-7.5.5.tgz", "_resolved": "https://registry.npmjs.org/@babel/core/-/core-7.11.6.tgz",
"_spec": "7.5.5", "_shasum": "3a9455dc7387ff1bac45770650bc13ba04a15651",
"_where": "/Users/pjquirk/Source/GitHub/actions/labeler", "_spec": "@babel/core@^7.1.0",
"_where": "/Users/dakale/dev/GitHub/actions/labeler/node_modules/@jest/transform",
"author": { "author": {
"name": "Sebastian McKenzie", "name": "Sebastian McKenzie",
"email": "sebmck@gmail.com" "email": "sebmck@gmail.com"
}, },
"browser": { "browser": {
"./lib/config/files/index.js": "./lib/config/files/index-browser.js", "./lib/config/files/index.js": "./lib/config/files/index-browser.js",
"./lib/transform-file.js": "./lib/transform-file-browser.js" "./lib/transform-file.js": "./lib/transform-file-browser.js",
"./src/config/files/index.js": "./src/config/files/index-browser.js",
"./src/transform-file.js": "./src/transform-file-browser.js"
}, },
"bugs": {
"url": "https://github.com/babel/babel/issues"
},
"bundleDependencies": false,
"dependencies": { "dependencies": {
"@babel/code-frame": "^7.5.5", "@babel/code-frame": "^7.10.4",
"@babel/generator": "^7.5.5", "@babel/generator": "^7.11.6",
"@babel/helpers": "^7.5.5", "@babel/helper-module-transforms": "^7.11.0",
"@babel/parser": "^7.5.5", "@babel/helpers": "^7.10.4",
"@babel/template": "^7.4.4", "@babel/parser": "^7.11.5",
"@babel/traverse": "^7.5.5", "@babel/template": "^7.10.4",
"@babel/types": "^7.5.5", "@babel/traverse": "^7.11.5",
"convert-source-map": "^1.1.0", "@babel/types": "^7.11.5",
"convert-source-map": "^1.7.0",
"debug": "^4.1.0", "debug": "^4.1.0",
"json5": "^2.1.0", "gensync": "^1.0.0-beta.1",
"lodash": "^4.17.13", "json5": "^2.1.2",
"lodash": "^4.17.19",
"resolve": "^1.3.2", "resolve": "^1.3.2",
"semver": "^5.4.1", "semver": "^5.4.1",
"source-map": "^0.5.0" "source-map": "^0.5.0"
}, },
"deprecated": false,
"description": "Babel compiler core.", "description": "Babel compiler core.",
"devDependencies": { "devDependencies": {
"@babel/helper-transform-fixture-test-runner": "^7.5.5", "@babel/helper-transform-fixture-test-runner": "^7.11.6"
"@babel/register": "^7.5.5"
}, },
"engines": { "engines": {
"node": ">=6.9.0" "node": ">=6.9.0"
}, },
"gitHead": "0407f034f09381b95e9cabefbf6b176c76485a43", "funding": {
"type": "opencollective",
"url": "https://opencollective.com/babel"
},
"gitHead": "e51139d7fd850e7f5b8cd6aafb17cc88b7010218",
"homepage": "https://babeljs.io/", "homepage": "https://babeljs.io/",
"keywords": [ "keywords": [
"6to5", "6to5",
@@ -87,7 +93,8 @@
}, },
"repository": { "repository": {
"type": "git", "type": "git",
"url": "https://github.com/babel/babel/tree/master/packages/babel-core" "url": "git+https://github.com/babel/babel.git",
"directory": "packages/babel-core"
}, },
"version": "7.5.5" "version": "7.11.6"
} }

View File

@@ -4,19 +4,6 @@ Object.defineProperty(exports, "__esModule", {
value: true value: true
}); });
exports.default = void 0; exports.default = void 0;
function _trimRight() {
const data = _interopRequireDefault(require("trim-right"));
_trimRight = function () {
return data;
};
return data;
}
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const SPACES_RE = /^[ \t]+$/; const SPACES_RE = /^[ \t]+$/;
class Buffer { class Buffer {
@@ -44,9 +31,9 @@ class Buffer {
const map = this._map; const map = this._map;
const result = { const result = {
code: (0, _trimRight().default)(this._buf.join("")), code: this._buf.join("").trimRight(),
map: null, map: null,
rawMappings: map && map.getRawMappings() rawMappings: map == null ? void 0 : map.getRawMappings()
}; };
if (map) { if (map) {
@@ -221,10 +208,10 @@ class Buffer {
const origLine = targetObj.line; const origLine = targetObj.line;
const origColumn = targetObj.column; const origColumn = targetObj.column;
const origFilename = targetObj.filename; const origFilename = targetObj.filename;
targetObj.identifierName = prop === "start" && loc && loc.identifierName || null; targetObj.identifierName = prop === "start" && (loc == null ? void 0 : loc.identifierName) || null;
targetObj.line = pos ? pos.line : null; targetObj.line = pos == null ? void 0 : pos.line;
targetObj.column = pos ? pos.column : null; targetObj.column = pos == null ? void 0 : pos.column;
targetObj.filename = loc && loc.filename || null; targetObj.filename = loc == null ? void 0 : loc.filename;
if (force || targetObj.line !== origLine || targetObj.column !== origColumn || targetObj.filename !== origFilename) { if (force || targetObj.line !== origLine || targetObj.column !== origColumn || targetObj.filename !== origFilename) {
targetObj.force = force; targetObj.force = force;

View File

@@ -28,9 +28,11 @@ function Program(node) {
} }
function BlockStatement(node) { function BlockStatement(node) {
var _node$directives;
this.token("{"); this.token("{");
this.printInnerComments(node); this.printInnerComments(node);
const hasDirectives = node.directives && node.directives.length; const hasDirectives = (_node$directives = node.directives) == null ? void 0 : _node$directives.length;
if (node.body.length || hasDirectives) { if (node.body.length || hasDirectives) {
this.newline(); this.newline();

View File

@@ -11,20 +11,14 @@ exports.ClassMethod = ClassMethod;
exports.ClassPrivateMethod = ClassPrivateMethod; exports.ClassPrivateMethod = ClassPrivateMethod;
exports._classMethodHead = _classMethodHead; exports._classMethodHead = _classMethodHead;
function t() { var t = _interopRequireWildcard(require("@babel/types"));
const data = _interopRequireWildcard(require("@babel/types"));
t = function () { function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
return data;
};
return data; function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
}
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } }
function ClassDeclaration(node, parent) { function ClassDeclaration(node, parent) {
if (!this.format.decoratorsBeforeExport || !t().isExportDefaultDeclaration(parent) && !t().isExportNamedDeclaration(parent)) { if (!this.format.decoratorsBeforeExport || !t.isExportDefaultDeclaration(parent) && !t.isExportNamedDeclaration(parent)) {
this.printJoin(node.decorators, node); this.printJoin(node.decorators, node);
} }
@@ -84,26 +78,7 @@ function ClassBody(node) {
function ClassProperty(node) { function ClassProperty(node) {
this.printJoin(node.decorators, node); this.printJoin(node.decorators, node);
this.tsPrintClassMemberModifiers(node, true);
if (node.accessibility) {
this.word(node.accessibility);
this.space();
}
if (node.static) {
this.word("static");
this.space();
}
if (node.abstract) {
this.word("abstract");
this.space();
}
if (node.readonly) {
this.word("readonly");
this.space();
}
if (node.computed) { if (node.computed) {
this.token("["); this.token("[");
@@ -170,21 +145,7 @@ function ClassPrivateMethod(node) {
function _classMethodHead(node) { function _classMethodHead(node) {
this.printJoin(node.decorators, node); this.printJoin(node.decorators, node);
this.tsPrintClassMemberModifiers(node, false);
if (node.accessibility) {
this.word(node.accessibility);
this.space();
}
if (node.abstract) {
this.word("abstract");
this.space();
}
if (node.static) {
this.word("static");
this.space();
}
this._methodHead(node); this._methodHead(node);
} }

View File

@@ -25,21 +25,16 @@ exports.BindExpression = BindExpression;
exports.MemberExpression = MemberExpression; exports.MemberExpression = MemberExpression;
exports.MetaProperty = MetaProperty; exports.MetaProperty = MetaProperty;
exports.PrivateName = PrivateName; exports.PrivateName = PrivateName;
exports.V8IntrinsicIdentifier = V8IntrinsicIdentifier;
exports.AwaitExpression = exports.YieldExpression = void 0; exports.AwaitExpression = exports.YieldExpression = void 0;
function t() { var t = _interopRequireWildcard(require("@babel/types"));
const data = _interopRequireWildcard(require("@babel/types"));
t = function () {
return data;
};
return data;
}
var n = _interopRequireWildcard(require("../node")); var n = _interopRequireWildcard(require("../node"));
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } } function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function UnaryExpression(node) { function UnaryExpression(node) {
if (node.operator === "void" || node.operator === "delete" || node.operator === "typeof" || node.operator === "throw") { if (node.operator === "void" || node.operator === "delete" || node.operator === "typeof" || node.operator === "throw") {
@@ -93,9 +88,9 @@ function NewExpression(node, parent) {
this.space(); this.space();
this.print(node.callee, node); this.print(node.callee, node);
if (this.format.minified && node.arguments.length === 0 && !node.optional && !t().isCallExpression(parent, { if (this.format.minified && node.arguments.length === 0 && !node.optional && !t.isCallExpression(parent, {
callee: node callee: node
}) && !t().isMemberExpression(parent) && !t().isNewExpression(parent)) { }) && !t.isMemberExpression(parent) && !t.isNewExpression(parent)) {
return; return;
} }
@@ -132,13 +127,13 @@ function Decorator(node) {
function OptionalMemberExpression(node) { function OptionalMemberExpression(node) {
this.print(node.object, node); this.print(node.object, node);
if (!node.computed && t().isMemberExpression(node.property)) { if (!node.computed && t.isMemberExpression(node.property)) {
throw new TypeError("Got a MemberExpression for MemberExpression property"); throw new TypeError("Got a MemberExpression for MemberExpression property");
} }
let computed = node.computed; let computed = node.computed;
if (t().isLiteral(node.property) && typeof node.property.value === "number") { if (t.isLiteral(node.property) && typeof node.property.value === "number") {
computed = true; computed = true;
} }
@@ -260,13 +255,13 @@ function BindExpression(node) {
function MemberExpression(node) { function MemberExpression(node) {
this.print(node.object, node); this.print(node.object, node);
if (!node.computed && t().isMemberExpression(node.property)) { if (!node.computed && t.isMemberExpression(node.property)) {
throw new TypeError("Got a MemberExpression for MemberExpression property"); throw new TypeError("Got a MemberExpression for MemberExpression property");
} }
let computed = node.computed; let computed = node.computed;
if (t().isLiteral(node.property) && typeof node.property.value === "number") { if (t.isLiteral(node.property) && typeof node.property.value === "number") {
computed = true; computed = true;
} }
@@ -289,4 +284,9 @@ function MetaProperty(node) {
function PrivateName(node) { function PrivateName(node) {
this.token("#"); this.token("#");
this.print(node.id, node); this.print(node.id, node);
}
function V8IntrinsicIdentifier(node) {
this.token("%");
this.word(node.name);
} }

View File

@@ -20,6 +20,15 @@ exports.DeclareOpaqueType = DeclareOpaqueType;
exports.DeclareVariable = DeclareVariable; exports.DeclareVariable = DeclareVariable;
exports.DeclareExportDeclaration = DeclareExportDeclaration; exports.DeclareExportDeclaration = DeclareExportDeclaration;
exports.DeclareExportAllDeclaration = DeclareExportAllDeclaration; exports.DeclareExportAllDeclaration = DeclareExportAllDeclaration;
exports.EnumDeclaration = EnumDeclaration;
exports.EnumBooleanBody = EnumBooleanBody;
exports.EnumNumberBody = EnumNumberBody;
exports.EnumStringBody = EnumStringBody;
exports.EnumSymbolBody = EnumSymbolBody;
exports.EnumDefaultedMember = EnumDefaultedMember;
exports.EnumBooleanMember = EnumBooleanMember;
exports.EnumNumberMember = EnumNumberMember;
exports.EnumStringMember = EnumStringMember;
exports.ExistsTypeAnnotation = ExistsTypeAnnotation; exports.ExistsTypeAnnotation = ExistsTypeAnnotation;
exports.FunctionTypeAnnotation = FunctionTypeAnnotation; exports.FunctionTypeAnnotation = FunctionTypeAnnotation;
exports.FunctionTypeParam = FunctionTypeParam; exports.FunctionTypeParam = FunctionTypeParam;
@@ -49,6 +58,7 @@ exports.ObjectTypeIndexer = ObjectTypeIndexer;
exports.ObjectTypeProperty = ObjectTypeProperty; exports.ObjectTypeProperty = ObjectTypeProperty;
exports.ObjectTypeSpreadProperty = ObjectTypeSpreadProperty; exports.ObjectTypeSpreadProperty = ObjectTypeSpreadProperty;
exports.QualifiedTypeIdentifier = QualifiedTypeIdentifier; exports.QualifiedTypeIdentifier = QualifiedTypeIdentifier;
exports.SymbolTypeAnnotation = SymbolTypeAnnotation;
exports.UnionTypeAnnotation = UnionTypeAnnotation; exports.UnionTypeAnnotation = UnionTypeAnnotation;
exports.TypeCastExpression = TypeCastExpression; exports.TypeCastExpression = TypeCastExpression;
exports.Variance = Variance; exports.Variance = Variance;
@@ -66,21 +76,15 @@ Object.defineProperty(exports, "StringLiteralTypeAnnotation", {
} }
}); });
function t() { var t = _interopRequireWildcard(require("@babel/types"));
const data = _interopRequireWildcard(require("@babel/types"));
t = function () {
return data;
};
return data;
}
var _modules = require("./modules"); var _modules = require("./modules");
var _types2 = require("./types"); var _types2 = require("./types");
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } } function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function AnyTypeAnnotation() { function AnyTypeAnnotation() {
this.word("any"); this.word("any");
@@ -105,7 +109,7 @@ function NullLiteralTypeAnnotation() {
} }
function DeclareClass(node, parent) { function DeclareClass(node, parent) {
if (!t().isDeclareExportDeclaration(parent)) { if (!t.isDeclareExportDeclaration(parent)) {
this.word("declare"); this.word("declare");
this.space(); this.space();
} }
@@ -117,7 +121,7 @@ function DeclareClass(node, parent) {
} }
function DeclareFunction(node, parent) { function DeclareFunction(node, parent) {
if (!t().isDeclareExportDeclaration(parent)) { if (!t.isDeclareExportDeclaration(parent)) {
this.word("declare"); this.word("declare");
this.space(); this.space();
} }
@@ -180,7 +184,7 @@ function DeclareTypeAlias(node) {
} }
function DeclareOpaqueType(node, parent) { function DeclareOpaqueType(node, parent) {
if (!t().isDeclareExportDeclaration(parent)) { if (!t.isDeclareExportDeclaration(parent)) {
this.word("declare"); this.word("declare");
this.space(); this.space();
} }
@@ -189,7 +193,7 @@ function DeclareOpaqueType(node, parent) {
} }
function DeclareVariable(node, parent) { function DeclareVariable(node, parent) {
if (!t().isDeclareExportDeclaration(parent)) { if (!t.isDeclareExportDeclaration(parent)) {
this.word("declare"); this.word("declare");
this.space(); this.space();
} }
@@ -222,11 +226,112 @@ function DeclareExportAllDeclaration() {
_modules.ExportAllDeclaration.apply(this, arguments); _modules.ExportAllDeclaration.apply(this, arguments);
} }
function EnumDeclaration(node) {
const {
id,
body
} = node;
this.word("enum");
this.space();
this.print(id, node);
this.print(body, node);
}
function enumExplicitType(context, name, hasExplicitType) {
if (hasExplicitType) {
context.space();
context.word("of");
context.space();
context.word(name);
}
context.space();
}
function enumBody(context, node) {
const {
members
} = node;
context.token("{");
context.indent();
context.newline();
for (const member of members) {
context.print(member, node);
context.newline();
}
context.dedent();
context.token("}");
}
function EnumBooleanBody(node) {
const {
explicitType
} = node;
enumExplicitType(this, "boolean", explicitType);
enumBody(this, node);
}
function EnumNumberBody(node) {
const {
explicitType
} = node;
enumExplicitType(this, "number", explicitType);
enumBody(this, node);
}
function EnumStringBody(node) {
const {
explicitType
} = node;
enumExplicitType(this, "string", explicitType);
enumBody(this, node);
}
function EnumSymbolBody(node) {
enumExplicitType(this, "symbol", true);
enumBody(this, node);
}
function EnumDefaultedMember(node) {
const {
id
} = node;
this.print(id, node);
this.token(",");
}
function enumInitializedMember(context, node) {
const {
id,
init
} = node;
context.print(id, node);
context.space();
context.token("=");
context.space();
context.print(init, node);
context.token(",");
}
function EnumBooleanMember(node) {
enumInitializedMember(this, node);
}
function EnumNumberMember(node) {
enumInitializedMember(this, node);
}
function EnumStringMember(node) {
enumInitializedMember(this, node);
}
function FlowExportDeclaration(node) { function FlowExportDeclaration(node) {
if (node.declaration) { if (node.declaration) {
const declar = node.declaration; const declar = node.declaration;
this.print(declar, node); this.print(declar, node);
if (!t().isStatement(declar)) this.semicolon(); if (!t.isStatement(declar)) this.semicolon();
} else { } else {
this.token("{"); this.token("{");
@@ -583,6 +688,11 @@ function ObjectTypeProperty(node) {
this.space(); this.space();
} }
if (node.kind === "get" || node.kind === "set") {
this.word(node.kind);
this.space();
}
this._variance(node); this._variance(node);
this.print(node.key, node); this.print(node.key, node);
@@ -607,6 +717,10 @@ function QualifiedTypeIdentifier(node) {
this.print(node.id, node); this.print(node.id, node);
} }
function SymbolTypeAnnotation() {
this.word("symbol");
}
function orSeparator() { function orSeparator() {
this.space(); this.space();
this.token("|"); this.token("|");

View File

@@ -12,17 +12,11 @@ exports._functionHead = _functionHead;
exports.FunctionDeclaration = exports.FunctionExpression = FunctionExpression; exports.FunctionDeclaration = exports.FunctionExpression = FunctionExpression;
exports.ArrowFunctionExpression = ArrowFunctionExpression; exports.ArrowFunctionExpression = ArrowFunctionExpression;
function t() { var t = _interopRequireWildcard(require("@babel/types"));
const data = _interopRequireWildcard(require("@babel/types"));
t = function () { function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
return data;
};
return data; function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
}
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } }
function _params(node) { function _params(node) {
this.print(node.typeParameters, node); this.print(node.typeParameters, node);
@@ -62,6 +56,8 @@ function _methodHead(node) {
} }
if (node.async) { if (node.async) {
this._catchUp("start", key.loc);
this.word("async"); this.word("async");
this.space(); this.space();
} }
@@ -132,8 +128,8 @@ function ArrowFunctionExpression(node) {
const firstParam = node.params[0]; const firstParam = node.params[0];
if (node.params.length === 1 && t().isIdentifier(firstParam) && !hasTypes(node, firstParam)) { if (node.params.length === 1 && t.isIdentifier(firstParam) && !hasTypes(node, firstParam)) {
if (this.format.retainLines && node.loc && node.body.loc && node.loc.start.line < node.body.loc.start.line) { if ((this.format.retainLines || node.async) && node.loc && node.body.loc && node.loc.start.line < node.body.loc.start.line) {
this.token("("); this.token("(");
if (firstParam.loc && firstParam.loc.start.line > node.loc.start.line) { if (firstParam.loc && firstParam.loc.start.line > node.loc.start.line) {

View File

@@ -12,19 +12,14 @@ exports.ExportAllDeclaration = ExportAllDeclaration;
exports.ExportNamedDeclaration = ExportNamedDeclaration; exports.ExportNamedDeclaration = ExportNamedDeclaration;
exports.ExportDefaultDeclaration = ExportDefaultDeclaration; exports.ExportDefaultDeclaration = ExportDefaultDeclaration;
exports.ImportDeclaration = ImportDeclaration; exports.ImportDeclaration = ImportDeclaration;
exports.ImportAttribute = ImportAttribute;
exports.ImportNamespaceSpecifier = ImportNamespaceSpecifier; exports.ImportNamespaceSpecifier = ImportNamespaceSpecifier;
function t() { var t = _interopRequireWildcard(require("@babel/types"));
const data = _interopRequireWildcard(require("@babel/types"));
t = function () { function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
return data;
};
return data; function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
}
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } }
function ImportSpecifier(node) { function ImportSpecifier(node) {
if (node.importKind === "type" || node.importKind === "typeof") { if (node.importKind === "type" || node.importKind === "typeof") {
@@ -87,7 +82,7 @@ function ExportAllDeclaration(node) {
} }
function ExportNamedDeclaration(node) { function ExportNamedDeclaration(node) {
if (this.format.decoratorsBeforeExport && t().isClassDeclaration(node.declaration)) { if (this.format.decoratorsBeforeExport && t.isClassDeclaration(node.declaration)) {
this.printJoin(node.declaration.decorators, node); this.printJoin(node.declaration.decorators, node);
} }
@@ -97,7 +92,7 @@ function ExportNamedDeclaration(node) {
} }
function ExportDefaultDeclaration(node) { function ExportDefaultDeclaration(node) {
if (this.format.decoratorsBeforeExport && t().isClassDeclaration(node.declaration)) { if (this.format.decoratorsBeforeExport && t.isClassDeclaration(node.declaration)) {
this.printJoin(node.declaration.decorators, node); this.printJoin(node.declaration.decorators, node);
} }
@@ -112,7 +107,7 @@ function ExportDeclaration(node) {
if (node.declaration) { if (node.declaration) {
const declar = node.declaration; const declar = node.declaration;
this.print(declar, node); this.print(declar, node);
if (!t().isStatement(declar)) this.semicolon(); if (!t.isStatement(declar)) this.semicolon();
} else { } else {
if (node.exportKind === "type") { if (node.exportKind === "type") {
this.word("type"); this.word("type");
@@ -122,10 +117,10 @@ function ExportDeclaration(node) {
const specifiers = node.specifiers.slice(0); const specifiers = node.specifiers.slice(0);
let hasSpecial = false; let hasSpecial = false;
while (true) { for (;;) {
const first = specifiers[0]; const first = specifiers[0];
if (t().isExportDefaultSpecifier(first) || t().isExportNamespaceSpecifier(first)) { if (t.isExportDefaultSpecifier(first) || t.isExportNamespaceSpecifier(first)) {
hasSpecial = true; hasSpecial = true;
this.print(specifiers.shift(), node); this.print(specifiers.shift(), node);
@@ -162,6 +157,8 @@ function ExportDeclaration(node) {
} }
function ImportDeclaration(node) { function ImportDeclaration(node) {
var _node$attributes;
this.word("import"); this.word("import");
this.space(); this.space();
@@ -172,11 +169,11 @@ function ImportDeclaration(node) {
const specifiers = node.specifiers.slice(0); const specifiers = node.specifiers.slice(0);
if (specifiers && specifiers.length) { if (specifiers == null ? void 0 : specifiers.length) {
while (true) { for (;;) {
const first = specifiers[0]; const first = specifiers[0];
if (t().isImportDefaultSpecifier(first) || t().isImportNamespaceSpecifier(first)) { if (t.isImportDefaultSpecifier(first) || t.isImportNamespaceSpecifier(first)) {
this.print(specifiers.shift(), node); this.print(specifiers.shift(), node);
if (specifiers.length) { if (specifiers.length) {
@@ -202,9 +199,24 @@ function ImportDeclaration(node) {
} }
this.print(node.source, node); this.print(node.source, node);
if ((_node$attributes = node.attributes) == null ? void 0 : _node$attributes.length) {
this.space();
this.word("with");
this.space();
this.printList(node.attributes, node);
}
this.semicolon(); this.semicolon();
} }
function ImportAttribute(node) {
this.print(node.key);
this.token(":");
this.space();
this.print(node.value);
}
function ImportNamespaceSpecifier(node) { function ImportNamespaceSpecifier(node) {
this.token("*"); this.token("*");
this.space(); this.space();

View File

@@ -18,17 +18,11 @@ exports.VariableDeclaration = VariableDeclaration;
exports.VariableDeclarator = VariableDeclarator; exports.VariableDeclarator = VariableDeclarator;
exports.ThrowStatement = exports.BreakStatement = exports.ReturnStatement = exports.ContinueStatement = exports.ForOfStatement = exports.ForInStatement = void 0; exports.ThrowStatement = exports.BreakStatement = exports.ReturnStatement = exports.ContinueStatement = exports.ForOfStatement = exports.ForInStatement = void 0;
function t() { var t = _interopRequireWildcard(require("@babel/types"));
const data = _interopRequireWildcard(require("@babel/types"));
t = function () { function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
return data;
};
return data; function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
}
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } }
function WithStatement(node) { function WithStatement(node) {
this.word("with"); this.word("with");
@@ -46,7 +40,7 @@ function IfStatement(node) {
this.print(node.test, node); this.print(node.test, node);
this.token(")"); this.token(")");
this.space(); this.space();
const needsBlock = node.alternate && t().isIfStatement(getLastStatement(node.consequent)); const needsBlock = node.alternate && t.isIfStatement(getLastStatement(node.consequent));
if (needsBlock) { if (needsBlock) {
this.token("{"); this.token("{");
@@ -71,7 +65,7 @@ function IfStatement(node) {
} }
function getLastStatement(statement) { function getLastStatement(statement) {
if (!t().isStatement(statement.body)) return statement; if (!t.isStatement(statement.body)) return statement;
return getLastStatement(statement.body); return getLastStatement(statement.body);
} }
@@ -208,6 +202,7 @@ function CatchClause(node) {
if (node.param) { if (node.param) {
this.token("("); this.token("(");
this.print(node.param, node); this.print(node.param, node);
this.print(node.param.typeAnnotation, node);
this.token(")"); this.token(")");
this.space(); this.space();
} }
@@ -280,7 +275,7 @@ function VariableDeclaration(node, parent) {
this.space(); this.space();
let hasInits = false; let hasInits = false;
if (!t().isFor(parent)) { if (!t.isFor(parent)) {
for (const declar of node.declarations) { for (const declar of node.declarations) {
if (declar.init) { if (declar.init) {
hasInits = true; hasInits = true;
@@ -298,7 +293,7 @@ function VariableDeclaration(node, parent) {
separator separator
}); });
if (t().isFor(parent)) { if (t.isFor(parent)) {
if (parent.left === node || parent.init === node) return; if (parent.left === node || parent.init === node) return;
} }

View File

@@ -10,39 +10,28 @@ exports.ObjectPattern = exports.ObjectExpression = ObjectExpression;
exports.ObjectMethod = ObjectMethod; exports.ObjectMethod = ObjectMethod;
exports.ObjectProperty = ObjectProperty; exports.ObjectProperty = ObjectProperty;
exports.ArrayPattern = exports.ArrayExpression = ArrayExpression; exports.ArrayPattern = exports.ArrayExpression = ArrayExpression;
exports.RecordExpression = RecordExpression;
exports.TupleExpression = TupleExpression;
exports.RegExpLiteral = RegExpLiteral; exports.RegExpLiteral = RegExpLiteral;
exports.BooleanLiteral = BooleanLiteral; exports.BooleanLiteral = BooleanLiteral;
exports.NullLiteral = NullLiteral; exports.NullLiteral = NullLiteral;
exports.NumericLiteral = NumericLiteral; exports.NumericLiteral = NumericLiteral;
exports.StringLiteral = StringLiteral; exports.StringLiteral = StringLiteral;
exports.BigIntLiteral = BigIntLiteral; exports.BigIntLiteral = BigIntLiteral;
exports.DecimalLiteral = DecimalLiteral;
exports.PipelineTopicExpression = PipelineTopicExpression; exports.PipelineTopicExpression = PipelineTopicExpression;
exports.PipelineBareFunction = PipelineBareFunction; exports.PipelineBareFunction = PipelineBareFunction;
exports.PipelinePrimaryTopicReference = PipelinePrimaryTopicReference; exports.PipelinePrimaryTopicReference = PipelinePrimaryTopicReference;
function t() { var t = _interopRequireWildcard(require("@babel/types"));
const data = _interopRequireWildcard(require("@babel/types"));
t = function () { var _jsesc = _interopRequireDefault(require("jsesc"));
return data;
};
return data;
}
function _jsesc() {
const data = _interopRequireDefault(require("jsesc"));
_jsesc = function () {
return data;
};
return data;
}
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } } function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function Identifier(node) { function Identifier(node) {
this.exactSource(node.loc, () => { this.exactSource(node.loc, () => {
@@ -93,14 +82,14 @@ function ObjectProperty(node) {
this.print(node.key, node); this.print(node.key, node);
this.token("]"); this.token("]");
} else { } else {
if (t().isAssignmentPattern(node.value) && t().isIdentifier(node.key) && node.key.name === node.value.left.name) { if (t.isAssignmentPattern(node.value) && t.isIdentifier(node.key) && node.key.name === node.value.left.name) {
this.print(node.value, node); this.print(node.value, node);
return; return;
} }
this.print(node.key, node); this.print(node.key, node);
if (node.shorthand && t().isIdentifier(node.key) && t().isIdentifier(node.value) && node.key.name === node.value.name) { if (node.shorthand && t.isIdentifier(node.key) && t.isIdentifier(node.value) && node.key.name === node.value.name) {
return; return;
} }
} }
@@ -131,6 +120,68 @@ function ArrayExpression(node) {
this.token("]"); this.token("]");
} }
function RecordExpression(node) {
const props = node.properties;
let startToken;
let endToken;
if (this.format.recordAndTupleSyntaxType === "bar") {
startToken = "{|";
endToken = "|}";
} else if (this.format.recordAndTupleSyntaxType === "hash") {
startToken = "#{";
endToken = "}";
} else {
throw new Error(`The "recordAndTupleSyntaxType" generator option must be "bar" or "hash" (${JSON.stringify(this.format.recordAndTupleSyntaxType)} received).`);
}
this.token(startToken);
this.printInnerComments(node);
if (props.length) {
this.space();
this.printList(props, node, {
indent: true,
statement: true
});
this.space();
}
this.token(endToken);
}
function TupleExpression(node) {
const elems = node.elements;
const len = elems.length;
let startToken;
let endToken;
if (this.format.recordAndTupleSyntaxType === "bar") {
startToken = "[|";
endToken = "|]";
} else if (this.format.recordAndTupleSyntaxType === "hash") {
startToken = "#[";
endToken = "]";
} else {
throw new Error(`${this.format.recordAndTupleSyntaxType} is not a valid recordAndTuple syntax type`);
}
this.token(startToken);
this.printInnerComments(node);
for (let i = 0; i < elems.length; i++) {
const elem = elems[i];
if (elem) {
if (i > 0) this.space();
this.print(elem, node);
if (i < len - 1) this.token(",");
}
}
this.token(endToken);
}
function RegExpLiteral(node) { function RegExpLiteral(node) {
this.word(`/${node.pattern}/${node.flags}`); this.word(`/${node.pattern}/${node.flags}`);
} }
@@ -145,9 +196,12 @@ function NullLiteral() {
function NumericLiteral(node) { function NumericLiteral(node) {
const raw = this.getPossibleRaw(node); const raw = this.getPossibleRaw(node);
const opts = this.format.jsescOption;
const value = node.value + ""; const value = node.value + "";
if (raw == null) { if (opts.numbers) {
this.number((0, _jsesc.default)(node.value, opts));
} else if (raw == null) {
this.number(value); this.number(value);
} else if (this.format.minified) { } else if (this.format.minified) {
this.number(raw.length < value.length ? raw : value); this.number(raw.length < value.length ? raw : value);
@@ -170,7 +224,7 @@ function StringLiteral(node) {
opts.json = true; opts.json = true;
} }
const val = (0, _jsesc().default)(node.value, opts); const val = (0, _jsesc.default)(node.value, opts);
return this.token(val); return this.token(val);
} }
@@ -182,7 +236,18 @@ function BigIntLiteral(node) {
return; return;
} }
this.token(node.value); this.token(node.value + "n");
}
function DecimalLiteral(node) {
const raw = this.getPossibleRaw(node);
if (!this.format.minified && raw != null) {
this.token(raw);
return;
}
this.token(node.value + "m");
} }
function PipelineTopicExpression(node) { function PipelineTopicExpression(node) {

View File

@@ -17,6 +17,7 @@ exports.tsPrintPropertyOrMethodName = tsPrintPropertyOrMethodName;
exports.TSMethodSignature = TSMethodSignature; exports.TSMethodSignature = TSMethodSignature;
exports.TSIndexSignature = TSIndexSignature; exports.TSIndexSignature = TSIndexSignature;
exports.TSAnyKeyword = TSAnyKeyword; exports.TSAnyKeyword = TSAnyKeyword;
exports.TSBigIntKeyword = TSBigIntKeyword;
exports.TSUnknownKeyword = TSUnknownKeyword; exports.TSUnknownKeyword = TSUnknownKeyword;
exports.TSNumberKeyword = TSNumberKeyword; exports.TSNumberKeyword = TSNumberKeyword;
exports.TSObjectKeyword = TSObjectKeyword; exports.TSObjectKeyword = TSObjectKeyword;
@@ -41,6 +42,7 @@ exports.TSArrayType = TSArrayType;
exports.TSTupleType = TSTupleType; exports.TSTupleType = TSTupleType;
exports.TSOptionalType = TSOptionalType; exports.TSOptionalType = TSOptionalType;
exports.TSRestType = TSRestType; exports.TSRestType = TSRestType;
exports.TSNamedTupleMember = TSNamedTupleMember;
exports.TSUnionType = TSUnionType; exports.TSUnionType = TSUnionType;
exports.TSIntersectionType = TSIntersectionType; exports.TSIntersectionType = TSIntersectionType;
exports.tsPrintUnionOrIntersectionType = tsPrintUnionOrIntersectionType; exports.tsPrintUnionOrIntersectionType = tsPrintUnionOrIntersectionType;
@@ -68,6 +70,7 @@ exports.TSNonNullExpression = TSNonNullExpression;
exports.TSExportAssignment = TSExportAssignment; exports.TSExportAssignment = TSExportAssignment;
exports.TSNamespaceExportDeclaration = TSNamespaceExportDeclaration; exports.TSNamespaceExportDeclaration = TSNamespaceExportDeclaration;
exports.tsPrintSignatureDeclarationBase = tsPrintSignatureDeclarationBase; exports.tsPrintSignatureDeclarationBase = tsPrintSignatureDeclarationBase;
exports.tsPrintClassMemberModifiers = tsPrintClassMemberModifiers;
function TSTypeAnnotation(node) { function TSTypeAnnotation(node) {
this.token(":"); this.token(":");
@@ -139,12 +142,14 @@ function TSQualifiedName(node) {
function TSCallSignatureDeclaration(node) { function TSCallSignatureDeclaration(node) {
this.tsPrintSignatureDeclarationBase(node); this.tsPrintSignatureDeclarationBase(node);
this.token(";");
} }
function TSConstructSignatureDeclaration(node) { function TSConstructSignatureDeclaration(node) {
this.word("new"); this.word("new");
this.space(); this.space();
this.tsPrintSignatureDeclarationBase(node); this.tsPrintSignatureDeclarationBase(node);
this.token(";");
} }
function TSPropertySignature(node) { function TSPropertySignature(node) {
@@ -216,6 +221,10 @@ function TSAnyKeyword() {
this.word("any"); this.word("any");
} }
function TSBigIntKeyword() {
this.word("bigint");
}
function TSUnknownKeyword() { function TSUnknownKeyword() {
this.word("unknown"); this.word("unknown");
} }
@@ -293,11 +302,19 @@ function TSTypeReference(node) {
} }
function TSTypePredicate(node) { function TSTypePredicate(node) {
if (node.asserts) {
this.word("asserts");
this.space();
}
this.print(node.parameterName); this.print(node.parameterName);
this.space();
this.word("is"); if (node.typeAnnotation) {
this.space(); this.space();
this.print(node.typeAnnotation.typeAnnotation); this.word("is");
this.space();
this.print(node.typeAnnotation.typeAnnotation);
}
} }
function TSTypeQuery(node) { function TSTypeQuery(node) {
@@ -354,6 +371,14 @@ function TSRestType(node) {
this.print(node.typeAnnotation, node); this.print(node.typeAnnotation, node);
} }
function TSNamedTupleMember(node) {
this.print(node.label, node);
if (node.optional) this.token("?");
this.token(":");
this.space();
this.print(node.elementType, node);
}
function TSUnionType(node) { function TSUnionType(node) {
this.tsPrintUnionOrIntersectionType(node, "|"); this.tsPrintUnionOrIntersectionType(node, "|");
} }
@@ -712,4 +737,31 @@ function tsPrintSignatureDeclarationBase(node) {
this.token(")"); this.token(")");
this.print(node.typeAnnotation, node); this.print(node.typeAnnotation, node);
}
function tsPrintClassMemberModifiers(node, isField) {
if (isField && node.declare) {
this.word("declare");
this.space();
}
if (node.accessibility) {
this.word(node.accessibility);
this.space();
}
if (node.static) {
this.word("static");
this.space();
}
if (node.abstract) {
this.word("abstract");
this.space();
}
if (isField && node.readonly) {
this.word("readonly");
this.space();
}
} }

View File

@@ -47,7 +47,8 @@ function normalizeOptions(code, opts) {
jsescOption: Object.assign({ jsescOption: Object.assign({
quotes: "double", quotes: "double",
wrap: true wrap: true
}, opts.jsescOption) }, opts.jsescOption),
recordAndTupleSyntaxType: opts.recordAndTupleSyntaxType
}; };
if (format.minified) { if (format.minified) {

View File

@@ -12,17 +12,11 @@ var whitespace = _interopRequireWildcard(require("./whitespace"));
var parens = _interopRequireWildcard(require("./parentheses")); var parens = _interopRequireWildcard(require("./parentheses"));
function t() { var t = _interopRequireWildcard(require("@babel/types"));
const data = _interopRequireWildcard(require("@babel/types"));
t = function () { function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
return data;
};
return data; function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
}
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } }
function expandAliases(obj) { function expandAliases(obj) {
const newObj = {}; const newObj = {};
@@ -36,7 +30,7 @@ function expandAliases(obj) {
} }
for (const type of Object.keys(obj)) { for (const type of Object.keys(obj)) {
const aliases = t().FLIPPED_ALIAS_KEYS[type]; const aliases = t.FLIPPED_ALIAS_KEYS[type];
if (aliases) { if (aliases) {
for (const alias of aliases) { for (const alias of aliases) {
@@ -60,21 +54,17 @@ function find(obj, node, parent, printStack) {
} }
function isOrHasCallExpression(node) { function isOrHasCallExpression(node) {
if (t().isCallExpression(node)) { if (t.isCallExpression(node)) {
return true; return true;
} }
if (t().isMemberExpression(node)) { return t.isMemberExpression(node) && isOrHasCallExpression(node.object);
return isOrHasCallExpression(node.object) || !node.computed && isOrHasCallExpression(node.property);
} else {
return false;
}
} }
function needsWhitespace(node, parent, type) { function needsWhitespace(node, parent, type) {
if (!node) return 0; if (!node) return 0;
if (t().isExpressionStatement(node)) { if (t.isExpressionStatement(node)) {
node = node.expression; node = node.expression;
} }
@@ -109,7 +99,7 @@ function needsWhitespaceAfter(node, parent) {
function needsParens(node, parent, printStack) { function needsParens(node, parent, printStack) {
if (!parent) return false; if (!parent) return false;
if (t().isNewExpression(parent) && parent.callee === node) { if (t.isNewExpression(parent) && parent.callee === node) {
if (isOrHasCallExpression(node)) return true; if (isOrHasCallExpression(node)) return true;
} }

View File

@@ -13,6 +13,7 @@ exports.IntersectionTypeAnnotation = exports.UnionTypeAnnotation = UnionTypeAnno
exports.TSAsExpression = TSAsExpression; exports.TSAsExpression = TSAsExpression;
exports.TSTypeAssertion = TSTypeAssertion; exports.TSTypeAssertion = TSTypeAssertion;
exports.TSIntersectionType = exports.TSUnionType = TSUnionType; exports.TSIntersectionType = exports.TSUnionType = TSUnionType;
exports.TSInferType = TSInferType;
exports.BinaryExpression = BinaryExpression; exports.BinaryExpression = BinaryExpression;
exports.SequenceExpression = SequenceExpression; exports.SequenceExpression = SequenceExpression;
exports.AwaitExpression = exports.YieldExpression = YieldExpression; exports.AwaitExpression = exports.YieldExpression = YieldExpression;
@@ -21,24 +22,19 @@ exports.UnaryLike = UnaryLike;
exports.FunctionExpression = FunctionExpression; exports.FunctionExpression = FunctionExpression;
exports.ArrowFunctionExpression = ArrowFunctionExpression; exports.ArrowFunctionExpression = ArrowFunctionExpression;
exports.ConditionalExpression = ConditionalExpression; exports.ConditionalExpression = ConditionalExpression;
exports.OptionalMemberExpression = OptionalMemberExpression; exports.OptionalCallExpression = exports.OptionalMemberExpression = OptionalMemberExpression;
exports.AssignmentExpression = AssignmentExpression; exports.AssignmentExpression = AssignmentExpression;
exports.NewExpression = NewExpression; exports.LogicalExpression = LogicalExpression;
function t() { var t = _interopRequireWildcard(require("@babel/types"));
const data = _interopRequireWildcard(require("@babel/types"));
t = function () { function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
return data;
};
return data; function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
}
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } }
const PRECEDENCE = { const PRECEDENCE = {
"||": 0, "||": 0,
"??": 0,
"&&": 1, "&&": 1,
"|": 2, "|": 2,
"^": 3, "^": 3,
@@ -64,24 +60,20 @@ const PRECEDENCE = {
"**": 10 "**": 10
}; };
const isClassExtendsClause = (node, parent) => (t().isClassDeclaration(parent) || t().isClassExpression(parent)) && parent.superClass === node; const isClassExtendsClause = (node, parent) => (t.isClassDeclaration(parent) || t.isClassExpression(parent)) && parent.superClass === node;
const hasPostfixPart = (node, parent) => (t.isMemberExpression(parent) || t.isOptionalMemberExpression(parent)) && parent.object === node || (t.isCallExpression(parent) || t.isOptionalCallExpression(parent) || t.isNewExpression(parent)) && parent.callee === node || t.isTaggedTemplateExpression(parent) && parent.tag === node || t.isTSNonNullExpression(parent);
function NullableTypeAnnotation(node, parent) { function NullableTypeAnnotation(node, parent) {
return t().isArrayTypeAnnotation(parent); return t.isArrayTypeAnnotation(parent);
} }
function FunctionTypeAnnotation(node, parent) { function FunctionTypeAnnotation(node, parent, printStack) {
return t().isUnionTypeAnnotation(parent) || t().isIntersectionTypeAnnotation(parent) || t().isArrayTypeAnnotation(parent); return t.isUnionTypeAnnotation(parent) || t.isIntersectionTypeAnnotation(parent) || t.isArrayTypeAnnotation(parent) || t.isTypeAnnotation(parent) && t.isArrowFunctionExpression(printStack[printStack.length - 3]);
} }
function UpdateExpression(node, parent) { function UpdateExpression(node, parent) {
return t().isMemberExpression(parent, { return hasPostfixPart(node, parent) || isClassExtendsClause(node, parent);
object: node
}) || t().isCallExpression(parent, {
callee: node
}) || t().isNewExpression(parent, {
callee: node
}) || isClassExtendsClause(node, parent);
} }
function ObjectExpression(node, parent, printStack) { function ObjectExpression(node, parent, printStack) {
@@ -95,7 +87,7 @@ function DoExpression(node, parent, printStack) {
} }
function Binary(node, parent) { function Binary(node, parent) {
if (node.operator === "**" && t().isBinaryExpression(parent, { if (node.operator === "**" && t.isBinaryExpression(parent, {
operator: "**" operator: "**"
})) { })) {
return parent.left === node; return parent.left === node;
@@ -105,26 +97,24 @@ function Binary(node, parent) {
return true; return true;
} }
if ((t().isCallExpression(parent) || t().isNewExpression(parent)) && parent.callee === node || t().isUnaryLike(parent) || t().isMemberExpression(parent) && parent.object === node || t().isAwaitExpression(parent)) { if (hasPostfixPart(node, parent) || t.isUnaryLike(parent) || t.isAwaitExpression(parent)) {
return true; return true;
} }
if (t().isBinary(parent)) { if (t.isBinary(parent)) {
const parentOp = parent.operator; const parentOp = parent.operator;
const parentPos = PRECEDENCE[parentOp]; const parentPos = PRECEDENCE[parentOp];
const nodeOp = node.operator; const nodeOp = node.operator;
const nodePos = PRECEDENCE[nodeOp]; const nodePos = PRECEDENCE[nodeOp];
if (parentPos === nodePos && parent.right === node && !t().isLogicalExpression(parent) || parentPos > nodePos) { if (parentPos === nodePos && parent.right === node && !t.isLogicalExpression(parent) || parentPos > nodePos) {
return true; return true;
} }
} }
return false;
} }
function UnionTypeAnnotation(node, parent) { function UnionTypeAnnotation(node, parent) {
return t().isArrayTypeAnnotation(parent) || t().isNullableTypeAnnotation(parent) || t().isIntersectionTypeAnnotation(parent) || t().isUnionTypeAnnotation(parent); return t.isArrayTypeAnnotation(parent) || t.isNullableTypeAnnotation(parent) || t.isIntersectionTypeAnnotation(parent) || t.isUnionTypeAnnotation(parent);
} }
function TSAsExpression() { function TSAsExpression() {
@@ -136,15 +126,19 @@ function TSTypeAssertion() {
} }
function TSUnionType(node, parent) { function TSUnionType(node, parent) {
return t().isTSArrayType(parent) || t().isTSOptionalType(parent) || t().isTSIntersectionType(parent) || t().isTSUnionType(parent) || t().isTSRestType(parent); return t.isTSArrayType(parent) || t.isTSOptionalType(parent) || t.isTSIntersectionType(parent) || t.isTSUnionType(parent) || t.isTSRestType(parent);
}
function TSInferType(node, parent) {
return t.isTSArrayType(parent) || t.isTSOptionalType(parent);
} }
function BinaryExpression(node, parent) { function BinaryExpression(node, parent) {
return node.operator === "in" && (t().isVariableDeclarator(parent) || t().isFor(parent)); return node.operator === "in" && (t.isVariableDeclarator(parent) || t.isFor(parent));
} }
function SequenceExpression(node, parent) { function SequenceExpression(node, parent) {
if (t().isForStatement(parent) || t().isThrowStatement(parent) || t().isReturnStatement(parent) || t().isIfStatement(parent) && parent.test === node || t().isWhileStatement(parent) && parent.test === node || t().isForInStatement(parent) && parent.right === node || t().isSwitchStatement(parent) && parent.discriminant === node || t().isExpressionStatement(parent) && parent.expression === node) { if (t.isForStatement(parent) || t.isThrowStatement(parent) || t.isReturnStatement(parent) || t.isIfStatement(parent) && parent.test === node || t.isWhileStatement(parent) && parent.test === node || t.isForInStatement(parent) && parent.right === node || t.isSwitchStatement(parent) && parent.discriminant === node || t.isExpressionStatement(parent) && parent.expression === node) {
return false; return false;
} }
@@ -152,7 +146,7 @@ function SequenceExpression(node, parent) {
} }
function YieldExpression(node, parent) { function YieldExpression(node, parent) {
return t().isBinary(parent) || t().isUnaryLike(parent) || t().isCallExpression(parent) || t().isMemberExpression(parent) || t().isNewExpression(parent) || t().isAwaitExpression(parent) && t().isYieldExpression(node) || t().isConditionalExpression(parent) && node === parent.test || isClassExtendsClause(node, parent); return t.isBinary(parent) || t.isUnaryLike(parent) || hasPostfixPart(node, parent) || t.isAwaitExpression(parent) && t.isYieldExpression(node) || t.isConditionalExpression(parent) && node === parent.test || isClassExtendsClause(node, parent);
} }
function ClassExpression(node, parent, printStack) { function ClassExpression(node, parent, printStack) {
@@ -162,13 +156,7 @@ function ClassExpression(node, parent, printStack) {
} }
function UnaryLike(node, parent) { function UnaryLike(node, parent) {
return t().isMemberExpression(parent, { return hasPostfixPart(node, parent) || t.isBinaryExpression(parent, {
object: node
}) || t().isCallExpression(parent, {
callee: node
}) || t().isNewExpression(parent, {
callee: node
}) || t().isBinaryExpression(parent, {
operator: "**", operator: "**",
left: node left: node
}) || isClassExtendsClause(node, parent); }) || isClassExtendsClause(node, parent);
@@ -181,13 +169,13 @@ function FunctionExpression(node, parent, printStack) {
} }
function ArrowFunctionExpression(node, parent) { function ArrowFunctionExpression(node, parent) {
return t().isExportDeclaration(parent) || ConditionalExpression(node, parent); return t.isExportDeclaration(parent) || ConditionalExpression(node, parent);
} }
function ConditionalExpression(node, parent) { function ConditionalExpression(node, parent) {
if (t().isUnaryLike(parent) || t().isBinary(parent) || t().isConditionalExpression(parent, { if (t.isUnaryLike(parent) || t.isBinary(parent) || t.isConditionalExpression(parent, {
test: node test: node
}) || t().isAwaitExpression(parent) || t().isOptionalMemberExpression(parent) || t().isTaggedTemplateExpression(parent) || t().isTSTypeAssertion(parent) || t().isTSAsExpression(parent)) { }) || t.isAwaitExpression(parent) || t.isTSTypeAssertion(parent) || t.isTSAsExpression(parent)) {
return true; return true;
} }
@@ -195,19 +183,35 @@ function ConditionalExpression(node, parent) {
} }
function OptionalMemberExpression(node, parent) { function OptionalMemberExpression(node, parent) {
return t().isCallExpression(parent) || t().isMemberExpression(parent); return t.isCallExpression(parent, {
callee: node
}) || t.isMemberExpression(parent, {
object: node
});
} }
function AssignmentExpression(node) { function AssignmentExpression(node, parent, printStack) {
if (t().isObjectPattern(node.left)) { if (t.isObjectPattern(node.left)) {
return true; return true;
} else { } else {
return ConditionalExpression(...arguments); return ConditionalExpression(node, parent, printStack);
} }
} }
function NewExpression(node, parent) { function LogicalExpression(node, parent) {
return isClassExtendsClause(node, parent); switch (node.operator) {
case "||":
if (!t.isLogicalExpression(parent)) return false;
return parent.operator === "??" || parent.operator === "&&";
case "&&":
return t.isLogicalExpression(parent, {
operator: "??"
});
case "??":
return t.isLogicalExpression(parent) && parent.operator !== "??";
}
} }
function isFirstInStatement(printStack, { function isFirstInStatement(printStack, {
@@ -220,25 +224,21 @@ function isFirstInStatement(printStack, {
let parent = printStack[i]; let parent = printStack[i];
while (i > 0) { while (i > 0) {
if (t().isExpressionStatement(parent, { if (t.isExpressionStatement(parent, {
expression: node expression: node
}) || t().isTaggedTemplateExpression(parent) || considerDefaultExports && t().isExportDefaultDeclaration(parent, { }) || considerDefaultExports && t.isExportDefaultDeclaration(parent, {
declaration: node declaration: node
}) || considerArrow && t().isArrowFunctionExpression(parent, { }) || considerArrow && t.isArrowFunctionExpression(parent, {
body: node body: node
})) { })) {
return true; return true;
} }
if (t().isCallExpression(parent, { if (hasPostfixPart(node, parent) && !t.isNewExpression(parent) || t.isSequenceExpression(parent) && parent.expressions[0] === node || t.isConditional(parent, {
callee: node
}) || t().isSequenceExpression(parent) && parent.expressions[0] === node || t().isMemberExpression(parent, {
object: node
}) || t().isConditional(parent, {
test: node test: node
}) || t().isBinary(parent, { }) || t.isBinary(parent, {
left: node left: node
}) || t().isAssignmentExpression(parent, { }) || t.isAssignmentExpression(parent, {
left: node left: node
})) { })) {
node = parent; node = parent;

View File

@@ -5,31 +5,25 @@ Object.defineProperty(exports, "__esModule", {
}); });
exports.list = exports.nodes = void 0; exports.list = exports.nodes = void 0;
function t() { var t = _interopRequireWildcard(require("@babel/types"));
const data = _interopRequireWildcard(require("@babel/types"));
t = function () { function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
return data;
};
return data; function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
}
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } }
function crawl(node, state = {}) { function crawl(node, state = {}) {
if (t().isMemberExpression(node)) { if (t.isMemberExpression(node) || t.isOptionalMemberExpression(node)) {
crawl(node.object, state); crawl(node.object, state);
if (node.computed) crawl(node.property, state); if (node.computed) crawl(node.property, state);
} else if (t().isBinary(node) || t().isAssignmentExpression(node)) { } else if (t.isBinary(node) || t.isAssignmentExpression(node)) {
crawl(node.left, state); crawl(node.left, state);
crawl(node.right, state); crawl(node.right, state);
} else if (t().isCallExpression(node)) { } else if (t.isCallExpression(node) || t.isOptionalCallExpression(node)) {
state.hasCall = true; state.hasCall = true;
crawl(node.callee, state); crawl(node.callee, state);
} else if (t().isFunction(node)) { } else if (t.isFunction(node)) {
state.hasFunction = true; state.hasFunction = true;
} else if (t().isIdentifier(node)) { } else if (t.isIdentifier(node)) {
state.hasHelper = state.hasHelper || isHelper(node.callee); state.hasHelper = state.hasHelper || isHelper(node.callee);
} }
@@ -37,21 +31,21 @@ function crawl(node, state = {}) {
} }
function isHelper(node) { function isHelper(node) {
if (t().isMemberExpression(node)) { if (t.isMemberExpression(node)) {
return isHelper(node.object) || isHelper(node.property); return isHelper(node.object) || isHelper(node.property);
} else if (t().isIdentifier(node)) { } else if (t.isIdentifier(node)) {
return node.name === "require" || node.name[0] === "_"; return node.name === "require" || node.name[0] === "_";
} else if (t().isCallExpression(node)) { } else if (t.isCallExpression(node)) {
return isHelper(node.callee); return isHelper(node.callee);
} else if (t().isBinary(node) || t().isAssignmentExpression(node)) { } else if (t.isBinary(node) || t.isAssignmentExpression(node)) {
return t().isIdentifier(node.left) && isHelper(node.left) || isHelper(node.right); return t.isIdentifier(node.left) && isHelper(node.left) || isHelper(node.right);
} else { } else {
return false; return false;
} }
} }
function isType(node) { function isType(node) {
return t().isLiteral(node) || t().isObjectExpression(node) || t().isArrayExpression(node) || t().isIdentifier(node) || t().isMemberExpression(node); return t.isLiteral(node) || t.isObjectExpression(node) || t.isArrayExpression(node) || t.isIdentifier(node) || t.isMemberExpression(node);
} }
const nodes = { const nodes = {
@@ -74,7 +68,7 @@ const nodes = {
}, },
LogicalExpression(node) { LogicalExpression(node) {
if (t().isFunction(node.left) || t().isFunction(node.right)) { if (t.isFunction(node.left) || t.isFunction(node.right)) {
return { return {
after: true after: true
}; };
@@ -90,7 +84,16 @@ const nodes = {
}, },
CallExpression(node) { CallExpression(node) {
if (t().isFunction(node.callee) || isHelper(node)) { if (t.isFunction(node.callee) || isHelper(node)) {
return {
before: true,
after: true
};
}
},
OptionalCallExpression(node) {
if (t.isFunction(node.callee)) {
return { return {
before: true, before: true,
after: true after: true
@@ -118,7 +121,7 @@ const nodes = {
}, },
IfStatement(node) { IfStatement(node) {
if (t().isBlockStatement(node.consequent)) { if (t.isBlockStatement(node.consequent)) {
return { return {
before: true, before: true,
after: true after: true
@@ -138,7 +141,9 @@ nodes.ObjectProperty = nodes.ObjectTypeProperty = nodes.ObjectMethod = function
}; };
nodes.ObjectTypeCallProperty = function (node, parent) { nodes.ObjectTypeCallProperty = function (node, parent) {
if (parent.callProperties[0] === node && (!parent.properties || !parent.properties.length)) { var _parent$properties;
if (parent.callProperties[0] === node && !((_parent$properties = parent.properties) == null ? void 0 : _parent$properties.length)) {
return { return {
before: true before: true
}; };
@@ -146,7 +151,9 @@ nodes.ObjectTypeCallProperty = function (node, parent) {
}; };
nodes.ObjectTypeIndexer = function (node, parent) { nodes.ObjectTypeIndexer = function (node, parent) {
if (parent.indexers[0] === node && (!parent.properties || !parent.properties.length) && (!parent.callProperties || !parent.callProperties.length)) { var _parent$properties2, _parent$callPropertie;
if (parent.indexers[0] === node && !((_parent$properties2 = parent.properties) == null ? void 0 : _parent$properties2.length) && !((_parent$callPropertie = parent.callProperties) == null ? void 0 : _parent$callPropertie.length)) {
return { return {
before: true before: true
}; };
@@ -154,7 +161,9 @@ nodes.ObjectTypeIndexer = function (node, parent) {
}; };
nodes.ObjectTypeInternalSlot = function (node, parent) { nodes.ObjectTypeInternalSlot = function (node, parent) {
if (parent.internalSlots[0] === node && (!parent.properties || !parent.properties.length) && (!parent.callProperties || !parent.callProperties.length) && (!parent.indexers || !parent.indexers.length)) { var _parent$properties3, _parent$callPropertie2, _parent$indexers;
if (parent.internalSlots[0] === node && !((_parent$properties3 = parent.properties) == null ? void 0 : _parent$properties3.length) && !((_parent$callPropertie2 = parent.callProperties) == null ? void 0 : _parent$callPropertie2.length) && !((_parent$indexers = parent.indexers) == null ? void 0 : _parent$indexers.length)) {
return { return {
before: true before: true
}; };
@@ -184,7 +193,7 @@ exports.list = list;
}; };
} }
[type].concat(t().FLIPPED_ALIAS_KEYS[type] || []).forEach(function (type) { [type].concat(t.FLIPPED_ALIAS_KEYS[type] || []).forEach(function (type) {
nodes[type] = function () { nodes[type] = function () {
return amounts; return amounts;
}; };

View File

@@ -5,49 +5,24 @@ Object.defineProperty(exports, "__esModule", {
}); });
exports.default = void 0; exports.default = void 0;
function _isInteger() {
const data = _interopRequireDefault(require("lodash/isInteger"));
_isInteger = function () {
return data;
};
return data;
}
function _repeat() {
const data = _interopRequireDefault(require("lodash/repeat"));
_repeat = function () {
return data;
};
return data;
}
var _buffer = _interopRequireDefault(require("./buffer")); var _buffer = _interopRequireDefault(require("./buffer"));
var n = _interopRequireWildcard(require("./node")); var n = _interopRequireWildcard(require("./node"));
function t() { var t = _interopRequireWildcard(require("@babel/types"));
const data = _interopRequireWildcard(require("@babel/types"));
t = function () {
return data;
};
return data;
}
var generatorFunctions = _interopRequireWildcard(require("./generators")); var generatorFunctions = _interopRequireWildcard(require("./generators"));
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } } function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const SCIENTIFIC_NOTATION = /e/i; const SCIENTIFIC_NOTATION = /e/i;
const ZERO_DECIMAL_INTEGER = /\.0+$/; const ZERO_DECIMAL_INTEGER = /\.0+$/;
const NON_DECIMAL_LITERAL = /^0[box]/; const NON_DECIMAL_LITERAL = /^0[box]/;
const PURE_ANNOTATION_RE = /^\s*[@#]__PURE__\s*$/;
class Printer { class Printer {
constructor(format, map) { constructor(format, map) {
@@ -120,7 +95,7 @@ class Printer {
number(str) { number(str) {
this.word(str); this.word(str);
this._endsWithInteger = (0, _isInteger().default)(+str) && !NON_DECIMAL_LITERAL.test(str) && !SCIENTIFIC_NOTATION.test(str) && !ZERO_DECIMAL_INTEGER.test(str) && str[str.length - 1] !== "."; this._endsWithInteger = Number.isInteger(+str) && !NON_DECIMAL_LITERAL.test(str) && !SCIENTIFIC_NOTATION.test(str) && !ZERO_DECIMAL_INTEGER.test(str) && str[str.length - 1] !== ".";
} }
token(str) { token(str) {
@@ -205,19 +180,32 @@ class Printer {
_maybeAddParen(str) { _maybeAddParen(str) {
const parenPushNewlineState = this._parenPushNewlineState; const parenPushNewlineState = this._parenPushNewlineState;
if (!parenPushNewlineState) return; if (!parenPushNewlineState) return;
this._parenPushNewlineState = null;
let i; let i;
for (i = 0; i < str.length && str[i] === " "; i++) continue; for (i = 0; i < str.length && str[i] === " "; i++) continue;
if (i === str.length) return; if (i === str.length) {
return;
}
const cha = str[i]; const cha = str[i];
if (cha !== "\n") { if (cha !== "\n") {
if (cha !== "/") return; if (cha !== "/" || i + 1 === str.length) {
if (i + 1 === str.length) return; this._parenPushNewlineState = null;
return;
}
const chaPost = str[i + 1]; const chaPost = str[i + 1];
if (chaPost !== "/" && chaPost !== "*") return;
if (chaPost === "*") {
if (PURE_ANNOTATION_RE.test(str.slice(i + 2, str.length - 2))) {
return;
}
} else if (chaPost !== "/") {
this._parenPushNewlineState = null;
return;
}
} }
this.token("("); this.token("(");
@@ -229,7 +217,7 @@ class Printer {
if (!this.format.retainLines) return; if (!this.format.retainLines) return;
const pos = loc ? loc[prop] : null; const pos = loc ? loc[prop] : null;
if (pos && pos.line !== null) { if ((pos == null ? void 0 : pos.line) != null) {
const count = pos.line - this._buf.getCurrentLine(); const count = pos.line - this._buf.getCurrentLine();
for (let i = 0; i < count; i++) { for (let i = 0; i < count; i++) {
@@ -239,7 +227,7 @@ class Printer {
} }
_getIndent() { _getIndent() {
return (0, _repeat().default)(this.format.indent.style, this._indent); return this.format.indent.style.repeat(this._indent);
} }
startTerminatorless(isLabel = false) { startTerminatorless(isLabel = false) {
@@ -256,7 +244,7 @@ class Printer {
endTerminatorless(state) { endTerminatorless(state) {
this._noLineTerminator = false; this._noLineTerminator = false;
if (state && state.printed) { if (state == null ? void 0 : state.printed) {
this.dedent(); this.dedent();
this.newline(); this.newline();
this.token(")"); this.token(")");
@@ -274,7 +262,7 @@ class Printer {
const printMethod = this[node.type]; const printMethod = this[node.type];
if (!printMethod) { if (!printMethod) {
throw new ReferenceError(`unknown node of type ${JSON.stringify(node.type)} with constructor ${JSON.stringify(node && node.constructor.name)}`); throw new ReferenceError(`unknown node of type ${JSON.stringify(node.type)} with constructor ${JSON.stringify(node == null ? void 0 : node.constructor.name)}`);
} }
this._printStack.push(node); this._printStack.push(node);
@@ -294,7 +282,7 @@ class Printer {
this._printLeadingComments(node); this._printLeadingComments(node);
const loc = t().isProgram(node) || t().isFile(node) ? null : node.loc; const loc = t.isProgram(node) || t.isFile(node) ? null : node.loc;
this.withSource("start", loc, () => { this.withSource("start", loc, () => {
printMethod.call(this, node, parent); printMethod.call(this, node, parent);
}); });
@@ -349,7 +337,7 @@ class Printer {
} }
printJoin(nodes, parent, opts = {}) { printJoin(nodes, parent, opts = {}) {
if (!nodes || !nodes.length) return; if (!(nodes == null ? void 0 : nodes.length)) return;
if (opts.indent) this.indent(); if (opts.indent) this.indent();
const newlineOpts = { const newlineOpts = {
addNewlines: opts.addNewlines addNewlines: opts.addNewlines
@@ -385,7 +373,7 @@ class Printer {
printBlock(parent) { printBlock(parent) {
const node = parent.body; const node = parent.body;
if (!t().isEmptyStatement(node)) { if (!t.isEmptyStatement(node)) {
this.space(); this.space();
} }
@@ -397,11 +385,13 @@ class Printer {
} }
_printLeadingComments(node) { _printLeadingComments(node) {
this._printComments(this._getComments(true, node)); this._printComments(this._getComments(true, node), true);
} }
printInnerComments(node, indent = true) { printInnerComments(node, indent = true) {
if (!node.innerComments || !node.innerComments.length) return; var _node$innerComments;
if (!((_node$innerComments = node.innerComments) == null ? void 0 : _node$innerComments.length)) return;
if (indent) this.indent(); if (indent) this.indent();
this._printComments(node.innerComments); this._printComments(node.innerComments);
@@ -446,7 +436,7 @@ class Printer {
return node && (leading ? node.leadingComments : node.trailingComments) || []; return node && (leading ? node.leadingComments : node.trailingComments) || [];
} }
_printComment(comment) { _printComment(comment, skipNewLines) {
if (!this.format.shouldPrintComment(comment.value)) return; if (!this.format.shouldPrintComment(comment.value)) return;
if (comment.ignore) return; if (comment.ignore) return;
if (this._printedComments.has(comment)) return; if (this._printedComments.has(comment)) return;
@@ -459,12 +449,15 @@ class Printer {
} }
const isBlockComment = comment.type === "CommentBlock"; const isBlockComment = comment.type === "CommentBlock";
this.newline(this._buf.hasContent() && !this._noLineTerminator && isBlockComment ? 1 : 0); const printNewLines = isBlockComment && !skipNewLines && !this._noLineTerminator;
if (printNewLines && this._buf.hasContent()) this.newline(1);
if (!this.endsWith("[") && !this.endsWith("{")) this.space(); if (!this.endsWith("[") && !this.endsWith("{")) this.space();
let val = !isBlockComment && !this._noLineTerminator ? `//${comment.value}\n` : `/*${comment.value}*/`; let val = !isBlockComment && !this._noLineTerminator ? `//${comment.value}\n` : `/*${comment.value}*/`;
if (isBlockComment && this.format.indent.adjustMultilineComment) { if (isBlockComment && this.format.indent.adjustMultilineComment) {
const offset = comment.loc && comment.loc.start.column; var _comment$loc;
const offset = (_comment$loc = comment.loc) == null ? void 0 : _comment$loc.start.column;
if (offset) { if (offset) {
const newlineRegex = new RegExp("\\n\\s{1," + offset + "}", "g"); const newlineRegex = new RegExp("\\n\\s{1," + offset + "}", "g");
@@ -472,21 +465,25 @@ class Printer {
} }
const indentSize = Math.max(this._getIndent().length, this._buf.getCurrentColumn()); const indentSize = Math.max(this._getIndent().length, this._buf.getCurrentColumn());
val = val.replace(/\n(?!$)/g, `\n${(0, _repeat().default)(" ", indentSize)}`); val = val.replace(/\n(?!$)/g, `\n${" ".repeat(indentSize)}`);
} }
if (this.endsWith("/")) this._space(); if (this.endsWith("/")) this._space();
this.withSource("start", comment.loc, () => { this.withSource("start", comment.loc, () => {
this._append(val); this._append(val);
}); });
this.newline(isBlockComment && !this._noLineTerminator ? 1 : 0); if (printNewLines) this.newline(1);
} }
_printComments(comments) { _printComments(comments, inlinePureAnnotation) {
if (!comments || !comments.length) return; if (!(comments == null ? void 0 : comments.length)) return;
for (const comment of comments) { if (inlinePureAnnotation && comments.length === 1 && PURE_ANNOTATION_RE.test(comments[0].value)) {
this._printComment(comment); this._printComment(comments[0], this._buf.hasContent() && !this.endsWith("\n"));
} else {
for (const comment of comments) {
this._printComment(comment);
}
} }
} }

View File

@@ -5,15 +5,7 @@ Object.defineProperty(exports, "__esModule", {
}); });
exports.default = void 0; exports.default = void 0;
function _sourceMap() { var _sourceMap = _interopRequireDefault(require("source-map"));
const data = _interopRequireDefault(require("source-map"));
_sourceMap = function () {
return data;
};
return data;
}
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -27,20 +19,20 @@ class SourceMap {
get() { get() {
if (!this._cachedMap) { if (!this._cachedMap) {
const map = this._cachedMap = new (_sourceMap().default.SourceMapGenerator)({ const map = this._cachedMap = new _sourceMap.default.SourceMapGenerator({
sourceRoot: this._opts.sourceRoot sourceRoot: this._opts.sourceRoot
}); });
const code = this._code; const code = this._code;
if (typeof code === "string") { if (typeof code === "string") {
map.setSourceContent(this._opts.sourceFileName, code); map.setSourceContent(this._opts.sourceFileName.replace(/\\/g, "/"), code);
} else if (typeof code === "object") { } else if (typeof code === "object") {
Object.keys(code).forEach(sourceFileName => { Object.keys(code).forEach(sourceFileName => {
map.setSourceContent(sourceFileName, code[sourceFileName]); map.setSourceContent(sourceFileName.replace(/\\/g, "/"), code[sourceFileName]);
}); });
} }
this._rawMappings.forEach(map.addMapping, map); this._rawMappings.forEach(mapping => map.addMapping(mapping), map);
} }
return this._cachedMap.toJSON(); return this._cachedMap.toJSON();
@@ -68,7 +60,7 @@ class SourceMap {
line: generatedLine, line: generatedLine,
column: generatedColumn column: generatedColumn
}, },
source: line == null ? undefined : filename || this._opts.sourceFileName, source: line == null ? undefined : (filename || this._opts.sourceFileName).replace(/\\/g, "/"),
original: line == null ? undefined : { original: line == null ? undefined : {
line: line, line: line,
column: column column: column

View File

@@ -1,33 +1,27 @@
{ {
"_args": [ "_from": "source-map@^0.5.0",
[
"source-map@0.5.7",
"/Users/pjquirk/Source/GitHub/actions/labeler"
]
],
"_development": true,
"_from": "source-map@0.5.7",
"_id": "source-map@0.5.7", "_id": "source-map@0.5.7",
"_inBundle": false, "_inBundle": false,
"_integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", "_integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
"_location": "/@babel/generator/source-map", "_location": "/@babel/generator/source-map",
"_phantomChildren": {}, "_phantomChildren": {},
"_requested": { "_requested": {
"type": "version", "type": "range",
"registry": true, "registry": true,
"raw": "source-map@0.5.7", "raw": "source-map@^0.5.0",
"name": "source-map", "name": "source-map",
"escapedName": "source-map", "escapedName": "source-map",
"rawSpec": "0.5.7", "rawSpec": "^0.5.0",
"saveSpec": null, "saveSpec": null,
"fetchSpec": "0.5.7" "fetchSpec": "^0.5.0"
}, },
"_requiredBy": [ "_requiredBy": [
"/@babel/generator" "/@babel/generator"
], ],
"_resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", "_resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
"_spec": "0.5.7", "_shasum": "8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc",
"_where": "/Users/pjquirk/Source/GitHub/actions/labeler", "_spec": "source-map@^0.5.0",
"_where": "/Users/dakale/dev/GitHub/actions/labeler/node_modules/@babel/generator",
"author": { "author": {
"name": "Nick Fitzgerald", "name": "Nick Fitzgerald",
"email": "nfitzgerald@mozilla.com" "email": "nfitzgerald@mozilla.com"
@@ -35,6 +29,7 @@
"bugs": { "bugs": {
"url": "https://github.com/mozilla/source-map/issues" "url": "https://github.com/mozilla/source-map/issues"
}, },
"bundleDependencies": false,
"contributors": [ "contributors": [
{ {
"name": "Tobias Koppers", "name": "Tobias Koppers",
@@ -181,6 +176,7 @@
"email": "nicolas.lalevee@hibnet.org" "email": "nicolas.lalevee@hibnet.org"
} }
], ],
"deprecated": false,
"description": "Generates and consumes source maps", "description": "Generates and consumes source maps",
"devDependencies": { "devDependencies": {
"doctoc": "^0.15.0", "doctoc": "^0.15.0",

View File

@@ -1,56 +1,53 @@
{ {
"_args": [ "_from": "@babel/generator@^7.11.6",
[ "_id": "@babel/generator@7.11.6",
"@babel/generator@7.5.5",
"/Users/pjquirk/Source/GitHub/actions/labeler"
]
],
"_development": true,
"_from": "@babel/generator@7.5.5",
"_id": "@babel/generator@7.5.5",
"_inBundle": false, "_inBundle": false,
"_integrity": "sha512-ETI/4vyTSxTzGnU2c49XHv2zhExkv9JHLTwDAFz85kmcwuShvYG2H08FwgIguQf4JC75CBnXAUM5PqeF4fj0nQ==", "_integrity": "sha512-DWtQ1PV3r+cLbySoHrwn9RWEgKMBLLma4OBQloPRyDYvc5msJM9kvTLo1YnlJd1P/ZuKbdli3ijr5q3FvAF3uA==",
"_location": "/@babel/generator", "_location": "/@babel/generator",
"_phantomChildren": {}, "_phantomChildren": {},
"_requested": { "_requested": {
"type": "version", "type": "range",
"registry": true, "registry": true,
"raw": "@babel/generator@7.5.5", "raw": "@babel/generator@^7.11.6",
"name": "@babel/generator", "name": "@babel/generator",
"escapedName": "@babel%2fgenerator", "escapedName": "@babel%2fgenerator",
"scope": "@babel", "scope": "@babel",
"rawSpec": "7.5.5", "rawSpec": "^7.11.6",
"saveSpec": null, "saveSpec": null,
"fetchSpec": "7.5.5" "fetchSpec": "^7.11.6"
}, },
"_requiredBy": [ "_requiredBy": [
"/@babel/core", "/@babel/core",
"/@babel/traverse", "/@babel/traverse",
"/istanbul-lib-instrument" "/istanbul-lib-instrument"
], ],
"_resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.5.5.tgz", "_resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.11.6.tgz",
"_spec": "7.5.5", "_shasum": "b868900f81b163b4d464ea24545c61cbac4dc620",
"_where": "/Users/pjquirk/Source/GitHub/actions/labeler", "_spec": "@babel/generator@^7.11.6",
"_where": "/Users/dakale/dev/GitHub/actions/labeler/node_modules/@babel/core",
"author": { "author": {
"name": "Sebastian McKenzie", "name": "Sebastian McKenzie",
"email": "sebmck@gmail.com" "email": "sebmck@gmail.com"
}, },
"dependencies": { "bugs": {
"@babel/types": "^7.5.5", "url": "https://github.com/babel/babel/issues"
"jsesc": "^2.5.1",
"lodash": "^4.17.13",
"source-map": "^0.5.0",
"trim-right": "^1.0.1"
}, },
"bundleDependencies": false,
"dependencies": {
"@babel/types": "^7.11.5",
"jsesc": "^2.5.1",
"source-map": "^0.5.0"
},
"deprecated": false,
"description": "Turns an AST into code.", "description": "Turns an AST into code.",
"devDependencies": { "devDependencies": {
"@babel/helper-fixtures": "^7.5.5", "@babel/helper-fixtures": "^7.10.5",
"@babel/parser": "^7.5.5" "@babel/parser": "^7.11.5"
}, },
"files": [ "files": [
"lib" "lib"
], ],
"gitHead": "0407f034f09381b95e9cabefbf6b176c76485a43", "gitHead": "e51139d7fd850e7f5b8cd6aafb17cc88b7010218",
"homepage": "https://babeljs.io/", "homepage": "https://babeljs.io/",
"license": "MIT", "license": "MIT",
"main": "lib/index.js", "main": "lib/index.js",
@@ -60,7 +57,8 @@
}, },
"repository": { "repository": {
"type": "git", "type": "git",
"url": "https://github.com/babel/babel/tree/master/packages/babel-generator" "url": "git+https://github.com/babel/babel.git",
"directory": "packages/babel-generator"
}, },
"version": "7.5.5" "version": "7.11.6"
} }

View File

@@ -1,6 +1,6 @@
MIT License MIT License
Copyright (c) 2014-2018 Sebastian McKenzie and other contributors Copyright (c) 2014-present Sebastian McKenzie and other contributors
Permission is hereby granted, free of charge, to any person obtaining Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the a copy of this software and associated documentation files (the

View File

@@ -5,41 +5,19 @@ Object.defineProperty(exports, "__esModule", {
}); });
exports.default = _default; exports.default = _default;
function _helperGetFunctionArity() { var _helperGetFunctionArity = _interopRequireDefault(require("@babel/helper-get-function-arity"));
const data = _interopRequireDefault(require("@babel/helper-get-function-arity"));
_helperGetFunctionArity = function () { var _template = _interopRequireDefault(require("@babel/template"));
return data;
};
return data; var t = _interopRequireWildcard(require("@babel/types"));
}
function _template() { function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
const data = _interopRequireDefault(require("@babel/template"));
_template = function () { function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
return data;
};
return data;
}
function t() {
const data = _interopRequireWildcard(require("@babel/types"));
t = function () {
return data;
};
return data;
}
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } }
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const buildPropertyMethodAssignmentWrapper = (0, _template().default)(` const buildPropertyMethodAssignmentWrapper = (0, _template.default)(`
(function (FUNCTION_KEY) { (function (FUNCTION_KEY) {
function FUNCTION_ID() { function FUNCTION_ID() {
return FUNCTION_KEY.apply(this, arguments); return FUNCTION_KEY.apply(this, arguments);
@@ -52,7 +30,7 @@ const buildPropertyMethodAssignmentWrapper = (0, _template().default)(`
return FUNCTION_ID; return FUNCTION_ID;
})(FUNCTION) })(FUNCTION)
`); `);
const buildGeneratorPropertyMethodAssignmentWrapper = (0, _template().default)(` const buildGeneratorPropertyMethodAssignmentWrapper = (0, _template.default)(`
(function (FUNCTION_KEY) { (function (FUNCTION_KEY) {
function* FUNCTION_ID() { function* FUNCTION_ID() {
return yield* FUNCTION_KEY.apply(this, arguments); return yield* FUNCTION_KEY.apply(this, arguments);
@@ -77,15 +55,15 @@ const visitor = {
}; };
function getNameFromLiteralId(id) { function getNameFromLiteralId(id) {
if (t().isNullLiteral(id)) { if (t.isNullLiteral(id)) {
return "null"; return "null";
} }
if (t().isRegExpLiteral(id)) { if (t.isRegExpLiteral(id)) {
return `_${id.pattern}_${id.flags}`; return `_${id.pattern}_${id.flags}`;
} }
if (t().isTemplateLiteral(id)) { if (t.isTemplateLiteral(id)) {
return id.quasis.map(quasi => quasi.value.raw).join(""); return id.quasis.map(quasi => quasi.value.raw).join("");
} }
@@ -101,7 +79,7 @@ function wrap(state, method, id, scope) {
if (scope.hasBinding(id.name) && !scope.hasGlobal(id.name)) { if (scope.hasBinding(id.name) && !scope.hasGlobal(id.name)) {
scope.rename(id.name); scope.rename(id.name);
} else { } else {
if (!t().isFunction(method)) return; if (!t.isFunction(method)) return;
let build = buildPropertyMethodAssignmentWrapper; let build = buildPropertyMethodAssignmentWrapper;
if (method.generator) { if (method.generator) {
@@ -115,7 +93,7 @@ function wrap(state, method, id, scope) {
}).expression; }).expression;
const params = template.callee.body.body[0].params; const params = template.callee.body.body[0].params;
for (let i = 0, len = (0, _helperGetFunctionArity().default)(method); i < len; i++) { for (let i = 0, len = (0, _helperGetFunctionArity.default)(method); i < len; i++) {
params.push(scope.generateUidIdentifier("x")); params.push(scope.generateUidIdentifier("x"));
} }
@@ -156,23 +134,25 @@ function _default({
}, localBinding = false) { }, localBinding = false) {
if (node.id) return; if (node.id) return;
if ((t().isObjectProperty(parent) || t().isObjectMethod(parent, { if ((t.isObjectProperty(parent) || t.isObjectMethod(parent, {
kind: "method" kind: "method"
})) && (!parent.computed || t().isLiteral(parent.key))) { })) && (!parent.computed || t.isLiteral(parent.key))) {
id = parent.key; id = parent.key;
} else if (t().isVariableDeclarator(parent)) { } else if (t.isVariableDeclarator(parent)) {
id = parent.id; id = parent.id;
if (t().isIdentifier(id) && !localBinding) { if (t.isIdentifier(id) && !localBinding) {
const binding = scope.parent.getBinding(id.name); const binding = scope.parent.getBinding(id.name);
if (binding && binding.constant && scope.getBinding(id.name) === binding) { if (binding && binding.constant && scope.getBinding(id.name) === binding) {
node.id = t().cloneNode(id); node.id = t.cloneNode(id);
node.id[t().NOT_LOCAL_BINDING] = true; node.id[t.NOT_LOCAL_BINDING] = true;
return; return;
} }
} }
} else if (t().isAssignmentExpression(parent)) { } else if (t.isAssignmentExpression(parent, {
operator: "="
})) {
id = parent.left; id = parent.left;
} else if (!id) { } else if (!id) {
return; return;
@@ -180,9 +160,9 @@ function _default({
let name; let name;
if (id && t().isLiteral(id)) { if (id && t.isLiteral(id)) {
name = getNameFromLiteralId(id); name = getNameFromLiteralId(id);
} else if (id && t().isIdentifier(id)) { } else if (id && t.isIdentifier(id)) {
name = id.name; name = id.name;
} }
@@ -190,9 +170,9 @@ function _default({
return; return;
} }
name = t().toBindingIdentifierName(name); name = t.toBindingIdentifierName(name);
id = t().identifier(name); id = t.identifier(name);
id[t().NOT_LOCAL_BINDING] = true; id[t.NOT_LOCAL_BINDING] = true;
const state = visit(node, name, scope); const state = visit(node, name, scope);
return wrap(state, node, id, scope) || node; return wrap(state, node, id, scope) || node;
} }

View File

@@ -1,40 +1,41 @@
{ {
"_args": [ "_from": "@babel/helper-function-name@^7.10.4",
[ "_id": "@babel/helper-function-name@7.10.4",
"@babel/helper-function-name@7.1.0",
"/Users/pjquirk/Source/GitHub/actions/labeler"
]
],
"_development": true,
"_from": "@babel/helper-function-name@7.1.0",
"_id": "@babel/helper-function-name@7.1.0",
"_inBundle": false, "_inBundle": false,
"_integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==", "_integrity": "sha512-YdaSyz1n8gY44EmN7x44zBn9zQ1Ry2Y+3GTA+3vH6Mizke1Vw0aWDM66FOYEPw8//qKkmqOckrGgTYa+6sceqQ==",
"_location": "/@babel/helper-function-name", "_location": "/@babel/helper-function-name",
"_phantomChildren": {}, "_phantomChildren": {},
"_requested": { "_requested": {
"type": "version", "type": "range",
"registry": true, "registry": true,
"raw": "@babel/helper-function-name@7.1.0", "raw": "@babel/helper-function-name@^7.10.4",
"name": "@babel/helper-function-name", "name": "@babel/helper-function-name",
"escapedName": "@babel%2fhelper-function-name", "escapedName": "@babel%2fhelper-function-name",
"scope": "@babel", "scope": "@babel",
"rawSpec": "7.1.0", "rawSpec": "^7.10.4",
"saveSpec": null, "saveSpec": null,
"fetchSpec": "7.1.0" "fetchSpec": "^7.10.4"
}, },
"_requiredBy": [ "_requiredBy": [
"/@babel/traverse" "/@babel/traverse"
], ],
"_resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", "_resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.10.4.tgz",
"_spec": "7.1.0", "_shasum": "d2d3b20c59ad8c47112fa7d2a94bc09d5ef82f1a",
"_where": "/Users/pjquirk/Source/GitHub/actions/labeler", "_spec": "@babel/helper-function-name@^7.10.4",
"dependencies": { "_where": "/Users/dakale/dev/GitHub/actions/labeler/node_modules/@babel/traverse",
"@babel/helper-get-function-arity": "^7.0.0", "bugs": {
"@babel/template": "^7.1.0", "url": "https://github.com/babel/babel/issues"
"@babel/types": "^7.0.0"
}, },
"bundleDependencies": false,
"dependencies": {
"@babel/helper-get-function-arity": "^7.10.4",
"@babel/template": "^7.10.4",
"@babel/types": "^7.10.4"
},
"deprecated": false,
"description": "Helper function to change the property 'name' of every function", "description": "Helper function to change the property 'name' of every function",
"gitHead": "7fd40d86a0d03ff0e9c3ea16b29689945433d4df",
"homepage": "https://github.com/babel/babel#readme",
"license": "MIT", "license": "MIT",
"main": "lib/index.js", "main": "lib/index.js",
"name": "@babel/helper-function-name", "name": "@babel/helper-function-name",
@@ -43,7 +44,8 @@
}, },
"repository": { "repository": {
"type": "git", "type": "git",
"url": "https://github.com/babel/babel/tree/master/packages/babel-helper-function-name" "url": "git+https://github.com/babel/babel.git",
"directory": "packages/babel-helper-function-name"
}, },
"version": "7.1.0" "version": "7.10.4"
} }

View File

@@ -1,6 +1,6 @@
MIT License MIT License
Copyright (c) 2014-2018 Sebastian McKenzie <sebmck@gmail.com> Copyright (c) 2014-present Sebastian McKenzie and other contributors
Permission is hereby granted, free of charge, to any person obtaining Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the a copy of this software and associated documentation files (the

View File

@@ -5,17 +5,11 @@ Object.defineProperty(exports, "__esModule", {
}); });
exports.default = _default; exports.default = _default;
function t() { var t = _interopRequireWildcard(require("@babel/types"));
const data = _interopRequireWildcard(require("@babel/types"));
t = function () { function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
return data;
};
return data; function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
}
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } }
function _default(node) { function _default(node) {
const params = node.params; const params = node.params;
@@ -23,7 +17,7 @@ function _default(node) {
for (let i = 0; i < params.length; i++) { for (let i = 0; i < params.length; i++) {
const param = params[i]; const param = params[i];
if (t().isAssignmentPattern(param) || t().isRestElement(param)) { if (t.isAssignmentPattern(param) || t.isRestElement(param)) {
return i; return i;
} }
} }

View File

@@ -1,44 +1,49 @@
{ {
"_args": [ "_from": "@babel/helper-get-function-arity@^7.10.4",
[ "_id": "@babel/helper-get-function-arity@7.10.4",
"@babel/helper-get-function-arity@7.0.0",
"/Users/pjquirk/Source/GitHub/actions/labeler"
]
],
"_development": true,
"_from": "@babel/helper-get-function-arity@7.0.0",
"_id": "@babel/helper-get-function-arity@7.0.0",
"_inBundle": false, "_inBundle": false,
"_integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", "_integrity": "sha512-EkN3YDB+SRDgiIUnNgcmiD361ti+AVbL3f3Henf6dqqUyr5dMsorno0lJWJuLhDhkI5sYEpgj6y9kB8AOU1I2A==",
"_location": "/@babel/helper-get-function-arity", "_location": "/@babel/helper-get-function-arity",
"_phantomChildren": {}, "_phantomChildren": {},
"_requested": { "_requested": {
"type": "version", "type": "range",
"registry": true, "registry": true,
"raw": "@babel/helper-get-function-arity@7.0.0", "raw": "@babel/helper-get-function-arity@^7.10.4",
"name": "@babel/helper-get-function-arity", "name": "@babel/helper-get-function-arity",
"escapedName": "@babel%2fhelper-get-function-arity", "escapedName": "@babel%2fhelper-get-function-arity",
"scope": "@babel", "scope": "@babel",
"rawSpec": "7.0.0", "rawSpec": "^7.10.4",
"saveSpec": null, "saveSpec": null,
"fetchSpec": "7.0.0" "fetchSpec": "^7.10.4"
}, },
"_requiredBy": [ "_requiredBy": [
"/@babel/helper-function-name" "/@babel/helper-function-name"
], ],
"_resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz", "_resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.4.tgz",
"_spec": "7.0.0", "_shasum": "98c1cbea0e2332f33f9a4661b8ce1505b2c19ba2",
"_where": "/Users/pjquirk/Source/GitHub/actions/labeler", "_spec": "@babel/helper-get-function-arity@^7.10.4",
"dependencies": { "_where": "/Users/dakale/dev/GitHub/actions/labeler/node_modules/@babel/helper-function-name",
"@babel/types": "^7.0.0" "bugs": {
"url": "https://github.com/babel/babel/issues"
}, },
"bundleDependencies": false,
"dependencies": {
"@babel/types": "^7.10.4"
},
"deprecated": false,
"description": "Helper function to get function arity", "description": "Helper function to get function arity",
"gitHead": "7fd40d86a0d03ff0e9c3ea16b29689945433d4df",
"homepage": "https://github.com/babel/babel#readme",
"license": "MIT", "license": "MIT",
"main": "lib/index.js", "main": "lib/index.js",
"name": "@babel/helper-get-function-arity", "name": "@babel/helper-get-function-arity",
"publishConfig": {
"access": "public"
},
"repository": { "repository": {
"type": "git", "type": "git",
"url": "https://github.com/babel/babel/tree/master/packages/babel-helper-get-function-arity" "url": "git+https://github.com/babel/babel.git",
"directory": "packages/babel-helper-get-function-arity"
}, },
"version": "7.0.0" "version": "7.10.4"
} }

View File

@@ -0,0 +1,22 @@
MIT License
Copyright (c) 2014-present Sebastian McKenzie and other contributors
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

View File

@@ -0,0 +1,19 @@
# @babel/helper-member-expression-to-functions
> Helper function to replace certain member expressions with function calls
See our website [@babel/helper-member-expression-to-functions](https://babeljs.io/docs/en/next/babel-helper-member-expression-to-functions.html) for more information.
## Install
Using npm:
```sh
npm install --save-dev @babel/helper-member-expression-to-functions
```
or using yarn:
```sh
yarn add @babel/helper-member-expression-to-functions --dev
```

Some files were not shown because too many files have changed in this diff Show More